:root{
  --container: 1200px;
  --text: rgba(31,31,31,1);
  --muted: #555555;
  --brand: rgba(231,61,68,1);
  --bg: rgba(242,238,230,1);
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (max-width:1080px){html{font-size:93.75%;}}
@media (max-width:720px){html{font-size:87.5%;}}
body{background-color:white;-webkit-font-smoothing:antialiased;}
body,input,textarea,button{font-family:'Poppins',sans-serif;font-weight:400;color:var(--text);}
img{max-width:100%;height:auto;display:block;}

.screen-reader-text{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.container{max-width:var(--container);margin:0 auto;padding:0 2rem;}

/* Header */
.site-header{width:100%;display:flex;flex-direction:column;align-items:center;padding:2rem 1rem 1rem;background:#fff;}
.site-header__inner{width:100%;max-width:var(--container);display:flex;align-items:center;justify-content:space-between;gap:1rem;}
.site-header__toggle{display:none;background:transparent;border:none;font-size:2rem;align-self:flex-start;cursor:pointer;}
.site-header__brand img{width:200px;margin-bottom:0;}

.site-nav{display:flex;align-items:center;}
.site-nav__menu{list-style:none;display:flex;align-items:center;gap:2.5rem;}
.site-nav__menu a{display:inline-flex;align-items:center;gap:.4rem;text-decoration:none;color:var(--text);text-transform:uppercase;font-weight:400;position:relative;}
.site-nav__menu a:hover,.site-nav__menu a.is-active{color:var(--brand);}
.site-nav__menu a:after{content:'';display:block;height:2px;left:50%;bottom:-16px;position:absolute;background:var(--brand);transition:width .2s ease,left .2s ease;width:0;}
.site-nav__menu a:hover:after,.site-nav__menu a.is-active:after{left:0;width:100%;}

@media (max-width:550px){
  .site-header__toggle{display:block;}
  .site-nav{display:none;width:100%;}
  .site-nav.is-open{display:block;}
  .site-nav__menu{flex-direction:column;align-items:flex-start;gap:1rem;padding-top:1rem;}
  .site-nav__menu a:after{display:none;}
}

/* Home */
.home{background:var(--bg);}

.home-banner{width:100%;margin-bottom:10rem;}
@media (max-width:620px){.home-banner{margin-bottom:5rem;}}
.home-banner__viewport{max-width:1600px;margin:0 auto;position:relative;overflow:hidden;}
.home-banner__track{display:flex;transition:transform .35s ease;}
.home-banner__slide{min-width:100%;display:flex;justify-content:center;}
.home-banner__img--mobile{display:none;}
@media (max-width:470px){
  .home-banner__img--mobile{display:block;}
  .home-banner__img--desktop{display:none;}
}

.home-banner__nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  border:none;
  width:44px;height:44px;
  border-radius:999px;
  background:rgba(255,255,255,.75);
  color:var(--muted);
  cursor:pointer;
}
.home-banner__nav:hover{background:#fff;}
.home-banner__nav--prev{left:12px;}
.home-banner__nav--next{right:12px;}

.home-about{
  width:100%;
  display:grid;
  grid-template-columns:repeat(2,calc(50% - 4rem));
  gap:8rem;
  padding-bottom:10rem;
}
@media (max-width:880px){
  .home-about{grid-template-columns:repeat(2,calc(50% - 1rem));gap:2rem;}
}
@media (max-width:620px){
  .home-about{grid-template-columns:1fr;grid-template-rows:repeat(2,auto);gap:4rem;}
}
.home-about__text{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;}
.home-about__text h1{font-size:1.9rem;color:var(--text);margin-bottom:1rem;}
.home-about__text p{text-align:justify;color:var(--muted);margin-bottom:2rem;}
.btn{text-decoration:none;padding:.5rem 2rem;font-size:1rem;cursor:pointer;border:none;background:var(--muted);color:white;display:inline-block;}
.btn:hover{background:var(--brand);}

/* About */
.about{background:var(--bg);padding-bottom:6rem;}
.about-hero{
  width:100%;
  position:relative;
  padding:7rem 0 18rem;
}
.about-hero:after{
  position:absolute;
  left:0;right:0;bottom:0;top:15rem;
  content:'';
  z-index:0;
  background:linear-gradient(to bottom,rgba(255,255,255,0) 30%,var(--bg));
}
.about-hero__inner{position:relative;z-index:1;max-width:var(--container);margin:0 auto;padding:0 2rem;text-align:center;}
.about-hero h1{text-transform:uppercase;font-size:2rem;color:var(--text);}
.about-hero__subtitle{margin-top:.5rem;font-size:1.3rem;font-weight:500;color:var(--text);}

.about-card{
  position:relative;
  top:-200px;
  padding:5rem 2rem 4rem;
  display:flex;
  flex-direction:column;
  gap:2.5rem;
  background:var(--bg);
  color:var(--muted);
}
@media (max-width:720px){
  .about-card{top:-140px;padding:3rem 1rem 3rem;}
}
.about-block h2{margin-bottom:.5rem;color:var(--text);}
.about-block p{text-align:justify;margin-bottom:1.25rem;color:var(--muted);}
.about-block__content{color:var(--muted);margin-bottom:1.25rem;}
.about-block__content p{margin-bottom:1.25rem;}
.about-block__content a{color:var(--brand);}
.about-block__content a:hover{text-decoration:underline;}

.about-video{overflow:hidden;position:relative;margin:0 auto 2rem;width:100%;max-width:680px;}
.about-video iframe{position:absolute;top:0;left:0;width:100%;height:100%;}
.about-video:after{padding-top:56.25%;display:block;content:'';}

.about-gallery{max-width:900px;margin:0 auto 2rem;}
.about-gallery__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.5rem;}
.about-gallery__title{font-size:1rem;color:var(--muted);font-weight:600;}
.about-gallery__nav{display:flex;gap:.5rem;}
.about-gallery__btn{
  width:40px;height:40px;border-radius:999px;border:none;
  cursor:pointer;background:#fff;color:var(--muted);
}
.about-gallery__btn:hover{background:rgba(255,255,255,.8);}
.about-gallery__viewport{position:relative;overflow:hidden;border-radius:10px;background:#fff;}
.about-gallery__track{display:flex;transition:transform .35s ease;align-items:center;}
.about-gallery__slide{min-width:100%;display:flex;justify-content:center;align-items:center;}
.about-gallery__slide img{width:100%;max-height:500px;object-fit:cover;object-position:center;}

/* Representatives */
.reps{background:var(--bg);padding-bottom:6rem;}
.reps-hero{
  width:100%;
  position:relative;
}
.reps-hero:after{
  position:absolute;
  left:0;right:0;bottom:0;top:15rem;
  content:'';
  z-index:0;
  background:linear-gradient(to bottom,rgba(255,255,255,0) 30%,var(--bg));
}
.reps-hero__inner{position:relative;z-index:1;max-width:var(--container);margin:0 auto;padding:7rem 2rem 18rem;text-align:center;}
.reps-hero h1{text-transform:uppercase;font-size:2rem;color:var(--text);}

.reps-card{
  width:100%;
  position:relative;
  top:-200px;
  padding:5rem 2rem 0;
  background:var(--bg);
  color:var(--muted);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
@media (max-width:720px){.reps-card{top:-140px;padding:3rem 1rem 0;}}
.reps-card h2{text-align:center;margin-bottom:3rem;font-size:1.8rem;font-weight:600;color:var(--text);}

.reps-map{width:100%;position:relative;max-width:700px;margin:0 auto;}
.reps-map__stage{width:100%;position:relative;overflow:hidden;}
.reps-map__content{position:relative;transform-origin:center center;transition:transform .2s ease;}
.reps-map__img{width:100%;height:auto;display:block;}
.reps-map__pins{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;}

.reps-map__buttons{
  position:absolute;
  bottom:2rem;
  right:2rem;
  z-index:3;
  display:flex;
  flex-direction:column;
  gap:.3rem;
}
.reps-map__buttons button{
  width:35px;height:35px;
  display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;font-weight:500;
  border:none;background:white;cursor:pointer;
  box-shadow:0 0 11px 2px #00000014;
}

.reps-pin{
  pointer-events:auto;
  position:absolute;
  width:44px;height:44px;
  transform:translate(-50%,-100%) scale(.7);
  border:none;
  background:transparent;
  cursor:pointer;
  opacity:1;
}
@media (max-width:700px){.reps-pin{transform:translate(-50%,-100%) scale(.5);}}
@media (max-width:500px){.reps-pin{transform:translate(-50%,-80%) scale(.35);}}
@media (max-width:330px){.reps-pin{transform:translate(-50%,-70%) scale(.25);}}
.reps-pin:hover{opacity:.85;}
.reps-pin:before{
  content:'';
  display:block;
  width:100%;height:100%;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0zM192 272c44.183 0 80-35.817 80-80s-35.817-80-80-80-80 35.817-80 80 35.817 80 80 80z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0zM192 272c44.183 0 80-35.817 80-80s-35.817-80-80-80-80 35.817-80 80 35.817 80 80 80z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.reps-pin--rep{color:rgba(0,0,0,1);}
.reps-pin--filial{color:rgba(255,202,39,1);}

.reps-tooltip{
  position:absolute;
  z-index:4;
  max-width:min(320px,calc(100vw - 2rem));
  pointer-events:auto;
  color:var(--text);
}
.reps-tooltip--card{
  background:#fafafa;
  border:1px solid rgba(0,0,0,.06);
  border-radius:16px;
  box-shadow:0 16px 48px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.06);
  overflow:hidden;
  font-size:.9rem;
  line-height:1.45;
}
.reps-tooltip__inner{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
}
.reps-tooltip__close{
  position:absolute;
  top:10px;
  right:10px;
  z-index:2;
  width:32px;
  height:32px;
  border:none;
  border-radius:50%;
  background:rgba(0,0,0,.06);
  color:var(--text);
  font-size:1.35rem;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s ease,color .15s ease;
}
.reps-tooltip__close:hover{background:rgba(0,0,0,.1);}
.reps-tooltip__media{
  aspect-ratio:4/3;
  background:#ececec;
  overflow:hidden;
}
.reps-tooltip__img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position: center;
  display:block;
}
.reps-tooltip__body{
  padding:1.1rem 1.15rem 1.15rem;
  display:flex;
  flex-direction:column;
  gap:.65rem;
}
.reps-tooltip__name{
  margin:0;
  padding-right:2.25rem;
  font-size:1.05rem;
  font-weight:700;
  letter-spacing:-.02em;
  color:var(--text);
  line-height:1.25;
}
.reps-tooltip__subtitle{
  margin:0;
  font-size:.82rem;
  color:var(--muted);
  font-weight:500;
}
.reps-tooltip__region{
  display:flex;
  flex-direction:column;
  gap:.2rem;
  padding-top:.35rem;
  margin-top:.15rem;
  border-top:1px solid rgba(0,0,0,.06);
}
.reps-tooltip__region-label{
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--muted);
  font-weight:600;
}
.reps-tooltip__region-value{
  font-size:1rem;
  font-weight:700;
  letter-spacing:.04em;
}
.reps-tooltip__actions{
  display:flex;
  flex-direction:column;
  gap:.45rem;
  margin-top:.35rem;
}
.reps-tooltip__wa{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:.55rem 1rem;
  border-radius:10px;
  background:#1b1b1b;
  color:#fff !important;
  text-decoration:none !important;
  font-size:.82rem;
  font-weight:600;
  transition:background .15s ease,transform .15s ease;
}
.reps-tooltip__wa:hover{background:#25d366;}
.reps-tooltip__wa:active{transform:scale(.98);}
.reps-tooltip__legacy{
  margin:0;
  padding:.85rem 1rem;
  max-width:min(320px,calc(100vw - 2rem));
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:12px;
  box-shadow:0 10px 30px rgba(0,0,0,.12);
  font-family:inherit;
  font-size:.85rem;
  white-space:pre-line;
  color:var(--text);
}

/* Footer */
.site-footer{width:100%;padding:2rem 60px;background:var(--text);position:relative;}
@media (max-width:600px){.site-footer{padding:2rem 1rem;}}
.site-footer__inner{max-width:var(--container);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;}
@media (max-width:600px){.site-footer__inner{flex-direction:column;}}
.site-footer p{color:white;}
.site-footer p a{text-decoration:none;color:var(--brand);}
.site-footer__icons{display:grid;grid-template-columns:30px 30px;grid-template-rows:30px;gap:1rem;}
.site-footer__icons a{background:white;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text);}
.site-footer__icons a:hover{background:var(--brand);}

.back-to-top{
  position:absolute;bottom:0;right:0;border:none;padding:1rem;display:flex;font-size:1.1rem;color:white;background:rgba(40,40,40,1);
  transition:.2s;cursor:pointer;
}
.back-to-top:hover{background:var(--brand);}

/* FAB WhatsApp */
.fab{position:fixed;width:56px;right:60px;bottom:70px;z-index:10;}
@media (max-width:600px){.fab{right:10px;bottom:120px;}}
.fab__action{
  cursor:pointer;
  width:56px;height:56px;border:none;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;color:white;background-color:#40c351;
  box-shadow:0 2px 2px 0 rgba(0,0,0,0.14),0 1px 5px 0 rgba(0,0,0,0.12),0 3px 1px -2px rgba(0,0,0,0.2);
}
.fab__menu{
  list-style:none;
  margin:0;
  padding:0;
  position:absolute;
  left:0;
  right:0;
  bottom:62px;
  display:flex;
  flex-direction:column;
  gap:12px;

  /* fechado por padrão */
  opacity:0;
  visibility:hidden;
  transform:translateY(8px) scale(.96);
  pointer-events:none;
  transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
}
.fab.is-open .fab__menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0) scale(1);
  pointer-events:auto;
}
.fab__link{
  width:40px;height:40px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  text-decoration:none;
  color:white;background-color:#40c351;
  box-shadow:0 2px 2px 0 rgba(0,0,0,0.14),0 1px 5px 0 rgba(0,0,0,0.12),0 3px 1px -2px rgba(0,0,0,0.2);
  font-weight:800;
}

