:root { --red:#c92533; --ink:#151515; --paper:#f3f1ed; --line:#d8d5cf; --muted:#6e6c67; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
.nav-shell { height:88px; padding:0 4vw; background:#fff; display:flex; align-items:center; gap:4vw; position:sticky; top:0; z-index:50; box-shadow:0 0 0 rgba(0,0,0,0); transition:height .25s ease,box-shadow .25s ease; }
.nav-shell.is-scrolled { height:68px; box-shadow:0 8px 24px rgba(0,0,0,.09); }
.brand img { width:245px; height:auto; display:block; transition:width .25s ease; }
.nav-shell.is-scrolled .brand img { width:205px; }
nav { display:flex; gap:34px; margin-left:auto; font-size:13px; font-weight:700; }
nav a { padding:34px 0 29px; border-bottom:3px solid transparent; } nav a:hover { border-color:var(--red); }
.nav-cta { margin-left:2vw; padding:14px 18px; background:var(--ink); color:white; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
.nav-cta span,.primary-btn span,.contact-actions a span { color:var(--red); margin-left:18px; }
.hero { min-height:720px; height:calc(100vh - 88px); max-height:920px; position:relative; display:flex; align-items:center; overflow:hidden; color:#fff; }
.hero-image,.hero-shade { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.hero-shade { background:linear-gradient(90deg,rgba(11,11,11,.94) 0%,rgba(11,11,11,.7) 38%,rgba(11,11,11,.04) 74%); }
.hero-content { position:relative; width:min(720px,84vw); margin-left:8vw; z-index:1; }
.eyebrow,.section-kicker { font-size:11px; font-weight:800; letter-spacing:.18em; }
.eyebrow span { display:inline-block; width:28px; height:2px; background:var(--red); vertical-align:middle; margin-right:12px; }
h1 { font-size:clamp(58px,7.2vw,108px); line-height:.91; letter-spacing:-.055em; margin:35px 0 28px; font-weight:800; }
h1 em,h2 em,blockquote em { color:var(--red); font-style:normal; }
.hero-copy { max-width:590px; font-size:18px; line-height:1.55; color:#d2d2d2; }
.primary-btn { display:inline-flex; margin-top:24px; background:var(--red); padding:19px 22px; text-transform:uppercase; font-weight:800; font-size:12px; letter-spacing:.06em; }
.primary-btn span { color:white; margin-left:40px; }
.hero-note { position:absolute; right:5vw; bottom:0; background:rgba(18,18,18,.88); padding:24px 30px; display:flex; flex-direction:column; gap:6px; font-size:12px; }
.hero-note strong { color:var(--red); text-transform:uppercase; font-size:10px; letter-spacing:.12em; }
.section { padding:110px 8vw; }
.section-kicker { color:var(--red); margin:0 0 45px; }
.intro-grid,.process-head { display:grid; grid-template-columns:1.3fr 1fr; gap:10vw; align-items:start; }
h2 { font-size:clamp(44px,5vw,74px); line-height:.98; letter-spacing:-.045em; margin:0; }
.intro-grid>div p,.process-head>p { font-size:18px; line-height:1.6; margin:0 0 18px; }.muted { color:var(--muted); }
.service-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:80px; border-top:1px solid var(--line); }
.service-card { padding:28px 28px 30px 0; border-right:1px solid var(--line); position:relative; min-height:270px; }
.service-card:not(:first-child) { padding-left:28px; }.service-card>span { font-size:11px; color:var(--red); font-weight:800; }
.service-card h3 { font-size:28px; margin:34px 0 18px; }.service-card p { color:var(--muted); font-size:14px; line-height:1.65; max-width:240px; }.service-card b { position:absolute; bottom:2px; right:22px; color:var(--red); }
.statement { background:#171717; color:white; padding:120px 8vw; position:relative; overflow:hidden; }.statement:after { content:"CM"; position:absolute; right:-40px; bottom:-150px; font-size:430px; font-weight:900; color:#1d1d1d; letter-spacing:-.1em; }
.statement-inner { position:relative; z-index:1; max-width:1180px; }.section-kicker.light { color:#9b9995; }.statement blockquote { font-size:clamp(42px,5.2vw,76px); line-height:1.12; letter-spacing:-.04em; font-weight:800; margin:0 0 48px; }.statement-inner>p:last-child { border-left:2px solid var(--red); padding-left:24px; color:#aaa; max-width:660px; line-height:1.6; }
.process-head>p { color:var(--muted); max-width:470px; }.process-list { margin-top:80px; border-top:1px solid var(--line); }
.process-list article { display:grid; grid-template-columns:80px .7fr 1fr; gap:30px; align-items:center; border-bottom:1px solid var(--line); padding:32px 0; }.process-list span { color:var(--red); font-size:11px; font-weight:800; }.process-list h3 { font-size:26px; margin:0; }.process-list p { margin:0; color:var(--muted); line-height:1.5; }
.contact { padding:100px 8vw; background:var(--red); color:white; display:grid; grid-template-columns:1.3fr 1fr; gap:9vw; align-items:end; }.contact .section-kicker { color:#ffc5c9; }.contact h2 em { color:#181818; }.contact-actions p { max-width:480px; font-size:18px; line-height:1.5; }.contact-actions a { display:inline-flex; background:#171717; padding:18px 22px; margin:16px 0 14px; text-transform:uppercase; font-size:12px; font-weight:800; letter-spacing:.08em; }.contact-actions small { display:block; color:#ffd7da; }
footer { background:#101010; color:#aaa; padding:70px 8vw 28px; display:grid; grid-template-columns:2fr repeat(3,1fr); gap:50px; font-size:13px; line-height:1.7; }.footer-brand img { width:220px; }.footer-brand p { color:#666; }footer strong { display:block; color:white; margin-bottom:14px; text-transform:uppercase; font-size:11px; letter-spacing:.12em; }footer>div>a { display:block; }footer a:hover { color:white; }.copyright { grid-column:1/-1; border-top:1px solid #2a2a2a; padding-top:24px; margin-top:25px; color:#666; }
.legal { max-width:920px; margin:0 auto; padding:70px 24px 100px; }.legal-logo { width:220px; margin-bottom:70px; }.legal h1 { color:var(--ink); font-size:64px; }.legal h2 { font-size:26px; margin:42px 0 14px; }.legal p,.legal li { line-height:1.7; color:#555; }.legal-back { display:inline-block; margin-top:45px; color:var(--red); font-weight:700; }
@media(max-width:800px){.nav-shell{height:72px}.brand img{width:190px}nav{display:none}.nav-cta{margin-left:auto;padding:12px;font-size:10px}.hero{height:auto;min-height:720px}.hero-content{margin-left:6vw}.hero-shade{background:linear-gradient(90deg,rgba(11,11,11,.94),rgba(11,11,11,.42))}.hero-note{display:none}.section{padding:80px 6vw}.intro-grid,.process-head,.contact{grid-template-columns:1fr;gap:42px}.service-grid{grid-template-columns:1fr 1fr}.process-list article{grid-template-columns:42px 1fr}.process-list p{grid-column:2}.contact{padding:80px 6vw}footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:520px){h1{font-size:54px}.nav-cta{display:none}.service-grid{grid-template-columns:1fr}.service-card{border-right:0;border-bottom:1px solid var(--line);padding-left:0!important}.intro-grid>div p,.process-head>p{font-size:16px}footer{grid-template-columns:1fr}.legal h1{font-size:48px}}
@media(max-width:800px){.nav-shell.is-scrolled{height:60px}.nav-shell.is-scrolled .brand img{width:165px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
