:root{--ink:#0a0a0a;--paper:#f4f0e7;--gold:#d7ab58;--red:#8c201e;--line:rgba(244,240,231,.18);--display:Impact,"Arial Narrow",sans-serif;--body:Inter,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--body);font-size:16px;line-height:1.65;overflow-x:hidden}a{color:inherit}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:999;background:var(--gold);color:#000;padding:.7rem 1rem}.site-header{position:fixed;z-index:100;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:1rem 4vw;background:linear-gradient(#090909e8,#09090990,transparent);transition:.25s}.site-header.scrolled{background:#090909f4;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;text-decoration:none;gap:.8rem}.brand img{width:160px;filter:brightness(0) invert(1)}.nav{display:flex;gap:1.5rem;align-items:center}.nav a{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none}.nav a:hover,.nav a[aria-current="page"]{color:var(--gold)}.nav .book{border:1px solid var(--gold);padding:.65rem 1rem}.menu{display:none;background:none;color:#fff;border:1px solid var(--line);padding:.55rem .7rem}.hero{min-height:100vh;display:grid;align-items:end;position:relative;isolation:isolate;padding:10rem 6vw 5rem}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#080808 10%,#08080899 52%,transparent 80%),linear-gradient(0deg,#080808 0%,transparent 55%);z-index:-1}.hero-media{position:absolute;inset:0;z-index:-2;overflow:hidden}.hero-media img{width:100%;height:115%;object-fit:cover;filter:grayscale(1) contrast(1.08);transform:translateY(var(--parallax,0px))}.eyebrow{color:var(--gold);font-size:.75rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase}.hero h1,.page-hero h1{font-family:var(--display);font-size:clamp(4.6rem,13vw,12rem);letter-spacing:-.035em;line-height:.76;text-transform:uppercase;margin:.3rem 0 1.4rem;max-width:1050px}.hero h1 span,.page-hero h1 span{color:transparent;-webkit-text-stroke:2px var(--paper)}.lead{max-width:650px;font-size:clamp(1.05rem,2vw,1.3rem);color:#e8e2d6}.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.15rem;border:1px solid var(--gold);text-decoration:none;text-transform:uppercase;letter-spacing:.13em;font-size:.78rem;font-weight:700;background:var(--gold);color:#0a0a0a}.btn.ghost{background:transparent;color:var(--paper);border-color:var(--paper)}.ticker{overflow:hidden;border-block:1px solid var(--line);background:var(--gold);color:#0b0b0b}.ticker-track{display:flex;width:max-content;animation:ticker 28s linear infinite}.ticker span{padding:.8rem 2rem;font-family:var(--display);font-size:1.3rem;letter-spacing:.08em;text-transform:uppercase}.ticker span::after{content:"✦";margin-left:4rem}@keyframes ticker{to{transform:translateX(-50%)}}main section{padding:7rem 6vw}.split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:7vw;align-items:center}.section-title{font-family:var(--display);font-size:clamp(3rem,7vw,6.5rem);line-height:.88;text-transform:uppercase;margin:.5rem 0 2rem}.section-title em{font-style:normal;color:var(--gold)}.copy p{color:#c8c2b7;max-width:740px}.portrait{height:680px;position:relative;overflow:hidden}.portrait img{width:100%;height:120%;object-fit:cover;filter:grayscale(.85);transform:translateY(var(--parallax,0px))}.portrait::before{content:"Since 1991";position:absolute;z-index:2;left:-1rem;bottom:2rem;background:var(--red);padding:.7rem 1rem;font-family:var(--display);font-size:1.8rem;transform:rotate(-4deg)}.dark-paper{background:var(--paper);color:var(--ink)}.dark-paper .copy p,.dark-paper p{color:#45413c}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #0003}.service-card{padding:2rem 1.3rem;border-right:1px solid #0003}.service-card b{font-family:var(--display);font-size:4rem;color:var(--red)}.service-card h3{font-family:var(--display);font-size:2rem;text-transform:uppercase;margin:.4rem 0}.locations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.location-card{min-height:580px;position:relative;overflow:hidden;display:flex;align-items:end;text-decoration:none;background:#222}.location-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.9) brightness(.58);transition:.5s}.location-card:hover img{transform:scale(1.05);filter:grayscale(.25) brightness(.55)}.location-card .inside{position:relative;padding:2rem}.location-card h3{font-family:var(--display);font-size:3rem;line-height:.9;text-transform:uppercase;margin:0 0 .7rem}.quote-slider{position:relative;min-height:320px}.quote{position:absolute;inset:0;opacity:0;transform:translateX(30px);transition:.6s;display:grid;place-content:center;text-align:center}.quote.active{opacity:1;transform:none}.quote blockquote{font-family:Georgia,serif;font-size:clamp(1.6rem,3.5vw,3rem);line-height:1.25;max-width:900px;margin:0 auto 1rem}.page-hero{padding:12rem 6vw 4rem;min-height:72vh;display:flex;flex-direction:column;justify-content:flex-end;position:relative;isolation:isolate}.page-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#080808 12%,#0808088a 65%,#08080822),linear-gradient(0deg,#080808,transparent 60%);z-index:-1}.page-hero img{position:absolute;inset:0;width:100%;height:110%;object-fit:cover;filter:grayscale(1);z-index:-2;transform:translateY(var(--parallax,0px))}.prose{max-width:860px;margin:auto}.prose h2{font-family:var(--display);font-size:clamp(2.8rem,6vw,5rem);text-transform:uppercase;line-height:.95}.prose p{color:#d4cec4}.pull{border-left:5px solid var(--gold);padding-left:2rem;font-size:1.5rem;color:#fff!important}.hours{width:100%;border-collapse:collapse;margin-top:1rem}.hours td{border-bottom:1px solid #ffffff26;padding:.45rem 0}.hours td:last-child{text-align:right;color:var(--gold)}.location-detail{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;padding-block:3rem;border-bottom:1px solid var(--line)}.location-detail h2{font-family:var(--display);font-size:3.2rem;text-transform:uppercase;line-height:.9;margin:.5rem 0}.location-detail img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:grayscale(.65)}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.contact-card{padding:2rem;border:1px solid var(--line)}.contact-card h2{font-family:var(--display);font-size:2.2rem;text-transform:uppercase}.socials{display:flex;gap:1rem;flex-wrap:wrap}.socials a{border-bottom:1px solid var(--gold);text-decoration:none}.footer{padding:5rem 6vw 2rem;border-top:1px solid var(--line)}.footer-top{display:grid;grid-template-columns:1.4fr repeat(2,1fr);gap:2rem}.footer h2{font-family:var(--display);font-size:clamp(3rem,7vw,6rem);line-height:.9;text-transform:uppercase;margin:0}.footer a{text-decoration:none}.footer small{display:block;margin-top:4rem;color:#8f8b84}.reveal{opacity:0;transform:translateY(26px);transition:.7s}.reveal.in{opacity:1;transform:none}@media(max-width:900px){.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#090909;padding:1rem 6vw;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.menu{display:block}.brand img{width:130px}.hero{padding-left:5vw;padding-right:5vw}.hero h1,.page-hero h1{font-size:clamp(4rem,19vw,8rem)}main section{padding:5rem 5vw}.split,.location-detail{grid-template-columns:1fr}.portrait{height:520px}.service-grid{grid-template-columns:1fr 1fr}.locations-grid,.contact-grid{grid-template-columns:1fr}.location-card{min-height:440px}.footer-top{grid-template-columns:1fr}}@media(max-width:560px){.service-grid{grid-template-columns:1fr}.actions .btn{width:100%}.page-hero{min-height:62vh}.hero h1,.page-hero h1{font-size:3.85rem}.location-detail{gap:1rem}.footer{padding-left:5vw;padding-right:5vw}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.hero-media img,.portrait img,.page-hero img{transform:none!important}.reveal{opacity:1;transform:none}}