.fab__link[data-tooltip]{position:relative;}
.fab__link[data-tooltip]:before{
  top:50%;
  margin-top:-11px;
  font-weight:600;
  border-radius:2px;
  background:#585858;
  color:#fff;
  content:attr(data-tooltip);
  font-size:12px;
  visibility:hidden;
  opacity:0;
  padding:4px 7px;
  margin-right:12px;
  position:absolute;
  transform:scale(0);
  right:100%;
  white-space:nowrap;
  transform-origin:top right;
  transition:all .3s cubic-bezier(.25,.8,.25,1);
}
.fab__link[data-tooltip]:hover:before{
  visibility:visible;
  opacity:1;
  transform:scale(1);
}

/* Default page template (page.php) */
.page-main{
  background:var(--bg);
  padding:3.5rem 0 5rem;
  min-height:40vh;
}
@media (max-width:720px){
  .page-main{padding:2.5rem 0 4rem;}
}

.page-entry{max-width:900px;margin:0 auto;}
.page-entry__header{margin-bottom:2rem;text-align:center;}
.page-entry__title{
  margin:0;
  font-size:clamp(1.65rem,2.5vw,2rem);
  font-weight:600;
  color:var(--text);
  text-transform:uppercase;
  letter-spacing:.04em;
  line-height:1.2;
}

