/* ============================================================
   AES CODE · Site estático — folha de estilos compartilhada
   ============================================================ */
:root{
  --navy:#1B2A4C;
  --navy-deep:#141F3A;
  --ink:#3A4763;
  --gray:#7A879C;
  --orange:#F2601D;
  --orange-hover:#E05314;
  --orange-soft:rgba(242,96,29,.16);
  --mint:#DFF4EA;
  --line:#E3E9F0;
  --trace:#C7D2E0;
  --trace-soft:#E9EEF5;
  --bg-soft:#F6F8FA;
  --violet:#3B2A5A;
  --violet-deep:#2A1D42;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,sans-serif;
  color:var(--ink);
  background:#fff;
  line-height:1.6;
}
h1,h2,h3,h4,.btn{font-family:'Poppins',sans-serif}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}

/* ---------- componentes básicos ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-weight:600;font-size:.95rem;border-radius:10px;
  padding:13px 26px;border:none;cursor:pointer;
  transition:background .15s,border-color .15s,transform .15s,box-shadow .15s;
}
.btn--orange{background:var(--orange);color:#fff;box-shadow:0 6px 16px rgba(242,96,29,.25)}
.btn--orange:hover{background:var(--orange-hover);transform:translateY(-2px)}
.btn--ghost{background:#fff;color:var(--navy);border:1.5px solid var(--line)}
.btn--ghost:hover{border-color:var(--navy);transform:translateY(-2px)}
.btn--navy{background:var(--navy);color:#fff}
.btn--navy:hover{background:var(--navy-deep)}
.btn--outline{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.4)}
.btn--outline:hover{border-color:#fff;background:rgba(255,255,255,.08)}

.eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  font-size:.72rem;font-weight:700;letter-spacing:.2em;
  text-transform:uppercase;color:var(--orange);
}
.eyebrow::before{content:"";width:8px;height:8px;background:var(--orange);border-radius:2px}

.sec-head{text-align:center;max-width:640px;margin:0 auto 40px}
.sec-head h2{
  font-size:clamp(1.4rem,2.8vw,1.9rem);font-weight:700;
  color:var(--navy);line-height:1.3;margin:10px 0 12px;
}
.sec-head p{color:var(--gray);font-size:.97rem}

.ph{
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#EDF1F6,#E2E8F0);
  color:#A6B1C2;font-size:.8rem;letter-spacing:.06em;
  border-radius:12px;text-align:center;padding:10px;
}

/* ---------- topo ---------- */
.topbar{background:var(--mint);font-size:.83rem;color:var(--ink);padding:9px 0}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px}
.topbar b{color:var(--navy)}
.topbar__social{display:flex;gap:14px;color:var(--gray)}

.header{padding:18px 0;border-bottom:1px solid var(--line)}
.header .wrap{display:flex;align-items:center;gap:26px}
.logo{
  font-family:'Poppins',sans-serif;font-weight:800;font-size:1.5rem;
  line-height:1;color:var(--orange);letter-spacing:.02em;
}
.logo span{display:block;color:var(--navy);letter-spacing:.14em}
.search{
  flex:1;display:flex;align-items:center;gap:10px;
  border:1.5px solid var(--line);border-radius:999px;
  padding:12px 20px;color:var(--gray);font-size:.94rem;
}
.search svg{flex:none}
.search input{border:none;outline:none;flex:1;font:inherit;color:var(--ink);background:transparent}
.cartbtn{white-space:nowrap;font-size:.86rem;padding:12px 20px;border-radius:10px}

.nav{background:var(--orange)}
.nav .wrap{display:flex;align-items:center;justify-content:center;gap:34px;flex-wrap:wrap}
.nav a{
  color:#fff;font-family:'Poppins',sans-serif;font-weight:600;font-size:.92rem;
  padding:15px 0;position:relative;opacity:.95;
}
.nav a:hover{opacity:1}
.nav a::after{
  content:"";position:absolute;left:0;right:0;bottom:9px;height:2px;
  background:#fff;transform:scaleX(0);transition:transform .18s;
}
.nav a:hover::after,.nav a.on::after{transform:scaleX(1)}
.nav .tag{margin-left:auto;font-weight:700;opacity:1}

