:root {
    --primary: #E8841A;

    --primary-dark: #c96f10;

    --navy: #1a2a4a;

    --navy-light: #2d4070;

    --light-blue: #e8f4f8;

    --text: #333;

    --text-light: #666;

    --white: #fff;

  }
  * { margin: 0;
   padding: 0;
   box-sizing: border-box;
   }
  body { font-family: 'DM Sans', sans-serif;
   color: var(--text);
   overflow-x: hidden;
   }

  /* NAV */
  nav {
    background: var(--white);
     padding: 0 5%;

    display: flex;
     align-items: center;
     justify-content: space-between;

    height: 70px;
     box-shadow: 0 2px 15px rgba(0,0,0,.08);

    position: sticky;
     top: 0;
     z-index: 1000;

  }
  .logo { display: flex;
   align-items: center;
   gap: 10px;
   text-decoration: none;
   }
  .logo-icon {
    width: 42px;
     height: 42px;
     background: var(--primary);

    clip-path: polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);

    display: flex;
     align-items: center;
     justify-content: center;

    color: white;
     font-size: 18px;
     font-weight: 700;
     flex-shrink: 0;

  }
  .logo-text { line-height: 1.1;
   }

  .logo-text span:last-child  { display: block;
   font-size: 10px;
   color: var(--primary);
   letter-spacing: 1.5px;
   text-transform: ;
   }
  .nav-links { display: flex;
   list-style: none;
   gap: 5px;
   align-items: center;
   }
  .nav-links a { text-decoration: none;
   color: var(--navy);
   font-size: 15px;
   font-weight: 700;
   padding: 8px 10px;
   border-radius: 0px;
   transition: all .2s;
   text-transform: uppercase;
   letter-spacing: .5px;
   }
  .nav-links a:hover { color: var(--primary);
   background: #fff5ea;
   }
  .nav-cta { background: var(--primary) !important;
   color: white !important;
   padding: 10px 18px !important;
   border-radius: 6px !important;
   font-weight: 600 !important;
   }
  .nav-cta:hover { background: var(--primary-dark) !important;
   }
  .hamburger { display: none;
   flex-direction: column;
   gap: 5px;
   cursor: pointer;
   padding: 5px;
   }
  .hamburger span { display: block;
   width: 24px;
   height: 2px;
   background: var(--navy);
   transition: all .3s;
   }

  /* HERO SLIDER */
  .hero-slider { position: relative;
   width: 100%;
   overflow: hidden;
   }
  .slide {
    position: absolute;
     inset: 0;

    display: flex;
     align-items: center;
     padding: 60px 5%;

    opacity: 0;
     transform: translateX(50px);

    transition: opacity .75s ease, transform .75s ease;

    pointer-events: none;
     min-height: 500px;

  }
  .slide.active {
    opacity: 1;
     transform: translateX(0);

    pointer-events: auto;
     position: relative;

  }
  .slide-1 { background: linear-gradient(135deg, #f0f8ff 0%, #e8f4f0 60%, #fff8f0 100%);
   }
  .slide-2 { background: linear-gradient(135deg, #f0fff4 0%, #e0f0ff 60%, #f8f0ff 100%);
   }
  .slide-3 { background: linear-gradient(135deg, #fffaf0 0%, #f0f8ff 60%, #f0fff8 100%);
   }
  .slide::before {
    content: '';
     position: absolute;
     top: -120px;
     right: -120px;

    width: 600px;
     height: 600px;

    background: radial-gradient(circle, rgba(232,132,26,.07) 0%, transparent 70%);

    border-radius: 50%;
     pointer-events: none;

  }
  @keyframes fadeInUp { from { opacity:0;
   transform:translateY(26px);
   } to { opacity:1;
   transform:translateY(0);
   } }
  .slide.active .slide-content { animation: fadeInUp .65s ease both;
   }

  .slide-content { max-width: 520px;
   z-index: 1;
   }
  .slide-content h1 { font-family: 'Playfair Display', serif;
   font-size: clamp(28px,4vw,46px);
   color: var(--navy);
   line-height: 1.2;
   margin-bottom: 16px;
   }
  .slide-content h1 .highlight { color: var(--primary);
   font-style: italic;
   }
  .slide-content p { font-size: 16px;
   color: var(--text-light);
   line-height: 1.7;
   margin-bottom: 30px;
   }

  .btn-primary {
    display: inline-block;
     background: var(--primary);
     color: white;

    padding: 14px 32px;
     border-radius: 8px;
     text-decoration: none;

    font-weight: 600;
     font-size: 15px;
     letter-spacing: .5px;

    transition: all .3s;
     box-shadow: 0 4px 20px rgba(232,132,26,.35);

  }
  .btn-primary:hover { background: var(--primary-dark);
   transform: translateY(-2px);
   box-shadow: 0 8px 25px rgba(232,132,26,.4);
   }

  .slide-image {
    position: absolute;
     right: 0;
     bottom: 0;
     height: 100%;

    display: flex;
     align-items: flex-end;
     pointer-events: none;

  }

  /* Dots */
  .slider-dots { position: absolute;
   bottom: 22px;
   left: 50%;
   transform: translateX(-50%);
   display: flex;
   gap: 10px;
   z-index: 10;
   }
  .slider-dot { width: 10px;
   height: 10px;
   border-radius: 50%;
   background: rgba(26,42,74,.22);
   cursor: pointer;
   transition: all .3s;
   border: none;
   padding: 0;
   }
  .slider-dot.active { background: var(--primary);
   width: 28px;
   border-radius: 5px;
   }

  /* Arrows */
  .slider-arrow {
    position: absolute;
     top: 50%;
     transform: translateY(-50%);
     z-index: 10;

    background: white;
     border: none;
     width: 44px;
     height: 44px;
     border-radius: 50%;

    display: flex;
     align-items: center;
     justify-content: center;

    cursor: pointer;
     box-shadow: 0 4px 16px rgba(0,0,0,.12);

    font-size: 18px;
     color: var(--navy);
     transition: all .2s;

  }
  .slider-arrow:hover { background: var(--primary);
   color: white;
   }
  .slider-arrow.prev { left: 20px;
   }
  .slider-arrow.next { right: 20px;
   }

  /* TICKER */
  .vacancy-ticker { background: var(--navy);
   color: white;
   padding: 14px 0;
   overflow: hidden;
   white-space: nowrap;
   }
  .ticker-inner { display: inline-flex;
   animation: ticker 24s linear infinite;
   }
  .ticker-inner span { padding: 0 50px;
   font-size: 14px;
   font-weight: 500;
   letter-spacing: .5px;
   }
  .ticker-label { color: var(--primary);
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 1px;
   }
  @keyframes ticker { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

  /* SECTIONS */
  section { padding: 70px 5%;
   }
  .section-title { font-family: 'Playfair Display', serif;
   font-size: clamp(24px,3vw,36px);
   color: var(--navy);
   text-align: center;
   margin-bottom: 16px;
   }

  .about-main { background: white;
   }
  .about-main p { line-height: 1.8;
   color: var(--text-light);
   margin-bottom: 16px;
   font-size: 15px;
   max-width: 860px;
   margin-left: auto;
   margin-right: auto;
   }
  .highlight-stat { font-weight: 700;
   color: var(--navy);
   }

  .why-choose { background: var(--light-blue);
   }
  .why-choose h2 { font-family: 'Playfair Display', serif;
   font-size: 28px;
   color: var(--navy);
   margin-bottom: 10px;
   }
  .why-choose h3 { font-size: 17px;
   color: var(--primary);
   margin-bottom: 20px;
   font-weight: 600;
   }
  .check-list { list-style: none;
   margin-bottom: 30px;
   }
  .check-list li { display: flex;
   align-items: flex-start;
   gap: 12px;
   padding: 10px 0;
   font-size: 14.5px;
   color: var(--text);
   border-bottom: 1px solid rgba(26,42,74,.06);
   }
  .check-list li::before { content: '✅';
   flex-shrink: 0;
   margin-top: 1px;
   }

  .services-grid { display: grid;
   grid-template-columns: repeat(auto-fit,minmax(260px,1fr));
   gap: 24px;
   margin-top: 30px;
   }
  .service-card { background: white;
   border-radius: 12px;
   padding: 28px;
   box-shadow: 0 2px 20px rgba(0,0,0,.06);
   transition: all .3s;
   border-left: 4px solid transparent;
   }
  .service-card:hover { transform: translateY(-4px);
   box-shadow: 0 12px 35px rgba(0,0,0,.1);
   border-left-color: var(--primary);
   }
  .service-card h4 { font-size: 16px;
   font-weight: 700;
   color: var(--navy);
   margin-bottom: 10px;
   }
  .service-card p  { font-size: 14px;
   color: var(--text-light);
   line-height: 1.7;
   }

  .includes-list { list-style: none;
   display: grid;
   grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
   gap: 12px;
   margin-top: 20px;
   }
  .includes-list li { display: flex;
   align-items: center;
   gap: 10px;
   font-size: 14.5px;
   color: var(--text);
   padding: 10px 14px;
   background: white;
   border-radius: 8px;
   box-shadow: 0 2px 8px rgba(0,0,0,.05);
   }
  .includes-list li::before { content: '';
   width: 8px;
   height: 8px;
   background: var(--primary);
   border-radius: 50%;
   flex-shrink: 0;
   }

  .recruit-section { background: var(--light-blue);
   }
  .recruit-grid { display: grid;
   grid-template-columns: repeat(auto-fit,minmax(250px,1fr));
   gap: 24px;
   margin-top: 40px;
   }
  .recruit-card { background: white;
   border-radius: 14px;
   overflow: hidden;
   box-shadow: 0 4px 20px rgba(0,0,0,.08);
   transition: all .3s;
   }
  .recruit-card:hover { transform: translateY(-6px);
   box-shadow: 0 16px 40px rgba(0,0,0,.14);
   }
  .recruit-card-img-placeholder { width: 100%;
   height: 180px;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 50px;
   }
  .recruit-card:nth-child(1) .recruit-card-img-placeholder { background: linear-gradient(135deg,#667eea,#764ba2);
   }
  .recruit-card:nth-child(2) .recruit-card-img-placeholder { background: linear-gradient(135deg,#11998e,#38ef7d);
   }
  .recruit-card:nth-child(3) .recruit-card-img-placeholder { background: linear-gradient(135deg,#f7971e,#ffd200);
   }
  .recruit-label { background: var(--primary);
   color: white;
   text-align: center;
   padding: 12px;
   font-weight: 700;
   font-size: 13px;
   letter-spacing: 1.5px;
   text-transform: uppercase;
   }
  .recruit-desc  { padding: 16px;
   font-size: 13.5px;
   color: var(--text-light);
   line-height: 1.6;
   text-align: center;
   }

  .about-us { display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 60px;
   align-items: center;
   }
  .about-us-image { border-radius: 16px;
   overflow: hidden;
   height: 350px;
   background: linear-gradient(135deg,#667eea 0%,#764ba2 100%);
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 80px;
   }
  .about-us-content h2 { font-family: 'Playfair Display', serif;
   font-size: 32px;
   color: var(--primary);
   margin-bottom: 20px;
   }
  .about-us-content p { font-size: 15px;
   color: white;
   line-height: 1.8;
   margin-bottom: 16px;
   }
  .about-us-content .tagline { font-weight: 700;
   color: var(--primary);
   font-size: 16px;
   margin-top: 10px;
   }

  .cta-banner { background: linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);
   color: white;
   text-align: center;
   padding: 80px 5%;
   position: relative;
   overflow: hidden;
   }
  .cta-banner::before { content: '';
   position: absolute;
   top: -150px;
   left: -150px;
   width: 400px;
   height: 400px;
   background: radial-gradient(circle,rgba(255,255,255,.04) 0%,transparent 70%);
   border-radius: 50%;
   }
  .cta-banner .stay-connected { font-size: 13px;
   letter-spacing: 3px;
   text-transform: uppercase;
   color: rgba(255,255,255,.6);
   margin-bottom: 16px;
   }
  .cta-banner h2 { font-family: 'Playfair Display', serif;
   font-size: clamp(22px,4vw,40px);
   margin-bottom: 30px;
   color: white;
   }
  .cta-banner h2 span { color: var(--primary);
   }

  footer { background: #0f1a2e;
   color: rgba(255,255,255,.8);
   padding: 60px 5% 30px;
   }
  .footer-grid { display: grid;
   grid-template-columns: 1.4fr 1fr 1.6fr 1fr;
   gap: 40px;
   margin-bottom: 40px;
   }
  .footer-logo { display: flex;
   align-items: center;
   gap: 10px;
   margin-bottom: 20px;
   }
  .footer-logo .logo-icon { background: var(--primary);
   }
  .footer-logo .logo-text span:first-child { color: white;
   }
  
  footer h4 { font-size: 14px;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 1.5px;
   color: white;
   margin-bottom: 20px;
   }
  .footer-links { list-style: none;
   }
  .footer-links li { margin-bottom: 10px;
   }
  .footer-links a { text-decoration: none;
   color: rgba(255,255,255,.6);
   font-size: 14px;
   transition: color .2s;
   }
  .footer-links a:hover { color: var(--primary);
   }
  .footer-links a.active { color: var(--primary);
   font-weight: 600;
   }
  .contact-info p { font-size: 14px;
   margin-bottom: 12px;
   color: rgba(255,255,255,.7);
   }
  .contact-info a { color: rgba(255,255,255,.7);
   text-decoration: none;
   }
  .contact-info a:hover { color: var(--primary);
   }
  .social-links { display: flex;
   gap: 12px;
   margin-top: 15px;
   }
  .social-link { width: 36px;
   height: 36px;
   background: rgba(255,255,255,.1);
   border-radius: 8px;
   display: flex;
   align-items: center;
   justify-content: center;
   text-decoration: none;
   color: white;
   font-size: 14px;
   font-weight: 700;
   transition: all .2s;
   }
  .social-link:hover { background: var(--primary);
   }
  .footer-bottom { border-top: 1px solid rgba(255,255,255,.08);
   padding-top: 24px;
   text-align: center;
   font-size: 13px;
   color: rgba(255,255,255,.4);
   }

  /* RESPONSIVE */
  @media (max-width: 960px) {
    .nav-links { display: none;
     flex-direction: column;
     position: absolute;
     top: 70px;
     left: 0;
     right: 0;
     background: white;
     padding: 20px;
     box-shadow: 0 10px 30px rgba(0,0,0,.1);
     gap: 4px;
     }
    .nav-links.open { display: flex;
     }
    .hamburger { display: flex;
     }
    .about-us { grid-template-columns: 1fr;
     }
    .about-us-image { height: 250px;
     font-size: 60px;
     }
    .footer-grid { grid-template-columns: 1fr 1fr;
     }
  }
  @media (max-width: 640px) {
    .slide, .slide.active { padding: 50px 5%;
     min-height: 400px;
     }
    .slide-image { display: none;
     }
    .slider-arrow { display: none;
     }
    section { padding: 50px 5%;
     }
    .footer-grid { grid-template-columns: 1fr;
     gap: 30px;
     }
  }


  
  body { font-family: 'DM Sans', sans-serif;
   color: var(--text);
   overflow-x: hidden;
   }

  /* NAV */
  nav {
    background: var(--white);
     padding: 0 5%;

    display: flex;
     align-items: center;
     justify-content: space-between;

    height: 70px;
     box-shadow: 0 2px 15px rgba(0,0,0,.08);

    position: sticky;
     top: 0;
     z-index: 1000;

  }
  .logo { display: flex;
   align-items: center;
   gap: 10px;
   text-decoration: none;
   }
  .logo-icon {
    width: 42px;
     height: 42px;
     background: var(--primary);

    clip-path: polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);

    display: flex;
     align-items: center;
     justify-content: center;

    color: white;
     font-size: 18px;
     font-weight: 700;
     flex-shrink: 0;

  }
  .logo-text { line-height: 1.1;
   }

  .logo-text span:last-child  { display: block;
   font-size: 10px;
   color: var(--primary);
   letter-spacing: 1.5px;
   text-transform: ;
   }
  .nav-links { display: flex;
   list-style: none;
   gap: 5px;
   align-items: center;
   }
  
  .nav-links a:hover, .nav-links a.active { color: var(--primary);
   background: #fff5ea;
   }
  .nav-cta { background: var(--primary) !important;
   color: white !important;
   padding: 10px 18px !important;
   border-radius: 6px !important;
   font-weight: 600 !important;
   }
  .nav-cta:hover { background: var(--primary-dark) !important;
   }
  .hamburger { display: none;
   flex-direction: column;
   gap: 5px;
   cursor: pointer;
   padding: 5px;
   }
  .hamburger span { display: block;
   width: 24px;
   height: 2px;
   background: var(--navy);
   transition: all .3s;
   }

  /* PAGE HERO */
  .page-hero {
    background: linear-gradient(135deg, #f0f8ff 0%, #e8f4f0 60%, #fff8f0 100%);

    padding: 70px 5% 60px;

    position: relative;

    overflow: hidden;

  }
  .page-hero::before {
    content: '';
     position: absolute;
     top: -100px;
     right: -100px;

    width: 500px;
     height: 500px;

    background: radial-gradient(circle, rgba(232,132,26,.07) 0%, transparent 70%);

    border-radius: 50%;

  }
  .page-hero-inner { max-width: 700px;
   }
  .breadcrumb { font-size: 13px;
   color: var(--text-light);
   margin-bottom: 16px;
   }
  .breadcrumb a { color: var(--primary);
   text-decoration: none;
   }
  .breadcrumb span { margin: 0 6px;
   }
  .page-hero h1 { font-family: 'Playfair Display', serif;
   font-size: clamp(30px,5vw,52px);
   color: var(--navy);
   line-height: 1.15;
   margin-bottom: 18px;
   }
  .page-hero h1 .highlight { color: var(--primary);
   font-style: italic;
   }
  .page-hero p { font-size: 16px;
   color: var(--text-light);
   line-height: 1.75;
   max-width: 580px;
   margin-bottom: 30px;
   }

/**/
  .btn-primary:hover { background: var(--primary-dark);
   transform: translateY(-2px);
   box-shadow: 0 8px 25px rgba(232,132,26,.4);
   }
  .btn-outline {
    display: inline-block;
     background: transparent;
     color: #fff;

    padding: 13px 28px;
     border-radius: 8px;
     text-decoration: none;

    font-weight: 600;
     font-size: 15px;

    border: 2px solid #fff;

    transition: all .3s;
     margin-left: 12px;

  }
  .btn-outline:hover { background: var(--navy);
   color: white;
   }

  /* STATS BAR */
  .stats-bar {
    background: var(--navy);

    display: grid;
     grid-template-columns: repeat(4, 1fr);

    text-align: center;

  }
  .stat-item { padding: 24px 16px;
   border-right: 1px solid rgba(255,255,255,.1);
   }
  .stat-item:last-child { border-right: none;
   }
  .stat-num { font-family: 'Playfair Display', serif;
   font-size: 32px;
   color: var(--primary);
   font-weight: 700;
   display: block;
   }
  .stat-label { font-size: 13px;
   color: rgba(255,255,255,.65);
   letter-spacing: .5px;
   margin-top: 4px;
   }

  /* HOW IT WORKS */
  .section-title { font-family: 'Playfair Display', serif;
   font-size: clamp(24px,3vw,36px);
   color: var(--navy);
   text-align: center;
   margin-bottom: 12px;
   }
  .section-sub { text-align: center;
   color: var(--text-light);
   max-width: 560px;
   margin: 0 auto 50px;
   line-height: 1.7;
   font-size: 15px;
   }

  .steps-grid { display: grid;
   grid-template-columns: repeat(auto-fit, minmax(220px,1fr));
   gap: 0;
   position: relative;
   }
  .steps-grid::before {
    content: '';
     position: absolute;
     top: 48px;
     left: 10%;
     right: 10%;
     height: 2px;

    background: linear-gradient(90deg, var(--primary), rgba(232,132,26,.2));

    z-index: 0;

  }
  .step-card { text-align: center;
   padding: 30px 24px;
   position: relative;
   z-index: 1;
   }
  .step-num {
    width: 56px;
     height: 56px;
     background: var(--primary);
     color: white;

    border-radius: 50%;
     font-family: 'Playfair Display', serif;

    font-size: 22px;
     font-weight: 700;

    display: flex;
     align-items: center;
     justify-content: center;

    margin: 0 auto 20px;
     box-shadow: 0 6px 20px rgba(232,132,26,.35);

  }
  .step-card h4 { font-size: 16px;
   font-weight: 700;
   color: var(--navy);
   margin-bottom: 10px;
   }
  .step-card p { font-size: 14px;
   color: var(--text-light);
   line-height: 1.65;
   }

  /* JOB LISTINGS */
  .jobs-section { background: var(--light-blue);
   padding: 70px 5%;
   }
  .jobs-filter {
    display: flex;
     gap: 12px;
     flex-wrap: wrap;
     margin-bottom: 36px;

    justify-content: center;

  }
  .filter-btn {
    padding: 9px 20px;
     border-radius: 24px;
     border: 2px solid transparent;

    font-size: 13.5px;
     font-weight: 600;
     cursor: pointer;

    background: white;
     color: var(--navy);
     transition: all .2s;

    box-shadow: 0 2px 8px rgba(0,0,0,.06);

  }
  .filter-btn.active, .filter-btn:hover { background: var(--primary);
   color: white;
   border-color: var(--primary);
   }

  .jobs-grid { display: grid;
   grid-template-columns: repeat(auto-fill, minmax(320px,1fr));
   gap: 22px;
   }
  .job-card {
    background: white;
     border-radius: 14px;
     padding: 26px;

    box-shadow: 0 3px 18px rgba(0,0,0,.07);
     transition: all .3s;

    border-top: 4px solid transparent;
     cursor: pointer;

  }
  .job-card:hover { transform: translateY(-5px);
   box-shadow: 0 14px 38px rgba(0,0,0,.12);
   border-top-color: var(--primary);
   }
  .job-card-top { display: flex;
   justify-content: space-between;
   align-items: flex-start;
   margin-bottom: 14px;
   }
  .job-badge { font-size: 11px;
   font-weight: 700;
   padding: 4px 12px;
   border-radius: 20px;
   text-transform: uppercase;
   letter-spacing: .7px;
   }
  .badge-full { background: #d4edda;
   color: #1a6a2e;
   }
  .badge-part { background: #fff3cd;
   color: #856404;
   }
  .badge-locum { background: #cfe2ff;
   color: #0a3981;
   }
  .job-card h3 { font-size: 17px;
   font-weight: 700;
   color: var(--navy);
   margin-bottom: 8px;
   }
  .job-meta { display: flex;
   gap: 14px;
   flex-wrap: wrap;
   margin-bottom: 14px;
   }
  .job-meta span { font-size: 13px;
   color: var(--text-light);
   display: flex;
   align-items: center;
   gap: 5px;
   }
  .job-desc { font-size: 13.5px;
   color: var(--text-light);
   line-height: 1.65;
   margin-bottom: 18px;
   border-bottom: 1px solid #f0f0f0;
   padding-bottom: 16px;
   }
  .job-footer { display: flex;
   justify-content: space-between;
   align-items: center;
   }
  .job-salary { font-size: 15px;
   font-weight: 700;
   color: var(--navy);
   }
  .apply-btn {
    background: var(--primary);
     color: white;
     border: none;

    padding: 9px 20px;
     border-radius: 7px;
     font-size: 13.5px;

    font-weight: 600;
     cursor: pointer;
     transition: all .2s;

  }
  .apply-btn:hover { background: var(--primary-dark);
   }

  /* APPLY FORM */
  .apply-section { padding: 70px 5%;
   background: white;
   }
  .form-wrapper { max-width: 720px;
   margin: 0 auto;
   }
  .form-grid { display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 20px;
   }
  .form-group { display: flex;
   flex-direction: column;
   gap: 7px;
   }
  .form-group.full { grid-column: 1 / -1;
   }
  .form-group label { font-size: 13.5px;
   font-weight: 600;
   color: var(--navy);
   }
  .form-group input,
  .form-group select,
  .form-group textarea {
    padding: 12px 16px;
     border: 2px solid #e8ecf0;
     border-radius: 9px;

    font-size: 14.5px;
     font-family: 'DM Sans', sans-serif;
     color: var(--text);

    outline: none;
     transition: border-color .2s;
     background: #fafafa;

  }
  .form-group input:focus,
  .form-group select:focus,
  .form-group textarea:focus { border-color: var(--primary);
   background: white;
   }
  .form-group textarea { resize: vertical;
   min-height: 100px;
   }
  .file-upload {
    border: 2px dashed #d0d8e0;
     border-radius: 9px;
     padding: 28px;

    text-align: center;
     cursor: pointer;
     background: #f8fafc;
     transition: all .2s;

  }
  .file-upload:hover { border-color: var(--primary);
   background: #fff8f2;
   }
  .file-upload p { font-size: 14px;
   color: var(--text-light);
   margin-top: 8px;
   }
  .file-upload span { font-size: 30px;
   }
  .form-submit { margin-top: 28px;
   text-align: center;
   }

  /* WHY JOIN */
  .why-join { background: var(--light-blue);
   padding: 70px 5%;
   }
  .why-grid { display: grid;
   grid-template-columns: repeat(auto-fit,minmax(240px,1fr));
   gap: 24px;
   margin-top: 40px;
   }
  .why-card {
    background: white;
     border-radius: 14px;
     padding: 30px 24px;

    box-shadow: 0 3px 18px rgba(0,0,0,.07);
     transition: all .3s;
     text-align: center;

  }
  .why-card:hover { transform: translateY(-4px);
   box-shadow: 0 14px 36px rgba(0,0,0,.1);
   }
  .why-icon { font-size: 38px;
   margin-bottom: 16px;
   display: block;
   }
  .why-card h4 { font-size: 16px;
   font-weight: 700;
   color: var(--navy);
   margin-bottom: 10px;
   }
  .why-card p { font-size: 14px;
   color: var(--text-light);
   line-height: 1.65;
   }

  /* CTA */
  .cta-banner { background: linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);
   color: white;
   text-align: center;
   padding: 80px 5%;
   position: relative;
   overflow: hidden;
   }
  .cta-banner::before { content: '';
   position: absolute;
   top: -150px;
   left: -150px;
   width: 400px;
   height: 400px;
   background: radial-gradient(circle,rgba(255,255,255,.04) 0%,transparent 70%);
   border-radius: 50%;
   }
  .cta-banner .stay-connected { font-size: 13px;
   letter-spacing: 3px;
   text-transform: uppercase;
   color: rgba(255,255,255,.6);
   margin-bottom: 16px;
   }
  .cta-banner h2 { font-family: 'Playfair Display', serif;
   font-size: clamp(22px,4vw,40px);
   margin-bottom: 30px;
   color: white;
   }
  .cta-banner h2 span { color: var(--primary);
   }

  /* FOOTER */
  footer { background: #0f1a2e;
   color: rgba(255,255,255,.8);
   padding: 60px 5% 30px;
   }
  .footer-grid { display: grid;
   grid-template-columns: 1.4fr 1fr 1.6fr 1fr;
   gap: 40px;
   margin-bottom: 40px;
   }
  .footer-logo { display: flex;
   align-items: center;
   gap: 10px;
   margin-bottom: 20px;
   }
  .footer-logo .logo-icon { background: var(--primary);
   }
  
  
  footer h4 { font-size: 14px;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 1.5px;
   color: white;
   margin-bottom: 20px;
   }
  .footer-links { list-style: none;
   }
  .footer-links li { margin-bottom: 10px;
   }
  .footer-links a { text-decoration: none;
   color: rgba(255,255,255,.6);
   font-size: 14px;
   transition: color .2s;
   }
  .footer-links a:hover { color: var(--primary);
   }
  .footer-links a.active { color: var(--primary);
   font-weight: 600;
   }
  .contact-info p { font-size: 14px;
   margin-bottom: 12px;
   color: rgba(255,255,255,.7);
   line-height: 1.7;
   }
  .contact-info a { color: rgba(255,255,255,.7);
   text-decoration: none;
   }
  .contact-info a:hover { color: var(--primary);
   }
  .social-links { display: flex;
   gap: 12px;
   margin-top: 15px;
   }
  .social-link { width: 36px;
   height: 36px;
   background: rgba(255,255,255,.1);
   border-radius: 8px;
   display: flex;
   align-items: center;
   justify-content: center;
   text-decoration: none;
   color: white;
   font-size: 14px;
   font-weight: 700;
   transition: all .2s;
   }
  .social-link:hover { background: var(--primary);
   }
  .footer-bottom { border-top: 1px solid rgba(255,255,255,.08);
   padding-top: 24px;
   text-align: center;
   font-size: 13px;
   color: rgba(255,255,255,.4);
   }

  /* RESPONSIVE */
  @media (max-width: 960px) {
    .nav-links { display: none;
     flex-direction: column;
     position: absolute;
     top: 70px;
     left: 0;
     right: 0;
     background: white;
     padding: 20px;
     box-shadow: 0 10px 30px rgba(0,0,0,.1);
     gap: 4px;
     }
    .nav-links.open { display: flex;
     }
    .hamburger { display: flex;
     }
    .stats-bar { grid-template-columns: repeat(2,1fr);
     }
    .stat-item:nth-child(2) { border-right: none;
     }
    .footer-grid { grid-template-columns: 1fr 1fr;
     }
    .form-grid { grid-template-columns: 1fr;
     }
  }
  @media (max-width: 640px) {
    .steps-grid::before { display: none;
     }
    .stats-bar { grid-template-columns: repeat(2,1fr);
     }
    section, .jobs-section, .apply-section, .why-join { padding: 50px 5%;
     }
    .footer-grid { grid-template-columns: 1fr;
     gap: 30px;
     }
  }


  
  body { font-family: 'DM Sans', sans-serif;
   color: var(--text);
   overflow-x: hidden;
   }

  /* NAV */
  nav {
    background: var(--white);
     padding: 0 5%;

    display: flex;
     align-items: center;
     justify-content: space-between;

    height: 70px;
     box-shadow: 0 2px 15px rgba(0,0,0,.08);

    position: sticky;
     top: 0;
     z-index: 1000;

  }
  .logo { display: flex;
   align-items: center;
   gap: 10px;
   text-decoration: none;
   }
  .logo-icon {
    width: 42px;
     height: 42px;
     background: var(--primary);

    clip-path: polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);

    display: flex;
     align-items: center;
     justify-content: center;

    color: white;
     font-size: 18px;
     font-weight: 700;
     flex-shrink: 0;

  }
  .logo-text { line-height: 1.1;
   }

  .logo-text span:last-child  { display: block;
   font-size: 10px;
   color: var(--primary);
   letter-spacing: 1.5px;
   text-transform: ;
   }
  .nav-links { display: flex;
   list-style: none;
   gap: 5px;
   align-items: center;
   }
  

  .nav-links a:hover, .nav-links a.active { color: var(--primary);
   background: #fff5ea;
   }
  .nav-cta { background: var(--primary) !important;
   color: white !important;
   padding: 10px 18px !important;
   border-radius: 6px !important;
   font-weight: 600 !important;
   }
  .nav-cta:hover { background: var(--primary-dark) !important;
   }
  .hamburger { display: none;
   flex-direction: column;
   gap: 5px;
   cursor: pointer;
   padding: 5px;
   }
  .hamburger span { display: block;
   width: 24px;
   height: 2px;
   background: var(--navy);
   transition: all .3s;
   }


  .page-hero::before {
    content: '';
     position: absolute;
     top: -100px;
     right: -100px;

    width: 500px;
     height: 500px;

    background: radial-gradient(circle, rgba(232,132,26,.12) 0%, transparent 70%);

    border-radius: 50%;

  }
  .page-hero::after {
    content: '';
     position: absolute;
     bottom: -60px;
     left: 10%;

    width: 300px;
     height: 300px;

    background: radial-gradient(circle, rgba(255,255,255,.03) 0%, transparent 70%);

    border-radius: 50%;

  }
  .page-hero-inner { max-width: 680px;
   }
  .breadcrumb { font-size: 13px;
   color: rgba(255,255,255,.5);
   margin-bottom: 16px;
   }
  .breadcrumb a { color: var(--primary);
   text-decoration: none;
   }
  .breadcrumb span { margin: 0 6px;
   }
  .page-hero h1 { font-family: 'Playfair Display', serif;
   font-size: clamp(30px,5vw,54px);
   color: white;
   line-height: 1.15;
   margin-bottom: 18px;
   }
  .page-hero h1 .highlight { color: var(--primary);
   font-style: italic;
   }
  .page-hero p { font-size: 16px;
   color: rgba(255,255,255,.75);
   line-height: 1.75;
   max-width: 560px;
   }

  /* STATS BAR */
  .stats-bar {
    background: var(--primary);

    display: grid;
     grid-template-columns: repeat(4, 1fr);

    text-align: center;

  }
  .stat-item { padding: 24px 16px;
   border-right: 1px solid rgba(255,255,255,.2);
   }
  .stat-item:last-child { border-right: none;
   }
  .stat-num { font-family: 'Playfair Display', serif;
   font-size: 32px;
   color: white;
   font-weight: 700;
   display: block;
   }
  .stat-label { font-size: 13px;
   color: rgba(255,255,255,.8);
   letter-spacing: .5px;
   margin-top: 4px;
   }

  /* SHARED */
  .section-title { font-family: 'Playfair Display', serif;
   font-size: clamp(24px,3vw,36px);
   color: var(--navy);
   text-align: center;
   margin-bottom: 12px;
   }
  .section-sub { text-align: center;
   color: var(--text-light);
   max-width: 560px;
   margin: 0 auto 50px;
   line-height: 1.7;
   font-size: 15px;
   }
 
  .btn-primary:hover { background: var(--primary-dark);
   transform: translateY(-2px);
   }

  /* OUR STORY */
  .story-section { padding: 80px 5%;
   }
  .story-grid { display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 70px;
   align-items: center;
   }
  .story-image {
    border-radius: 20px;
     overflow: hidden;
     height: 420px;

    background: linear-gradient(135deg, #e8f4f0 0%, #d4e8ff 100%);

    display: flex;
     align-items: center;
     justify-content: center;

    position: relative;

  }
  .story-image::before {
    content: '';
     position: absolute;
     inset: 0;

    background: linear-gradient(135deg, rgba(26,42,74,.05) 0%, rgba(232,132,26,.08) 100%);

  }
  .story-visual { font-size: 100px;
   z-index: 1;
   }
  .story-badge {
    position: absolute;
     bottom: 24px;
     right: 24px;

    background: var(--primary);
     color: white;

    padding: 14px 20px;
     border-radius: 14px;

    text-align: center;
     box-shadow: 0 8px 24px rgba(232,132,26,.4);

  }
  .story-badge strong { display: block;
   font-size: 28px;
   font-family: 'Playfair Display', serif;
   }
  .story-badge span { font-size: 12px;
   letter-spacing: .5px;
   }

  .story-content h2 { font-family: 'Playfair Display', serif;
   font-size: clamp(26px,3.5vw,40px);
   color: var(--navy);
   margin-bottom: 20px;
   line-height: 1.2;
   }
  .story-content h2 em { color: var(--primary);
   font-style: italic;
   }
  .story-content p { font-size: 15px;
   color: var(--text-light);
   line-height: 1.85;
   margin-bottom: 18px;
   }
  .story-content .tagline { font-size: 17px;
   font-weight: 700;
   color: var(--navy);
   border-left: 4px solid var(--primary);
   padding-left: 16px;
   margin: 28px 0;
   line-height: 1.5;
   }

  /* MISSION VISION */
  .mv-section { background: var(--light-blue);
   padding: 70px 5%;
   }
  .mv-grid { display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 30px;
   margin-top: 40px;
   }
  .mv-card {
    background: white;
     border-radius: 18px;
     padding: 40px 34px;

    box-shadow: 0 4px 24px rgba(0,0,0,.07);
     position: relative;
     overflow: hidden;

  }
  .mv-card::before {
    content: '';
     position: absolute;
     top: -40px;
     right: -40px;

    width: 140px;
     height: 140px;
     border-radius: 50%;

    background: rgba(232,132,26,.06);

  }
  .mv-icon { font-size: 42px;
   margin-bottom: 18px;
   display: block;
   }
  .mv-card h3 { font-family: 'Playfair Display', serif;
   font-size: 24px;
   color: var(--navy);
   margin-bottom: 14px;
   }
  .mv-card p { font-size: 15px;
   color: var(--text-light);
   line-height: 1.8;
   }

  /* VALUES */
  .values-section { padding: 70px 5%;
   }
  .values-grid { display: grid;
   grid-template-columns: repeat(auto-fit, minmax(220px,1fr));
   gap: 22px;
   margin-top: 40px;
   }
  .value-card {
    border-radius: 14px;
     padding: 28px 22px;
     text-align: center;

    transition: all .3s;
     border: 2px solid #eef0f4;

  }
  .value-card:hover { border-color: var(--primary);
   transform: translateY(-4px);
   box-shadow: 0 12px 32px rgba(232,132,26,.12);
   }
  .value-icon { font-size: 36px;
   margin-bottom: 14px;
   display: block;
   }
  .value-card h4 { font-size: 16px;
   font-weight: 700;
   color: var(--navy);
   margin-bottom: 10px;
   }
  .value-card p { font-size: 14px;
   color: var(--text-light);
   line-height: 1.65;
   }

  /* TEAM */
  .team-section { background: var(--light-blue);
   padding: 70px 5%;
   }
  .team-grid { display: grid;
   grid-template-columns: repeat(auto-fit, minmax(240px,1fr));
   gap: 28px;
   margin-top: 40px;
   }
  .team-card {
    background: white;
     border-radius: 18px;
     overflow: hidden;

    box-shadow: 0 4px 20px rgba(0,0,0,.08);
     transition: all .3s;
     text-align: center;

  }
  .team-card:hover { transform: translateY(-6px);
   box-shadow: 0 18px 44px rgba(0,0,0,.13);
   }
  .team-avatar {
    height: 180px;
     display: flex;
     align-items: center;
     justify-content: center;

    font-size: 64px;

  }
  .team-card:nth-child(1) .team-avatar { background: linear-gradient(135deg,#e8f4ff,#d0e8ff);
   }
  .team-card:nth-child(2) .team-avatar { background: linear-gradient(135deg,#f0fff4,#d4f0e0);
   }
  .team-card:nth-child(3) .team-avatar { background: linear-gradient(135deg,#fff8f0,#ffe8d0);
   }
  .team-card:nth-child(4) .team-avatar { background: linear-gradient(135deg,#f8f0ff,#e8d4ff);
   }
  .team-info { padding: 22px 18px;
   }
  .team-info h4 { font-size: 17px;
   font-weight: 700;
   color: var(--navy);
   margin-bottom: 5px;
   }
  .team-info .role { font-size: 13px;
   color: var(--primary);
   font-weight: 600;
   text-transform: uppercase;
   letter-spacing: .8px;
   margin-bottom: 10px;
   }
  .team-info p { font-size: 13.5px;
   color: var(--text-light);
   line-height: 1.65;
   }

  /* SERVICES DETAIL */
  .services-detail { padding: 70px 5%;
   }
  .services-big-grid { display: grid;
   grid-template-columns: 1fr 1fr 1fr;
   gap: 28px;
   margin-top: 40px;
   }
  .service-big-card {
    border-radius: 18px;
     overflow: hidden;

    box-shadow: 0 4px 24px rgba(0,0,0,.08);
     transition: all .3s;

  }
  .service-big-card:hover { transform: translateY(-6px);
   box-shadow: 0 18px 44px rgba(0,0,0,.13);
   }
  .service-big-header { padding: 36px 28px;
   color: white;
   }
  .service-big-card:nth-child(1) .service-big-header { background: linear-gradient(135deg, var(--navy), var(--navy-light));
   }
  .service-big-card:nth-child(2) .service-big-header { background: linear-gradient(135deg, #1a6a3a, #2d9a56);
   }
  .service-big-card:nth-child(3) .service-big-header { background: linear-gradient(135deg, #7a3a1a, var(--primary));
   }
  .service-big-icon { font-size: 44px;
   margin-bottom: 14px;
   display: block;
   }
  .service-big-header h3 { font-family: 'Playfair Display', serif;
   font-size: 22px;
   margin-bottom: 10px;
   }
  .service-big-header p { font-size: 14px;
   opacity: .85;
   line-height: 1.65;
   }
  .service-big-body { background: white;
   padding: 24px 28px;
   }
  .service-big-body ul { list-style: none;
   }
  .service-big-body li { display: flex;
   align-items: flex-start;
   gap: 10px;
   font-size: 14px;
   color: var(--text);
   padding: 8px 0;
   border-bottom: 1px solid #f4f4f4;
   }
  .service-big-body li:last-child { border-bottom: none;
   }
  .service-big-body li::before { content: '✓';
   color: var(--primary);
   font-weight: 700;
   flex-shrink: 0;
   margin-top: 1px;
   }

  /* TESTIMONIALS */
  .testimonials { background: var(--light-blue);
   padding: 70px 5%;
   }
  .testi-grid { display: grid;
   grid-template-columns: repeat(auto-fit, minmax(300px,1fr));
   gap: 24px;
   margin-top: 40px;
   }
  .testi-card {
    background: white;
     border-radius: 16px;
     padding: 30px;

    box-shadow: 0 3px 18px rgba(0,0,0,.07);
     position: relative;

  }
  .testi-card::before { content: '"';
   font-size: 80px;
   color: var(--primary);
   opacity: .12;
   position: absolute;
   top: 10px;
   right: 20px;
   font-family: 'Playfair Display', serif;
   line-height: 1;
   }
  .testi-stars { color: #f59e0b;
   font-size: 16px;
   margin-bottom: 14px;
   }
  .testi-card p { font-size: 14.5px;
   color: var(--text);
   line-height: 1.75;
   margin-bottom: 20px;
   font-style: italic;
   }
  .testi-author { display: flex;
   align-items: center;
   gap: 12px;
   }
  .testi-avatar { width: 46px;
   height: 46px;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 22px;
   background: var(--light-blue);
   }
  .testi-name strong { display: block;
   font-size: 15px;
   font-weight: 700;
   color: var(--navy);
   }
  .testi-name span { font-size: 13px;
   color: var(--primary);
   }

  /* ADDRESS */
  .address-section { padding: 70px 5%;
   }
  .address-grid { display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 50px;
   align-items: start;
   margin-top: 40px;
   }
  .address-card { background: var(--light-blue);
   border-radius: 18px;
   padding: 36px;
   }
  .address-card h3 { font-family: 'Playfair Display', serif;
   font-size: 22px;
   color: var(--navy);
   margin-bottom: 24px;
   }
  .address-item { display: flex;
   gap: 14px;
   margin-bottom: 22px;
   align-items: flex-start;
   }
  .address-icon { font-size: 22px;
   flex-shrink: 0;
   margin-top: 2px;
   }
  .address-item strong { display: block;
   font-size: 13px;
   text-transform: uppercase;
   letter-spacing: .8px;
   color: var(--primary);
   margin-bottom: 4px;
   }
  .address-item p, .address-item a { font-size: 15px;
   color: var(--text);
   line-height: 1.65;
   text-decoration: none;
   }
  .address-item a:hover { color: var(--primary);
   }
  .map-placeholder {
    border-radius: 18px;
     overflow: hidden;
     height: 320px;

    background: linear-gradient(135deg, #e8f0f8, #d0e4f8);

    display: flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;

    font-size: 60px;
     gap: 14px;
     border: 2px dashed #c0d4e8;

  }
  .map-placeholder p { font-size: 15px;
   color: var(--text-light);
   font-size: 14px;
   }

  /* CTA */
  .cta-banner { background: linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);
   color: white;
   text-align: center;
   padding: 80px 5%;
   position: relative;
   overflow: hidden;
   }
  .cta-banner::before { content: '';
   position: absolute;
   top: -150px;
   left: -150px;
   width: 400px;
   height: 400px;
   background: radial-gradient(circle,rgba(255,255,255,.04) 0%,transparent 70%);
   border-radius: 50%;
   }
  .cta-banner .stay-connected { font-size: 13px;
   letter-spacing: 3px;
   text-transform: uppercase;
   color: rgba(255,255,255,.6);
   margin-bottom: 16px;
   }
  .cta-banner h2 { font-family: 'Playfair Display', serif;
   font-size: clamp(22px,4vw,40px);
   margin-bottom: 30px;
   color: white;
   }
  .cta-banner h2 span { color: var(--primary);
   }

  /* FOOTER */
  footer { background: #0f1a2e;
   color: rgba(255,255,255,.8);
   padding: 60px 5% 30px;
   }
  .footer-grid { display: grid;
   grid-template-columns: 1.4fr 1fr 1.6fr 1fr;
   gap: 40px;
   margin-bottom: 40px;
   }
  .footer-logo { display: flex;
   align-items: center;
   gap: 10px;
   margin-bottom: 20px;
   }
  .footer-logo .logo-icon { background: var(--primary);
   }
  
  
  footer h4 { font-size: 14px;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 1.5px;
   color: white;
   margin-bottom: 20px;
   }
  .footer-links { list-style: none;
   }
  .footer-links li { margin-bottom: 10px;
   }
  .footer-links a { text-decoration: none;
   color: rgba(255,255,255,.6);
   font-size: 14px;
   transition: color .2s;
   }
  .footer-links a:hover { color: var(--primary);
   }
  .footer-links a.active { color: var(--primary);
   font-weight: 600;
   }
  .contact-info p { font-size: 14px;
   margin-bottom: 12px;
   color: rgba(255,255,255,.7);
   line-height: 1.7;
   }
  .contact-info a { color: rgba(255,255,255,.7);
   text-decoration: none;
   }
  .contact-info a:hover { color: var(--primary);
   }
  .social-links { display: flex;
   gap: 12px;
   margin-top: 15px;
   }
  .social-link { width: 36px;
   height: 36px;
   background: rgba(255,255,255,.1);
   border-radius: 8px;
   display: flex;
   align-items: center;
   justify-content: center;
   text-decoration: none;
   color: white;
   font-size: 14px;
   font-weight: 700;
   transition: all .2s;
   }
  .social-link:hover { background: var(--primary);
   }
  .footer-bottom { border-top: 1px solid rgba(255,255,255,.08);
   padding-top: 24px;
   text-align: center;
   font-size: 13px;
   color: rgba(255,255,255,.4);
   }

  /* RESPONSIVE */
  @media (max-width: 960px) {
    .nav-links { display: none;
     flex-direction: column;
     position: absolute;
     top: 70px;
     left: 0;
     right: 0;
     background: white;
     padding: 20px;
     box-shadow: 0 10px 30px rgba(0,0,0,.1);
     gap: 4px;
     }
    .nav-links.open { display: flex;
     }
    .hamburger { display: flex;
     }
    .stats-bar { grid-template-columns: repeat(2,1fr);
     }
    .stat-item:nth-child(2) { border-right: none;
     }
    .story-grid { grid-template-columns: 1fr;
     gap: 40px;
     }
    .mv-grid { grid-template-columns: 1fr;
     }
    .services-big-grid { grid-template-columns: 1fr;
     }
    .address-grid { grid-template-columns: 1fr;
     }
    .footer-grid { grid-template-columns: 1fr 1fr;
     }
  }
  @media (max-width: 640px) {
    .stats-bar { grid-template-columns: repeat(2,1fr);
     }
    .story-image { height: 260px;
     }
    section, .story-section, .mv-section, .values-section, .team-section, .services-detail, .testimonials, .address-section { padding: 50px 5%;
     }
    .footer-grid { grid-template-columns: 1fr;
     gap: 30px;
     }
  }


  
  body { font-family: 'DM Sans', sans-serif;
   color: var(--text);
   overflow-x: hidden;
   }

  /* NAV */
  nav { background: var(--white);
   padding: 0 5%;
   display: flex;
   align-items: center;
   justify-content: space-between;
   height: 70px;
   box-shadow: 0 2px 15px rgba(0,0,0,.08);
   position: sticky;
   top: 0;
   z-index: 1000;
   }
  .logo { display: flex;
   align-items: center;
   gap: 10px;
   text-decoration: none;
   }
  .logo-icon { width: 42px;
   height: 42px;
   background: var(--primary);
   clip-path: polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 18px;
   font-weight: 700;
   flex-shrink: 0;
   }
  .logo-text { line-height: 1.1;
   }

  .logo-text span:last-child { display: block;
   font-size: 10px;
   color: var(--primary);
   letter-spacing: 1.5px;
   text-transform: ;
   }
  .nav-links { display: flex;
   list-style: none;
   gap: 5px;
   align-items: center;
   }
  
  .nav-links a:hover, .nav-links a.active { color: var(--primary);
   background: #fff5ea;
   }
  .nav-cta { background: var(--primary) !important;
   color: white !important;
   padding: 10px 18px !important;
   border-radius: 6px !important;
   font-weight: 600 !important;
   }
  .nav-cta:hover { background: var(--primary-dark) !important;
   }
  .hamburger { display: none;
   flex-direction: column;
   gap: 5px;
   cursor: pointer;
   padding: 5px;
   }
  .hamburger span { display: block;
   width: 24px;
   height: 2px;
   background: var(--navy);
   transition: all .3s;
   }

  /* PAGE HERO */
  
  .page-hero::before { content: '';
   position: absolute;
   top: -100px;
   right: -100px;
   width: 500px;
   height: 500px;
   background: radial-gradient(circle, rgba(232,132,26,.14) 0%, transparent 70%);
   border-radius: 50%;
   }
  .page-hero::after { content: '';
   position: absolute;
   bottom: -60px;
   left: 5%;
   width: 280px;
   height: 280px;
   background: radial-gradient(circle, rgba(255,255,255,.03) 0%, transparent 70%);
   border-radius: 50%;
   }
  .breadcrumb { font-size: 13px;
   color: rgba(255,255,255,.5);
   margin-bottom: 16px;
   }
  .breadcrumb a { color: var(--primary);
   text-decoration: none;
   }
  .breadcrumb span { margin: 0 6px;
   }
  .page-hero h1 { font-family: 'Playfair Display', serif;
   font-size: clamp(30px,5vw,54px);
   color: white;
   line-height: 1.15;
   margin-bottom: 18px;
   }
  .page-hero h1 .highlight { color: var(--primary);
   font-style: italic;
   }
  .page-hero p { font-size: 16px;
   color: rgba(255,255,255,.75);
   line-height: 1.75;
   max-width: 560px;
   margin-bottom: 32px;
   }
  .hero-btns { display: flex;
   gap: 14px;
   flex-wrap: wrap;
   }

  
  .btn-primary:hover { background: var(--primary-dark);
   transform: translateY(-2px);
   box-shadow: 0 8px 25px rgba(232,132,26,.4);
   }
  .btn-outline-white { display: inline-block;
   background: transparent;
   color: white;
   padding: 13px 28px;
   border-radius: 8px;
   text-decoration: none;
   font-weight: 600;
   font-size: 15px;
   border: 2px solid rgba(255,255,255,.4);
   transition: all .3s;
   }
  .btn-outline-white:hover { background: rgba(255,255,255,.1);
   border-color: white;
   }

  /* STATS */
  .stats-bar { background: var(--primary);
   display: grid;
   grid-template-columns: repeat(4,1fr);
   text-align: center;
   }
  .stat-item { padding: 24px 16px;
   border-right: 1px solid rgba(255,255,255,.2);
   }
  .stat-item:last-child { border-right: none;
   }
  .stat-num { font-family: 'Playfair Display', serif;
   font-size: 32px;
   color: white;
   font-weight: 700;
   display: block;
   }
  .stat-label { font-size: 13px;
   color: rgba(255,255,255,.8);
   letter-spacing: .5px;
   margin-top: 4px;
   }

  /* SHARED */
  .section-title { font-family: 'Playfair Display', serif;
   font-size: clamp(24px,3vw,36px);
   color: var(--navy);
   text-align: center;
   margin-bottom: 12px;
   }
  .section-sub { text-align: center;
   color: var(--text-light);
   max-width: 560px;
   margin: 0 auto 50px;
   line-height: 1.7;
   font-size: 15px;
   }

  /* HOW WE HELP */
  .help-section { padding: 80px 5%;
   }
  .help-grid { display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 60px;
   align-items: center;
   }
  .help-content h2 { font-family: 'Playfair Display', serif;
   font-size: clamp(26px,3.5vw,40px);
   color: var(--navy);
   margin-bottom: 20px;
   line-height: 1.2;
   }
  .help-content h2 em { color: var(--primary);
   font-style: italic;
   }
  .help-content p { font-size: 15px;
   color: var(--text-light);
   line-height: 1.85;
   margin-bottom: 16px;
   }
  .help-list { list-style: none;
   margin-top: 24px;
   }
  .help-list li { display: flex;
   align-items: flex-start;
   gap: 14px;
   padding: 12px 0;
   border-bottom: 1px solid #f0f0f0;
   font-size: 14.5px;
   color: var(--text);
   }
  .help-list li:last-child { border-bottom: none;
   }
  .help-list li .icon { width: 36px;
   height: 36px;
   background: #fff5ea;
   border-radius: 9px;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 18px;
   flex-shrink: 0;
   }
  .help-visual { border-radius: 20px;
   height: 420px;
   background: linear-gradient(135deg, #e8f4ff, #d4e8f8);
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 100px;
   position: relative;
   overflow: hidden;
   }
  .help-visual::before { content: '';
   position: absolute;
   inset: 0;
   background: linear-gradient(135deg, rgba(26,42,74,.04), rgba(232,132,26,.06));
   }
  .help-badge { position: absolute;
   bottom: 24px;
   left: 24px;
   background: var(--navy);
   color: white;
   padding: 14px 20px;
   border-radius: 14px;
   box-shadow: 0 8px 24px rgba(26,42,74,.3);
   }
  .help-badge strong { display: block;
   font-size: 22px;
   font-family: 'Playfair Display', serif;
   }
  .help-badge span { font-size: 12px;
   color: rgba(255,255,255,.7);
   }

  /* PROCESS */
  .process-section { background: var(--light-blue);
   padding: 70px 5%;
   }
  .process-grid { display: grid;
   grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
   gap: 0;
   position: relative;
   margin-top: 50px;
   }
  .process-grid::before { content: '';
   position: absolute;
   top: 30px;
   left: 8%;
   right: 8%;
   height: 2px;
   background: linear-gradient(90deg, var(--primary), rgba(232,132,26,.15));
   z-index: 0;
   }
  .process-step { text-align: center;
   padding: 0 20px 30px;
   position: relative;
   z-index: 1;
   }
  .process-num { width: 52px;
   height: 52px;
   background: var(--navy);
   color: white;
   border-radius: 50%;
   font-family: 'Playfair Display', serif;
   font-size: 20px;
   font-weight: 700;
   display: flex;
   align-items: center;
   justify-content: center;
   margin: 0 auto 18px;
   box-shadow: 0 6px 20px rgba(26,42,74,.25);
   }
  .process-step h4 { font-size: 15px;
   font-weight: 700;
   color: var(--navy);
   margin-bottom: 8px;
   }
  .process-step p { font-size: 13.5px;
   color: var(--text-light);
   line-height: 1.6;
   }

  /* SERVICES */
  .employer-services { padding: 70px 5%;
   }
  .services-grid { display: grid;
   grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
   gap: 24px;
   margin-top: 40px;
   }
  .service-card { background: white;
   border-radius: 16px;
   overflow: hidden;
   box-shadow: 0 4px 22px rgba(0,0,0,.08);
   transition: all .3s;
   }
  .service-card:hover { transform: translateY(-5px);
   box-shadow: 0 16px 42px rgba(0,0,0,.13);
   }
  .service-card-top { padding: 30px 28px 20px;
   }
  .service-icon { width: 56px;
   height: 56px;
   border-radius: 14px;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 26px;
   margin-bottom: 16px;
   }
  .ic-1 { background: linear-gradient(135deg,#e8f4ff,#d0e8ff);
   }
  .ic-2 { background: linear-gradient(135deg,#f0fff4,#d4f0e4);
   }
  .ic-3 { background: linear-gradient(135deg,#fff8f0,#ffe4c4);
   }
  .ic-4 { background: linear-gradient(135deg,#f8f0ff,#e8d4ff);
   }
  .service-card h3 { font-size: 18px;
   font-weight: 700;
   color: var(--navy);
   margin-bottom: 10px;
   }
  .service-card p { font-size: 14px;
   color: var(--text-light);
   line-height: 1.7;
   padding-bottom: 20px;
   }
  .service-card-footer { background: #f8fafc;
   padding: 14px 28px;
   border-top: 1px solid #eef0f4;
   }
  .service-tag { font-size: 12px;
   font-weight: 600;
   color: var(--primary);
   text-transform: uppercase;
   letter-spacing: .8px;
   }

  /* HIRING FORM */
  .hiring-section { background: var(--light-blue);
   padding: 70px 5%;
   }
  .form-wrapper { max-width: 780px;
   margin: 0 auto;
   background: white;
   border-radius: 20px;
   padding: 50px;
   box-shadow: 0 8px 40px rgba(0,0,0,.09);
   }
  .form-grid { display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 20px;
   }
  .form-group { display: flex;
   flex-direction: column;
   gap: 7px;
   }
  .form-group.full { grid-column: 1 / -1;
   }
  .form-group label { font-size: 13.5px;
   font-weight: 600;
   color: var(--navy);
   }
  .form-group input, .form-group select, .form-group textarea { padding: 12px 16px;
   border: 2px solid #e8ecf0;
   border-radius: 9px;
   font-size: 14.5px;
   font-family: 'DM Sans', sans-serif;
   color: var(--text);
   outline: none;
   transition: border-color .2s;
   background: #fafafa;
   }
  .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--primary);
   background: white;
   }
  .form-group textarea { resize: vertical;
   min-height: 110px;
   }
  .form-submit { margin-top: 28px;
   text-align: center;
   }

  /* TESTIMONIALS */
  .testimonials { padding: 70px 5%;
   }
  .testi-grid { display: grid;
   grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
   gap: 24px;
   margin-top: 40px;
   }
  .testi-card { background: white;
   border-radius: 16px;
   padding: 30px;
   box-shadow: 0 3px 18px rgba(0,0,0,.07);
   position: relative;
   border-left: 4px solid var(--primary);
   }
  .testi-card::before { content: '"';
   font-size: 80px;
   color: var(--primary);
   opacity: .1;
   position: absolute;
   top: 10px;
   right: 20px;
   font-family: 'Playfair Display', serif;
   line-height: 1;
   }
  .testi-stars { color: #f59e0b;
   font-size: 16px;
   margin-bottom: 14px;
   }
  .testi-card p { font-size: 14.5px;
   color: var(--text);
   line-height: 1.75;
   margin-bottom: 20px;
   font-style: italic;
   }
  .testi-author { display: flex;
   align-items: center;
   gap: 12px;
   }
  .testi-avatar { width: 46px;
   height: 46px;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 22px;
   background: var(--light-blue);
   }
  .testi-name strong { display: block;
   font-size: 15px;
   font-weight: 700;
   color: var(--navy);
   }
  .testi-name span { font-size: 13px;
   color: var(--primary);
   }

  /* CTA */
  .cta-banner { background: linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);
   color: white;
   text-align: center;
   padding: 80px 5%;
   position: relative;
   overflow: hidden;
   }
  .cta-banner::before { content: '';
   position: absolute;
   top: -150px;
   left: -150px;
   width: 400px;
   height: 400px;
   background: radial-gradient(circle,rgba(255,255,255,.04) 0%,transparent 70%);
   border-radius: 50%;
   }
  .cta-banner .stay-connected { font-size: 13px;
   letter-spacing: 3px;
   text-transform: uppercase;
   color: rgba(255,255,255,.6);
   margin-bottom: 16px;
   }
  .cta-banner h2 { font-family: 'Playfair Display', serif;
   font-size: clamp(22px,4vw,40px);
   margin-bottom: 30px;
   color: white;
   }
  .cta-banner h2 span { color: var(--primary);
   }

  /* FOOTER */
  footer { background: #0f1a2e;
   color: rgba(255,255,255,.8);
   padding: 60px 5% 30px;
   }
  .footer-grid { display: grid;
   grid-template-columns: 1.4fr 1fr 1.6fr 1fr;
   gap: 40px;
   margin-bottom: 40px;
   }
  .footer-logo { display: flex;
   align-items: center;
   gap: 10px;
   margin-bottom: 20px;
   }
  .footer-logo .logo-icon { background: var(--primary);
   }
  
  
  footer h4 { font-size: 14px;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 1.5px;
   color: white;
   margin-bottom: 20px;
   }
  .footer-links { list-style: none;
   }
  .footer-links li { margin-bottom: 10px;
   }
  .footer-links a { text-decoration: none;
   color: rgba(255,255,255,.6);
   font-size: 14px;
   transition: color .2s;
   }
  .footer-links a:hover { color: var(--primary);
   }
  .footer-links a.active { color: var(--primary);
   font-weight: 600;
   }
  .contact-info p { font-size: 14px;
   margin-bottom: 12px;
   color: rgba(255,255,255,.7);
   line-height: 1.7;
   }
  .contact-info a { color: rgba(255,255,255,.7);
   text-decoration: none;
   }
  .contact-info a:hover { color: var(--primary);
   }
  .social-links { display: flex;
   gap: 12px;
   margin-top: 15px;
   }
  .social-link { width: 36px;
   height: 36px;
   background: rgba(255,255,255,.1);
   border-radius: 8px;
   display: flex;
   align-items: center;
   justify-content: center;
   text-decoration: none;
   color: white;
   font-size: 14px;
   font-weight: 700;
   transition: all .2s;
   }
  .social-link:hover { background: var(--primary);
   }
  .footer-bottom { border-top: 1px solid rgba(255,255,255,.08);
   padding-top: 24px;
   text-align: center;
   font-size: 13px;
   color: rgba(255,255,255,.4);
   }

  @media (max-width: 960px) {
    .nav-links { display: none;
     flex-direction: column;
     position: absolute;
     top: 70px;
     left: 0;
     right: 0;
     background: white;
     padding: 20px;
     box-shadow: 0 10px 30px rgba(0,0,0,.1);
     gap: 4px;
     }
    .nav-links.open { display: flex;
     }
    .hamburger { display: flex;
     }
    .stats-bar { grid-template-columns: repeat(2,1fr);
     }
    .stat-item:nth-child(2) { border-right: none;
     }
    .help-grid { grid-template-columns: 1fr;
     gap: 40px;
     }
    .help-visual { height: 260px;
     font-size: 70px;
     }
    .form-grid { grid-template-columns: 1fr;
     }
    .footer-grid { grid-template-columns: 1fr 1fr;
     }
  }
  @media (max-width: 640px) {
    .process-grid::before { display: none;
     }
    .form-wrapper { padding: 30px 20px;
     }
    section, .help-section, .process-section, .employer-services, .hiring-section, .testimonials { padding: 50px 5%;
     }
    .footer-grid { grid-template-columns: 1fr;
     gap: 30px;
     }
  }


  
  body { font-family: 'DM Sans', sans-serif;
   color: var(--text);
   overflow-x: hidden;
   }

  nav { background: var(--white);
   padding: 0 5%;
   display: flex;
   align-items: center;
   justify-content: space-between;
   height: 70px;
   box-shadow: 0 2px 15px rgba(0,0,0,.08);
   position: sticky;
   top: 0;
   z-index: 1000;
   }
  .logo { display: flex;
   align-items: center;
   gap: 10px;
   text-decoration: none;
   }
  .logo-icon { width: 42px;
   height: 42px;
   background: var(--primary);
   clip-path: polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 18px;
   font-weight: 700;
   flex-shrink: 0;
   }
  .logo-text { line-height: 1.1;
   }

  .logo-text span:last-child { display: block;
   font-size: 10px;
   color: var(--primary);
   letter-spacing: 1.5px;
   text-transform: ;
   }
  .nav-links { display: flex;
   list-style: none;
   gap: 5px;
   align-items: center;
   }
  
  .nav-links a:hover, .nav-links a.active { color: var(--primary);
   background: #fff5ea;
   }
  .nav-cta { background: var(--primary) !important;
   color: white !important;
   padding: 10px 18px !important;
   border-radius: 6px !important;
   font-weight: 600 !important;
   }
  .nav-cta:hover { background: var(--primary-dark) !important;
   }
  .hamburger { display: none;
   flex-direction: column;
   gap: 5px;
   cursor: pointer;
   padding: 5px;
   }
  .hamburger span { display: block;
   width: 24px;
   height: 2px;
   background: var(--navy);
   transition: all .3s;
   }

  /* HERO */
  
  .page-hero::before { content: '';
   position: absolute;
   top: -100px;
   right: -100px;
   width: 500px;
   height: 500px;
   background: radial-gradient(circle, rgba(232,132,26,.07) 0%, transparent 70%);
   border-radius: 50%;
   }
  .breadcrumb { font-size: 13px;
   color: var(--text-light);
   margin-bottom: 16px;
   }
  .breadcrumb a { color: var(--primary);
   text-decoration: none;
   }
  .breadcrumb span { margin: 0 6px;
   }
  .page-hero h1 { font-family: 'Playfair Display', serif;
   font-size: clamp(30px,5vw,52px);
   color: var(--navy);
   line-height: 1.15;
   margin-bottom: 16px;
   }
  .page-hero h1 .highlight { color: var(--primary);
   font-style: italic;
   }
  .page-hero p { font-size: 16px;
   color: var(--text-light);
   line-height: 1.75;
   max-width: 520px;
   margin: 0 auto;
   }

  /* QUICK CONTACT STRIP */
  .quick-strip { background: var(--navy);
   display: grid;
   grid-template-columns: repeat(3,1fr);
   }
  .quick-item { display: flex;
   align-items: center;
   gap: 16px;
   padding: 22px 5%;
   border-right: 1px solid rgba(255,255,255,.1);
   text-decoration: none;
   transition: background .2s;
   }
  .quick-item:last-child { border-right: none;
   }
  .quick-item:hover { background: rgba(255,255,255,.04);
   }
  .quick-icon { width: 46px;
   height: 46px;
   background: rgba(232,132,26,.2);
   border-radius: 12px;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 22px;
   flex-shrink: 0;
   }
  .quick-item strong { display: block;
   font-size: 13px;
   color: rgba(255,255,255,.5);
   text-transform: uppercase;
   letter-spacing: .8px;
   margin-bottom: 3px;
   }
  .quick-item span { display: block;
   font-size: 15px;
   color: white;
   font-weight: 600;
   }

  /* MAIN CONTACT SECTION */
  .contact-main { padding: 80px 5%;
   }
  .contact-grid { display: grid;
   grid-template-columns: 1fr 1.1fr;
   gap: 60px;
   align-items: start;
   }

  /* INFO SIDE */
  .contact-info-side h2 { font-family: 'Playfair Display', serif;
   font-size: 30px;
   color: var(--navy);
   margin-bottom: 14px;
   }
  .contact-info-side > p { font-size: 15px;
   color: var(--text-light);
   line-height: 1.8;
   margin-bottom: 36px;
   }
  .info-card { background: var(--light-blue);
   border-radius: 16px;
   padding: 28px;
   margin-bottom: 18px;
   display: flex;
   gap: 18px;
   align-items: flex-start;
   transition: all .2s;
   }
  .info-card:hover { box-shadow: 0 8px 28px rgba(0,0,0,.08);
   transform: translateY(-2px);
   }
  .info-icon { width: 50px;
   height: 50px;
   background: var(--primary);
   border-radius: 14px;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 22px;
   flex-shrink: 0;
   }
  .info-text strong { display: block;
   font-size: 13px;
   color: var(--primary);
   text-transform: uppercase;
   letter-spacing: .8px;
   margin-bottom: 5px;
   }
  .info-text p, .info-text a { font-size: 15px;
   color: var(--text);
   line-height: 1.65;
   text-decoration: none;
   }
  .info-text a:hover { color: var(--primary);
   }

  .hours-card { background: var(--navy);
   border-radius: 16px;
   padding: 28px;
   margin-top: 18px;
   }
  .hours-card h4 { color: white;
   font-size: 16px;
   font-weight: 700;
   margin-bottom: 16px;
   }
  .hours-row { display: flex;
   justify-content: space-between;
   padding: 8px 0;
   border-bottom: 1px solid rgba(255,255,255,.08);
   font-size: 14px;
   }
  .hours-row:last-child { border-bottom: none;
   }
  .hours-row span:first-child { color: rgba(255,255,255,.65);
   }
  .hours-row span:last-child { color: white;
   font-weight: 600;
   }
  .hours-row.open span:last-child { color: #4ade80;
   }

  /* FORM SIDE */
  .contact-form-side { background: white;
   border-radius: 20px;
   padding: 44px;
   box-shadow: 0 8px 40px rgba(0,0,0,.09);
   }
  .contact-form-side h2 { font-family: 'Playfair Display', serif;
   font-size: 26px;
   color: var(--navy);
   margin-bottom: 6px;
   }
  .contact-form-side > p { font-size: 14px;
   color: var(--text-light);
   margin-bottom: 28px;
   }
  .form-group { display: flex;
   flex-direction: column;
   gap: 7px;
   margin-bottom: 18px;
   }
  .form-row { display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 18px;
   }
  .form-group label { font-size: 13.5px;
   font-weight: 600;
   color: var(--navy);
   }
  .form-group input, .form-group select, .form-group textarea { padding: 12px 16px;
   border: 2px solid #e8ecf0;
   border-radius: 9px;
   font-size: 14.5px;
   font-family: 'DM Sans', sans-serif;
   color: var(--text);
   outline: none;
   transition: border-color .2s;
   background: #fafafa;
   }
  .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--primary);
   background: white;
   }
  .form-group textarea { resize: vertical;
   min-height: 120px;
   }
  .radio-group { display: flex;
   gap: 14px;
   flex-wrap: wrap;
   margin-top: 6px;
   }
  .radio-label { display: flex;
   align-items: center;
   gap: 8px;
   cursor: pointer;
   font-size: 14px;
   padding: 9px 16px;
   border: 2px solid #e8ecf0;
   border-radius: 8px;
   transition: all .2s;
   }
  .radio-label input { width: 16px;
   height: 16px;
   accent-color: var(--primary);
   }
  .radio-label:has(input:checked) { border-color: var(--primary);
   background: #fff8f2;
   color: var(--primary);
   font-weight: 600;
   }
  
  .btn-primary:hover { background: var(--primary-dark);
   transform: translateY(-2px);
   }

  /* MAP */
  .map-section { background: var(--light-blue);
   padding: 70px 5%;
   }
  .map-section h2 { font-family: 'Playfair Display', serif;
   font-size: clamp(24px,3vw,34px);
   color: var(--navy);
   text-align: center;
   margin-bottom: 40px;
   }
  .map-container { border-radius: 20px;
   overflow: hidden;
   box-shadow: 0 8px 40px rgba(0,0,0,.12);
   height: 420px;
   background: linear-gradient(135deg, #e0ecf8, #cce0f0);
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   gap: 16px;
   }
  .map-container .map-icon { font-size: 70px;
   }
  .map-container h3 { font-family: 'Playfair Display', serif;
   font-size: 22px;
   color: var(--navy);
   }
  .map-container p { font-size: 15px;
   color: var(--text-light);
   text-align: center;
   max-width: 400px;
   line-height: 1.65;
   }
  .map-btn { display: inline-flex;
   align-items: center;
   gap: 8px;
   background: var(--primary);
   color: white;
   padding: 13px 28px;
   border-radius: 9px;
   text-decoration: none;
   font-weight: 600;
   font-size: 15px;
   transition: all .3s;
   box-shadow: 0 4px 18px rgba(232,132,26,.3);
   margin-top: 6px;
   }
  .map-btn:hover { background: var(--primary-dark);
   transform: translateY(-2px);
   }

  /* FAQ */
  .faq-section { padding: 70px 5%;
   }
  .section-title { font-family: 'Playfair Display', serif;
   font-size: clamp(24px,3vw,36px);
   color: var(--navy);
   text-align: center;
   margin-bottom: 12px;
   }
  .section-sub { text-align: center;
   color: var(--text-light);
   max-width: 560px;
   margin: 0 auto 50px;
   line-height: 1.7;
   font-size: 15px;
   }
  .faq-list { max-width: 760px;
   margin: 0 auto;
   }
  .faq-item { border: 2px solid #eef0f4;
   border-radius: 14px;
   margin-bottom: 14px;
   overflow: hidden;
   }
  .faq-question { padding: 18px 22px;
   font-size: 15px;
   font-weight: 600;
   color: var(--navy);
   cursor: pointer;
   display: flex;
   justify-content: space-between;
   align-items: center;
   transition: background .2s;
   user-select: none;
   }
  .faq-question:hover { background: #fafbfc;
   }
  .faq-question.open { background: #fff8f2;
   color: var(--primary);
   border-bottom: 2px solid #eef0f4;
   }
  .faq-arrow { font-size: 18px;
   transition: transform .3s;
   }
  .faq-question.open .faq-arrow { transform: rotate(180deg);
   }
  .faq-answer { display: none;
   padding: 18px 22px;
   font-size: 14.5px;
   color: var(--text-light);
   line-height: 1.75;
   background: #fffcf8;
   }
  .faq-answer.open { display: block;
   }

  /* CTA */
  .cta-banner { background: linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);
   color: white;
   text-align: center;
   padding: 80px 5%;
   position: relative;
   overflow: hidden;
   }
  .cta-banner::before { content: '';
   position: absolute;
   top: -150px;
   left: -150px;
   width: 400px;
   height: 400px;
   background: radial-gradient(circle,rgba(255,255,255,.04) 0%,transparent 70%);
   border-radius: 50%;
   }
  .cta-banner .stay-connected { font-size: 13px;
   letter-spacing: 3px;
   text-transform: uppercase;
   color: rgba(255,255,255,.6);
   margin-bottom: 16px;
   }
  .cta-banner h2 { font-family: 'Playfair Display', serif;
   font-size: clamp(22px,4vw,40px);
   margin-bottom: 30px;
   color: white;
   }
  .cta-banner h2 span { color: var(--primary);
   }
  .cta-btns { display: flex;
   gap: 14px;
   justify-content: center;
   flex-wrap: wrap;
   }
  .btn-outline-white { display: inline-block;
   background: transparent;
   color: white;
   padding: 13px 28px;
   border-radius: 8px;
   text-decoration: none;
   font-weight: 600;
   font-size: 15px;
   border: 2px solid rgba(255,255,255,.4);
   transition: all .3s;
   }
  .btn-outline-white:hover { background: rgba(255,255,255,.1);
   border-color: white;
   }

  /* FOOTER */
  footer { background: #0f1a2e;
   color: rgba(255,255,255,.8);
   padding: 60px 5% 30px;
   }
  .footer-grid { display: grid;
   grid-template-columns: 1.4fr 1fr 1.6fr 1fr;
   gap: 40px;
   margin-bottom: 40px;
   }
  .footer-logo { display: flex;
   align-items: center;
   gap: 10px;
   margin-bottom: 20px;
   }
  .footer-logo .logo-icon { background: var(--primary);
   }
  
  
  footer h4 { font-size: 14px;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 1.5px;
   color: white;
   margin-bottom: 20px;
   }
  .footer-links { list-style: none;
   }
  .footer-links li { margin-bottom: 10px;
   }
  .footer-links a { text-decoration: none;
   color: rgba(255,255,255,.6);
   font-size: 14px;
   transition: color .2s;
   }
  .footer-links a:hover { color: var(--primary);
   }
  .footer-links a.active { color: var(--primary);
   font-weight: 600;
   }
  .footer-contact-info p { font-size: 14px;
   margin-bottom: 12px;
   color: rgba(255,255,255,.7);
   line-height: 1.7;
   }
  .footer-contact-info a { color: rgba(255,255,255,.7);
   text-decoration: none;
   }
  .footer-contact-info a:hover { color: var(--primary);
   }
  .social-links { display: flex;
   gap: 12px;
   margin-top: 15px;
   }
  .social-link { width: 36px;
   height: 36px;
   background: rgba(255,255,255,.1);
   border-radius: 8px;
   display: flex;
   align-items: center;
   justify-content: center;
   text-decoration: none;
   color: white;
   font-size: 14px;
   font-weight: 700;
   transition: all .2s;
   }
  .social-link:hover { background: var(--primary);
   }
  .footer-bottom { border-top: 1px solid rgba(255,255,255,.08);
   padding-top: 24px;
   text-align: center;
   font-size: 13px;
   color: rgba(255,255,255,.4);
   }

  @media (max-width: 960px) {
    .nav-links { display: none;
     flex-direction: column;
     position: absolute;
     top: 70px;
     left: 0;
     right: 0;
     background: white;
     padding: 20px;
     box-shadow: 0 10px 30px rgba(0,0,0,.1);
     gap: 4px;
     }
    .nav-links.open { display: flex;
     }
    .hamburger { display: flex;
     }
    .quick-strip { grid-template-columns: 1fr;
     }
    .quick-item { border-right: none;
     border-bottom: 1px solid rgba(255,255,255,.1);
     }
    .quick-item:last-child { border-bottom: none;
     }
    .contact-grid { grid-template-columns: 1fr;
     gap: 40px;
     }
    .footer-grid { grid-template-columns: 1fr 1fr;
     }
  }
  @media (max-width: 640px) {
    .form-row { grid-template-columns: 1fr;
     }
    .contact-form-side { padding: 28px 20px;
     }
    .contact-main, .map-section, .faq-section { padding: 50px 5%;
     }
    .footer-grid { grid-template-columns: 1fr;
     gap: 30px;
     }
  }

*{margin:0;
  padding:0;
box-sizing:border-box;
}
body{font-family:'DM Sans',sans-serif;
color:var(--text);
overflow-x:hidden;
}

/* ───── NAV ───── */
nav{background:#fff;
  padding:0 5%;
display:flex;
align-items:center;
justify-content:space-between;
height:70px;
box-shadow:0 2px 15px rgba(0,0,0,.08);
position:sticky;
top:0;
z-index:100;
}
.logo{display:flex;
  align-items:center;
gap:10px;
text-decoration:none;
}
.logo-icon{width:42px;
  height:42px;
background:var(--primary);
clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);
display:flex;
align-items:center;
justify-content:center;
color:#fff;
font-size:18px;
font-weight:700;
flex-shrink:0;
}
.logo-text span:first-child{display:block;
  font-size:13px;
font-weight:700;
color:var(--navy);
letter-spacing:1px;
text-transform:;
}
.logo-text span:last-child{display:block;
  font-size:10px;
color:var(--primary);
letter-spacing:1.5px;
text-transform:;
}
.nav-links{display:flex;
  list-style:none;
gap:5px;
align-items:center;
}

.nav-links a:hover,.nav-links a.active{color:var(--primary);
  background:#fff5ea;
}
.nav-cta{background:var(--primary)!important;
  color:#fff!important;
padding:10px 18px!important;
border-radius:6px!important;
font-weight:600!important;
}
.nav-cta:hover{background:var(--primary-dark)!important;
}
.hamburger{display:none;
  flex-direction:column;
gap:5px;
cursor:pointer;
padding:5px;
}
.hamburger span{display:block;
  width:24px;
height:2px;
background:var(--navy);
transition:all .3s;
}

/* ───── PAGE HERO ───── */
.page-hero{background:linear-gradient(135deg,#1a2a4a 0%,#2d4070 60%,#1a3a5c 100%);
  padding:80px 5% 70px;
position:relative;
overflow:hidden;
text-align:center;
}
.page-hero::before{content:'';
position:absolute;
top:-100px;
right:-100px;
width:500px;
height:500px;
background:radial-gradient(circle,rgba(232,132,26,.14) 0%,transparent 70%);
border-radius:50%;
}
.breadcrumb{font-size:13px;
  color:rgba(255,255,255,.5);
margin-bottom:16px;
}
.breadcrumb a{color:var(--primary);
  text-decoration:none;
}
.breadcrumb span{margin:0 6px;
}
.page-hero h1{font-family:'Playfair Display',serif;
font-size:clamp(30px,5vw,54px);
color:#fff;
line-height:1.15;
margin-bottom:16px;
}
.page-hero h1 em{color:var(--primary);
  font-style:italic;
}
.page-hero p{font-size:16px;
  color:rgba(255,255,255,.72);
line-height:1.75;
max-width:520px;
margin:0 auto;
}

/* ───── GALLERY SECTION ───── */
.gallery-wrap{padding:70px 5%;
}
.section-title{font-family:'Playfair Display',serif;
font-size:clamp(24px,3vw,36px);
color:var(--navy);
text-align:center;
margin-bottom:10px;
}
.section-sub{text-align:center;
  color:var(--text-light);
max-width:560px;
margin:0 auto 42px;
line-height:1.7;
font-size:15px;
}

/* ───── FILTER PILLS ───── */
.gallery-filter{display:flex;
  gap:10px;
flex-wrap:wrap;
justify-content:center;
margin-bottom:48px;
}
.f-btn{
  padding:9px 22px;
  border-radius:100px;
  border:2px solid #dde2ea;

  font-size:13px;
  font-weight:600;
  cursor:pointer;
  background:#fff;
  color:var(--navy);

  transition:all .22s;
  box-shadow:0 2px 8px rgba(0,0,0,.05);
  letter-spacing:.3px;

}
.f-btn:hover{border-color:var(--primary);
  color:var(--primary);
}
.f-btn.active{background:var(--primary);
  color:#fff;
border-color:var(--primary);
box-shadow:0 6px 20px rgba(232,132,26,.35);
transform:translateY(-1px);
}

/* ───── MASONRY GRID ───── */
.g-grid{columns:4;
  column-gap:12px;
}
@media(max-width:1100px){.g-grid{columns:3;
  }}
@media(max-width:720px) {.g-grid{columns:2;
  }}
@media(max-width:420px) {.g-grid{columns:1;
  }}

.g-item{
  break-inside:avoid;
  margin-bottom:12px;
  border-radius:12px;
  overflow:hidden;

  position:relative;
  cursor:pointer;

  transition:transform .3s ease,box-shadow .3s ease;

}
.g-item:hover{transform:translateY(-5px);
  box-shadow:0 18px 45px rgba(0,0,0,.22);
}
.g-item.hidden{display:none;
}

/* thumb placeholder (coloured gradient + emoji) */
.g-thumb{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;

  font-size:62px;
  transition:transform .5s ease;

  filter:drop-shadow(0 4px 14px rgba(0,0,0,.35));

}
.g-item:hover .g-thumb{transform:scale(1.08);
}

/* hover overlay */
.g-overlay{
  position:absolute;
  inset:0;

  background:linear-gradient(180deg,rgba(0,0,0,0) 38%,rgba(15,26,50,.92) 100%);

  opacity:0;
  transition:opacity .3s;

  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:18px 15px 16px;

}
.g-item:hover .g-overlay{opacity:1;
}
.g-overlay h4{color:#fff;
  font-size:13.5px;
font-weight:700;
line-height:1.3;
margin-bottom:3px;
}
.g-overlay span{color:rgba(255,255,255,.65);
  font-size:11.5px;
}

/* zoom icon top-right */
.g-zoom{
  position:absolute;
  top:12px;
  right:12px;

  width:30px;
  height:30px;
  border-radius:50%;

  background:rgba(255,255,255,.18);
  border:1.5px solid rgba(255,255,255,.3);

  backdrop-filter:blur(6px);
  display:flex;
  align-items:center;
  justify-content:center;

  font-size:13px;
  color:#fff;
  transition:background .2s;

}
.g-item:hover .g-zoom{background:var(--primary);
}

/* category badge */
.g-badge{
  position:absolute;
  top:10px;
  left:10px;
  z-index:2;

  padding:3px 10px;
  border-radius:100px;

  font-size:10px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.8px;

  backdrop-filter:blur(8px);

}
.b-events     {background:rgba(232,132,26,.88);
  color:#fff;
}
.b-placements {background:rgba(20,110,55,.88);
 color:#fff;
}
.b-hospitals  {background:rgba(26,42,74,.88);
  color:#fff;
}
.b-team       {background:rgba(110,40,170,.88);
  color:#fff;
}
.b-counselling{background:rgba(0,110,180,.88);
 color:#fff;
}

/* ───────────────────────────────────────────
   LIGHTGALLERY  LIGHTBOX
─────────────────────────────────────────── */
#lgBox{
  position:fixed;
  inset:0;
  z-index:9000;

  background:#07090f;

  display:none;
  flex-direction:column;

}
#lgBox.lg-open{display:flex;
}

/* fade-in */
@keyframes lgIn{from{opacity:0}to{opacity:1}}
#lgBox.lg-open{animation:lgIn .2s ease both;
}

/* ── top bar ── */
#lgBar{
  display:flex;
  align-items:center;
  justify-content:space-between;

  padding:14px 20px;
  flex-shrink:0;

  background:linear-gradient(180deg,rgba(0,0,0,.75) 0%,transparent 100%);

  position:absolute;
  top:0;
  left:0;
  right:0;
  z-index:10;

}
#lgMeta{display:flex;
  align-items:center;
gap:14px;
}
#lgCounter{
  font-size:12px;
  font-weight:700;
  color:rgba(255,255,255,.5);

  background:rgba(255,255,255,.08);
  padding:4px 13px;
  border-radius:100px;
  letter-spacing:.5px;

}
#lgTitleWrap h4{color:#fff;
  font-size:14.5px;
font-weight:700;
}
#lgTitleWrap p {color:rgba(255,255,255,.5);
  font-size:12px;
margin-top:2px;
}
.lg-actions{display:flex;
  gap:8px;
}
.lg-act{
  width:36px;
  height:36px;
  border-radius:50%;

  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.15);

  color:#fff;
  font-size:15px;
  cursor:pointer;

  display:flex;
  align-items:center;
  justify-content:center;

  transition:all .18s;

}
.lg-act:hover{background:var(--primary);
  border-color:var(--primary);
transform:scale(1.1);
}

/* ── progress bar ── */
#lgProgress{
  position:absolute;
  top:0;
  left:0;
  height:3px;

  background:var(--primary);

  box-shadow:0 0 10px var(--primary);

  transition:width .35s ease;
  z-index:20;
  border-radius:0 2px 2px 0;

}

/* ── main image stage ── */
#lgStage{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;

  position:relative;
  padding:76px 80px 106px;
  overflow:hidden;

}
#lgImgWrap{
  max-width:880px;
  width:100%;

  border-radius:14px;
  overflow:hidden;

  box-shadow:0 32px 90px rgba(0,0,0,.75);

}
@keyframes lgZoom{from{opacity:0;
  transform:scale(.9) translateY(14px)}to{opacity:1;
  transform:scale(1) translateY(0)}}
