
:root{
  --navy:#0B1628; --navy-2:#13233F; --navy-3:#1D3358; --ink:#101826; --ink-2:#3A4354; --muted:#5D6677;
  --paper:#F6F4EF; --rule:#DED9CE; --gold:#D4AF5A; --gold-deep:#8F6B1E; --gold-soft:#F3E7C6;
  --action:#0B7A55; --action-hover:#0A6646; --on-dark:#EEF1F6; --on-dark-2:#B7C1D3;
  --display:"Bricolage Grotesque", "Avenir Next", "Segoe UI", system-ui, sans-serif;
  --sans:"Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;
  color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;margin:0}
.wrap{max-width:1180px;margin-inline:auto;padding-inline:20px}
h1,h2,h3{font-family:var(--display);line-height:1.05;margin:0;text-wrap:balance;letter-spacing:-.02em}
h2{font-size:clamp(34px,4.6vw,54px);font-weight:700}
h3{font-size:24px;font-weight:700;letter-spacing:-.01em}
p{margin:0;text-wrap:pretty}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.eyebrow{font-family:var(--mono);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep)}
.dark .eyebrow{color:var(--gold)}
.lede{font-size:19px;color:var(--ink-2);max-width:60ch}
.dark{background:var(--navy);color:var(--on-dark)}
.dark .lede{color:var(--on-dark-2)}

