/* Red is reserved for actions and small details; surfaces remain graphite. */
:root{--brand-red:#b21f2d;--brand-red-hover:#c12837;--brand-focus:#e57780;--accent:#b21f2d;--accent-light:#dedede;--accent-soft:rgba(178,31,45,.08)}
body{background:#101010}
.hero{background:#101010}
.header,.header.scrolled{background:rgba(16,16,16,.97)}
.topbar{background:#0b0b0b}.topbar strong{color:#d3d3d3}
.hero-glow,.cursor-glow{display:none}
.hero-lines{opacity:.15}
.hero h1 .accent{color:#e9e9e9}
.eyebrow{color:#bcbcbc}
.eyebrow::before{background:linear-gradient(90deg,var(--brand-red),transparent)}
.btn-primary,.mobile-cta a:last-child,.assistant-controls button:last-child{background:var(--brand-red);border-color:var(--brand-red);color:#fff;box-shadow:none}
.btn-primary:hover,.mobile-cta a:last-child:hover,.assistant-controls button:last-child:hover{background:var(--brand-red-hover);border-color:var(--brand-red-hover);color:#fff}
.btn-ghost{background:#171717;border-color:#505050}
.desktop-nav a[aria-current=page],.mobile-menu a[aria-current=page]{color:#f4f4f4;text-decoration-color:var(--brand-red);text-decoration-thickness:2px}
.desktop-nav a::after{background:var(--brand-red)}
.text-link{text-decoration-color:var(--brand-red)}
.text-link:hover{color:#fff;text-decoration-color:var(--brand-focus)}
.destination>span,.work-photo b{color:var(--brand-focus)}
.destination:hover h2{color:#fff}
.progress{background:var(--brand-red);box-shadow:none}
.hero-tags span::before{border-color:var(--brand-red)}
.ticker-track b{color:var(--brand-red)}
.service-rail:hover,.service-rail:focus-within{border-color:#7e3e44;background:linear-gradient(110deg,#292526,#151515)}
.service-rail::before{background:linear-gradient(180deg,transparent,var(--brand-red),transparent)}
.technique-summary .text-link,.service-editorial .text-link{color:#84202a}
.technique-summary .text-link:hover,.service-editorial .text-link:hover{color:#60131c}
.contact-dialog,.assistant-dialog{border-top-color:var(--brand-red)}
.contact-dialog a,.contact-page button.text-link{color:#e0e0e0;text-decoration-color:var(--brand-red)}
.assistant-launcher::after{background:var(--brand-red);box-shadow:none}
.assistant-track span{background:var(--brand-red)}
.assistant-option[aria-pressed=true]{border-color:var(--brand-red);background:#2b2425}
.assistant-option[aria-pressed=true]::after{background:var(--brand-red)}
.language-list a[aria-current=true]{border-inline-start:2px solid var(--brand-red);color:#fff;background:#292526}
::selection{background:#92303a;color:#fff}
:focus-visible{outline-color:var(--brand-focus)}
.compare:focus-within{outline-color:var(--brand-focus)}
.compare:focus-within .compare-handle,.compare.dragging .compare-handle{background:#fff;box-shadow:0 0 0 4px #191919,0 0 0 7px var(--brand-focus)}
.work-media figcaption>span{color:#c9c9c9;border-color:var(--brand-red)}
/* Real alpha transparency, without a white tile behind the logo. */
.brand-art{background:transparent;border-radius:0;overflow:visible}
.brand-art .official-logo{position:static;inset:auto;width:100%;height:100%;max-height:none;object-fit:contain;filter:drop-shadow(0 0 1px #ededed80)}
.logo-card{background:transparent;border:0;box-shadow:none;clip-path:none;padding:0;transform:none}
.brand .brand-art{height:auto}
@media(prefers-reduced-motion:reduce){.destination>span{transition:none;transform:none}}
