/* Calm editorial presentation; approved wave artwork stays in flow.css / flow.js. */
.headline-line{display:block}
.accent-cyan{color:#85e1e5}.accent-coral{color:#ff9ca7}.accent-violet{color:#bca8ff}
.eyebrow{font-size:.875rem;letter-spacing:.12em}
.hero{min-height:max(680px,92svh)}
.hero-copy{padding-block:46px 105px;max-width:720px}
.hero h1{font-size:clamp(3.5rem,5.5vw,4.75rem);font-weight:600;line-height:1.1;letter-spacing:-.055em;margin-block:24px}
.hero-description{max-width:510px;font-size:1.125rem;line-height:1.7;text-wrap:pretty}
.hero-bottom{font-size:.8125rem;bottom:32px}
.hero .eyebrow{font-size:.8125rem}
.button:hover,.button:focus-visible{transform:none}

.about{display:grid;grid-template-columns:.95fr 1.1fr;gap:clamp(45px,7vw,100px);align-items:start;min-height:0;padding-block:110px}
.about-focus{min-height:0}
.about-heading{text-align:left;position:static;padding:0}
.about h2{font-size:clamp(2.5rem,3.7vw,3rem);font-weight:550;line-height:1.2;letter-spacing:-.045em;margin-top:24px;max-width:490px;text-wrap:pretty}
.about-title-greeting{display:block;margin-bottom:9px}
.about .author-line{justify-content:flex-start;margin-top:30px}
.about-copy{display:block;padding:0;background:none;border:0;border-radius:0;backdrop-filter:none;-webkit-backdrop-filter:none}
.about-copy .large-copy{font-size:1.5rem;font-weight:500;line-height:1.55;letter-spacing:-.025em;color:#e9f1fb;max-width:36ch}
.about-body{margin-top:28px;max-width:60ch}
.about-body>p{font-size:1.125rem;line-height:1.7}
.about-copy strong,.intro-description strong,.digital-copy strong{color:#f1f6ff;font-weight:600}
.about-copy .text-link{margin-top:24px}
.author-line div>span{font-size:.875rem}

.section-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:22px 70px;align-items:end;text-align:left;max-width:none;margin:0 0 48px}
.section-intro>.eyebrow{grid-column:1/-1;max-width:none;padding:0;margin:0;font-size:.875rem;line-height:1.65}
.section-intro h2{font-size:clamp(2.5rem,3.7vw,3rem);font-weight:550;letter-spacing:-.045em;line-height:1.2;margin:0}
.section-intro p.intro-description{font-size:1.125rem;line-height:1.7;max-width:55ch;padding:0;margin:0;color:#b4c1d7;text-wrap:pretty}
.services,.publications{padding-block:100px}
.service-list{background:none;border:0;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0}
.service-list details,.service-list details:first-child{border-top:1px solid #c1d8f530}
.service-list details:last-child{border-bottom:1px solid #c1d8f530}
.service-list summary{padding-block:30px;align-items:center;grid-template-columns:1.15fr 1fr 32px;gap:25px}
.service-list h3{font-size:clamp(1.375rem,2vw,1.625rem);font-weight:550}
.service-number{padding:0;font-size:.875rem}
.service-description{font-size:1rem;line-height:1.7}
.expand-icon{width:32px;height:32px;background:#0c2c46a6}
.service-list summary:hover .expand-icon,.service-list summary:focus-visible .expand-icon{background:#174355;border-color:#9ae5e7}
.service-expanded{margin-left:0}
.service-expanded>p,.service-expanded ul{font-size:1rem;line-height:1.7}
.services-footnote{margin-top:26px;font-size:.875rem;line-height:1.7}

.book-grid{gap:40px}
.book-stage{height:445px;border-radius:12px;gap:25px}
.book-stage img{height:330px;max-width:75%;box-shadow:12px 20px 30px #0005;transition:transform .2s ease}
.book-card:hover .book-stage img{transform:none}
.book-card>.text-link:hover span,.book-card>.text-link:focus-visible span{transform:translate(2px,-2px)}
.book-card h3{font-weight:550;font-size:1.75rem;letter-spacing:-.035em}
.book-card>p{font-size:1.125rem;line-height:1.7;max-width:55ch}
.book-meta{margin-top:25px;font-size:.75rem}.book-card>.text-link{margin-top:18px}
.next-book{margin-top:48px}.next-book p{font-size:1rem;line-height:1.7}
.stage-label{font-size:.75rem}

.digital{padding-block:110px;gap:70px}
.digital h2{font-size:clamp(2.5rem,3.5vw,3rem);font-weight:550;line-height:1.2;letter-spacing:-.045em;margin-top:24px}
.digital-intro>p:not(.eyebrow),.digital-copy>p:not(.eyebrow){font-size:1.125rem;line-height:1.7;max-width:55ch;margin-top:24px}
.observ-panel{min-height:440px;border-radius:12px;padding:32px}
.observ-wordmark{font-size:clamp(3.75rem,6vw,5.25rem);margin-block:36px 24px}
.observ-panel>p{font-size:1.75rem}
.contact{padding-block:100px}
.contact h2{font-size:clamp(2.5rem,3.7vw,3rem);font-weight:550;letter-spacing:-.045em;line-height:1.2}
.contact-intro>p:not(.eyebrow){font-size:1.125rem;line-height:1.7;max-width:55ch}
.contact-label,.contact-card .contact-label{font-size:.8125rem}

/* Only short introductions enter; paragraphs, actions and product details stay readable. */
.presentation-ready [data-reveal]{opacity:0;transform:translate3d(0,8px,0);transition:opacity .4s ease,transform .4s ease;transition-delay:0s}
.presentation-ready [data-reveal].is-visible,.presentation-ready [data-reveal]:focus-within{opacity:1;transform:none}
.motion-paused [data-reveal]{opacity:1;transform:none;transition:none}

@media(max-width:1100px){.section-intro{gap:22px 45px}.digital{gap:42px}.observ-panel{padding:27px}.book-stage{height:415px}.book-stage img{height:305px}}
@media(max-width:900px){.about{gap:40px}.section-intro{gap:22px 36px}.hero{min-height:680px}.hero-copy{padding-bottom:100px}.service-list summary{grid-template-columns:1.05fr 1fr 32px;gap:18px}.service-expanded{margin-left:0}.digital{gap:32px}.observ-wordmark{font-size:4rem}}
@media(max-width:760px){
  .hero{min-height:690px;min-height:max(650px,90svh);padding-top:88px;align-items:center}
  .hero-copy{padding-block:55px 105px;max-width:100%}
  .hero h1{font-size:clamp(2.25rem,10.5vw,2.75rem);line-height:1.13;letter-spacing:-.05em;margin-block:23px}
  .hero-description{font-size:1rem;line-height:1.7;max-width:34ch}.hero .eyebrow{font-size:.75rem;max-width:310px}
  .hero-bottom{bottom:30px;font-size:.75rem}
  .about{grid-template-columns:1fr;gap:34px;padding-block:75px}
  .about h2,.section-intro h2,.digital h2,.contact h2{font-size:clamp(1.75rem,7.5vw,2.125rem);line-height:1.25;letter-spacing:-.035em}
  .about h2{max-width:500px}.about .author-line{margin-top:25px}
  .about-copy{padding:0}.about-copy .large-copy{font-size:1.375rem;line-height:1.55;max-width:38ch}.about-body{margin-top:24px;max-width:60ch}.about-body>p{font-size:1rem}
  .services,.publications{padding-block:75px}
  .section-intro{display:block;margin-bottom:35px}.section-intro h2{margin-top:20px}
  .section-intro>.eyebrow,.eyebrow{font-size:.8125rem;letter-spacing:.1em}
  .section-intro p.intro-description{font-size:1rem;line-height:1.7;margin-top:23px;max-width:55ch}
  .service-list summary{grid-template-columns:minmax(0,1fr) 32px;gap:10px 12px;padding-block:25px;align-items:start}
  .service-list h3{font-size:1.375rem;line-height:1.35}.service-number{padding-top:3px}
  .service-description{font-size:1rem;line-height:1.7;grid-column:1;grid-row:2}.expand-icon{grid-column:2;grid-row:1}.service-expanded{margin-left:0}.service-expanded>p{font-size:1rem}
  .book-grid{gap:45px}.book-stage{height:405px;gap:22px}.book-stage img{height:295px;max-width:76%}
  .book-card h3{font-size:1.625rem}.book-card>p{font-size:1rem}.book-meta{gap:8px;flex-wrap:wrap}.next-book{margin-top:42px}
  .digital{padding-block:75px;gap:35px}.digital-intro>p:not(.eyebrow),.digital-copy>p:not(.eyebrow){font-size:1rem}
  .observ-panel{min-height:390px;padding:28px}.observ-wordmark{font-size:4.5rem}.observ-panel>p{font-size:1.5rem}
  .contact{padding-block:75px}.contact-intro>p:not(.eyebrow){font-size:1rem}.contact-grid{gap:35px}
  .presentation-ready [data-reveal]{transform:none}
}
@media(max-width:370px){.book-stage{height:370px}.book-stage img{height:265px}.service-list h3{font-size:1.25rem}.observ-wordmark{font-size:4rem}.observ-panel{padding:24px}.eyebrow{letter-spacing:.08em}}
@media(prefers-reduced-motion:reduce){.presentation-ready [data-reveal]{opacity:1;transform:none;transition:none}}
@media print{.presentation-ready [data-reveal]{opacity:1;transform:none}}
