/*
Theme Name: META o.p.s.
Theme URI:
Author: Pavel Ovesny
Author URI: https://weby.pavelovesny.cz
Description: Theme META o.p.s.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags:
*/

/* general */

html {
  scroll-behavior: smooth;
}

body {
  background: #fff;
  color: #193C7E;
  font-family: "Inter", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-weight: 400;
  padding-top: 72px;
}

body.admin-bar .site-header {
  top: 32px; /* posune fixní header pod admin lištu */
}

h1, h2, h3 {
  padding: 0;
  margin: 0 0 1em 0;
  line-height: 1.2;
}

h1 {
  font-size: 64px;
  font-weight: 600;
  margin-bottom: 60px;
}

.fullpage-title h1 {
  padding: 64px 0;
  margin-bottom: 0; 
}

h2 {
  font-size: 45px;
  font-weight: 600;
}

h3 {
  font-size: 24px;
  font-weight: 700;
}

p {
  padding: 0 0 1em 0;
  margin: 0;
}

a {
  color: #193C7E; 
  text-decoration: none;
}

a img, a:hover img {
  text-decoration: none;
}


/* table */

table {
  border: 1px solid #193C7E;
  background: #E5F1FF;
  padding: 0 15px;
  width: 100%;
}

td, th {
  padding: 5px;
}


/* menu */

.site-header {
  height: 70px;
  border-bottom: 2px solid #8b9dbe; 
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background: #fff;
  background-clip: padding-box;
}

.header-service,
.site-header .container {
  display: flex;
  margin: 0 auto;
  justify-content: space-between;
  align-items: center;
}

.header-service {
  margin: 0;
}

#logo {
  display: flex;
  width: 300px;
  height: 68px;
  align-items: center; 
}

.logo-home-meta {
  margin-top: 6px;
}

.navbar {
  width: 100%;
}

.main-navigation {
  flex-grow: 1;
}

nav.main-navigation ul {
  width: 100%;
  margin: 0;
  list-style-type: none;
  display: flex;
  justify-content: flex-end;
  padding-left: 0;
  padding-right: 1em;
}

nav.main-navigation ul li {
  padding: 0 5px;
  margin: 0 5px;
  font-weight: 400;
  position: relative;
  cursor: default;
}

nav.main-navigation ul li a {
  color: #193C7E;
  font-weight: 400;
}

nav.main-navigation ul li .dashicons {
  line-height: 1.4;
  font-weight: 300;
  margin-left: -2px;
  margin-top: 2px;
  width: 15px;
  height: 15px;
  font-size: 15px;
}

nav.main-navigation ul li ul {
  display: none;
  position: absolute; 
  z-index: 100; /* Ensure the dropdown is above other content */
  top: 100%;
  left: 0;
  width: 220px;
  background-color: #fff;
  border-radius: 10px;
  padding: 2px 0;
}

nav.main-navigation ul li:hover > ul {
  display: block; /* Show dropdown */
} 

/* nav.main-navigation ul li:hover,
nav.main-navigation ul li.current-menu-parent,
ul li:has(> ul li.current-menu-ancestor) {
  background: #fff;
  border-radius: 10px;
} */

.mobile-navigation .menu-item-has-children > a::after,
nav.main-navigation .menu-item-has-children > a::after {
  content: "\f347"; /* Dashicons: arrow-down */
  font-family: dashicons;
  font-size: 12px;
  margin-left: 4px;
  position: relative;
  top: 2px;
  color: inherit; /* přebírá barvu textu menu */
}

nav.main-navigation ul li ul::before {
  content: "";
  position: absolute;
  top: -5px; /* Posun trojúhelníku nad submenu */
  left: 30px; /* Posun do poloviny šířky */
  transform: translateX(-50%); /* Vycentrování */
  border-width: 0 15px 15px 15px; /* Nastavení výšky a šířky trojúhelníku */
  border-style: solid;
  border-color: transparent transparent #fff transparent;
}

nav.main-navigation ul li ul li {
  display: block;
  background-color: #fff;
  width: 200px;
  line-height: 35px;
  text-align: left;
  font-size: 15px;
  border: 1px solid #fff;  
}

nav.main-navigation ul li ul li:hover {
  border: 1px solid #fff;  
}

.menu-item-448,
.menu-item-288 {
  display: none; /* skrytí odkazu home na desktopu */
}

.menu-toggle {
  display: none;
  cursor: pointer;
  padding: 0 0 0 10px;
}

.dashicons-menu {
  font-size: 30px !important;
  width: 30px !important;
  height: 30px !important;
}

.mobile-navigation {
  display: none;
}

/* language switcher */

.wpml-ls-legacy-dropdown {
  width: 80px;
  max-width: 100%;
}

.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle {
  padding-right: 12px;
}

.wpml-ls-legacy-dropdown .wpml-ls-current-language:hover > a, 
.wpml-ls-legacy-dropdown a:focus, .wpml-ls-legacy-dropdown a:hover {
  color: #000;
  background: #fff;  
}

.wpml-ls-legacy-dropdown a {
  background: #fff;
  border-radius: 10px;
  border: 1px solid #193C7E;
  color: #193C7E;
}

.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle::after {
  content: "\f347" !important;
  font-family: dashicons !important;
  border: 0 !important;
  right: 0 !important;
  top: 7px !important;
  margin-right: 3px;
}

.wpml-ls-legacy-dropdown .wpml-ls-sub-menu {
  border-top: 0;
}

.wpml-ls-legacy-dropdown .wpml-ls-current-language:hover > a, 
.wpml-ls-legacy-dropdown a:focus, .wpml-ls-legacy-dropdown a:hover {
  border-radius: 10px 10px 0 0;
  border-bottom: 1px solid #fff;
}

.wpml-ls-legacy-dropdown .wpml-ls-current-language:hover .wpml-ls-sub-menu {
  border-radius: 0 0 10px 10px;
  border: 1px solid #193C7E;
  border-top: 1px solid #fff;
}

.wpml-ls-legacy-dropdown .wpml-ls-current-language:hover .wpml-ls-sub-menu a {
  border: 0;
  border-radius: 0;
}

.wpml-ls-legacy-dropdown .wpml-ls-current-language:hover .wpml-ls-sub-menu .wpml-ls-last-item a {
  border: 0;
  border-radius: 0 0 10px 10px;
}


/* kosik */

.site-header-cart {
  display: block;
  position: relative;
  width: 55px;
}

.site-header-cart .cart-contents {
  position: relative;
}

.site-header-cart .dashicons {
  height: 25px;
  font-size: 25px;
  margin-top: -1px;
  margin-right: 0;
}

.site-header-cart .item-number {
  background: #193C7E;
  border-radius: 50%;
  color: #fff;
  font-size: 12px;
  height: 14px;
  line-height: 14px;
  min-width: 14px;
  position: absolute;
  right: -10px;
  text-align: center;
  top: -6px;
}


/* search */

.search-icon {
  margin-right: 18px;
}

.search-icon .dashicons-search {
  cursor: pointer;
  width: 24px;
  height: 24px;
  font-size: 24px;
}

.search-popup {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9999;
  justify-content: center;
  align-items: center;
}

/* Vnitřní obsah pop-up okna */

.search-popup-content {
  background: #fff;
  padding: 2em;
  border-radius: 1em;
  position: relative;
  width: 300px;
  display: flex;
  flex-direction: column;
}

/* Zavírací tlačítko */
.close-btn {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 24px;
  cursor: pointer;
}

/* Styl vyhledávacího pole */

.search-form {
  display: flex;
  align-items: center;
}

input[type="search"], 
input[type="text"] {
  text-indent: 15px;
  border-radius: 10px 0 0 10px;
  border: 2px solid #1E3D6B;
}

input[type="search"] {
  border-radius: 10px 0 0 10px;
  height: 36px;
  width: 400px;
  background-color: #fff;
  color: #1E3D6B;
}

button[type="submit"] {
  border-radius: 0 10px 10px 0;
  width: 98px;
  height: 36px;
  background-color: #1E3D6B;
  color: #fff;
  cursor: pointer;

  /* aby se text + ikona zarovnaly pěkně */
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px; /* mezera mezi ikonou a textem */
    border: none;        /* odstraní klasický border */
  outline: none;       /* odstraní šedý outline */
}

button[type="submit"] .dashicons {
  font-size: 16px;
  line-height: 1;
}

button[type="submit"]:focus {
  outline: none;       /* jistota při kliknutí / tab focusu */
  box-shadow: none;    /* pokud by šablona přidávala stín */
}

.search-submit {
  position: relative;
}

.searchform input[type="text"] {
  padding: 10px 0;
  text-indent: 10px;
}

.searchform {
  max-width: 300px;
}


/* Našeptávač */

.search-suggestions {
  background: #fff;
  border: 1px solid #1E3D6B;
  margin-top: 2em;
  display: none;
  position: absolute;
  width: 100%;
  max-height: 200px;
  overflow-y: auto;
}

