:root {
   --bg:#020304;
   --panel:#12161b;
   --panel2:#171b20;
   --panel3:#0c0e11;
   --text:#ffffff;
   --muted:#aeb5c1;
   --soft:#e8ecf3;
   --line:rgba(255,255,255,.14);
   --orange:#ff7a00;
   --orange2:#ff9b18;
   --green:#20d66b;
   --danger:#ef4444;
   --shadow:0 24px 70px rgba(0,0,0,.45);
   --radius:24px;
   --container:1280px;
   --header:84px;

}

 * {
  box-sizing:border-box
}

 html {
  scroll-behavior:smooth;
  background:var(--bg)
}

 body {
  margin:0;
  background:radial-gradient(circle at 74% 20%, rgba(255,122,0,.12), transparent 34%),linear-gradient(180deg,#030405 0%,#06080a 45%,#020304 100%);
  color:var(--text);
  font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;
  overflow-x:hidden
}

 body.admin-mode {
  overflow:hidden
}

 a {
  color:inherit;
  text-decoration:none
}

button,input,select,textarea {
  font:inherit
}

button {
  cursor:pointer
}

svg {
  width:1.15em;
  height:1.15em;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round
}

.hidden {
  display:none!important
}

.container {
  width:min(calc(100% - 48px),var(--container));
  margin:0 auto
}

.mobile-only {
  display:none!important
}

 .site-header {
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(2,3,4,.93);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(18px)
}

 .nav-wrap {
  height:var(--header);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px
}

.brand {
  display:flex;
  align-items:center;
  min-width:260px
}

.brand img {
  display:block;
  width:245px;
  height:auto;
  max-height:72px;
  object-fit:contain
}

.site-nav {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:38px;
  margin-left:auto
}

.site-nav a {
  position:relative;
  color:#fff;
  font-weight:850;
  font-size:15px;
  transition:.2s
}

.site-nav a:hover,.site-nav a.active {
  color:var(--orange2)
}

.site-nav a.active:after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-19px;
  height:3px;
  border-radius:99px;
  background:var(--orange)
}

.nav-actions {
  display:flex;
  align-items:center;
  gap:14px
}

.mobile-menu-btn {
  display:none;
  width:46px;
  height:42px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.04);
  color:#fff
}

.mobile-menu-btn span {
  display:block;
  width:20px;
  height:2px;
  background:#fff;
  margin:5px auto;
  border-radius:99px
}

 .btn {
  border:0;
  border-radius:14px;
  padding:13px 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-weight:950;
  color:#fff;
  transition:.18s ease;
  white-space:nowrap
}

.btn:hover {
  transform:translateY(-1px)
}

.btn-primary {
  background:linear-gradient(135deg,var(--orange),var(--orange2));
  box-shadow:0 14px 32px rgba(255,122,0,.25)
}

.btn-primary:hover {
  box-shadow:0 18px 42px rgba(255,122,0,.34)
}

.btn-ghost {
  background:rgba(255,255,255,.045);
  border:1px solid var(--line)
}

.btn-outline {
  background:transparent;
  border:1px solid rgba(255,122,0,.55);
  color:var(--orange2)
}

.btn-whatsapp {
  background:rgba(5,20,12,.45);
  border:1px solid rgba(32,214,107,.55)
}

.btn-whatsapp svg {
  color:#25d366
}

.btn-lg {
  padding:16px 22px;
  border-radius:14px
}

.btn-block {
  width:100%
}

.btn-danger {
  background:rgba(239,68,68,.16);
  border:1px solid rgba(239,68,68,.45);
  color:#fecaca
}

 .home-screen {
  position:relative;
  min-height:calc(100vh - var(--header));
  padding:24px 0 24px;
  background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.92) 27%,rgba(0,0,0,.76) 50%,rgba(22,12,4,.56) 100%);
  overflow:hidden
}

.home-screen:before {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);
  background-size:44px 44px;
  opacity:.35;
  pointer-events:none
}

.home-screen:after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:180px;
  background:linear-gradient(0deg,#020304 0%,transparent 100%);
  pointer-events:none
}

.home-shell {
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:18px;
  min-height:calc(100vh - var(--header) - 48px)
}

 .hero-main {
  position:relative;
  display:grid;
  grid-template-columns:minmax(460px,1fr) 385px;
  gap:30px;
  align-items:start;
  min-height:358px
}

.hero-copy {
  position:relative;
  z-index:3;
  padding-top:20px;
  max-width:620px
}

.pill {
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:9px 16px;
  border:1px solid rgba(255,122,0,.8);
  border-radius:999px;
  background:rgba(255,122,0,.055);
  color:#fff;
  font-size:14px;
  font-weight:900;
  box-shadow:0 0 26px rgba(255,122,0,.07)
}

.hero-copy h1 {
  margin:30px 0 18px;
  font-size:clamp(52px,4.75vw,74px);
  line-height:.96;
  letter-spacing:-3px;
  font-weight:1000;
  text-wrap:balance
}

.hero-copy h1 span {
  color:var(--orange)
}

.hero-copy p {
  margin:0 0 26px;
  color:#e3e7ee;
  font-size:17px;
  line-height:1.62;
  max-width:600px
}

.hero-actions {
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap
}

.hero-art {
  position:absolute;
  z-index:1;
  left:41%;
  top:0;
  width:min(42vw,520px);
  height:390px;
  pointer-events:none
}

.hero-art:before {
  content:"";
  position:absolute;
  inset:-18px;
  background:radial-gradient(circle at 58% 42%,rgba(255,122,0,.18),transparent 50%);
  filter:blur(18px)
}

.hero-art img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  border-radius:0;
  opacity:.88;
  filter:contrast(1.04) saturate(1.1);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 12%,#000 86%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 12%,#000 86%,transparent 100%)
}

 .quote-panel {
  position:relative;
  z-index:4;
  background:linear-gradient(145deg,rgba(30,34,39,.96),rgba(17,20,24,.94));
  border:1px solid rgba(255,255,255,.15);
  border-radius:26px;
  padding:24px;
  box-shadow:var(--shadow);
  backdrop-filter:blur(14px)
}

.quote-panel.flash {
  animation:quoteFlash 1s ease
}

@keyframes quoteFlash {
  0%,100% {
    box-shadow:var(--shadow)
  }

  35% {
    box-shadow:0 0 0 4px rgba(255,122,0,.18),0 32px 80px rgba(255,122,0,.22)
  }

}

.section-title {
  display:flex;
  align-items:center;
  gap:14px
}

.section-title svg {
  color:var(--orange);
  width:30px;
  height:30px
}

.section-title h2 {
  margin:0;
  font-size:25px;
  letter-spacing:-.6px
}

.quote-form {
  display:grid;
  gap:12px;
  margin-top:18px
}

.form-row.two {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px
}

.quote-form label {
  display:block
}

.input-icon {
  position:relative
}

.input-icon svg {
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
  width:18px;
  height:18px;
  color:#cfd5de;
  z-index:2
}

.quote-form input,.quote-form select,.quote-form textarea,.settings-form input,.filters input,.filters select,.quote-controls select {
  width:100%;
  height:41px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:11px;
  background:rgba(255,255,255,.04);
  color:#fff;
  outline:none;
  padding:0 14px 0 42px;
  font-weight:750;
  transition:.18s
}

.quote-form select {
  appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,#fff 50%),linear-gradient(135deg,#fff 50%,transparent 50%);
  background-position:calc(100% - 18px) 17px,calc(100% - 12px) 17px;
  background-size:6px 6px,6px 6px;
  background-repeat:no-repeat
}

.quote-form input::placeholder,.quote-form textarea::placeholder {
  color:#9ca3af
}

.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus,.settings-form input:focus,.filters input:focus,.filters select:focus {
  border-color:rgba(255,122,0,.62);
  box-shadow:0 0 0 3px rgba(255,122,0,.11)
}

.last-input small {
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  color:#d9dde3;
  font-weight:850
}

.secure-note {
  margin:2px 0 0;
  color:#b5bbc6;
  font-size:12px;
  text-align:center
}

 .home-lower {
  display:grid;
  grid-template-columns:repeat(4,1fr) 1.75fr;
  gap:12px
}

.service-card,.admin-mini-card,.stats-strip {
  background:linear-gradient(145deg,rgba(24,27,31,.92),rgba(13,15,18,.94));
  border:1px solid rgba(255,255,255,.14);
  border-radius:19px;
  box-shadow:0 15px 38px rgba(0,0,0,.28)
}

.service-card {
  min-height:144px;
  padding:18px 18px 15px
}

.service-card svg {
  width:38px;
  height:38px;
  color:var(--orange);
  margin-bottom:10px
}

.service-card h3 {
  margin:0 0 8px;
  font-size:16px
}

.service-card p {
  margin:0;
  color:#b8bec8;
  font-size:12.6px;
  line-height:1.45
}

.service-card a {
  display:inline-flex;
  gap:8px;
  margin-top:16px;
  color:var(--orange2);
  font-weight:950;
  font-size:13px
}