.lg-anim{animation:lgZoom .32s cubic-bezier(.22,.68,0,1.2) both;
}

#lgImgWrap .lg-img{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:70px 40px;

}
#lgImgWrap .lg-img span{
  font-size:140px;

  filter:drop-shadow(0 16px 40px rgba(0,0,0,.55));

  animation:lgZoom .36s cubic-bezier(.22,.68,0,1.2) .05s both;

  display:inline-block;

}

/* ── side arrows ── */
.lg-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);

  width:52px;
  height:52px;
  border-radius:50%;

  background:rgba(255,255,255,.07);
  border:1.5px solid rgba(255,255,255,.14);

  color:#fff;
  font-size:26px;
  cursor:pointer;

  display:flex;
  align-items:center;
  justify-content:center;

  transition:all .2s;
  z-index:10;
  backdrop-filter:blur(10px);

}
.lg-nav:hover{background:var(--primary);
  border-color:var(--primary);
transform:translateY(-50%) scale(1.1);
}
#lgPrev{left:16px;
}
#lgNext{right:16px;
}

/* ── thumbnail strip ── */
#lgThumbBar{
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  z-index:10;

  padding:12px 24px 16px;

  background:linear-gradient(0deg,rgba(0,0,0,.85) 0%,transparent 100%);

}
#lgThumbs{
  display:flex;
  gap:7px;
  overflow-x:auto;
  justify-content:center;

  scrollbar-width:none;
  padding:2px 0 4px;

}
#lgThumbs::-webkit-scrollbar{display:none;
}

