/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/






/* =========================================================
   WooCommerce My Account Login/Register Page Polish
   Applies only to logged-out users on WooCommerce account page
   ========================================================= */

body.woocommerce-account:not(.logged-in) {
  background: #f8fafc;
}

/* Main page container */
body.woocommerce-account:not(.logged-in) .site-main,
body.woocommerce-account:not(.logged-in) main,
body.woocommerce-account:not(.logged-in) .entry-content {
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}

/* Page title */
body.woocommerce-account:not(.logged-in) .entry-title,
body.woocommerce-account:not(.logged-in) h1 {
  max-width: 1180px;
  margin: 40px auto 12px;
  padding: 0 20px;
  color: #0f172a;
  font-size: clamp(36px, 5vw, 58px);
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: -0.04em;
}

/* Woo wrapper */
body.woocommerce-account:not(.logged-in) .woocommerce {
  max-width: 1180px;
  margin: 0 auto 70px;
  padding: 20px;
}

/* Two-column login/register layout */
body.woocommerce-account:not(.logged-in) .woocommerce .u-columns,
body.woocommerce-account:not(.logged-in) .woocommerce .col2-set {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  align-items: stretch;
}

/* Remove old float layout */
body.woocommerce-account:not(.logged-in) .woocommerce .u-column1,
body.woocommerce-account:not(.logged-in) .woocommerce .u-column2,
body.woocommerce-account:not(.logged-in) .woocommerce .col-1,
body.woocommerce-account:not(.logged-in) .woocommerce .col-2 {
  float: none !important;
  width: auto !important;
  max-width: none !important;
}

/* Card design */
body.woocommerce-account:not(.logged-in) .woocommerce .u-column1,
body.woocommerce-account:not(.logged-in) .woocommerce .u-column2 {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 24px;
  padding: 34px;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
}

/* Section headings */
body.woocommerce-account:not(.logged-in) .woocommerce h2 {
  margin: 0 0 24px;
  color: #0f172a;
  font-size: 34px;
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -0.03em;
}

/* Form boxes */
body.woocommerce-account:not(.logged-in) .woocommerce form.login,
body.woocommerce-account:not(.logged-in) .woocommerce form.register {
  margin: 0;
  padding: 0;
  border: 0;
}

/* Labels */
body.woocommerce-account:not(.logged-in) .woocommerce label {
  color: #111827;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 7px;
}

/* Input fields */
body.woocommerce-account:not(.logged-in) .woocommerce input.input-text,
body.woocommerce-account:not(.logged-in) .woocommerce input[type="text"],
body.woocommerce-account:not(.logged-in) .woocommerce input[type="email"],
body.woocommerce-account:not(.logged-in) .woocommerce input[type="password"] {
  width: 100%;
  min-height: 50px;
  border: 1px solid #d1d5db;
  border-radius: 14px;
  background: #ffffff;
  color: #111827;
  padding: 12px 14px;
  font-size: 16px;
  box-shadow: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

body.woocommerce-account:not(.logged-in) .woocommerce input.input-text:focus,
body.woocommerce-account:not(.logged-in) .woocommerce input[type="text"]:focus,
body.woocommerce-account:not(.logged-in) .woocommerce input[type="email"]:focus,
body.woocommerce-account:not(.logged-in) .woocommerce input[type="password"]:focus {
  outline: none;
  border-color: #2563eb;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12);
}

/* Paragraph spacing */
body.woocommerce-account:not(.logged-in) .woocommerce form .form-row,
body.woocommerce-account:not(.logged-in) .woocommerce p {
  margin-bottom: 18px;
}

/* Main Woo buttons */
body.woocommerce-account:not(.logged-in) .woocommerce button.button,
body.woocommerce-account:not(.logged-in) .woocommerce input.button,
body.woocommerce-account:not(.logged-in) .woocommerce a.button {
  min-height: 48px;
  border-radius: 14px;
  background: #0f172a !important;
  color: #ffffff !important;
  border: 0 !important;
  padding: 14px 22px;
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
  text-transform: none;
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.16);
  transition: transform 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}

body.woocommerce-account:not(.logged-in) .woocommerce button.button:hover,
body.woocommerce-account:not(.logged-in) .woocommerce input.button:hover,
body.woocommerce-account:not(.logged-in) .woocommerce a.button:hover {
  background: #2563eb !important;
  color: #ffffff !important;
  transform: translateY(-1px);
}

/* Remember me */
body.woocommerce-account:not(.logged-in) .woocommerce .woocommerce-form-login__rememberme {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-right: 12px;
  color: #6b7280;
  font-size: 14px;
  font-weight: 500;
}

body.woocommerce-account:not(.logged-in) .woocommerce input[type="checkbox"] {
  width: 17px;
  height: 17px;
  margin: 0;
}

/* Lost password */
body.woocommerce-account:not(.logged-in) .woocommerce .lost_password a {
  color: #2563eb;
  font-weight: 700;
  text-decoration: none;
}

body.woocommerce-account:not(.logged-in) .woocommerce .lost_password a:hover {
  text-decoration: underline;
}

/* Registration info text */
body.woocommerce-account:not(.logged-in) .woocommerce .u-column2 p,
body.woocommerce-account:not(.logged-in) .woocommerce .woocommerce-privacy-policy-text {
  color: #6b7280;
  font-size: 15px;
  line-height: 1.65;
}

