:root{
      --orange:#ff6600;
      --orange-dark:#dd5700;
      --ink:#1f1f1f;
      --muted:#66615d;
      --cream:#f8f4ef;
      --cream-2:#fffaf5;
      --line:#e9ded3;
      --white:#ffffff;
      --soft:#f2ece6;
      --shadow:0 18px 55px rgba(40,25,12,.11);
      --radius:28px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth;background:var(--cream)}
    body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--cream);line-height:1.55;overflow-x:hidden}
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    .container{width:min(1160px,calc(100% - 40px));margin:auto}
    .eyebrow{font-size:.79rem;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:var(--orange)}
    h1,h2,h3{line-height:1.08;margin:0 0 18px}
    h1{font-size:clamp(2.55rem,5.8vw,5.3rem);letter-spacing:-.05em}
    h2{font-size:clamp(2rem,4vw,3.65rem);letter-spacing:-.04em}
    h3{font-size:1.25rem}
    p{margin:0 0 18px;color:#4c4845}
    .lead{font-size:clamp(1.08rem,1.9vw,1.35rem);max-width:760px;color:#4d4844}
    .btn{display:inline-flex;align-items:center;gap:10px;padding:15px 22px;border-radius:999px;background:var(--orange);color:white;font-weight:800;transition:.2s ease;box-shadow:0 12px 30px rgba(255,102,0,.24)}
    .btn:hover{transform:translateY(-2px);background:var(--orange-dark)}
    .btn.secondary{background:transparent;color:var(--ink);box-shadow:none;border:1px solid #d7cec6}
    header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.91);backdrop-filter:blur(14px);border-bottom:1px solid rgba(230,220,211,.8)}
    .nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}
    .brand img{width:280px;max-height:55px;object-fit:contain;object-position:left center}
    nav{display:flex;align-items:center;gap:26px;font-size:.94rem;font-weight:650}
    .nav-cta{padding:11px 17px;border-radius:999px;background:var(--orange);color:#fff}
    .hero{padding:72px 0 62px;background:linear-gradient(115deg,#fff 0%,#fff 56%,#fbf4ec 56%,#fff4e7 100%);overflow:hidden}
    .hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:58px;align-items:center}
    .hero-copy .eyebrow{margin-bottom:18px}
    .hero-copy h1 span{color:var(--orange)}
    .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
    .hero-note{display:flex;gap:16px;align-items:flex-start;margin-top:34px;padding-top:24px;border-top:1px solid var(--line);max-width:760px}
    .hero-note b{display:block;margin-bottom:4px}
    .dot{min-width:11px;width:11px;height:11px;border-radius:50%;background:var(--orange);margin-top:8px;box-shadow:0 0 0 7px rgba(255,102,0,.11)}
    .photo-wrap{position:relative;border-radius:46px 46px 12px 12px;overflow:hidden;box-shadow:var(--shadow);background:#eee;min-height:620px}
    .photo-wrap img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;object-position:50% 34%}
    .photo-tag{position:absolute;left:22px;right:22px;bottom:20px;padding:18px 20px;border-radius:18px;background:rgba(26,26,26,.88);color:#fff;backdrop-filter:blur(8px)}
    .photo-tag small{display:block;color:#ffba8c;margin-bottom:4px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}
    section{padding:90px 0}
    .section-head{max-width:830px;margin-bottom:45px}
    .section-head.center{text-align:center;margin-left:auto;margin-right:auto}
    .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .card{border:1px solid var(--line);border-radius:28px 28px 14px 14px;padding:28px;background:#fff}
    .card .num{display:inline-flex;width:42px;height:42px;border-radius:13px;align-items:center;justify-content:center;background:#fff2e8;color:var(--orange);font-weight:900;margin-bottom:22px}
    .soft{background:var(--cream)}
    .impact-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:34px}
    .impact-pill{background:white;border:1px solid var(--line);border-radius:22px 22px 10px 10px;padding:20px 18px;font-weight:760;min-height:94px;display:flex;align-items:flex-end}
    .quote-band{background:var(--ink);color:white;padding:48px 0}
    .quote-band .container{display:grid;grid-template-columns:.75fr 1.25fr;gap:45px;align-items:center}
    .quote-band p{color:#e8e3df;font-size:clamp(1.3rem,2.5vw,2rem);line-height:1.35;margin:0}
    .split{background:#fff}
    .split-intro{display:grid;grid-template-columns:.92fr 1.08fr;gap:54px;align-items:center}
    .split-photo{border-radius:44px 44px 12px 12px;overflow:hidden;box-shadow:var(--shadow);height:660px}
    .split-photo img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
    .balance{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:28px 0}
    .balance .side{padding:22px;border-radius:24px 24px 10px 10px;border:1px solid var(--line);background:var(--cream-2)}
    .balance .side strong{display:block;font-size:1.08rem;margin-bottom:8px}
    .balance .minus strong{color:#8c461e}.balance .plus strong{color:#2c6748}
    .three-paths{margin-top:58px;padding:36px;background:var(--cream);border-radius:34px 34px 16px 16px}
    .three-paths h3{font-size:1.65rem}
    .three-paths-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
    .path{background:#fff;border:1px solid var(--line);border-radius:24px 24px 10px 10px;padding:24px}
    .path .tag{font-size:.76rem;color:var(--orange);font-weight:850;text-transform:uppercase;letter-spacing:.1em}
    .question{margin-top:22px;background:var(--ink);border-radius:26px 26px 12px 12px;padding:30px;color:#fff}
    .question p{color:#efebe8;margin:0;font-size:1.12rem}
    .question strong{color:#ff9853}
    .timeline{margin-top:70px;display:grid;grid-template-columns:1fr 1fr;gap:18px}
    .stage{position:relative;border-left:4px solid var(--orange);padding:28px 28px 28px 30px;background:#fff;border-top:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0 24px 12px 0}
    .stage .kicker{font-size:.8rem;font-weight:900;color:var(--orange);text-transform:uppercase;letter-spacing:.12em}
    .alert{margin-top:28px;padding:22px 24px;border:1px solid #ffceb1;background:#fff6f0;border-radius:20px 20px 10px 10px}
    .alert strong{color:#b94c0b}
    .diagnosis{background:linear-gradient(120deg,#f7f1eb 0%,#fff 65%)}
    .diag-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center}
    .diag-photo{height:640px;border-radius:44px 44px 12px 12px;overflow:hidden;box-shadow:var(--shadow)}
    .diag-photo img{width:100%;height:100%;object-fit:cover;object-position:center 28%}
    .checklist{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}
    .check{padding:16px 17px;border:1px solid var(--line);background:#fff;border-radius:18px 18px 8px 8px;font-weight:700;display:flex;gap:9px;align-items:flex-start}
    .check:before{content:'✓';color:var(--orange);font-weight:1000}
    .process{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
    .process .card{padding:24px}
    .deliverables{background:var(--ink);color:#fff}
    .deliverables p{color:#d9d5d2}
    .deliver-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:32px}
    .deliver{border:1px solid #403d3a;border-radius:24px 24px 10px 10px;padding:24px;background:#242424}
    .deliver b{display:block;color:#ff9450;margin-bottom:8px}
    .cta{background:var(--orange);color:#fff;padding:75px 0}
    .cta .container{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
    .cta h2{max-width:760px}.cta p{color:#fff1e8;max-width:730px;font-size:1.12rem}
    .cta .btn{background:#1f1f1f;box-shadow:none;justify-self:end;font-size:1.03rem}
    .faq details{border-bottom:1px solid var(--line);padding:22px 0}
    .faq summary{cursor:pointer;font-weight:800;font-size:1.08rem;list-style:none;display:flex;justify-content:space-between;gap:18px}
    .faq summary:after{content:'+';color:var(--orange);font-size:1.4rem}.faq details[open] summary:after{content:'–'}
    .faq details p{padding-top:14px;max-width:900px}
    footer{padding:42px 0;background:#161616;color:#fff}
    .footer-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:end}
    footer img{width:310px;filter:none;margin-bottom:18px}
    footer p{color:#c8c3bf;margin:0}.footer-links{text-align:right;color:#ddd}.footer-links a{display:inline-block;margin-left:16px}
    .sources{font-size:.78rem;margin-top:24px;color:#87827e}.sources a{text-decoration:underline}
    @media (max-width:980px){
      nav a:not(.nav-cta){display:none}.brand img{width:250px}.hero-grid,.split-intro,.diag-grid,.cta .container,.quote-band .container{grid-template-columns:1fr}.photo-wrap{min-height:560px}.impact-grid{grid-template-columns:repeat(2,1fr)}.grid-3,.three-paths-grid,.deliver-grid{grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr 1fr}.cta .btn{justify-self:start}.split-photo,.diag-photo{height:560px}.timeline{grid-template-columns:1fr}}
    @media (max-width:620px){
      .container{width:min(100% - 28px,1160px)}header .nav{height:78px}.brand img{width:225px}.nav-cta{font-size:.86rem;padding:10px 14px}.hero{padding-top:48px}.hero-grid{gap:36px}.photo-wrap{min-height:500px;border-radius:30px 30px 10px 10px}.grid-3,.three-paths-grid,.deliver-grid,.process,.checklist,.balance,.impact-grid{grid-template-columns:1fr}.three-paths{padding:22px}.split-photo,.diag-photo{height:500px}.footer-grid{grid-template-columns:1fr}.footer-links{text-align:left}.footer-links a{margin:10px 15px 0 0}section{padding:70px 0}}


    /* Ajustes V3: preserva a estrutura original e altera somente os pontos aprovados */
    nav, nav a{font-weight:400}
    .nav-cta{font-weight:600}

    .faq-ref{padding:96px 0 112px;background:#fff}
    .faq-ref-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:92px;align-items:start}
    .faq-ref-intro{padding-top:4px}
    .faq-ref-intro .eyebrow{margin-bottom:28px}
    .faq-ref-intro h2{font-size:clamp(3rem,4.6vw,5.2rem);line-height:1.02;letter-spacing:-.045em;max-width:470px;font-weight:400;color:#353230;margin:0}
    .faq-ref-intro p{margin:28px 0 0;max-width:410px;font-size:1.08rem;line-height:1.7;color:#625b55}
    .faq-ref-list{border-top:1px solid #eadfd6}
    .faq-ref .faq-ref-list details{border-bottom:1px solid #eadfd6;padding:0}
    .faq-ref .faq-ref-list summary{padding:28px 0;cursor:pointer;font-weight:650;font-size:1.12rem;line-height:1.4;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:22px;color:#383431}
    .faq-ref .faq-ref-list summary::-webkit-details-marker{display:none}
    .faq-ref .faq-ref-list summary:after{content:'+';color:var(--orange);font-size:2rem;font-weight:300;line-height:1;flex:0 0 auto}
    .faq-ref .faq-ref-list details[open] summary:after{content:'–'}
    .faq-ref .faq-ref-list details p{padding:0 58px 26px 0;max-width:860px;margin:0;font-size:1rem;line-height:1.7;color:#5c5550}

    .mdl-footer{padding:0;background:#fbf7f3;color:#3f3a36;border-top:1px solid #eee3da}
    .mdl-footer-band{height:46px;background:var(--orange);width:100%}
    .mdl-footer-grid{display:grid;grid-template-columns:1.05fr .9fr 1.2fr;gap:70px;align-items:start;padding:66px 0 52px}
    .mdl-footer-brand img{width:310px;max-width:100%;margin:0;filter:none}
    .mdl-footer-contact{display:flex;flex-direction:column;gap:16px;padding-top:7px}
    .mdl-footer-contact a{display:block;margin:0;color:#5a4e45;font-size:1rem;font-weight:400}
    .mdl-footer-note{padding-top:5px}
    .mdl-footer-note p{color:#7a6252;font-size:.92rem;line-height:1.65;margin:0 0 18px;font-weight:400}
    .mdl-footer-sources{font-size:.78rem;color:#9a8475;font-weight:400;line-height:1.55}

    @media (max-width:980px){
      .faq-ref-grid{grid-template-columns:1fr;gap:44px}
      .faq-ref-intro h2{max-width:650px}
      .mdl-footer-grid{grid-template-columns:1fr 1fr;gap:38px}
      .mdl-footer-note{grid-column:1 / -1}
    }
    @media (max-width:620px){
      .faq-ref{padding:72px 0 84px}
      .faq-ref-intro h2{font-size:clamp(2.6rem,12vw,4.1rem)}
      .faq-ref .faq-ref-list summary{font-size:1rem;padding:22px 0}
      .faq-ref .faq-ref-list details p{padding-right:0}
      .mdl-footer-band{height:28px}
      .mdl-footer-grid{grid-template-columns:1fr;gap:28px;padding:42px 0 38px}
      .mdl-footer-note{grid-column:auto}
    }

  

/* Ajuste final — SOMENTE cabeçalho e rodapé. O restante da página permanece igual ao arquivo aprovado. */
header{
  background:#ffffff !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border-bottom:1px solid #e9ded3 !important;
  box-shadow:none !important;
}
header .brand img{
  width:292px !important;
  max-height:66px !important;
  object-fit:contain !important;
  object-position:left center !important;
}
header nav, header nav a{font-weight:400 !important;}
header .nav-cta{font-weight:600 !important;}

.mdl-footer{
  background:#fbf7f3 !important;
  color:#3f3a36 !important;
}
.mdl-footer-brand img{
  width:310px !important;
  max-width:100% !important;
  height:auto !important;
  background:transparent !important;
  mix-blend-mode:multiply !important;
}
.mdl-footer-tagline{
  margin:18px 0 0 8px !important;
  color:#ff6600 !important;
  font-size:1.12rem !important;
  line-height:1.3 !important;
  font-weight:700 !important;
}
.mdl-footer-note > p{
  color:#7a6252 !important;
  font-size:1rem !important;
  font-weight:400 !important;
  margin:0 0 14px !important;
}
.mdl-footer-sources{
  font-weight:400 !important;
}
@media (max-width:620px){
  header .brand img{width:238px !important;max-height:54px !important;}
  .mdl-footer-brand img{width:270px !important;}
}


/* Atualização do menu — interação igual ao novo site oficial */
@media (min-width:981px){
  header nav > a:not(.nav-cta){
    position:relative;
    display:inline-flex;
    align-items:center;
    min-height:44px;
    padding:0 0 3px;
    color:var(--ink);
    transition:color .2s ease;
  }
  header nav > a:not(.nav-cta)::after{
    content:'';
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:2px;
    background:var(--orange);
    transform:scaleX(0);
    transform-origin:center;
    transition:transform .2s ease;
  }
  header nav > a:not(.nav-cta):hover,
  header nav > a:not(.nav-cta):focus-visible{
    color:var(--orange);
  }
  header nav > a:not(.nav-cta):hover::after,
  header nav > a:not(.nav-cta):focus-visible::after{
    transform:scaleX(1);
  }

  header .nav-cta{
    border:1.5px solid var(--orange) !important;
    background:var(--orange) !important;
    color:#fff !important;
    box-shadow:none !important;
    transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease !important;
  }
  header .nav-cta:hover,
  header .nav-cta:focus-visible{
    background:#fffaf5 !important;
    color:var(--orange) !important;
    border-color:var(--orange) !important;
    transform:none !important;
  }
}


/* Hover padronizado em TODOS os botões do site */
.btn{
  border:1.5px solid transparent;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}

.btn:hover,
.btn:focus-visible,
.cta .btn:hover,
.cta .btn:focus-visible{
  background:#FEF4E9 !important;
  color:#FF6600 !important;
  border-color:#FF6600 !important;
  box-shadow:none !important;
  transform:none !important;
}

/* O botão secundário também segue o mesmo padrão no hover */
.btn.secondary:hover,
.btn.secondary:focus-visible{
  background:#FEF4E9 !important;
  color:#FF6600 !important;
  border-color:#FF6600 !important;
}

/* Cabeçalho no mesmo padrão visual */
header .nav-cta:hover,
header .nav-cta:focus-visible{
  background:#FEF4E9 !important;
  color:#FF6600 !important;
  border-color:#FF6600 !important;
}


/* Rodapé — contatos com ícones, hover laranja e links clicáveis */
.mdl-footer-contact{display:flex;flex-direction:column;gap:14px;padding-top:7px}
.mdl-footer-contact .footer-link{
  display:flex;
  align-items:center;
  gap:12px;
  color:#3f3a36;
  font-size:1rem;
  font-weight:400;
  text-decoration:none;
  transition:color .2s ease;
  width:fit-content;
}
.mdl-footer-contact .footer-link:hover,
.mdl-footer-contact .footer-link:focus-visible{
  color:#FF6600 !important;
}
.mdl-footer-contact .footer-link .icon{
  width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#FF6600;
  flex:0 0 18px;
}
.mdl-footer-contact .footer-link .icon svg{
  width:18px;
  height:18px;
  stroke:currentColor;
  fill:none;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.mdl-footer-note{padding-top:5px}
.mdl-footer-note p{display:none !important}
@media (max-width:620px){
  .mdl-footer-contact .footer-link{font-size:.98rem}
}


/* =========================================================
   Atendimento guiado MDL — widget fixo
   ========================================================= */
.mdl-chat-launcher{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:9998;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  padding:0 22px;
  border:1px solid #FF6600;
  border-radius:14px;
  background:#FF6600;
  color:#fff;
  font:700 1rem/1 Inter,Segoe UI,Arial,sans-serif;
  cursor:pointer;
  box-shadow:0 14px 38px rgba(40,25,12,.18);
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}
.mdl-chat-launcher:hover,
.mdl-chat-launcher:focus-visible{
  background:#FEF4E9;
  color:#FF6600;
  border-color:#FF6600;
  transform:translateY(-1px);
}
.mdl-chat-launcher svg{width:20px;height:20px;flex:0 0 20px;fill:currentColor}
.mdl-chat-launcher[hidden]{display:none !important}

.mdl-chat-panel{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:9999;
  width:min(400px,calc(100vw - 28px));
  height:min(640px,calc(100dvh - 44px));
  max-height:calc(100dvh - 44px);
  display:none;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #eee1d6;
  border-radius:20px;
  background:#fffaf6;
  box-shadow:0 24px 70px rgba(30,20,12,.22);
  color:#1f1f1f;
  font-family:Inter,Segoe UI,Arial,sans-serif;
}
.mdl-chat-panel.is-open{display:flex}
.mdl-chat-head{
  flex:0 0 auto;
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:12px 14px;
  background:#FF6600;
  color:#fff;
}
.mdl-chat-head-title{font-size:1.05rem;font-weight:800;line-height:1.2}
.mdl-chat-head-sub{margin-top:5px;font-size:.8rem;font-weight:400;color:#fff}
.mdl-chat-close{
  width:46px;height:40px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid rgba(255,255,255,.82);border-radius:4px;background:transparent;color:#fff;
  font-size:1.2rem;line-height:1;cursor:pointer;transition:background .2s ease,color .2s ease;
}
.mdl-chat-close:hover,.mdl-chat-close:focus-visible{background:#fff;color:#FF6600}
.mdl-chat-body{
  padding:18px 12px 20px;
  overflow-y:auto;
  overscroll-behavior:contain;
}
.mdl-chat-step-label{
  margin:0 0 10px 4px;
  color:#8b6e5b;
  font-size:.78rem;
  line-height:1;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.mdl-chat-card{
  padding:15px 16px;
  border:1px solid #ead7c8;
  border-radius:17px;
  background:#fff;
}
.mdl-chat-card + .mdl-chat-card{margin-top:14px}
.mdl-chat-question{margin:0;color:#172033;font-size:1.12rem;line-height:1.35;font-weight:700}
.mdl-chat-copy{margin:5px 0 0;color:#667085;font-size:.96rem;line-height:1.55}
.mdl-chat-field,
.mdl-chat-textarea{
  width:100%;
  margin-top:12px;
  border:1.5px solid #1f1f1f;
  border-radius:16px;
  background:#fff;
  color:#172033;
  font:400 1rem/1.3 Inter,Segoe UI,Arial,sans-serif;
  outline:none;
  box-shadow:none;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.mdl-chat-field{height:56px;padding:0 14px}
.mdl-chat-textarea{min-height:112px;resize:vertical;padding:14px}
.mdl-chat-field:focus,.mdl-chat-textarea:focus{
  border-color:#FF6600;
  box-shadow:0 0 0 2px rgba(255,102,0,.12);
}
.mdl-chat-actions{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.mdl-chat-primary,
.mdl-chat-option,
.mdl-chat-skip,
.mdl-chat-reset{
  width:100%;
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:11px 15px;
  border-radius:15px;
  font:800 1rem/1.2 Inter,Segoe UI,Arial,sans-serif;
  cursor:pointer;
  transition:background .18s ease,color .18s ease,border-color .18s ease;
}
.mdl-chat-primary{border:1px solid #FF6600;background:#FF6600;color:#fff}
.mdl-chat-primary:hover,.mdl-chat-primary:focus-visible{background:#FEF4E9;color:#FF6600;border-color:#FF6600}
/* Opções e ações secundárias no padrão laranja da MDL. */
.mdl-chat-option,.mdl-chat-skip,.mdl-chat-reset{border:1.5px solid #FF6600;background:#fff;color:#FF6600}
.mdl-chat-option:hover,.mdl-chat-option:focus-visible,
.mdl-chat-skip:hover,.mdl-chat-skip:focus-visible,
.mdl-chat-reset:hover,.mdl-chat-reset:focus-visible{background:#FEF4E9;color:#FF6600;border-color:#FF6600}
.mdl-chat-option.is-orange{border-color:#FF6600;color:#FF6600}
.mdl-chat-option.is-orange:hover,.mdl-chat-option.is-orange:focus-visible{background:#FEF4E9;color:#FF6600;border-color:#FF6600}
.mdl-chat-back{
  width:max-content;
  margin-top:12px;
  padding:0;
  border:0;
  background:transparent;
  color:#6b7280;
  font:700 .95rem/1.3 Inter,Segoe UI,Arial,sans-serif;
  text-decoration:underline;
  cursor:pointer;
}
.mdl-chat-back:hover,.mdl-chat-back:focus-visible{color:#FF6600}
.mdl-chat-note{margin:10px 0 0;text-align:center;color:#8b8490;font-size:.78rem;line-height:1.45}
.mdl-chat-error{display:none;margin:8px 2px 0;color:#b34700;font-size:.82rem;line-height:1.35}
.mdl-chat-error.is-visible{display:block}
.mdl-chat-summary{margin-top:14px;padding:14px 16px;border:1px solid #ead7c8;border-radius:17px;background:#fff;color:#3f4858;font-size:.92rem;line-height:1.55}
.mdl-chat-summary div + div{margin-top:2px}
.mdl-chat-summary strong{color:#172033}
.mdl-chat-final-note{margin:10px 4px 0;color:#8b8490;font-size:.78rem;line-height:1.45;text-align:center}

@media (max-width:620px){
  .mdl-chat-launcher{right:12px;bottom:12px;min-height:46px;padding:0 18px;border-radius:14px;font-size:.94rem}
  .mdl-chat-panel{right:6px;bottom:6px;width:calc(100vw - 12px);height:calc(100dvh - 12px);max-height:calc(100dvh - 12px);border-radius:18px}
  .mdl-chat-head{min-height:70px}
  .mdl-chat-body{padding:16px 10px 18px}
  .mdl-chat-question{font-size:1.05rem}
  .mdl-chat-field{height:54px}
}


/* =========================================================
   Correção final do tamanho/posicionamento do chat
   ========================================================= */
.mdl-chat-panel{
  padding:0 !important;
  height:min(560px, calc(100dvh - 24px)) !important;
  max-height:calc(100dvh - 24px) !important;
}

.mdl-chat-head{
  margin:0 !important;
  flex:0 0 auto !important;
}

.mdl-chat-body{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow-y:auto !important;
}

@media (max-width:620px){
  .mdl-chat-panel{
    right:6px !important;
    bottom:6px !important;
    width:calc(100vw - 12px) !important;
    height:min(560px, calc(100dvh - 12px)) !important;
    max-height:calc(100dvh - 12px) !important;
    padding:0 !important;
  }
}


/* Chat no padrão visual do site oficial */
.mdl-chat-panel{
  border:none !important;
  border-radius:24px !important;
  background:#fffaf6 !important;
  box-shadow:0 18px 55px rgba(40,25,12,.16) !important;
}

/* Mantém o cabeçalho integrado ao painel, sem linha/borda externa */
.mdl-chat-head{
  border:0 !important;
}

/* Ao abrir o chat, o botão flutuante desaparece completamente */
body.mdl-chat-open .mdl-chat-launcher{
  display:none !important;
}

@media (max-width:620px){
  .mdl-chat-panel{
    border:none !important;
    border-radius:22px !important;
  }
}


/* =========================================================
   Ajuste: painel abre ACIMA do botão, como no site oficial.
   O botão "Iniciar atendimento" não foi alterado.
   ========================================================= */

/* botão desktop: bottom 24px + ~48px de altura + 14px de respiro */
.mdl-chat-panel{
  bottom:86px !important;
  height:min(560px, calc(100dvh - 104px)) !important;
  max-height:calc(100dvh - 104px) !important;
}

/* tipografia do cabeçalho mais próxima do site oficial */
.mdl-chat-head-title{
  font-weight:700 !important;
}
.mdl-chat-head-sub{
  font-weight:400 !important;
}

/* o botão continua aparecendo abaixo do painel quando o chat está aberto */
body.mdl-chat-open .mdl-chat-launcher{
  display:inline-flex !important;
}

@media (max-width:620px){
  /* botão mobile: bottom 12px + ~46px de altura + 12px de respiro */
  .mdl-chat-panel{
    bottom:70px !important;
    height:min(560px, calc(100dvh - 82px)) !important;
    max-height:calc(100dvh - 82px) !important;
  }
}


/* =========================================================
   Ajuste final — tela PRONTO inteira visível
   Sem alterar o botão "Iniciar atendimento"
   ========================================================= */
.mdl-chat-panel.is-done .mdl-chat-body{
  padding:14px 12px 12px !important;
}
.mdl-chat-panel.is-done .mdl-chat-step-label{
  margin-bottom:8px !important;
}
.mdl-chat-panel.is-done .mdl-chat-card{
  padding:12px 14px !important;
}
.mdl-chat-panel.is-done .mdl-chat-copy{
  line-height:1.42 !important;
}
.mdl-chat-panel.is-done .mdl-chat-summary{
  margin-top:10px !important;
  padding:11px 14px !important;
  line-height:1.42 !important;
}
.mdl-chat-panel.is-done .mdl-chat-actions{
  margin-top:10px !important;
  gap:8px !important;
}
.mdl-chat-panel.is-done .mdl-chat-primary,
.mdl-chat-panel.is-done .mdl-chat-reset{
  min-height:44px !important;
  padding:9px 14px !important;
}
.mdl-chat-panel.is-done .mdl-chat-back{
  margin-top:8px !important;
}
.mdl-chat-panel.is-done .mdl-chat-final-note{
  margin-top:7px !important;
  font-size:.74rem !important;
  line-height:1.35 !important;
}

@media (max-width:620px){
  .mdl-chat-panel.is-done .mdl-chat-body{
    padding:12px 10px 10px !important;
  }
  .mdl-chat-panel.is-done .mdl-chat-question{
    font-size:1.02rem !important;
  }
}


/* Ajuste final dos ícones do rodapé */
.mdl-footer-contact .footer-link .icon{
  width:21px !important;
  height:21px !important;
  flex:0 0 21px !important;
}
.mdl-footer-contact .footer-link .icon svg{
  width:20px !important;
  height:20px !important;
}
.mdl-footer-contact .footer-link{
  gap:13px !important;
}


/* Cabeçalho — tipografia das opções no padrão do novo site oficial */
header nav > a:not(.nav-cta){
  font-family:Inter,"Segoe UI",Arial,sans-serif !important;
  font-size:15px !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  color:#172033 !important;
}
header nav > a:not(.nav-cta):hover,
header nav > a:not(.nav-cta):focus-visible{
  color:#FF6600 !important;
}


/* Padronização com o site oficial */
header nav > a:not(.nav-cta){
  color:#44505C !important;
}
header nav > a:not(.nav-cta):hover,
header nav > a:not(.nav-cta):focus-visible{
  color:#FF6600 !important;
}

.mdl-footer-contact .footer-link{
  color:#44505C !important;
}
.mdl-footer-contact .footer-link:hover,
.mdl-footer-contact .footer-link:focus-visible{
  color:#FF6600 !important;
}

.mdl-footer-contact .footer-link .icon img{
  width:20px !important;
  height:20px !important;
  object-fit:contain !important;
  display:block !important;
}


/* =========================================================
   Padronização final com o site oficial
   - preto/grafite principal: #333333
   - botões com a mesma família tipográfica do chat
   ========================================================= */
:root{
  --ink:#333333 !important;
}

/* Textos que funcionam como preto/grafite principal */
body,
h1,h2,h3,
.hero-copy,
.card,
.path,
.stage,
.check,
.faq-ref .faq-ref-list summary{
  color:#333333 !important;
}

header nav > a:not(.nav-cta),
.mdl-footer-contact .footer-link{
  color:#333333 !important;
}

/* Chat: preto principal também em #333333 */
.mdl-chat-question,
.mdl-chat-field,
.mdl-chat-textarea,
.mdl-chat-summary strong{
  color:#333333 !important;
}
.mdl-chat-field,
.mdl-chat-textarea{
  border-color:#333333 !important;
}

/* Botões do site: mesma família e peso visual do chat */
.btn,
.nav-cta,
.cta .btn{
  font-family:Inter,"Segoe UI",Arial,sans-serif !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
}

/* Botões escuros */
.cta .btn{
  background:#333333 !important;
  color:#ffffff !important;
  border-color:#333333 !important;
}
.cta .btn:hover,
.cta .btn:focus-visible{
  background:#FEF4E9 !important;
  color:#FF6600 !important;
  border-color:#FF6600 !important;
}

/* Blocos escuros que eram quase pretos */
.quote-band,
.deliverables{
  background:#333333 !important;
}
.question{
  background:#333333 !important;
}
.photo-tag{
  background:rgba(51,51,51,.92) !important;
}

/* Ícones do rodapé: um pouco mais limpos e com respiro */
.mdl-footer-contact .footer-link .icon{
  width:22px !important;
  height:22px !important;
  flex:0 0 22px !important;
}
.mdl-footer-contact .footer-link .icon img{
  width:19px !important;
  height:19px !important;
  object-fit:contain !important;
}

/* Hover continua laranja */
header nav > a:not(.nav-cta):hover,
header nav > a:not(.nav-cta):focus-visible,
.mdl-footer-contact .footer-link:hover,
.mdl-footer-contact .footer-link:focus-visible{
  color:#FF6600 !important;
}


/* Ajuste final: todos os pretos em #333333 e hover do CTA igual aos demais */
.btn.secondary,
.hero-note b,
.hero-note span{
  color:#333333 !important;
}

section.cta .btn{
  background:#333333 !important;
  color:#FFFFFF !important;
  border:1.5px solid #333333 !important;
  transition:none !important;
}

section.cta .btn:hover,
section.cta .btn:focus-visible{
  background:#FEF4E9 !important;
  background-color:#FEF4E9 !important;
  color:#FF6600 !important;
  border-color:#FF6600 !important;
  box-shadow:none !important;
  transform:none !important;
  filter:none !important;
  opacity:1 !important;
}


/* Ajuste fino dos ícones do rodapé */
.mdl-footer-contact .footer-link{
  color:#333333 !important;
  gap:12px !important;
}

.mdl-footer-contact .footer-link .icon{
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.mdl-footer-contact .footer-link .icon img{
  display:block !important;
  object-fit:contain !important;
  image-rendering:auto !important;
}

.mdl-footer-contact .footer-link.footer-wa .icon img{
  width:17px !important;
  height:17px !important;
}

.mdl-footer-contact .footer-link.footer-brasil .icon img{
  width:17px !important;
  height:14px !important;
}

.mdl-footer-contact .footer-link:hover,
.mdl-footer-contact .footer-link:focus-visible{
  color:#FF6600 !important;
}


/* Ícones do rodapé — extraídos da referência do site oficial */
.mdl-footer-contact .footer-link{
  color:#333333 !important;
  gap:8px !important;
}

.mdl-footer-contact .footer-link .icon{
  width:24px !important;
  height:24px !important;
  flex:0 0 24px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.mdl-footer-contact .footer-link .icon img{
  width:24px !important;
  height:24px !important;
  display:block !important;
  object-fit:contain !important;
}

.mdl-footer-contact .footer-link:hover,
.mdl-footer-contact .footer-link:focus-visible{
  color:#FF6600 !important;
}


/* Correção definitiva dos ícones do rodapé */
.mdl-footer-contact .footer-link{
  color:#333333 !important;
  gap:12px !important;
}

.mdl-footer-contact .footer-link .icon{
  width:22px !important;
  height:22px !important;
  flex:0 0 22px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.mdl-footer-contact .footer-link .icon img{
  display:block !important;
  object-fit:contain !important;
  image-rendering:auto !important;
}

.mdl-footer-contact .footer-instagram .icon img{
  width:19px !important;
  height:19px !important;
}

.mdl-footer-contact .footer-wa .icon img{
  width:21px !important;
  height:21px !important;
}

.mdl-footer-contact .footer-email .icon img{
  width:19px !important;
  height:17px !important;
}

.mdl-footer-contact .footer-brasil .icon img{
  width:22px !important;
  height:23px !important;
}

.mdl-footer-contact .footer-link:hover,
.mdl-footer-contact .footer-link:focus-visible{
  color:#FF6600 !important;
}


/* Ajuste definitivo dos ícones do rodapé */
.mdl-footer-contact{
  display:flex !important;
  flex-direction:column !important;
  gap:15px !important;
}
.mdl-footer-contact .footer-link{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  width:fit-content !important;
  color:#333333 !important;
  line-height:1.35 !important;
  text-decoration:none !important;
}
.mdl-footer-contact .footer-link .icon{
  width:20px !important;
  height:20px !important;
  min-width:20px !important;
  flex:0 0 20px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.mdl-footer-contact .footer-link .icon svg{
  width:20px !important;
  height:20px !important;
  display:block !important;
  stroke:#FF6600 !important;
  fill:none !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.mdl-footer-contact .footer-link.footer-email .icon svg{
  width:19px !important;
  height:19px !important;
}
.mdl-footer-contact .footer-link.footer-brasil .icon svg{
  width:18px !important;
  height:18px !important;
}
.mdl-footer-contact .footer-link:hover,
.mdl-footer-contact .footer-link:focus-visible{
  color:#FF6600 !important;
}


/* Ajuste fino final: WhatsApp mais centralizado e Brasil mais reconhecível */
.mdl-footer-contact .footer-link.footer-wa .icon svg{
  width:19px !important;
  height:19px !important;
  transform:translateY(0.2px);
}
.mdl-footer-contact .footer-link.footer-brasil .icon svg{
  width:19px !important;
  height:19px !important;
  transform:translateY(0.2px);
}


/* Ícone final de localização */
.mdl-footer-contact .footer-link.footer-brasil .icon svg{
  width:18px !important;
  height:18px !important;
  transform:none !important;
}


/* Ajuste fino: ícone de localização um pouco maior */
.mdl-footer-contact .footer-link.footer-brasil .icon{
  width:21px !important;
  height:21px !important;
  min-width:21px !important;
  flex:0 0 21px !important;
}
.mdl-footer-contact .footer-link.footer-brasil .icon svg{
  width:20px !important;
  height:20px !important;
}


/* ============================================================
   Reforma Tributária — ajustes finais de botões e seção escura
   ============================================================ */

/* Leve degradê igual ao padrão aprovado */
.btn:not(.secondary),
.nav-cta,
.mdl-chat-launcher,
.mdl-chat-primary{
  background:linear-gradient(180deg,#FF6600 0%,#FF6600 78%,#F05F00 100%) !important;
}

/* Hover dos botões laranja */
.btn:not(.secondary):not(.cta .btn):hover,
.btn:not(.secondary):not(.cta .btn):focus-visible,
.nav-cta:hover,
.nav-cta:focus-visible,
.mdl-chat-launcher:hover,
.mdl-chat-launcher:focus-visible,
.mdl-chat-primary:hover,
.mdl-chat-primary:focus-visible{
  background:#FEF4E9 !important;
  background-image:none !important;
  color:#FF6600 !important;
  border-color:#FF6600 !important;
  box-shadow:none !important;
  transform:none !important;
}

/* Botão final escuro */
section.cta .btn{
  background:#333333 !important;
  background-image:none !important;
  color:#FFFFFF !important;
  border:1.5px solid #333333 !important;
  box-shadow:none !important;
}
section.cta .btn:hover,
section.cta .btn:focus-visible{
  background:#FEF4E9 !important;
  color:#FF6600 !important;
  border-color:#FF6600 !important;
  box-shadow:none !important;
  transform:none !important;
}

/* O QUE VOCÊ RECEBE — título visível e espaçamento correto */
.deliverables .section-head{
  margin-bottom:36px !important;
}
.deliverables .section-head .eyebrow{
  margin-bottom:14px !important;
}
.deliverables .section-head h2{
  color:#FFFFFF !important;
  margin:0 0 16px !important;
}
.deliverables .section-head .lead{
  color:#E8E3DF !important;
  margin:0 !important;
}

/* Mantém os cards da seção em contraste */
.deliverables .deliver{
  background:#242424 !important;
}


/* ============================================================
   Correção forte: degradê e hover dos botões + Brasil sem link
   ============================================================ */

/* Botões laranja com o mesmo degradê aprovado */
header .nav-cta,
a.btn:not(.secondary):not(section.cta .btn),
.hero-actions .btn,
.diagnosis .btn,
.mdl-chat-launcher,
.mdl-chat-primary{
  background:#FF6600 !important;
  background-image:linear-gradient(180deg,#FF6600 0%,#FF6600 78%,#F05F00 100%) !important;
  color:#FFFFFF !important;
  border:1.5px solid #FF6600 !important;
  box-shadow:0 12px 28px rgba(255,102,0,.22) !important;
}

/* Hover padrão aprovado */
header .nav-cta:hover,
header .nav-cta:focus-visible,
a.btn:not(.secondary):not(section.cta .btn):hover,
a.btn:not(.secondary):not(section.cta .btn):focus-visible,
.hero-actions .btn:hover,
.hero-actions .btn:focus-visible,
.diagnosis .btn:hover,
.diagnosis .btn:focus-visible,
.mdl-chat-launcher:hover,
.mdl-chat-launcher:focus-visible,
.mdl-chat-primary:hover,
.mdl-chat-primary:focus-visible{
  background:#FEF4E9 !important;
  background-image:none !important;
  color:#FF6600 !important;
  border-color:#FF6600 !important;
  box-shadow:none !important;
  transform:none !important;
}

/* Botão final escuro mantido */
section.cta .btn{
  background:#333333 !important;
  background-image:none !important;
  color:#FFFFFF !important;
  border:1.5px solid #333333 !important;
  box-shadow:none !important;
}
section.cta .btn:hover,
section.cta .btn:focus-visible{
  background:#FEF4E9 !important;
  color:#FF6600 !important;
  border-color:#FF6600 !important;
}

/* Atendemos todo o Brasil: informação, sem link e sem hover */
.mdl-footer-contact .footer-brasil{
  cursor:default !important;
}
.mdl-footer-contact .footer-brasil:hover,
.mdl-footer-contact .footer-brasil:focus-visible{
  color:#333333 !important;
}


/* Correção: "Entender o Split Payment" é botão secundário claro */
.btn.secondary{
  background:#FFFFFF !important;
  background-image:none !important;
  color:#333333 !important;
  border:1.5px solid #D7CEC6 !important;
  box-shadow:none !important;
}
.btn.secondary:hover,
.btn.secondary:focus-visible{
  background:#FEF4E9 !important;
  background-image:none !important;
  color:#FF6600 !important;
  border-color:#FF6600 !important;
  box-shadow:none !important;
  transform:none !important;
}


/* Ajuste fino da faixa escura "Uma mudança de lógica" */
.quote-band p{
  color:#E8E3DF !important;
  font-size:clamp(1.08rem,2vw,1.55rem) !important;
  line-height:1.38 !important;
}
.quote-band p strong{
  display:block !important;
  margin:0 0 .18em 0 !important;
  color:#F4EEE8 !important;
  font-size:clamp(1.75rem,2.95vw,2.85rem) !important;
  line-height:1.18 !important;
  font-weight:800 !important;
}


/* ============================================================
   Correção final da faixa escura:
   mantém o negrito no tamanho anterior e reduz só o complemento
   ============================================================ */
.quote-band p{
  color:#E8E3DF !important;
  font-size:clamp(1.3rem,2.5vw,2rem) !important;
  line-height:1.35 !important;
  margin:0 !important;
}
.quote-band p strong{
  display:block !important;
  margin:0 0 .16em 0 !important;
  color:#F4EEE8 !important;
  font-size:inherit !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}
.quote-band .quote-detail{
  display:block !important;
  color:#E8E3DF !important;
  font-size:.84em !important;
  line-height:1.42 !important;
  font-weight:400 !important;
}

/* Botões DENTRO do chat permanecem chapados, sem degradê */
.mdl-chat-panel .mdl-chat-primary{
  background:#FF6600 !important;
  background-image:none !important;
  color:#FFFFFF !important;
  border-color:#FF6600 !important;
  box-shadow:none !important;
}
.mdl-chat-panel .mdl-chat-primary:hover,
.mdl-chat-panel .mdl-chat-primary:focus-visible{
  background:#FEF4E9 !important;
  background-image:none !important;
  color:#FF6600 !important;
  border-color:#FF6600 !important;
  box-shadow:none !important;
}
.mdl-chat-panel .mdl-chat-option,
.mdl-chat-panel .mdl-chat-skip,
.mdl-chat-panel .mdl-chat-reset{
  background:#FFFFFF !important;
  background-image:none !important;
  box-shadow:none !important;
}


/* ============================================================
   RODAPÉ + MOBILE + ATALHOS TOPO/FIM
   ============================================================ */
.mdl-footer{
  background:#FFFFFF !important;
  border-top:1px solid #EFE5DC !important;
  padding-bottom:18px !important;
}
.mdl-footer-band{
  height:10px !important;
  background:#FF6600 !important;
}
.mdl-footer-grid{
  grid-template-columns:1fr 1fr 1.12fr !important;
  gap:48px !important;
  padding:46px 0 34px !important;
}
.mdl-footer-brand img{width:300px !important;}
.mdl-footer-contact{gap:14px !important;}
.mdl-footer-note{padding-top:3px !important;}
.mdl-footer-note > p{display:none !important;}
.mdl-footer-sources{
  color:#8A7A6F !important;
  font-size:.78rem !important;
  line-height:1.65 !important;
}
.mdl-footer-bottom{
  border-top:1px solid #F0E7DF;
  padding-top:16px;
  padding-bottom:2px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
  color:#8A9198;
  font-size:.8rem;
}
.mdl-footer-bottom b{
  color:#FF6600;
  font-size:1.05rem;
  line-height:1.2;
  font-weight:700;
}

.page-jump-nav{
  position:fixed;
  right:24px;
  bottom:92px;
  z-index:88;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.page-jump-nav a{
  width:38px;
  height:38px;
  border:1.5px solid #FF6600;
  border-radius:50%;
  background:#FFFFFF;
  color:#FF6600;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-family:Inter,"Segoe UI",Arial,sans-serif;
  font-size:19px;
  font-weight:800;
  line-height:1;
  box-shadow:0 8px 20px rgba(38,27,18,.08);
}
.page-jump-nav a:hover,
.page-jump-nav a:focus-visible{
  background:#FF6600;
  color:#FFFFFF;
}
body.mdl-chat-open .page-jump-nav{display:none !important;}

@media (max-width:620px){
  html,body{overflow-x:hidden !important;}

  .mdl-footer{
    padding-bottom:112px !important;
  }
  .mdl-footer-band{height:8px !important;}
  .mdl-footer-grid{
    grid-template-columns:1fr !important;
    gap:28px !important;
    padding:34px 0 26px !important;
  }
  .mdl-footer-brand img{width:260px !important;}
  .mdl-footer-contact{
    display:flex !important;
    flex-direction:column !important;
    gap:14px !important;
  }
  .mdl-footer-contact .footer-link{
    max-width:100% !important;
    width:fit-content !important;
    overflow-wrap:anywhere !important;
  }
  .mdl-footer-note{grid-column:auto !important;}
  .mdl-footer-sources{max-width:100% !important;}
  .mdl-footer-bottom{
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:10px !important;
  }

  .mdl-chat-launcher{
    right:14px !important;
    bottom:14px !important;
    max-width:calc(100vw - 28px) !important;
  }
  .mdl-chat-panel{
    right:6px !important;
    width:calc(100vw - 12px) !important;
  }

  .page-jump-nav{
    right:14px !important;
    bottom:74px !important;
    gap:7px !important;
  }
  .page-jump-nav a{
    width:36px !important;
    height:36px !important;
    font-size:18px !important;
  }
}


/* ============================================================
   Ajuste final — atalhos topo/fim + rodapé mobile
   ============================================================ */

/* Atalhos no mesmo padrão visual do site oficial */
.page-jump-nav{
  right:22px !important;
  bottom:96px !important;
  gap:10px !important;
}
.page-jump-nav a{
  width:48px !important;
  height:48px !important;
  border:1.5px solid #FF6600 !important;
  border-radius:50% !important;
  background:#FFFFFF !important;
  color:#FF6600 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  font-size:28px !important;
  font-weight:500 !important;
  line-height:1 !important;
  box-shadow:none !important;
}
.page-jump-nav a:hover,
.page-jump-nav a:focus-visible{
  background:#FFFFFF !important;
  color:#FF6600 !important;
  border-color:#FF6600 !important;
}

/* Slogan fica apenas na faixa inferior do rodapé */
.mdl-footer-tagline{
  display:none !important;
}

@media (max-width:700px){
  .page-jump-nav{
    right:14px !important;
    bottom:78px !important;
    gap:10px !important;
  }
  .page-jump-nav a{
    width:48px !important;
    height:48px !important;
    font-size:28px !important;
  }

  /* Slogan inferior centralizado no mobile */
  .mdl-footer-bottom{
    align-items:center !important;
    text-align:center !important;
  }
  .mdl-footer-bottom span,
  .mdl-footer-bottom b{
    width:100% !important;
    text-align:center !important;
  }
  .mdl-footer-bottom b{
    display:block !important;
    margin:0 auto !important;
  }
}


/* ============================================================
   MENU MOBILE — Reforma Tributária
   ============================================================ */
.mobile-menu-toggle{
  display:none;
  width:44px;
  height:44px;
  border:1.5px solid #FF6600;
  border-radius:12px;
  background:#FFFFFF;
  color:#FF6600;
  align-items:center;
  justify-content:center;
  font:inherit;
  font-size:1.35rem;
  line-height:1;
  cursor:pointer;
  padding:0;
}

@media (max-width:900px){
  header .container.nav{
    position:relative;
  }
  .mobile-menu-toggle{
    display:flex !important;
    margin-left:auto;
  }
  header nav.main-nav{
    display:none !important;
    position:absolute;
    left:14px;
    right:14px;
    top:calc(100% + 1px);
    z-index:80;
    padding:10px;
    border:1px solid #E9DED3;
    border-radius:0 0 16px 16px;
    background:#FFFFFF;
    box-shadow:0 16px 34px rgba(38,27,18,.10);
    flex-direction:column;
    align-items:stretch;
    gap:2px;
  }
  header nav.main-nav.is-open{
    display:flex !important;
  }
  header nav.main-nav a{
    display:flex !important;
    width:100%;
    min-height:44px;
    align-items:center;
    padding:8px 12px !important;
    color:#333333 !important;
    border-radius:10px;
    font-size:.95rem !important;
    font-weight:500 !important;
  }
  header nav.main-nav a::after{
    display:none !important;
  }
  header nav.main-nav a:hover,
  header nav.main-nav a:focus-visible{
    color:#FF6600 !important;
    background:#FEF4E9 !important;
  }
  header nav.main-nav .nav-cta{
    justify-content:center;
    margin-top:4px !important;
    background:#FF6600 !important;
    color:#FFFFFF !important;
    border:1px solid #FF6600 !important;
    font-weight:800 !important;
  }
  header nav.main-nav .nav-cta:hover,
  header nav.main-nav .nav-cta:focus-visible{
    background:#FEF4E9 !important;
    color:#FF6600 !important;
  }
}

@media (max-width:620px){
  header .nav{
    height:78px !important;
  }
  .brand img{
    width:205px !important;
  }
}


/* ============================================================
   CORREÇÕES PONTUAIS — logo, menu mobile e setas
   ============================================================ */

/* Logo visível e proporcional */
header .brand{
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
}
header .brand img{
  display:block !important;
  width:290px !important;
  max-width:100% !important;
  height:auto !important;
  max-height:62px !important;
  object-fit:contain !important;
  object-position:left center !important;
}
.mdl-footer-brand img{
  display:block !important;
  width:300px !important;
  max-width:100% !important;
  height:auto !important;
  object-fit:contain !important;
}

/* Desktop: menu normal, botão hambúrguer oculto */
.mobile-menu-toggle{
  display:none !important;
}
header nav.main-nav{
  display:flex !important;
  align-items:center !important;
  gap:26px !important;
}

/* Setas: EXATAMENTE no padrão do site oficial */
.page-jump-nav{
  position:fixed !important;
  right:24px !important;
  bottom:92px !important;
  z-index:240 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
}
.page-jump-nav a{
  width:38px !important;
  height:38px !important;
  border:1.5px solid #FF6600 !important;
  border-radius:50% !important;
  background:#FFFFFF !important;
  color:#FF6600 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-decoration:none !important;
  font-family:Inter,"Segoe UI",Arial,sans-serif !important;
  font-size:19px !important;
  font-weight:800 !important;
  line-height:1 !important;
  box-shadow:0 8px 20px rgba(38,27,18,.08) !important;
  transition:background .18s ease,color .18s ease,border-color .18s ease !important;
}
.page-jump-nav a:hover,
.page-jump-nav a:focus-visible{
  background:#FF6600 !important;
  color:#FFFFFF !important;
  border-color:#FF6600 !important;
}
body.mdl-chat-open .page-jump-nav{
  display:none !important;
}

/* Mobile: sem sobreposição do "Falar com a MDL" */
@media (max-width:900px){
  header .container.nav{
    position:relative !important;
    justify-content:space-between !important;
  }

  .mobile-menu-toggle{
    display:flex !important;
    width:44px !important;
    height:44px !important;
    flex:0 0 44px !important;
    margin-left:auto !important;
    border:1.5px solid #FF6600 !important;
    border-radius:12px !important;
    background:#FFFFFF !important;
    color:#FF6600 !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:1.35rem !important;
    line-height:1 !important;
    cursor:pointer !important;
  }

  header nav.main-nav{
    display:none !important;
    position:absolute !important;
    left:14px !important;
    right:14px !important;
    top:100% !important;
    z-index:90 !important;
    padding:10px !important;
    border:1px solid #E9DED3 !important;
    border-radius:0 0 16px 16px !important;
    background:#FFFFFF !important;
    box-shadow:0 16px 34px rgba(38,27,18,.10) !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:2px !important;
  }
  header nav.main-nav.is-open{
    display:flex !important;
  }

  header nav.main-nav > a{
    display:flex !important;
    width:100% !important;
    min-height:44px !important;
    align-items:center !important;
    padding:8px 12px !important;
    margin:0 !important;
    border-radius:10px !important;
    font-size:.95rem !important;
  }
  header nav.main-nav > a::after{
    display:none !important;
  }

  header nav.main-nav .nav-cta{
    justify-content:center !important;
    margin-top:4px !important;
    padding:11px 14px !important;
    background:#FF6600 !important;
    color:#FFFFFF !important;
    border:1px solid #FF6600 !important;
    box-shadow:none !important;
  }
  header nav.main-nav .nav-cta:hover,
  header nav.main-nav .nav-cta:focus-visible{
    background:#FEF4E9 !important;
    color:#FF6600 !important;
    border-color:#FF6600 !important;
  }
}

@media (max-width:620px){
  header .nav{
    height:78px !important;
  }
  header .brand img{
    width:205px !important;
    max-height:50px !important;
  }

  .page-jump-nav{
    right:14px !important;
    bottom:74px !important;
    gap:7px !important;
  }
  .page-jump-nav a{
    width:36px !important;
    height:36px !important;
    font-size:18px !important;
  }
}


/* Ajuste final: desenho das setas igual ao padrão do site oficial */
.page-jump-nav a .jump-icon{
  width:22px !important;
  height:22px !important;
  display:block !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:2.25 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
  flex:0 0 22px !important;
}
@media (max-width:700px){
  .page-jump-nav a .jump-icon{
    width:21px !important;
    height:21px !important;
    flex-basis:21px !important;
  }
}


/* Remove qualquer traço/sublinhado das setas topo/fim no hover */
.page-jump-nav a,
.page-jump-nav a:hover,
.page-jump-nav a:focus,
.page-jump-nav a:focus-visible,
.page-jump-nav a:active{
  text-decoration:none !important;
  border-bottom:0 !important;
  box-shadow:0 8px 20px rgba(38,27,18,.08) !important;
}

.page-jump-nav a::before,
.page-jump-nav a::after,
.page-jump-nav a:hover::before,
.page-jump-nav a:hover::after,
.page-jump-nav a:focus::before,
.page-jump-nav a:focus::after,
.page-jump-nav a:focus-visible::before,
.page-jump-nav a:focus-visible::after{
  content:none !important;
  display:none !important;
  width:0 !important;
  height:0 !important;
  border:0 !important;
  box-shadow:none !important;
}


/* ============================================================
   SETAS TOPO/FIM — visual corrigido no mesmo padrão aprovado
   ============================================================ */
.page-jump-nav{
  position:fixed !important;
  right:24px !important;
  bottom:92px !important;
  z-index:240 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
}
.page-jump-nav a{
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  min-height:38px !important;
  border:1.5px solid #FF6600 !important;
  border-radius:50% !important;
  background:#FFFFFF !important;
  color:#FF6600 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  margin:0 !important;
  text-decoration:none !important;
  box-shadow:0 8px 20px rgba(38,27,18,.08) !important;
  transition:background .18s ease,color .18s ease,border-color .18s ease !important;
}
.page-jump-nav a .site-arrow-icon{
  width:20px !important;
  height:20px !important;
  display:block !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:2.45 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
  flex:0 0 20px !important;
}
.page-jump-nav a:hover,
.page-jump-nav a:focus-visible{
  background:#FF6600 !important;
  color:#FFFFFF !important;
  border-color:#FF6600 !important;
  text-decoration:none !important;
}
.page-jump-nav a::before,
.page-jump-nav a::after,
.page-jump-nav a:hover::before,
.page-jump-nav a:hover::after,
.page-jump-nav a:focus::before,
.page-jump-nav a:focus::after,
.page-jump-nav a:focus-visible::before,
.page-jump-nav a:focus-visible::after{
  content:none !important;
  display:none !important;
}
body.mdl-chat-open .page-jump-nav{
  display:none !important;
}
@media (max-width:700px){
  .page-jump-nav{
    right:14px !important;
    bottom:74px !important;
    gap:7px !important;
  }
  .page-jump-nav a{
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    min-height:36px !important;
  }
  .page-jump-nav a .site-arrow-icon{
    width:19px !important;
    height:19px !important;
    flex-basis:19px !important;
  }
}


/* ============================================================
   SIMPLES NACIONAL 2027 — prazo atualizado em outubro/2026
   ============================================================ */
.simples-deadline{
  padding:72px 0;
  background:#fff7ef;
  border-top:1px solid #f0e2d5;
  border-bottom:1px solid #f0e2d5;
}
.deadline-panel{
  background:#ffffff;
  border:1px solid var(--line);
  border-radius:34px 34px 16px 16px;
  padding:42px;
  box-shadow:0 18px 55px rgba(40,25,12,.07);
}
.deadline-head{max-width:900px}
.deadline-head h2{font-size:clamp(2rem,3.7vw,3.35rem);max-width:980px}
.deadline-head .lead{max-width:930px}
.deadline-head .lead strong{color:var(--orange)}
.deadline-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin-top:32px;
}
.deadline-card{
  background:var(--cream-2);
  border:1px solid var(--line);
  border-radius:24px 24px 10px 10px;
  padding:24px;
  min-height:220px;
}
.deadline-card-accent{
  border-color:#ffb27f;
  background:#fff3e9;
}
.deadline-kicker{
  display:block;
  color:var(--orange);
  font-size:.78rem;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:12px;
}
.deadline-card h3{font-size:1.18rem;margin-bottom:10px;color:#333333}
.deadline-card p{font-size:.96rem;margin:0;color:#57514c}
.deadline-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  margin-top:26px;
  padding-top:22px;
  border-top:1px solid var(--line);
}
.deadline-bottom p{margin:0;max-width:760px;color:#4c4845}
.deadline-source{
  flex:0 0 auto;
  color:var(--orange);
  font-weight:800;
  text-decoration:none;
}
.deadline-source:hover{text-decoration:underline}
@media(max-width:980px){
  .deadline-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
  .simples-deadline{padding:54px 0}
  .deadline-panel{padding:26px 20px;border-radius:26px 26px 12px 12px}
  .deadline-grid{grid-template-columns:1fr;gap:12px;margin-top:24px}
  .deadline-card{min-height:0;padding:21px}
  .deadline-bottom{flex-direction:column;align-items:flex-start;gap:16px}
  .deadline-source{white-space:normal}
}
