/* MARCO Language Pack 1.0.2. Shared on both Czech and English pages. */
#marco-global-language-switch{
  position:relative!important;display:block!important;flex:0 0 auto!important;
  margin:0!important;padding:0!important;border:0!important;
  width:auto!important;max-width:none!important;min-width:0!important;
  font-family:inherit;line-height:1;z-index:70;
}
#marco-global-language-switch .marco-lang-details{position:relative;display:block;margin:0;padding:0}
#marco-global-language-switch summary{
  box-sizing:border-box;list-style:none;display:flex;align-items:center;justify-content:center;gap:4px;
  min-width:45px;min-height:43px;padding:0 8px;border:1px solid #dfe5dd;border-radius:5px;
  background:#fff;color:#343b38;cursor:pointer;user-select:none;
  box-shadow:0 3px 10px rgba(0,0,0,.045);transition:border-color .18s,background .18s;
}
#marco-global-language-switch summary::-webkit-details-marker{display:none}
#marco-global-language-switch summary:hover,#marco-global-language-switch details[open] summary{background:#f5f9f0;border-color:#72b900}
#marco-global-language-switch summary:focus-visible,#marco-global-language-switch a:focus-visible{outline:3px solid #80bb29;outline-offset:2px}
#marco-global-language-switch .marco-lang-current{font-family:'Apple Color Emoji','Segoe UI Emoji',sans-serif;font-size:21px;line-height:1.25;white-space:nowrap}
#marco-global-language-switch .marco-lang-chevron{width:9px;height:7px;stroke:#687267;stroke-width:1.8;fill:none;transition:transform .18s}
#marco-global-language-switch details[open] .marco-lang-chevron{transform:rotate(180deg)}
#marco-global-language-switch .marco-lang-options{
  box-sizing:border-box;display:flex;flex-direction:column;position:absolute;right:0;top:calc(100% + 8px);
  width:156px;max-width:min(156px,calc(100vw - 24px));padding:5px;background:#fff;
  border:1px solid #e0e6df;border-radius:7px;box-shadow:0 14px 35px rgba(10,18,12,.17);z-index:10001;
}
#marco-global-language-switch details:not([open]) .marco-lang-options{display:none!important}
#marco-global-language-switch .marco-lang-options a{
  box-sizing:border-box;display:flex!important;align-items:center;gap:10px;min-height:39px;
  padding:9px 11px;border-radius:4px;color:#222a2b!important;font-size:12px;font-weight:700;
  letter-spacing:0;text-decoration:none!important;line-height:1.2;white-space:nowrap;
}
#marco-global-language-switch .marco-lang-options a>span{font-size:20px;line-height:1}
#marco-global-language-switch .marco-lang-options a:hover,#marco-global-language-switch .marco-lang-options a[aria-current="page"]{background:#eef8df!important;color:#347a08!important}
/* The switcher becomes an ordinary flex sibling of the green CTA; never absolutely anchored over Contact. */
.marco-lang-cta-host{
  display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;
  align-items:center!important;justify-content:flex-end!important;
  gap:12px!important;width:max-content!important;max-width:none!important;
}
.marco-lang-cta-host > a,.marco-lang-cta-host > .elementor-button{
  flex:0 0 auto!important;white-space:nowrap!important;
}
.marco-lang-header .marco-header-button{width:max-content!important;max-width:none!important;justify-self:end!important}
/* Make space in Elementor's header grid for the CTA + flag on normal laptop screens. */
@media (min-width:768px) and (max-width:1600px){
 .marco-lang-header .marco-header-inner{gap:clamp(9px,1.1vw,18px)!important}
 .marco-lang-header .marco-nav .elementor-nav-menu--main .elementor-nav-menu{gap:clamp(9px,1.25vw,20px)!important}
 .marco-lang-header .marco-header-button .elementor-button{padding-left:14px!important;padding-right:14px!important}
}
/* Below 768px the original green button disappears; keep language flag beside hamburger. */
@media (max-width:767px){
 .marco-lang-mobile-host{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;min-width:0!important}
 .marco-lang-mobile-host > #marco-global-language-switch{order:0!important}
 .marco-lang-mobile-host > .elementor-widget-container{order:1!important}
 #marco-global-language-switch summary{min-height:36px;min-width:40px;padding:0 5px}
 #marco-global-language-switch .marco-lang-current{font-size:20px}
}

/* 1.0.3: responsive protection against language / contact overlap on 13-inch laptops. */
.marco-lang-header .marco-header-inner > .marco-nav,
.marco-lang-header .marco-header-inner > .marco-header-button {min-width:0!important;}
@media (min-width:768px) and (max-width:1450px) {
 .marco-lang-header .marco-header-inner {gap:clamp(8px,.85vw,14px)!important;}
 .marco-lang-header .marco-header-logo{width:clamp(165px,14vw,190px)!important;max-width:clamp(165px,14vw,190px)!important;}
 .marco-lang-header .marco-header-inner{grid-template-columns:clamp(165px,14vw,190px) minmax(0,1fr) auto!important;}
 .marco-lang-header .marco-nav .elementor-nav-menu--main .elementor-nav-menu{gap:clamp(8px,.8vw,14px)!important;}
 .marco-lang-header .marco-nav .elementor-nav-menu--main .elementor-item{font-size:clamp(10px,.82vw,11px)!important;}
 .marco-lang-header .marco-header-button .elementor-button{padding-inline:12px!important;font-size:11px!important;}
 .marco-lang-cta-host{gap:8px!important;}
}
@media (min-width:768px) and (max-width:1690px) {
 .marco-lang-header.marco-lang-header-compact .marco-header-inner{
   display:grid!important;grid-template-columns:minmax(170px,1fr) auto!important;
   grid-template-rows:auto auto!important;gap:8px 12px!important;
   min-height:0!important;padding:11px 0 9px!important;align-items:center!important;
 }
 .marco-lang-header-compact .marco-header-logo{grid-column:1!important;grid-row:1!important;justify-self:start!important;}
 .marco-lang-header-compact .marco-header-button{grid-column:2!important;grid-row:1!important;justify-self:end!important;width:max-content!important;max-width:100%!important;}
 .marco-lang-header-compact .marco-nav{
   grid-column:1/-1!important;grid-row:2!important;justify-self:center!important;
   width:auto!important;max-width:100%!important;min-width:0!important;
 }
 .marco-lang-header-compact .marco-nav .elementor-nav-menu--main .elementor-nav-menu{
   display:flex!important;justify-content:center!important;flex-wrap:wrap!important;
   gap:8px clamp(12px,2vw,22px)!important;
 }
 .marco-lang-header-compact .marco-nav .elementor-nav-menu--main .elementor-item{min-height:28px!important;line-height:28px!important;white-space:nowrap!important;}
}
/* Contact and footer typography must wrap rather than spill into adjacent columns. */
@media (min-width:768px) and (max-width:1450px){
 .marco-v5-contact-inner{grid-template-columns:minmax(0,1.15fr) minmax(270px,.85fr)!important;gap:clamp(14px,2vw,30px)!important;}
 .marco-v5-contact-copy,.marco-v5-contact-details,.marco-v5-contact-detail,.marco-v5-contact-detail-text,
 .marco-footer-grid > *{min-width:0!important;max-width:100%!important;}
 .marco-v5-contact-detail-text .elementor-heading-title,.marco-v5-contact-detail-text a,
 .marco-footer-copy p,.marco-footer-link .elementor-heading-title{
  white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;
 }
 .marco-footer-grid{gap:clamp(12px,2.3vw,28px)!important;}
}
