    :root{
      --navy:#06152d;
      --navy-2:#081a38;
      --navy-3:#0c2147;
      --gold:#d9b24c;
      --gold-2:#f3cf63;
      --gold-dark:#c78c1b;
      --gold-soft:#f5e2a4;
      --white:#ffffff;
      --text:#1d2a3a;
      --muted:#6b778a;
      --light:#f4f6fa;
      --border:#dfe6ef;
      --shadow:0 16px 45px rgba(10,25,47,0.12);
      --shadow-lg:0 26px 70px rgba(10,25,47,0.16);
      --shadow-dark:0 24px 60px rgba(0,0,0,0.38);
      --transition:all .28s ease;
      --container:1220px;
    }

    *{
      margin:0;
      padding:0;
      box-sizing:border-box;
    }

    html, body{
      overflow-x:hidden;
      width:100%;
      max-width:100%;
      scroll-behavior:smooth;
    }

    body{
  font-family:'Inter', sans-serif;
  color:var(--text);
  background:var(--light);
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  padding-top:82px;      
      
    }

    .dot-sep{
      display:inline-block;
      margin:0 3px;
      color:#f0cf73;
      font-weight:900;
      font-size:14px;
      transform:translateY(-1px);
    }

    img{
      max-width:100%;
      display:block;
    }

    a{
      text-decoration:none;
      color:inherit;
    }

    ul{
      list-style:none;
    }

    .container{
      width:min(100% - 40px, var(--container));
      margin-inline:auto;
    }

    .section{
      padding:110px 0;
      position:relative;
    }

    .section-light{ background:var(--light); }
    .section-white{ background:#fff; }

    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:4px 14px;
      border-radius:999px;
      font-size:12px;
      font-weight:800;
      letter-spacing:.08em;
      text-transform:uppercase;
      background:rgba(217,178,76,.12);
      color:var(--gold-dark);
      border:2px solid rgba(217,178,76,.25);
      margin-bottom:18px;
    }

    .eyebrow.dark{
      background:rgba(217,178,76,.12);
      color:#f0cf73;
      border-color:rgba(240,207,115,.22);
    }

    h1,h2,h3,h4{
      font-family:'Cormorant Garamond', serif;
      line-height:1.05;
      letter-spacing:-0.02em;
    }

    h1{
      font-size:clamp(3rem, 5.6vw, 5.2rem);
      color:#fff;
      margin-bottom:24px;
    }

    h2{
      font-size:clamp(2.25rem, 4vw, 3.6rem);
      margin-bottom:18px;
      color:#182235;
    }

    h3{
      font-size:2rem;
    }

    .gold{
      color:var(--gold);
      font-style:italic;
    }

    .lead{
      font-size:1.08rem;
      color:#d6deea;
      max-width:680px;
    }

    .section-light .lead,
    .section-white .lead{
      color:var(--muted);
    }

    .btn-row{
      display:flex;
      flex-wrap:wrap;
      gap:16px;
      margin-top:32px;
    }

    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:10px;
      min-height:54px;
      padding:0 24px;
      border-radius:14px;
      font-weight:700;
      font-size:15px;
      transition:var(--transition);
      border:1px solid transparent;
      cursor:pointer;
      white-space:nowrap;
    }

    .btn-primary{
      background:linear-gradient(135deg, #f4d46f 0%, #d8a92d 100%);
      color:#111827;
      box-shadow:0 12px 28px rgba(217,178,76,.28);
    }

    .btn-primary:hover{
      transform:translateY(-2px);
      box-shadow:0 18px 34px rgba(217,178,76,.35);
    }

    .btn-outline{
      border:1px solid rgba(255,255,255,.18);
      color:#fff;
      background:rgba(255,255,255,.03);
      backdrop-filter:blur(8px);
    }

    .btn-outline:hover{
      border-color:rgba(255,255,255,.32);
      background:rgba(255,255,255,.06);
      transform:translateY(-2px);
    }

    .btn-light{
      border:1px solid rgba(217,178,76,.35);
      color:var(--gold-dark);
      background:#fff;
    }

    .btn-light:hover{
      transform:translateY(-2px);
      box-shadow:var(--shadow);
    }

    /* HEADER */
.site-header{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  z-index:9999;
  background:#000;
  border-bottom:1px solid rgba(217,178,76,0.22);
  box-shadow:0 4px 18px rgba(0,0,0,0.25);
}

.nav-wrap{
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}

    .logo{
      display:flex;
      align-items:center;
      min-width:0;
      flex:1;
    }

    .logo img{
      height:58px;
      width:auto;
      object-fit:contain;
    }

    .nav{
      display:flex;
      align-items:center;
      gap:34px;
    }

    .nav a{
      color:#dfe6f3;
      font-size:15px;
      font-weight:600;
      transition:var(--transition);
      position:relative;
    }

    .nav a:hover{
      color:#c78c1b;
    }

    .nav a::after{
      content:"";
      position:absolute;
      left:0;
      bottom:-8px;
      width:0;
      height:2px;
      background:linear-gradient(90deg, #c78c1b, #e0b341);
      transition:width .25s ease;
    }

    .nav a:hover::after{
      width:100%;
    }

    .header-actions{
      display:none;
      align-items:center;
      gap:14px;
    }

    .mobile-toggle{
      display:none;
      background:none;
      border:none;
      color:#fff;
      font-size:34px;
      cursor:pointer;
      line-height:1;
      padding:0;
      width:44px;
      height:44px;
      align-items:center;
      justify-content:center;
    }

    /* HERO */
    .hero{
      position:relative;
      overflow:hidden;
      background:
        radial-gradient(circle at 82% 20%, rgba(217,178,76,0.12) 0%, transparent 26%),
        linear-gradient(90deg, #020d1d 0%, #04152c 42%, #071a35 68%, #111a26 100%);
      padding:88px 0 82px;
    }

    .hero .container{
      position:relative;
      z-index:2;
    }

    .hero::before{
      content:"";
      position:absolute;
      inset:0;
      background-image:
        linear-gradient(rgba(255,255,255,0.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.055) 1px, transparent 1px);
      background-size:54px 54px;
      opacity:.72;
      pointer-events:none;
      z-index:0;
    }

    .hero::after{
      content:"";
      position:absolute;
      inset:0;
      background:
        radial-gradient(circle at 84% 24%, rgba(217,178,76,0.18) 0%, transparent 22%),
        linear-gradient(to right, rgba(0,0,0,0) 54%, rgba(217,178,76,0.04) 100%);
      pointer-events:none;
      z-index:0;
    }

    .hero-grid{
      display:grid;
      grid-template-columns:1.05fr .95fr;
      align-items:center;
      gap:64px;
    }

    .hero-copy{
      position:relative;
      z-index:2;
    }

    .hero-stats{
      display:grid;
      grid-template-columns:repeat(3, 1fr);
      gap:18px;
      margin-top:42px;
      max-width:720px;
    }

    .stat{
      border-left:2px solid var(--gold);
      padding-left:14px;
    }

    .stat strong{
      display:block;
      color:#f4d46f;
      font-size:1.55rem;
      font-weight:800;
      line-height:1.1;
      margin-bottom:6px;
    }

    .stat span{
      display:block;
      color:#c8d0de;
      font-size:12px;
      letter-spacing:.06em;
      text-transform:uppercase;
      font-weight:700;
    }

    /* NEW HERO IMAGE BLOCK */
.hero-image-wrap{
  position:relative;
  display:flex;
  justify-content:center;
  align-items:center;
}

.hero-image-card{
  position:relative;
  width:100%;
  max-width:620px;
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(217,178,76,.16);
  background:linear-gradient(180deg, rgba(10,22,44,.96), rgba(12,24,45,.92));
  box-shadow:
    0 22px 55px rgba(0,0,0,.60),
    0 10px 24px rgba(0,0,0,.32);
  animation:floatImage 5s ease-in-out infinite;
}

.hero-image-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.04), transparent 24%);
  pointer-events:none;
  z-index:2;
}

