body {
    padding: 0;
    margin: 0;
}

@media only screen and (max-width: 600px) {
    .playlist-date {
        display: none !important;
    }
    .playlist-row{
        display: flex !important;
        justify-content: space-between !important;
    }
    .playlist-arena{
        width: 30% !important;
    }

}
.icon-search{
    display: flex;
    justify-content: end;
    margin-top: -24px;
}

.main-head {
    background-image: url(images/background1.png);
    background-color: rgba(0, 0, 0, .2);
    background-blend-mode: multiply;
    background-size: cover;
    color: white;
    padding-bottom: 20px;
    text-align: left;

}

.main-nav {
    border-bottom: 1px sold rgba(255, 255, 255, .3)
}

.main-nav li {
    padding: 0 3%;
}
nav li{
    display: inline;
    color: white;

}

nav a{
    text-decoration: none;
    display: inline-block;
    padding: .5em;
    color: white

}
nav a:hover{
    background-color: gray;
    /* padding-right: 12px;
    padding-left: 12px; */

}

header h1{
    padding-top: 70px;
    font-family: sans-serif;
}

.content-section {
    margin: .5em;
}

.container {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 1.5em;
}

.about-image {
    float: left;
    height: 200px;
    width: 200px;
    margin: 10px;
    border-radius: 50%;
}

.main-footer {
    background-image: url(images/background1.png);
    color: white;
    padding: .80em 0;
    text-align: center;
}

footer li {
    display: inline-block;
    margin: 0 20px;

}

.main-footer-container {
    display: flex;
    align-items: center;
}

.main-footer-container ul {
    flex-grow: 1;
    text-align: end;
}

footer li a:hover {
    background-color: silver;
}
.btn {
    cursor: pointer;
    color: coral;
    padding: 10px;
    border: solid 1px grey;
    background-color: rgba(255, 255, 255, .1);
    border-radius: 50%;

}
.btn:hover{
    background-color:darkgray;
    cursor: pointer;


}

.btn-header {
    cursor: pointer;
    color: white;
    padding: 10px;
    border: solid 1px grey;
    background-color: rgba(255, 255, 255, .1);
}

.btn-header:hover {
    background-color: darkslategray;
}

.header-row {
    border-bottom: 1px solid black;
    padding-bottom: 1em;
    margin-bottom: 1em;

}

.track-row {
    padding-bottom: 1em;
    margin-bottom: 1em;

}
.track-date {
    display: inline-block;
    color: #555;
    font-weight: bold;
    padding-right: .5em;
    width: 20%;
}

.track-title {
    display: inline-block;
    padding-right: .5em;
    width: 30%;
    /*align-items: center;*/
}

.track-bpm {
    display: inline-block;
    padding-right: .5em;
    width: 10%;
}

.track-artist {
    display: inline-block;
    padding-right: .5em;
    width: 20%;
}


.track-row:last-child {
    border-bottom: none;
}

.btn-play {
    cursor: pointer;

    background-color: rgba(255, 255, 255, .4);
    color:orange;
    padding: 5px 20px;
    border: 1px solid palevioletred;
    border-radius: 5px;
    height: 33px;
    width: 55px;
    font-size: 18px;
}
.btn-store {
    cursor: pointer;

    background-color: blueviolet;
    color:white;
    padding: 5px 20px;
    border: none;
    border-radius: 5px;
}

.btn-store:hover {
    background-color:chocolate;
}

.btn-play:hover {
    background-color:chocolate;
}

.shop-item {
    margin: 30px;
}

.shop-item-title {
    font-weight: bold;
    width: 100%;
    font-size: 1.5em;
    text-align: center;
    display: block;
    margin-bottom: 10px;
}

.shop-item-image {
    height: 250px;
    border-radius: 20px;

}

.shop-item-details {
    display: flex;
    align-items: center;
    padding: 5px;
}

.shop-item-price {
    flex-grow: 1;
}

.shop-items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}
.play {

    align-items: center;
    height: 50px;

}

.cart-header {
    font-weight: bold;
    font-size: 1.2em;

}
.cart-column {
    display: flex;
    align-items: center;
    border-bottom: 1px solid black;
    margin-right: 1.5em;
    padding-bottom: 10px;
    margin-top: 10px;
}
.cart-row {
    display: flex;
}

.cart-item {
    width: 45%;
}

.cart-price {
    width: 20%;
    font-size: 1.2em;
}

.cart-quantity {
    width: 35%;
}

.cart-item-image {
    width: 65px;
    height: auto;
    border-radius: 10px;
}

