/*
Theme Name: Edutech Global
Theme URI: https://edutechglobal.in/
Template: astra
Author: Shree Tech Solutions
Author URI: https://www.stsolutions.co.in/
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 6,000+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.12.5.1774112646
Updated: 2026-03-21 17:04:06

*/
:root {
    --purple: #6528F7;
    --purple-light: #E6E1FF;
    --teal: #00C4B4;
    --teal-light: #E0F7F5;
    --yellow: #FFC107;
    --yellow-light: #FFF8E1;
    --gray: #F8FAFC;
    --ielts: #6528F7;
    --pte: #0ea5e9;
    --toefl: #f59e0b;
    --ielts-purple: #6528F7;
    --ielts-purple-dark: #5511F8;
    --ielts-bg-dark: #0F172A;
    --ielts-bg-mid: #0D0614;
    --ielts-white: #FFFFFF;
    --ielts-soft: #F2F0FE;
    --ielts-border: #D8D8F5;
    --ielts-text: #454F5E;
    --ielts-heading: #0F172A;
    --ielts-radius: 20px;
    --ielts-green: #10b981;
    --ielts-amber: #f59e0b;
    --ielts-blue: #0ea5e9;
    --ielts-red: #ef4444;
    --tf-purple: #6528F7;
    --tf-purple-dark: #5511F8;
    --tf-bg-dark: #0F172A;
    --tf-bg-mid: #0D0614;
    --tf-white: #FFFFFF;
    --tf-soft: #F2F0FE;
    --tf-border: #D8D8F5;
    --tf-text: #454F5E;
    --tf-heading: #0F172A;
    --tf-radius: 20px;
    --tf-green: #10b981;
    --tf-amber: #f59e0b;
    --tf-blue: #0ea5e9;
    --tf-red: #ef4444;
    --pte-purple:      #6528F7;
    --pte-purple-dark: #5511F8;
    --pte-bg-dark:     #0F172A;
    --pte-bg-mid:      #0D0614;
    --pte-white:       #FFFFFF;
    --pte-soft:        #F2F0FE;
    --pte-border:      #D8D8F5;
    --pte-text:        #454F5E;
    --pte-heading:     #0F172A;
    --pte-green:       #10b981;
    --pte-amber:       #f59e0b;
    --pte-blue:        #0ea5e9;
    --pte-red:         #ef4444;
    --pp-purple:      #6528F7;
    --pp-purple-dark: #5511F8;
    --pp-bg-dark:     #0F172A;
    --pp-soft:        #F2F0FE;
    --pp-border:      #D8D8F5;
    --pp-text:        #454F5E;
    --pp-heading:     #0F172A;
    --pp-white:       #FFFFFF;
    --pp-green:       #10b981;
  --eg-purple: #6528F7;
  --eg-purple-dark: #5511F8;
  --eg-soft: #F2F0FE;
  --eg-border: #D8D8F5;
  --eg-text: #454F5E;
  --eg-heading: #0F172A;
  --eg-white: #FFFFFF;
  --eg-shadow: 0 10px 30px rgba(15,23,42,0.08);
  --eg-shadow-strong: 0 18px 50px rgba(15,23,42,0.12);
  --text-light:		#dddddd;
      /* NEW Prominent Vibrant Accents */
      --amber-rich: #d97706;      /* Deep TOEFL/warm success */
      --blue-deep: #0284c7;       /* Deep PTE/trust blue */
      --amber-light: #FEF3C7;
      --blue-light: #DBEAFE;
      --purple-dark: #5511F8;
}

/* === Sticky Header === */


/* avoid header jump on sticky */
body.has-sticky-header {
  padding-top: 86px;
}

@media (max-width: 921px){
  body.has-sticky-header {
    padding-top: 74px;
  }
}

/* base wrappers */
#masthead,
#masthead .main-header-bar-wrap,
#masthead .ast-main-header-wrap,
#masthead .ast-primary-header-bar {
  width: 100%;
  transition: all 0.35s ease;
}

/* desktop + mobile header bars */
#masthead .ast-primary-header-bar {
  position: relative;
  z-index: 9999;
  background: rgba(255,255,255,0.96);
  border-bottom: 1px solid rgba(101,40,247,0.06);
  box-shadow: none;
}

/* sticky state for all wrappers */
#masthead .ast-primary-header-bar.sticky-active,
#masthead .main-header-bar-wrap.sticky-active,
#masthead .ast-main-header-wrap.sticky-active {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99999;
  background: rgba(255, 255, 255, 0.95) !important;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(101,40,247,0.10);
  box-shadow: 0 10px 30px rgba(15,23,42,0.10);
}

/* smooth compact feel on scroll */
#masthead .ast-primary-header-bar.sticky-active .site-primary-header-wrap,
#masthead .ast-primary-header-bar.sticky-active.ast-builder-grid-row-layout-default {
  min-height: auto;
}

#masthead .sticky-active .site-header-primary-section-left,
#masthead .sticky-active .site-header-primary-section-right {
  align-items: center;
}

/* logo sizing */
#masthead .custom-logo-link img.custom-logo {
  max-height: 50px;
  width: auto;
  transition: transform 0.3s ease, max-height 0.3s ease;
}

#masthead .sticky-active .custom-logo-link img.custom-logo {
  max-height: 44px;
}

/* nav links */
#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link {
  position: relative;
  color: var(--eg-heading) !important;
  font-size: 15px;
  font-weight: 700;
  padding: 14px 16px !important;
  border-radius: 12px;
  transition: all 0.25s ease;
}

/* hover and current menu */
#primary-site-navigation-desktop .main-header-menu > .menu-item:hover > .menu-link,
#primary-site-navigation-desktop .main-header-menu > .menu-item.current-menu-item > .menu-link,
#primary-site-navigation-desktop .main-header-menu > .menu-item.current_page_item > .menu-link,
#primary-site-navigation-desktop .main-header-menu > .menu-item.current-menu-ancestor > .menu-link {
  color: var(--ast-global-color-5) !important;
  background: var(--eg-purple);
}

/* subtle underline indicator */
#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link::after {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 8px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--eg-purple), var(--eg-purple-dark));
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.25s ease;
}

#primary-site-navigation-desktop .main-header-menu > .menu-item:hover > .menu-link::after,
#primary-site-navigation-desktop .main-header-menu > .menu-item.current-menu-item > .menu-link::after,
#primary-site-navigation-desktop .main-header-menu > .menu-item.current_page_item > .menu-link::after,
#primary-site-navigation-desktop .main-header-menu > .menu-item.current-menu-ancestor > .menu-link::after {
  transform: scaleX(1);
}

/* dropdown parent arrow */
#primary-site-navigation-desktop .main-header-menu > .menu-item-has-children > .menu-link {
  padding-right: 15px !important;
}

#primary-site-navigation-desktop .ast-header-navigation-arrow svg,
#primary-site-navigation-desktop .ast-menu-toggle svg {
  width: 14px;
  height: 14px;
  fill: currentColor;
}

#primary-site-navigation-desktop .menu-item-has-children:hover > .menu-link {
  color: var(--eg-purple) !important;
}

/* dropdown panel */
#primary-site-navigation-desktop .sub-menu {
  padding: 12px !important;
  min-width: 260px;
  border-radius: 18px;
  background: rgba(255,255,255,0.96);
  border: 1px solid rgba(101,40,247,0.10);
  box-shadow: 0 20px 50px rgba(15,23,42,0.12);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}

/* dropdown items */
#primary-site-navigation-desktop .sub-menu .menu-link {
  color: var(--eg-heading) !important;
  font-size: 14px;
  font-weight: 600;
  padding: 12px 14px !important;
  border-radius: 12px;
  transition: all 0.22s ease;
}

#primary-site-navigation-desktop .sub-menu .menu-link:hover,
#primary-site-navigation-desktop .sub-menu .current-menu-item > .menu-link,
#primary-site-navigation-desktop .sub-menu .current_page_item > .menu-link {
  background: linear-gradient(135deg, rgba(101,40,247,0.08), rgba(85,17,248,0.04));
  color: var(--eg-purple) !important;
  transform: translateX(4px);
}

/* hide Astra's leading arrow icons inside submenu links if desired */
#primary-site-navigation-desktop .sub-menu .ast-icon.icon-arrow {
  display: none;
}

/* header button */
#masthead .ast-builder-button-wrap .ast-custom-button-link,
#masthead .ast-builder-button-wrap .ast-custom-button {
  text-decoration: none !important;
}

#masthead .ast-builder-button-wrap .ast-custom-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 12px 22px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--eg-purple), var(--eg-purple-dark));
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.01em;
  box-shadow: 0 10px 26px rgba(101,40,247,0.28);
  transition: transform 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease;
}

#masthead .ast-builder-button-wrap .ast-custom-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 34px rgba(101,40,247,0.34);
}

/* hide duplicate text link shown by Astra next to custom button */
#masthead .ast-builder-button-wrap > .menu-link {
  display: none !important;
}

/* desktop header spacing */
#masthead .site-primary-header-wrap.ast-container {
  max-width: 1280px;
}

#masthead .ast-primary-header-bar {
  padding: 5px 0;
}

#masthead .ast-primary-header-bar.sticky-active {
  padding: 5px 0;
}

/* mobile header sticky and UI */
#ast-mobile-header .ast-primary-header-bar {
  background: rgba(255,255,255,0.96);
}

#ast-mobile-header .ast-primary-header-bar.sticky-active {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99999;
}

/* mobile toggle button */
#ast-mobile-header .menu-toggle.main-header-menu-toggle {
  width: 46px;
  height: 46px;
  border: 1px solid rgba(101,40,247,0.12);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(101,40,247,0.08), rgba(85,17,248,0.04));
  color: var(--eg-purple);
  box-shadow: 0 8px 24px rgba(15,23,42,0.08);
  transition: all 0.25s ease;
}

#ast-mobile-header .menu-toggle.main-header-menu-toggle:hover,
#ast-mobile-header .menu-toggle.main-header-menu-toggle:focus {
  background: linear-gradient(135deg, var(--eg-purple), var(--eg-purple-dark));
  color: #fff;
  border-color: transparent;
  outline: none;
}

/* mobile offcanvas / dropdown menu shell */
.ast-header-break-point .main-header-bar-navigation,
.ast-header-break-point .ast-builder-menu-mobile .main-navigation,
.ast-header-break-point .ast-mobile-popup-drawer .ast-mobile-popup-inner {
  background: #fff;
}

/* mobile menu items */
.ast-header-break-point .main-navigation .main-header-menu .menu-item > .menu-link {
  color: var(--eg-heading) !important;
  font-size: 15px;
  font-weight: 700;
  padding: 14px 18px !important;
  border-radius: 12px;
  transition: all 0.2s ease;
}

.ast-header-break-point .main-navigation .main-header-menu .menu-item > .menu-link:hover,
.ast-header-break-point .main-navigation .main-header-menu .menu-item.current-menu-item > .menu-link,
.ast-header-break-point .main-navigation .main-header-menu .menu-item.current_page_item > .menu-link {
  color: var(--eg-purple) !important;
  background: rgba(101,40,247,0.08);
}

/* mobile submenu wrappers */
.ast-header-break-point .main-navigation ul.sub-menu,
.ast-header-break-point .main-navigation .sub-menu {
  background: transparent;
  padding-left: 10px !important;
}

/* mobile submenu links */
.ast-header-break-point .main-navigation .sub-menu .menu-link {
  font-size: 14px;
  font-weight: 600;
  color: var(--eg-text) !important;
  background: #fff;
  border: 1px solid rgba(101,40,247,0.06);
  margin: 6px 0;
}

/* mobile submenu toggle buttons */
.ast-header-break-point .ast-menu-toggle {
  border-radius: 10px;
  color: var(--eg-purple);
}

.ast-header-break-point .ast-menu-toggle:focus,
.ast-header-break-point .ast-menu-toggle:hover {
  background: rgba(101,40,247,0.08);
  color: var(--eg-purple-dark);
}

/* accessibility focus */
#masthead a:focus,
#masthead button:focus {
  outline: 2px solid rgba(101,40,247,0.22);
  outline-offset: 2px;
  box-shadow: none;
}

/* prevent overlap issues */
#wpadminbar + #masthead .sticky-active {
  top: 32px;
}

@media (max-width: 782px) {
  #wpadminbar + #masthead .sticky-active {
    top: 46px;
  }
}

/* responsive fine tuning */
@media (max-width: 921px) {
  #masthead .custom-logo-link img.custom-logo {
    max-height: 42px;
  }

  #masthead .ast-primary-header-bar,
  #masthead .ast-primary-header-bar.sticky-active {
    padding: 8px 0;
  }
}

.ast-desktop:not(:has(.ast-header-sticked)) .ast-primary-header-bar .main-header-menu > .menu-item {
  line-height: 20px !important;
  margin-right: 5px;
}

/* End Header sticky */

.menu-item.menu-item-object-page {
  font-weight: 600;
  margin: 0 1px;
}

/* Target the phone menu item */
#menu-item-1724 > a.menu-link::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;             /* needed for solid icons */
  content: "\f879";             /* phone icon */
  display: inline-block;
  margin-right: 8px;
}
.hero-form .srfm-form-container .srfm-form-title {
  font-size: 2.2rem;
  text-align: center;
  color: var(--ast-global-color-2);
}
.hero-form .srfm-form {
  max-width: 90%;
  margin: auto;
}
.cert-logos {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 0;
}

.cert-logos img {
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
}

.cert-logos img:hover {
    transform: scale(1.05);
}

.primary-heading {
  color: var(--ast-global-color-1) !important;
}

.text-primary {
	color: var(--ast-global-color-1);
}

.text-secondary {
	color: #00A86B;
}
.font-semibold {
	font-weight: 600;
}

.text-light { color: var(--text-light) !important;}

.text-light li {
  color: var(--text-light) !important;
}

.text-light .il-prog-duration {
  color: var(--text-light) !important;
}

.text-light .il-prog-duration strong {
  color: var(--text-light) !important;
}
h2 em {
	font-style: normal;
  background: linear-gradient(135deg, var(--purple) 0%, var(--amber-rich) 60%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
/* Contact Form */

.contact-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
    max-width: 1200px;
    margin: 0 auto;
   /* padding: 40px 20px;*/
}

.contact-card {
    display: flex;
    gap: 16px;
    padding: 24px;
    border-radius: 16px;
    backdrop-filter: blur(20px);
    border: 1px solid rgba(101,40,247,0.1);
    transition: all 0.3s ease;
    background: rgba(255,255,255,0.9);
    box-shadow: 0 8px 32px rgba(0,0,0,0.08);
}

.contact-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 48px rgba(0,0,0,0.15);
}

.contact-card.location {
    border-left: 4px solid var(--purple);
    background: linear-gradient(135deg, var(--purple-light) 0%, rgba(255,255,255,0.8) 100%);
}

.contact-card.phone {
    border-left: 4px solid var(--teal);
    background: linear-gradient(135deg, var(--teal-light) 0%, rgba(255,255,255,0.8) 100%);
}

.contact-card.email {
    border-left: 4px solid var(--yellow);
    background: linear-gradient(135deg, var(--yellow-light) 0%, rgba(255,255,255,0.8) 100%);
}

.contact-card.hours {
    border-left: 4px solid var(--purple);
    background: linear-gradient(135deg, var(--purple-light) 0%, rgba(255,255,255,0.8) 100%);
}

.card-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}

.contact-card.location .card-icon { 
    background: var(--purple-light); 
    color: var(--purple); 
}

.contact-card.phone .card-icon { 
    background: var(--teal-light); 
    color: var(--teal); 
}

.contact-card.email .card-icon { 
    background: var(--yellow-light); 
    color: #E68900; 
}

.contact-card.hours .card-icon { 
    background: var(--purple-light); 
    color: var(--purple); 
}

.card-content h4 {
    margin: 0 0 12px 0;
    font-size: 16px;
    font-weight: 700;
    color: #0F172A;
}

.card-content p,
.card-content a {
    margin: 0;
    font-size: 15px;
    line-height: 1.6;
    color: #454F5E;
}

.card-content a {
    color: #454F5E;
    text-decoration: none;
}

.card-content a:hover {
    color: var(--purple);
}

