:root{--green:#005b39;--green-dark:#003d2b;--orange:#e49a1d;--navy:#163c4c;--cream:#fffdf8;--muted:#476158}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--green-dark);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
.desktop-only{display:block}
.mobile-only{display:none}
.slide{position:relative;width:100%;overflow:hidden;line-height:0}
.slide>img{display:block;width:100%;height:auto;aspect-ratio:1926/1083;object-fit:contain}
.hotspot{position:absolute;z-index:2;display:block;border-radius:9px;text-decoration:none;transition:box-shadow .15s ease,background-color .15s ease}
.hotspot:hover,.hotspot:focus-visible{box-shadow:inset 0 0 0 2px rgba(231,155,27,.9);background:rgba(255,255,255,.08)}
.hs-map{left:73.5%;top:25.7%;width:24.7%;height:50.4%}
.hs-address{left:51.1%;top:43.3%;width:21%;height:11.2%}
.hs-email{left:51.1%;top:56.7%;width:20%;height:8.5%}
.hs-phone{left:51.1%;top:67.5%;width:20%;height:8.6%}
.hs-facebook{left:45.5%;top:83.4%;width:5.1%;height:7.6%;border-radius:50%}
.hs-instagram{left:51.2%;top:83.4%;width:5.1%;height:7.6%;border-radius:50%}
.hs-linkedin{left:57.1%;top:83.4%;width:5.1%;height:7.6%;border-radius:50%}
.hs-whatsapp{left:88.6%;top:81.2%;width:10.1%;height:16.6%;border-radius:26px}
#floating-whatsapp{display:none}
@media(max-width:1000px){
  .desktop-only{display:none}
  .mobile-only{display:block}
  body{background:var(--cream)}
  .mobile-brand{display:flex;align-items:center;gap:10px;padding:10px 5vw;background:#fff;min-height:91px}
  .mobile-brand img{width:68px;height:76px;object-fit:contain;flex:0 0 auto}
  .mobile-brand div{display:flex;flex-direction:column;gap:3px}
  .brand-name{font-weight:750;font-size:clamp(17px,4.3vw,25px);line-height:1.12;letter-spacing:-.4px}
  .brand-descriptor{color:#d78c16;font-weight:700;font-size:clamp(15px,3.7vw,21px)}
  .mobile-hero{background:#fff}
  .mobile-hero-photo{display:block;width:100%;height:auto;aspect-ratio:1.5/1;object-fit:cover;object-position:center}
  .mobile-hero-copy{padding:28px 6vw 32px;background:linear-gradient(125deg,#fffdf8 0%,#fff 65%,#f0f7f1 100%);border-bottom:9px solid var(--green)}
  .micro-heading,.small-eyebrow{display:block;font-size:12px;font-weight:750;letter-spacing:2.2px;color:#b98214}
  .mobile-hero h1{font-size:clamp(32px,7.8vw,57px);letter-spacing:-1.4px;line-height:1.08;max-width:780px;margin:15px 0;color:var(--green-dark);font-weight:800}
  .mobile-hero h1 em{font-style:normal;color:var(--orange)}
  .mobile-hero p{max-width:650px;font-size:clamp(16px,3.8vw,21px);color:var(--muted);line-height:1.55;margin:0 0 22px}
  .pillars{display:flex;gap:8px;flex-wrap:wrap}
  .pillars span{font-size:11px;letter-spacing:.2px;font-weight:700;padding:9px 10px;background:#eaf2e9;color:var(--green);border-radius:999px}
  .mobile-services{padding:38px 5vw 34px;position:relative;overflow:hidden}
  .mobile-services:nth-of-type(odd){background:#f5f8f2}
  .section-intro{margin:0 1vw 22px}
  .section-mark{width:63px;height:5px;background:var(--orange);border-radius:7px;margin-bottom:14px}
  .section-intro .small-eyebrow{font-size:26px;font-weight:400;letter-spacing:.5px;color:var(--green-dark)}
  .section-intro h2{font-size:clamp(42px,11vw,72px);line-height:.98;letter-spacing:-2px;margin:0;color:var(--green-dark)}
  .section-intro p{font-size:17px;line-height:1.5;color:var(--muted);margin:14px 0 0}
  .category-intro{font-size:16px;line-height:1.6;color:#234c40;border-left:4px solid var(--orange);padding:4px 0 4px 14px;margin:0 1vw 24px;max-width:740px}
  .continuation{padding-top:38px}
  .service-grid{display:grid;grid-template-columns:1fr;gap:18px}
  .service-card{overflow:hidden;background:var(--green);color:#fff;border-radius:16px;box-shadow:0 7px 22px rgba(0,61,43,.1)}
  .service-card>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center}
  .service-card-body{background:linear-gradient(110deg,#00593a,#003c29);padding:19px 20px 21px;border-top:4px solid var(--orange);min-height:135px}
  .service-card h3{font-size:clamp(20px,5.5vw,26px);line-height:1.13;text-transform:uppercase;margin:0 0 12px}
  .service-card p{font-size:15.5px;line-height:1.5;margin:0;color:#eef8f1}
  .mobile-contact{background:#fff}
  .contact-photo{display:block;width:100%;height:auto;aspect-ratio:1.6/1;object-fit:cover}
  .contact-content{padding:30px 5vw 42px}
  .contact-content h2{font-size:clamp(39px,10.5vw,65px);color:var(--green);letter-spacing:-1.8px;line-height:1.05;margin:10px 0 12px}
  .contact-lead{color:var(--muted);line-height:1.52;font-size:16px;margin:0 0 23px}
  .contact-methods{display:grid;gap:10px;margin-bottom:24px}
  .contact-method{display:flex;align-items:center;text-decoration:none;gap:13px;background:#f8faf5;border:1px solid #e4e9df;border-radius:13px;padding:14px 12px;color:#274238;overflow-wrap:anywhere;line-height:1.38;font-size:15px}
  .contact-method:hover{background:#f0f7eb}
  .contact-method strong{display:block;color:var(--green);margin-bottom:3px;font-size:17px}
  .method-symbol{background:var(--orange);color:white;width:43px;height:43px;border-radius:50%;flex:0 0 43px;display:grid;place-items:center;font-size:25px}
  .mobile-map{background:#f4f7f0;border:1px solid #cbdcd0;border-radius:17px;overflow:hidden;padding:12px;margin-bottom:25px}
  .mobile-map h3{margin:2px 3px 13px;font-size:19px}
  .mobile-map iframe{width:100%;height:260px;border:0;display:block;border-radius:10px;background:#e9ede6}
  .map-button{display:block;color:var(--green);font-weight:700;text-align:center;text-decoration:underline;padding:14px 4px 2px;line-height:1.3}
  .social-heading{margin:0 0 15px;font-size:19px;color:var(--green)}
  .socials{display:flex;justify-content:flex-start;gap:16px;flex-wrap:wrap}
  .social{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;font-weight:700;font-size:12px;color:var(--green-dark)}
  .social svg{width:50px;height:50px;border-radius:50%;padding:12px;color:#fff}
  .social-fb svg{background:#1672e3}
  .social-ig svg{background:linear-gradient(145deg,#7b35c7,#ec3c77,#ffad40)}
  .social-li svg{background:#0877ae}
  .closing{margin:28px 0 6px;padding:15px 0 0;border-top:1px solid #c4d9c5;line-height:1.45;font-size:19px;color:var(--green-dark)}
  .closing strong{color:#d3860d}
  .mobile-footer{padding:24px 7vw;background:#004c32;color:#fff;text-align:center;font-size:13px}
  #floating-whatsapp{position:fixed;display:flex;align-items:center;justify-content:center;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:30;width:62px;height:62px;border-radius:50%;background:#18bd56;color:white;border:3px solid white;box-shadow:0 3px 17px rgba(0,0,0,.25);transition:transform .2s ease,opacity .2s ease,visibility .2s ease;opacity:0;visibility:hidden;transform:translateY(8px)}
  #floating-whatsapp.visible{opacity:1;visibility:visible;transform:translateY(0)}
  #floating-whatsapp svg{width:39px;height:39px}
}
@media(min-width:630px) and (max-width:1000px){
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mobile-hero-photo{aspect-ratio:2/1}
  .mobile-services{padding-left:6vw;padding-right:6vw}
  .contact-content{max-width:850px;margin:auto}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}}
