@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Text&display=swap');

:root{color-scheme:dark;--bg:#111e29;--ink:#f7efdb;--muted:#cad3cd;--gold:#f6d88e;--edge:#344451;--head:"DM Serif Text",Georgia,serif;--body:"DM Sans",system-ui,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);line-height:1.55}
a{color:inherit}
button{font:inherit}
a:focus-visible,button:focus-visible,audio:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.wrap{width:min(1240px,calc(100% - 112px));margin-inline:auto}
.top,.footer{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.top{min-height:80px;border-bottom:1px solid var(--edge)}
.brand{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;font-family:var(--head);font-size:1.35rem;white-space:nowrap}
.brand span{color:var(--gold);font-family:Georgia,serif;font-size:1.8rem;line-height:1}
nav{display:flex;gap:2rem}
nav a,.footer>a:last-child{color:var(--muted);text-decoration:none;font-size:.94rem}
nav a:hover,.footer>a:last-child:hover{color:var(--gold);text-decoration:underline}
.hero{display:grid;grid-template-columns: .86fr 1.14fr;align-items:center;gap:clamp(2rem,5vw,5rem);padding-block:54px 64px}
.eyebrow{margin:0 0 1rem;color:var(--gold);text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:700}
h1,h2{font-family:var(--head);font-weight:550;margin:0;line-height:1.03;text-wrap:balance}
h1{font-size:clamp(3.4rem,6.05vw,6rem);letter-spacing:-.055em}
h1 span{color:var(--gold)}
h2{font-size:clamp(2.05rem,4vw,3.1rem);letter-spacing:-.035em}
.opening{max-width:30rem;margin:1.45rem 0 1.8rem;color:var(--muted);font-size:clamp(1.05rem,1.45vw,1.24rem)}
.start{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.primary{display:inline-flex;align-items:center;gap:.68rem;border:0;border-radius:100px;background:var(--gold);color:#212017;padding:.9rem 1.3rem;cursor:pointer;font-weight:700}
.primary span{font-size:.77rem}
.primary:hover{background:#ffe8ac}
.length,.muted{color:var(--muted);font-size:.94rem}
.art{margin:0;overflow:hidden;border-radius:52% 52% 1.4rem 1.4rem / 14% 14% 1.4rem 1.4rem;background:#1c3942;box-shadow:0 22px 60px #050d174c;border:1px solid #667d743b}
.art img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.listen{background:#192b36;border-block:1px solid var(--edge);scroll-margin-top:1rem}
.listening{padding-block:38px;display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}
.listening .eyebrow,.families .eyebrow{margin-bottom:.65rem}
.muted{margin:.7rem 0 0}
.player{display:grid;gap:.7rem}
.player audio{display:block;width:100%;height:54px;color-scheme:light}
.player a{color:var(--gold);justify-self:end;font-size:.9rem;text-underline-offset:.22em}
#status{margin:0;color:var(--muted)}
.families{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,7vw,7rem);padding-block:74px}
.families p:last-child{color:var(--muted);margin-bottom:0;max-width:29rem}
.families ol{margin:0;padding:0;list-style:none;counter-reset:question;border-top:1px solid var(--edge)}
.families li{counter-increment:question;display:flex;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--edge)}
.families li::before{content:counter(question) ".";color:var(--gold)}
.footer{border-top:1px solid var(--edge);padding-block:23px}
@media(max-width:850px){.wrap{width:calc(100% - 64px)}.hero{gap:1.8rem}.listening{grid-template-columns:1fr 1.1fr}}
@media(max-width:660px){.wrap{width:calc(100% - 36px)}.top{min-height:66px}.brand{font-size:1.17rem}nav{gap:1rem}.hero,.listening,.families{grid-template-columns:1fr}.hero{padding-block:37px 33px;gap:1.7rem}h1{font-size:clamp(3.22rem,12vw,4.8rem)}.opening{margin:1rem 0 1.35rem}.art{max-width:440px;width:100%;justify-self:center}.listening{padding-block:28px;gap:1.1rem}.families{padding-block:46px;gap:1.3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
