
.hidden{display:none !important;}

@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700;800&display=swap");
:root{--navy:#081D3A;--gold:#C89C3A;--gold-2:#E0B95F;--charcoal:#222;--gray:#6F747C;--white:#fff;--soft:#F7F2E8;--cream:#FFFCF6;--line:rgba(200,156,58,.25);--shadow:0 24px 70px rgba(8,29,58,.14);--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Montserrat",Arial,sans-serif;color:var(--charcoal);background:var(--cream);line-height:1.65}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}.container{width:min(1160px,calc(100% - 40px));margin:0 auto}.site-header{position:fixed;inset:0 0 auto;z-index:1000;background:rgba(255,252,246,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.site-header.scrolled{box-shadow:0 14px 34px rgba(8,29,58,.08)}.header-inner{min-height:82px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px}.brand{display:flex;align-items:center;min-width:0;transition:transform .25s ease,filter .25s ease}.brand:hover{transform:translateY(-2px)}.brand img{width:285px;height:auto;object-fit:contain}.nav-menu{display:flex;align-items:center;justify-content:center;gap:24px;color:var(--navy);font-size:.9rem;font-weight:700;text-align:center}.nav-menu a{position:relative;transition:.25s;padding:8px 2px;white-space:nowrap}.nav-menu a:not(.nav-cta)::after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--gold);transition:.25s}.nav-menu a:hover::after{width:100%}.nav-cta{padding:11px 18px;border-radius:999px;color:var(--navy);background:linear-gradient(135deg,var(--gold-2),var(--gold));box-shadow:0 10px 24px rgba(200,156,58,.22);margin-left:4px}.nav-cta:hover{box-shadow:0 16px 34px rgba(200,156,58,.32)}.menu-toggle{display:none;flex:0 0 auto;width:46px;height:46px;border:1px solid rgba(200,156,58,.32);background:rgba(255,255,255,.62);border-radius:14px;cursor:pointer}.menu-toggle span{display:block;width:21px;height:2px;background:var(--gold);margin:5px auto;transition:.25s}.section{padding:104px 0}.section-dark{background:radial-gradient(circle at 20% 8%,rgba(200,156,58,.18),transparent 32%),linear-gradient(135deg,var(--navy),#071526 72%);color:#fff}.section-soft{background:#fff}.hero{position:relative;padding:145px 0 88px;overflow:hidden}.hero-bg-mark{position:absolute;right:-20px;bottom:-18px;font-family:"Playfair Display",serif;font-size:clamp(180px,28vw,430px);line-height:.8;color:rgba(255,255,255,.035);font-weight:800;pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}.eyebrow{color:var(--gold);font-weight:800;letter-spacing:.19em;font-size:.76rem;text-transform:uppercase;margin:0 0 18px}.eyebrow.dark{color:var(--gold)}h1,h2{font-family:"Playfair Display",Georgia,serif;line-height:1.02;letter-spacing:-.03em;margin:0}h1{font-size:clamp(3.1rem,6.4vw,6.15rem);max-width:720px}h2{font-size:clamp(2.25rem,4.2vw,4.1rem);color:var(--navy)}.section-dark h1,.section-dark h2{color:#fff}.hero-text{max-width:650px;margin:26px 0 34px;font-size:1.1rem;color:rgba(255,255,255,.84)}.hero-actions{display:flex;flex-wrap:wrap;gap:16px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;border:1px solid transparent;font-weight:800;cursor:pointer;transition:transform .25s,box-shadow .25s}.btn:hover{transform:translateY(-3px);box-shadow:0 20px 38px rgba(200,156,58,.28)}.btn-primary{color:var(--navy);background:linear-gradient(135deg,var(--gold-2),var(--gold));box-shadow:0 18px 35px rgba(200,156,58,.24)}.btn-outline{color:#fff;border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.06)}.full{width:100%}.hero-proof{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.hero-proof span{padding:10px 14px;border-radius:999px;border:1px solid rgba(200,156,58,.24);background:rgba(255,255,255,.045);color:rgba(255,255,255,.88);font-weight:700;font-size:.88rem}.hero-card{padding:38px;border-radius:34px;background:rgba(255,255,255,.08);border:1px solid rgba(200,156,58,.28);box-shadow:0 30px 90px rgba(0,0,0,.22);backdrop-filter:blur(18px);animation:heroFloat 6s ease-in-out infinite}.hero-card img{width:min(220px,55%);margin:0 auto 24px}.hero-card h2{font-size:clamp(2rem,3.2vw,3.25rem);text-align:center;margin-bottom:18px}.hero-card p{text-align:center;color:rgba(255,255,255,.78);margin:0}.story-grid,.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:62px;align-items:center}.section-copy p,.section-heading p{color:var(--gray);font-size:1.03rem}.section-heading{max-width:790px;margin-bottom:46px}.meaning-card{position:relative;padding:36px;border-radius:30px;background:linear-gradient(145deg,#fff,#f7f0e3);border:1px solid rgba(200,156,58,.28);box-shadow:var(--shadow)}.card-kicker{color:var(--gold);font-size:.76rem;font-weight:800;letter-spacing:.18em}.meaning-card h3{margin:10px 0 14px;font-family:"Playfair Display",serif;color:var(--navy);font-size:clamp(2.4rem,4vw,4rem)}.meaning-card p{color:var(--gray)}.meaning-card ul{margin:20px 0 0;padding:0;list-style:none;display:grid;gap:12px}.meaning-card li{padding:14px 16px;border-radius:16px;background:rgba(8,29,58,.04);border:1px solid rgba(200,156,58,.14)}.meaning-card strong{color:var(--navy)}.impact-strip{background:var(--navy);color:#fff;border-top:1px solid rgba(200,156,58,.18);border-bottom:1px solid rgba(200,156,58,.18)}.impact-grid{display:grid;grid-template-columns:repeat(4,1fr)}.impact-item{padding:32px 22px;border-right:1px solid rgba(200,156,58,.18)}.impact-item:last-child{border-right:0}.impact-item span{color:var(--gold);font-weight:900}.impact-item strong{display:block;margin:7px 0 5px;font-size:1.05rem}.impact-item p{margin:0;color:rgba(255,255,255,.72);font-size:.92rem}.solutions-grid,.team-grid,.method-steps{display:grid;gap:22px}.solutions-grid{grid-template-columns:repeat(3,1fr)}.team-grid{grid-template-columns:repeat(3,1fr)}.method-steps{grid-template-columns:repeat(4,1fr)}.solution-card,.team-card,.method-card,.contact-form{padding:30px;border-radius:var(--radius);background:var(--cream);border:1px solid rgba(200,156,58,.23);box-shadow:0 18px 44px rgba(8,29,58,.08);transition:.28s ease}.solution-card:hover,.team-card:hover,.method-card:hover{transform:translateY(-7px);border-color:rgba(200,156,58,.62);box-shadow:var(--shadow)}.solution-card i{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:16px;background:var(--navy);color:var(--gold);font-style:normal;font-weight:900}.solution-card h3,.team-card h3,.method-card h3{margin:16px 0 9px;color:var(--navy);font-size:1.16rem}.solution-card p,.team-card p,.method-card p{margin:0;color:var(--gray)}.method-card span,.team-avatar{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--navy);color:var(--gold);font-weight:900;border:2px solid var(--gold)}.team-card{background:linear-gradient(145deg,#fff,#f7f0e3)}.team-avatar{width:70px;height:70px;font-size:1.2rem}.team-card strong{display:block;color:var(--gold);margin-bottom:12px}.contact-section{background:linear-gradient(180deg,#fff,var(--soft))}.contact-grid{align-items:start}.contact-options{display:grid;gap:14px;margin-top:28px}.contact-option{display:grid;gap:4px;padding:20px;border-radius:20px;background:#fff;border:1px solid rgba(200,156,58,.24);box-shadow:0 16px 40px rgba(8,29,58,.07)}.contact-option.highlight{background:var(--navy);color:#fff}.contact-option strong{color:inherit}.contact-option span{color:var(--gold);font-weight:800;word-break:break-word}.contact-form{background:#fff;display:grid;gap:15px}.test-alert{display:grid;gap:6px;padding:16px 18px;border-radius:16px;background:rgba(200,156,58,.12);border:1px solid rgba(200,156,58,.35);color:var(--navy)}.test-alert span{color:var(--gray);font-size:.9rem;line-height:1.45}.contact-form label{display:grid;gap:8px;color:var(--navy);font-weight:800;font-size:.92rem}.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(8,29,58,.14);border-radius:14px;padding:14px 15px;font:inherit;color:var(--charcoal);background:#fbfaf7;outline:none;transition:.2s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(200,156,58,.13)}.form-status{margin:0;min-height:22px;font-weight:800}.form-status.success{color:#1f7a4d}.form-status.error{color:#a83a3a}.footer{background:var(--navy);color:rgba(255,255,255,.78);padding:52px 0 0}.footer-grid{display:grid;grid-template-columns:1.35fr .75fr .9fr;gap:40px}.footer img{width:300px;height:auto;margin-bottom:14px}.footer strong{display:block;color:#fff;margin-bottom:12px}.footer a{display:block;margin:8px 0;transition:.2s}.footer a:hover{color:var(--gold)}.footer-bottom{margin-top:42px;padding:16px 18px;text-align:center;border-top:1px solid rgba(200,156,58,.18);color:rgba(255,255,255,.58);font-size:.92rem}.reveal{opacity:0;transform:translateY(22px);transition:.72s ease}.reveal.visible{opacity:1;transform:translateY(0)}
@media (max-width:1050px){.hero-grid,.story-grid,.contact-grid{grid-template-columns:1fr;gap:44px}.solutions-grid,.team-grid{grid-template-columns:repeat(2,1fr)}.method-steps,.impact-grid{grid-template-columns:repeat(2,1fr)}.hero-card img{width:180px}}
@media (max-width:860px){.header-inner{min-height:74px;display:flex;justify-content:space-between}.brand img{width:205px}.menu-toggle{display:block;position:relative;z-index:1100}.nav-menu{position:fixed;top:74px;left:18px;right:18px;display:grid;justify-content:stretch;text-align:center;gap:0;padding:18px;border-radius:22px;background:rgba(8,29,58,.98);color:#fff;box-shadow:0 24px 60px rgba(0,0,0,.24);border:1px solid rgba(200,156,58,.24);transform:translateY(-14px);opacity:0;pointer-events:none;transition:.25s ease}.nav-menu.open{transform:translateY(0);opacity:1;pointer-events:auto}.nav-menu a{padding:14px 10px;border-bottom:1px solid rgba(255,255,255,.08)}.nav-menu a::after{display:none}.nav-cta{margin-top:10px;text-align:center;border-bottom:0!important}.section{padding:82px 0}.hero{padding:118px 0 74px}}
@media (max-width:560px){.container{width:min(100% - 28px,1160px)}.header-inner{gap:12px}.brand img{width:178px}h1{font-size:3rem}h2{font-size:2.24rem}.hero-actions{display:grid}.btn{width:100%}.hero-proof{display:grid;grid-template-columns:1fr}.solutions-grid,.team-grid,.method-steps,.impact-grid,.footer-grid{grid-template-columns:1fr}.impact-item{border-right:0;border-bottom:1px solid rgba(200,156,58,.16)}.hero-card,.meaning-card,.solution-card,.team-card,.method-card,.contact-form{padding:22px}.footer img{width:215px}}

@keyframes heroFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}

.solution-card,.team-card,.method-card,.meaning-card,.contact-option{
  will-change:transform;
}

.site-header{
  animation:dropHeader .55s ease both;
}

@keyframes dropHeader{
  from{opacity:0;transform:translateY(-12px)}
  to{opacity:1;transform:translateY(0)}
}


.sales-highlight{
  background:linear-gradient(135deg,#fff,#f7f0e3);
  padding:48px 0;
  border-top:1px solid rgba(200,156,58,.18);
  border-bottom:1px solid rgba(200,156,58,.18);
}
.sales-box{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:30px;
  align-items:center;
  padding:34px;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(200,156,58,.28);
  box-shadow:var(--shadow);
}
.sales-box h2{
  font-size:clamp(2rem,3.5vw,3.3rem);
  margin-bottom:12px;
}
.fire{
  display:inline-block;
  animation:firePulse 1.4s ease-in-out infinite;
}
@keyframes firePulse{
  0%,100%{transform:scale(1) rotate(-2deg)}
  50%{transform:scale(1.16) rotate(4deg)}
}
.sales-counter{
  display:grid;
  place-items:center;
  min-height:180px;
  border-radius:24px;
  background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.20),transparent 35%),linear-gradient(135deg,var(--navy),#071526);
  color:#fff;
  border:1px solid rgba(200,156,58,.34);
}
.sales-counter span{
  font-family:"Playfair Display",serif;
  font-size:clamp(4rem,8vw,7rem);
  line-height:.9;
  color:var(--gold);
}
.sales-counter strong{
  margin-top:8px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.82rem;
  color:rgba(255,255,255,.78);
}
.support-grid{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:62px;
  align-items:start;
}
.support-note{
  margin-top:26px;
  padding:20px;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(200,156,58,.24);
  box-shadow:0 16px 40px rgba(8,29,58,.07);
  display:grid;
  gap:6px;
}
.support-note strong{color:var(--navy)}
.support-note span{color:var(--gray)}
.contact-form select,.review-form select{
  width:100%;
  border:1px solid rgba(8,29,58,.14);
  border-radius:14px;
  padding:14px 15px;
  font:inherit;
  color:var(--charcoal);
  background:#fbfaf7;
  outline:none;
}
.reviews-section{
  background:var(--cream);
}
.reviews-summary{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  max-width:620px;
  margin-bottom:24px;
}
.reviews-summary div{
  padding:24px;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(200,156,58,.22);
  box-shadow:0 14px 34px rgba(8,29,58,.07);
}
.reviews-summary strong{
  display:block;
  font-family:"Playfair Display",serif;
  color:var(--navy);
  font-size:2.7rem;
  line-height:1;
}
.reviews-summary span{
  color:var(--gray);
  font-weight:700;
}
.reviews-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-bottom:34px;
}
.review-card{
  padding:24px;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(200,156,58,.22);
  box-shadow:0 16px 40px rgba(8,29,58,.07);
}
.review-card .stars{
  color:var(--gold);
  font-size:1.15rem;
  letter-spacing:.05em;
  margin-bottom:10px;
}
.review-card strong{
  color:var(--navy);
}
.review-card span{
  display:block;
  color:var(--gray);
  font-size:.9rem;
  margin:4px 0 10px;
}
.review-card p{
  margin:0;
  color:var(--gray);
}
.review-form-wrap{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:30px;
  padding:32px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(200,156,58,.24);
  box-shadow:var(--shadow);
}
.review-form{
  display:grid;
  gap:14px;
}
.review-form label{
  display:grid;
  gap:8px;
  color:var(--navy);
  font-weight:800;
  font-size:.92rem;
}
.review-form input,.review-form textarea{
  width:100%;
  border:1px solid rgba(8,29,58,.14);
  border-radius:14px;
  padding:14px 15px;
  font:inherit;
  color:var(--charcoal);
  background:#fbfaf7;
  outline:none;
}
.review-form input:focus,.review-form textarea:focus,.review-form select:focus,.contact-form select:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 4px rgba(200,156,58,.13);
}

