/* /themes/custom/levneletenky_theme/css/style.css */

/* === Krok 1: Definice hodnot inspirovaných Olivero === */
:root {
  --levneletenky-olivero-font-primary: -apple-system, BlinkMacSystemFont, "System-ui", Poppins, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  --levneletenky-olivero-font-size-base: 1rem;
  --levneletenky-olivero-line-height-base: 1.65;
  --levneletenky-olivero-color-text-base: #333;

  --levneletenky-olivero-font-size-h1: 2.5rem !important;
  --levneletenky-olivero-font-size-h2: 2.2rem !important;
  --levneletenky-olivero-font-size-h3: 1.5rem;
  --levneletenky-olivero-font-size-h4: 1.25rem;
  --levneletenky-olivero-line-height-heading: 1.3;
  --levneletenky-olivero-font-weight-heading: 700;
  --levneletenky-olivero-font-weight-normal: 400;
}

/* === Krok 2: Základní aplikace globálních stylů === */
body {
  font-family: system-ui !important;
  font-size: var(--levneletenky-olivero-font-size-base) !important;
  line-height: var(--levneletenky-olivero-line-height-base) !important;
}

/* === Odstavce v obsahových oblastech === */
.region-content p,
.node-content p,
.block-content p,
.text-formatted p {
  margin-top: 0 !important;
  margin-bottom: 1rem !important;
  font-size: inherit !important;
  line-height: inherit !important;
  color: var(--levneletenky-olivero-color-text-base) !important;
}

/* === Nadpisy: ZÁKLAD (žádné globální mezery, aby se nerozhodil výpis) === */
h2, h3, h4, h5, h6,
.block-title,
.node__title {color: var(--levneletenky-olivero-color-text-base) !important;
}

h2.node-title {
    line-height: 1.2 !important;
    font-family: system-ui !important;
    font-weight: 800 !important;
    font-size: 1.6rem !important;
    margin-bottom: 0.5rem !important; 
}

h2 {color:#035079 !important;font-family: system-ui !important;
    font-weight: 700 !important; font-size:2.2rem !important;}


/* === H1 (page title) – bez mezer === */
h1.page-title {
  line-height: var(--levneletenky-olivero-line-height-heading) !important;
  margin: 0 !important;
  color: var(--levneletenky-olivero-color-text-base) !important;
}

body.frontpage .page-title {
    position: relative;
    color: #000 !important;
    font-weight: 700 !important;
    margin-top: 60px !important;
    font-size: 2.2rem !important;
    text-align: center !important;
    padding-bottom: 40px; /* prostor pro čáru, dle potřeby */
}

body.frontpage .page-title::after {
  content: "";
  position: absolute;
  bottom: 25px;
  left: 50%;
  width: 50px;
  height: 2px;
  margin-left: -25px; /* −50 % z šířky čáry */
  background: var(--color-primary);
}

/* === Specifické velikosti nadpisů (ponechány) === */
h1, .page-title, .node__title {}
h2, .block-title {}
h3 { color: #035079 !important;font-family: system-ui !important;font-weight: 600 !important; }
h4 { font-size: var(--levneletenky-olivero-font-size-h4) !important; }
h5, h6 {
  font-size: 1.1rem !important;
  text-transform: none !important;
}

/* === Název webu v hlavičce === */
.site-branding__name a,
.site-name a {
  font-size: var(--levneletenky-olivero-font-size-h2) !important;
  font-weight: var(--levneletenky-olivero-font-weight-heading) !important;
  color: var(--levneletenky-olivero-color-text-base) !important;
  text-transform: none !important;
  text-decoration: none !important;
  font-family: system-ui;
}
.site-branding__name a:hover,
.site-branding__name a:focus,
.site-name a:hover,
.site-name a:focus {
  color: var(--levneletenky-olivero-color-link) !important;
  text-decoration: none !important;
}

/* === Ostatní UI styly === */

/* wrapper v rohu */
.zeme.field--name-field-zeme {
  position: absolute;
  top: 12px;
  right: 12px;

  /* ODSTRANĚNO: Pevná šířka a výška. Box se nyní
     automaticky přizpůsobí velikosti obrázku uvnitř. */
  
  line-height: 0; /* Zůstává, aby nevznikly mezery */
}

/* obrázek vlajky */
.zeme.field--name-field-zeme img {
  display: block;

  /* KLÍČOVÁ ZMĚNA: Nastavíme pevnou šířku a výška se dopočítá sama.
     Tím je zaručeno, že nedojde k deformaci. */
  width: 50px;
  height: auto;

  /* Ostatní styly pro vzhled mohou zůstat */
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  box-shadow: 0 0 0 6px rgb(255 255 255 / 38%);
}

.position-text {
  display: inline-block;
  background-color: #035079;
  color: #ffffff;
  font-size: 0.9em;
  padding: 0 10px;
  position: relative;
  top: -15px;
}

.node-view-mode-teaser {
  box-shadow: none !important;
  margin-bottom: 0 !important; /* zmenseni rozestupu bloku vypisu clanku */
}

.site-name a, .site-name a:hover {
  color: #035079 !important;
}

.page-title-wrap .page-title {
  color: #035079 !important;
  font-family: system-ui !important;
  font-weight: 900 !important;
}

div.page-title-wrap {
    padding: 0 !important;
}

.site-slogan {
  color: #035079 !important;
  padding-left: 10px !important;
}

.site-name-slogan {
  padding-left: 5px !important;
}

.site-logo img {
  max-height: 100% !important;
}

.akcnilety {
  margin-bottom:4rem;
  margin-top:3rem;
}

.akcni_lety {
  margin-bottom:2rem;
  margin-top:3rem;
}

.page-title-wrap::before {
  box-shadow: none !important;
}

#peli-affil-calendar {
    font-family: Roboto, sans-serif;
    margin-bottom: 1.8rem;
}