/* cabeçalho de página interna (breadcrumb) */
.page-head{background:var(--bg-soft);padding:38px 0}
.page-head .wrap{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.page-head h1{font-size:clamp(1.5rem,3vw,2rem);font-weight:700;color:var(--navy)}
.page-head .crumb{font-size:.85rem;color:var(--gray)}
.page-head .crumb b{color:var(--navy);font-weight:600}

/* hero escuro de páginas internas (Locação / Desenvolvimento) */
.lhero{
  position:relative;color:#fff;padding:74px 0;
  background:linear-gradient(100deg,var(--navy) 0%,#24406E 60%,#2E5288 100%);
  overflow:hidden;
}
.lhero::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(600px 300px at 85% 20%,rgba(242,96,29,.16),transparent 70%),
    radial-gradient(500px 260px at 10% 90%,rgba(255,255,255,.06),transparent 70%);
}
.lhero .wrap{position:relative;z-index:1;max-width:1160px}
.lhero h1{font-size:clamp(1.7rem,3.6vw,2.5rem);font-weight:800;margin-bottom:10px}
.lhero p{
  font-size:.92rem;letter-spacing:.08em;text-transform:uppercase;
  color:rgba(255,255,255,.85);margin-bottom:26px;max-width:640px;
}

/* ---------- home: hero ---------- */
.hero{padding:64px 0 56px;background:linear-gradient(180deg,#fff,var(--bg-soft))}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.hero h1{
  font-size:clamp(2rem,4.2vw,3rem);font-weight:800;line-height:1.14;
  color:var(--navy);margin:16px 0 16px;
}
.hero h1 em{font-style:normal;color:var(--orange)}
.hero p{max-width:480px;margin-bottom:26px}
.hero p b{color:var(--navy)}
.stats{
  display:flex;gap:40px;margin:0 0 30px;padding:18px 0;
  border-top:1.5px dashed var(--line);border-bottom:1.5px dashed var(--line);
}
.stats div b{
  display:block;font-family:'Poppins',sans-serif;font-weight:800;
  font-size:1.5rem;color:var(--orange);line-height:1.2;
}
.stats div span{font-size:.82rem;color:var(--gray)}
.hero__actions{display:flex;gap:14px;flex-wrap:wrap}
.hero__media .ph{aspect-ratio:4/3;border-radius:18px;box-shadow:0 24px 44px rgba(27,42,76,.16)}

/* ---------- produtos (home e catálogo) ---------- */
.products{padding:72px 0}
.chips{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:38px}
.chip{
  font-family:'Poppins',sans-serif;font-weight:600;font-size:.84rem;
  color:var(--navy);background:#fff;border:1.5px solid var(--line);
  border-radius:999px;padding:9px 20px;cursor:pointer;transition:all .15s;
}
.chip:hover{border-color:var(--navy)}
.chip--on{background:var(--navy);border-color:var(--navy);color:#fff}

.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.card{
  background:#fff;border:1.5px solid var(--line);border-radius:16px;
  padding:16px;display:flex;flex-direction:column;gap:12px;
  transition:box-shadow .18s,transform .18s,border-color .18s;
}
.card:hover{
  transform:translateY(-4px);border-color:transparent;
  box-shadow:0 16px 34px rgba(27,42,76,.12);
}
.card .ph{aspect-ratio:1/1}
.card h3{font-size:.92rem;font-weight:600;color:var(--navy);line-height:1.4;flex:1}
.price{font-size:.9rem;color:var(--navy);font-weight:600}
.price s{color:var(--gray);font-weight:400;margin-right:8px}
.badge{
  align-self:flex-start;font-size:.68rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--orange);
  background:rgba(242,96,29,.1);border-radius:6px;padding:3px 9px;
}
.card .btn{width:100%;padding:11px 10px;font-size:.85rem}
.products__more{text-align:center;margin-top:38px}

/* toolbar e paginação do catálogo */
.catalog-bar{
  display:flex;align-items:center;justify-content:space-between;
  gap:14px;flex-wrap:wrap;margin-bottom:26px;font-size:.88rem;color:var(--gray);
}
.catalog-bar select{
  font:inherit;color:var(--ink);border:1.5px solid var(--line);
  border-radius:8px;padding:9px 12px;background:#fff;
}
.pager{display:flex;justify-content:center;gap:8px;margin-top:40px}
.pager a{
  min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;
  border:1.5px solid var(--line);border-radius:9px;font-size:.88rem;font-weight:600;
  color:var(--navy);transition:all .15s;
}
.pager a:hover{border-color:var(--navy)}
.pager a.on{background:var(--orange);border-color:var(--orange);color:#fff}

/* ---------- parceiros ---------- */
.partners{padding:64px 0;background:var(--bg-soft)}
.partners__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.partner{
  background:#fff;border:1.5px solid var(--line);border-radius:16px;
  padding:28px 22px;text-align:center;
}
.partner b{display:block;font-family:'Poppins',sans-serif;font-weight:700;color:var(--navy);margin-bottom:6px}
.partner span{font-size:.84rem;color:var(--gray)}

/* ---------- FAQ / acordeões ---------- */
.faq{padding:72px 0}
.faq__list{max-width:760px;margin:0 auto;display:grid;gap:12px}
.acc details{
  border:1.5px solid var(--line);border-radius:12px;
  padding:0 20px;background:#fff;transition:border-color .15s;
}
.acc details[open]{border-color:var(--orange)}
.acc summary{
  list-style:none;cursor:pointer;display:flex;align-items:center;
  justify-content:space-between;gap:14px;
  font-family:'Poppins',sans-serif;font-weight:600;font-size:.95rem;
  color:var(--navy);padding:17px 0;
}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{
  content:"+";font-size:1.3rem;color:var(--orange);
  transition:transform .18s;line-height:1;
}
.acc details[open] summary::after{transform:rotate(45deg)}
.acc details p{padding:0 0 18px;font-size:.93rem}

/* ---------- CTA roxa (home) ---------- */
.custom{padding:0 24px 72px}
.custom__panel{
  max-width:1160px;margin:0 auto;text-align:center;
  background:linear-gradient(135deg,var(--violet),var(--violet-deep));
  border-radius:24px;padding:56px 28px;color:#fff;
}
.custom__panel h2{font-size:clamp(1.4rem,2.8vw,1.9rem);font-weight:700;margin-bottom:12px}
.custom__panel p{color:rgba(255,255,255,.8);max-width:520px;margin:0 auto 28px;font-size:.97rem}
.custom__actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* ---------- faixa de benefícios ---------- */
.perks{background:var(--orange);color:#fff;padding:26px 0}
.perks .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.perk{display:flex;gap:12px;align-items:flex-start}
.perk svg{flex:none;margin-top:2px}
.perk b{display:block;font-family:'Poppins',sans-serif;font-size:.92rem}
.perk span{font-size:.78rem;opacity:.9}

/* ---------- rodapé ---------- */
.footer{padding:56px 0 40px;background:#fff}
.footer .wrap{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.2fr;gap:36px}
.footer h4{font-weight:700;font-size:.98rem;color:var(--navy);margin-bottom:14px}
.footer ul{list-style:none;display:grid;gap:9px;font-size:.9rem}
.footer ul a:hover{color:var(--orange)}
.footer__phone{margin-top:16px;font-size:.9rem}
.footer__phone b{display:block;font-size:1.15rem;color:var(--navy)}
.footer address{font-style:normal;font-size:.9rem;display:grid;gap:8px}

.msgbar{background:var(--bg-soft);padding:30px 0}
.msgbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.msgbar h3{font-size:1.15rem;font-weight:700;color:var(--navy)}
.msgbar p{font-size:.9rem;color:var(--gray)}
.copy{padding:16px 0;font-size:.8rem;color:var(--gray);text-align:center;border-top:1px solid var(--line)}

/* ============================================================
   QUEM SOMOS
============================================================ */
.about{padding:64px 0}
.about .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:0;align-items:center}
.about__photo .ph{aspect-ratio:4/3;border-radius:16px;box-shadow:0 20px 40px rgba(27,42,76,.14)}
.about__card{
  background:#fff;border:1.5px solid var(--line);border-radius:16px;
  box-shadow:0 24px 44px rgba(27,42,76,.10);
  padding:36px 34px;margin-left:-46px;position:relative;
}
.about__card .eyebrow{margin-bottom:12px}
.about__card p{font-size:.94rem;margin-bottom:16px}
.about__card ul{list-style:none;display:grid;gap:9px;margin-bottom:14px}
.about__card li{
  position:relative;padding-left:24px;font-size:.92rem;
  font-weight:600;color:var(--navy);
}
.about__card li::before{
  content:"✓";position:absolute;left:0;top:0;
  color:var(--orange);font-weight:700;
}
.about__card em{font-style:normal;font-size:.9rem;color:var(--gray)}

.vmv{background:var(--navy-deep);padding:72px 0 0;color:#fff;text-align:center}
.vmv .eyebrow{justify-content:center}
.vmv h2{font-size:clamp(1.5rem,3vw,2.1rem);font-weight:700;margin:12px auto 46px;max-width:480px}
.vmv__grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:22px;
  transform:translateY(64px);margin-top:-14px;
}
.vmv__card{
  background:#fff;border-radius:16px;padding:34px 26px;color:var(--ink);
  box-shadow:0 20px 40px rgba(0,0,0,.18);
}
.vmv__card .ico{
  width:52px;height:52px;margin:0 auto 16px;border-radius:14px;
  background:var(--orange-soft);display:flex;align-items:center;justify-content:center;
  color:var(--orange);font-size:1.4rem;
}
.vmv__card h3{color:var(--navy);font-size:1.05rem;margin-bottom:10px}
.vmv__card p{font-size:.9rem}
.vmv + .perks{padding-top:96px}

/* ============================================================
   LOCAÇÃO
============================================================ */
.sim{
  max-width:900px;margin:-46px auto 0;position:relative;z-index:2;
  background:#fff;border:1.5px solid var(--line);border-radius:18px;
  box-shadow:0 26px 50px rgba(27,42,76,.16);padding:26px;
}
.sim__top{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.sim__title{display:inline-flex;align-items:center;gap:9px;font-family:'Poppins',sans-serif;font-weight:700;font-size:.95rem;color:var(--navy)}
.sim__title::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--orange)}
.sim__steps{display:flex;gap:16px;font-size:.8rem;color:var(--gray)}
.sim__steps b{color:var(--orange)}
.sim__search{
  display:flex;align-items:center;gap:10px;margin-bottom:18px;
  border:1.5px solid var(--line);border-radius:10px;padding:11px 16px;
  color:var(--gray);font-size:.9rem;
}
.sim__search input{border:none;outline:none;flex:1;font:inherit;background:transparent;color:var(--ink)}
.sim__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.sim__item{
  border:1.5px solid var(--line);border-radius:12px;padding:12px;
  text-align:center;cursor:pointer;transition:border-color .15s,box-shadow .15s;
}
.sim__item:hover{border-color:var(--orange);box-shadow:0 8px 18px rgba(242,96,29,.12)}
.sim__item .ph{aspect-ratio:4/3;margin-bottom:9px;border-radius:8px}
.sim__item span{font-size:.74rem;font-weight:600;color:var(--navy);line-height:1.35;display:block}
.sim__foot{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.82rem;color:var(--gray)}

.why{padding:80px 0 64px}
.why .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.why h2{font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:700;color:var(--navy);margin:10px 0 14px;text-transform:uppercase;letter-spacing:.01em}
.why__intro p{font-size:.94rem;margin-bottom:12px}
.acc--stack{display:grid;gap:12px}

.why2{padding:0 0 72px}
.why2 .sec-head{margin-bottom:30px}
.why2 .acc--stack{max-width:860px;margin:0 auto}

/* ============================================================
   DESENVOLVIMENTO
============================================================ */
.dev2{padding:64px 0}
.dev2 .wrap{
  display:grid;grid-template-columns:1fr 1fr;gap:0 72px;position:relative;
}
.dev2 .wrap::before{
  content:"";position:absolute;left:50%;top:6px;bottom:6px;
  border-left:2px dashed var(--line);transform:translateX(-1px);
}
.dev2 h2{font-size:1.25rem;font-weight:700;color:var(--navy);margin-bottom:12px}
.dev2 p{font-size:.94rem}

.feature{padding:24px 0 72px}
.feature .wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:44px;align-items:center}
.feature__media .ph{aspect-ratio:3/4;border-radius:16px}
.feature__panel{
  background:#fff;border:1.5px solid var(--line);border-radius:18px;
  box-shadow:0 20px 44px rgba(27,42,76,.10);padding:38px 36px;
}
.feature__panel h2{font-size:clamp(1.2rem,2.4vw,1.55rem);font-weight:700;color:var(--navy);margin:8px 0 8px}
.feature__panel .lead{font-weight:600;color:var(--navy);font-size:.95rem;margin-bottom:14px}
.feature__panel > p{font-size:.93rem;margin-bottom:18px}
.feature__label{
  display:block;font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  font-size:.72rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:var(--orange);margin-bottom:12px;
}
.feature__panel ul{list-style:none;display:grid;gap:11px;margin-bottom:18px}
.feature__panel li{position:relative;padding-left:26px;font-size:.9rem}
.feature__panel li b{color:var(--navy)}
.feature__panel li::before{
  content:"✓";position:absolute;left:0;top:1px;
  width:17px;height:17px;border-radius:50%;
  border:2px solid var(--orange);color:var(--orange);
  font-size:.62rem;font-weight:800;
  display:flex;align-items:center;justify-content:center;
}
.feature__panel em{font-style:normal;font-size:.88rem;color:var(--gray)}
.feature__panel em b{color:var(--navy)}

/* CTA simples clara (Locação / Desenvolvimento) */
.cta-lite{background:var(--bg-soft);padding:52px 0;text-align:center}
.cta-lite h3{font-size:1.15rem;font-weight:700;color:var(--navy);margin-bottom:22px}
.cta-lite .row{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* ============================================================
   CONTATO
============================================================ */
.contact{padding:64px 0}
.contact .wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:start}
.contact h2{font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:700;color:var(--navy);margin-bottom:8px}
.contact .sub{color:var(--gray);font-size:.93rem;margin-bottom:28px;padding-bottom:22px;border-bottom:1.5px dashed var(--line)}
.contact__item{display:flex;gap:16px;margin-bottom:24px}
.contact__item .ico{
  flex:none;width:44px;height:44px;border-radius:12px;
  background:var(--orange-soft);color:var(--orange);
  display:flex;align-items:center;justify-content:center;
}
.contact__item b{display:block;font-family:'Poppins',sans-serif;color:var(--navy);font-size:.95rem;margin-bottom:3px}
.contact__item p{font-size:.9rem}
.contact__hours{font-size:.86rem;color:var(--gray);margin-top:6px}

.form{display:grid;gap:16px}
.form .row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form label{display:grid;gap:6px;font-size:.85rem;font-weight:600;color:var(--navy)}
.form input,.form select,.form textarea{
  font:inherit;color:var(--ink);background:var(--bg-soft);
  border:1.5px solid transparent;border-radius:10px;padding:12px 14px;
  outline:none;transition:border-color .15s,background .15s;
}
.form input:focus,.form select:focus,.form textarea:focus{
  border-color:var(--orange);background:#fff;
}
.form textarea{min-height:130px;resize:vertical}
.form .captcha{
  display:flex;align-items:center;gap:12px;
  border:1.5px solid var(--line);border-radius:10px;
  padding:14px 16px;font-size:.88rem;color:var(--gray);max-width:320px;
}
.form .captcha i{
  width:22px;height:22px;border:2px solid var(--trace);
  border-radius:4px;background:#fff;flex:none;font-style:normal;
}
.form .btn{width:100%}

.social-strip{background:var(--bg-soft);padding:44px 0;text-align:center}
.social-strip h2{font-size:1.3rem;font-weight:700;color:var(--navy);display:inline-flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:center}
.social-strip .links{display:inline-flex;gap:14px;color:var(--orange);font-weight:600;font-size:.92rem}

/* ============================================================
   MANUTENÇÃO — hero
============================================================ */
.aes-hero{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,#fff 0%,#F2F6FA 100%);
  padding:64px 24px 56px;color:var(--ink);
}
.aes-hero__trace{position:absolute;inset:0;pointer-events:none;color:#E7EDF4}
.aes-hero__trace svg{position:absolute}
.aes-hero__trace svg:first-child{left:-30px;top:-20px}
.aes-hero__trace svg:last-child{right:-30px;bottom:-40px;transform:rotate(180deg)}
.aes-hero__wrap{
  position:relative;max-width:1160px;margin:0 auto;
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  align-items:center;gap:48px;
}
.aes-hero__eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  font-size:.74rem;font-weight:700;letter-spacing:.2em;
  text-transform:uppercase;color:var(--orange);margin-bottom:18px;
}
.aes-hero__eyebrow::before{
  content:"";width:9px;height:9px;border:2px solid var(--orange);
  border-radius:50%;background:#fff;
}
.aes-hero__title{
  font-weight:800;font-size:clamp(1.9rem,4vw,2.9rem);
  line-height:1.16;color:var(--navy);margin:0 0 16px;
}
.aes-hero__title em{font-style:normal;color:var(--orange);white-space:nowrap}
.aes-hero__sub{font-size:1.04rem;line-height:1.7;max-width:520px;margin:0 0 22px}
.aes-hero__brands{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-bottom:28px;
  font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  font-size:.76rem;font-weight:700;letter-spacing:.14em;color:var(--navy);
}
.aes-hero__brands b{
  font-weight:400;letter-spacing:normal;font-family:'Inter',sans-serif;
  color:var(--gray);font-size:.8rem;text-transform:none;
}
.aes-hero__brands span{display:inline-flex;align-items:center;gap:7px;text-transform:uppercase}
.aes-hero__brands span::before{content:"";width:7px;height:7px;background:var(--orange);border-radius:2px}
.aes-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:26px}
.aes-hero__proof{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:.84rem;color:var(--gray)}
.aes-hero__proof span{display:inline-flex;align-items:center;gap:7px}
.aes-hero__proof .stars{color:var(--orange);letter-spacing:2px;font-size:.9rem}
.aes-hero__proof span::before{content:"";width:6px;height:6px;background:var(--orange);border-radius:50%}
.aes-hero__proof span:first-child::before{display:none}
.aes-hero__media{position:relative;display:flex;justify-content:center}
.aes-hero__media::before{
  content:"";position:absolute;inset:8% 4% 6% 4%;border-radius:50%;z-index:0;
  background:
    radial-gradient(closest-side,rgba(242,96,29,.10),transparent 72%),
    radial-gradient(closest-side,rgba(27,42,76,.08),transparent 78%);
}
.aes-hero__media .ph,
.aes-hero__media img{
  position:relative;z-index:1;width:100%;max-width:560px;
  filter:drop-shadow(0 24px 34px rgba(27,42,76,.18));
}
.aes-hero__media .ph{aspect-ratio:3/2;border-radius:16px}
.aes-hero__dot{
  position:absolute;z-index:2;width:12px;height:12px;
  border:3px solid var(--orange);border-radius:50%;background:#fff;
}
.aes-hero__dot--a{top:12%;left:8%}
.aes-hero__dot--b{bottom:16%;right:6%;width:9px;height:9px;border-width:2px}
.aes-hero__dot--c{top:4%;right:22%;width:8px;height:8px;border-width:2px;border-color:var(--line)}

/* ============================================================
   MANUTENÇÃO — introdução + mapa mental (linha contínua)
============================================================ */
.aes-st{
  position:relative;max-width:1160px;margin:0 auto;
  padding:64px 24px;color:var(--ink);overflow:hidden;
}
#servicos{scroll-margin-top:110px}
.aes-st__bus{
  position:absolute;left:50%;top:70px;bottom:74px;
  border-left:2px dashed var(--trace);
  transform:translateX(-1px);pointer-events:none;
}
.aes-st__bus::before,.aes-st__bus::after{
  content:"";position:absolute;left:-7px;width:10px;height:10px;
  border-radius:50%;border:2px solid var(--trace);background:#fff;
}
.aes-st__bus::before{top:-12px}
.aes-st__bus::after{bottom:-12px}
.aes-st__bgtrace{position:absolute;inset:0;pointer-events:none;color:var(--trace-soft)}
.aes-st__bgtrace svg{position:absolute}
.aes-st__bgtrace svg:first-child{right:-30px;top:34%}
.aes-st__bgtrace svg:last-child{left:-40px;bottom:4%;transform:scaleX(-1)}

.aes-st__intro{
  position:relative;display:grid;grid-template-columns:1fr 1fr;
  gap:0 72px;margin-bottom:110px;
}
.aes-st__intro::after{
  content:"";position:absolute;left:50%;top:50%;
  width:11px;height:11px;border:3px solid var(--orange);
  border-radius:50%;background:#fff;transform:translate(-8px,-8px);
}
.aes-st__eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  font-size:.72rem;font-weight:700;letter-spacing:.2em;
  text-transform:uppercase;color:var(--orange);margin-bottom:14px;
}
.aes-st__eyebrow::before{content:"";width:8px;height:8px;background:var(--orange);border-radius:2px}
.aes-st__title{
  font-weight:700;font-size:clamp(1.25rem,2.4vw,1.6rem);
  line-height:1.3;color:var(--navy);margin:0 0 12px;
}
.aes-st__stars{
  display:inline-flex;align-items:center;gap:10px;margin-bottom:16px;
  color:var(--orange);font-size:1.05rem;letter-spacing:3px;
}
.aes-st__stars small{
  font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  font-size:.72rem;letter-spacing:.12em;color:var(--gray);
}
.aes-st__text{font-size:.97rem;line-height:1.75}
.aes-st__text strong{color:var(--navy);font-weight:600}