@media (max-width:1050px){
  .sales-box,.support-grid,.review-form-wrap{grid-template-columns:1fr}
  .reviews-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:560px){
  .sales-box{padding:22px}
  .reviews-summary,.reviews-grid{grid-template-columns:1fr}
  .review-form-wrap{padding:22px}
}


/* Organização refinada: vendas, tickets e avaliações */
.form-title{
  display:grid;
  gap:5px;
  padding:0 0 12px;
  border-bottom:1px solid rgba(200,156,58,.18);
  margin-bottom:4px;
}
.form-title strong{
  color:var(--navy);
  font-size:1.08rem;
}
.form-title span{
  color:var(--gray);
  font-size:.92rem;
}

.sales-highlight{
  position:relative;
  overflow:hidden;
}
.sales-highlight::before{
  content:"";
  position:absolute;
  inset:auto -80px -120px auto;
  width:260px;
  height:260px;
  border-radius:50%;
  background:rgba(200,156,58,.12);
  pointer-events:none;
}
.sales-box{
  position:relative;
  overflow:hidden;
}
.sales-counter{
  position:relative;
}
.sales-counter::after{
  content:"";
  position:absolute;
  top:18px;
  right:22px;
  font-size:1.65rem;
  filter:drop-shadow(0 10px 20px rgba(0,0,0,.22));
  animation:firePulse 1.5s ease-in-out infinite;
}

.support-section .contact-form,
.contact-section .contact-form{
  position:relative;
}
.support-note{
  border-left:4px solid var(--gold);
}

.reviews-panel{
  display:grid;
  gap:24px;
  margin-bottom:38px;
}
.reviews-summary{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  max-width:none;
  margin:0;
}
.review-metric{
  position:relative;
  overflow:hidden;
  padding:26px;
  border-radius:24px;
  background:linear-gradient(145deg,#fff,#f7f0e3);
  border:1px solid rgba(200,156,58,.24);
  box-shadow:0 16px 42px rgba(8,29,58,.08);
}
.review-metric::after{
  content:"";
  position:absolute;
  right:-40px;
  bottom:-55px;
  width:140px;
  height:140px;
  border-radius:50%;
  background:rgba(200,156,58,.13);
}
.review-metric small{
  display:block;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:900;
  font-size:.72rem;
  margin-bottom:10px;
}
.review-metric strong{
  display:block;
  font-family:"Playfair Display",serif;
  color:var(--navy);
  font-size:3.1rem;
  line-height:1;
}
.review-metric span{
  display:block;
  margin-top:8px;
  color:var(--gray);
  font-weight:700;
}
.reviews-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin:0;
}
.review-card{
  position:relative;
  display:grid;
  align-content:start;
  min-height:210px;
  padding:24px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(200,156,58,.22);
  box-shadow:0 16px 42px rgba(8,29,58,.08);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease, color .25s ease;
}
.review-card:hover{
  transform:translateY(-6px);
  border-color:rgba(200,156,58,.52);
  box-shadow:0 26px 65px rgba(8,29,58,.14);
}
.review-card .stars{
  color:var(--gold);
  font-size:1.18rem;
  letter-spacing:.06em;
  margin-bottom:12px;
}
.review-card strong{
  color:var(--navy);
  font-size:1.05rem;
  margin-bottom:2px;
}
.review-card span{
  display:block;
  color:var(--gray);
  font-size:.86rem;
  font-weight:700;
  margin-bottom:12px;
}
.review-card p{
  margin:0;
  color:var(--gray);
  line-height:1.55;
}
.empty-review{
  grid-column:1 / -1;
  min-height:auto;
  text-align:center;
  background:linear-gradient(145deg,#fff,#f7f0e3);
}
.review-form-wrap{
  position:relative;
  overflow:hidden;
}
.review-form-wrap::before{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  border-radius:50%;
  background:rgba(200,156,58,.10);
  right:-80px;
  top:-90px;
}
.review-form-wrap > *{
  position:relative;
  z-index:1;
}

@media (max-width:1050px){
  .reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  .reviews-summary,.reviews-grid{grid-template-columns:1fr}
  .review-card{min-height:auto}
}


/* Menu superior refinado: centro + contato + três pontinhos */
.header-inner{
  grid-template-columns:auto 1fr;
}

.nav-menu{
  justify-content:space-between;
  width:100%;
  gap:22px;
}

.nav-center{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
  flex:1;
}

.nav-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
}

.dropdown-wrap{
  position:relative;
  display:flex;
  align-items:center;
}

.dots-btn{
  width:46px;
  height:46px;
  border-radius:50%;
  border:1px solid rgba(200,156,58,.32);
  background:#fff;
  display:grid;
  grid-template-columns:1fr;
  place-items:center;
  gap:3px;
  cursor:pointer;
  box-shadow:0 10px 25px rgba(8,29,58,.08);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease, color .25s ease;
}

.dots-btn:hover{
  transform:translateY(-2px);
  border-color:rgba(200,156,58,.7);
  box-shadow:0 16px 34px rgba(8,29,58,.12);
}

.dots-btn span{
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--navy);
  display:block;
}

.dropdown-menu{
  position:absolute;
  top:calc(100% + 14px);
  right:0;
  width:min(340px,calc(100vw - 32px));
  padding:12px;
  border-radius:24px;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(200,156,58,.28);
  box-shadow:0 28px 80px rgba(8,29,58,.18);
  opacity:0;
  transform:translateY(-10px) scale(.98);
  pointer-events:none;
  transition:opacity .22s ease, transform .22s ease;
  z-index:1400;
  backdrop-filter:blur(16px);
}

.dropdown-menu.open{
  opacity:1;
  transform:translateY(0) scale(1);
  pointer-events:auto;
}

.dropdown-head{
  padding:14px 14px 10px;
  border-bottom:1px solid rgba(200,156,58,.16);
  margin-bottom:6px;
}

.dropdown-head strong{
  display:block;
  color:var(--navy);
  font-size:1.05rem;
}

.dropdown-head span{
  display:block;
  color:var(--gray);
  font-size:.86rem;
  margin-top:3px;
}

.dropdown-menu a{
  display:grid;
  gap:3px;
  padding:13px 14px;
  border-radius:16px;
  color:var(--navy);
  transition:background .2s ease, transform .2s ease;
  border-bottom:0!important;
  text-align:left;
}

.dropdown-menu a:hover{
  background:rgba(200,156,58,.12);
  transform:translateX(4px);
}

.dropdown-menu a::after{
  display:none!important;
}

.dropdown-menu a strong{
  color:var(--navy);
  font-size:.94rem;
}

.dropdown-menu a span{
  color:var(--gray);
  font-size:.82rem;
  line-height:1.35;
  font-weight:600;
}

.nav-contact-btn{
  border:0;
  cursor:pointer;
  min-height:42px;
  font-family:inherit;
  font-size:.9rem;
}

/* Contato simplificado e centralizado */
.simple-contact{
  text-align:center;
}

.simple-contact .section-heading{
  margin-left:auto;
  margin-right:auto;
}

.contact-choice-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:32px;
}

.contact-choice{
  min-height:170px;
  display:grid;
  align-content:center;
  gap:8px;
  padding:24px 18px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(200,156,58,.22);
  box-shadow:0 18px 46px rgba(8,29,58,.08);
  color:var(--navy);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease, color .25s ease;
}

.contact-choice:hover{
  transform:translateY(-7px);
  border-color:rgba(200,156,58,.78);
  background:linear-gradient(135deg,var(--navy),#071526);
  color:#fff;
  box-shadow:0 28px 70px rgba(8,29,58,.18);
}
.contact-choice:hover span{
  color:rgba(255,255,255,.82);
}
.contact-choice:hover strong{
  color:#fff;
}

.contact-choice.primary{
  background:linear-gradient(135deg,var(--navy),#071526);
  color:#fff;
}

.contact-choice strong{
  font-size:1.02rem;
}

.contact-choice span{
  color:var(--gray);
  font-size:.88rem;
  line-height:1.45;
}

.contact-choice.primary span{
  color:rgba(255,255,255,.76);
}
.contact-choice.primary:hover{
  background:linear-gradient(135deg,#0A2950,#081A31);
}

@media (max-width:1100px){
  .nav-center{gap:16px}
  .contact-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:860px){
  .nav-menu{
    justify-content:stretch;
  }

  .nav-center,.nav-actions{
    display:grid;
    justify-content:stretch;
    gap:0;
  }

  .nav-actions{
    gap:10px;
    padding-top:10px;
  }

  .dropdown-wrap{
    display:grid;
  }

  .dots-btn{
    width:100%;
    border-radius:16px;
    grid-template-columns:repeat(3,5px);
    justify-content:center;
    min-height:46px;
  }

  .dropdown-menu{
    position:static;
    width:100%;
    margin-top:10px;
    box-shadow:none;
    display:none;
    opacity:1;
    transform:none;
    pointer-events:auto;
  }

  .dropdown-menu.open{
    display:grid;
  }

  .nav-contact-btn{
    width:100%;
  }
}

@media (max-width:700px){
  .contact-choice-grid{grid-template-columns:1fr}
  .contact-choice{min-height:auto}
}


/* Menu lateral animado substituindo os três pontinhos */
.dots-btn{display:none!important}
.menu-lines-btn{
  width:48px;
  height:48px;
  border-radius:16px;
  border:1px solid rgba(200,156,58,.32);
  background:#fff;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 10px 25px rgba(8,29,58,.08);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease, color .25s ease;
}
.menu-lines-btn:hover{
  transform:translateY(-2px);
  border-color:rgba(200,156,58,.7);
  box-shadow:0 16px 34px rgba(8,29,58,.12);
}
.menu-lines-btn span{
  display:block;
  width:22px;
  height:2px;
  border-radius:999px;
  background:var(--navy);
  transition:transform .25s ease, width .25s ease;
}
.menu-lines-btn span:nth-child(1){transform:translateY(6px)}
.menu-lines-btn span:nth-child(2){width:16px}
.menu-lines-btn span:nth-child(3){transform:translateY(-6px)}
.menu-lines-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(2px) rotate(45deg)}
.menu-lines-btn[aria-expanded="true"] span:nth-child(2){width:0}
.menu-lines-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-2px) rotate(-45deg)}

