/* =========================================================
   MetodaNaFirmę.pl — mnf-style.css
   Zebrane i uporządkowane z: Wygląd → Dostosuj → Dodatkowy CSS
   Źródło: css.txt (Custom CSS) :contentReference[oaicite:1]{index=1}
   ========================================================= */

/* =========================================================
   0) ZMIENNE (jedno miejsce, bez duplikatów)
   - Twoje historyczne zmienne (navy/sand/sky/accent)
   - Twoja aktualna paleta (mnf-navy/mnf-sky/mnf-beige)
   ========================================================= */
:root {
  /* Aktualna paleta MNF (z ustaleń projektu) */
  --mnf-navy: #3e4a64;
  --mnf-sky: #91cae5;
  --mnf-beige: #ebd1b8;

  /* Historyczne nazwy używane w sekcjach MNF (zostawiamy dla zgodności) */
  --surface: #ffffff;
  --ink: #101828;
  --muted: #475467;
  --line: rgba(16, 24, 40, .12);

  /* Stare brand-tokeny (używane w home/hero) */
  --navy: #1f2a44;
  --sand: #e9dcc8;
  --sky: #d7e6f6;
  --accent: #d7b98e;

  /* Layout / UI */
  --radius: 18px;
  --shadow: 0 14px 40px rgba(16, 24, 40, .10);
  --max: 1120px;

  /* Typografia */
  --h1: clamp(30px, 3.6vw, 52px);
  --h2: clamp(22px, 2.7vw, 34px);
  --h3: clamp(18px, 2vw, 22px);
  --p: 16px;
}

/* =========================================================
   1) BEZPIECZNIKI / BAZA
   ========================================================= */

/* Blocksy: zabezpieczenie przed poziomym przewijaniem przy 100vw */
html,
body {
  overflow-x: hidden;
}

/* =========================================================
   2) HOME / LANDING (.mnf-home) — jedna wersja (bez duplikatów)
   ========================================================= */
.mnf-home,
.mnf-home * {
  box-sizing: border-box;
}

.mnf-home {
  color: var(--ink);
  background: transparent;
}

/* Blocksy: pełna szerokość tła tylko dla landingu */
.mnf-home {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.mnf-home p {
  margin: 0;
  color: var(--muted);
  font-size: var(--p);
  line-height: 1.65;
}

.mnf-home h1,
.mnf-home h2,
.mnf-home h3 {
  margin: 0;
  line-height: 1.15;
  letter-spacing: -.02em;
}

.mnf-home h1 {
  font-size: var(--h1);
}

.mnf-home h2 {
  font-size: var(--h2);
}

.mnf-home h3 {
  font-size: var(--h3);
}

.mnf-wrap {
  max-width: var(--max);
  margin: 0 auto;
  padding: 0 18px;
}

.mnf-section {
  padding: 64px 0;
}

.mnf-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

/* =========================================================
   3) HERO
   ========================================================= */
.mnf-hero {
  padding-top: 36px;
  padding-bottom: 36px;
}

.mnf-hero .hero-inner {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 22px;
  align-items: stretch;
}

.mnf-hero .copy {
  padding: 34px;
}

.mnf-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: rgba(31, 42, 68, .8);
  background: rgba(215, 230, 246, .55);
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(31, 42, 68, .10);
  margin-bottom: 16px;
}

.mnf-kicker span {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--navy);
  opacity: .75;
}

.mnf-lead {
  font-size: 18px;
  color: rgba(16, 24, 40, .78);
  margin-top: 14px;
}

.mnf-highlight {
  margin-top: 18px;
  padding: 16px;
  border-radius: 14px;
  background: rgba(233, 220, 200, .55);
  border: 1px solid rgba(31, 42, 68, .10);
  color: rgba(16, 24, 40, .88);
  font-weight: 600;
}

.mnf-hero .visual {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius);
  border: 1px solid var(--line);
  min-height: 420px;
  background:
    radial-gradient(800px 400px at 20% 20%, rgba(215, 230, 246, .95), transparent 60%),
    radial-gradient(650px 420px at 80% 30%, rgba(233, 220, 200, .95), transparent 55%),
    radial-gradient(600px 500px at 55% 85%, rgba(215, 185, 142, .50), transparent 60%),
    linear-gradient(180deg, rgba(255, 255, 255, .70), rgba(255, 255, 255, .45));
}

/* Zdjęcie w tle HERO (jak italianamarketing) */
.mnf-hero .visual .photo {
  position: absolute;
  inset: 0;
  opacity: .18;
  background-image: url("https://images.unsplash.com/photo-1515879218367-8466d910aaa4?auto=format&fit=crop&w=1600&q=70");
  background-size: cover;
  background-position: center;
  filter: grayscale(100%);
}

.mnf-hero .visual .badge {
  position: absolute;
  left: 18px;
  bottom: 18px;
  background: rgba(255, 255, 255, .78);
  border: 1px solid rgba(31, 42, 68, .14);
  border-radius: 16px;
  padding: 14px;
  max-width: 320px;
}

.mnf-hero .visual .badge b {
  display: block;
  color: var(--navy);
  margin-bottom: 6px;
}

.mnf-hero .visual .badge p {
  font-size: 14px;
}

/* =========================================================
   4) LISTY / BOXY / UKŁADY
   ========================================================= */
.mnf-pain,
.mnf-frame,
.mnf-what,
.mnf-forwho,
.mnf-style {
  padding: 34px;
}

.mnf-list {
  margin-top: 18px;
  display: grid;
  gap: 10px;
}

.mnf-li {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, .10);
  background: rgba(251, 247, 241, .55);
  border-radius: 14px;
}

.mnf-dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--navy);
  margin-top: 6px;
  opacity: .8;
  flex: 0 0 auto;
}

.mnf-frame {
  background: linear-gradient(180deg, rgba(255, 255, 255, .95), rgba(255, 255, 255, .72));
}

.mnf-frame .line {
  margin-top: 16px;
  height: 2px;
  background: linear-gradient(90deg, rgba(31, 42, 68, .15), rgba(31, 42, 68, .35), rgba(31, 42, 68, .15));
  border-radius: 999px;
}

/* Dwie kolumny */
.mnf-two {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-top: 18px;
}

.mnf-box {
  border: 1px solid rgba(16, 24, 40, .10);
  background: rgba(255, 255, 255, .75);
  border-radius: 16px;
  padding: 18px;
}

.mnf-box h3 {
  color: var(--navy);
}

.mnf-box p {
  margin-top: 8px;
}

/* Karty */
.mnf-cards {
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.mnf-mini {
  border-radius: 18px;
  border: 1px solid rgba(16, 24, 40, .10);
  background: rgba(255, 255, 255, .78);
  padding: 18px;
}

.mnf-mini h3 {
  color: var(--navy);
  margin-bottom: 10px;
}

.mnf-mini ul {
  margin: 0;
  padding-left: 18px;
  color: var(--muted);
  line-height: 1.6;
}

.mnf-mini li {
  margin: 6px 0;
}

.mnf-links {
  margin-top: 16px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

/* Przyciski na landingach */
.mnf-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 16px;
  border-radius: 14px;
  border: 1px solid rgba(31, 42, 68, .18);
  background: rgba(255, 255, 255, .85);
  font-weight: 650;
  font-size: 14px;
  text-decoration: none;
}

.mnf-btn:hover {
  transform: translateY(-1px);
}

.mnf-btn.primary {
  background: var(--navy);
  color: #fff;
  border-color: rgba(31, 42, 68, .35);
}

/* Quote */
.mnf-quote {
  margin-top: 16px;
  padding: 18px;
  border-radius: 16px;
  border: 1px solid rgba(31, 42, 68, .14);
  background: rgba(215, 230, 246, .55);
  font-weight: 700;
  color: rgba(31, 42, 68, .95);
}

/* CTA */
.mnf-cta {
  padding: 34px;
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 18px;
  align-items: center;
  background:
    radial-gradient(900px 400px at 15% 20%, rgba(215, 230, 246, .90), transparent 60%),
    radial-gradient(700px 420px at 85% 50%, rgba(233, 220, 200, .95), transparent 55%),
    linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(255, 255, 255, .78));
}

.mnf-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

/* Responsive */
@media (max-width:980px) {

  .mnf-hero .hero-inner,
  .mnf-two,
  .mnf-cards,
  .mnf-cta {
    grid-template-columns: 1fr;
  }

  .mnf-actions {
    justify-content: flex-start;
  }

  .mnf-hero .visual {
    min-height: 320px;
  }
}

/* =========================================================
   5) HEADER / MENU — wstawki z Custom CSS (zebrane razem)
   ========================================================= */

/* Linia oddzielająca logo od menu (header type-1, rząd 2) */
[data-header*="type-1"] .ct-header [class*="ct-row"]:nth-child(2) {
  border-top: 1px solid rgba(16, 24, 40, 0.08);
}

/* Eleganckie menu */
.ct-header-menu a {
  padding: 14px 18px;
  font-weight: 500;
  letter-spacing: 0.02em;
}

/* Delikatny cień nagłówka */
.ct-header {
  box-shadow: 0 6px 20px rgba(16, 24, 40, 0.04);
}

/* Menu węższe niż logo */
.ct-header [data-row="primary"] .ct-container {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}

/* Wyśrodkowanie menu */
.ct-header-menu {
  justify-content: center;
}

/* =========================================================
   6) MNF: Doradztwo 1:1 — sekcja .mnf-11 (bez zmian logiki)
   ========================================================= */
.mnf-11 {
  --mnf-navy: #3e4a64;
  --mnf-sky: #91cae5;
  --mnf-sand: #ebd1b8;
  --mnf-ink: #101828;
  --mnf-muted: rgba(16, 24, 40, .75);
  --mnf-border: rgba(62, 74, 100, .16);
  --mnf-soft: rgba(235, 209, 184, .22);
}

/* Layout */
.mnf-11-hero {
  display: grid;
  grid-template-columns: 1.25fr 0.75fr;
  gap: 32px;
  align-items: center;
  margin: 10px 0 26px;
}

.mnf-11-eyebrow {
  margin: 0 0 8px;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: 12px;
  color: rgba(62, 74, 100, .75);
}

.mnf-11-title {
  margin: 0;
  color: var(--mnf-navy);
  font-size: 38px;
  line-height: 1.15;
}

.mnf-11-lead {
  margin-top: 12px;
  color: var(--mnf-muted);
  font-size: 17px;
  line-height: 1.7;
}

.mnf-11-list {
  margin-top: 14px;
  color: rgba(16, 24, 40, .82);
}

.mnf-11-hero__img img {
  width: 100%;
  height: auto;
  border-radius: 18px;
  border: 1px solid var(--mnf-border);
  box-shadow: 0 16px 40px rgba(16, 24, 40, .08);
  display: block;
}

.mnf-11-section {
  margin-top: 26px;
  padding-top: 18px;
  border-top: 1px solid rgba(62, 74, 100, .10);
}

.mnf-11-h2 {
  margin: 0 0 10px;
  color: var(--mnf-navy);
  font-size: 26px;
}

.mnf-11-text {
  margin: 0 0 16px;
  color: var(--mnf-muted);
  line-height: 1.75;
}

/* Steps */
.mnf-11-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 14px;
}

.mnf-11-step {
  background: #fff;
  border: 1px solid var(--mnf-border);
  border-radius: 16px;
  padding: 16px;
}

.mnf-11-step h3 {
  margin: 0 0 6px;
  font-size: 16px;
  color: var(--mnf-navy);
}

.mnf-11-step p {
  margin: 0;
  color: var(--mnf-muted);
  line-height: 1.6;
}

/* Video box */
.mnf-11-video {
  margin-top: 18px;
  padding: 16px;
  border-radius: 16px;
  background: var(--mnf-soft);
  border: 1px solid rgba(235, 209, 184, .55);
}

.mnf-11-video h3 {
  margin: 0 0 6px;
  color: var(--mnf-navy);
  font-size: 16px;
}

/* Pakiety */
.mnf-11-packages {
  display: flex;
  gap: 24px;
  align-items: stretch;
  margin-top: 20px;
}

.mnf-11-card {
  flex: 1;
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--mnf-border);
  border-radius: 18px;
  padding: 20px;
  box-shadow: 0 10px 26px rgba(16, 24, 40, .06);
}

.mnf-11-card--featured {
  border: 2px solid rgba(62, 74, 100, .28);
  box-shadow: 0 14px 34px rgba(16, 24, 40, .10);
}

.mnf-11-card__label {
  margin: 0;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(62, 74, 100, .70);
}

.mnf-11-card__title {
  margin: 6px 0 6px;
  color: var(--mnf-navy);
  font-size: 20px;
}

.mnf-11-card__sub {
  margin: 0;
  color: rgba(16, 24, 40, .85);
}

.mnf-11-card__top {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}

.mnf-11-pill {
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(145, 202, 229, .25);
  color: var(--mnf-navy);
  border: 1px solid rgba(145, 202, 229, .55);
  white-space: nowrap;
}

.mnf-11-price {
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(235, 209, 184, .24);
  border: 1px solid rgba(235, 209, 184, .55);
}

.mnf-11-price__old {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  color: rgba(16, 24, 40, .75);
  font-size: 13px;
}

.mnf-11-strike {
  text-decoration: line-through;
}

.mnf-11-badge {
  background: var(--mnf-navy);
  color: #fff;
  border-radius: 999px;
  padding: 2px 10px;
  font-size: 12px;
}

.mnf-11-price__new {
  margin-top: 6px;
  color: var(--mnf-ink);
  font-size: 18px;
}

.mnf-11-perhour {
  margin-top: 6px;
  font-size: 13px;
  color: rgba(16, 24, 40, .78);
}

.mnf-11-bullets {
  margin-top: 12px;
  color: rgba(16, 24, 40, .82);
}

.mnf-11-time {
  margin-top: 10px;
  color: rgba(16, 24, 40, .74);
}

/* Przycisk */
.mnf-11-btn {
  display: inline-block;
  margin-top: 14px;
  background: var(--mnf-navy);
  color: #fff !important;
  text-decoration: none !important;
  padding: 12px 16px;
  border-radius: 14px;
  border: 1px solid rgba(62, 74, 100, .35);
  box-shadow: 0 10px 22px rgba(16, 24, 40, .10);
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
}

.mnf-11-btn:hover {
  background: #2f3850;
  transform: translateY(-1px);
  box-shadow: 0 14px 30px rgba(16, 24, 40, .14);
}

.mnf-11-btn--wide {
  width: 100%;
  text-align: center;
  margin-top: auto;
}

.mnf-11-note {
  margin: 0;
  color: rgba(16, 24, 40, .70);
  font-size: 13px;
}

.mnf-11-legal {
  margin-top: 14px;
  color: rgba(16, 24, 40, .70);
  font-size: 13px;
}

/* Responsywność */
@media (max-width: 991px) {
  .mnf-11-hero {
    grid-template-columns: 1fr;
  }

  .mnf-11-steps {
    grid-template-columns: 1fr;
  }

  .mnf-11-packages {
    flex-direction: column;
  }
}

/* =========================================================
   WOOCOMMERCE / BLOCKSY — MINI KOSZYK (dropdown w menu)
   ========================================================= */

/* Kontener dropdownu mini-koszyka */
.ct-header-cart .ct-cart-content,
.ct-cart-content {
  background: #ffffff !important;
  color: #3e4a64 !important;
  border: 1px solid rgba(62, 74, 100, 0.16) !important;
  border-radius: 14px !important;
  box-shadow: 0 18px 45px rgba(16, 24, 40, 0.18) !important;
  overflow: hidden;
}

/* Szerokość dropdownu */
.ct-header-cart .ct-cart-content {
  min-width: 340px !important;
}

