/* Isolated direction study: hero=scroll. Other hero options remain unchanged. */
.product-reveal { display: none; }
.product-definition { display:none; }
.hero-category { display:none; }
html[data-hero="scroll"] .site-canvas { overflow:clip; }
html[data-hero="scroll"] #features,
html[data-hero="scroll"] #how,
html[data-hero="scroll"] #privacy,
html[data-hero="scroll"] #download,
html[data-hero="scroll"] #newsletter { scroll-margin-top:105px; }
html[data-hero="scroll"] { --type-display:clamp(78px,6.8vw,90px); --type-section:clamp(56px,4.8vw,64px); --type-cta:var(--type-section); --type-expressive:clamp(30px,3vw,40px); --type-lead:clamp(20px,1.75vw,24px); --type-body:16px; --type-card:24px; --type-small:13px; }
html[data-hero="scroll"] .hero { display:flex; flex-direction:column; justify-content:center; align-items:center; height:auto; min-height:calc(100svh - 100px); padding-block:110px 135px; }
@media(min-width:768px) and (max-width:1439px) { html[data-hero="scroll"] .hero { padding-top:130px; } }
html[data-hero="scroll"] .hero-copy { width:100%; display:flex; flex-direction:column; align-items:center; text-align:center; padding:0; }
html[data-hero="scroll"] .hero-category { display:block; margin-bottom:24px; font:700 11px/1 var(--sans); letter-spacing:.18em; color:rgba(255,255,255,.66); }
html[data-hero="scroll"] .hero h1 { max-width:920px; margin-bottom:28px; font:400 var(--type-display)/1.04 var(--serif); letter-spacing:-.045em; }
.hero-kern-line { display:block; white-space:pre; }
.hero-kern-word { display:inline-block; }
.hero-kern-space { white-space:pre; }
.hero-kern-letter { display:inline-block; position:relative; }
.hero-mobile-line { display:none; }
.hero-mobile-line::before { content:attr(data-text); }
html[data-hero="scroll"] .hero-copy>p { max-width:650px; margin:0; font:17px/1.62 var(--sans); color:rgba(255,255,255,.83); }
html[data-hero="scroll"] .hero-copy>p strong { color:#fff; font-weight:700; }
html[data-hero="scroll"] .hero-download { display:flex; align-items:center; flex-direction:column-reverse; gap:20px; margin-top:33px; }
html[data-hero="scroll"] .hero .download-heading { margin:0; justify-content:center; }
html[data-hero="scroll"] .hero .download-heading>span:first-child { display:none; }
html[data-hero="scroll"] .hero .featured-badge { width:166px; height:58px; margin:13px 0; opacity:.94; transform:scale(1.52); transform-origin:center; }
html[data-hero="scroll"] .hero .featured-laurels { width:166px; height:58px; }
html[data-hero="scroll"] .hero .featured-badge small { width:58px; font-size:10px; line-height:1.12; }
html[data-hero="scroll"] .hero .store-links { justify-content:center; gap:12px; }
html[data-hero="scroll"] .hero .store-wrap,html[data-hero="scroll"] .hero-phone { display:none; }
html[data-hero="scroll"] .hero .store-button { height:55px; min-width:180px; border-radius:14px; }
html[data-hero="scroll"] .hero .store-apple { background:#f6f7f8; color:#1d3557; }
html[data-hero="scroll"] .hero .qr-button { min-width:158px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.36); }
html[data-hero="scroll"] .hero .qr-button strong { font-size:17px; }
html[data-hero="scroll"] .hero .qr-image { width:40px; height:40px; }
html[data-hero="scroll"] .product-reveal { display:block; height:205vh; position:relative; margin-inline:auto; width:min(1510px,calc(100% - 36px)); }
html[data-hero="scroll"] .product-definition { display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); column-gap:95px; row-gap:24px; align-items:start; padding-block:240px 135px; }
html[data-hero="scroll"] .product-definition>span { grid-column:1; color:rgba(255,255,255,.62); font:700 11px/1.2 var(--sans); letter-spacing:.18em; }
html[data-hero="scroll"] .product-definition h2 { grid-column:1; margin:0; max-width:470px; color:#fff; font:400 var(--type-section)/1.06 var(--serif); letter-spacing:-.04em; }
html[data-hero="scroll"] .product-definition>div { grid-column:2; grid-row:1/span 2; display:grid; gap:30px; padding-top:2px; }
html[data-hero="scroll"] .product-definition p { margin:0; color:rgba(255,255,255,.7); font:400 var(--type-lead)/1.45 var(--sans); letter-spacing:-.02em; }
html[data-hero="scroll"] .product-definition p strong { color:#fff; font-weight:700; }
html[data-hero="scroll"] .story-intro h2 { font-style:normal; font-weight:400; }
html[data-hero="scroll"] .story-intro h2 br { display:none; }
html[data-hero="scroll"] .how-core { display:none; }
html[data-hero="scroll"] .story-section { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(280px,.72fr) minmax(540px,1.28fr); align-items:center; gap:60px; width:min(1510px,calc(100% - 36px)); min-height:570px; margin:72px auto 105px; padding:70px 80px; overflow:hidden; border:1px solid rgba(255,255,255,.25); border-radius:32px; background:linear-gradient(135deg,rgba(119,151,188,.28),rgba(67,105,149,.3) 54%,rgba(40,84,123,.34)); box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 26px 75px rgba(4,15,36,.16); -webkit-backdrop-filter:blur(30px) saturate(125%); backdrop-filter:blur(30px) saturate(125%); }
html[data-hero="scroll"] .story-section::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(112deg,rgba(255,255,255,.14),transparent 36%,rgba(130,181,215,.08) 72%,rgba(255,255,255,.08)); pointer-events:none; }
html[data-hero="scroll"] .story-intro { display:flex; flex-direction:column; align-self:stretch; height:430px; text-align:left; }
html[data-hero="scroll"] .story-intro h2 { order:2; max-width:760px; display:flex; flex-direction:column; align-items:flex-start; gap:1px; margin:0; color:#fff; font-family:var(--serif); letter-spacing:-.04em; }
html[data-hero="scroll"] .memory-heading-line { display:block; width:max-content; max-width:100%; white-space:nowrap; font-size:clamp(48px,4vw,54px); line-height:.98; }
html[data-hero="scroll"] .memory-heading-line em { color:rgba(255,255,255,.58); font-size:.7em; font-weight:400; }
html[data-hero="scroll"] .memory-heading-line strong { font-size:1em; font-style:italic; font-weight:700; }
html[data-hero="scroll"] .story-intro p:empty { display:none; }
html[data-hero="scroll"] .story-intro p { display:contents; color:rgba(255,255,255,.62); font:400 14px/1.5 var(--sans); font-style:normal; }
html[data-hero="scroll"] .story-intro p strong { order:1; margin:0 0 34px; color:rgba(255,255,255,.72); font:700 12px/1.2 var(--sans); letter-spacing:.1em; text-transform:uppercase; }
html[data-hero="scroll"] .story-intro p span { order:3; display:block; max-width:350px; margin-top:42px; color:rgba(255,255,255,.62); font:400 14px/1.5 var(--sans); }
html[data-hero="scroll"] .story-carousel { position:relative; width:100%; height:430px; margin:0; overflow:visible; }
html[data-hero="scroll"] .story-viewport { position:relative; width:100%; height:100%; overflow:hidden; border-radius:24px; touch-action:pan-y; }
html[data-hero="scroll"] .story-track { position:relative; width:100%; height:100%; padding:0; }
html[data-hero="scroll"] .story-carousel .memory-card { position:absolute; left:50%; top:50%; width:285px; height:374px; margin:0; transform:translate(-50%,-50%) scale(.78); opacity:0; filter:blur(5px); pointer-events:none; transition:transform 650ms cubic-bezier(.22,1,.36,1),opacity 450ms ease,filter 450ms ease; }
html[data-hero="scroll"] .story-carousel .memory-card.is-active { z-index:3; transform:translate(-50%,-50%) scale(1); opacity:1; filter:none; pointer-events:auto; }
html[data-hero="scroll"] .story-carousel .memory-card.is-prev { z-index:1; transform:translate(calc(-50% - 230px),-50%) scale(.78) rotate(-2deg); opacity:.3; filter:blur(3px); }
html[data-hero="scroll"] .story-carousel .memory-card.is-next { z-index:1; transform:translate(calc(-50% + 230px),-50%) scale(.78) rotate(2deg); opacity:.3; filter:blur(3px); }
html[data-hero="scroll"] .story-carousel .memory-card.is-hidden { opacity:0; }
html[data-hero="scroll"] .story-arrow { position:absolute; z-index:5; top:50%; transform:translateY(-50%); background:rgba(255,255,255,.13); backdrop-filter:blur(10px); }
html[data-hero="scroll"] [data-story-prev] { left:18px; }
html[data-hero="scroll"] [data-story-next] { right:18px; }
html[data-hero="scroll"] .features-section { min-height:0; padding:105px 0 120px; }
html[data-hero="scroll"] .feature-grid-heading { margin-bottom:46px; text-align:left; }
html[data-hero="scroll"] .feature-grid-heading h2 { display:flex; flex-direction:column; align-items:flex-start; gap:5px; margin:0; color:#fff; letter-spacing:-.04em; }
html[data-hero="scroll"] .feature-grid-heading h2 strong { font:700 var(--type-section)/1.02 var(--serif); }
html[data-hero="scroll"] .feature-grid-heading h2 em { color:rgba(255,255,255,.62); font:italic 400 var(--type-expressive)/1.08 var(--serif); }
html[data-hero="scroll"] .feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
html[data-hero="scroll"] .feature-cube,html[data-hero="scroll"] .feature-cube-core { position:relative; isolation:isolate; min-height:316px; overflow:hidden; display:grid; grid-template-rows:140px auto; align-content:start; gap:22px; padding:22px 24px 24px; border:1px solid rgba(255,255,255,.14); border-radius:21px; background:linear-gradient(145deg,rgba(44,77,115,.68),rgba(20,46,78,.8)); box-shadow:inset 0 1px 0 rgba(255,255,255,.08); }
html[data-hero="scroll"] .feature-cube img,html[data-hero="scroll"] .feature-cube-core img { align-self:center; justify-self:start; width:140px; height:140px; object-fit:contain; object-position:left center; opacity:.92; transform-origin:left center; }
html[data-hero="scroll"] .feature-grid>.feature-cube:nth-child(1)>img { transform:scale(.82); }
html[data-hero="scroll"] .feature-grid>.feature-cube:nth-child(3)>img { transform:scale(.84); }
html[data-hero="scroll"] .feature-grid>.feature-cube:nth-child(5)>img { transform:scale(.94); }
html[data-hero="scroll"] .feature-cube img.feature-sharing-art { content:url('/preview/assets/feature-easy-sharing-family-white.webp?v=3'); width:102px; height:140px; object-position:left center; background:transparent; filter:none!important; mix-blend-mode:normal!important; }
html[data-hero="scroll"] .feature-cube>div { display:grid; grid-template-rows:34px minmax(72px,auto); align-content:start; width:100%; }
html[data-hero="scroll"] .feature-cube h3 { align-self:start; max-width:320px; margin:0; color:#fff; font:700 var(--type-card)/1.12 var(--sans); letter-spacing:-.025em; }
html[data-hero="scroll"] .feature-cube p { max-width:325px; margin:0; color:rgba(255,255,255,.68); font:var(--type-body)/1.5 var(--sans); }
html[data-hero="scroll"] .feature-coming-soon { display:flex; align-items:center; gap:24px; margin-top:42px; padding:18px 22px; border:1px solid rgba(255,255,255,.12); border-radius:16px; background:rgba(255,255,255,.045); }
html[data-hero="scroll"] .feature-coming-soon>span { flex:none; padding:7px 11px; border-radius:7px; background:#eef3f8; color:#1d3557; font:700 10px/1 var(--sans); letter-spacing:.13em; }
html[data-hero="scroll"] .coming-soon-summary { display:none; }
html[data-hero="scroll"] .feature-coming-soon>div { display:flex; align-items:center; flex:1; min-width:0; }
html[data-hero="scroll"] .feature-coming-soon article { min-height:0; flex:1; display:flex; align-items:center; padding:0 22px; border:0; border-left:1px solid rgba(255,255,255,.13); border-radius:0; background:transparent; }
html[data-hero="scroll"] .feature-coming-soon img { width:52px; height:52px; object-fit:contain; filter:brightness(0) invert(1); opacity:.58; }
html[data-hero="scroll"] .feature-coming-soon strong { max-width:none; color:rgba(255,255,255,.76); font:600 13px/1.25 var(--sans); white-space:nowrap; }
html[data-hero="scroll"] .social-proof { min-height:700px; height:auto; padding:110px 0 95px; overflow:hidden; }
html[data-hero="scroll"] .social-proof .testimonial-rise { width:min(1250px,calc(100% - 120px)); padding:0; text-align:left; }
html[data-hero="scroll"] .social-proof-heading { display:grid; grid-template-columns:1.05fr .95fr; align-items:end; column-gap:90px; margin-bottom:54px; }
html[data-hero="scroll"] .social-proof-heading>span { grid-column:1/-1; margin-bottom:19px; color:rgba(255,255,255,.6); font:700 11px/1 var(--sans); letter-spacing:.16em; }
html[data-hero="scroll"] .social-proof-heading h2 { margin:0; color:#fff; font:italic 700 var(--type-section)/1 var(--serif); letter-spacing:-.04em; }
html[data-hero="scroll"] .social-proof-heading>p { max-width:420px; margin:0 0 5px; color:rgba(255,255,255,.68); font:17px/1.55 var(--sans); }
html[data-hero="scroll"] .testimonial-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
html[data-hero="scroll"] .testimonial-card { min-height:305px; display:flex; flex-direction:column; padding:30px; border:1px solid rgba(255,255,255,.16); border-radius:24px; background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035)); opacity:.68; transform:translateY(10px) scale(.985); transition:opacity .55s ease,transform .65s cubic-bezier(.22,1,.36,1),background .55s ease,border-color .55s ease; }
html[data-hero="scroll"] .testimonial-loop-clone { display:none; }
html[data-hero="scroll"] .testimonial-card.is-active { opacity:1; transform:translateY(0) scale(1); border-color:rgba(255,255,255,.32); background:linear-gradient(145deg,rgba(108,145,187,.3),rgba(29,62,99,.48)); }
html[data-hero="scroll"] .testimonial-stars { color:#f5c542; font:16px/1 var(--sans); letter-spacing:.12em; }
html[data-hero="scroll"] .testimonial-card blockquote { margin:32px 0 44px; color:#fff; font:italic 700 clamp(25px,2.15vw,34px)/1.18 var(--serif); letter-spacing:-.025em; }
html[data-hero="scroll"] .testimonial-card footer { display:flex; align-items:center; gap:12px; margin-top:auto; }
html[data-hero="scroll"] .testimonial-card footer>span { width:38px; height:38px; display:grid; place-items:center; flex:none; border-radius:50%; background:#f8f6ef; color:#1d3557; font:700 14px/1 var(--sans); }
html[data-hero="scroll"] .testimonial-card footer>img { width:42px; height:42px; flex:none; border-radius:50%; object-fit:cover; object-position:center; border:1px solid rgba(255,255,255,.38); }
html[data-hero="scroll"] .testimonial-card footer p { display:flex; flex-direction:column; gap:3px; margin:0; }
html[data-hero="scroll"] .testimonial-card footer strong { color:#fff; font:700 14px/1.2 var(--sans); }
html[data-hero="scroll"] .testimonial-card footer small { color:rgba(255,255,255,.58); font:12px/1.2 var(--sans); }
html[data-hero="scroll"] .testimonial-controls { display:flex; justify-content:center; gap:9px; margin:30px 0 24px; }
html[data-hero="scroll"] .testimonial-controls button { width:8px; height:8px; padding:0; border:0; border-radius:99px; background:rgba(255,255,255,.34); transition:width .35s ease,background .35s ease; }
html[data-hero="scroll"] .testimonial-controls button.is-active { width:30px; background:#fff; }
html[data-hero="scroll"] .social-proof .founder-line { display:none; }
html[data-hero="scroll"] .faq-section { position:relative; display:grid; grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr); gap:clamp(70px,9vw,150px); padding-top:110px; padding-bottom:120px; }
html[data-hero="scroll"] .faq-heading>span { display:block; margin-bottom:24px; color:rgba(255,255,255,.58); font:700 11px/1 var(--sans); letter-spacing:.17em; }
html[data-hero="scroll"] .faq-heading h2 { margin:0; color:#fff; font:700 var(--type-section)/.98 var(--serif); letter-spacing:-.045em; }
html[data-hero="scroll"] .faq-heading h2 em { color:rgba(255,255,255,.68); font-weight:400; }
html[data-hero="scroll"] .faq-heading>p { max-width:330px; margin:30px 0 0; color:rgba(255,255,255,.68); font:16px/1.55 var(--sans); }
html[data-hero="scroll"] .faq-list { border-top:1px solid rgba(255,255,255,.22); }
html[data-hero="scroll"] .faq-list details { border-bottom:1px solid rgba(255,255,255,.22); }
html[data-hero="scroll"] .faq-list summary { display:flex; align-items:center; justify-content:space-between; gap:28px; min-height:82px; padding:20px 2px; color:#fff; cursor:pointer; list-style:none; font:700 20px/1.3 var(--sans); letter-spacing:-.02em; }
html[data-hero="scroll"] .faq-list summary::-webkit-details-marker { display:none; }
html[data-hero="scroll"] .faq-list summary::marker { content:""; }
html[data-hero="scroll"] .faq-chevron { position:relative; width:36px; height:36px; flex:0 0 36px; border:1px solid rgba(255,255,255,.26); border-radius:50%; transition:background .22s ease,border-color .22s ease; }
html[data-hero="scroll"] .faq-chevron::after { content:""; position:absolute; top:12px; left:13px; width:7px; height:7px; border-right:2px solid #fff; border-bottom:2px solid #fff; transform:rotate(45deg); transition:top .25s ease,transform .25s ease; }
html[data-hero="scroll"] .faq-list summary:hover .faq-chevron { border-color:rgba(255,255,255,.55); background:rgba(255,255,255,.08); }
html[data-hero="scroll"] .faq-list details[open] .faq-chevron::after { top:15px; transform:rotate(225deg); }
html[data-hero="scroll"] .faq-answer { padding:0 70px 27px 2px; }
html[data-hero="scroll"] .faq-answer p { max-width:680px; margin:0; color:rgba(255,255,255,.7); font:16px/1.62 var(--sans); }
html[data-hero="scroll"] .privacy-section>h2 { margin-bottom:52px; font:700 var(--type-section)/1.03 var(--serif); letter-spacing:-.04em; }
html[data-hero="scroll"] .privacy-points h3 { margin-bottom:12px; font:700 var(--type-card)/1.12 var(--sans); letter-spacing:-.025em; }
html[data-hero="scroll"] .privacy-points p { max-width:310px; font:var(--type-body)/1.5 var(--sans); }
html[data-hero="scroll"] .download-section h2,
html[data-hero="scroll"] .newsletter-section h2,
html[data-hero="scroll"] .newsletter-word { font:700 var(--type-cta)/.98 var(--serif); letter-spacing:-.04em; }
html[data-hero="scroll"] .product-definition h2,
html[data-hero="scroll"] .feature-grid-heading h2 strong,
html[data-hero="scroll"] .memory-heading-line,
html[data-hero="scroll"] .privacy-section>h2,
html[data-hero="scroll"] .social-proof-heading h2,
html[data-hero="scroll"] .download-section h2,
html[data-hero="scroll"] .newsletter-section h2,
html[data-hero="scroll"] .reveal-story h2 { font-size:var(--type-section); }
html[data-hero="scroll"] .store-links,
html[data-hero="scroll"] .large-stores { gap:14px; }
html[data-hero="scroll"] .hero .store-button,
html[data-hero="scroll"] .download-section .store-button { position:relative; justify-content:flex-start; width:260px; min-width:260px; height:72px; padding:0 23px; gap:14px; border:1px solid rgba(255,255,255,.3); border-radius:22px; background:rgba(255,255,255,.1); color:#fff; box-shadow:inset 0 1px 0 rgba(255,255,255,.14); backdrop-filter:blur(14px); transition:transform .22s ease,box-shadow .22s ease,background .22s ease; }
html[data-hero="scroll"] .hero .store-apple,
html[data-hero="scroll"] .download-section .store-apple { border-color:#fff; background:#fff; color:#1d3557; box-shadow:0 14px 34px rgba(5,18,38,.24); }
html[data-hero="scroll"] .store-button .store-copy { display:flex; flex-direction:column; align-items:flex-start; }
html[data-hero="scroll"] .store-button small { font:500 11px/1.1 var(--sans); opacity:.72; }
html[data-hero="scroll"] .store-button strong { font:700 20px/1.08 var(--sans); letter-spacing:-.02em; }
html[data-hero="scroll"] .hero .store-button,
html[data-hero="scroll"] .download-section .store-button { align-items:center; }
html[data-hero="scroll"] .hero .store-button>strong,
html[data-hero="scroll"] .download-section .store-button>strong { position:relative; top:1px; flex:1; white-space:nowrap; text-align:left; }
html[data-hero="scroll"] .store-button .apple-symbol { width:38px; flex:0 0 38px; font-size:42px; text-align:center; }
html[data-hero="scroll"] .store-button .play-icon { width:38px; height:38px; flex:0 0 38px; }
html[data-hero="scroll"] .hero .qr-button { width:260px; min-width:260px; border-color:rgba(255,255,255,.32); background:rgba(255,255,255,.11); }
html[data-hero="scroll"] .hero .qr-image { width:46px; height:46px; border-radius:7px; }
html[data-hero="scroll"] .store-inactive { opacity:.76; }
html[data-hero="scroll"] .store-button:hover { transform:translateY(-2px); }
html[data-hero="scroll"] .store-apple:hover { box-shadow:0 18px 42px rgba(5,18,38,.28); }
html[data-hero="scroll"] .store-button .soon-tag { position:absolute; z-index:2; top:7px; right:8px; left:auto; transform:none; padding:4px 6px; border-radius:6px; background:rgba(246,243,235,.94); color:#1d3557; font:700 8px/1 var(--sans); letter-spacing:.04em; text-transform:uppercase; }
html[data-hero="scroll"] .site-header .header-download { min-width:128px; height:44px; display:inline-flex; align-items:center; justify-content:center; padding:0 20px; border:1px solid #f6f3eb; border-radius:999px; background:#f6f3eb; color:#1d3557; font:700 14px/1 var(--sans); letter-spacing:-.01em; box-shadow:0 7px 20px rgba(5,18,38,.12); }
html[data-hero="scroll"] .site-header { position:fixed; z-index:25; top:18px; left:50%; width:min(1510px,calc(100% - 36px)); height:72px; transform:translateX(-50%); padding:0 14px 0 24px; border:1px solid rgba(255,255,255,.24); border-radius:24px; background:rgba(20,39,67,.78); box-shadow:0 14px 38px rgba(5,18,38,.18),inset 0 1px 0 rgba(255,255,255,.1); -webkit-backdrop-filter:blur(18px) saturate(135%); backdrop-filter:blur(18px) saturate(135%); }
html[data-hero="scroll"] .site-header nav { gap:28px; font-size:15px; }
html[data-hero="scroll"] .site-header nav>a:not(.header-download),
html[data-hero="scroll"] .site-footer a:not(.wordmark) { opacity:.92; transition:opacity .2s ease; }
html[data-hero="scroll"] .site-header nav>a:not(.header-download):hover,
html[data-hero="scroll"] .site-footer a:not(.wordmark):hover { opacity:.65; }
html[data-hero="scroll"] .site-header .wordmark img { width:92px; }
html[data-hero="scroll"] .footer-coming-link { display:inline-flex; align-items:center; gap:7px; color:rgba(255,255,255,.78); }
html[data-hero="scroll"] .footer-coming-link small { padding:4px 6px; border:1px solid rgba(255,255,255,.18); border-radius:999px; color:rgba(255,255,255,.58); font:700 8px/1 var(--sans); letter-spacing:.06em; text-transform:uppercase; }
html[data-hero="scroll"] .download-section { position:relative; isolation:isolate; padding-top:70px; }
html[data-hero="scroll"] .download-section::before { content:""; position:absolute; z-index:-1; top:0; bottom:0; left:50%; width:max(100vw,1440px); transform:translateX(-50%); border-top:1px solid rgba(255,255,255,.16); background:#1d3557; }
html[data-hero="scroll"] .newsletter-section { border-top:0; }
html[data-hero="scroll"] .download-section { height:330px; display:block; padding-top:68px; }
html[data-hero="scroll"] .download-section h2 { margin:0 0 36px; }
html[data-hero="scroll"] .download-section .large-stores { flex-direction:column; align-items:flex-start; justify-content:flex-start; gap:10px; }
html[data-hero="scroll"] .download-section .store-apple { width:300px; min-width:300px; height:78px; border-radius:24px; }
html[data-hero="scroll"] .download-section .store-wrap { opacity:.48; }
html[data-hero="scroll"] .download-section .store-wrap { display:none; }
html[data-hero="scroll"] .download-section .store-inactive { width:220px; min-width:220px; height:54px; border-color:rgba(255,255,255,.16); background:rgba(255,255,255,.035); box-shadow:none; }
html[data-hero="scroll"] .download-section .store-inactive strong { font-size:17px; }
html[data-hero="scroll"] .download-section .store-inactive .play-icon { width:29px; height:29px; flex-basis:29px; }
html[data-hero="scroll"] .newsletter-section,
html[data-hero="scroll"] .newsletter-inner { min-height:0; height:300px; }
html[data-hero="scroll"] .newsletter-kicker { top:62px; }
html[data-hero="scroll"] .newsletter-section h2 { top:92px; }
html[data-hero="scroll"] .newsletter-row>p { top:166px; }
html[data-hero="scroll"] .newsletter-row form { top:112px; width:390px; }
html[data-hero="scroll"] .newsletter-row .input-row { --newsletter-input-bg:#314a6e; height:68px; border:0; overflow:hidden; background:var(--newsletter-input-bg); box-shadow:inset 0 1px 0 rgba(255,255,255,.08); }
html[data-hero="scroll"] .newsletter-row .input-row input { min-width:285px; border-radius:999px 0 0 999px; background:transparent!important; background-image:none!important; box-shadow:none!important; color:#fff; caret-color:#fff; -webkit-appearance:none; appearance:none; }
html[data-hero="scroll"] .newsletter-row .input-row input:focus { background:transparent!important; }
html[data-hero="scroll"] .newsletter-row .input-row input:-webkit-autofill,
html[data-hero="scroll"] .newsletter-row .input-row input:-webkit-autofill:hover,
html[data-hero="scroll"] .newsletter-row .input-row input:-webkit-autofill:focus { -webkit-text-fill-color:#fff; caret-color:#fff; -webkit-box-shadow:0 0 0 1000px var(--newsletter-input-bg) inset!important; box-shadow:0 0 0 1000px var(--newsletter-input-bg) inset!important; transition:background-color 9999s ease-out 0s; }
html[data-hero="scroll"] .newsletter-row .input-row input::placeholder { color:rgba(255,255,255,.56); }
html[data-hero="scroll"] .newsletter-row .input-row button { width:54px; flex-basis:54px; background:rgba(255,255,255,.14); color:#fff; }
html[data-hero="scroll"] .newsletter-row form.is-success .input-row { padding:7px 18px; }
html[data-hero="scroll"] .newsletter-success { width:100%; height:100%; display:flex; align-items:center; justify-content:center; gap:12px; color:#fff; text-align:left; }
html[data-hero="scroll"] .newsletter-success>span { width:34px; height:34px; flex:0 0 34px; display:grid; place-items:center; border-radius:50%; background:rgba(255,255,255,.16); font:700 18px/1 var(--sans); }
html[data-hero="scroll"] .newsletter-success p { margin:0; color:#fff; font-family:var(--sans); }
html[data-hero="scroll"] .newsletter-success strong,html[data-hero="scroll"] .newsletter-success small { display:block; }
html[data-hero="scroll"] .newsletter-success strong { font-size:15px; line-height:1.15; }
html[data-hero="scroll"] .newsletter-success small { margin-top:3px; color:rgba(255,255,255,.7); font-size:11px; line-height:1.2; }
html[data-hero="scroll"] .newsletter-row form.is-success #newsletter-message { display:none; }
html[data-hero="scroll"] .newsletter-add-another { display:block; width:max-content; margin:9px auto 0; padding:2px 4px; border:0; background:transparent; color:rgba(255,255,255,.62); font:500 11px/1.2 var(--sans); text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
html[data-hero="scroll"] .newsletter-add-another:hover,html[data-hero="scroll"] .newsletter-add-another:focus-visible { color:#fff; }
html[data-hero="scroll"] .newsletter-row form.has-error #newsletter-message { color:#ffb4b4; font-weight:600; }
html[data-hero="scroll"] .newsletter-row form.has-error .input-row { box-shadow:inset 0 0 0 1px rgba(255,128,128,.65),inset 0 1px 0 rgba(255,255,255,.08); }
.reveal-stage { position:sticky; top:108px; height:calc(100vh - 126px); min-height:650px; overflow:hidden; border:1px solid rgba(255,255,255,.3); border-radius:32px; background:linear-gradient(135deg,rgba(102,137,176,.42),rgba(60,96,139,.46) 52%,rgba(31,74,111,.5)); -webkit-backdrop-filter:blur(52px) saturate(138%); backdrop-filter:blur(52px) saturate(138%); color:#fff; box-shadow:inset 0 1px 0 rgba(255,255,255,.38),inset 0 -1px 0 rgba(255,255,255,.08),0 28px 90px rgba(4,15,36,.25); }
.reveal-stage::before { content:""; position:absolute; inset:0; background:linear-gradient(112deg,rgba(255,255,255,.24),transparent 34%,rgba(118,172,211,.09) 70%,rgba(255,255,255,.13)); pointer-events:none; }
.reveal-stage::after { content:""; position:absolute; right:-11%; bottom:-55%; width:70%; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,rgba(139,197,230,.28),transparent 67%); pointer-events:none; }
.reveal-topline,.reveal-bottomline { position:absolute; z-index:4; left:50px; right:50px; display:flex; justify-content:space-between; gap:20px; font:700 10px/1.2 var(--sans); letter-spacing:.15em; opacity:.55; }
.reveal-topline { top:35px; }.reveal-bottomline { bottom:35px; }
.reveal-topline span:first-child,.reveal-bottomline { display:none; }
.reveal-topline span:last-child { margin-left:auto; font-size:0; }
.reveal-topline span:last-child::after { content:"SCROLL TO SEE HOW IT WORKS"; font:700 10px/1.2 var(--sans); letter-spacing:.15em; }
.reveal-layout { position:relative; z-index:2; display:grid; grid-template-columns:1fr 1fr; align-items:center; height:100%; width:min(1130px,calc(100% - 100px)); margin:auto; gap:80px; }
.reveal-story { align-self:center; max-width:475px; }
.reveal-step-number { font:700 13px var(--sans); letter-spacing:.14em; color:rgba(255,255,255,.72); }
.reveal-story h2 { margin:24px 0; font:400 var(--type-section)/1.08 var(--serif); letter-spacing:-.045em; }
.reveal-story h2 em { font-weight:400; }.reveal-story h2 strong { font-weight:700; }.reveal-story p { max-width:395px; font:17px/1.6 var(--sans); color:#425979; }
.reveal-story h2 .reveal-soft { display:inline-block; font-size:.72em; font-weight:400; letter-spacing:-.025em; color:rgba(255,255,255,.68); }
.reveal-story p { color:rgba(255,255,255,.78); }
.reveal-demo-cta { display:inline-flex; align-items:center; gap:12px; min-height:50px; margin-top:30px; padding:0 22px; border:1px solid rgba(255,255,255,.6); border-radius:999px; background:rgba(255,255,255,.1); color:#fff; font:700 14px/1 var(--sans); text-decoration:none; box-shadow:inset 0 1px 0 rgba(255,255,255,.12); transition:background .2s ease,transform .2s ease; }
.reveal-demo-cta:hover { background:rgba(255,255,255,.18); transform:translateY(-2px); }
.reveal-demo-cta span { font-size:20px; font-weight:400; }
.reveal-progress { margin-top:52px; width:180px; height:2px; background:rgba(255,255,255,.25); }.reveal-progress i { display:block; height:100%; width:33%; background:#fff; transition:width .3s ease; }
.reveal-device { --hand-width:213%; --hand-left:-59%; --hand-bottom:-60%; position:relative; isolation:isolate; justify-self:center; width:min(335px,100%); aspect-ratio:335/682; filter:drop-shadow(14px 33px 35px rgba(36,53,78,.24)); transform:translateY(calc((1 - var(--reveal-enter,0)) * 95px)) scale(calc(.86 + var(--reveal-enter,0) * .14)); opacity:calc(.45 + var(--reveal-enter,0) * .55); will-change:transform; }
.reveal-device::before { content:""; position:absolute; z-index:1; width:var(--hand-width); aspect-ratio:2/3; left:var(--hand-left); bottom:var(--hand-bottom); background:url('../assets/phone-hand-v6.webp') center/contain no-repeat; opacity:0; transform:translateY(34px); transition:opacity .45s ease,transform .65s cubic-bezier(.2,.8,.2,1); pointer-events:none; }
.reveal-device::after { content:""; position:absolute; z-index:4; width:var(--hand-width); aspect-ratio:2/3; left:var(--hand-left); bottom:var(--hand-bottom); background:url('../assets/phone-hand-foreground-v1.webp?v=2') center/contain no-repeat; opacity:0; transform:translateY(34px); transition:opacity .45s ease,transform .65s cubic-bezier(.2,.8,.2,1); pointer-events:none; }
html[data-phone-hand="on"] .reveal-device::before { opacity:1; transform:translateY(0); }
html[data-phone-hand="on"] .reveal-device::after { opacity:1; transform:translateY(0); }
.phone-hand-toggle { display:inline-flex; align-items:center; margin-left:8px; padding:7px 12px; border-radius:999px; color:inherit; background:rgba(255,255,255,.12); text-decoration:none; font:700 10px/1 var(--sans); letter-spacing:.04em; }
.reveal-device-frame { position:absolute; z-index:2; inset:0; border-radius:54px; padding:9px; background:#0d1525; border:2px solid #526075; box-shadow:inset 0 0 0 2px #151c29; }
.reveal-device-screen { position:relative; height:100%; border-radius:44px; overflow:hidden; background:#1c2947; color:white; }
.reveal-status { position:absolute; z-index:5; top:17px; left:23px; right:22px; display:flex; justify-content:space-between; color:#111827; font:700 12px var(--sans); }
.reveal-island { position:absolute; z-index:6; top:9px; left:50%; transform:translateX(-50%); width:90px; height:23px; background:#080c15; border-radius:20px; }
.reveal-home-indicator { position:absolute; z-index:6; bottom:9px; left:50%; transform:translateX(-50%); width:108px; height:4px; background:white; border-radius:5px; opacity:.8; }
.reveal-screen { position:absolute; inset:0; padding:74px 22px 35px; display:flex; flex-direction:column; align-items:center; text-align:center; pointer-events:none; will-change:transform; }
.reveal-screen-record { background:#1c2947; }.reveal-screen-speaking { background:#1c2947; }.reveal-screen-memory { background:#1c2947; }
.reveal-brand { font:italic 700 23px var(--serif); }.reveal-screen-kicker { margin:36px 0 9px; font:700 9px var(--sans); letter-spacing:.17em; opacity:.6; }
.reveal-screen h3 { font:italic 700 27px/1.12 var(--serif); margin:0; }
.reveal-mode { display:flex; justify-content:space-around; align-items:center; width:100%; margin-top:26px; padding:7px; border:1px solid #67718c; border-radius:40px; font:12px var(--sans); }.reveal-mode span { opacity:.55; }
.reveal-mic { width:118px; height:118px; margin:auto 0 0; display:grid; place-items:center; color:#1d3557; border:1px solid #8494b5; border-radius:50%; box-shadow:0 0 0 12px #ffffff08,0 0 0 23px #ffffff05; background:#fff; }.reveal-mic svg { width:42px; }
.reveal-screen-instruction { margin:23px 0 auto; font:14px var(--sans); }
.reveal-photos { display:flex; gap:8px; }.reveal-photos span { width:63px; height:61px; border-radius:8px; background:linear-gradient(125deg,#a8bfd8,#6f89b4); }.reveal-photos span:nth-child(2){background:linear-gradient(140deg,#b8bbd3,#797caa)}.reveal-photos span:nth-child(3){background:linear-gradient(120deg,#80a6b4,#c7c6b5)}
.reveal-screen small { margin-top:11px; font:10px var(--sans); opacity:.55; }
.reveal-screen-speaking .reveal-screen-kicker { margin-top:72px; }.reveal-screen-speaking h3 { font-size:35px; }.reveal-wave { margin:auto 0 25px; height:85px; display:flex; gap:5px; align-items:center; }.reveal-wave i { width:3px; height:12px; background:#d4e3ff; border-radius:5px; animation:reveal-wave 1s ease-in-out infinite alternate; }.reveal-wave i:nth-child(3n){height:48px;animation-delay:-.55s}.reveal-wave i:nth-child(4n){height:69px;animation-delay:-.3s}.reveal-wave i:nth-child(5n){height:31px;animation-delay:-.7s}
@keyframes reveal-wave { to { transform:scaleY(.38); opacity:.6; } }
.reveal-spoken { max-width:240px; font:italic 20px/1.35 var(--serif); color:#edf1fc; }.reveal-stop { margin:auto 0 4px; width:78px; height:78px; border-radius:50%; background:#f6f4ef; display:grid; place-items:center; }.reveal-stop span { width:23px; height:23px; border-radius:5px; background:#1d3557; }
.reveal-screen-memory .reveal-screen-kicker { margin:32px 0 17px; }.reveal-finished-card { width:100%; min-height:420px; padding:23px 20px; border-radius:14px; background:#b8d3f3; color:#172744; text-align:left; box-shadow:0 15px 25px #060c1b4d; }.reveal-card-date { font:700 9px var(--sans); letter-spacing:.08em; opacity:.65; }.reveal-finished-card h3 { margin:15px 0 14px; font:italic 700 24px/1.1 var(--serif); }.reveal-finished-card p { margin:0; font:12px/1.5 var(--sans); }.reveal-card-photo { margin-top:20px; width:100%; height:142px; border-radius:8px; background-image:url('../assets/frame-2303-reference.webp'); background-size:1440px 4056px; background-position:-102px -1094px; }.reveal-finished-card small { display:block; color:#283a59; }
.reveal-screen-record,.reveal-screen-memory { background:#fff; color:#1d3557; }
.reveal-screen-record { padding:65px 18px 23px; }
.reveal-screen-record h3 { margin-top:2px; font-size:30px; }
.reveal-screen-record .reveal-mode { height:42px; margin-top:24px; padding:3px; border:2px solid #e0e2e7; background:#f0f1f4; color:#9aa2b1; }
.reveal-screen-record .reveal-mode span { width:50%; height:32px; display:flex; align-items:center; justify-content:center; gap:6px; border-radius:18px; font-weight:700; opacity:1; }
.reveal-screen-record .reveal-mode .active { color:#1d3557; background:#fff; box-shadow:0 2px 5px #16284524; }
.reveal-screen-record .reveal-mode svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.reveal-screen-record .reveal-mode svg rect { fill:currentColor; stroke:none; }
.reveal-screen-record .reveal-mic { flex:none; width:104px; height:104px; margin:auto 0 0; background:#1d3557; color:#fff; border:0; box-shadow:0 7px 22px #1d35573d; }
.reveal-screen-record .reveal-screen-instruction { margin:14px 0 auto; color:#939dad; font-size:17px; }
.reveal-add-row { width:100%; margin:0 0 12px; display:flex; justify-content:space-between; align-items:center; color:#101827; font:700 12px var(--sans); }
.reveal-add-row span { color:#1d3557; }
.reveal-screen-record .reveal-photos { width:calc(100% + 6px); display:flex; gap:7px; overflow:hidden; }
.reveal-screen-record .reveal-photos img { width:92px; height:102px; flex:none; border-radius:12px; object-fit:cover; }
.reveal-screen-record>small { color:#7f8793; opacity:1; }
.reveal-screen-memory { padding:64px 13px 20px; align-items:stretch; text-align:left; }
.reveal-feed-header { display:flex; justify-content:space-between; align-items:center; margin:0 3px 20px; }
.reveal-feed-header .reveal-brand { font-size:27px; }.reveal-feed-header button { display:inline-flex; align-items:center; gap:5px; border:0; border-radius:22px; padding:9px 12px 9px 13px; background:#f0f1f5; color:#1d3557; font:12px var(--sans); }.reveal-feed-header button svg { width:12px; height:12px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.reveal-feed-date { margin:0 3px 12px; color:#151923; font:13px var(--sans); }
.reveal-feed-scroll { min-height:0; overflow:visible; transform:translateY(var(--reveal-feed-offset,0px)); will-change:transform; }
.reveal-feed-card { padding:14px 13px; border-radius:12px; color:#fff; background:#203c62; }
.reveal-card-tools { display:flex; justify-content:flex-start; padding-bottom:9px; margin-bottom:12px; border-bottom:1px solid rgba(255,255,255,.28); font:9px var(--sans); color:rgba(255,255,255,.72); }
.reveal-feed-card h3 { margin:0 0 10px; font:italic 700 20px/1.08 var(--serif); }
.reveal-feed-card p { margin:0 0 12px; font:10px/1.45 var(--sans); color:rgba(255,255,255,.82); }
.reveal-feed-card .reveal-card-photo { height:205px; margin:0; border-radius:10px; }
.reveal-photo-dots { display:flex; justify-content:center; gap:6px; margin:8px 0; }.reveal-photo-dots i { width:5px; height:5px; border-radius:50%; background:#6880a4; }.reveal-photo-dots i:last-child { background:#fff; }
.reveal-child-chip { display:flex; align-items:center; gap:6px; min-height:28px; font:10px var(--sans); }.reveal-child-chip>img { width:28px; height:28px; flex:none; border-radius:50%; object-fit:cover; object-position:center; border:1px solid rgba(255,255,255,.48); }.reveal-child-chip small { margin:0; opacity:.72; }
.reveal-feed-card-next { margin-top:11px; background:#a9c7ee; color:#1d3557; }.reveal-feed-card-next .reveal-card-tools { color:#1d3557aa; border-color:#1d355744; }.reveal-feed-card-next p { color:#1d3557cc; }
.reveal-feed-card-next .reveal-card-photo-next { height:170px; background-image:url('../assets/memory-child-flower.webp'); background-size:cover; background-position:center; }
.reveal-feed-card-third,.reveal-feed-card-fourth { margin-top:11px; color:#1d3557; }
.reveal-feed-card-third { background:#d9e5f3; }.reveal-feed-card-fourth { background:#7fa9be; }
.reveal-feed-card-third .reveal-card-tools,.reveal-feed-card-fourth .reveal-card-tools { color:#1d3557aa; border-color:#1d355744; }
.reveal-feed-card-third p,.reveal-feed-card-fourth p { color:#1d3557cc; }
.reveal-feed-card-third .reveal-card-photo-third,.reveal-feed-card-fourth .reveal-card-photo-fourth { height:170px; background-size:cover; background-position:center; }
.reveal-feed-card-third .reveal-card-photo-third { background-image:url('../assets/memory-child-book.webp'); }
.reveal-feed-card-fourth .reveal-card-photo-fourth { background-image:url('../assets/memory-child-blocks.webp'); }

/* Real family memory exports */
html[data-hero="scroll"] .memory-photo { background-size:cover; background-position:center 70%; background-repeat:no-repeat; }
html[data-hero="scroll"] .photo-beautiful { background-image:url('../assets/real-memory-beautiful-photo.webp'); }
html[data-hero="scroll"] .photo-magnets { background-image:url('../assets/real-memory-magnets-photo.webp'); }
html[data-hero="scroll"] .photo-banana { background-image:url('../assets/real-memory-banana-photo.webp'); }
html[data-hero="scroll"] .photo-bird { background-image:url('../assets/real-memory-bird-photo.webp'); }
html[data-hero="scroll"] .photo-bike { background-image:url('../assets/real-memory-bike-photo.webp'); }
html[data-hero="scroll"] .photo-books { background-image:url('../assets/real-memory-books-photo.webp'); }
html[data-hero="scroll"] .photo-snorkeling { background-image:url('../assets/real-memory-snorkeling-photo.webp'); }
html[data-hero="scroll"] .photo-vacation { background-image:url('../assets/real-memory-vacation-photo.webp'); }
html[data-hero="scroll"] .story-carousel .memory-card .memory-photo { height:190px; margin-top:auto; }

.reveal-screen-record .reveal-photos .real-thumb { width:92px; height:102px; flex:none; border-radius:12px; background-size:cover; background-position:center; background-repeat:no-repeat; }
.reveal-screen-record .reveal-photos .real-thumb-magnets { background-image:url('../assets/real-memory-magnets-photo.webp'); }
.reveal-screen-record .magnet-take-one { background-position:35% center; }
.reveal-screen-record .magnet-take-two { background-position:55% center; }
.reveal-screen-record .magnet-take-three { background-position:75% center; }
.reveal-feed-card-primary .reveal-card-photo { background-image:url('../assets/real-memory-beautiful-photo.webp'); background-size:cover; background-position:center; }
.reveal-feed-card-next .reveal-card-photo-next { margin-bottom:12px; background-image:url('../assets/real-memory-snorkeling-photo.webp'); background-size:cover; background-position:center 48%; }
.reveal-feed-card-third .reveal-card-photo-third { margin-bottom:12px; background-image:url('../assets/real-memory-books-photo.webp'); background-size:cover; background-position:center 43%; }
.reveal-feed-card-fourth .reveal-card-photo-fourth { margin-bottom:12px; background-image:url('../assets/real-memory-bird-photo.webp'); background-size:cover; background-position:center 42%; }
.reveal-device-screen>.reveal-home-indicator { background:#1d3557; }
.reveal-screen-record { z-index:1; opacity:1; transform:none; }
.reveal-screen-memory { z-index:2; opacity:1; transform:translateY(calc((1 - var(--reveal-drawer,0)) * 102%)); box-shadow:0 -14px 30px rgba(29,53,87,.12); }
html[data-reveal-step="0"] .reveal-progress i { width:50%; }html[data-reveal-step="1"] .reveal-progress i { width:100%; }
@media(min-width:768px) and (max-width:1100px) {
  html[data-hero="scroll"] { --type-display:64px; --type-section:52px; --type-expressive:34px; --type-lead:20px; }
  html[data-hero="scroll"] .section-wrap { width:calc(100% - 64px); }
  html[data-hero="scroll"] .hero { min-height:calc(100svh - 80px); padding:135px 0 110px; }
  html[data-hero="scroll"] .hero h1 { max-width:760px; font-size:64px; }
  html[data-hero="scroll"] .product-definition { display:block; padding-block:175px 105px; }
  html[data-hero="scroll"] .product-definition>span { display:block; margin-bottom:18px; }
  html[data-hero="scroll"] .product-definition h2 { max-width:620px; margin-bottom:40px; }
  html[data-hero="scroll"] .product-definition>div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
  html[data-hero="scroll"] .product-definition p { font-size:18px; }
  html[data-hero="scroll"] .story-section { display:block; width:calc(100% - 40px); min-height:0; margin:65px auto 90px; padding:62px 48px 66px; }
  html[data-hero="scroll"] .story-intro { height:auto; }
  html[data-hero="scroll"] .story-intro p span { max-width:520px; margin-top:28px; }
  html[data-hero="scroll"] .story-carousel { width:min(620px,100%); height:410px; margin:42px auto 0; }
  html[data-hero="scroll"] .feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html[data-hero="scroll"] .social-proof .testimonial-rise { width:calc(100% - 64px); }
  html[data-hero="scroll"] .social-proof-heading { column-gap:42px; }
  html[data-hero="scroll"] .testimonial-card { min-height:285px; padding:22px; }
  html[data-hero="scroll"] .testimonial-card blockquote { font-size:24px; }
  html[data-hero="scroll"] .faq-section { grid-template-columns:1fr; gap:38px; padding-top:90px; padding-bottom:95px; }
  html[data-hero="scroll"] .faq-heading>p { max-width:520px; }
  html[data-hero="scroll"] .newsletter-section,
  html[data-hero="scroll"] .newsletter-inner { height:auto; min-height:0; }
  html[data-hero="scroll"] .newsletter-inner { display:grid; align-content:start; padding-top:72px; padding-bottom:78px; }
  html[data-hero="scroll"] .newsletter-kicker,
  html[data-hero="scroll"] .newsletter-section h2,
  html[data-hero="scroll"] .newsletter-row>p,
  html[data-hero="scroll"] .newsletter-row form { position:static; width:auto; }
  html[data-hero="scroll"] .newsletter-section h2 { margin:18px 0 22px; white-space:normal; }
  html[data-hero="scroll"] .newsletter-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,390px); align-items:start; gap:42px; }
  html[data-hero="scroll"] .newsletter-row>p { max-width:390px; }
  html[data-hero="scroll"] .newsletter-row form { width:100%; }
}
@media(max-width:767px) {
  html[data-hero="scroll"] { --type-display:54px; --type-section:44px; --type-cta:var(--type-section); --type-expressive:29px; --type-lead:19px; --type-body:15px; --type-card:22px; --type-small:12px; }
  body:has(html[data-hero="scroll"]) { width:auto; min-width:0; zoom:1; }
  html[data-hero="scroll"] body { width:auto; min-width:0; zoom:1; }
  html[data-hero="scroll"] .section-wrap { width:calc(100% - 36px); }
  html[data-hero="scroll"] .hero { min-height:calc(100svh - 90px); padding:100px 0 80px; }
  html[data-hero="scroll"] .hero h1 { font-size:clamp(38px,10.2vw,44px); }
  html[data-hero="scroll"] .hero-kern-line { display:none; }
  html[data-hero="scroll"] .hero-mobile-line { display:block; white-space:nowrap; }
  html[data-hero="scroll"] .hero-copy>p { font-size:15px; }
  html[data-hero="scroll"] .hero .qr-button { display:none; }
  html[data-hero="scroll"] .hero .featured-badge { margin:7px 0; transform:scale(1.32); }
  html[data-hero="scroll"] .site-header { top:10px; width:calc(100% - 20px); height:68px; padding:0 9px 0 20px; border-radius:999px; }
  html[data-hero="scroll"] .site-header .wordmark img { width:72px; }
  html[data-hero="scroll"] .site-header nav { gap:0; }
  html[data-hero="scroll"] .site-header nav>a:not(.header-download) { display:none !important; }
  html[data-hero="scroll"] .site-header .header-download { min-width:172px; height:50px; padding:0 20px; gap:9px; border-radius:999px; font-size:0; }
  html[data-hero="scroll"] .site-header .header-download::before { content:""; font:400 23px/1 -apple-system,BlinkMacSystemFont,var(--sans); }
  html[data-hero="scroll"] .site-header .header-download::after { content:"Download for iOS"; font:700 13px/1 var(--sans); white-space:nowrap; }
  html[data-hero="scroll"] .download-section::before { width:100vw; }
  html[data-hero="scroll"] .faq-section { grid-template-columns:1fr; gap:30px; padding-top:64px; padding-bottom:72px; }
  html[data-hero="scroll"] .faq-heading { text-align:center; }
  html[data-hero="scroll"] .faq-heading>span { margin-bottom:18px; }
  html[data-hero="scroll"] .faq-heading h2 { font-size:clamp(42px,12vw,50px); line-height:.98; }
  html[data-hero="scroll"] .faq-heading h2 br { display:block; }
  html[data-hero="scroll"] .faq-heading>p { max-width:300px; margin:20px auto 0; font-size:15px; }
  html[data-hero="scroll"] .faq-list { width:100%; }
  html[data-hero="scroll"] .faq-list summary { min-height:68px; gap:16px; padding:16px 0; font-size:16px; line-height:1.32; }
  html[data-hero="scroll"] .faq-list summary>span { min-width:0; }
  html[data-hero="scroll"] .faq-chevron { width:32px; height:32px; flex-basis:32px; }
  html[data-hero="scroll"] .faq-chevron::after { top:10px; left:11px; }
  html[data-hero="scroll"] .faq-list details[open] .faq-chevron::after { top:13px; }
  html[data-hero="scroll"] .faq-answer { padding:0 8px 24px 0; }
  html[data-hero="scroll"] .faq-answer p { font-size:15px; }
  html[data-hero="scroll"] .download-section { display:block; height:auto; padding:65px 0 70px; }
  html[data-hero="scroll"] .download-section h2 { margin-bottom:34px; }
  html[data-hero="scroll"] .download-section .large-stores { align-items:stretch; }
  html[data-hero="scroll"] .download-section .store-apple,
  html[data-hero="scroll"] .download-section .store-inactive { width:100%; min-width:0; }
  html[data-hero="scroll"] .download-section .store-wrap { width:72%; align-self:flex-end; }
  html[data-hero="scroll"] .newsletter-section,
  html[data-hero="scroll"] .newsletter-inner { height:auto; min-height:0; }
  html[data-hero="scroll"] .newsletter-inner { display:grid; align-content:start; padding-top:56px; padding-bottom:64px; }
  html[data-hero="scroll"] .newsletter-kicker,
  html[data-hero="scroll"] .newsletter-section h2,
  html[data-hero="scroll"] .newsletter-row>p,
  html[data-hero="scroll"] .newsletter-row form { position:static; width:auto; }
  html[data-hero="scroll"] .newsletter-section h2 { margin:16px 0 20px; font-size:clamp(38px,11.5vw,48px); line-height:1.02; white-space:normal; }
  html[data-hero="scroll"] .newsletter-row { display:block; }
  html[data-hero="scroll"] .newsletter-row>p { max-width:340px; font-size:14px; line-height:1.5; }
  html[data-hero="scroll"] .newsletter-row form { width:100%; margin-top:28px; }
  html[data-hero="scroll"] .newsletter-row .input-row { width:100%; }
  html[data-hero="scroll"] .newsletter-row .input-row input { width:0; min-width:0; flex:1 1 auto; }
  html[data-hero="scroll"] .product-reveal { height:225vh; width:calc(100% - 16px); }
  html[data-hero="scroll"] .product-definition { display:block; padding-block:180px 95px; }
  html[data-hero="scroll"] .product-definition>span { display:block; margin-bottom:18px; }
  html[data-hero="scroll"] .product-definition h2 { margin-bottom:38px; font-size:var(--type-section); }
  html[data-hero="scroll"] .product-definition>div { display:grid; gap:22px; }
  html[data-hero="scroll"] .product-definition p { font-size:19px; line-height:1.45; }
  html[data-hero="scroll"] .features-section { padding:85px 0 95px; }
  html[data-hero="scroll"] .story-section { display:block; width:calc(100% - 16px); min-height:0; margin:55px auto 75px; padding:54px 20px 58px; overflow:hidden; border-radius:24px; }
  html[data-hero="scroll"] .story-intro { height:auto; }
  html[data-hero="scroll"] .story-intro p span { margin-top:26px; }
  html[data-hero="scroll"] .memory-heading-line { font-size:44px; }
  html[data-hero="scroll"] .story-carousel { height:405px; margin-top:38px; }
  html[data-hero="scroll"] .story-carousel .memory-card { width:min(72vw,270px); height:355px; }
  html[data-hero="scroll"] .story-carousel .memory-card.is-prev { transform:translate(calc(-50% - 43vw),-50%) scale(.74); }
  html[data-hero="scroll"] .story-carousel .memory-card.is-next { transform:translate(calc(-50% + 43vw),-50%) scale(.74); }
  html[data-hero="scroll"] [data-story-prev] { left:8px; }
  html[data-hero="scroll"] [data-story-next] { right:8px; }
  html[data-hero="scroll"] .feature-grid-heading { margin-bottom:35px; }
  html[data-hero="scroll"] .feature-grid { grid-template-columns:1fr; gap:14px; }
  html[data-hero="scroll"] .feature-cube,html[data-hero="scroll"] .feature-cube-core { min-height:255px; padding:24px; }
  html[data-hero="scroll"] .feature-cube img,html[data-hero="scroll"] .feature-cube-core img { width:148px; height:148px; }
  html[data-hero="scroll"] .feature-cube h3 { font-size:27px; }
  html[data-hero="scroll"] .feature-coming-soon { display:block; padding:22px; overflow:visible; border-radius:20px; }
  html[data-hero="scroll"] .feature-coming-soon>span { display:inline-block; margin-bottom:17px; }
  html[data-hero="scroll"] .feature-coming-soon>div { display:none; }
  html[data-hero="scroll"] .coming-soon-summary { display:block; margin:0; color:rgba(255,255,255,.78); font:500 15px/1.55 var(--sans); }
  html[data-hero="scroll"] .social-proof { min-height:0; padding:72px 0 64px; }
  html[data-hero="scroll"] .social-proof .testimonial-rise { width:calc(100% - 36px); margin-inline:auto; text-align:center; }
  html[data-hero="scroll"] .social-proof-heading { display:block; margin-bottom:30px; text-align:center; }
  html[data-hero="scroll"] .social-proof-heading>span { display:block; }
  html[data-hero="scroll"] .social-proof-heading h2 { max-width:100%; font-size:clamp(32px,9vw,36px); line-height:1.04; white-space:nowrap; }
  html[data-hero="scroll"] .social-proof-heading>p { margin-top:22px; font-size:15px; }
  html[data-hero="scroll"] .testimonial-cards { grid-auto-flow:column; grid-auto-columns:100%; grid-template-columns:none; gap:12px; width:100%; overflow-x:auto; scroll-snap-type:x mandatory; scroll-padding:0; padding:3px 0 16px; scrollbar-width:none; }
  html[data-hero="scroll"] .testimonial-cards::-webkit-scrollbar { display:none; }
  html[data-hero="scroll"] .testimonial-card { width:100%; min-width:0; min-height:235px; padding:21px; scroll-snap-align:center; text-align:left; }
  html[data-hero="scroll"] .testimonial-loop-clone { display:flex; }
  html[data-hero="scroll"] .testimonial-card blockquote { margin:24px 0 30px; font-size:24px; }
  .reveal-stage { top:88px; height:calc(100svh - 98px); min-height:540px; border-radius:20px; }
  .reveal-layout { display:flex; flex-direction:column; justify-content:flex-start; width:calc(100% - 40px); gap:10px; padding-top:76px; }
  .reveal-story { align-self:stretch; text-align:center; }.reveal-story h2 { font-size:var(--type-section); margin:12px 0 8px; }.reveal-story p { margin:auto; font-size:13px; max-width:285px; line-height:1.4; }.reveal-demo-cta { min-height:42px; margin-top:14px; padding:0 18px; font-size:12px; }.reveal-progress { margin:14px auto 0; width:120px; }
  .reveal-device { width:min(250px,56vw,calc((100svh - 280px) * .49)); min-width:175px; margin-top:0; }
  .reveal-device-frame { padding:7px; border-radius:42px; }
  .reveal-device-screen { border-radius:35px; }
  .reveal-status { top:13px; left:18px; right:18px; font-size:9px; }
  .reveal-island { top:7px; width:68px; height:18px; }
  .reveal-home-indicator { bottom:7px; width:78px; height:3px; }
  .reveal-screen-record { padding:50px 12px 15px; }
  .reveal-screen-record h3 { margin-top:0; font-size:23px; }
  .reveal-screen-record .reveal-mode { height:34px; margin-top:15px; padding:2px; font-size:10px; }
  .reveal-screen-record .reveal-mode span { height:26px; border-radius:14px; }
  .reveal-screen-record .reveal-mode svg { width:13px; height:13px; }
  .reveal-screen-record .reveal-mic { width:76px; height:76px; }
  .reveal-screen-record .reveal-mic svg { width:31px; }
  .reveal-screen-record .reveal-screen-instruction { margin:9px 0 auto; font-size:12px; }
  .reveal-add-row { margin-bottom:8px; font-size:9px; }
  .reveal-screen-record .reveal-photos { width:100%; gap:5px; }
  .reveal-screen-record .reveal-photos img,
  .reveal-screen-record .reveal-photos .real-thumb { width:calc((100% - 10px)/3); height:67px; border-radius:8px; }
  .reveal-screen-record>small { margin-top:7px; font-size:8px; }
  .reveal-screen-memory { padding:50px 9px 14px; }
  .reveal-feed-header { flex-wrap:nowrap; gap:6px; margin:0 2px 10px; }
  .reveal-feed-header .reveal-brand { min-width:0; flex:1; font-size:18px; line-height:1; white-space:nowrap; }
  .reveal-feed-header button { flex:none; padding:5px 7px; font-size:8px; line-height:1; white-space:nowrap; }
  .reveal-feed-header button svg { width:9px; height:9px; }
  .reveal-feed-date { margin:0 2px 8px; font-size:10px; }
  .reveal-feed-card { padding:10px 9px; }
  .reveal-card-tools { padding-bottom:6px; margin-bottom:8px; font-size:7px; }
  .reveal-feed-card h3 { margin-bottom:6px; font-size:14px; line-height:1.06; }
  .reveal-feed-card p { margin-bottom:7px; font-size:7.5px; line-height:1.38; }
  .reveal-feed-card .reveal-card-photo { height:118px; }
  .reveal-child-chip { min-height:20px; font-size:8px; }
  .reveal-child-chip>span { width:19px; height:19px; }
  .reveal-feed-card-third,.reveal-feed-card-fourth { display:none; }
  .reveal-topline,.reveal-bottomline { left:20px; right:20px; font-size:8px; }.reveal-topline { top:22px; }.reveal-bottomline { bottom:19px; }.reveal-topline span:last-child,.reveal-bottomline span:last-child { display:none; }
}
@media(prefers-reduced-motion:reduce) { .reveal-device,.reveal-screen { transition:none; transform:none; }.reveal-wave i { animation:none; } }
@media(max-width:380px) {
  html[data-hero="scroll"] .memory-heading-line { font-size:clamp(31px,9vw,34px); white-space:nowrap; }
  html[data-hero="scroll"] .privacy-section>h2 { font-size:36px; line-height:1.06; }
  html[data-hero="scroll"] .privacy-section>h2 span { display:block; white-space:nowrap; }
  html[data-hero="scroll"] .reveal-device { width:min(225px,52vw,calc((100svh - 300px) * .49)); }
}

/* Fit the Android label within the matching store button. */
html[data-hero="scroll"] .store-android strong { font-size:16px; }

html[data-hero="scroll"] .faq-store-link { color:#fff; text-decoration:underline; text-underline-offset:3px; }
html[data-hero="scroll"] .faq-android-qr { display:none; }
@media (min-width: 900px) {
  html[data-hero="scroll"] .faq-android-qr { display:flex; align-items:center; gap:20px; max-width:440px; margin-top:22px; color:rgba(255,255,255,.7); font:15px/1.5 var(--sans); }
  html[data-hero="scroll"] .faq-android-qr img { width:160px; height:160px; flex-shrink:0; border-radius:12px; }
}

html[data-hero="scroll"] .store-download-qr { display:none; }
@media (min-width:900px) {
  html[data-hero="scroll"] .hero .store-apple,
  html[data-hero="scroll"] .download-section .store-apple { width:360px; min-width:360px; height:88px; padding:0 18px; gap:12px; }
  html[data-hero="scroll"] .store-button strong,
  html[data-hero="scroll"] .store-android strong { font-size:18px; }
  html[data-hero="scroll"] .store-download-qr { display:block; width:64px; height:64px; flex:0 0 64px; border-radius:6px; }
}

/* Store buttons determine the section height at every viewport width. */
html[data-hero="scroll"] .download-section { height:auto; padding-top:68px; padding-bottom:70px; }
html[data-hero="scroll"] .download-section .large-stores { flex-direction:row; flex-wrap:wrap; align-items:center; gap:14px; }
@media (min-width:600px) and (max-width:899px) {
  html[data-hero="scroll"] .download-section .store-apple { width:calc((100% - 14px) / 2); min-width:0; padding:0 14px; gap:8px; }
  html[data-hero="scroll"] .download-section .store-button strong { font-size:16px; }
  html[data-hero="scroll"] .download-section .apple-symbol,
  html[data-hero="scroll"] .download-section .play-icon { width:30px; flex-basis:30px; }
}
@media (max-width:599px) {
  html[data-hero="scroll"] .download-section .large-stores { flex-direction:column; align-items:stretch; }
  html[data-hero="scroll"] .download-section .store-apple { width:100%; min-width:0; }
}

html[data-hero="scroll"] .how-store-links { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; margin-top:28px; }
html[data-hero="scroll"] .how-store-links .store-button { background:white; color:#1d3557; }

html[data-hero="scroll"] .about-store-links .store-button { width:260px; min-width:260px; }
@media (min-width:900px) {
  html[data-hero="scroll"] .about-store-links .store-button { width:360px; min-width:360px; height:88px; padding:0 18px; gap:12px; }
}
