  @font-face{font-family:'Oswald';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/Oswald-400.woff2') format('woff2'),url('assets/fonts/Oswald-400.ttf') format('truetype');}
  @font-face{font-family:'Oswald';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/Oswald-500.woff2') format('woff2'),url('assets/fonts/Oswald-500.ttf') format('truetype');}
  @font-face{font-family:'Oswald';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/Oswald-600.woff2') format('woff2'),url('assets/fonts/Oswald-600.ttf') format('truetype');}
  @font-face{font-family:'Oswald';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/Oswald-700.woff2') format('woff2'),url('assets/fonts/Oswald-700.ttf') format('truetype');}
  @font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/IBMPlexSans-400.woff2') format('woff2'),url('assets/fonts/IBMPlexSans-400.ttf') format('truetype');}
  @font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/IBMPlexSans-500.woff2') format('woff2'),url('assets/fonts/IBMPlexSans-500.ttf') format('truetype');}
  @font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/IBMPlexSans-600.woff2') format('woff2'),url('assets/fonts/IBMPlexSans-600.ttf') format('truetype');}
  @font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/IBMPlexMono-400.woff2') format('woff2'),url('assets/fonts/IBMPlexMono-400.ttf') format('truetype');}
  @font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/IBMPlexMono-500.woff2') format('woff2'),url('assets/fonts/IBMPlexMono-500.ttf') format('truetype');}

  :root{
    color-scheme: light;
    --asphalt:#1B1E21;
    --asphalt-2:#25292D;
    --steel:#5B6670;
    --paper:#E9EDEF;
    --paper-2:#DCE2E5;
    --orange:#D9480F;
    --orange-dark:#B33B0B;
    --yellow:#F2B705;
    --green:#1F7A4D;
    --green-dark:#175C3A;
    --ink:#1B1E21;
    --white:#FFFFFF;
    --radius:10px;
    --font-display:'Oswald',sans-serif;
    --font-body:'IBM Plex Sans',sans-serif;
    --font-mono:'IBM Plex Mono',monospace;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:var(--font-body);
    background:var(--paper);
    color:var(--ink);
    line-height:1.5;
  }
  a{color:inherit;text-decoration:none;}
  img,svg{display:block;max-width:100%;}
  .container{max-width:1160px;margin:0 auto;padding:0 24px;}
  h1,h2,h3{font-family:var(--font-display);text-transform:uppercase;letter-spacing:0.02em;line-height:1.05;color:var(--ink);}

  /* hazard stripe divider — recurring motif */
  .hazard{
    height:10px;
    background:repeating-linear-gradient(135deg,var(--yellow) 0 18px, var(--asphalt) 18px 36px);
  }

  /* ---------- Header ---------- */
  header{
    position:sticky;top:0;z-index:50;
    background:var(--asphalt);
    color:var(--paper);
  }
  .nav{
    display:flex;align-items:center;justify-content:center;gap:24px;
    padding-top:16px;padding-bottom:16px;
  }
  .logo{
    font-family:var(--font-display);
    display:flex;align-items:center;gap:12px;
    text-decoration:none;flex:none;white-space:nowrap;
  }
  .logo-mark{
    width:38px;height:38px;flex:none;border-radius:9px;
    background:var(--asphalt-2);border:1px solid rgba(233,237,239,.12);
    display:flex;align-items:center;justify-content:center;
    position:relative;overflow:hidden;
  }
  .logo-mark svg{width:24px;height:24px;}
  .logo-text{display:flex;align-items:center;}
  .logo-word{
    font-size:23px;font-weight:700;letter-spacing:-0.01em;
    color:var(--white);white-space:nowrap;
  }
  .logo-word .e{color:var(--orange);}
  .logo-word .dash{color:var(--yellow);}
  nav.links{display:flex;gap:24px;font-size:13.5px;font-weight:500;text-transform:uppercase;letter-spacing:0.03em;}
  nav.links a{white-space:nowrap;flex:none;}
  nav.links a{opacity:.85;transition:opacity .2s;}
  nav.links a:hover{opacity:1;color:var(--yellow);}
  .nav-cta{
    background:var(--orange);color:var(--white);
    padding:10px 18px;border-radius:6px;font-weight:600;font-size:14px;
    text-transform:uppercase;letter-spacing:.03em;
    transition:background .2s;
  }
  .nav-cta:hover{background:var(--orange-dark);}
  .burger{display:none;background:none;border:none;color:var(--white);font-size:26px;cursor:pointer;}

  /* ---------- Hero ---------- */
  .hero{
    background:
      radial-gradient(1100px 500px at 85% -10%, rgba(217,72,15,0.28), transparent 60%),
      var(--asphalt);
    color:var(--paper);
    padding:88px 0 72px;
    position:relative;
    overflow:hidden;
  }
  .hero .eyebrow{
    font-family:var(--font-mono);font-size:13px;color:var(--yellow);
    letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px;
    display:inline-block;border:1px solid rgba(242,183,5,.4);padding:5px 12px;border-radius:4px;
  }
  .hero h1{
    font-size:clamp(38px,6vw,68px);
    max-width:820px;
    color:var(--white);
  }
  .hero h1 span{color:var(--orange);}
  .hero p{
    max-width:560px;margin-top:22px;font-size:17px;color:var(--paper-2);
  }
  .hero-actions{margin-top:34px;display:flex;gap:16px;flex-wrap:wrap;}
  .hero-compliance{
    margin-top:18px;font-size:13.5px;color:var(--steel);
    display:flex;align-items:center;gap:8px;max-width:560px;
  }
  .hero-compliance .check{color:var(--yellow);font-weight:700;}
  .btn-primary{
    background:var(--orange);color:var(--white);padding:14px 26px;border-radius:6px;
    font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:14px;
    transition:background .2s, transform .2s;border:none;cursor:pointer;
  }
  .btn-primary:hover{background:var(--orange-dark);transform:translateY(-1px);}
  .btn-ghost{
    border:1px solid rgba(233,237,239,.35);color:var(--paper);padding:14px 26px;border-radius:6px;
    font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:14px;
    transition:border-color .2s, background .2s;
  }
  .btn-ghost:hover{border-color:var(--yellow);background:rgba(242,183,5,.08);}

  .hero-stats{
    display:flex;gap:40px;margin-top:56px;flex-wrap:wrap;
    border-top:1px solid rgba(233,237,239,.15);padding-top:28px;
  }
  .hero-stats div{font-family:var(--font-mono);}
  .hero-stats .num{font-size:28px;color:var(--white);font-weight:500;}
  .hero-stats .label{font-size:12px;color:var(--steel);text-transform:uppercase;letter-spacing:.08em;margin-top:2px;}

  /* ---------- Section heads ---------- */
  .section{padding:76px 0;background:var(--paper);color:var(--ink);}
  .section-head{
    display:flex;justify-content:space-between;align-items:flex-end;
    margin-bottom:40px;flex-wrap:wrap;gap:20px;
  }
  .section-head .tag{
    font-family:var(--font-mono);font-size:13px;color:var(--orange);
    text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px;display:block;
  }
  .section-head h2{font-size:clamp(26px,3.4vw,38px);color:var(--ink);}
  .section-head p{max-width:480px;color:var(--steel);font-size:15px;}

  /* ---------- Filters ---------- */
  .filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:36px;}
  .filter-btn{
    font-family:var(--font-mono);font-size:13px;text-transform:uppercase;letter-spacing:.05em;
    padding:9px 16px;border-radius:20px;border:1px solid var(--steel);
    background:var(--paper);color:var(--ink);cursor:pointer;transition:all .2s;
  }
  .filter-btn.active,.filter-btn:hover{background:var(--asphalt);color:var(--paper);border-color:var(--asphalt);}

  /* ---------- Catalog grid / spec-plate cards ---------- */
  .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
  .wrap-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px;}
  .wrap-item{position:relative;margin:0;border-radius:10px;overflow:hidden;aspect-ratio:4/3;background:#fff;border:1px solid var(--paper-2);}
  .wrap-item img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .3s;}
  .wrap-item:hover img{transform:scale(1.05);}
  .wrap-item figcaption{position:absolute;left:0;right:0;bottom:0;padding:8px 12px;background:linear-gradient(transparent,rgba(0,0,0,.78));color:#fff;font-size:12.5px;font-weight:600;letter-spacing:.02em;}
  .card{
    background:var(--white);
    border-radius:var(--radius);
    position:relative;
    padding:22px 22px 24px;
    border:1px solid var(--paper-2);
    transition:transform .25s, box-shadow .25s;
    opacity:0; transform:translateY(16px);
  }
  .card.visible{opacity:1;transform:translateY(0);}
  .card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(27,30,33,0.12);}
  /* rivets — the signature detail, like a builder's plate */
  .card::before,.card::after,.card .rivet-tl,.card .rivet-tr{
    content:"";position:absolute;width:7px;height:7px;border-radius:50%;
    background:var(--paper-2);box-shadow:inset 0 1px 2px rgba(0,0,0,.25);
  }
  .card::before{top:10px;left:10px;}
  .card::after{top:10px;right:10px;}
  .card .rivet-tl{bottom:10px;left:10px;}
  .card .rivet-tr{bottom:10px;right:10px;}

  .icon-wrap{
    height:120px;display:flex;align-items:center;justify-content:center;
    margin-bottom:14px;background:var(--asphalt-2);border-radius:6px;
    position:relative;overflow:hidden;
  }
  .icon-wrap.has-photo{height:210px;}
  .icon-wrap svg{width:86%;height:76%;transition:transform .35s ease;}
  .card:hover .icon-wrap svg{transform:scale(1.06);}

  /* ---------- Product photo gallery ---------- */
  .icon-wrap.gallery{cursor:zoom-in;}
  .gallery-img{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
    opacity:0;transition:opacity .25s ease, transform .35s ease;pointer-events:none;
  }
  .gallery-img.active{opacity:1;pointer-events:auto;}
  .icon-wrap.gallery:hover .gallery-img.active{transform:scale(1.045);}
  .gallery-nav{
    position:absolute;top:50%;transform:translateY(-50%);
    width:30px;height:30px;border-radius:50%;border:none;cursor:pointer;
    background:rgba(27,30,33,.55);color:var(--white);font-size:13px;
    display:flex;align-items:center;justify-content:center;
    opacity:0;transition:opacity .2s,background .2s;z-index:2;
  }
  .icon-wrap.gallery:hover .gallery-nav{opacity:1;}
  .gallery-nav:hover{background:var(--orange);}
  .gallery-nav.prev{left:8px;}
  .gallery-nav.next{right:8px;}
  .gallery-dots{
    position:absolute;bottom:8px;left:0;right:0;display:flex;
    justify-content:center;gap:6px;z-index:2;
  }
  .gallery-dot{
    width:6px;height:6px;border-radius:50%;background:rgba(233,237,239,.55);
    cursor:pointer;transition:background .2s,transform .2s;
  }
  .gallery-dot.active{background:var(--yellow);transform:scale(1.3);}
  .gallery-count{
    position:absolute;top:8px;right:8px;z-index:2;
    background:rgba(27,30,33,.6);color:var(--paper);
    font-family:var(--font-mono);font-size:11px;padding:2px 7px;border-radius:10px;
    pointer-events:none;display:flex;align-items:center;gap:4px;
  }

  /* ---------- Lightbox ---------- */
  .lightbox-overlay{
    position:fixed;inset:0;background:rgba(27,30,33,.92);z-index:200;
    display:none;align-items:center;justify-content:center;padding:40px;
  }
  .lightbox-overlay.open{display:flex;}
  .lightbox-stage{
    position:relative;max-width:min(920px,90vw);max-height:86vh;width:100%;
    display:flex;flex-direction:column;align-items:center;gap:14px;
  }
  .lightbox-stage img{
    max-width:100%;max-height:70vh;object-fit:contain;border-radius:6px;
    background:var(--asphalt-2);
  }
  .lightbox-caption{color:var(--paper-2);font-family:var(--font-mono);font-size:13px;text-align:center;}
  .lightbox-close{
    position:absolute;top:-46px;right:0;background:none;border:none;color:var(--paper);
    font-size:30px;line-height:1;cursor:pointer;transition:color .2s;
  }
  .lightbox-close:hover{color:var(--orange);}
  .lightbox-nav{
    position:absolute;top:50%;transform:translateY(-50%);
    width:44px;height:44px;border-radius:50%;border:1px solid rgba(233,237,239,.3);
    background:rgba(27,30,33,.5);color:var(--white);font-size:18px;cursor:pointer;
    display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s;
  }
  .lightbox-nav:hover{background:var(--orange);border-color:var(--orange);}
  .lightbox-nav.prev{left:-56px;}
  .lightbox-nav.next{right:-56px;}
  @media(max-width:640px){
    .lightbox-nav.prev{left:4px;}
    .lightbox-nav.next{right:4px;}
    .lightbox-close{top:6px;right:6px;background:rgba(27,30,33,.6);border-radius:50%;width:36px;height:36px;}
  }
  .eyebrow{
    font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
    color:var(--orange);margin-bottom:6px;
  }
  .card h3{font-size:19px;margin-bottom:10px;text-transform:none;letter-spacing:0;font-weight:600;}
  .price-badge{
    display:inline-block;font-family:var(--font-mono);font-size:14px;font-weight:500;
    padding:5px 10px;border-radius:5px;margin-bottom:12px;
  }
  .price-badge.fixed{background:rgba(31,122,77,0.1);color:var(--green-dark);}
  .price-badge.quote{background:var(--paper);color:var(--steel);font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;}
  .specs{
    font-family:var(--font-mono);font-size:12.5px;color:var(--steel);
    border-top:1px dashed var(--paper-2);padding-top:10px;margin-bottom:16px;
  }
  .specs div{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:3px 0;}
  .specs span:first-child{color:var(--asphalt);opacity:.55;flex:1 1 auto;min-width:0;}
  .specs span:last-child{white-space:nowrap;flex:0 0 auto;text-align:right;}
  .card-cta{
    display:inline-block;width:100%;text-align:center;
    background:var(--asphalt);color:var(--paper);padding:11px;border-radius:6px;
    font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;
    transition:background .2s;
  }
  .card-cta:hover{background:var(--orange);}
  .card .desc{color:var(--steel);font-size:14px;line-height:1.55;margin-bottom:16px;min-height:64px;}

  /* ---------- Why us ---------- */
  .features{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
  .feature{padding:6px 0;}
  .feature .num{font-family:var(--font-mono);color:var(--orange);font-size:14px;margin-bottom:12px;}
  .feature h3{font-size:19px;text-transform:none;letter-spacing:0;margin-bottom:8px;font-weight:600;}
  .feature p{color:var(--steel);font-size:14.5px;}

  .band{background:var(--asphalt);color:var(--paper);}
  .band .section-head h2{color:var(--paper);}
  .band .feature h3{color:var(--paper);}
  .band .section-head p{color:var(--paper-2);}
  .band .feature p{color:var(--paper-2);}

  /* ---------- Spotlight (Sales Cargo) ---------- */
  .spotlight{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
  .spotlight-text .tag{font-family:var(--font-mono);font-size:13px;color:var(--orange);text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px;display:block;}
  .spotlight-text h2{font-size:clamp(24px,3vw,32px);margin-bottom:18px;color:var(--ink);}
  .spotlight-text p{color:var(--steel);font-size:15px;margin-bottom:14px;}
  .spotlight-text p.lede{color:var(--asphalt);font-size:18px;font-weight:500;line-height:1.45;}
  .spotlight-features{display:flex;flex-direction:column;gap:22px;}
  .sf-item{display:flex;gap:16px;border-top:1px dashed var(--paper-2);padding-top:16px;}
  .sf-item:first-child{border-top:none;padding-top:0;}
  .sf-num{font-family:var(--font-mono);font-size:13px;color:var(--orange);flex:none;padding-top:2px;}
  .sf-item h3{font-size:16px;text-transform:none;letter-spacing:0;font-weight:600;margin-bottom:4px;}
  .sf-item p{font-size:14px;color:var(--steel);}

  /* ---------- Blueprint design illustration ---------- */
  .blueprint-visual{
    margin-top:6px;background:var(--asphalt);border-radius:10px;
    padding:16px 16px 18px;border:1px solid var(--asphalt-2);
  }
  .blueprint-visual svg{width:100%;height:auto;display:block;}
  .blueprint-caption{
    font-family:var(--font-mono);font-size:12.5px;color:var(--paper-2);
    margin-top:12px;line-height:1.6;
  }
  .blueprint-caption strong{color:var(--yellow);font-weight:600;}

  /* ---------- Human/people photo panel ---------- */
  .people-photo{
    margin-top:6px;position:relative;border-radius:10px;overflow:hidden;
    border:1px solid var(--paper-2);
  }
  .people-photo img{width:100%;height:auto;display:block;max-height:420px;object-fit:cover;object-position:center 20%;}
  .people-photo::before{
    content:"";position:absolute;top:0;left:0;right:0;height:5px;
    background:linear-gradient(90deg,var(--orange),var(--yellow));
  }
  .people-caption{
    font-family:var(--font-mono);font-size:12.5px;color:var(--steel);
    margin-top:12px;line-height:1.6;
  }
  .people-caption strong{color:var(--orange-dark);font-weight:600;}

  @media(max-width:900px){
    .spotlight{grid-template-columns:1fr;}
  }

  /* ---------- Contact ---------- */
  .contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
  .contact-info .item{margin-bottom:22px;}
  .contact-info .item .k{font-family:var(--font-mono);font-size:12px;color:var(--orange);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;}
  .contact-info .item .v{font-size:17px;font-weight:500;}
  form{background:var(--white);border:1px solid var(--paper-2);border-radius:var(--radius);padding:30px;}
  .field{margin-bottom:18px;}
  .field label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;text-transform:uppercase;letter-spacing:.03em;color:var(--steel);}
  .field input,.field select,.field textarea{
    width:100%;padding:12px 14px;border:1px solid var(--paper-2);border-radius:6px;
    font-family:var(--font-body);font-size:15px;background:var(--paper);
  }
  .field textarea{resize:vertical;min-height:90px;}
  form .btn-primary{width:100%;border:none;font-size:15px;padding:14px;}

  footer{background:var(--asphalt);color:var(--steel);padding:32px 0;font-size:13px;}
  .footer-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;align-items:center;}

  @media(max-width:1140px){
    nav.links{
      display:none;position:absolute;top:100%;left:0;right:0;
      flex-direction:column;gap:0;background:var(--asphalt);
      border-top:1px solid rgba(233,237,239,.12);padding:8px 24px 16px;
    }
    nav.links.open{display:flex;}
    nav.links a{padding:12px 0;border-top:1px solid rgba(233,237,239,.1);white-space:normal;}
    nav.links a:first-child{border-top:none;}
    header{position:relative;}
    .nav{justify-content:space-between;}
    .nav-cta{display:none;}
    .burger{display:block;}
  }
  @media(max-width:900px){
    .grid{grid-template-columns:repeat(2,1fr);}
    .features{grid-template-columns:1fr;}
    .contact-wrap{grid-template-columns:1fr;}
    .wrap-gallery{grid-template-columns:repeat(3,1fr);}
  }
  @media(max-width:560px){
    .grid{grid-template-columns:1fr;}
    .hero-stats{gap:26px;}
    .wrap-gallery{grid-template-columns:repeat(2,1fr);gap:10px;}
  }

/* ---------- Product detail pages ---------- */
.breadcrumb{
  font-family:var(--font-mono);font-size:13px;color:var(--steel);
  padding:28px 0 22px;display:flex;gap:8px;flex-wrap:wrap;align-items:center;
}
.breadcrumb a{color:var(--steel);transition:color .2s;}
.breadcrumb a:hover{color:var(--orange);}
.breadcrumb .sep{opacity:.5;}
.breadcrumb .current{color:var(--ink);font-weight:600;}

.product-detail{
  display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:start;
  padding-top:24px;padding-bottom:64px;background:var(--paper);color:var(--ink);
}
.product-detail .icon-wrap{height:340px;margin-bottom:0;}
.product-detail .product-info h1{
  font-size:clamp(26px,3.2vw,36px);margin:12px 0 16px;
}
.product-detail .back-link{
  display:inline-block;margin-top:28px;font-family:var(--font-mono);
  font-size:13px;color:var(--steel);
}
.product-detail .back-link:hover{color:var(--orange);}
.product-lede{color:var(--steel);font-size:15px;line-height:1.6;margin-bottom:22px;}
@media(max-width:900px){
  .product-detail{grid-template-columns:1fr;}
  .product-detail .icon-wrap{height:280px;}
}

/* ---------- FAQ ---------- */
.faq-list{max-width:820px;margin:0 auto;}
.faq-item{border-bottom:1px solid var(--paper-2);}
.faq-item:first-child{border-top:1px solid var(--paper-2);}
.faq-q{
  width:100%;text-align:left;background:none;border:none;cursor:pointer;
  padding:20px 4px;display:flex;justify-content:space-between;align-items:center;
  gap:16px;font-family:var(--font-display);font-size:17px;font-weight:600;
  color:var(--ink);
}
.faq-q .plus{
  font-family:var(--font-mono);font-size:20px;color:var(--orange);
  flex:none;transition:transform .2s;
}
.faq-item.open .faq-q .plus{transform:rotate(45deg);}
.faq-a{
  max-height:0;overflow:hidden;transition:max-height .25s ease;
  color:var(--steel);font-size:15px;line-height:1.6;
}
.faq-item.open .faq-a{max-height:400px;}
.faq-a p{padding:0 4px 20px;margin:0;}

/* ---------- Viber floating button ---------- */
.viber-float{
  position:fixed;bottom:24px;right:24px;z-index:150;
  width:58px;height:58px;border-radius:50%;
  background:#7360F2;display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 20px rgba(0,0,0,.25);transition:transform .2s, box-shadow .2s;
}
.viber-float:hover{transform:scale(1.08);box-shadow:0 8px 26px rgba(0,0,0,.32);}
.viber-float svg{width:30px;height:30px;}
@media(max-width:560px){
  .viber-float{width:52px;height:52px;bottom:16px;right:16px;}
  .viber-float svg{width:26px;height:26px;}
}

/* ---------- GDPR consent checkbox ---------- */
.field-check{margin:18px 0;}
.field-check label{
  display:flex;align-items:flex-start;gap:10px;font-size:13.5px;
  color:var(--steel);line-height:1.5;cursor:pointer;
}
.field-check input[type="checkbox"]{margin-top:3px;flex:none;width:16px;height:16px;accent-color:var(--orange);}
.field-check a{color:var(--orange);text-decoration:underline;}
.footer-row a{color:var(--steel);text-decoration:underline;transition:color .2s;}
.footer-row a:hover{color:var(--paper);}

/* ---------- Cookie consent banner ---------- */
.cookie-banner{
  position:fixed;bottom:0;left:0;right:0;z-index:180;
  background:var(--asphalt);color:var(--paper);
  padding:18px 24px;display:none;
  box-shadow:0 -4px 20px rgba(0,0,0,.2);
}
.cookie-banner.show{display:block;}
.cookie-banner-inner{
  max-width:1160px;margin:0 auto;display:flex;align-items:center;
  gap:24px;flex-wrap:wrap;justify-content:space-between;
}
.cookie-banner p{font-size:13.5px;color:var(--paper-2);margin:0;max-width:640px;line-height:1.5;flex:1;min-width:240px;}
.cookie-banner p a{color:var(--yellow);text-decoration:underline;}
.cookie-banner-actions{display:flex;gap:10px;flex:none;}
.cookie-banner-actions button{
  font-family:var(--font-mono);font-size:12.5px;font-weight:600;text-transform:uppercase;
  letter-spacing:.04em;padding:10px 18px;border-radius:6px;cursor:pointer;border:none;
}
.cookie-accept{background:var(--orange);color:var(--white);}
.cookie-accept:hover{background:var(--orange-dark);}
.cookie-reject{background:transparent;color:var(--paper-2);border:1px solid rgba(233,237,239,.3) !important;}
.cookie-reject:hover{color:var(--paper);border-color:var(--paper-2) !important;}

/* ---------- Back to top ---------- */
.back-to-top{
  position:fixed;bottom:24px;left:24px;z-index:150;
  width:44px;height:44px;border-radius:50%;
  background:var(--asphalt);color:var(--paper);border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;font-size:18px;
  opacity:0;pointer-events:none;transform:translateY(8px);
  transition:opacity .25s, transform .25s, background .2s;
  box-shadow:0 6px 18px rgba(0,0,0,.2);
}
.back-to-top.show{opacity:1;pointer-events:auto;transform:translateY(0);}
.back-to-top:hover{background:var(--orange);}
@media(max-width:640px){
  .back-to-top{display:none;}
}

/* ---------- Sticky mobile CTA bar ---------- */
.mobile-cta-bar{display:none;}
@media(max-width:640px){
  .mobile-cta-bar{
    display:flex;position:fixed;bottom:0;left:0;right:0;z-index:140;
    background:var(--asphalt);border-top:1px solid rgba(233,237,239,.12);
  }
  .mobile-cta-bar a{
    flex:1;display:flex;align-items:center;justify-content:center;gap:8px;
    padding:14px 8px;font-family:var(--font-mono);font-size:12.5px;font-weight:600;
    text-transform:uppercase;letter-spacing:.03em;color:var(--paper);
  }
  .mobile-cta-bar a:first-child{border-right:1px solid rgba(233,237,239,.12);}
  .mobile-cta-bar a.call{color:var(--paper);}
  .mobile-cta-bar a.viber{background:#7360F2;color:#fff;}
  .mobile-cta-bar svg{width:16px;height:16px;flex:none;}
  /* leave room so the sticky bar never covers content, and shift the Viber bubble up */
  body{padding-bottom:58px;}
  .viber-float{display:none;}
}

/* ---------- Related products ---------- */
.related-products{padding-top:48px;padding-bottom:8px;background:var(--paper);color:var(--ink);}
.related-products h2{font-size:20px;margin-bottom:20px;color:var(--ink);}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.related-card{
  display:block;border:1px solid var(--paper-2);border-radius:8px;padding:16px;
  transition:transform .2s, box-shadow .2s;background:var(--white);color:var(--ink);
}
.related-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(27,30,33,.1);}
.related-card .icon-wrap{height:210px;margin-bottom:12px;}
.related-card .eyebrow{font-size:11px;}
.related-card h3{font-size:15px;margin:2px 0 6px;color:var(--ink);}
.related-card .price{font-family:var(--font-mono);font-size:13px;color:var(--green-dark);font-weight:600;}
@media(max-width:768px){
  .related-grid{grid-template-columns:1fr;}
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce){
  *{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important;}
  .gallery-img{transform:none !important;}
  .icon-wrap.gallery:hover .gallery-img.active{transform:none !important;}
  .card:hover .icon-wrap svg{transform:none !important;}
}

/* ---------- Hero showcase photo ---------- */
.hero-photo{
  margin:20px 0 28px;border-radius:10px;overflow:hidden;
  border:1px solid rgba(233,237,239,.14);
  box-shadow:0 20px 50px rgba(0,0,0,.35);
  position:relative;
}
.hero-photo img{width:100%;height:auto;display:block;max-height:420px;object-fit:cover;}
.hero-photo::before{
  content:"";position:absolute;top:0;left:0;right:0;height:4px;
  background:linear-gradient(90deg,var(--orange),var(--yellow));
}
@media(max-width:640px){
  .hero-photo img{max-height:220px;}
}

/* ---------- Image protection (deterrents) ---------- */
img{
  -webkit-user-drag:none;
  -khtml-user-drag:none;
  -moz-user-drag:none;
  -o-user-drag:none;
  user-drag:none;
  -webkit-touch-callout:none;
  user-select:none;
  -webkit-user-select:none;
  -moz-user-select:none;
}

/* ---------- Contact form success state ---------- */
.form-success{
  display:none;text-align:center;padding:40px 24px;
  border:1px solid var(--paper-2);border-radius:10px;background:var(--white);
}
.form-success.show{display:block;}
.form-success .icon{
  width:60px;height:60px;border-radius:50%;background:rgba(31,122,77,0.12);
  display:flex;align-items:center;justify-content:center;margin:0 auto 18px;
}
.form-success .icon svg{width:30px;height:30px;}
.form-success h3{font-size:20px;margin-bottom:10px;color:var(--ink);}
.form-success p{color:var(--steel);font-size:14.5px;line-height:1.6;max-width:360px;margin:0 auto;}
.form-success .viber-alt{
  display:inline-flex;align-items:center;gap:8px;margin-top:18px;
  font-family:var(--font-mono);font-size:13px;font-weight:600;color:#1f7a4d;
  text-transform:uppercase;letter-spacing:.03em;
}

/* ---------- Contact form error state ---------- */
.form-error{
  display:none;align-items:flex-start;gap:12px;
  padding:16px 18px;margin-bottom:18px;border-radius:8px;
  background:rgba(217,72,15,0.08);border:1px solid rgba(217,72,15,0.25);
}
.form-error.show{display:flex;}
.form-error svg{width:20px;height:20px;flex:none;margin-top:1px;}
.form-error p{color:var(--orange-dark);font-size:13.5px;line-height:1.55;}
.form-error a{color:var(--orange-dark);text-decoration:underline;font-weight:600;}

/* ================================
   PHASE 1 — New homepage hero + trust strip
   ================================ */
:root {
  --ek-bg: #181c1f;
  --ek-bg-deep: #101315;
  --ek-surface: #22272b;
  --ek-text: #f4f6f7;
  --ek-muted: #b7bec3;
  --ek-orange: #D9480F;
  --ek-orange-hover: #B33B0B;
  --ek-yellow: #F2B705;
  --ek-line: rgba(255,255,255,.12);
  --ek-radius: 10px;
  --ek-shadow: 0 18px 48px rgba(0,0,0,.22);
  --ek-container: 1180px;
}

.home-hero { position: relative; min-height: clamp(620px, 72vh, 820px); overflow: hidden; background: var(--ek-bg-deep); display: grid; align-items: center; }
.home-hero__picture, .home-hero__picture img, .home-hero__shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.home-hero__picture img { object-fit: cover; object-position: center; }
.home-hero__shade { background: linear-gradient(90deg, rgba(12,15,17,.95) 0%, rgba(12,15,17,.82) 34%, rgba(12,15,17,.28) 61%, rgba(12,15,17,.08) 100%); }
.home-hero__inner { position: relative; z-index: 1; width: min(var(--ek-container), calc(100% - 48px)); margin: 0 auto; padding: 96px 0 74px; color: var(--ek-text); }
.home-hero__eyebrow { display: inline-flex; margin: 0 0 22px; padding: 8px 12px; border: 1px solid rgba(217,72,15,.75); border-radius: 4px; color: #ffb18b; font-size: .78rem; font-weight: 700; letter-spacing: .16em; }
.home-hero h1 { max-width: 720px; margin: 0; font-size: clamp(2.55rem, 5vw, 5rem); line-height: .98; letter-spacing: -.04em; text-wrap: balance; color: var(--ek-text); }
.home-hero__lead { max-width: 640px; margin: 26px 0 0; color: #d7dcdf; font-size: clamp(1rem, 1.5vw, 1.16rem); line-height: 1.7; }
.home-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 23px; border: 1px solid transparent; border-radius: 7px; font-weight: 800; text-decoration: none; transition: background .2s ease, border-color .2s ease, transform .2s ease; }
.button:hover { transform: translateY(-2px); }
.button--primary { background: var(--ek-orange); color: white; }
.button--primary:hover { background: var(--ek-orange-hover); }
.button--secondary { border-color: rgba(255,255,255,.42); background: rgba(16,19,21,.35); color: white; backdrop-filter: blur(5px); }
.button--secondary:hover { border-color: white; background: rgba(255,255,255,.08); }
.home-hero__price { margin: 18px 0 0; color: var(--ek-muted); font-size: .95rem; }
.home-hero__price strong { color: white; }

.trust-strip { position: relative; z-index: 2; background: var(--ek-bg); border-top: 1px solid var(--ek-line); border-bottom: 1px solid var(--ek-line); }
.trust-strip__inner { width: min(var(--ek-container), calc(100% - 48px)); margin: 0 auto; display: grid; grid-template-columns: repeat(4,1fr); }
.trust-item { display: flex; align-items: center; gap: 16px; min-height: 116px; padding: 22px 30px; border-right: 1px solid var(--ek-line); }
.trust-item:first-child { border-left: 1px solid var(--ek-line); }
.trust-item img { flex: 0 0 48px; }
.trust-item strong, .trust-item span { display: block; }
.trust-item strong { color: var(--ek-text); font-size: .98rem; }
.trust-item span { margin-top: 5px; color: var(--ek-muted); font-size: .81rem; line-height: 1.45; }

@media (max-width: 900px) {
  .trust-strip__inner { grid-template-columns: 1fr; }
  .trust-item, .trust-item:first-child { border-left: 0; border-right: 0; border-bottom: 1px solid var(--ek-line); }
  .trust-item:last-child { border-bottom: 0; }
}

@media (max-width: 700px) {
  .home-hero { min-height: 760px; align-items: start; }
  .home-hero__picture img { object-position: center bottom; }
  .home-hero__shade { background: linear-gradient(180deg, rgba(12,15,17,.96) 0%, rgba(12,15,17,.84) 37%, rgba(12,15,17,.18) 68%, rgba(12,15,17,.35) 100%); }
  .home-hero__inner { width: calc(100% - 32px); padding: 78px 0 28px; }
  .home-hero h1 { font-size: clamp(2rem, 9vw, 2.9rem); }
  .home-hero__lead { max-width: 100%; margin-top: 19px; font-size: .96rem; line-height: 1.58; }
  .home-hero__actions { margin-top: 23px; }
  .button { width: 100%; }
  .trust-strip__inner { width: 100%; }
  .trust-item { min-height: 102px; padding: 20px 18px; }
}

@media (prefers-reduced-motion: reduce) {
  .button { transition: none; }
}

/* ================================
   PHASE 2 — Business-use selector + filterable catalog
   ================================ */
.ek-phase2{--ek-bg:#0b0e10;--ek-panel:#14181b;--ek-line:#2c3338;background:var(--ek-bg);color:var(--ek-text);padding:72px 20px;font-family:Arial,sans-serif}.ek-phase2 *{box-sizing:border-box}.ek-container{width:min(1180px,100%);margin:auto}.ek-kicker{color:#ff7a45;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800}.ek-phase2 h2{font-size:clamp(30px,4.2vw,52px);line-height:1.04;margin:12px 0 14px;color:var(--ek-text)}.ek-lead{color:var(--ek-muted);max-width:720px;font-size:18px;line-height:1.55;margin:0 0 32px}
.ek-use-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:58px}.ek-use-card{display:block;position:relative;min-height:310px;border:1px solid var(--ek-line);border-radius:var(--ek-radius);overflow:hidden;background:#171b1e;color:white;text-align:left;cursor:pointer;padding:0;text-decoration:none!important}.ek-use-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .35s}.ek-use-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 22%,rgba(6,8,9,.92) 100%)}.ek-use-card:hover img,.ek-use-card:focus-visible img{transform:scale(1.035)}.ek-use-card:focus-visible{outline:3px solid var(--ek-yellow);outline-offset:3px}.ek-use-card__body{position:absolute;z-index:1;left:20px;right:20px;bottom:20px}.ek-use-card h3{margin:0 0 7px;font-size:21px;color:#fff}.ek-use-card p{margin:0;color:#dbe0e3;font-size:14px;line-height:1.45}.ek-use-card[aria-pressed="true"]{border-color:var(--ek-orange);box-shadow:0 0 0 2px var(--ek-orange)}
.ek-new-article-tab{display:inline-flex;align-items:center;gap:10px;background:#171b1e;border:1px solid var(--ek-orange);border-radius:999px;padding:7px 18px 7px 7px;margin-bottom:18px;text-decoration:none!important;transition:border-color .15s,transform .15s}.ek-new-article-tab:hover{transform:translateY(-2px);border-color:var(--ek-yellow)}.ek-new-article-tag{background:var(--ek-orange);color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:5px 12px;border-radius:999px;white-space:nowrap}.ek-new-article-title{color:#fff;font-weight:700;font-size:14.5px}.ek-new-article-arrow{color:var(--ek-orange);font-weight:700}
@media(max-width:640px){.ek-new-article-tab{padding:6px 14px 6px 6px;gap:8px}.ek-new-article-title{font-size:12.5px}}
.ek-catalog-head{margin-bottom:20px}.ek-catalog-head h2{margin-bottom:0}.ek-reset{border:0;background:none;color:#ff7a45;text-decoration:underline;cursor:pointer;font-weight:700;padding:10px;position:absolute;top:10px;right:16px}.ek-reset[hidden]{display:none}.ek-filterbar{position:sticky;top:104px;z-index:20;background:rgba(11,14,16,.94);backdrop-filter:blur(10px);border:1px solid var(--ek-line);border-radius:var(--ek-radius);padding:16px 150px 16px 16px;margin-bottom:24px}.ek-filter-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ek-filter-group+.ek-filter-group{margin-top:12px}.ek-filter-label{font-size:13px;font-weight:800;color:#d6dadd;min-width:92px}.ek-chip{appearance:none;border:1px solid #485158;border-radius:999px;background:#171b1e;color:white;padding:10px 16px;font-weight:750;cursor:pointer}.ek-chip:hover{border-color:#ff7a45}.ek-chip[aria-pressed="true"]{background:var(--ek-orange);border-color:var(--ek-orange)}.ek-chip:focus-visible{outline:3px solid var(--ek-yellow);outline-offset:2px}
.ek-swipe-hint{display:none}
.ek-results-line{display:flex;justify-content:space-between;align-items:center;color:var(--ek-muted);font-size:14px;margin:0 0 16px}.ek-products{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.ek-product{background:var(--ek-panel);border:1px solid var(--ek-line);border-radius:var(--ek-radius);overflow:hidden;display:flex;flex-direction:column}.ek-product[hidden]{display:none}.ek-product__media{aspect-ratio:4/3;background:#e8e8e6;overflow:hidden;position:relative}.ek-product__media img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.ek-product:hover img{transform:scale(1.025)}.ek-product__length{position:absolute;left:14px;top:14px;background:#0b0e10;color:#fff;border:1px solid #41494e;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800}.ek-product__body{padding:20px;display:flex;flex-direction:column;flex:1}.ek-product h3{font-size:22px;margin:0 0 8px;color:#fff}.ek-product__price{font-size:20px;font-weight:850;color:white;margin:0 0 17px}.ek-product__price small{color:var(--ek-muted);font-size:13px;font-weight:600}.ek-specs{display:flex;gap:16px;flex-wrap:wrap;color:#d0d5d8;font-size:14px;border-top:1px solid var(--ek-line);padding-top:14px;margin-top:auto}.ek-product__cta{display:block;text-align:center;margin-top:18px;background:var(--ek-orange);color:#fff!important;text-decoration:none;border-radius:8px;padding:13px 16px;font-weight:800}.ek-product__cta:hover{background:var(--ek-orange-hover)}.ek-product__cta:focus-visible{outline:3px solid var(--ek-yellow);outline-offset:2px}.ek-empty{display:none;padding:36px;border:1px dashed #555;border-radius:12px;text-align:center;color:var(--ek-muted)}.ek-empty.is-visible{display:block}
.ek-section-gap{margin-top:64px;padding-top:56px;border-top:1px solid var(--ek-line)}
@media(max-width:980px){.ek-use-grid{grid-template-columns:repeat(2,1fr)}.ek-products{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.ek-filterbar{position:static}}
@media(max-width:640px){.ek-phase2{padding:50px 16px}.ek-use-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-16px;padding-right:32px}.ek-use-card{min-width:87%;min-height:280px;scroll-snap-align:start}.ek-swipe-hint{display:block;margin:10px 0 20px;color:var(--ek-muted);font-size:13px;text-align:center}.ek-products{grid-template-columns:1fr}.ek-filter-label{width:100%;min-width:0}.ek-catalog-head{align-items:start;margin-bottom:10px}#catalog-models+.ek-lead{margin-bottom:18px}.ek-filterbar{padding:16px}.ek-reset{position:static;display:block;width:100%;text-align:center;margin-top:14px;padding:10px}.ek-product h3{font-size:20px}}

/* ================================
   PHASE 3 — Product detail pages
   ================================ */
.ek-product-page{--ek-bg:#0b0e10;--ek-panel:#15191c;--ek-line:#31383d;background:var(--ek-bg);color:var(--ek-text);font-family:Arial,sans-serif}.ek-product-page *{box-sizing:border-box}.ek-product-container{width:min(1180px,calc(100% - 32px));margin:auto}.ek-breadcrumb{padding:22px 0;color:var(--ek-muted);font-size:13px}.ek-breadcrumb a{color:inherit}.ek-product-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:42px;padding:12px 0 56px}.ek-gallery{min-width:0;position:sticky;top:104px;align-self:start}.ek-main-image{aspect-ratio:4/3;background:#f1f1ef;border-radius:var(--ek-radius);overflow:hidden;border:1px solid var(--ek-line)}.ek-main-image img{width:100%;height:100%;object-fit:contain;display:block}.ek-thumbs{display:flex;gap:10px;margin-top:10px}.ek-thumb{flex:1 1 0;min-width:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:#eee;padding:0;cursor:pointer;aspect-ratio:4/3}.ek-thumb img{width:100%;height:100%;object-fit:cover}.ek-thumb[aria-current="true"]{border-color:var(--ek-orange)}
.ek-product-summary h1{font-size:clamp(34px,4.2vw,58px);line-height:1.02;margin:13px 0 18px;color:var(--ek-text);text-transform:none}.ek-product-summary__intro{color:#d1d6d9;line-height:1.65;font-size:17px;margin:0 0 22px}.ek-price{font-size:38px;font-weight:900;margin:0 0 6px;color:var(--ek-text)}.ek-price-note{font-size:13px;color:var(--ek-muted);margin:0 0 22px}.ek-mini-trust{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.ek-mini-trust span:last-child:nth-child(odd){grid-column:1/-1}.ek-mini-trust span{border:1px solid var(--ek-line);background:var(--ek-panel);padding:12px;border-radius:8px;font-size:13px;font-weight:750;color:var(--ek-text)}.ek-product-page .ek-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ek-product-page .ek-btn{display:flex;justify-content:center;align-items:center;text-align:center;min-height:50px;border-radius:8px;text-decoration:none!important;font-weight:850;padding:12px 16px}.ek-btn--primary{background:var(--ek-orange);color:#fff!important}.ek-btn--secondary{border:1px solid #5c656b;color:#fff!important}.ek-spec-card{background:var(--ek-panel);border:1px solid var(--ek-line);border-radius:var(--ek-radius);margin-top:24px;overflow:hidden}.ek-spec-row{display:flex;justify-content:space-between;gap:18px;padding:13px 16px;border-bottom:1px solid var(--ek-line);font-size:14px}.ek-spec-row:last-child{border:0}.ek-spec-row span{color:var(--ek-muted)}.ek-spec-row strong{text-align:right;color:var(--ek-text)}
.ek-anchor-nav{position:sticky;top:104px;z-index:15;background:rgba(20,24,27,.95);backdrop-filter:blur(8px);border-block:1px solid var(--ek-line)}.ek-anchor-nav__inner{display:flex;gap:8px;overflow-x:auto;padding:10px 0}.ek-anchor-nav a{white-space:nowrap;color:#e9edef;text-decoration:none;border:1px solid #434b50;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:750}
.ek-product-page .ek-section{padding:68px 0;border-bottom:1px solid #22292d;scroll-margin-top:180px}.ek-product-page .ek-section h2{font-size:clamp(29px,3.6vw,46px);margin:9px 0 18px;color:var(--ek-text);text-transform:none}.ek-section-lead{color:var(--ek-muted);font-size:17px;line-height:1.6;max-width:760px}.ek-doc-grid,.ek-benefit-grid,.ek-process-grid{display:grid;gap:16px;margin-top:30px}.ek-doc-grid{grid-template-columns:repeat(3,1fr)}.ek-benefit-grid{grid-template-columns:repeat(4,1fr)}.ek-process-grid{grid-template-columns:repeat(4,1fr)}.ek-info-card{background:var(--ek-panel);border:1px solid var(--ek-line);border-radius:var(--ek-radius);padding:22px}.ek-info-card__icon{color:#ff5a1d;font-size:26px}.ek-info-card h3{font-size:18px;margin:14px 0 8px;color:var(--ek-text)}.ek-info-card p{color:var(--ek-muted);font-size:14px;line-height:1.55;margin:0}.ek-process-number{color:#ff6b32;font-weight:900;letter-spacing:.12em;display:block}
.ek-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.ek-related-card{display:block;background:var(--ek-panel);border:1px solid var(--ek-line);border-radius:var(--ek-radius);overflow:hidden;text-decoration:none!important}.ek-related-card__image{aspect-ratio:4/3;overflow:hidden;background:#f3f3f1}.ek-related-card__image img{width:100%;height:100%;object-fit:contain;display:block}.ek-related-card__body{padding:18px}.ek-related-card__length{display:inline-block;font-size:12px;font-weight:800;color:var(--ek-muted);border:1px solid var(--ek-line);border-radius:999px;padding:4px 10px;margin-bottom:10px}.ek-related-card h3{font-size:18px;margin:0 0 8px;color:var(--ek-text)}.ek-related-card p{color:var(--ek-muted);font-size:14px;margin:0 0 12px}.ek-related-card p strong{color:var(--ek-text);font-size:16px}.ek-related-card__cta{color:#ff7a45;font-weight:700;font-size:13.5px}.ek-related-card:hover{border-color:var(--ek-orange)}
.ek-clarity{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.ek-clarity>div{border-radius:12px;padding:24px;background:var(--ek-panel);border:1px solid var(--ek-line)}.ek-clarity h3{margin:0 0 12px;color:var(--ek-text);text-transform:none;font-size:18px}.ek-clarity ul{margin:0;padding-left:20px;color:#ccd2d5;line-height:1.8}.ek-clarity-note{margin-top:18px;padding:16px;border-left:4px solid var(--ek-orange);background:#171b1e;color:#dce0e2;line-height:1.55;border-radius:4px}
@media(max-width:900px){.ek-clarity{grid-template-columns:1fr}}
.ek-final-cta{padding:54px 24px;border-radius:16px;background:linear-gradient(135deg,#1c2124,#101315);border:1px solid #3a4247;text-align:center}.ek-final-cta h2{margin:0 auto 12px;max-width:780px;color:var(--ek-text)}.ek-final-cta p{color:var(--ek-muted);max-width:720px;margin:0 auto 24px}.ek-final-cta .ek-actions{max-width:520px;margin:auto}.ek-mobile-actions{display:none}
@media(max-width:1140px){.ek-anchor-nav{top:78px}}
@media(max-width:900px){.ek-product-hero{grid-template-columns:1fr}.ek-gallery{position:static}.ek-doc-grid{grid-template-columns:1fr}.ek-benefit-grid,.ek-process-grid,.ek-related-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.ek-product-container{width:calc(100% - 32px)}.ek-breadcrumb{padding:16px 0}.ek-product-hero{gap:24px;padding-bottom:38px}.ek-main-image{border-radius:8px}.ek-product-summary h1{font-size:34px}.ek-price{font-size:32px}.ek-mini-trust{grid-template-columns:1fr}.ek-product-page .ek-actions{grid-template-columns:1fr}.ek-spec-row{align-items:flex-start}.ek-benefit-grid,.ek-process-grid,.ek-related-grid{grid-template-columns:1fr}.ek-product-page .ek-section{padding:50px 0;scroll-margin-top:140px}.ek-anchor-nav{top:70px}.ek-mobile-actions{position:fixed;left:0;right:0;bottom:0;z-index:150;display:grid;grid-template-columns:1fr 1fr;background:#111518;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border-top:1px solid #394147;gap:8px}.ek-mobile-actions a{min-height:46px}.ek-product-page{padding-bottom:78px}.ek-product-summary>.ek-actions{display:none}.ek-thumbs{overflow-x:auto;padding-bottom:4px}.ek-thumb{flex:0 0 78px;min-width:78px}}

/* ================================
   PHASE 4 — Articles, lead form, footer
   ================================ */
.ek4-wrap{--ek4-bg:#0b0e10;--ek4-panel:#15191c;--ek4-line:#31383d;background:var(--ek4-bg);color:var(--ek-text);font-family:Arial,sans-serif}.ek4-wrap *{box-sizing:border-box}.ek4-container{width:min(1180px,calc(100% - 32px));margin:auto}.ek4-section{padding:72px 0;border-top:1px solid #242a2e}.ek4-kicker{color:#ff6a30;text-transform:uppercase;letter-spacing:.15em;font-weight:850;font-size:12px}.ek4-title{font-size:clamp(31px,4vw,50px);line-height:1.04;margin:12px 0 14px;text-transform:none;color:var(--ek-text)}.ek4-lead{max-width:760px;color:var(--ek-muted);font-size:17px;line-height:1.6;margin:0 0 30px}
.ek4-article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ek4-article{background:var(--ek4-panel);border:1px solid var(--ek4-line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.ek4-article__media{aspect-ratio:16/9;overflow:hidden;background:#202529}.ek4-article img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.ek4-article:hover img{transform:scale(1.025)}.ek4-article__body{padding:20px;display:flex;flex-direction:column;flex:1}.ek4-article h3{font-size:21px;line-height:1.25;margin:10px 0;text-transform:none;color:var(--ek-text)}.ek4-article p{color:var(--ek-muted);line-height:1.55;font-size:14px;margin:0 0 18px}.ek4-article a{color:#ff6a30;font-weight:800;text-decoration:none;margin-top:auto}.ek4-all-guides{display:inline-flex;margin-top:24px;color:white;text-decoration:none;border:1px solid #535d63;border-radius:8px;padding:13px 18px;font-weight:800}
.ek4-contact{display:grid;grid-template-columns:.72fr 1.28fr;gap:32px;align-items:start}.ek4-contact-card{border:1px solid var(--ek4-line);border-radius:12px;background:var(--ek4-panel);padding:24px}.ek4-contact-card .ek4-title{font-size:28px}.ek4-contact-list{display:grid;gap:13px;margin-top:26px}.ek4-contact-list a,.ek4-contact-list span{display:block;color:#e7eaec;text-decoration:none}.ek4-contact-list small{display:block;color:var(--ek-muted);margin-bottom:4px}.ek4-callbox{background:var(--ek4-panel);border:1px solid var(--ek4-line);border-radius:12px;padding:28px;display:flex;flex-direction:column;justify-content:center;min-height:100%}.ek4-callbox h3{margin:0 0 14px;font-size:24px;line-height:1.22;color:var(--ek-text)}.ek4-callbox p{margin:0 0 24px;color:var(--ek-muted);font-size:15.5px;line-height:1.68}.ek4-callbtn{display:inline-flex;justify-content:center;align-items:center;width:100%;border:0;border-radius:8px;background:var(--ek-orange);color:#fff!important;padding:17px 18px;font-weight:900;font-size:17px;text-decoration:none!important;transition:background .15s}.ek4-callbtn:hover{background:var(--ek-orange-hover)}.ek4-callbox-meta{display:flex;flex-direction:column;gap:5px;margin-top:18px;color:var(--ek-muted);font-size:14px}
.hazard:has(+ .ek4-footer){display:none}
#shared-sections>.hazard:last-child{display:none}
.ek4-footer{background-color:#15191c;background-image:repeating-linear-gradient(135deg,var(--ek-yellow) 0 18px,#111 18px 36px);background-position:top;background-repeat:repeat-x;background-size:auto 10px;padding:60px 0 60px;color:white}.ek4-footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:30px}.ek4-footer h3{font-size:14px;text-transform:uppercase;letter-spacing:.12em;color:#ff7140;margin:0 0 16px}.ek4-footer p,.ek4-footer a{color:#bac2c7;font-size:14px;line-height:1.7}.ek4-footer a{display:block;text-decoration:none;margin:5px 0}.ek4-footer a:hover{color:white}.ek4-brand{font-size:25px;font-weight:900;margin-bottom:12px}.ek4-brand i{font-style:normal;color:var(--ek-orange)}.ek4-footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #333a3f;margin-top:34px;padding-top:20px;color:#929ca2;font-size:13px}
.ek4-footer .ek4-footer-bottom span:last-child{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.ek4-footer .ek4-footer-bottom span:last-child a{display:inline}
.ek4-wrap a:focus-visible,.ek4-wrap button:focus-visible,.ek4-footer a:focus-visible{outline:3px solid var(--ek-yellow);outline-offset:4px}
@media(max-width:900px){.ek4-article-grid{grid-template-columns:1fr 1fr}.ek4-contact{grid-template-columns:1fr}.ek4-footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.ek4-section{padding:52px 0}.ek4-article-grid{grid-template-columns:1fr}.ek4-callbox,.ek4-contact-card{padding:19px}.ek4-footer-grid{grid-template-columns:1fr}.ek4-footer-bottom{flex-direction:column}.ek4-footer{padding-bottom:calc(100px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.ek4-wrap *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* ================================
   PHASE 4 FIX — tighten the gap between the condensed
   ανοξείδωτα preview and the guides section that follows it.
   Scoped to these two specific elements only — does not touch
   .section or .ek4-section spacing anywhere else on the site.
   ================================ */
#anoxeidotes{padding-bottom:2px}
#guides-section{padding-top:60px}
#anoxeidotes .btn-ghost{color:var(--ink);border-color:rgba(27,30,33,.35)}
#anoxeidotes .btn-ghost:hover{border-color:var(--orange);background:rgba(217,72,15,.06)}
@media(max-width:640px){
  #anoxeidotes{padding-bottom:0}
  #guides-section{padding-top:45px}
  #anoxeidotes .btn-ghost{margin-top:2px!important}
}

/* Trust badges for show-room-trailer.html (older, light-theme template —
   scoped separately from .ek-mini-trust which relies on .ek-product-page's
   dark-theme variables that this page doesn't have). */
.showroom-trust{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 18px}
.showroom-trust span{border:1px solid var(--paper-2);background:var(--white);padding:10px 12px;border-radius:8px;font-size:12.5px;font-weight:700;color:var(--asphalt)}
.showroom-trust span:last-child:nth-child(odd){grid-column:1/-1}
@media(max-width:640px){.showroom-trust{grid-template-columns:1fr}.showroom-trust span:last-child:nth-child(odd){grid-column:auto}}

/* Phase 6 — crawlable links to the 3 new category landing pages,
   placed directly below the homepage's .ek-use-grid filter cards. */
.ek6-home-guide-links{display:flex;flex-wrap:wrap;gap:12px;margin:13px 0 36px}
.ek6-home-guide-links a{color:var(--orange);font-size:14px;text-decoration:underline;text-underline-offset:3px;font-weight:600}
.ek6-home-guide-links a:hover{color:var(--orange-dark)}
@media(max-width:640px){.ek6-home-guide-links{gap:9px;flex-direction:column}}

/* ==================== PHASE 9 ==================== */
/*
 * E-KANTINA PHASE 9
 * Append to the END of the existing /style.css.
 * Do not add another render-blocking stylesheet.
 */

:root {
  --phase9-orange-on-light: #ba3606;
  --phase9-orange-on-dark: #ff6b35;
  --phase9-orange-button: #ba3606;
}

/*
 * The existing consent JavaScript keeps controlling the .show class.
 * Keeping the banner in the render tree prevents display:none/block shifts.
 */
.cookie-banner {
  display: block;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(0, 100%, 0);
  transition:
    transform 180ms ease,
    opacity 180ms ease,
    visibility 0s linear 180ms;
  will-change: transform, opacity;
  contain: layout paint;
}

.cookie-banner.show {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transform: translate3d(0, 0, 0);
  transition:
    transform 180ms ease,
    opacity 180ms ease,
    visibility 0s linear 0s;
}

@media (max-width: 700px) {
  .cookie-banner {
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
  }

  .cookie-banner .cookie-banner-inner p {
    margin-bottom: 10px;
    font-size: 13px;
    line-height: 1.4;
  }

  .cookie-banner .cookie-banner-actions {
    gap: 8px;
  }

  .cookie-banner :is(.cookie-accept, .cookie-reject) {
    min-height: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cookie-banner,
  .cookie-banner.show {
    transition: none;
  }
}

/*
 * Existing homepage selectors: .section is light; .section.band is dark.
 * Keep the original --orange brand token for decorative elements.
 */
.section:not(.band) :is(.tag, .num, .plus) {
  color: var(--phase9-orange-on-light);
}

.section.band :is(.tag, .num, .plus) {
  color: var(--phase9-orange-on-dark);
}

/*
 * White text on the old #d9480f button falls below the 4.5:1 target.
 * Limit the change to existing action controls.
 */
.nav-cta,
.button--primary,
.ek-product__cta,
.ek4-callbtn,
.cookie-accept,
.ek-chip.is-active,
.ek-chip[aria-pressed="true"] {
  background-color: var(--phase9-orange-button);
  color: #fff;
}

/* Keyboard focus must remain visible on both dark and light sections. */
:is(a, button, input, select, textarea, summary):focus-visible {
  outline: 2px solid var(--phase9-orange-on-dark);
  outline-offset: 3px;
}

.section:not(.band)
  :is(a, button, input, select, textarea, summary):focus-visible {
  outline-color: var(--phase9-orange-on-light);
}

/* Phase 9 follow-up: Viber contrast + underlined links */
.viber-float,
.mobile-cta-bar a.viber {
  background-color: #6c55e8;
}

.ek4-footer-bottom a {
  text-decoration: underline;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
}

/* Phase 11: scoped homepage price-link style (full CSS lives in kantines-times.html only) */
.ek11-home-price-link {
  margin: 13px 0 0;
}

.ek11-home-price-link a {
  color: #ff7a45;
  font-weight: 650;
  text-underline-offset: 3px;
}

/* Phase 12: related-links paragraph on product pages (prices + category cross-links) */
.ek-related-links {
  color: var(--paper-2);
  font-size: 14.5px;
  margin: 6px 0 22px;
}
.ek-related-links a {
  color: var(--orange);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.ek-related-links a:hover {
  color: var(--orange-dark);
}

/* Ποιότητα Κατασκευής section CTA button */
.section-cta {
  margin: 32px 0 0;
  text-align: center;
}

/* Phase 14: product-page construction quick-feature strip + section helpers */
.ek-product-page .ek-section.ek-section--tight {
  padding-bottom: 8px;
  padding-top: 8px;
}

.ek-quickfeature-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, 1fr);
}

.ek-quickfeature {
  background: var(--asphalt);
  border-radius: 8px;
  padding: 18px;
}

.ek-quickfeature h3 {
  color: var(--paper);
  font-size: 15px;
  margin: 0 0 6px;
}

.ek-quickfeature p {
  color: var(--paper-2);
  font-size: 13.5px;
  line-height: 1.5;
  margin: 0;
}

.ek-subsection-title {
  color: var(--paper);
  font-size: 18px;
  margin: 36px 0 16px;
}

.ek-benefits-more-link {
  margin: 24px 0 0;
}

.ek-benefits-more-link a {
  color: var(--orange);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}

@media (max-width: 950px) {
  .ek-quickfeature-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .ek-quickfeature-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Phase 14: real construction SVG icons — visibility fix with contrasting wrap box */
.construction-icon-wrap {
  align-items: center;
  background: rgba(244, 122, 32, 0.10);
  border: 1px solid rgba(244, 122, 32, 0.35);
  border-radius: 14px;
  display: grid;
  height: 52px;
  justify-items: center;
  margin-bottom: 16px;
  place-items: center;
  width: 52px;
}
.construction-icon {
  display: block;
  height: 40px;
  width: 40px;
}

/* Phase 14 fix: quality cards grid — 3 columns desktop (not 4), matching spec */
.ek-quality-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 30px;
}
@media (max-width: 900px) {
  .ek-quality-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 640px) {
  .ek-quality-grid {
    grid-template-columns: 1fr;
  }
}

/* Article text-copy deterrent (blog articles only, scoped to article body) */
.ek7-article, .blog-article {
  -webkit-user-select: none;
  user-select: none;
}

/* "Από" prefix, smaller than the price, on individual product pages */
.ek-price small {
  display: inline;
  color: var(--ek-muted);
  font-size: 16px;
  font-weight: 600;
}

/* Upgrade-availability callouts on product pages (weight, width) */
.ek-upgrade-box {
  align-items: flex-start;
  border: 1px solid rgba(244, 122, 32, 0.45);
  border-left: 4px solid var(--orange);
  border-radius: 10px;
  display: flex;
  gap: 14px;
  margin: 0 0 16px;
  padding: 16px 20px;
}
.ek-upgrade-box .construction-icon-wrap {
  flex-shrink: 0;
  margin-bottom: 0;
}
.ek-upgrade-box__text strong {
  color: var(--orange);
  display: block;
  font-size: 15px;
  margin-bottom: 4px;
}
.ek-upgrade-box__text p {
  color: var(--ek-muted);
  font-size: 14px;
  line-height: 1.5;
  margin: 0;
}

/* Indicative-photos disclaimer under the product gallery */
.ek-gallery-note {
  color: var(--ek-muted);
  font-size: 12.5px;
  margin: 10px 0 0;
  text-align: center;
}
