/* Načítanie fontov */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

html { overflow-x: visible !important; }
body { overflow-x: hidden !important; }

html, body {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

/* Pre mobil */
@media (max-width: 768px) {
  html, body {
    overflow-x: hidden !important;
    position: relative;
    width: 100%;
  }

  .t4-wrapper,
  .t4-content,
  .t4-section,
  .t4-section-inner,
  .container {
    overflow-x: hidden !important;
    max-width: 100% !important;
  }
}




/* Header */
/* Navigácia - zmena fontu */
#t4-header .t4-megamenu .nav-link,
#t4-header .navbar-nav .nav-link {
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    font-size: 17px !important;
    line-height: 100% !important;
    letter-spacing: 0 !important;
}

/* Navigácia - zarovnanie v jednom riadku */
/* Navbar-nav tiež full width */
#t4-header .navbar-nav.level0 {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center;
    width: 100% !important;
    justify-content: flex-start;
}

/* Menšie medzery medzi položkami menu */
#t4-header .navbar-nav .nav-item {
    margin-right: 50px !important;
    margin-left: 0 !important;
    padding: 0 !important;
}

/* Zmenšiť padding na linkách */
#t4-header .navbar-nav .nav-link {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

#t4-header .navbar-nav .nav-item.active > .nav-link,
#t4-header .navbar-nav .nav-item.current > .nav-link {
    border-bottom: 2px solid rgba(237, 32, 39, 1) !important; 
}

/* Posledná položka (Konzultácia) - zarovnanie doprava */
#t4-header .navbar-nav .nav-item:last-child {
    margin-left: auto !important;
    margin-right: 0 !important;
}

/* Celý navbar container na full width */
#t4-header .t4-navbar,
#t4-header .navbar,
#t4-header .t4-megamenu,
#t4-header #t4-megamenu-mainmenu {
    width: 100% !important;
}



/* Tlačidlo Konzultácia */
#t4-header .navbar-nav .nav-item:last-child .header-konzultacia-btn,
#t4-header .header-konzultacia-btn.nav-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 150px !important;
    height: 45px !important;
    min-height: 40px !important;
    background-color: #ffffff !important;
    color: rgba(24, 28, 74, 1) !important;
    text-decoration: none !important;
    border-radius: 12px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 17px !important;
    letter-spacing: 0 !important;
    padding: 0 20px !important;
}

#t4-header .header-konzultacia-btn.nav-link:hover {
    background-color: #F2F2F2 !important;
    color: rgba(24, 28, 74, 1) !important;
}

/* Reset štýlov pre text vnútri tlačidla */
#t4-header .header-konzultacia-btn .menu-item-title {
    color: rgba(24, 28, 74, 1) !important;
}



/* Úprava layoutu headera aby actions boli vpravo */
#t4-header .t4-row.row {
    display: flex;
    align-items: center;
}

#t4-header .t4-col.mainnav {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

#t4-header .t4-navbar {
    display: flex;
    align-items: center;
    width: 100%;
}

#t4-header .t4-megamenu {
    margin-right: auto;
}

/* Responzívne - skryť na mobile */
@media (max-width: 991px) {
    .header-actions {
        display: none;
    }
}

/* --- ÚPRAVA PRE TABLETY A MENŠIE LAPTOPY (1024px - 1300px) --- */
@media (min-width: 992px) and (max-width: 1300px) {
    /* 1. Zmenšenie medzery medzi položkami menu */
    #t4-header .navbar-nav .nav-item {
        margin-right: 18px !important; /* Pôvodne bolo 50px, teraz dáme 20px */
    }
    
    /* 3. Úprava šírky tlačidla Konzultácia, aby nezaberalo toľko miesta */
    #t4-header .navbar-nav .nav-item:last-child .header-konzultacia-btn,
    #t4-header .header-konzultacia-btn.nav-link {
        width: 130px !important; /* Zmenšené z 150px */
        padding: 0 10px !important;
        font-size: 15px !important;
    }
}





 /* Hero heading - Century Gothic s Figma parametrami */
.hero-heading {
    font-family: 'Questrial', sans-serif !important;
    font-weight: 400 !important;
    font-size: 40px !important;
    line-height: 110% !important;
    letter-spacing: 0 !important;
}

/* Prvá Hero sekcia (hero-1) - 60px */
#hero-1 .hero-heading,
.hero-1 .hero-heading {
    font-size: 60px !important;
}

/* Module title - Inter s Figma parametrami */
.module-title,
.module-title span {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 17px !important;
    line-height: 100% !important;
    letter-spacing: 0 !important;
    text-align: left !important;
}

/* Introduction a Button */
.hero-intro {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 17px !important;
    line-height: 25px !important;
    letter-spacing: 0 !important;
}

/* Hero button - EuroDotácie štýl */
.hero-eurodotacie {
    background-color: #ED2027 !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 12px 25px !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    font-size: 17px !important;
    color: #FFFFFF !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    text-decoration: none !important;
}

.hero-eurodotacie:hover {
    background-color: #c91b21 !important;
    color: #FFFFFF !important;
}

.hero-eurodotacie i,
.hero-eurodotacie .fa,
.hero-eurodotacie .fas,
.hero-eurodotacie .fa-long-arrow-alt-right,
.hero-eurodotacie::after {
    display: none !important;
}

/* Sekcia karty - EuroDotácie štýl */
.karty-section {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
   padding: 100px 15px 150px 15px;
  max-width: 1400px;
  margin: 0 auto;
}

.karty-section-6 {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
   padding: 0 15px 200px 15px;
  max-width: 1400px;
  margin: 0 auto;
}

/* Základný štýl karty */
.karta {
  position: relative;
  background: rgba(232, 245, 255, 1);
  border-radius: 45px;
  padding: 40px 30px;
  width: 420px !important;
  min-height: 550px;
  display: flex;
  flex-direction: column;
  transition: all 0.3s ease;
  z-index: 1;
}

/* Stredná karta - defaultne vystúpená */
.karta-stred {
  background: #ffffff;
  box-shadow: 0 10px 40px rgba(0,0,0,0.1);
  z-index: 2;
  transform: translateY(+40px);
  margin: 0 -15px;
}

/* Stredná karta - tlačidlo modré defaultne */
.karta-stred .karta-btn {
  background: rgba(232, 245, 255, 1);
  color: #ffffff;
}

/* Hover na akúkoľvek kartu - vystúpi */
.karta:hover {
  background: #ffffff;
  box-shadow: 0 10px 40px rgba(0,0,0,0.1);
  z-index: 3;
  transform: translateY(+40px);
  margin: 0 -15px;
}

/* Hover - tlačidlo modré */
.karta:hover .karta-btn {
  background: rgba(232, 245, 255, 1);
}

/* Keď je hover na inej karte, stredná sa vráti do normálu */
.karty-section:hover .karta-stred:not(:hover) {
  background: rgba(232, 245, 255, 1);
  box-shadow: none;
  z-index: 1;
  transform: translateY(0);
  margin: 0;
}

.karty-section:hover .karta-stred:not(:hover) .karta-btn {
  background: rgba(255, 255, 255, 1);
  color: #1a365d;
}

.karta-icon {
  position: absolute;
  top: 30px;
  right: 30px;
}

.karta-icon img {
  width: 40px;
  height: 40px;
}

.karta-content {
  margin-top: 60px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

/* Medzery v kartách */
.karta-content .hero-heading {
  margin-bottom: 20px;
}

.karta-content .hero-intro strong{
  display: block;
  margin-bottom: 20px;
}

.karta-btn {
  display: block; /* zmeň z inline-block na block */
  padding: 15px;
  background: rgba(255, 255, 255, 1);
  width: 220px;
  border: none;
  border-radius: 12px;
  color: #1a365d;
  text-decoration: none;
  font-size: 17px;
  font-family: 'Inter', sans-serif !important;
  text-align: center;
  margin-top: 20px;
  margin-left: auto;  /* pridaj */
  margin-right: auto; /* pridaj */
}

.karta-btn:hover {
  text-decoration: none;
}

@media (max-width: 992px) {
  .karty-section {
    flex-direction: column;
    gap: 20px;
  }
  
  .karta-stred {
    margin: 0;
  }
  
  .karta {
    width: 100%;
    max-width: 380px;
  }
}

@media (max-width: 576px) {
  .karty-section {
    padding: 40px 15px;
  }
  
  .karta {
    width: 100%;
    max-width: 350px;
    padding: 30px 20px;
    min-height: auto;
  }
  
  .karta-stred {
    min-height: auto;
  }
}


/* Odstránenie medzier pre služby sekciu */
#t4-section-4 .container {
    padding-right: 0 !important;
    padding-left: 0 !important;
}


#t4-section-4 .container:not(:has(#mod-179)):not(:has([data-id="159"])) {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Skrytie prázdneho module-head-group */
#Mod142 .module-head-group,
#Mod143 .module-head-group,
#Mod144 .module-head-group,
#Mod179 .module-head-group,
#Mod181 .module-head-group{
    display: none !important;
}

#Mod142 .module-ct,
#Mod143 .module-ct,
#Mod144 .module-ct,
#Mod179 .module-ct,
#Mod181 .module-ct{
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
}

