/*
Theme Name: Divi Child by Divi Extended
Theme URI: https://diviextended.com/divi-child-themes/
Description: A starter child theme for Divi, built with best practices. Generated with Divi Extended Child Theme Generator.
Author: Divi 5 - Terezky
Author URI: https://elicus.com/
Template: Divi
Version: 1.0.1
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: divi-child
Domain Path: /languages
*/

/* Generated with Divi Extended Child Theme Generator
   https://diviextended.com/divi-child-theme-generator/ */


/* ==========================================================================
   Global Styles
   General resets, box model, body defaults, links, and utility classes.
   ========================================================================== */

/* Add your global styles below */


/* ==========================================================================
   Typography
   Headings (h1-h6), paragraphs, blockquotes, lists, and font overrides.
   ========================================================================== */

/* Add your typography styles below */


/* ==========================================================================
   Header & Navigation
   Main header, logo, primary menu, mobile menu, top header bar.
   ========================================================================== */

/* Add your header styles below */


/* ==========================================================================
   Footer
   Footer widgets, footer menu, bottom bar, copyright area.
   ========================================================================== */

/* Add your footer styles below */


/* ==========================================================================
   Blog & Archive
   Blog listing, archive pages, category pages, search results, pagination.
   ========================================================================== */

/* Add your blog styles below */


/* ==========================================================================
   Single Post
   Post title, meta, featured image, content area, author box, related posts.
   ========================================================================== */

/* Add your single post styles below */


/* ==========================================================================
   Single Page
   Default page template, full-width page, landing pages.
   ========================================================================== */

/* Add your single page styles below */


/* ==========================================================================
   Sidebar & Widgets
   Widget areas, widget titles, default WordPress widgets, custom widgets.
   ========================================================================== */

/* Add your sidebar styles below */


/* ==========================================================================
   Responsive / Media Queries
   Breakpoint-specific overrides for tablet and mobile.
   ========================================================================== */

/* Tablet (max-width: 980px) */
@media only screen and (max-width: 980px) {

}

/* Mobile (max-width: 767px) */
@media only screen and (max-width: 767px) {

}


/* ==========================================================================
   FAPI – objednávkový formulář (Event průvodkyně)
   Platí pro všechny FAPI formuláře vložené na webu.
   ========================================================================== */

/* Formulář jako jeden světle modrý box */
.fapi-order-form {
  background: #f4fcff !important;
  border-radius: 20px;
  max-width: 720px;
  margin: 0 auto !important;
  padding: 12px 16px 32px !important;
  font-family: "Open Sans", Arial, sans-serif;
}
.fapi-order-form,
.fapi-order-form div,
.fapi-order-form span,
.fapi-order-form p,
.fapi-order-form label {
  color: #1c3559;
}

/* Nadpisy bloků – bez tmavého pruhu, na střed, písmem webu */
.fapi-order-form .fapi-container-header {
  background: transparent !important;
  padding: 32px 24px 14px !important;
}
.fapi-order-form .fapi-form-item-group-0 .fapi-container-header {
  padding-top: 20px !important;
}
.fapi-order-form .fapi-form-basic-block-title,
.fapi-order-form .fapi-form-basic-block-title * {
  font-family: "new-hero", "Montserrat", sans-serif !important;
  font-weight: 800 !important;
  font-size: 24px !important;
  line-height: 1.2 !important;
  color: #1c3559 !important;
  text-align: center !important;
}

/* Popisky polí */
.fapi-order-form label {
  color: #1c3559 !important;
  font-weight: 600 !important;
  font-size: 14px !important;
}

/* Pole formuláře – bílá, zaoblená, jemný okraj */
.fapi-order-form input[type="text"],
.fapi-order-form input[type="email"],
.fapi-order-form input[type="tel"],
.fapi-order-form input[type="number"],
.fapi-order-form select,
.fapi-order-form textarea {
  background: #ffffff !important;
  border: 1px solid #d9eef7 !important;
  border-radius: 10px !important;
  padding: 12px 16px !important;
  color: #1c3559 !important;
  font-size: 16px !important;
  min-height: 48px;
  box-shadow: none !important;
}
.fapi-order-form input:focus,
.fapi-order-form select:focus,
.fapi-order-form textarea:focus {
  border-color: #1874b0 !important;
  outline: none;
}
.fapi-order-form input[type="radio"],
.fapi-order-form input[type="checkbox"] {
  accent-color: #1874b0;
}

