
:root{
 --bg:#050505;--bg2:#171208;--panel:#18140f;--panel2:#0a0907;
 --text:#fffaf0;--muted:#cec7b8;--accent:#dfb246;--accent2:#f7da83;
 --line:rgba(255,255,255,.09);--line2:rgba(223,178,70,.30);
 --soft:rgba(223,178,70,.08);--glow1:rgba(174,121,25,.14);--glow2:rgba(92,74,27,.08);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
 margin:0;color:var(--text);
 font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 line-height:1.68;
 background:
 radial-gradient(circle at 8% 0%,var(--glow1),transparent 28%),
 radial-gradient(circle at 92% 6%,var(--glow2),transparent 24%),
 linear-gradient(180deg,var(--bg2),var(--bg));
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}

.wrap{
 width:min(1160px,calc(100% - 160px))!important;
 max-width:1160px!important;
 margin-left:auto!important;
 margin-right:auto!important;
}

/* HEADER */
.band{
 position:sticky;top:0;z-index:50;
 background:rgba(3,3,3,.97)!important;
 border-bottom:1px solid var(--line)!important;
 backdrop-filter:blur(15px);
}
.bandin{
 min-height:88px!important;
 display:flex!important;
 align-items:center!important;
 gap:22px!important;
}
.brand{
 display:flex!important;
 align-items:center!important;
 width:max-content!important;
 font-size:0!important;
 line-height:0!important;
 color:transparent!important;
}
.brand img{
 width:178px!important;
 max-width:178px!important;
 height:64px!important;
 object-fit:contain!important;
 filter:drop-shadow(0 0 18px rgba(223,178,70,.16));
}
.brand span{display:none!important}
.nav{
 margin-left:auto!important;
 display:flex!important;
 align-items:center!important;
 justify-content:flex-end!important;
 gap:8px!important;
 flex-wrap:wrap!important;
}
.nav a{
 padding:10px 13px!important;
 border-radius:999px!important;
 color:var(--muted)!important;
 font-size:14px!important;
 line-height:1.2!important;
 font-weight:800!important;
 border:1px solid transparent!important;
}
.nav a:hover{
 color:#fff!important;
 background:rgba(255,255,255,.045)!important;
 border-color:var(--line)!important;
}
.age{
 min-width:44px!important;
 height:34px!important;
 display:inline-flex!important;
 align-items:center!important;
 justify-content:center!important;
 border:1px solid var(--line2)!important;
 border-radius:999px!important;
 color:#fff!important;
 font-weight:900!important;
}

/* HERO */
.hero{padding:30px 0 20px!important}
.hero-grid{
 display:grid!important;
 grid-template-columns:minmax(0,1fr) minmax(430px,.95fr)!important;
 gap:20px!important;
 align-items:stretch!important;
}
.hero-grid>div:first-child{
 background:linear-gradient(180deg,var(--panel),var(--panel2))!important;
 border:1px solid var(--line)!important;
 border-radius:24px!important;
 padding:34px!important;
 display:flex!important;
 flex-direction:column!important;
 justify-content:center!important;
 box-shadow:0 18px 46px rgba(0,0,0,.16)!important;
}
.hero h1{
 font-size:clamp(38px,4.8vw,58px)!important;
 line-height:1.06!important;
 letter-spacing:-.035em!important;
 margin:12px 0 14px!important;
}
.hero .lead{font-size:18px!important;color:var(--muted)!important}
.kicker{
 display:inline-flex!important;
 width:max-content!important;
 padding:7px 10px!important;
 border-radius:999px!important;
 background:var(--soft)!important;
 border:1px solid var(--line2)!important;
 color:#f5df9e!important;
 font-size:12px!important;
 font-weight:900!important;
}
.actions{
 display:flex!important;
 gap:10px!important;
 flex-wrap:wrap!important;
 margin-top:10px!important;
}
.btn{
 display:inline-flex!important;
 align-items:center!important;
 justify-content:center!important;
 min-height:50px!important;
 padding:0 20px!important;
 border-radius:13px!important;
 background:linear-gradient(135deg,var(--accent),var(--accent2))!important;
 color:#0a0905!important;
 font-weight:900!important;
 border:1px solid rgba(255,255,255,.18)!important;
 box-shadow:0 12px 28px rgba(0,0,0,.22)!important;
}
.btn.alt{
 background:rgba(255,255,255,.035)!important;
 color:#fff!important;
 border-color:var(--line2)!important;
 box-shadow:none!important;
}