/* Padding wewnętrzny */
.ct-cart-content .ct-cart-items,
.ct-cart-content .woocommerce-mini-cart,
.ct-cart-content .woocommerce-mini-cart__total,
.ct-cart-content .woocommerce-mini-cart__buttons {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

/* Pozycje produktów */
.ct-cart-content .woocommerce-mini-cart-item,
.ct-cart-content .mini_cart_item {
  padding: 12px 0 !important;
  border-bottom: 1px dashed rgba(62, 74, 100, 0.14) !important;
}

.ct-cart-content .woocommerce-mini-cart-item:last-child,
.ct-cart-content .mini_cart_item:last-child {
  border-bottom: 0 !important;
}

/* Miniatury */
.ct-cart-content img {
  border-radius: 10px !important;
  border: 1px solid rgba(62, 74, 100, 0.12) !important;
}

/* Ilość/cena */
.ct-cart-content .quantity,
.ct-cart-content .amount {
  color: rgba(62, 74, 100, 0.85) !important;
  font-weight: 650 !important;
}

/* Suma */
.ct-cart-content .woocommerce-mini-cart__total {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  border-top: 1px solid rgba(62, 74, 100, 0.10) !important;
  margin-top: 8px !important;
}

.ct-cart-content .woocommerce-mini-cart__total strong,
.ct-cart-content .woocommerce-mini-cart__total .amount {
  color: #3e4a64 !important;
  font-weight: 900 !important;
}

/* Przyciski */
.ct-cart-content .woocommerce-mini-cart__buttons {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  padding-top: 12px !important;
  padding-bottom: 16px !important;
}

.ct-cart-content .woocommerce-mini-cart__buttons a.button,
.ct-cart-content .woocommerce-mini-cart__buttons a.checkout {
  border-radius: 12px !important;
  padding: 12px 14px !important;
  font-weight: 900 !important;
  border: 1px solid rgba(62, 74, 100, 0.18) !important;
  box-shadow: 0 10px 22px rgba(16, 24, 40, 0.10) !important;
  transition: transform .08s ease, box-shadow .2s ease, background .2s ease, filter .2s ease;
  text-align: center !important;
}

/* "Zobacz koszyk" */
.ct-cart-content .woocommerce-mini-cart__buttons a.button {
  background: #ebd1b8 !important;
  color: #3e4a64 !important;
}

/* "Zamówienie" */
.ct-cart-content .woocommerce-mini-cart__buttons a.checkout {
  background: #91cae5 !important;
  color: #3e4a64 !important;
}

.ct-cart-content .woocommerce-mini-cart__buttons a.button:hover,
.ct-cart-content .woocommerce-mini-cart__buttons a.checkout:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(16, 24, 40, 0.14) !important;
  filter: brightness(1.02);
}

/* Badge przy ikonie koszyka */
.ct-header-cart .ct-cart-badge,
.ct-cart-badge {
  background: #91cae5 !important;
  color: #3e4a64 !important;
  border: 1px solid rgba(62, 74, 100, 0.18) !important;
  font-weight: 900 !important;
}

/* Mobile */
@media (max-width: 600px) {
  .ct-header-cart .ct-cart-content {
    min-width: unset !important;
    width: calc(100vw - 24px) !important;
  }

  .ct-cart-content .woocommerce-mini-cart__buttons {
    grid-template-columns: 1fr !important;
  }
}

/* =========================================================
   MINI-KOSZYK — tylko 1 przycisk (Zamówienie)
   ========================================================= */

.ct-cart-content .woocommerce-mini-cart__buttons a.button:not(.checkout) {
  display: none !important;
}

.ct-cart-content .woocommerce-mini-cart__buttons {
  grid-template-columns: 1fr !important;
}

.ct-cart-content .woocommerce-mini-cart__buttons a.checkout {
  width: 100% !important;
  border-radius: 14px !important;
  padding: 13px 16px !important;
  font-weight: 900 !important;
}

/* =========================================================
   WOOCOMMERCE — CHECKOUT (KASA) styl MNF
   ========================================================= */

/* Karty: płatność + podsumowanie */
.woocommerce-checkout #payment,
.woocommerce-checkout .woocommerce-checkout-review-order {
  background: #fff !important;
  border: 1px solid rgba(62, 74, 100, 0.16) !important;
  border-radius: 16px !important;
  box-shadow: 0 14px 40px rgba(16, 24, 40, 0.08) !important;
  overflow: hidden;
}

/* Nagłówki wewnątrz sekcji płatności */
.woocommerce-checkout #payment .payment_methods,
.woocommerce-checkout #payment .payment_box,
.woocommerce-checkout #payment .form-row {
  padding-left: 18px !important;
  padding-right: 18px !important;
}

/* Metody płatności – ładniejszy „row” */
.woocommerce-checkout #payment ul.payment_methods li {
  padding: 14px 0 !important;
  border-bottom: 1px solid rgba(62, 74, 100, 0.10) !important;
}

.woocommerce-checkout #payment ul.payment_methods li:last-child {
  border-bottom: 0 !important;
}

/* Opis metody płatności */
.woocommerce-checkout #payment div.payment_box {
  margin-top: 10px !important;
  border-radius: 14px !important;
  background: rgba(235, 209, 184, 0.22) !important;
  border: 1px solid rgba(62, 74, 100, 0.12) !important;
  box-shadow: none !important;
}

/* Checkboxy regulaminów + linki */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
.woocommerce-checkout .form-row.woocommerce-validated,
.woocommerce-checkout .form-row.validate-required {
  font-size: 15px;
  color: rgba(62, 74, 100, 0.85);
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a {
  color: #3e4a64;
  font-weight: 800;
  text-decoration: none;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a:hover {
  text-decoration: underline;
}

/* Ujednolicone pola formularza (kasa) */
.woocommerce-checkout form .form-row input.input-text,
.woocommerce-checkout form .form-row textarea,
.woocommerce-checkout form .form-row select {
  border-radius: 12px !important;
  border: 1px solid rgba(62, 74, 100, 0.16) !important;
  padding: 11px 12px !important;
  background: #fff !important;
}

.woocommerce-checkout form .form-row input.input-text:focus,
.woocommerce-checkout form .form-row textarea:focus,
.woocommerce-checkout form .form-row select:focus {
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(145, 202, 229, 0.35) !important;
  border-color: rgba(145, 202, 229, 0.75) !important;
}

/* Przycisk finalizacji – MNF */
.woocommerce-checkout #place_order,
.woocommerce-checkout button#place_order,
.woocommerce-checkout .button.alt {
  width: 100% !important;
  border-radius: 14px !important;
  padding: 14px 18px !important;
  font-weight: 900 !important;
  letter-spacing: 0.2px !important;
  background: #91cae5 !important;
  color: #3e4a64 !important;
  border: 1px solid rgba(62, 74, 100, 0.18) !important;
  box-shadow: 0 14px 30px rgba(16, 24, 40, 0.12) !important;
}

.woocommerce-checkout #place_order:hover,
.woocommerce-checkout button#place_order:hover,
.woocommerce-checkout .button.alt:hover {
  transform: translateY(-1px);
  box-shadow: 0 18px 38px rgba(16, 24, 40, 0.16) !important;
  filter: brightness(1.02);
}

/* Drobne: tabelka podsumowania */
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
  padding: 12px 14px !important;
}

.woocommerce-checkout-review-order-table {
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

/* =========================================================
   CHECKOUT – dopieszczenie detali (czystszy wygląd)
   ========================================================= */

/* Usuń niepotrzebne cienkie linie */
.woocommerce-checkout #payment ul.payment_methods li {
  border-bottom: none !important;
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
  border: none !important;
}

/* Usuń podwójne obramowania */
.woocommerce-checkout #payment {
  border-top: none !important;
}

/* Wyrównaj sekcję płatności */
.woocommerce-checkout #payment ul.payment_methods {
  padding: 0 20px 10px 20px !important;
}

/* Opis płatności – bardziej elegancki */
.woocommerce-checkout #payment div.payment_box {
  margin: 14px 0 18px !important;
  padding: 18px !important;
  border-radius: 16px !important;
  background: rgba(235, 209, 184, 0.18) !important;
  border: 1px solid rgba(62, 74, 100, 0.10) !important;
}

/* Uporządkuj odstępy checkboxów */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
  margin-top: 18px !important;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row {
  margin-bottom: 10px !important;
}

/* Checkbox bardziej „miękki” */
.woocommerce-checkout input[type="checkbox"] {
  transform: scale(1.1);
  accent-color: #91cae5;
}

/* Tekst pod regulaminami */
.woocommerce-checkout .woocommerce-privacy-policy-text {
  font-size: 14px;
  color: rgba(62, 74, 100, 0.80);
  margin-bottom: 16px !important;
}

/* Przycisk – bardziej wtopiony w kartę */
.woocommerce-checkout #place_order {
  margin-top: 14px !important;
  border-radius: 16px !important;
}

/* Usuń dodatkowe linie między sekcjami */
.woocommerce-checkout .shop_table {
  border: none !important;
}

/* Cała sekcja checkout – lżejszy dół */
.woocommerce-checkout #payment {
  padding-bottom: 18px !important;
}

/* =========================================================
   CHECKOUT – MOBILE (naprawa ucinania + lepsze odstępy)
   ========================================================= */
@media (max-width: 600px) {

  /* 1) Najczęstsza przyczyna ucinania: ujemne marginesy / paddingi kontenerów */
  .woocommerce-checkout .entry-content,
  .woocommerce-checkout .woocommerce,
  .woocommerce-checkout form.checkout,
  .woocommerce-checkout #payment,
  .woocommerce-checkout .woocommerce-checkout-review-order,
  .woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
  }

  /* 2) Dopasuj paddingi kart, żeby nic nie uciekało poza ekran */
  .woocommerce-checkout #payment,
  .woocommerce-checkout .woocommerce-checkout-review-order {
    border-radius: 16px !important;
    overflow: hidden !important;
  }

  .woocommerce-checkout #payment ul.payment_methods {
    padding: 0 14px 10px 14px !important;
  }

  .woocommerce-checkout #payment .payment_box,
  .woocommerce-checkout #payment div.payment_box {
    margin: 12px 0 14px !important;
    padding: 14px !important;
    border-radius: 14px !important;
  }

  /* 3) Teksty (żeby były czytelne i bez „ucięcia”) */
  .woocommerce-checkout #payment,
  .woocommerce-checkout #payment * {
    word-break: normal !important;
    overflow-wrap: anywhere !important;
  }

  .woocommerce-checkout .woocommerce-privacy-policy-text {
    padding: 0 14px !important;
    margin: 10px 0 12px !important;
    font-size: 13.5px !important;
    line-height: 1.55 !important;
  }

  /* 4) Checkboxy – wyrównanie i mniejsze odstępy */
  .woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    padding: 0 14px 6px !important;
    margin-top: 8px !important;
  }

  .woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label {
    display: inline-flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    line-height: 1.35 !important;
  }

  .woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
    margin-top: 2px !important;
    flex: 0 0 auto !important;
  }

  /* 5) Przycisk – pełna szerokość, mniej „wysoki”, lepszy radius */
  .woocommerce-checkout #place_order,
  .woocommerce-checkout button#place_order {
    width: 100% !important;
    margin: 12px 14px 16px !important;
    padding: 14px 16px !important;
    border-radius: 16px !important;
    font-size: 16px !important;
  }

  /* 6) Jeśli motyw dodaje padding po bokach do tabel/podsumowania */
  .woocommerce-checkout-review-order-table,
  .woocommerce-checkout-review-order {
    margin: 0 !important;
  }
}

/* =========================================================
   CHECKOUT – usunięcie zbędnych linii i ramek Woo
   ========================================================= */

/* Usuń pionowe linie przy payment */
.woocommerce-checkout #payment::before,
.woocommerce-checkout #payment::after,
.woocommerce-checkout #payment ul.payment_methods::before,
.woocommerce-checkout #payment ul.payment_methods::after {
  display: none !important;
}

/* Usuń domyślne obramowania Woo */
.woocommerce-checkout #payment,
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods li {
  border: none !important;
}

/* Usuń cienkie linie między sekcjami */
.woocommerce-checkout .shop_table,
.woocommerce-checkout table,
.woocommerce-checkout .woocommerce-checkout-review-order-table {
  border: none !important;
}

/* =========================================================
   CHECKOUT – wyrównanie sekcji danych (mobile fix)
   ========================================================= */
