/* ===== Theme Colors ===== */
:root {
  --brand-dark: #003049;
  --brand-darker: #002233;
  --accent: #f77f00;
  --accent-2: #fcbf49;
  --danger: #d62828;
  --muted: #eae2b7;
  --white: #fff;
}

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

.ct-chatbot {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 1040;
  display: flex;
  justify-content: flex-end;
  font-family: inherit;
  max-width: calc(100vw - 28px);
}

.ct-chatbot-toggle {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 54px;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  color: #ffffff;
  background: linear-gradient(135deg, #003049, #0f6f8e);
  box-shadow: 0 16px 34px rgba(0, 48, 73, 0.26);
  font-weight: 900;
}

.ct-chatbot-toggle i {
  color: #fcbf49;
  font-size: 20px;
}

.ct-chatbot-panel {
  position: absolute;
  right: 0;
  bottom: 74px;
  display: flex;
  flex-direction: column;
  width: min(410px, calc(100vw - 32px));
  max-height: min(680px, calc(100dvh - 126px));
  overflow: hidden;
  border: 1px solid rgba(0, 48, 73, 0.14);
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.24);
  opacity: 0;
  transform: translateY(12px) scale(0.98);
  pointer-events: none;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.ct-chatbot.is-open .ct-chatbot-panel {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}

.ct-chatbot-panel header {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 18px;
  color: #ffffff;
  background: linear-gradient(135deg, #002233, #003f53);
}

.ct-chatbot-panel header span {
  display: block;
  color: #fcbf49;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.ct-chatbot-panel header strong {
  display: block;
  margin-top: 3px;
  font-size: 20px;
  line-height: 1.15;
}

.ct-chatbot-panel header button {
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.12);
}

.ct-chatbot-body {
  min-height: 0;
  overflow-y: auto;
  padding: 16px;
  background: #f6fafc;
}

.ct-bot-message {
  padding: 13px 14px;
  border-radius: 8px;
  color: #183141;
  background: #ffffff;
  border: 1px solid #dce8ef;
  line-height: 1.5;
  font-weight: 700;
}

.ct-chatbot-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 12px 0;
}

.ct-chatbot-options button {
  min-height: 42px;
  padding: 8px 9px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  color: #003049;
  background: #ffffff;
  font-weight: 850;
  line-height: 1.2;
}

.ct-chatbot-options button.active {
  border-color: #fcbf49;
  background: #fff4df;
}

.ct-chatbot-form {
  display: grid;
  gap: 9px;
}

.ct-chatbot-form input,
.ct-chatbot-form select,
.ct-chatbot-form textarea {
  width: 100%;
  border: 1px solid #d7e3eb;
  border-radius: 8px;
  padding: 11px 12px;
  font-size: 15px;
  color: #10212b;
  background: #ffffff;
}

.ct-chatbot-form input:focus,
.ct-chatbot-form select:focus,
.ct-chatbot-form textarea:focus {
  border-color: #f77f00;
  outline: 3px solid rgba(247, 127, 0, 0.14);
}

.ct-chatbot-form button {
  min-height: 46px;
  border: 0;
  border-radius: 8px;
  color: #ffffff;
  background: linear-gradient(90deg, #f77f00, #d62828);
  font-weight: 900;
}

.ct-chatbot-status {
  margin: 10px 0 0;
  color: #135c34;
  font-size: 14px;
  font-weight: 800;
}

.note-detail-page {
  background: #f4f8fb;
}

.ct-captcha-field,
.ct-chatbot-captcha {
  display: grid;
  gap: 8px;
  margin: 10px 0 14px;
  padding: 12px;
  border: 1px solid #d7e5ec;
  border-radius: 10px;
  background: #f8fbfd;
}

.ct-captcha-field span,
.ct-chatbot-captcha span {
  color: #4b6170;
  font-size: 13px;
  font-weight: 800;
}

.ct-captcha-field strong,
.ct-chatbot-captcha strong {
  color: #003049;
}

.ct-captcha-field input,
.ct-chatbot-captcha input {
  width: 100%;
  border: 1px solid #cbd9e1;
  border-radius: 8px;
  padding: 10px 12px;
  color: #102433;
  background: #ffffff;
}

.ct-captcha-field input:focus,
.ct-chatbot-captcha input:focus {
  border-color: #f77f00;
  box-shadow: 0 0 0 3px rgba(247, 127, 0, 0.14);
  outline: 0;
}

.ct-flash-messages {
  position: fixed;
  top: 96px;
  right: 18px;
  z-index: 2050;
  display: grid;
  gap: 10px;
  width: min(380px, calc(100vw - 28px));
}

.ct-flash-message {
  border: 1px solid #d7e5ec;
  border-left: 5px solid #f77f00;
  border-radius: 10px;
  background: #ffffff;
  color: #102433;
  padding: 12px 14px;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.15);
  font-weight: 700;
}

.ct-flash-message.error,
.ct-flash-message.danger {
  border-left-color: #d62828;
}

.ct-flash-message.success {
  border-left-color: #16a34a;
}

@media (max-width: 575px) {
  .ct-flash-messages {
    top: 78px;
    right: 10px;
    left: 10px;
    width: auto;
  }
}

.note-detail-hero {
  padding: 52px 0 48px;
  color: #ffffff;
  background:
    linear-gradient(120deg, rgba(0, 38, 55, 0.97), rgba(0, 72, 93, 0.9)),
    url("../images/banner2.79c559b13a8a.jpg") center/cover no-repeat;
}

.note-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 28px;
  align-items: center;
}

.note-hero-grid h1 {
  max-width: 980px;
  margin: 10px 0 14px;
  font-size: clamp(36px, 5vw, 66px);
  line-height: 1.04;
  letter-spacing: 0;
}

.note-hero-grid p,
.note-hero-grid aside p {
  color: rgba(255, 255, 255, 0.82);
  font-size: 18px;
  line-height: 1.65;
}

.note-hero-grid aside {
  padding: 24px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(12px);
}

.note-hero-grid aside span,
.note-side-panel span,
.note-media-card span {
  display: block;
  color: #f77f00;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.note-hero-grid aside strong {
  display: block;
  margin: 8px 0;
  color: #ffffff;
  font-size: 25px;
  line-height: 1.2;
}

.note-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 20px;
}

.note-chip-row b {
  padding: 8px 12px;
  border-radius: 999px;
  color: #003049;
  background: #fff4df;
  font-size: 13px;
}

.note-detail-shell,
.note-media-section,
.note-related-section {
  padding: 42px 0;
}

.note-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 24px;
  align-items: start;
}

.note-paper-card {
  min-height: 620px;
  padding: clamp(22px, 4vw, 46px);
  border: 1px solid #dbe6ee;
  border-radius: 8px;
  background:
    repeating-linear-gradient(#fff 0 34px, #edf4fa 35px 36px),
    linear-gradient(90deg, transparent 0 58px, rgba(247, 127, 0, 0.18) 59px 60px, transparent 61px);
  box-shadow: 0 22px 58px rgba(0, 48, 73, 0.09);
}

.note-handwritten-copy {
  padding-left: 26px;
  color: #173246;
  font-family: "Trebuchet MS", "Segoe UI", sans-serif;
  font-size: 18px;
  line-height: 1.9;
}

.note-handwritten-copy h1,
.note-handwritten-copy h2,
.note-handwritten-copy h3 {
  color: #003049;
  letter-spacing: 0;
}

.note-handwritten-copy img {
  display: block;
  max-width: 100%;
  margin: 18px auto;
  border: 1px solid #d9e6ef;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(0, 48, 73, 0.08);
}

.note-file-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
  padding-top: 22px;
  border-top: 1px dashed #c7d8e3;
}

.note-side-panel {
  position: sticky;
  top: 108px;
}

.note-side-panel section,
.note-locked-card {
  padding: 22px;
  border: 1px solid #dbe6ee;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 44px rgba(0, 48, 73, 0.07);
}

.note-side-panel h2,
.note-locked-card h2 {
  margin: 8px 0 14px;
  color: #002f45;
  font-size: 24px;
}

.note-side-panel ul {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.note-side-panel li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid #edf3f7;
}

.note-side-panel b {
  color: #42596a;
}

.note-side-panel em {
  color: #002f45;
  font-style: normal;
  font-weight: 850;
  text-align: right;
}

.note-media-section {
  background: #ffffff;
}

.note-media-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.note-media-card {
  overflow: hidden;
  border: 1px solid #dbe6ee;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 16px 38px rgba(0, 48, 73, 0.07);
}

.note-media-card img,
.note-media-card video,
.note-media-file {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  background: #eef5f8;
}

.note-media-file {
  display: grid;
  place-items: center;
  color: #003049;
  font-size: 54px;
}

.note-media-card div {
  padding: 16px;
}

.note-media-card h3 {
  margin: 6px 0;
  color: #002f45;
  font-size: 19px;
}

.note-media-card p {
  color: #667481;
  line-height: 1.55;
}

.note-media-card a {
  color: #003049;
  font-weight: 900;
}

@media (max-width: 991px) {
  .note-hero-grid,
  .note-detail-layout,
  .note-media-grid {
    grid-template-columns: 1fr;
  }

  .note-side-panel {
    position: static;
  }
}

@media (max-width: 575px) {
  .note-detail-hero,
  .note-detail-shell,
  .note-media-section,
  .note-related-section {
    padding: 30px 0;
  }

  .note-paper-card {
    padding: 20px 16px;
    background:
      repeating-linear-gradient(#fff 0 32px, #edf4fa 33px 34px);
  }

  .note-handwritten-copy {
    padding-left: 0;
    font-size: 16px;
  }
}

@media (max-width: 575px) {
  .ct-chatbot {
    right: 12px;
    bottom: 12px;
    left: 12px;
    max-width: none;
  }

  .ct-chatbot-panel {
    position: fixed;
    right: 12px;
    left: 12px;
    bottom: 76px;
    width: auto;
    max-height: min(620px, calc(100dvh - 92px));
    border-radius: 14px;
  }

  .ct-chatbot-toggle span {
    display: inline;
  }

  .ct-chatbot-toggle {
    margin-left: auto;
    width: auto;
    min-width: 118px;
    justify-content: center;
    padding: 0 16px;
  }

  .ct-chatbot-panel header {
    padding: 14px 15px;
  }

  .ct-chatbot-panel header strong {
    font-size: 18px;
  }

  .ct-chatbot-body {
    padding: 14px;
  }

  .ct-chatbot-options {
    grid-template-columns: 1fr 1fr;
    gap: 7px;
  }

  .ct-chatbot-options button {
    min-height: 40px;
    font-size: 13px;
  }

  .ct-bot-message {
    font-size: 14px;
  }
}

.thank-you-page,
.error-page {
  min-height: 72vh;
  padding: 72px 0;
  background:
    linear-gradient(135deg, rgba(0, 48, 73, 0.96), rgba(0, 76, 98, 0.92)),
    url("../images/banner1.5efc3e83a904.jpg") center/cover no-repeat;
}

.thank-you-card,
.error-hero,
.error-suggestions {
  width: min(920px, 100%);
  padding: clamp(24px, 4vw, 46px);
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.22);
}

.thank-you-card span,
.error-hero span {
  color: #f77f00;
  font-size: 13px;
  font-weight: 950;
  text-transform: uppercase;
}

.thank-you-card h1,
.error-hero h1 {
  margin: 10px 0 12px;
  color: #002f45;
  font-size: clamp(34px, 5vw, 64px);
  line-height: 1.05;
  letter-spacing: 0;
}

.thank-you-card p,
.error-hero p {
  max-width: 760px;
  color: #5d6f7d;
  font-size: 18px;
  line-height: 1.65;
}

.thank-you-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.error-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  max-width: 720px;
  margin: 24px 0;
}

.error-search input,
.error-search button {
  min-height: 52px;
  border-radius: 8px;
}

.error-search input {
  border: 1px solid #d6e3eb;
  padding: 0 16px;
}

.error-search button {
  border: 0;
  padding: 0 24px;
  background: #f77f00;
  color: #ffffff;
  font-weight: 850;
}

.error-suggestions {
  margin-top: 24px;
}

.error-suggestions h2 {
  color: #002f45;
  font-size: 26px;
  margin-bottom: 16px;
}

.error-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.error-grid a {
  display: block;
  padding: 16px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  color: #002f45;
  background: #f8fbfd;
  text-decoration: none;
}

.error-grid b,
.error-grid small {
  display: block;
}

.error-grid small {
  margin-top: 6px;
  color: #64748b;
}

@media (max-width: 767px) {
  .thank-you-page,
  .error-page {
    padding: 38px 0;
  }

  .error-search,
  .error-grid {
    grid-template-columns: 1fr;
  }

  .thank-you-actions a,
  .error-search button {
    width: 100%;
  }
}

/* ===== Navbar ===== */
/* ==================== NAVBAR ==================== */
.navbar {
  background-color: #003049;
  transition: all 0.4s ease-in-out;
  z-index: 1030; /* Above page content but below offcanvas */
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.navbar.shrink {
  background-color: #002233;
  padding: 0.4rem 1rem !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}
.navbar-brand {
  font-weight: 700;
  color: #fcbf49 !important;
  white-space: nowrap;
  letter-spacing: 0;
}
.nav-link {
  color: #eae2b7 !important;
  font-weight: 500;
  transition: 0.3s;
  white-space: nowrap;
}
.nav-link:hover {
  color: #f77f00 !important;
}

/* ==================== DROPDOWN SCROLL ==================== */
.scrollable-dropdown {
  max-height: 350px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}
.scrollable-dropdown::-webkit-scrollbar {
  width: 6px;
}
.scrollable-dropdown::-webkit-scrollbar-thumb {
  background-color: rgba(0,0,0,0.2);
  border-radius: 3px;
}
.scrollable-dropdown::-webkit-scrollbar-track {
  background: transparent;
}

/* ==================== ENQUIRE BUTTON ==================== */
.btn-enquire {
  background: #d62828;
  color: #fff;
  border-radius: 50px;
  font-weight: 600;
  transition: all 0.3s ease;
}
.btn-enquire:hover {
  background: #f77f00;
  transform: scale(1.05);
}

.site-header {
  min-height: 86px;
}

.header-container {
  gap: 16px;
}

.header-nav {
  align-items: center;
  gap: 4px;
}

.header-nav .nav-link {
  padding: 10px 6px !important;
  font-size: 0.88rem;
}

.header-actions {
  display: flex;
  align-items: center;
  gap: 7px;
  flex: 0 0 auto;
  white-space: nowrap;
}

.header-social,
.social-links {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.header-social a,
.header-contact,
.header-mail {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-decoration: none;
}

.header-social a,
.header-mail {
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  font-size: 0.9rem;
}

.header-contact {
  gap: 8px;
  min-height: 38px;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  font-weight: 700;
  font-size: 0.88rem;
}

.header-enquire {
  min-width: 108px;
  padding: 10px 16px;
  line-height: 1.15;
}

/* ==================== NAVBAR SOCIAL ICONS ==================== */
.navbar .text-white:hover,
.navbar .text-white i:hover {
  color: #f77f00 !important;
  transform: scale(1.2);
  transition: all 0.3s ease;
}

/* ==================== MOBILE OFFCANVAS ==================== */
.offcanvas {
  width: 280px;
  background: #002233;
  position: fixed;
  top: 0;
  bottom: 0;
  height: 100%;
  z-index: 1050; /* Above navbar & footer */
}
.offcanvas-title {
  font-weight: 600;
  color: #fcbf49;
}

/* ==================== MOBILE ACCORDION ==================== */
.offcanvas-body .nav-link,
.offcanvas-body .accordion-button {
  font-size: 1rem;          /* uniform font size */
  font-weight: 500;
  color: #eae2b7;
  padding: 12px;
  background: transparent;
  border: none;
  transition: 0.3s;
}
.offcanvas-body .accordion-button:not(.collapsed) {
  color: #fff;
  background-color: #f77f00;
}
.accordion-item {
  background: transparent;
  border: none;
}
.accordion-body .dropdown-item {
  padding: 10px 15px;
  color: #ddd;
  transition: 0.3s;
}
.accordion-body .dropdown-item:hover {
  background: #f77f00;
  color: #fff;
  border-radius: 4px;
}

/* ==================== OFFCANVAS SOCIAL ICONS ==================== */
.social-icons a {
  color: #fff;
  font-size: 1.3rem;
  margin-right: 10px;
  transition: 0.3s;
}
.social-icons a:hover {
  color: #f77f00;
  transform: scale(1.2);
}

/* ==================== RESPONSIVE FIX ==================== */
@media (max-width: 1199px) {
  .navbar-collapse {
    display: none !important; /* hide desktop collapse on mobile */
  }
}

/* ==================== FOOTER ==================== */
footer {
  background: #002233;
  color: #fff;
  padding: 20px 0;
  position: relative;
  z-index: 1; /* stays below navbar/offcanvas */
}




/* Modal Animations */
.modal.fade .modal-dialog { transform: translateY(-50px); opacity:0; transition: all 0.4s ease-out; }
.modal.fade.show .modal-dialog { transform: translateY(0); opacity:1; }

/* ===== Premium Enquiry Modal ===== */
.enquiry-dialog {
  max-width: 860px;
  width: min(860px, calc(100vw - 28px));
}

.enquiry-modal {
  display: grid;
  grid-template-columns: minmax(260px, 0.9fr) minmax(320px, 1.1fr);
  overflow: hidden;
  border: 0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.28);
}

.enquiry-panel {
  position: relative;
  padding: 34px 30px;
  color: #fff !important;
  background:
    linear-gradient(145deg, rgba(0, 48, 73, 0.96), rgba(12, 86, 112, 0.94)),
    url("/static/images/about-banner.e7a7c45568b3.png") center/cover no-repeat;
}

.enquiry-panel > * {
  position: relative;
  z-index: 1;
}

.enquiry-panel::after {
  content: "";
  position: absolute;
  inset: auto 24px 24px auto;
  width: 96px;
  height: 96px;
  border: 1px solid rgba(252, 191, 73, 0.45);
  border-radius: 50%;
}

.enquiry-badge {
  display: inline-flex;
  align-items: center;
  padding: 7px 12px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
}

.enquiry-panel h5 {
  margin: 24px 0 12px;
  font-size: clamp(1.7rem, 3vw, 2.35rem);
  line-height: 1.12;
  font-weight: 800;
}

.enquiry-panel p {
  margin: 0;
  color: rgba(255, 255, 255, 0.84);
  line-height: 1.6;
}

.enquiry-benefits {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 12px;
  margin: 26px 0 0;
  padding: 0;
  list-style: none;
}

.enquiry-benefits li {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  font-weight: 600;
}

.enquiry-benefits i {
  color: #fcbf49;
}

.enquiry-form-wrap {
  position: relative;
  padding: 34px;
  background: #fff;
  max-height: min(82vh, 720px);
  overflow-y: auto;
}

.enquiry-close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: #f2f5f8;
  opacity: 1;
}

.enquiry-form-heading span {
  color: #f77f00;
  font-size: 0.82rem;
  font-weight: 800;
  text-transform: uppercase;
}

.enquiry-form-heading h6 {
  margin: 4px 42px 22px 0;
  color: #003049;
  font-size: 1.45rem;
  font-weight: 800;
}

.enquiry-field {
  margin-bottom: 14px;
}

.enquiry-field label {
  display: block;
  margin-bottom: 7px;
  color: #263238;
  font-size: 0.9rem;
  font-weight: 700;
}

.enquiry-field .form-control,
.enquiry-field .form-select {
  min-height: 48px;
  border: 1px solid #d9e2ea;
  border-radius: 12px;
  background-color: #f8fafc;
  color: #10212b;
  box-shadow: none;
}

.enquiry-field .form-control:focus,
.enquiry-field .form-select:focus {
  border-color: #f77f00;
  background-color: #fff;
  box-shadow: 0 0 0 4px rgba(247, 127, 0, 0.14);
}

.enquiry-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 50px;
  margin-top: 4px;
  border: 0;
  border-radius: 12px;
  background: linear-gradient(90deg, #f77f00, #d62828);
  color: #fff;
  font-weight: 800;
  box-shadow: 0 12px 24px rgba(214, 40, 40, 0.22);
}

.enquiry-submit:hover {
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 16px 28px rgba(214, 40, 40, 0.26);
}

.enquiry-note {
  display: block;
  margin-top: 14px;
  color: #667481;
  text-align: center;
  font-size: 0.86rem;
}

@media (max-width: 767px) {
  .enquiry-dialog {
    margin: 12px;
  }

  .enquiry-modal {
    grid-template-columns: 1fr;
    border-radius: 16px;
  }

  .enquiry-panel {
    padding: 24px 22px;
  }

  .enquiry-panel h5 {
    margin-top: 16px;
  }

  .enquiry-benefits {
    gap: 8px;
    margin-top: 18px;
  }

  .enquiry-form-wrap {
    padding: 26px 20px 22px;
  }
}
/* ===== Hero Section ===== */
/* ===== Hero Section ===== */
.hero {
  background: url("/static/images/home.eca099c57a1a.jpeg") center/cover no-repeat;
  height: 122vh; /* 100% screen height */
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff; /* default white text */
  overflow: hidden;
}

/* Dark overlay for readability */
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1;
}

/* Hero content */
.hero .content {
  position: relative;
  z-index: 2;
  max-width: 900px;
  padding: 0 20px;
  text-align: center;
  margin-left: auto; margin-right: auto; margin-top: 100px;
  color: #fff;
}

/* Heading */
.hero .content h1 {
  font-size: 3rem;
  font-weight: 700;
  color: #fff;
  text-shadow: 0 4px 10px rgba(0, 0, 0, 0.7);
  margin-bottom: 15px;
}

/* Sub-heading / paragraph */
.hero .content p {
  font-size: 1.2rem;
  line-height: 1.6;
  color: #fff;
  text-shadow: 0 3px 6px rgba(0, 0, 0, 0.6);
  margin-bottom: 25px;
}

/* ===== Search Bar ===== */
.input-group {
  border-radius: 50px;
  overflow: hidden;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
}
.input-group input {
  border: none;
  border-radius: 50px 0 0 50px;
  padding: 12px 18px;
  font-size: 1rem;
}
.input-group input:focus { outline: none; box-shadow: none; }
.input-group .btn {
  border-radius: 0 50px 50px 0;
  font-weight: 600;
  padding: 0 24px;
}