.aes-st__map{
  position:relative;display:grid;
  grid-template-columns:1fr 300px 1fr;
  grid-template-areas:"q hub m" "a hub c";
  column-gap:56px;row-gap:88px;align-items:start;
}
.aes-st__hub{grid-area:hub;align-self:center;justify-self:center;position:relative;z-index:2}
.aes-st__hub-pill{
  display:block;background:var(--orange);color:#fff;
  font-family:'Poppins',sans-serif;font-weight:700;font-size:1.28rem;
  letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;
  padding:20px 40px;border-radius:999px;
  box-shadow:0 0 0 8px var(--orange-soft),0 12px 28px rgba(242,96,29,.28);
}
.aes-st__branch{position:relative;z-index:1}
.aes-st__branch--q{grid-area:q}
.aes-st__branch--m{grid-area:m}
.aes-st__branch--a{grid-area:a}
.aes-st__branch--c{grid-area:c}
.aes-st__node{position:relative;display:flex;margin-bottom:18px}
.aes-st__pill{
  position:relative;display:inline-block;background:var(--navy);color:#fff;
  font-family:'Poppins',sans-serif;font-weight:600;font-size:.86rem;
  letter-spacing:.14em;text-transform:uppercase;padding:12px 26px;
  border-radius:999px;box-shadow:0 6px 16px rgba(27,42,76,.22);
}
.aes-st__branch--q .aes-st__node,
.aes-st__branch--a .aes-st__node{justify-content:flex-end}
.aes-st__node::before{
  content:"";position:absolute;top:50%;
  width:calc(56px + 150px);
  border-top:2px dashed var(--trace);
}
.aes-st__node::after{
  content:"";position:absolute;top:50%;width:11px;height:11px;
  border-radius:50%;background:var(--orange);
  transform:translateY(-6px);box-shadow:0 0 0 4px var(--orange-soft);
}
.aes-st__branch--q .aes-st__node::before,
.aes-st__branch--a .aes-st__node::before{right:calc(-56px - 150px)}
.aes-st__branch--q .aes-st__node::after,
.aes-st__branch--a .aes-st__node::after{right:-17px}
.aes-st__branch--m .aes-st__node::before,
.aes-st__branch--c .aes-st__node::before{left:calc(-56px - 150px)}
.aes-st__branch--m .aes-st__node::after,
.aes-st__branch--c .aes-st__node::after{left:-17px}
.aes-st__branch p{font-size:.94rem;line-height:1.7}
.aes-st__branch--q p,.aes-st__branch--a p{text-align:right}
.aes-st__brands{
  display:flex;flex-wrap:wrap;gap:8px 18px;margin:14px 0 4px;
  font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  font-size:.78rem;letter-spacing:.16em;font-weight:700;color:var(--navy);
}
.aes-st__brands span{display:inline-flex;align-items:center;gap:8px}
.aes-st__brands span::before{content:"";width:7px;height:7px;background:var(--orange);border-radius:2px}
.aes-st__label{
  display:block;margin:18px 0 10px;
  font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--orange);font-weight:700;
}
.aes-st__list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:9px 22px}
.aes-st__list--single{grid-template-columns:1fr}
.aes-st__list li{position:relative;padding-left:18px;font-size:.9rem;line-height:1.5}
.aes-st__list li::before{
  content:"";position:absolute;left:0;top:.48em;width:8px;height:8px;
  border:2px solid var(--orange);border-radius:50%;background:#fff;
}