/* real banner replaces old decorative mockup */
.directory,.mapcard{
 position:relative!important;
 min-height:440px!important;
 overflow:hidden!important;
 border-radius:24px!important;
 border:1px solid var(--line2)!important;
 background:#090807!important;
 box-shadow:0 24px 62px rgba(0,0,0,.42)!important;
 padding:0!important;
}
.directory>img,.mapcard>img{
 width:100%!important;
 height:100%!important;
 min-height:440px!important;
 aspect-ratio:1280/440!important;
 object-fit:cover!important;
}
.directory>:not(img),.mapcard>:not(img){display:none!important}

/* CONTENT */
main{padding-bottom:58px!important}
main>section{
 width:min(1160px,calc(100% - 160px))!important;
 max-width:1160px!important;
 margin:0 auto 18px!important;
 padding:0!important;
}
main>section>.wrap{
 width:100%!important;
 max-width:none!important;
 margin:0!important;
 padding:27px 29px!important;
 border-radius:20px!important;
 background:linear-gradient(180deg,var(--panel),var(--panel2))!important;
 border:1px solid var(--line)!important;
 box-shadow:0 16px 38px rgba(0,0,0,.14)!important;
}
main h2{
 font-size:clamp(27px,3vw,36px)!important;
 line-height:1.17!important;
 margin:0 0 14px!important;
 color:#fff!important;
}
main h3{
 font-size:21px!important;
 line-height:1.28!important;
 margin:22px 0 9px!important;
 color:#fff!important;
}
main p,main li{
 font-size:17px!important;
 color:var(--muted)!important;
}
main strong{color:#fff!important}
.grid3{
 display:grid!important;
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:14px!important;
 margin:18px 0!important;
}
.card{
 padding:18px 19px!important;
 border-radius:16px!important;
 background:rgba(255,255,255,.028)!important;
 border:1px solid var(--line)!important;
}
.card strong{
 display:block!important;
 margin-bottom:5px!important;
 color:#fff!important;
}
.note{
 padding:17px 19px!important;
 border-left:3px solid var(--accent)!important;
 border-radius:0 14px 14px 0!important;
 background:var(--soft)!important;
 color:var(--muted)!important;
}
table{
 width:100%!important;
 border-collapse:collapse!important;
 margin:18px 0!important;
}
th,td{
 padding:12px 13px!important;
 border:1px solid var(--line)!important;
 text-align:left!important;
}
th{background:var(--soft)!important;color:#fff!important}
.crumbs{color:#998f7a!important;font-size:14px!important;margin-bottom:16px!important}

/* 4 CTA in the actual text */
.text-cta-row{
 display:flex!important;
 justify-content:center!important;
 align-items:center!important;
 margin:29px 0 33px!important;
}
.text-cta-row a{
 display:inline-flex!important;
 align-items:center!important;
 justify-content:center!important;
 min-height:54px!important;
 padding:0 30px!important;
 border-radius:14px!important;
 background:linear-gradient(135deg,var(--accent),var(--accent2))!important;
 color:#090805!important;
 font-size:16px!important;
 font-weight:900!important;
 border:1px solid rgba(255,255,255,.18)!important;
 box-shadow:0 14px 30px rgba(0,0,0,.25)!important;
}

/* legal pages */
.legal,.box{
 padding:27px 29px!important;
 border-radius:20px!important;
 background:linear-gradient(180deg,var(--panel),var(--panel2))!important;
 border:1px solid var(--line)!important;
 box-shadow:0 16px 38px rgba(0,0,0,.14)!important;
 color:var(--muted)!important;
}

/* footer */
.foot{
 margin-top:44px!important;
 padding:34px 0 44px!important;
 border-top:1px solid var(--line)!important;
 background:#030303!important;
 color:var(--muted)!important;
}

@media(max-width:960px){
 .wrap,main>section{width:min(100% - 40px,1160px)!important}
 .bandin{
  min-height:auto!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  padding:12px 0!important;
 }
 .nav{
  margin-left:0!important;
  justify-content:flex-start!important;
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  padding-bottom:4px!important;
 }
 .nav a{white-space:nowrap!important}
 .age{display:none!important}
 .hero-grid{grid-template-columns:1fr!important}
 .directory,.mapcard{min-height:0!important}
 .directory>img,.mapcard>img{height:auto!important;min-height:0!important}
 .grid3{grid-template-columns:1fr!important}
}
@media(max-width:640px){
 .wrap,main>section{width:min(100% - 24px,1160px)!important}
 .brand img{width:158px!important;height:58px!important}
 .hero-grid>div:first-child{padding:22px!important;border-radius:18px!important}
 .directory,.mapcard{border-radius:18px!important}
 main>section>.wrap,.legal,.box{padding:21px 18px!important;border-radius:17px!important}
}