.lg-th{
  width:64px;
  height:50px;
  border-radius:8px;
  overflow:hidden;
  flex-shrink:0;

  cursor:pointer;
  border:2.5px solid transparent;

  opacity:.4;
  transition:all .22s;

}
.lg-th:hover{opacity:.78;
  transform:translateY(-3px);
}
.lg-th.active{border-color:var(--primary);
  opacity:1;
transform:translateY(-5px);
box-shadow:0 8px 22px rgba(232,132,26,.5);
}
.lg-th-inner{width:100%;
  height:100%;
display:flex;
align-items:center;
justify-content:center;
font-size:22px;
}

/* ───── STATS ───── */
.stats-row{background:var(--light-blue);
  padding:50px 5%;
}
.stats-grid{display:grid;
  grid-template-columns:repeat(4,1fr);
gap:24px;
max-width:900px;
margin:0 auto;
}
.stat-card{background:#fff;
  border-radius:14px;
padding:28px 20px;
text-align:center;
box-shadow:0 3px 16px rgba(0,0,0,.06);
}
.stat-num{font-family:'Playfair Display',serif;
font-size:36px;
color:var(--primary);
font-weight:700;
display:block;
}
.stat-lbl{font-size:13px;
  color:var(--text-light);
margin-top:6px;
}

