:root{--bg:#f4f4f4;--paper:#fff;--ink:#171717;--muted:#696969;--dark:#1d1d1f;--accent:#ff6600;--accent-soft:#ff8a3d;--line:#d9d9d9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.55}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.top{position:fixed;z-index:50;top:0;left:0;right:0;background:rgba(29,29,31,.30);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;color:#fff;text-decoration:none}.brand-logo img{display:block;width:220px;height:auto;max-height:52px}.footbrand img{width:250px;max-height:60px}.nav nav{display:flex;gap:26px;align-items:center}.nav nav a{text-decoration:none;color:#fff;font-weight:650;font-size:14px}.nav .cta{background:var(--accent);color:#fff;padding:12px 17px;border-radius:999px}.menu{display:none;border:0;background:none;color:#fff;font-size:25px}.hero{height:min(840px,96vh);min-height:690px;position:relative;display:flex;align-items:flex-end;color:#fff;overflow:hidden}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,12,13,.88) 0%,rgba(9,12,13,.55) 48%,rgba(9,12,13,.12) 100%),linear-gradient(0deg,rgba(9,12,13,.7),transparent 55%)}.hero-content{position:relative;padding:170px 0 70px}.eyebrow,.kicker{display:inline-block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:800}.eyebrow{color:#ffb17d}.hero h1{font-size:clamp(46px,6.2vw,80px);line-height:.95;letter-spacing:-.055em;margin:16px 0 26px;max-width:900px}.hero h1 em{font-style:normal;color:var(--accent)}.hero p{font-size:20px;max-width:690px;color:#e5e5e5}.actions{display:flex;gap:12px;margin:34px 0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 22px;border-radius:999px;text-decoration:none;font-weight:800;border:1px solid transparent;cursor:pointer}.primary{background:var(--accent);color:#fff}.ghost{border-color:rgba(255,255,255,.45);color:#fff;background:rgba(255,255,255,.06)}.trust{display:flex;gap:34px;border-top:1px solid rgba(255,255,255,.24);padding-top:25px;margin-top:42px;font-size:13px;color:#ddd}.trust b{display:block;color:#fff;font-size:17px}.section{padding:100px 0}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:80px}.kicker{color:var(--accent)}h2{font-size:clamp(38px,5vw,64px);line-height:1.02;letter-spacing:-.045em;margin:14px 0 28px}p{color:var(--muted)}.dark{background:var(--dark);color:#fff}.dark p{color:#aeb4b4}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#303637;border:1px solid #303637;margin-top:50px}.cards article{background:var(--dark);padding:36px;min-height:250px}.cards span{color:var(--accent);font-weight:800}.cards h3{font-size:24px;margin:40px 0 12px}.steps{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-top:45px}.steps div{border-top:2px solid var(--ink);padding-top:16px}.steps b{color:var(--accent)}.steps h3{font-size:18px;margin:12px 0 6px}.steps p{font-size:14px}.works{background:#fff}.headrow{display:flex;justify-content:space-between;align-items:end;gap:20px}.textlink{color:var(--ink);font-weight:800}.gallery{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px;margin-top:40px}.gallery figure{margin:0;position:relative;height:520px;overflow:hidden;background:#ddd}.gallery img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery figure:hover img{transform:scale(1.025)}figcaption{position:absolute;left:0;right:0;bottom:0;padding:50px 24px 22px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.75))}figcaption b,figcaption span{display:block}figcaption span{font-size:13px;color:#ddd}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:35px}.stats span{border-top:1px solid var(--line);padding-top:14px}.stats b,.stats small{display:block}.stats small{color:var(--muted)}.offer{padding-top:40px}.offerbox{background:#1d1d1f;color:#fff;border-radius:28px;padding:60px;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.offerbox p{color:#bfc5c5}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fields label{font-size:12px;font-weight:800;color:#d8dddd}.fields input,.fields select,.fields textarea{width:100%;margin-top:7px;background:#29292c;border:1px solid #444448;color:white;padding:14px;border-radius:10px}.wide{grid-column:1/-1}.offer form .btn{margin-top:18px;border:0}.footer{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding:60px 0}.footer>div{display:flex;flex-direction:column;gap:8px}.footer a,.footer span{color:var(--muted);text-decoration:none}.copy{border-top:1px solid var(--line);padding:20px 0 35px;color:var(--muted);font-size:12px}@media(max-width:900px){.menu{display:block}.nav nav{display:none;position:absolute;left:20px;right:20px;top:70px;background:#1d1d1f;padding:20px;border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.15);flex-direction:column;align-items:stretch}.nav nav.open{display:flex}.hero{min-height:760px}.hero-content{padding-bottom:35px}.trust{flex-wrap:wrap}.grid2,.offerbox{grid-template-columns:1fr;gap:30px}.cards{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr 1fr}.gallery{grid-template-columns:1fr}.gallery figure{height:480px}.footer{grid-template-columns:1fr 1fr}.headrow{align-items:start;flex-direction:column}}@media(max-width:600px){.wrap{width:min(100% - 28px,1180px)}.hero h1{font-size:44px}.hero p{font-size:17px}.actions{flex-direction:column;align-items:stretch}.trust{gap:18px}.section{padding:72px 0}.cards{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.offerbox{padding:28px 20px;border-radius:18px}.fields{grid-template-columns:1fr}.wide{grid-column:auto}.footer{grid-template-columns:1fr}.gallery figure{height:420px}}

/* Pôvodná identita značky: oranžová #FF6600 + biela + tmavý antracit */
.btn.primary:hover,.nav .cta:hover{background:var(--accent-soft)}
.cards article:hover{box-shadow:inset 0 3px 0 var(--accent)}

/* V3 – rozšírený formulár cenovej ponuky */
.form-group{border-top:1px solid #444448;padding-top:18px;margin-top:4px}.form-title{display:block;font-size:14px;font-weight:850;color:#fff;margin-bottom:10px}.form-title small{font-weight:500;color:#bfc5c5}.form-hint{font-size:13px;margin:0 0 12px}.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px}.choices label{display:flex;align-items:center;gap:9px;background:#29292c;border:1px solid #444448;border-radius:10px;padding:12px 13px;font-size:13px;cursor:pointer}.choices input{width:auto;margin:0;accent-color:var(--accent)}.measure-grid,.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dynamic-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hidden{display:none}.fields input[type=file]{padding:10px;font-size:12px}.fields input[type=file]::file-selector-button{border:0;border-radius:8px;background:var(--accent);color:#fff;font-weight:800;padding:9px 11px;margin-right:10px;cursor:pointer}@media(max-width:600px){.choices,.measure-grid,.upload-grid,.dynamic-fields{grid-template-columns:1fr}}

/* V8 gallery */
.realization-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.realization-gallery figure{margin:0;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.08)}.gallery-open{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}.gallery-open img{display:block;width:100%;height:360px;object-fit:cover;transition:transform .3s ease}.gallery-open:hover img{transform:scale(1.03)}.realization-gallery figcaption{padding:16px 18px 18px}.realization-gallery figcaption b,.realization-gallery figcaption span{display:block}.realization-gallery figcaption span{margin-top:6px;color:#6b6b6b;font-size:.92rem}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:9999;display:none;align-items:center;justify-content:center;padding:30px}.lightbox.open{display:flex}.lightbox img{max-width:min(1100px,92vw);max-height:82vh;object-fit:contain;border-radius:10px}.lightbox-close{position:absolute;top:18px;right:24px;border:0;background:transparent;color:#fff;font-size:42px;cursor:pointer}.lightbox #lightboxCaption{position:absolute;bottom:20px;left:20px;right:20px;text-align:center;color:#fff;font-weight:700}@media(max-width:820px){.realization-gallery{grid-template-columns:1fr 1fr}.gallery-open img{height:280px}}@media(max-width:560px){.realization-gallery{grid-template-columns:1fr}.gallery-open img{height:auto;aspect-ratio:4/3}.lightbox{padding:14px}}

/* V9 – jemne meniace sa fotografie v headeri + menší dvojriadkový nadpis */
.hero-slides{position:absolute;inset:0;z-index:0}
.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1.015);transition:opacity 1.15s ease,transform 6s ease}
.hero-slide.active{opacity:1;transform:scale(1.05)}
.shade{z-index:1}
.hero-content{z-index:2}
.hero h1{font-size:clamp(40px,5.2vw,68px);line-height:.98;max-width:860px}
.hero h1 span,.hero h1 em{display:block}
.hero h1 em{font-size:.72em;line-height:1.05;margin-top:8px;letter-spacing:-.035em}
@media(max-width:600px){.hero h1{font-size:38px}.hero h1 em{font-size:.70em;margin-top:7px}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none;transform:none}.hero-slide.active{transform:none}}

