/* SOUL SHIFT FOUNDATION | v5 m1 "Soft Scarf". Plain HTML, phone first. Beige ground, brand dark magenta, a touch of pink. */
/* 01. Tokens, reset and accessible base typography */
:root {
  --ground:#F8F6F1; --alt:#F1ECE4; --oat:#E7DDCF; --hair:rgba(46,34,40,.12);
  --ink:#2E2228; --muted:#6E6168;
  --plum:#5B173D; --crimson:#B85F72; --pink:#E6BDB8; --pink-soft:#EEDDE0;
  /* legacy names kept so inner pages pick up the new palette */
  --petal:var(--ground); --blush:var(--alt); --peach:var(--oat); --plum-2:var(--crimson); --mauve:var(--crimson); --rose:var(--pink);
  --champagne:rgba(46,34,40,.16);
  --font-display:'Open Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-accent:'EB Garamond',Georgia,serif;
  --font-label:'Open Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-body:'EB Garamond',Georgia,'Times New Roman',serif;
  --text-h1:clamp(2.38rem,4.08vw,3.91rem); --text-h2:clamp(1.87rem,3.145vw,2.975rem);
  --text-h3:clamp(1.275rem,1.785vw,1.6575rem);
  --glass:linear-gradient(135deg,rgba(255,255,255,.62),rgba(255,255,255,.3));
  --shadow:0 22px 54px -26px rgba(46,34,40,.28),inset 0 1px 0 rgba(255,255,255,.8);
  --ease:cubic-bezier(.2,.7,.2,1); --radius:20px; --gutter:clamp(20px,4vw,48px);
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:calc(110px + var(--switcher-h,0px))}
body{margin:0;background:var(--ground);color:var(--ink);font:400 18px/1.65 var(--font-body);overflow-wrap:break-word;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}img{height:auto}
button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}a{color:var(--plum);text-underline-offset:6px}a:hover{color:var(--crimson)}
h1,h2,h3,h4,p,figure,blockquote{margin:0}p+p{margin-top:1em}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;color:var(--ink);line-height:1.15;letter-spacing:-.01em;text-wrap:balance}
h1{font-size:var(--text-h1);line-height:1.08}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}h4{font-size:1.4rem}
em{font-family:var(--font-accent);font-style:italic;font-weight:400;color:var(--plum);font-size:1.07em}
small,.small{font-size:14px;line-height:1.6}.muted{color:var(--muted)}
:focus-visible{outline:2px solid var(--plum);outline-offset:4px}
::selection{background:var(--pink);color:var(--ink)}[hidden]{display:none!important}
.skip-link{position:fixed;top:12px;left:20px;z-index:1000;padding:12px 20px;background:var(--ground);border:1px solid var(--plum);border-radius:40px;transform:translateY(-160%)}.skip-link:focus{transform:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
/* 02. Layout. Use section + wrap; all grid children can shrink at 390px. */
.wrap{width:100%;max-width:1240px;margin-inline:auto;padding-inline:var(--gutter);position:relative}
.section{position:relative;padding-block:clamp(64px,8vw,112px);isolation:isolate}
.section--soft{background:var(--alt)}
.grid-2,.grid-3,.split{display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}
.grid-3{grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr))}.split{align-items:center;gap:clamp(40px,7vw,96px)}
.grid-2>*,.grid-3>*,.split>*{min-width:0}.stack>*+*{margin-top:24px}.center{text-align:center}.narrow{max-width:760px;margin-inline:auto}
.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:28px}
/* 03. Top bar, header and mobile menu. Solid ground, hairline border, like a WordPress theme. No JS leaves navigation available. */