.after-sale-note{
  margin-top:30px;
  padding:24px;
  border-radius:24px;
  background:linear-gradient(145deg,#fff,#f7f0e3);
  border:1px solid rgba(200,156,58,.25);
  box-shadow:0 16px 42px rgba(8,29,58,.08);
  text-align:center;
}
.after-sale-note strong{
  color:var(--navy);
  font-size:1.1rem;
}
.after-sale-note p{
  color:var(--gray);
  max-width:760px;
  margin:8px auto 0;
}

/* Central flutuante de atendimento */
.support-widget{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:1800;
}
.support-bubble{
  position:relative;
  width:58px;
  height:58px;
  border-radius:50%;
  border:1px solid rgba(200,156,58,.48);
  background:linear-gradient(135deg,var(--gold-2),var(--gold));
  color:var(--navy);
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 18px 45px rgba(8,29,58,.24);
  transition:transform .25s ease, box-shadow .25s ease;
}
.support-bubble:hover{
  transform:translateY(-5px) scale(1.03);
  box-shadow:0 24px 60px rgba(8,29,58,.28);
}
.support-bubble strong{
  font-size:1.65rem;
  line-height:1;
}
.support-pulse{
  position:absolute;
  inset:-5px;
  border-radius:50%;
  border:2px solid rgba(200,156,58,.35);
  animation:supportPulse 1.8s ease-out infinite;
}
@keyframes supportPulse{
  from{transform:scale(.85);opacity:1}
  to{transform:scale(1.28);opacity:0}
}
.support-panel{
  position:absolute;
  right:0;
  bottom:74px;
  width:min(340px,calc(100vw - 32px));
  border-radius:28px;
  background:rgba(255,255,255,.98);
  color:var(--navy);
  border:1px solid rgba(200,156,58,.30);
  box-shadow:0 28px 90px rgba(8,29,58,.24);
  overflow:hidden;
  transform:translateY(14px) scale(.96);
  opacity:0;
  pointer-events:none;
  transition:transform .25s ease, opacity .25s ease;
}
.support-panel.open{
  transform:translateY(0) scale(1);
  opacity:1;
  pointer-events:auto;
}
.support-panel-head{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:18px 20px;
  background:var(--navy);
  color:#fff;
}
.support-panel-head strong{
  display:block;
}
.support-panel-head span{
  display:block;
  color:rgba(255,255,255,.72);
  font-size:.82rem;
  margin-top:3px;
}
.support-panel-head button{
  width:34px;
  height:34px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:1.4rem;
  cursor:pointer;
}
.support-status{
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin:14px 16px 0;
  padding:12px;
  border-radius:18px;
  background:#F7F2E8;
  border:1px solid rgba(200,156,58,.22);
}
.status-dot{
  width:11px;
  height:11px;
  border-radius:50%;
  background:#c53b3b;
  margin-top:7px;
  flex:0 0 auto;
}
.support-status.open .status-dot{
  background:#26985f;
  box-shadow:0 0 0 5px rgba(38,152,95,.12);
}
.support-status p{
  margin:0;
  color:var(--gray);
  font-size:.9rem;
}
.support-ticket-form{
  padding:16px;
  display:grid;
  gap:10px;
}
.support-ticket-form label{
  display:grid;
  gap:6px;
  color:var(--navy);
  font-weight:800;
  font-size:.86rem;
}
.support-ticket-form input,
.support-ticket-form textarea,
.support-ticket-form select{
  width:100%;
  border:1px solid rgba(8,29,58,.14);
  border-radius:13px;
  padding:11px 12px;
  font:inherit;
  background:#FFFCF6;
}
.support-ticket-form button{
  min-height:46px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,var(--gold-2),var(--gold));
  color:var(--navy);
  font-weight:900;
  cursor:pointer;
}
@media(max-width:560px){
  .support-widget{right:16px;bottom:16px}
  .support-bubble{width:56px;height:56px}
  .support-panel{right:-2px;bottom:70px;width:min(94vw,340px)}
}