.page-entry__content{
  color:var(--muted);
  font-size:1rem;
  line-height:1.65;
}
.page-entry__content > *:first-child{margin-top:0;}
.page-entry__content > *:last-child{margin-bottom:0;}

.page-entry__content p{margin:0 0 1.25rem;}
.page-entry__content h2,
.page-entry__content h3,
.page-entry__content h4{
  color:var(--text);
  font-weight:600;
  line-height:1.3;
  margin:2rem 0 .75rem;
}
.page-entry__content h2{font-size:1.55rem;}
.page-entry__content h3{font-size:1.3rem;}
.page-entry__content h4{font-size:1.1rem;}

.page-entry__content a{
  color:var(--brand);
  text-decoration:none;
}
.page-entry__content a:hover{text-decoration:underline;}

.page-entry__content ul,
.page-entry__content ol{
  margin:0 0 1.25rem 1.25rem;
  padding:0;
}
.page-entry__content li{margin-bottom:.4rem;}
.page-entry__content li > ul,
.page-entry__content li > ol{margin-top:.4rem;margin-bottom:.4rem;}

.page-entry__content blockquote{
  margin:1.5rem 0;
  padding:1rem 1.25rem;
  border-left:4px solid var(--brand);
  background:rgba(255,255,255,.6);
  color:var(--text);
}
.page-entry__content blockquote p:last-child{margin-bottom:0;}