@media (max-width: 768px) {

  /* Reset szerokości kolumn Woo */
  .woocommerce-checkout .col2-set,
  .woocommerce-checkout .col-1,
  .woocommerce-checkout .col-2 {
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Wyrównaj całą sekcję formularza */
  .woocommerce-checkout form.checkout {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  /* Sekcja "Dane rozliczeniowe" */
  .woocommerce-checkout .woocommerce-billing-fields {
    margin-bottom: 24px !important;
  }

  .woocommerce-checkout .woocommerce-billing-fields h3 {
    margin-bottom: 16px !important;
  }

  /* Ujednolicenie pól */
  .woocommerce-checkout form .form-row {
    margin-bottom: 14px !important;
  }

  .woocommerce-checkout form .form-row input.input-text,
  .woocommerce-checkout form .form-row textarea,
  .woocommerce-checkout form .form-row select {
    width: 100% !important;
  }
}

/* =========================================================
   CHECKOUT MOBILE – idealna symetria
   ========================================================= */

@media (max-width: 768px) {

  /* 1️⃣ Ujednolicamy szerokość głównego kontenera */
  .woocommerce-checkout .ct-container,
  .woocommerce-checkout .ct-content,
  .woocommerce-checkout .woocommerce,
  .woocommerce-checkout form.checkout {
    padding-left: 16px !important;
    padding-right: 16px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* 2️⃣ Reset kolumn Woo (często powodują przesunięcia) */
  .woocommerce-checkout .col2-set,
  .woocommerce-checkout .col-1,
  .woocommerce-checkout .col-2 {
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* 3️⃣ Formularz – równe odstępy */
  .woocommerce-checkout form .form-row {
    margin-bottom: 14px !important;
    padding: 0 !important;
  }

  /* 4️⃣ Sekcja regulaminów – takie same wcięcia jak pola */
  .woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-top: 18px !important;
  }

  .woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row {
    margin-bottom: 10px !important;
  }

  /* 5️⃣ Przycisk – idealnie w linii z formularzem */
  .woocommerce-checkout #place_order,
  .woocommerce-checkout button#place_order {
    width: 100% !important;
    margin: 18px 0 0 0 !important;
    padding: 14px 16px !important;
    border-radius: 16px !important;
  }

  /* 6️⃣ Usuwamy dodatkowe wewnętrzne paddingi Woo */
  .woocommerce-checkout #payment ul.payment_methods,
  .woocommerce-checkout #payment .payment_box,
  .woocommerce-checkout .woocommerce-privacy-policy-text {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

}

/* =========================================================
   CHECKOUT MOBILE – strzałka przewijania nie psuje optyki
   ========================================================= */
@media (max-width: 768px) {

  /* 1) Ukryj przycisk "do góry" tylko na kasie */
  body.woocommerce-checkout .ct-scroll-top,
  body.woocommerce-checkout .ct-back-to-top,
  body.woocommerce-checkout .back-to-top,
  body.woocommerce-checkout #to-top,
  body.woocommerce-checkout .scroll-to-top {
    display: none !important;
  }

  /* 2) Twarde wyrównanie paddingów (dla pewności) */
  body.woocommerce-checkout .ct-container,
  body.woocommerce-checkout .ct-content,
  body.woocommerce-checkout .woocommerce,
  body.woocommerce-checkout form.checkout {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

@media (max-width: 768px) {

  body.woocommerce-checkout .ct-scroll-top,
  body.woocommerce-checkout .ct-back-to-top {
    right: 10px !important;
    bottom: 10px !important;
    width: 38px !important;
    height: 38px !important;
    opacity: .85 !important;
  }
}

/* =========================================================
   CHECKOUT MOBILE – twarde wyrównanie paddingów w #payment
   (usuwa wrażenie niesymetrii)
   ========================================================= */
@media (max-width: 768px) {

  /* Ustal jeden padding „siatki” */
  body.woocommerce-checkout {
    --mnf-gutter: 16px;
  }

  /* Karta płatności: bez wewnętrznych przesunięć */
  body.woocommerce-checkout #payment {
    padding: 0 !important;
    /* ważne */
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Wszystkie sekcje w #payment dostają identyczny padding */
  body.woocommerce-checkout #payment .payment_methods,
  body.woocommerce-checkout #payment .place-order,
  body.woocommerce-checkout #payment .woocommerce-privacy-policy-text,
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper,
  body.woocommerce-checkout #payment .form-row {
    padding-left: var(--mnf-gutter) !important;
    padding-right: var(--mnf-gutter) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Opis metody płatności (payment_box) też w siatce */
  body.woocommerce-checkout #payment div.payment_box,
  body.woocommerce-checkout #payment .payment_box {
    margin-left: var(--mnf-gutter) !important;
    margin-right: var(--mnf-gutter) !important;
    padding: 14px !important;
    border-radius: 14px !important;
  }

  /* Checkboxy: wyrównanie do siatki + brak „wcięcia etykiet” */
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper label {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin: 0 !important;
  }

  /* Przycisk: żadnych bocznych marginesów – w tej samej siatce */
  body.woocommerce-checkout #place_order,
  body.woocommerce-checkout button#place_order {
    margin: 14px 0 0 0 !important;
    width: 100% !important;
  }
}

@media (max-width: 768px) {

  body.woocommerce-checkout .ct-container,
  body.woocommerce-checkout .ct-content,
  body.woocommerce-checkout .entry-content {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* =========================================================
   CHECKOUT MOBILE – twarde centrowanie kolumny + symetria
   (blokuje rozjazdy wrapperów Blocksy/Woo)
   ========================================================= */
@media (max-width: 768px) {

  /* 1) Checkout jako jeden „słupek” centrowany */
  body.woocommerce-checkout .site-main,
  body.woocommerce-checkout main {
    display: block !important;
  }

  body.woocommerce-checkout .woocommerce,
  body.woocommerce-checkout form.checkout {
    max-width: 520px !important;
    /* bezpiecznie dla mobile */
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  /* 2) Jedne wspólne guttery dla CAŁEGO checkoutu */
  body.woocommerce-checkout .ct-container,
  body.woocommerce-checkout .ct-content,
  body.woocommerce-checkout .entry-content,
  body.woocommerce-checkout .woocommerce,
  body.woocommerce-checkout form.checkout {
    padding-left: 16px !important;
    padding-right: 16px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* 3) Karty i tabelki zawsze 100% i bez własnych marginesów */
  body.woocommerce-checkout .woocommerce-checkout-review-order,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table,
  body.woocommerce-checkout #payment {
    width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  /* 4) W #payment wszystko w tej samej siatce (identyczne wcięcia) */
  body.woocommerce-checkout #payment {
    padding: 0 !important;
  }

  body.woocommerce-checkout #payment .payment_methods,
  body.woocommerce-checkout #payment .place-order,
  body.woocommerce-checkout #payment .woocommerce-privacy-policy-text,
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper,
  body.woocommerce-checkout #payment .form-row {
    padding-left: 16px !important;
    padding-right: 16px !important;
    margin: 0 !important;
  }

  body.woocommerce-checkout #payment .payment_box,
  body.woocommerce-checkout #payment div.payment_box {
    margin: 12px 16px 14px !important;
    padding: 14px !important;
    border-radius: 14px !important;
  }

  /* 5) Przycisk bez bocznych marginesów */
  body.woocommerce-checkout #place_order,
  body.woocommerce-checkout button#place_order {
    margin: 14px 0 0 0 !important;
    width: 100% !important;
  }
}

/* =========================================================
   CHECKOUT – "Twoje zamówienie": usuń inner wrapper (karta w karcie)
   ========================================================= */

/* 1) Zdejmij tło/ramkę z wewnętrznej tabeli, żeby nie było "pudełka w pudełku" */
.woocommerce-checkout .woocommerce-checkout-review-order-table,
.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* 2) Usuń dodatkowe wcięcia tabeli – niech idzie na pełną szerokość sekcji */
.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 3) Jeśli masz dodatkowy wrapper z paddingiem w sekcji podsumowania – zdejmujemy go */
.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-checkout #order_review {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

/* 4) Płatność: ujednolicenie do tej samej "siatki" co tabela */
.woocommerce-checkout #payment .payment_methods,
.woocommerce-checkout #payment .place-order,
.woocommerce-checkout #payment .woocommerce-privacy-policy-text,
.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

/* =========================================================
   CHECKOUT – usuń "karta w karcie" (inner wrapper) w podsumowaniu
   i w płatnościach + rozszerz zawartość do krawędzi sekcji
   ========================================================= */

/* 1) Podsumowanie zamówienia – zdejmij styl z wewnętrznej tabeli/kontenera */
.woocommerce-checkout #order_review,
.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-checkout .woocommerce-checkout-review-order-table,
.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table,
.woocommerce-checkout .shop_table {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* 2) Często Blocksy/Woo robi dodatkową ramkę przez pseudo-elementy */
.woocommerce-checkout #order_review::before,
.woocommerce-checkout #order_review::after,
.woocommerce-checkout .woocommerce-checkout-review-order::before,
.woocommerce-checkout .woocommerce-checkout-review-order::after,
.woocommerce-checkout .woocommerce-checkout-review-order-table::before,
.woocommerce-checkout .woocommerce-checkout-review-order-table::after {
  content: none !important;
  display: none !important;
}

/* 3) Rozszerzenie zawartości: tabela ma iść „na full” w sekcji */
.woocommerce-checkout .woocommerce-checkout-review-order-table {
  width: 100% !important;
  margin: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

/* 4) Usuń wewnętrzne boczne wcięcia w tabeli (żeby było jak na Twoich strzałkach) */
.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td {
  padding-left: 0 !important;
  padding-right: 0 !important;
  border: 0 !important;
}

/* =========================================================
   CHECKOUT – usuń "inner wrapper" w płatnościach
   ========================================================= */

/* 5) Lista metod płatności nie może być „kartą w karcie” */
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout #payment .payment_methods {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* 6) Te pionowe/poziome linie często siedzą na li i label */
.woocommerce-checkout #payment ul.payment_methods li,
.woocommerce-checkout #payment ul.payment_methods li label {
  border: 0 !important;
  box-shadow: none !important;
}

/* 7) Jeśli chcesz zostawić beżowy opis (payment_box) – zostaje,
      ale usuwamy mu „kapsułę”, jeśli dalej robi dodatkową ramkę */
.woocommerce-checkout #payment .payment_box {
  box-shadow: none !important;
}

/* =========================================================
   MOBILE – jeszcze mocniej (żeby nie było różnic po bokach)
   ========================================================= */
@media (max-width: 768px) {

  /* Tabela + płatności mają trzymać tę samą siatkę */
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #payment {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  /* Ale same „wewnętrzne” elementy już bez dodatkowych paddingów */
  body.woocommerce-checkout #order_review .woocommerce-checkout-review-order-table,
  body.woocommerce-checkout #payment ul.payment_methods {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* =========================================================
   CHECKOUT – napraw łamanie tekstu w checkboxach
   ========================================================= */

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label,
.woocommerce-checkout .woocommerce-privacy-policy-text {
  word-break: normal !important;
  overflow-wrap: normal !important;
  white-space: normal !important;
}

/* Label jako flex bez ściskania tekstu */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
}

/* Tekst nie może się zwężać */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label span,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label .required {
  flex: 1 1 auto !important;
}

/* =========================================================
   CHECKOUT – usuń wewnętrzne wrapery (Blocksy + Woo)
   ========================================================= */

/* 1️⃣ Usuń dodatkowy wrapper regulaminów */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
  padding-left: 0 !important;
  padding-right: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* 2️⃣ Usuń „karta w karcie” w podsumowaniu */
body.woocommerce-checkout #order_review,
body.woocommerce-checkout .woocommerce-checkout-review-order {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* 3️⃣ Usuń dodatkowe wcięcia w tabeli */
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 4️⃣ Spłaszcz payment */
body.woocommerce-checkout #payment {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* =========================================================
   CHECKOUT – zaokrąglenia na głównym wrapperze podsumowania
   ========================================================= */
body.woocommerce-checkout .ct-order-review {
  border-radius: 16px !important;
  overflow: hidden !important;
}

/* =========================================================
   CHECKOUT – payment_box (opis przelewu) na pełną szerokość
   ========================================================= */
body.woocommerce-checkout #payment .payment_box,
body.woocommerce-checkout #payment div.payment_box {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

/* =========================================================
   CHECKOUT – checkboxy: stop łamaniu po literach + równe wcięcia
   ========================================================= */

/* Twardo wyłącz łamanie "anywhere/break-all" na tekstach */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper * {
  word-break: normal !important;
  overflow-wrap: normal !important;
  white-space: normal !important;
  hyphens: none !important;
}

/* Label ma być normalnym układem: checkbox + tekst */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 0 !important;
}

/* Tekst ma zajmować resztę miejsca (żeby się nie ściskał) */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label span {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

@media (max-width: 768px) {

  body.woocommerce-checkout #payment .payment_methods,
  body.woocommerce-checkout #payment .place-order,
  body.woocommerce-checkout #payment .woocommerce-privacy-policy-text,
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* =========================================================
   CHECKOUT – naprawa "wąskiej kolumny" i płatności (BACS)
   ========================================================= */

/* 1) W #payment wyłącz agresywne łamanie (które robi literowanie) */
body.woocommerce-checkout #payment,
body.woocommerce-checkout #payment * {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

/* Ale dla naprawdę długich rzeczy (linki/URL) – pozwól się łamać */
body.woocommerce-checkout #payment a,
body.woocommerce-checkout #payment .woocommerce-privacy-policy-text a {
  overflow-wrap: anywhere !important;
}

/* 2) Metoda płatności: label nie może być flexem, bo ściska payment_box */
body.woocommerce-checkout #payment ul.payment_methods li label {
  display: block !important;
  width: 100% !important;
}

/* 3) Metoda płatności: li jako normalny blok na 100% */
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
  display: block !important;
  width: 100% !important;
}

/* 4) Payment box (opis przelewu) – pełna szerokość + równe marginesy */
body.woocommerce-checkout #payment .payment_box,
body.woocommerce-checkout #payment div.payment_box {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 12px 0 14px 0 !important;
  box-sizing: border-box !important;
}

/* 5) Form-row w payment (privacy + checkboxy) – nie zawężaj, nie rób inline */
body.woocommerce-checkout #payment .form-row,
body.woocommerce-checkout #payment p.form-row {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  float: none !important;
}

/* 6) Checkboxy – układ: checkbox + tekst (normalna szerokość) */
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
}

body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper label span {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

/* 7) Przycisk – zawsze pełna szerokość, bez dziwnych marginesów */
body.woocommerce-checkout #place_order,
body.woocommerce-checkout button#place_order {
  width: 100% !important;
  max-width: none !important;
  margin: 14px 0 0 0 !important;
}

@media (max-width: 768px) {

  body.woocommerce-checkout .ct-order-review,
  body.woocommerce-checkout .ct-order-review * {
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}

/* =========================================================
   CHECKOUT – naprawa:
   1) za wąski box "Przelew bankowy" (payment_box)
   2) literowanie / łamanie po literach w akceptacjach
   ========================================================= */

@media (max-width: 768px) {

  /* ==============================
     1) PRZELEW – nie ściskaj payment_box
     ============================== */

  /* metoda płatności ma być blokiem na 100% */
  body.woocommerce-checkout #payment ul.payment_methods,
  body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
    display: block !important;
    width: 100% !important;
  }

  /* label NIE może ściskać zawartości */
  body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method>label {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
  }

  /* a sam box z opisem przelewu ma iść na full */
  body.woocommerce-checkout #payment .payment_box,
  body.woocommerce-checkout #payment div.payment_box,
  body.woocommerce-checkout #payment .wc_payment_method .payment_box {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 12px 0 14px 0 !important;
    box-sizing: border-box !important;
  }

  /* ==============================
     2) AKCEPTACJE – koniec literowania
     (w Woo są to p.form-row.validate-required)
     ============================== */

  /* twardo wyłącz agresywne łamanie w tym obszarze */
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper,
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper * {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    white-space: normal !important;
  }

  /* wrapper ma być pełnej szerokości */
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper {
    width: 100% !important;
    max-width: none !important;
  }

  /* te wiersze NIE mogą być inline/flex w sposób, który zwęża tekst */
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper p.form-row,
  body.woocommerce-checkout #payment p.form-row.validate-required {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 10px 0 !important;
    padding: 0 !important;
  }

  /* label: checkbox + tekst obok, tekst ma zająć resztę */
  body.woocommerce-checkout #payment p.form-row.validate-required label {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: none !important;
  }

  /* tekst w labelu musi mieć możliwość normalnego łamania na słowa */
  body.woocommerce-checkout #payment p.form-row.validate-required label span,
  body.woocommerce-checkout #payment p.form-row.validate-required label .woocommerce-terms-and-conditions-checkbox-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  /* (opcjonalnie) linki mogą się łamać, żeby nie rozwalały układu */
  body.woocommerce-checkout #payment p.form-row.validate-required a,
  body.woocommerce-checkout #payment .woocommerce-privacy-policy-text a {
    overflow-wrap: anywhere !important;
  }
}

/* =========================================================
   CHECKOUT – final: usuń beżowy box + rozszerz teksty
   ========================================================= */
@media (max-width: 768px) {

  /* 1) PRZELEW: usuń beżowy wrapper (payment_box) */
  body.woocommerce-checkout #payment .payment_box,
  body.woocommerce-checkout #payment div.payment_box {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 10px 0 14px 0 !important;
  }

  /* Tekst w payment_box ma iść pełną szerokością */
  body.woocommerce-checkout #payment .payment_box p,
  body.woocommerce-checkout #payment div.payment_box p {
    margin: 0 !important;
    max-width: none !important;
    width: 100% !important;
    line-height: 1.55 !important;
  }

  /* 2) "Twoje dane..." + prywatność: pełna szerokość i lepsza czytelność */
  body.woocommerce-checkout #payment .woocommerce-privacy-policy-text,
  body.woocommerce-checkout #payment .woocommerce-privacy-policy-text p,
  body.woocommerce-checkout #payment .woocommerce-privacy-policy-text * {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    line-height: 1.55 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  /* 3) Checkboxy: pełna szerokość + normalne łamanie + czytelny line-height */
  body.woocommerce-checkout #payment p.form-row.validate-required,
  body.woocommerce-checkout #payment p.form-row.validate-required label,
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper,
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper label {
    width: 100% !important;
    max-width: none !important;
    line-height: 1.45 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  /* Tekst w labelu ma zająć całą resztę miejsca */
  body.woocommerce-checkout #payment p.form-row.validate-required label span,
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper label span {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  /* Linki mogą się łamać, żeby nie rozwalały układu */
  body.woocommerce-checkout #payment p.form-row.validate-required a,
  body.woocommerce-checkout #payment .woocommerce-privacy-policy-text a {
    overflow-wrap: anywhere !important;
  }
}

