*{box-sizing:border-box;margin:0;padding:0} :root{--bg:#09090a;--surface:#111113;--surface2:#18181b;--text:#f2f2ef;--muted:#929296;--line:#29292d;--line2:#3b3b40;--accent:#d9ff4f;--max:1180px}html[data-theme="light"]{--bg:#f5f5f2;--surface:#fff;--surface2:#ececea;--text:#101012;--muted:#66666a;--line:#d9d9d5;--line2:#bcbcb8;--accent:#254dff}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}.container{width:min(calc(100% - 48px),var(--max));margin:auto}.noise{position:fixed;inset:0;pointer-events:none;opacity:.035;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")} .site-header{border-bottom:1px solid var(--line);position:relative;z-index:30}.nav{height:76px;display:flex;align-items:center;justify-content:space-between}.wordmark{font-weight:700;letter-spacing:-.05em}.wordmark span{font:10px "DM Mono";margin-left:3px;color:var(--muted)}.nav-links{display:flex;gap:30px;font-size:13px;color:var(--muted)}.nav-links a:hover,.footer a:hover{color:var(--text)}.nav-actions{display:flex;gap:9px;align-items:center}.theme-toggle,.nav-cta,.button{border:1px solid var(--line);background:transparent;color:var(--text);font:500 13px Inter;cursor:pointer}.theme-toggle{width:36px;height:36px;border-radius:50%}.nav-cta{padding:10px 14px;border-radius:7px;background:var(--text);color:var(--bg)}.hero{padding:125px 0 110px}.eyebrow,.case-label,.section-index,.section-heading p,.case-top,.case-details small,.insight span,.tiny-label,.case-end span,.about-facts small{font:500 11px "DM Mono",monospace;letter-spacing:.08em;color:var(--muted)}.pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:8px}.hero h1{font-size:clamp(52px,8vw,106px);line-height:.94;letter-spacing:-.075em;max-width:1030px;margin:28px 0 55px;font-weight:600}.hero h1 em,.about-page h1 em{font-family:Georgia,serif;font-weight:400}.hero-bottom{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end}.hero-copy{font-size:20px;line-height:1.45;max-width:680px;color:var(--muted);letter-spacing:-.02em}.hero-meta{border-left:1px solid var(--line);padding-left:20px;display:grid;gap:7px;color:var(--muted);font-size:12px}.hero-meta strong{color:var(--text);font-weight:500}.hero-actions{display:flex;gap:10px;margin-top:38px}.button{display:inline-flex;gap:25px;align-items:center;padding:13px 16px;border-radius:7px}.button-fill{background:var(--text);color:var(--bg)}.button-ghost{background:var(--surface)}.marquee-wrap{border-block:1px solid var(--line);overflow:hidden}.marquee{white-space:nowrap;display:flex;width:max-content;gap:28px;padding:15px 0;font:500 11px "DM Mono";letter-spacing:.12em;color:var(--muted);animation:slide 28s linear infinite}.marquee b{color:var(--accent)}@keyframes slide{to{transform:translateX(-50%)}}.section{padding-top:125px}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:34px}.section-heading>div{display:flex;align-items:center;gap:16px}.section-heading h2{font-size:27px;letter-spacing:-.04em}.section-heading p{max-width:310px;line-height:1.6}.case-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}.case-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden;transition:.35s ease}.case-card-large{grid-column:1/-1}.case-card:hover{transform:translateY(-5px);border-color:var(--line2)}.case-visual{height:410px;overflow:hidden}.case-card:not(.case-card-large) .case-visual{height:360px}.browser-bar{height:28px;border-bottom:1px solid #292b30;display:flex;align-items:center;padding:0 10px;gap:5px;font:8px "DM Mono";color:#777}.browser-bar i{width:5px;height:5px;border-radius:50%;background:#45474d}.browser-bar span{margin-left:8px}
.case-info{padding:22px 23px 27px}.case-top{display:flex;justify-content:space-between;margin-bottom:18px}.case-info h3{font-size:22px;letter-spacing:-.045em;margin-bottom:8px}.case-info p{color:var(--muted);max-width:700px;font-size:14px}.case-link{display:inline-block;margin-top:22px;font-size:12px;border-bottom:1px solid var(--line2);padding-bottom:3px}.about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:100px}.about-statement{font-size:clamp(32px,4.3vw,58px);line-height:1.02;letter-spacing:-.065em}.about-statement em{font-family:Georgia,serif;font-weight:400}.about-copy{color:var(--muted);font-size:15px;line-height:1.8}.about-copy p+p{margin-top:18px}.text-link{display:inline-block;margin-top:24px;color:var(--text);border-bottom:1px solid var(--line2);padding-bottom:4px}.capability-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.capability-grid article{padding:25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:240px}.capability-grid article>span{font:11px "DM Mono";color:var(--muted)}.capability-grid h3{font-size:18px;margin:55px 0 10px;letter-spacing:-.03em}.capability-grid p{font-size:13px;color:var(--muted);line-height:1.65}.contact-section{padding:180px 0 140px;border-bottom:1px solid var(--line)}.contact-section h2{font-size:clamp(52px,8vw,105px);letter-spacing:-.075em;line-height:.9;margin:25px 0 45px}.contact-section em{font-family:Georgia,serif;font-weight:400}.contact-mail{font-size:16px;border-bottom:1px solid var(--line2);padding-bottom:5px}.footer{min-height:100px;display:flex;align-items:center;justify-content:space-between;font:10px "DM Mono";color:var(--muted)}.footer div{display:flex;gap:20px}.case-page{padding-top:70px}.case-hero{padding:30px 0 80px}.back-link{font:11px "DM Mono";color:var(--muted)}.case-label{margin-top:70px}.case-hero h1{font-size:clamp(75px,14vw,190px);line-height:.8;letter-spacing:-.09em;margin:25px 0 45px}.case-subtitle{font-size:clamp(22px,3vw,38px);line-height:1.2;letter-spacing:-.04em;max-width:800px}.case-details{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:70px}.case-details div{padding:18px 12px 0;border-right:1px solid var(--line)}.case-details strong{display:block;margin-top:7px;font-size:12px;font-weight:500}.case-hero-visual{border:1px solid var(--line);border-radius:12px;min-height:650px;overflow:hidden;background:var(--surface2)}
.visual-frame{display:flex;flex-direction:column;height:100%;min-height:650px}
.visual-frame 
.visual-frame .frame-image{flex:1;overflow:hidden;background:var(--surface2)}
.visual-frame .frame-image img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.case-hero-visual:hover .frame-image img{transform:scale(1.02)}.case-hero-visual .case-hero-visual .kreevo-window,.case-hero-visual .case-content{display:grid;grid-template-columns:1fr .65fr;gap:100px;padding-top:150px}.prose{max-width:680px}.case-number{font:11px "DM Mono";color:var(--muted);margin-bottom:20px}.prose h2{font-size:42px;letter-spacing:-.06em;margin-bottom:25px}.prose p{font-size:17px;line-height:1.8;color:var(--muted);margin-top:17px}.insight{border-top:1px solid var(--line);padding-top:16px;height:max-content}.insight strong{display:block;font-size:22px;line-height:1.25;letter-spacing:-.04em;margin-top:25px}.split{grid-template-columns:1fr 1fr}.principles{border-top:1px solid var(--line)}.principles div{display:flex;gap:30px;padding:18px 0;border-bottom:1px solid var(--line);font-size:13px}.principles b{font:11px "DM Mono";color:var(--muted)}.case-quote{padding:150px 0;text-align:center}.case-quote p{font-size:clamp(28px,4vw,55px);line-height:1.08;letter-spacing:-.065em;max-width:900px;margin:auto}.case-end{padding:70px 0 120px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:end}.case-end div{display:grid;gap:15px}.case-end a:not(.back-link){font-size:clamp(35px,6vw,75px);letter-spacing:-.07em}.about-page{padding:120px 0}.about-page h1{font-size:clamp(60px,9vw,120px);line-height:.9;letter-spacing:-.08em;margin:35px 0 90px}.about-long{max-width:780px;margin-left:auto}.about-long p{font-size:clamp(20px,2.5vw,31px);line-height:1.35;letter-spacing:-.035em;margin-bottom:25px}.about-facts{margin-top:110px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.about-facts div{padding:20px 12px;border-right:1px solid var(--line)}.about-facts strong{display:block;margin-top:8px;font-size:13px;font-weight:500}@media(max-width:800px){.container{width:min(calc(100% - 32px),var(--max))}.nav-links{display:none}.hero{padding:85px 0}.hero h1{font-size:clamp(48px,15vw,78px);margin-bottom:40px}.hero-bottom,.about-grid,.case-content,.split{grid-template-columns:1fr;gap:40px}.hero-meta{border-left:0;border-top:1px solid var(--line);padding:15px 0 0}.case-list{grid-template-columns:1fr}.case-card-large{grid-column:auto}.case-visual,.case-card:not(.case-card-large) .case-visual{height:300px}.stats div:nth-child(n+2){display:none}.visual-nexus,.visual-kreevo,.section{padding-top:90px}.section-heading{display:block}.section-heading p{margin:14px 0 0}.capability-grid{grid-template-columns:1fr 1fr}.capability-grid article{min-height:210px}.contact-section{padding:120px 0}.footer{padding:25px 0;align-items:flex-start;gap:20px;flex-direction:column}.case-page{padding-top:35px}.case-label{margin-top:50px}.case-hero{padding-bottom:50px}.case-details{grid-template-columns:1fr 1fr;margin-top:45px}.case-details div{padding-bottom:15px}.case-hero-visual{min-height:360px}.case-hero-visual .case-hero-visual .kreevo-window,.case-hero-visual .case-content{padding-top:90px}.prose h2{font-size:34px}.case-quote{padding:100px 0}.case-end{display:block}.case-end .back-link{display:block;margin-top:50px}.about-page{padding:90px 0}.about-page h1{margin:30px 0 70px}.about-facts{grid-template-columns:1fr;margin-top:70px}.about-facts div{border-bottom:1px solid var(--line)}}
.image-visual{background:var(--surface2);padding:0;display:flex;align-items:center;justify-content:center}
.image-visual img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.case-card:hover .image-visual img{transform:scale(1.025)}
.dashboard-showcase{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dashboard-feature{display:block;border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden}
.dashboard-image{height:520px;overflow:hidden;background:var(--surface2);border-bottom:1px solid var(--line)}
.dashboard-image img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .6s ease}
.dashboard-feature:hover .dashboard-image img{transform:scale(1.015)}
.kreevo-dashboard img{object-position:center 18%}
.dashboard-caption{padding:23px}
.dashboard-caption>div,.experiment-meta span{display:flex;justify-content:space-between;font:10px "DM Mono";color:var(--muted);letter-spacing:.07em}
.dashboard-caption h3{font-size:23px;letter-spacing:-.045em;margin:25px 0 8px}
.dashboard-caption p,.experiment-meta p{font-size:13px;color:var(--muted);line-height:1.65;max-width:540px}
.experiment-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:16px}
.experiment-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden}
.experiment-wide{grid-row:span 2}
.experiment-image{height:430px;background:var(--surface2);overflow:hidden}
.experiment-wide .experiment-image{height:650px}
.experiment-image img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .6s ease}
.experiment-card:hover .experiment-image img{transform:scale(1.015)}
.experiment-meta{padding:20px 22px 24px}
.experiment-meta strong{display:block;font-size:18px;letter-spacing:-.035em;margin:17px 0 7px}
.experiment-note{min-height:300px}
.experiment-note-inner{height:100%;min-height:300px;padding:25px;display:flex;flex-direction:column;justify-content:space-between}
.experiment-note-inner span{font:10px "DM Mono";color:var(--muted)}
.experiment-note-inner strong{font-size:35px;line-height:.92;letter-spacing:-.065em}
.experiment-note-inner p{font-size:13px;color:var(--muted);max-width:310px}
@media(max-width:800px){
  .dashboard-showcase,.experiment-grid{grid-template-columns:1fr}
  .dashboard-image{height:420px}
  .experiment-wide{grid-row:auto}
  .experiment-wide .experiment-image{height:420px}
}

