*{box-sizing:border-box; min-width:0;}
html,body{ overflow-x:hidden; max-width:100%; }
body{ margin:0; background:#FFFFFF; color:#14201A; font-family:'Montserrat',system-ui,sans-serif; -webkit-font-smoothing:antialiased; }
html{ scroll-behavior:smooth; }
h1,h2,h3,h4{ font-family:'Montserrat',sans-serif; letter-spacing:-.02em; margin:0; line-height:1.1; min-width:0; overflow-wrap:break-word; }
p{ margin:0; min-width:0; overflow-wrap:break-word; }
a{ color:inherit; }
img{ max-width:100%; }
details > summary{ list-style:none; cursor:pointer; }
details > summary::-webkit-details-marker{ display:none; }
details[open] .faq-plus{ transform:rotate(45deg); }
.faq-plus{ transition:transform .2s cubic-bezier(.22,1,.36,1); }
.svc-card{ transition:transform .22s cubic-bezier(.22,1,.36,1),border-color .22s,box-shadow .22s; }
.svc-card:hover{ transform:translateY(-4px); border-color:rgba(2,120,71,.45); box-shadow:0 16px 38px rgba(20,32,26,.1); }
.btn{ transition:transform .18s ease, box-shadow .18s ease; }
.btn:hover{ transform:translateY(-2px); }
a:focus-visible, summary:focus-visible{ outline:3px solid #027847; outline-offset:3px; border-radius:4px; }

/* ===== PÁGINAS DE SERVIÇO ===== */
.wrap{ max-width:1180px; margin-inline:auto; padding:0 24px; }
.sv-hero{ background:#14201A; color:#fff; }
.sv-eyebrow{ font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:#35C97E; font-weight:600; }
.sv-h1{ font-size:40px; font-weight:800; color:#fff; line-height:1.14; margin-top:14px; }
.sv-lead{ font-size:16px; line-height:1.65; color:rgba(255,255,255,.78); max-width:640px; margin-top:18px; }
.sv-sec{ padding:clamp(48px,6vw,76px) 0; }
.sv-h2{ font-size:27px; font-weight:800; color:#14201A; letter-spacing:-.02em; }
.sv-h3{ font-size:16px; font-weight:700; color:#14201A; }
.sv-p{ font-size:15px; line-height:1.75; color:#55615A; }
.sv-list{ margin:0; padding-left:0; list-style:none; display:grid; gap:11px; }
.sv-list li{ font-size:15px; line-height:1.6; color:#55615A; padding-left:26px; position:relative; }
.sv-list li::before{ content:""; position:absolute; left:0; top:8px; width:9px; height:9px; border-radius:2px; background:#027847; }
.sv-2col{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start; }
.sv-cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.sv-card{ border:1px solid #E4E9E4; border-radius:14px; padding:26px 22px; background:#fff; }
.sv-num{ font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:.14em; color:#027847; font-weight:600; }
.sv-band{ background:#F7F9F7; border-top:1px solid #E4E9E4; border-bottom:1px solid #E4E9E4; }
.sv-cta{ background:#14201A; color:#fff; }
.crumb{ font-family:'IBM Plex Mono',monospace; font-size:11px; color:#8A958E; letter-spacing:.06em; }
.crumb a{ color:#8A958E; text-decoration:none; }
.crumb a:hover{ color:#027847; }
.eq-tags{ display:flex; flex-wrap:wrap; gap:9px; }
.eq-tags span{ font-family:'IBM Plex Mono',monospace; font-size:11.5px; letter-spacing:.04em; color:#3A463E; border:1px solid #C9D0C9; border-radius:6px; padding:7px 11px; background:#fff; }

@media (max-width: 1040px){ .svc-grid{ grid-template-columns:repeat(2,1fr) !important; } }
@media (max-width: 900px){
  .resp-3col{ grid-template-columns:1fr 1fr !important; }
  .obj-grid{ grid-template-columns:1fr !important; }
  .num-strip{ gap:28px !important; }
  .sv-cards{ grid-template-columns:1fr !important; }
}
@media (max-width: 760px){
  .nav-links{ display:none !important; }
  .hero-copy{ padding-top:44px !important; padding-bottom:40px !important; gap:14px !important; }
  .hero-eyebrow{ font-size:10px !important; letter-spacing:.1em !important; }
  .hero-title{ font-size:28px !important; line-height:1.22 !important; }
  .hero-desc{ font-size:14px !important; }
  .hero-desc br{ display:none; }
  .hero-overlay{ background:linear-gradient(185deg,rgba(5,10,9,.55) 0%,rgba(5,10,9,.8) 45%,rgba(5,10,9,.94) 100%) !important; }
  .hero-btns a{ padding:14px 20px !important; font-size:14px !important; }
  .resp-2col{ grid-template-columns:1fr !important; gap:36px !important; }
  .resp-3col{ grid-template-columns:1fr !important; }
  .anchor-2up{ grid-template-columns:1fr !important; }
  .img-first{ order:-1 !important; }
  .num-strip{ flex-direction:column !important; align-items:flex-start !important; gap:18px !important; }
  .num-strip .num-div{ display:none !important; }
  .sv-2col{ grid-template-columns:1fr !important; gap:34px !important; }
  .sv-h1{ font-size:29px !important; }
  .sv-h2{ font-size:22px !important; }
}
@media (max-width: 560px){
  .svc-grid{ grid-template-columns:1fr !important; }
  .hero-btns a{ width:100%; justify-content:center; }
}
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  *{ transition:none !important; animation:none !important; }
}