/* =========================================================
   CHECKOUT – rozciągnięcie sekcji payment do szarej ramki
   ========================================================= */
@media (max-width: 768px) {

  /* 1️⃣ Zdejmij padding z #payment (to on robi drugi słupek) */
  body.woocommerce-checkout #payment {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* 2️⃣ Wszystkie elementy w payment mają iść na pełną szerokość */
  body.woocommerce-checkout #payment .payment_methods,
  body.woocommerce-checkout #payment .payment_box,
  body.woocommerce-checkout #payment .woocommerce-privacy-policy-text,
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper,
  body.woocommerce-checkout #payment p.form-row,
  body.woocommerce-checkout #payment .form-row {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: none !important;
  }

  /* 3️⃣ Tekst przelewu – pełna szerokość, bez zawężania */
  body.woocommerce-checkout #payment .payment_box p {
    width: 100% !important;
    max-width: none !important;
  }

  /* 4️⃣ Checkboxy – pełna szerokość + normalne łamanie */
  body.woocommerce-checkout #payment p.form-row.validate-required,
  body.woocommerce-checkout #payment p.form-row.validate-required label {
    width: 100% !important;
    max-width: none !important;
  }

}

/* =========================================================
   CHECKOUT MOBILE – jedna siatka (czerwone linie)
   ========================================================= */
@media (max-width: 768px) {

  /* Ustal docelowy odstęp od krawędzi (dopasuj 16/18/20) */
  body.woocommerce-checkout {
    --mnf-gutter: 6px;
  }

  /* 1) Cały checkout ma trzymać jedną szerokość */
  body.woocommerce-checkout .woocommerce,
  body.woocommerce-checkout form.checkout {
    padding-left: var(--mnf-gutter) !important;
    padding-right: var(--mnf-gutter) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* 2) Wewnątrz NIE dokładamy kolejnych wcięć (żeby nie zwężało) */
  body.woocommerce-checkout .ct-order-review,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout .woocommerce-checkout-review-order,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table,
  body.woocommerce-checkout #payment,
  body.woocommerce-checkout #payment .payment_methods,
  body.woocommerce-checkout #payment .woocommerce-privacy-policy-text,
  body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper,
  body.woocommerce-checkout #payment .form-row,
  body.woocommerce-checkout #payment p.form-row {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }

  /* 3) Tabelka – komórki bez bocznego paddingu, żeby trzymały czerwone linie */
  body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* =========================================================
   CHECKOUT MOBILE – treść nie dotyka ramki karty
   ========================================================= */
@media (max-width: 768px) {

  /* Odstęp treści od szarej ramki (wewnątrz karty) */
  body.woocommerce-checkout .ct-order-review {
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }

  /* Tabela i payment na full w ramach tej karty (bez dodatkowych wcięć) */
  body.woocommerce-checkout .ct-order-review #order_review,
  body.woocommerce-checkout .ct-order-review .woocommerce-checkout-review-order,
  body.woocommerce-checkout .ct-order-review .woocommerce-checkout-review-order-table,
  body.woocommerce-checkout .ct-order-review #payment {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Komórki tabeli: minimalny komfort, ale bez rozjeżdżania siatki */
  body.woocommerce-checkout .ct-order-review .woocommerce-checkout-review-order-table th,
  body.woocommerce-checkout .ct-order-review .woocommerce-checkout-review-order-table td {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* =========================================================
   MNF – Hero video (Doradztwo 1:1) – pod YouTube
   ========================================================= */

.mnf-11-hero__img {
  align-self: stretch;
}

/* responsywny wrapper 16:9 + styl jak karty MNF */
.mnf-video-wrap {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  /* 16:9 */
  height: 0;

  border-radius: 18px;
  overflow: hidden;

  border: 1px solid rgba(62, 74, 100, .16);
  box-shadow: 0 16px 40px rgba(16, 24, 40, .08);
  background: rgba(145, 202, 229, .10);
}

/* iframe wypełnia wrapper */
.mnf-video-wrap iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

/* delikatny efekt premium */
@media (hover:hover) {
  .mnf-video-wrap {
    transition: transform .18s ease, box-shadow .18s ease;
  }

  .mnf-video-wrap:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 48px rgba(16, 24, 40, .14);
  }
}

/* na mobile: wideo pod tekstem (jeśli hero się składa do 1 kolumny) */
@media (max-width: 991px) {
  .mnf-video-wrap {
    border-radius: 16px;
  }
}

/* =========================================================
   MNF – Dropdown menu (Blocksy) – wersja docelowa
   ========================================================= */

:root {
  --mnf-navy: #3e4a64;
  --mnf-sky: #91cae5;
  --mnf-sand: #ebd1b8;
  --mnf-radius: 16px;
  --mnf-shadow: 0 18px 45px rgba(16, 24, 40, .18);
}

/* ===== Kontener dropdown ===== */
.ct-header ul.sub-menu,
.ct-header .sub-menu {
  background: var(--mnf-navy) !important;
  border-radius: var(--mnf-radius) !important;
  box-shadow: var(--mnf-shadow) !important;
  padding: 10px !important;
  border: 1px solid rgba(255, 255, 255, .12) !important;
}

/* ===== Pozycje menu ===== */
.ct-header ul.sub-menu>li>a,
.ct-header .sub-menu>li>a {
  display: block !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  color: rgba(255, 255, 255, .92) !important;
  font-weight: 650 !important;
  text-decoration: none !important;
  transition: all .2s ease;
}

/* Hover */
.ct-header ul.sub-menu>li>a:hover,
.ct-header .sub-menu>li>a:hover {
  background: rgba(145, 202, 229, .18) !important;
  color: #fff !important;
  transform: translateX(2px);
}

/* Subtelne separatory */
.ct-header ul.sub-menu>li+li,
.ct-header .sub-menu>li+li {
  border-top: 1px solid rgba(255, 255, 255, .08) !important;
}

/* ===== MOBILE: usuń "min-height/height" które robią wielką dziurę ===== */
@media (max-width: 900px) {

  /* 1) wymuś normalny układ (kolumna) */
  .mnf-11-hero {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;

    /* kluczowe: kasujemy sztuczne wysokości */
    height: auto !important;
    min-height: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  /* 2) blok tekstu nie może mieć narzuconej wysokości */
  .mnf-11-hero__text {
    height: auto !important;
    min-height: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  /* 3) bardzo często lista/ostatni element dodaje duży margines */
  .mnf-11-hero__text>*:last-child {
    margin-bottom: 0 !important;
  }

  .mnf-11-list {
    margin-bottom: 12px !important;
  }

  /* 4) CTA kontrolowane */
  .mnf-11-hero__text .mnf-11-btn {
    margin: 8px 0 10px 0 !important;
    display: inline-block;
  }

  /* 5) wideo dosuwamy */
  #mnf-film,
  .mnf-11-hero__img {
    margin-top: 0 !important;
    padding-top: 0 !important;
    height: auto !important;
    min-height: 0 !important;
  }

  /* jeśli gdzieś jest clearfix/after z wysokością */
  .mnf-11-hero::before,
  .mnf-11-hero::after {
    content: none !important;
  }
}

/* MNF: zmniejsz odstępy przy wideo w HERO (mobile) */
@media (max-width: 900px) {

  /* dosuń wideo bliżej przycisku */
  #mnf-film,
  .mnf-11-hero__img {
    margin-top: 6px !important;
  }

  /* jeśli masz wrapper .mnf-11-video--hero (kafel) to zbierz padding */
  .mnf-11-video--hero {
    padding: 10px !important;
    margin: 0 !important;
  }

  /* jeśli beżowa ramka jest robiona przez .mnf-video-wrap – zmniejsz jej „oddech” */
  .mnf-video-wrap {
    margin: 0 !important;
  }

  /* jeśli iframe ma dodatkowe marginesy z motywu */
  .mnf-video-wrap iframe {
    margin: 0 !important;
    display: block;
  }
}

@media (max-width: 900px) {
  .mnf-11-video--hero {
    padding: 8px !important;
    border-radius: 14px !important;
  }

  .mnf-video-wrap {
    border-radius: 12px !important;
  }
}

/* MNF: akordeon ankiety pod filmem */
.mnf-ankieta {
  margin-top: 18px;
  padding: 20px;
  background: #ebd1b8;
  border-radius: 16px;
}

.mnf-ankieta__title {
  margin: 0 0 12px 0;
  font-weight: 700;
  color: #3e4a64;
  font-size: 18px;
  line-height: 1.3;
}

.mnf-ankieta__toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  border: none;
  padding: 0;
  font-weight: 700;
  font-size: 15px;
  color: #3e4a64;
  cursor: pointer;
}

.mnf-ankieta__toggle::after {
  content: "▼";
  font-size: 12px;
  transition: transform .2s ease;
}

.mnf-ankieta__toggle[aria-expanded="true"]::after {
  transform: rotate(180deg);
}

/* MNF: WPForms - pseudo-nagłówki sekcji bez pola textarea */
.mnf-ankieta .wpforms-field.mnf-sekcja-naglowek textarea {
  display: none !important;
}

.mnf-ankieta .wpforms-field.mnf-sekcja-naglowek .wpforms-field-description {
  margin: 16px 0 8px !important;
  padding: 0 !important;
  font-weight: 800 !important;
  letter-spacing: .02em;
  text-transform: uppercase;
  color: #3e4a64 !important;
  font-size: 14px !important;
}

.mnf-ankieta .wpforms-field.mnf-sekcja-naglowek {
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

/* MNF – przycisk wysyłki formularza */

.mnf-ankieta .wpforms-submit {
  background: #3e4a64 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 22px !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  transition: background .2s ease, transform .08s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .08);
}

.mnf-ankieta .wpforms-submit:hover {
  background: #2f3950 !important;
}

.mnf-ankieta .wpforms-submit:active {
  transform: translateY(1px);
}

.mnf-ankieta .wpforms-submit {
  background: #91cae5 !important;
  color: #3e4a64 !important;
}

/* MNF – komunikat po wysłaniu formularza */

.mnf-ankieta .wpforms-confirmation-container-full {
  background: #f4e6d8 !important;
  /* jaśniejsza wersja beżu */
  border: 1px solid rgba(62, 74, 100, .15) !important;
  color: #3e4a64 !important;
  border-radius: 14px !important;
  padding: 22px !important;
  font-size: 15px;
  line-height: 1.6;
}

/* usuń domyślne zielone elementy */
.mnf-ankieta .wpforms-confirmation-container-full p {
  margin: 0 0 12px 0;
}

/* delikatny akcent nagłówkowy */
.mnf-ankieta .wpforms-confirmation-container-full strong {
  color: #3e4a64;
}

.mnf-ankieta .wpforms-confirmation-container-full {
  border-left: 4px solid #91cae5 !important;
}

/* MNF – zawężenie ankiety (czytelniej + premium) */
.mnf-ankieta {
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}

/* sam formularz (WPForms) */
.mnf-ankieta .wpforms-container {
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}

/* pola na pełną szerokość w środku */
.mnf-ankieta .wpforms-container input[type="text"],
.mnf-ankieta .wpforms-container input[type="email"],
.mnf-ankieta .wpforms-container input[type="tel"],
.mnf-ankieta .wpforms-container input[type="number"],
.mnf-ankieta .wpforms-container textarea,
.mnf-ankieta .wpforms-container select {
  width: 100% !important;
  box-sizing: border-box;
}

/* mobile: nie przycinaj, tylko dopasuj */
@media (max-width: 820px) {

  .mnf-ankieta,
  .mnf-ankieta .wpforms-container {
    max-width: 100%;
  }
}

/* MNF – mniejsze odstępy między pytaniami */

.mnf-ankieta .wpforms-container .wpforms-field {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  margin-bottom: 6px !important;
}

/* mniejsze odstępy pod etykietą pytania */
.mnf-ankieta .wpforms-container .wpforms-field-label {
  margin-bottom: 6px !important;
}

/* mniejsze odstępy między opcjami */
.mnf-ankieta .wpforms-container .wpforms-field-radio ul li,
.mnf-ankieta .wpforms-container .wpforms-field-checkbox ul li {
  margin-bottom: 6px !important;
}

/* ciaśniejszy submit */
.mnf-ankieta .wpforms-container .wpforms-submit-container {
  margin-top: 16px !important;
}

/* =========================================================
   FIX: Woo checkout – metody płatności (BLIK/P24) klikane + okrągłe
   Cel: wyłączyć pseudo-radia z motywu i przywrócić natywne input[type=radio]
   ========================================================= */

body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
  position: relative !important;
}

/* Przywróć NATYWNE radio (żeby było klikalne zawsze) */
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input[type="radio"],
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input.input-radio {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  opacity: 1 !important;
  display: inline-block !important;
  visibility: visible !important;
  pointer-events: auto !important;

  width: 18px !important;
  height: 18px !important;
  margin: 0 10px 0 0 !important;

  -webkit-appearance: radio !important;
  appearance: auto !important;
}

/* Label jako flex, ale bez kombinacji z pseudo-kółkami */
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method>label {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  cursor: pointer !important;

  padding-left: 0 !important;
  margin: 0 !important;

  width: 100% !important;
  max-width: none !important;
}

/* Wyłącz pseudo-elementy, które rysują „jajowate” kółka */
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method>label::before,
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method>label::after,
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input[type="radio"]::before,
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input[type="radio"]::after {
  content: none !important;
  display: none !important;
}

/* Ikony (BLIK/P24) niech się trzymają w jednej linii ładnie */
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method>label img {
  margin-left: 8px !important;
}

/* Żeby nic nie przykrywało kliku */
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method,
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method * {
  pointer-events: auto !important;
}

/* =========================================================
   MNF – FORMULARZ KONTAKTOWY (STYLE) mnf_contact_form
========================================================= */

.mnf-contact {
  background: #f7f8fa;
  padding: 80px 20px;
}

.mnf-contact__wrap {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: start;
}

.mnf-contact__info h2 {
  font-size: 36px;
  line-height: 1.15;
  color: #3e4a64;
  margin: 0 0 18px;
}

.mnf-contact__lead {
  font-size: 18px;
  font-weight: 600;
  color: #3e4a64;
  margin: 0 0 12px;
}

.mnf-contact__info p {
  font-size: 16px;
  color: #3e4a64;
  opacity: .85;
  line-height: 1.65;
  margin: 0 0 12px;
}

.mnf-contact__error {
  margin-top: 14px;
  padding: 12px 14px;
  border-radius: 12px;
  background: #ebd1b8;
  color: #3e4a64;
  font-weight: 600;
}

.mnf-contact__form {
  background: #fff;
  padding: 36px;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(62, 74, 100, .08);
}

.mnf-contact .mnf-field {
  margin-bottom: 18px;
}

.mnf-contact .mnf-field label {
  display: block;
  margin-bottom: 6px;
  font-weight: 600;
  color: #3e4a64;
}

.mnf-optional {
  font-weight: 600;
  opacity: .75;
  font-size: 13px;
}

.mnf-contact .mnf-field input,
.mnf-contact .mnf-field textarea,
.mnf-contact .mnf-field select {
  width: 100% !important;
  padding: 12px 14px !important;
  border: 1px solid #d9dee8 !important;
  border-radius: 10px !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  background: #ffffff !important;

  color: #3e4a64 !important;
  -webkit-text-fill-color: #3e4a64 !important;
  opacity: 1 !important;

  min-height: 44px !important;
  height: auto !important;
  transition: all .2s ease;
}

.mnf-contact .mnf-field textarea {
  min-height: 180px !important;
  resize: vertical;
}

.mnf-contact .mnf-field input:focus,
.mnf-contact .mnf-field textarea:focus,
.mnf-contact .mnf-field select:focus {
  border-color: #91cae5 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(145, 202, 229, .25) !important;
}

/* placeholder select */
.mnf-contact .mnf-field select:invalid {
  color: #6b768c !important;
  -webkit-text-fill-color: #6b768c !important;
  opacity: 1 !important;
}

.mnf-contact .mnf-field select option {
  color: #3e4a64 !important;
  -webkit-text-fill-color: #3e4a64 !important;
}

/* honeypot ukryty */
.mnf-hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

/* checkbox */
.mnf-contact .mnf-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  color: #3e4a64;
  margin: 10px 0 18px;
}

.mnf-contact .mnf-checkbox input {
  margin-top: 4px;
}

/* button – mniejszy */
.mnf-contact .mnf-btn {
  width: 100% !important;
  background: #3e4a64 !important;
  color: #ffffff !important;
  padding: 8px 14px !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  min-height: 38px !important;

  border: none !important;
  border-radius: 12px !important;
  cursor: pointer !important;
  box-shadow: 0 6px 18px rgba(62, 74, 100, .14) !important;
  transition: all .25s ease !important;
}

.mnf-contact .mnf-btn:hover {
  background: #91cae5 !important;
  color: #3e4a64 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 22px rgba(62, 74, 100, .18) !important;
}

/* responsywność */
@media (max-width:900px) {
  .mnf-contact__wrap {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .mnf-contact__info h2 {
    font-size: 28px;
  }

  .mnf-contact__form {
    padding: 28px;
  }
}

/* =========================================================
   MNF – STRONA PODZIĘKOWANIA
========================================================= */

.mnf-thanks {
  background: #f7f8fa;
  padding: 90px 20px;
}

.mnf-thanks__wrap {
  max-width: 900px;
  margin: 0 auto;
}

.mnf-thanks__card {
  background: #ffffff;
  border-radius: 18px;
  padding: 44px 38px;
  box-shadow: 0 12px 40px rgba(62, 74, 100, .10);
  border: 1px solid rgba(62, 74, 100, .08);
}

.mnf-thanks__icon {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 22px;
  color: #3e4a64;
  background: rgba(145, 202, 229, .35);
  margin-bottom: 16px;
}

.mnf-thanks__title {
  font-size: 34px;
  line-height: 1.15;
  color: #3e4a64;
  margin: 0 0 10px;
}

.mnf-thanks__lead {
  font-size: 16px;
  color: #3e4a64;
  opacity: .86;
  line-height: 1.65;
  margin: 0 0 22px;
}

.mnf-thanks__box {
  background: rgba(235, 209, 184, .35);
  border: 1px solid rgba(235, 209, 184, .75);
  border-radius: 14px;
  padding: 16px 18px;
  margin: 0 0 22px;
  color: #3e4a64;
}

.mnf-thanks__box p {
  margin: 0 0 8px;
}

.mnf-thanks__box ul {
  margin: 0;
  padding-left: 18px;
}

.mnf-thanks__box li {
  margin: 6px 0;
  line-height: 1.55;
}

.mnf-thanks__cta {
  display: flex;
  gap: 14px;
  align-items: center;
  flex-wrap: wrap;
  margin: 10px 0 18px;
}

.mnf-thanks__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  border-radius: 12px;
  background: #3e4a64;
  color: #ffffff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 700;
  box-shadow: 0 8px 22px rgba(62, 74, 100, .15);
  transition: all .2s ease;
}

.mnf-thanks__btn:hover {
  background: #91cae5;
  color: #3e4a64;
  transform: translateY(-1px);
}

.mnf-thanks__link {
  color: #3e4a64;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 1px solid rgba(62, 74, 100, .25);
  padding-bottom: 2px;
}

.mnf-thanks__link:hover {
  border-bottom-color: #91cae5;
}

.mnf-thanks__small {
  font-size: 14px;
  color: #3e4a64;
  opacity: .85;
  margin: 0;
}

.mnf-thanks__small a {
  color: #3e4a64;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 1px solid rgba(62, 74, 100, .25);
}

.mnf-thanks__small a:hover {
  border-bottom-color: #91cae5;
}

@media (max-width:700px) {
  .mnf-thanks__card {
    padding: 30px 22px;
  }

  .mnf-thanks__title {
    font-size: 26px;
  }
}

/* =========================================================
   MNF – THANK YOU PAGE CTA (UJEDNOLICONE)
========================================================= */

.mnf-thanks.v2 .mnf-thanks__cta {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.mnf-thanks.v2 .mnf-thanks__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 10px 18px;
  min-width: 190px;

  border-radius: 12px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;

  background: #3e4a64;
  color: #ffffff;
  border: none;

  box-shadow: 0 10px 25px rgba(62, 74, 100, .15);
  transition: all .2s ease;
}

.mnf-thanks.v2 .mnf-thanks__btn:hover {
  background: #91cae5;
  color: #3e4a64;
  transform: translateY(-1px);
}

/* =========================================================
   CHECKOUT – checkboxy zgód (custom, czytelny "ptaszek")
   ========================================================= */
body.woocommerce-checkout {
  --mnf-cb-size: 20px;
  --mnf-cb-radius: 6px;
  --mnf-cb-border: rgba(62, 74, 100, .35);
  --mnf-cb-bg: #fff;
  --mnf-cb-checked: #3e4a64;
  /* navy */
  --mnf-cb-ring: rgba(145, 202, 229, .45);
  /* sky */
}

/* układ labeli: checkbox + tekst (żeby wyglądało równo) */
body.woocommerce-checkout #payment p.form-row.validate-required label,
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
}

/* custom checkbox */
body.woocommerce-checkout #payment input[type="checkbox"],
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
  -webkit-appearance: none !important;
  appearance: none !important;

  width: var(--mnf-cb-size) !important;
  height: var(--mnf-cb-size) !important;
  min-width: var(--mnf-cb-size) !important;

  border-radius: var(--mnf-cb-radius) !important;
  border: 2px solid var(--mnf-cb-border) !important;
  background: var(--mnf-cb-bg) !important;

  box-shadow: 0 1px 2px rgba(16, 24, 40, .10) !important;
  cursor: pointer !important;
  margin-top: 2px !important;

  display: inline-grid !important;
  place-items: center !important;

  transition: transform .08s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease !important;
}

