/* Shared navigation: ordinary links and native disclosure controls. */
html{scroll-padding-top:122px}
.global-topbar{background:#090a0c;color:#d5d6da;border-bottom:1px solid #343539;font-size:14px;line-height:1.5}
.global-topbar>.container{display:flex;justify-content:space-between;gap:24px;padding-block:9px}
.global-topbar a:hover{text-decoration:underline;text-underline-offset:4px}
.global-topbar span{margin-left:auto}
.global-header{position:sticky;top:0;z-index:70;background:#111215;color:#fff;border-bottom:1px solid #41434a}
.global-header *{box-sizing:border-box}
.global-header ul{list-style:none;padding:0;margin:0}
.global-header li{min-width:0}
.global-masthead{min-height:88px;display:flex;align-items:center;gap:30px;position:relative}
.global-brand{display:block;flex:0 0 216px;padding:18px 0}
.global-brand img{width:216px;height:auto}
.global-desktop-nav{display:flex;align-items:center;gap:27px;margin-left:auto}
.global-desktop-nav>a,.global-dropdown>summary{font-size:16px;font-weight:600;line-height:1.5;min-height:48px;display:flex;align-items:center;gap:9px;padding:12px 0;white-space:nowrap}
.global-desktop-nav>a:hover,.global-dropdown>summary:hover{color:#ff8086}
.global-desktop-nav [aria-current],.global-desktop-nav .section-current,.global-desktop-nav .is-active>summary{color:#ff8086;text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:2px}
.global-chevron{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .15s}
details[open]>.global-summary .global-chevron{transform:rotate(180deg)}
.global-dropdown>summary{position:relative}
.global-dropdown[open]>summary::after{content:'';position:absolute;left:0;right:0;top:100%;height:24px}
@keyframes global-slide-in{from{transform:translateX(100%)}to{transform:none}}
@keyframes global-fade-in{from{opacity:0}to{opacity:1}}
.global-dropdown>summary::marker,.global-mobile-menu>summary::marker,.global-mobile-submenu>summary::marker{content:''}
.global-dropdown>summary::-webkit-details-marker,.global-mobile-menu>summary::-webkit-details-marker,.global-mobile-submenu>summary::-webkit-details-marker{display:none}
.global-dropdown-panel{position:absolute;top:100%;right:120px;width:min(640px,calc(100vw - 48px));padding:28px;background:#fff;color:#151619;border:1px solid #c7c9ce;border-top:3px solid #ce202a;box-shadow:0 16px 30px #0003;display:grid;grid-template-columns:1fr 1fr;gap:24px 32px;border-radius:0 0 4px 4px}
.global-dropdown-panel p,.global-mobile-group>p{color:#555961;font-size:14px;font-weight:600;line-height:1.5;margin-bottom:8px}
.global-dropdown-panel a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;font-size:17px;font-weight:800;line-height:1.45;padding:10px 0}
.global-dropdown-panel a:hover{color:#ab1821;text-decoration:underline;text-underline-offset:5px}
.global-dropdown-panel a[aria-current]{color:#ab1821}
.global-dropdown-panel .global-all-services{grid-column:1/-1;border-top:1px solid #dcdedc;padding-top:18px;font-size:16px;color:#ab1821}
.global-offers-panel{width:min(440px,calc(100vw - 48px));display:block;right:150px}
.global-offers-panel>a{border-bottom:1px solid #c7c9ce;margin-bottom:10px;padding-bottom:18px;color:#ab1821}
.global-offers-panel ul a{font-size:16px;font-weight:600}
.global-header-phone{display:flex;align-items:center;gap:9px;min-height:48px;white-space:nowrap;font-size:16px;font-weight:800;border-left:1px solid #555961;padding-left:24px}
.global-header-phone svg{width:20px;height:20px;color:#ff8086}
.global-header-phone:hover{text-decoration:underline;text-underline-offset:5px}
.global-header a:focus-visible,.global-header summary:focus-visible{outline:3px solid #ff8086;outline-offset:4px}
.global-dropdown-panel a:focus-visible,.global-mobile-panel a:focus-visible,.global-mobile-panel summary:focus-visible{outline-color:#146bc0}
.global-mobile-menu,.global-mobile-quick{display:none}
.global-footer .footer-brand p{font-size:15px;color:#bdc0c8}
.global-footer .footer-top{grid-template-columns:1.25fr 1fr .8fr 1.1fr;gap:32px}
.global-footer .footer-top>div:not(:first-child)>a{font-size:15px;min-height:44px}
.global-footer .footer-contact a{overflow-wrap:anywhere}
.global-footer .footer-contact p{font-size:15px;color:#bdc0c8}
.global-footer .footer-bottom{font-size:13px}
.campaign-section-links{background:#17181c;color:#d5d6da;border-bottom:1px solid #41434a}
.campaign-section-links>.container{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-block:7px}
.campaign-section-links nav{display:flex;gap:28px;flex-wrap:wrap}
.campaign-section-links a{display:inline-flex;align-items:center;min-height:44px;font-size:15px;font-weight:600;line-height:1.4}
.campaign-section-links a:hover{text-decoration:underline;text-underline-offset:5px;color:#fff}
.campaign-section-links .all-offers{color:#ff8086}
.site-promo-strip{padding:32px 0;background:#f5f5f3;border-block:1px solid #dcdedc}
.site-promo-strip>.container{display:flex;align-items:center;justify-content:space-between;gap:40px}
.site-promo-strip h2{font-size:26px;line-height:1.35;letter-spacing:-.025em}
.site-promo-strip p{font-size:16px;margin-top:7px;max-width:700px}
.site-promo-strip .button{flex-shrink:0}
@media(max-width:1150px){.global-masthead{gap:22px}.global-brand{flex-basis:194px}.global-brand img{width:194px}.global-desktop-nav{gap:21px}.global-header-phone{padding-left:18px;font-size:15px}.global-desktop-nav>a,.global-dropdown>summary{font-size:15px}}
@media(max-width:1020px){
  html{scroll-padding-top:133px}
  .global-topbar{display:none}
  .global-masthead{min-height:74px;justify-content:space-between;position:static}
  .global-brand{flex-basis:auto;padding:16px 0}.global-brand img{width:205px}
  .global-desktop-nav,.global-header-phone{display:none}
  .global-mobile-menu{display:block}
  .global-mobile-menu>summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:46px;border:1px solid #777a83;border-radius:4px;padding:10px 14px;font-size:16px;font-weight:800;line-height:1.4}
  .global-mobile-menu>summary .close-label,.global-mobile-menu[open]>summary .open-label{display:none}
  .global-mobile-menu[open]>summary .close-label{display:inline}
  .global-mobile-menu>summary svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
  .global-mobile-menu[open]>summary svg{display:none}
  .global-mobile-menu[open]>summary::before{content:'×';font-size:23px;line-height:1}
  .global-mobile-menu[open]>summary,.global-brand,.global-mobile-quick{position:relative;z-index:1}
  .global-mobile-menu[open]::before{content:'';position:fixed;inset:0;background:#000a;animation:global-fade-in .25s ease}
  .global-mobile-panel{position:absolute;top:100%;right:0;left:auto;width:85vw;max-width:480px;height:calc(100svh - 100%);height:calc(100dvh - 100%);overflow-y:auto;overscroll-behavior:contain;background:#f5f5f3;color:#151619;border-left:1px solid #c7c9ce;box-shadow:-14px 0 32px #0005;padding:22px 0 calc(28px + env(safe-area-inset-bottom,0px));animation:global-slide-in .3s cubic-bezier(.2,.7,.2,1)}
  body.nav-is-open,body:has(.global-mobile-menu[open]){overflow:hidden}
  @media(prefers-reduced-motion:reduce){.global-mobile-panel,.global-mobile-menu[open]::before{animation:none}}
  .global-mobile-panel>.container{max-width:660px}
  .global-mobile-group{padding-bottom:12px}
  .global-mobile-group>p{font-size:14px;font-weight:600;color:#555961;margin-bottom:5px}
  .global-mobile-group a,.global-mobile-submenu li>a{display:flex;align-items:center;min-height:52px;padding:12px 0;font-size:17px;line-height:1.5;font-weight:800}
  .global-mobile-panel a:hover,.global-mobile-panel a[aria-current]{color:#ab1821;text-decoration:underline;text-underline-offset:5px}
  .global-mobile-panel a[aria-current]{text-decoration-thickness:2px}
  .global-mobile-submenu{border-top:1px solid #c7c9ce}
  .global-mobile-submenu>summary{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:18px;line-height:1.5;font-weight:800;padding:13px 0;list-style:none}
  .global-mobile-submenu .global-chevron{width:20px;height:20px;flex-shrink:0}
  .global-mobile-submenu[open]>summary{color:#ab1821}
  .global-mobile-submenu>ul{border-left:2px solid #ce202a;margin:0 0 14px 3px;padding-left:18px}
  .global-mobile-submenu li>a{font-size:16px;font-weight:600;min-height:50px}
  .global-mobile-secondary{display:block;border-top:1px solid #c7c9ce;border-bottom:1px solid #c7c9ce;padding-block:5px!important}
  .global-mobile-secondary a{display:flex;align-items:center;min-height:54px;font-size:18px;font-weight:800;line-height:1.5;padding:12px 0}
  .global-mobile-utility{padding-top:12px}
  .global-mobile-utility a{display:flex;align-items:center;min-height:48px;font-size:16px;font-weight:600;line-height:1.5;padding:10px 0;color:#555961}
  .global-mobile-contact{padding-top:18px}
  .global-mobile-contact a{display:block;min-height:44px;padding:8px 0;font-size:17px;overflow-wrap:anywhere;color:#151619;font-weight:600}
  .global-mobile-contact p{font-size:14px;line-height:1.7;margin-top:6px;color:#555961}
  .global-mobile-quick{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:47px;border-top:1px solid #41434a;font-size:15px;font-weight:600}
  .global-mobile-quick>a{display:inline-flex;align-items:center;gap:8px;min-height:46px;white-space:nowrap}
  .global-mobile-quick>a:first-child{font-weight:800;margin-right:auto}
  .global-mobile-quick svg{width:17px;height:17px;color:#ff8086}
  .nav-is-open .mobile-action,.nav-is-open .campaign-sticky,body:has(.global-mobile-menu[open]) .mobile-action,body:has(.global-mobile-menu[open]) .campaign-sticky{visibility:hidden}
  .global-footer .footer-top{grid-template-columns:1fr 1fr 1.15fr}
  .global-footer .footer-brand{grid-column:1/-1}
}
@media(max-width:760px){
  .global-masthead{min-height:72px}.global-brand img{width:180px}.global-mobile-menu>summary{font-size:15px;padding:10px 12px}
  .global-mobile-quick{font-size:14px;gap:18px}.global-mobile-quick>a{min-height:46px}
  .global-mobile-panel{padding-top:20px}
  .global-footer .footer-top{grid-template-columns:1fr 1fr;gap:26px 20px}.global-footer .footer-brand,.global-footer .footer-contact{grid-column:1/-1}
  .global-footer .footer-bottom{font-size:13px}.global-footer{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
  .campaign-section-links>.container{gap:0;padding-block:6px}.campaign-section-links nav{gap:25px}.campaign-section-links a{font-size:14px}.campaign-section-links .all-offers{flex-basis:100%}
  .site-promo-strip>.container{display:block}.site-promo-strip h2{font-size:24px}.site-promo-strip .button{margin-top:20px}
}
@media(max-width:359px){.global-brand img{width:148px}.global-mobile-menu>summary{padding:10px}.global-mobile-quick{gap:11px;font-size:13px}.global-mobile-quick svg{display:none}}
@media print{.global-header,.global-topbar,.campaign-section-links{display:none!important}.global-footer{padding-bottom:20px}}

/* Mobilné menu – kompaktnejšie */
@media(max-width:1020px){
  .global-mobile-panel{padding-top:6px}
  .global-mobile-home{border-top:0!important;border-bottom:1px solid #c7c9ce!important;margin:0!important;padding-block:2px!important}
  .global-mobile-group{padding:16px 0 6px}
  .global-mobile-group>p{font-size:12px;line-height:1.4;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6b6f77;margin:0 0 2px}
  .global-mobile-group a,.global-mobile-secondary a{min-height:46px;padding:9px 0;font-size:17px;line-height:1.4}
  .global-mobile-submenu>summary{min-height:50px;padding:10px 0;font-size:17px;line-height:1.4}
  .global-mobile-submenu>ul{margin-bottom:8px}
  .global-mobile-submenu li>a{min-height:44px;padding:8px 0;font-size:16px}
  .global-mobile-secondary{padding-block:2px!important}
  .global-mobile-utility{padding-top:6px}
  .global-mobile-utility a{min-height:44px;padding:8px 0;font-size:15px}
  .global-mobile-contact{padding-top:10px}
  .global-mobile-contact a{min-height:40px;padding:6px 0;font-size:16px}
}

/* Odoslanie formulára */
.form-sent{margin-top:8px;padding:22px 24px;background:#eef8f0;border:1px solid #9fd0a9;border-left:4px solid #1f8a3b;border-radius:4px;color:#151619}
.form-sent:focus{outline:none}
.form-sent strong{display:block;font-size:19px;line-height:1.4;font-weight:800;margin-bottom:6px}
.form-sent p{font-size:16px;line-height:1.6;margin:0}
.form-sent a{font-weight:800;text-decoration:underline;text-underline-offset:3px}
.form-error{margin-top:12px;padding:12px 16px;background:#fdeeee;border:1px solid #e7a5a9;border-radius:4px;color:#8f141c;font-size:15px;line-height:1.5;font-weight:600}
.form-error[hidden]{display:none}

/* WhatsApp vľavo dole */
.wa-float{position:fixed;z-index:60;left:24px;bottom:calc(24px + var(--wa-offset,0px));display:flex;align-items:center;justify-content:center;width:60px;height:60px;padding:0;border-radius:50%;background:#2db742;color:#fff;font-size:15px;font-weight:800;line-height:1;box-shadow:0 6px 18px #0004;transition:transform .15s,box-shadow .15s,bottom .2s}
.wa-float svg{width:28px;height:28px;flex-shrink:0}
.wa-float:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0005;background:#26a239}
.wa-float:focus-visible{outline:3px solid #146bc0;outline-offset:3px}
.wa-float svg{width:32px;height:32px}
.wa-float-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(max-width:1020px){.wa-float{left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px) + var(--wa-offset,0px));width:56px;height:56px}.wa-float svg{width:30px;height:30px}}
.nav-is-open .wa-float,body:has(.global-mobile-menu[open]) .wa-float{visibility:hidden}
@media print{.wa-float{display:none}}
@media(prefers-reduced-motion:reduce){.wa-float{transition:none}}
