:root{--orange:#ff6a00;--orange2:#ff9200;--black:#080808;--panel:#141414;--line:#303030;--white:#f7f7f7;--muted:#c4c4c4}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#090909;color:var(--white);font-family:Arial,Helvetica,sans-serif;line-height:1.5}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}
.header{height:80px;display:flex;align-items:center;gap:28px;padding:0 4.5vw;background:#090909;position:sticky;top:0;z-index:50;border-bottom:1px solid #222}.logo{width:235px}.logo img{width:100%}.header nav{display:flex;gap:30px;margin-left:auto}.header nav a{font-size:14px;font-weight:800;text-transform:uppercase}.header nav a:hover{color:var(--orange)}.header-phone{background:linear-gradient(135deg,var(--orange),var(--orange2));padding:13px 21px;border-radius:5px;font-weight:900}.menu{display:none;background:none;border:0;color:white;font-size:28px}
.hero{position:relative;min-height:610px;background:url("assets/hero.jpg") center 43%/cover no-repeat;display:flex;align-items:center;padding:70px 5vw;overflow:hidden}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.68) 48%,rgba(0,0,0,.2))}.hero-copy{position:relative;z-index:2;max-width:650px}.hero h1{font-size:clamp(64px,8vw,110px);line-height:.9;margin:0 0 20px}.hero h1 span{color:var(--orange)}.hero h2{text-transform:uppercase;font-size:21px}.hero p{font-size:19px;color:#ddd;max-width:600px}.orange{color:var(--orange)!important}.hero-buttons{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.button{padding:14px 19px;border-radius:5px;font-weight:850}.orange-button{background:linear-gradient(135deg,var(--orange),var(--orange2))}.outline-button{border:1px solid #bbb;background:rgba(0,0,0,.35)}.years{z-index:3;position:absolute;right:8%;width:215px;height:215px;border:3px solid var(--orange);border-radius:50%;display:grid;place-content:center;text-align:center;background:rgba(0,0,0,.62);box-shadow:0 0 0 10px rgba(255,106,0,.1)}.years b{font-size:66px;line-height:.85;color:var(--orange)}.years span{font-size:22px;font-weight:900}
.advantages{display:grid;grid-template-columns:1.55fr repeat(3,1fr);background:#131313;border-block:1px solid #292929}.advantages>*{padding:30px;border-right:1px solid #333}.advantages blockquote{margin:0;text-align:center;font-size:25px;font-weight:900;text-transform:uppercase}.advantages blockquote strong{color:var(--orange)}.advantages div{display:flex;align-items:center;gap:15px}.advantages i{font-style:normal;font-size:45px;color:var(--orange)}.advantages p{margin:0;display:flex;flex-direction:column}.advantages b{text-transform:uppercase}.advantages span{color:var(--muted);font-size:14px}
.section{max-width:1500px;margin:auto;padding:75px 3vw}.section-heading{text-align:center;margin-bottom:30px}.section-heading h2{font-size:34px;margin:0}.section-heading h2::after{content:"";display:block;width:48px;height:3px;background:var(--orange);margin:8px auto}
.services{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}.services article{min-height:265px;padding:20px 13px;text-align:center;background:linear-gradient(#171717,#101010);border:1px solid #333;transition:.3s}.services article:hover{transform:translateY(-6px);border-color:var(--orange)}.services i{display:block;color:var(--orange);font-size:50px;font-style:normal}.services h3{text-transform:uppercase;font-size:15px}.services p{color:#c6c6c6;font-size:13px}.custom{max-width:920px;margin:26px auto 0;padding:20px 28px;display:flex;gap:24px;background:#151515;border:1px solid #333}.custom strong{color:var(--orange);text-transform:uppercase;white-space:nowrap}
.about{display:grid;grid-template-columns:1.2fr 1fr;gap:45px;background:#121212;border-block:1px solid #292929;max-width:none;padding-inline:7vw}.about small,.contact small{color:var(--orange);font-weight:900}.about h2{font-size:38px}.about p{font-size:18px;color:#d0d0d0}.about-points{display:grid;gap:12px}.about-points div{background:#181818;border-left:4px solid var(--orange);padding:20px}.about-points b,.about-points span{display:block}.about-points span{color:var(--muted);margin-top:5px}
.gallery{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.gallery button{border:0;padding:0;background:none;aspect-ratio:1.28;overflow:hidden;cursor:pointer;border-radius:4px}.gallery img{width:100%;height:100%;object-fit:cover;transition:.45s}.gallery button:hover img{transform:scale(1.08)}.gallery .more{display:none}.gallery.open .more{display:block}.show-more{display:block;margin:25px auto 0;padding:13px 52px;background:transparent;border:1px solid var(--orange);color:var(--orange);font-weight:900;text-transform:uppercase;cursor:pointer}
.contact{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:0;background:#151515;border-block:1px solid #303030;padding:34px 5vw}.contact>div{padding:18px 35px;border-right:1px solid #3a3a3a}.contact>div:last-child{border:0}.contact a{display:block;margin-top:8px}.big-phone{font-size:38px;color:var(--orange);font-weight:900}.facebook{color:var(--orange);font-weight:900}.availability{display:grid;grid-template-columns:auto 1fr;column-gap:18px}.availability i{font-size:75px;color:var(--orange);font-style:normal}.availability h2{margin:0;font-size:34px;line-height:1.07}.availability em{grid-column:2;color:var(--orange);font-size:24px}
footer{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:30px 6vw 18px;background:#101010}footer div{display:flex;flex-direction:column;border-right:1px solid #333;padding-right:20px}footer b{color:white}footer span{color:var(--muted);font-size:13px}footer p{grid-column:1/-1;text-align:center;color:#aaa;font-size:12px;margin:15px 0 0}
.lightbox{display:none;position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.94);align-items:center;justify-content:center;padding:4vw}.lightbox.open{display:flex}.lightbox img{max-width:92vw;max-height:90vh;object-fit:contain}.lightbox button{position:absolute;top:15px;right:24px;background:none;border:0;color:white;font-size:45px;cursor:pointer}
@media(max-width:1150px){.services{grid-template-columns:repeat(4,1fr)}.gallery{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.menu{display:block;margin-left:auto}.header nav{display:none;position:absolute;top:80px;left:0;right:0;background:#090909;flex-direction:column;padding:25px 5vw}.header nav.open{display:flex}.header-phone{display:none}.years{right:4%;width:160px;height:160px}.years b{font-size:48px}.years span{font-size:16px}.advantages{grid-template-columns:1fr 1fr}.about{grid-template-columns:1fr}.contact{grid-template-columns:1fr}.contact>div{border-right:0;border-bottom:1px solid #333}.gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:580px){.header{height:70px;padding:0 18px}.logo{width:190px}.header nav{top:70px}.hero{min-height:760px;padding:70px 20px 30px;align-items:flex-start}.hero h1{font-size:61px;margin-top:35px}.hero h2{font-size:16px}.hero p{font-size:17px}.years{position:relative;right:auto;margin-top:35px;width:150px;height:150px}.advantages{grid-template-columns:1fr}.advantages>*{border-right:0;border-bottom:1px solid #333}.section{padding:60px 16px}.services{grid-template-columns:1fr}.custom{display:block}.custom strong{display:block;margin-bottom:8px}.gallery{grid-template-columns:1fr}.about{padding-inline:20px}.contact{padding-inline:0}.availability h2{font-size:28px}footer{grid-template-columns:1fr 1fr}}


/* ===== Strechy Martinkovič v17: mobile experience badge fix ===== */
@media(max-width:580px){
  .hero{
    min-height:auto!important;
    padding:78px 20px 34px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
  }
  .hero-copy{
    width:100%!important;
  }
  .years{
    position:relative!important;
    inset:auto!important;
    right:auto!important;
    top:auto!important;
    margin:28px auto 0!important;
    width:148px!important;
    height:148px!important;
    flex:0 0 148px!important;
    align-self:center!important;
    transform:none!important;
    z-index:3!important;
  }
  .years b{
    font-size:48px!important;
  }
  .years span{
    font-size:15px!important;
    line-height:1.15!important;
  }
}


/* ===== v18: desktop roof logo full-width fix ===== */
.header .logo{
  width:290px!important;
  min-width:290px!important;
  overflow:visible!important;
}
.header .logo img{
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:left center!important;
  overflow:visible!important;
}
@media(max-width:850px){
  .header .logo{
    width:235px!important;
    min-width:235px!important;
  }
}
@media(max-width:580px){
  .header .logo{
    width:190px!important;
    min-width:190px!important;
  }
}


/* ===== Strechy Martinkovič v19: mobile 20+ badge top-right ===== */
@media(max-width:580px){
  .hero{
    position:relative!important;
    min-height:760px!important;
    padding:115px 20px 34px!important;
    display:block!important;
  }

  .hero-copy{
    position:relative!important;
    z-index:4!important;
    width:100%!important;
    padding-top:95px!important;
  }

  .years{
    position:absolute!important;
    top:18px!important;
    right:16px!important;
    left:auto!important;
    bottom:auto!important;
    margin:0!important;
    width:124px!important;
    height:124px!important;
    transform:none!important;
    z-index:3!important;
    background:rgba(0,0,0,.42)!important;
    backdrop-filter:blur(3px)!important;
    -webkit-backdrop-filter:blur(3px)!important;
    box-shadow:0 0 0 8px rgba(255,106,0,.10)!important;
  }

  .years b{
    font-size:43px!important;
    line-height:.9!important;
  }

  .years span{
    font-size:13px!important;
    line-height:1.15!important;
  }

  .hero h1{
    margin-top:0!important;
  }

  .hero-buttons{
    margin-top:24px!important;
  }
}