/* hover */
body.woocommerce-checkout #payment input[type="checkbox"]:hover {
  border-color: rgba(62, 74, 100, .55) !important;
}

/* focus (klawiatura) */
body.woocommerce-checkout #payment input[type="checkbox"]:focus {
  outline: none !important;
  box-shadow: 0 0 0 4px var(--mnf-cb-ring), 0 1px 2px rgba(16, 24, 40, .12) !important;
}

/* checked – navy + biały ptaszek */
body.woocommerce-checkout #payment input[type="checkbox"]:checked {
  background: var(--mnf-cb-checked) !important;
  border-color: var(--mnf-cb-checked) !important;
  box-shadow: 0 0 0 4px rgba(145, 202, 229, .22), 0 4px 10px rgba(16, 24, 40, .16) !important;

  /* ptaszek jako SVG (pewny wygląd) */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M9.2 16.6 4.9 12.3a1.2 1.2 0 0 1 1.7-1.7l2.8 2.8 7-7a1.2 1.2 0 1 1 1.7 1.7l-7.9 7.9a1.2 1.2 0 0 1-1.7 0z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 14px 14px !important;
}

/* click feel */
body.woocommerce-checkout #payment input[type="checkbox"]:active {
  transform: scale(.96) !important;
}

/* ============================= */
/* HERO – UKŁAD TEKST + ZDJĘCIE */
/* ============================= */

.mnf-hero .hero-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 60px;
}

.mnf-hero .copy {
  flex: 1;
}

.mnf-hero-photo {
  flex: 1;
  display: flex;
  justify-content: center;
}

.mnf-hero-photo img {
  max-width: 100%;
  height: auto;
  border-radius: 24px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.08);
}

/* RESPONSYWNOŚĆ */

@media (max-width: 992px) {
  .mnf-hero .hero-inner {
    flex-direction: column;
    text-align: center;
  }

  .mnf-hero-photo {
    margin-top: 30px;
  }
}

/* ===================================== */
/* HERO PREMIUM – MNF */
/* ===================================== */

.mnf-hero {
  position: relative;
  overflow: visible;
  padding: 80px 0;
}

.mnf-hero .hero-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 80px;
}

.mnf-hero-photo {
  position: relative;
  flex: 1;
  display: flex;
  justify-content: center;
  animation: mnfFadeIn 1.2s ease forwards;
  opacity: 0;
  transform: translateY(30px);
}

/* Gradientowe tło */
.mnf-photo-bg {
  position: absolute;
  width: 120%;
  height: 110%;
  background: linear-gradient(135deg,
      #91cae5 0%,
      #ebd1b8 100%);
  border-radius: 40px;
  z-index: 1;
  top: -40px;
  right: -40px;
  opacity: 0.25;
}

/* Zdjęcie */
.mnf-hero-photo img {
  position: relative;
  z-index: 2;
  max-width: 420px;
  width: 100%;
  border-radius: 28px;
  box-shadow: 0 30px 60px rgba(62, 74, 100, 0.25);
  transform: translateY(-30px);
}

/* Animacja */
@keyframes mnfFadeIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* RESPONSYWNOŚĆ */

@media (max-width: 992px) {

  .mnf-hero .hero-inner {
    flex-direction: column;
    text-align: center;
  }

  .mnf-hero-photo {
    margin-top: 40px;
  }

  .mnf-photo-bg {
    top: -20px;
    right: 0;
    width: 100%;
  }

  .mnf-hero-photo img {
    transform: none;
  }
}

/* =========================================================
   MNF HERO – CLEAN PREMIUM (OSTATECZNA WERSJA)
   ========================================================= */

.mnf-home .mnf-hero {
  position: relative;
  padding: 80px 0;
  overflow: hidden;
}

/* Delikatne, eleganckie tło */
.mnf-home .mnf-hero::before {
  content: "";
  position: absolute;
  inset: -140px;
  background:
    radial-gradient(800px 500px at 20% 30%, rgba(145, 202, 229, .18), rgba(145, 202, 229, 0) 60%),
    radial-gradient(700px 500px at 85% 70%, rgba(235, 209, 184, .18), rgba(235, 209, 184, 0) 60%);
  pointer-events: none;
  z-index: 0;
}

.mnf-home .mnf-hero .mnf-wrap {
  position: relative;
  z-index: 1;
}

/* Layout 2 kolumny */
.mnf-home .mnf-hero .hero-inner {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 60px;
  align-items: stretch;
}

/* LEWA KARTA */
.mnf-home .mnf-hero .mnf-card.copy {
  background: rgba(255, 255, 255, .92);
  border: 1px solid rgba(62, 74, 100, .08);
  border-radius: 22px;
  box-shadow:
    0 22px 55px rgba(62, 74, 100, .10),
    0 8px 18px rgba(62, 74, 100, .06);
  padding: 38px 36px;
  height: 100%;
}

/* Kicker */
.mnf-home .mnf-hero .mnf-kicker {
  display: inline-block;
  padding: 10px 16px;
  border-radius: 999px;
  background: rgba(145, 202, 229, .15);
  border: 1px solid rgba(145, 202, 229, .30);
  font-size: 14px;
}

/* Typografia */
.mnf-home .mnf-hero h1 {
  margin-top: 18px;
  letter-spacing: -0.02em;
}

.mnf-home .mnf-hero .mnf-lead {
  margin-top: 14px;
  line-height: 1.6;
}

/* Highlight */
.mnf-home .mnf-hero .mnf-highlight {
  margin-top: 22px;
  padding: 18px 20px;
  border-radius: 16px;
  background: rgba(235, 209, 184, .28);
  border: 1px solid rgba(235, 209, 184, .45);
}

/* PRAWA STRONA – JEDNA CZYSTA KARTA */
.mnf-home .mnf-hero .mnf-hero-photo {
  background: rgba(255, 255, 255, .92);
  border: 1px solid rgba(62, 74, 100, .08);
  border-radius: 22px;
  box-shadow:
    0 22px 55px rgba(62, 74, 100, .10),
    0 8px 18px rgba(62, 74, 100, .06);
  padding: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Zdjęcie */
.mnf-home .mnf-hero .mnf-hero-photo img {
  width: 100%;
  max-width: 520px;
  height: auto;
  border-radius: 18px;
  border: 1px solid rgba(62, 74, 100, .06);
  box-shadow: 0 16px 35px rgba(62, 74, 100, .12);
}

/* RESPONSYWNOŚĆ */
@media (max-width:1024px) {

  .mnf-home .mnf-hero {
    padding: 60px 0;
  }

  .mnf-home .mnf-hero .hero-inner {
    grid-template-columns: 1fr;
    gap: 32px;
    text-align: center;
  }

  .mnf-home .mnf-hero .mnf-card.copy {
    padding: 30px 24px;
  }

  .mnf-home .mnf-hero .mnf-hero-photo {
    padding: 16px;
  }

}

/* Tymczasowe ukrycie sekcji */
.is-hidden {
  display: none;
}

/* MNF – wynik ankiety (premium karta) */
.mnf-ankieta .mnf-wynik {
  background: rgba(255, 255, 255, .70);
  border: 1px solid rgba(62, 74, 100, .14);
  border-radius: 16px;
  padding: 18px 18px 16px;
  color: #3e4a64;
  box-shadow: 0 10px 26px rgba(62, 74, 100, .10);
  position: relative;
  overflow: hidden;
}

/* delikatny akcent po lewej */
.mnf-ankieta .mnf-wynik::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 6px;
  background: #91cae5;
  opacity: .95;
}

/* tytuł */
.mnf-ankieta .mnf-wynik__title {
  font-weight: 900;
  font-size: 16px;
  margin: 0 0 8px 0;
}

/* badge wyniku */
.mnf-ankieta .mnf-wynik__badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 900;
  font-size: 15px;
  margin: 0 0 10px 0;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(145, 202, 229, .22);
  border: 1px solid rgba(145, 202, 229, .45);
}

/* kropka statusu (neutralna, nie zielona) */
.mnf-ankieta .mnf-wynik__badge::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: #3e4a64;
  opacity: .55;
}

/* tekst */
.mnf-ankieta .mnf-wynik__text {
  margin: 0 0 14px 0;
  line-height: 1.6;
  font-size: 14px;
  opacity: .95;
}

/* CTA */
.mnf-ankieta .mnf-wynik__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #3e4a64;
  color: #fff;
  text-decoration: none;
  padding: 10px 16px;
  border-radius: 12px;
  font-weight: 900;
  transition: transform .08s ease, background .2s ease;
}

.mnf-ankieta .mnf-wynik__cta:hover {
  background: #2f3950;
}

.mnf-ankieta .mnf-wynik__cta:active {
  transform: translateY(1px);
}

.mnf-ankieta .mnf-wynik__cta--ghost {
  background: #91cae5;
  color: #3e4a64;
}

.mnf-ankieta .mnf-wynik__meta {
  margin-top: 10px;
  opacity: .72;
  font-size: 12.5px;
}

/* =========================
   MNF – WYNIK ANKIETY (prościej: jedna karta, bez wieloramkowości)
   ========================= */

/* Zdejmij obramowania / tła z kontenerów WPForms w potwierdzeniu */
.mnf-ankieta .wpforms-confirmation-container,
.mnf-ankieta .wpforms-confirmation-container-full,
.mnf-ankieta .wpforms-confirmation-container p,
.mnf-ankieta .wpforms-confirmation-container div {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Jeśli motyw daje dodatkową ramkę na potwierdzeniu */
.mnf-ankieta .wpforms-confirmation-container-full {
  padding: 0 !important;
  margin: 0 !important;
}

/* Jedna, czysta karta */
.mnf-ankieta .mnf-wynik {
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(62, 74, 100, .14);
  border-radius: 16px;
  padding: 18px;
  color: #3e4a64;
  box-shadow: 0 12px 26px rgba(62, 74, 100, .10);
  position: relative;
  overflow: hidden;
}

/* Jeden subtelny akcent zamiast wielu ramek */
.mnf-ankieta .mnf-wynik::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 5px;
  background: #91cae5;
}