.site-header{position:sticky;top:var(--switcher-h,0px);z-index:100;background:var(--ground);border-bottom:1px solid var(--hair);transition:box-shadow .4s var(--ease)}
.site-header.is-scrolled{box-shadow:0 14px 30px -28px rgba(46,34,40,.55)}
.header-bar{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;padding:8px var(--gutter);min-height:72px}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font:400 24px/1.2 var(--font-display);letter-spacing:.01em;white-space:nowrap;min-height:44px;flex-shrink:0}.brand:hover{color:var(--plum)}.brand img{width:21px;height:36px;object-fit:contain}
@media(max-width:560px){.site-header .header-bar{column-gap:8px}.site-header .brand{font-size:clamp(1.05rem,3.8vw,1.35rem);gap:6px;white-space:nowrap}.site-header .brand img{flex-shrink:0}.site-header .menu-toggle{padding-inline:8px;font-size:12px;gap:5px;flex-shrink:0;white-space:nowrap}}
.nav-links{display:flex;gap:2px;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0}.nav-links a{display:flex;align-items:center;min-height:44px;padding:8px 9px;text-decoration:none;color:var(--ink);font:400 14px/1.5 var(--font-label);letter-spacing:normal;text-transform:none;position:relative}.nav-links a:not(.btn-quiet)::after{content:"";position:absolute;bottom:7px;left:9px;right:9px;height:1px;background:var(--crimson);transform:scaleX(0);transform-origin:left;transition:transform .4s}.nav-links a:hover::after,.nav-links a[aria-current]::after{transform:scaleX(1)}.nav-links a:not(.btn-quiet):hover{color:var(--plum)}
.btn-quiet{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:10px 20px;border:1px solid var(--plum);border-radius:999px;background:transparent;color:var(--plum);text-decoration:none;font:600 14px/1.4 var(--font-label);letter-spacing:.04em;text-transform:none;transition:background-color .35s,color .35s,border-color .35s}.btn-quiet:hover{background:var(--plum);color:#fff;border-color:var(--plum)}.nav-links .btn-quiet{margin-left:8px}
.menu-toggle{display:none;background:transparent;color:var(--plum);border:1px solid var(--hair);border-radius:999px;min-height:44px;padding:8px 14px;font-size:14px;font-weight:600;align-items:center;gap:8px}.menu-icon{width:16px;height:10px;border-block:1px solid currentColor}
.js .menu-toggle{display:inline-flex}.site-nav{width:100%}.js .site-nav{display:none}.js .site-nav.is-open{display:block;padding:8px 0 20px;border-top:1px solid var(--hair)}.js .site-nav.is-open .nav-links{display:grid;gap:2px}.js .site-nav.is-open a{font-size:14px;min-height:48px}.js .site-nav.is-open a:not(.btn-quiet){font:400 clamp(26px,4.5vh,38px)/1.3 var(--font-display);letter-spacing:.01em}.js .site-nav.is-open .btn-quiet{margin:12px 0 0;justify-content:center}
body.menu-open{overflow:hidden}.site-header.menu-is-open .header-bar{max-height:calc(100dvh - var(--switcher-h,0px) - 76px);overflow-y:auto}
/* 04. Buttons and arrow links. Magnetic offsets belong only to primary buttons. */
.btn-primary,.btn-glass,.store-pill{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:52px;max-width:100%;padding:15px 28px;border:1px solid transparent;border-radius:999px;text-decoration:none;font:600 14px/1.4 var(--font-label);letter-spacing:.04em;transition:transform .4s var(--ease),box-shadow .4s,border-color .4s,background-color .4s,color .4s}
.btn-primary{color:#fff;background:var(--plum);transform:translate(var(--mag-x,0px),var(--mag-y,0px))}.btn-primary:hover{color:#fff;background:var(--crimson);box-shadow:0 10px 26px -10px rgba(91,23,61,.45)}
.btn-glass,.store-pill{color:var(--plum);background:rgba(255,255,255,.62);border-color:rgba(91,23,61,.28);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.btn-glass:hover,.store-pill:hover{color:var(--plum);transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--crimson)}
.text-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;text-decoration:none;border-bottom:1px solid var(--pink);font-size:15.5px;font-weight:600;transition:border-color .3s,color .3s}.text-link:hover{border-color:var(--crimson)}.arrow{display:inline-block;transition:transform .4s var(--ease);font-family:var(--font-label)}a:hover>.arrow,button:hover>.arrow{transform:none}
/* 05. Glass, readable glass variant and hover sheen. Never place bare glass text over a dark image. */
.glass{position:relative;isolation:isolate;overflow:hidden;background:var(--glass);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border:1px solid rgba(255,255,255,.7);border-radius:var(--radius);box-shadow:var(--shadow)}
.glass::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.34) 48%,transparent 72%);transform:translateX(-120%);transition:transform .9s var(--ease)}.glass:hover::after{transform:translateX(120%)}
.glass--readable{background:linear-gradient(135deg,rgba(248,246,241,.96),rgba(241,236,228,.93));border-color:var(--hair)}.glass-card{padding:clamp(24px,3vw,40px);transition:transform .45s var(--ease),box-shadow .45s}.glass-card:hover{transform:translateY(-4px);box-shadow:0 28px 60px -26px rgba(46,34,40,.32)}
.gold-rim{outline:0}
/* 06. Portrait frame. A clean rectangle with soft corners: no arch, no ring, no filter. */
.photo-frame{overflow:hidden;border-radius:20px;background:var(--oat);box-shadow:0 30px 70px -34px rgba(46,34,40,.42)}
.photo-frame>img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:40% 0}
.arch-frame{overflow:hidden;border-radius:20px;background:var(--oat);box-shadow:0 30px 70px -34px rgba(46,34,40,.42)}
.arch-frame>img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top}
/* 07. Eyebrows, heading groups, italic accents and chips. */
.eyebrow{font:600 11.5px/1.7 var(--font-label);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}.eyebrow--line{display:flex;align-items:center;gap:15px}.eyebrow--line::before{content:"";width:35px;height:1px;background:var(--pink);flex-shrink:0}
.section-heading{max-width:720px;margin-bottom:40px}.section-heading.center{margin-inline:auto}.section-heading>p:not(.eyebrow){margin-top:22px}.lead{font-size:clamp(18px,1.5vw,20px);line-height:1.65}.accent{font:italic 400 clamp(24px,2.4vw,32px)/1.3 var(--font-accent);color:var(--plum)}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:24px 0 0}.chip{display:inline-flex;align-items:center;gap:10px;max-width:100%;padding:8px 14px;border:1px solid var(--pink);border-radius:999px;background:rgba(255,255,255,.7);color:var(--plum);font-size:13px;font-weight:500;line-height:1.5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.chip-number{font:400 17px var(--font-display);color:var(--crimson)}
/* 08. Home hero: fabric across the full canvas, copy left, transparent portrait above it. */
.home-hero{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;min-height:560px;background:var(--oat)}
.home-hero .lg-fabric{position:absolute;inset:0;z-index:0;overflow:hidden;background:var(--oat)}
.lg-fabric__img{display:block;width:100%;height:100%;object-fit:cover}
.home-hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(248,246,241,.92) 0%,rgba(248,246,241,.8) 46%,rgba(248,246,241,.25) 72%,rgba(248,246,241,0) 100%)}
.hero-copy{position:relative;z-index:3;padding:44px var(--gutter) 24px}
.hero-title{font-size:clamp(2.465rem,10.625vw,3.57rem);max-width:660px}
.hero-title em{display:block;font-size:1.04em;line-height:1.05}
.hero-intro{max-width:520px;margin-top:24px;font-size:clamp(18px,1.5vw,20px);line-height:1.65}
.hero-tagline{margin-top:20px}
.hero-copy .actions{gap:14px 28px;margin-top:30px}
.hero-credentials{max-width:520px;margin:30px 0 0;font-size:12.5px;line-height:1.8;color:var(--muted)}
.hero-photo{position:relative;z-index:2;width:70vw;max-width:520px;margin:0 4% 0 auto;align-self:flex-end;background:none;overflow:visible;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none}
.hero-photo img{position:static;display:block;width:100%;height:auto;max-width:none;object-fit:contain;object-position:right bottom;border:0;border-radius:0;box-shadow:none;filter:none}
@media(min-width:760px){
  .home-hero{display:grid;grid-template-columns:minmax(0,55fr) minmax(0,45fr);align-items:end;min-height:640px}
  .home-hero::before{background:linear-gradient(90deg,rgba(248,246,241,.94) 0%,rgba(248,246,241,.86) 30%,rgba(248,246,241,.42) 54%,rgba(248,246,241,0) 78%)}
  .hero-copy{grid-column:1;grid-row:1;align-self:center;padding:56px 24px 84px var(--gutter)}
  .hero-title{font-size:clamp(2.465rem,3.995vw,3.825rem)}
  .hero-photo{grid-column:2;grid-row:1;width:100%;max-width:none;margin:0 0 0 auto;padding-right:var(--gutter)}
}
@media(min-width:1000px){
  .home-hero{--hero-height:clamp(640px,min(82vh,66vw),880px);display:block;min-height:var(--hero-height)}
  .hero-copy{display:flex;flex-direction:column;justify-content:center;width:55%;min-height:var(--hero-height);padding:56px clamp(24px,4vw,64px) 84px max(var(--gutter),calc((100vw - 1240px) / 2 + var(--gutter)))}
  .hero-title{font-size:clamp(2.72rem,3.995vw,3.825rem)}
  .hero-photo{position:absolute;right:max(var(--gutter),calc((100vw - 1240px) / 2 + var(--gutter)));bottom:0;width:auto;height:94%;margin:0;padding:0}
  .hero-photo img{width:auto;height:100%}
}
/* 09. Inner-page hero: image is mandatory; title always has a readable glass panel. */
.page-hero{position:relative;isolation:isolate;overflow:hidden;min-height:520px;display:grid;align-items:center;padding:74px 0 92px;background:var(--oat)}.page-hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.page-hero::before{content:"";position:absolute;inset:0;background:rgba(248,246,241,.42);z-index:-1}.page-hero__panel{max-width:750px;padding:clamp(28px,5vw,60px)}.page-hero__panel h1{font-size:var(--text-h1)}.page-hero__panel .lead{margin-top:24px}
/* 10. Highlight reel: wide cinema block with a frosted caption bar underneath. */
.reel-section{padding-block:clamp(56px,7vw,96px) clamp(40px,5vw,64px);background:var(--ground)}
.reel-label{text-align:center;margin-bottom:22px}
.reel{max-width:1040px;margin-inline:auto}
.reel-frame{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:var(--ink);box-shadow:0 34px 70px -38px rgba(46,34,40,.55)}
.reel-frame video{display:block;width:100%;height:100%;object-fit:cover;background:var(--ink)}
.reel-toggle{position:absolute;left:clamp(14px,2vw,24px);bottom:clamp(14px,2vw,24px);z-index:2;display:inline-flex;align-items:center;gap:12px;min-height:56px;padding:10px 26px 10px 12px;border:1px solid rgba(255,255,255,.8);border-radius:999px;background:rgba(248,246,241,.88);color:var(--plum);font:700 13px/1 var(--font-label);letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 16px 40px -18px rgba(46,34,40,.6);transition:background-color .3s,opacity .3s,min-height .4s var(--ease),padding .4s var(--ease)}
.reel-toggle:hover{background:#fff}
.reel-toggle .ico{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--plum);color:#fff;transition:width .4s var(--ease),height .4s var(--ease)}.reel-toggle .ico svg{width:15px;height:15px;fill:currentColor}.reel-toggle .i-pause{display:none}
.reel.is-playing .reel-toggle{min-height:44px;padding:6px 18px 6px 8px;font-size:12px;opacity:.88}.reel.is-playing .reel-toggle:hover,.reel.is-playing .reel-toggle:focus-visible{opacity:1}
.reel.is-playing .reel-toggle .ico{width:30px;height:30px}.reel.is-playing .i-play{display:none}.reel.is-playing .i-pause{display:block}
.reel-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 28px;margin-top:12px;padding:12px 24px;border-radius:16px;background:rgba(255,255,255,.58);border-color:rgba(255,255,255,.8);box-shadow:0 14px 38px -26px rgba(46,34,40,.35),inset 0 1px 0 rgba(255,255,255,.9)}
.reel-caption{font-size:15px;color:var(--ink);letter-spacing:.02em}
/* 11. Press marquee, static without JS; pause on hover or keyboard focus. */
.press-section{padding-block:48px 54px;background:var(--ground);border-block:1px solid var(--hair)}.press-section .eyebrow{text-align:center;margin-bottom:32px;font-size:14px;color:var(--ink)}.press-band{position:relative}.marquee{overflow:hidden;mask-image:none}.marquee-track{display:flex;width:100%}.logo-set{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;flex-shrink:0;width:100%;list-style:none;margin:0;padding:0}.logo-set[aria-hidden]{display:none}.logo-slot{width:182px;height:110px;display:grid;place-items:center;padding:22.4px}.logo-slot img{width:100%;max-height:47.6px;object-fit:contain;filter:none;opacity:1}
.js .marquee-track{width:max-content;animation:marquee 48s linear infinite}.js .logo-set{width:auto;flex-wrap:nowrap}.js .logo-set[aria-hidden]{display:flex}.js .logo-slot{width:221.2px}.press-band:hover .marquee-track,.press-band:focus-within .marquee-track{animation-play-state:paused}
.quote-card{padding:30px}.quote-card blockquote{font:italic 400 clamp(23px,2.3vw,31px)/1.3 var(--font-accent);color:var(--plum)}.quote-card figcaption{margin-top:20px;color:var(--muted);font-size:11.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;display:flex;align-items:center;gap:12px}.quote-card figcaption::before{content:"";width:24px;height:1px;background:var(--pink)}.quote-mark{display:block;font:400 66px/.7 var(--font-display);color:var(--crimson);margin-bottom:10px}
/* 12. Story portrait with floating quotation and a thin pink timeline. */
.story-visual{position:relative;padding:0 16px 0 0;max-width:500px;margin-inline:auto}.story-visual .photo-frame>img{aspect-ratio:1/1;object-position:48% 0}
.story-quote{width:92%;margin:-55px -16px 0 auto;z-index:2;position:relative}.story-quote blockquote{font-size:clamp(23px,2.4vw,29px)}
.timeline{position:relative;list-style:none;margin:30px 0;padding:0 0 0 26px;display:grid;gap:16px}.timeline::before{content:"";position:absolute;left:4px;top:28px;bottom:28px;width:1px;background:var(--pink)}.timeline>li{position:relative}.timeline>li::before{content:"";position:absolute;left:-26px;top:29px;width:9px;height:9px;background:var(--pink);border:2px solid var(--ground);border-radius:50%}.story-panel{padding:23px;border-radius:16px}.story-panel h3{font-size:22.1px;margin-bottom:12px}.story-panel p{font-size:18px;line-height:1.65}
/* 13. Soul Shift band. Vague, coming soon; no programme promises or steps. */
.soul-band{overflow:hidden;background:var(--oat);text-align:center}.soul-panel{max-width:630px;margin:auto;padding:48px 24px;border-radius:20px;background:linear-gradient(135deg,rgba(248,246,241,.9),rgba(248,246,241,.72))}.soul-mark{height:104px;width:auto;margin:0 auto 22px}.soul-wordmark{width:min(360px,90%);margin:0 auto 24px}.soul-panel h2{font-size:clamp(2.04rem,3.57vw,3.06rem)}.soul-panel .chip{margin-top:22px}.soul-panel .actions{justify-content:center}
/* 14. Choicefulness teaser and reusable accessible stepper. */
.choice-section{background:var(--ground)}.choice-section .section-heading{margin-bottom:25px}.choice-chips{justify-content:center;gap:12px;margin-top:32px}.choice-chips .chip{padding:13px 20px;font-size:16px;background:var(--pink-soft);border-color:var(--pink);box-shadow:none}.choice-section .text-link{margin-top:32px}
.step-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-block:28px}.step-tabs button{min-height:48px;max-width:100%;padding:12px 20px;border:1px solid var(--hair);border-radius:999px;background:var(--ground);color:var(--plum);font-size:16px}.step-tabs button[aria-selected=true]{background:var(--plum);color:#fff}.step-progress{height:3px;background:var(--oat);margin-bottom:28px;overflow:hidden}.step-progress-fill{display:block;width:100%;height:100%;background:var(--plum);transform:scaleX(var(--progress,.2));transform-origin:left;transition:transform .6s var(--ease)}.step-panel{padding:32px}.step-panel h3{margin-bottom:16px}
/* 15. Book stage, perspective and retailer pills. */
.book-section{overflow:hidden}.book-stage{position:relative;min-height:440px;display:grid;place-items:center;padding:38px 24px 70px;background:radial-gradient(85% 70% at 50% 30%,#F8F6F1 0%,#EFE7DB 55%,#E7DDCF 100%);border-radius:20px;border:1px solid var(--hair);perspective:1100px;isolation:isolate}.book-stage::before{content:"";position:absolute;width:65%;height:30px;bottom:48px;background:rgba(46,34,40,.2);filter:blur(18px);border-radius:50%;z-index:-1}.book-tilt{width:90%;max-width:360px;transform-style:preserve-3d;transform:perspective(1100px) rotateX(var(--tilt-x,2deg)) rotateY(var(--tilt-y,-7deg));transition:transform .5s var(--ease)}.book-image{width:100%;height:auto;filter:drop-shadow(12px 24px 18px rgba(46,34,40,.2));border-radius:5px}.book-image[src$="book-cutout.webp"]{margin-left:-13.5%;width:100%}.book-subtitle{margin-top:18px;max-width:440px}.fine-rule{width:64px;height:1px;background:var(--pink);margin:28px 0}.book-info{display:flex;flex-wrap:wrap;gap:4px 15px;margin:26px 0;padding:17px 20px;font-size:15px}.countdown{display:inline-flex;align-items:center;gap:8px;margin-bottom:24px;font-size:14px;font-weight:600;color:var(--plum)}.countdown::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--crimson)}.stores{display:flex;flex-wrap:wrap;gap:10px}.store-pill{padding:12px 18px;font-size:14px;min-height:48px}.book-copy>.text-link{margin-top:24px}
/* 16. Topic cards (text only), explore, service and blog tiles. */
.topic-card{position:relative;display:flex;flex-direction:column;gap:14px;padding:clamp(30px,3.4vw,46px) clamp(26px,3vw,40px) clamp(28px,3vw,38px);border-radius:20px;overflow:hidden;text-decoration:none;color:var(--ink);background:rgba(255,255,255,.62);border:1px solid var(--hair);box-shadow:var(--shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.topic-card::before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:var(--pink)}
.topic-card:hover{color:var(--ink);transform:translateY(-4px);box-shadow:0 30px 60px -28px rgba(46,34,40,.34)}
.topic-card h3{font-size:clamp(1.445rem,2.21vw,1.8275rem)}.topic-card p{font-size:18px;line-height:1.65}.topic-card .text-link{align-self:flex-start;margin-top:auto;color:var(--plum)}.topic-card:hover .text-link{border-color:var(--crimson)}
.grid-2>.reveal{display:flex}.grid-2>.reveal>.topic-card{flex:1}
.explore-card{display:flex;flex-direction:column;justify-content:flex-end;position:relative;isolation:isolate;min-height:450px;border-radius:20px;overflow:hidden;text-decoration:none;color:var(--ink);padding:18px;background:var(--oat);box-shadow:var(--shadow)}.explore-card>img{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.explore-card:hover>img{transform:scale(1.04)}.explore-card__panel{padding:25px;border-radius:16px}.explore-card p{margin-top:14px;font-size:16.5px}.explore-card .text-link{margin-top:18px}.explore-card h3{font-size:clamp(1.445rem,2.21vw,1.8275rem)}
.service-tile{padding:32px;display:flex;flex-direction:column;gap:20px}.service-tile .text-link{align-self:flex-start;margin-top:auto}.service-number{font:400 40px var(--font-display);color:var(--plum)}
.blog-card{overflow:hidden;border-radius:20px;background:var(--ground);border:1px solid var(--hair);box-shadow:var(--shadow)}.blog-card__image{display:block;overflow:hidden}.blog-card__image img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .8s var(--ease)}.blog-card:hover img{transform:scale(1.04)}.blog-card__body{padding:26px}.blog-card__body h3{font-size:clamp(1.445rem,2.21vw,1.8275rem)}.blog-card__body .text-link{margin-top:20px}.blog-card__body .eyebrow{margin-bottom:13px}
/* 17. Nature row: tall cards just before the sign-up band. Label sits on a soft ink gradient. */
.nature-section{padding-block:clamp(48px,6vw,88px);background:var(--ground)}
.nature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;list-style:none;margin:0;padding:0}
.nature-card{position:relative;display:block;aspect-ratio:2/3;border-radius:16px;overflow:hidden;color:#fff;text-decoration:none;background:var(--oat);box-shadow:0 26px 54px -34px rgba(46,34,40,.5)}
.nature-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.nature-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(46,34,40,0) 55%,rgba(46,34,40,.62) 100%);pointer-events:none}
.nature-card__label{position:absolute;left:clamp(14px,1.8vw,22px);bottom:clamp(14px,1.8vw,22px);right:12px;z-index:2;font:600 11.5px/1.2 var(--font-label);letter-spacing:.2em;text-transform:uppercase;color:#fff;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:7px;text-decoration-thickness:1px;transition:text-decoration-color .5s var(--ease)}
.nature-card:hover{color:#fff}.nature-card:hover>img,.nature-card:focus-visible>img{transform:scale(1.04)}.nature-card:hover .nature-card__label,.nature-card:focus-visible .nature-card__label{text-decoration-color:#fff}
.nature-card:focus-visible{outline-offset:3px}
/* 18. Forms. JS reveals thanks; there is no server or mailing-list integration. */
.form-fields{border:0;margin:0;padding:0;min-width:0}.form-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}.field{display:grid;gap:8px;min-width:0}.field label,label.field-label{font-size:14px;font-weight:600;color:var(--ink)}input:not([type=checkbox]):not([type=radio]),select,textarea{display:block;width:100%;min-width:0;min-height:54px;padding:13px 18px;color:var(--ink);background:rgba(255,255,255,.85);border:1px solid var(--muted);border-radius:14px;box-shadow:inset 0 1px 0 #fff;transition:box-shadow .35s,border-color .35s;font-size:16.5px}textarea{resize:vertical;min-height:150px}input::placeholder,textarea::placeholder{color:var(--muted)}input:focus,select:focus,textarea:focus{border-color:var(--plum);box-shadow:0 0 0 4px rgba(230,189,184,.55)}.form-row{display:flex;flex-direction:column;gap:12px;align-items:stretch}.form-row .field{flex:1}.form-row .btn-primary{align-self:flex-start}.form-note{font-size:12px;margin-top:12px;color:var(--muted)}.form-thanks{padding:28px;border:1px solid var(--hair);border-radius:16px;background:var(--ground);color:var(--ink)}.form-thanks h3{font-size:25.5px;margin-bottom:10px}
/* 19. Sign-up band: beige ground, her photo beside a readable glass panel. */
.signup-band{overflow:hidden;background:var(--alt)}.signup-panel{padding:clamp(26px,5vw,56px);display:grid;gap:30px;align-items:center}.signup-panel h2{font-size:clamp(2.04rem,3.4vw,3.06rem)}.signup-panel p:not(.eyebrow):not(.form-note){margin-top:18px}
.signup-split{display:grid;gap:36px;align-items:center}.signup-split>*{min-width:0}.signup-photo{max-width:340px;width:100%;margin-inline:auto}.signup-photo .photo-frame>img{aspect-ratio:1/1;object-position:20% 0}
.signup-band--dusk{background:var(--plum);color:#fff}.signup-band--dusk .signup-panel{background:rgba(255,255,255,.08)}.signup-band--dusk h2,.signup-band--dusk .eyebrow,.signup-band--dusk label,.signup-band--dusk .form-note{color:#fff}.signup-band--dusk :focus-visible{outline-color:var(--pink)}
/* 20. Article body, source notes, lists and in-flow quotations. */
.article-body{max-width:760px;margin-inline:auto;font-size:18px;line-height:1.65}.article-body h2{font-size:clamp(1.7rem,3.06vw,2.465rem);margin:1.6em 0 .6em}.article-body h3{font-size:1.615rem;margin:1.5em 0 .6em}.article-body p+p{margin-top:1.15em}.article-body ul,.article-body ol{padding-left:1.3em}.article-body li+li{margin-top:.7em}.article-body blockquote{font:italic 400 30px/1.35 var(--font-accent);color:var(--plum);border-left:1px solid var(--pink);padding:14px 0 14px 28px;margin:40px 0}.article-body figure{margin:40px 0}.article-body figcaption{font-size:14px;color:var(--muted);margin-top:12px}.article-body img{border-radius:20px;width:100%}.article-meta{font-size:14px;color:var(--muted);margin-top:20px}
/* 21. Footer: WordPress widget footer. Four columns on solid brand magenta, then a thin copyright bar. */
.site-footer{background:var(--plum);color:#fff}
.footer-main{padding:clamp(52px,6vw,84px) 0 clamp(40px,5vw,60px)}
.footer-grid{display:grid;gap:40px 48px;grid-template-columns:minmax(0,1fr)}.footer-grid>*{min-width:0}
.site-footer h2,.site-footer a,.site-footer .accent,.site-footer .eyebrow,.site-footer label,.site-footer .form-note{color:#fff}
.site-footer .eyebrow{font-size:11.5px;letter-spacing:.2em;margin-bottom:16px;opacity:.85}
.site-footer .brand{font-size:24px;margin-bottom:14px;white-space:normal}.site-footer .brand img{filter:brightness(0) invert(1);opacity:.92}
.footer-blurb{max-width:300px;font-size:15px;line-height:1.65;color:rgba(255,255,255,.86)}
.footer-about .accent{font-size:26px;margin-top:18px;color:#fff}
.footer-socials{display:flex;gap:20px;list-style:none;margin:18px 0 0;padding:0}.footer-socials a{font-size:14px;text-decoration:none;display:inline-flex;align-items:center;min-height:36px}.footer-socials a:hover{text-decoration:underline;text-decoration-color:var(--pink)}
.footer-nav ul{list-style:none;margin:0;padding:0}.footer-nav a{display:inline-flex;align-items:center;min-height:36px;font-size:15px;line-height:1.4;text-decoration:none}.footer-nav a:hover{text-decoration:underline;text-decoration-color:var(--pink);text-underline-offset:5px}.footer-nav a[aria-current]{text-decoration:underline;text-decoration-color:var(--pink);text-underline-offset:5px}
.footer-news p:not(.form-note){font-size:15px;line-height:1.65;color:rgba(255,255,255,.86);margin-bottom:16px}
.site-footer .form-row{flex-direction:column;align-items:stretch}.site-footer .form-row .btn-primary{align-self:flex-start;background:#fff;color:var(--plum);padding-inline:22px}.site-footer .form-row .btn-primary:hover{background:var(--pink);color:var(--plum)}.site-footer .form-row input{border-radius:999px;border-color:transparent}
.site-footer .form-thanks h3{color:var(--plum)}.site-footer .form-thanks p{color:var(--ink)}.site-footer :focus-visible{outline-color:var(--pink)}
.footer-bar{border-top:1px solid rgba(255,255,255,.2)}.footer-bar__inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 24px;padding-block:16px;font-size:13px}.footer-bar p{margin:0;color:rgba(255,255,255,.86)}.footer-bar a{text-decoration:none;display:inline-flex;align-items:center;min-height:32px}.footer-bar a:hover{text-decoration:underline;text-decoration-color:var(--pink)}
/* 22. Decorative layers: bokeh, silk waves and rings are retired in v4; the markup may remain on inner pages and stays hidden. */
.atmosphere,.bokeh,.silk-wave{display:none!important}.watermark{position:absolute;opacity:.07;pointer-events:none;height:auto}.wordmark{max-width:350px}.s-mark{height:90px;width:auto}
[data-parallax]{transform:translate3d(var(--parallax-x,0px),var(--parallax-y,0px),0);transition:transform .8s var(--ease)}
/* 23. Reveal states. Everything is fully visible without JS. Gentle fade up, once. */
.reveal,[data-reveal]{opacity:1;transform:none;transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--reveal-delay,0ms)}.reveal.is-pending,[data-reveal].is-pending{opacity:0;transform:translateY(12px)}.hero-enter{animation:rise 1s var(--ease) both;animation-delay:var(--hero-delay,0ms)}
@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes marquee{to{transform:translateX(-50%)}}
/* 24. Responsive expansion. Mobile is the default, no fixed content widths. */
@media(min-width:600px){.form-row{flex-direction:row;align-items:flex-end}.form-row .btn-primary{align-self:auto}.book-stage{min-height:540px}.signup-panel{gap:40px}.nature-grid{gap:18px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:900px){.split{grid-template-columns:1fr 1fr}.story-section .split{grid-template-columns:.95fr 1.05fr}.signup-panel{grid-template-columns:1fr 1.1fr}.signup-split{grid-template-columns:.8fr 1.2fr;gap:clamp(40px,6vw,80px)}.signup-split .signup-panel{grid-template-columns:1fr}.signup-photo{margin-inline:0}.book-stage{min-height:590px}.book-tilt{width:96%;max-width:400px}.footer-grid{grid-template-columns:1.15fr .8fr 1.1fr 1.3fr;gap:40px 56px}.nature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}}
@media(min-width:1280px){.js .menu-toggle{display:none}.site-nav,.js .site-nav{display:block;width:auto}.nav-links{flex-wrap:nowrap;gap:2px}.site-header.menu-is-open .header-bar{overflow:visible}.header-bar{flex-wrap:nowrap}}
@media(max-width:599px){.soul-panel{padding-top:48px}.story-visual{padding-right:12px}.story-quote{padding:24px}.site-header .brand{letter-spacing:.01em}.header-bar{padding:6px var(--gutter)}.choice-chips{justify-content:flex-start}.choice-chips .chip{padding:12px 15px}.book-stage{min-height:390px;padding-bottom:50px}.section-heading{margin-bottom:30px}.reel-toggle{min-height:50px;padding-right:20px;font-size:12px}.nature-card__label{font-size:10.5px;letter-spacing:.18em}}
/* 25. Reduced motion: no scrolling, parallax, tilt, magnetic or reveal movement; the hero toggle is hidden (the fabric script never starts). */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal,[data-reveal],.hero-enter,.reveal.is-pending,[data-reveal].is-pending{opacity:1!important;transform:none!important}[data-parallax],[data-tilt],.btn-primary,.glass-card:hover,.btn-glass:hover,.store-pill:hover,.topic-card:hover,.explore-card:hover>img,.nature-card:hover>img,.blog-card:hover img,.arrow{transform:none!important}.glass::after{display:none}.js .marquee-track{width:100%;transform:none}.js .logo-set{width:100%;flex-wrap:wrap}.js .logo-set[aria-hidden]{display:none}.marquee{mask-image:none}.js .logo-slot{width:33.333%;padding:14px}}

/* Keep footer columns shrinkable and preserve white-text contrast during sheen. */


/* Book cut-out sits on the stage: shadow from the stage, not from the image (s006 fix). */
.book-image{filter:drop-shadow(0 28px 34px rgba(46,34,40,.28)) drop-shadow(0 6px 10px rgba(46,34,40,.16))}

/* Review switcher bar (hosted mockups): keep the sticky header below it. */
:root{--switcher-h:0px}
.site-header{top:var(--switcher-h)}

/* 26. v5 "WordPress" layer. Plain beige sections, hairline dividers, a post grid and a speaking band on the home page (.home),
   and a page title band on every inner page. Glass stays only on inner-page content that already used it. */
main>section+section{border-top:1px solid var(--hair)}
.home .chip{backdrop-filter:none;-webkit-backdrop-filter:none}
.home .section--alt{background:var(--alt)}.home .section--ground{background:var(--ground)}
/* Reel: video keeps its Play button; the caption is a plain line under it. */
.home .reel-frame{border-radius:6px;box-shadow:none}
.home .reel-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 28px;margin-top:14px;padding:14px 0 0;border-top:1px solid var(--hair)}
/* Welcome / about: her studio headshot (capped near 460px) beside the story. */
.welcome-visual{width:100%;max-width:460px}
.welcome-photo{width:100%;aspect-ratio:5/4;object-fit:cover;object-position:66% 0;border-radius:6px}
.pullquote{margin-top:30px;padding-left:22px;border-left:1px solid var(--pink)}
.pullquote blockquote{font:italic 400 clamp(23px,2.3vw,31px)/1.3 var(--font-accent);color:var(--plum)}
.pullquote figcaption{margin-top:12px;font-size:11.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.story-list{list-style:none;margin:28px 0;padding:0}
.story-list li{padding:20px 0;border-top:1px solid var(--hair)}.story-list li:last-child{border-bottom:1px solid var(--hair)}
.story-list h3{font-size:22.1px;margin-bottom:8px}.story-list p{font-size:18px;line-height:1.65}
@media(min-width:900px){.home .story-section .split{grid-template-columns:.85fr 1.15fr;align-items:start}}
/* Soul Shift: a plain centred band. */
.home .soul-band{background:var(--oat)}
.home .soul-panel{background:none;border:0;box-shadow:none;border-radius:0;padding:0;max-width:640px}
.home .soul-mark{height:92px}
/* Choicefulness, book, explore and nature: same content, flatter surfaces. */
.home .book-stage{border-radius:6px;box-shadow:none}
.home .book-info{display:flex;flex-wrap:wrap;gap:4px 18px;margin:26px 0;padding:16px 0;border-block:1px solid var(--hair);font-size:15px}
.home .store-pill{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;min-height:44px}
.home .topic-card{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;border-radius:6px}.home .topic-card:hover{transform:none;box-shadow:none;border-color:rgba(91,23,61,.35)}
.home .nature-card{border-radius:6px;box-shadow:none}
/* From the journal: a WordPress-style post grid. */
.journal-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 32px;margin-bottom:40px}.journal-head .section-heading{margin-bottom:0}
.post-grid{display:grid;gap:44px 32px;grid-template-columns:minmax(0,1fr);list-style:none;margin:0;padding:0}
.post-card{display:flex;flex-direction:column;min-width:0}
.post-card__image{display:block;overflow:hidden;aspect-ratio:3/2;border-radius:6px;background:var(--oat)}
.post-card__image img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.post-card:hover .post-card__image img,.post-card__image:focus-visible img{transform:none}
.post-card__body{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding-top:22px;flex:1}
.post-card__cat{margin:0;font:600 11px/1.5 var(--font-label);letter-spacing:.2em;text-transform:uppercase;color:var(--crimson)}
.post-card h3{font-size:clamp(1.3175rem,1.785vw,1.615rem);line-height:1.18}.post-card h3 a{color:var(--ink);text-decoration:none}.post-card h3 a:hover{color:var(--plum)}
.post-card .text-link{margin-top:auto;font-size:14.5px}
@media(min-width:900px){.post-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* Speaking band: the Milken Institute photo beside a short line. */
.speaking-split{display:grid;gap:36px;align-items:center}.speaking-split>*{min-width:0}
.speaking-photo img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:6px}
.speaking-photo figcaption{margin-top:12px;font-size:11.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.speaking-copy h2{font-size:clamp(1.785rem,2.89vw,2.55rem)}.speaking-copy p:not(.eyebrow){margin-top:18px;max-width:460px}.speaking-copy .actions{margin-top:26px}
@media(min-width:900px){.speaking-split{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(48px,6vw,88px)}}
/* Sign-up: plain band, words left, form right. */
.signup-wp{display:grid;gap:30px;align-items:center}.signup-wp>*{min-width:0}
.signup-wp h2{font-size:clamp(2.04rem,3.4vw,3.06rem)}.signup-wp .signup-copy p:not(.eyebrow){margin-top:18px}
.signup-wp .btn-primary{white-space:normal}
@media(min-width:900px){.signup-wp{grid-template-columns:1fr 1fr;gap:clamp(48px,7vw,104px)}}
@media(max-width:599px){.signup-wp .btn-primary{width:100%}}
/* Page title band on every inner page: breadcrumb, the page's own h1, the still plaster behind at low strength. No animation. */
.page-title-band{position:relative;isolation:isolate;overflow:hidden;background:var(--oat);padding:clamp(36px,5vw,64px) 0 clamp(44px,6vw,80px);border-bottom:1px solid var(--hair)}
.page-title-band__img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}
.page-title-band::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(248,246,241,.58)}
.crumbs ol{display:flex;flex-wrap:wrap;gap:4px 10px;list-style:none;margin:0 0 clamp(22px,3vw,34px);padding:0;font:400 13px/1.5 var(--font-label);letter-spacing:normal;text-transform:none;color:var(--muted)}
.crumbs li+li::before{content:"/";margin-right:10px;color:var(--crimson)}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--plum);text-decoration:underline}.crumbs [aria-current]{color:var(--ink)}
.page-title-band h1{font-size:clamp(2.04rem,3.91vw,3.315rem);max-width:860px}
.page-title-band .lead{max-width:680px;margin-top:20px}.page-title-band .eyebrow{margin-bottom:14px}.page-title-band .accent{margin-top:14px}
.page-title-band--center{text-align:center}.page-title-band--center .crumbs ol{justify-content:center}.page-title-band--center h1,.page-title-band--center .lead{margin-inline:auto}.page-title-band--center .actions{justify-content:center}
.page-title-band .soul-mark{height:84px;width:auto;margin:0 auto 18px}.page-title-band .soul-wordmark{width:min(320px,80%);margin:0 auto 20px}
.page-title-band .article-meta{margin-top:14px}
.book-intro-section{overflow:hidden}
.book-intro-section .book-page-intro{min-width:0}
.book-intro-section .book-info{display:flex;flex-wrap:wrap;gap:4px 18px;margin:26px 0;padding:16px 0;border-block:1px solid var(--hair);font-size:15px}
.book-intro-section .store-pill{backdrop-filter:none;-webkit-backdrop-filter:none}
.home .reel-bar{background:none;box-shadow:none;border-radius:0;border-width:1px 0 0;border-color:var(--hair)}
.footer-socials a{gap:6px}
.footer-nav a{min-height:0;padding-block:7px}
.site-footer input:not([type=checkbox]):not([type=radio]){background:#fff}
.footer-bar__inner{align-items:center}

/* About: natural portrait beside the introduction, then a comfortable reading measure. */
.about-layout{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:clamp(32px,5vw,64px)}
.about-layout>*{min-width:0}
.about-portrait{width:100%;max-width:460px;margin-inline:auto}
.about-portrait img{width:100%;height:auto;border:0;border-radius:6px;box-shadow:none;filter:none}
.about-prose{max-width:65ch;font-size:18px;line-height:1.65}
.about-prose p+p{margin-top:1em}
.about-history{max-width:65ch;margin:clamp(48px,7vw,88px) auto 0}
.about-prose h2{margin-top:clamp(36px,5vw,60px);margin-bottom:24px}
.about-prose h2:first-child{margin-top:0}
.about-pullquote{margin-block:32px;padding:6px 0 6px 24px;border-left:2px solid var(--pink);font:italic 400 clamp(23px,2.3vw,31px)/1.3 var(--font-accent);color:var(--plum)}
.about-signoff{margin-top:32px!important;font:italic 400 clamp(24px,2.4vw,32px)/1.3 var(--font-accent);color:var(--plum)}
.about-signoff em{font-size:1em}
@media(min-width:900px){.about-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.about-portrait{margin-inline:0}}
@media(min-width:1280px){.nav-links .btn-quiet{font-size:13px;letter-spacing:.04em}}


/* Inner-page compositions, consolidated from the original page styles. */
/* Page-local filter states and editorial placement. */
.blog-filters{margin:0 0 36px;gap:12px}
.blog-filter{min-height:44px;padding-inline:22px}
.blog-filter[aria-pressed="true"]{background:var(--plum);color:#fff;border-color:var(--plum)}
.blog-feature{margin-bottom:48px}
.blog-feature__copy{max-width:650px}
.blog-feature__copy h2{font-size:var(--text-h2)}
@media(min-width:900px){.blog-feature{min-height:550px;padding:36px}.blog-feature__copy{padding:40px}}

/* Topic-page composition only; shared components retain their foundation styles. */
.topic-scene{position:relative;isolation:isolate;padding:12px;min-width:0}
.topic-scene__image{width:100%;height:clamp(320px,42vw,510px);object-fit:cover;border-radius:20px;border:1px solid var(--champagne)}
.topic-scene__quote{position:relative;margin:-96px 10px 0;z-index:1}
.topic-panel{padding:clamp(28px,4vw,52px)}
.topic-panel .lead{margin-top:24px}
.topic-faq{display:grid;gap:24px}
.topic-faq h3{margin-bottom:18px}
.topic-end{display:grid;gap:28px;min-width:0}
@media(min-width:900px){.topic-row--reverse .topic-scene{order:2}.topic-row--reverse .topic-panel-wrap{order:1}.topic-row--reverse .topic-scene__image{border-radius:20px}.topic-faq{grid-template-columns:1fr 1fr}}

/* Page-only composition: the journey follows a gold S; components retain their shared skin. */
    .choice-journey{display:grid;gap:40px;align-items:center}
    .choice-journey>*{min-width:0}
    .choice-path{position:relative;isolation:isolate}
    .choice-curve{position:absolute;inset:28px 0;width:100%;height:344px;z-index:-1;pointer-events:none}
    .choice-stops{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(5,64px);gap:20px 0;margin:20px 0}
    .choice-stops>button{grid-column:1 / span 4}
    .choice-stops>button:nth-child(1),.choice-stops>button:nth-child(4){grid-column:3 / span 4}
    .choice-stops>button:nth-child(3){grid-column:2 / span 4}
    .choice-details{display:grid;gap:20px}
    .choice-editorial{background:var(--alt)}
    .choice-editorial-grid{display:grid;gap:28px;align-items:start}
    .choice-editorial-grid>*{min-width:0}
    .choice-quote{margin-top:36px}
    .choice-cta{background:var(--oat)}
    .choice-cta-copy{padding:clamp(26px,4vw,48px)}
    @media(min-width:900px){
      .choice-journey{grid-template-columns:1fr 1fr;gap:80px}
      .choice-editorial-grid{grid-template-columns:1fr 1fr;gap:40px}
      .choice-editorial-grid>:last-child{margin-top:80px}
    }

/* Page-local reading layout and scroll indicator. */
.reading-progress{position:fixed;inset:0 0 auto;height:4px;z-index:110;background:var(--peach);pointer-events:none}
.reading-progress__fill{display:block;height:100%;background:var(--plum);transform:scaleX(0);transform-origin:left}
.reading-layout{display:grid;gap:56px;align-items:start}
.reading-measure{min-width:0;max-width:68ch}
.reading-aside{min-width:0;scroll-margin-top:120px}
.sleep-aside__image{width:100%;aspect-ratio:16/9;object-fit:cover}
.sleep-aside__content{padding:28px}
.sleep-aside__content h2{font-size:var(--text-h2)}
.sleep-aside__content form{margin-top:24px}
.sleep-aside__content .btn-primary{margin-top:16px;width:100%;padding-inline:18px}
@media(min-width:1000px){.reading-layout{grid-template-columns:minmax(0,1fr) 320px;gap:clamp(40px,5vw,72px)}.reading-aside{position:sticky;top:120px;max-height:calc(100dvh - 140px);overflow:auto;padding:8px;margin:-8px}}

/* Page-scale brand composition; shared components retain their foundation styles. */
    .soul-page-hero{min-height:760px;padding-block:72px 88px;text-align:center}
    .soul-page-panel{max-width:720px;margin-inline:auto}
    .soul-page-mark{animation:soul-breathe 8s ease-in-out infinite}
    .soul-page-tagline{margin-top:24px}
    .soul-origin-visual{width:100%;max-width:470px;margin-inline:auto;padding:8px}
    .soul-origin-copy{padding:clamp(28px,4vw,48px)}
    .soul-next-card{display:flex;flex-direction:column;gap:20px}
    .soul-next-card .text-link{align-self:flex-start;margin-top:auto}
    @keyframes soul-breathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.035)}}
    @media(max-width:599px){.soul-page-hero{min-height:680px;padding-block:48px 64px}}

.press-feature{height:100%;display:flex;flex-direction:column;gap:18px}
    .press-feature>p{margin:0}
    .press-feature>h3{margin-bottom:auto}
    .press-quotes{margin-top:40px}
    .press-media{display:grid;gap:36px;align-items:center}
    .press-portraits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:8px}
    .press-portraits>figure:nth-child(2){margin-top:38px}
    .press-media-copy{min-width:0}
    @media(min-width:900px){.press-media{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:60px}}

