/* =====================================================================
   Imagine Health Center - fooldal design rendszer (2026)
   Csak a fooldal sajat szekcioihoz + a globalis sticky CTA-hoz.
   Blocksy globalis beallitasai adjak a szineket, tipografiat, gombokat;
   ez a fajl a szekcio-elrendezeseket es a reszponziv viselkedest kezeli.
   ===================================================================== */

:root {
  --ihc-bg:        #FFFFFF;
  --ihc-surface:   #F4F6F7;
  --ihc-tint:      #EAF1F2;
  --ihc-ink:       #0F2A33;
  --ihc-body:      #3B565F;
  --ihc-muted:     #48626B;
  --ihc-accent:    #07808F;
  --ihc-accent-2:  #065E6B;
  --ihc-bright:    #0790A0;
  --ihc-deep:      #023F55;
  --ihc-petrol:    #065E6B;
  --ihc-line:      #DDE5E7;
  --ihc-radius:    18px;
  --ihc-radius-lg: 28px;
  --ihc-shadow:    0 20px 50px rgba(2, 63, 85, .10);
  --ihc-mcta-h:    74px;
}

/* ---------- 1. Alap szerkezet: container es fuggoleges ritmus ---------- */

.ihc-section {
  padding-block: clamp(64px, 8vw, 112px);
  /* vizszintes tullogas kizarasa minden szekcion belul */
  overflow-x: clip;
}
.ihc-section--tint  { background: var(--ihc-surface); }
.ihc-section--tight { padding-block: clamp(48px, 5vw, 72px); }
.ihc-section--flush-top { padding-top: 0; }

.ihc-wrap {
  width: 100%;
  max-width: 1320px;
  margin-inline: auto;
  padding-inline: clamp(20px, 4vw, 40px);
}

/* Szekciofej: cim + rovid alcim, olvasasi szelessegre fogva */
.ihc-head {
  max-width: 720px;
  margin-inline: auto;
  margin-bottom: clamp(40px, 5vw, 64px);
  text-align: center;
}
.ihc-head > :first-child { margin-top: 0; }
.ihc-head > :last-child  { margin-bottom: 0; }
.ihc-head p {
  color: var(--ihc-muted);
  font-size: clamp(16px, 1.3vw, 19px);
  line-height: 1.6;
  margin-top: 16px;
}

.ihc-eyebrow {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--ihc-accent);
  margin: 0 0 14px;
}

.ihc-lead {
  font-size: clamp(17px, 1.4vw, 20px);
  line-height: 1.6;
  color: var(--ihc-muted);
}

/* Chevron link: a szin mellett nyil es alahuzas is jelzi, hogy link */
.ihc-link {
  display: inline-flex;
  align-items: center;
  gap: .45em;
  font-weight: 600;
  font-size: 15px;
  color: var(--ihc-accent);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  padding-block: 2px;
}
.ihc-link::after { content: "\2192"; transition: transform .18s ease; }
.ihc-link:hover, .ihc-link:focus-visible { color: var(--ihc-accent-2); border-bottom-color: currentColor; }
.ihc-link:hover::after { transform: translateX(3px); }

/* Latvanyos, konzisztens fokusz minden sajat interaktiv elemen */
.ihc-link:focus-visible,
.ihc-btn:focus-visible,
.ihc-mcta__btn:focus-visible,
.ihc-carousel .stk-block-carousel__button:focus-visible,
.ihc-carousel .stk-block-carousel__dot:focus-visible {
  outline: 2px solid var(--ihc-accent);
  outline-offset: 2px;
  border-radius: 6px;
}

/* Gombok: a Blocksy globalis gombstilusara epul, csak a variansok itt */
.ihc-btns { display: flex; flex-wrap: wrap; gap: 14px; }
.ihc-btn--ghost .wp-block-button__link,
.wp-block-button.ihc-btn--ghost > .wp-block-button__link {
  background: transparent;
  color: var(--ihc-accent);
  box-shadow: inset 0 0 0 1px var(--ihc-accent);
}
.ihc-btn--ghost .wp-block-button__link:hover {
  background: var(--ihc-accent);
  color: #fff;
}
/* Fenykepen allo gombok */
.ihc-on-photo .ihc-btn--ghost .wp-block-button__link,
.ihc-on-photo .wp-block-button.ihc-btn--ghost > .wp-block-button__link {
  color: #fff;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.75);
}
.ihc-on-photo .ihc-btn--ghost .wp-block-button__link:hover {
  background: #fff;
  color: var(--ihc-deep);
  box-shadow: inset 0 0 0 1px #fff;
}

/* ---------- 2. Hero carousel ---------- */

.ihc-hero { margin-block:0; margin-inline: calc(50% - 50vw); width:100vw; max-width:100vw; }
.ihc-hero .stk-block-carousel__content-wrapper { position: relative; }
.ihc-hero .stk-block-carousel__slider { margin: 0; }
.ihc-hero .wp-block-cover { border-radius:0; padding:0; align-items:center; }
.ihc-hero .wp-block-cover::after {
  content:""; position:absolute; inset:0; pointer-events:none; z-index:0;
  background: linear-gradient(90deg, rgba(255,255,255,.94) 0%, rgba(255,255,255,.82) 28%, rgba(255,255,255,.38) 50%, rgba(255,255,255,0) 66%);
}
.ihc-hero__content { position:relative; z-index:2; width:100%; max-width:1320px; margin-inline:auto; padding-inline: clamp(20px,4vw,40px); }
.ihc-hero__inner { max-width: 560px; }
.ihc-hero__inner.ihc-hero__inner > * { margin-block-start: 0; }
.ihc-hero__inner h2 { color: var(--ihc-deep); font-size: clamp(23px,2.4vw,37px); line-height:1.12; letter-spacing:.005em; text-transform: none; font-weight:700; margin:0 0 4px; }
.ihc-hero__inner > h2 + p, .ihc-hero__sub {
  color: var(--ihc-accent); font-size: clamp(23px,2.4vw,37px); line-height:1.12; letter-spacing:.005em;
  text-transform: none; font-weight: 800; margin: 0 0 20px; max-width: none;
}
.ihc-hero__inner > h2 + p + p, .ihc-hero__inner > .ihc-hero__sub + p {
  color: var(--ihc-muted); font-size: clamp(15px,1.15vw,17px); line-height:1.6; margin:0 0 28px; max-width:44ch; text-transform:none; font-weight:400;
}
.ihc-hero .stk-block-carousel__buttons { inset: 0 clamp(10px,1.4vw,24px); }
.ihc-hero .stk-block-carousel__button { box-shadow: 0 8px 24px rgba(2,63,85,.16); }
.ihc-hero .stk-block-carousel__dots { position:absolute; left:0; right:0; bottom:20px; top:auto; margin:0; z-index:5; }
@media (max-width: 900px) {
  /* A Cover blokk inline min-height-jat csak itt irjuk felul: mobilon a 660px tul magas. */
  .ihc-hero .wp-block-cover { min-height: clamp(430px,76vw,560px) !important; align-items: flex-end; }
  .ihc-hero .wp-block-cover::after { background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.55) 36%, rgba(255,255,255,.95) 70%); }
  .ihc-hero__content { padding-bottom: 52px; }
  .ihc-hero__inner { max-width: none; }
}

/* A vilagos kepen a feher pontok lathatatlanok voltak -> sotet/teal pontok */
.ihc-hero { --dot-color: rgba(15,42,51,.22); --dot-color-hover: #065E6B; }
.ihc-hero .stk-block-carousel__dot:before { background: rgba(15,42,51,.22) !important; }
.ihc-hero .stk-block-carousel__dot[aria-current="true"]:before,
.ihc-hero .stk-block-carousel__dot.stk--is-active:before,
.ihc-hero .stk-block-carousel__dot.is-active:before { background: var(--ihc-accent) !important; }


/* ---------- 3. Terapiak ---------- */

/* Szekcio: kisebb fuggoleges terkoz a blokk elott es utan */
.ihc-section:has(> .ihc-wrap > .ihc-therapies) { padding-block: clamp(24px, 2.4vw, 38px) clamp(40px, 4.2vw, 66px); }
.ihc-section:has(> .ihc-wrap > .ihc-therapies) .ihc-head { margin-bottom: clamp(26px, 2.6vw, 40px); }

.ihc-therapies { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: clamp(14px, 1.3vw, 18px); align-items: stretch; }
.ihc-therapies.ihc-therapies > * { margin-block-start: 0; }

/* Feher kartya, mint a latvanyterven */
.ihc-therapy {
  display: flex; flex-direction: column;
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius);
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(2, 63, 85, .05);
  transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease;
}
.ihc-therapy:hover, .ihc-therapy:focus-within {
  box-shadow: 0 20px 44px rgba(2, 63, 85, .18);
  transform: translateY(-5px);
  border-color: rgba(7, 128, 143, .35);
}
.ihc-therapy.ihc-therapy > * { margin-block-start: 0; }
.ihc-therapy .wp-block-image { margin: 0; }
.ihc-therapy .wp-block-image img { display:block; width:100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 0; }
/* A szoveges resz kap belso margot, a kep vegig kifut */
.ihc-therapy > :not(.wp-block-image) { padding-inline: clamp(14px, 1.2vw, 18px); }
.ihc-therapy > h3 { padding-top: clamp(14px, 1.2vw, 18px); margin: 0 0 7px; font-size: clamp(14px, 1.15vw, 17px); line-height: 1.25; color: var(--ihc-deep); }
.ihc-therapy > p:not(.ihc-link-p) { margin: 0 0 14px; font-size: clamp(12px, .95vw, 13.5px); line-height: 1.5; color: var(--ihc-muted); }
.ihc-therapy > .ihc-link-p { margin-top: auto; padding-bottom: clamp(14px, 1.2vw, 18px); }
.ihc-therapy .ihc-link-p a { font-size: clamp(11px, .85vw, 12.5px); font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }

@media (max-width: 1180px) { .ihc-therapies { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 860px)  { .ihc-therapies { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 560px)  { .ihc-therapies { grid-template-columns: 1fr; gap: 16px; } }


/* ---------- 4. Bizalomepito sav ---------- */
/* Nem full-width szines sav tobbe: a szekcio hattere atlatszo, es maga a racs
   lett a behuzott, lekerekitett panel. A :has() 0,2,0 specificitasa
   fuluti a .ihc-section--tint 0,1,0-jat, ezert nem kell !important. */
.ihc-section:has(> .ihc-wrap > .ihc-trust) {
  background: transparent;
  /* A felette/alatta levo terkoz felezve: a szomszed szekciok szomszedos
     paddingja is bele szamit, ezert azokat is itt hangoljuk. */
  padding-block: clamp(9px, 1vw, 15px) clamp(11px, 1.2vw, 18px);
}
/* felette: a terapiak szekcio also paddingja 66px -> 33px */
.ihc-section:has(> .ihc-wrap > .ihc-therapies) { padding-bottom: clamp(20px, 2.1vw, 33px); }
/* alatta: a kovetkezo szekcio felso paddingja 112px -> 56px */
.ihc-section:has(> .ihc-wrap > .ihc-trust) + .ihc-section { padding-top: clamp(32px, 4vw, 56px); }

.ihc-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  background: var(--ihc-surface);
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius-lg);
  padding-block: clamp(22px, 2.2vw, 32px);
  padding-inline: clamp(6px, .8vw, 12px);
}

.ihc-trust__item {
  display: flex;
  align-items: center;
  gap: clamp(12px, 1.1vw, 16px);
  padding-inline: clamp(14px, 1.7vw, 26px);
  min-width: 0;
}
.ihc-trust__item > .wp-block-group { min-width: 0; }

.ihc-trust__item .wp-block-image { margin: 0; flex: 0 0 auto; }
.ihc-trust__item .wp-block-image img {
  display: block;
  width: clamp(52px, 4.1vw, 62px);
  height: clamp(52px, 4.1vw, 62px);
  border-radius: 12px;
}

.ihc-trust__item h3 {
  margin: 0 0 5px;
  font-size: clamp(12.5px, 1vw, 14.5px);
  line-height: 1.2;
  font-weight: 700;
  color: var(--ihc-deep);
  text-transform: none;
  letter-spacing: .06em;
}
.ihc-trust__item p {
  margin: 0;
  font-size: clamp(12px, .95vw, 13.5px);
  line-height: 1.5;
  color: var(--ihc-muted);
}

/* Halvany szurke fuggoleges elvalaszto a blokkok kozott */
@media (min-width: 1081px) {
  .ihc-trust__item + .ihc-trust__item { border-inline-start: 1px solid var(--ihc-line); }
}

@media (max-width: 1080px) {
  .ihc-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(18px, 3vw, 26px) 0;
    padding-inline: clamp(4px, 1vw, 10px);
  }
  .ihc-trust__item:nth-child(2n) { border-inline-start: 1px solid var(--ihc-line); }
}
@media (max-width: 520px) {
  .ihc-trust {
    grid-template-columns: 1fr;
    gap: 0;
    padding-block: clamp(8px, 3vw, 14px);
    padding-inline: 0;
  }
  .ihc-trust__item {
    padding: 16px clamp(16px, 5vw, 22px);
    border-inline-start: 0 !important;
  }
  .ihc-trust__item + .ihc-trust__item { border-top: 1px solid var(--ihc-line); }
}


/* ---------- 5. Problema carousel ---------- */
/* A kartya maga a kep: a szoveg RAJTA ul, bal oldalon, egy lagy vilagos
   fatyolon, hogy barmilyen fotoval olvashato maradjon. */

.ihc-problem {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  /* A width:100% kotelezo: aspect-ratio + min-height egyutt kulonben a
     magassagbol szamolja vissza a szelesseget, es a kartya kilog a slotbol. */
  width: 100%;
  aspect-ratio: 1024 / 431;
  /* A kartya soha nem lehet olyan alacsony, hogy a szoveg kilogjon rola:
     keskeny kartyanal a min-height veszi at az aranyszam helyet. */
  min-height: 285px;
  border-radius: var(--ihc-radius-lg);
  padding-block: clamp(14px, 1.6vw, 22px);
  isolation: isolate;
}

.ihc-problem .wp-block-image {
  position: absolute;
  inset: 0;
  margin: 0;
  z-index: 0;
  border-radius: inherit;
  overflow: hidden;
}
.ihc-problem .wp-block-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
}

/* Olvashatosagi fatyol balrol - visszafogott, hogy a kep pasztell
   szinei megmaradjanak. */
.ihc-problem::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(90deg,
    rgba(255, 255, 255, .82) 0%,
    rgba(255, 255, 255, .76) 30%,
    rgba(255, 255, 255, .46) 52%,
    rgba(255, 255, 255, 0)   72%);
}

.ihc-problem > :not(.wp-block-image) {
  position: relative;
  z-index: 2;
  /* A bal oldali lapozogomb savja (16px offset + 46px gomb) ala nem
     kerulhet szoveg, ezert a belso margo legalabb 74px. */
  width: min(44%, 250px);
  margin-inline-start: clamp(74px, 6.4vw, 88px);
}

.ihc-problem h3 {
  /* margin-block, nem shorthand: a shorthand nullazna a bal oldali
     belso margot, amit a .ihc-problem > :not(.wp-block-image) ad. */
  margin-block: 0 10px;
  font-size: clamp(17px, 1.7vw, 25px);
  line-height: 1.18;
  color: var(--ihc-deep);
}
.ihc-problem p:not(.ihc-link-p) {
  margin-block: 0 18px;
  font-size: clamp(11.5px, .9vw, 13px);
  line-height: 1.5;
  color: var(--ihc-muted);
  max-width: none;
}
.ihc-problem .ihc-link-p a {
  font-size: clamp(11px, .85vw, 12.5px);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
}

/* Mobil (<=767px): 1 kartya, a szoveg a kep also savjaban, teljes
   szelessegben. Ebben a savban a lapozogombok rejtve vannak, igy a
   szoveg nyugodtan kifuthat a kartya szeleig. */
@media (max-width: 767px) {
  .ihc-problem {
    aspect-ratio: 4 / 3;
    min-height: 0;
    justify-content: flex-end;
    border-radius: var(--ihc-radius);
  }
  .ihc-problem::after {
    background: linear-gradient(180deg,
      rgba(255, 255, 255, 0)   26%,
      rgba(255, 255, 255, .72) 48%,
      rgba(255, 255, 255, .94) 66%);
  }
  .ihc-problem > :not(.wp-block-image) {
    width: auto;
    margin-inline: 20px;
  }
  .ihc-problem > :last-child { margin-bottom: 14px; }
  .ihc-problem h3 { font-size: 21px; }
  .ihc-problem p:not(.ihc-link-p) { font-size: 13.5px; margin-block-end: 14px; }
  .ihc-problem .ihc-link-p a { font-size: 12.5px; }
}

/* Stackable carousel vezerlok a design rendszerhez igazitva */
.ihc-carousel .stk-block-carousel__button {
  box-shadow: 0 10px 30px rgba(2, 63, 85, .12);
}
.ihc-carousel .stk-block-carousel__dots { margin-top: clamp(28px, 3vw, 40px); }


/* ---------- 6. Rolunk ---------- */

.ihc-about {
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
  gap: clamp(32px, 5vw, 72px);
  align-items: center;
}
.ihc-about__text > :first-child { margin-top: 0; }
.ihc-about__text h2 { margin: 0 0 20px; }
.ihc-about__text p  { color: var(--ihc-muted); line-height: 1.7; }

.ihc-about__media {
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  grid-template-rows: auto auto;
  gap: clamp(12px, 1.4vw, 18px);
}
.ihc-about__media .wp-block-image { margin: 0; }
.ihc-about__media .wp-block-image img {
  display: block; width: 100%; height: 100%;
  object-fit: cover;
  border-radius: var(--ihc-radius);
}
.ihc-about__media .wp-block-image:first-child { grid-row: 1 / span 2; }
.ihc-about__media .wp-block-image:first-child img { aspect-ratio: 4 / 5; }
.ihc-about__media .wp-block-image:nth-child(2) img,
.ihc-about__media .wp-block-image:nth-child(3) img { aspect-ratio: 4 / 3; }

@media (max-width: 900px) {
  .ihc-about { grid-template-columns: 1fr; }
  .ihc-about__media { grid-template-columns: 1fr 1fr; }
  .ihc-about__media .wp-block-image:first-child { grid-row: auto; grid-column: 1 / -1; }
  .ihc-about__media .wp-block-image:first-child img { aspect-ratio: 16 / 10; }
}

/* ---------- 7. Lifestyle / performance sav ---------- */

.ihc-lifestyle.wp-block-cover {
  min-height: clamp(420px, 46vw, 560px);
  padding-block: clamp(56px, 7vw, 96px);
}
.ihc-lifestyle .ihc-lifestyle__inner {
  max-width: 680px;
  margin-inline: auto;
  text-align: center;
}
.ihc-lifestyle h2 {
  color: #fff;
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.1;
  margin: 0 0 18px;
}
.ihc-lifestyle p {
  color: rgba(255,255,255,.9);
  font-size: clamp(16px, 1.3vw, 19px);
  margin: 0 0 30px;
}
.ihc-lifestyle .ihc-btns { justify-content: center; }

/* ---------- 8. Vendegvelemenyek ---------- */
/* Kiemelt vendegidezetek (nem Google-ertekelesek): kisebb, tomorebb kartyak,
   vilagos petrol idezojel, nagyobb portre es csillagsor. */

.ihc-quotes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 1.8vw, 24px);
  align-items: stretch;
}
.ihc-quote {
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius);
  padding: clamp(18px, 1.8vw, 26px);
  box-shadow: 0 8px 24px rgba(2, 63, 85, .05);
  display: flex;
  flex-direction: column;
}

/* Az idezojel: a core/icon "99" glifjet 180 fokkal forgatva nyito idezojel
   lesz belole, vilagos petrol szinben. Az inline width miatt kell !important. */
.ihc-quote .wp-block-icon { margin: 0 0 12px; line-height: 0; }
.ihc-quote .wp-block-icon svg {
  width: 28px !important;
  height: auto;
  fill: #1B93A3;
  transform: rotate(180deg);
}

.ihc-quote > p {
  margin: 0 0 18px;
  color: var(--ihc-muted);
  font-style: italic;
  font-size: clamp(13px, 1.05vw, 14.5px);
  line-height: 1.62;
}

.ihc-quote__by.ihc-quote__by {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: auto;
}
.ihc-quote__by .wp-block-image { margin: 0; flex: 0 0 auto; }
.ihc-quote__by .wp-block-image img {
  width: 52px; height: 52px;
  border-radius: 999px;
  object-fit: cover;
  display: block;
}
.ihc-quote__by p {
  margin: 0;
  font-weight: 600;
  font-size: clamp(13px, 1vw, 14.5px);
  color: var(--ihc-deep);
}
/* Csillagsor a sor jobb szelen */
.ihc-quote__by::after {
  content: "";
  margin-left: auto;
  flex: 0 0 auto;
  width: clamp(76px, 6.4vw, 92px);
  aspect-ratio: 126 / 24;
  background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20126%2024%27%20fill%3D%27%23F2A81C%27%3E%3Cpath%20transform%3D%27translate%280%2C0%29%27%20d%3D%27M12%202.6l2.7%205.9%206.2.7-4.6%204.3%201.2%206.1L12%2016.6%206.5%2019.6l1.2-6.1L3.1%209.2l6.2-.7z%27%2F%3E%3Cpath%20transform%3D%27translate%2826%2C0%29%27%20d%3D%27M12%202.6l2.7%205.9%206.2.7-4.6%204.3%201.2%206.1L12%2016.6%206.5%2019.6l1.2-6.1L3.1%209.2l6.2-.7z%27%2F%3E%3Cpath%20transform%3D%27translate%2852%2C0%29%27%20d%3D%27M12%202.6l2.7%205.9%206.2.7-4.6%204.3%201.2%206.1L12%2016.6%206.5%2019.6l1.2-6.1L3.1%209.2l6.2-.7z%27%2F%3E%3Cpath%20transform%3D%27translate%2878%2C0%29%27%20d%3D%27M12%202.6l2.7%205.9%206.2.7-4.6%204.3%201.2%206.1L12%2016.6%206.5%2019.6l1.2-6.1L3.1%209.2l6.2-.7z%27%2F%3E%3Cpath%20transform%3D%27translate%28104%2C0%29%27%20d%3D%27M12%202.6l2.7%205.9%206.2.7-4.6%204.3%201.2%206.1L12%2016.6%206.5%2019.6l1.2-6.1L3.1%209.2l6.2-.7z%27%2F%3E%3C%2Fsvg%3E") no-repeat center / contain;
}

@media (max-width: 900px) { .ihc-quotes { grid-template-columns: 1fr; } }
@media (max-width: 420px) {
  .ihc-quote__by { flex-wrap: wrap; }
  .ihc-quote__by::after { margin-left: 0; width: 84px; }
}

/* Google ertekelesek helye: keszen all a beagyazasra */
.ihc-reviews-slot {
  margin-top: clamp(32px, 4vw, 48px);
  border: 1px dashed var(--ihc-line);
  border-radius: var(--ihc-radius);
  padding: clamp(20px, 2.4vw, 32px);
  text-align: center;
  background: #fff;
}
.ihc-reviews-slot p { margin: 0 0 10px; color: var(--ihc-muted); font-size: 15px; }
.ihc-reviews-slot p:last-child { margin-bottom: 0; }


/* ---------- 9. Ajandekutalvany ---------- */

.ihc-cta-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-auto-rows: minmax(230px, auto); gap: clamp(16px, 1.8vw, 26px); align-items: stretch; }
.ihc-cta-row > * { margin-block: 0; }
.ihc-voucher { position: relative; display: grid; grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr); gap: 0; align-items: stretch; min-height: 230px; padding: 0; overflow: hidden; border-radius: var(--ihc-radius-lg); background: linear-gradient(118deg,#023F55 0%,#07808F 58%,#0BA394 100%); background-size: cover; background-position: center; color: #fff; }
.ihc-voucher > *, .ihc-voucher__text > * { margin-block: 0; }
.ihc-voucher .wp-block-image { margin: 0; position: relative; align-self: stretch; min-width: 0; min-height: 0; overflow: hidden; }
.ihc-voucher .wp-block-image img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none; max-height: none; padding: clamp(14px,1.4vw,22px); aspect-ratio: auto; object-fit: contain; object-position: center; border-radius: 0; filter: drop-shadow(0 14px 26px rgba(0,0,0,.22)); }
.ihc-voucher__text { display: flex; flex-direction: column; justify-content: center; padding: clamp(20px,2vw,30px) clamp(20px,2.2vw,34px); }
.ihc-voucher h2 { color:#fff; margin:0 0 10px; font-size: clamp(17px,1.5vw,23px); line-height:1.15; text-transform: none; letter-spacing:.01em; overflow-wrap:normal; text-wrap:balance; }
.ihc-voucher p { color: rgba(255,255,255,.92); margin:0 0 18px; font-size: clamp(13px,.98vw,15px); line-height:1.5; max-width:46ch; }
.ihc-voucher .wp-block-button__link { background:#fff; color:var(--ihc-deep); min-height:42px; padding:10px 24px; font-size:13px; }
.ihc-contact-card { display: grid; grid-template-columns: minmax(0,0.56fr) minmax(0,0.44fr); align-items: stretch; min-height: 230px; background: var(--ihc-surface); border-radius: var(--ihc-radius-lg); overflow: hidden; }
.ihc-contact-card > *, .ihc-contact-card__info > * { margin-block: 0; }
.ihc-contact-card__info { display:flex; flex-direction:column; justify-content:center; padding: clamp(20px,2vw,30px) clamp(20px,2.2vw,32px); }
.ihc-contact-card__info h2 { margin:0 0 16px; color: var(--ihc-deep); font-size: clamp(16px,1.35vw,21px); line-height:1.2; text-transform: none; letter-spacing:.05em; }
.ihc-contact-card .ihc-contact__list { list-style:none; margin:0; padding:0; }
.ihc-contact-card .ihc-contact__list li { position:relative; padding:0 0 0 28px; margin:0 0 11px; border:0; font-size: clamp(13px,.95vw,15px); line-height:1.45; color:var(--ihc-ink); }
.ihc-contact-card .ihc-contact__list li:last-child { margin-bottom:0; }
.ihc-contact-card .ihc-contact__list li::before { content:""; position:absolute; left:0; top:1px; width:17px; height:17px; background:#07808F; border-radius:3px; }
.ihc-contact-card .ihc-contact__list a { color:var(--ihc-ink); text-decoration:none; border-bottom:1px solid var(--ihc-line); }
.ihc-contact-card .ihc-map { position: relative; }
.ihc-contact-card .ihc-map .stk-block-map { position:absolute; inset:0; width:auto; height:auto; }
.ihc-contact-card .ihc-map iframe { width:100%; height:100%!important; min-height:0; border:0; border-radius:0; display:block; }
@media (max-width:1100px){ .ihc-cta-row{grid-template-columns:1fr;grid-auto-rows:minmax(240px,auto)} }
@media (max-width:680px){ .ihc-cta-row{grid-auto-rows:auto} }
@media (max-width:680px){ .ihc-voucher,.ihc-contact-card{grid-template-columns:1fr;min-height:0} .ihc-voucher .wp-block-image{padding:18px} .ihc-voucher .wp-block-image{height:200px} .ihc-contact-card .ihc-map{position:static} .ihc-contact-card .ihc-map .stk-block-map{position:static;width:100%;height:250px} .ihc-contact-card .ihc-map iframe{height:250px!important} }


/* ---------- 12. Lablec ---------- */
/* A lablec Blocksy footer-builderrel keszult: middle-row = 4 widgetterulet,
   bottom-row = copyright. Itt csak a widgetek belso megjelenese van. */

/* --- 1. oszlop: logo + rovid marka szoveg + kozossegi ikonok --- */
footer.ct-footer .ihc-flogo { margin: 0 0 16px; }
footer.ct-footer .ihc-flogo img {
  width: 100%;
  max-width: 210px;
  height: auto;
  display: block;
}
footer.ct-footer .ihc-fbrand {
  margin: 0 0 22px;
  max-width: 32ch;
  color: rgba(255, 255, 255, .78);
  font-size: 14px;
  line-height: 1.6;
}

/* Kozossegi ikonok: feher korok, sotet petrol jellel */
footer.ct-footer .ihc-fsocial { gap: 10px; margin: 0; padding: 0; }
footer.ct-footer .ihc-fsocial.ihc-fsocial .wp-block-social-link {
  width: 36px;
  height: 36px;
  margin: 0;
  padding: 0;
  border-radius: 999px;
  background-color: #fff;
  color: var(--ihc-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .18s ease, background-color .18s ease;
}
footer.ct-footer .ihc-fsocial .wp-block-social-link-anchor {
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
footer.ct-footer .ihc-fsocial .wp-block-social-link-anchor svg {
  width: 17px;
  height: 17px;
  fill: currentColor;
}
footer.ct-footer .ihc-fsocial.ihc-fsocial .wp-block-social-link:hover { transform: translateY(-2px); }
footer.ct-footer .ihc-fsocial .wp-block-social-link-anchor:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
  border-radius: 999px;
}

/* --- 2-4. oszlop: cim + linklista --- */
footer.ct-footer .ihc-fcol__title {
  margin: 0 0 16px;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: #fff;
}
footer.ct-footer .ihc-flist {
  list-style: none;
  margin: 0;
  padding: 0;
}
/* Footer linklista: felere csokkentett sorkoz (2026-08-28).
   A li sajat font-size/line-height-ot kap, kulonben a temaból orokolt
   nagyobb sormagassag adja a terkoz nagy reszet. */
footer.ct-footer .ihc-flist li {
  margin: 0 0 10px;
  font-size: 14.5px;
  line-height: 1.45;
}
footer.ct-footer .ihc-flist li:last-child { margin-bottom: 0; }
footer.ct-footer .ihc-flist a {
  color: rgba(255, 255, 255, .82);
  text-decoration: none;
  font-size: 14.5px;
  line-height: 1.45;
  border-bottom: 1px solid transparent;
  transition: color .18s ease, border-color .18s ease;
}
footer.ct-footer .ihc-flist a:hover {
  color: #fff;
  border-bottom-color: rgba(255, 255, 255, .55);
}
footer.ct-footer .ihc-flist a:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
  border-radius: 4px;
}

/* --- Also sav: jogi linkek, copyright, kisebb disclaimer --- */
footer.ct-footer .ihc-flegal {
  margin: 0 0 10px;
  font-size: 13.5px;
}
footer.ct-footer .ihc-flegal a {
  color: rgba(255, 255, 255, .88);
  text-decoration: none;
  border-bottom: 1px solid rgba(255, 255, 255, .35);
}
footer.ct-footer .ihc-flegal a:hover { color: #fff; border-bottom-color: #fff; }
footer.ct-footer .ihc-flegal span { color: rgba(255, 255, 255, .45); padding: 0 8px; }

footer.ct-footer .ihc-fcopy {
  margin: 0 0 12px;
  font-size: 13.5px;
  color: rgba(255, 255, 255, .78);
}
footer.ct-footer .ihc-fcopy a { color: inherit; text-decoration: none; border-bottom: 1px solid transparent; }
footer.ct-footer .ihc-fcopy a:hover { color: #fff; border-bottom-color: rgba(255, 255, 255, .5); }

/* A jogi kizaro nyilatkozat: jol lathato, de vizualisan a legkisebb suly */
footer.ct-footer .ihc-fdisclaimer {
  margin: 0;
  max-width: 92ch;
  margin-inline: auto;
  font-size: 11.5px;
  line-height: 1.55;
  color: rgba(255, 255, 255, .55);
}

@media (max-width: 999px) {
  footer.ct-footer .ihc-flogo img { max-width: 180px; }
  footer.ct-footer .ihc-fbrand { max-width: none; }
}
@media (max-width: 690px) {
  footer.ct-footer .ihc-fcol__title { margin-bottom: 12px; }
  footer.ct-footer .ihc-fdisclaimer { font-size: 11px; }
}


/* ---------- 13. Rogzitett mobil bejelentkezes gomb ---------- */

.ihc-mcta {
  display: none;
  position: fixed;
  inset-inline: 0;
  bottom: 0;
  z-index: 400;
  padding: 10px clamp(14px, 4vw, 20px);
  padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px));
  background: rgba(255, 255, 255, .94);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  border-top: 1px solid var(--ihc-line);
}
.ihc-mcta__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 54px;
  border-radius: 999px;
  background: var(--ihc-accent);
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: .03em;
  text-decoration: none;
  padding: 12px 24px;
}
.ihc-mcta__btn:hover, .ihc-mcta__btn:focus-visible { background: var(--ihc-accent-2); color: #fff; }

@media (max-width: 1000px) {
  .ihc-mcta { display: block; }
  /* A tartalom vege ne kerüljon a rogzitett gomb ala */
  body.ihc-has-mcta { padding-bottom: calc(var(--ihc-mcta-h) + env(safe-area-inset-bottom, 0px)); }
  /* A Blocksy "vissza a tetejere" gomb se csusszon a CTA ala */
  body.ihc-has-mcta .ct-back-to-top { bottom: calc(var(--ihc-mcta-h) + 16px + env(safe-area-inset-bottom, 0px)); }
}

/* ---------- 14. Altalanos vedelem a vizszintes gorgetes ellen ---------- */

.ihc-section img,
.ihc-section iframe { max-width: 100%; }

@media (prefers-reduced-motion: reduce) {
  .ihc-link::after { transition: none; }
}


/* ---------- 16. Terapiak megamenu (Max Mega Menu) ---------- */
/* A panel a Max Mega Menu grid-jere epul: 1. sor ket fejlec, 2. sor ot terapia
   oszlop + a blog oszlop. Minden elem widget vagy menupont, tehat a
   Megjelenes > Menuk > Mega Menu feluleten szerkesztheto. */

/* A panel maga atlatszo, teljes szelessegu reteg marad (a pozicionalast a
   pluginre hagyjuk, igy a sticky fejlec es a tema szerkezete serulten marad).
   A lathato feher kartya a ket sor: oldalszelessegre (max 1320px) fogva es
   kozepre rendezve. Az arnyekot a panelre tett drop-shadow adja, mert az a
   ket sor tenyleges alakjat koveti, nem a lathatatlan reteget. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 > .mega-sub-menu ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 > .mega-sub-menu ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 > .mega-sub-menu{
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 10px 0 0 !important;
  box-shadow: none !important;
  filter: drop-shadow(0 16px 36px rgba(2, 63, 85, .14));
}

#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 > ul.mega-sub-menu > li.mega-menu-row ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 > ul.mega-sub-menu > li.mega-menu-row ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 > ul.mega-sub-menu > li.mega-menu-row{
  width: min(1320px, calc(100% - 40px));
  max-width: none;
  margin: 0 auto;
  float: none;
  background: #fff;
  border-left: 1px solid #E6ECEE;
  border-right: 1px solid #E6ECEE;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 > ul.mega-sub-menu > li.mega-menu-row:first-child ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 > ul.mega-sub-menu > li.mega-menu-row:first-child ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 > ul.mega-sub-menu > li.mega-menu-row:first-child{
  border-top: 1px solid #E6ECEE;
  border-radius: 18px 18px 0 0;
  padding: clamp(24px, 2.4vw, 36px) clamp(24px, 2.6vw, 40px) 0;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 > ul.mega-sub-menu > li.mega-menu-row:last-child ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 > ul.mega-sub-menu > li.mega-menu-row:last-child ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 > ul.mega-sub-menu > li.mega-menu-row:last-child{
  border-bottom: 1px solid #E6ECEE;
  border-radius: 0 0 18px 18px;
  padding: 0 clamp(24px, 2.6vw, 40px) clamp(24px, 2.4vw, 36px);
}

/* A Max Mega Menu sajat racsa float-tal dolgozik es minden oszlopon beluli
   elemre paddinget tesz; ezt itt oltjuk ki. Harom ID kell hozza, mert a
   plugin szabalyai ket ID-sek. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item{
  float: none;
  clear: none;
  width: 100%;
  padding: 0;
  vertical-align: baseline;
  text-align: inherit;
}

/* A ket sor azonos oszlopszerkezete: az utolso oszlop fix szelessegu,
   igy a "Legfrissebb cikkeink" fejlec pontosan a bloglista fole kerul. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .mega-menu-row > .mega-sub-menu ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .mega-menu-row > .mega-sub-menu ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .mega-menu-row > .mega-sub-menu{
  display: flex;
  flex-wrap: nowrap;
  gap: clamp(16px, 1.6vw, 24px);
  align-items: stretch;
  max-width: none;
  margin: 0;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .mega-menu-column ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .mega-menu-column ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .mega-menu-column{
  flex: 1 1 0;
  min-width: 0;
  width: auto !important;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .mega-menu-row > .mega-sub-menu > .mega-menu-column:last-child ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .mega-menu-row > .mega-sub-menu > .mega-menu-column:last-child ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .mega-menu-row > .mega-sub-menu > .mega-menu-column:last-child{
  flex: 0 0 clamp(280px, 24vw, 340px);
  border-left: 1px solid #E6ECEE;
  padding-left: clamp(20px, 2vw, 30px);
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:last-child ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:last-child ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:last-child{
  border-left: 1px solid transparent;
}

/* --- Fejlecek --- */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-head ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-head ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-head{
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 clamp(18px, 1.8vw, 26px);
  font-size: 13.5px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--ihc-ink);
  line-height: 1.2;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-head img ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-head img ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-head img{
  width: 26px;
  height: 26px;
  flex: 0 0 auto;
  display: block;
}
/* rovid turkiz vonal a bal oldali fejlec ikonja alatt */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:first-child .ihc-mm-head ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:first-child .ihc-mm-head ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:first-child .ihc-mm-head{
  position: relative;
  padding-bottom: 14px;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:first-child .ihc-mm-head::after ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:first-child .ihc-mm-head::after ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:first-child .ihc-mm-head::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 34px;
  height: 2px;
  background: var(--ihc-accent);
  border-radius: 2px;
}

/* --- Terapia oszlopok --- */
/* A "Reszletek" linkek egy vonalban alljanak, barmilyen hosszu is a szoveg:
   az oszlop tartalma flex oszlop, a link automatikus felso margoval az aljara ul. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-bodyrow .mega-menu-column:not(:last-child) > .mega-sub-menu ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-bodyrow .mega-menu-column:not(:last-child) > .mega-sub-menu ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-bodyrow .mega-menu-column:not(:last-child) > .mega-sub-menu{ text-align: center; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-bodyrow .mega-menu-column:last-child > .mega-sub-menu ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-bodyrow .mega-menu-column:last-child > .mega-sub-menu ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-bodyrow .mega-menu-column:last-child > .mega-sub-menu{ text-align: left; }

/* Nyitott allapotban a fomenupont is turkiz */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896.mega-toggle-on > .mega-menu-link ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333.mega-toggle-on > .mega-menu-link ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243.mega-toggle-on > .mega-menu-link{ color: var(--ihc-accent); }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .widget_media_image ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .widget_media_image ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .widget_media_image{ margin: 0 0 16px; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .widget_media_image img ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .widget_media_image img ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .widget_media_image img{
  width: clamp(60px, 5vw, 74px);
  height: auto;
  margin: 0 auto;
  display: block;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-bodyrow .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-bodyrow .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-bodyrow .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link{
  display: block;
  padding: 0;
  margin: 0 0 10px;
  font-size: clamp(14px, 1.15vw, 16.5px);
  font-weight: 600;
  line-height: 1.25;
  color: var(--ihc-ink);
  text-decoration: none;
  background: none;
  text-transform: none;
  text-align: center;
  /* ket sornyi hely a cimnek es haromnyi a leirasnak, hogy a "Reszletek"
     linkek oszloponkent egy vonalba essenek */
  min-height: 2.5em;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-bodyrow .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-bodyrow .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-bodyrow .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover{
  color: var(--ihc-accent);
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-desc ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-desc ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-desc{
  margin: 0 0 14px;
  min-height: 4.5em;
  font-size: clamp(12px, .95vw, 13.5px);
  line-height: 1.5;
  color: var(--ihc-muted);
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-more ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-more ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-more{ margin: 0; }

#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-more a ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-more a ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-more a{
  display: inline-flex;
  align-items: center;
  gap: .4em;
  font-size: clamp(12px, .95vw, 13.5px);
  font-weight: 600;
  color: var(--ihc-accent);
  text-decoration: none;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-more a::after ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-more a::after ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-more a::after{ content: "\2192"; transition: transform .18s ease; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-more a:hover::after ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-more a:hover::after ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-more a:hover::after{ transform: translateX(3px); }

/* --- Blog oszlop --- */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-posts .wp-block-post-template ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-posts .wp-block-post-template ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-posts .wp-block-post-template{
  list-style: none;
  margin: 0;
  padding: 0;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-posts .wp-block-post ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-posts .wp-block-post ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-posts .wp-block-post{
  position: relative;
  padding: 0 0 14px 34px;
  margin: 0 0 14px;
  border-bottom: 1px solid #EDF1F2;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-posts .wp-block-post:last-child ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-posts .wp-block-post:last-child ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-posts .wp-block-post:last-child{
  border-bottom: 0;
  margin-bottom: 18px;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-posts .wp-block-post::before ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-posts .wp-block-post::before ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-posts .wp-block-post::before{
  content: "";
  position: absolute;
  left: 0;
  top: 1px;
  width: 24px;
  height: 24px;
  background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2028%2028%27%3E%3Ccircle%20cx%3D%2714%27%20cy%3D%2714%27%20r%3D%2714%27%20fill%3D%27%23EDF3F5%27%2F%3E%3Cpath%20d%3D%27M12%209l5%205-5%205%27%20fill%3D%27none%27%20stroke%3D%27%230F7B8A%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E") no-repeat center / contain;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-posts .wp-block-post-title ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-posts .wp-block-post-title ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-posts .wp-block-post-title{
  margin: 0 0 6px;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 500;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-posts .wp-block-post-title a ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-posts .wp-block-post-title a ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-posts .wp-block-post-title a{
  color: var(--ihc-ink);
  text-decoration: none;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-posts .wp-block-post-title a:hover ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-posts .wp-block-post-title a:hover ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-posts .wp-block-post-title a:hover{ color: var(--ihc-accent); }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-posts .wp-block-read-more ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-posts .wp-block-read-more ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-posts .wp-block-read-more{
  display: inline-flex;
  align-items: center;
  gap: .4em;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--ihc-accent);
  text-decoration: none;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-posts .wp-block-read-more::after ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-posts .wp-block-read-more::after ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-posts .wp-block-read-more::after{ content: "\2192"; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-posts .wp-block-read-more .screen-reader-text ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-posts .wp-block-read-more .screen-reader-text ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-posts .wp-block-read-more .screen-reader-text{
  position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%);
}

#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-allbtn ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-allbtn ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-allbtn{ margin: 0; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-allbtn .wp-block-button__link ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-allbtn .wp-block-button__link ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-allbtn .wp-block-button__link{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  padding: 12px 22px;
  border-radius: 999px;
  background: transparent;
  color: var(--ihc-accent);
  box-shadow: inset 0 0 0 1px var(--ihc-accent);
  border: 0;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  text-decoration: none;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .ihc-mm-allbtn .wp-block-button__link:hover ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .ihc-mm-allbtn .wp-block-button__link:hover ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-allbtn .wp-block-button__link:hover{
  background: var(--ihc-accent);
  color: #fff;
}

/* Tablet / mobil: a plugin sajat mobil menuje veszi at, itt csak a tordelest
   engedjuk el, hogy semmi ne logjon ki. */
@media (max-width: 1100px) {
  #mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .mega-menu-row > .mega-sub-menu { flex-wrap: wrap; }
  #mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .mega-menu-column ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .mega-menu-column ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .mega-menu-column{ flex: 1 1 160px; }
  #mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-896 .mega-menu-row > .mega-sub-menu > .mega-menu-column:last-child ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8333 .mega-menu-row > .mega-sub-menu > .mega-menu-column:last-child ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .mega-menu-row > .mega-sub-menu > .mega-menu-column:last-child{
    flex: 1 1 100%;
    border-left: 0;
    padding-left: 0;
    border-top: 1px solid #E6ECEE;
    padding-top: 20px;
    margin-top: 8px;
  }
}


/* ---------- 17. Hatekonysag megamenu (Max Mega Menu) ---------- */
/* Ugyanaz a logika, mint a Terapiak menunel: a panel atlatszo teljes szelessegu
   reteg, a lathato feher kartya a ket sor (oldalszelessegre fogva, kozepen).
   Harom ID-s prefix kell, mert a plugin szabalyai ket ID-sek. */

#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 > .mega-sub-menu {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 10px 0 0 !important;
  box-shadow: none !important;
  filter: drop-shadow(0 16px 36px rgba(2, 63, 85, .14));
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 > ul.mega-sub-menu > li.mega-menu-row {
  width: min(1320px, calc(100% - 40px));
  max-width: none;
  margin: 0 auto;
  float: none;
  background: #fff;
  border-left: 1px solid #E6ECEE;
  border-right: 1px solid #E6ECEE;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 > ul.mega-sub-menu > li.mega-menu-row:first-child {
  border-top: 1px solid #E6ECEE;
  border-radius: 18px 18px 0 0;
  padding: clamp(18px, 1.8vw, 26px) clamp(22px, 2.4vw, 32px) 0;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 > ul.mega-sub-menu > li.mega-menu-row:last-child {
  border-bottom: 1px solid #E6ECEE;
  border-radius: 0 0 18px 18px;
  padding: clamp(14px, 1.4vw, 20px) clamp(22px, 2.4vw, 32px) clamp(18px, 1.8vw, 26px);
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item {
  float: none;
  clear: none;
  width: 100%;
  padding: 0;
  vertical-align: baseline;
  text-align: inherit;
}

/* --- A fo racs: 4 problema-oszlop + az ajandekkartya sav --- */
/* A fejlec az elso sor bal oldalat, az ajandekkartya a jobb oldalt tolti ki
   mind a harom soron at; a 8 elem automatikusan a 2. es 3. sorba kerul. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu {
  --ihc-hm-giftw: clamp(300px, 25vw, 372px);
  --ihc-hm-giftgap: clamp(20px, 2vw, 32px);
  position: relative;                 /* az ajandekkartya befoglaloja */
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 0;
  row-gap: clamp(10px, 1.1vw, 16px);
  /* jobb oldalt helyet hagyunk az abszolut pozicionalt ajandekkartyanak, igy
     az soha nem tudja szetfesziteni az elemsorokat */
  padding: 0 calc(var(--ihc-hm-giftw) + var(--ihc-hm-giftgap)) clamp(12px, 1.4vw, 20px) 0;
  max-width: none;
  margin: 0;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column {
  width: auto !important;
  min-width: 0;
  float: none;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(1) {
  grid-column: 1 / -1;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(2) {
  /* kivesszuk a racsbol: abszolut, a mainrow ul-hez kepest. Igy a kartya
     magassaga sosem hat vissza az elemsorokra, viszont vegig kitolti a savot. */
  position: absolute !important;
  top: 0;
  right: 0;
  bottom: 0;
  width: var(--ihc-hm-giftw) !important;
  padding-left: var(--ihc-hm-giftgap);
  border-left: 1px solid #EDF1F2;
  display: flex;
  min-height: 0;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(2) > ul.mega-sub-menu,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(2) > ul.mega-sub-menu > li.mega-menu-item {
  position: static !important;
  display: flex;
  flex: 1 1 auto;
  width: 100%;
  min-height: 0;
}
/* a 8 elem oszlopa */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(n+3),
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(n+3) > ul.mega-sub-menu {
  padding-inline: clamp(6px, .8vw, 12px);
  text-align: center;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(n+3) > ul.mega-sub-menu { padding-inline: 0; }
/* halvany elvalaszto a masodik elemsor felett (a nulla oszlopkoz miatt folytonos) */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(n+7) {
  border-top: 1px solid #EDF1F2;
  padding-top: clamp(14px, 1.5vw, 20px);
}

/* --- Fejlec --- */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-head {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding-bottom: 12px;
  font-size: 13.5px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--ihc-accent);
  line-height: 1.2;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-head img { width: 26px; height: 26px; flex: 0 0 auto; display: block; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-head::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 34px;
  height: 2px;
  background: var(--ihc-accent);
  border-radius: 2px;
}

/* --- Elemek --- */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .widget_media_image { margin: 0 0 10px; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .widget_media_image img {
  width: clamp(56px, 4.6vw, 68px);
  height: auto;
  margin: 0 auto;
  display: block;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
  display: block;
  padding: 0;
  margin: 0 0 8px;
  font-size: clamp(11.5px, .95vw, 13.5px);
  font-weight: 700;
  letter-spacing: .045em;
  text-transform: uppercase;
  line-height: 1.35;
  color: var(--ihc-ink);
  text-decoration: none;
  background: none;
  text-align: center;
  min-height: 2.4em;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover { color: var(--ihc-accent); }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-more { margin: 0; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-more a {
  display: inline-flex;
  align-items: center;
  gap: .45em;
  font-size: clamp(12px, .95vw, 13.5px);
  color: var(--ihc-accent);
  text-decoration: none;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-more a::after { content: "\2192"; transition: transform .18s ease; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-more a:hover::after { transform: translateX(3px); }

/* --- Ajandekkartya --- */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  border-radius: 16px;
  overflow: hidden;
  padding: clamp(20px, 2vw, 28px);
  color: #fff;
  background-color: #0B6E7F;
  background-image: linear-gradient(135deg, rgba(11,110,127,.35) 0%, rgba(2,63,85,.55) 100%);
  background-size: cover;
  background-position: center;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 clamp(12px, 1.4vw, 18px);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: #fff;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__eyebrow img { width: 24px; height: 24px; flex: 0 0 auto; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__title {
  margin: 0 0 10px;
  font-size: clamp(22px, 2vw, 30px);
  line-height: 1.15;
  font-weight: 700;
  color: #fff;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__lead {
  margin: 0 0 clamp(8px, 1vw, 14px);
  font-size: clamp(13px, 1.05vw, 15px);
  line-height: 1.5;
  color: rgba(255, 255, 255, .92);
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__card {
  margin: 0 clamp(-24px, -1.4vw, -8px);
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__card img {
  width: 100%;
  height: 100%;
  max-height: 100%;
  object-fit: contain;
  display: block;
  filter: drop-shadow(0 16px 26px rgba(0, 0, 0, .28));
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__btns { margin-top: auto; padding-top: clamp(10px, 1.2vw, 16px); }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__btns .wp-block-button { width: 100%; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__btns .wp-block-button__link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .6em;
  width: 100%;
  min-height: 48px;
  padding: 13px 24px;
  border-radius: 999px;
  background: #fff;
  color: var(--ihc-deep);
  border: 0;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  text-decoration: none;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__btns .wp-block-button__link::after { content: "\2192"; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__btns .wp-block-button__link:hover { background: rgba(255, 255, 255, .88); color: var(--ihc-deep); }

/* --- Also segito sav --- */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-footrow > ul.mega-sub-menu { display: block; max-width: none; margin: 0; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-footrow .mega-menu-column { width: 100% !important; float: none; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-help {
  display: flex;
  align-items: center;
  gap: clamp(10px, 1.2vw, 16px);
  margin: 0;
  background: #F5F8F9;
  border: 1px solid #EDF1F2;
  border-radius: 14px;
  padding: clamp(12px, 1.3vw, 18px) clamp(16px, 1.8vw, 26px);
  flex-wrap: wrap;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-help img { width: 30px; height: 30px; flex: 0 0 auto; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-help strong { font-size: clamp(14px, 1.15vw, 16px); color: var(--ihc-deep); }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-help span { font-size: clamp(13px, 1.05vw, 15px); color: var(--ihc-muted); }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-help a {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: .5em;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--ihc-accent);
  text-decoration: none;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-help a::after { content: "\2192"; }

/* --- Kisebb kepernyo --- */
@media (max-width: 1100px) {
  #mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 20px;
  }
  #mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(1) { grid-column: 1 / -1; grid-row: auto; }
  #mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu { padding-right: 0; }
  #mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(2) {
    position: static !important;
    width: auto;
    grid-column: 1 / -1;
    order: 9;
    border-left: 0;
    padding-left: 0;
    min-height: 320px;
  }
  #mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(n+7) { border-top: 0; padding-top: 0; }
  #mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-help a { margin-left: 0; }
}


/* ---------- 18. Galeria oldal ---------- */
/* Egyszeru masonry: a kepek eredeti keparanyukkal, oszlopokba rendezve.
   A valtozatos keparanyok adjak a "random" hatast. Kattintasra a sajat,
   fuggosegmentes lightbox nyilik (imagine-2026.js), amiben lapozni lehet. */

.ihc-gallery.wp-block-gallery {
  display: block;
  columns: 4;
  column-gap: clamp(10px, 1.1vw, 16px);
  margin: 0;
  gap: 0;
}
.ihc-gallery.wp-block-gallery > figure.wp-block-image {
  display: block;
  width: auto !important;
  max-width: none;
  margin: 0 0 clamp(10px, 1.1vw, 16px);
  break-inside: avoid;
  page-break-inside: avoid;
}
.ihc-gallery.wp-block-gallery figure.wp-block-image > a {
  display: block;
  cursor: zoom-in;
  border-radius: 14px;
  overflow: hidden;
}
.ihc-gallery.wp-block-gallery figure.wp-block-image img {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  border-radius: 14px;
  transition: transform .35s ease;
}
.ihc-gallery.wp-block-gallery figure.wp-block-image a:hover img { transform: scale(1.03); }
.ihc-gallery.wp-block-gallery figure.wp-block-image a:focus-visible {
  outline: 3px solid var(--ihc-accent);
  outline-offset: 3px;
}
.ihc-gallery.wp-block-gallery figure.wp-block-image figcaption {
  margin: 8px 2px 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--ihc-muted);
  background: none;
  position: static;
  padding: 0;
}

@media (max-width: 1100px) { .ihc-gallery.wp-block-gallery { columns: 3; } }
@media (max-width: 760px)  { .ihc-gallery.wp-block-gallery { columns: 2; } }
@media (max-width: 480px)  { .ihc-gallery.wp-block-gallery { columns: 1; } }

/* ---------- Lightbox ---------- */
html.ihc-lb-open { overflow: hidden; }
.ihc-lb {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(2, 20, 26, .93);
  padding: clamp(16px, 4vw, 56px);
}
.ihc-lb.is-open { display: flex; }
.ihc-lb__fig {
  margin: 0;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.ihc-lb__img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: calc(100vh - clamp(110px, 16vh, 180px));
  border-radius: 10px;
  box-shadow: 0 30px 80px rgba(0, 0, 0, .5);
}
.ihc-lb__cap { margin: 0; color: rgba(255, 255, 255, .85); font-size: 14px; text-align: center; }
.ihc-lb__count {
  position: absolute;
  left: 0;
  right: 0;
  bottom: clamp(12px, 2vw, 22px);
  margin: 0;
  text-align: center;
  color: rgba(255, 255, 255, .7);
  font-size: 13px;
  letter-spacing: .06em;
}
.ihc-lb__close,
.ihc-lb__nav {
  position: absolute;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, .14);
  color: #fff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  padding: 0;
  transition: background-color .18s ease;
}
.ihc-lb__close:hover,
.ihc-lb__nav:hover { background: rgba(255, 255, 255, .28); }
.ihc-lb__close:focus-visible,
.ihc-lb__nav:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.ihc-lb__close {
  top: clamp(10px, 2vw, 20px);
  right: clamp(10px, 2vw, 20px);
  width: 46px;
  height: 46px;
  font-size: 28px;
}
.ihc-lb__nav {
  top: 50%;
  transform: translateY(-50%);
  width: 52px;
  height: 52px;
  font-size: 20px;
}
.ihc-lb__nav--prev { left: clamp(8px, 2vw, 24px); }
.ihc-lb__nav--next { right: clamp(8px, 2vw, 24px); }
.ihc-lb__nav[hidden] { display: none; }

@media (max-width: 640px) {
  .ihc-lb__nav { width: 42px; height: 42px; font-size: 17px; }
  .ihc-lb__close { width: 40px; height: 40px; font-size: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .ihc-gallery.wp-block-gallery figure.wp-block-image img { transition: none; }
  .ihc-gallery.wp-block-gallery figure.wp-block-image a:hover img { transform: none; }
}


/* ---------- 19. Terapia aloldal sablon (.ihc-tp-*) ---------- */
/* Ujrahasznalhato: barmelyik terapia-aloldalon ugyanezek az osztalyok
   mukodnek, csak a szoveg es a kepek cserelodnek a szerkesztoben. */

.ihc-tp-hero,
.ihc-tp-cta,
.ihc-tp-book { overflow-x: clip; }

/* --- 1. Hero --- */
.ihc-tp-hero {
  background: linear-gradient(180deg, #F8FAFB 0%, #EDF3F5 100%);
  padding-block: clamp(32px, 3.6vw, 60px) 0;
}
.ihc-tp-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: clamp(24px, 3vw, 48px);
  align-items: center;
}
.ihc-tp-hero__text.ihc-tp-hero__text > * { margin-block-start: 0; }
.ihc-tp-hero__text h1 {
  margin: 0 0 16px;
  font-size: clamp(34px, 4.4vw, 60px);
  line-height: 1.08;
  color: var(--ihc-deep);
}
.ihc-tp-hero__text .ihc-lead { margin: 0 0 26px; }
.ihc-tp-hero__text .ihc-btns { margin: 0 0 clamp(28px, 3.4vw, 44px); }
.ihc-tp-hero__text .wp-block-button__link { text-transform: uppercase; letter-spacing: .04em; }

/* A hero kep jobbra kifut a kepernyo szeleig. A szekcio overflow-x: clip-je
   fogja meg, igy nem keletkezik vizszintes gorgetes. */
.ihc-tp-hero__media {
  min-width: 0;
  justify-self: start;
  width: calc(100% + max(0px, (100vw - 1320px) / 2) + clamp(20px, 4vw, 40px));
}
.ihc-tp-hero__media .wp-block-image { margin: 0; }
.ihc-tp-hero__media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 0;
}

/* Kiemelt mini kartyak a hero also savjaban */
.ihc-tp-mini {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(10px, 1.1vw, 16px);
  position: relative;
  z-index: 2;
  padding-bottom: clamp(28px, 3.4vw, 48px);
}
.ihc-tp-mini__item {
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius);
  padding: clamp(14px, 1.4vw, 20px);
  box-shadow: 0 8px 24px rgba(2, 63, 85, .06);
}
.ihc-tp-mini__item.ihc-tp-mini__item > * { margin-block-start: 0; }
.ihc-tp-mini__item h3 { margin: 0 0 6px; font-size: clamp(13px, 1.05vw, 15px); color: var(--ihc-deep); }
.ihc-tp-mini__item p { margin: 0; font-size: clamp(11.5px, .9vw, 13px); line-height: 1.5; color: var(--ihc-muted); }

/* --- Ikon helyorzo (a vegleges ikonokat a szerkesztoben lehet cserelni) --- */
.ihc-tp-icon { margin: 0 0 12px; }
.ihc-tp-icon img {
  display: block;
  width: clamp(34px, 3vw, 44px);
  height: auto;
  border-radius: 0;
}
.ihc-tp-icon--sm img { width: clamp(26px, 2.2vw, 32px); }

/* --- 2. Bemutato sav (szoveg + kep) --- */
.ihc-tp-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  gap: clamp(28px, 4vw, 64px);
  align-items: center;
}
.ihc-tp-split__text.ihc-tp-split__text > * { margin-block-start: 0; }
.ihc-tp-split__text h2 { margin: 0 0 18px; font-size: clamp(24px, 2.4vw, 34px); color: var(--ihc-deep); }
.ihc-tp-split__text p { margin: 0 0 16px; color: var(--ihc-muted); line-height: 1.7; }
.ihc-tp-split__text .ihc-btns { margin-top: 10px; }
.ihc-tp-split__text .wp-block-button__link { text-transform: uppercase; letter-spacing: .04em; }
.ihc-tp-split__media .wp-block-image { margin: 0; }
.ihc-tp-split__media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 11;
  object-fit: cover;
  border-radius: var(--ihc-radius-lg);
}

/* --- Kartyaracsok (elonyok, kinek ajanlott) --- */
.ihc-tp-cards { display: grid; gap: clamp(12px, 1.3vw, 18px); align-items: stretch; }
.ihc-tp-cards--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.ihc-tp-cards--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ihc-tp-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius);
  padding: clamp(18px, 1.8vw, 26px);
  box-shadow: 0 8px 24px rgba(2, 63, 85, .05);
}
.ihc-tp-card.ihc-tp-card > * { margin-block-start: 0; }
.ihc-tp-card h3 { margin: 0 0 8px; font-size: clamp(13px, 1.1vw, 15.5px); color: var(--ihc-deep); }
.ihc-tp-card p { margin: 0; font-size: clamp(12px, .95vw, 13.5px); line-height: 1.55; color: var(--ihc-muted); }
/* A fo elonyoknel balra zart, a "kinek ajanlott" savban kozepre zart kartyak. */
.ihc-tp-who .ihc-tp-card { align-items: center; text-align: center; }

/* --- 4. Vilagos petrol CTA sav --- */
.ihc-tp-cta {
  background: linear-gradient(135deg, #0B6E7F 0%, #1191A8 100%);
  padding-block: clamp(28px, 3.2vw, 44px);
}
.ihc-tp-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(18px, 2.4vw, 36px);
  flex-wrap: wrap;
}
.ihc-tp-cta h2 { margin: 0; color: #fff; font-size: clamp(20px, 2vw, 30px); line-height: 1.28; }
.ihc-tp-cta__btn { margin: 0; }

/* Feher pirula gomb a szines savokon */
.ihc-tp-cta .wp-block-button__link,
.ihc-tp-book .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  gap: .6em;
  background: #fff;
  color: var(--ihc-deep);
  border: 0;
  border-radius: 999px;
  padding: 14px 28px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  text-decoration: none;
}
.ihc-tp-cta .wp-block-button__link::after,
.ihc-tp-book .wp-block-button__link::after { content: "\2192"; }
.ihc-tp-cta .wp-block-button__link:hover,
.ihc-tp-book .wp-block-button__link:hover { background: rgba(255, 255, 255, .88); color: var(--ihc-deep); }

/* --- 6. Lepesek --- */
.ihc-tp-steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 28px);
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius-lg);
  padding: clamp(24px, 3vw, 44px) clamp(20px, 2.6vw, 40px);
}
/* Osszekoto vonal a sorszamok magassagaban, a szamok mogott. */
.ihc-tp-steps::before {
  content: "";
  position: absolute;
  left: 17%;
  right: 17%;
  top: calc(clamp(24px, 3vw, 44px) + 17px);
  height: 1px;
  background: var(--ihc-line);
}
.ihc-tp-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.ihc-tp-step.ihc-tp-step > * { margin-block-start: 0; }
.ihc-tp-step__num {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  margin: 0 0 18px;
  border-radius: 999px;
  background: var(--ihc-accent);
  box-shadow: 0 0 0 8px #fff;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
}
.ihc-tp-step .ihc-tp-icon img { width: clamp(38px, 3.4vw, 50px); margin-inline: auto; }
.ihc-tp-step h3 { margin: 0 0 8px; font-size: clamp(14px, 1.2vw, 17px); color: var(--ihc-deep); }
.ihc-tp-step p { margin: 0; max-width: 34ch; font-size: clamp(12px, 1vw, 14px); line-height: 1.6; color: var(--ihc-muted); }

/* --- 7. Ellenjavallatok + GYIK --- */
.ihc-tp-two {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(18px, 2.2vw, 32px);
  align-items: start;
}
.ihc-tp-panel {
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius-lg);
  padding: clamp(22px, 2.6vw, 36px);
}
.ihc-tp-panel.ihc-tp-panel > * { margin-block-start: 0; }
.ihc-tp-panel h2 { margin: 0 0 20px; font-size: clamp(20px, 1.9vw, 27px); color: var(--ihc-deep); }

.ihc-tp-list { margin: 0; padding-left: 0; list-style: none; }
.ihc-tp-list li {
  position: relative;
  margin: 0 0 12px;
  padding-left: 26px;
  font-size: clamp(13px, 1.05vw, 15px);
  line-height: 1.55;
  color: var(--ihc-muted);
}
.ihc-tp-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .45em;
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: var(--ihc-accent);
}
.ihc-tp-note { margin: 20px 0 0; font-size: clamp(12px, .95vw, 13.5px); line-height: 1.55; color: var(--ihc-muted); }

/* GYIK: core/details blokkok sajat nyilas kapcsoloval */
.ihc-tp-faq .wp-block-details {
  margin: 0 0 10px;
  background: var(--ihc-surface);
  border: 1px solid var(--ihc-line);
  border-radius: 12px;
}
.ihc-tp-faq .wp-block-details:last-child { margin-bottom: 0; }
.ihc-tp-faq .wp-block-details summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px clamp(14px, 1.4vw, 20px);
  list-style: none;
  cursor: pointer;
  font-size: clamp(13px, 1.05vw, 15px);
  font-weight: 600;
  color: var(--ihc-ink);
}
.ihc-tp-faq .wp-block-details summary::-webkit-details-marker { display: none; }
.ihc-tp-faq .wp-block-details summary::after {
  content: "";
  flex: 0 0 auto;
  width: 10px;
  height: 10px;
  border-right: 2px solid var(--ihc-accent);
  border-bottom: 2px solid var(--ihc-accent);
  transform: translateY(-3px) rotate(45deg);
  transition: transform .2s ease;
}
.ihc-tp-faq .wp-block-details[open] summary::after { transform: translateY(2px) rotate(-135deg); }
.ihc-tp-faq .wp-block-details summary:focus-visible { outline: 2px solid var(--ihc-accent); outline-offset: 2px; border-radius: 12px; }
.ihc-tp-faq .wp-block-details p {
  margin: 0;
  padding: 0 clamp(14px, 1.4vw, 20px) 16px;
  font-size: clamp(12.5px, 1vw, 14px);
  line-height: 1.6;
  color: var(--ihc-muted);
}

/* --- 8. Idopontfoglalas sav --- */
.ihc-tp-book { padding-block: clamp(24px, 3vw, 44px); }
.ihc-tp-book__inner {
  display: flex;
  align-items: center;
  gap: clamp(16px, 2vw, 32px);
  flex-wrap: wrap;
  background: linear-gradient(135deg, #06566A 0%, #0B7F94 100%);
  border-radius: var(--ihc-radius-lg);
  padding: clamp(24px, 2.8vw, 40px) clamp(22px, 2.6vw, 40px);
}
.ihc-tp-book__icon { margin: 0; flex: 0 0 auto; }
.ihc-tp-book__icon img { width: clamp(44px, 3.6vw, 56px); }
.ihc-tp-book__text { flex: 1 1 320px; min-width: 0; }
.ihc-tp-book__text.ihc-tp-book__text > * { margin-block-start: 0; }
.ihc-tp-book h2 { margin: 0 0 8px; color: #fff; font-size: clamp(19px, 1.9vw, 28px); line-height: 1.28; }
.ihc-tp-book p { margin: 0; color: rgba(255, 255, 255, .85); font-size: clamp(13px, 1.05vw, 15px); }
.ihc-tp-book__btn { margin: 0; flex: 0 0 auto; }

/* --- Reszponziv --- */
@media (max-width: 1180px) {
  .ihc-tp-cards--5 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 1023px) {
  .ihc-tp-hero__grid,
  .ihc-tp-split,
  .ihc-tp-two { grid-template-columns: 1fr; }
  .ihc-tp-hero__media { width: 100%; }
  .ihc-tp-hero__media img { aspect-ratio: 16 / 10; border-radius: var(--ihc-radius-lg); }
  .ihc-tp-cards--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ihc-tp-steps { grid-template-columns: 1fr; gap: clamp(22px, 4vw, 32px); }
  .ihc-tp-steps::before { display: none; }
  .ihc-tp-step__num { box-shadow: none; }
}
@media (max-width: 720px) {
  .ihc-tp-cards--5,
  .ihc-tp-cards--4,
  .ihc-tp-mini { grid-template-columns: 1fr; }
  .ihc-tp-cta__inner,
  .ihc-tp-book__inner { flex-direction: column; align-items: flex-start; }
}


/* ==========================================================================
   20. MOBIL OFFCANVAS MENU
   ========================================================================== */
@media (max-width: 999px) {
  #mega-menu-wrap-primary .mega-menu-toggle { background: transparent; }
  /* A megamenu almenui a mobil paneleben ne csukjak be a teljes menut */
  #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item ul.mega-sub-menu { position: static; box-shadow: none; }
  /* A kozossegi ikonok ferjenek ki egy sorba az offcanvas aljan */
  #offcanvas .ct-header-socials .ct-social-box,
  .ct-panel .ct-header-socials .ct-social-box { gap: 6px; flex-wrap: nowrap; }
  #offcanvas .ct-header-socials [data-color] a,
  .ct-panel .ct-header-socials [data-color] a { width: 30px; height: 30px; }
  #offcanvas .ct-header-socials svg,
  .ct-panel .ct-header-socials svg { width: 14px; height: 14px; }
}


/* ==========================================================================
   21. KARTYA HOVER
   Feher hatteru, ikonos kartyak: minimalis extra arnyek es emelkedes.
   ========================================================================== */
.ihc-therapy:hover,
.ihc-therapy:focus-within,
.ihc-tp-card:hover,
.ihc-tp-card:focus-within,
.ihc-sb__card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(2, 63, 85, .14);
  border-color: rgba(7, 128, 143, .32);
}
@media (prefers-reduced-motion: reduce) {
  .ihc-therapy, .ihc-tp-card, .ihc-sb__card { transition: none; }
  .ihc-therapy:hover, .ihc-tp-card:hover, .ihc-sb__card:hover { transform: none; }
}


/* ==========================================================================
   22. EYEBROW + CIMSOR TERKOZOK
   ========================================================================== */
.ihc-eyebrow + h1,
.ihc-eyebrow + h2,
.ihc-eyebrow + h3,
.ihc-eyebrow + .wp-block-heading { margin-top: 0; }
.ihc-head .ihc-eyebrow { margin-bottom: 8px; }


/* ==========================================================================
   23. HAMAROSAN OLDAL
   ========================================================================== */
.ihc-soon.ihc-soon { margin-block: 0; }
.ihc-soon {
  background: linear-gradient(180deg, #F8FAFB 0%, #E9F1F3 100%);
  padding-block: clamp(60px, 9vw, 140px);
}
.ihc-soon__box {
  max-width: 720px;
  margin-inline: auto;
  padding: clamp(28px, 4vw, 56px);
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius-lg);
  box-shadow: 0 18px 50px rgba(2, 63, 85, .08);
  text-align: center;
}
.ihc-soon__box h1,
.ihc-soon__box h2 {
  margin: 0 0 16px;
  color: var(--ihc-deep);
  font-size: clamp(28px, 4vw, 46px);
  line-height: 1.15;
}
.ihc-soon__box .ihc-lead { margin: 0 auto; max-width: 520px; }
.ihc-soon__social.ihc-soon__social { justify-content: center; gap: 10px; margin-top: clamp(24px, 3vw, 36px); }
.ihc-soon__social .wp-social-link {
  width: 44px;
  height: 44px;
  background: var(--ihc-surface);
  border-radius: 999px;
  transition: background .2s ease;
}
.ihc-soon__social .wp-social-link:hover { background: var(--ihc-accent); }
.ihc-soon__social .wp-social-link svg { fill: var(--ihc-deep); }
.ihc-soon__social .wp-social-link:hover svg { fill: #fff; }


/* ==========================================================================
   24. CIKKEK ARCHIVUM + OLDALSAV
   ========================================================================== */

/* --- Fejlec --- */
/* A page-title.min.css a sajat fajlunk UTAN toltodik be es a hero paddingot a
   --container-padding valtozoval allitja. Ezert egyreszt magat a valtozot
   allitjuk be, masreszt nagyobb sulyu szelektorral irjuk felul a paddingot. */
body[data-prefix="blog"] .hero-section[data-type="type-2"],
body[data-prefix="categories"] .hero-section[data-type="type-2"] {
  background-color: transparent;
  --container-padding: clamp(32px, 3.6vw, 58px) clamp(24px, 3vw, 48px);
}
body[data-prefix="blog"] .hero-section[data-type="type-2"] > .entry-header,
body[data-prefix="categories"] .hero-section[data-type="type-2"] > .entry-header {
  background: linear-gradient(180deg, #F8FAFB 0%, #E9F1F3 100%);
  border-radius: var(--ihc-radius-lg);
  padding: clamp(32px, 3.6vw, 58px) clamp(24px, 3vw, 48px);
  text-align: center;
}
.blog .page-title,
.archive .page-title {
  margin: 0 0 16px;
  color: var(--ihc-deep);
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.12;
}
.blog .page-description,
.archive .page-description { max-width: 720px; margin-inline: auto; }
.blog .page-description p,
.archive .page-description p {
  margin: 0;
  color: var(--ihc-muted);
  font-size: clamp(15px, 1.25vw, 18px);
  line-height: 1.7;
}
/* Levegosebb sav a fejlec es a kartyaracs kozott */
.blog .hero-section + .ct-container,
.archive .hero-section + .ct-container { padding-top: clamp(36px, 4.4vw, 68px); }

/* --- Kartyaracs --- */
/* Egy sorban egy cikk: bal oldalt kisebb kep, jobbra a szoveg.
   A keposzlop abszolut pozicioval fut a kartya teljes magassagaban: igy harom
   oldalon pontosan a kerethez fut, es sem a flex stretch, sem a Blocksy
   keparany-tarto ::before pszeudoeleme nem tudja elrontani.
   A helyet a kartya bal oldali paddingja tartja fenn. */
.entries[data-layout] {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(14px, 1.6vw, 22px);
}
.entries[data-layout] .entry-card {
  --ihc-thumb: clamp(180px, 22vw, 300px);
  position: relative;
  display: block;
  margin: 0;
  padding: 0 0 0 var(--ihc-thumb);
  min-height: 200px;
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius);
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(2, 63, 85, .05);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.entries[data-layout] .entry-card:hover,
.entries[data-layout] .entry-card:focus-within {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(2, 63, 85, .14);
  border-color: rgba(7, 128, 143, .32);
}
@media (prefers-reduced-motion: reduce) {
  .entries[data-layout] .entry-card { transition: none; }
  .entries[data-layout] .entry-card:hover { transform: none; }
}
/* A Blocksy sajat szabalyai erosebbek (0,4,1):
   [data-archive=default][data-layout=simple] article > .ct-media-container
   { max-width: 40% } es :not(.boundless-image) { align-self: center }
   Ezeket csak !important-tal lehet felulirni - ezert indokolt. */
.entries[data-layout] .entry-card > .ct-media-container {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  align-self: stretch !important;
  display: block;
  width: var(--ihc-thumb);
  max-width: none !important;
  margin: 0;
  border-radius: 0;
  overflow: hidden;
}
/* A Blocksy egy ::before pszeudoelem padding-bottom-javal tartja a keparanyt;
   itt a magassagot a kartya adja, ezert kiiktatjuk. */
.entries[data-layout] .entry-card > .ct-media-container::before { padding-bottom: 0; }
.entries[data-layout] .entry-card > .ct-media-container img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: auto !important;
  object-fit: cover;
  border-radius: 0;
}
.entries[data-layout] .entry-card .card-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  gap: 0;
  padding: clamp(18px, 2vw, 30px);
}
.entries[data-layout] .entry-card .entry-title {
  margin: 0 0 10px;
  font-size: clamp(17px, 1.5vw, 21px);
  line-height: 1.3;
}
.entries[data-layout] .entry-card .entry-title a { color: var(--ihc-deep); text-decoration: none; }
.entries[data-layout] .entry-card .entry-title a:hover { color: var(--ihc-accent); }
.entries[data-layout] .entry-card .entry-meta {
  margin: 0 0 12px;
  gap: 10px;
  font-size: 12px;
  color: var(--ihc-muted);
}
.entries[data-layout] .entry-card .entry-meta .meta-categories a {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 999px;
  background: var(--ihc-surface);
  color: var(--ihc-accent);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  text-decoration: none;
}
.entries[data-layout] .entry-card .entry-excerpt {
  margin: 0 0 16px;
  color: var(--ihc-muted);
  font-size: 14px;
  line-height: 1.6;
}
.entries[data-layout] .entry-card .ct-button,
.entries[data-layout] .entry-card .ct-button-ghost {
  margin-top: auto;
  align-self: flex-start;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
}

@media (max-width: 680px) {
  .entries[data-layout] .entry-card { padding-left: 0; min-height: 0; }
  .entries[data-layout] .entry-card > .ct-media-container { position: relative; bottom: auto; width: 100%; max-width: 100% !important; aspect-ratio: 16 / 10; }
  .entries[data-layout] .entry-card > .ct-media-container img { position: absolute; inset: 0; height: 100%; }
}

/* --- Oldalsav (Cikkek oldalsav ujrafelhasznalhato blokk) --- */
.ct-sidebar .ihc-sb { display: grid; gap: clamp(14px, 1.4vw, 20px); }
.ihc-sb__card,
.ihc-sb__cta {
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius);
  padding: clamp(16px, 1.8vw, 24px);
  transition: box-shadow .25s ease, border-color .25s ease, transform .25s ease;
}
.ihc-sb__title {
  margin: 0 0 14px;
  color: var(--ihc-deep);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.ihc-sb__cats ul,
.ihc-sb__cats { margin: 0; padding-left: 0; list-style: none; }
.ihc-sb__cats li { margin: 0 0 9px; }
.ihc-sb__cats a { color: var(--ihc-muted); font-size: 14px; text-decoration: none; }
.ihc-sb__cats a:hover { color: var(--ihc-accent); }

.ihc-sb__posts ul { margin: 0; padding-left: 0; list-style: none; display: grid; gap: 14px; }
.ihc-sb__posts li { display: grid; grid-template-columns: 68px minmax(0, 1fr); gap: 12px; align-items: start; }
.ihc-sb__thumb img { display: block; width: 68px; height: 52px; object-fit: cover; border-radius: 10px; }
.ihc-sb__ptxt > * { margin-block-start: 0; }
.ihc-sb__ptitle { margin: 0 0 4px; font-size: 13.5px; line-height: 1.35; }
.ihc-sb__ptitle a { color: var(--ihc-deep); text-decoration: none; }
.ihc-sb__ptitle a:hover { color: var(--ihc-accent); }
.ihc-sb__pdate { margin: 0; color: var(--ihc-muted); font-size: 11.5px; }

.ihc-sb__cta { background: linear-gradient(140deg, var(--ihc-deep) 0%, var(--ihc-petrol) 100%); border: 0; }
.ihc-sb__cta h3,
.ihc-sb__cta .wp-block-heading { margin: 0 0 8px; color: #fff; font-size: 17px; line-height: 1.25; }
.ihc-sb__cta p { margin: 0 0 14px; color: rgba(255,255,255,.88); font-size: 13.5px; line-height: 1.55; }
.ihc-sb__cta .wp-block-button__link { background: #fff; color: var(--ihc-deep); font-size: 12px; padding: 11px 20px; }
.ihc-sb__cta .wp-block-button__link:hover { background: rgba(255,255,255,.86); }


/* ==========================================================================
   25. CIKK SABLON (.ihc-art-*)
   Egyseges kiemelesek: csak a hatterszin ter el, nincs oldalso csik,
   mind lekerekitett; a betumeret mindenhol azonos.
   ========================================================================== */
.single-post article .entry-content {
  --ihc-art-gap: clamp(30px, 3.4vw, 48px);
  font-size: clamp(15px, 1.2vw, 17px);
  line-height: 1.75;
}
.single-post article .entry-content > p { margin-block: 0 1.35em; color: var(--ihc-muted); }
.single-post article .entry-content h2 { margin: calc(var(--ihc-art-gap) * 1.45) 0 16px; font-size: clamp(22px, 2.2vw, 30px); line-height: 1.25; color: var(--ihc-deep); }
.single-post article .entry-content h3 { margin: calc(var(--ihc-art-gap) * .75) 0 12px; font-size: clamp(17px, 1.5vw, 21px); color: var(--ihc-deep); }

.single-post article .entry-content a:not(.wp-block-button__link):not(.wp-element-button) {
  color: var(--ihc-accent);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.single-post article .entry-content a:not(.wp-block-button__link):not(.wp-element-button):hover { color: var(--ihc-deep); }
/* A gombokon ne legyen alahuzas */
.single-post article .entry-content .wp-block-button__link { text-decoration: none; }

/* Bevezeto osszefoglalo: ugyanakkora betumeret, csak mas hatterszin */
.single-post article .entry-content > p.ihc-art__lead {
  padding: clamp(16px, 1.8vw, 24px) clamp(18px, 2vw, 28px);
  background: #E7F0F3;
  border-radius: var(--ihc-radius);
  color: var(--ihc-ink);
  font-size: inherit;
  line-height: 1.7;
}

/* Egyseges kiemelo dobozok */
.ihc-callout,
.ihc-art__note,
.ihc-art__box,
.ihc-art__related {
  padding: clamp(16px, 1.8vw, 24px) clamp(18px, 2vw, 28px);
  border-radius: var(--ihc-radius);
}
.ihc-callout { background: var(--ihc-tint); }
.ihc-art__note { background: #E7F0F3; }
.ihc-art__box { background: var(--ihc-surface); border: 1px solid var(--ihc-line); }
.ihc-art__related { background: #fff; border: 1px solid var(--ihc-line); }
.ihc-callout > *,
.ihc-art__note > *,
.ihc-art__box > *,
.ihc-art__related > * { margin-block-start: 0; }
.ihc-callout p,
.ihc-art__note p,
.ihc-art__box p { margin: 0; color: var(--ihc-ink); }
.ihc-art__note h3,
.ihc-art__box h3 { margin: 0 0 10px; font-size: clamp(16px, 1.35vw, 19px); }
.ihc-art__note p + ul,
.ihc-art__box p + ul { margin-top: 12px; }

/* Idezet */
.ihc-art__quote.wp-block-quote {
  padding: clamp(16px, 1.8vw, 24px) clamp(18px, 2vw, 28px);
  background: #EFF3F4;
  border: 0;
  border-radius: var(--ihc-radius);
}
.ihc-art__quote.wp-block-quote p { margin: 0 0 8px; color: var(--ihc-ink); font-style: normal; }
.ihc-art__quote.wp-block-quote cite { color: var(--ihc-muted); font-size: 13px; font-style: normal; }

/* Felsorolasok */
.single-post article .entry-content ul.ihc-art__list { margin: 0; padding-left: 0; list-style: none; }
.single-post article .entry-content ul.ihc-art__list li {
  position: relative;
  margin: 0 0 10px;
  padding-left: 26px;
  color: var(--ihc-muted);
}
.single-post article .entry-content ul.ihc-art__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .6em;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--ihc-accent);
}
.single-post article .entry-content ul.ihc-art__list li:last-child { margin-bottom: 0; }
.ihc-art__list--links li::before { top: .62em; }

/* Kepek + kepalairas */
.single-post article .entry-content .ihc-art__img { margin-inline: 0; }
.single-post article .entry-content .ihc-art__img img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--ihc-radius-lg);
}
.single-post article .entry-content .ihc-art__img figcaption {
  margin-top: 10px;
  color: var(--ihc-muted);
  font-size: 13px;
  line-height: 1.5;
  text-align: left;
}

/* CTA doboz */
.ihc-art__cta {
  padding: clamp(20px, 2.2vw, 32px);
  background: linear-gradient(140deg, var(--ihc-deep) 0%, var(--ihc-petrol) 100%);
  border-radius: var(--ihc-radius-lg);
}
.ihc-art__cta > * { margin-block-start: 0; }
.single-post article .entry-content .ihc-art__cta h3,
.ihc-art__cta .wp-block-heading { margin: 0 0 8px; color: #fff; }
.ihc-art__cta p { margin: 0 0 16px; color: rgba(255,255,255,.9); }
.ihc-art__cta .wp-block-button__link { background: #fff; color: var(--ihc-deep); }
.ihc-art__cta .wp-block-button__link:hover { background: rgba(255,255,255,.86); }
.ihc-art__cta .ihc-btn--ghost .wp-block-button__link { background: transparent; color: #fff; border-color: rgba(255,255,255,.7); }
.ihc-art__cta .ihc-btn--ghost .wp-block-button__link:hover { background: #fff; color: var(--ihc-deep); border-color: #fff; }

/* Ajanlo */
.ihc-art__related li { color: var(--ihc-muted); }
.ihc-art__related a { font-weight: 700; }

/* Cikk fejlec: legyen levego a menu es a cimsor kozott */
body.single-post .hero-section[data-type="type-1"] { padding-top: clamp(30px, 3.6vw, 60px); }
body.single-post .hero-section[data-type="type-1"] .page-title { color: var(--ihc-deep); line-height: 1.15; }

/* A WP inline globalis stilusa (:root :where(.is-layout-flow) > *) nullazza a
   blokkok also margojat, es a sajat fajlunk UTAN toltodik be. Ezert a
   fuggoleges ritmust nagyobb sulyu (0,3,0) szelektorral allitjuk be. */
.single-post article .entry-content > .ihc-callout,
.single-post article .entry-content > .ihc-art__note,
.single-post article .entry-content > .ihc-art__box,
.single-post article .entry-content > .ihc-art__related,
.single-post article .entry-content > .ihc-art__quote,
.single-post article .entry-content > .ihc-art__img,
.single-post article .entry-content > .ihc-art__table,
.single-post article .entry-content > .ihc-art__cta { margin-block: var(--ihc-art-gap); }
.single-post article .entry-content > p.ihc-art__lead { margin-block: 0 var(--ihc-art-gap); }
.single-post article .entry-content > h2 { margin-block: calc(var(--ihc-art-gap) * 1.45) 16px; }
.single-post article .entry-content > h3 { margin-block: calc(var(--ihc-art-gap) * .75) 12px; }
.single-post article .entry-content > p { margin-block: 0 1.35em; }
.single-post article .entry-content > ul.ihc-art__list { margin-block: 0 var(--ihc-art-gap); }


/* ==========================================================================
   26. GYIK OLDAL (Gyakran Ismetelt Kerdesek)
   Nincs hero hatterkep es sotet fedes: az aloldalak vilagos fejlecet kap,
   a kerdesek a terapia-oldalakrol mar ismert core/details harmonikaban.
   ========================================================================== */
.ihc-gy-hero.ihc-gy-hero,
.ihc-gy-sec.ihc-gy-sec { margin-block: 0; }

.ihc-gy-hero {
  background: linear-gradient(180deg, #F8FAFB 0%, #EDF3F5 100%);
  padding-block: clamp(34px, 4.2vw, 66px);
  text-align: center;
}
.ihc-gy-hero__in.ihc-gy-hero__in > * { margin-block-start: 0; }
.ihc-gy-hero .ihc-eyebrow { margin: 0 0 10px; }
.ihc-gy-hero h1 {
  margin: 0 0 14px;
  font-size: clamp(30px, 3.6vw, 50px);
  line-height: 1.12;
  color: var(--ihc-deep);
}
.ihc-gy-hero .ihc-lead {
  max-width: 760px;
  margin: 0 auto;
  color: var(--ihc-muted);
  font-size: clamp(14px, 1.2vw, 17px);
  line-height: 1.7;
}

/* Ugrolinkek (pirula gombok) */
.ihc-gy-nav.ihc-gy-nav {
  margin-block: clamp(22px, 2.4vw, 34px) 0;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}
.ihc-gy-nav .wp-block-button__link {
  background: #fff;
  color: var(--ihc-deep);
  border: 1px solid var(--ihc-line);
  border-radius: 999px;
  padding: 11px 22px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.ihc-gy-nav .wp-block-button__link:hover,
.ihc-gy-nav .wp-block-button__link:focus-visible {
  background: var(--ihc-accent);
  border-color: var(--ihc-accent);
  color: #fff;
}

/* Kerdes-szekciok */
.ihc-gy-sec {
  padding-block: clamp(34px, 3.8vw, 58px);
  scroll-margin-top: 110px;   /* a ragados fejlec ne takarja el a cimet */
}
.ihc-gy-sec .ihc-head { margin-bottom: clamp(18px, 2vw, 28px); text-align: center; }
.ihc-gy-sec .ihc-head.ihc-head > * { margin-block-start: 0; }
.ihc-gy-sec .ihc-head h2 { margin: 0; }
.ihc-gy-sec .ihc-tp-faq { max-width: 880px; margin-inline: auto; }
/* Szurke savon feher, feher savon halvany a doboz - mindig legyen kontraszt */
.ihc-gy-sec.ihc-section--tint .ihc-tp-faq .wp-block-details { background: #fff; }

/* Tobb bekezdes / felsorolas is fer egy valaszba */
.ihc-tp-faq .wp-block-details > p:not(:last-child) { padding-bottom: 9px; }
.ihc-tp-faq .wp-block-details > ul,
.ihc-tp-faq .wp-block-details > ol {
  margin: 0;
  padding: 0 clamp(14px, 1.4vw, 20px) 16px 36px;
  font-size: clamp(12.5px, 1vw, 14px);
  line-height: 1.6;
  color: var(--ihc-muted);
}
.ihc-tp-faq .wp-block-details > ul li,
.ihc-tp-faq .wp-block-details > ol li { margin-bottom: 7px; }
.ihc-tp-faq .wp-block-details > ul li:last-child,
.ihc-tp-faq .wp-block-details > ol li:last-child { margin-bottom: 0; }
.ihc-tp-faq .wp-block-details > p + ul,
.ihc-tp-faq .wp-block-details > p + ol { padding-top: 0; }

/* Szekciok alatti atvezeto gomb a terapia aloldalra */
.ihc-gy-more.ihc-gy-more { margin-block: clamp(20px, 2.2vw, 30px) 0; justify-content: center; }

@media (max-width: 600px) {
  .ihc-gy-nav .wp-block-button__link { padding: 9px 16px; font-size: 11px; }
}


/* ==========================================================================
   27. ARAINK - kartya aljan link jellegu gomb
   ========================================================================== */
/* A Stackable kartya tartalma oszlopiranyu flex legyen, hogy a link a
   tartalom utan, egyseges helyen alljon. */
.stk-block-column__content:has(> .stk-inner-blocks > .ihc-price-link) { height: 100%; }
.stk-block-column__content > .stk-inner-blocks:has(> .ihc-price-link) {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.ihc-price-link {
  margin: 0;
  padding: 18px 0 15px;   /* a gomb alatt 15px terkoz */
  text-align: center;
}
.ihc-price-link a {
  display: inline-block;
  padding: 2px 0;
  background: none;
  border: 0;
  border-bottom: 1px solid transparent;
  color: var(--ihc-accent);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-decoration: none;
  transition: color .2s ease, border-color .2s ease;
}
.ihc-price-link a::after { content: " \2192"; }
.ihc-price-link a:hover,
.ihc-price-link a:focus-visible { color: var(--ihc-deep); border-bottom-color: currentColor; }


/* ==========================================================================
   28. CIKK TABLAZAT (.ihc-art__table)
   Asztali nezetben normal tablazat, 700px alatt a sorok kartyakka bomlanak,
   igy nincs vizszintes gorgetes es telefonon is olvashato marad.
   ========================================================================== */
.ihc-art__table {
  margin: 0;
  overflow-x: auto;               /* vegso menedek nagyon szeles tablaknal */
  -webkit-overflow-scrolling: touch;
}
.ihc-art__table table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius);
  overflow: hidden;
  font-size: clamp(13px, 1.05vw, 15px);
  line-height: 1.55;
}
.ihc-art__table thead th {
  padding: 12px clamp(10px, 1.1vw, 16px);
  background: var(--ihc-deep);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-align: left;
  border: 0;
}
.ihc-art__table tbody td {
  padding: 12px clamp(10px, 1.1vw, 16px);
  border: 0;
  border-top: 1px solid var(--ihc-line);
  color: var(--ihc-muted);
  vertical-align: top;
}
.ihc-art__table tbody tr:nth-child(odd) td { background: var(--ihc-surface); }
.ihc-art__table tbody td:first-child { color: var(--ihc-deep); font-weight: 700; }
.ihc-art__table figcaption { margin-top: 10px; color: var(--ihc-muted); font-size: 12.5px; }

/* --- Telefon: minden sor onallo kartya --- */
@media (max-width: 700px) {
  .ihc-art__table table { border: 0; background: none; }
  .ihc-art__table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .ihc-art__table tbody,
  .ihc-art__table tr,
  .ihc-art__table td { display: block; width: 100%; }
  .ihc-art__table tbody tr {
    margin-bottom: 12px;
    background: #fff;
    border: 1px solid var(--ihc-line);
    border-radius: var(--ihc-radius);
    overflow: hidden;
  }
  .ihc-art__table tbody tr:last-child { margin-bottom: 0; }
  .ihc-art__table tbody tr:nth-child(odd) td { background: none; }
  .ihc-art__table tbody td { border-top: 1px solid var(--ihc-line); padding: 11px 16px; }
  .ihc-art__table tbody td:first-child {
    border-top: 0;
    background: var(--ihc-surface);
    font-size: 12px;
    letter-spacing: .04em;
    text-transform: uppercase;
  }
  /* Az oszlopcimkeket a fejlec helyett a cellak ele irjuk ki.
     A ket cimke felulirhato a tablazatra tett modositó osztallyal. */
  .ihc-art__table--compare { --ihc-col2: "mHBOT"; --ihc-col3: "Klasszikus HBOT"; }
  .ihc-art__table--light { --ihc-col2: "Hullamhossz"; --ihc-col3: "Mire vizsgaljak"; }
  .ihc-art__table--comp2 { --ihc-col2: "Kompresszios harisnya"; --ihc-col3: "Gepi kompresszio"; }
  .ihc-art__table--robot { --ihc-col2: "Robotmasszazs"; --ihc-col3: "Kezi masszazs"; }
  .ihc-art__table--compare tbody td:nth-child(2)::before { content: var(--ihc-col2) ": "; }
  .ihc-art__table--compare tbody td:nth-child(3)::before { content: var(--ihc-col3) ": "; }
  .ihc-art__table--compare tbody td:nth-child(2)::before,
  .ihc-art__table--compare tbody td:nth-child(3)::before {
    display: block;
    margin-bottom: 2px;
    color: var(--ihc-accent);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
  }
}


/* ==========================================================================
   Zaras: kisebb altalanos finomitasok
   ========================================================================== */
/* Blocksy morzsamenu a cikkeken */
.ct-breadcrumbs { font-size: 12px; letter-spacing: .04em; }
.ct-breadcrumbs a { color: var(--ihc-muted); text-decoration: none; }
.ct-breadcrumbs a:hover { color: var(--ihc-accent); }

/* Kepek sose logjanak ki */
img { max-width: 100%; height: auto; }



/* ==========================================================================
   29. KESOBBI FINOMITASOK
   Azok a reszek, amelyek a szekciok elkeszulte utan, kozos csiszolas soran
   kerultek a fajlba.
   ========================================================================== */

/* --- Hero: teljes kepernyoszelesseg --- */
.ihc-hero.ihc-hero {
  margin-block: 0;
  margin-inline: calc(50% - 50vw);
  width: 100vw;
  max-width: 100vw;
}
.ihc-hero__slide { width: 100%; }

/* --- Mobil hero: allo hatterkep a Gutenbergbol szerkesztheto kepbol --- */
.ihc-hero .ihc-hero__mobile-img { display: none; }
@media (max-width: 900px) {
  .ihc-hero .wp-block-cover { min-height: clamp(620px, 155vw, 820px) !important; align-items: flex-end; }
  .ihc-hero__content { padding-top: 150px; padding-bottom: 48px; }
  /* A core hatterkepet elrejtjuk, helyette a .ihc-hero__mobile-img all a slide mogott */
  .ihc-hero .wp-block-cover { isolation: isolate; }
  .ihc-hero .wp-block-cover__image-background { display: none; }
  .ihc-hero .wp-block-cover__inner-container { position: static; }
  .ihc-hero .wp-block-cover__background { z-index: -1; }
  .ihc-hero .ihc-hero__mobile-img { display: block; position: absolute; inset: 0; margin: 0; z-index: -2; }
  .ihc-hero .ihc-hero__mobile-img img { width: 100%; height: 100%; object-fit: cover; }
  /* A bekezdes has-medium-font-size osztalyt kap, amit a WP !important-tal allit */
  .ihc-hero__inner > h2 + p + p { font-size: 12px !important; line-height: 1.45; }
  .ihc-hero__inner .wp-block-buttons { flex-wrap: nowrap; gap: 10px; }
  .ihc-hero__inner .wp-block-button__link { padding-inline: 16px; font-size: 12px; white-space: nowrap; }
}

/* --- Vendegvelemenyek: racsbol forgo elem lett --- */
.ihc-quotes-carousel { max-width: 90%; margin-inline: auto; }
/* Egyforma magassagu kartyak */
.ihc-quotes-carousel .stk-block-carousel__slider { align-items: stretch; }
.ihc-quotes-carousel .stk-block-carousel__slide,
.ihc-quotes-carousel .stk-block-column,
.ihc-quotes-carousel .stk-block-column > .stk-column-wrapper,
.ihc-quotes-carousel .stk-block-column .stk-block-content { height: 100%; }
.ihc-quotes-carousel .ihc-quote { height: 100%; }
/* A lapozo a kartyakon KIVUL, a 90%-os sav ket oldalan */
.ihc-quotes-carousel .stk-block-carousel__buttons {
  inset: 0 calc(-1 * clamp(30px, 3vw, 52px));
}

/* --- Ajandekutalvany + kapcsolat: egyforma magassag --- */
.ihc-cta-row { align-items: stretch; }
.ihc-cta-row > * { height: 100%; }
.ihc-voucher,
.ihc-contact-card { height: 100%; }

/* --- Lablec: bejelentkezes gomb es kozossegi ikonok --- */
footer.ct-footer .ihc-fbtns { margin: 0 0 20px; }
footer.ct-footer .ihc-fbtns .wp-block-button__link {
  background: #fff;
  color: var(--ihc-deep);
  border-radius: 999px;
  padding: 12px 26px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background .18s ease, color .18s ease;
}
footer.ct-footer .ihc-fbtns .wp-block-button__link:hover { background: rgba(255, 255, 255, .86); color: var(--ihc-deep); }
/* Az ikon toltse ki jobban a feher kort */
footer.ct-footer .ihc-fsocial .wp-block-social-link-anchor svg { width: 20px; height: 20px; }

/* --- Hirlevel urlap --- */
.ihc-newsletter__form input[type="text"],
.ihc-newsletter__form input[type="email"] {
  width: 100%;
  padding: 13px 16px;
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: 999px;
  font-size: 15px;
  color: var(--ihc-ink);
}
.ihc-newsletter__form input[type="submit"],
.ihc-newsletter__form button[type="submit"] {
  padding: 13px 28px;
  background: var(--ihc-accent);
  color: #fff;
  border: 0;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  cursor: pointer;
}
.ihc-newsletter__form input[type="submit"]:hover,
.ihc-newsletter__form button[type="submit"]:hover { background: var(--ihc-deep); }
/* A cikkek alatti hirlevel-sav (a modul illeszti be) */
.ihc-blog-newsletter { background: var(--ihc-surface); padding-block: clamp(34px, 4vw, 64px); }
.ihc-blog-newsletter .ihc-wrap > * { margin-block-start: 0; }

/* --- Galeria: fuggoleges ES vizszintes terkoz a kepek kozott --- */
/* A core a figure margojat nullazza, ezert a fuggoleges rest paddinggal adjuk. */
.ihc-gallery.ihc-gallery.wp-block-gallery {
  display: block;
  columns: 4;
  gap: normal;
  column-gap: clamp(14px, 1.4vw, 20px);
}
.ihc-gallery.ihc-gallery.wp-block-gallery > figure.wp-block-image {
  margin: 0;
  padding-bottom: clamp(14px, 1.4vw, 20px);
  break-inside: avoid;
  width: 100%;
}
@media (max-width: 1000px) { .ihc-gallery.ihc-gallery.wp-block-gallery { columns: 3; } }
@media (max-width: 700px)  { .ihc-gallery.ihc-gallery.wp-block-gallery { columns: 2; } }
@media (max-width: 460px)  { .ihc-gallery.ihc-gallery.wp-block-gallery { columns: 1; } }

.ihc-lightbox img { cursor: zoom-in; }


/* ==========================================================================
   30. BLOKK-KOZ (block gap) SEMLEGESITESE A SAJAT RACSAINKON
   A WordPress a blokkok kozti fuggoleges tavolsagot margin-block-start-tal
   adja:  :root :where(.is-layout-flow) > * { margin-block-start: 24px; }
   Egy grid/flex kontenerben ez a MASODIK elemtol kezdve lejjebb tolja es
   ennyivel alacsonyabbra vagja a kartyakat -- emiatt latszott minden
   racsban a bal szelso kartya nagyobbnak. Sajat kontenereinkben nullazzuk.
   A ketszerezett osztalynev adja a (0,2,0) specificitast, hogy a core
   :where()-es szabalya fole kerulhessen -- !important nelkul.
   ========================================================================== */
.ihc-therapies.ihc-therapies       > *,
.ihc-trust.ihc-trust               > *,
.ihc-about.ihc-about               > *,
.ihc-quotes.ihc-quotes             > *,
.ihc-cta-row.ihc-cta-row           > *,
.ihc-tp-hero__grid.ihc-tp-hero__grid > *,
.ihc-tp-mini.ihc-tp-mini           > *,
.ihc-tp-split.ihc-tp-split         > *,
.ihc-tp-cards.ihc-tp-cards         > *,
.ihc-tp-cta__inner.ihc-tp-cta__inner > *,
.ihc-tp-steps.ihc-tp-steps         > *,
.ihc-tp-two.ihc-tp-two             > *,
.ihc-tp-book__inner.ihc-tp-book__inner > * { margin-block-start: 0; }

/* Egyforma magas kartyak / panelek minden racsban */
.ihc-tp-mini,
.ihc-tp-cards,
.ihc-tp-two { align-items: stretch; }


/* ==========================================================================
   31. TERAPIA ALOLDAL HERO: kulon asztali es mobil hatterkep
   Asztali nezet : a szekcio sajat hatterkepe (Gutenberg -> Csoport hatterkep).
   Mobil nezet   : a .ihc-tp-hero__mobile-img kepblokk (allo kep) feszul ki.
   Igy a szerkesztoben mindket kep kulon cserelheto, plugin nelkul.
   ========================================================================== */
.ihc-tp-hero.ihc-tp-hero {
  position: relative;
  isolation: isolate;
  padding-block: 0;
  background-color: var(--ihc-tint);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
/* Vilagos fatyol a szoveg alatt, hogy barmilyen fotoval olvashato maradjon */
.ihc-tp-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(90deg,
    rgba(255, 255, 255, .94)   0%,
    rgba(255, 255, 255, .86)  30%,
    rgba(255, 255, 255, .45)  52%,
    rgba(255, 255, 255, 0)    72%);
}
/* A .ihc-wrap NEM lehet pozicionalt: kulonben a mobil hatterkep (z-index:-1)
   nem tudna a ::before fatyol ala kerulni, es a kep takarna a szoveget. */
.ihc-tp-hero > .ihc-wrap { position: static; }

/* A hero szovege egy hasabban, a bal oldalon */
.ihc-tp-hero__grid.ihc-tp-hero__grid {
  position: relative;
  z-index: 2;
  display: block;
  max-width: 620px;
  padding-top: clamp(40px, 5vw, 76px);
}
/* Asztali nezetben a mobil hatterkep rejtve */
.ihc-tp-hero__media { display: none; }

@media (max-width: 900px) {
  /* Mobilon az asztali hatterkep helyett a feltoltott allo kep feszul ki */
  .ihc-tp-hero.ihc-tp-hero { background-image: none; }
  .ihc-tp-hero::before {
    background: linear-gradient(180deg,
      rgba(255, 255, 255, .93)   0%,
      rgba(255, 255, 255, .80)  40%,
      rgba(255, 255, 255, .34)  76%,
      rgba(255, 255, 255, .14) 100%);
  }
  .ihc-tp-hero__media {
    display: block;
    position: absolute;
    inset: 0;
    z-index: -1;
    width: auto;
    margin: 0;
  }
  .ihc-tp-hero__media .wp-block-image { margin: 0; height: 100%; }
  .ihc-tp-hero__media img {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
    border-radius: 0;
  }
  .ihc-tp-hero__grid.ihc-tp-hero__grid { max-width: none; }
}


/* ==========================================================================
   32. TERAPIA ALOLDAL: petrol CTA sav
   ========================================================================== */
/* A sav folott/alatt ne maradjon feher csik (a WP blokk-koz margoja) */
.ihc-tp-cta.ihc-tp-cta     { margin-block: 0; }
.ihc-tp-cta.ihc-tp-cta + * { margin-block-start: 0; }

/* A cimsor es a gomb a tartalmi savon belul, kicsit beljebb */
.ihc-tp-cta__inner { padding-inline: clamp(0px, 1.4vw, 22px); }
.ihc-tp-cta h2     { font-size: clamp(22px, 2.5vw, 36px); }


/* ==========================================================================
   33. ARAINK: az "Ismerd meg a terapiat" link minden kartyan egy vonalban
   ========================================================================== */
/* Az oszlop tartalma oszlopiranyu flex (27. szekcio), a linket a
   szabad hely felemesztesevel toljuk a kartya aljara. */
.ihc-price-link { margin-top: auto; }


/* ==========================================================================
   34. FOOLDAL: levegosebb szekciofej a problema-carousel felett
   ========================================================================== */
.ihc-head:has(+ .ihc-problems) { margin-bottom: clamp(52px, 6vw, 84px); }


/* ==========================================================================
   35. FINOMITASOK: hero savok, CTA sav, gombok, galeria terkoz
   ========================================================================== */

/* --- Fooldali hero: teljes kepernyoszelesseg ---
   A tema/Stackable sajat szabalyai a puszta osztalyt felulirjak, ezert kell
   a szulo + ketszerezett osztaly es az !important. */
.entry-content > .ihc-hero.ihc-hero {
  margin-left:  calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  width: 100vw !important;
  max-width: 100vw !important;
}

/* A feher fatyol ne fuggoleges vonalban vagjon: lent nyuljon tovabb jobbra. */
.ihc-hero .wp-block-cover::after {
  background: linear-gradient(74deg,
    rgba(255, 255, 255, .96)  0%,
    rgba(255, 255, 255, .90) 24%,
    rgba(255, 255, 255, .62) 40%,
    rgba(255, 255, 255, .22) 55%,
    rgba(255, 255, 255, 0)   68%);
}

/* --- Terapia aloldal hero: kiegyensulyozott savmagassag --- */
.ihc-tp-hero.ihc-tp-hero {
  display: flex;
  align-items: center;
  min-height: clamp(460px, 38vw, 620px);
}
.ihc-tp-hero > .ihc-wrap { flex: 1 1 auto; }
/* a blokk sajat also belso margoja 50px, ugyanennyit felulre is */
.ihc-tp-hero__grid.ihc-tp-hero__grid { padding-top: 50px; }
/* ugyanaz a ferde fatyol, mint a fooldalon */
.ihc-tp-hero::before {
  background: linear-gradient(74deg,
    rgba(255, 255, 255, .96)  0%,
    rgba(255, 255, 255, .90) 26%,
    rgba(255, 255, 255, .60) 44%,
    rgba(255, 255, 255, .20) 58%,
    rgba(255, 255, 255, 0)   72%);
}
@media (max-width: 900px) {
  .ihc-tp-hero.ihc-tp-hero { min-height: 0; display: block; }
  .ihc-tp-hero::before {
    background: linear-gradient(180deg,
      rgba(255, 255, 255, .93)   0%,
      rgba(255, 255, 255, .80)  40%,
      rgba(255, 255, 255, .34)  76%,
      rgba(255, 255, 255, .14) 100%);
  }
}

/* --- Petrol CTA sav: cimsor balrol, gomb jobbrol 100px-re --- */
.ihc-tp-cta__inner { padding-inline: min(100px, 7vw); }

/* --- Sotet savokon a "szellos" gomb feher keretes legyen --- */
.ihc-tp-cta  .wp-block-button.ihc-btn--ghost > .wp-block-button__link,
.ihc-tp-book .wp-block-button.ihc-btn--ghost > .wp-block-button__link,
.ihc-tp-cta  .ihc-btn--ghost .wp-block-button__link,
.ihc-tp-book .ihc-btn--ghost .wp-block-button__link {
  background: transparent;
  color: #fff;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .85);
}
.ihc-tp-cta  .wp-block-button.ihc-btn--ghost > .wp-block-button__link:hover,
.ihc-tp-book .wp-block-button.ihc-btn--ghost > .wp-block-button__link:hover,
.ihc-tp-cta  .ihc-btn--ghost .wp-block-button__link:hover,
.ihc-tp-book .ihc-btn--ghost .wp-block-button__link:hover {
  background: #fff;
  color: var(--ihc-deep);
  box-shadow: inset 0 0 0 1px #fff;
}

/* --- Galeria: 30px terkoz a szekciofej es a kepek kozott --- */
.ihc-head:has(+ .ihc-gallery),
.ihc-head:has(+ .ihc-gal),
.ihc-head:has(+ .wp-block-gallery) { margin-bottom: 30px; }

/* ==========================================================================
   36. JAVITASOK: hamarosan-oldal ikonjai, hirlevel sav hattere
   ========================================================================== */
/* A core .has-icon-color szabalya (fill: currentColor) a sajat lapunk UTAN
   toltodik be, ezert kell a magasabb specificitas -- !important nelkul. */
.ihc-soon__social.ihc-soon__social .wp-social-link .wp-block-social-link-anchor,
.ihc-soon__social.ihc-soon__social .wp-social-link .wp-block-social-link-anchor svg { color: var(--ihc-deep); fill: var(--ihc-deep); }
.ihc-soon__social.ihc-soon__social .wp-social-link:hover .wp-block-social-link-anchor,
.ihc-soon__social.ihc-soon__social .wp-social-link:hover .wp-block-social-link-anchor svg { color: #fff; fill: #fff; }

/* A cikkek alatti hirlevel-sav hattere feher (a kartya marad halvany) */
.ihc-blog-newsletter { background: #fff; }

/* ==========================================================================
   37. HATEKONYSAG MEGAMENU: nagyobb ajandekkartya-kep
   A kep a kartya teljes szelessegeben all (a belso margot negativ margoval
   vissza is vesszuk), a cimsor/bevezeto tomorebb, igy tobb fuggoleges hely
   marad a kepnek.
   ========================================================================== */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift { padding: clamp(18px, 1.8vw, 24px); }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__eyebrow { margin: 0 0 12px; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__title { margin: 0 0 8px; font-size: clamp(20px, 1.7vw, 26px); }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__lead { margin: 0 0 8px; font-size: clamp(12.5px, 1vw, 14px); }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__card { margin: 4px calc(-1 * clamp(18px, 1.8vw, 24px)) 0; flex: 1 1 auto; min-height: 0; display: flex; align-items: center; justify-content: center; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__card img { width: 100%; height: 100%; max-height: 100%; object-fit: contain; object-position: center; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__btns { padding-top: 12px; }


/* ==========================================================================
   38. HERO SAVOK VEGLEGES JAVITASA
   ========================================================================== */
/* A Stackable a teljes szelessegu blokk BELSO savjat visszafogja a tema
   blokkszelessegere (.stk-content-align max-width), ezert latszott a hero
   csak kontenerszelesnek, hiaba volt a kulso blokk 100vw. */
.ihc-hero .stk-block-carousel__content-wrapper,
.ihc-hero .stk-content-align,
.ihc-hero .stk-block-carousel__slider-wrapper {
  max-width: none !important;
  width: 100% !important;
  margin-inline: 0 !important;
}

/* Terapia hero: jobb oldali kepfokusz, keskenyebb feher fatyol. */
.ihc-tp-hero.ihc-tp-hero { background-position: right center; }
.ihc-tp-hero::before {
  background: linear-gradient(74deg,
    rgba(255, 255, 255, .94)  0%,
    rgba(255, 255, 255, .80) 22%,
    rgba(255, 255, 255, .36) 38%,
    rgba(255, 255, 255, 0)   55%);
}


/* ==========================================================================
   39. TERAPIA HERO: mobil hatterkep kezelese mindket blokkszerkezetnel
   Van, ahol a .ihc-tp-hero__mobile-img a .ihc-tp-hero__media csoporton belul
   all (Krioterapia), van, ahol a hero kozvetlen gyereke (Oxigenterapia).
   Ezert magat a kepet cimezzuk, barhol is legyen a blokkfaban.
   ========================================================================== */
/* Asztali nezet: csak a szekcio sajat hatterkepe latszik */
.ihc-tp-hero .ihc-tp-hero__media,
.ihc-tp-hero .ihc-tp-hero__mobile-img { display: none; }

@media (max-width: 900px) {
  /* a csoport csak burok: engedjuk at a kepet a hero kozvetlen gyerekekent */
  .ihc-tp-hero .ihc-tp-hero__media { display: contents; }
  .ihc-tp-hero .ihc-tp-hero__mobile-img {
    display: block;
    position: absolute;
    inset: 0;
    z-index: -1;
    margin: 0;
    width: auto;
  }
  .ihc-tp-hero .ihc-tp-hero__mobile-img img {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
    border-radius: 0;
  }
}


/* ==========================================================================
   40. FINOMHANGOLAS
   ========================================================================== */
/* Megamenu ajandekkartya: a kep kb. 30%-kal nagyobb es jobbra rendezve.
   A transform nem valtoztat a helyfoglalason, igy a gomb es a szoveg helye
   valtozatlan marad. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__card { justify-content: flex-end; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-gift__card img {
  object-position: right center;
  transform: scale(1.3);
  transform-origin: right center;
}

/* Fooldal: fele akkora terkoz a szekciofej es a problema-kartyak kozott */
.ihc-head:has(+ .ihc-problems) { margin-bottom: clamp(26px, 3vw, 42px); }


/* ==========================================================================
   41. FOOLDALI HERO: halványabb feher fatyol
   Bal szelen 70% fedettseg, az oldal kozepere teljesen atlatszo.
   A 74 fokos szog miatt lent tovabb tart a feher, mint fent.
   ========================================================================== */
.ihc-hero .wp-block-cover::after {
  background: linear-gradient(74deg,
    rgba(255, 255, 255, .85)  0%,
    rgba(255, 255, 255, .68) 20%,
    rgba(255, 255, 255, .38) 35%,
    rgba(255, 255, 255, 0)   50%);
}


/* ==========================================================================
   42. TERAPIA ALOLDALAK: tomorebb fuggoleges ritmus
   Ket egymas alatti szekcio also+felso belso margoja osszeadodott (2x112px),
   plusz a WP blokk-koz. Itt feleannyi eleg.
   ========================================================================== */
.ihc-tp-intro,
.ihc-tp-benefits,
.ihc-tp-who,
.ihc-tp-how,
.ihc-tp-info { padding-block: clamp(36px, 4.4vw, 62px); }

/* a szekciok kozott ne maradjon meg a blokk-koz margo is */
.ihc-tp-intro.ihc-tp-intro,
.ihc-tp-benefits.ihc-tp-benefits,
.ihc-tp-who.ihc-tp-who,
.ihc-tp-how.ihc-tp-how,
.ihc-tp-info.ihc-tp-info,
.ihc-tp-book.ihc-tp-book { margin-block: 0; }


/* ==========================================================================
   43. FOOLDALI HERO: kapitalis gombok, levegosebb cimsor
   ========================================================================== */
.ihc-hero__inner .wp-block-button__link {
  text-transform: uppercase;
  letter-spacing: .05em;
}

/* Sorkoz 1.12 -> 1.29 (+15%) a hero cimsoraiban */
.ihc-hero__inner h2,
.ihc-hero__inner > h2 + p,
.ihc-hero__sub { line-height: 1.29; }


/* ==========================================================================
   44. CIKK-KATEGORIA ARCHIVUM: teljes szelessegu hero sav
   ========================================================================== */
body[data-prefix="categories"] .hero-section[data-type="type-2"] { --container-padding: 0; padding-inline: 0; }
body[data-prefix="categories"] .hero-section[data-type="type-2"] > .entry-header {
  margin-inline: calc(50% - 50vw);
  width: 100vw;
  max-width: 100vw;
  border-radius: 0;
  padding-inline: clamp(20px, 4vw, 40px);
}
/* a sav belso tartalma maradjon olvasasi szelessegen, kozepen */
body[data-prefix="categories"] .hero-section[data-type="type-2"] > .entry-header > * { max-width: 860px; margin-inline: auto; }


/* ==========================================================================
   45. HATEKONYSAG ALOLDALAK (wellness es tarsai)
   A terapia-sablon (.ihc-tp-*) osztalyaira epul, csak a nehany uj
   valtozat kerul ide.
   ========================================================================== */
/* ket hasabos kartyaracs */
.ihc-tp-cards--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 860px) { .ihc-tp-cards--2 { grid-template-columns: 1fr; } }

/* Terapia-ajanlo kartya: ikon balra, szoveg es gomb jobbra */
.ihc-tp-card--wide {
  flex-direction: row;
  align-items: flex-start;
  gap: clamp(14px, 1.6vw, 22px);
  text-align: left;
}
.ihc-tp-card--wide > .ihc-tp-icon { flex: 0 0 auto; margin: 0; }
.ihc-tp-card--wide > .ihc-tp-icon img {
  width: clamp(44px, 3.4vw, 52px);
  padding: clamp(10px, 1vw, 14px);
  box-sizing: content-box;
  background: var(--ihc-tint);
  border-radius: 999px;
}
.ihc-tp-card--wide .ihc-tp-card__body { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
.ihc-tp-card--wide .ihc-tp-card__body.ihc-tp-card__body > * { margin-block-start: 0; }
.ihc-tp-card--wide h3 { margin: 0 0 8px; font-size: clamp(16px, 1.4vw, 20px); color: var(--ihc-deep); }
.ihc-tp-card--wide p  { margin: 0; font-size: clamp(13px, 1.05vw, 15px); line-height: 1.6; }
.ihc-tp-card--wide .ihc-btns { margin-top: auto; padding-top: 16px; }
.ihc-tp-card--wide .wp-block-button__link { padding: 9px 20px; font-size: 12px; letter-spacing: .05em; text-transform: uppercase; }

/* Pipas felsorolas (a pontos valtozat felulirasa) */
.ihc-tp-list--check li { padding-left: 34px; }
.ihc-tp-list--check li::before { width: 22px; height: 22px; top: .05em; }
.ihc-tp-list--check li::after {
  content: "";
  position: absolute;
  left: 8px;
  top: .35em;
  width: 5px;
  height: 9px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg);
}

/* Szeles GYIK sav */
.ihc-tp-faq--wide { max-width: 900px; margin-inline: auto; }

/* Kep balra, szoveg jobbra */
.ihc-tp-split--media-first { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
@media (max-width: 1023px) { .ihc-tp-split--media-first { grid-template-columns: 1fr; } }

/* ugyanaz a tomorebb fuggoleges ritmus, mint a terapia oldalakon */
.ihc-tp-therapies,
.ihc-tp-renew { padding-block: clamp(36px, 4.4vw, 62px); }
.ihc-tp-therapies.ihc-tp-therapies,
.ihc-tp-renew.ihc-tp-renew { margin-block: 0; }

/* --- Bevezeto szekcio: szelesebb sav, kisebb es sotet petrol cimsor --- */
.ihc-tp-intro .ihc-head { max-width: 980px; }
.ihc-tp-intro .ihc-head h2 {
  max-width: none;
  font-size: clamp(26px, 2.6vw, 38px);
  line-height: 1.2;
  color: var(--ihc-deep);
}
.ihc-tp-intro .ihc-head p { max-width: none; }

/* --- Elonyok szekcio: hatter nelkul, petrol fejlec --- */
.ihc-tp-benefits.ihc-section--tint { background: transparent; }
.ihc-tp-benefits .ihc-head .ihc-eyebrow { color: var(--ihc-bright); }
.ihc-tp-benefits .ihc-head h2 { color: var(--ihc-deep); }

/* --- Hatekonysag aloldalak: szelesebb, kisebb, sotet petrol szekciofej --- */
.ihc-topic .ihc-head { max-width: 1040px; }
.ihc-topic .ihc-head h2 {
  max-width: none;
  font-size: clamp(24px, 2.4vw, 34px);
  line-height: 1.22;
  color: var(--ihc-deep);
}
.ihc-topic .ihc-head p { max-width: none; }

/* --- Hatekonysag aloldalak: fejlec szinek, kozepre igazitott kartya-ikon --- */
.ihc-topic .ihc-head .ihc-eyebrow { color: var(--ihc-bright); }
.ihc-topic .ihc-head h2 { color: var(--ihc-deep); }
/* az ikon fuggolegesen a kartya kozepen alljon */
.ihc-tp-card--wide { align-items: center; }
.ihc-tp-card--wide .wp-block-button__link { white-space: nowrap; }

/* --- Hatekonysag aloldalak: meg kisebb cimsor, levegosebb sorkoz --- */
.ihc-topic .ihc-head h2 {
  font-size: clamp(22px, 2.1vw, 30px);
  line-height: 1.35;
  color: var(--ihc-deep);
}
.ihc-topic .ihc-head .ihc-eyebrow { color: var(--ihc-bright); }

/* --- Hatekonysag aloldalak: GYIK szekcio hatter nelkul --- */
.ihc-topic .ihc-tp-info.ihc-section--tint { background: transparent; }

/* --- Terapia-ajanlo racs (fekvo, bal oldali ikonos kartyak).
       FIGYELEM: ezt az erteket az 50. szekcio 95%-ra irja felul. --- */
.ihc-topic .ihc-tp-cards--2 { max-width: 75%; margin-inline: auto; }

/* ==========================================================================
   46. Mobil off-canvas menu (Blocksy #offcanvas)
   A menu tartalma: Megjelenes > Menuk > "Mobil menu" (Mobile Menu hely).
   Az almenu-ikonok a Max Mega Menu kep-widgetjeibol jonnek, a PHP modul
   generalja hozzajuk a background-image szabalyokat.
   ========================================================================== */

#offcanvas.ct-panel {
  --panel-background: var(--ihc-bg);
  --panel-content-max-width: 400px;
}
#offcanvas .ct-panel-inner { background: var(--ihc-bg); }
#offcanvas .ct-panel-content[data-device="mobile"] .ct-panel-content-inner {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding-inline: 22px;
  padding-bottom: 28px;
}

/* A tema sajat, ures offcanvas-logo linkje helyett a sajatunkat hasznaljuk. */
#offcanvas [data-id="offcanvas-logo"] { display: none; }

/* --- Logo --- */
.ihc-mnav__brand {
  padding: 4px 0 20px;
  margin-bottom: 6px;
  border-bottom: 1px solid var(--ihc-line);
}
.ihc-mnav__brand a { display: inline-block; }
.ihc-mnav__brand img {
  display: block;
  width: auto;
  max-width: 190px;
  height: auto;
  max-height: 46px;
}

/* --- Menu tortzs --- */
#offcanvas .mobile-menu ul { list-style: none; margin: 0; padding: 0; }
#offcanvas .mobile-menu > ul > li { border-bottom: 1px solid var(--ihc-line); }
#offcanvas .mobile-menu > ul > li:last-child { border-bottom: 0; }

/* Elso szint: nagyobb, feltuno cimke, legalabb 48px erintesi felulet */
#offcanvas .mobile-menu > ul > li > a,
#offcanvas .mobile-menu > ul > li > .ct-sub-menu-parent > a {
  display: flex;
  align-items: center;
  min-height: 52px;
  padding: 6px 0;
  font-size: 16.5px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--ihc-ink);
  text-decoration: none;
}
#offcanvas .mobile-menu .ct-sub-menu-parent {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
#offcanvas .mobile-menu .ct-sub-menu-parent > a { flex: 1 1 auto; }

/* Nyito gomb: kor alaku, jol celozhato */
#offcanvas .mobile-menu .ct-toggle-dropdown-mobile {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 50%;
  background: var(--ihc-tint);
  color: var(--ihc-accent);
  transition: transform .2s ease, background-color .2s ease;
}
#offcanvas .mobile-menu .ct-toggle-dropdown-mobile[aria-expanded="true"] {
  transform: rotate(180deg);
  background: var(--ihc-accent);
  color: #fff;
}
#offcanvas .mobile-menu .ct-toggle-dropdown-mobile svg { width: 14px; height: 14px; fill: currentColor; }

/* --- Almenu: ikon + cimke --- */
#offcanvas .mobile-menu .sub-menu {
  margin: 2px 0 14px;
  padding: 6px;
  background: var(--ihc-tint);
  border-radius: 14px;
}
#offcanvas .mobile-menu .sub-menu li { border: 0; }
#offcanvas .mobile-menu .sub-menu li > a {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 48px;
  padding: 8px 10px 8px 52px;
  font-size: 14.5px;
  font-weight: 500;
  line-height: 1.35;
  color: var(--ihc-body);
  text-decoration: none;
  border-radius: 10px;
}
/* Az ikon dekorativ: a link szovege hordozza a jelentest. */
#offcanvas .mobile-menu .sub-menu li > a::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 22px 22px;
  box-shadow: 0 1px 3px rgba(2, 63, 85, .08);
}
#offcanvas .mobile-menu .sub-menu li > a:hover,
#offcanvas .mobile-menu .sub-menu li > a:focus-visible { background: #fff; color: var(--ihc-ink); }

/* Aktualis oldal jelolese */
#offcanvas .mobile-menu .current-menu-item > a,
#offcanvas .mobile-menu .current_page_item > a { color: var(--ihc-accent); }

#offcanvas .mobile-menu a:focus-visible {
  outline: 2px solid var(--ihc-accent);
  outline-offset: 2px;
}

/* A megamenu mobil valtozatara nincs szukseg: az off-canvas veszi at. */
@media (max-width: 999px) {
  #mega-menu-wrap-menu_1 { display: none; }
}

/* ==========================================================================
   47. Terapia oldalak finomhangolas
   ========================================================================== */

/* --- Idopontfoglalas savja: kisebb terkoz a szoveg es a gomb kozott --- */
.ihc-tp-book__inner.ihc-tp-book__inner { gap: clamp(10px, 1.1vw, 16px); }
.ihc-tp-book__text.ihc-tp-book__text { margin-bottom: 0; }
.ihc-tp-book__btn.ihc-tp-book__btn { margin-top: 4px; }

/* --- Ikonos feher kartyak: kozepre rendezve --- */
/* Terapia- es Hatekonysag-aloldalakon egyarant. A szelesseg-korlatozas
   CSAK mobilon (<=720px) el, ahol a racs egy oszlopra all ossze; asztali
   es tablet nezetben a racs a teljes tartalomszelesseget kitolti. */
@media (max-width: 720px) {
  .ihc-tp-cards--5,
  .ihc-tp-cards--4 {
    max-width: 75%;
    margin-inline: auto;
  }
}
.ihc-tp-cards--5 > .ihc-tp-card,
.ihc-tp-cards--4 > .ihc-tp-card {
  align-items: center;
  text-align: center;
}
.ihc-tp-cards--5 > .ihc-tp-card > .ihc-tp-icon,
.ihc-tp-cards--4 > .ihc-tp-card > .ihc-tp-icon {
  margin-inline: auto;
}

/* Asztali nezetben nincs szelesseg-korlat; lasd a fenti media query-t. */

/* --- A fiok also blokkja: a Blocksy sajat fejlec-elemei (szoveg, CTA gomb,
       kozossegi ikonok). Tartalmuk a Testreszabo > Fejlec > Offcanvas alatt
       szerkesztheto, itt csak az elrendezesuket es a stilusukat adjuk meg. --- */
#offcanvas .ct-panel-content[data-device="mobile"] .ct-header-text {
  margin-top: auto;
  padding-top: 22px;
  border-top: 1px solid var(--ihc-line);
}
#offcanvas .ct-panel-content[data-device="mobile"] .ct-header-text p {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--ihc-muted);
}
#offcanvas .ct-panel-content[data-device="mobile"] .ct-header-cta {
  margin-top: 16px;
}
#offcanvas .ct-panel-content[data-device="mobile"] .ct-header-cta .ct-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 52px;
  padding: 12px 22px;
  border-radius: 999px;
  background: var(--ihc-accent);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  text-decoration: none;
}
#offcanvas .ct-panel-content[data-device="mobile"] .ct-header-cta .ct-button:hover {
  background: var(--ihc-accent-2);
  color: #fff;
}
#offcanvas .ct-panel-content[data-device="mobile"] .ct-header-socials {
  margin-top: 18px;
}
#offcanvas .ct-panel-content[data-device="mobile"] .ct-social-box {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
#offcanvas .ct-panel-content[data-device="mobile"] .ct-social-box a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--ihc-tint);
  color: var(--ihc-deep);
}
#offcanvas .ct-panel-content[data-device="mobile"] .ct-social-box a svg { width: 17px; height: 17px; fill: currentColor; }
#offcanvas .ct-panel-content[data-device="mobile"] .ct-social-box a:hover { background: var(--ihc-accent); color: #fff; }

/* ==========================================================================
   48. Terapia- es Hatekonysag-aloldalak: tovabbi finomhangolas
   ========================================================================== */

/* --- 48.1 Feher, felul ikonos kartyak: kozepre rendezve ---
   A hero alatti mini kartyak es a lepes-panel is ide tartozik.
   A 75%-os sav csak mobilon (<=720px) ervenyes, asztali nezetben
   a blokkok teljes szelessegben allnak. */
@media (max-width: 720px) {
  .ihc-tp-mini,
  .ihc-tp-steps {
    max-width: 75%;
    margin-inline: auto;
  }
}
.ihc-tp-mini__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.ihc-tp-mini__item > .ihc-tp-icon { margin-inline: auto; }

/* Asztali nezetben nincs szelesseg-korlat; lasd a fenti media query-t. */

/* --- 48.2 Idopontfoglalas savja mobilon: szoros, kozepre rendezett blokk,
       teljes szelessegu gombbal. --- */
@media (max-width: 720px) {
  .ihc-tp-book__inner.ihc-tp-book__inner {
    gap: 12px;
    align-items: center;
    text-align: center;
  }
  .ihc-tp-book__icon.ihc-tp-book__icon { margin-inline: auto; }
  .ihc-tp-book__text.ihc-tp-book__text { flex: 0 1 auto; width: 100%; }
  .ihc-tp-book h2 { margin-bottom: 6px; }
  .ihc-tp-book p  { margin-bottom: 0; }
  .ihc-tp-book__btn.ihc-tp-book__btn { margin-top: 2px; width: 100%; }
  .ihc-tp-book__btn .wp-block-button { width: 100%; }
  .ihc-tp-book__btn .wp-block-button__link { width: 100%; justify-content: center; }
}

/* --- 48.3 HATALYON KIVUL --- A Hatekonysag-aloldalak hero-ja mobilon
       ismet a kulon feltoltott mobil hatterkepet hasznalja (nem a fekvo
       asztali hatterkep jobb szelet). Lasd az 57. szekciot. --- */

/* ==========================================================================
   49. Hatekonysag-aloldalak hero: feher fatyol
   ASZTALI nezet: a fedes legfeljebb a kep szelessegenek 50%-aig tart, hogy
   a hatterkep nagyobb resze szabadon lathato maradjon. A bal szelen 96%-rol
   indul, es pontosan 50%-nal er 0%-ra.
   MOBIL nezet: lentebb, kulon media query - ott tovabb tart a fedes.
   ========================================================================== */
.ihc-topic .ihc-tp-hero::before {
  background: linear-gradient(
    74deg,
    rgba(255, 255, 255, .96) 0%,
    rgba(255, 255, 255, .90) 14%,
    rgba(255, 255, 255, .78) 26%,
    rgba(255, 255, 255, .56) 36%,
    rgba(255, 255, 255, .30) 44%,
    rgba(255, 255, 255, 0) 50%
  );
}

/* Mobilon a fekvo kep erosen ranagyitva jelenik meg, ezert a fatyol
   kicsit tovabb tart es a szog is meredekebb. */
@media (max-width: 900px) {
  .ihc-topic .ihc-tp-hero::before {
    background: linear-gradient(
      82deg,
      rgba(255, 255, 255, .97) 0%,
      rgba(255, 255, 255, .94) 30%,
      rgba(255, 255, 255, .82) 50%,
      rgba(255, 255, 255, .55) 62%,
      rgba(255, 255, 255, .26) 72%,
      rgba(255, 255, 255, 0) 82%
    );
  }
}

/* ==========================================================================
   50. Hatekonysag-aloldalak: fekvo, bal oldali ikonos kartyak (ihc-tp-cards--2)
   95% szeles sav. Ezen a racson a gomb nem torhet, ezert keskeny kartyanal
   kilogott a keretbol - kis kepernyon ezert a gomb a kartya teljes
   szelesseget kitolti es tordelhetove valik.
   ========================================================================== */
.ihc-topic .ihc-tp-cards--2 { max-width: 95%; margin-inline: auto; }

/* A gomb soha ne lepje tul a kartya kereteit. */
.ihc-tp-card--wide .ihc-tp-card__body { min-width: 0; }
.ihc-tp-card--wide .ihc-btns { max-width: 100%; }
.ihc-tp-card--wide .wp-block-button { max-width: 100%; }

@media (max-width: 780px) {
  .ihc-tp-card--wide .ihc-btns,
  .ihc-tp-card--wide .ihc-btns .wp-block-button { width: 100%; }
  .ihc-tp-card--wide .wp-block-button__link {
    width: 100%;
    justify-content: center;
    text-align: center;
    white-space: normal;
  }
}

/* ==========================================================================
   51. Nyelvvalaszto a mobil fejlecben, a menu-nyito gomb mellett
   ========================================================================== */
.ihc-langswitch {
  display: none;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  margin-right: 4px;
  border-radius: 50%;
  background: var(--ihc-tint);
  line-height: 0;
  text-decoration: none;
}
.ihc-langswitch img {
  display: block;
  width: 20px;
  height: auto;
  border-radius: 2px;
}
.ihc-langswitch:hover { background: #dbe7e9; }
.ihc-langswitch:focus-visible {
  outline: 2px solid var(--ihc-accent);
  outline-offset: 2px;
}

/* Csak ott jelenjen meg, ahol a hamburger gomb is lathato (mobil nezet).
   Ugyanaz a torespont, mint amivel a megamenut elrejtjuk. */
@media (max-width: 999px) {
  .ihc-langswitch { display: inline-flex; }
  .ct-header [data-column="end"] [data-items="primary"] {
    display: flex;
    align-items: center;
    gap: 6px;
  }
}

/* ==========================================================================
   52. Javitasok
   ========================================================================== */

/* --- 52.1 /hamarosan/ kozossegi ikonok: pontosan a kor kozepen ---
   A WordPress core social-link blokk a linkre tesz belso margot, ezert a
   fix meretu korben az ikon elcsuszott. Duplazott osztaly kell, mert a
   core stiluslapja a sajatunk utan tolt be. */
.ihc-soon__social.ihc-soon__social .wp-social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
}
.ihc-soon__social.ihc-soon__social .wp-social-link .wp-block-social-link-anchor {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0;
  line-height: 0;
}
.ihc-soon__social.ihc-soon__social .wp-social-link svg {
  display: block;
  width: 22px;
  height: 22px;
}

/* --- 52.2 Kapcsolat es Araink hero mobilon: a fatyol a kep 70%-an ---
   A Stackable atlatszo rateget (:before) irjuk felul; a plugin !important
   ertekeket ad ki, ezert itt is szukseges. */
@media (max-width: 900px) {
  body.page-id-16 .stk-block-columns.stk--has-background-overlay::before,
  body.page-id-6968 .stk-block-columns.stk--has-background-overlay::before {
    opacity: 1 !important;
    background-image: linear-gradient(
      82deg,
      rgba(255, 255, 255, .95) 0%,
      rgba(255, 255, 255, .90) 28%,
      rgba(255, 255, 255, .74) 46%,
      rgba(255, 255, 255, .46) 58%,
      rgba(255, 255, 255, .20) 66%,
      rgba(255, 255, 255, 0) 72%
    ) !important;
  }
}


/* ==========================================================================
   53. FOOLDALI HERO MOBILON: fuggoleges feher fatyol
   Mobilon a hero szovege a kep aljan all, ezert a fatyol is alulrol epul fel:
   a felso 40% teljesen tiszta marad, az also 60%-on van valamennyi fedes,
   legalul csaknem teljes. Ez a szabaly a 41. szekcio atlos (74 fokos)
   asztali fatyolat irja felul kis kepernyon.
   ========================================================================== */
@media (max-width: 900px) {
  .ihc-hero .wp-block-cover::after {
    background: linear-gradient(
      180deg,
      rgba(255, 255, 255, 0)   40%,
      rgba(255, 255, 255, .26) 52%,
      rgba(255, 255, 255, .60) 66%,
      rgba(255, 255, 255, .86) 80%,
      rgba(255, 255, 255, .96) 100%
    );
  }
}


/* ==========================================================================
   54. ARAINK OLDAL (page-id-6968) MOBIL NEZETBEN
   54.1 A "Nyitva tartas" + "Berleteink 6 honapig ervenyesek" feher kartya:
        minden elem egymas ala kerul es kozepre rendezodik. A szerkesztobol
        jovo nagy oldalmargok (100px / 50px) es a jobbra igazitott ikonok
        semlegesitese. A hatar 767px, mert a Stackable sajat oszlop-
        szabalyai (flex-basis) csak 768px felett elnek - igy nincs utkozes.
   54.2 A "KOMBINALT BERLETEK" racs sajat 80%-os szelesseg-korlatja helyett
        mobilon teljes szelesseg, ketoldali behuzas nelkul.
   ========================================================================== */

/* --- 54.1 Nyitva tartas / berletek kartya --- */
@media (max-width: 767px) {
  body.page-id-6968 .stk-cbfa745.stk-cbfa745 {
    padding: 22px 16px !important;
  }

  /* A szerkesztoi oldalmargok es belso behuzasok kikapcsolasa */
  body.page-id-6968 .stk-cbfa745 .stk-6b39255,
  body.page-id-6968 .stk-cbfa745 .stk-2577fbf,
  body.page-id-6968 .stk-cbfa745 .stk-c29a37c,
  body.page-id-6968 .stk-cbfa745 .stk-7adb3d0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Minden oszlopsor egy oszlopba, kozepre rendezve */
  body.page-id-6968 .stk-cbfa745 .stk-row {
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    row-gap: 8px;
  }
  body.page-id-6968 .stk-cbfa745 .stk-column {
    flex: 0 0 auto !important;
    width: 100% !important;
  }

  /* Ikon es szoveg egyarant kozepre (a blokkok sajat jobbra igazitasa helyett) */
  body.page-id-6968 .stk-cbfa745 .stk-inner-blocks {
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }
  body.page-id-6968 .stk-cbfa745 .stk-block-image,
  body.page-id-6968 .stk-cbfa745 .stk-block-heading,
  body.page-id-6968 .stk-cbfa745 .stk-block-heading__text,
  body.page-id-6968 .stk-cbfa745 p {
    text-align: center !important;
  }
  body.page-id-6968 .stk-cbfa745 figure {
    display: flex;
    justify-content: center;
    margin-inline: auto;
  }

  /* Lathato terkoz a nyitva tartas es a berletek blokk kozott */
  body.page-id-6968 .stk-cbfa745 .stk-2577fbf {
    margin-top: 18px !important;
  }
}

/* --- 54.2 Kombinalt berletek racs: teljes szelesseg mobilon --- */
@media (max-width: 900px) {
  body.page-id-6968 .stk-b0d99ba.stk-b0d99ba {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}


/* ==========================================================================
   55. TERAPIA-ALOLDALAK HERO: teljes szelessegben folyamatos feher fatyol
   Erinti: Oxigenterapia, Krioterapia, Vorosfeny-terapia, Venamasszazs,
   AI masszazs terapia (.ihc-tp-hero, .ihc-topic osztaly nelkul).
   A fatyol a bal szelen 90%-os fedessel indul, a kep teljes szelessegen
   folyamatosan halvanyul, es pontosan a jobb szelen er 0%-ra - igy nincs
   lathato torespont, sem maradek fatyol a kep jobb oldalan.
   A Hatekonysag-aloldalakat (.ihc-topic .ihc-tp-hero::before, 49. szekcio)
   ez NEM erinti: az a szabaly specifikusabb, ezert ott sajat, 50%-ig tarto
   fatyol ervenyes.
   ========================================================================== */
.ihc-tp-hero::before {
  background: linear-gradient(
    74deg,
    rgba(255, 255, 255, .90) 0%,
    rgba(255, 255, 255, .80) 20%,
    rgba(255, 255, 255, .66) 40%,
    rgba(255, 255, 255, .48) 58%,
    rgba(255, 255, 255, .28) 76%,
    rgba(255, 255, 255, .12) 90%,
    rgba(255, 255, 255, 0) 100%
  );
}

/* Mobilon az allo hatterkep erosebben ranagyitva latszik, ezert meredekebb
   szog, de ugyanaz a logika: 90%-rol indul es a jobb szelen er 0%-ra. */
@media (max-width: 900px) {
  .ihc-tp-hero::before {
    background: linear-gradient(
      82deg,
      rgba(255, 255, 255, .92) 0%,
      rgba(255, 255, 255, .84) 24%,
      rgba(255, 255, 255, .70) 45%,
      rgba(255, 255, 255, .50) 62%,
      rgba(255, 255, 255, .28) 80%,
      rgba(255, 255, 255, .10) 92%,
      rgba(255, 255, 255, 0) 100%
    );
  }
}


/* ==========================================================================
   56. BLOG LISTAOLDAL MOBILON: az "ELOLVASOM" gomb kozepre
   A kartya tartalma egy fuggoleges flex oszlop, a gomb alapertelmezetten
   balra igazodik (align-self: flex-start, 1920. sor korul). 680px alatt a
   kartya amugy is egymas ala rendezodik (kep felul, szoveg alatta), ott a
   gomb kozepre igazitva mutat jobban.
   Erinti a blog listaoldalt es a kategoria-archivumokat is.
   ========================================================================== */
@media (max-width: 680px) {
  .entries[data-layout] .entry-card .ct-button,
  .entries[data-layout] .entry-card .ct-button-ghost {
    align-self: center;
  }
}


/* ==========================================================================
   57. HATEKONYSAG-ALOLDALAK HERO MOBILON: kulon feltoltott mobil hatterkep
   A hero csoport sajat (fekvo) hatterkepe helyett mobilon a blokkba
   feltoltott allo kep feszul ki - ugyanaz a mechanizmus, mint a terapia
   aloldalakon (39. szekcio). A kepet a Gutenbergben lehet cserelni: a hero
   szekcio "ihc-tp-hero__mobile-img" osztalyu kepblokkja.
   Ez a szabaly valtja fel a korabbi 48.3 pontot.
   ========================================================================== */
@media (max-width: 900px) {
  /* a csoport csak burok: engedjuk at a kepet a hero kozvetlen gyerekekent */
  .ihc-topic .ihc-tp-hero .ihc-tp-hero__media { display: contents; }

  .ihc-topic .ihc-tp-hero .ihc-tp-hero__mobile-img {
    display: block;
    position: absolute;
    inset: 0;
    z-index: -1;
    margin: 0;
    width: auto;
  }
  .ihc-topic .ihc-tp-hero .ihc-tp-hero__mobile-img img {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center;
    border-radius: 0;
  }
}


/* ==========================================================================
   58. ARAINK OLDAL HERO MOBILON: kisebb bevezeto szoveg
   A Stackable a blokk sajat stilusaban 20px-et ad ki !important-tal
   (asztali es tablet nezetben egyarant), ezert kell ide is az !important.
   ========================================================================== */
@media (max-width: 767px) {
  body.page-id-6968 .stk-ba40944 .stk-block-text__text {
    font-size: 15px !important;
    line-height: 1.5 !important;
  }
}


/* ==========================================================================
   59. FOOLDALI HERO MOBILON: nagyobb bevezeto szoveg
   A cimsor alatti leiro bekezdes 12px-rol 14px-re nő (a WP a bekezdesre
   has-medium-font-size osztalyt tesz, amit !important-tal allit, ezert
   itt is szukseges).
   ========================================================================== */
@media (max-width: 900px) {
  .ihc-hero__inner.ihc-hero__inner > h2 + p + p,
  .ihc-hero__inner.ihc-hero__inner > .ihc-hero__sub + p {
    font-size: 14px !important;
    line-height: 1.5;
  }
}


/* ================================================================
   60. H1 konverzio - megjelenes megorzese (Kapcsolat, Araink)
   Az oldal fo cimsora h2-rol h1-re valtozott SEO okbol.
   A Blocksy h1 stilus (52/42/32px, 800) helyett a korabbi
   h2 megjelenest tartjuk meg, hogy vizualisan semmi ne valtozzon.
   ================================================================ */
body.page-id-16 .stk-67f5bac .stk-block-heading__text,
body.page-id-6968 .stk-67f5bac .stk-block-heading__text {
  font-weight: 700;
}
body.page-id-6968 .stk-67f5bac .stk-block-heading__text {
  font-size: 40px;
  line-height: 1.15;
  letter-spacing: -0.015em;
}
@media (max-width: 1023px) {
  body.page-id-6968 .stk-67f5bac .stk-block-heading__text { font-size: 34px; }
}
@media (max-width: 767px) {
  body.page-id-6968 .stk-67f5bac .stk-block-heading__text { font-size: 26px; }
}

/* ---------- 61. TAMOGATAS MEGAMENU: kapcsolatfelveteli blokk ---------- */
/* A Tamogatas megamenu (#mega-menu-item-8243) racs-, fejlec- es oszlop-
   szabalyait a 19/a. szakasz adja: ott minden Terapiak-selector megkapta a
   8243-as parjat is, igy a ket megamenu egyutt mozog, es nincs duplikalt CSS.
   Itt csak az ter el, ami tenylegesen mas: a jobb szelso oszlopban
   blogcikkek helyett kapcsolatfelvetelre hivo, sotet petrol blokk all.
   Fejhallgatos ikon csak a sor fejleceben van, a blokkon belul nem
   ismeteljuk meg; a telefon es az e-mail sajat ikont kap. */

#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  height: 100%;
  padding: clamp(20px, 2vw, 26px);
  background: linear-gradient(160deg, #023F55 0%, #065E6B 100%);
  border: 0;
  border-radius: var(--ihc-radius);
}
/* A blokkon beluli elemek sajat felso margoit a gap kezeli. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta > * ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta > * { margin: 0; }

#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__title ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__title {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.25;
  color: #fff;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__text ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__text {
  font-size: 14px;
  line-height: 1.5;
  color: rgba(255, 255, 255, .82);
}

/* Telefon es e-mail egymas alatt, sajat ikonnal. Az ikon httermintakent jon,
   igy nincs extra HTTP keres, es nem okoz elrendezes-ugrast. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__links ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__links {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 2px;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__links a ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__links a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  color: #fff;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  align-self: flex-start;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__links a::before ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__links a::before {
  content: "";
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: .92;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__tel::before ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__tel::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .3 1.9.6 2.8a2 2 0 0 1-.5 2.1L8.1 9.9a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.5c.9.3 1.8.6 2.8.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E");
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__mail::before ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__mail::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3Cpath d='m2 7 10 6 10-6'/%3E%3C/svg%3E");
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__links a:hover ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__links a:hover,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__links a:focus-visible ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__links a:focus-visible {
  border-bottom-color: rgba(255, 255, 255, .7);
}

/* Feher pirula gomb, ugyanaz a formanyelv, mint a szines CTA savokon.
   A blokk aljara ul, igy barmilyen hosszu is a szoveg, egy vonalban all. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__btn ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__btn {
  margin-top: auto;
  padding-top: 8px;
  width: 100%;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__btn .wp-block-button ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__btn .wp-block-button { width: 100%; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__btn .wp-block-button__link ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__btn .wp-block-button__link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .6em;
  width: 100%;
  background: #fff;
  color: var(--ihc-deep);
  border: 0;
  border-radius: 999px;
  padding: 13px 22px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  text-decoration: none;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__btn .wp-block-button__link::after ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__btn .wp-block-button__link::after { content: "\2192"; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__btn .wp-block-button__link:hover ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__btn .wp-block-button__link:hover,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-mm-cta__btn .wp-block-button__link:focus-visible ,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-cta__btn .wp-block-button__link:focus-visible {
  background: rgba(255, 255, 255, .88);
  color: var(--ihc-deep);
}



/* A "Kerdesed van?" fejlec (ihc-mm-cta ALATTI TERKOZ) kozelebb ul a CTA blokkhoz,
   mint a bal oldali fejlec az ikonos oszlopokhoz: a CTA sajat keretes, kitoltott
   doboz, ezert nincs szuksege ugyanakkora levegore alatta. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8243 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:last-child .ihc-mm-head {
  margin-bottom: clamp(6px, 0.7vw, 10px);
}

/* ---------- 62. TAMOGATAS ALOLDALAK: kep nelkuli szoveges blokk ---------- */
/* A tamogatas oldalak (Tanacsadas, Szerviz, Berbeadas, Finanszirozas)
   ugyanazt a .ihc-tp-* sablont hasznaljak, mint a terapia-aloldalak.
   Egy elteres van: a "split" szekcioban egyelore nincs kep - a vegleges
   kepeket a felhasznalo tolti fel. Addig a szoveg teljes szelessegben,
   olvashato sorhosszal all. */

.ihc-tp-split--textonly { display: block; }
.ihc-tp-split--textonly .ihc-tp-split__text { max-width: 72ch; }

/* A tamogatas oldalak bevezetojenek is legyen olvashato sorhossza. */
.ihc-tp-intro__text { max-width: 72ch; }
.ihc-tp-intro__text > * { margin-block-start: 0; }

/* ---------- 63. TAMOGATAS OLDALAK HERO: fatyol es szovegkontraszt ---------- */
/* Ket dolgot kell egyszerre teljesiteni: a bal szel legyen atlatszobb, a cim
   alatti szoveg viszont legyen olvashatobb. Egyetlen egyenletes fatyollal ez
   nem megy, ezert ketfele eszkoz:

   1. A fatyol nem a bal szelen a legfedobb, hanem a SZOVEG SAVJABAN (18-38%).
      A kep bal szele - ahol nincs szoveg - jelentosen atlatszobb, a kep pedig
      60%-nal teljesen tisztan folytatodik.
   2. A bevezeto szoveg sotetebb tintaszint kap a halvany szurke helyett. Ez
      adja a tenyleges olvashatosagot, igy a fatyolnak nem kell "kifehereodnie". */

.ihc-support .ihc-tp-hero::before {
  background: linear-gradient(
    to right,
    rgba(255, 255, 255, .55) 0%,
    rgba(255, 255, 255, .80) 12%,
    rgba(255, 255, 255, .88) 22%,
    rgba(255, 255, 255, .88) 38%,
    rgba(255, 255, 255, .84) 42%,
    rgba(255, 255, 255, .78) 46%,
    rgba(255, 255, 255, .70) 50%,
    rgba(255, 255, 255, .60) 54%,
    rgba(255, 255, 255, .49) 58%,
    rgba(255, 255, 255, .38) 62%,
    rgba(255, 255, 255, .27) 66%,
    rgba(255, 255, 255, .17) 70%,
    rgba(255, 255, 255, .09) 74%,
    rgba(255, 255, 255, .03) 78%,
    rgba(255, 255, 255, 0) 83%
  );
}

/* A hero szoveg sajat kontrasztja: a bevezeto a halvany szurke helyett a
   sotet tintaszint kapja, a cim pedig marad a melypetrol. */
.ihc-support .ihc-tp-hero__text .ihc-lead { color: var(--ihc-ink); }
.ihc-support .ihc-tp-hero__text .ihc-eyebrow { color: var(--ihc-accent-2); }

/* Mobilon allo formatumu kep all a hero mogott (.ihc-tp-hero__mobile-img),
   ezert a fatyol fuggolegesen fut, ugyanezzel a logikaval: a felso sav
   (ahol nincs szoveg) atlatszobb, a szoveg savja a legfedobb. */
@media (max-width: 900px) {
  .ihc-support .ihc-tp-hero::before {
    background: linear-gradient(
      to bottom,
      rgba(255, 255, 255, .60) 0%,
      rgba(255, 255, 255, .82) 12%,
      rgba(255, 255, 255, .88) 24%,
      rgba(255, 255, 255, .88) 40%,
      rgba(255, 255, 255, .84) 44%,
      rgba(255, 255, 255, .78) 48%,
      rgba(255, 255, 255, .70) 52%,
      rgba(255, 255, 255, .60) 56%,
      rgba(255, 255, 255, .49) 60%,
      rgba(255, 255, 255, .38) 64%,
      rgba(255, 255, 255, .27) 68%,
      rgba(255, 255, 255, .17) 72%,
      rgba(255, 255, 255, .09) 76%,
      rgba(255, 255, 255, .03) 80%,
      rgba(255, 255, 255, 0) 85%
    );
  }
}


/* ---------- 64. TAMOGATAS OLDALAK: finomhangolas ---------- */

/* A cim alatti bevezeto a szekcio kozepen alljon, ne balra huzva. */
.ihc-tp-intro__text { margin-inline: auto; }

/* A Stackable-oszlopba tett kepek is lekerekitett sarkuak, mint a tobbi kep. */
.ihc-support .stk-block-column .wp-block-image img { border-radius: var(--ihc-radius-lg); }

/* A pipas felsorolas betumerete egyezzen a korulotte levo szovegevel. */
.ihc-support .ihc-tp-list li { font-size: inherit; }

/* GYIK: szelesebb sav, nagyobb kerdes- es valaszszoveg. */
.ihc-support .ihc-tp-faq--wide { max-width: 1080px; }
.ihc-support .ihc-tp-faq .wp-block-details summary {
  font-size: clamp(15px, 1.25vw, 18px);
  padding-block: 17px;
}
.ihc-support .ihc-tp-faq .wp-block-details p {
  font-size: clamp(14px, 1.05vw, 16px);
  padding-bottom: 18px;
}

/* CTA sav: feher ikon a sotet hatteren, es 50px behuzas ket oldalt,
   hogy a cim es a gomb ne feszuljon a sav szelenek. */
.ihc-support .ihc-tp-book__icon img { filter: brightness(0) invert(1); }
.ihc-support .ihc-tp-book__inner { padding-inline: 50px; }
@media (max-width: 640px) {
  .ihc-support .ihc-tp-book__inner { padding-inline: 24px; }
}



/* Tomorebb fuggoleges ritmus a tamogatas oldalakon: a szekciok kozti terkoz
   a ket szomszedos szekcio paddingjabol adodik ossze, ami a rovid bevezetonel
   tul sok levegot hagyott a kartyaracs elott. */
.ihc-support .ihc-section { padding-block: clamp(48px, 5.5vw, 80px); }
.ihc-support .ihc-tp-intro { padding-block: clamp(32px, 3.6vw, 52px); }


/* A Stackable-oszlopos szekcionak nincs sajat .ihc-section burka, ezert nincs
   fuggoleges paddingja sem - itt adjuk meg, hogy ne tapadjon a szomszed
   szekciokhoz. */
.ihc-support .wp-block-stackable-columns { padding-block: clamp(48px, 5.5vw, 80px); }

/* A pipas felsorolas es az utana kovetkezo bekezdes kozott legyen levego. */
.ihc-support .ihc-tp-list { margin-bottom: 20px; }


/* A "Miben segitenek..." szekciofej cimsora egy sorba ferjen ki. Az .ihc-head
   alap 720px-es olvasasi szelessege ehhez a hosszu cimhez keves, ezert csak
   ennel az egy fejlecnel engedunk szelesebbet - az id-vel celozva, hogy a tobbi
   szekciofej valtozatlan maradjon. Mobilon marad a normal tordeles, igy nem
   keletkezik vizszintes gorgetes. */
.ihc-head:has(> #miben-tudunk-segiteni) { max-width: 1040px; }

/* ---------- 65. BERBEADAS: berleti dijak es feltetelek ---------- */
/* Ket egyenrangu feher kartya a halvany hatteren. A bal oldali a dij-kartya:
   a havi dij a legnagyobb elem, alatta a ket konstrukcio, legalul a
   kiegeszito tetelek cimke-ertek parban. */

.ihc-tp-price.wp-block-columns { gap: clamp(16px, 2vw, 28px); align-items: stretch; }
.ihc-tp-price .wp-block-column { display: flex; }
.ihc-tp-price__card {
  display: flex;
  flex-direction: column;
  width: 100%;
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius-lg);
  padding: clamp(24px, 2.6vw, 38px);
  box-shadow: 0 14px 38px rgba(2, 63, 85, .06);
}
.ihc-tp-price__card > * { margin-block-start: 0; }
.ihc-tp-price__card h3 {
  margin: 0 0 18px;
  font-size: clamp(18px, 1.6vw, 22px);
  line-height: 1.3;
  color: var(--ihc-deep);
}

/* --- Dij --- */
.ihc-tp-price__amount {
  margin: 0 0 22px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--ihc-line);
}
.ihc-tp-price__figure { margin: 0; display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.ihc-tp-price__figure strong {
  font-size: clamp(30px, 3.4vw, 46px);
  line-height: 1.05;
  font-weight: 800;
  color: var(--ihc-accent);
  letter-spacing: -.01em;
}
.ihc-tp-price__figure span { font-size: clamp(15px, 1.2vw, 18px); font-weight: 600; color: var(--ihc-muted); }
.ihc-tp-price__vat { margin: 8px 0 0; font-size: clamp(13px, 1vw, 14.5px); color: var(--ihc-muted); }

/* --- A ket konstrukcio --- */
.ihc-tp-price__options { margin: 0 0 22px; display: flex; flex-direction: column; gap: 14px; }
.ihc-tp-price__option { margin: 0; padding-left: 16px; border-left: 3px solid var(--ihc-tint); }
.ihc-tp-price__option strong { display: block; font-size: clamp(15px, 1.15vw, 17px); color: var(--ihc-ink); }
.ihc-tp-price__option span { display: block; margin-top: 3px; font-size: clamp(14px, 1.05vw, 15.5px); line-height: 1.55; color: var(--ihc-muted); }

/* --- Kiegeszito tetelek: cimke balra, ertek jobbra --- */
.ihc-tp-price__fine { margin-top: auto; padding-top: 18px; border-top: 1px solid var(--ihc-line); }
.ihc-tp-price__row {
  margin: 0 0 8px;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  font-size: clamp(14px, 1.05vw, 15.5px);
  color: var(--ihc-muted);
}
.ihc-tp-price__row:last-child { margin-bottom: 0; }
.ihc-tp-price__row strong { flex: 0 0 auto; color: var(--ihc-ink); font-weight: 700; }

/* --- Jobb oldali kartya --- */
.ihc-tp-price__card .ihc-tp-list { margin-bottom: 22px; }
.ihc-tp-price__cta { margin-top: auto; }
.ihc-tp-price__cta .wp-block-button__link { text-transform: uppercase; letter-spacing: .04em; }

@media (max-width: 781px) {
  .ihc-tp-price .wp-block-column { display: block; }
}

/* ---------- 66. TAMOGATAS OLDALAK: WPForms urlap ---------- */
/* A kuldes gomb ugyanazt a pirula format es turkiz szint kapja, mint az
   oldal tobbi elsodleges gombja - a WPForms sajat kek gombja helyett. */

.ihc-support .wpforms-container .wpforms-submit,
.ihc-support .wpforms-container button[type="submit"] {
  display: inline-flex;
  align-items: center;
  gap: .6em;
  background: var(--ihc-accent);
  color: #fff;
  border: 0;
  border-radius: 999px;
  padding: 15px 32px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  line-height: 1;
  cursor: pointer;
  transition: background .2s ease;
}
.ihc-support .wpforms-container .wpforms-submit::after,
.ihc-support .wpforms-container button[type="submit"]::after { content: "\2192"; }
.ihc-support .wpforms-container .wpforms-submit:hover,
.ihc-support .wpforms-container button[type="submit"]:hover,
.ihc-support .wpforms-container .wpforms-submit:focus-visible,
.ihc-support .wpforms-container button[type="submit"]:focus-visible {
  background: var(--ihc-accent-2);
  color: #fff;
}

/* Az urlap olvashato szelessegen belul maradjon, a szekcio kozepen. */
.ihc-support .ihc-tp-form { max-width: 860px; margin-inline: auto; }

/* ---------- 67. BEMUTATOTEREM KARTYA (.ihc-voucher--showroom) ---------- */
/* Ugyanaz a kartya, mint az ajandekutalvanyos volt, de a bal oldalon nem egy
   "lebego" termekfoto all keretben, hanem egy teljesen kifuto fotó - ugyanugy,
   ahogy a jobb oldali kartyan a terkep er a kartya szelehez.
   Ezert itt kioltjuk a paddingot, a contain-t es az arnyekot. */

.ihc-voucher--showroom .wp-block-image img {
  padding: 0;
  object-fit: cover;
  object-position: center;
  filter: none;
}

/* A gomb felirata nagybetus, mint a fejlec CTA-ja. */
.ihc-voucher--showroom .wp-block-button__link {
  text-transform: uppercase;
  letter-spacing: .04em;
}

/* Mobilon a kartya egy oszlopba rendezodik: ott is kifuto maradjon a kep. */
@media (max-width: 900px) {
  .ihc-voucher--showroom .wp-block-image { padding: 0; }
}


/* ---------- 68. HAROM KARTYA EGY SORBAN (.ihc-tp-cards--3) ---------- */
/* A racsnak eddig csak --5, --4 es --2 valtozata volt, ezert a harom
   kartyat hasznalo szekciok (Tanacsadas, Szerviz) oszlopdefinicio nelkul
   maradtak, es a kartyak egymas ala estek. A lepcsozes ugyanaz, mint a
   tobbi valtozatnal: asztalon harom, tableten ketto, mobilon egy oszlop. */

.ihc-tp-cards--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

@media (max-width: 1023px) {
  .ihc-tp-cards--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .ihc-tp-cards--3 { grid-template-columns: 1fr; max-width: 75%; margin-inline: auto; }
}

/* A --5 es --4 racsokhoz hasonloan a tartalom kozepre igazodik. */
.ihc-tp-cards--3 > .ihc-tp-card { align-items: center; text-align: center; }
.ihc-tp-cards--3 > .ihc-tp-card > .ihc-tp-icon { margin-inline: auto; }


/* ---------- 70. HATEKONYSAG MEGAMENU: fejlec a jobb szeli sav folott ---------- */
/* A savba a kartya fole bekerult a "Kerdesed van?" fejlec, ugyanugy, mint a
   Tamogatas megamenuben. Ott a fejlec kulon racs-sorban all; itt viszont
   ugyanabban az abszolut pozicionalt oszlopban, ezert harom dolgot kell allitani:
   1. az oszlop fuggoleges flex legyen - a fejlec ne nyuljon, a kartya toltson ki,
   2. az elvalaszto vonal ne az oszlop egeszen fusson vegig, hanem csak a kartya
      mellett - a Tamogatas menuben is csak ott van vonal, a fejlec mellett nincs,
   3. a fejlec alatti terkoz ugyanannyi legyen, mint ott. */

#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(2) {
  border-left: 0;
  padding-left: 0;
  flex-direction: column;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(2) > ul.mega-sub-menu {
  flex-direction: column;
  padding-left: var(--ihc-hm-giftgap);
}
/* A fejlec sajat magassagat tartja. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(2) > ul.mega-sub-menu > li.mega-menu-item {
  flex: 0 0 auto;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(2) > ul.mega-sub-menu > li.widget_text .ihc-mm-head {
  margin: 0 0 clamp(12px, 1.2vw, 18px);
}
/* A kartya tolti ki a maradek helyet, es csak o kap elvalaszto vonalat. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(2) > ul.mega-sub-menu > li.widget_maxmegamenu_reusable_block {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(2) > ul.mega-sub-menu > li.widget_maxmegamenu_reusable_block::before {
  content: "";
  position: absolute;
  left: calc(-1 * var(--ihc-hm-giftgap));
  top: 0;
  bottom: 0;
  width: 1px;
  background: #EDF1F2;
}

/* Kisebb kepernyon a sav a racs ala kerul: ott nincs fuggoleges vonal. */
@media (max-width: 1100px) {
  #mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(2) > ul.mega-sub-menu {
    padding-left: 0;
  }
  #mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-2147 .ihc-hm-mainrow > ul.mega-sub-menu > .mega-menu-column:nth-child(2) > ul.mega-sub-menu > li.widget_maxmegamenu_reusable_block::before {
    display: none;
  }
}


/* ========================================================================
   71. AJANLATKERESES TERMEKOLDAL (.ihc-product)
   ------------------------------------------------------------------------
   Azok a termekek, amelyek nem a kosaron keresztul, hanem ajanlatkeressel
   vasarolhatok meg, sima oldalkent keszulnek. Ez a szakasz csak azt tartalmazza,
   ami a .ihc-tp-* sablonbol hianyzik: a fejlec-blokkot (galeria + adatok), a
   muszaki tablazatot, a sotet allitassavot es a bizalmi sort. A szekciok
   keretet, cimsorait, kartyait es a GYIK-et tovabbra is a meglevo
   .ihc-section / .ihc-head / .ihc-tp-card / .ihc-tp-faq osztalyok adjak.
   ======================================================================== */

/* --- Morzsamenu --- */
.ihc-pr-crumbs {
  margin: 0 0 clamp(16px, 2vw, 26px);
  font-size: 13px;
  color: var(--ihc-muted);
}
.ihc-pr-crumbs a { color: var(--ihc-muted); text-decoration: none; }
.ihc-pr-crumbs a:hover { color: var(--ihc-accent); }

/* --- Fejlec-blokk: balra galeria, jobbra az adatok --- */
.ihc-pr-top {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(0, 1fr);
  gap: clamp(28px, 3.4vw, 56px);
  align-items: start;
}

/* --- Galeria --- */
.ihc-pr-gallery__main.ihc-pr-gallery__main { margin: 0; }
.ihc-pr-gallery__main img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  background: #fff;
  border-radius: var(--ihc-radius);
  padding: clamp(10px, 1.2vw, 18px);
}
.ihc-pr-gallery__thumbs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(8px, 1vw, 14px);
  margin-top: clamp(10px, 1.2vw, 16px);
}
.ihc-pr-gallery__thumbs .wp-block-image { margin: 0; }
.ihc-pr-gallery__thumbs img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  background: #fff;
  border-radius: 12px;
  padding: 6px;
  cursor: pointer;
  opacity: .55;
  transition: opacity .18s ease;
}
/* Keret helyett halvanyitas jelzi, melyik belyegkep aktiv. */
.ihc-pr-gallery__thumbs img:hover,
.ihc-pr-gallery__thumbs .is-active img {
  opacity: 1;
}

/* --- Jobb hasab: cim, felsorolas, gomb, garanciak --- */
.ihc-pr-info > * { margin-block-start: 0; }
.ihc-pr-info .ihc-eyebrow { margin: 0 0 10px; }
.ihc-pr-info h1 {
  margin: 0 0 14px;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.18;
  color: var(--ihc-deep);
}
.ihc-pr-info .ihc-lead {
  margin: 0 0 clamp(18px, 2vw, 26px);
  color: var(--ihc-muted);
  line-height: 1.7;
}
.ihc-pr-info .ihc-tp-list--check { margin: 0 0 clamp(20px, 2.2vw, 28px); }

/* Kiemelt ajanlatkero gomb: teljes szelessegu, keretes pirula. */
.ihc-pr-cta.ihc-pr-cta { margin: 0 0 clamp(18px, 2vw, 26px); }
.ihc-pr-cta .wp-block-button { width: 100%; }
.ihc-pr-cta .wp-block-button__link {
  display: block;
  width: 100%;
  padding: 16px 24px;
  background: #fff;
  color: var(--ihc-accent-2);
  border: 1px solid var(--ihc-accent);
  border-radius: 999px;
  font-weight: 600;
  letter-spacing: .02em;
  text-align: center;
  transition: background .18s ease, color .18s ease;
}
.ihc-pr-cta .wp-block-button__link:hover,
.ihc-pr-cta .wp-block-button__link:focus-visible {
  background: var(--ihc-accent);
  color: #fff;
}

/* Harom garancia-jelzes a gomb alatt. */
.ihc-pr-trust {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(10px, 1.4vw, 20px);
  padding-top: clamp(16px, 2vw, 24px);
  border-top: 1px solid var(--ihc-line);
}
.ihc-pr-trust .ihc-pr-trust__item { margin: 0; }
.ihc-pr-trust strong {
  display: block;
  font-size: 13px;
  color: var(--ihc-ink);
  font-weight: 600;
}
.ihc-pr-trust span {
  display: block;
  margin-top: 3px;
  font-size: 12px;
  line-height: 1.45;
  color: var(--ihc-muted);
}

/* --- Sotet allitassav a fejlec alatt --- */
.ihc-pr-band.ihc-pr-band {
  background: linear-gradient(160deg, #023F55 0%, #065E6B 100%);
  color: #fff;
}
.ihc-pr-band__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .85fr);
  gap: clamp(24px, 3vw, 48px);
  align-items: center;
}
.ihc-pr-band__text > * { margin-block-start: 0; }
.ihc-pr-band__text h2 {
  margin: 0 0 14px;
  color: #fff;
  font-size: clamp(24px, 2.6vw, 38px);
  line-height: 1.2;
}
.ihc-pr-band__text p {
  margin: 0;
  color: rgba(255, 255, 255, .82);
  line-height: 1.7;
  max-width: 46ch;
}
.ihc-pr-band__media.ihc-pr-band__media { margin: 0; }
.ihc-pr-band__media img {
  display: block;
  width: 100%;
  height: auto;
  background: #fff;
  border-radius: var(--ihc-radius);
  padding: clamp(10px, 1.4vw, 20px);
}

/* --- Termekleiras + muszaki adatok --- */
.ihc-pr-spec {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(28px, 3.4vw, 56px);
  align-items: start;
}
.ihc-pr-spec__text > * { margin-block-start: 0; }
.ihc-pr-spec__text p { color: var(--ihc-muted); line-height: 1.75; margin: 0 0 14px; }
.ihc-pr-spec__text h2 { margin: 0 0 16px; }

/* A tablazat sorai valtakozo hatterrel, keret nelkuli cellakkal. */
.ihc-pr-table.ihc-pr-table {
  margin: 0;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius);
  overflow: hidden;
}
.ihc-pr-table table { border-collapse: collapse; width: 100%; }
.ihc-pr-table td {
  padding: 12px clamp(12px, 1.4vw, 18px);
  border: 0;
  border-bottom: 1px solid var(--ihc-line);
  font-size: clamp(13px, 1vw, 14.5px);
  line-height: 1.5;
  vertical-align: top;
}
.ihc-pr-table tr:last-child td { border-bottom: 0; }
.ihc-pr-table td:first-child { width: 42%; color: var(--ihc-ink); font-weight: 600; }
.ihc-pr-table td:last-child { color: var(--ihc-muted); }
.ihc-pr-table tr:nth-child(odd) td { background: var(--ihc-surface); }

/* --- Bizalmi sor (a velemenyek helyett) --- */
.ihc-pr-why {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(12px, 1.4vw, 20px);
}
.ihc-pr-why > .ihc-tp-card { align-items: center; text-align: center; }
.ihc-pr-why > .ihc-tp-card > .ihc-tp-icon { margin-inline: auto; }

/* --- Reszponziv --- */
@media (max-width: 1023px) {
  .ihc-pr-top,
  .ihc-pr-spec,
  .ihc-pr-band__grid { grid-template-columns: 1fr; }
  .ihc-pr-why { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .ihc-pr-trust { grid-template-columns: 1fr; gap: 12px; }
  .ihc-pr-why { grid-template-columns: 1fr; }
  .ihc-pr-gallery__thumbs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* Meretrajz a muszaki tablazat alatt: feher alapon, teljes szelessegben. */
.ihc-pr-drawing.ihc-pr-drawing { margin: clamp(14px, 1.6vw, 20px) 0 0; }
.ihc-pr-drawing img {
  display: block;
  width: 100%;
  height: auto;
  background: #fff;
  border-radius: var(--ihc-radius);
  padding: clamp(10px, 1.2vw, 16px);
}


/* ---------- 72. TERMEKGALERIA: LAPOZO, PONTOK, NAGYITAS ---------- */
/* A belyegkepsor ket szelere nyil kerul, ala pedig pontsor: a sotet petrol pont
   mutatja, melyik kep lathato nagyban. A vezerloket a JS epiti fel a kepek
   szamabol, ezert a szerkesztoben szabadon lehet kepet hozzaadni vagy elvenni. */

.ihc-pr-gallery__strip {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(6px, 1vw, 12px);
  margin-top: clamp(10px, 1.2vw, 16px);
}
.ihc-pr-gallery__strip .ihc-pr-gallery__thumbs { margin-top: 0; }

.ihc-pr-nav {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0 3px;
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: 999px;
  color: var(--ihc-deep);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.ihc-pr-nav:hover,
.ihc-pr-nav:focus-visible {
  background: var(--ihc-accent);
  border-color: var(--ihc-accent);
  color: #fff;
}

.ihc-pr-gallery__dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: clamp(10px, 1.2vw, 14px);
}
.ihc-pr-dot {
  width: 9px;
  height: 9px;
  padding: 0;
  background: var(--ihc-line);
  border: 0;
  border-radius: 999px;
  cursor: pointer;
  transition: background .18s ease, transform .18s ease;
}
.ihc-pr-dot:hover { background: var(--ihc-accent); }
.ihc-pr-dot.is-active { background: var(--ihc-deep); transform: scale(1.15); }

/* --- Nagyitas (lightbox) --- */
/* A fo kepre kattintva teljes kepernyon nyilik meg; ott is lehet lapozni
   nyilakkal, pontokkal es billentyuzettel (nyilak, Esc), a hatterre kattintva zar. */
.ihc-pr-gallery__main img { cursor: zoom-in; }

.ihc-pr-lb {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(16px, 4vw, 48px);
  background: rgba(2, 63, 85, .93);
  opacity: 0;
  visibility: hidden;
  transition: opacity .2s ease, visibility .2s ease;
}
.ihc-pr-lb.is-open { opacity: 1; visibility: visible; }
.ihc-pr-lb__img {
  max-width: min(1100px, 92vw);
  max-height: 76vh;
  background: #fff;
  border-radius: var(--ihc-radius);
  padding: clamp(10px, 1.4vw, 20px);
  object-fit: contain;
}
.ihc-pr-lb__btn {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0 0 3px;
  background: rgba(255, 255, 255, .92);
  border: 0;
  border-radius: 999px;
  color: var(--ihc-deep);
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  transition: background .18s ease, transform .18s ease;
}
.ihc-pr-lb__btn:hover,
.ihc-pr-lb__btn:focus-visible { background: #fff; transform: scale(1.06); }
.ihc-pr-lb__prev { left: clamp(10px, 3vw, 40px); top: 50%; margin-top: -22px; }
.ihc-pr-lb__next { right: clamp(10px, 3vw, 40px); top: 50%; margin-top: -22px; }
.ihc-pr-lb__close { top: clamp(10px, 3vw, 32px); right: clamp(10px, 3vw, 32px); font-size: 19px; padding: 0; }
.ihc-pr-lb__dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: clamp(16px, 4vw, 40px);
  display: flex;
  justify-content: center;
  gap: 10px;
}
.ihc-pr-lb__dots .ihc-pr-dot { background: rgba(255, 255, 255, .45); }
.ihc-pr-lb__dots .ihc-pr-dot:hover { background: rgba(255, 255, 255, .8); }
.ihc-pr-lb__dots .ihc-pr-dot.is-active { background: #fff; transform: scale(1.15); }

/* Amig a nagyitas nyitva van, a hatter ne gorduljon. */
body.ihc-lb-open { overflow: hidden; }

/* --- A harom garancia-jelzes ikonja --- */
/* Vonalas ikonok CSS hatterkepkent (data URI), igy nincs extra HTTP keres,
   es a blokk tartalmahoz sem kell hozzanyulni a szerkesztoben. */
.ihc-pr-trust .ihc-pr-trust__item {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  column-gap: 10px;
  align-items: start;
}
.ihc-pr-trust .ihc-pr-trust__item::before {
  content: "";
  grid-row: 1 / span 2;
  width: 26px;
  height: 26px;
  background-repeat: no-repeat;
  background-position: center top 1px;
  background-size: 24px 24px;
}
.ihc-pr-trust .ihc-pr-trust__item strong,
.ihc-pr-trust .ihc-pr-trust__item span { grid-column: 2; }
.ihc-pr-trust .ihc-pr-trust__item:nth-child(1)::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20width='24'%20height='24'%20fill='none'%20stroke='%230F7B8A'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M2%206.5h11v9H2z'/%3E%3Cpath%20d='M13%209.5h3.6l3.4%203.2v2.8H13z'/%3E%3Ccircle%20cx='6.2'%20cy='17.5'%20r='1.9'/%3E%3Ccircle%20cx='16.6'%20cy='17.5'%20r='1.9'/%3E%3Cpath%20d='M8.1%2017.5h6.6'/%3E%3C/svg%3E"); }
.ihc-pr-trust .ihc-pr-trust__item:nth-child(2)::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20width='24'%20height='24'%20fill='none'%20stroke='%230F7B8A'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%202.6%204.6%205.3v5.6c0%204.6%203.1%207.9%207.4%209.2%204.3-1.3%207.4-4.6%207.4-9.2V5.3z'/%3E%3Cpath%20d='M9%2011.8l2.1%202.1%204.1-4.1'/%3E%3C/svg%3E"); }
.ihc-pr-trust .ihc-pr-trust__item:nth-child(3)::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20width='24'%20height='24'%20fill='none'%20stroke='%230F7B8A'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M20.5%2012a8.5%208.5%200%201%201-2.5-6'/%3E%3Cpath%20d='M18.4%202.6v3.7h-3.7'/%3E%3Cpath%20d='M12%208v4.3l2.8%201.7'/%3E%3C/svg%3E"); }

/* --- A fejlec-blokk felso terkoze szukebb: a morzsamenu ne lebegjen. --- */
.ihc-section.ihc-pr-header { padding-top: clamp(16px, 1.8vw, 26px); }


/* ---------- 73. TERMEKOLDAL: HARMAS ELONYSAV ---------- */
/* Egyetlen halvany panel, benne harom tetel: balra vonalas ikon, jobbra
   cim es leiras. Nem kartyaracs, ezert nem a .ihc-tp-card-ot hasznalja. */
.ihc-pr-usp {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 3vw, 52px);
  padding: clamp(24px, 3vw, 40px) clamp(24px, 3.5vw, 56px);
  background: var(--ihc-surface);
  border-radius: var(--ihc-radius-lg);
}
.ihc-pr-usp__item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: clamp(12px, 1.4vw, 18px);
  align-items: start;
}
.ihc-pr-usp__item .wp-block-image {
  grid-row: 1 / span 2;
  margin: 0;
}
.ihc-pr-usp__item .wp-block-image img {
  display: block;
  width: clamp(32px, 2.8vw, 40px);
  height: auto;
  border-radius: 0;
}
.ihc-pr-usp__item h3 {
  grid-column: 2;
  margin: 0 0 6px;
  font-size: clamp(15px, 1.2vw, 17px);
  line-height: 1.35;
  color: var(--ihc-deep);
}
.ihc-pr-usp__item p {
  grid-column: 2;
  margin: 0;
  font-size: clamp(13px, 1vw, 14.5px);
  line-height: 1.6;
  color: var(--ihc-muted);
}
@media (max-width: 1023px) {
  .ihc-pr-usp { grid-template-columns: 1fr; gap: clamp(18px, 3vw, 26px); }
}


/* ---------- 74. TERMEKLEIRAS: "BOVEBBEN" LENYITAS ---------- */
/* A leiras hosszabb lehet, mint a jobb oldali muszaki tablazat. Az elso harom
   bekezdes mindig latszik, a tobbi egy <details> mogott van. Nem kell hozza JS:
   a details/summary a bongeszo sajat megoldasa. */
.ihc-pr-more.ihc-pr-more { margin: clamp(6px, 1vw, 12px) 0 0; }
.ihc-pr-more > summary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: auto;
  padding: 0;
  background: none;
  border: 0;
  color: var(--ihc-accent-2);
  font-size: clamp(13.5px, 1.05vw, 15px);
  font-weight: 600;
  cursor: pointer;
  list-style: none;
}
.ihc-pr-more > summary::-webkit-details-marker { display: none; }
.ihc-pr-more > summary::after {
  content: "\2304";
  font-size: 15px;
  line-height: 1;
  transform: translateY(-3px);
  transition: transform .18s ease;
}
.ihc-pr-more[open] > summary::after { transform: translateY(1px) rotate(180deg); }
.ihc-pr-more > summary:hover { color: var(--ihc-accent); }
.ihc-pr-more[open] > summary { margin-bottom: 14px; }
.ihc-pr-more h3 {
  margin: 18px 0 6px;
  font-size: clamp(15px, 1.2vw, 17px);
  color: var(--ihc-deep);
}
.ihc-pr-more h3:first-child { margin-top: 0; }
.ihc-pr-more p { margin: 0 0 12px; color: var(--ihc-muted); line-height: 1.75; }


/* ---------- 75. KARTYAK: FINOM EMELES ES ARNYEK HOVEREN ---------- */
/* Minden kartyara vonatkozik (elonyok, kinek ajanlott, bizalmi sor, terapia- es
   tamogatas-aloldalak is), hogy a mozgas az egesz oldalon egyforma legyen.
   A prefers-reduced-motion beallitasnal csak az arnyek marad. */
.ihc-tp-card {
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  will-change: transform;
}
.ihc-tp-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(2, 63, 85, .10);
}
.ihc-pr-usp__item { transition: transform .2s ease; }
.ihc-pr-usp__item:hover { transform: translateY(-2px); }

@media (prefers-reduced-motion: reduce) {
  .ihc-tp-card,
  .ihc-tp-card:hover,
  .ihc-pr-usp__item,
  .ihc-pr-usp__item:hover { transform: none; transition: box-shadow .2s ease; }
}


/* ---------- 76. TERMEKOLDAL: RACSOK, KIEMELT SAV, GOMB ---------- */

/* A blokk-szerkeszto minden masodik es tovabbi gyerekre felso margot tesz.
   A sajat racsainkban ez elcsusztatja az elso elemet a tobbihez kepest,
   ezert itt kikapcsoljuk - a terkozt a grid gap adja. */
.ihc-pr-top.ihc-pr-top > *,
.ihc-pr-spec.ihc-pr-spec > *,
.ihc-pr-band__grid.ihc-pr-band__grid > *,
.ihc-pr-gallery__thumbs.ihc-pr-gallery__thumbs > *,
.ihc-pr-trust.ihc-pr-trust > *,
.ihc-pr-usp.ihc-pr-usp > *,
.ihc-pr-usp__item.ihc-pr-usp__item > *,
.ihc-pr-why.ihc-pr-why > *,
.ihc-pr-feature.ihc-pr-feature > * { margin-block-start: 0; }

/* --- Kiemelt sav: balra kifuto kep, jobbra halvany panel --- */
.ihc-pr-feature {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  align-items: stretch;
  background: var(--ihc-tint);
  border-radius: var(--ihc-radius-lg);
  overflow: hidden;
}
.ihc-pr-feature__media.ihc-pr-feature__media { margin: 0; height: 100%; }
.ihc-pr-feature__media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: clamp(260px, 26vw, 420px);
  object-fit: cover;
  border-radius: 0;
}
.ihc-pr-feature__text {
  align-self: center;
  padding: clamp(24px, 3vw, 48px);
}
.ihc-pr-feature__text > * { margin-block-start: 0; }
.ihc-pr-feature__text .ihc-eyebrow { margin: 0 0 10px; }
.ihc-pr-feature__text h2 {
  margin: 0 0 14px;
  font-size: clamp(22px, 2.2vw, 30px);
  line-height: 1.25;
  color: var(--ihc-deep);
}
.ihc-pr-feature__text p { margin: 0 0 16px; color: var(--ihc-muted); line-height: 1.7; }
.ihc-pr-feature__text .ihc-tp-list--check { margin: 0 0 clamp(18px, 2vw, 24px); }
.ihc-pr-feature__text .wp-block-buttons { margin: 0; }

@media (max-width: 1023px) {
  .ihc-pr-feature { grid-template-columns: 1fr; }
}

/* --- A belyegkepsor annyi oszlopos, ahany kep van --- */
.ihc-pr-gallery__thumbs.ihc-pr-gallery__thumbs {
  grid-template-columns: none;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
}

/* --- Az ajanlatkero gomb tomor petrol, mint a tobbi fo CTA az oldalon --- */
.ihc-pr-cta .wp-block-button__link {
  background: linear-gradient(160deg, #023F55 0%, #065E6B 100%);
  color: #fff;
  border: 0;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.ihc-pr-cta .wp-block-button__link:hover,
.ihc-pr-cta .wp-block-button__link:focus-visible {
  background: var(--ihc-accent);
  color: #fff;
}


/* ---------- 77. KARTYA IKONOK: 10px terkoz az ikon alatt ---------- */
.ihc-tp-card > .ihc-tp-icon.ihc-tp-icon { margin-bottom: 10px; }
.ihc-pr-usp__item .wp-block-image { margin-bottom: 10px; }


/* ---------- 78. AJANLATKERO GOMB: villodzasmentes hover ---------- */
/* A gomb alapja atmenet, a hover viszont egyszinu volt. Atmenetrol szinre a
   bongeszo nem tud atmenetet szamolni, ezert a szin ugrott - ez latszott
   villanasnak. Megoldas: a hatter mindig ugyanaz az atmenet marad, es csak
   a fenyerot (filter) animaljuk, ami folyamatosan interpolalhato. */
.ihc-pr-cta .wp-block-button .wp-block-button__link {
  background: linear-gradient(160deg, #023F55 0%, #065E6B 100%);
  transition: filter .18s ease, box-shadow .18s ease;
}
.ihc-pr-cta .wp-block-button .wp-block-button__link:hover,
.ihc-pr-cta .wp-block-button .wp-block-button__link:focus-visible {
  background: linear-gradient(160deg, #023F55 0%, #065E6B 100%);
  color: #fff;
  filter: brightness(1.22);
  box-shadow: 0 8px 20px rgba(2, 63, 85, .18);
}


/* ---------- 79. TERMEKOLDAL: SURUBB FUGGOLEGES RITMUS ---------- */
/* A termekoldalon sok rovid szekcio kovetkezik egymas utan, ezert az
   altalanos 64-112px-es szekcio-padding tul sok levegot hagyott a kartya-
   sorok es a cimsorok korul. A body.ihc-product kapaszkodot a mu-plugin
   teszi ki (8/d. szakasz). */
.ihc-product .ihc-section { padding-block: clamp(32px, 3.4vw, 52px); }
.ihc-product .ihc-section.ihc-pr-header { padding-top: clamp(14px, 1.6vw, 22px); }
.ihc-product .ihc-head { margin-bottom: clamp(20px, 2.2vw, 32px); }
/* Az egymast koveto, azonos hatteru szekciok kozott eleg egyszeres terkoz. */
.ihc-product .ihc-section + .ihc-section { padding-top: clamp(26px, 2.8vw, 42px); }


/* ---------- 80. ALLITASSAV GOMBOK ---------- */
/* A sotet savon ket gomb all: a bal tomor petrol, a jobb atlatszo, feher
   kerettel es feher felirattal. */
.ihc-pr-band__btns.ihc-pr-band__btns {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: clamp(20px, 2.2vw, 28px) 0 0;
}
.ihc-pr-band__btns .wp-block-button__link {
  padding: 14px 30px;
  border-radius: 999px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .04em;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.ihc-pr-band__btns .wp-block-button:not(.ihc-btn--ghost) .wp-block-button__link {
  background: var(--ihc-accent);
  border: 1px solid var(--ihc-accent);
  color: #fff;
}
.ihc-pr-band__btns .wp-block-button:not(.ihc-btn--ghost) .wp-block-button__link:hover,
.ihc-pr-band__btns .wp-block-button:not(.ihc-btn--ghost) .wp-block-button__link:focus-visible {
  background: #0A9AAC;
  border-color: #0A9AAC;
  color: #fff;
}
.ihc-pr-band__btns .ihc-btn--ghost .wp-block-button__link {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, .75);
  color: #fff;
}
.ihc-pr-band__btns .ihc-btn--ghost .wp-block-button__link:hover,
.ihc-pr-band__btns .ihc-btn--ghost .wp-block-button__link:focus-visible {
  background: rgba(255, 255, 255, .14);
  border-color: #fff;
  color: #fff;
}


/* ---------- 81. WEBSHOPOS TERMEKOLDAL (WooCommerce) ---------- */
/* A Woo termekoldal felso resze (galeria, ar, kosar) a tema sajat blokkja,
   a leiras alatti szekciok viszont ugyanazok, mint az ajanlatkereses
   termekoldalakon. Ez a szakasz koti ossze a kettot. */

/* --- Bal oszlop: a galeria ragad, ha a jobb oszlop hosszabb --- */
@media (min-width: 1000px) {
	.ihc-product-woo div.product .woocommerce-product-gallery {
		position: sticky;
		top: clamp(90px, 9vh, 130px);
		align-self: start;
	}
}

/* --- Rovid leiras: a felsorolas a bevezetovel azonos meretu --- */
.ihc-product-woo .woocommerce-product-details__short-description .ihc-lead {
	margin: 0 0 18px;
}
.ihc-product-woo .woocommerce-product-details__short-description .ihc-tp-list li {
	font-size: clamp(17px, 1.4vw, 20px);
	line-height: 1.6;
	margin-bottom: 10px;
}
.ihc-product-woo .woocommerce-product-details__short-description .ihc-tp-list li:last-child {
	margin-bottom: 0;
}
.ihc-product-woo .woocommerce-product-details__short-description .ihc-tp-list--check li::before {
	top: .18em;
}
.ihc-product-woo .woocommerce-product-details__short-description .ihc-tp-list--check li::after {
	top: .48em;
}

/* --- A "Torles" (valtozat visszaallitasa) link nem kell --- */
.ihc-product-woo .reset_variations {
	display: none !important;
}

/* --- A kivalasztott valtozat ara legyen a leghangsulyosabb --- */
.ihc-product-woo .woocommerce-variation-price {
	margin: 4px 0 16px;
}
.ihc-product-woo .woocommerce-variation-price .price,
.ihc-product-woo .woocommerce-variation-price .price .amount,
.ihc-product-woo .woocommerce-variation-price .price bdi {
	font-size: clamp(28px, 2.8vw, 38px);
	font-weight: 700;
	line-height: 1.15;
	color: var(--ihc-accent);
}

/* --- Fizetesi ikonok kozvetlenul a valtozatvalaszto alatt --- */
.ihc-product-woo .ct-payment-methods {
	margin-top: clamp(14px, 1.6vw, 20px);
}

/* --- Bizalmi sav a kosar urlap alatt --- */
.ihc-product-woo .ihc-pr-trust {
	margin-top: clamp(18px, 2vw, 26px);
}
.ihc-pr-trust--woo .ihc-pr-trust__item:nth-child(2)::before {
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20width='24'%20height='24'%20fill='none'%20stroke='%230F7B8A'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M20.4%2013.2c0%203.2-2.9%205.8-6.5%205.8-.9%200-1.8-.2-2.6-.5l-4%201.3%201.2-3.4a5.4%205.4%200%200%201-1.6-3.8c0-3.2%202.9-5.8%206.5-5.8s7%202.6%207%206.4z'/%3E%3Cpath%20d='M11.4%2011.8h5.2M11.4%2014.4h3.2'/%3E%3C/svg%3E");
}
.ihc-pr-trust--woo .ihc-pr-trust__item:nth-child(3)::before {
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20width='24'%20height='24'%20fill='none'%20stroke='%230F7B8A'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4.4%2013.6v-1.4a7.6%207.6%200%200%201%2015.2%200v1.4'/%3E%3Crect%20x='2.6'%20y='13.2'%20width='3.6'%20height='5.4'%20rx='1.4'/%3E%3Crect%20x='17.8'%20y='13.2'%20width='3.6'%20height='5.4'%20rx='1.4'/%3E%3Cpath%20d='M19.6%2018.6v.8a2.2%202.2%200%200%201-2.2%202.2h-2.6'/%3E%3C/svg%3E");
}

/* --- Termekleiras: szoveg mellett kephely --- */
.ihc-pr-spec__media.ihc-pr-spec__media {
	margin: 0;
	align-self: start;
}
.ihc-pr-spec__media img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: var(--ihc-radius-lg);
}

/* --- Termekadatok: ket hasabban egymas mellett --- */
.ihc-pr-specs {
	margin-top: clamp(30px, 3.4vw, 52px);
}
.ihc-pr-specs > * {
	margin-block-start: 0;
}
.ihc-pr-specs__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(20px, 2.4vw, 36px);
	align-items: start;
}
.ihc-pr-specs__grid > * {
	margin-block-start: 0;
}
@media (max-width: 860px) {
	.ihc-pr-specs__grid { grid-template-columns: 1fr; }
}

/* --- GYIK ket hasabban --- */
.ihc-tp-faq--2col {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px clamp(20px, 2.4vw, 36px);
	align-items: start;
}
.ihc-tp-faq--2col > * {
	margin-block-start: 0;
}
.ihc-tp-faq--2col .wp-block-details,
.ihc-tp-faq--2col .wp-block-details:last-child {
	margin: 0;
}
@media (max-width: 860px) {
	.ihc-tp-faq--2col { grid-template-columns: 1fr; }
}

/* A ket hasabos GYIK a teljes tartalomszelesseget hasznalja. */
.ihc-tp-faq--2col.ihc-tp-faq--wide {
	max-width: none;
	margin-inline: 0;
}

/* --- Termekadatok tablazat: sotet petrol blokk, keret es csikozas nelkul --- */
.ihc-pr-specs__grid .ihc-pr-table.ihc-pr-table {
	background: var(--ihc-deep);
	border: 0;
	border-radius: var(--ihc-radius);
	overflow: hidden;
	padding: 8px 0;
}
.ihc-pr-specs__grid .ihc-pr-table table,
.ihc-pr-specs__grid .ihc-pr-table tbody,
.ihc-pr-specs__grid .ihc-pr-table tr,
.ihc-pr-specs__grid .ihc-pr-table tr:nth-child(odd) td,
.ihc-pr-specs__grid .ihc-pr-table tr:nth-child(even) td {
	background: transparent;
}
.ihc-pr-specs__grid .ihc-pr-table td,
.ihc-pr-specs__grid .ihc-pr-table tr:last-child td {
	border: 0;
	padding: 11px clamp(14px, 1.6vw, 20px);
	color: rgba(255, 255, 255, .8);
}
.ihc-pr-specs__grid .ihc-pr-table td:first-child {
	color: #fff;
	font-weight: 600;
}

/* ---------- 83. WEBSHOPOS TERMEKOLDAL – finomhangolas ---------- */

/* --- Nagyobb terkoz a menu alatt --- */
.ihc-product-woo div.product {
	margin-top: clamp(24px, 3vw, 48px);
}

/* --- A termeknev legyen a lap leghangsulyosabb eleme, petrol szinnel --- */
.ihc-product-woo .product_title,
.ihc-product-woo h1.product_title {
	color: var(--ihc-accent);
	font-size: clamp(30px, 3.2vw, 44px);
	line-height: 1.15;
	margin: 8px 0 10px;
}

/* --- Alcim a termeknev alatt (a regi oldal pswc_subtitle mezoje) --- */
.ihc-product-woo .ihc-pr-subtitle {
	margin: 0 0 14px;
	font-size: clamp(15px, 1.3vw, 19px);
	line-height: 1.4;
	font-weight: 500;
	letter-spacing: .02em;
	text-transform: uppercase;
	color: var(--ihc-muted);
}

/* --- Valtozatvalaszto: nagyobb betuk --- */
.ihc-product-woo .variations label,
.ihc-product-woo .variations .label label {
	font-size: clamp(15px, 1.2vw, 17px);
	font-weight: 600;
	color: var(--ihc-ink);
}
.ihc-product-woo .variations select {
	font-size: clamp(15px, 1.25vw, 17.5px);
	padding-block: 13px;
	height: auto;
}

/* --- Fizetesi ikonok blokk (sajat) --- */
.ihc-product-woo .ihc-pay {
	margin-top: clamp(16px, 1.8vw, 24px);
	text-align: center;
}
.ihc-product-woo .ihc-pay__title {
	margin: 0 0 12px;
	font-size: clamp(14px, 1.1vw, 16px);
	font-weight: 600;
	color: var(--ihc-ink);
}
.ihc-product-woo .ihc-pay img {
	display: block;
	margin: 0 auto;
	width: 100%;
	max-width: 420px;
	height: auto;
}

/* --- "Miert kulonleges" – 2x2 kiemelt, szines kartyak --- */
.ihc-pr-highlights.ihc-pr-highlights {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(16px, 1.8vw, 26px);
}
.ihc-pr-highlights .ihc-tp-card {
	background: linear-gradient(135deg, var(--ihc-accent) 0%, var(--ihc-accent-2) 100%);
	border: 0;
	box-shadow: 0 14px 34px rgba(2, 63, 85, .16);
	padding: clamp(26px, 2.8vw, 40px) clamp(22px, 2.4vw, 34px);
}
.ihc-pr-highlights .ihc-tp-card h3 {
	color: #fff;
	font-size: clamp(20px, 1.9vw, 26px);
	line-height: 1.3;
}
.ihc-pr-highlights .ihc-tp-card p {
	color: rgba(255, 255, 255, .9);
	font-size: clamp(15px, 1.25vw, 17.5px);
	line-height: 1.6;
}
@media (max-width: 780px) {
	.ihc-pr-highlights.ihc-pr-highlights { grid-template-columns: 1fr; }
}

/* --- Termekadatok: egybefuggo sotet petrol blokk --- */
.ihc-pr-specs {
	background: var(--ihc-deep);
	border-radius: var(--ihc-radius-lg);
	padding: clamp(28px, 3vw, 46px) clamp(20px, 2.6vw, 40px) clamp(22px, 2.4vw, 36px);
}
.ihc-pr-specs h3 {
	margin: 0;
	text-align: center;
	padding-bottom: clamp(16px, 1.8vw, 26px) !important;
}
.ihc-pr-specs h3,
.ihc-pr-specs h3 span,
.ihc-pr-specs h3 .stk-highlight {
	color: #fff !important;
}
.ihc-pr-specs__grid .ihc-pr-table.ihc-pr-table {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
	overflow: visible;
	box-shadow: none;
}

/* ---------- 84. TERMEKADATOK tablazat – keret nelkul, tomorebb, nagyobb betu ---------- */

/* A feher keretet a tablazat sajat (Blocksy/Gutenberg) szegelye adta: minden
   szegelyt levesszuk a sotet petrol blokkon belul. */
.ihc-pr-specs__grid .ihc-pr-table,
.ihc-pr-specs__grid .ihc-pr-table table,
.ihc-pr-specs__grid .ihc-pr-table thead,
.ihc-pr-specs__grid .ihc-pr-table tbody,
.ihc-pr-specs__grid .ihc-pr-table tfoot,
.ihc-pr-specs__grid .ihc-pr-table tr,
.ihc-pr-specs__grid .ihc-pr-table th,
.ihc-pr-specs__grid .ihc-pr-table td {
	border: 0 !important;
	box-shadow: none !important;
}

/* Sorkoz 30%-kal kisebb (11px -> 7.7px), betumeret 2px-el nagyobb. */
.ihc-pr-specs__grid .ihc-pr-table td,
.ihc-pr-specs__grid .ihc-pr-table th,
.ihc-pr-specs__grid .ihc-pr-table tr:last-child td {
	padding-block: 7.7px;
	font-size: clamp(15px, 1.15vw, 16.5px);
	line-height: 1.5;
}

/* ---------- 85. WEBSHOPOS TERMEKOLDAL – kompaktabb termeknev ---------- */
.ihc-product-woo .product_title,
.ihc-product-woo h1.product_title {
	font-size: clamp(25px, 2.4vw, 34px);
	line-height: 1.12;
	margin: 4px 0 8px;
}
.ihc-product-woo .ihc-pr-subtitle {
	font-size: clamp(13.5px, 1.05vw, 16px);
	margin: 0 0 12px;
}

/* ---------- 86. "Miert kulonleges" – kocka alaku, kozepre zart kartyak ---------- */
.ihc-pr-highlights.ihc-pr-highlights {
	max-width: 860px;
	margin-inline: auto;
	gap: clamp(14px, 1.4vw, 20px);
}
.ihc-pr-highlights .ihc-tp-card {
	aspect-ratio: 1 / 1;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: clamp(20px, 2.2vw, 30px);
}
.ihc-pr-highlights .ihc-tp-card .ihc-tp-icon,
.ihc-pr-highlights .ihc-tp-card figure {
	margin-inline: auto;
}
.ihc-pr-highlights .ihc-tp-card .ihc-tp-icon img {
	width: 60px !important;
}
.ihc-pr-highlights .ihc-tp-card h3 {
	font-size: clamp(17px, 1.5vw, 21px);
	line-height: 1.25;
	margin-bottom: 6px;
}
.ihc-pr-highlights .ihc-tp-card p {
	font-size: clamp(13px, 1.05vw, 15px);
	line-height: 1.5;
}
@media (max-width: 780px) {
	.ihc-pr-highlights .ihc-tp-card { aspect-ratio: auto; }
}

/* ---------- 87. WEBSHOPOS TERMEKOLDAL – kisebb ar es alapszoveg ---------- */

/* Ar */
.ihc-product-woo .entry-summary > .price,
.ihc-product-woo .entry-summary .price,
.ihc-product-woo .woocommerce-variation-price .price,
.ihc-product-woo .entry-summary .price .woocommerce-Price-amount {
	font-size: clamp(22px, 2vw, 28px);
	line-height: 1.2;
}

/* Rovid leiras a cim alatt */
.ihc-product-woo .woocommerce-product-details__short-description p,
.ihc-product-woo .woocommerce-product-details__short-description li,
.ihc-product-woo .entry-summary .ihc-lead,
.ihc-product-woo .entry-summary .ihc-tp-list li {
	font-size: clamp(14.5px, 1.1vw, 16.5px);
	line-height: 1.55;
}

/* A leiras szekcioinak alapszovege */
.ihc-product-woo .ihc-section p,
.ihc-product-woo .ihc-section li,
.ihc-product-woo .ihc-section .ihc-lead {
	font-size: clamp(14.5px, 1.1vw, 16.5px);
	line-height: 1.6;
}
.ihc-product-woo .ihc-head p {
	font-size: clamp(14px, 1.05vw, 16px);
}

/* ---------- 88. "Miert kulonleges" – tartalomhoz igazodo magassag ---------- */
/* A kenyszeritett negyzet alak nagy ures teret hagyott a rovid szovegek alatt,
   ezert a kartya magassaga megint a tartalomhoz igazodik. A sorok rovidebbek,
   igy a szoveg ket-harom sorra torik. */
.ihc-pr-highlights .ihc-tp-card {
	aspect-ratio: auto;
	padding: clamp(22px, 2.2vw, 30px) clamp(20px, 2vw, 28px);
	gap: 0;
}
.ihc-pr-highlights .ihc-tp-card .ihc-tp-icon {
	margin-bottom: 12px;
}
.ihc-pr-highlights .ihc-tp-card h3 {
	margin-bottom: 8px;
}
.ihc-pr-highlights .ihc-tp-card p {
	max-width: 32ch;
	margin-inline: auto;
}

/* ---------- 89. "Miben segithet" – keskenyebb, aranyosabb kartyak ---------- */
#miben-segithet .ihc-tp-cards {
	max-width: 980px;
	margin-inline: auto;
	gap: clamp(14px, 1.4vw, 20px);
}
#miben-segithet .ihc-tp-card {
	padding: clamp(20px, 2vw, 28px) clamp(16px, 1.6vw, 22px);
}
#miben-segithet .ihc-tp-card .ihc-tp-icon {
	margin-bottom: 10px;
}
#miben-segithet .ihc-tp-card .ihc-tp-icon img {
	width: 64px !important;
}
#miben-segithet .ihc-tp-card h3 {
	font-size: clamp(15px, 1.2vw, 17px);
	line-height: 1.3;
	margin-bottom: 6px;
}
#miben-segithet .ihc-tp-card p {
	font-size: clamp(12.5px, 1vw, 14px);
	line-height: 1.5;
}

/* ---------- 90. Termekleiras es a TERMEKADATOK panel kozotti terkoz ---------- */
.ihc-product-woo .ihc-pr-specs {
	margin-top: clamp(40px, 4.5vw, 76px);
}
.ihc-product-woo .ihc-pr-spec-section .wp-block-details {
	margin-bottom: 0;
}

/* ---------- 91. KATEGORIA OSSZESITO OLDALAK ---------- */

/* --- Sajat hero a Woo kategoria archivumon (teljes szelesseg) --- */
.ihc-cat-hero {
	position: relative;
	margin-inline: calc(50% - 50vw);
	width: 100vw;
	max-width: 100vw;
	background-size: cover;
	background-position: center;
	padding-block: clamp(64px, 8vw, 120px);
	margin-bottom: clamp(40px, 5vw, 72px);
	color: #fff;
	isolation: isolate;
}
.ihc-cat-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(90deg, rgba(2, 63, 85, .82) 0%, rgba(2, 63, 85, .58) 55%, rgba(2, 63, 85, .28) 100%);
}
.ihc-cat-hero .ihc-tp-hero__text { max-width: 720px; }
.ihc-cat-hero .ihc-eyebrow { color: #fff; opacity: .85; }
.ihc-cat-hero h1 {
	margin: 0 0 14px;
	color: #fff;
	font-size: clamp(32px, 4vw, 54px);
	line-height: 1.1;
}
.ihc-cat-hero .ihc-lead {
	margin: 0;
	color: rgba(255, 255, 255, .92);
	font-size: clamp(15px, 1.25vw, 18px);
	line-height: 1.6;
}

/* --- Woo termeklista kartyai a design rendszerben --- */
.ihc-shop ul.products {
	gap: clamp(16px, 1.8vw, 26px);
}
.ihc-shop ul.products li.product {
	background: #fff;
	border: 1px solid var(--ihc-line);
	border-radius: var(--ihc-radius);
	padding: clamp(14px, 1.4vw, 20px);
	box-shadow: 0 8px 24px rgba(2, 63, 85, .05);
	transition: box-shadow .18s ease, transform .18s ease;
}
.ihc-shop ul.products li.product:hover {
	box-shadow: 0 16px 36px rgba(2, 63, 85, .12);
	transform: translateY(-2px);
}
.ihc-shop ul.products li.product .woocommerce-loop-product__title {
	color: var(--ihc-accent);
	font-size: clamp(15px, 1.25vw, 18px);
	line-height: 1.3;
	font-weight: 600;
}
.ihc-shop ul.products li.product .price {
	color: var(--ihc-ink);
	font-size: clamp(15px, 1.2vw, 17px);
	font-weight: 600;
}

/* --- Ajanlatkereses eszkozok savja --- */
.ihc-cat-quote {
	margin-inline: calc(50% - 50vw);
	width: 100vw;
	max-width: 100vw;
	background: var(--ihc-surface);
	padding-block: clamp(56px, 6vw, 96px);
	margin-top: clamp(48px, 5vw, 80px);
}
.ihc-cat-quote .ihc-head { margin-bottom: clamp(32px, 3.5vw, 52px); }
.ihc-cat-quote .ihc-head h2 {
	margin: 0;
	font-size: clamp(26px, 2.6vw, 36px);
	line-height: 1.2;
	color: var(--ihc-deep);
}

.ihc-cat-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(16px, 1.8vw, 26px);
}
@media (max-width: 1100px) { .ihc-cat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 860px)  { .ihc-cat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px)  { .ihc-cat-grid { grid-template-columns: 1fr; } }

.ihc-cat-card {
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--ihc-line);
	border-radius: var(--ihc-radius);
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	box-shadow: 0 8px 24px rgba(2, 63, 85, .05);
	transition: box-shadow .18s ease, transform .18s ease;
}
.ihc-cat-card:hover {
	box-shadow: 0 16px 36px rgba(2, 63, 85, .12);
	transform: translateY(-2px);
}
.ihc-cat-card__media {
	display: block;
	aspect-ratio: 4 / 3;
	background: var(--ihc-tint);
	overflow: hidden;
}
.ihc-cat-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.ihc-cat-card__body {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: clamp(16px, 1.6vw, 22px);
	flex: 1;
}
.ihc-cat-card__title {
	font-size: clamp(15px, 1.25vw, 18px);
	line-height: 1.3;
	font-weight: 600;
	color: var(--ihc-accent);
}
.ihc-cat-card__text {
	font-size: clamp(13px, 1.05vw, 14.5px);
	line-height: 1.55;
	color: var(--ihc-muted);
	flex: 1;
}
.ihc-cat-card__cta {
	display: inline-flex;
	align-items: center;
	gap: .4em;
	margin-top: 4px;
	font-size: 14px;
	font-weight: 600;
	color: var(--ihc-accent);
}
.ihc-cat-card__cta::after { content: "\2192"; transition: transform .18s ease; }
.ihc-cat-card:hover .ihc-cat-card__cta::after { transform: translateX(3px); }

/* ---------- 92. KATEGORIA SAVOK – teljes szelesseg a tartalomban ---------- */
/* A tema .entry-content > * szabalya erosebb volt, ezert dupla osztaly. */
.ihc-cat-quote.ihc-cat-quote {
	margin-inline: calc(50% - 50vw);
	margin-top: clamp(48px, 5vw, 80px);
	margin-bottom: 0;
	width: 100vw;
	max-width: 100vw;
}
.ihc-cat-hero.ihc-cat-hero {
	margin-inline: calc(50% - 50vw);
	width: 100vw;
	max-width: 100vw;
}
/* A gyujtooldalon a hero utan kozvetlenul jon a sav, ne legyen dupla terkoz. */
.ihc-tp-hero + .ihc-cat-quote.ihc-cat-quote { margin-top: 0; }

/* -----------------------------------------------------------------
 * 93. Ajanlatkereses termekoldalak: a fo kep alapertelmezetten 1:1.
 *     A korabbi 4/3-as arany mellett az allo/keskeny termekfotok
 *     koruli ures sav miatt a kep kisebbnek latszott a helyenel.
 * ----------------------------------------------------------------- */
.ihc-pr-gallery__main img {
  aspect-ratio: 1 / 1;
}

/* -----------------------------------------------------------------
 * 94. Shop megamenu panel.
 *     A tartalmat az [ihc_shop_menu] rovidkod adja: 4 eszkozcsalad
 *     oszlop + egy szerkesztheto kiemelt oszlop. A stilus a tobbi
 *     megamenu panel formanyelvet koveti (13.5px-es nagybetus fejlec
 *     26px-es ikonnal, turkiz aláhúzás, halvany elvalaszto vonalak).
 * ----------------------------------------------------------------- */
.ihc-mm-shop {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)) clamp(230px, 19vw, 290px);
  gap: clamp(18px, 2vw, 34px);
  align-items: start;
  width: 100%;
}
.ihc-mm-shop .ihc-mm-shop__col {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.ihc-mm-shop .ihc-mm-shop__col + .ihc-mm-shop__col {
  border-left: 1px solid #E6ECEE;
  padding-left: clamp(18px, 2vw, 34px);
}

/* --- Fejlec --- */
.ihc-mm-shop .ihc-mm-shop__head {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 12px;
  padding-bottom: 12px;
  font-size: 13.5px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  line-height: 1.2;
  color: var(--ihc-ink);
}
.ihc-mm-shop .ihc-mm-shop__head img {
  width: 26px;
  height: 26px;
  flex: 0 0 auto;
  display: block;
}
.ihc-mm-shop .ihc-mm-shop__head::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 34px;
  height: 2px;
  border-radius: 2px;
  background: var(--ihc-accent);
}
.ihc-mm-shop .ihc-mm-shop__sub {
  margin: 0 0 14px;
  font-size: 13px;
  line-height: 1.35;
  color: var(--ihc-muted);
}

/* --- Termeklista --- */
.ihc-mm-shop ul.ihc-mm-shop__list {
  list-style: none;
  margin: 0 0 14px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ihc-mm-shop ul.ihc-mm-shop__list li {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ihc-mm-shop ul.ihc-mm-shop__list li::marker { content: none; }
.ihc-mm-shop ul.ihc-mm-shop__list li a {
  display: block;
  padding: 3px 0;
  font-size: 14.5px;
  line-height: 1.35;
  font-weight: 400;
  text-decoration: none;
  color: var(--ihc-ink);
  transition: color .16s ease, transform .16s ease;
}
.ihc-mm-shop ul.ihc-mm-shop__list li a:hover,
.ihc-mm-shop ul.ihc-mm-shop__list li a:focus-visible {
  color: var(--ihc-accent);
  transform: translateX(3px);
}

/* --- "minden ... termek" link az oszlop aljan --- */
.ihc-mm-shop .ihc-mm-shop__all {
  margin: auto 0 0;
  padding-top: 4px;
  font-size: 13px;
  line-height: 1.3;
}
.ihc-mm-shop .ihc-mm-shop__all a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 600;
  text-decoration: none;
  color: var(--ihc-accent);
}
.ihc-mm-shop .ihc-mm-shop__all a::after {
  content: "\2192";
  transition: transform .16s ease;
}
.ihc-mm-shop .ihc-mm-shop__all a:hover::after { transform: translateX(3px); }

/* --- Kiemelt oszlop --- */
.ihc-mm-shop .ihc-mm-shop__promo {
  background: var(--ihc-surface);
  border-radius: var(--ihc-radius);
  padding: clamp(16px, 1.6vw, 22px);
  border-left: 0;
}
.ihc-mm-shop .ihc-mm-shop__promo > *:first-child { margin-top: 0; }
.ihc-mm-shop .ihc-mm-shop__promo > *:last-child { margin-bottom: 0; }
.ihc-mm-shop .ihc-mm-shop__promo img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 12px;
  margin-bottom: 12px;
}
.ihc-mm-shop .ihc-mm-shop__promo h4,
.ihc-mm-shop .ihc-mm-shop__promo h5 {
  margin: 0 0 6px;
  font-size: 15px;
  line-height: 1.25;
  color: var(--ihc-deep);
}
.ihc-mm-shop .ihc-mm-shop__promo p {
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.4;
  color: var(--ihc-muted);
}
.ihc-mm-shop .ihc-mm-shop__promo a {
  font-weight: 600;
  text-decoration: none;
  color: var(--ihc-accent);
}

/* --- Kisebb kepernyokon --- */
@media (max-width: 1400px) {
  .ihc-mm-shop { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .ihc-mm-shop .ihc-mm-shop__promo {
    grid-column: 1 / -1;
    border-left: 0;
    padding-left: clamp(16px, 1.6vw, 22px);
  }
}
@media (max-width: 900px) {
  .ihc-mm-shop { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .ihc-mm-shop .ihc-mm-shop__col + .ihc-mm-shop__col { border-left: 0; padding-left: 0; }
  .ihc-mm-shop .ihc-mm-shop__promo { padding-left: clamp(16px, 1.6vw, 22px); }
}
@media (max-width: 600px) {
  .ihc-mm-shop { grid-template-columns: 1fr; }
}

/* -----------------------------------------------------------------
 * 95. Shop megamenu: igazitas a tobbi panelhez.
 *     A fejlecsor tipografiaja es a turkiz alahuzas a 896/8333/8243
 *     elemeknel kulon szabalyban all; a Shop elem (8899) ugyanazt kapja.
 * ----------------------------------------------------------------- */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8899 .ihc-mm-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 clamp(18px, 1.8vw, 26px);
  font-size: 13.5px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--ihc-ink);
  line-height: 1.2;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8899 .ihc-mm-head img {
  width: 26px;
  height: 26px;
  flex: 0 0 auto;
  display: block;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8899 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:first-child .ihc-mm-head {
  position: relative;
  padding-bottom: 14px;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8899 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:first-child .ihc-mm-head::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 34px;
  height: 2px;
  background: var(--ihc-accent);
  border-radius: 2px;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8899 .ihc-mm-headrow > .mega-sub-menu > .mega-menu-column:last-child {
  border-left: 1px solid transparent;
}
/* A jobb oldali fejlec linkje a panel jobb szelehez igazodik. */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8899 .ihc-mm-head--right {
  justify-content: flex-end;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8899 .ihc-mm-head--right a {
  text-decoration: none;
  color: var(--ihc-accent);
}

/* A kiemelt oszlopnak nincs elvalaszto vonala - a sajat hattere hatarolja. */
.ihc-mm-shop .ihc-mm-shop__col.ihc-mm-shop__promo {
  border-left: 0;
}

/* ===== 96. Shop megamenu (8899): lap szeles panel + alkategoriak ===== */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8899 > .mega-sub-menu {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 10px 0 0 !important;
  box-shadow: none !important;
  filter: drop-shadow(0 16px 36px rgba(2, 63, 85, .14));
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8899 > ul.mega-sub-menu > li.mega-menu-row {
  width: min(1320px, calc(100% - 40px));
  max-width: none;
  margin: 0 auto;
  float: none;
  background: #fff;
  border: 1px solid #E6ECEE;
  border-radius: 18px;
  padding: clamp(20px, 2vw, 30px) clamp(22px, 2.4vw, 34px);
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8899 .mega-menu-row > .mega-sub-menu {
  max-width: none;
  margin: 0;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8899 .mega-menu-column {
  width: 100% !important;
  float: none;
  min-width: 0;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 #mega-menu-item-8899 .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item {
  float: none;
  clear: none;
  width: 100%;
  padding: 0;
  vertical-align: baseline;
  text-align: inherit;
}

/* a panel belseje: csaladonkent 1 vagy 2 aloszlop */
.ihc-mm-shop {
  display: flex;
  gap: clamp(14px, 1.4vw, 22px);
  align-items: stretch;
  grid-template-columns: none;
}
.ihc-mm-shop__fam {
  flex: var(--ihc-fam-w, 1) 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: 0;
  border: 0;
}
.ihc-mm-shop .ihc-mm-shop__fam + .ihc-mm-shop__fam {
  border-left: 1px solid var(--ihc-line);
  padding-left: clamp(14px, 1.4vw, 22px);
}
.ihc-mm-shop__fam .ihc-mm-shop__head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 2px;
  font-size: clamp(13px, 1vw, 14.5px);
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--ihc-deep);
  line-height: 1.2;
}
.ihc-mm-shop__fam .ihc-mm-shop__head img { width: 22px; height: 22px; flex: 0 0 22px; }
.ihc-mm-shop__fam .ihc-mm-shop__sub {
  margin: 0 0 12px;
  font-size: 12.5px;
  line-height: 1.3;
  color: var(--ihc-muted);
}
.ihc-mm-shop__cols {
  display: flex;
  gap: clamp(12px, 1.2vw, 20px);
  flex: 1 1 auto;
  min-width: 0;
}
.ihc-mm-shop__sc { flex: 1 1 0; min-width: 0; }
.ihc-mm-shop__grp + .ihc-mm-shop__grp { margin-top: 13px; }
.ihc-mm-shop__grpcim {
  margin: 0 0 5px;
  font-size: 12.5px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--ihc-ink);
}
.ihc-mm-shop__grpcim a { color: inherit; text-decoration: none; }
.ihc-mm-shop__grpcim a:hover { color: var(--ihc-accent); text-decoration: underline; }
.ihc-mm-shop .ihc-mm-shop__list { margin: 0; padding: 0; list-style: none; }
.ihc-mm-shop .ihc-mm-shop__list li { margin: 0 0 3px; }
.ihc-mm-shop .ihc-mm-shop__list a {
  display: block;
  font-size: 13.5px;
  line-height: 1.35;
  color: var(--ihc-muted);
  text-decoration: none;
}
.ihc-mm-shop .ihc-mm-shop__list a:hover { color: var(--ihc-accent); }
.ihc-mm-shop__fam .ihc-mm-shop__all {
  margin: 14px 0 0;
  padding-top: 10px;
  border-top: 1px solid var(--ihc-line);
}
.ihc-mm-shop__fam .ihc-mm-shop__all a {
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .02em;
  text-transform: uppercase;
  color: var(--ihc-accent);
  text-decoration: none;
}
.ihc-mm-shop__fam .ihc-mm-shop__all a::after { content: " \2192"; }
.ihc-mm-shop__fam .ihc-mm-shop__all a:hover { color: var(--ihc-accent-2); text-decoration: underline; }

/* also sor: jogi linkek + minden termek gomb */
.ihc-mm-shop__labszoveg {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: clamp(16px, 1.6vw, 24px);
  padding-top: clamp(12px, 1.2vw, 18px);
  border-top: 1px solid var(--ihc-line);
}
.ihc-mm-shop__jogi { display: flex; flex-wrap: wrap; gap: 6px 24px; }
.ihc-mm-shop__jogi a {
  font-size: 13.5px;
  line-height: 1.3;
  color: var(--ihc-muted);
  text-decoration: none;
}
.ihc-mm-shop__jogi a:hover { color: var(--ihc-accent); text-decoration: underline; }
.ihc-mm-shop__gomb {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 24px;
  border-radius: 999px;
  background: var(--ihc-accent);
  color: #fff !important;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background .18s ease;
}
.ihc-mm-shop__gomb::after { content: "\2192"; }
.ihc-mm-shop__gomb:hover { background: var(--ihc-accent-2); color: #fff !important; }

@media (max-width: 1200px) {
  .ihc-mm-shop { flex-wrap: wrap; }
  .ihc-mm-shop__fam { flex: 1 1 calc(50% - 12px); }
  .ihc-mm-shop .ihc-mm-shop__fam + .ihc-mm-shop__fam { border-left: 0; padding-left: 0; }
}
@media (max-width: 780px) {
  .ihc-mm-shop__fam { flex: 1 1 100%; }
  .ihc-mm-shop__cols { flex-wrap: wrap; }
  .ihc-mm-shop__sc { flex: 1 1 100%; }
  .ihc-mm-shop__labszoveg { justify-content: flex-start; }
}

/* ===== 97. Shop megamenu: kompaktabb terméknevek ===== */
.ihc-mm-shop .ihc-mm-shop__list a { font-size: 12.5px; line-height: 1.3; }
.ihc-mm-shop .ihc-mm-shop__list li { margin: 0 0 2px; }
.ihc-mm-shop__grpcim { font-size: 12px; margin: 0 0 4px; }
.ihc-mm-shop__grp + .ihc-mm-shop__grp { margin-top: 11px; }
.ihc-mm-shop__fam .ihc-mm-shop__all a { font-size: 11.5px; }

/* ===== 98. Shop megamenu: also link egy sorban, aljara igazitva ===== */
.ihc-mm-shop__fam .ihc-mm-shop__all { margin-top: auto; white-space: nowrap; }

/* ===== 99. Shop megamenu: még kompaktabb terméknevek ===== */
.ihc-mm-shop .ihc-mm-shop__list a { font-size: 11.5px; line-height: 1.25; }
.ihc-mm-shop .ihc-mm-shop__list li { margin: 0 0 1px; }
.ihc-mm-shop__grpcim { font-size: 11.5px; margin: 0 0 3px; }
.ihc-mm-shop__grp + .ihc-mm-shop__grp { margin-top: 9px; }
.ihc-mm-shop__fam .ihc-mm-shop__sub { font-size: 11.5px; margin: 0 0 9px; }
.ihc-mm-shop__fam .ihc-mm-shop__all { margin-top: auto; padding-top: 8px; }
.ihc-mm-shop__fam .ihc-mm-shop__all a { font-size: 11px; }

/* ===== 100. Shop megamenu: terméknev méretek (94. szekció felülírása) ===== */
.ihc-mm-shop ul.ihc-mm-shop__list li a { font-size: 11.5px; line-height: 1.25; padding: 0; }
.ihc-mm-shop ul.ihc-mm-shop__list li { margin: 0 0 1px; }
.ihc-mm-shop ul.ihc-mm-shop__list { margin: 0; padding: 0; list-style: none; }
.ihc-mm-shop .ihc-mm-shop__fam .ihc-mm-shop__grpcim { font-size: 11.5px; margin: 0 0 3px; }
.ihc-mm-shop .ihc-mm-shop__fam .ihc-mm-shop__sub { font-size: 11.5px; margin: 0 0 9px; }
.ihc-mm-shop .ihc-mm-shop__fam .ihc-mm-shop__head { font-size: 13px; margin: 0 0 2px; }
.ihc-mm-shop .ihc-mm-shop__fam .ihc-mm-shop__all a { font-size: 11px; }

/* ===== 101. Shop megamenu: alcim közvetlenül a márkanév alatt, a vonal alattuk ===== */
.ihc-mm-shop .ihc-mm-shop__fam .ihc-mm-shop__head { position: static; padding-bottom: 0; }
.ihc-mm-shop .ihc-mm-shop__fam .ihc-mm-shop__head::after { content: none; }
.ihc-mm-shop .ihc-mm-shop__fam .ihc-mm-shop__sub {
  position: relative;
  margin: 0 0 14px;
  padding-bottom: 11px;
}
.ihc-mm-shop .ihc-mm-shop__fam .ihc-mm-shop__sub::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 34px;
  height: 2px;
  border-radius: 2px;
  background: var(--ihc-accent);
}

/* ===== 102. Shop megamenu: köztes betűméret ===== */
.ihc-mm-shop ul.ihc-mm-shop__list li a { font-size: 13px; line-height: 1.3; }
.ihc-mm-shop ul.ihc-mm-shop__list li { margin: 0 0 2px; }
.ihc-mm-shop .ihc-mm-shop__fam .ihc-mm-shop__grpcim { font-size: 12.5px; margin: 0 0 4px; }
.ihc-mm-shop .ihc-mm-shop__fam .ihc-mm-shop__sub { font-size: 12.5px; }
.ihc-mm-shop .ihc-mm-shop__fam .ihc-mm-shop__head { font-size: 13.5px; }
.ihc-mm-shop .ihc-mm-shop__fam .ihc-mm-shop__all a { font-size: 12px; }
.ihc-mm-shop__grp + .ihc-mm-shop__grp { margin-top: 11px; }

/* ===== 103. Shop es kategoria oldalsav + termekracs ===== */
.ihc-shop .ct-sidebar,
body.woocommerce-archive .ct-sidebar,
body.post-type-archive-product .ct-sidebar {
  --ct-sidebar-gap: 18px;
}
.ct-sidebar .ct-widget {
  margin-bottom: 18px;
  padding: 0;
  border: 0;
}
.ct-sidebar .ct-widget:last-child { margin-bottom: 0; }

/* kozos kartya-keret az oldalsav dobozainak */
.ihc-sb,
.ct-sidebar .widget_price_filter {
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius);
  padding: 18px 20px;
}
.ihc-sb__cim,
.ct-sidebar .widget_price_filter .widget-title,
.ct-sidebar .widget_price_filter h2 {
  position: relative;
  margin: 0 0 14px;
  padding-bottom: 10px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: none;
  line-height: 1.2;
  color: var(--ihc-deep);
}
.ihc-sb__cim::after,
.ct-sidebar .widget_price_filter .widget-title::after,
.ct-sidebar .widget_price_filter h2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 28px;
  height: 2px;
  border-radius: 2px;
  background: var(--ihc-accent);
}

/* --- termekcsalad-fa --- */
.ihc-sb-fa__lista,
.ihc-sb-fa__alk,
.ihc-sb-szuro__lista,
.ihc-sb-kiemelt ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ihc-sb-fa__lista > li + li { border-top: 1px solid var(--ihc-line); }
.ihc-sb-fa__lista > li > a,
.ihc-sb-fa__alk > li > a {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  padding: 9px 0;
  color: var(--ihc-ink);
  text-decoration: none;
  line-height: 1.3;
}
.ihc-sb-fa__lista > li > a > span {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .03em;
}
.ihc-sb-fa__lista > li > a > em,
.ihc-sb-fa__alk > li > a > em {
  flex: 0 0 auto;
  font-style: normal;
  font-size: 11px;
  font-weight: 700;
  color: var(--ihc-muted);
  background: var(--ihc-surface);
  border-radius: 999px;
  padding: 2px 8px;
}
.ihc-sb-fa__lista > li > a:hover > span { color: var(--ihc-accent); }
.ihc-sb-fa__csalad.is-current > a > span { color: var(--ihc-accent); }
.ihc-sb-fa__csalad.is-current > a > em,
.ihc-sb-fa__alk > li.is-current > a > em {
  background: var(--ihc-accent);
  color: #fff;
}
.ihc-sb-fa__alk {
  margin: 0 0 10px 2px;
  padding-left: 12px;
  border-left: 2px solid var(--ihc-tint);
}
.ihc-sb-fa__alk > li > a {
  padding: 6px 0;
  font-size: 12.5px;
  color: var(--ihc-muted);
}
.ihc-sb-fa__alk > li > a:hover { color: var(--ihc-accent); }
.ihc-sb-fa__alk > li.is-current > a {
  color: var(--ihc-accent);
  font-weight: 700;
}
.ihc-sb-fa__mind {
  margin: 12px 0 0;
  padding-top: 12px;
  border-top: 1px solid var(--ihc-line);
}
.ihc-sb-fa__mind a {
  font-size: 11.5px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--ihc-accent);
  text-decoration: none;
}
.ihc-sb-fa__mind a::after { content: " \2192"; }
.ihc-sb-fa__mind a:hover { color: var(--ihc-accent-2); }

/* --- szurok --- */
.ihc-sb-szuro__lista > li > a {
  display: block;
  padding: 7px 0 7px 22px;
  position: relative;
  font-size: 13px;
  line-height: 1.3;
  color: var(--ihc-muted);
  text-decoration: none;
}
.ihc-sb-szuro__lista > li > a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 13px;
  height: 13px;
  border: 1.5px solid var(--ihc-line);
  border-radius: 50%;
}
.ihc-sb-szuro__lista > li > a:hover { color: var(--ihc-accent); }
.ihc-sb-szuro__lista > li.is-current > a {
  color: var(--ihc-ink);
  font-weight: 700;
}
.ihc-sb-szuro__lista > li.is-current > a::before {
  border-color: var(--ihc-accent);
  background: radial-gradient(circle, var(--ihc-accent) 0 3.2px, #fff 3.6px 100%);
}
.ihc-sb-szuro__kapcsolo {
  margin: 10px 0 0;
  padding-top: 12px;
  border-top: 1px solid var(--ihc-line);
}
.ihc-sb-szuro__kapcsolo a {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: var(--ihc-muted);
  text-decoration: none;
}
.ihc-sb-szuro__kapcsolo i {
  flex: 0 0 34px;
  width: 34px;
  height: 19px;
  border-radius: 999px;
  background: var(--ihc-line);
  position: relative;
  transition: background .18s ease;
}
.ihc-sb-szuro__kapcsolo i::after {
  content: "";
  position: absolute;
  top: 2.5px;
  left: 2.5px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #fff;
  transition: transform .18s ease;
}
.ihc-sb-szuro__kapcsolo.is-on i { background: var(--ihc-accent); }
.ihc-sb-szuro__kapcsolo.is-on i::after { transform: translateX(15px); }
.ihc-sb-szuro__kapcsolo.is-on a { color: var(--ihc-ink); font-weight: 600; }
.ihc-sb-szuro__torles { margin: 12px 0 0; }
.ihc-sb-szuro__torles a {
  font-size: 12px;
  color: var(--ihc-muted);
  text-decoration: underline;
}
.ihc-sb-szuro__torles a:hover { color: var(--ihc-accent); }

/* --- WooCommerce arszuro --- */
.ct-sidebar .widget_price_filter .price_slider_wrapper { margin-top: 4px; }
.ct-sidebar .widget_price_filter .ui-slider {
  height: 4px;
  background: var(--ihc-tint);
  border-radius: 999px;
  margin: 14px 8px 18px 8px;
}
.ct-sidebar .widget_price_filter .ui-slider .ui-slider-range { background: var(--ihc-accent); border-radius: 999px; }
.ct-sidebar .widget_price_filter .ui-slider .ui-slider-handle {
  width: 15px;
  height: 15px;
  top: -5.5px;
  margin-left: -7px;
  background: #fff;
  border: 2px solid var(--ihc-accent);
  border-radius: 50%;
  box-shadow: 0 2px 6px rgba(2, 63, 85, .18);
}
.ct-sidebar .widget_price_filter .price_slider_amount {
  display: flex;
  flex-direction: column-reverse;
  align-items: flex-start;
  gap: 12px;
}
.ct-sidebar .widget_price_filter .price_slider_amount .price_label {
  font-size: 12.5px;
  color: var(--ihc-muted);
}
.ct-sidebar .widget_price_filter .price_slider_amount .button {
  align-self: stretch;
  padding: 10px 18px;
  border-radius: 999px;
  background: var(--ihc-accent);
  color: #fff;
  font-size: 11.5px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  border: 0;
}
.ct-sidebar .widget_price_filter .price_slider_amount .button:hover { background: var(--ihc-accent-2); }

/* --- kiemelt termekek --- */
.ihc-sb-kiemelt ul > li + li {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--ihc-line);
}
.ihc-sb-kiemelt a {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
}
.ihc-sb-kiemelt__kep {
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  border-radius: 12px;
  overflow: hidden;
  background: var(--ihc-surface);
  display: block;
}
.ihc-sb-kiemelt__kep img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.ihc-sb-kiemelt__szoveg { min-width: 0; display: block; }
.ihc-sb-kiemelt__szoveg strong {
  display: block;
  font-size: 12.5px;
  font-weight: 700;
  line-height: 1.25;
  color: var(--ihc-ink);
}
.ihc-sb-kiemelt__szoveg em {
  display: block;
  margin-top: 3px;
  font-style: normal;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--ihc-accent);
}
.ihc-sb-kiemelt__szoveg em del { color: var(--ihc-muted); font-weight: 400; margin-right: 5px; }
.ihc-sb-kiemelt a:hover .ihc-sb-kiemelt__szoveg strong { color: var(--ihc-accent); }

/* --- ajanlatkeres doboz --- */
.ihc-sb-cta {
  background: linear-gradient(150deg, var(--ihc-accent) 0%, var(--ihc-deep) 100%);
  border: 0;
  color: #fff;
}
.ihc-sb-cta__cim {
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
  color: #fff;
}
.ihc-sb-cta__szoveg {
  margin: 0 0 16px;
  font-size: 13px;
  line-height: 1.45;
  color: rgba(255, 255, 255, .88);
}
.ihc-sb-cta__gomb { margin: 0 0 10px; }
.ihc-sb-cta__gomb a {
  display: block;
  padding: 11px 18px;
  border-radius: 999px;
  background: #fff;
  color: var(--ihc-deep) !important;
  font-size: 11.5px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
}
.ihc-sb-cta__gomb a:hover { background: var(--ihc-tint); }
.ihc-sb-cta__tel { margin: 0; text-align: center; }
.ihc-sb-cta__tel a {
  font-size: 14px;
  font-weight: 700;
  color: #fff !important;
  text-decoration: none;
}
.ihc-sb-cta__tel a:hover { text-decoration: underline; }

/* --- termekracs oldalsav mellett --- */
.woocommerce-archive ul.products.columns-4,
.post-type-archive-product ul.products.columns-4 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.woocommerce-archive ul.products li.product .woocommerce-loop-product__title,
.post-type-archive-product ul.products li.product .woocommerce-loop-product__title {
  font-size: 14px;
  line-height: 1.3;
}
.woocommerce-archive ul.products li.product .ct-woo-card-extra,
.woocommerce-archive ul.products li.product .product_meta,
.woocommerce-archive ul.products li.product .posted_in { display: none; }
.woocommerce-archive ul.products li.product .button,
.post-type-archive-product ul.products li.product .button {
  white-space: nowrap;
  font-size: 11.5px;
  padding-left: 16px;
  padding-right: 16px;
}

@media (max-width: 999px) {
  .woocommerce-archive ul.products.columns-4,
  .post-type-archive-product ul.products.columns-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 540px) {
  .woocommerce-archive ul.products.columns-4,
  .post-type-archive-product ul.products.columns-4 {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* ===== 104. Kategória oldal: termékkártya finomítás + 1:1 ajánlatkérés kép ===== */
.woocommerce-archive ul.products li.product .entry-meta,
.post-type-archive-product ul.products li.product .entry-meta { display: none; }
.woocommerce-archive ul.products li.product > figure,
.post-type-archive-product ul.products li.product > figure { background: #fff; }
.ihc-cat-grid .ihc-cat-card__media {
  display: block;
  aspect-ratio: 1 / 1;
  background: #fff;
  overflow: hidden;
}
.ihc-cat-grid .ihc-cat-card__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #fff;
  display: block;
}

/* ===== 105. Ajánlatkéréses blokk oldalsáv mellett: ne törjenek ki ===== */
body.woocommerce-archive .ct-container [data-sidebar] .ihc-cat-quote,
body.woocommerce-archive .ihc-cat-quote.alignfull {
  width: auto;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  left: auto;
  right: auto;
  transform: none;
}
body.woocommerce-archive .ihc-cat-quote .ihc-wrap {
  width: 100%;
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}
body.woocommerce-archive .ihc-cat-quote .ihc-cat-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
body.woocommerce-archive .ihc-cat-quote .ihc-head { text-align: left; }
body.woocommerce-archive .ihc-cat-quote .ihc-head p { margin-left: 0; }
@media (max-width: 999px) {
  body.woocommerce-archive .ihc-cat-quote .ihc-cat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 540px) {
  body.woocommerce-archive .ihc-cat-quote .ihc-cat-grid { grid-template-columns: minmax(0, 1fr); }
}

/* ===== 106. Kategoria/shop hero fele akkora + terapia szuro + 1:1 termekkep ===== */
.ihc-cat-hero.ihc-cat-hero {
  min-height: clamp(230px, 19vw, 310px);
  padding-block: clamp(32px, 4vw, 58px);
  margin-bottom: clamp(28px, 3.4vw, 48px);
}
.ihc-cat-hero .ihc-tp-hero__grid.ihc-tp-hero__grid { padding-top: 0; }
.ihc-cat-hero h1 { font-size: clamp(26px, 3vw, 40px); }
.ihc-cat-hero .ihc-lead { font-size: clamp(14px, 1.05vw, 16px); }
@media (max-width: 900px) {
  .ihc-cat-hero.ihc-cat-hero { min-height: 0; display: block; }
}

/* terapia szerinti szuro */
.ihc-sb-terapia ul { margin: 0; padding: 0; list-style: none; }
.ihc-sb-terapia li + li { border-top: 1px solid var(--ihc-line); }
.ihc-sb-terapia a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 0;
  font-size: 13px;
  line-height: 1.3;
  color: var(--ihc-ink);
  text-decoration: none;
}
.ihc-sb-terapia a img {
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  display: block;
}
.ihc-sb-terapia a:hover { color: var(--ihc-accent); }
.ihc-sb-terapia li.is-current a { color: var(--ihc-accent); font-weight: 700; }

/* 1:1 termekkepek a kategoria / shop racsban */
.woocommerce-archive ul.products li.product > figure,
.post-type-archive-product ul.products li.product > figure,
.woocommerce-archive ul.products li.product .ct-image-container,
.post-type-archive-product ul.products li.product .ct-image-container {
  aspect-ratio: 1 / 1;
  background: #fff;
  overflow: hidden;
}
.woocommerce-archive ul.products li.product > figure img,
.post-type-archive-product ul.products li.product > figure img,
.woocommerce-archive ul.products li.product .ct-image-container img,
.post-type-archive-product ul.products li.product .ct-image-container img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #fff;
  padding: 6px;
}

/* ===== 107. Alkategória-elválasztó a termékrácsban + nem ragadós oldalsáv ===== */
.woocommerce-archive ul.products li.product.ihc-cat-sep,
.post-type-archive-product ul.products li.product.ihc-cat-sep {
  grid-column: 1 / -1;
  margin: 10px 0 0;
  padding: 0 0 8px;
  border: 0;
  border-bottom: 1px solid var(--ihc-line);
  background: none;
  box-shadow: none;
}
.woocommerce-archive ul.products li.product.ihc-cat-sep:first-child { margin-top: 0; }
.woocommerce-archive ul.products li.product.ihc-cat-sep h2,
.post-type-archive-product ul.products li.product.ihc-cat-sep h2 {
  margin: 0;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: none;
  color: var(--ihc-deep);
}
.ct-sidebar [data-sticky], .ct-sticky-widgets { position: static !important; top: auto !important; }

/* ===== 108. CTA doboz: e-mail cím ===== */
.ihc-sb-cta__tel { margin: 0 0 4px; }
.ihc-sb-cta__mail { margin: 0; text-align: center; }
.ihc-sb-cta__mail a { font-size: 13px; color: rgba(255,255,255,.9) !important; text-decoration: none; }
.ihc-sb-cta__mail a:hover { color: #fff !important; text-decoration: underline; }

/* ===== 109. Hírlevél blokk a shop és kategória oldalakon ===== */
body.woocommerce-archive .ihc-blog-newsletter,
body.post-type-archive-product .ihc-blog-newsletter {
  margin-top: clamp(40px, 5vw, 72px);
  margin-bottom: clamp(40px, 5vw, 72px);
}

/* ===== 110. Hírlevél alatti térköz csökkentése a shop oldalakon ===== */
body.woocommerce-archive .ihc-blog-newsletter,
body.post-type-archive-product .ihc-blog-newsletter {
  margin-bottom: clamp(14px, 1.6vw, 24px);
}
body.woocommerce-archive .ihc-blog-newsletter + *,
body.post-type-archive-product .ihc-blog-newsletter + * { margin-top: 0; }

/* ===== 111. Árcsúszka javítás + oldalsáv csak az alján tapad ===== */
.ct-sidebar .widget_price_filter .price_slider.ui-slider { position: relative; }
.ct-sidebar .widget_price_filter .ui-slider .ui-slider-handle {
  position: absolute;
  display: block;
  z-index: 2;
  cursor: pointer;
  touch-action: none;
}
.ct-sidebar .widget_price_filter .ui-slider .ui-slider-range {
  position: absolute;
  top: 0;
  height: 100%;
  display: block;
  border: 0;
}
.ct-sidebar [data-sticky], .ct-sticky-widgets { position: static; top: auto; }
body.woocommerce-archive .ct-sidebar,
body.post-type-archive-product .ct-sidebar {
  position: sticky;
  bottom: 24px;
  align-self: start;
}
@media (max-width: 999px) {
  body.woocommerce-archive .ct-sidebar,
  body.post-type-archive-product .ct-sidebar { position: static; }
}

/* ===== 112. AI ROBOTIC-M kiemelt doboz az oldalsávban ===== */
.ihc-sb-ai {
  position: relative;
  background: linear-gradient(155deg, #04506B 0%, var(--ihc-deep) 100%);
  border: 0;
  color: #fff;
  overflow: hidden;
}
.ihc-sb-ai__cimke {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 2;
  padding: 3px 10px;
  border-radius: 999px;
  background: var(--ihc-accent);
  color: #fff;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .08em;
}
.ihc-sb-ai__kep {
  display: block;
  aspect-ratio: 1 / 1;
  margin: 0 0 14px;
  border-radius: 14px;
  overflow: hidden;
  background: rgba(255,255,255,.06);
}
.ihc-sb-ai__kep img { width: 100%; height: 100%; object-fit: contain; display: block; }
.ihc-sb-ai__cim {
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.25;
  color: #fff;
}
.ihc-sb-ai__szoveg {
  margin: 0 0 16px;
  font-size: 12.5px;
  line-height: 1.45;
  color: rgba(255,255,255,.86);
}
.ihc-sb-ai__gomb { margin: 0; }
.ihc-sb-ai__gomb a {
  display: block;
  padding: 10px 18px;
  border-radius: 999px;
  background: var(--ihc-accent);
  color: #fff !important;
  font-size: 11.5px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
}
.ihc-sb-ai__gomb a:hover { background: #fff; color: var(--ihc-deep) !important; }
.ihc-sb__card + .ihc-sb, .ihc-sb + .ihc-sb, .ihc-sb + .ihc-sb__card { margin-top: 18px; }

/* ===== 113. Ajanlott termekek sav a termekoldalakon ===== */
.ihc-ajanlo { padding-block: clamp(36px, 4vw, 60px); }
.ihc-ajanlo__fej {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin: 0 0 clamp(18px, 2vw, 28px);
}
.ihc-ajanlo__fej h2 {
  margin: 0;
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.2;
  color: var(--ihc-deep);
}
.ihc-ajanlo__mind {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--ihc-accent);
  text-decoration: none;
  white-space: nowrap;
}
.ihc-ajanlo__mind::after { content: " \2192"; }
.ihc-ajanlo__mind:hover { color: var(--ihc-accent-2); text-decoration: underline; }
.ihc-ajanlo__racs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(12px, 1.4vw, 20px);
}
.ihc-ajanlo__kartya {
  display: flex;
  flex-direction: column;
  padding: 12px;
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius);
  text-decoration: none;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.ihc-ajanlo__kartya:hover {
  border-color: var(--ihc-accent);
  box-shadow: 0 10px 26px rgba(2, 63, 85, .10);
  transform: translateY(-2px);
}
.ihc-ajanlo__kep {
  display: block;
  aspect-ratio: 1 / 1;
  margin: 0 0 12px;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}
.ihc-ajanlo__kep img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.ihc-ajanlo__nev {
  display: block;
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--ihc-ink);
}
.ihc-ajanlo__marka {
  display: block;
  margin-top: 4px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--ihc-accent);
}
@media (max-width: 1100px) {
  .ihc-ajanlo__racs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .ihc-ajanlo__racs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ===== 114. Termékoldal: a jobb oldali infóblokk tapad görgetéskor ===== */
@media (min-width: 1000px) {
  .ihc-pr-top { align-items: start; }
  .ihc-pr-top > .ihc-pr-info {
    position: sticky;
    top: 110px;
    align-self: start;
  }
}

/* ===== 115. Termékoldal: mindkét oszlop tapad görgetéskor ===== */
@media (min-width: 1000px) {
  .product-entry-wrapper { align-items: flex-start; }
  .product-entry-wrapper > .woocommerce-product-gallery,
  .product-entry-wrapper > .entry-summary {
    position: sticky;
    top: 110px;
    align-self: flex-start;
  }
  .ihc-pr-top > .ihc-pr-gallery,
  .ihc-pr-top > .ihc-pr-info {
    position: sticky;
    top: 110px;
    align-self: start;
  }
}

/* ===== 116. CTA doboz: szűkebb térköz a telefon és az e-mail között ===== */
.ihc-sb-cta .ihc-sb-cta__tel { margin: 0 0 2px; line-height: 1.3; }
.ihc-sb-cta .ihc-sb-cta__mail { margin: 0; line-height: 1.3; }
.ihc-sb-cta .ihc-sb-cta__gomb { margin: 0 0 14px; }

/* ===== 117. Kategória/shop hero: nincs fehér fátyol ===== */
.ihc-cat-hero.ihc-tp-hero::before { content: none; background: none; }

/* ===== 118. Ajánlatkéréses blokk: nincs háttérszín ===== */
body.woocommerce-archive .ihc-cat-quote,
body.post-type-archive-product .ihc-cat-quote {
  background: transparent;
  padding-block: 0;
}

/* ===== 119. Kategória hero: teljesen tiszta háttérkép ===== */
.ihc-cat-hero::after { content: none; background: none; }
.ihc-cat-hero h1,
.ihc-cat-hero .ihc-eyebrow,
.ihc-cat-hero .ihc-lead { text-shadow: 0 2px 14px rgba(2, 34, 46, .55); }

/* ===== 120. Ajánlatkéréses kártyák: 15%-kal kisebb termékkép ===== */
.ihc-cat-grid .ihc-cat-card__media img { transform: scale(.85); transform-origin: center; }

/* ===== 121. Aloldal-választó rács (Terápiák / Hatékonyság / Területek) ===== */
.ihc-alracs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(14px, 1.6vw, 24px);
}
.ihc-alkartya {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius);
  overflow: hidden;
  text-decoration: none;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.ihc-alkartya:hover {
  border-color: var(--ihc-accent);
  box-shadow: 0 12px 30px rgba(2, 63, 85, .10);
  transform: translateY(-2px);
}
.ihc-alkartya__kep { display: block; aspect-ratio: 16 / 10; background: var(--ihc-surface); }
.ihc-alkartya__kep img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ihc-alkartya__body { display: flex; flex-direction: column; flex: 1 1 auto; padding: 18px 20px 20px; }
.ihc-alkartya__cim { display: block; margin: 0 0 8px; font-size: 17px; font-weight: 700; line-height: 1.25; color: var(--ihc-deep); }
.ihc-alkartya__szoveg { display: block; margin: 0 0 14px; font-size: 13.5px; line-height: 1.5; color: var(--ihc-muted); }
.ihc-alkartya__cta { display: block; margin-top: auto; font-size: 11.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--ihc-accent); }
.ihc-alkartya__cta::after { content: " \2192"; }
.ihc-alkartya:hover .ihc-alkartya__cim { color: var(--ihc-accent); }
@media (max-width: 1100px) { .ihc-alracs { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 820px) { .ihc-alracs { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .ihc-alracs { grid-template-columns: minmax(0, 1fr); } }

/* ===== 122. Kategória/shop hero: rögzített háttér (parallax) ===== */
.ihc-cat-hero.ihc-cat-hero {
  background-attachment: fixed;
  background-position: center;
  background-size: cover;
}
@media (max-width: 900px), (hover: none) {
  .ihc-cat-hero.ihc-cat-hero { background-attachment: scroll; }
}

/* ===== 123. Hero: vissza a normál háttérhez + 15%-kal magasabb ===== */
.ihc-cat-hero.ihc-cat-hero {
  background-attachment: scroll;
  min-height: clamp(265px, 22vw, 357px);
  padding-block: clamp(37px, 4.6vw, 67px);
}
@media (max-width: 900px) {
  .ihc-cat-hero.ihc-cat-hero { min-height: 0; display: block; }
}

/* ===== 124. Kapcsolat: Írj nekünk blokk sötét petrol háttérrel ===== */
.stk-7ae2c05.stk-block-columns { background-color: var(--ihc-deep) !important; background-image: none !important; }
.stk-7ae2c05 .stk-block-heading__text,
.stk-7ae2c05 .stk-block-text__text,
.stk-7ae2c05 label,
.stk-7ae2c05 .wpforms-field-label { color: #fff !important; }
.stk-7ae2c05 .wpforms-field-sublabel { color: rgba(255,255,255,.7) !important; }
.stk-7ae2c05 .wpforms-required-label { color: #FF8A7A !important; }

/* ===== 125. CTA doboz térköz + AI doboz címke elrejtése ===== */
.ihc-sb.ihc-sb-cta .ihc-sb-cta__tel { margin: 0; padding: 0; line-height: 1.25; }
.ihc-sb.ihc-sb-cta .ihc-sb-cta__mail { margin: 0; padding: 0; line-height: 1.25; }
.ihc-sb.ihc-sb-cta .ihc-sb-cta__tel a { font-size: 15px; }
.ihc-sb-ai__cimke { display: none; }

/* ===== 126. Shop oldal: ajánlatkéréses blokk ne fusson ki ===== */
body.woocommerce-shop .ihc-cat-quote.alignfull,
body.post-type-archive-product .ihc-cat-quote.alignfull,
body.woocommerce-shop .ihc-cat-quote,
body.post-type-archive-product .ihc-cat-quote {
  width: auto;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  left: auto;
  right: auto;
  transform: none;
  background: transparent;
  padding-block: 0;
}
body.woocommerce-shop .ihc-cat-quote .ihc-wrap,
body.post-type-archive-product .ihc-cat-quote .ihc-wrap {
  width: 100%;
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}
body.woocommerce-shop .ihc-cat-quote .ihc-cat-grid,
body.post-type-archive-product .ihc-cat-quote .ihc-cat-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
body.woocommerce-shop .ihc-cat-quote .ihc-head,
body.post-type-archive-product .ihc-cat-quote .ihc-head { text-align: left; }
body.woocommerce-shop .ihc-cat-quote .ihc-head p,
body.post-type-archive-product .ihc-cat-quote .ihc-head p { margin-left: 0; }
@media (max-width: 999px) {
  body.woocommerce-shop .ihc-cat-quote .ihc-cat-grid,
  body.post-type-archive-product .ihc-cat-quote .ihc-cat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 540px) {
  body.woocommerce-shop .ihc-cat-quote .ihc-cat-grid,
  body.post-type-archive-product .ihc-cat-quote .ihc-cat-grid { grid-template-columns: minmax(0, 1fr); }
}

/* ===== 127. Shop: család szerinti bontás az ajánlatkéréses blokkban ===== */
.ihc-cat-quote__csoport + .ihc-cat-quote__csoport { margin-top: clamp(28px, 3vw, 44px); }
.ihc-cat-quote__csoport > h3 {
  margin: 0 0 clamp(12px, 1.4vw, 18px);
  padding-bottom: 8px;
  border-bottom: 1px solid var(--ihc-line);
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: none;
  color: var(--ihc-deep);
}
.ihc-cat-quote__csoport > h3 a { color: inherit; text-decoration: none; }
.ihc-cat-quote__csoport > h3 a:hover { color: var(--ihc-accent); }
/* Hírlevél: az adatkezelési jelölőnégyzet és a szöveg egy sorban */
.ihc-blog-newsletter .wpforms-field-checkbox ul,
.ihc-blog-newsletter .wpforms-field-checkbox li { margin: 0; padding: 0; list-style: none; }
.ihc-blog-newsletter .wpforms-field-checkbox li {
  display: flex;
  align-items: center;
  gap: 10px;
}
.ihc-blog-newsletter .wpforms-field-checkbox li input[type="checkbox"] { flex: 0 0 auto; margin: 0; }
.ihc-blog-newsletter .wpforms-field-checkbox li label { margin: 0; line-height: 1.35; }

/* ===== 128. Oldalsáv: az aside-ra kerül a sticky (a .ct-sidebar belül volt) ===== */
@media (min-width: 1000px) {
  body.woocommerce-archive #main-container,
  body.post-type-archive-product #main-container,
  body.woocommerce-shop #main-container { overflow: visible; }
  body.woocommerce-archive .ct-container > aside#sidebar,
  body.post-type-archive-product .ct-container > aside#sidebar,
  body.woocommerce-shop .ct-container > aside#sidebar {
    position: sticky;
    bottom: 24px;
    align-self: end;
    height: -moz-fit-content;
    height: fit-content;
  }
  body.woocommerce-archive .ct-sidebar,
  body.post-type-archive-product .ct-sidebar,
  body.woocommerce-shop .ct-sidebar { position: static; bottom: auto; }
}

/* ===== 129. A body scroll-konténer volta megakadályozta a sticky működését ===== */
@media (min-width: 1000px) {
  body.woocommerce-archive,
  body.post-type-archive-product,
  body.woocommerce-shop {
    overflow-x: clip;
    overflow-y: visible;
  }
}

/* ===== 130. GYIK blokk alja: még több válasz link ===== */
.ihc-gyik-tovabb { margin: clamp(18px, 2vw, 28px) 0 0; text-align: center; grid-column: 1 / -1; width: 100%; }
.ihc-gyik-tovabb a {
  display: inline-block;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--ihc-accent);
  text-decoration: none;
}
.ihc-gyik-tovabb a::after { content: " \2192"; }
.ihc-gyik-tovabb a:hover { color: var(--ihc-accent-2); text-decoration: underline; }

/* ===== 131. HERO – USP sor a gombok alatt ===== */
.ihc-hero .ihc-hero__inner .ihc-hero__usp {
  display: flex; flex-wrap: wrap; gap: 12px 16px;
  list-style: none; margin: 32px 0 0; padding: 0; max-width: 560px;
}
.ihc-hero__usp li {
  display: flex; align-items: center; gap: 8px;
  flex: 1 1 0; min-width: 0;
  color: var(--ihc-ink); font-size: 12.5px; line-height: 1.3; font-weight: 500;
}
.ihc-hero__usp svg { flex: 0 0 auto; width: 26px; height: 26px; color: var(--ihc-accent); }
@media (max-width: 900px) {
  .ihc-hero .ihc-hero__inner .ihc-hero__usp { gap: 10px 14px; margin-top: 30px; max-width: 420px; }
  .ihc-hero__usp li { font-size: 12px; flex: 1 1 120px; gap: 7px; }
  .ihc-hero__usp svg { width: 22px; height: 22px; }
}

/* ===== 132. Főoldal – Legnépszerűbb termékeink ===== */
.ihc-nepszeru { padding-block: clamp(36px, 4vw, 60px); }
.ihc-nepszeru__fej {
  display: flex; align-items: baseline; justify-content: space-between;
  gap: 16px; flex-wrap: wrap; margin: 0 0 clamp(18px, 2vw, 28px);
}
.ihc-nepszeru__fej h2 { margin: 0; font-size: clamp(20px, 2vw, 28px); line-height: 1.2; color: var(--ihc-deep); }
.ihc-nepszeru__mind {
  font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase;
  color: var(--ihc-accent); text-decoration: none; white-space: nowrap;
}
.ihc-nepszeru__mind::after { content: " \2192"; }
.ihc-nepszeru__mind:hover { color: var(--ihc-accent-2); text-decoration: underline; }
.ihc-nepszeru__racs {
  display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: clamp(12px, 1.4vw, 20px);
}
.ihc-nepszeru__kartya {
  position: relative; display: flex; flex-direction: column; padding: 12px;
  background: #fff; border: 1px solid var(--ihc-line); border-radius: var(--ihc-radius);
  text-decoration: none;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.ihc-nepszeru__kartya:hover {
  box-shadow: 0 16px 36px rgba(2, 63, 85, .20); transform: translateY(-2px);
}
.ihc-nepszeru__kep {
  display: block; aspect-ratio: 1 / 1; margin: 0 0 12px;
  border-radius: 12px; overflow: hidden; background: #fff;
}
.ihc-nepszeru__kep img { width: 100%; height: 100%; object-fit: contain; display: block; }
.ihc-nepszeru__szoveg { display: block; padding-bottom: 34px; }
.ihc-nepszeru__nev { display: block; font-size: 13.5px; font-weight: 700; line-height: 1.3; color: var(--ihc-ink); }
.ihc-nepszeru__leiras {
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  margin-top: 6px; font-size: 12.5px; line-height: 1.45; color: var(--ihc-muted);
}
.ihc-nepszeru__ikon {
  position: absolute; right: 12px; bottom: 12px;
  display: inline-flex; align-items: center; justify-content: center;
  width: 30px; height: 30px; border: 1px solid var(--ihc-line); border-radius: 999px;
  background: #fff; color: var(--ihc-accent);
  transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.ihc-nepszeru__kartya:hover .ihc-nepszeru__ikon {
  background: var(--ihc-accent); border-color: var(--ihc-accent); color: #fff;
}
@media (max-width: 1100px) { .ihc-nepszeru__racs { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 700px) {
  .ihc-nepszeru__racs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ihc-nepszeru__leiras { -webkit-line-clamp: 3; }
}

/* ===== 133. Főoldal – termékajánló banner pár ===== */
.ihc-bannerpar { padding-block: 0 clamp(36px, 4vw, 60px); }
.ihc-bannerpar__racs {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(16px, 1.6vw, 24px);
}
.ihc-bannerpar__kartya {
  position: relative; display: flex; align-items: center; overflow: hidden;
  min-height: clamp(330px, 26vw, 400px); padding: clamp(24px, 2.4vw, 38px);
  border-radius: var(--ihc-radius); background-color: #04202B;
  background-size: cover; background-position: right center; background-repeat: no-repeat;
  color: #fff;
}
.ihc-bannerpar__kartya::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: none;
}
.ihc-bannerpar__doboz { position: relative; z-index: 1; max-width: 55%; }
.ihc-bannerpar__cimke {
  margin: 0; font-size: 11px; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: rgba(255,255,255,.7);
}
.ihc-bannerpar__cim {
  margin: 10px 0; font-size: clamp(21px, 2.1vw, 30px); line-height: 1.15; font-weight: 700; color: #fff;
}
.ihc-bannerpar__lead { margin: 0 0 16px; font-size: 14px; line-height: 1.55; color: rgba(255,255,255,.82); }
.ihc-bannerpar__lista { list-style: none; margin: 0 0 22px; padding: 0; display: grid; gap: 8px; }
.ihc-bannerpar__lista li {
  position: relative; padding-left: 24px; font-size: 13.5px; line-height: 1.35; color: rgba(255,255,255,.9);
}
.ihc-bannerpar__lista li::before {
  content: "\2713"; position: absolute; left: 0; top: 0; color: #5FC8D6; font-weight: 700;
}
.ihc-bannerpar__gomb {
  display: inline-flex; align-items: center; gap: 8px; padding: 11px 20px;
  border: 1px solid #fff; border-radius: 999px; background: #fff; white-space: nowrap;
  font-size: 12.5px; font-weight: 700; color: var(--ihc-deep); text-decoration: none;
  transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.ihc-bannerpar__gomb::after { content: "\2192"; font-size: 15px; }
.ihc-bannerpar__gomb:hover { background: var(--ihc-accent); border-color: var(--ihc-accent); color: #fff; }
.ihc-bannerpar__gombok { display: flex; flex-wrap: nowrap; align-items: center; gap: 10px; }
.ihc-bannerpar__gomb--halvany { background: transparent; border-color: rgba(255,255,255,.45); color: rgba(255,255,255,.92); font-weight: 600; }
.ihc-bannerpar__gomb--halvany:hover { background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.6); color: #fff; }
.ihc-bannerpar__doboz { text-shadow: 0 1px 14px rgba(2,20,28,.55); }
.ihc-bannerpar__gomb { text-shadow: none; }
@media (max-width: 900px) {
  .ihc-bannerpar__racs { grid-template-columns: 1fr; }
  .ihc-bannerpar__kartya { align-items: flex-end; min-height: 430px; background-position: center 18%; }
  .ihc-bannerpar__kartya::before {
    background: linear-gradient(180deg, rgba(2,32,43,.30) 0%, rgba(2,32,43,.75) 45%, rgba(2,32,43,.96) 75%);
  }
  .ihc-bannerpar__doboz { max-width: none; }
}

/* ===== 134. Főoldal – Miért válassz minket sáv ===== */
.ihc-miert { padding-block: 0 clamp(36px, 4vw, 60px); }
.ihc-miert__cim {
  margin: 0 0 clamp(18px, 2vw, 28px); text-align: center;
  font-size: clamp(22px, 2.2vw, 30px); line-height: 1.2; color: var(--ihc-deep);
}
.ihc-miert__racs {
  display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0;
  background: var(--ihc-surface); border: 1px solid var(--ihc-line); border-radius: var(--ihc-radius);
  padding-block: clamp(22px, 2.2vw, 32px); padding-inline: clamp(6px, .8vw, 12px);
}
.ihc-miert__item {
  display: flex; flex-direction: column; align-items: center; text-align: center;
  gap: 10px; padding-inline: clamp(10px, 1.2vw, 18px); min-width: 0;
}
.ihc-miert__ikon { display: block; width: clamp(46px, 3.6vw, 56px); height: auto; }
.ihc-miert__item h3 {
  margin: 0; font-size: clamp(12.5px, 1vw, 14px); line-height: 1.25;
  font-weight: 700; color: var(--ihc-deep);
}
.ihc-miert__item p { margin: 0; font-size: clamp(12px, .95vw, 13px); line-height: 1.5; color: var(--ihc-muted); }
@media (min-width: 1081px) {
  .ihc-miert__item + .ihc-miert__item { border-inline-start: 1px solid var(--ihc-line); }
}
@media (max-width: 1080px) {
  .ihc-miert__racs { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(20px, 3vw, 28px) 0; }
  .ihc-miert__item:nth-child(3n+2), .ihc-miert__item:nth-child(3n) { border-inline-start: 1px solid var(--ihc-line); }
}
@media (max-width: 620px) {
  .ihc-miert__racs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ihc-miert__item:nth-child(3n+2), .ihc-miert__item:nth-child(3n) { border-inline-start: 0; }
  .ihc-miert__item:nth-child(2n) { border-inline-start: 1px solid var(--ihc-line); }
}

/* ===== 135. Főoldal – Terápiák / Hatékonyság / Területek kártyák ===== */
.ihc-utak { padding-block: 0 clamp(36px, 4vw, 60px); }
.ihc-utak__racs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.4vw, 20px); }
.ihc-utak__kartya {
  display: flex; align-items: center; gap: clamp(12px, 1.2vw, 18px);
  padding: clamp(16px, 1.6vw, 22px) clamp(18px, 1.8vw, 26px);
  background: var(--ihc-surface); border: 1px solid var(--ihc-line); border-radius: var(--ihc-radius);
  text-decoration: none; transition: box-shadow .18s ease, transform .18s ease;
}
.ihc-utak__kartya:hover { box-shadow: 0 16px 36px rgba(2, 63, 85, .18); transform: translateY(-2px); }
.ihc-utak__ikon { flex: 0 0 auto; display: block; width: clamp(44px, 3.4vw, 54px); height: auto; }
.ihc-utak__szoveg { flex: 1 1 auto; min-width: 0; }
.ihc-utak__cim {
  display: block; font-size: clamp(14px, 1.15vw, 16px); font-weight: 700;
  line-height: 1.25; color: var(--ihc-ink);
}
.ihc-utak__leiras { display: block; margin-top: 5px; font-size: 12.5px; line-height: 1.45; color: var(--ihc-muted); }
.ihc-utak__nyil { flex: 0 0 auto; display: inline-flex; color: var(--ihc-accent); }
@media (max-width: 900px) { .ihc-utak__racs { grid-template-columns: 1fr; } }

/* ===== 136. Főoldal – bérbeadás banner ===== */
.ihc-berlet { padding-block: 0 clamp(36px, 4vw, 60px); }
.ihc-berlet__kartya {
  position: relative; display: flex; align-items: center; gap: clamp(20px, 3vw, 56px);
  min-height: clamp(250px, 20vw, 300px); padding: clamp(24px, 2.6vw, 40px);
  border-radius: var(--ihc-radius); overflow: hidden; color: #fff;
  background-color: #04202B; background-size: cover; background-position: center right; background-repeat: no-repeat;
}
.ihc-berlet__doboz { position: relative; z-index: 1; flex: 0 1 56%; }
.ihc-berlet__cimke {
  margin: 0; font-size: 11px; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: rgba(255,255,255,.7);
}
.ihc-berlet__cim { margin: 10px 0; font-size: clamp(21px, 2.1vw, 30px); line-height: 1.15; font-weight: 700; color: #fff; }
.ihc-berlet__lead { margin: 0 0 18px; font-size: 14px; line-height: 1.55; color: rgba(255,255,255,.85); max-width: 40ch; }
.ihc-berlet__gomb {
  display: inline-flex; align-items: center; gap: 10px; padding: 12px 26px;
  border-radius: 999px; background: var(--ihc-accent); color: #fff;
  font-size: 13px; font-weight: 700; text-decoration: none;
  transition: background .18s ease;
}
.ihc-berlet__gomb::after { content: "\2192"; font-size: 15px; }
.ihc-berlet__gomb:hover { background: var(--ihc-accent-2); color: #fff; }
.ihc-berlet__lista { position: relative; z-index: 1; list-style: none; margin: 0 0 22px; padding: 0; display: grid; gap: 11px; }
.ihc-berlet__lista li { display: flex; align-items: center; gap: 10px; font-size: 13.5px; line-height: 1.35; color: rgba(255,255,255,.92); }
.ihc-berlet__ikon {
  flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
  width: 26px; height: 26px; border-radius: 999px; background: rgba(255,255,255,.14); color: #7FD7E2;
}
@media (max-width: 900px) {
  .ihc-berlet__kartya { flex-direction: column; align-items: flex-start; min-height: 380px; justify-content: flex-end; }
  .ihc-berlet__kartya::before {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: linear-gradient(180deg, rgba(2,32,43,.25) 0%, rgba(2,32,43,.8) 45%, rgba(2,32,43,.96) 75%);
  }
  .ihc-berlet__doboz, .ihc-berlet__lista { flex: 0 0 auto; width: 100%; }
}

/* ===== 137. Főoldal – Tudástár cikkek ===== */
.ihc-cikkek { padding-block: 0 clamp(36px, 4vw, 60px); }
.ihc-cikkek__fej {
  display: flex; align-items: baseline; justify-content: space-between;
  gap: 16px; flex-wrap: wrap; margin: 0 0 clamp(18px, 2vw, 28px);
}
.ihc-cikkek__fej h2 { margin: 0; font-size: clamp(20px, 2vw, 28px); line-height: 1.2; color: var(--ihc-deep); }
.ihc-cikkek__mind {
  font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase;
  color: var(--ihc-accent); text-decoration: none; white-space: nowrap;
}
.ihc-cikkek__mind::after { content: " \2192"; }
.ihc-cikkek__mind:hover { color: var(--ihc-accent-2); text-decoration: underline; }
.ihc-cikkek__racs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(14px, 1.6vw, 22px); }
.ihc-cikkek__kartya {
  display: flex; gap: clamp(12px, 1.2vw, 18px); padding: 12px;
  background: #fff; border: 1px solid var(--ihc-line); border-radius: var(--ihc-radius);
  text-decoration: none; transition: box-shadow .18s ease, transform .18s ease;
}
.ihc-cikkek__kartya:hover { box-shadow: 0 16px 36px rgba(2, 63, 85, .18); transform: translateY(-2px); }
.ihc-cikkek__kep { flex: 0 0 38%; border-radius: 12px; overflow: hidden; background: var(--ihc-tint); }
.ihc-cikkek__kep img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ihc-cikkek__szoveg { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
.ihc-cikkek__kat {
  display: block; font-size: 10.5px; font-weight: 700; letter-spacing: .08em;
  text-transform: uppercase; color: var(--ihc-muted);
}
.ihc-cikkek__cim {
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  margin-top: 6px; font-size: 14px; font-weight: 700; line-height: 1.3; color: var(--ihc-ink);
}
.ihc-cikkek__leiras {
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
  margin-top: 6px; font-size: 12.5px; line-height: 1.45; color: var(--ihc-muted);
}
.ihc-cikkek__tovabb {
  display: inline-block; margin-top: auto; padding-top: 10px;
  font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: var(--ihc-accent);
}
.ihc-cikkek__tovabb::after { content: " \2192"; }
@media (max-width: 900px) { .ihc-cikkek__racs { grid-template-columns: 1fr; } }

/* ===== 138. Banner pár – szerkeszthető blokkverzió (cover + gomb blokkok) ===== */
.ihc-bannerpar .wp-block-cover.ihc-bannerpar__kartya {
  align-items: center; justify-content: flex-start;
  padding: clamp(24px, 2.6vw, 40px);
  border-radius: var(--ihc-radius);
  min-height: clamp(330px, 26vw, 400px) !important;
}
.ihc-bannerpar__kartya .wp-block-cover__image-background { object-position: right center; }
.ihc-bannerpar__kartya .wp-block-cover__inner-container { width: 100%; }
.ihc-bannerpar__kartya .ihc-bannerpar__doboz { max-width: 55%; }
.ihc-bannerpar__doboz > * { margin-block: 0; }
h3.ihc-bannerpar__cim {
  margin: 8px 0 10px; font-size: clamp(21px, 2.1vw, 30px); line-height: 1.15; font-weight: 700; color: #fff;
}
ul.ihc-bannerpar__lista { list-style: none; margin: 0 0 22px; padding: 0; display: grid; gap: 8px; }
.ihc-bp-gombok { display: flex; flex-wrap: nowrap; align-items: center; gap: 10px; }
.ihc-bp-gomb .wp-block-button__link {
  display: inline-flex; align-items: center; gap: 8px; padding: 11px 20px;
  border: 1px solid #fff; border-radius: 999px; background: #fff; white-space: nowrap;
  font-size: 12.5px; font-weight: 700; color: var(--ihc-deep); text-decoration: none;
  transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.ihc-bp-gomb .wp-block-button__link::after { content: "\2192"; font-size: 15px; }
.ihc-bp-gomb .wp-block-button__link:hover { background: var(--ihc-accent); border-color: var(--ihc-accent); color: #fff; }
.ihc-bp-gomb--halvany .wp-block-button__link {
  background: transparent; border-color: rgba(255,255,255,.45); color: rgba(255,255,255,.92); font-weight: 600;
}
.ihc-bp-gomb--halvany .wp-block-button__link:hover { background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.6); color: #fff; }
@media (max-width: 900px) {
  .ihc-bannerpar .wp-block-cover.ihc-bannerpar__kartya { align-items: flex-end; min-height: 430px !important; }
  .ihc-bannerpar__kartya .ihc-bannerpar__doboz { max-width: none; }
  .ihc-bannerpar__kartya .wp-block-cover__image-background { object-position: center 18%; }
  .ihc-bannerpar__kartya::after {
    content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 1;
    background: linear-gradient(180deg, rgba(2,32,43,.30) 0%, rgba(2,32,43,.75) 45%, rgba(2,32,43,.96) 75%);
  }
  .ihc-bannerpar__kartya .wp-block-cover__inner-container { position: relative; z-index: 2; }
  .ihc-bp-gombok { flex-wrap: wrap; }
}

/* ===== 139. Főoldal – termékcsaládok + bevezető szöveg ===== */
.ihc-csalad { padding-block: 0 clamp(36px, 4vw, 60px); }
.ihc-csalad__cim { margin: 0 0 clamp(18px, 2vw, 28px); font-size: clamp(20px, 2vw, 28px); line-height: 1.2; color: var(--ihc-deep); }
.ihc-csalad__racs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(14px, 1.6vw, 22px); }
.ihc-csalad__kartya {
  display: flex; flex-direction: column; padding: 12px;
  background: #fff; border: 1px solid var(--ihc-line); border-radius: var(--ihc-radius);
  transition: box-shadow .18s ease, transform .18s ease;
}
.ihc-csalad__kartya:hover { box-shadow: 0 16px 36px rgba(2, 63, 85, .18); transform: translateY(-2px); }
.ihc-csalad__kep {
  margin: 0 0 12px; border-radius: 12px; overflow: hidden;
  background: var(--ihc-tint); aspect-ratio: 16 / 9;
}
.ihc-csalad__kep a, .ihc-csalad__kep img { display: block; width: 100%; height: 100%; }
.ihc-csalad__kep img { object-fit: cover; }
h3.ihc-csalad__nev { margin: 0 0 6px; font-size: 15px; font-weight: 700; line-height: 1.25; }
h3.ihc-csalad__nev a { color: var(--ihc-ink); text-decoration: none; }
h3.ihc-csalad__nev a:hover { color: var(--ihc-accent); }
.ihc-csalad__leiras { margin: 0 0 12px; font-size: 12.5px; line-height: 1.45; color: var(--ihc-muted); }
.ihc-csalad__link { margin: auto 0 0; font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.ihc-csalad__link a { color: var(--ihc-accent); text-decoration: none; }
.ihc-csalad__link a::after { content: " \2192"; }
.ihc-csalad__link a:hover { color: var(--ihc-accent-2); text-decoration: underline; }
@media (max-width: 1000px) { .ihc-csalad__racs { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .ihc-csalad__racs { grid-template-columns: 1fr; } }

.ihc-bevezeto { padding-block: 0 clamp(36px, 4vw, 60px); }
.ihc-bevezeto h2 { margin: 0 0 16px; font-size: clamp(20px, 2vw, 28px); line-height: 1.2; color: var(--ihc-deep); }
.ihc-bevezeto p { margin: 0 0 14px; font-size: 14.5px; line-height: 1.7; color: var(--ihc-muted); }
.ihc-bevezeto p:last-child { margin-bottom: 0; }
.ihc-bevezeto a { color: var(--ihc-accent); text-decoration: underline; }
.ihc-bevezeto a:hover { color: var(--ihc-accent-2); }

/* ===== 140. Hero – H1 az első slide-on, a többi slide címe sima bekezdés ===== */
.ihc-hero__inner h1,
.ihc-hero__inner .ihc-hero__cim {
  color: var(--ihc-deep); font-size: clamp(23px, 2.4vw, 37px); line-height: 1.12;
  letter-spacing: .005em; text-transform: none; font-weight: 700; margin: 0 0 4px;
}
.ihc-hero__inner > h1 + p {
  color: var(--ihc-accent); font-size: clamp(23px, 2.4vw, 37px); line-height: 1.12; letter-spacing: .005em;
  text-transform: none; font-weight: 800; margin: 0 0 20px; max-width: none;
}
.ihc-hero__inner > h1 + p + p {
  color: var(--ihc-muted); font-size: clamp(15px, 1.15vw, 17px); line-height: 1.6;
  margin: 0 0 28px; max-width: 44ch; text-transform: none; font-weight: 400;
}

/* ===== 141. Banner pár – finomhangolás (gombok egy sorban, kisebb térköz, egyforma kártyák) ===== */
.ihc-bannerpar__racs { align-items: stretch; }
.ihc-bannerpar .wp-block-cover.ihc-bannerpar__kartya {
  height: 100%;
  min-height: clamp(300px, 24vw, 370px) !important;
  padding: clamp(20px, 2vw, 30px) clamp(24px, 2.6vw, 38px);
}
.ihc-bannerpar__kartya .ihc-bannerpar__lead { margin: 0 0 12px; }
.ihc-bannerpar__kartya ul.ihc-bannerpar__lista { margin: 0 0 16px; gap: 7px; }
.ihc-bannerpar__kartya h3.ihc-bannerpar__cim { margin: 6px 0 8px; }
.ihc-bp-gombok { display: flex !important; flex-wrap: nowrap !important; align-items: center; gap: 10px; }
.ihc-bp-gombok .wp-block-button { flex: 0 0 auto; margin: 0; }
@media (max-width: 700px) {
  .ihc-bp-gombok { flex-wrap: wrap !important; }
}

/* ===== 142. Racsok: a temaszerkeszto sibling-margoja ne tolja el a kartyakat ===== */
.ihc-csalad__racs > *, .ihc-bannerpar__racs > * { margin-block: 0 !important; }
.ihc-csalad__kartya > *:first-child { margin-block-start: 0 !important; }

/* ===== 143. Főoldal – támogatás, rólunk, vásárlási info, záró CTA ===== */
.ihc-tam { padding-block: 0 clamp(36px, 4vw, 60px); }
.ihc-tam__cim { margin: 0 0 clamp(18px, 2vw, 28px); font-size: clamp(20px, 2vw, 28px); line-height: 1.2; color: var(--ihc-deep); }
.ihc-tam__racs { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: clamp(12px, 1.4vw, 20px); }
.ihc-tam__kartya {
  display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px;
  padding: clamp(16px, 1.6vw, 22px) clamp(12px, 1.2vw, 18px);
  background: #fff; border: 1px solid var(--ihc-line); border-radius: var(--ihc-radius);
  text-decoration: none; transition: box-shadow .18s ease, transform .18s ease;
}
.ihc-tam__kartya:hover { box-shadow: 0 16px 36px rgba(2, 63, 85, .18); transform: translateY(-2px); }
.ihc-tam__ikon { width: clamp(44px, 3.4vw, 52px); height: auto; display: block; }
.ihc-tam__nev { font-size: 14px; font-weight: 700; color: var(--ihc-ink); line-height: 1.25; }
.ihc-tam__leiras { font-size: 12.5px; line-height: 1.45; color: var(--ihc-muted); }
@media (max-width: 1000px) { .ihc-tam__racs { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 620px) { .ihc-tam__racs { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.ihc-rolunk { padding-block: 0 clamp(36px, 4vw, 60px); }
.ihc-rolunk__racs {
  display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  gap: clamp(22px, 3vw, 48px); align-items: center;
  background: var(--ihc-surface); border: 1px solid var(--ihc-line); border-radius: var(--ihc-radius);
  padding: clamp(22px, 2.6vw, 38px);
}
.ihc-rolunk__szoveg h2 { margin: 8px 0 12px; font-size: clamp(20px, 2vw, 28px); line-height: 1.2; color: var(--ihc-deep); }
.ihc-rolunk__szoveg p { margin: 0 0 12px; font-size: 14px; line-height: 1.65; color: var(--ihc-muted); }
.ihc-rolunk__gomb { margin: 16px 0 0 !important; font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.ihc-rolunk__gomb a { color: var(--ihc-accent); text-decoration: none; }
.ihc-rolunk__gomb a::after { content: " \2192"; }
.ihc-rolunk__gomb a:hover { color: var(--ihc-accent-2); text-decoration: underline; }
.ihc-rolunk__tenyek { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.ihc-rolunk__tenyek li { display: flex; align-items: center; gap: 12px; }
.ihc-rolunk__tenyek img { flex: 0 0 auto; width: 46px; height: auto; display: block; }
.ihc-rolunk__tenyek span { font-size: 12.5px; line-height: 1.45; color: var(--ihc-muted); }
.ihc-rolunk__tenyek strong { display: block; font-size: 13.5px; color: var(--ihc-ink); margin-bottom: 2px; }
@media (max-width: 900px) { .ihc-rolunk__racs { grid-template-columns: 1fr; } }

.ihc-vas { padding-block: 0 clamp(36px, 4vw, 60px); }
.ihc-vas__racs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(12px, 1.4vw, 20px); }
.ihc-vas__elem {
  display: block; padding: clamp(14px, 1.4vw, 20px) clamp(16px, 1.6vw, 22px);
  background: #fff; border: 1px solid var(--ihc-line); border-radius: var(--ihc-radius);
  text-decoration: none; transition: box-shadow .18s ease, transform .18s ease;
}
.ihc-vas__elem:hover { box-shadow: 0 16px 36px rgba(2, 63, 85, .18); transform: translateY(-2px); }
.ihc-vas__nev { display: block; font-size: 13.5px; font-weight: 700; color: var(--ihc-ink); }
.ihc-vas__nev::after { content: " \2192"; color: var(--ihc-accent); }
.ihc-vas__leiras { display: block; margin-top: 5px; font-size: 12.5px; line-height: 1.45; color: var(--ihc-muted); }
.ihc-vas__barion { margin: 16px 0 0; text-align: center; }
.ihc-vas__barion img { max-width: 340px; height: auto; display: inline-block; }
@media (max-width: 1000px) { .ihc-vas__racs { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .ihc-vas__racs { grid-template-columns: 1fr; } }

.ihc-zaro { padding-block: 0 clamp(36px, 4vw, 60px); }
.ihc-zaro__doboz {
  background: var(--ihc-deep); border-radius: var(--ihc-radius); color: #fff;
  padding: clamp(26px, 3vw, 46px); text-align: center;
}
.ihc-zaro__doboz h2 { margin: 0 0 12px; font-size: clamp(21px, 2.1vw, 30px); line-height: 1.2; color: #fff; }
.ihc-zaro__lead { margin: 0 auto 20px; max-width: 62ch; font-size: 14.5px; line-height: 1.65; color: rgba(255,255,255,.85); }
.ihc-zaro__adat {
  list-style: none; margin: 0 0 22px; padding: 0;
  display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 26px;
  font-size: 14px; color: rgba(255,255,255,.92);
}
.ihc-zaro__adat a { color: #fff; text-decoration: none; font-weight: 700; }
.ihc-zaro__adat a:hover { text-decoration: underline; }
.ihc-zaro__gombok { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin: 0; }
.ihc-zaro__gomb {
  display: inline-flex; align-items: center; gap: 8px; padding: 12px 26px; border-radius: 999px;
  background: var(--ihc-accent); border: 1px solid var(--ihc-accent); color: #fff;
  font-size: 13px; font-weight: 700; text-decoration: none;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.ihc-zaro__gomb::after { content: "\2192"; font-size: 15px; }
.ihc-zaro__gomb:hover { background: var(--ihc-accent-2); border-color: var(--ihc-accent-2); color: #fff; }
.ihc-zaro__gomb--ghost { background: transparent; border-color: rgba(255,255,255,.45); }
.ihc-zaro__gomb--ghost:hover { background: rgba(255,255,255,.14); border-color: #fff; color: #fff; }

/* ===== 145. Jogi és vásárlási információs oldalak ===== */
.ihc-jogi-hero { background: var(--ihc-tint); padding-block: clamp(28px, 3.4vw, 54px); margin-bottom: clamp(22px, 2.6vw, 40px); }
.ihc-jogi-hero h1 { margin: 6px 0 0; font-size: clamp(26px, 3vw, 40px); line-height: 1.15; color: var(--ihc-deep); }
.ihc-jogi-hero .ihc-eyebrow { margin: 0; }
.ihc-jogi-hero__meta { margin: 12px 0 0; font-size: 12.5px; color: var(--ihc-muted); }

body.ihc-jogi .entry-content { max-width: 860px; margin-inline: auto; color: var(--ihc-ink); }
body.ihc-jogi .entry-content > .alignfull.ihc-jogi-hero { max-width: none; }
body.ihc-jogi .entry-content p,
body.ihc-jogi .entry-content li { font-size: 15px; line-height: 1.75; color: var(--ihc-muted); }
body.ihc-jogi .entry-content h2,
body.ihc-jogi .entry-content h3,
body.ihc-jogi .entry-content .stk-block-heading__text {
  color: var(--ihc-deep); line-height: 1.25; margin-top: clamp(28px, 3vw, 44px); margin-bottom: 10px;
}
body.ihc-jogi .entry-content h2, body.ihc-jogi .entry-content h3.stk-block-heading__text { font-size: clamp(19px, 1.9vw, 24px); }
body.ihc-jogi .entry-content h3 { font-size: clamp(16px, 1.5vw, 19px); }
body.ihc-jogi .entry-content ul,
body.ihc-jogi .entry-content ol { padding-left: 22px; margin-block: 10px 18px; }
body.ihc-jogi .entry-content li + li { margin-top: 6px; }
body.ihc-jogi .entry-content a { color: var(--ihc-accent); text-decoration: underline; overflow-wrap: anywhere; }
body.ihc-jogi .entry-content a:hover { color: var(--ihc-accent-2); }
body.ihc-jogi .entry-content strong { color: var(--ihc-ink); }
body.ihc-jogi .entry-content table { width: 100%; border-collapse: collapse; margin-block: 16px; font-size: 14px; }
body.ihc-jogi .entry-content th, body.ihc-jogi .entry-content td {
  border: 1px solid var(--ihc-line); padding: 10px 12px; text-align: left; vertical-align: top;
}
body.ihc-jogi .entry-content th { background: var(--ihc-surface); color: var(--ihc-ink); font-weight: 700; }
body.ihc-jogi .ihc-letoltes { margin: 18px 0 26px; }
body.ihc-jogi .ihc-letoltes a {
  display: inline-flex; align-items: center; gap: 10px; padding: 12px 24px; border-radius: 999px;
  background: var(--ihc-accent); color: #fff; font-size: 13px; font-weight: 700; text-decoration: none;
}
body.ihc-jogi .ihc-letoltes a::after { content: "\2193"; font-size: 15px; }
body.ihc-jogi .ihc-letoltes a:hover { background: var(--ihc-accent-2); color: #fff; }

/* ===== 146. Gyujtooldal kartyak: ikon a kep helyett, 5 oszlop ===== */
.ihc-alkartya__ikon { display:block; width: clamp(52px, 4.4vw, 66px); height: auto; margin: 4px 0 12px; }
.ihc-alracs--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
@media (max-width: 1100px) { .ihc-alracs--5 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 700px) { .ihc-alracs--5 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ===== 147. Szallitasi dijak tablazat ===== */
.ihc-szallitas-tabla { margin-block: clamp(18px,2vw,28px); }
.ihc-szallitas-tabla table { width:100%; border-collapse:collapse; font-size:14px; }
.ihc-szallitas-tabla th, .ihc-szallitas-tabla td { border:1px solid var(--ihc-line); padding:10px 12px; text-align:left; }
.ihc-szallitas-tabla th { background: var(--ihc-surface); color: var(--ihc-ink); font-weight:700; }
.ihc-szallitas-tabla__meg { margin-top:10px; font-size:12.5px; line-height:1.5; color: var(--ihc-muted); }


/* ===== 148. Főoldal – Kiknek ajánljuk? célcsoport blokk ===== */
.ihc-kiknek { padding-block: clamp(36px, 4vw, 60px); }
.ihc-kiknek__fej { text-align: center; margin: 0 0 clamp(26px, 3vw, 44px); }
.ihc-kiknek__cimke { margin: 0; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--ihc-accent); }
.ihc-kiknek__cim { margin: 8px 0 0; font-size: clamp(24px, 2.6vw, 34px); line-height: 1.2; color: var(--ihc-deep); }
.ihc-kiknek__vonal { display: block; width: 56px; height: 3px; margin: 14px auto 0; border-radius: 3px; background: var(--ihc-accent); }
.ihc-kiknek__racs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(16px, 1.8vw, 28px); }
.ihc-kiknek__kartya { display: flex; flex-direction: column; align-items: center; text-align: center; text-decoration: none; color: inherit; }
.ihc-kiknek__media { position: relative; display: block; width: 100%; margin: 0 0 clamp(38px, 3.4vw, 46px); }
.ihc-kiknek__kep { display: block; aspect-ratio: 5 / 4; border-radius: var(--ihc-radius); overflow: hidden; background: var(--ihc-tint); }
.ihc-kiknek__kep img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease; }
.ihc-kiknek__jelveny { position: absolute; left: 50%; bottom: 0; transform: translate(-50%, 50%); display: grid; place-items: center; width: clamp(58px, 4.8vw, 72px); height: clamp(58px, 4.8vw, 72px); border-radius: 50%; background: #fff; box-shadow: 0 8px 22px rgba(2, 63, 85, .16); }
.ihc-kiknek__jelveny img { display: block; width: 100%; height: 100%; border-radius: 50%; }
.ihc-kiknek__nev { display: block; font-size: clamp(13px, 1.05vw, 15px); font-weight: 800; letter-spacing: .05em; text-transform: none; line-height: 1.3; color: var(--ihc-deep); }
.ihc-kiknek__leiras { display: block; max-width: 30ch; margin: 10px auto 0; font-size: clamp(12.5px, 1vw, 14px); line-height: 1.6; color: var(--ihc-muted); }
.ihc-kiknek__kartya:hover .ihc-kiknek__kep img { transform: scale(1.04); }
.ihc-kiknek__kartya:hover .ihc-kiknek__nev { color: var(--ihc-deep); }
@media (max-width: 1080px) { .ihc-kiknek__racs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(20px, 3vw, 30px); } }
@media (max-width: 560px) { .ihc-kiknek__racs { grid-template-columns: 1fr; } .ihc-kiknek__leiras { max-width: 34ch; } }


/* ===== 149. Rólunk oldal – hero és kártyarács ===== */
.page-id-8968 .ihc-tp-hero::before { background: none; }
.page-id-8968 .ihc-tp-hero.ihc-tp-hero { min-height: clamp(320px, 25vw, 430px); }
.page-id-8968 .ihc-tp-hero__grid.ihc-tp-hero__grid { padding-top: clamp(22px, 2.4vw, 34px); padding-bottom: clamp(22px, 2.4vw, 34px) !important; }
.page-id-8968 .ihc-tp-hero + .ihc-section { padding-top: clamp(28px, 3vw, 44px); }
@media (max-width: 781px) {
  .page-id-8968 .ihc-tp-hero::before { background: linear-gradient(180deg, rgba(255,255,255,.88) 0%, rgba(255,255,255,.64) 46%, rgba(255,255,255,.18) 100%); }
}
.ihc-tp-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(12px, 1.3vw, 18px); align-items: stretch; }
.ihc-tp-grid.ihc-tp-grid > * { margin-block-start: 0; }
@media (max-width: 1080px) { .ihc-tp-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .ihc-tp-grid { grid-template-columns: 1fr; } }

/* Rólunk – címsorok: 2px-el kisebb, sötét petrol */
.page-id-8968 h1, .page-id-8968 h2, .page-id-8968 h3 { color: var(--ihc-deep); }
.page-id-8968 .ihc-tp-hero__text h1 { font-size: calc(clamp(34px, 4.4vw, 60px) - 2px); color: var(--ihc-deep); }
.page-id-8968 .ihc-head h2 { font-size: calc(var(--theme-font-size, 40px) - 2px); color: var(--ihc-deep); }
.page-id-8968 .ihc-tp-card h3 { font-size: calc(clamp(13px, 1.1vw, 15.5px) - 2px); color: var(--ihc-deep); }


/* ===== 150. Gyűjtőoldali kártyák – kisebb ikon, fehér háttér, keret nélküli hover ===== */
.ihc-alkartya__kep:has(> .ihc-alkartya__ikon) {
  display: grid;
  place-items: center;
  aspect-ratio: auto;
  background: #fff;
  padding: clamp(20px, 2.2vw, 28px) 20px 0;
}
.ihc-alkartya__kep .ihc-alkartya__ikon {
  width: clamp(44px, 3.4vw, 56px);
  height: auto;
  object-fit: contain;
  margin: 0;
}
.ihc-alkartya:hover {
  border-color: var(--ihc-line);
  box-shadow: 0 16px 36px rgba(2, 63, 85, .16);
}


/* ===== 151. Gyűjtőoldalak (Terápiák / Hatékonyság / Területek) – kisebb felső térköz ===== */
.ihc-section.ihc-alcs { padding-top: clamp(24px, 2.6vw, 40px); }
.ihc-alcs .ihc-head { margin-bottom: clamp(26px, 3vw, 44px); }


/* ===== 152. Hírlevél blokk – adatkezelési checkbox igazítása ===== */
.mrm-form-group.privacy-policy .checkbox-input-wrapper { display: flex; align-items: center; gap: 10px; }
.mrm-form-group.privacy-policy #mrm-privacy-policy-input { flex: 0 0 auto; margin: 0; }
.mrm-form-group.privacy-policy .mrm-privacy-policy-input-label { display: flex; align-items: center; gap: 4px; margin: 0; line-height: 1.4; }
.mrm-form-group.privacy-policy .mrm-privacy-policy { margin: 0; line-height: 1.4; }
.mrm-form-group.privacy-policy .mrm-privacy-policy a { color: var(--ihc-accent); text-decoration: underline; }
.mrm-form-group.privacy-policy .mrm-privacy-policy a:hover { color: var(--ihc-accent-2); }


/* ===== 153. Szállítás és fizetés oldal – teljes szélesség ===== */
body.ihc-jogi.page-id-8912 .entry-content { max-width: none; }


/* ===== 154. Jogi oldalak – egységes szélesség, letisztított hero ===== */
body.ihc-jogi .entry-content { max-width: 1240px; margin-inline: auto; }
body.ihc-jogi.page-id-8912 .entry-content { max-width: 1240px; }
body.ihc-jogi .entry-content > *,
body.ihc-jogi .entry-content > .alignwide,
body.ihc-jogi .entry-content > .aligncenter,
body.ihc-jogi .entry-content > .alignfull { width: 100%; max-width: 100%; margin-inline: auto; }

.ihc-jogi-hero { background: none; padding-block: clamp(18px, 2.2vw, 30px) 0; margin-bottom: clamp(14px, 1.6vw, 24px); }
.ihc-jogi-hero > .ihc-wrap { max-width: none; padding-inline: 0; }

/* Sötét záró CTA a jogi oldalakon is olvasható maradjon */
body.ihc-jogi .entry-content .ihc-zaro__doboz h2 { color: #fff; }
body.ihc-jogi .entry-content .ihc-zaro__doboz p { color: rgba(255, 255, 255, .85); }
body.ihc-jogi .entry-content .ihc-zaro__doboz a { color: #fff; text-decoration: none; }
body.ihc-jogi .entry-content .ihc-zaro__adat a:hover { text-decoration: underline; }
body.ihc-jogi .entry-content .ihc-zaro__doboz strong { color: inherit; }

/* Fizetési módok kártyák */
body.page-id-8912 .stk-block-feature-grid .stk-block-column > .stk-column-wrapper {
  background: #fff; border: 1px solid var(--ihc-line); border-radius: var(--ihc-radius);
  box-shadow: 0 8px 24px rgba(2, 63, 85, .07);
  transition: transform .18s ease, box-shadow .18s ease;
}
body.page-id-8912 .stk-block-feature-grid .stk-block-column > .stk-column-wrapper:hover {
  transform: translateY(-3px); box-shadow: 0 18px 40px rgba(2, 63, 85, .16);
}


/* ===== 155. Kosár és pénztár – cím és záró CTA ===== */
.ihc-woo-cim { margin: 0 0 clamp(18px, 2vw, 28px); font-size: clamp(26px, 3vw, 40px); line-height: 1.15; color: var(--ihc-deep); }
.woocommerce-cart .ihc-zaro,
.woocommerce-checkout .ihc-zaro { padding-block: clamp(28px, 3.4vw, 52px) clamp(34px, 4vw, 64px); }



/* ===== 156. Egyseges cimsorok: sotet petrol, nem csupa nagybetu ===== */
body h1, body h2, body h3, body h4, body h5, body h6 { color: var(--ihc-deep); }

/* Sotet hatteru blokkokban a cimsor maradjon feher */
.ihc-zaro__doboz :where(h1, h2, h3, h4, h5, h6),
.ihc-lifestyle :where(h1, h2, h3, h4, h5, h6),
.ihc-voucher :where(h1, h2, h3, h4, h5, h6),
.ihc-tp-cta :where(h1, h2, h3, h4, h5, h6),
.ihc-tp-book :where(h1, h2, h3, h4, h5, h6),
.ihc-pr-band :where(h1, h2, h3, h4, h5, h6),
.ihc-pr-cta :where(h1, h2, h3, h4, h5, h6),
.ihc-cat-hero :where(h1, h2, h3, h4, h5, h6),
.ihc-bannerpar :where(h1, h2, h3, h4, h5, h6),
.ihc-berlet :where(h1, h2, h3, h4, h5, h6),
.ihc-hm-gift :where(h1, h2, h3, h4, h5, h6),
.ihc-mm-cta :where(h1, h2, h3, h4, h5, h6),
.ihc-sb-cta :where(h1, h2, h3, h4, h5, h6),
.ihc-sb-ai :where(h1, h2, h3, h4, h5, h6),
.ihc-newsletter :where(h1, h2, h3, h4, h5, h6),
.ihc-blog-newsletter :where(h1, h2, h3, h4, h5, h6),
.ihc-pr-highlights .ihc-tp-card :where(h1, h2, h3, h4, h5, h6),
footer.ct-footer :where(h1, h2, h3, h4, h5, h6) { color: #fff; }

/* ===== 157. Egyseges kartya-hover ===== */
.ihc-therapy,
.ihc-sb__card,
.ihc-tp-card,
.ihc-cat-card,
.ihc-ajanlo__kartya,
.ihc-alkartya,
.ihc-nepszeru__kartya,
.ihc-utak__kartya,
.ihc-cikkek__kartya,
.ihc-csalad__kartya,
.ihc-tam__kartya,
.ihc-vas__elem,
.ihc-kiknek__kartya,
.ihc-shop ul.products li.product,
body.page-id-8912 .stk-block-feature-grid .stk-block-column > .stk-column-wrapper { transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.ihc-therapy:hover,
.ihc-sb__card:hover,
.ihc-tp-card:hover,
.ihc-cat-card:hover,
.ihc-ajanlo__kartya:hover,
.ihc-alkartya:hover,
.ihc-nepszeru__kartya:hover,
.ihc-utak__kartya:hover,
.ihc-cikkek__kartya:hover,
.ihc-csalad__kartya:hover,
.ihc-tam__kartya:hover,
.ihc-vas__elem:hover,
.ihc-kiknek__kartya:hover,
.ihc-shop ul.products li.product:hover,
body.page-id-8912 .stk-block-feature-grid .stk-block-column > .stk-column-wrapper:hover {
  transform: translateY(-3px);
  border-color: #CDE7EE;
  box-shadow: 0 16px 34px rgba(2, 63, 85, .14);
}

/* ===== 158. Zaro CTA elerhetosegek egy sorban, feheren ===== */
.ihc-zaro__adat { flex-wrap: nowrap; color: #fff; }
.ihc-zaro__adat li { white-space: nowrap; color: #fff; }
body.ihc-jogi .entry-content .ihc-zaro__adat li { color: #fff; }
@media (max-width: 720px) { .ihc-zaro__adat { flex-wrap: wrap; } .ihc-zaro__adat li { white-space: normal; } }


/* ===== 159. Szallitas es fizetes - szallitasi modok blokk ===== */
body.page-id-8912 .stk-46a5810,
body.page-id-8912 .stk-46a5810::before,
body.page-id-8912 .stk-46a5810 > .stk-container::before { background: none !important; background-color: transparent !important; }
body.page-id-8912 .stk-46a5810 { min-height: 0 !important; }

body.page-id-8912 .stk-9958e60 > .stk-row { flex-direction: column; align-items: center; text-align: center; }
body.page-id-8912 .stk-9958e60 > .stk-row > .stk-block-column { flex: 0 0 auto !important; width: 100%; max-width: 990px; }
body.page-id-8912 .stk-9958e60 .stk-block-heading__text { text-align: center; }
body.page-id-8912 .stk-9958e60 .stk-block-text__text,
body.page-id-8912 .stk-9958e60 p { text-align: center; }

body.page-id-8912 .stk-0b74c0b .stk-block-column > .stk-column-wrapper {
  background: #fff; border: 1px solid var(--ihc-line); border-radius: var(--ihc-radius);
  padding: clamp(18px, 1.8vw, 26px); height: 100%;
  box-shadow: 0 8px 24px rgba(2, 63, 85, .07);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
body.page-id-8912 .stk-0b74c0b .stk-block-column > .stk-column-wrapper:hover {
  transform: translateY(-3px); border-color: #CDE7EE;
  box-shadow: 0 16px 34px rgba(2, 63, 85, .14);
}


/* ===== 160. Fizetesi mod kartyak ikonnal, kisebb Barion ikonsor ===== */
body.page-id-8912 .stk-2801f7b .stk-block-column > .stk-column-wrapper::before {
  content: ""; display: block; width: clamp(40px, 3.4vw, 52px); height: clamp(40px, 3.4vw, 52px);
  margin: 0 auto 14px; background-repeat: no-repeat; background-position: center; background-size: contain;
}
body.page-id-8912 .stk-2801f7b > .stk-row > .stk-block-column:nth-of-type(1) > .stk-column-wrapper::before { background-image: url("https://new.imaginehealth.hu/wp-content/uploads/imagine-2026-ikonok/ihc-ikon-finanszirozas.svg"); }
body.page-id-8912 .stk-2801f7b > .stk-row > .stk-block-column:nth-of-type(2) > .stk-column-wrapper::before { background-image: url("https://new.imaginehealth.hu/wp-content/uploads/imagine-2026-ikonok/ihc-ikon-webshop.svg"); }
body.page-id-8912 .stk-2801f7b .stk-block-image .stk-img-wrapper { width: 70% !important; margin-inline: auto; }
body.page-id-8912 .stk-2801f7b .stk-block-image figure { text-align: center; }


/* ===== 161. Zaro CTA elerhetosegek: azonos alapvonal ===== */
.ihc-zaro__adat { align-items: center; }
.ihc-zaro__adat li, .ihc-zaro__adat li + li { margin-top: 0; margin-bottom: 0; }
body.ihc-jogi .entry-content .ihc-zaro__adat li + li { margin-top: 0; }


/* ===== 162. Kartya hover keret: pontosan 1px, vilagos kek ===== */
.ihc-therapy,
.ihc-sb__card,
.ihc-tp-card,
.ihc-cat-card,
.ihc-ajanlo__kartya,
.ihc-alkartya,
.ihc-nepszeru__kartya,
.ihc-utak__kartya,
.ihc-cikkek__kartya,
.ihc-csalad__kartya,
.ihc-tam__kartya,
.ihc-vas__elem,
.ihc-kiknek__kartya,
.ihc-shop ul.products li.product,
body.page-id-8912 .stk-2801f7b .stk-block-column > .stk-column-wrapper,
body.page-id-8912 .stk-0b74c0b .stk-block-column > .stk-column-wrapper { outline: 1px solid transparent; outline-offset: -1px; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, outline-color .18s ease; }
.ihc-therapy:hover,
.ihc-sb__card:hover,
.ihc-tp-card:hover,
.ihc-cat-card:hover,
.ihc-ajanlo__kartya:hover,
.ihc-alkartya:hover,
.ihc-nepszeru__kartya:hover,
.ihc-utak__kartya:hover,
.ihc-cikkek__kartya:hover,
.ihc-csalad__kartya:hover,
.ihc-tam__kartya:hover,
.ihc-vas__elem:hover,
.ihc-kiknek__kartya:hover,
.ihc-shop ul.products li.product:hover,
body.page-id-8912 .stk-2801f7b .stk-block-column > .stk-column-wrapper:hover,
body.page-id-8912 .stk-0b74c0b .stk-block-column > .stk-column-wrapper:hover { outline-color: #CDE7EE; border-color: #CDE7EE; box-shadow: 0 16px 34px rgba(2, 63, 85, .14); transform: translateY(-3px); }


/* ===== 163. Krioterapia hero: nincs feher fatyol ===== */
.page-id-3237 .ihc-tp-hero::before { background: none; }
@media (max-width: 781px) {
  .page-id-3237 .ihc-tp-hero::before { background: linear-gradient(180deg, rgba(255,255,255,.88) 0%, rgba(255,255,255,.64) 46%, rgba(255,255,255,.18) 100%); }
}


/* ===== 164. Terapia herok: nincs feher fatyol (mobilon marad az olvashatosag miatt) ===== */
.ihc-tp-hero::before { background: none; }
@media (max-width: 781px) {
  .ihc-tp-hero::before { background: linear-gradient(180deg, rgba(255,255,255,.88) 0%, rgba(255,255,255,.64) 46%, rgba(255,255,255,.18) 100%); }
}


/* ===== 165. Jogi hero kozepre ===== */
.ihc-jogi-hero { text-align: center; }
.ihc-jogi-hero .ihc-eyebrow, .ihc-jogi-hero h1 { text-align: center; }


/* ===== 166. Kosar es fiok ikon a fejlec menuben ===== */
.ihc-mikon > a, .ihc-mikon > .ct-menu-link, #mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.ihc-mikon > a.mega-menu-link {
  display: inline-flex; align-items: center; justify-content: center; padding: 0 6px; color: var(--ihc-deep);
}
.ihc-mikon__jel { position: relative; display: inline-flex; align-items: center; justify-content: center; }
.ihc-mikon__jel svg { display: block; }
.ihc-mikon__db {
  position: absolute; top: -6px; right: -8px; min-width: 17px; height: 17px; padding: 0 4px;
  display: inline-flex; align-items: center; justify-content: center; border-radius: 999px;
  background: var(--ihc-accent); color: #fff; font-size: 10.5px; font-weight: 800; line-height: 1;
}
.ihc-mikon > a:hover { color: var(--ihc-accent); }


/* ===== 167. Kosar/fiok ikon: a menusorban, a zaszlo es a gomb kozott ===== */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.ihc-mikon {
  display: inline-flex; align-items: center; height: auto; margin: 0; padding: 0;
  vertical-align: middle; background: none;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.ihc-mikon > a.mega-menu-link {
  display: inline-flex !important; align-items: center; justify-content: center; float: none;
  height: auto !important; line-height: 1 !important; padding: 0 8px !important; margin: 0 !important;
  background: none !important; border: 0 !important; color: var(--ihc-deep) !important;
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.ihc-mikon > a.mega-menu-link:hover { color: var(--ihc-accent) !important; background: none !important; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.ihc-mikon > a.mega-menu-link::after,
#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.ihc-mikon > a.mega-menu-link::before { content: none !important; display: none !important; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.ihc-mikon .ihc-mikon__jel { display: inline-flex; }


/* ===== 168. Finomhangolas: kiknek-kartyak hover nelkul, hero mini kartyak, fejlec ikonok ===== */

/* KIKNEK AJANLJUK kartyak: hooveren valtozatlan */
.ihc-kiknek__kartya:hover,
.ihc-kiknek__kartya:focus-within {
  transform: none; outline-color: transparent; box-shadow: none; border-color: transparent;
}
.ihc-kiknek__kartya:hover .ihc-kiknek__kep img,
.ihc-kiknek__kartya:hover img { transform: none; }

/* Hero mini kartyak: 1px-el nagyobb szoveg, 30%-kal nagyobb ikon */
.ihc-tp-mini__item h3 { font-size: calc(clamp(13px, 1.05vw, 15px) + 1px); }
.ihc-tp-mini__item p { font-size: calc(clamp(11.5px, .9vw, 13px) + 1px); }
.ihc-tp-mini__item .ihc-tp-icon img { width: calc(clamp(34px, 3vw, 44px) * 1.3); }

/* Fejlec ikonok: ne torjenek uj sorba a megamenuben */

#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.ihc-mikon > a.mega-menu-link { display: flex !important; align-items: center; }


/* ===== 170. Szallitas es fizetes: Szallitasi dijak es Fizetesi modok cimsor kozepre ===== */
body.page-id-8912 .entry-content > h2.wp-block-heading { text-align: center; }


/* ===== 171. Fejlecmenu: rendezett tobbsoros tores ===== */
#mega-menu-wrap-menu_1 #mega-menu-menu_1 {
  display: flex !important; flex-wrap: wrap; align-items: center;
  row-gap: clamp(4px, .6vw, 10px);
}
#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li { float: none !important; }
#mega-menu-wrap-menu_1 #mega-menu-menu_1 > li.ihc-mikon { display: inline-flex; align-items: center; }


/* ===== 172. Fejlec CTA gomb: kicsit kisebb ===== */
body[data-header*="type-1"] .ct-header [data-id="button"] [class*="ct-button"] { --theme-button-font-size: 13px; }
body[data-header*="type-1"] .ct-header [data-id="button"] a { --theme-button-padding: 10px 24px; }


/* ===== 173. Kiknek ajanljuk blokk (Gutenberg valtozat) ===== */
.ihc-kiknek .ihc-kiknek__cimke { margin: 0 0 6px; }
.ihc-kiknek .ihc-kiknek__cim { margin: 0 0 12px; }
.ihc-kiknek hr.ihc-kiknek__vonal {
  width: 56px; height: 3px; margin: 0 auto clamp(28px, 3vw, 44px); border: 0;
  background: var(--ihc-accent); opacity: 1; border-radius: 999px;
}
.ihc-kiknek .ihc-kiknek__racs {
  display: flex; flex-wrap: wrap; gap: clamp(16px, 2vw, 28px); align-items: flex-start;
}
.ihc-kiknek .ihc-kiknek__racs > .wp-block-column.ihc-kiknek__kartya {
  display: flex; flex-direction: column; align-items: center; text-align: center;
  flex-basis: calc(25% - (3 * clamp(16px, 2vw, 28px) / 4)); flex-grow: 0;
}
.ihc-kiknek .ihc-kiknek__media {
  position: relative; width: 100%; margin: 0 0 clamp(38px, 4vw, 46px);
}
.ihc-kiknek figure.ihc-kiknek__kep {
  margin: 0; aspect-ratio: auto; overflow: hidden; border-radius: var(--ihc-radius); background: none;
}
.ihc-kiknek figure.ihc-kiknek__kep img {
  display: block; width: 100%; height: auto; aspect-ratio: 5 / 4; object-fit: cover; border-radius: var(--ihc-radius);
}
.ihc-kiknek figure.ihc-kiknek__jelveny {
  position: absolute; left: 50%; bottom: 0; transform: translate(-50%, 50%); margin: 0;
  width: clamp(58px, 5vw, 72px); height: clamp(58px, 5vw, 72px); display: grid; place-items: center;
  background: #fff; border-radius: 999px; box-shadow: 0 10px 24px rgba(2, 63, 85, .12);
}
.ihc-kiknek figure.ihc-kiknek__jelveny img { width: 56%; height: auto; }
.ihc-kiknek h3.ihc-kiknek__nev {
  margin: 0 0 6px; font-size: clamp(13px, 1.05vw, 15px); font-weight: 800; line-height: 1.3;
  letter-spacing: .02em; text-transform: none;
}
.ihc-kiknek h3.ihc-kiknek__nev a { color: var(--ihc-deep); text-decoration: none; }
.ihc-kiknek h3.ihc-kiknek__nev a:hover { color: var(--ihc-accent); }
.ihc-kiknek p.ihc-kiknek__leiras {
  margin: 0 auto; max-width: 30ch; font-size: 14px; line-height: 1.6; color: var(--ihc-muted);
}
@media (max-width: 1080px) {
  .ihc-kiknek .ihc-kiknek__racs > .wp-block-column.ihc-kiknek__kartya { flex-basis: calc(50% - clamp(16px, 2vw, 28px) / 2); }
}
@media (max-width: 700px) {
  .ihc-kiknek .ihc-kiknek__racs > .wp-block-column.ihc-kiknek__kartya { flex-basis: 100%; }
}


/* ===== 174. Hero USP sav: nagyobb szoveg es ikon, 60% szelesseg ===== */
.ihc-hero .ihc-hero__inner .ihc-hero__usp { max-width: 60vw; width: 100%; }
.ihc-hero__usp li { font-size: 13px; }
.ihc-hero__usp svg { width: 29px; height: 29px; }
@media (max-width: 900px) {
  .ihc-hero .ihc-hero__inner .ihc-hero__usp { max-width: 100%; }
}


/* ===== 175. Kiknek ajanljuk: az ikon toltse ki a kort ===== */
.ihc-kiknek figure.ihc-kiknek__jelveny { overflow: hidden; padding: 0; }
.ihc-kiknek figure.ihc-kiknek__jelveny img {
  width: 100%; height: 100%; object-fit: cover; border-radius: 999px; display: block;
}


/* ===== 176. Kartyak finomhangolas: alapon enyhe arnyek keret nelkul, hooveren visszafogottabb ===== */
.ihc-therapy,
.ihc-sb__card,
.ihc-tp-card,
.ihc-cat-card,
.ihc-ajanlo__kartya,
.ihc-alkartya,
.ihc-nepszeru__kartya,
.ihc-utak__kartya,
.ihc-cikkek__kartya,
.ihc-csalad__kartya,
.ihc-tam__kartya,
.ihc-vas__elem,
.ihc-shop ul.products li.product,
body.page-id-8912 .stk-2801f7b .stk-block-column > .stk-column-wrapper,
body.page-id-8912 .stk-0b74c0b .stk-block-column > .stk-column-wrapper {
  border-color: transparent;
  box-shadow: 0 6px 18px rgba(2, 63, 85, .08);
}
.ihc-therapy:hover,
.ihc-sb__card:hover,
.ihc-tp-card:hover,
.ihc-cat-card:hover,
.ihc-ajanlo__kartya:hover,
.ihc-alkartya:hover,
.ihc-nepszeru__kartya:hover,
.ihc-utak__kartya:hover,
.ihc-cikkek__kartya:hover,
.ihc-csalad__kartya:hover,
.ihc-tam__kartya:hover,
.ihc-vas__elem:hover,
.ihc-shop ul.products li.product:hover,
body.page-id-8912 .stk-2801f7b .stk-block-column > .stk-column-wrapper:hover,
body.page-id-8912 .stk-0b74c0b .stk-block-column > .stk-column-wrapper:hover {
  border-color: transparent;
  outline-color: #CDE7EE;
  box-shadow: 0 10px 24px rgba(2, 63, 85, .12);
  transform: translateY(-3px);
}


/* ===== 177. Legnepszerubb termekek: 30%-kal kisebb felso terkoz ===== */
.ihc-nepszeru { padding-top: clamp(25px, 2.8vw, 42px); }
.ihc-kiknek { padding-bottom: clamp(25px, 2.8vw, 42px); }


/* ===== 178. Legnepszerubb termekek: tovabbi 30%-kal kisebb felso terkoz ===== */
.ihc-nepszeru { padding-top: clamp(18px, 2vw, 29px); }
.ihc-kiknek { padding-bottom: clamp(18px, 2vw, 29px); }


/* ===== 179. Termekcsaladok: 6:5 kep, teljes szelessegben, egyenes also el ===== */
.ihc-csalad__kartya { padding: 0 0 12px; overflow: hidden; }
.ihc-csalad__kep {
  margin: 0 0 12px; width: 100%; aspect-ratio: 6 / 5;
  border-radius: var(--ihc-radius) var(--ihc-radius) 0 0;
}
.ihc-csalad__nev,
.ihc-csalad__leiras,
.ihc-csalad__link { padding-inline: 12px; }


/* ===== 180. Termekcsaladok: 6:4 kep, 20px a kep alatt, 10px a kartya aljan ===== */
.ihc-csalad__kartya { padding: 0 0 10px; }
.ihc-csalad__kep { aspect-ratio: 6 / 4; margin: 0 0 20px; }


/* ===== 181. Vasarlasi informaciok blokk uj elrendezes ===== */
.ihc-vas { background: var(--ihc-surface); padding-block: clamp(36px, 4vw, 60px); }
.ihc-vas__fej { text-align: center; margin-bottom: clamp(26px, 3vw, 40px); }
.ihc-vas__fej .ihc-eyebrow { margin: 0 0 6px; }
.ihc-vas__cim { margin: 0 0 12px; font-size: clamp(22px, 2.2vw, 30px); line-height: 1.2; color: var(--ihc-deep); }
.ihc-vas__vonal { display: block; width: 56px; height: 3px; margin: 0 auto; border-radius: 999px; background: var(--ihc-accent); }
.ihc-vas__elem.ihc-vas__elem {
  display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px;
  padding: 0 clamp(10px, 1.2vw, 18px); background: none; border: 0; box-shadow: none; outline: 0;
}
.ihc-vas__elem.ihc-vas__elem:hover { transform: none; box-shadow: none; border: 0; outline: 0; }
.ihc-vas__ikon { display: block; width: clamp(46px, 3.6vw, 58px); height: auto; }
.ihc-vas__nev { display: block; font-size: clamp(13px, 1.05vw, 15px); font-weight: 700; line-height: 1.25; color: var(--ihc-accent); }
.ihc-vas__nev::after { content: none; }
.ihc-vas__elem:hover .ihc-vas__nev { color: var(--ihc-accent-2); }
.ihc-vas__leiras { display: block; margin-top: 0; max-width: 28ch; font-size: clamp(12px, .95vw, 13px); line-height: 1.5; color: var(--ihc-muted); }

/* ===== 182. Termekcsaladok terkozok ===== */
.ihc-csalad__kep { margin: 0 0 20px !important; }
.ihc-csalad__nev { margin-block-start: 0 !important; }
.ihc-csalad__link { margin-block-end: 0 !important; }
.ihc-csalad__kartya { padding-bottom: 10px !important; }


/* ===== 183. Vasarlasi informaciok: feher hatter, nincs vonal, nagyobb ikonok ===== */
.ihc-vas { background: #fff; }
.ihc-vas__vonal { display: none; }
.ihc-vas__ikon { width: clamp(55px, 4.3vw, 70px); }


/* ===== 184. Vasarlasi informaciok: 30%-kal kisebb felso terkoz ===== */
.ihc-bannerpar { padding-bottom: clamp(25px, 2.8vw, 42px); }
.ihc-vas { padding-top: clamp(25px, 2.8vw, 42px); }


/* ===== 185. Utak kartyak: sotet petrol hatter, feher szoveg es ikon ===== */
.ihc-utak__kartya {
  background: var(--ihc-deep); border-color: transparent;
  box-shadow: 0 6px 18px rgba(2, 63, 85, .12);
}
.ihc-utak__kartya:hover {
  background: var(--ihc-deep); border-color: transparent; outline-color: #CDE7EE;
  box-shadow: 0 10px 24px rgba(2, 63, 85, .18);
}
.ihc-utak__cim { color: #fff; }
.ihc-utak__leiras { color: rgba(255, 255, 255, .82); }
.ihc-utak__nyil { color: #fff; }
svg.ihc-utak__ikon {
  flex: 0 0 auto; display: block; width: clamp(44px, 3.4vw, 54px); height: auto; color: #fff;
}

/* ===== 186. Kiemelt termekek: 30%-kal kisebb felso terkoz ===== */
.ihc-rolunk { padding-bottom: clamp(25px, 2.8vw, 42px); }
.ihc-section.ihc-kiemelt { padding-top: clamp(45px, 5.6vw, 78px); }


/* ===== 187. Vasarlasi informaciok: tovabbi 30%-kal kisebb felso terkoz ===== */
.ihc-bannerpar { padding-bottom: clamp(18px, 2vw, 29px); }
.ihc-vas { padding-top: clamp(18px, 2vw, 29px); }


/* ===== 188. Rolunk tenyek: kor nelkuli, 30%-kal nagyobb ikon + link ===== */
svg.ihc-rolunk__ikon {
  flex: 0 0 auto; display: block; width: 60px; height: auto; color: var(--ihc-accent);
}
.ihc-rolunk__tenyek a { color: var(--ihc-accent); text-decoration: underline; }
.ihc-rolunk__tenyek a:hover { color: var(--ihc-accent-2); }

/* ===== 189. Kiemelt termekek: tovabbi 40%-kal kisebb felso terkoz ===== */
.ihc-rolunk { padding-bottom: clamp(15px, 1.7vw, 25px); }
.ihc-section.ihc-kiemelt { padding-top: clamp(27px, 3.4vw, 47px); }


/* ===== 190. Tudastar kartyak: a kep a kartya szeleig er, jobb oldalt egyenes el ===== */
.ihc-cikkek__kartya { padding: 0; gap: 0; overflow: hidden; }
.ihc-cikkek__kep {
  flex: 0 0 38%; border-radius: var(--ihc-radius) 0 0 var(--ihc-radius);
}
.ihc-cikkek__szoveg { padding: 14px 16px; }


/* ===== 191. Blokkos valtozatok: rolunk, utak, miert, tamogatas ===== */

/* Rolunk */
.ihc-rolunk__racs.wp-block-columns { display: grid; }
.ihc-rolunk__tenyoszlop.wp-block-column { display: grid; gap: 14px; align-content: center; }
.ihc-rolunk__teny.wp-block-group { display: flex; align-items: center; gap: 12px; }
.ihc-rolunk__tenyszoveg.wp-block-group { min-width: 0; flex: 1 1 auto; }
.ihc-rolunk__tenycim { margin: 0 0 2px !important; font-size: 13.5px; line-height: 1.3; color: var(--ihc-ink); }
.ihc-rolunk__tenyleiras { margin: 0 !important; font-size: 12.5px; line-height: 1.45; color: var(--ihc-muted); }
.ihc-rolunk__tenyleiras a { color: var(--ihc-accent); text-decoration: underline; }
.ihc-rolunk__tenyleiras a:hover { color: var(--ihc-accent-2); }

/* Utak */
.ihc-utak__racs.wp-block-columns { display: grid; }
.ihc-utak__kartya.wp-block-column {
  position: relative; display: flex; flex-direction: row; align-items: center;
  gap: clamp(12px, 1.2vw, 18px); flex-basis: auto;
}
.ihc-utak__szoveg.wp-block-group { flex: 1 1 auto; min-width: 0; }
.ihc-utak__cim { margin: 0 !important; font-size: clamp(14px, 1.15vw, 16px); font-weight: 700; line-height: 1.25; }
.ihc-utak__cim a { color: #fff; text-decoration: none; }
.ihc-utak__cim a::after { content: ""; position: absolute; inset: 0; }
.ihc-utak__leiras { margin: 5px 0 0 !important; }

/* Miert valassz minket */
figure.ihc-miert__ikon { margin: 0 !important; }
figure.ihc-miert__ikon img { display: block; width: clamp(46px, 3.6vw, 56px); height: auto; margin-inline: auto; }
.ihc-miert__item.wp-block-group > * { margin-block: 0; }
.ihc-miert__item.wp-block-group > * + * { margin-block-start: 10px; }

/* Amiben szamithatsz rank */
.ihc-tam__kartya.wp-block-group { position: relative; }
.ihc-tam__kartya.wp-block-group > * { margin-block: 0; }
.ihc-tam__kartya.wp-block-group > * + * { margin-block-start: 8px; }
figure.ihc-tam__ikon { margin: 0 !important; }
figure.ihc-tam__ikon img { display: block; width: clamp(44px, 3.4vw, 52px); height: auto; margin-inline: auto; }
.ihc-tam__nev { margin: 0 !important; }
.ihc-tam__nev a { color: var(--ihc-ink); text-decoration: none; }
.ihc-tam__nev a::after { content: ""; position: absolute; inset: 0; }
.ihc-tam__kartya:hover .ihc-tam__nev a { color: var(--ihc-accent); }
.ihc-tam__leiras { margin: 0 !important; }


/* ===== 192. Utak kartyak: korben azonos belso margo ===== */
.ihc-utak__kartya.wp-block-column { padding: clamp(18px, 1.8vw, 24px); }


/* ===== 193. Utak kartyak: a blokk-korkozok kinullazasa (fuggolegesen kozepre) ===== */
.ihc-utak__kartya.wp-block-column > * { margin-block: 0 !important; }
.ihc-utak__szoveg.wp-block-group > * { margin-block: 0 !important; }
.ihc-utak__leiras { margin: 5px 0 0 !important; }


/* ===== 194. Blokkos valtozatok: racs-terkozok, berbeadas, tudastar ===== */
.ihc-tam__racs.wp-block-group > *,
.ihc-miert__racs.wp-block-group > *,
.ihc-cikkek__racs.wp-block-group > * { margin-block: 0 !important; }

/* Berbeadas */
.ihc-berlet__kartya.wp-block-cover { padding: clamp(24px, 2.6vw, 40px); min-height: clamp(250px, 20vw, 300px); }
.ihc-berlet__kartya .wp-block-cover__image-background { object-fit: cover; object-position: center right; }
.ihc-berlet__kartya .wp-block-cover__inner-container { position: relative; z-index: 1; width: 100%; }
.ihc-berlet__doboz.wp-block-group > * { margin-block: 0 !important; }
.ihc-berlet__gombsor { margin: 0 !important; }
.ihc-berlet__lista.wp-block-list { margin: 0 0 22px !important; padding: 0; }

/* Tudastar */
.ihc-cikkek__kartya.wp-block-group { position: relative; }
.ihc-cikkek__kartya.wp-block-group > * { margin-block: 0 !important; }
figure.ihc-cikkek__kep { margin: 0 !important; flex: 0 0 38%; }
.ihc-cikkek__szoveg.wp-block-group > * { margin-block: 0 !important; }
.ihc-cikkek__kat { margin: 0 !important; }
.ihc-cikkek__cim { margin: 6px 0 0 !important; }
.ihc-cikkek__cim a { color: var(--ihc-ink); text-decoration: none; }
.ihc-cikkek__cim a::after { content: ""; position: absolute; inset: 0; }
.ihc-cikkek__kartya:hover .ihc-cikkek__cim a { color: var(--ihc-accent); }
.ihc-cikkek__leiras { margin: 6px 0 0 !important; }
.ihc-cikkek__tovabb { margin: auto 0 0 !important; padding-top: 10px; }
.ihc-cikkek__tovabb a { color: var(--ihc-accent); text-decoration: none; }
.ihc-cikkek__fej.wp-block-group > * { margin-block: 0 !important; }
.ihc-cikkek__mindsor { margin: 0 !important; }


/* ===== 195. Berbeadas banner: 1px-el nagyobb szoveg, aranyos listaterkoz ===== */
.ihc-berlet__lead { font-size: 15px; }
.ihc-berlet__lista.wp-block-list { display: grid; gap: 8px; }
.ihc-berlet__lista li { margin: 0 !important; font-size: 14.5px; }
.ihc-berlet__lista li + li { margin-block-start: 0 !important; }


/* ===== 196. Berbeadas: terkoz a cimsor korul ===== */
.ihc-berlet__cim { margin: 10px 0 !important; }
.ihc-berlet__lead { margin: 0 0 18px !important; }


/* ===== 197. Hero forgo: nincs feher fatyol a kepeken ===== */
.ihc-hero .wp-block-cover::after { background: none; }
@media (max-width: 781px) {
  .ihc-hero .wp-block-cover::after { background: linear-gradient(180deg, rgba(2,63,85,0) 22%, rgba(2,63,85,.42) 50%, rgba(2,63,85,.78) 82%); }
}


/* ===== 199. Hero szoveg es gombok feheren (nincs hatter) ===== */
.ihc-hero .ihc-hero__inner .ihc-hero__cim,
.ihc-hero .ihc-hero__inner h1,
.ihc-hero .ihc-hero__inner h2,
.ihc-hero .ihc-hero__inner > h1 + p,
.ihc-hero .ihc-hero__inner > h2 + p,
.ihc-hero .ihc-hero__inner .ihc-hero__sub,
.ihc-hero .ihc-hero__inner > h1 + p + p,
.ihc-hero .ihc-hero__inner > h2 + p + p,
.ihc-hero .ihc-hero__inner > .ihc-hero__sub + p { color: #fff; }
.ihc-hero .ihc-hero__usp li { color: #fff; }
.ihc-hero .ihc-hero__usp svg { color: #fff; }

.ihc-hero .ihc-hero__inner .wp-block-button__link {
  background: #fff; color: var(--ihc-deep); border-color: #fff; box-shadow: none;
}
.ihc-hero .ihc-hero__inner .wp-block-button__link:hover { background: var(--ihc-tint); color: var(--ihc-deep); }
.ihc-hero .ihc-hero__inner .ihc-btn--ghost .wp-block-button__link {
  background: transparent; color: #fff; box-shadow: inset 0 0 0 1px #fff;
}
.ihc-hero .ihc-hero__inner .ihc-btn--ghost .wp-block-button__link:hover { background: rgba(255, 255, 255, .16); color: #fff; }


/* ===== 200. Hero gombok hover: sotet petrol + enyhe emelkedes ===== */
.ihc-hero .ihc-hero__inner .wp-block-button__link {
  transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.ihc-hero .ihc-hero__inner .wp-block-button__link:hover {
  background: var(--ihc-deep); color: #fff; border-color: var(--ihc-deep);
  transform: translateY(-2px); box-shadow: 0 10px 24px rgba(2, 63, 85, .22);
}
.ihc-hero .ihc-hero__inner .ihc-btn--ghost .wp-block-button__link:hover {
  background: var(--ihc-deep); color: #fff; box-shadow: inset 0 0 0 1px #fff, 0 10px 24px rgba(2, 63, 85, .22);
  transform: translateY(-2px);
}


/* ===== 201. Hero ghost gomb: hooveren is atlatszo ===== */
.ihc-hero .ihc-hero__inner .ihc-btn--ghost .wp-block-button__link:hover {
  background: transparent; color: #fff;
  box-shadow: inset 0 0 0 1px #fff, 0 10px 24px rgba(2, 63, 85, .22);
  transform: translateY(-2px);
}


/* ===== 202. Termekgaleria: video a fo keperynyon ===== */
.ihc-pr-gallery__video {
  display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: contain;
  background: #fff; border-radius: var(--ihc-radius); padding: clamp(10px, 1.2vw, 18px);
}
.ihc-pr-gallery__thumbs .ihc-pr-video { position: relative; }
.ihc-pr-gallery__thumbs .ihc-pr-video::after {
  content: ""; position: absolute; left: 50%; top: 50%; width: 26px; height: 26px;
  transform: translate(-50%, -50%); border-radius: 999px; pointer-events: none;
  background: rgba(2, 63, 85, .72) url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M9 7.5v9l7.5-4.5z%27 fill=%27white%27/%3E%3C/svg%3E") center / 16px 16px no-repeat;
}


/* ===== 203. Mobil fejlec: a logo ne csusszon a nyelvvalto ala ===== */
@media (max-width: 600px) {
  .site-logo-container img, header .default-logo { max-width: 150px !important; width: auto !important; height: auto !important; }
  .ihc-langswitch { margin-left: 16px !important; }
}
@media (max-width: 380px) {
  .site-logo-container img, header .default-logo { max-width: 128px !important; }
  .ihc-langswitch { margin-left: 10px !important; }
}


/* ===== 204. Termekgaleria: mobilon nagyobb, tordelheto belyegkepsor ===== */
@media (max-width: 600px) {
  .ihc-pr-gallery__thumbs.ihc-pr-gallery__thumbs {
    grid-auto-flow: row;
    grid-auto-columns: auto;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    row-gap: 8px;
  }
  .ihc-pr-gallery__thumbs img { border-radius: 10px; padding: 4px; }
}


/* ===== 205. Szallitasi tablazat mobilon: ferjen ki, ne logjon ki ===== */
@media (max-width: 600px) {
  .ihc-szallitas-tabla { overflow-x: auto; -webkit-overflow-scrolling: touch; padding-inline: 16px; }
  .ihc-szallitas-tabla table { font-size: 13px; }
  .ihc-szallitas-tabla th, .ihc-szallitas-tabla td { padding: 9px 8px; }
}


/* ===== 206. Hero: lagy sotet atmenet balrol, hogy a feher szoveg olvashato legyen ===== */
@media (min-width: 782px) {
  .ihc-hero .wp-block-cover::after {
    background: linear-gradient(100deg, rgba(2,63,85,.62) 0%, rgba(2,63,85,.52) 18%, rgba(2,63,85,.34) 32%, rgba(2,63,85,.14) 44%, rgba(2,63,85,0) 56%);
  }
}


/* ===== 207. Kosar ikon a mobil fejlecben ===== */
.ihc-mkosar { display: none; }
@media (max-width: 999px) {
  .ihc-mkosar {
    display: inline-flex; align-items: center; justify-content: center;
    width: 38px; height: 38px; flex: 0 0 auto;
    margin-inline: 4px 6px;
    border-radius: 50%; color: var(--ihc-deep); text-decoration: none;
    transition: background-color .18s ease;
  }
  .ihc-mkosar:hover, .ihc-mkosar:focus-visible { background: #dbe7e9; }
  .ihc-mkosar .ihc-mikon__jel { position: relative; display: inline-flex; align-items: center; justify-content: center; }
  .ihc-mkosar .ihc-mikon__jel svg { width: 22px; height: 22px; display: block; }
  .ihc-mkosar .ihc-mikon__db {
    position: absolute; top: -4px; right: -7px;
    min-width: 16px; height: 16px; padding: 0 4px;
    border-radius: 9px; background: var(--ihc-accent); color: #fff;
    font-size: 10px; font-weight: 700; line-height: 16px; text-align: center;
  }
}


/* ===== 208. Webshop mobilon: ket termek egy sorban ===== */
@media (max-width: 600px) {
  ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  ul.products li.product { margin: 0 !important; width: auto !important; max-width: none !important; }
  ul.products li.product.ihc-cat-sep { grid-column: 1 / -1; margin-top: 12px !important; }
  ul.products li.product .woocommerce-loop-product__title,
  ul.products li.product h2 { font-size: 14px !important; line-height: 1.25; }
  ul.products li.product .price { font-size: 14px !important; }
  ul.products li.product .button,
  ul.products li.product .added_to_cart { font-size: 12px !important; padding: 9px 12px !important; }
}


/* ===== 209. Rendezes legordulo mobilon: teljes szelessegu, olvashato mezo ===== */
@media (max-width: 600px) {
  .woocommerce-ordering { width: 100% !important; max-width: none !important; margin: 0 0 14px !important; }
  .woocommerce-ordering > svg { display: none !important; }
  .woocommerce-ordering select, .woocommerce-ordering select.orderby {
    width: 100% !important; height: auto !important; min-height: 44px;
    padding: 10px 38px 10px 14px !important;
    border: 1px solid var(--ihc-line) !important; border-radius: 12px !important;
    background-color: #fff !important; color: var(--ihc-ink) !important;
    font-size: 14px !important; line-height: 1.3; text-indent: 0 !important;
    -webkit-appearance: none; appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, var(--ihc-accent) 50%), linear-gradient(135deg, var(--ihc-accent) 50%, transparent 50%) !important;
    background-position: calc(100% - 20px) 50%, calc(100% - 14px) 50% !important;
    background-size: 6px 6px, 6px 6px !important;
    background-repeat: no-repeat !important;
  }
}


/* ===== 210. Kategória csoportcímek: nem kártya, nincs hover ===== */
ul.products li.product.ihc-cat-sep,
ul.products li.product.ihc-cat-sep:hover,
ul.products li.product.ihc-cat-sep:focus-within {
  background: none !important;
  box-shadow: none !important;
  outline: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  transform: none !important;
  padding: 0 !important;
  cursor: default;
}
ul.products li.product.ihc-cat-sep h2 { cursor: default; }


/* ===== 211. Hero gombok mobilon egymás alatt ===== */
@media (max-width: 600px) {
  .ihc-hero .ihc-btns { flex-direction: column; align-items: stretch; gap: 10px; }
  .ihc-hero .ihc-btns .wp-block-button { width: 100%; }
  .ihc-hero .ihc-btns .wp-block-button__link { display: block; width: 100%; text-align: center; }
}


/* ===== 212. Bérbeadás kártya: sötítő réteg a háttérképen ===== */
.ihc-berlet__kartya::before {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background: linear-gradient(100deg, rgba(4,32,43,.88) 0%, rgba(4,32,43,.70) 38%, rgba(4,32,43,.28) 64%, rgba(4,32,43,0) 86%);
}
.ihc-berlet__kartya > * { position: relative; z-index: 1; }
@media (max-width: 860px) {
  .ihc-berlet__kartya::before {
    background: linear-gradient(180deg, rgba(4,32,43,.86) 0%, rgba(4,32,43,.78) 50%, rgba(4,32,43,.72) 100%);
  }
}

/* ===== 213. Termékajánlók mobilon legfeljebb 4 termék ===== */
@media (max-width: 600px) {
  .ihc-ajanlo__racs > *:nth-child(n+5),
  .ihc-nepszeru__racs > *:nth-child(n+5) { display: none !important; }
}


/* ===== 214. Aloldal-racs mobilon egy oszlop (Terapiak, Teruletek) ===== */
@media (max-width: 560px) {
  .ihc-alracs, .ihc-alracs--5, .ihc-alracs--4, .ihc-alracs--3 { grid-template-columns: minmax(0, 1fr) !important; }
}


/* ===== 215. Támogatás-oldalak hero mobilon: szöveg alul, fátyol alulról ===== */
@media (max-width: 781px) {
  .page-id-8238 .ihc-tp-hero.ihc-tp-hero,
  .page-id-8239 .ihc-tp-hero.ihc-tp-hero,
  .page-id-8240 .ihc-tp-hero.ihc-tp-hero,
  .page-id-8241 .ihc-tp-hero.ihc-tp-hero,
  .page-id-8485 .ihc-tp-hero.ihc-tp-hero {
    display: flex; align-items: flex-end;
  }
  .page-id-8238 .ihc-tp-hero::before,
  .page-id-8239 .ihc-tp-hero::before,
  .page-id-8240 .ihc-tp-hero::before,
  .page-id-8241 .ihc-tp-hero::before,
  .page-id-8485 .ihc-tp-hero::before {
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.18) 26%, rgba(255,255,255,.58) 44%, rgba(255,255,255,.86) 62%, rgba(255,255,255,.95) 100%);
  }
  .page-id-8238 .ihc-tp-hero__grid.ihc-tp-hero__grid,
  .page-id-8239 .ihc-tp-hero__grid.ihc-tp-hero__grid,
  .page-id-8240 .ihc-tp-hero__grid.ihc-tp-hero__grid,
  .page-id-8241 .ihc-tp-hero__grid.ihc-tp-hero__grid,
  .page-id-8485 .ihc-tp-hero__grid.ihc-tp-hero__grid {
    padding-top: clamp(120px, 34vw, 220px) !important;
    padding-bottom: clamp(20px, 5vw, 34px) !important;
  }
}

/* ===== 216. Mobil menü: kisebb térközök ===== */
@media (max-width: 999px) {
  .ct-panel nav.mobile-menu a.ct-menu-link,
  #offcanvas nav.mobile-menu a.ct-menu-link {
    min-height: 40px !important; height: auto !important;
    padding-top: 6px !important; padding-bottom: 6px !important;
  }
  .ct-panel nav.mobile-menu .sub-menu a.ct-menu-link,
  #offcanvas nav.mobile-menu .sub-menu a.ct-menu-link {
    min-height: 34px !important; font-size: 14.5px;
    padding-top: 4px !important; padding-bottom: 4px !important;
  }
  .ct-panel nav.mobile-menu li,
  #offcanvas nav.mobile-menu li { margin-block: 0 !important; }
}


/* ===== 217. Legutóbb megnézett termékek: kompakt sáv ===== */
.ihc-utoljara { margin: clamp(30px, 3.4vw, 50px) 0 0; }
.ihc-utoljara__cim { margin: 0 0 clamp(14px, 1.6vw, 20px); font-size: clamp(18px, 1.7vw, 24px); line-height: 1.2; color: var(--ihc-deep); }
.ihc-utoljara ul.products {
  display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(10px, 1.2vw, 16px) !important; margin: 0 !important; padding: 0 !important; list-style: none;
}
.ihc-utoljara ul.products li.product { margin: 0 !important; width: auto !important; max-width: none !important; padding: 12px !important; }
.ihc-utoljara ul.products li.product img {
  max-height: 140px !important; width: auto !important; max-width: 100%; margin-inline: auto; object-fit: contain;
}
.ihc-utoljara ul.products li.product .woocommerce-loop-product__title,
.ihc-utoljara ul.products li.product h2 { font-size: 13.5px !important; line-height: 1.25; margin: 10px 0 4px !important; }
.ihc-utoljara ul.products li.product .price { font-size: 13px !important; margin: 0 0 8px !important; }
.ihc-utoljara ul.products li.product .posted_in,
.ihc-utoljara ul.products li.product .woocommerce-loop-product__categories,
.ihc-utoljara ul.products li.product .ct-product-categories,
.ihc-utoljara ul.products li.product .product-categories,
.ihc-utoljara ul.products li.product .star-rating { display: none !important; }
.ihc-utoljara ul.products li.product .button,
.ihc-utoljara ul.products li.product .added_to_cart { font-size: 11.5px !important; padding: 8px 14px !important; }
@media (max-width: 860px) {
  .ihc-utoljara ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 600px) {
  .ihc-utoljara ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .ihc-utoljara ul.products li.product img { max-height: 110px !important; }
}


/* ===== 218. Mobil menü: kosár és fiók ikon egy sorban ===== */
@media (max-width: 999px) {
  .ct-panel nav.mobile-menu li.ihc-mikon,
  #offcanvas nav.mobile-menu li.ihc-mikon {
    display: inline-block !important; width: auto !important;
    border: 0 !important; margin: 0 !important;
  }
  .ct-panel nav.mobile-menu li.ihc-mikon a.ct-menu-link,
  #offcanvas nav.mobile-menu li.ihc-mikon a.ct-menu-link {
    justify-content: flex-start !important; min-height: 44px !important;
    padding: 8px 18px 8px 0 !important; border: 0 !important;
  }
  .ct-panel nav.mobile-menu li.ihc-mikon .ihc-mikon__jel,
  #offcanvas nav.mobile-menu li.ihc-mikon .ihc-mikon__jel { position: relative; display: inline-flex; }
  .ct-panel nav.mobile-menu li.ihc-mikon .ihc-mikon__db,
  #offcanvas nav.mobile-menu li.ihc-mikon .ihc-mikon__db {
    position: absolute; top: -5px; right: -8px; min-width: 16px; height: 16px; padding: 0 4px;
    border-radius: 9px; background: var(--ihc-accent); color: #fff;
    font-size: 10px; font-weight: 700; line-height: 16px; text-align: center;
  }
}


/* ===== 219. Mobil menü: a "Próbáld ki nálunk!" menüpont rejtve (a gomb marad) ===== */
.ct-panel nav.mobile-menu li#menu-item-8100,
#offcanvas nav.mobile-menu li#menu-item-8100 { display: none !important; }


/* ===== 220. Pénztár: egységes mezők és letisztult elrendezés ===== */
.woocommerce-checkout .ihc-woo-cim { margin-bottom: clamp(16px, 2vw, 26px); }
.woocommerce-checkout h3, .woocommerce-checkout #order_review_heading {
  font-size: clamp(17px, 1.6vw, 21px); line-height: 1.25; color: var(--ihc-deep); margin: 0 0 14px;
}
.woocommerce-checkout .woocommerce-input-wrapper { display: block; width: 100%; }
.woocommerce-checkout .form-row { margin: 0 0 14px; }
.woocommerce-checkout .form-row label { display: block; margin: 0 0 6px; font-size: 13.5px; font-weight: 600; color: var(--ihc-ink); }
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row .select2-selection,
.woocommerce-checkout .form-row select {
  width: 100%; min-height: 46px; padding: 11px 14px;
  border: 1px solid var(--ihc-line); border-radius: 12px; background: #fff;
  font-size: 15px; color: var(--ihc-ink); box-shadow: none;
}
.woocommerce-checkout .form-row textarea { min-height: 110px; line-height: 1.5; }
.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout .form-row select:focus {
  outline: 0; border-color: var(--ihc-accent); box-shadow: 0 0 0 3px rgba(7,128,143,.14);
}
.woocommerce-checkout #order_review {
  background: var(--ihc-surface); border: 1px solid var(--ihc-line);
  border-radius: var(--ihc-radius); padding: clamp(18px, 2vw, 28px);
}
.woocommerce-checkout #order_review table.shop_table { border: 0; margin: 0 0 12px; }
.woocommerce-checkout #order_review table.shop_table th,
.woocommerce-checkout #order_review table.shop_table td { border: 0; border-bottom: 1px solid var(--ihc-line); padding: 10px 0; font-size: 14.5px; }
.woocommerce-checkout #order_review table.shop_table tr.order-total th,
.woocommerce-checkout #order_review table.shop_table tr.order-total td { border-bottom: 0; font-size: 16px; }
.woocommerce-checkout #place_order {
  width: 100%; min-height: 52px; border-radius: 999px;
  background: linear-gradient(160deg, #023F55 0%, #065E6B 100%); color: #fff;
  font-size: 15px; font-weight: 700; letter-spacing: .04em;
}
.woocommerce-checkout #place_order:hover { filter: brightness(1.08); }
.woocommerce-checkout .woocommerce-privacy-policy-text p { font-size: 13px; line-height: 1.55; color: var(--ihc-muted); }
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper { margin: 14px 0 18px; }
.woocommerce-checkout .ihc-zaro { padding-block: clamp(30px, 3.6vw, 52px) clamp(34px, 4vw, 64px); }
@media (max-width: 782px) {
  .woocommerce-checkout #order_review { margin-top: 20px; }
}


/* ===== 221. Termékoldali háttérképes sávok mobilon: fókusz a kép jobb oldalán ===== */
@media (max-width: 782px) {
  .ihc-pr-band.ihc-pr-band,
  .ihc-pr-band .wp-block-cover,
  .ihc-tp-renew.ihc-tp-renew,
  .ihc-tp-renew .wp-block-cover { background-position: 72% center !important; }
  .ihc-pr-band .wp-block-cover__image-background,
  .ihc-tp-renew .wp-block-cover__image-background { object-position: 72% center !important; }
}


/* ===== 222. Shop és kategória hero mobilon: fókusz a kép jobb oldalán ===== */
@media (max-width: 782px) {
  .ihc-cat-hero.ihc-cat-hero,
  .ihc-cat-hero.ihc-tp-hero,
  .ihc-shop-hero.ihc-shop-hero { background-position: right center !important; }
  .ihc-cat-hero .wp-block-cover__image-background,
  .ihc-cat-hero .ihc-tp-hero__mobile-img img,
  .ihc-shop-hero .wp-block-cover__image-background { object-position: right center !important; }
}


/* ===== 223. Kategória hero mobilon: sötítő réteg a fehér szöveg alatt ===== */
@media (max-width: 782px) {
  .ihc-cat-hero.ihc-tp-hero::before {
    content: "" !important;
    background: linear-gradient(180deg, rgba(2,63,85,.52) 0%, rgba(2,63,85,.66) 45%, rgba(2,63,85,.80) 100%) !important;
  }
}


/* ===== 224. Mobil fejléc: a logó függőlegesen középre, egy vonalba az ikonokkal ===== */
@media (max-width: 999px) {
  .site-logo-container { display: flex !important; align-items: center !important; height: 100%; }
  .site-logo-container img, header .default-logo { display: block !important; }
}

/* ===== 225. Hero 1. slide: ugyanaz a tipografia, mint a tobbi slide-on ===== */
.ihc-hero .ihc-hero__inner > h1 + p { line-height: 1.29; }
.ihc-hero__inner.ihc-hero__inner > h1 + p + p {
  font-size: clamp(15px, 1.15vw, 17px) !important;
  line-height: 1.6;
}
@media (max-width: 900px) {
  .ihc-hero__inner.ihc-hero__inner > h1 + p + p { font-size: 14px !important; line-height: 1.5; }
}

/* ===== 226. Mobil menu almenu: kisebb ikonkor, az ikonok ne erjenek ossze ===== */
@media (max-width: 999px) {
  #offcanvas .mobile-menu .sub-menu li > a { min-height: 38px; padding-left: 42px; }
  #offcanvas .mobile-menu .sub-menu li > a::before {
    width: 28px; height: 28px; background-size: 17px 17px; left: 7px;
  }
}

/* ===== 227. Mobil fejlec: feleakkora terkoz a zaszlo es a kosar kozott ===== */
@media (max-width: 999px) {
  .ct-header .ihc-langswitch.ihc-langswitch { margin-right: 4px !important; }
  .ct-header .ihc-mkosar.ihc-mkosar { margin-left: 3px !important; }
}

/* ===== 228. Hero: Center-stilus - feher fatyol a kepen, sotet cim, turkiz alcim, turkiz gombok (a 197/199/200/201/206 szakaszt irja felul) ===== */
.ihc-hero .wp-block-cover::after {
  background: linear-gradient(74deg, rgba(255,255,255,.85) 0%, rgba(255,255,255,.68) 20%, rgba(255,255,255,.38) 35%, rgba(255,255,255,0) 50%);
}
@media (max-width: 781px) {
  .ihc-hero .wp-block-cover::after {
    background: linear-gradient(180deg, rgba(255,255,255,0) 40%, rgba(255,255,255,.26) 52%, rgba(255,255,255,.60) 66%, rgba(255,255,255,.86) 80%, rgba(255,255,255,.96) 100%);
  }
}
.ihc-hero .ihc-hero__inner .ihc-hero__cim,
.ihc-hero .ihc-hero__inner h1,
.ihc-hero .ihc-hero__inner h2 { color: var(--ihc-ink); }
.ihc-hero .ihc-hero__inner > h1 + p,
.ihc-hero .ihc-hero__inner > h2 + p,
.ihc-hero .ihc-hero__inner .ihc-hero__sub { color: var(--ihc-accent); }
.ihc-hero .ihc-hero__inner > h1 + p + p,
.ihc-hero .ihc-hero__inner > h2 + p + p,
.ihc-hero .ihc-hero__inner > .ihc-hero__sub + p { color: var(--ihc-muted); }
.ihc-hero .ihc-hero__usp li { color: var(--ihc-ink); }
.ihc-hero .ihc-hero__usp svg { color: var(--ihc-accent); }
.ihc-hero .ihc-hero__inner .wp-block-button__link {
  background: var(--ihc-accent); color: #fff; border-color: var(--ihc-accent); box-shadow: none;
}
.ihc-hero .ihc-hero__inner .wp-block-button__link:hover {
  background: var(--ihc-deep); color: #fff; border-color: var(--ihc-deep);
}
.ihc-hero .ihc-hero__inner .ihc-btn--ghost .wp-block-button__link {
  background: transparent; color: var(--ihc-accent); box-shadow: inset 0 0 0 1px var(--ihc-accent);
}
.ihc-hero .ihc-hero__inner .ihc-btn--ghost .wp-block-button__link:hover {
  background: transparent; color: var(--ihc-deep); box-shadow: inset 0 0 0 1px var(--ihc-deep), 0 10px 24px rgba(2,63,85,.22);
}

/* ===== 229. Hub oldalak (Terapiak, Hatekonysag, Teruletek): a fo cimsor h1 lett, a h2 megjelenessel ===== */
body.page-id-8920 .ihc-alcs h1.wp-block-heading,
body.page-id-8921 .ihc-alcs h1.wp-block-heading,
body.page-id-8922 .ihc-alcs h1.wp-block-heading { font-weight: 700; letter-spacing: -0.015em; line-height: 1.15; margin-top: 0; }
@media (max-width: 1023px) { body.page-id-8920 .ihc-alcs h1.wp-block-heading, body.page-id-8921 .ihc-alcs h1.wp-block-heading, body.page-id-8922 .ihc-alcs h1.wp-block-heading { font-size: 34px !important; } }
@media (max-width: 600px) { body.page-id-8920 .ihc-alcs h1.wp-block-heading, body.page-id-8921 .ihc-alcs h1.wp-block-heading, body.page-id-8922 .ihc-alcs h1.wp-block-heading { font-size: 28px !important; } }