/* Typografia */
.mnf-ankieta .mnf-wynik__title {
  font-weight: 900;
  font-size: 16px;
  margin: 0 0 8px 0;
}

.mnf-ankieta .mnf-wynik__badge {
  font-weight: 900;
  font-size: 15px;
  margin: 0 0 10px 0;
  padding: 0;
  background: transparent;
  border: 0;
}

/* Tekst */
.mnf-ankieta .mnf-wynik__text {
  margin: 0 0 14px 0;
  line-height: 1.6;
  font-size: 14px;
  opacity: .95;
}

/* CTA */
.mnf-ankieta .mnf-wynik__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #3e4a64;
  color: #fff;
  text-decoration: none;
  padding: 10px 16px;
  border-radius: 12px;
  font-weight: 900;
  transition: transform .08s ease, background .2s ease;
}

.mnf-ankieta .mnf-wynik__cta:hover {
  background: #2f3950;
}

.mnf-ankieta .mnf-wynik__cta:active {
  transform: translateY(1px);
}

.mnf-ankieta .mnf-wynik__cta--ghost {
  background: #91cae5;
  color: #3e4a64;
}

.mnf-ankieta .mnf-wynik__meta {
  margin-top: 10px;
  opacity: .72;
  font-size: 12.5px;
}

/* =========================
   MNF: O mnie
   ========================= */

.mnf-about {
  padding: clamp(28px, 4vw, 60px) 0;
}

.mnf-about__head {
  margin-bottom: clamp(18px, 3vw, 28px);
  text-align: left;
}

.mnf-about__title {
  margin: 8px 0 10px;
  line-height: 1.12;
  letter-spacing: -0.02em;
  color: #3e4a64;
  font-size: clamp(26px, 3.2vw, 40px);
}

.mnf-about__intro {
  max-width: 72ch;
  color: #3e4a64;
  opacity: 0.92;
  margin: 0;
  font-size: clamp(15px, 1.2vw, 18px);
}

.mnf-about__grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: clamp(14px, 2.4vw, 22px);
  align-items: stretch;
  margin-top: clamp(14px, 2.5vw, 22px);
}

.mnf-about__grid--img-left {
  grid-template-columns: 0.85fr 1.15fr;
}

.mnf-about__grid--equal {
  grid-template-columns: 1fr 1fr;
}

.mnf-about__card,
.mnf-about__wide,
.mnf-about__cta {
  padding: clamp(16px, 2.2vw, 22px);
  border-radius: 18px;
  border: 1px solid rgba(62, 74, 100, 0.12);
  background: #fff;
  box-shadow: 0 8px 22px rgba(62, 74, 100, 0.08);
}

.mnf-about__wide {
  margin-top: clamp(14px, 2.5vw, 22px);
}

.mnf-about__subtitle {
  margin: 0 0 10px;
  color: #3e4a64;
  font-size: clamp(18px, 2vw, 24px);
  line-height: 1.2;
}

.mnf-about__media {
  padding: 0;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(62, 74, 100, 0.12);
  background: #ebd1b8;
  box-shadow: 0 8px 22px rgba(62, 74, 100, 0.08);
}

.mnf-about__media img {
  width: 100%;
  height: 100%;
  max-height: 420px;
  object-fit: cover;
  display: block;
}

.mnf-about__list {
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

.mnf-about__list li {
  position: relative;
  padding-left: 28px;
  color: #3e4a64;
  line-height: 1.35;
}

.mnf-about__list li::before {
  content: "✔";
  position: absolute;
  left: 0;
  top: 0;
  color: #3e4a64;
  background: rgba(145, 202, 229, 0.55);
  border: 1px solid rgba(62, 74, 100, 0.15);
  width: 20px;
  height: 20px;
  border-radius: 6px;
  display: grid;
  place-items: center;
  font-size: 12px;
  line-height: 1;
}

.mnf-about__cta {
  margin-top: clamp(14px, 2.5vw, 22px);
  border-color: rgba(62, 74, 100, 0.16);
  background: linear-gradient(180deg, rgba(145, 202, 229, 0.22), rgba(235, 209, 184, 0.22));
}

.mnf-about__ctaBar {
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.mnf-about__ctaNote {
  color: #3e4a64;
  opacity: 0.85;
  font-size: 14px;
}

/* Button (jeśli nie masz jeszcze .mnf-btn) */
.mnf-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 14px;
  text-decoration: none;
  font-weight: 700;
  border: 1px solid rgba(62, 74, 100, 0.18);
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
}

.mnf-btn--primary {
  color: #3e4a64;
  background: #91cae5;
  box-shadow: 0 10px 22px rgba(145, 202, 229, 0.35);
}

.mnf-btn--primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 26px rgba(145, 202, 229, 0.42);
}

/* Mobile */
@media (max-width: 900px) {

  .mnf-about__grid,
  .mnf-about__grid--img-left,
  .mnf-about__grid--equal {
    grid-template-columns: 1fr;
  }

  .mnf-about__media img {
    max-height: 320px;
  }
}

/* =========================
   MNF: O mnie – poprawione zdjęcia pionowe
   ========================= */

.mnf-about__media {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  border: 1px solid rgba(62, 74, 100, 0.12);
  background: #ebd1b8;
  box-shadow: 0 12px 30px rgba(62, 74, 100, 0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

/* PIONOWE ZDJĘCIA */
.mnf-about__media img {
  width: 100%;
  height: auto;
  max-height: 720px;
  object-fit: contain;
  /* kluczowa zmiana */
  display: block;
}

/* Delikatne podniesienie zdjęcia właścicielki */
.mnf-about__grid--img-right .mnf-about__media {
  background: linear-gradient(180deg, #ebd1b8 0%, #ffffff 100%);
}

/* Kot – lżejsze tło */
.mnf-about__grid--img-left .mnf-about__media {
  background: #f5f2ed;
}

/* MOBILE */
@media (max-width: 900px) {

  .mnf-about__media img {
    max-height: 520px;
  }

  .mnf-about__grid {
    gap: 24px;
  }
}

/* =========================
   MNF – O mnie – PREMIUM ZDJĘCIA
   ========================= */

/* Wspólne ustawienia */
.mnf-about__media {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  box-shadow: 0 14px 34px rgba(62, 74, 100, 0.12);
}

/* 👩‍💼 TWOJE ZDJĘCIE – COVER */
.mnf-about__media--portrait {
  aspect-ratio: 4 / 5;
  /* idealne dla pionowego */
  background: linear-gradient(180deg, #ebd1b8 0%, #ffffff 100%);
}

.mnf-about__media--portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 20%;
  /* lekko podnosi twarz */
  display: block;
  transition: transform .6s ease;
}

.mnf-about__media--portrait:hover img {
  transform: scale(1.03);
}

/* 🐱 KOT – CONTAIN */
.mnf-about__media--cat {
  background: #f5f2ed;
  padding: 20px;
}

.mnf-about__media--cat img {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
}

/* MOBILE */
@media (max-width: 900px) {

  .mnf-about__media--portrait {
    aspect-ratio: auto;
  }

  .mnf-about__media--portrait img {
    height: auto;
  }
}

/* =========================
   MNF – O mnie – MOBILE PREMIUM
   ========================= */
@media (max-width: 900px) {

  /* ciaśniej, ale czytelnie */
  .mnf-about {
    padding: 18px 0;
  }

  .mnf-about__head {
    margin-bottom: 14px;
  }

  .mnf-about__title {
    font-size: 28px;
    line-height: 1.12;
    letter-spacing: -0.02em;
  }

  .mnf-about__intro {
    font-size: 15px;
    line-height: 1.55;
    margin-top: 10px;
  }

  /* mniejsze odstępy między blokami */
  .mnf-about__grid {
    gap: 14px;
    margin-top: 14px;
  }

  /* karty mniej "puchate" */
  .mnf-about__card,
  .mnf-about__wide,
  .mnf-about__cta {
    padding: 14px;
    border-radius: 16px;
  }

  .mnf-about__subtitle {
    font-size: 18px;
    margin-bottom: 8px;
  }

  /* lead mniej rozlazły */
  .mnf-about .mnf-lead {
    font-size: 15px;
    line-height: 1.55;
  }

  /* highlight mniej dominujący */
  .mnf-about .mnf-highlight {
    padding: 12px 12px;
    border-radius: 14px;
  }

  /* zdjęcia: mniej wysokości na telefonie */
  .mnf-about__media {
    border-radius: 16px;
  }

  /* Twoje zdjęcie: ograniczamy wysokość i utrzymujemy premium */
  .mnf-about__media--portrait {
    aspect-ratio: 4 / 5;
    max-height: 420px;
  }

  .mnf-about__media--portrait img {
    height: 100%;
  }

  /* kot: mniej paddingu i mniej zajętego miejsca */
  .mnf-about__media--cat {
    padding: 12px;
  }

  .mnf-about__media--cat img {
    max-height: 360px;
    margin: 0 auto;
  }

  /* lista: ciaśniej */
  .mnf-about__list {
    gap: 8px;
  }

  .mnf-about__list li {
    padding-left: 26px;
  }

  /* CTA: przycisk na pełną szerokość */
  .mnf-about__ctaBar {
    flex-direction: column;
    align-items: stretch;
  }

  .mnf-about__ctaBar .mnf-btn {
    width: 100%;
    justify-content: center;
  }

  .mnf-about__ctaNote {
    font-size: 13px;
  }
}

/* =========================================
   MNF: HINT ankiety (LEWA KOLUMNA) + ukrycie na mobile
   ========================================= */

/* 1) LEWA KOLUMNA jako flex -> hint może "spaść" na dół */
.mnf-11 .mnf-11-hero__text {
  display: flex;
  flex-direction: column;
}

/* 2) Desktop / tablet: hint pod przyciskiem, ale wypchnięty na dół kolumny */
.mnf-11 .mnf-ankieta-hint {
  margin-top: auto;
  /* <<< klucz: spycha w dół */
  padding-top: 18px;
  /* oddech od przycisku */
  display: flex;
  align-items: center;
  gap: 18px;
  justify-content: flex-end;
  /* „celuje” w prawo */
}

/* Tekst */
.mnf-11 .mnf-ankieta-hint .mnf-ankieta-hint__text {
  font-size: 20px;
  font-weight: 900;
  color: #3e4a64;
  line-height: 1.15;
  white-space: nowrap;
}

/* Strzałka */
.mnf-11 .mnf-ankieta-hint .mnf-ankieta-hint__arrow {
  font-size: 52px;
  font-weight: 900;
  color: #91cae5;
  line-height: 1;
  animation: mnfArrowNudge 1.25s ease-in-out infinite;
  will-change: transform, opacity;
}

/* Animacja */
@keyframes mnfArrowNudge {
  0% {
    transform: translateX(0);
    opacity: .85;
  }

  50% {
    transform: translateX(12px);
    opacity: 1;
  }

  100% {
    transform: translateX(0);
    opacity: .85;
  }
}

/* 3) Mobile: UKRYJ hint (sam element wystarczy) */
@media (max-width: 900px) {
  .mnf-11 .mnf-ankieta-hint {
    display: none !important;
  }
}

/* =========================================================
   MNF: Landing – Bezpłatne szkolenie (v1)
   Plik: public_html/wp-content/uploads/mnf-style.css
   Kolory brand: #3e4a64, #91cae5, #ebd1b8
   ========================================================= */

.mnf-webinar.mnf-webinar--v1 {
  --mnf-navy: #3e4a64;
  --mnf-sky: #91cae5;
  --mnf-sand: #ebd1b8;
  --mnf-bg: #ffffff;
  --mnf-soft: #f6f7fb;
  --mnf-text: #2a2f3a;
  --mnf-muted: #6b7280;
  --mnf-radius: 22px;
  --mnf-shadow: 0 14px 40px rgba(0, 0, 0, .10);
  --mnf-shadow2: 0 10px 22px rgba(0, 0, 0, .08);
  --mnf-border: 1px solid rgba(62, 74, 100, .15);
  color: var(--mnf-text);
}

.mnf-webinar-wrap {
  width: min(1140px, calc(100% - 40px));
  margin-inline: auto;
}

.mnf-webinar-section {
  padding: 72px 0;
}

.mnf-webinar-section--light {
  background: linear-gradient(180deg, #fff 0%, var(--mnf-soft) 100%);
}

.mnf-webinar-hero {
  background: radial-gradient(1200px 500px at 20% 0%, rgba(145, 202, 229, .35), transparent 60%),
    radial-gradient(900px 420px at 90% 20%, rgba(235, 209, 184, .45), transparent 55%),
    linear-gradient(180deg, #fff 0%, #fff 100%);
  padding: 78px 0 54px;
  border-bottom: var(--mnf-border);
}

.mnf-webinar-hero__grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 34px;
  align-items: start;
}

.mnf-webinar-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 800;
  letter-spacing: .2px;
  color: var(--mnf-navy);
  background: rgba(145, 202, 229, .25);
  border: 1px solid rgba(145, 202, 229, .35);
  padding: 10px 14px;
  border-radius: 999px;
}

.mnf-webinar-title {
  margin: 18px 0 10px;
  font-size: clamp(30px, 3.2vw, 46px);
  line-height: 1.08;
  letter-spacing: -.6px;
  color: var(--mnf-navy);
  font-weight: 900;
}

.mnf-webinar-accent {
  color: var(--mnf-navy);
  background: linear-gradient(90deg, rgba(235, 209, 184, .70), rgba(145, 202, 229, .45));
  padding: 0 .22em;
  border-radius: 10px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.mnf-webinar-lead {
  margin: 10px 0 18px;
  font-size: clamp(16px, 1.25vw, 19px);
  line-height: 1.55;
  color: rgba(62, 74, 100, .92);
  font-weight: 600;
}

.mnf-webinar-bullets {
  margin: 0;
  padding-left: 18px;
  color: var(--mnf-text);
  display: grid;
  gap: 8px;
  font-weight: 600;
}

.mnf-webinar-ctaRow {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 22px;
}

.mnf-webinar-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 14px 18px;
  font-weight: 900;
  text-decoration: none !important;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
  border: 1px solid transparent;
  line-height: 1;
}

.mnf-webinar-btn--primary {
  background: var(--mnf-navy);
  color: #fff !important;
  box-shadow: var(--mnf-shadow2);
}

.mnf-webinar-btn--primary:hover {
  transform: translateY(-1px);
  box-shadow: var(--mnf-shadow);
}

.mnf-webinar-btn--ghost {
  background: transparent;
  color: var(--mnf-navy) !important;
  border-color: rgba(62, 74, 100, .30);
}

.mnf-webinar-btn--ghost:hover {
  background: rgba(145, 202, 229, .18);
  border-color: rgba(145, 202, 229, .40);
}

.mnf-webinar-btn--full {
  width: 100%;
  margin-top: 14px;
}

.mnf-webinar-trust {
  margin-top: 16px;
  display: grid;
  gap: 8px;
  color: var(--mnf-muted);
  font-weight: 600;
}

.mnf-webinar-trust__item {
  display: flex;
  align-items: center;
  gap: 10px;
}

.mnf-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--mnf-sky);
  box-shadow: 0 0 0 4px rgba(145, 202, 229, .25);
}

/* CARDS */
.mnf-webinar-card {
  background: #fff;
  border: var(--mnf-border);
  border-radius: var(--mnf-radius);
  box-shadow: 0 10px 25px rgba(0, 0, 0, .06);
  padding: 22px;
}

.mnf-webinar-card--media {
  position: relative;
  overflow: hidden;
}

.mnf-webinar-card__badge {
  position: absolute;
  top: 16px;
  left: 16px;
  background: rgba(62, 74, 100, .92);
  color: #fff;
  font-weight: 900;
  padding: 8px 12px;
  border-radius: 999px;
  letter-spacing: .6px;
  font-size: 12px;
}

.mnf-webinar-mediaBox {
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(62, 74, 100, .12);
  background: linear-gradient(135deg, rgba(145, 202, 229, .22), rgba(235, 209, 184, .30));
}

.mnf-webinar-mediaPlaceholder {
  min-height: 320px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 22px;
}

.mnf-webinar-mediaPlaceholder__title {
  font-weight: 900;
  color: var(--mnf-navy);
  font-size: 18px;
  margin-bottom: 6px;
}

.mnf-webinar-mediaPlaceholder__desc {
  color: rgba(62, 74, 100, .80);
  font-weight: 600;
}

.mnf-webinar-card__meta {
  margin-top: 14px;
  display: grid;
  gap: 6px;
  color: rgba(62, 74, 100, .88);
  font-weight: 650;
}

.mnf-webinar-socialProof {
  margin-top: 14px;
  display: grid;
  gap: 12px;
}

.mnf-webinar-quoteCard {
  background: rgba(235, 209, 184, .28);
  border: 1px solid rgba(235, 209, 184, .55);
  border-radius: 18px;
  padding: 14px 16px;
  color: rgba(62, 74, 100, .92);
  font-weight: 700;
}

/* TYPO */
.mnf-webinar-h2 {
  margin: 0 0 12px;
  font-size: clamp(24px, 2.2vw, 34px);
  line-height: 1.15;
  color: var(--mnf-navy);
  font-weight: 900;
  letter-spacing: -.3px;
}

.mnf-webinar-h3 {
  margin: 0 0 8px;
  font-size: 18px;
  line-height: 1.25;
  color: var(--mnf-navy);
  font-weight: 900;
}

.mnf-webinar-p {
  margin: 0 0 12px;
  color: rgba(42, 47, 58, .92);
  line-height: 1.6;
  font-weight: 600;
}

.mnf-webinar-p--wide {
  max-width: 860px;
}

.mnf-webinar-grid3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 18px;
}