/* Ajuste final do menu: contato + menu de linhas animadas */
.header-inner{
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  align-items:center!important;
}
.nav-menu{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  width:100%!important;
  gap:12px!important;
}
.nav-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:12px!important;
}
.menu-lines-btn{
  width:48px;
  height:48px;
  border-radius:16px;
  border:1px solid rgba(200,156,58,.32);
  background:#fff;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 10px 25px rgba(8,29,58,.08);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease, color .25s ease;
}
.menu-lines-btn:hover{
  transform:translateY(-2px);
  border-color:rgba(200,156,58,.7);
  box-shadow:0 16px 34px rgba(8,29,58,.12);
}
.menu-lines-btn span{
  display:block;
  width:22px;
  height:2px;
  border-radius:999px;
  background:var(--navy);
  transition:transform .25s ease, width .25s ease, opacity .25s ease;
}
.menu-lines-btn span:nth-child(1){transform:translateY(6px)}
.menu-lines-btn span:nth-child(2){width:16px}
.menu-lines-btn span:nth-child(3){transform:translateY(-6px)}
.menu-lines-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(2px) rotate(45deg)}
.menu-lines-btn[aria-expanded="true"] span:nth-child(2){width:0;opacity:0}
.menu-lines-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-2px) rotate(-45deg)}
.dots-btn{display:none!important}
.dropdown-wrap{position:relative;display:flex;align-items:center}
.dropdown-menu{
  position:absolute;
  top:calc(100% + 14px);
  right:0;
  width:min(380px,calc(100vw - 32px));
  max-height:min(78vh,720px);
  overflow:auto;
  padding:12px;
  border-radius:24px;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(200,156,58,.28);
  box-shadow:0 28px 80px rgba(8,29,58,.18);
  opacity:0;
  transform:translateY(-10px) scale(.98);
  pointer-events:none;
  transition:opacity .22s ease, transform .22s ease;
  z-index:1400;
  backdrop-filter:blur(16px);
}
.dropdown-menu.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
.dropdown-head{padding:14px 14px 10px;border-bottom:1px solid rgba(200,156,58,.16);margin-bottom:6px}
.dropdown-head strong{display:block;color:var(--navy);font-size:1.05rem}
.dropdown-head span{display:block;color:var(--gray);font-size:.86rem;margin-top:3px}
.dropdown-menu a{
  display:grid;
  gap:3px;
  padding:13px 14px;
  border-radius:16px;
  color:var(--navy);
  transition:background .2s ease, transform .2s ease;
  border-bottom:0!important;
  text-align:left;
}
.dropdown-menu a:hover{background:rgba(200,156,58,.12);transform:translateX(4px)}
.dropdown-menu a::after{display:none!important}
.dropdown-menu a strong{color:var(--navy);font-size:.94rem}
.dropdown-menu a span{color:var(--gray);font-size:.82rem;line-height:1.35;font-weight:600}
.nav-contact-btn{border:0;cursor:pointer;min-height:46px;font-family:inherit;font-size:.9rem}
.menu-separator{
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(200,156,58,.45),transparent);
  margin:12px 6px;
}
.login-action-box{
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#F7F2E8);
  border:1px solid rgba(200,156,58,.22);
}
.login-action-box > span{
  color:var(--gold);
  font-weight:900;
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.14em;
}
.login-main-btn{
  display:flex!important;
  justify-content:center;
  align-items:center;
  min-height:46px;
  border-radius:999px!important;
  background:linear-gradient(135deg,var(--gold-2),var(--gold))!important;
  color:var(--navy)!important;
  font-weight:900!important;
  text-align:center!important;
}
.login-main-btn:hover{transform:translateY(-2px)!important}
.login-mini-links{
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
}
.login-mini-links a{
  padding:9px 10px!important;
  font-size:.88rem;
  background:rgba(8,29,58,.04);
}
@media(max-width:860px){
  .header-inner{display:flex!important;justify-content:space-between!important}
  .nav-menu{position:fixed!important;top:74px;left:18px;right:18px;display:grid!important;justify-content:stretch!important;text-align:center;gap:10px!important;padding:18px;border-radius:22px;background:rgba(8,29,58,.98);color:#fff;box-shadow:0 24px 60px rgba(0,0,0,.24);border:1px solid rgba(200,156,58,.24);transform:translateY(-14px);opacity:0;pointer-events:none;transition:.25s ease}
  .nav-menu.open{transform:translateY(0);opacity:1;pointer-events:auto}
  .nav-actions{display:grid!important;gap:10px!important;justify-content:stretch!important}
  .dropdown-wrap{display:grid!important}
  .nav-contact-btn,.menu-lines-btn{width:100%!important}
  .menu-lines-btn{grid-template-rows:repeat(3,2px);gap:5px;border-radius:16px}
  .menu-lines-btn span{margin:auto}
  .dropdown-menu{position:static!important;width:100%!important;max-height:60vh;box-shadow:none;display:none;opacity:1;transform:none;pointer-events:auto;margin-top:10px}
  .dropdown-menu.open{display:grid}
}


@media (min-width: 1000px){
  .support-panel{max-height:76vh;overflow:auto;}
  .support-ticket-form textarea{min-height:120px;max-height:160px;}
}


/* Ajuste solicitado: cards de contato todos brancos */
.contact-choice,
.contact-choice.primary {
  background: #ffffff !important;
  color: var(--navy) !important;
}

.contact-choice span,
.contact-choice.primary span {
  color: var(--gray) !important;
}

.contact-choice strong,
.contact-choice.primary strong {
  color: var(--navy) !important;
}

.contact-choice:hover,
.contact-choice.primary:hover {
  background: #ffffff !important;
  color: var(--navy) !important;
  border-color: rgba(200,156,58,.78) !important;
  transform: translateY(-7px);
  box-shadow: 0 28px 70px rgba(8,29,58,.14);
}

.contact-choice:hover span,
.contact-choice.primary:hover span {
  color: var(--gray) !important;
}

.contact-choice:hover strong,
.contact-choice.primary:hover strong {
  color: var(--navy) !important;
}


/* ===== Ajuste responsivo do menu de linhas / três pontos ===== */
@media (max-width: 860px){
  .site-header{
    overflow: visible;
  }

  .header-inner{
    grid-template-columns: 1fr auto !important;
    gap: 12px !important;
    min-height: 76px !important;
  }

  .brand{
    min-width: 0;
  }

  .brand img{
    width: min(220px, 58vw) !important;
    height: auto !important;
  }

  .menu-toggle{
    width: 50px !important;
    height: 50px !important;
    border-radius: 16px !important;
    flex-shrink: 0;
  }

  .nav-menu{
    top: 82px !important;
    left: 14px !important;
    right: 14px !important;
    width: auto !important;
    max-height: calc(100vh - 104px) !important;
    overflow-y: auto !important;
    padding: 16px !important;
    border-radius: 22px !important;
    gap: 12px !important;
    z-index: 1200 !important;
  }

  .nav-actions{
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .dropdown-wrap{
    width: 100% !important;
  }

  .nav-contact-btn,
  .menu-lines-btn{
    width: 100% !important;
    min-height: 52px !important;
    border-radius: 18px !important;
    justify-content: center !important;
  }

  .menu-lines-btn{
    display: grid !important;
    grid-template-columns: 1fr !important;
    place-items: center !important;
    padding: 0 !important;
  }

  .menu-lines-btn span{
    width: 22px !important;
  }

  .dropdown-menu{
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 18px !important;
    margin-top: 10px !important;
    overflow: hidden !important;
  }

  .dropdown-menu a{
    width: 100% !important;
    text-align: left !important;
    padding: 14px 16px !important;
  }

  .dropdown-head,
  .login-action-box{
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .login-main-btn{
    width: 100% !important;
    min-height: 48px !important;
  }
}

@media (max-width: 560px){
  .header-inner{
    min-height: 72px !important;
  }

  .brand img{
    width: min(190px, 52vw) !important;
  }

  .menu-toggle{
    width: 46px !important;
    height: 46px !important;
    border-radius: 14px !important;
  }

  .nav-menu{
    top: 78px !important;
    left: 10px !important;
    right: 10px !important;
    padding: 14px !important;
    border-radius: 18px !important;
  }

  .nav-contact-btn,
  .menu-lines-btn{
    min-height: 48px !important;
    font-size: .95rem !important;
  }

  .dropdown-menu a strong{
    font-size: .9rem !important;
  }

  .dropdown-menu a span{
    font-size: .8rem !important;
  }
}


/* Chat de atendimento: bloqueio visual fora do horário */
.support-ticket-form button:disabled,
.support-ticket-form button.disabled {
  opacity: .55;
  cursor: not-allowed;
  filter: grayscale(.15);
  transform: none !important;
}


/* ===== Correção final do menu mobile e botão de linhas ===== */
.menu-toggle,
.menu-lines-btn{
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

.menu-toggle span,
.menu-lines-btn span{
  display:block;
  transform-origin:center;
  transition:transform .28s ease, opacity .22s ease, width .22s ease;
  will-change:transform, opacity;
}

.menu-lines-btn{
  position:relative;
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  overflow:hidden;
}

.menu-lines-btn span{
  position:relative;
  left:auto;
  right:auto;
  top:auto;
  bottom:auto;
}

.menu-lines-btn.is-open span:nth-child(1),
.menu-toggle.is-open span:nth-child(1){
  transform:translateY(7px) rotate(45deg);
}

.menu-lines-btn.is-open span:nth-child(2),
.menu-toggle.is-open span:nth-child(2){
  opacity:0;
  transform:scaleX(.2);
}

.menu-lines-btn.is-open span:nth-child(3),
.menu-toggle.is-open span:nth-child(3){
  transform:translateY(-7px) rotate(-45deg);
}

@media (max-width: 860px){
  .site-header{
    overflow:visible;
  }

  .header-inner{
    position:relative;
  }

  .nav-menu{
    position:absolute;
    top:calc(100% + 12px);
    left:0;
    right:0;
    width:100%;
    max-height:calc(100vh - 105px);
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    padding:14px;
    z-index:9999;
  }

  .nav-menu.open{
    display:block;
  }

  .nav-actions{
    width:100%;
    display:grid;
    gap:12px;
  }

  .dropdown-wrap{
    position:static;
    width:100%;
  }

  .dropdown-menu,
  .site-menu-dropdown,
  .login-dropdown,
  .contact-dropdown{
    position:static !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    max-height:none !important;
    overflow:visible !important;
    transform:none !important;
    margin-top:10px;
    box-sizing:border-box;
  }

  .site-menu-dropdown.open,
  .login-dropdown.open,
  .contact-dropdown.open{
    display:grid;
  }

  .site-menu-dropdown{
    gap:8px;
    padding:12px;
  }

  .site-menu-dropdown a,
  .contact-dropdown a{
    min-height:auto;
    padding:12px 14px;
    border-radius:16px;
  }

  .site-menu-dropdown a span,
  .contact-dropdown a span{
    line-height:1.35;
  }

  .login-action-box{
    position:sticky;
    bottom:0;
    background:rgba(255,252,246,.97);
    backdrop-filter:blur(8px);
    border-radius:18px;
    padding:12px;
  }

  body.mobile-menu-active{
    overflow:hidden;
  }
}

@media (max-width: 420px){
  .nav-menu{
    max-height:calc(100vh - 90px);
    padding:10px;
  }

  .site-menu-dropdown{
    padding:10px;
  }

  .site-menu-dropdown a,
  .contact-dropdown a{
    padding:10px 12px;
  }
}


/* ===== Ajuste fino do X centralizado no menu mobile ===== */
@media (max-width: 860px){
  .menu-lines-btn{
    min-height:72px;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    position:relative;
    padding:0 16px;
  }

  .menu-lines-btn span{
    position:absolute !important;
    left:50%;
    top:50%;
    margin:0 !important;
    transform-origin:center !important;
  }

  .menu-lines-btn span:nth-child(1){
    transform:translate(-50%, -8px);
  }

  .menu-lines-btn span:nth-child(2){
    transform:translate(-50%, 0);
  }

  .menu-lines-btn span:nth-child(3){
    transform:translate(-50%, 8px);
  }

  .menu-lines-btn[aria-expanded="true"] span:nth-child(1),
  .menu-lines-btn.is-open span:nth-child(1){
    transform:translate(-50%, 0) rotate(45deg) !important;
  }

  .menu-lines-btn[aria-expanded="true"] span:nth-child(2),
  .menu-lines-btn.is-open span:nth-child(2){
    opacity:0 !important;
    width:0 !important;
    transform:translate(-50%, 0) scaleX(.1) !important;
  }

  .menu-lines-btn[aria-expanded="true"] span:nth-child(3),
  .menu-lines-btn.is-open span:nth-child(3){
    transform:translate(-50%, 0) rotate(-45deg) !important;
  }
}


/* ===== Modal de orçamento por e-mail ===== */
body.budget-modal-active{
  overflow:hidden;
}

.budget-modal{
  position:fixed;
  inset:0;
  z-index:12000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:22px;
}

.budget-modal.open{
  display:flex;
}

.budget-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(4,15,31,.72);
  backdrop-filter:blur(12px);
}

.budget-panel{
  position:relative;
  width:min(960px,100%);
  max-height:min(92vh,920px);
  overflow:auto;
  border-radius:32px;
  background:
    radial-gradient(circle at 12% 0%, rgba(200,156,58,.14), transparent 34%),
    linear-gradient(145deg,#fff,#F7F2E8);
  border:1px solid rgba(200,156,58,.32);
  box-shadow:0 34px 95px rgba(0,0,0,.34);
  padding:32px;
  color:var(--navy);
  animation:budgetPanelIn .28s ease both;
}

@keyframes budgetPanelIn{
  from{opacity:0;transform:translateY(18px) scale(.98)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

.budget-close{
  position:absolute;
  top:18px;
  right:18px;
  width:46px;
  height:46px;
  border-radius:16px;
  border:1px solid rgba(200,156,58,.28);
  background:#fff;
  color:var(--navy);
  font-size:1.9rem;
  line-height:1;
  cursor:pointer;
  display:grid;
  place-items:center;
  box-shadow:0 12px 28px rgba(8,29,58,.10);
}

.budget-panel-head{
  max-width:740px;
  margin-bottom:24px;
  padding-right:56px;
}

.budget-panel-head h2{
  margin:4px 0 12px;
  color:var(--navy);
  font-size:clamp(2rem,4vw,3.55rem);
}

.budget-panel-head p{
  color:var(--gray);
  margin:0;
}

.budget-form{
  display:grid;
  gap:18px;
}

.budget-form-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}

.budget-form label{
  display:grid;
  gap:8px;
  font-weight:900;
  color:var(--navy);
}

.budget-form input,
.budget-form select,
.budget-form textarea{
  width:100%;
  border:1px solid rgba(8,29,58,.14);
  border-radius:16px;
  padding:14px 15px;
  font:inherit;
  background:#FFFCF6;
  color:var(--charcoal);
  outline:none;
}

.budget-form input:focus,
.budget-form select:focus,
.budget-form textarea:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 4px rgba(200,156,58,.13);
}

.budget-wide{
  grid-column:1 / -1;
}

.budget-success{
  text-align:center;
  padding:28px 10px 10px;
  display:grid;
  place-items:center;
  gap:12px;
}

.success-icon{
  width:74px;
  height:74px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--gold-2),var(--gold));
  color:var(--navy);
  font-size:2.3rem;
  font-weight:900;
  box-shadow:0 16px 38px rgba(200,156,58,.30);
}

.budget-success h2{
  color:var(--navy);
  font-size:clamp(2rem,4vw,3.35rem);
}

.budget-success p{
  max-width:650px;
  color:var(--gray);
  margin:0 auto;
}

.budget-success-actions{
  margin-top:12px;
  display:flex;
  gap:12px;
  justify-content:center;
  flex-wrap:wrap;
}

.dark-outline{
  color:var(--navy);
  border-color:rgba(8,29,58,.18);
  background:#fff;
}

.budget-form button:disabled{
  opacity:.6;
  cursor:not-allowed;
  transform:none;
}

@media(max-width:720px){
  .budget-modal{
    padding:12px;
    align-items:flex-start;
    padding-top:22px;
  }

  .budget-panel{
    border-radius:26px;
    padding:24px 18px;
    max-height:88vh;
  }

  .budget-panel-head{
    padding-right:46px;
  }

  .budget-form-grid{
    grid-template-columns:1fr;
  }

  .budget-wide{
    grid-column:auto;
  }

  .budget-success-actions{
    display:grid;
    width:100%;
  }
}


/* ===== Botões flutuantes oficiais ===== */
.social-floating-group{
  position:fixed;
  right:22px;
  bottom:96px;
  z-index:9998;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:14px;
}

.whatsapp-floating,
.instagram-floating{
  position:relative;
  width:64px;
  height:64px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  border:1px solid rgba(255,255,255,.24);
  transition:transform .24s ease, box-shadow .24s ease, filter .24s ease;
  overflow:visible;
}

.whatsapp-floating{
  background:linear-gradient(135deg,#25D366,#128C7E);
  box-shadow:0 18px 42px rgba(18,140,126,.34), 0 0 0 8px rgba(37,211,102,.10);
}

.instagram-floating{
  background:linear-gradient(135deg,#F58529 0%,#DD2A7B 45%,#8134AF 74%,#515BD4 100%);
  box-shadow:0 18px 42px rgba(129,52,175,.34), 0 0 0 8px rgba(221,42,123,.10);
}

.whatsapp-floating::before,
.instagram-floating::before{
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:inherit;
  pointer-events:none;
}

.whatsapp-floating::before{
  border:1px solid rgba(37,211,102,.28);
  animation:whatsappPulse 1.9s ease-in-out infinite;
}

.instagram-floating::before{
  border:1px solid rgba(221,42,123,.30);
  animation:instagramPulse 2.1s ease-in-out infinite;
}

.whatsapp-floating svg,
.instagram-floating svg{
  width:34px;
  height:34px;
  fill:currentColor;
  position:relative;
  z-index:1;
}

.whatsapp-floating span,
.instagram-floating span{
  position:absolute;
  right:74px;
  top:50%;
  transform:translateY(-50%);
  background:#081D3A;
  color:#fff;
  min-width:max-content;
  padding:9px 12px;
  border-radius:999px;
  font-size:.82rem;
  font-weight:900;
  opacity:0;
  pointer-events:none;
  transition:.22s ease;
  box-shadow:0 10px 26px rgba(8,29,58,.18);
}

.whatsapp-floating:hover,
.instagram-floating:hover{
  transform:translateY(-4px) scale(1.03);
  filter:brightness(1.03);
}

.whatsapp-floating:hover{
  box-shadow:0 24px 54px rgba(18,140,126,.42), 0 0 0 10px rgba(37,211,102,.13);
}

.instagram-floating:hover{
  box-shadow:0 24px 54px rgba(129,52,175,.42), 0 0 0 10px rgba(221,42,123,.13);
}

.whatsapp-floating:hover span,
.instagram-floating:hover span{
  opacity:1;
  transform:translateY(-50%) translateX(-2px);
}

@keyframes whatsappPulse{
  0%,100%{transform:scale(.96);opacity:.72}
  50%{transform:scale(1.08);opacity:.18}
}

@keyframes instagramPulse{
  0%,100%{transform:scale(.96);opacity:.70}
  50%{transform:scale(1.08);opacity:.17}
}

@media(max-width:720px){
  .social-floating-group{
    right:18px;
    bottom:88px;
    gap:12px;
  }
  .whatsapp-floating,
  .instagram-floating{
    width:58px;
    height:58px;
  }
  .whatsapp-floating svg,
  .instagram-floating svg{
    width:31px;
    height:31px;
  }
  .whatsapp-floating span,
  .instagram-floating span{
    display:none;
  }
}


/* =========================================================
   RODAPÉ LEGAL E PÁGINAS DE TERMOS
   ========================================================= */
.legal-footer{
  position:relative;
  background:
    radial-gradient(circle at 12% 10%, rgba(216,175,67,.16), transparent 28%),
    linear-gradient(135deg,#061B35,#071F3D);
  color:#fff;
  padding-top:54px;
  border-top:1px solid rgba(216,175,67,.32);
}

.legal-footer .footer-grid{
  grid-template-columns:1.2fr .9fr .95fr .95fr;
  gap:34px;
  align-items:start;
}

.legal-footer .footer-brand img{
  width:min(260px,100%);
  margin-bottom:12px;
  filter:drop-shadow(0 18px 30px rgba(0,0,0,.18));
}

.legal-footer .footer-note{
  display:block;
  margin-top:10px;
  color:rgba(255,255,255,.68);
  font-size:.88rem;
}

.legal-footer strong{
  color:#E8C96D;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.82rem;
  margin-bottom:12px;
  display:block;
}

.legal-footer a,
.legal-footer span,
.legal-footer p{
  color:rgba(255,255,255,.78);
}

.legal-footer a:hover{
  color:#E8C96D;
}

.legal-footer-strip{
  margin-top:34px;
  padding:18px 0;
  border-top:1px solid rgba(255,255,255,.10);
  border-bottom:1px solid rgba(255,255,255,.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.legal-footer-strip p{
  margin:0;
  max-width:760px;
  font-size:.92rem;
}

.legal-footer-strip div{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}

.legal-footer-strip a{
  border:1px solid rgba(216,175,67,.34);
  border-radius:999px;
  padding:8px 13px;
  font-weight:800;
  font-size:.86rem;
}

.legal-page-body{
  min-height:100vh;
  background:
    radial-gradient(circle at 16% 8%, rgba(216,175,67,.18), transparent 32%),
    linear-gradient(135deg,#061B35,#071F3D);
  color:#081D3A;
}

.legal-header{
  width:min(100% - 36px,1180px);
  margin:22px auto 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 18px;
  border:1px solid rgba(216,175,67,.30);
  border-radius:24px;
  background:rgba(255,252,246,.96);
  box-shadow:0 20px 60px rgba(0,0,0,.18);
}

.legal-logo img{
  width:230px;
  max-height:72px;
  object-fit:contain;
}

.legal-header nav{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.legal-header nav a{
  color:#081D3A;
  font-weight:800;
  border:1px solid rgba(8,29,58,.10);
  border-radius:999px;
  padding:8px 12px;
  background:#fff;
}

.legal-main{
  width:min(100% - 36px,980px);
  margin:34px auto;
}

.legal-hero{
  text-align:center;
  border-radius:34px;
  padding:50px 32px;
  background:linear-gradient(135deg,#FFFCF6,#F8F8F6);
  border:1px solid rgba(216,175,67,.30);
  box-shadow:0 28px 80px rgba(0,0,0,.18);
}

.legal-hero h1{
  margin:6px 0 10px;
  color:#081D3A;
  font-size:clamp(3rem,8vw,5.5rem);
  line-height:.92;
}

.legal-hero p{
  max-width:760px;
  margin:0 auto 12px;
  color:#68707A;
  font-weight:600;
}

.legal-hero span{
  color:#C89C3A;
  font-weight:900;
}

.legal-content-card{
  margin-top:22px;
  border-radius:30px;
  background:#FFFCF6;
  border:1px solid rgba(216,175,67,.28);
  box-shadow:0 24px 70px rgba(0,0,0,.14);
  padding:34px;
}

.legal-content-card h2{
  margin:28px 0 8px;
  color:#081D3A;
  font-size:1.55rem;
}

.legal-content-card h2:first-child{
  margin-top:0;
}

.legal-content-card p{
  color:#3B4450;
  font-weight:500;
  line-height:1.75;
}

.legal-content-card a{
  color:#A97914;
  font-weight:900;
}

.legal-contact-card{
  width:min(100% - 36px,980px);
  margin:28px auto 34px;
  border-radius:30px;
  background:linear-gradient(135deg,#FFFCF6,#F8F8F6);
  border:1px solid rgba(216,175,67,.30);
  padding:30px;
  text-align:center;
  box-shadow:0 24px 70px rgba(0,0,0,.14);
}

.legal-contact-card h2{
  margin:6px 0 8px;
  color:#081D3A;
  font-size:2.4rem;
}

.legal-contact-card p{
  color:#68707A;
}

.legal-contact-card div{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:18px;
}

.legal-page-footer{
  color:rgba(255,255,255,.75);
  text-align:center;
  padding:28px 18px 36px;
}

.legal-page-footer a{
  color:#E8C96D;
  font-weight:900;
}

@media(max-width:860px){
  .legal-footer .footer-grid{
    grid-template-columns:1fr 1fr;
  }

  .legal-footer-strip,
  .legal-header{
    display:grid;
  }

  .legal-header nav{
    justify-content:flex-start;
  }
}

@media(max-width:560px){
  .legal-footer .footer-grid{
    grid-template-columns:1fr;
  }

  .legal-footer-strip div,
  .legal-contact-card div{
    display:grid;
  }

  .legal-hero,
  .legal-content-card,
  .legal-contact-card{
    padding:24px 18px;
    border-radius:24px;
  }

  .legal-logo img{
    width:190px;
  }

  .legal-header nav a{
    width:100%;
    text-align:center;
  }
}


/* =========================================================
   PÁGINAS LEGAIS PREMIUM - SANFONA CENTRALIZADA
   ========================================================= */
.legal-page-body{
  background:
    radial-gradient(circle at 18% 5%, rgba(216,175,67,.18), transparent 30%),
    radial-gradient(circle at 88% 12%, rgba(255,255,255,.10), transparent 28%),
    linear-gradient(135deg,#061B35 0%,#071F3D 52%,#031326 100%) !important;
}

.legal-header{
  max-width:1180px;
  backdrop-filter:blur(14px);
  animation:legalFadeUp .55s ease both;
}

.legal-main{
  width:min(100% - 36px,1080px);
  margin:34px auto;
}

.legal-hero{
  position:relative;
  overflow:hidden;
  padding:58px 34px;
  background:
    radial-gradient(circle at 50% -10%, rgba(216,175,67,.16), transparent 36%),
    linear-gradient(135deg,#FFFCF6,#F8F8F6) !important;
  text-align:center;
  animation:legalFadeUp .55s ease both;
}

.legal-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, transparent, rgba(216,175,67,.18), transparent);
  height:5px;
}

.legal-hero h1{
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
}

.legal-hero p{
  font-size:1.05rem;
  line-height:1.7;
}

.legal-policy-nav{
  margin:22px auto 0;
  padding:16px;
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  border-radius:24px;
  background:rgba(255,252,246,.96);
  border:1px solid rgba(216,175,67,.28);
  box-shadow:0 18px 50px rgba(0,0,0,.12);
  animation:legalFadeUp .62s ease both;
}

.legal-policy-nav strong{
  color:#081D3A;
  margin-right:4px;
  font-weight:900;
}

.legal-policy-nav a{
  color:#081D3A;
  border:1px solid rgba(8,29,58,.10);
  border-radius:999px;
  padding:9px 13px;
  font-size:.9rem;
  font-weight:850;
  background:#fff;
  transition:.22s ease;
}

.legal-policy-nav a:hover,
.legal-policy-nav a.active{
  color:#081D3A;
  border-color:rgba(216,175,67,.55);
  background:linear-gradient(135deg,#E8C96D,#D6A936);
  transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(216,175,67,.18);
}

.legal-content-card{
  padding:0 !important;
  overflow:hidden;
  background:rgba(255,252,246,.98) !important;
  animation:legalFadeUp .7s ease both;
}

.legal-accordion-intro{
  display:grid;
  gap:6px;
  text-align:center;
  padding:26px 24px 22px;
  border-bottom:1px solid rgba(8,29,58,.08);
  background:
    radial-gradient(circle at 50% 0%, rgba(216,175,67,.10), transparent 46%),
    linear-gradient(135deg,#fff,#FFFCF6);
}

.legal-accordion-intro span{
  color:#B88D24;
  font-size:.76rem;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-weight:950;
}

.legal-accordion-intro strong{
  color:#081D3A;
  font-size:1.05rem;
}

.legal-accordion{
  display:grid;
  gap:0;
}

.legal-accordion-item{
  border-bottom:1px solid rgba(8,29,58,.08);
}

.legal-accordion-item:last-child{
  border-bottom:0;
}

.legal-accordion-button{
  width:100%;
  border:0;
  background:transparent;
  color:#081D3A;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  text-align:left;
  padding:22px 28px;
  cursor:pointer;
  transition:.24s ease;
}

.legal-accordion-button:hover{
  background:rgba(216,175,67,.08);
}

.legal-accordion-title{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}

.legal-accordion-title em{
  width:42px;
  height:42px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:rgba(216,175,67,.16);
  color:#A97914;
  font-style:normal;
  font-weight:950;
  flex:0 0 auto;
}

.legal-accordion-title strong{
  color:#081D3A;
  font-size:1.12rem;
  line-height:1.22;
  font-weight:900;
}

.legal-accordion-button i{
  width:40px;
  height:40px;
  border-radius:15px;
  background:#081D3A;
  color:#fff;
  display:grid;
  place-items:center;
  font-size:1.35rem;
  font-style:normal;
  flex:0 0 auto;
  transition:.24s ease;
}

.legal-accordion-item.open .legal-accordion-button{
  background:linear-gradient(135deg,rgba(216,175,67,.13),rgba(255,252,246,.85));
}

.legal-accordion-item.open .legal-accordion-button i{
  background:#D6A936;
  color:#081D3A;
  transform:rotate(180deg);
}

.legal-accordion-body{
  max-height:0;
  overflow:hidden;
  opacity:0;
  padding:0 28px;
  transition:max-height .42s ease, opacity .26s ease, padding .32s ease;
}

.legal-accordion-item.open .legal-accordion-body{
  max-height:680px;
  opacity:1;
  padding:0 28px 26px 84px;
}

.legal-accordion-body p{
  margin:0;
  color:#3B4450;
  font-weight:500;
  line-height:1.78;
  font-size:1rem;
}

.legal-accordion-body p + p{
  margin-top:12px;
}

.legal-contact-card{
  animation:legalFadeUp .76s ease both;
}

.legal-contact-card .btn{
  min-width:210px;
}

@keyframes legalFadeUp{
  from{opacity:0; transform:translateY(18px);}
  to{opacity:1; transform:translateY(0);}
}

@media(max-width:720px){
  .legal-main{
    width:min(100% - 24px,1080px);
  }

  .legal-hero{
    padding:38px 20px;
  }

  .legal-policy-nav{
    display:grid;
    text-align:center;
  }

  .legal-policy-nav a{
    width:100%;
  }

  .legal-accordion-button{
    padding:18px;
    align-items:flex-start;
  }

  .legal-accordion-title{
    align-items:flex-start;
  }

  .legal-accordion-title em{
    width:36px;
    height:36px;
    border-radius:14px;
    font-size:.85rem;
  }

  .legal-accordion-title strong{
    font-size:1rem;
  }

  .legal-accordion-button i{
    width:36px;
    height:36px;
    border-radius:14px;
  }

  .legal-accordion-item.open .legal-accordion-body{
    padding:0 18px 22px 18px;
    max-height:900px;
  }
}


/* =========================================================
   CORREÇÃO FINAL TERMOS - SEM MENU SUPERIOR E SANFONA OK
   ========================================================= */
.legal-header-simple{
  justify-content:center !important;
  text-align:center !important;
  width:min(100% - 36px,760px) !important;
  padding:16px 20px !important;
}

.legal-header-simple .legal-logo{
  display:flex !important;
  justify-content:center !important;
  width:100% !important;
}

.legal-header-simple .legal-logo img{
  margin:0 auto !important;
}

.legal-header nav,
.legal-policy-nav{
  display:none !important;
}

.legal-main{
  text-align:center !important;
}

.legal-hero{
  text-align:center !important;
}

.legal-hero h1,
.legal-hero p,
.legal-hero span{
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}

.legal-content-card{
  text-align:left !important;
}

.legal-accordion-intro{
  text-align:center !important;
}

.legal-accordion-item{
  background:#FFFCF6;
}

.legal-accordion-body{
  display:block !important;
  max-height:0;
  overflow:hidden !important;
  opacity:0;
  padding:0 28px !important;
  transition:max-height .42s ease, opacity .26s ease, padding .32s ease;
}

.legal-accordion-item.open .legal-accordion-body{
  max-height:900px !important;
  opacity:1 !important;
  padding:0 28px 26px 84px !important;
}

.legal-accordion-button{
  user-select:none;
}

.legal-accordion-button i{
  pointer-events:none;
}

@media(max-width:720px){
  .legal-header-simple{
    width:min(100% - 24px,760px) !important;
  }

  .legal-accordion-item.open .legal-accordion-body{
    padding:0 18px 22px 18px !important;
    max-height:1200px !important;
  }
}


/* Correção da logo do título/cabeçalho */
.brand img,
.auth-logo img,
.legal-logo img,
.footer-logo img {
  object-fit: contain !important;
  height: auto !important;
  max-height: none !important;
}

.brand img {
  width: min(285px, 58vw) !important;
}

@media (max-width: 560px) {
  .brand img {
    width: min(230px, 62vw) !important;
  }
}


/* Correção final das logos: título usa logo completa; pesquisa usa favicon separado */
.brand img,
.auth-logo img,
.legal-logo img,
.footer-logo img {
  object-fit: contain !important;
  height: auto !important;
  max-height: none !important;
}

.brand img {
  width: min(360px, 68vw) !important;
}

.auth-logo img,
.legal-logo img {
  width: min(430px, 88vw) !important;
}

.footer-logo img {
  width: min(340px, 80vw) !important;
}

@media (max-width: 560px) {
  .brand img {
    width: min(260px, 70vw) !important;
  }
}


/* Ajuste solicitado: logo do rodapé com fundo transparente */
.legal-footer .footer-brand img[src$="logo-footer-transparent.png"]{
  width:min(320px,100%);
  height:auto;
  object-fit:contain;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Foto pública dos CEOs/equipe */
.team-avatar.has-photo{
  overflow:hidden;
  padding:0;
  background:#fff;
  color:transparent;
}
.team-avatar.has-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:inherit;
  display:block;
}

/* Fundo interativo e animações premium */
body{
  position:relative;
  overflow-x:hidden;
  --pointer-x:50%;
  --pointer-y:28%;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(circle at var(--pointer-x) var(--pointer-y), rgba(224,185,95,.24), transparent 24rem),
    radial-gradient(circle at calc(100% - var(--pointer-x)) calc(100% - var(--pointer-y)), rgba(8,29,58,.10), transparent 28rem),
    linear-gradient(135deg, rgba(255,252,246,.74), rgba(247,242,232,.38));
  opacity:.92;
  transition:background-position .18s ease;
  animation:alvionteBgBreath 9s ease-in-out infinite;
}
body > *{position:relative;z-index:1}.site-loader{z-index:99999}.site-header{z-index:1000}

@keyframes alvionteBgBreath{
  0%,100%{filter:saturate(1) brightness(1)}
  50%{filter:saturate(1.15) brightness(1.03)}
}

.nav-menu a:not(.nav-cta):hover,
.footer a:hover,
.contact-option:hover span,
.solution-card:hover h3,
.team-card:hover h3,
.method-card:hover h3,
.review-card:hover strong{
  color:var(--gold);
}

.solution-card,.team-card,.method-card,.contact-option,.review-card,.meaning-card,.support-note,.reviews-summary div,.impact-item,.btn,.nav-cta{
  will-change:transform, box-shadow, border-color, background-color, color;
}

.solution-card:hover,.team-card:hover,.method-card:hover,.contact-option:hover,.review-card:hover,.support-note:hover,.reviews-summary div:hover{
  transform:translateY(-8px) scale(1.012);
  border-color:rgba(200,156,58,.66);
  box-shadow:0 28px 70px rgba(8,29,58,.15), 0 12px 28px rgba(200,156,58,.12);
  background:linear-gradient(145deg,#ffffff,#fff7e8);
}

.solution-card:hover i,.method-card:hover span,.team-card:hover .team-avatar{
  background:linear-gradient(135deg,var(--gold2),var(--gold));
  color:var(--navy);
  transform:rotate(-4deg) scale(1.05);
  box-shadow:0 18px 34px rgba(200,156,58,.28);
}

.contact-option.highlight:hover{
  background:linear-gradient(135deg,#0c2a51,#081D3A 62%,#0f3768);
  border-color:rgba(224,185,95,.62);
}

.btn:hover,.nav-cta:hover{
  background:linear-gradient(135deg,#f0cf7a,var(--gold),#b88424);
  letter-spacing:.02em;
}

.hero-card:hover{
  transform:translateY(-10px) scale(1.015);
  border-color:rgba(224,185,95,.64);
  box-shadow:0 42px 110px rgba(0,0,0,.30),0 18px 40px rgba(200,156,58,.15);
}

@media (prefers-reduced-motion: reduce){
  body::before,.solution-card,.team-card,.method-card,.contact-option,.review-card,.support-note,.reviews-summary div,.hero-card,.btn,.nav-cta{
    animation:none!important;
    transition:none!important;
  }
}

/* ===== Refinamento visual: fundo interativo da área de avaliações ===== */
.reviews-section{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg,#fffdf9 0%,#fbf6ec 52%,#f8f1e4 100%);
}
.reviews-section::before,
.reviews-section::after{
  content:"";
  position:absolute;
  inset:auto;
  pointer-events:none;
  z-index:0;
}
.reviews-section::before{
  top:-140px;
  left:-120px;
  width:420px;
  height:420px;
  border-radius:50%;
  background:
    radial-gradient(circle, rgba(214,169,54,.18) 0%, rgba(214,169,54,.08) 32%, transparent 70%);
  filter:blur(6px);
  animation:reviewsOrbFloat 16s ease-in-out infinite;
}
.reviews-section::after{
  right:-180px;
  bottom:-160px;
  width:520px;
  height:520px;
  border-radius:50%;
  background:
    radial-gradient(circle, rgba(8,29,58,.14) 0%, rgba(8,29,58,.06) 32%, transparent 72%);
  filter:blur(10px);
  animation:reviewsOrbFloatReverse 18s ease-in-out infinite;
}
.reviews-section .container{
  position:relative;
  z-index:1;
}

.after-sale-note{
  --note-x:50%;
  --note-y:50%;
  position:relative;
  overflow:hidden;
  isolation:isolate;
  margin-top:34px;
  padding:32px 30px 26px;
  border-radius:32px;
  text-align:center;
  border:1px solid rgba(214,169,54,.26);
  background:
    linear-gradient(145deg, rgba(255,255,255,.92), rgba(247,240,227,.97));
  backdrop-filter:blur(10px);
  box-shadow:
    0 18px 42px rgba(8,29,58,.08),
    0 0 0 1px rgba(255,255,255,.56) inset;
  transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.after-sale-note::before{
  content:"";
  position:absolute;
  inset:-25%;
  z-index:-2;
  background:
    radial-gradient(circle at var(--note-x) var(--note-y), rgba(214,169,54,.22), transparent 20rem),
    radial-gradient(circle at 18% 20%, rgba(8,29,58,.10), transparent 16rem),
    radial-gradient(circle at 82% 82%, rgba(255,255,255,.92), transparent 14rem);
  animation:afterSaleAmbient 14s ease-in-out infinite;
}
.after-sale-note::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(115deg, transparent 0%, rgba(255,255,255,.55) 20%, transparent 42%),
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.55), transparent 42%);
  transform:translateX(-55%);
  animation:afterSaleShine 7s ease-in-out infinite;
}
.after-sale-note:hover{
  transform:translateY(-6px);
  border-color:rgba(214,169,54,.44);
  box-shadow:
    0 28px 70px rgba(8,29,58,.14),
    0 0 0 1px rgba(255,255,255,.72) inset;
}
.after-sale-headline,
.after-sale-note p,
.after-sale-tags{
  position:relative;
  z-index:2;
}
.after-sale-headline{
  display:grid;
  justify-items:center;
  gap:12px;
  margin-bottom:10px;
}
.after-sale-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 16px;
  border-radius:999px;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--navy);
  background:linear-gradient(135deg, rgba(214,169,54,.24), rgba(255,255,255,.9));
  border:1px solid rgba(214,169,54,.25);
  box-shadow:0 10px 24px rgba(214,169,54,.16);
}
.after-sale-note strong{
  display:block;
  color:var(--navy);
  font-family:"Playfair Display",serif;
  font-size:clamp(1.55rem,2.5vw,2.2rem);
  letter-spacing:-.02em;
}
.after-sale-note p{
  color:#5f6f84;
  max-width:820px;
  margin:12px auto 0;
  font-size:1.03rem;
  line-height:1.8;
}
.after-sale-tags{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
  margin-top:22px;
}
.after-sale-tags span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  padding:10px 14px;
  border-radius:999px;
  font-size:.84rem;
  font-weight:700;
  color:var(--navy);
  background:rgba(255,255,255,.7);
  border:1px solid rgba(214,169,54,.22);
  box-shadow:0 8px 22px rgba(8,29,58,.06);
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease;
  animation:afterSaleTagFloat 5s ease-in-out infinite;
}
.after-sale-tags span::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:linear-gradient(135deg,#f0cf7a,#d6a936);
  box-shadow:0 0 12px rgba(214,169,54,.5);
}
.after-sale-tags span:nth-child(2){animation-delay:.6s}
.after-sale-tags span:nth-child(3){animation-delay:1.2s}
.after-sale-tags span:hover{
  transform:translateY(-4px) scale(1.02);
  background:#fff;
  border-color:rgba(214,169,54,.38);
  box-shadow:0 14px 28px rgba(8,29,58,.10);
}

@keyframes reviewsOrbFloat{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(40px,32px,0) scale(1.08)}
}
@keyframes reviewsOrbFloatReverse{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(-36px,-28px,0) scale(1.06)}
}
@keyframes afterSaleAmbient{
  0%,100%{transform:scale(1) rotate(0deg)}
  50%{transform:scale(1.06) rotate(4deg)}
}
@keyframes afterSaleShine{
  0%,100%{transform:translateX(-55%); opacity:.25}
  45%{transform:translateX(0%); opacity:.55}
  70%{transform:translateX(20%); opacity:.12}
}
@keyframes afterSaleTagFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-4px)}
}

@media (max-width: 860px){
  .after-sale-note{
    padding:26px 18px 20px;
    border-radius:26px;
  }
  .after-sale-note p{
    font-size:.98rem;
    line-height:1.7;
  }
  .after-sale-tags{
    gap:10px;
  }
  .after-sale-tags span{
    width:100%;
    justify-content:center;
  }
}

@media (prefers-reduced-motion: reduce){
  .reviews-section::before,
  .reviews-section::after,
  .after-sale-note::before,
  .after-sale-note::after,
  .after-sale-tags span{
    animation:none !important;
  }
}


/* ===== Refinamento visual principal: história, equipe e títulos ===== */
h1{
  font-size:clamp(2.8rem,5.8vw,5.35rem) !important;
}
h2{
  font-size:clamp(2rem,3.7vw,3.35rem) !important;
}
.hero-card h2{
  font-size:clamp(1.7rem,2.9vw,2.75rem) !important;
}
.meaning-card h3{
  font-size:clamp(2rem,3.2vw,3.15rem) !important;
}
.story-section,
#historia{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 14%, rgba(214,169,54,.12), transparent 26rem),
    radial-gradient(circle at 88% 82%, rgba(8,29,58,.08), transparent 30rem),
    linear-gradient(180deg,#fffefb 0%, #fbf6ec 54%, #f7f0e4 100%);
}
.story-section::before,
.story-section::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  z-index:0;
}
.story-section::before{
  width:460px;
  height:460px;
  top:-160px;
  right:-120px;
  background:radial-gradient(circle, rgba(214,169,54,.18), rgba(214,169,54,.06) 38%, transparent 72%);
  filter:blur(8px);
  animation:storyFloatOne 16s ease-in-out infinite;
}
.story-section::after{
  width:380px;
  height:380px;
  left:-130px;
  bottom:-120px;
  background:radial-gradient(circle, rgba(8,29,58,.12), rgba(8,29,58,.04) 38%, transparent 70%);
  filter:blur(8px);
  animation:storyFloatTwo 18s ease-in-out infinite;
}
.story-section .container,
.story-section .story-grid{
  position:relative;
  z-index:1;
}
.section-copy,
.meaning-card{
  position:relative;
}
.story-section .section-copy{
  padding:34px 30px;
  border-radius:30px;
  background:rgba(255,255,255,.55);
  border:1px solid rgba(214,169,54,.14);
  box-shadow:0 18px 40px rgba(8,29,58,.06);
  backdrop-filter:blur(8px);
}
.story-section .section-copy::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:
    linear-gradient(135deg, rgba(255,255,255,.18), transparent 45%),
    radial-gradient(circle at var(--pointer-x) var(--pointer-y), rgba(214,169,54,.12), transparent 18rem);
  pointer-events:none;
}
.story-section .section-copy > *{
  position:relative;
  z-index:1;
}
.meaning-card{
  overflow:hidden;
  border-radius:34px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.95), rgba(247,240,227,.98));
  border:1px solid rgba(214,169,54,.24);
  box-shadow:0 26px 60px rgba(8,29,58,.10);
  transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.meaning-card::before{
  content:"";
  position:absolute;
  inset:-20%;
  background:
    radial-gradient(circle at var(--pointer-x) var(--pointer-y), rgba(214,169,54,.16), transparent 18rem),
    radial-gradient(circle at 18% 18%, rgba(8,29,58,.08), transparent 16rem);
  z-index:0;
  pointer-events:none;
}
.meaning-card > *{
  position:relative;
  z-index:1;
}
.meaning-card:hover{
  transform:translateY(-8px);
  border-color:rgba(214,169,54,.42);
  box-shadow:0 34px 80px rgba(8,29,58,.14);
}
.meaning-card ul{
  gap:14px;
}
.meaning-card li{
  background:rgba(255,255,255,.7);
  border:1px solid rgba(214,169,54,.16);
  box-shadow:0 10px 22px rgba(8,29,58,.04);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.meaning-card li:hover{
  transform:translateX(6px);
  border-color:rgba(214,169,54,.32);
  box-shadow:0 14px 26px rgba(8,29,58,.08);
}
.team-grid{
  gap:24px;
}
.team-card{
  position:relative;
  overflow:hidden;
  border-radius:30px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.98), rgba(247,240,227,.98));
}
.team-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.18), transparent 44%),
    radial-gradient(circle at var(--pointer-x) var(--pointer-y), rgba(214,169,54,.10), transparent 16rem);
  pointer-events:none;
}
.team-card > *{
  position:relative;
  z-index:1;
}
.team-avatar{
  width:82px;
  height:82px;
  border-radius:24px;
  font-size:1.35rem;
  box-shadow:0 16px 34px rgba(8,29,58,.14);
}
.team-avatar.has-photo{
  background:#fff;
  border:1px solid rgba(214,169,54,.22);
}
@keyframes storyFloatOne{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(-34px,28px,0) scale(1.06)}
}
@keyframes storyFloatTwo{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(32px,-22px,0) scale(1.08)}
}
@media (max-width: 860px){
  .story-section .section-copy{
    padding:26px 20px;
    border-radius:24px;
  }
  .team-avatar{
    width:74px;
    height:74px;
    border-radius:22px;
  }
}
@media (prefers-reduced-motion: reduce){
  .story-section::before,
  .story-section::after{
    animation:none !important;
  }
}