/* ───── CTA BANNER ───── */
.cta-banner{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);
  color:#fff;
text-align:center;
padding:80px 5%;
position:relative;
overflow:hidden;
}
.cta-banner::before{content:'';
position:absolute;
top:-150px;
left:-150px;
width:400px;
height:400px;
background:radial-gradient(circle,rgba(255,255,255,.04) 0%,transparent 70%);
border-radius:50%;
}
.cta-eyebrow{font-size:13px;
  letter-spacing:3px;
text-transform:uppercase;
color:rgba(255,255,255,.55);
margin-bottom:16px;
}
.cta-banner h2{font-family:'Playfair Display',serif;
font-size:clamp(22px,4vw,40px);
margin-bottom:30px;
color:#fff;
}
.cta-banner h2 span{color:var(--primary);
}
.btn-primary{display:inline-block;
  background:var(--primary);
color:#fff;
padding:14px 32px;
border-radius:8px;
text-decoration:none;
font-weight:600;
font-size:15px;
letter-spacing:.5px;
transition:all .3s;
box-shadow:0 4px 20px rgba(232,132,26,.35);
border:none;
cursor:pointer;
}
.btn-primary:hover{background:var(--primary-dark);
  transform:translateY(-2px);
}
.btn-ghost{display:inline-block;
  background:transparent;
color:#fff;
padding:13px 28px;
border-radius:8px;
text-decoration:none;
font-weight:600;
font-size:15px;
border:2px solid rgba(255,255,255,.4);
transition:all .3s;
}
.btn-ghost:hover{border-color:#fff;
  background:rgba(255,255,255,.08);
}