/* ============================================================
   MANUTENÇÃO — CTA final animado
============================================================ */
.aes-cta{
  position:relative;background:var(--bg-soft);
  padding:64px 24px 68px;text-align:center;color:var(--ink);overflow:hidden;
}
.aes-cta__spark{display:inline-flex;align-items:center;margin-bottom:18px}
.aes-cta__spark::before,.aes-cta__spark::after{
  content:"";width:34px;height:2px;
  background:repeating-linear-gradient(90deg,var(--line) 0 6px,transparent 6px 12px);
  background-size:12px 2px;
}
.aes-cta__spark i{
  width:9px;height:9px;margin:0 6px;
  border:2px solid var(--orange);border-radius:50%;background:#fff;
}
.aes-cta__title{
  font-weight:700;font-size:clamp(1.3rem,2.6vw,1.7rem);
  line-height:1.3;color:var(--navy);max-width:560px;margin:0 auto 10px;
}
.aes-cta__sub{font-size:.96rem;line-height:1.65;max-width:480px;margin:0 auto 30px}
.aes-cta__actions{
  display:flex;flex-wrap:wrap;justify-content:center;align-items:center;
  gap:14px;margin-bottom:22px;
}
.aes-cta__btn--wpp{position:relative}
.aes-cta__btn--wpp::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none}
.aes-cta__proof{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 24px;font-size:.82rem;color:var(--gray)}
.aes-cta__proof span{display:inline-flex;align-items:center;gap:7px}
.aes-cta__proof span::before{content:"";width:6px;height:6px;background:var(--orange);border-radius:50%}