/* Položka (produkt a cena) */
.fapi-order-form .fapi-form-item {
  background: #ffffff;
  border-radius: 10px;
  padding: 16px 20px !important;
}

/* Platební metody */
.fapi-order-form .fapi-form-payment-method {
  background: #ffffff !important;
  border-radius: 10px !important;
}

/* Odkazy */
.fapi-order-form a {
  color: #1874b0 !important;
}

/* Tlačítko – tmavě modré */
.fapi-order-form .fapi-submit-button {
  background: #1c3559 !important;
  border: 0 !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
  font-size: 18px !important;
  padding: 14px 32px !important;
}
.fapi-order-form .fapi-submit-button,
.fapi-order-form .fapi-submit-button * {
  color: #ffffff !important;
}
.fapi-order-form .fapi-submit-button:hover {
  background: #1874b0 !important;
}

/* Plovoucí cena „Celkem k úhradě“ */
.fapi-order-form .fapi-float-price-container {
  background: #1c3559 !important;
  border-radius: 10px !important;
}
.fapi-order-form .fapi-float-price-container,
.fapi-order-form .fapi-float-price-container * {
  color: #ffffff !important;
}

/* Nadpisy: H1 tyrkysové, ostatní nadpisy berou globální barvu (tmavě modrá) */
body h1, body h1 a { color: #67daff; }

/* ===== Menu – svislé zarovnání položek a tlačítek na střed ===== */
#menu-main { align-items: center; }
#menu-main > li { display: flex; align-items: center; }
#menu-main > li > a { display: flex; align-items: center; padding-top: 10px !important; padding-bottom: 10px !important; }
#menu-main > li.menu-item-has-children > a::after { top: 50% !important; transform: translateY(-50%); }

/* ===== Menu – tlačítka Kontakt a Členská sekce (třídy se nastaví u položek menu) ===== */
#menu-main .ep-menu-kontakt > a,
#menu-main .ep-menu-clenska > a {
	padding: 10px 20px !important;
	border-radius: 10px;
	color: #fafcfd !important;
	font-weight: 700;
	opacity: 1 !important;
}
#menu-main .ep-menu-kontakt > a { background: #1c3559; }
#menu-main .ep-menu-clenska > a { background: #67daff; }
#menu-main .ep-menu-clenska > a::before,
.et_mobile_menu .ep-menu-clenska > a::before,
.ep-menu-klic::before {
	content: "";
	display: inline-block;
	width: 15px; height: 15px;
	margin-right: 8px;
	vertical-align: -2px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='5' cy='8' r='3.2'/%3E%3Cpath d='M8.2 8H15M12.6 8v2.6M14.8 8v2'/%3E%3C/svg%3E") center / contain no-repeat;
	        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='5' cy='8' r='3.2'/%3E%3Cpath d='M8.2 8H15M12.6 8v2.6M14.8 8v2'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ===== Menu – rozbalovací karta na počítači ===== */
#menu-main .sub-menu {
	width: 400px;
	padding: 14px 12px;
	border: 0 !important;
	border-radius: 20px;
	background: #fafcfd;
	box-shadow: 0 18px 50px rgba(28, 53, 89, .16);
}
#menu-main .sub-menu li { padding: 0; width: 100%; }
#menu-main .sub-menu a {
	display: block;
	width: auto !important;
	padding: 12px 14px !important;
	border-radius: 12px;
	font-size: 16px;
	font-weight: 700;
	color: #1c3559 !important;
	opacity: 1 !important;
}
#menu-main .sub-menu a:hover { background: #eaf8ff; }
.ep-menu-popis {
	display: block;
	margin-top: 3px;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.4;
	color: #1874b0;
}

