/* Escala visual global — reproduz a sensação de ~80% sem usar CSS zoom.
   Aplicado apenas em tela e preserva impressão e legibilidade móvel. */
@media screen and (min-width: 761px){
  :root{--container:min(1100px,calc(100% - 48px))!important}
  body{font-size:15px}
  .topbar__inner{min-height:29px!important}
  .header__inner{min-height:62px!important;gap:12px!important}
  .brand{min-width:230px!important}
  .brand__mark{width:42px!important;height:42px!important;flex-basis:42px!important}
  .brand__text strong{font-size:1.02rem!important}
  .brand__text small{font-size:.56rem!important;max-width:205px!important;white-space:nowrap!important}
  .nav{gap:10px!important;font-size:.74rem!important}
  .nav a{padding:20px 0!important}
  .nav a:after{bottom:13px!important}
  .header__cta{min-height:37px!important;padding:0 12px!important;font-size:.74rem!important}

  .hero{min-height:360px!important}
  .hero__content{padding:40px 0 58px!important}
  .hero__copy{max-width:515px!important}
  .hero h1{font-size:clamp(2.45rem,4.25vw,3.85rem)!important}
  .hero__subtitle{font-size:clamp(1rem,1.55vw,1.2rem)!important}
  .hero__lead{font-size:.95rem!important;line-height:1.5!important}
  .contact-strip{margin-top:-31px!important}

  .section{padding:40px 0!important}
  .section-heading{margin-bottom:22px!important}
  .section-heading--center{margin-bottom:24px!important}
  .section h2{font-size:clamp(1.8rem,2.8vw,2.6rem)!important}
  .page-hero{padding:18px 0!important}
  .page-hero h1{font-size:clamp(1.75rem,2.7vw,2.35rem)!important}
  .page-hero p{font-size:.85rem!important;line-height:1.4!important;max-width:760px!important}
  .breadcrumbs{font-size:.78rem!important;margin-bottom:6px!important}

  .service-layout{gap:27px!important}
  .service-content h2{font-size:1.72rem!important;margin:25px 0 8px!important}
  .service-content p,.service-content li{line-height:1.6!important}
  .sidebar-card{padding:17px!important}
  .form-card,.option-card{padding:18px!important}
  .form-card h2,.option-card h2{font-size:1.48rem!important}
  .service-card{min-height:195px!important;padding:18px!important}
  .service-card h3{font-size:1.25rem!important}
  .service-card__icon{width:40px!important;height:40px!important}

  .docs-layout{gap:21px!important}
  .docs-nav{padding:12px!important}
  .doc-panel{padding:18px!important}
  .doc-panel h2{font-size:1.65rem!important}
  .faq-question{padding:13px 16px!important}
  .faq-answer{padding:0 16px 14px!important}
  .policy-content{max-width:860px;margin-inline:auto}
  .policy-content h2{font-size:1.7rem!important;margin-top:25px!important}

  .footer{padding-top:36px!important}
  .footer__grid{gap:22px!important;padding-bottom:24px!important}
  .footer__grid h3{font-size:.9rem!important}
  .footer__grid a,.footer__grid p{font-size:.78rem!important}
  .footer__bottom{padding:12px 0!important;font-size:.72rem!important}

  .content-feature{padding:23px!important}
  .content-grid article{min-height:185px!important;padding:18px!important}
  .article-header{padding:42px 0!important}
  .article-header h1{font-size:clamp(2.05rem,3.7vw,3.25rem)!important}
  .article-layout{gap:30px!important;padding-top:40px!important;padding-bottom:52px!important}
}

/* Em larguras médias o menu já migra para o modo móvel existente; não reduzimos texto além disso. */
@media screen and (min-width:761px) and (max-width:1279px){
  :root{--container:min(940px,calc(100% - 40px))!important}
}

/* A tela móvel permanece com escala acessível; apenas reduzimos espaços excessivos. */
@media screen and (max-width:760px){
  .section{padding-top:42px!important;padding-bottom:42px!important}
  .page-hero{padding-top:27px!important;padding-bottom:27px!important}
  .page-hero h1{font-size:clamp(2rem,10vw,2.35rem)!important}
}

@media screen and (min-width:1280px){
  .header__inner{min-height:58px!important;gap:10px!important}
  .brand{min-width:205px!important}
  .brand__mark{width:38px!important;height:38px!important;flex-basis:38px!important}
  .brand__text strong{font-size:.92rem!important}
  .brand__text small{font-size:.51rem!important;max-width:174px!important}
  .nav{gap:clamp(9px,.7vw,15px)!important;font-size:clamp(.82rem,.62vw,.92rem)!important}
  .nav a{padding:18px 0!important}
  .header__cta{min-height:34px!important;padding:0 9px!important;font-size:.66rem!important;white-space:nowrap!important}
}