/* Privacy link */
body.woocommerce-account:not(.logged-in) .woocommerce .woocommerce-privacy-policy-text a {
  color: #2563eb;
  font-weight: 700;
  text-decoration: none;
}

/* Woo notices */
body.woocommerce-account:not(.logged-in) .woocommerce-error,
body.woocommerce-account:not(.logged-in) .woocommerce-message,
body.woocommerce-account:not(.logged-in) .woocommerce-info {
  border-radius: 16px;
  border-top: 0;
  margin-bottom: 24px;
  padding: 16px 18px;
  background: #ffffff;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
}

/* =========================================================
   Social Login Button Styling
   Works with common social-login plugins including Nextend-style markup
   ========================================================= */

body.woocommerce-account:not(.logged-in) .nsl-container,
body.woocommerce-account:not(.logged-in) .woo-slg-social-container,
body.woocommerce-account:not(.logged-in) .social-login,
body.woocommerce-account:not(.logged-in) .woocommerce-social-login {
  margin-top: 22px;
}

/* Make social buttons match the design */
body.woocommerce-account:not(.logged-in) .nsl-button,
body.woocommerce-account:not(.logged-in) .nsl-button-default,
body.woocommerce-account:not(.logged-in) .woo-slg-social-container a,
body.woocommerce-account:not(.logged-in) .social-login a,
body.woocommerce-account:not(.logged-in) .woocommerce-social-login a {
  width: 100% !important;
  min-height: 52px !important;
  border-radius: 14px !important;
  margin-bottom: 12px !important;
  box-shadow: none !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  overflow: hidden;
}

/* Google button */
body.woocommerce-account:not(.logged-in) .nsl-button-google,
body.woocommerce-account:not(.logged-in) .nsl-button[data-provider="google"] {
  background: #ffffff !important;
  color: #111827 !important;
  border: 1px solid #d1d5db !important;
}

/* Optional: hide non-Google social buttons */
body.woocommerce-account:not(.logged-in) .nsl-button-github,
body.woocommerce-account:not(.logged-in) .nsl-button-linkedin,
body.woocommerce-account:not(.logged-in) .nsl-button-twitter,
body.woocommerce-account:not(.logged-in) .nsl-button-x,
body.woocommerce-account:not(.logged-in) .nsl-button[data-provider="github"],
body.woocommerce-account:not(.logged-in) .nsl-button[data-provider="linkedin"],
body.woocommerce-account:not(.logged-in) .nsl-button[data-provider="twitter"] {
  display: none !important;
}