/* Suggestions Box */
#suggestionsBox {
  position: absolute; top: 100%; left: 0; width: 100%;
  z-index: 1000; background: #fff; border-radius: 0 0 12px 12px;
  box-shadow: 0 6px 20px rgba(0,0,0,0.15); margin-top: 2px;
}
#suggestionsBox .list-group-item {
  padding: 12px 15px; border: none; cursor: pointer;
  font-size: 1rem; color: #333;
}
#suggestionsBox .list-group-item:hover { background: var(--accent-2); color: var(--brand-dark); }

/* ===== Buttons ===== */
.btn-primary { background-color: var(--accent); border: none; color: #fff; }
.btn-primary:hover { background-color: var(--danger); }
.btn-warning { background-color: var(--accent-2); border: none; color: var(--brand-dark); font-weight: 600; }
.btn-warning:hover { background-color: var(--accent); color: var(--white); }

/* ===== Feature Cards ===== */
.feature-card { border: none; transition: 0.3s; background: #fff; }
.feature-card:hover { transform: translateY(-5px); box-shadow: 0 6px 20px rgba(0,0,0,0.1); }

/* ===== Popular Courses & Exams (pyramid style) ===== */
.section-block .fixed-card {
  flex: 0 0 auto;
  width: 240px;
}

.section-block .custom-card {
  border-radius: 12px;
  height: 320px;
  display: flex;
  flex-direction: column;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.section-block .custom-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 10px 22px rgba(0,0,0,0.2);
}

.section-block .card-img-top {
  height: 140px;
  object-fit: cover;
}

.section-block .btn-view {
  background: #f77f00;
  color: #fff;
  border-radius: 6px;
  border: none;
  font-weight: 500;
}

.section-block .btn-view:hover {
  background: #d96600;
}

/* ✅ Pyramid alignment fix */
.section-block .swiper-wrapper {
  justify-content: center;
}

/* ===== Universities Swiper ===== */
.univ-card {
  height: 100%;
  min-height: 390px;
  border: 1px solid rgba(230, 237, 243, 0.9);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.14);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.univ-card:hover {
  transform: translateY(-6px);
  border-color: rgba(252, 191, 73, 0.65);
  box-shadow: 0 20px 44px rgba(0,0,0,0.22);
}

.univ-card .card-body {
  display: flex;
  flex-direction: column;
  padding: 18px;
  text-align: left;
}

.univ-media {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #eef3f7;
}

.univ-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 52%, rgba(0, 48, 73, 0.34));
  pointer-events: none;
}

.univ-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.univ-label {
  width: fit-content;
  margin-bottom: 9px;
  padding: 4px 9px;
  border-radius: 999px;
  background: #fff4df;
  color: #d45f00;
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.univ-card .card-title {
  min-height: 2.6em;
  margin: 0 0 8px;
  color: #10212b;
  font-size: 1.05rem;
  font-weight: 800;
  line-height: 1.3;
}

.univ-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
  color: #667481;
  font-size: 0.82rem;
  font-weight: 650;
}

.univ-meta i {
  color: #f77f00;
}

.univ-card .card-text {
  min-height: 4.2em;
  margin-bottom: 16px;
  color: #667481;
  font-size: 0.92rem;
  line-height: 1.55;
}

.univ-actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(92px, 1fr));
  gap: 10px;
  margin-top: auto;
}

.univ-actions .btn {
  width: 100%;
  min-height: 38px;
  min-width: 0;
  border: 0;
  border-radius: 10px;
  font-weight: 750;
  white-space: normal;
  line-height: 1.15;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 10px;
  text-align: center;
}

/* ✅ Swiper Fix */
#college-swiper .swiper-wrapper {
  padding-left: 15px;
  padding-right: 15px;
  
}

#college-swiper .swiper-slide {
  padding: 10px;
  box-sizing: border-box;
}

/* ===== Popular Universities Section ===== */
.popular-section {
  width: 100%;
  min-height: 420px;
  background: 
    linear-gradient(135deg, rgba(0,48,73,0.94), rgba(38,70,83,0.9)),
    url("/static/images/banner1.5efc3e83a904.jpg") center/cover no-repeat;
  padding: 70px 0;
  position: relative;
  color: #fff;
  overflow: hidden;
}

/* ✅ Overlay (better contrast) */
.popular-section .overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.35);
  z-index: 1;
}

/* ✅ Content stays above overlay */
.popular-section .container {
  position: relative;
  z-index: 2;
}

/* ===== Section Heading ===== */
.popular-univ-heading {
  max-width: 720px;
  margin: 0 auto 34px;
}

