:root{--ink:#0a0909;--paper:#f4efe7;--orange:#f15a30;--wine:#5b0716;--line:rgba(244,239,231,.22)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.6}a{color:inherit}img{display:block;max-width:100%}
.site-header{position:absolute;z-index:10;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:1.4rem 4vw;border-bottom:1px solid rgba(255,255,255,.2)}.wordmark{text-decoration:none;line-height:.9;font-family:"Barlow Condensed",sans-serif;letter-spacing:.08em}.wordmark span{display:block;font-size:.78rem}.wordmark strong{font-size:1.08rem}.site-header nav{display:flex;gap:2rem}.site-header nav a{text-decoration:none;font-size:.9rem;font-weight:600}.site-header nav a:hover{color:#ff8a62}.menu-button{display:none;background:none;color:white;border:1px solid rgba(255,255,255,.45);padding:.5rem .8rem}
.hero{min-height:100svh;position:relative;display:grid;align-items:end;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 37%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,2,2,.86) 0%,rgba(4,2,2,.44) 48%,rgba(4,2,2,.12)),linear-gradient(0deg,rgba(4,2,2,.72),transparent 55%)}.hero-copy{position:relative;z-index:1;width:min(900px,92vw);padding:10rem 4vw 8vh}.eyebrow,.section-label{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:700;color:#ff8a62}.hero h1,.intro h2,.gallery-heading h2,.booking h2{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;line-height:.82;letter-spacing:-.02em;margin:.45rem 0 1.6rem}.hero h1{font-size:clamp(4rem,10vw,9.4rem);max-width:950px}.hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1.5px var(--paper)}.hero-intro{font-size:clamp(1.2rem,2vw,1.65rem);max-width:520px;margin:0 0 2rem}.button{display:inline-block;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;font-weight:700;padding:1rem 1.25rem;border:1px solid transparent;transition:.2s}.button-primary{background:var(--orange);color:#130807}.button-primary:hover{background:#ff744d;transform:translateY(-2px)}.credit{position:absolute;z-index:2;right:2rem;bottom:1.5rem;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;writing-mode:vertical-rl}
.intro{display:grid;grid-template-columns:1fr 2fr;gap:4rem;padding:9rem 6vw;background:var(--paper);color:var(--ink)}.intro .section-label{color:#a82c18}.intro-copy{max-width:930px}.intro h2{font-size:clamp(3.5rem,7vw,7.5rem);margin-top:0}.intro .lead{font-size:clamp(1.2rem,2vw,1.6rem);max-width:820px}.intro-copy>p:last-child{max-width:700px;color:#4b4642}
.feature-band{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.feature-band article{padding:4rem 4vw;border-right:1px solid var(--line)}.feature-band article:last-child{border-right:0}.feature-band span{font-family:"Barlow Condensed";font-size:1rem;color:#ff8a62}.feature-band h3{font-family:"Barlow Condensed";font-size:2.2rem;text-transform:uppercase;margin:.25rem 0 .5rem}.feature-band p{color:#bfb6ad;max-width:330px}
.statement{position:relative;min-height:85vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.statement img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1);opacity:.62}.statement:after{content:"";position:absolute;inset:0;background:radial-gradient(circle,transparent,rgba(0,0,0,.7))}.statement blockquote{position:relative;z-index:1;font-family:"Barlow Condensed";font-size:clamp(2.8rem,7vw,7rem);font-weight:700;line-height:.92;text-align:center;text-transform:uppercase;width:min(1100px,88vw);margin:0;text-wrap:balance}
.gallery-section{padding:8rem 4vw;background:#100e0e}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:3rem}.gallery-heading h2{font-size:clamp(3.8rem,7vw,7rem);margin:.3rem 0 0}.gallery-heading>p{max-width:360px;color:#aaa19a}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:240px;gap:.8rem}.gallery-item{appearance:none;background:#222;border:0;padding:0;overflow:hidden;cursor:zoom-in}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s,filter .5s}.gallery-item:hover img{transform:scale(1.04);filter:brightness(1.12)}.gallery-item.wide{grid-column:span 2}.gallery-item.tall{grid-row:span 2}
.booking{display:grid;grid-template-columns:1.3fr .8fr;gap:6vw;padding:9rem 6vw;background:var(--wine)}.booking h2{font-size:clamp(3.5rem,7vw,7rem)}.booking-copy>p:not(.section-label){font-size:1.15rem;max-width:650px;color:#e0c8c5}.event-types{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2rem}.event-types span{border:1px solid rgba(255,255,255,.38);padding:.45rem .75rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}.contact-card{align-self:center;background:var(--orange);color:#190805;padding:clamp(2rem,4vw,4rem)}.contact-card>p{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:700}.contact-email{display:block;font-family:"Barlow Condensed";font-size:clamp(1.35rem,2.5vw,2.4rem);font-weight:700;line-height:1.1;overflow-wrap:anywhere;margin:1.6rem 0 2rem}.button-light{background:var(--paper);color:#1a0d0a}.button-light:hover{background:white;transform:translateY(-2px)}.contact-links{display:flex;gap:1.2rem;margin-top:2rem;font-size:.85rem;font-weight:600}.contact-links a:hover{text-decoration:none}
footer{display:flex;justify-content:space-between;padding:2rem 4vw;color:#8f8780;font-size:.75rem;text-transform:uppercase;letter-spacing:.09em;border-top:1px solid #242020}
.lightbox{width:100vw;height:100vh;max-width:none;max-height:none;border:0;padding:4rem;background:rgba(0,0,0,.94);color:white}.lightbox[open]{display:grid;grid-template-columns:50px 1fr 50px;align-items:center}.lightbox img{max-width:100%;max-height:82vh;margin:auto}.lightbox button{background:none;color:white;border:0;font-size:1.8rem;cursor:pointer}.lightbox .close-lightbox{position:absolute;top:1.25rem;right:1.5rem;font:600 .8rem "DM Sans";text-transform:uppercase;letter-spacing:.1em}
@media(max-width:800px){.site-header{align-items:flex-start}.menu-button{display:block}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;padding:1rem 4vw 1.4rem;background:rgba(10,9,9,.96);flex-direction:column;gap:1rem}.site-header nav.open{display:flex}.hero-copy{padding-bottom:10vh}.hero h1{font-size:clamp(3.75rem,17vw,6rem)}.credit{display:none}.intro{grid-template-columns:1fr;gap:2rem;padding:6rem 6vw}.feature-band{grid-template-columns:1fr}.feature-band article{border-right:0;border-bottom:1px solid var(--line);padding:2.5rem 6vw}.gallery-heading{display:block}.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:180px}.booking{grid-template-columns:1fr;padding:6rem 6vw}.contact-card{padding:2rem}footer{display:block}.lightbox{padding:3rem .75rem}.lightbox[open]{grid-template-columns:36px 1fr 36px}}
@media(max-width:480px){.gallery{grid-auto-rows:150px}.gallery-item.wide{grid-column:span 2}.statement{min-height:70vh}.hero>img{object-position:57% center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery-item img,.button{transition:none}}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.credit{bottom:4.5rem}.video-toggle{position:absolute;z-index:3;right:1.3rem;bottom:1.25rem;background:rgba(10,9,9,.56);color:white;border:1px solid rgba(255,255,255,.5);padding:.55rem .8rem;font:600 .72rem "DM Sans",sans-serif;text-transform:uppercase;letter-spacing:.1em;cursor:pointer}.video-toggle:hover{background:rgba(10,9,9,.85)}
.contact-links{display:grid;gap:.8rem}.contact-link-row{display:flex;flex-wrap:wrap;column-gap:1.2rem;row-gap:.35rem}
