.elementor-kit-5{--e-global-color-primary:#5C0034;--e-global-color-secondary:#004A60;--e-global-color-text:#777777;--e-global-color-accent:#FF0054;--e-global-color-233b92b:#9E0059;--e-global-color-f5f7b5f:#0081A7;--e-global-color-37b5fac:#00B6EC;--e-global-color-dfa2f32:#31D0FF;--e-global-color-7db3035:#76E0FF;--e-global-color-1229292:#05769721;--e-global-color-3755733:#E40081;--e-global-color-c08be4a:#FF2CA3;--e-global-color-6b50134:#FF72C2;--e-global-color-8e20bde:#9E005914;--e-global-color-3bf197b:#333333;--e-global-color-6dcd557:#4A4A4A;--e-global-color-9a661d6:#606060;--e-global-color-d5e0459:#8E8E8E;--e-global-color-1d1165b:#A4A4A4;--e-global-color-0f32d76:#BBBBBB;--e-global-color-33a8d13:#D2D2D2;--e-global-color-c3aff1b:#F6F6F6;--e-global-color-ab4cc63:#FFFFFF;--e-global-color-8266538:#02010100;--e-global-color-5a42a3a:#E3EFF2;--e-global-color-c383607:#FF8D55;--e-global-typography-primary-font-family:"Outfit";--e-global-typography-primary-font-size:18px;--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Outfit";--e-global-typography-secondary-font-size:18px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:140%;--e-global-typography-text-font-family:"Outfit";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-6c1c330-font-family:"Outfit";--e-global-typography-6c1c330-font-size:32px;--e-global-typography-6c1c330-font-weight:500;--e-global-typography-cc17dba-font-family:"Outfit";--e-global-typography-cc17dba-font-size:14px;--e-global-typography-cc17dba-font-weight:400;--e-global-typography-cc17dba-line-height:140%;--e-global-typography-281fd24-font-family:"Outfit";--e-global-typography-281fd24-font-size:60px;--e-global-typography-281fd24-font-weight:500;--e-global-typography-281fd24-line-height:110%;background-color:var( --e-global-color-ab4cc63 );color:var( --e-global-color-9a661d6 );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );overscroll-behavior:none;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 p{margin-block-end:24px;}.elementor-kit-5 a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-kit-5 a:hover{color:var( --e-global-color-3755733 );}.elementor-kit-5 h1{font-family:"Outfit", Sans-serif;font-size:52px;font-weight:400;line-height:120%;}.elementor-kit-5 h2{color:var( --e-global-color-secondary );font-family:"Outfit", Sans-serif;font-size:40px;font-weight:500;line-height:120%;}.elementor-kit-5 h3{color:var( --e-global-color-secondary );font-family:"Outfit", Sans-serif;font-size:36px;font-weight:500;line-height:140%;}.elementor-kit-5 h4{font-family:"Outfit", Sans-serif;font-size:24px;font-weight:500;line-height:140%;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );border-radius:8px 8px 8px 8px;}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{color:var( --e-global-color-ab4cc63 );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1400px;}.e-con{--container-max-width:1400px;--container-default-padding-top:0px;--container-default-padding-right:64px;--container-default-padding-bottom:0px;--container-default-padding-left:64px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-5{--e-global-typography-primary-font-size:16px;--e-global-typography-secondary-font-size:16px;--e-global-typography-text-font-size:16px;--e-global-typography-281fd24-font-size:48px;--e-global-typography-281fd24-line-height:110%;font-size:var( --e-global-typography-text-font-size );}.elementor-kit-5 a{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-5 h1{font-size:40px;}.elementor-kit-5 h2{font-size:36px;}.elementor-kit-5 h3{font-size:28px;}.elementor-kit-5 h4{font-size:20px;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:32px;--container-default-padding-bottom:0px;--container-default-padding-left:32px;}}@media(max-width:767px){.elementor-kit-5{--e-global-typography-primary-font-size:14px;--e-global-typography-secondary-font-size:14px;--e-global-typography-text-font-size:14px;--e-global-typography-6c1c330-font-size:48px;--e-global-typography-281fd24-font-size:40px;--e-global-typography-281fd24-line-height:110%;font-size:var( --e-global-typography-text-font-size );}.elementor-kit-5 a{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-5 h1{font-size:32px;}.elementor-kit-5 h2{font-size:28px;}.elementor-kit-5 h3{font-size:24px;}.elementor-kit-5 h4{font-size:22px;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:16px;--container-default-padding-bottom:0px;--container-default-padding-left:16px;}}/* Start custom CSS */.elementor-widget-woocommerce-checkout-page{

    font-family: Outfit, sans-serif !important;
}

