@charset "utf-8";

*{margin:0;padding:0;box-sizing:border-box;font-family:"Segoe UI",Arial,sans-serif}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{background:radial-gradient(circle at top,#0f2a44,#081727);color:#fff;overflow-x:hidden}
a{color:inherit}

/* NAVIGACE */
nav{position:sticky;top:0;z-index:1000;background:rgba(8,23,39,.94);backdrop-filter:blur(10px);box-shadow:0 10px 30px rgba(0,0,0,.45);border-bottom:1px solid rgba(255,255,255,.07)}
.menu{max-width:1500px;margin:auto;padding:12px 22px;display:flex;align-items:center;gap:18px}
.logo{font-size:22px;font-weight:900;color:#4fc3ff;letter-spacing:1px;white-space:nowrap;text-decoration:none}
.cta-wrap{flex:1;display:flex;justify-content:center}
.cta-btn{border:1px solid rgba(79,195,255,.5);background:linear-gradient(135deg,#119fe2,#0578b8);color:#fff;padding:10px 19px;border-radius:7px;cursor:pointer;font-weight:900;box-shadow:0 8px 25px rgba(0,155,230,.25);transition:.2s}
.cta-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.navlinks{list-style:none;display:flex;gap:20px;white-space:nowrap;align-items:center}
.navlinks a{color:#fff;text-decoration:none;opacity:.9;font-weight:700;padding:8px 10px;border-radius:10px;transition:.2s}
.navlinks a:hover,.navlinks a:focus-visible{opacity:1;color:#4fc3ff;background:rgba(79,195,255,.1)}

/* BĚŽÍCÍ INFORMAČNÍ ŘÁDEK */
.news-ticker{position:relative;z-index:30;width:100%;overflow:hidden;border-bottom:1px solid rgba(79,195,255,.35);background:linear-gradient(90deg,#061321,#0b2942,#061321);color:#4fc3ff}
.news-ticker-track{display:flex;width:max-content;min-width:200%;align-items:center;animation:newsTickerMove 38s linear infinite;will-change:transform}
.news-ticker-track span{width:50%;min-width:100vw;flex:0 0 auto;padding:10px 70px;font-size:19px;font-weight:900;letter-spacing:.3px;text-align:center;white-space:nowrap}
.news-ticker:hover .news-ticker-track{animation-play-state:paused}
@keyframes newsTickerMove{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* HERO */
.hero{position:relative;min-height:420px;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid rgba(79,195,255,.18)}
.hero-bg{position:absolute;inset:0;background-position:center;background-size:cover;transition:opacity 1.2s ease}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,14,25,.94) 0%,rgba(5,14,25,.58) 46%,rgba(5,14,25,.68) 100%)}
.hero-layout{position:relative;z-index:2;width:100%;max-width:1500px;margin:auto;padding:46px 42px;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:42px;align-items:center}
.hero-copy{text-align:left;max-width:760px}
.hero h1{font-size:52px;line-height:1.05;letter-spacing:1px;text-shadow:0 4px 20px rgba(0,0,0,.55)}
.hero-copy p{margin-top:14px;font-size:20px;font-weight:700;line-height:1.5;text-shadow:0 3px 14px rgba(0,0,0,.7)}
.hero-contact{justify-self:end;width:100%;padding:24px;border:1px solid rgba(79,195,255,.55);border-radius:14px;background:rgba(5,18,31,.88);box-shadow:0 22px 65px rgba(0,0,0,.45);backdrop-filter:blur(8px)}
.hero-contact h2{font-size:20px;color:#eaf7ff;margin-bottom:13px}
.hero-contact p{font-size:14px;line-height:1.6;opacity:.88}
.hero-phone{display:block;margin:12px 0;color:#4fc3ff;font-size:25px;font-weight:900;text-decoration:none}
.hero-contact .hero-contact-btn{display:inline-block;margin-top:8px;padding:10px 16px;border-radius:7px;background:#119fe2;color:#fff;text-decoration:none;font-weight:900}

/* SEKCE */
.section{max-width:1500px;margin:50px auto;padding:0 28px}
.section-title{font-size:26px;color:#eaf7ff;letter-spacing:.2px}
.section-sub{margin-top:8px;opacity:.85;max-width:900px;line-height:1.6}
.section-sub a{color:#4fc3ff;text-decoration:none}
.process-grid{margin-top:18px;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}
.pbox{border-radius:14px;overflow:hidden;background:linear-gradient(180deg,rgba(14,40,66,.7),rgba(8,23,39,.5));border:1px solid rgba(79,195,255,.18);box-shadow:0 18px 50px rgba(0,0,0,.35);transform:translateY(10px);opacity:0;transition:.7s}
.pbox.visible{transform:none;opacity:1}.pbox img{width:100%;height:105px;object-fit:cover;display:block}.pbox .pad{padding:10px 10px 12px}.pbox h3{font-size:14px;margin-bottom:4px}.pbox p{font-size:12px;opacity:.8}
.process-bar{margin-top:14px;height:8px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(79,195,255,.18);overflow:hidden}.process-bar-fill{width:0;height:100%;background:linear-gradient(90deg,#4fc3ff,#2496ff);transition:width 1.2s ease}

/* KARUSELY */
.carousel-title{margin-top:34px;font-size:20px;color:#eaf7ff;font-weight:900}.carousel{margin-top:10px;display:flex;align-items:center;gap:8px}.carousel button{background:none;border:none;color:#4fc3ff;font-size:34px;cursor:pointer;padding:8px 10px;border-radius:12px}.carousel button:hover{background:rgba(79,195,255,.1)}
.carousel-track{display:flex;gap:14px;overflow-x:auto;scroll-behavior:smooth;padding:10px 0 16px;flex:1;scrollbar-width:none}.carousel-track::-webkit-scrollbar{display:none}
.card{min-width:230px;height:150px;border-radius:12px;overflow:hidden;position:relative;box-shadow:0 16px 34px rgba(0,0,0,.5);transition:transform .35s;border:1px solid rgba(255,255,255,.07)}.card:hover{transform:translateY(-6px) scale(1.02)}.card img{width:100%;height:100%;object-fit:cover;display:block}.card span{position:absolute;left:0;right:0;bottom:0;padding:7px 8px;font-size:12px;font-weight:800;background:linear-gradient(transparent,rgba(0,0,0,.82));text-align:center}

/* MODAL */
.modal-overlay{position:fixed;inset:0;display:none;background:rgba(0,0,0,.62);backdrop-filter:blur(6px);z-index:2000;padding:18px}.modal-overlay.open{display:flex;align-items:center;justify-content:center}.modal{width:min(720px,100%);border-radius:20px;background:linear-gradient(180deg,#0e2842,#081727);border:1px solid rgba(79,195,255,.3);box-shadow:0 40px 120px rgba(0,0,0,.65);overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.modal-header h2{font-size:17px}.modal-close{background:transparent;border:0;color:#cfefff;font-size:26px;cursor:pointer;padding:4px 10px}.modal-body{padding:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-row{display:flex;flex-direction:column;gap:6px}.form-row.full{grid-column:1/-1}label{font-size:12px;color:#d8f3ff}input,textarea,select{border-radius:10px;border:1px solid rgba(79,195,255,.2);background:#0b2237;color:#fff;padding:11px;outline:none}textarea{min-height:110px;resize:vertical}.modal-actions{display:flex;gap:10px;justify-content:flex-end;padding:14px 16px;border-top:1px solid rgba(255,255,255,.08)}.btn{border:0;cursor:pointer;border-radius:8px;padding:10px 14px;font-weight:900}.btn.secondary{background:rgba(255,255,255,.09);color:#eaf7ff}.btn.primary{background:#119fe2;color:#fff}.success{display:none;margin-top:10px;padding:10px;border-radius:10px;background:rgba(0,255,170,.1);color:#c9ffe9}.small-note{margin-top:10px;font-size:12px;opacity:.75}

/* FOOTER */
footer{margin-top:80px;background:#050e19;border-top:1px solid rgba(255,255,255,.08)}.footer-inner{max-width:1500px;margin:auto;padding:28px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.footer-logo{font-size:18px;font-weight:900;color:#4fc3ff;margin-bottom:6px}footer h4{font-size:13px;margin-bottom:8px}footer p,footer a{font-size:13px;opacity:.8;line-height:1.7;color:#fff;text-decoration:none}footer a:hover{color:#4fc3ff;opacity:1}.footer-bottom{text-align:center;padding:12px 16px;border-top:1px solid rgba(255,255,255,.06);font-size:12px;opacity:.65}

@media(max-width:950px){.menu{flex-wrap:wrap}.cta-wrap{order:3;flex-basis:100%;justify-content:flex-start}.navlinks{width:100%;overflow-x:auto}.hero-layout{grid-template-columns:1fr;padding:38px 24px}.hero-contact{justify-self:start;max-width:420px}.hero{min-height:570px}}
@media(max-width:650px){.form-grid{grid-template-columns:1fr}.hero h1{font-size:38px}.hero-copy p{font-size:17px}.news-ticker-track span{font-size:16px;padding:9px 35px}.card{min-width:195px;height:130px}.section{padding:0 18px}.hero-contact{max-width:none}}
@media(prefers-reduced-motion:reduce){.news-ticker-track{animation:none;width:100%;min-width:100%;justify-content:center}.news-ticker-track span{width:100%;min-width:0;white-space:normal}.news-ticker-track span[aria-hidden=true]{display:none}}
.card a{
    display:block;
    width:100%;
    height:100%;
    color:inherit;
    text-decoration:none;
}

/* DOPLNKOVE STYLY HLAVNI STRANKY: GALERIE, SCHVALOVANI A VYKRESY */
.products-clickable{position:relative;cursor:pointer}
.products-clickable:focus-visible{outline:3px solid #4fc3ff;outline-offset:8px;border-radius:14px}
.gallery-entry{margin:18px 0 28px;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid rgba(79,195,255,.32);border-radius:16px;background:linear-gradient(135deg,rgba(14,50,80,.95),rgba(5,27,46,.88));box-shadow:0 18px 48px rgba(0,0,0,.34)}
.gallery-entry-copy h3{margin:0 0 7px;color:#eaf7ff;font-size:22px}.gallery-entry-copy p{margin:0;max-width:920px;color:#d7efff;line-height:1.55;opacity:.9}
.gallery-entry-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:220px;padding:11px 21px;border:1px solid rgba(116,207,248,.5);border-radius:999px;background:linear-gradient(135deg,#0b6d9f,#07557f 58%,#043b5d);color:#fff;text-decoration:none;font-weight:900;box-shadow:0 9px 26px rgba(0,85,130,.42),inset 0 1px 0 rgba(255,255,255,.17);transition:.22s}
.gallery-entry-btn::after{content:"→";font-size:19px;transition:transform .22s ease}.gallery-entry-btn:hover,.gallery-entry-btn:focus-visible{color:#fff;filter:brightness(1.12);transform:translateY(-2px)}.gallery-entry-btn:hover::after,.gallery-entry-btn:focus-visible::after{transform:translateX(4px)}
.products-clickable .card a{display:block;width:100%;height:100%;color:inherit;text-decoration:none}.products-clickable .card a::after{content:"Otevřít galerii  →";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;background:linear-gradient(180deg,rgba(4,17,29,.12),rgba(5,29,48,.88));color:#fff;font-size:15px;font-weight:900;opacity:0;transform:translateY(7px);transition:.25s;pointer-events:none}.products-clickable .card a:hover::after,.products-clickable .card a:focus-visible::after{opacity:1;transform:none}
.support-section{
  position:relative;
  margin-top:64px;
  margin-bottom:58px;
  padding-top:34px;
  padding-bottom:36px;
  border-top:1px solid rgba(79,195,255,.20);
  border-bottom:1px solid rgba(79,195,255,.16);
}
.support-section::before{
  content:"";
  position:absolute;
  inset:0 -18px;
  z-index:-1;
  border-radius:22px;
  background:linear-gradient(180deg,rgba(13,43,70,.30),rgba(6,23,39,.12));
}
.support-intro{
  max-width:1050px;
  color:#d7efff;
}
.support-grid{
  margin-top:26px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  align-items:stretch;
}
.support-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:390px;
  padding:28px;
  border:1px solid rgba(79,195,255,.34);
  border-radius:18px;
  background:linear-gradient(150deg,rgba(16,57,91,.98) 0%,rgba(8,34,57,.97) 55%,rgba(5,23,39,.98) 100%);
  box-shadow:0 22px 58px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.055);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.support-card:hover{
  transform:translateY(-4px);
  border-color:rgba(79,195,255,.56);
  box-shadow:0 28px 68px rgba(0,0,0,.48),0 0 34px rgba(14,142,207,.10);
}
.support-card::before{
  content:"";
  position:absolute;
  top:-92px;
  right:-72px;
  z-index:-1;
  width:235px;
  height:235px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(79,195,255,.22) 0%,rgba(79,195,255,0) 68%);
}
.support-card::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:3px;
  background:linear-gradient(90deg,#4fc3ff,#147bb3,transparent 88%);
}
.support-kicker{
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  min-height:26px;
  margin-bottom:14px;
  padding:5px 11px;
  border:1px solid rgba(79,195,255,.48);
  border-radius:999px;
  background:rgba(79,195,255,.09);
  color:#8edcff;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.75px;
}
.support-card h3{
  position:relative;
  margin:0 0 12px;
  color:#f1f9ff;
  font-size:23px;
  line-height:1.25;
}
.support-card p{
  position:relative;
  color:#d9edfa;
  line-height:1.68;
  opacity:.94;
}
.support-list{
  position:relative;
  margin:18px 0 22px;
  padding:0;
  list-style:none;
  color:#d9edfa;
}
.support-list li{
  position:relative;
  margin:10px 0;
  padding-left:22px;
  line-height:1.5;
}
.support-list li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:#4fc3ff;
  font-weight:900;
}
.support-actions{
  position:relative;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin-top:auto;
}
.support-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:10px 18px;
  border:1px solid rgba(108,204,245,.56);
  border-radius:999px;
  background:linear-gradient(135deg,#0d79ad 0%,#07557f 58%,#043d60 100%);
  color:#fff;
  text-decoration:none;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 9px 24px rgba(0,90,135,.34),inset 0 1px 0 rgba(255,255,255,.15);
  transition:transform .22s ease,filter .22s ease,box-shadow .22s ease;
}
.support-btn:hover,.support-btn:focus-visible{
  color:#fff;
  filter:brightness(1.13);
  transform:translateY(-2px);
  box-shadow:0 13px 29px rgba(0,105,155,.43),inset 0 1px 0 rgba(255,255,255,.2);
}
.support-note{
  position:relative;
  margin-top:18px;
  padding:12px 14px;
  border-left:3px solid #4fc3ff;
  border-radius:0 10px 10px 0;
  background:rgba(79,195,255,.085);
  color:#cfeaff;
  font-size:13px;
  line-height:1.55;
}
@media(max-width:850px){
  .support-grid{grid-template-columns:1fr}
  .support-card{min-height:0}
  .gallery-entry{align-items:stretch;flex-direction:column}
  .gallery-entry-btn{width:100%;min-width:0}
}@media(hover:none){.products-clickable .card a::after{display:none}}

/* FINALNI VZHLED: SCHVALOVANI A VYKRESOVA DOKUMENTACE */
#schvalovani-a-vykresy.support-section{
  position:relative;
  margin-top:64px;
  margin-bottom:58px;
  padding:34px 28px 36px;
  border:1px solid rgba(79,195,255,.18);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(13,43,70,.34),rgba(6,23,39,.18));
  box-shadow:0 20px 55px rgba(0,0,0,.22);
}
#schvalovani-a-vykresy .support-intro{
  max-width:1050px;
  color:#d7efff;
}
#schvalovani-a-vykresy .support-grid{
  margin-top:26px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  align-items:stretch;
}
#schvalovani-a-vykresy .support-card{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:390px;
  padding:28px;
  border:1px solid rgba(79,195,255,.38);
  border-radius:18px;
  background:linear-gradient(150deg,rgba(16,57,91,.99),rgba(8,34,57,.98) 58%,rgba(5,23,39,.99));
  box-shadow:0 22px 58px rgba(0,0,0,.44),inset 0 1px 0 rgba(255,255,255,.06);
}
#schvalovani-a-vykresy .support-card::after{
  content:"";
  position:absolute;
  top:0;
  right:0;
  left:0;
  height:3px;
  background:linear-gradient(90deg,#4fc3ff,#147bb3,transparent 88%);
}
#schvalovani-a-vykresy .support-kicker{
  align-self:flex-start;
  display:inline-flex;
  margin-bottom:14px;
  padding:5px 11px;
  border:1px solid rgba(79,195,255,.5);
  border-radius:999px;
  background:rgba(79,195,255,.1);
  color:#8edcff;
  font-size:12px;
  font-weight:900;
  letter-spacing:.75px;
  text-transform:uppercase;
}
#schvalovani-a-vykresy .support-card h3{
  margin:0 0 12px;
  color:#f1f9ff;
  font-size:23px;
  line-height:1.25;
}
#schvalovani-a-vykresy .support-card p{
  color:#d9edfa;
  line-height:1.68;
}
#schvalovani-a-vykresy .support-list{
  margin:18px 0 22px;
  padding:0;
  list-style:none;
  color:#d9edfa;
}
#schvalovani-a-vykresy .support-list li{
  position:relative;
  margin:10px 0;
  padding-left:22px;
  line-height:1.5;
}
#schvalovani-a-vykresy .support-list li::before{
  content:"\2713";
  position:absolute;
  top:0;
  left:0;
  color:#4fc3ff;
  font-weight:900;
}
#schvalovani-a-vykresy .support-actions{
  display:flex;
  margin-top:auto;
}
#schvalovani-a-vykresy .support-btn{
  min-height:40px;
  padding:10px 18px;
  border:1px solid rgba(108,204,245,.56);
  border-radius:999px;
  background:linear-gradient(135deg,#0d79ad,#07557f 58%,#043d60);
  color:#fff;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 9px 24px rgba(0,90,135,.34),inset 0 1px 0 rgba(255,255,255,.15);
}
#schvalovani-a-vykresy .support-note{
  margin-top:18px;
  padding:12px 14px;
  border-left:3px solid #4fc3ff;
  border-radius:0 10px 10px 0;
  background:rgba(79,195,255,.085);
  color:#cfeaff;
  font-size:13px;
  line-height:1.55;
}
@media(max-width:850px){
  #schvalovani-a-vykresy .support-grid{grid-template-columns:1fr}
  #schvalovani-a-vykresy .support-card{min-height:0}
}

/* ROZCESTNIK SLUZEB NA HLAVNI STRANCE */
.service-choice{
  margin:18px 0 30px;
  padding:24px;
  border:1px solid rgba(79,195,255,.28);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(14,50,80,.96),rgba(5,27,46,.92));
  box-shadow:0 18px 48px rgba(0,0,0,.34);
}
.service-choice-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
}
.service-choice-heading h3{
  margin:0;
  color:#eef9ff;
  font-size:23px;
}
.service-choice-heading p{
  margin:0;
  color:#cae9f8;
  font-size:14px;
  line-height:1.5;
  opacity:.88;
}
.service-choice-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.service-choice-card{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  min-width:0;
  padding:17px;
  border:1px solid rgba(79,195,255,.22);
  border-radius:14px;
  background:linear-gradient(155deg,rgba(10,39,65,.96),rgba(6,24,41,.95));
  box-shadow:0 12px 30px rgba(0,0,0,.27);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.service-choice-card:hover{
  transform:translateY(-2px);
  border-color:rgba(79,195,255,.46);
  box-shadow:0 17px 36px rgba(0,0,0,.35);
}
.service-choice-number{
  display:flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  border:1px solid rgba(79,195,255,.50);
  border-radius:50%;
  background:rgba(79,195,255,.10);
  color:#72d4ff;
  font-size:16px;
  font-weight:900;
}
.service-choice-copy{
  min-width:0;
}
.service-choice-copy h4{
  margin:0 0 5px;
  color:#f1f9ff;
  font-size:16px;
  line-height:1.3;
}
.service-choice-copy p{
  margin:0;
  color:#cfe8f5;
  font-size:12px;
  line-height:1.5;
  opacity:.88;
}
.service-choice-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:156px;
  min-height:38px;
  padding:9px 15px;
  border:1px solid rgba(108,204,245,.50);
  border-radius:999px;
  background:linear-gradient(135deg,#0b6d9f,#07557f 58%,#043b5d);
  color:#fff;
  text-decoration:none;
  text-align:center;
  font-size:13px;
  font-weight:900;
  box-shadow:0 8px 21px rgba(0,85,130,.32),inset 0 1px 0 rgba(255,255,255,.15);
  transition:transform .20s ease,filter .20s ease;
}
.service-choice-btn:hover,.service-choice-btn:focus-visible{
  color:#fff;
  filter:brightness(1.14);
  transform:translateY(-1px);
}
@media(max-width:1100px){
  .service-choice-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .service-choice{padding:18px}
  .service-choice-heading{align-items:flex-start;flex-direction:column;gap:6px}
  .service-choice-card{grid-template-columns:38px minmax(0,1fr)}
  .service-choice-btn{grid-column:1/-1;width:100%}
}

/* NAHRADNI DILY V ROZCESTNIKU */
.service-choice-card-wide{
  grid-column:1/-1;
}
@media(max-width:1100px){
  .service-choice-card-wide{grid-column:auto}
}

/* SPOLECNE STYLY KATEGORII A PRODUKTOVYCH KARET */
.detail-intro{max-width:1050px}
.back-link{display:inline-block;margin-bottom:18px;color:#4fc3ff;text-decoration:none;font-weight:800}
.back-link:hover,.back-link:focus-visible{color:#8edcff;text-decoration:underline}
.product-heading{margin-top:45px}
.product-grid{margin-top:20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.product-card{overflow:hidden;border-radius:16px;background:linear-gradient(180deg,rgba(14,40,66,.92),rgba(8,23,39,.86));border:1px solid rgba(79,195,255,.22);box-shadow:0 18px 50px rgba(0,0,0,.36);display:flex;flex-direction:column}
.product-image{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;background:#061321}
.product-body{padding:17px;display:flex;flex-direction:column;flex:1}
.product-title{font-size:19px;color:#eaf7ff;margin-bottom:4px}
.product-subtitle{color:#4fc3ff;font-size:13px;font-weight:800;margin-bottom:13px}
.product-table{width:100%;border-collapse:collapse;font-size:13px}
.product-table th,.product-table td{padding:8px 7px;border-bottom:1px solid rgba(255,255,255,.08);vertical-align:top;text-align:left}
.product-table th{width:48%;color:#d8f3ff;font-weight:700}
.product-table td{color:#fff;opacity:.88}
.product-note{margin-top:13px;font-size:12px;line-height:1.5;opacity:.72}
.product-actions{margin-top:auto;padding-top:16px}
.product-button{display:block;width:100%;padding:10px 12px;border:1px solid rgba(79,195,255,.35);border-radius:8px;background:rgba(17,159,226,.16);color:#bfeaff;text-align:center;font-weight:800;text-decoration:none;cursor:default}
@media(max-width:1050px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.product-grid{grid-template-columns:1fr}.product-card{max-width:520px;width:100%;margin:auto}}

/* PRISTUPNOST A STAV MODALU */
body.modal-open{overflow:hidden}
.modal-close:focus-visible,.btn:focus-visible,.cta-btn:focus-visible,.hero-contact-btn:focus-visible,.carousel button:focus-visible{outline:3px solid #8edcff;outline-offset:3px}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
