@charset "UTF-8";
:root {
  color-scheme: light;
  --ink: #153e38;
  --ink-light: #526d66;
  --green: #4e9f36;
  --orange: #eb9037;
  --teal: #3c746b;
  --hair: rgba(28,77,67,.14);
}
* {box-sizing: border-box}
html {min-height: 100%;}
body { margin:0; min-height:100svh; overflow-x:hidden; font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif; color:var(--ink); background:#f7f9f5; }
body:before { content:""; z-index:-2; position:fixed; inset:0; pointer-events:none; background:
  radial-gradient(ellipse 58% 75% at 100% -20%, rgba(235,144,55,.17),transparent 68%),
  radial-gradient(ellipse 65% 90% at -15% 105%, rgba(78,159,54,.13),transparent 70%),
  radial-gradient(ellipse 56% 60% at 75% 65%, rgba(60,116,107,.045),transparent 74%);
}
.container {position:relative; isolation:isolate; min-height:100svh; max-width:1600px; margin:0 auto; display:flex; flex-direction:column; overflow:clip; padding:34px clamp(22px,5vw,76px) 28px;}
.container:after {content:""; position:absolute; z-index:-1; top:11%; right:-21%; width:min(90vw,1000px); aspect-ratio:1.8; border:1px solid rgba(60,116,107,.10); border-radius:50%; transform:rotate(-28deg); pointer-events:none;}
.site-head {display:flex; align-items:center; justify-content:space-between; gap:20px; font-size:11px; font-weight:740; letter-spacing:.20em; color:#66817a; text-transform:uppercase;}
.site-head .identity {display:flex; align-items:center; gap:12px; color:#254e46;}
.symbol {width:26px; height:26px; display:grid; align-items:center; grid-template-columns:repeat(3,1fr); gap:3px; transform:skew(-12deg);}
.symbol span {height:16px; border-radius:100px; background:var(--green);}
.symbol span:nth-child(2) {height:24px; background:var(--orange);}
.symbol span:nth-child(3) {height:12px; background:var(--teal);}
.site-head .right {font-weight:600; letter-spacing:.12em;}
main {flex:1; display:flex; align-items:center; justify-content:center; text-align:center; padding:40px 0 37px;}
.hero {position:relative; width:100%; max-width:1060px; margin:0 auto; animation:appear .9s cubic-bezier(.2,.7,.1,1) both;}
.pill {display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:12px 17px; border:1px solid var(--hair); border-radius:100px; background:rgba(255,255,255,.64); box-shadow:0 6px 28px rgba(30,75,65,.035); color:#517168; font-size:11px; font-weight:730; letter-spacing:.15em; text-transform:uppercase;}
.signal {position:relative; width:7px; height:7px; flex-shrink:0; border-radius:50%; background:var(--green);}
.signal:after {content:""; position:absolute; inset:-4px; border:1px solid rgba(78,159,54,.42); border-radius:50%; animation:ping 2.4s ease-out infinite;}
.brand {display:block; width:min(94%,760px); height:auto; margin:27px auto 23px; filter:drop-shadow(0 15px 24px rgba(50,98,74,.045));}
.eyebrow {display:flex; align-items:center; justify-content:center; gap:12px; color:var(--teal); font-size:12px; font-weight:750; letter-spacing:.22em; text-transform:uppercase; margin:0 0 19px;}
.eyebrow:before, .eyebrow:after {content:""; width:23px; height:1px; background:#9fbbb0;}
h1 {max-width:960px; margin:0 auto; font-size:clamp(34px,4.25vw,61px); letter-spacing:-.059em; font-weight:730; line-height:1.13; text-wrap:balance;}
.lead {max-width:690px; margin:17px auto 0; font-size:clamp(15px,1.3vw,18px); line-height:1.75; color:var(--ink-light); text-wrap:pretty;}
.caps {margin:24px auto 0; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:10px;}
.cap {padding:10px 15px; background:rgba(255,255,255,.45); border:1px solid var(--hair); border-radius:9px; color:#47736b; font-size:10px; font-weight:750; letter-spacing:.15em; text-transform:uppercase;}
.bottom {border-top:1px solid var(--hair); padding-top:21px; display:flex; align-items:center; justify-content:space-between; gap:16px; color:#789087; font-size:11px; letter-spacing:.055em;}
.bottom .web {font-weight:720; letter-spacing:.07em; color:#3c746b;}
.bottom .copyright {text-align:right;}
@keyframes appear {from {opacity:0; transform:translateY(18px)} to {opacity:1; transform:translateY(0)}}
@keyframes ping {0% {opacity:.65; transform:scale(.8)} 80%,100% {opacity:0; transform:scale(1.65)}}
@media (max-width:640px) {
 .container {padding:22px 20px 21px; min-height:100svh;}
 .site-head {font-size:10px;letter-spacing:.13em;}
 .site-head .right {display:none;}
 main {padding:58px 0;}
 .pill {font-size:10px;letter-spacing:.10em;padding:10px 13px;}
 .brand {width:100%;margin:38px auto 40px;}
 .eyebrow {font-size:10px;margin-bottom:18px;letter-spacing:.17em;}
 h1 {font-size:clamp(32px,9vw,45px);}
 .lead {font-size:15px; line-height:1.65; margin-top:22px;}
 .caps {margin-top:30px;gap:8px;}
 .cap {font-size:9px;padding:9px 11px;}
 .bottom {font-size:10px;align-items:flex-end;}
 .bottom .copyright {max-width:190px;}
}
@media (max-width:360px) {.brand{margin-top:29px;margin-bottom:29px}.caps{gap:6px}.cap{padding:8px;font-size:8px}.bottom{font-size:9px}}
@media (prefers-reduced-motion:reduce) {.hero{animation:none}.signal:after{animation:none}}

/* Contatos diretos: telefone, WhatsApp e e-mail */
.contact-area {margin:30px auto 0; max-width:1050px; text-align:center;}
.contact-area h2 {margin:0 0 13px; color:#698078; font-size:10px; font-weight:800; line-height:1.5; letter-spacing:.18em; text-transform:uppercase;}
.contact-grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; text-align:left;}
.contact-card {display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; border:1px solid rgba(28,77,67,.12); border-radius:13px; padding:13px 15px; background:rgba(255,255,255,.72); box-shadow:0 7px 28px rgba(30,75,65,.025);}
.contact-info {display:flex; flex-direction:column; min-width:0; gap:4px;}
.contact-label {font-size:10px; font-weight:750; letter-spacing:.10em; text-transform:uppercase; color:#688278;}
.contact-value {color:var(--ink); font-size:13px; font-weight:700; line-height:1.45; text-decoration:none; white-space:nowrap;}
.contact-value:hover,.contact-value:focus-visible {text-decoration:underline; text-underline-offset:3px;}
.contact-action {flex-shrink:0; border:1px solid rgba(78,159,54,.23); border-radius:100px; background:rgba(78,159,54,.09); padding:9px 11px; color:#387a2b; text-decoration:none; font-size:11px; font-weight:780; transition:background .2s ease,transform .2s ease;}
.contact-action:hover,.contact-action:focus-visible {background:rgba(78,159,54,.18); transform:translateY(-1px);}
.contact-action span {font-size:13px; font-weight:600;}
.email-address {font-size:clamp(10px,.9vw,12px); white-space:normal; overflow-wrap:anywhere;}
@media (max-width:900px) { .contact-grid {grid-template-columns:repeat(2,minmax(0,1fr));} .contact-email {grid-column:1 / -1; justify-content:center; text-align:center;} .email-address {font-size:13px;} }
@media (max-width:640px) { .contact-area {margin-top:29px;} .contact-grid {grid-template-columns:1fr; gap:9px;} .contact-email {grid-column:auto; justify-content:flex-start; text-align:left;} .contact-card {padding:12px 14px;} .email-address {font-size:13px;} .contact-value {font-size:14px;} }
@media (prefers-reduced-motion:reduce) { .contact-action {transition:none;} .contact-action:hover,.contact-action:focus-visible {transform:none;} }

/* Slogan ampliado: preserva leitura em telas estreitas */
.eyebrow {line-height:1.6; text-wrap:balance;}
.eyebrow::before,.eyebrow::after {flex:0 0 23px;}
@media (max-width: 640px) { .eyebrow {max-width:95%; gap:9px; margin-left:auto; margin-right:auto; letter-spacing:.09em;} .eyebrow::before,.eyebrow::after {flex-basis:14px;} }