.woolab-ic-dic-tip{
    margin-top: 8px !important;
}

.etn-single-event-ticket-wrap h3.etn-purchase-ticket-title {
	color: #00546b !important;
	font-weight: 600 !important;
}

.etn-title{
    color: #00546b;
    
}


/* příjemné hladké rolování */
html { scroll-behavior: smooth; }

.elementor-form-spinner{
display:none!important;
}

:root {
  --header-offset: 100px;    /* výška fixed headeru pro běžné návštěvníky */
  --adminbar-offset: 0px;    /* pro všechny default 0 */
}

@media (max-width: 767px){
  :root { --header-offset: 130px; }
}

/* jen pokud je WP admin bar přítomný, přičte se */
body.admin-bar { --adminbar-offset: 32px; }
@media (max-width: 782px){
  body.admin-bar { --adminbar-offset: 46px; }
}

html{
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-offset) + var(--adminbar-offset));
}


@media (max-width: 1024px){
  :root { --header-offset: 90px; }  /* tablet */
}
@media (max-width: 767px){
  :root { --header-offset: 80px; }  /* mobil */
}

/* HEADER ON SCROLL EVENTS*/

.header {
    padding-top: 16px;
    padding-bottom: 16px;
}

#header-on-scroll{
  transition: background-color .3s, box-shadow .3s;
}

#header-on-scroll.is-scrolled{
  background-color: white;
  box-shadow: 0 10px 30px rgba(0,0,0,.12);
}


/* Desktop menu text */
#header-on-scroll.is-scrolled .secondary--menu--desktop .e-n-menu-title-text {
  color: #004A60 !important;
}

/* Dropdown arrow */
#header-on-scroll.is-scrolled .secondary--menu--desktop .e-n-menu-dropdown-icon svg {
  fill: #fff !important;
}

/* pokud je tam link přímo */
#header-on-scroll.is-scrolled .secondary--menu--desktop a {
  color: #004A60 !important;
    
}

/* pokud je tam link přímo */
#header-on-scroll.is-scrolled .secondary--menu--desktop a:hover {
  color: #E40081!important;
    
}

/* Homepage cart - barva po scrollu */
#header-on-scroll.is-scrolled .homepage-cart .elementor-menu-cart__toggle_button,
#header-on-scroll.is-scrolled .homepage-cart .elementor-button-text,
#header-on-scroll.is-scrolled .homepage-cart .elementor-button-icon {
	color: #000000 !important;
}

#header-on-scroll.is-scrolled .homepage-cart svg,
#header-on-scroll.is-scrolled .homepage-cart svg path {
	fill: #000000 !important;
	color: #000000 !important;
}

#header-on-scroll .homepage-cart .elementor-menu-cart__toggle_button,
#header-on-scroll .homepage-cart .elementor-button-text,
#header-on-scroll .homepage-cart .elementor-button-icon,
#header-on-scroll .homepage-cart svg,
#header-on-scroll .homepage-cart svg path {
	transition: color .25s ease, fill .25s ease;
}

#header-on-scroll.is-scrolled .hero--button .elementor-button {
	color: #9e0059 !important;
	border-color: #9e0059 !important;
}


#header-on-scroll.is-scrolled .login--homepage a.elementor-icon svg,
#header-on-scroll.is-scrolled .login--homepage a.elementor-icon svg path {
	fill: #004a60 !important;
}

/* Account button - základní stav pro běžné stránky */
.my--account {
	border: 1px solid #004A60;
	border-radius: 999px;
	padding: 8px 14px 8px 8px;
	cursor: pointer;
	transition: border-color .25s ease;
}

.my--account .elementor-icon-list-items {
	margin: 0;
	padding: 0;
}

.my--account .elementor-icon-list-item {
	display: flex;
	align-items: center;
}

.my--account .elementor-icon-list-text,
.my--account .elementor-icon-list-icon {
	color: #004A60 !important;
	transition: color .25s ease;
}