/* V10: oba hlavné riadky hero nadpisu majú rovnakú veľkosť */
.hero h1 em{font-size:1em;line-height:.98;margin-top:4px;letter-spacing:-.055em}
@media(max-width:600px){.hero h1 em{font-size:1em;line-height:.98;margin-top:4px}}

/* V16 – čistejší popis pod galériou */
.realization-gallery figcaption{
  position:static;
  left:auto;right:auto;bottom:auto;
  background:#fff;
  color:var(--ink);
  padding:18px 20px 20px;
  min-height:108px;
  border-top:1px solid #ececec;
}
.realization-gallery figcaption b{
  display:block;
  font-size:17px;
  line-height:1.25;
  letter-spacing:-.015em;
  margin:0 0 9px;
  color:var(--ink);
}
.realization-gallery figcaption span{
  display:block;
  margin:0;
  color:#777;
  font-size:13px;
  line-height:1.45;
}
@media(max-width:560px){
  .realization-gallery figcaption{min-height:0;padding:16px 17px 18px}
  .realization-gallery figcaption b{font-size:16px}
}

/* V18 – 3 realizácie na hlavnej stránke + samostatná galéria */
.gallery-actions{display:flex;justify-content:center;margin-top:34px}.subpage-main{padding-top:76px}.all-realizations{padding-top:70px}.page-title{font-size:clamp(42px,6vw,72px);line-height:1;letter-spacing:-.045em;margin:14px 0 22px}@media(max-width:600px){.subpage-main{padding-top:70px}.all-realizations{padding-top:48px}}

