/* SO CLOSE — brand overrides on top of light.css */
.brand-logo{height:34px;width:auto}
@media(max-width:560px){.brand-logo{height:26px}}
.brand .glyph{display:none}
.footer .brand{gap:0}
.footer-logo{height:38px;width:auto}
.host-portrait .name .who{letter-spacing:.04em}
a{color:var(--accent)}
a:hover{color:var(--accent-deep)}
.header-nav a,.mobile-menu a,.footer a,.brand,.soc,.room a{color:inherit}
.lang a{display:inline-block;padding:8px 12px;color:var(--muted);font:inherit;text-transform:uppercase;text-decoration:none;line-height:1}
.lang a.active{background:var(--ink);color:#fff}
.lang a:hover{color:var(--ink)}
.lang a.active:hover{color:#fff}

/* ---------- subpages ---------- */
.sub-hero{background:var(--ink-panel);color:var(--on-dark);padding:calc(var(--header-h) + 54px) 0 54px;position:relative;overflow:hidden}
.sub-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(900px 480px at 84% -12%,rgba(230,10,90,.28),transparent 62%);pointer-events:none}
.sub-hero .wrap{position:relative}
.sub-hero .eyebrow{color:#ff5b8f;margin-top:18px}
.sub-hero h1{font-family:var(--ff-display);font-weight:800;text-transform:uppercase;font-size:clamp(2.3rem,5.2vw,4.1rem);line-height:1;margin:12px 0 0;letter-spacing:-.01em;text-wrap:balance}
.sub-hero .lead{color:var(--on-dark-2);margin-top:18px;max-width:62ch;font-size:clamp(1.02rem,1.35vw,1.18rem)}
.crumbs{display:flex;gap:10px;align-items:center;font-family:var(--ff-mono);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--on-dark-2)}
.crumbs a{color:#ff5b8f;text-decoration:none}
.crumbs a:hover{color:#fff}
.sub-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.sub-cta .btn-outline{color:var(--on-dark);border-color:rgba(255,255,255,.4)}
.sub-cta .btn-outline:hover{background:#fff;color:var(--ink);border-color:#fff}
.section .rich .sub-cta .btn-outline{color:var(--ink);border-color:var(--line-2)}
.section .rich .sub-cta .btn-outline:hover{background:var(--paper);color:var(--ink);border-color:var(--ink)}
.rich{max-width:74ch}
.rich h2{font-family:var(--ff-display);font-weight:800;text-transform:uppercase;font-size:clamp(1.7rem,3.3vw,2.5rem);line-height:1.05;margin:0 0 16px}
.rich h2+p{margin-top:0}
.rich p{color:var(--ink-2);font-size:1.06rem;line-height:1.7;margin:0 0 16px;text-wrap:pretty}
.rich p:last-child{margin-bottom:0}
.rich h2:not(:first-child){margin-top:44px}
.rich .quote{font-family:var(--ff-display);font-size:clamp(1.3rem,2.4vw,1.8rem);font-weight:700;color:var(--accent);line-height:1.25}
.rich .rooms-grid{margin-top:30px}
.rich .faq{margin-top:8px}
.on-dark-rich h2{color:var(--on-dark)}
.on-dark-rich p{color:var(--on-dark-2)}
.on-dark-rich a{color:#ff5b8f}
.on-dark-rich a:hover{color:#fff}
.on-dark-h2{color:var(--on-dark)}
.sub-h2{font-family:var(--ff-display);font-weight:800;text-transform:uppercase;font-size:clamp(1.7rem,3.3vw,2.5rem);line-height:1.05;margin:0 0 26px}
.kv{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:28px 0 8px}
.kv>div{background:var(--paper);padding:18px 20px;display:flex;flex-direction:column;gap:6px}
.kv span{font-family:var(--ff-mono);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.kv b{font-family:var(--ff-display);font-weight:700;text-transform:uppercase;font-size:1.16rem;line-height:1.15}
.faq-tail{margin-top:26px;font-family:var(--ff-mono);font-size:.86rem;color:var(--muted)}
.next-up{background:var(--bg-2);border-top:1px solid var(--line)}
.next-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.next-grid a{display:flex;flex-direction:column;gap:6px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px 22px;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s}
.next-grid a:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 20px 40px -26px rgba(24,18,25,.4)}
.next-grid span{font-family:var(--ff-mono);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.next-grid b{font-family:var(--ff-display);font-weight:700;text-transform:uppercase;font-size:1.2rem;line-height:1.15;color:var(--ink)}
.host-grid .rich{max-width:none}
@media(max-width:900px){.kv{grid-template-columns:repeat(2,1fr)}.next-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.kv{grid-template-columns:1fr}.next-grid{grid-template-columns:1fr}}
