:root{
  --navy:#071832;
  --navy-2:#0d274d;
  --navy-3:#123765;
  --gold:#d8b45a;
  --gold-2:#f3d98c;
  --paper:#fbf8ef;
  --cream:#fffdf7;
  --ink:#172033;
  --muted:#5e6676;
  --line:rgba(216,180,90,.42);
  --shadow:0 24px 60px rgba(3,13,29,.18);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Arial,sans-serif;
  color:var(--ink);
  background:linear-gradient(180deg,#fffdf7 0%,#f6f0df 100%);
  line-height:1.6;
}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:4px}
.wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}
.nowrap{white-space:nowrap;display:inline-block}
.skip-link{position:absolute;left:-999px;top:auto;background:#fff;color:#000;padding:10px;z-index:9999}.skip-link:focus{left:12px;top:12px}
.topbar{
  background:var(--navy);
  color:#f8e8ae;
  font-size:.9rem;
  border-bottom:1px solid var(--gold);
}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 0;flex-wrap:wrap}
.topbar a{color:#fff4cc;font-weight:700}
.header{
  position:sticky;top:0;z-index:50;
  background:rgba(7,24,50,.98);
  color:#fff;
  border-bottom:3px solid var(--gold);
  box-shadow:0 12px 30px rgba(0,0,0,.2);
}
.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 0}
.logo{display:flex;align-items:center;gap:14px;min-width:260px}
.logo-mark{
  width:58px;height:58px;display:grid;place-items:center;
  border:2px solid var(--gold);color:var(--gold-2);
  font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;font-size:1.35rem;
  letter-spacing:.05em;background:linear-gradient(145deg,#092244,#08172f);
  box-shadow:inset 0 0 0 5px rgba(216,180,90,.08),0 10px 22px rgba(0,0,0,.26);
}
.logo-title{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.65rem;font-weight:700;letter-spacing:.02em;line-height:1;color:#fff}
.logo-subtitle{display:block;color:#e9d28c;font-size:.78rem;text-transform:uppercase;letter-spacing:.15em;margin-top:6px;font-weight:800}
.nav{display:flex;align-items:center;gap:2px;flex-wrap:wrap;justify-content:flex-end}
.nav a{padding:10px 10px;border-radius:999px;color:#f9f4e6;font-weight:800;font-size:.86rem;letter-spacing:.01em}
.nav a:hover,.nav a.active{background:rgba(216,180,90,.16);color:#ffe7a0;text-decoration:none}
.menu-toggle{display:none;background:transparent;color:#fff;border:1px solid var(--gold);padding:8px 12px;border-radius:999px}
.hero{
  background:
    radial-gradient(circle at 15% 20%,rgba(216,180,90,.22),transparent 30%),
    linear-gradient(135deg,rgba(7,24,50,.97),rgba(13,39,77,.96)),
    var(--navy);
  color:#fff;
  position:relative;overflow:hidden;border-bottom:1px solid var(--gold);
}
.hero:before{content:"";position:absolute;inset:28px;border:1px solid rgba(216,180,90,.24);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr);gap:44px;align-items:center;padding:86px 0;position:relative;z-index:1}
.kicker,.eyebrow{color:var(--gold-2);font-weight:900;letter-spacing:.17em;text-transform:uppercase;font-size:.78rem;margin:0 0 12px}
h1,h2,h3{line-height:1.08;margin:0 0 18px;color:inherit}
h1{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2.85rem,5.3vw,5.45rem);letter-spacing:-.035em;max-width:850px}
h1 .gold{display:block;color:var(--gold-2);font-size:.74em;letter-spacing:-.015em;margin-top:8px;white-space:normal}
h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2rem,3.4vw,3.35rem);letter-spacing:-.02em}
h3{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.55rem}
.lead{font-size:1.25rem;color:#fff7dc;max-width:800px;margin:0 0 16px}.sublead{color:#d9dfeb;max-width:780px;margin:0 0 28px}
.buttons{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 22px;font-weight:900;letter-spacing:.01em;border:1px solid transparent;text-decoration:none}.button:hover{text-decoration:none;transform:translateY(-1px)}
.button.primary{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#071832;box-shadow:0 12px 25px rgba(216,180,90,.25)}.button.secondary{border-color:var(--gold);color:#ffe8a3;background:rgba(255,255,255,.04)}.button.light{background:#fff;color:var(--navy);border-color:#fff}
.hero-panel{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(251,248,239,.98));color:var(--ink);border:1px solid var(--gold);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow);position:relative}
.hero-panel:before{content:"";position:absolute;inset:10px;border:1px solid rgba(216,180,90,.28);border-radius:16px;pointer-events:none}.hero-panel>*{position:relative}.seal{float:right;width:94px;height:94px;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:.78rem;line-height:1.1;background:var(--navy);color:var(--gold-2);border:2px solid var(--gold);font-weight:900;text-transform:uppercase;letter-spacing:.04em;margin-left:16px}
.hero-list{padding-left:20px;margin:16px 0}.hero-list li{margin:8px 0}.mini-contact{border-top:1px solid var(--line);padding-top:16px;margin-top:18px}.mini-contact a{color:var(--navy);font-weight:900}.badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.badge{border:1px solid rgba(216,180,90,.7);background:#fff7df;color:#5a3d05;border-radius:999px;padding:5px 10px;font-size:.8rem;font-weight:900}
.section{padding:74px 0}.paper{background:rgba(255,253,247,.74);border-top:1px solid rgba(216,180,90,.25);border-bottom:1px solid rgba(216,180,90,.25)}.section-title{max-width:850px;margin-bottom:34px}.section-title.center{text-align:center;margin-inline:auto}.section-title p{font-size:1.06rem;color:var(--muted)}
.grid{display:grid;gap:24px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.profile-card,.card,.callout{background:rgba(255,255,255,.95);border:1px solid rgba(216,180,90,.48);border-radius:var(--radius);padding:28px;box-shadow:0 16px 40px rgba(7,24,50,.08)}
.profile-card{position:relative;overflow:hidden}.profile-card:before,.card:before{content:"";display:block;height:4px;background:linear-gradient(90deg,var(--gold),transparent);position:absolute;top:0;left:0;right:0}.profile-card,.card{position:relative}.profile-top{display:grid;grid-template-columns:76px 1fr;gap:18px}.initial{width:76px;height:76px;display:grid;place-items:center;border:2px solid var(--gold);background:var(--navy);color:var(--gold-2);font-family:"Cormorant Garamond",Georgia,serif;font-size:1.45rem;font-weight:700}.profile-meta{color:#85610f;font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;margin-bottom:10px}.signature{font-family:"Cormorant Garamond",Georgia,serif;color:#85610f;font-size:1.25rem;margin-top:14px}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:36px;align-items:start}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:26px}.fact{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;text-align:center;font-weight:900;color:var(--muted)}.fact strong{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-size:2rem;color:var(--navy)}
.callout{background:linear-gradient(180deg,var(--navy-2),var(--navy));color:#fff;border-color:var(--gold)}.callout h2{color:#fff}.list-check{padding:0;margin:0;list-style:none}.list-check li{position:relative;padding-left:28px;margin:12px 0}.list-check li:before{content:"✓";position:absolute;left:0;color:var(--gold-2);font-weight:900}.lux-line{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:24px 0}
.card p{color:var(--muted);margin-bottom:0}.navy{background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold)}.navy p{color:#dce5f6}.card.dark{background:rgba(255,255,255,.08);border-color:rgba(216,180,90,.55);color:#fff}.card.dark p{color:#e9eef8}
.faq details{background:#fff;border:1px solid var(--line);border-radius:18px;margin:14px 0;padding:18px 22px;box-shadow:0 10px 24px rgba(7,24,50,.06)}.faq summary{cursor:pointer;font-weight:900;color:var(--navy);font-size:1.08rem}.faq p{color:var(--muted)}
.location-bar{background:#0c2347;color:#fff;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold)}.location-bar .wrap{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:16px 0}.location-bar a{background:rgba(255,255,255,.08);border:1px solid rgba(216,180,90,.35);border-radius:999px;padding:6px 12px;color:#fff7d9;font-weight:800;font-size:.9rem}
.footer{background:#061326;color:#e9eef8;padding:54px 0 28px}.footer a{color:#ffe69f;font-weight:800}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px}.footer h3{color:#fff}.fineprint{border-top:1px solid rgba(216,180,90,.3);margin-top:28px;padding-top:18px;color:#cbd4e6;font-size:.9rem}
@media (max-width:1000px){.hero-grid,.split{grid-template-columns:1fr}.grid.three{grid-template-columns:repeat(2,1fr)}.nav{display:none}.menu-toggle{display:inline-flex}.nav.open{display:flex;flex-basis:100%;justify-content:flex-start;background:rgba(255,255,255,.05);padding:12px;border-radius:16px}.header .wrap{flex-wrap:wrap}.facts{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){.wrap{width:min(100% - 28px,1180px)}.topbar .wrap{display:block}.logo-title{font-size:1.35rem}.logo-subtitle{font-size:.68rem}.hero-grid{padding:62px 0}.hero:before{display:none}h1{font-size:2.65rem}.grid.two,.grid.three,.footer-grid{grid-template-columns:1fr}.profile-top{grid-template-columns:1fr}.initial{width:64px;height:64px}.hero-panel{padding:24px}.seal{float:none;margin:0 0 16px}.facts{grid-template-columns:1fr 1fr}.section{padding:54px 0}.nav a{width:100%}}

.service-panel{max-width:980px;margin:0 auto;}
.service-panel p{color:#f5efd9;}
