:root{--ink:#090a0c;--panel:#141518;--panel2:#1e2023;--paper:#f2f1ef;--muted:#a6a8ac;--line:rgba(255,255,255,.12);--acid:#d71935;--orange:#f04456}
body{background:var(--ink);color:var(--paper)}
.topbar{background:var(--acid);color:#fff}
.topbar .right{color:rgba(255,255,255,.82)}
.brand-logo{width:105px;height:54px;object-fit:contain;flex:0 0 auto}
.brand-name{display:none}
.button,.nav-cta,.review-link{background:var(--acid);border-color:var(--acid);color:#fff}
.button:hover,.nav-cta:hover,.review-link:hover{background:#f12c48}
.button.ghost{color:#fff;background:#17181b;border-color:rgba(255,255,255,.25)}
.button.ghost:hover{border-color:var(--acid);background:rgba(215,25,53,.12);color:#fff}
.service-card{background:linear-gradient(150deg,#18191c,#111214)}
.service-card:hover{background:linear-gradient(150deg,#211519,#141416)}
.detail-card{background:linear-gradient(150deg,#191a1d,#121315)}
.eyebrow,.service-card .number,.detail-card .mini,.art-label{color:#f04456}
.eyebrow:before{background:var(--acid)}
.hero h1 em,.statement h2 span{color:#f04456}
.hero-meta span:before{color:#f04456}
.split-art{background:#101114}
.image-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.image-frame:before,.image-frame:after{display:none}
.image-frame .art-label{background:rgba(8,9,10,.78);padding:12px 14px;z-index:2}
.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.photo-card{position:relative;height:310px;margin:0;overflow:hidden;background:#17181b}
.photo-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.photo-card:hover img{transform:scale(1.04)}
.photo-card:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(5,6,7,.88))}
.photo-card figcaption{position:absolute;z-index:2;left:22px;bottom:18px;text-transform:uppercase;font:700 22px 'Arial Narrow',Impact,sans-serif;letter-spacing:.08em;color:#fff}
.review-section{background:#111214}
.review-panel{display:grid;grid-template-columns:.8fr 1.2fr;border:1px solid var(--line);background:linear-gradient(135deg,#191a1d,#0f1012)}
.review-score{padding:42px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}
.review-score strong{font:800 72px 'Arial Narrow',Impact,sans-serif;line-height:1;color:#fff}
.review-score .stars{color:#f04456;font-size:24px;letter-spacing:.14em}
.review-score small{color:var(--muted);font-size:13px;margin-top:8px}
.review-copy{padding:42px}
.review-copy h2{font-size:clamp(36px,4vw,54px);margin:0 0 20px}
.review-themes{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:22px 0}
.review-themes span{border-top:1px solid var(--line);padding:11px 0;color:#ddd;font-size:14px}
.review-themes span:before{content:"★";color:#f04456;margin-right:9px}
.review-source{font-size:12px;color:#92969a;margin:16px 0 22px}
.review-link{display:inline-flex;align-items:center;padding:12px 18px;font-weight:800;font-size:13px}
.route-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:18px}
.address-card{padding:26px;background:var(--panel);border:1px solid var(--line)}
.address-card h2{font-size:34px;margin:12px 0}
.address-card p{color:var(--muted)}
.map-frame{height:480px;border:1px solid var(--line);background:#151619}
.map-frame iframe{width:100%;height:100%;border:0;filter:grayscale(1) invert(.9) contrast(.88)}
.brand-banner{width:100%;height:100%;object-fit:cover}
.photo-intro{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.photo-intro img{width:100%;height:320px;object-fit:cover;border:1px solid var(--line)}
@media(max-width:980px){.photo-card{height:260px}.route-layout{grid-template-columns:1fr}.map-frame{height:420px}}
@media(max-width:720px){.brand-logo{width:92px;height:48px}.photo-grid{grid-template-columns:1fr}.photo-card{height:250px}.review-panel{grid-template-columns:1fr}.review-score{border-right:0;border-bottom:1px solid var(--line);padding:28px}.review-copy{padding:28px}.review-score strong{font-size:58px}.review-themes{grid-template-columns:1fr}.map-frame{height:350px}.photo-intro{grid-template-columns:1fr}.photo-intro img{height:245px}}
.location-photo{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;margin-top:24px;border:1px solid var(--line)}