/* Služby sekcia - layout */
.sluzby-section {
    display: flex !important;
    align-items: stretch !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.sluzby-section-anj {
    display: flex !important;
    align-items: stretch !important;
    gap: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    /* Odstránime padding: 0 a nahradíme ho týmto: */
    padding: 120px 0 0 0 !important; 
}

/* Centrovanie textu v ľavej časti */
.sluzby-left {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: left !important;
    padding: 60px 120px !important;
}

.sluzby-left .module-title,
.sluzby-left .hero-heading,
.sluzby-left .hero-intro {
    width: 100% !important;
    max-width: 500px !important;
}

.sluzby-right {
    flex: 1 !important;
}

.sluzby-right img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 0 0 12px 12px !important;
    display: block !important;
}

.sluzby-right-anj {
    flex: 1 !important;
}

.sluzby-right-anj img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 12px 12px 12px 12px !important;
    display: block !important;
}

/* Responsive */
@media (max-width: 992px) {
    .sluzby-section {
        flex-direction: column !important;
    }
    
    .sluzby-left {
        padding: 40px 20px !important;
    }
    
    .sluzby-right {
        width: 100% !important;
    }
    
    .sluzby-right img {
        height: auto !important;
        aspect-ratio: 965 / 596 !important;
        border-radius: 0 !important;
    }
  .sluzby-right-anj {
        width: 100% !important;
    }
    
    .sluzby-right-anj img {
        height: auto !important;
        aspect-ratio: 965 / 596 !important;
        border-radius: 0 !important;
    }
}

/* Sluzby s ikonami */
.sluzby-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
  padding: 80px 0;
  max-width: 1200px;
  margin: 0 auto;
}

.sluzby-item {
  text-align: left;
}

.sluzby-icon {
  margin-bottom: 24px;
  height: 60px;
}

.sluzby-icon img {
  width: auto;
  height: 50px;
}

.sluzby-title {
    font-family: 'Questrial', sans-serif !important;
    font-weight: 400 !important;
    font-size: 30px !important;
    line-height: 100% !important;
    letter-spacing: 0 !important;
}

.sluzby-text {
  font-family: 'Inter', sans-serif !important;
  font-weight: 400 !important;
  font-size: 17px !important;
  line-height: 25px !important;
  letter-spacing: 0 !important;
}

@media (max-width: 992px) {
  .sluzby-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 576px) {
  .sluzby-grid {
    grid-template-columns: 1fr;
  }
}


/* Vyhľadávanie dotácií */
.vyhladavanie-section {
  padding: 40px 15px 150px 15px;
  max-width: 1600px;
  margin: 0 auto;
}

.vyhladavanie-box {
  background: rgba(232, 245, 255, 1);
  border-radius: 12px;
  padding: 50px 60px;
  display: flex;
  align-items: center;
  max-width: 1559px;
  min-height: 378px;
  margin: 0 auto;
  position: relative;
}

.vyhladavanie-left {
  position: absolute;
  left: 110px;
  top: 100px;
}

.vyhladavanie-title {
    font-family: 'Questrial', sans-serif !important;
    font-weight: 400 !important;
    font-size: 50px !important;
    line-height: 55px !important;
    letter-spacing: 0 !important;
}

.vyhladavanie-right {
  position: absolute;
  left: 520px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.vyhladavanie-filters {
  display: flex;
  gap: 33px;
}

.filter-select {
  flex: 1;
}

.filter-select select {
  width: 285px;
  height: 80px;
  padding: 16px 50px 16px 20px;
  font-family: 'Questrial', sans-serif !important;
  font-weight: 400 !important;
  font-size: 17px !important;
  line-height: 25px !important;
  letter-spacing: 0 !important;
  color: rgba(8, 75, 124, 1);
  background: rgba(255, 255, 255, 1);
  border: 1px solid rgba(8, 75, 124, 1);
  border-radius: 13px;
  appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='%23084b7c' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 18px center;
}

.filter-select select:focus {
  outline: none;
  border-color: rgba(8, 75, 124, 1);
  box-shadow: 0 0 0 3px rgba(8, 75, 124, 0.1);
}

.vyhladavanie-btn-wrapper {
  display: flex;
  justify-content: flex-end;
  margin-top: 25px;
}

.vyhladavanie-button {
  background-color: rgba(237, 32, 39, 1) !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 12px 25px !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 17px !important;
  color: rgba(255, 255, 255, 1) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  text-decoration: none !important; 
}

.vyhladavanie-button:hover {
    background-color: #c91b21 !important;
    color: #FFFFFF !important;
}


/* Tablet/iPad - stredné obrazovky */
@media (max-width: 1400px) and (min-width: 769px) {
  .vyhladavanie-box {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    padding: 50px 40px;
    gap: 40px;
  }
  
  .vyhladavanie-left {
    position: relative;
    left: auto;
    top: auto;
    flex-shrink: 0;
  }
  
  .vyhladavanie-right {
    position: relative;
    left: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }
  
  .vyhladavanie-filters {
    flex-direction: column;
    gap: 15px;
    align-items: flex-end;
  }
  
  .filter-select select {
    width: 285px;
  }
  
  .vyhladavanie-btn-wrapper {
    justify-content: center;
    width: 100%;
    margin-top: 25px;
  }
}

/* Mobil - malé obrazovky */
@media (max-width: 768px) {
  .vyhladavanie-section {
    padding: 30px 15px 80px 15px;
  }
  
  .vyhladavanie-box {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 40px 25px;
    min-height: auto;
    gap: 30px;
  }
  
  .vyhladavanie-left {
    position: relative;
    left: auto;
    top: auto;
  }
  
  .vyhladavanie-title {
    font-size: 36px !important;
    line-height: 42px !important;
  }
  
  .vyhladavanie-right {
    position: relative;
    left: auto;
    width: 100%;
  }
  
  .vyhladavanie-filters {
    flex-direction: column;
    gap: 15px;
    width: 100%;
  }
  
  .filter-select {
    width: 100%;
  }
  
  .filter-select select {
    width: 100%;
    height: 60px;
    font-size: 15px !important;
  }
  
  .vyhladavanie-btn-wrapper {
    justify-content: center;
    width: 100%;
  }
  
  .vyhladavanie-button {
    width: 100%;
    justify-content: center;
  }
}


/* Oblá karta misie */
#Mod104,
#Mod148,
#Mod182 {
    border-radius: 12px !important;
}

/* Velke karty */
.school-carousel-wrapper {
    max-width: 1600px !important;
    margin: 0 auto;
    padding: 170px 20px 0 20px;
}

.school-carousel-wrapper::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: rgba(8, 75, 124, 1);
    margin-top: 150px;
}

.carousel-header {
    text-align: center;
    margin-bottom: 135px;
}

.school-carousel {
    position: relative;
    display: flex;
    align-items: center;
    gap: 30px;
}

/* Skryté radio buttony */
.school-carousel input[type="radio"] {
    display: none;
}

/* Navigation wrappers */
.carousel-nav-left,
.carousel-nav-right {
    position: relative;
    width: 50px;
    height: 50px;
    flex-shrink: 0;
    z-index: 10;
}

.carousel-nav-left {
    order: 1;
}

.carousel-nav-right {
    order: 3;
}

/* Skryje všetky navigation buttony defaultne */
.nav-btn {
    position: absolute;
    top: 0;
    left: 0;
    width: 50px;
    height: 50px;
    display: none;
    cursor: pointer;
    transition: all 0.3s ease;
}

.nav-btn:hover {
    transform: scale(1.15);
}

.arrow-icon {
    width: 50px;
    height: 50px;
    transition: all 0.3s ease;
    pointer-events: none;
}

.nav-btn:hover .arrow-icon {
    transform: scale(1.05);
}

/* ĽAVÁ ŠÍPKA - zobrazí sa len keď NIE sme na pozícii 1 */
#carousel-pos-2:checked ~ .carousel-nav-left .nav-prev-from-2,
#carousel-pos-3:checked ~ .carousel-nav-left .nav-prev-from-3 {
    display: block;
}

/* Na pozícii 1 je ľavá šípka skrytá (opacity alebo pointer-events: none) */
#carousel-pos-1:checked ~ .carousel-nav-left {
    opacity: 0.3;
    pointer-events: none;
}

/* PRAVÁ ŠÍPKA - zobrazí sa len keď NIE sme na pozícii 3 */
#carousel-pos-1:checked ~ .carousel-nav-right .nav-next-from-1,
#carousel-pos-2:checked ~ .carousel-nav-right .nav-next-from-2 {
    display: block;
}

/* Na pozícii 3 je pravá šípka skrytá */
#carousel-pos-3:checked ~ .carousel-nav-right {
    opacity: 0.3;
    pointer-events: none;
}

/* Container pre karty */
.carousel-container {
    flex: 1;
    overflow: hidden;
    order: 2;
    max-width: calc(100% - 180px);
}

.carousel-track {
    display: flex;
    gap: 60px;
    transition: transform 0.5s ease;
    padding: 10px 10px 10px 10px;
    margin: -10px;
}

/* Posun carousel podľa aktívneho slide - zobrazujeme 2 karty naraz */
/* Pozícia 1: Karty 1 a 2 viditeľné */
#carousel-pos-1:checked ~ .carousel-container .carousel-track {
    transform: translateX(0);
}

/* Pozícia 2: Karty 2 a 3 viditeľné */
#carousel-pos-2:checked ~ .carousel-container .carousel-track {
    transform: translateX(-530px); /* -470px karta - 60px gap */
}

/* Pozícia 3: Karty 3 a 4 viditeľné */
#carousel-pos-3:checked ~ .carousel-container .carousel-track {
    transform: translateX(-1060px); /* -1060px = 2x(470px + 60px) */
}