.page-entry__content img.aligncenter{display:block;margin-left:auto;margin-right:auto;}
.page-entry__content .wp-caption{max-width:100%;}
.page-entry__content .wp-caption-text{
  margin-top:.5rem;
  font-size:.875rem;
  color:var(--muted);
  text-align:center;
}

.page-entry__content table{
  width:100%;
  border-collapse:collapse;
  margin:1.25rem 0;
  font-size:.95rem;
}
.page-entry__content th,
.page-entry__content td{
  border:1px solid rgba(0,0,0,.08);
  padding:.6rem .75rem;
  text-align:left;
}
.page-entry__content th{background:rgba(255,255,255,.85);color:var(--text);font-weight:600;}

.page-entry__content hr{
  border:0;
  border-top:1px solid rgba(0,0,0,.1);
  margin:2rem 0;
}

.page-entry__pagination{
  margin-top:2.5rem;
  padding-top:1.5rem;
  border-top:1px solid rgba(0,0,0,.08);
  font-size:.95rem;
  color:var(--muted);
}
.page-entry__pagination .page-links__label{
  font-weight:600;
  color:var(--text);
  margin-right:.5rem;
}
.page-entry__pagination a{
  display:inline-block;
  margin:0 .25rem;
  padding:.2rem .55rem;
  border-radius:6px;
  background:rgba(255,255,255,.85);
  color:var(--brand);
  text-decoration:none;
}
.page-entry__pagination a:hover{background:#fff;text-decoration:none;}

/* Gutenberg / block layout inside pages */
.page-entry__content .wp-block-group.alignwide,
.page-entry__content .alignwide{max-width:100%;}
.page-entry__content .alignfull{
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}

/* Contact Form 7 — escopado (.formulario-personalizado) */
.formulario-personalizado{
  --cf7-field-bg:#fff;
  --cf7-field-border:rgba(0,0,0,.12);
  --cf7-field-radius:10px;
  --cf7-field-pad:.65rem .85rem;
  --cf7-gap:1.15rem;
  width:100%;
  max-width:520px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
}

.formulario-personalizado > p{
  margin:0;
}

.formulario-personalizado label{
  display:block;
  font-size:.9rem;
  font-weight:600;
  color:var(--text);
  line-height:1.35;
}

.formulario-personalizado .wpcf7-form-control-wrap{
  display:block;
  margin-top:.4rem;
}

.formulario-personalizado input[type="text"],
.formulario-personalizado input[type="email"],
.formulario-personalizado input[type="tel"],
.formulario-personalizado input[type="url"],
.formulario-personalizado select,
.formulario-personalizado textarea{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  font-family:inherit;
  font-size:1rem;
  font-weight:400;
  color:var(--text);
  background:var(--cf7-field-bg);
  border:1px solid var(--cf7-field-border);
  border-radius:var(--cf7-field-radius);
  padding:var(--cf7-field-pad);
  line-height:1.45;
  transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
  appearance:none;
  -webkit-appearance:none;
}

.formulario-personalizado select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 24 24'%3E%3Cpath stroke='%23555555' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right .75rem center;
  background-size:16px;
  padding-right:2.25rem;
  cursor:pointer;
}

