:root{
  --sodex-green:#28603f;
  --sodex-green-dark:#1f4b31;
  --sodex-orange:#ed6e00;
}

@font-face{
  font-family:'Neue Plak';
  src:url('../font/Neue Plak Regular.ttf') format('truetype');
  font-weight:400;
  font-style:normal;
}
@font-face{
  font-family:'Neue Plak';
  src:url('../font/Neue Plak Light.ttf') format('truetype');
  font-weight:300;
  font-style:normal;
}
@font-face{
  font-family:'Neue Plak';
  src:url('../font/Neue Plak SemiBold.ttf') format('truetype');
  font-weight:600;
  font-style:normal;
}
@font-face{
  font-family:'Neue Plak';
  src:url('../font/Neue Plak Bold.ttf') format('truetype');
  font-weight:700;
  font-style:normal;
}

html,body{height:100%;}
body{
  font-family:system-ui, -apple-system, Segoe UI, Roboto, Arial, 'Neue Plak', sans-serif;
  background:#fefefe;
  color:#111;
}

/* Navbar */
.navbar-sodex{background:var(--sodex-green);}
.navbar-sodex .nav-link{color:#fff !important; font-weight:500;}
.navbar-sodex .nav-link:hover{color:var(--sodex-orange) !important;}
.navbar-divider{width:1px; height:24px; background:#000; opacity:.6; margin:0 .75rem;}
.sodex-orange-bar{height:10px; background:var(--sodex-orange);}

/* Banners */
.banner-hero{position:relative; overflow:hidden;}
.banner-hero img.hero-bg{width:100%; height:clamp(300px, 50vw, 700px); object-fit:cover; display:block;}
.banner-hero .hero-overlay{
  position:absolute; top:0; right:0;
  width:min(520px, 40%);
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  justify-content:flex-end;
  padding:clamp(16px, 3vw, 80px);
  gap:clamp(16px, 4vw, 50px);
  text-align:right;
}
.banner-hero .hero-title{color:#fefefe; font-weight:800; font-size:clamp(24px, 2.5vw, 43px); line-height:1.1;}
.banner-hero .hero-sub{color:var(--sodex-orange); font-weight:800; font-size:clamp(18px, 2vw, 35px); line-height:1.1;}
.banner-hero .hero-icon{width:clamp(180px, 30vw, 500px); height:auto;}

@media (max-width: 768px){
  .banner-hero img.hero-bg{height:320px;}
  .banner-hero .hero-overlay{position:static; width:100%; align-items:center; text-align:center; padding:24px 16px; background:var(--sodex-green);}
  .banner-hero .hero-title{font-size:clamp(18px, 5vw, 28px);}
  .banner-hero .hero-sub{font-size:clamp(14px, 4vw, 20px);}
}

/* Section title blocks (green + orange underline) */
.section-title-wrap{margin-top:6px; width:100%;}
.section-title{background:var(--sodex-green); color:#fff; font-weight:800; font-size:clamp(20px, 4vw, 36px);
  padding:10px 12px; border-radius:0 6px 30px 0;}
.section-title .top-line{height:10px; background:var(--sodex-orange); border-radius:0 6px 0 0; margin:-10px -12px 10px -12px;}
.section-title-underline{width:90%; height:30px; background:var(--sodex-orange); border-radius:0 6px 100px 0;}

.section-title-compact .section-title{font-size:clamp(20px, 4vw, 34px); border-radius:0 100px 100px 0;}
.section-title-compact .section-title-underline{height:10px;}

/* Product pills */
.product-pill-wrap{background:var(--sodex-green); border-radius:100px; padding:20px;}
.product-pill{background:var(--sodex-orange); color:#fff; font-weight:800; border-radius:30px; padding:10px 20px; text-align:center; min-width:200px; max-width:250px; flex:1 1 220px;}
.product-pill span{font-size:clamp(14px, 2vw, 18px);}

/* Contact strip */
.contact-strip{background:var(--sodex-orange);}
.contact-strip .form-control{border-radius:30px; padding:.55rem 1rem;}
.contact-strip .btn-sodex{background:var(--sodex-green-dark); color:var(--sodex-orange); font-weight:800; border-radius:30px; padding:.55rem 1.2rem; border:none;}
.contact-strip .btn-sodex:hover{background:var(--sodex-green);}

/* Footer */
.footer-sodex{background:var(--sodex-green-dark); color:#fff;}
.footer-sodex .footer-title{color:var(--sodex-orange); font-weight:800;}
.footer-divider{width:1px; background:#000; opacity:.6;}

/* About characteristics card */
.features-card{border:2px solid var(--sodex-orange); border-radius:14px; box-shadow:0 10px 24px rgba(0,0,0,.08);}
.features-headline{
  position:absolute; top:-55px; left:12px;
  background:var(--sodex-green-dark);
  color:#fff;
  border:2px solid var(--sodex-orange);
  border-bottom:none;
  border-radius:30px 30px 0 0;
  padding:14px 18px;
  font-weight:800;
  width:min(520px, 95%);
}
.feature-box{background:var(--sodex-green); color:#fff; border:1px solid var(--sodex-orange); border-radius:10px; padding:18px; text-align:center; font-weight:800; font-size:1.15rem;}
.feature-label{color:var(--sodex-orange); font-weight:600; margin-bottom:10px;}

/* Location overlays */
.location-overlay{background:var(--sodex-green); border-radius:60px; padding:24px; max-width:800px;}
.location-overlay .tag{color:var(--sodex-orange); font-weight:800; display:inline-flex; align-items:center; gap:6px; margin-right:6px;}
.location-overlay p{color:#fff; font-size:clamp(16px, 2vw, 23px); margin:0;}

/* Utilities */
.text-sodex-green{color:var(--sodex-green) !important;}
.text-sodex-orange{color:var(--sodex-orange) !important;}
.bg-sodex-green{background:var(--sodex-green) !important;}
.bg-sodex-orange{background:var(--sodex-orange) !important;}