.popular-univ-heading span {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 7px 13px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.popular-section h2 {
  color: #fff;
  font-size: clamp(1.65rem, 4vw, 2.45rem);
  font-weight: 850;
  text-align: center;
  margin: 0 auto;
  position: relative;
  display: block;
  padding-bottom: 10px;
  width: fit-content;
}
.popular-section h2::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 90px;
  height: 4px;
  border-radius: 2px;
  background: linear-gradient(90deg, #fcbf49, #f77f00);
}

/* ✅ Responsive Tweaks */
@media (max-width: 768px) {
  .popular-section {
    padding: 50px 20px;
    min-height: auto;
  }
  .popular-section h2 {
    font-size: 1.6rem;
  }

  .univ-card {
    min-height: 370px;
  }

  .univ-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
/* Utility Class: Full Width Background Section */
.section-full {
  width: 100vw; /* full viewport width */
  margin-left: calc(-50vw + 50%); /* container ka restriction todne ke liye */
  position: relative;
}

.btn-view-more {
  background: linear-gradient(90deg, #f77f00, #fcbf49); /* orange-yellow gradient */
  color: #fff;
  font-weight: 600;
  padding: 12px 28px;
  border: none;
  border-radius: 50px; /* rounded pill look */
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
  transition: all 0.3s ease-in-out;
  display: inline-block;
  text-decoration: none;
}

.btn-view-more:hover {
  background: linear-gradient(90deg, #d62828, #f77f00); /* red-orange gradient */
  transform: translateY(-4px) scale(1.07); /* lift + zoom */
  box-shadow: 0 6px 16px rgba(0,0,0,0.3);
  color: #fff; /* text always white */
}

/* ===== Testimonials ===== */
.testimonials { background:#fff; padding:70px 20px; text-align:center; }
    .testimonials h2 { font-size:32px; color:#2563eb; margin-bottom:40px; }
    .testimonial-slider { position: relative; max-width: 700px; margin: auto; overflow: hidden; }
    .testimonial-container { display: flex; transition: transform 0.6s ease; }
    .testimonial { background:white; padding:30px; border-radius:12px; min-width:100%;
      box-shadow:0 6px 14px rgba(0,0,0,0.1); }
    .testimonial p { color:#444; margin:20px 0; font-style:italic; }
    .student-info { display:flex; align-items:center; gap:12px; margin-top:15px; justify-content:center; }
    .student-info img { width:55px; height:55px; border-radius:50%; object-fit:cover; border:3px solid #2563eb; }
    .student-info h4 { margin:0; font-size:16px; color:#111; }
    .student-info span { font-size:13px; color:#666; }

.slider-buttons .prev { left: 10px; }
.slider-buttons .next { right: 10px; }
.testimonial-slider {
  position: relative;
  overflow: hidden;
}

.testimonial-container {
  display: flex;
  transition: transform 0.5s ease-in-out;
}

.testimonial {
  box-sizing: border-box;
  padding: 20px;
  flex: 0 0 100%; /* default 1 item */
}

/* Show 2 items on tablets */
@media (min-width: 768px) {
  .testimonial {
    flex: 0 0 50%;
  }
}

/* Show 3 items on desktop */
@media (min-width: 1024px) {
  .testimonial {
    flex: 0 0 33.3333%;
  }
}

.student-info {
  display: flex;
  align-items: center;
  margin-top: 10px;
}

.student-info img {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  margin-right: 10px;
}

/* Navigation buttons */
.slider-buttons button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.3);
  color: white;
  border: none;
  padding: 10px;
  cursor: pointer;
  border-radius: 50%;
  font-size: 18px;
  z-index: 2;
}
.slider-buttons .prev { left: 10px; }
.slider-buttons .next { right: 10px; }

/* ===== Footer ===== */
.footer {
  background: var(--brand-darker);
  color: #fff;
  padding: 46px 0 26px;
  text-align: left;
}

.footer-grid {
  display: grid;
  grid-template-columns: 1fr 1.15fr 1.15fr 1.1fr 1fr;
  gap: 34px;
  align-items: start;
}

.footer-column {
  min-width: 0;
}

.footer-title {
  color: var(--accent-2);
  font-size: 1.15rem;
  font-weight: 800;
  margin-bottom: 16px;
  letter-spacing: 0;
}

.footer ul {
  display: grid;
  gap: 8px;
  margin: 0;
}

.footer li {
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.35;
}

.footer a {
  color: rgba(255, 255, 255, 0.86);
  text-decoration: none;
  font-size: 0.95rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.footer a:hover {
  color: var(--accent-2);
}

.footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-top: 34px;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,0.16);
  font-size: 0.92rem;
}

.footer-bottom p {
  margin: 0;
}

.social-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  font-size: 17px;
}

.social-links a:hover {
  background: rgba(252, 191, 73, 0.16);
  color: var(--accent-2);
}

@media (max-width: 1199px) {
  .site-header {
    min-height: 70px;
  }
}

@media (max-width: 991px) {
  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
  }
}

@media (max-width: 575px) {
  .footer {
    padding: 36px 0 22px;
  }

  .footer-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 991px) {
  .student-auth-shell,
  .dashboard-layout {
    grid-template-columns: 1fr;
  }

  .admission-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .student-stat-grid,
  .student-auth-benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard-card-grid {
    grid-template-columns: 1fr;
  }

  .student-dashboard-hero .container {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 767px) {
  .student-stat-grid,
  .student-auth-benefits,
  .admission-form-grid,
  .dashboard-college-grid,
  .practice-rank-strip {
    grid-template-columns: 1fr;
  }

  .dashboard-college-card {
    grid-template-columns: 88px minmax(0, 1fr);
  }

  .dashboard-college-card img,
  .dashboard-college-placeholder {
    width: 88px;
  }

  .dashboard-attempt-list article {
    grid-template-columns: 1fr;
  }

  .attempt-score-pill {
    text-align: left;
  }
}

@media (max-width: 575px) {
  .student-auth-shell {
    width: min(100% - 24px, 1120px);
    padding: 28px 0;
  }

  .student-auth-panel,
  .student-auth-form,
  .dashboard-block {
    padding: 18px;
  }

  .student-signup-grid {
    grid-template-columns: 1fr;
  }
}

/* Disable text select */
body { user-select: none; }

    /* Hero Section */
    .about-hero {
      background: linear-gradient(rgba(30,58,138,0.7), rgba(30,58,138,0.7)),
                  url("/static/images/about-banner.e7a7c45568b3.png") center/cover no-repeat;
      height: 300px; 
      display:flex; 
      align-items:center; 
      justify-content:center;
      color:white; 
      text-align:center; 
      padding:0 20px;
    }
    .about-hero h1 {
      font-size:42px; 
      font-weight:bold;
      text-shadow:0 4px 8px rgba(0,0,0,0.6);
    }

    /* About Section */
    .about-section { max-width:1100px; margin:60px auto; padding:0 20px; text-align:center; }
    .about-section h2 { font-size:32px; color:#1e3a8a; margin-bottom:20px; }
    .about-section p { font-size:18px; color:#444; line-height:1.8; }

    /* Why Choose Us */
    .why-choose { background:#f1f5f9; padding:70px 20px; text-align:center; }
    .why-choose h2 { font-size:32px; margin-bottom:40px; color:#2563eb; }
    .choose-container { display:flex; flex-wrap:wrap; gap:25px; justify-content:center; }
    .choose-card { background:white; padding:30px; border-radius:12px; width:300px; text-align:center;
      box-shadow:0 6px 14px rgba(0,0,0,0.1); transition: transform 0.3s ease; }
    .choose-card:hover { transform: translateY(-8px); }
    .choose-card i { font-size:40px; color:#2563eb; margin-bottom:15px; }
    .choose-card h3 { color:#1e40af; margin-bottom:12px; }

    /* Team */
    .team { padding:70px 20px; background:#fff; }
    .team h2 { text-align:center; font-size:32px; color:#2563eb; margin-bottom:40px; }
    .team-container { display:flex; flex-wrap:wrap; gap:25px; justify-content:center; }
    .team-member { background:#f9fafb; padding:25px; border-radius:12px; width:260px; text-align:center;
      box-shadow:0 6px 14px rgba(0,0,0,0.08); transition: transform 0.3s ease; }
    .team-member:hover { transform: scale(1.05); }
    .team-member img { width:110px; height:110px; border-radius:50%; object-fit:cover; margin-bottom:15px; border:4px solid #2563eb; }

   /* Testimonials Carousel */
.testimonials { 
    background: #fff; 
    padding: 70px 20px; 
    text-align: center; 
}
.testimonials h2 { 
    font-size: 32px; 
    color: #2563eb; 
    margin-bottom: 40px; 
}
.testimonial-slider { 
    position: relative; 
    max-width: 700px; 
    margin: auto; 
    overflow: hidden; 
}
.testimonial-container { 
    display: flex; 
    transition: transform 0.6s ease; 
} 
.testimonial {
  background: #baeee0; /* fallback solid color (light aqua pastel) */
  background: linear-gradient(135deg, #f9fafb, #eaf4ff); /* gradient */
  padding: 30px;
  border-radius: 12px;
  min-width: 100%;
  box-shadow: 0 6px 14px rgba(0,0,0,0.1);
  height: 250px;
}

.testimonial p { 
    color: #444; 
    margin: 20px 0; 
    font-style: italic; 
}
.student-info { 
    display: flex; 
    align-items: center; 
    gap: 12px; 
    margin-top: 15px; 
    justify-content: center; 
}
.student-info img { 
    width: 55px; 
    height: 55px; 
    border-radius: 50%; 
    object-fit: cover; 
    border: 3px solid #2563eb;}
/* ===== Global Fixes ===== */
html, body {
  max-width: 100%;
  overflow-x: hidden !important; /* unwanted spacing remove */
  margin: 0;
  padding: 0;
}

/* Disable text select if needed */
body { 
  user-select: none; 
}

/* ===== Blog Detail Styling ===== */
.blog-details { 
  max-width: 1140px; 
  margin: auto; 
}

.post-detail { 
  border-radius: 12px; 
  background: #fff; 
  overflow: hidden; 
}

.post-img { 
  width: 100%; 
  height: auto; 
  display: block; 
  object-fit: cover; 
  max-height: 700px; 
}

.post-body { 
  padding: 1.5rem; 
}

.post-title { 
  font-size: 2rem; 
  font-weight: 700; 
  color: #003049; 
  margin-bottom: 0.8rem; 
}

.meta-row { 
  font-size: 0.95rem; 
  display: flex; 
  flex-wrap: wrap; 
  gap: 12px; 
  align-items: center; 
}

.meta-row i { 
  color: #007bff; 
  margin-right: 5px; 
}

.excerpt { 
  font-size: 1.1rem; 
  font-style: italic; 
  margin-bottom: 1.5rem; 
}

.content { 
  font-size: 1rem; 
  line-height: 1.7; 
  color: #222; 
  text-align: justify; 
}

/* ===== Related FAQs ===== */
.related-faqs {
  padding: 60px 30px;
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
  margin-top: 50px;
}

/* Heading same as Related Colleges */
.related-faqs h3 {
  position: relative;
  font-weight: 700;
  color: #003049;
  margin-bottom: 25px;
  padding-left: 75px; /* same alignment */
  font-size: 24px;
}

.related-faqs h3::before {
  content: "";
  position: absolute;
  left: 65px;
  top: 0;
  height: 100%;
  width: 6px;
  background-color: #28a745; /* green stripe (FAQ) */
  border-radius: 3px;
}

/* FAQ Buttons */
.related-faqs .accordion-button {
  font-weight: 600;
  font-size: 16px;
  background: #f8f9fa;
  color: #003049;
  padding: 14px 18px;
  transition: all 0.3s ease;
}

.related-faqs .accordion-button:focus {
  box-shadow: none;
}

.related-faqs .accordion-button:not(.collapsed) {
  background: #003049;
  color: #fff;
}

/* Add icon animations */
.related-faqs .accordion-button::after {
  transition: transform 0.3s ease;
}
.related-faqs .accordion-button:not(.collapsed)::after {
  transform: rotate(180deg);
}

/* FAQ Body */
.related-faqs .accordion-body {
  font-size: 15px;
  line-height: 1.6;
  color: #444;
  background: #fff;
  padding: 16px 18px;
  animation: fadeIn 0.3s ease-in-out;
}

/* Smooth Fade Animation */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-5px); }
  to { opacity: 1; transform: translateY(0); }
}

/* ===== Related Colleges Section ===== */
.related-colleges {
  background: #f9fafb; /* halka grey bg */
  padding: 60px 20px;
  border-radius: 12px;
  margin-top: 40px;
}

.related-colleges h3 {
  font-weight: 700;
  color: #003049;
  text-align: center;
  margin-bottom: 40px;
  position: relative;
  display: centre;
}

.related-colleges h3::after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
  width: 90px;
  height: 4px;
  border-radius: 2px;
  background: linear-gradient(90deg, #fcbf49, #f77f00);
}

/* ===== College Cards ===== */
.college-card {
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  transition: all 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
  text-align: center;
}

.college-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.15);
}

.college-card img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  border-radius: 12px 12px 0 0;
}

.college-card .card-body {
  flex: 1;
  padding: 16px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.college-card .card-title {
  font-size: 18px;
  font-weight: 600;
  color: #222;
  margin-bottom: 6px;
}

.college-card .card-text {
  font-size: 14px;
  color: #666;
  margin-bottom: 12px;
}

/* ===== Buttons (Explore + Compare) ===== */
.college-card .btn {
  border: none;
  font-size: 14px;
  font-weight: 500;
  padding: 6px 14px;
  border-radius: 6px;
  transition: all 0.3s ease;
}

.college-card .btn-explore {
  background: #f77f00;
  color: #fff;
  margin-right: 6px;
}

.college-card .btn-explore:hover {
  background: #d96600;
}

.college-card .btn-compare {
  background: #fcbf49;
  color: #222;
}

.college-card .btn-compare:hover {
  background: #f77f00;
  color: #fff;
}

/* ===== Carousel Controls Overlay ===== */
#relatedCollegesCarousel .carousel-control-prev,
#relatedCollegesCarousel .carousel-control-next {
  width: 45px;
  height: 45px;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.6);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.9;
  transition: all 0.3s ease;
}

#relatedCollegesCarousel .carousel-control-prev { left: 15px; }
#relatedCollegesCarousel .carousel-control-next { right: 15px; }

#relatedCollegesCarousel .carousel-control-prev-icon,
#relatedCollegesCarousel .carousel-control-next-icon {
  background-size: 60% 60%;
  filter: invert(1);
}

#relatedCollegesCarousel .carousel-control-prev:hover,
#relatedCollegesCarousel .carousel-control-next:hover {
  background: #f77f00;
}
/* ---------- Hero / Banner (Blog) ---------- */
/* ---------- Hero / Banner (Blog) ---------- */
.heroblog {
  background: url("/static/") center/cover no-repeat;
  min-height: 220px; /* responsive height */
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  color: #fff;
  padding: 40px 15px;
  text-align: center; /* ✅ fix */
}

.heroblog::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.55); /* dark overlay */
  z-index: 1;
}

.heroblog .wrap {
  max-width: 900px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.heroblog h1 {
  font-size: 36px;
  font-weight: 700;
  margin-bottom: 10px;
  color: #fff;
  text-shadow: 0 4px 10px rgba(0,0,0,0.6);
}

.heroblog p.lead {
  font-size: 16px;
  color: rgba(255,255,255,0.95);
  margin: 0 auto;
  max-width: 720px;
}

/* ✅ Responsive fixes */
@media (max-width: 768px) {
  .heroblog {
    min-height: 180px;
    padding: 30px 10px;
  }
  .heroblog h1 {
    font-size: 26px;
  }
  .heroblog p.lead {
    font-size: 14px;
  }
}

/* ---------- Main layout ---------- */
.wrap-grid {
  max-width: 1200px;
  margin: 30px auto;
  padding: 0 20px;
  display: grid;
  grid-template-columns: 2.2fr 1fr;
  gap: 28px;
  align-items: start;
}

/* Blog list (cards) */
.post-list { display: grid; gap: 20px; }
.post-card {
  display: flex;
  gap: 18px;
  background: #fff;
  padding: 14px;
  border-radius: 10px;
  box-shadow: 0 6px 18px rgba(18,28,60,0.06);
  overflow: hidden;
  align-items: flex-start;
  transition: all 0.3s ease;
}
.post-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 20px rgba(18,28,60,0.1);
}
.post-card .thumb {
  flex: 0 0 220px;
  height: 130px;
  border-radius: 8px;
  overflow: hidden;
}
.post-card .thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.post-card .meta { flex: 1; }
.post-card .meta .cat {
  display: inline-block;
  background: #eef2ff;
  color: #1e3a8a;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  margin-bottom: 8px;
}
.post-card .meta h3 {
  font-size: 18px;
  margin-bottom: 8px;
  color: #0b2540;
  font-weight: 600;
}
.post-card .meta .excerpt {
  font-size: 14px;
  color: #515d6b;
  margin-bottom: 12px;
}
.post-card .meta .meta-row {
  font-size: 13px;
  color: #7b8792;
  margin-bottom: 12px;
  display: flex;
  gap: 12px;
  align-items: center;
}
.post-card .meta .readmore {
  display: inline-block;
  padding: 8px 14px;
  background: #1e3a8a;
  color: #fff;
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  transition: background 0.3s ease;
}
.post-card .meta .readmore:hover {
  background: #f77f00;
}

/* Sidebar */
.sidebar .card {
  background: #fff;
  padding: 16px;
  border-radius: 10px;
  box-shadow: 0 6px 18px rgba(18,28,60,0.06);
  margin-bottom: 18px;
}
.search-box input {
  width: 100%;
  padding: 12px;
  border-radius: 8px;
  border: 1px solid #e3e7ee;
  font-size: 14px;
}
.recent-list li {
  display: flex;
  gap: 12px;
  margin-bottom: 12px;
  align-items: center;
}
.recent-list img {
  width: 64px;
  height: 54px;
  object-fit: cover;
  border-radius: 6px;
}
.recent-list a {
  font-weight: 600;
  color: #0b2540;
  font-size: 14px;
}
.category-list a {
  display: block;
  padding: 8px 0;
  color: #1f2a37;
  font-size: 14px;
}
.newsletter input {
  width: 100%;
  padding: 12px;
  border-radius: 8px;
  border: 1px solid #e3e7ee;
  margin-bottom: 10px;
}
.newsletter button {
  width: 100%;
  padding: 12px;
  border-radius: 8px;
  background: #1e3a8a;
  color: #fff;
  border: 0;
  font-weight: 700;
}

/* Pagination */
.pagination {
  display: flex;
  gap: 10px;
  justify-content: center;
  margin-top: 18px;
}
.pagination a {
  display: inline-block;
  padding: 10px 14px;
  border-radius: 8px;
  border: 1px solid #e6e8ee;
  background: #fff;
  color: #24323f;
}
.pagination a.active {
  background: #1e3a8a;
  color: #fff;
  border-color: #1e3a8a;
}

/* ---------- Responsive ---------- */
@media(max-width:1024px){
  .heroblog h1 { font-size: 30px; }
  .wrap-grid { grid-template-columns: 1.9fr 1fr; gap: 20px; }
}
@media(max-width:820px){
  .wrap-grid { grid-template-columns: 1fr; gap: 18px; padding: 0 16px; }
  .post-card { flex-direction: column; }
  .post-card .thumb { width: 100%; height: 200px; flex: none; }
  .post-card .meta { padding-top: 8px; }
  .sidebar { order: 2; }
}
/* ===== Compare Section ===== */
    .compare-container { max-width:1200px; margin:30px auto; padding:20px; background:#fff; border-radius:10px; box-shadow:0 4px 12px rgba(0,0,0,0.1); }
    .selector { text-align:center; margin-bottom:20px; }
    select { padding:10px; border-radius:6px; border:1px solid #ddd; margin:0 10px; }
    button { padding:10px 20px; background:#1e3a8a; color:white; border:none; border-radius:6px; cursor:pointer; }
    button:hover { background:#162c6d; }
    .compare-table { width:100%; border-collapse:collapse; margin-top:20px; }
    .compare-table th, .compare-table td { border:1px solid #ddd; padding:15px; text-align:left; vertical-align:top; }
    .compare-table th { background:#a092f1; color:white; }
    .college-card { text-align:center; }
    .college-card img { width:180px; border-radius:8px; margin-bottom:10px; }
    .college-card h3 { margin:5px 0; color:#1e3a8a; }

    @media(max-width:768px){
      .compare-table { font-size:14px; }
      .college-card img { width:120px; }
      .hero { height: 200px; }
      .hero h1 { font-size: 26px; }
    }
    /* Compare Hero Section */
.compare-hero {
  background: url("/static/images/cmp.6e378169e7da.jpeg") center/cover no-repeat;
  height: 250px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  text-align: center;
  color: white;
  border-radius: 0 0 20px 20px; /* thoda rounded bottom */
  overflow: hidden;
}

/* Dark gradient overlay */
.compare-hero .overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6));
  z-index: 1;
}

/* Content */
.compare-hero .hero-content {
  position: relative;
  z-index: 2;
  max-width: 900px;
  padding: 0 20px;
}

.compare-hero h1 {
  font-size: 42px;
  font-weight: 700;
  margin-bottom: 15px;
  color: #fcbf49; /* accent color */
  text-shadow: 0 4px 12px rgba(0,0,0,0.7);
}

.compare-hero p {
  font-size: 18px;
  line-height: 1.6;
  color: #fff;
  opacity: 0.95;
}

    /* Hero */
    .contact-hero {
  background: url("/static/images/cont.6495e4b937c6.jpg") center/cover no-repeat;
  padding: 70px 0;
  text-align: center;
  color: #fff;
  box-shadow: inset 0 -40px 60px rgba(0,0,0,0.15);
}
.contact-hero h1 {
  font-size: 36px;
  margin-bottom: 10px;
}
.breadcrumb {
  font-size: 14px;
  opacity: 0.9;
}
    /* Contact Section */
    .contact-section{max-width:1200px;margin:40px auto;display:grid;grid-template-columns:2fr 1fr;gap:30px;padding:0 20px}
    .contact-form{background:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 10px rgba(0,0,0,0.05)}
    .contact-form h2{margin-bottom:20px;color:#1e3a8a}
    .form-group{margin-bottom:15px}
    .form-group label{display:block;margin-bottom:6px;font-weight:600}
    .form-group input,.form-group textarea{width:100%;padding:12px;border:1px solid #ccc;border-radius:8px;font-size:14px}
    .form-group textarea{resize:vertical;min-height:120px}
    .contact-form button{background:#1e3a8a;color:white;padding:12px 20px;border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600}
    .contact-form button:hover{background:#163273}

    .contact-info{background:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 10px rgba(0,0,0,0.05)}
    .contact-info h3{margin-bottom:15px;color:#1e3a8a}
    .contact-info p{margin-bottom:12px;font-size:14px}
    .contact-info i{color:#1e3a8a;margin-right:8px}
    .map{margin-top:15px;border-radius:8px;overflow:hidden}

    

    /* Responsive */
    @media(max-width:820px){
      .contact-section{grid-template-columns:1fr}
      .logo img{height:44px}
      nav ul{display:none;flex-direction:column;background:#111144;padding:20px;position:absolute;top:100%;left:0;width:100%}
      nav ul.show{display:flex}
      .menu-toggle{display:block}
    }
      /* -------- General Page Layout -------- */
.course-detail-page {
  font-family: "Poppins", sans-serif;
  line-height: 1.7;
  color: #333;
}

.course-detail-page h1,
.course-detail-page h2,
.course-detail-page h3 {
  font-weight: 700;
  color: #1a237e;
}

.course-detail-page p,
.course-detail-page li {
  font-size: 15px;
  color: #555;
}

/* -------- Section Box -------- */
.course-detail-page .section {
  background: #fff;
  border-radius: 12px;
  padding: 25px 30px;
  margin-bottom: 30px;
  box-shadow: 0px 3px 12px rgba(0,0,0,0.08);
  transition: all 0.3s ease;
}

.course-detail-page .section:hover {
  transform: translateY(-3px);
  box-shadow: 0px 5px 18px rgba(0,0,0,0.12);
}

/* -------- Headings -------- */
.course-detail-page .section h2 {
  font-size: 22px;
  border-left: 5px solid #3f51b5;
  padding-left: 12px;
  margin-bottom: 18px;
}

/* -------- Lists -------- */
.course-detail-page ul {
  list-style: none;
  padding-left: 0;
}

.course-detail-page ul li {
  background: #f5f7ff;
  margin-bottom: 10px;
  padding: 10px 14px;
  border-radius: 8px;
  font-size: 14px;
}

.course-detail-page ul li::before {
  content: "✔";
  color: #3f51b5;
  margin-right: 8px;
  font-weight: bold;
}

/* -------- FAQ Section -------- */
.course-detail-page .faq-item {
  background: #fafafa;
  border-left: 4px solid #ff9800;
  padding: 12px 16px;
  border-radius: 8px;
}

.course-detail-page .faq-item strong {
  color: #ff5722;
}

/* -------- Gallery / Images -------- */
.course-detail-page img {
  border-radius: 10px;
  box-shadow: 0 3px 10px rgba(0,0,0,0.1);
  transition: transform 0.3s ease;
}

.course-detail-page img:hover {
  transform: scale(1.05);
}

/* -------- Buttons (Optional) -------- */
.btn-custom {
  background: #3f51b5;
  color: #fff;
  border-radius: 50px;
  padding: 8px 20px;
  transition: 0.3s;
}

.btn-custom:hover {
  background: #2c387e;
  color: #fff;
}
    body { font-family: "Poppins", sans-serif; background: #f9fafc; }
    .hero-section {
      background: linear-gradient(120deg, #003049, #005f73);
      color: #fff;
      padding: 60px 0;
      border-radius: 0 0 40px 40px;
      text-align: center;
    }
    .hero-section h1 { font-weight: 800; font-size: 2.5rem; }
    .hero-section p { font-size: 1.1rem; margin-bottom: 20px; }
    .highlight-card {
      border-radius: 16px;
      background: #fff;
      box-shadow: 0 3px 15px rgba(0,0,0,0.08);
      text-align: center;
      padding: 20px;
      transition: 0.3s;
    }
    .highlight-card:hover { transform: translateY(-5px); }
    .highlight-card h4 { font-weight: 700; color: #003049; }
    .section { background: #fff; border-radius: 16px; padding: 30px; margin-bottom: 25px; box-shadow: 0 4px 12px rgba(0,0,0,0.05); }
    .section h2 { font-size: 22px; font-weight: 700; border-left: 5px solid #f77f00; padding-left: 12px; margin-bottom: 18px; }
    .accordion-button:not(.collapsed) { background: #003049; color: #fff; }
    .btn-cta {
      background: #d62828;
      color: #fff;
      border-radius: 50px;
      padding: 12px 30px;
      font-weight: 600;
      transition: 0.3s;
    }
    .btn-cta:hover { background: #f77f00; }
#relatedBlogsCarousel .card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
#relatedBlogsCarousel .card:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}
#relatedBlogsCarousel .card img {
  border-radius: 8px 8px 0 0;
}
#relatedBlogsCarousel .card h6 a {
  font-size: 15px;
  font-weight: 600;
  color: #003049;
  transition: color 0.3s;
}
#relatedBlogsCarousel .card h6 a:hover {
  color: #f77f00;
}
#relatedBlogsCarousel .custom-control {
  width: 35px;
  height: 35px;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.6);
  border-radius: 50%;
}
#relatedBlogsCarousel .custom-control span {
  filter: invert(1);
}
/* ✅ Hero Banner */
.privacyhero {
  background: linear-gradient(rgba(30,58,138,0.7), rgba(30,58,138,0.7)),
              url("/static/images/Privacypolicy.dc07a257bf58.jpg") center/cover no-repeat;
  height:260px;
  display:flex;
  justify-content:center;
  align-items:center;
  color:white;
  text-align:center;
  padding:0 20px;
}

.privacyhero h1 { font-size:36px; text-shadow:0 4px 8px rgba(0,0,0,0.6); }

/* ✅ Terms Section */
.terms {
  max-width:1000px; 
  margin:60px auto; 
  padding:30px;   /* ek hi padding rakho */
  background:#fff; 
  border-radius:10px;
  box-shadow:0 6px 14px rgba(0,0,0,0.08);
}
.terms h2 { font-size:24px; color:#1e3a8a; margin-top:20px; }
.terms p { font-size:16px; color:#444; line-height:1.7; margin:10px 0; }

/* ✅ Responsive */
@media(max-width:768px){
  .navbar ul { 
    display:none; 
    flex-direction:column; 
    background:#1e3a8a;
    position:absolute; 
    top:60px; 
    right:0; 
    width:200px; 
    padding:20px; 
  }
  .navbar ul.show { display:flex; }
  .menu-toggle { display:block; color:white; }
  .privacyhero h1 { font-size:26px; }  /* fixed */
  .footer-container { flex-direction:column; text-align:center; }
  .footer-left .footer-logo { margin:0 auto 15px; }
}
/* ✅ Hero Section */
    .tnchero {
  background: linear-gradient(rgba(30,58,138,0.6), rgba(30,58,138,0.6)), 
              url("/static/images/t&C.e0afefd3cc82.jpg") center/cover no-repeat;
  height: 250px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  text-align: center;
  padding: 0 20px;
}

    .tnchero h1 { font-size:36px; text-shadow:0 3px 6px rgba(0,0,0,0.6); }

    /* ✅ Content Section */
    .terms {
      max-width:1100px; margin:50px auto; padding:0 20px;
      background:white; border-radius:10px; box-shadow:0 6px 14px rgba(0,0,0,0.08);
    }
    .terms h2 {
      font-size:22px; color:#1e3a8a; margin-top:30px; margin-bottom:15px;
    }
    .terms p {
      font-size:16px; line-height:1.7; margin-bottom:15px; color:#444;
    }


    /* ✅ Responsive */
    @media(max-width:768px){
      .navbar ul { display:none; flex-direction:column; background:#1e3a8a; position:absolute; top:60px; right:0; width:200px; padding:20px; }
      .navbar ul.show { display:flex; }
      .menu-toggle { display:block; color:white; }
    }
    
/* Disable text selection */
body { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

/* ===== Homepage Hero Responsive Fix ===== */
.hero {
  min-height: clamp(560px, 88svh, 820px);
  height: auto;
  padding: clamp(72px, 10vh, 120px) 0 clamp(56px, 8vh, 96px);
  background-image: url("/static/images/home.eca099c57a1a.jpeg");
  background-size: cover;
  background-position: center center;
  isolation: isolate;
}

.hero::before {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0.28)),
    rgba(0, 0, 0, 0.12);
}

.hero .content {
  width: min(920px, calc(100% - 32px));
  margin: 0 auto;
  padding: 0;
}

.hero .content h1 {
  font-size: clamp(2rem, 5vw, 3.6rem);
  line-height: 1.12;
  text-wrap: balance;
}

.hero .content p {
  font-size: clamp(1rem, 2vw, 1.25rem);
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.hero-search {
  width: min(760px, 100%);
}

@media (max-width: 768px) {
  .hero {
    min-height: calc(100svh - 56px);
    padding: 72px 16px 44px;
    background-position: center top;
  }

  .hero::before {
    background:
      linear-gradient(180deg, rgba(0, 0, 0, 0.58), rgba(0, 0, 0, 0.32)),
      rgba(0, 0, 0, 0.12);
  }

  .hero .content {
    width: 100%;
  }

  .hero .input-group {
    display: grid;
    grid-template-columns: 1fr;
    overflow: visible;
    border-radius: 18px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28);
  }

  .hero .input-group input,
  .hero .input-group .btn {
    width: 100%;
    min-height: 48px;
    border-radius: 14px;
  }

  .hero .input-group .btn {
    margin-top: 8px;
    padding: 12px 18px;
  }

  #suggestionsBox {
    position: static;
    margin-top: 8px;
    border-radius: 14px;
    overflow: hidden;
  }

  .hero .d-flex.justify-content-center {
    flex-direction: column;
    gap: 10px;
  }

  .hero .d-flex.justify-content-center .btn {
    width: 100%;
    margin-right: 0 !important;
  }
}

/* ===== Premium Courses & Exams Sections ===== */
.section-block {
  position: relative;
  padding: clamp(26px, 5vw, 56px) 0;
}

.section-heading {
  max-width: 720px;
  margin: 0 auto 32px;
}

.section-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
  padding: 7px 13px;
  border-radius: 999px;
  background: #fff4df;
  color: #d45f00;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.section-title {
  margin: 0;
  color: #003049;
  font-size: clamp(1.65rem, 4vw, 2.45rem);
  font-weight: 850;
  line-height: 1.16;
}

.section-title::after {
  content: "";
  display: block;
  width: 74px;
  height: 4px;
  margin: 14px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, #f77f00, #d62828);
}

.section-block .auto-swiper {
  padding: 4px 0 18px;
}

.section-block .swiper-wrapper {
  align-items: stretch;
  justify-content: center;
}

.section-block .fixed-card {
  flex: 0 0 auto;
  width: clamp(230px, 24vw, 282px);
  height: auto;
}

.section-block .custom-card {
  height: 100%;
  min-height: 368px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid #e6edf3;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(0, 48, 73, 0.09);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.section-block .custom-card:hover {
  transform: translateY(-6px);
  border-color: rgba(247, 127, 0, 0.36);
  box-shadow: 0 18px 42px rgba(0, 48, 73, 0.16);
}

.section-block .card-media {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #eef3f7;
}

.section-block .card-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 48, 73, 0.32));
  pointer-events: none;
}

.section-block .card-img-top {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  border-radius: 0;
}

.section-block .card-body {
  padding: 18px;
}

.section-block .card-label {
  width: fit-content;
  margin-bottom: 9px;
  padding: 4px 9px;
  border-radius: 999px;
  background: #eef7fb;
  color: #005f73;
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.section-block .card-title {
  min-height: 2.6em;
  margin-bottom: 8px;
  color: #10212b;
  font-size: 1.05rem;
  font-weight: 800;
  line-height: 1.3;
}

.section-block .card-text {
  min-height: 4.6em;
  margin-bottom: 16px;
  color: #667481 !important;
  font-size: 0.92rem;
  line-height: 1.55;
}

.section-block .btn-view {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border: 0;
  border-radius: 10px;
  background: #003049;
  color: #fff;
  font-weight: 750;
}

.section-block .btn-view:hover {
  background: #f77f00;
  color: #fff;
}

@media (max-width: 768px) {
  .section-block {
    padding: 34px 0;
  }

  .section-heading {
    margin-bottom: 22px;
    padding: 0 10px;
  }

  .section-block .swiper-wrapper {
    justify-content: flex-start;
  }

  .section-block .fixed-card {
    width: min(82vw, 310px);
  }

  .section-block .custom-card {
    min-height: 354px;
  }
}

/* ===== Premium Blog & Testimonials ===== */
.home-blog-section {
  padding: clamp(44px, 6vw, 76px) 0;
  background: #f7fafc;
}

.blog-preview-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid #e6edf3;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.08);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.blog-preview-card:hover {
  transform: translateY(-6px);
  border-color: rgba(247, 127, 0, 0.34);
  box-shadow: 0 20px 44px rgba(0, 48, 73, 0.15);
}

.blog-preview-media {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #eef3f7;
}

.blog-preview-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 52%, rgba(0, 48, 73, 0.3));
  pointer-events: none;
}

.blog-preview-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  transition: transform 0.35s ease;
}

.blog-preview-card:hover .blog-preview-media img {
  transform: scale(1.04);
}

.blog-preview-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 20px;
}

.blog-preview-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
  color: #667481;
  font-size: 0.82rem;
  font-weight: 700;
}

.blog-preview-meta span {
  padding: 4px 9px;
  border-radius: 999px;
  background: #eef7fb;
}

.blog-preview-body h5 {
  min-height: 2.7em;
  margin: 0 0 10px;
  font-size: 1.08rem;
  font-weight: 850;
  line-height: 1.32;
}

.blog-preview-body h5 a {
  color: #10212b;
  text-decoration: none;
}

.blog-preview-body h5 a:hover {
  color: #f77f00;
}

.blog-preview-body p {
  min-height: 4.3em;
  margin-bottom: 18px;
  color: #667481;
  font-size: 0.93rem;
  line-height: 1.55;
}

.blog-read-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  margin-top: auto;
  color: #003049;
  font-weight: 850;
  text-decoration: none;
}

.blog-read-more:hover {
  color: #f77f00;
}

.testimonials {
  padding: clamp(46px, 7vw, 82px) 0;
  background:
    linear-gradient(180deg, #fff 0%, #f4f8fb 100%);
  text-align: center;
}

.testimonial-slider {
  position: relative;
  max-width: 1120px;
  margin: 0 auto;
  overflow: hidden;
  padding: 4px 42px 10px;
}

.testimonial-container {
  display: flex;
  align-items: stretch;
  transition: transform 0.45s ease-in-out;
}

.testimonial {
  flex: 0 0 100%;
  box-sizing: border-box;
  padding: 0 10px;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
}

.testimonial > p,
.testimonial .student-info {
  position: relative;
  z-index: 1;
}

.testimonial {
  display: flex;
  flex-direction: column;
}

.testimonial::before {
  content: "";
  position: absolute;
}

.testimonial {
  position: relative;
}

.testimonial-quote {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto -12px;
  border-radius: 50%;
  background: #003049;
  color: #fcbf49;
  font-size: 1.35rem;
  z-index: 2;
}

.testimonial > p {
  flex: 1;
  min-height: 150px;
  margin: 0;
  padding: 34px 24px 22px;
  border: 1px solid #e6edf3;
  border-radius: 14px 14px 0 0;
  background: #fff;
  color: #344955;
  font-size: 0.98rem;
  font-style: normal;
  line-height: 1.7;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.08);
}

.student-info {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: flex-start;
  margin: 0;
  padding: 16px 20px;
  border: 1px solid #e6edf3;
  border-top: 0;
  border-radius: 0 0 14px 14px;
  background: #f8fafc;
  text-align: left;
}

.student-info img {
  flex: 0 0 auto;
  width: 54px;
  height: 54px;
  margin: 0;
  border: 3px solid #fff;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 8px 18px rgba(0, 48, 73, 0.16);
}

.student-info h4 {
  margin: 0;
  color: #10212b;
  font-size: 1rem;
  font-weight: 850;
}

.student-info span {
  display: block;
  margin-top: 2px;
  color: #667481;
  font-size: 0.85rem;
}

.slider-buttons button {
  position: absolute;
  top: 50%;
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  border: 0;
  border-radius: 50%;
  background: #003049;
  color: #fff;
  box-shadow: 0 10px 24px rgba(0, 48, 73, 0.2);
  z-index: 3;
}

.slider-buttons button:hover {
  background: #f77f00;
}

.slider-buttons .prev { left: 0; }
.slider-buttons .next { right: 0; }

@media (min-width: 768px) {
  .testimonial {
    flex-basis: 50%;
  }
}

@media (min-width: 1024px) {
  .testimonial {
    flex-basis: 33.3333%;
  }
}

@media (max-width: 767px) {
  .home-blog-section {
    padding: 42px 0;
  }

  .blog-preview-body h5,
  .blog-preview-body p {
    min-height: auto;
  }

  .testimonial-slider {
    padding: 4px 46px 10px;
  }

  .testimonial > p {
    min-height: 170px;
    padding: 32px 20px 20px;
  }
}

/* ===== Homepage Deployment Responsive Hardening ===== */
*,
*::before,
*::after {
  box-sizing: border-box;
}

img {
  max-width: 100%;
}

main[role="main"] {
  overflow-x: clip;
}

.popular-section.section-full {
  width: 100%;
  margin-left: 0;
}

.feature-card {
  height: 100%;
  border-radius: 14px;
}

#college-swiper,
.section-block .auto-swiper {
  overflow: hidden;
}

#college-swiper .swiper-slide,
.section-block .swiper-slide {
  height: auto;
}

@media (max-width: 1199px) {
  .navbar .container {
    max-width: 100%;
  }

  .section-block,
  .home-blog-section,
  .popular-section,
  .testimonials {
    scroll-margin-top: 78px;
  }
}

@media (max-width: 991px) {
  .hero {
    min-height: 720px;
  }

  .popular-section {
    padding-left: 16px;
    padding-right: 16px;
  }

  .testimonial-slider {
    max-width: 760px;
  }
}

@media (max-width: 575px) {
  .hero {
    min-height: calc(100svh - 64px);
    padding-top: 64px;
  }

  .hero .content h1 {
    font-size: clamp(1.8rem, 9vw, 2.35rem);
  }

  .hero .content p {
    font-size: 0.98rem;
  }

  .section-block .auto-swiper {
    margin-left: -12px;
    margin-right: -12px;
    padding-left: 12px;
  }

  .section-block .fixed-card {
    width: min(86vw, 320px);
  }

  .popular-section {
    padding: 42px 12px;
  }

  #college-swiper .swiper-slide {
    padding: 6px;
  }

  .univ-card {
    width: 100%;
    min-height: 0;
    border-radius: 12px;
  }

  .univ-card .card-body {
    padding: 16px;
  }

  .univ-media {
    aspect-ratio: 16 / 9;
  }

  .univ-card .card-title {
    min-height: auto;
    font-size: 1rem;
  }

  .univ-card .card-text {
    min-height: auto;
    margin-bottom: 14px;
  }

  .univ-actions {
    gap: 8px;
  }

  .univ-actions .btn {
    min-height: 44px;
    padding: 8px;
    font-size: 0.9rem;
  }

  .home-blog-section .row,
  .testimonials .container {
    --bs-gutter-x: 1rem;
  }

  .testimonial-slider {
    padding-left: 42px;
    padding-right: 42px;
  }
}

.home-online-degree-section {
  padding: 72px 0;
  background: #f5f7fb;
}

.home-online-degree-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 430px;
  gap: 26px;
  align-items: center;
  padding: clamp(24px, 4vw, 38px);
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: linear-gradient(135deg, #003049, #005f73);
  color: #fff;
  box-shadow: 0 18px 42px rgba(0, 48, 73, 0.16);
}

.home-online-degree-copy span,
.online-degree-copy > span,
.online-degree-filter span,
.online-degree-cta span {
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.home-online-degree-copy h2 {
  margin: 8px 0 12px;
  font-size: clamp(1.8rem, 4vw, 3rem);
  font-weight: 950;
}

.home-online-degree-copy p {
  max-width: 700px;
  color: rgba(255,255,255,0.84);
  line-height: 1.65;
}

.home-online-degree-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.home-online-degree-cards {
  display: grid;
  gap: 12px;
}

.home-online-degree-cards article {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 4px 12px;
  padding: 15px;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 8px;
  background: rgba(255,255,255,0.1);
}

.home-online-degree-cards i {
  grid-row: span 2;
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: rgba(252, 191, 73, 0.18);
  color: #fcbf49;
  font-size: 1.35rem;
}

.home-online-degree-cards b {
  font-weight: 950;
}

.home-online-degree-cards span {
  color: rgba(255,255,255,0.76);
  font-size: 0.9rem;
}

.online-degree-page {
  background: #f5f7fb;
  color: #10212b;
}

.online-degree-hero {
  position: relative;
  min-height: 520px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: #052031;
  color: #fff;
}

.online-degree-hero-bg {
  position: absolute;
  inset: 0;
}

.online-degree-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 24, 38, 0.96), rgba(3, 24, 38, 0.72) 55%, rgba(3, 24, 38, 0.26)),
    linear-gradient(0deg, rgba(3, 24, 38, 0.92), rgba(3, 24, 38, 0.08));
}

.online-degree-hero-bg img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.online-degree-copy {
  position: relative;
  z-index: 1;
  max-width: 920px;
  padding: 92px 0 56px;
}

.online-degree-copy h1 {
  margin: 10px 0 16px;
  font-size: clamp(2.1rem, 5vw, 4.4rem);
  font-weight: 950;
  line-height: 1.04;
}

.online-degree-copy p {
  max-width: 760px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 1.05rem;
  line-height: 1.65;
}

.online-degree-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  max-width: 720px;
  margin-top: 24px;
  overflow: hidden;
  border-radius: 8px;
  background: #fff;
}

.online-degree-search input,
.online-degree-search button {
  min-height: 54px;
  border: 0;
}

.online-degree-search input {
  padding: 0 16px;
  outline: none;
}

.online-degree-search button {
  padding: 0 22px;
  background: #ff8500;
  color: #fff;
  font-weight: 900;
}

.online-degree-filter,
.online-degree-benefits,
.online-degree-listing,
.online-degree-cta {
  margin-top: 32px;
}

.online-degree-filter,
.online-degree-benefits article,
.online-degree-listing,
.online-degree-card,
.online-degree-empty {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.07);
}

.online-degree-filter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 20px;
}

.online-degree-filter h2 {
  margin: 4px 0 6px;
  color: #003049;
  font-weight: 950;
}

.online-degree-filter p {
  margin: 0;
  color: #65758b;
}

.online-degree-filter form {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.online-degree-filter input,
.online-degree-filter select {
  min-height: 44px;
  border: 1px solid #dfe8f0;
  border-radius: 8px;
  padding: 0 12px;
}

.online-degree-benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.online-degree-benefits article {
  padding: 20px;
}

.online-degree-benefits i {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  margin-bottom: 14px;
  border-radius: 8px;
  background: #fff4df;
  color: #ff8500;
  font-size: 1.25rem;
}

.online-degree-benefits h3,
.online-degree-empty h3 {
  color: #003049;
  font-weight: 950;
}

.online-degree-benefits p,
.online-degree-empty p {
  color: #65758b;
}

.online-degree-listing {
  padding: clamp(20px, 3vw, 30px);
}

.online-degree-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.online-degree-card {
  overflow: hidden;
}

.online-degree-media {
  display: block;
  aspect-ratio: 16 / 10;
  background: #edf3f7;
}

.online-degree-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.online-degree-body {
  padding: 18px;
}

.online-degree-body > span {
  color: #005f73;
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.online-degree-body h3 {
  margin: 6px 0 8px;
  color: #003049;
  font-size: 1.15rem;
  font-weight: 950;
}

.online-degree-body h3 a {
  color: inherit;
}

.online-degree-body p {
  color: #65758b;
}

.online-program-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 14px 0;
}

.online-program-tags b {
  padding: 5px 8px;
  border-radius: 999px;
  background: #eef7fb;
  color: #005f73;
  font-size: 0.76rem;
}

.online-degree-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.online-degree-empty {
  grid-column: 1 / -1;
  padding: 24px;
  text-align: center;
}

.online-degree-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 56px;
  padding: 24px;
  border-radius: 8px;
  background: linear-gradient(135deg, #003049, #005f73);
  color: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.12);
}

.online-degree-cta h2 {
  margin: 5px 0 8px;
  font-weight: 950;
}

.online-degree-cta p {
  margin: 0;
  color: rgba(255,255,255,0.82);
}

@media (max-width: 991px) {
  .home-online-degree-panel,
  .online-degree-filter {
    grid-template-columns: 1fr;
    align-items: flex-start;
    flex-direction: column;
  }

  .online-degree-benefits,
  .online-degree-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .online-degree-hero {
    min-height: auto;
  }

  .online-degree-copy {
    padding: 70px 0 42px;
  }

  .online-degree-search,
  .online-degree-cta {
    grid-template-columns: 1fr;
    align-items: stretch;
    flex-direction: column;
  }

  .home-online-degree-actions,
  .online-degree-actions,
  .online-degree-filter form {
    align-items: stretch;
    flex-direction: column;
  }

  .home-online-degree-actions .btn,
  .online-degree-actions a,
  .online-degree-actions button,
  .online-degree-filter input,
  .online-degree-filter select,
  .online-degree-filter a,
  .online-degree-filter button,
  .online-degree-cta .btn {
    width: 100%;
  }
}

.contact-premium-page {
  background: #f5f7fb;
  color: #10212b;
}

.contact-premium-hero {
  position: relative;
  min-height: 500px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: #052031;
  color: #fff;
}

.contact-premium-hero-bg {
  position: absolute;
  inset: 0;
}

.contact-premium-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 24, 38, 0.96), rgba(3, 24, 38, 0.72) 55%, rgba(3, 24, 38, 0.26)),
    linear-gradient(0deg, rgba(3, 24, 38, 0.92), rgba(3, 24, 38, 0.08));
}