/* Book-only compositions; shared surfaces, type and motion remain in site.css. */
    .book-page-grid{display:grid;gap:44px;align-items:center}
    .book-page-grid>*{min-width:0}
    .book-page-stage{width:100%;max-width:510px;margin-inline:auto}
    .book-page-description{display:grid;gap:40px;align-items:start}
    .book-page-cover{width:min(100%,300px);margin-inline:auto;padding:16px}
    .book-page-cover img{width:100%;height:auto}
    .book-page-benefits{padding-left:22px;margin-block:24px}
    .book-page-benefits li+li{margin-top:18px}
    .book-page-facts{margin:0;display:grid;gap:0}
    .book-page-facts>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:16px;padding-block:16px;border-bottom:1px solid var(--champagne)}
    .book-page-facts dt{color:var(--muted);font-size:14px}
    .book-page-facts dd{margin:0;min-width:0}
    @media(min-width:900px){
      .book-page-grid{grid-template-columns:.9fr 1.1fr;gap:48px}
      .book-page-stage{grid-column:1;grid-row:1}
      .book-page-intro{grid-column:2;grid-row:1}
      .book-page-description{grid-template-columns:.65fr 1.35fr;gap:64px}
      .book-page-cover{position:sticky;top:130px;margin-top:30px}
    }