/* ===== Ajuste desktop compacto e organizado ===== */
@media (min-width: 1024px){
  body{
    font-size:15px;
    line-height:1.58;
  }

  .container{
    width:min(1080px,calc(100% - 56px));
  }

  .site-header .header-inner{
    min-height:96px;
    gap:20px;
  }

  .brand img{
    width:380px !important;
    max-width:min(38vw,380px);
    height:auto;
  }

  .nav-menu{
    gap:18px;
    font-size:.82rem;
  }

  .nav-menu a{
    padding:6px 2px;
  }

  .nav-cta{
    padding:9px 15px;
  }

  .section{
    padding:76px 0 !important;
  }

  .hero{
    padding:122px 0 70px !important;
  }

  .hero-grid,
  .story-grid,
  .contact-grid{
    gap:44px !important;
  }

  h1{
    font-size:clamp(2.75rem,4.8vw,4.7rem) !important;
    max-width:640px;
  }

  h2{
    font-size:clamp(1.85rem,3vw,2.85rem) !important;
    line-height:1.05;
  }

  .hero-card h2{
    font-size:clamp(1.55rem,2.25vw,2.25rem) !important;
  }

  .meaning-card h3{
    font-size:clamp(1.9rem,2.7vw,2.75rem) !important;
  }

  .section-heading{
    max-width:700px;
    margin-bottom:34px !important;
  }

  .section-copy p,
  .section-heading p,
  .hero-text,
  .meaning-card p,
  .solution-card p,
  .team-card p,
  .method-card p,
  .review-card p,
  .after-sale-note p,
  .contact-choice span,
  .contact-option span{
    font-size:.94rem !important;
    line-height:1.62 !important;
  }

  .hero-text{
    max-width:570px;
    margin:20px 0 26px !important;
  }

  .eyebrow,
  .card-kicker{
    font-size:.68rem !important;
    letter-spacing:.16em !important;
    margin-bottom:12px !important;
  }

  .btn{
    min-height:46px;
    padding:0 20px;
    font-size:.88rem;
  }

  .hero-proof{
    gap:10px;
    margin-top:26px !important;
  }

  .hero-proof span{
    padding:8px 12px;
    font-size:.78rem;
  }

  .hero-card{
    padding:30px !important;
    border-radius:28px !important;
  }

  .hero-card img{
    width:min(170px,48%) !important;
    margin-bottom:18px !important;
  }

  .story-section .section-copy{
    padding:26px 24px !important;
    border-radius:26px !important;
  }

  .meaning-card,
  .solution-card,
  .team-card,
  .method-card,
  .contact-form,
  .review-card,
  .review-metric,
  .after-sale-note,
  .contact-choice{
    padding:22px !important;
    border-radius:22px !important;
  }

  .meaning-card ul{
    margin-top:16px !important;
    gap:10px !important;
  }

  .meaning-card li{
    padding:12px 14px !important;
    font-size:.9rem !important;
  }

  .solutions-grid,
  .team-grid,
  .method-steps,
  .reviews-grid{
    gap:16px !important;
  }

  .solution-card i,
  .method-card span{
    width:40px !important;
    height:40px !important;
    border-radius:14px !important;
    font-size:.86rem !important;
  }

  .team-avatar{
    width:66px !important;
    height:66px !important;
    border-radius:20px !important;
    font-size:1.02rem !important;
  }

  .solution-card h3,
  .team-card h3,
  .method-card h3{
    margin:12px 0 7px !important;
    font-size:1.02rem !important;
  }

  .team-card strong{
    margin-bottom:8px !important;
    font-size:.83rem !important;
  }

  .impact-item{
    padding:24px 18px !important;
  }

  .impact-item strong{
    font-size:.98rem !important;
  }

  .impact-item p{
    font-size:.82rem !important;
    line-height:1.5 !important;
  }

  .reviews-summary{
    gap:14px !important;
  }

  .review-metric strong{
    font-size:2.35rem !important;
  }

  .review-metric small{
    font-size:.64rem !important;
    margin-bottom:8px !important;
  }

  .review-card{
    min-height:178px !important;
  }

  .review-card .stars{
    font-size:1.02rem !important;
    margin-bottom:8px !important;
  }

  .after-sale-headline{
    gap:9px !important;
  }

  .after-sale-note strong{
    font-size:clamp(1.35rem,2vw,1.8rem) !important;
  }

  .after-sale-pill,
  .after-sale-tags span{
    font-size:.74rem !important;
    min-height:34px !important;
    padding:8px 12px !important;
  }

  .contact-choice-grid{
    gap:16px !important;
  }

  .contact-choice strong{
    font-size:1rem !important;
  }

  .support-widget{
    right:20px;
    bottom:20px;
  }

  .support-bubble{
    width:52px;
    height:52px;
  }

  .whatsapp-floating,
  .instagram-floating{
    width:54px !important;
    height:54px !important;
  }

  .footer{
    padding-top:40px !important;
  }

  .footer-grid{
    gap:32px !important;
  }

  .footer img{
    width:250px !important;
  }

  .footer-bottom{
    margin-top:30px !important;
    font-size:.84rem !important;
  }
}