.school-card {
    background: white;
    border: 1px solid rgba(8, 75, 124, 1);
    border-radius: 45px;
    padding: 55px 50px;
    min-width: 470px;
    max-width: 470px;
    min-height: 680px;
    max-height: 680px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 50px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.school-badge {
    background: rgba(232, 245, 255, 1) !important;
    color: rgba(8, 75, 124, 1) !important;
    padding: 25px 50px !important;
    border-radius: 12px !important;
    text-align: center !important;
    text-transform: uppercase !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 17px !important;
    line-height: 25px !important;
    letter-spacing: 0 !important;
    margin-bottom: -10px;
}

.school-info {
    display: flex;
    flex-direction: column;
    gap: 5px;
    flex: 1;
}

.school-footer {
    display: flex;
    gap: 60px;
    padding-top: 15px;
    justify-content: center;
}

.icon-img {
    object-fit: contain;
    transform: scale(0.8);
    margin: 0;
    padding: 0;
}

.school-location,
.school-budget {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
}

.school-location > div,
.school-budget > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    width: 100%;
}

.location-map {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 17px !important;
    line-height: 25px !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

.location-value,
.budget-value {
    color: rgba(0, 0, 0, 0.5);
    margin: 0;
    padding: 0;
    text-align: center;
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 17px;
    letter-spacing: 0;
    line-height: 1.3;
}

/* =========================================
   TABLET CAROUSEL: 1 karta, preklikávanie
   platí len keď sa zmestí 1 celá karta
   ========================================= */

/* Zapneme 1-kartu karusel pre šírky, kde sa 470px karta reálne zmestí */
@media (max-width: 1024px) and (min-width: 700px){

  .school-card{
    min-width: 470px !important;
    max-width: 470px !important;
    min-height: 680px !important;
    max-height: 680px !important;
  }
   /* OKNO carouselu = presne 1 karta */
  .carousel-container{
    flex: 0 0 470px !important;
    width: 470px !important;
    max-width: 470px !important;
    overflow: hidden !important;
    margin: 0 auto !important;     /* vycentruje okno */
  }

  /* nech sa zvyšok pekne vycentruje okolo */
  .school-carousel{
    justify-content: center !important;
  }

  /* gap nech ostane, ale nebude už “vykúkať” */
  .carousel-track{
    gap: 40px !important;
  }

  /* ===== ŠÍPKY: na tablete chceme 4 pozície ===== */

  /* ľavá šípka disabled iba na pos-1 */
  #carousel-pos-1:checked ~ .carousel-nav-left{
    opacity: 0.3;
    pointer-events: none;
  }
  #carousel-pos-2:checked ~ .carousel-nav-left,
  #carousel-pos-3:checked ~ .carousel-nav-left,
  #carousel-pos-4:checked ~ .carousel-nav-left{
    opacity: 1;
    pointer-events: auto;
  }

  /* pravá šípka disabled až na pos-4 (prepíše desktop pravidlo pre pos-3) */
  #carousel-pos-3:checked ~ .carousel-nav-right{
    opacity: 1 !important;
    pointer-events: auto !important;
  }
  #carousel-pos-4:checked ~ .carousel-nav-right{
    opacity: 0.3 !important;
    pointer-events: none !important;
  }

  /* zobraz správne labely */
  #carousel-pos-2:checked ~ .carousel-nav-left .nav-prev-from-2,
  #carousel-pos-3:checked ~ .carousel-nav-left .nav-prev-from-3,
  #carousel-pos-4:checked ~ .carousel-nav-left .nav-prev-from-4{
    display: block !important;
  }

  #carousel-pos-1:checked ~ .carousel-nav-right .nav-next-from-1,
  #carousel-pos-2:checked ~ .carousel-nav-right .nav-next-from-2,
  #carousel-pos-3:checked ~ .carousel-nav-right .nav-next-from-3{
    display: block !important;
  }

  /* ===== POSUN: 1 karta (470 + 40 gap = 510) ===== */
  #carousel-pos-1:checked ~ .carousel-container .carousel-track{ transform: translateX(0) !important; }
  #carousel-pos-2:checked ~ .carousel-container .carousel-track{ transform: translateX(-510px) !important; }
  #carousel-pos-3:checked ~ .carousel-container .carousel-track{ transform: translateX(-1020px) !important; }
  #carousel-pos-4:checked ~ .carousel-container .carousel-track{ transform: translateX(-1530px) !important; }
}


/* =========================================
   SMALL / MOBILE: nezmestí sa celá karta
   -> vypnúť karusel, šípky preč
   -> všetky karty pod seba (stack)
   ========================================= */

@media (max-width: 699.98px){

  /* vypnúť šípky */
  .carousel-nav-left,
  .carousel-nav-right{
    display: none !important;
  }

  /* kontajner nech pustí obsah */
  .carousel-container{
    max-width: 100% !important;
    overflow: visible !important;
  }

  /* track už nebude "carousel", ale stĺpec */
  .carousel-track{
    transform: none !important;
    transition: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 20px !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* karty užšie a responzívne */
  .school-card{
    width: 100% !important;
    max-width: 520px !important;      /* môžeš zmeniť */
    min-width: 0 !important;
    min-height: auto !important;
    max-height: none !important;
    padding: 32px 24px !important;
    gap: 24px !important;
    border-radius: 30px !important;
  }

  .school-badge{
    padding: 18px 22px !important;
    font-size: 14px !important;
    line-height: 20px !important;
  }

  .school-footer{
    gap: 24px !important;
  }
}

/* =========================================
   STATICKÝ VIEW (6 kariet: 2x3)
   ========================================= */

/* 1. Reset kontajnera */
.school-carousel-wrapper.static-view .carousel-container {
    max-width: 100% !important;
  padding-bottom: 200px !important;
    flex: 1;
    overflow: visible !important;
}

/* 2. Nastavenie tracku - MRIEŽKA */
.school-carousel-wrapper.static-view .carousel-track {
    display: flex !important;
    justify-content: center !important;
    align-items: flex-start !important;
    flex-wrap: wrap !important;
    
    /* KĽÚČOVÁ ZMENA: prvé číslo je riadok (150px), druhé je stĺpec (100px) */
    gap: 150px 100px !important;
    
    /* Šírka kontajnera: 
       470px (karta) + 470px (karta) + 100px (medzera) = 1040px.
       Dáme 1200px ako bezpečný strop, aby sa nezmestili 3 karty. */
    max-width: 1200px !important;       
    
    width: 100% !important;
    margin: 0 auto !important;
    padding: 20px 0 !important;
    transform: none !important;
}

/* 3. Úprava kariet */
.school-carousel-wrapper.static-view .school-card {
    width: 470px !important;
    max-width: 100% !important;
    min-width: auto !important; 
    flex: 0 0 auto !important; 
    margin: 0 !important;
    height: 680px !important;
}

/* --- RESPONZIVITA --- */

/* Tablet a menšie PC (pod 1150px)
   Tu musíme zmeniť rozloženie, pretože 470+470+100 = 1040px.
   Ak má obrazovka menej (plus paddingy), karty by sa rozbili.
   Preto ich dáme pod seba. */
@media (max-width: 1150px) {
    .school-carousel-wrapper.static-view .carousel-track {
        flex-direction: column; /* Všetky pod seba */
        align-items: center !important;
        gap: 80px !important;   /* Na tablete stačí menšia medzera */
        max-width: 100% !important;
    }
  
  .school-carousel-wrapper.static-view {
        /* Pôvodne tam je cca 170px, zmenšíme to na polovicu */
        padding-bottom: 0 !important;
    }
}

/* Mobil */
@media (max-width: 600px) {
    .school-carousel-wrapper.static-view .school-card {
        width: 100% !important;
        height: auto !important;
        padding: 30px 20px !important;
    }
    
    .school-carousel-wrapper.static-view .carousel-track {
        padding: 0 15px !important;
        gap: 50px !important; /* Na mobile ešte menšia medzera */
    }

  .school-carousel-wrapper.static-view {
        /* Na mobile ešte menej */
        padding-left: 15px !important; /* Menší bočný odstup */
        padding-right: 15px !important;
    }
}

.school-carousel-wrapper.static-view::after {
    display: none !important;
    content: none !important;
    height: 0 !important;
    margin-top: 0 !important;
}




/* Kontakt sekcia */
.kontakt-section {
  padding: 150px 15px;
  max-width: 1600px;
  margin: 0 auto;
}

.kontakt-box {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 70px;
  max-width: 1400px;
  margin: 0 auto;
}

.kontakt-left {
  flex-shrink: 0;
  width: 200px;
}

.kontakt-middle {
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex: 1;
  max-width: 380px;
  margin-left: auto;
}

.kontakt-right {
  display: flex;
  flex-direction: column;
  gap: 5px;
  flex: 1;
  max-width: 380px;
}

.kontakt-field input,
.kontakt-field textarea {
  width: 100%;
  padding: 18px 20px;
  font-family: 'Questrial', sans-serif !important;
  font-weight: 400 !important;
  line-height: 128% !important;
  color: rgba(8, 75, 124, 1);
  font-size: 17px;
  height: 70px;  /* opravené z "hight" */
  border: 1px solid rgba(8, 75, 124, 1);
  border-radius: 13px;
  outline: none;
}

.kontakt-field input:focus,
.kontakt-field textarea:focus {
  border-color: #084b7c;
  box-shadow: 0 0 0 3px rgba(8, 75, 124, 0.1);
}

.kontakt-field input::placeholder,
.kontakt-field textarea::placeholder {
  color: rgba(8, 75, 124, 1);
}

.kontakt-field textarea {
  height: 160px;
  resize: none;
}

.kontakt-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.kontakt-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.kontakt-checkbox input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 16px;
  height: 16px;
  min-width: 16px;
  border: 1px solid rgba(8, 75, 124, 1);
  border-radius: 50%;
  cursor: pointer;
  margin-top: 2px;
  position: relative;
}