@media screen and (min-width:761px){
  .page-hero,.institutional-hero,.team-hero,.service-overview-hero,.certificate-hero,.certificate-form-hero{padding:14px 0!important}
  .portal-section{padding:24px 0 36px!important}
  .portal-auth-shell{padding:22px!important}
  .portal-auth-heading{margin-bottom:15px!important}
  .portal-auth-heading__icon{width:40px!important;height:40px!important}
  .portal-auth-heading h2{font-size:1.65rem!important}
  .portal-login-form input{height:42px!important}
  .certificate-journey-section{padding:24px 0 44px!important}
  .journey{gap:14px!important}
  .journey-steps{gap:4px!important}
  .journey-steps li{padding:5px 3px!important;font-size:.58rem!important;gap:4px!important}
  .journey-steps li span{width:17px!important;height:17px!important;flex-basis:17px!important;font-size:.62rem!important}
  .journey-card{padding:15px!important}
  .journey-card>section h2{font-size:1.35rem!important;margin-bottom:8px!important}
  .cert-item{padding:14px!important;margin-bottom:11px!important}
  .delivery-option{min-height:72px!important;padding:12px!important}
  .file-drop{padding:15px!important;margin:12px 0!important}
  .checklist-central,.faq-section,.contact-support,.team-section{padding-top:18px!important}
  .checklist-intro{margin-bottom:16px!important}
  .team-feature{padding:20px!important}
  .benefits-grid article{min-height:150px!important;padding:17px!important}
}

@media screen and (max-width:700px){.header__cta{display:none!important}}

/* Blog conectado ao Wix: cards dinâmicos inseridos na malha existente. */
[data-wix-blog-feed]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px}
.wix-blog-card{display:flex;flex-direction:column;min-width:0;padding:20px;border:1px solid rgba(93,19,35,.13);border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(49,9,19,.06)}
.wix-blog-card__meta{display:flex;gap:8px;align-items:center;color:#8a6b2a;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.wix-blog-card h2{margin:10px 0 8px!important;font-size:1.55rem!important;line-height:1.12}
.wix-blog-card p{margin:0 0 16px;color:#5e5660;line-height:1.55;flex:1}
.wix-blog-card a{color:#5d1323;font-weight:700;text-decoration:none}
.wix-blog-card a:hover,.wix-blog-card a:focus-visible{text-decoration:underline}
.wix-blog-empty{grid-column:1/-1;padding:22px;border:1px dashed rgba(93,19,35,.24);border-radius:14px;text-align:center;color:#655d64}
@media(max-width:900px){[data-wix-blog-feed]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){[data-wix-blog-feed]{grid-template-columns:1fr}.wix-blog-card{padding:17px}}

/* Consulta de Firma: em notebooks baixos, formulário e resultado permanecem na primeira tela. */
@media (min-width:701px) and (max-height:700px){
  .firm-query-page .page-hero{padding:7px 0!important}
  .firm-query-page .page-hero .breadcrumbs,.firm-query-page .page-hero p{display:none!important}
  .firm-query-page .section{padding:8px 0 20px!important}
  .firm-query-page .service-content>h2,.firm-query-page .service-content>p{display:none!important}
  .firm-query-page .firm-query-card{gap:5px!important;margin:0!important;padding:10px 12px!important}
  .firm-query-page .firm-query-card>.eyebrow,.firm-query-page .firm-query-card>h2+p{display:none!important}
  .firm-query-page .firm-query-card h2{font-size:1.3rem!important;margin:0!important}
  .firm-query-page .firm-query-mode,.firm-query-page .firm-query-field,.firm-query-page .firm-query-result{margin:0!important}
  .firm-query-page .firm-query-field input{padding:7px 10px!important}
  .firm-query-page .firm-query-result{padding:7px 10px!important}
  .firm-query-page .firm-query-result__item{margin-top:4px!important}
}

@media (max-width:700px) and (max-height:850px){
  .firm-query-page .page-hero{padding:6px 0!important}
  .firm-query-page .page-hero .breadcrumbs,.firm-query-page .page-hero p{display:none!important}
  .firm-query-page .section{padding:8px 0 18px!important}
  .firm-query-page .service-content>h2,.firm-query-page .service-content>p{display:none!important}
  .firm-query-page .firm-query-card{gap:5px!important;margin:0!important;padding:10px!important}
  .firm-query-page .firm-query-card>.eyebrow,.firm-query-page .firm-query-card>h2+p{display:none!important}
  .firm-query-page .firm-query-card h2,.firm-query-page .firm-query-mode,.firm-query-page .firm-query-field,.firm-query-page .firm-query-result{margin:0!important}
  .firm-query-page .firm-query-field input{padding:8px 10px!important}
}