.search-suggestions ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.search-suggestions li {
  padding: 10px;
  cursor: pointer;
}

.search-suggestions li:hover {
  background: #f0f0f0;
}


/* search results */


.search-articles {
  margin-bottom: 2em;
}

.search-articles .post-title {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 8px;
  padding-top: 40px;
}

.search-articles .post-title::before {
  content: ""; 
  position: absolute;
  top: 0; 
  left: 0; 
  width: 145px; 
  height: 1px; 
  background-color: #193C7E; 
}

.search-articles .post-breadcrub {
  font-size: 12px;
  margin-bottom: 8px;
}



/* content */

.container {
  width: 1440px;
  margin: 0 auto;
  padding: 0 60px;
  box-sizing: border-box;
}

#primary.container {
  display: flex;
  position: relative;
}

#content {
  width: 70%;
}

#sidebar {
  width: 30%;
}

.widget-area {
  margin-left: 60px;
  margin-top: 80px;
}

.one-third-width {
  width: 33.33%;
}

.two-third-width {
  width: 66.66%;
}

h2.entry-title a {
  color: #333;
  transition: color 0.5s ease;
}

h2.entry-title a:hover {
  color: #666;
  text-decoration: underline;
}

.column-content ul,
.entry-content ul {
  padding-left: 25px;
  margin-top: 0;
}


/* buttons */

.btn,
.btn-more {
  display: inline-block;
  padding: 4px 20px;
  border-radius: 20px;
  background: #CDFFDB;
  color: #193C7E;
  border: 1px solid #193C7E;
  margin: 0 10px 10px 0;
  text-align: center;
  white-space: normal;
  hyphens: none;
  text-wrap: balance;
  max-width: none;
  width: auto;
}

.single-product button[type="submit"] {
  border-radius: 20px;
  display: inline-block;
}

.btn-blue {
  background-color: #C8E5FE;
}

.btn-violet {
  background-color: #D8D1FF;
}

.btn-pink {
  background-color: #FFC7DD;
}

.single-product button[type="submit"]:hover,
.btn:hover {
  color: #fff;
  border: 1px solid #193C7E;
  background: #193C7E;
  text-decoration: none;
}

.btn-invers {
  background: #fff; 
  color: #193C7E;
}

.third .btn {
  margin: 0;
}

.one-third-item .btn, 
.text-item .btn {
  margin-top: 10px;
}

.item-teachers .btn {
  background: #c8e5fe;
}

.item-teachers .btn:hover {
  background: #193C7E;
    color: #fff;
}

.btn-more {
  padding: 4px 0;
  border-radius: 10px;
  margin: 2em auto;
  text-align: center;
  display: block;
  width: 207px;
  color: #193C7E;
  background: #fff;
}

.btn-more:hover {
  background: #193C7E;  
  color: #fff;
  border: 2px solid #193C7E;
  text-decoration: none;
}

.codelame .perex-section .btn,
.kurz-prihlasit,
#seminars .btn-blue,
.half-width-block .btn, 
#donate .btn-violet,
#join-meta .text-item .btn,
.item-buttons,
.one-third-item .btn,
#volnocasove-aktivity .btn,
#free-time-activities .btn,
#extra-classes .btn,
#doucovani .btn,
#theory .btn,
#multilingual-children .btn {
  margin-top: 1.5em;
}

#kurzy-cestiny .one-third-item .btn {
  margin-top: 0;
}

.buttons-margin  {
  margin-top: 1.5em;
}

.pridejtese .claim .btn {
  margin-top: 20px;
  margin-bottom: 1.5em;
}


/* content */

.mobil-title {
  display: none;
}

section .container {
  margin-bottom: 3em;
}

#pratelske-prostredi .container {
  margin-bottom: 0;
}

.entry-content {
  padding-bottom: 1em;
}

.entry-title {
  padding-top: 27px;
}

.entry-thumbnail img,
.entry-content img {
  max-width: 100%;
  height: auto;
}

.entry-content h3 {
  margin-top: 16px;
}

.field-video iframe,
.video-popup iframe {
  aspect-ratio: 16 / 9;
  width: 100%;
}

.entry-content a {
  text-decoration: underline;
}

.entry-content a:hover {
  text-decoration: none;
}

/* search */

.search-results #content form {
  margin: 2em auto 1em auto;
}

.search-results .article-items {
  -moz-column-count: 3;
  -webkit-column-count: 3;
  column-count: 3;
}


/* front page */

.o-mete,
#front-feature {
  background-color: #FFF1F6;
}

.prozmeny #front-feature {
  background-color: #F5F3FF;
}

.search-results #front-feature {
  padding: 60px 0;
}

.half-width-block,
.container.half-width,
.container.third,
.logo-gallery {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px; 
}

.single-publikace .half-width-block {
  gap: 2em;
}

.container.half-width {
  align-items: center;
}


#organized .container.half-width,
#jak-delame-akce .container.half-width,
#tvorive-dilny .container.half-width,
#workshops .container.half-width,
#vylety .container.half-width,
#trips .container.half-width,
#kontakty-vedeni .container.half-width,
#kontakty-sluzby .container.half-width,
#counseling .container.half-width,
.codelame .perex-section .container.half-width,
#socialni-sluzby .container.half-width,
#social-services .container.half-width,
#individual .container.half-width,
#theory .container.half-width,
#join-meta .container.half-width,
#dobrovolnictvi .container.half-width,
#join-us-boxes .container.half-width, 
#seminars .container.half-width,
#meta-par-slovy .container.half-width,
#meta-kultura .container.half-width {
  align-items: start;
} 

.logo-gallery {
  gap: 2.5em; 
}

.container.third {
  grid-template-columns: repeat(3, 1fr);
}

.carousel-box .container {
  display: flex;
}

.home .claim {
  padding-top: 60px;
  padding-bottom: 2.8em;
}

.provyucujici .claim {
  padding-top: 0;
}

.claim p {
  font-size: 20px;
  line-height: 28px;
}

.o-mete .claim p,
.big-perex {
  font-size: 24px;
}

.o-mete .claim p {
  line-height: 34px;
  padding-right: 120px;
}

#front-feature .feature-image img {
  padding: 0 0 0 60px;
}

.page-id-294 #front-feature .feature-image img, 
.page-id-31 #front-feature .feature-image img {
  padding: 0 0 0 60px;
}

.prozmeny #front-feature .feature-image img, 
.provyucujici #front-feature .feature-image img,
.item.text {
  padding: 60px 0 60px 60px;
}

#front-topics h2 {
  font-size: 24px;
  font-weight: bold;
}

.third .item,
#front-materials .item,
#front-topics .item {
  border-radius: 20px;
  border: 1px solid #193C7E;
  padding: 42px;
}

.item-migrants:hover {
  background-color: rgba(220, 255, 220, 0.25);
}

.item-teachers:hover {
  background-color: rgba(200, 229, 254, 0.25);
}

.home .item-description {
  min-height: 110px;
}

/* .item-upperline {
  text-transform: uppercase;
  font-weight: bold;
  position: relative;
  width: 100%;
  height: 40px;
  line-height: 40px;
} */

.item-upperline {
  position: relative;
  width: 100%;
  padding-top: 40px; 
}

.item-upperline.title {  
  padding-top: 20px; 
  font-size: 24px;
  text-transform: uppercase;
  font-weight: bold;
  padding-bottom: 20px;
}

.item-upperline::before {
  content: "";
  position: absolute;
  top: 0;  
  left: 0;
  width: 365px;
  height: 1px;
  background-color: #193C7E;
}

.widget-area .item-upperline::before {
   width: 90%; 
}

hr {
  border: none;
  height: 1px;               
  background-color: #193C7E; 
  width: 365px;
  margin: 0 0 40px 0;
}

.lang-en #front-support .item-upperline.title {
  height: auto;
  line-height: 34px;
  padding-top: 10px;
  margin-bottom: 12px;
}

.item-publications {
  background-color: #e9f5ff;
}

.item-onlineweb {
  background-color: #e8ffe8;
}

.carousel-box .two-third-width {
  overflow: hidden;
}

#front-materials h2 {
  min-height: 108px;
}

#front-materials p {
  min-height: 88px;
}

.one-third-item {
  padding-right: 74px
}

.media {
  background-color: #FCF2F6;
  padding: 64px 0;
}

.media h1 {
  margin-bottom: 0;
}

.media-perex {
  padding: 2em 0;
}

.media .container {
  margin-bottom: 0;
}


/* feature */

.o-mete .feature-image,
#support-us-feature .feature-image {
  padding: 60px 0 0 60px;
  box-sizing: border-box;
}

.aktivity #front-feature .claim {
  padding-top: 60px;
}

.aktivity #front-feature .claim {
  padding-bottom: 2.8em;
}

.o-mete .feature-image {
  padding-bottom: 60px;
}

.feature-photo {
  max-width: 100%;
  height: auto;
  display: block;
}

