*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Open Sans",Arial,sans-serif;color:#222;background:#fff;line-height:1.65}
h1,h2,h3,nav{font-family:Montserrat,Arial,sans-serif}
.topbar{height:34px;background:#f7f7f7;display:flex;align-items:center;gap:28px;padding:0 6%;font-size:12px;color:#444}
.social{margin-left:auto}
.header{height:82px;background:#fff;display:flex;align-items:center;padding:0 6%;box-shadow:0 2px 10px rgba(0,0,0,.06);position:sticky;top:0;z-index:20}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:#1f3c2b}
.logo-mark{width:46px;height:46px;border-radius:50%;border:3px solid #1d7c45;display:grid;place-items:center;font-weight:800;font-size:17px}
.logo img{height:64px;width:auto;display:block}
nav{margin-left:auto;display:flex;gap:26px}
nav a{color:#333;text-decoration:none;font-size:11px;font-weight:700}
nav a:hover{color:#1d8a4b}
.menu-btn{display:none;margin-left:auto;background:none;border:0;font-size:25px}
.hero{height:510px;position:relative;overflow:hidden}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .7s}
.hero-slide.active{opacity:1}
.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.55),rgba(0,0,0,.12))}
.hero-content{position:absolute;left:8%;top:50%;transform:translateY(-50%);color:#fff;max-width:750px}
.hero-content p{font-weight:700;letter-spacing:4px;font-size:15px}
.hero-content h1{font-size:52px;line-height:1.1;margin:8px 0 14px}
.hero-content span{font-size:15px;letter-spacing:1px}
.btn,.dark-btn{display:inline-block;margin-top:25px;padding:12px 24px;background:#1c8b4c;color:#fff;text-decoration:none;border:0;font-weight:700;font-family:Montserrat;cursor:pointer}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);border:0;background:rgba(0,0,0,.35);color:#fff;font-size:38px;width:45px;height:55px;cursor:pointer}
.hero-arrow.left{left:0}.hero-arrow.right{right:0}
.dots{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);display:flex;gap:8px}
.dot{width:10px;height:10px;border-radius:50%;background:#ddd;cursor:pointer}.dot.active{background:#1c8b4c}
.blue-strip{background:#168bc5;color:#fff;padding:25px 6%;display:flex;align-items:center;justify-content:space-between}
.blue-strip h3{font-size:17px}.blue-strip p{font-size:13px;opacity:.9}
.dark-btn{background:#17392b;margin:0}
.section{padding:75px 6%;text-align:center}
.about{max-width:1200px;margin:auto}
.eyebrow{color:#1c8b4c;font-weight:800;letter-spacing:2px;font-size:12px}
.section h2{font-size:30px;margin:7px 0 5px}
.about h3{font-size:16px;color:#555}
.lead{max-width:920px;margin:18px auto 0;color:#555}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:45px}
.feature{padding:25px;border:1px solid #e7e7e7;background:#fff}
.icon{font-size:35px}.feature h3{margin:10px 0}.feature p{font-size:14px;color:#666}
.products{background:#f5f7f3}.section-intro{color:#666;margin:8px auto 30px}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:left}
.product-card{background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.08);overflow:hidden}
.product-card img{width:100%;height:210px;object-fit:cover}.product-card div{padding:17px}.product-card h3{font-size:17px}.product-card p{font-size:13px;color:#666;margin-top:4px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:35px;text-align:left}
.service-grid div{border-top:3px solid #1c8b4c;padding:20px;background:#fafafa}
.service-grid span{color:#1c8b4c;font-weight:800}.service-grid h3{margin:12px 0 6px;font-size:17px}.service-grid p{font-size:13px;color:#666}
.gallery{background:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:30px}.gallery-grid img{width:100%;height:220px;object-fit:cover}
.contact{background:#17392b;color:#fff;padding:70px 8%;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.contact h2{font-size:34px;line-height:1.2;margin:10px 0 15px}.contact p{color:#d6e2da}
form{display:grid;gap:12px}input,textarea{width:100%;padding:13px;border:0;background:#fff;font:inherit}form .btn{margin-top:0}
footer{background:#10261c;color:#d9e3dd;padding:28px 6%;display:flex;justify-content:space-between;font-size:12px}footer h3{color:#fff;font-size:14px}
@media(max-width:900px){nav{gap:12px}.product-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:1fr}.contact{grid-template-columns:1fr}.hero-content h1{font-size:40px}}
@media(max-width:700px){.topbar{font-size:10px;gap:10px}.social{display:none}.header{height:70px}.menu-btn{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;flex-direction:column;padding:18px 6%;gap:16px}nav.open{display:flex}.hero{height:460px}.hero-content{left:7%;right:7%}.hero-content h1{font-size:32px}.blue-strip{display:block}.dark-btn{margin-top:15px}.product-grid,.service-grid,.gallery-grid{grid-template-columns:1fr}.section{padding:55px 6%}.contact{padding:55px 6%}footer{display:block}footer p{margin-top:12px}}

.about-photos{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:40px auto 0;max-width:900px}
.about-photos img{width:100%;height:220px;object-fit:cover;border-radius:8px}
.showcase{padding:70px 8%;display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;background:#f5f7f3}
.showcase-img img{width:100%;height:300px;object-fit:cover;border-radius:8px}
.showcase h2{font-size:31px;line-height:1.25;margin:8px 0 15px}
.showcase p:not(.eyebrow){color:#666}
@media(max-width:700px){.about-photos,.showcase{grid-template-columns:1fr}.about-photos img{height:190px}.showcase{padding:55px 6%}}


/* Professional contact and enquiry additions */
.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}
.address-card,.contact-card{background:#f7f8f5;border:1px solid #e5e8e3;padding:24px}
.address-card h3,.contact-card h3{font-family:Montserrat,sans-serif;font-size:12px;letter-spacing:1.5px;color:#1c8b4c;margin:0 0 12px}
.address-card p,.contact-card p{font-size:14px;line-height:1.8;color:#555;margin:0}
.contact-card a{color:#17392b;text-decoration:none}
.location-link{display:inline-block;margin-top:15px;font:700 11px Montserrat,sans-serif;letter-spacing:1px;color:#17392b;text-decoration:none}
.contact form{margin-top:28px}
.contact-wa{display:inline-block;text-align:center;margin:10px 0 0}
.form-note{font-size:11px;color:#777;margin-top:10px}
@media(max-width:700px){.contact-details{grid-template-columns:1fr}}
