/* =====================================================================
   macOS Tahoe-style modern overlay
   Zaoblenie rohov + jemné vrstvené tiene + frosted-glass + plynulé prechody
   Aplikuje sa NAD šablónový style.css ako override
   ===================================================================== */

/* === Globálne tokeny === */
:root {
  --mac-radius-sm:  10px;
  --mac-radius-md:  16px;
  --mac-radius-lg:  22px;
  --mac-radius-xl:  28px;
  --mac-radius-pill: 999px;

  --mac-shadow-1: 0 1px 2px rgba(0,0,0,0.04), 0 2px 6px rgba(0,0,0,0.04);
  --mac-shadow-2: 0 1px 2px rgba(0,0,0,0.05), 0 4px 12px rgba(0,0,0,0.06), 0 16px 32px rgba(0,0,0,0.04);
  --mac-shadow-3: 0 1px 3px rgba(0,0,0,0.06), 0 8px 20px rgba(0,0,0,0.08), 0 28px 56px rgba(0,0,0,0.06);
  --mac-shadow-glow: 0 0 0 4px rgba(3, 146, 206, 0.15);

  --mac-ease: cubic-bezier(.2, .9, .3, 1.05);
}

/* === Body — soft background + smooth transitions === */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

* {
  /* Iba pre interaktívne prvky aplikujeme transition */
  transition-timing-function: var(--mac-ease);
}

/* === IMG — VŠETKY obrázky: 4 zaoblené rohy + macOS window-shadow === */
img {
  border-radius: var(--mac-radius-lg) !important;
  box-shadow:
    0 1px 2px rgba(0, 0, 0, 0.06),
    0 8px 24px rgba(0, 0, 0, 0.10),
    0 32px 64px rgba(0, 0, 0, 0.18) !important;
  transition: transform 0.4s var(--mac-ease), box-shadow 0.4s var(--mac-ease);
}
img:hover {
  transform: translateY(-3px);
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.08),
    0 12px 32px rgba(0, 0, 0, 0.14),
    0 40px 80px rgba(0, 0, 0, 0.22) !important;
}

/* Kontajnery, ktoré normálne orezávajú obrázok — uvoľníme overflow + zrušíme vlastný radius/tieň,
   aby každý obrázok ukázal svoje 4 zaoblené rohy a vlastný macOS-window tieň */
.img-holder,
.single-team-member .img-holder,
.single-project-item .img-holder,
.single-blog-default-item .img-holder,
.single-popular-post .img-holder {
  overflow: visible !important;
  background: transparent !important;
}

/* Karty s obrázkom navrchu — odstránime radius hornej hrany, lebo radius má teraz img */
.single-team-member,
.single-project-item,
.single-blog-default-item {
  border-radius: var(--mac-radius-lg) !important;
}
.single-team-member .img-holder,
.single-project-item .img-holder,
.single-blog-default-item .img-holder {
  border-radius: 0 !important;
  margin-bottom: 8px;
}

/* Overlay vrstvy nad obrázkom — kopírujú radius obrázka */
.single-team-member .img-holder .overlay,
.single-project-item .img-holder .overlay,
.single-blog-default-item .img-holder .overlay,
.img-holder .overlay {
  border-radius: var(--mac-radius-lg) !important;
  overflow: hidden;
}

/* Hover na karte — len pohyb karty, nie zase trans na samotnom img (zabránime double-shake) */
.single-team-member:hover .img-holder img,
.single-project-item:hover .img-holder img,
.single-blog-default-item:hover .img-holder img {
  transform: scale(1.04);
}

/* Avatar v testimoniáloch — kruh, prepíše predvolený radius */
.testimonial-area .single-item .img-holder img {
  border-radius: 50% !important;
  box-shadow:
    0 4px 12px rgba(0, 0, 0, 0.16),
    0 12px 28px rgba(0, 0, 0, 0.18),
    0 24px 48px rgba(0, 0, 0, 0.12) !important;
  border: 4px solid rgba(255, 255, 255, 0.95);
}

/* Logo + favicon + map-marker — drobné identifikátory bez veľkého tieňa */
.logo img,
img[src*="favicon"],
img[src*="map-marker"] {
  border-radius: var(--mac-radius-sm) !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important;
  transform: none !important;
}
.logo img:hover { transform: none !important; }

/* Background obrázky cez <img> v hero slider — Revolution Slider má img ako background.
   Pre tento konkrétny prípad (full-bleed) zachováme radius (vyzerá ako veľké macOS okno)
   ale obmedzíme tieň, aby nezasahoval do ďalšej sekcie */
.rev_slider img,
.tp-bgimg {
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* === KARTY (cards) — výrazné zaoblenie + vrstvený tieň === */
.single-team-member,
.single-project-item,
.single-blog-default-item,
.single-info-box,
.medical-departments-area .single-item,
.special-features-area .single-item,
.fact-counter-area .single-item,
.contact-form,
.contact-info,
.welcome-content,
.sidebar-area .single-sidebar,
.tab-box,
.callto-action-area .inner-content,
.testimonial-area .single-item .text-holder {
  border-radius: var(--mac-radius-lg) !important;
  box-shadow: var(--mac-shadow-2);
  background: #ffffff;
  transition: transform 0.35s var(--mac-ease), box-shadow 0.35s var(--mac-ease);
  border: 1px solid rgba(0,0,0,0.04);
}
.single-team-member:hover,
.single-project-item:hover,
.single-blog-default-item:hover,
.medical-departments-area .single-item:hover,
.special-features-area .single-item:hover,
.fact-counter-area .single-item:hover {
  transform: translateY(-6px);
  box-shadow: var(--mac-shadow-3);
}

/* Karty s obrázkom navrchu — orežeme img korunku */
.single-team-member .img-holder,
.single-project-item .img-holder,
.single-blog-default-item .img-holder {
  border-radius: var(--mac-radius-lg) var(--mac-radius-lg) 0 0;
  overflow: hidden;
}
.single-team-member .img-holder img,
.single-project-item .img-holder img,
.single-blog-default-item .img-holder img {
  border-radius: 0;
  transition: transform 0.6s var(--mac-ease);
}
.single-team-member:hover .img-holder img,
.single-project-item:hover .img-holder img,
.single-blog-default-item:hover .img-holder img {
  transform: scale(1.05);
}

/* === TLAČIDLÁ — pill shape + soft elevation === */
.thm-btn,
.btn-style-two,
.consultation-button a,
button[type="submit"],
.post-pagination ul li a,
.tp-caption .button a,
.readmore,
.news-link {
  border-radius: var(--mac-radius-pill) !important;
  box-shadow: 0 4px 14px rgba(3, 146, 206, 0.22), 0 1px 3px rgba(0,0,0,0.06);
  transition: transform 0.2s var(--mac-ease), box-shadow 0.2s var(--mac-ease) !important;
  border: none !important;
  white-space: nowrap !important;
  width: auto !important;
  max-width: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
/* Service area / welcome thm-btn — tmavšia modrá */
.service-area .thm-btn,
.welcome-area .thm-btn,
.welcome-content .thm-btn,
.text-box .thm-btn {
  background: linear-gradient(135deg, #0277a8, #024e6b) !important;
  color: #ffffff !important;
  padding: 14px 32px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  display: inline-flex !important;
  text-decoration: none !important;
}
.service-area .thm-btn:hover,
.welcome-area .thm-btn:hover {
  background: linear-gradient(135deg, #024e6b, #013a52) !important;
  color: #ffffff !important;
}
.thm-btn:hover,
.btn-style-two:hover,
.consultation-button a:hover,
button[type="submit"]:hover,
.tp-caption .button a:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(3, 146, 206, 0.32), 0 2px 6px rgba(0,0,0,0.08);
}

/* === TLAČIDLÁ MALÉ (pagination, social, ikony) === */
.search-button button,
.toggle-search button,
.cart_select button,
.scroll-to-top {
  border-radius: var(--mac-radius-md) !important;
  box-shadow: var(--mac-shadow-1);
}
.scroll-to-top {
  border-radius: 50% !important;
  width: 48px; height: 48px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.18), 0 2px 4px rgba(0,0,0,0.08);
}

/* === FORMULÁRE — macOS rounded inputy === */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="search"],
input[type="password"],
input[type="number"],
textarea,
select,
.input-box input,
.input-box textarea {
  border-radius: var(--mac-radius-sm) !important;
  border: 1.5px solid rgba(0,0,0,0.08) !important;
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.04);
  transition: border-color 0.2s var(--mac-ease), box-shadow 0.2s var(--mac-ease);
  background: #ffffff !important;
}
input:focus,
textarea:focus,
select:focus,
.input-box input:focus,
.input-box textarea:focus {
  border-color: #0392ce !important;
  box-shadow: var(--mac-shadow-glow), inset 0 1px 2px rgba(0,0,0,0.02) !important;
  outline: none !important;
}

