@media (max-width: 600px ) {
    #menu.sticky {
			position: absolute !important;}
}
@media only screen and (max-width: 1024px) and (min-width: 600px) {
    .hfe-nav-menu__breakpoint-tablet .hfe-nav-menu__layout-horizontal .hfe-nav-menu {
margin-left:20px;
	}
}
.bafg-twentytwenty-container img {
	opacity:0;
}
.twentytwenty-container img {
	opacity:1;
}
.bafg-twentytwenty-container {
	min-height:500px;
	position:realtive;
}
.twentytwenty-container {
	min-height:unset;
}
.bafg-twentytwenty-container:after {
    width: 48px;
    height: 48px;
    border: 5px solid #01395e;
    border-bottom-color: transparent;
	content:'';
	left:50%; top:50%;
	margin-left:-24px;
	margin-top:-24px;
    border-radius: 50%;
	position:absolute;
    display: inline-block;
    box-sizing: border-box;
    animation: rotation 1s linear infinite;
}
@keyframes rotation {
	0% {
		transform: rotate(0deg) ;
		-webkit-transform-origin: 50% 50%;
-moz-transform-origin: 50% 50%;
-o-transform-origin: 50% 50%;
transform-origin: 50% 50%;
    }
	100% {
		transform: rotate(360deg) ;
		-webkit-transform-origin: 50% 50%;
-moz-transform-origin: 50% 50%;
-o-transform-origin: 50% 50%;
transform-origin: 50% 50%;
    }
} 
/* =========================================================
   BemowoDental — Leczenie kanałowe pod mikroskopem
   Zrefaktoryzowany CSS (Bez FAQ, wyśrodkowane numerki i eyebrow)
   ========================================================= */

:root {
  --bd-navy: #01395e;
  --bd-navy-2: #07527f;
  --bd-blue: #0091de;
  --bd-blue-dark: #0077b8;
  --bd-sky: #eaf7ff;
  --bd-sky-2: #f4fbff;
  --bd-mint: #eafaf6;
  --bd-gold: #f6b84b;
  --bd-ink: #1f2933;
  --bd-muted: #5f6c7b;
  --bd-border: #dbe8f0;
  --bd-bg: #f7fbfe;
  --bd-white: #fff;
  --bd-shadow: 0 14px 34px rgba(1, 57, 94, 0.08);
  --bd-shadow-soft: 0 8px 22px rgba(1, 57, 94, 0.05);
  --bd-radius: 22px;
}