#donate .feature-image,
.codelame .feature-image {
  margin: 0 auto;
}

#activity-anchor .text-item,
#trips .text-item,
#vylety .text-item,
#organized .text-item,
#jak-delame-akce .text-item,
#donate .text-item,
.home .claim,
.perex-item,
#theory .feature-image,
#join-meta .feature-image,
#advocacy-activities .text-item,
#reform .text-item, 
#praxis .text-item,
#about-meta .text-item,
#poradenstvi .left-item,
#seminars .feature-image, 
#our-vision .feature-image,
#pratelske-prostredi .left-item,
#dobrovolnictvi .left-item,
#counseling .left-item, 
#multilingual-children .text-item {
  padding-right: 60px;
}

#language-training .text-item,
#counseling .text-item,
#pratelske-prostredi .text-item, 
#other-changes .text-item, 
#reform .feature-image,
#advocacy-activities .feature-image,
#doucovani .feature-image,
#extra-classes .feature-image,
#individual .feature-image, 
#social-services .text-item,
#socialni-sluzby .text-item,
#donate .widget,
#join-meta .text-item,
#poradenstvi .text-item,
#multilingual-children .feature-image, 
#meta-feature .feature-image,
#our-vision .text-item,
#dobrovolnictvi .text-item {
  padding-left: 60px;
}

.pridejtese #front-feature .video-wrapper {
  margin-top: 60px;
  margin-bottom: 60px;
}

#praxis .feature-image img {
  display: block;
  margin: 0 auto;
}

/* feature background colors */

#support-us-feature {
  background-color: #F5F3FF; 
}

#support-us-feature .item {
  padding-bottom: 44px;
}

.fullpage-title.akce,
.procizince #front-feature {
  background-color: #F6FFF6;
}

.page-id-1066 .fullpage-title,
.page-id-1065 .fullpage-title,
.page-id-1055 .fullpage-title,
.page-id-39 .fullpage-title,
#front-feature.teachers {
  background-color: #F1F8FE;
}

.codelame #feature,
.fullpage-title {
  background-color: #FFF1F6; 
}

.fullpage-title.projects {
  background-color: rgb(235, 231, 255);
}

.video-wrapper {
  border-radius: 20px;   /* nastavíš si podle potřeby */
  overflow: hidden;      /* ořízne obsah uvnitř */
  margin-right: 60px;
}

.video-wrapper iframe {
  display: block;
  border: none;
}

.video-wrapper.leftmargin {
  margin-right: 0;
  margin-left: 60px;
}

/* carousel donors */

.logo-gallery {
  padding: 60px 0;
  grid-template-columns: repeat(6, 1fr);
}

.carousel-item img,
.logo-item img {
  width: 100%;
  height: auto;
}

.carousel-container {
  display: flex;
  overflow: hidden;
  width: 100%; 
  padding: 60px 0;
}

.carousel-items {
  display: flex;
  animation: scroll-left 60s linear infinite; /* Nastav animaci pro posun */
}

.carousel-item {
  width: 200px; /* Pevná šířka pro každý prvek */
  margin-right: 20px; /* Mezery mezi obrázky */
}

@keyframes scroll-left {
  0% {
    transform: translateX(0); /* Začínáme na začátku */
  }
  100% {
    transform: translateX(-100%); /* Posuneme o šířku celého carouselu */
  }
}


/* carousel cards */

.news-item {
  display: flex;
  flex: 0 0 auto;
  width: 315px;
  height: 521px;
  overflow: hidden;
  border-radius: 20px;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  border: 1px solid #193C7E;
  scroll-snap-align: start;
}

.news-item:hover {
  cursor: pointer;
}

.news-item.history {
  width: 650px;
  border: 1px solid #BD1E4E;
  color: #BD1E4E;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.news-item.history .news-content {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  justify-content: space-between; /* rozdělí horní a spodní část */
  padding: 0 30px 30px 30px;
}

.news-item.history .post-excerpt {
  flex-grow: 1;
  height: 226px;
}

.lang-en .news-item.history .post-excerpt {
  height: 280px;
} 

.news-item.history .post-velikost {
  margin-top: auto;
}

.post-position {
  padding-bottom: 30px;
}

.carousel-track,
.news-item.history {
  align-items: stretch;
}

.third .item  {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.news-content {
  /* border: 1px solid #BD1E4E; */
  border-top: none; /* rámeček jen ze stran a dole */
  border-radius: 0 0 16px 16px;
  padding: 0 16px;
  position: relative;
  z-index: 1;
}

.activities,
.front-history,
.front-projects,
.front-annuals,
.front-news,
.front-quotes {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1em;
}

.advokacni .news-item,
#advokacni-cinnost .news-item,
#our-mission .news-item,
#media-kit .news-item,
#press-releases .news-item,
#vyrocni-zpravy .news-item,
#tiskove-zpravy .news-item,
.courses .news-item,
.news-item.clients-stories,
.job-position .news-item,
#volnocasove-aktivity .news-item,
#kurzy-cestiny .news-item,
#czech-language-courses .news-item,
#rikaji-o-nas .news-item,
#said-about-us .news-item,
#front-references .news-item,
#meta-projects .news-item,
.courses-content .news-item, 
.projects-content .news-item,
#meta-annuals .news-item, 
#front-support .news-item {
  background-image: url('images/quotes.svg');
  background-repeat: no-repeat;
  background-position: 30px 30px;
  background-size: 67px 51px;
  padding: 145px 30px 0 30px;
  border-radius: 20px;
  border: 1px solid #193C7E;
  box-sizing: border-box;
}

.lang-en #front-support .news-item {
  height: auto;
  justify-content: start;
}

.lang-en  #front-support .news-item .post-excerpt {
  height: 345px;
  padding-bottom: 1em;
}

.store-content .news-item,
.projects-content .news-item  {
  width: auto;
}

.front-news .post-date,
.front-news .post-content {
  padding: 0 30px;
}

.front-news .btn {
  margin-left: 30px;
}

.item .post-wrapper,
.news-item .post-wrapper {
  flex-grow: 1;
}

.third .item .post-link,
.news-item .post-link {
  margin-top: 1em;
  margin-bottom: 1.2em;
}

.akce-verejnost-content .news-item .post-link,
#akce-pro-verejnost .news-item .post-link,
#meta-media .news-item .post-link,
.store-content .news-item .post-link,
#teachers-publications .news-item .post-link,
#teachers-products .news-item .post-link,
#teachers-online .news-item .post-link, 
#czech-learning-tools .news-item .post-link,
#online-nastroje .news-item .post-link, 
.front-news-content .news-item .post-link,
#front-news .news-item .post-link {
  padding: 0 30px;
}

.advokacni .news-item .post-link, 
#meta-annuals .news-item .post-link {
  padding: 0;
}

.third .item .post-link {
  margin-bottom: 0;
}

.job-position .post-excerpt p {
  padding-bottom: 0;
} 

#media-kit .news-item,
#press-releases .news-item,
#vyrocni-zpravy .news-item,
#tiskove-zpravy .news-item,
#meta-annuals .news-item {
  background-image: url('images/three-points.svg');
  background-size: 94px 21px;
}

.projects-content .news-item,
#meta-projects .news-item {
  background-image: url('images/project.svg');
}

#volnocasove-aktivity .news-item {
  background-image: url('images/three-green-points.svg');
}

#rikaji-o-nas .news-item,
#said-about-us .news-item {
   background-image: url('images/quotes-violet.svg'); 
}

.job-position .news-item {
  background-image: url('images/quote-right.svg');
  background-position: right 30px top 30px;
  background-size: 34px 70px;
  padding-bottom: 30px;
  justify-content: space-around;
}

#media-kit .news-item,
.news-item.clients-stories {
  background-image: url('images/quote-stories.svg');
  background-size: 100px 51px;
}

.courses-content .news-item,
#czech-language-courses .news-item,
#kurzy-cestiny .news-item {
  background-image: url('images/green-star.svg'); 
} 

.advokacni .news-item,
#advokacni-cinnost .news-item  {
  background-image: url('images/quote-law-violet.svg'); 
} 

.front-quotes .post-excerpt {
  height: 235px;
}

.front-quotes .post-title {
  margin-bottom: 8px;
}

.two-columns {
  display: flex;
  flex-wrap: wrap;
  gap: 20px; /* volitelně pro mezery mezi články */
}

.two-columns article {
  width: calc(50% - 10px);
  box-sizing: border-box;
  position: relative; 
  padding-top: 20px;
  height: auto;
}

.donors h2 {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 0;
  padding-top: 40px;
}

.donors h2::before,
.two-columns article::before {
  content: ""; 
  position: absolute;
  top: 0; 
  left: 0; 
  width: 145px; 
  height: 1px; 
  background-color: #193C7E; 
}

.donors h2::before {
  width: 367px; 
}