.my--account .elementor-icon-list-icon svg,
.my--account .elementor-icon-list-icon svg path {
	fill: currentColor !important;
	transition: fill .25s ease;
}

/* Homepage před scrollem - bílá varianta */
#header-on-scroll:not(.is-scrolled) .my--account--homepage {
	border-color: rgba(255, 255, 255, .75) !important;
}

#header-on-scroll:not(.is-scrolled) .my--account--homepage .elementor-icon-list-text,
#header-on-scroll:not(.is-scrolled) .my--account--homepage .elementor-icon-list-icon {
	color: #ffffff !important;
}

/* Homepage po scrollu - modrá varianta */
#header-on-scroll.is-scrolled .my--account--homepage {
	border-color: #004A60 !important;
}

#header-on-scroll.is-scrolled .my--account--homepage .elementor-icon-list-text,
#header-on-scroll.is-scrolled .my--account--homepage .elementor-icon-list-icon {
	color: #004A60 !important;
}

/* Hover přes celý button včetně borderu/paddingu */
.my--account:hover {
	border-color: #E40081 !important;
}

.my--account:hover .elementor-icon-list-text,
.my--account:hover .elementor-icon-list-icon {
	color: #E40081 !important;
}

.my--account:hover .elementor-icon-list-icon svg,
.my--account:hover .elementor-icon-list-icon svg path {
	fill: currentColor !important;
}

/* Hover musí vyhrát i na homepage před scrollem / po scrollu */
#header-on-scroll .my--account--homepage:hover {
	border-color: #E40081 !important;
}

#header-on-scroll .my--account--homepage:hover .elementor-icon-list-text,
#header-on-scroll .my--account--homepage:hover .elementor-icon-list-icon {
	color: #E40081 !important;
}

#header-on-scroll.is-scrolled .secondary--menu--desktop .elementor-menu-toggle svg {
    fill: #333333;
}


.cart-link-hidden .added_to_cart.wc-forward {
    display: none !important;
}

/*SECTION SETTINGS*/
.hero-homepage{
    padding-top: 240px;
    padding-bottom: 64px;
}

.hero--outer-container{
    padding-top: 180px;
    padding-bottom: 120px;
}

.hero--container{
    padding: 96px 64px;
    background-color: #004A60;
    border-radius: 12px;
}

.hero--homepage{
    padding-top: 120px;
    margin-bottom: 120px;
}


/* conrtainer paddings*/
.hero--about--us {
    padding-top: 112px;
}


.section--footer {
    padding-top: 96px;
    padding-bottom: 96px;
}


.section--hero {
    padding-top: 200px;
    padding-bottom: 200px;
}


.section--first {
    padding-top: 120px;
    padding-bottom: 80px;
}


.section--next { 
      padding-top: 80px;
      padding-bottom: 80px;
    }

.section--single {
    padding-top: 120px;
    padding-bottom: 120px;
}

.section--single--after--hero {
    padding-top: 40px;
    padding-bottom: 120px;
}

.section--inner{
    padding: 32px;
}


.grid--inner {
    padding: 24px;
}

p, p:last-child{
    margin: 0;
}


.badge{
    padding: 16px;
    border-radius: 4px;
}

/* Event ticket badge */
.event-ticket-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 14px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  color: #fff;
  white-space: nowrap;
}

.event-ticket-badge--available {
  background: #58c26b;
}

.event-ticket-badge--soldout {
  background: #ff0f6d;
}

.event-ticket-badge--hidden {
  display: none;
}


.shadow-card {
  padding: 24px;
  border-radius: 16px;
  box-shadow: 0 4px 52px 22px rgba(0, 0, 0, 0.06);
  background-color: white;
}

.shadow-card--larger {
  padding: 32px;
  border-radius: 16px;
  box-shadow: 0 4px 52px 22px rgba(0, 0, 0, 0.06);
  background-color: white;
}

.usp-shadow-card {
  padding: 24px;
  border-radius: 12px;
  box-shadow: 0 2px 78px -1px rgba(0, 0, 0, 0.05);
  background-color: white;
}




/*Woocommerce Thank you page Tables Edits*/
.woocommerce-order-details__title, .elementor-kit-5 .woocommerce-column__title{
    margin-bottom: 24px !important;
}

.woocommerce ul.order_details {
    padding: 24px !important;
    background-color: #e6f2f5;
    border-radius: 8px;
}