.contact-premium-hero-bg img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.contact-hero-copy {
  position: relative;
  z-index: 1;
  max-width: 900px;
  padding: 92px 0 56px;
}

.contact-hero-copy > span,
.contact-bottom-cta span {
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.contact-hero-copy h1 {
  margin: 10px 0 16px;
  font-size: clamp(2.1rem, 5vw, 4.4rem);
  font-weight: 950;
  line-height: 1.04;
}

.contact-hero-copy p {
  max-width: 760px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 1.05rem;
  line-height: 1.65;
}

.contact-premium-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 24px;
  padding-top: 32px;
  padding-bottom: 32px;
}

.contact-premium-form,
.contact-info-card,
.contact-map-card,
.contact-bottom-cta {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.07);
}

.contact-premium-form {
  padding: clamp(20px, 3vw, 30px);
}

.contact-premium-form form {
  display: grid;
  gap: 18px;
}

.contact-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.contact-form-grid label {
  display: grid;
  gap: 7px;
}

.contact-form-grid label span {
  color: #003049;
  font-size: 0.88rem;
  font-weight: 850;
}

.contact-form-grid input,
.contact-form-grid textarea {
  width: 100%;
  min-height: 48px;
  padding: 0 14px;
  border: 1px solid #dfe8f0;
  border-radius: 8px;
  background: #fff;
  color: #10212b;
  outline: none;
}

.contact-form-grid textarea {
  min-height: 150px;
  padding-top: 12px;
  resize: vertical;
}

.contact-message-field {
  grid-column: 1 / -1;
}

.contact-premium-info {
  display: grid;
  gap: 16px;
  align-content: start;
}

.contact-info-card {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 18px;
}

.contact-info-card i {
  width: 42px;
  height: 42px;
  display: grid;
  flex: 0 0 42px;
  place-items: center;
  border-radius: 8px;
  background: #fff4df;
  color: #ff8500;
  font-size: 1.2rem;
}

.contact-info-card h3 {
  margin: 0 0 5px;
  color: #003049;
  font-size: 1.05rem;
  font-weight: 950;
}

.contact-info-card p {
  margin: 0;
  color: #65758b;
}

.contact-info-card a {
  color: #344256;
  font-weight: 850;
}

.contact-map-card {
  overflow: hidden;
}

.contact-map-card iframe {
  width: 100%;
  height: 260px;
  display: block;
  border: 0;
}

.contact-bottom-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 56px;
  padding: 24px;
  background: linear-gradient(135deg, #003049, #005f73);
  color: #fff;
}

.contact-bottom-cta h2 {
  margin: 5px 0 8px;
  font-weight: 950;
}

.contact-bottom-cta p {
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
}

@media (max-width: 991px) {
  .contact-premium-shell {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .contact-premium-hero {
    min-height: auto;
  }

  .contact-hero-copy {
    padding: 70px 0 42px;
  }

  .contact-form-grid {
    grid-template-columns: 1fr;
  }

  .contact-bottom-cta {
    align-items: stretch;
    flex-direction: column;
  }

  .contact-bottom-cta .btn {
    width: 100%;
  }
}

.static-premium-page {
  background: #f5f7fb;
  color: #10212b;
}

.static-premium-hero {
  position: relative;
  min-height: 500px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: #052031;
  color: #fff;
}

.static-premium-hero-bg {
  position: absolute;
  inset: 0;
}

.static-premium-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 24, 38, 0.96), rgba(3, 24, 38, 0.72) 55%, rgba(3, 24, 38, 0.26)),
    linear-gradient(0deg, rgba(3, 24, 38, 0.92), rgba(3, 24, 38, 0.08));
}

.static-premium-hero-bg img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.static-hero-copy {
  position: relative;
  z-index: 1;
  max-width: 900px;
  padding: 92px 0 56px;
}

.static-hero-copy > span,
.static-bottom-cta span {
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.static-hero-copy h1 {
  margin: 10px 0 16px;
  font-size: clamp(2.1rem, 5vw, 4.4rem);
  font-weight: 950;
  line-height: 1.04;
}

.static-hero-copy p {
  max-width: 760px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 1.05rem;
  line-height: 1.65;
}

.static-premium-intro,
.static-premium-section,
.static-faq-shell,
.static-policy-content,
.static-bottom-cta,
.static-empty-state {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.07);
}

.static-premium-intro,
.static-premium-section,
.static-faq-shell,
.static-policy-content {
  margin-top: 32px;
  padding: clamp(20px, 3vw, 30px);
}

.static-premium-intro p {
  max-width: 920px;
  color: #46576b;
  font-size: 1.05rem;
  line-height: 1.75;
}

.static-feature-grid,
.static-team-grid,
.static-testimonial-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 24px;
}

.static-feature-grid article,
.static-team-grid article,
.static-testimonial-grid article {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(0, 48, 73, 0.06);
}

.static-feature-grid article {
  padding: 22px;
}

.static-feature-grid i {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  margin-bottom: 14px;
  border-radius: 8px;
  background: #fff4df;
  color: #ff8500;
  font-size: 1.4rem;
}

.static-feature-grid h3,
.static-team-grid h3 {
  color: #003049;
  font-weight: 950;
}

.static-feature-grid p,
.static-team-grid p,
.static-testimonial-grid p {
  color: #65758b;
}

.static-team-grid article {
  overflow: hidden;
}

.static-team-grid img {
  width: 100%;
  aspect-ratio: 4 / 3;
  display: block;
  object-fit: cover;
  background: #edf3f7;
}

.static-team-grid h3,
.static-team-grid p {
  padding-inline: 18px;
}

.static-team-grid h3 {
  margin-top: 16px;
}

.static-team-grid p {
  padding-bottom: 18px;
}

.static-testimonial-grid article {
  padding: 20px;
}

.static-testimonial-grid article > p {
  min-height: 5em;
  line-height: 1.65;
}

.static-testimonial-grid div {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
}

.static-testimonial-grid img {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
}

.static-testimonial-grid b,
.static-testimonial-grid span {
  display: block;
}

.static-testimonial-grid b {
  color: #003049;
}

.static-faq-accordion .accordion-item {
  border-color: #e5edf4;
}

.static-faq-accordion .accordion-button {
  color: #003049;
  font-weight: 850;
}

.static-policy-layout {
  display: grid;
  grid-template-columns: 270px minmax(0, 1fr);
  gap: 24px;
  padding-top: 32px;
  padding-bottom: 56px;
}

.static-policy-nav {
  position: sticky;
  top: 88px;
  align-self: start;
  display: grid;
  gap: 10px;
  padding: 10px;
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.07);
}

.static-policy-nav a {
  padding: 10px 12px;
  border-radius: 8px;
  color: #344256;
  font-weight: 850;
}

.static-policy-nav a:hover {
  background: #eef7fb;
  color: #003049;
}

.static-policy-content {
  margin-top: 0;
}

.static-policy-content section {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #edf2f6;
  scroll-margin-top: 96px;
}

.static-policy-content section:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

.static-policy-content h2 {
  color: #003049;
  font-weight: 950;
}

.static-policy-content p {
  color: #46576b;
  line-height: 1.75;
}

.static-bottom-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 32px;
  margin-bottom: 56px;
  padding: 24px;
  background: linear-gradient(135deg, #003049, #005f73);
  color: #fff;
}

.static-bottom-cta h2 {
  margin: 5px 0 8px;
  font-weight: 950;
}

.static-bottom-cta p {
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
}

.static-empty-state {
  padding: 22px;
  color: #65758b;
  text-align: center;
}

@media (max-width: 991px) {
  .static-feature-grid,
  .static-team-grid,
  .static-testimonial-grid,
  .static-policy-layout {
    grid-template-columns: 1fr;
  }

  .static-policy-nav {
    position: static;
  }
}

@media (max-width: 575px) {
  .static-premium-hero {
    min-height: auto;
  }

  .static-hero-copy {
    padding: 70px 0 42px;
  }

  .static-bottom-cta {
    align-items: stretch;
    flex-direction: column;
  }

  .static-bottom-cta .btn {
    width: 100%;
  }
}

.compare-premium-page {
  background: #f5f7fb;
  color: #10212b;
}

.compare-premium-hero {
  position: relative;
  min-height: 460px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: #052031;
  color: #fff;
}

.compare-premium-hero-bg {
  position: absolute;
  inset: 0;
}

.compare-premium-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 24, 38, 0.96), rgba(3, 24, 38, 0.72) 55%, rgba(3, 24, 38, 0.26)),
    linear-gradient(0deg, rgba(3, 24, 38, 0.92), rgba(3, 24, 38, 0.08));
}

.compare-premium-hero-bg img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.compare-hero-copy {
  position: relative;
  z-index: 1;
  max-width: 920px;
  padding: 90px 0 56px;
}

.compare-hero-copy span,
.compare-selector-heading span,
.compare-bottom-cta span {
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.compare-hero-copy h1 {
  margin: 10px 0 16px;
  font-size: clamp(2.1rem, 5vw, 4.4rem);
  font-weight: 950;
  line-height: 1.04;
}

.compare-hero-copy p {
  max-width: 780px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 1.05rem;
  line-height: 1.65;
}

.compare-selector-wrap {
  position: relative;
  z-index: 2;
  margin-top: -44px;
}

.compare-selector-panel,
.compare-matrix-section,
.compare-empty-premium,
.compare-bottom-cta {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.08);
}

.compare-selector-panel {
  padding: 20px;
}

.compare-selector-heading,
.compare-selector-actions,
.compare-college-stats {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.compare-selector-heading h2 {
  margin: 4px 0 0;
  color: #003049;
  font-weight: 950;
}

.compare-selector-actions {
  justify-content: flex-end;
}

.compare-select-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 16px;
}

.compare-select-grid label {
  display: grid;
  gap: 6px;
}

.compare-select-grid label span {
  color: #344256;
  font-size: 0.86rem;
  font-weight: 850;
}

.compare-select-grid .form-select {
  min-height: 48px;
  border-color: #dfe8f0;
  border-radius: 8px;
}

.compare-premium-shell {
  padding-top: 32px;
  padding-bottom: 56px;
}

.compare-college-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 24px;
}

.compare-college-card {
  overflow: hidden;
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.07);
}

.compare-college-media {
  display: block;
  aspect-ratio: 16 / 10;
  background: #edf3f7;
}

.compare-college-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.compare-college-body {
  padding: 16px;
}

.compare-college-body > span {
  color: #005f73;
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.compare-college-body h2 {
  margin: 6px 0 8px;
  color: #003049;
  font-size: 1.1rem;
  font-weight: 950;
  line-height: 1.25;
}

.compare-college-body p {
  min-height: 2.7em;
  color: #65758b;
  font-size: 0.92rem;
}

.compare-college-stats {
  justify-content: flex-start;
  margin-bottom: 14px;
}

.compare-college-stats b {
  padding: 5px 8px;
  border-radius: 999px;
  background: #f8fafc;
  color: #344256;
  font-size: 0.82rem;
}

.compare-matrix-section {
  padding: clamp(18px, 3vw, 28px);
}

.compare-matrix-scroll {
  overflow-x: auto;
  border: 1px solid #e5edf4;
  border-radius: 8px;
}

.compare-premium-table {
  width: 100%;
  min-width: 880px;
  border-collapse: separate;
  border-spacing: 0;
  background: #fff;
}

.compare-premium-table th,
.compare-premium-table td {
  width: 22%;
  padding: 16px;
  border-bottom: 1px solid #e9eff5;
  border-right: 1px solid #e9eff5;
  vertical-align: top;
}

.compare-premium-table th:first-child {
  width: 160px;
  position: sticky;
  left: 0;
  z-index: 2;
  background: #f0f6fa;
  color: #003049;
  font-weight: 950;
}

.compare-premium-table thead th {
  position: sticky;
  top: 0;
  z-index: 3;
  background: #003049;
  color: #fff;
  font-weight: 950;
}

.compare-premium-table thead th:first-child {
  z-index: 4;
  background: #00283d;
}

.compare-premium-table tr:last-child th,
.compare-premium-table tr:last-child td {
  border-bottom: 0;
}

.compare-chip {
  display: inline-flex;
  margin: 0 5px 6px 0;
  padding: 5px 8px;
  border-radius: 999px;
  background: #eef7fb;
  color: #005f73;
  font-size: 0.78rem;
  font-weight: 850;
}

.compare-muted {
  color: #7a8796;
  font-size: 0.92rem;
}

.compare-list-item {
  display: grid;
  gap: 4px;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dashed #dfe8f0;
}

.compare-list-item:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

.compare-list-item b,
.compare-rating {
  color: #003049;
  font-weight: 900;
}

.compare-list-item span,
.compare-review {
  color: #566778;
  font-size: 0.9rem;
  line-height: 1.5;
}

.compare-rating {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
  color: #9a5b00;
}

.compare-logo-strip,
.compare-gallery-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.compare-logo-strip img {
  width: 70px;
  height: 42px;
  object-fit: contain;
  padding: 7px;
  border: 1px solid #edf2f6;
  border-radius: 8px;
  background: #fff;
}

.compare-gallery-strip img {
  width: 76px;
  height: 58px;
  object-fit: cover;
  border-radius: 8px;
}

.compare-empty-premium {
  padding: 34px;
  text-align: center;
}

.compare-empty-premium h2 {
  color: #003049;
  font-weight: 950;
}

.compare-empty-premium p {
  color: #65758b;
}

.compare-bottom-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 24px;
  padding: 24px;
  background: linear-gradient(135deg, #003049, #005f73);
  color: #fff;
}

.compare-bottom-cta h2 {
  margin: 5px 0 8px;
  font-weight: 950;
}

.compare-bottom-cta p {
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
}

@media (max-width: 1199px) {
  .compare-college-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991px) {
  .compare-select-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  .compare-premium-hero {
    min-height: auto;
  }

  .compare-hero-copy {
    padding: 70px 0 44px;
  }

  .compare-select-grid,
  .compare-college-cards {
    grid-template-columns: 1fr;
  }

  .compare-selector-actions,
  .compare-bottom-cta {
    align-items: stretch;
    flex-direction: column;
  }

  .compare-selector-actions a,
  .compare-selector-actions button,
  .compare-bottom-cta .btn {
    width: 100%;
  }
}

.blog-detail-premium {
  background: #f5f7fb;
  color: #10212b;
}

.blog-detail-hero {
  position: relative;
  min-height: 560px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: #052031;
  color: #fff;
}

.blog-detail-hero-bg {
  position: absolute;
  inset: 0;
}

.blog-detail-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 24, 38, 0.96), rgba(3, 24, 38, 0.72) 55%, rgba(3, 24, 38, 0.26)),
    linear-gradient(0deg, rgba(3, 24, 38, 0.92), rgba(3, 24, 38, 0.08));
}

