@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');

:root{--bg:#071016;--bg2:#0b171d;--card:#101e25;--line:rgba(255,255,255,.11);--text:#edf3f2;--muted:#9aa9aa;--accent:#b9d7c8;--gold:#d6bd7b;--max:1180px}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:"DM Sans",sans-serif;background:var(--bg);color:var(--text);line-height:1.65}a{text-decoration:none;color:inherit}button{font:inherit}section{scroll-margin-top:90px}.site-header{height:78px;position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);background:rgba(7,16,22,.82);backdrop-filter:blur(18px)}.brand{font-size:18px;font-weight:700;letter-spacing:.18em}.brand span{font-weight:400;color:var(--gold)}.nav{display:flex;align-items:center;gap:28px;color:#c3cecd;font-size:13px}.nav a{transition:.25s}.nav a:hover{color:#fff}.nav-cta{border:1px solid var(--accent);padding:10px 17px;color:#fff}.menu-toggle{display:none;background:none;border:0;color:white}.menu-toggle span{display:block;width:25px;height:2px;background:#fff;margin:5px}

.hero{min-height:800px;padding:170px 5% 90px;display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center;max-width:1400px;margin:auto;background:radial-gradient(circle at 75% 40%,rgba(185,215,200,.09),transparent 35%)}.eyebrow{font-size:11px;letter-spacing:.2em;color:var(--gold);font-weight:700;margin-bottom:18px}.hero h1{font-size:clamp(52px,7vw,94px);line-height:1.02;letter-spacing:-.04em;max-width:850px}.hero h1 em{font-family:"Playfair Display",serif;font-weight:500;color:var(--accent)}.hero-text{max-width:650px;color:var(--muted);font-size:18px;margin:28px 0 34px}.hero-actions{display:flex;gap:12px}.btn{display:inline-flex;justify-content:center;align-items:center;padding:13px 22px;border:1px solid var(--line);font-size:13px;font-weight:700;cursor:pointer}.btn-primary{background:var(--accent);color:#091216;border-color:var(--accent)}.btn-ghost{background:transparent}.hero-panel{border:1px solid var(--line);background:rgba(16,30,37,.7);padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.panel-label{font-size:10px;color:var(--muted);letter-spacing:.15em;margin-bottom:16px}.ticker-row{display:grid;grid-template-columns:1fr auto auto;gap:20px;padding:15px 0;border-top:1px solid var(--line);font-size:14px}.ticker-row span:nth-child(2){color:#dbe4e2}.up{color:#9fd1b1}.down{color:#d58f8f}

.section{max-width:var(--max);margin:auto;padding:115px 30px}.dark-section{max-width:none;padding-left:max(30px,calc((100% - var(--max))/2));padding-right:max(30px,calc((100% - var(--max))/2));background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-heading{max-width:760px;margin-bottom:55px}.section-heading h2{font-size:clamp(34px,4.5vw,60px);line-height:1.08;letter-spacing:-.035em}.section-heading>p:last-child:not(.eyebrow){color:var(--muted);margin-top:18px}.stats-grid,.feature-grid,.philosophy-grid,.risk-grid,.compliance-grid,.performance-grid,.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.stat-card,.feature-grid article,.philosophy-grid article,.risk-grid article,.compliance-grid article,.performance-grid article,.steps article{background:var(--bg);padding:38px}.stat-card strong{display:block;font-size:44px;color:var(--accent);margin-bottom:18px}.stat-card h3,.feature-grid h3,.philosophy-grid h3,.risk-grid h3,.compliance-grid h3,.steps h3{font-size:18px;margin-bottom:12px}.stat-card p,.feature-grid p,.philosophy-grid p,.risk-grid p,.compliance-grid p,.performance-grid p,.steps p{color:var(--muted);font-size:14px}.tiers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tier{position:relative;border:1px solid var(--line);padding:28px;min-height:340px;background:rgba(255,255,255,.015);display:flex;flex-direction:column}.tier.featured{border-color:rgba(185,215,200,.65);transform:translateY(-10px)}.tier>span,.feature-no{font-size:11px;color:var(--gold);letter-spacing:.15em}.tier h3{font-size:25px;margin:38px 0 18px}.price{font-size:29px;font-weight:700;margin-bottom:18px}.price small{font-size:10px;color:var(--muted);font-weight:400}.tier p{font-size:13px;color:var(--muted);margin:3px 0}.tier-btn{margin-top:auto;padding:12px;background:transparent;color:#fff;border:1px solid var(--line);cursor:pointer}.tier-btn:hover{background:var(--accent);color:#091216}.feature-grid article,.philosophy-grid article,.risk-grid article,.compliance-grid article{min-height:240px}.philosophy{background:linear-gradient(180deg,#091319,#071016)}.allocation-bar{height:45px;display:flex;margin-bottom:55px;overflow:hidden}.allocation-bar div{display:flex;align-items:center;padding-left:15px;border-right:1px solid var(--bg);background:#294039;font-weight:700;font-size:12px}.allocation-bar div:nth-child(2){background:#36574c}.allocation-bar div:nth-child(3){background:#496c5e}.allocation-items{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.allocation-items article{border-top:1px solid var(--line);padding-top:22px}.allocation-items strong{font-size:40px;color:var(--accent)}.allocation-items h3{margin:8px 0 12px}.allocation-items p{color:var(--muted);font-size:14px}.performance-grid article{background:var(--card)}.performance-grid strong{font-size:52px;color:var(--accent);display:block;margin-bottom:10px}.notice{color:#8e9a99!important;font-size:12px!important}.terms-table{border-top:1px solid var(--line)}.terms-table div{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);font-size:14px}.terms-table span{color:var(--muted)}.next-steps .steps article{background:var(--bg)}.steps article>span{font-size:11px;color:var(--gold);letter-spacing:.2em}.steps h3{margin-top:35px}.contact{padding:100px 5%;background:var(--accent);color:#0a1417;display:flex;justify-content:space-between;gap:50px;align-items:flex-end}.contact .eyebrow{color:#53665e}.contact h2{font-size:clamp(32px,4vw,55px);max-width:700px;line-height:1.1}.contact-details{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;text-align:right}.contact-details a:hover{text-decoration:underline}footer{padding:30px 5%;display:flex;justify-content:space-between;gap:40px;color:#697777;font-size:11px;border-top:1px solid var(--line)}footer p:last-child{max-width:650px;text-align:right}.modal{position:fixed;inset:0;background:rgba(0,0,0,.7);display:none;align-items:center;justify-content:center;padding:20px;z-index:100}.modal.open{display:flex}.modal-card{max-width:500px;background:#102027;border:1px solid var(--line);padding:45px;position:relative;box-shadow:0 30px 100px #000}.modal-card h2{font-size:38px;line-height:1.1;margin-bottom:15px}.modal-card p:not(.eyebrow){color:var(--muted);margin-bottom:25px}.modal-close{position:absolute;right:15px;top:10px;background:none;border:0;color:#fff;font-size:30px;cursor:pointer}

@media(max-width:900px){.nav{position:absolute;top:78px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;padding:20px 5%;background:#071016;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav a{padding:10px}.menu-toggle{display:block}.hero{grid-template-columns:1fr;padding-top:145px}.tiers-grid{grid-template-columns:repeat(2,1fr)}.stats-grid,.feature-grid,.philosophy-grid,.risk-grid,.compliance-grid,.performance-grid,.steps,.allocation-items{grid-template-columns:1fr}.contact,footer{flex-direction:column;align-items:flex-start}.contact-details{text-align:left}footer p:last-child{text-align:left}.tier.featured{transform:none}}
@media(max-width:560px){.hero{padding-left:22px;padding-right:22px}.section{padding:80px 22px}.dark-section{padding-left:22px;padding-right:22px}.hero h1{font-size:48px}.hero-text{font-size:15px}.hero-panel{padding:18px}.ticker-row{grid-template-columns:1fr auto}.ticker-row span:last-child{display:none}.tiers-grid{grid-template-columns:1fr}.tier{min-height:300px}.contact{padding:70px 22px}.contact-details{font-size:12px}}


/* =========================================================
   MOBILE VIEWPORT FIX
   Prevents horizontal overflow and keeps every element
   inside the phone screen.
   ========================================================= */

html {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

body {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: hidden;
}

*, *::before, *::after {
  max-width: 100%;
}

.site-header {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.hero {
  width: 100%;
  max-width: 1400px;
  min-width: 0;
  box-sizing: border-box;
}

.hero-copy,
.hero-panel,
.section-heading,
.ticker,
.ticker-row,
.tiers-grid,
.stats-grid,
.feature-grid,
.philosophy-grid,
.allocation,
.allocation-items,
.risk-grid,
.compliance-grid,
.performance-grid,
.steps,
.contact,
footer {
  min-width: 0;
  box-sizing: border-box;
}

.hero-panel {
  overflow: hidden;
}

.hero-text,
.section-heading,
.tier,
.stat-card,
.feature-grid article,
.philosophy-grid article,
.risk-grid article,
.compliance-grid article,
.performance-grid article,
.steps article {
  overflow-wrap: anywhere;
}

.ticker-row {
  min-width: 0;
}

.ticker-row span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 900px) {
  .hero {
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }

  .hero-copy,
  .hero-panel {
    width: 100%;
    max-width: 100%;
  }

  .dark-section {
    padding-left: 20px;
    padding-right: 20px;
  }

  .tiers-grid,
  .stats-grid,
  .feature-grid,
  .philosophy-grid,
  .risk-grid,
  .compliance-grid,
  .performance-grid,
  .steps,
  .allocation-items {
    width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 560px) {
  .site-header {
    height: 68px;
    padding-left: 16px;
    padding-right: 16px;
  }

  .brand {
    max-width: calc(100% - 60px);
    font-size: 15px;
    letter-spacing: .10em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .menu-toggle {
    flex: 0 0 auto;
  }

  .nav {
    top: 68px;
  }

  .hero {
    width: 100%;
    max-width: 100%;
    min-height: auto;
    padding: 110px 16px 60px;
    gap: 32px;
  }

  .hero h1 {
    max-width: 100%;
    font-size: clamp(38px, 12vw, 52px);
    line-height: 1.04;
  }

  .hero-text {
    width: 100%;
    max-width: 100%;
    font-size: 15px;
    line-height: 1.6;
  }

  .hero-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    max-width: 100%;
  }

  .hero-actions .btn {
    width: 100%;
    max-width: 100%;
  }

  .hero-panel {
    width: 100%;
    max-width: 100%;
    padding: 16px;
  }

  .panel-label {
    font-size: 9px;
    letter-spacing: .10em;
    white-space: normal;
  }

  .ticker-row {
    width: 100%;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    font-size: 13px;
  }

  .ticker-row span:last-child {
    display: none;
  }

  .section,
  .dark-section {
    width: 100%;
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
  }

  .section-heading h2 {
    max-width: 100%;
    font-size: clamp(30px, 9vw, 46px);
  }

  .stats-grid,
  .feature-grid,
  .philosophy-grid,
  .risk-grid,
  .compliance-grid,
  .performance-grid,
  .steps,
  .allocation-items {
    grid-template-columns: minmax(0, 1fr);
  }

  .tier {
    width: 100%;
    max-width: 100%;
  }

  .allocation-bar {
    width: 100%;
    max-width: 100%;
  }

  .contact {
    width: 100%;
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
  }

  footer {
    width: 100%;
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
  }
}