#press-releases .post-title,
#vyrocni-zpravy .post-title,
#tiskove-zpravy .post-title,
#meta-annuals .post-title,
.courses-content .news-item .post-title, 
.projects-content .news-item .post-title,
#meta-projects .post-title {
  font-size: 20px;
  min-height: 225px;
  margin-bottom: 0;
}

.front-news .news-item:hover {
  background-color: #FAEFF2;
  color: #BD1E4E;
}

.post-thumbnail  {
  position: relative;
  z-index: 2;
  height: 230px;
  overflow: hidden;
}

.post-thumbnail img {
  width: 100%;
  height: auto;
  display: block;
  max-height: 316px;
}

.news-item .post-title {
  font-size: 20px;
  line-height: 1.4;
}

.news-item.history .post-title {
  font-size: 38px;
  margin-top: 36px;
}

.news-item.history .post-thumbnail {
  height: 316px;
}

#front-support .news-item .post-title {
  margin-bottom: 0;
}

.courses-content .news-item .post-title,
#kurzy-cestiny .news-item .post-title,
#advokacni-cinnost .news-item .post-title {
  min-height: 84px;
}

.news-item .post-date {
  margin: 22px 30px;
}

.post-wrapper,
.post-content {
  height: 125px;
  overflow: hidden;
  padding: 0 30px;
}

#rikaji-o-nas .post-content {
  height: auto;
}

#teachers-publications .front-news-carousel .post-content {
  height: 138px; 
}

.post-wrapper {
  height: 130px;
  padding-top: 1em;
}

.courses-content .post-wrapper,
#czech-language-courses .post-wrapper,
#kurzy-cestiny .post-wrapper {
  padding: 1em 0 0 0;
}

#rikaji-o-nas .post-content,
#said-about-us .post-content,
#front-references .post-content {
  padding: 0;
  font-weight: 600;
}

.front-history .post-title,
.front-history .post-excerpt {
  color: #BD1E4E;
}

.front-news .news-item:hover .post-title a,
.front-history .post-title {
  color: #BD1E4E;
}

.front-news .btn {
  background-color: #ffc7dd;
}

.front-projects .btn {
  margin-top: 24px;
  background-color: #EBE7FF;
}


/* carousel */

.front-quotes-carousel,
.front-news-carousel {
  position: relative;
  overflow: hidden;
}

.carousel-track {
  display: flex;
  gap: 20px;
  transition: transform 0.6s ease;
  will-change: transform;
  touch-action: pan-y;
}

.carousel-controls {
  margin: 60px;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex-direction: column;
}

.carousel-track::-webkit-scrollbar {
  display: none; /* schovat nativní scrollbar – optional */
}

.carousel-controls button {
  border: none;
  cursor: pointer;
  align-self: flex-end;
}

.carousel-buttons {
  display: flex;
  justify-content: flex-end;
  gap: 20px;
}

.carousel-next,
.carousel-prev {
  background: url('images/carousel-previous.svg') no-repeat center center;
  background-size: 20px 29px;
  width: 20px;
  height: 29px;
  border: none;
  text-indent: -9999px; /* skryje text šipky */
  overflow: hidden;
  padding: 0;
  cursor: pointer;
}

.carousel-next {
  transform: scaleX(-1); /* zrcadlově otočí šipku */
}

.carousel-scrollbar {
  margin-top: 10px;
  height: 10px;
  width: 367px;
  align-self: flex-end;
}

.carousel-scrollbar-track {
  background-color: #FFC7DD;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.carousel-scrollbar-thumb {
  background-color: #BD1E4E;
  height: 100%;
  width: 0%;
  transition: transform 0.6s ease, width 0.6s ease;
  position: absolute;
  left: 0;
  top: 0;
  will-change: left;
}


/* carousel cards hovers */

#vyrocni-zpravy .news-item:hover,
#meta-annuals .news-item:hover,
.stories-content .news-item:hover, 
#pribehy-klientu .news-item:hover,
#media-kit .news-item:hover,
#meta-media .news-item:hover, 
#press-releases .news-item:hover,
#vyrocni-zpravy .news-item:hover,
#tiskove-zpravy .news-item:hover,
#meta-annuals .news-item:hover, 
.front-news-content .news-item:hover,
#front-news .news-item:hover {
  background-color: #FCF2F6;
  color: #BD1E4E;
} 

.advokacni .news-item:hover,
.akce-verejnost-content .news-item:hover,
#akce-pro-verejnost .news-item:hover,
#advokacni-cinnost .news-item:hover,
.front-projects .news-item:hover {
  background-color: #EBE7FF;
}

.front-projects .news-item:hover .btn:hover {
  background-color: #193C7E;
}

#media-kit .news-item:hover h3 a,
#meta-media .news-item:hover h3 a,
#press-releases .news-item:hover h3 a,
#vyrocni-zpravy .news-item:hover h3 a,
#tiskove-zpravy .news-item:hover h3 a,
#meta-annuals .news-item:hover h3 a,
.front-news-content .news-item:hover h3 a,
#front-news .news-item:hover h3 a {
  color: #BD1E4E;
}

#press-releases .news-item:hover .btn-pink,
#meta-annuals .news-item:hover .btn-pink,
#vyrocni-zpravy .news-item:hover .btn-pink, 
#media-kit .news-item:hover .btn-pink, 
#meta-media .news-item:hover .btn-pink,
#tiskove-zpravy .news-item:hover .btn-pink,
.stories-content .news-item:hover .btn-pink,
#pribehy-klientu .news-item:hover .btn-pink,
#meta-annuals .news-item:hover .btn-pink,  
.front-news-content .news-item:hover .btn-pink,
#front-news .news-item:hover .btn-pink {
  background-color: #BD1E4E;
  color: #fff;
  border: 1px solid #BD1E4E;
}

.projects-content .news-item:hover,
#meta-projects .news-item:hover  {
  background-color: #EBE7FF;
  color: #5C1E89;
} 

.projects-content .news-item:hover h3 a,
#meta-projects .news-item:hover h3 a {
  color: #5C1E89;
}

#rikaji-o-nas .news-item:hover {
  cursor: default;
}

.akce-verejnost-content .news-item:hover .btn-violet,
#akce-pro-verejnost .news-item:hover .btn-violet,
#advokacni-cinnost .news-item:hover .btn-violet,
.projects-content .news-item:hover .btn-violet,
#meta-projects .news-item:hover .btn-violet {
  background-color: #5C1E89;
  color: #fff;
  border: 1px solid #5C1E89;
}

#front-references .carousel-scrollbar-track,
#meta-projects .carousel-scrollbar-track {
  background-color: #EBE7FF;
}

#teachers-online .carousel-scrollbar-track,
#teachers-publications .carousel-scrollbar-track,
#teachers-products .carousel-scrollbar-track {
  background-color: #C8E5FE;
}

#teachers-online .carousel-scrollbar-thumb,
#teachers-publications .carousel-scrollbar-thumb,
#teachers-products .carousel-scrollbar-thumb {
  background-color: #193C7E;
}

#czech-learning-tools .news-item:hover,
#online-nastroje .news-item:hover,
#teachers-online .news-item:hover,
#free-time-activities .news-item:hover,
#czech-language-courses .news-item:hover,
#volnocasove-aktivity .news-item:hover,
.courses-content .news-item:hover, 
#kurzy-cestiny .news-item:hover,
#czech-language-courses .news-item:hover  {
  background-color: #DCFFDC;
  color: #009755;
  border: 1px solid #009755;
} 

#doucovani .item .btn,
#extra-classes .item .btn {
  background-color: #DCFFDC;
}

#czech-learning-tools .news-item:hover,
#teachers-online .news-item:hover,
#online-nastroje .news-item:hover  {
  color: #193C7E;
} 

#doucovani .item .btn:hover,
#extra-classes .item .btn:hover {
  background-color: #193C7E; 
}

.courses-content .news-item:hover h3 a,
#free-time-activities .news-item:hover h3 a,
#czech-language-courses .news-item:hover h3 a,
#volnocasove-aktivity .news-item:hover h3 a,
#kurzy-cestiny .news-item:hover h3 a {
  color: #009755;
}

#online-nastroje .news-item:hover .btn,
#free-time-activities .news-item:hover .btn,
#czech-learning-tools .news-item:hover .btn,
#czech-language-courses .news-item:hover .btn,
#volnocasove-aktivity .news-item:hover .btn,
.courses-content .news-item:hover .btn,
#kurzy-cestiny .news-item:hover .btn,
#teachers-online .news-item:hover .btn {
  background-color: #009755;
  color: #fff;
  border: 1px solid #009755;
}

#czech-learning-tools .carousel-scrollbar-track,
#online-nastroje .carousel-scrollbar-track,
#czech-learning-tools .carousel-scrollbar-track,
#free-time-activities .carousel-scrollbar-track,
#czech-language-courses .carousel-scrollbar-track,
#volnocasove-aktivity .carousel-scrollbar-track,
#kurzy-cestiny .carousel-scrollbar-track {
  background-color: #DCFFDC;
}