.blog-detail-hero-bg img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.blog-detail-hero-copy {
  position: relative;
  z-index: 1;
  max-width: 960px;
  padding: 100px 0 64px;
}

.blog-detail-hero-copy > span,
.blog-detail-cta span {
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.blog-detail-hero-copy h1 {
  margin: 10px 0 18px;
  font-size: clamp(2.1rem, 5vw, 4.3rem);
  font-weight: 950;
  line-height: 1.05;
}

.blog-detail-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.blog-detail-meta b {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 11px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.9);
}

.blog-detail-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 24px;
  padding-top: 32px;
  padding-bottom: 32px;
}

.blog-detail-article,
.blog-detail-section,
.blog-detail-cta {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.07);
}

.blog-detail-article {
  padding: clamp(22px, 4vw, 42px);
}

.blog-detail-excerpt {
  margin-bottom: 22px;
  padding: 18px;
  border-left: 4px solid #fcbf49;
  border-radius: 8px;
  background: #fff8ea;
  color: #344256;
  font-size: 1.08rem;
  line-height: 1.7;
}

.blog-detail-content {
  font-size: 1.02rem;
}

.blog-detail-content h2,
.blog-detail-content h3,
.blog-detail-content h4 {
  margin-top: 1.7em;
  color: #003049;
  font-weight: 950;
}

.blog-detail-content img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
}

.blog-detail-sidebar {
  position: sticky;
  top: 88px;
  align-self: start;
  display: grid;
  gap: 16px;
}

.blog-detail-section {
  margin-bottom: 24px;
  padding: clamp(20px, 3vw, 30px);
}

.blog-related-college-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.blog-related-college-card {
  overflow: hidden;
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(0, 48, 73, 0.06);
}

.blog-related-college-card > img {
  width: 100%;
  aspect-ratio: 16 / 10;
  display: block;
  object-fit: cover;
  background: #edf3f7;
}

.blog-related-college-card > div {
  padding: 16px;
}

.blog-related-college-card h3 {
  margin: 0 0 8px;
  color: #003049;
  font-size: 1.05rem;
  font-weight: 900;
}

.blog-related-college-card p {
  color: #65758b;
}

.blog-related-college-card span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 14px;
  color: #9a5b00;
  font-size: 0.86rem;
  font-weight: 800;
}

.blog-detail-faq .accordion-item {
  border-color: #e5edf4;
}

.blog-detail-faq .accordion-button {
  color: #003049;
  font-weight: 850;
}

.blog-detail-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 56px;
  padding: 24px;
  background: linear-gradient(135deg, #003049, #005f73);
  color: #fff;
}

.blog-detail-cta h2 {
  margin: 5px 0 8px;
  font-weight: 950;
}

.blog-detail-cta p {
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
}

@media (max-width: 991px) {
  .blog-detail-shell {
    grid-template-columns: 1fr;
  }

  .blog-detail-sidebar {
    position: static;
  }

  .blog-related-college-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  .blog-detail-hero {
    min-height: auto;
  }

  .blog-detail-hero-copy {
    padding: 74px 0 42px;
  }

  .blog-detail-meta,
  .blog-detail-cta {
    align-items: stretch;
    flex-direction: column;
  }

  .blog-detail-meta b,
  .blog-detail-cta .btn {
    width: 100%;
  }

  .blog-related-college-grid {
    grid-template-columns: 1fr;
  }
}

.blog-premium-page {
  background: #f5f7fb;
  color: #10212b;
}

.blog-premium-hero {
  position: relative;
  min-height: 500px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: #052031;
  color: #fff;
}

.blog-premium-hero-bg {
  position: absolute;
  inset: 0;
}

.blog-premium-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 24, 38, 0.95), rgba(3, 24, 38, 0.72) 55%, rgba(3, 24, 38, 0.3)),
    linear-gradient(0deg, rgba(3, 24, 38, 0.88), rgba(3, 24, 38, 0.12));
}

.blog-premium-hero-bg img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.blog-hero-copy {
  position: relative;
  z-index: 1;
  max-width: 920px;
  padding: 92px 0 56px;
}

.blog-hero-copy span,
.blog-subscribe-card span {
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.blog-hero-copy h1 {
  margin: 10px 0 16px;
  font-size: clamp(2.1rem, 5vw, 4.3rem);
  font-weight: 950;
  line-height: 1.04;
}

.blog-hero-copy p {
  max-width: 720px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 1.05rem;
  line-height: 1.65;
}

.blog-hero-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  max-width: 720px;
  margin-top: 24px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.18);
}

.blog-hero-search input,
.blog-hero-search button,
.blog-subscribe-card input,
.blog-subscribe-card button {
  min-height: 52px;
  border: 0;
}

.blog-hero-search input,
.blog-subscribe-card input {
  padding: 0 16px;
  color: #10212b;
  outline: none;
}

.blog-hero-search button,
.blog-subscribe-card button {
  padding: 0 22px;
  background: #ff8500;
  color: #fff;
  font-weight: 900;
}

.blog-filter-strip {
  position: relative;
  z-index: 2;
  margin-top: -34px;
}

.blog-filter-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px;
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.09);
}

.blog-filter-inner span {
  color: #005f73;
  font-weight: 900;
}

.blog-filter-inner b {
  display: block;
  margin-top: 3px;
  color: #344256;
}

.blog-category-pills,
.blog-sidebar-categories {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.blog-category-pills a,
.blog-sidebar-categories a {
  padding: 8px 11px;
  border: 1px solid #e5edf4;
  border-radius: 999px;
  background: #f8fafc;
  color: #344256;
  font-size: 0.88rem;
  font-weight: 850;
}

.blog-category-pills a.active,
.blog-sidebar-categories a.active,
.blog-category-pills a:hover,
.blog-sidebar-categories a:hover {
  background: #003049;
  color: #fff;
}

.blog-premium-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 24px;
  padding-top: 32px;
  padding-bottom: 56px;
}

.blog-post-grid {
  display: grid;
  gap: 18px;
}

.blog-premium-card,
.blog-sidebar-card,
.blog-empty-state {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.07);
}

.blog-premium-card {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  overflow: hidden;
}

.blog-premium-media {
  min-height: 220px;
  background: #edf3f7;
}

.blog-premium-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 220ms ease;
}

.blog-premium-card:hover .blog-premium-media img {
  transform: scale(1.04);
}

.blog-premium-body {
  padding: 22px;
}

.blog-premium-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
}

.blog-premium-meta span {
  padding: 5px 8px;
  border-radius: 999px;
  background: #eef7fb;
  color: #005f73;
  font-size: 0.76rem;
  font-weight: 850;
}

.blog-premium-body h2 {
  margin: 0 0 10px;
  font-size: clamp(1.25rem, 2.4vw, 1.65rem);
  font-weight: 950;
  line-height: 1.2;
}

.blog-premium-body h2 a {
  color: #003049;
}

.blog-premium-body p {
  color: #5f6f80;
  line-height: 1.65;
}

.blog-premium-link {
  color: #ff8500;
  font-weight: 900;
}

.blog-premium-sidebar {
  position: sticky;
  top: 88px;
  align-self: start;
  display: grid;
  gap: 16px;
}

.blog-sidebar-card,
.blog-empty-state {
  padding: 20px;
}

.blog-sidebar-card h2,
.blog-empty-state h2 {
  margin: 0 0 10px;
  color: #003049;
  font-size: 1.2rem;
  font-weight: 950;
}

.blog-sidebar-card p,
.blog-empty-state p {
  color: #65758b;
}

.blog-subscribe-card {
  background: linear-gradient(135deg, #003049, #005f73);
  color: #fff;
}

.blog-subscribe-card h2 {
  color: #fff;
}

.blog-subscribe-card p {
  color: rgba(255, 255, 255, 0.82);
}

.blog-subscribe-card form {
  display: grid;
  gap: 10px;
}

.blog-subscribe-card input,
.blog-subscribe-card button {
  width: 100%;
  border-radius: 8px;
}

.blog-latest-list {
  display: grid;
  gap: 12px;
}

.blog-latest-list a {
  display: grid;
  gap: 3px;
  padding: 12px;
  border: 1px solid #edf2f6;
  border-radius: 8px;
  background: #f8fafc;
}

.blog-latest-list span {
  color: #005f73;
  font-size: 0.78rem;
  font-weight: 850;
}

.blog-latest-list b {
  color: #10212b;
  line-height: 1.35;
}

.blog-premium-pagination {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 12px;
}

.blog-premium-pagination a,
.blog-premium-pagination span {
  min-width: 38px;
  min-height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  color: #003049;
  font-weight: 900;
}

.blog-premium-pagination span {
  background: #003049;
  color: #fff;
}

@media (max-width: 991px) {
  .blog-premium-shell,
  .blog-premium-card {
    grid-template-columns: 1fr;
  }

  .blog-premium-sidebar {
    position: static;
  }

  .blog-filter-inner {
    align-items: flex-start;
    flex-direction: column;
  }

  .blog-premium-media {
    min-height: auto;
    aspect-ratio: 16 / 9;
  }
}

@media (max-width: 575px) {
  .blog-premium-hero {
    min-height: auto;
  }

  .blog-hero-copy {
    padding: 70px 0 42px;
  }

  .blog-hero-search {
    grid-template-columns: 1fr;
  }

  .blog-category-pills {
    flex-wrap: nowrap;
    max-width: 100%;
    overflow-x: auto;
    padding-bottom: 4px;
  }
}

.exam-detail-premium {
  background: #f5f7fb;
  color: #10212b;
}

.exam-detail-hero {
  position: relative;
  min-height: 500px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: #052031;
  color: #fff;
}

.exam-detail-hero-bg {
  position: absolute;
  inset: 0;
}

.exam-detail-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 24, 38, 0.95), rgba(3, 24, 38, 0.68) 52%, rgba(3, 24, 38, 0.28)),
    linear-gradient(0deg, rgba(3, 24, 38, 0.92), rgba(3, 24, 38, 0.08));
}

.exam-detail-hero-bg img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.exam-hero-content {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 28px;
  align-items: end;
  padding: 90px 0 54px;
}

.exam-detail-kicker,
.exam-hero-card span,
.exam-stat-grid span,
.exam-bottom-cta span {
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.exam-hero-content h1 {
  max-width: 880px;
  margin: 10px 0 16px;
  font-size: clamp(2.1rem, 5vw, 4.4rem);
  font-weight: 950;
  line-height: 1.03;
}

.exam-hero-content p {
  max-width: 760px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 1.05rem;
  line-height: 1.65;
}

.exam-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.exam-hero-card {
  padding: 22px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(14px);
}

.exam-fact-list {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.exam-fact-list b {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #fff;
}

.exam-detail-shell {
  display: grid;
  grid-template-columns: 270px minmax(0, 1fr);
  gap: 24px;
  padding-top: 32px;
  padding-bottom: 56px;
}

.exam-detail-sidebar {
  position: sticky;
  top: 88px;
  align-self: start;
  display: grid;
  gap: 16px;
}

.exam-detail-nav,
.exam-side-lead,
.exam-premium-section,
.exam-bottom-cta {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.07);
}

.exam-detail-nav {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 10px;
}

.exam-detail-nav a {
  padding: 10px 12px;
  border-radius: 8px;
  color: #344256;
  font-weight: 850;
}

.exam-detail-nav a:hover {
  background: #eef7fb;
  color: #003049;
}

.exam-side-lead,
.exam-premium-section {
  padding: 18px;
}

.exam-side-lead h3 {
  margin: 0 0 8px;
  color: #003049;
  font-size: 1.15rem;
  font-weight: 900;
}

.exam-side-lead p {
  color: #65758b;
}

.exam-detail-content {
  display: grid;
  gap: 22px;
}

.exam-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.exam-stat-grid article,
.exam-date-row,
.exam-paper-row-premium,
.exam-paper-empty,
.exam-step-grid article,
.exam-college-card,
.exam-blog-card {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(0, 48, 73, 0.06);
}

.exam-stat-grid article {
  padding: 18px;
}

.exam-stat-grid span {
  color: #005f73;
}

.exam-stat-grid strong {
  display: block;
  margin-top: 7px;
  color: #003049;
  font-size: 1.02rem;
  font-weight: 900;
}

.exam-premium-section {
  padding: clamp(20px, 3vw, 30px);
  scroll-margin-top: 94px;
}

.exam-date-list,
.exam-paper-list {
  display: grid;
  gap: 12px;
}

.exam-date-row,
.exam-paper-row-premium {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 15px;
  background: #f8fafc;
}

.exam-date-row strong,
.exam-paper-row-premium h3 {
  margin: 0;
  color: #003049;
  font-size: 1.05rem;
  font-weight: 900;
}

.exam-date-row span,
.exam-paper-row-premium span {
  color: #667481;
  font-size: 0.86rem;
  font-weight: 800;
}

.exam-paper-empty {
  padding: 18px;
  background: #f8fafc;
}

.exam-paper-empty h3 {
  color: #003049;
  font-weight: 900;
}

.exam-step-grid,
.exam-college-grid,
.exam-blog-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.exam-step-grid article {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px;
  background: #f8fafc;
}

.exam-step-grid b {
  width: 34px;
  height: 34px;
  display: grid;
  flex: 0 0 34px;
  place-items: center;
  border-radius: 50%;
  background: #fcbf49;
  color: #003049;
}

.exam-step-grid span {
  color: #344256;
  font-weight: 850;
}

.exam-college-card,
.exam-blog-card {
  overflow: hidden;
}

.exam-college-card > img,
.exam-blog-card > img {
  width: 100%;
  aspect-ratio: 16 / 9;
  display: block;
  object-fit: cover;
  background: #edf3f7;
}

.exam-college-card > div,
.exam-blog-card > div {
  padding: 18px;
}

.exam-college-card h3,
.exam-blog-card h3 {
  margin: 0 0 8px;
  color: #003049;
  font-size: 1.12rem;
  font-weight: 900;
}

.exam-college-card p {
  color: #65758b;
}

.exam-college-card span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 14px;
  color: #9a5b00;
  font-size: 0.86rem;
  font-weight: 800;
}

.exam-faq-accordion .accordion-item {
  border-color: #e5edf4;
}

.exam-faq-accordion .accordion-button {
  color: #003049;
  font-weight: 850;
}

.exam-bottom-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 24px;
  background: linear-gradient(135deg, #003049, #005f73);
  color: #fff;
}

.exam-bottom-cta h2 {
  margin: 5px 0 8px;
  font-weight: 950;
}

.exam-bottom-cta p {
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
}

@media (max-width: 991px) {
  .exam-hero-content,
  .exam-detail-shell,
  .exam-stat-grid {
    grid-template-columns: 1fr;
  }

  .exam-detail-sidebar {
    position: static;
  }

  .exam-detail-nav {
    flex-direction: row;
    flex-wrap: wrap;
  }
}

@media (max-width: 767px) {
  .exam-step-grid,
  .exam-college-grid,
  .exam-blog-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .exam-detail-hero {
    min-height: auto;
  }

  .exam-hero-content {
    padding: 70px 0 34px;
  }

  .exam-hero-actions,
  .exam-date-row,
  .exam-paper-row-premium,
  .exam-bottom-cta {
    align-items: stretch;
    flex-direction: column;
  }

  .exam-hero-actions .btn,
  .exam-paper-row-premium a,
  .exam-bottom-cta .btn {
    width: 100%;
  }
}

.course-detail-premium {
  background: #f5f7fb;
  color: #10212b;
}

.course-detail-hero {
  position: relative;
  min-height: 500px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: #052031;
  color: #fff;
}

.course-detail-hero-bg {
  position: absolute;
  inset: 0;
}

.course-detail-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 24, 38, 0.94), rgba(3, 24, 38, 0.68) 52%, rgba(3, 24, 38, 0.28)),
    linear-gradient(0deg, rgba(3, 24, 38, 0.9), rgba(3, 24, 38, 0.08));
}

.course-detail-hero-bg img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.course-hero-content {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 28px;
  align-items: end;
  padding: 90px 0 54px;
}

.course-detail-kicker,
.course-hero-card span,
.course-stat-grid span,
.course-bottom-cta span {
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.course-hero-content h1 {
  max-width: 880px;
  margin: 10px 0 16px;
  font-size: clamp(2.1rem, 5vw, 4.4rem);
  font-weight: 950;
  line-height: 1.03;
}

.course-hero-content p {
  max-width: 760px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 1.05rem;
  line-height: 1.65;
}

.course-hero-actions,
.course-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.course-hero-card {
  padding: 22px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(14px);
}

.course-fact-list {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.course-fact-list b {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #fff;
}

.course-detail-shell {
  display: grid;
  grid-template-columns: 270px minmax(0, 1fr);
  gap: 24px;
  padding-top: 32px;
  padding-bottom: 56px;
}

.course-detail-sidebar {
  position: sticky;
  top: 88px;
  align-self: start;
  display: grid;
  gap: 16px;
}

.course-detail-nav,
.course-side-lead,
.course-premium-section,
.course-bottom-cta {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.07);
}

.course-detail-nav {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 10px;
}

.course-detail-nav a {
  padding: 10px 12px;
  border-radius: 8px;
  color: #344256;
  font-weight: 850;
}

.course-detail-nav a:hover {
  background: #eef7fb;
  color: #003049;
}

.course-side-lead {
  padding: 18px;
}

.course-side-lead h3 {
  margin: 0 0 8px;
  color: #003049;
  font-size: 1.15rem;
  font-weight: 900;
}

.course-side-lead p {
  color: #65758b;
}

.course-detail-content {
  display: grid;
  gap: 22px;
}

.course-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.course-stat-grid article,
.course-highlight-box,
.course-exam-card,
.course-paper-row,
.course-college-card {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(0, 48, 73, 0.06);
}

.course-stat-grid article {
  padding: 18px;
}

.course-stat-grid span {
  color: #005f73;
}

.course-stat-grid strong {
  display: block;
  margin-top: 7px;
  color: #003049;
  font-size: 1.02rem;
  font-weight: 900;
}

.course-premium-section {
  padding: clamp(20px, 3vw, 30px);
  scroll-margin-top: 94px;
}

.course-highlight-box {
  margin-top: 16px;
  padding: 18px;
  background: #f8fafc;
}

.course-highlight-box b {
  display: block;
  margin-bottom: 8px;
  color: #003049;
  font-weight: 900;
}

.course-exam-grid,
.course-college-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.course-exam-card,
.course-college-card {
  overflow: hidden;
}

.course-exam-card img,
.course-college-card > img {
  width: 100%;
  aspect-ratio: 16 / 9;
  display: block;
  object-fit: cover;
  background: #edf3f7;
}

.course-exam-card > div,
.course-college-card > div {
  padding: 18px;
}

.course-exam-card h3,
.course-college-card h3,
.course-paper-row h3 {
  margin: 0 0 8px;
  color: #003049;
  font-size: 1.12rem;
  font-weight: 900;
}

.course-exam-card p,
.course-college-card p {
  color: #65758b;
  line-height: 1.55;
}

.course-paper-list {
  display: grid;
  gap: 12px;
}

.course-paper-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 15px;
  background: #f8fafc;
}

.course-paper-row span,
.course-college-card span {
  color: #667481;
  font-size: 0.86rem;
  font-weight: 800;
}

.course-college-card span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 14px;
  color: #9a5b00;
}

.course-faq-accordion .accordion-item {
  border-color: #e5edf4;
}

.course-faq-accordion .accordion-button {
  color: #003049;
  font-weight: 850;
}

.course-bottom-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 24px;
  background: linear-gradient(135deg, #003049, #005f73);
  color: #fff;
}

.course-bottom-cta h2 {
  margin: 5px 0 8px;
  font-weight: 950;
}

.course-bottom-cta p {
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
}

@media (max-width: 991px) {
  .course-hero-content,
  .course-detail-shell,
  .course-stat-grid {
    grid-template-columns: 1fr;
  }

  .course-detail-sidebar {
    position: static;
  }

  .course-detail-nav {
    flex-direction: row;
    flex-wrap: wrap;
  }
}

@media (max-width: 767px) {
  .course-exam-grid,
  .course-college-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .course-detail-hero {
    min-height: auto;
  }

  .course-hero-content {
    padding: 70px 0 34px;
  }

  .course-hero-actions,
  .course-paper-row,
  .course-bottom-cta {
    align-items: stretch;
    flex-direction: column;
  }

  .course-hero-actions .btn,
  .course-paper-row a,
  .course-bottom-cta .btn {
    width: 100%;
  }
}

.college-rating-panel {
  display: grid;
  grid-template-columns: minmax(220px, 0.75fr) minmax(0, 1.25fr);
  gap: 18px;
  margin-bottom: 22px;
}

.college-rating-summary,
.college-rating-form,
.college-review-card,
.college-review-empty {
  border: 1px solid rgba(0, 48, 73, 0.1);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(0, 48, 73, 0.08);
}

.college-rating-summary {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 24px;
  background:
    linear-gradient(145deg, rgba(0, 48, 73, 0.98), rgba(0, 95, 115, 0.94));
  color: #fff;
}

