:root{--ink:#0f2730;--ink2:#0a1c23;--bone:#f4efe6;--brass:#b8935a}
img{max-width:100%;height:auto}
html{scroll-behavior:smooth}
section[id],header[id]{scroll-margin-top:70px}
body{font-family:'Jost',sans-serif;font-weight:300;font-size:1.02rem;line-height:1.75;color:var(--ink);background:var(--bone)}
h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:400;line-height:1.12;color:var(--ink)}
h2{font-size:clamp(2.2rem,4.6vw,3.6rem);margin-bottom:1.2rem}
h3{font-size:1.5rem;margin-bottom:.5rem}
a{color:var(--ink)}
.eyebrow{font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;color:var(--brass);font-weight:400;margin-bottom:1rem}
.lead-i{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.35rem;opacity:.85}
.center{text-align:center}
.narrow{max-width:900px}
.fine{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;opacity:.7}
.note{border-left:1px solid var(--brass);padding-left:1rem;font-style:italic}
.sec{padding:96px 0}
.dark{background:var(--ink);color:#e9e4d9}
.dark h2,.dark h3{color:var(--bone)}
.dark a{color:#e9e4d9}
.navbar{background:rgba(10,28,35,.93);backdrop-filter:blur(12px);padding:.7rem 0;border-bottom:1px solid rgba(184,147,90,.2)}
.navbar-brand{font-family:'Cormorant Garamond',serif;font-size:1.2rem;letter-spacing:.2em;text-transform:uppercase;color:var(--bone)!important;font-weight:400}
.navbar-brand span{opacity:.7}
.nav-link{font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:rgba(244,239,230,.8)!important;transition:.3s}
.nav-link:hover{color:var(--brass)!important}
.navbar-toggler{border-color:rgba(244,239,230,.4)}
.navbar-toggler-icon{filter:invert(1)}
.btn{border-radius:0;font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;padding:15px 38px;transition:.3s;font-weight:400}
.btn-brass{background:var(--brass);color:var(--ink2);border:1px solid var(--brass)}
.btn-brass:hover{background:transparent;color:var(--bone)}
.btn-ghost{border:1px solid rgba(244,239,230,.4);color:var(--bone)}
.btn-ghost:hover{border-color:var(--brass);color:var(--brass)}
.navbar .btn{padding:10px 22px}
.hero{min-height:min(100vh,860px);display:flex;align-items:center;padding:120px 0 70px;background:linear-gradient(180deg,rgba(10,28,35,.55),rgba(10,28,35,.62)),url(img/aerial-beach.webp) center 40%/cover;color:var(--bone)}
.hero h1{color:var(--bone);font-size:clamp(2.8rem,6.4vw,5.2rem);text-shadow:0 2px 18px rgba(0,0,0,.55)}
.hero .eyebrow{color:#d8b987;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.hero .sub{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.4rem;max-width:640px;margin:1.2rem 0 2rem;text-shadow:0 1px 10px rgba(0,0,0,.6)}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap}
.frame{width:100%;outline:1px solid rgba(184,147,90,.45);outline-offset:6px;display:block}
.frame.sq{aspect-ratio:4/3;object-fit:cover}
.frame.wide{aspect-ratio:21/8;object-fit:cover;object-position:50% 55%}
.vm h3,.tier h3,.team h3{font-size:1.45rem}
.am img,.venue img{width:100%;aspect-ratio:4/3;object-fit:cover;margin-bottom:1rem;border:1px solid rgba(184,147,90,.35)}
.am p,.venue p{font-size:.95rem;opacity:.9}
.tier{border-top:1px solid rgba(184,147,90,.4);padding-top:1rem}
.team>div{border-top:1px solid rgba(184,147,90,.3);padding-top:.8rem}
.team h3{font-size:1.35rem;margin-bottom:.2rem}
.team p{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;opacity:.75;margin:0}
.scorecard{border-top:1px solid rgba(184,147,90,.4);border-bottom:1px solid rgba(184,147,90,.4);padding:48px 0 36px}
.card-tbl{width:100%;border-collapse:collapse;text-align:center}
.card-tbl th{font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;color:var(--brass);font-weight:400;padding:6px 4px;border-bottom:1px solid rgba(184,147,90,.5)}
.card-tbl td{font-family:'Cormorant Garamond',serif;font-size:1.2rem;padding:3px 4px;border-bottom:1px solid rgba(15,39,48,.1)}
.card-tbl .tot td{border-top:1px solid var(--brass);font-weight:500;font-size:1.2rem}
.link-brass{color:var(--brass)!important;letter-spacing:.12em}
.dark .link-brass{color:#d8b987!important}
.map{width:100%;height:380px;border:1px solid rgba(184,147,90,.45)}
.social a{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase}
.foot{background:var(--ink2);color:rgba(244,239,230,.75);padding:36px 0;text-align:center;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}
.foot a{color:var(--brass)}
@media(max-width:991px){.sec{padding:64px 0}.hero{padding:100px 0 50px}.navbar-brand{font-size:1rem;letter-spacing:.14em}.navbar-collapse{padding:1rem 0}}
@media(max-width:575px){.btn{padding:14px 28px}.map{height:300px}}