.work-hero-mark{right:7%;top:12%;width:170px}
    .work-services{padding-top:clamp(48px,6vw,80px)}
    .work-service-link{height:100%;text-decoration:none;color:var(--ink)}
    .work-service-top{display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--plum)}
    .work-service-icon{width:38px;height:38px;flex-shrink:0}
    .work-form-card{max-width:840px;margin-inline:auto;padding:clamp(26px,5vw,60px)}
    .work-field-wide{grid-column:1/-1}
    .work-faq-layout{display:grid;gap:36px;align-items:start}
    .work-faq-list{display:grid;gap:16px;min-width:0}
    .work-faq-item{padding:0 24px}
    .work-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:80px;padding-block:20px;cursor:pointer;list-style:none;color:var(--plum);font-weight:500}
    .work-faq-item summary::-webkit-details-marker{display:none}
    .work-faq-item summary::after{content:"+";font-size:26px;font-weight:400;flex-shrink:0;transition:transform .35s var(--ease)}
    .work-faq-item[open] summary::after{transform:rotate(45deg)}
    .work-faq-answer{padding-bottom:26px}
    @media(min-width:900px){.work-faq-layout{grid-template-columns:.8fr 1.2fr;gap:64px}}

/* Final contact page and home image crops. */
.position-lake{object-position:50% 52%}
.position-stream{object-position:50% 60%}
.position-sand{object-position:50% 40%}
.contact-section{border-top:0}
.contact-intro .lead{max-width:480px}
.contact-intro .btn-primary{margin-top:28px}
.contact-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:48px;align-items:start}
.contact-layout>*{min-width:0}
.contact-form .form-fields{display:grid;gap:24px}
.contact-form .btn-primary{justify-self:start}
.contact-form .form-note{margin:0}
.contact-socials{display:flex;flex-wrap:wrap;gap:16px 24px;margin-top:28px}
.contact-socials a{display:inline-flex;align-items:center;min-height:44px}
.contact-image-band{width:100%;height:clamp(220px,32vw,420px);object-fit:cover;object-position:center 55%}
@media(min-width:760px){.contact-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);column-gap:clamp(40px,7vw,96px)}}
@media(max-width:599px) and (prefers-reduced-motion:reduce){.js .logo-slot{width:50%}}

