/* Woodland materials, clear reading surfaces, and motion that remains under control. */
:root { --polish-out: cubic-bezier(.23,1,.32,1); --polish-settle: cubic-bezier(.32,.72,0,1); }
.brand>span { font-size:clamp(17px,1.45vw,23px); letter-spacing:2.3px; white-space:nowrap; }
.brand small { letter-spacing:1.45px; }
.brand>svg { width:42px; height:42px; stroke-width:1.7; }
.site-header { gap:24px; }
.site-header>nav { gap:24px; }
.header-actions { gap:18px; }
.motion-toggle { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:8px 2px; background:none; color:var(--ink); border:0; font-size:11px; white-space:nowrap; }
.motion-toggle svg,.showcase-pause svg,.tile-scene-control svg { width:18px; height:18px; flex:none; }
.motion-toggle[aria-pressed=true] svg { opacity:.6; }
.motion-toggle:disabled { cursor:default; opacity:.8; }
.button,.header-cta { position:relative; isolation:isolate; overflow:hidden; touch-action:manipulation; }
.button { min-height:68px; padding:22px 29px; font-size:15.6px; gap:39px; border-radius:15px; transition:transform 180ms var(--polish-out),background-color 200ms var(--polish-out),border-color 200ms var(--polish-out),box-shadow 200ms var(--polish-out); }
.header-cta { min-height:57px; padding:18px 25px; font-size:15.6px; border-radius:14px; }
.button::after,.header-cta::after { content:""; pointer-events:none; position:absolute; inset:-50% -25%; background:linear-gradient(105deg,transparent 35%,#ffffff60 48%,#ffffff80 50%,transparent 64%); opacity:0; transform:translateX(-110%) skewX(-12deg); }
.button.primary.motion-visible::after,.header-cta.motion-visible::after { animation:woodsman-shine 11s var(--polish-settle) infinite; }
.header-cta.motion-visible::after { animation-delay:1.7s; }
.button.primary:disabled::after { animation:none; }
@keyframes woodsman-shine { 0%,78% { opacity:0; transform:translateX(-110%) skewX(-12deg); } 80% { opacity:.6; } 94%,100% { opacity:0; transform:translateX(110%) skewX(-12deg); } }
html[data-motion-paused=true] .button.primary::after,html[data-motion-paused=true] .header-cta::after { animation:none; }
html[data-motion-paused=true] [data-sc-parallax] { transform:none!important; }
html[data-motion-paused=true] [data-sc-in],html[data-motion-paused=true] [data-sc-in]>* { opacity:1!important; transform:none!important; filter:none!important; transition:none!important; }
html[data-motion-paused=true] [data-sc-reveal] { clip-path:none!important; transform:none!important; }
.button:active,.header-cta:active,.scene-switch:active,.motion-toggle:active,.showcase-controls button:active,.tile-scene-control:active { transform:scale(.97); }
.quiet-link { min-height:44px; }
.hero-content { grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr); gap:52px; }
.hero h1 { font-size:clamp(60px,5.8vw,86px); }
.hero-buttons { gap:25px; flex-wrap:wrap; }
.hero-product-depth { margin-top:38px; min-width:0; }
.hero .product-window { transform:rotateY(-3deg) rotateX(1deg); }
.app-showcase { background:#152b22; }
.app-showcase .window-bar { padding:18px 22px; gap:10px; }
.app-showcase .window-bar strong { letter-spacing:1.6px; font-size:10px; }
.mini-mark>svg { width:24px; height:28px; display:block; }
.app-showcase .window-private { font-size:7px; }
.app-screen-stage { position:relative; aspect-ratio:1.44; overflow:hidden; background:#15281f; }
.app-screen { position:absolute; inset:0; margin:0; opacity:0; transform:translateY(9px) scale(.99); transition:opacity 450ms var(--polish-out),transform 500ms var(--polish-out); pointer-events:none; }
.app-screen.is-current { opacity:1; transform:translateY(0) scale(1); z-index:1; }
.app-screen picture,.app-screen img { display:block; width:100%; height:100%; }
.app-screen img { object-fit:cover; object-position:top center; }
.instant-switch .app-screen { transition:none; }
.showcase-caption { padding:17px 22px 0; display:flex; justify-content:space-between; align-items:center; gap:15px; font-size:12px; }
.showcase-caption>span:last-child { font-size:9px; color:#b4c5b3; }
.showcase-controls { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 20px 18px; }
.screen-choices { display:flex; gap:4px; border:1px solid var(--line); padding:4px; border-radius:12px; }
.screen-choices button { background:none; border:0; padding:10px 15px; min-height:42px; border-radius:8px; color:var(--muted); font-size:11px; transition:background-color 180ms var(--polish-out),color 180ms var(--polish-out); }
.screen-choices button[aria-pressed=true] { background:#e9b17b25; color:#f1c599; }
.showcase-pause { display:grid; place-items:center; width:42px; height:42px; background:#fff08; border:1px solid var(--line); border-radius:12px; color:var(--ink); }
.showcase-pause.is-paused svg { opacity:.5; }
.showcase-pause:disabled { cursor:default; }
.floating-note { bottom:-48px; left:-22px; pointer-events:none; }
.floating-note small { font-size:10px; }
.situation-photo>video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity 450ms var(--polish-out); }
.situation-photo>img { transition:opacity 450ms var(--polish-out); }
.situation-photo.scene-playing>video { opacity:1; }
.situation-photo.scene-playing>img { opacity:0; }
.situation-photo:hover img { transform:none; }
.situation-photo::after { background:linear-gradient(180deg,transparent 0%,#0000000d 40%,#000000bf 100%); }
.section-media-controls { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:0 0 16px; color:#b7c7b1; font-size:11px; }
.section-media-controls>button { min-height:44px; padding:8px 0 8px 16px; border:0; background:none; color:#e2ba92; font-size:11px; white-space:nowrap; }
.section-media-controls>button:disabled { opacity:.8; cursor:default; }
.tile-scene-control { position:absolute; top:18px; right:18px; z-index:3; display:grid; place-items:center; width:44px; height:44px; color:#f4f2e8; border:1px solid #ffffff50; border-radius:50%; background:#10271cb5; backdrop-filter:blur(12px); transition:background-color 180ms var(--polish-out),transform 160ms var(--polish-out); }
.tile-scene-control[aria-pressed=true] { color:#ffcd9c; background:#1c3626e0; }
.offers { position:relative; isolation:isolate; overflow:hidden; background:#12251c; }
.offers-scene { position:absolute; inset:0; z-index:-2; }
.offers-scene>img,.offers-scene>video { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:center; }
.offers-scene::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,#10251cf0 0%,#10251ca8 43%,#10251cc2 78%,#10251cf5); }
.offers-scene>video,.closing>video { opacity:0; transition:opacity 650ms var(--polish-out); }
.offers-scene>video.ready,.closing>video.ready { opacity:1; }
.offers-heading { max-width:760px; margin-inline:auto; }
.offers .offer-card { background:#193226f2; backdrop-filter:blur(14px); border-color:#d6e1ce40; }
.offers .offer-card.core { background:linear-gradient(145deg,#2a4838f5,#183126f5); border-color:#eac18a70; }
.offer-card .button { min-height:68px; font-size:15.6px; }
.offer-card>small { line-height:1.7; }
.bundle-badge { color:#f2c89e; }
.billing-choice button { min-height:48px; font-size:12px; }
.billing-choice button>span { display:inline-block; margin-left:5px; padding:3px 5px; background:#d7e3c9; color:#233e2d; border-radius:4px; font-size:9px; }
.offer-card>.bundle-total { min-height:70px; padding:15px 17px; border:1px solid #e7ba8a50; border-radius:10px; background:#0d201760; color:#f1e7d4; font-size:13px; line-height:1.75; }
.existing-updates { margin-top:18px; font-size:12px; color:#ecd0b0; justify-content:flex-start; text-align:left; }
.site-footer>nav { flex-wrap:wrap; row-gap:10px; }
.checkout-billing { display:grid; gap:10px; margin:24px 0; }
.checkout-billing>button { display:grid; gap:7px; padding:18px; color:#c7d5bf; background:#152e22; border:1px solid #cdddbe40; border-radius:13px; text-align:left; transition:background-color 180ms var(--polish-out),border-color 180ms var(--polish-out); }
.checkout-billing>button[aria-pressed=true] { background:#eab37b16; border-color:#edb27d; color:#ffddba; }
.checkout-billing strong { font-size:15px; display:flex; justify-content:space-between; gap:12px; align-items:center; }
.checkout-billing span { font-size:12px; line-height:1.7; }
.checkout-billing em { font-size:10px; padding:4px 7px; border-radius:5px; background:#d7e3c9; color:#233e2d; font-style:normal; }
.checkout-total { border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:20px 0; }
.checkout-total>span { font-size:12px; color:#c4cfba; }
.checkout-total>strong { display:block; font-size:35px; letter-spacing:-1px; margin-top:5px; color:#fff0db; }
.checkout-total>p { margin-bottom:0; }
#checkout-core-only { margin-top:18px; font-size:12px; text-align:left; }
.closing>video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.closing-shade { z-index:1; }
.closing>.wrap { z-index:2; position:relative; }
.closing .button { min-height:68px; font-size:15.6px; }
.demo-panel-bar { font-size:9px; }
.shop-dialog-sidebar>span { font-size:17px; letter-spacing:1.6px; }
.shop-dialog-sidebar>span>svg { display:block; width:38px; height:44px; margin-bottom:12px; color:#edb27d; }
.shop-dialog-sidebar .woodsman-symbol { width:36px; height:36px; margin-bottom:14px; }
.billing-choice button,.demo-choices button { transition:transform 160ms var(--polish-out),background-color 180ms var(--polish-out),color 180ms var(--polish-out); }
.billing-choice button:active,.demo-choices button:active { transform:scale(.97); }
.faq summary { min-height:64px; transition:color 180ms var(--polish-out); }
.faq summary>span { transition:transform 200ms var(--polish-out); }
.faq details[open] summary>span { transform:rotate(45deg); }
@media(hover:hover) and (pointer:fine) {
 .button.primary:hover { background:#f8c99c; box-shadow:0 12px 30px #edb27d26,inset 0 1px #fff9; transform:translateY(-2px); }
 .button.secondary:hover,.header-cta:hover { background:#edb27d16; border-color:#edb27d; }
 .button>span,.header-cta>span { transition:transform 180ms var(--polish-out); }
 .button:hover>span,.header-cta:hover>span { transform:translate(3px,-3px); }
 .button.primary:active,.button.secondary:active,.header-cta:active { transform:scale(.97); }
 .tile-scene-control:hover { background:#315039e6; }
 .faq summary:hover { color:#edb27d; }
}
@media(hover:none),(pointer:coarse) {
 .button.primary:hover { background:#edb27d; box-shadow:none; transform:none; }
 .button.secondary:hover { background:#ffffff06; border-color:var(--line); }
 .header-cta:hover { background:#14291f50; border-color:#d8e5d54a; }
 .quiet-link:hover>span,.site-header>nav a:hover::after { transform:none; }
 .button.primary:active,.button.secondary:active,.header-cta:active { transform:scale(.97); }
}
@media(min-width:1600px) { .hero-content { width:min(1510px,calc(100% - 140px)); } .hero h1 { font-size:98px; } .app-screen-stage { aspect-ratio:1.36; } }
@media(max-width:1190px) { .site-header>nav { gap:16px; font-size:11px; } .header-actions { gap:14px; } .motion-toggle>span { display:none; } .header-cta { padding:16px 20px; } .hero-content { gap:30px; } .brand>span { font-size:19px; } }
@media(max-width:900px) and (min-width:761px) { .site-header>nav { display:none; } .hero h1 { font-size:62px; } .hero-content { gap:25px; } .hero-buttons .button { width:100%; justify-content:space-between; } .app-showcase .window-private { display:none; } .showcase-caption>span:last-child { display:none; } .screen-choices button { padding:9px 10px; } }
@media(max-width:760px) {
 .site-header { gap:12px; padding:22px 20px; }
 .site-header { background:linear-gradient(180deg,#020403fa 0%,#050806ed 72%,#080d0ad9 100%); border-bottom-color:#ffffff17; }
 .hero-landscape { inset:-30px -40px auto; height:1050px; -webkit-mask-image:linear-gradient(#000 75%,transparent 100%); mask-image:linear-gradient(#000 75%,transparent 100%); }
 .hero-shade,.scene-night .hero-shade { background:linear-gradient(180deg,#00000070 0%,#0000007a 38%,#00000047 70%,#080f0cc2 100%); }
 .hero-copy { text-shadow:0 2px 20px #00000045; }
 .brand { gap:9px; }
 .brand>span { font-size:18px; letter-spacing:1.5px; }
 .brand>svg { width:33px; height:38px; }
 .brand small { font-size:5.5px; letter-spacing:1px; }
 .header-actions { gap:8px; }
 .scene-switch { width:38px; justify-content:center; padding:8px; min-height:44px; }
 .scene-switch>span { display:none; }
 .motion-toggle { width:38px; min-height:44px; justify-content:center; }
 .hero-content { display:flex; gap:38px; padding-top:145px; padding-bottom:140px; }
 .hero h1 { font-size:clamp(56px,15.6vw,78px); letter-spacing:-2.8px; }
 .hero-buttons { gap:22px; }
 .hero-buttons .button,.closing .button { font-size:14.3px; min-height:65px; padding:20px 24px; gap:32px; }
 .hero-buttons .quiet-link { font-size:12px; }
 .hero-product-depth { margin:12px 9px 0; }
 .hero .product-window { transform:none; }
 .app-screen-stage { aspect-ratio:390 / 844; }
 .app-showcase .window-bar { padding:14px 16px; }
 .app-showcase .window-private { font-size:6px; letter-spacing:.2px; }
 .app-showcase .window-bar strong { font-size:9px; }
 .showcase-caption { padding:16px 16px 0; display:block; font-size:12px; }
 .showcase-caption>span:last-child { display:block; margin-top:5px; font-size:9px; }
 .showcase-controls { padding:14px 12px 16px; }
 .screen-choices button { min-height:44px; padding:10px 13px; }
 .floating-note { left:-9px; right:-9px; bottom:-53px; }
 .offer-card .button { min-height:68px; font-size:15.6px; }
 .closing>video { object-position:62% center; }
 .offers .offer-card { backdrop-filter:none; }
 .offers-scene>img,.offers-scene>video { object-position:29% center; }
 .shop-dialog-sidebar { padding:16px 22px; }
 .shop-dialog-sidebar>span { display:flex; align-items:center; gap:10px; }
 .shop-dialog-sidebar>span>svg { width:24px; height:28px; flex:none; margin:0; }
 .shop-dialog-main { max-height:calc(100dvh - 90px); }
}
@media(max-width:360px) { .brand>span { font-size:16px; letter-spacing:1px; } .brand small { font-size:5px; } .brand>svg { width:28px; } .site-header { padding-inline:16px; } .header-actions { gap:2px; } .screen-choices button { padding-inline:10px; } }
@media(prefers-reduced-motion:reduce) {
 [data-ambient],[data-tile-video] { display:none!important; }
 .app-screen { transform:none; transition:none; }
 .button::after,.header-cta::after { animation:none!important; display:none; }
 .tile-scene-control { display:none; }
}
@media(prefers-reduced-transparency:reduce) { .offers .offer-card,.offers .offer-card.core { background:#193226; backdrop-filter:none; } .tile-scene-control { background:#173423; backdrop-filter:none; } }
@media(prefers-contrast:more) { .button,.header-cta,.app-showcase,.screen-choices,.offer-card { border:1px solid currentColor; } .offers .offer-card { background:#142b20; } }
@media print { [data-ambient],[data-tile-video],.motion-toggle,.tile-scene-control { display:none!important; } }
