html{scroll-behavior:smooth}
body{margin:0;background:#ffffff;font-family:'Instrument Sans',system-ui,sans-serif;color:#000103;-webkit-font-smoothing:antialiased}
body.landing-page{margin:0}
#site-footer{scroll-margin-top:80px}
a{color:#0368ef;text-decoration:none}
a:hover{color:#063079}
summary{list-style:none;cursor:pointer}
summary::-webkit-details-marker{display:none}
input,select,button,textarea{font-family:inherit}
::selection{background:#fe6a2f;color:#fff}
#realRail{scrollbar-width:none}
#realRail::-webkit-scrollbar{display:none}
/* Tlačidlo "Zobraziť ďalšie recenzie" je len pre mobil (desktop ukazuje všetkých 6) */
.more-reviews{display:none}
#vslPlayer{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
#soundBtn{position:absolute;left:50%;top:50%;z-index:3;display:inline-flex;align-items:center;gap:11px;background:rgba(254,106,47,.96);color:#fff;border:none;border-radius:99px;padding:17px 30px;font-size:17px;font-weight:600;letter-spacing:.01em;cursor:pointer;white-space:nowrap;animation:soundPulse 2.4s ease-in-out infinite}
#soundBtn:hover{background:#e8571c}
@keyframes soundPulse{
  0%,100%{transform:translate(-50%,-50%) scale(1);box-shadow:0 12px 36px rgba(254,106,47,.45),0 0 0 0 rgba(254,106,47,.45)}
  50%{transform:translate(-50%,-50%) scale(1.055);box-shadow:0 14px 42px rgba(254,106,47,.6),0 0 0 20px rgba(254,106,47,0)}
}
@media (max-width:760px){#soundBtn{font-size:14.5px;padding:13px 22px;gap:9px}#soundBtn svg{width:20px;height:20px}}
@media (prefers-reduced-motion:reduce){#soundBtn{animation:none;transform:translate(-50%,-50%);box-shadow:0 12px 36px rgba(254,106,47,.45)}}
details summary span:last-child{transition:transform .2s}
details[open] summary span:last-child{transform:rotate(45deg)}
@media (max-width:760px){
  .m-hide{display:none !important}
  .m-collapse{grid-template-columns:1fr !important}
  .m-stats{grid-template-columns:repeat(2,1fr) !important}
  .m-stat{border-right:none !important}
  .m-stat:nth-child(odd){border-right:1px solid #eef2f9 !important}
  .m-stat:nth-child(1),.m-stat:nth-child(2){border-bottom:1px solid #eef2f9}
  .m-pad{padding:32px 22px !important}
  /* Znamienka −/= medzi cenovými kartami: na mobile sú karty pod sebou,
     tak ich posunieme na horný okraj karty (namiesto ľavého ako na desktope) */
  .m-op{top:0 !important;left:50% !important;transform:translate(-50%,-50%) !important}
  .price-grid{gap:26px !important}
  .m-nav{padding:10px 14px !important;gap:10px !important}
  .m-logo img{width:26px !important;height:26px !important}
  .m-logo span{font-size:13.5px !important}
  .m-navcta{font-size:12.5px !important;padding:8px 14px !important;white-space:nowrap !important}
  .m-ctatext{display:none !important}
  .m-ctatext-m{display:inline !important}
  [data-screen-label]:not([data-screen-label="Hero"]){padding-top:64px !important;padding-bottom:64px !important}
  /* Hero: zmestiť na prvú obrazovku aj CTA a kúsok Google recenzií */
  [data-screen-label="Hero"]{padding:34px 20px 52px !important}
  .hero-inner{gap:19px !important}
  .hero-badge{font-size:12px !important;padding:7px 14px !important}
  .hero-h1{font-size:31px !important;line-height:1.1 !important}
  .hero-sub{font-size:15.5px !important;line-height:1.5 !important}
  .hero-video{margin-top:2px !important}
  .hero-video>div:first-child{border-radius:16px !important;box-shadow:0 16px 40px rgba(0,1,3,.5),0 0 0 1px rgba(255,255,255,.1) !important}
  .hero-caption{margin-top:9px !important;font-size:12.5px !important;line-height:1.4 !important}
  .hero-cta{margin-top:0 !important;font-size:16px !important;padding:15px 24px !important;border-radius:14px !important}
  .hero-social{margin-top:0 !important;gap:10px !important}
  .stats-wrap{margin-top:-26px !important;padding:0 20px !important}

  /* --- Zvyšok stránky doladený na mobil (referencia iPhone 17, 402px) --- */
  /* Sekcie a nadpisy */
  [data-screen-label]:not([data-screen-label="Hero"]){padding-left:20px !important;padding-right:20px !important}
  [data-screen-label="Realizácie"]{padding-left:0 !important;padding-right:0 !important}
  h2{font-size:27px !important;line-height:1.2 !important}
  /* Dôkazová lišta: "4 025 €" sa nesmie lámať */
  .m-stat>div:first-child{font-size:27px !important;white-space:nowrap}
  .m-stat{padding:22px 12px !important}
  .m-stat>div:last-child{font-size:13px !important}
  /* Všetky oranžové CTA jednotne, dobrá plocha na prst */
  a[href="#formular"]{font-size:16px !important;padding:16px 22px !important;border-radius:14px !important}
  /* Karty: menšie vnútorné okraje = širší text, menej zalomení */
  [style*="padding:40px 36px"],[style*="padding:34px 32px"]{padding:26px 22px !important}
  [style*="padding:30px 26px"],[style*="padding:26px 26px"]{padding:24px 20px !important}
  [style*="padding:36px 32px"]{padding:24px 18px !important}
  [style*="padding:30px 34px 34px"]{padding:24px 20px 26px !important}
  [style*="padding:24px 34px"]{padding:20px 22px !important}
  /* Logá výrobcov: vycentrovaný raster namiesto rozhádzaného space-between */
  .logo-row{justify-content:center !important;gap:22px 26px !important}
  .logo-row img{height:40px !important}
  /* Termíny obhliadok vedľa seba */
  .slot-row>div{flex:1 1 0 !important;min-width:0 !important;padding:16px 10px !important}
  /* Pozor na ">": #nextSlotDate je jediný potomok, takže bez neho ho zachytí aj :last-child */
  .slot-row>div>span:first-child{font-size:31px !important;line-height:1.1 !important}
  .slot-row>div>span:last-child{font-size:11.5px !important;text-align:center;line-height:1.35}
  /* Karty realizácií: celá karta sa zmestí, z ďalšej vykúka kúsok */
  #realRail{padding-left:20px !important;padding-right:20px !important;gap:14px !important}
  #realRail>div{width:290px !important}
  /* Vety vypustené na mobile kvôli úspore miesta (desktop ich má) */
  .m-drop{display:none !important}
  /* Veľké dvojstĺpcové mriežky sa na mobile skladajú pod seba —
     64px medzera je potom zbytočne veľká diera medzi textom a obrázkom */
  .m-collapse[style*="gap:64px"]{gap:26px !important}
  /* Formulár: nadpis na jeden riadok, výber ceny 3 + 1
     (!important je nutný — .bill-btn si štýl prepisuje inline cez JS) */
  .form-title{font-size:17.5px !important}
  .bill-btn{padding:10px 12px !important;font-size:13.5px !important}
  /* Odoslanie: užšie bočné okraje, aby text ostal veľký a vošiel na jeden riadok */
  #leadForm button[type=submit]{padding-left:12px !important;padding-right:12px !important}
  /* Recenzie: na mobile najprv 2, zvyšné 4 na tlačidlo (kratšia stránka) */
  .rev-grid>.rev-card:nth-child(n+3){display:none !important}
  .rev-grid.show-all>.rev-card:nth-child(n+3){display:flex !important}
  .more-reviews{display:inline-flex;align-items:center;justify-content:center;gap:8px;align-self:center;
    background:#fff;border:1.5px solid #d7e0f0;color:#063079;font-size:15px;font-weight:600;
    padding:15px 26px;border-radius:99px;cursor:pointer;box-shadow:0 6px 20px rgba(6,48,121,.07)}
  .more-reviews:active{background:#eaf2ff;border-color:#0368ef}
  /* Pätička: textové odkazy (telefón, e-mail, podmienky) majú na mobile
     príliš malú plochu na prst — zväčšíme ju. Ikony sociálnych sietí
     (majú aria-label) sú už 36×36, tie nechávame. */
  #kontakt a:not([aria-label]){display:inline-block;padding:9px 0}
  /* FAQ kompaktnejšie */
  details summary{padding:18px 20px !important;font-size:15.5px !important}
  details p{padding:0 20px 20px !important;font-size:15px !important}
}
/* Nízke displeje (iPhone SE a pod.) — ešte tesnejší hero */
@media (max-width:760px) and (max-height:700px){
  [data-screen-label="Hero"]{padding-top:22px !important;padding-bottom:42px !important}
  .hero-inner{gap:14px !important}
  .hero-badge{font-size:11.5px !important;padding:6px 12px !important}
  .hero-h1{font-size:28px !important}
  .hero-sub{font-size:14.5px !important}
  .hero-caption{margin-top:7px !important;font-size:11.5px !important}
  .hero-cta{padding:13px 22px !important;font-size:15.5px !important}
}
