*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --cream:#f5f0e8;--cream-dim:rgba(245,240,232,0.7);--cream-muted:rgba(245,240,232,0.42);
  --navy:#0d1824;--navy-mid:#152233;--navy-dark:#0a1219;
  --amber:#c45a1a;--amber-light:#e8874a;--gold:#c9a96e;
  --border:rgba(245,240,232,0.1);--border-mid:rgba(245,240,232,0.18);
  --border-light:rgba(13,24,36,0.12);
}
html{scroll-behavior:smooth}
body{background:var(--navy);color:var(--cream);font-family:'Jost',sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 52px;height:68px;background:rgba(13,24,36,0.96);backdrop-filter:blur(20px);border-bottom:0.5px solid var(--border)}
.nav-logo{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:22px;letter-spacing:0.2em;color:var(--cream);text-decoration:none;z-index:101;position:relative}
.nav-links{display:flex;align-items:center;gap:36px;list-style:none}
.nav-links a{font-size:12px;font-weight:400;letter-spacing:0.1em;color:var(--cream-muted);text-decoration:none;text-transform:uppercase;transition:color 0.25s}
.nav-links a:hover{color:var(--cream)}
.nav-cta{color:var(--navy)!important;background:var(--gold);padding:9px 22px;letter-spacing:0.08em!important;text-transform:uppercase;transition:opacity 0.2s!important}
.nav-cta:hover{opacity:0.85}

/* HAMBURGER */
.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;cursor:pointer;z-index:101;position:relative;background:none;border:none;padding:4px}
.nav-burger span{display:block;width:22px;height:1.5px;background:var(--cream);transition:all 0.3s ease;transform-origin:center}
.nav-burger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.nav-burger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

/* MOBILE MENU OVERLAY */
.mobile-menu{display:none;position:fixed;inset:0;z-index:99;background:rgba(13,24,36,0.98);flex-direction:column;align-items:center;justify-content:center;gap:0;opacity:0;transition:opacity 0.3s ease}
.mobile-menu.open{opacity:1}
.mobile-menu a{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:300;letter-spacing:0.05em;color:var(--cream-dim);text-decoration:none;padding:16px 0;border-bottom:0.5px solid var(--border);width:100%;max-width:320px;text-align:center;transition:color 0.2s}
.mobile-menu a:hover{color:var(--cream)}
.mobile-menu a:last-child{border-bottom:none;margin-top:16px;font-family:'Jost',sans-serif;font-size:13px;letter-spacing:0.12em;text-transform:uppercase;color:var(--navy);background:var(--gold);padding:14px 40px;width:auto}

/* BUTTONS */
.btn-primary{font-family:'Jost',sans-serif;font-size:12px;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;color:var(--navy);background:var(--gold);padding:15px 40px;text-decoration:none;transition:opacity 0.2s;display:inline-block}
.btn-primary:hover{opacity:0.85}
.btn-ghost{font-family:'Jost',sans-serif;font-size:12px;font-weight:400;letter-spacing:0.1em;text-transform:uppercase;color:var(--cream-muted);text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:color 0.2s}
.btn-ghost:hover{color:var(--cream)}
.btn-light{font-family:'Jost',sans-serif;font-size:12px;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;color:var(--navy);background:var(--gold);padding:13px 32px;text-decoration:none;transition:opacity 0.2s;display:inline-block}
.btn-light:hover{opacity:0.85}

/* TYPOGRAPHY */
.section-label{font-size:10px;font-weight:500;letter-spacing:0.22em;color:var(--gold);text-transform:uppercase;margin-bottom:20px;display:flex;align-items:center;gap:14px}
.section-label::before{content:'';display:block;width:20px;height:0.5px;background:var(--gold)}
.section-label.dark{color:var(--amber)}
.section-label.dark::before{background:var(--amber)}
h2{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(36px,5vw,62px);line-height:1.05;letter-spacing:-0.01em;color:var(--cream);margin-bottom:20px}
h2 em{font-style:italic;color:var(--amber-light)}
h2.on-light{color:var(--navy)}
h2.on-light em{color:var(--amber)}
.section-intro{font-size:16px;font-weight:300;color:var(--cream-dim);max-width:520px;line-height:1.85;letter-spacing:0.02em}
.section-intro.on-light{color:rgba(13,24,36,0.6)}

/* FORMS */
input,textarea,select{width:100%;background:rgba(245,240,232,0.05);border:0.5px solid var(--border-mid);padding:14px 18px;font-family:'Jost',sans-serif;font-size:14px;font-weight:300;color:var(--cream);outline:none;transition:border-color 0.2s;appearance:none}
input::placeholder,textarea::placeholder{color:var(--cream-muted)}
input:focus,textarea:focus,select:focus{border-color:var(--gold)}
textarea{resize:vertical;min-height:120px}
select option{background:var(--navy-mid);color:var(--cream)}

/* FOOTER */
footer{padding:36px 52px;border-top:0.5px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:var(--navy-dark)}
.footer-logo{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:18px;letter-spacing:0.2em;color:var(--cream-muted)}
.footer-copy{font-size:11px;color:var(--cream-muted);letter-spacing:0.06em}
.footer-links{display:flex;gap:28px;list-style:none}
.footer-links a{font-size:11px;color:var(--cream-muted);text-decoration:none;letter-spacing:0.08em;text-transform:uppercase;transition:color 0.2s}
.footer-links a:hover{color:var(--cream)}

/* ANIMATIONS */
.fade-in{opacity:0;transform:translateY(20px);transition:opacity 0.8s ease,transform 0.8s ease}
.fade-in.visible{opacity:1;transform:none}

/* MOBILE */
@media(max-width:900px){
  nav{padding:0 24px}
  .nav-links{display:none}
  .nav-burger{display:flex}
  .mobile-menu{display:flex}
  footer{flex-direction:column;gap:16px;text-align:center;padding:32px 24px}
  .footer-links{flex-wrap:wrap;justify-content:center;gap:16px}
}