.shop_table td {
    font-size: 16px;
}

.modal{
    padding: 48px;
}

/*Add divider to Price List*/
/* Add divider to Elementor Price List */
.price-list .elementor-price-list {
	margin: 0;
	padding: 0;
}

.price-list .elementor-price-list > .elementor-price-list-item {
	padding-block: 8px;
	border-bottom: 1px solid #DDE5EA;
}

.price-list .elementor-price-list > .elementor-price-list-item:first-child {
	padding-top: 0;
}

.price-list .elementor-price-list > .elementor-price-list-item:last-child {
	padding-bottom: 0;
	border-bottom: none;
}



/* =========================================================
   Shared tokens
   ========================================================= */

.single-etn,
.single-sfwd-courses {
	--content-primary: #00546b;
	--content-accent: #b00072;
	--content-soft-bg: #e8f5f8;
	--content-border: #d9e5ea;
	--content-radius: 8px;
	--content-card-padding: 24px;
	--content-gap: 16px;
	--checklist-icon-size: 28px;
}


/* =========================================================
   Editor content checklists
   Eventin + LearnDash text content
   ========================================================= */

.single-etn .elementor-widget-theme-post-content > ul,
.single-sfwd-courses .elementor-widget-theme-post-content > ul {
	list-style: none;
	margin: 24px 0 0;
	padding: var(--content-card-padding);
	background: var(--content-soft-bg);
	border-radius: var(--content-radius);
	display: flex;
	flex-direction: column;
	gap: var(--content-gap);
}

.single-etn .elementor-widget-theme-post-content > ul > li,
.single-sfwd-courses .elementor-widget-theme-post-content > ul > li {
	position: relative;
	margin: 0;
	padding-left: calc(var(--checklist-icon-size) + 24px);
	color: var(--content-primary);
	font-size: 20px;
	font-weight: 600;
	line-height: 1.35;
}

.single-etn .elementor-widget-theme-post-content > ul > li::marker,
.single-sfwd-courses .elementor-widget-theme-post-content > ul > li::marker {
	font-size: 0;
}

.single-etn .elementor-widget-theme-post-content > ul > li::before,
.single-sfwd-courses .elementor-widget-theme-post-content > ul > li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: var(--checklist-icon-size);
	height: var(--checklist-icon-size);
	border-radius: 50%;
	background: var(--content-accent);
	transform: translateY(-50%);
}

.single-etn .elementor-widget-theme-post-content > ul > li::after,
.single-sfwd-courses .elementor-widget-theme-post-content > ul > li::after {
	content: "";
	position: absolute;
	left: 10px;
	top: 50%;
	width: 7px;
	height: 12px;
	border: solid #fff;
	border-width: 0 3px 3px 0;
	transform: translateY(-58%) rotate(45deg);
}

.single-etn .elementor-widget-theme-post-content > ul > li > p,
.single-sfwd-courses .elementor-widget-theme-post-content > ul > li > p {
	margin: 0;
}


/* =========================================================
   LearnDash Course Content outline
   ========================================================= */

.single-sfwd-courses .learndash-wrapper .ld-item-list-item {
	border: 1px solid var(--content-border);
	border-radius: var(--content-radius);
	background: #fff;
	margin-bottom: 16px;
	overflow: hidden;
}

.single-sfwd-courses .learndash-wrapper .ld-item-list-item-preview {
	padding: 20px 24px;
}

.single-sfwd-courses .learndash-wrapper .ld-item-title {
	color: var(--content-primary);
	font-weight: 600;
}



/* =========================================================
   Current event schedule
   ========================================================= */

.current-event-schedule {
	--schedule-bg: #e8f5f8;
	--schedule-primary: #00546b;
	--schedule-dark: #00546b;
	--schedule-text: #4a4a4a;
	--schedule-radius: 12px;
	--schedule-gap: 16px;

	display: flex;
	flex-direction: column;
	gap: var(--schedule-gap);
}

/* jedna položka harmonogramu */
.current-event-schedule__item {
	display: grid;
	grid-template-columns: 126px 1fr;
	gap: 18px;
	align-items: flex-start;
	padding: 18px;
	background: var(--schedule-bg);
	border-radius: var(--schedule-radius);
}