@media (min-width: 1280px){
  .container{
    width:min(1100px,calc(100% - 72px));
  }

  .section{
    padding:82px 0 !important;
  }

  .hero{
    padding:128px 0 74px !important;
  }
}

/* ===== Consulta de protocolo ===== */
body.protocol-modal-active{
  overflow:hidden;
}
.protocol-modal{
  position:fixed;
  inset:0;
  z-index:2500;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.protocol-modal.open{
  display:flex;
}
.protocol-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(4,18,37,.74);
  backdrop-filter:blur(12px);
}
.protocol-panel{
  position:relative;
  z-index:1;
  width:min(820px,100%);
  max-height:92vh;
  overflow:auto;
  border-radius:32px;
  padding:30px;
  background:
    radial-gradient(circle at 14% 10%, rgba(216,175,67,.18), transparent 26rem),
    linear-gradient(145deg,#ffffff,#f8f1e5);
  border:1px solid rgba(200,156,58,.32);
  box-shadow:0 34px 90px rgba(0,0,0,.26);
}
.protocol-close{
  position:absolute;
  top:16px;
  right:18px;
  width:40px;
  height:40px;
  border:0;
  border-radius:14px;
  background:rgba(8,29,58,.08);
  color:var(--navy);
  font-size:1.55rem;
  font-weight:900;
  cursor:pointer;
  transition:.22s ease;
}
.protocol-close:hover{
  background:var(--navy);
  color:var(--gold);
  transform:translateY(-2px);
}
.protocol-panel-head{
  max-width:660px;
  margin-bottom:22px;
  padding-right:42px;
}
.protocol-panel-head h2{
  font-size:clamp(1.75rem,2.8vw,2.65rem) !important;
  margin-bottom:10px;
}
.protocol-panel-head p{
  margin:0;
  color:var(--gray);
  line-height:1.7;
}
.protocol-form{
  display:grid;
  gap:14px;
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(200,156,58,.18);
  box-shadow:0 16px 40px rgba(8,29,58,.06);
}
.protocol-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.protocol-form-grid label:first-child{
  grid-column:1 / -1;
}
.protocol-form label{
  display:grid;
  gap:7px;
  color:var(--navy);
  font-size:.9rem;
  font-weight:800;
}
.protocol-form input{
  width:100%;
  border:1px solid rgba(8,29,58,.14);
  border-radius:15px;
  padding:13px 14px;
  font:inherit;
  background:#fffdf8;
  outline:none;
  transition:.22s ease;
}
.protocol-form input:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 4px rgba(200,156,58,.14);
}
.protocol-helper{
  margin:0;
  color:var(--gray);
  font-size:.86rem;
  line-height:1.55;
}
.protocol-form button:disabled{
  opacity:.65;
  cursor:not-allowed;
  transform:none;
}
.protocol-result{
  margin-top:18px;
}
.protocol-result-card{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  padding:24px;
  background:linear-gradient(145deg,#081d3a,#071529);
  color:#fff;
  box-shadow:0 22px 54px rgba(8,29,58,.22);
}
.protocol-result-card::before{
  content:"";
  position:absolute;
  inset:-40%;
  background:
    radial-gradient(circle at 15% 18%, rgba(216,175,67,.22), transparent 18rem),
    radial-gradient(circle at 82% 80%, rgba(255,255,255,.10), transparent 18rem);
  animation:protocolGlow 12s ease-in-out infinite;
  pointer-events:none;
}
.protocol-result-card > *{
  position:relative;
  z-index:1;
}
.protocol-result-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:18px;
}
.protocol-kicker{
  display:block;
  color:var(--gold);
  font-weight:900;
  font-size:.76rem;
  letter-spacing:.15em;
  text-transform:uppercase;
  margin-bottom:5px;
}
.protocol-result-top h3{
  margin:0;
  font-size:1.55rem;
  line-height:1.2;
  word-break:break-word;
}
.protocol-status-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 13px;
  border-radius:999px;
  color:var(--navy);
  background:linear-gradient(135deg,var(--gold-2),var(--gold));
  font-size:.82rem;
  font-weight:900;
  white-space:nowrap;
}
.protocol-result-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-bottom:16px;
}
.protocol-result-line{
  padding:13px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(216,175,67,.16);
}
.protocol-result-line span{
  display:block;
  color:rgba(255,255,255,.62);
  font-size:.76rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.protocol-result-line strong{
  display:block;
  margin-top:3px;
  color:#fff;
  font-size:.96rem;
  line-height:1.4;
  word-break:break-word;
}
.protocol-summary,
.protocol-next-step,
.protocol-history article{
  background:rgba(255,255,255,.075);
  border:1px solid rgba(216,175,67,.16);
  border-radius:18px;
}
.protocol-summary{
  margin:0 0 12px;
  padding:15px 16px;
  color:rgba(255,255,255,.78);
  line-height:1.65;
}
.protocol-next-step{
  padding:15px 16px;
  margin-bottom:14px;
}
.protocol-next-step strong,
.protocol-history h3{
  color:var(--gold);
}
.protocol-next-step p{
  margin:5px 0 0;
  color:rgba(255,255,255,.80);
  line-height:1.62;
}
.protocol-history{
  display:grid;
  gap:10px;
}
.protocol-history h3{
  margin:0 0 2px;
  font-size:1rem;
}
.protocol-history article{
  padding:14px 15px;
}
.protocol-history article span{
  color:rgba(255,255,255,.58);
  font-size:.8rem;
  font-weight:800;
}
.protocol-history article strong{
  display:block;
  margin:3px 0;
  color:#fff;
}
.protocol-history article p{
  margin:0;
  color:rgba(255,255,255,.75);
  line-height:1.55;
}
@keyframes protocolGlow{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(22px,-18px,0) scale(1.04)}
}
@media (max-width:720px){
  .protocol-modal{padding:14px;}
  .protocol-panel{border-radius:26px;padding:22px 18px;}
  .protocol-panel-head{padding-right:34px;}
  .protocol-form-grid,.protocol-result-grid{grid-template-columns:1fr;}
  .protocol-result-top{flex-direction:column;}
  .protocol-status-pill{white-space:normal;}
}
@media (prefers-reduced-motion: reduce){
  .protocol-result-card::before{animation:none !important;}
}