/* ============================================================
   ANIMAÇÕES
============================================================ */
@media (prefers-reduced-motion:no-preference){
  /* hero manutenção: entrada ao carregar */
  .aes-hero__copy > *{opacity:0;animation:riseIn .55s ease forwards}
  .aes-hero__copy > *:nth-child(2){animation-delay:.08s}
  .aes-hero__copy > *:nth-child(3){animation-delay:.16s}
  .aes-hero__copy > *:nth-child(4){animation-delay:.24s}
  .aes-hero__copy > *:nth-child(5){animation-delay:.32s}
  .aes-hero__copy > *:nth-child(6){animation-delay:.42s}
  .aes-hero__media{opacity:0;animation:mediaIn .7s ease .2s forwards}
  .aes-hero__media .ph,
  .aes-hero__media img{animation:floatY 6s ease-in-out infinite}
  .aes-hero__dot--a{animation:floatY 5s ease-in-out .4s infinite}
  .aes-hero__dot--b{animation:floatY 7s ease-in-out .8s infinite}

  /* entrada ao rolar (elementos com .js-reveal, armados via JS) */
  .is-armed{opacity:0;transform:translateY(14px)}
  .is-in{animation:riseIn .55s ease forwards}
  .is-in .aes-st__branch--q{animation:riseIn .55s ease .12s both}
  .is-in .aes-st__branch--m{animation:riseIn .55s ease .2s both}
  .is-in .aes-st__branch--a{animation:riseIn .55s ease .28s both}
  .is-in .aes-st__branch--c{animation:riseIn .55s ease .36s both}

  /* CTA: corrente no tracejado + anel/sino no WhatsApp */
  .aes-cta__spark::before{animation:dashFlow 1.6s linear infinite}
  .aes-cta__spark::after{animation:dashFlow 1.6s linear infinite reverse}
  .aes-cta__btn--wpp::before{animation:ringPulse 4s ease-out 1.2s infinite}
  .aes-cta__btn--wpp svg,
  .aes-hero .aes-cta__btn--wpp svg{
    transform-origin:50% 45%;
    animation:bellRing 4s ease-in-out 1.2s infinite;
  }
  .aes-cta__btn--wpp:hover::before{animation:none}
  .aes-cta__btn--wpp:hover svg{animation:none}

  @keyframes riseIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
  @keyframes mediaIn{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
  @keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
  @keyframes dashFlow{from{background-position-x:0}to{background-position-x:12px}}
  @keyframes ringPulse{
    0%{box-shadow:0 0 0 0 rgba(242,96,29,.35)}
    22%{box-shadow:0 0 0 12px rgba(242,96,29,0)}
    100%{box-shadow:0 0 0 0 rgba(242,96,29,0)}
  }
  @keyframes bellRing{
    0%,8%{transform:rotate(0)}
    10%{transform:rotate(-14deg)}
    12%{transform:rotate(11deg)}
    14%{transform:rotate(-8deg)}
    16%{transform:rotate(5deg)}
    18%,100%{transform:rotate(0)}
  }
}

/* ============================================================
   RESPONSIVO
============================================================ */
@media (max-width:1024px){
  .grid{grid-template-columns:repeat(3,1fr)}
  .partners__grid,.perks .wrap{grid-template-columns:repeat(2,1fr)}
  .footer .wrap{grid-template-columns:1fr 1fr}
  .sim__grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:880px){
  .hero .wrap,.about .wrap,.why .wrap,.dev2 .wrap,
  .feature .wrap,.contact .wrap{grid-template-columns:1fr}
  .hero .wrap{text-align:center}
  .hero p{margin-left:auto;margin-right:auto}
  .stats,.hero__actions{justify-content:center}
  .hero__media{order:-1;max-width:440px;margin:0 auto}
  .header .wrap{flex-wrap:wrap}
  .search{order:3;flex-basis:100%}
  .grid{grid-template-columns:repeat(2,1fr)}
  .about__card{margin:-40px 18px 0}
  .about .wrap{gap:0}
  .vmv__grid{grid-template-columns:1fr;transform:translateY(44px)}
  .vmv + .perks{padding-top:70px}
  .dev2 .wrap{gap:40px}
  .dev2 .wrap::before{display:none}
  .contact .wrap{gap:44px}
  .form .row2{grid-template-columns:1fr}

  /* manutenção */
  .aes-hero{padding:44px 20px 48px}
  .aes-hero__wrap{grid-template-columns:1fr;gap:30px;text-align:center}
  .aes-hero__media{order:-1}
  .aes-hero__media .ph,.aes-hero__media img{max-width:400px}
  .aes-hero__sub{margin-left:auto;margin-right:auto}
  .aes-hero__brands,.aes-hero__actions,.aes-hero__proof{justify-content:center}
}
@media (max-width:940px){
  .aes-st{padding:44px 18px 48px}
  .aes-st__bus{display:none}
  .aes-st__intro{grid-template-columns:1fr;gap:44px 0;margin-bottom:64px}
  .aes-st__intro::before{
    content:"";position:absolute;left:10%;right:10%;top:50%;
    border-top:2px dashed var(--line);
  }
  .aes-st__intro::after{top:50%;transform:translate(-8px,-7px)}
  .aes-st__map{
    grid-template-columns:1fr;
    grid-template-areas:"hub" "q" "m" "a" "c";
    row-gap:44px;padding-left:34px;
  }
  .aes-st__map::before{
    content:"";position:absolute;left:12px;top:0;bottom:0;
    border-left:2px dashed var(--trace);
  }
  .aes-st__buspad{
    position:absolute;left:12px;bottom:2px;width:10px;height:10px;
    border-radius:50%;border:2px solid var(--trace);background:#fff;
    transform:translateX(-4px);
  }
  .aes-st__hub{justify-self:start}
  .aes-st__hub-pill{font-size:1.02rem;padding:16px 28px;white-space:normal}
  .aes-st__branch--q .aes-st__node,
  .aes-st__branch--a .aes-st__node{justify-content:flex-start}
  .aes-st__branch--q p,.aes-st__branch--a p{text-align:left}
  .aes-st__node::before,
  .aes-st__branch--q .aes-st__node::before,
  .aes-st__branch--a .aes-st__node::before,
  .aes-st__branch--m .aes-st__node::before,
  .aes-st__branch--c .aes-st__node::before{left:-34px;right:auto;width:34px}
  .aes-st__node::after,
  .aes-st__branch--q .aes-st__node::after,
  .aes-st__branch--a .aes-st__node::after,
  .aes-st__branch--m .aes-st__node::after,
  .aes-st__branch--c .aes-st__node::after{left:-40px;right:auto}
  .aes-st__list{grid-template-columns:1fr}
}
@media (min-width:941px){
  .aes-st__buspad{display:none}
}
@media (max-width:540px){
  .grid,.sim__grid{grid-template-columns:1fr}
  .partners__grid,.perks .wrap,.footer .wrap{grid-template-columns:1fr}
  .nav .wrap{gap:18px}
  .stats{gap:22px}
  .aes-cta__actions,.cta-lite .row,.hero__actions,.aes-hero__actions{flex-direction:column}
  .aes-cta__actions .btn,.cta-lite .btn,.aes-hero__actions .btn{width:100%;max-width:340px;justify-content:center}
}

/* ============================================================
   OTIMIZAÇÃO MOBILE
   (menu hambúrguer + refinamentos de toque e espaçamento)
============================================================ */
.nav-toggle{display:none}
.nav-burger{display:none}

@media (max-width:880px){

  /* ---------- barra superior mais leve ---------- */
  .topbar{font-size:.76rem}
  .topbar .wrap{justify-content:center;text-align:center}
  .topbar__social{display:none}

  /* ---------- cabeçalho: logo | carrinho | menu ---------- */
  .header{padding:14px 0}
  .header .wrap{gap:12px}
  .cartbtn{margin-left:auto;font-size:.78rem;padding:11px 13px}
  .search{padding:11px 16px}

  /* botão hambúrguer */
  .nav-burger{
    display:flex;flex-direction:column;justify-content:center;gap:5px;
    width:46px;height:44px;flex:none;
    border:1.5px solid var(--line);border-radius:10px;
    padding:0 11px;cursor:pointer;
  }
  .nav-burger::before,
  .nav-burger::after,
  .nav-burger span{
    content:"";display:block;height:2.5px;border-radius:2px;
    background:var(--navy);
    transition:transform .22s ease,opacity .18s ease;
  }
  /* vira "X" quando aberto */
  #navtoggle:checked ~ .header .nav-burger::before{transform:translateY(7.5px) rotate(45deg)}
  #navtoggle:checked ~ .header .nav-burger span{opacity:0}
  #navtoggle:checked ~ .header .nav-burger::after{transform:translateY(-7.5px) rotate(-45deg)}

  /* ---------- menu vira lista vertical recolhível ---------- */
  .nav .wrap{
    flex-direction:column;align-items:stretch;gap:0;
    max-height:0;overflow:hidden;padding:0 24px;
    transition:max-height .28s ease;
  }
  #navtoggle:checked ~ .nav .wrap{max-height:480px}
  .nav a{
    padding:14px 4px;font-size:.98rem;
    border-bottom:1px solid rgba(255,255,255,.18);
  }
  .nav a:last-child{border-bottom:none}
  .nav a::after{display:none}
  .nav a.on{font-weight:700}
  .nav a.on::before{content:"› ";opacity:.9}
  .nav .tag{margin-left:0}

  /* ---------- respiros e tipografia ---------- */
  .page-head{padding:26px 0}
  .hero{padding:40px 0 44px}
  .products{padding:52px 0}
  .partners,.faq{padding:48px 0}
  .custom{padding:0 18px 52px}
  .custom__panel{padding:42px 20px;border-radius:18px}
  .sec-head{margin-bottom:30px}
  .about{padding:44px 0}
  .vmv{padding:52px 0 0}
  .why{padding:56px 0 44px}
  .why .wrap{gap:32px}
  .contact{padding:44px 0}
  .contact .wrap{gap:36px}
  .lhero{padding:52px 0}
  .feature__panel{padding:28px 22px}
  .dev2{padding:44px 0}
  .footer{padding:40px 0 30px}
  .footer .wrap{gap:26px}

  /* ---------- alvos de toque confortáveis (~44px+) ---------- */
  .btn{padding:14px 24px}
  .card .btn{min-height:46px}
  .chip{padding:11px 20px}
  .pager a{min-width:44px;height:44px}
  .acc summary{padding:16px 0;min-height:52px;align-items:center}
  .form input,.form select,.form textarea{padding:14px}

  /* ---------- simulador de locação ---------- */
  .sim{margin:-36px 16px 0;padding:18px}
  .sim__top{flex-direction:column;align-items:flex-start;gap:8px}
  .sim__steps{flex-wrap:wrap}
  .sim__grid{gap:10px}
  .sim__foot{flex-direction:column;align-items:stretch;text-align:center;gap:12px}
  .sim__foot .btn{width:100%}

  /* ---------- cards de produto ---------- */
  .card h3{font-size:.88rem}
  .catalog-bar{justify-content:center;text-align:center}
  .catalog-bar select{width:100%;max-width:320px}
}

@media (max-width:540px){
  /* carrinho compacto: some o rótulo, fica só o ícone */
  .cartbtn{font-size:0;gap:0;padding:11px 13px}
  .cartbtn::after{content:"🛒";font-size:1.05rem}

  .hero h1{font-size:1.7rem}
  .stats{flex-wrap:wrap;gap:16px 26px;justify-content:center}
  .stats div{min-width:96px}
  .stats div b{font-size:1.3rem}

  .aes-hero__title{font-size:1.55rem}
  .aes-st__hub-pill{width:100%;text-align:center}
  .vmv__card{padding:28px 20px}
  .social-strip h2{font-size:1.1rem;flex-direction:column;gap:10px}
  .msgbar .wrap{flex-direction:column;text-align:center}
  .msgbar .btn{width:100%;max-width:340px}
  .about__card{padding:26px 20px}
  .feature .wrap{gap:26px}
  .pager{flex-wrap:wrap}
}

/* ============================================================
   NOVOS COMPONENTES · hero central, catálogo com filtros,
   central de ajuda, vitrine ampliada
============================================================ */

/* ---------- hero estilo Manutenção sem imagem (Locação/Desenvolvimento) ---------- */
.aes-hero--center .aes-hero__wrap{
  grid-template-columns:1fr;
  justify-items:center;
  text-align:center;
  max-width:840px;
}
.aes-hero--center .aes-hero__sub{margin:0 auto 22px}
.aes-hero--center .aes-hero__brands,
.aes-hero--center .aes-hero__actions,
.aes-hero--center .aes-hero__proof{justify-content:center}
#simulador,#software{scroll-margin-top:110px}

/* ---------- vitrine da home ---------- */
.products__scale{
  margin-top:14px;font-size:.88rem;color:var(--gray);
}
.products__scale b{color:var(--navy)}
.chip small{font-size:.7rem;opacity:.65;margin-left:4px;font-weight:600}
.grid-empty{text-align:center;color:var(--gray);padding:34px 0;font-size:.94rem}
.linklike{
  border:none;background:none;color:var(--orange);font:inherit;
  font-weight:600;cursor:pointer;text-decoration:underline;
}

/* ---------- catálogo com barra lateral de filtros ---------- */
.shop{padding:40px 0 64px}
.shop__wrap{
  display:grid;grid-template-columns:256px minmax(0,1fr);
  gap:30px;align-items:start;
}
.shop .grid{grid-template-columns:repeat(3,1fr)}
.filters{position:sticky;top:18px;display:grid;gap:12px}
.filters__head{
  display:flex;align-items:center;justify-content:space-between;
  font-family:'Poppins',sans-serif;font-weight:700;
  color:var(--navy);font-size:1rem;padding:0 2px;
}
.filters__head button{
  border:none;background:none;color:var(--orange);
  font:inherit;font-size:.8rem;font-weight:600;cursor:pointer;
}
.filters__head button:hover{text-decoration:underline}
.fgroup{
  border:1.5px solid var(--line);border-radius:12px;
  background:#fff;padding:0 16px;
}
.fgroup summary{
  list-style:none;cursor:pointer;display:flex;align-items:center;
  justify-content:space-between;gap:12px;
  font-family:'Poppins',sans-serif;font-weight:600;font-size:.9rem;
  color:var(--navy);padding:14px 0;
}
.fgroup summary::-webkit-details-marker{display:none}
.fgroup summary::after{
  content:"+";color:var(--orange);font-size:1.15rem;
  line-height:1;transition:transform .18s;
}
.fgroup[open] summary::after{transform:rotate(45deg)}
.fopts{display:grid;gap:11px;padding:2px 0 16px}
.fopts label{
  display:flex;align-items:center;gap:10px;
  font-size:.87rem;cursor:pointer;color:var(--ink);
}
.fopts input[type="checkbox"]{
  width:17px;height:17px;accent-color:var(--orange);flex:none;cursor:pointer;
}
.fopts .cnt{margin-left:auto;font-size:.74rem;color:var(--gray)}
.fprice{display:flex;align-items:center;gap:8px;padding:2px 0 16px}
.fprice input{
  width:100%;min-width:0;font:inherit;font-size:.85rem;
  padding:9px 10px;border:1.5px solid var(--line);border-radius:8px;
  outline:none;transition:border-color .15s;
}
.fprice input:focus{border-color:var(--orange)}
.fprice .btn{padding:9px 14px;font-size:.8rem;flex:none}

/* ---------- central de ajuda ---------- */
.help-hero{
  background:var(--bg-soft);text-align:center;padding:56px 24px 50px;
}
.help-hero h1{
  font-size:clamp(1.7rem,3.6vw,2.4rem);font-weight:800;color:var(--navy);
}
.help-hero h1 em{
  font-style:normal;color:var(--orange);
  border-bottom:4px solid var(--orange);
}
.help-hero > p{
  max-width:520px;margin:14px auto 0;color:var(--gray);font-size:.96rem;
}
.help-search{
  max-width:600px;margin:26px auto 0;
  display:flex;align-items:center;gap:4px;
  background:#fff;border:1.5px solid var(--line);border-radius:12px;
  padding:6px 6px 6px 18px;color:var(--gray);
  transition:border-color .15s,box-shadow .15s;
}
.help-search:focus-within{
  border-color:var(--orange);
  box-shadow:0 8px 22px rgba(242,96,29,.10);
}
.help-search svg{flex:none}
.help-search input{
  flex:1;min-width:0;border:none;outline:none;font:inherit;
  padding:10px 12px;background:transparent;color:var(--ink);
}
.help-search .btn{padding:11px 22px;font-size:.9rem;flex:none}

.cats{padding:52px 0 4px}
.cats h2,.arts h2{
  text-align:center;font-size:clamp(1.3rem,2.6vw,1.7rem);
  font-weight:700;color:var(--navy);margin-bottom:30px;
}
.cats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.cat-card{
  border:1.5px solid var(--line);border-radius:16px;background:#fff;
  text-align:center;padding:26px 18px;cursor:pointer;
  font:inherit;transition:transform .18s,box-shadow .18s,border-color .18s;
}
.cat-card:hover{
  transform:translateY(-3px);box-shadow:0 12px 26px rgba(27,42,76,.10);
}
.cat-card.on{
  border-color:var(--orange);box-shadow:0 12px 26px rgba(242,96,29,.14);
}
.cat-card .ico{
  width:52px;height:52px;margin:0 auto 12px;border-radius:14px;
  background:var(--orange-soft);color:var(--orange);
  display:flex;align-items:center;justify-content:center;font-size:1.35rem;
}
.cat-card h3{font-size:.95rem;color:var(--navy);margin-bottom:6px}
.cat-card p{font-size:.8rem;color:var(--gray);margin-bottom:12px}
.cat-card .qtd{
  display:inline-block;font-size:.7rem;font-weight:700;color:var(--orange);
  background:var(--orange-soft);border-radius:999px;padding:3px 10px;
}

.arts{padding:48px 0 64px}
.arts__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.art{
  border:1.5px solid var(--line);border-radius:16px;background:#fff;
  display:flex;flex-direction:column;overflow:hidden;
  transition:transform .18s,box-shadow .18s;
}
.art:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(27,42,76,.10)}
.art__body{padding:20px 20px 14px;flex:1}
.art__badge{
  display:inline-block;font-size:.64rem;font-weight:700;letter-spacing:.12em;
  color:#fff;background:var(--orange);border-radius:6px;
  padding:4px 9px;margin-bottom:12px;text-transform:uppercase;
}
.art h3{font-size:1rem;color:var(--navy);line-height:1.35;margin-bottom:8px}
.art__body > p{font-size:.86rem;color:var(--ink)}
.art__meta{display:flex;gap:14px;font-size:.76rem;color:var(--gray);padding:0 20px 12px}
.art__tags{display:flex;flex-wrap:wrap;gap:6px;padding:0 20px 16px}
.art__tags span{
  font-size:.7rem;background:var(--bg-soft);border:1px solid var(--line);
  border-radius:6px;padding:3px 8px;color:var(--ink);
}
.art__link{
  display:block;border-top:1.5px solid var(--line);background:var(--bg-soft);
  padding:12px 20px;font-family:'Poppins',sans-serif;
  font-weight:600;font-size:.84rem;color:var(--navy);
  transition:color .15s;
}
.art__link:hover{color:var(--orange)}

