@font-face{font-family:"Cinzel";src:url("assets/fonts/cinzel-latin-500-normal.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"Montserrat";src:url("assets/fonts/montserrat-latin-400-normal.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Montserrat";src:url("assets/fonts/montserrat-latin-500-normal.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"Montserrat";src:url("assets/fonts/montserrat-latin-600-normal.woff2") format("woff2");font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:"Montserrat";src:url("assets/fonts/montserrat-latin-700-normal.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}

:root{--navy:#062247;--gold:#cfa44a;--cream:#f5f2eb;--paper:#fff;--ink:#14263a;--muted:#68727c;--grey:#d9d9d9;--line:rgba(6,34,71,.14)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Montserrat",Arial,sans-serif}
a{text-decoration:none;color:inherit}

header{height:88px;padding:8px clamp(22px,5vw,72px);display:flex;align-items:center;gap:34px;background:var(--navy);color:#fff;border-bottom:1px solid #ffffff1c;position:sticky;top:0;z-index:50;box-shadow:0 8px 32px rgba(6,34,71,.12)}
.brand{margin-right:auto;display:flex;align-items:center}
.brand img{width:72px;height:62px;object-fit:contain}
header nav{display:flex;gap:27px;font-size:13px;color:#ffffffc4}
header nav a{transition:color .2s ease}
header nav a:hover{color:#fff}
.nav-cta{border:1px solid var(--gold);color:var(--gold);padding:12px 17px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;transition:background .2s ease,color .2s ease}
.nav-cta:hover{background:var(--gold);color:var(--navy)}
.menu-button{display:none;background:none;border:0;color:#fff;width:42px;height:42px;padding:9px;cursor:pointer}
.menu-button span{display:block;height:1px;background:currentColor;margin:6px 0;transition:.2s ease}

.hero{min-height:700px;padding:115px clamp(24px,7vw,108px) 80px;background:var(--navy);color:#fff;display:grid;grid-template-columns:1.3fr .7fr;overflow:hidden;position:relative}
.eyebrow{margin:0 0 24px;color:var(--gold);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;line-height:1.4}
.hero h1,.statement h2,.legacy h2,.join h2,.people h2,.about h2,.contact h2{font-family:"Cinzel",Georgia,serif;font-weight:500;letter-spacing:-.035em}
.hero h1{font-size:clamp(58px,7.2vw,108px);line-height:.98;margin:0}
.hero h1 em{color:var(--gold);font-weight:500;font-style:normal}
.lead{font-size:18px;line-height:1.75;color:#ffffffad;max-width:680px;margin:34px 0}
.actions{display:flex;align-items:center;gap:28px;font-size:13px}
.button{display:inline-flex;padding:16px 22px;text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.1em}
.gold{background:var(--gold);color:var(--navy)}
.hero-art{width:min(32vw,420px);aspect-ratio:1;align-self:center;justify-self:center;position:relative;border-radius:50%;background:radial-gradient(circle at center,#cfa44a14 0 31%,transparent 32%);opacity:.92}
.hero-art:before,.hero-art:after,.arc{content:"";position:absolute;border:1px solid #cfa44a70;border-radius:50%}
.hero-art:before{inset:8%;border-left-color:transparent;transform:rotate(28deg)}
.hero-art:after{inset:22%;border-right-color:transparent;transform:rotate(-18deg)}
.arc-one{inset:0;border-bottom-color:transparent;transform:rotate(48deg)}
.arc-two{inset:15%;border-top-color:transparent;transform:rotate(-38deg)}
.arc-three{inset:31%;border-left-color:transparent}
.hero-art i,.hero-art b,.hero-art em{position:absolute;font-style:normal;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#ffffff8c}
.hero-art i{top:6%;left:43%}
.hero-art b{right:-2%;top:49%}
.hero-art em{bottom:5%;left:42%;color:var(--gold)}

.statement,.about{padding:105px clamp(24px,7vw,108px);display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;border-bottom:1px solid var(--line)}
h2{font-size:clamp(42px,4.3vw,68px);line-height:1.12;margin:0 0 24px}
.statement div>p,.about div>p{font-size:17px;line-height:1.8;color:var(--muted);max-width:760px}

.services{padding:0 clamp(24px,7vw,108px) 90px}
.services article{display:grid;grid-template-columns:55px 1fr 1fr 30px;gap:28px;align-items:center;padding:33px 0;border-bottom:1px solid var(--line)}
.services span{font-size:14px;font-weight:600;letter-spacing:.08em;color:var(--gold)}
.services h3{font:500 29px "Cinzel",Georgia,serif;margin:0}
.services p{color:var(--muted);font-size:14px}
.services b{color:var(--gold)}

.legacy{background:var(--navy);color:#fff;display:grid;grid-template-columns:1fr 1fr;min-height:590px}
.legacy>div{padding:90px clamp(32px,7vw,95px);display:flex;flex-direction:column;justify-content:center}
.legacy-art{border-right:1px solid #ffffff18;background:linear-gradient(145deg,#cfa44a19,transparent)}
.legacy-art strong{font:500 clamp(72px,8vw,120px) "Cinzel",Georgia,serif;color:var(--gold)}
.legacy-art span{font:500 24px "Cinzel",Georgia,serif}
.legacy div>p:not(.eyebrow){color:#ffffffa8;line-height:1.8;font-size:17px}
.legacy a{font-size:13px;color:var(--gold);font-weight:700}

.join{padding:105px clamp(24px,7vw,108px);background:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:7vw}
.join>div>p:not(.eyebrow){color:var(--muted);line-height:1.8}
.outline{margin-top:18px;border:1px solid var(--gold);color:var(--navy);width:fit-content}
.outline:hover{background:var(--gold)}
.join-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.join-grid span{display:flex;flex-direction:column;gap:22px;padding:25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font:500 19px "Cinzel",Georgia,serif}
.join-grid b{font:600 13px "Montserrat",Arial,sans-serif;letter-spacing:.08em;color:var(--gold)}

.people{padding:105px clamp(24px,7vw,108px)}
.people>.intro{color:var(--muted);max-width:750px;line-height:1.7}
.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:55px}
.profile-grid article{border:1px solid var(--line);padding:15px 15px 28px}
.portrait{aspect-ratio:4/5;background:linear-gradient(145deg,rgba(207,164,74,.08),rgba(255,255,255,.01)),var(--navy);color:var(--gold);display:flex;flex-direction:column;align-items:center;justify-content:center}
.portrait b{font:500 64px "Cinzel",Georgia,serif}
.portrait small{color:#ffffff70;text-transform:uppercase;letter-spacing:.15em}
.profile-grid label{display:block;color:var(--gold);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;margin-top:22px}
.profile-grid h3{font:500 27px "Cinzel",Georgia,serif;margin:8px 0}
.profile-grid article>p{color:var(--muted);font-size:13px}
.profile-grid dl{font-size:12px}
.profile-grid dl div{display:grid;grid-template-columns:80px 1fr;border-top:1px solid var(--line);padding:9px 0}
.profile-grid dt{color:var(--muted)}
.profile-grid dd{margin:0}
.profile-grid a{font-size:12px;font-weight:700}

.contact{padding:75px clamp(24px,7vw,108px);background:var(--cream);display:flex;justify-content:space-between;align-items:center;gap:45px}
.contact h2{font-size:clamp(38px,3.4vw,50px);max-width:800px}
.contact .eyebrow{margin-bottom:14px}

footer{padding:64px clamp(24px,7vw,108px) 44px;background:var(--navy);color:#ffffff82;display:grid;grid-template-columns:.8fr .8fr 1.5fr;gap:7vw;align-items:start;font-size:11px;line-height:1.7}
footer img{width:142px;height:84px;object-fit:contain;object-position:left center}
.footer-brand>p{color:var(--gold);text-transform:uppercase;letter-spacing:.16em;font-size:10px}
.footer-nav>p{color:var(--gold);font-weight:600;text-transform:uppercase;letter-spacing:.14em;margin:9px 0 18px}
.footer-nav nav{display:grid;grid-template-columns:1fr;gap:10px;color:#ffffffb8}
.footer-nav a:hover,.footer-legal a:hover{color:#fff}
.footer-legal>p{margin:9px 0 14px}
.legal-links{display:flex;flex-wrap:wrap;gap:10px 20px;border-top:1px solid #ffffff18;padding-top:18px;margin-top:24px;color:#ffffffb8}
.copyright{display:block;margin-top:18px;text-align:left}
.mobile-whatsapp{display:none}

@media(max-width:900px){
  header{height:76px;padding:7px 18px}
  .brand img{width:60px;height:52px}
  .menu-button{display:block;order:2}
  .nav-cta{order:3}
  header nav{display:none;position:absolute;left:0;right:0;top:76px;background:var(--navy);padding:22px 24px 28px;border-top:1px solid #ffffff18;border-bottom:1px solid #ffffff18;box-shadow:0 18px 35px rgba(6,34,71,.24)}
  header.menu-open nav{display:flex;flex-direction:column;gap:0}
  header nav a{font-size:15px;padding:13px 0;border-bottom:1px solid #ffffff12}
  .menu-open .menu-button span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .menu-open .menu-button span:nth-child(2){opacity:0}
  .menu-open .menu-button span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .hero{grid-template-columns:1fr;min-height:690px;padding-top:80px}
  .hero-art{position:absolute;width:360px;right:-170px;top:245px;opacity:.27}
  .statement,.about,.legacy,.join{grid-template-columns:1fr}
  .services article{grid-template-columns:40px 1fr 24px}
  .services article p{display:none}
  .profile-grid{grid-template-columns:1fr 1fr}
  .contact{align-items:flex-start;flex-direction:column}
  footer{grid-template-columns:1fr 1fr}
  .footer-legal{grid-column:1/-1}
  .mobile-whatsapp{position:fixed;right:18px;bottom:18px;z-index:45;display:flex;align-items:center;gap:9px;background:#1f9d62;color:#fff;border-radius:999px;padding:12px 16px 12px 11px;box-shadow:0 10px 28px rgba(6,34,71,.28);font-size:12px;font-weight:700}
  .mobile-whatsapp span{display:grid;place-items:center;width:26px;height:26px;border:1px solid #ffffff80;border-radius:50%;font-size:9px}
}

@media(max-width:600px){
  .hero h1{font-size:49px}
  .lead{font-size:16px}
  .eyebrow{font-size:11px}
  .actions{align-items:flex-start;flex-direction:column}
  .statement,.about,.join,.people{padding-top:75px;padding-bottom:75px}
  .legacy-art{min-height:370px}
  .profile-grid{grid-template-columns:1fr}
  .join-grid{grid-template-columns:1fr}
  .contact h2{font-size:34px}
  .nav-cta{display:none}
  .services h3{font-size:23px}
  footer{grid-template-columns:1fr}
  .footer-legal{grid-column:auto}
  .footer-brand,.footer-nav,.footer-legal{max-width:520px}
}