/* ===== Anexos de imagem opcionais ===== */
.image-attach-field,
.admin-attachment-field{
  display:grid;
  gap:8px;
  padding:14px;
  border-radius:16px;
  background:rgba(8,29,58,.035);
  border:1px dashed rgba(200,156,58,.45);
  color:var(--navy);
  font-weight:800;
}
.image-attach-field input,
.admin-attachment-field input{
  width:100%;
  padding:10px;
  border-radius:12px;
  background:#fff;
  border:1px solid rgba(8,29,58,.12);
}
.image-attach-field small,
.admin-attachment-field small{
  color:var(--gray);
  font-size:.82rem;
  line-height:1.45;
  font-weight:600;
}
.image-attachment-preview,
.admin-attachment-preview,
.message-attachments{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:8px;
}
.image-attachment-thumb,
.message-attachment-thumb{
  position:relative;
  width:94px;
  border-radius:14px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(200,156,58,.28);
  box-shadow:0 10px 22px rgba(8,29,58,.08);
}
.image-attachment-thumb img,
.message-attachment-thumb img{
  width:100%;
  height:72px;
  object-fit:cover;
  display:block;
}
.image-attachment-thumb span,
.message-attachment-thumb span{
  display:block;
  padding:6px 7px;
  color:#5f6f84;
  font-size:.72rem;
  line-height:1.25;
  word-break:break-word;
  background:#FFFCF6;
}
.message-attachments{
  margin-top:12px;
}
.message-attachment-thumb{
  width:132px;
}
.message-attachment-thumb img{
  height:96px;
}
@media (max-width:560px){
  .image-attachment-thumb{width:86px}
  .message-attachment-thumb{width:46%}
}


/* ===== Avaliações com logos/fotos dos clientes ===== */
.fire{display:none!important;}
.review-card-public{
  gap:16px;
}
.review-card-head{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}
.review-card-head > div{
  min-width:0;
}
.review-avatar,
.review-marquee-logo{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:22px;
  object-fit:cover;
  background:linear-gradient(135deg,rgba(8,29,58,.96),rgba(12,45,84,.94));
  color:var(--gold);
  border:1px solid rgba(200,156,58,.42);
  box-shadow:0 14px 30px rgba(8,29,58,.16);
  font-weight:900;
  letter-spacing:.04em;
}
.review-avatar{
  width:62px;
  height:62px;
  font-size:1.05rem;
}
.review-marquee-logo{
  width:52px;
  height:52px;
  border-radius:18px;
  font-size:.92rem;
}
.review-avatar-fallback{
  font-family:"Playfair Display",Georgia,serif;
}
.reviews-marquee{
  position:relative;
  overflow:hidden;
  margin-top:26px;
  padding:22px 0 6px;
  border-top:1px solid rgba(200,156,58,.18);
}
.reviews-marquee-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:16px;
  margin:0 0 16px;
}
.reviews-marquee-head span{
  color:var(--gold);
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-size:.72rem;
}
.reviews-marquee-head strong{
  color:var(--navy);
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(1.35rem,2.4vw,2rem);
  line-height:1.1;
}
.reviews-marquee-track{
  position:relative;
  overflow:hidden;
  width:100%;
  mask-image:linear-gradient(90deg,transparent 0%,#000 8%,#000 92%,transparent 100%);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 8%,#000 92%,transparent 100%);
}
.reviews-marquee-row{
  display:flex;
  align-items:stretch;
  gap:16px;
  width:max-content;
  animation:reviewsMarqueeMove 34s linear infinite;
}
.reviews-marquee-track:hover .reviews-marquee-row{
  animation-play-state:paused;
}
.review-marquee-card{
  width:310px;
  min-height:88px;
  display:flex;
  align-items:center;
  gap:14px;
  padding:16px 18px;
  border-radius:24px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(200,156,58,.24);
  box-shadow:0 16px 38px rgba(8,29,58,.08);
  backdrop-filter:blur(10px);
}
.review-marquee-card div:last-child{
  min-width:0;
}
.review-marquee-card strong{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--navy);
  font-size:.98rem;
  line-height:1.2;
}
.review-marquee-card span{
  display:block;
  margin-top:6px;
  color:var(--gold);
  font-weight:900;
  font-size:.86rem;
  letter-spacing:.02em;
}
@keyframes reviewsMarqueeMove{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@media(max-width:860px){
  .review-card-head{align-items:flex-start;}
  .reviews-marquee-head{display:grid;justify-items:start;}
  .review-marquee-card{width:270px;}
}
@media(prefers-reduced-motion:reduce){
  .reviews-marquee-row{animation:none!important;}
}

/* ===== Ajuste final: remover bloco de vendas e deixar avaliações só quando existirem ===== */
.sales-highlight,
#vendas{
  display:none!important;
}
.sales-counter::after,
.fire,
.card.fire-card::after{
  content:none!important;
  display:none!important;
}