/* ───── FOOTER ───── */
footer{background:#0f1a2e;
  color:rgba(255,255,255,.8);
padding:60px 5% 30px;
}
.footer-grid{display:grid;
  grid-template-columns:1.4fr 1fr 1.6fr 1fr;
gap:40px;
margin-bottom:40px;
}
.footer-logo{display:flex;
  align-items:center;
gap:10px;
margin-bottom:20px;
}
.footer-logo .logo-icon{background:var(--primary);
}

  
footer h4{font-size:14px;
  font-weight:700;
text-transform:uppercase;
letter-spacing:1.5px;
color:#fff;
margin-bottom:20px;
}
.f-links{list-style:none;
}
.f-links li{margin-bottom:10px;
}
.f-links a{text-decoration:none;
  color:rgba(255,255,255,.6);
font-size:14px;
transition:color .2s;
}
.f-links a:hover,.f-links a.active{color:var(--primary);
}
.f-contact p{font-size:14px;
  margin-bottom:12px;
color:rgba(255,255,255,.7);
line-height:1.7;
}
.f-contact a{color:rgba(255,255,255,.7);
  text-decoration:none;
}
.f-contact a:hover{color:var(--primary);
}
.socials{display:flex;
  gap:12px;
margin-top:15px;
}
.soc{width:36px;
  height:36px;
background:rgba(255,255,255,.1);
border-radius:8px;
display:flex;
align-items:center;
justify-content:center;
text-decoration:none;
color:#fff;
font-size:14px;
font-weight:700;
transition:all .2s;
}
.soc:hover{background:var(--primary);
}
.footer-btm{border-top:1px solid rgba(255,255,255,.08);
  padding-top:24px;
text-align:center;
font-size:13px;
color:rgba(255,255,255,.35);
}

