  /* ============ DESIGN TOKENS ============ */
  :root{
    --ink:#0F2543;
    --ink-soft:#1B3A61;
    --steel:#2D5F8A;
    --steel-soft:#E8EFF5;
    --wine:#1F6B2E;
    --wine-soft:#E6F0E7;
    --amber:#D69016;
    --amber-dark:#B87A0E;
    --paper:#FAF9F5;
    --paper-dim:#F1EFE7;
    --slate:#5C6B7A;
    --line:#E4E1D8;
    --white:#FFFFFF;

    --font-display:'Archivo', sans-serif;
    --font-body:'Inter', sans-serif;
    --font-mono:'IBM Plex Mono', monospace;

    --radius-sm:6px;
    --radius-md:10px;
    --radius-lg:16px;
    --shadow-card: 0 2px 4px rgba(15,37,67,0.04), 0 8px 24px rgba(15,37,67,0.06);
    --shadow-hover: 0 4px 8px rgba(15,37,67,0.06), 0 16px 32px rgba(15,37,67,0.10);
    --container: 1200px;
  }

  @media (prefers-reduced-motion: reduce){
    *{ animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important; scroll-behavior:auto !important; }
  }

  *{ box-sizing:border-box; margin:0; padding:0; }
  html{ scroll-behavior:smooth; }
  body{
    font-family:var(--font-body);
    color:var(--ink);
    background:var(--paper);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img,svg{ display:block; max-width:100%; }
  a{ color:inherit; text-decoration:none; }
  ul{ list-style:none; }
  button{ font-family:inherit; cursor:pointer; border:none; background:none; }

  :focus-visible{
    outline:3px solid var(--amber);
    outline-offset:2px;
    border-radius:4px;
  }

  .container{
    max-width:var(--container);
    margin:0 auto;
    padding:0 24px;
  }

  h1,h2,h3,h4{
    font-family:var(--font-display);
    color:var(--ink);
    line-height:1.15;
    letter-spacing:-0.01em;
  }

  .eyebrow{
    font-family:var(--font-mono);
    font-size:0.72rem;
    font-weight:600;
    letter-spacing:0.14em;
    text-transform:uppercase;
    display:inline-flex;
    align-items:center;
    gap:8px;
  }
  .eyebrow::before{
    content:'';
    width:20px;
    height:2px;
    background:currentColor;
    display:inline-block;
  }
  .eyebrow--steel{ color:var(--steel); }
  .eyebrow--wine{ color:var(--wine); }
  .eyebrow--amber{ color:var(--amber-dark); }

  .section{
    padding:88px 0;
  }
  .section--tight{ padding:64px 0; }
  .section--dark{ background:var(--ink); color:var(--white); }
  .section--dim{ background:var(--paper-dim); }
  .section-head{
    max-width:640px;
    margin-bottom:48px;
  }
  .section-head h2{
    font-size:clamp(1.8rem, 3.2vw, 2.6rem);
    margin-top:12px;
  }
  .section-head p{
    color:var(--slate);
    font-size:1.05rem;
    margin-top:14px;
  }
  .section--dark .section-head p{ color:#B9C4D4; }

  /* ============ BUTTONS ============ */
  .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:14px 26px;
    border-radius:8px;
    font-weight:600;
    font-size:0.95rem;
    white-space:nowrap;
    transition:transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
    min-height:48px;
  }
  .btn-primary{
    background:var(--amber);
    color:var(--ink);
  }
  .btn-primary:hover{ background:var(--amber-dark); transform:translateY(-1px); box-shadow:0 6px 16px rgba(201,153,47,0.35); }
  .btn-ghost{
    background:transparent;
    color:var(--white);
    border:1.5px solid rgba(255,255,255,0.4);
  }
  .btn-ghost:hover{ border-color:var(--white); background:rgba(255,255,255,0.08); }
  .btn-outline-ink{
    background:transparent;
    color:var(--ink);
    border:1.5px solid var(--ink);
  }
  .btn-outline-ink:hover{ background:var(--ink); color:var(--white); }
  .btn-sm{ padding:10px 18px; font-size:0.85rem; min-height:40px; }

  /* ============ LOGO ============ */
  .logo{ display:flex; align-items:center; gap:10px; }
  .logo-mark{ width:44px; height:44px; flex-shrink:0; object-fit:contain; }
  .logo-mark-plate{
    display:flex; align-items:center; justify-content:center;
    width:56px; height:56px;
    border-radius:50%;
    background:var(--paper);
    padding:6px;
    flex-shrink:0;
    box-shadow:0 2px 8px rgba(0,0,0,0.18);
  }
  .logo-mark-plate .logo-mark{ width:100%; height:100%; }
  .logo-text{ display:flex; flex-direction:column; line-height:1.1; }
  .logo-text strong{
    font-family:var(--font-display);
    font-size:1.15rem;
    font-weight:800;
    letter-spacing:0.01em;
    color:var(--white);
  }
  .logo-text span{
    font-family:var(--font-mono);
    font-size:0.58rem;
    font-weight:600;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:#93A3B6;
  }

  /* ============ HEADER ============ */
  .site-header{
    position:fixed;
    top:0; left:0; right:0;
    z-index:1000;
    background:rgba(15,37,67,0.94);
    backdrop-filter:blur(10px);
    border-bottom:1px solid transparent;
    transition:border-color 0.2s ease, box-shadow 0.2s ease;
  }
  .site-header.is-scrolled{
    border-color:rgba(255,255,255,0.1);
    box-shadow:0 2px 16px rgba(0,0,0,0.25);
  }
  .header-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:16px 24px;
  }
  .main-nav{ display:flex; align-items:center; gap:32px; }
  .main-nav a{
    font-size:0.92rem;
    font-weight:500;
    color:var(--white);
    position:relative;
    padding:4px 0;
  }
  .main-nav a::after{
    content:'';
    position:absolute; left:0; bottom:-2px;
    width:0; height:2px;
    background:var(--amber);
    transition:width 0.2s ease;
  }
  .main-nav a:hover::after{ width:100%; }
  .header-actions{ display:flex; align-items:center; gap:18px; }
  .nav-toggle{
    display:none;
    width:44px; height:44px;
    align-items:center; justify-content:center;
  }
  .nav-toggle span, .nav-toggle span::before, .nav-toggle span::after{
    content:'';
    display:block;
    width:22px; height:2px;
    background:var(--white);
    position:relative;
    transition:transform 0.2s ease, opacity 0.2s ease;
  }
  .nav-toggle span::before{ position:absolute; top:-7px; }
  .nav-toggle span::after{ position:absolute; top:7px; }
  .nav-toggle.is-open span{ background:transparent; }
  .nav-toggle.is-open span::before{ transform:rotate(45deg); top:0; }
  .nav-toggle.is-open span::after{ transform:rotate(-45deg); top:0; }

  /* ============ PROMO SLIDER ============ */
  .promo-slider{
    position:relative;
    margin-top:78px;
    height:460px;
    overflow:hidden;
    background:var(--ink);
  }
  .promo-track{ position:relative; width:100%; height:100%; }
  .promo-slide{
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    background-size:cover;
    background-position:center;
    opacity:0;
    visibility:hidden;
    transition:opacity 0.6s ease;
  }
  .promo-slide.is-active{ opacity:1; visibility:visible; }
  .promo-slide-inner{ max-width:560px; color:var(--white); }
  .promo-slide-inner .eyebrow{ color:var(--amber); }
  .promo-slide-inner .eyebrow::before{ background:currentColor; }
  .promo-slide-inner h2{
    font-size:clamp(1.6rem, 3vw, 2.4rem);
    color:var(--white);
    margin-top:12px;
  }
  .promo-slide-inner p{
    color:#DCE3EC;
    margin-top:12px;
    margin-bottom:24px;
    font-size:1rem;
  }
  .promo-arrow{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:44px; height:44px;
    border-radius:50%;
    background:rgba(255,255,255,0.14);
    border:1px solid rgba(255,255,255,0.3);
    backdrop-filter:blur(4px);
    color:var(--white);
    display:flex; align-items:center; justify-content:center;
    z-index:5;
    transition:background 0.15s ease;
  }
  .promo-arrow:hover{ background:rgba(255,255,255,0.28); }
  .promo-arrow svg{ width:20px; height:20px; }
  .promo-arrow--prev{ left:24px; }
  .promo-arrow--next{ right:24px; }
  .promo-dots{
    position:absolute;
    bottom:22px; left:50%;
    transform:translateX(-50%);
    display:flex;
    gap:10px;
    z-index:5;
  }
  .promo-dot{
    width:9px; height:9px;
    border-radius:50%;
    background:rgba(255,255,255,0.4);
    transition:background 0.2s ease, transform 0.2s ease;
  }
  .promo-dot.is-active{ background:var(--amber); transform:scale(1.25); }

  /* ============ HERO ============ */
  .hero{
    padding:88px 0 80px;
    position:relative;
  }
  .hero-grid{
    display:grid;
    grid-template-columns:1.05fr 0.95fr;
    gap:56px;
    align-items:center;
  }
  .hero h1{
    font-size:clamp(2.3rem, 4.4vw, 3.6rem);
    margin-top:16px;
  }
  .hero h1 em{
    font-style:normal;
    color:var(--steel);
    position:relative;
  }
  .hero-lede{
    color:var(--slate);
    font-size:1.12rem;
    max-width:520px;
    margin-top:20px;
  }
  .hero-ctas{
    display:flex;
    gap:14px;
    margin-top:32px;
    flex-wrap:wrap;
  }
  .btn-track-steel{ background:var(--steel); color:var(--white); }
  .btn-track-steel:hover{ background:var(--ink-soft); }
  .btn-track-wine{ background:var(--wine); color:var(--white); }
  .btn-track-wine:hover{ background:#14501F; }

  .trust-strip{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    margin-top:56px;
    padding-top:32px;
    border-top:1px solid var(--line);
  }
  .trust-item strong{
    display:block;
    font-family:var(--font-mono);
    font-size:1.5rem;
    font-weight:600;
    color:var(--ink);
  }
  .trust-item span{
    font-size:0.8rem;
    color:var(--slate);
  }

  .hero-visual{
    position:relative;
    border-radius:var(--radius-lg);
    overflow:hidden;
    aspect-ratio:4/4.6;
    box-shadow:var(--shadow-hover);
    background:linear-gradient(155deg, var(--steel) 0%, var(--ink) 55%, var(--wine) 100%);
  }
  .hero-fallback-img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:0;
  }
  .hero-video{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:1;
  }
  .hero-video-overlay{
    position:absolute;
    inset:0;
    z-index:2;
    background:
      linear-gradient(0deg, rgba(15,37,67,0.65) 0%, rgba(15,37,67,0.05) 45%, rgba(15,37,67,0.15) 100%),
      linear-gradient(155deg, rgba(45,95,138,0.35) 0%, rgba(15,37,67,0.15) 55%, rgba(140,59,59,0.30) 100%);
  }
  .hero-sound-toggle{
    position:absolute;
    bottom:22px; left:22px;
    z-index:3;
    width:38px; height:38px;
    border-radius:50%;
    background:rgba(255,255,255,0.14);
    border:1px solid rgba(255,255,255,0.35);
    backdrop-filter:blur(4px);
    display:flex; align-items:center; justify-content:center;
    color:var(--white);
    transition:background 0.15s ease;
  }
  .hero-sound-toggle:hover{ background:rgba(255,255,255,0.26); }
  .hero-sound-toggle svg{ width:16px; height:16px; }
  .photo-block{
    width:100%; height:100%;
    position:relative;
    display:flex;
    align-items:flex-end;
    background:linear-gradient(155deg, var(--steel) 0%, var(--ink) 55%, var(--wine) 100%);
  }
  .photo-block::before{
    content:'';
    position:absolute; inset:0;
    background-image:
      radial-gradient(circle at 20% 25%, rgba(255,255,255,0.10) 0, transparent 40%),
      radial-gradient(circle at 80% 75%, rgba(201,153,47,0.18) 0, transparent 45%);
  }
  .photo-block .photo-icon{
    position:absolute;
    opacity:0.16;
  }
  .photo-caption{
    position:absolute;
    left:0; bottom:0;
    z-index:3;
    padding:22px;
    color:var(--white);
  }
  .photo-caption .eyebrow{ color:var(--amber); }
  .photo-caption .eyebrow::before{ background:var(--amber); }
  .photo-caption p{
    font-size:0.85rem;
    color:#DCE3EC;
    margin-top:6px;
    max-width:260px;
  }
  .hero-badge{
    position:absolute;
    top:24px; right:24px;
    z-index:3;
    background:rgba(255,255,255,0.95);
    color:var(--ink);
    padding:10px 14px;
    border-radius:var(--radius-sm);
    font-family:var(--font-mono);
    font-size:0.72rem;
    font-weight:600;
    text-align:center;
    line-height:1.3;
    box-shadow:0 4px 14px rgba(0,0,0,0.15);
    z-index:3;
  }
  .hero-badge strong{ display:block; font-size:1.1rem; color:var(--amber-dark); }

  /* ============ TWO PATHS (signature) ============ */
  .paths-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:2px;
    background:var(--line);
    border-radius:var(--radius-lg);
    overflow:hidden;
    box-shadow:var(--shadow-card);
  }
  .path-panel{
    background:var(--white);
    padding:44px 40px;
    position:relative;
    transition:background 0.25s ease;
  }
  .path-panel--iti{ border-top:4px solid var(--steel); }
  .path-panel--hm{ border-top:4px solid var(--wine); }
  .path-panel:hover{ background:var(--paper-dim); }
  .path-icon{
    width:52px; height:52px;
    border-radius:12px;
    display:flex; align-items:center; justify-content:center;
    margin-bottom:22px;
  }
  .path-panel--iti .path-icon{ background:var(--steel-soft); color:var(--steel); }
  .path-panel--hm .path-icon{ background:var(--wine-soft); color:var(--wine); }
  .path-panel h3{ font-size:1.5rem; margin-bottom:12px; }
  .path-panel p{ color:var(--slate); margin-bottom:22px; max-width:420px; }
  .path-tags{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:24px; }
  .path-tag{
    font-family:var(--font-mono);
    font-size:0.7rem;
    font-weight:500;
    padding:5px 10px;
    border-radius:100px;
  }
  .path-panel--iti .path-tag{ background:var(--steel-soft); color:var(--steel); }
  .path-panel--hm .path-tag{ background:var(--wine-soft); color:var(--wine); }
  .path-link{
    display:inline-flex; align-items:center; gap:6px;
    font-weight:600; font-size:0.92rem;
  }
  .path-panel--iti .path-link{ color:var(--steel); }
  .path-panel--hm .path-link{ color:var(--wine); }
  .path-link svg{ width:16px; height:16px; transition:transform 0.15s ease; }
  .path-link:hover svg{ transform:translateX(3px); }

  /* ============ FEATURES ============ */
  .features-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
  }
  .feature-card{
    background:var(--white);
    border:1px solid var(--line);
    border-radius:var(--radius-md);
    padding:28px 24px;
    transition:box-shadow 0.2s ease, transform 0.2s ease;
  }
  .feature-card:hover{ box-shadow:var(--shadow-hover); transform:translateY(-3px); }
  .feature-icon{
    width:44px; height:44px;
    border-radius:10px;
    background:var(--steel-soft);
    color:var(--steel);
    display:flex; align-items:center; justify-content:center;
    margin-bottom:18px;
  }
  .feature-card h4{ font-size:1.05rem; margin-bottom:8px; }
  .feature-card p{ color:var(--slate); font-size:0.9rem; }

  /* ============ COURSES ============ */
  .course-tabs{
    display:flex;
    gap:8px;
    margin-bottom:32px;
    border-bottom:1px solid var(--line);
  }
  .course-tab{
    padding:12px 20px;
    font-weight:600;
    font-size:0.92rem;
    color:var(--slate);
    border-bottom:2px solid transparent;
    margin-bottom:-1px;
    transition:color 0.15s ease, border-color 0.15s ease;
    min-height:44px;
    display:flex;
    align-items:center;
    gap:8px;
  }
  .course-tab .dot{ width:8px; height:8px; border-radius:50%; }
  .course-tab[data-track="iti"] .dot{ background:var(--steel); }
  .course-tab[data-track="hm"] .dot{ background:var(--wine); }
  .course-tab.is-active{ color:var(--ink); border-color:var(--ink); }

  .course-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
  }
  .course-panel{ display:none; }
  .course-panel.is-active{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }

  .course-card{
    background:var(--white);
    border:1px solid var(--line);
    border-radius:var(--radius-md);
    padding:26px;
    display:flex;
    flex-direction:column;
    transition:box-shadow 0.2s ease, transform 0.2s ease;
  }
  .course-card:hover{ box-shadow:var(--shadow-hover); transform:translateY(-3px); }
  .course-badge{
    display:inline-flex;
    align-self:flex-start;
    font-family:var(--font-mono);
    font-size:0.68rem;
    font-weight:600;
    letter-spacing:0.06em;
    text-transform:uppercase;
    padding:5px 10px;
    border-radius:100px;
    margin-bottom:16px;
  }
  .course-card--iti .course-badge{ background:var(--steel-soft); color:var(--steel); }
  .course-card--hm .course-badge{ background:var(--wine-soft); color:var(--wine); }
  .course-card h4{ font-size:1.15rem; margin-bottom:10px; }
  .course-meta{
    display:flex;
    gap:16px;
    font-size:0.82rem;
    color:var(--slate);
    margin-bottom:14px;
    font-family:var(--font-mono);
  }
  .course-meta span{ display:flex; align-items:center; gap:5px; }
  .course-card p.desc{ color:var(--slate); font-size:0.9rem; margin-bottom:20px; flex-grow:1; }
  .course-card .btn{ align-self:flex-start; }

  /* ============ CAREER OPPORTUNITIES ============ */
  .career-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
  }
  .career-card{
    background:var(--white);
    border:1px solid var(--line);
    border-left:3px solid transparent;
    border-radius:var(--radius-md);
    padding:22px 24px;
    transition:box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
  }
  .career-card:hover{ box-shadow:var(--shadow-hover); transform:translateY(-3px); }
  .career-card--iti{ border-left-color:var(--steel); }
  .career-card--hm{ border-left-color:var(--wine); }
  .career-card--iti .course-badge{ background:var(--steel-soft); color:var(--steel); }
  .career-card--hm .course-badge{ background:var(--wine-soft); color:var(--wine); }
  .career-card h4{ font-size:1.05rem; margin-top:14px; margin-bottom:8px; }
  .career-card p.desc{ color:var(--slate); font-size:0.88rem; margin-bottom:0; }

  /* ============ SUB-PAGE BANNER (Gallery / Admission Enquiry) ============ */
  .page-banner{
    background:var(--ink);
    color:var(--white);
    padding:148px 0 52px;
  }
  .breadcrumb{
    font-family:var(--font-mono);
    font-size:0.74rem;
    color:#93A3B6;
    margin-bottom:16px;
  }
  .breadcrumb a{ color:#B9C4D4; }
  .breadcrumb a:hover{ color:var(--amber); }
  .page-banner .eyebrow{ color:var(--amber); }
  .page-banner .eyebrow::before{ background:var(--amber); }
  .page-banner h1{
    font-family:var(--font-display);
    color:var(--white);
    font-size:clamp(2rem, 4vw, 2.7rem);
    margin-top:12px;
    letter-spacing:-0.01em;
  }
  .page-banner p{ color:#B9C4D4; margin-top:12px; max-width:580px; font-size:1.02rem; }

  /* ============ GALLERY ============ */
  .gallery-item{
    position:relative;
    border-radius:var(--radius-md);
    overflow:hidden;
    aspect-ratio:4/3;
    display:flex;
    align-items:flex-end;
  }
  .gallery-item img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.35s ease;
  }
  .gallery-item:hover img{ transform:scale(1.06); }
  .gallery-item::after{
    content:'';
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(0deg, rgba(15,37,67,0.78) 0%, rgba(15,37,67,0.05) 55%, transparent 100%);
  }
  .gallery-item .facility-label{ position:relative; z-index:2; padding:16px; color:var(--white); font-weight:600; font-size:0.9rem; }

  /* ============ FORMS (Admission Enquiry) ============ */
  .form-field{ display:flex; flex-direction:column; gap:6px; }
  .form-label{ font-size:0.82rem; font-weight:600; color:var(--ink); }
  .form-input{
    padding:13px 14px;
    border:1px solid var(--line);
    border-radius:8px;
    font-family:inherit;
    font-size:0.92rem;
    color:var(--ink);
    width:100%;
    background:var(--white);
  }
  .form-input::placeholder{ color:#8A97A6; }
  textarea.form-input{ resize:vertical; min-height:100px; }
  .form-row-2{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
  .enquiry-grid{
    display:grid;
    grid-template-columns:1.3fr 0.9fr;
    gap:32px;
    align-items:start;
  }
  .enquiry-sidebar-card{
    background:var(--white);
    border:1px solid var(--line);
    border-radius:var(--radius-md);
    padding:26px;
    margin-bottom:20px;
  }
  .enquiry-sidebar-card h4{ font-size:1rem; margin-bottom:16px; }
  .mini-steps{ display:flex; flex-direction:column; gap:14px; counter-reset:ministep; }
  .mini-step{ display:flex; gap:12px; align-items:flex-start; }
  .mini-step::before{
    counter-increment:ministep;
    content:counter(ministep);
    flex-shrink:0;
    width:24px; height:24px;
    border-radius:50%;
    background:var(--steel-soft);
    color:var(--steel);
    font-family:var(--font-mono);
    font-size:0.75rem;
    font-weight:600;
    display:flex; align-items:center; justify-content:center;
  }
  .mini-step p{ font-size:0.88rem; color:var(--slate); margin:0; }
  .mini-step strong{ display:block; font-size:0.92rem; color:var(--ink); margin-bottom:2px; }

  /* ============ FACILITIES ============ */
  .facilities-grid{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    grid-template-rows:repeat(2, 200px);
    gap:16px;
  }
  .facility-tile{
    border-radius:var(--radius-md);
    overflow:hidden;
    position:relative;
    display:flex;
    align-items:flex-end;
  }
  .facility-tile img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:1;
  }
  .facility-tile::after{
    content:'';
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(0deg, rgba(15,37,67,0.75) 0%, rgba(15,37,67,0.05) 55%, transparent 100%);
  }
  .facility-tile:nth-child(1){ grid-column:span 2; grid-row:span 2; }
  .facility-tile:nth-child(4){ grid-column:span 2; }
  .facility-tile .photo-block{ aspect-ratio:auto; }
  .facility-label{
    position:relative; z-index:2;
    padding:16px;
    color:var(--white);
    font-weight:600;
    font-size:0.92rem;
  }

  /* ============ STATS / PLACEMENTS ============ */
  .stats-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1px;
    background:rgba(255,255,255,0.12);
    border-radius:var(--radius-lg);
    overflow:hidden;
  }
  .stat-cell{
    background:var(--ink);
    padding:36px 28px;
    text-align:left;
  }
  .stat-cell strong{
    display:block;
    font-family:var(--font-mono);
    font-size:2.2rem;
    font-weight:600;
    color:var(--amber);
  }
  .stat-cell span{ color:#B9C4D4; font-size:0.88rem; }

  .partners-row{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:40px;
  }
  .partner-chip{
    font-family:var(--font-mono);
    font-size:0.78rem;
    color:#B9C4D4;
    border:1px solid rgba(255,255,255,0.18);
    padding:9px 16px;
    border-radius:100px;
  }

  /* ============ TESTIMONIALS ============ */
  .testi-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
  }
  .testi-card{
    background:var(--white);
    border:1px solid var(--line);
    border-radius:var(--radius-md);
    padding:28px;
  }
  .testi-card p{ font-size:0.98rem; color:var(--ink); margin-bottom:20px; }
  .testi-who{ display:flex; align-items:center; gap:12px; }
  .testi-avatar{
    width:40px; height:40px;
    border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    font-family:var(--font-display);
    font-weight:700;
    font-size:0.9rem;
    color:var(--white);
  }
  .testi-who strong{ display:block; font-size:0.9rem; }
  .testi-who span{ display:block; font-size:0.78rem; color:var(--slate); }

  /* ============ ADMISSIONS STEPS ============ */
  .steps-list{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:20px;
    counter-reset:step;
  }
  .step-item{ position:relative; padding-top:8px; }
  .step-item::before{
    counter-increment:step;
    content:counter(step, decimal-leading-zero);
    font-family:var(--font-mono);
    font-size:0.85rem;
    font-weight:600;
    color:var(--amber-dark);
    display:block;
    margin-bottom:12px;
  }
  .step-item h4{ font-size:1rem; margin-bottom:8px; }
  .step-item p{ font-size:0.85rem; color:var(--slate); }
  .step-item:not(:last-child)::after{
    content:'';
    position:absolute;
    top:12px; left:calc(100% - 6px);
    width:20px; height:1px;
    background:var(--line);
    display:none;
  }
  @media(min-width:900px){ .step-item:not(:last-child)::after{ display:block; } }

  /* ============ CTA BANNER ============ */
  .cta-banner{
    background:linear-gradient(120deg, var(--amber) 0%, #E8AA3E 100%);
    border-radius:var(--radius-lg);
    padding:52px 48px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:32px;
    flex-wrap:wrap;
  }
  .cta-banner h3{ font-size:1.7rem; color:var(--ink); max-width:480px; }
  .cta-banner p{ color:#3A2E10; margin-top:8px; font-size:0.95rem; }

  /* ============ FOOTER ============ */
  .site-footer{
    background:var(--ink);
    color:#B9C4D4;
    padding:64px 0 28px;
  }
  .footer-grid{
    display:grid;
    grid-template-columns:1.4fr 1fr 1fr 1.2fr;
    gap:40px;
    padding-bottom:40px;
    border-bottom:1px solid rgba(255,255,255,0.12);
  }
  .footer-col h5{
    font-family:var(--font-mono);
    font-size:0.76rem;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:var(--white);
    margin-bottom:16px;
  }
  .footer-col ul li{ margin-bottom:10px; }
  .footer-col ul li a{ font-size:0.9rem; color:#B9C4D4; transition:color 0.15s ease; }
  .footer-col ul li a:hover{ color:var(--amber); }
  .footer-desc{ font-size:0.9rem; margin-top:14px; max-width:280px; color:#93A3B6; }
  .footer-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding-top:24px;
    font-size:0.82rem;
    color:#7F90A3;
    flex-wrap:wrap;
    gap:12px;
  }
  .social-row{ display:flex; gap:12px; }
  .social-row a{
    width:36px; height:36px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.18);
    display:flex; align-items:center; justify-content:center;
    transition:background 0.15s ease, border-color 0.15s ease;
  }
  .social-row a:hover{ background:var(--amber); border-color:var(--amber); }
  .social-row a svg{ width:16px; height:16px; }

  /* ============ REVEAL ANIMATION ============ */
  .reveal{ opacity:0; transform:translateY(16px); transition:opacity 0.5s ease, transform 0.5s ease; }
  .reveal.is-visible{ opacity:1; transform:none; }

  /* ============ RESPONSIVE ============ */
  @media(max-width:1080px){
    .features-grid{ grid-template-columns:repeat(2,1fr); }
    .course-grid, .course-panel.is-active, .career-grid{ grid-template-columns:repeat(2,1fr); }
    .steps-list{ grid-template-columns:repeat(3,1fr); row-gap:32px; }
    .stats-grid{ grid-template-columns:repeat(2,1fr); }
    .testi-grid{ grid-template-columns:repeat(2,1fr); }
    .footer-grid{ grid-template-columns:1fr 1fr; row-gap:32px; }
  }

  @media(max-width:860px){
    .promo-slider{ height:400px; }
    .hero-grid{ grid-template-columns:1fr; }
    .hero{ padding:56px 0 60px; }
    .hero-visual{ order:-1; aspect-ratio:16/10; }
    .trust-strip{ grid-template-columns:repeat(2,1fr); row-gap:24px; }
    .paths-grid{ grid-template-columns:1fr; }
    .facilities-grid{ grid-template-columns:repeat(2,1fr); grid-template-rows:repeat(3,180px); }
    .facility-tile:nth-child(1){ grid-column:span 2; grid-row:span 1; }
    .facility-tile:nth-child(4){ grid-column:span 2; }
    .enquiry-grid{ grid-template-columns:1fr; }
  }

  @media(max-width:720px){
    .promo-slider{ height:440px; margin-top:73px; }
    .promo-slide-inner p{ font-size:0.92rem; }
    .promo-arrow{ width:38px; height:38px; }
    .promo-arrow--prev{ left:12px; }
    .promo-arrow--next{ right:12px; }
    .main-nav{
      position:fixed;
      top:73px; left:0; right:0;
      background:var(--ink);
      flex-direction:column;
      align-items:flex-start;
      gap:0;
      border-bottom:1px solid rgba(255,255,255,0.1);
      max-height:0;
      overflow:hidden;
      transition:max-height 0.25s ease;
    }
    .main-nav.is-open{ max-height:400px; }
    .main-nav a{ padding:14px 24px; width:100%; border-bottom:1px solid rgba(255,255,255,0.1); }
    .nav-toggle{ display:flex; }
    .header-actions .btn-primary{ display:none; }
    .header-actions .btn-primary.mobile-visible{ display:inline-flex; }

    .section{ padding:56px 0; }
    .features-grid, .course-grid, .course-panel.is-active, .stats-grid, .testi-grid, .career-grid{ grid-template-columns:1fr; }
    .steps-list{ grid-template-columns:1fr 1fr; }
    .facilities-grid{ grid-template-columns:1fr 1fr; }
    .cta-banner{ flex-direction:column; align-items:flex-start; padding:36px 28px; }
    .footer-grid{ grid-template-columns:1fr; }
    .course-tabs{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
    .form-row-2{ grid-template-columns:1fr; }
    .page-banner{ padding:128px 0 40px; }
  }

  @media(max-width:480px){
    .promo-slider{ height:480px; }
    .promo-slide-inner{ padding:0 4px; }
    .steps-list, .facilities-grid{ grid-template-columns:1fr; }
    .facilities-grid{ grid-template-rows:repeat(5,170px); }
    .hero-ctas{ flex-direction:column; align-items:stretch; }
    .hero-ctas .btn{ width:100%; }
    .trust-strip{ grid-template-columns:1fr 1fr; }
  }
