*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--ink);color:var(--text);font:400 16px/1.6 var(--font);-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
::selection{background:var(--teal);color:var(--ink)}
a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}
button,a,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid var(--teal);outline-offset:6px}
[hidden]{display:none!important}
.wrap{width:min(var(--wrap),calc(100% - 112px));margin-inline:auto}
.skip-link{position:fixed;z-index:100;left:16px;top:12px;padding:12px 20px;background:var(--teal);color:var(--ink);transform:translateY(-160%)}.skip-link:focus{transform:none}
.site-header{position:fixed;top:0;inset-inline:0;height:82px;padding:0 48px;display:flex;align-items:center;gap:32px;z-index:30;background:rgba(17,19,21,.88);border-bottom:1px solid rgba(170,179,181,.13);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand img{object-fit:contain}
.desktop-nav{display:flex;gap:30px;margin:auto;font-size:13px;color:#ccd2d0}.desktop-nav a{padding-block:14px;transition:color .2s}.desktop-nav a:hover{color:var(--teal)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;min-height:52px;padding:14px 23px;background:var(--teal);color:var(--button-text);border:1px solid transparent;border-radius:var(--radius);font-size:15px;font-weight:500;line-height:1.3;transition:background .2s,transform .2s}
.button:hover{background:#3cd4b2;transform:translateY(-2px)}.button span{font-size:22px;line-height:1}.button-small{min-height:40px;padding:9px 15px;gap:20px;font-size:13px}
.text-link{display:inline-flex;align-items:center;gap:16px;min-height:48px;font-size:15px;font-weight:500}.text-link span{display:inline-block;transition:transform .2s}.text-link:hover span{transform:translate(3px,-2px)}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;line-height:1.5}
.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--teal);flex-shrink:0}
.light-section{background:var(--paper);color:var(--dark-text);color-scheme:light;--teal:var(--teal-ink)}
h2{font-size:clamp(38px,4.5vw,66px);font-weight:500;line-height:1.06;letter-spacing:-.055em}
.muted{color:var(--dark-muted)}.accent{color:var(--teal)}.lead{font-size:18px;line-height:1.65;max-width:490px;color:var(--dark-muted);margin-top:28px;letter-spacing:-.01em}
.section-index{color:var(--dark-muted);font-size:10px;letter-spacing:.1em}
.product-intro{padding:130px 0 40px}.intro-grid{display:grid;grid-template-columns:35% 65%;gap:0}.intro-grid>.eyebrow{align-self:start;padding-top:10px}
.product-story{display:grid;grid-template-columns:60% 32%;justify-content:space-between;align-items:start;position:relative;margin-top:95px}
.story-visual{position:sticky;top:calc(50vh - 245px);align-self:start;margin-block:80px 110px;min-width:0}
.story-window{border:1px solid #bac9c4;border-radius:7px;overflow:hidden;box-shadow:0 24px 64px -36px #3d554d50;background:var(--paper)}
.story-window-label{display:flex;align-items:center;gap:9px;border-bottom:1px solid #cedad7;min-height:36px;padding:0 15px;font-size:9px;color:var(--dark-muted);background:#eaf0ef}.story-window-label>span:last-child{margin-left:auto;font-size:8px}
.story-images{position:relative;aspect-ratio:1.6;overflow:hidden}.story-images img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .45s ease,transform .65s ease;transform:translateY(8px)}.story-images img.is-active{opacity:1;transform:none}
.visual-caption{font-size:10px;color:var(--dark-muted);margin-top:18px}.story-progress{display:flex;gap:5px;margin-top:15px}.story-progress span{height:2px;width:25px;background:#cedad7}.story-progress span.is-active{background:var(--teal-ink)}
.story-chapter{min-height:75vh;display:flex;flex-direction:column;justify-content:center;padding:60px 0;scroll-margin-top:130px}.chapter-number{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-ink);margin-bottom:22px}
.story-chapter h3{font-size:clamp(25px,2.45vw,36px);font-weight:500;line-height:1.12;letter-spacing:-.04em}.story-chapter p{font-size:15px;color:var(--dark-muted);margin-top:22px;line-height:1.7}.story-chapter p+p{margin-top:13px}.story-chapter .text-link{margin-top:23px;color:var(--teal-ink);font-size:13px;align-self:start}
.mobile-section{overflow:clip;padding:155px 0 115px}.mobile-grid{display:grid;grid-template-columns:46% 54%;align-items:center;gap:0;min-height:690px}.mobile-copy{position:relative;z-index:2}.mobile-copy .section-index{color:var(--muted);margin-bottom:36px}.mobile-copy h2{font-size:clamp(44px,5.2vw,74px)}.mobile-copy .lead{color:var(--muted);font-size:17px;max-width:390px}.mobile-copy .text-link{color:var(--teal);margin-top:30px}.quiet-note{font-size:11px;color:var(--muted);margin-top:18px}
.phone-composition{position:relative;height:720px;perspective:1400px;--phone-progress:.5}.phone{position:absolute;width:260px;background:var(--paper);border:7px solid #323a37;border-radius:28px;overflow:hidden;box-shadow:0 25px 80px -15px #0009;will-change:transform;transform-style:preserve-3d}.phone img{width:100%;height:auto}
.phone-back{top:0;left:4%;transform:translateY(calc((var(--phone-progress) - .5) * -80px)) rotateY(18deg) rotateZ(-9deg);border-color:#313a36}.phone-front{top:120px;right:0;transform:translateY(calc((var(--phone-progress) - .5) * 70px)) rotateY(-13deg) rotateZ(8deg);border-color:#64746d}
.phone-caption{position:absolute;bottom:20px;left:10%;font-size:11px;color:var(--muted);line-height:1.6}.phone-shadow{position:absolute;bottom:10%;left:0;right:0;height:20%;border:1px solid #32453c;border-radius:50%;transform:rotateX(72deg) scale(1.4)}
.audience-section{padding:125px 0 100px}.section-heading .section-index{margin-bottom:32px}.audience-list{margin-top:65px}.audience-list article{display:grid;grid-template-columns:5% 31% 42% 22%;align-items:start;gap:0;border-top:1px solid #cedad7;padding:35px 0}.audience-number{font-size:11px;color:var(--dark-muted);padding-top:5px}.audience-list h3{font-size:23px;font-weight:500;line-height:1.2;letter-spacing:-.035em;padding-right:25px}.audience-list p{font-size:14px;line-height:1.7;color:var(--dark-muted);max-width:390px;padding-right:25px}.audience-detail{font-size:10px;line-height:1.6;text-align:right;color:var(--teal-ink);padding-top:5px}
.details-section{padding:50px 0 120px}.details-grid{display:grid;grid-template-columns:46% 46%;justify-content:space-between;border-top:1px solid #cedad7;padding-top:100px}.details-grid .section-index{margin-bottom:32px}.details-grid .lead{font-size:16px;max-width:355px}.detail-list article{display:flex;gap:24px;margin-bottom:35px}.detail-list article>span{color:var(--teal-ink);font-size:23px;line-height:1.2}.detail-list h3{font-size:18px;line-height:1.3;font-weight:500;letter-spacing:-.015em}.detail-list p{font-size:14px;color:var(--dark-muted);margin-top:9px;max-width:390px}
.faq-section{padding:30px 0 140px}.faq-grid{display:grid;grid-template-columns:38% 62%;border-top:1px solid #cedad7;padding-top:90px}.faq-grid .section-index{margin-bottom:30px}.faq-list details{border-bottom:1px solid #cedad7}.faq-list details:first-child{border-top:1px solid #cedad7}.faq-list summary{position:relative;display:flex;justify-content:space-between;gap:25px;align-items:center;cursor:pointer;padding:24px 0;font-size:17px;line-height:1.4;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{position:relative;width:16px;height:16px;flex-shrink:0}.faq-list summary span::before,.faq-list summary span::after{content:'';position:absolute;top:7px;left:1px;width:14px;height:1px;background:var(--dark-muted)}.faq-list summary span::after{transform:rotate(90deg);transition:transform .2s}.faq-list details[open] summary span::after{transform:rotate(0)}.faq-list details p{padding:0 35px 25px 0;font-size:14px;color:var(--dark-muted);max-width:660px}
.closing-section{position:relative;overflow:clip;padding:125px 0 0;text-align:center}.closing-section .eyebrow{justify-content:center;color:var(--muted);font-size:10px;margin-bottom:35px}.closing-section h2{font-size:clamp(40px,5.6vw,80px)}.closing-section p:not(.eyebrow){color:var(--muted);margin-top:28px;font-size:16px}.closing-section .button{margin-top:30px}.closing-wordmark{font-size:clamp(110px,25.7vw,420px);font-weight:600;letter-spacing:-.08em;line-height:.95;white-space:nowrap;color:#212927;margin:85px 0 -3.5vw;user-select:none}.closing-wordmark span{color:#295747}
.site-footer{position:relative;display:grid;grid-template-columns:18% 40% 26% 16%;gap:0;align-items:center;padding:40px 0 45px;border-top:1px solid var(--line);background:var(--ink)}.site-footer p{color:var(--muted);font-size:11px;line-height:1.6}.site-footer nav{display:flex;flex-wrap:wrap;gap:0 23px;min-width:0;font-size:11px}.site-footer nav a{min-height:44px;display:flex;align-items:center;white-space:nowrap}.site-footer a:hover{color:var(--teal)}.copyright{font-size:10px;color:var(--muted);text-align:right}
.menu-toggle{display:none;background:transparent;border:0;color:var(--text);height:44px;width:44px;padding:11px}.menu-toggle span{display:block;background:currentColor;height:1px;margin:7px 0;transition:transform .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.mobile-nav{position:absolute;top:100%;inset-inline:0;background:var(--ink);border-bottom:1px solid var(--line);padding:20px 24px}.mobile-nav a{display:block;padding:15px 0}
/* Progressive enhancement: all text and every chapter are usable without JS. */
html:not(.enhanced) .story-visual{position:relative;top:0}.error-page{min-height:100vh;display:grid;place-content:center;padding:40px}.error-page h1{font-size:72px}.error-page p{max-width:420px;margin:28px 0}.error-page .button{justify-self:start}

@media(max-width:1100px){.wrap{width:calc(100% - 72px)}.site-header{padding-inline:32px}.product-story{grid-template-columns:57% 37%}.story-visual{top:calc(50vh - 190px)}.phone{width:225px}.phone-composition{height:630px}.mobile-grid{min-height:620px}.audience-list article{grid-template-columns:5% 31% 43% 21%}.audience-list h3{font-size:21px}.site-footer{grid-template-columns:22% 38% 40%;row-gap:20px}.copyright{grid-column:3}}
@media(max-width:800px){
  html{scroll-padding-top:90px}.wrap{width:calc(100% - 40px)}.site-header{height:70px;padding-inline:20px;gap:12px}.site-header .brand img{width:108px}.desktop-nav{display:none}.site-header>.button{margin-left:auto;gap:12px;font-size:11px;min-height:36px;padding:9px 11px}.site-header>.button span{font-size:17px}.menu-toggle{display:block;flex-shrink:0;width:34px;padding:6px}
  h2{font-size:clamp(37px,7.2vw,54px)}.lead{font-size:16px;margin-top:24px}.product-intro{padding:78px 0 0}.intro-grid{display:block}.intro-grid>.eyebrow{margin-bottom:29px;padding:0}.intro-grid>div{max-width:520px}.product-story{display:block;margin-top:40px}.story-visual{position:sticky;top:84px;z-index:3;margin:0; padding:0 0 12px;background:var(--paper)}.story-window-label{font-size:8px;min-height:27px;padding-inline:10px}.story-window-label>span:last-child{font-size:7px}.story-images{aspect-ratio:1.72}.visual-caption{font-size:8px;margin-top:9px}.story-progress{margin-top:8px}.story-chapter{min-height:65vh;max-width:540px;padding:44px 0 85px}.story-chapter h3{font-size:32px}.story-chapter p{font-size:14px;max-width:500px}.chapter-number{font-size:9px;margin-bottom:16px}.story-chapter .text-link{margin-top:15px}
  .mobile-section{padding:80px 0 50px}.mobile-grid{display:block}.mobile-copy .section-index{font-size:9px;margin-bottom:28px}.mobile-copy h2{font-size:54px}.mobile-copy .lead{font-size:16px}.mobile-copy .text-link{margin-top:20px}.phone-composition{height:670px;margin:65px auto 0;max-width:490px}.phone{width:245px}.phone-back{left:5%;top:0}.phone-front{right:3%;top:115px}.phone-caption{left:7%;bottom:15px}
  .audience-section{padding:78px 0 48px}.section-heading .section-index{margin-bottom:26px}.audience-list{margin-top:40px}.audience-list article{grid-template-columns:30px 1fr;padding:26px 0;gap:12px 0}.audience-list h3{font-size:23px;padding-right:0}.audience-list p{grid-column:2;max-width:540px;padding:0}.audience-detail{grid-column:2;text-align:left;font-size:10px;padding:0}.audience-number{padding-top:3px}
  .details-section{padding:0 0 70px}.details-grid{display:block;padding-top:65px}.details-grid .section-index{margin-bottom:26px}.details-grid .lead{max-width:460px}.detail-list{margin-top:38px}.detail-list article{gap:20px;margin-bottom:26px}.detail-list p{max-width:490px;font-size:14px}.details-grid h2 br{display:none}
  .faq-section{padding:0 0 75px}.faq-grid{display:block;padding-top:60px}.faq-grid h2 br{display:none}.faq-grid .section-index{margin-bottom:25px}.faq-list{margin-top:34px}.faq-list summary{font-size:16px;padding:22px 0}.faq-list details p{padding-right:20px}
  .closing-section{padding-top:80px}.closing-section .eyebrow{font-size:9px;margin-bottom:27px}.closing-section h2{font-size:clamp(34px,7.6vw,57px)}.closing-section p:not(.eyebrow){font-size:15px}.closing-wordmark{margin-top:70px;font-size:26vw}.site-footer{grid-template-columns:1fr 1fr;align-items:start;row-gap:24px;padding:30px 0}.site-footer p{font-size:10px;text-align:right}.site-footer nav{grid-column:1/-1;font-size:11px;gap:0 20px}.copyright{grid-column:2;align-self:center}.site-footer .brand img{width:110px}
}
@media(max-width:420px){.wide-only{display:none}.phone{width:205px}.phone-composition{height:590px}.phone-back{left:0}.phone-front{right:0;top:108px}.phone-caption{bottom:18px;left:3%;font-size:10px}.mobile-copy h2{font-size:48px}.site-footer nav{gap:0 13px;font-size:10px}.story-chapter h3{font-size:30px}.story-chapter{min-height:620px}.closing-section .eyebrow{font-size:8px}}
@media(max-width:350px){.site-header{padding-inline:14px;gap:6px}.site-header .brand img{width:94px}.site-header>.button{font-size:10px;gap:7px;padding-inline:9px}.wrap{width:calc(100% - 32px)}.phone{width:177px}.phone-composition{height:520px}.phone-caption{bottom:12px}.mobile-copy h2{font-size:43px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.phone{transform:none!important;will-change:auto}.phone-shadow{display:none}.story-visual{position:relative;top:0}.story-chapter{min-height:0;padding:32px 0}.button:hover{transform:none}.story-images img{transform:none}}