/* ───── RESPONSIVE ───── */
@media(max-width:960px){
  .nav-links{display:none;
    flex-direction:column;
  position:absolute;
  top:70px;
  left:0;
  right:0;
  background:#fff;
  padding:20px;
  box-shadow:0 10px 30px rgba(0,0,0,.1);
  gap:4px;
}
  .nav-links.open{display:flex;
  }
  .hamburger{display:flex;
  }
  .stats-grid{grid-template-columns:repeat(2,1fr);
  }
  .footer-grid{grid-template-columns:1fr 1fr;
  }
  #lgStage{padding:76px 64px 106px;
  }
}
@media(max-width:640px){
  .gallery-wrap{padding:50px 5%;
  }
  .stats-grid{grid-template-columns:repeat(2,1fr);
  }
  .footer-grid{grid-template-columns:1fr;
    gap:30px;
}
  #lgStage{padding:76px 10px 106px;
  }
  #lgPrev{left:8px;
    } #lgNext{right:8px;
  }
  .lg-th{width:52px;
    height:40px;
}
  #lgTitleWrap h4{font-size:13px;
  }
}

.page-hero::before {
  content: '';

  position: absolute;
   top: -100px;
   right: -100px;

  width: 500px;
   height: 500px;

  background: radial-gradient(circle, rgba(232,132,26,.14) 0%, transparent 70%);

  border-radius: 50%;

}
.page-hero::after {
  content: '';

  position: absolute;
   bottom: -60px;
   left: 5%;

  width: 280px;
   height: 280px;

  background: radial-gradient(circle, rgba(255,255,255,.03) 0%, transparent 70%);

  border-radius: 50%;

}
.page-hero-inner { max-width: 680px;
 position: relative;
 }
.breadcrumb { font-size: 13px;
 color: rgba(255,255,255,.5);
 margin-bottom: 16px;
 }
.breadcrumb a { color: var(--primary);
 text-decoration: none;
 }
.breadcrumb span { margin: 0 6px;
 }
.page-hero h1 {
  font-family: 'Playfair Display', serif;

  font-size: clamp(30px, 5vw, 54px);

  color: #fff;

  line-height: 1.15;

  margin-bottom: 18px;

}
.page-hero h1 .highlight { color: var(--primary);
 font-style: italic;
 }
.page-hero p {
  font-size: 16px;

  color: rgba(255,255,255,.75);

  line-height: 1.75;

  max-width: 560px;

}

/* ── Stats Bar ── */
.stats-bar {
  background: var(--primary);

  display: grid;

  grid-template-columns: repeat(5, 1fr);

  text-align: center;

}
.stat-item { padding: 22px 12px;
 border-right: 1px solid rgba(255,255,255,.2);
 }
.stat-item:last-child { border-right: none;
 }