/* Mobile */
@media (max-width: 850px) {
  body.woocommerce-account:not(.logged-in) .woocommerce .u-columns,
  body.woocommerce-account:not(.logged-in) .woocommerce .col2-set {
    grid-template-columns: 1fr;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce .u-column1,
  body.woocommerce-account:not(.logged-in) .woocommerce .u-column2 {
    padding: 26px;
    border-radius: 20px;
  }
}

@media (max-width: 520px) {
  body.woocommerce-account:not(.logged-in) .entry-title,
  body.woocommerce-account:not(.logged-in) h1 {
    margin-top: 24px;
    padding: 0 14px;
    font-size: 38px;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce {
    padding: 14px;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce h2 {
    font-size: 28px;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce .u-column1,
  body.woocommerce-account:not(.logged-in) .woocommerce .u-column2 {
    padding: 22px;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce button.button,
  body.woocommerce-account:not(.logged-in) .woocommerce input.button,
  body.woocommerce-account:not(.logged-in) .woocommerce a.button {
    width: 100%;
  }
}


/* =========================================================
   Logged-in WooCommerce My Account Page Polish
   ========================================================= */

body.woocommerce-account.logged-in {
  background: #f8fafc;
}

/* Page title */
body.woocommerce-account.logged-in .entry-title,
body.woocommerce-account.logged-in h1 {
  max-width: 1180px;
  margin: 38px auto 20px;
  padding: 0 20px;
  color: #0f172a;
  font-size: clamp(36px, 5vw, 54px);
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: -0.04em;
}

/* Main Woo area */
body.woocommerce-account.logged-in .woocommerce {
  max-width: 1180px;
  margin: 0 auto 70px;
  padding: 20px;
  display: grid;
  grid-template-columns: 290px minmax(0, 1fr);
  gap: 30px;
  align-items: start;
}

/* Navigation */
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation {
  width: auto !important;
  float: none !important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li {
  margin: 0;
  padding: 0;
  border: 0;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation a {
  display: flex;
  align-items: center;
  min-height: 52px;
  padding: 14px 18px;
  border-radius: 14px;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  color: #2563eb;
  text-decoration: none;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.04);
  transition: background 0.18s ease, color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation a:hover {
  background: #f8fafc;
  color: #0f172a;
  transform: translateY(-1px);
}

/* Active tab */
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation .is-active a {
  background: #0f172a;
  color: #ffffff;
  border-color: #0f172a;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.16);
}

/* Test Dashboard menu item special color */
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation-link--ielts-dashboard a {
  background: #2563eb;
  color: #ffffff;
  border-color: #2563eb;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation-link--ielts-dashboard a:hover {
  background: #0f172a;
  color: #ffffff;
  border-color: #0f172a;
}

/* Content panel */
body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
  width: auto !important;
  float: none !important;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 24px;
  padding: 34px;
  min-height: 340px;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
  color: #374151;
  font-size: 17px;
  line-height: 1.75;
}

/* Account text */
body.woocommerce-account.logged-in .woocommerce-MyAccount-content p {
  margin: 0 0 18px;
  color: #4b5563;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content strong {
  color: #0f172a;
  font-weight: 800;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content a {
  color: #2563eb;
  font-weight: 700;
  text-decoration: none;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content a:hover {
  text-decoration: underline;
}

/* Forms inside account details */
body.woocommerce-account.logged-in .woocommerce input.input-text,
body.woocommerce-account.logged-in .woocommerce input[type="text"],
body.woocommerce-account.logged-in .woocommerce input[type="email"],
body.woocommerce-account.logged-in .woocommerce input[type="password"] {
  width: 100%;
  min-height: 50px;
  border: 1px solid #d1d5db;
  border-radius: 14px;
  background: #ffffff;
  color: #111827;
  padding: 12px 14px;
  font-size: 16px;
  box-shadow: none;
}

body.woocommerce-account.logged-in .woocommerce label {
  color: #111827;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 7px;
}

body.woocommerce-account.logged-in .woocommerce button.button,
body.woocommerce-account.logged-in .woocommerce input.button,
body.woocommerce-account.logged-in .woocommerce a.button {
  min-height: 48px;
  border-radius: 14px;
  background: #0f172a !important;
  color: #ffffff !important;
  border: 0 !important;
  padding: 14px 22px;
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
  text-transform: none;
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.16);
}

body.woocommerce-account.logged-in .woocommerce button.button:hover,
body.woocommerce-account.logged-in .woocommerce input.button:hover,
body.woocommerce-account.logged-in .woocommerce a.button:hover {
  background: #2563eb !important;
  color: #ffffff !important;
}

/* Hide frontend edit link */
body.woocommerce-account.logged-in .post-edit-link {
  display: none !important;
}

/* Mobile */
@media (max-width: 850px) {
  body.woocommerce-account.logged-in .woocommerce {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
    padding: 26px;
    border-radius: 20px;
  }
}

@media (max-width: 520px) {
  body.woocommerce-account.logged-in .entry-title,
  body.woocommerce-account.logged-in h1 {
    margin-top: 24px;
    padding: 0 14px;
    font-size: 38px;
  }

  body.woocommerce-account.logged-in .woocommerce {
    padding: 14px;
  }

  body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul {
    grid-template-columns: 1fr;
  }

  body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
    padding: 22px;
  }
}

/* Fix WooCommerce password show/hide toggle */
body.woocommerce-account:not(.logged-in) .woocommerce .password-input {
  position: relative;
  display: block;
}

body.woocommerce-account:not(.logged-in) .woocommerce .password-input input {
  padding-right: 48px !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce .show-password-input {
  position: absolute !important;
  right: 16px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #6b7280 !important;
  cursor: pointer;
  z-index: 2;
}

body.woocommerce-account:not(.logged-in) .woocommerce .show-password-input:hover {
  background: transparent !important;
  color: #111827 !important;
  transform: translateY(-50%) !important;
}





/* =========================================================
   Clean centered header + Jet Mega Menu styling
   Kava / Cava + JetMenu / Jet Mega Menu
   ========================================================= */

/* Header bar */
.site-header,
.jet-theme-core-header,
.jet-theme-core-location-header {
    background: #ffffff;
    border-bottom: 1px solid #e5e7eb;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
    position: relative;
    z-index: 999;
}

/* Center menu wrapper */
.jet-menu-container,
.jet-mega-menu-container,
.jet-theme-core-location-header .container,
.site-header .container {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Main top-level menu list */
.jet-menu,
.jet-mega-menu-list,
.main-navigation > ul,
.wp-block-navigation__container {
    width: 100%;
    display: flex;
    justify-content: center !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin: 0 auto !important;
    padding: 10px 40px;
    list-style: none;
    background: #ffffff !important;
}

/* Jet Mega wrapper fallback */
.jet-mega-menu {
    width: 100%;
    background: #ffffff !important;
}

/* Top-level menu items */
.jet-menu > .jet-menu-item,
.jet-menu > li,
.jet-mega-menu-list > .jet-mega-menu-item,
.main-navigation > ul > li,
.wp-block-navigation__container > .wp-block-navigation-item {
    position: relative;
    margin: 0 4px !important;
    padding: 0;
    list-style: none;
}

/* Classic JetMenu top-level links */
.jet-menu > .jet-menu-item > .top-level-link,
.jet-menu > li > .top-level-link,
.jet-menu > li > a,
.jet-menu-item .top-level-link,
.main-navigation > ul > li > a,
.wp-block-navigation__container > .wp-block-navigation-item > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center;
    min-height: 44px !important;
    padding: 10px 18px !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #0f172a !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

/* New Jet Mega top-level inner wrapper */
.jet-mega-menu-list > .jet-mega-menu-item > .jet-mega-menu-item__inner {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center;
    min-height: 44px !important;
    padding: 10px 18px !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #0f172a !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

/* New Jet Mega direct-link fallback */
.jet-mega-menu-list > .jet-mega-menu-item > a,
.jet-mega-menu-list > .jet-mega-menu-item > .jet-mega-menu-item__link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center;
    min-height: 44px !important;
    padding: 10px 18px !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #0f172a !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

/* Inner link/text reset for Jet Mega */
.jet-mega-menu-item__inner > a,
.jet-mega-menu-item__inner > .jet-mega-menu-item__link,
.jet-menu-title,
.jet-mega-menu-item__title,
.jet-mega-menu-item__label,
.jet-menu-name {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    text-decoration: none !important;
    background: transparent !important;
}

/* Prevent double padding inside Jet Mega inner wrapper */
.jet-mega-menu-item__inner > a,
.jet-mega-menu-item__inner > .jet-mega-menu-item__link {
    padding: 0 !important;
}

/* Top-level hover */
.jet-menu > .jet-menu-item:hover > .top-level-link,
.jet-menu > li:hover > .top-level-link,
.jet-menu > li:hover > a,
.jet-menu-item:hover .top-level-link,
.jet-mega-menu-list > .jet-mega-menu-item:hover > .jet-mega-menu-item__inner,
.jet-mega-menu-list > .jet-mega-menu-item:hover > a,
.jet-mega-menu-list > .jet-mega-menu-item:hover > .jet-mega-menu-item__link,
.main-navigation > ul > li:hover > a,
.wp-block-navigation__container > .wp-block-navigation-item:hover > a {
    background: #eaf6ff !important;
    color: #004f8f !important;
}

/* Active/current top-level item */
.jet-menu > .current-menu-item > .top-level-link,
.jet-menu > .current-menu-ancestor > .top-level-link,
.jet-menu > .current_page_item > .top-level-link,
.jet-menu > .current-menu-item > a,
.jet-menu > .current_page_item > a,
.jet-mega-menu-list > .current-menu-item > .jet-mega-menu-item__inner,
.jet-mega-menu-list > .current-menu-ancestor > .jet-mega-menu-item__inner,
.jet-mega-menu-list > .current_page_item > .jet-mega-menu-item__inner,
.jet-mega-menu-list > .current-menu-item > a,
.jet-mega-menu-list > .current_page_item > a,
.main-navigation > ul > .current-menu-item > a,
.main-navigation > ul > .current_page_item > a {
    background: #eaf6ff !important;
    color: #004f8f !important;
    box-shadow: inset 0 0 0 1px #cfe8fb !important;
}

/* Dropdown panel */
.jet-mega-menu-sub-menu,
.jet-sub-menu,
.sub-menu {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    min-width: 260px;
    margin: 0;
    padding: 12px;
    list-style: none;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.14);
    z-index: 9999;
}

/* Dropdown list reset */
.jet-mega-menu-sub-menu ul,
.jet-sub-menu ul,
.sub-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* Dropdown items */
.jet-mega-menu-sub-menu li,
.jet-sub-menu li,
.sub-menu li {
    margin: 0;
    padding: 0;
}

/* Dropdown links */
.jet-mega-menu-sub-menu a,
.jet-mega-menu-sub-menu .jet-mega-menu-item__link,
.jet-sub-menu a,
.sub-menu a {
    display: flex !important;
    align-items: center;
    width: 100%;
    min-height: 38px;
    padding: 10px 14px !important;
    border-radius: 12px;
    color: #0f172a !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.25;
    text-decoration: none !important;
    white-space: nowrap;
    background: transparent !important;
}

/* Dropdown hover */
.jet-mega-menu-sub-menu a:hover,
.jet-mega-menu-sub-menu .jet-mega-menu-item__link:hover,
.jet-sub-menu a:hover,
.sub-menu a:hover {
    background: #f1f7ff !important;
    color: #004f8f !important;
}

/* Remove JetMenu/theme decorative line effects */
.jet-menu a::before,
.jet-menu a::after,
.jet-menu .top-level-link::before,
.jet-menu .top-level-link::after,
.jet-menu-item .top-level-link::before,
.jet-menu-item .top-level-link::after,
.jet-mega-menu a::before,
.jet-mega-menu a::after,
.jet-mega-menu-item__inner::before,
.jet-mega-menu-item__inner::after,
.jet-mega-menu-item__link::before,
.jet-mega-menu-item__link::after {
    display: none !important;
}

/* Mobile: simple horizontal scroll */
@media (max-width: 768px) {
    .jet-menu,
    .jet-mega-menu-list,
    .main-navigation > ul,
    .wp-block-navigation__container {
        justify-content: flex-start !important;
        flex-wrap: nowrap;
        gap: 6px;
        padding: 8px 14px;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .jet-menu::-webkit-scrollbar,
    .jet-mega-menu-list::-webkit-scrollbar,
    .main-navigation > ul::-webkit-scrollbar,
    .wp-block-navigation__container::-webkit-scrollbar {
        display: none;
    }

    .jet-menu > .jet-menu-item > .top-level-link,
    .jet-menu > li > .top-level-link,
    .jet-menu > li > a,
    .jet-menu-item .top-level-link,
    .jet-mega-menu-list > .jet-mega-menu-item > .jet-mega-menu-item__inner,
    .jet-mega-menu-list > .jet-mega-menu-item > a,
    .jet-mega-menu-list > .jet-mega-menu-item > .jet-mega-menu-item__link,
    .main-navigation > ul > li > a,
    .wp-block-navigation__container > .wp-block-navigation-item > a {
        min-height: 38px !important;
        padding: 9px 13px !important;
        font-size: 14px !important;
    }
}


/* =========================================================
   Homepage Login Section
   ========================================================= */

.va-homepage-source .va-home-login {
  max-width: 1180px;
  margin: 0 auto;
  padding: 70px 20px;
  font-family: inherit;
}

.va-homepage-source .va-login-wrap {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 34px;
  align-items: stretch;
}

.va-homepage-source .va-login-hero,
.va-homepage-source .va-login-card {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 24px;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
}

.va-homepage-source .va-login-hero {
  padding: 46px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.va-homepage-source .va-login-badge {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  border-radius: 999px;
  padding: 7px 13px;
  margin-bottom: 22px;
  background: #e0f2fe;
  color: #075985;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.va-homepage-source .va-login-title {
  margin: 0 0 16px;
  color: #0f172a;
  font-size: clamp(36px, 5vw, 58px);
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: -0.04em;
}

.va-homepage-source .va-login-text {
  max-width: 620px;
  margin: 0 0 30px;
  color: #6b7280;
  font-size: 18px;
  line-height: 1.65;
}

.va-homepage-source .va-login-features {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 8px;
}

.va-homepage-source .va-login-feature {
  padding: 16px;
  border-radius: 16px;
  background: #f8fafc;
  border: 1px solid #edf2f7;
}

.va-homepage-source .va-login-feature strong {
  display: block;
  margin-bottom: 5px;
  color: #111827;
  font-size: 15px;
}

.va-homepage-source .va-login-feature span {
  display: block;
  color: #6b7280;
  font-size: 14px;
  line-height: 1.45;
}

.va-homepage-source .va-login-card {
  padding: 34px;
}

.va-homepage-source .va-login-card h2 {
  margin: 0 0 10px;
  color: #0f172a;
  font-size: 30px;
  line-height: 1.2;
  font-weight: 800;
}

.va-homepage-source .va-login-card p {
  margin: 0 0 24px;
  color: #6b7280;
  font-size: 15px;
  line-height: 1.6;
}

.va-homepage-source .va-login-actions {
  display: grid;
  gap: 14px;
}

.va-homepage-source .va-btn {
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 14px 20px;
  border-radius: 14px;
  text-decoration: none !important;
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
  transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.va-homepage-source .va-btn:hover {
  transform: translateY(-1px);
}

.va-homepage-source .va-btn-primary {
  background: #0f172a;
  color: #ffffff !important;
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.18);
}

.va-homepage-source .va-btn-primary:hover {
  background: #2563eb;
  color: #ffffff !important;
}

.va-homepage-source .va-btn-secondary {
  background: #ffffff;
  color: #0f172a !important;
  border: 1px solid #d1d5db;
}

.va-homepage-source .va-btn-secondary:hover {
  background: #f8fafc;
  color: #0f172a !important;
}

.va-homepage-source .va-btn-google {
  background: #ffffff;
  color: #111827 !important;
  border: 1px solid #d1d5db;
  gap: 10px;
}

.va-homepage-source .va-btn-google:hover {
  background: #f9fafb;
  color: #111827 !important;
}

.va-homepage-source .va-google-icon {
  width: 20px;
  height: 20px;
  display: inline-block;
}

.va-homepage-source .va-login-note {
  margin-top: 18px;
  padding: 14px 16px;
  border-radius: 14px;
  background: #f8fafc;
  color: #6b7280;
  font-size: 13px;
  line-height: 1.55;
}

.va-homepage-source .va-login-note strong {
  color: #111827;
}

.va-homepage-source .va-login-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 18px 0;
  color: #9ca3af;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
}

.va-homepage-source .va-login-divider::before,
.va-homepage-source .va-login-divider::after {
  content: "";
  height: 1px;
  flex: 1;
  background: #e5e7eb;
}

@media (max-width: 900px) {
  .va-homepage-source .va-login-wrap {
    grid-template-columns: 1fr;
  }

  .va-homepage-source .va-login-hero,
  .va-homepage-source .va-login-card {
    padding: 30px;
  }

  .va-homepage-source .va-login-features {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  .va-homepage-source .va-home-login {
    padding: 34px 14px;
  }

  .va-homepage-source .va-login-hero,
  .va-homepage-source .va-login-card {
    padding: 22px;
    border-radius: 20px;
  }

  .va-homepage-source .va-login-title {
    font-size: 36px;
  }

  .va-homepage-source .va-login-text {
    font-size: 16px;
  }
}










@import url('https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500;600&display=swap');

/* ══ VANTAGE ACADEMY — HOMEPAGE ══════════════════════════════
   Paste into Appearance > Customize > Additional CSS.
   Scoped to #va, so it cannot affect any other page.
   ══════════════════════════════════════════════════════════ */

:root{
  --black:#0D0D0D;
  --lift:#151515;
  --lift-2:#1C1C1C;
  --paper:#F5F2EC;
  --dim:rgba(245,242,236,.64);
  --dim-2:rgba(245,242,236,.40);
  --gold:#C9A961;
  --gold-hi:#E0C486;
  --rule:rgba(245,242,236,.11);
  --rule-gold:rgba(201,169,97,.34);
  --ink-dim:rgba(13,13,13,.62);

  --gutter:clamp(1.25rem,5vw,4rem);
  --stack:clamp(4.5rem,9vw,8rem);
  --U:https://vantageacademybd.com/wp-content/uploads/2026/09/;
}#va *,#va *::before,#va *::after{box-sizing:border-box !important;margin:0 !important;padding:0 !important;}
@media (prefers-reduced-motion:reduce){#va *{transition:none!important;}}#va{font-family:Jost,system-ui,sans-serif !important;background:var(--black) !important;color:var(--paper) !important;font-size:1.0625rem !important;line-height:1.6 !important;font-variant-numeric:tabular-nums !important;-webkit-font-smoothing:antialiased !important;overflow-x:hidden !important;}#va img{display:block !important;max-width:100% !important;height:auto !important;}#va .wrap{max-width:1160px !important;margin:0 auto !important;padding-inline:var(--gutter) !important;}#va .band{padding-block:var(--stack) !important;}#va .band-gold{background:var(--gold) !important;color:var(--black) !important;}#va .band-gold p{color:rgba(13,13,13,.72) !important;}#va h1,#va h2{font-weight:300 !important;letter-spacing:-.025em !important;line-height:1.05 !important;}#va h2{font-size:clamp(2.3rem,4.4vw,3.5rem) !important;}#va h2 b{font-weight:500 !important;}#va h3{font-size:1.35rem !important;font-weight:500 !important;line-height:1.3 !important;}#va p{color:var(--dim) !important;max-width:56ch !important;}#va a{color:inherit !important;}#va :focus-visible{outline:2px solid var(--gold) !important;outline-offset:3px !important;}#va .micro{font-size:1rem !important;font-weight:500 !important;letter-spacing:.16em !important;text-transform:uppercase !important;color:var(--gold) !important;}#va .band-gold .micro{color:rgba(13,13,13,.55) !important;}#va .lede{font-size:1.3rem !important;font-weight:300 !important;max-width:48ch !important;margin-top:1rem !important;}#va .btn{display:inline-block !important;font:500 1rem/1 Jost,sans-serif !important;letter-spacing:.04em !important;padding:1.05em 2em !important;text-decoration:none !important;border:1px solid transparent !important;transition:.18s !important;}#va .btn-gold{background:var(--gold) !important;color:var(--black) !important;}#va .btn-gold:hover{background:var(--gold-hi) !important;}#va .btn-line{border-color:rgba(245,242,236,.28) !important;color:var(--paper) !important;}#va .btn-line:hover{border-color:var(--gold) !important;color:var(--gold) !important;}#va .btn-dark{background:var(--black) !important;color:var(--paper) !important;}#va .btn-dark:hover{background:var(--lift-2) !important;}#va .btn-dark-line{border-color:rgba(13,13,13,.3) !important;color:var(--black) !important;}#va .btn-dark-line:hover{border-color:var(--black) !important;}#va .acts{display:flex !important;gap:.85rem !important;flex-wrap:wrap !important;margin-top:2.2rem !important;}#va .ph{position:relative !important;overflow:hidden !important;}#va .ph img{width:100% !important;object-fit:cover !important;}#va .ph::after{content:"" !important;position:absolute !important;inset:0 !important;pointer-events:none !important;background:
    linear-gradient(to bottom,rgba(13,13,13,.55) 0%,rgba(13,13,13,0) 28%,rgba(13,13,13,0) 62%,rgba(13,13,13,.85) 100%),
    linear-gradient(to right,rgba(13,13,13,.6) 0%,rgba(13,13,13,0) 22%,rgba(13,13,13,0) 78%,rgba(13,13,13,.6) 100%) !important;}#va .ph-soft::after{background:linear-gradient(to bottom,rgba(13,13,13,.30) 0%,rgba(13,13,13,0) 40%,rgba(13,13,13,.55) 100%) !important;}#va .screen{position:relative !important;background:var(--lift) !important;border:1px solid var(--rule-gold) !important;}#va .screen-bar{display:flex !important;align-items:center !important;gap:.5rem !important;padding:.6rem .9rem !important;border-bottom:1px solid var(--rule-gold) !important;font-size:.75rem !important;font-weight:500 !important;letter-spacing:.16em !important;text-transform:uppercase !important;color:var(--gold) !important;}#va .screen-bar i{width:6px !important;height:6px !important;border-radius:50% !important;background:rgba(201,169,97,.45) !important;font-style:normal !important;}#va .screen-bar span{margin-left:auto !important;color:var(--dim-2) !important;letter-spacing:.1em !important;}#va .screen img{width:100% !important;}#va .inset{position:absolute !important;right:-2.2rem !important;bottom:-2.4rem !important;width:46% !important;border:1px solid var(--rule-gold) !important;background:var(--lift) !important;box-shadow:0 0 0 8px var(--black) !important;}#va .inset img{width:100% !important;}#va .callout{position:absolute !important;font-size:.75rem !important;font-weight:600 !important;letter-spacing:.15em !important;text-transform:uppercase !important;color:var(--gold) !important;white-space:nowrap !important;display:flex !important;align-items:center !important;gap:.6rem !important;}#va .callout::before{content:"" !important;width:34px !important;height:1px !important;background:var(--gold) !important;}#va .callout.flip{flex-direction:row-reverse !important;}#va .callout.flip::before{width:34px !important;}#va .hero{padding-block:clamp(3rem,6vw,5rem) 0 !important;}#va .lockup{width:min(230px,48vw) !important;aspect-ratio:2002/941 !important;margin-bottom:2.8rem !important;}#va .hero h1{font-size:clamp(3rem,7vw,5.2rem) !important;max-width:17ch !important;}#va .hero h1 b{font-weight:500 !important;}#va .tagline{display:flex !important;align-items:center !important;gap:1.2rem !important;margin-top:2.6rem !important;font-size:1rem !important;font-weight:500 !important;letter-spacing:.22em !important;text-transform:uppercase !important;}#va .tagline span{color:var(--gold) !important;}#va .tagline i{flex:1 !important;height:1px !important;background:var(--rule-gold) !important;min-width:20px !important;}#va .bleed{width:100vw !important;margin-left:50% !important;transform:translateX(-50%) !important;margin-top:clamp(2.5rem,5vw,4rem) !important;}#va .bleed img{aspect-ratio:21/9 !important;width:100% !important;}#va .three{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:2.2rem !important;margin-top:3rem !important;}#va .three h3{margin-top:1rem !important;}#va .three p{font-size:1rem !important;margin-top:.35rem !important;}#va .three .n{font-size:1rem !important;font-weight:600 !important;letter-spacing:.18em !important;color:var(--gold) !important;}#va .stats{display:flex !important;gap:clamp(2rem,7vw,5rem) !important;flex-wrap:wrap !important;margin-top:2.5rem !important;padding-block:2rem !important;border-block:1px solid rgba(13,13,13,.18) !important;}#va .stats div b{display:block !important;font-size:clamp(3rem,6vw,4.4rem) !important;font-weight:300 !important;line-height:1 !important;}#va .stats div span{font-size:1rem !important;font-weight:500 !important;letter-spacing:.14em !important;text-transform:uppercase !important;color:rgba(13,13,13,.6) !important;}#va .specs{list-style:none !important;display:grid !important;gap:.85rem !important;margin-top:2rem !important;max-width:62ch !important;}#va .specs li{display:grid !important;grid-template-columns:auto 1fr !important;gap:.85rem !important;align-items:baseline !important;font-size:1.0625rem !important;color:rgba(13,13,13,.78) !important;}#va .specs li::before{content:"" !important;width:6px !important;height:6px !important;background:var(--black) !important;transform:rotate(45deg) !important;position:relative !important;top:-2px !important;}#va .specs b{font-weight:500 !important;color:var(--black) !important;}#va .two{display:grid !important;grid-template-columns:1fr 1fr !important;gap:clamp(2.5rem,6vw,5rem) !important;align-items:center !important;}#va .two.narrow-left{grid-template-columns:.8fr 1.2fr !important;}#va .two.narrow-right{grid-template-columns:1.2fr .8fr !important;}#va .grid-wrap{margin-top:2.5rem !important;overflow-x:auto !important;}#va .sched{width:100% !important;min-width:640px !important;border-collapse:collapse !important;}#va .sched th{font:500 1rem/1 Jost,sans-serif !important;letter-spacing:.16em !important;text-transform:uppercase !important;color:var(--gold) !important;padding:0 0 .9rem !important;text-align:left !important;}#va .sched th:first-child{width:84px !important;}#va .sched td{padding:0 !important;vertical-align:top !important;border-top:1px solid var(--rule) !important;}#va .sched .hr-lbl{font-size:1rem !important;color:var(--dim) !important;padding:1.1rem .8rem 1.1rem 0 !important;white-space:nowrap !important;}#va .blk{display:block !important;margin:.45rem .35rem .45rem 0 !important;padding:.7rem .85rem !important;font-size:1rem !important;line-height:1.35 !important;border-left:3px solid var(--gold) !important;background:var(--lift) !important;}#va .blk .n{display:block !important;font-weight:500 !important;color:var(--paper) !important;}#va .blk .s{color:var(--dim) !important;font-size:1rem !important;}#va .blk.alt{border-left-color:rgba(245,242,236,.35) !important;}#va .facts{display:grid !important;gap:1.6rem !important;margin-top:2rem !important;}#va .facts div{border-left:2px solid var(--rule-gold) !important;padding-left:1.3rem !important;}#va .facts dt{font-size:1rem !important;font-weight:500 !important;letter-spacing:.17em !important;text-transform:uppercase !important;color:var(--gold) !important;}#va .facts dd{font-size:1.25rem !important;font-weight:500 !important;margin-top:.2rem !important;}#va .facts dd small{display:block !important;font-weight:400 !important;font-size:1rem !important;color:var(--dim) !important;margin-top:.2rem !important;}#va .mock{margin-top:2.5rem !important;padding-top:2rem !important;border-top:1px solid var(--rule) !important;display:grid !important;grid-template-columns:1fr 1.4fr !important;gap:2rem !important;align-items:center !important;}#va .ruler{position:relative !important;height:34px !important;}#va .ruler .axis{position:absolute !important;top:16px !important;left:0 !important;right:0 !important;height:1px !important;background:var(--rule) !important;}#va .ruler .tick{position:absolute !important;top:12px !important;width:1px !important;height:5px !important;background:var(--rule) !important;}#va .ruler .tick.w{top:9px !important;height:11px !important;background:rgba(245,242,236,.28) !important;}#va .ruler .num{position:absolute !important;top:22px !important;transform:translateX(-50%) !important;font-size:10px !important;color:var(--dim) !important;}#va .ruler .mark{position:absolute !important;top:6px !important;left:0 !important;width:2px !important;height:20px !important;background:var(--paper) !important;transition:left .9s cubic-bezier(.22,1,.36,1) !important;}#va .ruler .mark::before{content:"" !important;position:absolute !important;left:50% !important;top:-6px !important;transform:translateX(-50%) rotate(45deg) !important;width:7px !important;height:7px !important;background:var(--gold) !important;}#va .ruler .val{position:absolute !important;top:20px !important;left:0 !important;transform:translateX(-50%) !important;font-size:12px !important;font-weight:600 !important;color:var(--paper) !important;transition:left .9s cubic-bezier(.22,1,.36,1) !important;}#va .courses{margin-top:2.5rem !important;border-top:1px solid var(--rule) !important;}#va .course{display:grid !important;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,.9fr) auto !important;gap:1.5rem !important;align-items:baseline !important;padding-block:1.7rem !important;border-bottom:1px solid var(--rule) !important;}#va .course .nm{font-size:1.45rem !important;font-weight:500 !important;}#va .course .desc{font-size:1rem !important;color:var(--dim) !important;margin-top:.3rem !important;max-width:38ch !important;}#va .course .when{font-size:1rem !important;color:var(--dim) !important;}#va .course .when b{display:block !important;color:var(--paper) !important;font-weight:500 !important;}#va .course .fee b{display:block !important;font-size:1.35rem !important;font-weight:500 !important;}#va .course .fee span{font-size:1rem !important;color:var(--dim) !important;}#va .course .go{font-size:1rem !important;font-weight:500 !important;letter-spacing:.16em !important;text-transform:uppercase !important;color:var(--gold) !important;text-decoration:none !important;border-bottom:1px solid var(--rule-gold) !important;padding-bottom:2px !important;white-space:nowrap !important;}#va .voices{display:grid !important;grid-template-columns:repeat(2,1fr) !important;gap:1px !important;background:var(--rule) !important;border:1px solid var(--rule) !important;margin-top:2.5rem !important;}#va .voice{background:var(--black) !important;padding:2rem 1.85rem !important;display:flex !important;flex-direction:column !important;}#va .voice blockquote{font-size:1.2rem !important;line-height:1.6 !important;font-weight:300 !important;color:var(--paper) !important;flex:1 !important;}#va .voice figcaption{margin-top:1.5rem !important;padding-top:1.1rem !important;border-top:1px solid var(--rule) !important;display:flex !important;justify-content:space-between !important;align-items:baseline !important;gap:1rem !important;flex-wrap:wrap !important;}#va .voice .who b{display:block !important;font-weight:500 !important;}#va .voice .who span{font-size:1rem !important;color:var(--dim) !important;}#va .voice .band-tag{font-size:1rem !important;font-weight:600 !important;letter-spacing:.14em !important;text-transform:uppercase !important;color:var(--gold) !important;white-space:nowrap !important;}#va .needs{outline:2px dashed var(--rule-gold) !important;outline-offset:-10px !important;}#va .creds{display:flex !important;gap:2.4rem !important;flex-wrap:wrap !important;margin-top:1.8rem !important;padding-top:1.5rem !important;border-top:1px solid var(--rule) !important;}#va .creds b{display:block !important;font-size:2.1rem !important;font-weight:300 !important;color:var(--gold) !important;line-height:1.1 !important;}#va .creds span{font-size:1rem !important;color:var(--dim) !important;}#va .visit dl{display:grid !important;gap:1.4rem !important;margin-top:1.8rem !important;}#va .visit dt{font-size:.8125rem !important;font-weight:500 !important;letter-spacing:.17em !important;text-transform:uppercase !important;color:var(--gold) !important;}#va .visit dd{margin-top:.3rem !important;line-height:1.55 !important;}#va .visit dd a{text-decoration:none !important;border-bottom:1px solid var(--rule) !important;}

@media (max-width:980px){#va .three{grid-template-columns:1fr !important;gap:2.8rem !important;}#va .two,#va .two.narrow-left,#va .two.narrow-right,#va .visit,#va .voices,#va .mock{grid-template-columns:1fr !important;}#va .inset{position:static !important;width:100% !important;margin-top:1rem !important;box-shadow:none !important;}#va .callout{display:none !important;}#va .course{grid-template-columns:1fr 1fr !important;row-gap:.8rem !important;}#va .course .go{grid-column:1/-1 !important;justify-self:start !important;}}
@media (max-width:620px){#va .course{grid-template-columns:1fr !important;}}
html,body{background:#0D0D0D !important;margin:0 !important;padding:0 !important}
.entry-content,.page-content,.site-content,.elementor-widget-container,
.wp-block-group__inner-container,.entry-content>*{
 max-width:none !important;width:auto !important;padding:0 !important;margin:0 !important}
#va{max-width:none !important;width:100% !important;overflow-x:hidden !important}
#va *,#va *::before,#va *::after{box-sizing:border-box !important}
#va img{max-width:100% !important;height:auto !important;border:0 !important;border-radius:0 !important;box-shadow:none !important}
#va a{box-shadow:none !important;text-decoration:none !important}
#va ul,#va ol{list-style:none !important}
#va table{border-collapse:collapse !important;background:transparent !important}
#va td,#va th{background:transparent !important}
