/**
 * FOXXI — Choice page (foxxi.hu /) + Fogászat section (theme-fox) styles.
 *
 * Two parts:
 *   1. .foxxi-choice  — single full-bleed hero for the Választó page
 *   2. body.theme-fox — design-system overrides for fogászat section pages
 *      based on Claude Design handoff (docs/claude-design/...).
 *
 * All design tokens (fonts, colors, shadows, radii, easing) live in
 * foxxi-brand.css. This file applies them to the existing ACF Flexible
 * Content section partials so we don't have to touch the PHP.
 */


/* ════════════════════════════════════════════════════════════════
 * 1. FOXXI VÁLASZTÓ — single-hero choice page (choice.php template)
 * ════════════════════════════════════════════════════════════════ */

.foxxi-choice {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background-color: var(--fox-mint-800, #1f6e62);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 80px 24px;
  font-family: var(--sans);
}

.foxxi-choice__overlay {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 75% 60% at 50% 50%, rgba(66, 41, 28, .60) 0%, rgba(66, 41, 28, .82) 100%),
    linear-gradient(180deg, rgba(215, 92, 32, .25) 0%, rgba(66, 41, 28, .55) 100%);
  z-index: 1;
}

/* Language switch — mini-pill, top-right corner, follows the card glass aesthetic. */
.foxxi-choice__langswitch {
  position: absolute;
  top: 24px;
  right: 24px;
  z-index: 10;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 9px 18px 9px 20px;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 999px;
  color: #fff;
  font-family: var(--sans);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: .02em;
  line-height: 1;
  text-decoration: none;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition:
    background .35s var(--easing),
    border-color .35s var(--easing),
    color .35s var(--easing),
    transform .35s var(--easing);
}
.foxxi-choice__langswitch:hover,
.foxxi-choice__langswitch:focus-visible {
  background: var(--foxxi-orange, #d75c20);
  border-color: var(--foxxi-orange, #d75c20);
  color: #ffffff;
  outline: none;
}
.foxxi-choice__langswitch__arrow {
  display: inline-block;
  font-size: 16px;
  line-height: 1;
  transition: transform .35s var(--easing);
}
.foxxi-choice__langswitch:hover .foxxi-choice__langswitch__arrow,
.foxxi-choice__langswitch:focus-visible .foxxi-choice__langswitch__arrow {
  transform: translateX(3px);
}

@media (max-width: 760px) {
  .foxxi-choice__langswitch {
    top: 16px;
    right: 16px;
    padding: 7px 14px 7px 16px;
    font-size: 13px;
    gap: 8px;
  }
  .foxxi-choice__langswitch__arrow { font-size: 14px; }
}

.foxxi-choice__inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 48px;
}

.foxxi-choice__brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}
.foxxi-choice__logo {
  display: block;
  width: clamp(220px, 28vw, 380px);
  height: auto;
  max-height: 140px;
  object-fit: contain;
  filter: brightness(0) invert(1) drop-shadow(0 6px 24px rgba(0, 0, 0, .55));
}
.foxxi-choice__brand-sub {
  margin: 0;
  font-family: var(--sans);
  font-size: clamp(13px, 1vw, 15px);
  font-weight: 500;
  letter-spacing: .25em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .82);
}

.foxxi-choice__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  width: 100%;
  max-width: 480px;
  color: var(--foxxi-cypress);
}
.foxxi-choice__divider span {
  flex: 1 1 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, .35) 50%, transparent 100%);
}
.foxxi-choice__divider em {
  font-style: normal;
  font-size: 22px;
  color: var(--foxxi-cypress);
  text-shadow: 0 0 18px rgba(215, 92, 32, .8);
}

