:root{--paper:#f3f0e8;--cream:#fffdf8;--ink:#243f50;--teal:#286e75;--rose:#bd4c70;--muted:#4d606a;--line:#dce2dc;--soft:#e6f0ed;--shadow:0 20px 56px rgba(28,61,70,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.62 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}a{color:inherit}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #aa4c77;outline-offset:3px}.skip{position:absolute;top:-60px;left:12px;background:#fff;z-index:100;padding:8px 16px}.skip:focus{top:12px}.wrap{width:min(1170px,calc(100% - 54px));margin:auto}.announcement{background:var(--ink);color:#fff9f2;font-size:12px;font-weight:700;letter-spacing:.035em;text-align:center;padding:9px 10px}.tiny-note{color:#ffb4bc;font-size:15px;padding-right:6px}.dot{opacity:.46;padding:0 9px}.site-header{min-height:93px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-family:Georgia,serif;font-size:clamp(29px,3vw,36px);font-weight:700;letter-spacing:-1.7px;text-decoration:none;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;line-height:1}.brand em{font-style:italic;font-weight:400;color:var(--rose)}.brand-icon{font-size:25px;color:var(--teal);margin-right:3px}.site-nav{display:flex;gap:30px;align-items:center;font-size:13px;font-weight:750}.site-nav a{text-decoration:none}.site-nav a:hover,.footer-links a:hover{text-decoration:underline}.site-nav .nav-join{border:1px solid #becfca;border-radius:99px;padding:9px 17px;background:var(--cream)}.hero{padding:62px 0 81px;min-height:656px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:36px}.eyebrow{color:var(--teal);font-weight:850;letter-spacing:.16em;font-size:11px}.sparkle{font-size:16px;padding-right:7px;color:var(--rose)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-1.25px}h1{font-size:clamp(44px,5vw,69px);line-height:1.105;margin:20px 0 22px;max-width:680px}h1 em,h2 em{color:var(--teal);font-weight:400}.intro{font-size:18px;color:#4b5d63;max-width:570px;line-height:1.73}.intro strong{color:var(--ink)}.hero-buttons{display:flex;flex-wrap:wrap;gap:11px;margin:29px 0 18px}.button{min-height:50px;display:inline-flex;justify-content:center;align-items:center;gap:16px;border-radius:11px;padding:11px 19px;font-weight:750;text-decoration:none;border:1px solid var(--ink);font-size:13px;transition:transform .16s,background-color .16s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--ink);color:#fff;border-color:var(--ink)}.button.primary:hover{background:#31596a}.button.secondary{background:transparent}.hero-foot{font-size:12px;color:#66767a}.mini-dot{display:inline-block;background:#33877a;width:7px;height:7px;border-radius:50%;vertical-align:middle;margin-right:6px}.separator{padding:0 6px;color:#95a4a5}.hero-art{min-height:540px;position:relative;display:grid;place-items:center;isolation:isolate}.orb{position:absolute;border-radius:50%;z-index:-2}.orb-a{height:405px;width:405px;background:radial-gradient(circle at 37% 34%,#f9e1d5,#dfebea 72%);left:9%;top:12%}.orb-b{width:250px;height:250px;background:#f3e5eb;right:0;bottom:1%;opacity:.9}.staff{position:absolute;width:360px;height:175px;left:-10%;top:18%;transform:rotate(-13deg);opacity:.42;z-index:-1}.staff i{display:block;width:100%;border-top:1px solid #629199;margin-bottom:16px}.staff span{position:absolute;right:49px;top:0px;font-size:76px;color:#ba6683}.device{width:307px;background:#fffdfb;border:7px solid #e6e0d7;border-radius:39px;box-shadow:0 30px 55px #30556329,0 0 0 1px #b9c9c5 inset;transform:rotate(4deg);padding:15px 12px 13px;position:relative;z-index:1}.device:before{content:'';position:absolute;top:5px;left:calc(50% - 42px);width:84px;height:11px;background:#ddd8d1;border-radius:0 0 14px 14px}.device-head{display:flex;justify-content:space-between;align-items:center;padding:17px 7px 10px}.mini-brand{font:700 20px Georgia,serif;letter-spacing:-.9px}.mini-brand em{color:var(--rose);font-weight:400}.device-icon{font-weight:700;letter-spacing:2px;color:#6c8186}.device-kicker{font-size:9px;letter-spacing:.13em;font-weight:850;color:var(--teal);margin:0 6px 8px}.sample-cover{position:relative;border-radius:16px 16px 3px 3px;overflow:hidden;height:187px;background:#d8ded9}.sample-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 28%;filter:saturate(.96)}.sample-label{position:absolute;bottom:10px;left:12px;border-radius:40px;padding:4px 10px;font-size:10px;background:#fffffff0;color:#455b66;font-weight:750}.sample-body{padding:15px 5px 2px}.sample-title{display:flex;align-items:center;justify-content:space-between}.sample-title strong{font:400 27px Georgia,serif}.pin{color:var(--rose)}.sample-role{font-size:11px;color:#567078;margin-top:2px}.sample-chips{display:flex;gap:5px;flex-wrap:wrap;margin:13px 0}.sample-chips span{border:1px solid #c9e1e0;background:#e8f1f0;border-radius:30px;padding:4px 9px;font-size:10px;font-weight:700;color:#32666d}.sample-quote{border-left:3px solid var(--rose);padding-left:9px;font-size:11px;color:#52626a;line-height:1.48}.sample-actions{display:flex;justify-content:center;gap:26px;margin:16px 0 3px;align-items:center}.circle{border:1px solid #cdd5d5;width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:#fff;font-size:22px}.circle.maybe{width:30px;height:30px;color:var(--teal);font-size:18px}.circle.no{color:#456777}.circle.yes{background:var(--rose);color:#fff;border-color:var(--rose)}.floating{position:absolute;z-index:2;border:1px solid #dae4df;border-radius:14px;background:#fffdfbf2;box-shadow:0 12px 34px #294b501b;display:flex;align-items:center;gap:11px;font-size:12px;font-weight:750;padding:11px 14px}.floating small{display:block;font-size:10px;font-weight:500;color:#617178}.floating-top{right:-5%;top:13%;transform:rotate(-4deg)}.floating-bottom{left:-8%;bottom:11%;transform:rotate(-5deg)}.floating-icon{color:var(--teal);font-size:26px}.floating-icon.heart{color:var(--rose)}.decor-rule{display:flex;align-items:center;gap:13px;color:var(--rose);font-size:24px;opacity:.55}.decor-rule:before,.decor-rule:after{content:'';flex:1;border-top:1px solid #c2d3cf}.intro-section{padding:85px 0 102px}.section-head{text-align:center}.section-head h2{font-size:clamp(35px,4vw,52px);line-height:1.2;margin:17px auto 14px}.section-head p{max-width:560px;margin:0 auto 42px;color:var(--muted);font-size:15px}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.feature{background:#fffdfa;border:1px solid #dee3da;border-radius:20px;padding:27px 25px;box-shadow:0 9px 27px rgba(38,62,66,.04)}.feature-num{display:flex;justify-content:space-between;align-items:center;color:var(--teal);font-size:11px;font-weight:850;letter-spacing:.13em}.feature-num span{font-size:23px;color:var(--rose)}.feature h3{font:400 25px Georgia,serif;margin:23px 0 9px}.feature p{margin-bottom:0;color:var(--muted);font-size:14px;line-height:1.75}.feature-disclaimer{color:#6e7778;font-size:12px;text-align:center;margin:25px 0 0}.join-band{background:#20414c;color:#f8fbf9;position:relative;overflow:hidden}.join-band:after{content:'♫';position:absolute;right:-33px;top:-175px;font:400 520px Georgia,serif;color:#ffffff06;pointer-events:none}.join-layout{padding:90px 0;display:grid;grid-template-columns:1fr 470px;gap:80px;align-items:center;position:relative;z-index:1}.eyebrow.light{color:#a6d4c9}.join-left h2{font-size:clamp(42px,4.8vw,65px);line-height:1.11;margin:17px 0 21px}.join-left>p{font-size:17px;line-height:1.8;color:#d1e2e0;max-width:490px}.why-join{margin:31px 0;display:grid;gap:14px;color:#e8f0ed;font-size:14px}.check-icon{color:#c5f0de;margin-right:11px;font-weight:800}.location-note{font-size:12px;border-top:1px solid #557078;padding-top:20px;color:#b6d2cf;max-width:425px}.signup-card{background:#fffdf9;border-radius:22px;box-shadow:0 28px 62px #081c214d;padding:32px 35px;color:var(--ink)}.form-eyebrow{font-size:10px;letter-spacing:.14em;font-weight:850;color:var(--teal)}.signup-card h3{font:400 35px Georgia,serif;margin:8px 0 4px}.signup-card>p{font-size:13px;color:var(--muted);margin:0 0 17px}.signup-card label:not(.checkbox-row){display:block;font-size:12px;font-weight:750;margin:15px 0 6px}.asterisk{color:#a02e51}.optional{font-weight:400;color:#738087;font-size:10px;margin-left:7px}.signup-card input[type=email],.signup-card select{width:100%;min-height:46px;background:#fff;border:1px solid #cbd8d3;border-radius:9px;padding:10px 12px;color:#253f4b}.signup-card input::placeholder{color:#8c999d}.checkbox-row{display:flex;align-items:flex-start;gap:10px;margin:17px 0 0;font-size:12px;color:#465b63;line-height:1.52;cursor:pointer}.checkbox-row input{margin-top:3px;width:16px;height:16px;flex:0 0 16px;accent-color:var(--teal)}.checkbox-row b{color:#a02e51}.form-submit{width:100%;margin-top:23px;border:0}.form-fine{font-size:10px;color:#66767a;line-height:1.7;margin:14px 0 0}.form-fine a{color:#1e6870;font-weight:750}.bot-field{position:absolute!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;height:1px!important;width:1px!important;margin:-1px!important;padding:0!important;border:0!important}.preview-warning{margin-top:12px;padding:10px 12px;border:1px solid #d6ad73;background:#fff5e6;border-radius:8px;font-size:12px;color:#715327}.faq{padding:92px 0 110px}.faq h2{font-size:clamp(36px,4vw,50px);margin:12px 0 30px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 17px}.faq details{background:#fffdfa;border:1px solid #dee4de;border-radius:12px;padding:15px 18px;align-self:start}.faq summary{cursor:pointer;list-style-position:outside;font-size:14px;font-weight:750;color:var(--ink)}.faq details[open]{border-color:#bdd6d2}.faq details p{font-size:13px;color:#52656b;line-height:1.7;margin:14px 0 3px}.footer{background:#e9ebe5;border-top:1px solid #d0d9d2;padding:34px 0 17px}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-brand{font-size:29px}.footer-inner p{font-size:12px;color:#687779;margin:12px 0}.footer-links{display:flex;gap:22px;font-size:13px;font-weight:700}.copyright{text-align:center;font-size:10px;color:#788589;padding:17px 12px 0;border-top:1px solid #d4dcd7;margin:20px 0 0}
/* secondary pages */ .simple-main{max-width:800px;margin:0 auto;padding:70px 26px 100px}.simple-main h1{font-size:clamp(39px,5vw,62px)}.simple-main h2{font:400 28px Georgia,serif;margin-top:40px}.simple-main p,.simple-main li{color:#50646b}.simple-main .small-form{border:1px solid #dae1dc;padding:24px;background:#fffdf9;border-radius:16px;margin:27px 0}.small-form label{display:block;font-weight:750;font-size:13px;margin:17px 0 7px}.small-form input,.small-form textarea{width:100%;border:1px solid #cbd8d3;background:#fff;border-radius:8px;padding:10px 12px}.small-form textarea{min-height:95px;resize:vertical}.small-form button{margin-top:19px}.thankyou-mark{font-size:55px;color:var(--teal);margin:0 0 8px}.back-link{color:var(--teal);font-weight:750}
@media (max-width:1010px){.hero{grid-template-columns:1fr 1fr;gap:15px}.floating-top{right:-1%}.floating-bottom{left:-2%}.join-layout{gap:30px;grid-template-columns:1fr 440px}.hero-copy h1{font-size:clamp(42px,5vw,58px)}}
@media (max-width:780px){.wrap{width:min(100% - 34px,620px)}.site-header{min-height:75px}.site-nav{gap:13px}.site-nav>a:not(.nav-join){display:none}.site-nav .nav-join{font-size:11px;padding:8px 11px}.brand{font-size:30px}.hero{grid-template-columns:1fr;padding:37px 0 54px;gap:10px;min-height:auto}.hero-copy h1{font-size:clamp(42px,9.4vw,61px);margin:15px 0 20px}.intro{font-size:16px}.hero-art{min-height:514px}.floating-top{right:2%;top:16%}.floating-bottom{left:0;bottom:5%}.intro-section{padding:63px 0 77px}.feature-grid{grid-template-columns:1fr;gap:12px}.feature{padding:20px 24px}.feature h3{margin:11px 0 7px}.join-layout{grid-template-columns:1fr;padding:63px 0;gap:36px}.signup-card{padding:27px 26px}.faq{padding:70px 0 85px}.faq-grid{grid-template-columns:1fr}.footer-inner{align-items:flex-start;flex-direction:column}.footer-links{gap:24px}}
@media (max-width:420px){.announcement{font-size:10px;padding:8px 4px}.dot{padding:0 3px}.wrap{width:calc(100% - 28px)}.brand{font-size:27px}.brand-icon{font-size:21px}.site-nav .nav-join{font-size:10px}.hero-copy h1{font-size:41px}.hero-buttons .button{width:100%}.hero-foot{line-height:2}.separator{padding:0 3px}.hero-art{min-height:505px}.device{transform:scale(.9) rotate(3deg)}.floating-top{right:0;top:13%}.floating-bottom{left:0;bottom:3%}.staff{left:-25%}.signup-card{padding:24px 18px}.section-head h2{font-size:35px}.faq h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* v0.3: early-access links target the form instead of the long introduction. */
#waitlist-form{scroll-margin-top:24px}

/* v0.4: music-infused ivory and prominent responsive identity.
   Keeps the form markup, submission endpoint, consent and script unchanged. */
body.landing-page{
  overflow-x:clip;
  background-color:var(--paper);
  background-image:url("music-background.svg");
  background-repeat:repeat;
  background-size:1440px 960px;
  background-position:center 0;
}
/* Make the brand immediately legible and visually dominant above the hero. */
body.landing-page .site-header{
  min-height:155px;
  padding-top:22px;
  padding-bottom:16px;
  align-items:center;
}
body.landing-page .site-header .brand{
  font-size:clamp(58px,6.7vw,90px);
  letter-spacing:-.053em;
  gap:12px;
  line-height:1.04;
  text-shadow:0 2px 0 rgba(255,253,248,.8);
}
body.landing-page .site-header .brand-icon{
  font-size:.67em;
  margin-right:0;
  transform:rotate(-8deg);
  filter:drop-shadow(0 3px 0 rgba(255,253,248,.75));
}
body.landing-page .site-nav{flex-shrink:0;gap:23px}
body.landing-page .hero{padding-top:38px}
/* Visual breathing room without obscuring copy or tappable areas. */
body.landing-page .hero-copy,
body.landing-page .section-head,
body.landing-page .faq > .eyebrow,
body.landing-page .faq > h2{position:relative;z-index:1}
@media(max-width:1010px){
  body.landing-page .site-header .brand{font-size:clamp(52px,6.2vw,72px)}
  body.landing-page .site-header{min-height:126px}
  body.landing-page .site-nav{gap:13px}
}
@media(max-width:780px){
  body.landing-page{background-size:850px 567px;background-position:55% top}
  body.landing-page .site-header{
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:16px;
    padding:22px 0 16px;
    min-height:0;
  }
  body.landing-page .site-header .brand{font-size:clamp(58px,12vw,74px);gap:7px}
  body.landing-page .site-nav{justify-content:center;width:100%}
  body.landing-page .site-nav .nav-join{padding:9px 20px;font-size:12px}
  body.landing-page .hero{padding-top:24px}
}
@media(max-width:420px){
  body.landing-page .site-header .brand{font-size:clamp(57px,14.8vw,64px);gap:5px}
  body.landing-page .site-header{gap:12px;padding-top:18px}
}
/* Prevent wide decorative art on small screens from creating horizontal scrolling. */
html{overflow-x:hidden}
body.landing-page{overflow-x:hidden}


/* v0.5 — waitlist top alignment and compact, readable desktop card.
   Target the card, not its first input. Keep all form fields and consent wording. */
#waitlist-card{scroll-margin-top:16px}
.join-layout{align-items:start;padding:58px 0;gap:62px}
.join-left{padding-top:7px}
.signup-card{padding:25px 29px 24px}
.signup-card h3{font-size:32px;line-height:1.16;margin:5px 0 3px}
.signup-card>p{line-height:1.43;margin-bottom:11px}
.signup-card label:not(.checkbox-row){margin:10px 0 4px;line-height:1.35}
.signup-card input[type=email],.signup-card select{min-height:43px;padding:8px 11px;font-size:13px}
.checkbox-row{margin-top:11px;line-height:1.45}
.checkbox-row input{margin-top:1px}
.form-submit{min-height:46px;margin-top:15px}
.form-fine{margin-top:10px;line-height:1.5}
@media(max-width:1010px){.join-layout{gap:29px}}
@media(max-width:780px){
  .join-layout{grid-template-columns:1fr;padding:52px 0;gap:28px}
  .join-left{padding-top:0}
  .signup-card{padding:27px 25px}
  .signup-card input[type=email],.signup-card select{min-height:46px;font-size:14px}
  .checkbox-row{font-size:12px;margin-top:14px}
}
@media(max-width:420px){
  .signup-card{padding:24px 19px}
  .signup-card h3{font-size:30px}
}