.admin-mini-card {
  min-height:144px;
  padding:16px 18px
}

.admin-mini-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px
}

.admin-mini-head strong {
  color:var(--orange2);
  font-size:16px
}

.admin-mini-head span {
  border:1px solid var(--line);
  padding:6px 11px;
  border-radius:999px;
  color:#b7bec8;
  font-size:11px;
  background:rgba(255,255,255,.04)
}

.admin-mini-card p {
  margin:11px 0 14px;
  color:#d6dbe3;
  font-size:14px;
  line-height:1.45
}

.admin-mini-actions {
  display:grid;
  grid-template-columns:58px 58px 58px 1fr;
  gap:9px;
  align-items:stretch
}

.admin-mini-actions button {
  border:1px solid var(--line);
  border-radius:10px;
  background:rgba(255,255,255,.05);
  color:#fff;
  min-height:48px;
  font-weight:800
}

.admin-mini-actions button:not(.admin-access) {
  display:grid;
  place-items:center;
  padding:5px
}

.admin-mini-actions svg {
  width:21px;
  height:21px
}

.admin-mini-actions span {
  font-size:10px;
  display:block
}

.admin-access {
  border-color:rgba(255,122,0,.64)!important;
  color:var(--orange2)!important;
  background:rgba(255,122,0,.045)!important;
  padding:0 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px
}

.stats-strip {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  min-height:76px;
  align-items:center
}

.stats-strip div {
  display:flex;
  align-items:center;
  gap:15px;
  padding:14px 24px;
  border-right:1px solid rgba(255,255,255,.12)
}

.stats-strip div:last-child {
  border-right:0
}

.stats-strip svg {
  width:32px;
  height:32px;
  color:var(--orange)
}

.stats-strip strong {
  font-size:28px;
  letter-spacing:-1px
}

.stats-strip span {
  font-size:14px;
  color:#fff;
  line-height:1.35
}

.stats-strip small {
  color:#b7bec8;
  font-size:12px
}

 .site-footer {
  border-top:1px solid var(--line);
  padding:36px 0;
  background:#020304
}

.footer-grid {
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:20px;
  align-items:start
}

.footer-grid img {
  width:220px
}

.footer-grid p {
  color:var(--muted)
}

.footer-grid h4 {
  margin:0 0 10px
}

.link-btn {
  border:0;
  background:transparent;
  color:var(--orange2);
  font-weight:950;
  padding:0
}

 .login-view {
  position:fixed;
  inset:0;
  z-index:100;
  background:radial-gradient(circle at 30% 20%,rgba(255,122,0,.16),transparent 38%),rgba(2,3,4,.96);
  display:grid;
  place-items:center;
  padding:24px
}

.login-shell {
  width:min(980px,100%);
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:28px;
  position:relative;
  border:1px solid var(--line);
  border-radius:30px;
  padding:32px;
  background:linear-gradient(145deg,rgba(18,21,25,.98),rgba(5,6,8,.98));
  box-shadow:var(--shadow)
}

.close-view {
  position:absolute;
  right:18px;
  top:18px;
  width:42px;
  height:42px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.06);
  color:#fff;
  font-size:28px
}

.login-brand {
  display:flex;
  flex-direction:column;
  justify-content:center
}

.login-brand img {
  width:280px;
  margin-bottom:26px
}

.login-brand h1 {
  font-size:46px;
  line-height:1;
  margin:0 0 14px;
  letter-spacing:-2px
}

.login-brand p {
  color:#c5ccd7;
  line-height:1.65;
  max-width:430px
}

.login-card {
  display:grid;
  gap:16px;
  border:1px solid var(--line);
  border-radius:24px;
  padding:26px;
  background:rgba(255,255,255,.04);
  align-self:center
}

.login-card label,.settings-form label {
  display:grid;
  gap:8px
}

.login-card span,.settings-form span {
  font-weight:900;
  color:#e5e7eb
}

.login-card input,.settings-form input {
  height:48px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.05);
  color:#fff;
  padding:0 14px;
  outline:none
}

.login-card small {
  color:#aeb5c1;
  line-height:1.55
}

 .admin-app {
  position:fixed;
  inset:0;
  z-index:90;
  background:#07090c;
  display:grid;
  grid-template-columns:270px 1fr;
  color:#fff
}

.admin-sidebar {
  border-right:1px solid var(--line);
  padding:22px;
  background:linear-gradient(180deg,#07090c,#0d1015)
}

.admin-logo img {
  width:210px;
  margin-bottom:28px
}

.admin-sidebar nav {
  display:grid;
  gap:10px
}

.admin-sidebar nav button,.logout-btn {
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.035);
  color:#d9dee6;
  padding:13px 14px;
  text-align:left;
  font-weight:900
}

.admin-sidebar nav button.active {
  background:rgba(255,122,0,.14);
  border-color:rgba(255,122,0,.5);
  color:#fff
}

.logout-btn {
  width:100%;
  margin-top:20px;
  color:#fecaca
}

.admin-main {
  overflow:auto;
  padding:28px
}

.admin-topbar {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-bottom:24px
}

.eyebrow {
  color:var(--orange2);
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:12px
}

.admin-topbar h1 {
  font-size:42px;
  letter-spacing:-1.5px;
  margin:4px 0 0
}

.admin-actions {
  display:flex;
  gap:10px
}

.admin-tab {
  display:none
}

.admin-tab.active {
  display:block
}

.dashboard-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin-bottom:18px
}

.metric-card,.admin-panel {
  background:linear-gradient(145deg,rgba(23,27,32,.98),rgba(11,13,16,.98));
  border:1px solid var(--line);
  border-radius:20px;
  box-shadow:0 14px 40px rgba(0,0,0,.24)
}

.metric-card {
  padding:20px
}

.metric-card span {
  color:#bcc3ce;
  font-weight:800
}

.metric-card strong {
  display:block;
  font-size:42px;
  margin:10px 0 4px
}

.metric-card small {
  color:#9ea6b2
}

.admin-panel {
  padding:22px
}

.panel-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px
}

.panel-head.wrap {
  align-items:flex-start;
  flex-wrap:wrap
}

.panel-head h2 {
  margin:0;
  font-size:24px
}

.panel-head p {
  margin:6px 0 0;
  color:#b8c0ca
}

.filters {
  display:flex;
  gap:10px
}

.filters input {
  min-width:280px;
  padding-left:14px
}

.filters select,.quote-controls select {
  padding-left:12px
}

.quote-list {
  display:grid;
  gap:12px
}

.quote-item {
  display:grid;
  grid-template-columns:1fr auto;
  gap:16px;
  border:1px solid var(--line);
  border-radius:16px;
  padding:16px;
  background:rgba(255,255,255,.035)
}

.quote-item strong {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap
}

.quote-meta {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:9px;
  color:#b7beca;
  font-size:13px
}

.quote-details {
  margin-top:10px;
  color:#d0d6df;
  font-size:14px;
  line-height:1.6
}

.quote-controls {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end
}

.status-badge {
  display:inline-flex;
  align-items:center;
  gap:7px;
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  font-weight:950;
  border:1px solid var(--line)
}

.status-nova {
  color:#fff;
  background:rgba(255,122,0,.16);
  border-color:rgba(255,122,0,.4)
}

.status-em-analise {
  color:#bfdbfe;
  background:rgba(59,130,246,.14);
  border-color:rgba(59,130,246,.36)
}

.status-respondida {
  color:#d8b4fe;
  background:rgba(168,85,247,.14);
  border-color:rgba(168,85,247,.36)
}

.status-fechada {
  color:#bbf7d0;
  background:rgba(34,197,94,.14);
  border-color:rgba(34,197,94,.36)
}

.status-recusada {
  color:#fecaca;
  background:rgba(239,68,68,.14);
  border-color:rgba(239,68,68,.36)
}

.client-list {
  display:grid;
  gap:12px
}

.client-item {
  display:grid;
  grid-template-columns:1fr auto;
  gap:14px;
  border:1px solid var(--line);
  border-radius:18px;
  padding:18px;
  background:rgba(255,255,255,.035)
}

.client-item strong {
  display:block;
  margin-bottom:7px
}

.client-item span {
  color:var(--muted)
}

.config-panel {
  max-width:820px
}

.settings-form {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px
}

.settings-form label:nth-child(3) {
  grid-column:1/-1
}

.settings-form button {
  justify-self:start
}

.danger-zone {
  border-top:1px solid var(--line);
  margin-top:26px;
  padding-top:22px;
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap
}

.danger-zone h3,.danger-zone p {
  flex-basis:100%;
  margin:0
}

.danger-zone p {
  color:var(--muted)
}

.toast {
  position:fixed;
  z-index:200;
  right:22px;
  bottom:22px;
  max-width:390px;
  background:rgba(15,18,22,.97);
  border:1px solid rgba(255,122,0,.38);
  box-shadow:var(--shadow);
  border-radius:18px;
  padding:16px 18px;
  color:#fff;
  font-weight:850;
  transform:translateY(120px);
  opacity:0;
  transition:.25s
}