/* V19 – CTA pod galériou */
.gallery-actions{display:flex;justify-content:center;margin-top:28px}.gallery-all-btn{font-weight:400;text-align:center}


/* V20 – tretí riadok headera + vybrané reprezentatívne realizácie */
.hero h1 .hero-third{display:block;font-size:.56em;line-height:1.08;margin-top:10px;letter-spacing:-.03em;font-weight:700;color:#fff;max-width:950px}

/* V24 – čisté mobilné hero bez vzájomne sa prepisujúcich starých opráv */
@media(max-width:600px){
  .hero{
    position:relative;
    display:block;
    height:auto;
    min-height:0;
    padding-top:76px;
    overflow:hidden;
    isolation:isolate;
  }
  .hero-slides,.shade{position:absolute;inset:0}
  .hero-content{
    position:relative;
    z-index:2;
    width:min(100% - 28px,1180px);
    min-height:0;
    padding:64px 0 64px;
    margin:0 auto;
  }
  .hero h1{font-size:38px}
  .hero h1 em{font-size:1em;line-height:.98;margin-top:4px}
  .hero h1 .hero-third{font-size:.53em;line-height:1.14;margin-top:9px;letter-spacing:-.02em}
  .hero + .section,.intro{
    position:relative;
    z-index:auto;
    margin:0;
    transform:none;
  }
}

/* V24 – rozšírenie prístupového systému ČIP / GSM */
.access-expand{background:#f7f7f7}
.access-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:38px}
.access-card{background:#fff;border:1px solid #e3e3e3;border-radius:18px;padding:24px;min-height:190px}
.access-card .tech{display:inline-block;color:var(--accent);font-size:12px;font-weight:850;letter-spacing:.12em;margin-bottom:18px}
.access-card h3{font-size:20px;line-height:1.2;margin:0 0 9px}
.access-card p{font-size:14px;margin:0}
.access-note{margin-top:30px;padding-top:22px;border-top:1px solid var(--line);font-size:18px;font-weight:750;color:var(--ink)}
@media(max-width:900px){.access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.access-grid{grid-template-columns:1fr}.access-card{min-height:0}.access-note{font-size:16px}}