/* Search button v inpute — pill */
.search-form .search button {
  border-radius: var(--mac-radius-pill) !important;
}

/* === HEADER — frosted glass === */
.mainmenu-area.stricky-fixed,
.mainmenu-area.stricky.stuck {
  backdrop-filter: blur(20px) saturate(1.4);
  -webkit-backdrop-filter: blur(20px) saturate(1.4);
  background: rgba(255, 255, 255, 0.85) !important;
  box-shadow: 0 1px 0 rgba(0,0,0,0.06), 0 8px 24px rgba(0,0,0,0.05);
}

/* Hlavná nav položka — pill na hover */
.main-menu .navigation > li > a {
  border-radius: var(--mac-radius-pill);
  transition: background 0.2s var(--mac-ease), color 0.2s var(--mac-ease);
}
.main-menu .navigation > li.current > a,
.main-menu .navigation > li:hover > a {
  background: rgba(3, 146, 206, 0.10);
  color: #0392ce;
}

/* Dropdown menu — zaoblený + tieň */
.main-menu .navigation > li > ul {
  border-radius: var(--mac-radius-md);
  box-shadow: var(--mac-shadow-3);
  overflow: hidden;
  border: 1px solid rgba(0,0,0,0.04);
  background: rgba(255,255,255,0.96);
  backdrop-filter: blur(16px);
}

/* === BREADCRUMB — zaoblený dolný okraj === */
.breadcrumb-area {
  border-radius: 0 0 var(--mac-radius-xl) var(--mac-radius-xl);
  overflow: hidden;
}

/* === FOOTER — zaoblený horný okraj === */
.footer-area {
  border-radius: var(--mac-radius-xl) var(--mac-radius-xl) 0 0;
  margin-top: 0;
  position: relative;
  overflow: hidden;
}

/* === ACCORDION — zaoblené blocky === */
.accordion-block {
  border-radius: var(--mac-radius-md) !important;
  overflow: hidden;
  margin-bottom: 14px;
  box-shadow: var(--mac-shadow-1);
  border: 1px solid rgba(0,0,0,0.05);
  background: white;
  transition: box-shadow 0.25s var(--mac-ease), transform 0.25s var(--mac-ease);
}
.accordion-block:hover { box-shadow: var(--mac-shadow-2); }
.accordion-block .acc-btn { padding: 18px 22px; }
.accordion-block .acc-btn .icon-outer {
  border-radius: 50% !important;
  width: 32px; height: 32px;
  box-shadow: var(--mac-shadow-1);
}

/* === SEC-TITLE — jemný akcent === */
.sec-title h1 { letter-spacing: -0.02em; }
.sec-title .border {
  border-radius: var(--mac-radius-pill);
  height: 4px;
}

/* === STATS / FACT counter — okrúhle ikony === */
.fact-counter-area .single-item .icon-box,
.welcome-info li .icon-box,
.special-features-area .single-item .iocn-holder,
.medical-departments-area .single-item .iocn-holder,
.single-info-box .iocn-holder {
  border-radius: var(--mac-radius-md) !important;
  box-shadow: var(--mac-shadow-1);
  transition: transform 0.3s var(--mac-ease), box-shadow 0.3s var(--mac-ease);
}
.single-info-box:hover .iocn-holder,
.medical-departments-area .single-item:hover .iocn-holder {
  transform: scale(1.06);
  box-shadow: var(--mac-shadow-2);
}

/* === GALÉRIA / project items === */
.single-project-item .img-holder { border-radius: var(--mac-radius-lg); overflow: hidden; }
.single-project-item .img-holder .overlay { border-radius: var(--mac-radius-lg); }

/* === TESTIMONIAL avatar — kruh === */
.testimonial-area .single-item .img-holder img {
  border-radius: 50% !important;
  box-shadow: 0 8px 20px rgba(0,0,0,0.18), 0 2px 4px rgba(0,0,0,0.10);
  border: 4px solid rgba(255,255,255,0.95);
}

/* === KONTAKT info boxy — soft glass === */
.contact-info .single-info-box {
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(0,0,0,0.05);
}

/* === SIDEBAR widget === */
.sidebar-area .single-sidebar {
  padding: 26px 24px;
  background: white;
  border: 1px solid rgba(0,0,0,0.05);
}
.sidebar-area .sidebar-search-form input { border-radius: var(--mac-radius-pill) !important; }
.sidebar-area .sidebar-search-form button {
  border-radius: var(--mac-radius-pill) !important;
}
.tag-list li a {
  border-radius: var(--mac-radius-pill) !important;
  padding: 6px 14px;
  background: rgba(3,146,206,0.06);
  border: 1px solid rgba(3,146,206,0.15);
  color: #0392ce;
  transition: all 0.2s var(--mac-ease);
}
.tag-list li a:hover {
  background: #0392ce;
  color: white;
  transform: translateY(-1px);
  box-shadow: 0 4px 10px rgba(3,146,206,0.30);
}

