/* Presentation only. The app and the calculator retain their own layout. */
.presentation-page { --cinema:#07150f; --cinema-soft:#0d241b; --cinema-line:#ffffff16; --cinema-muted:#a3b9aa; --lime:#ddf44d; background:var(--cinema); }
.presentation-page .container { width:min(1320px,calc(100% - 80px)); }
.presentation-page .site-header { background:#07150ff2; color:#f6f9ef; border-color:var(--cinema-line); backdrop-filter:blur(18px); }
.presentation-page .header-inner { height:80px; }
.presentation-page .brand>span { color:var(--lime); }
.presentation-page .brand b { border-color:#d7ee7040; color:var(--lime); }
.presentation-page .header-inner nav { color:#b7c9bd; }
.presentation-page .header-cta { border-color:#c9ddbb3a; border-radius:30px; color:#eef7e4; padding:11px 19px; }
.presentation-page .header-cta:hover { background:#ddf44d; color:#173020; }
.presentation-page :is(a,button,input,summary):focus-visible { outline:3px solid #9ebc2a; outline-offset:5px; }
.presentation-page .cinematic-hero { position:relative; overflow:clip; padding:64px 0 0; background:radial-gradient(ellipse at 74% 35%,#1b563146,transparent 55%),var(--cinema); }
.presentation-page .hero-grid { grid-template-columns:1fr 1.05fr; gap:54px; min-height:620px; }
.presentation-page .hero-copy { position:relative; z-index:2; padding:10px 0 28px; }
.presentation-page .hero h1 { font-size:clamp(48px,5.1vw,76px); font-weight:700; line-height:1.08; letter-spacing:-3.7px; margin-top:30px; }
.presentation-page .hero h1 em { display:inline-block; font-size:.84em; color:var(--lime); white-space:normal; }
.presentation-page .hero-description { color:var(--cinema-muted); max-width:440px; font-size:16px; margin:26px 0; }
.presentation-page .hero-actions { gap:20px; flex-wrap:wrap; }
.presentation-page .hero .button { min-width:0; }
.presentation-page .button-featured { border-radius:40px; padding:13px 15px 13px 23px; }
.presentation-page .button-featured::after { display:none; }
.presentation-page .hero-purchase { border-color:var(--cinema-line); max-width:440px; padding-top:22px; margin-top:26px; }
.presentation-page .hero-purchase a { color:var(--lime); }
.presentation-page .hero-purchase p strong { font-size:24px; }
.presentation-page .hero-bottom { border-color:var(--cinema-line); margin-top:20px; padding:24px 0; }
.presentation-page .hero-enter { animation:none; }
.presentation-page .cinema-visual { position:relative; margin:0; min-width:0; min-height:570px; display:flex; flex-direction:column; justify-content:center; perspective:1500px; isolation:isolate; }
.visual-grid { position:absolute; inset:2% -5%; z-index:-1; border-radius:50%; background:radial-gradient(ellipse,#38764333,transparent 67%); }
.visual-grid::after { content:""; position:absolute; inset:8%; border:1px solid #bcdd9d14; border-radius:50%; transform:rotate(-25deg) scaleY(.65); }
.device-label { color:#9aaf9d; font-size:9px; letter-spacing:1.8px; display:flex; gap:9px; align-items:center; margin:0 0 38px 20px; }
.hero-device { position:relative; border:1px solid #7e9b7859; border-radius:16px; overflow:hidden; background:#14271d; transform:rotateY(-13deg) rotateX(7deg) rotateZ(-4deg); box-shadow:18px 38px 70px #0008,0 0 55px #70985614; }
.device-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 17px; min-height:42px; color:#b6c9bc; background:#13291f; font-size:10px; }
.window-dots { color:#607763; font-size:9px; letter-spacing:4px; white-space:nowrap; }
.hero-device img { width:100%; aspect-ratio:12/7; object-fit:contain; }
.device-bottom { display:flex; justify-content:space-between; padding:11px 17px; color:#99b29f; font-size:8px; letter-spacing:1px; }
.device-bottom span:first-child { color:var(--lime); }
.floating-card { position:absolute; z-index:2; display:flex; align-items:center; gap:14px; background:#122a21f5; border:1px solid #72947c57; border-radius:13px; padding:17px 20px; box-shadow:0 20px 50px #0005; color:#f1f5e9; }
.floating-card small { display:block; font-size:8px; letter-spacing:1.2px; color:#adc3ae; }
.floating-card strong { display:block; font:700 28px var(--heading); letter-spacing:-.9px; margin:5px 0; }
.floating-card div>span { display:block; font-size:9px; color:#aec2b3; }
.float-cost { top:61px; left:-22px; transform:rotate(-5deg); }
.card-symbol { font-size:28px; color:var(--lime); }
.float-price { bottom:46px; right:0; background:var(--lime); color:#173024; transform:rotate(3deg); }
.float-price small,.float-price div>span { color:#3e5730; }
.float-price strong>span { margin-left:18px; font-size:23px; }
.mini-bars { display:flex; align-items:flex-end; height:44px; gap:4px; }
.mini-bars i { width:7px; border-radius:3px; height:22%; background:#315238; }
.mini-bars i:nth-child(2) { height:43%; }.mini-bars i:nth-child(3) { height:70%; }.mini-bars i:nth-child(4) { height:100%; }
.presentation-page .cinema-visual figcaption { position:absolute; bottom:4px; left:20px; color:#8ea596; font-size:9px; text-align:left; }
.presentation-page .confidence-strip { background:#0d2118; border-block:1px solid var(--cinema-line); }
.presentation-page .confidence-strip p,.presentation-page .confidence-strip span { color:#adbfaf; }
.presentation-page .confidence-strip strong { color:#f0f7e5; }.presentation-page .confidence-strip svg { stroke:#bfd391; }
.cost-story { background:radial-gradient(ellipse at 75% 50%,#234c292e,transparent 60%),#08180f; border-bottom:1px solid var(--cinema-line); padding:95px 0; overflow:clip; color:#f2f6ec; }
.cost-story-inner { display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:70px; min-height:530px; }
.story-copy .eyebrow { color:#a6bd91; }
.story-copy h2 { font-size:clamp(40px,4.3vw,62px); letter-spacing:-2.5px; margin:25px 0; }
.story-copy h2 em { color:var(--lime); }
.story-copy p { color:var(--cinema-muted); max-width:370px; font-size:15px; }
.story-copy .text-link { color:var(--lime); font-size:12px; display:inline-flex; gap:10px; margin-top:30px; }
.story-index { display:flex; align-items:center; gap:12px; margin-top:30px; font-size:8px; letter-spacing:1px; color:#a4ba9f; max-width:330px; }
.story-index>div { height:2px; flex:1; background:#28412c; }.story-index i { display:block; height:100%; width:100%; background:var(--lime); transform-origin:left; }
.cost-stage { position:relative; min-width:0; min-height:510px; display:grid; align-content:center; perspective:1400px; }
.cost-target { border:1px solid #65836d66; border-radius:14px; overflow:hidden; background:#14271d; width:86%; margin:auto; transform:rotateY(-8deg) rotateX(5deg); box-shadow:0 35px 70px #0006; }
.cost-target img { width:100%; aspect-ratio:12/7; }
.cost-chip { position:absolute; display:flex; align-items:center; gap:12px; border:1px solid #769b645e; background:#142c1ff5; border-radius:12px; padding:14px 18px; color:#f2f7e9; width:225px; box-shadow:0 12px 30px #0004; }
.cost-chip>span { font-size:11px; color:var(--lime); border:1px solid #48633a; border-radius:50%; width:28px; height:28px; display:grid; place-items:center; }
.cost-chip small { display:block; font-size:7px; letter-spacing:1px; color:#b3c6ac; }.cost-chip strong { display:block; font:600 18px var(--heading); margin-top:3px; }.cost-chip b { margin-left:auto; color:var(--lime); font-weight:400; }
.chip-product { top:35px; left:0; transform:rotate(-6deg); }.chip-pack { top:5px; right:0; transform:rotate(5deg); }.chip-shipping { bottom:38px; left:0; transform:rotate(-3deg); }.chip-fees { bottom:18px; right:0; transform:rotate(4deg); }
.stage-caption { position:absolute; bottom:0; inset-inline:0; text-align:center; color:#8ca98e; font-size:9px; }
.presentation-page .problem-section { background:#f2f4e9; }
.presentation-page .product-section { background:#0a1c14; color:#f2f7eb; overflow:clip; }
.presentation-page .product-section h2 { font-size:clamp(34px,4vw,56px); letter-spacing:-2px; }.presentation-page .product-section em { color:var(--lime); }
.presentation-page .product-section :is(.eyebrow.green,.section-heading>p,.feature-list p) { color:#9eb69e; }
.presentation-page .product-layout { gap:50px; grid-template-columns:1.7fr 1fr; }
.presentation-page .product-showcase { perspective:1800px; }
.presentation-page .product-preview { border:1px solid #526c4b; border-radius:14px; box-shadow:0 25px 60px #0005; background:#132c20; }
.presentation-page .window-top { background:#173022; color:#c9d9c5; border-color:#58704b; }.presentation-page .window-top b { color:var(--lime); background:#2b422a; }
.presentation-page .product-tabs { background:#182e20; border:1px solid #54754444; border-radius:30px; }
.presentation-page .product-tabs button { color:#b7cbb0; border-radius:22px; }
.presentation-page .product-tabs button[aria-selected=true] { background:var(--lime); color:#223618; }
.presentation-page .preview-caption { color:#adc29f; background:#173022; border-color:#547048; }
.presentation-page .preview-caption #screen-caption,.presentation-page .preview-caption>span { color:#b5cba8; }
.presentation-page .feature-list article { border-color:#54704844; }.presentation-page .feature-list h3 { color:#eff6e5; }.presentation-page .step-number { color:var(--lime); background:#273f20; }
.presentation-page .feature-list .button-dark { background:var(--lime); color:#20331c; border-radius:30px; }
.presentation-page .included-strip { border-color:#54704844; color:#adc39d; }.presentation-page .included-strip p { color:#adc39d; }
.presentation-page .demo-section { background:#f7f8f0; }.presentation-page .demo-layout { gap:90px; }.presentation-page .demo-copy h2 { font-size:clamp(35px,4vw,55px); }
.presentation-page .proof-section { background:#edf1e5; }
.presentation-page .offer-section { background:radial-gradient(ellipse at 10% 50%,#27582d40,transparent 60%),#09180f; }.presentation-page .offer-copy em { color:var(--lime); }.presentation-page .offer-card { border-radius:20px; }
.presentation-page .faq-section,.presentation-page .final-cta { background:#f7f8f0; }.presentation-page .final-cta .button { border-radius:30px; }
.presentation-page .site-footer { background:#08170f; color:#dbe7d2; }.presentation-page .site-footer p { color:#96ad96; }.presentation-page .footer-top,.presentation-page .footer-bottom { border-color:#ffffff1a; }
.presentation-page .mobile-buy { z-index:20; }.presentation-page .skip-link { z-index:50; color:#163c32; }
@media(max-width:1100px) {
  .presentation-page .container { width:calc(100% - 48px); }.presentation-page .hero-grid { gap:28px; }.presentation-page .hero h1 { font-size:58px; letter-spacing:-2.8px; }.presentation-page .hero h1 em { font-size:.8em; }
  .float-cost { left:0; }.float-price { right:0; }.cost-story-inner { gap:35px; }.cost-chip { width:195px; padding:13px; }.presentation-page .product-layout { gap:30px; }
}
@media(max-width:900px) {
  .presentation-page .hero-grid { grid-template-columns:1fr 1fr; }.presentation-page .hero h1 { font-size:47px; }.presentation-page .hero .eyebrow { font-size:8px; }.presentation-page .hero-description { font-size:14px; }
  .presentation-page .hero-secondary { font-size:11px; }.presentation-page .cinema-visual { min-height:510px; }.floating-card { padding:13px; }.floating-card strong { font-size:24px; }.device-label { font-size:7px; }
  .cost-story-inner { grid-template-columns:1fr; gap:20px; }.story-copy { max-width:600px; }.story-copy h2 br { display:none; }.cost-stage { min-height:470px; max-width:680px; width:100%; margin:auto; }.cost-story { padding:65px 0; }
  .presentation-page .product-layout { grid-template-columns:1fr; }.presentation-page .feature-list { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }.presentation-page .feature-list article { display:block; }.presentation-page .feature-list .button { grid-column:1/-1; width:max-content; }
  .presentation-page .demo-layout { gap:35px; }
}
@media(max-width:760px) {
  .presentation-page .container { width:calc(100% - 40px); }.presentation-page .header-inner { height:70px; gap:12px; }.presentation-page .brand { font-size:18px; }.presentation-page .brand img { width:28px; height:28px; }.presentation-page .header-cta { font-size:10px; padding:9px 11px; }.presentation-page .header-cta span { margin-left:5px; }
  .presentation-page .cinematic-hero { padding-top:35px; }.presentation-page .hero-grid { grid-template-columns:1fr; gap:6px; min-height:0; }.presentation-page .hero-copy { padding:5px 0 12px; }.presentation-page .hero h1 { font-size:clamp(44px,10vw,66px); letter-spacing:-2.4px; margin-top:23px; }.presentation-page .hero h1 em { font-size:.92em; }
  .presentation-page .hero-description { font-size:15px; max-width:420px; margin:22px 0; }.presentation-page .hero-actions { gap:16px; }.presentation-page .hero .button { font-size:12px; }.presentation-page .hero-assurances { margin-top:10px; }.presentation-page .hero-purchase { margin-top:20px; padding-top:18px; }
  .presentation-page .cinema-visual { min-height:380px; padding:26px 0 35px; margin-top:5px; }.hero-device { transform:rotateY(-5deg) rotateZ(-2deg); border-radius:11px; }.device-label { margin:0 0 25px 5px; font-size:7px; }.device-bar { font-size:8px; padding:8px 12px; min-height:30px; }.device-bottom { font-size:6px; padding:8px 10px; }
  .float-cost { top:38px; left:0; padding:10px 12px; gap:8px; }.floating-card small { font-size:6px; }.floating-card strong { font-size:21px; margin:3px 0; }.floating-card div>span { font-size:7px; }.card-symbol { font-size:23px; }.float-price { bottom:37px; padding:10px 14px; }.float-price strong>span { font-size:18px; }.mini-bars { height:30px; }.mini-bars i { width:5px; }
  .presentation-page .cinema-visual figcaption { left:4px; bottom:8px; font-size:8px; }.presentation-page .hero-bottom { margin-top:10px; padding:21px 0; font-size:10px; }.presentation-page .confidence-strip .container { gap:13px; }
  .cost-story { padding:60px 0 45px; }.cost-story-inner { min-height:0; }.story-copy h2 { font-size:39px; letter-spacing:-1.6px; }.story-copy p { font-size:14px; }.story-index { margin-top:22px; }.story-copy .text-link { margin-top:20px; }
  .cost-stage { min-height:0; display:flex; flex-wrap:wrap; gap:10px; padding:15px 0 30px; }.cost-target { width:100%; transform:none; order:1; margin:12px 0 0; }.cost-chip { position:static; width:calc(50% - 5px); transform:none; box-shadow:none; padding:12px 10px; gap:8px; }.cost-chip>span { width:22px; height:22px; font-size:9px; }.cost-chip small { font-size:6px; letter-spacing:.3px; }.cost-chip strong { font-size:14px; }.cost-chip b { display:none; }.stage-caption { bottom:0; font-size:8px; }
  .presentation-page .product-section h2 { font-size:36px; letter-spacing:-1.6px; }.presentation-page .product-tabs { width:100%; }.presentation-page .product-tabs button { flex:1; padding:9px 7px; font-size:10px; }.presentation-page .product-layout { gap:24px; }.presentation-page .feature-list { display:block; }.presentation-page .feature-list article { display:flex; }.presentation-page .feature-list .button { width:100%; }.presentation-page .demo-copy h2 { font-size:36px; }
}
@media(max-width:360px) { .presentation-page .container { width:calc(100% - 32px); }.presentation-page .brand { font-size:16px; }.presentation-page .brand b { font-size:7px; }.presentation-page .header-cta { font-size:9px; }.presentation-page .hero h1 { font-size:40px; }.presentation-page .hero .eyebrow { font-size:7px; letter-spacing:.9px; }.presentation-page .cinema-visual { min-height:330px; }.device-label { font-size:6px; }.cost-chip { padding:10px 7px; gap:6px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.presentation-page *, .presentation-page *::before, .presentation-page *::after { animation:none!important; transition:none!important; }.hero-device,.cost-target { transform:none!important; }.presentation-page .hero-enter,.presentation-page .reveal-ready { opacity:1!important; transform:none!important; } }
@media print { .presentation-page { background:#fff; color:#163c32; }.presentation-page .cost-story,.presentation-page .product-section,.presentation-page .cinematic-hero { background:#fff; color:#163c32; }.hero-device,.cost-target { transform:none!important; }.pin-spacer { height:auto!important; padding:0!important; }.cost-story-inner { position:static!important; transform:none!important; } }

.app-walkthrough { margin-top:64px; padding-top:38px; border-top:1px solid #54704844; }
.walkthrough-heading { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:end; margin-bottom:24px; }
.walkthrough-heading h3 { font:700 clamp(25px,3vw,39px)/1.2 var(--heading); letter-spacing:-1px; margin:15px 0 0; }
.walkthrough-heading p { color:#a9c1ad; font-size:14px; line-height:1.6; margin:0; max-width:450px; }
#app-demo-video { display:block; width:100%; height:auto; aspect-ratio:16/9; background:#07150f; border:1px solid #526c4b; border-radius:16px; }
#app-demo-video:focus-visible { outline:3px solid #ddf44d; outline-offset:5px; }
.walkthrough-transcript { color:#a9c1ad; font-size:13px; margin-top:18px; line-height:1.65; }
.walkthrough-transcript summary { cursor:pointer; width:max-content; max-width:100%; }
.app-walkthrough>.text-link { display:inline-flex; margin-top:20px; color:#ddf44d; gap:10px; }
@media(max-width:760px) { .app-walkthrough { margin-top:38px; padding-top:28px; }.walkthrough-heading { grid-template-columns:1fr; gap:15px; }#app-demo-video { border-radius:9px; } }