.toast.show {
  transform:translateY(0);
  opacity:1
}

 @media (max-width:1320px) {
  :root {
    --container:1220px
  }

  .nav-wrap {
    gap:18px
  }

  .brand {
    min-width:225px
  }

  .brand img {
    width:220px
  }

  .site-nav {
    gap:28px
  }

  .hero-main {
    grid-template-columns:minmax(430px,1fr) 365px;
    gap:24px
  }

  .hero-copy h1 {
    font-size:clamp(48px,4.35vw,64px)
  }

  .hero-art {
    left:40%;
    width:500px
  }

  .quote-panel {
    padding:22px
  }

  .service-card {
    padding:16px
  }

  .stats-strip div {
    padding:12px 18px
  }

}

 @media (max-height:780px) and (min-width:1051px) {
  :root {
    --header:76px
  }

  .home-screen {
    padding:18px 0
  }

  .home-shell {
    gap:13px;
    min-height:calc(100vh - var(--header) - 36px)
  }

  .brand img {
    width:205px
  }

  .nav-actions .btn {
    padding:11px 16px
  }

  .site-nav a.active:after {
    bottom:-17px
  }

  .hero-main {
    min-height:315px
  }

  .hero-copy {
    padding-top:14px
  }

  .pill {
    padding:8px 15px;
    font-size:13px
  }

  .hero-copy h1 {
    font-size:clamp(45px,4.15vw,58px);
    margin:24px 0 14px
  }

  .hero-copy p {
    font-size:15.5px;
    line-height:1.55;
    margin-bottom:20px;
    max-width:570px
  }

  .btn-lg {
    padding:13px 18px
  }

  .quote-panel {
    padding:18px 20px;
    border-radius:23px
  }

  .section-title h2 {
    font-size:22px
  }

  .quote-form {
    gap:10px;
    margin-top:15px
  }

  .quote-form input,.quote-form select {
    height:38px
  }

  .hero-art {
    height:330px;
    width:470px
  }

  .service-card,.admin-mini-card {
    min-height:126px
  }

  .service-card svg {
    width:32px;
    height:32px;
    margin-bottom:7px
  }

  .service-card h3 {
    font-size:15px;
    margin-bottom:6px
  }

  .service-card p {
    font-size:11.8px
  }

  .service-card a {
    margin-top:10px
  }

  .admin-mini-card p {
    font-size:12.5px;
    margin:8px 0 10px
  }

  .admin-mini-actions {
    grid-template-columns:52px 52px 52px 1fr
  }

  .admin-mini-actions button {
    min-height:42px
  }

  .stats-strip {
    min-height:66px
  }

  .stats-strip strong {
    font-size:25px
  }

  .stats-strip span {
    font-size:12.8px
  }

  .stats-strip small {
    font-size:11px
  }

  .stats-strip svg {
    width:28px;
    height:28px
  }

}

 @media (max-width:1100px) {
  .container {
    width:min(calc(100% - 34px),var(--container))
  }

  .nav-wrap {
    height:auto;
    min-height:78px;
    flex-wrap:wrap;
    padding:8px 0
  }

  .brand {
    min-width:auto
  }

  .mobile-menu-btn {
    display:block;
    margin-left:auto
  }

  .nav-actions {
    display:none
  }

  .site-nav {
    display:none;
    order:4;
    width:100%;
    margin:0;
    padding:12px 0;
    border-top:1px solid var(--line);
    grid-template-columns:repeat(2,1fr);
    gap:10px
  }

  .site-nav.open {
    display:grid
  }

  .site-nav a {
    padding:12px 14px;
    border:1px solid var(--line);
    border-radius:12px;
    background:rgba(255,255,255,.035)
  }

  .site-nav a.active:after {
    display:none
  }

  .mobile-only {
    display:block!important
  }

  .home-screen {
    padding:28px 0
  }

  .home-shell {
    min-height:auto
  }

  .hero-main {
    display:grid;
    grid-template-columns:1fr;
    min-height:auto
  }

  .hero-copy {
    max-width:760px
  }

  .hero-art {
    position:relative;
    left:auto;
    top:auto;
    width:100%;
    height:360px;
    grid-row:2;
    margin-top:-12px;
    opacity:.82
  }

  .quote-panel {
    grid-row:3;
    max-width:760px;
    width:100%;
    margin:0 auto
  }

  .home-lower {
    grid-template-columns:repeat(2,1fr)
  }

  .admin-mini-card {
    grid-column:1/-1
  }

  .stats-strip {
    grid-template-columns:repeat(2,1fr)
  }

  .stats-strip div:nth-child(2) {
    border-right:0
  }

  .stats-strip div:nth-child(1),.stats-strip div:nth-child(2) {
    border-bottom:1px solid var(--line)
  }

  .footer-grid {
    grid-template-columns:1fr
  }

  .admin-app {
    grid-template-columns:1fr
  }

  .admin-sidebar {
    position:sticky;
    top:0;
    z-index:3;
    border-right:0;
    border-bottom:1px solid var(--line);
    padding:12px
  }

  .admin-logo {
    display:none
  }

  .admin-sidebar nav {
    display:flex;
    overflow:auto;
    padding-bottom:4px
  }

  .admin-sidebar nav button {
    min-width:160px;
    text-align:center
  }

  .logout-btn {
    margin-top:8px
  }

  .admin-main {
    padding:18px
  }

  .dashboard-grid {
    grid-template-columns:repeat(2,1fr)
  }

  .login-shell {
    grid-template-columns:1fr
  }

  .login-brand {
    text-align:center;
    align-items:center
  }

  .login-brand p {
    margin-left:auto;
    margin-right:auto
  }

}

 @media (max-width:720px) {
  .brand img {
    width:190px
  }

  .hero-copy h1 {
    font-size:42px;
    letter-spacing:-2px
  }

  .hero-copy p {
    font-size:15.5px
  }

  .hero-actions {
    display:grid;
    grid-template-columns:1fr
  }

  .btn {
    width:100%
  }

  .hero-art {
    height:285px
  }

  .form-row.two,.home-lower,.stats-strip,.dashboard-grid,.settings-form {
    grid-template-columns:1fr
  }

  .admin-mini-actions {
    grid-template-columns:repeat(3,1fr)
  }

  .admin-access {
    grid-column:1/-1;
    min-height:46px
  }

  .stats-strip div {
    border-right:0!important
  }

  .stats-strip div {
    border-bottom:1px solid var(--line)
  }

  .stats-strip div:last-child {
    border-bottom:0
  }

  .quote-item,.client-item {
    grid-template-columns:1fr
  }

  .quote-controls {
    justify-content:stretch
  }

  .quote-controls select,.quote-controls button {
    width:100%
  }

  .panel-head,.admin-topbar {
    align-items:flex-start;
    flex-direction:column
  }

  .filters {
    width:100%;
    display:grid
  }

  .filters input {
    min-width:100%
  }

  .login-view {
    padding:12px
  }

  .login-shell {
    padding:22px;
    border-radius:24px
  }

  .login-brand h1 {
    font-size:34px
  }

  .login-brand img {
    width:230px
  }

  .footer-grid img {
    width:210px
  }

  .quote-panel {
    padding:18px;
    border-radius:22px
  }

  .section-title h2 {
    font-size:22px
  }

}

 @media (max-width:430px) {
  .container {
    width:min(calc(100% - 24px),var(--container))
  }

  .site-nav {
    grid-template-columns:1fr
  }

  .brand img {
    width:170px
  }

  .hero-copy h1 {
    font-size:36px
  }

  .pill {
    font-size:12px;
    padding:8px 12px
  }

  .hero-art {
    height:220px
  }

  .service-card,.admin-mini-card {
    border-radius:16px
  }

  .stats-strip div {
    padding:14px
  }

  .toast {
    right:12px;
    left:12px;
    bottom:12px
  }

}