.cart-item-title {
    margin-left: .5em;
    font-size: 1em;

}

.btn-danger {
    color: white;
    background-color: rgb(209, 39, 39);
    height: 34px;
    border: none;
    padding: 5px;
    border-radius: 5px;
    cursor: pointer;
    margin-left: 1em;
}

.btn-danger:hover{
    background-color: darkred;
}

.cart-input {
    background-color: #eee;
    border: 1px black solid;
    width: 30px;
    height: 29px;
    border-radius: 4px;
    text-align: center;
}

/* Homepage refresh */
.home-page {
    --ink: #1c2420;
    --cream: #f5f1e8;
    --paper: #fbf9f4;
    --green: #1f4d3b;
    --orange: #e9673b;
    --line: rgba(28, 36, 32, .18);
    background: var(--paper);
    color: var(--ink);
    font-family: "DM Sans", sans-serif;
    min-height: 100vh;
}

.home-page *,
.home-page *::before,
.home-page *::after {
    box-sizing: border-box;
}

.site-header {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1240px;
    padding: 24px 32px;
}

.wordmark {
    color: var(--ink);
    font-family: "Playfair Display", serif;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
}

.wordmark span { color: var(--orange); }

.site-nav { display: flex; gap: 34px; }
.site-nav a {
    color: #59615d;
    font-size: .88rem;
    font-weight: 600;
    padding: 8px 0;
    position: relative;
    text-decoration: none;
}
.site-nav a::after {
    background: var(--orange);
    bottom: 1px;
    content: "";
    height: 2px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .2s ease;
    width: 100%;
}
.site-nav a:hover,
.site-nav a.active { color: var(--ink); }
.site-nav a:hover::after,
.site-nav a.active::after { transform: scaleX(1); }

.hero {
    align-items: center;
    display: grid;
    gap: clamp(48px, 8vw, 120px);
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, .7fr);
    margin: 0 auto;
    max-width: 1240px;
    min-height: 650px;
    padding: 68px 32px 100px;
}

.eyebrow {
    color: var(--orange);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .18em;
    margin: 0 0 20px;
    text-transform: uppercase;
}

.hero h1 {
    font-family: "Playfair Display", serif;
    font-size: clamp(3.4rem, 6vw, 6.2rem);
    letter-spacing: -.045em;
    line-height: .98;
    margin: 0;
    max-width: 820px;
}
.hero h1 em { color: var(--green); font-weight: 600; }
.hero-intro {
    color: #5a625e;
    font-size: clamp(1.05rem, 1.5vw, 1.25rem);
    line-height: 1.7;
    margin: 32px 0 38px;
    max-width: 620px;
}
.hero-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 28px; }
.primary-link,
.text-link {
    font-size: .9rem;
    font-weight: 700;
    text-decoration: none;
}
.primary-link {
    background: var(--ink);
    border: 1px solid var(--ink);
    color: white;
    padding: 15px 20px;
    transition: background .2s ease, color .2s ease, transform .2s ease;
}
.primary-link:hover { background: transparent; color: var(--ink); transform: translateY(-2px); }
.primary-link span { margin-left: 28px; }
.text-link { color: var(--ink); }
.text-link span { color: var(--orange); margin-left: 6px; }

.hero-portrait { justify-self: end; position: relative; width: min(100%, 390px); }
.portrait-frame {
    background: #c9d6d4;
    border-radius: 48% 48% 10px 10px;
    overflow: hidden;
    position: relative;
}
.portrait-frame::after {
    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: inherit;
    content: "";
    inset: 14px;
    pointer-events: none;
    position: absolute;
}
.portrait-frame img { display: block; height: 500px; object-fit: cover; object-position: center 22%; width: 100%; }
.portrait-note {
    background: var(--cream);
    bottom: -24px;
    box-shadow: 0 12px 30px rgba(28, 36, 32, .1);
    font-family: "Playfair Display", serif;
    font-size: .92rem;
    left: -42px;
    margin: 0;
    padding: 16px 20px;
    position: absolute;
    transform: rotate(-2deg);
}
.portrait-note span { color: var(--orange); margin-right: 7px; }

