/* Newphonia — offer detail page styles (shared) */
:root{
  --ink:#150B2C; --ink-2:#0E0820;
  --paper:#EDE6FA; --paper-soft:#CFC2E8; --fog:#9A8FB8;
  --line:rgba(237,230,250,.10); --line-2:rgba(237,230,250,.18);
  --pink:#E285C8; --pink-bright:#FFA8DA; --magenta:#A8338A; --purple:#7A4FCF;
  --rose-deep:#FF4D94; --rose-mid:#C72074;
  --grad:linear-gradient(135deg,var(--pink-bright) 0%,var(--magenta) 50%,var(--purple) 100%);
  --grad-rose:linear-gradient(135deg,#FFA8C8,#FF4D94 50%,#C72074);
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Outfit','Inter',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --r:14px; --r-lg:22px;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-weight:300;-webkit-font-smoothing:antialiased}
body{
  background:
    radial-gradient(1100px 600px at 80% -10%,rgba(168,51,138,.18),transparent 60%),
    radial-gradient(900px 500px at 0% 90%,rgba(122,79,207,.16),transparent 60%),
    var(--ink);
  min-height:100vh;
}
a{color:inherit}
.wrap{max-width:1080px;margin:0 auto;padding:0 28px}

/* NAV */
.nav{display:flex;align-items:center;justify-content:space-between;padding:22px 28px;position:sticky;top:0;z-index:20;backdrop-filter:blur(14px);background:rgba(21,11,44,.65);border-bottom:1px solid var(--line)}
.nav .brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--paper)}
.nav .brand img{height:30px;width:auto}
.nav .brand .wm{font-family:var(--serif);font-weight:500;font-size:22px;letter-spacing:.02em}
.nav .nav-links{display:flex;gap:28px;font-size:13px;color:var(--fog)}
.nav .nav-links a{text-decoration:none;transition:color .2s}
.nav .nav-links a:hover{color:var(--paper)}
.nav .cta{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--paper);text-decoration:none;border:1px solid var(--line-2);padding:10px 16px;border-radius:999px;transition:all .25s}
.nav .cta:hover{background:var(--pink);color:#150B2C;border-color:transparent}
@media (max-width:760px){.nav .nav-links{display:none}}

/* HEADER */
.hero{padding:80px 0 50px;border-bottom:1px solid var(--line)}
.hero .crumb{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--fog);margin-bottom:24px;display:flex;align-items:center;gap:10px}
.hero .crumb a{color:var(--fog);text-decoration:none;transition:color .2s}
.hero .crumb a:hover{color:var(--pink)}
.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(48px,7vw,96px);line-height:1.02;letter-spacing:-.02em;margin:0 0 22px;text-wrap:balance}
.hero h1 em{font-style:italic;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero h1.rose em{background:var(--grad-rose);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lede{font-size:20px;line-height:1.55;color:var(--paper-soft);max-width:680px;margin:0 0 36px;font-weight:300}
.hero .meta{display:flex;flex-wrap:wrap;gap:14px 36px;align-items:baseline;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:30px 0 0}
.hero .meta .price{font-family:var(--serif);font-weight:500;font-size:46px;line-height:1;letter-spacing:-.02em}
.hero .meta .price .v{display:inline}
.hero .meta .price .p{font-family:var(--sans);font-size:13px;color:var(--fog);font-weight:400;margin-left:4px;letter-spacing:0}
.hero .meta .badge{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--fog);padding:8px 14px;border:1px solid var(--line-2);border-radius:999px}
.hero .meta .badge.hot{color:#fff;background:var(--grad);border-color:transparent}
.hero .meta .badge.rose{color:#fff;background:var(--grad-rose);border-color:transparent}
.hero .actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:12px;padding:15px 26px;border-radius:999px;font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:all .25s;font-weight:500}
.btn .arrow{display:inline-block;width:18px;height:1px;background:currentColor;position:relative}
.btn .arrow::after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}
.btn-primary{background:var(--grad);color:#150B2C;font-weight:600}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 30px -10px rgba(226,133,200,.6)}
.btn-rose{background:var(--grad-rose);color:#fff;font-weight:600}
.btn-rose:hover{transform:translateY(-1px);box-shadow:0 12px 30px -10px rgba(255,77,148,.6)}
.btn-soft{background:transparent;color:var(--paper);border-color:var(--line-2)}
.btn-soft:hover{background:rgba(237,230,250,.05);border-color:var(--paper-soft)}

/* SECTIONS */
section{padding:80px 0;border-bottom:1px solid var(--line)}
section.lite{padding:60px 0}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--fog);margin-bottom:18px}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--pink)}
.h2{font-family:var(--serif);font-weight:400;font-size:clamp(32px,4.5vw,56px);line-height:1.1;letter-spacing:-.015em;margin:0 0 24px;text-wrap:balance}
.h2 em{font-style:italic;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* BENEFITS GRID */
.benefits{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.benefit{padding:28px 26px;border:1px solid var(--line);border-radius:var(--r-lg);background:rgba(237,230,250,.025);transition:transform .3s,border-color .3s}
.benefit:hover{transform:translateY(-4px);border-color:var(--line-2)}
.benefit .num{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--pink);margin-bottom:14px}
.benefit h3{font-family:var(--serif);font-weight:500;font-size:24px;line-height:1.15;margin:0 0 10px;letter-spacing:-.01em}
.benefit p{margin:0;color:var(--paper-soft);line-height:1.6;font-size:14.5px}
@media (max-width:720px){.benefits{grid-template-columns:1fr}}

/* INCLUDED LIST */
.included{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:14px 36px}
.included li{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-top:1px solid var(--line);font-size:15px;line-height:1.5;color:var(--paper-soft)}
.included li:nth-child(1),.included li:nth-child(2){border-top:1px solid var(--line)}
.included li::before{content:"";width:14px;height:14px;border-radius:50%;border:1px solid var(--line-2);flex-shrink:0;margin-top:3px;background:radial-gradient(circle at center,var(--pink-bright) 0 2.5px,transparent 3px)}
@media (max-width:720px){.included{grid-template-columns:1fr}}

/* BONUS PACK — added-value items, gift-styled */
.bonus-pack{padding:60px 0 80px;border-bottom:1px solid var(--line)}
.bonus-pack .gift-wrap{position:relative;padding:42px 38px 36px;border-radius:var(--r-lg);background:linear-gradient(135deg,rgba(255,200,90,.08),rgba(220,150,30,.04));border:1px solid rgba(255,210,122,.22);overflow:hidden}
.bonus-pack .gift-wrap::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#FFD27A,rgba(255,210,122,.25),transparent 70%);-webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.bonus-pack .gift-eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:#FFD27A;margin-bottom:14px}
.bonus-pack .gift-eyebrow .tag{padding:4px 10px;border:1px solid rgba(255,210,122,.45);border-radius:999px;color:#FFE0A8;font-size:9px;letter-spacing:.18em}
.bonus-pack h3{font-family:var(--serif);font-weight:500;font-style:italic;font-size:clamp(26px,3vw,38px);line-height:1.12;letter-spacing:-.012em;margin:0 0 10px;color:var(--paper)}
.bonus-pack h3 em{background:linear-gradient(135deg,#FFE0A8,#FFD27A);-webkit-background-clip:text;background-clip:text;color:transparent}
.bonus-pack .gift-sub{color:var(--paper-soft);font-size:14px;line-height:1.55;margin:0 0 26px;max-width:620px}
.bonus-pack ul.bonus-items{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:14px 36px}
.bonus-pack ul.bonus-items li{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-top:1px solid rgba(255,210,122,.14);font-size:14.5px;line-height:1.5;color:var(--paper-soft)}
.bonus-pack ul.bonus-items li::before{content:"✦";color:#FFD27A;font-size:14px;line-height:1.4;flex-shrink:0}
@media (max-width:720px){.bonus-pack ul.bonus-items{grid-template-columns:1fr}.bonus-pack .gift-wrap{padding:32px 24px 28px}}

/* HOW IT WORKS — capsule audio specific */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.step{padding:26px 24px;border:1px solid var(--line);border-radius:var(--r-lg);background:rgba(237,230,250,.02)}
.step .num{font-family:var(--serif);font-style:italic;font-size:42px;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:14px}
.step h4{font-family:var(--serif);font-weight:500;font-size:20px;margin:0 0 8px;letter-spacing:-.005em}
.step p{margin:0;color:var(--paper-soft);font-size:14px;line-height:1.55}
@media (max-width:760px){.steps{grid-template-columns:1fr}}

/* REVENUE BANNER */
.revenue{padding:50px 36px;border-radius:var(--r-lg);background:linear-gradient(135deg,rgba(226,133,200,.18),rgba(122,79,207,.08));border:1px solid var(--line-2);position:relative;overflow:hidden}
.revenue::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--grad);-webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.revenue h3{font-family:var(--serif);font-weight:400;font-size:34px;line-height:1.15;margin:0 0 14px;letter-spacing:-.01em}
.revenue h3 em{font-style:italic;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.revenue p{margin:0;color:var(--paper-soft);max-width:620px;line-height:1.6}
.revenue .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:30px}
.revenue .stat .v{font-family:var(--serif);font-weight:500;font-size:42px;line-height:1;letter-spacing:-.02em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.revenue .stat .l{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--fog);margin-top:8px}
@media (max-width:720px){.revenue .stats{grid-template-columns:1fr 1fr}}

/* LEGAL NOTE */
.legal{padding:36px 32px;border:1px solid var(--line);border-radius:var(--r-lg);background:rgba(237,230,250,.02)}
.legal h4{font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--fog);margin:0 0 16px}
.legal p{margin:0 0 12px;color:var(--paper-soft);font-size:13.5px;line-height:1.65;max-width:780px}
.legal p:last-child{margin-bottom:0}
.legal a{color:var(--pink);text-decoration:none;border-bottom:1px solid rgba(226,133,200,.3)}

/* FAQ */
.faq{display:flex;flex-direction:column;gap:0}
.faq details{padding:22px 0;border-bottom:1px solid var(--line);cursor:pointer}
.faq details summary{font-family:var(--serif);font-weight:500;font-size:20px;line-height:1.3;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;letter-spacing:-.005em}
.faq details summary::-webkit-details-marker{display:none}
.faq details summary::after{content:"+";font-family:var(--sans);font-weight:300;font-size:24px;color:var(--fog);flex-shrink:0;transition:transform .3s}
.faq details[open] summary::after{content:"–"}
.faq details p{margin:14px 0 0;color:var(--paper-soft);line-height:1.65;font-size:14.5px;max-width:760px}

/* CLOSING CTA */
.close-cta{padding:90px 0;text-align:center}
.close-cta h2{font-family:var(--serif);font-weight:400;font-size:clamp(36px,5vw,64px);line-height:1.05;letter-spacing:-.015em;margin:0 0 18px}
.close-cta h2 em{font-style:italic;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.close-cta p{color:var(--paper-soft);max-width:560px;margin:0 auto 30px;font-size:17px;line-height:1.55}
.close-cta .actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* ============================================ */
/* SOUNDTRACK SAMPLER                              */
/* ============================================ */
.sampler{padding:90px 0;border-bottom:1px solid var(--line)}
.sampler .head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:34px;flex-wrap:wrap}
.sampler .head .left{max-width:680px}
.sampler .head .h2{margin:0 0 10px}
.sampler .head .lede{margin:0;color:var(--paper-soft);font-size:16.5px;line-height:1.55}
.sampler .head .right{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--fog);padding-top:6px;text-align:right;line-height:1.6}
.sampler .head .right b{color:var(--paper);font-weight:500;display:block;letter-spacing:.18em}

/* tabs */
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px;padding:8px;background:rgba(237,230,250,.025);border:1px solid var(--line);border-radius:999px;width:fit-content;max-width:100%}
.tab{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--fog);background:transparent;border:0;padding:11px 18px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:all .25s;font-weight:500}
.tab:hover{color:var(--paper)}
.tab.active{background:var(--grad);color:#150B2C;font-weight:600}
.sampler.rose .tab.active{background:var(--grad-rose);color:#fff}

/* track list */
.tracks{display:flex;flex-direction:column;gap:6px;border:1px solid var(--line);border-radius:var(--r-lg);background:rgba(237,230,250,.02);padding:12px;overflow:hidden}
.track{display:grid;grid-template-columns:30px 48px 1fr auto auto;gap:18px;align-items:center;padding:14px 16px;border-radius:14px;transition:background .25s;cursor:pointer;position:relative}
.track:hover{background:rgba(237,230,250,.04)}
.track .idx{font-family:var(--mono);font-size:11px;color:var(--fog);letter-spacing:.1em;text-align:center}
.track .play{width:48px;height:48px;border-radius:50%;background:rgba(237,230,250,.06);border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .25s;flex-shrink:0;position:relative}
.track .play svg{width:14px;height:14px;color:var(--paper);transform:translateX(1px);transition:transform .2s}
.track:hover .play{background:var(--grad);border-color:transparent}
.track:hover .play svg{color:#150B2C;transform:translateX(1px)}
.sampler.rose .track:hover .play{background:var(--grad-rose)}
.sampler.rose .track:hover .play svg{color:#fff}
.track.playing .play{background:var(--grad);border-color:transparent}
.track.playing .play svg{color:#150B2C}
.sampler.rose .track.playing .play{background:var(--grad-rose)}
.sampler.rose .track.playing .play svg{color:#fff}
.track .meta{min-width:0}
.track .ttl{font-family:var(--serif);font-weight:500;font-size:19px;line-height:1.2;letter-spacing:-.005em;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.track .sub{font-size:13px;color:var(--fog);line-height:1.4;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.track .sub .pill{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-soft);padding:3px 9px;border:1px solid var(--line-2);border-radius:999px}
.track .wave{display:flex;align-items:center;gap:2.5px;height:28px;width:120px}
.track .wave i{display:block;width:2.5px;background:var(--fog);border-radius:2px;opacity:.55;transition:opacity .2s,background .2s,height .2s}
.track:hover .wave i,.track.playing .wave i{background:var(--pink-bright);opacity:1}
.sampler.rose .track:hover .wave i,.sampler.rose .track.playing .wave i{background:var(--rose-deep)}
.track.playing .wave i{animation:waveB 1.1s ease-in-out infinite}
.track.playing .wave i:nth-child(2n){animation-delay:.18s}
.track.playing .wave i:nth-child(3n){animation-delay:.36s}
.track.playing .wave i:nth-child(4n){animation-delay:.54s}
@keyframes waveB{0%,100%{transform:scaleY(.4)}50%{transform:scaleY(1)}}
.track .dur{font-family:var(--mono);font-size:11px;color:var(--fog);letter-spacing:.06em;min-width:42px;text-align:right}
@media (max-width:760px){
  .track{grid-template-columns:24px 42px 1fr auto;gap:12px;padding:12px 10px}
  .track .wave{display:none}
  .track .ttl{font-size:17px}
}

/* capsule row (Access) */
.track.capsule{background:linear-gradient(90deg,rgba(255,77,148,.10),rgba(122,79,207,.04));border:1px dashed rgba(255,77,148,.30)}
.track.capsule .play{background:linear-gradient(135deg,#FFA8C8,#C72074);border-color:transparent}
.track.capsule .play svg{color:#fff;transform:none}
.track.capsule .ttl{font-family:var(--sans);font-weight:500;font-size:15.5px;letter-spacing:.005em;text-transform:none}
.track.capsule .sub .pill.cap{background:rgba(255,77,148,.20);border-color:rgba(255,77,148,.45);color:#FFC8DE}
.track.capsule .wave i{background:#FFA8C8;opacity:.6}

/* mood / variant tabs (Performance modes) */
.modegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:30px}
.modegrid .mode{padding:18px 18px 16px;border:1px solid var(--line);border-radius:14px;background:rgba(237,230,250,.02);text-align:left;cursor:pointer;transition:all .25s;color:var(--paper)}
.modegrid .mode:hover{border-color:var(--line-2);background:rgba(237,230,250,.04)}
.modegrid .mode.active{border-color:transparent;background:linear-gradient(135deg,rgba(226,133,200,.18),rgba(122,79,207,.10));position:relative}
.modegrid .mode.active::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--grad);-webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.modegrid .mode .glyph{font-family:var(--serif);font-style:italic;font-size:22px;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:6px;line-height:1}
.modegrid .mode .nm{font-family:var(--sans);font-weight:500;font-size:15px;letter-spacing:-.005em;margin:0 0 3px;color:var(--paper)}
.modegrid .mode .desc{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--fog)}
@media (max-width:760px){.modegrid{grid-template-columns:1fr 1fr}}

/* maison list (Signature) */
.maisons{display:flex;flex-direction:column;gap:18px}
.maison{border:1px solid var(--line);border-radius:var(--r-lg);background:rgba(237,230,250,.02);overflow:hidden;transition:border-color .3s}
.maison:hover{border-color:var(--line-2)}
.maison .mhead{display:flex;align-items:center;gap:18px;padding:22px 24px 18px;border-bottom:1px solid var(--line)}
.maison .crest{width:56px;height:56px;border-radius:14px;background:linear-gradient(135deg,rgba(255,168,200,.18),rgba(199,32,116,.10));border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-style:italic;font-size:26px;background-clip:padding-box;color:transparent;-webkit-text-fill-color:transparent;flex-shrink:0;position:relative;overflow:hidden}
.maison .crest .gly{background:var(--grad-rose);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;line-height:1}
.maison .mhead .info{flex:1;min-width:0}
.maison .mhead .nm{font-family:var(--serif);font-weight:500;font-size:24px;line-height:1.1;letter-spacing:-.005em;margin:0 0 4px}
.maison .mhead .sub{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--fog);display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.maison .mhead .sub span+span{padding-left:10px;border-left:1px solid var(--line-2)}
.maison .tracks{border:0;border-radius:0;padding:6px 10px;background:transparent}
.maison .track{padding:12px 16px}

/* ============================================ */
/* SCHEDULER                                       */
/* ============================================ */
.schedule{padding:100px 0 110px;border-bottom:1px solid var(--line);scroll-margin-top:90px}
.schedule .sched-head{text-align:center;margin-bottom:40px}
.schedule .sched-head .eyebrow{justify-content:center}
.schedule .sched-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(34px,4.6vw,56px);line-height:1.06;letter-spacing:-.015em;margin:0 0 14px;text-wrap:balance}
.schedule .sched-head h2 em{font-style:italic;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.schedule.rose .sched-head h2 em{background:var(--grad-rose);-webkit-background-clip:text;background-clip:text;color:transparent}
.schedule .sched-head p{color:var(--paper-soft);font-size:16.5px;line-height:1.55;max-width:520px;margin:0 auto}

.booker{display:grid;grid-template-columns:1.05fr 1fr;gap:24px;align-items:start;border:1px solid var(--line-2);border-radius:var(--r-lg);background:rgba(237,230,250,.02);overflow:hidden;position:relative}
.booker::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(226,133,200,.35),rgba(122,79,207,.15));-webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.schedule.rose .booker::before{background:linear-gradient(135deg,rgba(255,77,148,.45),rgba(199,32,116,.18))}
.booker .left,.booker .right{padding:34px 32px}
.booker .left{border-right:1px solid var(--line)}
.booker .lbl{font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--fog);margin-bottom:14px}
.booker .month{font-family:var(--serif);font-weight:500;font-size:22px;letter-spacing:-.005em;margin:0 0 16px;display:flex;justify-content:space-between;align-items:center;font-style:italic}

.daystrip{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:26px}
.day{padding:10px 0 12px;border:1px solid var(--line);border-radius:12px;background:transparent;cursor:pointer;text-align:center;transition:all .2s;color:var(--paper);font-family:var(--sans)}
.day:hover{border-color:var(--line-2);background:rgba(237,230,250,.03)}
.day.active{background:var(--grad);border-color:transparent;color:#150B2C}
.schedule.rose .day.active{background:var(--grad-rose);color:#fff}
.day.disabled{opacity:.3;pointer-events:none}
.day .dn{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;display:block;margin-bottom:4px;opacity:.85}
.day .dd{font-family:var(--serif);font-weight:500;font-size:22px;line-height:1;letter-spacing:-.01em}

.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.slot{padding:13px 0;border:1px solid var(--line);border-radius:12px;background:transparent;cursor:pointer;font-family:var(--mono);font-size:12px;letter-spacing:.1em;color:var(--paper);transition:all .2s;text-align:center}
.slot:hover{border-color:var(--paper-soft);background:rgba(237,230,250,.04)}
.slot.active{background:var(--grad);border-color:transparent;color:#150B2C;font-weight:600}
.schedule.rose .slot.active{background:var(--grad-rose);color:#fff}
.slot.disabled{opacity:.25;pointer-events:none;text-decoration:line-through}

.booker .right{background:rgba(21,11,44,.35)}
.booker .right .summary{padding:14px 16px;border:1px solid var(--line);border-radius:14px;margin-bottom:22px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-soft);display:flex;flex-direction:column;gap:8px}
.booker .right .summary .row{display:flex;justify-content:space-between;gap:14px}
.booker .right .summary .row span:first-child{color:var(--fog)}
.booker .right .summary .row b{color:var(--paper);font-weight:500;letter-spacing:.14em}

.form{display:flex;flex-direction:column;gap:14px}
.form .field{display:flex;flex-direction:column;gap:6px}
.form .field label{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--fog)}
.form .field input,.form .field textarea,.form .field select{background:transparent;border:0;border-bottom:1px solid var(--line-2);color:var(--paper);font-family:var(--sans);font-size:15px;padding:8px 0 10px;outline:none;font-weight:300;transition:border-color .2s}
.form .field input:focus,.form .field textarea:focus,.form .field select:focus{border-color:var(--pink-bright)}
.schedule.rose .form .field input:focus,.schedule.rose .form .field textarea:focus{border-color:var(--rose-deep)}
.form .field input::placeholder,.form .field textarea::placeholder{color:var(--fog)}
.form .duo{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form .actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px;flex-wrap:wrap;gap:12px}
.form .privacy{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fog);max-width:260px;line-height:1.5}
.form button.confirm{background:var(--grad);color:#150B2C;font-weight:600;border:0;padding:14px 22px;border-radius:999px;font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;gap:10px;transition:all .25s}
.schedule.rose .form button.confirm{background:var(--grad-rose);color:#fff}
.form button.confirm:hover{transform:translateY(-1px);box-shadow:0 14px 30px -10px rgba(226,133,200,.55)}
.schedule.rose .form button.confirm:hover{box-shadow:0 14px 30px -10px rgba(255,77,148,.55)}

.booker.done .left,.booker.done .right .form,.booker.done .right .summary{display:none}
.booker.done .right{padding:60px 40px;border-right:0;text-align:center}
.booker.done{grid-template-columns:1fr}
.confirmation{display:none;padding:50px 40px;text-align:center}
.booker.done .confirmation{display:block}
.confirmation .check{width:72px;height:72px;border-radius:50%;margin:0 auto 24px;background:var(--grad);display:flex;align-items:center;justify-content:center}
.schedule.rose .confirmation .check{background:var(--grad-rose)}
.confirmation .check svg{width:32px;height:32px;color:#150B2C}
.schedule.rose .confirmation .check svg{color:#fff}
.confirmation h3{font-family:var(--serif);font-weight:400;font-size:34px;line-height:1.1;margin:0 0 14px;letter-spacing:-.01em}
.confirmation h3 em{font-style:italic;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.schedule.rose .confirmation h3 em{background:var(--grad-rose);-webkit-background-clip:text;background-clip:text;color:transparent}
.confirmation p{color:var(--paper-soft);max-width:460px;margin:0 auto 18px;line-height:1.55}
.confirmation .recap{display:inline-flex;flex-direction:column;gap:6px;padding:18px 26px;border:1px solid var(--line-2);border-radius:14px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-soft);margin-top:6px;text-align:left}
.confirmation .recap b{color:var(--paper);font-weight:500}

@media (max-width:880px){
  .booker{grid-template-columns:1fr}
  .booker .left{border-right:0;border-bottom:1px solid var(--line)}
}

/* FOOTER */
footer{padding:50px 28px;border-top:1px solid var(--line);text-align:center;color:var(--fog);font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase}
footer a{color:var(--paper-soft);text-decoration:none;margin:0 14px}
footer a:hover{color:var(--pink)}

/* == ≤640px : mobile == */
@media(max-width:640px){
  .wrap{padding:0 18px}
  .hero{padding:60px 0 36px}
  .hero h1{font-size:clamp(32px,9vw,56px)}
  .hero .lede{font-size:16px;margin-bottom:24px}
  .hero .meta .price{font-size:34px}
  .hero .actions{gap:10px}
  .hero .actions .btn{flex:1 1 auto;text-align:center;justify-content:center}
  section{padding:56px 0}
  section.lite{padding:40px 0}
  .sampler{padding:56px 0}
  .schedule{padding:60px 0 70px}
  .close-cta{padding:60px 0}
  .bonus-pack{padding:40px 0 56px}
  .tabs{padding:6px;gap:4px}
  .tab{padding:9px 12px;font-size:9.5px}
  .daystrip{gap:4px}
  .day{padding:8px 0 10px}
  .day .dd{font-size:18px}
  .day .dn{font-size:8px}
  .slots{grid-template-columns:repeat(2,1fr);gap:6px}
  .slot{font-size:11px;padding:12px 0}
  .booker .left,.booker .right{padding:22px 18px}
  .booker.done .right{padding:36px 20px}
  .form .duo{grid-template-columns:1fr}
  .revenue{padding:36px 20px}
  .revenue .stats{grid-template-columns:1fr 1fr}
  footer{padding:36px 18px}
  footer a{margin:0 8px}
}
/* == ≤480px : petit mobile == */
@media(max-width:480px){
  .hero h1{font-size:clamp(28px,9vw,44px)}
  .hero .actions{flex-direction:column}
  .hero .actions .btn{width:100%}
  .slots{grid-template-columns:1fr 1fr}
  .modegrid{grid-template-columns:1fr}
  .track{grid-template-columns:24px 38px 1fr auto;gap:8px;padding:10px 8px}
  .track .play{width:38px;height:38px}
  .track .ttl{font-size:15px}
  .tabs{flex-wrap:wrap;border-radius:14px;width:100%}
  .sampler .head{flex-direction:column;align-items:flex-start;gap:14px}
}
