@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400;1,600&family=Jost:wght@200;300;400;500&display=swap');

:root {
  --navy: #0d1117;
  --navy-mid: #131920;
  --navy-light: #1a2433;
  --gold: #c9a84c;
  --gold-light: #e8c878;
  --gold-pale: #f5e9c8;
  --cream: #f5ede0;
  --muted: rgba(245,237,224,0.45);
  --faint: rgba(245,237,224,0.08);
  --green: #7a9e7e;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; font-size: 16px; }

body {
  background: var(--navy);
  color: var(--cream);
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  overflow-x: hidden;
  cursor: none;
}

body::before {
  content: '';
  position: fixed;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");
  pointer-events: none;
  z-index: 1;
  opacity: 0.6;
}

.cursor { position:fixed;width:8px;height:8px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:transform 0.1s ease; }
.cursor-ring { position:fixed;width:32px;height:32px;border:1px solid rgba(201,168,76,0.4);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:all 0.15s ease; }

/* NAV */
nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  padding: 26px 56px;
  display: flex; align-items: center; justify-content: space-between;
  border-bottom: 1px solid var(--faint);
  backdrop-filter: blur(20px);
  background: rgba(13,17,23,0.75);
}
.logo { display:flex;align-items:baseline;gap:2px;text-decoration:none; }
.logo-word { font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:400;letter-spacing:3px;color:var(--cream); }
.logo-word em { font-style:italic;color:var(--gold); }
.logo-mark { width:5px;height:5px;background:var(--gold);border-radius:50%;margin-left:4px;margin-bottom:2px;flex-shrink:0; }
.nav-links { display:flex;gap:36px;list-style:none;align-items:center; }
.nav-links a { color:var(--muted);text-decoration:none;font-size:12px;letter-spacing:2px;text-transform:uppercase;transition:color 0.3s; }
.nav-links a:hover { color:var(--cream); }
.nav-cta { border:1px solid var(--gold)!important;color:var(--gold)!important;padding:8px 22px;transition:all 0.3s!important; }
.nav-cta:hover { background:var(--gold)!important;color:var(--navy)!important; }

/* BUTTONS */
.btn-primary { background:var(--gold);color:var(--navy);border:none;padding:16px 40px;font-family:'Jost',sans-serif;font-size:13px;font-weight:500;letter-spacing:2px;text-transform:uppercase;cursor:pointer;text-decoration:none;display:inline-block;transition:all 0.3s ease; }
.btn-primary:hover { background:var(--gold-light);transform:translateY(-2px);box-shadow:0 12px 40px rgba(201,168,76,0.3); }
.btn-ghost { color:var(--muted);font-size:13px;letter-spacing:1px;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:color 0.3s; }
.btn-ghost:hover { color:var(--cream); }
.btn-outline { background:transparent;color:var(--gold);border:1px solid var(--gold);padding:14px 36px;font-family:'Jost',sans-serif;font-size:13px;letter-spacing:2px;text-transform:uppercase;cursor:pointer;text-decoration:none;display:inline-block;transition:all 0.3s; }
.btn-outline:hover { background:var(--gold);color:var(--navy); }

/* SECTIONS */
.section { padding:120px 56px;max-width:1200px;margin:0 auto;position:relative;z-index:2; }
.section-label { font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:20px; }
.section-title { font-family:'Cormorant Garamond',serif;font-size:clamp(40px,5vw,64px);font-weight:300;line-height:1.05;color:var(--cream);margin-bottom:64px; }
.section-title em { font-style:italic;color:var(--gold); }
.divider { width:60px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:36px auto; }

/* TICKER */
.ticker { overflow:hidden;padding:18px 0;border-top:1px solid var(--faint);border-bottom:1px solid var(--faint);background:var(--navy-mid);position:relative;z-index:2; }
.ticker-track { display:flex;animation:ticker 24s linear infinite;white-space:nowrap; }
.ticker-item { display:inline-flex;align-items:center;gap:16px;padding:0 40px;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--muted); }
.ticker-dot { width:3px;height:3px;border-radius:50%;background:var(--gold);flex-shrink:0; }