/* Approved copy and client portraits, 8 October 2026. */
.book-faq-layout summary h3{min-width:0;font:inherit;line-height:inherit;color:inherit;letter-spacing:inherit;text-wrap:wrap}
.press-conversation{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-flow:row;gap:28px;min-width:0}
.press-conversation .photo-frame{width:100%;max-width:460px;margin-inline:auto}
.press-conversation .photo-frame>img{aspect-ratio:1295/1215;object-position:center top}
.press-conversation .book-page-benefits{margin-block:0}
.work-services-split{display:grid;grid-template-columns:minmax(0,1fr);gap:40px;align-items:start}
.work-services-split>*{min-width:0}
.work-services-portrait{width:100%;max-width:420px;margin-inline:auto}
.work-services-portrait>img{aspect-ratio:2/3;object-position:center top}
.work-services-copy .grid-3{grid-template-columns:minmax(0,1fr)}
.signup-water-photo{width:100%;max-width:440px;margin-inline:auto}
.signup-water-photo>img{aspect-ratio:3/4;object-position:center}
.signup-water-content{display:grid;gap:30px;min-width:0}
@media(min-width:900px){
  .work-services-split{grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:clamp(40px,5vw,72px)}
  .work-services-portrait{position:sticky;top:130px;margin-inline:0}
  .work-services-copy .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .signup-wp--photo{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
  .signup-water-photo{margin-inline:0}
}
.grid-2>.press-conversation,.grid-2>.press-conversation.reveal{display:flex;flex-direction:column;gap:28px}
.press-conversation>.photo-frame{max-width:none;width:100%}
.grid-2:has(>.press-conversation)>.reveal:first-child{align-self:start}
@media(min-width:900px){.grid-2:has(>.press-conversation)>*{grid-column:1/-1}.grid-2>.press-conversation,.grid-2>.press-conversation.reveal{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px;align-items:start}.press-conversation>.photo-frame{position:sticky;top:110px}}

/* Accepted final design fixes, desktop and phone. */
.blog-card,.grid-2>.blog-card.reveal{display:flex;flex-direction:column}
.blog-card__image,.grid-2>.blog-card>.blog-card__image{width:100%;flex:none}
.blog-card__body{flex:1;display:flex;flex-direction:column;align-items:flex-start;width:100%;border-radius:0;border:0;box-shadow:none;overflow-wrap:normal;word-break:normal;hyphens:none}
.blog-card__body h3{margin-bottom:20px}
.blog-card__body .text-link{margin-top:auto;padding-top:20px}
.grid-2>.quote-card.reveal{display:block}
.section[aria-labelledby="questions-title"] .grid-3>.reveal>.glass-card{height:100%}
.press-portraits{align-items:start}
.about-history h2>span{display:block}
.press-conversation .btn-primary{text-align:center;text-wrap:balance}
#press-kit button:disabled{opacity:.55;cursor:not-allowed}
#press-kit button:disabled:hover{transform:none;box-shadow:none}
.sleep-aside__content h2+p{margin-top:16px}
.book-page-facts .price-part{white-space:nowrap}
@media(min-width:900px){
  #blog-posts>.grid-3{grid-template-columns:repeat(6,minmax(0,1fr))}
  #blog-posts>.grid-3>.blog-card{grid-column:span 2}
  #blog-posts>.grid-3>.blog-card[data-post-category="meditation"]{grid-column:span 3}
  .begin-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr}
  .section[aria-labelledby="archive-title"] .grid-3{grid-template-columns:repeat(6,minmax(0,1fr))}
  .section[aria-labelledby="archive-title"] .grid-3>.reveal{grid-column:span 2}
  .section[aria-labelledby="archive-title"] .grid-3>.reveal:last-child{grid-column:3/span 2}
  .section[aria-labelledby="topics-title"] .grid-2>.reveal:first-child>.service-tile{width:100%;max-width:760px;margin-inline:auto}
  .logo-slot img[src$="people.svg"],.logo-slot img[src$="abc-news.svg"]{width:calc(100% + 16px);max-width:none}
  .logo-slot img[src$="people.svg"]{max-height:60px}
  .logo-slot img[src$="abc-news.svg"]{max-height:56px}
  .logo-slot img[src$="real-simple.svg"]{width:85%;max-height:40px}
  .logo-slot img[src$="npr.svg"]{max-height:38px}
}
@media(max-width:899px){
  .work-faq-layout>.section-heading{margin-bottom:0}
}
@media(max-width:599px){
  .footer-nav a{min-height:44px;padding-block:10px}
  .footer-socials a{min-height:44px}
}

