/* e-swiper.min.css (pozicování šipek lightboxu) načítá mu-plugin: Elementor ho sám přidává jen na stránky s carousel widgetem, naše fotky stavíme z kontejnerů */
.ps-icon-inline .elementor-icon-wrapper{line-height:0}
.ps-hero,.ps-hero-sub{background-color:#3d3d35}
@supports (min-height:100svh){@media (min-width:768px){.elementor .e-con.ps-hero{--min-height:100svh}}}
@media (min-width:783px){body.admin-bar .elementor .e-con.ps-hero{--min-height:calc(100vh - 32px)}}
@media (min-width:768px) and (max-width:782px){body.admin-bar .elementor .e-con.ps-hero{--min-height:calc(100vh - 46px)}}
.ps-button{transition:background-color .2s}
.ps-button .elementor-widget-image,.ps-button .elementor-widget-image .elementor-widget-container{line-height:0}
.ps-button .elementor-widget-image img{display:block}
.ps-hero-dot{background-clip:content-box;cursor:pointer}
.ps-hero-arrow .elementor-icon{border-color:rgba(244,241,234,.6)!important;cursor:pointer}
.ps-menu{display:none!important}
.ps-menu.is-open{display:flex!important;height:100vh;height:100dvh;overflow-y:auto}
body.elementor-editor-active .ps-menu{display:flex!important;position:relative!important;min-height:0!important}
.ps-menu-open,.ps-menu-close{cursor:pointer}
.ps-menu,#paticka{font-variant-emoji:text}
.ps-photo-todo{background-image:repeating-linear-gradient(45deg,#d6d3cb 0 12px,#dedbd4 12px 24px)}
.ps-orn-multiply img{mix-blend-mode:multiply}
/* klient chtěl na mobilu všechny texty vlevo: bloky, které jsou na PC vycentrované, dostanou ps-left-m */
@media (max-width:767px){
/* zarovnání drží Elementor na .e-con-inner, ne na vnějším kontejneru — bez něj zůstaly
   krátké popisky a ornamenty vycentrované, i když měly text-align:left */
.ps-left-m,.ps-left-m>.e-con-inner{align-items:stretch!important;text-align:left!important}
.ps-left-m .elementor-widget-heading,.ps-left-m .elementor-heading-title,
.ps-left-m .elementor-widget-image,.ps-left-m .elementor-widget-image>.elementor-widget-container{text-align:left!important}
.ps-left-m .elementor-widget-image img{margin-left:0!important;margin-right:auto!important}
}
/* rezervační formulář: pole jen se spodní linkou (Elementor nemá control na vnitřní odsazení pole),
   GDPR text vedle tlačítka na PC, na mobilu tlačítko přes celou šířku a text pod ním */
.ps-tile-cta{margin-top:auto}
/* řádek údajů (facts_row): na mobilu pod sebou, mezi údaji linka */
/* Elementor kreslí okraje a odsazení kontejnerů přes vlastní proměnné a logické vlastnosti, proto se nastavují i ty */
@media (max-width:767px){.ps-facts>.e-con+.e-con{--border-style:solid;--border-top-width:1px;--border-color:#E0DDD6;--padding-top:16px;--padding-block-start:16px;border-top:1px solid #E0DDD6;padding-top:16px}}
.elementor a.ps-cta-alt,.ps-cta-alt .elementor-heading-title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;text-decoration-color:color-mix(in srgb, currentColor 55%, transparent)}
.ps-cta-alt:hover .elementor-heading-title{text-decoration-color:currentColor}
.ps-form .elementor-field-textual{padding:12px 0!important;box-shadow:none;line-height:1.6}
.ps-form .elementor-field-textual:focus{border-bottom-color:#1A1A18!important;box-shadow:none}
.ps-form textarea.elementor-field-textual{resize:none}
.ps-form .elementor-field-textual::placeholder{color:#A8A49B;opacity:1}
.ps-form .elementor-field-label{text-transform:uppercase}
.ps-form-gdpr{margin:0;font-size:13px;line-height:1.55;color:#6B6862;max-width:420px}
.ps-form .elementor-field-type-html,.ps-form .e-form__buttons{align-self:center;margin-top:8px}
@media (max-width:767px){
.ps-form .elementor-field-type-html{order:2;margin-top:16px;align-self:stretch}
.ps-form .e-form__buttons{order:1;margin-top:4px}
.ps-form .elementor-button{width:100%}
.ps-form-gdpr{font-size:12px;max-width:none}
}
/* tři dlaždice na homepage: nadpisu i popisu se rezervuje výška dvou řádků, aby texty
   začínaly ve všech dlaždicích ve stejné rovině bez ohledu na délku (nadpis 30/1.12, popis 15/1.5) */
.ps-tiles .ps-tile-title{min-height:67px}
.ps-tiles .ps-tile-text{min-height:45px}
/* na tabletu se „Pochutiny & catering" láme do dvou řádků, proto rezervace i pro nadtitulek */
@media (max-width:1024px){.ps-tiles .ps-tile-title{min-height:49px}.ps-tiles .ps-tile-label{min-height:31px}}
@media (max-width:767px){.ps-tiles .ps-tile-title,.ps-tiles .ps-tile-text,.ps-tiles .ps-tile-label{min-height:0}}
.elementor-lightbox .elementor-slideshow__counter{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em}
.elementor-lightbox .elementor-slideshow__footer{background:none}
.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color,#F4F1EA)!important}
.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover,#fff)!important}
.ps-dash ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.ps-dash li{display:flex;gap:14px}
.ps-dash li::before{content:"-";color:#B0242A;flex:0 0 auto}
@media (max-width:767px){.ps-dash ul{gap:12px}.ps-dash li{gap:10px}}
/* .elementor a{text-decoration:none} má vyšší specificitu než samotná třída, proto a.ps-map-link */
.elementor a.ps-map-link{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;text-decoration-color:color-mix(in srgb, currentColor 45%, transparent)}
.elementor a.ps-map-link:hover{text-decoration-color:currentColor}
/* aktivní stránka v menu (hlavička + mobilní menu) — třídu doplňuje skript níže */
.elementor a.ps-menu-active,.ps-menu .elementor a.ps-menu-active{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px;text-decoration-color:currentColor}
/* hvězdička povinných polí formuláře v barvě webu místo výchozí červené */
.elementor-mark-required .elementor-field-label:after{color:#9C4A3A}
.ps-inline-link a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb, currentColor 55%, transparent)}
.ps-underline .elementor-heading-title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.ps-underline .elementor-heading-title{text-decoration-color:color-mix(in srgb, currentColor 55%, transparent)}
.ps-gallery .ps-gallery-track{scroll-snap-type:x mandatory;scroll-padding-inline:max(32px,calc((100% - 1376px) / 2));scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.ps-gallery .ps-gallery-track::-webkit-scrollbar{display:none}
.ps-gallery .ps-gallery-slide{scroll-snap-align:start}
.ps-gallery .ps-gallery-prev .elementor-icon,.ps-gallery .ps-gallery-next .elementor-icon{cursor:pointer;transition:opacity .2s}
.ps-gallery .elementor-icon.is-disabled{opacity:.35;cursor:default}
.ps-gallery .ps-gallery-thumb{box-shadow:-6px 0 0 #fff,6px 0 0 #fff;will-change:transform}
.ps-gallery.is-static .ps-gallery-prev,.ps-gallery.is-static .ps-gallery-next{visibility:hidden}
@media (max-width:1024px){.ps-gallery .ps-gallery-track{scroll-padding-inline:24px}}
@media (max-width:767px){.ps-gallery .ps-gallery-track{scroll-padding-inline:16px}}
@media (max-width:767px){
.ps-photo-slider{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:16px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}
.ps-photo-slider::-webkit-scrollbar{display:none}
.ps-photo-slider>.e-con{--flex-shrink:0;flex-shrink:0!important;scroll-snap-align:start}
.ps-photo-slider::after{content:"";flex:0 0 8px}
}