.stat-num {
  font-family: 'Playfair Display', serif;

  font-size: 28px;
   color: #fff;
   font-weight: 700;

  display: block;

}
.stat-label { font-size: 12px;
 color: rgba(255,255,255,.8);
 letter-spacing: .5px;
 margin-top: 4px;
 }

/* ── Shared section helpers ── */
.section-title {
  font-family: 'Playfair Display', serif;

  font-size: clamp(24px, 3vw, 36px);

  color: var(--navy);

  text-align: center;

  margin-bottom: 12px;

}
.section-sub {
  text-align: center;

  color: var(--text-light);

  max-width: 560px;

  margin: 0 auto 50px;

  line-height: 1.7;

  font-size: 15px;

}

/* ── Intro strip ── */
.intro-strip {
  background: #fff;

  border-bottom: 1px solid #eef0f4;

  padding: 48px 5%;

  text-align: center;

}
.intro-strip p {
  max-width: 820px;

  margin: 0 auto;

  font-size: 15px;

  color: var(--text-light);

  line-height: 1.85;

}
.intro-strip strong { color: var(--navy);
 }

/* ── Core Services ── */
.core-services { padding: 72px 5%;
 background: var(--light-blue);
 }

.svc-grid {
  display: grid;

  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));

  gap: 26px;

}
.svc-card {
  background: #fff;

  border-radius: 16px;

  overflow: hidden;

  box-shadow: 0 4px 22px rgba(0,0,0,.07);

  transition: transform .3s, box-shadow .3s;

  border-top: 4px solid transparent;

}
.svc-card:hover {
  transform: translateY(-6px);

  box-shadow: 0 18px 48px rgba(0,0,0,.13);

  border-top-color: var(--primary);

}
.svc-card-header { padding: 34px 28px 22px;
 }
.svc-icon {
  width: 60px;
   height: 60px;

  border-radius: 16px;

  display: flex;
   align-items: center;
   justify-content: center;

  font-size: 28px;

  margin-bottom: 20px;

}
.ic-recruit  { background: linear-gradient(135deg, #e8f4ff, #d0e8ff);
 }
.ic-admiss   { background: linear-gradient(135deg, #f0fff4, #d4f0e4);
 }
.ic-counsel  { background: linear-gradient(135deg, #fff8f0, #ffe4c4);
 }

.svc-card h3 {
  font-family: 'Playfair Display', serif;

  font-size: 20px;
   color: var(--navy);
   margin-bottom: 10px;

}
.svc-card p {
  font-size: 14px;
   color: var(--text-light);
   line-height: 1.75;
   margin-bottom: 20px;

}
.svc-card ul {
  list-style: none;
   padding: 0;
   margin: 0;

}
.svc-card ul li {
  display: flex;
   align-items: flex-start;
   gap: 10px;

  font-size: 13.5px;
   color: var(--text);

  padding: 7px 0;
   border-bottom: 1px solid #f4f4f4;

}
.svc-card ul li:last-child { border-bottom: none;
 }
.svc-card ul li::before {
  content: '✓';
   color: var(--primary);
   font-weight: 700;

  flex-shrink: 0;
   margin-top: 1px;

}
.svc-card-footer {
  background: #f8fafc;
   border-top: 1px solid #eef0f4;

  padding: 14px 28px;

}
.svc-link {
  display: inline-flex;
   align-items: center;
   gap: 6px;

  font-size: 13.5px;
   font-weight: 600;

  color: var(--primary);
   text-decoration: none;

  letter-spacing: .3px;

  transition: gap .2s;

}
.svc-link:hover { gap: 10px;
 }

/* ── How We Work ── */
.how-section { padding: 72px 5%;
 background: #fff;
 }

.steps-grid {
  display: grid;

  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));

  gap: 0;

  position: relative;

  margin-top: 50px;

}
.steps-grid::before {
  content: '';

  position: absolute;
   top: 44px;
   left: 8%;
   right: 8%;

  height: 2px;

  background: linear-gradient(90deg, var(--primary), rgba(232,132,26,.15));

  z-index: 0;

}
.step-card { text-align: center;
 padding: 0 20px 30px;
 position: relative;
 z-index: 1;
 }
.step-num {
  width: 56px;
   height: 56px;

  background: var(--navy);
   color: #fff;

  border-radius: 50%;

  font-family: 'Playfair Display', serif;

  font-size: 20px;
   font-weight: 700;

  display: flex;
   align-items: center;
   justify-content: center;

  margin: 0 auto 20px;

  box-shadow: 0 6px 20px rgba(26,42,74,.25);

  transition: background .25s;

}
.step-card:hover .step-num { background: var(--primary);
 }
.step-card h4 { font-size: 15px;
 font-weight: 700;
 color: var(--navy);
 margin-bottom: 8px;
 }
.step-card p  { font-size: 13.5px;
 color: var(--text-light);
 line-height: 1.65;
 }

/* ── Specialties ── */
.specialties-section { background: var(--light-blue);
 padding: 64px 5%;
 text-align: center;
 }

.spec-tags {
  display: flex;
   flex-wrap: wrap;
   gap: 11px;

  justify-content: center;
   max-width: 900px;
   margin: 0 auto;

}
.spec-tag {
  background: #fff;

  border: 2px solid #dde2ea;

  border-radius: 100px;

  padding: 9px 20px;

  font-size: 13.5px;
   color: var(--navy);
   font-weight: 500;

  box-shadow: 0 2px 8px rgba(0,0,0,.05);

  transition: background .2s, color .2s, border-color .2s, transform .2s;

  cursor: default;

}
.spec-tag:hover {
  background: var(--primary);
   color: #fff;

  border-color: var(--primary);

  transform: translateY(-2px);

  box-shadow: 0 6px 18px rgba(232,132,26,.3);

}

/* ── Who We Serve ── */
.serve-section { padding: 72px 5%;
 background: #fff;
 }

.serve-grid {
  display: grid;

  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));

  gap: 22px;

}
.serve-card {
  background: var(--light-blue);

  border-radius: 16px;
   padding: 28px 24px;

  display: flex;
   gap: 18px;
   align-items: flex-start;

  transition: transform .25s, box-shadow .25s;

  border-left: 4px solid transparent;

}
.serve-card:hover {
  transform: translateY(-4px);

  box-shadow: 0 14px 38px rgba(0,0,0,.1);

  border-left-color: var(--primary);

  background: #fff;

}
.serve-emoji { font-size: 2rem;
 flex-shrink: 0;
 margin-top: 2px;
 }
.serve-card h4 { font-size: 15px;
 font-weight: 700;
 color: var(--navy);
 margin-bottom: 7px;
 }
.serve-card p  { font-size: 13.5px;
 color: var(--text-light);
 line-height: 1.7;
 }

/* ── Testimonials ── */
.testimonials { background: var(--light-blue);
 padding: 70px 5%;
 }

.testi-grid {
  display: grid;

  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));

  gap: 24px;
   margin-top: 40px;

}
.testi-card {
  background: #fff;
   border-radius: 16px;
   padding: 30px;

  box-shadow: 0 3px 18px rgba(0,0,0,.07);

  position: relative;
   border-left: 4px solid var(--primary);

}
.testi-card::before {
  content: '"';
   font-size: 80px;
   color: var(--primary);
   opacity: .1;

  position: absolute;
   top: 10px;
   right: 20px;

  font-family: 'Playfair Display', serif;
   line-height: 1;

}
.testi-stars { color: #f59e0b;
 font-size: 16px;
 margin-bottom: 14px;
 }
.testi-card p { font-size: 14.5px;
 color: var(--text);
 line-height: 1.75;
 margin-bottom: 20px;
 font-style: italic;
 }
.testi-author { display: flex;
 align-items: center;
 gap: 12px;
 }
.testi-avatar {
  width: 46px;
   height: 46px;
   border-radius: 50%;

  display: flex;
   align-items: center;
   justify-content: center;

  font-size: 22px;
   background: var(--light-blue);

}
.testi-name strong { display: block;
 font-size: 15px;
 font-weight: 700;
 color: var(--navy);
 }
.testi-name span   { font-size: 13px;
 color: var(--primary);
 }

/* ── CTA Banner ── */
.cta-banner {
  background: linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%);

  color: #fff;
   text-align: center;
   padding: 80px 5%;

  position: relative;
   overflow: hidden;

}
.cta-banner::before {
  content: '';
   position: absolute;
   top: -150px;
   left: -150px;

  width: 400px;
   height: 400px;

  background: radial-gradient(circle, rgba(255,255,255,.04) 0%, transparent 70%);

  border-radius: 50%;

}
.cta-banner .stay-connected {
  font-size: 13px;
   letter-spacing: 3px;
   text-transform: uppercase;

  color: rgba(255,255,255,.6);
   margin-bottom: 16px;

}
.cta-banner h2 {
  font-family: 'Playfair Display', serif;

  font-size: clamp(22px, 4vw, 40px);

  margin-bottom: 30px;
   color: #fff;

}
.cta-banner h2 span { color: var(--primary);
 }

/* ── Scroll animations ── */
@keyframes fadeUp {
  from { opacity: 0;
   transform: translateY(26px);
   }
  to   { opacity: 1;
   transform: translateY(0);
   }
}
.anim { opacity: 0;
 }
.anim.visible { animation: fadeUp .6s ease forwards;
 }
.anim:nth-child(2) { animation-delay: .1s;
 }
.anim:nth-child(3) { animation-delay: .2s;
 }
.anim:nth-child(4) { animation-delay: .3s;
 }
.anim:nth-child(5) { animation-delay: .4s;
 }
.anim:nth-child(6) { animation-delay: .5s;
 }

/* ── Responsive ── */
@media (max-width: 960px) {
  .stats-bar { grid-template-columns: repeat(3, 1fr);
   }
  .stat-item:nth-child(3) { border-right: none;
   }
}
@media (max-width: 640px) {
  .steps-grid::before { display: none;
   }
  .stats-bar { grid-template-columns: repeat(2, 1fr);
   }
  .stat-item:nth-child(2) { border-right: none;
   }
}

/* STATS BAR */
.stats-bar {
  background: var(--primary);

  display: grid;
   grid-template-columns: repeat(4, 1fr);

  text-align: center;

}
.stat-item { padding: 22px 12px;
 border-right: 1px solid rgba(255,255,255,.22);
 }
.stat-item:last-child { border-right: none;
 }
.stat-num { font-family: 'Playfair Display', serif;
 font-size: 30px;
 color: #fff;
 font-weight: 700;
 display: block;
 }
.stat-label { font-size: 12px;
 color: rgba(255,255,255,.82);
 letter-spacing: .4px;
 margin-top: 3px;
 }

/* COURSES WRAPPER */
.courses-wrap {
  padding: 72px 5% 80px;

  background: #eef2f7;

  background-image:
    radial-gradient(circle at 8% 15%, rgba(232,132,26,.05) 0%, transparent 40%),
    radial-gradient(circle at 92% 85%, rgba(26,42,74,.07) 0%, transparent 40%);

}
.sec-head { text-align: center;
 margin-bottom: 48px;
 }
.sec-head h2 {
  font-family: 'Playfair Display', serif;

  font-size: clamp(24px, 3.5vw, 38px);

  color: var(--navy);
   margin-bottom: 10px;

}
.sec-head h2 em { color: var(--primary);
 font-style: italic;
 }
.sec-head p { font-size: 15px;
 color: var(--text-light);
 max-width: 540px;
 margin: 0 auto;
 line-height: 1.75;
 }

/* TAB BAR */
.tab-bar {
  display: flex;
   gap: 10px;
   flex-wrap: wrap;

  justify-content: center;
   margin-bottom: 44px;

}
.tab-btn {
  display: inline-flex;
   align-items: center;
   gap: 7px;

  padding: 10px 20px;
   border-radius: 100px;

  border: 2px solid #d0d8e4;

  font-size: 13px;
   font-weight: 600;
   cursor: pointer;

  background: #fff;
   color: var(--navy);

  transition: all .22s;
   font-family: 'DM Sans', sans-serif;

  box-shadow: 0 2px 8px rgba(0,0,0,.05);

}
.tab-btn:hover { border-color: var(--primary);
 color: var(--primary);
 }
.tab-btn.active {
  background: var(--navy);
   color: #fff;

  border-color: var(--navy);

  box-shadow: 0 6px 22px rgba(26,42,74,.28);

  transform: translateY(-1px);

}

/* PANELS */
.tab-panel { display: none;
 }
.tab-panel.active { display: block;
 animation: panelIn .3s ease;
 }
@keyframes panelIn { from { opacity: 0;
 transform: translateY(8px);
 } to { opacity: 1;
 transform: translateY(0);
 } }

/* CATEGORY ACCORDION CARD */
.cat-card {
  background: #fff;
   border-radius: 16px;

  box-shadow: 0 3px 18px rgba(0,0,0,.07);

  margin-bottom: 14px;
   overflow: hidden;

  transition: box-shadow .25s;

}
.cat-card:hover { box-shadow: 0 8px 32px rgba(0,0,0,.11);
 }

.cat-header {
  display: flex;
   align-items: center;
   gap: 16px;

  padding: 20px 26px;
   cursor: pointer;
   user-select: none;

  transition: background .2s;

}
.cat-header:hover { background: #fafbfc;
 }