/* v4.0.0 - ajuste solicitado: hero limpo e cotação somente ao clicar */
 .hero-main {
   grid-template-columns:minmax(390px,.82fr) minmax(560px,1.18fr)!important;
   align-items:center!important;
   min-height:430px!important;
   gap:28px!important;

}

 .hero-copy {
  grid-column:1!important;
  grid-row:1!important;
  max-width:620px!important;
  z-index:3!important
}

 .hero-art {
   position:relative!important;
   grid-column:2!important;
   grid-row:1!important;
   left:auto!important;
   top:auto!important;
   width:100%!important;
   height:430px!important;
   margin:0!important;
   z-index:1!important;
   border-radius:28px!important;
   overflow:hidden!important;
   background:linear-gradient(145deg,rgba(255,122,0,.08),rgba(255,255,255,.03));
   border:1px solid rgba(255,255,255,.08);
   box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 28px 70px rgba(0,0,0,.26);

}

 .hero-art:before {
  inset:-30px!important;
  background:radial-gradient(circle at 62% 45%,rgba(255,122,0,.18),transparent 54%)!important;
  filter:blur(22px)!important
}

 .hero-art:after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.74) 0%,rgba(0,0,0,.22) 20%,transparent 44%),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.18));
  pointer-events:none
}

 .hero-art img {
   width:100%!important;
   height:100%!important;
   object-fit:cover!important;
   object-position:center!important;
   opacity:.94!important;
   border-radius:28px!important;
   filter:contrast(1.06) saturate(1.08)!important;
   -webkit-mask-image:none!important;
   mask-image:none!important;

}

 .quote-panel {
   position:fixed!important;
   inset:0!important;
   z-index:120!important;
   display:none!important;
   place-items:center!important;
   padding:22px!important;
   overflow:auto!important;
   background:radial-gradient(circle at 70% 20%,rgba(255,122,0,.18),transparent 42%),rgba(2,3,4,.78)!important;
   border:0!important;
   border-radius:0!important;
   box-shadow:none!important;
   backdrop-filter:blur(14px)!important;

}

 .quote-panel.is-open {
  display:grid!important
}

 .quote-modal-card {
   position:relative;
   width:min(620px,100%);
   max-height:calc(100vh - 44px);
   overflow:auto;
   background:linear-gradient(145deg,rgba(30,34,39,.98),rgba(12,14,18,.98));
   border:1px solid rgba(255,255,255,.15);
   border-radius:28px;
   padding:28px;
   box-shadow:0 32px 90px rgba(0,0,0,.62);

}

 .quote-modal-card .close-view {
  right:18px;
  top:18px;
  z-index:5
}

 .quote-modal-card .section-title {
  padding-right:52px
}

 .quote-form textarea {
   width:100%;
   min-height:82px;
   resize:vertical;
   padding:13px 14px 12px 42px;
   line-height:1.45;

}

 .textarea-icon svg {
  top:22px!important;
  transform:none!important
}

 body.quote-open {
  overflow:hidden
}

 @media (max-width:1100px) {
   .hero-main {
    grid-template-columns:1fr!important;
    min-height:auto!important;
    gap:18px!important
  }

   .hero-copy {
    grid-column:1!important;
    grid-row:1!important;
    max-width:780px!important
  }

   .hero-art {
    grid-column:1!important;
    grid-row:2!important;
    height:360px!important;
    width:100%!important;
    margin:0!important
  }

}

 @media (max-width:720px) {
   .hero-art {
    height:300px!important;
    border-radius:22px!important
  }

   .hero-art img {
    border-radius:22px!important
  }

   .quote-modal-card {
    padding:22px 18px;
    border-radius:24px
  }

}

 @media (max-width:430px) {
   .hero-art {
    height:235px!important
  }

   .quote-panel {
    padding:12px!important
  }

   .quote-modal-card {
    max-height:calc(100vh - 24px)
  }

}