.help-cta{padding:0 24px 72px}
.help-cta__panel{
  max-width:1160px;margin:0 auto;text-align:center;color:#fff;
  background:linear-gradient(135deg,var(--orange),#E9530F);
  border-radius:24px;padding:48px 28px;
}
.help-cta__panel h2{font-size:clamp(1.3rem,2.6vw,1.7rem);margin-bottom:8px}
.help-cta__panel > p{opacity:.92;margin-bottom:28px;font-size:.95rem}
.help-cta__grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:14px;max-width:760px;margin:0 auto;
}
.help-tile{
  background:rgba(255,255,255,.14);border:1.5px solid rgba(255,255,255,.35);
  border-radius:14px;padding:22px 16px;color:#fff;
  transition:background .15s,transform .15s;
}
.help-tile:hover{background:rgba(255,255,255,.22);transform:translateY(-2px)}
.help-tile b{display:block;font-family:'Poppins',sans-serif;margin:8px 0 4px}
.help-tile span{font-size:.84rem;opacity:.92}

/* ---------- rodapé: links extras ---------- */
.footer__extra{
  list-style:none;margin-top:14px;display:grid;gap:8px;font-size:.9rem;
}
.footer__extra a:hover{color:var(--orange)}

/* ---------- responsivo dos novos componentes ---------- */
@media (max-width:1024px){
  .shop .grid{grid-template-columns:repeat(2,1fr)}
  .shop__wrap{grid-template-columns:220px minmax(0,1fr)}
  .cats__grid,.arts__grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:880px){
  .shop__wrap{grid-template-columns:1fr}
  .filters{position:static}
  .help-cta__grid{grid-template-columns:1fr}
  .cats{padding-top:40px}
  .arts{padding-bottom:48px}
}
@media (max-width:540px){
  .cats__grid,.arts__grid,.shop .grid{grid-template-columns:1fr}
  .help-search{flex-wrap:wrap;padding:10px;gap:8px}
  .help-search input{flex-basis:100%;order:-1}
  .help-search .btn{width:100%}
  .help-hero{padding:40px 18px}
}

