@font-face{font-family:Manrope;src:url(assets/Manrope-SemiBold.ttf);font-weight:600;font-display:swap}
body,h1,h2,h3,h4,button,input,summary,.price,.price #premium-price,.step-number,.tiny-title{font-family:Manrope,Arial,sans-serif}
h1,h2{font-weight:600;letter-spacing:-.045em;line-height:1.14}
.brand{font-family:Caslon,Georgia,serif;font-weight:400;letter-spacing:-.03em}
.hero-copy p.hero-free{margin-top:18px;line-height:1.6}
body .hero h1{font-size:clamp(50px,5.1vw,72px);line-height:1.12;letter-spacing:-.05em}
h2,.section h2,.feature-copy h2,.memory-layout h2,.film-copy h2,.faq-section h2{font-size:clamp(34px,3.6vw,50px);line-height:1.17}
.download-section h2{font-size:clamp(44px,5.5vw,76px);line-height:1.12}
.step-number{font-size:35px;font-weight:600}.price{font-size:42px;font-weight:600;letter-spacing:-.04em}
/* The capture viewport is exactly 390 x 804. Fill the display width without letterboxing. */
.phone-display{left:8.7%;right:8.7%;top:12.3%;bottom:auto;aspect-ratio:390/804;border-radius:0 0 15% 15% / 0 0 7.3% 7.3%;background:#090e19;display:block}
.phone .phone-display>img{display:block;width:100%;height:100%;object-fit:fill;max-width:none}
/* Option B is the identical A composition in light colors. */
body .hero-phone{width:276px;margin:0}
.film-direction{padding-top:30px}.film-reference{position:relative;display:block;margin-top:32px;border-radius:18px;overflow:hidden;background:#0b101b}.film-reference img{width:100%;aspect-ratio:16/9;object-fit:contain}.film-reference span{position:absolute;bottom:24px;left:26px;background:#0b101bd9;color:#e7d3a7;padding:10px 16px;border:1px solid #ffffff24;border-radius:8px;font-size:12px}.film-direction>.micro{margin-top:14px}
@media(min-width:1500px){body .hero-phone{width:304px}}
@media(max-width:1100px){body .hero-phone{width:245px}}
@media(max-width:760px){body .hero h1{font-size:clamp(40px,9.7vw,60px);line-height:1.14}body .hero-phone{width:260px}.section h2,.feature-copy h2,.memory-layout h2,.film-copy h2,.faq-section h2{font-size:36px}.download-section h2{font-size:46px}.film-reference span{left:12px;bottom:12px;font-size:10px;padding:8px 10px}.film-direction{padding-top:0}}
@media(max-width:365px){body .hero h1{font-size:37px}body .hero-phone{width:242px}.section h2,.feature-copy h2,.memory-layout h2,.film-copy h2,.faq-section h2{font-size:32px}}
/* The complete film stays in frame; copy uses its intentional negative space. */
.cinema-section{padding-top:28px;background:var(--bg)}
.cinema-stage{position:relative;isolation:isolate;width:min(1440px,100%,calc((100svh - 128px)*1.7778));margin:auto;background:#0b1019;color:#f3f1eb;--muted:#b9bdc6;--gold:#d4b979;--line:#ffffff30}
.cinema-stage:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#0b10192e,transparent 55%)}
.cinema-stage>video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.cinema-copy{position:absolute;z-index:2;top:50%;left:max(56px,calc((100% - 1200px)/2));transform:translateY(-50%);width:38%;max-width:450px}
.cinema-copy h2{font-size:clamp(36px,3.6vw,58px);line-height:1.16;margin:18px 0 22px;letter-spacing:-.045em}
.cinema-copy p{font-size:16px;line-height:1.75;color:#c3c6ce}
.cinema-copy .store-buttons{justify-content:flex-start;margin:27px 0 18px}
.cinema-copy .micro{color:#b9bdc6;font-size:11px}
.cinema-controls{position:absolute;z-index:2;right:max(40px,calc((100% - 1200px)/2));bottom:26px;display:flex;gap:9px}
.cinema-controls button{display:inline-flex;gap:9px;align-items:center;justify-content:center;min-height:44px;border-radius:24px;padding:9px 17px;border:1px solid #ffffff38;background:#101722c9;backdrop-filter:blur(10px);color:#eeeae3;font-size:12px}
.cinema-controls button:hover{border-color:#d4b979;background:#172031ed}
.cinema-caption{display:flex;justify-content:space-between;gap:24px;padding-block:19px;font-size:11px;line-height:1.7;color:var(--muted);border-bottom:1px solid var(--line)}
.cinema-caption>span:first-child{color:var(--gold)}
@media(min-width:1800px){.cinema-stage{max-width:1440px}}
@media(max-width:1000px){.cinema-copy{left:32px;width:40%}.cinema-copy h2{font-size:37px}.cinema-copy .store-buttons{margin:20px 0 12px}.cinema-copy .eyebrow{font-size:9px}.cinema-copy p{font-size:14px}.cinema-controls{right:24px;bottom:20px}}
@media(max-width:800px){.cinema-section{padding-top:0}.cinema-stage{width:100%;display:flex;flex-direction:column}.cinema-stage:after{display:none}.cinema-copy{position:static;order:-1;width:auto;max-width:none;transform:none;padding:42px 24px 22px;text-align:center;background:var(--bg);color:var(--ink)}.cinema-copy h2{font-size:clamp(32px,7vw,44px);margin:14px 0 18px}.cinema-copy h2 br{display:none}.cinema-copy p br{display:none}.cinema-copy p{color:var(--muted);font-size:14px}.cinema-copy .store-buttons{justify-content:center;margin-top:22px}.cinema-copy .eyebrow,.cinema-copy h2 em{color:var(--gold)}.cinema-copy .micro{color:var(--muted)}.cinema-controls{position:static;justify-content:center;padding:12px 16px;gap:9px;background:#0b1019}.cinema-controls button{min-height:40px;font-size:10px;padding:8px 12px}.cinema-caption{flex-direction:column;text-align:center;gap:5px;padding-block:18px}}

/* Revision 05: the product leads; the wine film has its own section. */
body[data-theme=a] .hero{background:#0b101b}
body[data-theme=a] .hero-photo{inset:0;background:radial-gradient(ellipse at 76% 38%,#28364d 0%,#142032 30%,#0b101b 66%);opacity:1;animation:none}
body[data-theme=a] .hero:before{background:linear-gradient(90deg,#0b101b80,transparent 65%)}
.hero-layout{grid-template-columns:1.12fr .88fr;gap:42px;padding-block:22px 34px}
body .hero-phone{width:320px}
body .hero-copy>p:not(.micro){font-size:18px;line-height:1.75;max-width:470px}
.nav nav{font-size:14px;gap:26px}
.eyebrow{font-size:11px;letter-spacing:.15em}
.hero-proof{width:min(390px,100%);padding:16px 18px}
.hero-proof strong{font-size:15px}.hero-proof div>span{font-size:12px}
body .hero-copy p.hero-free,.scene-disclosure{font-size:12px}
.watch-link{font-size:14px;min-height:44px}.watch-link>span:last-child{font-size:12px}
.story-controls button{font-size:13px;min-height:44px}.story-controls button span{font-size:11px}
.motion-toggle{font-size:12px;min-height:44px}
.section-heading>p,.steps p,.film-copy p,.feature-copy>p,.cellar-details p,.memory-layout p,.faqs p{font-size:16px;line-height:1.8}
.section-heading>p{max-width:560px}.feature-copy>p{max-width:420px}
.button,.text-button,.text-link,.view-screen{font-size:14px}
.text-button,.text-link,.view-screen{min-height:44px;display:inline-flex;align-items:center}
.feature-stage .phone,.cellar-visual .phone{width:320px}
.feature-caption p{font-size:15px}.feature-caption .micro,.open-demo p.micro{font-size:12px}
.feature-tabs button{font-size:16px}.feature-tabs button span{font-size:12px}
.sample-row{font-size:15px}.sample-row span:not(.sample-badge){font-size:14px}
.plan-card ul{font-size:15px;line-height:1.65}.plan-card li{padding-block:7px}
.plan-card li{position:relative;padding-left:23px}.plan-card li:before{position:absolute;left:0;top:7px}
.billing-switch button{font-size:12px;min-height:40px}.billing-note,.pricing-note{font-size:12px}
.price>span{font-size:14px}.faqs summary{font-size:16px;line-height:1.6}
.footer-links{font-size:13px}.footer-links a{padding-block:8px}.site-footer p,.site-footer>.micro{font-size:12px}
.memory-section{background:linear-gradient(180deg,#141c2a,#101824);padding:94px 0}
.memory-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:36px}
.memory-layout h2{font-size:clamp(34px,3.2vw,46px)}
.memory-copy p{max-width:450px}
.memory-pair{gap:4px;padding:0;max-width:none}
.memory-pair figure{margin:0;min-width:0;flex:1;display:flex;flex-direction:column;align-items:center}
.memory-pair figure:last-child{padding-top:66px}
.memory-pair .phone{width:100%;max-width:310px;margin:0!important}
.memory-pair figcaption{font-size:13px;line-height:1.7;text-align:center;padding:8px 10px 0}
.memory-pair figcaption span{display:block;color:var(--gold);font-size:10px;letter-spacing:.1em;margin-bottom:6px}
.memory-switch{display:none}.memory-hint{text-align:center;margin:24px 0 0!important;font-size:12px!important}
@media(max-width:1100px){body .hero-phone{width:290px}.hero-layout{gap:30px}.nav nav{gap:17px;font-size:13px}.memory-layout{grid-template-columns:1fr;gap:42px}.memory-copy{max-width:720px}.memory-copy p{max-width:600px}.memory-pair{max-width:650px;margin:auto;gap:22px}.memory-pair .phone{max-width:310px}.feature-stage .phone,.cellar-visual .phone{width:290px}.cellar-grid{gap:55px}}
@media(max-width:800px){.nav nav{gap:14px}.nav-download{padding-inline:10px}.cinema-copy p{font-size:16px}.cinema-copy .eyebrow{font-size:11px}.cinema-copy .micro,.cinema-controls button,.cinema-caption{font-size:12px}.cinema-controls button{min-height:44px}}
@media(max-width:760px){.hero-layout{grid-template-columns:1fr;padding-top:32px;gap:20px}.hero-copy .eyebrow{font-size:11px}body .hero-copy>p:not(.micro){font-size:17px;line-height:1.75}.hero .watch-link{font-size:13px}body .hero-copy p.hero-free,.scene-disclosure{font-size:12px}body .hero-phone{width:300px}.hero-proof strong{font-size:14px}.hero-proof div>span{font-size:12px}.hero-proof{width:min(350px,100%)}.story-controls{gap:20px}.story-controls button{font-size:13px}.story-controls button span{font-size:10px}.motion-toggle{font-size:12px}.section-heading>p,.steps p,.film-copy p,.feature-copy>p,.cellar-details p,.memory-layout p,.faqs p{font-size:16px}.eyebrow{font-size:11px;line-height:1.7}.feature-stage .phone{width:310px;max-width:100%}.cellar-visual .phone{width:310px;max-width:100%}.feature-tabs button{font-size:14px;gap:8px;min-height:56px}.feature-tabs button span{font-size:11px}.feature-tabs button b{font-size:16px}.sample-actions .button{font-size:14px}.cellar-grid{gap:20px}.memory-section{padding-block:65px}.memory-layout{gap:28px}.memory-layout h2{font-size:36px}.memory-pair{max-width:none;display:block}.memory-pair figure{display:none}.memory-pair figure.is-selected{display:flex;animation:screen-in .25s ease}.memory-pair figure:last-child{padding:0}.memory-pair .phone{width:min(330px,100%);max-width:330px}.memory-pair figcaption{font-size:14px}.memory-pair figcaption span{font-size:11px}.memory-switch{display:flex;justify-content:center;gap:8px;margin:0 auto 18px;max-width:360px}.memory-switch button{flex:1;min-height:46px;border:1px solid var(--line);border-radius:8px;background:transparent;font-size:14px;color:var(--muted)}.memory-switch button[aria-pressed=true]{background:var(--gold);border-color:var(--gold);color:#161c26;font-weight:700}.memory-hint{font-size:12px!important}.faqs summary{font-size:16px}.plan-card ul{font-size:15px}.pricing-note,.billing-note{font-size:12px}.nav nav{font-size:14px}.menu-toggle{min-height:44px;font-size:14px}.feature-caption h3{font-size:20px}.feature-caption p{font-size:15px}.promise-strip .wrap{font-size:12px}}
@media(max-width:365px){body .hero-phone{width:280px}.hero-proof{padding:14px;gap:10px}.hero-proof strong{font-size:13px}.hero-proof div>span{font-size:11px}.hero .watch-link{font-size:12px}.memory-layout h2{font-size:32px}.feature-tabs button{font-size:13px}.memory-pair .phone{width:310px;max-width:100%}}