#czech-learning-tools .carousel-scrollbar-thumb,
#online-nastroje .carousel-scrollbar-thumb, 
#czech-learning-tools .carousel-scrollbar-thumb, 
#free-time-activities .carousel-scrollbar-thumb,
#czech-language-courses .carousel-scrollbar-thumb,
#volnocasove-aktivity .carousel-scrollbar-thumb,
#kurzy-cestiny .carousel-scrollbar-thumb {
  background-color: #009755;
}

#rikaji-o-nas .carousel-scrollbar-track,
#said-about-us .carousel-scrollbar-track,
#front-references .carousel-scrollbar-track,
#akce-pro-verejnost .carousel-scrollbar-track,
#advokacni-cinnost .carousel-scrollbar-track,
#meta-projects .carousel-scrollbar-track {
  background-color: #D8D1FF;
}

#rikaji-o-nas .carousel-scrollbar-thumb,
#said-about-us .carousel-scrollbar-thumb,
#akce-pro-verejnost .carousel-scrollbar-thumb,
#advokacni-cinnost .carousel-scrollbar-thumb,
#front-references .carousel-scrollbar-thumb,
#meta-projects .carousel-scrollbar-thumb {
  background-color: #5C1E89;
}

#advokacni-cinnost .post-link .btn {
  background-color: #D8D1FF;
}


/* special lists */

#teachers-publications .news-item,
#teachers-products .news-item,
#teachers-online .news-item,
.store-content .news-item,
#online-nastroje .news-item {
  /* jen kvůli komfortu při hoveru na celý článek */
  cursor: pointer;  
}

#teachers-publications .news-item:hover,
#teachers-products .news-item:hover,
.store-content .news-item:hover {
  background-color: #C8E5FE;
}

/* Obrázek a obálka */

.store-content .news-item .post-thumbnail,
#teachers-publications .news-item .post-thumbnail,
#teachers-products .news-item .post-thumbnail,
#teachers-online .news-item .post-thumbnail,
#online-nastroje .news-item .post-thumbnail,
#czech-learning-tools .news-item .post-thumbnail {
  overflow: hidden;   
  max-height: 1000px; 
   /* transition: max-height .45s ease, opacity .35s ease; */
}

.store-content .news-item .post-thumbnail img,
#teachers-publications .news-item .post-thumbnail img,
#teachers-products .news-item .post-thumbnail img,
#teachers-online .news-item .post-thumbnail img,
#online-nastroje .news-item .post-thumbnail img,
#czech-learning-tools .news-item .post-thumbnail img {
  display: block;
  width: 100%;
  height: auto;
}

.store-content .news-item:hover .post-thumbnail,
#teachers-publications .news-item:hover .post-thumbnail,
#teachers-products .news-item:hover .post-thumbnail,
#online-nastroje .news-item:hover .post-thumbnail,
#czech-learning-tools .news-item:hover .post-thumbnail,
#teachers-online .news-item:hover .post-thumbnail {
  max-height: 0;
  opacity: 0.4; /* volitelné jemné vyblednutí při zasouvání */
}

.store-content .news-item .post-wrapper,
.store-content .news-item .post-link,
#teachers-publications .news-item .post-wrapper,
#teachers-publications .news-item .post-link,
#teachers-products .news-item .post-wrapper,
#teachers-products .news-item .post-link,
#teachers-online .news-item .post-wrapper,
#teachers-online .news-item .post-link,
#czech-learning-tools .news-item .post-wrapper,
#czech-learning-tools .news-item .post-link,
#online-nastroje .news-item .post-wrapper,
#online-nastroje .news-item .post-link {
  transition: transform .45s ease, opacity .35s ease;
}

.store-content .news-item:hover .post-wrapper,
.store-content .news-item:hover .post-link,
#teachers-publications .news-item:hover .post-wrapper,
#teachers-publications .news-item:hover .post-link,
#teachers-products .news-item:hover .post-wrapper,
#teachers-products .news-item:hover .post-link,
#teachers-online .news-item:hover .post-wrapper,
#teachers-online .news-item:hover .post-link,
#czech-learning-tools .news-item:hover .post-wrapper,
#czech-learning-tools .news-item:hover .post-link,
#online-nastroje .news-item:hover .post-wrapper,
#online-nastroje .news-item:hover .post-link {
  /*  transform: translateY(-6px);  malý doprovodný pohyb */
  opacity: 1;
}

.store-content .news-item:hover .post-content,
#teachers-publications .news-item:hover .post-content,
#teachers-products .news-item:hover .post-content {
  height: auto;
}

.store-content .news-item:hover .post-excerpt,
#teachers-publications .news-item:hover .post-excerpt,
#teachers-products .news-item:hover .post-excerpt {
  display: block;
}

.store-content .news-item:hover .post-price,
#teachers-products .news-item:hover .post-price {
  display: none;
}

.store-content .news-item:hover .post-wrapper,
#teachers-products .news-item:hover .post-wrapper,
#czech-learning-tools .news-item:hover .post-wrapper,
#online-nastroje .news-item:hover .post-wrapper,
#teachers-online .news-item:hover .post-wrapper {
  padding-top: 2em;
}

/* Respektuj uživatele s omezenou animací */
@media (prefers-reduced-motion: reduce) {
  #czech-learning-tools .news-item .post-thumbnail,
  #czech-learning-tools .news-item .post-wrapper,
  #czech-learning-tools .news-item .post-link,
  #online-nastroje .news-item .post-thumbnail,
  #online-nastroje .news-item .post-wrapper,
  #online-nastroje .news-item .post-link {
    transition: none;
  }
}


/* special lists */

.dash-list,
.violet-star-list,
.red-star-list,
.green-star-list {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.dash-list {
  margin-left: 24px;
}

.violet-star-list li,
.red-star-list li,
.green-star-list li {
  position: relative;
  padding-left: 32px; /* prostor pro obrázek */
  line-height: 28px;
  margin-bottom: 30px;
}

.dash-list li::before {
  content: "– ";   
  position: absolute;   
  margin-left: -1.2em;   
}

.violet-star-list li::before,
.red-star-list li::before,
.green-star-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px; /* pro vycentrování v rámci výšky řádku */
  width: 20px;
  height: 24px;
  background-image: url('images/ul-li-green-star.svg');
  background-size: cover;
  background-repeat: no-repeat;
}

.red-star-list li::before {
  background-image: url('images/ul-li-red-star.svg');
}

.violet-star-list li::before {
  background-image: url('images/ul-li-violet-star.svg');
}

.volunteers {
  color: #BD1E4E;
}

.volunteers h2 {
  margin-bottom: 0.7em;
  color: #193C7E;
}

.clients-stories .btn-invers, 
.volunteers .btn-invers {
  background-color: #FFC7DD;
  margin-top: 24px;
}

.volunteers .btn-invers:hover {
  background-color: #bd1e4e;
  border: 1px solid #bd1e4e;
}

.volunteers p {
  margin-bottom: 2em;
}

.volunteers-number {
  font-size: 64px;
  font-weight: bold;
  line-height: 1.4;
  display: block;
}

#join-us-boxes .container.half-width {
  align-items: stretch !important;
}

#join-us-boxes .item {
  background-color: #FFF1F6; 
  border: 0;
  color: #BD1E4E;
  padding: 50px;
  border-radius: 20px;
}

#information-support .item h2,
#join-us-boxes .item h2 {
 line-height: 1.2;
 min-height: 108px;
}

section {
  margin-bottom: 60px;
}

section#donate,
section#theory,
section.carousel-box,
.carousel-box .container,
.home section#front-support,
.home section#front-news  {
  margin-bottom: 0;
} 

section#pratelske-prostredi {
  margin-bottom: 3em;
}

.no-carousel,
#activities-contact.carousel-box,
#aktivity-kontakt.carousel-box,
#assesment.carousel-box,
#free-time-activities.carousel-box,
section#media-kit.carousel-box {
  margin-bottom: 60px;
}

section.perex-section {
  margin-bottom: 1em;
}


/* full card page */

.akce-verejnost-content,
.courses-content,
.stories-content,
.store-content,
.projects-content,
.front-news-content {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1em;
  margin-bottom: 60px;
}

.store-content .post-excerpt,
#teachers-publications .post-excerpt,
#teachers-products .post-excerpt {
  display: none;
}


/* text slider */

.text-slider {
  position: relative;
  width: 100%;
  max-width: 600px; /* libovolně */
  color: #BD1E4E;
  text-align: left;
  font-size: 45px;
  font-weight: 600;
  font-weight: bold;
  min-height: 2em; /* aby neskákala výška */
}

.text-slider .slide {
  position: absolute;
  top: 0; left: 0; right: 0;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  padding-top: 30px;
}

.text-slider .slide::before {
  content: ""; 
  position: absolute;
  top: 0; 
  left: 0; 
  width: 365px;
  height: 1px; 
  background-color: #BD1E4E; 
}

