:root {
      --bg: #1b2330; --bg-deep: #141c27; --bg-card: #2a3a4e; --bg-card-alt: #243346;
      --gold: #c9a84c; --gold-light: #dbc278; --gold-dim: rgba(201,168,76,0.35);
      --white: #f5f3ef; --off-white: #d8d3ca; --body: #b8b2a7; --muted: #7a8899;
      --fh: 'Playfair Display', Georgia, serif; --fb: 'Montserrat', 'Helvetica Neue', sans-serif;
      --max-w: 1100px;
    }
    *, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
    html { scroll-behavior:smooth; -webkit-font-smoothing:antialiased; }
    body { font-family:var(--fb); background:var(--bg-deep); color:var(--off-white); overflow-x:hidden; line-height:1.6; }
    body.menu-open { overflow:hidden; }
    a { color:inherit; text-decoration:none; }
    .skip-link { position:absolute; left:16px; top:-48px; background:var(--gold); color:var(--bg-deep); font-family:var(--fb); font-size:11px; font-weight:600; letter-spacing:2px; text-transform:uppercase; padding:10px 14px; z-index:2000; transition:top 0.2s ease; }
    .skip-link:focus { top:16px; }
    ::selection { background:rgba(201,168,76,0.3); color:var(--white); }
    ::-webkit-scrollbar { width:5px; } ::-webkit-scrollbar-track { background:var(--bg-deep); } ::-webkit-scrollbar-thumb { background:var(--gold); }
    .container { max-width:var(--max-w); margin:0 auto; }
    .section-label { font-family:var(--fb); font-size:11px; font-weight:600; letter-spacing:4px; text-transform:uppercase; color:var(--gold); margin-bottom:14px; }
    .section-title { font-family:var(--fh); font-size:clamp(26px,4vw,46px); font-weight:700; color:var(--white); line-height:1.15; margin-bottom:20px; }
    .section-title em { color:var(--gold); font-style:italic; }
    .gold-bar { width:50px; height:3px; background:var(--gold); margin-bottom:14px; }
    .btn-gold { display:inline-block; background:var(--gold); font-family:var(--fb); font-size:11px; font-weight:600; letter-spacing:2.5px; text-transform:uppercase; color:var(--bg-deep); padding:14px 32px; border:none; cursor:pointer; transition:all 0.3s; }
    .btn-gold:hover { background:var(--gold-light); transform:translateY(-2px); }
    .btn-outline { display:inline-block; background:transparent; border:1px solid var(--gold-dim); font-family:var(--fb); font-size:11px; font-weight:500; letter-spacing:2.5px; text-transform:uppercase; color:var(--gold); padding:14px 32px; transition:all 0.3s; }
    .btn-outline:hover { border-color:var(--gold); }
    .card { background:var(--bg-card); border:1px solid var(--gold-dim); border-left:3px solid var(--gold); padding:24px 28px; margin-bottom:12px; }
    .card h4 { font-family:var(--fb); font-size:clamp(13px,1.3vw,15px); font-weight:600; color:var(--white); margin-bottom:6px; }
    .card p { font-family:var(--fb); font-size:clamp(13px,1.3vw,15px); font-weight:300; color:var(--off-white); line-height:1.7; }
    .animate { opacity:0; transform:translateY(40px); transition:opacity 0.8s cubic-bezier(0.4,0,0.2,1), transform 0.8s cubic-bezier(0.4,0,0.2,1); }
    .animate.visible { opacity:1; transform:translateY(0); }

    /* Nav */
    .nav { position:fixed; top:0; left:0; right:0; z-index:1000; padding:12px 24px; display:flex; justify-content:space-between; align-items:center; transition:all 0.4s; background:rgba(20,28,39,0.95); backdrop-filter:blur(20px); border-bottom:1px solid var(--gold-dim); }
    .nav.scrolled { padding:10px 24px; }
    .nav-logo { font-family:var(--fh); font-size:clamp(18px,2vw,22px); font-weight:700; color:var(--white); letter-spacing:1px; }
    .nav-logo span { color:var(--gold); }
    .nav-links { display:flex; gap:24px; align-items:center; }
    .nav-actions { display:flex; align-items:center; gap:12px; }
    .nav-cta { padding:8px 20px; font-size:9px; white-space:nowrap; }
    .nav-link { font-family:var(--fb); font-size:10px; font-weight:500; letter-spacing:2px; text-transform:uppercase; color:var(--muted); border-bottom:1px solid transparent; padding:6px 0; transition:color 0.3s, border-color 0.3s; }
    .nav-link:hover,
    .nav-link.active { color:var(--gold); border-bottom-color:var(--gold); }
    .mobile-menu-btn { display:none; background:none; border:none; cursor:pointer; padding:8px; z-index:1001; }
    .mobile-menu-btn div { width:22px; height:1.5px; background:var(--gold); margin:5px 0; }
    .mobile-overlay { display:none; position:fixed; inset:0; background:rgba(20,28,39,0.98); z-index:999; flex-direction:column; align-items:center; justify-content:center; gap:28px; }
    .mobile-overlay.open { display:flex; }
    .mobile-overlay a { font-family:var(--fb); font-size:15px; font-weight:500; letter-spacing:3px; text-transform:uppercase; color:var(--off-white); }
    .mobile-overlay .mobile-link.active { color:var(--gold); }

    /* Hero */
    .hero { min-height:100vh; display:flex; align-items:center; justify-content:center; text-align:center; position:relative; background:linear-gradient(160deg, var(--bg-deep) 0%, var(--bg) 40%, var(--bg-card-alt) 100%); }
    .hero-gold-line { position:absolute; left:40px; top:0; bottom:0; width:3px; background:linear-gradient(to bottom, var(--gold), transparent 60%); }
    .hero h1 { font-family:var(--fh); font-size:clamp(38px,6vw,80px); font-weight:700; color:var(--white); line-height:1.05; margin-bottom:8px; opacity:0; transform:translateY(30px); transition:opacity 0.8s ease 0.3s, transform 0.8s ease 0.3s; }
    .hero h1 span { display:block; }
    .hero-sub { font-family:var(--fb); font-size:12px; font-weight:600; letter-spacing:4px; text-transform:uppercase; color:var(--gold); margin-bottom:28px; opacity:0; transform:translateY(20px); transition:opacity 0.8s ease 0.5s, transform 0.8s ease 0.5s; }
    .hero-divider { opacity:0; transform:scaleX(0); transition:opacity 0.8s ease 0.6s, transform 0.8s ease 0.6s; }
    .hero-tagline { font-family:var(--fh); font-size:clamp(18px,2.5vw,26px); font-weight:400; font-style:italic; color:var(--off-white); margin-bottom:40px; max-width:600px; margin-left:auto; margin-right:auto; opacity:0; transform:translateY(20px); transition:opacity 0.8s ease 0.7s, transform 0.8s ease 0.7s; }
    .hero-ctas { display:flex; justify-content:center; gap:16px; flex-wrap:wrap; opacity:0; transform:translateY(20px); transition:opacity 0.8s ease 0.9s, transform 0.8s ease 0.9s; }
    .hero-ribbon { opacity:0; transition:opacity 0.8s ease 1.1s; }
    .hero.loaded h1,
    .hero.loaded .hero-sub,
    .hero.loaded .hero-tagline,
    .hero.loaded .hero-ctas { opacity:1; transform:translateY(0); }
    .hero.loaded .hero-divider { opacity:1; transform:scaleX(1); }
    .hero.loaded .hero-ribbon { opacity:1; }

    /* Sections */
    .section { padding:clamp(60px,10vw,120px) clamp(20px,5vw,60px); background:var(--bg-deep); }
    .section--alt { background:var(--bg); }
    .two-col { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
    .problem-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:40px; max-width:960px; margin-left:auto; margin-right:auto; }
    .problem-card { background:var(--bg-card); border:1px solid rgba(255,255,255,0.06); padding:28px; text-align:center; }
    .problem-card h4 { font-family:var(--fb); font-size:14px; font-weight:600; color:var(--white); margin-bottom:8px; text-transform:uppercase; letter-spacing:1.5px; }
    .problem-card p { font-size:clamp(13px,1.3vw,15px); font-weight:300; color:var(--off-white); line-height:1.7; }
    .solution-arrow { display:flex; align-items:center; justify-content:center; padding:24px 0; }
    .solution-arrow span { font-size:28px; color:var(--gold); opacity:0.6; }

    /* Governance */
    .gov-col { background:var(--bg-card); border:1px solid var(--gold-dim); padding:28px; }
    .gov-col h4 { font-family:var(--fb); font-size:12px; font-weight:600; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:16px; }
    .gov-item { font-size:clamp(13px,1.3vw,15px); font-weight:300; color:var(--off-white); line-height:1.8; margin-bottom:4px; }
    .gov-item strong { font-weight:600; color:var(--white); }

    /* Fee */
    .fee-block { background:var(--bg-card); border:1px solid var(--gold-dim); padding:32px; }
    .fee-block h4 { font-family:var(--fb); font-size:14px; font-weight:600; color:var(--white); margin-bottom:6px; }
    .fee-block p { font-size:clamp(13px,1.3vw,15px); font-weight:300; color:var(--off-white); line-height:1.7; }

    /* About */
    .bio { display:flex; gap:20px; align-items:flex-start; }
    .bio img { width:70px; height:70px; object-fit:cover; object-position:top; border-radius:50%; border:2px solid var(--gold-dim); flex-shrink:0; }
    .bio-name { font-family:var(--fh); font-size:20px; font-weight:700; color:var(--white); margin-bottom:2px; }
    .bio-creds { font-family:var(--fb); font-size:12px; font-weight:500; color:var(--gold); margin-bottom:2px; }
    .bio-role { font-family:var(--fb); font-size:11px; font-weight:400; color:var(--gold); font-style:italic; margin-bottom:4px; }
    .bio-titles { font-family:var(--fb); font-size:11px; font-weight:300; color:var(--muted); line-height:1.5; }
    .bio-text { font-family:var(--fb); font-size:clamp(13px,1.4vw,15px); font-weight:300; color:var(--off-white); line-height:1.85; margin-top:16px; }

    /* Footer */
    footer { background:var(--bg-deep); border-top:1px solid var(--gold-dim); padding:40px 24px 24px; }
    .footer-bottom { border-top:1px solid rgba(255,255,255,0.06); padding-top:20px; margin-top:28px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; }
    .footer-bottom p { font-size:10px; font-weight:300; color:var(--muted); }

    /* Responsive */
    @media(max-width:1149px) {
      .nav-links { display:none !important; }
      .mobile-menu-btn { display:block !important; }
      .nav-actions { gap:10px; }
      .nav-cta { padding:7px 14px; letter-spacing:2px; }
    }
    @media(min-width:1150px) { .mobile-menu-btn { display:none !important; } }
    @media(max-width:760px) { .nav-cta { display:none !important; } }
    @media(max-width:860px) {
      .two-col { grid-template-columns:1fr !important; gap:28px !important; }
      .gov-grid { grid-template-columns:1fr !important; }
      .fee-2col { grid-template-columns:1fr !important; }
      .hero-gold-line { display:none; }
      .problem-grid { grid-template-columns:repeat(2,1fr); }
    }
    @media(max-width:540px) {
      .problem-grid { grid-template-columns:1fr; max-width:360px; }
    }
    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior:auto; }
      *, *::before, *::after {
        animation-duration:0.01ms !important;
        animation-iteration-count:1 !important;
        transition-duration:0.01ms !important;
      }
      .animate { opacity:1; transform:none; }
    }