.kontakt-checkbox input[type="checkbox"]:checked {
  background: #084b7c;
}

.kontakt-checkbox input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  background: #ffffff;
  border-radius: 50%;
}

.kontakt-checkbox label {
  font-family: 'Questrial', sans-serif !important;
  font-size: 17px !important;
  line-height: 128% !important;
  color: rgba(8, 75, 124, 1);
}

.kontakt-checkbox label a {
  color: rgba(8, 75, 124, 1);
  text-decoration: underline;
}

/* Responzivita - Tablet */
@media (max-width: 1200px) {
  .kontakt-box {
    flex-wrap: wrap;
  }
  
  .kontakt-left {
    width: 100%;
    margin-bottom: 20px;
  }
  
  .kontakt-middle,
  .kontakt-right {
    flex: 1;
    max-width: none;
    min-width: 280px;
  }
}

/* Responzivita - Mobil */
@media (max-width: 768px) {
  .kontakt-section {
    padding: 50px 15px;
  }
  
  .kontakt-box {
    flex-direction: column;
    gap: 30px;
  }
  
  .kontakt-left {
    text-align: center;
  }
  
  .kontakt-title {
    font-size: 36px;
  }
  
  .kontakt-middle,
  .kontakt-right {
    width: 100%;
    max-width: 100%;
  }
  
  .kontakt-bottom {
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
  }
  
  .kontakt-checkbox {
    justify-content: center;
  }
  
  .kontakt-btn {
    width: 100%;
    justify-content: center;
  }
}



/* Footer */
.footnav-1 .custom,
.footnav-1 .custom *,
.footnav-2 .custom,
.footnav-2 .custom * {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 17px !important;
    line-height: 25px !important;
    letter-spacing: 0 !important;
}

.footnav-1 .custom strong,
.footnav-1 .custom strong *,
.footnav-2 .custom strong,
.footnav-2 .custom strong * {
    font-weight: 700 !important;
}

/* Footer - základné štýly */
#t4-footnav {
    padding: 60px 0;
}

#t4-footnav .row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}

#t4-footnav .logo {
    display: flex;
    align-items: center;
}

#t4-footnav .logo-img {
    max-width: 200px;
    height: auto;
}

/* Tablet - stredné obrazovky */
@media (max-width: 992px) {
    #t4-footnav .row {
        gap: 30px;
    }
    
    #t4-footnav .logo {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 20px;
    }
    
    #t4-footnav .footnav-1,
    #t4-footnav .footnav-2,
    #t4-footnav .footnav-3 {
        flex: 0 0 calc(33.333% - 20px);
        max-width: calc(33.333% - 20px);
    }
}

/* Mobil - malé obrazovky */
@media (max-width: 768px) {
    #t4-footnav {
        padding: 40px 15px;
    }
    
    #t4-footnav .row {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 30px;
    }
    
    #t4-footnav .logo,
    #t4-footnav .footnav-1,
    #t4-footnav .footnav-2,
    #t4-footnav .footnav-3 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    
    #t4-footnav .logo {
        justify-content: center;
        margin-bottom: 10px;
    }
    
    #t4-footnav .logo-img {
        max-width: 180px;
    }
    
    #t4-footnav .custom p {
        margin-bottom: 15px;
    }
    
    #t4-footnav .footer-watermark {
        max-width: 150px;
    }
  
    #t4-footnav .logo {
        flex: 0 0 100%;
        max-width: 100%;
        justify-content: center;
        text-align: center;
        width: 100%;
    }
    
    #t4-footnav .logo .navbar-brand {
        display: flex;
        justify-content: center;
        width: 100%;
    }
    
    #t4-footnav .logo-img {
        margin: 0 auto;
    }
}

/* --- OPRAVA ROZLOŽENIA PRE MODUL 141 (Copyright lišta) --- */

/* 1. Skrytie prázdneho stĺpca pre nadpis (ten col-md-4) */
#Mod141 .module-head-group {
    display: none !important;
}

/* 2. Roztiahnutie obsahovej časti (pôvodne col-md-8) na 100% */
#Mod141 .module-ct {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important; /* Pre istotu zrušíme bočné paddingy */
}

/* 3. Úprava riadku, aby nerobil šarapatu */
#Mod141 .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
}

/* --- TU JE TVOJ PREDCHÁDZAJÚCI DIZAJN PRE TEXTY --- */

/* Základ pre texty */
.footer-content {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* PC a TABLET */
@media (min-width: 768px) {
    .footer-content {
        flex-direction: row;
        gap: 0;
    }

    .divider {
        display: block;
        width: 1px;
        height: 14px;
        background-color: rgba(255, 255, 255, 0.5);
        margin: 0 20px;
    }
    
    .copyright, .privacy {
        white-space: nowrap;
    }
}

/* MOBIL */
@media (max-width: 767.98px) {
    .footer-content {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }
    .divider { display: none; }
    .copyright, .privacy { white-space: normal; }
}



/* Sekcia - o spolocnosti */
.ed-about-intro{
  background: #fff;
  padding: 120px 15px;   /* hore/dole + bočné */
}

.ed-about-intro__inner{
  max-width: 900px;
  margin: 0 auto;       /* centrum kontajnera */
  text-align: center;   /* centrum textu */
}

.kariera-intro{
  background: #fff;
  padding: 150px 15px 0px 15px;   /* hore/dole + bočné */
}

/* Oddeľovač na konci sekcie */
.kariera-intro::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: rgba(8, 75, 124, 1);
  margin-top: 150px;
}

.kariera-btn {
  display: block; /* zmeň z inline-block na block */
  padding: 15px;
  background: rgba(232, 245, 255, 1);
  width: 250px;
  border: none;
  border-radius: 12px;
  color: #1a365d;
  text-decoration: none;
  font-size: 17px;
  font-family: 'Inter', sans-serif !important;
  text-align: center;
  margin-top: 20px;
  margin-left: auto;  /* pridaj */
  margin-right: auto; /* pridaj */
}

/* Sekcia 7: zruš obmedzenie containeru (správa sa ako sekcia 8) */
#t4-section-7 .t4-section-inner.container{
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Zruš medzery medzi stĺpcami/riadkami v sekcii 7 */
#t4-section-7 .t4-row.row{
  margin-left: 0 !important;
  margin-right: 0 !important;
}

#t4-section-7 .t4-col{
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Obrázkový stĺpec */
#t4-section-7 .section-7-spacer .custom{
  width: 100%;
  height: 100%;
  min-height: 520px;            /* daj rovnaké ako máš v 8, alebo uprav */
  background-size: cover;        /* ako v 8 = vyplní polovicu */
  background-position: center;
  background-repeat: no-repeat;
}

/* Sekcia 9: full width ako 7/8 */
#t4-section-9 .t4-section-inner.container,
#t4-section-11 .t4-section-inner.container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Zruš medzery medzi stĺpcami/riadkami v sekcii 9 */
#t4-section-9 .t4-row.row,
#t4-section-11 .t4-row.row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

#t4-section-9 .t4-col,
#t4-section-11 .t4-col {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Spacer stĺpec v sekcii 9 – background obrázok rovnako */
#t4-section-9 .section-9-spacer .custom,
#t4-section-11 .section-11-spacer .custom {
  width: 100%;
  height: 100%;
  min-height: 520px;           /* uprav ak treba */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Mobil – nech je to rovnako ako v 8 (ak tam chceš schovať obrázok) */
@media (max-width: 991.98px){
  #t4-section-7 .section-7-spacer{ display:none; }
}

/* Skryť tlačidlá */
#Mod109 .hero-btn-actions,
#Mod108 .hero-btn-actions,
#Mod160 .hero-btn-actions {
  display: none !important;
}


#t4-section-9 .t4-section-inner.container,
#t4-section-11 .t4-section-inner.container{
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
#t4-section-9 .t4-row.row,
#t4-section-11 .t4-row.row{
  margin-left: 0 !important;
  margin-right: 0 !important;
}
#t4-section-9 .t4-col,
#t4-section-11 .t4-col{
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media (min-width: 768px) and (max-width: 991.98px){
  #t4-section-9 .t4-col.section-9,
  #t4-section-11 .t4-col.section-11{
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  #t4-section-9 .t4-col.section-9-spacer{
    display: none !important; /* aby sa nesnažil držať layout */
  }
}

#t4-section-9 #Mod160,
#t4-section-9 #Mod160 .module-inner,
#t4-section-9 #Mod160 .module-ct,
#t4-section-9 #Mod166,
#t4-section-9 #Mod166 .module-inner,
#t4-section-9 #Mod166 .module-ct,
#t4-section-11 #Mod172,
#t4-section-11 #Mod172 .module-inner,
#t4-section-11 #Mod172 .module-ct {
  padding: 0 !important;
  border: 0 !important;
}