/* čas */
.current-event-schedule__time {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	width: 108px;
	min-height: 44px;
	padding: 10px 12px;
	border-radius: 6px;
	background: var(--schedule-dark);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.1;
	white-space: nowrap;
}

.current-event-schedule__content {
	min-width: 0;
}

/* nadpis položky */
.current-event-schedule .current-event-schedule__item .current-event-schedule__title {
	margin: 0 0 8px;
	color: var(--schedule-primary);
	font-size: 24px;
	font-weight: 700;
	line-height: 1.3;
}

/* popis */
.current-event-schedule__description {
	color: var(--schedule-text);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.5;
}

.current-event-schedule__description p {
	margin: 0;
}

.current-event-schedule__description p + p {
	margin-top: 8px;
}

/* pokud v popisu použijete odrážky */
.current-event-schedule__description ul {
	margin: 0;
	padding-left: 18px;
}

.current-event-schedule__description li {
	margin: 0;
	padding-left: 0;
	color: var(--schedule-text);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
}

.current-event-schedule__description li + li {
	margin-top: 2px;
}

.current-event-schedule__location,
.current-event-schedule__speakers {
	margin-top: 8px;
	color: var(--schedule-primary);
	font-size: 14px;
	font-weight: 700;
}

/* mobile */
@media (max-width: 767px) {
	.current-event-schedule__item {
		grid-template-columns: 1fr;
		gap: 12px;
		padding: 16px;
	}

	.current-event-schedule__time {
		width: fit-content;
		min-height: auto;
		padding: 9px 14px;
	}

	.current-event-schedule__title {
		font-size: 17px;
	}
}


/* Reviews arrows - hover only */
.reviews-btn {
	cursor: pointer;
}

.reviews-btn svg,
.reviews-btn svg path,
.reviews-btn svg * {
	transition: fill .25s ease;
}

.reviews-btn:hover svg,
.reviews-btn:hover svg path,
.reviews-btn:hover svg * {
	fill: #e40081 !important;
}

/* Mobile */
@media (max-width: 767px) {
	.reviews-nav--desktop {
		display: none;
	}

	.reviews-nav--mobile {
		display: flex;
		justify-content: center;
		margin-top: 24px;
	}

	.reviews-btn {
		width: 44px;
		height: 44px;
	}
}


.woocommerce .event-materials-downloads,
.woocommerce-page .event-materials-downloads {
	font-family: var(--e-global-typography-text-font-family), "Outfit", sans-serif;
}

.woocommerce .event-materials-downloads h2,
.woocommerce-page .event-materials-downloads h2 {
	font-family: var(--e-global-typography-primary-font-family), "Outfit", sans-serif;
	font-weight: 600;
}

.woocommerce .event-materials-downloads p,
.woocommerce .event-materials-downloads strong,
.woocommerce-page .event-materials-downloads p,
.woocommerce-page .event-materials-downloads strong {
	font-family: var(--e-global-typography-text-font-family), "Outfit", sans-serif;
}

.woocommerce .event-materials-downloads .button,
.woocommerce-page .event-materials-downloads .button {
	font-family: var(--e-global-typography-accent-font-family), "Outfit", sans-serif;
	font-weight: 600;
}




@media only screen and (max-width: 767px) {
    .hero-homepage{
    padding-top: 200px;
    padding-bottom: 64px;
     }
    .section--inner--left{
        padding: 20px;
        margin: 0;
    }

    .section--inner--right{
        padding: 20px;
        margin: 0;
    }
    
    .section--single { 
      padding-top: 40px;
      padding-bottom: 40px;
   }
   
   .section--first { 
      padding-top: 64px;
      padding-bottom: 40px;
    }
    
    .section--footer {
        padding-top: 48px;
        padding-bottom: 48px;
    }


    .section--next {
        padding-top: 64px;
        padding-bottom: 64px;
    }

    .section--next { 
      padding-top: 40px;
      padding-bottom: 40px;
    }
    .section--inner{
        padding: 16px;
    }


    .section--last { 
        padding-top: 40px;
        padding-bottom: 80px;
    }
    
    .section--hero {
        padding-top: 40px;
        padding-bottom: 0px;
        min-height: 240px;
    }
    .hero--outer-container{
        padding-top: 120px;
        padding-bottom: 40px;
    }

    .hero--container{
        padding: 32px 24px;
        background-color: #004A60;
        border-radius: 12px;
    }
    .ant-form-item-vertical .ant-form-item-label{

        font-size: 16px;
    }


}

