:root { --ink:#101010; --paper:#f0eee8; --coral:#ff593d; --lime:#d8ff4f; --blue:#8ab4ff; --line:rgba(16,16,16,.22); }
*,*::before,*::after { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--font-geist-sans),Arial,sans-serif; overflow-x:hidden; }
h1,h2,h3,h4,p { margin:0; }
button,input,textarea,select { font:inherit; }
img,video { display:block; max-width:100%; }
a { color:inherit; text-decoration:none; }
.shell { width:min(100% - 48px, 1400px); margin-inline:auto; }
.site-header { height:90px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); position:relative; z-index:20; }
.brand { display:inline-flex; align-items:center; gap:12px; font-weight:790; font-size:23px; letter-spacing:-1.2px; }
.brand sup { font:500 9px/1 var(--font-geist-mono); letter-spacing:0; vertical-align:top; margin-left:2px; }
.brand-mark { width:29px; height:29px; border:1.5px solid currentColor; border-radius:50%; position:relative; display:block; }
.brand-mark:before,.brand-mark:after,.brand-mark i:first-child { content:""; position:absolute; width:4px; height:4px; background:currentColor; border-radius:50%; }
.brand-mark:before { left:6px; top:10px; }.brand-mark:after { right:6px; top:10px; }.brand-mark i:first-child { left:12px; bottom:5px; }
.brand-mark i:nth-child(2) { position:absolute; inset:3px 13px; border-left:1px solid currentColor; transform:rotate(45deg); }.brand-mark i:nth-child(3) { position:absolute; inset:3px 13px; border-left:1px solid currentColor; transform:rotate(-45deg); }
.site-header nav { display:flex; gap:42px; font-size:13px; font-weight:650; }
.site-header nav a,.footer-links a { transition:opacity .2s; }.site-header nav a:hover,.footer-links a:hover { opacity:.5; }
.header-cta,.button { border:1px solid var(--ink); padding:13px 17px; font:600 10px/1 var(--font-geist-mono); letter-spacing:.06em; display:inline-flex; gap:24px; align-items:center; transition:background .2s,color .2s; }
.header-cta:hover { background:var(--ink); color:var(--paper); }
.hero { min-height:760px; padding-top:80px; position:relative; border-bottom:1px solid var(--line); overflow:hidden; }
.hero-kicker,.eyebrow { font:600 10px/1.3 var(--font-geist-mono); letter-spacing:.12em; text-transform:uppercase; }
.hero-kicker { display:flex; gap:10px; align-items:center; }.status-dot { width:7px; height:7px; background:var(--coral); border-radius:50%; box-shadow:0 0 0 5px rgba(255,89,61,.14); }
.hero-title { font-size:clamp(80px,11.6vw,172px); letter-spacing:-.083em; line-height:.76; font-weight:760; margin:92px 0 0 -8px; position:relative; z-index:3; }
.title-mark { color:var(--coral); font-style:italic; font-family:Georgia,serif; font-weight:500; letter-spacing:-.08em; }
.hero-bottom { position:absolute; left:0; right:0; bottom:50px; display:flex; justify-content:space-between; align-items:end; z-index:4; }
.hero-copy { margin:0; width:min(430px,40%); font-size:18px; line-height:1.5; letter-spacing:-.02em; }
.round-link { width:104px; height:104px; border:1px solid var(--ink); border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; font:600 9px/1 var(--font-geist-mono); transition:transform .25s,background .25s,color .25s; }
.round-link span:last-child { font-size:18px; }.round-link:hover { transform:rotate(6deg); background:var(--ink); color:var(--paper); }
.hero-orbit { position:absolute; width:440px; height:440px; right:4%; top:95px; opacity:.8; }
.orbit { position:absolute; inset:0; border:1px solid rgba(16,16,16,.18); border-radius:50%; }.orbit-two { inset:80px; border-style:dashed; animation:spin 32s linear infinite; }
.orbit-one:before,.orbit-one:after { content:""; position:absolute; background:var(--ink); border-radius:50%; width:8px; height:8px; }.orbit-one:before { top:45px; left:70px; }.orbit-one:after { right:-4px; top:210px; background:var(--coral); }
.orbit-core { position:absolute; inset:175px; display:grid; place-items:center; border-radius:50%; color:var(--paper); background:var(--ink); font:bold 18px var(--font-geist-mono); }
.orbit-label { position:absolute; font:600 9px var(--font-geist-mono); letter-spacing:.1em; }.label-a { top:20px; right:80px; }.label-b { bottom:28px; left:60px; }.label-c { right:30px; bottom:90px; }
@keyframes spin { to { transform:rotate(360deg); } }
@keyframes rise { from { opacity:0; transform:translateY(20px); } to { opacity:1; transform:none; } }
.reveal { opacity:0; animation:rise .75s cubic-bezier(.2,.7,.2,1) forwards; }.reveal-1 { animation-delay:.05s }.reveal-2 { animation-delay:.15s }.reveal-3 { animation-delay:.3s }
.ticker { background:var(--ink); color:var(--paper); overflow:hidden; padding:16px 0; font:650 11px/1 var(--font-geist-mono); letter-spacing:.08em; }
.ticker-track { display:flex; width:max-content; gap:38px; align-items:center; animation:ticker 28s linear infinite; }.ticker i { color:var(--coral); font-style:normal; }
@keyframes ticker { to { transform:translateX(-50%); } }
.section { padding-top:140px; padding-bottom:140px; }.section-head { display:grid; grid-template-columns:1fr 2fr 1fr; align-items:start; margin-bottom:80px; }
.section-head h2,.manifesto h2,.statement h2,.portfolio-note h2,.about-columns h2 { font-size:clamp(48px,5.8vw,84px); line-height:.94; letter-spacing:-.06em; margin:0; font-weight:690; }
.section-note { font-size:16px; line-height:1.5; margin:7px 0 0; max-width:320px; }
.product-list,.page-product-list { border-top:1px solid var(--ink); }
.product-card { min-height:460px; border-bottom:1px solid var(--ink); display:grid; grid-template-columns:170px 1fr 1fr; gap:40px; padding:48px 0; position:relative; }
.product-meta { display:flex; flex-direction:column; justify-content:space-between; font:600 10px var(--font-geist-mono); letter-spacing:.08em; }.product-meta span:first-child { font-size:28px; }
.product-visual { min-height:360px; position:relative; overflow:hidden; transition:transform .35s; }.product-card:hover .product-visual { transform:scale(.985); }
.visual-story { background:var(--coral); display:grid; place-items:center; }.video-frame { width:58%; aspect-ratio:9/13; background:#25221f; border:6px solid var(--paper); box-shadow:20px 20px 0 rgba(16,16,16,.2); display:flex; flex-direction:column; align-items:center; justify-content:center; color:white; position:relative; }.play { width:58px;height:58px;border:1px solid white;border-radius:50%;display:grid;place-items:center;padding-left:4px }.caption-chip { position:absolute; bottom:22px; background:var(--lime); color:var(--ink); padding:8px; font:700 9px var(--font-geist-mono); white-space:nowrap; transform:rotate(-2deg); }
.floating-chip { position:absolute; background:var(--paper); padding:9px 11px; font:700 9px var(--font-geist-mono); border:1px solid var(--ink); }.chip-one { top:50px; left:30px; transform:rotate(-6deg) }.chip-two { bottom:55px; right:26px; transform:rotate(5deg) }
.visual-rank { background:var(--lime); display:grid; place-items:center; }.rank-window { width:76%; background:var(--paper); border:2px solid var(--ink); box-shadow:15px 15px 0 var(--ink); padding:20px; transform:rotate(-2deg); }.rank-window p { margin:0 0 22px; font:700 9px var(--font-geist-mono); }.rank-window div { border-top:1px solid var(--ink); padding:13px 0; display:flex; gap:12px; align-items:center; }.rank-window b { display:grid; place-items:center; width:30px;height:30px;background:var(--coral);font:700 15px var(--font-geist-mono); }.rank-window span { border:1px solid var(--ink); padding:7px 10px; font:600 9px var(--font-geist-mono); }
.visual-nav { background:var(--blue); padding:70px 40px 30px; }.search-pill { display:block; background:var(--paper); border:1px solid var(--ink); padding:14px 18px; border-radius:50px; font:600 9px var(--font-geist-mono); box-shadow:8px 8px 0 var(--ink); }.tool-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:30px; }.tool-grid i { aspect-ratio:1; background:var(--paper); border:1px solid var(--ink); display:grid; place-items:center; font:700 22px var(--font-geist-mono); font-style:normal; }.tool-grid i:nth-child(2),.tool-grid i:nth-child(5) { background:var(--coral); }
.product-copy { padding:20px 30px 10px; display:flex; flex-direction:column; }.product-copy h3 { font-size:clamp(38px,4vw,62px); margin:0 0 25px; letter-spacing:-.055em; line-height:1; }.product-copy p { max-width:490px; font-size:17px; line-height:1.55; margin:0; }.product-link,.text-link { margin-top:auto; align-self:flex-start; border-bottom:1px solid var(--ink); padding-bottom:6px; font:650 10px var(--font-geist-mono); letter-spacing:.05em; display:flex; gap:30px; }
.section-link-row { display:flex; justify-content:flex-end; padding-top:36px; }.text-link { margin:0; }
.manifesto { background:var(--ink); color:var(--paper); }.manifesto-grid { display:grid; grid-template-columns:1fr 3fr; gap:60px; }.eyebrow.light { color:var(--lime); }.big-index { display:block; margin-top:70px; font:500 42px/1 var(--font-geist-mono); letter-spacing:-.1em; color:#777; }.manifesto-copy>p { width:70%; font-size:20px; line-height:1.5; margin:45px 0 80px; color:#b8b8b3; }.principles { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #444; }.principles article { padding:34px 30px 38px 0; border-bottom:1px solid #444; }.principles article:nth-child(odd) { border-right:1px solid #444; }.principles article:nth-child(even) { padding-left:35px; }.principles span { color:var(--coral); font:600 10px var(--font-geist-mono); }.principles h3 { font-size:22px; margin:36px 0 10px; }.principles p { margin:0; color:#aaa; line-height:1.5; }
.statement { text-align:center; position:relative; }.statement-spark { font-size:40px; color:var(--coral); margin-bottom:50px; }.statement>p { font-size:21px; }.statement h2 { font-size:clamp(60px,9vw,124px); margin:20px 0 58px; }.statement h2 span { color:var(--coral); font:italic 500 1em Georgia,serif; }.button-dark { background:var(--ink); color:var(--paper); }.button-dark:hover { background:var(--coral); color:var(--ink); }
.contact-band { background:var(--coral); padding:120px 0; }.contact-inner { position:relative; }.contact-inner h2 { font-size:clamp(70px,10vw,145px); line-height:.8; letter-spacing:-.075em; margin:60px 0 10px; }.contact-inner h2 em { font-family:Georgia,serif;font-weight:400; }.contact-inner .round-link { position:absolute; right:4%; bottom:0; }.round-link-light { background:var(--paper); }.round-link-light:hover { background:var(--ink); }
.site-footer { background:var(--ink); color:var(--paper); padding-top:70px; }.footer-top { display:flex; justify-content:space-between; min-height:250px; }.footer-links { display:flex; gap:100px; }.footer-links div { display:flex; flex-direction:column; align-items:flex-start; gap:13px; }.footer-links p { color:#6e6e69; font:600 9px var(--font-geist-mono); margin:0 0 12px; }.footer-links a { font-size:13px; }.footer-bottom { border-top:1px solid #333; display:flex; justify-content:space-between; padding:22px 0 26px; color:#777; font:500 9px var(--font-geist-mono); }
.page-intro { padding:115px 0 120px; border-bottom:1px solid var(--ink); }.page-intro h1 { font-size:clamp(68px,9.5vw,142px); line-height:.84; letter-spacing:-.078em; margin:65px 0; }.page-intro h1 span { color:var(--coral); font:italic 500 1em Georgia,serif; }.page-intro-copy { margin-left:50%; width:min(500px,50%); font-size:19px; line-height:1.55; }
.page-product-list { padding-bottom:140px; }.page-product-list .product-card { min-height:530px; }.portfolio-note { border-top:1px solid var(--ink); padding:120px 0 150px; display:grid; grid-template-columns:1fr 2fr 1fr; gap:30px; }.portfolio-note p:last-child { font-size:17px; line-height:1.55; margin:5px 0; }
.about-body { padding:120px 0 150px; }.about-lead { display:grid; grid-template-columns:1fr 3fr; border-bottom:1px solid var(--ink); padding-bottom:110px; }.about-lead .big-index { margin:0; }.about-lead>p { font-size:clamp(35px,4.4vw,64px); line-height:1.05; letter-spacing:-.055em; max-width:950px; margin:0; }.about-columns { display:grid; grid-template-columns:1fr 1fr; gap:9%; padding-top:110px; }.about-columns h2 { font-size:52px; margin:45px 0 40px; }.about-columns article>p:last-child { font-size:17px; line-height:1.7; }.value-list { list-style:none; padding:32px 0 0; margin:0; }.value-list li { display:grid;grid-template-columns:55px 1fr; border-top:1px solid var(--ink); padding:22px 0; }.value-list li>span { font:600 10px var(--font-geist-mono); color:var(--coral); }.value-list b { font-size:20px; }.value-list p { color:#585854; margin:7px 0 0; line-height:1.45; }.about-quote { background:var(--lime); padding:120px 0; }.about-quote span { font:100px/1 Georgia,serif; }.about-quote blockquote { font-size:clamp(44px,6vw,86px); line-height:1; letter-spacing:-.06em; margin:10px 0 0; max-width:1100px; }
.contact-page { background:var(--coral); }.contact-page .site-header { border-color:rgba(16,16,16,.35); }.contact-hero { min-height:760px; padding:95px 0 110px; position:relative; }.contact-hero h1 { font-size:clamp(92px,13vw,190px); line-height:.76; letter-spacing:-.08em; margin:90px 0 70px; }.contact-hero h1 em { font-family:Georgia,serif; font-weight:400; }.contact-details { width:47%; margin-left:50%; }.contact-details>p { max-width:520px; font-size:18px; line-height:1.55; }.email-link { display:flex; justify-content:space-between; font-size:clamp(24px,3vw,44px); letter-spacing:-.04em; padding:26px 0 12px; border-bottom:2px solid var(--ink); }.contact-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:28px; }.contact-tags span { border:1px solid var(--ink); padding:8px 11px; border-radius:30px; font:600 9px var(--font-geist-mono); }.contact-signal { position:absolute; width:270px;height:270px;left:5%;bottom:50px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center; }.contact-signal:before,.contact-signal:after { content:"";position:absolute;inset:45px;border:1px dashed var(--ink);border-radius:50%; }.contact-signal:after { inset:100px;background:var(--ink); }.contact-signal b { color:var(--coral); z-index:2; font:700 14px var(--font-geist-mono); }.contact-signal i { position:absolute;width:8px;height:8px;background:var(--ink);border-radius:50%; }.contact-signal i:first-child { top:14px;left:90px }.contact-signal i:nth-child(2) { right:-4px;top:130px }.contact-signal i:nth-child(3) { bottom:20px;left:50px }
@media (max-width:900px) { .shell{width:min(100% - 32px,1400px)}.site-header{height:74px}.site-header nav{display:none}.header-cta{padding:11px}.header-cta span:first-child{font-size:0}.header-cta span:first-child:after{content:"HELLO";font-size:9px}.hero{min-height:700px;padding-top:60px}.hero-title{margin-top:115px}.hero-orbit{width:300px;height:300px;right:-90px;top:65px}.orbit-two{inset:55px}.orbit-core{inset:120px}.hero-copy{width:70%;font-size:16px}.section{padding-top:95px;padding-bottom:95px}.section-head,.portfolio-note{grid-template-columns:1fr;gap:28px}.section-note{margin-left:25%}.product-card{grid-template-columns:70px 1fr;padding:30px 0}.product-visual{grid-column:2;min-height:330px}.product-copy{grid-column:2;padding:20px 0}.product-meta{grid-row:1 / span 2}.product-meta span:nth-child(2){writing-mode:vertical-rl}.manifesto-grid{grid-template-columns:1fr}.manifesto-grid>div:first-child{display:flex;justify-content:space-between}.big-index{margin-top:0}.manifesto-copy>p{width:100%}.contact-inner .round-link{position:relative;right:auto;margin:50px 0 0 auto}.page-intro-copy{margin-left:25%;width:75%}.about-lead{grid-template-columns:1fr;gap:50px}.about-columns{grid-template-columns:1fr;gap:80px}.contact-details{width:70%;margin-left:30%}.contact-signal{display:none}.footer-links{gap:40px} }
@media (max-width:580px) { .brand{font-size:20px}.brand-mark{width:25px;height:25px}.hero{min-height:650px}.hero-title{font-size:71px;margin-top:140px}.hero-bottom{bottom:34px}.round-link{width:88px;height:88px}.hero-copy{width:64%;font-size:14px}.hero-orbit{opacity:.42}.section-head h2,.manifesto h2,.statement h2,.portfolio-note h2{font-size:48px}.product-card{grid-template-columns:42px 1fr;gap:14px}.product-visual{min-height:280px}.visual-nav{padding:55px 20px 20px}.video-frame{height:230px;width:auto}.product-copy h3{font-size:40px}.product-copy p{font-size:15px}.principles{grid-template-columns:1fr}.principles article:nth-child(odd){border-right:0}.principles article:nth-child(even){padding-left:0}.manifesto-copy>p{font-size:17px}.contact-inner h2{font-size:65px}.footer-top{display:block}.footer-links{padding:55px 0}.footer-bottom{gap:20px;line-height:1.4}.page-intro{padding:85px 0}.page-intro h1{font-size:62px}.page-intro-copy{margin-left:0;width:100%}.about-lead>p{font-size:38px}.about-columns h2{font-size:42px}.contact-hero{min-height:680px}.contact-hero h1{font-size:88px}.contact-details{width:100%;margin-left:0}.email-link{font-size:23px}.section-note{margin-left:0}.portfolio-note{padding:85px 0}.product-meta span:first-child{font-size:18px} }
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto}.reveal,.ticker-track,.orbit-two{animation:none}.reveal{opacity:1} }