.cat-icon {
  width: 50px;
   height: 50px;
   border-radius: 13px;

  display: flex;
   align-items: center;
   justify-content: center;

  font-size: 22px;
   flex-shrink: 0;

}
.ic-eng    { background: linear-gradient(135deg,#e4f0ff,#c8deff);
 }
.ic-comm   { background: linear-gradient(135deg,#eafff2,#c4efd8);
 }
.ic-arts   { background: linear-gradient(135deg,#fff7ee,#ffddb8);
 }
.ic-sci    { background: linear-gradient(135deg,#f2eeff,#ddd0ff);
 }
.ic-comp   { background: linear-gradient(135deg,#e4f6ff,#b8e4ff);
 }
.ic-health { background: linear-gradient(135deg,#ffeeee,#ffcccc);
 }
.ic-physio { background: linear-gradient(135deg,#fffbee,#ffe8b0);
 }
.ic-occ    { background: linear-gradient(135deg,#f8eeff,#e8c8ff);
 }
.ic-pharm  { background: linear-gradient(135deg,#eefffa,#b8f0da);
 }
.ic-nurs   { background: linear-gradient(135deg,#ffeef6,#ffc8e8);
 }
.ic-arch   { background: linear-gradient(135deg,#f4f0e6,#e0d0aa);
 }
.ic-agri   { background: linear-gradient(135deg,#eef8e4,#ccecaa);
 }
.ic-law    { background: linear-gradient(135deg,#eeeeff,#ccccf0);
 }

.cat-meta { flex: 1;
 min-width: 0;
 }
.cat-title {
  font-family: 'Playfair Display', serif;

  font-size: 17px;
   color: var(--navy);
   font-weight: 700;

  transition: color .2s;

}
.cat-sub-info { font-size: 12.5px;
 color: var(--text-light);
 margin-top: 3px;
 }
.ctag {
  display: inline-block;

  background: #eef2f8;
   color: var(--navy);

  font-size: 11px;
   font-weight: 700;

  padding: 2px 10px;
   border-radius: 20px;
   margin-left: 4px;

}
.cat-arrow { font-size: 20px;
 color: #b0bcc8;
 transition: transform .3s, color .2s;
 flex-shrink: 0;
 }

.cat-card.open .cat-header { background: #fff8f2;
 border-bottom: 1px solid #f0e8da;
 }
.cat-card.open .cat-arrow { transform: rotate(180deg);
 color: var(--primary);
 }
.cat-card.open .cat-title { color: var(--primary);
 }

/* BODY */
.cat-body { display: none;
 padding: 6px 26px 24px;
 }
.cat-card.open .cat-body { display: block;
 }

/* Sub-label */
.sub-lbl {
  display: flex;
   align-items: center;
   gap: 10px;

  font-size: 11px;
   font-weight: 700;

  text-transform: uppercase;
   letter-spacing: 1.2px;

  color: var(--primary);
   margin: 20px 0 10px;

}
.sub-lbl::after { content: '';
 flex: 1;
 height: 1px;
 background: #eef0f4;
 }

/* Course items */
.clist { list-style: none;
 padding: 0;
 margin: 0;
 }
.clist.two-col { display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 0 8px;
 }
.clist li {
  display: flex;
   align-items: center;
   gap: 11px;

  padding: 9px 12px;
   border-radius: 9px;

  font-size: 13.5px;
   color: var(--text);

  transition: background .16s, transform .16s;

  cursor: default;

}
.clist li:hover { background: #f4f7fa;
 transform: translateX(4px);
 }
.cnum {
  width: 26px;
   height: 26px;
   border-radius: 50%;

  background: #eef2f8;
   color: var(--navy);

  font-size: 11px;
   font-weight: 700;

  display: flex;
   align-items: center;
   justify-content: center;
   flex-shrink: 0;

}
.cbullet { width: 8px;
 height: 8px;
 border-radius: 50%;
 background: var(--primary);
 flex-shrink: 0;
 }
.cdur {
  margin-left: auto;
   font-size: 11px;
   font-weight: 700;

  color: #fff;
   background: var(--navy);

  padding: 2px 9px;
   border-radius: 20px;
   white-space: nowrap;
   flex-shrink: 0;

}

/* CTA BANNER */
.cta-banner {
  background: linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%);

  color: #fff;
   text-align: center;
   padding: 80px 5%;

  position: relative;
   overflow: hidden;

}
.cta-banner::before {
  content: '';
   position: absolute;
   top: -150px;
   left: -150px;

  width: 420px;
   height: 420px;

  background: radial-gradient(circle, rgba(255,255,255,.04) 0%, transparent 70%);
   border-radius: 50%;

}
.cta-banner::after {
  content: '';
   position: absolute;
   bottom: -100px;
   right: -80px;

  width: 350px;
   height: 350px;

  background: radial-gradient(circle, rgba(232,132,26,.09) 0%, transparent 70%);
   border-radius: 50%;

}
.cta-eyebrow {
  font-size: 12px;
   letter-spacing: 3px;
   text-transform: uppercase;

  color: rgba(255,255,255,.55);
   margin-bottom: 18px;
   position: relative;
   z-index: 1;

}
.cta-banner h2 {
  font-family: 'Playfair Display', serif;

  font-size: clamp(22px, 4vw, 40px);

  color: #fff;
   margin-bottom: 12px;
   position: relative;
   z-index: 1;

}
.cta-banner h2 span { color: var(--primary);
 }
.cta-banner > p { font-size: 15px;
 color: rgba(255,255,255,.65);
 margin-bottom: 32px;
 position: relative;
 z-index: 1;
 }
.cta-btns { display: flex;
 gap: 14px;
 justify-content: center;
 flex-wrap: wrap;
 position: relative;
 z-index: 1;
 }
.btn-primary {
  display: inline-block;
   background: var(--primary);
   color: white;

  padding: 14px 32px;
   border-radius: 8px;
   text-decoration: none;

  font-weight: 600;
   font-size: 15px;
   letter-spacing: .5px;

  transition: all .3s;
   box-shadow: 0 4px 20px rgba(232,132,26,.35);

  border: none;
   cursor: pointer;

}
.btn-primary:hover { background: var(--primary-dark);
 transform: translateY(-2px);
 }
.btn-ghost {
  display: inline-block;
   background: transparent;
   color: #fff;

  padding: 13px 28px;
   border-radius: 8px;
   text-decoration: none;

  font-weight: 600;
   font-size: 15px;

  border: 2px solid rgba(255,255,255,.4);
   transition: all .3s;

}
.btn-ghost:hover { border-color: #fff;
 background: rgba(255,255,255,.08);
 }

/* RESPONSIVE */
@media (max-width: 960px) {
  .stats-bar { grid-template-columns: repeat(2,1fr);
   }
  .stat-item:nth-child(2) { border-right: none;
   }
  .clist.two-col { grid-template-columns: 1fr;
   }
}
@media (max-width: 640px) {
  .cat-header { padding: 16px 16px;
   gap: 12px;
   }
  .cat-icon { width: 42px;
   height: 42px;
   font-size: 19px;
   }
  .cat-title { font-size: 15px;
   }
  .cat-body { padding: 0 14px 18px;
   }
  .tab-btn { font-size: 12px;
   padding: 8px 14px;
   }
  .courses-wrap { padding: 50px 5% 60px;
   }
}

.hero-badges { display: ;
 gap: 12px;
 flex-wrap: wrap;
 margin-top: 28px;
 }
.hero-badge {
  display: inline-flex;
   align-items: center;
   gap: 7px;

  background: rgba(255,255,255,.1);
   border: 1px solid rgba(255,255,255,.18);

  color: rgba(255,255,255,.85);
   font-size: 13px;
   font-weight: 500;

  padding: 7px 16px;
   border-radius: 100px;

}
.hero-badge .hdot { width: 7px;
 height: 7px;
 border-radius: 50%;
 background: var(--primary);
 }



/* HERO */
.enquiry-hero {
  background:linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 60%, #1a3a5c 100%);
  padding:70px 5% 60px; text-align:center; position:relative; overflow:hidden;
}
.enquiry-hero::before {
  content:''; position:absolute; top:-100px; right:-100px;
  width:500px; height:500px;
  background:radial-gradient(circle, rgba(232,132,26,.15) 0%, transparent 70%);
  border-radius:50%;
}
.enquiry-hero::after {
  content:''; position:absolute; bottom:-80px; left:-80px;
  width:400px; height:400px;
  background:radial-gradient(circle, rgba(255,255,255,.04) 0%, transparent 70%);
  border-radius:50%;
}
.hero-inner { position:relative; z-index:1; }
.breadcrumb { font-size:13px; color:rgba(255,255,255,.5); margin-bottom:14px; }
.breadcrumb a { color:var(--primary); text-decoration:none; }
.breadcrumb span { margin:0 6px; }
.enquiry-hero h1 { font-family:'Playfair Display',serif; font-size:clamp(28px,4.5vw,50px); color:#fff; line-height:1.15; margin-bottom:14px; }
.enquiry-hero h1 em { color:var(--primary); font-style:italic; }
.enquiry-hero p { font-size:16px; color:rgba(255,255,255,.72); line-height:1.75; max-width:540px; margin:0 auto; }

/* TAB SWITCHER */
.tab-section { max-width:860px; margin:-30px auto 0; padding:0 20px 60px; position:relative; z-index:10; }

.tab-switcher {
  display:flex; background:#fff; border-radius:100px;
  box-shadow:0 8px 40px rgba(0,0,0,.13); overflow:hidden; margin-bottom:0;
}
.tab-btn {
  flex:1; padding:20px 28px; border:none; background:transparent;
  cursor:pointer; font-family:'DM Sans',sans-serif; font-size:15px; font-weight:600;
  color:var(--text-light); display:flex; align-items:center; justify-content:center;
  gap:10px; transition:all .3s; position:relative;
}
.tab-btn.active { background:var(--navy); color:#fff; }
.tab-btn.active .tab-icon { background:rgba(255,255,255,.15); }
.tab-icon { width:38px; height:38px; border-radius:10px; background:#f0f2f5; display:flex; align-items:center; justify-content:center; font-size:18px; transition:background .3s; }
.tab-btn:not(.active):hover { background:#fafbfc; color:var(--navy); }
.tab-divider { width:1px; background:#eef0f4; flex-shrink:0; }

/* FORM CARD */
.form-card {
  background:#fff; border-radius:0 0 20px 20px;
  padding:48px 50px 50px;
  box-shadow:0 16px 60px rgba(0,0,0,.1);
  display:none;
}
.form-card.active { display:block; animation:slideDown .3s ease; }
@keyframes slideDown { from { opacity:0; transform:translateY(-10px); } to { opacity:1; transform:translateY(0); } }

.form-header { margin-bottom:36px; }
.form-header h2 { font-family:'Playfair Display',serif; font-size:26px; color:var(--navy); margin-bottom:6px; }
.form-header p { font-size:14px; color:var(--text-light); line-height:1.65; }
.form-badge {
  display:inline-flex; align-items:center; gap:6px;
  background:#fff5ea; color:var(--primary); font-size:12px; font-weight:700;
  padding:5px 14px; border-radius:20px; margin-bottom:16px; text-transform:uppercase; letter-spacing:.7px;
}

.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.form-group { display:flex; flex-direction:column; gap:7px; }
.form-group.full { grid-column:1 / -1; }
.form-group label { font-size:13px; font-weight:600; color:var(--navy); text-transform:uppercase; letter-spacing:.6px; }
.form-group input, .form-group select, .form-group textarea {
  padding:13px 16px; border:2px solid #e8ecf0; border-radius:10px;
  font-size:14.5px; font-family:'DM Sans',sans-serif; color:var(--text);
  outline:none; transition:all .2s; background:#fafbfc;
}
.form-group input:focus, .form-group select:focus, .form-group textarea:focus {
  border-color:var(--primary); background:#fff; box-shadow:0 0 0 4px rgba(232,132,26,.08);
}
.form-group input::placeholder { color:#b0b8c4; }

/* FILE UPLOAD */
.file-zone {
  border:2px dashed #d0d8e6; border-radius:12px; padding:32px 24px;
  text-align:center; cursor:pointer; background:#f8fafc; transition:all .25s;
  position:relative;
}
.file-zone:hover { border-color:var(--primary); background:#fff8f2; }
.file-zone.has-file { border-color:#22c55e; background:#f0fdf4; }
.file-zone input[type=file] { position:absolute; inset:0; opacity:0; cursor:pointer; width:100%; height:100%; }
.file-icon { font-size:32px; margin-bottom:10px; display:block; }
.file-zone p { font-size:14px; color:var(--text-light); margin:0; }
.file-zone p strong { color:var(--primary); }
.file-zone .file-hint { font-size:12px; color:#b0b8c4; margin-top:4px; }
.file-name { font-size:13px; color:#22c55e; font-weight:600; margin-top:6px; display:none; }

/* DEPT TAGS */
.dept-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:4px; }
.dept-tag {
  padding:7px 16px; border-radius:20px; border:2px solid #e0e6ef;
  font-size:13px; font-weight:500; color:var(--navy); cursor:pointer;
  transition:all .2s; background:#fff;
}
.dept-tag:hover { border-color:var(--primary); color:var(--primary); }
.dept-tag.selected { background:var(--primary); color:#fff; border-color:var(--primary); }

/* SUBMIT */
.form-submit { margin-top:36px; display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.btn-submit {
  display:inline-flex; align-items:center; gap:10px;
  background:var(--primary); color:white; padding:15px 36px;
  border-radius:10px; border:none; font-family:'DM Sans',sans-serif;
  font-weight:700; font-size:15px; cursor:pointer; transition:all .3s;
  box-shadow:0 6px 24px rgba(232,132,26,.38); letter-spacing:.4px;
}
.btn-submit:hover { background:var(--primary-dark); transform:translateY(-2px); box-shadow:0 10px 30px rgba(232,132,26,.45); }
.form-note { font-size:13px; color:var(--text-light); }
.form-note strong { color:var(--navy); }

/* SUCCESS */
.success-overlay {
  display:none; position:fixed; inset:0; background:rgba(15,26,50,.7);
  z-index:9000; align-items:center; justify-content:center; backdrop-filter:blur(6px);
}
.success-overlay.show { display:flex; animation:fadeIn .3s ease; }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
.success-card {
  background:#fff; border-radius:24px; padding:52px 48px; text-align:center;
  max-width:460px; width:90%; box-shadow:0 32px 80px rgba(0,0,0,.25);
  animation:popIn .35s cubic-bezier(.22,.68,0,1.2);
}
@keyframes popIn { from { transform:scale(.8); opacity:0; } to { transform:scale(1); opacity:1; } }
.success-icon { font-size:60px; margin-bottom:16px; display:block; }
.success-card h3 { font-family:'Playfair Display',serif; font-size:26px; color:var(--navy); margin-bottom:10px; }
.success-card p { font-size:15px; color:var(--text-light); line-height:1.7; margin-bottom:28px; }
.btn-close-success {
  background:var(--navy); color:#fff; border:none; padding:12px 32px;
  border-radius:10px; font-size:14px; font-weight:600; cursor:pointer;
  font-family:'DM Sans',sans-serif; transition:background .2s;
}
.btn-close-success:hover { background:var(--primary); }

/* CTA STRIP */
.cta-strip { background:linear-gradient(135deg,var(--navy),var(--navy-light)); color:#fff; text-align:center; padding:60px 5%; }
.cta-strip h2 { font-family:'Playfair Display',serif; font-size:clamp(20px,3vw,34px); margin-bottom:10px; }
.cta-strip h2 span { color:var(--primary); }
.cta-strip p { font-size:15px; color:rgba(255,255,255,.65); margin-bottom:24px; }
.cta-btns { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.btn-primary { display:inline-block; background:var(--primary); color:#fff; padding:13px 28px; border-radius:8px; text-decoration:none; font-weight:600; font-size:15px; transition:all .3s; box-shadow:0 4px 20px rgba(232,132,26,.35); }
.btn-primary:hover { background:var(--primary-dark); transform:translateY(-2px); }
.btn-ghost { display:inline-block; background:transparent; color:#fff; padding:12px 26px; border-radius:8px; text-decoration:none; font-weight:600; font-size:15px; border:2px solid rgba(255,255,255,.35); transition:all .3s; }
.btn-ghost:hover { border-color:#fff; background:rgba(255,255,255,.08); }

footer { background:#0f1a2e; color:rgba(255,255,255,.5); text-align:center; padding:28px; font-size:13px; }
footer a { color:var(--primary); text-decoration:none; }

@media (max-width:720px) {
  .form-card { padding:28px 22px 32px; }
  .form-grid { grid-template-columns:1fr; }
  .tab-btn { padding:16px 14px; font-size:13px; }
  .tab-icon { width:32px; height:32px; font-size:15px; }
  .tab-section { padding:0 12px 50px; }
}
.about-container {
  display: flex;
  align-items: center;
  gap: 40px;
  margin-top: 30px;
}

.about-content {
  flex: 1;
}

.about-content p {
  margin-bottom: 15px;
  line-height: 1.7;
}

.about-btn {
  display: inline-block;
  margin-top: 15px;
  padding: 10px 20px;
  background: #0D4A48;
  color: #fff;
  border-radius: 6px;
  text-decoration: none;
}

.about-visual img {
  max-width: 100%;
  border-radius: 12px;
}

/* Stats */
.about-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 40px;
}

.stat-box {
  background: #f5f7fa;
  padding: 20px;
  text-align: center;
  border-radius: 10px;
}

.stat-box h3 {
  color: #A02426;
  font-size: 28px;
}

/* Mobile */
@media(max-width:768px){
  .about-container {
    flex-direction: column;
  }
  .about-stats {
    grid-template-columns: repeat(2, 1fr);
  }
}
.admissions-strip {
 background: linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%);
    color: #fff;
    text-align: center;
}

.strip-container {
  max-width: 1100px;
  margin: auto;
}

.admissions-strip h2 {
  font-size: 32px;
  margin-bottom: 10px;
}
.admissions-strip p{
      max-width: 860px;
    margin: 20px auto;
}
.strip-sub {
  opacity: 0.9;
  margin-bottom: 40px;
}

/* Cards */
.admissions-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px;
}

.admissions-card {
  background: #ffffff;
  color: #333;
  padding: 25px;
  border-radius: 12px;
  transition: 0.3s;
  text-align: center;
}

.admissions-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.15);
}

.admissions-card .icon {
  font-size: 32px;
  margin-bottom: 10px;
}

.admissions-card h4 {
  margin-bottom: 10px;
  color: #A02426;
}

/* Button */
.btn-gold {
  display: inline-block;
  margin-top: 30px;
  padding: 12px 25px;
  background: var(--primary);
  color: #fff;
  border-radius: 6px;
  text-decoration: none;
  transition: 0.3s;
}

.btn-gold:hover {
  background: var(--primary-dark);
}

/* Mobile */
@media(max-width:768px){
  .admissions-cards {
    grid-template-columns: 1fr;
  }
}