*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--teal:#007B6E;--teal-dark:#005F56;--black:#111;--gray:#F2F2F2;--white:#FFF}
html{scroll-behavior:smooth}body{font-family:'DM Sans',sans-serif;color:var(--black);background:var(--white);line-height:1.6}
h1,h2,h3,h4{font-family:'Syne',sans-serif;font-weight:700}
.container{max-width:1200px;margin:0 auto;padding:0 1.25rem}
.site-header{background:var(--white);border-bottom:1px solid #eee;position:sticky;top:0;z-index:100}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;gap:1rem}
.logo{font-family:'Syne',sans-serif;font-weight:800;font-size:1.25rem;color:var(--black);text-decoration:none}
.main-nav{display:flex;gap:1.5rem}.main-nav a{color:var(--black);text-decoration:none;font-weight:500;position:relative}
.main-nav a:hover,.main-nav a.active{color:var(--teal)}.main-nav a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--teal);transition:.3s}
.main-nav a:hover::after,.main-nav a.active::after{width:100%}
.btn{display:inline-block;padding:.75rem 1.5rem;border-radius:6px;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:.3s;font-family:inherit}
.btn-primary{background:var(--teal);color:var(--white)}.btn-primary:hover{background:var(--teal-dark);transform:scale(1.02)}
.btn-outline{background:transparent;color:var(--teal);border:2px solid var(--teal)}.btn-outline:hover{background:var(--teal);color:var(--white)}
.btn-nav{background:var(--teal);color:var(--white);white-space:nowrap}.btn-nav:hover{background:var(--teal-dark)}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}
.nav-toggle span{width:24px;height:2px;background:var(--black)}
.hero{padding:4rem 0}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.hero-text h1{font-size:clamp(2rem,4vw,3rem);margin-bottom:1rem}.hero-img{border-radius:12px;width:100%;box-shadow:0 8px 30px rgba(0,123,110,.15)}
.stats-bar{background:var(--teal);color:var(--white);padding:1.25rem 0}.stats-bar .container{display:flex;justify-content:space-around;flex-wrap:wrap;gap:1rem;font-weight:700}
.section{padding:4rem 0}.section-alt{background:var(--gray)}.section h2{margin-bottom:2rem;font-size:2rem}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.feature-card,.product-card{background:var(--white);border-radius:12px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08);border-top:4px solid var(--teal)}
.feature-card img,.product-card img{width:100%;height:180px;object-fit:cover}
.product-body,.feature-card{padding:1.25rem}.price{color:var(--teal);font-weight:700;font-size:1.1rem;margin:.75rem 0}
.cat{font-size:.75rem;text-transform:uppercase;color:var(--teal);font-weight:600}.ref{font-size:.85rem;color:#666}
.tech-strip{background:var(--black);color:var(--white);padding:1rem 0;text-align:center}
.icons-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.icon-item{text-align:center;padding:1.5rem;background:var(--gray);border-radius:12px}
.lifestyle{position:relative;margin:2rem 0}.lifestyle img{width:100%;max-height:400px;object-fit:cover}
.lifestyle .overlay{position:absolute;inset:0;background:rgba(0,123,110,.75);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--white);text-align:center;padding:2rem}
.services-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.service-mini{background:var(--white);padding:1.5rem;border-radius:12px;text-align:center}
.testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}blockquote{background:var(--gray);padding:1.5rem;border-radius:12px;box-shadow:0 4px 15px rgba(0,0,0,.06)}
.cta-section{text-align:center;background:var(--gray);padding:4rem 0}
.filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:2rem}.filter-btn{padding:.5rem 1rem;border:2px solid var(--teal);background:var(--white);color:var(--teal);border-radius:6px;cursor:pointer;font-weight:600}
.filter-btn.active,.filter-btn:hover{background:var(--teal);color:var(--white)}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}
.service-card{background:var(--gray);padding:2rem;border-radius:12px;border-top:4px solid var(--teal)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.about-img{border-radius:12px;width:100%}
.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:3rem}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-group{display:flex;flex-direction:column}.form-group.full{grid-column:1/-1}.form-group label{font-weight:600;margin-bottom:.35rem;font-size:.9rem}
.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid #ccc;border-radius:6px;font-family:inherit}
.error-msg{color:#c0392b;font-size:.8rem;min-height:1rem}.form-group.error input,.form-group.error select{border-color:#c0392b}
.form-success{background:var(--teal);color:var(--white);padding:2rem;border-radius:12px;text-align:center;font-weight:700}
.site-footer{background:var(--black);color:var(--white);padding:3rem 0 0}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding-bottom:2rem}
.site-footer a{color:var(--teal)}.footer-bottom{border-top:1px solid #333;padding:1rem 0;text-align:center;font-size:.85rem;color:#aaa}
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--black);color:var(--white);padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;z-index:200;flex-wrap:wrap}
.cookie-banner a{color:var(--teal)}.btn-cookie{background:var(--teal);color:var(--white)}.btn-cookie:hover{background:var(--teal-dark)}
.legal-section h2{margin-top:2rem;font-size:1.25rem}.narrow{max-width:720px}
.io{opacity:0;transform:translateY(20px);transition:opacity .4s,transform .4s}.io.visible{opacity:1;transform:none}
@media(max-width:900px){.hero-grid,.product-grid,.icons-grid,.testimonials,.about-grid,.contact-grid,.footer-grid{grid-template-columns:1fr}
.product-grid{grid-template-columns:1fr 1fr}.services-row{grid-template-columns:1fr}.contact-form{grid-template-columns:1fr}
.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);flex-direction:column;padding:1rem;border-bottom:1px solid #eee}
.main-nav.open{display:flex}.nav-toggle{display:flex}.btn-nav{display:none}}
@media(max-width:600px){.product-grid{grid-template-columns:1fr}}