/* Book pre-order landing page: reuse shared surfaces and keep additions local. */
.book-preorder-hero{padding-block:clamp(32px,4vw,56px) clamp(48px,6vw,80px);background:var(--alt);border-bottom:1px solid var(--hair)}
.book-preorder-hero h1{font-size:clamp(2.04rem,3.91vw,3.315rem)}
.book-hero-split{gap:clamp(32px,4vw,56px)}
.book-hero-copy>.lead{margin-top:24px}
.book-hero-copy .book-info{margin:22px 0 18px;padding:16px 0;border-block:1px solid var(--hair);font-size:15px}
.book-hero-copy .countdown{margin-bottom:0}
.book-vsl{width:100%;min-width:0}
.book-vsl-frame{position:relative;aspect-ratio:16/9;background:var(--oat)}
.book-vsl-frame>img{width:100%;height:100%;object-fit:cover;object-position:50% 15%}
.book-vsl-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:72px;height:72px;border-radius:50%;border:2px solid var(--ground);background:var(--plum);color:#fff;box-shadow:var(--shadow)}
.book-vsl-play:hover{background:var(--crimson)}
.book-vsl-play:focus-visible{outline-color:var(--ground)}
.book-vsl-play>span{width:0;height:0;margin-left:5px;border-left:18px solid currentColor;border-block:11px solid transparent}
.book-vsl figcaption{margin-top:14px}
.book-vsl [data-vsl-note]{padding:12px 16px;border:1px solid var(--hair);border-radius:14px;background:var(--ground)}
.book-quick-buy{padding-block:28px 34px}
.book-quick-buy .eyebrow{margin-bottom:16px}
.book-press{padding-block:28px 30px}
.book-press .eyebrow{margin-bottom:16px}
.book-press .marquee-track,.js .book-press .marquee-track{width:100%;animation:none}
.book-press .logo-set,.js .book-press .logo-set{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;flex-wrap:wrap}
.book-press .logo-slot,.js .book-press .logo-slot{width:100%;height:80px;padding:18px}
.book-press .logo-slot img{width:100%;max-width:126px;max-height:38px}
.book-outcomes>h2,.book-outcomes>p{max-width:760px;margin-inline:auto}
.book-outcome-grid,.book-gift-grid,.book-claim-steps{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.book-outcome-card h3{font:700 18px/1.5 var(--font-label);color:var(--plum);text-wrap:wrap}
.book-outcome-card p{margin-top:16px}
.book-gift-grid>*,.book-claim-steps>*,.book-claim-layout>*{min-width:0}
.book-gift-deadline{margin-top:24px}
.book-claim-steps{list-style:none;margin:0 0 40px;padding:0}
.book-claim-steps .chip-number{width:40px;height:40px;justify-content:center;padding:0}
.book-claim-steps h3{font-size:clamp(1.275rem,1.785vw,1.6575rem)}
.book-claim-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;align-items:start}
.book-claim-fields{display:grid;gap:24px}
.book-claim-fields>.btn-primary{justify-self:start}
.book-claim-consent{display:flex;align-items:flex-start;gap:12px}
.book-claim-consent input{flex-shrink:0;width:20px;height:20px;margin:4px 0 0;accent-color:var(--plum)}
.book-claim-consent label{font-size:14px;cursor:pointer}
.sticky-preorder{display:none}
@media(min-width:600px){
  .book-press .logo-set,.js .book-press .logo-set{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(min-width:900px){
  .book-hero-split{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
  .book-press .logo-set,.js .book-press .logo-set{grid-template-columns:repeat(8,minmax(0,1fr))}
  .book-press .logo-slot,.js .book-press .logo-slot{padding:12px}
  .book-outcome-grid,.book-gift-grid,.book-claim-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
  .book-claim-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:40px}
}
@media(max-width:899px){
  .book-landing{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
  .sticky-preorder{position:fixed;inset:auto 0 0;z-index:90;display:flex;justify-content:center;padding:12px var(--gutter);padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));background:var(--ground);border-top:1px solid var(--hair)}
  .sticky-preorder .btn-primary{width:100%;max-width:480px;text-align:center}
  .book-landing.menu-open .sticky-preorder{display:none}
}
#soul-title + p{margin-top:24px}
.book-gift-grid h3{font-size:clamp(17px,1.445vw,20.4px);text-wrap:pretty}
.book-vsl-play{top:auto;left:24px;bottom:24px;transform:none}
@media(max-width:599px){.book-vsl-play{left:14px;bottom:14px;width:60px;height:60px}}
@media(max-width:899px){.book-hero-split{display:flex;flex-direction:column;gap:0}.book-hero-copy{display:contents}.book-hero-copy>*{order:1}.book-hero-split>.book-vsl{order:2;margin-block:8px 28px}.book-hero-copy>[data-preorder-hero-actions]{order:3}html:has([data-sticky-preorder]){scroll-padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}}
@media(max-width:899px){.book-hero-split{align-items:flex-start;text-align:left}.book-hero-copy>h1,.book-hero-copy>p:not(.countdown),.book-hero-split>.book-vsl{align-self:stretch;margin-inline:0}}

/* Centred book landing page. All new selectors belong to this page. */
.book-landing{text-align:center}
.book-landing .section-heading{max-width:680px;margin-inline:auto}
.book-landing .actions,.book-landing .stores{justify-content:center}
.book-landing .section-heading>p,.book-landing .book-outcomes>h2,.book-landing .book-outcomes>p{max-width:680px;margin-inline:auto}
.book-landing :is(main,.sticky-preorder) .btn-primary{
  min-height:54px;height:54px;padding:0 24px;border:1px solid var(--plum);border-radius:12px;
  background:var(--plum);color:#fff;font:700 14px/1.4 var(--font-label);letter-spacing:.01em;
  text-align:center;text-decoration:none;transform:none;
  transition:background-color .2s,border-color .2s,box-shadow .2s;
}
.book-landing :is(main,.sticky-preorder) .btn-primary:hover{background:#46112f;border-color:#46112f;color:#fff;box-shadow:0 8px 22px -12px rgba(91,23,61,.5)}
.book-landing :is(main,.sticky-preorder) .btn-primary:focus-visible,.book-landing .btn-glass:focus-visible,.book-landing .store-pill:focus-visible,.book-landing .read-more>summary:focus-visible{outline:3px solid var(--plum);outline-offset:4px;box-shadow:0 0 0 2px var(--ground)}
.book-landing .btn-glass,.book-landing .read-more>summary{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;padding:12px 24px;border:1px solid var(--plum);border-radius:12px;background:rgba(248,246,241,.9);color:var(--plum);font:700 14px/1.4 var(--font-label);letter-spacing:.01em;text-decoration:none;transform:none;transition:background-color .2s}
.book-landing .btn-glass:hover,.book-landing .read-more>summary:hover{background:var(--pink-soft);color:var(--plum);transform:none;box-shadow:none}
.book-landing .text-link:hover{color:#46112f}

/* One column, one action row, then a full-width film frame. */
.book-landing .book-preorder-hero{overflow:hidden;background:var(--oat);padding-block:32px 64px}
.book-landing .book-preorder-hero .lg-fabric{position:absolute;inset:0;z-index:0;overflow:hidden}
.book-landing .book-preorder-hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 62% 46% at 50% 26%,rgba(248,246,241,.9) 0,rgba(248,246,241,.62) 55%,rgba(248,246,241,.18) 100%)}
.book-landing .book-preorder-hero>.wrap{max-width:1136px;z-index:2}
.book-landing .crumbs ol{justify-content:center;margin-bottom:30px}
.book-landing .crumbs a,.book-landing .crumbs li{color:var(--ink)}
.book-landing .book-hero-split{display:flex;flex-direction:column;align-items:center;gap:36px;text-align:center}
.book-landing .book-hero-copy{display:block;width:100%;min-width:0}
.book-landing .book-hero-copy>*{order:initial;margin-inline:auto}
.book-landing .book-hero-copy>.eyebrow{margin:0 auto 18px;color:var(--ink);font-size:11px;letter-spacing:.16em}
.book-landing .book-preorder-hero h1{max-width:1040px;font-size:clamp(44.2px,6.035vw,73.1px);line-height:1.05;letter-spacing:-.025em}
.book-landing .book-subtitle{max-width:680px;margin:18px auto 0;font-size:clamp(24px,2.8vw,32px)}
.book-landing [data-preorder-hero-actions]{order:initial;margin:28px auto 0;justify-content:center;gap:12px}
.book-landing .book-hero-copy .countdown{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:10px 18px;border:1px solid rgba(91,23,61,.2);border-radius:999px;background:var(--ground);color:var(--plum);font:600 13px/1.4 var(--font-label);letter-spacing:0;box-shadow:none}
.book-landing .book-hero-split>.book-vsl{order:initial;align-self:center;width:100%;max-width:1040px;margin:0;padding:0;border:0;border-radius:0;overflow:visible;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
.book-landing .book-vsl::after,.book-landing .book-vsl-frame::after{display:none}
.book-landing .book-vsl-frame{aspect-ratio:16/9;overflow:hidden;border:1px solid rgba(255,255,255,.8);border-radius:24px;background:var(--oat);box-shadow:0 24px 60px -28px rgba(46,34,40,.38)}
.book-landing .book-vsl-frame>img{width:100%;height:100%;object-fit:cover;object-position:50% 32%}
.book-landing .book-vsl-play{top:50%;left:50%;bottom:auto;transform:translate(-50%,-50%);width:clamp(76px,10vw,112px);height:clamp(76px,10vw,112px);border:10px solid rgba(248,246,241,.4);background:rgba(248,246,241,.22);color:var(--plum);background-clip:padding-box;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);box-shadow:0 8px 28px rgba(46,34,40,.2);transition:background-color .2s}
.book-landing .book-vsl-play:hover{background-color:rgba(248,246,241,.5)}
.book-landing .book-vsl-play:focus-visible{outline:3px solid var(--ground);outline-offset:5px}
.book-landing .book-vsl-play>span{border-left-width:24px;border-block-width:15px;margin-left:6px}
.book-landing .book-vsl figcaption{margin:18px 0 0;color:var(--ink)}
.book-landing .book-vsl [data-vsl-note]{max-width:680px;margin:16px auto 0}
.book-landing .book-quick-buy{padding-block:28px;background:var(--ground)}
.book-landing .book-quick-buy .stores{margin:0 auto;gap:10px}
.book-landing .store-pill{min-height:54px;padding:14px 20px;border:1px solid rgba(91,23,61,.45);border-radius:12px;background:var(--ground);color:var(--plum);font:700 14px/1.4 var(--font-label);letter-spacing:0;transform:none;box-shadow:none;transition:background-color .2s,border-color .2s}
.book-landing .store-pill:hover{background:var(--pink-soft);border-color:var(--plum);color:var(--plum);transform:none;box-shadow:none}
.book-landing .book-press{background:var(--ground);padding-block:20px 32px}
.book-landing .book-press .logo-slot{height:64px;padding:12px;justify-content:center}

/* Centred scenery panels and cards, with short reading lines. */
.book-landing .book-scene{overflow:hidden;background:var(--oat)}
.book-landing .book-scene__image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;animation:book-scenery-drift 24s linear infinite alternate!important;transform-origin:center}
.book-landing .book-scene::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:rgba(248,246,241,.12)}
.book-landing .book-page-description{display:block}
.book-landing .book-page-description>.glass-card{max-width:760px;margin-inline:auto}
.book-landing .book-page-description p{max-width:680px;margin-inline:auto}
.book-landing .book-story-scene .glass-card:hover{transform:none}
.book-landing .read-more{padding-top:16px;border-top:1px solid var(--hair)}
.book-landing .read-more>summary{width:fit-content;margin-inline:auto;cursor:pointer;list-style:none}
.book-landing .read-more>summary::-webkit-details-marker{display:none}
.book-landing .read-more>summary::after{content:"";width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px}
.book-landing .read-more[open]>summary::after{transform:rotate(225deg);margin-top:4px}
.book-landing .read-more>p{margin-top:18px}
.book-landing .book-chapter-banner{max-width:1040px;margin:0 auto 40px}
.book-landing .book-chapter-banner>img{width:100%;aspect-ratio:16/7;object-fit:cover;object-position:center 55%}
.book-landing .book-outcome-grid{margin-top:36px;gap:24px}
.book-landing .book-outcome-card{padding:0;box-shadow:none;background:var(--ground)}
.book-landing .book-outcome-card>img{width:100%;aspect-ratio:1;object-fit:cover}
.book-landing .book-outcome-copy{padding:24px}
.book-landing .book-outcome-card p{margin-top:12px;font-size:18px;line-height:1.65}
.book-landing .book-outcomes-closing{max-width:680px;margin:32px auto 0}
.book-landing .book-gifts-intro{display:flex;flex-direction:column;gap:32px;margin-bottom:32px}
.book-landing .book-gifts-intro .section-heading{margin-bottom:0}
.book-landing .book-gifts-intro .photo-frame{width:100%;max-width:800px;margin-inline:auto}
.book-landing .book-gifts-intro img{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:center}
.book-landing .book-gift-grid{gap:20px}
.book-landing .book-gift-grid>.glass-card{box-shadow:none;padding:28px 24px}
.book-landing .book-gift-grid p{font-size:18px;line-height:1.65;margin-top:16px}