.slider {
    overflow: visible !important;
    z-index: 2 !important;
    height: 43vh !important;
}

@media (max-width: 767px) {
    .site-name a {
        font-size: 1.5rem !important;
    }
}

/* ==========================================================================
   OPRAVA: Responzivní chování pro hlavní wrapper .slider
   ========================================================================== */

/* Pravidla se aplikují na obrazovkách s maximální šířkou 992px */
@media (max-width: 992px) {
  
  .slider {
    /* Zrušíme pevnou výšku, aby se wrapper mohl roztáhnout podle svého obsahu 
       (který nyní obsahuje slider I formulář pod ním). */
    height: auto !important;

    /* Zrušíme agresivní z-index, aby nic nepřekrýval. */
    z-index: auto !important;

    /* Pro jistotu přidáme spodní mezeru, aby byl odstup od obsahu pod ním. */
    margin-bottom: 1rem;
  }

}

#toolbar-administration {z-index: 999999 !important;}

.region-primary-menu .menu {font-family: system-ui !important;
    font-size: 1.2rem !important;
    font-weight: 700 !important;}

.header-container {padding: 0 0 !important;}

.node-header {margin-bottom: 0rem !important; font-size: 0.8rem !important;}

.sliding-panel-icon {display:none !important;}

#footer {background: none !important;}