.foxxi-choice__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  width: 100%;
  max-width: 980px;
}
.foxxi-choice__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 36px 30px 32px;
  background: rgba(255, 255, 255, .06);
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: var(--radius);
  text-decoration: none;
  color: #fff;
  backdrop-filter: blur(6px);
  transition: transform .35s var(--easing), background .35s var(--easing), border-color .35s var(--easing);
  position: relative;
  overflow: hidden;
}
.foxxi-choice__card:hover {
  transform: translateY(-4px);
  background: rgba(255, 255, 255, .12);
  border-color: rgba(255, 255, 255, .35);
}
.foxxi-choice__card--fox {
  background: rgba(215, 92, 32, .25);
  border-color: rgba(215, 92, 32, .55);
}
.foxxi-choice__card--fox:hover {
  background: rgba(215, 92, 32, .42);
  border-color: rgba(255, 255, 255, .65);
}
.foxxi-choice__card-title {
  margin: 0 0 16px;
  font-family: var(--serif);
  font-style: normal;
  font-size: clamp(28px, 3.6vw, 46px);
  font-weight: 500;
  letter-spacing: -0.01em;
  color: #fff;
  line-height: 1.05;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .35);
}
.foxxi-choice__card-tagline {
  margin: 0 0 24px;
  font-family: var(--sans);
  font-size: clamp(14px, 1vw, 16px);
  line-height: 1.55;
  color: rgba(255, 255, 255, .9);
  max-width: 360px;
}
.foxxi-choice__card-cta {
  display: inline-block;
  padding: 10px 22px;
  font-family: var(--sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #fff;
  border: 1.5px solid rgba(255, 255, 255, .85);
  border-radius: 999px;
  margin-top: auto;
  transition: background .25s var(--easing), color .25s var(--easing);
}
.foxxi-choice__card:hover .foxxi-choice__card-cta {
  background: #fff;
  color: var(--foxxi-brown);
}
.foxxi-choice__card--fox:hover .foxxi-choice__card-cta {
  color: var(--foxxi-orange);
}

@media (max-width: 760px) {
  .foxxi-choice { padding: 60px 18px; }
  .foxxi-choice__inner { gap: 36px; }
  .foxxi-choice__cards {
    grid-template-columns: 1fr;
    gap: 18px;
    max-width: 480px;
  }
  .foxxi-choice__logo { width: clamp(180px, 60vw, 280px); }
  .foxxi-choice__brand-sub { letter-spacing: .15em; }
}

/* Hide site header / floating CTA on the choice page */
body.is-foxxi-choice .site-header,
body.is-foxxi-choice header.global-header,
body.is-foxxi-choice .main-header,
body.is-foxxi-choice .header,
body.is-foxxi-choice .siteHeader,
body.is-foxxi-choice .navigation,
body.is-foxxi-choice .nav-bar,
body.is-foxxi-choice .floatingCta,
body.is-foxxi-choice .placeholder { display: none !important; }

/* line 201: choice page CSS preserved above */

/* ════════════════════════════════════════════════════════════════
 * 2. body.theme-fox — MINIMAL color inversion only.
 *    No layout overrides. The theme renders sections natively;
 *    we only flip section background colors (brown ↔ cream/sand)
 *    so fogászat is visually distinct from fogszab.
 * ════════════════════════════════════════════════════════════════ */

/* About (.aboutWrapper.landing) — DENTAL MINT palette (2026-04-30) */
body.theme-fox .aboutWrapper {
  background: var(--fox-mint-100, #dff1ea) !important;
  color: var(--fox-mint-800, #1f6e62);
}
body.theme-fox .aboutWrapper h2,
body.theme-fox .aboutWrapper .aboutRight h2,
body.theme-fox .aboutWrapper strong,
body.theme-fox .aboutWrapper .teamItem strong {
  color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox .aboutWrapper p,
body.theme-fox .aboutWrapper .aboutRight p,
body.theme-fox .aboutWrapper .teamItem .title {
  color: var(--fox-mint-800, #1f6e62) !important;
  opacity: 0.92;
}
body.theme-fox .aboutWrapper a {
  color: var(--fox-mint-600, #48a999) !important;
}

/* Services (.section-service) — handled in section--services.php
 * (the partial generates inline styles based on is_fox_section()) */

/* Testimonials — cream → BROWN */
body.theme-fox .testimonialsWrapper,
body.theme-fox div[class*="testimonial"]:not(.swiper-slide-content) {
  background-color: var(--fox-mint-50, #f3faf7) !important;
}
body.theme-fox .testimonialsWrapper h2,
body.theme-fox div[class*="testimonial"] h2 {
  color: #fff !important;
}

/* Feature_section — fogszab uses color="brown"; on fogászat invert to cream
 * by overriding the .featureRow.brown background */
body.theme-fox .featureRow,
body.theme-fox .featureRow.brown {
  background-color: var(--fox-mint-100, #dff1ea) !important;
}
body.theme-fox .featureRow.brown h2,
body.theme-fox .featureRow.brown .content,
body.theme-fox .featureRow.brown p {
  color: var(--fox-mint-800, #1f6e62) !important;
}

/* Repeater (.repeater) — DENTAL MINT base (overridden specifically below) */
body.theme-fox .repeater,
body.theme-fox .repeater.white {
  background-color: var(--fox-mint-100, #dff1ea) !important;
  color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox .repeater h2,
body.theme-fox .repeater h3,
body.theme-fox .repeater p,
body.theme-fox .repeater .content { color: var(--fox-mint-800, #1f6e62) !important; }

/* ════════════════════════════════════════════════════════════════
 * Phase 5b refinement (2026-04-29) — STERILEBB FOGÁSZATI DESIGN
 *
 * Goals:
 *   1. Header-overlap fix: blockquote/első szekció kapjon padding-top
 *   2. Fix white-on-cream szöveg (.featureRow.cream .content .align *)
 *   3. Light-first paletta — kevesebb sötét barna, több krém + narancs accent
 *   4. Lapok-szakaszok közötti rugalmasabb átmenet
 * ════════════════════════════════════════════════════════════════ */

/* 1. HEADER OVERLAP FIX — első section padding-top a Theme Builder header
 *    alá. ELLENBEN: ha foxxi-page-hero az első section, semmi padding nem
 *    kell (a hero kép alá ér természetesen). */
body.theme-fox .elementor-template-full-width .elementor-section:first-of-type:not(:has(.elementor-widget-foxxi-page-hero)) {
  padding-top: 40px;
}

/* 1b. HERO + BLOCKQUOTE MERGE — a foxxi.hu eredetin a `.blockquote.top`
 *     `.pink` color-ban renderel: #fcefe7 háttér ami vizuálisan összefolyik
 *     a felső caption SVG-vel. A `feher` color-t is felül kell írni hogy
 *     ugyanaz a krém-rózsa szín jöjjön a hero alatt. */
body.theme-fox .blockquote.top.feher,
body.theme-fox .blockquote.top:not(.brown):not(.pink),
body.theme-ortho .blockquote.top.feher,
body.theme-ortho .blockquote.top:not(.brown):not(.pink) {
  background: #fcefe7 !important;
}
/* No top padding/gap between page-hero and blockquote.top */
.elementor-section:has(.elementor-widget-foxxi-page-hero) + .elementor-section .blockquote.top {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 2. FEATURE ROW CREAM — fehér-on-cream szöveg fix.
 *    A foxy theme natív `.featureRow .content .align *` -ban color:#fff
 *    érvényes — felül kell írni a krém-szín változatban. */
body.theme-fox .featureRow.cream {
  background-color: var(--fox-mint-100, #dff1ea) !important;
}
body.theme-fox .featureRow.cream .content .align,
body.theme-fox .featureRow.cream .content .align *,
body.theme-fox .featureRow.cream h2,
body.theme-fox .featureRow.cream p,
body.theme-fox .featureRow.cream li,
body.theme-fox .featureRow.cream strong,
body.theme-fox .featureRow.cream a {
  color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox .featureRow.cream a {
  color: var(--fox-mint-600, #48a999) !important;
  text-decoration: underline;
}

/* 3. LIGHT-FIRST PALETTA — fogászati klinikai éberzés.
 *    Default repeater.white → már barna; cseréljük krém alapra a fő
 *    "tisztaság" benyomásra. A narancs csak hangsúlyul marad. */
body.theme-fox .repeater,
body.theme-fox .repeater.white {
  background-color: var(--fox-mint-100, #dff1ea) !important;
  color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox .repeater h2,
body.theme-fox .repeater h3,
body.theme-fox .repeater p,
body.theme-fox .repeater .content,
body.theme-fox .repeater .content * {
  color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox .repeater a {
  color: var(--fox-mint-600, #48a999) !important;
}
/* Brown-tagged repeater stays brown (deliberate accent block) */
body.theme-fox .repeater.brown {
  background-color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox .repeater.brown h2,
body.theme-fox .repeater.brown h3,
body.theme-fox .repeater.brown p,
body.theme-fox .repeater.brown .content,
body.theme-fox .repeater.brown .content * {
  color: #fff !important;
}

/* 4. SERVICES SECTION fox — DENTAL MINT */
body.theme-fox .section-service {
  background-color: var(--fox-mint-100, #dff1ea) !important;
  color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox .section-service h2,
body.theme-fox .section-service .section-service-title,
body.theme-fox .section-service .section-service-content p {
  color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox .section-services-content {
  background-color: #fff !important;
  border: 1px solid rgba(95, 191, 163, 0.18);
  border-radius: 8px;
  transition: transform .25s ease, box-shadow .25s ease;
}
body.theme-fox .section-services-content:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(31, 110, 98, 0.10);
}
body.theme-fox .section-services-title {
  color: var(--fox-mint-800, #1f6e62) !important;
}
/* Services CTA button (Összes szolgáltatás) → mint */
body.theme-fox .services-btn,
body.theme-fox .section-service .mainBtn {
  background-color: var(--fox-mint-600, #48a999) !important;
  color: #fff !important;
}

/* 5. ABOUT WRAPPER (mint paletta override) — universal selector for nested
 *    text + mint background + teal CTAs. */
body.theme-fox .aboutWrapper,
body.theme-fox .aboutWrapper *,
body.theme-fox .aboutRight *,
body.theme-fox .aboutLeft * {
  color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox .aboutWrapper {
  background: var(--fox-mint-100, #dff1ea) !important;
}
body.theme-fox .aboutWrapper a,
body.theme-fox .aboutWrapper .mainBtn,
body.theme-fox .aboutWrapper .mainBtn * {
  color: #fff !important;
  background-color: var(--fox-mint-600, #48a999) !important;
}
body.theme-fox .aboutRight a {
  color: var(--fox-mint-600, #48a999) !important;
}

/* 5b. REPEATER on theme-fox — DENTAL MINT */
body.theme-fox .repeater:not(.brown):not(.pink),
body.theme-fox .repeater:not(.brown):not(.pink) *,
body.theme-fox .repeater.white,
body.theme-fox .repeater.white * {
  color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox .repeater:not(.brown):not(.pink) {
  background-color: var(--fox-mint-100, #dff1ea) !important;
}
body.theme-fox .repeater:not(.brown):not(.pink) a,
body.theme-fox .repeater.white a {
  color: var(--fox-mint-600, #48a999) !important;
}
body.theme-fox .repeater .mainBtn,
body.theme-fox .repeater .mainBtn:link,
body.theme-fox .repeater .mainBtn:visited {
  color: #fff !important;
  background-color: var(--fox-mint-600, #48a999) !important;
}
/* Brown repeater on fox-section: stays as accent block but now mint-deep */
body.theme-fox .repeater.brown {
  background-color: var(--fox-mint-700, #2c8378) !important;
}
body.theme-fox .repeater.brown,
body.theme-fox .repeater.brown * {
  color: #fff !important;
}

/* 6. TESTIMONIALS — DENTAL MINT */
body.theme-fox .testimonialsWrapper,
body.theme-fox div[class*="testimonial"]:not(.swiper-slide-content) {
  background-color: var(--fox-mint-50, #f3faf7) !important;
}
body.theme-fox .testimonialsWrapper h2 {
  color: var(--fox-mint-800, #1f6e62) !important;
}

/* 7. FOOTER → FOXXI EUCALYPTUS bordó-barna (Domi 2026-05-05: egységes a fogszab oldallal) */
body.theme-fox .footer { background-color: var(--foxxi-eucalyptus, #703e2a) !important; }
body.theme-fox .footer h6,
body.theme-fox .footer a,
body.theme-fox .footer p,
body.theme-fox .footer * { color: #fff !important; }
body.theme-fox .footer .subMenu { background-color: var(--foxxi-eucalyptus, #703e2a) !important; }

/* 8. FLYING CTA + MAIN BUTTONS → MINT TEAL */
body.theme-fox .bejelentkezes,
body.theme-fox .mainBtn,
body.theme-fox .ido_button,
body.theme-fox .buttonSet a {
  background-color: var(--fox-mint-600, #48a999) !important;
  color: #fff !important;
}

/* 9. HEADER (theme-fox) — light mint background, dark teal nav */
body.theme-fox header,
body.theme-fox .elementor-location-header {
  background-color: var(--fox-mint-50, #f3faf7) !important;
}
body.theme-fox header a,
body.theme-fox header .mainMenu a,
body.theme-fox .elementor-location-header a {
  color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox header .mainMenu a:hover,
body.theme-fox header .current-menu-item > a {
  color: var(--fox-mint-600, #48a999) !important;
}
/* Header "Időpontfoglalás" CTA button styling */
body.theme-fox header .floating-ido,
body.theme-fox header [href*="idopontfoglalas"] {
  background-color: var(--fox-mint-600, #48a999) !important;
  color: #fff !important;
}

/* PAGE HERO kép-crop fix (Domi 2026-06-03): a szolgáltatás-oldali hero
 * (.mainImagePage) egy ~3.3:1 széles sávban cover-rel vág egy 1.5:1 képet →
 * object-position:center mellett a kép felső+alsó része levágódik, és a
 * fej (ami gyakran a kép felső harmadában van) eltűnik PC-n. Fix:
 * object-position felülre húzva, hogy a fejek beférjenek. theme-fox-független
 * szelektor (a class le van tiltva a fogászaton). */
.elementor-widget-foxxi-page-hero .mainImagePage img,
.elementor-widget-foxxi-page-hero .mainImage img {
  object-fit: cover;
  object-position: center 28% !important;
}
/* Per-oldal hero-crop finomhangolás (2026-06-03): némelyik képen a fejek
 * magasabban vannak, a globális 28% levágta a fejtetőt. Szájhigiénia (2229):
 * a két nő arca feljebb van → 18%. (Gyermek 2233 hero-képét kicseréltük egy
 * fekvő fotóra, ott a 28% jó.) */
body.page-id-2229 .elementor-widget-foxxi-page-hero .mainImagePage img,
body.page-id-2229 .elementor-widget-foxxi-page-hero .mainImage img {
  object-position: center 18% !important;
}

/* 2026-06-08 — Domi feedback (#5): a fogászati szolgáltatás-aloldalakon a GYIK
 * (.accordionSection) felett feleslegesen nagy fehér térköz volt: a tartalmi
 * .repeater.white padding-bottom 70px + az .accordionSection padding-top 70px
 * = ~140px üres. A két érintett paddinget csökkentjük (csak a 2226 gyerek-
 * oldalain), így ~40px marad — szellős, de nem feleslegesen nagy. */
body.parent-pageid-2226 .repeater.white { padding-bottom: 20px; }
body.parent-pageid-2226 .accordionSection { padding-top: 20px; }

/* 2026-06-08 — Domi feedback (#11): a fogszab szolgáltatás-aloldalakon
 * (single-szolgaltatasaink) a tartalmi blokkok (.repeater.white) közötti
 * 70+70=140px térköz feleslegesen nagy. 30px-re csökkentjük → ~60px a blokkok
 * között (szellős, de nem túlzó). A GYIK (.accordionSection) felső térköze is. */
body.single-szolgaltatasaink .repeater.white { padding-top: 30px; padding-bottom: 30px; }
body.single-szolgaltatasaink .accordionSection { padding-top: 30px; }

/* 10. PAGE HERO CAPTION (.mainImage .caption) — narancs trapéz SVG-jét
 *     hue-rotate-tel zöldre váltjuk theme-fox alatt. */
body.theme-fox .mainImage .caption {
  filter: hue-rotate(120deg) saturate(0.85);
}
body.theme-fox .mainImage .caption h1 {
  color: var(--fox-mint-800, #1f6e62) !important;
  filter: hue-rotate(-120deg) saturate(1.18);
}

/* 11. BLOCKQUOTE.TOP (the post-hero pentagon) — also hue-rotate
 *     because it shares the orange SVG. theme-ortho keeps original. */
body.theme-fox .blockquote.top.feher,
body.theme-fox .blockquote.top:not(.brown):not(.pink) {
  background: var(--fox-mint-100, #dff1ea) !important;
}
body.theme-fox .blockquote.top blockquote {
  filter: hue-rotate(120deg) saturate(0.85);
}
body.theme-fox .blockquote.top blockquote div {
  filter: hue-rotate(-120deg) saturate(1.18);
  color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox .blockquote.top blockquote div * {
  color: var(--fox-mint-800, #1f6e62) !important;
}

/* Contact — white → cream */
body.theme-fox .contactWrapper,
body.theme-fox div[class*="contact"]:not(.foxxi-cross-link) {
  background-color: var(--fox-mint-100, #dff1ea) !important;
}

/* PRE-FOOTER (#idopontmutet .preFooter) — narancs → mint-800 (sötét eucalyptus).
 * Stílus: a fő preFooter háttér mint-800, kontaktbox + nyitvatartás mint-700-as
 * sötétebb panelekkel. Szöveg fehér, gombok világosabb mint-300/600 hogy kontrasztot
 * tartsanak a sötét háttéren. */
body.theme-fox .preFooter,
body.theme-fox #idopontmutet {
  background-color: var(--fox-mint-800, #1f6e62) !important;
}
body.theme-fox .preFooter h3,
body.theme-fox .preFooter h4,
body.theme-fox .preFooter p,
body.theme-fox .preFooter strong,
body.theme-fox .preFooter span,
body.theme-fox .preFooter a:not(.button):not(.bejelentkezes) {
  color: #fff !important;
}
body.theme-fox .preFooter .openingHours,
body.theme-fox .preFooter .contactBox {
  background-color: var(--fox-mint-700, #2c8472) !important;
}
body.theme-fox .preFooter .openingHours h4,
body.theme-fox .preFooter .contactBox h4 {
  color: #fff !important;
}

/* Form input/textarea — fehér háttér, mint-300 keret, sötét mint szöveg */
body.theme-fox .preFooter input[type="text"],
body.theme-fox .preFooter input[type="email"],
body.theme-fox .preFooter input[type="tel"],
body.theme-fox .preFooter textarea {
  background: #fff !important;
  border: 1px solid var(--fox-mint-300, #a4d3c5) !important;
  color: var(--fox-mint-900, #154e46) !important;
}
body.theme-fox .preFooter input::placeholder,
body.theme-fox .preFooter textarea::placeholder {
  color: var(--fox-mint-600, #48a999) !important;
}

/* Form labels (Email / Üzenet) fehéren látszanak a sötét hátéren */
body.theme-fox .preFooter label,
body.theme-fox .preFooter .gfield_label,
body.theme-fox .preFooter .gform_wrapper label {
  color: #fff !important;
}

/* Adatvédelmi nyilatkozat link a checkbox-szöveg mellett — világos mint */
body.theme-fox .preFooter a {
  color: var(--fox-mint-200, #c4e6dc) !important;
}
body.theme-fox .preFooter a:hover {
  color: #fff !important;
}

/* Gravity Forms submit gomb (ELKÜLDÖM) — világos mint-300 + sötét szöveg
 * (kontraszt a sötét mint-800 hátérrel szemben). */
body.theme-fox .preFooter .gform_footer input[type="submit"],
body.theme-fox .preFooter .gform_wrapper form .gform_footer button,
body.theme-fox .preFooter button[type="submit"] {
  background-color: var(--fox-mint-300, #a4d3c5) !important;
  color: var(--fox-mint-900, #154e46) !important;
}
body.theme-fox .preFooter .gform_footer input[type="submit"]:hover,
body.theme-fox .preFooter .gform_wrapper form .gform_footer button:hover {
  background-color: var(--fox-mint-200, #c4e6dc) !important;
}

/* Floating CTA right (Telefonos bejelentkezés) — világos mint-300, sötét szöveg
 * (kontrasztos kiemelés). */
body.theme-fox a.bejelentkezes,
body.theme-fox .bejelentkezes {
  background: var(--fox-mint-300, #a4d3c5) !important;
  background-color: var(--fox-mint-300, #a4d3c5) !important;
  color: var(--fox-mint-900, #154e46) !important;
}
body.theme-fox a.bejelentkezes *,
body.theme-fox .bejelentkezes * {
  color: var(--fox-mint-900, #154e46) !important;
}

/* Slider hero — fogszab images have left empty/cream space for caption overlay.
 * Fogászat slide images fill the frame, so we paint a solid BROWN panel over
 * the left 33% (col-xl-4 area) and confine the image to the right 66%. */
body.theme-fox .slider .mainImage { position: relative; }

/* Hero kép: a .imageBox natúr arányban renderelt és ~220px-rel kilógott a
 * viewport jobb szélén (a jobb szélső csapattag a képernyőn kívülre esett és
 * az overflow:hidden levágta). FONTOS: a `body.theme-fox` class a fogászaton
 * SZÁNDÉKOSAN LE VAN TILTVA (fox-functions.php:132), ezért theme-fox-független
 * szelektorral kell célozni — a foxxi-slider widget-konténer csak a fogászati
 * hero-n van. Fix: a .imageBox-ot a jobb 66.67%-os sávhoz kötjük, a kép
 * cover-rel tölti ki, balra húzott fókusszal hogy mindenki beférjen. */
@media (min-width: 1200px) {
  .elementor-widget-foxxi-slider .slider .mainImage .imageBox {
    position: absolute !important;
    inset: 0 0 0 33.3333% !important;   /* jobb 66.67%, a panel mellé pontosan */
    width: auto !important;
    height: 100% !important;
    overflow: hidden !important;
  }
  .elementor-widget-foxxi-slider .slider .mainImage .imageBox img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: 35% center !important;  /* balra húzott fókusz → jobb szél is befér */
  }
}

@media (min-width: 1200px) {
  body.theme-fox .slider .mainImage::before {
    content: '';
    position: absolute;
    inset: 0 66.6667% 0 0;       /* covers left 33.33% */
    background: var(--fox-mint-800, #1f6e62);
    z-index: 2;                   /* above imageBox (z:1), below container-fluid (z:2 default — bumped below) */
    pointer-events: none;
  }
  body.theme-fox .slider .mainImage > .container-fluid {
    z-index: 3 !important;
  }
}

body.theme-fox .slider .caption.hero-caption {
  background: transparent !important;  /* panel comes from ::before; caption is just text inside */
  color: #fff !important;
  padding: 40px 32px;
}
body.theme-fox .slider .caption h1 {
  color: #fff !important;
}
body.theme-fox .slider .caption p,
body.theme-fox .slider .caption .intro,
body.theme-fox .slider .caption .intro * {
  color: rgba(255, 255, 255, 0.92) !important;
}
body.theme-fox .slider .caption .buttonSet a,
body.theme-fox .slider ul li a {
  background: var(--fox-mint-600, #48a999) !important;
  color: #fff !important;
}
body.theme-fox .slider .swiper-pagination-bullet {
  background: rgba(255, 255, 255, 0.5) !important;
}
body.theme-fox .slider .swiper-pagination-bullet-active {
  background: var(--fox-mint-600, #48a999) !important;
}

/* Mobile (< 1200px): no panel — caption stacks below image as solid brown block */
@media (max-width: 1199px) {
  body.theme-fox .slider .caption.hero-caption {
    background: var(--fox-mint-800, #1f6e62) !important;
  }
}

/* Cross-link banner — eucalyptus on fogászat */
body.theme-fox .foxxi-cross-link {
  background: var(--fox-mint-50, #f3faf7);
}

/* Hide duplicate page hero on the home page (slider takes over) */
body.theme-fox.home .mainImagePage,
body.theme-fox.page-id-2224 .mainImagePage {
  display: none !important;
}

/* Cross-link banner (fox_render_cross_link output) */
.foxxi-cross-link {
  background: var(--foxxi-eucalyptus);
  color: #fff;
  text-align: center;
  padding: 32px 24px;
  font-family: var(--sans);
}
/* On fogászat (theme-fox) the cross-link banner is mint/teal */
body.theme-fox .foxxi-cross-link {
  background: var(--fox-mint-700, #2c8378);
}
body.theme-fox .foxxi-cross-link a {
  background: var(--fox-mint-500, #5fbfa3);
}
.foxxi-cross-link strong {
  font-weight: 600;
  color: #fff;
}
.foxxi-cross-link a {
  display: inline-block;
  margin-left: 14px;
  padding: 10px 22px;
  background: var(--foxxi-orange);
  color: #fff;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 12px;
  transition: background .25s ease, transform .25s ease;
}
.foxxi-cross-link a:hover {
  background: #fff;
  color: var(--foxxi-orange);
  transform: translateY(-2px);
}
@media (max-width: 700px) {
  .foxxi-cross-link a {
    display: block;
    margin: 14px auto 0;
    max-width: fit-content;
  }
}

/* ════════════════════════════════════════════════════════════════
 * STEPS widget without icons — clean uniform grid (no zigzag).
 * Renders a 3-per-row card layout when no step has an icon image.
 * Used by /fogaszat/koronak-implantatumok/ + /fogaszat/gyermekfogaszat/
 * (and any future foxxi-steps without per-step icon assignments).
 * ════════════════════════════════════════════════════════════════ */
.steps.no-icons .stepRow.no-icons {
  display: flex;
  flex-wrap: wrap;
  gap: 28px 24px;
  justify-content: flex-start;
  align-items: stretch;
}
.steps.no-icons .stepRow.no-icons .stepItem {
  /* 3 per row on desktop, 2 on tablet, 1 on mobile. Subtract gap = 24px / 3 cols ≈ 16px each. */
  width: calc((100% - 48px) / 3);
  min-width: 240px;
  margin: 0;
  flex-direction: column;
  align-items: stretch;
}
.steps.no-icons .stepRow.no-icons .stepItem .title {
  order: 1;
  font-size: 22px;
  margin-bottom: 12px;
  padding: 0 4px;
}
.steps.no-icons .stepRow.no-icons .stepItem .content {
  order: 2;
  padding: 24px 22px;
  min-height: 130px;
  width: 100%;
  background: #fdf0e9;
}
@media (max-width: 992px) {
  .steps.no-icons .stepRow.no-icons .stepItem {
    width: calc((100% - 24px) / 2);
  }
}
@media (max-width: 600px) {
  .steps.no-icons .stepRow.no-icons .stepItem {
    width: 100%;
  }
}

/* ════════════════════════════════════════════════════════════════
 * Footer .subMenu privacy menu — restore the original foxxi.hu
 * inline horizontal layout (was stacking vertically on the staging
 * clone because theme CSS doesn't ship the .privacyMenu ul rules).
 * ════════════════════════════════════════════════════════════════ */
.footer .subMenu .privacyMenu ul,
.footer .subMenu .privacyMenu .menu-privacy-menu-container ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0 28px;
  text-align: left;
}
.footer .subMenu .privacyMenu ul li {
  display: inline-flex;
  position: relative;
  margin: 0;
  padding: 0;
}
.footer .subMenu .privacyMenu ul li + li::before {
  content: "|";
  position: absolute;
  left: -16px;
  top: 0;
  color: rgba(255, 255, 255, 0.35);
  pointer-events: none;
}
.footer .subMenu .privacyMenu ul li a {
  color: #fff;
  text-decoration: none;
}
.footer .subMenu .privacyMenu ul li a:hover {
  text-decoration: underline;
}

/* Bottom row alignment: privacy left, copyright right (desktop) */
.footer .subMenu .row > .col-12.col-md-6:first-child { text-align: left; }
.footer .subMenu .row > .col-12.col-md-6:last-child  { text-align: right; }

@media (max-width: 767px) {
  .footer .subMenu .privacyMenu ul {
    justify-content: center;
  }
  .footer .subMenu .row > .col-12.col-md-6:first-child,
  .footer .subMenu .row > .col-12.col-md-6:last-child {
    text-align: center;
  }
}

/* ════════════════════════════════════════════════════════════════
 * 3. Gutenberg V3 (post_content) bridge styles.
 *    Fixes core/group/columns/buttons output so it matches the
 *    theme's existing .aboutWrapper / .featureRow / .repeater /
 *    .contactPage layouts. Only loads on V3 page; targets the
 *    .fogszab-gutenberg-main wrapper from the page template.
 * ════════════════════════════════════════════════════════════════ */

.fogszab-gutenberg-main { width: 100%; }
.fogszab-gutenberg-main > * { margin-block: 0; }

/* Reset: Gutenberg core blocks add padding/max-width by default —
 * remove that since our wrappers (.aboutWrapper, .featureRow, etc.)
 * already handle the layout in the theme CSS. */
.fogszab-gutenberg-main .wp-block-group.aboutWrapper,
.fogszab-gutenberg-main .wp-block-group.featureRow,
.fogszab-gutenberg-main .wp-block-group.repeater,
.fogszab-gutenberg-main .wp-block-group.contactPage {
  max-width: none;
  padding: 0;
}

/* About: column gap + alignment matches the original aboutRow/aboutLeft/aboutRight CSS */
.fogszab-gutenberg-main .aboutWrapper.landing .wp-block-columns.aboutRow {
  gap: 40px;
  align-items: center;
}
.fogszab-gutenberg-main .aboutWrapper.landing .aboutLeft {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
}
.fogszab-gutenberg-main .aboutWrapper .teamItem {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 8px;
  max-width: 280px;
}
.fogszab-gutenberg-main .aboutWrapper .teamItem .imageBox img {
  border-radius: 50%;
  width: 200px;
  height: 200px;
  object-fit: cover;
}
.fogszab-gutenberg-main .aboutWrapper .teamItem strong { font-size: 18px; }
.fogszab-gutenberg-main .aboutWrapper .teamItem .title { color: var(--foxxi-eucalyptus); font-size: 14px; }

/* "Modern fogászat" blokk (foxxi-about Elementor widget) — 1 széles csapatkép
 * a bal oszlopban. Alapból a teamItem portré-kártya (kicsi, balra fent lógott),
 * de itt 1 név-nélküli széles kép van → töltse ki a bal oszlopot rendesen.
 * theme-fox-FÜGGETLEN szelektor (a class le van tiltva a fogászaton).
 *
 * ⚠️ FONTOS (2026-06-03): a 16/10 széles-crop CSAK az EGYETLEN-képes blokkra
 * érvényes (`:only-child`). A fogszab home "A mosolyod specialistái" szekció
 * UGYANEZT a foxxi-about widget-et használja, de ott 2 ÁLLÓ orvos-PORTRÉ van —
 * azokra a 16/10 fekvő-crop levágta a fejet és a nevet rácsúsztatta. Ezért a
 * széles-szabályt `:only-child`-re szűkítjük, a 2-portré ágat lentebb külön
 * kezeljük (álló-arány, fej fent). */
.elementor-widget-foxxi-about .aboutLeft {
  width: 100%;
  display: flex !important;
}
.elementor-widget-foxxi-about .aboutLeft .teamItem:only-child {
  max-width: 100% !important;
  width: 100% !important;
  flex: 1 1 100% !important;   /* flex-row konténerben kitölti a teljes oszlopot */
}
.elementor-widget-foxxi-about .aboutLeft .teamItem:only-child .imageBox {
  width: 100%;
}
.elementor-widget-foxxi-about .aboutLeft .teamItem:only-child .imageBox img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  border-radius: 8px;       /* nem kerek — széles kép lekerekített sarokkal */
}

/* Fogszab home "A mosolyod specialistái" — 2 ÁLLÓ orvos-portré (Dominika + Pulay).
 * Ugyanaz a foxxi-about widget, de NEM :only-child → álló-arány, fej fent marad.
 * A natív kép 425×812 álló; 3/4 box + object-position center 18% a fejre fókuszál,
 * így nem vágódik le sem a fejtető, sem rácsúszik a név. */
.elementor-widget-foxxi-about .aboutLeft .teamItem:not(:only-child) {
  flex: 1 1 0 !important;
  max-width: 320px;
  display: flex !important;       /* oszlop: kép → név → szerep, tiszta sorrend */
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.elementor-widget-foxxi-about .aboutLeft .teamItem:not(:only-child) .imageBox {
  width: 100%;
  margin-bottom: 0 !important;
}
.elementor-widget-foxxi-about .aboutLeft .teamItem:not(:only-child) .imageBox img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 425 / 812;      /* a csillag-webp natúr aránya → teljes csillag (a róka-fül) látszik, nem vágódik le (Domi 2026-06-08) */
  object-fit: contain;
  object-position: center top;
  border-radius: 10px;
  display: block;
}
/* a név + szerep ne csússzon a képre (eredeti -20px margin felülírása) */
.elementor-widget-foxxi-about .aboutLeft .teamItem:not(:only-child) strong {
  display: block;
  margin-top: 14px !important;
  line-height: 1.25;
}
.elementor-widget-foxxi-about .aboutLeft .teamItem:not(:only-child) .title {
  display: block;
  margin-top: 4px;
}

/* ── Responsive fix (2026-06-03): services-lista horizontális túlcsordulás ──
 * A fogszab home (és minden services-lista) `.section-services-content` egy
 * flex-row: [ikon-IMG] + [.section-services-title-container hosszú szöveggel].
 * A title-container `flex:0 1 auto` + `min-width:auto` miatt NEM zsugorodik a
 * hosszú címeknél ("Hasadékos Páciensek Ellátása") → 768px tabletnél 24px-rel
 * kilógott a viewportból (vízszintes scroll). Fix: zsugorodjon (`min-width:0`,
 * flex-grow), így befér a flex-szülőbe. Általános (theme-fox-független) szelektor. */
.section-services-content {
  min-width: 0;
}
.section-services-content .section-services-title-container {
  min-width: 0;
  flex: 1 1 auto;
  max-width: 100%;
}
/* végső biztosíték: a services-szekció ne tudjon page-szintű X-scrollt okozni */
.section-service {
  overflow-x: clip;
}

/* Feature: image left, text right — match original .featureRow grid */
.fogszab-gutenberg-main .featureRow.brown {
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: #42291c;
  color: #fff;
  min-height: 480px;
}
.fogszab-gutenberg-main .featureRow.brown .imageBox {
  margin: 0;
  height: 100%;
}
.fogszab-gutenberg-main .featureRow.brown .imageBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ── Fix (2026-06-03): foxxi-repeater (kép-szöveg sorok) álló-képek fej-levágása ──
 * A "Miért a Foxxi" feature-sorok képei 657×401 fekvő dobozban `object-fit:cover`
 * + `object-position:50% 50%`. A VEGYES forrás-arányoknál (fekvő 1920×1280 ÉS álló
 * 900×1350 csapatképek) az álló képeknél a középre-vágás levágta az ARCOKAT, csak a
 * derék-láb látszott. Fix: `object-position:center 28%` — a fejek/arcok felé tolja a
 * crop-ot. Fekvő képeknél a felső-harmadi súly szintén jó kompozíció. */
.elementor-widget-foxxi-repeater .repeaterRow .imageBox img {
  object-position: center 28%;
}
.fogszab-gutenberg-main .featureRow.brown .container-fluid {
  display: flex;
  align-items: center;
  padding: 80px 60px;
}
.fogszab-gutenberg-main .featureRow.brown h2 { color: #fff; font-size: 36px; margin-bottom: 24px; }

/* Repeater (CTA only) */
.fogszab-gutenberg-main .repeater.white {
  background: #fff;
  padding: 80px 0;
}
.fogszab-gutenberg-main .repeater .wp-block-buttons {
  justify-content: center;
}
.fogszab-gutenberg-main .repeater .wp-block-button.mainBtn .wp-block-button__link,
.fogszab-gutenberg-main .aboutWrapper .wp-block-button.mainBtn .wp-block-button__link {
  background: var(--foxxi-orange);
  color: #fff;
  padding: 14px 32px;
  border-radius: 4px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

/* Contact */
.fogszab-gutenberg-main .contactPage {
  background: #fff;
  padding: 80px 0;
}
.fogszab-gutenberg-main .contactPage .wp-block-columns {
  align-items: center;
  gap: 40px;
}
.fogszab-gutenberg-main .contactPage .imgLeftContainer .imageBoxLeft img {
  width: 100%;
  height: auto;
  display: block;
}
.fogszab-gutenberg-main .contactPage .contactContent h2 { font-size: 36px; margin-bottom: 16px; }
.fogszab-gutenberg-main .contactPage .utvonalList {
  list-style: none;
  padding: 0;
  display: flex;
  gap: 16px;
  margin-top: 24px;
}
.fogszab-gutenberg-main .contactPage .utvonalList a {
  display: inline-block;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--foxxi-orange);
}

@media (max-width: 768px) {
  .fogszab-gutenberg-main .featureRow.brown { grid-template-columns: 1fr; }
  .fogszab-gutenberg-main .featureRow.brown .container-fluid { padding: 40px 24px; }
  .fogszab-gutenberg-main .aboutWrapper.landing .wp-block-columns.aboutRow { gap: 24px; }
}

/* ════════════════════════════════════════════════════════════════
 * 4. Elementor V5 widget bridge.
 *    The custom foxxi-* widgets wrap the V2 partials inside
 *    .elementor-widget > .elementor-widget-container. That wrapper
 *    introduces a position-context which breaks foxy's absolute
 *    positioning for .featureRow .imageBox and .slider .imageBox.
 *    Fix: neutralize the wrapper for our widgets.
 * ════════════════════════════════════════════════════════════════ */
.elementor-widget-foxxi-slider > .elementor-widget-container,
.elementor-widget-foxxi-about > .elementor-widget-container,
.elementor-widget-foxxi-services > .elementor-widget-container,
.elementor-widget-foxxi-testimonials > .elementor-widget-container,
.elementor-widget-foxxi-feature > .elementor-widget-container,
.elementor-widget-foxxi-repeater > .elementor-widget-container,
.elementor-widget-foxxi-contact > .elementor-widget-container,
.elementor-widget-foxxi-cta > .elementor-widget-container,
.elementor-widget-foxxi-normal-content > .elementor-widget-container,
.elementor-widget-foxxi-blockquote > .elementor-widget-container,
.elementor-widget-foxxi-list-services > .elementor-widget-container,
.elementor-widget-foxxi-team > .elementor-widget-container,
.elementor-widget-foxxi-gallery-carousel > .elementor-widget-container,
.elementor-widget-foxxi-four-reasons > .elementor-widget-container,
.elementor-widget-foxxi-accordions > .elementor-widget-container,
.elementor-widget-foxxi-steps > .elementor-widget-container,
.elementor-widget-foxxi-before-after-gallery > .elementor-widget-container,
.elementor-widget-foxxi-video-carousel > .elementor-widget-container,
.elementor-widget-foxxi-header > .elementor-widget-container,
.elementor-widget-foxxi-footer > .elementor-widget-container,
.elementor-widget-foxxi-page-hero > .elementor-widget-container {
  padding: 0;
  margin: 0;
}
/* When a page-hero widget is the first section, no extra padding-top
 * needed — the hero image already provides the visual top buffer. */
body.theme-fox .elementor-section:has(.elementor-widget-foxxi-page-hero):first-of-type,
body.theme-ortho .elementor-section:has(.elementor-widget-foxxi-page-hero):first-of-type {
  padding-top: 0 !important;
}
/* Make the section fill horizontally so absolute children inside
 * .featureRow / .slider can position relative to it. */
[class*="elementor-widget-foxxi-"] {
  width: 100%;
}
[class*="elementor-widget-foxxi-"] .featureRow,
[class*="elementor-widget-foxxi-"] .slider .mainImage,
[class*="elementor-widget-foxxi-"] .contactPage {
  position: relative;
}

/* Force every Elementor section/column/wrap that holds a foxxi widget to
 * be true full-width: the V2 partials emit their own .container-fluid /
 * full-bleed background blocks, so Elementor's default 1140px boxed
 * container would clip the .row negative margins (services cards getting
 * cut off on the right) and chop off the brown background. */
.elementor-section:has([class*="elementor-widget-foxxi-"]),
.elementor-element.elementor-section:has([class*="elementor-widget-foxxi-"]) {
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}
.elementor-section:has([class*="elementor-widget-foxxi-"]) > .elementor-container {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.elementor-section:has([class*="elementor-widget-foxxi-"]) .elementor-column,
.elementor-section:has([class*="elementor-widget-foxxi-"]) .elementor-widget-wrap {
  padding: 0 !important;
  margin: 0 !important;
}
/* Also kill the negative-margin gutter behaviour Elementor adds between
 * columns — a single-column foxxi section doesn't need it. */
.elementor-section:has([class*="elementor-widget-foxxi-"]) .elementor-column-gap-default
  > .elementor-column > .elementor-element-populated {
  padding: 0 !important;
}

/* ─────────────────────────────────────────────────────────────────────────
 * Cross-section menu button — kiemelt navigációs gomb a két szekció között
 * (fogszab ↔ fogászat). A `cross-link` class WP menü-itemen jelzi,
 * `--ortho` / `--fox` modifier a célszekciót.
 * ───────────────────────────────────────────────────────────────────────── */
/* A mainMenu ul flex parent vertikális centerizálása — a magasabb pill-button
 * miatt a többi inline link baseline-on maradna; align-items:center mindegyiket
 * függőleges középre helyezi. */
header .menuRow .mainMenu ul,
.mobileMenu .mainMenu ul {
  align-items: center;
}

.menu .menu-item.cross-link {
  margin-left: 0.75rem;
  align-self: center;
}

.menu .menu-item.cross-link > a {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.4rem 1.1rem !important;
  background: #d75c20;
  color: #fff !important;
  border-radius: 999px;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.2;
  transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  white-space: nowrap;
}

.menu .menu-item.cross-link > a:hover,
.menu .menu-item.cross-link > a:focus {
  background: #9b413a;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(215, 92, 32, 0.35);
}

/* Fogszab → fogászat irány: kicsit halványabb kerete, ne legyen ugyanaz mint a fogászat hero */
.menu .menu-item.cross-link--fox > a {
  background: #42291c;
}
.menu .menu-item.cross-link--fox > a:hover,
.menu .menu-item.cross-link--fox > a:focus {
  background: #d75c20;
  box-shadow: 0 4px 12px rgba(66, 41, 28, 0.35);
}

/* Sub-fixed (mobil hamburger) menüben kompaktabb */
.sub-fixed .menu-item.cross-link > a {
  padding: 0.35rem 0.85rem !important;
  font-size: 0.92em;
}

/* Mobil menü (hamburger) — visszafogott, ne ütközzön a többi menüponttal.
 * 2026-06-03 FIX: a sima menüpontok block-link-jei text-align:center-rel középen
 * voltak, de a Fogászat pill (inline-flex <a>) NEM reagált a text-align-ra → a
 * <li> bal szélére ragadt, az EN pedig magában lógott. Most a teljes .mobileMenu
 * menü középre rendezett, egységes függőleges térközzel; a pill margin:auto-val
 * vízszintesen középen. .menuRow (desktop) érintetlen. */
@media (max-width: 991px) {
  .mobileMenu ul.menu {
    display: flex;
    flex-direction: column;
    align-items: center;     /* minden item — pill is — vízszintes közép */
    gap: 0.35rem;
    text-align: center;
  }
  .mobileMenu ul.menu > li.menu-item {
    width: 100%;
    text-align: center;
  }
  .mobileMenu ul.menu > li.menu-item > a {
    text-align: center;
  }
  /* Fogászat pill — középre, ne tapadjon a bal szélhez */
  .mobileMenu .menu-item.cross-link {
    margin: 0.4rem 0 0;
    text-align: center;
  }
  .mobileMenu .menu-item.cross-link > a {
    display: inline-flex !important;
    margin: 0.25rem auto;    /* auto bal/jobb → vízszintes közép */
  }
}


/* ─────────────────────────────────────────────────────────────────────────
 * fox-gallery — saját, robosztus carousel (a foxxi-gallery_carousel widget
 * Swiper-alternatívája). CSS scroll-snap + sticky prev/next gombok.
 * Minden viewporton működik, nem függ Swiper-től.
 * ───────────────────────────────────────────────────────────────────────── */
.galleryCarousel .fox-gallery {
  position: relative;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 60px;
}
.galleryCarousel .fox-gallery__track {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  padding: 0;
}
.galleryCarousel .fox-gallery__track::-webkit-scrollbar { display: none; }
.galleryCarousel .fox-gallery__slide {
  flex: 0 0 100%;
  scroll-snap-align: center;
  border-radius: 0;
  overflow: hidden;
  background: #f4ede5;
  display: block;
  text-decoration: none;
}
.galleryCarousel .fox-gallery__slide img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 3/2;
  object-fit: cover;
}
.galleryCarousel .fox-gallery__nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  background: #d75c20;
  color: #fff;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  box-shadow: 0 4px 14px rgba(66, 41, 28, 0.25);
  transition: background 0.2s ease, transform 0.2s ease;
}
.galleryCarousel .fox-gallery__nav:hover { background: #9b413a; transform: translateY(-50%) scale(1.06); }
.galleryCarousel .fox-gallery__nav--prev { left: 6px; }
.galleryCarousel .fox-gallery__nav--next { right: 6px; }

@media (min-width: 768px) {
  .galleryCarousel .fox-gallery__slide { flex: 0 0 calc(50% - 8px); }
}
@media (min-width: 1200px) {
  .galleryCarousel .fox-gallery__slide { flex: 0 0 calc(33.333% - 11px); }
}

/* ──────────────────────────────────────────────────────────────────
 * 2026-05-08 — New brand-logo sizing
 * The new foxxi_horizontal / foxxi_kombi / foxxi_dual SVGs have
 * aspect ratios different from the original logo.svg (295×36 → 8.2:1).
 * Constrain by max-height instead of forcing 100% width, otherwise the
 * kombi (2.7:1) renders ~110px tall and breaks the header.
 * ────────────────────────────────────────────────────────────────── */
header .logo {
  width: auto !important;
  max-width: 23%;
  display: flex;
  align-items: center;
}
header .logo img {
  width: auto !important;
  height: auto;
  max-height: 48px;
  max-width: 100%;
  display: block;
}
@media screen and (max-width: 1024px) {
  header .logo { max-width: 35%; }
  header .logo img { max-height: 44px; }
}
@media screen and (max-width: 768px) {
  header .logo { max-width: 50%; }
  header .logo img { max-height: 40px; }
}
@media screen and (max-width: 575px) {
  header .logo { max-width: 70%; }
  header .logo img { max-height: 36px; }
}

/* 2026-05-10 — EN logo aspect-ratio kompenzáció (re-applied Phase 13 fix).
 * A `logo-en-header.png` (1891×247, 7.65:1) sokkal szélesebb mint a HU
 * `logo-fogszab.svg` (217×80, 2.71:1). Ugyanazon `max-height` érvényesülése
 * mellett az EN PNG arányosan kisebbnek tűnik a fejlécben — ezért lang-aware
 * max-height csökkentést alkalmazunk az EN-re (≈0.708 ratio).
 * Domi feedback 2026-05-10: az angol fogszabin "kicsit el van csúszva". */
html[lang^="en"] header .logo img {
  max-height: 34px;
}
@media screen and (max-width: 1024px) {
  html[lang^="en"] header .logo img { max-height: 31px; }
}
@media screen and (max-width: 768px) {
  html[lang^="en"] header .logo img { max-height: 28px; }
}
@media screen and (max-width: 575px) {
  html[lang^="en"] header .logo img { max-height: 26px; }
}

/* 2026-05-10 — Domi feedback iter 2: a Választó-logó eredeti SZÍNES Foxxi-róka
 * (`logo-choice.svg` = `logo-foxxi-hu.svg` 4397b) — direkt natív szín-megjelenés
 * KELL, NEM brightness/invert-tel fehérre festve. A 63. sor `brightness(0)
 * invert(1)` filtere felülírva csak drop-shadow-val (kontrasztot ad a sötét
 * overlay-nek). */
.foxxi-choice__logo {
  filter: drop-shadow(0 6px 24px rgba(0, 0, 0, .55)) !important;
}

/* ──────────────────────────────────────────────────────────────────
 * 2026-05-08 — Force white on Választó (homepage) tagline texts.
 * The dist/index.css cascade was overriding the .foxxi-choice__*
 * colour rules on some browsers — using !important + nested selector
 * to guarantee white on the dark overlay.
 * ────────────────────────────────────────────────────────────────── */
.foxxi-choice .foxxi-choice__card-title,
.foxxi-choice .foxxi-choice__card-tagline,
.foxxi-choice .foxxi-choice__card-cta {
  color: #ffffff !important;
}

/* ──────────────────────────────────────────────────────────────────
 * 2026-05-08 — Választó logo centring tweaks
 *  - Hide the empty <p> brand-sub when no subtitle text is set
 *    (it was reserving margin and pushing the logo off-centre)
 *  - Centre the logo on its block axis so any internal SVG asymmetry
 *    doesn't pull it sideways
 * ────────────────────────────────────────────────────────────────── */
.foxxi-choice__brand-sub:empty {
  display: none !important;
  margin: 0 !important;
}
.foxxi-choice__brand {
  align-items: center;
  text-align: center;
}
.foxxi-choice__logo {
  margin: 0 auto !important;
  max-height: 160px;  /* slight bump for the kombi cmyk variant */
}

/* 2026-05-08 — Választó subtitle: Foxxi (Budai) Fogszabályozási és Fogászati Klinika */
.foxxi-choice__brand-sub:not(:empty) {
  display: block !important;
  color: #ffffff !important;
  font-size: clamp(15px, 1.4vw, 21px);
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-top: 14px;
  text-align: center;
  text-shadow: 0 2px 8px rgba(0,0,0,.4);
}


/* 2026-05-08 — Választó CTA hover: NARANCS, nem fehér.
 * Mindkét kártyán (fogszab + fogászat) az egérrámutatás narancs gombot ad
 * fehér szöveggel. Felülírja a korábbi fehér-háttér szabályt. */
.foxxi-choice .foxxi-choice__card:hover .foxxi-choice__card-cta,
.foxxi-choice .foxxi-choice__card--fox:hover .foxxi-choice__card-cta {
  background: var(--foxxi-orange, #d75c20) !important;
  color: #ffffff !important;
  border-color: var(--foxxi-orange, #d75c20) !important;
}

/* 2026-05-10 — Blockquote integrált CTA-gomb.
 * Ha a foxxi-blockquote widget-ben kitöltötték a cta_text + cta_url mezőt,
 * a gomb a blockquote-on BELÜL, a tartalom alatt jelenik meg ugyanazon a
 * háttér-blokkon. (Domi feedback 2026-05-10: ne legyen külön blokk a gomb.) */
.blockquote.has-cta .blockquote-cta {
  text-align: center;
  margin-top: 24px;
  padding: 0 16px 8px;
}
.blockquote.has-cta .blockquote-cta .mainBtn {
  display: inline-block;
}
/* Bordó/barna alapon a fehér text-pop kell, narancs gomb default */
.blockquote.has-cta.barna,
.blockquote.has-cta.brown {
  padding-bottom: 32px;
}

/* 2026-05-10 — Further-services CTA: narancs (mainBtn) helyett a régi
 * btn-primary Bootstrap-kék felülírása. Domi feedback: ne legyen kék. */
.foxxi-further__cta-row {
  text-align: center;
  margin-top: 24px;
  padding: 16px 0 8px;
}
.foxxi-further .foxxi-further__cta {
  display: inline-block;
}

/* 2026-05-10 — Foxxi-feature integrált CTA-gomb (Domi feedback).
 * A bordó/krém alapú feature-blokkba a szöveg ALATT, a `.content > .align`
 * konténeren BELÜL jelenik meg a "Időpontot foglalok" típusú CTA-gomb.
 * Korábban külön blokkban volt alatta — most a feature-en belülre kerül. */
.featureRow.has-cta .featureRow-cta {
  margin-top: 28px;
  text-align: center;
}
.featureRow.has-cta .featureRow-cta .mainBtn {
  display: inline-block;
}
.featureRow.has-cta.brown .featureRow-cta .mainBtn {
  /* Bordó alapon kontraszt-narancs gomb (alaptéma default felülírja, de
   * biztonságból explicit) */
  background-color: var(--foxxi-orange, #d75c20);
  color: #ffffff;
}

/* 2026-06-08 — Domi feedback: a Kapcsolat oldalakon VISSZA kell a "Küldj üzenetet"
 * webform (a preFooter blokk tartalmazza). Ezért a HU kapcsolat-oldalakon (25 fogszab,
 * 2228 fogászat) MÁR NEM rejtjük el — a duplikációt a fő content foxxi-contact
 * widgetjét 'route_only' módra állítva oldjuk meg. EN oldalakon (402, 2246) marad
 * a korábbi állapot. */
body.page-id-402 #idopontmutet.preFooter,
body.page-id-2246 #idopontmutet.preFooter {
  display: none !important;
}

/* 2026-05-17 — Domi feedback: Rólunk mobile-nézetben a csapat-fotók (1024×1024
 * négyzet, 330×330 rendered) aránytalanul nagyok a fox-gallery slider 210×140
 * rendelő-képeihez képest (1.57×). Mobile-on (<768px) közelítjük a méretüket:
 *   - csapat-image max 230px wide + középre (textuális blokk teljes szélességű marad)
 *   - fox-gallery slider container padding 60→16px → slide 100% width ≈325px
 *   - slider scrollIntoView smooth-snap-szel ugyanúgy működik */
@media (max-width: 767px) {
  body.page-id-2225 .col-12.col-md-6.col-lg-4.col-xl-3 > img,
  body.page-id-17 .col-12.col-md-6.col-lg-4.col-xl-3 > img,
  body.page-id-2243 .col-12.col-md-6.col-lg-4.col-xl-3 > img {
    max-width: 230px;
    height: auto;
    margin: 0 auto 14px;
    display: block;
  }
  .galleryCarousel .fox-gallery {
    padding: 0 16px;
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
 * BLOG — lista (archive.php .blogList) + egyedi poszt (single.php .blogSingle)
 * pofásítás (2026-06-03). Cél: tiszta kártya-grid, valódi fotók (narancs tint
 * csak hoveren), olvasható tipográfia, duplikált H1 elrejtés. CSS-only — a PHP
 * markup (.postItem > .imageBox/.title/.excerpt) változatlan.
 * ═══════════════════════════════════════════════════════════════════════════ */

/* ── Blog-lista: a 2 odd/even oszlopot kártya-griddé alakítjuk ── */
.blogArchive {
  padding: 56px 0 72px;
}
.blogArchive .blogList > .row {
  --blog-gap: 32px;
}
.blogArchive .blogList .postItem {
  display: flex;
  flex-direction: column;
  background: #ffffff !important;       /* narancs kártya-bg → tiszta fehér */
  border: 1px solid rgba(66, 41, 28, 0.08);
  border-radius: 16px;
  overflow: hidden;
  margin: 0 0 var(--blog-gap, 32px) !important;
  box-shadow: 0 2px 10px rgba(66, 41, 28, 0.06);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  text-decoration: none;
}
.blogArchive .blogList .postItem:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 34px rgba(66, 41, 28, 0.14);
  border-color: rgba(215, 92, 32, 0.30);
}
/* Featured-image — tiszta fotó, fix arány, narancs CSAK hoveren */
.blogArchive .blogList .postItem .imageBox {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #f3ece7;
}
.blogArchive .blogList .postItem .imageBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;
  display: block;
  transition: transform .5s ease;
}
.blogArchive .blogList .postItem:hover .imageBox img {
  transform: scale(1.05);
}
/* narancs előtűnés hoveren (a tint csak interakcióra) */
.blogArchive .blogList .postItem .imageBox::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(215,92,32,0) 40%, rgba(215,92,32,0.35) 100%);
  opacity: 0;
  transition: opacity .3s ease;
  pointer-events: none;
}
.blogArchive .blogList .postItem:hover .imageBox::after {
  opacity: 1;
}
/* Cím */
.blogArchive .blogList .postItem .title {
  display: block;
  color: #42291c !important;
  font-weight: 700;
  font-size: 1.18rem;
  line-height: 1.3;
  padding: 18px 20px 8px;
}
/* Kivonat — max 3 sor, halványabb */
.blogArchive .blogList .postItem .excerpt {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  color: #6a564a !important;
  font-size: 0.98rem;
  line-height: 1.55;
  padding: 0 20px 8px;
}
/* "Tovább olvasom →" affordancia a kártya aljára */
.blogArchive .blogList .postItem::after {
  content: "Tovább olvasom →";
  display: block;
  margin-top: auto;
  padding: 12px 20px 18px;
  color: #d75c20;
  font-weight: 600;
  font-size: 0.95rem;
  transition: gap .2s ease, color .2s ease;
}
.blogArchive .blogList .postItem:hover::after {
  color: #9b413a;
}

/* ── Egyedi blogposzt (single.php .blogSingle) ── */
/* Duplikált H1 elrejtése: a hero már mutatja a címet, a content első H1 fölösleges */
.blogSingle .col-md-8 > h1:first-child,
.blogSingle .entry-content > h1:first-child {
  display: none;
}
/* Olvasási komfort: a 922px-es törzs túl széles volt (sorhossz) */
.blogSingle {
  padding: 56px 0 24px;
}
.blogSingle .col-md-8 {
  font-size: 1.0625rem;
  line-height: 1.75;
  color: #3d2a1d;
}
.blogSingle .col-md-8 > * {
  max-width: 760px;       /* kényelmes sorhossz ~70 karakter */
}
.blogSingle .col-md-8 p {
  margin: 0 0 1.15em;
}
/* Címek ritmusa — több levegő, narancs akcentus */
.blogSingle .col-md-8 h2 {
  font-size: 1.7rem;
  line-height: 1.25;
  color: #42291c;
  margin: 1.8em 0 0.5em;
  padding-top: 0.4em;
  border-top: 2px solid rgba(215, 92, 32, 0.18);
}
.blogSingle .col-md-8 h3 {
  font-size: 1.3rem;
  color: #6f3a1f;
  margin: 1.4em 0 0.4em;
}
.blogSingle .col-md-8 ul,
.blogSingle .col-md-8 ol {
  margin: 0 0 1.2em;
  padding-left: 1.3em;
}
.blogSingle .col-md-8 li {
  margin-bottom: 0.5em;
}
.blogSingle .col-md-8 strong { color: #42291c; }
.blogSingle .col-md-8 img {
  max-width: 100%;
  height: auto;
  border-radius: 0;
  margin: 0.5em 0 1.2em;
}
/* Sidebar — kapcsolódó cikkek mini-kártyák, tiszta look */
.blogSingle .col-md-4 .postItem {
  display: flex;
  align-items: center;
  gap: 14px;
  background: #fff !important;
  border: 1px solid rgba(66,41,28,0.08);
  border-radius: 12px;
  overflow: hidden;
  margin: 0 0 14px !important;
  padding: 0;
  text-decoration: none;
  transition: box-shadow .2s ease, transform .2s ease;
}
.blogSingle .col-md-4 .postItem:hover {
  box-shadow: 0 8px 20px rgba(66,41,28,0.12);
  transform: translateY(-2px);
}
.blogSingle .col-md-4 .postItem .imageBox {
  flex: 0 0 88px;
  width: 88px;
  height: 88px;
  overflow: hidden;
}
.blogSingle .col-md-4 .postItem .imageBox img {
  width: 100%; height: 100%;
  object-fit: cover; object-position: center 30%;
  display: block;
}
.blogSingle .col-md-4 .postItem .title {
  color: #42291c !important;
  font-weight: 600;
  font-size: 0.98rem;
  line-height: 1.3;
  padding: 8px 12px 8px 0;
}
/* Mobil: blog-lista 1 oszlop, sidebar a tartalom alá kerül (a Bootstrap col-12 már ezt teszi) */
@media (max-width: 767px) {
  .blogArchive { padding: 32px 0 48px; }
  .blogArchive .blogList .postItem .title { font-size: 1.1rem; }
  .blogSingle .col-md-8 > * { max-width: 100%; }
  .blogSingle .col-md-8 h2 { font-size: 1.45rem; }
  .blogSingle .col-md-4 { margin-top: 32px; }
}

/* ═══════════════════════════════════════════════════════════════════════════
 * Domi-feedback 2026-06-04 — szögletes brand + fogászat-főoldal apróságok
 * ═══════════════════════════════════════════════════════════════════════════ */

/* M2 — Domi: minden blokk legyen SZÖGLETES (Foxxi sokszög-brand), ne lekerekített.
 * A téglalap-képeket/kártyákat 0-radiusra vesszük. A kör-elemeket (ikonok,
 * telefon-badge, avatar 50%/999px) NEM érintjük. */
.elementor-widget-foxxi-about .imageBox img,
.elementor-widget-foxxi-about img,
.elementor-widget-foxxi-repeater .imageBox img,
.elementor-widget-foxxi-repeater img,
.elementor-widget-foxxi-feature img,
.section-services-content,
.section-services-content img,
.blogArchive .blogList .postItem,
.blogArchive .blogList .postItem .imageBox,
.blogSingle .col-md-4 .postItem,
.blogSingle .col-md-4 .postItem .imageBox {
  border-radius: 0 !important;
}

/* M3 — fogászat főoldal: a barna cross-link sáv és a narancs "Vedd fel velünk a
 * kapcsolatot" footer-blokk között egy 20px üres spacer-div fehér csíkként
 * látszott. Elrejtjük. */
.elementor-2224 .elementor-element-5d0acc7 {
  display: none !important;
}

/* R1 — Rólunk csapat: a redundáns szekció-címeket (Szakorvosaink / Dentálhigiénikusaink /
 * Páciens-koordinátorunk) elrejtjük — Domi: a beosztás úgyis ott van a kártya alatt. */
.elementor-widget-foxxi-team .team .row h2 { display: none; }

/* R2 — a magányos páciens-koordinátor kártya (Varga Judit) jelentősen nagyobb volt
 * (546px vs 354px), mert egyedül van a sorában. Egységes kép-méret + középre igazítás
 * minden csapat-kártyán. */
.elementor-widget-foxxi-team .team img {
  width: 100% !important;
  max-width: 320px !important;
  height: auto !important;
}
.elementor-widget-foxxi-team .team .row > [class*="col-"] { text-align: center; }

/* E1 — Esztétikai (és minden szolgáltatás-oldal) tartalmi linkjei: Domi jelezte hogy a
 * "fogfehérítés" link "szövegtípusa nem jó" — valóban 18px volt a 22px-es szövegben.
 * A tartalmi linkek örököljék a szöveg méretét + látsszanak linknek (narancs). A menüt
 * (foxxi-header) NEM érinti. */
.elementor-widget-foxxi-repeater p a, .elementor-widget-foxxi-repeater li a,
.elementor-widget-foxxi-feature p a, .elementor-widget-foxxi-feature li a,
.elementor-widget-foxxi-blockquote p a, .elementor-widget-foxxi-blockquote li a,
.elementor-widget-foxxi-normal-content p a, .elementor-widget-foxxi-normal-content li a {
  font-size: inherit !important;
  color: #d75c20 !important;
  font-weight: 600;
}

/* A .mainBtn gombok szövege MINDIG fehér — az E1 tartalmi-link narancs szabály ne
 * tegye láthatatlanná a narancs gombon (FS1 átvezető oldal CTA-ja). */
.elementor-widget-foxxi-blockquote a.mainBtn,
.elementor-widget-foxxi-feature a.mainBtn,
.elementor-widget-foxxi-repeater a.mainBtn,
.elementor-widget-foxxi-normal-content a.mainBtn { color: #fff !important; }

/* ── Jogi/tartalmi oldalak: fix-header overlap fix (2026-06-15) ─────────────
   A süti + adatkezelési oldalak (HU+EN, fogszab+fogászat) csak szöveg-widgetet
   tartalmaznak hero/spacer nélkül, így a fixed header (80px desktop / 50px mobil)
   rálógott a tartalom tetejére. Felső térköz a header alá tolja a tartalmat. */
body.page-id-29, body.page-id-407, body.page-id-412, body.page-id-415,
body.page-id-2950, body.page-id-2951, body.page-id-2993, body.page-id-2994 {
  padding-top: 110px;
}
@media (max-width: 767px) {
  body.page-id-29, body.page-id-407, body.page-id-412, body.page-id-415,
  body.page-id-2950, body.page-id-2951, body.page-id-2993, body.page-id-2994 {
    padding-top: 72px;
  }
}


/* ════════════════════════════════════════════════════════════════
 * CTA leírás-szöveg olvashatóság fix (2026-06-22, Domi #02/#05)
 * A .featureRow.brown leírása "naked" text node a .align-ban → a natív
 * `.align *` fehér-szabály csak elemeket fog, a text node-ot nem; a
 * fehérítő override pedig csak body.theme-fox-on (fogászat) volt.
 * Így a fogszab szolgáltatás-CTA-kban (gyermek, első konzultáció, Invisalign,
 * Műtéti, Felnőtt, Hasadékos) a leírás #41281b sötétbarna volt a barna
 * háttéren = olvashatatlan. A :not(.theme-fox) miatt a fogászat ÉRINTETLEN.
 * ════════════════════════════════════════════════════════════════ */
body:not(.theme-fox) .featureRow.brown .content .align,
body:not(.theme-fox) .featureRow.brown .content .align *,
body:not(.theme-fox) .featureRow.brown .content p { color: #fff !important; }

/* #03 Referenciák (page-id-21) hero — Zozó (Dr. Pulay) feje levágva PC-n.
   A fej a kép felső ~7%-ában van; az általános "center 28%" crop ~14%-tól indul → levágja.
   Top-közeli felülírás, hogy a fej beférjen. Csak ezt az oldalt érinti. 2026-06-22 */
body.page-id-21 .elementor-widget-foxxi-page-hero .mainImagePage img,
body.page-id-21 .elementor-widget-foxxi-page-hero .mainImage img {
  object-position: center 10% !important;
}

/* #06 Hasadékos (postid-40) blockquote-link — "Hasadékon átsegítő egyesület".
   Default theme link-color #41281b (barna) elütött a fehér blockquote-szövegtől a narancs háttéren.
   Fehér + aláhúzott → jól olvasható link a narancs háttéren. 2026-06-22 */
body.postid-40 .blockquote.white a,
body.postid-40 .blockquote.top.white a {
  color: #d75c20 !important;
  text-decoration: none !important;
}

/* #03 EN Referenciák (page-id-364) — Zozó-fej crop, a HU page-id-21 EN-tükre. 2026-06-23 */
body.page-id-364 .elementor-widget-foxxi-page-hero .mainImagePage img,
body.page-id-364 .elementor-widget-foxxi-page-hero .mainImage img {
  object-position: center 10% !important;
}

/* #06 EN Hasadékos cleft (postid-268) — blockquote-link narancs, a HU postid-40 EN-tükre. 2026-06-23 */
body.postid-268 .blockquote.white a,
body.postid-268 .blockquote.top.white a {
  color: #d75c20 !important;
  text-decoration: none !important;
}

/* #07 EN booking (page-id-1971) — "contact us" blockquote-link narancs (a "first consultation" már az).
   A HU #07 EN-megfelelője; blockquote.white narancs háttér → narancs link, mint #06. 2026-06-23 */
body.page-id-1971 .blockquote.white a,
body.page-id-1971 .blockquote.top.white a {
  color: #d75c20 !important;
  text-decoration: none !important;
}

/* #06 font-méret fix (Peti 2026-06-23): a blockquote-link 18px volt, a bekezdés 20px →
   ezért tűnt más betűtípusnak. inherit = a bekezdés mérete. HU postid-40 + EN postid-268. */
body.postid-40 .blockquote.white a, body.postid-40 .blockquote.top.white a,
body.postid-268 .blockquote.white a, body.postid-268 .blockquote.top.white a {
  font-size: inherit !important;
}

/* #07 font-méret fix (Peti 2026-06-23): a "kapcsolatot"/"contact us" blockquote-link 18px volt,
   a bekezdés 20px → inherit. HU page-id-1544 + EN page-id-1971. (A "first consultation" 22px már OK.) */
body.page-id-1544 .blockquote.white a, body.page-id-1544 .blockquote.top.white a,
body.page-id-1971 .blockquote.white a, body.page-id-1971 .blockquote.top.white a {
  font-size: inherit !important;
}
