
  :root{
    --steel-black:#1E2328;
    --steel-black-2:#262C32;
    --rust:#C1502E;
    --rust-dark:#9B3E22;
    --caution:#E8A83C;
    --steel-gray:#4A5259;
    --paper:#EDEAE3;
    --paper-dim:#DAD5C9;
    --font-display:'Oswald',sans-serif;
    --font-body:'Inter',sans-serif;
    --font-mono:'Space Mono',monospace;
  }
  *{scroll-behavior:smooth;}
  body{
    font-family:var(--font-body);
    background:var(--paper);
    color:var(--steel-black);
    overflow-x:hidden;
  }
  h1,h2,h3,h4,.display-font{
    font-family:var(--font-display);
    text-transform:uppercase;
    letter-spacing:.02em;
  }
  .mono{font-family:var(--font-mono);}

  a{color:inherit;}
  a.btn-rust, .btn-rust{
    background:var(--rust);
    color:#fff;
    border:none;
    font-family:var(--font-display);
    text-transform:uppercase;
    letter-spacing:.05em;
    padding:.9rem 1.8rem;
    border-radius:2px;
    transition:.2s;
    box-shadow:4px 4px 0 var(--steel-black);
  }
  a.btn-rust:hover, .btn-rust:hover{
    background:var(--rust-dark);
    color:#fff;
    transform:translate(2px,2px);
    box-shadow:2px 2px 0 var(--steel-black);
  }
  .btn-outline-steel{
    border:2px solid var(--steel-black);
    color:var(--steel-black);
    font-family:var(--font-display);
    text-transform:uppercase;
    letter-spacing:.05em;
    padding:.85rem 1.8rem;
    border-radius:2px;
    background:transparent;
  }
  .btn-outline-steel:hover{background:var(--steel-black); color:var(--paper);}

  /* NAVBAR */
  .navbar{
    background:var(--steel-black);
    padding:.9rem 0;
    border-bottom:1px solid rgba(237,234,227,.08);
  }
  .navbar .navbar-brand{
    font-family:var(--font-display);
    color:var(--paper) !important;
    font-size:1.5rem;
    letter-spacing:.03em;
  }
  .navbar-brand .accent{color:var(--rust);}
  .navbar-nav .nav-link{
    color:var(--paper-dim) !important;
    font-family:var(--font-display);
    text-transform:uppercase;
    font-size:.9rem;
    letter-spacing:.04em;
    padding:.5rem 1rem !important;
    position:relative;
  }
  .navbar-nav .nav-link:hover{color:var(--caution) !important;}
  .navbar-nav .nav-link.active{color:#fff !important;}
  @media (min-width:992px){
    .navbar-nav .nav-link::after{
      content:"";
      position:absolute;
      left:1rem; right:1rem; bottom:.1rem;
      height:2px; background:var(--rust);
      transform:scaleX(0); transform-origin:left;
      transition:transform .25s ease;
    }
    .navbar-nav .nav-link:hover::after,
    .navbar-nav .nav-link.active::after{transform:scaleX(1);}
  }
  .nav-phone{
    background:var(--rust);
    color:#fff !important;
    border-radius:2px;
    padding:.5rem 1.1rem !important;
  }
  .nav-phone:hover{color:#fff !important; background:var(--rust-dark);}

  /* Custom hamburger — visible on dark navbar */
  .navbar-toggler{
    border:1.5px solid rgba(237,234,227,.35);
    border-radius:2px;
    padding:.5rem .65rem;
    width:2.7rem; height:2.4rem;
    position:relative;
    background:transparent;
  }
  .navbar-toggler:focus{box-shadow:0 0 0 3px rgba(232,168,60,.4);}
  .navbar-toggler-icon{
    background-image:none !important;
    position:relative;
    display:block;
    width:1.4rem; height:2px;
    background:var(--paper);
    margin:0 auto;
    transition:.2s;
  }
  .navbar-toggler-icon::before,
  .navbar-toggler-icon::after{
    content:"";
    position:absolute; left:0;
    width:1.4rem; height:2px;
    background:var(--paper);
    transition:.25s;
  }
  .navbar-toggler-icon::before{top:-6px;}
  .navbar-toggler-icon::after{top:6px;}
  .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon{background:transparent;}
  .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::before{
    top:0; transform:rotate(45deg); background:var(--rust);
  }
  .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::after{
    top:0; transform:rotate(-45deg); background:var(--rust);
  }

  /* Mobile dropdown panel */
  @media (max-width:991.98px){
    #mainNav{
      background:var(--steel-black-2);
      margin-top:.9rem;
      border-radius:6px;
      border:1px solid rgba(237,234,227,.1);
      box-shadow:0 18px 40px rgba(0,0,0,.35);
      overflow:hidden;
    }
    .navbar-nav{padding:.5rem;}
    .navbar-nav .nav-link{
      font-size:1.05rem;
      padding:.9rem 1rem !important;
      border-bottom:1px solid rgba(237,234,227,.08);
      display:flex; align-items:center; justify-content:space-between;
    }
    .navbar-nav .nav-link::after{
      content:"\f105";
      font-family:"Font Awesome 6 Free"; font-weight:900;
      color:var(--rust); font-size:.85rem;
    }
    .navbar-nav li:last-child .nav-link{border-bottom:none;}
    .nav-phone{
      justify-content:center;
      margin:.6rem .5rem .5rem;
      text-align:center;
      font-size:1.05rem;
      padding:1rem !important;
    }
    .nav-phone::after{content:"" !important;}
  }

  /* HERO */
  .hero{
    position:relative;
    background:var(--steel-black);
    color:var(--paper);
    padding:6.5rem 0 5rem;
    background-image:
      repeating-linear-gradient(135deg, rgba(255,255,255,.025) 0px, rgba(255,255,255,.025) 2px, transparent 2px, transparent 26px);
    overflow:hidden;
  }
  .hero::after{
    content:"";
    position:absolute; inset:0;
    background:linear-gradient(180deg, transparent 60%, var(--paper) 100%);
    pointer-events:none;
  }
  .hero-eyebrow{
    color:var(--caution);
    font-family:var(--font-mono);
    letter-spacing:.15em;
    font-size:.85rem;
  }
  .hero h1{
    font-size:clamp(2.4rem, 5.4vw, 4.2rem);
    line-height:1.05;
    margin:.6rem 0 1.2rem;
  }
  .hero h1 .accent{color:var(--rust);}
  .hero p.lead{
    color:var(--paper-dim);
    font-size:1.15rem;
    max-width:36rem;
  }
  .hero-stats{
    display:flex; gap:2.2rem; margin-top:2.4rem; flex-wrap:wrap;
  }
  .hero-stats .stat-num{
    font-family:var(--font-display); font-size:2rem; color:var(--rust);
  }
  .hero-stats .stat-label{
    font-family:var(--font-mono); font-size:.75rem; color:var(--paper-dim); text-transform:uppercase; letter-spacing:.08em;
  }

  /* PRICE TICKER — signature element */
  .ticker-wrap{
    background:var(--rust-dark);
    border-top:3px solid var(--caution);
    border-bottom:3px solid var(--caution);
    overflow:hidden;
    white-space:nowrap;
    position:relative;
  }
  .ticker-track{
    display:inline-flex;
    animation:ticker 32s linear infinite;
    padding:.7rem 0;
  }
  @media (prefers-reduced-motion: reduce){
    .ticker-track{animation:none; flex-wrap:wrap; white-space:normal;}
  }
  @keyframes ticker{
    0%{transform:translateX(0);}
    100%{transform:translateX(-50%);}
  }
  .ticker-item{
    font-family:var(--font-mono);
    color:#fff;
    padding:0 2rem;
    font-size:.9rem;
    border-right:1px solid rgba(255,255,255,.25);
  }
  .ticker-item .metal{color:var(--caution); font-weight:700;}

  /* SECTION HEADERS */
  .section-pad{padding:5.5rem 0;}
  .section-eyebrow{
    font-family:var(--font-mono);
    color:var(--rust);
    letter-spacing:.15em;
    font-size:.8rem;
    text-transform:uppercase;
  }
  .section-title{
    font-size:clamp(1.9rem, 3.4vw, 2.7rem);
    margin-bottom:1rem;
  }
  .section-title .accent{color:var(--rust);}
  .divider-rivets{
    display:flex; align-items:center; gap:.5rem; margin:1.2rem 0 2.5rem;
  }
  .divider-rivets span{
    width:8px; height:8px; border-radius:50%; background:var(--steel-black);
  }
  .divider-rivets .line{
    flex:1; height:2px; background:var(--steel-black); border-radius:50%; width:auto;
  }

  /* MATERIALS GRID */
  .material-card{
    background:#fff;
    border:1px solid rgba(30,35,40,.1);
    border-left:4px solid var(--rust);
    padding:1.6rem 1.4rem;
    height:100%;
    transition:.2s;
  }
  .material-card:hover{
    transform:translateY(-4px);
    box-shadow:0 12px 24px rgba(30,35,40,.12);
    border-left-color:var(--caution);
  }
  .material-card i{color:var(--rust); font-size:1.6rem; margin-bottom:.7rem;}
  .material-card h3{font-size:1.1rem; margin-bottom:.4rem;}
  .material-card p{font-size:.9rem; color:var(--steel-gray); margin:0;}

  /* WHY US */
  .why-block{
    background:var(--steel-black);
    color:var(--paper);
  }
  .why-item{
    display:flex; gap:1rem; padding:1.4rem 0;
    border-bottom:1px solid rgba(237,234,227,.12);
  }
  .why-item:last-child{border-bottom:none;}
  .why-item i{color:var(--caution); font-size:1.4rem; width:2rem;}
  .why-item h3{font-size:1.05rem; margin-bottom:.25rem; color:#fff;}
  .why-item p{font-size:.9rem; color:var(--paper-dim); margin:0;}

  /* PROCESS STEPS */
  .step-card{
    position:relative;
    padding-top:.5rem;
  }
  .step-num{
    font-family:var(--font-display);
    font-size:3.4rem;
    color:var(--paper-dim);
    -webkit-text-stroke:2px var(--rust);
    color:transparent;
    line-height:1;
  }
  .step-card h3{margin-top:.5rem; font-size:1.15rem;}
  .step-card p{color:var(--steel-gray); font-size:.92rem;}

  /* AREAS */
  .area-pill{
    display:inline-block;
    border:1.5px solid var(--steel-black);
    padding:.45rem 1rem;
    margin:.25rem;
    font-family:var(--font-mono);
    font-size:.82rem;
    border-radius:2px;
  }

  /* FAQ */
  .accordion-button{
    font-family:var(--font-display);
    text-transform:uppercase;
    letter-spacing:.02em;
    background:#fff;
  }
  .accordion-button:not(.collapsed){
    background:var(--rust); color:#fff;
  }
  .accordion-button:focus{box-shadow:none;}
  .accordion-button::after{filter:none;}

  /* CONTACT */
  .contact-block{background:var(--paper-dim);}
  .info-line{display:flex; gap:1rem; align-items:flex-start; margin-bottom:1.2rem;}
  .info-line i{color:var(--rust); font-size:1.3rem; width:1.6rem; margin-top:.15rem;}
  .info-line strong{display:block; font-family:var(--font-display); text-transform:uppercase; font-size:.85rem; letter-spacing:.04em; color:var(--steel-gray);}
  .map-frame{
    border:3px solid var(--steel-black);
    width:100%; height:340px; filter:grayscale(15%);
  }

  /* FOOTER */
  footer{
    background:var(--steel-black);
    color:var(--paper-dim);
    padding:3rem 0 1.5rem;
    font-size:.9rem;
  }
  footer h4{color:#fff; font-size:1rem;}
  footer a:hover{color:var(--caution);}
  .footer-bottom{
    border-top:1px solid rgba(237,234,227,.12);
    margin-top:2rem; padding-top:1.2rem;
    font-family:var(--font-mono);
    font-size:.78rem;
    color:var(--paper-dim);
  }

  /* STICKY CALL BUTTON (mobile) */
  .sticky-call{
    position:fixed; bottom:0; left:0; right:0;
    background:var(--rust);
    color:#fff; text-align:center;
    padding:.9rem;
    font-family:var(--font-display);
    text-transform:uppercase;
    letter-spacing:.05em;
    z-index:1050;
    display:none;
  }
  @media (max-width:767px){
    .sticky-call{display:block;}
    body{padding-bottom:3.2rem;}
  }

  :focus-visible{outline:3px solid var(--caution); outline-offset:2px;}

  /* Scroll reveal */
  .reveal{
    opacity:0; transform:translateY(22px);
    transition:opacity .6s ease, transform .6s ease;
  }
  .reveal.in-view{opacity:1; transform:translateY(0);}
  .row.g-4 > div:nth-child(3n+1) .reveal.in-view{transition-delay:0s;}
  .row.g-4 > div:nth-child(3n+2) .reveal.in-view{transition-delay:.1s;}
  .row.g-4 > div:nth-child(3n+3) .reveal.in-view{transition-delay:.2s;}
  @media (prefers-reduced-motion: reduce){
    .reveal{opacity:1; transform:none; transition:none;}
  }

/* ============ MEGA DROPDOWN (Υλικά / Περιοχές) ============ */
.nav-item.dropdown .dropdown-toggle::after{
  border-top-color:var(--paper-dim);
  vertical-align:.15em;
}
.dropdown-menu{
  background:var(--steel-black-2);
  border:1px solid rgba(237,234,227,.12);
  border-radius:6px;
  box-shadow:0 18px 40px rgba(0,0,0,.35);
  padding:.9rem;
}
@media (min-width:992px){
  .dropdown-menu.mega{
    width:min(640px, 90vw);
    columns:2;
    column-gap:1rem;
  }
  .dropdown-menu.mega li{break-inside:avoid;}
}
.dropdown-menu .dropdown-item{
  color:var(--paper-dim);
  font-family:var(--font-body);
  font-size:.88rem;
  padding:.5rem .7rem;
  border-radius:4px;
}
.dropdown-menu .dropdown-item:hover,
.dropdown-menu .dropdown-item:focus{
  background:var(--rust);
  color:#fff;
}
.dropdown-menu .dropdown-header{
  color:var(--caution);
  font-family:var(--font-display);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.75rem;
}
.dropdown-menu .dropdown-divider{border-color:rgba(237,234,227,.12);}
@media (max-width:991.98px){
  .dropdown-menu{
    background:rgba(0,0,0,.18);
    box-shadow:none;
    border:none;
    margin:.2rem .5rem .6rem;
  }
  .dropdown-menu.mega{columns:1;}
}

/* ============ BREADCRUMB ============ */
.breadcrumb-bar{
  background:var(--steel-black-2);
  padding:.8rem 0;
}
.breadcrumb-bar .breadcrumb{
  margin:0;
  font-family:var(--font-mono);
  font-size:.78rem;
}
.breadcrumb-bar .breadcrumb a{color:var(--paper-dim); text-decoration:none;}
.breadcrumb-bar .breadcrumb a:hover{color:var(--caution);}
.breadcrumb-bar .breadcrumb-item.active{color:var(--rust);}
.breadcrumb-bar .breadcrumb-item + .breadcrumb-item::before{color:var(--paper-dim); content:"/";}

/* ============ INNER PAGE HERO (area/material pages) ============ */
.inner-hero{
  position:relative;
  background:var(--steel-black);
  color:var(--paper);
  padding:3.6rem 0 3.2rem;
  background-image:repeating-linear-gradient(135deg, rgba(255,255,255,.025) 0px, rgba(255,255,255,.025) 2px, transparent 2px, transparent 26px);
  overflow:hidden;
}
.inner-hero h1{
  font-size:clamp(1.9rem, 4vw, 3rem);
  line-height:1.1;
  margin:.5rem 0 1rem;
}
.inner-hero h1 .accent{color:var(--rust);}
.inner-hero p.lead{color:var(--paper-dim); font-size:1.05rem; max-width:42rem;}

/* ============ RELATED LINK CARDS (internal linking) ============ */
.link-card{
  display:block;
  background:#fff;
  border:1px solid rgba(30,35,40,.1);
  border-radius:4px;
  padding:1.1rem 1.2rem;
  text-decoration:none;
  color:var(--steel-black);
  height:100%;
  transition:.2s;
}
.link-card:hover{
  border-color:var(--rust);
  box-shadow:0 10px 20px rgba(30,35,40,.1);
  transform:translateY(-3px);
  color:var(--steel-black);
}
.link-card .lc-eyebrow{
  font-family:var(--font-mono); font-size:.7rem; color:var(--rust);
  text-transform:uppercase; letter-spacing:.1em;
}
.link-card h3{font-size:1rem; margin:.3rem 0 0;}

/* ============ AREA PILL LINKS (clickable) ============ */
.area-pill-link{
  display:inline-block;
  border:1.5px solid var(--steel-black);
  padding:.45rem 1rem;
  margin:.25rem;
  font-family:var(--font-mono);
  font-size:.82rem;
  border-radius:2px;
  text-decoration:none;
  color:var(--steel-black);
  transition:.15s;
}
.area-pill-link:hover{background:var(--rust); border-color:var(--rust); color:#fff;}

/* ============ INTRO TEXT BLOCK ============ */
.intro-copy{max-width:52rem;}
.intro-copy p{color:var(--steel-gray); line-height:1.75;}