/* ============================================================
   PREMIUM INTERACTIVE LAYER
   ============================================================ */

/* scroll progress */
.scroll-progress{position:fixed;top:0;left:0;height:2px;width:0%;background:var(--accent);z-index:100;transition:width .1s linear}

/* ambient cursor-follow glow */
.spotlight{position:fixed;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(560px circle at var(--mx,50%) var(--my,20%), rgba(217,255,79,.05), transparent 42%);
}
html[data-theme="light"] .spotlight{background:radial-gradient(560px circle at var(--mx,50%) var(--my,20%), rgba(37,77,255,.045), transparent 42%);}

/* ambient hero blobs */
.hero{position:relative;overflow:hidden}
.hero::before,.hero::after{content:"";position:absolute;border-radius:50%;pointer-events:none;filter:blur(60px);z-index:-1}
.hero::before{width:620px;height:620px;top:-260px;right:-180px;background:radial-gradient(circle,rgba(217,255,79,.14),transparent 68%);animation:drift1 18s ease-in-out infinite alternate}
.hero::after{width:420px;height:420px;bottom:-220px;left:-120px;background:radial-gradient(circle,rgba(217,255,79,.07),transparent 68%);animation:drift2 22s ease-in-out infinite alternate}
html[data-theme="light"] .hero::before{background:radial-gradient(circle,rgba(37,77,255,.10),transparent 68%)}
html[data-theme="light"] .hero::after{background:radial-gradient(circle,rgba(37,77,255,.06),transparent 68%)}
@keyframes drift1{to{transform:translate(-50px,70px) scale(1.1)}}
@keyframes drift2{to{transform:translate(40px,-40px) scale(1.06)}}