.hero-side-image{
  width:100%;
  height:100%;
  min-height:640px;
  object-fit:cover;
  display:block;
}

/* Slow up-down floating movement */
@keyframes floatImage{
  0%{
    transform:translateY(0px);
  }
  50%{
    transform:translateY(-12px);
  }
  100%{
    transform:translateY(0px);
  }
}

    /* ABOUT */
    .about-grid{
      display:grid;
      grid-template-columns:1.05fr .95fr;
      gap:60px;
      align-items:start;
    }

    .about-copy p{
      color:var(--muted);
      margin-bottom:18px;
      font-size:1.02rem;
    }

    .underline-gold{
      width:74px;
      height:3px;
      background:linear-gradient(90deg, var(--gold), transparent);
      border-radius:999px;
      margin:20px 0 28px;
    }

    .vision-card{
      margin-top:36px;
      background:linear-gradient(135deg, #0b1d3f 0%, #0a1730 100%);
      color:#fff;
      border-radius:24px;
      padding:30px;
      box-shadow:var(--shadow);
      position:relative;
      overflow:hidden;
    }

    .vision-card::after{
      content:"“";
      position:absolute;
      right:24px;
      bottom:-18px;
      font-size:120px;
      color:rgba(255,255,255,.08);
      font-family:'Cormorant Garamond', serif;
      line-height:1;
    }

    .vision-title{
      color:var(--gold-soft);
      font-size:12px;
      font-weight:800;
      letter-spacing:.08em;
      text-transform:uppercase;
      margin-bottom:12px;
    }

    .vision-card p{
      font-size:1.12rem;
      font-style:italic;
      color:#eef3fb;
      max-width:560px;
      margin:0;
    }

    .mission-list{
      display:grid;
      gap:16px;
    }

.mission-item{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:20px 18px;
  border-radius:18px;
  background:#f1f3f5;
  border:1px solid #d9e0e8;
  box-shadow:none;
  transition:var(--transition);
  border-left:4px solid var(--gold);
}

    .mission-item:hover{
      transform:translateY(-3px);
      box-shadow:0 16px 32px rgba(15,23,42,.08);
    }

    .mission-icon{
      width:42px;
      height:42px;
      border-radius:12px;
      display:grid;
      place-items:center;
      background:rgba(217,178,76,.12);
      color:var(--gold-dark);
      font-size:20px;
      flex-shrink:0;
    }

    .mission-item p{
      color:#516074;
      font-size:15px;
      margin:0;
    }

    .section-heading{
      text-align:center;
      max-width:900px;
      margin:0 auto 58px;
    }

    .section-heading p{
      color:var(--muted);
      font-size:1.02rem;
      max-width:760px;
      margin:0 auto;
    }

    .courses-grid{
      display:grid;
      grid-template-columns:repeat(3, 1fr);
      gap:28px;
      align-items:stretch;
    }

    .course-card{
      position:relative;
      background:#fff;
      border-radius:28px;
      padding:28px;
      box-shadow:var(--shadow);
      border:1px solid rgba(15,23,42,.05);
      display:flex;
      flex-direction:column;
      transition:var(--transition);
      overflow:hidden;
    }

    .course-card:hover{
      transform:translateY(-8px);
      box-shadow:var(--shadow-lg);
    }

    .course-card.featured{
      background:linear-gradient(180deg, #0b1f43 0%, #0a1730 100%);
      color:#fff;
      border:1px solid rgba(217,178,76,.28);
      box-shadow:0 24px 60px rgba(10,25,47,.22);
    }

    .course-card::before{
      content:"";
      position:absolute;
      top:0;
      left:0;
      width:100%;
      height:5px;
      background:linear-gradient(90deg, var(--gold), #f3cf63);
    }

    .course-number{
      width:38px;
      height:38px;
      border-radius:10px;
      display:grid;
      place-items:center;
      background:#4a90e2;
      color:#fff;
      font-weight:800;
      margin-bottom:16px;
      box-shadow:0 10px 18px rgba(74,144,226,.18);
    }

    .course-tag{
      display:inline-block;
      font-size:11px;
      font-weight:800;
      letter-spacing:.08em;
      text-transform:uppercase;
      color:var(--gold-dark);
      background:rgba(217,178,76,.14);
      border:1px solid rgba(217,178,76,.22);
      padding:7px 12px;
      border-radius:999px;
      margin-bottom:16px;
    }

    .course-card.featured .course-tag{
      color:#f3cf63;
      background:rgba(217,178,76,.14);
      border-color:rgba(243,207,99,.18);
    }

    .course-title{
      font-size:2rem;
      margin-bottom:8px;
      line-height:1.08;
    }

    .course-subtitle{
      color:var(--gold-dark);
      font-size:15px;
      font-weight:600;
      margin-bottom:20px;
    }

    .course-card.featured .course-subtitle{
      color:#f3cf63;
    }

    .course-desc{
      color:#607086;
      font-size:15px;
      margin-bottom:24px;
    }

    .course-card.featured .course-desc{
      color:#d3dcec;
    }

    .divider{
      height:1px;
      background:rgba(15,23,42,.08);
      margin:18px 0 22px;
    }

    .course-card.featured .divider{
      background:rgba(255,255,255,.08);
    }

    .mini-title{
      font-size:12px;
      font-weight:800;
      letter-spacing:.08em;
      text-transform:uppercase;
      color:#8b98ab;
      margin-bottom:14px;
    }

    .course-card.featured .mini-title{
      color:#aeb9cc;
    }

    .bullet-list{
      display:grid;
      gap:10px;
      margin-bottom:24px;
    }

    .bullet-list li{
      position:relative;
      padding-left:24px;
      font-size:14px;
      color:#536175;
    }

    .course-card.featured .bullet-list li{
      color:#dde6f4;
    }

    .bullet-list li::before{
      content:"✓";
      position:absolute;
      left:0;
      top:0;
      color:var(--gold-dark);
      font-weight:800;
    }

    .course-card.featured .bullet-list li::before{
      color:#f3cf63;
    }

    .who-card{
      margin-top:auto;
      background:#f7f9fc;
      border:1px solid #e7edf4;
      border-radius:16px;
      padding:16px;
      color:#617188;
      font-size:14px;
      margin-bottom:22px;
    }

    .course-card.featured .who-card{
      background:rgba(255,255,255,.06);
      border-color:rgba(255,255,255,.08);
      color:#d5def0;
    }

    .testimonials-grid{
      display:grid;
      grid-template-columns:repeat(3, 1fr);
      gap:26px;
    }

    .testimonial{
      background:#fff;
      border:1px solid #e8edf4;
      border-radius:24px;
      padding:28px;
      box-shadow:0 12px 30px rgba(15,23,42,.05);
      transition:var(--transition);
      position:relative;
      overflow:hidden;
    }

    .testimonial:hover{
      transform:translateY(-6px);
      box-shadow:var(--shadow);
    }

    .testimonial::before{
      content:"★★★★★";
      position:absolute;
      top:22px;
      right:24px;
      color:#f3cf63;
      font-size:14px;
      letter-spacing:2px;
      font-weight:800;
    }

    .quote{
      font-size:1.03rem;
      color:#4f5d71;
      margin-bottom:26px;
      padding-top:20px;
    }

    .person{
      display:flex;
      align-items:center;
      gap:14px;
    }

    .avatar{
      width:52px;
      height:52px;
      border-radius:50%;
      background:linear-gradient(135deg, #0f264d, #18366c);
      color:#fff;
      display:grid;
      place-items:center;
      font-weight:800;
      font-size:18px;
      box-shadow:0 10px 20px rgba(10,25,47,.12);
    }

    .person strong{
      display:block;
      color:#0f1f36;
      font-size:1rem;
      margin-bottom:2px;
    }

    .person span{
      color:#7b8799;
      font-size:14px;
    }

    .lead-wrap{
      display:grid;
      grid-template-columns:1fr .95fr;
      gap:34px;
      align-items:stretch;
    }

    .lead-copy{
      background:linear-gradient(135deg, #071933 0%, #0b1f43 100%);
      color:#fff;
      border-radius:30px;
      padding:42px;
      box-shadow:var(--shadow-dark);
      position:relative;
      overflow:hidden;
    }

    .lead-copy::before{
      content:"";
      position:absolute;
      top:-100px;
      right:-80px;
      width:260px;
      height:260px;
      background:radial-gradient(circle, rgba(217,178,76,.18) 0%, transparent 70%);
      filter:blur(10px);
    }

    .lead-copy p{
      color:#d6deea;
      font-size:1.03rem;
      margin-bottom:20px;
      max-width:560px;
    }

    .lead-points{
      display:grid;
      gap:14px;
      margin-top:28px;
    }

    .lead-points div{
      display:flex;
      align-items:flex-start;
      gap:12px;
      color:#eef3fb;
      font-size:15px;
    }

    .lead-points span{
      width:28px;
      height:28px;
      border-radius:50%;
      background:rgba(217,178,76,.14);
      border:1px solid rgba(243,207,99,.18);
      display:grid;
      place-items:center;
      color:#f3cf63;
      font-weight:800;
      flex-shrink:0;
      margin-top:2px;
    }

    .lead-form-card{
      background:#fff;
      border:1px solid #e8edf4;
      border-radius:30px;
      padding:36px;
      box-shadow:var(--shadow);
    }

    .lead-form-card h3{
      font-size:2.2rem;
      margin-bottom:10px;
      color:#0f1f36;
    }

    .lead-form-card p{
      color:#6f7b8d;
      margin-bottom:26px;
    }

    .form-grid{
      display:grid;
      gap:16px;
    }

    .input-group{
      display:grid;
      gap:8px;
    }

    .input-group label{
      font-size:14px;
      font-weight:700;
      color:#243247;
    }

    .input-group input,
    .input-group select,
    .input-group textarea{
      width:100%;
      min-height:54px;
      padding:14px 16px;
      border-radius:14px;
      border:1px solid #dbe4ef;
      background:#f9fbfd;
      font-family:inherit;
      font-size:15px;
      color:#1f2d3d;
      outline:none;
      transition:var(--transition);
    }

    .input-group textarea{
      min-height:120px;
      resize:vertical;
    }

    .input-group input:focus,
    .input-group select:focus,
    .input-group textarea:focus{
      border-color:rgba(217,178,76,.65);
      box-shadow:0 0 0 4px rgba(217,178,76,.12);
      background:#fff;
    }

    .form-note{
      font-size:13px;
      color:#7c8899;
      margin-top:6px;
    }

    .footer{
      background:linear-gradient(180deg, #051124 0%, #030b18 100%);
      color:#fff;
      padding:78px 0 28px;
      position:relative;
      overflow:hidden;
    }

    .footer::before{
      content:"";
      position:absolute;
      top:-120px;
      right:-120px;
      width:300px;
      height:300px;
      background:radial-gradient(circle, rgba(217,178,76,.12) 0%, transparent 70%);
      pointer-events:none;
    }

    .footer-grid{
      display:grid;
      grid-template-columns:2fr .75fr .75fr .9fr;
      gap:32px;
      margin-bottom:36px;
    }

    .footer-brand img{
      height:44px;
      width:auto;
      object-fit:contain;
      margin-bottom:16px;
    }

.footer p{
  color:#b9c5d6;
  font-size:12.5px;
  line-height:1.9;
}

.footer h4{
  font-size:13px;
  margin-bottom:16px;
  color:#f2d483;
  font-family:'Inter', sans-serif;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.footer-links{
  display:grid;
  gap:8px;
}

.footer-links a{
  color:#d9e1ed;
  font-size:12.5px;
  line-height:1.8;
  transition:var(--transition);
}

    .footer-links a:hover{
      color:#f3cf63;
      transform:translateX(2px);
    }

    .footer-bottom{
      border-top:1px solid rgba(255,255,255,.08);
      padding-top:22px;
      display:flex;
      flex-direction:column;
      gap:12px;
    }

.footer-bottom small{
  color:#8fa0b8;
  line-height:1.8;
  font-size:11.5px;
}


.footer-contact{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:4px;
}

.contact-item{
  display:flex;
  align-items:center;
  gap:12px;
  color:#d9e1ed;
  font-size:13px;
  line-height:1.7;
  transition:var(--transition);
}

.contact-item:hover{
  color:#f3cf63;
  transform:translateX(3px);
}

.contact-icon{
  width:34px;
  height:34px;
  min-width:34px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(217,178,76,.10);
  border:1px solid rgba(243,207,99,.18);
  color:#f3cf63;
  font-size:13px;
  box-shadow:0 6px 18px rgba(0,0,0,.18);
}

.social-icons{
  display:flex;
  gap:12px;
  margin-top:20px;
}

.social-icons a{
  width:40px;
  height:40px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  color:#ffffff;
  font-size:16px;
  transition:var(--transition);
}

.social-icons a:hover{
  transform:translateY(-4px);
  color:#f3cf63;
  border-color:rgba(243,207,99,.35);
  background:rgba(217,178,76,.10);
  box-shadow:0 10px 24px rgba(0,0,0,.28);
}

    .reveal{
      opacity:0;
      transform:translateY(28px);
      transition:all .8s ease;
    }

    .reveal.show{
      opacity:1;
      transform:translateY(0);
    }

    @media (max-width: 1150px){
      .hero-grid,
      .about-grid,
      .courses-grid,
      .testimonials-grid,
      .lead-wrap,
      .footer-grid{
        grid-template-columns:1fr;
      }

      .hero-image-card{
        max-width:760px;
        margin:0 auto;
      }

      .hero-copy{
        max-width:760px;
      }

      .hero-side-image{
        min-height:500px;
      }
    }

    @media (max-width: 920px){
      .nav{
        position:fixed;
        top:82px;
        left:0;
        width:100%;
        background:#000000;
        border-top:none;
        border-bottom:1px solid rgba(255,255,255,.06);
        flex-direction:column;
        align-items:flex-start;
        padding:26px 26px 30px;
        gap:8px;
        transform:translateY(-8px);
        opacity:0;
        visibility:hidden;
        transition:var(--transition);
        z-index:998;
        box-shadow:0 18px 40px rgba(0,0,0,.45);
      }

      .nav a{
        width:100%;
        padding:16px 10px;
        border-radius:14px;
        font-size:18px;
        font-weight:700;
        color:#f3f4f6;
      }

      .nav a::after{
        display:none;
      }

      .nav a:hover,
      .nav a:active,
      .nav a:focus{
        color:#c78c1b;
        background:rgba(217,178,76,.08);
        padding-left:18px;
      }

      .nav.open{
        transform:translateY(0);
        opacity:1;
        visibility:visible;
      }

      .header-actions{
        display:flex;
        align-items:center;
      }

      .mobile-toggle{
        display:flex;
      }

      .hero-stats{
        grid-template-columns:1fr 1fr;
      }

      .section{
        padding:88px 0;
      }

      .logo img{
        height:52px;
      }
    }

    @media (max-width: 640px){
        
  body{
    padding-top:82px;
  }
  
      .container{
        width:min(100% - 28px, var(--container));
      }

      .nav-wrap{
        min-height:82px;
      }
      
      

      .logo{
        flex:0 1 auto;
        max-width:76%;
      }

      .logo img{
        height:auto;
        max-height:42px;
        width:100%;
      }

      .hero{
        padding:60px 0 54px;
      }

      h1{
        font-size:clamp(2.55rem, 10vw, 3.8rem);
      }

      h2{
        font-size:clamp(2rem, 8vw, 2.9rem);
      }

      .btn{
        width:100%;
      }

      .btn-row{
        flex-direction:column;
      }

      .hero-stats{
        grid-template-columns:1fr;
      }

      .hero-image-card,
      .lead-copy,
      .lead-form-card,
      .course-card,
      .vision-card,
      .testimonial{
        padding:22px;
        border-radius:24px;
      }

      .hero-side-image{
        min-height:380px;
      }

      .section{
        padding:76px 0;
      }

      .footer-brand img{
        max-height:54px;
      }
    }
    
/* STUDENT BENEFITS */
.benefits-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:28px;
  margin-top:10px;
}

.benefit-card{
  background:#fff;
  border:1px solid #e7edf4;
  border-radius:26px;
  padding:34px 28px;
  text-align:center;
  box-shadow:0 12px 30px rgba(15,23,42,.05);
  transition:var(--transition);
}

.benefit-card:hover{
  transform:translateY(-8px);
  box-shadow:var(--shadow);
}

.benefit-icon{
  width:78px;
  height:78px;
  margin:0 auto 22px;
  border-radius:22px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg, rgba(74,144,226,.10), rgba(74,144,226,.18));
  color:#2f6fcb;
  font-size:38px;
  box-shadow:0 10px 24px rgba(74,144,226,.12);
}

.benefit-card h3{
  font-size:1.65rem;
  margin-bottom:14px;
  color:#182235;
}

.benefit-card p{
  color:#607086;
  font-size:15px;
  line-height:1.9;
}

@media (max-width: 1150px){
  .benefits-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 640px){
  .benefit-card{
    padding:26px 22px;
    border-radius:22px;
  }

  .benefit-icon{
    width:68px;
    height:68px;
    font-size:32px;
    border-radius:18px;
  }

  .benefit-card h3{
    font-size:1.45rem;
  }
}    

    /* =========================
   LEGAL PAGES (Privacy / Terms / Disclaimer)
========================= */

.legal-hero{
  background:linear-gradient(135deg, #041226 0%, #071933 100%);
  padding:90px 0 70px;
  color:#fff;
  text-align:center;
}

.legal-hero h1{
  margin-bottom:12px;
}

.legal-hero p{
  color:#d6deea;
  max-width:780px;
  margin:0 auto;
  font-size:1.02rem;
}

.legal-content-wrap{
  padding:80px 0;
  background:#f7f9fc;
}

.legal-card{
  max-width:980px;
  margin:0 auto;
  background:#fff;
  border:1px solid #e6edf5;
  border-radius:28px;
  padding:48px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
}

.legal-card h2{
  font-size:2rem;
  margin-top:34px;
  margin-bottom:14px;
  color:#0f1f36;
}

.legal-card h3{
  font-size:1.35rem;
  margin-top:24px;
  margin-bottom:10px;
  color:#17263f;
  font-family:'Inter', sans-serif;
  font-weight:800;
}

.legal-card p{
  color:#5a687d;
  margin-bottom:16px;
  font-size:15.5px;
  line-height:1.9;
}

.legal-card ul{
  margin:10px 0 18px 0;
  padding-left:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.legal-card ul li{
  position:relative;
  padding-left:26px;
  color:#516074;
  font-size:15.5px;
  line-height:1.85;
}

.legal-card ul li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--gold-dark);
  font-weight:800;
}

.policy-highlight{
  background:linear-gradient(135deg, rgba(217,178,76,.10), rgba(217,178,76,.05));
  border:1px solid rgba(217,178,76,.22);
  border-radius:20px;
  padding:24px;
  margin:28px 0;
}

.policy-highlight p:last-child{
  margin-bottom:0;
}

@media (max-width: 768px){
  .legal-hero{
    padding:70px 0 55px;
  }

  .legal-card{
    padding:28px 22px;
    border-radius:22px;
  }

  .legal-card h2{
    font-size:1.7rem;
  }

  .legal-card h3{
    font-size:1.15rem;
  }
}


/* THANK YOU POPUP */
.thankyou-popup{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.55);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:99999;
  opacity:0;
  visibility:hidden;
  transition:all .3s ease;
  padding:20px;
}

.thankyou-popup.show{
  opacity:1;
  visibility:visible;
}

.thankyou-box{
  background:#fff;
  max-width:430px;
  width:100%;
  border-radius:28px;
  padding:42px 30px;
  text-align:center;
  box-shadow:0 25px 70px rgba(0,0,0,.22);
  transform:translateY(20px) scale(.96);
  transition:all .35s ease;
}

.thankyou-popup.show .thankyou-box{
  transform:translateY(0) scale(1);
}

.thankyou-icon{
  font-size:62px;
  color:#25D366;
  margin-bottom:18px;
}

.thankyou-box h3{
  font-size:2rem;
  margin-bottom:10px;
  color:#142136;
}

.thankyou-box p{
  font-size:1rem;
  color:#5d6b7d;
  margin-bottom:10px;
}

.thankyou-box small{
  color:#8a97a8;
  font-size:.92rem;
}

@media (max-width: 640px){
  .thankyou-box{
    padding:34px 22px;
    border-radius:22px;
  }

  .thankyou-icon{
    font-size:54px;
  }

  .thankyou-box h3{
    font-size:1.7rem;
  }
}

/* Disable background scroll when popup is open */
body.no-scroll{
  overflow:hidden;
  height:100vh;
}