/* Three steps, a single centred form, then the claim questions. */
.book-landing .book-claim-steps{grid-template-columns:minmax(0,1fr);max-width:960px;margin:0 auto 40px;gap:24px}
.book-landing .book-claim-steps>.glass-card{padding:24px 16px;border:0;border-top:1px solid var(--hair);border-radius:0;box-shadow:none;background:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.book-landing .book-claim-steps>.glass-card:hover{transform:none}
.book-landing .book-claim-steps>.glass-card::after{display:none}
.book-landing .book-claim-steps .chip-number{width:48px;height:48px;padding:0;justify-content:center;border-color:var(--hair);background:var(--ground);font-size:24px;color:var(--plum);margin-inline:auto}
.book-landing .book-claim-steps h3{font:700 18px/1.4 var(--font-label);margin-top:16px;color:var(--plum);text-wrap:wrap}
.book-landing .book-claim-steps p{margin-top:12px;font-size:18px;line-height:1.65}
.book-landing .book-claim-layout{grid-template-columns:minmax(0,1fr);gap:40px;width:100%;max-width:640px;margin-inline:auto}
.book-landing .book-claim-fields>.btn-primary{justify-self:center}
.book-landing .book-claim-consent{justify-content:center;max-width:480px;margin-inline:auto}
.book-landing .book-claim-layout>.book-faq-layout{display:flex;flex-direction:column;gap:20px}
.book-landing .book-claim-layout>.book-faq-layout>*{margin-top:0;width:100%}
.book-landing main .field input,.book-landing main .field select{text-align:center}
.book-landing .work-faq-item summary h3{flex:1;text-align:center}
.book-landing .book-endorsement-scene::before{background:rgba(46,34,40,.24)}
.book-landing .book-endorsement-scene .quote-card{background:linear-gradient(135deg,rgba(248,246,241,.96),rgba(241,236,228,.94))}
.book-landing .quote-card figcaption{display:block;color:var(--ink);max-width:680px;margin-inline:auto}
.book-landing .quote-card figcaption::before{display:none}
.book-landing [aria-labelledby="author-title"] .story-visual{width:100%;max-width:440px;margin-inline:auto;padding:0}
.book-landing [aria-labelledby="author-title"] .glass-card{max-width:680px;margin-inline:auto}
.book-landing .book-question-groups{display:grid;grid-template-columns:minmax(0,1fr);gap:48px}
.book-landing .book-question-group{min-width:0}
.book-landing .book-question-group .section-heading{margin-bottom:28px}
.book-landing .book-question-group h2{font-size:clamp(23.8px,2.21vw,32.3px)}
.book-landing .book-question-group .lead{font-size:18px}
.book-landing .book-question-group .work-faq-item{padding-inline:20px;box-shadow:none}
.book-landing .book-question-group .work-faq-item summary{min-height:72px;gap:16px}
.book-landing .book-question-group .work-faq-item h3{font:600 16px/1.5 var(--font-label);color:var(--plum);text-wrap:wrap}
.book-landing .book-question-group .work-faq-answer{font-size:18px;line-height:1.65}
.book-landing .book-question-group .actions{gap:16px}
.book-landing .signup-wp--photo{grid-template-columns:minmax(0,1fr);gap:32px}
.book-landing .signup-water-photo{width:100%;max-width:640px;margin-inline:auto}
.book-landing .signup-water-photo>img{aspect-ratio:16/9;object-position:center 40%}
.book-landing .signup-water-content{width:100%;max-width:680px;margin-inline:auto}
.book-landing .eyebrow--line{justify-content:center}
.book-landing main .form-row{align-items:center;justify-content:center;flex-direction:column}
.book-landing main .form-row .field{width:100%}
.book-landing main .form-row .btn-primary{align-self:center}

/* The final buying area: title, paperback, price and facts, then six store buttons. */
.book-landing .book-store-section{overflow:hidden;background:var(--alt)}

.book-landing .book-store-layout{display:flex;flex-direction:column;align-items:center;gap:28px}
.book-landing .book-store-layout .section-heading{margin-bottom:0}
.book-landing .book-store-mockup{width:100%;max-width:440px;margin-inline:auto}
.book-landing .book-store-mockup img{width:100%;max-height:550px;object-fit:cover;border-radius:22px;box-shadow:0 30px 70px -34px rgba(46,34,40,.42)}
.book-landing .book-page-facts{display:flex;flex-wrap:wrap;justify-content:center;gap:18px 28px;width:100%;max-width:800px;margin:0;font-size:14px}
.book-landing .book-page-facts>div{display:flex;flex-direction:column;align-items:center;gap:6px;padding:0;border:0}
.book-landing .book-page-facts dt{color:var(--muted);font-size:12px}
.book-landing .book-page-facts dd{margin:0;max-width:680px}
.book-landing .book-page-facts .book-price{flex-basis:100%;margin-bottom:8px;padding-bottom:24px;border-bottom:1px solid rgba(91,23,61,.18)}
.book-landing .book-price dd{color:var(--plum);font:400 clamp(27px,4vw,42px)/1.3 var(--font-display)}
.book-landing .book-price .price-part:first-child{font-size:1.3em}
.book-landing .book-store-layout .stores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;max-width:840px;margin:8px auto 0}
.book-landing .book-store-layout .store-pill{justify-content:space-between;min-height:56px;padding:16px;gap:10px;background:var(--ground);border-color:rgba(91,23,61,.55)}
.book-landing .book-store-layout .store-pill:hover{background:var(--pink-soft)}
.book-landing .store-arrow{flex-shrink:0}
@keyframes book-scenery-drift{from{transform:scale(1)}to{transform:scale(1.06)}}
@media(min-width:600px){
  .book-landing .book-outcome-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .book-landing .book-claim-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(min-width:900px){
  .book-landing .book-preorder-hero{padding-block:40px 80px}
  .book-landing .book-story-scene{min-height:640px;display:grid;align-items:center}
  .book-landing .book-outcome-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .book-landing .book-chapter-banner>img{aspect-ratio:21/7}
  .book-landing .book-question-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}
  .book-landing .book-store-layout .stores{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:599px){
  .book-landing .book-hero-split{gap:28px}
  .book-landing .book-vsl-frame{border-radius:16px}
  .book-landing [data-preorder-hero-actions]{gap:10px}
  .book-landing .book-outcome-card>img{aspect-ratio:16/9;height:auto}
  .book-landing .book-endorsement-scene .book-scene__image{object-position:14% 50%}
  .book-landing .book-price dd{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:8px}
}
@media(prefers-reduced-motion:reduce){
  .book-landing .book-vsl-play{transform:translate(-50%,-50%)}
}
.book-landing .site-footer{text-align:start}
@media(max-width:599px){.book-landing .book-store-layout .stores{grid-auto-rows:1fr}.book-landing .book-store-layout .store-pill{padding:14px 12px;font-size:13px;text-align:start}}
@media(min-width:900px){.book-landing .book-preorder-hero .book-vsl{max-width:min(1040px,calc((100svh - 330px) * 16 / 9))}.book-landing .book-preorder-hero{padding-top:28px}}

/* Steady hover (2026-10-11): nothing the pointer is over may move, lift or flash; hover shows only colour, border and shadow.
   Lifting a card or button out from under the cursor made it flip between hover and not-hover (vibrating), and the glass
   sheen sweep flashed on every hover. */
.btn-primary,.btn-primary:hover{transform:none!important}
.glass-card:hover,.topic-card:hover,.btn-glass:hover,.store-pill:hover{transform:none!important}
.glass:hover::after{transform:translateX(-120%)!important;transition:none!important}
.explore-card:hover>img,.blog-card:hover img,.nature-card:hover>img,.nature-card:focus-visible>img{transform:none!important}

/* Temporary new-book announcement strip (option 1, Afaq 2026-10-11): same on every page, one line, can be closed.
   Comes off after launch. */
.launch-strip{background:var(--plum);color:#fff;font:400 12.5px/1.4 var(--font-label)}
.launch-strip[hidden]{display:none}
.launch-strip__inner{position:relative;max-width:1240px;margin:auto;min-height:32px;padding:5px 44px;display:flex;align-items:center;justify-content:center;gap:10px;text-align:center}
.launch-strip__label{flex:none;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border:1px solid rgba(255,255,255,.55);border-radius:999px;padding:1px 8px;line-height:1.5}
.launch-strip__text{margin:0;min-width:0}
.launch-strip__title{font-weight:700}
.launch-strip__cta{flex:none;color:#fff;font-weight:700;text-decoration:underline;text-decoration-color:rgba(255,255,255,.6);text-underline-offset:3px}
.launch-strip__cta:hover{text-decoration-color:#fff}
.launch-strip__close{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:24px;height:24px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:transparent;color:#fff;font:400 15px/1 var(--font-label);cursor:pointer}
.launch-strip__close:hover{background:rgba(255,255,255,.14)}
.launch-strip a:focus-visible{outline:2px solid #fff;outline-offset:3px}.launch-strip__close:focus-visible{outline:2px solid #fff;outline-offset:1px}
@media(max-width:599px){.launch-strip__inner{padding:5px 40px;gap:8px}.launch-strip__title,.launch-strip__sep{display:none}}
@media(max-width:374px){.launch-strip{font-size:11.5px}.launch-strip__inner{padding:5px 34px 5px 10px;gap:6px}.launch-strip__label{font-size:9px;padding:1px 6px}.launch-strip__close{right:6px;width:22px;height:22px}}
.launch-strip__close{display:none}.js .launch-strip__close{display:grid}
.nav-socials{display:flex;gap:22px;list-style:none;margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--hair)}
.nav-socials a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);text-decoration:none;font-weight:600}
.nav-socials a:hover{color:var(--plum)}
@media(min-width:1280px){.js .nav-socials{display:none}}
.js .site-nav.is-open .nav-socials a,.site-nav .nav-socials a{font:600 15px/1.4 var(--font-label);letter-spacing:.02em;color:var(--plum)}
.launch-strip__close{width:26px;height:26px;padding:0;line-height:0;place-items:center;align-content:center;justify-content:center}
.launch-strip__close svg{display:block;width:12px;height:12px}
@media(max-width:374px){.launch-strip__close{width:24px;height:24px}.launch-strip__close svg{width:11px;height:11px}}

/* Client font pairing: running text in Garamond, navigation and controls in Open Sans. */
button,input,select,textarea,label,summary,small,.small,.eyebrow,.chip,.text-link,.hero-credentials,.footer-nav,.footer-socials,.footer-bar,.form-note,.form-thanks,.reel-caption,.quote-card figcaption,.pullquote figcaption,.speaking-photo figcaption,.nature-card__label,.post-card__cat,.blog-card__meta,.post-meta,.article-meta,figcaption,.book-info,.reading-progress,.book-page-facts dt{font-family:var(--font-label)}
h1,h2,h3,h4{font-weight:600!important;letter-spacing:-.01em!important;line-height:1.15!important}
h1{line-height:1.08!important}
h1 strong,h2 strong,h3 strong,h4 strong{font-weight:inherit}

/* Approved textures under the shared motion; the text keeps its existing readable wash. */
.book-landing .book-scene>.lg-fabric{position:absolute;inset:0;z-index:-2;overflow:hidden}
.book-landing .book-chapter-banner>.lg-fabric{position:relative;aspect-ratio:16/7;overflow:hidden}
.book-landing .book-gifts-intro .photo-frame>.lg-fabric{position:relative;aspect-ratio:16/5;overflow:hidden}
.book-landing .book-gifts-intro .lg-fabric__img{position:absolute;inset:0;aspect-ratio:auto;height:100%}
.book-landing .book-outcome-card{background:var(--pink-soft);border-color:var(--hair);transition:none;animation:none}
.book-landing .book-outcome-card:nth-child(3n + 2){background:var(--oat)}
.book-landing .book-outcome-card:nth-child(3n){background:var(--pink)}
.book-landing .book-outcome-card::before{content:"";position:absolute;top:-24px;right:-24px;width:140px;height:140px;border-radius:50%;z-index:-1;pointer-events:none;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.45),rgba(255,255,255,.18) 45%,rgba(184,95,114,.06) 65%,transparent 72%)}
.book-landing .book-outcome-card::after{display:none}
.book-landing .book-outcome-card:hover{box-shadow:none}
@media(min-width:900px){.book-landing .book-chapter-banner>.lg-fabric{aspect-ratio:21/7}}

/* The sound prompt and play control sit at opposite lower corners. */
.reel-toggle{left:auto;right:clamp(10px,2vw,24px);gap:8px;padding:8px 14px 8px 8px;min-height:44px}
.reel-sound{position:absolute;left:clamp(10px,2vw,24px);bottom:clamp(14px,2vw,24px);z-index:2;display:inline-flex;align-items:center;gap:8px;min-height:44px;max-width:calc(100% - 120px);padding:8px 14px;border:1px solid rgba(255,255,255,.8);border-radius:999px;background:rgba(255,255,255,.9);color:var(--plum);font:600 13px/1.3 var(--font-label);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.reel-sound svg{flex:none}
.reel-sound:hover{background:#fff}
.reel-sound:focus-visible{outline:3px solid var(--plum);outline-offset:3px;box-shadow:0 0 0 2px #fff}
@media(max-width:374px){.reel-sound{padding-inline:10px;font-size:12px;gap:6px}.reel-toggle,.reel.is-playing .reel-toggle{padding:6px 10px 6px 6px;gap:6px;font-size:11px;letter-spacing:.04em}.reel-toggle .ico{width:30px;height:30px}}

/* A shared native dialog provides focus containment and Escape handling. */
button.text-link{padding:0;border:0;border-bottom:1px solid var(--pink);border-radius:0;background:none;color:var(--plum);text-align:start;appearance:none}
button.text-link:hover{color:var(--crimson);border-bottom-color:var(--crimson)}
html.video-open,body.video-open{overflow:hidden}
.video-dialog{position:fixed;width:calc(100% - 32px);max-width:960px;max-height:calc(100dvh - 96px);padding:0;margin:auto;border:1px solid rgba(255,255,255,.5);border-radius:var(--radius);background:var(--ground);color:var(--ink);overflow:visible;box-shadow:var(--shadow)}
.video-dialog::backdrop{background:rgba(23,13,20,.78)}
.video-dialog video{display:block;width:100%;max-height:calc(100dvh - 152px);aspect-ratio:16/9;object-fit:contain;background:#171014;border-radius:var(--radius) var(--radius) 0 0}
.video-dialog__caption{padding:12px 20px;font:400 13px/1.5 var(--font-label)}
.video-dialog__close{position:absolute;top:-48px;right:0;z-index:2;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:rgba(255,255,255,.95);color:var(--plum)}
.video-dialog__close:focus-visible{outline:3px solid var(--pink);outline-offset:3px}
@media(max-width:599px){.video-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 32px)}.video-dialog__close{top:8px;right:8px}.video-dialog video{max-height:calc(100dvh - 90px)}.video-dialog__caption{padding:12px}}

/* Small phones (2026-10-12 review): on the video the pills covered either the burned-in captions (bottom) or her face (top),
   so up to 600px wide they sit under the video, outside the picture. */
@media(max-width:600px){.reel-frame{overflow:visible;margin-bottom:60px}.reel-frame video{border-radius:inherit}.reel-sound,.reel-toggle{top:calc(100% + 10px);bottom:auto}}

/* Afaq 2026-10-12: the silk banner "doesn't make much sense here" -> her real window portrait, as a centred 16:9 photo. */
.book-landing .book-chapter-banner{max-width:880px;margin-inline:auto}
.book-landing .book-chapter-banner>img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:38% 28%}

/* Pale rose accent (Lynne 2026-10-13: "introduce a touch of pale rose it reads very beige ... It's the rose from the original I
   gave you. It's the light rose in soul shift"). Colours sampled from her Soul Shift banner: blush #F9E7DE/#FAEADE, the silk
   wave rose #D8ACA8, the S mark's light stroke #ECCAC4. Ivory stays the page colour; rose replaces beige where beige was a fill.
   Undo: delete this block (backup ~/claude-quarantine-2026-10-13/site-before-rose.css). */
:root{--rose-50:#FCF2EC;--rose-100:#F9E7DE;--rose-200:#F2D6CD;--rose-line:#D8ACA8;
  --glass:linear-gradient(135deg,rgba(255,251,249,.66),rgba(252,240,234,.34))}
/* Bands: the page now alternates ivory and blush instead of ivory and beige */
.section--soft,.home .section--alt,.choice-editorial{background:var(--rose-50)}
.signup-band,.choice-cta{background:var(--rose-100)}
.soul-band,.home .soul-band{background:var(--rose-100)}
.page-title-band{background:linear-gradient(180deg,var(--rose-100),var(--rose-50))}
/* Small accents */
.eyebrow--line::before{background:var(--rose-line)}
.about-pullquote{border-left-color:var(--rose-line)}
.chip{border-color:var(--rose-line)}
.glass-card,.topic-card,.post-card,.blog-card{border-color:rgba(216,172,168,.38)}
.reading-progress{background:var(--rose-line)}
.signup-band input:not([type=checkbox]):not([type=radio]),.signup-band select{background:#fff;border-color:var(--rose-line)}
.site-footer{box-shadow:inset 0 4px 0 var(--rose-200)}
/* Book landing: a little more rose, where it helps sell */
.book-landing .book-preorder-hero::before{background:radial-gradient(ellipse 62% 46% at 50% 26%,rgba(252,242,236,.9) 0,rgba(252,242,236,.62) 55%,rgba(249,231,222,.2) 100%)}
.book-landing .book-hero-copy .countdown{background:var(--rose-200);border-color:var(--rose-line)}
.book-landing .book-quick-buy{background:var(--rose-50)}
.book-landing .book-store-section{background:var(--rose-100)}
.book-landing .book-price{display:inline-block;padding:6px 18px;border-radius:999px;background:var(--rose-200)}
.book-landing .book-gift-grid>.glass-card{background:var(--rose-50);border:1px solid var(--rose-line)}
.book-landing .book-claim-steps .chip-number{background:var(--rose-200);border-color:var(--rose-line)}
.book-landing .book-outcome-card:nth-child(3n + 2){background:var(--rose-100)}
.book-landing .book-price dt{color:#5A4B53}  /* 2026-10-13: the muted label sat at 4.28:1 on the rose chip */

/* Lynne's team 2026-10-13: "On the book tab, can we add the book cover so that it's more front and center?" The real cover sits
   beside the video on desktop and above it on phones; the video slot stays big (they're looking forward to the video). */
.book-landing .book-hero-stage{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-items:center;gap:20px;width:100%;max-width:1180px}
.book-landing .book-hero-cover{margin:0;width:min(52vw,230px)}
.book-landing .book-hero-cover img{display:block;width:100%;height:auto;filter:drop-shadow(0 26px 30px rgba(46,34,40,.28))}
.book-landing .book-hero-stage>.book-vsl{width:100%}
@media(min-width:900px){.book-landing .book-hero-stage{grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:44px}.book-landing .book-hero-cover{width:100%}}
.book-section--home .book-stage{background:radial-gradient(85% 70% at 50% 30%,#FCF6F2 0%,var(--rose-100) 58%,var(--rose-200) 100%)}  /* 2026-10-13: the home book panel only (was beige); her rose instead */
/* The video moved inside .book-hero-stage (cover beside it): keep the plain, unboxed look the old direct-child rule gave it. */
.book-landing .book-hero-stage>.book-vsl{order:initial;align-self:center;width:100%;max-width:none;margin:0;padding:0;border:0;border-radius:0;overflow:visible;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
/* Home h1: each sentence starts on its own line, so a phone never breaks "Catch Your / Breath. Choose". */
.hero-title em .hero-line{display:inline-block}
@media(max-width:360px){.hero-title{font-size:2.05rem}}  /* keeps each sentence of the home h1 whole on the smallest phones */

/* Lynne 2026-10-13: "Opening buttons give get the free sleep series the plum button. Keep explore the book quieter." */
.text-link--quiet{font-weight:500;color:var(--muted);border-bottom-color:var(--rose-line)}
.text-link--quiet:hover{color:var(--plum)}
/* Lynne 2026-10-13: "The headers at the top for new book feels to hidden maybe a bit more prominent" -> taller strip, bigger type,
   Pre-order as a real white button, and the book title stays visible on phones (the date drops there instead). */
.launch-strip{font-size:14.5px}
.launch-strip__inner{min-height:46px;padding:7px 48px;gap:14px}
.launch-strip__label{font-size:11px;padding:2px 10px;border-color:rgba(255,255,255,.75)}
.launch-strip__title,.launch-strip__sep{display:inline}
.launch-strip__cta{display:inline-flex;align-items:center;min-height:30px;padding:4px 16px;border-radius:999px;background:#fff;color:var(--plum);text-decoration:none}
.launch-strip__cta:hover{background:var(--pink-soft);color:var(--plum)}
@media(max-width:640px){.launch-strip{font-size:13px}.launch-strip__inner{min-height:44px;padding:6px 38px 6px 10px;gap:8px}
  .launch-strip__date{display:none}.launch-strip__label{font-size:9.5px;padding:1px 7px}.launch-strip__cta{min-height:28px;padding:3px 12px}}
@media(max-width:360px){.launch-strip__label{display:none}}

/* Lynne 2026-10-13: Frankie Boyer Show clip (segment C, 8:42-10:03) on Press & Speaking, with its transcript for search. */
.press-audio audio{display:block;width:100%;margin-top:16px}
.press-transcript{margin-top:14px}
.press-transcript>summary{display:inline-flex;align-items:center;min-height:44px;cursor:pointer;list-style:none;color:var(--plum);font:600 15.5px/1.4 var(--font-label);border-bottom:1px solid var(--pink)}
.press-transcript>summary::-webkit-details-marker{display:none}
.press-transcript>summary:focus-visible{outline:3px solid var(--plum);outline-offset:3px}
.press-transcript p{margin-top:12px;font-size:16.5px;line-height:1.6}
/* 2026-10-14 (option 5, beige + blush ribbons): the small hero credentials line stays >=4.5:1 where the blush ribbon passes behind it on phones. */
.home-hero .hero-credentials{color:#4A3C43}
.home-hero .eyebrow{color:#56474F}.home-hero .text-link--quiet{color:#4F4148}
.home-hero .text-link--quiet:hover,.home-hero .text-link--quiet:focus-visible{color:var(--plum)}

/* Lynne 2026-10-14: home h1 type spec. "Pause. Breathe." Open Sans 600, 54px desktop / 36px mobile, line height 1.15;
   the tagline Open Sans Italic 400, 38px / 28px, line height 1.3, plum, letter spacing 0, 14px below it, one sentence per line. */
.home-hero .hero-title{font-size:36px;line-height:1.15!important}
.home-hero .hero-title em{display:block;margin-top:14px;font-family:var(--font-display);font-style:italic;font-weight:400;font-size:28px;line-height:1.3;letter-spacing:0;color:var(--plum)}
.home-hero .hero-title em .hero-line{display:block}
/* Desktop sizes from 900px: at 760-899px (tablets upright) 54px breaks "Pause. Breathe." in two, so tablets keep the mobile sizes. */
@media(min-width:900px){.home-hero .hero-title{font-size:54px}.home-hero .hero-title em{font-size:38px}}

/* Lynne 2026-10-14: display italics site-wide in Open Sans Italic. "the font you used at the top wasn't carried through the rest of the
   website". The accent font is now Open Sans (italic 400, plum, letter spacing 0, as in the home tagline); italics inside running text
   keep EB Garamond at their old size so a book title reads with its sentence. */
:root{--font-accent:'Open Sans',system-ui,-apple-system,'Segoe UI',sans-serif}
em{font-size:1em;letter-spacing:0}
p em,li em,dd em,td em,figcaption em{font-family:var(--font-body);font-size:1.07em}
.about-signoff em,.accent em,.lead em{font-family:inherit}
/* Open Sans runs wider than Garamond, so the italic blocks come down a step to keep their old line breaks, and the browser avoids
   one-word last lines. A heading's italic part wraps as its own balanced unit. */
.accent,.about-signoff{font-size:clamp(21px,2.1vw,28px)}
.quote-card blockquote,.pullquote blockquote,.about-pullquote{font-size:clamp(20px,2vw,27px)}
.article-body blockquote{font-size:26px}
.accent,.about-signoff{text-wrap:balance}
blockquote,.about-pullquote{text-wrap:pretty}
.nowrap{white-space:nowrap}
h1 em,h2 em,h3 em{display:inline-block;text-wrap:balance}
/* Footer tagline: "Choose What's Next." is 8.93em wide; from 900px the column is about 20% of the screen (174px at 900). */
@media(min-width:900px){.footer-about .accent{font-size:clamp(19px,2.05vw,26px)}}