.rating-kicker {
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 850;
  letter-spacing: 0;
  text-transform: uppercase;
}

.college-rating-summary strong {
  margin: 8px 0 4px;
  font-size: clamp(2rem, 6vw, 3.4rem);
  font-weight: 950;
  line-height: 1;
}

.college-rating-summary p {
  margin: 10px 0 0;
  color: rgba(255, 255, 255, 0.82);
}

.rating-stars {
  color: #fcbf49;
  display: flex;
  gap: 4px;
}

.college-rating-form {
  padding: 22px;
}

.college-rating-form .form-label {
  color: #003049;
  font-size: 0.88rem;
  font-weight: 800;
}

.college-rating-form .form-control,
.college-rating-form .form-select {
  min-height: 46px;
  border-color: rgba(0, 48, 73, 0.14);
  border-radius: 8px;
}

.college-rating-form textarea.form-control {
  min-height: 112px;
}

.college-review-list {
  display: grid;
  gap: 14px;
}

.college-review-card,
.college-review-empty {
  padding: 18px;
}

.college-review-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 14px;
}

.college-review-card strong {
  color: #003049;
  display: block;
  font-weight: 900;
}

.college-review-card span {
  color: #65758b;
  font-size: 0.9rem;
}

.college-review-card b {
  align-self: start;
  border-radius: 999px;
  background: rgba(252, 191, 73, 0.16);
  color: #9a5b00;
  padding: 6px 10px;
}

.college-review-card p {
  grid-column: 1 / -1;
  margin: 0;
  color: #344256;
}

.college-review-empty {
  color: #65758b;
  font-weight: 700;
  text-align: center;
}

.college-detail-premium {
  background: #f5f7fb;
  color: #10212b;
}

.college-detail-hero {
  position: relative;
  min-height: 520px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: #061d2b;
  color: #fff;
}

.college-detail-hero-bg {
  position: absolute;
  inset: 0;
}

.college-detail-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 25, 38, 0.92), rgba(3, 25, 38, 0.68) 48%, rgba(3, 25, 38, 0.32)),
    linear-gradient(0deg, rgba(3, 25, 38, 0.92), rgba(3, 25, 38, 0.1));
}

.college-detail-hero-bg img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.college-hero-content {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 28px;
  align-items: end;
  padding: 90px 0 54px;
}

.college-detail-kicker,
.section-heading span,
.college-hero-card span,
.approval-box span {
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.college-hero-copy h1 {
  max-width: 900px;
  margin: 10px 0 14px;
  font-size: clamp(2.1rem, 5vw, 4.6rem);
  font-weight: 950;
  line-height: 1.03;
}

.college-detail-meta,
.college-hero-actions,
.placement-logo-strip,
.facility-grid,
.college-detail-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.college-detail-meta span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 11px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.9);
  font-weight: 750;
}

.college-hero-copy p {
  max-width: 760px;
  margin: 18px 0 24px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 1.05rem;
  line-height: 1.65;
}

.college-hero-card {
  padding: 22px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(14px);
}

.college-hero-card strong {
  display: block;
  margin: 8px 0 6px;
  font-size: 3.4rem;
  font-weight: 950;
  line-height: 1;
}

.college-hero-card p {
  margin: 12px 0 0;
  color: rgba(255, 255, 255, 0.78);
}

.college-detail-shell {
  display: grid;
  grid-template-columns: 270px minmax(0, 1fr);
  gap: 24px;
  padding-top: 32px;
  padding-bottom: 56px;
}

.college-detail-sidebar {
  position: sticky;
  top: 88px;
  align-self: start;
  display: grid;
  gap: 16px;
}

.college-detail-nav,
.college-side-lead,
.college-premium-section {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.07);
}

.college-detail-nav {
  flex-direction: column;
  padding: 10px;
}

.college-detail-nav a {
  padding: 10px 12px;
  border-radius: 8px;
  color: #344256;
  font-weight: 850;
}

.college-detail-nav a:hover {
  background: #eef7fb;
  color: #003049;
}

.college-side-lead {
  padding: 18px;
}

.college-side-lead h3 {
  margin: 0 0 8px;
  color: #003049;
  font-size: 1.15rem;
  font-weight: 900;
}

.college-side-lead p {
  color: #65758b;
}

.college-detail-content {
  display: grid;
  gap: 22px;
}

.college-premium-section {
  padding: clamp(20px, 3vw, 30px);
  scroll-margin-top: 94px;
}

.section-heading {
  margin-bottom: 18px;
}

.section-heading span {
  color: #005f73;
}

.section-heading h2 {
  margin: 5px 0 0;
  color: #003049;
  font-size: clamp(1.45rem, 3vw, 2rem);
  font-weight: 950;
}

.college-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 250px;
  gap: 20px;
}

.rich-copy {
  color: #344256;
  line-height: 1.75;
}

.rich-copy p:last-child {
  margin-bottom: 0;
}

.college-info-line,
.approval-box,
.detail-info-card,
.placement-premium-card,
.infra-premium-card,
.scholarship-grid article {
  border: 1px solid #edf2f6;
  border-radius: 8px;
  background: #f8fafc;
}

.college-info-line {
  display: grid;
  gap: 5px;
  margin-top: 14px;
  padding: 14px;
}

.college-info-line b,
.detail-info-card b {
  color: #003049;
  font-weight: 900;
}

.approval-box {
  padding: 18px;
}

.approval-box div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.approval-box b {
  padding: 7px 10px;
  border-radius: 999px;
  background: #e9f8ee;
  color: #1b7f43;
  font-size: 0.86rem;
}

.premium-table-wrap {
  overflow-x: auto;
  border: 1px solid #edf2f6;
  border-radius: 8px;
}

.premium-table {
  width: 100%;
  min-width: 720px;
  border-collapse: collapse;
  background: #fff;
}

.premium-table th,
.premium-table td {
  padding: 14px 16px;
  border-bottom: 1px solid #edf2f6;
  vertical-align: top;
}

.premium-table th {
  background: #f0f6fa;
  color: #003049;
  font-weight: 900;
}

.premium-table td:first-child {
  color: #10212b;
  font-weight: 850;
}

.detail-card-grid,
.placement-premium-grid,
.infra-premium-list,
.scholarship-grid {
  display: grid;
  gap: 16px;
}

.detail-info-card,
.placement-premium-card,
.infra-premium-card,
.scholarship-grid article {
  padding: 18px;
}

.detail-info-card {
  display: grid;
  gap: 12px;
}

.detail-info-card p,
.scholarship-grid p {
  margin: 5px 0 0;
  color: #46576b;
}

.cutoff-list {
  display: grid;
  gap: 10px;
}

.cutoff-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 12px;
  align-items: center;
  padding: 13px 14px;
  border: 1px solid #edf2f6;
  border-radius: 8px;
  background: #f8fafc;
}

.cutoff-row strong {
  color: #003049;
}

.cutoff-row span {
  color: #65758b;
  font-weight: 750;
}

.cutoff-row b {
  color: #9a5b00;
}

.placement-logo-strip {
  margin-top: 16px;
}

.placement-logo-strip img {
  width: 118px;
  height: 64px;
  object-fit: contain;
  padding: 10px;
  border: 1px solid #edf2f6;
  border-radius: 8px;
  background: #fff;
}

.facility-grid {
  margin-top: 16px;
}

.facility-tile {
  min-width: 128px;
  flex: 1 1 128px;
  display: grid;
  place-items: center;
  gap: 8px;
  padding: 14px;
  border: 1px solid #edf2f6;
  border-radius: 8px;
  background: #fff;
  text-align: center;
}

.facility-tile img {
  width: 42px;
  height: 42px;
  object-fit: contain;
}

.facility-tile span {
  color: #344256;
  font-weight: 800;
}

.infra-media-grid,
.college-gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}

.infra-media-card {
  overflow: hidden;
  margin: 0;
  border: 1px solid #edf2f6;
  border-radius: 8px;
  background: #fff;
}

.infra-media-card img,
.infra-media-card video,
.review-video {
  width: 100%;
  display: block;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  background: #071f2e;
}

.infra-media-card a {
  display: grid;
  min-height: 160px;
  place-items: center;
  color: #003049;
  font-weight: 900;
}

.infra-media-card figcaption {
  padding: 10px 12px;
  color: #344256;
  font-weight: 800;
}

.scholarship-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.scholarship-grid h3 {
  margin: 0;
  color: #003049;
  font-size: 1.05rem;
  font-weight: 900;
}

.college-gallery-grid img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 8px;
}

.review-video {
  grid-column: 1 / -1;
  margin-top: 4px;
  border-radius: 8px;
}

@media (max-width: 767px) {
  .college-rating-panel,
  .college-review-card {
    grid-template-columns: 1fr;
  }

  .college-rating-summary,
  .college-rating-form,
  .college-review-card,
  .college-review-empty {
    box-shadow: 0 8px 22px rgba(0, 48, 73, 0.07);
  }
}

@media (max-width: 991px) {
  .college-hero-content,
  .college-detail-shell,
  .college-overview-grid {
    grid-template-columns: 1fr;
  }

  .college-detail-sidebar {
    position: static;
  }

  .college-detail-nav {
    flex-direction: row;
  }
}

@media (max-width: 575px) {
  .college-detail-hero {
    min-height: auto;
  }

  .college-hero-content {
    padding: 70px 0 34px;
  }

  .college-detail-meta,
  .college-hero-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .college-hero-actions .btn,
  .college-detail-meta span {
    width: 100%;
  }

  .college-premium-section {
    padding: 18px;
  }

  .cutoff-row,
  .infra-media-grid,
  .college-gallery-grid,
  .scholarship-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== Premium College Listing Page ===== */
.college-listing-hero {
  padding: clamp(72px, 10vw, 116px) 0 clamp(46px, 7vw, 76px);
  background:
    linear-gradient(135deg, rgba(0, 48, 73, 0.94), rgba(0, 95, 115, 0.82)),
    url("/static/images/banner1.5efc3e83a904.jpg") center/cover no-repeat;
  color: #fff;
  text-align: center;
}

.college-listing-hero .container {
  max-width: 900px;
}

.college-listing-hero span {
  display: inline-flex;
  margin-bottom: 12px;
  padding: 7px 13px;
  border-radius: 999px;
  background: rgba(255,255,255,0.14);
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 850;
  text-transform: uppercase;
}

.college-listing-hero h1 {
  margin: 0;
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 900;
  line-height: 1.1;
}

.college-listing-hero p {
  max-width: 760px;
  margin: 16px auto 0;
  color: rgba(255,255,255,0.88);
  font-size: 1.05rem;
  line-height: 1.7;
}

.college-hero-search {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  max-width: 720px;
  margin: 28px auto 0;
  padding: 8px;
  border-radius: 18px;
  background: rgba(255,255,255,0.14);
}

.college-hero-search input,
.college-filter-form input,
.college-filter-form select {
  width: 100%;
  min-height: 46px;
  border: 1px solid #d9e2ea;
  border-radius: 12px;
  padding: 0 13px;
  background: #fff;
  color: #10212b;
  outline: 0;
}

.college-hero-search button,
.filter-apply-btn {
  min-height: 46px;
  border: 0;
  border-radius: 12px;
  padding: 0 18px;
  background: #f77f00;
  color: #fff;
  font-weight: 850;
}

.college-hero-search button:hover,
.filter-apply-btn:hover {
  background: #d62828;
}

.college-directory {
  padding: clamp(34px, 6vw, 68px) 0;
  background: #f7fafc;
}

.college-directory-layout {
  display: grid;
  grid-template-columns: 310px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.college-filter-panel {
  position: sticky;
  top: 86px;
}

.filter-card,
.college-list-card,
.college-empty-state {
  border: 1px solid #e6edf3;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.08);
}

.filter-card {
  padding: 20px;
}

.filter-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.filter-heading h2 {
  margin: 0;
  color: #003049;
  font-size: 1.25rem;
  font-weight: 900;
}

.filter-heading a {
  color: #f77f00;
  font-weight: 800;
  text-decoration: none;
}

.college-filter-form {
  display: grid;
  gap: 13px;
}

.college-filter-form label {
  display: grid;
  gap: 7px;
  color: #263238;
  font-size: 0.88rem;
  font-weight: 800;
}

.filter-grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.college-results-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
}

.college-results-top span {
  color: #f77f00;
  font-size: 0.82rem;
  font-weight: 850;
  text-transform: uppercase;
}

.college-results-top h2 {
  margin: 4px 0 0;
  color: #003049;
  font-size: clamp(1.55rem, 3vw, 2rem);
  font-weight: 900;
}

.college-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.college-list-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.college-list-card:hover {
  transform: translateY(-5px);
  border-color: rgba(247, 127, 0, 0.34);
  box-shadow: 0 20px 44px rgba(0, 48, 73, 0.15);
}

.college-list-media {
  position: relative;
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #eef3f7;
}

.college-list-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

.college-list-media span {
  position: absolute;
  left: 12px;
  bottom: 12px;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(0, 48, 73, 0.88);
  color: #fff;
  font-size: 0.72rem;
  font-weight: 850;
}

.college-list-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 18px;
}

.college-list-body h3 {
  min-height: 2.6em;
  margin: 0 0 8px;
  font-size: 1.08rem;
  font-weight: 900;
  line-height: 1.3;
}

.college-list-body h3 a {
  color: #10212b;
  text-decoration: none;
}

.college-list-body h3 a:hover {
  color: #f77f00;
}

.college-list-meta {
  display: grid;
  gap: 6px;
  margin-bottom: 10px;
  color: #667481;
  font-size: 0.84rem;
  font-weight: 700;
}

.college-list-meta i {
  color: #f77f00;
}

.college-list-body p {
  min-height: 4.2em;
  margin-bottom: 13px;
  color: #667481;
  font-size: 0.92rem;
  line-height: 1.55;
}

.college-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 16px;
}

.college-chip-row span {
  padding: 4px 8px;
  border-radius: 999px;
  background: #eef7fb;
  color: #005f73;
  font-size: 0.72rem;
  font-weight: 800;
}

.mode-chip {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  border-radius: 999px;
  padding: 5px 10px;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1;
  border: 1px solid rgba(15, 23, 42, 0.12);
}

.mode-chip.regular {
  background: rgba(255, 184, 46, 0.18);
  color: #7a4a00;
  border-color: rgba(255, 184, 46, 0.4);
}

.mode-chip.online {
  background: rgba(14, 165, 233, 0.14);
  color: #075985;
  border-color: rgba(14, 165, 233, 0.32);
}

.course-mode-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
  margin: 16px 0 10px;
}

.course-mode-heading p {
  margin: 0;
  color: #64748b;
  font-weight: 700;
}

.compare-mode-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 2px;
}

/* ===== College Predictor Tool ===== */
.home-tools-section {
  padding: 70px 0;
  background: #f6fafc;
}

.home-tools-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 18px;
}

.home-tool-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  min-height: 290px;
  padding: 26px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(0, 48, 73, 0.08);
}

.home-tool-card.primary {
  background: linear-gradient(135deg, #003049, #07556d);
  color: #fff;
}

.home-tool-card i {
  display: inline-flex;
  width: 46px;
  height: 46px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(247, 127, 0, 0.13);
  color: #f77f00;
  font-size: 1.3rem;
}

.home-tool-card.primary i {
  background: rgba(252, 191, 73, 0.18);
  color: #fcbf49;
}

.home-tool-card span {
  color: #f77f00;
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.home-tool-card.primary span {
  color: #fcbf49;
}

.home-tool-card h3 {
  margin: 0;
  color: #003049;
  font-size: 1.35rem;
  font-weight: 900;
  line-height: 1.2;
}

.home-tool-card.primary h3 {
  color: #fff;
}

.home-tool-card p {
  flex: 1;
  margin: 0;
  color: #5d6d78;
  line-height: 1.6;
}

.home-tool-card.primary p {
  color: rgba(255, 255, 255, 0.82);
}

.rank-tool-page {
  background: #f6fafc;
}

.rank-tool-hero {
  position: relative;
  min-height: 360px;
  display: flex;
  align-items: center;
  overflow: hidden;
  color: #fff;
}

.rank-tool-bg {
  position: absolute;
  inset: 0;
}

.rank-tool-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.rank-tool-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0, 34, 51, 0.95), rgba(0, 48, 73, 0.74), rgba(0, 48, 73, 0.42));
}

.rank-tool-copy {
  position: relative;
  max-width: 780px;
  padding: 54px 0;
}

.rank-tool-copy span,
.rank-form-heading span,
.rank-results-heading span {
  color: #fcbf49;
  font-size: 0.82rem;
  font-weight: 900;
  text-transform: uppercase;
}

.rank-tool-copy h1 {
  margin: 12px 0;
  font-size: clamp(2.15rem, 5vw, 4.7rem);
  font-weight: 900;
  line-height: 1.05;
}

.rank-tool-copy p {
  max-width: 680px;
  margin: 0;
  color: rgba(255, 255, 255, 0.86);
  font-size: 1.08rem;
  line-height: 1.7;
}

.rank-tool-shell {
  display: grid;
  grid-template-columns: minmax(300px, 380px) minmax(0, 1fr);
  gap: 24px;
  padding-top: 24px;
  padding-bottom: 72px;
}

.predictor-workspace {
  padding-top: 34px;
  padding-bottom: 72px;
}

.predictor-tabs {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 7px;
  border: 1px solid #dce8ef;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.08);
}

.predictor-tabs button {
  min-height: 42px;
  border: 0;
  border-radius: 999px;
  padding: 9px 18px;
  background: transparent;
  color: #003049;
  font-weight: 900;
}

.predictor-tabs button.active {
  background: #003049;
  color: #fff;
}

.predictor-messages {
  margin-bottom: 16px;
}

.rank-tool-form,
.rank-tool-results,
.rank-result-card,
.rank-tool-placeholder,
.rank-empty-state,
.answer-key-card,
.answer-notify-form {
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(0, 48, 73, 0.08);
}

.rank-tool-form {
  position: sticky;
  top: 92px;
  align-self: start;
  display: grid;
  gap: 14px;
  padding: 24px;
}

.answer-key-planner {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
  gap: 24px;
  padding-top: 24px;
}

.answer-key-card,
.answer-notify-form {
  padding: 26px;
}

.answer-analyzer-window {
  min-width: 0;
  padding: 26px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(0, 48, 73, 0.08);
}

.answer-key-selector {
  display: grid;
  gap: 14px;
  margin-top: 18px;
}

.answer-key-card > span {
  color: #f77f00;
  font-size: 0.82rem;
  font-weight: 900;
  text-transform: uppercase;
}

.answer-key-card h2 {
  margin: 8px 0 10px;
  color: #003049;
  font-weight: 900;
}

.answer-key-card p,
.answer-notify-form > p {
  color: #667481;
  line-height: 1.6;
}

.answer-flow-grid {
  display: grid;
  gap: 12px;
  margin-top: 20px;
}

.answer-flow-grid article {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 12px;
  align-items: center;
  padding: 14px;
  border-radius: 8px;
  background: #f6fafc;
}

.answer-flow-grid b {
  display: inline-flex;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #003049;
  color: #fcbf49;
}

.answer-flow-grid span {
  color: #263238;
  font-weight: 700;
}

.answer-notify-form {
  display: grid;
  gap: 14px;
}

.answer-notify-form label,
.answer-key-selector label,
.score-calculator-form label {
  display: grid;
  gap: 7px;
  color: #263238;
  font-size: 0.9rem;
  font-weight: 800;
}

.answer-notify-form input,
.answer-notify-form select,
.answer-key-selector input,
.answer-key-selector select,
.score-calculator-form input,
.score-calculator-form select {
  min-height: 46px;
  border: 1px solid #d9e2ea;
  border-radius: 8px;
  padding: 0 12px;
  background: #f8fafc;
  color: #10212b;
}

.answer-notify-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.answer-key-status {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 14px 0 18px;
}

.answer-key-status span {
  border-radius: 999px;
  padding: 6px 10px;
  background: #eef7fb;
  color: #005f73;
  font-size: 0.78rem;
  font-weight: 900;
}

.answer-key-instructions {
  margin: 0 0 18px;
  padding: 14px;
  border-radius: 8px;
  background: #fff8e7;
  color: #5c3b00;
  line-height: 1.55;
}

.score-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 18px;
}

.score-summary-grid article {
  padding: 14px;
  border-radius: 8px;
  background: #f6fafc;
}

.score-summary-grid span {
  display: block;
  color: #64748b;
  font-size: 0.78rem;
  font-weight: 800;
}

.score-summary-grid b {
  display: block;
  margin-top: 4px;
  color: #003049;
  font-size: 1.35rem;
  font-weight: 900;
}

.section-score-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 10px;
  margin: 0 0 18px;
}

.section-score-grid article {
  padding: 14px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #fff;
}

.section-score-grid span {
  display: block;
  color: #f77f00;
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.section-score-grid b {
  display: block;
  margin-top: 4px;
  color: #003049;
  font-size: 1.25rem;
  font-weight: 900;
}

.section-score-grid small {
  display: block;
  margin-top: 4px;
  color: #64748b;
  font-weight: 700;
}

.trend-insight-panel {
  margin-bottom: 18px;
  padding: 16px;
  border: 1px solid rgba(0, 48, 73, 0.14);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(0, 48, 73, 0.06), rgba(252, 191, 73, 0.1));
}

.trend-insight-panel > span {
  display: inline-flex;
  margin-bottom: 8px;
  color: #003049;
  font-size: 0.82rem;
  font-weight: 900;
  text-transform: uppercase;
}

.trend-insight-panel p {
  margin: 0 0 7px;
  color: #4b5d68;
  line-height: 1.55;
}

.ai-insight-copy {
  color: #263238;
  font-weight: 700;
  line-height: 1.6;
}

.score-calculator-form {
  display: grid;
  gap: 16px;
}

.answer-method-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.manual-answer-board {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(88px, 1fr));
  gap: 10px;
  max-height: 360px;
  overflow-y: auto;
  padding: 12px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #f8fafc;
}

.manual-answer-board label {
  gap: 5px;
  font-size: 0.78rem;
}

.manual-answer-board input,
.manual-answer-board select {
  min-height: 38px;
  background: #fff;
}

.manual-answer-board span {
  color: #003049;
  font-weight: 900;
}

