/* =====================================================================
   MudgarFit product page — scoped styles. Every class is mf- prefixed so
   it never collides with the site's Bootstrap 4 / Owl / AOS stack.
   ===================================================================== */

.mf-shop {
  --mf-teal: #2c5e6b;
  --mf-saffron: #e39023;
  --mf-navy: #2c396b;
  --mf-cream: #f7f4eb;
  --mf-ink: #212529;
  --mf-line: #dee2e6;
  --mf-radius: 20px;
  --mf-radius-sm: 12px;
  --mf-shadow: 0 10px 30px rgba(44, 57, 107, 0.08);
  --mf-maxw: 1180px;

  color: var(--mf-ink);
  font-family: "Open Sans", Arial, sans-serif;
  line-height: 1.6;
  background: #fff;
}

.mf-shop *,
.mf-shop *::before,
.mf-shop *::after { box-sizing: border-box; }

.mf-shop h1, .mf-shop h2, .mf-shop h3, .mf-shop h4 {
  font-family: "EB Garamond", serif;
  color: var(--mf-navy);
  line-height: 1.2;
  margin: 0 0 0.4em;
}
.mf-shop p { margin: 0 0 1em; }

/* main section titles (See it in motion / Craft & heritage / testimonials /
   FAQ) — Open Sans instead of the serif used for other headings, per request */
.mf-shop .mf-section-title {
  font-family: "Open Sans", Arial, sans-serif;
  font-size: 42px;
  font-weight: 700;
}
.mf-shop a { color: var(--mf-teal); }
.mf-shop img { max-width: 100%; display: block; }

.mf-wrap { max-width: var(--mf-maxw); margin: 0 auto; padding: 0 20px; }
.mf-section { padding: 56px 0; }
.mf-section-cream { background: var(--mf-cream); }

/* focus states everywhere */
.mf-shop a:focus-visible,
.mf-shop button:focus-visible,
.mf-shop input:focus-visible,
.mf-shop [tabindex]:focus-visible {
  outline: 3px solid var(--mf-saffron);
  outline-offset: 2px;
}