/* CARDS */
.card { background:var(--navy-light);border:1px solid var(--faint);transition:border-color 0.3s; }
.card:hover { border-color:rgba(201,168,76,0.25); }
.card-gold-line { position:relative;overflow:hidden; }
.card-gold-line::before { content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:0;transition:opacity 0.3s; }
.card-gold-line:hover::before { opacity:1; }

/* FOOTER */
footer { padding:40px 56px;border-top:1px solid var(--faint);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2; }
.footer-copy { font-size:12px;color:var(--muted);letter-spacing:1px; }
.footer-links { display:flex;gap:32px; }
.footer-links a { font-size:12px;color:var(--muted);text-decoration:none;letter-spacing:1px;transition:color 0.3s; }
.footer-links a:hover { color:var(--gold); }

/* FORMS */
.email-form { display:flex;gap:0;max-width:440px;margin:48px auto 0; }
.email-input { flex:1;background:var(--navy-light);border:1px solid rgba(201,168,76,0.3);border-right:none;padding:16px 20px;font-family:'Jost',sans-serif;font-size:14px;color:var(--cream);outline:none; }
.email-input::placeholder { color:var(--muted); }
.email-input:focus { border-color:var(--gold); }
.email-btn { background:var(--gold);color:var(--navy);border:none;padding:16px 28px;font-family:'Jost',sans-serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:500;cursor:pointer;transition:background 0.3s; }
.email-btn:hover { background:var(--gold-light); }

/* ANIMATIONS */
@keyframes fadeUp { from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)} }
@keyframes ticker { from{transform:translateX(0)}to{transform:translateX(-50%)} }
@keyframes scrollPulse { 0%,100%{opacity:0.3}50%{opacity:1} }
@keyframes pulse { 0%,100%{opacity:1}50%{opacity:0.3} }
@keyframes spin { to{transform:rotate(360deg)} }

.fade-in { opacity:0;animation:fadeUp 0.8s ease forwards; }
.reveal { opacity:0;transform:translateY(30px);transition:opacity 0.7s ease,transform 0.7s ease; }
.reveal.visible { opacity:1;transform:translateY(0); }

/* STATUS BADGES */
.badge { display:inline-flex;align-items:center;gap:6px;padding:4px 12px;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;font-weight:500; }
.badge-auto { background:rgba(122,158,126,0.12);color:var(--green); }
.badge-guided { background:rgba(201,168,76,0.1);color:var(--gold); }
.badge-soon { background:var(--faint);color:var(--muted); }
.badge-dot { width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0; }

/* PAGE HERO (non-homepage) */
.page-hero { padding:160px 56px 80px;text-align:center;position:relative;z-index:2; }
.page-hero h1 { font-family:'Cormorant Garamond',serif;font-size:clamp(48px,7vw,96px);font-weight:300;line-height:1;color:var(--cream);margin-bottom:20px; }
.page-hero h1 em { font-style:italic;color:var(--gold); }
.page-hero p { font-size:17px;color:var(--muted);max-width:480px;margin:0 auto;line-height:1.8; }

/* TRUST BAR */
.trust-bar { background:var(--navy-mid);border-top:1px solid var(--faint);border-bottom:1px solid var(--faint);padding:24px 56px;display:flex;align-items:center;justify-content:center;gap:56px;position:relative;z-index:2; }
.trust-item { display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:1px;color:var(--muted); }
.trust-icon { color:var(--gold);font-size:14px; }

/* RESPONSIVE */
@media(max-width:768px){
  nav { padding:20px 24px; }
  .nav-links { display:none; }
  .section { padding:80px 24px; }
  .page-hero { padding:120px 24px 60px; }
  .trust-bar { gap:24px;flex-wrap:wrap;padding:20px 24px; }
  footer { flex-direction:column;gap:20px;text-align:center;padding:32px 24px; }
}

/* SCROLL BAR */
::-webkit-scrollbar { width:4px; }
::-webkit-scrollbar-track { background:transparent; }
::-webkit-scrollbar-thumb { background:rgba(201,168,76,0.3);border-radius:2px; }