.btn{display:inline-flex;align-items:center;gap:10px;min-height:50px;padding:0 24px;border-radius:999px;font:600 15.5px/1 var(--sans);text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:transform .2s ease, background .2s ease}
.btn svg{transition:transform .2s ease}
.btn:hover svg{transform:translateX(3px)}
.btn.primary{background:var(--action);color:#fff;box-shadow:0 10px 24px -12px rgba(11,122,85,.7)}
.btn.primary:hover{background:var(--action-hover);transform:translateY(-1px)}
.btn.line{border-color:rgba(255,255,255,.35);color:var(--on-dark)}
.btn.line:hover{border-color:var(--gold);color:var(--gold)}

.top{position:fixed;left:0;right:0;top:0;z-index:20;padding-top:env(safe-area-inset-top,0px);transition:background .3s ease, box-shadow .3s ease}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px}
.top.solid{background:rgba(11,22,40,.94);backdrop-filter:blur(10px);box-shadow:0 1px 0 rgba(255,255,255,.08)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}
.mark{min-width:46px;height:40px;padding-inline:8px;border-radius:10px;background:var(--gold);display:grid;place-items:center;color:var(--navy);font:800 16px var(--display);letter-spacing:.02em}
.brand b{display:block;font:700 19px/1.1 var(--display)}
.brand small{display:block;font:500 11px/1.3 var(--mono);letter-spacing:.08em;color:var(--on-dark-2);text-transform:uppercase}
nav{display:flex;gap:4px 24px;flex-wrap:wrap;font-size:15px}
nav a{color:var(--on-dark-2);text-decoration:none;padding-block:6px;position:relative}
nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--gold);transition:right .25s ease}
nav a:hover{color:#fff}
nav a:hover::after{right:0}
@media (max-width:860px){nav{display:none}}

.hero{position:relative;overflow:hidden;padding-top:calc(116px + env(safe-area-inset-top,0px));background:radial-gradient(120% 80% at 70% 100%, #1F3A66 0%, var(--navy) 60%)}
#sky{position:absolute;inset:0;width:100%;height:100%;display:block}
.hero .wrap{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:48px;align-items:center;padding-bottom:160px}
.hero h1{font-size:clamp(34px,4.4vw,58px);font-weight:800;color:#fff;line-height:1.08}
.hero h1 .ln{display:block}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,#D4AF5A 0%,#F3DC9B 45%,#D4AF5A 60%,#D4AF5A 100%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gleam 6s ease-in-out infinite}
@keyframes gleam{0%,60%{background-position:100% 0}100%{background-position:-150% 0}}
.hero .copy{display:flex;flex-direction:column;gap:24px}
.hero .lede{font-size:20px}
.ctas{display:flex;gap:12px;flex-wrap:wrap}
.creds{display:flex;gap:8px 22px;flex-wrap:wrap;font-family:var(--mono);font-size:12.5px;color:var(--on-dark-2)}
.creds span{display:flex;align-items:center;gap:8px}
.creds i{width:7px;height:7px;border-radius:50%;background:var(--gold);display:inline-block}

.doc{position:relative;background:#fff;color:var(--ink);border-radius:14px;padding:26px;box-shadow:0 40px 80px -30px rgba(0,0,0,.6);transform:rotate(1.5deg);animation:float 7s ease-in-out infinite}
@keyframes float{0%,100%{transform:rotate(1.5deg) translateY(0)}50%{transform:rotate(.6deg) translateY(-10px)}}
.doc .stamp{position:absolute;top:18px;right:16px;font:500 11px var(--mono);letter-spacing:.14em;color:#B3261E;border:1.5px solid #B3261E;padding:3px 8px;border-radius:3px;transform:rotate(7deg)}
.doc h4{margin:0 0 2px;font:700 20px var(--display)}
.doc .sub{font:12px var(--mono);color:var(--muted);margin-bottom:16px}
.doc dl{display:grid;grid-template-columns:auto 1fr;gap:10px 14px;margin:0;font-size:14.5px}
.doc dt{font:12px var(--mono);color:var(--muted);padding-top:2px}
.doc dd{margin:0}
.bar{display:inline-block;height:13px;border-radius:2px;vertical-align:middle;background:linear-gradient(90deg,#101826 0%,#101826 40%,#46506a 50%,#101826 60%,#101826 100%);background-size:250% 100%;animation:shimmer 3.2s linear infinite}
@keyframes shimmer{from{background-position:100% 0}to{background-position:-150% 0}}
.toast{position:absolute;left:-22px;bottom:-24px;background:var(--navy-2);color:#fff;border:1px solid rgba(212,175,90,.5);border-radius:12px;padding:10px 14px;display:flex;align-items:center;gap:10px;font-size:13.5px;box-shadow:0 20px 40px -20px rgba(0,0,0,.7);animation:pop 6s ease-in-out infinite}
.toast b{color:var(--gold)}
@keyframes pop{0%,8%{transform:translateY(8px) scale(.96)}14%,86%{transform:none}94%,100%{transform:translateY(8px) scale(.96)}}

.ticker{background:var(--gold);color:#16120A;overflow:hidden;white-space:nowrap}
.ticker .track{display:inline-flex;animation:marquee 38s linear infinite;padding-block:14px}
.ticker span{font:600 13.5px var(--mono);letter-spacing:.1em;text-transform:uppercase;padding-inline:20px;display:inline-flex;align-items:center;gap:20px}
.ticker span::after{content:"◆";font-size:9px;opacity:.55}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

section{padding-block:96px}
.head{display:flex;flex-direction:column;gap:14px;margin-bottom:44px;max-width:780px}

.services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.card{background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 0 var(--rule), 0 20px 40px -32px rgba(16,24,38,.5);transition:transform .3s ease, box-shadow .3s ease}
.card:hover{transform:translateY(-6px);box-shadow:0 1px 0 var(--rule), 0 34px 60px -30px rgba(16,24,38,.55)}
.ph{position:relative;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(135deg,var(--navy-3),var(--navy));display:grid;place-items:center;color:var(--gold);max-width:100%}
.ph svg.fb{width:64px;height:64px;opacity:.85}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.card:hover .ph img{transform:scale(1.06)}
.ph .chip{position:absolute;left:16px;bottom:16px;z-index:1;background:rgba(11,22,40,.85);color:#fff;font:500 11.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;padding:6px 10px;border-radius:999px}
.card .body{padding:24px 24px 26px;display:flex;flex-direction:column;gap:12px;flex-grow:1}
.card p{color:var(--ink-2);font-size:16px}
.card ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:15.5px}
.card li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px}
.card li::before{content:"";width:8px;height:8px;margin-top:8px;border-radius:2px;background:var(--gold);transform:rotate(45deg)}
.card .more{margin-top:auto;padding-top:8px;font-weight:600;color:var(--action);text-decoration:none;font-size:15px}

.ad{position:relative;border:1.5px dashed #C9AE6E;border-radius:16px;background:#fff;background-image:repeating-linear-gradient(135deg,transparent 0 14px,#F3E7C6 14px 15px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:20px}
.ad .lbl{position:absolute;top:10px;left:12px;font:10.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.ad b{font:700 22px var(--display)}
.ad .size{font:12px var(--mono);color:var(--muted)}
.ad a{font-weight:600;font-size:14.5px;text-decoration:none;color:var(--action)}
.ad.leader{min-height:120px;margin-top:56px}

.white{background:#fff}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;position:relative}
.steps::before,.steps::after{content:"";position:absolute;left:0;top:27px;height:3px;border-radius:2px}
.steps::before{right:0;background:var(--rule)}
.steps::after{width:var(--p,100%);background:linear-gradient(90deg,var(--gold),var(--action));transition:width 1.8s cubic-bezier(.2,.8,.2,1)}
.steps li{position:relative;display:flex;flex-direction:column;gap:10px}
.dot{width:56px;height:56px;border-radius:50%;background:var(--navy);color:var(--gold);display:grid;place-items:center;font:700 18px var(--display);border:3px solid #fff;box-shadow:0 0 0 1px var(--rule);position:relative;z-index:1;transition:transform .3s ease, background .3s ease, color .3s ease}
.steps li:hover .dot{transform:scale(1.08);background:var(--action);color:#fff}
.steps h3{font-size:19px}
.steps p{font-size:14.5px;color:var(--ink-2)}
.steps .docs{font:12px var(--mono);color:var(--muted)}
@media (max-width:1000px){.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.steps::before,.steps::after{display:none}}
@media (max-width:560px){.steps{grid-template-columns:minmax(0,1fr)}}

.loans{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:start}
.loans .ph{border-radius:18px;aspect-ratio:4/5}
.lgrid{display:grid;gap:12px}
.loan{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;align-items:start;background:#fff;border-radius:14px;padding:18px 20px;box-shadow:0 1px 0 var(--rule);transition:transform .25s ease, box-shadow .25s ease}
.loan:hover{transform:translateX(6px);box-shadow:0 1px 0 var(--rule), -6px 0 0 var(--gold)}
.loan b{font:700 20px var(--display);color:var(--navy)}
.loan span{display:block;font-size:15px;color:var(--ink-2)}
.loan em{display:block;font-style:normal;font:12.5px var(--mono);color:var(--muted);margin-top:4px}
.note{font-size:13.5px;color:var(--muted);margin-top:16px}

.recruit{position:relative;overflow:hidden;color:var(--on-dark);background:var(--navy)}
.recruit .bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.3}
.recruit::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(11,22,40,.97) 30%,rgba(11,22,40,.72) 100%);z-index:1}
.recruit .wrap{position:relative;z-index:2}
.recruit h2{color:#fff}
.rgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 56px;align-items:start}
.perks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.perk{border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:10px;background:rgba(255,255,255,.03);transition:border-color .25s ease, background .25s ease, transform .25s ease}
.perk:hover{border-color:rgba(212,175,90,.6);background:rgba(212,175,90,.07);transform:translateY(-3px)}
.perk b{font:700 17px var(--display);color:#fff}
.perk span{font-size:14.5px;color:var(--on-dark-2)}
.fit{background:#fff;color:var(--ink);border-radius:18px;padding:30px;display:flex;flex-direction:column;gap:16px}
.fit ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}
.fit .small{font-size:13.5px;color:var(--muted)}

.ads{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ads .ad{aspect-ratio:6/5;max-width:100%}
.ads .ad .who{font-size:14.5px;color:var(--ink-2);max-width:24ch}

.team{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.person{background:var(--paper);border-radius:18px;padding:26px 22px;display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--ink);transition:transform .25s ease, box-shadow .25s ease}
.person:hover{transform:translateY(-4px);box-shadow:0 24px 40px -28px rgba(16,24,38,.5)}
.person .av{position:relative;overflow:hidden;width:84px;height:84px;border-radius:50%;background:linear-gradient(150deg,var(--navy-3),var(--navy));color:var(--gold);display:grid;place-items:center;font:800 24px var(--display);margin-bottom:10px;box-shadow:0 0 0 3px #fff, 0 0 0 4px var(--gold)}
.person .av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.person .cl{font-size:13.5px;color:var(--action);text-decoration:none;font-weight:600}
.person .cl:first-of-type{margin-top:6px}
.person .cl:hover{text-decoration:underline}
.person .cl.prof{color:var(--gold-deep);font-weight:600}
.person b{font:700 19px var(--display)}
.person .role{font:12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--gold-deep)}
.person .note2{font-size:14.5px;color:var(--ink-2)}
.person.join{background:transparent;border:1.5px dashed #C9AE6E}
.person.join .av{background:var(--gold);color:var(--navy)}
.person.join .note2{color:var(--action);font-weight:600}
@media (max-width:1100px){.team{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.team{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.team{grid-template-columns:minmax(0,1fr)}}
.portrait{position:relative;aspect-ratio:4/5;border-radius:24px;background:linear-gradient(160deg,var(--navy-3),var(--navy));display:grid;place-items:center;overflow:hidden;max-width:100%}
.portrait .mono{font:800 120px/1 var(--display);color:var(--gold);letter-spacing:-.04em}
.portrait .ring{position:absolute;inset:18px;border:1px solid rgba(212,175,90,.35);border-radius:16px}
.portrait small{position:absolute;bottom:26px;left:0;right:0;text-align:center;font:11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--on-dark-2)}
.facts{display:grid;border-top:1px solid var(--rule);margin-top:26px}
.facts div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--rule);font-size:15.5px}
.facts .k{font:12.5px var(--mono);color:var(--muted);padding-top:2px}

.contact{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;align-items:start}
.lines{display:grid;gap:12px;margin-top:26px}
.line{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:14px 16px}
.line .k{font:12px var(--mono);color:var(--on-dark-2);display:block}
.line .v{font-size:18px;font-weight:600;color:#fff;user-select:all;word-break:break-all}
.copybtn{font:500 13px var(--sans);background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;padding:8px 14px;border-radius:999px;cursor:pointer;min-height:36px;flex-shrink:0;text-decoration:none;display:inline-flex;align-items:center}
.copybtn:hover{border-color:var(--gold);color:var(--gold)}
form{display:grid;gap:16px;background:#fff;color:var(--ink);border-radius:20px;padding:30px;box-shadow:0 40px 80px -40px rgba(0,0,0,.6)}
form .copybtn{color:var(--ink);border-color:var(--rule)}
.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;color:var(--ink-2)}
input,select,textarea{font:400 16px var(--sans);color:var(--ink);background:var(--paper);border:1px solid var(--rule);border-radius:10px;padding:12px 14px;min-height:48px;transition:border-color .2s ease, box-shadow .2s ease}
input:focus,select:focus,textarea:focus{border-color:var(--action);box-shadow:0 0 0 3px rgba(11,122,85,.15);outline:none}
textarea{min-height:110px;resize:vertical}
.ready{border:1px solid #C9AE6E;background:var(--gold-soft);border-radius:12px;padding:16px;display:grid;gap:8px;font-size:15px}
.ready pre{margin:0;white-space:pre-wrap;font:13px/1.5 var(--mono);background:#fff;border:1px solid var(--rule);border-radius:8px;padding:12px;max-height:220px;overflow:auto}

footer{background:#070E1A;color:var(--on-dark-2);font-size:13.5px;padding-block:40px 48px}
footer .wrap{display:grid;gap:10px}
footer b{color:#fff}
.fgrid{display:grid;grid-template-columns:1.3fr repeat(4,minmax(0,1fr));gap:28px;padding-bottom:28px;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.12)}
.fgrid div{display:flex;flex-direction:column;gap:8px}
.fgrid .fh{font:700 15px var(--display);color:var(--gold);margin-bottom:4px}
.fgrid a{color:var(--on-dark-2);text-decoration:none}
.fgrid a:hover{color:#fff}
footer .fine a{color:var(--on-dark-2)}
@media (max-width:900px){.fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.fgrid{grid-template-columns:minmax(0,1fr)}}

@media (max-width:900px){
  .hero .wrap,.loans,.rgrid,.contact{grid-template-columns:minmax(0,1fr)}
  .hero .wrap{padding-bottom:130px}
  .services,.ads{grid-template-columns:minmax(0,1fr)}
  .ads .ad{aspect-ratio:auto;min-height:200px}
  .doc{max-width:460px}
  .loans .ph{aspect-ratio:16/10}
  .portrait{max-width:360px}
}
@media (max-width:560px){
  body{font-size:16px}
  section{padding-block:68px}
  .perks,.row{grid-template-columns:minmax(0,1fr)}
  .loan{grid-template-columns:minmax(0,1fr);gap:6px}
  .facts div{grid-template-columns:minmax(0,1fr);gap:2px}
  .toast{left:8px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
}

/* ---------- multi-page additions ---------- */
.navtoggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:10px;min-height:44px;padding:0 14px;font:600 14px var(--sans);cursor:pointer}
nav a[aria-current="page"]{color:#fff}
nav a[aria-current="page"]::after{right:0}
@media (max-width:980px){
  nav{display:none;position:absolute;left:0;right:0;top:100%;background:rgba(11,22,40,.98);flex-direction:column;padding:12px 20px 20px;gap:2px}
  nav a{padding-block:10px;font-size:16px}
  .top.open nav{display:flex}
  .top.open{background:rgba(11,22,40,.98)}
  .navtoggle{display:inline-flex;align-items:center}
}
@media (min-width:981px){nav{display:flex}}

/* page hero for inner pages */
.phero{position:relative;overflow:hidden;background:radial-gradient(120% 90% at 80% 120%, #1F3A66 0%, var(--navy) 60%);color:var(--on-dark);padding-top:calc(130px + env(safe-area-inset-top,0px));padding-bottom:64px}
.phero h1{font-size:clamp(36px,5vw,62px);font-weight:800;color:#fff;max-width:18ch}
.phero .lede{color:var(--on-dark-2);margin-top:18px}
.phero .eyebrow{color:var(--gold);margin-bottom:14px}
.phero .orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.5;animation:drift 14s ease-in-out infinite}
.phero .orb.a{width:260px;height:260px;right:-60px;top:40px;background:radial-gradient(circle,rgba(212,175,90,.35),transparent 70%)}
.phero .orb.b{width:180px;height:180px;right:22%;bottom:-60px;background:radial-gradient(circle,rgba(11,122,85,.35),transparent 70%);animation-delay:-6s}
@keyframes drift{0%,100%{transform:translate(0,0)}50%{transform:translate(-30px,20px)}}
.crumbs{font:12.5px var(--mono);color:var(--on-dark-2);margin-bottom:18px}
.crumbs a{color:var(--on-dark-2);text-decoration:none}
.crumbs a:hover{color:var(--gold)}

/* reveal on scroll (content stays visible if JS is off) */
.rv-wait{opacity:0;transform:translateY(26px)}
.rv-in{opacity:1;transform:none;transition:opacity .8s ease, transform .8s cubic-bezier(.2,.8,.2,1)}

/* event strip on home */
.estrip{background:var(--navy-2);color:var(--on-dark)}
.estrip .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px 28px;flex-wrap:wrap;padding-block:18px}
.estrip b{color:#fff;font:700 18px var(--display)}
.estrip .meta{color:var(--on-dark-2);font-size:14.5px}
.cd{display:flex;gap:10px}
.cd span{display:grid;place-items:center;min-width:58px;padding:6px 8px;border:1px solid rgba(212,175,90,.45);border-radius:10px;font:700 20px var(--display);color:var(--gold);line-height:1.1}
.cd small{display:block;font:500 10px var(--mono);letter-spacing:.1em;color:var(--on-dark-2);text-transform:uppercase}

/* generic cards / grids */
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
@media (max-width:900px){.grid3,.grid2{grid-template-columns:minmax(0,1fr)}}
.tile{background:#fff;border-radius:18px;padding:26px;display:flex;flex-direction:column;gap:12px;box-shadow:0 1px 0 var(--rule), 0 20px 40px -34px rgba(16,24,38,.5);transition:transform .3s ease, box-shadow .3s ease;text-decoration:none;color:var(--ink)}
a.tile:hover,.tile.hov:hover{transform:translateY(-6px);box-shadow:0 1px 0 var(--rule), 0 34px 60px -30px rgba(16,24,38,.55)}
.tile .tag{font:12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-deep)}
.tile p{color:var(--ink-2);font-size:16px}
.tile .more{margin-top:auto;font-weight:600;color:var(--action);font-size:15px}
.badge{display:inline-flex;align-self:flex-start;align-items:center;gap:6px;font:600 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:var(--gold-soft);color:#6B4F12}
.badge.live{background:#E3F4EC;color:#0A5C40}
.badge.live::before{content:"";width:7px;height:7px;border-radius:50%;background:#0B7A55;animation:blink 1.6s ease-in-out infinite}
@keyframes blink{50%{opacity:.25}}
.badge.past{background:#ECEDEF;color:#4A5160}

/* event cards */
.ev{position:relative;overflow:hidden;border-radius:20px;background:#fff;box-shadow:0 1px 0 var(--rule), 0 24px 50px -36px rgba(16,24,38,.55);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.ev + .ev{margin-top:24px}
.ev .art{position:relative;min-height:280px;background:var(--navy);overflow:hidden;color:#fff}
.ev .body{padding:30px;display:flex;flex-direction:column;gap:12px}
.ev h3{font-size:28px}
.ev .when{font:500 14px var(--mono);color:var(--ink-2)}
.ev .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}
.btn.ghostd{border-color:var(--rule);color:var(--ink)}
.btn.ghostd:hover{border-color:var(--action);color:var(--action)}
@media (max-width:900px){.ev{grid-template-columns:minmax(0,1fr)}.ev .art{min-height:220px}}

/* casino art */
.art.casino{background:radial-gradient(circle at 30% 30%,#1D3358,#0B1628 70%)}
.chipf{position:absolute;width:86px;height:86px;border-radius:50%;background:#C8102E;box-shadow:inset 0 0 0 7px #C8102E, inset 0 0 0 13px #fff, inset 0 0 0 26px #C8102E, 0 0 0 3px #D4AF5A;animation:spin 9s linear infinite}
.chipf::after{content:"";position:absolute;inset:30px;border-radius:50%;background:#fff}
.chipf.k{background:#111;box-shadow:inset 0 0 0 7px #111, inset 0 0 0 13px #fff, inset 0 0 0 26px #111, 0 0 0 3px #D4AF5A;animation-duration:12s;animation-direction:reverse}
@keyframes spin{to{transform:rotate(360deg)}}
.cardf{position:absolute;width:92px;height:128px;border-radius:10px;background:#fff;border:2px solid #111;display:grid;place-items:center;font:800 40px Georgia,serif;animation:bob 5s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-12px) rotate(var(--r,0deg))}}

/* sunset art */
.art.sunset{background:linear-gradient(180deg,#1B2A4E 0%,#5B3A6B 35%,#E0784B 62%,#F3B562 72%,#0E3A5A 72.5%,#0B2740 100%)}
.sun{position:absolute;left:50%;width:120px;height:120px;margin-left:-60px;border-radius:50%;background:radial-gradient(circle,#FFE3A3 0%,#F7A64A 60%,#E0703A 100%);box-shadow:0 0 60px 20px rgba(247,166,74,.45);top:32%;animation:set 10s ease-in-out infinite alternate}
@keyframes set{from{transform:translateY(-14px)}to{transform:translateY(34px)}}
.water{position:absolute;left:0;right:0;bottom:0;height:28%;background:repeating-linear-gradient(180deg,rgba(255,255,255,.0) 0 7px,rgba(255,214,150,.18) 7px 9px);animation:shimmer2 4s linear infinite}
@keyframes shimmer2{to{background-position:0 18px}}
.boat{position:absolute;left:-90px;bottom:24%;width:90px;height:80px;animation:sail 22s linear infinite}
@keyframes sail{to{transform:translateX(calc(100% + 900px))}}

/* meeting / course art */
.art.meet{background:linear-gradient(140deg,#13233F,#1D3358)}
.art.course{background:linear-gradient(140deg,#0B1628,#13233F)}
.pulse{position:absolute;border-radius:50%;border:2px solid rgba(212,175,90,.55);animation:ring 3.2s ease-out infinite}
@keyframes ring{from{transform:scale(.4);opacity:1}to{transform:scale(1.6);opacity:0}}
.bigtxt{position:absolute;inset:0;display:grid;place-items:center;font:800 64px var(--display);color:rgba(212,175,90,.9);letter-spacing:-.03em}

/* office page */
.ofig{position:relative;border-radius:20px;overflow:hidden;background:var(--navy);aspect-ratio:4/3;max-width:100%}
.ofig img{width:100%;height:118%;object-fit:cover;position:absolute;top:-9%;left:0;will-change:transform}
.ofig figcaption{position:absolute;left:14px;bottom:14px;background:rgba(11,22,40,.85);color:#fff;font:12px var(--mono);padding:6px 10px;border-radius:999px;z-index:1}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.stat{background:#fff;border-radius:16px;padding:22px;box-shadow:0 1px 0 var(--rule)}
.stat b{display:block;font:800 40px/1 var(--display);color:var(--navy);font-variant-numeric:tabular-nums}
.stat span{font-size:14.5px;color:var(--ink-2)}
@media (max-width:900px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.timeline{list-style:none;margin:0;padding:0 0 0 26px;position:relative;display:grid;gap:26px}
.timeline::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:linear-gradient(var(--gold),var(--action))}
.timeline li{position:relative}
.timeline li::before{content:"";position:absolute;left:-26px;top:6px;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--gold)}
.timeline b{display:block;font:700 20px var(--display)}
.timeline .when{font:12.5px var(--mono);color:var(--gold-deep);letter-spacing:.08em;text-transform:uppercase}
.mapbox{position:relative;border-radius:20px;overflow:hidden;box-shadow:0 1px 0 var(--rule);background:#E8E4DA;aspect-ratio:16/10;max-width:100%}
.mapbox iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.pin{position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:var(--action);box-shadow:0 0 0 4px #fff;pointer-events:none}
.pin::after{content:"";position:absolute;inset:-14px;border-radius:50%;border:2px solid var(--action);animation:ring 2.4s ease-out infinite}
.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.gallery .ofig{aspect-ratio:3/2}
@media (max-width:700px){.gallery{grid-template-columns:minmax(0,1fr)}}
.addr{display:grid;gap:10px;font-size:16px}
.addr b{font:700 22px var(--display)}

/* blog */
.posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
@media (max-width:900px){.posts{grid-template-columns:minmax(0,1fr)}}
.post-card .cat{font:12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-deep)}
.post-card h3{font-size:22px}
.post-card .rt{font:12.5px var(--mono);color:var(--muted)}
.article{max-width:740px;margin-inline:auto;font-size:18px;line-height:1.7}
.article h2{font-size:clamp(26px,3.2vw,34px);margin:44px 0 14px}
.article h3{font-size:21px;margin:30px 0 10px}
.article p{margin:0 0 18px}
.article ul,.article ol{margin:0 0 20px;padding-left:22px;display:grid;gap:8px}
.article a{color:var(--action)}
.article .callout{background:#fff;border-radius:16px;padding:22px 24px;margin:28px 0;box-shadow:0 1px 0 var(--rule);border-left:4px solid var(--gold)}
.article .cta{background:var(--navy);color:var(--on-dark);border-radius:18px;padding:28px;margin-top:40px;display:grid;gap:12px}
.article .cta b{font:700 22px var(--display);color:#fff}
.article .cta p{color:var(--on-dark-2);margin:0}
.article table{width:100%;border-collapse:collapse;margin:0 0 22px;font-size:16px}
.article th,.article td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--rule);vertical-align:top}
.article th{font:12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.tablewrap{overflow-x:auto}
.progress{position:fixed;left:0;top:0;height:3px;width:0;background:linear-gradient(90deg,var(--gold),var(--action));z-index:30}
.meta-line{font:13px var(--mono);color:var(--on-dark-2);margin-top:16px}

/* partner page */
.tiers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
@media (max-width:1000px){.tiers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.tiers{grid-template-columns:minmax(0,1fr)}}
.tier{background:#fff;border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:8px;box-shadow:0 1px 0 var(--rule);transition:transform .25s ease, box-shadow .25s ease}
.tier:hover{transform:translateY(-5px) rotate(-.4deg);box-shadow:0 1px 0 var(--rule), 0 26px 50px -30px rgba(16,24,38,.5)}
.tier b{font:700 20px var(--display)}
.tier .price{font:800 30px var(--display);color:var(--action)}
.tier.feat{background:var(--navy);color:var(--on-dark)}
.tier.feat b{color:var(--gold)}
.tier.feat .price{color:#fff}
.tier ul{margin:0;padding-left:18px;font-size:14.5px;display:grid;gap:4px}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips span{background:#fff;border:1px solid var(--rule);border-radius:999px;padding:8px 14px;font-size:14.5px;transition:background .2s ease, border-color .2s ease}
.chips span:hover{background:var(--gold-soft);border-color:#C9AE6E}
.cd i{font-style:normal}
form{min-width:0;max-width:100%}form label,form input,form select,form textarea{min-width:0;max-width:100%}form select{width:100%}
.share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 28px;padding-bottom:22px;border-bottom:1px solid var(--rule)}
.share.bottom{margin:36px 0 0;padding:22px 0 0;border-bottom:0;border-top:1px solid var(--rule)}
.share .sl{font:12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-right:4px;width:100%}
@media (min-width:640px){.share .sl{width:auto}}
.article .share a.sh,.share .sh{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--rule);background:#fff;color:var(--ink);font:600 14px var(--sans);text-decoration:none;cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease}
.share .sh:hover{transform:translateY(-2px)}
.share .li:hover{background:#0A66C2;color:#fff;border-color:#0A66C2}
.share .fb:hover{background:#1877F2;color:#fff;border-color:#1877F2}
.share .x:hover{background:#111;color:#fff;border-color:#111}
.share .em:hover,.share .sms:hover,.share .cp:hover,.share .native:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.share .native{background:var(--action);color:#fff;border-color:var(--action)}
@media (max-width:980px){.top.open nav{background:#0B1628!important;box-shadow:0 30px 40px -10px rgba(0,0,0,.6);max-height:calc(100vh - 70px);overflow:auto}.top.open nav a{opacity:1!important;transform:none!important}}
.article p.offer{margin:4px 0 26px}
.article p.offer a,.offerlink{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:12px;background:var(--gold-soft);color:#5A4210;font-weight:700;text-decoration:none;border:1px solid #E2CC93;transition:transform .2s ease,background .2s ease}
.article p.offer a:hover,.offerlink:hover{transform:translateX(4px);background:#F3E2B6}
/* golf page */
.ghero{position:relative;overflow:hidden;background:var(--navy);color:#fff;padding:150px 0 80px;min-height:520px;display:flex;align-items:flex-end}
.ghero .gbg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:kb 24s ease-in-out infinite alternate}
@keyframes kb{from{transform:scale(1.04)}to{transform:scale(1.14) translate(-1.5%,-1%)}}
.ghero .gshade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,22,40,.55) 0%,rgba(11,22,40,.35) 40%,rgba(11,22,40,.88) 100%)}
.ghero h1{font-size:clamp(38px,6vw,72px);line-height:1.02;margin:10px 0 14px;color:#fff;max-width:14ch}
.ghero .lede{color:rgba(255,255,255,.88);max-width:60ch}
.ghero .crumbs a,.ghero .crumbs{color:rgba(255,255,255,.75)}
.btn.ghost{border-color:rgba(255,255,255,.55);color:#fff}
.btn.ghost:hover{background:rgba(255,255,255,.12)}
.gallery-m{columns:3 260px;column-gap:14px}
.gallery-m .gi{display:block;margin:0 0 14px;break-inside:avoid;border-radius:14px;overflow:hidden;background:#E8E4DA;position:relative}
.gallery-m img{display:block;width:100%;height:auto;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.gallery-m .gi:hover img{transform:scale(1.05)}
.gallery-m .gi::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 0 var(--gold);transition:box-shadow .25s ease;border-radius:14px}
.gallery-m .gi:hover::after{box-shadow:inset 0 0 0 3px var(--gold)}
.art.photo{display:block;padding:0}
.art.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.ev:hover .art.photo img{transform:scale(1.06)}
.pcount{position:absolute;left:14px;bottom:14px;background:rgba(11,22,40,.85);color:#fff;font:12px var(--mono);padding:6px 10px;border-radius:999px}
.lb{position:fixed;inset:0;z-index:100;background:rgba(6,12,24,.94);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s ease}
.lb.on{opacity:1}
.lb img{max-width:min(94vw,1500px);max-height:84vh;border-radius:8px;box-shadow:0 30px 80px rgba(0,0,0,.6);transition:opacity .2s ease}
.lb button{position:absolute;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:999px;width:52px;height:52px;font:600 22px var(--sans);cursor:pointer}
.lb button:hover{background:rgba(255,255,255,.22)}
.lb .x{top:18px;right:18px}.lb .pv{left:18px;top:50%;margin-top:-26px}.lb .nx{right:18px;top:50%;margin-top:-26px}
.lb .cap{position:absolute;bottom:16px;left:0;right:0;text-align:center;color:rgba(255,255,255,.8);font:13px var(--mono)}
@media (max-width:640px){.lb .pv,.lb .nx{top:auto;bottom:44px;margin:0}.ghero{padding-top:120px;min-height:440px}}
@media (prefers-reduced-motion:reduce){.ghero .gbg{animation:none}}
.ghero .eyebrow{color:var(--gold);text-shadow:0 1px 8px rgba(0,0,0,.5)}
.thanks{background:linear-gradient(90deg,#D4AF5A,#E8CB86,#D4AF5A);background-size:200% 100%;animation:shine 8s linear infinite;color:#2B2108}
.thanks .wrap{display:flex;align-items:center;gap:16px;padding-block:18px;flex-wrap:wrap}
.thanks .ty{font:600 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;background:#0B1628;color:#E8CB86;padding:6px 12px;border-radius:999px}
.thanks p{margin:0;font-size:17px}
@keyframes shine{to{background-position:-200% 0}}
.article figure{margin:28px 0}
.article figure img{width:100%;height:auto;border-radius:14px;display:block}
.article figure figcaption{font:13px var(--mono);color:var(--muted);margin-top:8px}
.article .pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:560px){.article .pair{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.thanks{animation:none}}
/* real BRG logo */
.brand .logo{height:46px;width:auto;display:block}
.brand .tag{border-left:1px solid rgba(255,255,255,.25);padding-left:12px}
.brand .tag small{max-width:120px;line-height:1.35}
.flogo{height:52px!important;width:133px!important;max-width:none;display:block;margin-bottom:12px}
@media (max-width:640px){.brand .tag{display:none}.brand .logo{height:40px}}
