
:root{
  --green:#08763c;
  --green2:#0c5f34;
  --deep:#08271b;
  --ink:#0d1310;
  --muted:#5f6661;
  --line:#dfe6e1;
  --soft:#f7faf8;
  --white:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}
a{text-decoration:none;color:inherit}
.topbar{background:linear-gradient(90deg,var(--green2),var(--green));color:#fff;padding:9px 4%;display:flex;justify-content:space-between;gap:20px;font-size:13px}
.topbar span{margin:0 8px}.topbar-contact{display:flex;gap:22px}
.header{display:flex;align-items:center;gap:28px;padding:14px 4%;border-bottom:1px solid #e6e6e6;position:sticky;top:0;background:rgba(255,255,255,.97);z-index:50}
.brand{display:flex;align-items:center;gap:13px;min-width:270px}
.brand-main{font-family:Georgia,serif;font-size:49px;font-weight:800;line-height:.9}.brand-main span{color:var(--green)}
.brand-sub{font-weight:800;line-height:1.05;letter-spacing:.02em}
.nav{display:flex;gap:30px;margin-left:auto}.nav a{font-size:14px;font-weight:800;padding:10px 0}.nav a:hover{color:var(--green)}
.menu-toggle{display:none;border:0;background:none;font-size:25px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--green);padding:13px 20px;font-weight:800;letter-spacing:.02em}
.btn-green{background:var(--green);color:#fff}.btn-green:hover{background:var(--green2)}
.btn-outline{background:#fff;color:var(--green)}
.header-btn{white-space:nowrap}
.hero{display:grid;grid-template-columns:43% 57%;min-height:520px;background:#fff}
.hero-copy{padding:68px 3% 46px 4%;align-self:center}
.slogan{font-size:20px;margin:0 0 18px}.slogan strong{color:var(--green)}
.hero h1{font-size:48px;line-height:1.05;margin:0;font-weight:900}.hero h1 span{color:var(--green)}
.green-rule{width:150px;height:4px;background:var(--green);margin:20px 0}.green-rule.short{width:100px}
.lead{font-size:18px;line-height:1.6;color:#383e39;max-width:650px}
.hero-actions{display:flex;gap:18px;margin:24px 0 30px}
.cred-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cred{display:flex;gap:10px;align-items:center;border-right:1px solid #c8d1cb;padding-right:12px}.cred:last-child{border-right:0}
.cred-icon{color:var(--green);font-size:26px}.cred b,.cred small{display:block}.cred b{font-size:12px}.cred small{font-size:10px;color:#444}
.hero-image{min-height:520px;overflow:hidden;background:#eef3ef}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}
.services{padding:24px 4% 30px;background:#fff}
.section-title{display:flex;align-items:center;justify-content:center;gap:18px}.section-title span{height:1px;background:#9fd2b7;width:150px}.section-title h2{font-size:25px}
.service-grid{display:grid;grid-template-columns:repeat(5,1fr);margin-top:10px}
.service-grid article{text-align:center;padding:20px;border-right:1px solid #d7ded9}.service-grid article:last-child{border-right:0}
.service-icon{font-size:34px}.service-grid h3{font-size:14px}.service-grid p{font-size:13px;line-height:1.45;color:#555}
.about{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;padding:70px 6%;background:var(--soft);align-items:center}
.kicker{color:var(--green);font-weight:900;letter-spacing:.12em}.about h2{font-size:38px;margin:7px 0 14px}.about p{font-size:17px;line-height:1.7;color:var(--muted)}
.about-card{background:#fff;border-left:5px solid var(--green);padding:34px;box-shadow:0 12px 30px rgba(0,0,0,.06)}.about-card strong,.about-card span{display:block;font-size:26px}.about-card span{color:var(--green);font-weight:800}
.safety{background:var(--deep);color:#fff;padding:42px 6%}.light-title span{background:#5a8d72}.safety-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.safety-grid div{background:rgba(255,255,255,.06);padding:22px}.safety-grid b,.safety-grid span{display:block}.safety-grid span{font-size:13px;color:#d9e4dc;margin-top:7px}
.quote-section{display:grid;grid-template-columns:28% 72%;border-top:1px solid var(--line)}
.quote-panel{background:linear-gradient(140deg,#0a3325,#052118);color:#fff;padding:48px 4%}.quote-panel h2{font-size:46px;margin:0}.quote-panel .kicker{color:#fff;margin-bottom:0}.quote-panel p{line-height:1.6}.quote-panel ul{padding-left:18px;line-height:2}
.quote-form{padding:34px 4%;background:#fff}
.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
label{display:block;font-size:12px;font-weight:800;margin-bottom:14px}
input,select,textarea{width:100%;padding:12px;margin-top:7px;border:1px solid #ccd5cf;font:inherit;background:#fff}
textarea{resize:vertical}
.submit-btn{width:280px;float:right;margin-top:4px}
.secure-note{font-size:12px;color:#5b635e;clear:both;padding-top:15px}
.footer{background:linear-gradient(90deg,var(--green2),var(--green));color:#fff;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:16px 4%}.footer-item b,.footer-item span{display:block}.footer-item span{font-size:12px;margin-top:3px}
@media(max-width:1050px){
  .nav{display:none}.menu-toggle{display:block;margin-left:auto}.header-btn{display:none}.nav.open{display:flex;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:18px 5%;border-bottom:1px solid var(--line)}
  .hero{grid-template-columns:1fr}.hero-image{min-height:380px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-grid article{border-bottom:1px solid var(--line)}
  .form-grid{grid-template-columns:repeat(2,1fr)}.quote-section{grid-template-columns:1fr}.quote-panel{padding:35px 5%}
}


@media(max-width:700px){
  .topbar{
    display:grid;
    grid-template-columns:1fr;
    gap:4px;
    padding:8px 5%;
    font-size:11px;
    line-height:1.35;
  }
  .topbar-contact{
    display:flex;
    flex-wrap:wrap;
    gap:4px 12px;
    margin-top:0;
  }
  .topbar-contact a{
    display:inline-block;
    font-size:11px;
  }

  .header{
    padding:10px 5%;
    min-height:68px;
  }
  .brand{
    min-width:0;
    gap:8px;
  }
  .brand-main{
    font-size:36px;
  }
  .brand-sub{
    display:block;
    font-size:9px;
    line-height:1.1;
    max-width:120px;
  }
  .menu-toggle{
    font-size:28px;
    color:var(--green);
  }

  .hero{
    display:flex;
    flex-direction:column;
  }
  .hero-copy{
    padding:34px 5% 18px;
    order:1;
  }
  .slogan{
    font-size:15px;
    margin-bottom:14px;
  }
  .hero h1{
    font-size:37px;
    line-height:1.04;
  }
  .green-rule{
    margin:16px 0;
    width:120px;
  }
  .lead{
    font-size:16px;
    line-height:1.55;
  }

  .hero-image{
    order:2;
    min-height:230px;
    height:230px;
    margin:0 5% 18px;
    border-radius:12px;
    overflow:hidden;
  }
  .hero-image img{
    object-position:62% center;
  }

  .hero-actions{
    order:3;
    flex-direction:column;
    gap:10px;
    margin:18px 0 20px;
  }
  .hero-actions .btn{
    width:100%;
    min-height:52px;
    font-size:16px;
  }

  .cred-row{
    order:4;
    grid-template-columns:1fr;
    gap:0;
    margin-top:4px;
  }
  .cred{
    border-right:0;
    border-bottom:1px solid #e4e8e5;
    padding:12px 0;
  }
  .cred:last-child{
    border-bottom:0;
  }
  .cred-icon{
    font-size:22px;
  }
  .cred b{
    font-size:12px;
  }
  .cred small{
    font-size:9px;
  }

  .services{
    padding-top:20px;
  }
  .section-title span{
    width:52px;
  }
  .section-title h2{
    font-size:22px;
  }

  .service-grid{
    grid-template-columns:1fr;
  }
  .service-grid article{
    text-align:left;
    display:grid;
    grid-template-columns:46px 1fr;
    column-gap:12px;
    align-items:start;
    padding:18px 4px;
  }
  .service-icon{
    grid-row:1 / span 2;
    font-size:30px;
  }
  .service-grid h3{
    margin:3px 0 5px;
    font-size:14px;
  }
  .service-grid p{
    margin:0;
    font-size:13px;
  }

  .about{
    grid-template-columns:1fr;
    padding:44px 5%;
    gap:24px;
  }
  .about h2{
    font-size:30px;
  }

  .safety{
    padding:34px 5%;
  }
  .safety-grid{
    grid-template-columns:1fr;
  }

  .quote-section{
    grid-template-columns:1fr;
  }
  .quote-panel{
    padding:30px 5%;
  }
  .quote-panel h2{
    font-size:38px;
  }
  .quote-form{
    padding:24px 5%;
  }
  .form-grid{
    grid-template-columns:1fr;
  }
  .submit-btn{
    width:100%;
    float:none;
  }

  .footer{
    grid-template-columns:1fr;
    gap:10px;
    padding:18px 5%;
  }
}


.mobile-hero-image{display:none}

@media(max-width:700px){
  .mobile-hero-image{
    display:block;
    width:100%;
    height:220px;
    margin:18px 0 20px;
    border-radius:12px;
    overflow:hidden;
    background:#eef3ef;
    box-shadow:0 8px 22px rgba(0,0,0,.08);
  }
  .mobile-hero-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:62% center;
  }
  .hero > .hero-image{
    display:none;
  }
  .lead{
    margin-top:0;
  }
}