#t4-section-9 #Mod160,
#t4-section-9 #Mod166,
#t4-section-11 #Mod172{
  margin: 30px 0 !important;
}
#t4-section-9 #Mod160 .hero-content,
#t4-section-9 #Mod166 .hero-content,
#t4-section-11 #Mod172 .hero-content{
  padding: 60px 45px !important; /* top right bottom left */
}

@media (min-width: 1200px){
  #t4-section-9 #Mod160,
  #t4-section-9 #Mod166,
  #t4-section-11 #Mod172{
    margin: 100px 0 !important;
  }

  #t4-section-9 #Mod160 .hero-content,
  #t4-section-9 #Mod166 .hero-content,
  #t4-section-11 #Mod172 .hero-content{
    padding: 0 215px 0 0 !important; 
    text-align: left !important;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;   /* kľúč */
  }

  #t4-section-9 #Mod160 .hero-heading,
  #t4-section-9 #Mod160 .hero-intro,
  #t4-section-9 #Mod166 .hero-heading,
  #t4-section-9 #Mod166 .hero-intro,
  #t4-section-11 #Mod172 .hero-heading,
  #t4-section-11 #Mod172 .hero-intro {
    width: 354px !important;
    max-width: 354px !important;
    text-align: left !important;

    /* poistky proti iným štýlom */
    margin-left: 0 !important;
    margin-right: 0 !important;
    float: none !important;
  }
}

#t4-section-9 .hero-btn-actions,
#t4-section-11 .hero-btn-actions {
  display: flex !important;
  /* Toto zruší align-self, aby sa button vrátil do bloku k textu */
  align-self: flex-end !important; 
  /* Nastavíme rovnakú šírku ako máš pri textoch v CSS (354px) */
  width: 354px !important;
  max-width: 354px !important;
  /* Vynulujeme marginy, aby sa necentroval */
  margin-left: auto !important; 
  margin-right: 0 !important;
}

#t4-section-9 .hero-eurodotacie,
#t4-section-11 .hero-eurodotacie {
  /* Tlačidlo sa teraz zarovná na začiatok toho 354px širokého boxu */
  margin-left: 0 !important;
  margin-right: auto !important;
  display: inline-block !important;
  width: 250px;
}

/* TABLETY (cca od 768px do 1199px) */
@media (min-width: 768px) and (max-width: 1199.98px) {
  #t4-section-9 .hero-btn-actions,
  #t4-section-11 .hero-btn-actions {
    width: 100% !important;
    max-width: 100% !important;
    align-self: flex-start !important; /* Button skočí na začiatok (doľava) */
    justify-content: flex-start !important;
    margin-left: 0 !important;
    padding-left: 0 !important; /* Prispôsob podľa paddingu textu v tablete */
  }

  #t4-section-9 .hero-eurodotacie,
  #t4-section-11 .hero-eurodotacie {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* MOBILY (pod 767px) */
@media (max-width: 767.98px) {
  #t4-section-9 .hero-btn-actions,
  #t4-section-11 .hero-btn-actions {
    width: 100% !important;
    max-width: 100% !important;
    align-self: center !important; /* Zarovnanie obalu na stred */
    justify-content: center !important;
    margin: 70px 0 0 0 !important;
    padding: 0 0 !important; /* Bočný padding na mobile */
  }

  #t4-section-9 .hero-eurodotacie,
  #t4-section-11 .hero-eurodotacie {
    display: block !important;
    width: 100% !important; /* Roztiahnutie na celú šírku */
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: center !important;
  }
}

#t4-section-10 .hero-eurodotacie,
  #t4-section-12 .hero-eurodotacie {
    margin-bottom: 50px !important;
  }
}

/* --- FIX KLIKATEĽNOSTI PRE SEKCIU 10 a 12 --- */
#t4-section-10 .hero-content,
#t4-section-12 .hero-content {
  position: relative !important; /* Musí byť relative, aby fungoval z-index */
  z-index: 50 !important;        /* Vynúti, aby bol text NAD všetkým ostatným */
  pointer-events: auto !important; /* Poistka: povoľuje klikanie */
}

/* Pre istotu zdvihneme aj samotný button */
#t4-section-10 .hero-btn-actions,
#t4-section-12 .hero-btn-actions {
  position: relative !important;
  z-index: 51 !important;        /* Ešte o stupeň vyššie */
}

/* Pridanie medzery pred šípku v sekcii 9 a 11 */
#t4-section-9 .hero-eurodotacie strong,
#t4-section-11 .hero-eurodotacie strong {
  margin-left: 7px !important; /* Toto vytvorí tú peknú medzeru */
  display: inline-block;        /* Potrebné, aby margin fungoval správne */
}


/* --- SEKCE 10 a 12 (Obrázok vľavo, Text vpravo) --- */

/* Full-width nastavenie pre kontajnery sekcií 10 a 12 */
#t4-section-10 .t4-section-inner.container,
#t4-section-12 .t4-section-inner.container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Zrušenie medzier v riadkoch a stĺpcoch */
#t4-section-10 .t4-row.row, #t4-section-12 .t4-row.row,
#t4-section-10 .t4-col, #t4-section-12 .t4-col {
  margin: 0 !important;
  padding: 0 !important;
}

/* Nastavenie spaceru (obrázka) pre ľavú stranu v sekciách 10 a 12 */
#t4-section-10 .section-10-spacer .custom,
#t4-section-12 .section-12-spacer .custom {
  width: 100%;
  height: 100%;
  min-height: 520px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Reset paddingov a odstránenie horného marginu pre moduly 174 a 175 */
#t4-section-10 #Mod174,
#t4-section-12 #Mod175,
#t4-section-10 .module-inner, #t4-section-12 .module-inner,
#t4-section-10 .module-ct, #t4-section-12 .module-ct {
  padding: 0 !important;
  border: 0 !important;
  margin-top: 0 !important; /* Odstráni štandardný horný okraj modulu */
}

/* Layout textovej časti na pravej strane */
/* Layout textovej časti na pravej strane (Sekcie 10 a 12) */
@media (min-width: 1200px) {
  #t4-section-10 .hero-content,
  #t4-section-12 .hero-content {
    /* Padding ponecháme len zľava (215px) */
    padding: 0 0 0 215px !important; 
    
    /* Marginy zhora aj zdola */
    margin-top: 120px !important;
    margin-bottom: 120px !important;
    
    text-align: left !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    
    /* Ak chceš, aby marginy reálne odtláčali stĺpec, 
       zmeníme výšku z 100% na auto a zrušíme center */
    height: auto !important; 
    justify-content: flex-start !important;
  }

  /* Fixná šírka textu pre konzistenciu */
  #t4-section-10 .hero-heading, #t4-section-10 .hero-intro,
  #t4-section-12 .hero-heading, #t4-section-12 .hero-intro {
    width: 354px !important;
    max-width: 354px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* Responzivita pre tablety a mobily */
@media (max-width: 991.98px) {
  #t4-section-10 .section-10-spacer,
  #t4-section-12 .section-12-spacer {
    display: none !important;
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  
  #t4-section-10 .hero-content,
  #t4-section-12 .hero-content {
    padding: 40px 45px !important; /* Zmenšený padding pre mobilnú verziu */
    margin-top: 0 !important;
  }
}

/* --- OPRAVA PRE TABLETY (Sekcie 9, 10, 11, 12) --- */
@media (min-width: 768px) and (max-width: 991.98px) {
  /* Roztiahnutie textových stĺpcov na plnú šírku */
  #t4-section-9 .t4-col.section-9,
  #t4-section-11 .t4-col.section-11,
  #t4-section-10 .t4-col.section-10, /* Pridané */
  #t4-section-12 .t4-col.section-12 { /* Pridané */
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  /* Skrytie obrázkových spacerov, aby nezaberali miesto */
  #t4-section-9 .section-9-spacer,
  #t4-section-11 .section-11-spacer,
  #t4-section-10 .section-10-spacer, /* Pridané */
  #t4-section-12 .section-12-spacer { /* Pridané */
    display: none !important;
  }

  /* Úprava paddingu, aby text nebol nalepený na krajoch tabletu */
  #t4-section-10 .hero-content,
  #t4-section-12 .hero-content {
    padding: 60px 45px !important; 
    margin: 30px 0 !important;
  }
}


/* Úprava pre iPad Pro a stredné obrazovky (992px - 1199px) */
@media (min-width: 992px) and (max-width: 1199.98px) {
  
  /* Spoločné nastavenie pre textové stĺpce vo všetkých sekciách */
  #t4-section-10 .hero-content,
  #t4-section-12 .hero-content {
    /* Zmenšíme šírku textového bloku a pridáme bezpečnú rezervu */
    max-width: 95% !important; 
    margin-top: 50px !important;
    margin-bottom: 50px !important;
  }

  /* ŠPECIFICKY pre sekcie 10 a 12 (Obrázok vľavo, Text vpravo) */
  #t4-section-10 .hero-content,
  #t4-section-12 .hero-content {
    /* Zväčšíme ľavý padding, aby text nešiel do obrázka vľavo */
    padding: 0 0 0 50px !important; 
    align-items: flex-start !important;
  }
}









/* Služby info sekcia */
.sluzby-info-section {
  padding: 150px 10px 0px 10px;
  max-width: 1400px;
  margin: 0 auto;
}

.sluzby-info-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 120px 100px;  /* väčšia medzera medzi riadkami */
}

.sluzby-info-item {
  display: flex;
  flex-direction: column;
}

.sluzby-info-icon {
  margin-bottom: 10px;
}