@media (max-width: 768px) {
    .contact-cards {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

/* ---- LAYOUT ---- */
.dp-wrap { max-width: 1200px; margin: 0 auto; padding: 0; }
.dp-section { padding: 90px 24px 100px; }
.dp-light { background: #ffffff; }
.dp-alt   { background: linear-gradient(160deg, var(--ast-global-color-4) 0%, #ffffff 100%); }
.dp-dark  { background: var(--ast-global-color-2); }

.dp-sec-header {
  text-align: center;
  max-width: 740px;
  margin: 0 auto 56px;
}
.dp-sec-header.dark h2 { color: #fff; }
.dp-sec-header.dark p  { color: rgba(255,255,255,0.65); }

.dp-tag {
  display: inline-block;
  padding: 7px 16px;
  border-radius: 999px;
  background: rgba(101,40,247,0.10);
  color: var(--ast-global-color-0);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 14px;
}
.dp-tag.dark { background: rgba(255,255,255,0.1); color: var(--ast-global-color-6); }

.dp-sec-header h2 {
  font-size: 36px;
  font-weight: 800;
  color: var(--ast-global-color-2);
  margin: 0 0 14px;
  line-height: 1.2;
}
.dp-sec-header p {
  font-size: 17px;
  line-height: 1.7;
  color: var(--ast-global-color-3);
  margin: 0;
}

/* ---- HERO ---- */
.dp-hero {
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  min-height: 75vh;
  display: flex;
  align-items: flex-end;
  padding: 60px 24px 80px;
  position: relative;
}
.dp-hero-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(15,23,42,0.45) 0%, rgba(15,23,42,0.88) 100%);
  z-index: 1;
}
.dp-hero .dp-wrap { position: relative; z-index: 2; width: 100%; }

.dp-breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: rgba(255,255,255,0.72);
  margin-bottom: 32px;
  justify-content: center;
}
.dp-breadcrumb a { color: rgba(255,255,255,0.72); text-decoration: none; }
.dp-breadcrumb a:hover { color: #fff; }
.dp-breadcrumb i { font-size: 11px; color: rgba(255,255,255,0.4); }

.dp-hero-body {
  display: flex;
  align-items: center;
  gap: 28px;
  margin-bottom: 44px;
  justify-content: center;
}
.dp-flag {
  font-size: 84px;
  line-height: 1;
  filter: drop-shadow(0 8px 24px rgba(0,0,0,0.5));
}
.dp-hero-body h1 {
  font-size: clamp(40px, 7vw, 70px);
  font-weight: 900;
  line-height: 1.1;
  margin: 0 0 12px;
  color: rgba(255,255,255,0.95);
}
.dp-accent {
  background: linear-gradient(135deg, var(--ast-global-color-0), #a78bfa);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.dp-hero-body p {
  font-size: 20px;
  color: rgba(255,255,255,0.82);
  margin: 0;
  line-height: 1.6;
  max-width: 560px;
}

.dp-hero-stats {
  display: flex;
  align-items: center;
  gap: 0;
  background: rgba(255,255,255,0.09);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 20px;
  padding: 20px 32px;
  justify-content: center;
  flex-wrap: wrap;
}
.dp-hstat {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 28px;
  color: #fff;
}
.dp-hstat i { font-size: 24px; color: var(--ast-global-color-6); }
.dp-hstat strong { display: block; font-size: 22px; font-weight: 800; }
.dp-hstat span   { display: block; font-size: 13px; color: rgba(255,255,255,0.65); }
.dp-hstat-div { width: 1px; height: 46px; background: rgba(255,255,255,0.18); }

/* ---- OVERVIEW ---- */
.dp-overview-grid {
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 60px;
  align-items: start;
}
.dp-overview-text > p {
  font-size: 16px;
  line-height: 1.8;
  color: var(--ast-global-color-3);
  margin: 0 0 32px;
}
.dp-edu-levels {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.dp-edu-card {
  background: var(--ast-global-color-4);
  border-radius: 16px;
  padding: 20px 14px;
  text-align: center;
  border: 1px solid rgba(101,40,247,0.1);
  transition: transform 0.25s;
}
.dp-edu-card:hover { transform: translateY(-4px); }
.dp-edu-icon {
  width: 46px; height: 46px;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 18px; color: #fff;
  margin: 0 auto 12px;
  box-shadow: 0 6px 16px rgba(101,40,247,0.25);
}
.dp-edu-card h4 { font-size: 13px; font-weight: 700; color: var(--ast-global-color-2); margin: 0 0 6px; }
.dp-edu-card p  { font-size: 12px; color: var(--ast-global-color-3); margin: 0; }

.dp-overview-facts {
  background: var(--ast-global-color-2);
  border-radius: 22px;
  padding: 30px 28px;
  box-shadow: 0 16px 44px rgba(15,23,42,0.14);
}
.dp-overview-facts h3 { font-size: 20px; font-weight: 700; color: #fff; margin: 0 0 24px; }
.dp-facts-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 14px; }
.dp-facts-list li {
  display: flex; align-items: flex-start; gap: 12px;
  font-size: 14px; color: rgba(255,255,255,0.82);
}
.dp-facts-list li i { color: var(--ast-global-color-0); margin-top: 2px; flex-shrink: 0; }
.dp-facts-list li strong { color: rgba(255,255,255,0.95); }

/* ---- UNIVERSITIES ---- */
.dp-uni-list { display: flex; flex-direction: column; gap: 16px; }
.dp-uni-card {
  display: flex;
  align-items: center;
  gap: 24px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
  padding: 26px 28px;
  transition: background 0.28s, transform 0.28s;
}
.dp-uni-card:hover { background: rgba(101,40,247,0.14); transform: translateX(6px); }
.dp-uni-rank {
  font-size: 32px; font-weight: 900;
  background: linear-gradient(135deg, var(--ast-global-color-0), #a78bfa);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
  min-width: 48px; text-align: center;
}
.dp-uni-body { flex: 1; }
.dp-uni-body h4 { font-size: 17px; font-weight: 700; color: #fff; margin: 0 0 6px; }
.dp-uni-loc { font-size: 13px; color: rgba(255,255,255,0.5); display: block; margin-bottom: 10px; }
.dp-uni-loc i { margin-right: 6px; }
.dp-uni-body p { font-size: 14px; color: rgba(255,255,255,0.68); margin: 0 0 12px; line-height: 1.6; }
.dp-uni-tags { display: flex; gap: 7px; flex-wrap: wrap; }
.dp-uni-tags span {
  padding: 4px 11px;
  background: rgba(101,40,247,0.28);
  color: var(--ast-global-color-6);
  border-radius: 999px;
  font-size: 11px; font-weight: 600;
}
.dp-uni-meta { display: flex; flex-direction: column; gap: 10px; min-width: 130px; text-align: right; }
.dp-uni-stat strong { display: block; font-size: 11px; color: rgba(255,255,255,0.45); text-transform: uppercase; letter-spacing: 0.04em; }
.dp-uni-stat span   { font-size: 15px; font-weight: 700; color: #34d399; }

/* ---- COURSES ---- */
.dp-courses-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.dp-course-card {
  background: var(--ast-global-color-5);
  border-radius: 22px;
  padding: 28px 22px 24px;
  border: 1px solid rgba(101,40,247,0.08);
  box-shadow: 0 10px 32px rgba(15,23,42,0.06);
  transition: transform 0.28s, box-shadow 0.28s;
  position: relative; overflow: hidden;
}
.dp-course-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, var(--ast-global-color-0), var(--ast-global-color-1));
}
.dp-course-card:hover { transform: translateY(-7px); box-shadow: 0 22px 52px rgba(15,23,42,0.12); }
.dp-course-icon {
  width: 54px; height: 54px; border-radius: 16px;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px; color: #fff; margin-bottom: 18px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.18);
}
.dp-course-card h4 { font-size: 17px; font-weight: 700; color: var(--ast-global-color-2); margin: 0 0 10px; }
.dp-course-card p  { font-size: 14px; line-height: 1.65; color: var(--ast-global-color-3); margin: 0 0 18px; }
.dp-course-footer { display: flex; gap: 16px; flex-wrap: wrap; }
.dp-course-footer span { font-size: 12px; color: var(--ast-global-color-0); font-weight: 600; }
.dp-course-footer i {
  margin-right: 5px;
  background-color: #e2e1ff;
  padding: 5px;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  text-align: center;
  line-height: 10px;
}

/* ---- ADMISSION ---- */
.dp-admission-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
  margin-bottom: 44px;
}
.dp-admit-card {
  background: var(--ast-global-color-5);
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 12px 36px rgba(15,23,42,0.08);
  border: 1px solid rgba(101,40,247,0.08);
}
.dp-admit-header {
  display: flex; align-items: center; gap: 14px;
  padding: 22px 24px; color: #fff;
}
.dp-admit-header i { font-size: 22px; }
.dp-admit-header h3 { margin: 0; font-size: 17px; font-weight: 700; color: #fff;}
.ug  { background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1)); }
.pg  { background: linear-gradient(135deg, #0ea5e9, #0284c7); }
.phd { background: linear-gradient(135deg, #10b981, #059669); }
.dp-req-list { list-style: none; padding: 20px 24px; margin: 0; display: grid; gap: 12px; }
.dp-req-list li { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; color: var(--ast-global-color-2); }
.dp-req-list li i { color: var(--ast-global-color-0); font-size: 13px; margin-top: 2px; flex-shrink: 0; }

.dp-intake-strip {
  background: var(--ast-global-color-5);
  border-radius: 22px;
  padding: 30px 32px;
  border: 1px solid rgba(101,40,247,0.08);
  box-shadow: 0 10px 28px rgba(15,23,42,0.06);
}
.dp-intake-strip h3 { font-size: 22px; font-weight: 700; color: var(--ast-global-color-2); margin: 0 0 22px; }
.dp-intakes { display: flex; gap: 16px; flex-wrap: wrap; }
.dp-intake {
  flex: 1; min-width: 200px;
  padding: 22px 24px;
  border-radius: 18px;
  background: var(--ast-global-color-4);
  border: 1px solid rgba(101,40,247,0.1);
  position: relative;
}
.dp-intake.primary {
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  border: none;
}
.dp-intake strong { display: block; font-size: 17px; font-weight: 800; color: var(--ast-global-color-2); margin-bottom: 6px; }
.dp-intake.primary strong { color: #fff; }
.dp-intake span { font-size: 13px; color: var(--ast-global-color-3); }
.dp-intake.primary span { color: rgba(255,255,255,0.82); }
.dp-intake-best {
  display: inline-block; margin-top: 14px;
  padding: 6px 14px; border-radius: 999px;
  background: rgba(255,255,255,0.2); color: #fff;
  font-size: 12px; font-weight: 700;
}

/* ---- VISA ---- */
.dp-visa-wrap { display: grid; grid-template-columns: 1fr 380px; gap: 60px; align-items: start; }
.dp-visa-steps { display: flex; flex-direction: column; }
.dp-vstep { display: flex; gap: 20px; align-items: flex-start; }
.dp-vstep-num {
  width: 46px; height: 46px; min-width: 46px; border-radius: 50%;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  color: #fff; display: flex; align-items: center; justify-content: center;
  font-size: 18px; font-weight: 800;
  box-shadow: 0 8px 20px rgba(101,40,247,0.30);
}
.dp-vstep-body { padding-bottom: 4px; }
.dp-vstep-body h4 { font-size: 16px; font-weight: 700; color: #fff; margin: 6px 0 8px; }
.dp-vstep-body p  { font-size: 14px; color: rgba(255,255,255,0.65); margin: 0; line-height: 1.6; }
.dp-vstep-line { width: 2px; height: 32px; background: linear-gradient(180deg, var(--ast-global-color-0), rgba(101,40,247,0.15)); margin-left: 22px; border-radius: 2px; }

.dp-visa-info { display: flex; flex-direction: column; gap: 20px; }
.dp-vinfo-card {
  background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08);
  border-radius: 18px; padding: 24px;
}
.dp-vinfo-card h3 { font-size: 18px; font-weight: 700; color: #fff; margin: 0 0 18px; }
.dp-vfee-row {
  display: flex; justify-content: space-between; align-items: center;
  padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,0.07);
  font-size: 14px; color: rgba(255,255,255,0.8);
}
.dp-vfee-row:last-child { border-bottom: none; }
.dp-vfee-row i { margin-right: 8px; color: var(--ast-global-color-6); }
.dp-vfee-val { font-weight: 700; color: #34d399; }
.dp-doc-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.dp-doc-list li { display: flex; align-items: center; gap: 10px; font-size: 14px; color: rgba(255,255,255,0.8); }
.dp-doc-list li i { color: var(--ast-global-color-0); font-size: 12px; }

/* ---- COSTS ---- */
.dp-cost-wrap { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: start; }
.dp-cost-table-block h3,
.dp-scholarships-block h3 { font-size: 22px; font-weight: 700; color: var(--ast-global-color-2); margin: 0 0 22px; }
.dp-cost-table {
  background: var(--ast-global-color-5); border-radius: 20px;
  overflow: hidden; box-shadow: 0 12px 36px rgba(15,23,42,0.08);
  border: 1px solid rgba(101,40,247,0.08);
}
.dp-cost-row {
  display: flex; justify-content: space-between; align-items: center;
  padding: 16px 24px; border-bottom: 1px solid rgba(101,40,247,0.06);
}
.dp-cost-row:last-child { border-bottom: none; }
.dp-cost-label { display: flex; align-items: center; gap: 12px; font-size: 15px; color: var(--ast-global-color-2); }
.dp-cost-label i { color: var(--ast-global-color-0); width: 16px; text-align: center; }
.dp-cost-range { font-weight: 700; color: var(--ast-global-color-0); font-size: 15px; }
.dp-cost-total { background: linear-gradient(135deg, rgba(101,40,247,0.07), rgba(85,17,248,0.04)); }
.dp-cost-total .dp-cost-label,
.dp-cost-total .dp-cost-range { font-weight: 800; font-size: 16px; }
.dp-scholar-list { display: flex; flex-direction: column; gap: 16px; }
.dp-scholar-item {
  display: flex; gap: 16px;
  background: var(--ast-global-color-5); border-radius: 16px; padding: 18px 20px;
  border: 1px solid rgba(101,40,247,0.08); box-shadow: 0 6px 20px rgba(15,23,42,0.05);
  transition: transform 0.25s;
}
.dp-scholar-item:hover { transform: translateX(6px); }
.dp-scholar-icon {
  width: 42px; height: 42px; min-width: 42px;
  background: linear-gradient(135deg, #f59e0b, #d97706);
  border-radius: 12px; display: flex; align-items: center; justify-content: center;
  font-size: 16px; color: #fff; box-shadow: 0 6px 14px rgba(245,158,11,0.3);
}
.dp-scholar-item h4 { font-size: 15px; font-weight: 700; color: var(--ast-global-color-2); margin: 0 0 5px; }
.dp-scholar-item p  { font-size: 13px; color: var(--ast-global-color-3); margin: 0 0 8px; line-height: 1.5; }
.dp-scholar-tag {
  display: inline-block; padding: 4px 10px; border-radius: 999px;
  background: rgba(16,185,129,0.1); color: #059669;
  font-size: 11px; font-weight: 700;
}

/* ---- WORK ---- */
.dp-work-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin-bottom: 48px; }
.dp-work-card {
  background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px; padding: 26px 20px;
  transition: transform 0.28s, background 0.28s;
}
.dp-work-card:hover { background: rgba(101,40,247,0.14); transform: translateY(-6px); }
.dp-work-icon {
  width: 54px; height: 54px; border-radius: 16px;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px; color: #fff; margin-bottom: 18px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.2);
}
.dp-work-card h4 { font-size: 16px; font-weight: 700; color: #fff; margin: 0 0 10px; }
.dp-work-card p  { font-size: 14px; color: rgba(255,255,255,0.65); margin: 0 0 16px; line-height: 1.65; }
.dp-work-tag {
  display: inline-block; padding: 6px 14px; border-radius: 999px;
  background: rgba(101,40,247,0.3); color: var(--ast-global-color-6);
  font-size: 12px; font-weight: 700;
}
.dp-avg-salary { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 20px; padding: 32px; }
.dp-avg-salary h3 { font-size: 20px; font-weight: 700; color: #fff; margin: 0 0 24px; }
.dp-salary-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.dp-salary-item {
  background: rgba(255,255,255,0.05); border-radius: 14px; padding: 16px 18px;
  display: flex; flex-direction: column; gap: 6px;
}
.dp-salary-field { font-size: 13px; color: rgba(255,255,255,0.6); font-weight: 600; }
.dp-salary-val   { font-size: 16px; font-weight: 800; color: #34d399; }

/* ---- STUDENT LIFE ---- */
.dp-life-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.dp-life-card {
  background: var(--ast-global-color-5); border-radius: 22px; padding: 30px 24px;
  border: 1px solid rgba(101,40,247,0.08); box-shadow: 0 10px 32px rgba(15,23,42,0.06);
  transition: transform 0.28s, box-shadow 0.28s; position: relative; overflow: hidden;
}
.dp-life-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, var(--ast-global-color-0), var(--ast-global-color-1));
}
.dp-life-card:hover { transform: translateY(-7px); box-shadow: 0 22px 52px rgba(15,23,42,0.12); }
.dp-life-icon {
  width: 56px; height: 56px; border-radius: 16px;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  display: flex; align-items: center; justify-content: center;
  font-size: 22px; color: #fff; margin-bottom: 18px;
  box-shadow: 0 8px 20px rgba(101,40,247,0.28);
}
.dp-life-card h4 { font-size: 17px; font-weight: 700; color: var(--ast-global-color-2); margin: 0 0 10px; }
.dp-life-card p  { font-size: 14px; color: var(--ast-global-color-3); margin: 0; line-height: 1.7; }

/* ---- CTA SECTION ---- */
.dp-cta-section {
  padding: 90px 24px 100px;
  background: linear-gradient(135deg, var(--ast-global-color-7) 0%, var(--ast-global-color-2) 100%);
  position: relative; overflow: hidden;
}
.dp-cta-section::before {
  content: ''; position: absolute; top: -80px; left: -60px;
  width: 420px; height: 420px;
  background: radial-gradient(circle, rgba(101,40,247,0.25), transparent 65%);
  pointer-events: none;
}
.dp-cta-section::after {
  content: ''; position: absolute; bottom: -80px; right: -40px;
  width: 380px; height: 380px;
  background: radial-gradient(circle, rgba(85,17,248,0.2), transparent 65%);
  pointer-events: none;
}
.dp-cta-inner {
  display: grid; grid-template-columns: 1fr 420px;
  gap: 80px; align-items: center; position: relative; z-index: 2;
}
.dp-cta-flag { font-size: 72px; margin-bottom: 18px; }
.dp-cta-text h2 { font-size: 40px; font-weight: 800; color: #fff; margin: 0 0 14px; line-height: 1.2; }
.dp-cta-text p  { font-size: 17px; color: rgba(255,255,255,0.72); margin: 0 0 28px; line-height: 1.7; }
.dp-cta-perks { list-style: none; padding: 0; margin: 0 0 32px; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.dp-cta-perks li { display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 600; color: rgba(255,255,255,0.88); }
.dp-cta-perks li i { color: var(--ast-global-color-0); font-size: 16px; }
.dp-cta-contact { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.dp-call-btn {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 14px 26px; border-radius: 999px;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  color: #fff; font-size: 15px; font-weight: 700; text-decoration: none;
  box-shadow: 0 10px 28px rgba(101,40,247,0.35);
  transition: transform 0.25s, box-shadow 0.25s;
}
.dp-call-btn:hover { transform: translateY(-3px); box-shadow: 0 18px 40px rgba(101,40,247,0.45); color: #fff; }
.dp-cta-time { font-size: 14px; color: rgba(255,255,255,0.6); display: flex; align-items: center; gap: 8px; }

.dp-form-card {
  background: var(--ast-global-color-5); border-radius: 24px; padding: 36px 30px;
  box-shadow: 0 32px 80px rgba(0,0,0,0.45); position: relative; overflow: hidden;
}
.dp-form-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, var(--ast-global-color-0), var(--ast-global-color-1));
}
.dp-form-header { text-align: center; margin-bottom: 24px; }
.dp-form-icon {
  width: 58px; height: 58px;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  border-radius: 18px; display: flex; align-items: center; justify-content: center;
  font-size: 22px; color: #fff; margin: 0 auto 14px;
  box-shadow: 0 10px 24px rgba(101,40,247,0.30);
}
.dp-form-header h3 { font-size: 22px; font-weight: 800; color: var(--ast-global-color-2); margin: 0 0 6px; }
.dp-form-header p  { font-size: 14px; color: var(--ast-global-color-3); margin: 0; }

/* ---- RESPONSIVE ---- */
@media (max-width:1100px) {
  .dp-overview-grid { grid-template-columns: 1fr; gap: 40px; }
  .dp-edu-levels { grid-template-columns: repeat(2, 1fr); }
  .dp-visa-wrap,
  .dp-cost-wrap { grid-template-columns: 1fr; gap: 44px; }
  .dp-cta-inner { grid-template-columns: 1fr; gap: 50px; }
  .dp-work-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width:900px) {
  .dp-courses-grid,
  .dp-life-grid    { grid-template-columns: repeat(2, 1fr); }
  .dp-admission-grid { grid-template-columns: 1fr; }
  .dp-why-grid { grid-template-columns: repeat(2, 1fr); }
  .dp-uni-card { flex-direction: column; align-items: flex-start; }
  .dp-uni-meta { flex-direction: row; justify-content: flex-start; gap: 20px; }
  .dp-salary-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width:640px) {
  .dp-section { padding: 70px 16px 80px; }
  .dp-hero { padding: 90px 16px 60px; min-height: 70vh; background-attachment: scroll; }
  .dp-hero-body { flex-direction: column; align-items: flex-start; }
  .dp-flag { font-size: 60px; }
  .dp-hero-stats { flex-direction: column; padding: 20px; width: 100%; }
  .dp-hstat-div { width: 100%; height: 1px; }
  .dp-courses-grid,
  .dp-work-grid,
  .dp-life-grid  { grid-template-columns: 1fr; }
  .dp-edu-levels { grid-template-columns: repeat(2, 1fr); }
  .dp-intakes    { flex-direction: column; }
  .dp-salary-grid { grid-template-columns: 1fr; }
  .dp-cta-perks  { grid-template-columns: 1fr; }
  .dp-sec-header h2 { font-size: 28px; }
}


/* ── IELTS Page Variables ──────────────────────────── */
:root {

}

/* ── Utility ────────────────────────────────────────── */
.il-wrap { max-width: 1160px; margin: 0 auto; padding: 0 24px; }
.il-tag {
  display: inline-block;
  background: var(--ielts-soft);
  color: var(--ielts-purple);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 6px 16px;
  border-radius: 100px;
  margin-bottom: 16px;
}
.il-tag.dark { background: rgba(101,40,247,0.25); color: #c4b5fd; }
.il-sec-hd { text-align: center; margin-bottom: 56px; }
.il-sec-hd h2 { font-size: 36px; font-weight: 800; color: var(--ielts-heading); margin: 0 0 14px; line-height: 1.2; }
.il-sec-hd.dark h2 { color: var(--ielts-white); }
.il-sec-hd p { font-size: 17px; color: var(--ielts-text); max-width: 680px; margin: 0 auto; line-height: 1.7; }
.il-sec-hd.dark p { color: rgba(255,255,255,0.7); }
.il-accent { color: var(--ielts-purple); }

/* ── Hero ───────────────────────────────────────────── */
.il-hero {
  background: linear-gradient(135deg, #0D0614 0%, #1a0533 50%, #0F172A 100%);
  padding: 90px 0 80px;
  position: relative;
  overflow: hidden;
}
.il-hero::before {
  content:'';
  position:absolute;
  top:-120px; right:-120px;
  width:520px; height:520px;
  background: radial-gradient(circle, rgba(101,40,247,0.3) 0%, transparent 70%);
  border-radius:50%;
  pointer-events:none;
}
.il-hero::after {
  content:'';
  position:absolute;
  bottom:-80px; left:-80px;
  width:360px; height:360px;
  background: radial-gradient(circle, rgba(85,17,248,0.2) 0%, transparent 70%);
  border-radius:50%;
  pointer-events:none;
}
.il-hero-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
  position: relative;
  z-index: 2;
}
.il-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(101,40,247,0.3);
  border: 1px solid rgba(101,40,247,0.5);
  color: #c4b5fd;
  font-size: 13px;
  font-weight: 600;
  padding: 7px 18px;
  border-radius: 100px;
  margin-bottom: 24px;
}
.il-hero h1 {
  font-size: 48px;
  font-weight: 900;
  color: var(--ielts-white);
  line-height: 1.15;
  margin: 0 0 20px;
}
.il-hero h1 span { color: #a78bfa; }
.il-hero p {
  font-size: 18px;
  color: rgba(255,255,255,0.75);
  line-height: 1.7;
  margin: 0 0 36px;
}
.il-hero-btns { display: flex; gap: 14px; flex-wrap: wrap; }
.il-btn-primary {
  background: linear-gradient(135deg, var(--ielts-purple), var(--ielts-purple-dark));
  color: #fff;
  padding: 14px 32px;
  border-radius: 100px;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: none;
  cursor: pointer;
  box-shadow: 0 8px 32px rgba(101,40,247,0.35);
  transition: all 0.3s;
}
.il-btn-primary:hover { transform: translateY(-2px); box-shadow: 0 12px 40px rgba(101,40,247,0.5); color:#FFFFFF; }
.il-btn-outline {
  background: transparent;
  color: #fff;
  padding: 14px 32px;
  border-radius: 100px;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 2px solid rgba(255,255,255,0.3);
  cursor: pointer;
  transition: all 0.3s;
}
.il-btn-outline:hover { border-color: #fff; background: rgba(255,255,255,0.08); }
.il-hero-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 40px;
}
.il-hstat {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 16px;
  padding: 20px;
  text-align: center;
  backdrop-filter: blur(10px);
}
.il-hstat strong { display:block; font-size:28px; font-weight:900; color:#a78bfa; }
.il-hstat span { font-size:12px; color:rgba(255,255,255,0.6); margin-top:4px; display:block; }

/* Hero Right — Animated Score Card */
.il-hero-card {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 28px;
  padding: 36px;
  backdrop-filter: blur(20px);
}
.il-hero-card h3 { font-size:16px; color:rgba(255,255,255,0.6); font-weight:600; margin:0 0 28px; text-transform:uppercase; letter-spacing:1px; }
.il-skill-row { margin-bottom: 20px; }
.il-skill-label { display:flex; justify-content:space-between; margin-bottom:8px; }
.il-skill-label span { font-size:14px; color:rgba(255,255,255,0.85); font-weight:600; }
.il-skill-label strong { font-size:14px; color:#a78bfa; }
.il-skill-bar { background:rgba(255,255,255,0.1); border-radius:100px; height:8px; overflow:hidden; }
.il-skill-fill { height:100%; border-radius:100px; background:linear-gradient(90deg,var(--ielts-purple),#a78bfa); }
.il-score-total {
  margin-top:28px;
  background:linear-gradient(135deg,rgba(101,40,247,0.3),rgba(85,17,248,0.3));
  border:1px solid rgba(101,40,247,0.5);
  border-radius:16px;
  padding:20px 24px;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.il-score-total span { font-size:15px; color:rgba(255,255,255,0.8); font-weight:600; }
.il-score-total strong { font-size:36px; font-weight:900; color:#a78bfa; }

/* ── Section Base ───────────────────────────────────── */
.il-section { padding: 90px 0; }
.il-section.il-light { background: #fff; }
.il-section.il-soft { background: var(--ielts-soft); }
.il-section.il-dark {
  background: linear-gradient(135deg, var(--ielts-bg-dark) 0%, var(--ielts-bg-mid) 100%);
}

/* ── SECTION A: What is IELTS ───────────────────────── */
.il-what-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: start;
}
.il-what-text h3 { font-size: 22px; font-weight: 800; color: var(--ielts-heading); margin: 0 0 16px; }
.il-what-text p { font-size:15px; color:var(--ielts-text); line-height:1.8; margin:0 0 20px; }
.il-format-tabs { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:28px; }
.il-format-tab {
  background: var(--ielts-soft);
  border: 2px solid var(--ielts-border);
  border-radius: 100px;
  padding: 8px 20px;
  font-size:13px;
  font-weight:700;
  color: var(--ielts-purple);
  cursor:pointer;
}
.il-format-tab.active {
  background: var(--ielts-purple);
  color: #fff;
  border-color: var(--ielts-purple);
}

/* Four Skill Cards */
.il-skills-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.il-skill-card {
  border-radius: 18px;
  padding: 24px;
  position: relative;
  overflow: hidden;
}
.il-skill-card::before {
  content:'';
  position:absolute;
  top:0; right:0;
  width:80px; height:80px;
  background:rgba(255,255,255,0.1);
  border-radius:50%;
  transform:translate(20px,-20px);
}
.il-skill-card.listening { background:linear-gradient(135deg,#6528F7,#5511F8); }
.il-skill-card.reading { background:linear-gradient(135deg,#0ea5e9,#0284c7); }
.il-skill-card.writing { background:linear-gradient(135deg,#10b981,#059669); }
.il-skill-card.speaking { background:linear-gradient(135deg,#f59e0b,#d97706); }
.il-skill-card .sk-icon { font-size:28px; margin-bottom:12px; display:block; }
.il-skill-card h4 { font-size:16px; font-weight:800; color:#fff; margin:0 0 6px; }
.il-skill-card .sk-time { font-size:12px; color:rgba(255,255,255,0.75); font-weight:600; margin-bottom:8px; display:block; }
.il-skill-card p { font-size:13px; color:rgba(255,255,255,0.85); line-height:1.6; margin:0; }

/* Band Score Table */
.il-band-section { margin-top:24px; }
.il-band-title { font-size:18px; font-weight:800; color:var(--ielts-heading); margin:0 0 20px; }
.il-band-list { display:flex; flex-direction:column; gap:10px; }
.il-band-item {
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 18px;
  border-radius:14px;
  background:#fff;
  border:1px solid var(--ielts-border);
}
.il-band-score {
  width:80px; height:44px;
  border-radius:12px;
  display:flex; align-items:center; justify-content:center;
  font-size:18px; font-weight:900; color:#fff;
  flex-shrink:0;
}
.il-band-item:nth-child(1) .il-band-score { background:linear-gradient(135deg,#6528F7,#5511F8); }
.il-band-item:nth-child(2) .il-band-score { background:linear-gradient(135deg,#0ea5e9,#0284c7); }
.il-band-item:nth-child(3) .il-band-score { background:linear-gradient(135deg,#10b981,#059669); }
.il-band-item:nth-child(4) .il-band-score { background:linear-gradient(135deg,#f59e0b,#d97706); }
.il-band-item:nth-child(5) .il-band-score { background:linear-gradient(135deg,#ef4444,#dc2626); }
.il-band-info h5 { font-size:14px; font-weight:800; color:var(--ielts-heading); margin:0 0 2px; }
.il-band-info p { font-size:12px; color:var(--ielts-text); margin:0; }

/* Academic vs General */
.il-types-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:36px; }
.il-type-card {
  border-radius:20px;
  padding:28px;
  border:2px solid transparent;
}
.il-type-card.academic {
  background:linear-gradient(135deg,rgba(101,40,247,0.06),rgba(85,17,248,0.06));
  border-color:rgba(101,40,247,0.2);
}
.il-type-card.general {
  background:linear-gradient(135deg,rgba(14,165,233,0.06),rgba(2,132,199,0.06));
  border-color:rgba(14,165,233,0.2);
}
.il-type-icon { font-size:36px; margin-bottom:14px; display:block; }
.il-type-card h4 { font-size:18px; font-weight:800; color:var(--ielts-heading); margin:0 0 8px; }
.il-type-card .il-type-for { font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:1px; padding:4px 12px; border-radius:100px; display:inline-block; margin-bottom:12px; }
.academic .il-type-for { background:rgba(101,40,247,0.1); color:var(--ielts-purple); }
.general .il-type-for { background:rgba(14,165,233,0.1); color:#0284c7; }
.il-type-card p { font-size:13px; color:var(--ielts-text); line-height:1.7; margin:0 0 14px; }
.il-type-list { list-style:none; padding:0; margin:0; }
.il-type-list li { font-size:13px; color:var(--ielts-text); padding:4px 0; display:flex; align-items:center; gap:8px; }
.il-type-list li i { color:var(--ielts-purple); font-size:11px; }

/* ── SECTION B: Preparation Programs ───────────────── */
.il-prog-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.il-prog-card {
  background:#fff;
  border-radius:24px;
  padding:32px;
  border:2px solid var(--ielts-border);
  position:relative;
  overflow:hidden;
  transition:all 0.3s;
}
.il-prog-card:hover { border-color:var(--ielts-purple); box-shadow:0 20px 60px rgba(101,40,247,0.12); transform:translateY(-4px); }
.il-prog-card.featured {
  border-color:var(--ielts-purple);
  background:linear-gradient(135deg,rgba(101,40,247,0.03),rgba(85,17,248,0.03));
}
.il-prog-card.featured::before {
  content:'Most Popular';
  position:absolute;
  top:20px; right:-30px;
  background:linear-gradient(135deg,var(--ielts-purple),var(--ielts-purple-dark));
  color:#fff;
  font-size:11px;
  font-weight:800;
  padding:6px 42px;
  transform:rotate(45deg);
  letter-spacing:1px;
}
.il-prog-icon {
  width:56px; height:56px;
  border-radius:16px;
  display:flex; align-items:center; justify-content:center;
  font-size:24px;
  margin-bottom:20px;
}
.il-prog-card h4 { font-size:20px; font-weight:800; color:var(--ast-global-color-0); margin:0 0 8px; }
.il-prog-card .il-prog-tagline { font-size:13px; color:var(--ielts-purple); font-weight:700; margin:0 0 14px; }
.il-prog-card p { font-size:14px; color:var(--ielts-text); line-height:1.7; margin:0 0 20px; }
.il-prog-features { list-style:none; padding:0; margin:0 0 24px; display:flex; flex-direction:column; gap:8px; }
.il-prog-features li { display:flex; align-items:center; gap:10px; font-size:13px; color:var(--ielts-text); }
.il-prog-features li i { color:var(--ielts-green); font-size:12px; }
.il-prog-footer {
  display:flex; justify-content:space-between; align-items:center;
  padding-top:20px;
  border-top:1px solid var(--ielts-border);
}
.il-prog-duration { font-size:13px; color:var(--ielts-text); }
.il-prog-duration strong { color:var(--ielts-heading); }
.il-prog-btn {
  background:linear-gradient(135deg,var(--ielts-purple),var(--ielts-purple-dark));
  color:#fff;
  padding:10px 22px;
  border-radius:100px;
  font-size:13px;
  font-weight:700;
  text-decoration:none;
  border:none;
  cursor:pointer;
  transition:all 0.3s;
}
.il-prog-btn:hover { opacity:0.9; transform:translateY(-1px); color: var(--teal-light);}
.il-prog-btn.outline {
  background:transparent;
  color:var(--ielts-purple);
  border:2px solid var(--ielts-purple);
}
.il-prog-btn.outline:hover { background:var(--ielts-purple); color:#fff; }

/* Testimonials */
.il-testi-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:64px; }
.il-testi-card {
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:20px;
  padding:24px;
}
.il-testi-stars { color:#fbbf24; font-size:13px; margin-bottom:14px; }
.il-testi-card p { font-size:13px; color:rgba(255,255,255,0.8); line-height:1.7; margin:0 0 20px; font-style:italic; }
.il-testi-author { display:flex; align-items:center; gap:12px; }
.il-testi-avatar {
  width:40px; height:40px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--ielts-purple),var(--ielts-purple-dark));
  display:flex; align-items:center; justify-content:center;
  font-size:15px; font-weight:800; color:#fff;
  flex-shrink:0;
}
.il-testi-info h5 { font-size:13px; font-weight:800; color:#fff; margin:0; }
.il-testi-info span { font-size:12px; color:rgba(255,255,255,0.5); }

/* ── SECTION C: Registration Assistance ────────────── */
.il-reg-wrap { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }

/* Left — Steps */
.il-reg-steps { display:flex; flex-direction:column; gap:0; }
.il-reg-step { display:flex; gap:20px; padding-bottom:32px; position:relative; }
.il-reg-step:not(:last-child)::after {
  content:'';
  position:absolute;
  left:19px; top:48px;
  width:2px;
  height:calc(100% - 16px);
  background:linear-gradient(to bottom, var(--ielts-purple), transparent);
}
.il-reg-num {
  width:40px; height:40px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--ielts-purple),var(--ielts-purple-dark));
  color:#fff;
  font-size:15px;
  font-weight:900;
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
  box-shadow:0 4px 16px rgba(101,40,247,0.35);
}
.il-reg-body h4 { font-size:16px; font-weight:800; color:var(--ielts-heading); margin:0 0 6px; }
.il-reg-body p { font-size:13px; color:var(--ielts-text); line-height:1.7; margin:0; }

/* Right — Panels */
.il-reg-panels { display:flex; flex-direction:column; gap:20px; }
.il-fee-card {
  background:#fff;
  border:2px solid var(--ielts-border);
  border-radius:20px;
  padding:28px;
}
.il-fee-card h3 { font-size:17px; font-weight:800; color:var(--ielts-heading); margin:0 0 20px; display:flex; align-items:center; gap:10px; }
.il-fee-card h3 i { color:var(--ielts-purple); }
.il-fee-row {
  display:flex; justify-content:space-between; align-items:center;
  padding:12px 0;
  border-bottom:1px solid var(--ielts-border);
  font-size:13px;
}
.il-fee-row:last-child { border-bottom:none; }
.il-fee-row span { color:var(--ielts-text); display:flex; align-items:center; gap:8px; }
.il-fee-row span i { color:var(--ielts-purple); width:16px; }
.il-fee-val { font-weight:800; color:var(--ielts-heading); }
.il-provider-card {
  background:#fff;
  border:2px solid var(--ielts-border);
  border-radius:20px;
  padding:28px;
}
.il-provider-card h3 { font-size:17px; font-weight:800; color:var(--ielts-heading); margin:0 0 20px; display:flex; align-items:center; gap:10px; }
.il-provider-card h3 i { color:var(--ielts-purple); }
.il-providers { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.il-provider-item {
  border:2px solid var(--ielts-border);
  border-radius:14px;
  padding:16px;
  text-align:center;
}
.il-provider-item .prov-icon { font-size:24px; margin-bottom:8px; }
.il-provider-item h5 { font-size:13px; font-weight:800; color:var(--ielts-heading); margin:0 0 4px; }
.il-provider-item p { font-size:11px; color:var(--ielts-text); margin:0; }

/* Documents needed */
.il-docs-card {
  background:linear-gradient(135deg,rgba(101,40,247,0.06),rgba(85,17,248,0.04));
  border:2px solid rgba(101,40,247,0.15);
  border-radius:20px;
  padding:28px;
}
.il-docs-card h3 { font-size:17px; font-weight:800; color:var(--ielts-heading); margin:0 0 18px; display:flex; align-items:center; gap:10px; }
.il-docs-card h3 i { color:var(--ielts-purple); }
.il-doc-list { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.il-doc-list li { display:flex; align-items:center; gap:8px; font-size:13px; color:var(--ielts-text); }
.il-doc-list li i { color:var(--ielts-green); font-size:11px; }

/* ── FAQ ────────────────────────────────────────────── */
.il-faq-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.il-faq-item {
  background:#fff;
  border:2px solid var(--ielts-border);
  border-radius:18px;
  padding:24px;
}
.il-faq-item h4 { font-size:15px; font-weight:800; color:var(--ielts-heading); margin:0 0 10px; display:flex; gap:12px; }
.il-faq-item h4 span { color:var(--ielts-purple); flex-shrink:0; }
.il-faq-item p { font-size:13px; color:var(--ielts-text); line-height:1.7; margin:0; }

/* ── Final CTA ──────────────────────────────────────── */
.il-cta-section {
  background:linear-gradient(135deg,var(--ielts-purple),var(--ielts-purple-dark));
  padding:80px 0;
  text-align:center;
  position:relative;
  overflow:hidden;
}
.il-cta-section::before {
  content:'';
  position:absolute;
  top:-80px; left:50%;
  transform:translateX(-50%);
  width:600px; height:600px;
  background:radial-gradient(circle,rgba(255,255,255,0.08) 0%,transparent 70%);
  border-radius:50%;
  pointer-events:none;
}
.il-cta-inner { position:relative; z-index:2; }
.il-cta-inner h2 { font-size:40px; font-weight:900; color:#fff; margin:0 0 16px; }
.il-cta-inner p { font-size:18px; color:rgba(255,255,255,0.85); margin:0 0 36px; }
.il-cta-btns { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }
.il-cta-white {
  background:#fff;
  color:var(--ielts-purple);
  padding:15px 36px;
  border-radius:100px;
  font-size:16px;
  font-weight:800;
  text-decoration:none;
  display:inline-flex; align-items:center; gap:8px;
  border:none; cursor:pointer;
  transition:all 0.3s;
}
.il-cta-white:hover { transform:translateY(-2px); box-shadow:0 12px 40px rgba(0,0,0,0.2); }
.il-cta-ghost {
  background:transparent;
  color:#fff;
  padding:15px 36px;
  border-radius:100px;
  font-size:16px;
  font-weight:800;
  text-decoration:none;
  display:inline-flex; align-items:center; gap:8px;
  border:2px solid rgba(255,255,255,0.5);
  cursor:pointer;
  transition:all 0.3s;
}
.il-cta-ghost:hover { border-color:#fff; background:rgba(255,255,255,0.1); }

/* ── Responsive ─────────────────────────────────────── */
@media (max-width:900px) {
  .il-hero-inner, .il-what-grid, .il-reg-wrap, .il-types-grid { grid-template-columns:1fr; }
  .il-hero h1 { font-size:32px; }
  .il-sec-hd h2 { font-size:26px; }
  .il-prog-grid, .il-testi-grid { grid-template-columns:1fr; }
  .il-faq-grid { grid-template-columns:1fr; }
  .il-doc-list { grid-template-columns:1fr; }
  .il-hero-card { display:none; }
  .il-cta-inner h2 { font-size:28px; }
}

/* ── TOEFL Page Variables ──────────────────────────── */

/* ── Utility ────────────────────────────────────────── */
.tf-wrap { max-width: 1160px; margin: 0 auto; padding: 0 24px; }
.tf-tag {
  display: inline-block;
  background: var(--tf-soft);
  color: var(--tf-purple);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 6px 16px;
  border-radius: 100px;
  margin-bottom: 16px;
}
.tf-tag.dark { background: rgba(101,40,247,0.25); color: #c4b5fd; }
.tf-sec-hd { text-align: center; margin-bottom: 56px; }
.tf-sec-hd h2 { font-size: 36px; font-weight: 800; color: var(--tf-heading); margin: 0 0 14px; line-height: 1.2; }
.tf-sec-hd.dark h2 { color: var(--tf-white); }
.tf-sec-hd p { font-size: 17px; color: var(--tf-text); max-width: 680px; margin: 0 auto; line-height: 1.7; }
.tf-sec-hd.dark p { color: rgba(255,255,255,0.7); }
.tf-accent { color: var(--tf-purple); }
.tf-section { padding: 90px 0; }
.tf-section.tf-light { background: #fff; }
.tf-section.tf-soft { background: var(--tf-soft); }
.tf-section.tf-dark { background: linear-gradient(135deg, var(--tf-bg-dark) 0%, var(--tf-bg-mid) 100%); }

/* ── HERO ───────────────────────────────────────────── */
.tf-hero {
  background: linear-gradient(135deg, #0F172A 0%, #0d1f3c 50%, #0D0614 100%);
  padding: 90px 0 0;
  position: relative;
  overflow: hidden;
}
.tf-hero::before {
  content:'';
  position:absolute;
  top:-100px; right:-100px;
  width:500px; height:500px;
  background: radial-gradient(circle, rgba(101,40,247,0.25) 0%, transparent 70%);
  border-radius:50%;
  pointer-events:none;
}
.tf-hero-top {
  position: relative;
  z-index: 2;
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
  padding-bottom: 60px;
}
.tf-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(101,40,247,0.25);
  border: 1px solid rgba(101,40,247,0.45);
  color: #c4b5fd;
  font-size: 13px;
  font-weight: 600;
  padding: 7px 20px;
  border-radius: 100px;
  margin-bottom: 24px;
}
.tf-hero h1 {
  font-size: 52px;
  font-weight: 900;
  color: #fff;
  line-height: 1.12;
  margin: 0 0 20px;
}
.tf-hero h1 span {
  background: linear-gradient(135deg,#a78bfa,#7c3aed);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.tf-hero p {
  font-size: 18px;
  color: rgba(255,255,255,0.72);
  line-height: 1.7;
  margin: 0 0 36px;
}
.tf-hero-btns { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }
.tf-btn-primary {
  background: linear-gradient(135deg, var(--tf-purple), var(--tf-purple-dark));
  color: #fff;
  padding: 14px 32px;
  border-radius: 100px;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: none;
  cursor: pointer;
  box-shadow: 0 8px 32px rgba(101,40,247,0.35);
  transition: all 0.3s;
}
.tf-btn-primary:hover { transform: translateY(-2px); box-shadow: 0 12px 40px rgba(101,40,247,0.5); }
.tf-btn-outline {
  background: transparent;
  color: #fff;
  padding: 14px 32px;
  border-radius: 100px;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 2px solid rgba(255,255,255,0.3);
  cursor: pointer;
  transition: all 0.3s;
}
.tf-btn-outline:hover { border-color: #fff; }

/* Hero Stats Bar */
.tf-hero-stats-bar {
  position: relative;
  z-index: 2;
  background: rgba(255,255,255,0.05);
  border-top: 1px solid rgba(255,255,255,0.1);
  display: grid;
  grid-template-columns: repeat(5, 1fr);
}
.tf-hstat {
  text-align: center;
  padding: 28px 16px;
  border-right: 1px solid rgba(255,255,255,0.08);
}
.tf-hstat:last-child { border-right: none; }
.tf-hstat strong { display: block; font-size: 26px; font-weight: 900; color: #a78bfa; }
.tf-hstat span { font-size: 12px; color: rgba(255,255,255,0.55); margin-top: 4px; display: block; }

/* ── Update Alert Banner ────────────────────────────── */
.tf-update-banner {
  background: linear-gradient(135deg, #fef9c3, #fef3c7);
  border: 2px solid #fbbf24;
  border-radius: 18px;
  padding: 20px 28px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 48px;
}
.tf-update-banner .ub-icon { font-size: 28px; flex-shrink: 0; line-height: 1; }
.tf-update-banner h4 { font-size: 16px; font-weight: 800; color: #92400e; margin: 0 0 6px; }
.tf-update-banner p { font-size: 13px; color: #78350f; line-height: 1.6; margin: 0; }

/* ── SECTION A: What is TOEFL ──────────────────────── */
.tf-intro-grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 60px;
  align-items: start;
}
.tf-intro-text h3 { font-size: 22px; font-weight: 800; color: var(--tf-heading); margin: 0 0 16px; }
.tf-intro-text p { font-size: 15px; color: var(--tf-text); line-height: 1.8; margin: 0 0 18px; }

/* Section Score Cards — 2×2 grid */
.tf-sections-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 28px;
}
.tf-sec-card {
  border-radius: 18px;
  padding: 22px;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.tf-sec-card::after {
  content: '';
  position: absolute;
  bottom: -20px; right: -20px;
  width: 80px; height: 80px;
  background: rgba(255,255,255,0.08);
  border-radius: 50%;
}
.tf-sec-card.reading  { background: linear-gradient(135deg,#6528F7,#5511F8); }
.tf-sec-card.listening{ background: linear-gradient(135deg,#0ea5e9,#0284c7); }
.tf-sec-card.writing  { background: linear-gradient(135deg,#10b981,#059669); }
.tf-sec-card.speaking { background: linear-gradient(135deg,#f59e0b,#d97706); }
.tf-sec-card .sec-emoji { font-size: 26px; margin-bottom: 10px; display: block; }
.tf-sec-card h4 { font-size: 15px; font-weight: 800; margin: 0 0 4px; }
.tf-sec-card .sec-meta { font-size: 11px; color: rgba(255,255,255,0.75); font-weight: 600; margin-bottom: 8px; display: block; }
.tf-sec-card p { font-size: 12px; color: rgba(255,255,255,0.85); line-height: 1.55; margin: 0; }
.tf-sec-card .sec-score {
  position: absolute;
  top: 16px; right: 16px;
  background: rgba(255,255,255,0.2);
  border-radius: 8px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 800;
}

/* Quick Compare Table */
.tf-compare-table { width: 100%; border-collapse: collapse; border-radius: 16px; overflow: hidden; }
.tf-compare-table thead th {
  background: linear-gradient(135deg,var(--tf-purple),var(--tf-purple-dark));
  color: #fff;
  padding: 14px 18px;
  font-size: 13px;
  font-weight: 800;
  text-align: left;
}
.tf-compare-table tbody tr { border-bottom: 1px solid var(--tf-border); }
.tf-compare-table tbody tr:last-child { border-bottom: none; }
.tf-compare-table tbody tr:nth-child(even) { background: var(--tf-soft); }
.tf-compare-table tbody td { padding: 13px 18px; font-size: 13px; color: var(--tf-text); vertical-align: top; }
.tf-compare-table tbody td:first-child { font-weight: 700; color: var(--tf-heading); }
.tf-compare-table td .td-good { color: var(--tf-green); font-weight: 700; }
.tf-compare-table td .td-note { color: var(--tf-purple); font-weight: 700; }

/* Score Scale */
.tf-score-scale {
  background: #fff;
  border: 2px solid var(--tf-border);
  border-radius: 20px;
  padding: 28px;
}
.tf-score-scale h3 { font-size: 17px; font-weight: 800; color: var(--tf-heading); margin: 0 0 22px; }
.tf-score-row {
  display: flex;
  gap: 14px;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid var(--tf-border);
}
.tf-score-row:last-child { border-bottom: none; }
.tf-score-band {
  min-width: 70px;
  text-align: center;
  padding: 8px 10px;
  border-radius: 12px;
  font-weight: 900;
  font-size: 14px;
  color: #fff;
  flex-shrink: 0;
}
.tf-score-row:nth-child(1) .tf-score-band { background: linear-gradient(135deg,#6528F7,#5511F8); }
.tf-score-row:nth-child(2) .tf-score-band { background: linear-gradient(135deg,#0ea5e9,#0284c7); }
.tf-score-row:nth-child(3) .tf-score-band { background: linear-gradient(135deg,#10b981,#059669); }
.tf-score-row:nth-child(4) .tf-score-band { background: linear-gradient(135deg,#f59e0b,#d97706); }
.tf-score-row:nth-child(5) .tf-score-band { background: linear-gradient(135deg,#ef4444,#dc2626); }
.tf-score-info h5 { font-size: 14px; font-weight: 800; color: var(--tf-heading); margin: 0 0 3px; }
.tf-score-info p { font-size: 12px; color: var(--tf-text); margin: 0; line-height: 1.5; }

/* New 2026 format highlight */
.tf-new-format {
  background: linear-gradient(135deg,rgba(101,40,247,0.06),rgba(85,17,248,0.04));
  border: 2px solid rgba(101,40,247,0.18);
  border-radius: 20px;
  padding: 28px;
  margin-top: 28px;
}
.tf-new-format h3 { font-size: 17px; font-weight: 800; color: var(--tf-heading); margin: 0 0 18px; display: flex; align-items: center; gap: 10px; }
.tf-new-format h3 i { color: var(--tf-purple); }
.tf-change-list { display: flex; flex-direction: column; gap: 10px; }
.tf-change-item { display: flex; gap: 12px; align-items: flex-start; }
.tf-change-item .ci-icon {
  width: 32px; height: 32px;
  background: linear-gradient(135deg,var(--tf-purple),var(--tf-purple-dark));
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-size: 13px;
  flex-shrink: 0;
  margin-top: 2px;
}
.tf-change-item h5 { font-size: 14px; font-weight: 800; color: var(--tf-heading); margin: 0 0 3px; }
.tf-change-item p { font-size: 12px; color: var(--tf-text); margin: 0; line-height: 1.5; }

/* Accepted by table */
.tf-accepted-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 14px;
  margin-top: 36px;
}
.tf-accepted-item {
  background: #fff;
  border: 2px solid var(--tf-border);
  border-radius: 16px;
  padding: 20px 14px;
  text-align: center;
  transition: all 0.3s;
}
.tf-accepted-item:hover { border-color: var(--tf-purple); transform: translateY(-3px); }
.tf-accepted-item .acc-flag { font-size: 32px; margin-bottom: 8px; }
.tf-accepted-item h5 { font-size: 13px; font-weight: 800; color: var(--tf-heading); margin: 0 0 4px; }
.tf-accepted-item p { font-size: 11px; color: var(--tf-text); margin: 0; }

/* ── SECTION B: Programs ────────────────────────────── */
.tf-prog-wrap { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 24px; }
.tf-prog-card {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 24px;
  padding: 32px;
  position: relative;
  overflow: hidden;
  transition: all 0.3s;
}
.tf-prog-card:hover { border-color: rgba(101,40,247,0.5); background: rgba(101,40,247,0.08); }
.tf-prog-card.featured {
  border: 2px solid var(--tf-purple);
  background: rgba(101,40,247,0.1);
}
.tf-prog-badge {
  position: absolute;
  top: 0; right: 0;
  background: linear-gradient(135deg,var(--tf-purple),var(--tf-purple-dark));
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  padding: 6px 16px;
  border-radius: 0 24px 0 16px;
  letter-spacing: 0.5px;
}
.tf-prog-icon {
  width: 52px; height: 52px;
  border-radius: 16px;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px;
  margin-bottom: 18px;
  background: rgba(255,255,255,0.1);
}
.tf-prog-card h4 { font-size: 19px; font-weight: 800; color: #fff; margin: 0 0 6px; }
.tf-prog-card .prog-tagline { font-size: 12px; color: #a78bfa; font-weight: 700; text-transform: uppercase; letter-spacing: 0.8px; margin: 0 0 14px; display: block; }
.tf-prog-card p { font-size: 13px; color: rgba(255,255,255,0.72); line-height: 1.7; margin: 0 0 20px; }
.tf-feat-list { list-style: none; padding: 0; margin: 0 0 24px; display: flex; flex-direction: column; gap: 8px; }
.tf-feat-list li { font-size: 13px; color: rgba(255,255,255,0.8); display: flex; gap: 10px; align-items: flex-start; }
.tf-feat-list li i { color: #a78bfa; font-size: 12px; margin-top: 3px; flex-shrink: 0; }
.tf-prog-footer { padding-top: 20px; border-top: 1px solid rgba(255,255,255,0.1); display: flex; justify-content: space-between; align-items: center; }
.tf-prog-duration { font-size: 12px; color: rgba(255,255,255,0.55); }
.tf-prog-duration strong { color: rgba(255,255,255,0.85); }
.tf-prog-btn-dark {
  background: linear-gradient(135deg,var(--tf-purple),var(--tf-purple-dark));
  color: #fff;
  padding: 10px 22px;
  border-radius: 100px;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  border: none;
  cursor: pointer;
  transition: all 0.3s;
}
.tf-prog-btn-dark:hover { opacity: 0.9; }
.tf-prog-btn-ghost {
  background: transparent;
  color: rgba(255,255,255,0.8);
  padding: 10px 22px;
  border-radius: 100px;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,0.25);
  cursor: pointer;
  transition: all 0.3s;
}
.tf-prog-btn-ghost:hover { border-color: #fff; color: #fff; }

/* Why TOEFL over IELTS */
.tf-vs-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 60px;
}
.tf-vs-card {
  border-radius: 20px;
  padding: 28px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.1);
}
.tf-vs-card h4 { font-size: 17px; font-weight: 800; color: #fff; margin: 0 0 16px; display: flex; align-items: center; gap: 10px; }
.tf-vs-card h4 i { color: #a78bfa; }
.tf-vs-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.tf-vs-list li { font-size: 13px; color: rgba(255,255,255,0.75); display: flex; gap: 10px; align-items: flex-start; line-height: 1.6; }
.tf-vs-list li i { color: var(--tf-green); font-size: 11px; margin-top: 3px; flex-shrink: 0; }
.tf-vs-list li i.red { color: var(--tf-red); }

/* ── SECTION C: Registration ────────────────────────── */
.tf-reg-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; }

/* Timeline Steps */
.tf-timeline { display: flex; flex-direction: column; gap: 0; }
.tf-tstep { display: flex; gap: 20px; padding-bottom: 28px; position: relative; }
.tf-tstep:not(:last-child)::after {
  content: '';
  position: absolute;
  left: 19px; top: 48px;
  width: 2px;
  height: calc(100% - 16px);
  background: linear-gradient(to bottom, var(--tf-purple), rgba(101,40,247,0.1));
}
.tf-tstep-num {
  width: 40px; height: 40px;
  border-radius: 50%;
  background: linear-gradient(135deg,var(--tf-purple),var(--tf-purple-dark));
  color: #fff;
  font-size: 15px;
  font-weight: 900;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 4px 16px rgba(101,40,247,0.35);
}
.tf-tstep-body h4 { font-size: 16px; font-weight: 800; color: var(--tf-heading); margin: 0 0 6px; }
.tf-tstep-body p { font-size: 13px; color: var(--tf-text); line-height: 1.7; margin: 0; }

/* Right panels */
.tf-reg-panels { display: flex; flex-direction: column; gap: 20px; }
.tf-fee-panel {
  background: var(--tf-bg-dark);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 22px;
  padding: 28px;
}
.tf-fee-panel h3 { font-size: 17px; font-weight: 800; color: #fff; margin: 0 0 22px; display: flex; align-items: center; gap: 10px; }
.tf-fee-panel h3 i { color: #a78bfa; }
.tf-fee-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  font-size: 13px;
}
.tf-fee-item:last-child { border-bottom: none; }
.tf-fee-item span { color: rgba(255,255,255,0.7); display: flex; align-items: center; gap: 8px; }
.tf-fee-item span i { color: #a78bfa; width: 16px; }
.tf-fee-val { font-weight: 800; color: #fff; }
.tf-fee-val.highlight { color: #a78bfa; font-size: 16px; }

.tf-docs-panel {
  background: #fff;
  border: 2px solid var(--tf-border);
  border-radius: 22px;
  padding: 28px;
}
.tf-docs-panel h3 { font-size: 17px; font-weight: 800; color: var(--tf-heading); margin: 0 0 18px; display: flex; align-items: center; gap: 10px; }
.tf-docs-panel h3 i { color: var(--tf-purple); }
.tf-doc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.tf-doc-item { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--tf-text); }
.tf-doc-item i { color: var(--tf-green); font-size: 11px; }

.tf-format-panel {
  background: linear-gradient(135deg,rgba(101,40,247,0.07),rgba(85,17,248,0.04));
  border: 2px solid rgba(101,40,247,0.18);
  border-radius: 22px;
  padding: 28px;
}
.tf-format-panel h3 { font-size: 17px; font-weight: 800; color: var(--tf-heading); margin: 0 0 18px; display: flex; align-items: center; gap: 10px; }
.tf-format-panel h3 i { color: var(--tf-purple); }
.tf-format-cards { display: flex; flex-direction: column; gap: 12px; }
.tf-format-item {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 14px 16px;
  background: #fff;
  border-radius: 14px;
  border: 1px solid var(--tf-border);
}
.tf-format-item .fi-icon {
  width: 40px; height: 40px;
  border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  font-size: 18px;
  flex-shrink: 0;
}
.tf-format-item h5 { font-size: 13px; font-weight: 800; color: var(--tf-heading); margin: 0 0 3px; }
.tf-format-item p { font-size: 12px; color: var(--tf-text); margin: 0; line-height: 1.5; }

/* ── FAQ ────────────────────────────────────────────── */
.tf-faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.tf-faq-item {
  background: #fff;
  border: 2px solid var(--tf-border);
  border-radius: 18px;
  padding: 24px;
  transition: all 0.3s;
}
.tf-faq-item:hover { border-color: var(--tf-purple); }
.tf-faq-item h4 { font-size: 15px; font-weight: 800; color: var(--tf-heading); margin: 0 0 10px; display: flex; gap: 12px; }
.tf-faq-item h4 span { color: var(--tf-purple); flex-shrink: 0; }
.tf-faq-item p { font-size: 13px; color: var(--tf-text); line-height: 1.7; margin: 0; }

/* ── CTA ────────────────────────────────────────────── */
.tf-cta-section {
  background: linear-gradient(135deg, var(--tf-bg-dark) 0%, #1a0533 50%, var(--tf-bg-mid) 100%);
  padding: 80px 0;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.tf-cta-section::before {
  content: '';
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%,-50%);
  width: 700px; height: 700px;
  background: radial-gradient(circle,rgba(101,40,247,0.15) 0%,transparent 70%);
  border-radius: 50%;
  pointer-events: none;
}
.tf-cta-inner { position: relative; z-index: 2; }
.tf-cta-inner h2 { font-size: 40px; font-weight: 900; color: #fff; margin: 0 0 16px; }
.tf-cta-inner p { font-size: 18px; color: rgba(255,255,255,0.75); margin: 0 0 36px; }
.tf-cta-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.tf-cta-purple {
  background: linear-gradient(135deg,var(--tf-purple),var(--tf-purple-dark));
  color: #fff;
  padding: 15px 36px;
  border-radius: 100px;
  font-size: 16px;
  font-weight: 800;
  text-decoration: none;
  display: inline-flex; align-items: center; gap: 8px;
  border: none; cursor: pointer;
  box-shadow: 0 8px 32px rgba(101,40,247,0.45);
  transition: all 0.3s;
}
.tf-cta-purple:hover { transform: translateY(-2px); }
.tf-cta-ghost2 {
  background: transparent;
  color: #fff;
  padding: 15px 36px;
  border-radius: 100px;
  font-size: 16px;
  font-weight: 800;
  text-decoration: none;
  display: inline-flex; align-items: center; gap: 8px;
  border: 2px solid rgba(255,255,255,0.35);
  cursor: pointer;
  transition: all 0.3s;
}
.tf-cta-ghost2:hover { border-color: #fff; }

/* ── Responsive ─────────────────────────────────────── */
@media (max-width: 900px) {
  .tf-hero h1 { font-size: 32px; }
  .tf-hero-stats-bar { grid-template-columns: repeat(2,1fr); }
  .tf-intro-grid, .tf-reg-grid, .tf-vs-grid { grid-template-columns: 1fr; }
  .tf-prog-wrap { grid-template-columns: 1fr; }
  .tf-accepted-grid { grid-template-columns: repeat(2,1fr); }
  .tf-faq-grid { grid-template-columns: 1fr; }
  .tf-doc-grid { grid-template-columns: 1fr; }
  .tf-sec-hd h2 { font-size: 26px; }
}

/* ── PTE Page Variables ─────────────────────────────── */

/* ── Utility ─────────────────────────────────────────── */
.pte-wrap { max-width: 1160px; margin: 0 auto; padding: 0 24px; }
.pte-tag {
  display: inline-block;
  background: var(--pte-soft);
  color: var(--pte-purple);
  font-size: 12px; font-weight: 700;
  letter-spacing: 1.5px; text-transform: uppercase;
  padding: 6px 16px; border-radius: 100px; margin-bottom: 16px;
}
.pte-tag.dark { background: rgba(101,40,247,0.25); color: #c4b5fd; }
.pte-sec-hd { text-align: center; margin-bottom: 56px; }
.pte-sec-hd h2 { font-size: 36px; font-weight: 800; color: var(--pte-heading); margin: 0 0 14px; line-height: 1.2; }
.pte-sec-hd.dark h2 { color: #fff; }
.pte-sec-hd p { font-size: 17px; color: var(--pte-text); max-width: 680px; margin: 0 auto; line-height: 1.7; }
.pte-sec-hd.dark p { color: rgba(255,255,255,0.7); }
.pte-accent { color: var(--pte-purple); }
.pte-section { padding: 90px 0; }
.pte-section.pte-light { background: #fff; }
.pte-section.pte-soft  { background: var(--pte-soft); }
.pte-section.pte-dark  { background: linear-gradient(135deg, var(--pte-bg-dark) 0%, var(--pte-bg-mid) 100%); }

/* ── HERO — Diagonal split design ───────────────────── */
.pte-hero {
  background: var(--pte-bg-dark);
  position: relative;
  overflow: hidden;
  padding: 0;
}
.pte-hero-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 580px;
}
.pte-hero-left {
  background: linear-gradient(135deg, #0D0614 0%, #1a0533 100%);
  padding: 80px 48px 80px 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 2;
}
.pte-hero-left::after {
  content: '';
  position: absolute;
  top: 0; right: -60px;
  width: 120px; height: 100%;
  background: linear-gradient(135deg, #1a0533 50%, transparent 50%);
  z-index: 3;
}
.pte-hero-right {
  background: linear-gradient(135deg, #6528F7 0%, #5511F8 60%, #3b07c7 100%);
  padding: 80px 40px 80px 80px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.pte-hero-right::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none;
}
.pte-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(101,40,247,0.3);
  border: 1px solid rgba(167,139,250,0.4);
  color: #c4b5fd;
  font-size: 12px; font-weight: 700;
  padding: 6px 16px; border-radius: 100px;
  width: fit-content; margin-bottom: 24px;
}
.pte-hero-left h1 {
  font-size: 44px; font-weight: 900;
  color: #fff; line-height: 1.15; margin: 0 0 18px;
}
.pte-hero-left h1 span { color: #a78bfa; }
.pte-hero-left p { font-size: 16px; color: rgba(255,255,255,0.7); line-height: 1.7; margin: 0 0 32px; }
.pte-hero-btns { display: flex; gap: 12px; flex-wrap: wrap; }
.pte-btn-white {
  background: #fff; color: var(--pte-purple);
  padding: 13px 28px; border-radius: 100px;
  font-weight: 800; font-size: 14px;
  text-decoration: none; display: inline-flex; align-items: center; gap: 8px;
  border: none; cursor: pointer; transition: all 0.3s;
}
.pte-btn-white:hover { background: var(--pte-soft); }
.pte-btn-ghost-w {
  background: transparent; color: #fff;
  padding: 13px 28px; border-radius: 100px;
  font-weight: 700; font-size: 14px;
  text-decoration: none; display: inline-flex; align-items: center; gap: 8px;
  border: 2px solid rgba(255,255,255,0.3); cursor: pointer; transition: all 0.3s;
}
.pte-btn-ghost-w:hover { border-color: #fff; }

/* Right side: AI score graphic */
.pte-hero-right h2 { font-size: 18px; color: rgba(255,255,255,0.7); font-weight: 600; margin: 0 0 28px; position: relative; z-index: 2; }
.pte-score-visual { position: relative; z-index: 2; }
.pte-score-circle-wrap {
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 24px;
}
.pte-score-circle {
  width: 140px; height: 140px;
  border-radius: 50%;
  background: rgba(255,255,255,0.12);
  border: 4px solid rgba(255,255,255,0.3);
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  box-shadow: 0 0 40px rgba(255,255,255,0.15);
}
.pte-score-circle strong { font-size: 44px; font-weight: 900; color: #fff; line-height: 1; }
.pte-score-circle span { font-size: 13px; color: rgba(255,255,255,0.7); }
.pte-subscore-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 12px;
}
.pte-subscore {
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 14px; padding: 14px 16px;
  display: flex; align-items: center; gap: 12px;
}
.pte-subscore .ss-icon { font-size: 20px; }
.pte-subscore .ss-label { font-size: 12px; color: rgba(255,255,255,0.65); margin-bottom: 2px; }
.pte-subscore .ss-score { font-size: 18px; font-weight: 900; color: #fff; }
.pte-ai-badge {
  margin-top: 20px;
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 12px; padding: 12px 16px;
  display: flex; align-items: center; gap: 12px;
  position: relative; z-index: 2;
}
.pte-ai-badge .ai-icon { font-size: 20px; }
.pte-ai-badge p { font-size: 13px; color: rgba(255,255,255,0.85); margin: 0; line-height: 1.5; }
.pte-ai-badge strong { color: #fff; }

/* Bottom stats strip */
.pte-stats-strip {
  background: #fff;
  border-top: 2px solid var(--pte-border);
  display: grid;
  grid-template-columns: repeat(5,1fr);
}
.pte-stat-item {
  padding: 22px 16px;
  text-align: center;
  border-right: 1px solid var(--pte-border);
}
.pte-stat-item:last-child { border-right: none; }
.pte-stat-item strong { display: block; font-size: 22px; font-weight: 900; color: var(--pte-purple); }
.pte-stat-item span { font-size: 12px; color: var(--pte-text); margin-top: 3px; display: block; }

/* ── SECTION A: What is PTE ──────────────────────────── */
.pte-what-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: start; }
.pte-intro p { font-size: 15px; color: var(--pte-text); line-height: 1.8; margin: 0 0 18px; }
.pte-intro h3 { font-size: 21px; font-weight: 800; color: var(--pte-heading); margin: 0 0 14px; }

/* 3 Section Cards (horizontal) */
.pte-3sections { display: flex; flex-direction: column; gap: 14px; margin-top: 24px; }
.pte-sec-bar {
  display: flex; gap: 16px; align-items: flex-start;
  background: #fff; border: 2px solid var(--pte-border);
  border-radius: 18px; padding: 20px 22px;
  transition: all 0.3s;
}
.pte-sec-bar:hover { border-color: var(--pte-purple); box-shadow: 0 8px 30px rgba(101,40,247,0.1); }
.pte-sec-bar .sb-icon {
  width: 52px; height: 52px; border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px; flex-shrink: 0;
}
.pte-sec-bar .sb-content h4 { font-size: 16px; font-weight: 800; color: var(--pte-heading); margin: 0 0 4px; }
.pte-sec-bar .sb-content .sb-meta { font-size: 12px; font-weight: 700; color: var(--pte-purple); margin-bottom: 6px; display: block; }
.pte-sec-bar .sb-content p { font-size: 13px; color: var(--pte-text); line-height: 1.6; margin: 0; }
.pte-sec-bar .sb-score {
  margin-left: auto; flex-shrink: 0;
  background: var(--pte-soft); border-radius: 10px;
  padding: 6px 14px; font-size: 13px; font-weight: 800; color: var(--pte-purple);
  white-space: nowrap; align-self: flex-start;
}

/* Question Types Accordion-style grid */
.pte-qtypes { margin-top: 28px; }
.pte-qtypes h3 { font-size: 18px; font-weight: 800; color: var(--pte-heading); margin: 0 0 18px; }
.pte-qtype-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.pte-qtype-item {
  background: var(--pte-soft);
  border: 1px solid var(--pte-border);
  border-radius: 12px; padding: 12px 14px;
  display: flex; align-items: center; gap: 10px;
  font-size: 13px;
}
.pte-qtype-item .qt-dot {
  width: 8px; height: 8px; border-radius: 50%;
  flex-shrink: 0;
}
.pte-qtype-item .qt-section { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; margin-left: auto; padding: 2px 8px; border-radius: 6px; }

/* Score Scale Card */
.pte-score-card {
  background: var(--pte-bg-dark);
  border-radius: 24px; padding: 32px;
  color: #fff;
}
.pte-score-card h3 { font-size: 18px; font-weight: 800; color: #fff; margin: 0 0 8px; }
.pte-score-card .sc-sub { font-size: 13px; color: rgba(255,255,255,0.6); margin: 0 0 24px; }
.pte-score-bands { display: flex; flex-direction: column; gap: 12px; }
.pte-band-row { display: flex; align-items: center; gap: 14px; }
.pte-band-pill {
  min-width: 72px; padding: 8px 12px; border-radius: 12px;
  font-size: 14px; font-weight: 900; color: #fff;
  text-align: center; flex-shrink: 0;
}
.pte-band-row:nth-child(1) .pte-band-pill { background: linear-gradient(135deg,#6528F7,#5511F8); }
.pte-band-row:nth-child(2) .pte-band-pill { background: linear-gradient(135deg,#0ea5e9,#0284c7); }
.pte-band-row:nth-child(3) .pte-band-pill { background: linear-gradient(135deg,#10b981,#059669); }
.pte-band-row:nth-child(4) .pte-band-pill { background: linear-gradient(135deg,#f59e0b,#d97706); }
.pte-band-row:nth-child(5) .pte-band-pill { background: linear-gradient(135deg,#ef4444,#dc2626); }
.pte-band-info h5 { font-size: 13px; font-weight: 800; color: #fff; margin: 0 0 2px; }
.pte-band-info p { font-size: 12px; color: rgba(255,255,255,0.6); margin: 0; line-height: 1.4; }
.pte-score-card-divider { border: none; border-top: 1px solid rgba(255,255,255,0.1); margin: 20px 0; }

/* PTE Types (Academic / Core / UKVI) */
.pte-types-row { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; margin-top: 20px; }
.pte-type-mini {
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px; padding: 16px 14px; text-align: center;
}
.pte-type-mini .tm-icon { font-size: 26px; margin-bottom: 8px; }
.pte-type-mini h5 { font-size: 13px; font-weight: 800; color: #fff; margin: 0 0 4px; }
.pte-type-mini p { font-size: 11px; color: rgba(255,255,255,0.6); margin: 0; line-height: 1.5; }

/* AI Advantage Section */
.pte-ai-section {
  background: linear-gradient(135deg,rgba(101,40,247,0.08),rgba(85,17,248,0.04));
  border: 2px solid rgba(101,40,247,0.18);
  border-radius: 22px; padding: 32px;
  margin-top: 28px;
}
.pte-ai-section h3 { font-size: 18px; font-weight: 800; color: var(--pte-heading); margin: 0 0 18px; display: flex; align-items: center; gap: 10px; }
.pte-ai-section h3 i { color: var(--pte-purple); }
.pte-ai-points { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.pte-ai-point {
  display: flex; gap: 12px; align-items: flex-start;
  background: #fff; border-radius: 14px; padding: 14px 16px;
  border: 1px solid var(--pte-border);
}
.pte-ai-point .ap-icon {
  width: 36px; height: 36px; border-radius: 10px;
  background: linear-gradient(135deg,var(--pte-purple),var(--pte-purple-dark));
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-size: 15px; flex-shrink: 0;
}
.pte-ai-point h5 { font-size: 13px; font-weight: 800; color: var(--pte-heading); margin: 0 0 3px; }
.pte-ai-point p { font-size: 12px; color: var(--pte-text); margin: 0; line-height: 1.5; }

/* ── SECTION B: Programs ──────────────────────────────── */
.pte-prog-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.pte-prog-card {
  background: #fff;
  border: 2px solid var(--pte-border);
  border-radius: 24px; padding: 32px;
  position: relative; overflow: hidden;
  transition: all 0.3s;
}
.pte-prog-card:hover { border-color: var(--pte-purple); box-shadow: 0 20px 60px rgba(101,40,247,0.12); transform: translateY(-4px); }
.pte-prog-card.featured {
  background: linear-gradient(135deg,var(--pte-purple),var(--pte-purple-dark));
  border-color: transparent;
  color: #fff;
}
.pte-prog-ribbon {
  position: absolute; top: 20px; right: -28px;
  background: #fff; color: var(--pte-purple);
  font-size: 11px; font-weight: 900;
  padding: 5px 40px; transform: rotate(45deg);
  letter-spacing: 0.5px;
}
.pte-prog-icon-wrap {
  width: 56px; height: 56px; border-radius: 16px;
  display: flex; align-items: center; justify-content: center;
  font-size: 24px; margin-bottom: 18px;
}
.pte-prog-card:not(.featured) .pte-prog-icon-wrap { background: var(--pte-soft); }
.pte-prog-card.featured .pte-prog-icon-wrap { background: rgba(255,255,255,0.2); }
.pte-prog-card h4 { font-size: 20px; font-weight: 800; margin: 0 0 6px; }
.pte-prog-card:not(.featured) h4 { color: var(--pte-heading); }
.pte-prog-card.featured h4 { color: #fff; }
.pte-prog-card .prog-sub { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.8px; margin: 0 0 14px; display: block; }
.pte-prog-card:not(.featured) .prog-sub { color: var(--pte-purple); }
.pte-prog-card.featured .prog-sub { color: rgba(255,255,255,0.7); }
.pte-prog-card p.prog-desc { font-size: 14px; line-height: 1.7; margin: 0 0 20px; }
.pte-prog-card:not(.featured) p.prog-desc { color: var(--pte-text); }
.pte-prog-card.featured p.prog-desc { color: rgba(255,255,255,0.8); }
.pte-prog-feats { list-style: none; padding: 0; margin: 0 0 24px; display: flex; flex-direction: column; gap: 8px; }
.pte-prog-feats li { font-size: 13px; display: flex; gap: 10px; align-items: flex-start; }
.pte-prog-card:not(.featured) .pte-prog-feats li { color: var(--pte-text); }
.pte-prog-card.featured .pte-prog-feats li { color: rgba(255,255,255,0.85); }
.pte-prog-card:not(.featured) .pte-prog-feats li i { color: var(--pte-green); font-size: 12px; margin-top: 3px; }
.pte-prog-card.featured .pte-prog-feats li i { color: rgba(255,255,255,0.6); font-size: 12px; margin-top: 3px; }
.pte-prog-foot {
  padding-top: 20px; display: flex; justify-content: space-between; align-items: center;
}
.pte-prog-card:not(.featured) .pte-prog-foot { border-top: 1px solid var(--pte-border); }
.pte-prog-card.featured .pte-prog-foot { border-top: 1px solid rgba(255,255,255,0.2); }
.pte-prog-dur { font-size: 12px; }
.pte-prog-card:not(.featured) .pte-prog-dur { color: var(--pte-text); }
.pte-prog-card.featured .pte-prog-dur { color: rgba(255,255,255,0.65); }
.pte-prog-card:not(.featured) .pte-prog-dur strong { color: var(--pte-heading); }
.pte-prog-card.featured .pte-prog-dur strong { color: #fff; }
.pte-prog-cta {
  padding: 10px 22px; border-radius: 100px;
  font-size: 13px; font-weight: 700;
  text-decoration: none; border: none; cursor: pointer; transition: all 0.3s;
}
.pte-prog-card:not(.featured) .pte-prog-cta {
  background: linear-gradient(135deg,var(--pte-purple),var(--pte-purple-dark));
  color: #fff;
}
.pte-prog-card.featured .pte-prog-cta {
  background: #fff; color: var(--pte-purple);
}

/* Score requirements table */
.pte-req-section { margin-top: 64px; }
.pte-req-section h3 { font-size: 22px; font-weight: 800; color: var(--pte-heading); text-align: center; margin: 0 0 28px; }
.pte-req-table { width: 100%; border-collapse: collapse; border-radius: 18px; overflow: hidden; }
.pte-req-table thead th {
  background: linear-gradient(135deg,var(--pte-purple),var(--pte-purple-dark));
  color: #fff; padding: 14px 18px;
  font-size: 13px; font-weight: 800; text-align: left;
}
.pte-req-table tbody tr { border-bottom: 1px solid var(--pte-border); }
.pte-req-table tbody tr:last-child { border-bottom: none; }
.pte-req-table tbody tr:nth-child(even) { background: var(--pte-soft); }
.pte-req-table tbody td { padding: 13px 18px; font-size: 13px; color: var(--pte-text); }
.pte-req-table tbody td:first-child { font-weight: 700; color: var(--pte-heading); }
.pte-req-table .score-chip {
  background: var(--pte-purple); color: #fff;
  padding: 3px 12px; border-radius: 100px;
  font-size: 12px; font-weight: 800; display: inline-block;
}
.pte-req-table .score-chip.green { background: var(--pte-green); }
.pte-req-table .score-chip.blue { background: var(--pte-blue); }

/* ── SECTION C: Registration ──────────────────────────── */
.pte-reg-layout { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 60px; }

.pte-steps-wrap h3 { font-size: 20px; font-weight: 800; color: var(--pte-heading); margin: 0 0 32px; }
.pte-steps { display: flex; flex-direction: column; gap: 0; }
.pte-step { display: flex; gap: 20px; padding-bottom: 28px; position: relative; }
.pte-step:not(:last-child)::after {
  content: ''; position: absolute;
  left: 19px; top: 48px;
  width: 2px; height: calc(100% - 16px);
  background: linear-gradient(to bottom, var(--pte-purple), rgba(101,40,247,0.08));
}
.pte-step-num {
  width: 40px; height: 40px; border-radius: 50%;
  background: linear-gradient(135deg,var(--pte-purple),var(--pte-purple-dark));
  color: #fff; font-size: 15px; font-weight: 900;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; box-shadow: 0 4px 16px rgba(101,40,247,0.35);
}
.pte-step-body h4 { font-size: 16px; font-weight: 800; color: var(--pte-heading); margin: 0 0 6px; }
.pte-step-body p { font-size: 13px; color: var(--pte-text); line-height: 1.7; margin: 0; }

.pte-panels { display: flex; flex-direction: column; gap: 20px; }

/* Fee panel */
.pte-fee-panel {
  background: linear-gradient(135deg,var(--pte-bg-dark),var(--pte-bg-mid));
  border-radius: 22px; padding: 28px; color: #fff;
}
.pte-fee-panel h3 { font-size: 17px; font-weight: 800; color: #fff; margin: 0 0 20px; display: flex; align-items: center; gap: 10px; }
.pte-fee-panel h3 i { color: #a78bfa; }
.pte-fee-row {
  display: flex; justify-content: space-between; align-items: center;
  padding: 11px 0; border-bottom: 1px solid rgba(255,255,255,0.08); font-size: 13px;
}
.pte-fee-row:last-child { border-bottom: none; }
.pte-fee-row span { color: rgba(255,255,255,0.7); display: flex; align-items: center; gap: 8px; }
.pte-fee-row span i { color: #a78bfa; width: 15px; }
.pte-fee-amt { font-weight: 800; color: #fff; }
.pte-fee-amt.hero { color: #a78bfa; font-size: 17px; }

/* Advantages panel */
.pte-adv-panel {
  background: #fff;
  border: 2px solid var(--pte-border);
  border-radius: 22px; padding: 28px;
}
.pte-adv-panel h3 { font-size: 17px; font-weight: 800; color: var(--pte-heading); margin: 0 0 18px; display: flex; align-items: center; gap: 10px; }
.pte-adv-panel h3 i { color: var(--pte-purple); }
.pte-adv-list { display: flex; flex-direction: column; gap: 10px; }
.pte-adv-item { display: flex; gap: 12px; align-items: flex-start; }
.pte-adv-item .adv-icon {
  width: 32px; height: 32px; border-radius: 10px;
  background: var(--pte-soft); display: flex; align-items: center; justify-content: center;
  font-size: 14px; flex-shrink: 0; margin-top: 1px;
}
.pte-adv-item h5 { font-size: 13px; font-weight: 800; color: var(--pte-heading); margin: 0 0 2px; }
.pte-adv-item p { font-size: 12px; color: var(--pte-text); margin: 0; line-height: 1.5; }

/* Docs panel */
.pte-docs-panel {
  background: linear-gradient(135deg,rgba(101,40,247,0.06),rgba(85,17,248,0.03));
  border: 2px solid rgba(101,40,247,0.15);
  border-radius: 22px; padding: 28px;
}
.pte-docs-panel h3 { font-size: 17px; font-weight: 800; color: var(--pte-heading); margin: 0 0 16px; display: flex; align-items: center; gap: 10px; }
.pte-docs-panel h3 i { color: var(--pte-purple); }
.pte-doc-list { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; list-style: none; padding: 0; margin: 0; }
.pte-doc-list li { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--pte-text); }
.pte-doc-list li i { color: var(--pte-green); font-size: 11px; }

/* ── 3-Way Comparison ───────────────────────────────── */
.pte-compare-table { width: 100%; border-collapse: collapse; border-radius: 18px; overflow: hidden; }
.pte-compare-table thead th {
  padding: 14px 18px; font-size: 13px; font-weight: 800; text-align: left;
}
.pte-compare-table thead th:first-child { background: var(--pte-bg-dark); color: #fff; }
.pte-compare-table thead th:nth-child(2) { background: linear-gradient(135deg,var(--pte-purple),var(--pte-purple-dark)); color: #fff; }
.pte-compare-table thead th:nth-child(3) { background: #0f4c81; color: #fff; }
.pte-compare-table thead th:nth-child(4) { background: #065f46; color: #fff; }
.pte-compare-table tbody tr { border-bottom: 1px solid var(--pte-border); }
.pte-compare-table tbody tr:last-child { border-bottom: none; }
.pte-compare-table tbody tr:nth-child(even) { background: var(--pte-soft); }
.pte-compare-table tbody td { padding: 12px 18px; font-size: 13px; color: var(--pte-text); }
.pte-compare-table tbody td:first-child { font-weight: 700; color: var(--pte-heading); }
.pte-highlight { color: var(--pte-purple); font-weight: 700; }
.pte-green-text { color: var(--pte-green); font-weight: 700; }

/* ── FAQ ──────────────────────────────────────────────── */
.pte-faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.pte-faq-item {
  background: #fff; border: 2px solid var(--pte-border);
  border-radius: 18px; padding: 24px; transition: all 0.3s;
}
.pte-faq-item:hover { border-color: var(--pte-purple); }
.pte-faq-item h4 { font-size: 15px; font-weight: 800; color: var(--pte-heading); margin: 0 0 10px; display: flex; gap: 12px; }
.pte-faq-item h4 span { color: var(--pte-purple); flex-shrink: 0; }
.pte-faq-item p { font-size: 13px; color: var(--pte-text); line-height: 1.7; margin: 0; }

/* ── CTA ──────────────────────────────────────────────── */
.pte-cta {
  background: linear-gradient(135deg,var(--pte-purple) 0%,var(--pte-purple-dark) 50%,#3b07c7 100%);
  padding: 80px 0; text-align: center; position: relative; overflow: hidden;
}
.pte-cta::before {
  content: '';
  position: absolute; bottom: -100px; left: -100px;
  width: 400px; height: 400px;
  background: radial-gradient(circle,rgba(255,255,255,0.1) 0%,transparent 70%);
  border-radius: 50%; pointer-events: none;
}
.pte-cta::after {
  content: '';
  position: absolute; top: -80px; right: -80px;
  width: 300px; height: 300px;
  background: radial-gradient(circle,rgba(255,255,255,0.08) 0%,transparent 70%);
  border-radius: 50%; pointer-events: none;
}
.pte-cta-inner { position: relative; z-index: 2; }
.pte-cta-inner h2 { font-size: 40px; font-weight: 900; color: #fff; margin: 0 0 16px; }
.pte-cta-inner p { font-size: 18px; color: rgba(255,255,255,0.8); margin: 0 0 36px; }
.pte-cta-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.pte-cta-btn-w {
  background: #fff; color: var(--pte-purple);
  padding: 15px 36px; border-radius: 100px;
  font-size: 16px; font-weight: 800; text-decoration: none;
  display: inline-flex; align-items: center; gap: 8px;
  border: none; cursor: pointer; transition: all 0.3s;
  box-shadow: 0 8px 30px rgba(0,0,0,0.2);
}
.pte-cta-btn-w:hover { transform: translateY(-2px); }
.pte-cta-btn-g {
  background: transparent; color: #fff;
  padding: 15px 36px; border-radius: 100px;
  font-size: 16px; font-weight: 800; text-decoration: none;
  display: inline-flex; align-items: center; gap: 8px;
  border: 2px solid rgba(255,255,255,0.4); cursor: pointer; transition: all 0.3s;
}
.pte-cta-btn-g:hover { border-color: #fff; }

/* ── Responsive ──────────────────────────────────────── */
@media (max-width: 900px) {
  .pte-hero-grid { grid-template-columns: 1fr; }
  .pte-hero-left::after { display: none; }
  .pte-hero-left { padding: 48px 24px; }
  .pte-hero-right { padding: 40px 24px; }
  .pte-hero-left h1 { font-size: 30px; }
  .pte-stats-strip { grid-template-columns: repeat(2,1fr); }
  .pte-what-layout, .pte-reg-layout { grid-template-columns: 1fr; }
  .pte-prog-layout { grid-template-columns: 1fr; }
  .pte-ai-points { grid-template-columns: 1fr; }
  .pte-qtype-grid { grid-template-columns: 1fr; }
  .pte-pte-types-row { grid-template-columns: 1fr 1fr; }
  .pte-faq-grid { grid-template-columns: 1fr; }
  .pte-doc-list { grid-template-columns: 1fr; }
  .pte-sec-hd h2, .pte-cta-inner h2 { font-size: 26px; }
}
.test-prep-hero {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    min-height: 80vh;
    display: flex;
    align-items: center;
    position: relative;
    padding: 60px 20px 100px;
}

.test-prep-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, 
        rgba(15, 23, 42, 0.78) 0%, 
        rgba(101, 40, 247, 0.68) 45%, 
        rgba(15, 23, 42, 0.92) 100%);
    z-index: 1;
}

.test-prep-container {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    color: var(--ast-global-color-5);
    text-align: center;
}

.test-prep-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 32px;
    opacity: 0.9;
}

.test-prep-breadcrumb a {
    color: rgba(255,255,255,0.9);
    text-decoration: none;
}

.test-prep-breadcrumb a:hover {
    color: var(--ast-global-color-5);
}

.test-prep-breadcrumb i {
    color: rgba(255,255,255,0.7);
}

.test-prep-title {
    font-size: clamp(48px, 8vw, 80px);
    font-weight: 800;
    line-height: 1.1;
    background: linear-gradient(135deg, rgba(255,255,255,0.95), var(--ast-global-color-6));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin: 0 0 28px 0;
    text-shadow: 0 6px 32px rgba(0,0,0,0.6);
    letter-spacing: -0.02em;
}

.highlight {
    display: block;
    background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.test-prep-subtitle {
    font-size: 22px;
    line-height: 1.7;
    color: rgba(255,255,255,0.88);
    font-weight: 400;
    max-width: 650px;
    margin: 0 auto 48px;
    backdrop-filter: blur(12px);
}

.test-prep-stats {
    display: flex;
    justify-content: center;
    gap: 60px;
    background: rgba(255,255,255,0.14);
    backdrop-filter: blur(28px);
    padding: 36px 52px;
    border-radius: 28px;
    border: 1px solid rgba(255,255,255,0.3);
    box-shadow: 0 20px 60px rgba(0,0,0,0.35);
}

.stat-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.stat-number {
    font-size: 48px;
    font-weight: 900;
    background: linear-gradient(135deg, var(--ast-global-color-5), var(--ast-global-color-6));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1;
}

.stat-label {
    font-size: 16px;
    color: rgba(255,255,255,0.94);
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

@media (max-width: 1024px) {
    .test-prep-stats {
        flex-wrap: wrap;
        gap: 40px;
        padding: 32px 40px;
    }
}

@media (max-width: 768px) {
    .test-prep-hero {
        padding: 90px 20px 70px;
        background-attachment: scroll;
        min-height: 70vh;
    }
    
    .test-prep-title {
        font-size: 42px;
    }
    
    .test-prep-stats {
        flex-direction: column;
        gap: 36px;
        padding: 28px;
    }
    
    .test-prep-breadcrumb {
        justify-content: flex-start;
    }
}


/* ---- INTRO STRIP ---- */
.testprep-intro {
  background: var(--ast-global-color-2);
  padding: 28px 20px;
}

.testprep-intro-container {
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  flex-wrap: wrap;
}

.intro-stat {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 40px;
  color: #fff;
}

.intro-stat i {
  font-size: 28px;
  color: var(--ast-global-color-0);
}

.intro-stat strong {
  display: block;
  font-size: 26px;
  font-weight: 800;
  line-height: 1;
  background: linear-gradient(135deg, #fff, var(--ast-global-color-6));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.intro-stat span {
  display: block;
  font-size: 13px;
  color: rgba(255,255,255,0.65);
  margin-top: 4px;
}

.intro-divider {
  width: 1px;
  height: 50px;
  background: rgba(255,255,255,0.15);
}

/* ---- TEST SECTIONS ---- */
.section-tag {
  display: inline-block;
  padding: 8px 18px;
  border-radius: 999px;
  background: rgba(101, 40, 247, 0.10);
  color: var(--ast-global-color-0);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-bottom: 14px;
}

.test-section {
  padding: 90px 20px 100px;
  background: linear-gradient(160deg, #ffffff 0%, var(--ast-global-color-4) 100%);
}

.test-section-alt {
  background: linear-gradient(160deg, var(--ast-global-color-4) 0%, #e5e5e5 100%);
}

.test-container {
  max-width: 1240px;
  margin: 0 auto;
}

.test-header {
  text-align: center;
  max-width: 780px;
  margin: 0 auto 52px;
}

.test-pill {
  display: inline-block;
  padding: 10px 24px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 16px;
}

.ielts-pill { background: rgba(101,40,247,0.12); color: var(--ielts); }
.pte-pill   { background: rgba(14,165,233,0.12); color: var(--pte); }
.toefl-pill { background: rgba(245,158,11,0.12); color: var(--toefl); }

.test-header h2 {
  font-size: 38px;
  font-weight: 800;
  color: var(--ast-global-color-2);
  margin: 0 0 14px;
  line-height: 1.2;
}

.test-header p {
  font-size: 17px;
  line-height: 1.7;
  color: var(--ast-global-color-3);
  margin: 0;
}

/* ---- HIGHLIGHTS ---- */
.test-highlights {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-bottom: 60px;
}

.highlight-box {
  background: var(--ast-global-color-5);
  border-radius: 20px;
  padding: 28px 22px;
  text-align: center;
  border: 1px solid rgba(101,40,247,0.07);
  box-shadow: 0 8px 28px rgba(15,23,42,0.06);
  transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.highlight-box:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 44px rgba(15,23,42,0.10);
}

.highlight-icon {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  color: #fff;
  margin: 0 auto 16px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

.ielts-icon  { background: linear-gradient(135deg, #6528F7, #5511F8); }
.pte-icon    { background: linear-gradient(135deg, #0ea5e9, #0284c7); }
.toefl-icon  { background: linear-gradient(135deg, #f59e0b, #d97706); }

.highlight-box h4 {
  font-size: 16px;
  font-weight: 700;
  color: var(--ast-global-color-2);
  margin: 0 0 8px;
}

.highlight-box p {
  font-size: 13px;
  line-height: 1.6;
  color: var(--ast-global-color-3);
  margin: 0;
}

/* ---- PROGRAMS ---- */
.programs-title {
  text-align: center;
  font-size: 28px;
  font-weight: 800;
  color: var(--ast-global-color-2);
  margin: 0 0 10px;
}

.programs-subtitle {
  text-align: center;
  font-size: 16px;
  color: var(--ast-global-color-3);
  margin: 0 0 36px;
}

.programs-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-bottom: 60px;
}

.program-card {
  background: var(--ast-global-color-5);
  border-radius: 22px;
  padding: 26px 22px;
  border: 1px solid rgba(101,40,247,0.07);
  box-shadow: 0 10px 32px rgba(15,23,42,0.06);
  transition: transform 0.28s ease, box-shadow 0.28s ease;
  position: relative;
  overflow: hidden;
}

.program-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  border-radius: 0 0 8px 8px;
}

.ielts-card::before  { background: linear-gradient(90deg, #6528F7, #5511F8); }
.pte-card::before    { background: linear-gradient(90deg, #0ea5e9, #0284c7); }
.toefl-card::before  { background: linear-gradient(90deg, #f59e0b, #d97706); }

.program-card:hover {
  transform: translateY(-7px);
  box-shadow: 0 22px 52px rgba(15,23,42,0.12);
}

.program-icon {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: #fff;
  margin-bottom: 16px;
}

.program-card.ielts-card .program-icon  { background: linear-gradient(135deg, #6528F7, #5511F8); box-shadow: 0 6px 16px rgba(101,40,247,0.3); }
.program-card.pte-card .program-icon    { background: linear-gradient(135deg, #0ea5e9, #0284c7); box-shadow: 0 6px 16px rgba(14,165,233,0.3); }
.program-card.toefl-card .program-icon  { background: linear-gradient(135deg, #f59e0b, #d97706); box-shadow: 0 6px 16px rgba(245,158,11,0.3); }

.program-card h4 {
  font-size: 17px;
  font-weight: 700;
  color: var(--ast-global-color-2);
  margin: 0 0 8px;
}

.program-card p {
  font-size: 13px;
  line-height: 1.6;
  color: var(--ast-global-color-3);
  margin: 0 0 14px;
}

.program-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 8px;
}

.program-card ul li {
  position: relative;
  padding-left: 22px;
  font-size: 13px;
  color: var(--ast-global-color-2);
}

.program-card ul li::before {
  content: "\f058";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 1px;
  font-size: 12px;
}

.ielts-card ul li::before  { color: var(--ielts); }
.pte-card ul li::before    { color: var(--pte); }
.toefl-card ul li::before  { color: var(--toefl); }

/* ---- FAQ ---- */
.faq-block {
  max-width: 900px;
  margin: 0 auto;
}

.faq-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.faq-item {
  background: var(--ast-global-color-5);
  border: 1px solid rgba(101,40,247,0.1);
  border-radius: 16px;
  padding: 20px 22px;
  cursor: pointer;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.faq-item:hover {
  border-color: rgba(101,40,247,0.25);
  box-shadow: 0 8px 24px rgba(101,40,247,0.08);
}

.faq-item summary {
  font-size: 15px;
  font-weight: 700;
  color: var(--ast-global-color-2);
  list-style: none;
  cursor: pointer;
}

.faq-item summary::after {
  content: " +";
  color: var(--ast-global-color-0);
}

.faq-item[open] summary::after {
  content: " −";
}

.faq-item p {
  margin: 12px 0 0;
  font-size: 14px;
  line-height: 1.65;
  color: var(--ast-global-color-3);
}

/* ---- COMPARISON ---- */
.comparison-section {
  padding: 90px 20px 100px;
  background: var(--ast-global-color-2);
}

.comparison-container {
  max-width: 1000px;
  margin: 0 auto;
}

.comparison-header {
  text-align: center;
  max-width: 680px;
  margin: 0 auto 48px;
}

.comparison-header .section-tag {
  background: rgba(255,255,255,0.1);
  color: var(--ast-global-color-6);
}

.comparison-header h2 {
  font-size: 38px;
  font-weight: 800;
  color: var(--ast-global-color-5);
  margin: 0 0 12px;
}

.comparison-header p {
  font-size: 17px;
  line-height: 1.7;
  color: rgba(255,255,255,0.65);
  margin: 0;
}

.comparison-table-wrap {
  overflow-x: auto;
  border-radius: 20px;
  box-shadow: 0 16px 48px rgba(0,0,0,0.3);
}

.comparison-table {
  width: 100%;
  border-collapse: collapse;
  background: rgba(255,255,255,0.04);
  font-size: 14px;
  min-width: 600px;
}

.comparison-table thead tr {
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
}

.comparison-table thead th {
  padding: 18px 20px;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
}

.comparison-table thead th:first-child {
  text-align: left;
  border-radius: 20px 0 0 0;
}

.comparison-table thead th:last-child {
  border-radius: 0 20px 0 0;
}

.comparison-table tbody tr {
  border-bottom: 1px solid rgba(255,255,255,0.07);
  transition: background 0.2s ease;
}

.comparison-table tbody tr:hover {
  background: rgba(255,255,255,0.05);
}

.comparison-table tbody tr:last-child {
  border-bottom: none;
}

.comparison-table tbody td {
  padding: 16px 20px;
  color: rgba(255,255,255,0.85);
  text-align: center;
  vertical-align: middle;
}

.factor-label {
  text-align: left !important;
  font-weight: 700;
  color: rgba(255,255,255,0.95) !important;
  white-space: nowrap;
}

.factor-label i {
  color: var(--ast-global-color-6);
  margin-right: 8px;
  font-size: 13px;
}

.tag-yes {
  display: inline-block;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(16,185,129,0.15);
  color: #34d399;
  font-weight: 700;
  font-size: 12px;
}

.comparison-cta {
  text-align: center;
  margin-top: 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
}

.comparison-cta p {
  font-size: 22px;
  font-weight: 600;
  color: var(--ast-global-color-5);
  margin: 0;
}

.comparison-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 16px 32px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 12px 32px rgba(101,40,247,0.35);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.comparison-btn:hover {
  color: #fff;
  transform: translateY(-3px);
  box-shadow: 0 20px 48px rgba(101,40,247,0.45);
}

/* ---- FINAL CTA ---- */
.testprep-cta {
  padding: 80px 20px;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
}

.testprep-cta-inner {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  flex-wrap: wrap;
}

.cta-text h2 {
  font-size: 32px;
  font-weight: 800;
  color: #fff;
  margin: 0 0 10px;
  line-height: 1.2;
}

.cta-text p {
  font-size: 17px;
  color: rgba(255,255,255,0.85);
  margin: 0;
}

.cta-buttons {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.cta-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 16px 28px;
  background: #fff;
  color: var(--ast-global-color-0);
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 8px 24px rgba(0,0,0,0.2);
  transition: transform 0.25s, box-shadow 0.25s;
}

.cta-btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 16px 28px;
  background: rgba(255,255,255,0.15);
  color: #fff;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  border: 2px solid rgba(255,255,255,0.4);
  transition: background 0.25s, transform 0.25s;
}

.cta-btn-primary:hover  { transform: translateY(-3px); box-shadow: 0 16px 40px rgba(0,0,0,0.25); }
.cta-btn-secondary:hover { background: rgba(255,255,255,0.25); transform: translateY(-3px); }

/* ---- RESPONSIVE ---- */
@media (max-width: 1024px) {
  .test-highlights,
  .programs-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 767px) {
  .test-section, .comparison-section, .testprep-cta { padding: 70px 16px 80px; }
  .test-header h2, .programs-title { font-size: 28px; }
  .test-highlights, .programs-grid, .faq-grid { grid-template-columns: 1fr; }
  .testprep-cta-inner { flex-direction: column; text-align: center; }
  .cta-buttons { justify-content: center; }
  .intro-divider { display: none; }
  .testprep-intro-container { gap: 10px; }
  .intro-stat { padding: 12px 20px; }
}

/* Hero — Terms variant */
.tc-hero {
  background: linear-gradient(135deg, #0F172A 0%, #0d1f3c 60%, #0D0614 100%);
  padding: 72px 0 64px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.tc-hero::before {
  content: '';
  position: absolute;
  bottom: -80px; right: -80px;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(101,40,247,0.2) 0%, transparent 70%);
  border-radius: 50%;
  pointer-events: none;
}
.tc-hero-inner { position: relative; z-index: 2; }
.tc-hero-icon {
  width: 72px; height: 72px;
  background: linear-gradient(135deg, #6528F7, #5511F8);
  border-radius: 22px;
  display: flex; align-items: center; justify-content: center;
  font-size: 32px;
  margin: 0 auto 24px;
  box-shadow: 0 12px 40px rgba(101,40,247,0.4);
}
.tc-hero h1 { font-size: 40px; font-weight: 900; color: #fff; margin: 0 0 14px; }
.tc-hero p { font-size: 16px; color: rgba(255,255,255,0.65); margin: 0 0 20px; }
.tc-hero-meta {
  display: inline-flex; align-items: center; gap: 24px;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 100px; padding: 10px 24px;
}
.tc-hero-meta span { font-size: 13px; color: rgba(255,255,255,0.7); display: flex; align-items: center; gap: 6px; }
.tc-hero-meta span i { color: #a78bfa; }

/* Layout — same as privacy policy but TOC on right this time */
.tc-layout {
  display: block;
  padding: 60px 0 80px;
  align-items: start;
  max-width: 1160px;
  margin: 0 auto;
  padding-left: 24px;
  padding-right: 24px;
}
.tc-toc {
  position: sticky;
  top: 100px;
  background: #fff;
  border: 2px solid #D8D8F5;
  border-radius: 20px;
  padding: 24px;
}
.tc-toc h3 {
  font-size: 14px; font-weight: 800; color: #0F172A;
  text-transform: uppercase; letter-spacing: 1px;
  margin: 0 0 16px; display: flex; align-items: center; gap: 8px;
}
.tc-toc h3 i { color: #6528F7; }
.tc-toc-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 4px; }
.tc-toc-list li a {
  display: block; font-size: 13px; color: #454F5E;
  padding: 7px 12px; border-radius: 10px;
  text-decoration: none; font-weight: 500; transition: all 0.2s;
}
.tc-toc-list li a:hover { background: #F2F0FE; color: #6528F7; font-weight: 700; }
.tc-toc-divider { border: none; border-top: 1px solid #D8D8F5; margin: 12px 0; }
.tc-toc-note {
  background: #fff3cd;
  border: 1px solid #ffc107;
  border-radius: 12px; padding: 12px 14px;
}
.tc-toc-note p { font-size: 12px; color: #856404; margin: 0; line-height: 1.6; }

/* Content blocks */
.tc-content { min-width: 0; }
.tc-block {
  background: #fff;
  border: 2px solid #D8D8F5;
  border-radius: 22px;
  padding: 36px;
  margin-bottom: 20px;
  scroll-margin-top: 100px;
  transition: border-color 0.3s;
}
.tc-block:hover { border-color: rgba(101,40,247,0.25); }
.tc-num {
  display: inline-flex; align-items: center; gap: 8px;
  background: #F2F0FE; color: #6528F7;
  font-size: 12px; font-weight: 800;
  letter-spacing: 1px; text-transform: uppercase;
  padding: 5px 14px; border-radius: 100px; margin-bottom: 14px;
}
.tc-block h2 {
  font-size: 22px; font-weight: 800; color: #0F172A;
  margin: 0 0 16px; display: flex; align-items: center; gap: 10px;
}
.tc-block h2 i { color: #6528F7; font-size: 20px; }
.tc-block h3 { font-size: 16px; font-weight: 800; color: #0F172A; margin: 20px 0 10px; }
.tc-block p { font-size: 14px; color: #454F5E; line-height: 1.8; margin: 0 0 14px; }
.tc-block p:last-child { margin-bottom: 0; }
.tc-list {
  list-style: none; padding: 0; margin: 0 0 16px;
  display: flex; flex-direction: column; gap: 8px;
}
.tc-list li {
  display: flex; align-items: flex-start; gap: 10px;
  font-size: 14px; color: #454F5E; line-height: 1.7;
}
.tc-list li i { color: #10b981; font-size: 12px; margin-top: 4px; flex-shrink: 0; }
.tc-list li i.red { color: #ef4444; }
.tc-list li i.amber { color: #6528F7; }
.tc-box {
  border-radius: 14px; padding: 16px 20px; margin: 16px 0;
}
.tc-box.info {
  background: #F2F0FE;
  border: 2px solid rgba(101,40,247,0.18);
  border-left: 4px solid #6528F7;
}
.tc-box.warn {
  background: #fff8ed;
  border: 2px solid rgba(245,158,11,0.25);
  border-left: 4px solid #f59e0b;
}
.tc-box.danger {
  background: #fff5f5;
  border: 2px solid rgba(239,68,68,0.2);
  border-left: 4px solid #ef4444;
}
.tc-box p { font-size: 13px; color: #454F5E; margin: 0; line-height: 1.7; }
.tc-box p strong { color: #6528F7; }
.tc-box.warn p strong { color: #d97706; }
.tc-box.danger p strong { color: #dc2626; }

/* Services table */
.tc-table {
  width: 100%; border-collapse: collapse; border-radius: 14px; overflow: hidden; margin: 16px 0;
}
.tc-table thead th {
  background: linear-gradient(135deg,#6528F7,#5511F8);
  color: #fff; padding: 12px 16px;
  font-size: 13px; font-weight: 800; text-align: left;
}
.tc-table tbody tr { border-bottom: 1px solid #D8D8F5; }
.tc-table tbody tr:last-child { border-bottom: none; }
.tc-table tbody tr:nth-child(even) { background: #F2F0FE; }
.tc-table tbody td { padding: 12px 16px; font-size: 13px; color: #454F5E; vertical-align: top; }
.tc-table tbody td:first-child { font-weight: 700; color: #0F172A; }

/* Final acceptance block */
.tc-acceptance {
  background: linear-gradient(135deg, #6528F7, #5511F8);
  border-radius: 22px; padding: 36px;
  text-align: center; color: #fff; margin-top: 20px;
}
.tc-acceptance h3 { font-size: 22px; font-weight: 800; margin: 0 0 14px; }
.tc-acceptance p { font-size: 14px; color: rgba(255,255,255,0.8); line-height: 1.7; margin: 0 0 24px; max-width: 600px; margin-left: auto; margin-right: auto; }
.tc-acceptance-btns { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }
.tc-acc-btn-w {
  background: #fff; color: #6528F7;
  padding: 12px 28px; border-radius: 100px;
  font-size: 14px; font-weight: 800;
  text-decoration: none; display: inline-flex; align-items: center; gap: 8px;
  border: none; cursor: pointer;
}
.tc-acc-btn-g {
  background: transparent; color: #fff;
  padding: 12px 28px; border-radius: 100px;
  font-size: 14px; font-weight: 800;
  text-decoration: none; display: inline-flex; align-items: center; gap: 8px;
  border: 2px solid rgba(255,255,255,0.4); cursor: pointer;
}

@media (max-width: 900px) {
  .tc-layout { grid-template-columns: 1fr; }
  .tc-toc { position: static; }
  .tc-hero h1 { font-size: 28px; }
  .tc-hero-meta { flex-direction: column; gap: 10px; padding: 14px 20px; }
}

.destinations-hero {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    min-height: 80vh;
    display: flex;
    align-items: center;
    position: relative;
    padding: 60px 20px 100px;
}

.destinations-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, 
        rgba(15, 23, 42, 0.75) 0%, 
        rgba(101, 40, 247, 0.65) 40%, 
        rgba(15, 23, 42, 0.9) 100%);
    z-index: 1;
}

.destinations-container {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    color: var(--ast-global-color-5);
    text-align: center;
}

.destinations-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 32px;
    opacity: 0.9;
}

.destinations-breadcrumb a {
    color: rgba(255,255,255,0.9);
    text-decoration: none;
}

.destinations-breadcrumb a:hover {
    color: var(--ast-global-color-5);
}

.destinations-breadcrumb i {
    color: rgba(255,255,255,0.7);
}

.destinations-title {
    font-size: clamp(48px, 8vw, 80px);
    font-weight: 800;
    line-height: 1.1;
    background: linear-gradient(135deg, rgba(255,255,255,0.95), var(--ast-global-color-6));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin: 0 0 28px 0;
    text-shadow: 0 6px 32px rgba(0,0,0,0.6);
    letter-spacing: -0.02em;
}

.highlight {
    display: block;
    background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.destinations-subtitle {
    font-size: 22px;
    line-height: 1.7;
    color: rgba(255,255,255,0.88);
    font-weight: 400;
    max-width: 650px;
    margin: 0 auto 48px;
    backdrop-filter: blur(12px);
}

.destinations-stats {
    display: flex;
    justify-content: center;
    gap: 60px;
    background: rgba(255,255,255,0.12);
    backdrop-filter: blur(25px);
    padding: 32px 48px;
    border-radius: 24px;
    border: 1px solid rgba(255,255,255,0.25);
    box-shadow: 0 16px 48px rgba(0,0,0,0.3);
}

.stat-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.stat-number {
    font-size: 44px;
    font-weight: 900;
    background: linear-gradient(135deg, var(--ast-global-color-5), var(--ast-global-color-6));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1;
}

.stat-label {
    font-size: 16px;
    color: rgba(255,255,255,0.92);
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

@media (max-width: 1024px) {
    .destinations-stats {
        flex-wrap: wrap;
        gap: 40px;
        padding: 28px 32px;
    }
}

@media (max-width: 768px) {
    .destinations-hero {
        padding: 90px 20px 70px;
        background-attachment: scroll;
        min-height: 70vh;
    }
    
    .destinations-title {
        font-size: 40px;
    }
    
    .destinations-stats {
        flex-direction: column;
        gap: 32px;
        padding: 24px;
    }
    
    .destinations-breadcrumb {
        justify-content: flex-start;
    }
}

/* ---- HERO Counseling---- */
.counseling-hero {
  background-image: url('/wp-content/uploads/2026/03/2.jpg');
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  min-height: 65vh;
  display: flex;
  align-items: center;
  position: relative;
  padding: 100px 20px 100px;
}

.counseling-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg,
    rgba(15,23,42,0.82) 0%,
    rgba(101,40,247,0.70) 50%,
    rgba(15,23,42,0.90) 100%);
  z-index: 1;
}

.counseling-hero-container {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  position: relative;
  z-index: 2;
  color: var(--ast-global-color-5);
}

.hero-breadcrumb {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: rgba(255,255,255,0.8);
  margin-bottom: 24px;
}

.hero-breadcrumb a {
  color: rgba(255,255,255,0.8);
  text-decoration: none;
}

.hero-breadcrumb i {
  font-size: 12px;
  color: rgba(255,255,255,0.5);
}

.counseling-hero-container h1 {
  font-size: clamp(40px, 7vw, 68px);
  font-weight: 800;
  margin: 0 0 20px;
  line-height: 1.1;
  background: linear-gradient(135deg, rgba(255,255,255,0.95), var(--ast-global-color-6));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.hero-highlight {
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.counseling-hero-container p {
  font-size: 20px;
  line-height: 1.7;
  color: rgba(255,255,255,0.88);
  max-width: 600px;
  margin: 0 auto;
}

/* ---- MAIN SECTION ---- */
.counseling-main {
  padding: 90px 20px 100px;
  background: linear-gradient(160deg, var(--ast-global-color-4) 0%, #ffffff 100%);
}

.counseling-container {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 460px;
  gap: 72px;
  align-items: start;
}

/* LEFT COLUMN */
.block-title {
  font-size: 24px;
  font-weight: 800;
  color: var(--ast-global-color-2);
  margin: 0 0 28px;
}

/* Steps */
.steps-block {
  margin-bottom: 44px;
}

.steps {
  display: flex;
  flex-direction: column;
}

.step-item {
  display: flex;
  align-items: flex-start;
  gap: 18px;
}

.step-number {
  width: 48px;
  height: 48px;
  min-width: 48px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 800;
  box-shadow: 0 8px 20px rgba(101,40,247,0.30);
}

.step-content h4 {
  margin: 8px 0 6px;
  font-size: 17px;
  font-weight: 700;
  color: var(--ast-global-color-2);
}

.step-content p {
  margin: 0;
  font-size: 15px;
  line-height: 1.6;
  color: var(--ast-global-color-3);
}

.step-connector {
  width: 2px;
  height: 32px;
  background: linear-gradient(180deg, var(--ast-global-color-0), rgba(101,40,247,0.2));
  margin-left: 23px;
  border-radius: 2px;
}

/* Why Block */
.why-block {
  background: var(--ast-global-color-5);
  border-radius: 20px;
  padding: 28px;
  border: 1px solid rgba(101,40,247,0.10);
  box-shadow: 0 10px 32px rgba(15,23,42,0.07);
  margin-bottom: 36px;
}

.why-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 14px;
}

.why-list li {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 15px;
  font-weight: 600;
  color: var(--ast-global-color-2);
}

.why-list li i {
  color: var(--ast-global-color-0);
  font-size: 18px;
  flex-shrink: 0;
}

/* Trust Stats */
.trust-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.trust-stat {
  background: var(--ast-global-color-5);
  border-radius: 18px;
  padding: 20px 14px;
  text-align: center;
  border: 1px solid rgba(101,40,247,0.08);
  box-shadow: 0 8px 24px rgba(15,23,42,0.06);
  transition: transform 0.25s ease;
}

.trust-stat:hover {
  transform: translateY(-4px);
}

.trust-number {
  display: block;
  font-size: 26px;
  font-weight: 800;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1.2;
  margin-bottom: 6px;
}

.trust-label {
  display: block;
  font-size: 12px;
  font-weight: 600;
  color: var(--ast-global-color-3);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

/* RIGHT COLUMN — FORM */
.counseling-right {
  position: sticky;
  top: 100px;
}

.form-card {
  background: var(--ast-global-color-5);
  border-radius: 24px;
  padding: 40px 32px;
  border: 1px solid rgba(101,40,247,0.10);
  box-shadow: 0 24px 64px rgba(15,23,42,0.12);
  position: relative;
  overflow: hidden;
}

.form-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--ast-global-color-0), var(--ast-global-color-1));
}

.form-card-header {
  text-align: center;
  margin-bottom: 28px;
}

.form-header-icon {
  width: 64px;
  height: 64px;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  color: #fff;
  margin: 0 auto 16px;
  box-shadow: 0 10px 28px rgba(101,40,247,0.3);
}

.form-card-header h3 {
  font-size: 22px;
  font-weight: 800;
  color: var(--ast-global-color-2);
  margin: 0 0 8px;
}

.form-card-header p {
  font-size: 14px;
  color: var(--ast-global-color-3);
  margin: 0;
  line-height: 1.6;
}

.sureform-wrap {
  margin-top: 4px;
}

/* SureForms overrides */
.sureform-wrap input,
.sureform-wrap select,
.sureform-wrap textarea {
  width: 100%;
  padding: 14px 18px;
  border: 2px solid rgba(101,40,247,0.12);
  border-radius: 12px;
  font-size: 15px;
  margin-bottom: 14px;
  transition: border-color 0.25s, box-shadow 0.25s;
  background: rgba(255,255,255,0.95);
  box-sizing: border-box;
}

.sureform-wrap input:focus,
.sureform-wrap select:focus,
.sureform-wrap textarea:focus {
  outline: none;
  border-color: var(--ast-global-color-0);
  box-shadow: 0 0 0 4px rgba(101,40,247,0.10);
}

.sureform-wrap button[type="submit"] {
  width: 100%;
  padding: 16px;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  color: #fff;
  border: none;
  border-radius: 12px;
  font-size: 17px;
  font-weight: 700;
  cursor: pointer;
  transition: transform 0.25s, box-shadow 0.25s;
  box-shadow: 0 10px 28px rgba(101,40,247,0.28);
}

.sureform-wrap button[type="submit"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 36px rgba(101,40,247,0.38);
}

/* ---- SESSION SECTION ---- */
.session-section {
  padding: 90px 20px 100px;
  background: var(--ast-global-color-2);
  position: relative;
  overflow: hidden;
}

.session-section::before {
  content: '';
  position: absolute;
  top: -100px; left: -60px;
  width: 420px; height: 420px;
  background: radial-gradient(circle, rgba(101,40,247,0.2), transparent 65%);
  pointer-events: none;
}

.session-section::after {
  content: '';
  position: absolute;
  bottom: -80px; right: -40px;
  width: 350px; height: 350px;
  background: radial-gradient(circle, rgba(85,17,248,0.18), transparent 65%);
  pointer-events: none;
}

.session-container {
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.session-header {
  text-align: center;
  max-width: 680px;
  margin: 0 auto 52px;
}

.section-tag {
  display: inline-block;
  padding: 8px 18px;
  border-radius: 999px;
  background: rgba(255,255,255,0.1);
  color: var(--ast-global-color-6);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-bottom: 14px;
}

.session-header h2 {
  font-size: 38px;
  font-weight: 800;
  color: var(--ast-global-color-5);
  margin: 0 0 14px;
  line-height: 1.2;
}

.session-header p {
  font-size: 17px;
  line-height: 1.7;
  color: rgba(255,255,255,0.65);
  margin: 0;
}

.session-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.session-card {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 22px;
  padding: 32px 26px;
  transition: transform 0.28s ease, background 0.28s ease, border-color 0.28s ease;
  backdrop-filter: blur(10px);
}

.session-card:hover {
  transform: translateY(-7px);
  background: rgba(101,40,247,0.15);
  border-color: rgba(101,40,247,0.3);
}

.session-icon {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  color: #fff;
  margin-bottom: 20px;
  box-shadow: 0 10px 24px rgba(101,40,247,0.35);
}

.session-card h4 {
  font-size: 18px;
  font-weight: 700;
  color: var(--ast-global-color-5);
  margin: 0 0 10px;
}

.session-card p {
  font-size: 14px;
  line-height: 1.7;
  color: rgba(255,255,255,0.65);
  margin: 0;
}

/* ---- FINAL CTA ---- */
.counseling-cta {
  padding: 80px 20px;
  background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
}

.counseling-cta-inner {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  flex-wrap: wrap;
}

.cta-text h2 {
  font-size: 32px;
  font-weight: 800;
  color: #fff;
  margin: 0 0 10px;
}

.cta-text p {
  font-size: 17px;
  color: rgba(255,255,255,0.85);
  margin: 0;
}

.cta-buttons {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.cta-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 16px 28px;
  background: #fff;
  color: var(--ast-global-color-0);
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 8px 24px rgba(0,0,0,0.2);
  transition: transform 0.25s, box-shadow 0.25s;
}

.cta-btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 16px 28px;
  background: rgba(255,255,255,0.15);
  color: #fff;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  border: 2px solid rgba(255,255,255,0.4);
  transition: background 0.25s, transform 0.25s;
}

.cta-btn-primary:hover  { transform: translateY(-3px); box-shadow: 0 16px 40px rgba(0,0,0,0.25); color: var(--ast-global-color-0); }
.cta-btn-secondary:hover { background: rgba(255,255,255,0.25); transform: translateY(-3px); color: #fff; }

/* ---- RESPONSIVE ---- */
@media (max-width: 1024px) {
  .counseling-container {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .counseling-right {
    position: static;
  }

  .form-card {
    max-width: 560px;
    margin: 0 auto;
  }

  .trust-stats {
    grid-template-columns: repeat(2, 1fr);
  }

  .session-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .counseling-hero {
    padding: 90px 20px 70px;
    background-attachment: scroll;
  }

  .counseling-main,
  .session-section,
  .counseling-cta {
    padding: 70px 16px 80px;
  }

  .session-header h2,
  .block-title {
    font-size: 28px;
  }

  .session-grid {
    grid-template-columns: 1fr;
  }

  .trust-stats {
    grid-template-columns: repeat(2, 1fr);
  }

  .counseling-cta-inner {
    flex-direction: column;
    text-align: center;
  }

  .cta-buttons {
    justify-content: center;
    flex-direction: column;
    width: 100%;
  }

  .cta-btn-primary,
  .cta-btn-secondary {
    justify-content: center;
  }
}

/* Hero Section */
.contact-hero {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    min-height: 70vh;
    display: flex;
    align-items: center;
    position: relative;
    padding: 60px 20px 80px;
}

.contact-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, 
        rgba(15, 23, 42, 0.8) 0%, 
        rgba(101, 40, 247, 0.65) 50%, 
        rgba(15, 23, 42, 0.9) 100%);
    z-index: 1;
}

.contact-container {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    color: var(--ast-global-color-5);
}

.contact-breadcrumb {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 24px;
    opacity: 0.9;
    justify-content: center;
}

.contact-breadcrumb a {
    color: rgba(255,255,255,0.9);
    text-decoration: none;
}

.contact-breadcrumb a:hover {
    color: var(--ast-global-color-5);
}

.contact-breadcrumb i {
    color: rgba(255,255,255,0.7);
}

.contact-content {
    text-align: center;
    max-width: 700px;
    margin: 0 auto;
}

.contact-title {
    font-size: clamp(42px, 7vw, 68px);
    font-weight: 800;
    line-height: 1.1;
    background: linear-gradient(135deg, rgba(255,255,255,0.95), var(--ast-global-color-6));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin: 0 0 20px 0;
    text-shadow: 0 4px 24px rgba(0,0,0,0.5);
}

.contact-subtitle {
    font-size: 20px;
    line-height: 1.6;
    color: rgba(255,255,255,0.9);
    font-weight: 400;
    max-width: 550px;
    margin: 0 auto;
}

/* Main Contact Section */
.contact-main {
    padding: 100px 20px;
    background: linear-gradient(135deg, var(--ast-global-color-4) 0%, var(--ast-global-color-5) 100%);
}

.contact-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 420px;
    gap: 80px;
    align-items: start;
}

.contact-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
}

.contact-card {
    display: flex;
    gap: 16px;
    padding: 28px;
    border-radius: 20px;
    backdrop-filter: blur(20px);
    border: 1px solid rgba(101,40,247,0.1);
    transition: all 0.3s ease;
    background: var(--ast-global-color-5);
    box-shadow: 0 12px 40px rgba(0,0,0,0.08);
}

.contact-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 64px rgba(0,0,0,0.15);
}

.contact-card.location {
    border-left: 5px solid var(--ast-global-color-0);
    background: linear-gradient(135deg, var(--purple-light) 0%, var(--ast-global-color-5) 100%);
}

.contact-card.phone {
    border-left: 5px solid var(--teal);
    background: linear-gradient(135deg, var(--teal-light) 0%, var(--ast-global-color-5) 100%);
}

.contact-card.email {
    border-left: 5px solid var(--yellow);
    background: linear-gradient(135deg, var(--yellow-light) 0%, var(--ast-global-color-5) 100%);
}

.contact-card.hours {
    border-left: 5px solid var(--ast-global-color-0);
    background: linear-gradient(135deg, var(--purple-light) 0%, var(--ast-global-color-5) 100%);
}

.card-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    flex-shrink: 0;
}

.contact-card.location .card-icon { background: var(--purple-light); color: var(--ast-global-color-0); }
.contact-card.phone .card-icon { background: var(--teal-light); color: var(--teal); }
.contact-card.email .card-icon { background: var(--yellow-light); color: #E68900; }
.contact-card.hours .card-icon { background: var(--purple-light); color: var(--ast-global-color-0); }

.card-content h4 {
    margin: 0 0 16px 0;
    font-size: 18px;
    font-weight: 700;
    color: var(--ast-global-color-2);
}

.card-content p, .card-content a {
    margin: 0;
    font-size: 15px;
    line-height: 1.7;
    color: var(--ast-global-color-3);
}

.card-content a {
    text-decoration: none;
}

.card-content a:hover {
    color: var(--ast-global-color-0);
}

.contact-form-section {
    display: flex;
    justify-content: flex-end;
}

.form-card {
    background: var(--ast-global-color-5);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(101,40,247,0.1);
    border-radius: 24px;
    padding: 48px 32px;
    box-shadow: 0 32px 80px rgba(0,0,0,0.12);
    width: 100%;
    max-width: 420px;
}

.form-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--ast-global-color-0), var(--ast-global-color-1));
    border-radius: 24px 24px 0 0;
}

.form-header {
    text-align: center;
    margin-bottom: 32px;
    position: relative;
}

.form-icon {
    width: 64px;
    height: 64px;
    background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    color: white;
    font-size: 24px;
}

.form-header h3 {
    margin: 0;
    font-size: 24px;
    font-weight: 700;
    color: var(--ast-global-color-2);
}

.sureforms-container {
    margin-bottom: 32px;
}

.sureforms-container input,
.sureforms-container select,
.sureforms-container textarea {
    width: 100%;
    padding: 16px 20px;
    border: 2px solid rgba(101,40,247,0.15);
    border-radius: 12px;
    font-size: 16px;
    margin-bottom: 16px;
    transition: all 0.3s ease;
    background: rgba(255,255,255,0.9);
    box-sizing: border-box;
}

.sureforms-container input:focus,
.sureforms-container select:focus,
.sureforms-container textarea:focus {
    outline: none;
    border-color: var(--ast-global-color-0);
    box-shadow: 0 0 0 4px rgba(101,40,247,0.1);
}

.sureforms-container button[type="submit"] {
    width: 100%;
    padding: 18px;
    background: linear-gradient(135deg, var(--ast-global-color-0), var(--ast-global-color-1));
    color: white;
    border: none;
    border-radius: 12px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
}

.sureforms-container button[type="submit"]:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(101,40,247,0.4);
}

@media (max-width: 1024px) {
    .contact-wrapper {
        grid-template-columns: 1fr;
        gap: 60px;
        text-align: center;
    }
    
    .contact-form-section {
        justify-content: center;
    }
}

@media (max-width: 768px) {
    .contact-hero {
        padding: 80px 20px 60px;
        background-attachment: scroll;
    }
    
    .contact-main {
        padding: 60px 20px;
    }
    
    .contact-cards {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .form-card {
        padding: 40px 24px;
        margin: 0 10px;
    }
}

/*-- About Page Hero Header --*/
.about-hero {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    min-height: 70vh;
    display: flex;
    align-items: center;
    position: relative;
    padding: 60px 20px 80px;
}

.about-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, 
        rgba(15, 23, 42, 0.75) 0%, 
        rgba(101, 40, 247, 0.6) 50%, 
        rgba(15, 23, 42, 0.85) 100%);
    z-index: 1;
}

.about-container {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    color: var(--ast-global-color-5);
}

.about-breadcrumb {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 24px;
    opacity: 0.9;
    justify-content: center;
}

.about-breadcrumb a {
    color: rgba(255,255,255,0.9);
    text-decoration: none;
}

.about-breadcrumb a:hover {
    color: var(--ast-global-color-5);
}

.about-breadcrumb i {
    color: rgba(255,255,255,0.7);
}

.about-content {
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
}

.about-title {
    font-size: clamp(42px, 7vw, 72px);
    font-weight: 800;
    line-height: 1.1;
    background: linear-gradient(135deg, rgba(255,255,255,0.95), var(--ast-global-color-6));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin: 0 0 24px 0;
    text-shadow: 0 4px 24px rgba(0,0,0,0.5);
}

.highlight {
    background: linear-gradient(135deg, var(--purple) 0%, var(--amber-rich) 60%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.about-subtitle {
    font-size: 22px;
    line-height: 1.6;
    color: rgba(255,255,255,0.9);
    font-weight: 400;
    max-width: 600px;
    margin: 0 auto;
    backdrop-filter: blur(10px);
}

@media (max-width: 768px) {
    .about-hero {
        padding: 80px 20px 60px;
        background-attachment: scroll;
        min-height: 60vh;
    }
    
    .about-breadcrumb {
        justify-content: center;
    }
    
    .about-title {
        font-size: 36px;
    }
    
    .about-subtitle {
        font-size: 18px;
    }
}

/* Privacy Policy */

.pp-wrap { max-width: 900px; margin: 0 auto; padding: 0 24px; }
.pp-full-wrap { max-width: 1160px; margin: 0 auto; padding: 0 24px; }

/* Hero */
.pp-hero {
  background: linear-gradient(135deg, var(--pp-bg-dark) 0%, #1a0533 100%);
  padding: 72px 0 64px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.pp-hero::before {
  content: '';
  position: absolute;
  top: -80px; left: 50%;
  transform: translateX(-50%);
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(101,40,247,0.2) 0%, transparent 70%);
  border-radius: 50%;
  pointer-events: none;
}
.pp-hero-inner { position: relative; z-index: 2; }
.pp-hero-icon {
  width: 72px; height: 72px;
  background: linear-gradient(135deg, var(--pp-purple), var(--pp-purple-dark));
  border-radius: 22px;
  display: flex; align-items: center; justify-content: center;
  font-size: 32px;
  margin: 0 auto 24px;
  box-shadow: 0 12px 40px rgba(101,40,247,0.4);
}
.pp-hero h1 { font-size: 40px; font-weight: 900; color: #fff; margin: 0 0 14px; }
.pp-hero p { font-size: 16px; color: rgba(255,255,255,0.65); margin: 0 0 20px; }
.pp-hero-meta {
  display: inline-flex; align-items: center; gap: 24px;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 100px; padding: 10px 24px;
}
.pp-hero-meta span { font-size: 13px; color: rgba(255,255,255,0.7); display: flex; align-items: center; gap: 6px; }
.pp-hero-meta span i { color: #a78bfa; }

/* TOC Sidebar Layout */
.pp-layout {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 48px;
  padding: 60px 0 80px;
  align-items: start;
}
.pp-toc {
  position: sticky;
  top: 100px;
  background: #fff;
  border: 2px solid var(--pp-border);
  border-radius: 20px;
  padding: 24px;
}
.pp-toc h3 {
  font-size: 14px; font-weight: 800; color: var(--pp-heading);
  text-transform: uppercase; letter-spacing: 1px;
  margin: 0 0 16px; display: flex; align-items: center; gap: 8px;
}
.pp-toc h3 i { color: var(--pp-purple); }
.pp-toc-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 4px; }
.pp-toc-list li a {
  display: block;
  font-size: 13px; color: var(--pp-text);
  padding: 8px 12px; border-radius: 10px;
  text-decoration: none; font-weight: 500;
  transition: all 0.2s;
}
.pp-toc-list li a:hover { background: var(--pp-soft); color: var(--pp-purple); font-weight: 700; }
.pp-toc-divider { border: none; border-top: 1px solid var(--pp-border); margin: 12px 0; }
.pp-toc-contact {
  background: var(--pp-soft);
  border-radius: 12px; padding: 14px;
  margin-top: 12px;
}
.pp-toc-contact p { font-size: 12px; color: var(--pp-text); margin: 0 0 8px; }
.pp-toc-contact a {
  display: inline-flex; align-items: center; gap: 6px;
  background: linear-gradient(135deg, var(--pp-purple), var(--pp-purple-dark));
  color: #fff; font-size: 12px; font-weight: 700;
  padding: 8px 14px; border-radius: 100px; text-decoration: none;
}

/* Content Area */
.pp-content { min-width: 0; }
.pp-section-block {
  background: #fff;
  border: 2px solid var(--pp-border);
  border-radius: 22px;
  padding: 36px;
  margin-bottom: 20px;
  scroll-margin-top: 100px;
}
.pp-section-block:hover { border-color: rgba(101,40,247,0.25); }
.pp-section-num {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--pp-soft);
  color: var(--pp-purple);
  font-size: 12px; font-weight: 800;
  letter-spacing: 1px; text-transform: uppercase;
  padding: 5px 14px; border-radius: 100px;
  margin-bottom: 14px;
}
.pp-section-block h2 {
  font-size: 22px; font-weight: 800; color: var(--pp-heading);
  margin: 0 0 16px; display: flex; align-items: center; gap: 10px;
}
.pp-section-block h2 i { color: var(--pp-purple); font-size: 20px; }
.pp-section-block p {
  font-size: 14px; color: var(--pp-text);
  line-height: 1.8; margin: 0 0 14px;
}
.pp-section-block p:last-child { margin-bottom: 0; }
.pp-section-block h3 {
  font-size: 16px; font-weight: 800; color: var(--pp-heading);
  margin: 20px 0 10px;
}
.pp-list {
  list-style: none; padding: 0; margin: 0 0 16px;
  display: flex; flex-direction: column; gap: 8px;
}
.pp-list li {
  display: flex; align-items: flex-start; gap: 10px;
  font-size: 14px; color: var(--pp-text); line-height: 1.7;
}
.pp-list li i { color: var(--pp-green); font-size: 12px; margin-top: 4px; flex-shrink: 0; }
.pp-list li i.red { color: #ef4444; }
.pp-list li i.amber { color: var(--pp-purple); }
.pp-highlight-box {
  background: var(--pp-soft);
  border: 2px solid rgba(101,40,247,0.18);
  border-left: 4px solid var(--pp-purple);
  border-radius: 14px; padding: 16px 20px;
  margin: 16px 0;
}
.pp-highlight-box p { font-size: 13px; color: var(--pp-text); margin: 0; line-height: 1.7; }
.pp-highlight-box strong { color: var(--pp-purple); }
.pp-table {
  width: 100%; border-collapse: collapse; border-radius: 14px; overflow: hidden;
  margin: 16px 0;
}
.pp-table thead th {
  background: linear-gradient(135deg,var(--pp-purple),var(--pp-purple-dark));
  color: #fff; padding: 12px 16px; font-size: 13px; font-weight: 800; text-align: left;
}
.pp-table tbody tr { border-bottom: 1px solid var(--pp-border); }
.pp-table tbody tr:last-child { border-bottom: none; }
.pp-table tbody tr:nth-child(even) { background: var(--pp-soft); }
.pp-table tbody td { padding: 12px 16px; font-size: 13px; color: var(--pp-text); vertical-align: top; }
.pp-table tbody td:first-child { font-weight: 700; color: var(--pp-heading); }

/* Contact Card */
.pp-contact-card {
  background: linear-gradient(135deg, var(--pp-purple), var(--pp-purple-dark));
  border-radius: 22px; padding: 32px;
  text-align: center; color: #fff;
  margin-top: 20px;
}
.pp-contact-card h3 { font-size: 20px; font-weight: 800; margin: 0 0 10px; }
.pp-contact-card p { font-size: 14px; color: rgba(255,255,255,0.8); margin: 0 0 20px; }
.pp-contact-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 14px; }
.pp-contact-item {
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 14px; padding: 16px;
}
.pp-contact-item i { font-size: 20px; margin-bottom: 8px; color: #a78bfa; }
.pp-contact-item h5 { font-size: 12px; color: rgba(255,255,255,0.65); margin: 0 0 4px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; }
.pp-contact-item p { font-size: 13px; font-weight: 700; color: #fff; margin: 0; }

@media (max-width: 900px) {
  .pp-layout { grid-template-columns: 1fr; }
  .pp-toc { position: static; }
  .pp-hero h1 { font-size: 28px; }
  .pp-contact-grid { grid-template-columns: 1fr; }
  .pp-hero-meta { flex-direction: column; gap: 10px; padding: 14px 20px; }
}


#srfm-phone-35bbb39f-lbl-UGhvbmUgTnVtYmVy {
  padding-left: 58px !important;
}

/* ===== PREMIUM FLOATING CONTACT RAIL ===== */
.egc-rail {
  position: fixed;
  right: 18px;
  top: 58%;
  transform: translateY(-50%);
  z-index: 9999;
}

.egc-strip {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px 10px;
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(15,23,42,0.92) 0%, rgba(13,6,20,0.92) 100%);
  border: 1px solid rgba(255,255,255,0.10);
  box-shadow:
    0 18px 50px rgba(15,23,42,0.28),
    inset 0 1px 0 rgba(255,255,255,0.10);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

/* soft glow */
.egc-strip::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: 28px;
  padding: 1px;
  background: linear-gradient(180deg, rgba(101,40,247,0.45), rgba(2,132,199,0.18), rgba(217,119,6,0.18));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
}

/* item */
.egc-item {
  position: relative;
  display: flex;
  justify-content: flex-end;
  text-decoration: none;
  border-radius: 18px;
  overflow: visible;
}

.egc-item-inner {
  position: relative;
  width: 52px;
  height: 52px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  box-shadow: 0 10px 24px rgba(0,0,0,0.18);
  transition: transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease;
}

.egc-item:hover .egc-item-inner {
  transform: translateX(-4px) scale(1.03);
  box-shadow: 0 16px 30px rgba(0,0,0,0.24);
  filter: saturate(1.08);
}

.egc-icon {
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}

.egc-icon i {
  font-size: 19px;
}

/* label */
.egc-label {
  position: absolute;
  right: 62px;
  top: 50%;
  transform: translateY(-50%) translateX(12px);
  opacity: 0;
  visibility: hidden;
  white-space: nowrap;
  padding: 11px 16px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #fff;
  pointer-events: none;
  transition: all 0.28s ease;
  box-shadow: 0 12px 26px rgba(15,23,42,0.20);
}

.egc-item:hover .egc-label {
  opacity: 1;
  visibility: visible;
  transform: translateY(-50%) translateX(0);
}

/* item themes */
.egc-item--contact .egc-item-inner {
  background: linear-gradient(135deg, #FFC107 0%, #d97706 100%);
}
.egc-item--contact .egc-label {
  background: linear-gradient(135deg, #FFC107 0%, #d97706 100%);
}

.egc-item--whatsapp .egc-item-inner {
  background: linear-gradient(135deg, #25D366 0%, #16a34a 100%);
}
.egc-item--whatsapp .egc-label {
  background: linear-gradient(135deg, #25D366 0%, #16a34a 100%);
}

.egc-item--phone .egc-item-inner {
  background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
}
.egc-item--phone .egc-label {
  background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
}
.egc-item.egc-item--facebook .egc-item-inner {
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #070ac3 35%, #2427d6 60%, #285AEB 100%);
}
.egc-item.egc-item--facebook .egc-label {
  background: linear-gradient(135deg, #0ea5e9 0%, #2427d6 100%);
}
.egc-item--instagram .egc-item-inner {
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fd5949 35%, #d6249f 60%, #285AEB 100%);
}
.egc-item--instagram .egc-label {
  background: linear-gradient(135deg, #d6249f 0%, #285AEB 100%);
}

/* ===== FORM PANEL ===== */
.egc-form-wrap {
  position: absolute;
  right: 68px;
  top: 50%;
  transform: translateY(-50%) translateX(18px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all 0.32s ease;
  z-index: 10001;
}

.egc-item--contact:hover .egc-form-wrap,
.egc-form-wrap:hover {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(-50%) translateX(0);
}

.egc-form-box {
  position: relative;
  width: 380px;
  max-width: calc(100vw - 110px);
  max-height: 82vh;
  overflow-y: auto;
  background: linear-gradient(180deg, var(--blue-light) 0%, #f8f7ff 100%);
  border-radius: 26px;
  border: 1px solid rgba(101,40,247,0.12);
  box-shadow:
    0 30px 80px rgba(15,23,42,0.20),
    0 10px 24px rgba(101,40,247,0.10);
  padding: 22px 22px 18px;
}

.egc-form-box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 5px;
  border-radius: 26px 26px 0 0;
  background: linear-gradient(90deg, #6528F7 0%, #5511F8 55%, #0284c7 100%);
}

.egc-form-close {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 34px;
  height: 34px;
  border: none;
  border-radius: 50%;
  background: #f3f4f6;
  color: #64748b;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  display: none; /* shown on mobile with JS/tap approach if needed */
}

.egc-form-head {
  padding-right: 26px;
  margin-bottom: 18px;
}

.egc-form-badge {
  display: inline-flex;
  align-items: center;
  padding: 7px 14px;
  border-radius: 999px;
  background: rgba(101,40,247,0.08);
  color: #6528F7;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.egc-form-head h4 {
  margin: 0 0 8px;
  font-size: 24px;
  line-height: 1.2;
  font-weight: 800;
  color: #0F172A;
}

.egc-form-head p {
  margin: 0;
  font-size: 14px;
  line-height: 1.65;
  color: #454F5E;
}

/* sureforms styling */
.egc-form-body .srfm-form-container,
.egc-form-body form {
  margin: 0;
}

.egc-form-box input,
.egc-form-box select,
.egc-form-box textarea {
  width: 100% !important;
  padding: 14px 16px !important;
  margin-bottom: 14px !important;
  border: 1.5px solid rgba(101,40,247,0.15) !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,0.95) !important;
  box-shadow: none !important;
  font-size: 14px !important;
  color: #0F172A !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease !important;
  box-sizing: border-box !important;
}

.egc-form-box input:focus,
.egc-form-box select:focus,
.egc-form-box textarea:focus {
  outline: none !important;
  border-color: #6528F7 !important;
  box-shadow: 0 0 0 4px rgba(101,40,247,0.10) !important;
  transform: translateY(-1px);
}

.egc-form-box textarea {
  min-height: 120px !important;
  resize: vertical !important;
}

.egc-form-box button[type="submit"],
.egc-form-box .srfm-submit-button {
  width: 100% !important;
  padding: 16px 18px !important;
  border: none !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #6528F7 0%, #5511F8 55%, #7c3aed 100%) !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em !important;
  box-shadow: 0 14px 30px rgba(101,40,247,0.28) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease !important;
  cursor: pointer !important;
}

.egc-form-box button[type="submit"]:hover,
.egc-form-box .srfm-submit-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 36px rgba(101,40,247,0.36) !important;
}

/* scrollbar */
.egc-form-box::-webkit-scrollbar {
  width: 8px;
}
.egc-form-box::-webkit-scrollbar-thumb {
  background: rgba(101,40,247,0.22);
  border-radius: 20px;
}

/* mobile */
@media (max-width: 991px) {
  .egc-rail {
    right: 12px;
    top: auto;
    bottom: 90px;
    transform: none;
  }

  .egc-strip {
    gap: 8px;
    padding: 10px 8px;
    border-radius: 24px;
  }

  .egc-item-inner,
  .egc-icon {
    width: 46px;
    height: 46px;
  }

  .egc-icon i {
    font-size: 17px;
  }

  .egc-label {
    right: 56px;
    font-size: 12px;
    padding: 9px 13px;
  }

  .egc-form-wrap {
    right: 58px;
  }

  .egc-form-box {
    width: 320px;
    border-radius: 22px;
    padding: 18px 18px 16px;
  }

  .egc-form-head h4 {
    font-size: 20px;
  }
}

@media (max-width: 767px) {
  .egc-rail {
    right: 10px;
    bottom: 80px;
  }

  .egc-label {
    display: none;
  }

  .egc-form-wrap {
    position: fixed;
    right: 14px;
    left: 14px;
    top: 50%;
    transform: translateY(-50%) scale(0.96);
  }

  .egc-item--contact:hover .egc-form-wrap,
  .egc-form-wrap:hover {
    transform: translateY(-50%) scale(1);
  }

  .egc-form-box {
    width: 100%;
    max-width: 100%;
    max-height: 78vh;
  }

  .egc-form-close {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

html, body {
  overflow-x: clip;
}

#eg-floating-rail.egc-rail {
  position: fixed !important;
  right: 18px !important;
  top: 58vh !important;
  transform: translateY(-50%) !important;
  z-index: 999999 !important;
  margin: 0 !important;
  inset-left: auto !important;
  left: auto !important;
  bottom: auto !important;
  width: auto !important;
  max-width: none !important;
  pointer-events: none;
}

#eg-floating-rail .egc-strip,
#eg-floating-rail .egc-item,
#eg-floating-rail .egc-form-wrap,
#eg-floating-rail .egc-form-box,
#eg-floating-rail .egc-item-inner,
#eg-floating-rail .egc-label {
  pointer-events: auto;
}

#eg-floating-rail .egc-strip {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
}

.ast-theme-transparent-header #eg-floating-rail.egc-rail,
.site #eg-floating-rail.egc-rail,
.ast-separate-container #eg-floating-rail.egc-rail {
  position: fixed !important;
}

/* Desktop open state via JS */
#egc-contact-trigger.egc-form-open .egc-form-wrap {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(-50%) translateX(0);
}

/* Optional: keep hover working on desktop too */
@media (min-width: 769px) {
  #egc-contact-trigger:hover .egc-form-wrap,
  #egc-contact-trigger .egc-form-wrap:hover {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(-50%) translateX(0);
  }
}

/* Mobile: never show floating form */
@media (max-width: 768px) {
  #egc-contact-trigger .egc-form-wrap {
    display: none !important;
  }
}

.egc-form-body .srfm-form-container .srfm-block .srfm-block-wrap {
  height: 40px;
}
.egc-form-body .srfm-form-container .srfm-block.srfm-textarea-block .srfm-block-wrap {
  height: auto;
  margin-bottom: -20px;
}
.egc-form-body .srfm-form-container .srfm-block .srfm-error-wrap .srfm-error-message {
  margin-top: 5px;
}
.ast-single-entry-banner[data-post-type="post"] .entry-title {
  display: block;
  color: var(--amber-light);
}

@media (min-width: 993px) {
  .ast-separate-container #primary, .ast-separate-container.ast-left-sidebar #primary, .ast-separate-container.ast-right-sidebar #primary {
    margin: 1em 0;
    padding: 0;
  }
}
form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:hover {
  background: var(--pp-purple);
}
.ast-separate-container.ast-two-container #secondary .widget {
  background-color: #ffffff;
  background-image: none;
  border: 1px dashed var(--purple);
}
.wpr-grid-filters .wpr-pointer-none.wpr-pointer-line-fx.wpr-pointer-fx-none {
  border: 1px solid var(--ast-global-color-3);
  border-radius: 5px;
}
.wpr-grid-filters li > a {
  color: var(--ast-global-color-3);
  font-size: 16px;
  font-weight: 500;
}
.wpr-grid-item-excerpt .inner-block p {
  color: var(--ast-global-color-2);
  font-size: 16px;
}
.egov-btn--primary:hover {
  color: #fff;
}
.egov-btn--secondary:hover {
  color: var(--amber-light);
}
.cta-btn-primary:hover {
  color: #fff;
}
.ast-blog-layout-5-grid .ast-article-inner {
  box-shadow: 0px 6px 15px -2px rgba(16,24,40,0.05);
  border-radius: 15px;
  border: 1px solid var(--ast-global-color-0);
  padding: 15px;
}
.srf-inline-button-cd8c33b6-block.srfm-block-width-100.srfm-block.srfm-custom-button-ctn {
  z-index: 9;
}