/* ===== Menu na mobilu – vyjíždějící panel ===== */
@media (max-width: 980px) {
	.mobile_nav { background: #1c3559; border-radius: 10px; padding: 7px 8px; }
	.mobile_nav .mobile_menu_bar::before { color: #fafcfd !important; }
	.ep-menu-klic {
		display: inline-flex; align-items: center; justify-content: center;
		width: 44px; height: 44px; margin-right: 8px;
		border-radius: 10px; background: #67daff; color: #fafcfd;
		vertical-align: middle;
	}
	.ep-menu-klic::before { width: 20px; height: 20px; margin: 0; }

	.et_mobile_menu {
		position: fixed !important;
		top: 0 !important; right: 0; bottom: 0; left: auto !important;
		width: 340px !important; max-width: 88vw;
		display: flex !important; flex-direction: column; gap: 4px;
		padding: 84px 20px 26px !important;
		border: 0 !important;
		background: #fafcfd !important;
		box-shadow: -16px 0 40px rgba(28, 53, 89, .18);
		transform: translateX(105%);
		transition: transform .3s ease;
		overflow-y: auto;
		z-index: 100000;
	}
	.ep-menu-open .et_mobile_menu {
		transform: none;
		box-shadow: 0 0 0 100vmax rgba(28, 53, 89, .35), -16px 0 40px rgba(28, 53, 89, .18);
	}
	.ep-menu-open body { overflow: hidden; }
	.admin-bar .et_mobile_menu { top: 46px !important; }

	.et_mobile_menu .ep-menu-hlava { position: absolute; top: 22px; right: 20px; border: 0; }
	.ep-menu-zavrit {
		width: 44px; height: 44px; border: 0; border-radius: 999px; cursor: pointer;
		background: #eaf8ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18' fill='none' stroke='%231c3559' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M4 4l10 10M14 4L4 14'/%3E%3C/svg%3E") center / 18px no-repeat;
	}

	.et_mobile_menu li { border: 0 !important; }
	.et_mobile_menu li a {
		padding: 12px 6px !important;
		border: 0 !important;
		background: transparent !important;
		font-size: 18px; font-weight: 700;
		color: #1c3559 !important;
	}
	.et_pb_menu .et_mobile_menu li .sub-menu,
	.et_mobile_menu .sub-menu {
		display: none !important;
		margin: 0 0 6px !important; padding: 6px !important;
		border-radius: 16px; background: #eaf8ff;
	}
	.et_mobile_menu .ep-otevreno > a { color: #1874b0 !important; }
	.et_pb_menu .et_mobile_menu li.ep-otevreno > .sub-menu { display: block !important; }
	.et_mobile_menu .sub-menu a { padding: 10px 12px !important; font-size: 15px; }

	.et_mobile_menu .ep-menu-clenska { order: 98; margin-top: auto; }
	.et_mobile_menu .ep-menu-kontakt { order: 99; margin-top: 10px; }
	.et_mobile_menu .ep-menu-clenska > a,
	.et_mobile_menu .ep-menu-kontakt > a {
		display: flex; align-items: center; justify-content: center;
		padding: 14px 20px !important;
		border-radius: 10px;
		font-size: 16px;
		color: #fafcfd !important;
	}
	.et_mobile_menu .ep-menu-clenska > a { background: #67daff !important; }
	.et_mobile_menu .ep-menu-kontakt > a { background: #1c3559 !important; }
}

/* ===== Lokace – Komentář Event průvodkyně: české uvozovky ve fontu EP ===== */
.ep-komentar p::before,
.ep-komentar p::after {
	font-family: new-hero, sans-serif;
	font-weight: 900;
	color: #67daff;
	font-size: 1.5em;
	line-height: 0;
}
.ep-komentar p::before { content: "\201E"; margin-right: .08em; }
.ep-komentar p::after { content: "\201C"; margin-left: .08em; }
/* uvozovky jen na začátku prvního a na konci posledního odstavce */
.ep-komentar ~ .ep-komentar p::before { content: none; }
.ep-komentar:has(~ .ep-komentar) p::after { content: none; }

/* Lokace – počet lůžek u ubytování (zobrazí se jen když je vyplněno) */
.ep-luzka:empty{display:none}
.ep-luzka:not(:empty)::before{content:"\00a0· "}
.ep-luzka:not(:empty)::after{content:"\00a0lůžek"}
