/* UX fixes layer — loaded after style.css */
.cinema-chapter h2{color:#132c47}
.cinema-chapter p,.center p,.section-top p,.story-copy>p,.activity p{color:#46505a}
.plan>p,.fine{color:#5c6168}
.text-link{text-underline-offset:4px}

/* Mobile menu drawer */
@media (max-width:900px){
  .site-header{position:sticky}
  .mobile-menu summary{min-height:44px;min-width:44px;display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--line);border-radius:22px;background:var(--paper)}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu[open]>div{position:fixed;left:0;right:0;top:var(--header-h,72px);max-height:calc(100dvh - var(--header-h,72px));overflow-y:auto;width:100%;padding:16px 6% 28px;gap:0;z-index:30;background:var(--cream)}
  .mobile-menu>div>a{display:block;padding:14px 0;font-size:17px;font-weight:700;border-bottom:1px solid var(--line);white-space:normal;color:var(--navy)}
  .mobile-menu .site-languages{display:flex;flex-wrap:wrap;gap:10px;padding-top:18px;border:0}
  .mobile-menu .site-languages a{padding:8px 14px;border:1px solid var(--line);border-radius:20px;font-size:14px}
  .mobile-menu .site-languages a[aria-current]{background:var(--navy);color:#fff}
  .mobile-menu[open]::after{content:'';position:fixed;inset:var(--header-h,72px) 0 0;background:#132c4766;z-index:29}
  body.menu-open{overflow:hidden}
}

/* Mobile hero: full title, copy, CTA above the fold */
@media (max-width:700px){
  .cinematic-hero{min-height:calc(100svh - 70px)!important}
  .poster-title{width:88%!important;top:22px!important}
  .poster-title h1{font-size:clamp(34px,10vw,46px)!important;line-height:1.15!important;margin:0!important}
  .poster-title h1 span{display:block!important;opacity:1!important;visibility:visible!important;transform:none!important}
  .cinematic-invitation{bottom:28px!important;opacity:1!important;transform:none!important;z-index:6!important;visibility:visible!important}
  .cinematic-invitation *{opacity:1!important;visibility:visible!important;transform:none!important}
  .cinematic-hero .scene-shade{background:linear-gradient(to top,#0d1f33f2 0%,#0d1f33aa 30%,transparent 55%)!important;opacity:1!important}
  .cinema-scroll{display:none!important}
  .cinematic-invitation .btn{min-height:48px;padding:14px 22px;font-size:16px}
  .cinematic-invitation .text-link{color:#fff4df;border-color:#fff4df88}
  .mini-cta{display:inline-flex!important}
}

/* Sticky mobile buy bar */
.fx-sticky{display:none}
@media (max-width:700px){
  .fx-sticky{display:flex;position:fixed;inset-inline:12px;bottom:12px;z-index:25;gap:8px;padding:8px;background:var(--navy);border-radius:14px;box-shadow:0 10px 30px #132c4740;transform:translateY(140%);transition:transform .3s}
  .fx-sticky.show{transform:none}
  .fx-sticky a{flex:1;text-align:center;padding:12px 8px;border-radius:9px;font-weight:700;font-size:14px;color:#fff}
  .fx-sticky a.gold{background:#e3bc6e;color:var(--navy)}
}

/* Dialogs */
dialog[open]{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
dialog::backdrop{background:#132c4799}
.group-dialog{width:min(560px,calc(100vw - 24px))}
.fx-send{display:grid;gap:10px;margin-top:10px}
.fx-send .btn{width:100%}

/* Waitlist inside disabled plans */
.fx-wait{display:flex;flex-direction:column;gap:8px}
.fx-wait input{padding:12px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:14px}
.fx-wait small{font-size:11px;color:#5c6168}
.fx-wait .btn{width:100%}

.site-languages{display:none!important}
.edition-comparison{grid-template-columns:minmax(0,420px)!important;justify-content:center}
.coming-soon{text-align:center;margin:18px auto 0;max-width:520px;padding:12px 16px;border-radius:14px;background:rgba(20,47,80,.06);color:#142f50}
.buy-main{width:100%;font-size:1.15rem;padding:16px 20px;justify-content:center}
.plan .text-link{display:block;text-align:center;margin-top:12px}
.plan .buy-main{background:#edce8d!important;color:#142f50!important;border:0!important;font-weight:800}
.fx-purpose{border:0;margin:0 0 1.5rem;padding:0;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}
.fx-purpose legend{width:100%;text-align:center;font-weight:700;margin-bottom:.6rem}
.fx-purpose label{border:1px solid currentColor;border-radius:999px;padding:.55rem 1.1rem;cursor:pointer;opacity:.8}
.fx-purpose label:has(input:checked){opacity:1;font-weight:700;box-shadow:0 0 0 2px currentColor}
.fx-purpose input{accent-color:currentColor}
.fx-purpose-note{width:100%;text-align:center;margin:.4rem 0 0}
.fx-purpose .text-link{background:none;border:0;font:inherit;text-decoration:underline;cursor:pointer;color:inherit}
.fx-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.fx-plans .plan{display:flex;flex-direction:column;gap:.4rem}
.fx-plans .plan .btn,.fx-plans .plan .fx-wait{margin-top:auto}
.fx-avail,.fx-ship{font-size:.9rem;margin:0}
.fx-soon{font-weight:700;text-decoration:underline dotted}
#editions .edition-comparison{display:block;max-width:1180px;width:100%;margin-inline:auto;grid-template-columns:none}

/* Shared waitlist + status */
.fx-wait-shared{max-width:720px;margin:28px auto 0;padding:22px;border:1px solid var(--line);border-radius:14px;background:#fffcf5;text-align:center;display:block}
.fx-wait-shared strong{display:block;font-size:18px;color:var(--navy);margin-bottom:12px}
.fx-wait-shared>div{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.fx-wait-shared input[type=email],.fx-wait-shared select{flex:1 1 200px;min-height:46px;padding:10px 14px;border:1px solid #cfc6b4;border-radius:8px;background:#fff;font:inherit}
.fx-wait-shared .btn{min-height:46px}
.fx-wait-shared small{display:block;margin-top:10px;color:var(--ink)}
.fx-status{margin:10px 0 0;font-weight:700;color:var(--navy)}
.plan button[disabled]{width:100%}
/* Hero copy + CTA fully visible on all screens */
.cinematic-invitation,.cinematic-invitation *{opacity:1!important;visibility:visible!important}
.cinematic-invitation p{color:#fff4df!important;text-shadow:0 2px 12px #0d1f33}
.cinematic-hero .scene-shade{opacity:1!important}
/* Never leave story art blank while waiting for scroll reveal */
.story-art.reveal{opacity:1!important;transform:none!important;clip-path:none!important}

/* ===== Design system alignment (v4) ===== */
:root{--fx-navy:#142f50;--fx-ink:#1d2b3a;--fx-gold:#e3bc6e;--fx-gold-deep:#9b7c3d;--fx-cream:#fff8ec;--fx-paper:#fffcf5;--fx-line:#eadfc9;--fx-muted:#5c6168;--fx-r:22px;--fx-shadow:0 14px 40px #20364a12}
h2{letter-spacing:-.01em}
.eyebrow{color:var(--fx-gold-deep)!important;letter-spacing:.02em}
.btn.primary{border-radius:999px}
/* Story image: no grey frame, image fills the shape */
.story-art>img{object-fit:cover!important;background:none!important;border-radius:0!important}
.story-art{transform:none!important;border-radius:var(--fx-r) var(--fx-r) 90px var(--fx-r)!important}
/* Editions intro banner: readable text */
.edition-intro{position:relative;overflow:hidden;border-radius:var(--fx-r)!important}
.edition-intro img{object-position:left center}
.edition-intro .finale-light{background:linear-gradient(to left,#0f243ef2 0%,#0f243ed9 42%,#0f243e40 70%,transparent 100%)!important;opacity:1!important}
.edition-intro .finale-copy{max-width:min(520px,52%);margin-inline-start:6%!important;margin-inline-end:auto!important;text-align:start!important;z-index:2}
.edition-intro .finale-copy h2,.edition-intro .finale-copy p,.edition-intro .finale-copy .eyebrow{opacity:1!important;transform:none!important;visibility:visible!important}
.edition-intro .finale-copy h2{color:#fff8ec!important}
.edition-intro .finale-copy p{color:#f1e6cc!important}
.edition-intro .finale-copy .eyebrow{color:var(--fx-gold)!important}
@media(max-width:700px){
  .edition-intro .finale-light{background:linear-gradient(to top,#0f243ef5 0%,#0f243ecc 55%,#0f243e55 100%)!important}
  .edition-intro .finale-copy{max-width:none;margin:0!important}
}
/* Plans: equal cards, aligned prices and buttons */
.fx-plans{align-items:stretch}
.fx-plans .plan{border:1px solid var(--fx-line)!important;background:var(--fx-paper);border-radius:var(--fx-r)!important;padding:28px 24px!important;box-shadow:var(--fx-shadow)}
.fx-plans .plan h3{margin:0 0 4px;font-size:22px}
.fx-plans .plan>p:first-of-type{min-height:1.8em}
.fx-plans .plan .price{margin:14px 0 6px}
.fx-plans .plan ul{flex:0 0 auto!important;margin:8px 0 14px!important;line-height:1.7!important}
.fx-plans .plan li{margin-bottom:8px;padding-inline-start:1.4em;text-indent:-1.4em}
.fx-plans .plan li:before{margin-inline-end:.5em}
.fx-plans .plan .fx-avail,.fx-plans .plan .fx-ship{font-size:14px!important;line-height:1.6;margin:0;padding-top:10px;border-top:1px solid var(--fx-line)}
.fx-plans .plan .fx-avail{margin-top:auto}
.fx-plans .plan .btn{margin-top:16px!important}
.fx-soon{display:inline-block;text-decoration:none!important;background:#f6ead0;color:#7a5a1e;border-radius:999px;padding:2px 10px;font-size:13px}
.fx-plans .plan.featured{background:var(--fx-navy)!important;border-color:var(--fx-navy)!important}
.fx-plans .plan.featured .fx-avail,.fx-plans .plan.featured .fx-ship{border-color:#ffffff22}
.fx-plans .plan:hover{transform:none!important}
/* Calmer header: no jumpy reveal */
.site-header{transition:background .25s,box-shadow .25s!important}
@media(min-width:1000px){.editions .edition-comparison,.editions .edition-intro{max-width:1180px;margin-inline:auto}}
.fx-plans .plan>p:first-of-type{min-height:3.4em}

/* ===== v6: full home redesign pass ===== */
html{scroll-padding-top:96px}
.section h2,.section-top h2,.merged-parents h2,.author h2,.faq h2{color:var(--fx-ink)!important;opacity:1!important;filter:none!important;letter-spacing:-.01em}
.eyebrow{color:var(--fx-gold-deep)!important;font-weight:700;letter-spacing:.04em}
/* Journey: calm 3-chapter cards instead of long sticky scroll */
.cinema-journey{display:block!important;height:auto!important;min-height:0!important;padding:72px 5% 40px!important;background:var(--fx-cream)}
.cinema-journey .cinema-visual{display:none!important}
.cinema-journey .cinema-chapters{display:grid!important;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1180px;margin:auto;height:auto!important}
.cinema-journey .cinema-chapter{min-height:0!important;height:auto!important;padding:0!important;opacity:1!important;transform:none!important;background:var(--fx-paper);border:1px solid var(--fx-line);border-radius:var(--fx-r);overflow:hidden;box-shadow:var(--fx-shadow);display:flex!important;flex-direction:column}
.cinema-journey .chapter-mobile-art{display:block!important;width:100%;aspect-ratio:4/3;object-fit:cover;margin:0!important;border-radius:0!important}
.cinema-journey .chapter-copy{padding:22px 24px 26px!important;opacity:1!important;transform:none!important;position:static!important}
.cinema-journey .chapter-copy h2{font-size:22px!important;line-height:1.35;margin:8px 0!important}
.cinema-journey .chapter-copy p{color:var(--fx-muted);margin:0;font-size:16px}
.cinema-journey .chapter-kicker{color:var(--fx-gold-deep);font-weight:700;font-size:14px}
.cinema-journey .chapter-kicker b{margin-inline-end:8px}
@media(max-width:860px){.cinema-journey .cinema-chapters{grid-template-columns:1fr;gap:18px}.cinema-journey{padding:48px 5% 24px!important}}
.qualities{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;padding:8px 5% 48px;background:var(--fx-cream)}
.qualities span{background:var(--fx-paper);border:1px solid var(--fx-line);border-radius:999px;padding:8px 16px;color:var(--fx-ink);font-size:15px}
/* Story */
.story{gap:48px!important;align-items:center}
.story-art img{border-radius:var(--fx-r)!important;box-shadow:var(--fx-shadow)}
.story-moment strong{display:block;color:var(--fx-navy);font-size:20px;margin:14px 0}
.merged-activity summary{border-radius:999px!important;background:var(--fx-paper)}
/* Inside + parents */
.inside{background:#f4ead9!important;border-radius:var(--fx-r)!important;max-width:1280px;margin:24px auto!important;padding:64px 5%!important}
.preview-card{background:var(--fx-paper);border-radius:var(--fx-r);padding:12px;box-shadow:var(--fx-shadow);transition:transform .2s}
.preview-card:hover{transform:translateY(-3px)}
.preview-card .preview-page img{border-radius:14px}
.preview-card span{padding:12px 6px 4px}
.merged-parents{margin-top:48px;padding-top:40px;border-top:1px solid var(--fx-line)}
.merged-parents .section{padding:0!important}
.parent-grid article{border:1px solid var(--fx-line)!important;border-radius:var(--fx-r)!important;box-shadow:var(--fx-shadow);background:var(--fx-paper)!important}
.parent-grid article span{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--fx-cream);border:1px solid var(--fx-line);color:var(--fx-gold-deep);font-weight:700}
/* Author */
.author{background:transparent!important;border-radius:0!important;padding:24px 5%!important}
.author .author-inner{background:var(--fx-navy);color:#f4ead9;border-radius:var(--fx-r);padding:56px 6%!important;max-width:1180px;margin:auto;box-shadow:var(--fx-shadow)}
.author .author-inner h2,.author .author-inner h3{color:#fff8ec!important}
.author .author-inner p{color:#dfe5ec!important}
.author .signature{color:var(--fx-gold)!important}
.author .author-inner>div+div{border-color:#ffffff26!important}
/* Groups */
.group-purchase{max-width:1180px;margin:32px auto!important;background:var(--fx-cream);border:1px solid var(--fx-line);border-radius:var(--fx-r);padding:48px 5%!important}
.group-card{background:var(--fx-paper);border-radius:var(--fx-r);border:1px solid var(--fx-line)}
/* FAQ */
.faq{max-width:860px!important;margin:auto}
.faq details{background:var(--fx-paper);border:1px solid var(--fx-line)!important;border-radius:16px;margin-bottom:12px;padding:4px 22px}
.faq summary{font-weight:700;color:var(--fx-ink);padding:16px 0}
.faq summary span{color:var(--fx-gold-deep)}
.faq details p{color:var(--fx-muted);margin:0 0 18px}
/* Footer */
footer{background:var(--fx-navy);color:#dfe5ec;max-width:none!important;margin-top:48px!important;padding:40px 5% 110px!important;font-size:14px!important}
footer a{color:var(--fx-gold)!important}
footer .brand{color:#fff8ec!important;font-size:20px;font-weight:700}
.cinema-journey .chapter-mobile-art{height:240px!important;aspect-ratio:auto!important;max-height:none!important}
.cinema-journey .chapter-copy{border:0!important}
html,body{overflow-x:clip}
@media(min-width:700px){.inside .preview-grid{grid-template-columns:repeat(2,minmax(0,420px))!important;justify-content:center;gap:32px!important}}

/* 2026-11: compact reading-first marketing layout */
.fx-sticky{display:none!important}
#editions .edition-intro{height:auto!important;min-height:280px!important;margin-bottom:32px!important;overflow:hidden}
#editions .edition-comparison{position:relative;z-index:1;margin-top:32px!important}
.fx-plans .plan{position:relative;transform:none!important}
.fx-plans .plan h3{min-height:2.7em}
.fx-plans .plan .btn{min-height:48px}
.fx-purpose label{opacity:1;background:var(--fx-paper);color:var(--fx-navy);display:flex;align-items:center;gap:8px;min-height:48px}
.fx-purpose label:has(input:checked){background:var(--fx-navy);color:#fff;border-color:var(--fx-navy)}
.fx-purpose input{accent-color:#b58635}
.group-dialog input,.group-dialog select,.group-dialog textarea{min-height:48px;width:100%;font-size:16px;padding:12px}
.group-dialog label{display:grid;gap:6px;margin-bottom:16px}
.group-dialog .fx-status{padding:12px;border-radius:8px;background:var(--fx-cream)}
.author-personal{max-width:48ch;font-size:20px!important;line-height:1.8}
.author .signature{font-size:24px!important;margin-top:24px}
footer{padding-bottom:40px!important;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.footer-links{display:flex;gap:12px 24px;flex-wrap:wrap}
.footer-links a{min-height:44px;display:inline-flex;align-items:center}
.faq{scroll-margin-top:90px}
.parent-dots{display:none}
@media(max-width:700px){
 .site-header{gap:12px;padding:12px 5%}
 .site-header .mini-cta{display:none!important}
 .site-header .brand{font-size:15px}
 .header-actions{gap:0}
 .cinematic-hero{height:auto!important;min-height:680px!important;max-height:none!important;display:flex!important;flex-direction:column;justify-content:space-between;padding:28px 5% 32px!important}
 .poster-title{position:relative!important;inset:auto!important;transform:none!important;width:100%!important;z-index:3}
 .poster-title h1,.poster-title h1 span{color:#fff8ec!important;text-shadow:0 2px 8px #091827!important}
 .poster-title .eyebrow{color:#f3d18d!important}
 .cinematic-hero .scene-shade{background:linear-gradient(180deg,#0d1f33bf,transparent 42%,#0d1f33f5 78%)!important}
 .cinematic-invitation{position:relative!important;inset:auto!important;transform:none!important;width:100%!important;max-width:40ch!important;margin:240px auto 0!important;padding:16px!important;background:#10283ee8;border-radius:12px}
 .cinematic-invitation p{font-size:17px!important;line-height:1.7!important}
 .cinema-journey,.cinema-chapters,.cinema-chapter{height:auto!important;min-height:0!important}
 .cinema-journey{padding:28px 5%!important}
 .cinema-journey .chapter-mobile-art{height:190px!important}
 .cinema-journey .chapter-copy{padding:18px!important}
 .inside{width:100%;margin:16px auto!important;border-radius:0!important;padding:32px 4%!important}
 .inside .preview-grid{display:grid!important;grid-template-columns:1fr!important;gap:20px!important}
 .preview-card{width:100%;max-width:92vw;margin:auto}
 .preview-page{height:auto!important;aspect-ratio:1!important}
 .sample-dialog{width:96vw!important;max-width:96vw!important;padding:12px!important}
 .cinema-open-book,.sample-sheet{width:100%!important;max-width:100%!important}
 .sample-sheet img{width:100%!important;height:auto!important;max-height:none!important}
 .parent-grid{display:flex!important;gap:14px!important;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 0 12px;overscroll-behavior-x:contain}
 .parent-grid article{flex:0 0 88%;scroll-snap-align:start;padding:20px!important}
 .parent-dots{display:flex;justify-content:center;gap:8px;margin:12px auto}
 .parent-dots button{width:32px;height:32px;border:0;background:none;padding:10px;cursor:pointer}
 .parent-dots button::after{content:'';display:block;width:10px;height:10px;border-radius:50%;background:#a99c85}
 .parent-dots button[aria-current=true]::after{background:var(--fx-navy)}
 .author .author-inner{padding:28px 7%!important;gap:24px}
 .fx-purpose{gap:8px}
 .fx-purpose label{padding:10px 14px;font-size:15px}
 #editions .edition-intro{min-height:240px!important}
 .fx-plans{grid-template-columns:1fr!important}
 .fx-plans .plan h3{min-height:0}
 footer{align-items:flex-start;flex-direction:column;gap:12px}
}
@media(prefers-reduced-motion:reduce){.parent-grid{scroll-behavior:auto}}