/* Baza strony */
.bd-endo-page { color: var(--bd-ink); font-family: Poppins, Arial, sans-serif; line-height: 1.75; background: #fff; }
.bd-endo-page, .bd-endo-page *, .bd-endo-page *::before, .bd-endo-page *::after { box-sizing: border-box; }
.bd-endo-page p { margin-top: 0; }
.bd-endo-page strong { color: var(--bd-navy); font-weight: 800; }
.bd-endo-page a:not(.bd-btn) { color: #006fae; font-weight: 700; text-decoration: underline; text-decoration-thickness: 1.5px; text-decoration-color: rgba(246, 184, 75, 0.75); text-underline-offset: 4px; }
.bd-endo-page a:not(.bd-btn):hover { color: var(--bd-navy); text-decoration-color: var(--bd-blue); }

.bd-wrap { width: min(1120px, calc(100% - 36px)); margin: 0 auto; }
.bd-section { padding: 56px 0; }

/* Tła sekcji */
.bd-section--soft { background: linear-gradient(180deg, #f7fbfe 0%, #fff 100%); }
.bd-section--price { background: radial-gradient(circle at 10% 12%, rgba(0, 145, 222, 0.1), transparent 28%), radial-gradient(circle at 90% 0%, rgba(246, 184, 75, 0.12), transparent 30%), linear-gradient(180deg, #f7fbfe 0%, #fff 100%); }
.bd-section--blue { background: radial-gradient(circle at top left, rgba(0, 145, 222, 0.2), transparent 34%), linear-gradient(135deg, #01395e 0%, #07527f 100%); color: #fff; }
.bd-section--blue p, .bd-section--blue li, .bd-section--blue h1, .bd-section--blue h2, .bd-section--blue h3, .bd-section--blue strong { color: #fff; }
.bd-section--blue a:not(.bd-btn) { color: #fff; text-decoration-color: rgba(255, 255, 255, 0.7); }

/* Nagłówki */
.bd-eyebrow { display: inline-flex; align-items: center; justify-content: center; width: max-content; max-width: 100%; margin: 0 0 14px; padding: 8px 14px; border-radius: 99px; background: rgba(0, 145, 222, 0.1); color: var(--bd-blue-dark); font-size: 13px; font-weight: 800; line-height: 1.25; letter-spacing: 0.02em; text-transform: uppercase; }
.bd-eyebrow--light { background: rgba(255, 255, 255, 0.16); color: #fff; }
.bd-title { margin: 0 0 18px; color: var(--bd-navy); font-size: clamp(32px, 4vw, 52px); line-height: 1.12; font-weight: 800; letter-spacing: -0.03em; }
.bd-heading { margin: 0 0 18px; color: var(--bd-navy); font-size: clamp(28px, 3vw, 44px); line-height: 1.16; font-weight: 800; letter-spacing: -0.025em; }
.bd-subheading { margin: 0 0 14px; color: var(--bd-navy); font-size: 24px; line-height: 1.3; font-weight: 800; }
.bd-lead { margin: 0 0 22px; max-width: 860px; color: var(--bd-muted); font-size: clamp(17px, 1.6vw, 20px); line-height: 1.7; }
.bd-text { color: var(--bd-muted); font-size: 16px; line-height: 1.75; }

/* Wyśrodkowanie nagłówków w sekcjach (Gwarancja specyficzności) */
.bd-section:not(.bd-hero) > .bd-wrap > .bd-eyebrow,
.bd-section:not(.bd-hero) > .bd-wrap > .bd-heading,
.bd-section:not(.bd-hero) > .bd-wrap > .bd-lead { display: block; margin-left: auto; margin-right: auto; text-align: center; }
.bd-section:not(.bd-hero) > .bd-wrap > .bd-heading,
.bd-section:not(.bd-hero) > .bd-wrap > .bd-lead { max-width: 900px; }

/* Hero */
.bd-hero { position: relative; overflow: hidden; padding: 82px 0 56px; background: radial-gradient(circle at 12% 18%, rgba(0, 145, 222, 0.18), transparent 28%), radial-gradient(circle at 92% 18%, rgba(246, 184, 75, 0.18), transparent 28%), linear-gradient(180deg, #f4fbff 0%, #fff 100%); }
.bd-hero::before { content: ""; position: absolute; inset: auto -80px -140px auto; width: 360px; height: 360px; border-radius: 999px; background: rgba(0, 145, 222, 0.08); }
.bd-hero-grid { position: relative; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr); gap: 44px; align-items: center; }
.bd-hero-card { position: relative; padding: 28px; border: 1px solid rgba(0, 145, 222, 0.18); border-radius: 28px; background: #fff; box-shadow: 0 18px 45px rgba(1, 57, 94, 0.12); }
.bd-hero-card::before { content: ""; position: absolute; inset: 16px 16px auto auto; width: 92px; height: 92px; border-radius: 28px; background: linear-gradient(135deg, rgba(0, 145, 222, 0.18), rgba(246, 184, 75, 0.18)); }
.bd-hero-card-inner { position: relative; }
.bd-hero-icon { display: inline-flex; align-items: center; justify-content: center; min-width: 76px; height: 52px; margin: 18px 0; padding: 0 18px; border-radius: 18px; background: var(--bd-navy); color: #fff; font-size: 22px; font-weight: 900; letter-spacing: -0.02em; box-shadow: 0 14px 28px rgba(1, 57, 94, 0.18); }

/* Przyciski i Akcje */
.bd-actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; align-items: center; margin-top: 28px; text-align: center; }
.bd-hero .bd-actions { justify-content: flex-start; }
.bd-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 56px; min-width: 190px; padding: 16px 30px; border: 2px solid transparent; border-radius: 999px; font-size: 16px; font-weight: 800; line-height: 1.2; letter-spacing: 0.02em; text-transform: uppercase; text-decoration: none !important; transition: 0.2s ease; cursor: pointer; }
.bd-btn--primary { background: var(--bd-blue); color: #fff !important; box-shadow: 0 18px 34px rgba(0, 145, 222, 0.3); }
.bd-btn--primary:hover { background: var(--bd-blue-dark); color: #fff !important; transform: translateY(-1px); }
.bd-btn--ghost { border-color: rgba(1, 57, 94, 0.18); background: #fff; color: var(--bd-navy) !important; box-shadow: 0 10px 22px rgba(1, 57, 94, 0.06); }
.bd-btn--ghost:hover { border-color: var(--bd-blue); color: var(--bd-navy) !important; transform: translateY(-1px); }
.bd-section--blue .bd-btn--ghost { background: transparent; border-color: rgba(255, 255, 255, 0.35); color: #fff !important; }

/* Nawigacja szybka */
.bd-quick-nav { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; max-width: 760px; margin: 28px auto 0; padding: 0; list-style: none; }
.bd-quick-nav a { display: inline-flex; align-items: center; justify-content: center; padding: 9px 14px; border: 1px solid var(--bd-border); border-radius: 999px; background: #fff; color: var(--bd-navy) !important; font-size: 14px; font-weight: 800; text-align: center; text-decoration: none !important; transition: 0.2s; }
.bd-quick-nav a:hover { border-color: var(--bd-blue); color: var(--bd-blue-dark) !important; }

/* Gridy i Karty */
.bd-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(28px, 5vw, 56px); align-items: start; }
.bd-grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.bd-grid-4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }

.bd-card, .bd-split-box { height: 100%; padding: 24px; border: 1px solid var(--bd-border); border-radius: var(--bd-radius); background: #fff; box-shadow: var(--bd-shadow-soft); }
.bd-card h3, .bd-card h4 { margin: 0 0 10px; color: var(--bd-navy); font-size: 18px; line-height: 1.32; font-weight: 800; }
.bd-card p { margin: 0; color: var(--bd-muted); font-size: 15px; line-height: 1.7; }

/* .bd-card-index z wymuszonym centrowaniem (margin: 0 auto) na desktop i mobile */
.bd-card-index { display: flex; align-items: center; justify-content: center; width: 46px; height: 46px; margin: 0 auto 14px auto; border-radius: 15px; background: var(--bd-sky); color: var(--bd-blue-dark); font-size: 15px; font-weight: 900; }

.bd-highlight { margin: 28px 0 0; padding: 22px 24px; border-left: 6px solid var(--bd-blue); border-radius: 18px; background: var(--bd-sky); color: var(--bd-navy); font-weight: 700; line-height: 1.65; }

/* Zdjęcia */
.bd-photo, .bd-process-visual, .bd-tech-photo { overflow: hidden; border: 1px solid var(--bd-border); background: #fff; }
.bd-photo { margin: 24px 0; border-radius: 24px; box-shadow: var(--bd-shadow); }
.bd-photo img, .bd-process-visual img, .bd-tech-photo img { display: block; width: 100%; height: auto; }
.bd-photo figcaption { padding: 12px 16px; color: var(--bd-muted); font-size: 13px; line-height: 1.45; background: #fff; }
.bd-photo--hero { max-width: 500px; margin: 0 auto 18px; }
.bd-photo--hero img, .bd-photo--compact img { object-fit: contain; background: #fff; }
.bd-photo--compact { max-width: 520px; }
.bd-photo--compact img { max-height: 260px; }
.bd-photo--wide img { max-height: 520px; object-fit: contain; }

/* Reset List z Elementora */
.bd-endo-page ul, .bd-endo-page ol, .bd-bullets, .bd-specs, .bd-visit-points, .bd-after-list { margin-left: 0 !important; padding-left: 0 !important; list-style: none !important; }
.bd-endo-page li, .bd-bullets li, .bd-specs li, .bd-visit-points li, .bd-after-list li { list-style: none !important; }
.bd-endo-page li::marker, .bd-bullets li::marker, .bd-specs li::marker, .bd-visit-points li::marker, .bd-after-list li::marker { content: "" !important; font-size: 0 !important; color: transparent !important; }
.bd-specs li::before, .bd-price-table li::before { display: none !important; content: none !important; }

/* Lista numerowana */
.bd-bullets { display: grid; gap: 10px; margin: 18px 0 0 !important; counter-reset: bd-bullet; }
.bd-bullets li { position: relative; margin: 0 !important; padding: 0 0 0 42px !important; color: var(--bd-muted); counter-increment: bd-bullet; line-height: 1.65; }
.bd-bullets li::before { display: flex; align-items: center; justify-content: center; content: counter(bd-bullet, decimal-leading-zero) !important; position: absolute; left: 0; top: 1px; width: 30px; height: 30px; border-radius: 10px; background: var(--bd-sky); color: var(--bd-blue-dark); font-size: 12px; font-weight: 900; line-height: 1; }
.bd-section--blue .bd-bullets li { color: rgba(255, 255, 255, 0.92); }
.bd-section--blue .bd-bullets li::before { background: rgba(255, 255, 255, 0.16); color: #fff; }

/* Proces leczenia */
.bd-process-section { background: linear-gradient(180deg, #fff 0%, #f7fbfe 100%); }
.bd-process-hero { display: grid; grid-template-columns: minmax(0, 0.95fr) minmax(360px, 1.05fr); gap: clamp(26px, 4vw, 48px); align-items: center; margin-bottom: 28px; }
.bd-process-visual { margin: 0; padding: 14px; border-radius: 26px; box-shadow: 0 12px 30px rgba(1, 57, 94, 0.07); }
.bd-process-visual img { max-height: 380px; object-fit: contain; }
.bd-process-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 20px; counter-reset: bd-process; }
.bd-process-step { position: relative; padding: 22px 20px 22px 72px; border: 1px solid var(--bd-border); border-radius: 22px; background: #fff; box-shadow: var(--bd-shadow-soft); counter-increment: bd-process; }
.bd-process-step::before { display: flex; align-items: center; justify-content: center; content: counter(bd-process, decimal-leading-zero); position: absolute; left: 20px; top: 22px; width: 38px; height: 38px; border-radius: 13px; background: var(--bd-sky); color: var(--bd-blue-dark); font-size: 14px; font-weight: 900; line-height: 1; }
.bd-process-step h3 { margin: 0 0 8px; color: var(--bd-navy); font-size: 18px; line-height: 1.28; font-weight: 800; }
.bd-process-step p { margin: 0; color: var(--bd-muted); font-size: 15px; line-height: 1.65; }

/* Sekcja Ciemna (Jedna wizyta) */
.bd-visit-section { padding: 42px 0 !important; background: #fff; }
.bd-visit-card { display: grid; grid-template-columns: minmax(0, 0.95fr) minmax(320px, 1.05fr); gap: clamp(26px, 4vw, 52px); align-items: center; padding: clamp(28px, 4vw, 46px); border-radius: 30px; background: radial-gradient(circle at top left, rgba(0, 145, 222, 0.24), transparent 32%), linear-gradient(135deg, #01395e 0%, #07527f 100%); box-shadow: 0 18px 42px rgba(1, 57, 94, 0.18); }
.bd-visit-card, .bd-visit-card h2, .bd-visit-card h3, .bd-visit-card p, .bd-visit-card li, .bd-visit-card strong { color: #fff !important; }
.bd-visit-card .bd-eyebrow { background: rgba(255, 255, 255, 0.14); color: #fff; }
.bd-visit-points { display: grid; gap: 12px; margin: 0 !important; counter-reset: bd-visit; }
.bd-visit-points li { position: relative; margin: 0 !important; padding: 14px 16px 14px 58px !important; border-radius: 18px; background: rgba(255, 255, 255, 0.11); line-height: 1.55; counter-increment: bd-visit; }
.bd-visit-points li::before { display: flex; align-items: center; justify-content: center; content: counter(bd-visit, decimal-leading-zero); position: absolute; left: 16px !important; top: 14px !important; width: 30px; height: 30px; border-radius: 10px; background: rgba(255, 255, 255, 0.18); font-size: 12px; font-weight: 900; }

/* Cennik */
.bd-price-highlights { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 30px 0 26px; }
.bd-price-highlight { padding: 22px; border: 1px solid var(--bd-border); border-radius: 22px; background: #fff; box-shadow: 0 12px 28px rgba(1, 57, 94, 0.06); text-align: center; }
.bd-price-highlight span { display: block; margin-bottom: 8px; color: var(--bd-muted); font-size: 14px; font-weight: 700; }
.bd-price-highlight strong { display: block; color: var(--bd-navy); font-size: clamp(24px, 3vw, 34px); line-height: 1.1; }
.bd-price-highlight small { display: block; margin-top: 8px; color: var(--bd-muted); font-size: 13px; line-height: 1.45; }

.bd-price-wrap { overflow-x: auto; margin-top: 24px; border: 1px solid var(--bd-border); border-radius: 22px; background: #fff; box-shadow: 0 12px 28px rgba(1, 57, 94, 0.06); }
.bd-price-table { width: 100%; min-width: 620px; border-collapse: collapse; background: #fff; }
.bd-price-table th, .bd-price-table td { padding: 16px 18px; border-bottom: 1px solid var(--bd-border); text-align: left; vertical-align: top; }
.bd-price-table th { background: var(--bd-navy); color: #fff; font-size: 15px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.03em; }
.bd-price-table td { color: var(--bd-ink); }
.bd-price-table td:last-child, .bd-price-table th:last-child { width: 180px; text-align: right; color: var(--bd-navy); font-weight: 900; } .bd-price-table th:last-child { color: #fff; }
.bd-price-table tr:last-child td { border-bottom: 0; }
.bd-price-category td { background: var(--bd-sky); color: var(--bd-navy) !important; font-weight: 900; text-align: left !important; }

.bd-note { margin-top: 18px; padding: 18px 20px; border: 1px solid rgba(246, 184, 75, 0.35); border-radius: 18px; background: #fff7e8; color: #6b4b13; font-size: 14px; line-height: 1.65; }

/* Technologie */
.bd-tech-list { display: grid; gap: 20px; margin-top: 28px; }
.bd-tech { display: grid; grid-template-columns: 290px 1fr; overflow: hidden; border: 1px solid var(--bd-border); border-radius: 28px; background: #fff; box-shadow: var(--bd-shadow); transition: transform 0.2s, box-shadow 0.2s; }
.bd-tech:hover { transform: translateY(-2px); box-shadow: 0 20px 44px rgba(1, 57, 94, 0.1); }
.bd-tech-head { display: grid; grid-column: 1 / -1; grid-template-columns: auto 1fr; gap: 18px; align-items: flex-start; padding: 24px 26px; border-bottom: 1px solid var(--bd-border); background: linear-gradient(135deg, #f2fbff 0%, #fff 100%); }
.bd-tech:nth-child(even) .bd-tech-head { background: linear-gradient(135deg, #fff9ed 0%, #fff 100%); }
.bd-tech-number { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 18px; background: var(--bd-blue); color: #fff; font-size: 20px; font-weight: 900; line-height: 1; }
.bd-tech:nth-child(even) .bd-tech-number { background: var(--bd-gold); color: var(--bd-navy); }
.bd-tech-head h3 { margin: 0 0 6px; color: var(--bd-navy); font-size: 24px; line-height: 1.25; font-weight: 800; }
.bd-tech-head p { margin: 0; color: var(--bd-muted); }
.bd-tech-photo { margin: 0; border-right: 1px solid var(--bd-border); background: var(--bd-bg); }
.bd-tech-photo img { height: 100%; min-height: 260px; max-height: none; object-fit: contain; padding: 14px; background: #fff; }
.bd-tech-body { padding: 24px 26px; }

.bd-specs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 18px 0 0 !important; }
.bd-specs li { margin: 0 !important; padding: 13px 14px !important; border-radius: 16px; background: var(--bd-bg); color: var(--bd-ink); font-size: 14px; line-height: 1.55; }
.bd-specs strong { color: var(--bd-navy); }

/* Dla kogo / Po leczeniu */
#dla-kogo .bd-lead, #dla-kogo .bd-text { margin-left: auto; margin-right: auto; max-width: 900px; text-align: center; }
#dla-kogo .bd-grid-3 { margin-top: 28px; align-items: stretch; }
#dla-kogo .bd-card { display: flex !important; flex-direction: column !important; gap: 14px !important; padding: 34px 28px !important; text-align: center !important; }

/* Centrowanie na desktopie z wlasciwoscia flex */
#dla-kogo .bd-card-index { flex: 0 0 auto !important; margin: 0 auto 12px auto !important; width: 54px !important; height: 54px !important; border-radius: 16px; }

#dla-kogo .bd-card h3, #dla-kogo .bd-card p { margin: 0 !important; padding: 0 !important; text-align: center !important; }
#dla-kogo .bd-card p { max-width: 420px; }

.bd-after-section { background: linear-gradient(180deg, #fff 0%, #f7fbfe 100%); }
.bd-after-card { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(320px, 1fr); gap: clamp(24px, 4vw, 44px); align-items: start; padding: clamp(26px, 4vw, 42px); border: 1px solid var(--bd-border); border-radius: 30px; background: #fff; box-shadow: var(--bd-shadow); }
.bd-after-list { display: grid; gap: 12px; margin: 0 !important; counter-reset: bd-after; }
.bd-after-list li { position: relative; min-height: 56px; margin: 0 !important; padding: 15px 16px 15px 58px !important; border-radius: 18px; background: var(--bd-bg); color: var(--bd-muted); counter-increment: bd-after; line-height: 1.65; }
.bd-after-list li::before { display: flex; align-items: center; justify-content: center; content: counter(bd-after, decimal-leading-zero); position: absolute; left: 16px !important; top: 15px !important; width: 30px; height: 30px; border-radius: 10px; background: var(--bd-sky); color: var(--bd-blue-dark); font-size: 12px; font-weight: 900; }

/* Kontakt */
.bd-cta { text-align: center; }
.bd-contact-card { max-width: 760px; margin: 30px auto 0; padding: 28px; border: 1px solid rgba(255, 255, 255, 0.22); border-radius: 28px; background: rgba(255, 255, 255, 0.12); text-align: center; }
.bd-contact-card p { margin: 0; color: #fff; }
.bd-contact-card a { color: #fff !important; font-weight: 800; }

/* =========================================================
   Responsywność (Połączone Breakpointy)
   ========================================================= */

@media (max-width: 980px) {
  .bd-hero-grid, .bd-grid-2, .bd-grid-3, .bd-grid-4, .bd-process-hero, .bd-visit-card, .bd-after-card, .bd-tech, .bd-price-highlights, .bd-specs { grid-template-columns: minmax(0, 1fr) !important; }
  .bd-process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bd-tech-photo { border-right: 0; border-bottom: 1px solid var(--bd-border); }
}

@media (max-width: 760px) {
  .bd-wrap { width: min(100% - 24px, 1120px); }
  .bd-section { padding: 44px 0; }
  .bd-hero { padding: 58px 0 44px; text-align: center; }
  .bd-title { font-size: 34px; }
  .bd-heading { font-size: 29px; }
  .bd-subheading { font-size: 22px; }
  .bd-lead { font-size: 17px; }
  
  /* Eyebrow centrowane i zachowujace naturalna szerokosc flex */
  .bd-eyebrow { display: flex !important; width: fit-content !important; max-width: 100% !important; white-space: normal !important; text-align: center !important; justify-content: center !important; margin-left: auto !important; margin-right: auto !important; overflow-wrap: break-word !important; }
  
  .bd-card-index, .bd-tech-number { margin-left: auto !important; margin-right: auto !important; }
  .bd-hero .bd-actions, .bd-actions, .bd-quick-nav { justify-content: center; }
  .bd-btn { width: 100% !important; max-width: 360px !important; min-width: 0 !important; margin-left: auto; margin-right: auto; box-sizing: border-box !important; }
  .bd-card, .bd-split-box, .bd-hero-card, .bd-tech-body, .bd-tech-head { padding: 20px; }
  .bd-process-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .bd-process-step { padding: 72px 18px 20px; }
  .bd-process-step::before { left: 50%; top: 18px; transform: translateX(-50%); }
  
  /* Pancerne wyśrodkowanie KAŻDEGO tekstu na mobile z !important */
  .bd-title, .bd-heading, .bd-subheading, .bd-lead, .bd-text,
  .bd-process-step h3, .bd-process-step p,
  .bd-card h3, .bd-card p,
  .bd-split-box h3, .bd-split-box p,
  .bd-visit-card h2, .bd-visit-card h3, .bd-visit-card p,
  .bd-after-card h2, .bd-after-card h3, .bd-after-card p,
  .bd-tech-head h3, .bd-tech-head p, .bd-tech-body p, .bd-specs li,
  .bd-contact-card p, .bd-hero h2, .bd-hero p {
    text-align: center !important;
  }
  
  /* Technologie - numerek nad tekst i na środek */
  .bd-tech-head { grid-template-columns: minmax(0, 1fr) !important; gap: 14px; }
  .bd-tech-number { margin: 0 auto 12px auto !important; }

  /* Karta ciemna (Jedna wizyta) - rozbicie nakładającego się tekstu na numerki */
  .bd-visit-points li, .bd-after-list li { padding: 58px 16px 16px !important; text-align: center !important; }
  .bd-visit-points li::before, .bd-after-list li::before { left: 50% !important; top: 16px !important; transform: translateX(-50%); }
  
  .bd-after-card, .bd-visit-card, .bd-contact-card { padding: 24px 18px; border-radius: 24px; }
  
  #dla-kogo .bd-card { padding: 28px 20px !important; gap: 12px !important; }
  #dla-kogo .bd-card-index { margin: 0 auto 8px auto !important; }
}

@media (max-width: 640px) {
  /* Tabela cennika jako karty */
  .bd-price-wrap { overflow: visible; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
  .bd-price-table { display: block; width: 100%; min-width: 0; background: transparent; }
  .bd-price-table thead { display: none; }
  .bd-price-table tbody { display: grid; gap: 12px; }
  .bd-price-table tr { display: block; padding: 15px 16px; border: 1px solid var(--bd-border); border-radius: 18px; background: #fff; box-shadow: 0 8px 22px rgba(1, 57, 94, 0.05); }
  .bd-price-table td { display: block; width: 100% !important; padding: 0 !important; border: 0 !important; text-align: center !important; }
  .bd-price-table td:first-child { color: var(--bd-ink); font-size: 15px; font-weight: 700; line-height: 1.45; }
  .bd-price-table td:last-child { margin-top: 8px; color: var(--bd-navy); font-size: 22px; font-weight: 900; line-height: 1.2; }
  
  .bd-price-category { padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
  .bd-price-category td { margin: 8px 0 2px !important; padding: 14px 16px !important; border-radius: 16px; background: var(--bd-navy) !important; color: #fff !important; font-size: 14px !important; font-weight: 900 !important; text-align: center !important; line-height: 1.45; }
  .bd-price-category td:last-child { margin-top: 8px !important; }
}


/* =========================================================
   BemowoDental — globalny styl artykułów sekcyjnych   ========================================================= */

:root {
  --bd-navy: #01395e;
  --bd-navy-2: #07527f;
  --bd-blue: #0091de;
  --bd-blue-dark: #0077b8;
  --bd-sky: #eaf7ff;
  --bd-sky-2: #f4fbff;
  --bd-bg: #f7fbfe;
  --bd-white: #ffffff;
  --bd-ink: #1f2933;
  --bd-muted: #5f6c7b;
  --bd-border: #dbe8f0;
  --bd-gold: #f6b84b;
  --bd-shadow: 0 14px 34px rgba(1, 57, 94, 0.08);
  --bd-shadow-soft: 0 8px 22px rgba(1, 57, 94, 0.05);
  --bd-radius: 22px;
}

/* Główne pole treści wpisu */
.single-post .single-blog-post .text {
  max-width: 980px;
  margin: 0 auto;
  color: var(--bd-ink);
  font-family: Poppins, Arial, sans-serif;
  font-size: 17px;
  line-height: 1.75;
}

.single-post .single-blog-post .text,
.single-post .single-blog-post .text *,
.single-post .single-blog-post .text *::before,
.single-post .single-blog-post .text *::after {
  box-sizing: border-box;
}

/* Sekcje artykułu */
.single-post .single-blog-post .text > section {
  max-width: 920px;
  margin: 0 auto;
  padding: 28px 0;
  scroll-margin-top: 120px;
}

/* Pierwsza sekcja — lead */
.single-post .single-blog-post .text > section#wprowadzenie {
  padding-top: 14px;
}

.single-post .single-blog-post .text > section#wprowadzenie p:first-child {
  font-size: 19px;
  line-height: 1.75;
  color: var(--bd-navy);
}

/* Tytuł wpisu z szablonu */
.single-post .single-blog-post .blog-title {
  max-width: 980px;
  margin: 0 auto 28px;
  color: var(--bd-navy);
  font-family: Poppins, Arial, sans-serif;
  font-size: clamp(34px, 4vw, 54px);
  line-height: 1.12;
  font-weight: 800;
  letter-spacing: -0.035em;
}

/* Akapity */
.single-post .single-blog-post .text p {
  margin: 0 0 18px;
  color: var(--bd-ink);
}

.single-post .single-blog-post .text strong {
  color: var(--bd-navy);
  font-weight: 800;
}

/* Linki */
.single-post .single-blog-post .text a {
  color: var(--bd-blue-dark);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 1.5px;
  text-decoration-color: rgba(246, 184, 75, 0.75);
  text-underline-offset: 4px;
}

.single-post .single-blog-post .text a:hover {
  color: var(--bd-navy);
  text-decoration-color: var(--bd-blue);
}

/* Nagłówki */
.single-post .single-blog-post .text h2 {
  margin: 0 0 22px;
  color: var(--bd-navy);
  font-family: Poppins, Arial, sans-serif;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.18;
  font-weight: 800;
  letter-spacing: -0.025em;
}

.single-post .single-blog-post .text h2::after {
  content: "";
  display: block;
  width: 72px;
  height: 5px;
  margin-top: 14px;
  border-radius: 999px;
  background: var(--bd-blue);
}

.single-post .single-blog-post .text h3 {
  margin: 34px 0 14px;
  color: var(--bd-navy-2);
  font-family: Poppins, Arial, sans-serif;
  font-size: 23px;
  line-height: 1.32;
  font-weight: 800;
  letter-spacing: -0.015em;
}

/* Listy zwykłe */
.single-post .single-blog-post .text ul,
.single-post .single-blog-post .text ol {
  margin: 0 0 24px;
  padding-left: 24px;
}

.single-post .single-blog-post .text li {
  margin: 0 0 10px;
  color: var(--bd-ink);
}

.single-post .single-blog-post .text li p {
  margin: 0;
}

/* =========================================================
   Sekcja: W skrócie
   ========================================================= */

.single-post .single-blog-post .text section#w-skrocie {
  max-width: 980px;
  margin: 34px auto;
  padding: 38px 36px;
  border: 1px solid var(--bd-border);
  border-radius: var(--bd-radius);
  background: linear-gradient(135deg, #f5fbff 0%, #ffffff 100%);
  box-shadow: var(--bd-shadow-soft);
}

.single-post .single-blog-post .text section#w-skrocie h2 {
  margin-bottom: 24px;
  text-align: left;
}

.single-post .single-blog-post .text section#w-skrocie ul {
  display: grid !important;
  gap: 14px !important;
  margin: 22px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
  list-style-type: none !important;
}

.single-post .single-blog-post .text section#w-skrocie li {
  position: relative !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 0 0 48px !important;
  list-style: none !important;
  list-style-type: none !important;
  color: var(--bd-ink);
  line-height: 1.65;
}

.single-post .single-blog-post .text section#w-skrocie li::marker {
  content: "" !important;
  display: none !important;
  font-size: 0 !important;
  color: transparent !important;
}

.single-post .single-blog-post .text section#w-skrocie li p {
  margin: 0 !important;
}

/* Kwadrat z checkiem */
.single-post .single-blog-post .text section#w-skrocie li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 3px !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 10px !important;
  background: var(--bd-sky) !important;
  border: 1px solid rgba(0, 145, 222, 0.22) !important;
  box-shadow: none !important;
}

/* Sam check */
.single-post .single-blog-post .text section#w-skrocie li::after {
  content: "✓" !important;
  position: absolute !important;
  left: 9px !important;
  top: 1px !important;
  color: var(--bd-blue-dark) !important;
  font-size: 17px !important;
  font-weight: 900 !important;
}

/* Meta artykułu */
.single-post .single-blog-post .text section#metadane-artykulu {
  padding: 10px 0 24px;
}

.single-post .single-blog-post .text div[data-section="article-meta"] {
  padding: 22px 24px;
  border: 1px solid var(--bd-border);
  border-radius: 18px;
  background: #f8fafc;
  color: var(--bd-muted);
  font-size: 15px;
  line-height: 1.65;
}

.single-post .single-blog-post .text div[data-section="article-meta"] p {
  margin: 0 0 8px;
  color: var(--bd-muted);
}

.single-post .single-blog-post .text div[data-section="article-meta"] p:last-child {
  margin-bottom: 0;
}

/* Tabele */
.single-post .single-blog-post .text table {
  width: 100%;
  margin: 26px 0 34px;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid var(--bd-border);
  border-radius: 18px;
  background: var(--bd-white);
  box-shadow: var(--bd-shadow-soft);
}

.single-post .single-blog-post .text table th,
.single-post .single-blog-post .text table td {
  padding: 16px 18px;
  border-right: 1px solid #e6edf2;
  border-bottom: 1px solid #e6edf2;
  vertical-align: top;
  text-align: left;
  line-height: 1.55;
}

.single-post .single-blog-post .text table th:last-child,
.single-post .single-blog-post .text table td:last-child {
  border-right: 0;
}

.single-post .single-blog-post .text table tr:last-child td {
  border-bottom: 0;
}

.single-post .single-blog-post .text table th {
  background: #f0f8fc;
  color: var(--bd-navy);
  font-weight: 800;
}

.single-post .single-blog-post .text table tbody tr:hover {
  background: #f8fcff;
}

/* FAQ */
.single-post .single-blog-post .text section#faq {
  max-width: 920px;
}

.single-post .single-blog-post .text section#faq h3 {
  margin-top: 18px;
  padding-top: 20px;
  border-top: 1px solid #e6edf2;
}

.single-post .single-blog-post .text section#faq h3:first-of-type {
  border-top: 0;
}

/* CTA */
.single-post .single-blog-post .text .article-cta-section {
  max-width: 980px;
  margin: 46px auto 50px;
  padding: 0;
  text-align: center;
}

.single-post .single-blog-post .text .article-cta-section h2 {
  text-align: center;
  margin-bottom: 24px;
}

.single-post .single-blog-post .text .article-cta-section h2::after {
  margin-left: auto;
  margin-right: auto;
}

.single-post .single-blog-post .text .article-cta {
  padding: 40px 36px;
  border: 1px solid var(--bd-border);
  border-radius: 26px;
  background:
    radial-gradient(circle at 12% 0%, rgba(0, 145, 222, 0.12), transparent 34%),
    radial-gradient(circle at 90% 10%, rgba(246, 184, 75, 0.12), transparent 32%),
    linear-gradient(135deg, #f5fbff 0%, #ffffff 100%);
  box-shadow: var(--bd-shadow);
  text-align: center;
}

.single-post .single-blog-post .text .article-cta__title {
  max-width: 820px;
  margin: 0 auto 16px;
  color: var(--bd-navy);
  font-size: 24px;
  line-height: 1.35;
  font-weight: 800;
}

.single-post .single-blog-post .text .article-cta__text {
  max-width: 820px;
  margin: 0 auto 28px;
  color: var(--bd-ink);
  font-size: 17px;
  line-height: 1.75;
}

.single-post .single-blog-post .text .article-cta__action {
  margin: 0;
}

.single-post .single-blog-post .text .article-cta__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 16px 34px;
  border-radius: 999px;
  background: var(--bd-blue);
  color: #ffffff !important;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none !important;
  text-transform: none;
  box-shadow: 0 14px 28px rgba(0, 145, 222, 0.28);
  transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.single-post .single-blog-post .text .article-cta__button:hover {
  background: var(--bd-blue-dark);
  color: #ffffff !important;
  transform: translateY(-1px);
  box-shadow: 0 18px 34px rgba(0, 145, 222, 0.34);
}

/* Podsumowanie */
.single-post .single-blog-post .text section#podsumowanie {
  max-width: 980px;
  margin: 36px auto 0;
  padding: 34px 32px;
  border-radius: var(--bd-radius);
  background: linear-gradient(135deg, #f7fbfe 0%, #ffffff 100%);
  border: 1px solid var(--bd-border);
}

.single-post .single-blog-post .text section#podsumowanie ul {
  margin-top: 20px;
}

/* Obrazki w treści */
.single-post .single-blog-post .text img {
  max-width: 100%;
  height: auto;
  border-radius: 20px;
  box-shadow: var(--bd-shadow-soft);
}

/* Lepszy odstęp po zdjęciu głównym z szablonu */
.single-post .single-blog-post .single-post-image {
  margin-bottom: 34px;
}

.single-post .single-blog-post .single-post-image img {
  border-radius: 22px;
}

/* Responsywność */
@media (max-width: 768px) {
  .single-post .single-blog-post .text {
    max-width: 100%;
    font-size: 16px;
    line-height: 1.7;
  }

  .single-post .single-blog-post .text > section {
    max-width: 100%;
    padding: 24px 0;
  }

  .single-post .single-blog-post .blog-title {
    font-size: 32px;
    line-height: 1.16;
  }

  .single-post .single-blog-post .text h2 {
    font-size: 27px;
  }

  .single-post .single-blog-post .text h3 {
    font-size: 21px;
  }

  .single-post .single-blog-post .text > section#wprowadzenie p:first-child {
    font-size: 17px;
  }

  .single-post .single-blog-post .text section#w-skrocie,
  .single-post .single-blog-post .text section#podsumowanie {
    padding: 28px 22px;
    border-radius: 20px;
  }

  .single-post .single-blog-post .text section#w-skrocie li {
    padding-left: 44px !important;
  }

  .single-post .single-blog-post .text table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
    border-radius: 16px;
  }

  .single-post .single-blog-post .text table th,
  .single-post .single-blog-post .text table td {
    padding: 14px 16px;
  }

  .single-post .single-blog-post .text .article-cta {
    padding: 30px 22px;
    border-radius: 22px;
  }

  .single-post .single-blog-post .text .article-cta__title {
    font-size: 21px;
  }

  .single-post .single-blog-post .text .article-cta__text {
    font-size: 16px;
  }

  .single-post .single-blog-post .text .article-cta__button {
    width: 100%;
    max-width: 360px;
  }
}

@media (max-width: 480px) {
  .single-post .single-blog-post .text h2 {
    font-size: 24px;
  }

  .single-post .single-blog-post .text h3 {
    font-size: 19px;
  }

  .single-post .single-blog-post .text section#w-skrocie li {
    padding-left: 40px !important;
  }

  .single-post .single-blog-post .text section#w-skrocie li::before {
    width: 28px !important;
    height: 28px !important;
  }

  .single-post .single-blog-post .text section#w-skrocie li::after {
    left: 8px !important;
    top: 1px !important;
  }

  .single-post .single-blog-post .text .article-cta__button {
    max-width: 100%;
    padding-left: 22px;
    padding-right: 22px;
  }
}

/* BEGIN BEMOWODENTAL CWV & CLS FIX */
.hfe-site-logo-container .hfe-site-logo-img {
  aspect-ratio: 300 / 120;
  width: auto;
  max-height: 80px;
}
.single-welcome-box .icon-holder {
  min-height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.single-welcome-box .icon-holder img {
  height: 90px;
  width: auto;
}
.main-slider.style2 .slider-box {
  min-height: 550px;
}
.main-slider.style2 .banner-carousel:not(.owl-loaded) {
  display: block !important;
  overflow: hidden;
  max-height: 735px;
}
.main-slider.style2 .banner-carousel:not(.owl-loaded) .slide:not(:first-child) {
  display: none !important;
}
.breadcrumb-area .title h1 {
  color: #ffffff;
  font-size: 30px;
  line-height: 40px;
  font-weight: 700;
  text-transform: capitalize;
  margin: 0;
}
/* END BEMOWODENTAL CWV & CLS FIX */

/* BEGIN FOOTER MOBILE MENU FIX */
.elementor-3583 .elementor-element.elementor-element-2e5676a .hfe-nav-menu-icon,
.elementor-3583 .elementor-element.elementor-element-2e5676a .hfe-nav-menu-icon i {
  color: #FFFFFF !important;
}
.elementor-3583 .elementor-element.elementor-element-2e5676a nav.hfe-dropdown,
.elementor-3583 .elementor-element.elementor-element-2e5676a nav.hfe-dropdown-expandible {
  background-color: #FFFFFF !important;
  border-radius: 10px;
  overflow: hidden;
}
.elementor-3583 .elementor-element.elementor-element-2e5676a nav.hfe-dropdown .menu-item a.hfe-menu-item,
.elementor-3583 .elementor-element.elementor-element-2e5676a nav.hfe-dropdown .menu-item a.hfe-sub-menu-item,
.elementor-3583 .elementor-element.elementor-element-2e5676a nav.hfe-dropdown-expandible .menu-item a.hfe-menu-item,
.elementor-3583 .elementor-element.elementor-element-2e5676a nav.hfe-dropdown-expandible .menu-item a.hfe-sub-menu-item {
  color: #01395E !important;
  background-color: #FFFFFF !important;
  font-weight: 500;
  justify-content: center !important;
  text-align: center !important;
}
.elementor-3583 .elementor-element.elementor-element-2e5676a nav.hfe-dropdown .menu-item a.hfe-menu-item:hover,
.elementor-3583 .elementor-element.elementor-element-2e5676a nav.hfe-dropdown .menu-item.current-menu-item a.hfe-menu-item {
  color: #FFFFFF !important;
  background-color: #01395E !important;
}
@media (max-width: 1024px) {
  /* Menu w stopce rozwija sie w bloku i przesuwa zawartosc w dol zamiast ja zaslaniac */
  .elementor-3583 .elementor-element.elementor-element-2e5676a .hfe-nav-menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
  }
  .elementor-3583 .elementor-element.elementor-element-2e5676a .hfe-nav-menu__toggle {
    margin: 0 auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }
  .elementor-3583 .elementor-element.elementor-element-2e5676a nav.hfe-dropdown,
  .elementor-3583 .elementor-element.elementor-element-2e5676a .hfe-active-menu.hfe-active-menu-full-width + nav.hfe-dropdown,
  .elementor-3583 .elementor-element.elementor-element-2e5676a .hfe-active-menu + nav.hfe-dropdown {
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
    top: auto !important;
    width: min(100%, 340px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    z-index: 1 !important;
    float: none !important;
  }
  .elementor-3583 .elementor-element.elementor-element-2e5676a nav.hfe-dropdown:not(.menu-is-active) {
    display: none !important;
    height: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .elementor-3583 .elementor-element.elementor-element-2e5676a nav.hfe-dropdown.menu-is-active,
  .elementor-3583 .elementor-element.elementor-element-2e5676a .hfe-active-menu + nav.hfe-dropdown {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    margin-top: 12px !important;
    margin-bottom: 8px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18) !important;
  }
}
@media (max-width: 767px) {
  /* Wysrodkowanie wszystkich elementow stopki na telefonie */
  .elementor-3583 .elementor-column > .elementor-widget-wrap {
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
  }
  .elementor-3583 .elementor-widget {
    width: 100% !important;
    text-align: center !important;
  }
  .elementor-3583 .elementor-heading-title,
  .elementor-3583 .elementor-widget-text-editor,
  .elementor-3583 .elementor-widget-text-editor p {
    text-align: center !important;
  }
  .elementor-3583 .elementor-divider {
    display: flex !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .elementor-3583 .elementor-divider-separator {
    margin: 0 auto !important;
  }
  .elementor-3583 .elementor-element-ff51a50 {
    padding: 0 14px !important;
  }
  .elementor-3583 .elementor-element-7c1a928 iframe {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
  }
}
/* END FOOTER MOBILE MENU FIX */



/* BEGIN BD MOBILE OVERFLOW & COMPARISON TABLE FIX */
html, body, #page, #colophon, .bd-endo-page {
  overflow-x: clip;
  max-width: 100%;
}
.bd-hero-grid > *,
.bd-grid-2 > *,
.bd-grid-3 > *,
.bd-grid-4 > *,
.bd-process-hero > *,
.bd-process-grid > *,
.bd-visit-card > *,
.bd-after-card > *,
.bd-tech > *,
.bd-tech-head > *,
.bd-price-highlights > *,
.bd-specs > *,
.bd-price-wrap {
  min-width: 0 !important;
  max-width: 100% !important;
}
.bemowo-bc-wrap,
.bemowo-breadcrumb {
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow-wrap: break-word !important;
}

/* Override global .elementor-widget-text-editor h1/h2/h3/h4 { margin: 20px 0; text-align: left; } inside .bd-endo-page */
.bd-endo-page .bd-title { margin: 0 0 18px !important; }
.bd-endo-page .bd-heading { margin: 0 0 18px !important; }
.bd-endo-page .bd-subheading { margin: 0 0 14px !important; }
.bd-endo-page .bd-section:not(.bd-hero) > .bd-wrap > .bd-eyebrow,
.bd-endo-page .bd-section:not(.bd-hero) > .bd-wrap > .bd-heading,
.bd-endo-page .bd-section:not(.bd-hero) > .bd-wrap > .bd-lead {
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}
.bd-endo-page .bd-section:not(.bd-hero) > .bd-wrap > .bd-eyebrow {
  display: flex !important;
  width: fit-content !important;
}
#porownanie > h3.bd-subheading,
#porownanie > p.bd-text,
.e-con > h2.e-heading-base {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.bd-endo-page .bd-process-step h3 {
  margin: 0 0 8px !important;
  text-align: left;
}
.bd-endo-page .bd-tech-head h3 {
  margin: 0 0 6px !important;
  text-align: left;
}
.bd-endo-page .bd-card h3,
.bd-endo-page .bd-card h4 {
  margin: 0 0 10px !important;
}

/* High-contrast links inside dark navy .bd-visit-card */
.bd-visit-card a:not(.bd-btn) {
  color: #fff !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1.5px !important;
  text-decoration-color: var(--bd-gold) !important;
  text-underline-offset: 4px !important;
}
.bd-visit-card a:not(.bd-btn):hover {
  color: var(--bd-gold) !important;
  text-decoration-color: #fff !important;
}

/* Centered 3-column feature cards with .bd-card-index across all .bd-endo-page sections */
#dla-kogo .bd-grid-3,
#laserowe-leczenie > .bd-wrap > .bd-grid-3,
#po-kanalowym > .bd-wrap > .bd-grid-3,
#bonding-bruksizm > .bd-wrap > .bd-grid-3 {
  margin-top: 28px;
  align-items: stretch;
}
#dla-kogo .bd-card,
#laserowe-leczenie > .bd-wrap > .bd-grid-3 .bd-card,
#po-kanalowym > .bd-wrap > .bd-grid-3 .bd-card,
#bonding-bruksizm > .bd-wrap > .bd-grid-3 .bd-card {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  padding: 34px 28px !important;
  text-align: center !important;
}
#dla-kogo .bd-card-index,
#laserowe-leczenie > .bd-wrap > .bd-grid-3 .bd-card-index,
#po-kanalowym > .bd-wrap > .bd-grid-3 .bd-card-index,
#bonding-bruksizm > .bd-wrap > .bd-grid-3 .bd-card-index {
  flex: 0 0 auto !important;
  margin: 0 auto 12px auto !important;
  width: 54px !important;
  height: 54px !important;
  border-radius: 16px;
}
#dla-kogo .bd-card h3,
#dla-kogo .bd-card p,
#laserowe-leczenie > .bd-wrap > .bd-grid-3 .bd-card h3,
#laserowe-leczenie > .bd-wrap > .bd-grid-3 .bd-card p,
#po-kanalowym > .bd-wrap > .bd-grid-3 .bd-card h3,
#po-kanalowym > .bd-wrap > .bd-grid-3 .bd-card p,
#bonding-bruksizm > .bd-wrap > .bd-grid-3 .bd-card h3,
#bonding-bruksizm > .bd-wrap > .bd-grid-3 .bd-card p {
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

@media (max-width: 760px) {
  .bemowo-bc-wrap,
  .bemowo-breadcrumb {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .bd-eyebrow {
    display: flex !important;
    width: fit-content !important;
    max-width: 100% !important;
    white-space: normal !important;
    text-align: center !important;
    justify-content: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-wrap: break-word !important;
  }
  .bd-photo,
  .bd-photo--compact,
  .bd-photo--hero,
  .bd-process-visual,
  .bd-tech-photo {
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
  .bd-photo figcaption,
  .bd-process-visual figcaption,
  .bd-tech-photo figcaption,
  .bd-highlight,
  .bd-note,
  .bd-card h4,
  .e-con h2.e-heading-base {
    text-align: center !important;
  }
  .bd-bullets li {
    padding: 44px 14px 12px !important;
    text-align: center !important;
  }
  .bd-bullets li::before {
    left: 50% !important;
    top: 6px !important;
    transform: translateX(-50%) !important;
  }
  #dla-kogo .bd-card,
  #laserowe-leczenie > .bd-wrap > .bd-grid-3 .bd-card,
  #po-kanalowym > .bd-wrap > .bd-grid-3 .bd-card,
  #bonding-bruksizm > .bd-wrap > .bd-grid-3 .bd-card {
    padding: 28px 20px !important;
    gap: 12px !important;
  }
  #dla-kogo .bd-card-index,
  #laserowe-leczenie > .bd-wrap > .bd-grid-3 .bd-card-index,
  #po-kanalowym > .bd-wrap > .bd-grid-3 .bd-card-index,
  #bonding-bruksizm > .bd-wrap > .bd-grid-3 .bd-card-index {
    margin: 0 auto 8px auto !important;
  }
}

@media (max-width: 640px) {
  .bd-price-category td,
  .bd-price-category td strong {
    color: #fff !important;
    text-align: center !important;
  }
  #porownanie .bd-price-table td:first-child,
  #porownanie .bd-price-table td:first-child strong {
    margin-bottom: 10px !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    text-align: center !important;
  }
  #porownanie .bd-price-table td:first-child {
    padding: 10px 14px !important;
    border-radius: 12px !important;
    background: var(--bd-navy) !important;
  }
  #porownanie .bd-price-table td:not(:first-child) {
    margin-top: 0 !important;
    padding: 10px 6px !important;
    border-bottom: 1px dashed var(--bd-border) !important;
    color: var(--bd-ink) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    text-align: center !important;
  }
  #porownanie .bd-price-table td:last-child {
    border-bottom: 0 !important;
    padding-bottom: 2px !important;
  }
  #porownanie .bd-price-table td:not(:first-child)::before {
    display: block;
    margin-bottom: 4px;
    color: var(--bd-blue-dark);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    text-align: center !important;
  }
  #porownanie .bd-price-table td[data-label]::before {
    content: attr(data-label);
  }
  .elementor-3451 #porownanie .bd-price-table td:nth-child(2)::before {
    content: "Stały most All-on-4 / All-on-6";
  }
  .elementor-3451 #porownanie .bd-price-table td:nth-child(3)::before {
    content: "Proteza na implantach Overdenture";
  }
  .elementor-3451 #porownanie .bd-price-table td:nth-child(4)::before {
    content: "Tradycyjna proteza akrylowa";
  }
  .elementor-2802 #porownanie .bd-price-table td:nth-child(2)::before {
    content: "Endodoncja laserowa Fotona SWEEPS® + TwinLight™";
  }
  .elementor-2802 #porownanie .bd-price-table td:nth-child(3)::before {
    content: "Aktywacja ultradźwiękowa (PUI)";
  }
  .elementor-2802 #porownanie .bd-price-table td:nth-child(4)::before {
    content: "Klasyczne płukanie strzykawką";
  }
  .elementor-2704 #porownanie .bd-price-table td:nth-child(2)::before { content: "Kompozyt warstwowy / Bonding"; }
  .elementor-2704 #porownanie .bd-price-table td:nth-child(3)::before { content: "Włókno szklane + Kompozyt"; }
  .elementor-2704 #porownanie .bd-price-table td:nth-child(4)::before { content: "Nakład Onlay / Endokorona"; }
  .elementor-2704 #porownanie .bd-price-table td:nth-child(5)::before { content: "Korona cyrkonowa / ceramiczna"; }
}
/* END BD MOBILE OVERFLOW & COMPARISON TABLE FIX */

/* =========================================================
   Universal Mobile Table data-label & Doctor Card Link Enhancements
   ========================================================= */
.bd-endo-page .bd-card h3 a {
  color: inherit !important;
  text-decoration: none !important;
  transition: color 0.2s ease;
}
.bd-endo-page .bd-card h3 a:hover {
  color: var(--bd-blue) !important;
}
@media (max-width: 767px) {
  .bd-endo-page .bd-price-table td[data-label]::before,
  .bd-endo-page #porownanie .bd-price-table td[data-label]::before {
    content: attr(data-label) !important;
    display: block;
    margin-bottom: 4px;
    color: var(--bd-blue-dark);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    text-align: center !important;
  }
}


/* ===BEMOWODENTAL MULTI-COLUMN COMPARISON TABLES FIX (v2.2.0)=== */
/* Desktop (>767px): only #cennik 2-column tables have right-aligned bold last column */
.bd-endo-page section:not(#cennik) .bd-price-table th:last-child,
.bd-endo-page #porownanie .bd-price-table th:last-child,
.bd-endo-page .bd-compare-block .bd-price-table th:last-child {
  width: auto !important;
  text-align: left !important;
}
.bd-endo-page section:not(#cennik) .bd-price-table td:last-child,
.bd-endo-page #porownanie .bd-price-table td:last-child,
.bd-endo-page .bd-compare-block .bd-price-table td:last-child {
  width: auto !important;
  text-align: left !important;
  font-weight: 400 !important;
  font-size: 15px !important;
  color: var(--bd-ink) !important;
}

/* Mobile (<=767px): multi-column comparison tables as clean stacked cards with navy header bar */
@media (max-width: 767px) {
  .bd-endo-page section:not(#cennik) .bd-price-table,
  .bd-endo-page #porownanie .bd-price-table,
  .bd-endo-page .bd-compare-block .bd-price-table {
    min-width: 0 !important;
  }
  .bd-endo-page section:not(#cennik) .bd-price-table tbody tr,
  .bd-endo-page #porownanie .bd-price-table tbody tr,
  .bd-endo-page .bd-compare-block .bd-price-table tbody tr {
    padding: 16px !important;
    border-radius: 18px !important;
    background: #fff !important;
    border: 1px solid var(--bd-border) !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05) !important;
    margin-bottom: 14px !important;
  }
  .bd-endo-page section:not(#cennik) .bd-price-table td:first-child,
  .bd-endo-page #porownanie .bd-price-table td:first-child,
  .bd-endo-page .bd-compare-block .bd-price-table td:first-child {
    background: var(--bd-navy) !important;
    color: #fff !important;
    padding: 10px 14px !important;
    border-radius: 12px !important;
    margin-bottom: 10px !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
  }
  .bd-endo-page section:not(#cennik) .bd-price-table td:first-child strong,
  .bd-endo-page section:not(#cennik) .bd-price-table td:first-child a,
  .bd-endo-page #porownanie .bd-price-table td:first-child strong,
  .bd-endo-page #porownanie .bd-price-table td:first-child a,
  .bd-endo-page .bd-compare-block .bd-price-table td:first-child strong,
  .bd-endo-page .bd-compare-block .bd-price-table td:first-child a {
    color: #fff !important;
  }
  .bd-endo-page section:not(#cennik) .bd-price-table td:first-child::before,
  .bd-endo-page #porownanie .bd-price-table td:first-child::before,
  .bd-endo-page .bd-compare-block .bd-price-table td:first-child::before {
    display: none !important;
    content: none !important;
  }
  .bd-endo-page section:not(#cennik) .bd-price-table td:not(:first-child),
  .bd-endo-page #porownanie .bd-price-table td:not(:first-child),
  .bd-endo-page .bd-compare-block .bd-price-table td:not(:first-child) {
    display: block !important;
    padding: 10px 6px !important;
    border-bottom: 1px dashed var(--bd-border) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    color: var(--bd-ink) !important;
    margin-top: 0 !important;
    text-align: left !important;
  }
  .bd-endo-page section:not(#cennik) .bd-price-table td:last-child,
  .bd-endo-page #porownanie .bd-price-table td:last-child,
  .bd-endo-page .bd-compare-block .bd-price-table td:last-child {
    border-bottom: 0 !important;
    padding-bottom: 2px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    color: var(--bd-ink) !important;
    margin-top: 0 !important;
    text-align: left !important;
  }
  .bd-endo-page section:not(#cennik) .bd-price-table td[data-label]::before,
  .bd-endo-page #porownanie .bd-price-table td[data-label]::before,
  .bd-endo-page .bd-compare-block .bd-price-table td[data-label]::before {
    content: attr(data-label) !important;
    display: block !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    color: var(--bd-blue) !important;
    margin-bottom: 4px !important;
  }
}
/* ===END MULTI-COLUMN COMPARISON TABLES FIX=== */