/* ---------------- buttons ---------------- */
.mf-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 48px; padding: 12px 22px;
  border: 2px solid transparent; border-radius: 999px;
  font: 600 1rem "Open Sans", sans-serif; text-decoration: none; cursor: pointer;
  transition: transform .08s ease, background .15s ease, box-shadow .15s ease;
}
.mf-btn:active { transform: translateY(1px); }
.mf-btn-primary { background: var(--mf-saffron); color: #3a2400; }
.mf-btn-primary:hover { box-shadow: 0 6px 18px rgba(227,144,35,.35); }
.mf-btn-secondary { background: #fff; color: var(--mf-teal); border-color: var(--mf-teal); }
.mf-btn-secondary:hover { background: var(--mf-cream); }
.mf-btn-ghost { background: transparent; color: var(--mf-navy); border-color: var(--mf-line); }
.mf-btn-wa { background: #25d366; color: #06371b; }
.mf-btn-block { width: 100%; }

/* ---------------- announcement ---------------- */
.mf-announce {
  background: var(--mf-navy); color: #fff; font-size: .9rem;
  text-align: center; padding: 8px 40px 8px 16px; position: relative;
}
.mf-announce-close {
  position: absolute; right: 10px; top: 50%; transform: translateY(-50%);
  background: none; border: 0; color: #fff; font-size: 1.2rem; cursor: pointer;
}

/* ---------------- nav (placeholder — swap for the real site navbar) ---------------- */
.mf-nav { background: var(--mf-navy); color: #fff; }
.mf-nav .mf-wrap { display: flex; align-items: center; justify-content: space-between; height: 64px; }
.mf-nav-brand { font-family: "EB Garamond", serif; font-size: 1.4rem; color: #fff; text-decoration: none; }
.mf-nav-links { display: flex; gap: 20px; list-style: none; margin: 0; padding: 0; }
.mf-nav-links a { color: #dfe4f2; text-decoration: none; font-size: .95rem; }
.mf-nav-links a:hover { color: #fff; }
.mf-nav-links .mf-nav-active { color: var(--mf-saffron); font-weight: 700; }
@media (max-width: 767px) { .mf-nav-links { display: none; } }

/* ---------------- above the fold ---------------- */
.mf-hero { padding-top: 32px; }
.mf-hero-grid { display: grid; grid-template-columns: 1fr; gap: 32px; }
@media (min-width: 900px) { .mf-hero-grid { grid-template-columns: 0.8fr 1fr; align-items: start; } }

/* gallery — real product photos are portrait (~2:3), not square.
   Mobile: main image with a horizontal thumb strip below (original layout).
   Desktop (≥480px): main image on the left, thumbs stacked vertically on
   the right. */
.mf-gallery { display: flex; flex-direction: column; gap: 12px; }
.mf-gallery-main {
  border: 1px solid var(--mf-line); border-radius: var(--mf-radius);
  overflow: hidden; background: var(--mf-cream); aspect-ratio: 2 / 3; cursor: zoom-in;
}
.mf-gallery-main img { width: 100%; height: 100%; object-fit: cover; }
.mf-thumbs { display: flex; flex-direction: row; gap: 10px; overflow-x: auto; padding-bottom: 4px; width: auto; }
.mf-thumb {
  flex: 0 0 64px; width: 64px; height: 96px; padding: 0;
  border: 2px solid var(--mf-line); border-radius: var(--mf-radius-sm);
  overflow: hidden; background: var(--mf-cream); cursor: pointer;
}
.mf-thumb img { width: 100%; height: 100%; object-fit: cover; }
.mf-thumb-on { border-color: var(--mf-teal); }

@media (min-width: 480px) {
  .mf-gallery { flex-direction: row; align-items: flex-start; }
  .mf-gallery-main { flex: 1 1 auto; min-width: 0; }
  .mf-thumbs { flex-direction: column; flex-shrink: 0; overflow-x: visible; overflow-y: auto; padding-bottom: 0; }
}

/* buy box */
.mf-buybox { }
.mf-buybox h1 {
  font-family: "Open Sans", Arial, sans-serif; font-weight: 700; font-size: 48px;
  color: var(--mf-navy); margin-bottom: 0.5em;
}

.mf-buybox-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.mf-ccy-toggle { display: inline-flex; border: 1px solid var(--mf-line); border-radius: 999px; overflow: hidden; }
.mf-ccy-btn { background: #fff; border: 0; padding: 8px 16px; font-weight: 600; cursor: pointer; color: var(--mf-navy); min-height: 40px; }
.mf-ccy-on { background: var(--mf-teal); color: #fff; }

.mf-price { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; margin: 14px 0 6px; }
.mf-price-sell { font-family: "EB Garamond", serif; font-size: 2.2rem; font-weight: 700; color: var(--mf-saffron); }
.mf-price-mrp { text-decoration: line-through; color: #8b93a3; font-size: 1.1rem; }
.mf-price-save { background: #eef6ee; color: #1c6b2e; font-size: .85rem; font-weight: 700; padding: 3px 10px; border-radius: 999px; }

.mf-buybox-meta { display: grid; gap: 6px; margin: 14px 0; font-size: .95rem; }
.mf-buybox-meta div { display: flex; gap: 8px; }
.mf-buybox-meta b { color: var(--mf-navy); min-width: 96px; }

.mf-cta-row { display: grid; gap: 12px; grid-template-columns: 1fr 1fr; margin-top: 18px; }
/* mobile: both buttons full width, stacked (Add to cart above Buy now,
   matching source order) instead of squeezed side by side */
@media (max-width: 600px) {
  .mf-cta-row { grid-template-columns: 1fr; }
  .mf-cta-row .mf-btn { width: 100%; }
}

/* ---------------- calculator ---------------- */
.mf-calc {
  background: #fff; border: 1px solid var(--mf-line); border-radius: var(--mf-radius);
  box-shadow: var(--mf-shadow); padding: 26px;
}
.mf-calc h2 { font-size: 1.6rem; }
.mf-calc-sub { color: #5c6472; margin-top: -4px; }
.mf-calc-grid { display: grid; gap: 16px; grid-template-columns: 1fr; }
@media (min-width: 620px) { .mf-calc-grid { grid-template-columns: repeat(2, 1fr); } }
.mf-field label { display: block; font-weight: 600; margin-bottom: 6px; color: var(--mf-navy); }
.mf-field input[type="number"] {
  width: 100%; min-height: 48px; padding: 10px 12px;
  border: 1px solid var(--mf-line); border-radius: var(--mf-radius-sm); font-size: 1rem;
}
.mf-radio-row, .mf-pain-row { display: flex; flex-wrap: wrap; gap: 10px; }
.mf-radio-row label, .mf-pain-row label {
  display: inline-flex; align-items: center; gap: 6px; font-weight: 500;
  border: 1px solid var(--mf-line); border-radius: 999px; padding: 8px 14px; cursor: pointer; margin: 0;
}
.mf-pain-wrap { grid-column: 1 / -1; }
.mf-calc-actions { grid-column: 1 / -1; }
.mf-calc-out { margin-top: 18px; border-radius: var(--mf-radius-sm); padding: 16px 18px; }
.mf-calc-ok { background: #eef6f4; border: 1px solid #cfe6df; }
.mf-calc-warn { background: #fff5e9; border: 1px solid #f3d9b3; }
.mf-calc-note { color: #8a5a00; }
.mf-calc-nudge { margin-bottom: 0; }
.mf-calc-out .mf-btn { margin-top: 8px; margin-right: 8px; }

/* ---------------- variant grid ---------------- */
.mf-variant-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
@media (min-width: 620px) { .mf-variant-grid { grid-template-columns: repeat(4, 1fr); } }
.mf-variant {
  position: relative; display: flex; flex-direction: column; gap: 4px; align-items: flex-start;
  background: #fff; border: 2px solid var(--mf-line); border-radius: var(--mf-radius-sm);
  padding: 14px; cursor: pointer; text-align: left; min-height: 64px;
}
.mf-variant-label { font-weight: 700; color: var(--mf-navy); }
.mf-variant-price { color: var(--mf-saffron); font-weight: 700; }
.mf-variant-on { border-color: var(--mf-teal); background: #f2f8f7; }
.mf-variant-badge {
  position: absolute; top: -10px; right: -6px; background: var(--mf-saffron); color: #3a2400;
  font-size: .68rem; font-weight: 700; padding: 3px 8px; border-radius: 999px;
}

/* ---------------- bundle toggle (cart + checkout drawers) ---------------- */
.mf-bundle-toggle {
  display: flex; align-items: flex-start; gap: 10px; cursor: pointer;
  border: 1px dashed var(--mf-saffron); border-radius: var(--mf-radius-sm);
  padding: 10px 12px; margin: 14px 0; background: #fffdf8;
}
.mf-bundle-toggle input { width: 20px; height: 20px; flex: 0 0 auto; margin-top: 2px; }
.mf-bundle-toggle .mf-bundle-toggle-title { display: block; font-weight: 700; color: var(--mf-ink); font-size: .95rem; }
.mf-bundle-toggle .mf-bundle-toggle-save { color: #1c6b2e; font-weight: 700; }
.mf-bundle-toggle .mf-bundle-toggle-desc { display: block; color: var(--mf-ink); font-size: .85rem; margin-top: 3px; line-height: 1.5; }

/* ---------------- trust row ---------------- */
.mf-trust-row { display: grid; gap: 16px; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 760px) { .mf-trust-row { grid-template-columns: repeat(4, 1fr); } }
.mf-trust-item { display: flex; gap: 10px; align-items: center; font-size: .92rem; }
.mf-trust-item .mf-ic { font-size: 1.4rem; }
.mf-trust-item span:not(.mf-ic) { color: var(--mf-ink); font-weight: 500; }

/* ---------------- craft story ---------------- */
.mf-story-block { display: grid; gap: 24px; grid-template-columns: 1fr; align-items: center; margin-bottom: 40px; }
/* image 30% / text 70% on desktop. .mf-story-rev visually flips the image to
   the right via order, so its columns are swapped (70/30) to keep the image
   itself at 30% regardless of which side it lands on. Mobile stays 1fr (stacked). */
@media (min-width: 860px) {
  .mf-story-block { grid-template-columns: 3fr 7fr; }
  .mf-story-rev { grid-template-columns: 7fr 3fr; }
  .mf-story-rev .mf-story-media { order: 2; }
}
.mf-story-media img { border-radius: var(--mf-radius); }

/* ---------------- stats ---------------- */
.mf-stats { display: grid; grid-template-columns: 1fr; gap: 24px; text-align: center; }
@media (min-width: 560px) { .mf-stats { grid-template-columns: repeat(3, 1fr); } }
.mf-stat-num { font-family: "EB Garamond", serif; font-size: 2.4rem; font-weight: 700; color: var(--mf-navy); }
.mf-stat-lbl { color: #5c6472; font-size: .95rem; }

/* ---------------- video ---------------- */
.mf-video {
  position: relative; aspect-ratio: 16 / 9; border-radius: var(--mf-radius); overflow: hidden;
  background: #10202a center/cover no-repeat; cursor: pointer;
}
.mf-video video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

/* ---------------- accordions ---------------- */
.mf-accordion { border: 1px solid var(--mf-line); border-radius: var(--mf-radius-sm); margin-bottom: 12px; overflow: hidden; background: #fff; }
.mf-acc-header {
  width: 100%; text-align: left; background: #fff; border: 0; cursor: pointer;
  padding: 16px 18px; font: 600 1.05rem "Open Sans", sans-serif; color: var(--mf-navy);
  display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 52px;
}
.mf-acc-header::after { content: "+"; font-size: 1.4rem; color: var(--mf-saffron); }
.mf-acc-header[aria-expanded="true"]::after { content: "–"; }
.mf-acc-panel { padding: 0 18px 18px; }

/* ---------------- sticky mobile buy bar ---------------- */
.mf-sticky {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 40;
  background: #fff; border-top: 1px solid var(--mf-line); box-shadow: 0 -6px 20px rgba(0,0,0,.08);
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 10px 16px; transform: translateY(120%); transition: transform .25s ease;
}
.mf-sticky.mf-show { transform: translateY(0); }
.mf-sticky-price { font-weight: 700; color: var(--mf-navy); font-size: 1.1rem; }
.mf-sticky .mf-btn { flex: 0 0 auto; }
@media (min-width: 900px) { .mf-sticky { display: none; } }

/* ---------------- drawers / overlays ---------------- */
.mf-overlay {
  position: fixed; inset: 0; background: rgba(20,28,45,.5); z-index: 50;
  opacity: 0; visibility: hidden; transition: opacity .2s ease;
}
.mf-overlay.mf-open { opacity: 1; visibility: visible; }

.mf-drawer {
  position: fixed; top: 0; right: 0; height: 100%; width: min(420px, 92vw); z-index: 60;
  background: #fff; box-shadow: -12px 0 30px rgba(0,0,0,.15);
  transform: translateX(100%); transition: transform .25s ease;
  display: flex; flex-direction: column;
}
.mf-drawer.mf-open { transform: translateX(0); }
.mf-drawer-head { display: flex; justify-content: space-between; align-items: center; padding: 18px 20px; border-bottom: 1px solid var(--mf-line); }
.mf-drawer-head h3 { margin: 0; }
.mf-drawer-close { background: none; border: 0; font-size: 1.6rem; line-height: 1; cursor: pointer; color: var(--mf-navy); }
.mf-drawer-body { padding: 18px 20px; overflow-y: auto; flex: 1; }
.mf-drawer-foot { padding: 18px 20px; border-top: 1px solid var(--mf-line); }
.mf-cart-row { display: flex; justify-content: space-between; align-items: center; padding: 8px 0; border-bottom: 1px dashed var(--mf-line); color: var(--mf-ink); }
.mf-cart-row span { color: var(--mf-ink); }
.mf-cart-row-right { display: inline-flex; align-items: center; gap: 8px; }
.mf-cart-remove {
  background: none; border: 1px solid var(--mf-line); border-radius: 50%;
  width: 22px; height: 22px; line-height: 1; cursor: pointer; color: #8b93a3; font-size: .95rem; padding: 0;
}
.mf-cart-remove:hover { color: #d64545; border-color: #d64545; }
.mf-cart-empty { color: #5c6472; text-align: center; padding: 30px 0; }
.mf-cart-total-row { display: flex; justify-content: space-between; font-weight: 700; font-size: 1.15rem; margin-bottom: 14px; color: var(--mf-ink); }
.mf-cart-total-row span { color: var(--mf-ink); }

/* checkout form */
.mf-co-grid { display: grid; gap: 14px; grid-template-columns: 1fr 1fr; }
.mf-co-grid .mf-co-full { grid-column: 1 / -1; }
.mf-co-grid label { display: block; font-weight: 600; margin-bottom: 5px; color: var(--mf-navy); font-size: .92rem; }
.mf-co-grid input {
  width: 100%; min-height: 46px; padding: 9px 12px;
  border: 1px solid var(--mf-line); border-radius: var(--mf-radius-sm); font-size: 1rem;
}
.mf-invalid { border-color: #d64545 !important; background: #fff6f6; }
.mf-co-error { color: #d64545; font-weight: 600; min-height: 1.2em; margin: 8px 0 0; }
#mf-co-total { color: var(--mf-ink); font-weight: 700; }

/* result screen */
.mf-result {
  position: fixed; inset: 0; z-index: 70; background: rgba(20,28,45,.6);
  display: none; align-items: center; justify-content: center; padding: 20px;
}
.mf-result.mf-open { display: flex; }
.mf-result-card { background: #fff; border-radius: var(--mf-radius); padding: 30px; max-width: 460px; width: 100%; text-align: center; }
.mf-result-card .mf-btn { margin: 8px 6px 0; }

/* zoom overlay */
.mf-zoom {
  position: fixed; inset: 0; z-index: 80; background: rgba(10,15,25,.9);
  display: none; align-items: center; justify-content: center; padding: 20px; cursor: zoom-out;
}
.mf-zoom.mf-open { display: flex; }
.mf-zoom img { max-width: 96vw; max-height: 92vh; border-radius: var(--mf-radius-sm); }

/* footer placeholder */
.mf-footer { background: var(--mf-navy); color: #cdd4e6; padding: 40px 0; margin-bottom: 64px; }
.mf-footer a { color: #fff; }
.mf-footer-grid { display: flex; flex-wrap: wrap; gap: 24px; justify-content: space-between; }
@media (min-width: 900px) { .mf-footer { margin-bottom: 0; } }

/* reduced motion */
@media (prefers-reduced-motion: reduce) {
  .mf-shop * { animation: none !important; transition: none !important; }
}

/* ===== v2 additions: top-of-page dropdowns, weight-finder link, calc modal ===== */

.mf-price-sub { color: #5c6472; margin-top: 0; font-size: .9rem; }
.mf-price-sub #mf-ship-cost { color: var(--mf-ink); font-weight: 700; }

/* buy-box controls: just weight now (quantity/country removed) */
.mf-buy-controls {
  display: grid; gap: 14px; margin: 18px 0 6px;
  grid-template-columns: 1fr;
}
@media (min-width: 900px) { .mf-buy-controls { grid-template-columns: 1fr 1fr; } }

.mf-buy-controls label,
.mf-modal .mf-field label { display: block; font-weight: 600; margin-bottom: 6px; color: var(--mf-navy); font-size: .92rem; }

.mf-shop select {
  width: 100%; min-height: 48px; padding: 10px 40px 10px 12px;
  border: 1px solid var(--mf-line); border-radius: var(--mf-radius-sm);
  font: 500 1rem "Open Sans", sans-serif; color: var(--mf-ink); background: #fff;
  appearance: none; -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%232c5e6b' stroke-width='3'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 14px center;
}
.mf-shop select:focus-visible { outline: 3px solid var(--mf-saffron); outline-offset: 2px; }

/* .mf-buy-controls now provides the half-width split on desktop, so the
   select just fills its own column and the link sits beside it. */
.mf-weight-row { display: flex; align-items: center; flex-wrap: inherit; gap: 12px; }
.mf-weight-row select { flex: 0 1 180px; min-width: 120px; }

.mf-linkbtn {
  background: none; border: 0; padding: 0; margin: 0; cursor: pointer; white-space: nowrap;
  color: var(--mf-teal); font: 600 .9rem "Open Sans", sans-serif; text-decoration: underline;
}
.mf-weight-note {
  margin: 8px 0 0; font-size: .9rem; font-weight: 600; color: #1c6b2e;
  background: #eef6ee; border-radius: 8px; padding: 6px 10px;
}
.mf-add-note {
  margin: 10px 0 0; font-size: .88rem; font-weight: 600; color: #8a5a00;
  background: #fff5e9; border-radius: 8px; padding: 6px 10px;
}

/* centered modal (weight finder) */
.mf-modal {
  position: fixed; inset: 0; z-index: 65; display: none;
  align-items: flex-start; justify-content: center; padding: 24px 16px; overflow-y: auto;
}
.mf-modal.mf-open { display: flex; }
.mf-modal-card {
  background: #fff; border-radius: var(--mf-radius); box-shadow: var(--mf-shadow);
  width: 100%; max-width: 560px; padding: 24px; margin: auto;
}
.mf-modal-head { display: flex; align-items: center; justify-content: space-between; }
.mf-modal-head h3 { margin: 0; }
.mf-modal .mf-calc-grid { display: grid; gap: 16px; grid-template-columns: 1fr 1fr; margin-top: 12px; }
.mf-modal .mf-full { grid-column: 1 / -1; }
.mf-modal input[type="number"] {
  width: 100%; min-height: 48px; padding: 10px 12px;
  border: 1px solid var(--mf-line); border-radius: var(--mf-radius-sm); font-size: 1rem;
}
.mf-modal .mf-radio-row, .mf-modal .mf-pain-row { display: flex; flex-wrap: wrap; gap: 10px; }
.mf-modal .mf-radio-row label, .mf-modal .mf-pain-row label {
  display: inline-flex; align-items: center; gap: 6px; font-weight: 500; margin: 0;
  border: 1px solid var(--mf-line); border-radius: 999px; padding: 8px 14px; cursor: pointer;
}

/* ===== v3: integrated into the site's Colorlib chrome ===== */
/* .mf-shop is now a wrapper DIV (not <body>), so its scoped rules never touch
   the site's real nav/footer, which sit outside it. */

/* keep the fixed mobile buy-bar from covering the bottom of the real footer */
@media (max-width: 899.98px) {
  .ftco-footer { padding-bottom: 96px; }
}

/* ===== v4: shop-page-only fixes ===== */

/* The site nav (.ftco-navbar-light) is transparent by default and only turns
   solid once main.js adds .scrolled on scroll — fine over a dark hero image,
   but this page's hero is light, so the menu was unreadable at the top.
   Force it solid from the start on desktop (the only breakpoint where it's
   position:absolute/transparent; mobile is already opaque). The existing
   .scrolled rule in style.css still applies on top of this and still wins
   (same selector, declared later in the cascade), so scrolling still
   transitions it to white as before. */
@media (min-width: 992px) {
  #ftco-navbar.ftco-navbar-light:not(.scrolled) { background: #111 !important; }
}

/* style.css turns nav-link text black on hover (fine on the theme's usual
   white navbar), which goes invisible against the dark background forced
   above. Keep it white and just fade it slightly instead. style.css also
   pins opacity:1 with !important on the non-hover rule, so match that here
   to actually win. */
#ftco-navbar.ftco-navbar-light:not(.scrolled) .navbar-nav > .nav-item > .nav-link:hover {
  color: #fff !important;
  opacity: 0.8 !important;
}

/* Give the hero room to clear that now-solid, absolutely-positioned nav on
   desktop so the title/price/menu aren't overlapped. */
@media (min-width: 992px) {
  .mf-hero { padding-top: 110px; }
}

.mf-intl-note { color: #5c6472; font-size: .88rem; margin: -4px 0 6px; }

/* buybox-meta values (Material / Height / Use) were too low-contrast */
.mf-buybox-meta span { color: var(--mf-ink); font-weight: 500; }

/* locked country field in checkout (India-only for now) */
#mf-co-country[readonly] { background: var(--mf-cream); color: #5c6472; cursor: not-allowed; }

/* The site's scroll-reveal (.ftco-animate, driven by main.js + Waypoints)
   is unreliable on this page — its cached trigger offsets go stale once the
   testimonials carousel resizes the page after the fact, so the section can
   stay invisible depending on load timing. Content matters more than the
   fade-in here, so just always show it rather than depend on that. */
#students.ftco-animate,
#students .ftco-animate { opacity: 1 !important; visibility: visible !important; }