/* ============================================================
   AJUSTES · menu centralizado, filtros roláveis,
   proporção de imagens, animação do hero da home
============================================================ */

/* ---------- menu: links centralizados, tag à direita ---------- */
.nav .wrap{position:relative;justify-content:center}
.nav .tag{
  position:absolute;right:24px;top:50%;
  transform:translateY(-50%);
  margin-left:0;padding:0;
}
@media (max-width:1080px){
  /* em telas médias a tag absoluta poderia sobrepor os links */
  .nav .tag{display:none}
}
@media (max-width:880px){
  /* no menu mobile a tag volta ao fluxo normal, como último item */
  .nav .tag{
    display:block;position:static;transform:none;
    padding:14px 4px;
  }
}

/* ---------- catálogo: barra de filtros rolável ---------- */
.filters{
  max-height:calc(100vh - 32px);
  overflow-y:auto;
  overscroll-behavior:contain;
  padding-right:4px;
  scrollbar-width:thin;
  scrollbar-color:var(--trace) transparent;
}
.filters::-webkit-scrollbar{width:6px}
.filters::-webkit-scrollbar-thumb{background:var(--trace);border-radius:3px}
.filters::-webkit-scrollbar-track{background:transparent}
@media (max-width:880px){
  .filters{max-height:none;overflow:visible;padding-right:0}
}