.text-slider .slide.active {
  opacity: 1;
}


/* products */

.wc-tabs,
.wc-tab h2,
.product_meta .sku_wrapper,
.product_meta .posted_in {
  display: none;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) ul.products li.product .price,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
  color: #193C7E;
  font-size: 1em;
  font-weight: bold;
}

.woocommerce-billing-fields .optional {
  display: none;
}

.related.products,
.entry-summary p.price {
  display: none;
}

:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button:disabled, 
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button:disabled[disabled] {
  color: #fff;  
}

:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) 
.woocommerce button.button:hover {
    color: #fff !important;
}

.woocommerce #content table.cart td.actions .input-text, 
.woocommerce table.cart td.actions .input-text, 
.woocommerce-page #content table.cart td.actions .input-text, 
.woocommerce-page table.cart td.actions .input-text {
  width: 160px;
  height: 36px;
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button, .woocommerce-checkout .wc-proceed-to-checkout a.checkout-button {
  background-color: #193C7E !important;
  color: #fff;
}

.woocommerce button[type="submit"] {
  width: auto;
  background-color: #193C7E !important;
  color: #fff;
}

.woocommerce button[type="submit"]:hover {
  background-color: #fff !important;
  color: #193C7E !important;
}

.woocommerce-order-received .woocommerce-button.proforma {
    display: none !important;
}

/* gallery */

.mini-gallery {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: stretch;
}

.mini-gallery :where(figure) {
  margin: 0 !important;
}

.mini-gallery .item { position: relative; overflow: hidden; height: 388px; flex: 0 0 auto; }
.portrait   { flex-basis: 315px; }
.landscape  { flex-basis: 650px; }

.mini-gallery .item img { 
  width: 100%; 
  height: 100%; 
  object-fit: cover; 
  display: block;
  border-radius: 20px;
}


/* single detail */

.item-title h1 {
  margin-top: 60px;
  margin-bottom: 60px;
}

.entry-thumbnail {
  margin-bottom: 60px;  
}

.hentry a {
  text-decoration: underline;
}

.publication-info .btn,
.hentry a:hover {
  text-decoration: none;
}

.widget-area .btn {
  margin-top: 1em;
}

.type-publikace .entry-thumbnail img {
  border: 1px solid #193C7E; 
}

.basic-info-wrapper {
  display: flex;
  justify-content: flex-end; /* odsun vpravo */
  margin: 60px 0;
}

.basic-info  {
  padding: 30px 30px;
  border-radius: 20px;
  border: 1px solid #193C7E;
  width: 370px;
} 

.basic-info > div {
  display: grid;
  grid-template-columns: 100px 1fr;
  align-items: start;
  margin-bottom: 6px;
}

.basic-info label {
  font-weight: bold;
}

.basic-info div span,
.basic-info div p {
  margin: 0; /* kdyby ACF generovalo blokové elementy */
} 

.single article {
  margin-bottom: 60px;
  padding-top: 20px;
}

.single article p {
  padding-bottom: 40px;
}

.single article .publikace-info p {
  padding-bottom: 1em;
}

.consult-hours {
  padding-right: 3em;
}


/* sidebar */

.widget-area a {
  text-decoration: underline;
}

.widget-area a.btn,
.widget-area a:hover {
  text-decoration: none;
}

.widget-area .btn:hover {
  text-decoration: none;
}



/* kontakty  */

.page-id-10 .item h3,
.page-id-289 .item h3 {
  margin: 0;
  padding: 16px 20px;
  background-color: #FFC7DD;
  cursor: pointer;
  border-radius: 20px;
  display: flex;
  align-items: center;
}

.page-id-10 .item-content,
.page-id-289 .item-content  {
  padding: 12px 0;
  display: block;
}

.page-id-10 .item-content p,
.page-id-289 .item-content p  {
  border-bottom: 1px solid #193C7E;
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
}

.page-id-10 .item h3 .toggle-icon,
.page-id-289 .item h3 .toggle-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  border: 1px solid #193C7E;
  color: #193C7E;
  font-weight: bold;
  font-size: 16px;
  line-height: 18px;
  text-align: center;
  border-radius: 3px;
  margin-left: auto; /* posune ikonu úplně doprava */
  display: none; /* vypnuto */
}

.page-id-10 .item.open .item-content,
.page-id-289 .item.open .item-content {
  display: block;
}

/* změna symbolu při otevření */
.page-id-10 .item:not(.open) .toggle-icon::before,
.page-id-289 .item:not(.open) .toggle-icon::before {
  content: "+";
}

.page-id-10 .item.open .toggle-icon::before,
.page-id-289 .item.open .toggle-icon::before {
  content: "−"; /* klasické mínus */
}

#konzultacni-hodiny .btn-pink {
  margin-top: 1.5em;
}


/* pager */

.page-numbers {
  display: inline-block;
  padding: 2px 8px;
}

.page-numbers {
  border-radius: 4px;
  border: 1px solid #0063fa;
  color: #0063fa;
  text-align: center;
}

.current,
.page-numbers:hover,
.school-level:hover {
  border: 1px solid #0063fa;
  background-color: #0063fa;
  color: #fff;
}

.page-numbers.dots:hover {
  border: 1px solid #7c8287;
  background-color: #fff;
  color: #7c8287;
}


/* popups */

.popup-overlay {
  display:none;
  position:fixed;
  top:0; 
  left:0;
  width:100%; 
  background:rgba(0,0,0,0.6);
  z-index:9999;
}

.popup-box {
  background:#fff;
  max-width:600px;
  margin:50px auto;
  padding:20px;
  position:relative;
  border-radius:8px;
}

.close-popup {
  position:absolute;
  top:10px; right:15px;
  font-size:20px;
  cursor:pointer;
}


/* footer */

footer {
  background-color: #bd1e4e;
  color: #fff;
}

footer a {
  color: #fff;
}

footer a:hover {
  text-decoration: none;
}

#footer-content {
  padding: 60px 0;
}

footer .third-width,
footer .container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

footer .container {
  row-gap: 60px;
}

footer .third-width {
  grid-template-columns: repeat(2, 1fr);
}

footer img.footer-logo {
  width: 400px;
  height: auto;
}

footer h4 {
  font-size: 20px;
  line-height: 26px;
  padding: 10px 0;
  margin: 0;
  position: relative;
}

footer h4::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 145px;
  height: 1px;
  background-color: #fff;
}

.social-icons a {
  padding-right: 10px;
}

.footer-second-row h4 {
 padding: 20px 0;
 margin: 0;
}

#copyright  {
  font-size: 13px;
  padding-top: 1em;
  text-align: center;
}

.third-width.mobil-only {
  display: none;
}


/* for netbooks 960 */