.manual-answer-board small {
  color: #64748b;
  font-weight: 700;
}

.score-detail-table {
  display: grid;
  grid-template-columns: auto auto 1fr;
  gap: 8px 10px;
  margin-top: 18px;
  padding: 14px;
  border-radius: 8px;
  background: #f8fafc;
}

.score-detail-table span,
.score-detail-table b,
.score-detail-table em {
  font-size: 0.86rem;
}

.score-detail-table em {
  font-style: normal;
  font-weight: 900;
}

.score-detail-table em.correct {
  color: #166534;
}

.score-detail-table em.wrong {
  color: #991b1b;
}

.score-detail-table em.unattempted {
  color: #64748b;
}

.score-detail-table em.bonus {
  color: #075985;
}

.score-detail-table em.dropped {
  color: #7a4a00;
}

.answer-analyzer-page {
  background: #f6fafc;
  min-height: 100vh;
}

.answer-analyzer-hero {
  padding: 54px 0 42px;
  background: linear-gradient(135deg, #002233, #003049);
  color: #fff;
}

.answer-analyzer-hero span {
  color: #fcbf49;
  font-size: 0.82rem;
  font-weight: 900;
  text-transform: uppercase;
}

.answer-analyzer-hero h1 {
  max-width: 920px;
  margin: 10px 0;
  font-size: clamp(2rem, 4vw, 4.2rem);
  font-weight: 900;
  line-height: 1.08;
}

.answer-analyzer-hero p {
  max-width: 760px;
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
  font-size: 1.05rem;
  line-height: 1.65;
}

.analyzer-back-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
  color: #fff;
  text-decoration: none;
  font-weight: 800;
}

.answer-analyzer-layout {
  display: grid;
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
  gap: 24px;
  padding-top: 34px;
  padding-bottom: 72px;
}

.analyzer-side-panel,
.answer-analyzer-form,
.analyzer-score-panel,
.answer-review-panel {
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(0, 48, 73, 0.08);
}

.analyzer-side-panel {
  position: sticky;
  top: 92px;
  align-self: start;
  padding: 24px;
}

.answer-analyzer-main {
  display: grid;
  gap: 20px;
  min-width: 0;
}

.answer-analyzer-form,
.analyzer-score-panel,
.answer-review-panel {
  padding: 24px;
}

.analyzer-mode-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.omr-mode-card p,
.attempt-mode-card p,
.omr-mode-card small {
  margin: 0;
  color: #64748b;
  line-height: 1.6;
  font-weight: 700;
}

.attempt-section-jump {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.attempt-section-jump a {
  border-radius: 999px;
  padding: 7px 11px;
  background: #eef7fb;
  color: #005f73;
  text-decoration: none;
  font-size: 0.82rem;
  font-weight: 900;
}

.paper-attempt-form {
  display: grid;
  gap: 22px;
}

.attempt-section {
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(0, 48, 73, 0.08);
  overflow: hidden;
}

.attempt-section-heading {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 18px 22px;
  border-bottom: 1px solid #dce8ef;
  background: #f8fafc;
}

.attempt-section-heading span {
  color: #003049;
  font-size: 1.1rem;
  font-weight: 900;
}

.attempt-section-heading b {
  color: #64748b;
}

.attempt-question-list {
  display: grid;
  gap: 16px;
  padding: 20px;
}

.attempt-question-card {
  border: 1px solid #dce8ef;
  border-radius: 8px;
  padding: 18px;
  background: #fff;
}

.attempt-question-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 14px;
}

.attempt-question-head span {
  color: #f77f00;
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.attempt-question-head h3 {
  margin: 3px 0 0;
  color: #003049;
  font-size: 1.08rem;
  font-weight: 900;
}

.attempt-question-head b {
  flex: 0 0 auto;
  border-radius: 999px;
  padding: 6px 10px;
  background: #eef7fb;
  color: #005f73;
  font-size: 0.82rem;
}

.attempt-question-text {
  margin-bottom: 14px;
  color: #263238;
  line-height: 1.65;
}

.attempt-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.attempt-options label {
  display: grid;
  grid-template-columns: auto 34px 1fr;
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 12px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #f8fafc;
  cursor: pointer;
}

.attempt-options input {
  width: 18px;
  height: 18px;
}

.attempt-options span {
  display: inline-flex;
  width: 30px;
  height: 30px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #003049;
  color: #fcbf49;
  font-weight: 900;
}

.attempt-options b {
  min-width: 0;
  color: #263238;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.numerical-answer {
  display: grid;
  gap: 8px;
  color: #263238;
  font-weight: 900;
}

.numerical-answer input {
  min-height: 46px;
  border: 1px solid #d9e2ea;
  border-radius: 8px;
  padding: 0 12px;
}

.attempt-submit-bar {
  position: sticky;
  bottom: 14px;
  display: flex;
  justify-content: flex-end;
  padding: 14px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(12px);
  box-shadow: 0 16px 34px rgba(0, 48, 73, 0.12);
  z-index: 2;
}

.analyzer-help-list {
  display: grid;
  gap: 10px;
  margin-top: 18px;
}

.analyzer-help-list article {
  display: grid;
  grid-template-columns: 76px 1fr;
  gap: 10px;
  align-items: center;
  padding: 12px;
  border-radius: 8px;
  background: #f6fafc;
}

.analyzer-help-list b {
  color: #003049;
  font-weight: 900;
}

.analyzer-help-list span {
  color: #64748b;
  font-weight: 700;
  line-height: 1.4;
}

.answer-analyzer-form {
  display: grid;
  gap: 16px;
}

.analyzer-answer-board {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  max-height: none;
  overflow: visible;
}

.analyzer-answer-board label {
  min-width: 0;
  padding: 10px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #fff;
}

.analyzer-answer-board input {
  width: 100%;
}

.analyzer-detail-table {
  grid-template-columns: minmax(56px, auto) minmax(70px, auto) minmax(0, 1fr);
}

.analyzer-open-panel {
  display: grid;
  gap: 14px;
  margin-top: 18px;
  padding: 18px;
  border-radius: 8px;
  background: #f6fafc;
}

.analyzer-open-panel p {
  margin: 0;
  color: #64748b;
  line-height: 1.6;
  font-weight: 700;
}

@media (max-width: 991px) {
  .answer-analyzer-layout {
    grid-template-columns: 1fr;
  }

  .analyzer-side-panel {
    position: static;
  }

  .analyzer-mode-grid,
  .attempt-options {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .answer-analyzer-hero {
    padding: 42px 0 32px;
  }

  .answer-analyzer-layout {
    padding-top: 22px;
    padding-bottom: 48px;
  }

  .answer-analyzer-form,
  .analyzer-score-panel,
  .answer-review-panel,
  .analyzer-side-panel {
    padding: 18px;
  }

  .analyzer-answer-board {
    grid-template-columns: 1fr;
  }
}

.rank-form-heading h2,
.rank-results-heading h2 {
  margin: 4px 0 0;
  color: #003049;
  font-weight: 900;
}

.rank-tool-form label {
  display: grid;
  gap: 7px;
  color: #263238;
  font-size: 0.9rem;
  font-weight: 800;
}

.rank-tool-form input,
.rank-tool-form select {
  min-height: 46px;
  border: 1px solid #d9e2ea;
  border-radius: 8px;
  padding: 0 12px;
  background: #f8fafc;
  color: #10212b;
}

.rank-form-actions,
.rank-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.rank-tool-form > p {
  margin: 0;
  color: #6b7a86;
  font-size: 0.86rem;
  line-height: 1.5;
}

.rank-tool-results {
  min-width: 0;
  padding: 24px;
}

.rank-results-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-bottom: 20px;
}

.rank-result-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.rank-result-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 20px;
  box-shadow: none;
}

.rank-result-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

.rank-result-top b {
  color: #003049;
}

.rank-match {
  display: inline-flex;
  width: fit-content;
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 0.76rem;
  font-weight: 900;
}

.rank-match.strong {
  background: rgba(22, 163, 74, 0.12);
  color: #166534;
}

.rank-match.good {
  background: rgba(14, 165, 233, 0.13);
  color: #075985;
}

.rank-match.ambitious {
  background: rgba(252, 191, 73, 0.2);
  color: #7a4a00;
}

.rank-match.reach {
  background: rgba(214, 40, 40, 0.1);
  color: #991b1b;
}

.rank-result-card h3 {
  margin: 0;
  color: #003049;
  font-size: 1.22rem;
  font-weight: 900;
}

.rank-result-card h3 a {
  color: inherit;
  text-decoration: none;
}

.rank-result-card p,
.rank-result-meta {
  margin: 0;
  color: #667481;
  line-height: 1.5;
}

.rank-course-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.rank-course-tags span {
  border-radius: 999px;
  padding: 5px 9px;
  background: #eef7fb;
  color: #005f73;
  font-size: 0.76rem;
  font-weight: 800;
}

.rank-result-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  font-size: 0.88rem;
}

.rank-result-meta b {
  color: #003049;
}

.rank-tool-placeholder,
.rank-empty-state {
  padding: 34px;
  text-align: center;
  box-shadow: none;
}

.rank-tool-placeholder i {
  color: #f77f00;
  font-size: 2.4rem;
}

.rank-tool-placeholder h3,
.rank-empty-state h3 {
  margin: 12px 0 8px;
  color: #003049;
  font-weight: 900;
}

.rank-tool-placeholder p,
.rank-empty-state p {
  max-width: 520px;
  margin: 0 auto 16px;
  color: #667481;
}

@media (max-width: 991px) {
  .home-tools-grid,
  .rank-tool-shell,
  .answer-key-planner {
    grid-template-columns: 1fr;
  }

  .rank-tool-form {
    position: static;
  }

  .rank-results-heading {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 575px) {
  .home-tools-section {
    padding: 48px 0;
  }

  .home-tool-card,
  .rank-tool-form,
  .rank-tool-results {
    padding: 20px;
  }

  .rank-result-grid,
  .answer-notify-grid,
  .answer-method-grid,
  .score-summary-grid {
    grid-template-columns: 1fr;
  }

  .predictor-tabs {
    width: 100%;
    border-radius: 8px;
  }

  .predictor-tabs li,
  .predictor-tabs button {
    width: 100%;
  }
}

.college-card-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: auto;
}

.college-empty-state {
  grid-column: 1 / -1;
  padding: 34px;
  text-align: center;
}

.college-empty-state h3 {
  color: #003049;
  font-weight: 900;
}

.college-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 28px;
}

.college-pagination a,
.college-pagination span {
  min-width: 38px;
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #d9e2ea;
  border-radius: 10px;
  background: #fff;
  color: #003049;
  font-weight: 850;
  text-decoration: none;
}

.college-pagination .active,
.college-pagination a:hover {
  border-color: #f77f00;
  background: #f77f00;
  color: #fff;
}

@media (max-width: 1199px) {
  .college-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991px) {
  .college-directory-layout {
    grid-template-columns: 1fr;
  }

  .college-filter-panel {
    position: static;
  }
}

@media (max-width: 575px) {
  .college-hero-search,
  .college-results-top,
  .college-card-actions {
    grid-template-columns: 1fr;
  }

  .college-results-top {
    display: grid;
    align-items: stretch;
  }

  .college-grid {
    grid-template-columns: 1fr;
  }

  .filter-grid-2 {
    grid-template-columns: 1fr;
  }
}

/* ===== Exam Papers Growth Feature ===== */
.exam-card-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.section-block .btn-paper {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border: 1px solid #f77f00;
  border-radius: 10px;
  background: #fff4df;
  color: #9b4a00;
  font-weight: 800;
}

.section-block .btn-paper:hover {
  background: #f77f00;
  color: #fff;
}

.papers-hero {
  padding: clamp(74px, 10vw, 118px) 0 clamp(48px, 7vw, 78px);
  background:
    linear-gradient(135deg, rgba(0, 48, 73, 0.94), rgba(0, 95, 115, 0.86)),
    url("/static/images/banner3.f7f318a4d569.jpg") center/cover no-repeat;
  color: #fff;
  text-align: center;
}

.papers-hero .container {
  max-width: 860px;
}

.papers-hero span,
.paper-block-heading span {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 7px 13px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.papers-hero h1 {
  margin: 0;
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 900;
  line-height: 1.1;
}

.papers-hero p {
  max-width: 720px;
  margin: 16px auto 0;
  color: rgba(255, 255, 255, 0.88);
  font-size: 1.05rem;
  line-height: 1.7;
}

.papers-search {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  max-width: 680px;
  margin: 28px auto 0;
  padding: 8px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.14);
}

.papers-search input {
  min-height: 48px;
  border: 0;
  border-radius: 12px;
  padding: 0 16px;
}

.papers-search button,
.btn-primary-soft,
.btn-outline-soft,
.btn-apply-soft {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border-radius: 11px;
  padding: 10px 16px;
  font-weight: 850;
  text-decoration: none;
}

.papers-search button,
.btn-primary-soft {
  border: 0;
  background: #f77f00;
  color: #fff;
}

.papers-search button:hover,
.btn-primary-soft:hover {
  background: #d62828;
  color: #fff;
}

.btn-apply-soft {
  border: 0;
  color: #ffffff;
  background: linear-gradient(135deg, #dc2626, #f97316);
  box-shadow: 0 12px 26px rgba(220, 38, 38, 0.22);
}

.btn-apply-soft:hover {
  color: #ffffff;
  background: linear-gradient(135deg, #b91c1c, #ea580c);
  box-shadow: 0 16px 32px rgba(220, 38, 38, 0.3);
}

.btn-outline-soft {
  border: 1px solid #d9e2ea;
  background: #fff;
  color: #003049;
}

.btn-outline-soft:hover {
  border-color: #f77f00;
  color: #f77f00;
}

.papers-list-section,
.paper-detail-section {
  padding: clamp(42px, 6vw, 76px) 0;
  background: #f7fafc;
}

.papers-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.paper-exam-card {
  overflow: hidden;
  border: 1px solid #e6edf3;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.08);
}

.paper-exam-media {
  aspect-ratio: 16 / 10;
  background: #eef3f7;
}

.paper-exam-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.paper-exam-body {
  padding: 18px;
}

.paper-count {
  display: inline-flex;
  margin-bottom: 9px;
  padding: 4px 9px;
  border-radius: 999px;
  background: #eef7fb;
  color: #005f73;
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.paper-exam-body h2 {
  margin: 0 0 8px;
  color: #10212b;
  font-size: 1.15rem;
  font-weight: 850;
}

.paper-exam-body p {
  min-height: 4.2em;
  color: #667481;
  line-height: 1.55;
}

.paper-exam-actions,
.paper-detail-actions,
.exam-paper-cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.papers-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  margin-top: 32px;
}

.papers-pagination a {
  color: #003049;
  font-weight: 800;
}

.paper-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 24px;
}

.paper-block,
.paper-lead-card,
.paper-exam-summary,
.exam-paper-cta {
  border: 1px solid #e6edf3;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0, 48, 73, 0.08);
}

.paper-block {
  padding: 24px;
  margin-bottom: 22px;
}

.paper-block-heading span {
  background: #fff4df;
}

.paper-block-heading h2 {
  margin: 0 0 18px;
  color: #003049;
  font-weight: 900;
}

.paper-download-list {
  display: grid;
  gap: 12px;
}

.paper-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px;
  border: 1px solid #edf2f6;
  border-radius: 12px;
  background: #f8fafc;
}

.paper-row span {
  color: #667481;
  font-size: 0.82rem;
  font-weight: 750;
}

.paper-row h3 {
  margin: 4px 0 0;
  color: #10212b;
  font-size: 1rem;
  font-weight: 850;
}

.paper-empty-state {
  padding: 22px;
  border-radius: 12px;
  background: #f8fafc;
}

.paper-sidebar {
  display: grid;
  gap: 18px;
  align-content: start;
}

.paper-lead-card,
.paper-exam-summary {
  padding: 22px;
}

.paper-lead-card h3,
.paper-exam-summary h3,
.paper-empty-state h3 {
  color: #003049;
  font-weight: 900;
}

.exam-paper-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 24px;
  padding: 24px;
  background:
    linear-gradient(135deg, rgba(0, 48, 73, 0.96), rgba(0, 95, 115, 0.9));
  color: #fff;
}

.exam-paper-cta span {
  color: #fcbf49;
  font-size: 0.78rem;
  font-weight: 850;
  text-transform: uppercase;
}

.exam-paper-cta h2 {
  margin: 6px 0 8px;
  font-weight: 900;
}

.exam-paper-cta p {
  margin: 0;
  color: rgba(255,255,255,0.84);
}

@media (max-width: 991px) {
  .papers-grid,
  .paper-layout {
    grid-template-columns: 1fr;
  }

  .papers-grid {
    gap: 18px;
  }

  .exam-paper-cta {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 575px) {
  .papers-search {
    grid-template-columns: 1fr;
  }

  .paper-row,
  .paper-exam-actions,
  .paper-detail-actions,
  .exam-paper-cta-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .paper-row .btn-primary-soft,
  .paper-exam-actions a,
  .paper-detail-actions a,
  .paper-detail-actions button,
  .exam-paper-cta-actions a,
  .exam-paper-cta-actions button {
    width: 100%;
  }
}

/* ===== Preparation Hub ===== */
.exam-prep-section {
  overflow: hidden;
}

.prep-hub-highlight,
.prep-page .prep-hero,
.prep-reader,
.prep-library,
.prep-tests aside,
.prep-empty-card,
.prep-test-card,
.prep-preview-card {
  border: 1px solid rgba(0, 53, 76, 0.1);
}

.prep-hub-highlight {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 22px;
  align-items: center;
  padding: 24px;
  border-radius: 8px;
  background: linear-gradient(135deg, #fff8e6, #f3fbff);
  margin-bottom: 22px;
}

.prep-badge,
.prep-preview-card span,
.prep-test-card span,
.prep-series-list span,
.prep-reader-head span,
.prep-resource-list span,
.prep-hero aside span {
  display: inline-flex;
  color: #00364f;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.prep-hub-highlight h3 {
  color: #002f45;
  font-size: 26px;
  line-height: 1.2;
  margin: 8px 0;
}

.prep-hub-highlight p,
.prep-preview-card p,
.prep-test-card p,
.prep-series-list p,
.prep-reader-head p,
.prep-empty-card p,
.prep-demo-notes p,
.prep-demo-notes li,
.prep-hero p,
.prep-hero aside p {
  color: #516577;
  line-height: 1.65;
}

.prep-hub-grid,
.prep-preview-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.prep-hub-grid article,
.prep-preview-card {
  border-radius: 8px;
  padding: 20px;
  background: #ffffff;
  box-shadow: 0 14px 38px rgba(0, 47, 69, 0.08);
}

.prep-hub-grid i {
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  border-radius: 8px;
  background: #00364f;
  color: #ffb72b;
  font-size: 20px;
  margin-bottom: 14px;
}

.prep-hub-grid span,
.prep-hub-grid strong {
  display: block;
}

.prep-hub-grid span {
  color: #6a7c8a;
  font-weight: 700;
}

.prep-hub-grid strong {
  color: #002f45;
  font-size: 22px;
  margin: 4px 0 8px;
}

.prep-preview-grid {
  margin-top: 18px;
}

.prep-preview-card h3 {
  color: #002f45;
  font-size: 19px;
  margin: 8px 0;
}

.prep-page {
  background: #f6fafc;
}

.practice-test-page {
  background: #f6fafc;
  min-height: 100vh;
}

.practice-test-hero {
  padding: 54px 0 42px;
  color: #ffffff;
  background:
    linear-gradient(125deg, rgba(0, 33, 48, 0.96), rgba(0, 63, 83, 0.92)),
    url("../images/banner3.f7f318a4d569.jpg") center/cover no-repeat;
}

.practice-test-hero > .container > span {
  color: #ffbe3d;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

.practice-test-hero h1 {
  max-width: 1000px;
  margin: 10px 0;
  font-size: clamp(34px, 5vw, 66px);
  font-weight: 900;
  line-height: 1.06;
}

.practice-test-hero p {
  max-width: 880px;
  color: rgba(255, 255, 255, 0.82);
  font-size: 18px;
  line-height: 1.65;
}

.practice-test-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.practice-test-meta b {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  color: #ffffff;
  font-size: 14px;
}

.practice-test-layout {
  display: grid;
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
  gap: 24px;
  padding-top: 34px;
  padding-bottom: 72px;
}

.practice-test-side,
.practice-result-panel,
.practice-related-notes {
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 44px rgba(0, 48, 73, 0.08);
}

.practice-test-side {
  position: sticky;
  top: 92px;
  align-self: start;
  padding: 24px;
}

.practice-test-main {
  display: grid;
  gap: 20px;
  min-width: 0;
}

.practice-result-panel,
.practice-related-notes {
  padding: 24px;
}

.practice-series-note {
  margin: 16px 0;
  padding: 16px;
  border-radius: 8px;
  background: #f6fafc;
  border: 1px solid #dce8ef;
}

.practice-series-note span {
  color: #f77f00;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.practice-series-note strong {
  display: block;
  color: #003049;
  font-size: 18px;
  margin: 5px 0;
}

.practice-series-note p {
  margin: 0;
  color: #64748b;
  font-weight: 700;
}

.header-login {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  color: #ffffff;
  text-decoration: none;
  font-weight: 800;
  white-space: nowrap;
}

.header-login:hover {
  color: #ffbe3d;
  background: rgba(255, 255, 255, 0.16);
}

.header-signup {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 15px;
  border-radius: 999px;
  background: #ffbe3d;
  color: #082b3d;
  text-decoration: none;
  font-weight: 900;
  white-space: nowrap;
}

.header-signup:hover {
  color: #082b3d;
  background: #ffffff;
}

.practice-timer-card {
  margin: 16px 0;
  padding: 16px;
  border-radius: 8px;
  background: #002f45;
  color: #ffffff;
}

.practice-timer-card span {
  color: #ffbe3d;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.practice-timer-card strong {
  display: block;
  font-size: 36px;
  line-height: 1;
  margin: 8px 0;
}

.practice-timer-card p {
  margin: 0;
  color: rgba(255, 255, 255, 0.76);
  font-weight: 700;
}

.practice-rank-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 18px;
}

.practice-rank-strip article {
  padding: 16px;
  border-radius: 8px;
  background: #fff8e8;
}

.practice-rank-strip span {
  display: block;
  color: #7a4a00;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.practice-rank-strip b {
  display: block;
  color: #002f45;
  font-size: 28px;
  margin-top: 4px;
}

.subject-performance-bar {
  height: 8px;
  margin-top: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: #e5eef4;
}

.subject-performance-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #00a676, #ffbe3d);
}

.student-auth-page,
.student-dashboard-page {
  background: #f6fafc;
  min-height: 100vh;
}

.student-auth-shell {
  width: min(1120px, calc(100% - 32px));
  margin: 0 auto;
  padding: 58px 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 420px;
  gap: 28px;
  align-items: stretch;
}

.student-auth-panel,
.student-auth-form,
.dashboard-block,
.student-stat-grid article,
.dashboard-test-card {
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 44px rgba(0, 48, 73, 0.08);
}

.student-auth-panel {
  padding: 38px;
  color: #ffffff;
  background:
    linear-gradient(135deg, rgba(0, 34, 51, 0.96), rgba(0, 72, 93, 0.88)),
    url("../images/banner1.5efc3e83a904.jpg") center/cover no-repeat;
}

.student-auth-panel > span,
.student-dashboard-hero span {
  color: #ffbe3d;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

.student-auth-panel h1 {
  max-width: 620px;
  margin: 10px 0;
  font-size: clamp(34px, 5vw, 60px);
  line-height: 1.05;
}

.student-auth-panel p,
.student-dashboard-hero p {
  color: rgba(255, 255, 255, 0.78);
  line-height: 1.65;
  font-size: 18px;
}

.student-auth-benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 28px;
}

.student-auth-benefits article {
  padding: 16px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.1);
}