.formulario-personalizado textarea{min-height:140px;resize:vertical;}

.formulario-personalizado input::placeholder,
.formulario-personalizado textarea::placeholder{
  color:rgba(85,85,85,.75);
  opacity:1;
}

.formulario-personalizado input:hover,
.formulario-personalizado select:hover,
.formulario-personalizado textarea:hover{
  border-color:rgba(0,0,0,.2);
}

.formulario-personalizado input:focus,
.formulario-personalizado select:focus,
.formulario-personalizado textarea:focus{
  outline:none;
  border-color:var(--brand);
  box-shadow:0 0 0 3px rgba(231,61,68,.18);
}

.formulario-personalizado input.wpcf7-not-valid,
.formulario-personalizado select.wpcf7-not-valid,
.formulario-personalizado textarea.wpcf7-not-valid{
  border-color:#c62828;
  box-shadow:0 0 0 3px rgba(198,40,40,.12);
}

.formulario-personalizado .wpcf7-not-valid-tip{
  display:block;
  margin-top:.35rem;
  font-size:.8rem;
  font-weight:500;
  color:#b71c1c;
}

.formulario-personalizado input[type="submit"],
.formulario-personalizado .wpcf7-submit{
  width:100%;
  margin-top:.25rem;
  padding:.75rem 1.5rem;
  font-family:inherit;
  font-size:1rem;
  font-weight:600;
  letter-spacing:.02em;
  text-transform:none;
  color:#fff;
  background:var(--muted);
  border:none;
  border-radius:var(--cf7-field-radius);
  cursor:pointer;
  transition:background .2s ease, transform .1s ease;
}