.footer-bottom-middle {border-top: 5px solid #03507970 !important;}

.message-error::before {content: "\e006"; background-color: #c91c7fa6 !important;}

.message-error {background: #c91c7fa6 !important;}

b, strong {color: #035079;}

:root {
  --follow-text-color: #00447c; /* Tmavě modrá z vašeho screenshotu */
  --follow-subtext-color: #6c757d;
  --follow-background-color: #f8f9fa;
  --follow-border-color: #dee2e6;
  --follow-icon-color: #555;
  --follow-icon-hover-color: #00447c; /* Stejná jako nadpis pro konzistenci */
}

.follow-us-block {
  background-color: var(--follow-background-color);
  border: 1px solid var(--follow-border-color);
  border-radius: 12px;
  padding: 2rem;
  text-align: center;
  max-width: 500px;
  margin: 2rem auto;
  font-family: sans-serif; /* Použijte standardní font pro jednoduchost */
}

.follow-us-heading {
  font-size: 1.8rem;
  font-weight: 700;
  color: var(--follow-text-color);
  margin: 0 0 0.5rem 0;
}

.follow-us-subheading {
    color: var(--follow-subtext-color);
    margin-bottom: 2rem;
}

.social-links {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
}

.social-links a {
  color: var(--follow-icon-color);
  transition: color 0.2s ease, transform 0.2s ease;
  display: inline-flex;
}

.social-links a:hover,
.social-links a:focus {
  color: var(--follow-icon-hover-color);
  transform: translateY(-2px);
}

/* === Zmenšení nadpisů v obsahu na mobilu === */
@media (max-width: 991px) {
  h1 {
    font-size: 1.625rem  !important;
  }
  
  h2 {
    font-size: 1.375rem  !important;
  }

  h2.node-title {
    font-size: 1.375rem  !important;
    font-weight: 700 !important;
  }

  h3 {
    font-size: 1.15rem  !important;
  }
  
  body.frontpage .page-title {
    font-size: 1.625rem !important;
  }
}

/* Nový styl pro blok 10 akčních letenek */

.view-10-nejlevnejsich-akcnich-letenek {font-family: system-ui;}

.view-10-nejlevnejsich-akcnich-letenek .ticket-card {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 6px;
  padding: 5px 18px;
  margin-bottom: 12px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.06);
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.2s, background 0.2s;
  cursor: pointer; /* změní kurzor na ruku */
}

.view-10-nejlevnejsich-akcnich-letenek .ticket-card:hover {
  background-color: rgba(0, 0, 0, 0.02); 
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15); /* výraznější stín */
}

.view-10-nejlevnejsich-akcnich-letenek .ticket-left {
  display: flex;
  flex-direction: column;
}

.view-10-nejlevnejsich-akcnich-letenek .ticket-destination {
  font-size: 1.2rem;
  font-weight: 700;
  margin-bottom: 4px;
  color: #000;
}

.view-10-nejlevnejsich-akcnich-letenek .ticket-route {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  color: #333;
}

.view-10-nejlevnejsich-akcnich-letenek .ticket-icon {
  font-size: 14px;
  color: #888;
}

.view-10-nejlevnejsich-akcnich-letenek .ticket-price {
  font-weight: 700;
  font-size: 1.5rem;
  color: #00aced;
  min-width: 80px;
  text-align: right;
  padding-left: 20px;        /* mezera od čáry */
  border-left: 1px solid #eee; /* jemný oddělovač */}

.view-10-nejlevnejsich-akcnich-letenek .view-content ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 20px;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.view-10-nejlevnejsich-akcnich-letenek .more-link {
    display: block !important;
    width: fit-content;
    margin: 0px auto 5px auto !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: #00aced !important;
    text-decoration: none !important;
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.view-10-nejlevnejsich-akcnich-letenek .more-link::after {
  content: " →";
  display: inline-block;
  transition: transform 0.3s ease;
}

.view-10-nejlevnejsich-akcnich-letenek .more-link:hover::after {
  transform: translateX(6px); /* posun šipky doprava při hoveru */
}

.ticket-card .ticket-plane {
  color: #00aced !important;
  margin-right: 4px;
  font-size: 1.2rem;
}

.more-link {
    display: block !important;
    width: fit-content;
    margin: 0px auto 5px auto !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: #00aced !important;
    text-decoration: none !important;
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.view-10-nejlevnejsich-akcnich-letenek .more-link a {color:#00aced !important; font-size: 1.2rem !important;}

/* Akční letenky top 10 na mobilu jen 1 sloupec */
@media (max-width: 991px) {
  .view-10-nejlevnejsich-akcnich-letenek .view-content ul {
    grid-template-columns: 1fr;
  }
}



.premium-destinations {
    width: 100%;
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
.premium-destinations h2 {
    font-size: 2.5rem;
    text-align: center;
    margin-bottom: 30px;
    color: #222;
}
.destinations-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
}
.destinations-grid li {
    background-size: cover;
    background-position: center;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.destinations-grid li:hover {
    transform: translateY(-5px) scale(1.02);
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.15);
}
.destinations-grid a {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    aspect-ratio: 1 / 1;
    padding: 20px;
    text-decoration: none;
    color: white;
    position: relative;
    z-index: 1;
}
.destinations-grid a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,0.8) 100%);
    z-index: -1;
    transition: background 0.3s ease;
}
.destinations-grid li:hover a::before {
    background: linear-gradient(180deg, rgba(0,0,0,0.1) 30%, rgba(0,0,0,0.9) 100%);
}
.country-name {
    font-size: 1.75rem;
    font-weight: bold;
    line-height: 1.2;
}
.country-price {
    font-size: 1rem;
    font-weight: normal;
    margin-top: 4px;
    opacity: 0.9;
}
.country-portugalsko { background-image: url('/themes/custom/levneletenky_theme/images/portugalsko.webp'); }
.country-spanelsko { background-image: url('/themes/custom/levneletenky_theme/images/spanelsko.webp'); }
.country-recko { background-image: url('/themes/custom/levneletenky_theme/images/recko.webp'); }
.country-italie { background-image: url('/themes/custom/levneletenky_theme/images/italie.webp'); }
.country-francie { background-image: url('/themes/custom/levneletenky_theme/images/francie.webp'); }
.country-velka-britanie { background-image: url('/themes/custom/levneletenky_theme/images/velka-britanie.webp'); }
.country-nizozemsko { background-image: url('/themes/custom/levneletenky_theme/images/nizozemsko.webp'); }
.country-chorvatsko { background-image: url('/themes/custom/levneletenky_theme/images/chorvatsko.webp'); }
.country-turecko { background-image: url('/themes/custom/levneletenky_theme/images/turecko.webp'); }
.country-usa { background-image: url('/themes/custom/levneletenky_theme/images/usa.webp'); }
.country-thajsko { background-image: url('/themes/custom/levneletenky_theme/images/thajsko.webp'); }
.country-egypt { background-image: url('/themes/custom/levneletenky_theme/images/egypt.webp'); }
.city-paris { background-image: url('/themes/custom/levneletenky_theme/images/pariz.webp'); }
.city-rome { background-image: url('/themes/custom/levneletenky_theme/images/rim.webp'); }
.city-barcelona { background-image: url('/themes/custom/levneletenky_theme/images/barcelona.webp'); }
.city-london { background-image: url('/themes/custom/levneletenky_theme/images/londyn.webp'); }
.city-amsterdam { background-image: url('/themes/custom/levneletenky_theme/images/amsterdam.webp'); }
.city-lisbon { background-image: url('/themes/custom/levneletenky_theme/images/lisabon.webp'); }
.city-dubai { background-image: url('/themes/custom/levneletenky_theme/images/dubaj.webp'); }
.city-new-york { background-image: url('/themes/custom/levneletenky_theme/images/new-york.webp'); }
.city-bangkok { background-image: url('/themes/custom/levneletenky_theme/images/bangkok.webp'); }
.city-dublin { background-image: url('/themes/custom/levneletenky_theme/images/dublin.webp'); }
.city-budapest { background-image: url('/themes/custom/levneletenky_theme/images/budapest.webp'); }
.city-istanbul { background-image: url('/themes/custom/levneletenky_theme/images/istanbul.webp'); }






/* --- FINÁLNÍ KOMPLETNÍ STYLY --- */

/* --- Základní proměnné a globální styly --- */
.levneletenky-about-ultimate {
    --primary-color: #0077FF;
    --dark-color: #1A202C;
    --light-color: #FFFFFF;
    --gray-color: #F7FAFC;
    --text-color: #4A5568;
    --heading-color: #2D3748;
    --font-main: 'Roboto', sans-serif;
    --font-heading: 'Montserrat', sans-serif;
}

/* --- OPRAVA: Ikony v modrých kolečkách --- */
.levneletenky-about-ultimate .mission-item .mission-icon-wrapper {
    position: relative;
    display: inline-block;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    margin-bottom: 20px;
    background-color: #00aced; /* Vaše modrá barva */
}
.levneletenky-about-ultimate .mission-item .mission-icon-wrapper.fa-icon::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #FFFFFF;
    font-size: 2.5rem;
    font-weight: 900;
}

/* --- OPRAVA: Vzhled sekce "Jak nás sledovat" --- */
.levneletenky-about-ultimate .social-follow {
    margin-top: 50px;
    text-align: center;
}
.levneletenky-about-ultimate .social-follow h2 {
    font-size: 1.8rem;
    margin-bottom: 30px;
}
.levneletenky-about-ultimate .follow-us-list {
    list-style: none;
    padding: 0;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    max-width: 800px;
}

/* Vzhled jednotlivých tlačítek/položek */
.levneletenky-about-ultimate .follow-us-list li a,
.levneletenky-about-ultimate .follow-us-list li.follow-us-item-static {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start; /* Zarovná obsah doleva */
    width: 100%;
    background-color: #F7FAFC;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 15px 20px 15px 55px; /* Vytvoří místo pro ikonu vlevo */
    text-decoration: none;
    color: #2D3748;
    font-weight: 500;
    font-size: 1.1rem;
    transition: all 0.2s ease;
    text-align: left;
}
.levneletenky-about-ultimate .follow-us-list li a:hover {
    background-color: #e9eff5;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0,0,0,0.08);
}
.levneletenky-about-ultimate .follow-us-list i {
    font-size: 1.5rem;
    margin-right: 15px;
    width: 25px;
    text-align: center;
}
.levneletenky-about-ultimate .follow-us-list .fa-facebook { color: #1877F2; }
.levneletenky-about-ultimate .follow-us-list .fa-x-twitter { color: #14171A; }
.levneletenky-about-ultimate .follow-us-list .fa-instagram { color: #E4405F; }
.levneletenky-about-ultimate .follow-us-list .fa-square-rss { color: #FFA500; }
.levneletenky-about-ultimate .follow-us-list .fa-envelope { color: #198754; }
.levneletenky-about-ultimate .follow-us-list .fa-bell { color: #6F42C1; }
.levneletenky-about-ultimate .follow-us-list .follow-us-item-static {
    background-color: #fdfdfd;
    cursor: default;
}

/* Úprava pro responzivitu */
@media (max-width: 768px) {
    .levneletenky-about-ultimate .follow-us-list {
        grid-template-columns: 1fr;
    }
}

.levneletenky-about-ultimate main {
    font-family: var(--font-main);
    color: var(--text-color);
    line-height: 1.7;
}
.levneletenky-about-ultimate .section-padded {
    padding: 80px 0;
}
.levneletenky-about-ultimate .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}
.levneletenky-about-ultimate .section-title {
    font-family: var(--font-heading);
    font-size: 2.8rem;
    color: var(--heading-color);
    text-align: center;
    margin-bottom: 1rem;
}
.levneletenky-about-ultimate .section-subtitle {
    font-size: 1.2rem;
    text-align: center;
    max-width: 600px;
    margin: 0 auto 50px auto;
    color: var(--text-color);
}
.levneletenky-about-ultimate .bg-gray { background-color: var(--gray-color); }
.levneletenky-about-ultimate .bg-dark { background-color: var(--dark-color); }


/* --- STYLY PRO IKONY PODLE VAŠEHO VZORU (position:absolute) --- */

/* Základní definice pro elementy, které budou obsahovat ikonu */
.levneletenky-about-ultimate .hero-stats span,
.levneletenky-about-ultimate .proof-item h4 {
    position: relative; /* Nutné pro absolutní pozicování ::before */
    padding-left: 2.2rem;  /* Vytvoří místo pro ikonu */
}

/* Aplikace VAŠEHO stylu na ::before pseudo-element */
.levneletenky-about-ultimate .fa-icon::before {
    /* Začátek vašeho stylu */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
     color: var(--color-secondary);
    font-size: 1em;
    /* Konec vašeho stylu */

    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}

/* Definice obsahu pro jednotlivé ikony */
.levneletenky-about-ultimate .fa-calendar-check::before { content: "\f274"; }
.levneletenky-about-ultimate .fa-plane-departure::before { content: "\f5b0"; }
.levneletenky-about-ultimate .fa-users::before { content: "\f0c0"; }
.levneletenky-about-ultimate .fa-receipt::before { content: "\f543"; }
.levneletenky-about-ultimate .fa-filter-circle-xmark::before { content: "\e17b"; }
.levneletenky-about-ultimate .fa-handshake-simple::before { content: "\f4c6"; }
.levneletenky-about-ultimate .fa-person-walking-luggage::before { content: "\f7cf"; }
.levneletenky-about-ultimate .fa-facebook::before { font-family: "Font Awesome 6 Brands"; font-weight: 400; content: "\f39e"; }
.levneletenky-about-ultimate .fa-x-twitter::before { font-family: "Font Awesome 6 Brands"; font-weight: 400; content: "\e61b"; }
.levneletenky-about-ultimate .fa-instagram::before { font-family: "Font Awesome 6 Brands"; font-weight: 400; content: "\f16d"; }
.levneletenky-about-ultimate .fa-square-rss::before { content: "\f143"; }
.levneletenky-about-ultimate .fa-envelope::before { content: "\f0e0"; }
.levneletenky-about-ultimate .fa-bell::before { content: "\f0f3"; }

/* --- 1. Hero Section --- */
.levneletenky-about-ultimate .hero {
    position: relative;
    color: var(--light-color);
    padding: 120px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: url('../images/o-nas.jpg') no-repeat center center/cover;
}
.levneletenky-about-ultimate .hero-overlay {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.4) 100%);
}
.levneletenky-about-ultimate .hero-content { position: relative; z-index: 1; }
.levneletenky-about-ultimate .hero h1 {
    font-family: var(--font-heading);
    font-size: 3.5rem;
    margin-bottom: 1rem;
    color: var(--light-color);
    font-weight: 700;
}
.levneletenky-about-ultimate .hero h2 {
    font-family: var(--font-main);
    font-size: 1.4rem !important;
    max-width: 700px;
    margin: 0 auto 40px auto;
    font-weight: 400;
    line-height: 1.6;
    color: #fff !important;
}
.levneletenky-about-ultimate .hero-stats {
    display: flex; justify-content: center; gap: 40px;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(5px);
    padding: 20px 30px; border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.2);
}
.levneletenky-about-ultimate .hero-stats span { font-size: 1.1rem; }


/* --- 2. Mission Section --- */
.levneletenky-about-ultimate .mission-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; margin-top: 50px;
}
.levneletenky-about-ultimate .mission-item { text-align: center; }

.levneletenky-about-ultimate .mission-item h3 {
    font-family: var(--font-heading); font-size: 1.5rem; margin-bottom: 10px; color: var(--heading-color);
}

/* --- 3. Proof & Trust Section --- */
.levneletenky-about-ultimate .proof-grid {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; margin-top: 50px;
}
.levneletenky-about-ultimate .proof-item {
    background: var(--light-color); padding: 25px; border-radius: 8px; box-shadow: 0 4px 6px rgba(0,0,0,0.05);
}
.levneletenky-about-ultimate .proof-item h4 {
    font-family: var(--font-heading); font-size: 1.2rem; margin-bottom: 10px;
    display: flex; align-items: center; font-weight:600;
}
.levneletenky-about-ultimate .testimonial {
    margin: 60px auto 0 auto; padding: 40px; max-width: 800px;
    background: var(--light-color); border-radius: 8px; box-shadow: 0 10px 20px rgba(0,0,0,0.07);
    text-align: center; position: relative;
    border-top: 5px solid var(--color-secondary);
}
.levneletenky-about-ultimate .testimonial-img {
    width: 80px; height: 80px; border-radius: 50%;
    position: absolute; top: -40px; left: 50%;
    transform: translateX(-50%); border: 4px solid var(--light-color);
}
.levneletenky-about-ultimate .testimonial blockquote {
    font-size: 1rem; font-style: italic; margin-bottom: 1rem; border: none; padding: 10px;
}
.levneletenky-about-ultimate .testimonial cite {
    font-weight: bold; font-style: normal; color: var(--color-secondary);
}

/* --- 4. Philosophy Section --- */
.levneletenky-about-ultimate .philosophy { text-align: center; color: var(--light-color); position: relative; overflow: hidden;}
.levneletenky-about-ultimate .philosophy-content { max-width: 800px; margin: 0 auto; position: relative; z-index: 1;}
.levneletenky-about-ultimate .philosophy h2 {
    font-size: 2.5rem; color: var(--light-color) !important; line-height: 1.4; margin-bottom: 20px;
}
.levneletenky-about-ultimate .philosophy p { font-size: 1.1rem !important; color: #fff !important; }
.levneletenky-about-ultimate .quote-icon {
    font-size: 12rem;
    color: var(--primary-color);
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0.1;
    z-index: 0;
}
.levneletenky-about-ultimate .quote-icon .fa-solid {
    font-family: "Font Awesome 6 Free" !important;
}


/* --- 5. CTA Section --- */
.levneletenky-about-ultimate .cta { text-align: center; }
.levneletenky-about-ultimate .newsletter-form {
    margin-top: 30px; display: flex; justify-content: center; gap: 10px;
}
.levneletenky-about-ultimate .newsletter-form input {
    min-width: 350px; padding: 18px; font-size: 1.1rem;
    border: 1px solid #CBD5E0; border-radius: 8px;
}
.levneletenky-about-ultimate .newsletter-form button {
    background: var(--color-secondary); color: var(--light-color);
    padding: 18px 35px; border: none; border-radius: 8px;
    font-size: 1.1rem; font-weight: bold; cursor: pointer; transition: background-color 0.3s ease;
}
.levneletenky-about-ultimate .newsletter-form button:hover { background-color: #0056b3; }
.levneletenky-about-ultimate .social-follow { margin-top: 50px; }
.levneletenky-about-ultimate .social-follow p { margin-bottom: 20px; font-weight: bold; color: var(--heading-color); }
.levneletenky-about-ultimate .social-icons { display: flex; justify-content: center; gap: 25px; }
.levneletenky-about-ultimate .social-icons a { color: #8A94A6; }
.levneletenky-about-ultimate .social-icons a:hover { color: var(--primary-color); }
.levneletenky-about-ultimate .social-icons .fa-brands { font-size: 2rem; transition: color 0.3s ease; }

/* --- Responsive Design --- */
@media (max-width: 768px) {
    .levneletenky-about-ultimate .section-padded { padding: 60px 0; }
    .levneletenky-about-ultimate .section-title { font-size: 2.2rem; }
    .levneletenky-about-ultimate .hero h1 { font-size: 2.5rem; }
    .levneletenky-about-ultimate .hero h2 { font-size: 1.2rem; }
    .levneletenky-about-ultimate .hero-stats { flex-direction: column; gap: 15px; align-items: flex-start; }
    .levneletenky-about-ultimate .mission-grid, .proof-grid { grid-template-columns: 1fr; }
    .levneletenky-about-ultimate .newsletter-form { flex-direction: column; align-items: center; }
    .levneletenky-about-ultimate .newsletter-form input { min-width: unset; width: 100%; }
    .levneletenky-about-ultimate .newsletter-form button { width: 100%; }
    .levneletenky-about-ultimate .proof-grid {grid-template-columns: 1fr;}
}



/* =================================================================== */
/* === OPRAVA A FINÁLNÍ STYL PRO SEKCI "JAK NÁS SLEDOVAT" === */
/* =================================================================== */

.levneletenky-about-ultimate .social-follow {
    margin-top: 50px;
    text-align: center;
}

.levneletenky-about-ultimate .social-follow h2 {
    font-size: 1.8rem;
    margin-bottom: 30px;
}

.levneletenky-about-ultimate .follow-us-list {
    list-style: none;
    padding: 0;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    max-width: 800px;
}

/* Vzhled jednotlivých tlačítek/položek */
.levneletenky-about-ultimate .follow-us-list li a,
.levneletenky-about-ultimate .follow-us-list li.follow-us-item-static {
    position: relative; /* Nutné pro pozicování ikony */
    display: flex;
    align-items: center;
    justify-content: center; /* Vycentruje text, pokud by ikona chyběla */
    background-color: #F7FAFC;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 15px 20px 15px 55px; /* Vytvoří místo pro ikonu vlevo */
    text-decoration: none;
    color: #2D3748;
    font-weight: 500;
    font-size: 1.1rem;
    transition: all 0.2s ease;
}

.levneletenky-about-ultimate .follow-us-list li a:hover {
    background-color: #e9eff5;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0,0,0,0.08);
}

/* Vložení a nastylování ikony pomocí ::before */
.levneletenky-about-ultimate .follow-us-list .fa-icon::before {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.5rem;
    width: 25px; /* Zajistí stejné zarovnání */
    text-align: center;
}

/* Specifické barvy pro ikony */
.levneletenky-about-ultimate .follow-us-list .fa-facebook::before { color: #1877F2; font-family: 'FontAwesome' !important;}
.levneletenky-about-ultimate .follow-us-list .fa-x-twitter::before { color: #14171A; font-family: 'FontAwesome' !important; }
.levneletenky-about-ultimate .follow-us-list .fa-instagram::before { color: #E4405F; font-family: 'FontAwesome' !important; }
.levneletenky-about-ultimate .follow-us-list .fa-square-rss::before { color: #FFA500; font-family: 'FontAwesome' !important; }
.levneletenky-about-ultimate .follow-us-list .fa-envelope::before { color: #198754; font-family: 'FontAwesome' !important; }
.levneletenky-about-ultimate .follow-us-list .fa-bell::before { color: #6F42C1; font-family: 'FontAwesome' !important; }

.levneletenky-about-ultimate .follow-us-list .follow-us-item-static {
    background-color: #fdfdfd;
    cursor: default;
}

/* Responzivita pro tuto sekci */
@media (max-width: 768px) {
    .levneletenky-about-ultimate .follow-us-list {
        grid-template-columns: 1fr;
    }
}

/* ================================================= */
/* === FINÁLNÍ OPRAVA CHYBĚJÍCÍCH IKON (2025-08-11) === */
/* ================================================= */

/* ČÁST 1: Definice pro chybějící ikony */
/* Toto přidá do systému chybějící symboly, které se mají zobrazit. */

.levneletenky-about-ultimate .fa-shield-halved::before { content: "\f3ed"; }
.levneletenky-about-ultimate .fa-magnifying-glass::before { content: "\f002"; }
.levneletenky-about-ultimate .fa-chart-line::before { content: "\f201"; }
.levneletenky-about-ultimate .fa-sliders::before { content: "\f1de"; }


/* ============================================= */
/* Styly pro Newsletter Landing Page            */
/* ============================================= */

.newsletter-landing-page {
  padding: 60px 20px;
  background-color: #f7f9fc; /* Světle šedé pozadí */
}

.newsletter-landing-container {
  max-width: 650px;
  margin: 0 auto;
  background-color: #ffffff;
  padding: 50px 40px;
  border-radius: 12px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
  text-align: center;
}

.newsletter-landing-title {
  font-size: 2.5em;
  font-weight: 700;
  color: #1a202c;
  margin-top: 0;
  margin-bottom: 15px;
  line-height: 1.2;
  font-family: system-ui;
}

.newsletter-landing-subtitle {
  font-size: 1.125em;
  color: #4a5568;
  margin-top: 0;
  margin-bottom: 40px;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

/* Skryje nadpisy z bloku, protože máme vlastní */
.newsletter-landing-container .newsletter-widget .section-title,
.newsletter-landing-container .newsletter-widget .section-subtitle {
    display: none;
}

/* ============================================= */
/* OPRAVENÝ STYL pro Newsletter v patičce        */
/* Cílí na třídy z vašeho webu: .newsletter-widget */
/* ============================================= */

/* -- Kontejner celého bloku -- */
.newsletter-widget {
    background-color: #2c2c2c;
    border-radius: 8px;
    text-align: center;
    margin: 20px 0;
    border: 1px solid #444;
    padding: 35px 30px;
}

/* -- Hlavní nadpis -- */
.newsletter-widget .section-title {
    color: #ffffff; /* Změna barvy nadpisu na BÍLOU */
}

/* -- Podtitulek pod hlavním nadpisem -- */
.newsletter-widget .section-subtitle {
    color: #ffffff !important; /* Změna barvy popisku na BÍLOU */
    text-align: center !important; /* Zajištění perfektního vycentrování textu */
    max-width: 600px;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 25px !important;
}

/* -- Kontejner pro formulář -- */
.newsletter-form p {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-bottom: 0;
}

/* -- Pole pro zadání e-mailu -- */
.newsletter-input {
    flex-grow: 1;
    min-width: 200px;
    max-width: 350px;
    padding: 12px 20px;
    border: 1px solid #555;
    border-radius: 50px;
    background-color: #fff;
    color: #333;
    font-size: 1em;
    transition: border-color 0.3s ease;
}

/* -- Zvýraznění aktivního pole pro e-mail -- */
.newsletter-input:focus {
    outline: none;
    border-color: #00aced; /* Sjednocení barvy s novým tlačítkem */
}

/* -- Tlačítko pro odeslání -- */
.newsletter-button {
    background-color: #00aced; /* Změna barvy tlačítka na MODROU */
    color: #ffffff;
    padding: 12px 28px;
    border-radius: 50px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease;
    white-space: nowrap;
}

/* -- Efekt při najetí myší na tlačítko -- */
.newsletter-button:hover {
    background-color: #19b7f5; /* Mírně světlejší modrá pro hover efekt */
    transform: scale(1.05);
}

.newsletter-widget h2.section-title {
    color: #ffffff !important;
}

.container.text-center { margin-top: 40px; }

.newsletter-messages {color:#fff;}

a.newsletter-button:hover {color: #fff; }

.top10zceska {margin-top:35px;}

/*
  Finální CSS pro ikony v článku - podle Vašeho vzoru.
*/

/* Základní vzhled ikon - pravděpodobně už máte, ale pro jistotu */
.fa-icon::before {
  margin-right: 0.7em;
}

/* Manuální definice obsahu pro KAŽDOU ikonu, aby se zobrazila */
.fa-plane-departure::before { content: "\f5b0"; }
.fa-circle-info::before { content: "\f05a"; }
.fa-calendar-check::before { content: "\f274"; }
.fa-briefcase::before { content: "\f0b1"; }
.fa-bus-simple::before { content: "\f55e"; }
.fa-camera-retro::before { content: "\f083"; }
.fa-cloud-sun::before { content: "\f6c4"; }
.fa-heart::before { content: "\f004"; }
.fa-utensils::before { content: "\f2e7"; }
.fa-lightbulb::before { content: "\f0eb"; }

/* --- Finální oprava pro zobrazení ikon (problém s obdelníčky) --- */

/* Tento kód donutí prohlížeč použít správné písmo pro všechny ikony */
.fa-icon::before,
[class*=" fa-"]::before {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Solid" !important;
    font-weight: 900 !important; 
}

/* ---- SEKCE ČLÁNKŮ - ODKAZY NA KOTVY ---- */
.toc-nav { margin: 1.5rem 0; }
.toc-nav .toc-grid {
  list-style: none; padding: 0; margin: 0;
  display: grid; gap: .75rem;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
.toc-nav .toc-grid a {
  display: flex; align-items: center; gap: .5rem;
  text-decoration: none; border: 1px solid #e5e5e5; border-radius: 10px;
  padding: .75rem 1rem;
}
.toc-nav .toc-grid a:hover { background: #f8f8ff; }

/* Volitelné: pokud máš „sticky“ header, může se hodit odsazení cílových sekcí: */
:target { scroll-margin-top: 80px; } /* uprav hodnotu podle výšky headeru */