.sluzby-info-icon img {
  width: 50px;
  height: 50px;
}

/* Medzera medzi nadpisom a textom */
.sluzby-info-item .hero-heading {
  margin-bottom: 35px;
}

.sluzby-info-list {
  list-style: disc;
  padding-left: 20px;
  margin: 0;
  font-family: 'Inter', sans-serif !important;
  font-weight: 400 !important;
  font-size: 17px !important;
  line-height: 25px !important;
  letter-spacing: 0 !important;
  color: rgba(0, 0, 0, 0.5);
}

.sluzby-info-list li {
  margin-bottom: 0px;
}

.sluzby-info-text {
  margin: 0;
  padding: 0;
  font-family: 'Inter', sans-serif !important;
  font-weight: 400 !important;
  font-size: 17px !important;
  line-height: 25px !important;
  letter-spacing: 0 !important;
  color: rgba(0, 0, 0, 0.5);
}

.sluzby-info-text + .sluzby-info-text {
    margin-top: 10px;
}

/* Oddeľovač na konci sekcie */
.sluzby-info-section::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: rgba(8, 75, 124, 1);
  margin-top: 200px;
}

/* Responzivita - Tablet */
@media (max-width: 992px) {
  .sluzby-info-section {
    padding: 60px 15px;
  }
  
  .sluzby-info-grid {
    gap: 50px 40px;
  }
  
  .sluzby-info-title {
    font-size: 26px;
  }
}

/* Responzivita - Mobil */
@media (max-width: 768px) {
  .sluzby-info-section {
    padding: 40px 15px;
  }
  
  .sluzby-info-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  
  .sluzby-info-title {
    font-size: 24px;
  }
  
  .sluzby-info-list li {
    font-size: 14px;
  }
}




/* Dotacie sekcia */
.calls{
  max-width: 1400px;
  margin: 0 auto;
  padding: 50px 40px 200px 40px;
  margin-bottom: -70px;
}

.calls__header{ 
  margin-bottom: 30px !important; 
  padding-bottom: 10px !important; /* odsadenie od čiary */ 
  border-bottom: 1px solid rgba(217, 217, 217, 1); /* tá “čiarka” */ 
}


/* FILTERS */
.calls__filters{
  background: rgba(232, 245, 255, 1);
  border-radius: 12px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin: 14px 0 18px;
  padding: 20px 34px;      /* hore/dole 20px, z bokov 34px */
  column-gap: 24px;        /* väčšia medzera medzi 2 filtrami */
  row-gap: 14px;
}

.calls__filter{
  display: grid;
  align-items: center;
  justify-content: start;          /* celý grid doľava */
  grid-template-columns: 170px 380px;
  gap: 20px;  
}
.calls__filters .calls__filter:nth-of-type(even) {
  grid-template-columns: 70px 380px;
}

.calls__filter .hero-eurodotacie {
  grid-column: 2;    /* Umiestniť do druhého stĺpca (tam kde sú selecty) */
  justify-self: end; /* Zarovnať na koniec tohto stĺpca (doprava) */
  width: auto;       /* Šírka podľa textu */
}

.calls_text{
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 17px !important;
  line-height: 25px !important;
  letter-spacing: 0 !important;
  height: 50px;
  display: flex;
  align-items: center;   /* vertikálne vycentruje text v labeli */
  margin: 0;  
}


.calls__select{
  width: 100%;
  max-width: 380px;
  height: 50px;
  justify-self: start;
  border-radius: 13px;
  border: 1px solid rgba(8, 75, 124, 1);
  background: rgba(255, 255, 255, 1);
  padding: 0 40px 0 14px;
  outline: none;
  font-family: 'Questrial', sans-serif !important;
  font-weight: 400 !important;
  font-size: 17px !important;
  line-height: 25px !important;
  letter-spacing: 0 !important;
  color: rgba(8, 75, 124, 1);
  background: rgba(255, 255, 255, 1);
  appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='%23084b7c' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 18px center;
}

.calls__select:focus{
  outline: none;
  border-color: rgba(8, 75, 124, 1);
  box-shadow: 0 0 0 3px rgba(8, 75, 124, 0.1);
}

/* CARD */
.call-card{
  background: rgba(255, 255, 255, 1);
  border-radius: 12px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
  overflow: hidden;
  margin-bottom: 50px;
}

.call-card:last-of-type{
  margin-bottom: 0;
}

.call-card__topline{
  height: 6px;
  background: rgba(8, 75, 124, 1);
}

.call-card__head{
  padding: 34px 34px 0px;
}

.call-card__badges{
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
  margin-bottom: 30px;
}

.badge{
  display: inline-flex;
  align-items: center;
  height: 42px;
  padding: 0 30px;
  border-radius: 114px;
  font-family: 'Questrial', sans-serif !important;
  font-weight: 700 !important;
  font-size: 17px !important;
  line-height: 128% !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
  color: rgba(255, 255, 255, 1);
}

.badge--code{
  background: rgba(8, 75, 124, 1);
}

.badge--active{
  background: rgba(63, 188, 38, 1);
}

.badge--closed{
  background: rgba(237, 32, 39, 1);
}

/* BODY */
.call-card__body{
  padding: 10px 34px 20px;
}

.call-card__row{
  display: grid;
  grid-template-columns: 220px 1fr; /* 1. stĺpec názov, 2. hodnota */
  gap: 14px;
  align-items: start;
  padding: 12px 0;
  border-top: 1px solid var(--line);
}

.call-card__cell{
  background: rgba(248, 249, 250, 1);
  border-radius: 12px;
  padding: 15px 40px;
}

/* riadok bez čiary */
.call-row--box{
  grid-template-columns: 1fr !important;  /* lebo vnútri je len 1 cell */
  border-top: 0 !important;
  padding: 5px 0;
}

/* samotná „bunka“ sa správa ako key/value */
.call-row--box__cell{
  display: grid;
  grid-template-columns: 220px 1fr;
  column-gap: 10px;        /* ako pri ostatných */
  align-items: center;     /* vycentruje label podľa výšky hodnoty */
}

/* aby marginy nerobili bordel */
.call-row--box__cell .card-text,
.call-row--box__cell .hero-intro{
  margin: 0;
}

.call-card__cell--datewide{
  min-width: 270px;   /* nastav podľa potreby */
  width: 100%;
}

