:root { --ink:#050505; --paper:#f7f5f0; --muted:#a4a4aa; --line:rgba(255,255,255,.13); --champagne:#d7c3a3; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--ink); }
body { margin:0; background:#050505; color:var(--paper); font-family:Arial, Helvetica, sans-serif; overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
button { color:inherit; font:inherit; }
::selection { background:var(--champagne); color:#050505; }
.cursor { position:fixed; top:-9px; left:-9px; z-index:1000; width:18px; height:18px; border:1px solid rgba(255,255,255,.75); border-radius:50%; pointer-events:none; transition:width .25s,height .25s; mix-blend-mode:difference; }
.preloader { position:fixed; inset:0; z-index:999; display:grid; place-content:center; gap:20px; text-align:center; background:#030303; transition:opacity .7s ease, visibility .7s; }
.preloader.done { opacity:0; visibility:hidden; }
.preloader-mark,.brand,.footer-brand { font-size:13px; font-weight:700; letter-spacing:.02em; line-height:.8; }
.preloader-mark span,.brand span,.footer-brand span { display:block; color:var(--champagne); letter-spacing:.18em; font-size:.62em; margin-top:7px; }
.preloader-line { width:260px; height:1px; background:linear-gradient(90deg,transparent,var(--champagne),transparent); animation:line 1s ease infinite; }
.preloader p { margin:0; color:#777; }
em,.serif { font-family:Georgia, "Times New Roman", serif; font-weight:400; font-style:italic; }
@keyframes line { 50% { transform:scaleX(.3); opacity:.45; } }
.header { position:fixed; top:20px; left:50%; transform:translateX(-50%); width:min(1180px,calc(100% - 32px)); height:64px; z-index:100; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding:0 12px 0 24px; border:1px solid var(--line); border-radius:22px; background:rgba(7,7,7,.64); backdrop-filter:blur(22px); box-shadow:0 15px 60px rgba(0,0,0,.28); }
.header nav { display:flex; gap:34px; color:#bbb; font-size:13px; }
.header nav a:hover { color:#fff; }
.header>.button { justify-self:end; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:16px; min-height:52px; padding:0 24px; border:1px solid rgba(255,255,255,.45); border-radius:15px; background:#f5f3ee; color:#090909; font-size:14px; font-weight:700; transition:.45s ease; }
.button:hover { background:var(--champagne); transform:translateY(-2px); box-shadow:0 10px 35px rgba(215,195,163,.15); }
.button span { transition:transform .4s; }.button:hover span { transform:translate(3px,-3px); }
.button-small { min-height:42px; border-radius:12px; padding:0 18px; font-size:12px; }
.menu-toggle { display:none; background:none; border:0; }
.mobile-menu { display:none; }
.hero { position:relative; min-height:100svh; overflow:hidden; background:#070707; }
.hero-video,.hero-shade,.particle-field { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.hero-video { opacity:.62; filter:saturate(.7) contrast(1.15); }
.hero-shade { background:radial-gradient(circle at 75% 45%,transparent 0,rgba(0,0,0,.15) 35%,rgba(0,0,0,.75) 70%),linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.2)); }
.particle-field { opacity:.126; mix-blend-mode:screen; }
.hero-content { position:relative; z-index:2; width:min(1280px,calc(100% - 48px)); margin:auto; padding-top:170px; }
.eyebrow { margin:0 0 25px; color:var(--champagne); font-size:11px; line-height:1.4; letter-spacing:.18em; font-weight:700; }
h1 { margin:0; max-width:850px; font-size:clamp(58px,7.3vw,118px); line-height:.83; letter-spacing:-.065em; font-weight:500; }
h1 span { display:block; opacity:0; transform:translateY(30px); filter:blur(8px); animation:word .85s cubic-bezier(.16,1,.3,1) forwards; }
@keyframes word { to { opacity:1; transform:none; filter:none; } }
h1 .serif { color:#eee4d5; letter-spacing:-.04em; }
.hero-copy { max-width:660px; margin:32px 0 0; color:#c5c5c5; font-size:18px; line-height:1.55; }
.hero-actions { display:flex; align-items:center; gap:32px; margin-top:32px; }
.text-link { display:flex; gap:28px; color:#eee; padding-bottom:8px; border-bottom:1px solid #777; font-size:13px; }
.microcopy { color:#777; font-size:12px; margin-top:22px; }
.hero-interface { position:absolute; right:5vw; bottom:11vh; z-index:2; width:460px; height:470px; perspective:1000px; pointer-events:none; }
.device { position:absolute; overflow:hidden; border:1px solid rgba(255,255,255,.25); background:rgba(15,15,15,.55); backdrop-filter:blur(18px); box-shadow:0 30px 80px rgba(0,0,0,.65); }
.device-main { right:20px; top:90px; width:350px; height:275px; padding:10px; border-radius:22px; transform:rotateY(-10deg) rotateZ(2deg); animation:float 6s ease-in-out infinite; }
.device-main img { width:100%; height:185px; object-fit:cover; border-radius:14px; filter:brightness(.65); }
.device-main p { margin:10px 8px; font-family:Georgia,serif; font-size:20px; }
.device-nav { display:flex; justify-content:space-between; padding:2px 5px 9px; color:#bbb; font-size:8px; letter-spacing:.13em; }
.device-phone { right:0; bottom:0; width:145px; height:245px; padding:8px; border-radius:28px; transform:rotate(4deg); animation:float 5s 1s ease-in-out infinite; }
.device-phone img { width:100%; height:145px; object-fit:cover; border-radius:21px; filter:brightness(.65); }
.device-phone strong { display:block; padding:12px 6px 5px; font-size:12px; line-height:1.2; }.device-phone small{padding:6px;color:#888;}
.glass-label { position:absolute; top:38px; right:90px; display:grid; width:255px; gap:7px; padding:17px 20px; border:1px solid var(--line); border-radius:16px; background:rgba(10,10,10,.58); backdrop-filter:blur(18px); animation:float 4s ease-in-out infinite; }
.glass-label span { color:var(--champagne); font-size:9px; letter-spacing:.14em; text-transform:uppercase; }.glass-label strong { font-family:Georgia,serif; font-size:17px; font-weight:400; }
@keyframes float { 50% { transform:translateY(-13px) rotateY(-7deg) rotateZ(1deg); } }
.hero-bottom { position:absolute; z-index:3; bottom:0; left:0; right:0; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); background:rgba(0,0,0,.35); backdrop-filter:blur(10px); }
.hero-bottom span { padding:18px 2.5vw; border-right:1px solid var(--line); color:#bbb; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.marquee { display:flex; overflow:hidden; border-block:1px solid var(--line); background:#090909; white-space:nowrap; color:#777; font-size:12px; letter-spacing:.2em; }
.marquee div { padding:20px 0; animation:marquee 30s linear infinite; }.marquee:hover div { animation-play-state:paused; }
@keyframes marquee { to { transform:translateX(-100%); } }
.section { padding:150px max(5vw,24px); }
.section-head { max-width:1000px; }
h2 { margin:0; font-size:clamp(45px,6vw,82px); line-height:.98; letter-spacing:-.055em; font-weight:500; }
.section-head>p:last-child { max-width:680px; margin:28px 0 0; color:var(--muted); font-size:18px; line-height:1.65; }
.perception { background:radial-gradient(circle at 80% 0,rgba(215,195,163,.08),transparent 28%),#080808; }
.perception-grid { display:grid; grid-template-columns:1fr 1fr; gap:10vw; margin:85px 0; padding-left:34%; color:#aaa; font-size:18px; line-height:1.65; }
blockquote { margin:0; padding:70px 7vw; border:1px solid var(--line); border-radius:32px; background:linear-gradient(125deg,rgba(255,255,255,.08),rgba(255,255,255,.015)); box-shadow:inset 0 1px rgba(255,255,255,.12),0 30px 80px rgba(0,0,0,.4); font-family:Georgia,serif; font-size:clamp(32px,4.6vw,70px); line-height:1.08; font-style:italic; }
.problem { display:grid; grid-template-columns:1.1fr .9fr; min-height:850px; background:#0b0b0d; }
.problem-image { position:relative; overflow:hidden; }.problem-image:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent 50%,#0b0b0d); }
.problem-image img { width:100%; height:100%; object-fit:cover; filter:contrast(1.15); }
.problem-copy { align-self:center; padding:80px 7vw 80px 3vw; }
.problem-copy h2 { font-size:clamp(42px,4.6vw,72px); }.problem-copy>p:not(.eyebrow){color:#aaa;font-size:18px;line-height:1.65;}
.problem-copy ul { list-style:none; padding:25px 0 0; }.problem-copy li{padding:17px 0;border-top:1px solid var(--line);color:#ddd;}.problem-copy li:before{content:"↳";color:var(--champagne);margin-right:15px;}
.projects { overflow:hidden; }
.project-track { display:flex; gap:22px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; margin-top:70px; padding-right:12vw; }
.project-card { position:relative; flex:0 0 72vw; height:min(70vh,720px); overflow:hidden; border:1px solid var(--line); border-radius:28px; background:#111; scroll-snap-align:center; cursor:pointer; }
.project-card>img { width:100%; height:100%; object-fit:cover; filter:brightness(.58) saturate(.8); transition:transform .8s,filter .8s; }.project-card:hover>img{transform:scale(1.035);filter:brightness(.72);}
.project-overlay { position:absolute; inset:auto 0 0; display:flex; align-items:end; justify-content:space-between; padding:50px; background:linear-gradient(transparent,rgba(0,0,0,.92)); }
.project-overlay span { color:var(--champagne); font-size:10px; letter-spacing:.15em; text-transform:uppercase; }
.project-overlay h3 { max-width:770px; margin:15px 0 0; font-family:Georgia,serif; font-size:clamp(30px,3.8vw,58px); line-height:1.05; font-weight:400; }
.project-overlay button { flex:none; width:64px;height:64px;border-radius:50%;border:1px solid #aaa;background:rgba(0,0,0,.4);font-size:20px; }
.project-card>small { position:absolute; top:25px; right:25px; padding:9px 13px; border:1px solid var(--line); border-radius:20px; background:rgba(0,0,0,.45); backdrop-filter:blur(10px); }
.drag-note { display:flex; justify-content:flex-end; gap:20px; color:#777; margin-top:20px; font-size:12px; text-transform:uppercase; letter-spacing:.1em; }
.compare { background:#f0eee9; color:#090909; }
.comparison { position:relative; height:650px; margin-top:65px; overflow:hidden; border-radius:30px; box-shadow:0 30px 90px rgba(0,0,0,.18); }
.compare-side { position:absolute; inset:0; overflow:hidden; }
.compare-side img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center top; }
.before { background:#242424; }
.after { clip-path:inset(0 calc(100% - var(--split)) 0 0); border-right:1px solid white; }
.compare-tag { position:absolute; top:24px; padding:10px 14px; border:1px solid rgba(255,255,255,.24); border-radius:20px; background:rgba(5,5,5,.72); color:#fff; backdrop-filter:blur(12px); font-size:10px; font-weight:700; letter-spacing:.18em; }
.before .compare-tag { right:24px; }
.after .compare-tag { left:24px; }
.compare-line { position:absolute; left:var(--split); top:0; bottom:0; width:1px; background:#fff; }.compare-line span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#fff;color:#000;box-shadow:0 10px 30px #0005;}
.comparison input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:ew-resize; }
.deliverables { background:#090909; }.deliver-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid var(--line);border-left:1px solid var(--line);}
.deliver-grid article{min-height:310px;padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.5s}.deliver-grid article:hover{background:#111;transform:translateY(-6px)}.deliver-grid span{color:var(--champagne);font-size:11px}.deliver-grid h3{margin:80px 0 16px;font-size:24px}.deliver-grid p{color:#888;line-height:1.6;}
.process-list { margin-top:70px; border-top:1px solid var(--line); }.process-list article{display:grid;grid-template-columns:80px 1fr 1.5fr 30px;align-items:center;padding:32px 0;border-bottom:1px solid var(--line)}.process-list span{color:var(--champagne);font-size:11px}.process-list h3{font-size:30px;margin:0}.process-list p{color:#888}.process-list i{font-style:normal}
.founder { display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;min-height:850px;background:#e8e5df;color:#111;overflow:hidden; }.founder>img{width:100%;height:850px;object-fit:cover;filter:grayscale(1);mix-blend-mode:multiply}.founder>div{padding:8vw}.founder h2{font-size:clamp(43px,5vw,76px)}.founder>div>p:not(.eyebrow){color:#555;font-size:19px;line-height:1.65;max-width:650px}.founder .eyebrow{color:#705f45}.chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.chips span{padding:10px 17px;border:1px solid #aaa;border-radius:30px;font-size:12px}
.offer { background:radial-gradient(circle at 70% 20%,#1a1713,#080808 45%); }.offer-card{padding:70px;border:1px solid var(--line);border-radius:34px;background:rgba(255,255,255,.04);backdrop-filter:blur(20px);}.offer-card h2{max-width:1000px}.offer-columns{display:grid;grid-template-columns:1fr 1fr;gap:4vw;margin:60px 0}.offer-columns ul{list-style:none;padding:0}.offer-columns li{padding:18px 0;border-bottom:1px solid var(--line);color:#ccc}.offer-columns li:before{content:"✓";color:var(--champagne);margin-right:14px}.investment{display:grid;grid-template-columns:1fr 1.4fr auto;gap:3vw;align-items:center;padding-top:40px;border-top:1px solid var(--line)}.investment span{font-size:10px;letter-spacing:.16em;color:var(--champagne)}.investment p{color:#999;line-height:1.5}
.faq { background:#080808; }.faq-list{margin:70px 0 0 24vw;border-top:1px solid var(--line)}.faq-list article{border-bottom:1px solid var(--line)}.faq-list button{display:grid;grid-template-columns:60px 1fr 30px;width:100%;padding:28px 0;text-align:left;background:none;border:0;font-size:22px}.faq-list button span{color:#777;font-size:11px}.faq-list button i{font-style:normal;text-align:right}.faq-list article>div{display:grid;grid-template-rows:0fr;transition:.45s}.faq-list article>div p{overflow:hidden;margin:0;color:#999;line-height:1.65;max-width:700px}.faq-list article.active>div{grid-template-rows:1fr}.faq-list article.active>div p{padding:0 30px 30px 60px}
.final-cta { position:relative;display:grid;place-content:center;min-height:900px;text-align:center;overflow:hidden; }.final-cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.2) saturate(.65);transform:scale(1.04)}.final-cta>div{position:relative;z-index:1;width:min(1020px,90vw)}.final-cta h2{font-size:clamp(52px,7vw,100px)}.final-cta>div>p:not(.eyebrow){max-width:660px;margin:30px auto;color:#aaa;font-size:18px;line-height:1.6}.final-cta .button{margin-top:10px}
footer { display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:60px;padding:90px 5vw 35px;background:#050505;border-top:1px solid var(--line)}footer>p{color:#777;line-height:1.6;margin:0}footer>div:nth-of-type(2){display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:13px;color:#aaa}footer small{grid-column:1/-1;padding-top:35px;border-top:1px solid var(--line);color:#555}
.floating-cta { position:fixed;right:20px;bottom:20px;z-index:90;display:flex;align-items:center;gap:18px;padding:7px 7px 7px 20px;border:1px solid rgba(255,255,255,.2);border-radius:30px;background:rgba(10,10,10,.76);backdrop-filter:blur(15px);font-size:12px}.floating-cta>span+span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#f4f2ec;color:#000}
.modal { position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:24px;background:rgba(0,0,0,.85);backdrop-filter:blur(15px)}.modal>div{position:relative;width:min(900px,100%);max-height:92vh;overflow:auto;padding:15px 15px 45px;border:1px solid var(--line);border-radius:28px;background:#111}.modal img{width:100%;height:380px;object-fit:cover;border-radius:18px;filter:brightness(.7)}.modal h2,.modal>div>p,.modal .button{margin-left:30px;margin-right:30px}.modal h2{font-size:45px}.modal>div>p{color:#aaa;max-width:700px;line-height:1.6}.modal-close{position:absolute;right:28px;top:28px;z-index:2;padding:10px 15px;border:1px solid #fff4;border-radius:20px;background:#0008}
.reveal { opacity:0; transform:translateY(32px); filter:blur(6px); transition:opacity .9s,transform .9s,filter .9s; }.reveal.visible{opacity:1;transform:none;filter:none}
@media(max-width:900px){
  .cursor,.header nav,.header>.button,.hero-interface{display:none}.header{grid-template-columns:1fr auto}.menu-toggle{display:block}.mobile-menu{position:fixed;inset:0;z-index:200;padding:30px;background:#050505;flex-direction:column}.mobile-menu.open{display:flex}.mobile-menu>button{align-self:end;background:none;border:0;margin-bottom:8vh}.mobile-menu>a:not(.button){display:grid;grid-template-columns:45px 1fr;padding:20px 0;border-bottom:1px solid var(--line);font-size:34px}.mobile-menu>a span{font-size:10px;color:var(--champagne)}.mobile-menu .button{margin-top:auto}
  .hero-content{padding-top:145px;width:calc(100% - 36px)}h1{font-size:clamp(51px,14vw,75px)}.hero-copy{font-size:16px;max-width:90%}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-bottom{grid-template-columns:1fr 1fr}.hero-bottom span:nth-child(n+3){display:none}
  .section{padding:100px 20px}.perception-grid{grid-template-columns:1fr;padding-left:0;gap:20px;margin:55px 0}.perception-grid p{font-size:16px}blockquote{padding:38px 25px;border-radius:24px}.problem{grid-template-columns:1fr}.problem-image{height:420px}.problem-image:after{background:linear-gradient(transparent,#0b0b0d)}.problem-copy{padding:60px 20px 100px}.project-card{flex-basis:88vw;height:560px}.project-overlay{padding:25px}.project-overlay button{width:50px;height:50px}.comparison{height:530px}.compare-side img{object-position:center top}.deliver-grid{grid-template-columns:1fr}.deliver-grid article{min-height:240px}.deliver-grid h3{margin-top:55px}.process-list article{grid-template-columns:45px 1fr 24px}.process-list article p{grid-column:2/3;margin:7px 0}.founder{grid-template-columns:1fr}.founder>img{height:520px}.founder>div{padding:80px 20px}.offer-card{padding:38px 22px}.offer-columns{grid-template-columns:1fr;gap:0}.investment{grid-template-columns:1fr}.faq-list{margin-left:0}.faq-list button{grid-template-columns:40px 1fr 25px;font-size:18px}.faq-list article.active>div p{padding-left:40px}.final-cta{min-height:760px}footer{grid-template-columns:1fr}.floating-cta>span:first-child{display:none}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.particle-field{display:none}}