@media screen and (max-width: 1340px) {

  .container {
    width: 1080px;
  }

  .main-navigation,
  .feature-logo {
    display: none;
  }

  .wpml-ls-legacy-dropdown {
    margin-right: 10px;
  }

  .menu-toggle {
    display: flex;
    align-items: center; 
    height: 100%;
  }

  .mobile-navigation.show {
    display: block; /* Zobrazí menu po kliknutí na hamburger */
    padding: 1em 0;
  }
  
  .mobile-navigation ul {
    display: block;
    margin: 0;
    padding: 0;
    list-style-type: none;
    width: 100%;
  }

  .mobile-navigation .wpml-ls-legacy-dropdown {
    width: 77px;
  }
  
  .mobile-navigation ul li a {
    display: block;
    padding: 0.5em 10px;
  }
  
  .mobile-navigation ul a {
    color: #193C7E;
    display: block;
    cursor: pointer;
  }
  
  .mobile-navigation .wpml-ls-legacy-dropdown ul a:hover {
    text-decoration: none;
  }

  .wpml-ls-legacy-dropdown .wpml-ls-current-language:hover .wpml-ls-sub-menu a {
    border-right: 1px solid transparent;
  }

  .mobile-navigation ul li a:hover .dashicons {
    text-decoration: none;
  }
  
  .mobile-navigation ul li ul li {
    padding-left: 1em;
  }
  
  .mobile-navigation ul li ul li a {
    color: #193C7E;
  }

  /* Skrýváme druhou úroveň menu (sub-menu) ve výchozím stavu 
  .mobile-menu .sub-menu {
  display: none;
  } */

  /* Když má rodič aktivní třídu 'open', zobrazí sub-menu
  .mobile-menu li.open > .sub-menu {
  display: block;
  }  */

  .menu-item-713 {
    display: none;
  }


  .menu-item-288 {
    display: block; /* skrytí odkazu home na desktopu */
  }

  #front-feature .feature-image img {
    padding: 40px 0 0 40px;
  }

  .item.text {
    padding: 40px 0 40px 40px;
  }

  .home .claim, .perex-item, #theory .feature-image, #join-meta .feature-image, #advocacy-activities .text-item, #reform .text-item, #about-meta .text-item, #poradenstvi .left-item, #seminars .feature-image, #our-vision .feature-image, #pratelske-prostredi .left-item, #dobrovolnictvi .left-item, #counseling .left-item, #multilingual-children .text-item {
    padding-right: 30px;
  }

  #language-training .text-item, #counseling .text-item, #pratelske-prostredi .text-item, #other-changes .text-item, #reform .feature-image, #advocacy-activities .feature-image, #doucovani .feature-image, #extra-classes .feature-image, #individual .feature-image, #social-services .text-item, #socialni-sluzby .text-item, #donate .widget, #join-meta .text-item, #poradenstvi .text-item, #multilingual-children .feature-image, #meta-feature .feature-image, #our-vision .text-item, #dobrovolnictvi .text-item {
    padding-left: 30px;
  }

  .carousel-controls {
    margin: 40px;
  }

  .carousel-container {
    padding: 40px 0;
  }

  .third .item,
  #join-us-boxes .item {
    padding: 30px;
  }

  #join-us-boxes .third .item {
    display: block;
  }

  .item-upperline::before {
    width: 268px;
  }

  #content,
  #sidebar,
  .column-image,
  .column-content {
    width: 100%;
  }

  #primary.container {
    display: block;
  }

  .akce-verejnost-content,
  .courses-content,
  .stories-content,
  .projects-content,
  .store-content {
    grid-template-columns: repeat(3, 1fr);
  }

  .mini-gallery {
    gap: 15px;  /* Mezera mezi obrázky */
  }

  .mini-gallery .item {
    height: 282px;
  }

  .portrait {
    width: 229px; /* Pevná šířka pro portrait obrázky */
    height: 282px; /* Pevná výška pro portrait obrázky */
    flex-basis: auto;
  }

  .landscape {
    width: 472px; /* Pevná šířka pro landscape obrázky */
    height: 282px; /* Pevná výška pro landscape obrázky */
    flex-basis: auto;
  }

  .mini-gallery .item img {
    width: 100%; /* Obrázky vyplní celý rodičovský element */
    height: 100%; /* Zajistí, že obrázek se přizpůsobí výšce rodiče */
    object-fit: cover; /* Udržuje správný poměr stran obrázku */
  }

  .search-form {
    display: none;
  }

  #front-feature {
    padding-bottom: 1em;
  }

  .front-news-content {
  grid-template-columns: repeat(3, 1fr);
  }

  .widget-area {
    margin-right: 0;
    margin-bottom: 2em;
  }

  .widget-area .box-item {
    margin: 0;
  }

  .widget-area {
    margin-left: 0;
    margin-top: 2em;
  }

  footer .container.social-icons {
  display: flex;
  justify-content: flex-start;
  padding-right: 0;
  }

  footer .container .item {
  width: 100%;
  }

  footer .item {
    display: block;
  }

}

/* for tablets */

@media screen and (max-width: 1080px) {
 
  .container {
    width: 960px;
  }

  .container.third,
  .container.half-width, 
  #support-us-feature .container,
  #front-about .container, 
  #front-feature .container, 
  #front-topics .container, 
  #front-materials .container,
  #front-about .container,
  #front-feature .container,
  #front-topics .container,
  #front-materials .container,
  footer .half-width {
    grid-template-columns: repeat(1, 1fr);
  }

  .logo-gallery {
  padding: 30px 0;
  grid-template-columns: repeat(4, 1fr);
  }

  footer .container,
  #footer-content .container {
    grid-template-columns: repeat(2, 1fr);
  }

  .carousel-box .container {
    display: block;
  }

  .one-third-width,
  .two-third-width {
    width: 100%;
  }

  #join-us-boxes .item {
    padding: 2em;
  }

  .mini-gallery {
    gap: 13px;  /* Mezera mezi obrázky */
  }

  .portrait {
    width: 200px; /* Pevná šířka pro portrait obrázky */
    height: 247px; /* Pevná výška pro portrait obrázky */
  }

  .landscape {
    width: 414px; /* Pevná šířka pro landscape obrázky */
    height: 247px; /* Pevná výška pro landscape obrázky */
  }

}

/* for smartphones  */

@media screen and (max-width: 960px) {

  .container {
    width: 768px;
    padding: 0;
  }

  h1 {
    font-size: 48px;
    line-height: 1.2;    
  }

  h2 {
    font-size: 45px;
    line-height: 1.2;
  }

  h3, h4 {
    font-size: 20px;
    line-height: 1.3;
  }

  #front-about .feature-photo {
    margin-top: 30px;
  }

  .akce-verejnost-content,
  .stories-content,
  .courses-content,
  .projects-content,
  .store-content,
  .front-news-content,
  footer .container,
  #footer-content .container {
    grid-template-columns: repeat(2, 1fr);
  }

  .search-icon {
    display: none;
  }

  .logo-gallery {
    grid-template-columns: repeat(4, 1fr);
  }

  .one-third-item {
    padding-right: 0;
    margin-bottom: 2em;
  }

  #support-us-feature h1,
  #meta-feature h1,
  #front-feature h1 {
    display: none;
  }

  .single-kurz #front-feature h1 {
    display: block;
  }

  #meta-kultura .text-item, 
  #front-about .text-item,
  #other-changes .text-item,
  #language-training .text-item,
  #join-meta .claim,
  #our-vision .claim,
  #support-us-feature .claim,
  #meta-feature .half-width .claim,
  #front-feature .half-width .claim {
    grid-area: claim;
  }
  
  #meta-kultura .video-item,
  #front-about .feature-image,
  #other-changes .half-width .feature-image, 
  #language-training .half-width .feature-image, 
  #join-meta .half-width .feature-image,
  #our-vision .half-width .feature-image,
  #support-us-feature .half-width .feature-image,
  #meta-feature .half-width .feature-image,
  #front-feature .half-width .feature-image {
    grid-area: feature;
  }

  #support-us-feature .container.half-width,
  #meta-feature .container.half-width,
  #front-feature .container.half-width {
    grid-template-columns: 1fr;
    grid-template-areas:
      "feature"
      "claim";
    row-gap: 0;   
  }

  #meta-kultura .container.half-width,
  #front-about .container.half-width,
  #other-changes .container.half-width,
  #language-training .container.half-width,
  #join-meta .container.half-width,
  #our-vision .container.half-width {
    grid-template-columns: 1fr;
    grid-template-areas:
      "claim"
      "feature";
    row-gap: 0;   
  }  

  .mobil-title {
    display: inline-block;
    font-size: 48px;
    line-height: 1.2;
    font-weight: 600;
    margin-bottom: 40px;
    margin-top: 60px;
  }

  #front-feature .container {
    margin-bottom: 0;
  }

  #front-feature {
    padding-bottom: 0;
  }

  #front-about .feature-image {
    padding-top: 40px;
  }

  section {
    margin-bottom: 50px;
  }

  #doucovani .container.half-width,
  #socialni-sluzby .container.half-width,
  #individual .container.half-width {
    row-gap: 50px; 
  }

  .claim,
  #meta-feature .feature-image {
    padding: 0;
  }

  #meta-feature .feature-image img,
  #front-feature .feature-image img,
  .codelame #front-feature .feature-image img,
  .page-id-294 #front-feature .feature-image img,
  .page-id-31 #front-feature .feature-image img,
  .pridejtese .slidebox,
  .o-mete .claim p {
    padding: 0 0 50px 0;
  }   
  
  #theory .feature-image,
  #responsible .videobox,
  #support-us-feature .feature-image {
    padding: 0 0 40px 0;
  } 

  .pridejtese .claim {
    margin-bottom: 40px;
  }

  #join-meta .text-item,
  .procizince .big-perex  {
    margin-bottom: 36px;
  }

  .pridejtese #front-feature .video-wrapper,
  #front-about .feature-photo {
    margin-top: 0;
  }

  #praxis .feature-image {
    margin-top: 60px;
  }

  #front-materials p {
    min-height: auto;
    padding-bottom: 0;
  }

  .front-materials-text {
    margin-bottom: 40px;
  }

  .video-wrapper {
    margin-right: 0;
  }

  #front-materials h2 {
    min-height: auto;
    margin-bottom: 40px;
  }

  #front-materials .item, 
  #front-topics .item {
    padding: 50px;
  }

  .item.text {
    padding: 0;
  }

  .feature-image img {
    width: 390px;
    height: auto;
    display: block;
    margin: 0 auto;
  }

  .home .claim, .perex-item, #theory .feature-image, #join-meta .feature-image, #advocacy-activities .text-item, #reform .text-item, #about-meta .text-item, #poradenstvi .left-item, #seminars .feature-image, #our-vision .feature-image, #pratelske-prostredi .left-item, #dobrovolnictvi .left-item, #counseling .left-item, #multilingual-children .text-item {
    padding-right: 30px;
  }

  #language-training .text-item, #counseling .text-item, #pratelske-prostredi .text-item, #other-changes .text-item, #reform .feature-image, #advocacy-activities .feature-image, #doucovani .feature-image, #extra-classes .feature-image, #individual .feature-image, #social-services .text-item, #socialni-sluzby .text-item, #donate .widget, #join-meta .text-item, #poradenstvi .text-item, #multilingual-children .feature-image, #meta-feature .feature-image, #our-vision .text-item, #dobrovolnictvi .text-item, #meta-kultura .text-item {
    padding-left: 0;
  }

  .video-wrapper.leftmargin {
    margin-left: 0;
  }

  .third-width.mobil-only {
    display: block;
  }

  .mobil-hide {
    display: none;
  }

  .mini-gallery {
    gap: 20px;
  }

  .mini-gallery .item {
    height: auto;
    flex: auto;
  }

  /* půlka řádku = (100% - gap) / 2 */
  .portrait  { flex: 0 0 calc((100% - 20px) / 2); }
  .landscape { flex: 0 0 100%; }
  /* přehodíme 5 a 6 */
  .mini-gallery .item:nth-child(5) { order: 6; }
  .mini-gallery .item:nth-child(6) { order: 5; }
  /* můžeš klidně snížit výšku, ať se méně řeže */

  footer .third-width.footer-contacts,
  footer third-width.mobil-only,
  footer third-width.footer-logo {
    display: block; 
  }

  .footer-first-row {
    grid-template-columns: repeat(2, 1fr);
    grid-template-areas:
      "a a"
      "b c"
      "d e"
      "f g";
  }

  /* přidáme názvy oblastí */
  .footer-first-row .third-width:nth-child(1) { grid-area: a; }
  .footer-first-row .third-width:nth-child(2) { grid-area: b; }
  .footer-first-row .third-width:nth-child(3) { grid-area: c; }
  .footer-first-row .third-width:nth-child(4) { grid-area: d; }
  .footer-first-row .third-width:nth-child(5) { grid-area: e; }
  .footer-first-row .third-width:nth-child(6) { grid-area: f; }
  .footer-first-row .third-width:nth-child(7) { grid-area: g; }

  footer .mobil-only h4::before {
    width: 342px;
  }

  .footer-contacts h4::before {
    width: 369px;
  }

  .social-icons a {
    display: inline-block;
    padding-right: 1em;
  }

}