.mnf-webinar-grid2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin-top: 18px;
}

.mnf-webinar-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  align-items: start;
}

.mnf-webinar-split--reverse {
  grid-template-columns: 1fr 1fr;
}

.mnf-webinar-check {
  list-style: none;
  margin: 14px 0 0;
  padding: 0;
  display: grid;
  gap: 10px;
  font-weight: 650;
  color: rgba(42, 47, 58, .92);
}

.mnf-webinar-check li {
  position: relative;
  padding-left: 30px;
  line-height: 1.5;
}

.mnf-webinar-check li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .3em;
  width: 18px;
  height: 18px;
  border-radius: 6px;
  background: rgba(145, 202, 229, .35);
  border: 1px solid rgba(145, 202, 229, .55);
  box-shadow: 0 0 0 4px rgba(145, 202, 229, .18);
}

.mnf-webinar-check li::after {
  content: "✓";
  position: absolute;
  left: 4px;
  top: .05em;
  font-weight: 900;
  color: var(--mnf-navy);
  font-size: 14px;
}

.mnf-webinar-card--accent {
  background: linear-gradient(135deg, rgba(145, 202, 229, .22), rgba(235, 209, 184, .35));
  border: 1px solid rgba(62, 74, 100, .16);
}

.mnf-webinar-card__head {
  font-weight: 900;
  color: var(--mnf-navy);
  margin-bottom: 10px;
  font-size: 16px;
}

.mnf-webinar-miniList {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 10px;
  font-weight: 700;
  color: rgba(62, 74, 100, .92);
}

.mnf-webinar-step {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(145, 202, 229, .25);
  border: 1px solid rgba(145, 202, 229, .35);
  color: var(--mnf-navy);
  font-weight: 900;
  font-size: 12px;
  letter-spacing: .4px;
  margin-bottom: 10px;
}

.mnf-webinar-card--bio {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 16px;
  align-items: start;
}

.mnf-webinar-bioAvatar {
  width: 110px;
  height: 110px;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(62, 74, 100, .18), rgba(145, 202, 229, .35), rgba(235, 209, 184, .35));
  border: 1px solid rgba(62, 74, 100, .14);
}

.mnf-webinar-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
}

.mnf-webinar-tags span {
  display: inline-flex;
  padding: 9px 12px;
  border-radius: 999px;
  border: 1px solid rgba(62, 74, 100, .18);
  background: rgba(255, 255, 255, .65);
  color: rgba(62, 74, 100, .92);
  font-weight: 800;
  font-size: 12px;
}

.mnf-webinar-note {
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid rgba(62, 74, 100, .14);
  background: rgba(235, 209, 184, .24);
  color: rgba(62, 74, 100, .92);
  font-weight: 700;
}

/* Testimonials */
.mnf-webinar-testimonial {
  background: #fff;
  border: var(--mnf-border);
  border-radius: var(--mnf-radius);
  padding: 18px;
  box-shadow: 0 10px 22px rgba(0, 0, 0, .06);
}

.mnf-webinar-testimonial__text {
  font-weight: 750;
  color: rgba(62, 74, 100, .94);
  line-height: 1.55;
}

.mnf-webinar-testimonial__meta {
  margin-top: 10px;
  color: var(--mnf-muted);
  font-weight: 700;
}

/* Form card */
.mnf-webinar-card--form {
  box-shadow: var(--mnf-shadow2);
}

.mnf-webinar-formEmbed {
  margin-top: 14px;
}

/* WPForms small tweaks (safe) */
.mnf-webinar .wpforms-container {
  margin: 0 !important;
}

.mnf-webinar .wpforms-form .wpforms-field {
  margin-bottom: 14px !important;
}

.mnf-webinar .wpforms-form input[type="text"],
.mnf-webinar .wpforms-form input[type="email"],
.mnf-webinar .wpforms-form input[type="tel"] {
  width: 100% !important;
  border-radius: 14px !important;
  border: 1px solid rgba(62, 74, 100, .22) !important;
  padding: 14px 14px !important;
  font-weight: 650 !important;
}

.mnf-webinar .wpforms-form input:focus {
  outline: none !important;
  border-color: rgba(145, 202, 229, .70) !important;
  box-shadow: 0 0 0 5px rgba(145, 202, 229, .25) !important;
}

.mnf-webinar .wpforms-form button[type="submit"] {
  width: 100% !important;
  border-radius: 999px !important;
  padding: 14px 18px !important;
  background: var(--mnf-navy) !important;
  color: #fff !important;
  border: 1px solid var(--mnf-navy) !important;
  font-weight: 900 !important;
  box-shadow: var(--mnf-shadow2) !important;
}

.mnf-webinar .wpforms-form button[type="submit"]:hover {
  transform: translateY(-1px);
  box-shadow: var(--mnf-shadow);
}

.mnf-webinar-legal {
  margin-top: 10px;
  color: var(--mnf-muted);
  font-size: 12.5px;
  line-height: 1.45;
  font-weight: 650;
}

.mnf-webinar-center {
  margin-top: 20px;
  display: flex;
  justify-content: center;
}

/* FAQ */
.mnf-webinar-faq {
  display: grid;
  gap: 10px;
  margin-top: 16px;
}

.mnf-webinar-faqItem {
  background: #fff;
  border: var(--mnf-border);
  border-radius: 16px;
  padding: 0;
  overflow: hidden;
  box-shadow: 0 8px 18px rgba(0, 0, 0, .05);
}

.mnf-webinar-faqItem summary {
  cursor: pointer;
  padding: 16px 18px;
  font-weight: 900;
  color: var(--mnf-navy);
  list-style: none;
  position: relative;
}

.mnf-webinar-faqItem summary::-webkit-details-marker {
  display: none;
}

.mnf-webinar-faqItem summary::after {
  content: "+";
  position: absolute;
  right: 16px;
  top: 12px;
  font-size: 22px;
  font-weight: 900;
  color: rgba(62, 74, 100, .75);
}

.mnf-webinar-faqItem[open] summary::after {
  content: "–";
}

.mnf-webinar-faqBody {
  padding: 0 18px 16px;
  color: rgba(42, 47, 58, .92);
  font-weight: 650;
  line-height: 1.55;
}

/* Footer */
.mnf-webinar-footer {
  background: #fff;
  border-top: var(--mnf-border);
  padding: 22px 0;
}

.mnf-webinar-footer__inner {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: var(--mnf-muted);
  font-weight: 650;
}

.mnf-webinar-footer a {
  color: var(--mnf-navy);
  text-decoration: none;
  font-weight: 800;
}

.mnf-webinar-card--sticky {
  position: sticky;
  top: 92px;
}

