:root{color-scheme:dark;--bg:#101010;--text:#f1f0ec;--muted:#a9a8a5;--line:#30302f;--red:#ed443a;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;font-family:Arial,Helvetica,sans-serif;scroll-behavior:smooth;scroll-padding-top:30px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #fff;outline-offset:6px}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.skip-link{position:absolute;left:16px;top:-100px;background:#fff;color:#111;padding:12px;z-index:10}.skip-link:focus{top:16px}.site-header{height:120px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:18px;font-size:24px;font-weight:800;letter-spacing:2px}.brand-mark{font-size:44px;letter-spacing:-9px;line-height:1;color:var(--red);padding-right:8px}.brand-mark span{color:#74716d;font-weight:400}.brand-subtitle{display:block;font-size:9px;letter-spacing:5px;margin-top:5px}.site-header nav{display:flex;align-items:center;gap:38px;font-size:13px}.site-header nav>a:hover,.text-link:hover{color:var(--red)}.nav-contact{border:1px solid #555;padding:14px 18px}.nav-contact span{margin-left:18px}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;min-height:740px;padding-block:66px 76px}.eyebrow,.section-label,.art-top,.art-bottom,.hero-note,.discipline-strip,footer{font-family:var(--mono);font-size:10px;font-weight:400;letter-spacing:1.6px;line-height:1.6}.eyebrow{color:var(--muted);margin:0 0 30px}.signal{display:inline-block;width:7px;height:7px;background:var(--red);margin-right:10px}h1{font-size:clamp(58px,6.9vw,100px);letter-spacing:-6px;line-height:.99;margin:0 0 30px;font-weight:750}h1>span{color:var(--red)}.hero-description{font-size:17px;line-height:1.7;color:var(--muted);margin:0 0 32px}.button{display:inline-flex;gap:28px;align-items:center;background:var(--red);padding:19px 24px;color:#101010;font-size:13px;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:#ff655b;transform:translateY(-2px)}.button span{font-size:21px}.hero-note{font-size:9px;letter-spacing:.4px;color:#96938f;margin:20px 0 0}.hero-art{position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #3c2422;background:radial-gradient(ellipse at 50% 50%,#4f201c 0%,#211412 48%,#151211 80%);overflow:hidden;min-height:540px}.art-top,.art-bottom{position:relative;z-index:1;display:flex;justify-content:space-between;padding:19px 18px;color:#b6a09a;font-size:8px;letter-spacing:1px}.v-art{width:100%;height:calc(100% - 90px);max-height:520px;position:absolute;top:45px}.discipline-strip{border-block:1px solid var(--line);color:#a3a09b;font-size:10px;letter-spacing:2px}.discipline-strip .wrap{display:flex;justify-content:space-between;gap:16px;padding-block:23px}.discipline-strip span:nth-child(even){color:var(--red)}.section{padding-block:94px}.section-label{font-size:9px;color:#aba6a0;margin:0 0 42px}.section-label>span{color:var(--red);margin-right:16px}.about{border-bottom:1px solid var(--line)}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:96px}h2{font-size:clamp(32px,3.3vw,46px);line-height:1.12;letter-spacing:-1.8px;font-weight:600;margin:0}.about-text p,.service-row p,.contact-details p{color:var(--muted);font-size:15px;line-height:1.85;margin:0 0 20px}.text-link{font-size:13px;display:inline-block;padding-block:12px;border-bottom:1px solid #5b3833}.text-link span{margin-left:28px}.services-heading{margin-bottom:46px}.services-heading .section-label{margin-bottom:24px}.service-row{display:grid;grid-template-columns:64px 1fr 1.15fr 30px;align-items:start;gap:30px;border-top:1px solid var(--line);padding-block:30px}.service-row:last-child{border-bottom:1px solid var(--line)}.service-number{font:10px var(--mono);color:#bc756f;padding-top:7px}.service-row h3{font-size:22px;line-height:1.3;letter-spacing:-.6px;margin:0;font-weight:500}.service-row p{margin:0;font-size:14px}.row-arrow{color:var(--red);font-size:22px;justify-self:end}.contact-section{background:#d63930;color:#100c0b}.contact-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:85px;padding-block:72px}.contact-inner .eyebrow{color:#401815;font-size:9px;margin-bottom:22px}.contact-inner h2{font-size:64px;letter-spacing:-3px}.contact-details{align-self:end}.contact-details p{color:#341915;max-width:420px}.contact-details>a{display:flex;justify-content:space-between;gap:16px;padding-block:15px;border-bottom:1px solid #8c2823;font-size:clamp(16px,1.8vw,23px);letter-spacing:-.5px}.contact-details>a:hover{color:#fff}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:100px;color:#8f8d89;font-size:9px;letter-spacing:.6px}footer>a:hover{color:#fff}
@media(min-width:1600px){.hero{min-height:800px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{gap:26px;min-height:650px}h1{font-size:72px;letter-spacing:-4px}.hero-art{min-height:490px}.about-content{gap:44px}.service-row{grid-template-columns:40px 1fr 1.1fr 20px;gap:20px}.contact-inner{gap:40px}.contact-inner h2{font-size:56px}footer>span:nth-child(2){display:none}}
@media(max-width:720px){.wrap{width:calc(100% - 40px)}.site-header{height:92px}.wordmark{font-size:19px;gap:12px}.brand-mark{font-size:36px}.brand-subtitle{font-size:7px;letter-spacing:3.6px}.site-header nav{gap:16px;font-size:12px}.site-header nav>a:first-child,.site-header nav>a:nth-child(2){display:none}.nav-contact{padding:12px}.nav-contact span{margin-left:10px}.hero{grid-template-columns:1fr;padding-block:42px;gap:36px;min-height:0}.eyebrow{font-size:8px;letter-spacing:1.1px;margin-bottom:24px}h1{font-size:clamp(48px,12vw,80px);letter-spacing:-2.8px}.hero-description{font-size:15px}.hero-note{font-size:8px}.hero-art{min-height:320px;max-width:none}.v-art{top:24px;height:300px}.art-top,.art-bottom{font-size:7px;padding:15px}.discipline-strip .wrap{flex-wrap:wrap;justify-content:flex-start;gap:10px 16px;padding-block:20px}.discipline-strip{font-size:8px;letter-spacing:1px}.discipline-strip span:nth-child(4){display:none}.section{padding-block:58px}.section-label{margin-bottom:28px}.about-content,.contact-inner{grid-template-columns:1fr;gap:28px}h2{font-size:35px;letter-spacing:-1.4px}.about-text p{font-size:14px}.service-row{grid-template-columns:28px 1fr 20px;gap:12px;padding-block:24px}.service-row h3{font-size:21px}.service-row p{grid-column:2;grid-row:2;font-size:13px}.row-arrow{grid-column:3;grid-row:1}.service-number{font-size:9px}.services-heading{margin-bottom:32px}.contact-inner{padding-block:50px}.contact-inner h2{font-size:55px}.contact-details p{font-size:14px}.contact-details>a{font-size:18px}footer{min-height:86px;font-size:8px;gap:10px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* Distinct Vi monogram: red V with a broad, dotted lowercase gray i. */
.brand-mark{display:inline-flex;align-items:baseline;gap:3px;letter-spacing:-3px;padding-right:0}
.brand-mark span{display:inline-block;color:#a6a5a2;font-family:Arial,Helvetica,sans-serif;font-weight:900;font-size:1.08em;letter-spacing:0;transform:scaleX(1.4);transform-origin:left center;margin-right:5px}

/* Quiet drafting layers behind the brand geometry. */
.hero-art::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#d7b5a008 1px,transparent 1px),linear-gradient(90deg,#d7b5a008 1px,transparent 1px),linear-gradient(#d7b5a00a 1px,transparent 1px),linear-gradient(90deg,#d7b5a00a 1px,transparent 1px);background-size:20px 20px,20px 20px,100px 100px,100px 100px}
.plot-caption{position:absolute;top:58px;left:18px;color:#987e74;font:7px var(--mono);letter-spacing:1.5px;opacity:.65}
.hero-art::after{content:"+";position:absolute;bottom:56px;left:18px;color:#b99587;font:17px var(--mono);opacity:.35}
@media(max-width:720px){.plot-caption{top:43px;font-size:6px;letter-spacing:1px}.hero-art::after{bottom:43px}}

/* Upcoming project teaser. */
.nimbus-card{display:grid;grid-template-columns:1fr;gap:60px;padding:42px;border:1px solid #49302d;background:linear-gradient(120deg,#ed443a09,transparent 65%),#141212}
.nimbus-status{display:flex;align-items:center;gap:10px;color:#c5a09a;font:9px var(--mono);letter-spacing:1.5px;margin:0 0 28px}
.nimbus-tagline{color:#b7b3af;font-size:20px;line-height:1.5;margin:20px 0 0}
.nimbus-copy p{color:#aaa7a3;font-size:15px;line-height:1.8;margin:0 0 20px}
@media(max-width:720px){.nimbus-card{grid-template-columns:1fr;gap:28px;padding:25px}.nimbus-tagline{font-size:18px}.nimbus-copy p{font-size:14px}}