/* live pulse — double ring */
.pulse{position:relative}
.pulse::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--accent);animation:ping 1.8s cubic-bezier(0,.2,.8,1) infinite}
@keyframes ping{0%{transform:scale(1);opacity:.65}100%{transform:scale(2.8);opacity:0}}

/* magnetic targets */
.magnetic{will-change:transform;transition:transform .25s cubic-bezier(.2,.8,.2,1)}

/* card hover glow ring (adds to existing translate/border transitions) */
.case-card,.dashboard-feature,.experiment-card{will-change:transform;position:relative}
.case-card:hover,.dashboard-feature:hover,.experiment-card:hover{box-shadow:0 24px 70px -30px rgba(0,0,0,.55),0 0 0 1px var(--line2)}
html[data-theme="light"] .case-card:hover,html[data-theme="light"] .dashboard-feature:hover,html[data-theme="light"] .experiment-card:hover{box-shadow:0 24px 60px -32px rgba(20,20,10,.18),0 0 0 1px var(--line2)}
.dashboard-feature,.experiment-card{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.dashboard-feature:hover,.experiment-card:hover{transform:translateY(-5px);border-color:var(--line2)}

/* floating contextual cursor tag — signature interaction */
.cursor-tag{position:fixed;top:0;left:0;z-index:60;pointer-events:none;
  display:flex;align-items:center;gap:7px;padding:9px 16px;border-radius:99px;
  background:var(--text);color:var(--bg);font:600 12px "DM Mono",monospace;letter-spacing:.02em;
  transform:translate(-50%,-50%) scale(.5);opacity:0;transition:opacity .25s ease,scale .25s ease;white-space:nowrap}
.cursor-tag.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}
.cursor-tag span{display:inline-block;transform:translateY(-1px)}

/* nav link underline sweep */
.nav-links a{position:relative;padding-bottom:3px}
.nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--text);transition:right .3s cubic-bezier(.2,.8,.2,1)}
.nav-links a:hover::after{right:0}

/* reveal stagger helper (JS assigns --d) */
.stagger{transition-delay:var(--d,0ms)}

@media(pointer:coarse){ .cursor-tag{display:none} }
@media(prefers-reduced-motion:reduce){
  .hero::before,.hero::after,.pulse::after,.marquee{animation:none!important}
  .cursor-tag,.spotlight{display:none!important}
  .magnetic{transition:none!important}
}