/* ---------- imagens sempre na proporção original ---------- */
/* imagem colocada DENTRO de um placeholder .ph (qualquer tela) */
.ph > img{
  width:100%;height:100%;
  object-fit:contain;
  border-radius:inherit;
}
/* heros (home e Manutenção): largura fluida, altura proporcional */
.hero__media img,
.aes-hero__media img{
  width:100%;height:auto;
  object-fit:contain;
}
/* cards de produto e simulador de locação: quadro fixo, foto contida */
.card > img{
  width:100%;aspect-ratio:1/1;
  object-fit:contain;
  border-radius:12px;background:#fff;
}
.sim__item > img{
  width:100%;aspect-ratio:4/3;
  object-fit:contain;
  border-radius:8px;background:#fff;
  margin-bottom:9px;
}
/* foto da página Quem Somos e do software (Desenvolvimento) */
.about__photo img,
.feature__media img{
  width:100%;height:auto;
  border-radius:16px;
}

/* ---------- hero da home: mesma animação da tela de Manutenção ---------- */
.hero__media--float{position:relative}
.hero__media--float::before{
  content:"";
  position:absolute;inset:6% 2% 4% 2%;
  border-radius:50%;z-index:0;
  background:
    radial-gradient(closest-side,rgba(242,96,29,.10),transparent 72%),
    radial-gradient(closest-side,rgba(27,42,76,.08),transparent 78%);
}
.hero__media--float .ph,
.hero__media--float img{position:relative;z-index:1}
.hero__media--float img{
  filter:drop-shadow(0 24px 34px rgba(27,42,76,.18));
  box-shadow:none;border-radius:0;
}
@media (prefers-reduced-motion:no-preference){
  .hero__media--float{
    opacity:0;
    animation:mediaIn .7s ease .2s forwards;
  }
  .hero__media--float .ph,
  .hero__media--float img{
    animation:floatY 6s ease-in-out infinite;
  }
}

/* ============================================================
   FILTROS COMPLETOS · organização, chips e gaveta mobile
============================================================ */

/* busca dentro dos filtros */
.fsearch{
  display:flex;align-items:center;gap:9px;
  border:1.5px solid var(--line);border-radius:10px;
  background:#fff;padding:10px 12px;color:var(--gray);
  transition:border-color .15s;
}
.fsearch:focus-within{border-color:var(--orange)}
.fsearch svg{flex:none}
.fsearch input{
  flex:1;min-width:0;border:none;outline:none;
  font:inherit;font-size:.86rem;background:transparent;color:var(--ink);
}

/* divisores de seção dentro da barra */
.filters__divider{
  font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  font-size:.68rem;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gray);
  display:flex;align-items:center;gap:10px;
  margin-top:6px;
}
.filters__divider::after{
  content:"";flex:1;border-top:1.5px dashed var(--line);
}

/* nota de contexto no título do grupo (ex.: "leitores e coletores") */
.fgroup__note{
  font-family:'Inter',sans-serif;font-weight:400;
  font-size:.68rem;color:var(--gray);letter-spacing:0;
  margin-left:auto;padding-right:8px;
}

/* chips dos filtros ativos */
.applied{
  display:flex;flex-wrap:wrap;gap:8px;
  margin-bottom:16px;
}
.chip-x{
  display:inline-flex;align-items:center;gap:7px;
  font-family:'Poppins',sans-serif;font-weight:600;font-size:.78rem;
  color:var(--navy);background:var(--bg-soft);
  border:1.5px solid var(--line);border-radius:999px;
  padding:7px 12px;cursor:pointer;
  transition:border-color .15s,background .15s;
}
.chip-x span{color:var(--orange);font-size:.95rem;line-height:1}
.chip-x:hover{border-color:var(--orange)}
.chip-clear{
  border:none;background:none;font:inherit;font-size:.78rem;
  font-weight:600;color:var(--orange);cursor:pointer;
  text-decoration:underline;padding:7px 4px;
}

/* botão-gaveta (mobile) + badge de filtros ativos */
.filters-toggle{display:none}
.fbadge{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:20px;height:20px;border-radius:999px;
  background:var(--orange);color:#fff;
  font-size:.72rem;font-weight:700;padding:0 6px;
}
@media (max-width:880px){
  .filters-toggle{
    display:inline-flex;width:100%;justify-content:center;
    margin-bottom:14px;
  }
  .filters{display:none}
  .filters.open{display:grid}
}

/* ============================================================
   MARCA EM TEXTO + AJUSTES DE ÍCONES
============================================================ */

/* logo provisório: texto simples com animação no hover */
.brand{
  display:inline-flex;align-items:center;gap:10px;
  font-family:'Inter',system-ui,sans-serif;
  font-weight:700;font-size:1.12rem;letter-spacing:.05em;
  color:var(--navy);
}
.brand__ico{
  color:var(--orange);flex:none;
  transition:transform .35s cubic-bezier(.34,1.56,.64,1);
}
.brand__txt{
  position:relative;line-height:1.3;
  transition:color .2s ease;
}
.brand__txt::after{
  content:"";position:absolute;left:0;right:100%;bottom:-3px;
  height:2px;border-radius:2px;background:var(--orange);
  transition:right .28s ease;
}
.brand:hover .brand__txt{color:var(--orange)}
.brand:hover .brand__txt::after{right:0}
.brand:hover .brand__ico{transform:rotate(-8deg) scale(1.12)}
@media (prefers-reduced-motion:reduce){
  .brand__ico,.brand__txt,.brand__txt::after{transition:none}
}

/* redes sociais na barra superior */
.topbar__social{gap:12px;align-items:center}
.topbar__social a{
  display:inline-flex;color:var(--gray);
  transition:color .15s,transform .15s;
}
.topbar__social a:hover{color:var(--orange);transform:translateY(-1px)}

/* redes sociais na faixa da página de Contato */
.social-strip .links{gap:16px;align-items:center}
.social-strip .links a{
  display:inline-flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:12px;
  background:#fff;border:1.5px solid var(--line);
  color:var(--navy);
  transition:color .15s,border-color .15s,transform .15s;
}
.social-strip .links a:hover{
  color:var(--orange);border-color:var(--orange);transform:translateY(-2px);
}

/* endereço do rodapé com ícones alinhados */
.footer address span{display:flex;gap:9px;align-items:flex-start}
.footer address svg{color:var(--orange);flex:none;margin-top:3px}

/* cartões de contato da Central de Ajuda */
.help-tile svg{display:block;margin:0 auto}

/* botão do carrinho com ícone (substitui o hack do emoji no mobile) */
.cartbtn svg{flex:none}
@media (max-width:540px){
  .cartbtn{font-size:.78rem;gap:0}
  .cartbtn::after{content:none}
  .cartbtn .cartbtn__txt{display:none}
}
