/*!
 * BFS Education generated CSS bundle
 * Bundle: bfs-exam-extended.css
 * Generated from the legacy files in their original cascade order.
 * DO NOT edit this generated file directly.
 * Edit assets/css/bfs-custom.css for normal frontend changes.
 * Run: python assets/css/build_css.py after intentional legacy edits.
 */

/* =====================================================================
   SOURCE: assets/site.css
   ===================================================================== */
:root {
      /* Palette sampled from the BFS school bag reference */
      --blue-950: #071a33;
      --blue-900: #0c3367;
      --blue-800: #164a80;
      --blue-700: #1f5996;
      --blue-600: #2e6fb4;
      --blue-500: #4f86c6;
      --blue-300: #9fc1e8;
      --blue-100: #e7f1fc;
      --blue-50: #f4f8fd;
      --red-700: #991b16;
      --red-600: #c62b27;
      --red-500: #df3e38;
      --red-100: #ffe7e5;
      --ink: #0b1524;
      --text: #344256;
      --muted: #66758a;
      --line: #dce6f1;
      --white: #ffffff;
      --surface: #f7faff;
      --success: #168562;
      --warning: #c57a0c;
      --shadow-xs: 0 4px 14px rgba(7, 26, 51, .06);
      --shadow-sm: 0 10px 30px rgba(7, 26, 51, .09);
      --shadow-md: 0 24px 70px rgba(7, 26, 51, .14);
      --shadow-lg: 0 38px 100px rgba(7, 26, 51, .22);
      --radius-sm: 12px;
      --radius: 20px;
      --radius-lg: 30px;
      --container: min(1200px, calc(100% - 40px));
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      overflow-x: hidden;
      color: var(--text);
      background: var(--white);
      font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      line-height: 1.65;
      -webkit-font-smoothing: antialiased;
    }
    body.menu-open { overflow: hidden; }
    img { max-width: 100%; display: block; }
    a { color: inherit; text-decoration: none; }
    button, input, select { font: inherit; }
    button { cursor: pointer; }
    svg { display: block; }
    .container { width: var(--container); margin: 0 auto; }
    .section { padding: 96px 0; position: relative; }
    .section-sm { padding: 64px 0; }
    .surface { background: var(--surface); }
    .dark-surface { background: var(--blue-950); color: white; }
    .center { text-align: center; }
    .muted { color: var(--muted); }
    .red { color: var(--red-500); }
    .blue { color: var(--blue-600); }

    .section-head {
      display: flex;
      justify-content: space-between;
      align-items: end;
      gap: 28px;
      margin-bottom: 42px;
    }
    .section-head.centered {
      display: block;
      max-width: 760px;
      margin: 0 auto 48px;
      text-align: center;
    }
    .section-head.centered .section-copy { margin-inline: auto; }
    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 14px;
      color: var(--blue-700);
      font-size: 12px;
      font-weight: 900;
      letter-spacing: .15em;
      text-transform: uppercase;
    }
    .eyebrow::before {
      content: "";
      width: 28px;
      height: 3px;
      border-radius: 20px;
      background: linear-gradient(90deg, var(--red-500), var(--blue-600));
    }
    h1, h2, h3, h4, p { margin-top: 0; }
    h1, h2, h3, h4 { color: var(--ink); line-height: 1.1; }
    h1 { font-size: clamp(44px, 6vw, 80px); letter-spacing: -.055em; margin-bottom: 24px; }
    h2 { font-size: clamp(34px, 4.3vw, 54px); letter-spacing: -.045em; margin-bottom: 16px; }
    h3 { font-size: 22px; letter-spacing: -.025em; }
    h4 { font-size: 16px; }
    .dark-surface h2, .dark-surface h3, .dark-surface h4 { color: white; }
    .lead { font-size: 18px; color: #53657b; max-width: 680px; }
    .section-copy { max-width: 680px; color: var(--muted); }

    .btn {
      min-height: 52px;
      padding: 0 23px;
      border-radius: 14px;
      border: 1px solid transparent;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      font-weight: 850;
      white-space: nowrap;
      transition: transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease;
    }
    .btn svg { width: 18px; height: 18px; }
    .btn-primary {
      color: white;
      background: linear-gradient(135deg, var(--blue-700), var(--blue-600));
      box-shadow: 0 14px 32px rgba(31, 89, 150, .27);
    }
    .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 20px 42px rgba(31, 89, 150, .34); }
    .btn-red {
      color: white;
      background: linear-gradient(135deg, var(--red-600), var(--red-500));
      box-shadow: 0 14px 32px rgba(198, 43, 39, .24);
    }
    .btn-red:hover { transform: translateY(-2px); box-shadow: 0 20px 42px rgba(198, 43, 39, .30); }
    .btn-dark { color: white; background: var(--blue-950); }
    .btn-dark:hover { transform: translateY(-2px); background: #0d274a; }
    .btn-light { color: var(--ink); background: white; border-color: var(--line); }
    .btn-light:hover { transform: translateY(-2px); border-color: var(--blue-300); box-shadow: var(--shadow-xs); }
    .btn-ghost { color: var(--blue-700); background: var(--blue-50); border-color: var(--blue-100); }
    .btn-sm { min-height: 42px; padding: 0 16px; border-radius: 12px; font-size: 13px; }
    .btn-block { width: 100%; }

    .icon-box {
      width: 46px;
      height: 46px;
      flex: 0 0 auto;
      border-radius: 14px;
      display: grid;
      place-items: center;
      color: var(--blue-700);
      background: var(--blue-100);
    }
    .icon-box.red-box { color: var(--red-600); background: var(--red-100); }
    .icon-box.dark-box { color: white; background: var(--blue-950); }
    .icon-box svg { width: 21px; height: 21px; }

    .topbar {
      color: rgba(255,255,255,.87);
      background: linear-gradient(90deg, var(--blue-950), var(--blue-900));
      font-size: 13px;
    }
    .topbar .container {
      min-height: 42px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
    }
    .topbar-left, .topbar-right { display: flex; align-items: center; gap: 20px; }
    .topbar a:hover { color: white; }
    .live-dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: #ff4b44;
      box-shadow: 0 0 0 6px rgba(255, 75, 68, .16);
      animation: pulse 1.8s infinite;
    }
    @keyframes pulse { 50% { box-shadow: 0 0 0 10px rgba(255, 75, 68, 0); } }

    .site-header {
      position: sticky;
      top: 0;
      z-index: 1000;
      background: rgba(255,255,255,.93);
      backdrop-filter: blur(18px);
      border-bottom: 1px solid rgba(12, 51, 103, .08);
      transition: box-shadow .25s ease;
    }
    .site-header.scrolled { box-shadow: 0 12px 36px rgba(7, 26, 51, .09); }
    .navbar { min-height: 84px; display: flex; align-items: center; justify-content: space-between; gap: 22px; }
    .brand { display: inline-flex; align-items: center; gap: 12px; min-width: 230px; }
    .brand-logo {
      width: 58px;
      height: 58px;
      object-fit: contain;
      border-radius: 50%;
      background: white;
      border: 1px solid rgba(31, 89, 150, .15);
      box-shadow: 0 8px 22px rgba(31, 89, 150, .12);
    }
    .brand-copy strong { display: block; color: var(--ink); font-size: 17px; letter-spacing: -.025em; line-height: 1.05; }
    .brand-copy small { display: block; margin-top: 4px; color: var(--blue-600); font-size: 10px; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
    .main-nav { display: flex; align-items: center; gap: 3px; }
    .nav-item { position: relative; }
    .nav-link {
      min-height: 44px;
      padding: 0 11px;
      border-radius: 11px;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      color: #2b3a4e;
      font-size: 13px;
      font-weight: 800;
      transition: .2s ease;
    }
    .nav-link:hover, .nav-link.active { color: var(--blue-700); background: var(--blue-50); }
    .nav-link svg { width: 14px; height: 14px; }
    .nav-actions { display: flex; align-items: center; gap: 9px; }
    .icon-btn {
      width: 44px;
      height: 44px;
      border: 1px solid var(--line);
      border-radius: 13px;
      display: inline-grid;
      place-items: center;
      color: var(--blue-900);
      background: white;
    }
    .icon-btn svg { width: 19px; height: 19px; }
    .menu-toggle { display: none; }

    .mega {
      position: absolute;
      left: 50%;
      top: calc(100% + 13px);
      width: 650px;
      padding: 18px;
      border: 1px solid var(--line);
      border-radius: 22px;
      background: white;
      box-shadow: var(--shadow-lg);
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
      transform: translate(-50%, 12px);
      transition: .22s ease;
    }
    .mega.wide { width: 780px; }
    .nav-item:hover .mega { opacity: 1; visibility: visible; pointer-events: auto; transform: translate(-50%, 0); }
    .mega-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
    .mega.wide .mega-grid { grid-template-columns: repeat(3, 1fr); }
    .mega-card {
      padding: 14px;
      border-radius: 15px;
      display: flex;
      gap: 12px;
      transition: .2s ease;
    }
    .mega-card:hover { background: var(--blue-50); }
    .mega-card .icon-box { width: 40px; height: 40px; border-radius: 12px; }
    .mega-card strong { display: block; color: var(--ink); font-size: 14px; margin-bottom: 2px; }
    .mega-card small { display: block; color: var(--muted); line-height: 1.4; }

    .hero {
      position: relative;
      overflow: hidden;
      padding: 88px 0 40px;
      background:
        radial-gradient(circle at 8% 12%, rgba(79, 134, 198, .20), transparent 28%),
        radial-gradient(circle at 88% 14%, rgba(198, 43, 39, .11), transparent 23%),
        linear-gradient(180deg, #f8fbff 0%, #ffffff 74%);
    }
    .hero::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: .32;
      background-image: radial-gradient(rgba(12, 51, 103, .28) .65px, transparent .65px);
      background-size: 25px 25px;
      mask-image: linear-gradient(to bottom, black, transparent 76%);
      pointer-events: none;
    }
    .hero::after {
      content: "";
      position: absolute;
      width: 520px;
      height: 520px;
      right: -210px;
      top: -260px;
      border: 72px solid rgba(31, 89, 150, .07);
      border-radius: 50%;
    }
    .hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.03fr .97fr; gap: 60px; align-items: center; }
    .hero-badge {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 20px;
      padding: 8px 13px;
      border: 1px solid var(--blue-100);
      border-radius: 999px;
      color: var(--blue-800);
      background: rgba(255,255,255,.86);
      box-shadow: var(--shadow-xs);
      font-size: 12px;
      font-weight: 850;
    }
    .hero-badge .mini-badge { color: white; background: var(--red-500); padding: 4px 8px; border-radius: 999px; }
    .hero-copy { max-width: 680px; }
    .hero-copy h1 .gradient-word {
      background: linear-gradient(135deg, var(--blue-700), var(--blue-500));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }
    .hero-copy h1 .underline-word { position: relative; white-space: nowrap; }
    .hero-copy h1 .underline-word::after {
      content: "";
      position: absolute;
      left: 1%;
      right: 0;
      bottom: 4px;
      height: 10px;
      border-radius: 999px;
      background: rgba(198, 43, 39, .17);
      z-index: -1;
    }
    .hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin: 30px 0 28px; }
    .trust-row { display: flex; flex-wrap: wrap; gap: 18px; color: #56687f; font-size: 13px; font-weight: 750; }
    .trust-row span { display: inline-flex; align-items: center; gap: 8px; }
    .trust-row svg { width: 18px; height: 18px; color: var(--success); }

    .hero-visual { position: relative; min-height: 560px; display: grid; place-items: center; }
    .blue-orb {
      position: absolute;
      width: 440px;
      height: 440px;
      border-radius: 50%;
      background: linear-gradient(145deg, rgba(31, 89, 150, .22), rgba(255,255,255,.7));
      right: 10px;
      top: 40px;
      box-shadow: inset 0 0 0 1px rgba(255,255,255,.75);
    }
    .red-ring {
      position: absolute;
      width: 250px;
      height: 250px;
      border: 2px dashed rgba(198, 43, 39, .25);
      border-radius: 50%;
      right: -24px;
      bottom: 12px;
      animation: spin 26s linear infinite;
    }
    @keyframes spin { to { transform: rotate(360deg); } }
    .portal-card {
      position: relative;
      z-index: 3;
      width: min(100%, 470px);
      overflow: hidden;
      border: 1px solid rgba(255,255,255,.8);
      border-radius: 30px;
      background: rgba(255,255,255,.94);
      backdrop-filter: blur(14px);
      box-shadow: var(--shadow-lg);
    }
    .portal-top {
      padding: 22px 24px 20px;
      color: white;
      background:
        radial-gradient(circle at 90% -20%, rgba(255,255,255,.22), transparent 38%),
        linear-gradient(135deg, var(--blue-900), var(--blue-600));
    }
    .student-head { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
    .student-profile { display: flex; align-items: center; gap: 12px; }
    .student-avatar { width: 54px; height: 54px; border: 3px solid rgba(255,255,255,.75); border-radius: 17px; display: grid; place-items: center; background: rgba(255,255,255,.16); }
    .student-avatar svg { width: 25px; height: 25px; }
    .student-profile strong { display: block; font-size: 15px; }
    .student-profile small { color: rgba(255,255,255,.75); }
    .verified { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 800; padding: 7px 10px; border-radius: 999px; background: rgba(255,255,255,.16); }
    .verified svg { width: 14px; height: 14px; }
    .portal-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin-top: 20px; }
    .portal-stat { padding: 12px; border-radius: 14px; background: rgba(255,255,255,.12); }
    .portal-stat strong { display: block; font-size: 16px; }
    .portal-stat small { color: rgba(255,255,255,.70); font-size: 10px; }
    .portal-body { padding: 20px 22px 24px; }
    .quick-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; }
    .quick-action { padding: 12px 8px; border: 1px solid var(--line); border-radius: 14px; text-align: center; background: white; }
    .quick-action .mini-icon { width: 34px; height: 34px; margin: 0 auto 7px; border-radius: 10px; display: grid; place-items: center; color: var(--blue-700); background: var(--blue-100); }
    .quick-action:nth-child(2) .mini-icon, .quick-action:nth-child(4) .mini-icon { color: var(--red-600); background: var(--red-100); }
    .quick-action svg { width: 17px; height: 17px; }
    .quick-action span { display: block; color: var(--ink); font-size: 10px; font-weight: 800; }
    .portal-feed { margin-top: 18px; }
    .portal-feed-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
    .portal-feed-head strong { color: var(--ink); font-size: 13px; }
    .portal-feed-head span { color: var(--blue-600); font-size: 11px; font-weight: 850; }
    .feed-item { display: flex; gap: 11px; align-items: center; padding: 12px; border-radius: 14px; background: var(--blue-50); }
    .feed-item + .feed-item { margin-top: 8px; }
    .feed-date { min-width: 48px; padding: 7px; border-radius: 11px; text-align: center; color: white; background: var(--blue-700); font-size: 9px; font-weight: 900; line-height: 1.2; }
    .feed-date.red-date { background: var(--red-600); }
    .feed-item strong { display: block; color: var(--ink); font-size: 11px; line-height: 1.4; }
    .feed-item small { color: var(--muted); font-size: 9px; }
    .floating-note {
      position: absolute;
      z-index: 5;
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 12px 14px;
      border: 1px solid var(--line);
      border-radius: 15px;
      background: white;
      box-shadow: var(--shadow-md);
      animation: float 5s ease-in-out infinite;
    }
    .floating-note.a { left: -32px; top: 96px; }
    .floating-note.b { right: -22px; bottom: 66px; animation-delay: -2.3s; }
    .floating-note strong { display: block; color: var(--ink); font-size: 12px; }
    .floating-note small { display: block; color: var(--muted); font-size: 10px; }
    .floating-note .icon-box { width: 38px; height: 38px; border-radius: 11px; }
    @keyframes float { 50% { transform: translateY(-10px); } }

    .notice-bar { position: relative; z-index: 3; margin-top: 56px; }
    .notice-shell { min-height: 64px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 16px; padding: 10px 14px; border: 1px solid var(--line); border-radius: 17px; background: white; box-shadow: var(--shadow-sm); }
    .notice-label { display: inline-flex; align-items: center; gap: 8px; padding: 10px 13px; border-radius: 12px; color: white; background: var(--red-600); font-size: 12px; font-weight: 900; }
    .notice-label svg { width: 16px; height: 16px; }
    .notice-text { position: relative; overflow: hidden; height: 28px; }
    .notice-track { position: absolute; left: 0; top: 2px; white-space: nowrap; animation: ticker 22s linear infinite; color: var(--text); font-size: 13px; font-weight: 750; }
    .notice-track span { margin-right: 44px; }
    .notice-track b { color: var(--blue-700); }
    @keyframes ticker { to { transform: translateX(-50%); } }

    .quick-services { padding: 28px 0 0; }
    .quick-service-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; }
    .quick-service {
      position: relative;
      overflow: hidden;
      min-height: 142px;
      padding: 18px;
      border: 1px solid var(--line);
      border-radius: 20px;
      background: white;
      box-shadow: var(--shadow-xs);
      transition: .22s ease;
    }
    .quick-service::after { content: ""; position: absolute; width: 72px; height: 72px; border-radius: 50%; right: -24px; bottom: -28px; background: var(--blue-100); }
    .quick-service:nth-child(2n)::after { background: var(--red-100); }
    .quick-service:hover { transform: translateY(-6px); border-color: var(--blue-300); box-shadow: var(--shadow-sm); }
    .quick-service h3 { margin: 15px 0 7px; font-size: 15px; }
    .quick-service p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }

    .course-controls { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 26px; }
    .filter-pills { display: flex; flex-wrap: wrap; gap: 8px; }
    .filter-btn { min-height: 40px; padding: 0 15px; border: 1px solid var(--line); border-radius: 999px; color: var(--text); background: white; font-size: 12px; font-weight: 800; }
    .filter-btn.active, .filter-btn:hover { color: white; border-color: var(--blue-700); background: var(--blue-700); }
    .search-mini { min-width: 260px; min-height: 44px; display: flex; align-items: center; gap: 10px; padding: 0 14px; border: 1px solid var(--line); border-radius: 13px; background: white; }
    .search-mini svg { width: 18px; height: 18px; color: var(--blue-600); }
    .search-mini input { width: 100%; border: 0; outline: 0; color: var(--ink); background: transparent; }
    .course-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
    .course-card {
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 24px;
      background: white;
      box-shadow: var(--shadow-xs);
      transition: .25s ease;
    }
    .course-card:hover { transform: translateY(-7px); box-shadow: var(--shadow-md); }
    .course-cover { position: relative; min-height: 195px; padding: 22px; overflow: hidden; color: white; background: linear-gradient(135deg, var(--blue-900), var(--blue-600)); }
    .course-card:nth-child(2) .course-cover { background: linear-gradient(135deg, var(--red-700), var(--red-500)); }
    .course-card:nth-child(3) .course-cover { background: linear-gradient(135deg, #173b6e, #6b9fd5); }
    .course-card:nth-child(4) .course-cover { background: linear-gradient(135deg, #12284c, #285f9f); }
    .course-card:nth-child(5) .course-cover { background: linear-gradient(135deg, #7b1a18, #dd4b43); }
    .course-card:nth-child(6) .course-cover { background: linear-gradient(135deg, #214f82, #77a6d8); }
    .course-cover::before { content: ""; position: absolute; width: 170px; height: 170px; border: 32px solid rgba(255,255,255,.10); border-radius: 50%; right: -68px; top: -60px; }
    .course-cover::after { content: ""; position: absolute; width: 86px; height: 86px; border: 1px dashed rgba(255,255,255,.34); border-radius: 50%; left: 20px; bottom: -46px; }
    .course-label { display: inline-flex; padding: 7px 10px; border-radius: 999px; background: rgba(255,255,255,.16); font-size: 10px; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
    .course-symbol { position: absolute; right: 22px; bottom: 18px; width: 74px; height: 74px; border-radius: 22px; display: grid; place-items: center; background: rgba(255,255,255,.16); backdrop-filter: blur(8px); }
    .course-symbol svg { width: 36px; height: 36px; }
    .course-code { position: absolute; left: 22px; bottom: 22px; font-size: 11px; color: rgba(255,255,255,.72); font-weight: 850; }
    .course-body { padding: 22px; }
    .course-body h3 { margin-bottom: 9px; }
    .course-body p { color: var(--muted); font-size: 13px; margin-bottom: 18px; }
    .meta-row { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 18px; }
    .meta-chip { display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; border-radius: 9px; color: #52647b; background: var(--blue-50); font-size: 10px; font-weight: 800; }
    .meta-chip svg { width: 13px; height: 13px; color: var(--blue-600); }
    .course-footer { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding-top: 16px; border-top: 1px solid var(--line); }
    .course-footer strong { color: var(--ink); font-size: 12px; }
    .course-footer a { color: var(--blue-600); font-size: 12px; font-weight: 900; }
    .course-card.hidden { display: none; }

    .feature-layout { display: grid; grid-template-columns: .92fr 1.08fr; gap: 62px; align-items: center; }
    .benefit-list { display: grid; gap: 14px; margin-top: 28px; }
    .benefit { display: flex; gap: 13px; padding: 14px; border: 1px solid transparent; border-radius: 16px; transition: .2s ease; }
    .benefit:hover { border-color: var(--line); background: white; box-shadow: var(--shadow-xs); }
    .benefit h4 { margin: 2px 0 5px; }
    .benefit p { margin: 0; color: var(--muted); font-size: 13px; }
    .dashboard-showcase { position: relative; padding: 24px; border-radius: 30px; background: linear-gradient(145deg, var(--blue-950), var(--blue-800)); box-shadow: var(--shadow-lg); }
    .dashboard-showcase::before { content: ""; position: absolute; inset: 10px; border: 1px solid rgba(255,255,255,.10); border-radius: 24px; pointer-events: none; }
    .dash-window { position: relative; z-index: 2; overflow: hidden; border-radius: 20px; background: #f8fbff; }
    .dash-bar { min-height: 50px; display: flex; align-items: center; justify-content: space-between; padding: 0 16px; color: white; background: rgba(7,26,51,.94); }
    .window-dots { display: flex; gap: 6px; }
    .window-dots i { width: 8px; height: 8px; border-radius: 50%; background: #ff6c65; }
    .window-dots i:nth-child(2) { background: #ffc55c; }
    .window-dots i:nth-child(3) { background: #70d093; }
    .dash-bar small { color: rgba(255,255,255,.7); font-weight: 700; }
    .dash-layout { display: grid; grid-template-columns: 80px 1fr; min-height: 380px; }
    .dash-sidebar { padding: 14px 10px; background: white; border-right: 1px solid var(--line); }
    .side-dot { width: 42px; height: 42px; margin: 0 auto 9px; border-radius: 12px; display: grid; place-items: center; color: var(--blue-700); background: var(--blue-50); }
    .side-dot.active { color: white; background: var(--blue-700); }
    .side-dot svg { width: 17px; height: 17px; }
    .dash-main { padding: 18px; }
    .dash-title { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 14px; }
    .dash-title strong { color: var(--ink); font-size: 13px; }
    .dash-title span { padding: 6px 8px; border-radius: 8px; color: var(--blue-700); background: var(--blue-100); font-size: 9px; font-weight: 900; }
    .dash-card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
    .dash-card { padding: 12px; border: 1px solid var(--line); border-radius: 13px; background: white; }
    .dash-card small { color: var(--muted); font-size: 8px; }
    .dash-card strong { display: block; color: var(--ink); font-size: 18px; margin-top: 2px; }
    .dash-card b { color: var(--success); font-size: 8px; }
    .dash-content-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 10px; margin-top: 10px; }
    .chart-card, .task-card { min-height: 180px; padding: 12px; border: 1px solid var(--line); border-radius: 13px; background: white; }
    .chart-bars { height: 112px; display: flex; align-items: end; gap: 7px; padding-top: 12px; }
    .chart-bars i { flex: 1; border-radius: 5px 5px 2px 2px; background: linear-gradient(to top, var(--blue-700), var(--blue-300)); }
    .chart-bars i:nth-child(2), .chart-bars i:nth-child(5) { background: linear-gradient(to top, var(--red-600), #ef8d88); }
    .task-line { display: flex; align-items: center; gap: 7px; padding: 9px 0; border-bottom: 1px solid var(--line); }
    .task-line:last-child { border: 0; }
    .task-check { width: 18px; height: 18px; border-radius: 6px; color: var(--blue-700); background: var(--blue-100); display: grid; place-items: center; }
    .task-check svg { width: 11px; height: 11px; }
    .task-line span { color: #52647b; font-size: 8px; font-weight: 750; }

    .student-hub { position: relative; overflow: hidden; }
    .student-hub::before { content: ""; position: absolute; width: 500px; height: 500px; border-radius: 50%; border: 80px solid rgba(79,134,198,.08); left: -260px; top: 80px; }
    .hub-shell { position: relative; z-index: 2; display: grid; grid-template-columns: 310px 1fr; min-height: 560px; overflow: hidden; border: 1px solid var(--line); border-radius: 30px; background: white; box-shadow: var(--shadow-lg); }
    .hub-sidebar { padding: 26px 20px; color: white; background: linear-gradient(180deg, var(--blue-950), var(--blue-800)); }
    .hub-student { display: flex; align-items: center; gap: 12px; padding-bottom: 22px; border-bottom: 1px solid rgba(255,255,255,.12); }
    .hub-avatar { width: 50px; height: 50px; border-radius: 15px; display: grid; place-items: center; background: rgba(255,255,255,.14); }
    .hub-avatar svg { width: 22px; height: 22px; }
    .hub-student strong { display: block; }
    .hub-student small { color: rgba(255,255,255,.65); }
    .hub-nav { margin-top: 20px; }
    .hub-nav button { width: 100%; min-height: 44px; display: flex; align-items: center; gap: 11px; padding: 0 13px; border: 0; border-radius: 12px; color: rgba(255,255,255,.70); background: transparent; font-size: 12px; font-weight: 800; text-align: left; }
    .hub-nav button svg { width: 17px; height: 17px; }
    .hub-nav button.active, .hub-nav button:hover { color: white; background: rgba(255,255,255,.12); }
    .hub-help { margin-top: 26px; padding: 16px; border-radius: 16px; background: rgba(255,255,255,.10); }
    .hub-help strong { display: block; font-size: 13px; }
    .hub-help p { color: rgba(255,255,255,.65); font-size: 11px; margin: 6px 0 12px; }
    .hub-content { padding: 28px; background: #f7faff; }
    .hub-content-top { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
    .hub-content-top h3 { margin: 0 0 4px; }
    .hub-content-top p { margin: 0; color: var(--muted); font-size: 12px; }
    .hub-chip { display: inline-flex; align-items: center; gap: 7px; padding: 8px 11px; border-radius: 999px; color: var(--success); background: #e6f8f2; font-size: 10px; font-weight: 900; }
    .hub-panel { display: none; }
    .hub-panel.active { display: block; animation: fade .25s ease; }
    @keyframes fade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
    .hub-overview-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
    .hub-metric { padding: 15px; border: 1px solid var(--line); border-radius: 15px; background: white; }
    .hub-metric small { color: var(--muted); font-size: 9px; }
    .hub-metric strong { display: block; color: var(--ink); font-size: 19px; margin: 4px 0; }
    .hub-metric span { color: var(--success); font-size: 9px; font-weight: 850; }
    .hub-main-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 14px; margin-top: 14px; }
    .hub-card { padding: 18px; border: 1px solid var(--line); border-radius: 17px; background: white; }
    .hub-card-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 14px; }
    .hub-card-head strong { color: var(--ink); font-size: 13px; }
    .hub-card-head button { border: 0; color: var(--blue-600); background: transparent; font-size: 10px; font-weight: 900; }
    .news-row { display: grid; grid-template-columns: 48px 1fr auto; gap: 10px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--line); }
    .news-row:last-child { border: 0; }
    .news-type { width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; color: var(--blue-700); background: var(--blue-100); }
    .news-type.red-type { color: var(--red-600); background: var(--red-100); }
    .news-type svg { width: 18px; height: 18px; }
    .news-row strong { display: block; color: var(--ink); font-size: 11px; }
    .news-row small { color: var(--muted); font-size: 9px; }
    .file-badge { display: inline-flex; align-items: center; gap: 5px; padding: 6px 8px; border-radius: 8px; color: var(--blue-700); background: var(--blue-50); font-size: 8px; font-weight: 900; }
    .file-badge svg { width: 11px; height: 11px; }
    .event-row { display: flex; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--line); }
    .event-row:last-child { border: 0; }
    .event-date { min-width: 46px; height: 46px; border-radius: 12px; display: grid; place-items: center; text-align: center; color: white; background: var(--red-600); font-size: 9px; font-weight: 900; line-height: 1.1; }
    .event-date.blue-date { background: var(--blue-700); }
    .event-row strong { display: block; color: var(--ink); font-size: 11px; }
    .event-row small { color: var(--muted); font-size: 9px; }
    .table-demo { overflow-x: auto; border: 1px solid var(--line); border-radius: 14px; background: white; }
    .table-demo table { width: 100%; min-width: 620px; border-collapse: collapse; }
    .table-demo th, .table-demo td { padding: 13px; border-bottom: 1px solid var(--line); text-align: left; font-size: 11px; }
    .table-demo th { color: var(--blue-900); background: var(--blue-50); font-size: 10px; text-transform: uppercase; letter-spacing: .05em; }
    .status-pill { display: inline-flex; padding: 5px 8px; border-radius: 999px; color: var(--success); background: #e6f8f2; font-size: 8px; font-weight: 900; }

    .process-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; position: relative; }
    .process-grid::before { content: ""; position: absolute; top: 34px; left: 12.5%; right: 12.5%; height: 2px; background: linear-gradient(90deg, var(--blue-300), var(--red-500), var(--blue-300)); }
    .process-step { position: relative; z-index: 2; text-align: center; }
    .step-no { width: 68px; height: 68px; margin: 0 auto 18px; border: 7px solid white; border-radius: 50%; display: grid; place-items: center; color: white; background: var(--blue-700); box-shadow: 0 0 0 1px var(--blue-100), var(--shadow-sm); font-size: 17px; font-weight: 900; }
    .process-step:nth-child(2) .step-no, .process-step:nth-child(4) .step-no { background: var(--red-600); }
    .process-step p { color: var(--muted); font-size: 13px; }

    .verify-shell { display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; border-radius: 30px; box-shadow: var(--shadow-lg); }
    .verify-copy { padding: 52px; color: white; background: linear-gradient(145deg, var(--blue-950), var(--blue-700)); }
    .verify-copy h2 { color: white; }
    .verify-copy .eyebrow { color: #b8d6f6; }
    .verify-copy p { color: rgba(255,255,255,.72); }
    .verify-list { display: grid; gap: 10px; margin-top: 28px; }
    .verify-list span { display: flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 700; }
    .verify-list svg { width: 18px; height: 18px; color: #7ae0bc; }
    .verify-form { padding: 46px; background: white; }
    .form-tabs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; padding: 6px; border-radius: 13px; background: var(--blue-50); margin-bottom: 24px; }
    .form-tab { min-height: 40px; border: 0; border-radius: 10px; color: var(--muted); background: transparent; font-size: 11px; font-weight: 850; }
    .form-tab.active { color: white; background: var(--blue-700); box-shadow: var(--shadow-xs); }
    .field { margin-bottom: 15px; }
    .field label { display: block; margin-bottom: 7px; color: var(--ink); font-size: 12px; font-weight: 850; }
    .input-wrap { min-height: 52px; display: flex; align-items: center; gap: 10px; padding: 0 14px; border: 1px solid var(--line); border-radius: 13px; background: white; }
    .input-wrap:focus-within { border-color: var(--blue-500); box-shadow: 0 0 0 4px rgba(79,134,198,.12); }
    .input-wrap svg { width: 18px; height: 18px; color: var(--blue-600); }
    .input-wrap input, .input-wrap select { width: 100%; border: 0; outline: 0; color: var(--ink); background: transparent; }
    .captcha-row { display: grid; grid-template-columns: 130px 1fr; gap: 10px; }
    .captcha-box { min-height: 52px; display: grid; place-items: center; border-radius: 13px; color: white; background: repeating-linear-gradient(135deg, var(--blue-950) 0 7px, var(--blue-900) 7px 14px); font-size: 19px; font-weight: 900; letter-spacing: .16em; }

    .network-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 44px; align-items: center; }
    .map-card { position: relative; min-height: 480px; overflow: hidden; border-radius: 30px; background: linear-gradient(145deg, #eaf3fd, #ffffff); box-shadow: inset 0 0 0 1px var(--line); }
    .map-card::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(31,89,150,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(31,89,150,.07) 1px, transparent 1px); background-size: 32px 32px; }
    .map-shape { position: absolute; left: 50%; top: 50%; width: 230px; height: 300px; transform: translate(-50%,-50%) rotate(-4deg); border-radius: 42% 58% 52% 48% / 30% 34% 66% 70%; background: linear-gradient(145deg, var(--blue-300), var(--blue-600)); box-shadow: 0 24px 60px rgba(31,89,150,.25); opacity: .85; }
    .map-dot { position: absolute; width: 15px; height: 15px; border: 4px solid white; border-radius: 50%; background: var(--red-500); box-shadow: 0 6px 18px rgba(198,43,39,.35); }
    .map-dot::after { content: ""; position: absolute; inset: -7px; border: 1px solid rgba(198,43,39,.35); border-radius: 50%; animation: ping 2s infinite; }
    @keyframes ping { 100% { transform: scale(1.9); opacity: 0; } }
    .map-dot.one { left: 42%; top: 25%; }
    .map-dot.two { left: 57%; top: 40%; animation-delay: .4s; }
    .map-dot.three { left: 45%; top: 59%; animation-delay: .8s; }
    .map-dot.four { left: 62%; top: 72%; animation-delay: 1.2s; }
    .network-cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin-top: 28px; }
    .network-card { padding: 18px; border: 1px solid var(--line); border-radius: 17px; background: white; }
    .network-card strong { display: block; color: var(--ink); font-size: 24px; }
    .network-card span { color: var(--muted); font-size: 12px; }

    .job-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
    .job-card { padding: 22px; border: 1px solid rgba(255,255,255,.12); border-radius: 20px; background: rgba(255,255,255,.07); transition: .22s ease; }
    .job-card:hover { transform: translateY(-6px); background: rgba(255,255,255,.11); }
    .job-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
    .job-logo { width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; color: var(--blue-950); background: white; }
    .job-logo svg { width: 22px; height: 22px; }
    .job-tag { padding: 6px 9px; border-radius: 999px; color: #b8d6f6; background: rgba(159,193,232,.13); font-size: 9px; font-weight: 900; }
    .job-card h3 { color: white; margin-bottom: 7px; }
    .job-card p { color: rgba(255,255,255,.62); font-size: 12px; }
    .job-meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0; }
    .job-meta span { padding: 7px 9px; border-radius: 9px; color: rgba(255,255,255,.76); background: rgba(255,255,255,.08); font-size: 9px; font-weight: 750; }
    .job-footer { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.10); }
    .job-footer small { color: rgba(255,255,255,.55); }
    .job-footer a { color: #a9d0ff; font-size: 11px; font-weight: 900; }

    .testimonial-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 22px; }
    .quote-card { padding: 34px; border-radius: 26px; color: white; background: linear-gradient(145deg, var(--blue-900), var(--blue-600)); box-shadow: var(--shadow-md); }
    .quote-mark { font-size: 74px; line-height: .65; color: rgba(255,255,255,.22); font-family: Georgia, serif; }
    .quote-card blockquote { margin: 20px 0 26px; font-size: 20px; line-height: 1.5; font-weight: 650; }
    .quote-person { display: flex; align-items: center; gap: 12px; }
    .quote-avatar { width: 46px; height: 46px; border-radius: 14px; display: grid; place-items: center; background: rgba(255,255,255,.14); }
    .quote-person strong { display: block; }
    .quote-person small { color: rgba(255,255,255,.65); }
    .mini-testimonials { display: grid; gap: 14px; }
    .mini-quote { padding: 22px; border: 1px solid var(--line); border-radius: 20px; background: white; box-shadow: var(--shadow-xs); }
    .stars { color: #f7a928; letter-spacing: .1em; }
    .mini-quote p { color: var(--text); font-size: 13px; margin: 10px 0 15px; }
    .mini-quote strong { color: var(--ink); font-size: 12px; }

    .faq-wrap { max-width: 900px; margin: 0 auto; }
    .faq-item { border-bottom: 1px solid var(--line); }
    .faq-button { width: 100%; padding: 20px 0; border: 0; display: flex; align-items: center; justify-content: space-between; gap: 18px; color: var(--ink); background: transparent; font-size: 16px; font-weight: 850; text-align: left; }
    .faq-button span { width: 34px; height: 34px; flex: 0 0 auto; border-radius: 10px; display: grid; place-items: center; color: var(--blue-700); background: var(--blue-100); transition: .2s ease; }
    .faq-button svg { width: 17px; height: 17px; }
    .faq-item.open .faq-button span { color: white; background: var(--blue-700); transform: rotate(45deg); }
    .faq-answer { max-height: 0; overflow: hidden; transition: max-height .3s ease; }
    .faq-answer p { padding: 0 44px 20px 0; color: var(--muted); }

    .cta-wrap { padding: 0 0 90px; }
    .cta-card {
      position: relative;
      overflow: hidden;
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: center;
      gap: 30px;
      padding: 46px;
      border-radius: 30px;
      color: white;
      background: linear-gradient(135deg, var(--blue-900), var(--blue-600));
      box-shadow: var(--shadow-lg);
    }
    .cta-card::before { content: ""; position: absolute; width: 280px; height: 280px; border: 46px solid rgba(255,255,255,.08); border-radius: 50%; right: -80px; top: -130px; }
    .cta-card::after { content: ""; position: absolute; width: 120px; height: 120px; border-radius: 50%; background: rgba(198,43,39,.55); left: -55px; bottom: -65px; }
    .cta-card h2 { color: white; font-size: clamp(30px, 4vw, 48px); }
    .cta-card p { color: rgba(255,255,255,.72); margin: 0; max-width: 650px; }
    .cta-actions { position: relative; z-index: 2; display: flex; gap: 10px; flex-wrap: wrap; }

    footer { color: rgba(255,255,255,.74); background: var(--blue-950); }
    .footer-main { padding: 70px 0 44px; display: grid; grid-template-columns: 1.3fr repeat(4, 1fr); gap: 34px; }
    .footer-brand img { width: 66px; height: 66px; padding: 4px; border-radius: 50%; background: white; }
    .footer-brand h3 { color: white; margin: 16px 0 8px; }
    .footer-brand p { max-width: 310px; font-size: 13px; }
    .footer-col h4 { color: white; margin-bottom: 16px; }
    .footer-col a { display: block; margin-bottom: 10px; font-size: 12px; transition: .2s ease; }
    .footer-col a:hover { color: white; transform: translateX(3px); }
    .footer-bottom { min-height: 70px; display: flex; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid rgba(255,255,255,.10); font-size: 11px; }
    .footer-bottom-links { display: flex; gap: 18px; flex-wrap: wrap; }

    .mobile-drawer { position: fixed; inset: 0; z-index: 1400; visibility: hidden; pointer-events: none; }
    .mobile-drawer.open { visibility: visible; pointer-events: auto; }
    .drawer-backdrop { position: absolute; inset: 0; opacity: 0; background: rgba(7,26,51,.58); backdrop-filter: blur(4px); transition: .25s ease; }
    .mobile-drawer.open .drawer-backdrop { opacity: 1; }
    .drawer-panel { position: absolute; right: 0; top: 0; bottom: 0; width: min(390px, 92vw); overflow-y: auto; padding: 22px; background: white; transform: translateX(100%); transition: .28s ease; }
    .mobile-drawer.open .drawer-panel { transform: none; }
    .drawer-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
    .drawer-brand { display: flex; align-items: center; gap: 10px; }
    .drawer-brand img { width: 46px; height: 46px; border-radius: 50%; }
    .drawer-brand strong { color: var(--ink); }
    .drawer-nav { padding: 16px 0; }
    .drawer-link { width: 100%; min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 0 12px; border: 0; border-radius: 12px; color: var(--ink); background: transparent; font-weight: 800; text-align: left; }
    .drawer-link:hover { background: var(--blue-50); }
    .drawer-sub { display: none; padding: 4px 0 10px 18px; }
    .drawer-sub.open { display: block; }
    .drawer-sub a { display: block; padding: 8px 10px; color: var(--muted); font-size: 12px; }
    .drawer-actions { display: grid; gap: 9px; padding-top: 16px; border-top: 1px solid var(--line); }

    .mobile-bottom { display: none; }
    .back-top { position: fixed; right: 22px; bottom: 22px; z-index: 900; width: 46px; height: 46px; border: 0; border-radius: 14px; display: grid; place-items: center; color: white; background: var(--blue-700); box-shadow: var(--shadow-md); opacity: 0; visibility: hidden; transform: translateY(12px); transition: .25s ease; }
    .back-top.visible { opacity: 1; visibility: visible; transform: none; }
    .back-top svg { width: 19px; height: 19px; }

    .reveal { opacity: 0; transform: translateY(24px); transition: opacity .65s ease, transform .65s ease; }
    .reveal.visible { opacity: 1; transform: none; }

    @media (max-width: 1120px) {
      .main-nav { display: none; }
      .menu-toggle { display: inline-grid; }
      .quick-service-grid { grid-template-columns: repeat(3, 1fr); }
      .footer-main { grid-template-columns: 1.4fr repeat(2, 1fr); }
    }

    @media (max-width: 960px) {
      .section { padding: 78px 0; }
      .hero-grid, .feature-layout, .network-grid, .testimonial-grid { grid-template-columns: 1fr; }
      .hero { padding-top: 64px; }
      .hero-copy { text-align: center; margin: 0 auto; }
      .hero-copy .lead { margin-inline: auto; }
      .hero-actions, .trust-row { justify-content: center; }
      .hero-visual { min-height: 520px; }
      .course-grid, .job-grid { grid-template-columns: repeat(2, 1fr); }
      .hub-shell { grid-template-columns: 230px 1fr; }
      .hub-overview-grid { grid-template-columns: repeat(2, 1fr); }
      .hub-main-grid { grid-template-columns: 1fr; }
      .verify-shell { grid-template-columns: 1fr; }
      .verify-copy, .verify-form { padding: 40px; }
      .process-grid { grid-template-columns: repeat(2, 1fr); row-gap: 34px; }
      .process-grid::before { display: none; }
      .footer-main { grid-template-columns: repeat(2, 1fr); }
    }

    @media (max-width: 720px) {
      :root { --container: min(100% - 28px, 1200px); }
      body { padding-bottom: 72px; }
      .topbar-right { display: none; }
      .topbar .container { justify-content: center; text-align: center; }
      .brand { min-width: auto; }
      .brand-copy strong { font-size: 14px; }
      .brand-copy small { font-size: 8px; }
      .brand-logo { width: 50px; height: 50px; }
      .navbar { min-height: 72px; }
      .nav-actions .btn { display: none; }
      .section { padding: 66px 0; }
      .section-head { display: block; }
      h1 { font-size: clamp(40px, 14vw, 58px); }
      h2 { font-size: clamp(31px, 10vw, 42px); }
      .hero { padding-top: 50px; }
      .hero-visual { min-height: 530px; }
      .portal-card { width: 100%; }
      .blue-orb { width: 360px; height: 360px; right: 50%; transform: translateX(50%); }
      .floating-note.a { left: -4px; top: 54px; }
      .floating-note.b { right: -3px; bottom: 28px; }
      .notice-shell { grid-template-columns: auto 1fr; }
      .notice-shell .btn { display: none; }
      .quick-service-grid { grid-template-columns: repeat(2, 1fr); }
      .course-controls { align-items: stretch; flex-direction: column; }
      .search-mini { min-width: 0; width: 100%; }
      .course-grid, .job-grid { grid-template-columns: 1fr; }
      .dashboard-showcase { padding: 14px; }
      .dash-layout { grid-template-columns: 58px 1fr; }
      .dash-card-grid { grid-template-columns: 1fr; }
      .dash-card:nth-child(3) { display: none; }
      .dash-content-grid { grid-template-columns: 1fr; }
      .task-card { display: none; }
      .hub-shell { display: block; }
      .hub-sidebar { padding: 18px; }
      .hub-nav { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 4px; }
      .hub-nav button { width: auto; min-width: max-content; padding: 0 12px; }
      .hub-help { display: none; }
      .hub-content { padding: 20px 14px; }
      .hub-content-top { align-items: flex-start; flex-direction: column; }
      .hub-overview-grid { grid-template-columns: repeat(2, 1fr); }
      .verify-copy, .verify-form { padding: 30px 22px; }
      .form-tabs { grid-template-columns: 1fr; }
      .captcha-row { grid-template-columns: 1fr; }
      .process-grid { grid-template-columns: 1fr; }
      .network-cards { grid-template-columns: 1fr 1fr; }
      .map-card { min-height: 380px; }
      .cta-card { grid-template-columns: 1fr; padding: 34px 24px; }
      .footer-main { grid-template-columns: 1fr 1fr; }
      .footer-brand { grid-column: 1 / -1; }
      .footer-bottom { align-items: flex-start; flex-direction: column; justify-content: center; padding: 18px 0; }
      .mobile-bottom {
        position: fixed;
        left: 10px;
        right: 10px;
        bottom: 10px;
        z-index: 1100;
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        min-height: 62px;
        padding: 7px;
        border: 1px solid rgba(159,193,232,.5);
        border-radius: 19px;
        background: rgba(255,255,255,.94);
        backdrop-filter: blur(18px);
        box-shadow: var(--shadow-md);
      }
      .bottom-link { display: grid; place-items: center; gap: 2px; color: var(--muted); font-size: 8px; font-weight: 850; }
      .bottom-link svg { width: 20px; height: 20px; }
      .bottom-link.active { color: var(--blue-700); }
      .bottom-link.apply { width: 50px; height: 50px; margin: -18px auto 0; border-radius: 16px; color: white; background: var(--red-600); box-shadow: 0 12px 26px rgba(198,43,39,.30); }
      .back-top { bottom: 86px; }
    }

    @media (max-width: 460px) {
      .topbar { font-size: 11px; }
      .brand-copy strong { max-width: 125px; }
      .quick-service-grid { grid-template-columns: 1fr 1fr; gap: 9px; }
      .quick-service { min-height: 132px; padding: 15px; }
      .portal-top { padding: 18px; }
      .portal-body { padding: 16px; }
      .portal-stats { grid-template-columns: 1fr 1fr; }
      .portal-stat:last-child { display: none; }
      .quick-grid { grid-template-columns: repeat(2, 1fr); }
      .floating-note { display: none; }
      .hub-overview-grid, .network-cards { grid-template-columns: 1fr; }
      .news-row { grid-template-columns: 42px 1fr; }
      .news-row .file-badge { grid-column: 2; justify-self: start; }
      .footer-main { grid-template-columns: 1fr; }
      .footer-brand { grid-column: auto; }
      .cta-actions { display: grid; }
    }

    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition-duration: .01ms !important; }
      .reveal { opacity: 1; transform: none; }
    }

    :focus-visible { outline: 3px solid rgba(79,134,198,.45); outline-offset: 3px; }


    /* BFS refinement pass: balanced typography, 7px geometry and richer content */
    :root { --radius-sm: 7px; --radius: 7px; --radius-lg: 7px; }
    body { font-weight: 400; }
    h1, h2 { font-weight: 720; }
    h3, h4, strong { font-weight: 650; }
    .eyebrow { font-weight: 700; }
    .btn, .nav-link, .form-tab, .filter-btn, .faq-button, .bottom-link { font-weight: 650; }
    .field label, .course-footer a, .job-footer a { font-weight: 650; }

    .btn, .btn-sm, .icon-btn, .icon-box, .mini-icon, .mega, .mega-card, .hero-badge, .portal-card,
    .quick-action, .notice-shell, .quick-service, .search-mini, .filter-btn, .course-card, .course-visual,
    .dashboard-showcase, .dash-sidebar, .dash-card, .chart-card, .task-card, .hub-shell, .hub-sidebar,
    .hub-nav button, .hub-help, .hub-stat, .hub-card, .news-type, .file-badge, .table-demo, .verify-shell,
    .verify-form, .form-tabs, .form-tab, .input-wrap, .captcha-box, .map-card, .network-card, .job-card,
    .job-logo, .job-tag, .job-meta span, .quote-card, .quote-avatar, .mini-quote, .faq-button span,
    .cta-card, .back-top, .mobile-bottom, .bottom-link.apply, .content-tabs, .content-tab, .person-card,
    .person-card img, .leader-card, .leader-card img, .admission-card, .admission-card img, .review-card,
    .review-head img, .social-link, .footer-topline, .contact-action, .contact-action span, .contact-more,
    .whatsapp-main { border-radius: 7px !important; }

    .content-tabs { display: inline-flex; gap: 5px; padding: 5px; border: 1px solid var(--line); background: var(--blue-50); }
    .content-tab { min-height: 40px; padding: 0 16px; border: 0; color: var(--muted); background: transparent; font-size: 12px; font-weight: 650; }
    .content-tab.active { color: white; background: var(--blue-700); box-shadow: var(--shadow-xs); }
    .people-panel, .story-panel, .verify-panel { display: none; }
    .people-panel.active, .story-panel.active, .verify-panel.active { display: block; animation: tabReveal .34s ease; }
    @keyframes tabReveal { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

    .people-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
    .person-card { overflow: hidden; border: 1px solid var(--line); background: white; box-shadow: var(--shadow-xs); transition: transform .25s ease, box-shadow .25s ease; }
    .person-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-sm); }
    .person-card img { width: 100%; aspect-ratio: 1 / 1.02; object-fit: cover; border-radius: 0 !important; }
    .person-copy { padding: 20px; }
    .person-role { display: block; margin-bottom: 8px; color: var(--blue-700); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
    .person-card h3, .leader-card h3, .admission-card h3, .review-card h3 { margin-bottom: 7px; }
    .person-card p, .leader-card p { color: var(--muted); font-size: 12px; }
    .person-meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 15px; }
    .person-meta span { padding: 5px 8px; border-radius: 7px; color: var(--blue-700); background: var(--blue-50); font-size: 9px; font-weight: 650; }
    .leadership-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
    .leader-card { display: grid; grid-template-columns: 170px 1fr; gap: 24px; align-items: center; padding: 20px; border: 1px solid var(--line); background: white; box-shadow: var(--shadow-xs); }
    .leader-card img { width: 170px; height: 190px; object-fit: cover; }
    .leader-contact { display: flex; flex-wrap: wrap; gap: 10px 16px; margin-top: 18px; }
    .leader-contact span { display: inline-flex; align-items: center; gap: 6px; color: var(--muted); font-size: 11px; }
    .leader-contact svg { width: 15px; height: 15px; color: var(--blue-600); }
    .team-values { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 18px; }
    .team-values span { display: flex; align-items: center; gap: 8px; padding: 13px; border: 1px solid var(--line); border-radius: 7px; color: var(--text); background: var(--blue-50); font-size: 11px; }
    .team-values svg { width: 17px; height: 17px; color: var(--success); }

    .admission-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
    .admission-card { display: grid; grid-template-columns: 138px 1fr; gap: 18px; align-items: center; padding: 17px; border: 1px solid var(--line); background: white; box-shadow: var(--shadow-xs); }
    .admission-card img { width: 138px; height: 154px; object-fit: cover; }
    .admission-card .status-pill { display: inline-flex; margin-bottom: 10px; }
    .admission-card dl { display: grid; grid-template-columns: 1fr 1fr; gap: 9px 14px; margin: 14px 0 0; }
    .admission-card dl div { min-width: 0; }
    .admission-card dt { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .06em; }
    .admission-card dd { margin: 2px 0 0; color: var(--ink); font-size: 11px; font-weight: 650; overflow-wrap: anywhere; }
    .review-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .review-card { padding: 22px; border: 1px solid var(--line); background: white; box-shadow: var(--shadow-xs); }
    .review-head { display: grid; grid-template-columns: 52px 1fr auto; gap: 11px; align-items: center; }
    .review-head img { width: 52px; height: 52px; object-fit: cover; }
    .review-head h3 { font-size: 15px; }
    .review-head small { color: var(--muted); font-size: 10px; }
    .review-head .stars { font-size: 10px; }
    .review-card > p { margin: 20px 0; color: var(--text); font-size: 13px; }
    .review-proof { display: inline-flex; align-items: center; gap: 7px; color: var(--success); font-size: 10px; font-weight: 650; }
    .review-proof svg { width: 16px; height: 16px; }
    .quote-avatar { overflow: hidden; }
    .quote-avatar img { width: 100%; height: 100%; object-fit: cover; }

    .verify-tabs { grid-template-columns: repeat(4, 1fr); }
    .verify-panel-title { display: flex; align-items: center; gap: 12px; margin-bottom: 22px; }
    .verify-panel-title strong { display: block; color: var(--ink); font-size: 15px; }
    .verify-panel-title small { display: block; margin-top: 3px; color: var(--muted); font-size: 10px; }
    .verify-note { font-size: 10px; margin: 14px 0 0; }

    .footer-topline { display: flex; justify-content: space-between; align-items: center; gap: 28px; padding: 32px 0; border-bottom: 1px solid rgba(255,255,255,.10); }
    .footer-topline .eyebrow { margin-bottom: 7px; color: #a9d0ff; }
    .footer-topline h3 { margin-bottom: 5px; color: white; }
    .footer-topline p { margin: 0; font-size: 12px; }
    .footer-contact-actions { display: flex; gap: 8px; }
    .footer-main { grid-template-columns: 1.35fr repeat(6, 1fr); gap: 25px; }
    .footer-col h4 { font-weight: 650; }
    .social-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
    .social-link { width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.16); color: white; background: rgba(255,255,255,.07); font-size: 12px; font-weight: 650; transition: .2s ease; }
    .social-link:hover { transform: translateY(-3px); background: var(--blue-600); }

    .contact-float { position: fixed; right: 18px; bottom: 84px; z-index: 1050; display: grid; justify-items: end; gap: 8px; }
    .contact-panel { display: grid; gap: 8px; width: 250px; opacity: 0; visibility: hidden; transform: translateY(10px) scale(.97); transform-origin: right bottom; transition: .22s ease; }
    .contact-float.open .contact-panel { opacity: 1; visibility: visible; transform: none; }
    .contact-action { display: grid; grid-template-columns: 38px 1fr; gap: 10px; align-items: center; padding: 10px; border: 1px solid var(--line); color: var(--text); background: white; box-shadow: var(--shadow-sm); }
    .contact-action span { width: 38px; height: 38px; display: grid; place-items: center; color: white; background: var(--blue-700); }
    .contact-action.whatsapp span { background: #159c62; }
    .contact-action svg { width: 18px; height: 18px; }
    .contact-action strong { display: block; color: var(--ink); font-size: 12px; }
    .contact-action small { display: block; color: var(--muted); font-size: 9px; }
    .contact-more, .whatsapp-main { width: 50px; height: 50px; border: 0; display: grid; place-items: center; color: white; box-shadow: var(--shadow-md); }
    .contact-more { background: var(--blue-900); }
    .whatsapp-main { background: #159c62; }
    .contact-more svg, .whatsapp-main svg { width: 22px; height: 22px; }
    .contact-float.open .contact-more svg { transform: rotate(90deg); }

    .icon-box svg, .mini-icon svg, .job-logo svg, .quick-service svg, .bottom-link svg, .contact-action svg, .contact-more svg, .whatsapp-main svg, .social-link { transition: transform .22s ease; }
    .quick-service .icon-box svg, .job-logo svg, .hub-nav button svg, .bottom-link svg { animation: iconFloat 3.8s ease-in-out infinite; }
    .quick-service:nth-child(2n) .icon-box svg, .job-card:nth-child(2n) .job-logo svg { animation-delay: -.9s; }
    @keyframes iconFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-3px); } }
    .icon-box:hover svg, .mega-card:hover .icon-box svg, .quick-service:hover .icon-box svg, .job-card:hover .job-logo svg, .contact-action:hover svg, .social-link:hover { animation: iconNudge .55s ease; }
    @keyframes iconNudge { 0%,100% { transform: translateY(0) rotate(0); } 35% { transform: translateY(-4px) rotate(-5deg); } 70% { transform: translateY(1px) rotate(4deg); } }

    @media (max-width: 1180px) {
      .footer-main { grid-template-columns: repeat(4, 1fr); }
      .footer-brand { grid-column: span 2; }
      .people-grid { grid-template-columns: repeat(2, 1fr); }
    }

    @media (max-width: 720px) {
      body { padding-bottom: 72px; }
      .menu-toggle, .mobile-drawer { display: none !important; }
      .people-grid, .leadership-grid, .admission-grid, .review-grid { grid-template-columns: 1fr; }
      .leader-card { grid-template-columns: 105px 1fr; padding: 14px; }
      .leader-card img { width: 105px; height: 126px; }
      .team-values { grid-template-columns: 1fr 1fr; }
      .admission-card { grid-template-columns: 92px 1fr; padding: 13px; }
      .admission-card img { width: 92px; height: 112px; }
      .admission-card dl { grid-template-columns: 1fr 1fr; }
      .content-tabs { width: 100%; overflow-x: auto; }
      .content-tab { flex: 1 0 max-content; }
      .verify-tabs { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }
      .verify-tabs .form-tab { min-width: 110px; scroll-snap-align: start; }
      .footer-topline { align-items: flex-start; flex-direction: column; }
      .footer-contact-actions { width: 100%; }
      .footer-contact-actions .btn { flex: 1; }
      .footer-scroll { display: flex; overflow-x: auto; gap: 14px; padding: 44px 0 28px; scroll-snap-type: x mandatory; scrollbar-width: thin; }
      .footer-scroll > * { flex: 0 0 min(82vw, 320px); scroll-snap-align: start; padding: 18px; border: 1px solid rgba(255,255,255,.10); background: rgba(255,255,255,.035); }
      .footer-brand { grid-column: auto; }
      .contact-float { right: 12px; bottom: 86px; }
      .contact-panel { width: min(250px, calc(100vw - 34px)); }
      .back-top { right: 74px; }
    }

    @media (max-width: 460px) {
      .team-values { grid-template-columns: 1fr; }
      .review-head { grid-template-columns: 48px 1fr; }
      .review-head .stars { grid-column: 2; }
      .admission-card dl { grid-template-columns: 1fr; }
      .footer-contact-actions { display: grid; }
    }


    /* Final UI refinement: compact moving showcases, premium footer and two quick contacts */
    h1 { font-weight: 680; }
    h2 { font-weight: 640; }
    h3, h4, strong { font-weight: 600; }
    .btn, .nav-link, .content-tab, .form-tab, .filter-btn, .bottom-link { font-weight: 600; }

    .showcase-section { padding: 68px 0; overflow: hidden; }
    .showcase-section.surface { background: linear-gradient(180deg, var(--surface), #eef5fd); }
    .showcase-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: end;
      gap: 24px;
      margin-bottom: 24px;
    }
    .showcase-head h2 { max-width: 760px; margin-bottom: 8px; font-size: clamp(29px, 3.4vw, 44px); line-height: 1.06; }
    .showcase-head .eyebrow { margin-bottom: 9px; }
    .showcase-head .section-copy { margin: 0; max-width: 720px; font-size: 13px; line-height: 1.65; }
    .showcase-note { display: inline-flex; align-items: center; gap: 7px; margin-top: 10px; color: var(--muted); font-size: 10px; }
    .showcase-note svg { width: 14px; height: 14px; color: var(--success); animation: iconFloat 3.8s ease-in-out infinite; }

    .moving-shell {
      position: relative;
      overflow: hidden;
      padding: 6px 0 18px;
      -webkit-mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);
      mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);
    }
    .moving-track { display: flex; width: max-content; gap: 16px; animation: showcaseMoveLeft 38s linear infinite; }
    .moving-track.slower { animation-duration: 48s; }
    .moving-track.reverse { animation-name: showcaseMoveRight; }
    .moving-shell:hover .moving-track { animation-play-state: paused; }
    @keyframes showcaseMoveLeft { from { transform: translateX(0); } to { transform: translateX(calc(-50% - 8px)); } }
    @keyframes showcaseMoveRight { from { transform: translateX(calc(-50% - 8px)); } to { transform: translateX(0); } }

    .faculty-slide, .leader-slide, .admission-slide, .google-review-card {
      flex: 0 0 auto;
      border: 1px solid var(--line);
      border-radius: 7px;
      background: white;
      box-shadow: var(--shadow-xs);
      transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
    }
    .faculty-slide:hover, .leader-slide:hover, .admission-slide:hover, .google-review-card:hover {
      transform: translateY(-5px);
      border-color: var(--blue-300);
      box-shadow: var(--shadow-sm);
    }
    .faculty-slide { width: 320px; min-height: 152px; display: grid; grid-template-columns: 92px 1fr; gap: 15px; padding: 14px; align-items: center; }
    .faculty-slide img { width: 92px; height: 118px; object-fit: cover; border-radius: 7px; }
    .faculty-slide h3 { margin-bottom: 5px; font-size: 17px; }
    .faculty-slide p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
    .faculty-slide .person-role { margin-bottom: 5px; }
    .faculty-slide .person-meta { margin-top: 9px; }

    .leader-slide { width: 390px; min-height: 160px; display: grid; grid-template-columns: 104px 1fr; gap: 16px; padding: 15px; align-items: center; }
    .leader-slide img { width: 104px; height: 130px; object-fit: cover; border-radius: 7px; }
    .leader-slide h3 { margin-bottom: 5px; font-size: 18px; }
    .leader-slide p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
    .leader-slide .leader-contact { margin-top: 9px; gap: 7px 12px; }

    .admission-slide { width: 350px; min-height: 150px; display: grid; grid-template-columns: 88px 1fr; gap: 15px; padding: 14px; align-items: center; }
    .admission-slide img { width: 88px; height: 112px; object-fit: cover; border-radius: 7px; }
    .admission-slide h3 { margin: 5px 0 7px; font-size: 17px; }
    .admission-slide dl { display: grid; grid-template-columns: 1fr 1fr; gap: 7px 12px; margin: 0; }
    .admission-slide dt { color: var(--muted); font-size: 8px; letter-spacing: .06em; text-transform: uppercase; }
    .admission-slide dd { margin: 1px 0 0; color: var(--ink); font-size: 10px; font-weight: 600; }
    .admission-slide .status-pill { padding: 5px 8px; font-size: 8px; }

    .google-review-summary {
      display: grid;
      grid-template-columns: auto 1fr auto;
      align-items: center;
      gap: 16px;
      margin-bottom: 16px;
      padding: 16px 18px;
      border: 1px solid var(--line);
      border-radius: 7px;
      background: white;
      box-shadow: var(--shadow-xs);
    }
    .google-mark { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 7px; color: #4285f4; background: white; font-size: 25px; font-weight: 700; box-shadow: var(--shadow-xs); }
    .google-score { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
    .google-score strong { color: var(--ink); font-size: 22px; }
    .google-score span { color: var(--muted); font-size: 11px; }
    .google-stars { display: inline-flex; gap: 2px; color: #f6ad01; }
    .google-stars svg { width: 15px; height: 15px; }
    .google-review-summary .btn { min-height: 40px; }

    .google-review-card { width: 370px; min-height: 230px; padding: 18px; }
    .google-review-top { display: grid; grid-template-columns: 46px 1fr auto; gap: 11px; align-items: center; }
    .google-review-top img { width: 46px; height: 46px; object-fit: cover; border-radius: 50% !important; }
    .google-review-top h3 { margin: 0 0 2px; font-size: 14px; }
    .google-review-top small { display: block; color: var(--muted); font-size: 9px; }
    .google-review-card > p { min-height: 74px; margin: 15px 0 13px; color: var(--text); font-size: 12px; line-height: 1.65; }
    .google-card-mark { width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 7px; color: #4285f4; font-weight: 700; }
    .google-review-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
    .google-review-meta span { display: inline-flex; align-items: center; gap: 6px; color: var(--success); font-size: 9px; }
    .google-review-meta svg { width: 14px; height: 14px; }
    .google-review-meta small { color: var(--muted); font-size: 9px; }

    footer {
      position: relative;
      overflow: hidden;
      background:
        radial-gradient(circle at 12% 0%, rgba(79, 134, 198, .25), transparent 34%),
        radial-gradient(circle at 95% 15%, rgba(223, 62, 56, .14), transparent 26%),
        linear-gradient(145deg, #06162d, var(--blue-950) 58%, #0b2d5d);
    }
    footer::before { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(255,255,255,.02) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.02) 1px, transparent 1px); background-size: 34px 34px; mask-image: linear-gradient(to bottom, #000, transparent 80%); }
    .footer-topline { position: relative; padding: 28px 0; }
    .footer-topline h3 { font-size: 24px; font-weight: 600; }
    .footer-contact-actions .btn-light { color: white; border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.08); }
    .footer-contact-actions .btn-light:hover { border-color: rgba(255,255,255,.35); background: rgba(255,255,255,.13); }
    .footer-premium-body { position: relative; display: grid; grid-template-columns: minmax(270px, 1.15fr) 2.4fr; gap: 30px; padding: 42px 0 34px; }
    .footer-brand-card { padding: 22px; border: 1px solid rgba(255,255,255,.11); border-radius: 7px; background: rgba(255,255,255,.055); box-shadow: 0 18px 45px rgba(0,0,0,.12); }
    .footer-brand-row { display: flex; align-items: center; gap: 13px; }
    .footer-brand-row img { width: 58px; height: 58px; padding: 3px; border-radius: 50%; background: white; }
    .footer-brand-row h3 { margin: 0 0 4px; color: white; font-size: 18px; }
    .footer-brand-row small { color: #a9d0ff; font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
    .footer-brand-card > p { margin: 17px 0 18px; color: rgba(255,255,255,.67); font-size: 12px; line-height: 1.7; }
    .footer-contact-list { display: grid; gap: 8px; }
    .footer-contact-chip { display: flex; align-items: center; gap: 9px; padding: 9px 10px; border: 1px solid rgba(255,255,255,.10); border-radius: 7px; color: rgba(255,255,255,.8); background: rgba(255,255,255,.035); font-size: 10px; }
    .footer-contact-chip svg { width: 16px; height: 16px; color: #a9d0ff; animation: iconFloat 3.8s ease-in-out infinite; }
    .footer-social-block { margin-top: 18px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.10); }
    .footer-social-block strong { display: block; margin-bottom: 10px; color: white; font-size: 11px; }
    .social-link svg { width: 17px; height: 17px; }
    .footer-links-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
    .footer-col { min-width: 0; }
    .footer-col h4 { position: relative; margin: 0 0 16px; padding-bottom: 10px; color: white; font-size: 12px; }
    .footer-col h4::after { content: ""; position: absolute; left: 0; bottom: 0; width: 28px; height: 2px; border-radius: 7px; background: linear-gradient(90deg, var(--red-500), var(--blue-500)); }
    .footer-col a { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; color: rgba(255,255,255,.65); font-size: 10px; }
    .footer-col a svg { width: 14px; height: 14px; color: #8fc0f5; flex: 0 0 auto; transition: transform .2s ease; }
    .footer-col a:hover svg { transform: translateX(2px); }
    .footer-trust-row { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 26px; }
    .footer-trust-item { display: flex; align-items: center; gap: 9px; padding: 11px; border: 1px solid rgba(255,255,255,.09); border-radius: 7px; color: rgba(255,255,255,.69); background: rgba(255,255,255,.025); font-size: 9px; }
    .footer-trust-item svg { width: 17px; height: 17px; color: #8fc0f5; animation: iconFloat 3.8s ease-in-out infinite; }
    .footer-bottom { position: relative; min-height: 64px; }
    .mobile-footer-nav { display: none; position: relative; padding: 24px 0 28px; border-top: 1px solid rgba(255,255,255,.09); }
    .mobile-footer-nav-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; color: white; font-size: 11px; }
    .mobile-footer-nav-title small { color: rgba(255,255,255,.48); font-size: 8px; }
    .footer-menu-marquee { overflow: hidden; margin-top: 9px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
    .footer-menu-track { display: flex; width: max-content; gap: 8px; animation: footerMenuLeft 22s linear infinite; }
    .footer-menu-marquee.reverse .footer-menu-track { animation-name: footerMenuRight; animation-duration: 25s; }
    .footer-menu-marquee:active .footer-menu-track { animation-play-state: paused; }
    .footer-menu-pill { flex: 0 0 auto; min-width: 100px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 10px 12px; border: 1px solid rgba(255,255,255,.12); border-radius: 7px; color: rgba(255,255,255,.82); background: rgba(255,255,255,.055); font-size: 9px; }
    .footer-menu-pill svg { width: 15px; height: 15px; color: #9dc8f4; animation: iconFloat 3.6s ease-in-out infinite; }
    @keyframes footerMenuLeft { from { transform: translateX(0); } to { transform: translateX(calc(-50% - 4px)); } }
    @keyframes footerMenuRight { from { transform: translateX(calc(-50% - 4px)); } to { transform: translateX(0); } }

    .quick-contact-rail { position: fixed; right: 16px; bottom: 26px; z-index: 1050; display: grid; gap: 9px; }
    .quick-contact-btn { width: 52px; height: 52px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.55); border-radius: 7px; color: white; box-shadow: var(--shadow-md); transition: transform .2s ease, box-shadow .2s ease; }
    .quick-contact-btn.call { background: linear-gradient(135deg, var(--blue-800), var(--blue-600)); }
    .quick-contact-btn.whatsapp { background: linear-gradient(135deg, #0f8f58, #20b66f); }
    .quick-contact-btn svg { width: 23px; height: 23px; animation: contactPulse 2.6s ease-in-out infinite; }
    .quick-contact-btn:nth-child(2) svg { animation-delay: -1.2s; }
    .quick-contact-btn:hover { transform: translateY(-3px); box-shadow: var(--shadow-lg); }
    @keyframes contactPulse { 0%,100% { transform: scale(1); } 50% { transform: scale(1.08) rotate(-3deg); } }

    @media (max-width: 920px) {
      .footer-premium-body { grid-template-columns: 1fr; }
      .footer-links-grid { grid-template-columns: repeat(4, 1fr); }
      .leader-slide { width: 360px; }
    }

    @media (max-width: 720px) {
      .showcase-section { padding: 54px 0; }
      .showcase-head { grid-template-columns: 1fr; align-items: start; gap: 14px; margin-bottom: 18px; }
      .showcase-head h2 { font-size: 31px; }
      .showcase-head .section-copy { font-size: 12px; }
      .showcase-head .content-tabs { width: 100%; }
      .moving-shell { margin-inline: calc((100vw - 100%) / -2); padding-inline: 20px; mask-image: none; -webkit-mask-image: none; }
      .faculty-slide { width: min(82vw, 320px); }
      .leader-slide { width: min(88vw, 360px); grid-template-columns: 92px 1fr; }
      .leader-slide img { width: 92px; height: 116px; }
      .admission-slide { width: min(87vw, 350px); }
      .google-review-summary { grid-template-columns: 42px 1fr; }
      .google-review-summary .btn { grid-column: 1 / -1; width: 100%; }
      .google-review-card { width: min(88vw, 370px); }
      .footer-topline { padding: 24px 0; }
      .footer-topline h3 { font-size: 21px; }
      .footer-contact-actions { display: grid; grid-template-columns: 1fr 1fr; }
      .footer-premium-body { padding: 28px 0 22px; }
      .footer-links-grid { display: none; }
      .footer-trust-row { grid-template-columns: 1fr; }
      .mobile-footer-nav { display: block; }
      .footer-bottom { padding: 16px 0 92px; }
      .quick-contact-rail { right: 12px; bottom: 84px; }
      .quick-contact-btn { width: 48px; height: 48px; }
      .back-top { right: 70px; bottom: 88px; }
    }

    @media (max-width: 460px) {
      .faculty-slide { grid-template-columns: 78px 1fr; min-height: 138px; }
      .faculty-slide img { width: 78px; height: 104px; }
      .leader-slide { grid-template-columns: 78px 1fr; }
      .leader-slide img { width: 78px; height: 105px; }
      .admission-slide { grid-template-columns: 76px 1fr; }
      .admission-slide img { width: 76px; height: 100px; }
      .admission-slide dl { grid-template-columns: 1fr; gap: 4px; }
      .google-review-card { min-height: 246px; }
      .footer-contact-actions { grid-template-columns: 1fr; }
      .footer-brand-card { padding: 18px; }
    }


    /* Navigation refinement: compact desktop menu + app-style mobile navigation */
    .brand-copy small {
      color: var(--red-500) !important;
      font-weight: 750;
    }
    .main-nav {
      flex: 1 1 auto;
      justify-content: center;
      min-width: 0;
      gap: 2px;
    }
    .nav-link {
      min-height: 42px;
      padding-inline: 12px;
      white-space: nowrap;
      font-size: 12px;
    }
    .nav-actions { flex: 0 0 auto; }
    .explore-mega { width: 700px; }
    .explore-mega .mega-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .mobile-student-action { display: none; }
    .auth-only { display: none; }

    @media (min-width: 1121px) {
      .navbar { gap: 16px; }
      .brand { min-width: 220px; }
      .desktop-student-login { min-width: 136px; }
    }

    @media (min-width: 921px) and (max-width: 1120px) {
      .main-nav { display: flex; }
      .brand { min-width: auto; }
      .brand-copy { display: none; }
      .nav-link { padding-inline: 8px; font-size: 11px; }
      .desktop-student-login { min-width: 112px; padding-inline: 14px; }
    }

    @media (max-width: 920px) {
      body { padding-bottom: 86px; }
      .navbar { gap: 10px; }
      .nav-actions { margin-left: auto; }
      .desktop-student-login { display: none !important; }
      .mobile-student-action { display: inline-grid; width: 48px; height: 48px; }
      body[data-authenticated="true"] .guest-only { display: none !important; }
      body[data-authenticated="true"] .auth-only { display: inline-grid; }
      .mobile-bottom {
        left: 8px;
        right: 8px;
        bottom: 8px;
        display: block;
        min-height: 70px;
        padding: 6px;
        overflow: hidden;
        border-radius: 7px !important;
      }
      .mobile-bottom::before,
      .mobile-bottom::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        z-index: 2;
        width: 16px;
        pointer-events: none;
      }
      .mobile-bottom::before { left: 0; background: linear-gradient(90deg, rgba(255,255,255,.98), transparent); }
      .mobile-bottom::after { right: 0; background: linear-gradient(-90deg, rgba(255,255,255,.98), transparent); }
      .mobile-bottom-track {
        display: flex;
        gap: 4px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        padding: 1px 8px 2px;
      }
      .mobile-bottom-track::-webkit-scrollbar { display: none; }
      .bottom-link {
        flex: 0 0 66px;
        min-width: 66px;
        height: 56px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        padding: 4px 3px;
        border: 1px solid transparent;
        border-radius: 7px;
        scroll-snap-align: start;
        color: var(--muted);
        background: transparent;
        font-size: 8px;
        line-height: 1;
      }
      .bottom-link svg { width: 20px; height: 20px; }
      .bottom-link.active {
        color: var(--blue-700);
        border-color: var(--blue-100);
        background: var(--blue-50);
      }
      .bottom-link.primary-action {
        color: white;
        border-color: var(--red-600);
        background: linear-gradient(135deg, var(--red-600), var(--red-500));
        box-shadow: 0 8px 18px rgba(198,43,39,.22);
      }
      .bottom-link.apply { width: auto; height: 56px; margin: 0; }
      .footer-menu-marquee {
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-mask-image: none;
        mask-image: none;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
      }
      .footer-menu-marquee::-webkit-scrollbar { display: none; }
      .footer-menu-track,
      .footer-menu-marquee.reverse .footer-menu-track {
        animation: none !important;
        padding-inline: 2px;
      }
      .footer-menu-pill { scroll-snap-align: start; }
    }

    @media (max-width: 380px) {
      .brand-copy strong { max-width: 138px; font-size: 13px; }
      .brand-copy small { letter-spacing: .10em; }
      .brand-logo { width: 46px; height: 46px; }
      .mobile-student-action { width: 44px; height: 44px; }
    }


/* =========================================================
   BFS multi-page design system — preserves approved homepage
   ========================================================= */
:root { --page-max: min(1200px, calc(100% - 40px)); }
body.inner-page { background: #fff; }
.brand-copy small { color: var(--red-500) !important; }
.explore-mega { width: min(980px, calc(100vw - 40px)); right: 0; left: auto; }
.explore-mega .mega-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.explore-mega .mega-card { min-height: 98px; }
.nav-link.active { color: var(--blue-700); background: var(--blue-50); }

.page-hero {
  position: relative; overflow: hidden; padding: 76px 0 68px;
  background:
    radial-gradient(circle at 78% 12%, rgba(223,62,56,.13), transparent 30%),
    radial-gradient(circle at 10% 15%, rgba(79,134,198,.18), transparent 34%),
    linear-gradient(135deg, #f7fbff, #eef5fd 55%, #fff7f6);
  border-bottom: 1px solid var(--line);
}
.page-hero::after { content:""; position:absolute; width:360px; height:360px; border:1px solid rgba(46,111,180,.12); border-radius:50%; right:-90px; top:-140px; box-shadow:0 0 0 34px rgba(46,111,180,.035),0 0 0 74px rgba(223,62,56,.025); }
.page-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr); gap:48px; align-items:center; }
.breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-bottom:20px; color:var(--muted); font-size:12px; }
.breadcrumb a { color:var(--blue-700); }
.breadcrumb svg { width:13px; height:13px; }
.page-hero h1 { max-width:820px; margin-bottom:18px; font-size:clamp(38px,5.1vw,66px); font-weight:650; }
.page-hero .lead { max-width:760px; margin-bottom:26px; font-size:17px; }
.page-actions { display:flex; flex-wrap:wrap; gap:12px; }
.hero-side-card { position:relative; padding:28px; color:#fff; background:linear-gradient(145deg,var(--blue-950),var(--blue-800)); border:1px solid rgba(255,255,255,.12); border-radius:7px; box-shadow:var(--shadow-md); overflow:hidden; }
.hero-side-card::after { content:""; position:absolute; width:170px; height:170px; border-radius:50%; right:-75px; top:-75px; background:rgba(255,255,255,.07); }
.hero-side-card h3 { color:#fff; margin-bottom:12px; font-size:23px; }
.hero-side-card p { color:rgba(255,255,255,.73); font-size:13px; }
.hero-side-list { display:grid; gap:12px; margin-top:20px; }
.hero-side-item { display:flex; align-items:flex-start; gap:11px; padding:12px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.1); border-radius:7px; }
.hero-side-item svg { width:19px; height:19px; flex:0 0 auto; color:#fff; margin-top:2px; }
.hero-side-item strong { display:block; color:#fff; font-size:13px; }
.hero-side-item small { color:rgba(255,255,255,.65); font-size:11px; }

.page-section { position:relative; padding:76px 0; }
.page-section.compact { padding:54px 0; }
.page-section.surface { background:linear-gradient(180deg,#f8fbff,#f1f6fc); }
.page-section.dark { color:#fff; background:linear-gradient(135deg,var(--blue-950),#0e3e77); }
.page-section.dark h2,.page-section.dark h3,.page-section.dark h4 { color:#fff; }
.page-title-row { display:flex; justify-content:space-between; gap:30px; align-items:end; margin-bottom:30px; }
.page-title-row > div { max-width:760px; }
.page-title-row h2 { font-size:clamp(30px,4vw,46px); }
.page-title-row p { margin-bottom:0; color:var(--muted); }
.page-section.dark .page-title-row p { color:rgba(255,255,255,.7); }

.feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.feature-card { position:relative; padding:24px; border:1px solid var(--line); background:#fff; border-radius:7px; box-shadow:var(--shadow-xs); transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
.feature-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-sm); border-color:var(--blue-300); }
.feature-card .icon-box { margin-bottom:18px; }
.feature-card h3 { margin-bottom:8px; font-size:20px; }
.feature-card p { margin-bottom:0; color:var(--muted); font-size:13px; }
.feature-card .card-link { display:inline-flex; align-items:center; gap:7px; margin-top:18px; color:var(--blue-700); font-size:12px; font-weight:650; }
.feature-card .card-link svg { width:15px; height:15px; }

.metric-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.metric-card { padding:22px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.metric-card strong { display:block; color:var(--blue-800); font-size:30px; line-height:1; margin-bottom:8px; }
.metric-card span { color:var(--muted); font-size:12px; }

.toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-bottom:22px; padding:12px; background:#fff; border:1px solid var(--line); border-radius:7px; box-shadow:var(--shadow-xs); }
.toolbar .search-mini { flex:1 1 260px; margin:0; }
.toolbar select,.toolbar input { min-height:44px; border:1px solid var(--line); border-radius:7px; background:#fff; color:var(--text); padding:0 13px; }
.chip-row { display:flex; flex-wrap:wrap; gap:8px; }
.chip { display:inline-flex; align-items:center; gap:6px; min-height:34px; padding:0 11px; border:1px solid var(--line); border-radius:7px; background:#fff; color:var(--muted); font-size:11px; }
.chip.active { color:#fff; background:var(--blue-700); border-color:var(--blue-700); }
.chip svg { width:14px; height:14px; }

.catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.catalog-card { overflow:hidden; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); transition:.22s ease; }
.catalog-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-sm); }
.catalog-cover { min-height:150px; padding:22px; display:flex; justify-content:space-between; align-items:flex-start; color:#fff; background:linear-gradient(135deg,var(--blue-950),var(--blue-600)); }
.catalog-cover.red { background:linear-gradient(135deg,#7e1714,var(--red-500)); }
.catalog-cover .icon-box { color:#fff; background:rgba(255,255,255,.13); }
.catalog-code { font-size:11px; padding:6px 9px; background:rgba(255,255,255,.13); border:1px solid rgba(255,255,255,.14); border-radius:7px; }
.catalog-body { padding:22px; }
.catalog-body h3 { min-height:48px; margin-bottom:9px; font-size:19px; }
.catalog-body p { color:var(--muted); font-size:12px; }
.catalog-meta { display:flex; flex-wrap:wrap; gap:7px; margin:15px 0; }
.catalog-meta span { padding:5px 8px; color:var(--blue-700); background:var(--blue-50); border-radius:7px; font-size:10px; }
.catalog-footer { display:flex; justify-content:space-between; gap:10px; align-items:center; padding-top:15px; border-top:1px solid var(--line); }
.catalog-footer a { color:var(--blue-700); font-size:12px; font-weight:650; }

.split-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.42fr); gap:28px; align-items:start; }
.sticky-card { position:sticky; top:112px; }
.panel-card { padding:26px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.panel-card + .panel-card { margin-top:18px; }
.panel-card h3 { margin-bottom:13px; }
.clean-list { display:grid; gap:10px; padding:0; margin:0; list-style:none; }
.clean-list li { display:flex; align-items:flex-start; gap:10px; color:var(--text); font-size:13px; }
.clean-list svg { width:17px; height:17px; flex:0 0 auto; margin-top:2px; color:var(--success); }

.form-shell { padding:28px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-sm); }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.form-grid .full { grid-column:1/-1; }
.form-field { display:grid; gap:7px; }
.form-field label { color:var(--ink); font-size:12px; font-weight:600; }
.form-field input,.form-field select,.form-field textarea { width:100%; min-height:48px; padding:0 13px; color:var(--text); background:#fff; border:1px solid var(--line); border-radius:7px; outline:0; transition:.2s ease; }
.form-field textarea { min-height:120px; padding-top:12px; resize:vertical; }
.form-field input:focus,.form-field select:focus,.form-field textarea:focus { border-color:var(--blue-500); box-shadow:0 0 0 4px rgba(79,134,198,.12); }
.form-note { display:flex; gap:9px; padding:12px; color:var(--muted); background:var(--blue-50); border:1px solid var(--blue-100); border-radius:7px; font-size:11px; }
.form-note svg { width:17px; height:17px; flex:0 0 auto; color:var(--blue-700); }
.stepper { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin-bottom:22px; }
.step { padding:12px; border:1px solid var(--line); border-radius:7px; background:#fff; }
.step strong { display:block; color:var(--blue-700); font-size:11px; }
.step span { color:var(--muted); font-size:10px; }
.step.active { color:#fff; background:var(--blue-700); border-color:var(--blue-700); }
.step.active strong,.step.active span { color:#fff; }

.service-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.service-tile { min-height:170px; padding:22px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.service-tile h3 { margin:13px 0 7px; font-size:17px; }
.service-tile p { color:var(--muted); font-size:11px; }
.service-tile a { color:var(--blue-700); font-size:11px; font-weight:650; }

.data-table-wrap { overflow:auto; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.data-table { width:100%; min-width:760px; border-collapse:collapse; }
.data-table th,.data-table td { padding:14px 16px; border-bottom:1px solid var(--line); text-align:left; font-size:12px; }
.data-table th { color:var(--blue-900); background:var(--blue-50); font-size:10px; letter-spacing:.06em; text-transform:uppercase; }
.data-table tr:last-child td { border-bottom:0; }
.status { display:inline-flex; align-items:center; gap:6px; padding:5px 8px; border-radius:7px; font-size:10px; background:#eaf8f3; color:#117455; }
.status.warn { background:#fff4dd; color:#9a630d; }
.status.red { background:var(--red-100); color:var(--red-700); }

.timeline { position:relative; display:grid; gap:16px; }
.timeline::before { content:""; position:absolute; left:19px; top:20px; bottom:20px; width:2px; background:var(--line); }
.timeline-item { position:relative; display:grid; grid-template-columns:40px 1fr; gap:15px; }
.timeline-dot { position:relative; z-index:1; width:40px; height:40px; display:grid; place-items:center; color:#fff; background:var(--blue-700); border-radius:7px; box-shadow:0 0 0 6px #fff; }
.timeline-dot svg { width:18px; height:18px; }
.timeline-copy { padding:18px; border:1px solid var(--line); border-radius:7px; background:#fff; }
.timeline-copy h3 { margin-bottom:6px; font-size:17px; }
.timeline-copy p { margin:0; color:var(--muted); font-size:12px; }

.notice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.notice-card { padding:20px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.notice-top { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; margin-bottom:12px; }
.notice-type { display:inline-flex; align-items:center; gap:6px; color:var(--blue-700); font-size:10px; font-weight:650; text-transform:uppercase; letter-spacing:.06em; }
.notice-type svg { width:15px; height:15px; }
.notice-date { color:var(--muted); font-size:10px; }
.notice-card h3 { font-size:18px; margin-bottom:8px; }
.notice-card p { color:var(--muted); font-size:12px; }
.notice-files { display:flex; flex-wrap:wrap; gap:7px; margin-top:14px; }
.notice-files a { display:inline-flex; align-items:center; gap:6px; padding:6px 9px; color:var(--blue-700); background:var(--blue-50); border-radius:7px; font-size:10px; }
.notice-files svg { width:13px; height:13px; }

.profile-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.profile-card { overflow:hidden; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.profile-card img { width:100%; aspect-ratio:1/1; object-fit:cover; background:var(--blue-50); }
.profile-copy { padding:18px; }
.profile-copy small { display:block; color:var(--blue-700); font-size:10px; font-weight:650; text-transform:uppercase; letter-spacing:.05em; }
.profile-copy h3 { margin:5px 0 7px; font-size:18px; }
.profile-copy p { margin:0; color:var(--muted); font-size:11px; }

.review-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.review-card-page { padding:22px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.review-person { display:flex; gap:12px; align-items:center; }
.review-person img { width:48px; height:48px; border-radius:7px; object-fit:cover; }
.review-person h3 { margin:0; font-size:16px; }
.review-person small { color:var(--muted); font-size:10px; }
.review-stars { display:flex; gap:2px; margin:16px 0 10px; color:#f4b000; }
.review-stars svg { width:16px; height:16px; }
.review-card-page p { color:var(--text); font-size:12px; }

.gallery-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); grid-auto-rows:170px; gap:12px; }
.gallery-item { position:relative; overflow:hidden; border:1px solid var(--line); border-radius:7px; background:linear-gradient(145deg,var(--blue-100),#fff); }
.gallery-item.tall { grid-row:span 2; }
.gallery-item.wide { grid-column:span 2; }
.gallery-art { position:absolute; inset:0; display:grid; place-items:center; color:var(--blue-800); background:linear-gradient(135deg,rgba(79,134,198,.22),rgba(223,62,56,.12)); }
.gallery-art svg { width:52px; height:52px; }
.gallery-caption { position:absolute; left:12px; right:12px; bottom:12px; padding:10px; color:#fff; background:rgba(7,26,51,.78); border-radius:7px; backdrop-filter:blur(8px); }
.gallery-caption strong { display:block; font-size:12px; }
.gallery-caption small { color:rgba(255,255,255,.7); font-size:9px; }

.blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.blog-card { overflow:hidden; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.blog-cover { min-height:170px; display:grid; place-items:center; color:#fff; background:linear-gradient(135deg,var(--blue-900),var(--blue-500)); }
.blog-cover.red { background:linear-gradient(135deg,var(--red-700),var(--red-500)); }
.blog-cover svg { width:50px; height:50px; }
.blog-copy { padding:20px; }
.blog-meta { display:flex; justify-content:space-between; gap:10px; color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.05em; }
.blog-copy h3 { margin:10px 0 8px; font-size:18px; }
.blog-copy p { color:var(--muted); font-size:11px; }

.article-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:28px; }
.article-body { padding:30px; border:1px solid var(--line); border-radius:7px; background:#fff; }
.article-body h2 { margin-top:28px; font-size:28px; }
.article-body p,.article-body li { color:var(--text); font-size:14px; }
.article-body blockquote { margin:22px 0; padding:18px 20px; color:var(--blue-900); background:var(--blue-50); border-left:4px solid var(--blue-600); border-radius:7px; }

.logo-marquee { overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); }
.logo-track { width:max-content; display:flex; gap:12px; animation:pageTicker 24s linear infinite; }
.logo-marquee:hover .logo-track { animation-play-state:paused; }
.logo-pill { min-width:170px; padding:15px; display:flex; align-items:center; gap:10px; border:1px solid var(--line); border-radius:7px; background:#fff; }
.logo-pill .icon-box { width:38px; height:38px; }
.logo-pill strong { font-size:12px; }
@keyframes pageTicker { to { transform:translateX(-50%); } }

.page-tabs { display:flex; gap:7px; overflow:auto; padding-bottom:5px; margin-bottom:20px; scrollbar-width:none; }
.page-tabs::-webkit-scrollbar { display:none; }
.page-tab { flex:0 0 auto; min-height:40px; padding:0 14px; border:1px solid var(--line); border-radius:7px; color:var(--muted); background:#fff; font-size:11px; }
.page-tab.active { color:#fff; background:var(--blue-700); border-color:var(--blue-700); }
.tab-panel-page { display:none; }
.tab-panel-page.active { display:block; animation:tabReveal .25s ease; }

.demo-toast { position:fixed; z-index:5000; left:50%; bottom:92px; transform:translate(-50%,20px); opacity:0; pointer-events:none; max-width:min(440px,calc(100vw - 28px)); padding:13px 16px; color:#fff; background:var(--blue-950); border:1px solid rgba(255,255,255,.13); border-radius:7px; box-shadow:var(--shadow-md); font-size:12px; transition:.25s ease; }
.demo-toast.show { opacity:1; transform:translate(-50%,0); }

.empty-state { padding:42px 24px; text-align:center; border:1px dashed var(--blue-300); border-radius:7px; background:var(--blue-50); }
.empty-state .icon-box { margin:0 auto 15px; }
.empty-state h3 { margin-bottom:7px; }
.empty-state p { max-width:520px; margin:0 auto; color:var(--muted); font-size:12px; }

@media (max-width:1100px) {
  .explore-mega .mega-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .profile-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:900px) {
  .page-hero-grid,.split-layout,.article-layout { grid-template-columns:1fr; }
  .sticky-card { position:static; }
  .feature-grid,.catalog-grid,.review-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .profile-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:720px) {
  .page-hero { padding:46px 0 42px; }
  .page-hero-grid { gap:24px; }
  .page-hero h1 { font-size:clamp(34px,11vw,50px); }
  .page-section { padding:54px 0; }
  .page-title-row { display:block; }
  .page-title-row .btn { margin-top:14px; }
  .feature-grid,.catalog-grid,.review-grid,.blog-grid,.notice-grid { grid-template-columns:1fr; }
  .form-grid { grid-template-columns:1fr; }
  .form-grid .full { grid-column:auto; }
  .stepper { grid-template-columns:repeat(2,1fr); }
  .profile-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .service-grid { grid-template-columns:1fr 1fr; gap:10px; }
  .service-tile { min-height:150px; padding:17px; }
  .gallery-grid { grid-auto-rows:140px; }
  .gallery-item.wide { grid-column:span 2; }
  .hero-side-card { padding:22px; }
  .page-actions .btn { flex:1 1 160px; }
}
@media (max-width:480px) {
  :root { --page-max:min(100% - 24px,1200px); }
  .container { width:min(100% - 24px,1200px); }
  .page-hero h1 { font-size:36px; }
  .profile-grid,.service-grid { grid-template-columns:1fr; }
  .metric-grid { gap:9px; }
  .metric-card { padding:16px; }
  .metric-card strong { font-size:24px; }
  .stepper { grid-template-columns:1fr 1fr; }
  .form-shell,.panel-card { padding:19px; }
  .gallery-grid { grid-template-columns:1fr; grid-auto-rows:180px; }
  .gallery-item.wide { grid-column:auto; }
  .gallery-item.tall { grid-row:auto; }
}


/* BFS PREMIUM V2 POLISH */
:root {
  --premium-line: rgba(31,89,150,.14);
  --premium-glow: 0 16px 44px rgba(7,26,51,.10);
  --premium-glow-hover: 0 24px 58px rgba(7,26,51,.15);
}
body { font-size:15px; line-height:1.58; }
.section { padding:80px 0; }
.section-sm { padding:48px 0; }
h1 { font-size:clamp(42px,5.3vw,68px); font-weight:680; letter-spacing:-.048em; }
h2 { font-size:clamp(30px,3.8vw,46px); font-weight:650; letter-spacing:-.038em; }
h3 { font-size:20px; font-weight:650; }
h4 { font-weight:650; }
.lead { font-size:17px; line-height:1.62; }
.section-copy { font-size:14px; line-height:1.7; }
.eyebrow { font-size:11px; font-weight:750; letter-spacing:.12em; }
.section-head { margin-bottom:34px; align-items:center; }
.section-head.centered { margin-bottom:38px; }

.btn {
  min-height:46px;
  padding:0 18px;
  border-radius:7px;
  font-size:13px;
  font-weight:680;
  letter-spacing:.005em;
  box-shadow:0 9px 22px rgba(7,26,51,.09);
}
.btn-sm { min-height:38px; padding:0 14px; border-radius:7px; font-size:12px; }
.btn svg { width:17px; height:17px; }
.btn-primary,.btn-red { position:relative; overflow:hidden; }
.btn-primary::after,.btn-red::after { content:""; position:absolute; inset:0; background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.18),transparent 80%); transform:translateX(-120%); transition:.5s ease; }
.btn-primary:hover::after,.btn-red:hover::after { transform:translateX(120%); }
.btn:active { transform:translateY(0) scale(.985); }
.icon-box,.mini-icon,.quick-action,.filter-btn,.form-tab,.content-tab,.page-tab,.chip,.status,.status-pill { border-radius:7px !important; }

/* Richer but still restrained inner pages */
body.inner-page .page-hero { padding:58px 0 52px; }
body.inner-page .page-hero::before { content:""; position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(31,89,150,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(31,89,150,.035) 1px,transparent 1px); background-size:36px 36px; mask-image:linear-gradient(to bottom,#000,transparent 82%); }
body.inner-page .page-hero-grid { gap:34px; }
body.inner-page .page-hero h1 { font-size:clamp(34px,4.4vw,56px); line-height:1.05; font-weight:660; max-width:760px; }
body.inner-page .page-hero .lead { font-size:15px; max-width:690px; }
body.inner-page .breadcrumb { margin-bottom:15px; font-size:11px; }
body.inner-page .hero-side-card { padding:24px; box-shadow:0 26px 65px rgba(7,26,51,.20); }
body.inner-page .hero-side-card h3 { font-size:20px; }
body.inner-page .hero-side-item { padding:11px; }
body.inner-page .page-section { padding:64px 0; }
body.inner-page .page-section.compact { padding:44px 0; }
body.inner-page .page-title-row { margin-bottom:26px; align-items:center; }
body.inner-page .page-title-row h2 { font-size:clamp(27px,3.2vw,40px); line-height:1.12; }
body.inner-page .page-title-row p { max-width:720px; margin-bottom:0; color:var(--muted); font-size:13px; }
body.inner-page .page-section.surface { background:linear-gradient(180deg,#f9fcff 0%,#f1f6fc 100%); border-block:1px solid rgba(31,89,150,.06); }
body.inner-page .page-section:nth-of-type(even):not(.surface):not(.dark) { background:linear-gradient(180deg,#fff,#fbfdff); }

.feature-card,.service-tile,.catalog-card,.metric-card,.panel-card,.form-shell,.notice-card,.profile-card,.review-card-page,.blog-card,.article-body,.timeline-copy,.gallery-item,.logo-pill {
  border-color:var(--premium-line);
  box-shadow:0 10px 28px rgba(7,26,51,.065);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.feature-card:hover,.service-tile:hover,.catalog-card:hover,.metric-card:hover,.notice-card:hover,.profile-card:hover,.review-card-page:hover,.blog-card:hover,.logo-pill:hover {
  transform:translateY(-4px);
  border-color:rgba(46,111,180,.30);
  box-shadow:var(--premium-glow-hover);
}
.feature-card,.service-tile,.review-card-page,.notice-card { position:relative; overflow:hidden; }
.feature-card::before,.service-tile::before,.review-card-page::before,.notice-card::before { content:""; position:absolute; left:0; top:0; width:100%; height:3px; background:linear-gradient(90deg,var(--blue-600),var(--red-500)); opacity:.78; }
.feature-card { padding:22px; }
.feature-card h3 { font-size:18px; }
.feature-card p { font-size:12px; line-height:1.65; }
.service-tile { min-height:178px; padding:21px; }
.service-tile h3 { font-size:16px; }
.service-tile p { font-size:11px; }
.catalog-body { padding:19px; }
.catalog-body h3 { min-height:auto; font-size:17px; }
.catalog-footer { margin-top:14px; }
.metric-card { padding:20px; }
.metric-card strong { font-size:27px; }
.form-shell,.panel-card,.article-body { padding:26px; }
.form-field input,.form-field select,.form-field textarea,.field input,.field select { min-height:44px; border-radius:7px; }
.form-field textarea { min-height:116px; }
.data-table th,.data-table td { padding:12px 14px; }

/* Homepage additions and compact premium rhythm */
.home-impact { position:relative; z-index:4; margin-top:-14px; padding-top:0; padding-bottom:30px; background:#fff; }
.home-impact-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.home-impact-card { display:flex; align-items:center; gap:12px; min-height:96px; padding:15px; border:1px solid var(--premium-line); border-radius:7px; background:linear-gradient(145deg,#fff,#f7fbff); box-shadow:0 12px 30px rgba(7,26,51,.07); transition:.25s ease; }
.home-impact-card:hover { transform:translateY(-4px); border-color:rgba(46,111,180,.32); box-shadow:var(--premium-glow); }
.home-impact-card strong { display:block; margin-bottom:3px; color:var(--ink); font-size:13px; font-weight:680; line-height:1.35; }
.home-impact-card small { display:block; color:var(--muted); font-size:10px; line-height:1.5; }
.home-resource-section { background:linear-gradient(180deg,#fff,#f4f8fd); border-block:1px solid rgba(31,89,150,.07); }
.home-resource-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.home-resource-card { position:relative; min-height:270px; display:flex; flex-direction:column; align-items:flex-start; padding:22px; border:1px solid var(--premium-line); border-radius:7px; background:rgba(255,255,255,.92); box-shadow:0 14px 36px rgba(7,26,51,.075); overflow:hidden; transition:.25s ease; }
.home-resource-card::after { content:""; position:absolute; width:120px; height:120px; right:-55px; bottom:-60px; border-radius:50%; background:rgba(79,134,198,.09); }
.home-resource-card:hover { transform:translateY(-5px); box-shadow:var(--premium-glow-hover); border-color:rgba(46,111,180,.34); }
.home-resource-card h3 { margin:18px 0 9px; font-size:18px; }
.home-resource-card p { flex:1; color:var(--muted); font-size:12px; line-height:1.7; }
.resource-label { display:inline-flex; min-height:26px; align-items:center; padding:0 9px; border-radius:7px; color:var(--blue-700); background:var(--blue-50); font-size:9px; font-weight:750; letter-spacing:.06em; text-transform:uppercase; }
.resource-label.red-label { color:var(--red-700); background:var(--red-100); }
.resource-link { display:inline-flex; align-items:center; gap:7px; color:var(--blue-700); font-size:11px; font-weight:700; }
.resource-link svg { width:14px; height:14px; }

/* More consistent approved homepage sizing */
.hero { padding-top:72px; padding-bottom:70px; }
.hero h1 { max-width:700px; font-size:clamp(42px,5.5vw,70px); }
.hero .lead { max-width:620px; font-size:16px; }
.course-card,.hub-shell,.verify-shell,.map-card,.network-card,.job-card,.moving-shell,.faq-item,.cta-card,.footer-brand-card { border-radius:7px !important; }
.course-body h3,.job-card h3 { font-size:17px; }
.process-step { padding:21px; border-radius:7px; }
.process-step h3 { font-size:17px; }
.verify-shell { padding:34px; }
.verify-copy h2 { font-size:clamp(29px,3.6vw,43px); }
.showcase-section { padding:72px 0; }
.showcase-head h2 { font-size:clamp(29px,3.6vw,43px); }
.cta-card { padding:34px; }
.cta-card h2 { font-size:clamp(26px,3.4vw,40px); }

/* Mobile app navigation: light surface requested */
@media (max-width:900px) {
  .home-impact-grid,.home-resource-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:720px) {
  body { padding-bottom:78px; }
  .section { padding:58px 0; }
  .section-sm { padding:36px 0; }
  h1 { font-size:clamp(34px,10vw,48px); }
  h2 { font-size:clamp(27px,8.5vw,38px); }
  h3 { font-size:18px; }
  .section-head { display:block; margin-bottom:26px; }
  .section-head > .btn { margin-top:14px; }
  .hero { padding-top:44px; padding-bottom:48px; }
  .hero h1 { font-size:clamp(38px,12vw,54px); }
  .hero .lead { font-size:14px; }
  .hero-actions { gap:9px; }
  .hero-actions .btn { flex:1 1 145px; }
  .home-impact { margin-top:0; padding-top:18px; }
  .home-impact-grid { grid-template-columns:1fr 1fr; gap:9px; }
  .home-impact-card { min-height:88px; padding:12px; align-items:flex-start; }
  .home-impact-card .icon-box { width:38px; height:38px; }
  .home-impact-card strong { font-size:11px; }
  .home-impact-card small { font-size:9px; }
  .home-resource-grid { grid-template-columns:1fr; }
  .home-resource-card { min-height:220px; }
  body.inner-page .page-hero { padding:38px 0 34px; }
  body.inner-page .page-hero h1 { font-size:clamp(31px,9.5vw,42px); }
  body.inner-page .page-hero .lead { font-size:14px; }
  body.inner-page .page-section { padding:48px 0; }
  body.inner-page .page-title-row h2 { font-size:clamp(25px,7.7vw,34px); }
  .page-actions { gap:9px; }
  .page-actions .btn { flex:1 1 140px; min-height:43px; }
  .feature-card,.service-tile,.panel-card,.form-shell,.notice-card,.review-card-page { padding:18px; }
  .mobile-bottom {
    background:linear-gradient(180deg,rgba(250,253,255,.98),rgba(235,244,253,.98)) !important;
    border-top:1px solid rgba(31,89,150,.16) !important;
    box-shadow:0 -14px 36px rgba(7,26,51,.12) !important;
    backdrop-filter:blur(18px);
  }
  .mobile-bottom::before { background:linear-gradient(90deg,#f3f8fd,transparent) !important; }
  .mobile-bottom::after { background:linear-gradient(-90deg,#f3f8fd,transparent) !important; }
  .bottom-link { color:#50677f; border-radius:7px; }
  .bottom-link:hover,.bottom-link.active { color:var(--blue-800); background:#dfeefa; }
  .bottom-link.primary-action { color:white; background:linear-gradient(135deg,var(--red-600),var(--red-500)); box-shadow:0 9px 20px rgba(198,43,39,.24); }
}
@media (max-width:480px) {
  .home-impact-grid { grid-template-columns:1fr; }
  .home-impact-card { min-height:76px; align-items:center; }
  .btn { min-height:43px; padding-inline:15px; font-size:12px; }
  .btn-sm { min-height:36px; }
  .cta-card { padding:24px 18px; }
  .verify-shell { padding:20px; }
}

/* Guest/login icon visibility correction */
@media (max-width:900px) {
  body:not([data-authenticated="true"]) .auth-only { display:none !important; }
  body[data-authenticated="true"] .guest-only { display:none !important; }
  body[data-authenticated="true"] .auth-only { display:inline-grid !important; }
}

/* ===== FINAL PREMIUM REFINEMENT PATCH ===== */
:root {
  --radius-sm: 7px;
  --radius-md: 7px;
  --radius-lg: 7px;
  --radius-xl: 7px;
}

body {
  font-size: 15px;
  line-height: 1.6;
}

h1 { font-size: clamp(2.2rem, 4.8vw, 4.35rem); line-height: 1.08; }
h2 { font-size: clamp(1.75rem, 3vw, 2.6rem); line-height: 1.15; }
h3 { font-size: clamp(1.08rem, 1.8vw, 1.35rem); }
p, li, .lead, .supporting-copy { font-size: .98rem; }

.main-header {
  backdrop-filter: blur(12px);
  box-shadow: 0 12px 34px rgba(10, 33, 72, 0.07);
}

.main-nav {
  gap: 10px;
  align-items: center;
}

.nav-link {
  padding: 12px 16px;
  font-size: 0.98rem;
  font-weight: 700;
  border-radius: 7px;
}

.nav-link.active,
.nav-link:hover {
  background: rgba(28, 93, 170, 0.08);
  color: var(--navy);
}

.nav-item { position: relative; }
.nav-item .mega {
  border-radius: 7px;
  border: 1px solid rgba(30, 64, 124, 0.08);
  box-shadow: 0 24px 54px rgba(16, 30, 64, 0.13);
  padding: 14px;
}
.nav-item:hover .mega,
.nav-item:focus-within .mega { opacity: 1; visibility: visible; transform: translateY(10px); }
.mega-grid { gap: 12px; }
.mega-card {
  border-radius: 7px;
  padding: 14px;
  min-height: 94px;
}
.mega-card strong { font-size: .98rem; }
.mega-card small { font-size: .84rem; line-height: 1.45; }

.btn {
  min-height: 46px;
  padding: 12px 20px;
  border-radius: 7px;
  font-size: .96rem;
  font-weight: 700;
  letter-spacing: .01em;
  box-shadow: 0 10px 22px rgba(16, 30, 64, 0.07);
}
.btn-sm { min-height: 40px; padding: 10px 16px; }
.btn:hover { transform: translateY(-1px); }

.input,
select,
textarea,
.form-control,
.form-input {
  min-height: 48px;
  border-radius: 7px !important;
  font-size: 0.98rem;
  padding: 12px 14px;
}
textarea { min-height: 120px; }
label { font-size: 0.95rem; font-weight: 700; color: var(--navy); }
.required-label::after {
  content: ' *';
  color: #dd2f2f;
  font-weight: 800;
}

.page-tabs {
  gap: 10px;
  flex-wrap: wrap;
}
.page-tab,
.content-tab,
.toggle-btn,
.filter-btn,
.filter-chip {
  border-radius: 7px;
  min-height: 42px;
  padding: 10px 15px;
  font-size: .93rem;
}
.page-tab.active,
.content-tab.active,
.filter-btn.active,
.toggle-btn.active {
  box-shadow: 0 10px 24px rgba(19, 52, 108, 0.12);
}
.tab-panel-page,
.people-panel,
.story-panel { display: none; }
.tab-panel-page.active,
.people-panel.active,
.story-panel.active { display: block; }

.toolbar,
.catalog-toolbar,
.course-toolbar,
.filter-toolbar {
  border-radius: 7px;
  background: #fff;
  border: 1px solid rgba(26, 53, 101, 0.1);
  box-shadow: 0 16px 40px rgba(18, 37, 74, 0.07);
  padding: 14px;
}
.search-field,
.search-wrap,
.toolbar-search {
  background: linear-gradient(180deg, #fff, #fbfdff);
  border: 1px solid rgba(37, 88, 165, 0.14);
  border-radius: 7px;
  padding: 4px 10px 4px 14px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}
.search-field input,
.search-wrap input,
.toolbar-search input {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
.select-filter {
  background: linear-gradient(180deg, #fff, #fbfcff);
  border: 1px solid rgba(37, 88, 165, 0.14);
}

.course-card,
.feature-card,
.service-tile,
.notice-card,
.metric-card,
.team-card,
.story-card,
.review-card,
.admission-slide,
.people-card,
.home-resource-card,
.home-impact-card,
.leader-slide,
.faculty-slide,
.home-program-card {
  border-radius: 7px !important;
  box-shadow: 0 18px 42px rgba(15, 35, 72, 0.07);
  border: 1px solid rgba(27, 64, 120, 0.08);
}

.course-card h3,
.feature-card h3,
.service-tile h3,
.notice-card h3,
.review-card h3,
.story-card h3,
.people-card h3 { line-height: 1.2; }

.service-tile {
  padding: 24px;
  overflow: hidden;
}
.service-tile a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
  font-weight: 700;
}
.service-tile a svg {
  width: 18px;
  height: 18px;
  padding: 6px;
  border-radius: 999px;
  background: rgba(28, 93, 170, 0.10);
}

.dashboard-showcase,
.verify-shell,
.split-layout,
.panel-card,
.hero-side-card,
.sticky-card .panel-card {
  border-radius: 7px;
}
.dashboard-showcase {
  gap: 18px;
  align-items: flex-start;
}
.dash-sidebar {
  display: grid;
  gap: 9px;
  min-width: 215px;
}
.dash-sidebar strong {
  display: block;
  font-size: 1.05rem;
  margin-bottom: 8px;
  padding: 0 0 10px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}
.dash-sidebar a {
  display: block;
  padding: 11px 14px;
  border-radius: 7px;
  line-height: 1.4;
}
.notice-grid { gap: 16px; }
.notice-card { padding: 22px; }

.india-map-shell {
  position: relative;
  min-height: 520px;
  border-radius: 7px;
  overflow: hidden;
  background:
    linear-gradient(rgba(35, 88, 166, 0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(35, 88, 166, 0.07) 1px, transparent 1px),
    linear-gradient(180deg, rgba(241, 247, 255, 0.95), rgba(233, 241, 252, 0.96));
  background-size: 36px 36px, 36px 36px, auto;
}
.india-map-bg {
  position: absolute;
  inset: 28px 18px 44px 18px;
  background: url('../assets/india-map.svg') center / contain no-repeat;
}
.map-card { position: relative; padding: 0; overflow: hidden; }
.map-caption {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  padding: 16px 18px;
  background: rgba(255,255,255,0.88);
  border-top: 1px solid rgba(21, 56, 115, 0.08);
}
.map-caption strong { color: var(--navy); }
.map-caption span { font-size: .88rem; color: var(--muted); max-width: 420px; }
.map-pin {
  position: absolute;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.pin-dot {
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: #e0463d;
  border: 4px solid rgba(255,255,255,.96);
  box-shadow: 0 0 0 10px rgba(224, 70, 61, 0.14);
}
.pin-label {
  background: rgba(255,255,255,0.96);
  border: 1px solid rgba(27, 64, 120, 0.08);
  border-radius: 999px;
  padding: 7px 12px;
  font-size: .86rem;
  font-weight: 700;
  color: var(--navy);
  box-shadow: 0 8px 20px rgba(19,52,108,.08);
}
.map-pin.north { top: 18%; left: 41%; }
.map-pin.west { top: 28%; left: 51%; }
.map-pin.east { top: 45%; left: 44%; }
.map-pin.south { top: 59%; left: 54%; }

.leader-slide,
.faculty-slide {
  padding: 24px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
}
.leader-slide .leader-avatar,
.faculty-slide .faculty-avatar {
  width: 82px;
  height: 82px;
  border-radius: 7px;
}
.leader-slide h3,
.faculty-slide h3 { margin-bottom: 6px; }
.leader-slide p,
.faculty-slide p { margin-bottom: 10px; }

.story-card,
.review-card {
  padding: 22px;
  min-height: 100%;
}
.review-card .rating,
.story-card .rating { color: #f3a51e; }
.story-panel .split-layout,
.content-split { gap: 22px; }

.admission-track,
.footer-menu-track { gap: 14px; }
.admission-slide {
  min-width: 300px;
  max-width: 300px;
  padding: 16px;
}
.admission-slide .admission-mini {
  width: 92px;
  min-width: 92px;
  height: 92px;
  border-radius: 7px;
}
.admission-slide .admission-copy {
  display: grid;
  gap: 4px;
}
.admission-slide small { font-size: .74rem; }

.verify-shell {
  gap: 24px;
  align-items: stretch;
}
.verify-tabs,
.page-tabs.verify-tabs {
  gap: 10px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.verify-tabs .page-tab { width: 100%; justify-content: center; }
.verify-form-card,
.verify-copy { min-width: 0; }

.mobile-bottom {
  background: rgba(255,255,255,0.96);
  backdrop-filter: blur(14px);
}
.mobile-bottom .bottom-link {
  border-radius: 7px;
  min-width: 76px;
  padding: 8px 10px;
}
.mobile-bottom .bottom-link.active {
  background: #eff5ff;
  color: var(--navy);
}
.mobile-bottom .bottom-link.primary-action {
  background: #eef3ff;
  color: var(--navy);
}
.mobile-footer-nav,
.footer-menu-pill {
  border-radius: 7px;
}
.footer-menu-pill {
  background: #f6f9ff;
  border: 1px solid rgba(34, 84, 165, 0.12);
}

@media (max-width: 1100px) {
  .main-nav { gap: 6px; }
  .nav-link { padding: 10px 12px; font-size: .92rem; }
  .map-caption { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 900px) {
  h1 { font-size: clamp(2rem, 7vw, 3rem); }
  .verify-tabs,
  .page-tabs.verify-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dash-sidebar { min-width: 100%; }
  .india-map-shell { min-height: 420px; }
}

@media (max-width: 640px) {
  body { font-size: 14px; }
  .verify-tabs,
  .page-tabs.verify-tabs { grid-template-columns: 1fr; }
  .admission-slide { min-width: 248px; max-width: 248px; }
  .map-pin .pin-label { padding: 6px 10px; font-size: .78rem; }
  .india-map-shell { min-height: 360px; }
  .map-pin.north { top: 18%; left: 34%; }
  .map-pin.west { top: 29%; left: 49%; }
  .map-pin.east { top: 46%; left: 39%; }
  .map-pin.south { top: 60%; left: 50%; }
}

/* ================================================================
   BFS FINAL 2026 — NAVIGATION, STUDENT DASHBOARD & FLOW REFINEMENT
   ================================================================ */
:root {
  --bfs-radius: 7px;
  --bfs-navy: #071a33;
  --bfs-blue: #235fa8;
  --bfs-blue-2: #4f86c6;
  --bfs-blue-soft: #eef5ff;
  --bfs-red: #df3e38;
  --bfs-line: #dce6f1;
}

/* Top bar and desktop navigation */
.bfs-topbar { background: linear-gradient(90deg, #071a33, #123e73); }
.bfs-topbar-inner { min-height: 38px !important; gap: 20px; }
.bfs-topbar-left,
.bfs-topbar-right { display: flex; align-items: center; gap: 14px; min-width: 0; }
.bfs-topbar-left a { display: inline-flex; align-items: center; gap: 6px; }
.bfs-topbar svg { width: 14px; height: 14px; }
.topbar-separator { opacity: .45; }

.bfs-header { background: rgba(255,255,255,.97) !important; }
.bfs-navbar { min-height: 82px !important; gap: 20px !important; }
.bfs-brand { min-width: 238px; flex: 0 0 auto; }
.bfs-brand .brand-copy small { color: var(--bfs-red) !important; }

.bfs-main-nav {
  display: flex !important;
  flex: 1 1 auto;
  justify-content: center;
  align-items: center;
  gap: 4px !important;
  min-width: 0;
}
.bfs-nav-item { position: relative; }
.bfs-nav-link {
  min-height: 44px !important;
  padding: 0 11px !important;
  border-radius: var(--bfs-radius) !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  white-space: nowrap;
}
.bfs-nav-link svg { width: 13px; height: 13px; }
.bfs-nav-link:hover,
.bfs-nav-link.active { color: var(--bfs-blue) !important; background: var(--bfs-blue-soft) !important; }
.bfs-nav-actions { flex: 0 0 auto; }

.bfs-mega {
  top: calc(100% + 12px) !important;
  left: 50% !important;
  width: 610px !important;
  padding: 14px !important;
  border-radius: var(--bfs-radius) !important;
  border: 1px solid rgba(18,62,115,.12) !important;
  background: #fff !important;
  box-shadow: 0 28px 72px rgba(7,26,51,.16) !important;
  transform: translate(-50%, 10px) !important;
}
.bfs-mega-wide { width: 760px !important; }
.bfs-mega-right { left: auto !important; right: 0 !important; transform: translate(0, 10px) !important; }
.bfs-nav-item:hover > .bfs-mega,
.bfs-nav-item:focus-within > .bfs-mega {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate(-50%, 0) !important;
}
.bfs-nav-item:hover > .bfs-mega-right,
.bfs-nav-item:focus-within > .bfs-mega-right { transform: translate(0,0) !important; }
.bfs-mega .mega-grid { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 8px !important; }
.bfs-mega-wide .mega-grid { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
.bfs-mega-card {
  min-height: 86px !important;
  padding: 12px !important;
  border-radius: var(--bfs-radius) !important;
  align-items: flex-start !important;
}
.bfs-mega-card strong { font-size: 13px !important; line-height: 1.25; }
.bfs-mega-card small { font-size: 11px !important; line-height: 1.4; }
.bfs-mega-card .icon-box { width: 38px !important; height: 38px !important; border-radius: var(--bfs-radius) !important; }

/* Student dashboard preview: no oversized white navigation panel */
.student-preview {
  display: grid;
  grid-template-columns: 230px minmax(0,1fr);
  min-height: 560px;
  overflow: hidden;
  border-radius: var(--bfs-radius);
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(145deg,#071a33,#164a80);
  box-shadow: 0 28px 74px rgba(7,26,51,.18);
}
.student-preview-sidebar {
  padding: 22px 16px;
  background: linear-gradient(180deg,#071a33,#0c3367);
  color: #fff;
  border-right: 1px solid rgba(255,255,255,.10);
}
.student-preview-brand { display: flex; align-items: center; gap: 11px; padding: 5px 4px 18px; border-bottom: 1px solid rgba(255,255,255,.12); }
.student-preview-brand .icon-box { width: 42px; height: 42px; border-radius: var(--bfs-radius); }
.student-preview-brand strong { display:block; color:#fff; font-size:15px; }
.student-preview-brand small { color:rgba(255,255,255,.58); font-size:11px; }
.student-preview-nav { display: grid; gap: 7px; margin-top: 18px; }
.student-preview-nav button {
  width: 100%;
  min-height: 44px;
  padding: 0 13px;
  border: 1px solid transparent;
  border-radius: var(--bfs-radius);
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(255,255,255,.76);
  background: transparent;
  text-align: left;
  font-weight: 700;
}
.student-preview-nav button svg { width: 17px; height: 17px; }
.student-preview-nav button:hover,
.student-preview-nav button.active { color:#fff; background:rgba(255,255,255,.11); border-color:rgba(255,255,255,.10); }
.student-preview-main { min-width: 0; padding: 24px; background: #f7faff; }
.student-preview-top { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding-bottom:18px; border-bottom:1px solid var(--bfs-line); }
.student-preview-top h3 { margin: 2px 0 5px; }
.student-preview-top p { margin:0; color:var(--muted); font-size:12px; }
.student-preview-panel { display:none; padding-top:18px; }
.student-preview-panel.active { display:block; }
.student-metrics { margin-bottom:16px; }
.student-preview .metric-card { min-height:112px; }
.student-preview .notice-card { min-height:210px; }
.student-action-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:18px; }
.student-action-grid a { min-height:68px; padding:14px; border:1px solid var(--bfs-line); border-radius:var(--bfs-radius); background:#fff; display:flex; align-items:center; gap:10px; color:var(--bfs-navy); font-weight:750; }
.student-action-grid a:hover { border-color:#9fc1e8; box-shadow:0 12px 28px rgba(7,26,51,.08); }
.student-action-grid svg { width:20px; height:20px; color:var(--bfs-blue); }
.progress-line { height:9px; margin:18px 0 8px; border-radius:999px; overflow:hidden; background:#e5edf7; }
.progress-line span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--bfs-blue),var(--bfs-red)); }

/* Auth and recovery flows */
.compact-page-hero { padding-block: 54px !important; }
.auth-flow-grid { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:26px; align-items:start; max-width:1050px; }
.auth-form-card { max-width:690px; width:100%; }
.step-badge { display:inline-flex; padding:7px 10px; border-radius:var(--bfs-radius); color:var(--bfs-blue); background:var(--bfs-blue-soft); font-size:11px; font-weight:850; text-transform:uppercase; letter-spacing:.08em; }
.recovery-steps { display:grid; gap:12px; }
.recovery-step { display:flex; gap:12px; align-items:center; padding:16px; border:1px solid var(--bfs-line); border-radius:var(--bfs-radius); background:#fff; }
.recovery-step > span { width:36px; height:36px; border-radius:var(--bfs-radius); display:grid; place-items:center; color:var(--bfs-blue); background:var(--bfs-blue-soft); font-weight:850; }
.recovery-step strong,.recovery-step small { display:block; }
.recovery-step small { color:var(--muted); }
.recovery-step.active { border-color:#9fc1e8; box-shadow:0 12px 28px rgba(7,26,51,.08); }
.recovery-step.completed > span { color:#fff; background:var(--success); }
.otp-inputs { display:grid; grid-template-columns:repeat(6,1fr); gap:10px; margin:24px 0 14px; }
.otp-inputs input { width:100%; min-width:0; height:58px; text-align:center; font-size:23px; font-weight:850; border:1px solid var(--bfs-line); border-radius:var(--bfs-radius); }
.otp-meta { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:20px; color:var(--muted); font-size:13px; }
.text-button { border:0; padding:0; color:var(--bfs-blue); background:transparent; font-weight:800; }
.text-button:disabled { opacity:.45; cursor:not-allowed; }
.center-link { display:block; text-align:center; margin-top:16px; }
.password-field { display:grid; grid-template-columns:1fr 46px; border:1px solid var(--bfs-line); border-radius:var(--bfs-radius); overflow:hidden; background:#fff; }
.password-field input { border:0 !important; border-radius:0 !important; }
.password-field button { border:0; background:#f4f8fd; color:var(--bfs-blue); }
.password-field button svg { width:18px; height:18px; margin:auto; }
.password-strength { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; margin:8px 0 18px; }
.password-strength span { height:4px; border-radius:999px; background:#dce6f1; }
.password-strength small { grid-column:1/-1; color:var(--muted); }
.success-page { min-height:70vh; display:grid; place-items:center; }
.success-card { max-width:720px; margin:auto; padding:54px; border:1px solid var(--bfs-line); border-radius:var(--bfs-radius); background:#fff; text-align:center; box-shadow:0 30px 80px rgba(7,26,51,.12); }
.success-icon { width:78px; height:78px; margin:0 auto 18px; display:grid; place-items:center; border-radius:var(--bfs-radius); color:#fff; background:var(--success); }
.success-icon svg { width:38px; height:38px; }

/* Verification pages */
.verification-page-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:28px; align-items:stretch; }
.verification-info-card { padding:28px; border-radius:var(--bfs-radius); color:#fff; background:linear-gradient(145deg,#071a33,#235fa8); }
.verification-info-card h2 { color:#fff; }
.verification-info-card p { color:rgba(255,255,255,.72); }
.verification-info-card .clean-list li { color:rgba(255,255,255,.88); }
.verification-info-card .clean-list svg { color:#6ee7c8; }
.captcha-row { display:grid; grid-template-columns:120px 1fr; gap:10px; }
.captcha-row strong { min-height:48px; display:grid; place-items:center; border-radius:var(--bfs-radius); color:#fff; background:linear-gradient(135deg,#0c3367,#df3e38); letter-spacing:.16em; }

/* Franchise */
.franchise-hero-card { padding:26px; border-radius:var(--bfs-radius); color:#fff; background:linear-gradient(145deg,#071a33,#235fa8); box-shadow:0 24px 64px rgba(7,26,51,.22); }
.franchise-hero-card h3 { color:#fff; }
.franchise-badge { display:inline-flex; padding:7px 10px; margin-bottom:16px; border-radius:var(--bfs-radius); background:rgba(255,255,255,.12); font-size:11px; font-weight:850; text-transform:uppercase; letter-spacing:.08em; }
.franchise-stat-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-top:22px; }
.franchise-stat-grid div { padding:14px; border-radius:var(--bfs-radius); background:rgba(255,255,255,.10); }
.franchise-stat-grid strong,.franchise-stat-grid span { display:block; }
.franchise-stat-grid strong { color:#fff; font-size:22px; }
.franchise-stat-grid span { color:rgba(255,255,255,.68); font-size:11px; }
.process-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.process-card { padding:24px; border:1px solid var(--bfs-line); border-radius:var(--bfs-radius); background:#fff; box-shadow:0 14px 34px rgba(7,26,51,.06); }
.process-card > span { display:inline-grid; place-items:center; width:42px; height:42px; margin-bottom:18px; border-radius:var(--bfs-radius); color:#fff; background:linear-gradient(135deg,var(--bfs-blue),var(--bfs-red)); font-weight:850; }
.requirements-grid { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:30px; align-items:start; }
.requirement-list { display:grid; gap:12px; margin-top:22px; }
.requirement-list article { display:flex; gap:14px; padding:17px; border:1px solid var(--bfs-line); border-radius:var(--bfs-radius); background:#fff; }
.requirement-list h3 { margin-bottom:5px; }
.requirement-list p { margin:0; color:var(--muted); }
.document-checklist { padding:25px; border:1px solid var(--bfs-line); border-radius:var(--bfs-radius); background:#fff; box-shadow:0 18px 44px rgba(7,26,51,.08); }
.franchise-wizard { max-width:1000px; margin:auto; }
.wizard-progress { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-bottom:28px; }
.wizard-step { min-height:74px; padding:12px; border:1px solid var(--bfs-line); border-radius:var(--bfs-radius); background:#fff; text-align:left; }
.wizard-step span { width:28px; height:28px; display:grid; place-items:center; margin-bottom:5px; border-radius:var(--bfs-radius); color:var(--bfs-blue); background:var(--bfs-blue-soft); font-weight:850; }
.wizard-step strong { color:var(--bfs-navy); font-size:13px; }
.wizard-step.active { border-color:#9fc1e8; background:#f5f9ff; box-shadow:0 12px 28px rgba(7,26,51,.07); }
.wizard-step.active span { color:#fff; background:var(--bfs-blue); }
.wizard-panel { display:none; }
.wizard-panel.active { display:block; }
.wizard-actions { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:26px; padding-top:20px; border-top:1px solid var(--bfs-line); }
.wizard-actions [data-wizard-counter] { color:var(--muted); font-size:13px; }
.check-line { display:flex; align-items:flex-start; gap:10px; font-weight:600; }
.check-line input { width:18px; height:18px; min-height:auto; margin-top:3px; }

/* Required fields and compact service arrows */
.required-label::after { content:' *'; color:var(--bfs-red); font-weight:900; }
.service-tile a svg { width:18px !important; height:18px !important; padding:0 !important; background:transparent !important; }

/* Mobile app navigation stays horizontally scrollable */
.mobile-bottom-track { scroll-behavior:smooth; }
.mobile-bottom .bottom-link { min-width:76px !important; border-radius:var(--bfs-radius) !important; }
.mobile-bottom .bottom-link.active { color:var(--bfs-blue) !important; background:#edf4ff !important; }
.mobile-bottom .primary-action { color:var(--bfs-red) !important; background:#fff1f0 !important; }
.footer-menu-track { animation:none !important; overflow-x:auto; }
.footer-menu-marquee { overflow-x:auto !important; }
.footer-menu-pill { border-radius:var(--bfs-radius) !important; background:#f5f8fd !important; color:#17324d !important; }

@media (max-width: 1360px) {
  .bfs-brand { min-width:205px; }
  .bfs-brand .brand-copy strong { font-size:15px; }
  .bfs-nav-link { padding-inline:8px !important; font-size:12px !important; }
  .desktop-student-login { padding-inline:14px !important; }
}
@media (max-width: 1180px) {
  .bfs-brand .brand-copy { display:none; }
  .bfs-brand { min-width:64px; }
  .bfs-mega-wide { width:680px !important; }
  .bfs-nav-link { padding-inline:7px !important; font-size:11px !important; }
}
@media (max-width: 920px) {
  .bfs-topbar { display:none; }
  .bfs-main-nav { display:none !important; }
  .bfs-navbar { min-height:76px !important; }
  .bfs-brand .brand-copy { display:block; }
  .bfs-brand { min-width:auto; }
  .student-preview { grid-template-columns:1fr; }
  .student-preview-sidebar { border-right:0; border-bottom:1px solid rgba(255,255,255,.10); padding:14px; }
  .student-preview-brand { display:none; }
  .student-preview-nav { display:flex; overflow-x:auto; gap:8px; margin-top:0; padding-bottom:3px; }
  .student-preview-nav button { flex:0 0 auto; width:auto; min-width:120px; justify-content:center; }
  .student-preview-main { padding:18px; }
  .student-preview-top { flex-direction:column; gap:10px; }
  .auth-flow-grid,
  .verification-page-grid,
  .requirements-grid { grid-template-columns:1fr; }
  .recovery-steps { grid-template-columns:repeat(3,1fr); }
  .recovery-step { padding:12px; }
  .recovery-step small { display:none; }
  .process-grid { grid-template-columns:repeat(2,1fr); }
  .wizard-progress { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 640px) {
  .bfs-brand .brand-copy strong { font-size:14px; }
  .bfs-brand .brand-copy small { font-size:9px; }
  .student-preview-main { padding:14px; }
  .student-action-grid { grid-template-columns:1fr; }
  .recovery-steps { grid-template-columns:1fr; }
  .otp-inputs { gap:6px; }
  .otp-inputs input { height:50px; font-size:20px; }
  .success-card { padding:30px 20px; }
  .captcha-row { grid-template-columns:1fr; }
  .process-grid { grid-template-columns:1fr; }
  .wizard-progress { grid-template-columns:1fr 1fr; }
  .wizard-step { min-height:64px; }
  .wizard-actions { flex-wrap:wrap; }
  .wizard-actions [data-wizard-counter] { order:-1; width:100%; text-align:center; }
}

.sitemap-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.sitemap-group { padding:24px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:0 14px 34px rgba(7,26,51,.06); }
.sitemap-group h2 { font-size:21px; margin-bottom:16px; }
.sitemap-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.sitemap-links a { min-height:42px; padding:10px 12px; border-radius:7px; color:var(--blue-700); background:var(--blue-50); font-weight:700; }
.sitemap-links a:hover { background:var(--blue-100); }
@media(max-width:760px){ .sitemap-groups,.sitemap-links{grid-template-columns:1fr;} }

/* ===== BFS FINAL NAVIGATION, FRANCHISE, FACULTY, REVIEWS & BLOG UPDATE ===== */
.site-header .navbar {
  width: min(1480px, calc(100% - 48px));
  margin-inline: auto;
}
.simple-main-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex: 1 1 auto;
  min-width: 0;
}
.simple-main-nav .nav-item { position: relative; }
.simple-main-nav .nav-link {
  min-height: 46px;
  padding: 0 14px;
  border: 0;
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #27364c;
  background: transparent;
  font-size: 14px;
  font-weight: 720;
  white-space: nowrap;
}
.simple-main-nav .nav-link:hover,
.simple-main-nav .nav-link.active,
.simple-dropdown-item.open > .nav-link {
  color: var(--blue-700);
  background: var(--blue-50);
}
.simple-main-nav .nav-link svg { width: 14px; height: 14px; transition: transform .2s ease; }
.simple-dropdown-item.open > .nav-link svg,
.simple-dropdown-item:hover > .nav-link svg { transform: rotate(180deg); }
.simple-dropdown-menu {
  position: absolute;
  left: 0;
  top: calc(100% + 10px);
  z-index: 100;
  width: 310px;
  padding: 10px;
  border: 1px solid rgba(19, 64, 121, .12);
  border-top: 3px solid var(--blue-600);
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 26px 70px rgba(7, 26, 51, .18);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.simple-dropdown-item:nth-last-child(-n+2) .simple-dropdown-menu { left: auto; right: 0; }
.simple-dropdown-item:hover .simple-dropdown-menu,
.simple-dropdown-item:focus-within .simple-dropdown-menu,
.simple-dropdown-item.open .simple-dropdown-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
.simple-dropdown-link {
  display: grid;
  grid-template-columns: 34px minmax(0,1fr);
  gap: 11px;
  align-items: center;
  padding: 11px 10px;
  border-radius: 7px;
  transition: background .18s ease, transform .18s ease;
}
.simple-dropdown-link:hover { background: var(--blue-50); transform: translateX(2px); }
.simple-dropdown-icon {
  width: 34px;
  height: 34px;
  border-radius: 7px;
  display: grid;
  place-items: center;
  color: var(--blue-700);
  background: var(--blue-100);
}
.simple-dropdown-link:nth-child(even) .simple-dropdown-icon { color: var(--red-600); background: var(--red-100); }
.simple-dropdown-icon svg { width: 17px; height: 17px; }
.simple-dropdown-link strong { display:block; color:var(--ink); font-size:13px; margin-bottom:1px; }
.simple-dropdown-link small { display:block; color:var(--muted); font-size:11px; line-height:1.35; }

.partner-summary { background:linear-gradient(145deg,var(--blue-950),var(--blue-700)); color:white; }
.partner-summary h3,.partner-summary strong { color:#fff; }
.partner-kicker { display:block; font-size:12px; letter-spacing:.13em; text-transform:uppercase; color:#b9d7f8; margin-bottom:16px; }
.partner-stat-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.partner-stat-grid > div { padding:15px; border:1px solid rgba(255,255,255,.16); border-radius:7px; background:rgba(255,255,255,.08); }
.partner-stat-grid strong { display:block; font-size:24px; line-height:1; }
.partner-stat-grid span { display:block; margin-top:7px; color:rgba(255,255,255,.72); font-size:12px; }
.partner-benefit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.partner-benefit { padding:24px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.partner-benefit h3 { margin:16px 0 8px; font-size:18px; }
.partner-benefit p { margin:0; color:var(--muted); font-size:13px; }
.franchise-process-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; counter-reset:process; }
.process-step-premium { position:relative; min-height:280px; padding:25px; overflow:hidden; border:1px solid var(--line); border-radius:7px; background:linear-gradient(180deg,#fff,#f9fbff); box-shadow:var(--shadow-sm); }
.process-step-premium::before { content:""; position:absolute; left:0; top:0; width:100%; height:4px; background:linear-gradient(90deg,var(--blue-600),var(--red-500)); }
.process-number { position:absolute; right:18px; top:18px; color:#dce8f6; font-size:44px; font-weight:800; line-height:1; }
.process-icon { width:48px; height:48px; border-radius:7px; display:grid; place-items:center; color:#fff; background:linear-gradient(145deg,var(--blue-800),var(--blue-600)); box-shadow:0 13px 26px rgba(31,89,150,.22); }
.process-icon svg { width:22px; height:22px; }
.process-step-premium:nth-child(even) .process-icon { background:linear-gradient(145deg,var(--red-700),var(--red-500)); }
.process-step-premium h3 { margin:22px 0 9px; font-size:19px; max-width:82%; }
.process-step-premium p { color:var(--muted); font-size:13px; }
.process-outcome { display:inline-flex; margin-top:13px; padding:7px 10px; border-radius:7px; color:var(--blue-800); background:var(--blue-100); font-size:11px; font-weight:750; }
.partner-action-panel { padding:28px; border-radius:7px; display:flex; align-items:center; justify-content:space-between; gap:30px; color:white; background:linear-gradient(125deg,var(--blue-950),var(--blue-800)); box-shadow:var(--shadow-md); }
.partner-action-panel h2 { color:white; margin-bottom:8px; }
.partner-action-panel p { max-width:720px; margin:0; color:rgba(255,255,255,.72); }
.partner-action-buttons { display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end; }
.detailed-process-layout { display:grid; grid-template-columns:minmax(0,1fr) 350px; gap:26px; align-items:start; }
.detailed-process-list { position:relative; display:grid; gap:18px; }
.detailed-process-list::before { content:""; position:absolute; left:31px; top:35px; bottom:35px; width:2px; background:linear-gradient(var(--blue-300),var(--red-100)); }
.detailed-process-card { position:relative; padding:24px 24px 24px 86px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.detailed-step-head { display:flex; align-items:center; gap:18px; }
.detailed-step-head > span { position:absolute; left:14px; top:22px; z-index:2; width:36px; height:36px; border-radius:7px; display:grid; place-items:center; color:white; background:var(--blue-700); box-shadow:0 0 0 8px #fff; font-weight:800; }
.detailed-step-head small { color:var(--red-500); font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.detailed-step-head h3 { margin:3px 0 0; font-size:20px; }
.detailed-process-card p { margin:13px 0; color:var(--muted); }
.detailed-process-card ul { display:grid; gap:7px; margin:0; padding-left:18px; color:#42536a; font-size:13px; }
.process-requirement-sidebar { position:sticky; top:105px; display:grid; gap:16px; }
.process-requirement-sidebar .btn + .btn { margin-top:9px; }

.featured-blog-card { display:grid; grid-template-columns:.9fr 1.1fr; overflow:hidden; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-md); }
.featured-blog-visual { min-height:390px; position:relative; display:grid; place-items:center; background:radial-gradient(circle at 30% 20%,#83afe2 0,transparent 34%),linear-gradient(145deg,var(--blue-950),var(--blue-600)); }
.blog-badge { position:absolute; left:22px; top:22px; padding:7px 11px; border-radius:7px; color:white; background:var(--red-500); font-size:11px; font-weight:800; }
.featured-blog-icon { width:108px; height:108px; border-radius:7px; display:grid; place-items:center; color:white; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.2); }
.featured-blog-icon svg { width:48px; height:48px; }
.featured-blog-copy { padding:42px; align-self:center; }
.featured-blog-copy h2 { font-size:34px; }
.article-meta { display:flex; flex-wrap:wrap; gap:8px; margin:22px 0; }
.article-meta span { padding:7px 10px; border-radius:7px; color:var(--blue-800); background:var(--blue-50); font-size:11px; font-weight:700; }
.editorial-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.editorial-card { min-height:280px; padding:24px; display:flex; flex-direction:column; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.editorial-top { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.editorial-top span { color:var(--red-600); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.editorial-top small { color:var(--muted); }
.editorial-card h3 { margin:22px 0 10px; font-size:19px; }
.editorial-card p { color:var(--muted); font-size:13px; }
.editorial-card a { margin-top:auto; display:inline-flex; align-items:center; gap:8px; color:var(--blue-700); font-weight:750; }
.editorial-card a svg { width:16px; height:16px; }

.leadership-premium-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.leadership-premium-card { display:grid; grid-template-columns:180px minmax(0,1fr); gap:24px; padding:22px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-sm); }
.leader-photo-wrap { position:relative; min-height:230px; overflow:hidden; border-radius:7px; background:linear-gradient(150deg,var(--blue-100),var(--blue-300)); }
.leader-photo-wrap.red-tone { background:linear-gradient(150deg,var(--red-100),#ffd0cc); }
.leader-photo-wrap img { width:100%; height:100%; object-fit:cover; }
.leader-photo-wrap span { position:absolute; left:10px; bottom:10px; padding:7px 9px; border-radius:7px; color:white; background:rgba(7,26,51,.82); font-size:10px; font-weight:800; }
.leadership-premium-card h3 { margin:7px 0 4px; font-size:24px; }
.leader-title { color:var(--red-600); font-weight:700; }
.leadership-premium-card > div:last-child > p:not(.leader-title) { color:var(--muted); font-size:13px; }
.responsibility-tags { display:flex; flex-wrap:wrap; gap:7px; margin:16px 0; }
.responsibility-tags span { padding:6px 9px; border-radius:7px; color:var(--blue-800); background:var(--blue-50); font-size:10px; font-weight:700; }
.leadership-premium-card a,.faculty-premium-card a { display:inline-flex; align-items:center; gap:8px; color:var(--blue-700); font-weight:750; font-size:13px; }
.leadership-premium-card a svg,.faculty-premium-card a svg { width:16px; height:16px; }
.faculty-premium-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.faculty-premium-card { overflow:hidden; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.faculty-photo { position:relative; height:230px; overflow:hidden; background:linear-gradient(150deg,#eef5ff,#d9e9fb); }
.faculty-photo img { width:100%; height:100%; object-fit:cover; }
.faculty-photo span { position:absolute; right:12px; bottom:12px; padding:7px 10px; border-radius:7px; color:white; background:var(--red-500); font-size:10px; font-weight:800; }
.faculty-copy { padding:21px; }
.faculty-department { color:var(--blue-700); font-size:10px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.faculty-copy h3 { margin:7px 0 8px; }
.faculty-copy p { color:var(--muted); font-size:12px; }
.faculty-copy dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:16px 0; }
.faculty-copy dl div { padding:9px; border-radius:7px; background:var(--blue-50); }
.faculty-copy dt { color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.08em; }
.faculty-copy dd { margin:3px 0 0; color:var(--ink); font-size:11px; font-weight:700; }
.faculty-workflow-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.faculty-workflow-grid article { padding:21px; border:1px solid var(--line); border-radius:7px; background:#fff; }
.faculty-workflow-grid span { color:var(--red-500); font-size:28px; font-weight:800; }
.faculty-workflow-grid h3 { margin:12px 0 7px; font-size:17px; }
.faculty-workflow-grid p { margin:0; color:var(--muted); font-size:12px; }
.profile-hero-card { padding:20px; display:flex; align-items:center; gap:18px; border-radius:7px; color:white; background:linear-gradient(145deg,var(--blue-950),var(--blue-700)); }
.profile-hero-card img { width:120px; height:140px; object-fit:cover; border-radius:7px; background:#fff; }
.profile-hero-card span { color:#bcd8f7; font-size:11px; text-transform:uppercase; letter-spacing:.1em; }
.profile-hero-card h3 { margin:5px 0; color:white; font-size:24px; }
.profile-hero-card p { margin:0; color:rgba(255,255,255,.72); font-size:12px; }
.profile-detail-layout { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:25px; align-items:start; }
.expertise-grid { display:flex; flex-wrap:wrap; gap:9px; }
.expertise-grid span { padding:9px 11px; border-radius:7px; color:var(--blue-800); background:var(--blue-50); font-size:12px; font-weight:700; }
.profile-info-list { display:grid; gap:10px; margin:0; }
.profile-info-list div { padding:11px; border-radius:7px; background:var(--blue-50); }
.profile-info-list dt { color:var(--muted); font-size:9px; text-transform:uppercase; }
.profile-info-list dd { margin:3px 0 0; color:var(--ink); font-size:12px; font-weight:700; }
.leadership-responsibility-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.leadership-responsibility-grid div { padding:18px; border:1px solid var(--line); border-radius:7px; }
.leadership-responsibility-grid span { color:var(--red-500); font-size:24px; font-weight:800; }
.leadership-responsibility-grid h4 { margin:8px 0 5px; }
.leadership-responsibility-grid p { margin:0; color:var(--muted); font-size:12px; }

.google-rating-card { padding:24px; display:grid; grid-template-columns:auto 1fr; gap:20px; align-items:center; border-radius:7px; color:white; background:linear-gradient(145deg,var(--blue-950),var(--blue-700)); }
.google-letter { width:58px; height:58px; border-radius:50%; display:grid; place-items:center; color:#4285f4; background:#fff; font-size:30px; font-weight:900; box-shadow:0 10px 24px rgba(0,0,0,.13); }
.rating-number { color:white; font-size:40px; font-weight:800; line-height:1; }
.rating-stars,.review-stars { color:#f6b51b; letter-spacing:.08em; }
.google-rating-card p { margin:5px 0 0; color:rgba(255,255,255,.72); }
.rating-breakdown { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.rating-breakdown span { padding:10px; border-radius:7px; background:rgba(255,255,255,.09); font-size:11px; color:rgba(255,255,255,.74); }
.rating-breakdown strong { display:block; color:white; }
.review-marquee-shell { overflow:hidden; margin-top:16px; }
.review-marquee-track { width:max-content; display:flex; gap:16px; animation:bfs-review-move 44s linear infinite; }
.review-marquee-shell.reverse .review-marquee-track { animation-direction:reverse; animation-duration:48s; }
.review-marquee-shell:hover .review-marquee-track { animation-play-state:paused; }
@keyframes bfs-review-move { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.google-review-card { width:340px; min-height:230px; padding:19px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.reviewer { display:grid; grid-template-columns:40px 1fr auto; gap:10px; align-items:center; }
.reviewer > span { width:40px; height:40px; border-radius:50%; display:grid; place-items:center; color:white; background:var(--blue-800); font-size:11px; font-weight:800; }
.reviewer strong { display:block; color:var(--ink); font-size:13px; }
.reviewer small { display:block; color:var(--muted); font-size:10px; }
.reviewer b { color:#4285f4; font-size:20px; }
.google-review-card .review-stars { margin:14px 0 7px; }
.google-review-card p { color:#42536a; font-size:12px; }
.google-review-card footer { display:flex; justify-content:space-between; gap:10px; margin-top:15px; padding-top:11px; border-top:1px solid var(--line); color:var(--muted); font-size:10px; }
.google-review-card footer span { color:var(--success); font-weight:700; }
.testimonial-premium-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.testimonial-premium-card { position:relative; padding:25px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-sm); }
.testimonial-premium-card.featured { color:white; background:linear-gradient(145deg,var(--blue-950),var(--blue-700)); }
.testimonial-premium-card.featured p,.testimonial-premium-card.featured small { color:rgba(255,255,255,.75); }
.testimonial-premium-card.featured strong { color:white; }
.testimonial-quote { position:absolute; right:18px; top:5px; color:var(--red-100); font-size:74px; font-family:Georgia,serif; line-height:1; }
.testimonial-premium-card p { position:relative; z-index:1; min-height:145px; color:#42536a; }
.testimonial-person { display:flex; align-items:center; gap:11px; }
.testimonial-person img { width:52px; height:52px; object-fit:cover; border-radius:7px; background:var(--blue-50); }
.testimonial-person strong,.testimonial-person span,.testimonial-person small { display:block; }
.testimonial-person span { color:var(--blue-700); font-size:10px; font-weight:700; }
.testimonial-person small { color:var(--muted); font-size:9px; }

.home-leadership-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-bottom:24px; }
.home-leadership-card { display:grid; grid-template-columns:130px 1fr; gap:18px; padding:18px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.home-leadership-card img { width:130px; height:150px; object-fit:cover; border-radius:7px; background:var(--blue-50); }
.home-leadership-card span { color:var(--red-600); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.home-leadership-card h3 { margin:7px 0 6px; }
.home-leadership-card p { color:var(--muted); font-size:12px; }
.home-leadership-card a { color:var(--blue-700); font-size:12px; font-weight:750; }
.home-faculty-track-wrap,.home-review-track-wrap { overflow:hidden; }
.home-faculty-track,.home-review-track { width:max-content; display:flex; gap:14px; animation:bfs-home-track 38s linear infinite; }
.home-review-track { animation-duration:42s; }
.home-faculty-track-wrap:hover .home-faculty-track,.home-review-track-wrap:hover .home-review-track { animation-play-state:paused; }
@keyframes bfs-home-track { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.home-faculty-card { width:280px; padding:14px; display:grid; grid-template-columns:78px 1fr; gap:13px; border:1px solid var(--line); border-radius:7px; background:#fff; }
.home-faculty-card img { width:78px; height:92px; object-fit:cover; border-radius:7px; background:var(--blue-50); }
.home-faculty-card span { color:var(--blue-700); font-size:9px; font-weight:800; text-transform:uppercase; }
.home-faculty-card h3 { margin:5px 0; font-size:16px; }
.home-faculty-card p,.home-faculty-card a { margin:0; font-size:10px; }
.home-faculty-card a { color:var(--red-600); font-weight:700; }
.home-google-summary { display:grid; grid-template-columns:auto 1fr auto; gap:18px; align-items:center; margin-bottom:20px; padding:18px; border-radius:7px; color:white; background:linear-gradient(145deg,var(--blue-950),var(--blue-700)); }
.home-google-summary strong { color:white; font-size:34px; }
.home-google-summary p { margin:2px 0 0; color:rgba(255,255,255,.68); font-size:11px; }
.home-review-metrics { display:flex; gap:8px; }
.home-review-metrics span { padding:9px; border-radius:7px; background:rgba(255,255,255,.09); font-size:10px; color:rgba(255,255,255,.72); }
.home-review-metrics b { display:block; color:white; }
.home-google-card { width:300px; min-height:180px; padding:16px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.home-google-card > div:first-child { display:grid; grid-template-columns:34px 1fr auto; gap:9px; align-items:center; }
.home-google-card > div:first-child span { width:34px; height:34px; border-radius:50%; display:grid; place-items:center; color:white; background:var(--blue-800); font-size:9px; font-weight:800; }
.home-google-card > div:first-child strong { font-size:12px; }
.home-google-card > div:first-child b { color:#4285f4; }
.home-google-card small { color:var(--muted); font-size:9px; }
.home-google-card p { margin:8px 0 0; color:#42536a; font-size:11px; }
.home-testimonial-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:25px; }
.home-testimonial-card { position:relative; padding:20px; border:1px solid var(--line); border-radius:7px; background:#fff; }
.home-testimonial-card.featured { color:white; background:linear-gradient(145deg,var(--blue-950),var(--blue-700)); }
.home-testimonial-card.featured p,.home-testimonial-card.featured small { color:rgba(255,255,255,.74); }
.home-testimonial-card.featured strong { color:white; }
.home-testimonial-card > p { min-height:112px; color:#42536a; font-size:12px; }
.home-testimonial-card > div:last-child { display:flex; align-items:center; gap:10px; }
.home-testimonial-card img { width:45px; height:45px; object-fit:cover; border-radius:7px; }
.home-testimonial-card strong,.home-testimonial-card small { display:block; }
.home-testimonial-card small { color:var(--muted); font-size:9px; }

@media (max-width:1200px) {
  .site-header .navbar { width:min(100% - 28px, 1240px); }
  .simple-main-nav { gap:3px; }
  .simple-main-nav .nav-link { padding:0 10px; font-size:13px; }
  .simple-dropdown-menu { width:285px; }
}
@media (max-width:920px) {
  .simple-main-nav { display:none; }
  .desktop-student-login { display:none; }
  .menu-toggle { display:grid; }
  .partner-benefit-grid,.franchise-process-grid,.faculty-premium-grid,.editorial-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .detailed-process-layout,.profile-detail-layout { grid-template-columns:1fr; }
  .process-requirement-sidebar { position:static; }
  .leadership-premium-grid,.home-leadership-row { grid-template-columns:1fr; }
  .testimonial-premium-grid,.home-testimonial-grid { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .partner-benefit-grid,.franchise-process-grid,.faculty-premium-grid,.editorial-grid,.faculty-workflow-grid { grid-template-columns:1fr; }
  .partner-action-panel { align-items:flex-start; flex-direction:column; }
  .partner-action-buttons { justify-content:flex-start; }
  .featured-blog-card { grid-template-columns:1fr; }
  .featured-blog-visual { min-height:240px; }
  .featured-blog-copy { padding:25px; }
  .featured-blog-copy h2 { font-size:27px; }
  .leadership-premium-card { grid-template-columns:1fr; }
  .leader-photo-wrap { min-height:250px; }
  .home-google-summary { grid-template-columns:auto 1fr; }
  .home-review-metrics { grid-column:1/-1; flex-wrap:wrap; }
  .home-leadership-card { grid-template-columns:95px 1fr; }
  .home-leadership-card img { width:95px; height:115px; }
  .rating-breakdown { grid-template-columns:1fr; }
  .google-review-card { width:290px; }
  .profile-hero-card { align-items:flex-start; }
  .leadership-responsibility-grid { grid-template-columns:1fr; }
}

/* ===== BFS PREMIUM REFINEMENT V4 ===== */
:root{
  --bfs-radius:7px;
  --bfs-navy:#071a33;
  --bfs-blue:#2868ad;
  --bfs-blue-soft:#edf5ff;
  --bfs-red:#dc3832;
  --bfs-line:#dce7f3;
}

/* Compact desktop navigation inspired by app-style education menus, with original BFS palette */
.site-header .navbar{width:min(1540px,calc(100% - 44px));min-height:84px;gap:18px}
.premium-text-nav{display:flex;align-items:center;justify-content:center;gap:2px;flex:1;min-width:0}
.premium-text-nav .nav-item{position:relative}
.premium-text-nav .nav-link{
  position:relative;min-height:52px;padding:0 14px;border:0;border-radius:7px;background:transparent;
  color:#17243a;font-size:14px;font-weight:740;white-space:nowrap;display:inline-flex;align-items:center;gap:7px;
  transition:background .18s ease,color .18s ease,transform .18s ease
}
.premium-text-nav .nav-link::after{
  content:"";position:absolute;left:14px;right:14px;bottom:4px;height:3px;border-radius:5px;
  background:linear-gradient(90deg,var(--bfs-red),var(--bfs-blue));transform:scaleX(0);transform-origin:center;transition:transform .18s ease
}
.premium-text-nav .nav-link:hover{background:#f3f7fc;color:var(--bfs-blue)}
.premium-text-nav .nav-link.active{background:#eef4fb;color:#164f8a}
.premium-text-nav .nav-link.active::after,.premium-text-nav .nav-link:hover::after{transform:scaleX(1)}
.premium-text-nav .nav-link svg{width:13px;height:13px;transition:transform .18s ease}
.simple-dropdown-item:hover>.nav-link svg,.simple-dropdown-item.open>.nav-link svg{transform:rotate(180deg)}
.compact-dropdown{
  width:290px!important;padding:10px!important;border:1px solid rgba(19,64,121,.12)!important;border-top:3px solid var(--bfs-blue)!important;
  border-radius:7px!important;background:#fff!important;box-shadow:0 24px 68px rgba(7,26,51,.17)!important
}
.dropdown-cap{display:flex;justify-content:space-between;align-items:center;padding:8px 10px 10px;border-bottom:1px solid var(--bfs-line);margin-bottom:5px}
.dropdown-cap span{font-size:12px;font-weight:800;color:var(--bfs-navy);text-transform:uppercase;letter-spacing:.08em}
.dropdown-cap small{font-size:9px;color:var(--muted)}
.compact-dropdown .simple-dropdown-link{
  display:grid;grid-template-columns:34px minmax(0,1fr) 14px;gap:10px;align-items:center;min-height:48px;padding:7px 9px;border-radius:7px
}
.compact-dropdown .simple-dropdown-link strong{font-size:13px;font-weight:700;color:#1e2e45;margin:0}
.compact-dropdown .simple-dropdown-link:hover{background:#f2f7fd;transform:translateX(2px)}
.compact-dropdown .simple-dropdown-icon{width:32px;height:32px;border-radius:7px;display:grid;place-items:center;background:#e8f2fd;color:var(--bfs-blue)}
.compact-dropdown .simple-dropdown-icon svg{width:16px;height:16px}
.compact-dropdown .menu-arrow{width:12px;height:12px;color:#8aa0b9}
.simple-dropdown-item:nth-last-child(-n+2) .compact-dropdown{left:auto;right:0}
.brand-copy small{color:var(--bfs-red)!important}

/* All inline action arrows must remain compact */
.profile-link svg,.faculty-compact-card a svg,.faculty-directory-card a svg,.testimonial-story-card>a svg,.blog-image-card footer a svg,.card-link svg,.home-leadership-card a svg{width:17px!important;height:17px!important;flex:0 0 17px!important}
.profile-link,.faculty-compact-card a,.faculty-directory-card a,.testimonial-story-card>a,.blog-image-card footer a{display:inline-flex;align-items:center;gap:8px}

/* Homepage admission process: number circles centered on the line */
#process .process-grid{position:relative!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:26px!important;padding-top:0!important}
#process .process-grid::before{content:""!important;display:block!important;position:absolute!important;left:12.5%!important;right:12.5%!important;top:32px!important;height:2px!important;background:linear-gradient(90deg,#9fc1e8,#df3e38,#9fc1e8)!important;z-index:0!important}
#process .process-step{position:relative!important;z-index:1!important;padding:0 15px 22px!important;text-align:center!important;background:transparent!important;border:0!important;box-shadow:none!important}
#process .step-no{width:64px!important;height:64px!important;margin:0 auto 20px!important;border:7px solid #f7faff!important;border-radius:50%!important;display:grid!important;place-items:center!important;color:#fff!important;background:linear-gradient(145deg,#1f5996,#2e6fb4)!important;box-shadow:0 0 0 1px #c9def4,0 12px 26px rgba(31,89,150,.18)!important}
#process .process-step:nth-child(even) .step-no{background:linear-gradient(145deg,#b6211d,#df3e38)!important}
#process .process-step h3{font-size:18px;margin-bottom:8px}
#process .process-step p{font-size:12px;max-width:240px;margin:auto}

/* Latest admissions stream */
.newest-learners-section{overflow:hidden}
.learner-stream{overflow:hidden;margin-top:14px;padding:4px 0}
.learner-track{display:flex;width:max-content;gap:14px;animation:bfsLearners 48s linear infinite}
.learner-stream.reverse .learner-track{animation-direction:reverse;animation-duration:54s}
.learner-stream:hover .learner-track{animation-play-state:paused}
@keyframes bfsLearners{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.learner-card{width:330px;min-height:84px;padding:12px 15px;display:grid;grid-template-columns:58px 1fr;gap:13px;align-items:center;border:1px solid var(--bfs-line);border-radius:7px;background:#fff;box-shadow:0 10px 28px rgba(7,26,51,.06)}
.learner-card img{width:58px;height:58px;object-fit:cover;border-radius:50%;background:#eef5ff;border:3px solid #fff;box-shadow:0 0 0 1px #cfdff0}
.learner-card strong{display:block;color:var(--ink);font-size:13px;line-height:1.25;margin-bottom:4px;text-transform:uppercase}
.learner-card span{display:flex;align-items:center;gap:5px;color:#53657b;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.learner-card span svg{width:12px;height:12px;color:var(--bfs-red)}
.learner-card small{display:block;color:#7b899b;font-size:9px;margin-top:3px}

/* Faculty and leadership redesign */
.leadership-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:26px}
.leader-feature-card{display:grid;grid-template-columns:180px 1fr;min-height:250px;border:1px solid var(--bfs-line);border-radius:7px;background:#fff;overflow:hidden;box-shadow:0 18px 44px rgba(7,26,51,.07)}
.leader-photo-panel{position:relative;padding:20px;background:linear-gradient(145deg,#9b1d19,#df3e38);display:flex;align-items:flex-end;justify-content:center}
.leader-photo-panel.blue{background:linear-gradient(145deg,#0b2d59,#2d6eb3)}
.leader-photo-panel img{width:145px;height:175px;object-fit:cover;border-radius:7px;background:rgba(255,255,255,.09)}
.leader-photo-panel>span{position:absolute;left:12px;right:12px;bottom:12px;padding:7px 9px;border-radius:7px;color:#fff;background:rgba(7,26,51,.78);font-size:9px;font-weight:800;text-align:center;text-transform:uppercase;letter-spacing:.08em}
.leader-feature-copy{padding:25px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.leader-feature-copy>small{color:var(--bfs-red);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.leader-feature-copy h3{font-size:25px;margin:7px 0 9px}
.leader-feature-copy p{font-size:12px;color:var(--muted);margin-bottom:13px}
.leader-tags,.faculty-skill-tags{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:15px}
.leader-tags span,.faculty-skill-tags span{padding:6px 9px;border-radius:999px;background:#edf4fd;color:#235f9e;font-size:9px;font-weight:750}
.profile-link{color:var(--bfs-blue);font-size:12px;font-weight:760}
.faculty-strip-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:28px 0 14px;padding-top:20px;border-top:1px solid var(--bfs-line)}
.faculty-strip-head strong,.faculty-strip-head span{display:block}.faculty-strip-head strong{color:var(--ink)}.faculty-strip-head span{font-size:10px;color:var(--muted)}.faculty-strip-head>a{font-size:12px;color:var(--bfs-blue);font-weight:750}
.faculty-carousel-shell{overflow:hidden;padding:2px 0 8px}
.faculty-carousel-track{display:flex;width:max-content;gap:14px;animation:bfsFaculty 42s linear infinite}
.faculty-carousel-shell:hover .faculty-carousel-track{animation-play-state:paused}
@keyframes bfsFaculty{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.faculty-compact-card{width:310px;padding:13px;display:grid;grid-template-columns:88px 1fr;gap:13px;border:1px solid var(--bfs-line);border-radius:7px;background:#fff;box-shadow:0 10px 30px rgba(7,26,51,.06)}
.faculty-compact-card img{width:88px;height:108px;object-fit:cover;border-radius:7px;background:#edf4fc}
.faculty-compact-card small{color:var(--bfs-red);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.faculty-compact-card h3{font-size:16px;margin:5px 0}.faculty-compact-card p{font-size:10px;color:var(--muted);margin-bottom:6px}.faculty-compact-card a{font-size:10px;color:var(--bfs-blue);font-weight:750}
.faculty-leadership-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.faculty-leader-card{display:grid;grid-template-columns:190px 1fr;min-height:290px;border:1px solid var(--bfs-line);border-radius:7px;background:#fff;overflow:hidden;box-shadow:0 16px 42px rgba(7,26,51,.07)}
.faculty-leader-photo{position:relative;padding:18px;background:linear-gradient(145deg,#a51f1b,#df3e38);display:grid;place-items:center}.faculty-leader-photo.blue{background:linear-gradient(145deg,#0c3367,#2e6fb4)}
.faculty-leader-photo img{width:155px;height:190px;object-fit:cover;border-radius:7px}.faculty-leader-photo span{position:absolute;left:12px;right:12px;bottom:12px;padding:8px;color:#fff;background:rgba(7,26,51,.78);border-radius:7px;text-align:center;font-size:9px;font-weight:800;text-transform:uppercase}
.faculty-leader-card>div:last-child{padding:28px}.faculty-leader-card>div:last-child>small{color:var(--bfs-red);font-size:10px;font-weight:800;text-transform:uppercase}.faculty-leader-card h3{font-size:25px;margin:7px 0}.faculty-leader-card p{font-size:12px;color:var(--muted)}.faculty-leader-card ul{display:flex;flex-wrap:wrap;gap:7px;padding:0;margin:14px 0;list-style:none}.faculty-leader-card li{padding:6px 9px;border-radius:999px;background:#edf4fd;color:#235f9e;font-size:9px;font-weight:700}
.faculty-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.faculty-directory-card{border:1px solid var(--bfs-line);border-radius:7px;background:#fff;overflow:hidden;box-shadow:0 14px 36px rgba(7,26,51,.06)}.faculty-directory-cover{position:relative;padding:20px 20px 0;background:linear-gradient(180deg,#eef5ff,#fff)}.faculty-directory-cover img{width:100%;height:210px;object-fit:contain}.faculty-directory-cover span{position:absolute;left:16px;top:16px;padding:7px 9px;border-radius:7px;color:#fff;background:var(--bfs-blue);font-size:9px;font-weight:800;text-transform:uppercase}.faculty-directory-body{padding:20px}.faculty-directory-body>small{color:var(--bfs-red);font-size:9px;font-weight:800;text-transform:uppercase}.faculty-directory-body h3{margin:6px 0}.faculty-directory-body p{font-size:11px;color:var(--muted);min-height:52px}.faculty-directory-body>a{color:var(--bfs-blue);font-size:11px;font-weight:750}
.profile-hero-v3{display:grid;grid-template-columns:280px 1fr;gap:40px;align-items:center}.profile-photo-card{padding:18px;border-radius:7px;background:linear-gradient(145deg,#0b2d59,#2e6fb4);position:relative}.profile-photo-card img{width:100%;height:310px;object-fit:contain;border-radius:7px;background:rgba(255,255,255,.06)}.profile-photo-card span{position:absolute;left:28px;right:28px;bottom:28px;padding:9px;border-radius:7px;background:rgba(7,26,51,.78);color:#fff;text-align:center;font-size:10px;font-weight:800;text-transform:uppercase}.profile-actions{display:flex;gap:10px;flex-wrap:wrap}.profile-detail-v3{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px}.responsibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.responsibility-grid article{padding:18px;border:1px solid var(--bfs-line);border-radius:7px;background:#fff}.responsibility-grid span{color:var(--bfs-red);font-size:22px;font-weight:800}.responsibility-grid h3{font-size:15px;margin:7px 0}.responsibility-grid p{font-size:10px;color:var(--muted);margin:0}.profile-course-list{display:grid;gap:8px}.profile-course-list a{display:flex;align-items:center;gap:9px;padding:11px;border-radius:7px;background:#edf4fd;color:var(--bfs-blue);font-size:11px;font-weight:700}.profile-course-list svg{width:16px;height:16px}

/* Google reviews and testimonials separated */
.review-summary-v3{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:20px;border-radius:7px;color:#fff;background:linear-gradient(145deg,#071a33,#255f9f);box-shadow:0 18px 44px rgba(7,26,51,.16)}
.google-g{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#4285f4;font-size:30px;font-weight:900}.review-summary-v3>div:nth-child(2)>strong{display:inline-block;color:#fff;font-size:38px;margin-right:10px}.review-summary-v3>div:nth-child(2)>span,.stars{color:#f6b51b;letter-spacing:.08em}.review-summary-v3 p{margin:3px 0 0;color:rgba(255,255,255,.69);font-size:10px}.review-summary-stats{display:flex;gap:8px}.review-summary-stats span{padding:10px 13px;border-radius:7px;background:rgba(255,255,255,.09);font-size:9px;color:rgba(255,255,255,.72)}.review-summary-stats b{display:block;color:#fff;font-size:14px}
.review-stream{overflow:hidden;margin-top:18px}.review-stream-track{display:flex;width:max-content;gap:14px;animation:bfsReviews 44s linear infinite}.review-stream:hover .review-stream-track{animation-play-state:paused}@keyframes bfsReviews{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.review-mini-card{width:330px;min-height:210px;padding:18px;border:1px solid var(--bfs-line);border-radius:7px;background:#fff;box-shadow:0 12px 30px rgba(7,26,51,.06)}.review-mini-card header{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center}.review-mini-card header>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--bfs-blue);font-size:10px;font-weight:800}.review-mini-card header strong,.review-mini-card header small{display:block}.review-mini-card header strong{font-size:12px}.review-mini-card header small{font-size:9px;color:var(--muted)}.review-mini-card header>b{color:#4285f4;font-size:20px}.review-mini-card .stars{margin:13px 0 6px}.review-mini-card p{font-size:11px;color:#42536a;min-height:55px}.review-mini-card footer{display:flex;justify-content:space-between;padding-top:10px;border-top:1px solid var(--bfs-line);font-size:9px}.review-mini-card footer span{color:var(--success);font-weight:700}.review-mini-card footer small{color:var(--muted)}
.testimonial-story-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px}.testimonial-story-card{padding:23px;border:1px solid var(--bfs-line);border-radius:7px;background:#fff;box-shadow:0 16px 40px rgba(7,26,51,.07)}.testimonial-story-card.featured{color:#fff;background:linear-gradient(145deg,#071a33,#245f9e)}.testimonial-story-top{display:flex;align-items:center;gap:12px}.testimonial-story-top img{width:58px;height:58px;object-fit:cover;border-radius:7px;background:#edf4fc}.testimonial-story-top span,.testimonial-story-top h3,.testimonial-story-top small{display:block}.testimonial-story-top span{color:var(--bfs-red);font-size:9px;font-weight:800;text-transform:uppercase}.featured .testimonial-story-top span{color:#ff948f}.testimonial-story-top h3{font-size:17px;margin:3px 0}.featured h3{color:#fff}.testimonial-story-top small{font-size:9px;color:var(--muted)}.featured small{color:rgba(255,255,255,.65)}.testimonial-story-card blockquote{margin:18px 0 16px;font-size:13px;line-height:1.7;color:#42536a}.featured blockquote{color:rgba(255,255,255,.82)}.testimonial-story-card>a{color:var(--bfs-blue);font-size:11px;font-weight:750}.testimonial-outcome{display:flex;gap:9px}.testimonial-outcome span{padding:9px;border-radius:7px;background:rgba(255,255,255,.09);font-size:9px;color:rgba(255,255,255,.67)}.testimonial-outcome b{display:block;color:#fff;font-size:12px}.testimonial-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.testimonial-page-card{padding:25px;border:1px solid var(--bfs-line);border-radius:7px;background:#fff;box-shadow:0 14px 38px rgba(7,26,51,.07)}.testimonial-page-card.featured{color:#fff;background:linear-gradient(145deg,#071a33,#245f9e)}.testimonial-page-card header{display:flex;align-items:center;gap:13px}.testimonial-page-card header img{width:68px;height:68px;border-radius:7px;object-fit:cover}.testimonial-page-card header span,.testimonial-page-card header h3,.testimonial-page-card header small{display:block}.testimonial-page-card header span{font-size:9px;color:var(--bfs-red);font-weight:800;text-transform:uppercase}.testimonial-page-card.featured header span{color:#ff948f}.testimonial-page-card header h3{margin:4px 0}.testimonial-page-card.featured h3{color:#fff}.testimonial-page-card header small{font-size:9px;color:var(--muted)}.testimonial-page-card.featured small{color:rgba(255,255,255,.65)}.testimonial-page-card blockquote{margin:18px 0;font-size:13px;line-height:1.75;color:#42536a}.testimonial-page-card.featured blockquote{color:rgba(255,255,255,.82)}.testimonial-result{display:flex;gap:9px}.testimonial-result span{padding:9px 12px;border-radius:7px;background:#edf4fd;color:#617187;font-size:9px}.testimonial-result b{display:block;color:var(--bfs-blue);font-size:13px}.featured .testimonial-result span{background:rgba(255,255,255,.09);color:rgba(255,255,255,.68)}.featured .testimonial-result b{color:#fff}

/* Franchise redesign */
.franchise-snapshot-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:24px;border-radius:7px;color:#fff;background:linear-gradient(145deg,#071a33,#245f9e);box-shadow:0 22px 54px rgba(7,26,51,.18)}.franchise-snapshot-card>span{grid-column:1/-1;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.franchise-snapshot-card>div{padding:14px;border-radius:7px;background:rgba(255,255,255,.09)}.franchise-snapshot-card strong,.franchise-snapshot-card small{display:block}.franchise-snapshot-card strong{color:#fff;font-size:23px}.franchise-snapshot-card small{font-size:9px;color:rgba(255,255,255,.68)}
.partner-benefit-v3-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.partner-benefit-v3-grid article{padding:22px;border:1px solid var(--bfs-line);border-radius:7px;background:#fff;box-shadow:0 14px 34px rgba(7,26,51,.06)}.partner-benefit-v3-grid h3{font-size:16px;margin:14px 0 7px}.partner-benefit-v3-grid p{font-size:11px;color:var(--muted)}
.franchise-summary-line{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;position:relative}.franchise-summary-line::before{content:"";position:absolute;left:7%;right:7%;top:25px;height:2px;background:linear-gradient(90deg,#9fc1e8,#df3e38,#9fc1e8)}.franchise-summary-line article{position:relative;z-index:1;text-align:center}.franchise-summary-line article>span{width:50px;height:50px;margin:0 auto 14px;border:6px solid #f7faff;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--bfs-blue);box-shadow:0 0 0 1px #caddef;font-size:11px;font-weight:800}.franchise-summary-line article:nth-child(even)>span{background:var(--bfs-red)}.franchise-summary-line h3{font-size:14px;margin-bottom:5px}.franchise-summary-line p{font-size:9px;color:var(--muted)}.franchise-action-band{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:30px;padding:24px;border-radius:7px;color:#fff;background:linear-gradient(145deg,#071a33,#245f9e)}.franchise-action-band h3{color:#fff;margin-bottom:5px}.franchise-action-band p{margin:0;color:rgba(255,255,255,.7);font-size:11px}.franchise-action-band>div:last-child{display:flex;gap:10px;flex-wrap:wrap}
.franchise-timeline-v3{position:relative;max-width:1000px;margin:auto}.franchise-timeline-v3::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(#9fc1e8,#df3e38,#9fc1e8);transform:translateX(-50%)}.franchise-stage{position:relative;display:grid;grid-template-columns:1fr 70px 1fr;align-items:center;margin-bottom:24px}.franchise-stage:nth-child(odd) .stage-card{grid-column:1}.franchise-stage:nth-child(even) .stage-card{grid-column:3}.stage-number{grid-column:2;grid-row:1;width:58px;height:58px;margin:auto;border:7px solid #f7faff;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#1f5996,#2e6fb4);box-shadow:0 0 0 1px #c6dcee,0 12px 28px rgba(31,89,150,.18);font-weight:850;z-index:2}.franchise-stage:nth-child(even) .stage-number{background:linear-gradient(145deg,#ad211d,#df3e38)}.stage-card{grid-row:1;padding:23px;border:1px solid var(--bfs-line);border-radius:7px;background:#fff;box-shadow:0 16px 38px rgba(7,26,51,.07)}.stage-label{display:inline-block;margin-bottom:8px;color:var(--bfs-red);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.stage-card h3{font-size:18px;margin-bottom:8px}.stage-card p{font-size:11px;color:var(--muted)}.stage-card ul{list-style:none;padding:0;margin:13px 0 0;display:grid;gap:7px}.stage-card li{display:flex;gap:8px;font-size:10px;color:#46566c}.stage-card li svg{width:14px;height:14px;color:var(--success)}.requirements-v3-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start}.requirement-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.requirement-card-grid article{padding:20px;border:1px solid var(--bfs-line);border-radius:7px;background:#fff}.requirement-card-grid h3{font-size:15px}.requirement-card-grid p{font-size:10px;color:var(--muted);margin:0}.process-side-action{position:sticky;top:110px;padding:25px;border-radius:7px;color:#fff;background:linear-gradient(145deg,#071a33,#245f9e);box-shadow:0 20px 48px rgba(7,26,51,.17)}.process-side-action>span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.process-side-action h3{color:#fff;margin:8px 0}.process-side-action p{font-size:11px;color:rgba(255,255,255,.7)}.process-side-action .btn+.btn{margin-top:9px}

/* Blog with topic-related visuals */
.blog-feature-v3{display:grid;grid-template-columns:1.12fr .88fr;border:1px solid var(--bfs-line);border-radius:7px;background:#fff;overflow:hidden;box-shadow:0 20px 50px rgba(7,26,51,.08)}.blog-feature-v3>img{width:100%;height:100%;min-height:420px;object-fit:cover}.blog-feature-v3>div{padding:38px;display:flex;flex-direction:column;justify-content:center}.blog-label,.blog-image-card>div>span{color:var(--bfs-red);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.blog-feature-v3 h2{font-size:30px;margin:12px 0}.blog-feature-v3 p{font-size:12px;color:var(--muted)}.blog-meta,.article-meta-v3{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0 18px}.blog-meta span,.article-meta-v3 span{padding:7px 9px;border-radius:7px;background:#edf4fd;color:#44617f;font-size:9px;font-weight:700}.blog-image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.blog-image-card{border:1px solid var(--bfs-line);border-radius:7px;background:#fff;overflow:hidden;box-shadow:0 14px 36px rgba(7,26,51,.06);transition:transform .2s ease,box-shadow .2s ease}.blog-image-card:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(7,26,51,.1)}.blog-image-link{display:block;overflow:hidden}.blog-image-link img{width:100%;height:190px;object-fit:cover;transition:transform .35s ease}.blog-image-card:hover .blog-image-link img{transform:scale(1.035)}.blog-image-card>div{padding:18px}.blog-image-card h3{font-size:17px;margin:8px 0}.blog-image-card p{font-size:10px;color:var(--muted);min-height:50px}.blog-image-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--bfs-line)}.blog-image-card footer small{font-size:9px;color:var(--muted)}.blog-image-card footer a{font-size:10px;color:var(--bfs-blue);font-weight:750}
.article-hero-v3{text-align:center}.article-hero-v3 .lead{margin-inline:auto}.article-meta-v3{justify-content:center}.article-hero-image{width:min(100%,1000px);height:auto;margin:28px auto -80px;border-radius:7px;box-shadow:0 24px 60px rgba(7,26,51,.17)}.article-layout-v3{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px;padding-top:55px}.article-content-v3{padding:32px;border:1px solid var(--bfs-line);border-radius:7px;background:#fff}.article-content-v3 h2{font-size:25px;margin:32px 0 12px}.article-content-v3 p,.article-content-v3 li{font-size:12px;color:#46566c}.article-intro{font-size:17px!important;line-height:1.75!important;color:#27384e!important}.article-note{display:flex;gap:12px;padding:17px;border-left:4px solid var(--bfs-red);border-radius:0 7px 7px 0;background:#fff4f3}.article-note strong{color:var(--bfs-red);white-space:nowrap}.article-note span{font-size:11px}.article-comparison-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.article-comparison-grid article{padding:16px;border:1px solid var(--bfs-line);border-radius:7px;background:#f8fbff}.article-comparison-grid h3{font-size:14px}.article-comparison-grid p{font-size:10px}.article-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:30px;padding:22px;border-radius:7px;color:#fff;background:linear-gradient(145deg,#071a33,#245f9e)}.article-cta h3{color:#fff}.article-cta p{color:rgba(255,255,255,.7);margin:0}.article-cta>div:last-child{display:flex;gap:8px;flex-wrap:wrap}.article-sidebar-v3{position:sticky;top:105px;align-self:start;display:grid;gap:15px}.article-sidebar-v3 .panel-card{padding:20px}.article-sidebar-v3 .panel-card>a:not(.related-mini){display:block;padding:9px 0;border-bottom:1px solid var(--bfs-line);font-size:10px;color:var(--bfs-blue)}.related-mini{display:grid;grid-template-columns:72px 1fr;gap:10px;align-items:center;margin-top:10px}.related-mini img{width:72px;height:48px;object-fit:cover;border-radius:7px}.related-mini span{font-size:10px;font-weight:700;color:#304156}

/* Form and card polish */
.form-shell,.panel-card,.hero-side-card,.wizard-panel,.auth-card{border-radius:7px!important;box-shadow:0 16px 42px rgba(7,26,51,.07)!important;border-color:var(--bfs-line)!important}
.form-field label,.field label{display:block;margin-bottom:7px;color:#0d1a2b;font-size:12px;font-weight:720}.form-field input,.form-field select,.form-field textarea,.field input,.field select,.input-wrap{border-radius:7px!important;border:1px solid #cedded!important;background:#fff!important;transition:border-color .18s ease,box-shadow .18s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus,.field input:focus,.field select:focus{outline:none;border-color:#4f86c6!important;box-shadow:0 0 0 4px rgba(79,134,198,.12)!important}.form-field input[type=file]{padding:9px;background:#f8fbff!important}.form-field input[type=file]::file-selector-button{margin-right:12px;padding:10px 14px;border:0;border-radius:7px;color:#fff;background:var(--bfs-blue);font-weight:700}.wizard-progress{position:relative}.wizard-progress::before{content:"";position:absolute;left:10%;right:10%;top:31px;height:2px;background:#d7e4f2;z-index:0}.wizard-step{position:relative;z-index:1;background:#fff!important;text-align:center!important}.wizard-step span{margin:0 auto 7px!important;border-radius:50%!important;border:5px solid #fff;box-shadow:0 0 0 1px #d2e1ef}.wizard-step.active{border-color:#9fc1e8!important}.wizard-step.active span{background:linear-gradient(145deg,#1f5996,#2e6fb4)!important}

/* Footer all-link layout */
.footer-links-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:20px!important}.footer-col a{font-size:10px}.footer-col h4{font-size:13px}.mobile-footer-nav{display:none}

@media(max-width:1350px){
 .site-header .navbar{width:min(100% - 28px,1400px)}.premium-text-nav .nav-link{padding:0 10px;font-size:12px}.brand{min-width:195px}.brand-copy strong{font-size:15px}.desktop-student-login{padding-inline:13px!important}
}
@media(max-width:1120px){.brand-copy{display:none}.brand{min-width:62px}.premium-text-nav{gap:0}.premium-text-nav .nav-link{padding:0 8px;font-size:11px}.compact-dropdown{width:270px!important}}
@media(max-width:920px){
 .premium-text-nav{display:none!important}.brand-copy{display:block}.mobile-footer-nav{display:block}.leadership-feature-grid,.faculty-leadership-grid,.testimonial-story-grid,.partner-benefit-v3-grid,.blog-image-grid{grid-template-columns:1fr 1fr}.leader-feature-card,.faculty-leader-card{grid-template-columns:155px 1fr}.faculty-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-hero-v3,.profile-detail-v3,.requirements-v3-layout,.article-layout-v3{grid-template-columns:1fr}.profile-photo-card{max-width:300px}.article-sidebar-v3,.process-side-action{position:static}.franchise-summary-line{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:24px}.franchise-summary-line::before{display:none}.franchise-timeline-v3::before{left:29px}.franchise-stage{grid-template-columns:60px 1fr;margin-bottom:18px}.franchise-stage:nth-child(odd) .stage-card,.franchise-stage:nth-child(even) .stage-card{grid-column:2}.stage-number{grid-column:1}.blog-feature-v3{grid-template-columns:1fr}.blog-feature-v3>img{min-height:280px}.article-comparison-grid{grid-template-columns:1fr}.footer-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.review-summary-v3{grid-template-columns:auto 1fr}.review-summary-stats{grid-column:1/-1;flex-wrap:wrap}
 #process .process-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;row-gap:28px!important}#process .process-grid::before{display:none!important}
}
@media(max-width:640px){
 .leadership-feature-grid,.faculty-leadership-grid,.testimonial-story-grid,.partner-benefit-v3-grid,.blog-image-grid,.faculty-directory-grid,.testimonial-page-grid,.responsibility-grid,.requirement-card-grid{grid-template-columns:1fr}.leader-feature-card,.faculty-leader-card{grid-template-columns:1fr}.leader-photo-panel,.faculty-leader-photo{min-height:230px}.leader-photo-panel img,.faculty-leader-photo img{height:210px}.faculty-compact-card{width:270px;grid-template-columns:72px 1fr}.faculty-compact-card img{width:72px;height:92px}.learner-card{width:285px}.review-mini-card{width:286px}.review-summary-v3{grid-template-columns:1fr;text-align:center}.google-g{margin:auto}.review-summary-stats{justify-content:center}.franchise-summary-line{grid-template-columns:repeat(2,minmax(0,1fr))}.franchise-action-band,.article-cta{flex-direction:column;align-items:flex-start}.franchise-action-band>div:last-child,.article-cta>div:last-child{width:100%}.franchise-action-band .btn,.article-cta .btn{width:100%}.article-content-v3{padding:20px}.article-hero-image{margin-bottom:-45px}.footer-links-grid{grid-template-columns:1fr!important}.profile-hero-v3{gap:20px}.profile-photo-card{max-width:100%}#process .process-grid{grid-template-columns:1fr!important}.wizard-progress::before{display:none}
}

/* Final semantic-card footer reset */
.review-mini-card footer,
.blog-image-card footer {
  background: transparent !important;
  color: inherit !important;
  min-height: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}
.review-mini-card footer { padding: 10px 0 0 !important; }
.blog-image-card footer { padding: 12px 0 0 !important; }

/* Make animated content readable even before observer activation */
@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1 !important; transform: none !important; }
}

/* Examination navigation additions */
.simple-dropdown-menu { max-height:min(72vh,620px); overflow-y:auto; overscroll-behavior:contain; }
@media (max-width:1360px) and (min-width:921px) {
  .site-header .navbar { width:min(100% - 24px,1320px); gap:12px; }
  .brand { min-width:205px; }
  .brand-copy strong { font-size:15px; }
  .simple-main-nav { gap:2px; }
  .simple-main-nav .nav-link { padding:0 8px; font-size:12px; }
  .desktop-student-login { padding-inline:13px; }
}

/* =====================================================================
   BFS LIVE DOMAIN CONTENT REFINEMENT
   Real public content and photographs from bfsedu.in
   ===================================================================== */
.live-page-hero{background:linear-gradient(180deg,#f8fbff 0%,#fff 100%)}
.live-about-photo,.live-course-hero{position:relative;min-height:390px;padding:0!important;overflow:hidden;background:#0d376d}
.live-about-photo>img,.live-course-hero>img{width:100%;height:100%;min-height:390px;object-fit:cover;display:block}
.photo-overlay{position:absolute;left:18px;right:18px;bottom:18px;padding:15px 17px;border-radius:7px;background:rgba(7,27,54,.84);backdrop-filter:blur(10px);color:#fff;box-shadow:0 16px 38px rgba(4,18,38,.22)}
.photo-overlay strong,.photo-overlay span{display:block}.photo-overlay strong{font-size:17px}.photo-overlay span{margin-top:3px;color:rgba(255,255,255,.72);font-size:12px}
.live-about-layout{align-items:stretch}.live-about-layout>.panel-card{height:100%}
.recognition-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.recognition-row span{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:7px;background:#eef5ff;color:var(--blue-800);font-size:11px;font-weight:700}.recognition-row svg{width:16px;height:16px}
.live-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.live-stat-grid article{padding:28px 22px;border:1px solid var(--line);border-radius:7px;background:linear-gradient(145deg,#fff,#f5f9ff);box-shadow:0 18px 44px rgba(19,52,108,.07)}.live-stat-grid strong,.live-stat-grid span{display:block}.live-stat-grid strong{color:var(--blue-800);font-size:34px;line-height:1}.live-stat-grid span{margin-top:9px;color:var(--muted);font-size:12px}
.quality-badge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.quality-badge-grid article{padding:24px;border:1px solid var(--line);border-radius:7px;background:#fff;text-align:center;box-shadow:0 16px 36px rgba(16,40,84,.06)}.quality-badge-grid strong,.quality-badge-grid span{display:block}.quality-badge-grid strong{color:var(--blue-800);font-size:16px}.quality-badge-grid span{margin-top:5px;color:var(--muted);font-size:10px}

.live-course-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) 190px 190px;gap:12px;align-items:center}.live-course-toolbar .search-mini{min-width:0}.live-course-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.live-course-card{overflow:hidden}.live-course-image{position:relative;height:220px;background:#eef5ff;overflow:hidden}.live-course-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}.live-course-card:hover .live-course-image img{transform:scale(1.035)}.live-course-image .catalog-code{position:absolute;left:14px;top:14px;padding:8px 10px;border-radius:7px;background:rgba(7,31,68,.86);color:#fff;backdrop-filter:blur(8px);font-size:9px;font-weight:800;text-transform:uppercase}.live-course-card .catalog-body{display:flex;flex-direction:column;min-height:292px}.live-course-card .catalog-body p{flex:1}

.live-faculty-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.live-faculty-card{display:grid;grid-template-columns:230px 1fr;min-height:310px;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:#fff;box-shadow:0 20px 50px rgba(11,35,75,.08)}.live-faculty-card.featured{grid-column:1/-1;grid-template-columns:minmax(320px,.9fr) 1.1fr}.live-faculty-photo{min-height:100%;background:#eaf2fb}.live-faculty-photo img{width:100%;height:100%;min-height:310px;object-fit:cover;display:block}.live-faculty-copy{display:flex;flex-direction:column;justify-content:center;padding:28px}.live-faculty-copy>span{color:var(--red-500);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.live-faculty-copy h3{margin:8px 0 10px;font-size:25px}.live-faculty-copy p{color:var(--muted)}.live-faculty-copy ul{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}.live-faculty-copy li{padding:8px 11px;border-radius:7px;background:#edf4fd;color:var(--blue-800);font-size:10px;font-weight:700}
.live-home-faculty-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}.live-home-faculty-card{overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#fff;box-shadow:0 18px 44px rgba(11,35,75,.08)}.live-home-faculty-card img{width:100%;height:240px;object-fit:cover;display:block}.live-home-faculty-card>div{padding:20px}.live-home-faculty-card span{color:var(--red-500);font-size:9px;font-weight:800;text-transform:uppercase}.live-home-faculty-card h3{margin:7px 0 8px;font-size:19px}.live-home-faculty-card p{color:var(--muted);font-size:12px}

.live-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.live-gallery-card{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#fff;box-shadow:0 18px 44px rgba(11,35,75,.08)}.live-gallery-card img{width:100%;height:260px;object-fit:cover;display:block;transition:transform .45s ease}.live-gallery-card:hover img{transform:scale(1.035)}.live-gallery-card figcaption{padding:18px}.live-gallery-card strong,.live-gallery-card span{display:block}.live-gallery-card strong{font-size:17px}.live-gallery-card span{margin-top:5px;color:var(--muted);font-size:11px;line-height:1.55}

.contact-card-live{display:grid;gap:12px;padding:18px!important;background:linear-gradient(145deg,var(--blue-950),var(--blue-700));color:#fff}.contact-live-item{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;padding:14px;border-radius:7px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)}.contact-live-item>svg{width:21px;height:21px;color:#9bc6f3}.contact-live-item strong,.contact-live-item span,.contact-live-item a{display:block}.contact-live-item strong{font-size:12px}.contact-live-item span,.contact-live-item a{margin-top:3px;color:rgba(255,255,255,.72);font-size:11px;line-height:1.45}

.live-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.live-event-card{display:grid;grid-template-columns:180px 1fr;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#fff;box-shadow:0 18px 44px rgba(11,35,75,.08)}.live-event-card.featured{grid-column:1/-1;grid-template-columns:minmax(320px,.9fr) 1.1fr}.live-event-card img{width:100%;height:100%;min-height:220px;object-fit:cover}.live-event-card>div{padding:24px;display:flex;flex-direction:column;justify-content:center}.live-event-card span{color:var(--red-500);font-size:10px;font-weight:800;text-transform:uppercase}.live-event-card h3{margin:8px 0 9px;font-size:21px}.live-event-card p{color:var(--muted);font-size:12px}

.live-testimonial-shell{overflow:hidden;border-radius:7px;padding:8px 0}.live-testimonial-track{display:flex;width:max-content;gap:14px;animation:liveTestimonialsMove 58s linear infinite}.live-testimonial-shell:hover .live-testimonial-track{animation-play-state:paused}.live-testimonial-card{width:300px;min-height:210px;padding:18px;border:1px solid var(--line);border-radius:7px;background:#fff;box-shadow:0 14px 34px rgba(12,36,76,.07)}.live-testimonial-head{display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center}.live-testimonial-head img{width:48px;height:48px;border-radius:7px;object-fit:cover;background:#eef5fd}.live-testimonial-head strong,.live-testimonial-head span{display:block}.live-testimonial-head strong{font-size:14px}.live-testimonial-head span{margin-top:2px;color:var(--blue-700);font-size:9px;font-weight:700}.live-stars{color:#f4a51c;font-size:10px;letter-spacing:1px}.live-testimonial-card p{margin:16px 0 0;color:#41536a;font-size:11px;line-height:1.65}.live-testimonial-track:hover{animation-play-state:paused}@keyframes liveTestimonialsMove{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 7px))}}

.live-blog-card{overflow:hidden}.live-blog-card>img{width:100%;height:230px;object-fit:cover;display:block}.live-blog-card>div{padding:20px}.live-blog-card>div>span{color:var(--red-500);font-size:9px;font-weight:800;text-transform:uppercase}.live-blog-card h3{margin:7px 0 9px}.live-blog-card p{color:var(--muted);font-size:11px}.live-blog-card footer{margin-top:16px}

/* all mobile services are available inside the horizontally scrollable app nav */
.mobile-bottom-track{overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x proximity;padding-inline:10px!important}.mobile-bottom .bottom-link{scroll-snap-align:center;min-width:80px!important}.mobile-bottom .bottom-link span{font-size:8px!important;line-height:1.2;text-align:center}.mobile-bottom .bottom-link svg{width:20px!important;height:20px!important}.mobile-footer-nav .footer-menu-track{overflow:visible}.footer-menu-marquee{overflow-x:auto!important;scrollbar-width:none}.footer-menu-marquee::-webkit-scrollbar{display:none}.footer-menu-track{animation:none!important;transform:none!important;width:max-content!important}.footer-menu-pill{white-space:nowrap}

@media(max-width:1100px){.live-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.live-course-toolbar{grid-template-columns:1fr 160px 160px}.quality-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.live-home-faculty-grid{grid-template-columns:1fr 1fr}.live-faculty-card,.live-faculty-card.featured{grid-template-columns:210px 1fr;grid-column:auto}.live-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.live-course-toolbar{grid-template-columns:1fr}.live-course-grid{grid-template-columns:1fr!important}.live-faculty-grid{grid-template-columns:1fr}.live-faculty-card,.live-faculty-card.featured{grid-template-columns:1fr}.live-faculty-photo img{height:300px;min-height:300px}.live-home-faculty-grid{grid-template-columns:1fr}.live-gallery-grid{grid-template-columns:1fr}.live-event-grid{grid-template-columns:1fr}.live-event-card,.live-event-card.featured{grid-template-columns:1fr;grid-column:auto}.live-event-card img{height:260px}.live-page-hero .page-hero-grid{gap:24px}.live-about-photo,.live-course-hero,.live-about-photo>img,.live-course-hero>img{min-height:320px}.live-testimonial-shell{overflow-x:auto;scroll-snap-type:x mandatory}.live-testimonial-track{animation:none;padding:4px 2px}.live-testimonial-card{scroll-snap-align:start}.live-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.live-stat-grid,.quality-badge-grid{grid-template-columns:1fr 1fr}.live-faculty-copy{padding:20px}.live-faculty-copy h3{font-size:21px}.live-faculty-photo img{height:240px;min-height:240px}.live-gallery-card img{height:220px}.live-testimonial-card{width:270px;min-height:200px}.live-testimonial-head{grid-template-columns:44px 1fr}.live-testimonial-head img{width:44px;height:44px}.live-stars{grid-column:2}.photo-overlay{left:12px;right:12px;bottom:12px}.mobile-bottom .bottom-link{min-width:76px!important}}

/* ===== BFS FINAL UX PATCH: COMPACT FRANCHISE FORM + MOVING FACULTY ===== */
.compact-franchise-wizard{
  max-width:1120px;
  padding:22px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
}
.wizard-intro-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
  padding:12px 14px;
  border:1px solid #dce8f5;
  border-radius:7px;
  background:#f6faff;
}
.wizard-intro-bar>div:first-child{display:grid;gap:2px}
.wizard-kicker{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--bfs-red,#d6322f)}
.wizard-intro-bar strong{font-size:14px;color:var(--bfs-navy,#0d294c)}
.wizard-security{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
.wizard-security svg{width:18px;height:18px;color:#18865d}
.wizard-security b{color:var(--bfs-red,#d6322f)}
.compact-franchise-wizard .wizard-progress{
  gap:8px;
  margin-bottom:16px;
}
.compact-franchise-wizard .wizard-progress::before{top:23px;left:11%;right:11%}
.compact-franchise-wizard .wizard-step{
  min-height:56px;
  padding:8px 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center!important;
}
.compact-franchise-wizard .wizard-step span{
  width:24px;
  height:24px;
  min-width:24px;
  margin:0!important;
  border-width:4px;
  font-size:11px;
}
.compact-franchise-wizard .wizard-step strong{font-size:12px;line-height:1.25}
.compact-franchise-wizard .wizard-panel{
  padding:16px;
  border:1px solid #dce7f3;
  border-radius:7px;
  background:#fff;
}
.wizard-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
  padding-bottom:12px;
  border-bottom:1px solid #e5edf6;
}
.wizard-panel-head span{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--bfs-blue,#1f5f9f)}
.wizard-panel-head h2{margin:2px 0 3px;font-size:20px;color:var(--bfs-navy,#0d294c)}
.wizard-panel-head p{margin:0;font-size:12px;color:var(--muted)}
.wizard-step-badge{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:7px;
  color:#fff;
  background:linear-gradient(145deg,var(--bfs-blue,#1f5f9f),#3579bd);
  font-weight:850;
  box-shadow:0 10px 24px rgba(31,95,159,.18);
}
.compact-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 14px!important;
}
.compact-form-grid.compact-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.compact-form-grid.compact-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.compact-form-grid .form-field{margin:0!important;min-width:0}
.compact-form-grid .form-field.full{grid-column:1/-1}
.compact-form-grid .form-field.span-2{grid-column:span 2}
.compact-form-grid .form-field label{
  margin-bottom:5px;
  font-size:11px;
  line-height:1.3;
}
.compact-form-grid .form-field input:not([type=checkbox]),
.compact-form-grid .form-field select{
  min-height:42px!important;
  height:42px;
  padding:9px 12px!important;
  font-size:13px;
}
.compact-form-grid .form-field textarea{
  min-height:82px!important;
  padding:10px 12px!important;
  font-size:13px;
  resize:vertical;
}
.compact-form-grid .form-field input[type=file]{
  min-height:44px!important;
  padding:5px 8px!important;
  font-size:12px;
}
.compact-form-grid .form-field input[type=file]::file-selector-button{
  margin-right:8px;
  padding:8px 11px;
  font-size:11px;
}
.compact-franchise-wizard .wizard-actions{
  margin-top:14px;
  padding-top:14px;
  display:grid;
  grid-template-columns:auto 1fr auto auto;
  gap:10px;
}
.compact-franchise-wizard .wizard-actions .btn{
  min-height:42px;
  padding:9px 16px;
  font-size:13px;
}
.wizard-save-note{display:flex;align-items:center;gap:7px;color:#52708f;font-size:11px}
.wizard-save-note svg{width:17px;height:17px;color:#16865c}
.compact-franchise-wizard .wizard-actions [data-wizard-counter]{text-align:center;font-size:12px}

.faculty-motion-section{overflow:hidden;padding-bottom:70px}
.faculty-motion-head{align-items:center}
.faculty-count-card{
  min-width:190px;
  padding:16px 18px;
  display:flex;
  align-items:center;
  gap:12px;
  border:1px solid #d8e5f2;
  border-radius:7px;
  background:#fff;
  box-shadow:0 16px 34px rgba(10,39,76,.07);
}
.faculty-count-card strong{font-size:28px;color:var(--bfs-blue,#1f5f9f)}
.faculty-count-card span{font-size:11px;line-height:1.4;color:var(--muted)}
.faculty-motion-viewport{
  width:100%;
  overflow:hidden;
  margin-top:18px;
  mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}
.faculty-motion-track{
  width:max-content;
  display:flex;
  gap:14px;
  padding:4px 0;
  animation:bfsFacultyMove 54s linear infinite;
}
.faculty-motion-reverse .faculty-motion-track{animation-direction:reverse;animation-duration:60s}
.faculty-motion-viewport:hover .faculty-motion-track{animation-play-state:paused}
@keyframes bfsFacultyMove{to{transform:translateX(-50%)}}
.faculty-motion-card{
  width:330px;
  min-width:330px;
  display:grid;
  grid-template-columns:112px 1fr;
  overflow:hidden;
  border:1px solid #d9e5f1;
  border-radius:7px;
  background:#fff;
  box-shadow:0 16px 36px rgba(8,34,68,.08);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.faculty-motion-card:hover{transform:translateY(-3px);border-color:#a9c5e3;box-shadow:0 22px 46px rgba(8,34,68,.13)}
.faculty-motion-photo{position:relative;min-height:164px;background:#eaf2fb}
.faculty-motion-photo img{width:100%;height:100%;min-height:164px;object-fit:cover;display:block}
.faculty-exp-badge{
  position:absolute;
  left:8px;
  right:8px;
  bottom:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:6px 7px;
  border-radius:7px;
  background:rgba(8,31,62,.88);
  color:#fff;
  font-size:9px;
  font-weight:750;
  backdrop-filter:blur(8px);
}
.faculty-exp-badge svg{width:13px;height:13px}
.faculty-motion-copy{padding:15px 14px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.faculty-speciality{font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--bfs-red,#d6322f)}
.faculty-motion-copy h3{margin:5px 0 6px;font-size:16px;line-height:1.2;color:var(--bfs-navy,#0d294c)}
.faculty-motion-copy p{margin:0 0 10px;font-size:10.5px;line-height:1.55;color:var(--muted)}
.faculty-skill-line{
  width:max-content;
  max-width:100%;
  padding:6px 8px;
  border-radius:7px;
  background:#edf5ff;
  color:#1f5f9f;
  font-size:9px;
  font-weight:750;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.faculty-motion-note{
  margin-top:18px;
  display:flex;
  align-items:flex-start;
  gap:9px;
  padding:12px 14px;
  border:1px solid #dbe7f2;
  border-radius:7px;
  background:#f8fbff;
  color:#5b728d;
  font-size:11px;
  line-height:1.55;
}
.faculty-motion-note svg{width:18px;height:18px;min-width:18px;color:#16865c}

@media(max-width:1000px){
  .compact-form-grid.compact-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .compact-form-grid .form-field.span-2{grid-column:1/-1}
  .compact-franchise-wizard .wizard-actions{grid-template-columns:auto 1fr auto}
  .wizard-save-note{display:none}
  .faculty-motion-head{align-items:flex-start}
}
@media(max-width:700px){
  .compact-franchise-wizard{padding:14px!important}
  .wizard-intro-bar{align-items:flex-start;flex-direction:column}
  .compact-franchise-wizard .wizard-progress{grid-template-columns:repeat(4,minmax(92px,1fr));overflow-x:auto;padding-bottom:5px}
  .compact-franchise-wizard .wizard-step{min-width:92px;flex-direction:column;gap:3px}
  .compact-franchise-wizard .wizard-progress::before{display:none}
  .compact-form-grid,.compact-form-grid.compact-grid-2,.compact-form-grid.compact-grid-3{grid-template-columns:1fr}
  .compact-form-grid .form-field.span-2{grid-column:auto}
  .wizard-panel-head{align-items:flex-start}
  .wizard-panel-head h2{font-size:17px}
  .compact-franchise-wizard .wizard-actions{grid-template-columns:1fr 1fr}
  .compact-franchise-wizard .wizard-actions [data-wizard-counter]{grid-column:1/-1;order:-1}
  .compact-franchise-wizard .wizard-actions .btn{width:100%}
  .faculty-count-card{min-width:0;width:100%}
  .faculty-motion-card{width:286px;min-width:286px;grid-template-columns:96px 1fr}
  .faculty-motion-photo,.faculty-motion-photo img{min-height:152px}
  .faculty-motion-copy{padding:12px}
  .faculty-motion-copy h3{font-size:14px}
  .faculty-motion-viewport{mask-image:none;-webkit-mask-image:none;overflow-x:auto;scroll-snap-type:x mandatory;padding-left:16px}
  .faculty-motion-track{animation:none;padding-right:16px}
  .faculty-motion-card{scroll-snap-align:start}
}
@media(prefers-reduced-motion:reduce){.faculty-motion-track{animation:none}}

/* HOMEPAGE CONTENT REVIEW — concise headings and production-ready copy */
#home h1{max-width:760px}
.section-head h2,.feature-layout h2,.student-hub h2,.network-grid h2,.showcase-head h2{max-width:900px;letter-spacing:-.035em}
.section-copy{max-width:780px}
@media (min-width:992px){.section-head h2,.feature-layout h2,.student-hub h2,.network-grid h2,.showcase-head h2{font-size:clamp(2rem,3vw,3rem)}}
@media (max-width:640px){.section-head h2,.feature-layout h2,.student-hub h2,.network-grid h2,.showcase-head h2{font-size:1.85rem;line-height:1.12}.section-copy{font-size:.96rem}}

/* ===== BFS PROFESSIONAL UI/UX & SPACE OPTIMIZATION — FINAL PATCH ===== */
:root{
  --ui-border:#dbe6f1;
  --ui-border-strong:#c7d8ea;
  --ui-surface:#ffffff;
  --ui-surface-soft:#f7faff;
  --ui-shadow:0 18px 48px rgba(16,44,83,.075);
  --ui-shadow-hover:0 24px 58px rgba(16,44,83,.12);
}

/* Balanced page rhythm across all frontend pages */
.section,.page-section{padding-block:clamp(48px,5.2vw,76px)}
.page-hero{padding-block:clamp(48px,5vw,72px)}
.section-head,.page-title-row{margin-bottom:clamp(24px,3vw,36px)}
.section-head h2,.page-title-row h2{margin-bottom:10px}
.section-copy,.lead{line-height:1.68}
.container{padding-inline:clamp(18px,3vw,36px)}

/* Premium surfaces without unnecessary height */
.panel-card,.form-shell,.hero-side-card,.feature-card,.service-tile,.catalog-card,.notice-card,
.verification-info-card,.flow-step-card,.job-card,.network-card,.home-resource-card,.faq-item,
.compact-franchise-wizard,.dashboard-showcase,.verify-shell{
  border:1px solid var(--ui-border)!important;
  border-radius:7px!important;
  box-shadow:var(--ui-shadow);
}
.panel-card,.form-shell,.hero-side-card,.verification-info-card{padding:clamp(20px,2.25vw,28px)}
.feature-card,.service-tile,.notice-card,.flow-step-card,.job-card,.network-card,.home-resource-card{padding:clamp(18px,2vw,24px)}
.feature-card:hover,.service-tile:hover,.catalog-card:hover,.notice-card:hover,.flow-step-card:hover,
.job-card:hover,.network-card:hover,.home-resource-card:hover{box-shadow:var(--ui-shadow-hover);transform:translateY(-2px)}

/* Compact forms and consistent labels */
.form-grid{gap:16px!important}
.form-field,.field{gap:6px!important}
.form-field label,.field label{margin:0 0 6px!important;font-size:12.5px!important;line-height:1.35;font-weight:720!important}
.form-field input,.form-field select,.form-field textarea,.field>input,.field>select,.field>textarea{
  min-height:48px!important;
  border:1px solid var(--ui-border-strong)!important;
  border-radius:7px!important;
  background:#fff!important;
  box-shadow:none!important;
  padding:11px 13px!important;
}
.form-field textarea,.field>textarea{min-height:104px!important}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus,
.field>input:focus,.field>select:focus,.field>textarea:focus{
  border-color:#4d86c8!important;
  box-shadow:0 0 0 3px rgba(77,134,200,.13)!important;
  outline:none!important;
}

/* ONE-BORDER INPUT SYSTEM: wrapper owns the border, control remains borderless */
.input-wrap,.search-mini,.captcha-row .input-wrap{
  min-height:50px!important;
  border:1px solid var(--ui-border-strong)!important;
  border-radius:7px!important;
  background:#fff!important;
  box-shadow:none!important;
  padding:0 13px!important;
}
.input-wrap:focus-within,.search-mini:focus-within{
  border-color:#4d86c8!important;
  box-shadow:0 0 0 3px rgba(77,134,200,.13)!important;
}
.input-wrap>input,.input-wrap>select,.input-wrap>textarea,
.search-mini>input,.search-mini>select,.search-mini>textarea,
.field .input-wrap input,.field .input-wrap select,.field .input-wrap textarea{
  width:100%!important;
  min-height:46px!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:8px 3px!important;
  border-radius:0!important;
}
.input-wrap>input:focus,.input-wrap>select:focus,.input-wrap>textarea:focus,
.search-mini>input:focus,.search-mini>select:focus{
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
}
.input-wrap svg,.search-mini svg{flex:0 0 auto}

/* Cleaner form files and action rows */
.form-field input[type=file]{padding:7px!important;min-height:48px!important;background:#fbfdff!important}
.form-field input[type=file]::file-selector-button{padding:9px 13px!important;margin-right:10px!important}
.wizard-actions,.page-actions,.hero-actions,.cta-actions{gap:10px!important}
.btn{min-height:44px!important;padding:11px 18px!important;box-shadow:0 10px 24px rgba(18,50,96,.08)}
.btn:hover{box-shadow:0 14px 30px rgba(18,50,96,.13)}

/* Grid spacing and card content density */
.feature-grid,.service-grid,.catalog-grid,.job-grid,.network-cards,.notice-grid,.metric-grid{gap:16px!important}
.catalog-body,.live-course-card .catalog-body{min-height:0!important;padding:20px!important}
.service-tile{min-height:0!important}
.metric-card{padding:18px!important;min-height:108px}
.clean-list{gap:10px!important}

/* Real-feel India map */
.map-card{padding:0!important;overflow:hidden!important;background:#f2f7fd!important}
.india-map-shell{
  position:relative;
  min-height:540px!important;
  overflow:hidden;
  border-radius:7px 7px 0 0!important;
  background:
    radial-gradient(circle at 22% 18%,rgba(94,153,218,.18),transparent 28%),
    linear-gradient(rgba(33,91,157,.065) 1px,transparent 1px),
    linear-gradient(90deg,rgba(33,91,157,.065) 1px,transparent 1px),
    linear-gradient(145deg,#f8fbff,#e9f2fc);
  background-size:auto,32px 32px,32px 32px,auto;
}
.india-map-bg{
  position:absolute!important;
  inset:42px 70px 58px 58px!important;
  background:url('india-map.svg') center/contain no-repeat!important;
  opacity:1!important;
  filter:drop-shadow(0 20px 26px rgba(20,65,122,.13));
}
.map-kicker{
  position:absolute;left:18px;top:18px;z-index:4;
  display:inline-flex;align-items:center;gap:8px;
  padding:9px 12px;border:1px solid rgba(33,89,150,.12);border-radius:999px;
  background:rgba(255,255,255,.9);backdrop-filter:blur(10px);
  color:#153c6d;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
  box-shadow:0 10px 24px rgba(23,62,111,.08)
}
.map-live-dot{width:8px;height:8px;border-radius:50%;background:#e63b36;box-shadow:0 0 0 6px rgba(230,59,54,.12)}
.map-pin{position:absolute!important;z-index:5;display:flex!important;align-items:center;gap:8px;transform:translate(-5px,-5px)}
.pin-dot{width:13px!important;height:13px!important;border:4px solid #fff!important;background:#df3d38!important;box-shadow:0 0 0 7px rgba(223,61,56,.13),0 8px 18px rgba(16,52,98,.18)!important}
.pin-label{padding:6px 10px!important;border-radius:999px!important;background:rgba(255,255,255,.94)!important;border:1px solid rgba(32,83,148,.13)!important;font-size:10px!important;font-weight:800!important;color:#173f70!important;box-shadow:0 8px 18px rgba(20,58,106,.1)!important}
.map-route{position:absolute;z-index:3;height:2px;background:linear-gradient(90deg,transparent,#7aa9da,#df3d38);transform-origin:left center;opacity:.52}
.route-one{width:170px;left:35%;top:31%;transform:rotate(26deg)}
.route-two{width:150px;left:31%;top:56%;transform:rotate(-34deg)}
.map-stats{position:absolute;left:18px;bottom:18px;z-index:4;display:grid;gap:3px;max-width:260px;padding:13px 14px;border-radius:7px;background:rgba(8,42,83,.9);color:#fff;backdrop-filter:blur(10px);box-shadow:0 14px 30px rgba(9,37,73,.2)}
.map-stats strong{font-size:13px}.map-stats span{font-size:10px;line-height:1.5;color:rgba(255,255,255,.72)}
.map-caption{padding:15px 18px!important;gap:14px!important;background:#fff!important}
.map-caption strong{font-size:14px}.map-caption span{font-size:11px!important}

/* Professional typography with less visual heaviness */
h1,h2,h3{letter-spacing:-.025em}
h1{font-size:clamp(2.3rem,4.5vw,4.5rem);line-height:1.04}
h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1.12}
h3{line-height:1.24}
p{line-height:1.65}

/* Footer and mobile navigation remain compact */
footer{margin-top:0}
.footer-premium-body{gap:28px!important;padding-block:34px!important}
.footer-links-grid{gap:22px!important}
.footer-col{gap:8px!important}
.mobile-footer-nav{padding-block:20px!important}
.mobile-bottom .bottom-link{min-width:74px!important;padding:8px 9px!important}

@media(max-width:980px){
  .section,.page-section{padding-block:52px}
  .page-hero{padding-block:52px}
  .india-map-shell{min-height:460px!important}
  .india-map-bg{inset:52px 34px 65px 34px!important}
  .map-caption{align-items:flex-start!important;flex-direction:column}
}
@media(max-width:640px){
  .section,.page-section{padding-block:42px}
  .page-hero{padding-block:42px}
  .panel-card,.form-shell,.hero-side-card,.verification-info-card{padding:18px!important}
  .feature-card,.service-tile,.notice-card,.flow-step-card,.job-card,.network-card,.home-resource-card{padding:17px!important}
  .form-grid{gap:13px!important}
  .india-map-shell{min-height:390px!important}
  .india-map-bg{inset:55px 12px 72px 12px!important}
  .map-kicker{left:12px;top:12px;font-size:9px;padding:7px 9px}
  .map-stats{left:12px;bottom:12px;max-width:210px;padding:10px 11px}
  .pin-label{display:none!important}
  .pin-dot{width:11px!important;height:11px!important;border-width:3px!important}
  .route-one,.route-two{display:none}
  h1{font-size:2.35rem}
  h2{font-size:1.75rem}
}


/* ===== CLEAN DESKTOP NAVIGATION — FINAL OVERRIDE ===== */
@media (min-width: 1121px) {
  .site-header {
    background: #fff;
    border-bottom: 1px solid rgba(17, 49, 91, .08);
    box-shadow: 0 8px 24px rgba(7, 26, 51, .05);
  }

  .site-header .navbar,
  .bfs-navbar {
    width: min(1520px, calc(100% - 40px));
    min-height: 78px !important;
    margin-inline: auto;
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px !important;
    overflow: visible;
  }

  .brand {
    min-width: 0;
    gap: 12px;
  }

  .brand-logo {
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
  }

  .brand-copy strong {
    display: block;
    font-size: 16px;
    line-height: 1.15;
    white-space: nowrap;
  }

  .brand-copy small {
    margin-top: 5px;
    font-size: 9px;
    letter-spacing: .17em;
    white-space: nowrap;
  }

  .simple-main-nav.premium-text-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    min-width: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  .simple-main-nav .nav-item {
    position: relative;
    display: flex;
    align-items: center;
  }

  .simple-main-nav .nav-link {
    position: relative;
    min-height: 50px;
    padding: 0 12px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: #17263b;
    font-size: 14px;
    font-weight: 750;
    letter-spacing: -.01em;
    white-space: nowrap;
    cursor: pointer;
    transition: background .18s ease, color .18s ease;
  }

  .simple-main-nav .nav-link::after {
    content: "";
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 3px;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--blue-600), var(--red-500));
    opacity: 0;
    transform: scaleX(.5);
    transition: opacity .18s ease, transform .18s ease;
  }

  .simple-main-nav .nav-link:hover,
  .simple-main-nav .nav-link.active,
  .simple-dropdown-item.open > .nav-link {
    color: var(--blue-700);
    background: #f1f6fc;
  }

  .simple-main-nav .nav-link:hover::after,
  .simple-main-nav .nav-link.active::after,
  .simple-dropdown-item.open > .nav-link::after {
    opacity: 1;
    transform: scaleX(1);
  }

  .simple-main-nav .nav-link svg {
    width: 13px;
    height: 13px;
    margin-left: 1px;
    transition: transform .18s ease;
  }

  .simple-dropdown-item.open > .nav-link svg {
    transform: rotate(180deg);
  }

  .nav-actions {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
  }

  .desktop-student-login {
    min-height: 48px;
    padding: 0 18px !important;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 800;
    box-shadow: 0 10px 24px rgba(220, 55, 50, .16);
  }

  .simple-dropdown-menu {
    position: absolute;
    top: calc(100% + 9px);
    left: 0;
    width: 292px;
    max-height: min(70vh, 560px);
    overflow-y: auto;
    padding: 8px;
    border: 1px solid rgba(23, 67, 119, .12);
    border-top: 3px solid var(--blue-600);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 22px 50px rgba(7, 26, 51, .16);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(6px);
    transition: opacity .16s ease, visibility .16s ease, transform .16s ease;
    z-index: 1000;
  }

  .simple-dropdown-item:nth-last-child(-n+2) .simple-dropdown-menu {
    left: auto;
    right: 0;
  }

  .simple-dropdown-item:hover .simple-dropdown-menu {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  .simple-dropdown-item.open .simple-dropdown-menu,
  .simple-dropdown-item.open:hover .simple-dropdown-menu,
  .simple-dropdown-item:focus-within .simple-dropdown-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }

  .dropdown-cap {
    padding: 8px 10px 10px;
    margin-bottom: 4px;
    border-bottom: 1px solid rgba(23, 67, 119, .08);
  }

  .dropdown-cap span {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .11em;
    color: var(--blue-800);
  }

  .dropdown-cap small {
    font-size: 9px;
    color: var(--muted);
  }

  .simple-dropdown-link {
    display: grid;
    grid-template-columns: 34px minmax(0,1fr) 12px;
    align-items: center;
    gap: 10px;
    min-height: 48px;
    padding: 8px 10px;
    border-radius: 8px;
    color: var(--ink);
    transition: background .16s ease, transform .16s ease;
  }

  .simple-dropdown-link:hover {
    background: var(--blue-50);
    transform: translateX(2px);
  }

  .simple-dropdown-icon {
    width: 34px;
    height: 34px;
    border-radius: 8px;
  }

  .simple-dropdown-link strong {
    font-size: 13px;
    line-height: 1.3;
    margin: 0;
  }

  .compact-dropdown .menu-arrow {
    width: 11px;
    height: 11px;
  }
}

@media (min-width: 1121px) and (max-width: 1380px) {
  .site-header .navbar,
  .bfs-navbar {
    width: calc(100% - 24px);
    grid-template-columns: 205px minmax(0, 1fr) auto;
    gap: 10px !important;
  }

  .brand-logo {
    width: 48px;
    height: 48px;
    flex-basis: 48px;
  }

  .brand-copy strong {
    font-size: 14px;
  }

  .brand-copy small {
    font-size: 8px;
    letter-spacing: .12em;
  }

  .simple-main-nav .nav-link {
    padding: 0 8px;
    font-size: 12px;
  }

  .simple-main-nav .nav-link::after {
    left: 8px;
    right: 8px;
  }

  .desktop-student-login {
    min-height: 46px;
    padding: 0 14px !important;
    font-size: 13px;
  }
}

/* ===== FAQ DESIGN RESTORE — SCOPED ONLY TO FAQ COMPONENTS ===== */
.faq-wrap,
.faq-list {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.faq-wrap .faq-item,
.faq-list .faq-item {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  overflow: visible !important;
}

.faq-wrap .faq-item:first-child,
.faq-list .faq-item:first-child {
  border-top: 1px solid var(--line) !important;
}

.faq-wrap .faq-item:hover,
.faq-list .faq-item:hover {
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

.faq-wrap .faq-button,
.faq-list .faq-button {
  width: 100% !important;
  min-height: 0 !important;
  padding: 20px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  color: var(--ink) !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  text-align: left !important;
}

.faq-wrap .faq-button:hover,
.faq-list .faq-button:hover {
  color: var(--blue-700) !important;
  background: transparent !important;
  transform: none !important;
}

.faq-wrap .faq-button span,
.faq-list .faq-button span {
  width: 34px !important;
  height: 34px !important;
  flex: 0 0 34px !important;
  border-radius: 10px !important;
  display: grid !important;
  place-items: center !important;
  color: var(--blue-700) !important;
  background: var(--blue-100) !important;
  box-shadow: none !important;
  transition: color .2s ease, background .2s ease, transform .2s ease !important;
}

.faq-wrap .faq-button svg,
.faq-list .faq-button svg {
  width: 17px !important;
  height: 17px !important;
}

.faq-wrap .faq-item.open .faq-button span,
.faq-list .faq-item.open .faq-button span {
  color: #fff !important;
  background: var(--blue-700) !important;
  transform: rotate(45deg) !important;
}

.faq-wrap .faq-answer,
.faq-list .faq-answer {
  max-height: 0;
  overflow: hidden !important;
  background: transparent !important;
  transition: max-height .3s ease !important;
}

.faq-wrap .faq-answer p,
.faq-list .faq-answer p {
  margin: 0 !important;
  padding: 0 52px 20px 0 !important;
  color: var(--muted) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

@media (max-width: 640px) {
  .faq-wrap .faq-button,
  .faq-list .faq-button {
    padding: 17px 0 !important;
    gap: 14px !important;
    font-size: 14px !important;
  }

  .faq-wrap .faq-button span,
  .faq-list .faq-button span {
    width: 32px !important;
    height: 32px !important;
    flex-basis: 32px !important;
  }

  .faq-wrap .faq-answer p,
  .faq-list .faq-answer p {
    padding-right: 42px !important;
    font-size: 13.5px !important;
  }
}

/* ===== DESKTOP NAV TEXT & ALIGNMENT MICRO-FIX ===== */
@media (min-width: 1121px) {
  .site-header .navbar,
  .bfs-navbar {
    grid-template-columns: 272px minmax(0, 1fr) auto;
    gap: 12px !important;
  }

  .brand {
    width: 272px;
    min-width: 272px;
  }

  .brand-copy {
    min-width: 0;
  }

  .brand-copy strong {
    max-width: none;
    overflow: visible;
    text-overflow: clip;
    font-size: 15.5px;
    font-weight: 700;
    letter-spacing: -.015em;
  }

  .brand-copy small {
    font-size: 9px;
    letter-spacing: .15em;
  }

  .simple-main-nav.premium-text-nav {
    justify-content: center;
    gap: 0;
  }

  .simple-main-nav .nav-item {
    flex: 0 0 auto;
  }

  .simple-main-nav .nav-link {
    min-height: 48px;
    padding: 0 10px;
    gap: 7px;
    font-size: 13.5px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
  }

  .simple-main-nav .nav-link::after {
    left: 10px;
    right: 10px;
  }

  .simple-main-nav .nav-link svg {
    flex: 0 0 auto;
    margin-left: 0;
  }

  .desktop-student-login {
    min-width: 170px;
    justify-content: center;
    padding-inline: 17px !important;
    font-size: 13.5px;
    line-height: 1;
    white-space: nowrap;
  }
}

@media (min-width: 1121px) and (max-width: 1450px) {
  .site-header .navbar,
  .bfs-navbar {
    grid-template-columns: 220px minmax(0, 1fr) auto;
    width: calc(100% - 20px);
    gap: 8px !important;
  }

  .brand {
    width: 220px;
    min-width: 220px;
  }

  .brand-copy strong {
    font-size: 13.5px;
  }

  .brand-copy small {
    font-size: 7.5px;
    letter-spacing: .11em;
  }

  .simple-main-nav .nav-link {
    padding: 0 7px;
    gap: 5px;
    font-size: 11.7px;
  }

  .simple-main-nav .nav-link::after {
    left: 7px;
    right: 7px;
  }

  .desktop-student-login {
    min-width: 145px;
    padding-inline: 12px !important;
    font-size: 12px;
  }
}


/* ===== V4 HOMEPAGE REFINEMENTS: OLD DESIGN PRESERVED ===== */
@media (min-width:1121px){
  .site-header .navbar,.bfs-navbar{min-height:76px!important;grid-template-columns:250px minmax(0,1fr) auto!important;gap:10px!important;width:min(1480px,calc(100% - 28px))!important}
  .brand{width:250px!important;min-width:250px!important}
  .simple-main-nav.premium-text-nav{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;gap:1px!important}
  .simple-main-nav .nav-link{min-height:44px!important;padding:0 9px!important;border-radius:8px!important;font-size:12.5px!important;font-weight:700!important}
  .simple-main-nav .nav-link::after{height:2px!important;left:9px!important;right:9px!important;bottom:2px!important;background:var(--blue-600)!important}
  .desktop-student-login{min-width:150px!important;min-height:44px!important;border-radius:9px!important;font-size:12.5px!important;box-shadow:0 8px 20px rgba(220,55,50,.13)!important}
}
@media (min-width:1121px) and (max-width:1320px){
  .site-header .navbar,.bfs-navbar{grid-template-columns:190px minmax(0,1fr) auto!important;width:calc(100% - 18px)!important;gap:6px!important}
  .brand{width:190px!important;min-width:190px!important}.brand-copy{display:none!important}
  .simple-main-nav .nav-link{padding:0 7px!important;font-size:11.4px!important;gap:4px!important}.desktop-student-login{min-width:132px!important;padding-inline:11px!important}
}

.bfs-home-franchise{position:relative;overflow:hidden;background:linear-gradient(180deg,#f7faff 0%,#fff 100%)}
.bfs-home-franchise::before{content:"";position:absolute;width:440px;height:440px;border-radius:50%;right:-230px;top:-220px;background:radial-gradient(circle,rgba(39,107,177,.11),rgba(39,107,177,0) 68%);pointer-events:none}
.franchise-home-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:26px}.franchise-home-head>div:first-child{max-width:760px}.franchise-home-head h2{margin:7px 0 8px}.franchise-open-badge{flex:0 0 auto;min-width:195px;padding:12px 14px;border:1px solid #cfe1f4;border-radius:12px;background:#fff;box-shadow:0 10px 28px rgba(13,53,98,.07);display:grid;grid-template-columns:10px 1fr;column-gap:9px;align-items:center}.franchise-open-badge>span{width:9px;height:9px;border-radius:50%;background:#2a9b68;box-shadow:0 0 0 5px rgba(42,155,104,.12);grid-row:1/3}.franchise-open-badge strong{font-size:12px;color:#153d6c}.franchise-open-badge small{font-size:10px;color:var(--muted)}
.franchise-home-layout{display:grid;grid-template-columns:minmax(350px,.9fr) minmax(0,1.25fr);gap:24px;align-items:stretch}.franchise-home-visual{min-height:480px;border-radius:18px;padding:18px;color:#fff;background:linear-gradient(145deg,#082c57,#15548f 58%,#2a73b8);box-shadow:0 24px 55px rgba(10,46,88,.2);display:flex;flex-direction:column;overflow:hidden;position:relative}.franchise-home-visual::after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-90px;bottom:-100px;border:38px solid rgba(255,255,255,.06)}.franchise-visual-top{display:grid;grid-template-columns:46px 1fr auto;gap:11px;align-items:center;position:relative;z-index:2}.franchise-visual-icon{width:46px;height:46px;border-radius:12px;background:rgba(255,255,255,.13);display:grid;place-items:center}.franchise-visual-icon svg{width:23px;height:23px}.franchise-visual-top small{display:block;color:#cfe2f6;font-size:9px;letter-spacing:.14em;font-weight:800}.franchise-visual-top strong{display:block;font-size:15px;margin-top:2px}.franchise-verified{display:flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.12);font-size:10px;font-weight:800}.franchise-verified svg{width:13px;height:13px}
.franchise-city-map{position:relative;flex:1;min-height:300px;margin:18px 0;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:radial-gradient(circle at center,rgba(255,255,255,.12),rgba(255,255,255,.03) 48%,rgba(255,255,255,.01));overflow:hidden}.franchise-map-ring{position:absolute;left:50%;top:50%;border:1px dashed rgba(255,255,255,.22);border-radius:50%;transform:translate(-50%,-50%)}.ring-one{width:220px;height:220px}.ring-two{width:330px;height:330px}.franchise-map-centre{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:130px;height:130px;border-radius:50%;display:grid;place-items:center;text-align:center;background:#fff;color:#0a2e58;box-shadow:0 18px 40px rgba(2,18,39,.25);z-index:3}.franchise-map-centre img{width:50px;height:50px;object-fit:contain}.franchise-map-centre strong{font-size:11px;line-height:1.2;margin-top:-12px}.franchise-city{position:absolute;display:flex;align-items:center;gap:6px;font-size:10px;font-weight:800;color:#e7f2fd;z-index:4}.franchise-city i{width:10px;height:10px;border-radius:50%;background:#ff5c5c;border:3px solid rgba(255,255,255,.7);box-shadow:0 0 0 5px rgba(255,92,92,.12);animation:franchisePinPulse 2.4s ease-in-out infinite}.city-a{left:15%;top:22%}.city-b{right:12%;top:25%}.city-c{left:11%;bottom:22%}.city-d{right:13%;bottom:20%}.city-e{right:8%;top:50%}.city-b i{animation-delay:.4s}.city-c i{animation-delay:.8s}.city-d i{animation-delay:1.2s}.city-e i{animation-delay:1.6s}@keyframes franchisePinPulse{0%,100%{transform:scale(.9);box-shadow:0 0 0 4px rgba(255,92,92,.1)}50%{transform:scale(1.15);box-shadow:0 0 0 9px rgba(255,92,92,.02)}}
.franchise-visual-bottom{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:relative;z-index:2}.franchise-visual-bottom>div{padding:11px 12px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(255,255,255,.08)}.franchise-visual-bottom strong{display:block;font-size:11px}.franchise-visual-bottom small{display:block;color:#cfe2f6;font-size:9px;margin-top:3px;line-height:1.4}
.franchise-home-content{padding:4px 0}.franchise-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.franchise-feature{min-height:92px;padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff;display:grid;grid-template-columns:40px 1fr;gap:11px;align-items:start;box-shadow:0 8px 22px rgba(10,46,88,.045)}.franchise-feature>span{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:#eaf3fd;color:var(--blue-700)}.franchise-feature:nth-child(2n)>span{background:#fff0f0;color:#c63a3f}.franchise-feature svg{width:20px;height:20px}.franchise-feature strong{display:block;font-size:12px;color:#153d6c}.franchise-feature small{display:block;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.45}
.franchise-requirement-line{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin-top:14px;padding:12px 14px;border-radius:12px;background:#f5f9fd;border:1px solid #dbe7f3}.franchise-requirement-line strong{font-size:11px;color:#133c6a;margin-right:2px}.franchise-requirement-line span{display:flex;align-items:center;gap:5px;font-size:10px;color:#5f728a}.franchise-requirement-line svg{width:12px;height:12px;color:#20865a}
.franchise-mini-process{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:8px;margin-top:15px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}.franchise-mini-process div{display:flex;align-items:center;gap:7px}.franchise-mini-process b{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#0a2e58;color:#fff;font-size:9px}.franchise-mini-process span{font-size:10px;font-weight:800;color:#3e5877}.franchise-mini-process i{height:1px;background:linear-gradient(90deg,#bfd3e8,#e7eef6)}
.franchise-home-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}.franchise-home-actions .btn{min-height:42px;font-size:11px}.franchise-home-actions .btn svg{width:13px;height:13px}.franchise-track-link{font-size:10px;font-weight:800;color:var(--blue-700);text-decoration:underline;text-underline-offset:3px;margin-left:auto}

.student-update-strip{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 16px 14px;padding:9px 11px;border:1px solid #d7e5f3;border-radius:10px;background:linear-gradient(90deg,#f7fbff,#fff);overflow:hidden}.student-update-label{display:flex;align-items:center;gap:7px;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#174f87;white-space:nowrap}.student-update-label i{width:7px;height:7px;border-radius:50%;background:#e43b3b;box-shadow:0 0 0 5px rgba(228,59,59,.1);animation:studentLivePulse 1.8s ease-in-out infinite}.student-update-window{min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}.student-update-track{display:flex;align-items:center;width:max-content;animation:studentUpdateMove 30s linear infinite}.student-update-track span{position:relative;padding:0 26px 0 15px;font-size:10px;color:#60738a;white-space:nowrap}.student-update-track span::before{content:"";position:absolute;left:0;top:50%;width:4px;height:4px;border-radius:50%;background:#2d72b7;transform:translateY(-50%)}.student-update-track b{color:#173f6c}.student-update-strip:hover .student-update-track{animation-play-state:paused}.student-update-strip>a{font-size:9px;font-weight:900;color:var(--blue-700);white-space:nowrap}.hub-content-top .hub-chip{animation:profileChipFloat 3.4s ease-in-out infinite}@keyframes studentUpdateMove{to{transform:translateX(-50%)}}@keyframes studentLivePulse{50%{transform:scale(1.25);box-shadow:0 0 0 8px rgba(228,59,59,0)}}@keyframes profileChipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}

@media(max-width:980px){.franchise-home-layout{grid-template-columns:1fr}.franchise-home-visual{min-height:430px}.franchise-home-head{align-items:flex-start}.student-update-strip{margin-inline:12px}}
@media(max-width:680px){.franchise-home-head{display:block}.franchise-open-badge{margin-top:14px;max-width:230px}.franchise-home-visual{min-height:390px;padding:14px}.franchise-visual-top{grid-template-columns:42px 1fr}.franchise-verified{grid-column:2;justify-self:start}.franchise-city-map{min-height:245px}.ring-two{width:280px;height:280px}.franchise-feature-grid{grid-template-columns:1fr}.franchise-feature{min-height:0}.franchise-mini-process{grid-template-columns:1fr 1fr;gap:8px}.franchise-mini-process i{display:none}.franchise-mini-process div{padding:7px;border:1px solid #edf1f6;border-radius:9px}.franchise-track-link{width:100%;margin-left:0}.student-update-strip{grid-template-columns:auto minmax(0,1fr);margin:0 10px 12px;padding:8px}.student-update-strip>a{display:none}.student-update-label{font-size:8px}.student-update-track span{font-size:9px;padding-right:20px}.franchise-visual-bottom{grid-template-columns:1fr}.franchise-map-centre{width:110px;height:110px}}
@media(prefers-reduced-motion:reduce){.student-update-track,.student-update-label i,.hub-content-top .hub-chip,.franchise-city i{animation:none!important}}

/* ===== V19 GLOBAL BUTTON SYSTEM — unified premium pill buttons ===== */
.btn,
.course-footer a,
a.btn,
button.btn{
  position:relative;
  overflow:hidden;
  min-height:52px;
  padding:0 24px;
  border-radius:999px;
  border:1px solid transparent;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-weight:800;
  letter-spacing:.01em;
  transition:transform .24s ease,box-shadow .24s ease,background .24s ease,border-color .24s ease,color .24s ease;
}
.btn::before,
.course-footer a::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(110deg,transparent 18%,rgba(255,255,255,.18) 50%,transparent 82%);
  transform:translateX(-130%);
  transition:transform .55s ease;
}
.btn:hover::before,
.course-footer a:hover::before{transform:translateX(130%)}
.btn:hover,
.course-footer a:hover{transform:translateY(-2px)}
.btn-primary,
.course-footer a{
  color:#fff;
  background:linear-gradient(135deg,#103d6f 0%,#1a5f9f 60%,#2b74bc 100%);
  box-shadow:0 14px 30px rgba(19,83,145,.22);
}
.btn-primary:hover,
.course-footer a:hover{box-shadow:0 20px 38px rgba(19,83,145,.30)}
.btn-red{
  color:#fff;
  background:linear-gradient(135deg,#b9272c 0%,#d93038 55%,#ea5a50 100%);
  box-shadow:0 14px 30px rgba(201,48,56,.22);
}
.btn-red:hover{box-shadow:0 20px 38px rgba(201,48,56,.30)}
.btn-light{
  color:#16365c;
  background:#fff;
  border-color:#cfdceb;
  box-shadow:0 10px 24px rgba(15,35,64,.08);
}
.btn-light:hover{border-color:#9ebce0;box-shadow:0 16px 30px rgba(15,35,64,.12)}
.btn-dark{
  color:#fff;
  background:linear-gradient(135deg,#0b2747,#12385f);
  box-shadow:0 14px 28px rgba(12,38,71,.24);
}
.btn-dark:hover{box-shadow:0 20px 36px rgba(12,38,71,.32)}
.btn-sm{min-height:44px;padding:0 18px;font-size:13px}
@media (max-width:580px){
  .btn,
  .course-footer a,
  a.btn,
  button.btn{min-height:48px;padding:0 20px}
}

/* =====================================================================
   SOURCE: assets/exam.css
   ===================================================================== */
/* BFS Education Institute — assessment and process UI */
.exam-hero {
  position: relative;
  overflow: hidden;
  padding: 68px 0 54px;
  background:
    radial-gradient(circle at 84% 15%, rgba(79,134,198,.22), transparent 30%),
    radial-gradient(circle at 8% 92%, rgba(223,62,56,.10), transparent 26%),
    linear-gradient(135deg, #f8fbff, #edf5ff 60%, #fff7f6);
  border-bottom: 1px solid var(--line);
}
.exam-hero::after {
  content:"";
  position:absolute;
  inset:auto -10% -180px auto;
  width:420px;
  height:420px;
  border-radius:50%;
  border:70px solid rgba(31,89,150,.05);
}
.exam-hero-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr); gap:40px; align-items:center; }
.exam-kicker { display:inline-flex; align-items:center; gap:9px; padding:8px 12px; border:1px solid rgba(31,89,150,.14); border-radius:7px; color:var(--blue-800); background:rgba(255,255,255,.78); font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.exam-kicker svg { width:17px; height:17px; }
.exam-hero h1 { max-width:850px; margin:18px 0 16px; font-size:clamp(38px,5vw,66px); }
.exam-hero p { max-width:720px; color:#53657b; font-size:17px; }
.exam-hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:26px; }
.exam-summary-card { position:relative; z-index:1; padding:24px; border:1px solid rgba(31,89,150,.13); border-radius:7px; background:rgba(255,255,255,.92); box-shadow:0 24px 70px rgba(7,26,51,.12); }
.exam-summary-head { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; padding-bottom:17px; border-bottom:1px solid var(--line); }
.exam-summary-head h3 { margin:0 0 5px; font-size:21px; }
.exam-summary-head small { color:var(--muted); }
.exam-status-badge { padding:7px 10px; border-radius:7px; color:var(--success); background:#e8f7f1; font-size:11px; font-weight:800; }
.exam-summary-list { display:grid; gap:12px; margin-top:17px; }
.exam-summary-item { display:grid; grid-template-columns:42px 1fr auto; gap:12px; align-items:center; padding:12px; border-radius:7px; background:var(--blue-50); }
.exam-summary-item .icon-box { width:42px; height:42px; }
.exam-summary-item strong { display:block; color:var(--ink); font-size:13px; }
.exam-summary-item small { display:block; color:var(--muted); font-size:11px; }
.exam-summary-item b { color:var(--blue-800); font-size:12px; }

.exam-service-nav { position:sticky; top:84px; z-index:50; background:rgba(255,255,255,.94); backdrop-filter:blur(16px); border-bottom:1px solid var(--line); }
.exam-service-track { display:flex; gap:8px; overflow-x:auto; scrollbar-width:none; padding:11px 0; }
.exam-service-track::-webkit-scrollbar { display:none; }
.exam-service-link { flex:0 0 auto; display:inline-flex; align-items:center; gap:8px; min-height:40px; padding:9px 13px; border:1px solid var(--line); border-radius:7px; color:#34455e; background:#fff; font-size:12px; font-weight:760; }
.exam-service-link:hover,.exam-service-link.active { color:var(--blue-800); border-color:var(--blue-300); background:var(--blue-50); }
.exam-service-link svg { width:16px; height:16px; }

.exam-section { padding:72px 0; }
.exam-section.surface { background:var(--surface); }
.exam-title-row { display:flex; justify-content:space-between; align-items:end; gap:28px; margin-bottom:28px; }
.exam-title-row h2 { margin:0 0 9px; }
.exam-title-row p { max-width:760px; margin:0; color:var(--muted); }
.exam-actions { display:flex; gap:9px; flex-wrap:wrap; }
.exam-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.exam-feature-card { position:relative; min-height:245px; padding:22px; overflow:hidden; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); transition:.22s ease; }
.exam-feature-card::before { content:""; position:absolute; left:0; top:0; width:100%; height:4px; background:linear-gradient(90deg,var(--blue-600),var(--red-500)); }
.exam-feature-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-sm); }
.exam-feature-card h3 { margin:18px 0 8px; font-size:18px; }
.exam-feature-card p { min-height:64px; color:var(--muted); font-size:12px; }
.exam-feature-card footer { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:18px; padding-top:14px; border-top:1px solid var(--line); }
.exam-feature-card footer span { color:var(--blue-700); font-size:11px; font-weight:800; }
.exam-feature-card footer a { display:inline-flex; align-items:center; gap:6px; color:var(--red-600); font-size:11px; font-weight:800; }
.exam-feature-card footer svg { width:14px; height:14px; }

.exam-process-line { position:relative; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:13px; margin-top:28px; }
.exam-process-line::before { content:""; position:absolute; left:7%; right:7%; top:29px; height:2px; background:linear-gradient(90deg,var(--blue-300),var(--red-100)); }
.exam-process-step { position:relative; z-index:1; text-align:center; }
.exam-process-number { width:58px; height:58px; margin:0 auto 14px; border:8px solid #fff; border-radius:50%; display:grid; place-items:center; color:#fff; background:var(--blue-700); box-shadow:0 0 0 1px var(--blue-100),0 8px 20px rgba(31,89,150,.18); font-weight:850; }
.exam-process-step:nth-child(even) .exam-process-number { background:var(--red-500); }
.exam-process-step h3 { margin:0 0 5px; font-size:14px; }
.exam-process-step p { margin:0; color:var(--muted); font-size:11px; }

.test-toolbar { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:24px; padding:14px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.test-filter-tabs { display:flex; gap:8px; overflow-x:auto; scrollbar-width:none; }
.test-filter-tabs::-webkit-scrollbar { display:none; }
.test-filter-btn { flex:0 0 auto; min-height:40px; padding:8px 14px; border:1px solid var(--line); border-radius:7px; color:#42536a; background:#fff; font-size:12px; font-weight:760; }
.test-filter-btn.active { color:#fff; border-color:var(--blue-700); background:var(--blue-700); }
.test-count { color:var(--muted); font-size:12px; }
.test-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.test-card { position:relative; padding:22px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.test-card[hidden] { display:none; }
.test-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.test-type { display:inline-flex; align-items:center; gap:6px; padding:6px 9px; border-radius:7px; color:var(--blue-800); background:var(--blue-100); font-size:10px; font-weight:820; text-transform:uppercase; letter-spacing:.06em; }
.test-level { color:var(--success); font-size:10px; font-weight:800; }
.test-card h3 { margin:17px 0 7px; font-size:19px; }
.test-card p { color:var(--muted); font-size:12px; }
.test-meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin:18px 0; }
.test-meta div { padding:10px; border-radius:7px; background:var(--surface); }
.test-meta strong { display:block; color:var(--ink); font-size:13px; }
.test-meta span { display:block; margin-top:3px; color:var(--muted); font-size:9px; }
.test-card-footer { display:flex; gap:8px; }
.test-card-footer .btn { flex:1; }

.instruction-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:24px; align-items:start; }
.instruction-card { padding:25px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.instruction-card + .instruction-card { margin-top:16px; }
.instruction-card h2,.instruction-card h3 { margin-bottom:13px; }
.rule-list { display:grid; gap:11px; margin:0; padding:0; list-style:none; }
.rule-list li { display:grid; grid-template-columns:32px 1fr; gap:11px; align-items:start; padding:11px; border-radius:7px; background:var(--surface); }
.rule-list li > span:first-child { width:32px; height:32px; border-radius:7px; display:grid; place-items:center; color:#fff; background:var(--blue-700); font-size:11px; font-weight:800; }
.rule-list strong { display:block; color:var(--ink); font-size:12px; }
.rule-list small { display:block; margin-top:2px; color:var(--muted); font-size:10px; }
.device-check { display:grid; gap:10px; }
.device-check-row { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px; border:1px solid var(--line); border-radius:7px; }
.device-check-row span { display:flex; align-items:center; gap:9px; color:var(--ink); font-size:12px; font-weight:700; }
.device-check-row svg { width:17px; height:17px; color:var(--blue-700); }
.device-check-row b { color:var(--success); font-size:10px; }
.declaration-box { margin-top:14px; padding:13px; border:1px solid var(--blue-100); border-radius:7px; background:var(--blue-50); }
.declaration-box label { display:flex; gap:9px; align-items:flex-start; font-size:11px; }

.online-exam-page { background:#f2f6fb; }
.online-exam-page .site-header,.online-exam-page .topbar,.online-exam-page footer,.online-exam-page .mobile-bottom,.online-exam-page .quick-contact-rail { display:none!important; }
.exam-app { min-height:100vh; display:flex; flex-direction:column; }
.exam-app-top { position:sticky; top:0; z-index:100; display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:72px; padding:12px 24px; color:#fff; background:linear-gradient(120deg,var(--blue-950),var(--blue-800)); box-shadow:0 10px 30px rgba(7,26,51,.18); }
.exam-app-brand { display:flex; align-items:center; gap:11px; }
.exam-app-brand img { width:44px; height:44px; border-radius:50%; background:#fff; }
.exam-app-brand strong,.exam-app-brand small { display:block; }
.exam-app-brand small { color:rgba(255,255,255,.66); font-size:10px; }
.exam-app-meta { display:flex; align-items:center; gap:14px; }
.timer-box { min-width:110px; padding:8px 12px; border:1px solid rgba(255,255,255,.18); border-radius:7px; text-align:center; background:rgba(255,255,255,.08); }
.timer-box span { display:block; color:rgba(255,255,255,.65); font-size:9px; text-transform:uppercase; letter-spacing:.09em; }
.timer-box strong { color:#fff; font-size:20px; }
.exam-app-grid { flex:1; display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:18px; width:min(1440px,calc(100% - 32px)); margin:18px auto; }
.exam-question-card { display:flex; flex-direction:column; min-height:680px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-sm); }
.exam-question-head { display:flex; justify-content:space-between; gap:18px; padding:18px 22px; border-bottom:1px solid var(--line); }
.exam-question-head span { color:var(--blue-700); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.exam-question-head b { color:var(--muted); font-size:11px; }
.exam-question-body { flex:1; padding:28px; }
.exam-question-body h2 { max-width:900px; font-size:24px; line-height:1.4; }
.exam-question-note { margin:12px 0 22px; color:var(--muted); font-size:12px; }
.exam-options { display:grid; gap:12px; }
.exam-option { position:relative; display:grid; grid-template-columns:38px 1fr; gap:12px; align-items:center; padding:15px; border:1px solid var(--line); border-radius:7px; background:#fff; cursor:pointer; transition:.18s ease; }
.exam-option:hover { border-color:var(--blue-300); background:var(--blue-50); }
.exam-option.selected { border-color:var(--blue-600); background:#eef6ff; box-shadow:0 0 0 2px rgba(46,111,180,.08); }
.exam-option input { position:absolute; opacity:0; pointer-events:none; }
.exam-option-letter { width:38px; height:38px; border-radius:7px; display:grid; place-items:center; color:var(--blue-800); background:var(--blue-100); font-weight:800; }
.exam-option.selected .exam-option-letter { color:#fff; background:var(--blue-700); }
.exam-question-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 22px; border-top:1px solid var(--line); }
.exam-question-actions > div { display:flex; gap:8px; flex-wrap:wrap; }
.exam-sidebar { display:grid; gap:14px; align-content:start; }
.exam-sidebar-card { padding:17px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.exam-sidebar-card h3 { margin:0 0 12px; font-size:15px; }
.palette-legend { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin-bottom:13px; }
.palette-legend span { display:flex; align-items:center; gap:6px; color:var(--muted); font-size:9px; }
.palette-legend i { width:12px; height:12px; border-radius:3px; background:#edf1f6; }
.palette-legend .answered i { background:var(--success); }
.palette-legend .review i { background:var(--warning); }
.palette-legend .current i { background:var(--blue-600); }
.question-palette { display:grid; grid-template-columns:repeat(5,1fr); gap:7px; }
.palette-btn { height:38px; border:0; border-radius:7px; color:#42536a; background:#edf1f6; font-size:11px; font-weight:800; }
.palette-btn.current { color:#fff; background:var(--blue-600); }
.palette-btn.answered { color:#fff; background:var(--success); }
.palette-btn.review { color:#fff; background:var(--warning); }
.exam-profile-mini { display:grid; grid-template-columns:46px 1fr; gap:11px; align-items:center; }
.exam-profile-mini span { width:46px; height:46px; border-radius:7px; display:grid; place-items:center; color:#fff; background:var(--blue-800); font-weight:800; }
.exam-profile-mini strong,.exam-profile-mini small { display:block; }
.exam-profile-mini small { color:var(--muted); font-size:10px; }
.exam-progress-line { height:7px; overflow:hidden; border-radius:999px; background:#eaf0f7; }
.exam-progress-line span { display:block; height:100%; width:5%; border-radius:inherit; background:linear-gradient(90deg,var(--blue-600),var(--red-500)); transition:.2s ease; }
.exam-submit-modal { position:fixed; inset:0; z-index:1000; display:none; place-items:center; padding:20px; background:rgba(7,26,51,.68); backdrop-filter:blur(8px); }
.exam-submit-modal.open { display:grid; }
.exam-modal-card { width:min(520px,100%); padding:25px; border-radius:7px; background:#fff; box-shadow:var(--shadow-lg); }
.exam-modal-card h2 { font-size:26px; }
.exam-modal-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; margin:18px 0; }
.exam-modal-stats div { padding:12px; border-radius:7px; text-align:center; background:var(--surface); }
.exam-modal-stats strong { display:block; color:var(--ink); font-size:20px; }
.exam-modal-stats span { color:var(--muted); font-size:9px; }

.result-hero-card { display:grid; grid-template-columns:240px 1fr; gap:28px; padding:28px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-sm); }
.score-ring { --score:82; width:190px; height:190px; margin:auto; border-radius:50%; display:grid; place-items:center; background:conic-gradient(var(--blue-600) calc(var(--score)*1%), #e8eef5 0); }
.score-ring::before { content:""; position:absolute; width:150px; height:150px; border-radius:50%; background:#fff; }
.score-ring > div { position:relative; z-index:1; text-align:center; }
.score-ring strong { display:block; color:var(--blue-900); font-size:46px; line-height:1; }
.score-ring span { color:var(--muted); font-size:10px; }
.result-status { display:inline-flex; padding:7px 11px; border-radius:7px; color:var(--success); background:#e8f7f1; font-size:11px; font-weight:850; }
.result-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:20px; }
.result-metric { padding:13px; border-radius:7px; background:var(--surface); }
.result-metric strong { display:block; color:var(--ink); font-size:19px; }
.result-metric span { display:block; color:var(--muted); font-size:9px; }
.analysis-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:18px; }
.analysis-card { padding:22px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.topic-row { display:grid; grid-template-columns:150px 1fr 52px; gap:12px; align-items:center; margin-top:13px; }
.topic-row span { color:var(--ink); font-size:11px; font-weight:700; }
.topic-row b { color:var(--blue-800); font-size:11px; text-align:right; }
.topic-bar { height:8px; border-radius:999px; background:#edf1f6; overflow:hidden; }
.topic-bar i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--blue-600),var(--red-500)); }
.result-next-list { display:grid; gap:10px; }
.result-next-list a { display:grid; grid-template-columns:40px 1fr auto; gap:10px; align-items:center; padding:11px; border-radius:7px; background:var(--surface); }
.result-next-list strong { display:block; color:var(--ink); font-size:12px; }
.result-next-list small { display:block; color:var(--muted); font-size:9px; }
.result-next-list svg { width:15px; height:15px; color:var(--blue-700); }

.review-filter-bar { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:18px; }
.review-filter-btn { min-height:40px; padding:8px 13px; border:1px solid var(--line); border-radius:7px; color:#42536a; background:#fff; font-size:11px; font-weight:780; }
.review-filter-btn.active { color:#fff; border-color:var(--blue-700); background:var(--blue-700); }
.review-question-list { display:grid; gap:14px; }
.review-question { padding:20px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.review-question[hidden] { display:none; }
.review-question-head { display:flex; justify-content:space-between; gap:16px; }
.review-question-head span { color:var(--blue-700); font-size:10px; font-weight:820; text-transform:uppercase; }
.review-state { padding:6px 9px; border-radius:7px; font-size:9px; font-weight:820; }
.review-state.correct { color:var(--success); background:#e8f7f1; }
.review-state.incorrect { color:var(--red-600); background:var(--red-100); }
.review-state.unanswered { color:#6d7784; background:#eef1f5; }
.review-answer-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin-top:14px; }
.review-answer { padding:11px; border-radius:7px; background:var(--surface); color:#42536a; font-size:11px; }
.review-answer.correct-answer { color:var(--success); background:#e8f7f1; }
.review-answer.wrong-answer { color:var(--red-600); background:var(--red-100); }
.review-explanation { margin-top:13px; padding:12px; border-left:3px solid var(--blue-600); border-radius:0 7px 7px 0; background:var(--blue-50); }
.review-explanation strong { display:block; color:var(--ink); font-size:11px; }
.review-explanation p { margin:4px 0 0; color:var(--muted); font-size:10px; }

.schedule-toolbar { display:grid; grid-template-columns:1fr repeat(3,190px); gap:10px; margin-bottom:18px; padding:13px; border:1px solid var(--line); border-radius:7px; background:#fff; }
.schedule-table-wrap { overflow-x:auto; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.schedule-table { width:100%; min-width:880px; border-collapse:collapse; }
.schedule-table th,.schedule-table td { padding:14px 15px; text-align:left; border-bottom:1px solid var(--line); }
.schedule-table th { color:var(--blue-800); background:var(--blue-50); font-size:10px; text-transform:uppercase; letter-spacing:.07em; }
.schedule-table td { color:#42536a; font-size:11px; }
.schedule-table tr:last-child td { border-bottom:0; }
.schedule-status { display:inline-flex; padding:6px 9px; border-radius:7px; color:var(--success); background:#e8f7f1; font-size:9px; font-weight:800; }

.exam-centre-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:22px; }
.centre-map { min-height:520px; position:relative; overflow:hidden; border:1px solid var(--line); border-radius:7px; background:linear-gradient(rgba(31,89,150,.06) 1px, transparent 1px),linear-gradient(90deg,rgba(31,89,150,.06) 1px,transparent 1px),linear-gradient(145deg,#f3f8ff,#fff); background-size:34px 34px,34px 34px,auto; }
.centre-map::after { content:""; position:absolute; inset:35px; background:url('india-map.svg') center/contain no-repeat; opacity:.8; }
.centre-pin { position:absolute; z-index:2; display:flex; align-items:center; gap:7px; padding:7px 9px; border-radius:7px; color:var(--ink); background:#fff; box-shadow:var(--shadow-xs); font-size:10px; font-weight:800; }
.centre-pin::before { content:""; width:10px; height:10px; border-radius:50%; background:var(--red-500); box-shadow:0 0 0 5px rgba(223,62,56,.12); }
.centre-pin.one { left:43%; top:21%; }
.centre-pin.two { left:52%; top:35%; }
.centre-pin.three { left:47%; top:48%; }
.centre-pin.four { left:58%; top:61%; }
.centre-list { display:grid; gap:12px; }
.centre-card { padding:17px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.centre-card h3 { margin:0 0 4px; font-size:15px; }
.centre-card p { margin:0; color:var(--muted); font-size:10px; }
.centre-card footer { display:flex; justify-content:space-between; gap:10px; margin-top:12px; padding-top:10px; border-top:1px solid var(--line); }
.centre-card footer span { color:var(--blue-700); font-size:10px; font-weight:800; }

.flow-tabs { display:flex; gap:8px; overflow-x:auto; scrollbar-width:none; margin-bottom:20px; padding:9px; border:1px solid var(--line); border-radius:7px; background:#fff; }
.flow-tabs::-webkit-scrollbar { display:none; }
.flow-tab { flex:0 0 auto; min-height:40px; padding:8px 13px; border:0; border-radius:7px; color:#42536a; background:transparent; font-size:11px; font-weight:800; }
.flow-tab.active { color:#fff; background:var(--blue-700); }
.flow-panel { display:none; }
.flow-panel.active { display:block; }
.flow-panel-grid { display:grid; grid-template-columns:1fr 320px; gap:22px; }
.flow-step-list { display:grid; gap:12px; }
.flow-step-card { display:grid; grid-template-columns:50px 1fr auto; gap:14px; align-items:center; padding:17px; border:1px solid var(--line); border-radius:7px; background:#fff; box-shadow:var(--shadow-xs); }
.flow-step-card > span { width:50px; height:50px; border-radius:7px; display:grid; place-items:center; color:#fff; background:var(--blue-700); font-weight:850; }
.flow-step-card:nth-child(even) > span { background:var(--red-500); }
.flow-step-card h3 { margin:0 0 4px; font-size:15px; }
.flow-step-card p { margin:0; color:var(--muted); font-size:10px; }
.flow-step-card a { color:var(--blue-700); font-size:10px; font-weight:800; }
.flow-aside { padding:21px; border-radius:7px; color:#fff; background:linear-gradient(145deg,var(--blue-950),var(--blue-700)); }
.flow-aside h3 { color:#fff; }
.flow-aside p { color:rgba(255,255,255,.72); font-size:11px; }
.flow-aside ul { display:grid; gap:9px; margin:16px 0 0; padding:0; list-style:none; }
.flow-aside li { display:flex; gap:8px; color:rgba(255,255,255,.8); font-size:10px; }
.flow-aside li::before { content:"✓"; color:#80e8c5; font-weight:900; }

@media (max-width:1100px) {
  .exam-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .exam-app-grid { grid-template-columns:minmax(0,1fr) 270px; }
  .schedule-toolbar { grid-template-columns:1fr repeat(2,170px); }
  .schedule-toolbar select:last-child { grid-column:2/-1; }
}
@media (max-width:920px) {
  .exam-hero-grid,.instruction-layout,.analysis-grid,.exam-centre-grid,.flow-panel-grid { grid-template-columns:1fr; }
  .exam-grid,.test-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .exam-process-line { grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:28px; }
  .exam-process-line::before { display:none; }
  .exam-app-grid { grid-template-columns:1fr; width:min(100% - 20px,900px); }
  .exam-sidebar { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .exam-question-card { min-height:620px; }
  .result-hero-card { grid-template-columns:200px 1fr; }
}
@media (max-width:720px) {
  .exam-hero { padding:44px 0 38px; }
  .exam-hero h1 { font-size:36px; }
  .exam-title-row,.test-toolbar,.exam-question-actions,.exam-app-top { align-items:flex-start; flex-direction:column; }
  .exam-grid,.test-card-grid,.exam-sidebar { grid-template-columns:1fr; }
  .exam-process-line { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .exam-app-meta { width:100%; justify-content:space-between; }
  .exam-question-body { padding:20px; }
  .exam-question-body h2 { font-size:20px; }
  .exam-question-actions > div,.exam-question-actions .btn { width:100%; }
  .exam-question-actions .btn { justify-content:center; }
  .question-palette { grid-template-columns:repeat(5,1fr); }
  .result-hero-card { grid-template-columns:1fr; }
  .result-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .review-answer-grid { grid-template-columns:1fr; }
  .schedule-toolbar { grid-template-columns:1fr; }
  .schedule-toolbar select:last-child { grid-column:auto; }
  .flow-step-card { grid-template-columns:42px 1fr; }
  .flow-step-card > span { width:42px; height:42px; }
  .flow-step-card a { grid-column:2; }
}
.score-ring{position:relative;}

/* =====================================================================
   SOURCE: assets/connected-admin.css
   ===================================================================== */

.bfs-admin-bridge{position:fixed;right:16px;bottom:16px;z-index:9998;display:flex;align-items:center;gap:8px;padding:8px;background:rgba(8,35,72,.96);border:1px solid rgba(255,255,255,.15);border-radius:7px;box-shadow:0 16px 34px rgba(8,35,72,.28);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}.bfs-admin-bridge a,.bfs-admin-bridge button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:7px;padding:7px 10px;font-size:11px;font-weight:800;text-decoration:none;cursor:pointer}.bfs-admin-bridge .manage{background:#fff;color:#0c3367}.bfs-admin-bridge .dashboard{background:#e43b3b;color:#fff}.bfs-admin-bridge .bypass{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.12);color:#dce9f8;font-size:9px;font-weight:900;letter-spacing:.08em}.bfs-connected-notice{display:none;position:relative;background:linear-gradient(90deg,#0c3367,#165b9d);color:#fff;padding:9px 54px 9px 16px;font-size:12px;line-height:1.4;box-shadow:0 4px 14px rgba(8,35,72,.12)}.bfs-connected-notice.active{display:block}.bfs-connected-notice strong{margin-right:7px}.bfs-connected-notice a{color:#fff;text-decoration:underline;font-weight:800}.bfs-connected-notice button{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:1px solid rgba(255,255,255,.28);border-radius:7px;background:rgba(255,255,255,.1);color:#fff;cursor:pointer}.bfs-preview-badge{position:fixed;left:14px;bottom:14px;z-index:9997;padding:7px 10px;border-radius:7px;background:#fff7df;border:1px solid #ead18e;color:#765006;font:800 10px/1.2 Inter,system-ui,sans-serif;box-shadow:0 10px 26px rgba(8,35,72,.12)}
@media(max-width:720px){.bfs-admin-bridge{left:8px;right:8px;bottom:74px;justify-content:center;padding:7px}.bfs-admin-bridge a,.bfs-admin-bridge button{flex:1;padding:7px 6px}.bfs-admin-bridge .bypass{display:none}.bfs-preview-badge{display:none}.bfs-connected-notice{font-size:11px;padding-left:12px}}
@media print{.bfs-admin-bridge,.bfs-preview-badge,.bfs-connected-notice{display:none!important}}


/* V2 clear Super Admin entry points */
.bfs-top-admin-link{background:#e43b3b!important;color:#fff!important;padding:5px 9px!important;border-radius:7px!important;font-weight:800!important}
.bfs-admin-header-btn{background:#0a2e58!important;color:#fff!important;border:1px solid #0a2e58!important;text-decoration:none!important;white-space:nowrap}
.bfs-admin-header-btn:hover{background:#123f73!important;color:#fff!important}
.bfs-admin-nav-item .nav-link{color:#c72f35!important;font-weight:900!important}
.bfs-admin-hero-btn{background:#e43b3b!important;color:#fff!important;border:1px solid #e43b3b!important}
.bfs-admin-hero-btn:hover{background:#c92f34!important;color:#fff!important}
.bfs-admin-mobile-link{color:#c72f35!important}
.bfs-admin-mobile-icon{font-size:18px;line-height:1}
@media(max-width:1100px){.bfs-admin-nav-item{display:none}.bfs-admin-header-btn span{display:none}.bfs-admin-header-btn{width:40px;padding:0!important}}
@media(max-width:720px){.bfs-top-admin-link{display:none!important}.bfs-admin-header-btn{display:none!important}}

/* =====================================================================
   SOURCE: assets/ui-v7.css
   ===================================================================== */
/* BFS Connected V6 - professional navigation and placement network refresh */

/* Brand lockup */
.bfs-brand .brand-copy{display:flex!important;flex-direction:column;justify-content:center;gap:1px;min-width:164px}
.bfs-brand .brand-copy em{display:block;font-style:normal;font-size:8px;line-height:1;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#7a879b}
.bfs-brand .brand-copy strong{display:block;margin-top:2px;font-size:16px;line-height:1.05;color:#0f2c52;letter-spacing:-.02em}
.bfs-brand .brand-copy small{display:block;margin-top:3px;font-size:8px!important;line-height:1;font-weight:900;letter-spacing:.14em!important;text-transform:uppercase;color:#d9363e!important}

/* Professional desktop navigation */
@media(min-width:1121px){
  .site-header .navbar{gap:18px!important;align-items:center!important}
  .bfs-pro-nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;flex:1!important;min-width:0!important;padding:7px!important;border:1px solid #dce7f3!important;border-radius:18px!important;background:linear-gradient(180deg,#fbfdff 0%,#edf4fb 100%)!important;box-shadow:0 18px 40px -34px rgba(17,57,105,.65),inset 0 1px 0 #fff!important}
  .bfs-pro-nav .nav-item{position:relative!important;min-width:0!important}
  .bfs-pro-nav .pro-nav-link{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:50px!important;padding:0 13px!important;border:1px solid rgba(27,83,145,.12)!important;border-radius:12px!important;background:linear-gradient(180deg,#fff 0%,#f0f5fb 100%)!important;color:#173f70!important;box-shadow:0 4px 0 #d5e2ef,0 9px 18px -16px rgba(7,39,79,.75),inset 0 1px 0 #fff!important;transform:translateY(0)!important;transition:.2s ease!important;overflow:hidden!important;white-space:nowrap!important}
  .bfs-pro-nav .pro-nav-link:before{content:"";position:absolute;inset:0;background:linear-gradient(125deg,rgba(255,255,255,.8),rgba(255,255,255,0) 55%);pointer-events:none}
  .bfs-pro-nav .pro-nav-link:after{content:""!important;position:absolute!important;left:11px!important;right:11px!important;bottom:5px!important;height:2px!important;border-radius:999px!important;background:linear-gradient(90deg,#ff0000,#111111)!important;transform:scaleX(0)!important;opacity:0!important;transition:.2s ease!important}
  .bfs-pro-nav .pro-nav-link:hover,.bfs-pro-nav .pro-nav-link.active,.bfs-pro-nav .simple-dropdown-item.open>.pro-nav-link{color:#0c4c92!important;background:linear-gradient(180deg,#fff 0%,#e4effb 100%)!important;border-color:#c6d9ed!important;box-shadow:0 2px 0 #b8cfe7,0 13px 24px -18px rgba(10,55,109,.7),inset 0 1px 0 #fff!important;transform:translateY(2px)!important}
  .bfs-pro-nav .pro-nav-link:hover:after,.bfs-pro-nav .pro-nav-link.active:after,.bfs-pro-nav .simple-dropdown-item.open>.pro-nav-link:after{transform:scaleX(1)!important;opacity:1!important}
  .bfs-pro-nav .pro-nav-icon{position:relative;z-index:1;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex:0 0 auto;background:#e9f2fc;color:#1f65aa;border:1px solid #d2e2f3;box-shadow:inset 0 1px 0 #fff}
  .bfs-pro-nav .pro-nav-icon svg{width:15px!important;height:15px!important;transform:none!important}
  .bfs-pro-nav .pro-nav-label{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;line-height:1.05}
  .bfs-pro-nav .pro-nav-label strong{font-size:12px;font-weight:850;letter-spacing:-.01em}
  .bfs-pro-nav .pro-nav-label small{margin-top:3px;font-size:8px;font-weight:750;letter-spacing:.02em;color:#7b8da4}
  .bfs-pro-nav .pro-nav-caret{position:relative;z-index:1;width:12px!important;height:12px!important;color:#71849b;transition:transform .2s ease!important}
  .bfs-pro-nav .simple-dropdown-item.open .pro-nav-caret{transform:rotate(180deg)!important}
  .bfs-pro-nav .pro-home-link{padding-inline:11px!important}

  .bfs-pro-nav .pro-dropdown{top:calc(100% + 14px)!important;width:520px!important;padding:12px!important;border-radius:17px!important;border:1px solid #d9e5f1!important;background:#fff!important;box-shadow:0 30px 70px -38px rgba(7,38,77,.58)!important;overflow:hidden!important}
  .bfs-pro-nav .nav-item:nth-last-child(-n+2) .pro-dropdown{left:auto!important;right:0!important;transform:none!important}
  .bfs-pro-nav .pro-dropdown-head{padding:12px 13px;margin-bottom:8px;border-radius:12px;background:linear-gradient(135deg,#edf5fd,#fff6f6);border:1px solid #e1eaf4}
  .bfs-pro-nav .pro-dropdown-head span{display:block;font-size:13px;font-weight:900;color:#123b6a}
  .bfs-pro-nav .pro-dropdown-head small{display:block;margin-top:3px;font-size:10px;color:#71839a}
  .bfs-pro-nav .pro-dropdown-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .bfs-pro-nav .pro-dropdown-link{display:grid!important;grid-template-columns:36px minmax(0,1fr) 16px!important;gap:9px!important;align-items:center!important;padding:9px!important;border-radius:11px!important;color:#173d68!important;border:1px solid transparent!important;background:#fff!important;transition:.18s ease!important}
  .bfs-pro-nav .pro-dropdown-link:hover{background:#f3f8fd!important;border-color:#dbe8f5!important;transform:translateX(2px)!important}
  .bfs-pro-nav .pro-dropdown-link .pro-nav-icon{width:34px;height:34px;border-radius:10px;background:#edf5fd;color:#2268ad}
  .bfs-pro-nav .pro-dropdown-link strong{display:block;font-size:11px;font-weight:850;line-height:1.15;color:#153d6b}
  .bfs-pro-nav .pro-dropdown-link small{display:block;margin-top:3px;font-size:9px;line-height:1.25;color:#7b8ba0}
  .bfs-pro-nav .pro-link-arrow{width:12px;height:12px;color:#9aabba;transition:transform .18s ease}
  .bfs-pro-nav .pro-dropdown-link:hover .pro-link-arrow{transform:translateX(2px);color:#2368ad}
}

@media(min-width:1121px) and (max-width:1450px){
  .bfs-pro-nav{gap:5px!important;padding:6px!important}
  .bfs-pro-nav .pro-nav-link{min-height:47px!important;padding:0 10px!important;gap:6px!important}
  .bfs-pro-nav .pro-nav-icon{width:27px;height:27px}
  .bfs-pro-nav .pro-nav-label strong{font-size:11px}
  .bfs-pro-nav .pro-nav-label small{display:none}
  .bfs-brand .brand-copy{display:none!important}
  .brand{min-width:66px!important;width:66px!important}
  .desktop-student-login{padding-inline:11px!important;font-size:12px!important}
}

@media(max-width:1120px){.bfs-pro-nav{display:none!important}.bfs-brand .brand-copy em{font-size:7px;letter-spacing:.12em}}
@media(max-width:680px){.bfs-brand .brand-copy em{display:none}.bfs-brand .brand-copy strong{font-size:13px}.bfs-brand .brand-copy small{font-size:7px!important}}

/* Subtle motion on Good morning card */
.student-hub .hub-content-top{position:relative;overflow:hidden;border-radius:12px}
.student-hub .hub-content-top:after{content:"";position:absolute;top:-30%;left:-38%;width:28%;height:160%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);transform:skewX(-20deg);animation:bfsGreetingShine 8s ease-in-out infinite;pointer-events:none}
.student-hub .hub-chip{animation:bfsChipBreath 3.2s ease-in-out infinite}
@keyframes bfsGreetingShine{0%,18%{left:-38%}62%,100%{left:122%}}
@keyframes bfsChipBreath{0%,100%{transform:translateY(0);box-shadow:0 0 0 rgba(34,104,176,0)}50%{transform:translateY(-3px);box-shadow:0 10px 22px -16px rgba(34,104,176,.65)}}

/* New placement network section */
.placement-network{margin-top:30px}
.placement-network-shell{padding:26px;border-radius:25px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035));box-shadow:0 28px 62px -45px rgba(0,0,0,.72)}
.placement-network-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px}
.placement-network-head h3{margin:0;color:#fff;font-size:clamp(1.35rem,2vw,2rem);letter-spacing:-.02em}
.placement-network-head p{margin:8px 0 0;max-width:760px;color:rgba(255,255,255,.67);line-height:1.55}
.placement-total-card{display:flex;align-items:center;gap:11px;flex:0 0 auto;padding:12px 15px;border-radius:16px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.07)}
.placement-total-card .total-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:#fff;background:linear-gradient(180deg,#367ec7,#175798)}
.placement-total-card svg{width:19px;height:19px}
.placement-total-card strong{display:block;color:#fff;font-size:18px;line-height:1}
.placement-total-card small{display:block;margin-top:5px;color:rgba(255,255,255,.61);font-size:10px;text-transform:uppercase;letter-spacing:.09em}
.placement-network-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:18px}
.india-placement-panel{position:relative;min-height:570px;overflow:hidden;border-radius:22px;border:1px solid rgba(255,255,255,.1);background:radial-gradient(circle at 34% 20%,rgba(70,137,216,.25),transparent 36%),linear-gradient(180deg,rgba(7,36,76,.7),rgba(8,29,61,.88))}
.india-placement-panel:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(180deg,#000,transparent 95%)}
.map-topline{position:absolute;z-index:3;left:18px;right:18px;top:17px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.map-live-pill,.map-year-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(8,31,66,.72);backdrop-filter:blur(10px);color:#fff;font-size:10px;font-weight:800;letter-spacing:.04em}
.map-live-pill i{width:8px;height:8px;border-radius:50%;background:#35d28c;animation:bfsMapPulse 2.2s ease infinite}
@keyframes bfsMapPulse{0%{box-shadow:0 0 0 0 rgba(53,210,140,.45)}70%{box-shadow:0 0 0 9px rgba(53,210,140,0)}100%{box-shadow:0 0 0 0 rgba(53,210,140,0)}}
.india-map-canvas{position:absolute;left:50%;top:53%;width:min(66%,430px);transform:translate(-52%,-50%);z-index:1}
.india-map-canvas img{display:block;width:100%;filter:drop-shadow(0 25px 30px rgba(0,0,0,.25))}
.map-location{position:absolute;z-index:4;display:flex;align-items:center;gap:7px;padding:7px 9px;border-radius:11px;border:1px solid rgba(255,255,255,.15);background:rgba(7,30,64,.8);backdrop-filter:blur(10px);color:#fff;box-shadow:0 15px 28px -22px rgba(0,0,0,.75);transition:.2s ease}
.map-location:hover{transform:translateY(-2px);background:rgba(19,68,121,.95)}
.map-location .pin-dot{width:10px;height:10px;border-radius:50%;background:#f04b52;box-shadow:0 0 0 5px rgba(240,75,82,.16);flex:0 0 auto}
.map-location strong{display:block;font-size:11px;line-height:1.05}.map-location small{display:block;margin-top:3px;font-size:8px;color:rgba(255,255,255,.68);text-transform:uppercase;letter-spacing:.08em}
.map-location.delhi{left:40%;top:25%}.map-location.lucknow{left:53%;top:36%}.map-location.prayagraj{left:50%;top:45%}.map-location.varanasi{left:64%;top:47%}.map-location.jaunpur{left:62%;top:55%}.map-location.mumbai{left:18%;top:58%}.map-location.bengaluru{left:38%;top:76%}.map-location.remote{right:4%;top:13%}
.map-legend{position:absolute;z-index:3;left:18px;bottom:17px;display:flex;gap:12px;flex-wrap:wrap}
.map-legend span{display:inline-flex;align-items:center;gap:6px;color:rgba(255,255,255,.68);font-size:9px}.map-legend i{width:8px;height:8px;border-radius:50%;background:#f04b52}.map-legend .blue{background:#4c9be8}.map-legend .green{background:#35d28c}
.placement-location-panel{display:flex;flex-direction:column;gap:12px}
.placement-summary-row{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.placement-summary-box{padding:13px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.055)}
.placement-summary-box strong{display:block;color:#fff;font-size:18px}.placement-summary-box span{display:block;margin-top:4px;color:rgba(255,255,255,.58);font-size:9px;line-height:1.35;text-transform:uppercase;letter-spacing:.07em}
.location-list-card{flex:1;padding:14px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045)}
.location-list-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.location-list-head strong{color:#fff;font-size:13px}.location-list-head span{color:rgba(255,255,255,.58);font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.location-rank{display:grid;grid-template-columns:38px minmax(0,1fr) 52px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.075)}
.location-rank:last-child{border-bottom:0}.location-rank .rank-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:#fff;background:linear-gradient(180deg,rgba(58,129,204,.95),rgba(20,78,139,.95))}.location-rank svg{width:16px;height:16px}.location-rank strong{display:block;color:#fff;font-size:11px}.location-rank small{display:block;margin-top:3px;color:rgba(255,255,255,.55);font-size:9px}.location-rank .rank-count{text-align:right;color:#fff;font-weight:900;font-size:14px}.location-rank .rank-count span{display:block;margin-top:2px;font-size:8px;font-weight:700;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.07em}
.location-progress{height:4px;margin-top:7px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.location-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2f83d0,#ef4b52)}
.placement-network-note{padding:12px 13px;border-radius:14px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045);color:rgba(255,255,255,.62);font-size:10px;line-height:1.5}

@media(max-width:1060px){.placement-network-grid{grid-template-columns:1fr}.india-placement-panel{min-height:620px}}
@media(max-width:700px){.placement-network-shell{padding:16px;border-radius:20px}.placement-network-head{display:block}.placement-total-card{margin-top:13px;width:max-content}.india-placement-panel{min-height:560px}.india-map-canvas{width:78%;top:54%}.map-location{padding:6px 7px}.map-location strong{font-size:9px}.map-location small{font-size:7px}.map-location.delhi{left:35%;top:25%}.map-location.lucknow{left:51%;top:36%}.map-location.prayagraj{left:45%;top:45%}.map-location.varanasi{left:61%;top:47%}.map-location.jaunpur{left:58%;top:55%}.map-location.mumbai{left:8%;top:59%}.map-location.bengaluru{left:31%;top:77%}.map-location.remote{right:3%;top:13%}.placement-summary-row{grid-template-columns:1fr}.map-year-pill{display:none}}

/* =========================================================
   V7 responsive header correction
   Keeps V6 visual language, prevents menu collision and
   restores the original two-line BFS brand lockup.
   ========================================================= */

/* Brand text must remain visible beside the logo on desktop/laptop. */
.bfs-brand{
  flex:0 0 auto!important;
  min-width:210px!important;
  width:auto!important;
}
.bfs-brand .brand-logo{
  flex:0 0 auto;
}
.bfs-brand .brand-copy{
  display:flex!important;
  min-width:0!important;
  width:auto!important;
  max-width:165px;
  justify-content:center;
  gap:3px;
}
.bfs-brand .brand-copy strong{
  display:block!important;
  font-size:15px!important;
  line-height:1.08!important;
  white-space:normal!important;
  color:#102f57!important;
}
.bfs-brand .brand-copy small{
  display:block!important;
  margin-top:1px!important;
  font-size:8px!important;
  line-height:1.1!important;
  letter-spacing:.12em!important;
  white-space:nowrap!important;
  color:#d9363e!important;
}

@media(min-width:1121px){
  .site-header .navbar,
  .bfs-navbar{
    width:min(100% - 30px,1540px)!important;
    max-width:1540px!important;
    gap:10px!important;
    padding-left:0!important;
    padding-right:0!important;
    overflow:visible!important;
  }

  .bfs-pro-nav{
    flex:1 1 auto!important;
    min-width:0!important;
    max-width:none!important;
    gap:4px!important;
    padding:5px!important;
    border-radius:17px!important;
    overflow:visible!important;
  }

  .bfs-pro-nav .nav-item{
    flex:0 1 auto!important;
    min-width:0!important;
  }

  .bfs-pro-nav .pro-nav-link{
    min-height:46px!important;
    padding:0 9px!important;
    gap:5px!important;
    min-width:0!important;
    max-width:100%!important;
  }

  .bfs-pro-nav .pro-nav-icon{
    width:27px!important;
    height:27px!important;
    border-radius:8px!important;
  }

  .bfs-pro-nav .pro-nav-icon svg{
    width:14px!important;
    height:14px!important;
  }

  .bfs-pro-nav .pro-nav-label{
    min-width:0!important;
  }

  .bfs-pro-nav .pro-nav-label strong{
    font-size:11px!important;
    white-space:nowrap!important;
  }

  .bfs-pro-nav .pro-nav-label small{
    display:none!important;
  }

  .bfs-pro-nav .pro-nav-caret{
    width:10px!important;
    height:10px!important;
    flex:0 0 auto!important;
  }

  .bfs-pro-nav .pro-home-link{
    padding-inline:9px!important;
  }

  .bfs-nav-actions{
    flex:0 0 auto!important;
    min-width:0!important;
  }

  .desktop-student-login{
    min-width:132px!important;
    padding:0 14px!important;
    white-space:nowrap!important;
  }
}

/* Standard laptop widths (including browsers using 110%-125% scaling). */
@media(min-width:1121px) and (max-width:1450px){
  .bfs-brand{
    min-width:190px!important;
    width:190px!important;
  }

  .bfs-brand .brand-copy{
    display:flex!important;
    max-width:126px!important;
  }

  .bfs-brand .brand-copy strong{
    font-size:13px!important;
  }

  .bfs-brand .brand-copy small{
    font-size:7px!important;
    letter-spacing:.09em!important;
  }

  .bfs-pro-nav{
    gap:3px!important;
    padding:4px!important;
  }

  .bfs-pro-nav .pro-nav-link{
    min-height:44px!important;
    padding:0 7px!important;
    gap:4px!important;
  }

  .bfs-pro-nav .pro-nav-icon{
    width:25px!important;
    height:25px!important;
  }

  .bfs-pro-nav .pro-nav-label strong{
    font-size:10px!important;
    letter-spacing:-.02em!important;
  }

  .bfs-pro-nav .pro-nav-caret{
    width:9px!important;
    height:9px!important;
  }

  .desktop-student-login{
    min-width:48px!important;
    width:48px!important;
    height:44px!important;
    padding:0!important;
    justify-content:center!important;
    font-size:0!important;
  }

  .desktop-student-login svg{
    width:19px!important;
    height:19px!important;
    margin:0!important;
  }
}

/* Extra-compact desktop range right before mobile navigation takes over. */
@media(min-width:1121px) and (max-width:1260px){
  .site-header .navbar,
  .bfs-navbar{
    width:min(100% - 18px,1240px)!important;
    gap:7px!important;
  }

  .bfs-brand{
    min-width:174px!important;
    width:174px!important;
  }

  .bfs-brand .brand-logo{
    width:48px!important;
    height:48px!important;
  }

  .bfs-brand .brand-copy{
    max-width:116px!important;
  }

  .bfs-brand .brand-copy strong{
    font-size:12px!important;
  }

  .bfs-brand .brand-copy small{
    font-size:6.5px!important;
  }

  .bfs-pro-nav .pro-nav-link{
    padding:0 5px!important;
  }

  .bfs-pro-nav .pro-nav-icon{
    width:23px!important;
    height:23px!important;
  }

  .bfs-pro-nav .pro-nav-label strong{
    font-size:9.2px!important;
  }

  .bfs-pro-nav .pro-nav-caret{
    display:none!important;
  }
}

/* Tablet/mobile brand remains readable; desktop nav is already replaced by mobile menu. */
@media(max-width:1120px){
  .bfs-brand{
    min-width:0!important;
    width:auto!important;
  }
  .bfs-brand .brand-copy{
    display:flex!important;
    max-width:150px!important;
  }
  .bfs-brand .brand-copy strong{
    font-size:13px!important;
  }
  .bfs-brand .brand-copy small{
    font-size:7px!important;
  }
}

@media(max-width:520px){
  .bfs-brand .brand-copy{
    max-width:112px!important;
  }
  .bfs-brand .brand-copy strong{
    font-size:11px!important;
  }
  .bfs-brand .brand-copy small{
    font-size:6px!important;
    letter-spacing:.06em!important;
  }
}

/* =====================================================================
   SOURCE: assets/ui-v8.css
   ===================================================================== */
/* BFS Connected V8 fixes: stable hover menus, transparent outer nav,
   7px menu radius, compact login tile and clearer franchise homepage section. */

@media (min-width:1121px){
  /* Remove only the outer navigation capsule. Individual menu buttons stay unchanged. */
  .bfs-pro-nav{
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  /* Requested common 7px radius. */
  .bfs-pro-nav .pro-nav-link,
  .bfs-pro-nav .pro-nav-icon,
  .bfs-pro-nav .pro-dropdown,
  .bfs-pro-nav .pro-dropdown-head,
  .bfs-pro-nav .pro-dropdown-link,
  .bfs-pro-nav .pro-dropdown-link .pro-nav-icon{
    border-radius:7px!important;
  }

  /* A transparent hover bridge removes the dead gap between button and dropdown. */
  .bfs-pro-nav .simple-dropdown-item::after{
    content:"";
    position:absolute;
    left:-5px;
    right:-5px;
    top:100%;
    height:16px;
    z-index:98;
  }

  .bfs-pro-nav .pro-dropdown{
    top:calc(100% + 6px)!important;
    z-index:100!important;
  }

  .bfs-pro-nav .simple-dropdown-item:hover > .pro-dropdown,
  .bfs-pro-nav .simple-dropdown-item:focus-within > .pro-dropdown,
  .bfs-pro-nav .simple-dropdown-item.open > .pro-dropdown{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }

  /* Compact vertical login control for large views. */
  .bfs-nav-actions{
    display:flex!important;
    align-items:center!important;
  }
  .desktop-student-login.login-tile{
    width:58px!important;
    min-width:58px!important;
    height:58px!important;
    min-height:58px!important;
    padding:5px!important;
    border-radius:7px!important;
    display:inline-flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    line-height:1!important;
    font-size:inherit!important;
    white-space:normal!important;
  }
  .desktop-student-login.login-tile svg{
    width:20px!important;
    height:20px!important;
    margin:0!important;
  }
  .desktop-student-login.login-tile .login-label{
    display:block!important;
    color:#fff!important;
    font-size:8px!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
  }
}

@media (min-width:1121px) and (max-width:1260px){
  .desktop-student-login.login-tile{
    width:50px!important;
    min-width:50px!important;
    height:52px!important;
    min-height:52px!important;
  }
  .desktop-student-login.login-tile svg{
    width:18px!important;
    height:18px!important;
  }
  .desktop-student-login.login-tile .login-label{
    font-size:7px!important;
  }
}

/* Homepage franchise section: clear identity and stronger visibility. */
.bfs-home-franchise{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 9% 12%,rgba(37,111,190,.12),transparent 31%),
    radial-gradient(circle at 94% 90%,rgba(225,56,61,.09),transparent 28%),
    linear-gradient(180deg,#f8fbff 0%,#ffffff 100%)!important;
}
.bfs-home-franchise::before{
  content:"BFS FRANCHISE";
  position:absolute;
  right:-18px;
  top:16px;
  color:rgba(18,72,132,.035);
  font-size:clamp(64px,10vw,154px);
  line-height:1;
  font-weight:950;
  letter-spacing:-.06em;
  pointer-events:none;
}
.bfs-home-franchise .franchise-home-head{
  position:relative;
  z-index:1;
}
.bfs-home-franchise .franchise-home-head h2::before{
  content:"BFS Franchise";
  display:block;
  width:max-content;
  margin-bottom:9px;
  padding:6px 10px;
  border-radius:7px;
  color:#fff;
  background:linear-gradient(135deg,#123e73,#256eb6);
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  box-shadow:0 10px 20px -16px rgba(12,55,106,.8);
}
.bfs-home-franchise .franchise-home-layout{
  position:relative;
  z-index:1;
}
.bfs-home-franchise .franchise-home-visual,
.bfs-home-franchise .franchise-feature,
.bfs-home-franchise .franchise-requirement-line,
.bfs-home-franchise .franchise-mini-process{
  border-radius:7px!important;
}

@media(max-width:1120px){
  .desktop-student-login.login-tile{display:none!important}
}

/* =====================================================================
   SOURCE: assets/ui-v9.css
   ===================================================================== */
/* BFS Connected V9 - logo-color navigation accent and compact real student updates */

:root{
  --bfs-logo-red:#ff0000;
  --bfs-logo-black:#111111;
}

/* Requested logo-color accent. */
@media (min-width:1121px){
  .bfs-pro-nav .pro-nav-link:after{
    background:linear-gradient(90deg,var(--bfs-logo-red),var(--bfs-logo-black))!important;
  }
}

/* Real student service section - no dummy student identity. */
.bfs-student-updates{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 12%,rgba(37,111,190,.09),transparent 30%),
    radial-gradient(circle at 95% 84%,rgba(255,0,0,.06),transparent 28%),
    #f7faff;
}
.bfs-student-updates:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:radial-gradient(rgba(20,74,133,.08) 1px,transparent 1px);
  background-size:22px 22px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent 72%);
  pointer-events:none;
}
.bfs-student-updates>.container{position:relative;z-index:1}
.bfs-student-updates .section-head{max-width:900px;margin-inline:auto}
.bfs-student-updates .section-head h2{max-width:820px;margin-inline:auto}

.bfs-update-layout{
  display:grid;
  grid-template-columns:minmax(300px,.76fr) minmax(0,1.45fr);
  gap:18px;
  margin-top:28px;
  align-items:start;
}
.bfs-update-overview,
.bfs-update-motion{
  border:1px solid #dbe6f2;
  border-radius:18px;
  background:#fff;
  box-shadow:0 22px 52px -42px rgba(9,47,94,.45);
  overflow:hidden;
}
.bfs-update-overview{
  padding:22px;
  display:flex;
  flex-direction:column;
  gap:16px;
}
.bfs-update-brand{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:13px;
  align-items:center;
}
.bfs-update-logo{
  width:58px;
  height:58px;
  border-radius:14px;
  display:grid;
  place-items:center;
  border:1px solid #e1e8ef;
  background:#fff;
  box-shadow:0 10px 20px -18px rgba(0,0,0,.5);
}
.bfs-update-logo img{width:48px;height:48px;object-fit:contain;display:block}
.bfs-update-brand small{
  display:block;
  color:#e03131;
  font-size:9px;
  line-height:1;
  font-weight:900;
  letter-spacing:.13em;
}
.bfs-update-brand h3{
  margin:5px 0 0;
  color:#0b2f59;
  font-size:18px;
  line-height:1.28;
}
.bfs-update-overview>p{
  margin:0;
  color:#687a91;
  font-size:12px;
  line-height:1.62;
}
.bfs-real-stats{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}
.bfs-real-stats div{
  padding:12px;
  border:1px solid #e2eaf3;
  border-radius:11px;
  background:linear-gradient(180deg,#fff,#f5f8fc);
}
.bfs-real-stats strong{
  display:block;
  color:#0c3566;
  font-size:21px;
  line-height:1;
}
.bfs-real-stats span{
  display:block;
  margin-top:5px;
  color:#71839a;
  font-size:10px;
  line-height:1.3;
}
.bfs-service-links{display:grid;gap:8px}
.bfs-service-links>a{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) 14px;
  gap:10px;
  align-items:center;
  padding:10px;
  border:1px solid #e0e9f2;
  border-radius:11px;
  background:#fff;
  color:#163f6e;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.bfs-service-links>a:hover{
  transform:translateX(3px);
  border-color:#bdd4eb;
  box-shadow:0 12px 25px -22px rgba(12,57,110,.6);
}
.bfs-service-links>a>span{
  width:38px;height:38px;border-radius:10px;display:grid;place-items:center;
  background:#edf5fd;color:#2368ad;
}
.bfs-service-links svg{width:17px;height:17px}
.bfs-service-links strong{display:block;font-size:11px;line-height:1.2}
.bfs-service-links small{display:block;margin-top:3px;color:#7a8ca2;font-size:9px;line-height:1.25}
.bfs-service-links .service-arrow{width:12px;height:12px;color:#9aaabd}
.bfs-centre-code{
  margin-top:auto;
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 12px;
  border-radius:11px;
  color:#17456f;
  background:#f0f6fc;
  border:1px solid #dbe8f4;
  font-size:10px;
}
.bfs-centre-code svg{width:16px;height:16px;color:#1b65a8}

.bfs-update-motion{padding:16px;background:linear-gradient(180deg,#0c3566 0%,#0b294d 100%);border-color:#1a4779}
.bfs-motion-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:3px 4px 13px;
}
.bfs-motion-head>div{display:flex;align-items:center;gap:8px;min-width:0}
.bfs-motion-head strong{color:#fff;font-size:13px}
.bfs-motion-head small{color:#9fb9d5;font-size:9px}
.bfs-motion-head .live-dot{width:8px;height:8px;flex:0 0 auto}
.bfs-motion-head>a{display:inline-flex;align-items:center;gap:6px;color:#dbeaff;font-size:10px;font-weight:800}
.bfs-motion-head>a svg{width:13px;height:13px}
.bfs-motion-columns{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  height:410px;
  overflow:hidden;
}
.bfs-motion-column{
  position:relative;
  overflow:hidden;
  border-radius:12px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.07);
}
.bfs-motion-column:before,
.bfs-motion-column:after{
  content:"";
  position:absolute;
  left:0;right:0;
  height:48px;
  z-index:2;
  pointer-events:none;
}
.bfs-motion-column:before{top:0;background:linear-gradient(180deg,#0b2d55,rgba(11,45,85,0))}
.bfs-motion-column:after{bottom:0;background:linear-gradient(0deg,#0b2d55,rgba(11,45,85,0))}
.bfs-motion-track{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:10px;
  will-change:transform;
}
.bfs-motion-column.move-up .bfs-motion-track{animation:bfsCardsUp 28s linear infinite}
.bfs-motion-column.move-down .bfs-motion-track{animation:bfsCardsDown 31s linear infinite}
.bfs-motion-column:hover .bfs-motion-track,
.bfs-motion-column:focus-within .bfs-motion-track{animation-play-state:paused}
@keyframes bfsCardsUp{from{transform:translateY(0)}to{transform:translateY(calc(-50% - 5px))}}
@keyframes bfsCardsDown{from{transform:translateY(calc(-50% - 5px))}to{transform:translateY(0)}}
.bfs-motion-card{
  min-height:102px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  gap:10px;
  align-items:start;
  padding:12px;
  border-radius:11px;
  border:1px solid rgba(255,255,255,.11);
  background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.055));
  color:#fff;
  box-shadow:0 16px 30px -26px rgba(0,0,0,.75);
  transition:transform .18s ease,background .18s ease,border-color .18s ease;
}
.bfs-motion-card:hover{transform:translateY(-2px);background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.2)}
.bfs-motion-card .motion-icon{
  width:38px;height:38px;border-radius:10px;display:grid;place-items:center;
  color:#d6ebff;background:rgba(66,139,219,.18);border:1px solid rgba(125,183,244,.16)
}
.bfs-motion-card.red .motion-icon{color:#ffdada;background:rgba(255,64,74,.16);border-color:rgba(255,116,124,.18)}
.bfs-motion-card.blue .motion-icon{color:#dcecff;background:rgba(55,128,207,.2)}
.bfs-motion-card .motion-icon svg{width:18px;height:18px}
.bfs-motion-card small{display:block;color:#8fb4dc;font-size:8px;font-weight:900;letter-spacing:.11em}
.bfs-motion-card.red small{color:#ffb3b7}
.bfs-motion-card strong{display:block;margin-top:4px;color:#fff;font-size:11px;line-height:1.25}
.bfs-motion-card p{margin:4px 0 0;color:#b8cbe0;font-size:9px;line-height:1.4}
.bfs-motion-card .motion-link{align-self:center;padding:5px 7px;border-radius:7px;background:rgba(255,255,255,.09);color:#fff;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}

@media(max-width:1040px){
  .bfs-update-layout{grid-template-columns:1fr}
  .bfs-update-overview{display:grid;grid-template-columns:1.05fr .95fr;align-items:start}
  .bfs-update-brand,.bfs-update-overview>p,.bfs-centre-code{grid-column:1}
  .bfs-real-stats,.bfs-service-links{grid-column:2}
  .bfs-service-links{grid-row:1/span 3}
  .bfs-motion-columns{height:390px}
}
@media(max-width:720px){
  .bfs-update-layout{margin-top:20px}
  .bfs-update-overview{display:flex;padding:16px;border-radius:14px}
  .bfs-update-motion{padding:12px;border-radius:14px}
  .bfs-motion-head{align-items:flex-start}
  .bfs-motion-head>div{flex-wrap:wrap}
  .bfs-motion-head small{width:100%;margin-left:16px}
  .bfs-motion-columns{grid-template-columns:1fr;height:360px}
  .bfs-motion-column.move-down{display:none}
  .bfs-motion-card{min-height:96px}
  .bfs-real-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(prefers-reduced-motion:reduce){
  .bfs-motion-track{animation:none!important}
  .bfs-motion-columns{height:auto}
  .bfs-motion-column{max-height:none}
  .bfs-motion-card[aria-hidden="true"]{display:none}
}

/* Final compactness pass */
.bfs-student-updates{scroll-margin-top:110px}
.bfs-student-updates .section-head h2{font-size:clamp(30px,3.6vw,48px);line-height:1.08}
.bfs-update-motion{align-self:start;width:100%}
@media(max-width:720px){
  .bfs-student-updates .section-head h2{font-size:30px;line-height:1.12}
  .bfs-student-updates .section-copy{font-size:14px;line-height:1.55}
  .bfs-update-overview>p{font-size:11px}
  .bfs-motion-columns{height:330px}
}

/* Space optimisation for large views. */
@media(min-width:721px){
  .bfs-update-overview{padding:19px;gap:13px}
  .bfs-service-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .bfs-service-links>a{grid-template-columns:34px minmax(0,1fr);padding:9px;min-height:66px}
  .bfs-service-links>a>span{width:34px;height:34px}
  .bfs-service-links .service-arrow{display:none}
  .bfs-motion-columns{height:390px}
}
@media(max-width:720px){
  .bfs-service-links{grid-template-columns:1fr}
}

/* =====================================================================
   SOURCE: assets/frontend-v13.css
   ===================================================================== */
/* BFS Frontend V13 - exact-scope corrections on top of accepted V11 UI */

/* Top information bar: keep existing contacts, add centered marquee only */
.bfs-topbar-v13 .bfs-topbar-inner{
  display:grid;
  grid-template-columns:minmax(240px,1fr) minmax(360px,1.5fr) auto;
  align-items:center;
  gap:18px;
  min-height:48px;
}
.bfs-topbar-v13 .bfs-topbar-left,
.bfs-topbar-v13 .bfs-topbar-right{display:flex;align-items:center;gap:16px;min-width:0}
.bfs-topbar-v13 .bfs-topbar-right{justify-content:flex-end}
.bfs-topbar-v13 .bfs-topbar-left a,
.bfs-topbar-v13 .bfs-topbar-right a{white-space:nowrap}
.bfs-topbar-v13 .bfs-topbar-marquee{
  min-width:0;
  overflow:hidden;
  border-inline:1px solid rgba(255,255,255,.13);
  padding-inline:14px;
}
.bfs-topbar-v13 .bfs-topbar-marquee-track{
  display:flex;
  width:max-content;
  animation:bfsTopMarquee 20s linear infinite;
}
.bfs-topbar-v13 .bfs-topbar-marquee:hover .bfs-topbar-marquee-track{animation-play-state:paused}
.bfs-topbar-v13 .bfs-topbar-marquee-line{
  display:flex;
  align-items:center;
  gap:12px;
  padding-right:44px;
  color:#fff;
  white-space:nowrap;
  font-size:13px;
}
.bfs-topbar-v13 .bfs-topbar-marquee-line i{
  width:8px;height:8px;border-radius:50%;background:#ff4d57;box-shadow:0 0 0 5px rgba(255,77,87,.15)
}
.bfs-topbar-v13 .bfs-topbar-marquee-line a{color:#fff;text-decoration:underline;font-weight:800}
@keyframes bfsTopMarquee{to{transform:translateX(-50%)}}

/* Keep accepted V11 menu design; only normalize radius and hover bridge */
@media (min-width:1121px){
  .bfs-pro-nav .pro-nav-link{border-radius:7px!important}
  .bfs-pro-nav .pro-dropdown{border-radius:12px!important}
  .bfs-pro-nav .pro-dropdown-link{border-radius:7px!important}
  .bfs-pro-nav .simple-dropdown-item{padding-bottom:10px;margin-bottom:-10px}
  .bfs-pro-nav .simple-dropdown-item:hover>.pro-dropdown,
  .bfs-pro-nav .simple-dropdown-item:focus-within>.pro-dropdown,
  .bfs-pro-nav .simple-dropdown-item.open>.pro-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
}
.desktop-student-login.login-tile .login-label{text-transform:none!important;letter-spacing:.03em!important;font-size:9px!important}

/* Desktop and mobile hero sliders. Old V11 hero preserved separately. */
.bfs-banner-hero{position:relative;background:#eef4fb;overflow:hidden}
.bfs-banner-slider{position:relative;isolation:isolate}
.bfs-banner-slide{
  display:none;
  position:relative;
  min-height:620px;
  align-items:center;
  background-image:linear-gradient(90deg,rgba(5,31,68,.90) 0%,rgba(8,45,88,.72) 43%,rgba(8,45,88,.15) 74%,rgba(8,45,88,.05) 100%),var(--banner-image);
  background-size:cover;
  background-position:center;
}
.bfs-banner-slide.active{display:flex;animation:bfsBannerIn .72s ease both}
@keyframes bfsBannerIn{from{opacity:.2;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}
.bfs-banner-content{position:relative;z-index:2;color:#fff;padding-block:84px 104px}
.bfs-banner-content>*{max-width:720px}
.bfs-banner-kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:7px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.bfs-banner-content h1,.bfs-banner-content h2{margin:18px 0 14px;color:#fff;font-size:clamp(2.35rem,4.5vw,4.7rem);line-height:1.02;max-width:850px;letter-spacing:-.045em}
.bfs-banner-content p{margin:0;color:rgba(255,255,255,.82);font-size:1.05rem;line-height:1.7}
.bfs-banner-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.bfs-banner-points{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px;color:rgba(255,255,255,.82);font-size:13px;font-weight:700}
.bfs-banner-points span{display:inline-flex;align-items:center;gap:7px}.bfs-banner-points svg{width:16px;height:16px}
.bfs-banner-arrow{position:absolute;z-index:4;top:50%;width:46px;height:46px;border:1px solid rgba(255,255,255,.28);border-radius:7px;background:rgba(4,28,62,.36);color:#fff;display:grid;place-items:center;backdrop-filter:blur(10px);cursor:pointer;transform:translateY(-50%)}
.bfs-banner-arrow.prev{left:22px}.bfs-banner-arrow.prev svg{transform:rotate(180deg)}.bfs-banner-arrow.next{right:22px}.bfs-banner-arrow svg{width:20px;height:20px}
.bfs-banner-dots{position:absolute;z-index:5;left:50%;bottom:24px;display:flex;gap:8px;transform:translateX(-50%)}
.bfs-banner-dot{width:9px;height:9px;border:0;border-radius:999px;background:rgba(255,255,255,.46);cursor:pointer;transition:.22s}
.bfs-banner-dot.active{width:30px;background:#fff}
.mobile-banner-slider{display:none}
.hero-support-after-slider{position:relative;margin-top:-34px;z-index:6;padding-bottom:24px}
.hero-support-after-slider .notice-bar{margin-bottom:18px}
.hero-support-after-slider .quick-services{margin-top:0}

/* Restored/additional sections based on old-site feature audit */
.bfs-network-section{background:linear-gradient(180deg,#fff,#f4f8fd)}
.bfs-network-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:22px;align-items:stretch}
.bfs-network-copy,.bfs-network-panel{border:1px solid #dbe6f1;border-radius:18px;background:#fff;box-shadow:0 22px 45px -38px rgba(7,46,92,.4)}
.bfs-network-copy{padding:28px}
.bfs-network-copy h2{margin:10px 0 12px}.bfs-network-copy p{color:#65788f;line-height:1.7}
.bfs-network-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.bfs-network-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px}
.bfs-network-stats div{padding:14px;border:1px solid #e0e9f2;border-radius:12px;background:#f8fbfe}.bfs-network-stats strong{display:block;color:#0e427c;font-size:1.45rem}.bfs-network-stats span{display:block;margin-top:4px;color:#74869a;font-size:11px}
.bfs-network-panel{padding:18px;display:grid;gap:12px}
.bfs-network-card{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid #e0e9f2;border-radius:12px;background:linear-gradient(180deg,#fff,#f8fbff)}
.bfs-network-card .icon-box{width:46px;height:46px}.bfs-network-card strong{display:block;color:#0d376b}.bfs-network-card small{display:block;color:#73859a;margin-top:3px}.bfs-network-card b{font-size:11px;color:#1764aa;background:#eaf3fc;padding:6px 8px;border-radius:7px}

.bfs-why-home{background:#f4f8fd}
.bfs-why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.bfs-why-card{display:block;padding:20px;border:1px solid #dce6f0;border-radius:16px;background:#fff;color:inherit;box-shadow:0 18px 36px -34px rgba(9,51,96,.45);transition:.2s}
.bfs-why-card:hover{transform:translateY(-3px);border-color:#b9d1e8}
.bfs-why-card .icon-box{margin-bottom:14px}.bfs-why-card h3{margin:0 0 7px;font-size:16px}.bfs-why-card p{margin:0;color:#71839a;font-size:12px;line-height:1.55}
.bfs-why-actions{text-align:center;margin-top:20px}

.bfs-category-home{background:#fff}
.bfs-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.bfs-category-card{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;padding:15px;border:1px solid #dce6f0;border-radius:14px;background:linear-gradient(180deg,#fff,#f8fbfe);color:inherit}
.bfs-category-card span{width:42px;height:42px;border-radius:11px;background:#edf5fd;color:#1c65ae;display:grid;place-items:center}.bfs-category-card span svg{width:20px;height:20px}.bfs-category-card strong{display:block;font-size:13px}.bfs-category-card small{display:block;margin-top:4px;color:#7a8b9e;font-size:10px}

.bfs-benefit-strip{background:linear-gradient(90deg,#0b315f,#1b5f9e)}
.bfs-benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.bfs-benefit-card{padding:18px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.08);color:#fff}.bfs-benefit-card strong{display:block;margin-top:10px}.bfs-benefit-card p{margin:6px 0 0;color:rgba(255,255,255,.7);font-size:11px;line-height:1.5}.bfs-benefit-card .icon-box{background:rgba(255,255,255,.13);color:#fff}

.bfs-recognition-strip{padding:18px 0;background:#fff;border-block:1px solid #dfe8f1}
.bfs-recognition-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.bfs-recognition-item{display:flex;align-items:center;gap:10px;padding:12px;border-radius:12px;background:#f7fafe}.bfs-recognition-item svg{width:20px;height:20px;color:#1d65ad}.bfs-recognition-item strong{display:block;font-size:12px}.bfs-recognition-item small{display:block;color:#78899c;font-size:9px;margin-top:2px}

/* Replacement map: the map and labels live in one SVG, so it cannot break */
.placement-map-v13{margin-top:22px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));padding:22px}
.placement-map-v13-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:18px}.placement-map-v13-head h3{margin:0;color:#fff}.placement-map-v13-head p{margin:6px 0 0;color:rgba(255,255,255,.68);max-width:780px}.placement-map-v13-total{padding:12px 16px;border-radius:12px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);color:#fff}.placement-map-v13-total strong{display:block;font-size:1.25rem}.placement-map-v13-total small{color:rgba(255,255,255,.64)}
.placement-map-v13-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:18px;align-items:stretch}
.placement-map-v13-visual{min-height:560px;border-radius:16px;background:radial-gradient(circle at 25% 20%,rgba(77,145,222,.22),transparent 42%),rgba(0,0,0,.08);border:1px solid rgba(255,255,255,.08);display:grid;place-items:center;padding:12px;overflow:hidden}
.placement-map-v13-visual img{display:block;width:100%;height:100%;max-height:540px;object-fit:contain}
.placement-map-v13-list{display:grid;gap:10px;align-content:start}.placement-map-v13-list .location-rank{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1)}.placement-map-v13-list .location-rank strong,.placement-map-v13-list .rank-count{color:#fff}.placement-map-v13-list .location-rank small{color:rgba(255,255,255,.62)}

/* Why choose page */
.why-page-hero{background:linear-gradient(135deg,#eef5fd,#fff 58%,#fff3f3)}
.why-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.why-page-card{padding:22px;border:1px solid #dbe6f1;border-radius:16px;background:#fff}.why-page-card h3{margin:12px 0 7px}.why-page-card p{margin:0;color:#6f8198;font-size:12px;line-height:1.55}.why-page-card ul{margin:12px 0 0;padding-left:18px;color:#5f728a;font-size:11px;line-height:1.7}
.why-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.why-process article{padding:18px;border:1px solid #dbe6f0;border-radius:14px;background:#fff}.why-process b{display:inline-flex;width:34px;height:34px;border-radius:9px;background:#eaf3fc;color:#175fa7;align-items:center;justify-content:center}.why-process h3{margin:12px 0 6px}.why-process p{margin:0;color:#72849a;font-size:11px;line-height:1.5}

.footer-opening-hours{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 16px;margin-top:18px;border:1px solid rgba(255,255,255,.10);border-radius:12px;background:rgba(255,255,255,.05)}.footer-opening-hours strong{color:#fff}.footer-opening-hours span{color:rgba(255,255,255,.7);font-size:12px}

@media(max-width:1180px){
  .bfs-topbar-v13 .bfs-topbar-inner{grid-template-columns:auto 1fr auto}.bfs-topbar-v13 .bfs-topbar-left a:last-child{display:none}
  .bfs-network-grid,.placement-map-v13-grid{grid-template-columns:1fr}.bfs-why-grid,.bfs-category-grid,.bfs-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bfs-recognition-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:920px){
  .bfs-topbar-v13 .bfs-topbar-inner{grid-template-columns:1fr}.bfs-topbar-v13 .bfs-topbar-left,.bfs-topbar-v13 .bfs-topbar-right{display:none}.bfs-topbar-v13 .bfs-topbar-marquee{border:0;padding:0}
  .desktop-banner-slider{display:none}.mobile-banner-slider{display:block}.bfs-banner-slide{min-height:580px;background-image:linear-gradient(180deg,rgba(6,35,72,.2),rgba(6,35,72,.88) 70%),var(--banner-image);background-position:center}.bfs-banner-content{padding:260px 24px 78px}.bfs-banner-content h1,.bfs-banner-content h2{font-size:2.3rem}.bfs-banner-arrow{display:none}.hero-support-after-slider{margin-top:-18px}
  .bfs-network-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.why-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.why-process{grid-template-columns:repeat(2,minmax(0,1fr))}.placement-map-v13-visual{min-height:460px}
}
@media(max-width:640px){
  .bfs-banner-slide{min-height:540px}.bfs-banner-content{padding:240px 18px 72px}.bfs-banner-content h1,.bfs-banner-content h2{font-size:2rem}.bfs-banner-content p{font-size:.94rem}.bfs-banner-actions .btn{width:100%;justify-content:center}.bfs-banner-points{display:none}
  .bfs-why-grid,.bfs-category-grid,.bfs-benefit-grid,.bfs-recognition-grid,.why-page-grid,.why-process{grid-template-columns:1fr}.bfs-network-copy{padding:20px}.bfs-network-stats{grid-template-columns:1fr 1fr}.bfs-network-card{grid-template-columns:42px 1fr}.bfs-network-card b{grid-column:2;width:max-content}.placement-map-v13{padding:14px}.placement-map-v13-visual{min-height:390px}.footer-opening-hours{align-items:flex-start;flex-direction:column}
}

/* =====================================================================
   SOURCE: assets/frontend-v14.css
   ===================================================================== */
/* BFS Frontend V14 - compact client-approved navigation and franchise Why Choose Us */
:root{
  --bfs-brand-red:#e43d45;
  --bfs-brand-red-dark:#bf252d;
  --bfs-brand-ink:#071a33;
  --bfs-brand-navy:#103b6f;
  --bfs-brand-soft:#f3f5f8;
  --bfs-brand-line:#dfe5ec;
  --bfs-radius:7px;
}

/* Client reference: compact single-line button navigation */
@media (min-width:1121px){
  .bfs-pro-nav{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    flex:1!important;
    min-width:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .bfs-pro-nav .nav-item{position:relative!important;min-width:0!important}
  .bfs-pro-nav .pro-nav-link{
    min-height:46px!important;
    height:46px!important;
    padding:0 16px!important;
    gap:7px!important;
    border:1px solid var(--bfs-brand-line)!important;
    border-radius:var(--bfs-radius)!important;
    background:linear-gradient(180deg,#f8fafc 0%,#edf1f5 100%)!important;
    color:var(--bfs-brand-ink)!important;
    box-shadow:0 3px 0 rgba(228,61,69,.78),0 10px 22px -19px rgba(7,26,51,.58),inset 0 1px 0 #fff!important;
    transform:none!important;
    overflow:visible!important;
    white-space:nowrap!important;
    transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease!important;
  }
  .bfs-pro-nav .pro-nav-link::before{display:none!important}
  .bfs-pro-nav .pro-nav-link::after{display:none!important}
  .bfs-pro-nav .pro-nav-link:hover,
  .bfs-pro-nav .pro-nav-link.active,
  .bfs-pro-nav .simple-dropdown-item.open>.pro-nav-link{
    background:linear-gradient(180deg,#fff 0%,#f7ebec 100%)!important;
    border-color:#efc7ca!important;
    color:var(--bfs-brand-red-dark)!important;
    box-shadow:0 3px 0 var(--bfs-brand-red),0 12px 24px -20px rgba(7,26,51,.7),inset 0 1px 0 #fff!important;
    transform:translateY(-1px)!important;
  }
  .bfs-pro-nav>.nav-item>.pro-nav-link .pro-nav-icon{display:none!important}
  .bfs-pro-nav>.nav-item>.pro-nav-link .pro-nav-label{display:block!important;line-height:1!important}
  .bfs-pro-nav>.nav-item>.pro-nav-link .pro-nav-label strong{
    font-size:13px!important;
    line-height:1!important;
    font-weight:800!important;
    letter-spacing:-.01em!important;
    color:inherit!important;
  }
  .bfs-pro-nav>.nav-item>.pro-nav-link .pro-nav-label small{display:none!important}
  .bfs-pro-nav>.nav-item>.pro-nav-link .pro-nav-caret{
    width:11px!important;height:11px!important;color:#78879a!important;margin-left:2px!important
  }
  .bfs-pro-nav .pro-home-link{padding-inline:17px!important}
  .bfs-pro-nav .pro-dropdown{
    top:calc(100% + 10px)!important;
    width:500px!important;
    padding:11px!important;
    border:1px solid #dce3eb!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:0 28px 60px -34px rgba(7,26,51,.52)!important;
  }
  .bfs-pro-nav .simple-dropdown-item{padding-bottom:13px!important;margin-bottom:-13px!important}
  .bfs-pro-nav .pro-dropdown-head{padding:11px 12px!important;margin-bottom:8px!important;border-radius:7px!important;background:linear-gradient(135deg,#f7f9fc,#fff4f4)!important}
  .bfs-pro-nav .pro-dropdown-link{border-radius:7px!important;padding:9px!important}
  .bfs-pro-nav .pro-dropdown-link:hover{background:#f8fafc!important;border-color:#e2e8ef!important}
}
@media (min-width:1121px) and (max-width:1320px){
  .bfs-pro-nav{gap:5px!important}
  .bfs-pro-nav .pro-nav-link{height:43px!important;min-height:43px!important;padding:0 12px!important}
  .bfs-pro-nav>.nav-item>.pro-nav-link .pro-nav-label strong{font-size:12px!important}
}
@media (min-width:1121px) and (max-width:1190px){
  .bfs-pro-nav{gap:4px!important}
  .bfs-pro-nav .pro-nav-link{padding:0 9px!important}
  .bfs-pro-nav>.nav-item>.pro-nav-link .pro-nav-label strong{font-size:11.2px!important}
}

/* Consistent medium-sized buttons for detail pages */
.detail-action-panel{
  margin-top:18px;
  padding:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  border:1px solid #e0e7ef;
  border-radius:12px;
  background:linear-gradient(135deg,#f7faff,#fff8f8);
  box-shadow:0 16px 34px -30px rgba(7,26,51,.48);
}
.detail-action-panel>div:first-child strong{display:block;font-size:14px;color:var(--bfs-brand-ink)}
.detail-action-panel>div:first-child small{display:block;margin-top:4px;color:#718198;font-size:11px}
.detail-action-buttons{display:flex;gap:9px;flex-wrap:wrap}
.detail-action-panel .btn,
.franchise-why-page .btn{
  min-height:42px!important;
  height:42px!important;
  padding:0 17px!important;
  border-radius:var(--bfs-radius)!important;
  font-size:13px!important;
  font-weight:800!important;
  gap:7px!important;
  box-shadow:0 9px 20px -17px rgba(7,26,51,.72)!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.detail-action-panel .btn:hover,
.franchise-why-page .btn:hover{transform:translateY(-1px)!important;box-shadow:0 14px 26px -19px rgba(7,26,51,.7)!important}

/* Franchise Why Choose Us */
.franchise-why-page{background:#fff}
.fw-hero{position:relative;overflow:hidden;padding:72px 0;background:linear-gradient(135deg,#071a33 0%,#103b6f 58%,#183f6a 100%);color:#fff}
.fw-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 20%,rgba(228,61,69,.24),transparent 34%),linear-gradient(120deg,transparent 0 62%,rgba(255,255,255,.04) 62% 64%,transparent 64%)}
.fw-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:34px;align-items:center}
.fw-breadcrumb{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.72);font-size:12px;margin-bottom:18px}
.fw-breadcrumb a{color:#fff;font-weight:800}.fw-breadcrumb svg{width:12px;height:12px}
.fw-kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.13);font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.fw-hero h1{margin:16px 0 12px;font-size:clamp(2.2rem,4.3vw,4.5rem);line-height:1.04;letter-spacing:-.045em;color:#fff;max-width:780px}
.fw-hero p{margin:0;color:rgba(255,255,255,.76);font-size:16px;line-height:1.65;max-width:720px}
.fw-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.fw-hero .btn-light{background:#fff!important;color:var(--bfs-brand-ink)!important;border-color:#fff!important}
.fw-hero .btn-red{background:var(--bfs-brand-red)!important;border-color:var(--bfs-brand-red)!important}
.fw-hero-card{padding:22px;border-radius:18px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);box-shadow:0 26px 48px -32px rgba(0,0,0,.55)}
.fw-hero-card>span{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#ffd8da}
.fw-hero-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.fw-hero-stat{padding:14px;border-radius:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.09)}
.fw-hero-stat strong{display:block;font-size:20px;color:#fff}.fw-hero-stat small{display:block;margin-top:4px;color:rgba(255,255,255,.67);line-height:1.35}
.fw-section{padding:64px 0}.fw-section.soft{background:#f6f8fb}.fw-section.dark{background:#081b34;color:#fff}
.fw-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px;flex-wrap:wrap}
.fw-section-head .eyebrow{margin-bottom:8px}.fw-section-head h2{margin:0;font-size:clamp(1.7rem,3vw,2.7rem);line-height:1.12;letter-spacing:-.035em;color:var(--bfs-brand-ink);max-width:790px}.fw-section-head p{max-width:640px;margin:0;color:#697b92;line-height:1.65}.fw-section.dark .fw-section-head h2{color:#fff}.fw-section.dark .fw-section-head p{color:rgba(255,255,255,.68)}
.fw-value-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.fw-value-card{position:relative;padding:20px;border:1px solid #e1e7ee;border-radius:14px;background:#fff;box-shadow:0 18px 36px -32px rgba(7,26,51,.48);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.fw-value-card:hover{transform:translateY(-3px);border-color:#efc9cc;box-shadow:0 24px 44px -32px rgba(7,26,51,.55)}
.fw-value-card::after{content:"";position:absolute;right:-28px;top:-28px;width:86px;height:86px;border-radius:50%;background:rgba(228,61,69,.06)}
.fw-value-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#fff0f1;color:var(--bfs-brand-red);border:1px solid #f3d1d4}.fw-value-icon svg{width:22px;height:22px}
.fw-value-card h3{margin:15px 0 7px;font-size:15px;color:var(--bfs-brand-ink)}.fw-value-card p{margin:0;color:#718198;font-size:12px;line-height:1.6}
.fw-support-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px;align-items:stretch}
.fw-support-intro{padding:26px;border-radius:18px;background:linear-gradient(145deg,#0d3566,#0a2548);color:#fff;box-shadow:0 28px 55px -38px rgba(7,26,51,.7)}
.fw-support-intro h3{margin:12px 0 10px;font-size:28px;line-height:1.1}.fw-support-intro p{color:rgba(255,255,255,.72);line-height:1.65}.fw-support-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.fw-support-badges span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.11);font-size:10px;font-weight:800}
.fw-support-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fw-support-item{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:16px;border:1px solid #e0e7ef;border-radius:12px;background:#fff}.fw-support-item>span{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;background:#eef4fb;color:#1e62a5}.fw-support-item svg{width:20px;height:20px}.fw-support-item strong{display:block;font-size:13px;color:var(--bfs-brand-ink)}.fw-support-item small{display:block;margin-top:4px;color:#728299;line-height:1.5}
.fw-journey{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;position:relative}.fw-step{position:relative;padding:18px 14px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(255,255,255,.06)}.fw-step b{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--bfs-brand-red);font-size:11px}.fw-step h3{margin:12px 0 6px;color:#fff;font-size:14px}.fw-step p{margin:0;color:rgba(255,255,255,.64);font-size:11px;line-height:1.5}
.fw-tech-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:22px;align-items:start}.fw-tech-panel{padding:22px;border:1px solid #e0e7ef;border-radius:16px;background:#fff}.fw-tech-panel h3{margin:0 0 14px;font-size:18px}.fw-tech-list{display:grid;gap:9px}.fw-tech-row{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:9px;background:#f7f9fc;border:1px solid #e9edf2}.fw-tech-row svg{width:18px;height:18px;color:var(--bfs-brand-red)}.fw-tech-row span{font-size:12px;font-weight:750;color:#334a64}
.fw-growth-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.fw-growth-card{padding:18px;border:1px solid #e0e7ef;border-radius:13px;background:#fff}.fw-growth-card b{display:block;font-size:11px;color:var(--bfs-brand-red);text-transform:uppercase;letter-spacing:.08em}.fw-growth-card h3{margin:8px 0 7px;font-size:15px}.fw-growth-card p{margin:0;color:#718198;font-size:12px;line-height:1.55}
.fw-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.fw-compare-card{padding:22px;border:1px solid #e0e7ef;border-radius:16px;background:#fff}.fw-compare-card h3{margin:0 0 14px;font-size:18px}.fw-check-list{display:grid;gap:10px}.fw-check-list span{display:flex;gap:9px;align-items:flex-start;color:#53677f;font-size:12px;line-height:1.5}.fw-check-list svg{width:17px;height:17px;flex:0 0 auto;color:#1d7f56;margin-top:1px}
.fw-faq{display:grid;gap:10px}.fw-faq details{border:1px solid #e0e7ef;border-radius:11px;background:#fff;padding:0 16px}.fw-faq summary{cursor:pointer;padding:15px 0;font-size:13px;font-weight:850;color:var(--bfs-brand-ink);list-style:none}.fw-faq summary::-webkit-details-marker{display:none}.fw-faq details p{margin:0 0 15px;color:#6e7f95;font-size:12px;line-height:1.65}
.fw-cta{padding:28px;border-radius:18px;background:linear-gradient(135deg,#fff1f2,#eef5fc);border:1px solid #eadfe2;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.fw-cta h2{margin:0 0 7px;font-size:26px}.fw-cta p{margin:0;color:#6f8096}.fw-cta-actions{display:flex;gap:9px;flex-wrap:wrap}
@media(max-width:1080px){.fw-value-grid,.fw-growth-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fw-journey{grid-template-columns:repeat(3,minmax(0,1fr))}.fw-hero-grid,.fw-support-layout,.fw-tech-grid{grid-template-columns:1fr}}
@media(max-width:720px){.fw-hero{padding:48px 0}.fw-hero h1{font-size:2.35rem}.fw-section{padding:44px 0}.fw-value-grid,.fw-growth-grid,.fw-support-list,.fw-compare{grid-template-columns:1fr}.fw-journey{grid-template-columns:1fr 1fr}.fw-hero-stat-grid{grid-template-columns:1fr 1fr}.detail-action-panel{align-items:flex-start}.detail-action-buttons{width:100%}.detail-action-buttons .btn{flex:1;min-width:140px}}
@media(max-width:460px){.fw-journey,.fw-hero-stat-grid{grid-template-columns:1fr}.fw-hero-actions .btn,.fw-cta-actions .btn{width:100%}.detail-action-buttons{display:grid;grid-template-columns:1fr}.detail-action-buttons .btn{width:100%}}

/* =====================================================================
   SOURCE: assets/ui-v22.css
   ===================================================================== */
/* BFS V22 shared public frontend refinement
   - one CTA/button language
   - clean navigation at rest, 3D only on hover/open
   - compact Student Login matching the CTA system */

:root{
  --bfs22-navy:#0c3367;
  --bfs22-blue:#2674c4;
  --bfs22-red:#df343c;
  --bfs22-red-dark:#b9232b;
  --bfs22-ink:#10243f;
  --bfs22-line:#d7e2ee;
  --bfs22-soft:#f3f7fc;
}

/* One premium CTA system across all public frontend pages */
.btn,
a.btn,
button.btn,
.bfs-card-btn,
.course-footer a,
.job-footer a{
  position:relative!important;
  isolation:isolate;
  overflow:hidden!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:11px!important;
  min-height:50px!important;
  padding:0 11px 0 22px!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  text-decoration:none!important;
  white-space:nowrap;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease,background .24s ease,color .24s ease!important;
}
.btn::before,
.bfs-card-btn::before,
.course-footer a::before,
.job-footer a::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1;
  background:linear-gradient(110deg,transparent 16%,rgba(255,255,255,.25) 50%,transparent 84%)!important;
  transform:translateX(-140%)!important;
  transition:transform .62s ease!important;
}
.btn::after,
.bfs-card-btn::after,
.course-footer a::after,
.job-footer a::after{
  content:"↗"!important;
  position:relative!important;
  inset:auto!important;
  display:grid!important;
  place-items:center!important;
  width:36px!important;
  height:36px!important;
  flex:0 0 36px!important;
  border-radius:50%!important;
  color:currentColor!important;
  background:rgba(255,255,255,.18)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)!important;
  transform:none!important;
  opacity:1!important;
  font-size:14px!important;
  font-weight:900!important;
  transition:transform .24s ease,background .24s ease,box-shadow .24s ease!important;
}
.btn:hover,
.bfs-card-btn:hover,
.course-footer a:hover,
.job-footer a:hover{
  transform:translateY(-3px)!important;
}
.btn:hover::before,
.bfs-card-btn:hover::before,
.course-footer a:hover::before,
.job-footer a:hover::before{
  transform:translateX(140%)!important;
}
.btn:hover::after,
.bfs-card-btn:hover::after,
.course-footer a:hover::after,
.job-footer a:hover::after{
  transform:translateX(3px) rotate(-10deg)!important;
  background:rgba(255,255,255,.29)!important;
}
.btn:active,
.bfs-card-btn:active,
.course-footer a:active,
.job-footer a:active{
  transform:translateY(0) scale(.985)!important;
}

.btn-primary,
.btn-dark,
.bfs-card-btn,
.course-footer a,
.job-footer a{
  color:#fff!important;
  background:linear-gradient(135deg,var(--bfs22-navy) 0%,#17558f 58%,var(--bfs22-blue) 100%)!important;
  box-shadow:0 14px 30px rgba(23,82,145,.22)!important;
}
.btn-primary:hover,
.btn-dark:hover,
.bfs-card-btn:hover,
.course-footer a:hover,
.job-footer a:hover{
  box-shadow:0 21px 40px rgba(23,82,145,.30)!important;
}
.btn-red{
  color:#fff!important;
  background:linear-gradient(135deg,var(--bfs22-red-dark) 0%,var(--bfs22-red) 60%,#ee5a54 100%)!important;
  box-shadow:0 14px 30px rgba(206,47,55,.23)!important;
}
.btn-red:hover{box-shadow:0 21px 40px rgba(206,47,55,.31)!important}
.btn-light,
.btn-ghost{
  color:var(--bfs22-navy)!important;
  background:#fff!important;
  border-color:#c9d8e8!important;
  box-shadow:0 11px 25px rgba(15,46,84,.09)!important;
}
.btn-light::after,
.btn-ghost::after{
  background:#edf5fd!important;
  box-shadow:inset 0 0 0 1px #d2e4f5!important;
}
.btn-light:hover,
.btn-ghost:hover{
  border-color:#9fbad6!important;
  box-shadow:0 18px 34px rgba(15,46,84,.15)!important;
}
.btn-sm{
  min-height:44px!important;
  padding-left:18px!important;
  font-size:12px!important;
}
.btn-sm::after{
  width:31px!important;
  height:31px!important;
  flex-basis:31px!important;
  font-size:12px!important;
}
.bfs-card-btn,
.course-footer a,
.job-footer a{
  min-height:42px!important;
  padding-left:16px!important;
  font-size:12px!important;
}
.bfs-card-btn::after,
.course-footer a::after,
.job-footer a::after{
  width:30px!important;
  height:30px!important;
  flex-basis:30px!important;
  font-size:12px!important;
}

/* Student login uses the same CTA structure, but stays compact in header */
.site-header .desktop-student-login.login-tile{
  min-width:170px!important;
  width:auto!important;
  height:54px!important;
  min-height:54px!important;
  padding:0 9px 0 16px!important;
  justify-content:flex-start!important;
  gap:9px!important;
  border-radius:999px!important;
}
.site-header .desktop-student-login.login-tile>svg{
  width:18px!important;
  height:18px!important;
  flex:0 0 auto!important;
}
.site-header .desktop-student-login.login-tile .login-label{
  display:inline-block!important;
  margin:0!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1!important;
  text-transform:capitalize!important;
  white-space:nowrap!important;
}
.site-header .desktop-student-login.login-tile::after{
  margin-left:auto!important;
  width:34px!important;
  height:34px!important;
  flex-basis:34px!important;
}

/* Clean desktop navigation at rest; 3D button effect only on hover/open */
@media(min-width:1121px){
  .bfs-pro-nav{
    gap:5px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .bfs-pro-nav .pro-nav-link{
    min-height:48px!important;
    padding:0 14px!important;
    gap:7px!important;
    border:1px solid transparent!important;
    border-radius:12px!important;
    background:transparent!important;
    color:#173b65!important;
    box-shadow:none!important;
    transform:translateY(0)!important;
    overflow:visible!important;
  }
  .bfs-pro-nav .pro-nav-link::before{
    opacity:0!important;
  }
  .bfs-pro-nav .pro-nav-link::after{
    left:14px!important;
    right:14px!important;
    bottom:3px!important;
    height:3px!important;
    border-radius:99px!important;
    background:linear-gradient(90deg,var(--bfs22-red),var(--bfs22-blue))!important;
  }
  .bfs-pro-nav .pro-nav-icon{
    width:29px!important;
    height:29px!important;
    border:0!important;
    border-radius:9px!important;
    background:#edf4fb!important;
    box-shadow:none!important;
  }
  .bfs-pro-nav .pro-nav-label small{display:none!important}
  .bfs-pro-nav .pro-nav-label strong{font-size:12px!important}
  .bfs-pro-nav .pro-nav-link.active{
    color:var(--bfs22-red-dark)!important;
    background:rgba(228,61,69,.035)!important;
    box-shadow:none!important;
    transform:none!important;
  }
  .bfs-pro-nav .pro-nav-link:hover,
  .bfs-pro-nav .simple-dropdown-item.open>.pro-nav-link,
  .bfs-pro-nav .simple-dropdown-item:focus-within>.pro-nav-link{
    color:#0d477f!important;
    border-color:#cbdbea!important;
    border-radius:14px!important;
    background:linear-gradient(180deg,#ffffff 0%,#eaf2fa 100%)!important;
    box-shadow:0 5px 0 #c8d8e7,0 15px 26px -18px rgba(11,54,103,.68),inset 0 1px 0 #fff!important;
    transform:translateY(-3px)!important;
  }
  .bfs-pro-nav .pro-nav-link:hover::before,
  .bfs-pro-nav .simple-dropdown-item.open>.pro-nav-link::before,
  .bfs-pro-nav .simple-dropdown-item:focus-within>.pro-nav-link::before{
    opacity:1!important;
  }
  .bfs-pro-nav .pro-nav-link:hover .pro-nav-icon,
  .bfs-pro-nav .simple-dropdown-item.open>.pro-nav-link .pro-nav-icon,
  .bfs-pro-nav .simple-dropdown-item:focus-within>.pro-nav-link .pro-nav-icon{
    background:#e0eefb!important;
    box-shadow:inset 0 1px 0 #fff!important;
  }
  .bfs-pro-nav .pro-dropdown{
    border-radius:12px!important;
  }
  .bfs-pro-nav .pro-dropdown-link{
    border-radius:7px!important;
  }
}

@media(max-width:1280px) and (min-width:1121px){
  .bfs-pro-nav .pro-nav-link{padding-inline:10px!important}
  .site-header .desktop-student-login.login-tile{min-width:154px!important}
}

@media(max-width:580px){
  .btn,
  a.btn,
  button.btn,
  .bfs-card-btn,
  .course-footer a,
  .job-footer a{
    min-height:48px!important;
    padding-left:18px!important;
  }
}

/* =====================================================================
   SOURCE: assets/navigation-main-v24.css
   ===================================================================== */
/* BFS V24 — MAIN MENU ONLY
   Dropdown styling and behavior intentionally remain exactly as approved in V22. */

:root{
  --nav24-navy:#0d315d;
  --nav24-blue:#246db4;
  --nav24-blue-dark:#174f88;
  --nav24-red:#df353d;
  --nav24-red-dark:#b9252d;
  --nav24-ink:#17395f;
  --nav24-line:#d9e4ef;
}

@media (min-width:1121px){
  .site-header .bfs-navbar{
    align-items:center!important;
    gap:14px!important;
    overflow:visible!important;
  }

  /* Main navigation shell only. Dropdown panel remains untouched. */
  .bfs-pro-nav{
    display:flex!important;
    flex:1 1 auto!important;
    min-width:0!important;
    justify-content:center!important;
    align-items:center!important;
    gap:5px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  .bfs-pro-nav > .nav-item{
    position:relative!important;
    flex:0 0 auto!important;
    min-width:0!important;
  }

  /* Normal, clean default menu. */
  .bfs-pro-nav > .nav-item > .pro-nav-link{
    position:relative!important;
    isolation:isolate;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:50px!important;
    padding:0 14px!important;
    gap:7px!important;
    border:1px solid transparent!important;
    border-radius:7px!important;
    color:var(--nav24-ink)!important;
    background:transparent!important;
    box-shadow:none!important;
    transform:translateY(0)!important;
    overflow:visible!important;
    transition:
      transform .24s ease,
      color .24s ease,
      border-color .24s ease,
      background .24s ease,
      box-shadow .24s ease!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link::before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:-1!important;
    border-radius:7px!important;
    background:linear-gradient(180deg,#ffffff 0%,#eef5fc 100%)!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:opacity .22s ease!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link::after{
    content:""!important;
    position:absolute!important;
    left:14px!important;
    right:14px!important;
    bottom:3px!important;
    height:3px!important;
    border-radius:999px!important;
    background:linear-gradient(90deg,var(--nav24-red),var(--nav24-blue))!important;
    transform:scaleX(0)!important;
    transform-origin:center!important;
    opacity:0!important;
    transition:transform .24s ease,opacity .24s ease!important;
  }

  /* Top-level icon only — dropdown icons are not modified. */
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-icon{
    width:28px!important;
    height:28px!important;
    flex:0 0 28px!important;
    display:grid!important;
    place-items:center!important;
    border:1px solid #dbe7f2!important;
    border-radius:7px!important;
    color:#2469aa!important;
    background:linear-gradient(180deg,#f8fbff,#eef5fc)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.95)!important;
    transition:
      transform .24s ease,
      color .24s ease,
      border-color .24s ease,
      background .24s ease,
      box-shadow .24s ease!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-icon svg{
    width:14px!important;
    height:14px!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
    line-height:1!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label strong{
    color:inherit!important;
    font-size:12.5px!important;
    line-height:1!important;
    font-weight:760!important;
    letter-spacing:-.01em!important;
    white-space:nowrap!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label small{
    display:none!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-caret{
    width:11px!important;
    height:11px!important;
    flex:0 0 11px!important;
    color:#7f91a5!important;
    transition:transform .24s ease,color .24s ease!important;
  }

  /* Active menu remains light and professional. */
  .bfs-pro-nav > .nav-item > .pro-nav-link.active{
    color:var(--nav24-red-dark)!important;
    background:rgba(223,53,61,.035)!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link.active::after{
    transform:scaleX(1)!important;
    opacity:1!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link.active > .pro-nav-icon{
    color:var(--nav24-red-dark)!important;
    border-color:#f0d1d5!important;
    background:linear-gradient(180deg,#fff9f9,#fff0f1)!important;
  }

  /* Premium 3D effect only for top-level menu hover/open state. */
  .bfs-pro-nav > .nav-item > .pro-nav-link:hover,
  .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link,
  .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link{
    color:#0e477e!important;
    border-color:#c7d8e8!important;
    background:transparent!important;
    transform:translateY(-4px)!important;
    box-shadow:
      0 4px 0 #c4d6e7,
      0 17px 29px -19px rgba(10,50,96,.62),
      inset 0 1px 0 rgba(255,255,255,.95)!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link:hover::before,
  .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link::before,
  .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link::before{
    opacity:1!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link:hover::after,
  .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link::after,
  .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link::after{
    transform:scaleX(1)!important;
    opacity:1!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link:hover > .pro-nav-icon,
  .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link > .pro-nav-icon,
  .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link > .pro-nav-icon{
    color:#fff!important;
    border-color:#2368aa!important;
    background:linear-gradient(145deg,var(--nav24-blue),var(--nav24-blue-dark))!important;
    transform:translateY(-1px) rotate(-2deg)!important;
    box-shadow:
      0 9px 18px -12px rgba(20,77,137,.85),
      inset 0 1px 0 rgba(255,255,255,.28)!important;
  }

  .bfs-pro-nav > .nav-item > .pro-nav-link:hover > .pro-nav-caret,
  .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link > .pro-nav-caret,
  .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link > .pro-nav-caret{
    color:var(--nav24-blue-dark)!important;
  }

  .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link > .pro-nav-caret,
  .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link > .pro-nav-caret{
    transform:rotate(180deg)!important;
  }
}

/* Laptop and browser-zoom safety — top-level menu only. */
@media (min-width:1281px) and (max-width:1480px){
  .site-header .bfs-navbar{gap:10px!important}
  .bfs-pro-nav{gap:3px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link{padding-inline:11px!important;gap:6px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label strong{font-size:11.5px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-icon{width:26px!important;height:26px!important;flex-basis:26px!important}
}

@media (min-width:1121px) and (max-width:1280px){
  .site-header .bfs-navbar{gap:7px!important}
  .bfs-brand .brand-copy{display:none!important}
  .bfs-brand{min-width:64px!important;width:64px!important}
  .bfs-pro-nav{gap:1px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link{min-height:47px!important;padding-inline:8px!important;gap:5px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label strong{font-size:10.7px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-icon{width:24px!important;height:24px!important;flex-basis:24px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-icon svg{width:12px!important;height:12px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-caret{width:9px!important;height:9px!important;flex-basis:9px!important}
}

@media (max-width:1120px){
  .bfs-pro-nav{display:none!important}
}

/* =====================================================================
   SOURCE: assets/final-polish-v25.css
   ===================================================================== */
/* BFS V25 — final focused polish
   Scope: homepage contrast fixes, compact Student Login,
   restored logo copy, and smoother TOP-LEVEL menu hover only.
   Dropdown design remains untouched. */

:root{
  --v25-navy:#0d315d;
  --v25-blue:#246db4;
  --v25-red:#df353d;
  --v25-ink:#142d4d;
  --v25-muted:#64768d;
  --v25-line:#d9e4ef;
}

/* ------------------------------------------------------------------
   1. HOMEPAGE CONTRAST: remove white-on-white text combinations
   ------------------------------------------------------------------ */
body[data-page="home"] .review-summary-v3{
  color:var(--v25-ink)!important;
  background:linear-gradient(135deg,#f7fbff 0%,#ffffff 58%,#fff8f8 100%)!important;
  border:1px solid var(--v25-line)!important;
}
body[data-page="home"] .review-summary-v3>div:nth-child(2)>strong{
  color:var(--v25-ink)!important;
  font-size:24px!important;
  line-height:1.15!important;
}
body[data-page="home"] .review-summary-v3>div:nth-child(2)>span{
  color:#c98a00!important;
  font-weight:800!important;
}
body[data-page="home"] .review-summary-v3 p{
  color:var(--v25-muted)!important;
  font-size:12px!important;
  line-height:1.55!important;
}
body[data-page="home"] .review-summary-stats span{
  color:#536980!important;
  background:#ffffff!important;
  border:1px solid #dfe8f2!important;
  box-shadow:0 8px 20px -18px rgba(14,45,82,.28)!important;
}
body[data-page="home"] .review-summary-stats b{
  color:var(--v25-navy)!important;
}
body[data-page="home"] .google-g{
  border:1px solid #dfe7f0!important;
  box-shadow:0 12px 26px -20px rgba(14,45,82,.34)!important;
}

/* Keep intentional dark sections readable even after shared white-card rules. */
body[data-page="home"] .bfs-benefit-strip .section-head h2,
body[data-page="home"] .dark-surface .section-head h2,
body[data-page="home"] .dark-surface .placement-map-v13-head h3{
  color:#fff!important;
}
body[data-page="home"] .bfs-benefit-strip .section-head .eyebrow,
body[data-page="home"] .dark-surface .section-head .eyebrow{
  color:#b9ddff!important;
}
body[data-page="home"] .dark-surface .section-copy,
body[data-page="home"] .placement-map-v13-head p,
body[data-page="home"] .placement-map-v13-total small,
body[data-page="home"] .placement-map-v13-list .location-rank small{
  color:rgba(255,255,255,.72)!important;
}

/* ------------------------------------------------------------------
   2. RESTORE OLD BRAND COPY BESIDE LOGO
   ------------------------------------------------------------------ */
@media (min-width:1121px){
  .site-header .bfs-brand{
    width:auto!important;
    min-width:174px!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:10px!important;
    flex:0 0 auto!important;
  }
  .site-header .bfs-brand .brand-copy{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    min-width:0!important;
    gap:2px!important;
  }
  .site-header .bfs-brand .brand-copy strong{
    display:block!important;
    color:#12345e!important;
    font-size:14px!important;
    font-weight:850!important;
    line-height:1.08!important;
    letter-spacing:-.02em!important;
    white-space:normal!important;
  }
  .site-header .bfs-brand .brand-copy small{
    display:block!important;
    margin-top:2px!important;
    color:#d6333b!important;
    font-size:7.5px!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
  }
}

/* ------------------------------------------------------------------
   3. COMPACT STUDENT LOGIN — all public desktop pages
   ------------------------------------------------------------------ */
@media (min-width:1121px){
  .site-header .desktop-student-login.login-tile{
    min-width:146px!important;
    width:auto!important;
    height:48px!important;
    min-height:48px!important;
    padding:0 8px 0 14px!important;
    gap:8px!important;
    border-radius:999px!important;
    box-shadow:0 12px 28px rgba(207,47,55,.18)!important;
    transition:transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s ease,filter .28s ease!important;
  }
  .site-header .desktop-student-login.login-tile>svg{
    width:16px!important;
    height:16px!important;
  }
  .site-header .desktop-student-login.login-tile .login-label{
    font-size:11.5px!important;
    font-weight:850!important;
    line-height:1!important;
  }
  .site-header .desktop-student-login.login-tile::after{
    width:30px!important;
    height:30px!important;
    flex:0 0 30px!important;
    font-size:12px!important;
  }
  .site-header .desktop-student-login.login-tile:hover{
    transform:translateY(-2px)!important;
    filter:saturate(1.03)!important;
    box-shadow:0 18px 34px rgba(207,47,55,.25)!important;
  }
}

/* ------------------------------------------------------------------
   4. MAIN MENU ONLY — smoother hover, dropdown remains V22/V24
   ------------------------------------------------------------------ */
@media (min-width:1121px){
  .bfs-pro-nav > .nav-item > .pro-nav-link{
    transition:
      transform .32s cubic-bezier(.22,.61,.36,1),
      color .25s ease,
      border-color .25s ease,
      background .3s ease,
      box-shadow .32s cubic-bezier(.22,.61,.36,1)!important;
    will-change:transform,box-shadow;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link::before,
  .bfs-pro-nav > .nav-item > .pro-nav-link::after,
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-icon,
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-caret{
    transition-duration:.3s!important;
    transition-timing-function:cubic-bezier(.22,.61,.36,1)!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link:hover,
  .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link,
  .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link{
    transform:translateY(-2px)!important;
    box-shadow:
      0 3px 0 #c8d9e8,
      0 14px 25px -18px rgba(10,50,96,.56),
      inset 0 1px 0 rgba(255,255,255,.96)!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link:hover > .pro-nav-icon,
  .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link > .pro-nav-icon,
  .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link > .pro-nav-icon{
    transform:translateY(-1px)!important;
  }
}

/* Compact laptop/zoom layout while keeping the old brand text visible. */
@media (min-width:1121px) and (max-width:1280px){
  .site-header .bfs-navbar{gap:6px!important}
  .site-header .bfs-brand{
    min-width:158px!important;
    gap:7px!important;
  }
  .site-header .bfs-brand .brand-logo{
    width:48px!important;
    height:48px!important;
  }
  .site-header .bfs-brand .brand-copy strong{
    font-size:12.5px!important;
    max-width:98px!important;
  }
  .site-header .bfs-brand .brand-copy small{
    font-size:6.5px!important;
    letter-spacing:.08em!important;
  }
  .bfs-pro-nav{gap:1px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link{
    min-height:45px!important;
    padding-inline:7px!important;
    gap:4px!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-icon{
    display:none!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label strong{
    font-size:10.4px!important;
  }
  .site-header .desktop-student-login.login-tile{
    min-width:128px!important;
    height:44px!important;
    min-height:44px!important;
    padding-left:11px!important;
  }
  .site-header .desktop-student-login.login-tile .login-label{
    font-size:10.5px!important;
  }
  .site-header .desktop-student-login.login-tile::after{
    width:27px!important;
    height:27px!important;
    flex-basis:27px!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .bfs-pro-nav > .nav-item > .pro-nav-link,
  .site-header .desktop-student-login.login-tile{
    transition:none!important;
  }
}

/* =====================================================================
   SOURCE: assets/ui-v26.css
   ===================================================================== */
/* BFS V26 — shared card language, compact 3D main navigation,
   About page redesign and offline gallery library. */
:root{
  --v26-navy:#0d315d;
  --v26-blue:#246db4;
  --v26-red:#dc353d;
  --v26-ink:#132b49;
  --v26-muted:#64758b;
  --v26-line:#dbe5ef;
  --v26-soft:#f5f9fd;
  --v26-radius:7px;
  --v26-shadow:0 16px 38px -28px rgba(12,45,84,.30);
  --v26-shadow-hover:0 26px 50px -28px rgba(12,45,84,.38);
}

/* ------------------------------------------------------------------
   Main top navigation only. Dropdown design intentionally untouched.
   ------------------------------------------------------------------ */
@media (min-width:1121px){
  .site-header .bfs-navbar{
    gap:12px!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
  }
  .bfs-pro-nav{
    gap:5px!important;
    align-items:center!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link{
    min-height:42px!important;
    height:42px!important;
    padding:0 14px!important;
    gap:7px!important;
    border-radius:999px!important;
    border:1px solid transparent!important;
    background:transparent!important;
    color:#173a62!important;
    box-shadow:none!important;
    transform:none!important;
    transition:transform .28s cubic-bezier(.22,.61,.36,1),background .28s ease,border-color .28s ease,box-shadow .28s ease,color .28s ease!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link::before,
  .bfs-pro-nav > .nav-item > .pro-nav-link::after{
    border-radius:999px!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-icon{
    width:25px!important;height:25px!important;flex:0 0 25px!important;
    border-radius:50%!important;
    background:#edf5fd!important;
    color:#246db4!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label strong{
    font-size:11.6px!important;
    line-height:1!important;
    letter-spacing:-.01em!important;
    white-space:nowrap!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label small{display:none!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-caret{
    width:10px!important;height:10px!important;flex:0 0 10px!important;
    color:#72869d!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link:hover,
  .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link,
  .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link,
  .bfs-pro-nav > .nav-item > .pro-nav-link.active{
    background:linear-gradient(180deg,#ffffff 0%,#edf5fc 100%)!important;
    border-color:#c9dbea!important;
    color:#0f4f8f!important;
    transform:translateY(-2px)!important;
    box-shadow:0 3px 0 #c5d8e8,0 13px 22px -17px rgba(13,52,95,.62),inset 0 1px 0 rgba(255,255,255,.96)!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link:hover > .pro-nav-icon,
  .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link > .pro-nav-icon,
  .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link > .pro-nav-icon,
  .bfs-pro-nav > .nav-item > .pro-nav-link.active > .pro-nav-icon{
    background:linear-gradient(145deg,#1f68ac,#3b86ca)!important;
    color:#fff!important;
    box-shadow:0 7px 14px -9px rgba(20,83,147,.9)!important;
    transform:translateY(-1px)!important;
  }
  .site-header .desktop-student-login.login-tile{
    min-width:132px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 7px 0 13px!important;
    gap:7px!important;
    border-radius:999px!important;
  }
  .site-header .desktop-student-login.login-tile .login-label{font-size:10.8px!important}
  .site-header .desktop-student-login.login-tile::after{
    width:27px!important;height:27px!important;flex:0 0 27px!important;
  }
}
@media (min-width:1121px) and (max-width:1360px){
  .site-header .bfs-navbar{gap:7px!important}
  .bfs-pro-nav{gap:2px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link{padding-inline:9px!important;gap:5px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-icon{display:none!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label strong{font-size:10.6px!important}
  .site-header .desktop-student-login.login-tile{min-width:118px!important}
}

/* ------------------------------------------------------------------
   Shared light card language across inner public pages.
   ------------------------------------------------------------------ */
body.inner-page :is(
  .panel-card,.feature-card,.hero-side-card,.live-stat-grid article,
  .info-card,.service-card,.detail-card,.status-card,.contact-card,
  .download-card,.verification-card,.branch-card,.faculty-card,
  .blog-card,.live-gallery-card,.faq-item,.course-card,.step-card
){
  position:relative;
  overflow:hidden;
  border-radius:var(--v26-radius)!important;
  border:1px solid var(--v26-line)!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  box-shadow:var(--v26-shadow)!important;
  transition:transform .26s ease,border-color .26s ease,box-shadow .26s ease!important;
}
body.inner-page :is(
  .panel-card,.feature-card,.hero-side-card,.live-stat-grid article,
  .info-card,.service-card,.detail-card,.status-card,.contact-card,
  .download-card,.verification-card,.branch-card,.faculty-card,
  .blog-card,.live-gallery-card,.faq-item,.course-card,.step-card
)::after{
  content:"";
  position:absolute;
  right:-34px;bottom:-34px;
  width:110px;height:110px;border-radius:50%;
  background:radial-gradient(circle,rgba(55,120,190,.12),rgba(55,120,190,0) 68%);
  pointer-events:none;
}
body.inner-page :is(
  .panel-card,.feature-card,.hero-side-card,.live-stat-grid article,
  .info-card,.service-card,.detail-card,.status-card,.contact-card,
  .download-card,.verification-card,.branch-card,.faculty-card,
  .blog-card,.live-gallery-card,.faq-item,.course-card,.step-card
):hover{
  transform:translateY(-5px);
  border-color:#bfd2e4!important;
  box-shadow:var(--v26-shadow-hover)!important;
}
body.inner-page .red-box,
body.inner-page .feature-card:nth-child(even) .icon-box{
  background:#fff0f2!important;color:var(--v26-red)!important;
}

/* ------------------------------------------------------------------
   About page — redesigned practical preparation cards.
   ------------------------------------------------------------------ */
.about-v26-section{background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%)}
.about-v26-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:24px;
}
.about-v26-head>div{max-width:760px}
.about-v26-head h2{margin:10px 0 10px;font-size:clamp(28px,3vw,43px);line-height:1.1;letter-spacing:-.035em}
.about-v26-head p{margin:0;color:var(--v26-muted);font-size:14px;line-height:1.75}
.about-v26-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.about-v26-card{
  min-height:290px;padding:22px 19px 18px;
  display:flex;flex-direction:column;
  border-radius:var(--v26-radius);border:1px solid var(--v26-line);
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  box-shadow:var(--v26-shadow);color:var(--v26-ink);text-decoration:none;
  transition:transform .26s ease,border-color .26s ease,box-shadow .26s ease;
}
.about-v26-card:hover{transform:translateY(-7px);border-color:#b9cfe2;box-shadow:var(--v26-shadow-hover)}
.about-v26-icon{width:54px;height:54px;border-radius:7px;display:grid;place-items:center;margin-bottom:20px;background:#eaf4ff;color:#1e67aa}
.about-v26-icon svg{width:26px;height:26px}
.about-v26-card.tone-red .about-v26-icon{background:#fff0f2;color:#d9363e}
.about-v26-card.tone-sky .about-v26-icon{background:#edf7ff;color:#3581bd}
.about-v26-card.tone-warm .about-v26-icon{background:#fff6ea;color:#ba7414}
.about-v26-card small{font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:#75869a}
.about-v26-card h3{margin:8px 0 10px;font-size:19px;line-height:1.35;color:#132d4e}
.about-v26-card p{margin:0;color:#65768b;font-size:13px;line-height:1.72;flex:1}
.about-v26-link{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px;padding-top:15px;border-top:1px solid #e4ebf3;font-size:12px;font-weight:850;color:#155b9b}
.about-v26-link i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#edf5fd;font-style:normal;transition:transform .2s ease}
.about-v26-card:hover .about-v26-link i{transform:translate(2px,-2px)}
.about-v26-trust{margin-top:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.about-v26-trust>div{padding:15px 17px;border-radius:7px;border:1px solid #dce6ef;background:#fff;box-shadow:0 12px 28px -24px rgba(12,45,84,.28)}
.about-v26-trust strong{display:block;color:#17365d;font-size:13px}
.about-v26-trust span{display:block;margin-top:4px;color:#728197;font-size:11px;line-height:1.5}
@media(max-width:1100px){.about-v26-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.about-v26-head{align-items:flex-start;flex-direction:column}.about-v26-head .btn{width:100%}.about-v26-grid,.about-v26-trust{grid-template-columns:1fr}.about-v26-card{min-height:auto}}

/* ------------------------------------------------------------------
   Offline album library.
   ------------------------------------------------------------------ */
.gallery-library-section{background:linear-gradient(180deg,#f7fbff,#ffffff)}
.gallery-library-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}
.gallery-library-head>div:first-child{max-width:760px}
.gallery-library-head h2{margin:10px 0 9px;font-size:clamp(28px,3vw,42px);letter-spacing:-.035em}
.gallery-library-head p{margin:0;color:var(--v26-muted);font-size:14px;line-height:1.7}
.gallery-library-stats{display:flex;gap:10px}
.gallery-library-stats>div{min-width:92px;padding:12px 14px;border-radius:7px;background:#fff;border:1px solid var(--v26-line);box-shadow:var(--v26-shadow)}
.gallery-library-stats strong{display:block;color:#164c84;font-size:22px}.gallery-library-stats span{font-size:11px;color:#718197}
.gallery-library-shell{padding:18px;border:1px solid var(--v26-line);border-radius:7px;background:#fff;box-shadow:0 24px 54px -38px rgba(12,45,84,.32)}
.gallery-library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}
.gallery-search{min-height:46px;flex:1;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid #dce6ef;border-radius:999px;background:#f8fbff}
.gallery-search svg{width:17px;height:17px;color:#527399}.gallery-search input{width:100%;border:0;outline:0;background:transparent;color:#17304f;font:inherit}
.gallery-zoom-control{display:flex;align-items:center;gap:8px;padding:5px;border:1px solid #dce6ef;border-radius:999px;background:#f8fbff}
.gallery-zoom-control span{font-size:11px;font-weight:800;color:#687b92}.gallery-zoom-control button{width:34px;height:34px;border:0;border-radius:50%;background:#fff;color:#174f88;font-size:20px;cursor:pointer;box-shadow:0 8px 18px -15px rgba(12,45,84,.38)}
.gallery-album-rail-wrap{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) 38px;gap:8px;align-items:center}
.gallery-album-rail{display:flex;gap:10px;overflow:auto;scrollbar-width:none;scroll-behavior:smooth;padding:2px}.gallery-album-rail::-webkit-scrollbar{display:none}
.gallery-rail-arrow{width:36px;height:36px;border:1px solid #d7e2ec;border-radius:50%;background:#fff;color:#174f88;font-size:24px;cursor:pointer}
.gallery-album-chip{flex:0 0 auto;min-width:180px;padding:14px;text-align:left;border:1px solid #dce6ef;border-radius:7px;background:linear-gradient(180deg,#fff,#f7fbff);cursor:pointer;transition:.24s ease}
.gallery-album-chip:hover,.gallery-album-chip.active{transform:translateY(-3px);border-color:#b8cee2;box-shadow:0 16px 28px -23px rgba(12,45,84,.42)}
.gallery-album-chip.active{background:linear-gradient(135deg,#0d315d,#246db4);color:#fff}
.gallery-album-chip strong{display:block;font-size:13px}.gallery-album-chip span{display:block;margin-top:4px;font-size:10px;color:#728198}.gallery-album-chip.active span{color:rgba(255,255,255,.72)}
.gallery-library-meta{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:20px 0 14px;padding-bottom:13px;border-bottom:1px solid #e4ebf2}
.gallery-library-meta strong{display:block;color:#142d4d;font-size:18px}.gallery-library-meta span{display:block;margin-top:4px;color:#718197;font-size:11px}
.gallery-photo-grid{--gallery-card-min:230px;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,var(--gallery-card-min)),1fr));gap:14px}
.gallery-photo-card{position:relative;overflow:hidden;min-height:260px;border-radius:7px;border:1px solid #dbe5ef;background:#fff;box-shadow:var(--v26-shadow);cursor:pointer;transition:.26s ease}
.gallery-photo-card:hover{transform:translateY(-6px);border-color:#b9cee2;box-shadow:var(--v26-shadow-hover)}
.gallery-photo-card img{width:100%;height:205px;object-fit:cover;display:block;transition:transform .35s ease}
.gallery-photo-card:hover img{transform:scale(1.045)}
.gallery-photo-card figcaption{padding:14px}.gallery-photo-card strong{display:block;color:#142d4d;font-size:14px}.gallery-photo-card span{display:block;margin-top:5px;color:#6d7e94;font-size:11px;line-height:1.45}.gallery-photo-card small{position:absolute;left:10px;top:10px;padding:7px 10px;border-radius:999px;background:rgba(10,42,78,.78);color:#fff;font-size:9px;font-weight:800;backdrop-filter:blur(8px)}
.gallery-empty{padding:42px;text-align:center;color:#74849a}.gallery-empty svg{width:34px;height:34px}.gallery-empty strong,.gallery-empty span{display:block}.gallery-empty strong{margin-top:10px;color:#17304f}

.gallery-lightbox{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:20px}.gallery-lightbox.open{display:flex}.gallery-lightbox-backdrop{position:absolute;inset:0;background:rgba(5,17,34,.86);backdrop-filter:blur(10px)}
.gallery-lightbox-panel{position:relative;width:min(1120px,96vw);height:min(820px,92vh);display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;border-radius:7px;overflow:hidden;background:#07182c;border:1px solid rgba(255,255,255,.12);box-shadow:0 34px 90px rgba(0,0,0,.48)}
.gallery-lightbox-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;background:#0d2748;color:#fff}.gallery-lightbox-topbar strong{display:block}.gallery-lightbox-topbar span{display:block;margin-top:2px;font-size:10px;color:rgba(255,255,255,.65)}
.gallery-lightbox-tools{display:flex;gap:6px}.gallery-lightbox-tools button{min-width:34px;height:34px;padding:0 9px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}
.gallery-lightbox-stage{min-height:0;display:grid;grid-template-columns:46px minmax(0,1fr) 46px;align-items:center;background:#06111f}
.gallery-lightbox-nav{width:38px;height:52px;margin:auto;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-size:30px;cursor:pointer}
.gallery-lightbox-canvas{height:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;cursor:grab;touch-action:none}.gallery-lightbox-canvas.dragging{cursor:grabbing}.gallery-lightbox-canvas img{max-width:100%;max-height:100%;user-select:none;transform-origin:center center;will-change:transform}
.gallery-lightbox-caption{padding:10px 14px;background:#0a1e37;color:#fff}.gallery-lightbox-caption p{margin:0;font-size:13px}.gallery-lightbox-caption span{display:block;margin-top:4px;font-size:9px;color:rgba(255,255,255,.58)}
.gallery-lightbox-thumbs{display:flex;gap:8px;overflow:auto;padding:10px 14px;background:#08172a;scrollbar-width:thin}.gallery-lightbox-thumbs button{flex:0 0 74px;height:54px;padding:0;border:2px solid transparent;border-radius:7px;overflow:hidden;background:#132c4d;cursor:pointer}.gallery-lightbox-thumbs button.active{border-color:#4a91d4}.gallery-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}
@media(max-width:760px){.gallery-library-head{align-items:flex-start;flex-direction:column}.gallery-library-toolbar{align-items:stretch;flex-direction:column}.gallery-zoom-control{align-self:flex-start}.gallery-album-rail-wrap{grid-template-columns:30px minmax(0,1fr) 30px}.gallery-rail-arrow{width:30px;height:30px}.gallery-photo-grid{--gallery-card-min:160px;gap:10px}.gallery-photo-card{min-height:220px}.gallery-photo-card img{height:165px}.gallery-lightbox{padding:0}.gallery-lightbox-panel{width:100vw;height:100dvh;border-radius:0}.gallery-lightbox-stage{grid-template-columns:38px minmax(0,1fr) 38px}.gallery-lightbox-tools button{min-width:31px;height:31px}.gallery-lightbox-caption span{display:none}}
@media(prefers-reduced-motion:reduce){.about-v26-card,.gallery-photo-card,.gallery-album-chip,.bfs-pro-nav>.nav-item>.pro-nav-link{transition:none!important}}

/* =====================================================================
   SOURCE: assets/ui-v27.css
   ===================================================================== */
/* BFS V27 — top-level navigation state consistency and compact student login.
   Dropdown styling and all page content remain unchanged. */

@media (min-width:1121px){
  /* Balanced header spacing */
  .site-header .bfs-navbar{
    grid-template-columns:auto minmax(0,1fr) auto!important;
    align-items:center!important;
    column-gap:16px!important;
    padding-top:9px!important;
    padding-bottom:9px!important;
  }

  /* Top-level navigation only */
  .site-header .bfs-pro-nav{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    min-width:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  .site-header .bfs-pro-nav > .nav-item{
    flex:0 0 auto!important;
    min-width:0!important;
  }

  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link{
    box-sizing:border-box!important;
    width:auto!important;
    min-width:max-content!important;
    height:46px!important;
    min-height:46px!important;
    padding:0 15px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    border:1px solid transparent!important;
    border-radius:999px!important;
    background:transparent!important;
    color:#14375f!important;
    box-shadow:none!important;
    transform:translateY(0)!important;
    white-space:nowrap!important;
    transition:
      transform .30s cubic-bezier(.22,.61,.36,1),
      color .24s ease,
      background .28s ease,
      border-color .28s ease,
      box-shadow .30s cubic-bezier(.22,.61,.36,1)!important;
  }

  /* No top-level icons: cleaner and equal visual rhythm for short/long labels. */
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-icon{
    display:none!important;
  }

  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
    line-height:1!important;
  }

  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label strong{
    display:block!important;
    color:inherit!important;
    font-size:12.2px!important;
    line-height:1!important;
    font-weight:800!important;
    letter-spacing:-.012em!important;
    white-space:nowrap!important;
  }

  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label small{
    display:none!important;
  }

  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-caret{
    width:10px!important;
    height:10px!important;
    flex:0 0 10px!important;
    color:#768aa0!important;
    transition:transform .28s ease,color .24s ease!important;
  }

  /* Exact same raised pill state for active, hover and open menu items. */
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link:hover,
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link.active,
  .site-header .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link,
  .site-header .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link{
    color:#0d4f8d!important;
    background:linear-gradient(180deg,#ffffff 0%,#eef6fd 100%)!important;
    border-color:#c8dced!important;
    transform:translateY(-2px)!important;
    box-shadow:
      0 4px 0 #c3d7e8,
      0 14px 25px -18px rgba(12,55,101,.58),
      inset 0 1px 0 rgba(255,255,255,.98)!important;
  }

  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link:hover > .pro-nav-caret,
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link.active > .pro-nav-caret,
  .site-header .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link > .pro-nav-caret,
  .site-header .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link > .pro-nav-caret{
    color:#1d65a7!important;
  }

  .site-header .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link > .pro-nav-caret,
  .site-header .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link > .pro-nav-caret{
    transform:rotate(180deg)!important;
  }

  /* Student Login: hero CTA language, no icon, compact and responsive. */
  .site-header .desktop-student-login.login-tile{
    box-sizing:border-box!important;
    width:auto!important;
    min-width:142px!important;
    height:46px!important;
    min-height:46px!important;
    padding:0 7px 0 18px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:11px!important;
    border:0!important;
    border-radius:999px!important;
    color:#fff!important;
    background:linear-gradient(135deg,#bd282f 0%,#d9363e 58%,#ed5b54 100%)!important;
    box-shadow:0 13px 28px rgba(202,48,56,.22)!important;
    overflow:hidden!important;
    transition:transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s ease,filter .28s ease!important;
  }

  .site-header .desktop-student-login.login-tile > svg{
    display:none!important;
  }

  .site-header .desktop-student-login.login-tile .login-label{
    display:block!important;
    margin:0!important;
    color:#fff!important;
    font-size:11.8px!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:.005em!important;
    text-transform:none!important;
    white-space:nowrap!important;
  }

  .site-header .desktop-student-login.login-tile::after{
    content:"\2197"!important;
    position:relative!important;
    inset:auto!important;
    width:32px!important;
    height:32px!important;
    flex:0 0 32px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:50%!important;
    color:#fff!important;
    background:rgba(255,255,255,.18)!important;
    border:1px solid rgba(255,255,255,.20)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.22)!important;
    font-size:13px!important;
    font-weight:900!important;
    transform:none!important;
    opacity:1!important;
    transition:transform .25s ease,background .25s ease!important;
  }

  .site-header .desktop-student-login.login-tile:hover{
    transform:translateY(-2px)!important;
    filter:saturate(1.04)!important;
    box-shadow:0 18px 34px rgba(202,48,56,.28)!important;
  }

  .site-header .desktop-student-login.login-tile:hover::after{
    transform:translate(2px,-1px) rotate(-10deg)!important;
    background:rgba(255,255,255,.28)!important;
  }
}

/* Desktop/laptop zoom safety. Text widths remain content-driven; only gaps shrink. */
@media (min-width:1281px) and (max-width:1480px){
  .site-header .bfs-navbar{column-gap:10px!important}
  .site-header .bfs-pro-nav{gap:3px!important}
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link{
    height:44px!important;
    min-height:44px!important;
    padding-inline:11px!important;
  }
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label strong{
    font-size:11.2px!important;
  }
  .site-header .desktop-student-login.login-tile{
    min-width:132px!important;
    height:44px!important;
    min-height:44px!important;
    padding-left:15px!important;
  }
  .site-header .desktop-student-login.login-tile::after{
    width:29px!important;height:29px!important;flex-basis:29px!important;
  }
}

@media (min-width:1121px) and (max-width:1280px){
  .site-header .bfs-navbar{column-gap:6px!important}
  .site-header .bfs-brand{min-width:154px!important}
  .site-header .bfs-pro-nav{gap:1px!important}
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link{
    height:42px!important;
    min-height:42px!important;
    padding-inline:8px!important;
    gap:4px!important;
  }
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label strong{
    font-size:11.2px!important;
  }
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-caret{
    width:8px!important;height:8px!important;flex-basis:8px!important;
  }
  .site-header .desktop-student-login.login-tile{
    min-width:120px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 6px 0 12px!important;
    gap:7px!important;
  }
  .site-header .desktop-student-login.login-tile .login-label{
    font-size:10.3px!important;
  }
  .site-header .desktop-student-login.login-tile::after{
    width:27px!important;height:27px!important;flex-basis:27px!important;
    font-size:11px!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link,
  .site-header .desktop-student-login.login-tile,
  .site-header .desktop-student-login.login-tile::after{
    transition:none!important;
  }
}

/* =====================================================================
   SOURCE: assets/contrast-v28.css
   ===================================================================== */
/* BFS V28 — global inner-page contrast repair + refined student login.
   Root cause fixed: V26 light-card language was overriding intentionally dark hero cards. */

:root{
  --v28-navy:#0b2d57;
  --v28-blue:#1f64a5;
  --v28-blue-2:#347fbe;
  --v28-red:#d9363e;
  --v28-red-dark:#ad222a;
  --v28-ink:#132d4c;
  --v28-muted:#66788e;
  --v28-line:#d9e5f0;
}

/* ------------------------------------------------------------------
   1. Header visibility safety across every public page.
   ------------------------------------------------------------------ */
.site-header{
  background:#fff!important;
  color:var(--v28-ink)!important;
}
.site-header .bfs-navbar,
.site-header .bfs-brand,
.site-header .bfs-pro-nav,
.site-header .bfs-nav-actions{
  opacity:1!important;
  visibility:visible!important;
}
.site-header .bfs-brand .brand-copy strong{color:#12355d!important}
.site-header .bfs-brand .brand-copy small{color:var(--v28-red)!important}

@media (min-width:1121px){
  .site-header .bfs-navbar{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    align-items:center!important;
  }
  .site-header .bfs-brand{display:inline-flex!important}
  .site-header .bfs-pro-nav{display:flex!important}
  .site-header .bfs-nav-actions{display:flex!important;align-items:center!important}
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link,
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link > .pro-nav-label strong{
    color:#14375f!important;
  }
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link:hover,
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link.active,
  .site-header .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link,
  .site-header .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link{
    color:#0d4f8d!important;
  }
}

/* ------------------------------------------------------------------
   2. Global dark hero-card restoration.
   Applies to Contact, Admission, Verification, Student Zone, Results,
   Downloads, Policies, Franchise, Status and all other inner pages.
   ------------------------------------------------------------------ */
body.inner-page .hero-side-card:not(.live-about-photo):not(.live-course-hero){
  color:#fff!important;
  background:
    radial-gradient(circle at 86% 8%,rgba(255,255,255,.12),transparent 30%),
    linear-gradient(145deg,#08264a 0%,#103d73 56%,#2469a8 100%)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 24px 58px -30px rgba(7,31,65,.58)!important;
}
body.inner-page .hero-side-card:not(.live-about-photo):not(.live-course-hero)::after{
  background:rgba(255,255,255,.07)!important;
}
body.inner-page .hero-side-card:not(.live-about-photo):not(.live-course-hero) :is(h1,h2,h3,h4,h5,strong){
  color:#fff!important;
}
body.inner-page .hero-side-card:not(.live-about-photo):not(.live-course-hero) :is(p,span,small,li){
  color:rgba(255,255,255,.75)!important;
}
body.inner-page .hero-side-card:not(.live-about-photo):not(.live-course-hero) a{
  color:#d8ebff!important;
}
body.inner-page .hero-side-card:not(.live-about-photo):not(.live-course-hero) svg{
  color:#a8d2ff!important;
}
body.inner-page .hero-side-card:not(.live-about-photo):not(.live-course-hero) .hero-side-item{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.11)!important;
}
body.inner-page .hero-side-card:not(.live-about-photo):not(.live-course-hero) .hero-side-item strong{
  color:#fff!important;
}
body.inner-page .hero-side-card:not(.live-about-photo):not(.live-course-hero) .hero-side-item small{
  color:rgba(255,255,255,.66)!important;
}

/* Contact and branch details: explicitly preserve readable contrast. */
body.inner-page .contact-card-live{
  color:#fff!important;
  background:
    radial-gradient(circle at 88% 5%,rgba(255,255,255,.13),transparent 32%),
    linear-gradient(145deg,#08264a 0%,#103d73 58%,#2269aa 100%)!important;
}
body.inner-page .contact-card-live .contact-live-item{
  background:rgba(255,255,255,.09)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
body.inner-page .contact-card-live .contact-live-item strong{color:#fff!important}
body.inner-page .contact-card-live .contact-live-item :is(span,a){color:rgba(255,255,255,.74)!important}
body.inner-page .contact-card-live .contact-live-item > svg{color:#a9d3ff!important}

/* Image hero cards must remain image-led and must not receive white card fill. */
body.inner-page .hero-side-card.live-about-photo,
body.inner-page .hero-side-card.live-course-hero{
  background:#0d376d!important;
  border-color:#d7e3ee!important;
  color:#fff!important;
}
body.inner-page .hero-side-card.live-about-photo .photo-overlay,
body.inner-page .hero-side-card.live-course-hero .photo-overlay{
  color:#fff!important;
  background:rgba(7,27,54,.86)!important;
}
body.inner-page .hero-side-card.live-about-photo .photo-overlay strong,
body.inner-page .hero-side-card.live-course-hero .photo-overlay strong{color:#fff!important}
body.inner-page .hero-side-card.live-about-photo .photo-overlay span,
body.inner-page .hero-side-card.live-course-hero .photo-overlay span{color:rgba(255,255,255,.74)!important}

/* Light card readability safeguards without changing their approved design. */
body.inner-page :is(.panel-card,.feature-card,.info-card,.service-card,.detail-card,.status-card,.download-card,.verification-card,.branch-card,.faculty-card,.blog-card,.live-gallery-card,.course-card,.step-card){
  color:var(--v28-ink)!important;
}
body.inner-page :is(.panel-card,.feature-card,.info-card,.service-card,.detail-card,.status-card,.download-card,.verification-card,.branch-card,.faculty-card,.blog-card,.live-gallery-card,.course-card,.step-card) > :is(h2,h3,h4,strong){
  color:var(--v28-ink)!important;
}
body.inner-page :is(.panel-card,.feature-card,.info-card,.service-card,.detail-card,.status-card,.download-card,.verification-card,.branch-card,.faculty-card,.blog-card,.live-gallery-card,.course-card,.step-card) > :is(p,small){
  color:var(--v28-muted)!important;
}

/* ------------------------------------------------------------------
   3. Student Login — compact, balanced, premium hero-CTA language.
   ------------------------------------------------------------------ */
@media (min-width:1121px){
  .site-header .desktop-student-login.login-tile{
    box-sizing:border-box!important;
    width:auto!important;
    min-width:128px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 6px 0 17px!important;
    gap:9px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    border:1px solid rgba(151,24,31,.15)!important;
    border-radius:999px!important;
    color:#fff!important;
    background:linear-gradient(135deg,#b8232b 0%,#d9363e 58%,#ed5a53 100%)!important;
    box-shadow:
      0 3px 0 var(--v28-red-dark),
      0 13px 27px -17px rgba(184,35,43,.72)!important;
    overflow:hidden!important;
    transform:translateY(0)!important;
    transition:transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s ease,filter .28s ease!important;
  }
  .site-header .desktop-student-login.login-tile > svg{display:none!important}
  .site-header .desktop-student-login.login-tile .login-label{
    display:block!important;
    margin:0!important;
    color:#fff!important;
    font-size:11.2px!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:.005em!important;
    white-space:nowrap!important;
  }
  .site-header .desktop-student-login.login-tile::after{
    content:"\2197"!important;
    position:relative!important;
    inset:auto!important;
    width:27px!important;
    height:27px!important;
    flex:0 0 27px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:50%!important;
    color:#fff!important;
    background:rgba(255,255,255,.18)!important;
    border:1px solid rgba(255,255,255,.21)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.22)!important;
    font-size:11px!important;
    font-weight:900!important;
    transform:none!important;
    opacity:1!important;
    transition:transform .25s ease,background .25s ease!important;
  }
  .site-header .desktop-student-login.login-tile:hover{
    transform:translateY(-2px)!important;
    filter:saturate(1.04)!important;
    box-shadow:
      0 5px 0 #a91f27,
      0 18px 34px -18px rgba(184,35,43,.82)!important;
  }
  .site-header .desktop-student-login.login-tile:hover::after{
    transform:translate(2px,-1px) rotate(-10deg)!important;
    background:rgba(255,255,255,.29)!important;
  }
}

@media (min-width:1121px) and (max-width:1280px){
  .site-header .desktop-student-login.login-tile{
    min-width:114px!important;
    height:40px!important;
    min-height:40px!important;
    padding-left:13px!important;
    gap:6px!important;
  }
  .site-header .desktop-student-login.login-tile .login-label{font-size:10.2px!important}
  .site-header .desktop-student-login.login-tile::after{
    width:24px!important;height:24px!important;flex-basis:24px!important;font-size:10px!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .site-header .desktop-student-login.login-tile,
  .site-header .desktop-student-login.login-tile::after{transition:none!important}
}

/* =====================================================================
   SOURCE: assets/ui-v29.css
   ===================================================================== */
/* BFS V29: focused faculty cards, brand sizing, nav typography and student-login sizing. */

/* ===== HEADER / BRAND / NAV ===== */
@media (min-width:1121px){
  .site-header .bfs-navbar{
    grid-template-columns:minmax(260px,auto) minmax(0,1fr) auto!important;
    column-gap:24px!important;
  }
  .site-header .bfs-brand{
    min-width:260px!important;
    gap:12px!important;
    flex-shrink:0!important;
  }
  .site-header .bfs-brand .brand-logo{
    width:66px!important;
    height:66px!important;
    object-fit:contain!important;
    flex:0 0 66px!important;
  }
  .site-header .bfs-brand .brand-copy{
    display:flex!important;
    flex-direction:column!important;
    min-width:0!important;
    white-space:nowrap!important;
  }
  .site-header .bfs-brand .brand-copy strong{
    display:block!important;
    white-space:nowrap!important;
    font-size:16px!important;
    line-height:1.15!important;
    letter-spacing:-.015em!important;
  }
  .site-header .bfs-brand .brand-copy small{
    display:block!important;
    white-space:nowrap!important;
    margin-top:5px!important;
    font-size:8px!important;
    line-height:1!important;
    letter-spacing:.12em!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link,
  .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link{
    font-size:14px!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link .pro-nav-label strong,
  .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link .pro-nav-label strong{
    font-size:14px!important;
  }
  .site-header .desktop-student-login.login-tile{
    width:auto!important;
    min-width:186px!important;
    max-width:none!important;
    min-height:54px!important;
    height:54px!important;
    padding:0 10px 0 24px!important;
    gap:14px!important;
    white-space:nowrap!important;
    justify-content:space-between!important;
  }
  .site-header .desktop-student-login.login-tile .login-label{
    flex:1 1 auto!important;
    white-space:nowrap!important;
    text-align:center!important;
    font-size:14px!important;
    line-height:1!important;
  }
  .site-header .desktop-student-login.login-tile::after{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    flex:0 0 38px!important;
  }
}

@media (min-width:1121px) and (max-width:1360px){
  .site-header .bfs-navbar{
    grid-template-columns:minmax(220px,auto) minmax(0,1fr) auto!important;
    column-gap:14px!important;
  }
  .site-header .bfs-brand{min-width:220px!important;gap:9px!important}
  .site-header .bfs-brand .brand-logo{width:58px!important;height:58px!important;flex-basis:58px!important}
  .site-header .bfs-brand .brand-copy strong{font-size:14px!important}
  .site-header .bfs-brand .brand-copy small{font-size:7px!important;letter-spacing:.09em!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link,
  .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link{font-size:13px!important;padding-inline:12px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link .pro-nav-label strong,
  .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link .pro-nav-label strong{font-size:13px!important}
  .site-header .desktop-student-login.login-tile{min-width:168px!important;padding-left:18px!important}
}

/* ===== FACULTY PAGE: PHOTO + NAME + EXPERIENCE + OCCUPATION ===== */
.faculty-profile-grid-v29{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  margin-top:28px;
}
.faculty-profile-card-v29{
  position:relative;
  overflow:hidden;
  border:1px solid #dce6f0;
  border-radius:7px;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  box-shadow:0 18px 46px -34px rgba(12,48,89,.42);
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.faculty-profile-card-v29:hover{
  transform:translateY(-8px);
  border-color:#b7cee5;
  box-shadow:0 30px 62px -34px rgba(12,48,89,.50);
}
.faculty-profile-card-v29::after{
  content:"";
  position:absolute;
  width:130px;
  height:130px;
  right:-52px;
  bottom:-54px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(35,105,177,.14),rgba(35,105,177,0) 70%);
  pointer-events:none;
}
.faculty-profile-card-v29:nth-child(even)::after{
  background:radial-gradient(circle,rgba(216,53,59,.13),rgba(216,53,59,0) 70%);
}
.faculty-profile-photo-v29{
  position:relative;
  height:245px;
  overflow:hidden;
  background:#eaf2fb;
}
.faculty-profile-photo-v29 img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center top;
  transition:transform .45s ease;
}
.faculty-profile-card-v29:hover .faculty-profile-photo-v29 img{transform:scale(1.045)}
.faculty-profile-photo-v29>span{
  position:absolute;
  left:16px;
  top:16px;
  padding:8px 11px;
  border-radius:7px;
  color:#fff;
  background:rgba(13,56,104,.88);
  backdrop-filter:blur(8px);
  font-size:9px;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.faculty-profile-card-v29:nth-child(even) .faculty-profile-photo-v29>span{background:rgba(204,48,55,.88)}
.faculty-profile-body-v29{
  position:relative;
  z-index:1;
  padding:22px;
}
.faculty-profile-body-v29>small{
  color:#d8353b;
  font-size:9px;
  font-weight:850;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.faculty-profile-body-v29 h3{
  margin:7px 0 6px;
  color:#102b4d;
  font-size:20px;
  line-height:1.28;
  letter-spacing:-.025em;
}
.faculty-profile-role-v29{
  color:#2868aa;
  font-size:12px;
  font-weight:800;
  line-height:1.4;
}
.faculty-profile-meta-v29{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:17px 0 15px;
}
.faculty-profile-meta-v29 span{
  min-width:0;
  padding:11px 12px;
  border:1px solid #dce7f2;
  border-radius:7px;
  background:#f1f6fc;
  color:#526981;
  font-size:11px;
  line-height:1.45;
}
.faculty-profile-meta-v29 span:nth-child(2){background:#fff3f4;border-color:#f2d9dc}
.faculty-profile-meta-v29 b{
  display:block;
  margin-bottom:4px;
  color:#183a63;
  font-size:9px;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.faculty-profile-body-v29 p{
  margin:0;
  color:#61748a;
  font-size:12px;
  line-height:1.68;
}
.faculty-profile-skills-v29{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:17px;
}
.faculty-profile-skills-v29 span{
  padding:7px 10px;
  border-radius:999px;
  background:#eaf3fd;
  color:#225d9c;
  font-size:10px;
  font-weight:800;
}
.faculty-profile-card-v29:nth-child(even) .faculty-profile-skills-v29 span{
  background:#fff0f1;
  color:#bf3038;
}

/* ===== HOMEPAGE FACULTY CARDS ===== */
.faculty-motion-card{
  border-radius:7px!important;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important;
  border-color:#dce6f0!important;
  box-shadow:0 18px 46px -34px rgba(12,48,89,.40)!important;
}
.faculty-motion-card:hover{
  transform:translateY(-7px)!important;
  border-color:#b7cee5!important;
  box-shadow:0 30px 58px -34px rgba(12,48,89,.48)!important;
}
.faculty-motion-photo,
.faculty-motion-photo img,
.faculty-exp-badge{
  border-radius:7px!important;
}
.faculty-home-meta-v29{
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
  margin:12px 0;
}
.faculty-home-meta-v29 span{
  display:block;
  padding:8px 10px;
  border:1px solid #dce7f2;
  border-radius:7px;
  background:#f1f6fc;
  color:#526981;
  font-size:10px;
  line-height:1.4;
}
.faculty-home-meta-v29 span:nth-child(2){background:#fff3f4;border-color:#f2d9dc}
.faculty-home-meta-v29 small{
  display:block;
  margin-bottom:2px;
  color:#1c4e84;
  font-size:8px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}

@media(max-width:1080px){
  .faculty-profile-grid-v29{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .faculty-profile-grid-v29{grid-template-columns:1fr;gap:16px}
  .faculty-profile-photo-v29{height:235px}
  .faculty-profile-body-v29{padding:18px}
  .faculty-profile-meta-v29{grid-template-columns:1fr}
}


/* ===== V35 FACULTY CARD REDESIGN: cleaner premium relevant cards ===== */
.faculty-profile-grid-v29{
  gap:24px;
}
.faculty-profile-card-v29{
  display:flex;
  flex-direction:column;
  border:1px solid #d5e3f0;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
  box-shadow:0 22px 56px -38px rgba(10,39,76,.42), 0 1px 0 rgba(255,255,255,.85) inset;
}
.faculty-profile-card-v29::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg,#1f5f9f,#6ca6da 65%,transparent);
  z-index:2;
}
.faculty-profile-card-v29:nth-child(even)::before{
  background:linear-gradient(90deg,#d6322f,#ee8580 65%,transparent);
}
.faculty-profile-card-v29:hover{
  transform:translateY(-8px);
  border-color:#b2cae0;
  box-shadow:0 34px 72px -42px rgba(10,39,76,.50);
}
.faculty-profile-photo-v29{
  height:228px;
  margin:14px 14px 0;
  border-radius:14px;
  background:linear-gradient(180deg,#edf4fb 0%,#dbe8f7 100%);
}
.faculty-profile-photo-v29 img{
  border-radius:14px;
}
.faculty-profile-photo-v29>span{
  top:auto;
  bottom:14px;
  left:14px;
  padding:8px 12px;
  border-radius:999px;
  letter-spacing:.11em;
  box-shadow:0 10px 24px rgba(10,39,76,.18);
}
.faculty-profile-body-v29{
  padding:20px 20px 22px;
}
.faculty-profile-body-v29>small{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  background:#eef5fd;
  color:#1f5f9f;
  letter-spacing:.10em;
}
.faculty-profile-body-v29 h3{
  margin:11px 0 8px;
  font-size:21px;
  line-height:1.24;
}
.faculty-profile-role-v29{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:8px 12px;
  border-radius:999px;
  background:linear-gradient(180deg,#f6faff 0%,#eef5fd 100%);
  border:1px solid #d6e4f1;
  color:#1f5f9f;
  font-size:11px;
  font-weight:800;
  box-shadow:0 8px 18px rgba(31,95,159,.08);
}
.faculty-profile-meta-v29{
  gap:11px;
  margin:16px 0 14px;
}
.faculty-profile-meta-v29 span{
  position:relative;
  padding:12px 13px 12px 15px;
  border-radius:14px;
  background:#f8fbff;
  border:1px solid #d9e6f2;
  box-shadow:0 12px 28px -26px rgba(14,47,89,.35);
}
.faculty-profile-meta-v29 span::before{
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:4px;
  border-radius:0 4px 4px 0;
  background:linear-gradient(180deg,#1f5f9f,#78acdb);
}
.faculty-profile-meta-v29 span:nth-child(2){background:#fff8f8;border-color:#f0d9dd}
.faculty-profile-meta-v29 span:nth-child(2)::before{background:linear-gradient(180deg,#d6322f,#f08984)}
.faculty-profile-meta-v29 b{
  margin-bottom:5px;
  color:#1a456f;
}
.faculty-profile-body-v29 p{
  color:#5d7288;
  font-size:12px;
  line-height:1.75;
}
.faculty-profile-skills-v29{
  margin-top:18px;
  gap:9px;
}
.faculty-profile-skills-v29 span{
  padding:8px 12px;
  border-radius:999px;
  background:linear-gradient(180deg,#eef5fd 0%,#e5f0fc 100%);
  box-shadow:0 10px 22px -18px rgba(31,95,159,.45);
}
.faculty-profile-card-v29:nth-child(even) .faculty-profile-skills-v29 span{
  background:linear-gradient(180deg,#fff4f5 0%,#ffedef 100%);
  color:#c13038;
}

.faculty-motion-card{
  position:relative;
  overflow:hidden;
  width:336px;
  min-width:336px;
  grid-template-columns:118px 1fr;
  padding:10px;
  border:1px solid #d6e4f0!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  box-shadow:0 24px 54px -40px rgba(10,39,76,.42)!important;
}
.faculty-motion-card::before{
  content:"";
  position:absolute;
  left:10px;
  right:10px;
  top:0;
  height:4px;
  border-radius:0 0 14px 14px;
  background:linear-gradient(90deg,#1f5f9f,#78acdb 70%,transparent);
}
.faculty-motion-card:nth-child(even)::before{
  background:linear-gradient(90deg,#d6322f,#f08984 70%,transparent);
}
.faculty-motion-card::after{
  content:"";
  position:absolute;
  right:-36px;
  bottom:-36px;
  width:112px;
  height:112px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(31,95,159,.10),rgba(31,95,159,0) 70%);
  pointer-events:none;
}
.faculty-motion-card:hover{
  transform:translateY(-7px)!important;
  border-color:#afc8df!important;
  box-shadow:0 34px 64px -42px rgba(10,39,76,.48)!important;
}
.faculty-motion-photo{
  min-height:176px;
  border-radius:14px!important;
  background:linear-gradient(180deg,#ebf3fb 0%,#dce9f8 100%);
}
.faculty-motion-photo img{
  min-height:176px;
  border-radius:14px!important;
}
.faculty-exp-badge{
  left:10px;
  right:auto;
  bottom:10px;
  justify-content:flex-start;
  max-width:calc(100% - 20px);
  padding:7px 10px;
  border-radius:999px!important;
  background:rgba(9,33,65,.84);
  font-size:9px;
  box-shadow:0 14px 28px rgba(6,23,48,.20);
}
.faculty-exp-badge svg{flex:0 0 13px}
.faculty-motion-copy{
  min-width:0;
  padding:8px 8px 8px 16px;
  justify-content:flex-start;
}
.faculty-speciality{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  padding:6px 10px;
  border-radius:999px;
  background:#eef5fd;
  color:#1f5f9f;
  font-size:8.5px;
  letter-spacing:.10em;
}
.faculty-motion-copy h3{
  margin:9px 0 8px;
  font-size:18px;
  line-height:1.22;
}
.faculty-home-meta-v29{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin:12px 0 11px;
}
.faculty-home-meta-v29 span{
  position:relative;
  padding:9px 10px 9px 12px;
  border-radius:12px;
  background:#f8fbff;
  border:1px solid #dae7f3;
  color:#53697e;
  font-size:9.5px;
  line-height:1.38;
  box-shadow:0 10px 22px -22px rgba(10,39,76,.35);
}
.faculty-home-meta-v29 span::before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:3px;
  border-radius:0 3px 3px 0;
  background:linear-gradient(180deg,#1f5f9f,#78acdb);
}
.faculty-home-meta-v29 span:nth-child(2){background:#fff8f8;border-color:#f0d9dd}
.faculty-home-meta-v29 span:nth-child(2)::before{background:linear-gradient(180deg,#d6322f,#f08984)}
.faculty-home-meta-v29 span:nth-child(3){grid-column:1/-1}
.faculty-home-meta-v29 small{
  margin-bottom:3px;
  color:#184a7f;
  font-size:7.8px;
  letter-spacing:.10em;
}
.faculty-motion-copy p{
  margin:0 0 12px;
  font-size:10.6px;
  line-height:1.62;
  color:#5d7288;
}
.faculty-skill-line{
  padding:8px 11px;
  border-radius:999px;
  background:linear-gradient(180deg,#edf5ff 0%,#e4effc 100%);
  color:#1e5f9c;
  font-size:9px;
  font-weight:800;
  letter-spacing:.02em;
  box-shadow:0 12px 24px -20px rgba(31,95,159,.48);
}

@media(max-width:1080px){
  .faculty-profile-grid-v29{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .faculty-motion-card{width:314px;min-width:314px;grid-template-columns:106px 1fr}
  .faculty-motion-photo,.faculty-motion-photo img{min-height:166px}
}
@media(max-width:700px){
  .faculty-profile-card-v29{border-radius:14px}
  .faculty-profile-photo-v29{height:220px;margin:12px 12px 0}
  .faculty-profile-meta-v29{grid-template-columns:1fr}
  .faculty-profile-body-v29{padding:18px}
  .faculty-motion-card{width:290px;min-width:290px;grid-template-columns:94px 1fr;padding:8px;border-radius:16px!important}
  .faculty-motion-photo,.faculty-motion-photo img{min-height:156px}
  .faculty-motion-copy{padding:6px 6px 6px 12px}
  .faculty-home-meta-v29{grid-template-columns:1fr}
  .faculty-home-meta-v29 span:nth-child(3){grid-column:auto}
}

/* =====================================================================
   SOURCE: assets/ui-v30.css
   ===================================================================== */
/* BFS V30 — final compact Student Login button correction only. */
@media (min-width:1121px){
  .site-header .desktop-student-login.login-tile{
    box-sizing:border-box!important;
    width:auto!important;
    min-width:154px!important;
    max-width:160px!important;
    height:46px!important;
    min-height:46px!important;
    padding:0 7px 0 18px!important;
    gap:9px!important;
    justify-content:space-between!important;
    border-radius:999px!important;
    white-space:nowrap!important;
  }
  .site-header .desktop-student-login.login-tile .login-label{
    font-size:12.5px!important;
    line-height:1!important;
    flex:1 1 auto!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
  .site-header .desktop-student-login.login-tile::after{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    flex:0 0 30px!important;
    font-size:11px!important;
  }
}
@media (min-width:1121px) and (max-width:1360px){
  .site-header .desktop-student-login.login-tile{
    min-width:140px!important;
    max-width:146px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 6px 0 15px!important;
    gap:7px!important;
  }
  .site-header .desktop-student-login.login-tile .login-label{
    font-size:11.5px!important;
  }
  .site-header .desktop-student-login.login-tile::after{
    width:27px!important;
    height:27px!important;
    min-width:27px!important;
    flex-basis:27px!important;
    font-size:10px!important;
  }
}

/* =====================================================================
   SOURCE: assets/ui-v31.css
   ===================================================================== */
/* BFS V31 — final Student Login button geometry fix.
   Keeps the approved red CTA language while making it compact,
   vertically centred and free from arrow clipping. */

@media (min-width:1121px){
  .site-header .nav-actions.bfs-nav-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    min-width:0!important;
  }

  .site-header .desktop-student-login.login-tile{
    position:relative!important;
    box-sizing:border-box!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:148px!important;
    min-width:148px!important;
    max-width:148px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 39px 0 16px!important;
    margin:0!important;
    gap:0!important;
    overflow:hidden!important;
    border:0!important;
    border-radius:999px!important;
    background:linear-gradient(135deg,#bd282f 0%,#d9363e 58%,#ed5b54 100%)!important;
    box-shadow:0 10px 22px rgba(202,48,56,.20)!important;
    color:#fff!important;
    white-space:nowrap!important;
    transform:none!important;
    transition:transform .24s ease,box-shadow .24s ease,filter .24s ease!important;
  }

  .site-header .desktop-student-login.login-tile > svg{
    display:none!important;
  }

  .site-header .desktop-student-login.login-tile .login-label{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    color:#fff!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:0!important;
    text-transform:none!important;
    text-align:center!important;
    white-space:nowrap!important;
  }

  .site-header .desktop-student-login.login-tile::before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    background:linear-gradient(110deg,transparent 22%,rgba(255,255,255,.17) 50%,transparent 78%)!important;
    transform:translateX(-135%)!important;
    pointer-events:none!important;
    transition:transform .5s ease!important;
  }

  .site-header .desktop-student-login.login-tile::after{
    content:"\2197"!important;
    position:absolute!important;
    right:5px!important;
    top:50%!important;
    left:auto!important;
    bottom:auto!important;
    inset-inline-start:auto!important;
    inset-inline-end:5px!important;
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    flex:none!important;
    display:grid!important;
    place-items:center!important;
    margin:0!important;
    border-radius:50%!important;
    border:1px solid rgba(255,255,255,.22)!important;
    background:rgba(255,255,255,.18)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.22)!important;
    color:#fff!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:900!important;
    opacity:1!important;
    transform:translateY(-50%)!important;
    pointer-events:none!important;
    transition:transform .24s ease,background .24s ease!important;
  }

  .site-header .desktop-student-login.login-tile:hover{
    transform:translateY(-2px)!important;
    filter:saturate(1.04)!important;
    box-shadow:0 15px 28px rgba(202,48,56,.26)!important;
  }

  .site-header .desktop-student-login.login-tile:hover::before{
    transform:translateX(135%)!important;
  }

  .site-header .desktop-student-login.login-tile:hover::after{
    transform:translate(2px,-50%) rotate(-10deg)!important;
    background:rgba(255,255,255,.28)!important;
  }
}

@media (min-width:1121px) and (max-width:1360px){
  .site-header .desktop-student-login.login-tile{
    width:136px!important;
    min-width:136px!important;
    max-width:136px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0 35px 0 13px!important;
  }
  .site-header .desktop-student-login.login-tile .login-label{
    font-size:11.2px!important;
  }
  .site-header .desktop-student-login.login-tile::after{
    right:4px!important;
    inset-inline-end:4px!important;
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    font-size:10px!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .site-header .desktop-student-login.login-tile,
  .site-header .desktop-student-login.login-tile::before,
  .site-header .desktop-student-login.login-tile::after{
    transition:none!important;
  }
}

/* =====================================================================
   SOURCE: assets/ui-v32.css
   ===================================================================== */
/* BFS V32 — structural Student Login CTA fix.
   Uses real child elements instead of pseudo-elements so previous
   shared button styles cannot push or clip the arrow. */

@media (min-width:1121px){
  .site-header .nav-actions.bfs-nav-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    min-width:0!important;
  }

  .site-header .desktop-student-login.login-cta{
    position:relative!important;
    isolation:isolate!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 30px!important;
    align-items:center!important;
    column-gap:8px!important;
    width:146px!important;
    min-width:146px!important;
    max-width:146px!important;
    height:42px!important;
    min-height:42px!important;
    padding:5px 5px 5px 15px!important;
    margin:0!important;
    border:0!important;
    border-radius:999px!important;
    overflow:hidden!important;
    text-decoration:none!important;
    white-space:nowrap!important;
    color:#fff!important;
    background:linear-gradient(135deg,#bd282f 0%,#d9363e 58%,#ed5b54 100%)!important;
    box-shadow:0 10px 22px rgba(202,48,56,.20)!important;
    transform:translateY(0)!important;
    transition:transform .24s ease,box-shadow .24s ease,filter .24s ease!important;
  }

  .site-header .desktop-student-login.login-cta::before,
  .site-header .desktop-student-login.login-cta::after{
    content:none!important;
    display:none!important;
  }

  .site-header .desktop-student-login.login-cta .login-label{
    display:block!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    color:#fff!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:0!important;
    text-transform:none!important;
    text-align:center!important;
    white-space:nowrap!important;
  }

  .site-header .desktop-student-login.login-cta .login-arrow{
    display:grid!important;
    place-items:center!important;
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    min-height:30px!important;
    margin:0!important;
    padding:0!important;
    border-radius:50%!important;
    border:1px solid rgba(255,255,255,.24)!important;
    background:rgba(255,255,255,.18)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.24)!important;
    color:#fff!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:900!important;
    transform:translate(0,0)!important;
    transition:transform .24s ease,background .24s ease!important;
  }

  .site-header .desktop-student-login.login-cta:hover{
    transform:translateY(-2px)!important;
    filter:saturate(1.04)!important;
    box-shadow:0 15px 28px rgba(202,48,56,.27)!important;
  }

  .site-header .desktop-student-login.login-cta:hover .login-arrow{
    transform:translateX(2px) rotate(-10deg)!important;
    background:rgba(255,255,255,.28)!important;
  }

  .site-header .desktop-student-login.login-cta:focus-visible{
    outline:3px solid rgba(40,111,184,.22)!important;
    outline-offset:3px!important;
  }
}

@media (min-width:1121px) and (max-width:1360px){
  .site-header .desktop-student-login.login-cta{
    grid-template-columns:minmax(0,1fr) 28px!important;
    width:136px!important;
    min-width:136px!important;
    max-width:136px!important;
    height:40px!important;
    min-height:40px!important;
    padding:5px 5px 5px 12px!important;
    column-gap:6px!important;
  }
  .site-header .desktop-student-login.login-cta .login-label{
    font-size:11.5px!important;
  }
  .site-header .desktop-student-login.login-cta .login-arrow{
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    min-height:28px!important;
    font-size:10px!important;
  }
}

@media (max-width:1120px){
  .site-header .desktop-student-login.login-cta{display:none!important}
}

@media (prefers-reduced-motion:reduce){
  .site-header .desktop-student-login.login-cta,
  .site-header .desktop-student-login.login-cta .login-arrow{
    transition:none!important;
  }
}

/* =====================================================================
   SOURCE: assets/ui-v37.css
   ===================================================================== */
/* ============================================================
   V37 — Exact Welfare main-navigation behavior + compact faculty cards
   Logo and Student Login button intentionally untouched.
   ============================================================ */

/* LARGE VIEW: only top-level BFS navigation menu adopts Welfare design. */
@media (min-width:1121px){
  .bfs-pro-nav{
    flex:1 1 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  .bfs-pro-nav > .nav-item,
  .bfs-pro-nav > .simple-dropdown-item{
    position:relative!important;
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link,
  .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link{
    position:relative!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    width:auto!important;
    min-width:0!important;
    height:40px!important;
    min-height:40px!important;
    padding:0 13px!important;
    margin:0!important;
    border:0!important;
    border-radius:10px!important;
    background:transparent!important;
    color:#111c2f!important;
    box-shadow:none!important;
    transform:none!important;
    white-space:nowrap!important;
    font-family:inherit!important;
    font-size:14px!important;
    font-weight:650!important;
    line-height:1!important;
    letter-spacing:-.01em!important;
    transition:background .18s ease,color .18s ease,box-shadow .18s ease!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link:hover,
  .bfs-pro-nav > .nav-item > .pro-nav-link.active,
  .bfs-pro-nav > .nav-item.dropdown-open > .pro-nav-link,
  .bfs-pro-nav > .simple-dropdown-item:hover > .pro-nav-link,
  .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link,
  .bfs-pro-nav > .simple-dropdown-item.dropdown-open > .pro-nav-link{
    background:#eef3f8!important;
    color:#071529!important;
    box-shadow:inset 0 -3px 0 #f4b63f!important;
    transform:none!important;
  }
  .bfs-pro-nav > .nav-item > .pro-nav-link::before,
  .bfs-pro-nav > .nav-item > .pro-nav-link::after,
  .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link::before,
  .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link::after{
    display:none!important;
    content:none!important;
  }
  .bfs-pro-nav .pro-nav-icon,
  .bfs-pro-nav .pro-nav-label small{
    display:none!important;
  }
  .bfs-pro-nav .pro-nav-label{
    display:block!important;
    line-height:1!important;
  }
  .bfs-pro-nav .pro-nav-label strong{
    display:block!important;
    color:inherit!important;
    font:inherit!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .bfs-pro-nav .pro-nav-caret{
    width:11px!important;
    height:11px!important;
    margin-left:0!important;
    color:#64748b!important;
    transition:transform .18s ease,color .18s ease!important;
  }
  .bfs-pro-nav > .simple-dropdown-item:hover > .pro-nav-link .pro-nav-caret,
  .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link .pro-nav-caret,
  .bfs-pro-nav > .simple-dropdown-item.dropdown-open > .pro-nav-link .pro-nav-caret{
    color:#955d00!important;
    transform:rotate(180deg)!important;
  }
}
@media (min-width:1121px) and (max-width:1360px){
  .bfs-pro-nav{gap:3px!important}
  .bfs-pro-nav > .nav-item > .pro-nav-link,
  .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link{
    height:38px!important;
    min-height:38px!important;
    padding:0 9px!important;
    font-size:12.5px!important;
  }
}

/* Homepage faculty: screenshot-inspired compact horizontal carousel. */
.faculty-showcase-section{
  overflow:hidden;
  background:#fff;
}
.faculty-showcase-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:28px;
}
.faculty-showcase-title{
  flex:1 1 auto;
  text-align:center;
}
.faculty-showcase-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  color:#c91f27;
  font-size:11px;
  font-weight:850;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.faculty-showcase-kicker i{
  width:30px;
  height:1px;
  background:#c91f27;
}
.faculty-showcase-title h2{
  margin:12px 0 8px;
  color:#10141c;
  font-size:clamp(30px,3vw,43px);
  line-height:1.08;
  letter-spacing:-.035em;
}
.faculty-showcase-title p{
  max-width:760px;
  margin:0 auto;
  color:#65758a;
  font-size:15px;
  line-height:1.65;
}
.faculty-showcase-controls{
  display:flex;
  gap:10px;
  flex:0 0 auto;
}
.faculty-showcase-arrow{
  width:42px;
  height:42px;
  border:1px solid #dce4ed;
  border-radius:50%;
  background:#fff;
  color:#132c4e;
  display:grid;
  place-items:center;
  font-size:20px;
  cursor:pointer;
  box-shadow:0 12px 28px rgba(11,35,75,.08);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease;
}
.faculty-showcase-arrow:hover{
  transform:translateY(-2px);
  border-color:#d22f36;
  color:#d22f36;
  box-shadow:0 18px 34px rgba(11,35,75,.14);
}
.faculty-showcase-viewport{
  overflow-x:auto;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  padding:4px 2px 12px;
}
.faculty-showcase-viewport::-webkit-scrollbar{display:none}
.faculty-showcase-track{
  display:flex;
  gap:16px;
  width:max-content;
}
.faculty-showcase-card{
  position:relative;
  width:220px;
  min-width:220px;
  overflow:hidden;
  scroll-snap-align:start;
  border:1px solid #e0e6ed;
  border-radius:14px;
  background:#fff;
  box-shadow:0 16px 38px rgba(11,35,75,.07);
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.faculty-showcase-card:hover{
  transform:translateY(-7px);
  border-color:#f0b6b9;
  box-shadow:0 28px 54px rgba(11,35,75,.14);
}
.faculty-showcase-photo{
  position:relative;
  height:218px;
  overflow:hidden;
  background:linear-gradient(180deg,#f8eeee,#f1f5f8);
}
.faculty-showcase-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
  transition:transform .45s ease;
}
.faculty-showcase-card:hover .faculty-showcase-photo img{transform:scale(1.04)}
.faculty-showcase-exp{
  position:absolute;
  right:10px;
  bottom:10px;
  max-width:calc(100% - 20px);
  padding:6px 9px;
  border-radius:999px;
  background:#d52f37;
  color:#fff;
  font-size:9px;
  font-weight:800;
  line-height:1.2;
  box-shadow:0 10px 22px rgba(213,47,55,.24);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.faculty-showcase-body{
  min-height:126px;
  padding:15px 14px 16px;
}
.faculty-showcase-body h3{
  margin:0 0 7px;
  color:#172238;
  font-size:15px;
  line-height:1.3;
}
.faculty-showcase-body strong{
  display:block;
  color:#d32e35;
  font-size:11px;
  line-height:1.4;
}
.faculty-showcase-body p{
  margin:10px 0 0;
  padding-top:9px;
  border-top:1px solid #edf0f4;
  color:#718096;
  font-size:10px;
  line-height:1.5;
}
.faculty-showcase-footer{
  display:flex;
  justify-content:center;
  margin-top:22px;
}
.faculty-showcase-footer a{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:#cf2028;
  font-size:14px;
  font-weight:800;
}
.faculty-showcase-footer a span{transition:transform .2s ease}
.faculty-showcase-footer a:hover span{transform:translateX(4px)}

/* Faculty page: same visual language, compact and label-free. */
.faculty-profile-grid-v29{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
}
.faculty-profile-card-v29{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  overflow:hidden!important;
  border:1px solid #e0e6ed!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 16px 38px rgba(11,35,75,.07)!important;
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease!important;
}
.faculty-profile-card-v29::before,
.faculty-profile-card-v29::after{display:none!important;content:none!important}
.faculty-profile-card-v29:hover{
  transform:translateY(-7px)!important;
  border-color:#efb7ba!important;
  box-shadow:0 28px 54px rgba(11,35,75,.14)!important;
}
.faculty-profile-photo-v29{
  position:relative!important;
  height:220px!important;
  min-height:220px!important;
  margin:0!important;
  border-radius:0!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#f8eeee,#eef3f7)!important;
}
.faculty-profile-photo-v29 img{
  width:100%!important;
  height:100%!important;
  min-height:220px!important;
  border-radius:0!important;
  object-fit:cover!important;
  object-position:center top!important;
  transition:transform .45s ease!important;
}
.faculty-profile-card-v29:hover .faculty-profile-photo-v29 img{transform:scale(1.04)!important}
.faculty-card-experience{
  position:absolute!important;
  right:10px!important;
  bottom:10px!important;
  max-width:calc(100% - 20px)!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  background:#d52f37!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:800!important;
  line-height:1.2!important;
  box-shadow:0 10px 22px rgba(213,47,55,.24)!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.faculty-profile-body-v29{
  padding:15px 14px 16px!important;
  display:block!important;
}
.faculty-profile-body-v29>small,
.faculty-profile-meta-v29,
.faculty-profile-body-v29>p{display:none!important}
.faculty-profile-body-v29 h3{
  margin:0 0 7px!important;
  color:#172238!important;
  font-size:15px!important;
  line-height:1.3!important;
}
.faculty-profile-role-v29{
  display:block!important;
  width:auto!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#d32e35!important;
  font-size:11px!important;
  line-height:1.4!important;
  font-weight:800!important;
}
.faculty-profile-skills-v29{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:0!important;
  margin-top:10px!important;
  padding-top:9px!important;
  border-top:1px solid #edf0f4!important;
}
.faculty-profile-skills-v29 span{
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#718096!important;
  font-size:10px!important;
  font-weight:600!important;
}
.faculty-profile-skills-v29 span:not(:last-child)::after{content:" • ";color:#aab3bf}

@media(max-width:1180px){
  .faculty-profile-grid-v29{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:820px){
  .faculty-showcase-head{align-items:center;flex-direction:column}
  .faculty-showcase-controls{order:2}
  .faculty-profile-grid-v29{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .faculty-showcase-card{width:196px;min-width:196px}
  .faculty-showcase-photo{height:194px}
  .faculty-showcase-body{min-height:118px;padding:13px 12px 14px}
  .faculty-profile-grid-v29{grid-template-columns:1fr!important}
  .faculty-profile-photo-v29,.faculty-profile-photo-v29 img{height:215px!important;min-height:215px!important}
}

/* =====================================================================
   SOURCE: assets/ui-v38.css
   ===================================================================== */
/* ============================================================
   V38 — Welfare/Spoken navigation applied exactly to BFS large view.
   Scope: main menu + dropdown only. Logo and login button untouched.
   ============================================================ */

@media (min-width:1121px){
  :root{
    --wf-nav-navy:#071529;
    --wf-nav-gold:#f4b63f;
    --wf-nav-soft:#eef3f8;
    --wf-nav-line:#e5ecf5;
  }

  /* Plain horizontal Welfare navigation */
  .site-header .bfs-pro-nav{
    flex:1 1 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    min-width:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .site-header .bfs-pro-nav > .nav-item,
  .site-header .bfs-pro-nav > .simple-dropdown-item{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link,
  .site-header .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link{
    position:relative!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    width:auto!important;
    min-width:0!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:0 13px!important;
    border:0!important;
    border-radius:10px!important;
    background:transparent!important;
    color:#111c2f!important;
    box-shadow:none!important;
    transform:none!important;
    font-family:inherit!important;
    font-size:14px!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:-.01em!important;
    white-space:nowrap!important;
    cursor:pointer!important;
    transition:background .18s ease,color .18s ease,box-shadow .18s ease!important;
  }
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link:hover,
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link.active,
  .site-header .bfs-pro-nav > .simple-dropdown-item:hover > .pro-nav-link,
  .site-header .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link,
  .site-header .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link{
    background:var(--wf-nav-soft)!important;
    color:var(--wf-nav-navy)!important;
    box-shadow:inset 0 -3px 0 var(--wf-nav-gold)!important;
    transform:none!important;
  }
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link::before,
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link::after,
  .site-header .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link::before,
  .site-header .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link::after{
    display:none!important;
    content:none!important;
  }
  .site-header .bfs-pro-nav .wf-nav-caret{
    display:inline-block!important;
    margin-left:1px!important;
    color:#64748b!important;
    font-size:11px!important;
    font-weight:800!important;
    line-height:1!important;
    transition:transform .18s ease,color .18s ease!important;
  }
  .site-header .bfs-pro-nav > .simple-dropdown-item:hover > .pro-nav-link .wf-nav-caret,
  .site-header .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link .wf-nav-caret,
  .site-header .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link .wf-nav-caret{
    color:#955d00!important;
    transform:rotate(180deg)!important;
  }

  /* Exact Welfare simple dropdown: white list, gold top rule */
  .site-header .bfs-pro-nav .simple-dropdown-menu{
    position:absolute!important;
    top:calc(100% + 10px)!important;
    left:0!important;
    right:auto!important;
    display:block!important;
    min-width:245px!important;
    max-width:285px!important;
    margin:0!important;
    padding:8px 0!important;
    overflow:visible!important;
    background:#fff!important;
    border:1px solid var(--wf-nav-line)!important;
    border-top:3px solid var(--wf-nav-gold)!important;
    border-radius:0 0 14px 14px!important;
    box-shadow:0 22px 54px rgba(15,23,42,.16)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(8px)!important;
    transition:opacity .16s ease,visibility .16s ease,transform .16s ease!important;
    z-index:2050!important;
  }
  .site-header .bfs-pro-nav .simple-dropdown-menu::before{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:-13px!important;
    height:13px!important;
    background:transparent!important;
  }
  .site-header .bfs-pro-nav > .simple-dropdown-item:hover > .simple-dropdown-menu,
  .site-header .bfs-pro-nav > .simple-dropdown-item:focus-within > .simple-dropdown-menu,
  .site-header .bfs-pro-nav > .simple-dropdown-item.open > .simple-dropdown-menu{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }
  .site-header .bfs-pro-nav > .simple-dropdown-item:last-child > .simple-dropdown-menu{
    left:auto!important;
    right:0!important;
  }
  .site-header .bfs-pro-nav .pro-dropdown-grid{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
  }
  .site-header .bfs-pro-nav a.pro-dropdown-link{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:42px!important;
    margin:0!important;
    padding:0 18px!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    color:#0b1b32!important;
    box-shadow:none!important;
    transform:none!important;
    font-family:inherit!important;
    font-size:14px!important;
    font-weight:850!important;
    line-height:1.3!important;
    text-align:left!important;
    white-space:normal!important;
    transition:background .15s ease,color .15s ease,padding-left .15s ease!important;
  }
  .site-header .bfs-pro-nav a.pro-dropdown-link:hover,
  .site-header .bfs-pro-nav a.pro-dropdown-link.active{
    padding-left:22px!important;
    background:#fff7df!important;
    color:#955d00!important;
  }
}

@media (min-width:1121px) and (max-width:1360px){
  .site-header .bfs-pro-nav{gap:3px!important}
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link,
  .site-header .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link{
    height:38px!important;
    min-height:38px!important;
    padding:0 9px!important;
    font-size:12.8px!important;
  }
}

/* =====================================================================
   SOURCE: assets/ui-v39.css
   ===================================================================== */
/* ============================================================
   V39 — Typography + BFS logo-colour navigation polish
   Scope: frontend typography, desktop main menu and dropdown only.
   Solid colours only. No gradients.
   ============================================================ */

:root{
  --bfs-font:"Manrope","Segoe UI",Tahoma,Arial,sans-serif;
  --bfs-logo-navy:#0b2f63;
  --bfs-logo-red:#d8323a;
  --bfs-nav-soft:#f5f8fc;
  --bfs-nav-soft-red:#fff5f5;
  --bfs-nav-border:#dce6f1;
  --bfs-nav-muted:#64748b;
}

html,body,button,input,select,textarea{
  font-family:var(--bfs-font)!important;
  font-synthesis:none;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

body{
  font-weight:400;
  letter-spacing:0;
}

h1,h2,h3,h4,h5,h6{
  font-family:var(--bfs-font)!important;
  font-weight:700;
  letter-spacing:-.025em;
}

@media (min-width:1121px){
  .site-header .bfs-pro-nav{
    gap:5px!important;
  }

  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link,
  .site-header .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link{
    height:39px!important;
    min-height:39px!important;
    padding:0 12px!important;
    border-radius:7px!important;
    background:#fff!important;
    color:var(--bfs-logo-navy)!important;
    font-family:var(--bfs-font)!important;
    font-size:13px!important;
    font-weight:500!important;
    line-height:1!important;
    letter-spacing:0!important;
    box-shadow:none!important;
    transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease!important;
  }

  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link:hover,
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link.active,
  .site-header .bfs-pro-nav > .simple-dropdown-item:hover > .pro-nav-link,
  .site-header .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link,
  .site-header .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link{
    background:var(--bfs-nav-soft)!important;
    color:var(--bfs-logo-navy)!important;
    box-shadow:inset 0 -2px 0 var(--bfs-logo-red),0 7px 16px rgba(11,47,99,.07)!important;
    transform:translateY(-1px)!important;
  }

  .site-header .bfs-pro-nav .wf-nav-caret{
    margin-left:2px!important;
    color:var(--bfs-nav-muted)!important;
    font-size:10px!important;
    font-weight:500!important;
  }

  .site-header .bfs-pro-nav > .simple-dropdown-item:hover > .pro-nav-link .wf-nav-caret,
  .site-header .bfs-pro-nav > .simple-dropdown-item:focus-within > .pro-nav-link .wf-nav-caret,
  .site-header .bfs-pro-nav > .simple-dropdown-item.open > .pro-nav-link .wf-nav-caret{
    color:var(--bfs-logo-red)!important;
  }

  .site-header .bfs-pro-nav .simple-dropdown-menu{
    top:calc(100% + 7px)!important;
    min-width:232px!important;
    max-width:276px!important;
    padding:4px 0!important;
    background:#fff!important;
    border:1px solid var(--bfs-nav-border)!important;
    border-top:2px solid var(--bfs-logo-red)!important;
    border-radius:0 0 7px 7px!important;
    box-shadow:0 18px 42px rgba(11,47,99,.13)!important;
    transform:translateY(6px)!important;
  }

  .site-header .bfs-pro-nav .simple-dropdown-menu::before{
    top:-10px!important;
    height:10px!important;
  }

  .site-header .bfs-pro-nav > .simple-dropdown-item:hover > .simple-dropdown-menu,
  .site-header .bfs-pro-nav > .simple-dropdown-item:focus-within > .simple-dropdown-menu,
  .site-header .bfs-pro-nav > .simple-dropdown-item.open > .simple-dropdown-menu{
    transform:translateY(0)!important;
  }

  .site-header .bfs-pro-nav a.pro-dropdown-link{
    min-height:36px!important;
    padding:7px 14px!important;
    background:#fff!important;
    color:#263b57!important;
    font-family:var(--bfs-font)!important;
    font-size:12.5px!important;
    font-weight:500!important;
    line-height:1.35!important;
    letter-spacing:0!important;
    border-left:2px solid transparent!important;
    transition:background-color .16s ease,color .16s ease,border-color .16s ease,padding-left .16s ease!important;
  }

  .site-header .bfs-pro-nav a.pro-dropdown-link:hover,
  .site-header .bfs-pro-nav a.pro-dropdown-link.active{
    padding-left:17px!important;
    background:var(--bfs-nav-soft-red)!important;
    color:var(--bfs-logo-navy)!important;
    border-left-color:var(--bfs-logo-red)!important;
  }
}

@media (min-width:1121px) and (max-width:1360px){
  .site-header .bfs-pro-nav{
    gap:2px!important;
  }
  .site-header .bfs-pro-nav > .nav-item > .pro-nav-link,
  .site-header .bfs-pro-nav > .simple-dropdown-item > .pro-nav-link{
    height:37px!important;
    min-height:37px!important;
    padding:0 8px!important;
    font-size:12px!important;
  }
  .site-header .bfs-pro-nav a.pro-dropdown-link{
    font-size:12px!important;
  }
}

/* =====================================================================
   SOURCE: assets/final-v40.css
   ===================================================================== */

/* BFS Education Final Frontend V40 */
:root{
  --final-navy:#0b2f63;
  --final-blue:#1f5f9f;
  --final-red:#d8323a;
  --final-text:#102b4d;
  --final-muted:#61748a;
  --final-line:#dce6f1;
  --final-soft:#f5f8fc;
  --final-radius:7px;
}
html{scroll-behavior:smooth}
body{padding-bottom:0}
.final-main-nav{white-space:nowrap}
@media(min-width:1121px){
  .site-header .final-main-nav{gap:3px!important;align-items:center!important;justify-content:center!important;flex:1 1 auto!important;min-width:0!important}
  .site-header .final-main-nav>.nav-item>.pro-nav-link,
  .site-header .final-main-nav>.simple-dropdown-item>.pro-nav-link{
    height:39px!important;min-height:39px!important;padding:0 10px!important;border-radius:7px!important;
    background:#fff!important;color:var(--final-navy)!important;font-size:12.5px!important;font-weight:500!important;
    box-shadow:none!important;transform:none!important;
  }
  .site-header .final-main-nav>.nav-item>.pro-nav-link:hover,
  .site-header .final-main-nav>.nav-item>.pro-nav-link.active,
  .site-header .final-main-nav>.simple-dropdown-item:hover>.pro-nav-link,
  .site-header .final-main-nav>.simple-dropdown-item:focus-within>.pro-nav-link,
  .site-header .final-main-nav>.simple-dropdown-item.open>.pro-nav-link{
    background:#f5f8fc!important;color:var(--final-navy)!important;
    box-shadow:inset 0 -2px 0 var(--final-red),0 7px 16px rgba(11,47,99,.07)!important;
    transform:translateY(-1px)!important;
  }
  .site-header .final-main-nav .final-dropdown{
    top:calc(100% + 7px)!important;min-width:260px!important;max-width:340px!important;padding:5px 0!important;
    border:1px solid var(--final-line)!important;border-top:2px solid var(--final-red)!important;border-radius:0 0 7px 7px!important;
    background:#fff!important;box-shadow:0 18px 42px rgba(11,47,99,.13)!important;
  }
  .site-header .final-main-nav .final-dropdown .pro-dropdown-grid{display:block!important}
  .site-header .final-main-nav .final-dropdown .pro-dropdown-link{
    min-height:36px!important;padding:8px 14px!important;font-size:12.2px!important;font-weight:500!important;line-height:1.35!important;
    border-left:2px solid transparent!important;background:#fff!important;color:#263b57!important;
  }
  .site-header .final-main-nav .final-dropdown .pro-dropdown-link:hover{
    padding-left:17px!important;background:#fff5f5!important;color:var(--final-navy)!important;border-left-color:var(--final-red)!important;
  }
}
@media(min-width:1121px) and (max-width:1390px){
  .site-header .bfs-brand{min-width:205px!important}
  .site-header .final-main-nav>.nav-item>.pro-nav-link,
  .site-header .final-main-nav>.simple-dropdown-item>.pro-nav-link{padding:0 7px!important;font-size:11.7px!important}
  .site-header .desktop-student-login{min-width:142px!important}
}
.final-page-hero{background:linear-gradient(135deg,#f8fbff 0%,#eef5fc 70%,#fff8f8 100%)}
.final-hero-card{border-radius:var(--final-radius)!important}
.final-hero-points{display:grid;gap:12px;margin-top:18px}
.final-hero-point{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid rgba(255,255,255,.18);border-radius:var(--final-radius);background:rgba(255,255,255,.08)}
.final-hero-point svg{width:22px;height:22px;flex:0 0 22px;color:#a9d0ff}.final-hero-point span{display:grid;gap:3px}.final-hero-point strong{color:#fff;font-size:13px}.final-hero-point small{color:rgba(255,255,255,.72);font-size:11px;line-height:1.45}
.final-hero-media{position:relative;min-height:360px;overflow:hidden;border-radius:var(--final-radius);box-shadow:0 25px 60px rgba(11,47,99,.14)}
.final-hero-media img{width:100%;height:100%;min-height:360px;object-fit:cover;display:block}.final-hero-media>div{position:absolute;left:18px;right:18px;bottom:18px;padding:16px;border-radius:var(--final-radius);background:rgba(11,47,99,.88);color:#fff;display:grid;gap:4px;backdrop-filter:blur(8px)}.final-hero-media span{font-size:11px;color:rgba(255,255,255,.75)}
.final-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}
.final-info-card{position:relative;min-height:220px;padding:22px;border:1px solid var(--final-line);border-radius:var(--final-radius);background:#fff;box-shadow:0 18px 46px -34px rgba(11,47,99,.36);transition:.25s ease;overflow:hidden}
.final-info-card::after{content:"";position:absolute;right:-34px;bottom:-34px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,rgba(31,95,159,.10),rgba(31,95,159,0) 70%)}
.final-info-card:nth-child(even)::after{background:radial-gradient(circle,rgba(216,50,58,.10),rgba(216,50,58,0) 70%)}
.final-info-card:hover{transform:translateY(-6px);border-color:#b9cee2;box-shadow:0 30px 60px -36px rgba(11,47,99,.44)}
.final-card-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:var(--final-radius);background:#edf5ff;color:var(--final-blue)}.final-card-icon svg{width:23px;height:23px}.final-info-card small{display:block;margin-top:16px;color:var(--final-red);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.final-info-card h3{margin:14px 0 8px;font-size:18px}.final-info-card p{margin:0;color:var(--final-muted);font-size:12px;line-height:1.65}.final-info-card a{position:relative;z-index:2;display:inline-flex;gap:8px;align-items:center;margin-top:16px;color:var(--final-navy);font-size:12px;font-weight:700}.final-info-card a span{color:var(--final-red)}
.final-split{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}.final-split-copy h2{margin:10px 0 16px}.final-split-copy p{color:var(--final-muted);line-height:1.75}.final-split-media{overflow:hidden;border-radius:var(--final-radius);box-shadow:0 22px 54px rgba(11,47,99,.12)}.final-split-media img{width:100%;min-height:360px;object-fit:cover;display:block}.final-split-panel{padding:24px;border:1px solid var(--final-line);border-radius:var(--final-radius);background:#f8fbff}
.final-check-list{display:grid;gap:11px;margin:20px 0 0;padding:0;list-style:none}.final-check-list li{display:flex;gap:10px;align-items:flex-start;color:#425a73;font-size:12px;line-height:1.55}.final-check-list svg{width:18px;height:18px;flex:0 0 18px;color:var(--final-red)}
.final-step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:26px}.final-step-card{padding:22px;border:1px solid var(--final-line);border-radius:var(--final-radius);background:#fff}.final-step-card>span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:var(--final-radius);background:var(--final-navy);color:#fff;font-size:12px;font-weight:800}.final-step-card h3{margin:16px 0 7px;font-size:16px}.final-step-card p{margin:0;color:var(--final-muted);font-size:11px;line-height:1.6}
.final-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}.final-course-card{display:flex;flex-direction:column;min-height:270px;padding:22px;border:1px solid var(--final-line);border-radius:var(--final-radius);background:#fff;box-shadow:0 18px 46px -34px rgba(11,47,99,.36);transition:.25s ease}.final-course-card:hover{transform:translateY(-6px);border-color:#b9cee2}.final-course-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.final-course-top>span{width:46px;height:46px;display:grid;place-items:center;border-radius:var(--final-radius);background:#edf5ff;color:var(--final-blue)}.final-course-top svg{width:22px;height:22px}.final-course-top small{color:var(--final-red);font-size:9px;font-weight:800;text-align:right}.final-course-card h3{margin:18px 0 9px;font-size:18px}.final-course-card p{flex:1;margin:0;color:var(--final-muted);font-size:12px;line-height:1.65}.final-course-card>a{display:flex;justify-content:space-between;align-items:center;margin-top:18px;padding-top:14px;border-top:1px solid #e7edf4;color:var(--final-navy);font-size:12px;font-weight:800}.final-course-card b{color:var(--final-red)}
.final-faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:34px}.final-faq{border:1px solid var(--final-line);border-radius:var(--final-radius);background:#fff;margin-bottom:12px;overflow:hidden}.final-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:15px;padding:17px 18px;color:var(--final-text);font-weight:700;font-size:13px}.final-faq summary::-webkit-details-marker{display:none}.final-faq summary span{color:var(--final-red)}.final-faq p{margin:0;padding:0 18px 18px;color:var(--final-muted);font-size:12px;line-height:1.65}
.final-faculty-scroller{position:relative;margin-top:26px}.final-faculty-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,320px);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 40px}.final-faculty-track::-webkit-scrollbar{display:none}.final-faculty-card{scroll-snap-align:start;overflow:hidden;border:1px solid var(--final-line);border-radius:var(--final-radius);background:#fff;box-shadow:0 18px 44px -34px rgba(11,47,99,.40);transition:.25s ease}.final-faculty-card:hover{transform:translateY(-5px);border-color:#b9cee2}.final-faculty-card img{width:100%;height:230px;object-fit:cover;display:block}.final-faculty-card>div{padding:17px}.final-faculty-card small{color:var(--final-red);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.final-faculty-card h3{margin:7px 0;font-size:17px}.final-faculty-card p{margin:0;color:var(--final-muted);font-size:11px;line-height:1.55}.final-faculty-card span{display:inline-flex;margin-top:12px;padding:7px 10px;border-radius:999px;background:#edf5ff;color:var(--final-blue);font-size:9px;font-weight:800}.final-scroll-btn{position:absolute;top:50%;z-index:3;width:42px;height:42px;border:1px solid var(--final-line);border-radius:50%;background:#fff;color:var(--final-navy);font-size:25px;box-shadow:0 12px 30px rgba(11,47,99,.14);transform:translateY(-50%);cursor:pointer}.final-scroll-btn.prev{left:0}.final-scroll-btn.next{right:0}
.final-faq-layout h2,.final-sitemap-group h2{margin:10px 0 12px}.final-sitemap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.final-sitemap-group{padding:22px;border:1px solid var(--final-line);border-radius:var(--final-radius);background:#fff}.final-sitemap-group a{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #edf1f6;color:#425a73;font-size:12px}.final-sitemap-group a:last-child{border-bottom:0}.final-sitemap-group a span{color:var(--final-red)}
.final-footer-links{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:26px!important}.final-footer-links .footer-col a{padding:5px 0!important}
.final-mobile-footer,.final-mobile-menu-backdrop,.final-mobile-menu-sheet{display:none}
@media(max-width:1120px){
  body{padding-bottom:74px!important}.final-mobile-footer{display:block;position:fixed;left:0;right:0;bottom:0;z-index:1200;background:#fff;border-top:1px solid #dce6f1;box-shadow:0 -10px 30px rgba(11,47,99,.10)}.final-mobile-footer-track{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:8px 8px calc(8px + env(safe-area-inset-bottom))}.final-mobile-footer-track::-webkit-scrollbar{display:none}.final-mobile-nav-item{min-width:84px;height:56px;padding:6px 8px;border:0;border-radius:7px;background:#fff;color:var(--final-navy);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-family:inherit;font-size:9px;font-weight:600;white-space:nowrap}.final-mobile-nav-item svg{width:19px;height:19px}.final-mobile-nav-item.active,.final-mobile-nav-item:hover{background:#f5f8fc;color:var(--final-red);box-shadow:inset 0 -2px 0 var(--final-red)}
  .final-mobile-menu-backdrop.open{display:block;position:fixed;inset:0;z-index:1290;background:rgba(7,25,48,.48);backdrop-filter:blur(2px)}.final-mobile-menu-sheet.open{display:block;position:fixed;left:0;right:0;bottom:0;z-index:1300;max-height:76vh;padding:16px 16px calc(20px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;background:#fff;box-shadow:0 -24px 60px rgba(7,25,48,.22);overflow-y:auto}.final-mobile-menu-panel{display:none}.final-mobile-menu-panel.active{display:block}.final-mobile-menu-head{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-bottom:14px;border-bottom:1px solid #e7edf4}.final-mobile-menu-head small{color:var(--final-red);font-size:9px;font-weight:800;text-transform:uppercase}.final-mobile-menu-head h3{margin:4px 0 0}.final-mobile-menu-head button{width:38px;height:38px;border:1px solid var(--final-line);border-radius:7px;background:#f8fbff;color:var(--final-navy);font-size:25px}.final-mobile-menu-links{display:grid;gap:8px;margin-top:14px}.final-mobile-menu-links a{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:14px;border:1px solid var(--final-line);border-radius:7px;background:#fff;color:var(--final-text);font-size:12px;font-weight:650}.final-mobile-menu-links a b{color:var(--final-red)}
  .final-card-grid,.final-course-grid,.final-sitemap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.final-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.final-split,.final-faq-layout{grid-template-columns:1fr}.final-footer-links{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .final-card-grid,.final-course-grid,.final-sitemap-grid,.final-step-grid{grid-template-columns:1fr}.final-info-card{min-height:auto}.final-hero-media,.final-hero-media img{min-height:280px}.final-faculty-track{grid-auto-columns:minmax(245px,82vw);padding:4px 28px}.final-faculty-card img{height:210px}.final-scroll-btn{width:36px;height:36px}.final-footer-links{grid-template-columns:1fr!important}
}

.final-form-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:start}.final-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.final-gallery-grid a{position:relative;overflow:hidden;border:1px solid var(--final-line);border-radius:var(--final-radius);background:#fff;box-shadow:0 18px 46px -34px rgba(11,47,99,.35)}.final-gallery-grid img{width:100%;height:260px;object-fit:cover;display:block;transition:transform .35s ease}.final-gallery-grid a:hover img{transform:scale(1.04)}.final-gallery-grid span{position:absolute;left:12px;right:12px;bottom:12px;padding:10px 12px;border-radius:7px;background:rgba(11,47,99,.88);color:#fff;font-size:11px;font-weight:700}.final-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.final-review-card{padding:20px;border:1px solid var(--final-line);border-radius:var(--final-radius);background:#fff;box-shadow:0 18px 46px -34px rgba(11,47,99,.35);transition:.25s ease}.final-review-card:hover{transform:translateY(-5px);border-color:#b9cee2}.final-review-card>div{display:flex;gap:11px;align-items:center}.final-review-card>div>span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#edf5ff;color:var(--final-blue);font-weight:800}.final-review-card h3{margin:0;font-size:15px}.final-review-card small{color:var(--final-red);font-size:9px;font-weight:800}.final-review-card p{margin:16px 0 0;color:var(--final-muted);font-size:12px;line-height:1.7}.form-shell [data-backend-form] button{cursor:pointer}.form-note{font-size:11px;line-height:1.55;color:#64748b}.page-actions{flex-wrap:wrap}
@media(max-width:900px){.final-form-layout{grid-template-columns:1fr}.final-gallery-grid,.final-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.final-gallery-grid,.final-review-grid{grid-template-columns:1fr}.final-gallery-grid img{height:230px}}

/* =====================================================================
   SOURCE: assets/final-v41.css
   ===================================================================== */
/* BFS V41: old-design preservation + new-page polish */
html{scroll-behavior:smooth}
body.inner-page{font-family:"Manrope","Segoe UI",Arial,sans-serif}

/* Compact inner-page typography: homepage is deliberately untouched. */
body.inner-page :is(.page-hero,.exam-hero,.fw-hero,.profile-page-hero,.final-page-hero) h1{
  font-size:clamp(18px,1.45vw,20px)!important;
  line-height:1.35!important;
  letter-spacing:-.018em!important;
  max-width:760px;
}
body.inner-page :is(.page-hero,.exam-hero,.fw-hero,.profile-page-hero,.final-page-hero) p{
  font-size:12px!important;
  line-height:1.72!important;
  max-width:760px;
}
body.inner-page .page-title-row h2,
body.inner-page .section-head h2,
body.inner-page .final-section-head h2{
  font-size:clamp(19px,2vw,26px)!important;
  line-height:1.32!important;
}
body.inner-page h3{line-height:1.38}

/* New final-menu pages use the approved V39 BFS card language. */
body.inner-page .final-page-hero{
  padding-block:42px!important;
  background:linear-gradient(180deg,#f7faff 0%,#eef5fc 100%)!important;
  border-bottom:1px solid #dfe8f2;
}
body.inner-page .final-page-hero .page-hero-grid{gap:26px!important}
body.inner-page .final-hero-card,
body.inner-page .final-info-card,
body.inner-page .final-course-card,
body.inner-page .final-step-card,
body.inner-page .final-faq,
body.inner-page .final-sitemap-group{
  border-radius:7px!important;
  border-color:#dce6f0!important;
  background:linear-gradient(180deg,#fff 0%,#f9fbff 100%)!important;
  box-shadow:0 18px 46px -34px rgba(12,48,89,.34)!important;
  transition:transform .26s ease,border-color .26s ease,box-shadow .26s ease!important;
}
body.inner-page :is(.final-info-card,.final-course-card,.final-step-card,.final-sitemap-group):hover{
  transform:translateY(-6px);
  border-color:#b7cee5!important;
  box-shadow:0 30px 60px -36px rgba(12,48,89,.46)!important;
}
body.inner-page .final-card-icon,
body.inner-page .final-course-top>span,
body.inner-page .final-step-card>span{border-radius:7px!important}
body.inner-page .final-info-card{min-height:190px!important;padding:20px!important}
body.inner-page .final-info-card h3,
body.inner-page .final-course-card h3{font-size:16px!important}
body.inner-page .final-info-card p,
body.inner-page .final-course-card p{font-size:11.5px!important;line-height:1.7!important}

/* Connected process visual for pages that explain a workflow. */
body.inner-page .final-step-grid{position:relative;gap:18px!important}
@media(min-width:901px){
  body.inner-page .final-step-grid::before{
    content:"";position:absolute;left:6%;right:6%;top:41px;height:2px;
    background:linear-gradient(90deg,#d6323a 0 18%,#cbd9e8 18% 82%,#1f5f9f 82% 100%);
    z-index:0;
  }
  body.inner-page .final-step-card{position:relative;z-index:1}
}
body.inner-page .final-step-card>span{
  box-shadow:0 10px 22px rgba(13,52,98,.16);
  transition:transform .25s ease,box-shadow .25s ease;
}
body.inner-page .final-step-card:hover>span{
  transform:translateY(-3px) scale(1.05);
  box-shadow:0 15px 28px rgba(13,52,98,.22);
}

/* Subtle motion is enabled only after JS is ready, so content never stays hidden. */
body.inner-page.v41-motion-ready .v41-reveal{
  opacity:0;transform:translateY(18px);
  transition:opacity .55s ease,transform .55s ease;
}
body.inner-page.v41-motion-ready .v41-reveal.v41-in{opacity:1;transform:none}
body.inner-page .final-faq[open]{border-color:#b7cee5!important;box-shadow:0 24px 52px -36px rgba(12,48,89,.44)!important}
body.inner-page .final-faq summary{transition:background .2s ease,color .2s ease}
body.inner-page .final-faq summary:hover{background:#f4f8fd;color:#0d315e}

@media(max-width:900px){
  body.inner-page :is(.page-hero,.exam-hero,.fw-hero,.profile-page-hero,.final-page-hero) h1{font-size:19px!important}
  body.inner-page .final-page-hero{padding-block:32px!important}
}
@media(max-width:600px){
  body.inner-page :is(.page-hero,.exam-hero,.fw-hero,.profile-page-hero,.final-page-hero) h1{font-size:18px!important}
  body.inner-page .page-title-row h2,body.inner-page .section-head h2,body.inner-page .final-section-head h2{font-size:20px!important}
  body.inner-page .final-card-grid,body.inner-page .final-course-grid,body.inner-page .final-step-grid{gap:14px!important}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  body.inner-page .v41-reveal{opacity:1!important;transform:none!important;transition:none!important}
  body.inner-page :is(.final-info-card,.final-course-card,.final-step-card,.final-sitemap-group){transition:none!important}
}

/* =====================================================================
   SOURCE: assets/final-v42.css
   ===================================================================== */
/* BFS Education V42 — targeted UI/UX corrections only */
:root{
  --v42-navy:#0b2f63;
  --v42-blue:#1f5f9f;
  --v42-red:#d8323a;
  --v42-soft:#f5f8fc;
  --v42-line:#dce6f1;
  --v42-muted:#61748a;
}

/* 1) Student Benefits icon visibility */
body[data-page="home"] .bfs-benefit-card .icon-box{
  color:#fff!important;
  background:rgba(216,50,58,.95)!important;
  border:1px solid rgba(255,255,255,.48)!important;
  box-shadow:0 12px 26px rgba(4,22,48,.22)!important;
}
body[data-page="home"] .bfs-benefit-card .icon-box svg,
body[data-page="home"] .bfs-benefit-card .icon-box svg *{
  color:#fff!important;
  stroke:currentColor!important;
}

/* 2) Reference-inspired impact section, adapted to BFS branding */
.bfs-impact-v42{padding:74px 0;background:#fff;overflow:hidden}
.bfs-impact-head{text-align:center;max-width:820px;margin:0 auto 34px}
.bfs-impact-kicker{display:flex;align-items:center;justify-content:center;gap:12px;color:var(--v42-red);font-size:10px;font-weight:800;letter-spacing:.22em;text-transform:uppercase}
.bfs-impact-kicker i{display:block;width:30px;height:1px;background:var(--v42-red)}
.bfs-impact-head h2{margin:17px 0 10px;font-size:clamp(26px,3vw,34px);line-height:1.18;color:#101828;letter-spacing:-.035em}
.bfs-impact-head p{margin:0;color:var(--v42-muted);font-size:14px;line-height:1.7}
.bfs-impact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.bfs-impact-card{position:relative;min-height:184px;padding:28px 26px 24px;border:1px solid #e2e7ee;background:#fff;box-shadow:0 18px 42px -34px rgba(11,47,99,.38);overflow:hidden;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}
.bfs-impact-card:hover{transform:translateY(-7px);border-color:#c7d6e7;box-shadow:0 30px 60px -38px rgba(11,47,99,.48)}
.bfs-impact-line{position:absolute;left:0;top:28px;bottom:28px;width:3px;background:var(--v42-red)}
.bfs-impact-number{display:flex;align-items:flex-start;gap:3px;color:#0a0f18;line-height:1}
.bfs-impact-number strong{font-size:clamp(38px,4vw,52px);font-weight:800;letter-spacing:-.06em}
.bfs-impact-number b{color:var(--v42-red);font-size:31px;line-height:1.05}
.bfs-impact-icon{position:absolute;right:24px;top:36px;width:50px;height:50px;display:grid;place-items:center;border:1px solid #e1e7ef;border-radius:7px;color:var(--v42-red);background:#fff}
.bfs-impact-icon svg{width:23px;height:23px}
.bfs-impact-card small{display:block;margin-top:27px;padding-top:14px;color:#53657b;font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;position:relative}
.bfs-impact-card small::before{content:"";position:absolute;left:0;top:0;width:44px;height:1px;background:#d9b44a}

/* 3 + 4) Desktop dropdown: hover only, compact and text-width aware */
@media(min-width:1121px){
  .site-header .final-main-nav .simple-dropdown-item.open>.final-dropdown:not(:hover){
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(6px)!important;
  }
  .site-header .final-main-nav .simple-dropdown-item:hover>.final-dropdown,
  .site-header .final-main-nav .simple-dropdown-item:focus-within>.final-dropdown{
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(0)!important;
  }
  .site-header .final-main-nav .final-dropdown{
    width:max-content!important;
    min-width:0!important;
    max-width:min(430px,calc(100vw - 34px))!important;
    padding:4px 0!important;
  }
  .site-header .final-main-nav .final-dropdown .pro-dropdown-grid{width:max-content!important;min-width:100%!important}
  .site-header .final-main-nav .final-dropdown .pro-dropdown-link{
    width:100%!important;
    min-width:max-content!important;
    padding:7px 14px!important;
    white-space:nowrap!important;
  }
}

/* 6) White buttons need a visible BFS-red hover */
.btn-light:hover,.btn-light:focus-visible,
a.btn-light:hover,a.btn-light:focus-visible,
button.btn-light:hover,button.btn-light:focus-visible{
  color:#fff!important;
  background:var(--v42-red)!important;
  border-color:var(--v42-red)!important;
  box-shadow:0 14px 28px rgba(216,50,58,.22)!important;
}
.btn-light:hover svg,.btn-light:focus-visible svg{color:#fff!important;stroke:currentColor!important}

/* 7) Placement learner streams */
.placement-map-v13-list{min-width:0!important}
.placement-student-streams{height:420px;display:grid;grid-template-columns:1fr 1fr;gap:12px;overflow:hidden;mask-image:linear-gradient(180deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 8%,#000 92%,transparent)}
.placement-student-column{min-width:0;overflow:hidden}
.placement-student-track{display:grid;gap:10px;will-change:transform}
.placement-track-up{animation:v42PlacementUp 28s linear infinite}
.placement-track-down{animation:v42PlacementDown 31s linear infinite}
.placement-student-streams:hover .placement-student-track{animation-play-state:paused}
@keyframes v42PlacementUp{to{transform:translateY(-50%)}}
@keyframes v42PlacementDown{from{transform:translateY(-50%)}to{transform:translateY(0)}}
.placement-student-card{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px;min-height:70px;padding:10px;border:1px solid rgba(255,255,255,.13);border-radius:7px;background:rgba(255,255,255,.07);box-shadow:0 12px 24px rgba(2,14,32,.08);transition:transform .22s ease,background .22s ease,border-color .22s ease}
.placement-student-card:hover{transform:translateX(4px);background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.28)}
.placement-student-card img{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.75);background:#fff}
.placement-student-card div{min-width:0;display:grid;gap:2px}
.placement-student-card strong{font-size:11px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.placement-student-card span{font-size:9px;color:#a9d0ff}
.placement-student-card small{font-size:9px;color:rgba(255,255,255,.66)}
.placement-profile-note{margin:12px 0 0;color:rgba(255,255,255,.55);font-size:9.5px;line-height:1.55}

/* 5) topbar second link remains clean after duplicate removal */
.bfs-topbar-right{gap:10px!important}

/* Heading scale correction across pages; homepage hero remains untouched */
body.inner-page main h2{font-size:clamp(20px,2.4vw,30px)!important;line-height:1.28!important}
body.inner-page main h3{font-size:clamp(15px,1.7vw,21px)!important;line-height:1.34!important}
body.inner-page :is(.page-hero,.exam-hero,.fw-hero,.profile-page-hero,.final-page-hero) h1{font-size:clamp(18px,1.45vw,20px)!important}
body[data-page="home"] main section:not(.bfs-banner-hero) .section-head h2,
body[data-page="home"] main section:not(.bfs-banner-hero) .page-title-row h2,
body[data-page="home"] main section:not(.bfs-banner-hero)>div>h2{font-size:clamp(24px,3vw,34px)!important;line-height:1.2!important}

/* 6) Responsive button safety without changing desktop width */
@media(max-width:700px){
  .page-actions,.cta-actions,.footer-contact-actions,.hero-actions,.form-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;width:100%!important}
  .page-actions .btn,.cta-actions .btn,.footer-contact-actions .btn,.hero-actions .btn,.form-actions .btn{
    flex:1 1 145px!important;min-width:0!important;max-width:100%!important;width:auto!important;height:auto!important;min-height:42px!important;padding:10px 13px!important;white-space:normal!important;text-align:center!important;justify-content:center!important;line-height:1.3!important
  }
}

/* 7) Existing process/flow blocks: subtle connected motion */
:is(.final-step-grid,.process-grid,.why-process,.timeline-grid){position:relative}
:is(.final-step-card,.step-card,.process-card,.why-process>article,.timeline-step){transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
:is(.final-step-card,.step-card,.process-card,.why-process>article,.timeline-step):hover{transform:translateY(-6px);box-shadow:0 24px 48px -34px rgba(11,47,99,.46);border-color:#b9cee2}
:is(.final-step-card,.step-card,.process-card,.why-process>article,.timeline-step)>:is(span,.icon-box):first-child{animation:v42SoftPulse 3.6s ease-in-out infinite}
@keyframes v42SoftPulse{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}

/* 8) Blog card common buttons */
.blog-image-card footer{margin-top:auto!important;padding-top:14px!important}
.blog-image-card>div{display:flex!important;flex-direction:column!important}
.blog-image-card .blog-read-btn{width:max-content!important;min-height:36px!important;padding:8px 13px!important;font-size:10.5px!important;border-radius:7px!important;color:#fff!important}
.blog-image-card .blog-read-btn svg{width:15px!important;height:15px!important}

/* 9) Compact footer spacing */
footer .footer-topline{padding-block:22px!important;gap:18px!important}
footer .footer-premium-body{padding-block:26px!important;gap:24px!important}
footer .footer-links-grid{gap:20px 16px!important}
footer .footer-col{gap:5px!important}
footer .footer-col h4{margin:0 0 7px!important;font-size:12px!important}
footer .footer-col a{padding-block:2px!important;font-size:10.5px!important;line-height:1.35!important}
footer .footer-opening-hours{margin-top:16px!important;padding:12px 14px!important}
footer .footer-trust-row{margin-top:12px!important;gap:8px!important}
footer .footer-bottom{padding-block:14px!important}

/* 10) Sitemap compact premium cards */
body[data-page="sitemap"] .final-sitemap-grid{gap:16px!important}
.final-sitemap-group{position:relative;overflow:hidden;padding:18px!important;border-radius:7px!important}
.final-sitemap-group::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--v42-red);transform:scaleX(.18);transform-origin:left;transition:transform .25s ease}
.final-sitemap-group:hover::before{transform:scaleX(1)}
.final-sitemap-group h2{margin:0 0 12px!important;font-size:17px!important;color:var(--v42-navy)!important}
.final-sitemap-group a{min-height:34px!important;padding:7px 9px!important;border-radius:6px!important;transition:background .18s ease,color .18s ease,transform .18s ease!important}
.final-sitemap-group a:hover{background:#fff4f5!important;color:var(--v42-red)!important;transform:translateX(3px)}

/* 11) Branch network feature */
.branch-network-flow-v42{overflow:hidden}
.branch-flow-line{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:26px}
.branch-flow-line::before{content:"";position:absolute;left:7%;right:7%;top:35px;height:2px;background:linear-gradient(90deg,var(--v42-red),#d7e1ec,var(--v42-blue));z-index:0}
.branch-flow-card{position:relative;z-index:1;min-height:190px;padding:18px;border:1px solid var(--v42-line);border-radius:7px;background:#fff;box-shadow:0 18px 44px -34px rgba(11,47,99,.38);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.branch-flow-card:hover{transform:translateY(-7px);border-color:#b7cee5;box-shadow:0 30px 56px -36px rgba(11,47,99,.48)}
.branch-flow-card>span{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#fff;border:2px solid #d9e5f1;color:var(--v42-blue);box-shadow:0 10px 22px rgba(11,47,99,.10);animation:v42NodeFloat 3.4s ease-in-out infinite}
.branch-flow-card:nth-child(even)>span{color:var(--v42-red)}
.branch-flow-card svg{width:22px;height:22px}
.branch-flow-card strong{display:block;margin:16px 0 7px;color:var(--v42-navy);font-size:14px}
.branch-flow-card p{margin:0;color:var(--v42-muted);font-size:11px;line-height:1.65}
@keyframes v42NodeFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.branch-network-ticker{margin-top:22px;overflow:hidden;border:1px solid var(--v42-line);border-radius:7px;background:#fff}
.branch-network-ticker>div{width:max-content;display:flex;align-items:center;gap:14px;padding:11px 15px;animation:v42BranchTicker 24s linear infinite;color:#53657b;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.branch-network-ticker:hover>div{animation-play-state:paused}
.branch-network-ticker b{color:var(--v42-red)}
@keyframes v42BranchTicker{to{transform:translateX(-50%)}}

/* Global smooth cards, only existing card classes */
:is(.panel-card,.feature-card,.info-card,.service-card,.download-card,.verification-card,.branch-card,.blog-image-card,.course-card){transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
:is(.panel-card,.feature-card,.info-card,.service-card,.download-card,.verification-card,.branch-card,.blog-image-card,.course-card):hover{transform:translateY(-5px);box-shadow:0 24px 52px -36px rgba(11,47,99,.46);border-color:#b9cee2}

@media(max-width:1020px){
  .bfs-impact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .branch-flow-line{grid-template-columns:repeat(2,minmax(0,1fr))}
  .branch-flow-line::before{display:none}
}
@media(max-width:700px){
  .bfs-impact-v42{padding:52px 0}
  .bfs-impact-head h2{font-size:26px!important}
  .bfs-impact-grid{grid-template-columns:1fr;gap:13px}
  .bfs-impact-card{min-height:150px;padding:22px 20px}
  .bfs-impact-icon{right:18px;top:25px}
  .placement-student-streams{height:360px;gap:8px}
  .placement-student-card{grid-template-columns:40px minmax(0,1fr);min-height:62px;padding:8px}
  .placement-student-card img{width:40px;height:40px}
  .branch-flow-line{grid-template-columns:1fr}
  footer .footer-premium-body{padding-block:20px!important}
}
@media(prefers-reduced-motion:reduce){
  .placement-student-track,.branch-network-ticker>div,.branch-flow-card>span,:is(.final-step-card,.step-card,.process-card,.why-process>article,.timeline-step)>:is(span,.icon-box):first-child{animation:none!important}
}

/* =====================================================================
   SOURCE: assets/final-v43.css
   ===================================================================== */
/* BFS Education V43 — exact hover dropdown, unique progress section, usable mobile submenu */

/* Desktop navigation: hover opens, moving to submenu remains safe, click never locks it. */
@media (min-width:1121px){
  .site-header .final-main-nav > .simple-dropdown-item{
    position:relative!important;
  }
  .site-header .final-main-nav > .simple-dropdown-item > .final-dropdown{
    display:block!important;
    top:calc(100% + 5px)!important;
    width:max-content!important;
    min-width:0!important;
    max-width:min(435px,calc(100vw - 34px))!important;
    padding:4px 5px 4px 0!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(7px)!important;
    transition:opacity .17s ease,visibility .17s ease,transform .17s ease!important;
  }
  .site-header .final-main-nav > .simple-dropdown-item > .final-dropdown::before{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:-7px!important;
    height:7px!important;
    background:transparent!important;
  }
  .site-header .final-main-nav > .simple-dropdown-item:hover > .final-dropdown{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }
  .site-header .final-main-nav > .simple-dropdown-item.open:not(:hover) > .final-dropdown,
  .site-header .final-main-nav > .simple-dropdown-item:focus-within:not(:hover) > .final-dropdown{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(7px)!important;
  }
  .site-header .final-main-nav > .simple-dropdown-item.open:not(:hover) > .pro-nav-link,
  .site-header .final-main-nav > .simple-dropdown-item:focus-within:not(:hover) > .pro-nav-link{
    background:#fff!important;
    color:var(--final-navy)!important;
    box-shadow:none!important;
    transform:none!important;
  }
  .site-header .final-main-nav > .simple-dropdown-item.open:not(:hover) > .pro-nav-link .wf-nav-caret,
  .site-header .final-main-nav > .simple-dropdown-item:focus-within:not(:hover) > .pro-nav-link .wf-nav-caret{
    transform:none!important;
  }
  .site-header .final-main-nav .final-dropdown .pro-dropdown-grid{
    display:block!important;
    width:max-content!important;
    min-width:100%!important;
  }
  .site-header .final-main-nav .final-dropdown .pro-dropdown-link{
    width:100%!important;
    min-width:max-content!important;
    padding:7px 19px 7px 14px!important;
    white-space:nowrap!important;
  }
}

/* Homepage: deliberately different from the reference statistic-card composition. */
.bfs-progress-v43{
  position:relative;
  padding:72px 0;
  overflow:hidden;
  background:#f5f8fc;
}
.bfs-progress-v43::before,
.bfs-progress-v43::after{
  content:"";
  position:absolute;
  border:1px solid rgba(31,95,159,.13);
  border-radius:50%;
  pointer-events:none;
  animation:bfsV43Orbit 13s linear infinite;
}
.bfs-progress-v43::before{width:230px;height:230px;left:-125px;top:-105px}
.bfs-progress-v43::after{width:160px;height:160px;right:-78px;bottom:-70px;animation-direction:reverse;animation-duration:16s}
@keyframes bfsV43Orbit{to{transform:rotate(360deg)}}
.bfs-progress-shell-v43{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);
  gap:18px;
  align-items:stretch;
}
.bfs-progress-story-v43{
  position:relative;
  overflow:hidden;
  min-height:360px;
  padding:34px;
  border-radius:12px;
  background:#0b2f63;
  color:#fff;
  box-shadow:0 26px 58px -38px rgba(4,25,57,.62);
}
.bfs-progress-story-v43::before{
  content:"";
  position:absolute;
  width:165px;
  height:165px;
  right:-78px;
  top:-72px;
  border:24px solid rgba(255,255,255,.055);
  border-radius:50%;
}
.bfs-progress-story-v43::after{
  content:"";
  position:absolute;
  left:34px;
  right:34px;
  bottom:24px;
  height:2px;
  background:#d8323a;
  transform-origin:left;
  animation:bfsV43Line 3.8s ease-in-out infinite;
}
@keyframes bfsV43Line{0%,100%{transform:scaleX(.24);opacity:.65}50%{transform:scaleX(1);opacity:1}}
.bfs-progress-eyebrow-v43{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  color:#dcecff;
  font-size:9px;
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.bfs-progress-eyebrow-v43 svg{width:15px;height:15px;color:#ff6b70}
.bfs-progress-story-v43 h2{
  max-width:470px;
  margin:24px 0 13px;
  color:#fff!important;
  font-size:clamp(25px,2.7vw,32px)!important;
  line-height:1.2!important;
  letter-spacing:-.03em;
}
.bfs-progress-story-v43>p{margin:0;max-width:500px;color:#c8d8eb;font-size:12.5px;line-height:1.75}
.bfs-progress-path-v43{
  display:flex;
  align-items:center;
  gap:9px;
  margin-top:30px;
}
.bfs-progress-path-v43 span{display:grid;gap:3px;color:#fff;font-size:10px;font-weight:700;white-space:nowrap}
.bfs-progress-path-v43 span b{color:#ff777c;font-size:9px;letter-spacing:.12em}
.bfs-progress-path-v43 i{width:30px;height:1px;background:rgba(255,255,255,.28)}
.bfs-progress-story-v43>small{position:absolute;left:34px;right:34px;bottom:39px;color:#94abc5;font-size:9px;line-height:1.55}
.bfs-progress-metrics-v43{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.bfs-progress-metric-v43{
  position:relative;
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:15px;
  min-height:171px;
  padding:23px;
  overflow:hidden;
  border:1px solid #dce6f1;
  border-radius:12px;
  background:#fff;
  box-shadow:0 20px 46px -38px rgba(11,47,99,.42);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.bfs-progress-metric-v43:hover{transform:translateY(-6px);border-color:#b8cde2;box-shadow:0 30px 58px -38px rgba(11,47,99,.52)}
.bfs-progress-metric-v43::after{content:"";position:absolute;left:0;bottom:0;width:42%;height:3px;background:#d8323a;transition:width .3s ease}
.bfs-progress-metric-v43:hover::after{width:100%}
.bfs-progress-icon-v43{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:#eef5fd;color:#1f5f9f}
.bfs-progress-metric-v43:nth-child(even) .bfs-progress-icon-v43{background:#fff1f2;color:#d8323a}
.bfs-progress-icon-v43 svg{width:23px;height:23px}
.bfs-progress-number-v43{display:flex;align-items:flex-start;gap:2px;color:#0b2f63;line-height:1}
.bfs-progress-number-v43 strong{font-size:31px;font-weight:750;letter-spacing:-.055em}
.bfs-progress-number-v43 b{color:#d8323a;font-size:20px;line-height:1.1}
.bfs-progress-metric-v43 h3{margin:9px 0 5px!important;color:#102b4d;font-size:14px!important;line-height:1.25!important}
.bfs-progress-metric-v43 p{margin:0;color:#61748a;font-size:10.5px;line-height:1.55}
.bfs-progress-metric-v43 em{position:absolute;right:14px;top:12px;color:#dfe7f0;font-size:26px;font-style:normal;font-weight:800;letter-spacing:-.06em}

/* Mobile submenu stays above the bottom menu, so every menu icon remains selectable. */
@media (max-width:1120px){
  .final-mobile-footer{z-index:1420!important}
  .final-mobile-menu-backdrop.open{
    inset:0 0 calc(72px + env(safe-area-inset-bottom)) 0!important;
    z-index:1290!important;
  }
  .final-mobile-menu-sheet.open{
    left:10px!important;
    right:10px!important;
    bottom:calc(72px + env(safe-area-inset-bottom))!important;
    z-index:1360!important;
    max-height:calc(100dvh - 96px - env(safe-area-inset-bottom))!important;
    padding:15px!important;
    border:1px solid #dce6f1!important;
    border-radius:16px!important;
    box-shadow:0 20px 55px rgba(7,25,48,.25)!important;
    animation:bfsV43Sheet .2s ease both;
  }
  @keyframes bfsV43Sheet{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
  .final-mobile-menu-links{gap:7px!important;margin-top:12px!important}
  .final-mobile-menu-links a{padding:12px 13px!important}
  .final-mobile-nav-item.active{position:relative;z-index:1}
}
@media(max-width:820px){
  .bfs-progress-v43{padding:54px 0}
  .bfs-progress-shell-v43{grid-template-columns:1fr}
  .bfs-progress-story-v43{min-height:315px;padding:27px}
  .bfs-progress-story-v43>small{left:27px;right:27px}
  .bfs-progress-story-v43::after{left:27px;right:27px}
}
@media(max-width:560px){
  .bfs-progress-metrics-v43{grid-template-columns:1fr;gap:12px}
  .bfs-progress-metric-v43{min-height:142px;padding:19px}
  .bfs-progress-story-v43 h2{font-size:25px!important}
  .bfs-progress-path-v43{gap:6px}
  .bfs-progress-path-v43 i{width:17px}
  .final-mobile-menu-sheet.open{left:7px!important;right:7px!important}
}
@media(prefers-reduced-motion:reduce){
  .bfs-progress-v43::before,.bfs-progress-v43::after,.bfs-progress-story-v43::after{animation:none!important}
}

/* =====================================================================
   SOURCE: assets/responsive-v45.css
   ===================================================================== */
/* BFS Education V45 - responsive typography, mobile notices and careers section */
:root{
  --v45-navy:#0b2f63;
  --v45-blue:#1f5f9f;
  --v45-red:#d8323a;
  --v45-text:#102b4d;
  --v45-muted:#61748a;
  --v45-line:#dce6f1;
  --v45-soft:#f5f8fc;
}

/* ---------- Global responsive typography audit ---------- */
body{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body.inner-page :is(.page-hero,.exam-hero,.fw-hero) h1{
  max-width:930px;
  margin-top:10px;
  margin-bottom:12px;
  font-size:clamp(30px,3.1vw,35px)!important;
  line-height:1.16!important;
  letter-spacing:-.035em!important;
  overflow-wrap:anywhere;
}
body.inner-page main :is(.section-head,.page-title-row,.final-section-head,.exam-section-head) h2,
body.inner-page main :is(.page-section,.exam-section) > .container > h2{
  font-size:clamp(25px,2.5vw,30px)!important;
  line-height:1.24!important;
  letter-spacing:-.025em!important;
  overflow-wrap:anywhere;
}
body.inner-page main :is(.panel-card,.feature-card,.service-tile,.final-info-card,.final-course-card,.flow-step-card,.step-card,.process-card,.notice-card,.branch-card,.job-card) h3{
  font-size:clamp(15px,1.5vw,18px)!important;
  line-height:1.32!important;
  overflow-wrap:anywhere;
}
body.inner-page main :is(p,.lead,.section-copy){
  overflow-wrap:anywhere;
}
body[data-page="home"] main section:not(.bfs-banner-hero) :is(.section-head,.page-title-row) h2{
  font-size:clamp(27px,2.7vw,34px)!important;
  line-height:1.2!important;
  letter-spacing:-.03em!important;
}
body[data-page="home"] main section:not(.bfs-banner-hero) :is(.section-copy,.section-head p){
  max-width:760px;
  line-height:1.68!important;
}

/* ---------- Mobile-friendly latest notice ---------- */
.hero-support-after-slider .notice-shell{
  min-width:0;
}
.hero-support-after-slider .notice-text{
  min-width:0;
}
.hero-support-after-slider .notice-track{
  will-change:transform;
}
.hero-support-after-slider .notice-shell > .btn{
  flex:0 0 auto;
  width:auto!important;
  white-space:nowrap!important;
}
@media(max-width:720px){
  .hero-support-after-slider .notice-bar{
    margin-top:20px!important;
  }
  .hero-support-after-slider .notice-shell{
    min-height:0!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    grid-template-areas:
      "label action"
      "ticker ticker";
    gap:8px 10px!important;
    padding:9px 10px 10px!important;
    border-radius:12px!important;
    align-items:center!important;
  }
  .hero-support-after-slider .notice-label{
    grid-area:label;
    min-height:32px;
    padding:7px 10px!important;
    border-radius:9px!important;
    gap:6px!important;
    font-size:10px!important;
    font-weight:750!important;
  }
  .hero-support-after-slider .notice-label svg{
    width:14px!important;
    height:14px!important;
  }
  .hero-support-after-slider .notice-shell > .btn{
    grid-area:action;
    display:inline-flex!important;
    justify-self:end!important;
    align-self:center!important;
    min-width:0!important;
    min-height:32px!important;
    height:32px!important;
    padding:6px 10px!important;
    border-radius:999px!important;
    font-size:9.5px!important;
    line-height:1!important;
  }
  .hero-support-after-slider .notice-text{
    grid-area:ticker;
    width:100%!important;
    height:27px!important;
    border-top:1px solid #e8eef5;
    padding-top:7px;
  }
  .hero-support-after-slider .notice-track{
    top:7px!important;
    font-size:11px!important;
    font-weight:600!important;
    animation-duration:28s!important;
  }
  .hero-support-after-slider .notice-track span{
    margin-right:30px!important;
  }
}
@media(max-width:390px){
  .hero-support-after-slider .notice-shell{
    padding-inline:8px!important;
  }
  .hero-support-after-slider .notice-shell > .btn{
    padding-inline:8px!important;
    font-size:9px!important;
  }
  .hero-support-after-slider .notice-track{
    font-size:10.5px!important;
  }
}

/* ---------- Homepage Careers & Placement responsive rebuild ---------- */
body[data-page="home"] #placement{
  position:relative;
  overflow:hidden;
}
body[data-page="home"] #placement::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 8% 16%,rgba(56,126,195,.15),transparent 30%),
    radial-gradient(circle at 92% 84%,rgba(216,50,58,.10),transparent 28%);
}
body[data-page="home"] #placement > .container{
  position:relative;
  z-index:1;
}
body[data-page="home"] #placement .section-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end!important;
  gap:24px!important;
  margin-bottom:24px;
}
body[data-page="home"] #placement .section-head > div{
  min-width:0;
}
body[data-page="home"] #placement .section-head h2{
  max-width:760px;
  color:#fff!important;
}
body[data-page="home"] #placement .section-head .btn{
  align-self:end;
  width:auto!important;
  max-width:230px;
  white-space:nowrap!important;
}
body[data-page="home"] #placement .job-grid{
  align-items:stretch;
  gap:16px!important;
}
body[data-page="home"] #placement .job-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  min-height:278px;
  padding:20px!important;
  border-color:rgba(255,255,255,.14)!important;
  background:rgba(255,255,255,.075)!important;
  backdrop-filter:blur(8px);
  box-shadow:0 18px 38px rgba(2,17,39,.12)!important;
}
body[data-page="home"] #placement .job-card:hover{
  transform:translateY(-5px)!important;
  background:rgba(255,255,255,.115)!important;
  border-color:rgba(255,255,255,.26)!important;
  box-shadow:0 26px 48px rgba(2,17,39,.20)!important;
}
body[data-page="home"] #placement .job-top{
  gap:12px;
}
body[data-page="home"] #placement .job-card h3{
  margin:15px 0 8px!important;
  color:#fff!important;
  font-size:17px!important;
}
body[data-page="home"] #placement .job-card p{
  margin:0;
  min-height:56px;
  color:rgba(255,255,255,.70)!important;
  font-size:11.5px!important;
  line-height:1.62!important;
}
body[data-page="home"] #placement .job-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:15px;
}
body[data-page="home"] #placement .job-meta span{
  max-width:100%;
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(255,255,255,.07);
  color:#d8e8fa;
  font-size:9px;
  line-height:1.2;
}
body[data-page="home"] #placement .job-footer{
  margin-top:auto;
  padding-top:15px;
  gap:10px;
}
body[data-page="home"] #placement .job-footer small{
  color:rgba(255,255,255,.55)!important;
  font-size:9.5px!important;
  line-height:1.45!important;
}
body[data-page="home"] #placement .job-footer a{
  color:#fff!important;
  font-size:10.5px!important;
  font-weight:700!important;
}
body[data-page="home"] #placement .placement-map-v13{
  min-width:0;
  margin-top:22px;
}
body[data-page="home"] #placement .placement-map-v13-grid > *,
body[data-page="home"] #placement .placement-map-v13-head > *{
  min-width:0;
}

@media(max-width:1020px){
  body[data-page="home"] #placement .section-head{
    grid-template-columns:1fr;
    align-items:start!important;
    gap:16px!important;
  }
  body[data-page="home"] #placement .section-head .btn{
    justify-self:start;
  }
  body[data-page="home"] #placement .job-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body[data-page="home"] #placement .job-card:last-child{
    grid-column:1/-1;
    min-height:230px;
  }
  body[data-page="home"] #placement .placement-map-v13-grid{
    grid-template-columns:1fr!important;
  }
  body[data-page="home"] #placement .placement-map-v13-visual{
    min-height:390px!important;
  }
}
@media(max-width:720px){
  body[data-page="home"] #placement{
    padding-top:58px!important;
    padding-bottom:58px!important;
  }
  body[data-page="home"] #placement .section-head{
    margin-bottom:18px;
  }
  body[data-page="home"] #placement .section-head h2{
    font-size:clamp(24px,7.2vw,29px)!important;
    line-height:1.2!important;
  }
  body[data-page="home"] #placement .section-head .section-copy{
    font-size:11.5px!important;
    line-height:1.65!important;
  }
  body[data-page="home"] #placement .section-head .btn{
    width:100%!important;
    max-width:100%!important;
    min-height:43px!important;
    justify-content:center!important;
    white-space:normal!important;
  }
  body[data-page="home"] #placement .job-grid{
    display:grid!important;
    grid-template-columns:none!important;
    grid-auto-flow:column;
    grid-auto-columns:minmax(270px,86vw);
    gap:12px!important;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:inline mandatory;
    scrollbar-width:none;
    margin-inline:-14px;
    padding:3px 14px 12px;
  }
  body[data-page="home"] #placement .job-grid::-webkit-scrollbar{display:none}
  body[data-page="home"] #placement .job-card,
  body[data-page="home"] #placement .job-card:last-child{
    grid-column:auto;
    min-height:258px;
    scroll-snap-align:start;
    padding:18px!important;
  }
  body[data-page="home"] #placement .placement-map-v13{
    padding:14px!important;
  }
  body[data-page="home"] #placement .placement-map-v13-head{
    display:grid!important;
    grid-template-columns:1fr;
    gap:12px!important;
  }
  body[data-page="home"] #placement .placement-map-v13-head h3{
    font-size:18px!important;
    line-height:1.3!important;
  }
  body[data-page="home"] #placement .placement-map-v13-head p{
    font-size:10.8px!important;
    line-height:1.6!important;
  }
  body[data-page="home"] #placement .placement-map-v13-total{
    width:100%;
    padding:10px 12px!important;
  }
  body[data-page="home"] #placement .placement-map-v13-total strong{
    font-size:15px!important;
  }
  body[data-page="home"] #placement .placement-map-v13-visual{
    min-height:285px!important;
    padding:8px!important;
  }
  body[data-page="home"] #placement .placement-map-v13-visual img{
    max-height:280px!important;
  }
  body[data-page="home"] #placement .placement-student-streams{
    height:330px!important;
    gap:8px!important;
  }
}
@media(max-width:420px){
  body[data-page="home"] #placement .job-grid{
    grid-auto-columns:calc(100vw - 38px);
  }
  body[data-page="home"] #placement .placement-student-streams{
    grid-template-columns:1fr 1fr!important;
    height:310px!important;
  }
  body[data-page="home"] #placement .placement-student-card{
    grid-template-columns:36px minmax(0,1fr)!important;
    min-height:57px!important;
    padding:7px!important;
    gap:7px!important;
  }
  body[data-page="home"] #placement .placement-student-card img{
    width:36px!important;
    height:36px!important;
  }
  body[data-page="home"] #placement .placement-student-card strong{
    font-size:9.5px!important;
  }
  body[data-page="home"] #placement .placement-student-card span,
  body[data-page="home"] #placement .placement-student-card small{
    font-size:8px!important;
  }
}

/* ---------- Small-screen section and button safety ---------- */
@media(max-width:720px){
  body.inner-page :is(.page-hero,.exam-hero,.fw-hero) h1{
    font-size:clamp(26px,8.2vw,31px)!important;
    line-height:1.18!important;
  }
  body.inner-page main :is(.section-head,.page-title-row,.final-section-head,.exam-section-head) h2,
  body.inner-page main :is(.page-section,.exam-section) > .container > h2{
    font-size:clamp(22px,6.8vw,27px)!important;
    line-height:1.25!important;
  }
  body[data-page="home"] main section:not(.bfs-banner-hero) :is(.section-head,.page-title-row) h2{
    font-size:clamp(23px,7vw,29px)!important;
  }
  :is(.hero-actions,.page-actions,.cta-actions,.detail-action-buttons,.profile-actions,.footer-contact-actions){
    max-width:100%;
  }
  :is(.hero-actions,.page-actions,.cta-actions,.detail-action-buttons,.profile-actions,.footer-contact-actions) .btn{
    max-width:100%!important;
    min-width:0!important;
    white-space:normal!important;
    line-height:1.25!important;
  }
  .section-head > .btn,
  .page-title-row > .btn{
    margin-top:14px;
  }
}
@media(max-width:460px){
  body.inner-page :is(.hero-actions,.page-actions,.cta-actions,.detail-action-buttons,.profile-actions) .btn{
    flex:1 1 100%!important;
    width:100%!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .hero-support-after-slider .notice-track{
    animation-duration:80s!important;
  }
}

/* Standalone success/error screens also follow the same restrained scale. */
body.inner-page main .success-page h1,
body.inner-page main .error-page h1{
  font-size:clamp(30px,3.1vw,35px)!important;
  line-height:1.16!important;
  letter-spacing:-.035em!important;
}
body.inner-page main .panel-card > h2{
  font-size:clamp(22px,2vw,27px)!important;
  line-height:1.26!important;
}
@media(max-width:720px){
  body.inner-page main .success-page h1,
  body.inner-page main .error-page h1{
    font-size:clamp(26px,8.2vw,31px)!important;
  }
  body.inner-page main .panel-card > h2{
    font-size:clamp(20px,6vw,24px)!important;
  }
}

/* Placement page responsive safety: preserves current design and content. */
body[data-page="placement"] .page-hero-grid > *,
body[data-page="placement"] #jobs .container > *{
  min-width:0;
}
body[data-page="placement"] #jobs .toolbar{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(150px,190px) minmax(150px,190px);
  align-items:center;
  gap:10px!important;
}
body[data-page="placement"] #jobs .toolbar .search-mini,
body[data-page="placement"] #jobs .toolbar select{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
body[data-page="placement"] #jobs .feature-grid{
  align-items:stretch;
}
body[data-page="placement"] #jobs .feature-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  height:100%;
}
body[data-page="placement"] #jobs .feature-card .card-link{
  margin-top:auto;
  padding-top:14px;
}
@media(max-width:940px){
  body[data-page="placement"] #jobs .toolbar{
    grid-template-columns:minmax(0,1fr) repeat(2,minmax(135px,165px));
  }
  body[data-page="placement"] #jobs .feature-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:680px){
  body[data-page="placement"] #jobs .toolbar{
    grid-template-columns:1fr!important;
    padding:10px!important;
  }
  body[data-page="placement"] #jobs .toolbar :is(input,select){
    min-height:42px!important;
  }
  body[data-page="placement"] #jobs .feature-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body[data-page="placement"] #jobs .feature-card{
    padding:17px!important;
  }
  body[data-page="placement"] .metric-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* =====================================================================
   SOURCE: assets/responsive-v46.css
   ===================================================================== */
/* BFS Education V46
   Mobile-first typography, unified section headings, complete map visibility,
   responsive career actions, placement page upgrade and FAQ redesign.
   Navigation rules are intentionally untouched. */
:root{
  --v46-navy:#0b2f63;
  --v46-blue:#1f5f9f;
  --v46-red:#d8323a;
  --v46-ink:#102b4d;
  --v46-muted:#62758b;
  --v46-line:#dce7f2;
  --v46-soft:#f4f8fd;
  --v46-white:#fff;
}

/* ---------- Text safety and professional fluid type ---------- */
body{overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
main :is(h1,h2,h3,p,a,span,strong,small){overflow-wrap:anywhere}
main :is(h1,h2){text-wrap:balance}

/* Inner pages: desktop 32-35 hero, compact mobile scale. */
body.inner-page main :is(.page-hero,.exam-hero,.fw-hero,.profile-page-hero,.final-page-hero) h1{
  width:100%;
  max-width:820px;
  margin-block:10px 12px;
  font-size:clamp(32px,3vw,35px)!important;
  line-height:1.15!important;
  letter-spacing:-.035em!important;
}
body.inner-page main h2{
  font-size:clamp(26px,2.35vw,30px)!important;
  line-height:1.24!important;
  letter-spacing:-.025em!important;
}
body.inner-page main h3{
  font-size:clamp(16px,1.55vw,20px)!important;
  line-height:1.32!important;
}
body.inner-page main :is(.page-hero,.exam-hero,.fw-hero,.profile-page-hero,.final-page-hero) .lead{
  max-width:730px;
  font-size:13px!important;
  line-height:1.7!important;
}

/* Homepage section headings: one consistent title language, hero excluded. */
body[data-page="home"] main section:not(.bfs-banner-hero):not(.cta-wrap) h2{
  position:relative;
  width:100%;
  max-width:900px;
  margin-top:8px!important;
  margin-bottom:14px!important;
  padding-bottom:14px;
  font-size:clamp(28px,2.55vw,34px)!important;
  line-height:1.2!important;
  letter-spacing:-.035em!important;
  color:var(--v46-ink);
}
body[data-page="home"] main section:not(.bfs-banner-hero):not(.cta-wrap) h2::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:52px;
  height:3px;
  border-radius:999px;
  background:var(--v46-red);
  box-shadow:16px 0 0 -1px var(--v46-navy);
}
body[data-page="home"] main :is(.section-head.centered,.bfs-reg-head,.bfs-progress-story-v43,.faculty-showcase-title,.bfs-impact-head) h2{
  margin-inline:auto!important;
  text-align:center;
}
body[data-page="home"] main :is(.section-head.centered,.bfs-reg-head,.bfs-progress-story-v43,.faculty-showcase-title,.bfs-impact-head) h2::after{
  left:50%;
  transform:translateX(-50%);
}
body[data-page="home"] main :is(.dark-surface,.bfs-benefit-strip) h2{color:#fff!important}
body[data-page="home"] main :is(.dark-surface,.bfs-benefit-strip) h2::after{
  background:var(--v46-red);
  box-shadow:16px 0 0 -1px rgba(255,255,255,.9);
}
body[data-page="home"] main section:not(.bfs-banner-hero) :is(.section-copy,.section-head p,.bfs-network-copy>p,.franchise-home-head p){
  max-width:780px;
  font-size:13px!important;
  line-height:1.72!important;
}

/* ---------- Common inner-page button = approved homepage pill + circle arrow ---------- */
body.inner-page main .btn{
  position:relative!important;
  overflow:hidden!important;
  min-height:50px!important;
  max-width:100%;
  padding:0 9px 0 20px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:11px!important;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1.1!important;
  white-space:normal!important;
  text-align:center;
}
body.inner-page main .btn::after{
  content:"↗"!important;
  position:static!important;
  inset:auto!important;
  display:grid!important;
  place-items:center!important;
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  border-radius:50%!important;
  color:currentColor!important;
  background:rgba(255,255,255,.18)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)!important;
  transform:none!important;
  transition:transform .22s ease,background .22s ease!important;
}
body.inner-page main .btn-light::after{
  color:var(--v46-red)!important;
  background:#fff1f2!important;
  box-shadow:inset 0 0 0 1px rgba(216,50,58,.16)!important;
}
body.inner-page main .btn:hover::after{transform:translateX(2px) rotate(-8deg)!important}
body.inner-page main .btn>svg{display:none!important}
body.inner-page main .btn-block{width:100%!important;justify-content:space-between!important}

/* ---------- Homepage careers action and job card button safety ---------- */
body[data-page="home"] #placement .section-head>.btn{
  width:auto!important;
  max-width:240px!important;
  min-height:48px!important;
}
body[data-page="home"] #placement .job-footer{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center!important;
  gap:12px!important;
}
body[data-page="home"] #placement .job-footer small{min-width:0}
body[data-page="home"] #placement .job-footer a{
  position:relative!important;
  overflow:hidden!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:9px!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:40px!important;
  padding:5px 6px 5px 14px!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:999px!important;
  color:#fff!important;
  background:var(--v46-red)!important;
  box-shadow:0 12px 24px rgba(0,0,0,.14)!important;
  white-space:normal!important;
  line-height:1.25!important;
}
body[data-page="home"] #placement .job-footer a::before{display:none!important}
body[data-page="home"] #placement .job-footer a::after{
  content:"↗"!important;
  position:static!important;
  display:grid!important;
  place-items:center!important;
  width:29px!important;
  height:29px!important;
  flex:0 0 29px!important;
  border-radius:50%!important;
  color:#fff!important;
  background:rgba(255,255,255,.18)!important;
  transform:none!important;
}

/* ---------- Full India map: never crop ---------- */
body[data-page="home"] #placement .placement-map-v13-visual{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:0!important;
  height:auto!important;
  padding:10px!important;
  overflow:visible!important;
}
body[data-page="home"] #placement .placement-map-v13-visual img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:900px!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
}

/* ---------- Placement page premium layout ---------- */
body[data-page="placement"] .placement-hero-v46{overflow:hidden}
body[data-page="placement"] .placement-hero-v46 .hero-side-card{
  position:relative;
  overflow:hidden;
  border-color:#cfe0ef!important;
  box-shadow:0 24px 60px -40px rgba(11,47,99,.38)!important;
}
body[data-page="placement"] .placement-hero-v46 .hero-side-card::after{
  content:"";position:absolute;right:-70px;bottom:-70px;width:190px;height:190px;border-radius:50%;background:rgba(31,95,159,.08);pointer-events:none
}
.placement-status-v46{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  margin:20px 0 24px;
  padding:15px 17px;
  border:1px solid #d9e6f1;
  border-left:4px solid var(--v46-red);
  border-radius:12px;
  background:#fff;
  box-shadow:0 18px 46px -36px rgba(11,47,99,.38);
}
.placement-status-v46>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:var(--v46-navy);background:#edf5fd}
.placement-status-v46 svg{width:21px;height:21px}
.placement-status-v46 strong{display:block;color:var(--v46-navy);font-size:13px}
.placement-status-v46 p{margin:3px 0 0;color:var(--v46-muted);font-size:11px;line-height:1.55}
.placement-status-v46 a{color:var(--v46-red);font-size:11px;font-weight:800;white-space:nowrap}
.placement-filter-v46{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(170px,220px);
  gap:10px;
  margin-bottom:18px;
  padding:10px;
  border:1px solid var(--v46-line);
  border-radius:14px;
  background:#fff;
  box-shadow:0 18px 42px -38px rgba(11,47,99,.36);
}
.placement-filter-v46 label{display:flex;align-items:center;gap:9px;min-width:0;padding:0 12px;border:1px solid #dce7f2;border-radius:10px;background:#f8fbff}
.placement-filter-v46 label svg{width:18px;height:18px;color:var(--v46-blue)}
.placement-filter-v46 input,.placement-filter-v46 select{width:100%;min-width:0;height:44px;border:0!important;outline:0;background:transparent;color:var(--v46-ink);font:inherit;font-size:12px}
.placement-filter-v46 select{padding:0 12px;border:1px solid #dce7f2!important;border-radius:10px!important;background:#f8fbff}
.placement-path-grid-v46{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.placement-path-card-v46{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:300px;
  padding:20px;
  border:1px solid #d9e6f1;
  border-radius:14px;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  box-shadow:0 22px 52px -40px rgba(11,47,99,.42);
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
}
.placement-path-card-v46::before{content:"";position:absolute;left:0;top:0;width:4px;height:72px;background:var(--v46-red)}
.placement-path-card-v46:hover{transform:translateY(-6px);border-color:#b5cde2;box-shadow:0 34px 66px -42px rgba(11,47,99,.50)}
.placement-path-top-v46{display:flex;align-items:center;justify-content:space-between;gap:10px}
.placement-path-icon-v46{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;color:var(--v46-blue);background:#eaf3fd}
.placement-path-icon-v46 svg{width:23px;height:23px}
.placement-path-type-v46{padding:6px 9px;border-radius:999px;color:#9c2930;background:#fff0f1;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.placement-path-card-v46 h3{margin:16px 0 8px!important;color:var(--v46-navy)}
.placement-path-card-v46>p{margin:0;color:var(--v46-muted);font-size:11.5px;line-height:1.65}
.placement-skill-title-v46{margin-top:16px;color:#244b77;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}
.placement-skill-list-v46{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 16px}
.placement-skill-list-v46 span{padding:6px 8px;border:1px solid #d9e6f1;border-radius:999px;color:#46637f;background:#fff;font-size:9px;font-weight:700}
.placement-path-card-v46>a{margin-top:auto;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px;padding:6px 7px 6px 13px;border-radius:999px;color:#fff;background:var(--v46-navy);font-size:10px;font-weight:800}
.placement-path-card-v46>a::after{content:"↗";width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.16)}
.placement-process-v46{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px}
.placement-process-v46::before{content:"";position:absolute;left:8%;right:8%;top:31px;height:2px;background:#dbe6f1}
.placement-process-card-v46{position:relative;z-index:1;padding:17px;border:1px solid #dbe6f1;border-radius:14px;background:#fff;box-shadow:0 18px 42px -38px rgba(11,47,99,.38);transition:transform .22s ease,box-shadow .22s ease}
.placement-process-card-v46:hover{transform:translateY(-5px);box-shadow:0 28px 54px -38px rgba(11,47,99,.46)}
.placement-process-card-v46>span{width:42px;height:42px;display:grid;place-items:center;margin-bottom:13px;border:5px solid #f4f8fd;border-radius:50%;color:#fff;background:var(--v46-red);font-size:12px;font-weight:800;box-shadow:0 0 0 1px #dbe6f1}
.placement-process-card-v46 h3{margin:0 0 6px!important;font-size:15px!important}
.placement-process-card-v46 p{margin:0;color:var(--v46-muted);font-size:10.5px;line-height:1.6}
.placement-readiness-v46{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;align-items:stretch}
.placement-readiness-card-v46{padding:22px;border:1px solid #d9e6f1;border-radius:14px;background:#fff;box-shadow:0 22px 52px -42px rgba(11,47,99,.42)}
.placement-readiness-card-v46.dark{color:#fff;border-color:#173f70;background:var(--v46-navy)}
.placement-readiness-card-v46 h2{margin:8px 0 10px!important;color:inherit!important}
.placement-readiness-card-v46 p{color:var(--v46-muted);font-size:11.5px;line-height:1.68}
.placement-readiness-card-v46.dark p{color:rgba(255,255,255,.72)}
.placement-check-v46{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}
.placement-check-v46 span{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(255,255,255,.06);font-size:10px}
.placement-check-v46 span::before{content:"✓";width:21px;height:21px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--v46-red);font-weight:800}

/* ---------- FAQ page redesign ---------- */
body[data-page="faq"] #faq{background:linear-gradient(180deg,#f8fbff 0%,#fff 100%)}
.faq-shell-v46{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}
.faq-main-v46{min-width:0}
.faq-tools-v46{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin:18px 0;padding:10px;border:1px solid #dce7f2;border-radius:14px;background:#fff;box-shadow:0 18px 42px -38px rgba(11,47,99,.36)}
.faq-search-v46{display:flex;align-items:center;gap:9px;min-width:0;padding:0 12px;border:1px solid #dce7f2;border-radius:10px;background:#f8fbff}
.faq-search-v46 svg{width:18px;height:18px;color:var(--v46-blue)}
.faq-search-v46 input{width:100%;min-width:0;height:44px;border:0;outline:0;background:transparent;font:inherit;font-size:12px}
.faq-count-v46{display:flex;align-items:center;padding:0 12px;border-radius:10px;color:#6b7e93;background:#f4f8fd;font-size:10px;font-weight:750;white-space:nowrap}
.faq-list-v46{display:grid;gap:10px}
.faq-item-v46{overflow:hidden;border:1px solid #dbe6f1;border-radius:14px;background:#fff;box-shadow:0 16px 38px -36px rgba(11,47,99,.40);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.faq-item-v46:hover{transform:translateY(-2px);border-color:#b8cee2;box-shadow:0 24px 46px -36px rgba(11,47,99,.48)}
.faq-item-v46[open]{border-color:#abc5dd;box-shadow:0 26px 52px -36px rgba(11,47,99,.48)}
.faq-item-v46 summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:38px minmax(0,1fr) 32px;align-items:center;gap:11px;padding:13px 14px;color:var(--v46-navy);font-size:12px;font-weight:800}
.faq-item-v46 summary::-webkit-details-marker{display:none}
.faq-num-v46{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:var(--v46-red);background:#fff0f1;font-size:10px}
.faq-toggle-v46{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--v46-navy);font-size:16px;transition:transform .2s ease,background .2s ease}
.faq-item-v46[open] .faq-toggle-v46{transform:rotate(45deg);background:var(--v46-red)}
.faq-answer-v46{padding:0 16px 15px 63px;color:var(--v46-muted);font-size:11.5px;line-height:1.7}
.faq-support-v46{position:sticky;top:104px;display:grid;gap:12px}
.faq-support-card-v46{padding:20px;border:1px solid #d8e5f1;border-radius:14px;background:#fff;box-shadow:0 22px 54px -42px rgba(11,47,99,.44)}
.faq-support-card-v46.primary{color:#fff;border-color:#173f70;background:var(--v46-navy)}
.faq-support-card-v46 h3{margin:8px 0!important;color:inherit!important}
.faq-support-card-v46 p{margin:0 0 14px;color:var(--v46-muted);font-size:11px;line-height:1.65}
.faq-support-card-v46.primary p{color:rgba(255,255,255,.72)}
.faq-contact-list-v46{display:grid;gap:8px}
.faq-contact-list-v46 a,.faq-contact-list-v46 span{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid #dce7f2;border-radius:10px;color:#48647f;background:#f8fbff;font-size:10px;line-height:1.45}
.faq-contact-list-v46 svg{width:17px;height:17px;flex:0 0 17px;color:var(--v46-blue)}

/* ---------- Mobile/tablet ---------- */
@media(max-width:1020px){
  .placement-path-grid-v46{grid-template-columns:repeat(2,minmax(0,1fr))}
  .placement-process-v46{grid-template-columns:repeat(2,minmax(0,1fr))}
  .placement-process-v46::before{display:none}
  .faq-shell-v46{grid-template-columns:1fr}
  .faq-support-v46{position:static;grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  /* Home section titles deliberately compact at phone widths. */
  body[data-page="home"] main section:not(.bfs-banner-hero):not(.cta-wrap) h2{
    max-width:100%;
    margin-bottom:12px!important;
    padding-bottom:11px;
    font-size:22px!important;
    line-height:1.25!important;
    letter-spacing:-.025em!important;
  }
  body[data-page="home"] main section:not(.bfs-banner-hero):not(.cta-wrap) h2::after{width:38px;height:3px;box-shadow:13px 0 0 -1px var(--v46-navy)}
  body[data-page="home"] main :is(.dark-surface,.bfs-benefit-strip) h2::after{box-shadow:13px 0 0 -1px rgba(255,255,255,.9)}
  body[data-page="home"] main section:not(.bfs-banner-hero) :is(.section-copy,.section-head p,.bfs-network-copy>p,.franchise-home-head p){font-size:11.5px!important;line-height:1.65!important}
  body[data-page="home"] .bfs-network-copy,
  body[data-page="home"] .franchise-home-head>div:first-child{min-width:0;width:100%}

  body.inner-page main :is(.page-hero,.exam-hero,.fw-hero,.profile-page-hero,.final-page-hero) h1{
    font-size:24px!important;
    line-height:1.22!important;
    letter-spacing:-.025em!important;
  }
  body.inner-page main h2{font-size:21px!important;line-height:1.28!important}
  body.inner-page main h3{font-size:16px!important;line-height:1.35!important}
  body.inner-page main :is(.page-hero,.exam-hero,.fw-hero,.profile-page-hero,.final-page-hero) .lead{font-size:11.5px!important;line-height:1.65!important}

  body.inner-page main :is(.page-actions,.hero-actions,.cta-actions,.form-actions){display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;gap:9px!important}
  body.inner-page main :is(.page-actions,.hero-actions,.cta-actions,.form-actions) .btn{width:100%!important;min-width:0!important;min-height:46px!important;padding-left:14px!important;font-size:10.5px!important}
  body.inner-page main .btn::after{width:31px!important;height:31px!important;flex-basis:31px!important}

  body[data-page="home"] #placement .section-head>.btn{width:100%!important;max-width:100%!important}
  body[data-page="home"] #placement .job-footer{grid-template-columns:1fr!important;align-items:start!important}
  body[data-page="home"] #placement .job-footer a{width:100%!important;justify-content:space-between!important}
  body[data-page="home"] #placement .placement-map-v13-visual{padding:4px!important}
  body[data-page="home"] #placement .placement-map-v13-visual img{width:100%!important;max-width:100%!important}

  /* Floating actions no longer cover central card content on narrow screens. */
  .quick-contact-rail{
    right:9px!important;
    bottom:82px!important;
    top:auto!important;
    display:flex!important;
    flex-direction:row!important;
    gap:7px!important;
  }
  .quick-contact-btn{width:40px!important;height:40px!important;border-radius:12px!important}
  .quick-contact-btn svg{width:19px!important;height:19px!important}

  .placement-status-v46{grid-template-columns:auto minmax(0,1fr);padding:13px}
  .placement-status-v46>a{grid-column:2;justify-self:start}
  .placement-filter-v46{grid-template-columns:1fr}
  .placement-path-grid-v46{grid-template-columns:1fr;gap:12px}
  .placement-path-card-v46{min-height:0;padding:17px}
  .placement-process-v46{grid-template-columns:1fr 1fr;gap:10px}
  .placement-process-card-v46{padding:14px}
  .placement-readiness-v46{grid-template-columns:1fr}
  .placement-check-v46{grid-template-columns:1fr}
  .faq-tools-v46{grid-template-columns:1fr}
  .faq-count-v46{min-height:38px;justify-content:center}
  .faq-support-v46{grid-template-columns:1fr}
  .faq-item-v46 summary{grid-template-columns:32px minmax(0,1fr) 28px;padding:11px;gap:9px;font-size:11px}
  .faq-num-v46{width:30px;height:30px}
  .faq-toggle-v46{width:27px;height:27px}
  .faq-answer-v46{padding:0 12px 13px 52px;font-size:10.8px}
}
@media(max-width:430px){
  body.inner-page main :is(.page-actions,.hero-actions,.cta-actions,.form-actions){grid-template-columns:1fr!important}
  .placement-process-v46{grid-template-columns:1fr}
}
@media(max-width:370px){
  body[data-page="home"] main section:not(.bfs-banner-hero):not(.cta-wrap) h2{font-size:20.5px!important;line-height:1.27!important}
  body.inner-page main :is(.page-hero,.exam-hero,.fw-hero,.profile-page-hero,.final-page-hero) h1{font-size:22px!important}
  body.inner-page main h2{font-size:20px!important}
  .quick-contact-btn{width:38px!important;height:38px!important}
}
@media(prefers-reduced-motion:reduce){
  .placement-path-card-v46,.placement-process-card-v46,.faq-item-v46{transition:none!important}
}

/* Final specificity correction: Careers & Placement follows the same phone title scale. */
@media(max-width:720px){
  body[data-page="home"] #placement .section-head h2{font-size:22px!important;line-height:1.25!important}
}
@media(max-width:370px){
  body[data-page="home"] #placement .section-head h2{font-size:20.5px!important;line-height:1.27!important}
}

/* ---------- Final all-page mobile audit corrections ---------- */
@media(max-width:720px){
  body.inner-page main h1{font-size:24px!important;line-height:1.22!important;letter-spacing:-.025em!important}
  body.inner-page main :is(section,article,div) h2{font-size:21px!important;line-height:1.28!important}

  /* CTA sections are sometimes placed after </main>; keep the same pill language and prevent overflow. */
  body.inner-page .cta-wrap .cta-card{min-width:0!important;overflow:hidden!important}
  body.inner-page .cta-wrap .cta-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;gap:9px!important}
  body.inner-page .cta-wrap .btn{width:100%!important;min-width:0!important;max-width:100%!important;min-height:46px!important;padding:0 8px 0 14px!important;border-radius:999px!important;white-space:normal!important;line-height:1.2!important}
  body.inner-page .cta-wrap .btn::after{content:"↗"!important;position:static!important;display:grid!important;place-items:center!important;width:31px!important;height:31px!important;flex:0 0 31px!important;border-radius:50%!important;background:rgba(255,255,255,.18)!important;transform:none!important}
  body.inner-page .cta-wrap .btn-light::after{color:var(--v46-red)!important;background:#fff1f2!important;box-shadow:inset 0 0 0 1px rgba(216,50,58,.16)!important}

  /* Test Centre horizontal controls scroll inside their own rows, never the page. */
  body[data-page="test-centre"] main,
  body[data-page="test-centre"] .exam-hero,
  body[data-page="test-centre"] .exam-section,
  body[data-page="test-centre"] .exam-section>.container,
  body[data-page="test-centre"] .exam-service-nav>.container{max-width:100%!important;min-width:0!important;overflow-x:hidden!important}
  body[data-page="test-centre"] .exam-service-track,
  body[data-page="test-centre"] .test-filter-tabs{display:flex!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-inline:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  body[data-page="test-centre"] .exam-service-track::-webkit-scrollbar,
  body[data-page="test-centre"] .test-filter-tabs::-webkit-scrollbar{display:none}
  body[data-page="test-centre"] .exam-service-link,
  body[data-page="test-centre"] .test-filter-btn{flex:0 0 auto!important}
  body[data-page="test-centre"] .test-toolbar{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;padding:10px!important}
  body[data-page="test-centre"] .test-count{align-self:flex-start!important}
}
@media(max-width:430px){
  body.inner-page .cta-wrap .cta-actions{grid-template-columns:1fr!important}
}
@media(max-width:370px){
  body.inner-page main h1{font-size:22px!important}
  body.inner-page main :is(section,article,div) h2{font-size:20px!important}
}

/* Same approved pill + circle-arrow treatment for CTA buttons outside main. */
body.inner-page .cta-wrap .btn{
  position:relative!important;overflow:hidden!important;min-height:50px!important;max-width:100%;padding:0 9px 0 20px!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:11px!important;font-size:12px!important;font-weight:750!important;white-space:normal!important;text-align:center
}
body.inner-page .cta-wrap .btn::after{content:"↗"!important;position:static!important;inset:auto!important;display:grid!important;place-items:center!important;width:34px!important;height:34px!important;flex:0 0 34px!important;border-radius:50%!important;color:currentColor!important;background:rgba(255,255,255,.18)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)!important;transform:none!important}
body.inner-page .cta-wrap .btn-light::after{color:var(--v46-red)!important;background:#fff1f2!important;box-shadow:inset 0 0 0 1px rgba(216,50,58,.16)!important}

/* ---------- V46 final phone QA corrections ---------- */
@media(max-width:720px){
  /* Standalone success/error screens inherit the same mobile hero scale. */
  body.inner-page main .success-page h1,
  body.inner-page main .error-page h1{
    font-size:24px!important;
    line-height:1.22!important;
    letter-spacing:-.025em!important;
  }

  /* Online exam question/confirmation headings remain readable on phones. */
  body.online-exam-page main h2{
    font-size:21px!important;
    line-height:1.3!important;
    overflow-wrap:anywhere!important;
    text-wrap:balance;
  }

  /* Test Centre uses data-page=examination, so target its actual page class. */
  body.exam-page main,
  body.exam-page .exam-hero,
  body.exam-page .exam-section,
  body.exam-page .exam-section>.container,
  body.exam-page .exam-service-nav,
  body.exam-page .exam-service-nav>.container{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
    box-sizing:border-box!important;
  }
  body.exam-page .exam-hero-grid,
  body.exam-page .test-card-grid,
  body.exam-page .test-card,
  body.exam-page .test-card-footer,
  body.exam-page .exam-process-line{
    min-width:0!important;
    max-width:100%!important;
  }
  body.exam-page .exam-service-track,
  body.exam-page .test-filter-tabs{
    display:flex!important;
    flex:0 1 auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-inline:contain;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    box-sizing:border-box!important;
  }
  body.exam-page .exam-service-track::-webkit-scrollbar,
  body.exam-page .test-filter-tabs::-webkit-scrollbar{display:none}
  body.exam-page .exam-service-link,
  body.exam-page .test-filter-btn{flex:0 0 auto!important}
  body.exam-page .test-toolbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    padding:10px!important;
    box-sizing:border-box!important;
  }
  body.exam-page .test-toolbar>*{min-width:0!important;max-width:100%!important}
  body.exam-page .test-count{justify-self:start!important}

  /* Footer CTA never creates horizontal page overflow. */
  body.inner-page .cta-wrap,
  body.inner-page .cta-wrap>.container,
  body.inner-page .cta-card,
  body.inner-page .cta-card>*{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
}
@media(max-width:370px){
  body.inner-page main .success-page h1,
  body.inner-page main .error-page h1{font-size:22px!important}
  body.online-exam-page main h2{font-size:20px!important}
}

/* =====================================================================
   SOURCE: assets/final-v47.css
   ===================================================================== */
/* BFS Education V47
   Scope: desktop hover dropdown reliability, homepage title system,
   full India map + readable location feature. No navigation visual redesign. */

:root{
  --v47-navy:#0b2f63;
  --v47-blue:#1f5f9f;
  --v47-red:#d8323a;
  --v47-ink:#0c2443;
  --v47-line:#d9e5f1;
  --v47-soft:#f5f9fd;
}

/* 1) Desktop dropdown: hover only, no click-lock, above every section. */
@media (min-width:1121px){
  .site-header{
    overflow:visible!important;
    z-index:10000!important;
  }
  .site-header .container,
  .site-header .bfs-navbar,
  .site-header .final-main-nav{
    overflow:visible!important;
  }
  .site-header .final-main-nav > .simple-dropdown-item{
    position:relative!important;
    z-index:1;
  }
  .site-header .final-main-nav > .simple-dropdown-item:hover,
  .site-header .final-main-nav > .simple-dropdown-item.hover-open-v47{
    z-index:10020!important;
  }
  .site-header .final-main-nav > .simple-dropdown-item > .final-dropdown{
    display:block!important;
    position:absolute!important;
    top:calc(100% + 6px)!important;
    z-index:10030!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(6px)!important;
    transition:opacity .16s ease,visibility .16s ease,transform .16s ease!important;
  }
  .site-header .final-main-nav > .simple-dropdown-item > .final-dropdown::before{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:-10px!important;
    height:10px!important;
    background:transparent!important;
  }
  .site-header .final-main-nav > .simple-dropdown-item:hover > .final-dropdown,
  .site-header .final-main-nav > .simple-dropdown-item.hover-open-v47 > .final-dropdown,
  body .site-header .final-main-nav > .simple-dropdown-item:hover.open > .final-dropdown:not(:hover),
  body .site-header .final-main-nav > .simple-dropdown-item.hover-open-v47.open > .final-dropdown:not(:hover){
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }
  .site-header .final-main-nav > .simple-dropdown-item:not(:hover):not(.hover-open-v47) > .final-dropdown,
  .site-header .final-main-nav > .simple-dropdown-item.open:not(:hover):not(.hover-open-v47) > .final-dropdown{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(6px)!important;
  }
}

/* 2) One professional heading language across homepage sections. */
body[data-page="home"] main section h2.home-section-title-v47{
  position:relative!important;
  width:fit-content;
  max-width:min(100%,860px);
  margin:0 0 15px!important;
  padding:3px 0 3px 19px!important;
  border-left:4px solid var(--v47-red);
  color:var(--v47-ink)!important;
  font-size:clamp(28px,2.55vw,34px)!important;
  font-weight:750!important;
  line-height:1.18!important;
  letter-spacing:-.034em!important;
  text-wrap:balance;
}
body[data-page="home"] main section h2.home-section-title-v47::before{
  content:""!important;
  position:absolute!important;
  left:-4px!important;
  top:calc(50% + 5px)!important;
  width:4px!important;
  height:13px!important;
  border-radius:0 0 3px 3px!important;
  background:var(--v47-navy)!important;
  box-shadow:none!important;
  transform:none!important;
}
body[data-page="home"] main section h2.home-section-title-v47::after{
  content:""!important;
  position:absolute!important;
  left:19px!important;
  bottom:-8px!important;
  width:68px!important;
  height:2px!important;
  border-radius:99px!important;
  background:var(--v47-line)!important;
  box-shadow:none!important;
  transform:none!important;
}
body[data-page="home"] main section h2.home-section-title-v47.home-title-centered-v47{
  width:min(100%,860px);
  margin-inline:auto!important;
  padding:18px 0 2px!important;
  border-left:0;
  text-align:center;
}
body[data-page="home"] main section h2.home-section-title-v47.home-title-centered-v47::before{
  left:50%!important;
  top:0!important;
  width:44px!important;
  height:4px!important;
  border-radius:99px!important;
  background:var(--v47-red)!important;
  transform:translateX(-28px)!important;
}
body[data-page="home"] main section h2.home-section-title-v47.home-title-centered-v47::after{
  left:50%!important;
  top:0!important;
  bottom:auto!important;
  width:9px!important;
  height:4px!important;
  border-radius:99px!important;
  background:var(--v47-navy)!important;
  transform:translateX(20px)!important;
}
body[data-page="home"] main .home-heading-wrap-v47 .eyebrow{
  display:inline-flex!important;
  align-items:center;
  width:max-content;
  max-width:100%;
  margin-bottom:10px!important;
  padding:6px 10px!important;
  border:1px solid rgba(216,50,58,.16)!important;
  border-radius:999px!important;
  background:#fff6f6!important;
  color:#bd2730!important;
  font-size:9px!important;
  font-weight:750!important;
  letter-spacing:.12em!important;
}
body[data-page="home"] main :is(.dark-surface,.bfs-benefit-strip) h2.home-section-title-v47,
body[data-page="home"] main .bfs-progress-story-v43 h2.home-section-title-v47{
  color:#fff!important;
}
body[data-page="home"] main :is(.dark-surface,.bfs-benefit-strip) h2.home-section-title-v47::after,
body[data-page="home"] main .bfs-progress-story-v43 h2.home-section-title-v47::after{
  background:rgba(255,255,255,.24)!important;
}
body[data-page="home"] main :is(.dark-surface,.bfs-benefit-strip) .home-heading-wrap-v47 .eyebrow,
body[data-page="home"] main .bfs-progress-story-v43.home-heading-wrap-v47 .eyebrow{
  border-color:rgba(255,255,255,.15)!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
}

/* 3) Full map stays visible and its location feature remains readable. */
body[data-page="home"] #placement .placement-map-v13-visual{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-content:start!important;
  justify-items:center!important;
  gap:12px!important;
  overflow:hidden!important;
}
body[data-page="home"] #placement .placement-map-v13-visual > img{
  width:100%!important;
  height:auto!important;
  max-width:900px!important;
  max-height:none!important;
  object-fit:contain!important;
}
.placement-location-grid-v47{
  width:100%;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.placement-location-chip-v47{
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
  padding:9px 10px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:8px;
  background:rgba(255,255,255,.07);
  color:#fff;
  font-size:10px;
  font-weight:650;
  line-height:1.3;
  box-shadow:0 12px 24px rgba(2,14,32,.08);
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
.placement-location-chip-v47:hover{
  transform:translateY(-3px);
  background:rgba(255,255,255,.13);
  border-color:rgba(255,255,255,.26);
}
.placement-location-chip-v47 i{
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-radius:50%;
  background:#ff5961;
  box-shadow:0 0 0 4px rgba(255,89,97,.14);
  animation:v47LocationPulse 2.6s ease-in-out infinite;
}
.placement-location-chip-v47:nth-child(2n) i{background:#68b4ff;box-shadow:0 0 0 4px rgba(104,180,255,.14);animation-delay:.5s}
.placement-location-chip-v47:last-child i{background:#41d596;box-shadow:0 0 0 4px rgba(65,213,150,.14)}
@keyframes v47LocationPulse{50%{transform:scale(.72);opacity:.72}}

@media(max-width:720px){
  body[data-page="home"] main section h2.home-section-title-v47{
    max-width:100%;
    margin-bottom:13px!important;
    padding:2px 0 2px 14px!important;
    border-left-width:3px;
    font-size:clamp(19.5px,6.25vw,22px)!important;
    line-height:1.24!important;
    letter-spacing:-.024em!important;
  }
  body[data-page="home"] main section h2.home-section-title-v47::before{
    left:-3px!important;
    width:3px!important;
    height:10px!important;
  }
  body[data-page="home"] main section h2.home-section-title-v47::after{
    left:14px!important;
    bottom:-7px!important;
    width:48px!important;
  }
  body[data-page="home"] main section h2.home-section-title-v47.home-title-centered-v47{
    padding:15px 0 1px!important;
  }
  body[data-page="home"] main section h2.home-section-title-v47.home-title-centered-v47::before{
    width:35px!important;
    height:3px!important;
    transform:translateX(-23px)!important;
  }
  body[data-page="home"] main section h2.home-section-title-v47.home-title-centered-v47::after{
    width:8px!important;
    height:3px!important;
    transform:translateX(16px)!important;
  }
  body[data-page="home"] main .home-heading-wrap-v47 .eyebrow{
    margin-bottom:8px!important;
    padding:5px 8px!important;
    font-size:8px!important;
  }
  .placement-location-grid-v47{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .placement-location-chip-v47{padding:8px;font-size:9px}
}

@media(max-width:360px){
  body[data-page="home"] main section h2.home-section-title-v47{
    font-size:19.5px!important;
    line-height:1.26!important;
  }
  .placement-location-chip-v47{font-size:8.5px}
}

@media(prefers-reduced-motion:reduce){
  .placement-location-chip-v47 i{animation:none!important}
}

/* =====================================================================
   SOURCE: assets/final-v48.css
   ===================================================================== */

/* BFS V48: compact footer, social block restore, icon links */
@media (min-width: 821px){
  footer .footer-premium-body{
    grid-template-columns:minmax(245px,.88fr) minmax(0,2.75fr)!important;
    align-items:start!important;
    gap:18px!important;
    padding:18px 0 14px!important;
  }
  footer .footer-brand-card{
    align-self:start!important;
    height:auto!important;
    min-height:0!important;
    padding:17px!important;
  }
  footer .footer-links-grid.final-footer-links{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    align-items:start!important;
    gap:12px 18px!important;
  }
  footer .footer-col h4{
    margin:0 0 5px!important;
    padding-bottom:7px!important;
    font-size:12px!important;
  }
  footer .footer-col a{
    display:flex!important;
    align-items:flex-start!important;
    gap:7px!important;
    margin:0!important;
    padding:3px 0!important;
    font-size:10.5px!important;
    line-height:1.3!important;
  }
  footer .footer-col a svg{
    width:13px!important;
    height:13px!important;
    flex:0 0 13px!important;
    margin-top:1px!important;
    color:#91c7ff!important;
  }
  footer .footer-col a span{min-width:0}
  footer .footer-opening-hours{margin-top:12px!important;padding:12px 14px!important}
  footer .footer-trust-row{margin-top:10px!important;gap:9px!important}
  footer .footer-trust-item{padding:10px 12px!important}
  footer .footer-topline{padding-block:18px!important}
  footer .footer-bottom{min-height:48px!important;padding-block:9px!important}
}
footer .footer-social-block{
  margin-top:13px!important;
  padding-top:12px!important;
}
footer .footer-social-block strong{
  margin-bottom:8px!important;
  font-size:10.5px!important;
}
footer .social-links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin-top:0!important;
}
footer .social-link{
  width:34px!important;
  height:34px!important;
  border-radius:7px!important;
}
footer .social-link:hover{
  background:#d6322f!important;
  border-color:#d6322f!important;
  transform:translateY(-2px)!important;
}
@media (max-width:820px){
  footer .footer-brand-card{height:auto!important;min-height:0!important}
  footer .footer-premium-body{padding-block:18px!important}
}

/* =====================================================================
   SOURCE: assets/final-v50.css
   ===================================================================== */

/* BFS V50: structural footer repair + Learning Snapshot refinement */

/* Desktop/tablet footer: left brand card + independent right menu panel */
@media (min-width: 701px){
  footer .footer-premium-body{
    display:grid!important;
    grid-template-columns:minmax(290px,.82fr) minmax(0,2.18fr)!important;
    align-items:start!important;
    gap:24px!important;
    padding:24px 0 20px!important;
  }
  footer .footer-brand-card{
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    align-self:start!important;
    padding:18px!important;
  }
  footer .footer-right-panel-v50{
    min-width:0;
    display:grid;
    gap:13px;
    align-content:start;
  }
  footer .footer-links-grid.final-footer-links{
    width:100%;
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    align-items:start;
    gap:18px!important;
  }
  footer .footer-col{
    min-width:0;
  }
  footer .footer-col h4{
    margin:0 0 8px!important;
    padding-bottom:7px!important;
    font-size:12px!important;
    line-height:1.25!important;
  }
  footer .footer-col a{
    display:flex!important;
    align-items:flex-start!important;
    gap:7px!important;
    margin:0!important;
    padding:4px 0!important;
    font-size:10.3px!important;
    line-height:1.35!important;
  }
  footer .footer-col a svg{
    width:13px!important;
    height:13px!important;
    min-width:13px!important;
    margin-top:1px;
  }
  footer .footer-opening-hours{
    margin-top:0!important;
    min-height:0!important;
    padding:12px 14px!important;
    gap:12px!important;
  }
  footer .footer-opening-hours strong{font-size:13px!important}
  footer .footer-opening-hours span{font-size:10.5px!important;line-height:1.45!important}
  footer .footer-trust-row{
    margin-top:0!important;
    gap:10px!important;
  }
  footer .footer-trust-item{
    min-height:42px!important;
    padding:9px 11px!important;
    font-size:9.5px!important;
  }
  footer .footer-social-block{
    margin-top:14px!important;
    padding-top:13px!important;
    border-top:1px solid rgba(255,255,255,.10);
  }
  footer .footer-social-block>strong{
    display:block;
    margin-bottom:9px;
    font-size:10px;
    letter-spacing:.08em;
    text-transform:uppercase;
  }
  footer .social-links{gap:8px!important}
  footer .social-link{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    display:grid!important;
    place-items:center!important;
    margin:0!important;
    padding:0!important;
  }
  footer .social-link svg{width:15px!important;height:15px!important;margin:0!important}
}
@media (min-width:701px) and (max-width:1280px){
  footer .footer-premium-body{
    grid-template-columns:minmax(270px,.9fr) minmax(0,2.1fr)!important;
  }
  footer .footer-links-grid.final-footer-links{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px 22px!important;
  }
}
@media (max-width:700px){
  footer .footer-right-panel-v50{display:block}
  footer .footer-right-panel-v50 .footer-links-grid{display:none!important}
}

/* Homepage: BFS Learning Snapshot left story card */
body[data-page="home"] .bfs-progress-shell-v43{
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;
  gap:22px!important;
  align-items:stretch!important;
}
body[data-page="home"] .bfs-progress-story-v43{
  position:relative;
  min-height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  overflow:hidden;
  padding:34px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:7px!important;
  background:#0c3264!important;
  box-shadow:0 26px 60px -38px rgba(4,24,52,.72)!important;
}
body[data-page="home"] .bfs-progress-story-v43::before{
  content:"";
  position:absolute;
  width:190px;
  height:190px;
  right:-90px;
  top:-90px;
  border-radius:50%;
  border:34px solid rgba(255,255,255,.035);
  pointer-events:none;
}
body[data-page="home"] .bfs-progress-story-v43::after{display:none!important}
body[data-page="home"] .bfs-progress-eyebrow-v43{
  position:relative;
  z-index:1;
  width:max-content;
  max-width:100%;
  padding:7px 10px!important;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#dceaff!important;
  font-size:9.5px!important;
  letter-spacing:.13em!important;
}
body[data-page="home"] .bfs-progress-story-v43 h2.home-section-title-v47{
  position:relative;
  z-index:1;
  max-width:560px!important;
  margin:17px 0 12px!important;
  color:#fff!important;
  font-size:clamp(25px,2.15vw,32px)!important;
  line-height:1.17!important;
  letter-spacing:-.035em!important;
  text-wrap:balance;
}
body[data-page="home"] .bfs-progress-story-v43>p{
  position:relative;
  z-index:1;
  max-width:540px!important;
  color:#cbdcf0!important;
  font-size:12.5px!important;
  line-height:1.72!important;
}
body[data-page="home"] .bfs-progress-path-v43{
  position:relative;
  z-index:1;
  margin-top:22px!important;
  padding:14px 0!important;
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
}
body[data-page="home"] .bfs-progress-story-v43>small{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  z-index:1;
  display:block;
  margin-top:15px!important;
  color:#9db5cf!important;
  font-size:9.5px!important;
  line-height:1.55!important;
}
@media (max-width:900px){
  body[data-page="home"] .bfs-progress-shell-v43{grid-template-columns:1fr!important}
  body[data-page="home"] .bfs-progress-story-v43{min-height:0!important;padding:27px!important}
}
@media (max-width:560px){
  body[data-page="home"] .bfs-progress-v43{padding-block:44px!important}
  body[data-page="home"] .bfs-progress-story-v43{
    padding:22px 19px!important;
    justify-content:flex-start!important;
  }
  body[data-page="home"] .bfs-progress-story-v43 h2.home-section-title-v47{
    margin:14px 0 10px!important;
    font-size:21px!important;
    line-height:1.22!important;
  }
  body[data-page="home"] .bfs-progress-story-v43>p{font-size:11.5px!important;line-height:1.65!important}
  body[data-page="home"] .bfs-progress-path-v43{
    gap:7px!important;
    margin-top:17px!important;
    padding:12px 0!important;
  }
  body[data-page="home"] .bfs-progress-path-v43 span{font-size:9.5px!important}
  body[data-page="home"] .bfs-progress-path-v43 i{width:14px!important}
  body[data-page="home"] .bfs-progress-story-v43>small{font-size:8.8px!important;margin-top:12px!important}
}