.formulario-personalizado input[type="submit"]:hover,
.formulario-personalizado .wpcf7-submit:hover{
  background:var(--brand);
}

.formulario-personalizado input[type="submit"]:active,
.formulario-personalizado .wpcf7-submit:active{
  transform:scale(.99);
}

.formulario-personalizado .wpcf7-spinner{
  margin:0 0 0 .5rem;
  vertical-align:middle;
}

.formulario-personalizado .wpcf7-response-output{
  margin:0;
  padding:.85rem 1rem;
  border-radius:var(--cf7-field-radius);
  font-size:.9rem;
  line-height:1.45;
  border-width:1px;
  border-style:solid;
}

.formulario-personalizado .wpcf7-mail-sent-ok{
  background:rgba(76,175,80,.12);
  border-color:rgba(76,175,80,.35);
  color:#1b5e20;
}

.formulario-personalizado .wpcf7-mail-sent-ng,
.formulario-personalizado .wpcf7-aborted,
.formulario-personalizado .wpcf7-validation-errors,
.formulario-personalizado .wpcf7-acceptance-missing{
  background:rgba(198,40,40,.08);
  border-color:rgba(198,40,40,.28);
  color:#7f1010;
}

.formulario-personalizado .wpcf7-display-none{display:none;}

/* Linha opcional: envolva 2 campos (ex.: cidade + estado) */
.formulario-personalizado .formulario-personalizado__row{
  display:grid;
  gap:var(--cf7-gap);
}
@media (min-width:560px){
  .formulario-personalizado .formulario-personalizado__row--2{
    grid-template-columns:1fr 1fr;
  }
}