.card-text{
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 17px !important;
  line-height: 25px !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

.pill{
  display: inline-flex;
  align-items: center;
  padding: 10px 30px;
  border-radius: 114px;
  font-family: 'Inter', sans-serif !important;
  font-weight: 400 !important;
  font-size: 17px !important;
  line-height: 128% !important;
  letter-spacing: 0 !important;
  color: rgba(8, 75, 124, 1);
  background: rgba(248, 249, 250, 1);
}

/* pillky vpravo: medzera medzi nimi aj pri zalomení */
.call-row--kv .hero-intro{
  display: flex;
  flex-wrap: wrap;
  gap: 12px;          /* medzera vedľa aj pod sebou */
  align-items: center;
}

/* Key/Value riadky ako na obrázku */
.call-row--kv{
  display: grid;
  grid-template-columns: 220px 1fr;  /* ľavý label / pravá hodnota */
  column-gap: 50px;                  /* požadovaný gap */
  row-gap: 0;
  align-items: center;               /* <-- ľavý text vertikálne podľa pravej hodnoty */
  padding: 22px 0;                   /* výška riadku (doladíš) */
  border-top: none !important;
  border-bottom: 1px solid rgba(217, 217, 217, 1);  /* čiara pod každým riadkom */
}

/* zruš default marginy, aby to nelietalo */
.call-row--kv .card-text,
.call-row--kv .hero-intro{
  margin: 0;
}

/* ak chceš aby pravá strana mala rovnakú “baseline” feeling */
.call-row--kv .hero-intro{
  align-self: center;
}


/* ACTIONS */
.call-card__actions{
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 50px 0px 34px;
}

.eurodotacie_detail {
    background-color: rgba(8, 75, 124, 1) !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 12px 25px !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    font-size: 17px !important;
    color: #FFFFFF !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    text-decoration: none !important;
}

.eurodotacie_detail:hover {
    background-color: #073F68 !important;
    color: #FFFFFF !important;
}

/* PAGINATION – meta vľavo, pager vpravo */
.calls__pagination{
  display: flex !important;
  align-items: center !important;
  justify-content: space-between;
  gap: 18px;
  margin-top: 100px;
  padding-top: 14px;
}

/* text vľavo */
.calls__pagination-meta{
  font-family: 'Inter', sans-serif !important;
  font-weight: 400 !important;
  font-size: 17px !important;
  line-height: 25px !important;
  color: rgba(8, 75, 124, 1) !important;
  white-space: nowrap;
  align-items: center;
  display: flex;
}

/* pager vpravo v 1 riadku */
.pager{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0;              /* väčšie rozostupy */
  flex-wrap: nowrap;      /* nezalamovať */
}

/* tlačidlá */
.pager__btn{
  height: 45px;
  padding: 0 18px;
  border-radius: 12px;
  border: 0;
  background: rgba(232, 245, 255, 1);
  color: rgba(8, 75, 124, 1);
  font-family: 'Inter', sans-serif !important;
  font-weight: 400 !important;
  font-size: 17px !important;
  line-height: 25px !important;
  text-decoration: none;
  margin: 0 12px;
}

/* čísla strán */
.pager__num{
  width: 45px;
  height: 45px;
  border-radius: 999px;
  border: 0;
  background: rgba(232, 245, 255, 1);
  color: rgba(8, 75, 124, 1);
  font-family: 'Inter', sans-serif !important;
  font-weight: 400 !important;
  font-size: 17px !important;
  line-height: 25px !important;
  text-decoration: none;
  margin: 0 4px; 
}

.pager__btn,
.pager__num{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1 !important; /* aby line-height netlačil text hore/dole */
}

/* aktívna stránka */
.pager__num.is-active{
  background: rgba(8, 75, 124, 1) !important;
  color: rgba(255, 255, 255, 1) !important;
}

/* hover efekt jemný */
.pager__btn:hover,
.pager__num:hover{
  background: rgba(210, 235, 255, 1);
}

.pager__btn:first-child{ margin-left: 0; }
.pager__btn:last-child{ margin-right: 0; }

/* ==========================
   RESPONSIVE (doplnok)
   prilep na koniec CSS
   ========================== */


/* 1. Menšie notebooky a iPad Air (1025px - 1200px) */
/* menšie notebooky */
@media (max-width: 1200px){
  .calls{
    padding: 80px 28px 200px 28px;
  }

 .calls__filters{
    grid-template-columns: 1fr !important; /* pod seba */
    column-gap: 0 !important;
    row-gap: 12px !important;
  }

  .calls__filter{
    grid-template-columns: 1fr !important; /* label nad select */
    gap: 8px !important;
  }
  
  .calls_text{
    height: auto !important; /* nech sa prispôsobí, keď je label hore */
  }

  .calls__select{
    width: 100% !important;
    max-width: none !important; /* zruší 380px limit */
  }

  .call-card__head{
    padding: 28px 28px 0;
  }
  .call-card__body{
    padding: 10px 28px 18px;
  }
  .call-card__cell{
    padding: 14px 28px;
  }
  .call-card__badges{
    gap: 16px;
    margin-bottom: 22px;
  }
}
/* tablet */
@media (max-width: 1024px){
  .calls{
    padding: 70px 22px 180px 22px;
  }

 .calls__filters{
    grid-template-columns: 1fr !important; /* pod seba */
    column-gap: 0 !important;
    row-gap: 12px !important;
  }

  .calls__filter{
    grid-template-columns: 1fr !important; /* label nad select */
    gap: 8px !important;
  }
  
  .calls_text{
    height: auto !important; /* nech sa prispôsobí, keď je label hore */
  }

  .calls__select{
    width: 100% !important;
    max-width: none !important; /* zruší 380px limit */
  }

  /* key/value riadky – trochu menší gap */
  .call-row--kv{
    grid-template-columns: 200px 1fr;
    column-gap: 28px;
    padding: 18px 0;
  }

  /* box (poskytovateľ) */
  .call-row--box__cell{
    grid-template-columns: 200px 1fr;
    column-gap: 18px;
  }

  /* actions – nech sa nelámu divne */
  .call-card__actions{
    padding: 34px 0 28px;
    flex-wrap: wrap;
    gap: 12px;
  }
   .calls__pagination{
    flex-direction: column !important;
    align-items: center !important;
    gap: 20px !important;
  }

  .calls__pagination-meta{
    height: auto !important;
  }

  .pager{
    flex-wrap: wrap !important;
  }
  /* menšie medzery */
  .pager__btn{
    margin: 0 6px !important;   /* bolo 12px */
  }
  .pager__num{
    margin: 0 3px !important;   /* bolo 4px */
  }

  /* aby prvý/posledný neodskakovali */
  .pager__btn:first-child{ margin-left: 0 !important; }
  .pager__btn:last-child{ margin-right: 0 !important; }
}

/* 3. Mobil (do 640px) */
@media (max-width: 640px) {
  .calls {
    padding: 55px 16px 150px 16px;
  }

  .calls__header { margin-bottom: 22px !important; }

  /* Filtre - všetko pod seba */
  .calls__filter { 
    grid-template-columns: 1fr !important; 
    gap: 8px !important; 
  }
  
  .calls_text { height: auto; }
  
  /* Select box na 100% šírku */
  .calls__select { 
    height: 48px; 
    max-width: none; 
    width: 100% !important; 
  }

  /* --- NOVÉ: Tlačidlo Vyhľadať vo filtri na 100% šírku --- */
  .calls__filter .hero-eurodotacie {
    width: 100% !important;       /* Roztiahnuť na celú šírku */
    max-width: none !important;
    grid-column: auto !important; /* Zrušiť desktopové zarovnanie do 2. stĺpca */
    justify-self: stretch !important; /* Roztiahnuť v gride */
    display: flex;                /* Aby sa text vycentroval */
    justify-content: center;      /* Zarovnanie textu na stred */
    box-sizing: border-box;
  }

  /* Card paddingy */
  .call-card__head { padding: 22px 18px 0; }
  .call-card__body { padding: 10px 18px 16px; }
  .call-card__cell { padding: 14px 18px; }
  .call-card__badges { gap: 12px; margin-bottom: 18px; }

  /* KV riadky pod seba */
  .call-row--kv {
    grid-template-columns: 1fr;
    row-gap: 8px;
    column-gap: 0;
    align-items: start;
    padding: 16px 0;
  }

  .call-row--box__cell {
    grid-template-columns: 1fr;
    row-gap: 8px;
    column-gap: 0;
    align-items: start;
  }

  .call-card__cell--datewide { min-width: 0; }
  .pill { padding: 10px 18px; font-size: 15px !important; }

  /* Actions (tlačidlá v karte) */
  .call-card__actions {
    flex-direction: column;
    align-items: stretch;
    padding: 26px 0 22px;
  }
  
  /* Tlačidlá v karte tiež na 100% */
  .eurodotacie_detail, .hero-eurodotacie { 
    width: 100%; 
    justify-content: center; 
  }

  /* Pagination */
  .calls__pagination {
    flex-direction: column;
    align-items: center !important;
    gap: 12px;
    margin-top: 60px;
  }
  .calls__pagination-meta { height: auto; }
  
  .pager { 
    display: flex; 
    flex-wrap: wrap; 
    justify-content: center; 
    row-gap: 14px; 
  }
  
  .pager__btn { margin: 0 6px !important; padding: 0 16px; }  
  .pager__num { margin: 0 3px !important; }
}

/* mobil */
@media (max-width: 640px){
  .calls{
    padding: 55px 16px 120px 16px;
  }

  .calls__header{
    margin-bottom: 22px !important;
  }

  /* filtre: label nad select */
  .calls__filter{
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .calls_text{
    height: auto;
  }

  .calls__select{
    height: 48px;
    max-width: none;
    width: 100%;
  }

  /* card paddingy */
  .call-card__head{
    padding: 22px 18px 0;
  }
  .call-card__body{
    padding: 10px 18px 16px;
  }
  .call-card__cell{
    padding: 14px 18px;
  }

  /* badges menšie rozostupy */
  .call-card__badges{
    gap: 12px;
    margin-bottom: 18px;
  }

  /* key/value riadky: pod seba */
  .call-row--kv{
    grid-template-columns: 1fr;
    row-gap: 8px;
    column-gap: 0;
    align-items: start;
    padding: 16px 0;
  }

  /* box (poskytovateľ): tiež pod seba */
  .call-row--box__cell{
    grid-template-columns: 1fr;
    row-gap: 8px;
    column-gap: 0;
    align-items: start;
  }

  /* dátum – nech nie je min-width */
  .call-card__cell--datewide{
    min-width: 0;
  }

  /* pillky nech sa lepšie lámu */
  .pill{
    padding: 10px 18px;
    font-size: 15px !important;
  }

  /* actions pod seba */
  .call-card__actions{
    flex-direction: column;
    align-items: stretch;
    padding: 26px 0 22px;
  }
  .eurodotacie_detail,
  .hero-eurodotacie{
    width: 100%;
    justify-content: center;
  }

  /* pagination pod seba */
  .calls__pagination{
    flex-direction: column;
    align-items: center !important;
    gap: 12px;
    margin-top: 60px;
  }
  .calls__pagination-meta{
    height: auto;
  }
  .pager{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;   /* nech je to v strede */
    row-gap: 14px;             /* medzera medzi riadkami */
  }

  .pager__btn{ 
    margin: 0 6px !important; /* aby pri wrape boli pekné medzery */ 
    padding: 0 16px;
  } 
  
  .pager__num{ 
    margin: 0 3px !important; 
  }
}





/* Referencie sekcia */
.vysledky-section {
  padding: 0px 15px 150px 15px;
  max-width: 1400px;
  margin: 0 auto;
}

.vysledky-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 60px 150px;
  max-width: 1400px;
  margin: 0 auto;
}

.vysledky-item {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}

.vysledky-icon {
  flex-shrink: 0;
  width: 50px;
  height: 50px;
}

.vysledky-icon img {
  width: 100%;
  height: 100%;
}

.referencia{
  background: #fff;
  padding: 120px 15px 80px 15px;   /* hore/dole + bočné */
}

.datum-vpravo {
  text-align: left;        /* Zarovnanie doprava */
  width: 100%;              /* Aby sa prvok roztiahol na celú šírku */
  font-family: 'Inter', sans-serif;
  
}

/* Responzivita - Tablet */
@media (max-width: 992px) {
  .vysledky-grid {
    gap: 40px 60px;
  }
  .referencia{
  padding: 120px 15px 60px 15px;   /* hore/dole + bočné */
  }
}

/* Responzivita - Mobil */
@media (max-width: 768px) {
  .vysledky-section {
    padding: 0px 15px 130px 15px;
  }
  
  .vysledky-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  
  .vysledky-item {
    gap: 15px;
  }
  
  .vysledky-icon {
    width: 40px;
    height: 40px;
  }
  .referencia{
  padding: 120px 15px 40px 15px;   /* hore/dole + bočné */
  }
}


/* Referencie sekcia */
.referencie-section {
  padding: 20px 15px 0 15px;
  max-width: 1400px;
  margin: 0 auto;
}

.referencia-item{
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 50px 0;
  gap: 100px;
  border-top: none;
  overflow: visible;
}

/* horná čiara pre každý item */
.referencia-item::before{
  content: "";
  position: absolute;
  top: 0;
  left: -50px;
  right: -50px;
  height: 1px;
  background: rgba(8, 75, 124, 1);
}

/* spodná čiara len pre posledný item */
.referencia-item:last-child{
  border-bottom: none; /* vypneme border */
}

.referencia-item:last-child::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: -50px;
  right: -50px;
  height: 1px;
  background: rgba(8, 75, 124, 1);
}

