@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=DM+Sans:wght@300;400;500;600;700&display=swap');

:root {
  --navy: #0B1C2E;
  --navy-mid: #122540;
  --navy-light: #1a3350;
  --gold: #C5973A;
  --gold-light: #E0B86A;
  --cream: #F5F1EA;
  --white: #FFFFFF;
  --gray: #6B7280;
  --border: rgba(197,151,58,0.18);
  --px: 60px;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: 'DM Sans', sans-serif; background: var(--cream); color: var(--navy); overflow-x: hidden; }

nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
  background: rgba(11,28,46,0.97); backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(197,151,58,0.15);
  height: 72px; display: flex; align-items: center; justify-content: space-between;
  padding: 0 var(--px); transition: background 0.3s;
}
.nav-logo { font-family:'Cormorant Garamond',serif; font-size:1.35rem; font-weight:600; color:var(--white); text-decoration:none; letter-spacing:0.02em; }
.nav-logo span { color: var(--gold); }
.nav-links { display:flex; gap:30px; list-style:none; align-items:center; }
.nav-links a { color:rgba(255,255,255,0.72); text-decoration:none; font-size:0.82rem; font-weight:500; letter-spacing:0.06em; text-transform:uppercase; transition:color 0.2s; position:relative; padding-bottom:3px; }
.nav-links a::after { content:''; position:absolute; bottom:0; left:0; right:0; height:1px; background:var(--gold); transform:scaleX(0); transition:transform 0.2s; transform-origin:left; }
.nav-links a:hover { color:var(--white); }
.nav-links a:hover::after,.nav-links a.active::after { transform:scaleX(1); }
.nav-links a.active { color:var(--gold-light); }
.nav-cta-btn { background:var(--gold)!important; color:var(--navy)!important; padding:10px 22px!important; font-weight:700!important; }
.nav-cta-btn::after { display:none!important; }
.nav-cta-btn:hover { background:var(--gold-light)!important; }
.hamburger { display:none; background:none; border:none; cursor:pointer; flex-direction:column; gap:5px; padding:4px; }
.hamburger span { display:block; width:24px; height:2px; background:var(--white); transition:0.3s; }

.page-wrapper { padding-top: 72px; }
.section { width:100%; padding:90px var(--px); }
.section-tag { display:inline-flex; align-items:center; gap:10px; font-size:0.72rem; font-weight:700; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold); margin-bottom:16px; }
.section-tag::before { content:''; width:28px; height:1px; background:var(--gold); display:block; }
h1,h2 { font-family:'Cormorant Garamond',serif; line-height:1.1; }
h1 { font-size:clamp(2.8rem,5vw,4.4rem); font-weight:600; }
h2 { font-size:clamp(1.9rem,3vw,2.9rem); font-weight:600; }
h3 { font-family:'Cormorant Garamond',serif; font-size:1.35rem; font-weight:600; line-height:1.2; }
.lead { font-size:1rem; line-height:1.85; color:var(--gray); }
p { line-height:1.8; }

.btn-primary { background:var(--gold); color:var(--navy); padding:15px 36px; font-family:'DM Sans',sans-serif; font-size:0.85rem; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; text-decoration:none; border:none; cursor:pointer; display:inline-block; transition:all 0.25s; }
.btn-primary:hover { background:var(--gold-light); transform:translateY(-2px); }
.btn-outline { border:1.5px solid rgba(197,151,58,0.45); color:var(--white); padding:15px 36px; font-family:'DM Sans',sans-serif; font-size:0.85rem; font-weight:500; letter-spacing:0.08em; text-transform:uppercase; text-decoration:none; display:inline-block; transition:all 0.25s; }
.btn-outline:hover { border-color:var(--gold); color:var(--gold); }
.btn-dark { background:var(--navy); color:var(--white); padding:15px 36px; font-family:'DM Sans',sans-serif; font-size:0.85rem; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; text-decoration:none; border:none; cursor:pointer; display:inline-block; transition:all 0.25s; }
.btn-dark:hover { background:var(--navy-light); transform:translateY(-2px); }

