@font-face{font-family:Crimson;src:url('/assets/fonts/CrimsonText-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Crimson;src:url('/assets/fonts/CrimsonText-Italic.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Outfit;src:url('/assets/fonts/Outfit-Variable.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:GeistMono;src:url('/assets/fonts/GeistMono-Variable.ttf') format('truetype');font-weight:100 900;font-display:swap}

:root{--room-color:24,22,19;--ink:243,234,218;--muted:180,170,153;--line:83,74,60;--warmth:0;--ambient:1;--scene-opacity:1;--paper:#f7f5f0;--espresso:#241f1b;color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:40px}
body{margin:0;background:rgb(var(--room-color));color:rgb(var(--ink));font-family:Outfit,sans-serif;font-size:17px;font-weight:350;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}
main{overflow-x:clip}
body,button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
button,a{touch-action:manipulation}
a:focus-visible{outline:2px solid currentColor;outline-offset:7px;border-radius:3px}
img{display:block;max-width:100%;height:auto}
figure,p,h1,h2,h3{margin:0}
h1,h2,h3{font-weight:400}
em{font-weight:400}
::selection{background:#c8a77d;color:#241f1b}
.wrap{width:min(1120px,calc(100% - 112px));margin-inline:auto}
.skip-link{position:fixed;top:10px;left:10px;z-index:20;padding:10px 18px;background:var(--paper);color:var(--espresso);transform:translateY(-180%)}
.skip-link:focus{transform:translateY(0)}
.room{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:rgb(var(--room-color))}
.room-wall{position:absolute;inset:0;background:radial-gradient(ellipse at 72% 42%,rgba(218,176,105,.035),transparent 60%);opacity:var(--ambient)}
.room-grain{position:absolute;inset:-50%;width:200%;height:200%;opacity:.045;background-image:url('/assets/grain.svg');background-size:180px 180px}
.site-header{height:108px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5}
.brand{display:flex;align-items:center;gap:12px;font-family:Crimson,Georgia,serif;font-size:25px;letter-spacing:-.6px}
.brand img{border-radius:9px;box-shadow:0 0 0 1px rgba(224,202,165,.12)}
.site-header nav{display:flex;align-items:center;gap:34px;font-size:14px;color:rgb(var(--muted))}
.site-header nav a{padding:8px 0;transition:color .2s}
.site-header nav a:hover{color:rgb(var(--ink))}
.studio-link span{margin-left:5px}
.eyebrow{font-family:GeistMono,monospace;font-weight:400;font-size:11px;line-height:1.8;letter-spacing:1.6px;text-transform:uppercase;color:rgb(var(--muted))}
.hero{position:relative;min-height:760px;height:calc(100svh - 108px);max-height:940px;display:grid;grid-template-columns:1fr 1fr;align-items:center}
.hero-copy{position:relative;z-index:3;padding-bottom:75px;max-width:485px;animation:copy-arrive 1.3s both}
.hero h1{font-family:Crimson,Georgia,serif;font-size:clamp(48px,4.9vw,69px);line-height:1.02;letter-spacing:-2.1px;margin:25px 0 24px}
.hero h1 em{color:rgb(var(--accent,215,188,147))}
.hero-description{max-width:390px;line-height:1.8;color:rgb(var(--muted));font-size:17px}
.primary-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(212,187,145,.45);border-radius:5px;padding:12px 23px;margin-top:32px;font-size:15px;background:rgba(215,186,139,.06);transition:background .25s,border-color .25s}
.primary-link[href]:hover{background:rgba(215,186,139,.14);border-color:#d7bc93}
.download-link[aria-disabled="true"]{cursor:default}
.light-scene{--light-source-y:149px;position:absolute;right:-40px;top:-108px;bottom:0;width:60%;pointer-events:none;isolation:isolate}
.porch-lamp{position:absolute;top:calc(var(--light-source-y) - 104px);left:50%;transform:translateX(-50%);width:100px;height:129px;z-index:4}
.lamp-mount{position:absolute;width:18px;height:50px;top:0;left:41px;border-radius:9px;background:linear-gradient(90deg,#24201a,#443a2b 45%,#28241f);box-shadow:2px 2px 8px #0005}
.lamp-stem{position:absolute;top:14px;left:49px;width:2px;height:70px;background:linear-gradient(90deg,#65553d,#2c2720);z-index:-1}
.lamp-shade{position:absolute;top:73px;left:7px;width:86px;height:31px;border-radius:46px 46px 5px 5px;background:linear-gradient(110deg,#362f25,#5a4830 47%,#30281d);box-shadow:0 -1px 0 #9b784c45,inset 0 -3px 2px #0d0a06}
.lamp-shade:after{content:"";position:absolute;bottom:-1px;left:1px;width:84px;height:4px;border-radius:50%;background:#efc984;box-shadow:0 2px 15px 2px #efbd6b90;animation:lamp-on 2.8s both}
.lamp-bulb{position:absolute;top:103px;left:43px;width:14px;height:6px;border-radius:0 0 10px 10px;background:#ffe4a8;box-shadow:0 4px 30px 10px #fbc77060;animation:lamp-on 2.8s both}
.light-halo{position:absolute;top:calc(var(--light-source-y) - 75px);left:50%;width:800px;height:820px;transform:translateX(-50%);background:radial-gradient(ellipse at 50% 12%,#f6bc6439,transparent 67%);filter:blur(32px);opacity:var(--scene-opacity);animation:light-on 3.2s both}
.light-cone{position:absolute;top:var(--light-source-y);left:50%;width:860px;height:740px;transform:translateX(-50%);filter:blur(18px);opacity:var(--scene-opacity);animation:light-on 3.2s both}
.light-cone:before{content:"";position:absolute;inset:0;clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);background:radial-gradient(ellipse at 50% 0%,rgba(249,212,153,.29),rgba(214,173,109,.12) 49%,transparent 78%)}
.light-dust{position:absolute;inset:0;z-index:1;width:100%;height:100%;opacity:var(--scene-opacity);animation:light-on 3.2s both}
.hero-device{position:absolute;z-index:2;width:250px;top:251px;left:50%;transform:translateX(-50%) rotate(5deg) scale(1.2);animation:phone-arrive 3s both}
.phone-frame{padding:6px;border-radius:38px;background:linear-gradient(130deg,#a49579,#665b4b 15%,#24201a 36%,#74654f 70%,#c1a780);box-shadow:0 0 0 1px #e4c69520,18px 35px 60px #0006,-5px 4px 10px #0006;position:relative}
.phone-frame:after{content:"";position:absolute;inset:0;border:1px solid #f0cf9238;border-radius:inherit;pointer-events:none}
.phone-frame img{width:100%;border-radius:32px;border:1px solid #181410;aspect-ratio:1320/2868;object-fit:cover}
.hero-device .phone-frame{transform:perspective(1200px) rotateY(-7deg);box-shadow:22px 38px 60px #0007,-5px 3px 20px #0004}
.hero-device img{animation:screen-on 3s both}
.light-pool{position:absolute;top:840px;left:50%;width:560px;height:65px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse,#d7ac6c30,transparent 68%);filter:blur(12px);opacity:var(--scene-opacity);animation:light-on 3.2s both}
.introduction{text-align:center;padding:146px 0 154px;max-width:800px;scroll-margin-top:0}
h2{font-family:Crimson,Georgia,serif;font-size:clamp(39px,4.2vw,53px);line-height:1.08;letter-spacing:-1.15px}
.introduction h2{margin:24px 0 28px;font-size:clamp(39px,4.5vw,58px)}
.introduction>p:not(.eyebrow){color:rgb(var(--muted));font-size:18px;line-height:1.85}
.introduction>p+p{margin-top:18px}
.feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:100px;padding-top:62px;padding-bottom:120px}
.feature-visual{position:relative;min-height:670px;display:flex;justify-content:center;align-items:center;isolation:isolate}
.feature-device{width:252px;position:relative;z-index:1;transform:rotate(-5deg)}
.light-frame{background:linear-gradient(120deg,#ada396,#e0d8ce 28%,#a89a85 70%,#d5c8b4);box-shadow:14px 24px 46px #493b2d18,2px 4px 10px #493b2d20}
.light-frame img{border-color:#d2c8ba}
.memory-orbit{position:absolute;width:470px;height:530px;top:55px;border-radius:48% 52% 44% 56%;background:radial-gradient(ellipse at 35% 30%,#e4d7c080,#e7dbc638 58%,transparent 71%);transform:rotate(-12deg);z-index:0}
.feature-copy{max-width:402px}
.section-number{display:inline-block;margin-right:13px;opacity:.65}
.feature-copy h2{margin:23px 0 27px}
.feature-copy>p:not(.eyebrow){font-size:17px;color:rgb(var(--muted));line-height:1.85}
.feature-copy>p+p{margin-top:16px}
.return-feature .feature-copy,.wins-feature .feature-copy{padding-left:28px;max-width:435px}
.return-feature .feature-device,.wins-feature .feature-device{transform:rotate(5deg)}
.return-ring{position:absolute;top:130px;width:430px;height:430px;border-radius:50%;border:1px solid #bcb09a50;box-shadow:0 0 0 42px #c9c0aa0b,0 0 0 84px #c9c0aa08;background:radial-gradient(ellipse,#d9d4c63b,transparent 65%)}
.evidence-visual{min-height:600px}
.evidence-halo{position:absolute;inset:8% -5%;border-radius:50%;background:radial-gradient(ellipse,#e5cca357,transparent 68%);z-index:-1}
.evidence-card{width:390px;max-width:calc(100% - 34px);padding:23px;background:#fffdf9;border-radius:24px;box-shadow:8px 18px 40px #493b2d12;transform:rotate(-4deg)}
.evidence-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px;font:11px/1.6 GeistMono,monospace;text-transform:uppercase;letter-spacing:1.1px;color:#7c746a}
.evidence-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}
.evidence-card figcaption{font:25px/1.5 Crimson,Georgia,serif;color:#241f1b;padding:20px 0 4px}
.wins-feature{padding-bottom:145px}
.reveal-ready{--reveal-rise:48px;--reveal-tilt:-1.2deg;opacity:0;transform:translateY(var(--reveal-rise)) rotate(var(--reveal-tilt));transform-origin:50% 90%}
.feature-visual.reveal-ready{--reveal-rise:64px;--reveal-tilt:3deg}
.return-feature .feature-copy.reveal-ready,.wins-feature .feature-copy.reveal-ready{--reveal-tilt:1.2deg}
.return-feature .feature-visual.reveal-ready,.wins-feature .feature-visual.reveal-ready{--reveal-tilt:-3deg}
.reveal-ready.is-revealed{opacity:1;transform:none;transition:opacity .7s ease,transform 1s cubic-bezier(.16,1,.3,1)}
.feature-visual.reveal-ready.is-revealed{transition-delay:80ms}
.faq-section{display:grid;grid-template-columns:1fr 2fr;gap:80px;padding-top:70px;padding-bottom:72px;border-top:1px solid rgba(var(--line),.45);border-bottom:1px solid rgba(var(--line),.45)}
.faq-section h2{font-size:42px;padding-top:13px}
.faq-list details{border-bottom:1px solid rgba(var(--line),.45)}
.faq-list details:last-child{border-bottom:0}
.faq-list summary{position:relative;list-style:none;cursor:pointer;padding:23px 32px 23px 0;font-size:18px;line-height:1.5;color:rgb(var(--ink))}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";position:absolute;right:1px;top:22px;font-size:24px;line-height:1;color:rgb(var(--muted));transition:transform .2s}
.faq-list details[open] summary:after{transform:rotate(45deg)}
.faq-list summary:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:2px}
.faq-list details p{font-size:16px;line-height:1.85;color:rgb(var(--muted));max-width:580px;padding:0 24px 25px 0}
.closing{position:relative;text-align:center;padding:138px 0 130px;isolation:isolate}
.closing-glow{position:absolute;inset:15% 0 0;background:radial-gradient(ellipse at 50% 45%,#ead6b454,transparent 57%);z-index:-1;pointer-events:none}
.closing-icon{margin:0 auto 32px;border-radius:14px;box-shadow:0 5px 15px #6a503516}
.closing h2{font-size:clamp(42px,4.5vw,57px)}
.closing h2 em{color:#8c6e44}
.closing>p{color:rgb(var(--muted));margin-top:24px;font-size:17px}
.closing .download-link{margin-top:30px;border-color:#c7baa3;color:#70604c;font-size:14px}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:27px;padding-bottom:33px;border-top:1px solid rgba(var(--line),.45);font-size:12px;color:rgb(var(--muted))}
.footer-studio span{color:rgb(var(--ink));margin-left:4px}
.footer-links{display:flex;gap:25px;align-items:center}
.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}

@keyframes lamp-on{0%,12%{opacity:.15;filter:brightness(.3)}65%,100%{opacity:1;filter:brightness(1)}}
@keyframes light-on{0%,8%{opacity:0}100%{opacity:var(--scene-opacity)}}
@keyframes screen-on{0%,10%{filter:brightness(.08) saturate(.5)}100%{filter:brightness(.96) saturate(.9)}}
@keyframes phone-arrive{0%{opacity:.25;translate:0 12px}100%{opacity:1;translate:0 0}}
@keyframes copy-arrive{0%{opacity:0;translate:0 7px}100%{opacity:1;translate:0 0}}

@media(min-width:901px) and (max-height:860px){
  .hero{min-height:670px}
  .hero-device{top:211px;width:230px}
  .light-scene{--light-source-y:119px}
  .light-cone{height:660px}
  .light-pool{top:760px}
}
@media(min-width:1440px){.light-scene{right:-65px}.hero-copy{padding-bottom:105px}}
@media(max-width:1100px){
  .wrap{width:calc(100% - 80px)}
  .hero h1{font-size:58px}
  .light-scene{right:-25px;width:54%}
  .hero-description{max-width:365px}
  .feature{gap:65px}
  .memory-orbit{width:380px}
  .return-ring{width:340px;height:340px;top:160px}
}
@media(max-width:760px){
  html{scroll-padding-top:24px}
  .wrap{width:calc(100% - 48px)}
  .site-header{height:88px}
  .brand{font-size:23px;gap:10px}
  .brand img{width:30px;height:30px;border-radius:8px}
  .site-header nav{gap:0;font-size:12px}
  .site-header nav>a:first-child{display:none}
  .hero{display:flex;flex-direction:column;min-height:0;max-height:none;height:auto;padding-top:56px;text-align:center}
  .hero-copy{padding:0;width:100%;max-width:100%;margin-inline:auto}
  .hero h1{font-size:52px;letter-spacing:-1.8px;margin:20px 0}
  .eyebrow{font-size:10px;letter-spacing:1.25px}
  .hero-description{max-width:330px;margin-inline:auto;font-size:16px;line-height:1.75}
  .primary-link{margin-top:24px;padding:10px 23px;font-size:14px}
  .light-scene{--light-source-y:120px;position:relative;flex-shrink:0;top:auto;bottom:auto;left:auto;right:auto;width:calc(100% + 48px);height:750px;margin-top:30px;overflow:hidden}
  .light-cone{width:650px;height:570px}
  .light-halo{width:620px;height:650px}
  .hero-device{width:207px;top:198px}
  .light-pool{width:370px;top:676px}
  .introduction{padding:110px 0 90px}
  .introduction h2{font-size:41px}
  .introduction>p:not(.eyebrow){font-size:16px;line-height:1.8}
  .desktop-break{display:none}
  .feature{grid-template-columns:1fr;gap:38px;padding:20px 0 92px}
  .feature-copy{max-width:420px;margin:auto;grid-row:1}
  .feature-copy h2{font-size:43px;margin:18px 0 23px}
  .feature-copy>p:not(.eyebrow){font-size:16px}
  .feature-visual{min-height:585px;width:100%;overflow:hidden}
  .reveal-ready{--reveal-rise:34px}
  .feature-visual.reveal-ready{--reveal-rise:48px}
  .feature-visual.reveal-ready.is-revealed{transition-delay:40ms}
  .feature-device{width:230px}
  .memory-orbit{width:380px;height:440px;top:70px}
  .return-feature .feature-copy,.wins-feature .feature-copy{padding-left:0;max-width:420px}
  .return-ring{top:130px;width:330px;height:330px}
  .evidence-visual{min-height:0;padding:25px 0;overflow:visible}
  .evidence-card{max-width:calc(100% - 26px);padding:20px}
  .evidence-card figcaption{font-size:24px}
  .evidence-meta{font-size:10px}
  .faq-section{display:block;padding:44px 0}
  .faq-section h2{font-size:38px;margin-bottom:22px;padding-top:0}
  .faq-list summary{font-size:17px;padding:20px 30px 20px 0}
  .faq-list details p{font-size:16px;padding-right:0}
  .closing{padding:95px 0 85px}
  .closing h2{font-size:43px}
  .closing>p{font-size:16px}
  .closing-icon{width:48px;height:48px;border-radius:12px;margin-bottom:27px}
  .site-footer{display:block;text-align:center;padding:25px 0;font-size:11px}
  .footer-links{justify-content:center;gap:22px;margin-top:15px}
}
@media(max-width:359px){
  .wrap{width:calc(100% - 36px)}
  .hero h1{font-size:46px}
  .hero-description{font-size:15px}
  .hero{padding-top:44px}
  .light-scene{width:calc(100% + 36px)}
  .hero-copy .eyebrow{font-size:9px}
  .feature-copy h2,.closing h2{font-size:38px}
  .introduction h2{font-size:37px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .hero-device img{filter:brightness(.96)}
  .reveal-ready{opacity:1;transform:none}
}
@media print{.reveal-ready{opacity:1;transform:none;transition:none}}