.referencia-content {
  flex: 1;
  max-width: 600px;
}

/* Mesto - hrubé písmo */
.referencia-content .hero-intro strong,
.referencia-content > strong .hero-intro,
.referencia-content > strong > .hero-intro {
  font-weight: 700 !important;
}

.referencia-logo {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.referencia-logo img {
  width: auto;
  height: auto;
  max-height: 150px;
}

/* Responzivita - Tablet */
@media (max-width: 992px) {
  .referencia-item {
    padding: 40px 0;
  }

  .referencia-logo img {
    max-width: 220px; /* voliteľné, aby logo nebolo obrovské */
  }
}

/* Responzivita - Mobil */
@media (max-width: 768px) {
  .referencie-section {
    padding: 40px 15px;
  }
  
  .referencia-item {
    flex-direction: column;
    text-align: center;
    padding: 30px 0;
    gap: 20px; /* nech to nie je natlačené */
  }
  
  .referencia-content {
    max-width: 100%;
    order: 1; /* TEXT prvý */
  }
  
  .referencia-logo {
    margin-left: 0;
    margin-top: 20px;   /* radšej top než bottom, keď je logo pod textom */
    margin-bottom: 0;
    order: 2; /* OBRÁZOK druhý */
    justify-content: center;
  }

  .referencia-logo img {
    max-height: 100px; /* voliteľné, aby logo nebolo obrovské */
  }
  .referencia-item::before,
  .referencia-item:last-child::after {
    left: 0;
    right: 0;
  }
}






/* Kontakt info sekcia */
.kontakt-info-section {
  padding: 120px 15px;
  max-width: 1400px;
  margin: 0 auto;
}

.kontakt-info-box {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 250px;
  max-width: 1350px;
  margin: 0 auto;
}

.kontakt-info-left {
  flex: 1;
  max-width: 600px;
}

.kontakt-info-divider {
  width: 1px;
  background: #084b7c;
  align-self: stretch;
}

.kontakt-info-right {
  flex: 1;
  max-width: 600px;
}

.kontakt-info-group {
  margin-bottom: 30px;
}

.kontakt-info-group:last-child {
  margin-bottom: 0;
}

.kontakt-info-section .sluzby-title {
  margin-bottom: 25px;
}


/* Tablet - stredné obrazovky */
@media (max-width: 1200px) {
  .kontakt-info-box {
    gap: 150px;
  }
}

@media (max-width: 992px) {
  .kontakt-info-box {
    gap: 80px;
  }
  
  .kontakt-info-left,
  .kontakt-info-right {
    max-width: 400px;
  }
}

/* Mobil - malé obrazovky */
@media (max-width: 768px) {
  .kontakt-info-section {
    padding: 60px 15px;
  }
  
  .kontakt-info-box {
    flex-direction: column;
    gap: 40px;
    text-align: left;
    align-items: flex-start;
  }
  
  .kontakt-info-divider {
    width: 100%;
    height: 1px;
    align-self: auto;
  }
  
  .kontakt-info-left,
  .kontakt-info-right {
    max-width: 100%;
    width: 100%;
  }
}


/* Regióny sekcia */
.regiony-section {
  padding: 80px 15px;
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  background: rgba(232, 245, 255, 1);
}

.regiony-section .hero-heading {
  text-align: center;
  margin-bottom: 100px;
}

.regiony-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 120px;
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 50px;
}

.regiony-item {
  display: flex;
  flex-direction: column;
}

.regiony-section .sluzby-title {
  margin-bottom: 25px;
}

/* Responzivita - Tablet */
@media (max-width: 992px) {
  .regiony-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 60px;
    padding: 0 30px;
  }
}

/* Responzivita - Mobil */
@media (max-width: 768px) {
  .regiony-section {
    padding: 60px 15px;
  }
  
  .regiony-grid {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 0 15px;
  }
  
  .regiony-section .hero-heading {
    margin-bottom: 60px;
  }
}


/* Header - transparentný, nad mastheadom */
#t4-header {
  position: absolute !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background: transparent !important;
}
/* Keď je stránka scrollovaná - modrý header */
#t4-header.sticky,
#t4-header.is-sticky,
#t4-header.t4-sticky.sticky,
.t4-wrapper.sticky #t4-header,
body.sticky #t4-header,
body.not-at-top #t4-header {
  position: fixed !important;
  background: #084b7c !important;
}
/* Masthead - od úplného vrchu stránky, za headerom */
#t4-masthead {
  position: relative;
  width: 100%;
  min-height: 450px;
  padding: 0 !important;
  margin-top: -80px !important;
  padding-top: 0 !important;
}
#t4-masthead .bg-overlay {
  display: none !important;
}
#t4-masthead .t4-section-inner {
  max-width: 100% !important;
  padding: 0 !important;
  width: 100%;
}
/* Tmavý overlay na masthead */
#t4-masthead .ja-masthead::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: rgba(0, 0, 0, 0.5) !important;
  z-index: 1 !important;
  pointer-events: none;
}
#t4-masthead .ja-masthead {
  position: relative;
  width: 100%;
  min-height: 450px;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 0;
  background-blend-mode: darken;
  background-color: rgba(0, 0, 0, 0.5) !important;
}
#t4-masthead .ja-masthead .container {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 15px;
  display: flex;
  justify-content: center;
}
/* Text na stred */
#t4-masthead .ja-masthead-detail {
  padding: 70px 0;
  text-align: center;
}
#t4-masthead .ja-masthead-title {
  font-family: 'Questrial', sans-serif !important;
  font-size: 40px;
  font-weight: 700;
  color: rgba(255, 255, 255, 1);
  margin-bottom: 20px;
}
#t4-masthead .ja-masthead-description {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 17px;
  color: rgba(255, 255, 255, 1);
}
/* Odstráni medzeru pred mastheadom */
.t4-content,
.t4-content-inner {
  padding-top: 0 !important;
}



/* Off-canvas mobilné menu */
/* Header v off-canvas */
.t4-off-canvas-header {
  background: #084b7c !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  padding: 20px !important;
}

/* Body off-canvas */
.t4-off-canvas-body {
  padding: 30px 20px !important;
}

/* Položky menu */
.t4-off-canvas-body .nav-link,
.t4-offcanvas .navbar-nav .nav-link,
.t4-off-canvas-body .menu-item-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  color: rgba(8, 75, 124, 1) !important;
  padding: 5px 0 !important;
  display: block;
}

/* Aktívna položka */
.t4-offcanvas .nav-item.active .nav-link,
.t4-offcanvas .nav-item.current .nav-link,
.t4-offcanvas .nav-item.active .menu-item-title,
.t4-offcanvas .nav-item.current .menu-item-title {
  font-weight: 700 !important;;
}




/* Plan obnovy */
.kontakt-img-wrapper {
    display: flex !important;
    justify-content: flex-start !important;
    margin-top: 20px !important;
    /* Tento riadok posúva celý kontajner doľava */
    margin-left: -15px !important; 
}

.kontakt-img-wrapper img {
    margin-left: 0 !important;
    margin-right: auto !important;
    display: block !important;
    max-width: 200px; /* Uprav si veľkosť podľa potreby */
    height: auto;
}

/* Tablet a PC - zarovnanie doľava so záporným marginom */
@media (min-width: 769px) {
    .kontakt-img-wrapper {
        display: flex !important;
        justify-content: flex-start !important;
        margin-left: -15px !important; /* tvoj požadovaný posun */
    }
    .kontakt-img-wrapper img {
        margin-left: 0 !important;
        margin-right: auto !important;
    }
}

/* Mobil (telefón) - zarovnanie na stred */
@media (max-width: 768px) {
    .kontakt-img-wrapper {
        display: flex !important;
        justify-content: center !important; /* toto hodí logo na stred */
        margin-left: 0 !important; /* na mobile zrušíme ten záporný posun */
        margin-top: 20px !important;
        width: 100% !important;
    }
    .kontakt-img-wrapper img {
        margin-left: auto !important;
        margin-right: auto !important;
        max-width: 180px; /* veľkosť loga na mobile */
    }
}

.ed-about-plan__inner h2 {
  margin-bottom: 20px !important; /* Tu si nastavíš veľkosť medzery */
  line-height: 1.2;               /* Nadpisy zvyčajne vyzerajú lepšie s menším riadkovaním */
}