.page-hero { background:var(--navy); padding:80px var(--px) 72px; position:relative; overflow:hidden; }
.page-hero-grid { position:absolute; inset:0; opacity:0.04; background-image:linear-gradient(var(--gold) 1px,transparent 1px),linear-gradient(90deg,var(--gold) 1px,transparent 1px); background-size:52px 52px; }
.page-hero-accent { position:absolute; right:0; top:0; bottom:0; width:40%; background:linear-gradient(135deg,rgba(197,151,58,0.07) 0%,transparent 70%); clip-path:polygon(12% 0,100% 0,100% 100%,0% 100%); }
.page-hero-content { position:relative; z-index:2; max-width:760px; }
.page-hero h1 { color:var(--white); margin-bottom:18px; font-size:clamp(2.2rem,4vw,3.4rem); }
.page-hero p { color:rgba(255,255,255,0.62); font-size:1.05rem; line-height:1.8; max-width:600px; }
.breadcrumb { display:flex; align-items:center; gap:8px; font-size:0.7rem; letter-spacing:0.18em; text-transform:uppercase; color:var(--gold); margin-bottom:20px; }
.breadcrumb a { color:rgba(255,255,255,0.38); text-decoration:none; transition:color 0.2s; }
.breadcrumb a:hover { color:var(--gold); }
.breadcrumb span { color:rgba(255,255,255,0.18); }

.cta-banner { background:var(--gold); padding:72px var(--px); text-align:center; }
.cta-banner h2 { color:var(--navy); margin-bottom:14px; }
.cta-banner p { color:rgba(11,28,46,0.65); font-size:1rem; line-height:1.7; max-width:480px; margin:0 auto 32px; }

footer { background:var(--navy); padding:60px var(--px) 28px; border-top:1px solid rgba(197,151,58,0.12); }
.footer-grid { display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:48px; margin-bottom:48px; }
.footer-brand .nav-logo { display:block; margin-bottom:14px; font-size:1.1rem; }
.footer-brand p { font-size:0.82rem; color:rgba(255,255,255,0.38); line-height:1.75; max-width:260px; }
.footer-col h5 { font-size:0.68rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--gold); margin-bottom:18px; }
.footer-col ul { list-style:none; display:flex; flex-direction:column; gap:10px; }
.footer-col ul li a { font-size:0.83rem; color:rgba(255,255,255,0.42); text-decoration:none; transition:color 0.2s; }
.footer-col ul li a:hover { color:var(--gold-light); }
.footer-bottom { padding-top:24px; border-top:1px solid rgba(255,255,255,0.06); display:flex; justify-content:space-between; align-items:center; font-size:0.76rem; color:rgba(255,255,255,0.26); }

.fade-in { opacity:0; transform:translateY(22px); transition:opacity 0.65s ease,transform 0.65s ease; }
.fade-in.visible { opacity:1; transform:translateY(0); }
.d1 { transition-delay:0.1s; } .d2 { transition-delay:0.2s; } .d3 { transition-delay:0.3s; } .d4 { transition-delay:0.4s; }

.form-group { margin-bottom:20px; }
label { display:block; font-size:0.72rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; color:var(--navy); margin-bottom:8px; }
input,select,textarea { width:100%; padding:13px 16px; border:1.5px solid rgba(11,28,46,0.12); background:var(--cream); font-family:'DM Sans',sans-serif; font-size:0.9rem; color:var(--navy); outline:none; transition:border-color 0.2s,background 0.2s; appearance:none; }
input:focus,select:focus,textarea:focus { border-color:var(--gold); background:var(--white); }
textarea { resize:vertical; min-height:130px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }

@media(max-width:1024px){:root{--px:40px;}}
@media(max-width:768px){
  :root{--px:24px;}
  .nav-links{display:none;}
  .nav-links.open{display:flex;flex-direction:column;position:absolute;top:72px;left:0;right:0;background:rgba(11,28,46,0.99);padding:16px var(--px);border-top:1px solid rgba(197,151,58,0.1);gap:0;}
  .nav-links.open li{border-bottom:1px solid rgba(255,255,255,0.05);}
  .nav-links.open a{display:block;padding:14px 0;font-size:0.95rem;}
  .hamburger{display:flex;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px;}
  .footer-bottom{flex-direction:column;gap:8px;text-align:center;}
  .form-row{grid-template-columns:1fr;}
}
@media(max-width:480px){:root{--px:20px;}.footer-grid{grid-template-columns:1fr;}}