/* Checkout order review - řádky přes celou šířku */
.elementor-widget-woocommerce-checkout-page 
table.shop_table.woocommerce-checkout-review-order-table thead tr,
.elementor-widget-woocommerce-checkout-page 
table.shop_table.woocommerce-checkout-review-order-table tbody tr.cart_item,
.elementor-widget-woocommerce-checkout-page 
table.shop_table.woocommerce-checkout-review-order-table tfoot tr {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) max-content !important;
    width: 100% !important;
    column-gap: 32px !important;
    align-items: start !important;
}

/* Levá část */
.elementor-widget-woocommerce-checkout-page 
table.shop_table.woocommerce-checkout-review-order-table th.product-name,
.elementor-widget-woocommerce-checkout-page 
table.shop_table.woocommerce-checkout-review-order-table td.product-name,
.elementor-widget-woocommerce-checkout-page 
table.shop_table.woocommerce-checkout-review-order-table tfoot th {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
}

/* Pravá část - ceny úplně doprava */
.elementor-widget-woocommerce-checkout-page 
table.shop_table.woocommerce-checkout-review-order-table th.product-total,
.elementor-widget-woocommerce-checkout-page 
table.shop_table.woocommerce-checkout-review-order-table td.product-total,
.elementor-widget-woocommerce-checkout-page 
table.shop_table.woocommerce-checkout-review-order-table tfoot td {
    width: auto !important;
    justify-self: end !important;
    text-align: right !important;
    white-space: nowrap important;
}




.form-row .validate-required{
    padding-bottom: 24px !important;
}


/* Checkout - privacy policy + obchodní podmínky text */
.woocommerce-checkout 
.woocommerce-privacy-policy-text,
.woocommerce-checkout 
.woocommerce-privacy-policy-text p,
.woocommerce-checkout 
.woocommerce-terms-and-conditions-wrapper 
.woocommerce-form__label-for-checkbox,
.woocommerce-checkout 
.woocommerce-terms-and-conditions-wrapper 
.woocommerce-terms-and-conditions-checkbox-text {
    line-height: 140% !important;
}

/* Odkazy uvnitř obou textů */
.woocommerce-checkout 
.woocommerce-privacy-policy-text a,
.woocommerce-checkout 
.woocommerce-terms-and-conditions-wrapper 
.woocommerce-terms-and-conditions-checkbox-text a {
    line-height: inherit !important;
}

/* Checkbox zarovnání */
.woocommerce-checkout 
.woocommerce-terms-and-conditions-wrapper 
.woocommerce-form__label-for-checkbox {
    position: relative;
    display: block !important;
    padding-left: 24px !important;
}

.woocommerce-checkout 
.woocommerce-terms-and-conditions-wrapper 
.woocommerce-form__label-for-checkbox input[type="checkbox"] {
    position: absolute;
    left: 0;
    top: 0.35em;
    margin: 0 !important;
}

/* Checkout - množství běžných produktů hned za názvem */
.woocommerce-checkout 
.woocommerce-checkout-review-order-table td.product-name {
    display: block !important;
}

/* Quantity typu × 2 */
.woocommerce-checkout 
.woocommerce-checkout-review-order-table td.product-name .product-quantity {
    display: inline !important;
    margin-left: 6px !important;
    margin-right: 0 !important;
    float: none !important;
    position: static !important;
    width: auto !important;
    min-width: 0 !important;
    text-align: left !important;
    white-space: nowrap !important;
}




/* Checkout - kompaktnější shrnutí objednávky */
.woocommerce-checkout 
.woocommerce-checkout-review-order-table tbody tr.cart_item {
    padding-top: 0 !important;
    padding-bottom: 12px !important;
}

/* Když je více produktů, menší mezera mezi nimi */
.woocommerce-checkout 
.woocommerce-checkout-review-order-table tbody tr.cart_item + tr.cart_item {
    padding-top: 6px !important;
}