.explore { background: var(--cream); padding: 96px max(32px, calc((100vw - 1176px) / 2)); }
.section-heading { align-items: end; display: flex; justify-content: space-between; margin-bottom: 40px; }
.section-heading h2 {
    font-family: "Playfair Display", serif;
    font-size: clamp(2.2rem, 4vw, 3.7rem);
    letter-spacing: -.03em;
    margin: 0;
}
.section-heading > p { color: #68706c; margin: 0 0 8px; }
.project-grid { display: grid; gap: 18px; grid-template-columns: repeat(3, 1fr); }
.project-card {
    border: 1px solid var(--line);
    color: var(--ink);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 340px;
    overflow: hidden;
    padding: 28px;
    position: relative;
    text-decoration: none;
    transition: box-shadow .25s ease, transform .25s ease;
}
.project-card:hover { box-shadow: 0 20px 45px rgba(28, 36, 32, .12); transform: translateY(-6px); }
.card-nlp { background: #dfe9df; }
.card-music { background: #f0d9c9; }
.card-fun { background: #dce4ec; }
.card-number { font-size: .72rem; font-weight: 700; letter-spacing: .14em; opacity: .55; }
.card-kicker { font-size: .72rem; font-weight: 700; letter-spacing: .12em; margin: 0 0 10px; text-transform: uppercase; }
.project-card h3 { font-family: "Playfair Display", serif; font-size: 2rem; margin: 0 0 14px; }
.project-card p:last-child { line-height: 1.55; margin: 0; max-width: 290px; opacity: .72; }
.card-arrow {
    align-items: center;
    border: 1px solid currentColor;
    border-radius: 50%;
    display: flex;
    font-size: 1.2rem;
    height: 44px;
    justify-content: center;
    position: absolute;
    right: 24px;
    top: 24px;
    transition: background .2s ease, color .2s ease;
    width: 44px;
}
.project-card:hover .card-arrow { background: var(--ink); color: white; }

.home-footer {
    align-items: center;
    background: var(--ink);
    color: white;
    display: flex;
    font-size: .82rem;
    justify-content: space-between;
    padding: 26px max(32px, calc((100vw - 1176px) / 2));
}
.home-footer p { margin: 0; }
.home-footer p span { color: #f29c71; margin-left: 5px; }
.home-footer a { color: white; font-weight: 600; text-decoration: none; }

@media (max-width: 800px) {
    .site-header { padding: 20px; }
    .site-nav { gap: 18px; overflow-x: auto; }
    .site-nav a { font-size: .8rem; }
    .hero { grid-template-columns: 1fr; padding: 56px 20px 88px; }
    .hero-portrait { justify-self: center; width: min(86vw, 390px); }
    .portrait-note { left: -12px; }
    .explore { padding: 72px 20px; }
    .section-heading { align-items: start; flex-direction: column; gap: 14px; }
    .project-grid { grid-template-columns: 1fr; }
    .project-card { min-height: 280px; }
}

@media (max-width: 480px) {
    .site-header { align-items: flex-start; gap: 16px; }
    .site-nav { gap: 14px; padding-top: 2px; }
    .site-nav a { font-size: .75rem; }
    .hero h1 { font-size: clamp(3rem, 14vw, 4rem); }
    .portrait-frame img { height: 430px; }
    .home-footer { gap: 20px; padding: 24px 20px; }
}

@media (prefers-reduced-motion: reduce) {
    .home-page * { scroll-behavior: auto !important; transition: none !important; }
}

/* Quirky homepage: the original, only tidier */
.quirky-home {
    --charcoal: #292725;
    --paper: #fffdf8;
    --purple: #7450a2;
    background: var(--paper);
    color: var(--charcoal);
    font-family: Georgia, "Times New Roman", serif;
    min-height: 100vh;
}

.quirky-home *,
.quirky-home *::before,
.quirky-home *::after { box-sizing: border-box; }

.quirky-hero {
    background-color: #777;
    background-image: linear-gradient(rgba(25, 24, 24, .12), rgba(25, 24, 24, .12)), url("images/background1.png");
    background-position: center;
    background-size: cover;
    color: white;
    min-height: clamp(340px, 52vw, 610px);
    position: relative;
}

.quirky-nav {
    align-items: center;
    backdrop-filter: blur(8px);
    background: rgba(34, 31, 30, .18);
    border-bottom: 1px solid rgba(255, 255, 255, .22);
    display: flex;
    justify-content: center;
    gap: clamp(24px, 8vw, 120px);
    padding: 18px 24px;
}

.quirky-nav a {
    color: white;
    font-size: clamp(.92rem, 1.5vw, 1.12rem);
    font-weight: 700;
    padding: 5px 2px;
    position: relative;
    text-decoration: none;
    text-shadow: 0 1px 5px rgba(0, 0, 0, .28);
}

.quirky-nav a::after {
    background: white;
    bottom: 0;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transform: rotate(-2deg) scaleX(0);
    transition: transform .18s ease;
    width: 100%;
}

.quirky-nav a:hover::after,
.quirky-nav a.active::after { transform: rotate(-2deg) scaleX(1); }

.secret-note {
    background: rgba(255, 253, 248, .88);
    bottom: 24px;
    color: #494340;
    font-family: "Courier New", monospace;
    font-size: .68rem;
    left: 50%;
    letter-spacing: .04em;
    margin: 0;
    opacity: 0;
    padding: 6px 9px;
    position: absolute;
    transform: translateX(-50%) rotate(-2deg);
    transition: opacity .2s ease;
}

.quirky-hero:hover .secret-note,
.secret-note:focus { opacity: 1; }

.hello {
    align-items: center;
    display: flex;
    gap: clamp(20px, 6vw, 80px);
    justify-content: center;
    min-height: 220px;
    padding: 52px 24px;
    text-align: center;
}

.hello h1 {
    font-size: clamp(2rem, 4vw, 3.2rem);
    letter-spacing: -.035em;
    margin: 0 0 10px;
}

.hello p { color: #716b67; font-style: italic; margin: 0; }
.wobbly-star { color: #a4cbd2; font-size: 1.5rem; transform: rotate(-12deg); }
.second-star { color: #c19bd6; font-size: 1rem; transform: rotate(18deg); }

.wander {
    background: #f1ece5;
    border-bottom: 1px solid #ddd4ca;
    border-top: 1px solid #ddd4ca;
    margin: 0 auto;
    padding: 68px max(24px, calc((100vw - 960px) / 2));
}

.tiny-label {
    color: var(--purple);
    font-family: "Courier New", monospace;
    font-size: .7rem;
    letter-spacing: .08em;
    margin: 0 0 7px;
    text-transform: uppercase;
}

.wander h2 { font-size: clamp(1.8rem, 4vw, 2.5rem); margin: 0 0 32px; }
.quirky-links { display: grid; gap: 12px; grid-template-columns: repeat(3, 1fr); }

.quirky-links a {
    background: var(--paper);
    border: 1px solid #d2c8bd;
    color: var(--charcoal);
    display: flex;
    flex-direction: column;
    min-height: 145px;
    padding: 24px;
    text-decoration: none;
    transform: rotate(-.4deg);
    transition: box-shadow .18s ease, transform .18s ease;
}

.quirky-links a:nth-child(2) { transform: rotate(.5deg); }
.quirky-links a:nth-child(3) { transform: rotate(-.2deg); }
.quirky-links a:hover { box-shadow: 5px 6px 0 #b8d6d8; transform: rotate(0) translateY(-3px); }
.quirky-links span { font-size: 1.25rem; font-weight: 700; margin-bottom: auto; }
.quirky-links small { color: #756f6a; font-family: "Courier New", monospace; font-size: .68rem; line-height: 1.45; margin-top: 24px; }

.quirky-footer {
    align-items: center;
    background: #303544;
    color: white;
    display: flex;
    font-family: "Courier New", monospace;
    font-size: .68rem;
    justify-content: space-between;
    padding: 28px max(24px, calc((100vw - 1120px) / 2));
}

.quirky-footer a {
    color: white;
    margin-left: auto;
    text-decoration: none;
    transition: opacity .18s ease;
}

.quirky-footer a:hover { opacity: .7; }

@media (max-width: 680px) {
    .quirky-hero { background-position: 37% center; min-height: 380px; }
    .quirky-nav { gap: 0; justify-content: space-between; padding: 15px 17px; }
    .quirky-nav a { font-size: .82rem; }
    .quirky-links { grid-template-columns: 1fr; }
    .quirky-links a { min-height: 125px; }
    .wander { padding-bottom: 52px; padding-top: 52px; }
}

@media (prefers-reduced-motion: reduce) {
    .quirky-home * { transition: none !important; }
}

/* Greeting lives in the aurora */
.quirky-hero {
    background-position: 92% center;
    background-size: 155% auto;
    display: flex;
    flex-direction: column;
    min-height: clamp(430px, 52vw, 650px);
}

.hero-greeting {
    align-items: center;
    display: flex;
    gap: clamp(20px, 3vw, 48px);
    justify-content: center;
    margin: 44px auto 12px;
    padding: 36px 28px 20px;
    width: 100%;
}

.hero-panda {
    background-image: url("images/background1.png");
    background-position: -86px -81px;
    background-repeat: no-repeat;
    background-size: 1140px 426px;
    border: 7px solid rgba(255, 253, 248, .82);
    box-shadow: 7px 9px 0 rgba(77, 61, 83, .22);
    display: block;
    flex: 0 0 auto;
    height: 167px;
    transform: rotate(-2deg) scale(.72);
    width: 258px;
}

.hero-hello {
    color: var(--charcoal);
    max-width: 760px;
    padding: 24px 0;
}

.hero-title-row { align-items: center; display: flex; gap: clamp(12px, 2vw, 26px); }
.hero-hello h1 {
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.5rem, 5vw, 4.8rem);
    letter-spacing: -.045em;
    line-height: 1;
    margin: 0;
    text-shadow: 0 2px 12px rgba(255, 255, 255, .48);
    white-space: nowrap;
}
.hero-hello p {
    color: #494442;
    font-size: clamp(.95rem, 1.7vw, 1.2rem);
    font-style: italic;
    margin: 16px 0 0;
    text-align: center;
    text-shadow: 0 1px 8px rgba(255, 255, 255, .72);
}

.quirky-hero .wander {
    background: transparent;
    border: 0;
    margin: 0 auto;
    max-width: 1500px;
    padding: 18px 28px 72px;
    width: 100%;
}

.quirky-hero .wander h2 {
    color: var(--charcoal);
    font-size: clamp(1.65rem, 3vw, 2.35rem);
    margin-bottom: 22px;
    text-shadow: 0 1px 9px rgba(255, 255, 255, .72);
}

.quirky-hero .tiny-label {
    color: #51356e;
    text-shadow: 0 1px 7px rgba(255, 255, 255, .8);
}

.quirky-hero .quirky-links a {
    background: rgba(255, 253, 248, .88);
    backdrop-filter: blur(5px);
    min-height: 130px;
}

.quirky-hero .quirky-links a:nth-child(1) {
    box-shadow: 7px 8px 0 rgba(132, 192, 200, .5);
    transform: rotate(-2.4deg) translateY(7px);
}

.quirky-hero .quirky-links a:nth-child(2) {
    box-shadow: -6px 9px 0 rgba(184, 137, 204, .42);
    transform: rotate(1.8deg) translateY(-5px);
}

.quirky-hero .quirky-links a:nth-child(3) {
    box-shadow: 8px 7px 0 rgba(229, 156, 117, .42);
    transform: rotate(-1.5deg) translateY(9px);
}

.quirky-hero .quirky-links a:nth-child(1):hover,
.quirky-hero .quirky-links a:nth-child(2):hover,
.quirky-hero .quirky-links a:nth-child(3):hover {
    box-shadow: 3px 4px 0 rgba(255, 255, 255, .5);
    transform: rotate(0) translateY(-4px) scale(1.015);
}

@media (max-width: 850px) {
    .quirky-hero { background-position: 88% center; background-size: 175% auto; }
    .hero-greeting { gap: 2px; margin-top: 28px; padding-left: 14px; padding-right: 14px; }
    .hero-panda { margin-right: -20px; transform: rotate(-2deg) scale(.55); }
    .hero-hello { padding: 26px 0; }
    .hero-hello h1 { font-size: clamp(2rem, 7vw, 3.4rem); white-space: normal; }
}

@media (max-width: 560px) {
    .quirky-hero { min-height: 520px; }
    .hero-greeting { flex-direction: column; margin-bottom: 0; padding-bottom: 12px; padding-top: 18px; }
    .hero-panda { margin: -10px 0 -16px; transform: rotate(-2deg) scale(.5); }
    .hero-hello { text-align: center; }
    .hero-title-row .wobbly-star { display: none; }
    .quirky-hero .wander { padding: 8px 18px 48px; }
    .quirky-hero .quirky-links { gap: 22px; }
}

.cart-row:last-child {
    border-bottom: 1px solid black;
}

.cart-row:last-child .cart-column {
    border: none;
}

.cart-total {
    text-align: end;
    margin-top: 10px;
    margin-right: 10px;
}

.cart-total-title {
    font-weight: bold;
    font-size: 1.5em;
    color: black;
    margin-right: 10px;
}

.cart-total-price {
    font-size: 1.1em;
    color: #333;
}

.cart-total-purchase {
    display: block;
    margin: 40px auto 60px auto;
    background-color:blueviolet;
    color: white;
    border: none;
    border-radius: 3px;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 8px;
    padding-bottom: 8px;
    cursor: pointer;
    font-size: 1.5em;
}

.cart-total-purchase:hover {
    background-color: green;

}

.social {
    cursor: pointer;
}