.reviews-section.hidden{
  display:none!important;
}
.reviews-section.has-public-reviews{
  position:relative;
  overflow:hidden;
  display:block!important;
  background:
    radial-gradient(circle at 12% 12%, rgba(200,156,58,.16), transparent 26rem),
    radial-gradient(circle at 88% 78%, rgba(8,29,58,.10), transparent 32rem),
    linear-gradient(180deg,#fffdf9 0%,#fbf6ec 52%,#f7efe2 100%);
}
.reviews-section.has-public-reviews::before,
.reviews-section.has-public-reviews::after{
  content:"";
  position:absolute;
  pointer-events:none;
  border-radius:50%;
  z-index:0;
}
.reviews-section.has-public-reviews::before{
  width:440px;
  height:440px;
  top:-180px;
  right:-130px;
  background:radial-gradient(circle, rgba(200,156,58,.22), rgba(200,156,58,.07) 40%, transparent 72%);
  filter:blur(8px);
  animation:reviewSceneOrbitOne 18s ease-in-out infinite;
}
.reviews-section.has-public-reviews::after{
  width:380px;
  height:380px;
  left:-130px;
  bottom:-150px;
  background:radial-gradient(circle, rgba(8,29,58,.14), rgba(8,29,58,.045) 40%, transparent 72%);
  filter:blur(9px);
  animation:reviewSceneOrbitTwo 21s ease-in-out infinite;
}
.reviews-section.has-public-reviews .container{
  position:relative;
  z-index:1;
}
.reviews-section.has-public-reviews .section-heading{
  position:relative;
  padding:28px 30px;
  border-radius:30px;
  background:rgba(255,255,255,.62);
  border:1px solid rgba(200,156,58,.20);
  box-shadow:0 18px 45px rgba(8,29,58,.06);
  overflow:hidden;
}
.reviews-section.has-public-reviews .section-heading::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(115deg, transparent, rgba(255,255,255,.72), transparent),
    radial-gradient(circle at var(--pointer-x) var(--pointer-y), rgba(200,156,58,.10), transparent 16rem);
  transform:translateX(-55%);
  animation:reviewHeadingShine 7s ease-in-out infinite;
  pointer-events:none;
}
.reviews-section.has-public-reviews .section-heading > *{
  position:relative;
  z-index:1;
}
.reviews-panel{
  position:relative;
  overflow:hidden;
  border-radius:34px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.92), rgba(247,240,227,.96));
  border:1px solid rgba(200,156,58,.24);
  box-shadow:0 28px 80px rgba(8,29,58,.12);
}
.reviews-section.has-public-reviews .reviews-panel::before{
  content:"";
  position:absolute;
  inset:-1px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.45), transparent 45%),
    radial-gradient(circle at 20% 10%, rgba(200,156,58,.14), transparent 20rem),
    radial-gradient(circle at 80% 88%, rgba(8,29,58,.08), transparent 22rem);
  pointer-events:none;
}
.reviews-section.has-public-reviews .reviews-panel > *{
  position:relative;
  z-index:1;
}
.reviews-summary{
  animation:reviewLiftIn .75s ease both;
}
.review-metric{
  position:relative;
  overflow:hidden;
  transition:transform .32s ease, box-shadow .32s ease, border-color .32s ease;
}
.review-metric::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at var(--pointer-x) var(--pointer-y), rgba(200,156,58,.16), transparent 12rem);
  opacity:0;
  transition:opacity .3s ease;
  pointer-events:none;
}
.review-metric:hover{
  transform:translateY(-5px);
  border-color:rgba(200,156,58,.42);
  box-shadow:0 18px 42px rgba(8,29,58,.10);
}
.review-metric:hover::after{
  opacity:1;
}
.review-card-public{
  position:relative;
  overflow:hidden;
  animation:reviewCardEntrance .7s ease both;
  animation-delay:var(--review-delay,0s);
  transform-origin:center bottom;
}
.review-card-public:hover{
  transform:translateY(-7px) scale(1.012)!important;
  border-color:rgba(200,156,58,.48);
  box-shadow:0 24px 60px rgba(8,29,58,.13);
}
.review-card-shine{
  position:absolute;
  inset:-40%;
  background:linear-gradient(115deg, transparent 0%, rgba(255,255,255,.38) 44%, transparent 60%);
  transform:translateX(-55%) rotate(8deg);
  animation:reviewCardShine 6.4s ease-in-out infinite;
  pointer-events:none;
}
.review-card-public:nth-child(2n) .review-card-shine{animation-delay:1.2s}
.review-card-public:nth-child(3n) .review-card-shine{animation-delay:2.1s}
.review-avatar,
.review-marquee-logo{
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.review-card-public:hover .review-avatar,
.review-marquee-card:hover .review-marquee-logo{
  transform:translateY(-3px) rotate(-2deg) scale(1.05);
  border-color:rgba(200,156,58,.70);
  box-shadow:0 18px 36px rgba(8,29,58,.20);
}
.reviews-marquee{
  isolation:isolate;
  border-top:0;
  margin-top:32px;
  padding:28px 22px 22px;
  border-radius:30px;
  background:linear-gradient(135deg, rgba(8,29,58,.97), rgba(7,21,38,.96));
  box-shadow:inset 0 0 0 1px rgba(200,156,58,.24), 0 22px 55px rgba(8,29,58,.12);
}
.reviews-marquee-bg{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
}
.reviews-marquee-bg span{
  position:absolute;
  display:block;
  width:10px;
  height:10px;
  border-radius:50%;
  background:rgba(200,156,58,.70);
  box-shadow:0 0 24px rgba(200,156,58,.35);
  animation:reviewSparkFloat 8s ease-in-out infinite;
}
.reviews-marquee-bg span:nth-child(1){top:18%;left:10%;animation-delay:0s}
.reviews-marquee-bg span:nth-child(2){top:66%;left:52%;animation-delay:1.8s}
.reviews-marquee-bg span:nth-child(3){top:28%;right:12%;animation-delay:3.1s}
.reviews-marquee-head,
.reviews-marquee-track{
  position:relative;
  z-index:1;
}
.reviews-marquee-head span{
  color:#E0B95F;
}
.reviews-marquee-head strong{
  color:#fff;
}
.review-marquee-card{
  position:relative;
  overflow:hidden;
  background:rgba(255,255,255,.92);
  animation:reviewCardPulse 5.5s ease-in-out infinite;
  animation-delay:var(--review-delay,0s);
}
.review-marquee-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(115deg, transparent, rgba(255,255,255,.46), transparent);
  transform:translateX(-85%);
  animation:reviewMiniShine 5.2s ease-in-out infinite;
  pointer-events:none;
}
.after-sale-note{
  display:none!important;
}

@keyframes reviewSceneOrbitOne{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(-40px,32px,0) scale(1.07)}
}
@keyframes reviewSceneOrbitTwo{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(36px,-30px,0) scale(1.08)}
}
@keyframes reviewHeadingShine{
  0%,100%{transform:translateX(-55%);opacity:.22}
  45%{transform:translateX(0);opacity:.55}
  70%{transform:translateX(22%);opacity:.12}
}
@keyframes reviewLiftIn{
  from{opacity:0;transform:translateY(16px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes reviewCardEntrance{
  from{opacity:0;transform:translateY(22px) scale(.96)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes reviewCardShine{
  0%,100%{transform:translateX(-65%) rotate(8deg);opacity:0}
  42%{opacity:.55}
  62%{transform:translateX(55%) rotate(8deg);opacity:0}
}
@keyframes reviewSparkFloat{
  0%,100%{transform:translate3d(0,0,0) scale(.8);opacity:.45}
  50%{transform:translate3d(18px,-18px,0) scale(1.24);opacity:1}
}
@keyframes reviewCardPulse{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-3px)}
}
@keyframes reviewMiniShine{
  0%,100%{transform:translateX(-85%);opacity:0}
  48%{opacity:.42}
  68%{transform:translateX(85%);opacity:0}
}

@media(max-width:860px){
  .reviews-section.has-public-reviews .section-heading{
    padding:22px 18px;
    border-radius:24px;
  }
  .reviews-panel{
    border-radius:26px;
  }
  .reviews-marquee{
    padding:22px 14px 18px;
    border-radius:24px;
  }
}
@media(prefers-reduced-motion:reduce){
  .reviews-section.has-public-reviews::before,
  .reviews-section.has-public-reviews::after,
  .reviews-section.has-public-reviews .section-heading::before,
  .reviews-summary,
  .review-card-public,
  .review-card-shine,
  .reviews-marquee-bg span,
  .review-marquee-card,
  .review-marquee-card::after{
    animation:none!important;
  }
}

/* ===== Hero principal: fundo interativo e visual mais estratégico ===== */
.hero{
  isolation:isolate;
  background:
    radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,50%), rgba(214,169,54,.16), transparent 24%),
    radial-gradient(circle at 20% 18%, rgba(255,255,255,.08), transparent 24%),
    linear-gradient(135deg, #07182e 0%, #08234a 38%, #051326 100%);
}
.hero::before,
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
}
.hero::before{
  background:
    radial-gradient(circle at 80% 22%, rgba(214,169,54,.10), transparent 18%),
    radial-gradient(circle at 14% 80%, rgba(255,255,255,.05), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,.05), transparent 28%, transparent 72%, rgba(214,169,54,.04));
  opacity:.95;
}
.hero::after{
  background:
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.03) 1px, transparent 1px);
  background-size:52px 52px;
  mask:linear-gradient(180deg, rgba(0,0,0,.68), transparent 88%);
  opacity:.24;
}
.hero .container,
.hero-bg-mark,
.hero-scene,
.hero-grid{
  position:relative;
  z-index:1;
}
.hero-scene{
  position:absolute;
  inset:0;
  overflow:hidden;
  pointer-events:none;
  z-index:0;
}
.hero-scene-grid{
  position:absolute;
  inset:8% 8% auto auto;
  width:min(46vw,560px);
  height:min(46vw,560px);
  border-radius:50%;
  background:
    radial-gradient(circle, rgba(255,255,255,.05) 0%, rgba(255,255,255,.01) 48%, transparent 72%);
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 0 0 42px rgba(255,255,255,.02), 0 0 0 84px rgba(214,169,54,.018);
  transform:translate3d(12%, -4%, 0);
  animation:heroScenePulse 8s ease-in-out infinite;
}
.hero-star{
  position:absolute;
  width:6px;
  height:6px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(232,202,117,.95) 35%, rgba(214,169,54,.2) 70%, transparent 100%);
  box-shadow:0 0 16px rgba(255,255,255,.38), 0 0 28px rgba(214,169,54,.22);
  animation:heroTwinkle 3.8s ease-in-out infinite;
}
.hero-star::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:18px;
  height:1px;
  transform:translate(-50%,-50%);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.85), transparent);
  opacity:.5;
}
.hero-star-a{ top:16%; left:14%; animation-delay:0s; }
.hero-star-b{ top:28%; right:18%; animation-delay:1.1s; }
.hero-star-c{ top:56%; left:46%; animation-delay:.65s; }
.hero-star-d{ bottom:20%; right:10%; animation-delay:1.8s; }
.hero-shooting{
  position:absolute;
  width:150px;
  height:2px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.95), rgba(214,169,54,.85), rgba(255,255,255,0));
  filter:drop-shadow(0 0 10px rgba(255,255,255,.45));
  opacity:0;
}
.hero-shooting::before{
  content:"";
  position:absolute;
  right:-3px;
  top:50%;
  width:8px;
  height:8px;
  border-radius:50%;
  transform:translateY(-50%);
  background:radial-gradient(circle, rgba(255,255,255,1), rgba(214,169,54,.95));
  box-shadow:0 0 14px rgba(255,255,255,.55);
}
.hero-shooting-a{
  top:18%;
  left:58%;
  transform:rotate(-22deg);
  animation:heroShooting 6.4s linear infinite;
}
.hero-shooting-b{
  top:46%;
  left:8%;
  transform:rotate(-12deg);
  animation:heroShooting 7.8s linear infinite 2.3s;
}
.hero-content,
.hero-card{
  position:relative;
  z-index:2;
}
.hero-content{
  max-width:680px;
}
.hero-content .eyebrow{
  display:inline-flex;
  align-items:center;
  padding:12px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(214,169,54,.24);
  box-shadow:0 12px 28px rgba(0,0,0,.12);
}
.hero-text{
  max-width:640px;
  font-size:1.12rem;
  line-height:1.8;
}
.hero-actions{
  gap:18px;
}
.hero .btn{
  position:relative;
  overflow:hidden;
  min-height:58px;
  padding:0 28px;
  border-radius:22px;
  font-size:1rem;
  letter-spacing:-.01em;
  box-shadow:0 20px 38px rgba(0,0,0,.14);
}
.hero .btn::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, rgba(255,255,255,0) 20%, rgba(255,255,255,.24) 46%, rgba(255,255,255,0) 70%);
  transform:translateX(-130%);
  transition:transform .8s ease;
}
.hero .btn:hover::before{
  transform:translateX(130%);
}
.hero .btn-primary{
  color:#081d3a;
  background:linear-gradient(135deg, #e4be58, #d5a93a);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 24px 50px rgba(214,169,54,.24);
}
.hero .btn-primary:hover{
  box-shadow:0 30px 58px rgba(214,169,54,.34);
}
.hero .btn-outline{
  color:#fff;
  border:1px solid rgba(255,255,255,.22);
  background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.06));
  backdrop-filter:blur(12px);
}
.hero .btn-outline:hover{
  border-color:rgba(214,169,54,.5);
  background:linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.08));
}
.hero-protocol-btn{
  min-width:230px;
}
.hero-proof{
  gap:14px;
}
.hero-proof span{
  padding:12px 16px;
  border-radius:18px;
  border:1px solid rgba(214,169,54,.18);
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  box-shadow:0 14px 28px rgba(0,0,0,.10);
}
.hero-card{
  background:linear-gradient(160deg, rgba(255,255,255,.12), rgba(255,255,255,.06));
  border:1px solid rgba(214,169,54,.24);
  box-shadow:0 36px 90px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.12);
}
.hero-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,50%), rgba(214,169,54,.16), transparent 28%);
  pointer-events:none;
}
.hero-card > *{
  position:relative;
  z-index:1;
}
.hero-card img{
  width:min(190px,48%);
  filter:drop-shadow(0 18px 30px rgba(214,169,54,.14));
}
@keyframes heroTwinkle{
  0%,100%{opacity:.45; transform:scale(.9)}
  30%{opacity:1; transform:scale(1.18)}
  60%{opacity:.75; transform:scale(1)}
}
@keyframes heroShooting{
  0%,74%{opacity:0; transform:translate3d(0,0,0) rotate(-18deg) scale(.88)}
  77%{opacity:1}
  100%{opacity:0; transform:translate3d(-180px,120px,0) rotate(-18deg) scale(1)}
}
@keyframes heroScenePulse{
  0%,100%{transform:translate3d(12%,-4%,0) scale(.98)}
  50%{transform:translate3d(9%,-2%,0) scale(1.03)}
}
@media (max-width: 860px){
  .hero{
    padding:118px 0 78px;
  }
  .hero-scene-grid{
    width:72vw;
    height:72vw;
    right:-20%;
    top:4%;
  }
  .hero-content .eyebrow{
    padding:10px 14px;
  }
  .hero .btn{
    min-height:56px;
    border-radius:20px;
  }
  .hero-actions{
    display:grid;
    gap:14px;
  }
}
@media (max-width: 560px){
  .hero{
    padding:112px 0 72px;
  }
  .hero-content .eyebrow{
    display:inline-block;
    font-size:.72rem;
    line-height:1.45;
  }
  .hero-text{
    font-size:1rem;
    line-height:1.72;
  }
  .hero .btn{
    min-height:54px;
    padding:0 22px;
    border-radius:18px;
    font-size:.95rem;
  }
  .hero-proof span{
    border-radius:16px;
  }
  .hero-card{
    padding:24px 22px;
  }
  .hero-shooting{
    width:110px;
  }
}
@media (prefers-reduced-motion: reduce){
  .hero-scene-grid,
  .hero-star,
  .hero-shooting,
  .hero .btn::before,
  .hero-card::before{
    animation:none !important;
    transition:none !important;
  }
}