@media screen and (max-width: 768px) {

  .container {
    width: 460px;
    padding: 0 20px;
  }

  .mobil-title {
    margin-top: 40px;
  }

  h2 {
    margin-bottom: 40px;
  }

  .home .claim, .perex-item, #theory .feature-image, #join-meta .feature-image, #praxis .text-item, #advocacy-activities .text-item, #reform .text-item, #about-meta .text-item, #poradenstvi .left-item, #seminars .feature-image, #our-vision .feature-image, #pratelske-prostredi .left-item, #dobrovolnictvi .left-item, #counseling .left-item, #multilingual-children .text-item {
    padding-right: 0;
  }

  .home .claim {
    padding-bottom: 20px;
  }

  .wpml-ls-legacy-dropdown .wpml-ls-flag {
    display: none;
  }

  .wpml-ls-legacy-dropdown {
    width: 62px; 
  }

  section {
    margin-bottom: 40px;
  }

  #our-vision .text-item {
    margin-bottom: 24px;
  }

  #front-materials .item, #front-topics .item {
    padding: 40px;
  }

  #front-topics h2 {
    margin-bottom: 20px;
  }

  .footer-first-row .third-width p,
  .home .item-description p {
    padding-bottom: 0;
  }

  .home .item-description {
    min-height: auto;
    padding-bottom: 20px;
  }

  .feature-image img {
    width: 100%;
  }

  .home .claim {
    padding-top: 20px;
  }

  .prozmeny #front-feature .feature-image img,
  .provyucujici #front-feature .feature-image img {
    padding: 0 0 40px 0;
  }

  .logo-gallery,
  .front-news-content {
    grid-template-columns: repeat(2, 1fr);
  }

  .akce-verejnost-content,
  .stories-content,
  .courses-content,
  .projects-content,
  .store-content,
  .half-width-block,
  .front-news-content {
    grid-template-columns: repeat(1, 1fr);
  }

  .portrait, .landscape { flex: 0 0 100%; }
  .item { height: auto; }              /* výšku nefixujeme */
  .item img { height: auto; object-fit: contain; } /* držíme poměr stran */

  .carousel-controls {
    margin: 40px 20px;
  }

  .news-item.history {
    width: 418px;
    height: auto;
    font-size: 14px;
  }

  .news-item.history .post-thumbnail {
    height: 205px;
  }

  .news-item.history .post-excerpt {
    height: 262px;
  }

  .lang-en .news-item.history .post-excerpt {
    height: 372px;
  }

  #meta-kultura .text-slider,
  #meta-par-slovy .text-slider {
    min-height: 202px;
  }

  #our-mission .news-item, #media-kit .news-item, #press-releases .news-item, #vyrocni-zpravy .news-item, #tiskove-zpravy .news-item, .courses .news-item, .news-item.clients-stories, .job-position .news-item, #volnocasove-aktivity .news-item, #kurzy-cestiny .news-item, #czech-language-courses .news-item, #rikaji-o-nas .news-item, #said-about-us .news-item, #front-references .news-item, #meta-projects .news-item, .projects-content .news-item, .courses-content .news-item, #meta-annuals .news-item, #front-support .news-item {
    background-position: 24px 24px;
    padding: 145px 24px 0 24px;
  }

  .news-item.history .news-content {
    padding: 0 24px 24px 24px;
  }

  .third .item, #join-us-boxes .item {
    padding: 24px;
  }

  .news-item .post-link {
  margin-top: 1em;
  margin-bottom: 0.9em;
  }

  .consult-hours {
    padding-right: 0;
    display: block;
  }

  footer .container, 
  #footer-content .container {
    display: block;
  }

  .footer-first-row .third-width {
    margin-bottom: 40px;
  }

  .footer-first-row .third-width.footer-logo {
    margin-bottom: -20px;
  }

  .footer-contacts h4::before {
    width: 385px;
  }

  .footer-half h4 {
    max-width: 200px;
  }

  #footer-content {
    padding: 40px 0 0 0;
  }
  
  #footer-content {
    font-size: 12px;
  }

}

@media screen and (max-width: 460px) {

  .container {
    width: 380px;
  }

  .front-news-content {
    grid-template-columns: repeat(1, 1fr);
  }

  .feature-image img {
    width: 380px;
  }

  footer img.footer-logo {
    width: 380px;
  }

  .footer-contacts h4::before {
    width: 380px;
  }

  .news-item.history {
    width: 380px;
    height: auto;
  }

  .news-item.history .post-thumbnail {
    height: 154px;
  }

  .news-item.history .post-excerpt {
    height: 370px;
  }

  .two-columns article {
    width: 100%;
  }

  #front-materials .item, #front-topics .item {
    padding: 30px;
  }

  #front-materials .item h2, 
  #front-topics .item h2,
  .text-slider {
    font-size: 38px;
  }

  hr,
  .text-slider .slide::before {
    width: 268px;
  }

}


@media screen and (max-width: 420px) {

  .container {
    width: 340px;
    padding: 0 10px;
  }

  .logo-home-meta img {
    width: 115px;
    height: auto;
  }

  .site-header-cart {
    width: 45px;
  }

  .site-header-cart .dashicons {
    height: 22px;
    font-size: 22px;
    margin-top: 2px;
  }

  .wpml-ls-legacy-dropdown a {
    padding: 5px 8px;
  }

  .menu-toggle img {
    width: 28px;
    height: 28px;
  }

  .wpml-ls-legacy-dropdown .wpml-ls-flag + span {
    margin-left: 0;
  }

  .wpml-ls-legacy-dropdown {
    margin-right: 8px;
  }

  .wpml-ls-legacy-dropdown {
    width: 58px;
  }

  .carousel-scrollbar {
    width: 327px;
    align-self: center;
  }

  .feature-image img {
    width: 340px;
  }

  footer img.footer-logo {
    width: 340px;
  }

  .footer-contacts h4::before {
    width: 340px;
  }

  .news-item.history {
    width: 315px;
  }

}



@media screen and (max-width: 380px) {

  .container {
    width: 300px;
    padding: 0;
  }

  .feature-image img {
    width: 300px;
  }

  .news-item.history {
    width: 298px;
    height: auto;
  }

  .news-item {
    width: 298px;
  }

  .news-item.history .post-thumbnail {
    height: 145px;
  }

  .news-item.history .post-excerpt {
    height: 412px;
  }

  .lang-en .news-item.history .post-excerpt {
    height: 482px;
  }

  .carousel-scrollbar {
  margin-top: 10px;
  height: 10px;
  width: 280px;
  align-self: flex-end;
  }

  .carousel-controls {
    margin: 20px 10px;
  }

  footer img.footer-logo {
    width: 300px;
  }

  .footer-contacts h4::before {
    width: 300px;
  }

   footer .mobil-only h4::before {
    width: 280px;
  }

}