/* === BLOG paginácia === */
.post-pagination ul li a {
  border-radius: 50% !important;
  width: 42px; height: 42px;
  display: inline-flex !important;
  align-items: center; justify-content: center;
  margin: 0 4px;
  box-shadow: var(--mac-shadow-1);
}
.post-pagination ul li.active a {
  background: linear-gradient(135deg, #43c3ea, #0392ce);
  color: white;
  box-shadow: 0 4px 12px rgba(3,146,206,0.35);
}

/* === BANNER / call-to-action === */
.callto-action-area .inner-content {
  border-radius: var(--mac-radius-xl) !important;
  box-shadow: var(--mac-shadow-3);
  background: linear-gradient(135deg, #ffffff 0%, #f7fbfd 100%);
  overflow: hidden !important;
}
/* CTA submit button — pill šírka ako "Príbehy darcov" */
.callto-action-area button[type="submit"],
.callto-action-area .thm-btn.bgclr-1 {
  min-width: 170px !important;
  width: auto !important;
  height: 56px !important;
  align-self: center !important;
  flex-shrink: 0 !important;
  padding: 14px 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  border-radius: 999px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}
.callto-action-area .form-holder {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}
.callto-action-area .form-holder form {
  display: flex !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  gap: 12px !important;
}
.callto-action-area .form-holder .single-box {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}
.callto-action-area .inner-content .title-box {
  border-radius: var(--mac-radius-xl) 0 0 var(--mac-radius-xl) !important;
  overflow: hidden !important;
}
.callto-action-area .title-box h2,
.callto-action-area .title-box span,
.callto-action-area .title-box .flaticon-calendar {
  color: #024e6b !important;
  background: none !important;
  -webkit-text-fill-color: #024e6b !important;
  text-shadow: none !important;
}
.callto-action-area .inner-content .form-holder {
  border-radius: 0 var(--mac-radius-xl) var(--mac-radius-xl) 0 !important;
  overflow: hidden !important;
}
@media (max-width: 768px) {
  .callto-action-area .inner-content .title-box,
  .callto-action-area .inner-content .form-holder {
    border-radius: var(--mac-radius-xl) !important;
  }
}

/* === SLOGAN box === */
.slogan-area {
  border-radius: var(--mac-radius-lg);
  overflow: hidden;
  margin: 0 24px;
  box-shadow: var(--mac-shadow-2);
}

/* === Hero slider buttons (Revolution) — 1. biely (tmavý text), 2. modrý (biely text) === */
/* Prvé tlačidlo (.thm-btn) — biele pozadie + tmavé pismo */
.tp-caption .button a.thm-btn,
.slide-content-box .button a.thm-btn {
  border-radius: var(--mac-radius-pill) !important;
  padding: 14px 32px !important;
  box-shadow: 0 8px 20px rgba(0,0,0,0.25) !important;
  font-weight: 700 !important;
  color: #1a2332 !important;
  background: #ffffff !important;
  text-shadow: none !important;
}
.tp-caption .button a.thm-btn:hover,
.slide-content-box .button a.thm-btn:hover {
  background: #f0f9ff !important;
  color: #0277a8 !important;
}
/* Druhé tlačidlo (.btn-style-two) — modré pozadie + biely text */
.tp-caption .button a.btn-style-two,
.slide-content-box .button a.btn-style-two {
  border-radius: var(--mac-radius-pill) !important;
  padding: 14px 32px !important;
  box-shadow: 0 8px 20px rgba(3,146,206,0.45) !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  background: linear-gradient(135deg, #43c3ea, #0392ce) !important;
  text-shadow: 0 1px 2px rgba(0,0,0,0.20) !important;
}
.tp-caption .button a.btn-style-two:hover,
.slide-content-box .button a.btn-style-two:hover {
  background: linear-gradient(135deg, #0392ce, #0277a8) !important;
  color: #ffffff !important;
}

/* === Modal/dropdown polished === */
.dropdown-menu, .selectmenu, .ui-widget-content {
  border-radius: var(--mac-radius-md) !important;
  box-shadow: var(--mac-shadow-3) !important;
  border: 1px solid rgba(0,0,0,0.05) !important;
  overflow: hidden;
}

/* === Smooth scrollbars (WebKit) === */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,0.18);
  border-radius: var(--mac-radius-pill);
  border: 2px solid transparent;
  background-clip: padding-box;
}
::-webkit-scrollbar-thumb:hover { background: rgba(0,0,0,0.32); background-clip: padding-box; border: 2px solid transparent; }

/* === Selectmenu (Bootstrap selectpicker) === */
.bootstrap-select .btn,
.selectmenu {
  border-radius: var(--mac-radius-sm) !important;
  border: 1.5px solid rgba(0,0,0,0.08) !important;
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.03);
}

/* === Social ikony — kruhové === */
.social-links li a,
.footer-social-links li a,
.single-team-member .overlay .social li a {
  border-radius: 50% !important;
  width: 36px; height: 36px;
  display: inline-flex !important;
  align-items: center; justify-content: center;
  transition: all 0.25s var(--mac-ease);
}
.social-links li a:hover,
.footer-social-links li a:hover {
  transform: translateY(-2px) scale(1.1);
  box-shadow: 0 6px 14px rgba(3,146,206,0.32);
}

/* === Decentne zaoblený sticky search dropdown === */
.header-search { border-radius: 0 0 var(--mac-radius-md) var(--mac-radius-md); overflow: hidden; }

/* === Plynulé prechody na všetkých interaktívnych prvkoch === */
a, button { transition: color 0.2s var(--mac-ease), background-color 0.2s var(--mac-ease); }

/* =====================================================================
   TEXT OVERFLOW PROTECTION — žiaden text nesmie pretekať mimo sekcie
   ===================================================================== */

/* Globálne — text musí byť zalomiteľný a nikdy nepresahovať */
body, body * {
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
}

/* Block-level kontajnery majú max-width:100% a nikdy neexpandujú nad rodiča */
section, article, header, footer, aside, nav, main,
.container, .container-fluid, .row, [class*="col-"],
.single-item, .single-team-member, .single-project-item,
.single-blog-default-item, .single-info-box, .single-footer-widget,
.text-holder, .text-box, .welcome-content, .contact-form, .contact-info,
.tab-pane, .accordion, .accordion-block, .acc-content,
.our-info, .single-popular-post {
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

/* Nadpisy (h1-h6) — nezalomiteľné slová sa zalomia ak treba */
h1, h2, h3, h4, h5, h6 {
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
  max-width: 100%;
}

/* Paragrafy a inline text */
p, span, a, li, td, th, label, blockquote, cite, em, strong {
  max-width: 100%;
}

/* Karty a panely majú vnútorné spacing aby text nemal dotyk s okrajom */
.single-team-member,
.single-project-item,
.single-blog-default-item,
.single-info-box,
.medical-departments-area .single-item,
.special-features-area .single-item {
  overflow: hidden;
}
.single-team-member .text-holder,
.single-project-item .text-holder,
.single-blog-default-item .text-holder,
.medical-departments-area .single-item .text-holder {
  padding: 18px 22px !important;
  word-wrap: break-word;
}

/* Hero slider — nadpisy nesmú pretekať mimo slide */
.tp-caption, .tp-caption *, .slide-content-box, .slide-content-box * {
  max-width: 90vw !important;
  word-wrap: break-word !important;
  overflow-wrap: break-word !important;
}
.slide-content-box h1 {
  max-width: 700px !important;
  line-height: 1.1;
}
.slide-content-box p {
  max-width: 600px !important;
}

/* Sec-title — text vystreduje sa, neexpanduje nad container */
.sec-title h1, .sec-title h2 {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

/* Citáty/testimoniály — long text sa správne zalomí */
.testimonial-area .text-holder p,
.single-item p,
blockquote p {
  word-wrap: break-word;
  overflow-wrap: break-word;
  hyphens: auto;
  max-width: 100%;
}

/* Footer widgets */
.single-footer-widget {
  overflow: hidden;
}
.single-footer-widget p,
.single-footer-widget li,
.single-footer-widget h5,
.our-info p {
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* Navigation linky — nezalomené nikdy (jeden riadok) */
.main-menu .navigation > li > a,
.main-menu .navigation > li > ul > li > a {
  word-wrap: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

/* Tabuľky responzívne, prevent overflow */
table {
  max-width: 100%;
  word-wrap: break-word;
}
td, th {
  word-wrap: break-word;
  overflow-wrap: break-word;
  hyphens: auto;
}

/* Kontaktné info boxy */
.contact-info-item .text-holder p,
.single-info-box .text-holder p,
.footer-contact-info li .text-holder h5 {
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* E-mail / dlhé URL adresy */
a[href^="mailto:"], a[href^="http"], .footer-contact-info a {
  word-break: break-all;
}

/* Badge / chip texty (kvapka chips) */
.kvapka-chip, .kvapka-bublina {
  word-wrap: break-word !important;
  overflow-wrap: break-word !important;
  hyphens: auto !important;
}

/* Bublinky a floating prvky */
.tp-caption .button, .button {
  flex-wrap: wrap;
}

/* Pretekajúce flex itemy */
.row, .flex {
  min-width: 0;
}
.row > [class*="col-"] {
  min-width: 0;
}

/* Top-bar text */
.top-bar-area p {
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* Header info text */
.header-area .header-right li .text-holder h4,
.header-area .header-right li .text-holder span {
  word-wrap: break-word;
  overflow-wrap: break-word;
  white-space: normal;
}

/* Newsletter a formuláre */
input, textarea, select {
  max-width: 100%;
}

/* Card image overlays (project, blog) — nepresiahnuť rodiča */
.img-holder, .overlay {
  max-width: 100%;
  overflow: visible;
}

/* Sub-page header / breadcrumb */
.breadcrumb-area .title h1,
.breadcrumb-area p {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  word-wrap: break-word;
}

/* === Tlačidlo "Stať sa darcom" — globálne fixed v pravom hornom rohu viewportu (všetky šírky) === */
.mainmenu-area .mainmenu-right-box.pull-right,
body .mainmenu-right-box.pull-right,
body .consultation-button {
  position: fixed !important;
  top: 95px !important;
  right: 80px !important;
  bottom: auto !important;
  left: auto !important;
  height: auto !important;
  width: auto !important;
  transform: none !important;
  display: flex !important;
  align-items: center !important;
  z-index: 99997 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}
body .consultation-button a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 11px 24px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #43c3ea, #0392ce) !important;
  color: white !important;
  text-decoration: none !important;
  box-shadow: 0 8px 24px rgba(3, 146, 206, 0.45), 0 2px 6px rgba(0,0,0,0.12) !important;
  white-space: nowrap !important;
}
body .consultation-button a:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 32px rgba(3, 146, 206, 0.55), 0 4px 10px rgba(0,0,0,0.15) !important;
}

/* === DROPDOWN SUBMENU — vždy viditeľné, biele s tmavým písmom (mimo media query) === */
.main-menu .navigation > li > ul,
.mainmenu-area .navigation > li > ul {
  background: #ffffff !important;
  background-color: #ffffff !important;
  padding: 8px 0 !important;
  width: 250px !important;
  box-shadow: 0 12px 32px rgba(0,0,0,0.18), 0 1px 3px rgba(0,0,0,0.06) !important;
  border-radius: 16px !important;
  border: 1px solid rgba(0,0,0,0.06) !important;
  margin-top: 6px !important;
  list-style: none !important;
}
.main-menu .navigation > li > ul > li,
.mainmenu-area .navigation > li > ul > li {
  border-bottom: 1px solid rgba(0,0,0,0.04) !important;
  background: transparent !important;
  display: block !important;
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.main-menu .navigation > li > ul > li:last-child,
.mainmenu-area .navigation > li > ul > li:last-child {
  border-bottom: none !important;
}
.main-menu .navigation > li > ul > li > a,
.mainmenu-area .navigation > li > ul > li > a {
  color: #222222 !important;
  background: transparent !important;
  background-color: transparent !important;
  padding: 12px 22px !important;
  display: block !important;
  width: 100% !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  font-family: 'Poppins', sans-serif !important;
  line-height: 1.4 !important;
  text-align: left !important;
  text-decoration: none !important;
  text-indent: 0 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  border-radius: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  text-shadow: none !important;
}
.main-menu .navigation > li > ul > li:hover > a,
.mainmenu-area .navigation > li > ul > li:hover > a,
.main-menu .navigation > li > ul > li > a:hover,
.mainmenu-area .navigation > li > ul > li > a:hover {
  background: rgba(3, 146, 206, 0.10) !important;
  color: #0392ce !important;
  padding-left: 26px !important;
}

/* === Hlavné menu — vertikálne zarovnanie tlačidla "Stať sa darcom" s nav položkami === */
@media (min-width: 992px) {
  .mainmenu-area .container > .row {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
  }
  .mainmenu-area .container > .row > .col-lg-12 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    padding: 0 15px !important;
  }
  /* Vypneme staré float-y, použijeme flex */
  .mainmenu-area .main-menu.pull-left,
  .mainmenu-area .mainmenu-right-box.pull-right,
  .mainmenu-area .navbar-collapse {
    float: none !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 !important;
  }
  .mainmenu-area .navigation {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }
  .mainmenu-area .navigation > li {
    display: flex !important;
    align-items: center !important;
    float: none !important;
    height: auto !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
  }
  .mainmenu-area .navigation > li > a {
    display: flex !important;
    align-items: center !important;
    line-height: 1.2 !important;
    padding: 14px 14px !important;
    font-size: 14px !important;
    white-space: nowrap !important;
  }
  /* Menu sekcia samotná tiež nowrap + flex grow, aby zaplnila šírku */
  .mainmenu-area .main-menu.pull-left {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }
  .mainmenu-area .navbar-collapse,
  .mainmenu-area .navigation {
    flex-wrap: nowrap !important;
    width: auto !important;
  }
  .mainmenu-area .mainmenu-right-box.pull-right {
    flex-shrink: 0 !important;
  }
  /* Logo/header info tiež jeden riadok */
  .header-area .header-right ul {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
  }
}

/* Pre stredné šírky (992-1199) stiahneme padding ešte viac aby sa všetko zmestilo */
@media (min-width: 992px) and (max-width: 1199px) {
  .mainmenu-area .navigation > li > a {
    padding: 14px 9px !important;
    font-size: 13px !important;
  }
  .mainmenu-area .consultation-button a {
    padding: 10px 18px !important;
    font-size: 13px !important;
  }
  /* === Dropdown submenu (Info, Chcem byť darcom, Aktuálne, Galéria) === */
  .mainmenu-area,
  .mainmenu-area .container,
  .mainmenu-area .row,
  .mainmenu-area .col-lg-12,
  .mainmenu-area .navigation,
  .mainmenu-area .navbar-collapse,
  .mainmenu-area .main-menu {
    overflow: visible !important;
  }
  .mainmenu-area .navigation > li.dropdown {
    position: relative !important;
  }
  .mainmenu-area .navigation > li > ul {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    min-width: 240px !important;
    background: rgba(255,255,255,0.98) !important;
    backdrop-filter: blur(16px) saturate(1.4);
    -webkit-backdrop-filter: blur(16px) saturate(1.4);
    list-style: none !important;
    padding: 8px 0 !important;
    margin: 6px 0 0 0 !important;
    box-shadow: var(--mac-shadow-3) !important;
    border-radius: var(--mac-radius-md) !important;
    border: 1px solid rgba(0,0,0,0.04) !important;
    z-index: 1000 !important;
    visibility: hidden;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.18s var(--mac-ease), transform 0.18s var(--mac-ease), visibility 0s 0.18s;
    display: block !important;
  }
  .mainmenu-area .navigation > li.dropdown:hover > ul,
  .mainmenu-area .navigation > li.dropdown:focus-within > ul {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0s;
  }
  .mainmenu-area .navigation > li > ul > li {
    display: block !important;
    width: 100% !important;
    float: none !important;
    flex: none !important;
    white-space: nowrap !important;
  }
  .mainmenu-area .navigation > li > ul > li > a,
  .mainmenu-area .navigation li ul li a {
    display: block !important;
    padding: 11px 20px !important;
    color: #222222 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    height: auto !important;
    width: 100% !important;
    text-align: left !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    border-radius: 0 !important;
    background: transparent !important;
    visibility: visible !important;
    opacity: 1 !important;
    text-indent: 0 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-family: 'Poppins', sans-serif !important;
  }
  .mainmenu-area .navigation > li > ul > li > a:hover,
  .mainmenu-area .navigation li ul li a:hover {
    background: rgba(3, 146, 206, 0.10) !important;
    color: #0392ce !important;
    padding-left: 24px !important;
  }
  /* Šípka indikujúca dropdown */
  .mainmenu-area .navigation > li.dropdown > a::after {
    content: ' \\25BE';
    font-size: 0.7em;
    margin-left: 4px;
    opacity: 0.6;
  }

  /* === Tlačidlo "Stať sa darcom" — vyňaté z flex toku, fixne vpravo === */
  .mainmenu-area { position: relative !important; }
  /* (riešené globálne mimo media query nižšie) */
  .mainmenu-area { overflow: visible !important; position: relative !important; }
  /* Menu už nemusí rezervovať priestor — tlačidlo je v top-bar úrovni */
  .mainmenu-area .main-menu.pull-left {
    flex: 1 1 auto !important;
    max-width: 100% !important;
    width: auto !important;
    padding-right: 0 !important;
  }
  .mainmenu-area .consultation-button {
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
  }
  .mainmenu-area .consultation-button a {
    display: inline-flex !important;
    align-items: center !important;
    padding: 12px 26px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    margin: 0 !important;
    white-space: nowrap !important;
  }

  /* Menu vyhradí pravú stranu pre tlačidlo (neprelína sa) */
  .mainmenu-area .main-menu.pull-left {
    flex: 0 1 auto !important;
    max-width: calc(100% - 260px) !important;
    width: auto !important;
    padding-right: 0 !important;
  }
  .mainmenu-area .navbar-collapse {
    max-width: 100% !important;
    padding-right: 0 !important;
  }
  .mainmenu-area .navigation {
    max-width: 100% !important;
  }
  .mainmenu-area .navigation > li:last-child {
    margin-right: 0 !important;
    padding-right: 0 !important;
  }
  .mainmenu-area .navbar-collapse {
    padding-right: 0 !important;
    width: auto !important;
    max-width: 100% !important;
  }
  .mainmenu-area .container > .row > .col-lg-12 {
    justify-content: flex-start !important;
    padding-right: 0 !important;
  }
}

/* =====================================================================
   TYPOGRAFIA — vzdušnosť, čitateľnosť, kontrast
   ===================================================================== */

/* === Globálny rytmus — odsadenia medzi blokmi === */
section {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
}
/* Výnimky — header / menu / top bar nemajú veľký vertikálny padding */
section.top-bar-area {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
section.header-area {
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}
section.mainmenu-area {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
section.header-search {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
section.footer-bottom-area {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}
section.partner-logos-bar {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}
section.partner-logos-bar .container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
section.partner-logos-bar > .container > div {
  min-height: 0 !important;
}
section.partner-logos-bar img {
  display: block !important;
  vertical-align: middle !important;
}
.container, .container-fluid {
  padding-left: 28px !important;
  padding-right: 28px !important;
}

/* Karty / panely — vnútorné spacing aby text nedoťahoval okrajov */
.single-team-member,
.single-project-item,
.single-blog-default-item,
.single-info-box,
.medical-departments-area .single-item,
.special-features-area .single-item,
.fact-counter-area .single-item,
.contact-form,
.contact-info,
.welcome-content,
.sidebar-area .single-sidebar,
.tab-box,
.callto-action-area .inner-content,
.testimonial-area .single-item .text-holder {
  padding: 24px 26px !important;
}

/* Nadpisy — vzdušnosť pred a pod */
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.65em !important;
  line-height: 1.25 !important;
  color: #1a2332 !important;
}
h1 { font-size: 2.2rem !important; line-height: 1.15 !important; margin-bottom: 0.5em !important; }
h2 { font-size: 1.8rem !important; }
h3 { font-size: 1.3rem !important; }
h4 { font-size: 1.05rem !important; }
h5 { font-size: 0.95rem !important; }

/* Paragrafy — istota že text dýcha */
p {
  margin-top: 0;
  margin-bottom: 1.1em !important;
  line-height: 1.65 !important;
  color: #4a5568 !important;
}
p:last-child { margin-bottom: 0 !important; }

/* Sec-title (medzi sekciami) — viac priestoru pod */
.sec-title {
  margin-bottom: 38px !important;
  padding-bottom: 14px !important;
}
.sec-title h1, .sec-title h2 {
  margin-bottom: 16px !important;
  color: #1a2332 !important;
}
.sec-title p {
  margin-top: 14px !important;
  color: #5a6878 !important;
}
.sec-title .border {
  margin-top: 8px;
  margin-bottom: 8px;
}

/* Karty texty — interný rytmus */
.text-holder h3 { margin-bottom: 10px !important; color: #1a2332 !important; }
.text-holder p { margin-bottom: 12px !important; color: #555f6e !important; }
.text-holder .post-info { margin-bottom: 12px !important; }
.text-holder .text { margin-top: 10px !important; }

/* Welcome / About sekcie */
.welcome-content h1, .welcome-content h2 { margin-bottom: 16px !important; color: #1a2332 !important; }
.welcome-content p { margin-bottom: 14px !important; color: #555f6e !important; }
.welcome-info li {
  padding: 14px 0 !important;
  border-bottom: 1px solid rgba(0,0,0,0.06);
}
.welcome-info li:last-child { border-bottom: none; }
.welcome-info li .text-box h4 { color: #1a2332 !important; margin-bottom: 4px !important; }
.welcome-info li .text-box p { color: #5a6878 !important; }

/* Slogan / call-to-action sekcie — odsadenie a kontrast */
.callto-action-area, .slogan-area, .cta-banner {
  padding: 56px 0 !important;
}
.callto-action-area h2, .slogan-area h2 {
  color: #ffffff !important;
  margin-bottom: 16px !important;
}
.callto-action-area p, .slogan-area p {
  color: rgba(255,255,255,0.92) !important;
}

/* === Parallax banner odstavec — biely === */
p.parallax-white-text,
section[style*="background:#0a1929"] p.parallax-white-text {
  color: #ffffff !important;
  text-shadow: 0 2px 6px rgba(0,0,0,0.3) !important;
}

/* === TIM.HTML — team karty so zaoblenými rohmi + macOS window shadow === */
.team-area .single-team-member,
section.team-area .single-team-member {
  border-radius: 22px !important;
  overflow: hidden !important;
  box-shadow:
    0 1px 2px rgba(0, 0, 0, 0.05),
    0 8px 24px rgba(0, 0, 0, 0.10),
    0 24px 48px rgba(0, 0, 0, 0.12) !important;
  background: #ffffff !important;
  transition: transform 0.4s var(--mac-ease), box-shadow 0.4s var(--mac-ease) !important;
}
.team-area .single-team-member:hover,
section.team-area .single-team-member:hover {
  transform: translateY(-6px) !important;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.08),
    0 12px 32px rgba(0, 0, 0, 0.14),
    0 36px 72px rgba(0, 0, 0, 0.16) !important;
}
.team-area .single-team-member .img-holder,
section.team-area .single-team-member .img-holder {
  border-radius: 22px 22px 0 0 !important;
  overflow: hidden !important;
  height: 320px !important;
  width: 100% !important;
  position: relative !important;
}
.team-area .single-team-member .img-holder img,
section.team-area .single-team-member .img-holder img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 25% !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  display: block !important;
  transition: transform 0.6s var(--mac-ease) !important;
}
.team-area .single-team-member:hover .img-holder img {
  transform: scale(1.05) !important;
}
.team-area .single-team-member .text-holder,
section.team-area .single-team-member .text-holder {
  padding: 22px 18px !important;
  text-align: center !important;
}
.team-area .single-team-member .text-holder h3 {
  color: #1a2332 !important;
  margin-bottom: 6px !important;
  font-size: 1.05rem !important;
}
.team-area .single-team-member .text-holder span {
  color: #5a6878 !important;
  font-size: 0.9rem !important;
}
/* Row equal-height pre team grid */
.team-area .row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}
.team-area .row > [class*="col-"] {
  display: flex !important;
  margin-bottom: 28px !important;
}
.team-area .single-team-member {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
}

/* === DARCA.HTML — všetky obrázky a karty rovnako vysoké === */
body[class*="darca"] .single-team-member .img-holder,
body section[style*="padding:60px"] .single-team-member .img-holder {
  width: 100% !important;
  height: 280px !important;
}
/* Tím sekcia na darca.html — rovnaká výška kariet (flex-stretch) */
body section[style*="padding:60px"] > .container > .row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}
body section[style*="padding:60px"] > .container > .row > [class*="col-"] {
  display: flex !important;
}
body section[style*="padding:60px"] .single-team-member {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}
body section[style*="padding:60px"] .single-team-member .img-holder {
  flex-shrink: 0 !important;
  width: 100% !important;
  height: 280px !important;
  overflow: hidden !important;
}
body section[style*="padding:60px"] .single-team-member .img-holder img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 25% !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body section[style*="padding:60px"] .single-team-member .text-holder {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  padding: 18px 16px !important;
}
body section[style*="padding:60px"] .single-team-member .text-holder h3 {
  min-height: 3.6em !important;
  margin-bottom: 8px !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  text-align: center !important;
}
body section[style*="padding:60px"] .single-team-member .text-holder span {
  min-height: 2.8em !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  text-align: center !important;
}

/* === GLOBÁLNE: všetky obrázky v kartách rovnako vysoké === */
.single-team-member .img-holder,
.single-project-item .img-holder,
.single-blog-default-item .img-holder,
.single-popular-post .img-holder,
.single-item .img-holder {
  width: 100% !important;
  height: 280px !important;
  overflow: hidden !important;
  position: relative !important;
}
.single-team-member .img-holder img,
.single-project-item .img-holder img,
.single-blog-default-item .img-holder img,
.single-item .img-holder img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 25% !important;
  display: block !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
/* Sidebar popular posts — menšie thumbnaily */
.single-popular-post .img-holder {
  width: 80px !important;
  height: 80px !important;
  flex-shrink: 0 !important;
  border-radius: 12px !important;
}

/* === Latest blog (3 príbehy) — rovnaká výška kariet === */
.latest-blog-area .row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}
.latest-blog-area .row > [class*="col-"] {
  display: flex !important;
}
.latest-blog-area .single-item {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
}
.latest-blog-area .single-item .img-holder {
  flex-shrink: 0 !important;
  width: 100% !important;
  height: 240px !important;          /* fixná výška obrázka */
  overflow: hidden !important;
  position: relative !important;
}
.latest-blog-area .single-item .img-holder img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;       /* obrázok kropuje, nezväčší kartu */
  object-position: center 30% !important;
  display: block !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.latest-blog-area .single-item .text-holder {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding: 22px 24px !important;
}
/* Horizontálne zarovnanie elementov medzi kartami — fixné výšky vnútri */
.latest-blog-area .single-item .text-holder .post-info {
  min-height: 32px !important;
  margin-bottom: 14px !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
}
/* Medzera medzi ikonou kalendára/používateľa a textom */
.latest-blog-area .post-info .fa,
.latest-blog-area .post-info span.fa,
.latest-blog-area .comments .fa,
.latest-blog-area .date .fa,
.blog-area .post-info .fa,
.blog-area .post-info i {
  margin-right: 10px !important;
  color: #0392ce !important;
}
.latest-blog-area .single-item .text-holder h3 {
  min-height: 4.2em !important;       /* 3 riadky pre titul */
  margin-bottom: 14px !important;
  display: flex !important;
  align-items: flex-start !important;
  line-height: 1.35 !important;
  font-size: 1.15rem !important;
}
.latest-blog-area .single-item .text-holder h3 a {
  display: block !important;
}
.latest-blog-area .single-item .text-holder .text {
  flex: 1 1 auto !important;
  margin-bottom: 16px !important;
  display: flex !important;
  align-items: flex-start !important;
}
.latest-blog-area .single-item .text-holder .text p {
  margin: 0 !important;
  line-height: 1.55 !important;
}

/* === Rovnaká výška kariet všeobecne — pre .row s 3 stĺpcami === */
.cards-equal-height .row,
.medical-departments-area .row,
.special-features-area .row,
.team-area .row,
.project-with-text-area .row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}
.cards-equal-height .row > [class*="col-"],
.medical-departments-area .row > [class*="col-"],
.special-features-area .row > [class*="col-"],
.team-area .row > [class*="col-"],
.project-with-text-area .row > [class*="col-"] {
  display: flex !important;
  margin-bottom: 24px !important;
}
.medical-departments-area .single-item,
.special-features-area .single-item,
.team-area .single-team-member,
.project-with-text-area .single-project-item {
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

/* === Newsletter "Odoberať novinky" tlačidlo na celú šírku formulára === */
.footer-area .appointment-form button[type="submit"],
.appointment-form button[type="submit"] {
  width: 100% !important;
  display: block !important;
  padding: 14px 24px !important;
  text-align: center !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  margin-top: 8px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #43c3ea, #0392ce) !important;
  color: white !important;
  box-shadow: 0 6px 18px rgba(3,146,206,0.35) !important;
}
.footer-area .appointment-form button[type="submit"]:hover {
  background: linear-gradient(135deg, #0392ce, #0277a8) !important;
  transform: translateY(-2px) !important;
}

/* === Náš svet — 3 feature karty: BIELY text na overlay === */
section .col-md-4 div[style*="rgba(3,146,206,0.92)"] p,
section .col-md-4 div[style*="rgba(220,38,38,0.92)"] p,
section .col-md-4 div[style*="rgba(15,118,110,0.92)"] p,
section .col-md-4 div[style*="rgba(3,146,206,0.92)"] h3,
section .col-md-4 div[style*="rgba(220,38,38,0.92)"] h3,
section .col-md-4 div[style*="rgba(15,118,110,0.92)"] h3,
section .col-md-4 div[style*="rgba(3,146,206,0.92)"] span,
section .col-md-4 div[style*="rgba(220,38,38,0.92)"] span,
section .col-md-4 div[style*="rgba(15,118,110,0.92)"] span,
section .col-md-4 div[style*="rgba(3,146,206,0.92)"] div,
section .col-md-4 div[style*="rgba(220,38,38,0.92)"] div,
section .col-md-4 div[style*="rgba(15,118,110,0.92)"] div {
  color: #ffffff !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.25) !important;
}

/* === Veľké nadpisy + texty v banneroch / CTA / hero — TMAVŠIA modrá === */
.callto-action-area .title-box h2,
.callto-action-area .inner-content h2,
.slogan-area .title h2,
.cta-banner h2,
.rev_slider .tp-caption h1,
.slide-content-box h1,
section[style*="rgba(3,146,206"] h1,
section[style*="rgba(3,146,206"] h2,
section[style*="background:#0a1929"] h1,
section[style*="background:#0a1929"] h2 {
  background: linear-gradient(135deg, #0277a8, #024e6b) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  color: #024e6b !important;
  text-shadow: none !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
}

/* Všetky texty (paragrafy, spans, atd) v banner sekciách — TMAVÁ modrá */
.callto-action-area p,
.callto-action-area span:not(.flaticon):not(.icon):not(.fa),
.slogan-area p,
.slogan-area span:not(.flaticon):not(.icon):not(.fa),
.cta-banner p,
.cta-banner span:not(.flaticon):not(.icon):not(.fa),
section[style*="rgba(3,146,206"] p,
section[style*="rgba(3,146,206"] span:not(.flaticon):not(.icon):not(.fa):not(i),
section[style*="background:#0a1929"] p,
section[style*="background:#0a1929"] span:not(.flaticon):not(.icon):not(.fa):not(i),
section[style*="background:#0a1929"] div {
  color: #024e6b !important;
  text-shadow: none !important;
}

/* Slide content texty — tmavomodrá pre h1 + texty */
.slide-content-box h1 span,
.rev_slider .tp-caption h1 span {
  background: linear-gradient(135deg, #0392ce, #024e6b) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  color: #024e6b !important;
}
.slide-content-box p,
.rev_slider .tp-caption p {
  color: #024e6b !important;
  text-shadow: none !important;
}

/* Tmavé sekcie (hero, parallax, banner s img background) — biele texty */
.rev_slider .tp-caption,
.fact-counter-area,
.testimonial-area,
.callto-action-area,
.slogan-area,
.breadcrumb-area,
section[style*="background-image"]:not(.welcome-area) {
  /* Texty na tmavom pozadí — biele */
}
.rev_slider .tp-caption h1,
.fact-counter-area h1,
.fact-counter-area h3,
.testimonial-area h3,
.testimonial-area p,
.breadcrumb-area h1,
.breadcrumb-area p,
.callto-action-area h2,
.slogan-area h2 {
  color: #ffffff !important;
  text-shadow: 0 2px 8px rgba(0,0,0,0.35);
}
.fact-counter-area .timer {
  color: #024e6b !important;
  font-weight: 800 !important;
  font-size: 3.2rem !important;
  text-shadow: none !important;
  background: linear-gradient(135deg, #0277a8, #024e6b) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
.fact-counter-area h3 {
  color: #024e6b !important;
  font-weight: 700 !important;
  text-shadow: none !important;
  background: none !important;
  -webkit-text-fill-color: #024e6b !important;
}
.fact-counter-area .single-item h3 {
  color: #024e6b !important;
  -webkit-text-fill-color: #024e6b !important;
}
/* Counter sekcia má tmavý overlay pre garantovaný kontrast textu */
.fact-counter-area {
  position: relative;
}
.fact-counter-area::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(3,146,206,0.85) 0%, rgba(10,25,41,0.78) 100%);
  z-index: 0;
  pointer-events: none;
}
.fact-counter-area .container { position: relative; z-index: 1; }
.fact-counter-area .single-item .icon-box {
  background: linear-gradient(135deg, #43c3ea 0%, #0277a8 100%) !important;
  color: #ffffff !important;
  font-size: 2.2rem !important;
  width: 80px !important; height: 80px !important;
  margin: 0 auto 18px !important;
  border-radius: 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 8px 20px rgba(2,119,168,0.35) !important;
}
.fact-counter-area .single-item .icon-box span,
.fact-counter-area .single-item .icon-box i {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-size: 2.2rem !important;
  background: none !important;
  display: inline-block !important;
}
/* Counter ikony — všetky flaticon majú modrú farbu na bielom pozadí kariet */
.single-item .iocn-holder span,
.single-item .iocn-holder i,
.medical-departments-area .single-item .iocn-holder,
.special-features-area .single-item .iocn-holder,
.welcome-info li .icon-box span,
.welcome-info li .icon-box i,
.single-info-box .iocn-holder span,
.single-info-box .iocn-holder i {
  color: #0392ce !important;
  -webkit-text-fill-color: #0392ce !important;
  background: none !important;
  font-size: 2.4rem !important;
}
.single-info-box .iocn-holder,
.welcome-info li .icon-box,
.special-features-area .single-item .iocn-holder {
  color: #0392ce !important;
}
.testimonial-area .text-holder { color: #ffffff !important; }
.testimonial-area .text-holder p { color: rgba(255,255,255,0.95) !important; font-style: italic; }
.testimonial-area .text-holder span { color: rgba(255,255,255,0.75) !important; }
.breadcrumb-area p { color: rgba(255,255,255,0.92) !important; }
.breadcrumb-menu li, .breadcrumb-menu li a {
  color: rgba(255,255,255,0.85) !important;
}

/* Footer — svetlé texty na tmavom pozadí */
.footer-area {
  background: #0a1929 !important;
  padding: 64px 0 32px !important;
}
.footer-area * { color: rgba(255,255,255,0.78) !important; }
.footer-area h3, .footer-area h5 {
  color: #ffffff !important;
  margin-bottom: 18px !important;
  padding-bottom: 8px !important;
}
.footer-area .single-footer-widget {
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  margin-bottom: 32px !important;
}
.footer-area .our-info p,
.footer-area .footer-contact-info li,
.footer-area .usefull-links li {
  color: rgba(255,255,255,0.85) !important;
  margin-bottom: 14px !important;
  font-size: 1.05rem !important;
  line-height: 1.55 !important;
}
/* Useful links — žiadne zalamovanie textu */
.footer-area .usefull-links li,
.footer-area .usefull-links li a {
  white-space: nowrap !important;
}
/* Useful links — 2-stĺpcový layout */
.footer-area .single-footer-widget:has(.usefull-links) {
  display: block !important;
}
.footer-area .single-footer-widget .usefull-links,
.footer-area .usefull-links {
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  float: none !important;
  column-count: 2 !important;
  column-gap: 24px !important;
}
.footer-area .usefull-links li {
  break-inside: avoid !important;
  page-break-inside: avoid !important;
  -webkit-column-break-inside: avoid !important;
  list-style: none !important;
  list-style-type: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}
.footer-area .usefull-links li::before,
.footer-area .usefull-links li::marker,
.footer-area .usefull-links li a::before,
.footer-area .single-footer-widget .usefull-links li a::before,
.footer-area .single-footer-widget .usefull-links li a:hover::before {
  content: none !important;
  display: none !important;
  background: none !important;
  width: 0 !important;
  height: 0 !important;
}
.footer-area .usefull-links li a {
  padding-left: 0 !important;
  margin-left: 0 !important;
}
.footer-area .single-footer-widget ul,
.footer-area .single-footer-widget ol {
  list-style: none !important;
  list-style-type: none !important;
  padding-left: 0 !important;
}
/* Footer grid — širšia kolóna pre linky aby sa nezalamovalo */
@media (min-width: 992px) {
  .footer-area .row > .col-lg-3:nth-child(2) {
    flex: 0 0 28% !important;
    max-width: 28% !important;
  }
  .footer-area .row > .col-lg-3:nth-child(1),
  .footer-area .row > .col-lg-3:nth-child(3),
  .footer-area .row > .col-lg-3:nth-child(4) {
    flex: 0 0 24% !important;
    max-width: 24% !important;
  }
}
/* Footer contact info — text 1/3 väčší */
.footer-area .footer-contact-info li .text-holder h5,
.footer-area .footer-contact-info li .text-holder p,
.footer-area .footer-contact-info li .text-holder a,
.footer-area .footer-contact-info li .text-holder {
  font-size: 1.15rem !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
  color: rgba(255,255,255,0.92) !important;
  margin-bottom: 0 !important;
}
.footer-area .footer-contact-info li {
  padding: 8px 0 !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 22px !important;
  position: relative !important;
}
.footer-area .footer-contact-info li .icon-holder {
  flex-shrink: 0 !important;
  width: 38px !important;
  height: 38px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(67, 195, 234, 0.12) !important;
  border-radius: 12px !important;
  position: static !important;
  float: none !important;
  font-size: 1.2rem !important;
}
.footer-area .footer-contact-info li .icon-holder span,
.footer-area .footer-contact-info li .icon-holder i {
  color: #43c3ea !important;
  font-size: 1.2rem !important;
}
.footer-area .footer-contact-info li .text-holder {
  flex: 1 1 auto !important;
  position: static !important;
  float: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}
.footer-area a { color: rgba(255,255,255,0.78) !important; }
.footer-area a:hover { color: #43c3ea !important; }
.footer-bottom-area { background: #060f1a !important; padding: 18px 0 !important; }
.footer-bottom-area p, .footer-bottom-area a { color: rgba(255,255,255,0.55) !important; }
.footer-bottom-area .row,
.footer-bottom-area .container > .row {
  text-align: center !important;
}
.footer-bottom-area .col-md-8,
.footer-bottom-area .col-md-12,
.footer-bottom-area [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  text-align: center !important;
}
.footer-bottom-area .copyright-text {
  text-align: center !important;
  width: 100% !important;
}
.footer-bottom-area .copyright-text p {
  text-align: center !important;
  margin: 0 auto !important;
}

/* Header — info bar texty tmavé na bielom */
.header-area .header-right h4 { color: #1a2332 !important; margin-bottom: 2px !important; }
.header-area .header-right span { color: #5a6878 !important; }

/* Top bar — biele texty na tmavom */
.top-bar-area {
  background: #0a1929 !important;
  padding: 10px 0 !important;
}
.top-bar-area * { color: rgba(255,255,255,0.85) !important; }
.top-bar-area p { margin-bottom: 0 !important; }

/* Menu položky — kontrast */
.main-menu .navigation > li > a {
  color: #1a2332 !important;
}
.main-menu .navigation > li.current > a,
.main-menu .navigation > li:hover > a {
  color: #0392ce !important;
}

/* Sidebar widget */
.sidebar-area .single-sidebar h3,
.sidebar-area .single-sidebar .sidebar-title h3 {
  color: #1a2332 !important;
  margin-bottom: 18px !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid #f0f4f8;
}

/* Accordion — vzdušné riadky */
.accordion-block { margin-bottom: 14px !important; }
.accordion-block .acc-btn { padding: 18px 22px !important; }
.accordion-block .acc-btn h4 {
  color: #1a2332 !important;
  margin: 0 !important;
  font-size: 1rem !important;
}
.accordion-block .acc-content .text {
  padding: 4px 22px 18px !important;
}
.accordion-block .acc-content .text p {
  color: #4a5568 !important;
  margin-bottom: 0 !important;
}

/* Forms — labels a inputy s priestorom */
.input-box { margin-bottom: 16px !important; }
.input-box input, .input-box textarea, .input-box select {
  padding: 14px 18px !important;
  color: #1a2332 !important;
}
.input-box input::placeholder,
.input-box textarea::placeholder,
input::placeholder,
textarea::placeholder,
.appointment-form input::placeholder,
.appointment-form textarea::placeholder {
  color: #475569 !important;
  opacity: 1 !important;
}
.input-box input,
.input-box textarea,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="date"],
textarea {
  color: #1a2332 !important;
}
label { color: #1a2332 !important; margin-bottom: 6px !important; }

/* Tlačidlá — viac dýchania */
.thm-btn, .btn-style-two, .consultation-button a {
  padding: 13px 28px !important;
  letter-spacing: 0.02em !important;
  color: #ffffff !important;
}

/* === BIELE PODKLADY — VŠETKY TEXTY TMAVÉ (landing page sections) === */
.medical-departments-area,
.service-area,
.latest-blog-area,
.welcome-area,
.special-features-area,
.project-with-text-area,
.faq-content-area,
.faq-questions-form-area,
.contact-form-area,
.team-area,
.blog-area,
.brand-area,
.certificates-area,
.callto-action-area,
.project-faq-area {
  background: #ffffff;
}
.medical-departments-area *,
.service-area *,
.latest-blog-area *,
.welcome-area *,
.special-features-area *,
.project-with-text-area *,
.faq-content-area *,
.team-area *,
.blog-area *,
.callto-action-area *,
.project-faq-area * {
  color: inherit;
}
/* Nadpisy v týchto sekciách — výrazne tmavé */
.medical-departments-area h1, .medical-departments-area h2, .medical-departments-area h3, .medical-departments-area h4,
.service-area h1, .service-area h2, .service-area h3, .service-area h4,
.latest-blog-area h1, .latest-blog-area h2, .latest-blog-area h3, .latest-blog-area h4,
.welcome-area h1, .welcome-area h2, .welcome-area h3, .welcome-area h4,
.special-features-area h1, .special-features-area h2, .special-features-area h3,
.project-with-text-area h1, .project-with-text-area h2, .project-with-text-area h3,
.faq-content-area h1, .faq-content-area h2, .faq-content-area h3, .faq-content-area h4,
.team-area h1, .team-area h2, .team-area h3,
.blog-area h1, .blog-area h2, .blog-area h3, .blog-area h4,
.brand-area h1, .brand-area h2, .brand-area h3,
.certificates-area h1, .certificates-area h2, .certificates-area h3,
.project-faq-area h1, .project-faq-area h2, .project-faq-area h3, .project-faq-area h4,
.callto-action-area h1, .callto-action-area h2 {
  color: #1a2332 !important;
  text-shadow: none !important;
}
/* Paragrafy v týchto sekciách — tmavé */
.medical-departments-area p, .medical-departments-area span:not(.border):not(.flaticon),
.service-area p,
.latest-blog-area p, .latest-blog-area span:not(.border),
.welcome-area p, .welcome-area li,
.special-features-area p,
.project-with-text-area p,
.faq-content-area p, .faq-content-area span:not(.icon),
.team-area p, .team-area span,
.blog-area p, .blog-area span:not(.flaticon),
.brand-area p,
.certificates-area p,
.project-faq-area p {
  color: #4a5568 !important;
  text-shadow: none !important;
}
/* Linky v sekciách — primárna modrá */
.medical-departments-area a:not(.thm-btn):not(.btn-style-two):not(.consultation-button a):not(.readmore),
.service-area a:not(.thm-btn):not(.btn-style-two),
.latest-blog-area a:not(.thm-btn):not(.btn-style-two),
.welcome-area a:not(.thm-btn) {
  color: #0392ce;
}
/* Karty na bielom pozadí — tmavý text */
.single-item .text-holder h3,
.single-item .text-holder p,
.single-item h3,
.single-item p,
.single-team-member h3,
.single-team-member span,
.single-project-item h3,
.single-project-item span,
.single-blog-default-item h2,
.single-blog-default-item h3,
.single-blog-default-item p,
.single-info-box h3,
.single-info-box p {
  color: #1a2332 !important;
  text-shadow: none !important;
}
.single-item .text-holder p,
.single-team-member span,
.single-project-item span,
.single-blog-default-item p,
.single-info-box p {
  color: #4a5568 !important;
}
/* Latest blog post-info (autor, dátum) */
.latest-blog-area .post-info,
.latest-blog-area .post-info a,
.latest-blog-area .comments a,
.latest-blog-area .date a,
.blog-area .post-info,
.blog-area .post-info li {
  color: #5a6878 !important;
}

/* Karty — text vo vnútri má rytmus */
.medical-departments-area .single-item,
.special-features-area .single-item {
  padding: 32px 24px !important;
}
.medical-departments-area .single-item h3,
.special-features-area .single-item h3 {
  margin-top: 18px !important;
  margin-bottom: 12px !important;
  color: #1a2332 !important;
}
.medical-departments-area .single-item p,
.special-features-area .single-item p {
  color: #5a6878 !important;
  margin-bottom: 16px !important;
}

/* Page header (breadcrumb area) — viac vertikálneho priestoru */
.breadcrumb-area {
  padding: 90px 0 100px !important;
}
.breadcrumb-area .title h1 {
  margin-bottom: 14px !important;
}

/* Spacing pri tlačidlách v skupinách */
.button { display: flex; gap: 12px; flex-wrap: wrap; }
.button > a { margin: 0 !important; }

/* Image cropping fixes — žiadne odrezané hlavy === */
/* Portréty doktorov / tímu — face-aware cropping (tvár v hornej tretine) */
.single-team-member .img-holder img,
.single-team-member img,
.tim-area img {
  object-fit: cover !important;
  object-position: center 25% !important;
}

/* Avatari testimonialov — face-aware (tvár center) */
.testimonial-area .img-holder img,
.avatar-circle img,
.kvapka-avatar img {
  object-fit: cover !important;
  object-position: center 30% !important;
}

/* Karty (project, blog) — center crop */
.single-project-item img,
.single-blog-default-item img,
.news-image img {
  object-fit: cover !important;
  object-position: center center !important;
}

/* Hero slidery — fill with cover, top focus */
.rev_slider img,
.tp-bgimg {
  object-fit: cover !important;
  object-position: center 35% !important;
}

/* Service area / welcome veľké obrázky */
.service-area .img-holder img,
.welcome-area .img-holder img {
  object-fit: cover !important;
  object-position: center center !important;
}

/* Ostrosť cez CSS image-rendering hint */
img {
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}