/* Responsive */
@media (max-width: 980px) {
  .mnf-webinar-hero__grid {
    grid-template-columns: 1fr;
  }

  .mnf-webinar-split,
  .mnf-webinar-split--reverse {
    grid-template-columns: 1fr;
  }

  .mnf-webinar-card--sticky {
    position: static;
  }

  .mnf-webinar-grid3 {
    grid-template-columns: 1fr;
  }

  .mnf-webinar-grid2 {
    grid-template-columns: 1fr;
  }

  .mnf-webinar-card--bio {
    grid-template-columns: 1fr;
  }

  .mnf-webinar-bioAvatar {
    width: 88px;
    height: 88px;
    border-radius: 20px;
  }

  .mnf-webinar-footer__inner {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* =========================
   MNF: O mnie Referencje – DOKUMENTY (A4, premium)
   Desktop: 2x2
   Mobile: swipe (scroll-snap)
   ========================= */

.mnf-ref {
  margin-top: clamp(16px, 2.8vw, 26px);
}

.mnf-ref__head {
  margin-bottom: 12px;
}

.mnf-ref__title {
  margin: 0 0 6px;
  color: #3e4a64;
  font-size: clamp(18px, 2vw, 24px);
  line-height: 1.2;
}

.mnf-ref__sub {
  margin: 0;
  color: #3e4a64;
  opacity: 0.9;
  max-width: 70ch;
  font-size: 15px;
  line-height: 1.55;
}

/* DESKTOP: 2x2 wygląda najlepiej dla stron A4 */
.mnf-ref__track {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

/* KARTA */
.mnf-ref__item {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(62, 74, 100, 0.12);
  background: linear-gradient(180deg, rgba(145, 202, 229, 0.18), rgba(235, 209, 184, 0.18));
  box-shadow: 0 12px 30px rgba(62, 74, 100, 0.12);
  text-decoration: none;
  padding: 14px;
  /* robi ramkę jak „podgląd dokumentu” */
  aspect-ratio: 210 / 297;
  /* A4 */
}

.mnf-ref__badge {
  position: absolute;
  left: 12px;
  top: 12px;
  z-index: 2;
  font-size: 12px;
  font-weight: 700;
  color: #3e4a64;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(62, 74, 100, 0.14);
  border-radius: 999px;
  padding: 6px 10px;
  backdrop-filter: blur(6px);
}

/* OBRAZ = ZAWSZE CAŁY, bez ucinania treści */
.mnf-ref__item img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  /* klucz: żadnego cropu */
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(62, 74, 100, 0.14);
  transform: translateZ(0);
  transition: transform .5s ease, box-shadow .5s ease;
}

.mnf-ref__item:hover img {
  transform: scale(1.01);
  box-shadow: 0 14px 28px rgba(62, 74, 100, 0.18);
}

.mnf-ref__hint {
  margin-top: 10px;
  font-size: 13px;
  color: #3e4a64;
  opacity: 0.75;
}

/* MOBILE: swipe */
@media (max-width: 900px) {
  .mnf-ref__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 88%;
    gap: 12px;

    overflow-x: auto;
    overflow-y: hidden;
    padding: 2px 2px 10px;

    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }

  .mnf-ref__item {
    scroll-snap-align: start;
    padding: 12px;
    border-radius: 16px;
  }

  .mnf-ref__item img {
    border-radius: 12px;
  }

  .mnf-ref__badge {
    left: 10px;
    top: 10px;
    font-size: 11px;
    padding: 5px 9px;
  }

  @media (max-width: 900px) {

    .mnf-ref__track {
      display: flex;
      /* zamiast grid – stabilniejsze */
      gap: 12px;

      overflow-x: auto;
      overflow-y: hidden;
      padding: 0 16px 12px;
      /* kontrolowane wewnętrzne marginesy */

      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      scroll-padding-left: 16px;
      /* kluczowe */
    }

    .mnf-ref__item {
      flex: 0 0 88%;
      /* stała szerokość */
      scroll-snap-align: start;

      height: min(78vh, 720px);
      padding: 10px;
    }

    .mnf-ref__item img {
      height: 100%;
      width: 100%;
      object-fit: contain;
    }
  }

  /* MNF THANK YOU PAGE */

  .mnf-thanks {
    padding: 100px 20px;
    background: #f8fafc;
  }

  .mnf-thanks-wrap {
    max-width: 720px;
    margin: 0 auto;
  }

  .mnf-thanks-card {
    background: #ffffff;
    padding: 60px 50px;
    border-radius: 18px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.06);
    text-align: center;
  }

  .mnf-thanks-icon {
    font-size: 40px;
    margin-bottom: 20px;
  }

  .mnf-thanks-title {
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 15px;
    color: #1f2937;
  }

  .mnf-thanks-lead {
    font-size: 18px;
    margin-bottom: 30px;
    color: #4b5563;
  }

  .mnf-thanks-box {
    background: #eef6ff;
    padding: 18px 20px;
    border-radius: 12px;
    font-weight: 500;
    margin-bottom: 25px;
  }

  .mnf-thanks-note {
    text-align: left;
    margin-bottom: 35px;
    font-size: 15px;
    font-size: 15px;
    color: #6b7280;
  }

  .mnf-thanks-note ul {
    margin: 10px 0 0 18px;
  }

  .mnf-thanks-actions {
    display: flex;
    gap: 15px;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 25px;
  }

  .mnf-thanks-btn {
    padding: 14px 26px;
    border-radius: 8px;
    font-weight: 600;
    text-decoration: none;
    transition: 0.2s ease;
  }

  .mnf-thanks-btn--primary {
    background: #1f2937;
    color: #fff;
  }

  .mnf-thanks-btn--primary:hover {
    background: #111827;
  }

  .mnf-thanks-btn--ghost {
    border: 1px solid #d1d5db;
    color: #374151;
  }

  .mnf-thanks-btn--ghost:hover {
    background: #f3f4f6;
  }

  .mnf-thanks-small {
    font-size: 14px;
    color: #9ca3af;
  }

  /* Mobile */

  @media (max-width: 768px) {
    .mnf-thanks-card {
      padding: 40px 25px;
    }

    .mnf-thanks-title {
      font-size: 24px;
    }
  }

  /* ===============================
   MNF – Bezpieczne płatności (STOPKA)
================================= */

  .mnf-payments-inline {
    margin-top: 18px;
  }

  .mnf-payments-inline__row {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 12px;
    border: 1px solid rgba(145, 202, 229, .22);
    background: rgba(255, 255, 255, .04);
  }

  .mnf-payments-inline__label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    line-height: 1;
    white-space: nowrap;
  }

  .mnf-payments-inline__icon {
    color: #91cae5;
    flex: 0 0 auto;
  }

  .mnf-payments-inline__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 10px;
    border-radius: 10px;
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(255, 255, 255, .30);
    line-height: 1;
    transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease;
  }

  .mnf-payments-inline__badge:hover {
    transform: translateY(-1px);
    background: #fff;
    box-shadow: 0 10px 22px rgba(0, 0, 0, .18);
  }

  .mnf-payments-inline__logo {
    display: block;
    height: 28px;
    width: auto;
    max-height: 28px;
  }

  @media (max-width:768px) {
    .mnf-payments-inline__row {
      width: 100%;
      justify-content: flex-start;
    }
  }

  /* MOBILE DORADZTWO 1:1 – poprawki hero */
  @media (max-width: 900px) {

    /* ukryj przycisk nad zdjęciem */
    .mnf-11 .mnf-11-hero__text .mnf-11-btn {
      display: none;
    }

    /* zmniejsz odstęp między tekstem a zdjęciem */
    .mnf-11 .mnf-11-hero {
      gap: 12px;
    }

    /* usuń duży margines nad zdjęciem */
    .mnf-11 .mnf-11-media {
      margin-top: 0;
    }

  }

  /* MOBILE DORADZTWO 1:1 – usuń pustą przestrzeń po przycisku */
  @media (max-width: 900px) {

    /* ukryj przycisk */
    .mnf-11 .mnf-11-btn {
      display: none !important;
    }

    /* usuń margines paragrafu który go zawiera */
    .mnf-11 .mnf-11-hero__text p:has(.mnf-11-btn) {
      display: none;
    }

    /* zmniejsz odstęp między kolumnami */
    .mnf-11 .mnf-11-hero {
      gap: 10px;
    }

  }

  /* =========================================================
   MNF 1:1 – MOBILE FINAL FIX
   ========================================================= */
  @media (max-width: 900px) {

    .mnf-11 .mnf-11-hero {
      display: flex !important;
      flex-direction: column !important;
      gap: 10px !important;
      align-items: stretch !important;
    }

    .mnf-11 .mnf-11-hero__text {
      display: block !important;
      width: 100% !important;
      max-width: 100% !important;
      flex: none !important;
      margin: 0 !important;
      padding: 0 !important;
      min-height: 0 !important;
    }

    .mnf-11 .mnf-11-hero__img {
      width: 100% !important;
      max-width: 100% !important;
      flex: none !important;
      margin: 0 !important;
      padding: 0 !important;
    }

    /* ukryj przycisk nad zdjęciem */
    .mnf-11 .mnf-11-btn--hero {
      display: none !important;
    }

    /* ukryj hint na mobile */
    .mnf-11 .mnf-ankieta-hint {
      display: none !important;
      margin: 0 !important;
      padding: 0 !important;
    }

    /* zbierz odstępy pod leadem i listą */
    .mnf-11 .mnf-11-lead {
      margin: 0 0 10px 0 !important;
    }

    .mnf-11 .mnf-11-list {
      margin: 10px 0 6px 18px !important;
      padding: 0 !important;
    }

    .mnf-11 .mnf-11-list li:last-child {
      margin-bottom: 0 !important;
    }

    /* zdjęcie ma podejść wyżej */
    .mnf-11 .mnf-11-media {
      margin-top: 0 !important;
    }

    .mnf-11 .mnf-11-media__img {
      display: block;
      width: 100%;
      max-width: 100%;
      height: auto;
    }
  }

  /* MNF – ukrycie przycisku "Zamów jeszcze raz" w szczegółach zamówienia */

  .woocommerce-order .order-again,
  .woocommerce a.order-again,
  .woocommerce-button.order-again {
    display: none !important;
  }

  /* MNF – numer zamówienia pod nazwą produktu */
  .mnf-order-product-link {
    display: inline-block;
    font-weight: 700;
  }

  .mnf-order-number-mobile {
    margin-top: 6px;
    font-size: 13px;
    line-height: 1.4;
    color: #5b6475;
  }

  /* Desktop – numer ukryty, bo nie jest aż tak potrzebny */
  @media (min-width: 769px) {
    .mnf-order-number-mobile {
      display: none;
    }
  }

  /* Mobile – pokaż kolumnę Produkt */
  @media (max-width: 768px) {

    .woocommerce-account .woocommerce-orders-table__cell-order-number,
    .woocommerce-account td.order-number {
      display: block !important;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-number::before,
    .woocommerce-account td.order-number::before {
      content: "Produkt:";
      font-weight: 700;
      display: inline-block;
      min-width: 90px;
      color: inherit;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-number a,
    .woocommerce-account td.order-number a {
      display: inline-block;
    }
  }

  /* =========================================================
   DORADZTWO 1:1 – pionowe zdjęcie mniejsze, ankieta wyżej
   ========================================================= */

  .mnf-11 .mnf-11-hero__img {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  .mnf-11 .mnf-11-hero__img .mnf-11-media {
    width: 100% !important;
    max-width: 380px !important;
    margin: 0 auto 18px auto !important;
  }

  .mnf-11 .mnf-11-hero__img .mnf-11-media__img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    border-radius: 18px !important;
  }

  .mnf-11 .mnf-11-hero__img .mnf-ankieta {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* desktop: jeśli chcesz ciut większe zdjęcie */
  @media (min-width: 901px) {
    .mnf-11 .mnf-11-hero__img .mnf-11-media {
      max-width: 400px !important;
    }
  }
/* ======================================
MNF – Ankieta wstępna
URL: /ankieta-wstepna/
WPForms ID: 1007
====================================== */

/* strona */
body.page-id-1045 {
  background: #f7f8fb;
}

body.page-id-1045 .entry-content.is-layout-constrained,
body.page-id-1045 .entry-content,
body.page-id-1045 .site-main,
body.page-id-1045 .ct-container {
  max-width: 100% !important;
  width: 100% !important;
}

/* wrapper formularza */
body.page-id-1045 #wpforms-1007.wpforms-container,
body.page-id-1045 #wpforms-1007.wpforms-container-full {
  max-width: 920px !important;
  width: 100% !important;
  margin: 40px auto 56px !important;
  padding: 0 20px !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

/* karta formularza */
body.page-id-1045 #wpforms-form-1007 {
  display: block !important;
  width: 100% !important;
  background: #ffffff !important;
  border: 1px solid #e5eaf2 !important;
  border-radius: 24px !important;
  padding: 32px !important;
  box-shadow: 0 12px 34px rgba(62, 74, 100, 0.08) !important;
  box-sizing: border-box !important;
}

/* ukryj pierwsze puste pole u góry */
body.page-id-1045 #wpforms-form-1007 .wpforms-field-container>.wpforms-field:first-child {
  display: none !important;
}

/* ukryj puste etykiety i puste opisy */
body.page-id-1045 #wpforms-form-1007 .wpforms-field-label:empty,
body.page-id-1045 #wpforms-form-1007 .wpforms-field-description:empty,
body.page-id-1045 #wpforms-form-1007 .wpforms-hidden,
body.page-id-1045 #wpforms-form-1007 .wpforms-field-hp {
  display: none !important;
}

/* pola */
body.page-id-1045 #wpforms-form-1007 .wpforms-field {
  padding: 0 !important;
  margin: 0 0 22px !important;
}

body.page-id-1045 #wpforms-form-1007 .wpforms-field-label {
  display: block !important;
  margin: 0 0 8px !important;
  color: #3e4a64 !important;
  font-size: 18px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
}

body.page-id-1045 #wpforms-form-1007 .wpforms-field-description {
  margin: 8px 0 0 !important;
  color: #6b7280 !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* inputy */
body.page-id-1045 #wpforms-form-1007 input[type="text"],
body.page-id-1045 #wpforms-form-1007 input[type="email"],
body.page-id-1045 #wpforms-form-1007 input[type="number"],
body.page-id-1045 #wpforms-form-1007 input[type="tel"],
body.page-id-1045 #wpforms-form-1007 textarea,
body.page-id-1045 #wpforms-form-1007 select {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 56px !important;
  padding: 14px 16px !important;
  border: 1px solid #d8dfeb !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  color: #24324a !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
}

body.page-id-1045 #wpforms-form-1007 textarea {
  min-height: 150px !important;
  resize: vertical !important;
}

body.page-id-1045 #wpforms-form-1007 input:focus,
body.page-id-1045 #wpforms-form-1007 textarea:focus,
body.page-id-1045 #wpforms-form-1007 select:focus {
  border-color: #91cae5 !important;
  box-shadow: 0 0 0 4px rgba(145, 202, 229, 0.22) !important;
  outline: none !important;
}

/* radio / checkbox */
body.page-id-1045 #wpforms-form-1007 ul li {
  margin-bottom: 10px !important;
  color: #3e4a64 !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}

/* sekcje robione opisem */
body.page-id-1045 #wpforms-form-1007 .wpforms-field-description h3,
body.page-id-1045 #wpforms-form-1007 .wpforms-field-description strong {
  display: block !important;
  margin: 14px 0 6px !important;
  color: #3e4a64 !important;
  font-size: 24px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
}

/* licznik i błędy */
body.page-id-1045 #wpforms-form-1007 .wpforms-field-limit-text {
  margin-top: 6px !important;
  color: #7b8798 !important;
  font-size: 12px !important;
}

body.page-id-1045 #wpforms-form-1007 label.wpforms-error {
  margin-top: 6px !important;
  color: #b42318 !important;
  font-size: 13px !important;
}

/* przycisk */
body.page-id-1045 #wpforms-form-1007 button[type="submit"],
body.page-id-1045 #wpforms-form-1007 input[type="submit"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 56px !important;
  padding: 14px 28px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: #3e4a64 !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  box-shadow: 0 10px 24px rgba(62, 74, 100, 0.18) !important;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease !important;
}

body.page-id-1045 #wpforms-form-1007 button[type="submit"]:hover,
body.page-id-1045 #wpforms-form-1007 input[type="submit"]:hover {
  background: #32405a !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 14px 28px rgba(62, 74, 100, 0.22) !important;
}

/* mobile */
@media (max-width: 768px) {

  body.page-id-1045 #wpforms-1007.wpforms-container,
  body.page-id-1045 #wpforms-1007.wpforms-container-full {
    margin: 20px auto 36px !important;
    padding: 0 14px !important;
  }

  body.page-id-1045 #wpforms-form-1007 {
    padding: 20px !important;
    border-radius: 18px !important;
  }

  body.page-id-1045 #wpforms-form-1007 .wpforms-field {
    margin-bottom: 18px !important;
  }

  body.page-id-1045 #wpforms-form-1007 .wpforms-field-label {
    font-size: 16px !important;
  }

  body.page-id-1045 #wpforms-form-1007 input[type="text"],
  body.page-id-1045 #wpforms-form-1007 input[type="email"],
  body.page-id-1045 #wpforms-form-1007 input[type="number"],
  body.page-id-1045 #wpforms-form-1007 input[type="tel"],
  body.page-id-1045 #wpforms-form-1007 textarea,
  body.page-id-1045 #wpforms-form-1007 select {
    min-height: 52px !important;
    padding: 13px 14px !important;
    font-size: 15px !important;
    border-radius: 12px !important;
  }

  body.page-id-1045 #wpforms-form-1007 textarea {
    min-height: 130px !important;
  }

  body.page-id-1045 #wpforms-form-1007 button[type="submit"],
  body.page-id-1045 #wpforms-form-1007 input[type="submit"] {
    width: 100% !important;
  }
}
/* =========================================================
   MNF – BRANŻE
   dopisz na końcu pliku:
   public_html/wp-content/uploads/mnf-style.css
   ========================================================= */

.mnf-branches-page {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

.mnf-branches-hero-section {
  padding-top: 34px;
  padding-bottom: 18px;
}

.mnf-branches-hero {
  position: relative;
  overflow: hidden;
  padding: 34px;
  background:
    radial-gradient(720px 320px at 0% 0%, rgba(145, 202, 229, .14), transparent 58%),
    radial-gradient(520px 260px at 100% 0%, rgba(235, 209, 184, .18), transparent 56%),
    linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(255, 255, 255, .88));
}

.mnf-branches-hero::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 6px;
  background: linear-gradient(180deg, #91cae5 0%, #ebd1b8 100%);
}

.mnf-branches-hero>* {
  position: relative;
  z-index: 1;
}

.mnf-branches-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(260px, .55fr);
  gap: 28px;
  align-items: end;
}

.mnf-branches-hero__content h1 {
  margin: 0 0 16px;
  max-width: 920px;
}

.mnf-branches-hero__content .mnf-lead {
  max-width: 900px;
  margin: 0;
}

.mnf-branches-hero__box {
  display: grid;
  gap: 14px;
}

.mnf-branches-hero__mini {
  padding: 18px;
  border: 1px solid rgba(62, 74, 100, .10);
  border-radius: 18px;
  background: rgba(255, 255, 255, .68);
  box-shadow: 0 8px 24px rgba(16, 24, 40, .05);
}

.mnf-branches-hero__mini strong {
  display: block;
  margin-bottom: 4px;
  color: var(--navy);
  font-size: 24px;
  font-weight: 800;
  line-height: 1.15;
}

.mnf-branches-hero__mini span {
  display: block;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.5;
}

.mnf-branches-grid-section {
  padding-top: 10px;
  padding-bottom: 42px;
}

.mnf-branches-frame {
  padding: 24px 24px 22px;
  background:
    radial-gradient(520px 240px at 100% 0%, rgba(145, 202, 229, .08), transparent 60%),
    linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(255, 255, 255, .94));
}

.mnf-branches-frame__head {
  margin-bottom: 18px;
}

.mnf-branches-frame__head h2 {
  margin: 0 0 8px;
}

.mnf-branches-frame__head p {
  margin: 0;
  color: var(--muted);
}

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

.mnf-branch-card {
  min-width: 0;
}

.mnf-branch-card__inner {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 22px 18px 18px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background:
    radial-gradient(360px 180px at 100% 0%, rgba(145, 202, 229, .10), transparent 62%),
    linear-gradient(180deg, #ffffff 0%, #fcfcfd 100%);
  box-shadow: 0 8px 20px rgba(16, 24, 40, .04);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.mnf-branch-card__inner:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 30px rgba(16, 24, 40, .08);
  border-color: rgba(62, 74, 100, .16);
}

.mnf-branch-card__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  min-height: 30px;
  margin-bottom: 14px;
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(235, 209, 184, .55);
  border: 1px solid rgba(62, 74, 100, .08);
  color: var(--navy);
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.mnf-branch-card h3 {
  margin: 0 0 14px;
  color: var(--navy);
  font-size: clamp(22px, 2vw, 28px);
  line-height: 1.18;
}

.mnf-branch-card__list {
  margin: 0;
  padding-left: 18px;
  color: var(--muted);
}

.mnf-branch-card__list li {
  margin: 0 0 10px;
  line-height: 1.6;
}

.mnf-branch-card__list li:last-child {
  margin-bottom: 0;
}

.mnf-branch-card__btn {
  margin-top: auto;
  align-self: flex-start;
}

@media (max-width:1100px) {
  .mnf-branches-hero__grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .mnf-branches-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width:767px) {
  .mnf-branches-hero-section {
    padding-top: 22px;
    padding-bottom: 14px;
  }

  .mnf-branches-hero {
    padding: 24px 18px;
  }

  .mnf-branches-hero__mini {
    padding: 14px 14px 12px;
    border-radius: 14px;
  }

  .mnf-branches-hero__mini strong {
    font-size: 20px;
  }

  .mnf-branches-frame {
    padding: 18px 14px 14px;
  }

  .mnf-branches-grid {
    gap: 12px;
  }

  .mnf-branch-card__inner {
    padding: 18px 16px 16px;
  }

  .mnf-branch-card__btn {
    width: 100%;
  }
}