/* Zrušit zbytečné paddingy uvnitř buněk */
.woocommerce-checkout 
.woocommerce-checkout-review-order-table tbody td.product-name,
.woocommerce-checkout 
.woocommerce-checkout-review-order-table tbody td.product-total {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Eventin detail blíž k názvu produktu */
.woocommerce-checkout 
.woocommerce-checkout-review-order-table .etn-ticket-details {
    margin-top: 6px !important;
}

.woocommerce-checkout 
.woocommerce-checkout-review-order-table .single-ticket-details__title {
    margin: 0 !important;
    line-height: 140% !important;
}

/* Patka tabulky - mezisoučet / cena celkem */
.woocommerce-checkout 
.woocommerce-checkout-review-order-table tfoot tr {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
}

/* První řádek patky po produktech trochu oddělit, ale ne moc */
.woocommerce-checkout 
.woocommerce-checkout-review-order-table tfoot tr:first-child {
    padding-top: 24px !important;
}

/* Buňky v patce bez dalších vertikálních paddingů */
.woocommerce-checkout 
.woocommerce-checkout-review-order-table tfoot th,
.woocommerce-checkout 
.woocommerce-checkout-review-order-table tfoot td {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}


.registration--form .elementor-message:before,
.registration--form .elementor-error:before {
	content: "×" !important;
	font-family: inherit !important;
	font-weight: 700 !important;
	display: inline-block;
	margin-right: 6px;
	color: #E40081;
}


/* Account modal / popup - jednotné hlavní notifikace */
.auth-modal,
.account--popup {
	--account-error: #E40081;
	--account-error-bg: rgba(228, 0, 129, .06);
	--account-error-border: rgba(228, 0, 129, .28);

	--account-success: #008a3d;
	--account-success-bg: rgba(0, 138, 61, .07);
	--account-success-border: rgba(0, 138, 61, .25);

	--account-notice-radius: 8px;
	--account-notice-padding: 14px 16px;
	--account-notice-margin: 0 0 22px 0;
	--account-notice-font-size: 18px;
	--account-notice-line-height: 1.45;
}

/* Login AJAX notice - defaultně schovat */
.auth-modal .course-ajax-login-notice {
	display: none;
}

/* Hlavní notifikace - login + registrace */
.auth-modal .course-ajax-login-notice.is-error,
.auth-modal .course-ajax-login-notice.is-success,
.account--popup .account-form-notices > .elementor-message,
.account--popup form > .elementor-message.elementor-message-danger,
.account--popup form > .elementor-message.elementor-message-success {
	display: block !important;
	width: 100%;
	margin: var(--account-notice-margin) !important;
	padding: var(--account-notice-padding) !important;
	border-radius: var(--account-notice-radius) !important;
	font-size: var(--account-notice-font-size) !important;
	line-height: var(--account-notice-line-height) !important;
	font-weight: 400 !important;
}

/* Error hlavní notifikace */
.auth-modal .course-ajax-login-notice.is-error,
.account--popup .account-form-notices > .elementor-message-danger,
.account--popup form > .elementor-message.elementor-message-danger {
	color: var(--account-error) !important;
	background: var(--account-error-bg) !important;
	border: 1px solid var(--account-error-border) !important;
}

/* Success hlavní notifikace */
.auth-modal .course-ajax-login-notice.is-success,
.account--popup .account-form-notices > .elementor-message-success,
.account--popup form > .elementor-message.elementor-message-success {
	color: var(--account-success) !important;
	background: var(--account-success-bg) !important;
	border: 1px solid var(--account-success-border) !important;
}

/* Hlavní notifikace bez ikonky */
.auth-modal .course-ajax-login-notice::before,
.account--popup .account-form-notices > .elementor-message::before,
.account--popup form > .elementor-message.elementor-message-danger::before,
.account--popup form > .elementor-message.elementor-message-success::before {
	content: none !important;
	display: none !important;
}

/* Inline chyby pod poli */
.account--popup .elementor-field-group .elementor-message.elementor-help-inline,
.account--popup .elementor-field-group .elementor-message.elementor-form-help-inline {
	display: block;
	margin-top: 8px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #E40081 !important;
	font-size: 16px;
	line-height: 1.4;
}

/* Inline chyby - vlastní křížek */
.account--popup .elementor-field-group .elementor-message.elementor-help-inline::before,
.account--popup .elementor-field-group .elementor-message.elementor-form-help-inline::before {
	content: "×" !important;
	display: inline-block !important;
	font-family: inherit !important;
	font-weight: 700 !important;
	margin-inline-end: 6px;
	color: currentColor !important;
}/* End custom CSS */