/* v5.0.0 - hero integrado ao fundo + logo transparente enviada pelo cliente */
 .brand img, .footer-grid img, .login-brand img, .admin-logo img {
   object-fit:contain!important;

}

 .hero-art {
   border:0!important;
   box-shadow:none!important;
   background:transparent!important;
   border-radius:0!important;
   overflow:visible!important;
   isolation:isolate;

}

 .hero-art:before {
   content:""!important;
   position:absolute!important;
   inset:-42px -48px -38px -58px!important;
   z-index:-1!important;
   background: radial-gradient(ellipse at 58% 52%, rgba(255,122,0,.20), transparent 46%), radial-gradient(ellipse at 47% 76%, rgba(255,122,0,.10), transparent 52%)!important;
   filter:blur(28px)!important;
   pointer-events:none!important;

}

 .hero-art:after {
   content:""!important;
   position:absolute!important;
   inset:-2px!important;
   z-index:2!important;
   background: linear-gradient(90deg, rgba(2,3,4,.98) 0%, rgba(2,3,4,.72) 7%, rgba(2,3,4,.12) 20%, transparent 44%), linear-gradient(180deg, rgba(2,3,4,.95) 0%, transparent 12%, transparent 78%, rgba(2,3,4,.88) 100%)!important;
   pointer-events:none!important;

}

 .hero-art img {
   border-radius:0!important;
   opacity:.96!important;
   filter:contrast(1.08) saturate(1.12)!important;
   -webkit-mask-image:radial-gradient(ellipse at 60% 54%, #000 0%, #000 62%, rgba(0,0,0,.88) 72%, rgba(0,0,0,.40) 86%, transparent 100%)!important;
   mask-image:radial-gradient(ellipse at 60% 54%, #000 0%, #000 62%, rgba(0,0,0,.88) 72%, rgba(0,0,0,.40) 86%, transparent 100%)!important;

}

 @media (max-width:720px) {
   .hero-art {
    border-radius:0!important;
    overflow:visible!important
  }

   .hero-art img {
    border-radius:0!important
  }

}

/* ===== Hero v6: imagem recriada e integrada ao fundo ===== */
 .hero-main {
  overflow:visible!important
}

 .hero-art {
   position:absolute;
   z-index:1;
   left:39%;
   top:-2px;
   width:min(47vw,760px)!important;
   height:430px!important;
   pointer-events:none;
   border:0!important;
   box-shadow:none!important;
   background:transparent!important;
   border-radius:0!important;
   overflow:visible!important;
   isolation:isolate;

}

 .hero-art:before {
   content:""!important;
   position:absolute!important;
   inset:-44px -42px -40px -54px!important;
   z-index:-1!important;
   background: radial-gradient(ellipse at 62% 44%, rgba(255,122,0,.24), transparent 48%), radial-gradient(ellipse at 72% 82%, rgba(255,122,0,.10), transparent 52%), radial-gradient(ellipse at 40% 65%, rgba(0,0,0,.36), transparent 56%)!important;
   filter:blur(26px)!important;
   pointer-events:none!important;

}

 .hero-art:after {
   content:""!important;
   position:absolute!important;
   inset:0!important;
   z-index:2!important;
   background: linear-gradient(90deg, rgba(2,3,4,1) 0%, rgba(2,3,4,.88) 8%, rgba(2,3,4,.34) 20%, transparent 34%), linear-gradient(180deg, rgba(2,3,4,.78) 0%, rgba(2,3,4,.06) 13%, rgba(2,3,4,.02) 76%, rgba(2,3,4,.70) 100%);
   pointer-events:none!important;

}

 .hero-art img {
   position:absolute!important;
   inset:0!important;
   width:100%!important;
   height:100%!important;
   object-fit:cover!important;
   object-position:center center!important;
   border-radius:0!important;
   opacity:.98!important;
   filter:contrast(1.07) saturate(1.08)!important;
   -webkit-mask-image: radial-gradient(ellipse at 62% 52%, #000 0%, #000 60%, rgba(0,0,0,.92) 72%, rgba(0,0,0,.48) 88%, transparent 100%);
   mask-image: radial-gradient(ellipse at 62% 52%, #000 0%, #000 60%, rgba(0,0,0,.92) 72%, rgba(0,0,0,.48) 88%, transparent 100%);

}

 @media (max-width:1320px) {
   .hero-art {
    left:37%;
    width:min(50vw,690px)!important;
    height:400px!important
  }

}

 @media (max-width:1100px) {
   .hero-art {
    position:relative!important;
    left:auto!important;
    top:auto!important;
    width:100%!important;
    height:380px!important;
    margin:0!important;
    grid-row:2!important
  }

   .hero-art:after {
    background:linear-gradient(180deg, rgba(2,3,4,.68) 0%, rgba(2,3,4,.04) 16%, rgba(2,3,4,.02) 78%, rgba(2,3,4,.76) 100%)!important
  }

   .hero-art img {
    object-position:center center!important
  }

}

 @media (max-width:720px) {
   .hero-art {
    height:300px!important
  }

}

 @media (max-width:430px) {
   .hero-art {
    height:238px!important
  }

}

/* ===== Hero v7 - composição em camadas ===== */
 .hero-main {
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(460px,1fr)!important;
  min-height:410px!important;
  overflow:visible!important
}

 .hero-copy {
  max-width:620px!important;
  position:relative!important;
  z-index:3!important
}

 .hero-art.hero-art-v7 {
   position:absolute!important;
   right:-10px!important;
   top:-8px!important;
   width:min(57vw,860px)!important;
   height:440px!important;
   left:auto!important;
   z-index:1!important;
   pointer-events:none!important;
   border:none!important;
   background:transparent!important;
   box-shadow:none!important;
   overflow:visible!important;

}

 .hero-art.hero-art-v7::before {
   content:"";
   position:absolute;
   inset:-16px -40px -56px -140px;
   background: radial-gradient(ellipse at 72% 18%, rgba(255,122,0,.18), transparent 34%), radial-gradient(ellipse at 80% 56%, rgba(255,122,0,.13), transparent 36%), radial-gradient(ellipse at 62% 86%, rgba(255,122,0,.10), transparent 42%), linear-gradient(90deg, rgba(2,3,4,0) 0%, rgba(2,3,4,.03) 30%, rgba(255,122,0,.05) 100%);
   filter:blur(12px);
   z-index:0;

}

 .hero-art.hero-art-v7 .hero-backdrop {
   position:absolute;
   inset:8px 0 14px 90px;
   background: radial-gradient(circle at 70% 18%, rgba(255,122,0,.18), transparent 18%), radial-gradient(circle at 68% 72%, rgba(255,122,0,.12), transparent 22%), linear-gradient(180deg, rgba(255,122,0,.06) 0%, transparent 20%, transparent 75%, rgba(255,122,0,.03) 100%), linear-gradient(90deg, transparent 0%, rgba(0,0,0,.08) 30%, rgba(0,0,0,.20) 100%);
   z-index:1;

}

 .hero-art.hero-art-v7 .hero-network {
   position:absolute;
   right:20px;
   top:0;
   width:min(52vw,620px);
   height:250px;
   background:url('../assets/hero-network.svg') center/contain no-repeat;
   opacity:.9;
   filter:drop-shadow(0 0 16px rgba(255,122,0,.18));
   z-index:2;

}

 .hero-art.hero-art-v7 .hero-ground {
   position:absolute;
   right:42px;
   bottom:24px;
   width:600px;
   height:110px;
   background: radial-gradient(ellipse at 55% 60%, rgba(255,122,0,.18), rgba(255,122,0,.08) 28%, transparent 65%), linear-gradient(180deg, transparent 0%, rgba(255,255,255,.03) 76%, transparent 100%);
   filter:blur(14px);
   opacity:.85;
   z-index:1;

}

 .hero-art.hero-art-v7 .hero-truck {
   position:absolute!important;
   right:0!important;
   bottom:-12px!important;
   width:min(52vw,760px)!important;
   height:auto!important;
   max-width:none!important;
   object-fit:contain!important;
   object-position:right bottom!important;
   opacity:.99!important;
   filter:drop-shadow(0 18px 28px rgba(0,0,0,.42)) drop-shadow(0 0 28px rgba(255,122,0,.06))!important;
   -webkit-mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.15) 7%, #000 16%, #000 90%, rgba(0,0,0,.88) 96%, transparent 100%), linear-gradient(180deg, rgba(0,0,0,.75) 0%, #000 14%, #000 90%, transparent 100%);
   -webkit-mask-composite:source-in;
   mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.15) 7%, #000 16%, #000 90%, rgba(0,0,0,.88) 96%, transparent 100%), linear-gradient(180deg, rgba(0,0,0,.75) 0%, #000 14%, #000 90%, transparent 100%);
   z-index:3!important;

}

 @media (max-width:1400px) {
   .hero-art.hero-art-v7 {
    width:min(58vw,800px)!important;
    height:425px!important
  }

   .hero-art.hero-art-v7 .hero-truck {
    width:min(50vw,700px)!important
  }

   .hero-art.hero-art-v7 .hero-network {
    width:min(48vw,560px);
    height:230px
  }

}

 @media (max-width:1200px) {
   .hero-main {
    min-height:395px!important
  }

   .hero-art.hero-art-v7 {
    right:-20px!important;
    width:min(56vw,720px)!important;
    height:400px!important
  }

   .hero-art.hero-art-v7 .hero-truck {
    width:min(48vw,620px)!important
  }

   .hero-art.hero-art-v7 .hero-network {
    right:0;
    width:min(44vw,480px);
    height:205px
  }

   .hero-art.hero-art-v7 .hero-ground {
    width:460px;
    right:28px
  }

}

 @media (max-width:1100px) {
   .hero-main {
    grid-template-columns:1fr!important;
    min-height:auto!important;
    gap:24px!important
  }

   .hero-art.hero-art-v7 {
    position:relative!important;
    right:auto!important;
    top:auto!important;
    width:100%!important;
    height:360px!important;
    margin-top:4px!important
  }

   .hero-art.hero-art-v7::before {
    inset:-16px -14px -26px -14px
  }

   .hero-art.hero-art-v7 .hero-backdrop {
    inset:0
  }

   .hero-art.hero-art-v7 .hero-network {
    right:16px;
    top:6px;
    width:74%;
    height:180px
  }

   .hero-art.hero-art-v7 .hero-ground {
    right:20px;
    left:18%;
    bottom:10px;
    width:auto;
    height:92px
  }

   .hero-art.hero-art-v7 .hero-truck {
    right:6px!important;
    bottom:-6px!important;
    width:min(92vw,690px)!important
  }

}

 @media (max-width:720px) {
   .hero-copy h1 {
    max-width:340px
  }

   .hero-art.hero-art-v7 {
    height:300px!important
  }

   .hero-art.hero-art-v7 .hero-network {
    right:4px;
    top:0;
    width:84%;
    height:150px;
    opacity:.85
  }

   .hero-art.hero-art-v7 .hero-truck {
    width:112%!important;
    right:-12px!important;
    bottom:-2px!important
  }

   .hero-art.hero-art-v7 .hero-ground {
    left:12%;
    right:4%;
    bottom:8px;
    height:76px
  }

}

 @media (max-width:430px) {
   .hero-art.hero-art-v7 {
    height:240px!important
  }

   .hero-art.hero-art-v7 .hero-network {
    width:86%;
    height:118px
  }

   .hero-art.hero-art-v7 .hero-truck {
    width:118%!important;
    right:-18px!important;
    bottom:4px!important
  }

}

/* ===== v9 - Correção final do hero: sem sobrepor texto, sem quadro ===== */
 .hero-main {
   position:relative!important;
   display:grid!important;
   grid-template-columns:minmax(410px, 0.88fr) minmax(520px, 1.12fr)!important;
   gap:34px!important;
   align-items:center!important;
   min-height:440px!important;
   overflow:visible!important;

}

 .hero-copy {
   position:relative!important;
   z-index:5!important;
   max-width:620px!important;
   padding-top:10px!important;

}

 .hero-art, .hero-art.hero-art-v7, .hero-art.hero-art-v9 {
   position:relative!important;
   left:auto!important;
   right:auto!important;
   top:auto!important;
   bottom:auto!important;
   grid-column:2!important;
   grid-row:1!important;
   width:100%!important;
   height:430px!important;
   margin:0!important;
   z-index:2!important;
   pointer-events:none!important;
   background:transparent!important;
   border:0!important;
   border-radius:0!important;
   box-shadow:none!important;
   overflow:visible!important;
   isolation:isolate!important;

}

 .hero-art::before, .hero-art::after, .hero-art.hero-art-v7::before, .hero-art.hero-art-v7::after, .hero-art.hero-art-v9::before, .hero-art.hero-art-v9::after {
   display:none!important;
   content:none!important;

}

 .hero-art.hero-art-v9 .hero-network, .hero-art.hero-art-v7 .hero-network {
   position:absolute!important;
   right:0!important;
   top:-16px!important;
   width:min(92%, 640px)!important;
   height:260px!important;
   z-index:1!important;
   background:url('../assets/hero-network.svg') center/contain no-repeat!important;
   opacity:.78!important;
   filter:drop-shadow(0 0 18px rgba(255,122,0,.22)) drop-shadow(0 0 38px rgba(255,122,0,.10))!important;
   mix-blend-mode:screen!important;

}

 .hero-art.hero-art-v9 .hero-glow {
   position:absolute!important;
   right:0!important;
   top:48px!important;
   width:86%!important;
   height:310px!important;
   z-index:0!important;
   background: radial-gradient(ellipse at 64% 46%, rgba(255,122,0,.20), transparent 45%), radial-gradient(ellipse at 76% 78%, rgba(255,122,0,.12), transparent 48%), linear-gradient(90deg, transparent 0%, rgba(255,122,0,.055) 100%)!important;
   filter:blur(20px)!important;
   opacity:.95!important;

}

 .hero-art.hero-art-v9 .hero-road {
   position:absolute!important;
   left:16%!important;
   right:2%!important;
   bottom:26px!important;
   height:86px!important;
   z-index:1!important;
   background: radial-gradient(ellipse at 58% 45%, rgba(255,122,0,.16), rgba(255,122,0,.06) 32%, transparent 68%), linear-gradient(180deg, transparent 0%, rgba(255,255,255,.028) 60%, transparent 100%)!important;
   filter:blur(16px)!important;
   opacity:.85!important;

}

 .hero-art img:not(.hero-truck) {
   display:none!important;

}

 .hero-art.hero-art-v9 .hero-truck, .hero-art.hero-art-v7 .hero-truck {
   position:absolute!important;
   right:-4px!important;
   bottom:4px!important;
   width:min(100%, 735px)!important;
   max-width:none!important;
   height:auto!important;
   z-index:3!important;
   display:block!important;
   object-fit:contain!important;
   object-position:right bottom!important;
   opacity:.98!important;
   background:transparent!important;
   border:0!important;
   border-radius:0!important;
   box-shadow:none!important;
   filter:drop-shadow(0 22px 28px rgba(0,0,0,.52)) drop-shadow(0 0 24px rgba(255,122,0,.055))!important;
   -webkit-mask-image: linear-gradient(90deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.50) 5%, #000 12%, #000 95%, rgba(0,0,0,.70) 100%), linear-gradient(180deg, rgba(0,0,0,.78) 0%, #000 10%, #000 91%, rgba(0,0,0,.30) 100%)!important;
   -webkit-mask-composite:source-in!important;
   mask-image: linear-gradient(90deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.50) 5%, #000 12%, #000 95%, rgba(0,0,0,.70) 100%), linear-gradient(180deg, rgba(0,0,0,.78) 0%, #000 10%, #000 91%, rgba(0,0,0,.30) 100%)!important;

}

 @media (max-width:1320px) {
   .hero-main {
     grid-template-columns:minmax(390px, .88fr) minmax(480px, 1.12fr)!important;
     gap:28px!important;

  }

   .hero-art, .hero-art.hero-art-v7, .hero-art.hero-art-v9 {
     height:405px!important;

  }

   .hero-art.hero-art-v9 .hero-truck, .hero-art.hero-art-v7 .hero-truck {
     width:min(100%, 670px)!important;

  }

   .hero-art.hero-art-v9 .hero-network, .hero-art.hero-art-v7 .hero-network {
     width:88%!important;
     height:230px!important;

  }

}

 @media (max-width:1100px) {
   .hero-main {
     grid-template-columns:1fr!important;
     min-height:auto!important;
     gap:16px!important;

  }

   .hero-art, .hero-art.hero-art-v7, .hero-art.hero-art-v9 {
     grid-column:1!important;
     grid-row:2!important;
     width:100%!important;
     height:360px!important;
     margin-top:2px!important;

  }

   .hero-art.hero-art-v9 .hero-truck, .hero-art.hero-art-v7 .hero-truck {
     right:0!important;
     width:min(94vw, 690px)!important;

  }

   .hero-art.hero-art-v9 .hero-network, .hero-art.hero-art-v7 .hero-network {
     right:6px!important;
     width:74%!important;
     height:185px!important;

  }

}

 @media (max-width:720px) {
   .hero-art, .hero-art.hero-art-v7, .hero-art.hero-art-v9 {
     height:300px!important;

  }

   .hero-art.hero-art-v9 .hero-truck, .hero-art.hero-art-v7 .hero-truck {
     width:108%!important;
     right:-12px!important;

  }

   .hero-art.hero-art-v9 .hero-network, .hero-art.hero-art-v7 .hero-network {
     width:86%!important;
     height:145px!important;

  }

}

 @media (max-width:430px) {
   .hero-art, .hero-art.hero-art-v7, .hero-art.hero-art-v9 {
     height:238px!important;

  }

   .hero-art.hero-art-v9 .hero-truck, .hero-art.hero-art-v7 .hero-truck {
     width:116%!important;
     right:-18px!important;

  }

   .hero-art.hero-art-v9 .hero-network, .hero-art.hero-art-v7 .hero-network {
     height:118px!important;

  }

}

/* ===== v10 - hero com imagem tratada e bordas transparentes ===== */
 .hero-main {
   position:relative!important;
   display:grid!important;
   grid-template-columns:minmax(420px, .95fr) minmax(520px, 1.05fr)!important;
   gap:26px!important;
   align-items:center!important;
   min-height:400px!important;
   overflow:visible!important;

}

 .hero-copy {
   grid-column:1!important;
   grid-row:1!important;
   max-width:620px!important;
   position:relative!important;
   z-index:3!important;
   padding-top:8px!important;

}

 .hero-art.hero-art-v10 {
   grid-column:2!important;
   grid-row:1!important;
   position:relative!important;
   left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
   width:100%!important;
   height:auto!important;
   min-height:360px!important;
   margin:0!important;
   border:0!important;
   border-radius:0!important;
   background:transparent!important;
   box-shadow:none!important;
   overflow:visible!important;
   isolation:isolate!important;
   pointer-events:none!important;

}

 .hero-art.hero-art-v10::before, .hero-art.hero-art-v10::after {
  display:none!important;
  content:none!important
}

 .hero-art.hero-art-v10 .hero-scene {
   display:block!important;
   width:100%!important;
   height:auto!important;
   max-width:830px!important;
   margin-left:auto!important;
   object-fit:contain!important;
   object-position:center right!important;
   border:0!important;
   border-radius:0!important;
   background:transparent!important;
   box-shadow:none!important;
   opacity:1!important;
   filter:drop-shadow(0 10px 24px rgba(0,0,0,.18))!important;

}

/* desativa restos das versões anteriores quando o v10 estiver presente */
 .hero-art.hero-art-v10 .hero-network, .hero-art.hero-art-v10 .hero-glow, .hero-art.hero-art-v10 .hero-road, .hero-art.hero-art-v10 .hero-truck, .hero-art.hero-art-v10 .hero-backdrop, .hero-art.hero-art-v10 > img:not(.hero-scene) {
  display:none!important
}

 @media (max-width:1320px) {
   .hero-main {
    grid-template-columns:minmax(390px,.96fr) minmax(470px,1.04fr)!important;
    gap:20px!important
  }

   .hero-art.hero-art-v10 .hero-scene {
    max-width:760px!important
  }

}

 @media (max-width:1100px) {
   .hero-main {
    grid-template-columns:1fr!important;
    min-height:auto!important;
    gap:16px!important
  }

   .hero-copy {
    max-width:760px!important
  }

   .hero-art.hero-art-v10 {
    grid-column:1!important;
    grid-row:2!important;
    min-height:auto!important
  }

   .hero-art.hero-art-v10 .hero-scene {
    max-width:100%!important;
    width:100%!important
  }

}

 @media (max-width:720px) {
   .hero-art.hero-art-v10 .hero-scene {
    width:100%!important
  }

}

/* ===== v13 - ajuste correto baseado na v10 ===== */

/* Mantém a lógica boa da v10 e só aumenta/posiciona a imagem com borda já tratada no PNG */
 .hero-main {
   position:relative!important;
   display:grid!important;
   grid-template-columns:minmax(420px, .95fr) minmax(540px, 1.05fr)!important;
   gap:20px!important;
   align-items:center!important;
   min-height:410px!important;
   overflow:visible!important;

}

 .hero-copy {
   grid-column:1!important;
   grid-row:1!important;
   max-width:620px!important;
   position:relative!important;
   z-index:4!important;
   padding-top:8px!important;

}

 .hero-art.hero-art-v10 {
   grid-column:2!important;
   grid-row:1!important;
   position:relative!important;
   left:auto!important;
   right:auto!important;
   top:auto!important;
   bottom:auto!important;
   width:100%!important;
   height:auto!important;
   min-height:370px!important;
   margin:0!important;
   border:0!important;
   border-radius:0!important;
   background:transparent!important;
   box-shadow:none!important;
   overflow:visible!important;
   isolation:isolate!important;
   pointer-events:none!important;

}

/* Sem faixa por cima. A borda foi removida direto no PNG. */
 .hero-art.hero-art-v10::before, .hero-art.hero-art-v10::after {
   display:none!important;
   content:none!important;

}

 .hero-art.hero-art-v10 .hero-scene {
   display:block!important;
   width:116%!important;
   max-width:960px!important;
   height:auto!important;
   margin-left:-34px!important;
   margin-right:-46px!important;
   margin-top:-6px!important;
   object-fit:contain!important;
   object-position:center right!important;
   border:0!important;
   border-radius:0!important;
   background:transparent!important;
   box-shadow:none!important;
   opacity:1!important;
   filter:drop-shadow(0 10px 22px rgba(0,0,0,.14))!important;

}

 @media (max-width:1320px) {
   .hero-main {
     grid-template-columns:minmax(390px,.95fr) minmax(500px,1.05fr)!important;
     gap:14px!important;

  }

   .hero-art.hero-art-v10 .hero-scene {
     width:114%!important;
     max-width:900px!important;
     margin-left:-26px!important;
     margin-right:-32px!important;

  }

}

 @media (max-width:1100px) {
   .hero-main {
     grid-template-columns:1fr!important;
     min-height:auto!important;
     gap:16px!important;

  }

   .hero-copy {
     max-width:760px!important;

  }

   .hero-art.hero-art-v10 {
     grid-column:1!important;
     grid-row:2!important;
     min-height:auto!important;

  }

   .hero-art.hero-art-v10 .hero-scene {
     width:106%!important;
     max-width:none!important;
     margin-left:-10px!important;
     margin-right:-12px!important;
     margin-top:0!important;

  }

}

 @media (max-width:720px) {
   .hero-art.hero-art-v10 .hero-scene {
     width:108%!important;
     margin-left:-8px!important;
     margin-right:-8px!important;

  }

}

 @media (max-width:430px) {
   .hero-art.hero-art-v10 .hero-scene {
     width:110%!important;
     margin-left:-6px!important;
     margin-right:-6px!important;

  }

}

/* ===== v14 - correção responsiva do hero/caminhão ===== */

/* Desktop mantém texto + imagem lado a lado */
 .hero-main {
   position:relative!important;
   display:grid!important;
   grid-template-columns:minmax(420px, .95fr) minmax(540px, 1.05fr)!important;
   gap:20px!important;
   align-items:center!important;
   min-height:410px!important;
   overflow:visible!important;
   margin-bottom:18px!important;

}

 .hero-copy {
   grid-column:1!important;
   grid-row:1!important;
   position:relative!important;
   z-index:4!important;

}

 .hero-art.hero-art-v10 {
   grid-column:2!important;
   grid-row:1!important;
   position:relative!important;
   width:100%!important;
   height:auto!important;
   min-height:0!important;
   margin:0!important;
   overflow:visible!important;
   z-index:1!important;

}

 .hero-art.hero-art-v10 .hero-scene {
   position:relative!important;
   inset:auto!important;
   display:block!important;
   width:116%!important;
   max-width:960px!important;
   height:auto!important;
   margin-left:-34px!important;
   margin-right:-46px!important;
   margin-top:-6px!important;
   object-fit:contain!important;
   object-position:center right!important;

}

/* Janela média: vira layout em coluna para a imagem não entrar nos cards */
 @media (max-width:1180px) {
   .hero-main {
     grid-template-columns:1fr!important;
     gap:18px!important;
     align-items:start!important;
     min-height:auto!important;
     margin-bottom:18px!important;

  }

   .hero-copy {
     grid-column:1!important;
     grid-row:1!important;
     max-width:760px!important;
     z-index:3!important;

  }

   .hero-art.hero-art-v10 {
     grid-column:1!important;
     grid-row:2!important;
     position:relative!important;
     width:100%!important;
     height:auto!important;
     min-height:0!important;
     margin:0!important;
     overflow:hidden!important;
     z-index:1!important;

  }

   .hero-art.hero-art-v10 .hero-scene {
     position:relative!important;
     display:block!important;
     width:100%!important;
     max-width:980px!important;
     height:auto!important;
     margin:0 auto!important;
     object-fit:contain!important;
     object-position:center!important;

  }

   .home-lower {
     position:relative!important;
     z-index:2!important;
     margin-top:8px!important;

  }

}

/* Tablet: imagem menor e sempre antes dos cards */
 @media (max-width:900px) {
   .hero-main {
     gap:14px!important;
     margin-bottom:14px!important;

  }

   .hero-art.hero-art-v10 {
     max-height:360px!important;

  }

   .hero-art.hero-art-v10 .hero-scene {
     width:106%!important;
     max-width:none!important;
     margin-left:-3%!important;
     margin-right:0!important;

  }

   .home-lower {
     grid-template-columns:1fr!important;
     margin-top:8px!important;

  }

}

/* Celular */
 @media (max-width:720px) {
   .hero-copy h1 {
     font-size:42px!important;

  }

   .hero-art.hero-art-v10 {
     max-height:300px!important;

  }

   .hero-art.hero-art-v10 .hero-scene {
     width:112%!important;
     margin-left:-6%!important;

  }

}

 @media (max-width:430px) {
   .hero-copy h1 {
     font-size:36px!important;

  }

   .hero-art.hero-art-v10 {
     max-height:240px!important;

  }

   .hero-art.hero-art-v10 .hero-scene {
     width:118%!important;
     margin-left:-9%!important;

  }

}

/* ===== v23 - HERO LIMPO =====
   Usa a imagem do Photoshop como veio, sem máscara, sem fade CSS, sem filtro e sem sombra.
   O único papel do CSS aqui é posicionar e deixar responsivo.
*/
 .hero-main {
   position:relative!important;
   display:grid!important;
   grid-template-columns:minmax(420px, .95fr) minmax(540px, 1.05fr)!important;
   gap:20px!important;
   align-items:center!important;
   min-height:auto!important;
   overflow:visible!important;
   margin-bottom:18px!important;

}

 .hero-copy {
   grid-column:1!important;
   grid-row:1!important;
   position:relative!important;
   z-index:3!important;
   max-width:620px!important;

}

 .hero-art, .hero-art.hero-art-v10 {
   grid-column:2!important;
   grid-row:1!important;
   position:relative!important;
   left:auto!important;
   right:auto!important;
   top:auto!important;
   bottom:auto!important;
   width:100%!important;
   height:auto!important;
   min-height:0!important;
   max-height:none!important;
   margin:0!important;
   padding:0!important;
   overflow:visible!important;
   border:0!important;
   border-radius:0!important;
   background:transparent!important;
   box-shadow:none!important;
   opacity:1!important;
   filter:none!important;
   pointer-events:none!important;
   isolation:auto!important;

}

 .hero-art::before, .hero-art::after, .hero-art.hero-art-v10::before, .hero-art.hero-art-v10::after {
   display:none!important;
   content:none!important;
   background:none!important;
   box-shadow:none!important;
   filter:none!important;

}

 .hero-art img, .hero-art.hero-art-v10 .hero-scene {
   position:relative!important;
   inset:auto!important;
   display:block!important;
   width:100%!important;
   max-width:960px!important;
   height:auto!important;
   margin:0 0 0 auto!important;
   padding:0!important;
   object-fit:contain!important;
   object-position:center right!important;
   opacity:1!important;
   border:0!important;
   border-radius:0!important;
   background:transparent!important;
   box-shadow:none!important;
   filter:none!important;
   transform:none!important;
   -webkit-mask-image:none!important;
   mask-image:none!important;

}

/* Mantém restos antigos desligados */
 .hero-art.hero-art-v10 .hero-network, .hero-art.hero-art-v10 .hero-glow, .hero-art.hero-art-v10 .hero-road, .hero-art.hero-art-v10 .hero-truck, .hero-art.hero-art-v10 .hero-backdrop, .hero-art.hero-art-v10 > img:not(.hero-scene) {
   display:none!important;

}

/* Responsivo limpo: imagem vai para baixo do texto e nunca passa por cima dos cards */
 @media (max-width:1180px) {
   .hero-main {
     grid-template-columns:1fr!important;
     gap:18px!important;
     align-items:start!important;
     margin-bottom:18px!important;

  }

   .hero-copy {
     grid-column:1!important;
     grid-row:1!important;
     max-width:760px!important;

  }

   .hero-art, .hero-art.hero-art-v10 {
     grid-column:1!important;
     grid-row:2!important;
     width:100%!important;
     overflow:visible!important;

  }

   .hero-art img, .hero-art.hero-art-v10 .hero-scene {
     width:100%!important;
     max-width:980px!important;
     margin:0 auto!important;
     object-position:center!important;

  }

   .home-lower {
     position:relative!important;
     z-index:2!important;
     margin-top:8px!important;

  }

}

 @media (max-width:900px) {
   .hero-art img, .hero-art.hero-art-v10 .hero-scene {
     width:100%!important;
     max-width:100%!important;

  }

   .home-lower {
     grid-template-columns:1fr!important;

  }

}

 @media (max-width:720px) {
   .hero-copy h1 {
     font-size:42px!important;

  }

   .hero-art img, .hero-art.hero-art-v10 .hero-scene {
     width:106%!important;
     margin-left:-3%!important;
     margin-right:0!important;

  }

}

 @media (max-width:430px) {
   .hero-copy h1 {
     font-size:36px!important;

  }

   .hero-art img, .hero-art.hero-art-v10 .hero-scene {
     width:110%!important;
     margin-left:-5%!important;

  }

}

/* ===== v24 - imagem do hero maior, no tamanho visual da v16 ===== */

/* Mantém a imagem do Photoshop e o hero limpo da v23; só aumenta a arte. */
 @media (min-width:1181px) {
   .hero-main {
     grid-template-columns:minmax(420px,.94fr) minmax(560px,1.06fr)!important;
     gap:18px!important;
     align-items:center!important;

  }

   .hero-art, .hero-art.hero-art-v10 {
     width:100%!important;
     overflow:visible!important;

  }

   .hero-art img, .hero-art.hero-art-v10 .hero-scene {
     width:118%!important;
     max-width:1080px!important;
     margin-left:-8%!important;
     margin-right:-5%!important;
     margin-top:-4px!important;
     object-fit:contain!important;
     object-position:center right!important;

  }

}

 @media (max-width:1180px) {
   .hero-art img, .hero-art.hero-art-v10 .hero-scene {
     width:102%!important;
     max-width:1000px!important;
     margin-left:-1%!important;
     margin-right:-1%!important;

  }

}

 @media (max-width:900px) {
   .hero-art img, .hero-art.hero-art-v10 .hero-scene {
     width:108%!important;
     max-width:none!important;
     margin-left:-4%!important;
     margin-right:-2%!important;

  }

}

 @media (max-width:720px) {
   .hero-art img, .hero-art.hero-art-v10 .hero-scene {
     width:112%!important;
     margin-left:-6%!important;
     margin-right:-2%!important;

  }

}

 @media (max-width:430px) {
   .hero-art img, .hero-art.hero-art-v10 .hero-scene {
     width:116%!important;
     margin-left:-8%!important;
     margin-right:-2%!important;

  }

}

/* ===== v25 - ajuste de enquadramento para monitor/notebook menor ===== */

/* A v24 ficou boa em desktop grande, mas em monitores menores o caminhão ficou pequeno. */

/* Estas regras aumentam a presença da imagem entre ~1181px e 1600px sem afetar mobile. */
 @media (min-width:1501px) and (max-width:1700px) {
   .hero-main {
     grid-template-columns:minmax(420px,.93fr) minmax(590px,1.07fr)!important;
     gap:16px!important;

  }

   .hero-art img, .hero-art.hero-art-v10 .hero-scene {
     width:122%!important;
     max-width:1120px!important;
     margin-left:-10%!important;
     margin-right:-6%!important;
     margin-top:-4px!important;

  }

}

 @media (min-width:1281px) and (max-width:1500px) {
   .hero-main {
     grid-template-columns:minmax(400px,.92fr) minmax(600px,1.08fr)!important;
     gap:14px!important;
     align-items:center!important;

  }

   .hero-copy {
     max-width:600px!important;

  }

   .hero-art, .hero-art.hero-art-v10 {
     overflow:visible!important;

  }

   .hero-art img, .hero-art.hero-art-v10 .hero-scene {
     width:128%!important;
     max-width:1180px!important;
     margin-left:-16%!important;
     margin-right:-8%!important;
     margin-top:-2px!important;
     object-position:center right!important;

  }

}

 @media (min-width:1181px) and (max-width:1280px) {
   .hero-main {
     grid-template-columns:minmax(380px,.93fr) minmax(520px,1.07fr)!important;
     gap:12px!important;

  }

   .hero-copy {
     max-width:560px!important;

  }

   .hero-art img, .hero-art.hero-art-v10 .hero-scene {
     width:124%!important;
     max-width:1080px!important;
     margin-left:-13%!important;
     margin-right:-8%!important;
     margin-top:0!important;

  }

}

/* ===== v26 - remove atalhos de área administrativa do site público ===== */

/* Remove o card administrativo da home e redistribui os 4 cards de serviço. */
 .home-lower {
   grid-template-columns:repeat(4,1fr)!important;
   gap:14px!important;

}

 .service-card {
   min-height:166px!important;

}

/* Rodapé agora tem apenas logo/texto + contato. */
 .footer-grid {
   grid-template-columns:1.1fr 1fr!important;
   gap:36px!important;
   align-items:start!important;

}

 .footer-grid > div:last-child {
   justify-self:end!important;
   text-align:left!important;
   min-width:300px!important;

}

/* Garantia: caso algum card antigo permaneça em cache, não exibe. */
 .admin-mini-card {
   display:none!important;

}

 @media (max-width:1100px) {
   .home-lower {
     grid-template-columns:repeat(2,1fr)!important;

  }

   .footer-grid {
     grid-template-columns:1fr 1fr!important;

  }

   .footer-grid > div:last-child {
     justify-self:start!important;
     min-width:0!important;

  }

}

 @media (max-width:720px) {
   .home-lower {
     grid-template-columns:1fr!important;

  }

   .footer-grid {
     grid-template-columns:1fr!important;
     gap:22px!important;

  }

   .footer-grid > div:last-child {
     justify-self:start!important;

  }

}

/* ===== v27 - limpeza da tela de login ===== */
 .login-brand p, .login-card small {
   display:none!important;

}

 .login-shell .close-view {
   top:18px!important;
   right:18px!important;
   width:44px!important;
   height:44px!important;
   display:flex!important;
   align-items:center!important;
   justify-content:center!important;
   border-radius:16px!important;
   z-index:6!important;
   line-height:1!important;
   transform:none!important;

}

 .login-card input::placeholder {
   color:transparent!important;

}

 .login-card {
   align-self:center!important;

}

 @media (max-width:720px) {
   .login-shell .close-view {
     top:14px!important;
     right:14px!important;
     width:40px!important;
     height:40px!important;

  }

}

/* ===== v31 - correção estrutural do login ===== */

/* Base v27: não altera tamanho da logo, dos campos ou do botão de entrar. */

/* Centraliza a área da logo/título na coluna esquerda. */
 .login-brand {
   align-items:center!important;
   text-align:center!important;

}

/* Reduz apenas a fonte do título solicitado. */
 .login-brand h1 {
   font-size:20px!important;
   line-height:1.12!important;
   letter-spacing:-0.5px!important;
   text-align:center!important;
   margin-left:auto!important;
   margin-right:auto!important;

}

/* O X agora está dentro do card do formulário, não solto no modal. */
 .login-card {
   position:relative!important;
   padding-top:62px!important;

}

/* Botão fechar realmente dentro da aba do login. */
 .login-card .close-view.login-close-inside, .login-shell .login-card .close-view {
   position:absolute!important;
   top:16px!important;
   right:16px!important;
   width:38px!important;
   height:38px!important;
   min-width:38px!important;
   min-height:38px!important;
   padding:0!important;
   display:flex!important;
   align-items:center!important;
   justify-content:center!important;
   border-radius:13px!important;
   font-size:24px!important;
   line-height:1!important;
   transform:none!important;
   z-index:20!important;

}

/* Garante que não exista outro X fora da aba. */
 .login-shell > .close-view:not(.login-close-inside) {
   display:none!important;

}

 @media (max-width:720px) {
   .login-brand h1 {
     font-size:20px!important;

  }

   .login-card {
     padding-top:58px!important;

  }

   .login-card .close-view.login-close-inside, .login-shell .login-card .close-view {
     top:12px!important;
     right:12px!important;
     width:36px!important;
     height:36px!important;
     min-width:36px!important;
     min-height:36px!important;
     font-size:22px!important;

  }

}


/* ===== v35 - dados da empresa no rodapé ===== */
/* Rodapé em 3 colunas: logo/descrição, dados da empresa e contato. */
.footer-grid {
  grid-template-columns: 1.15fr 0.95fr 1fr !important;
  gap: 28px !important;
  align-items: start !important;
}

.footer-grid > div:last-child {
  justify-self: end !important;
  text-align: left !important;
  min-width: 260px !important;
}

@media (max-width: 1100px) {
  .footer-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 28px !important;
  }

  .footer-grid > div:last-child {
    justify-self: start !important;
    min-width: 0 !important;
  }
}

@media (max-width: 720px) {
  .footer-grid {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  .footer-grid > div:last-child {
    justify-self: start !important;
  }
}


/* ===== v40 - melhorias na aba cotação ===== */
.quote-city-row input {
  padding-right: 18px !important;
}

.quote-measures {
  display: grid;
  grid-template-columns: 1.25fr 0.72fr 0.72fr;
  gap: 12px;
}

.quote-measures .last-input input {
  padding-right: 46px !important;
}

.quote-measures input[type="number"]::-webkit-outer-spin-button,
.quote-measures input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.quote-measures input[type="number"] {
  appearance: textfield;
  -moz-appearance: textfield;
}

@media (max-width: 720px) {
  .quote-measures {
    grid-template-columns: 1fr;
  }
}


/* ===== v41 - autocomplete de cidades e correção do Backspace ===== */
.city-autocomplete {
  position: relative;
  z-index: 8;
}

.city-autocomplete:focus-within {
  z-index: 25;
}

.city-suggestions {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 7px);
  max-height: 218px;
  overflow-y: auto;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 14px;
  background: rgba(11,13,16,.98);
  box-shadow: 0 18px 48px rgba(0,0,0,.46);
  padding: 6px;
  z-index: 80;
}

.city-suggestions[hidden] {
  display: none !important;
}

.city-suggestions button {
  width: 100%;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #eef2f7;
  padding: 10px 12px;
  text-align: left;
  font-weight: 800;
  cursor: pointer;
}

.city-suggestions button:hover,
.city-suggestions button.is-active {
  background: rgba(255,122,0,.14);
  color: #fff;
}


/* ===== v44 - correções da cotação: select e autocomplete ===== */

/* Melhora a aparência das opções do select nos navegadores que permitem estilização. */
.quote-form select option {
  background: #1b1f25;
  color: #ffffff;
  font-weight: 800;
}

/* Placeholder do select não aparece como item clicável na lista. */
.quote-form select option[disabled] {
  color: #9ca3af;
}

/* Corrige visual quando o navegador tenta aplicar auto preenchimento. */
.quote-form input:-webkit-autofill,
.quote-form input:-webkit-autofill:hover,
.quote-form input:-webkit-autofill:focus,
.quote-form textarea:-webkit-autofill,
.quote-form textarea:-webkit-autofill:hover,
.quote-form textarea:-webkit-autofill:focus,
.quote-form select:-webkit-autofill,
.quote-form select:-webkit-autofill:hover,
.quote-form select:-webkit-autofill:focus {
  -webkit-text-fill-color: #ffffff !important;
  caret-color: #ffffff !important;
  box-shadow: 0 0 0 1000px #202329 inset !important;
  -webkit-box-shadow: 0 0 0 1000px #202329 inset !important;
  border-color: rgba(255, 122, 0, .62) !important;
  transition: background-color 9999s ease-in-out 0s !important;
}

/* Evita que campos preenchidos automaticamente fiquem com fundo claro. */
.quote-form input,
.quote-form select,
.quote-form textarea {
  color-scheme: dark;
}


/* ===== v45 - envio da cotação por e-mail ===== */
.quote-form button[disabled] {
  opacity: .72;
  cursor: wait;
  filter: saturate(.75);
}