.student-auth-benefits i {
  display: block;
  color: #ffbe3d;
  font-size: 24px;
  margin-bottom: 10px;
}

.student-auth-benefits b {
  color: #ffffff;
}

.student-auth-form {
  padding: 30px;
  display: grid;
  gap: 15px;
}

.student-auth-switch {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 7px;
  border-radius: 999px;
  background: #edf5f8;
}

.student-auth-switch a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border-radius: 999px;
  color: #003049;
  text-decoration: none;
  font-weight: 900;
}

.student-auth-switch a.active {
  color: #ffffff;
  background: #003049;
}

.student-signup-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.student-signup-grid label:nth-last-child(-n+2) {
  grid-column: 1 / -1;
}

.student-login-grid {
  display: grid;
  gap: 12px;
}

.student-auth-form label {
  display: grid;
  gap: 7px;
  color: #263238;
  font-weight: 800;
}

.student-auth-form input,
.student-auth-form select {
  min-height: 46px;
  border: 1px solid #d9e2ea;
  border-radius: 8px;
  padding: 0 12px;
  background: #ffffff;
}

.student-auth-form small {
  color: #991b1b;
}

.student-consent-row {
  grid-column: 1 / -1;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px !important;
  align-items: flex-start;
  padding: 13px 14px;
  border: 1px solid #d9e2ea;
  border-radius: 8px;
  background: #f8fafc;
}

.student-consent-row input {
  width: 18px;
  height: 18px;
  min-height: 18px;
  margin-top: 3px;
  padding: 0;
}

.student-consent-row span {
  color: #263238;
  line-height: 1.45;
  font-size: 14px;
}

.student-consent-row small {
  grid-column: 1 / -1;
}

.student-auth-form p {
  margin: 0;
  color: #64748b;
  font-weight: 700;
}

.student-auth-form a {
  color: #003049;
  font-weight: 900;
}

.student-dashboard-hero {
  padding: 42px 0;
  color: #ffffff;
  background: linear-gradient(135deg, #002233, #003f53);
}

.student-dashboard-hero .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}

.student-dashboard-hero h1 {
  max-width: 880px;
  margin: 8px 0;
  font-size: clamp(32px, 4vw, 56px);
}

.student-dashboard-shell {
  padding-top: 32px;
  padding-bottom: 72px;
}

.student-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 24px;
}

.student-stat-grid article {
  padding: 20px;
}

.student-stat-grid span,
.dashboard-test-card span,
.dashboard-attempt-list span,
.dashboard-mini-list span {
  display: block;
  color: #f77f00;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.student-stat-grid b {
  display: block;
  color: #002f45;
  font-size: 32px;
  margin-top: 6px;
}

.admission-stat-grid b {
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.dashboard-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 24px;
  align-items: start;
}

.dashboard-layout > div,
.dashboard-layout aside {
  display: grid;
  gap: 24px;
}

.dashboard-block {
  padding: 24px;
}

.dashboard-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.dashboard-test-card {
  padding: 18px;
  box-shadow: none;
}

.dashboard-test-card h3,
.dashboard-attempt-list h3,
.dashboard-mini-list h3 {
  color: #002f45;
  font-size: 18px;
  margin: 6px 0;
}

.dashboard-test-card p,
.dashboard-attempt-list p,
.dashboard-mini-list p {
  color: #64748b;
  line-height: 1.55;
}

.dashboard-attempt-list {
  display: grid;
  gap: 12px;
}

.dashboard-attempt-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 14px;
  align-items: center;
  padding: 16px;
  border-radius: 8px;
  background: #f8fafc;
  border: 1px solid #dce8ef;
}

.attempt-score-pill {
  min-width: 130px;
  text-align: right;
}

.attempt-score-pill b {
  display: block;
  color: #002f45;
  font-size: 24px;
}

.attempt-score-pill small {
  color: #64748b;
  font-weight: 700;
}

.dashboard-mini-list {
  display: grid;
  gap: 12px;
}

.dashboard-mini-list article {
  padding: 14px;
  border-radius: 8px;
  background: #f8fafc;
  border: 1px solid #dce8ef;
}

.dashboard-mini-list a {
  color: #003049;
  font-weight: 900;
}

.dashboard-message-stack {
  display: grid;
  gap: 10px;
  margin-bottom: 18px;
}

.dashboard-message-stack p {
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #c7ead7;
  border-radius: 8px;
  color: #135c34;
  background: #effaf3;
  font-weight: 800;
}

.admission-planner-block {
  margin-bottom: 24px;
}

.admission-planner-form {
  display: grid;
  gap: 18px;
}

.admission-form-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.admission-form-grid label {
  display: grid;
  gap: 7px;
  min-width: 0;
  color: #263238;
  font-weight: 850;
}

.admission-form-grid label > span {
  font-size: 13px;
}

.admission-form-grid input,
.admission-form-grid select {
  width: 100%;
  min-height: 46px;
  border: 1px solid #d9e2ea;
  border-radius: 8px;
  padding: 0 12px;
  background: #ffffff;
}

.admission-form-grid small {
  color: #991b1b;
}

.admission-check-row {
  display: flex !important;
  align-items: center;
  gap: 10px !important;
  min-height: 46px;
  padding: 11px 12px;
  border: 1px solid #d9e2ea;
  border-radius: 8px;
  background: #f8fafc;
}

.admission-check-row input {
  width: 18px;
  min-height: 18px;
  height: 18px;
  padding: 0;
}

.dashboard-college-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.dashboard-college-card {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 16px;
  padding: 14px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 12px 32px rgba(0, 48, 73, 0.07);
}

.dashboard-college-card img,
.dashboard-college-placeholder {
  width: 112px;
  aspect-ratio: 1;
  border-radius: 8px;
  object-fit: cover;
  background: #eaf3f7;
}

.dashboard-college-placeholder {
  display: grid;
  place-items: center;
  color: #003049;
  font-size: 34px;
  font-weight: 950;
}

.college-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.college-chip-row span {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  color: #00415d;
  background: #eaf7fb;
  font-size: 12px;
  font-weight: 900;
}

.dashboard-college-card h3,
.dashboard-shortlist h3 {
  margin: 8px 0 4px;
  color: #002f45;
  font-size: 19px;
  line-height: 1.25;
}

.dashboard-college-card p,
.dashboard-shortlist p,
.dashboard-muted {
  color: #64748b;
  line-height: 1.5;
  font-weight: 700;
}

.dashboard-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}

.dashboard-card-actions form {
  margin: 0;
}

.dashboard-shortlist {
  display: grid;
  gap: 10px;
}

.dashboard-shortlist article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 13px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #f8fafc;
}

.dashboard-shortlist h3 {
  font-size: 16px;
}

.dashboard-shortlist form {
  margin: 0;
}

.dashboard-shortlist button {
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 50%;
  color: #991b1b;
  background: #fee2e2;
  font-size: 22px;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
}

.dashboard-compare-link {
  width: 100%;
  margin-top: 14px;
}

.dashboard-muted {
  margin-top: 14px;
  font-size: 14px;
}

.student-dashboard-page {
  background:
    radial-gradient(circle at top left, rgba(255, 190, 61, 0.12), transparent 26%),
    linear-gradient(180deg, #f3f8fb 0%, #ffffff 54%, #f6fafc 100%);
}

.student-dashboard-hero {
  position: relative;
  overflow: hidden;
  padding: 54px 0 72px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  background:
    linear-gradient(120deg, rgba(0, 28, 43, 0.98), rgba(0, 72, 93, 0.94)),
    url("../images/banner1.5efc3e83a904.jpg") center/cover no-repeat;
}

.student-dashboard-hero::after {
  content: "";
  position: absolute;
  inset: auto -10% -42px -10%;
  height: 90px;
  background: #f3f8fb;
  transform: rotate(-2deg);
  transform-origin: center;
}

.dashboard-prep-hero {
  background:
    linear-gradient(120deg, rgba(0, 33, 51, 0.98), rgba(16, 87, 113, 0.92)),
    url("../images/banner1.5efc3e83a904.jpg") center/cover no-repeat;
}

.dashboard-admission-hero {
  background:
    linear-gradient(120deg, rgba(0, 31, 43, 0.98), rgba(54, 72, 58, 0.9)),
    url("../images/banner2.79c559b13a8a.jpg") center/cover no-repeat;
}

.student-dashboard-hero .container {
  position: relative;
  z-index: 1;
}

.student-dashboard-hero h1 {
  letter-spacing: 0;
  line-height: 1.05;
}

.dashboard-mode-switch {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 6px;
  margin-top: 22px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(12px);
}

.dashboard-mode-switch a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 18px;
  border-radius: 999px;
  color: #ffffff;
  text-decoration: none;
  font-weight: 900;
}

.dashboard-mode-switch a.active {
  color: #002f45;
  background: #ffbe3d;
}

.student-dashboard-shell {
  position: relative;
  z-index: 2;
  margin-top: -34px;
}

.student-stat-grid article {
  position: relative;
  overflow: hidden;
  min-height: 126px;
  padding: 22px;
  border: 1px solid rgba(0, 48, 73, 0.08);
  background: linear-gradient(180deg, #ffffff, #f8fbfd);
}

.student-stat-grid article::after {
  content: "";
  position: absolute;
  right: -28px;
  top: -28px;
  width: 82px;
  height: 82px;
  border-radius: 50%;
  background: rgba(255, 190, 61, 0.2);
}

.student-stat-grid b {
  position: relative;
  z-index: 1;
  font-weight: 950;
}

.dashboard-focus-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 24px;
}

.dashboard-focus-strip article {
  padding: 18px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 38px rgba(0, 48, 73, 0.06);
}

.dashboard-focus-strip span {
  display: block;
  color: #f77f00;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.dashboard-focus-strip strong {
  display: block;
  margin-top: 6px;
  color: #002f45;
  font-size: 24px;
  line-height: 1.15;
}

.dashboard-focus-strip p {
  margin: 8px 0 0;
  color: #64748b;
  line-height: 1.5;
  font-weight: 700;
}

.dashboard-block {
  border-color: rgba(0, 48, 73, 0.1);
  box-shadow: 0 18px 44px rgba(0, 48, 73, 0.07);
}

.admission-planner-block {
  background:
    linear-gradient(180deg, #ffffff 0%, #f9fcfd 100%);
}

.rank-form-heading h2 {
  letter-spacing: 0;
}

.admission-form-grid input,
.admission-form-grid select {
  border-color: #cfdde6;
  box-shadow: inset 0 1px 0 rgba(0, 48, 73, 0.03);
}

.admission-form-grid input:focus,
.admission-form-grid select:focus {
  border-color: #0f6f8e;
  outline: 3px solid rgba(15, 111, 142, 0.13);
}

.dashboard-test-card,
.dashboard-college-card,
.dashboard-attempt-list article,
.dashboard-mini-list article,
.dashboard-shortlist article {
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.dashboard-test-card:hover,
.dashboard-college-card:hover,
.dashboard-attempt-list article:hover,
.dashboard-mini-list article:hover,
.dashboard-shortlist article:hover {
  transform: translateY(-2px);
  border-color: rgba(15, 111, 142, 0.25);
  box-shadow: 0 16px 34px rgba(0, 48, 73, 0.09);
}

.dashboard-test-card {
  min-height: 190px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.dashboard-test-card .btn-primary-soft,
.dashboard-test-card .btn-outline-soft {
  margin-top: auto;
}

.dashboard-college-card {
  background: linear-gradient(180deg, #ffffff, #fbfdfe);
}

.dashboard-college-card img,
.dashboard-college-placeholder {
  box-shadow: inset 0 0 0 1px rgba(0, 48, 73, 0.08);
}

.college-chip-row span:nth-child(1) {
  color: #064e3b;
  background: #dcfce7;
}

.college-chip-row span:nth-child(2) {
  color: #1e3a8a;
  background: #dbeafe;
}

.college-chip-row span:nth-child(3) {
  color: #7a4a00;
  background: #fff4cf;
}

.dashboard-shortlist article {
  background: #ffffff;
}

.prep-empty-card {
  border: 1px dashed #cbdde8;
  background: #f8fbfd;
}

@media (max-width: 991px) {
  .dashboard-focus-strip {
    grid-template-columns: 1fr;
  }

  .student-dashboard-shell {
    margin-top: -22px;
  }
}

@media (max-width: 767px) {
  .student-dashboard-hero {
    padding: 38px 0 58px;
  }

  .dashboard-mode-switch {
    width: 100%;
    border-radius: 8px;
  }

  .dashboard-mode-switch a {
    flex: 1 1 130px;
    border-radius: 8px;
  }

  .student-stat-grid article {
    min-height: auto;
  }
}

@media (max-width: 575px) {
  .dashboard-college-card {
    grid-template-columns: 1fr;
  }

  .dashboard-college-card img,
  .dashboard-college-placeholder {
    width: 100%;
    aspect-ratio: 16 / 9;
  }

  .dashboard-card-actions,
  .dashboard-card-actions a,
  .dashboard-card-actions form,
  .dashboard-card-actions button {
    width: 100%;
  }
}

.access-lock-card > span,
.checkout-card > span {
  color: #f77f00;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.access-lock-card h3 {
  margin-top: 8px;
}

.access-plan-box,
.gateway-ready-box {
  margin: 18px 0;
  padding: 16px;
  border-radius: 8px;
  background: #f6fafc;
  border: 1px solid #dce8ef;
}

.access-plan-box strong,
.gateway-ready-box strong {
  display: block;
  color: #002f45;
  font-size: 20px;
}

.access-plan-box b {
  display: block;
  color: #003049;
  font-size: 30px;
  margin: 6px 0;
}

.access-plan-box small,
.gateway-ready-box small,
.gateway-ready-box p {
  color: #64748b;
  font-weight: 700;
}

.checkout-page {
  min-height: 100vh;
  background: #f6fafc;
}

.checkout-shell {
  width: min(960px, calc(100% - 32px));
  margin: 0 auto;
  padding: 58px 0;
}

.checkout-card {
  padding: 34px;
  border: 1px solid #dce8ef;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 44px rgba(0, 48, 73, 0.08);
}

.checkout-card h1 {
  margin: 8px 0;
  color: #002f45;
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1.08;
}

.checkout-card > p {
  color: #64748b;
  line-height: 1.65;
  font-size: 17px;
}

.checkout-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 24px 0;
}

.checkout-summary article {
  padding: 16px;
  border-radius: 8px;
  background: #fff8e8;
}

.checkout-summary span {
  display: block;
  color: #7a4a00;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.checkout-summary b {
  display: block;
  color: #002f45;
  margin-top: 6px;
}

.checkout-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}

@media (max-width: 767px) {
  .checkout-summary {
    grid-template-columns: 1fr;
  }

  .checkout-card {
    padding: 20px;
  }
}

.prep-hero {
  color: #ffffff;
  background:
    linear-gradient(120deg, rgba(0, 38, 55, 0.96), rgba(0, 72, 93, 0.9)),
    url("../images/banner1.5efc3e83a904.jpg") center/cover no-repeat;
  padding: 56px 0 42px;
}

.prep-back-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #ffbe3d;
  font-weight: 800;
  margin-bottom: 24px;
  text-decoration: none;
}

.prep-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 28px;
  align-items: center;
}

.prep-hero h1 {
  font-size: clamp(34px, 5vw, 64px);
  line-height: 1.05;
  max-width: 900px;
  margin: 10px 0 16px;
}

.prep-hero p {
  color: rgba(255, 255, 255, 0.82);
  max-width: 760px;
  font-size: 18px;
}

.prep-hero-actions,
.prep-reader-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}

.prep-hero aside {
  padding: 24px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.11);
  backdrop-filter: blur(14px);
}

.prep-hero aside strong {
  display: block;
  color: #ffffff;
  font-size: 26px;
  line-height: 1.2;
  margin: 8px 0;
}

.prep-filters {
  padding: 18px 0;
  background: #ffffff;
  border-bottom: 1px solid #dce8ee;
  position: sticky;
  top: 0;
  z-index: 20;
}

.prep-filter-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  gap: 12px;
  align-items: end;
}

.prep-filter-form label {
  color: #395466;
  font-weight: 800;
  font-size: 13px;
}

.prep-filter-form select,
.prep-filter-form button {
  width: 100%;
  min-height: 46px;
  border-radius: 8px;
  margin-top: 6px;
  font-weight: 800;
}

.prep-filter-form select {
  border: 1px solid #cddde6;
  color: #16374b;
  padding: 0 14px;
  background: #ffffff;
}

.prep-filter-form button {
  border: 0;
  color: #082b3d;
  background: #ffb72b;
  padding: 0 22px;
}

.prep-main,
.prep-tests {
  padding: 44px 0;
}

.prep-main-grid,
.prep-test-layout {
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.prep-library,
.prep-reader,
.prep-tests aside {
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 44px rgba(0, 47, 69, 0.08);
}

.prep-library {
  padding: 22px;
  position: sticky;
  top: 104px;
}

.prep-resource-list {
  display: grid;
  gap: 12px;
}

.prep-resource-list article {
  padding: 15px;
  border-radius: 8px;
  border: 1px solid #dce8ee;
  background: #f8fbfd;
}

.prep-resource-list article.active {
  border-color: #ffb72b;
  background: #fff8e8;
}

.prep-resource-list h3,
.prep-test-card h4,
.prep-series-list h4 {
  color: #002f45;
  font-size: 18px;
  margin: 6px 0;
}

.prep-resource-list p {
  margin: 0;
  color: #647789;
  font-size: 14px;
}

.prep-reader {
  min-height: 560px;
  overflow: hidden;
}

.prep-reader-head {
  padding: 28px;
  background: linear-gradient(135deg, #ffffff, #edf8fc);
  border-bottom: 1px solid #dce8ee;
}

.prep-reader-head h2 {
  color: #002f45;
  font-size: clamp(28px, 4vw, 44px);
  line-height: 1.1;
  margin: 8px 0 10px;
}

.prep-reader-head div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.prep-reader-head b {
  padding: 8px 12px;
  border-radius: 999px;
  color: #00364f;
  background: #e8f6fb;
  font-size: 13px;
}

.prep-reader-copy,
.prep-demo-notes {
  padding: 30px;
}

.prep-demo-notes h3 {
  color: #002f45;
  font-size: 26px;
}

.prep-empty-card {
  padding: 24px;
  border-radius: 8px;
  background: #ffffff;
}

.prep-empty-card h3 {
  color: #002f45;
  margin-bottom: 8px;
}

.prep-tests {
  background: #ffffff;
}

.prep-test-layout {
  grid-template-columns: minmax(0, 1fr) 360px;
}

.prep-test-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.prep-test-card,
.prep-tests aside {
  padding: 20px;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 36px rgba(0, 47, 69, 0.08);
}

.prep-test-card small {
  display: block;
  color: #6b7d8c;
  margin-bottom: 12px;
}

.prep-test-card a,
.prep-test-card button {
  margin-top: 10px;
}

.prep-tests aside h3,
.prep-test-layout > div > h3 {
  color: #002f45;
  margin-bottom: 16px;
}

.prep-series-list {
  display: grid;
  gap: 14px;
}

.prep-series-list article {
  padding: 16px;
  border-radius: 8px;
  background: #f6fafc;
  border: 1px solid #dce8ee;
}

.prep-series-list b {
  display: inline-flex;
  margin: 4px 8px 0 0;
  color: #00364f;
}

@media (max-width: 991px) {
  .prep-hub-highlight,
  .prep-hero-grid,
  .prep-main-grid,
  .prep-test-layout,
  .practice-test-layout {
    grid-template-columns: 1fr;
  }

  .prep-hub-highlight > a {
    width: 100%;
    justify-content: center;
  }

  .prep-hub-grid,
  .prep-preview-grid,
  .prep-test-grid,
  .prep-filter-form {
    grid-template-columns: 1fr;
  }

  .prep-library {
    position: static;
  }

  .practice-test-side {
    position: static;
  }

  .prep-filters {
    position: static;
  }
}

@media (max-width: 575px) {
  .prep-hero {
    padding: 34px 0;
  }

  .practice-test-hero {
    padding: 34px 0;
  }

  .prep-hero h1,
  .practice-test-hero h1 {
    font-size: 34px;
  }

  .prep-hub-highlight,
  .prep-hub-grid article,
  .prep-preview-card,
  .prep-reader-head,
  .prep-reader-copy,
  .prep-demo-notes,
  .prep-library,
  .prep-test-card,
  .prep-tests aside,
  .practice-test-side,
  .practice-result-panel,
  .practice-related-notes {
    padding: 18px;
  }
}
