/*
Theme Name: MFCR Advogados
Theme URI: https://mfcr.adv.br
Author: MFCR Advogados
Description: Tema institucional da MFCR Advogados — Cascavel/PR.
Version: 2.4.1
Text Domain: mfcr
*/

@font-face{font-family:'TT Hoves';src:url('assets/fonts/TTHoves-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'TT Hoves';src:url('assets/fonts/TTHoves-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'TT Hoves';src:url('assets/fonts/TTHoves-DemiBold.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}

:root{
  --ink:#083224;
  --ink-soft:#31544a;
  --paper:#f4f0e9;
  --paper-dim:#e7dfd8;
  --white:#fff;
  --brass:#eba63b;
  --brass-light:#f0c06f;
  --line:rgba(8,50,36,.14);
  --line-light:rgba(244,240,233,.18);
  --shadow:0 22px 50px rgba(8,50,36,.09);
  --maxw:1180px;
  --header-h:96px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;width:100%;max-width:100%;overflow-x:hidden}
body{width:100%;max-width:100%;background:var(--paper);color:var(--ink);font-family:'TT Hoves',Arial,sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
button,input,textarea{font:inherit}
button{color:inherit}
[hidden]{display:none!important}
.wrap{width:min(100%,calc(var(--maxw) + 64px));max-width:100%;margin:0 auto;padding-inline:32px}
.mono,.section-eyebrow,.hero-eyebrow,.quiz-kicker,.result-eyebrow,.post-meta{font-size:11px;font-weight:500;letter-spacing:.11em;text-transform:uppercase}
h1,h2,h3,h4{line-height:1.14;letter-spacing:-.015em}
p{color:var(--ink-soft)}
#areas,#sobre,#equipe,#duvidas,#artigos,#blog,#contato,#triagem{scroll-margin-top:110px}

/* Header */
.scroll-progress{position:fixed;z-index:500;top:0;left:0;width:0;height:2px;background:var(--brass);pointer-events:none}
.site-header{position:fixed;z-index:300;top:0;left:0;right:0;background:rgba(8,50,36,.96);border-bottom:1px solid rgba(235,166,59,.2);transition:box-shadow .25s ease,background .25s ease}
.site-header.is-scrolled{box-shadow:0 12px 32px rgba(0,0,0,.14);background:rgba(8,50,36,.985)}
.admin-bar .site-header{top:32px}
.nav-inner{width:100%;max-width:var(--maxw);min-height:var(--header-h);margin:auto;padding:8px 32px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.logo{display:flex;align-items:center;position:relative;z-index:2;min-width:0;flex:0 0 auto}
.logo img{display:block;width:210px;height:auto;max-width:100%;object-fit:contain;object-position:left center;flex:0 0 auto}
.nav-panel{display:flex;align-items:center;gap:26px}
.main-nav ul{display:flex;align-items:center;gap:25px;list-style:none}
.main-nav a{position:relative;display:block;color:var(--paper);font-size:13.5px;font-weight:500;padding:8px 0}
.main-nav a::after{content:'';position:absolute;left:0;bottom:3px;width:0;height:1px;background:var(--brass-light);transition:width .2s ease}
.main-nav a:hover::after,.main-nav a:focus-visible::after{width:100%}
.header-whatsapp{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:178px;min-height:46px;padding:0 22px;background:var(--brass);color:var(--ink);font-size:13.5px;font-weight:600;border-radius:2px;transition:background .2s ease,transform .2s ease}
.header-whatsapp:hover{background:var(--brass-light);transform:translateY(-1px)}
.header-whatsapp svg{width:17px;height:17px}
.menu-toggle{display:none;flex:0 0 auto;border:0;background:transparent;color:var(--paper);align-items:center;gap:10px;cursor:pointer;padding:10px 0;position:relative;z-index:2}
.menu-toggle-label{font-size:13px;font-weight:500}
.menu-toggle-icon{width:24px;height:18px;display:flex;flex-direction:column;justify-content:center;gap:6px}
.menu-toggle-icon i{display:block;width:24px;height:1px;background:currentColor;transition:transform .2s ease}
.menu-toggle[aria-expanded="true"] .menu-toggle-icon i:first-child{transform:translateY(3.5px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-toggle-icon i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.menu-backdrop{display:none}
.sub-menu{position:absolute;top:100%;min-width:240px;padding:12px;background:var(--white);box-shadow:var(--shadow);list-style:none!important;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s ease}
.main-nav li:hover>.sub-menu,.main-nav li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.sub-menu a{color:var(--ink)!important;padding:9px 10px}

/* Common */
.section-eyebrow{display:block;color:var(--brass);margin-bottom:15px}
.section-eyebrow--light{color:var(--brass-light)}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:46px}
.section-head h2{font-size:clamp(30px,4vw,48px);max-width:15ch}
.section-head>p{max-width:410px;font-size:15px}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}
.reveal.is-visible{opacity:1;transform:none}

/* Hero */
.hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-top:135px;padding-bottom:80px;position:relative;overflow:hidden}
.hero::after{content:'';position:absolute;width:440px;height:440px;right:-190px;top:22%;border:1px solid rgba(235,166,59,.16);border-radius:50%;pointer-events:none}
.hero-eyebrow{color:var(--brass);display:flex;align-items:center;gap:11px;margin-bottom:24px}
.hero-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--ink)}
.hero h1{font-size:clamp(43px,7vw,80px);max-width:14ch}
.hero-sub{max-width:590px;margin-top:30px;font-size:18px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:40px}
.btn-primary,.contact-whatsapp-primary,.submit-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border:0;border-radius:2px;background:var(--ink);color:var(--paper);font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease,transform .2s ease}
.btn-primary:hover,.contact-whatsapp-primary:hover,.submit-btn:hover{background:#0c4039;transform:translateY(-1px)}
.btn-primary svg{width:18px;height:18px}
.btn-secondary-link{font-size:14px;font-weight:500;border-bottom:1px solid currentColor;padding-bottom:3px;transition:color .2s ease}
.btn-secondary-link:hover{color:var(--brass)}

/* Differentials */
.diff{padding:76px 0;border-block:1px solid var(--line)}
.diff .wrap{display:grid;grid-template-columns:repeat(3,1fr)}
.diff-item{padding:0 34px;border-left:1px solid var(--line)}
.diff-item:first-child{padding-left:0;border-left:0}
.diff-num{display:block;color:var(--brass);margin-bottom:14px}
.diff-item h3{font-size:19px;margin-bottom:9px}
.diff-item p{font-size:14px;max-width:31ch}

/* Areas */
.areas-section,.team-section,.faq-section,.blog-preview{padding:110px 0}
.areas-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.area-card{min-height:365px;padding:34px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.13);transition:background .2s ease,box-shadow .2s ease}
.area-card:hover{background:rgba(255,255,255,.45);box-shadow:0 12px 34px rgba(8,50,36,.05)}
.area-top{display:flex;align-items:center;justify-content:space-between}
.area-icon{width:45px;height:45px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--brass)}
.area-icon svg{width:22px;height:22px}
.area-num{color:var(--brass)}
.area-card h3{font-size:25px;max-width:18ch;margin-bottom:13px}
.area-card p{font-size:14.5px;max-width:48ch}
.area-link{display:inline-flex;align-items:center;gap:8px;width:max-content;margin-top:25px;font-size:13.5px;font-weight:600;color:var(--ink)}
.area-link:hover{color:var(--brass)}

/* About */
.about{padding:120px 0;background:var(--ink);color:var(--paper)}
.about .wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:60px}
.about--has-photo .wrap{grid-template-columns:minmax(0,.82fr) minmax(min(420px,100%),1.18fr);align-items:center}
.about h2{font-size:clamp(34px,5vw,57px);max-width:12ch;margin-bottom:30px}
.about-body{max-width:620px;display:grid;gap:17px}
.about-body p{color:rgba(244,240,233,.75);font-size:16px}
.about-photo{overflow:hidden;aspect-ratio:16/10;background:#163d32}
.about-photo img{width:100%;height:100%;object-fit:cover}

/* Team */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.member{min-height:260px;padding:28px;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.member-index{color:var(--brass);margin-bottom:44px}
.member h3{font-size:20px;margin-bottom:10px}
.oab{font-size:12px;color:var(--brass);font-weight:600;margin-bottom:14px}
.role{font-size:13.5px;color:var(--ink-soft);margin-top:auto}

/* FAQ */
.faq-section{background:var(--paper-dim)}
.faq-layout{display:grid;grid-template-columns:minmax(min(260px,100%),.7fr) minmax(0,1.3fr);gap:90px;align-items:start}
.faq-intro{position:sticky;top:115px}
.faq-intro h2{font-size:clamp(31px,4vw,47px);max-width:12ch;margin-bottom:20px}
.faq-intro p{font-size:13.5px;max-width:36ch}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{list-style:none;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:25px 0;font-size:18px;font-weight:600;cursor:pointer}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary span{font-size:25px;font-weight:400;transition:transform .2s ease}
.faq-item[open] summary span{transform:rotate(45deg)}
.faq-item>div{padding:0 48px 25px 0}
.faq-item p{font-size:15px}

/* Blog */
.blog-preview{border-top:1px solid var(--line)}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:46px}
.post-card{background:rgba(255,255,255,.45);border:1px solid var(--line);display:flex;flex-direction:column;min-height:100%}
.post-thumb{aspect-ratio:16/10;background:var(--paper-dim);overflow:hidden}
.post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.post-card:hover .post-thumb img{transform:scale(1.025)}
.post-card-body{padding:24px;display:flex;flex-direction:column;flex:1}
.post-meta{color:var(--brass);margin-bottom:12px}
.post-card h3{font-size:20px;margin-bottom:11px}
.post-card p{font-size:14px;flex:1}
.post-readmore{display:inline-flex;align-items:center;gap:7px;margin-top:20px;font-size:13.5px;font-weight:600}
.post-readmore:hover{color:var(--brass)}
.center-action{text-align:center}
.blog-hero{padding-top:175px;padding-bottom:65px}
.blog-hero h1{font-size:clamp(35px,5vw,58px);max-width:16ch;margin-bottom:18px}
.blog-hero p{max-width:650px}
.pagination{display:flex;justify-content:center;gap:8px;padding:50px 0 110px}
.pagination a,.pagination span{padding:10px 15px;border:1px solid var(--line);font-size:13px}
.pagination .current{background:var(--ink);color:var(--paper);border-color:var(--ink)}

.blog-empty-state{max-width:720px;margin:0 auto 110px;padding:38px;border:1px solid var(--line);background:rgba(255,255,255,.35)}
.blog-empty-state h2{font-size:25px;margin-bottom:10px}
.blog-empty-state p{font-size:15px}

/* Privacy policy */
.privacy-page{max-width:1080px}
.privacy-page>h1{max-width:16ch}
.privacy-content{max-width:860px;margin-left:0!important}
.privacy-content .privacy-lead{font-size:20px;line-height:1.65;color:var(--ink);padding-bottom:28px;margin-bottom:28px;border-bottom:1px solid var(--line)}
.privacy-content h2{font-size:clamp(24px,3vw,32px);scroll-margin-top:125px}
.privacy-content ul,.privacy-content ol{padding-left:8px}
.privacy-content li{margin-bottom:10px}
.privacy-content strong{color:var(--ink)}
.privacy-content a{overflow-wrap:anywhere}

/* Contact and quiz */
.contact{padding:120px 0;border-top:1px solid var(--line)}
.contact .wrap{display:grid;grid-template-columns:minmax(0,.82fr) minmax(min(420px,100%),1.18fr);gap:85px;align-items:start}
.contact-info h2{font-size:clamp(34px,4.5vw,53px);max-width:12ch;margin-bottom:22px}
.contact-info>p{max-width:480px}
.contact-whatsapp-primary{margin-top:28px}
.contact-channels{display:grid;gap:0;margin-top:36px;border-top:1px solid var(--line)}
.contact-channels>a,.contact-detail{display:flex;flex-direction:column;gap:2px;padding:16px 0;border-bottom:1px solid var(--line)}
.contact-channels strong{font-size:12px;color:var(--brass);text-transform:uppercase;letter-spacing:.08em}
.contact-channels span{font-size:14px;color:var(--ink-soft)}
.quiz-anchor{position:absolute;top:-110px}
.quiz-card{position:relative;padding:38px;background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);min-height:650px}
.quiz-header{margin-bottom:28px}
.quiz-kicker,.result-eyebrow{display:block;color:var(--brass);margin-bottom:12px}
.quiz-progress{height:3px;background:var(--paper-dim);margin-bottom:18px;overflow:hidden}
.quiz-progress span{display:block;width:25%;height:100%;background:var(--brass);transition:width .25s ease}
.quiz-header h3{font-size:26px;margin-bottom:9px}
.quiz-intro{font-size:14px;margin-bottom:20px}
.quiz-step-meta{display:flex;justify-content:space-between;gap:15px;font-size:12.5px}
.quiz-step-meta strong{color:var(--ink)}
.quiz-step fieldset{border:0;min-width:0}
.quiz-step legend{font-size:clamp(21px,2.5vw,28px);font-weight:600;line-height:1.25;margin-bottom:22px}
.quiz-options{display:grid;gap:10px}
.quiz-option{cursor:pointer}
.quiz-option input{position:absolute;opacity:0;pointer-events:none}
.quiz-option>span{position:relative;display:flex;flex-direction:column;gap:3px;padding:14px 16px;border:1px solid var(--line);transition:border-color .2s ease,background .2s ease}
.quiz-option>span::before{content:'';position:absolute;top:18px;left:16px;width:13px;height:13px;border:1px solid rgba(8,50,36,.35);border-radius:50%}
.quiz-option strong,.quiz-option small{padding-left:25px}
.quiz-option strong{font-size:14.5px}
.quiz-option small{font-size:12.5px;line-height:1.4;color:var(--ink-soft)}
.quiz-option:hover>span{border-color:rgba(235,166,59,.7)}
.quiz-option input:checked+span{border-color:var(--brass);background:rgba(235,166,59,.08)}
.quiz-option input:checked+span::before{border-color:var(--brass);box-shadow:inset 0 0 0 3px var(--white),inset 0 0 0 7px var(--brass)}
.quiz-option input:focus-visible+span{outline:2px solid var(--brass);outline-offset:2px}
.quiz-error{min-height:21px;margin-top:14px;color:#9d2d2d;font-size:13px}
.quiz-actions{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin-top:18px}
.submit-btn{grid-column:2}
.quiz-back,.quiz-restart{border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;font-size:13px;cursor:pointer;padding:10px 2px;color:var(--ink-soft)}
.quiz-back:hover,.quiz-restart:hover{color:var(--brass)}
.quiz-privacy{margin-top:18px;font-size:11.8px;line-height:1.45}
.quiz-privacy a{text-decoration:underline}
.quiz-result{animation:resultIn .35s ease both}
@keyframes resultIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.quiz-result h3{font-size:clamp(26px,3vw,35px);margin-bottom:10px}
.result-owner{font-size:12.5px;color:var(--brass);margin-bottom:22px}
.quiz-result>p:not(.result-owner){font-size:14px;margin-bottom:12px}
.quiz-result ul{margin:0 0 22px 20px;color:var(--ink-soft)}
.quiz-result li{font-size:14px;margin-bottom:8px}
.result-alert{padding:14px 16px;border-left:3px solid var(--brass);background:rgba(235,166,59,.11);font-size:13px;margin-bottom:20px}
.result-whatsapp{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:53px;padding:0 18px;background:#25d366;color:#092b1e;font-size:14px;font-weight:600}
.quiz-restart{display:block;margin:12px auto 0}

/* Footer */
.site-footer{padding:100px 0 28px;background:var(--ink);color:var(--paper)}
.site-footer p{color:rgba(244,240,233,.66)}
.footer-top{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;padding-bottom:62px;border-bottom:1px solid var(--line-light)}
.footer-top h2{font-size:clamp(33px,5vw,57px);max-width:12ch}
.footer-whatsapp{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 28px;background:var(--brass);color:var(--ink);font-size:14px;font-weight:600}
.footer-whatsapp svg{width:18px;height:18px}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.1fr;gap:50px;padding:60px 0}
.footer-grid h4{font-size:15px;margin-bottom:18px;color:var(--brass-light)}
.footer-grid a{display:block;color:rgba(244,240,233,.72);font-size:13.5px;margin-bottom:10px}
.footer-grid a:hover{color:var(--brass-light)}
.footer-grid p{font-size:13.5px}
.footer-hours{margin-top:13px}
.footer-bottom{display:flex;justify-content:space-between;gap:30px;padding-top:25px;border-top:1px solid var(--line-light);color:rgba(244,240,233,.48);font-size:11.5px}
.footer-legal{display:flex;align-items:center;padding:26px 0;border-top:1px solid var(--line-light)}
.footer-legal a{display:inline-block;color:var(--brass-light);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.float-wa{position:fixed;right:24px;bottom:24px;z-index:250;display:flex;align-items:center;gap:9px}
.float-wa-icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25d366;box-shadow:none}
.float-wa-icon svg{width:27px;height:27px;color:var(--paper)}
.float-wa-label{padding:9px 13px;background:var(--ink);color:var(--paper);font-size:12.5px;border-radius:2px;opacity:0;visibility:hidden;transform:translateX(8px);transition:.25s ease;white-space:nowrap}
.float-wa.show-label .float-wa-label,.float-wa:hover .float-wa-label,.float-wa:focus-visible .float-wa-label{opacity:1;visibility:visible;transform:none}

/* Posts/pages */
.single-post{padding-top:175px;padding-bottom:110px}
.single-post>h1{font-size:clamp(36px,5vw,60px);max-width:19ch;margin:15px 0 35px}
.single-thumb{aspect-ratio:16/8;overflow:hidden;margin-bottom:50px;background:var(--paper-dim)}
.single-thumb img{width:100%;height:100%;object-fit:cover}
.post-content{max-width:780px;margin:auto;font-size:17px;color:var(--ink-soft)}
.post-content p{margin-bottom:20px}
.post-content h2{font-size:30px;color:var(--ink);margin:45px 0 17px}
.post-content h3{font-size:23px;color:var(--ink);margin:35px 0 13px}
.post-content ul,.post-content ol{margin:0 0 20px 24px}
.post-content a{color:var(--brass);text-decoration:underline}
.post-content blockquote{border-left:3px solid var(--brass);padding:5px 0 5px 22px;margin:30px 0;color:var(--ink)}
.post-footer-cta{max-width:780px;margin:60px auto 0;padding:36px;border:1px solid var(--line);background:var(--paper-dim);text-align:center}
.post-footer-cta p{margin-bottom:18px}

/* Version 1.5 — áreas separadas, perfis e SEO visual (estilos sempre ativos) */
.areas-grid--expanded .area-card{min-height:330px}
.team-grid--portraits .member{min-height:0;padding:0;background:rgba(255,255,255,.18)}
.member--portrait{display:flex;flex-direction:column}
.member-photo{aspect-ratio:4/5;overflow:hidden;background:var(--paper-dim);border-bottom:1px solid var(--line)}
.member-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .35s ease}
.member--portrait:hover .member-photo img{transform:scale(1.02)}
.member-content{display:flex;flex-direction:column;flex:1;padding:26px}
.member-content .member-index{margin-bottom:24px}
.member--portrait:not(.has-photo) .member-content{min-height:290px}
.member-areas{display:flex;flex-direction:column;gap:7px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}
.member-areas a{font-size:12.8px;color:var(--ink-soft)}
.member-areas a:hover{color:var(--brass)}

.breadcrumbs{margin-bottom:28px}
.breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:8px;list-style:none}
.breadcrumbs li{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--ink-soft)}
.breadcrumbs a:hover{color:var(--brass)}
.breadcrumbs [aria-current="page"]{color:var(--ink);font-weight:500}

.area-archive-hero{padding-top:175px;padding-bottom:72px}
.area-archive-hero h1{font-size:clamp(38px,6vw,68px);max-width:13ch;margin-bottom:24px}
.area-archive-hero>p{font-size:17px;max-width:690px}
.area-archive-list{padding-bottom:120px}
.areas-grid--archive{grid-template-columns:repeat(2,1fr)}
.area-card--archive h2{font-size:25px;max-width:18ch;margin-bottom:13px}
.area-card--archive h2 a:hover{color:var(--brass)}

.area-single-hero{padding-top:170px;padding-bottom:60px}
.area-single-hero h1{font-size:clamp(42px,7vw,76px);max-width:13ch;margin-bottom:25px}
.area-single-hero>p{font-size:18px;max-width:700px}
.area-single-image{padding-bottom:70px}
.area-single-image img{width:100%;max-height:650px;object-fit:cover}
.area-single-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(min(310px,100%),.55fr);gap:82px;align-items:start;padding-bottom:120px}
.area-content{max-width:none;margin:0}
.area-content>p:first-child{font-size:20px;line-height:1.65;color:var(--ink)}
.area-content h2{font-size:32px}
.area-content li{margin-bottom:9px}
.area-disclaimer{margin-top:45px;padding-top:22px;border-top:1px solid var(--line);font-size:13px!important;color:var(--ink-soft)!important}
.area-sidebar{position:sticky;top:115px;display:grid;gap:20px}
.area-contact-box{padding:30px;background:var(--ink);color:var(--paper)}
.area-contact-box h2{font-size:29px;margin-bottom:15px}
.area-contact-box p{color:rgba(244,240,233,.7);font-size:14px;margin-bottom:22px}
.area-contact-box .btn-primary{width:100%;background:var(--brass);color:var(--ink)}
.area-contact-box .btn-primary:hover{background:var(--brass-light)}
.area-professionals{display:grid;gap:12px}
.area-professional{display:flex;gap:16px;align-items:center;padding:20px;border:1px solid var(--line);background:rgba(255,255,255,.28)}
.area-professional img{width:68px;height:82px;object-fit:cover;object-position:center top}
.area-professional div{display:flex;flex-direction:column}
.area-professional span{font-size:10px;color:var(--brass);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}
.area-professional strong{font-size:14px;line-height:1.3}
.area-professional small{font-size:11px;color:var(--ink-soft);margin-top:4px}
.area-service-scope{padding:20px;border:1px solid var(--line)}
.area-service-scope strong{font-size:12px;color:var(--brass);text-transform:uppercase;letter-spacing:.08em}
.area-service-scope p{font-size:13px;margin-top:6px}
.area-location{display:inline-flex;margin-top:22px;padding:9px 13px;border:1px solid var(--line);font-size:12.5px;color:var(--ink-soft);background:rgba(255,255,255,.22)}
.related-areas{padding:90px 0;background:var(--paper-dim)}
.related-area-links{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.related-area-links a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:23px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:15px;font-weight:600}
.related-area-links a:hover{background:rgba(255,255,255,.42);color:var(--brass)}

/* ==========================================================
   RESPONSIVO — bloco único e consolidado por breakpoint.
   (Antes espalhado em 13 blocos duplicados entre as versões
   1.5–1.7; unificado para eliminar conflitos e lacunas.)
   ========================================================== */

@media(max-width:1050px){
  .logo img{width:182px}
  .main-nav ul{gap:18px}
  .main-nav a{font-size:13px}
  .header-whatsapp{min-width:160px;padding-inline:17px}
  .team-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:900px){
  :root{--header-h:90px}
  .admin-bar .site-header{top:32px}
  .nav-inner{
    min-height:var(--header-h);padding-inline:22px;
    display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-content:initial;
  }
  .menu-toggle{display:flex}
  .logo{min-width:0;max-width:100%;overflow:visible}
  .logo img{width:min(190px,calc(100vw - 112px));height:auto}
  .nav-panel{
    position:fixed;inset:var(--header-h) 0 auto auto;
    width:min(390px,100%);max-width:100%;height:calc(100dvh - var(--header-h));
    padding:35px 25px;background:var(--ink);
    display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:30px;
    transform:translate3d(100%,0,0);opacity:0;visibility:hidden;pointer-events:none;
    transition:transform .28s ease,opacity .2s ease,visibility .28s ease;
    overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;
  }
  .admin-bar .nav-panel{inset:calc(var(--header-h) + 32px) 0 auto auto;height:calc(100dvh - var(--header-h) - 32px)}
  .nav-panel.is-open{transform:none;opacity:1;visibility:visible;pointer-events:auto}
  .main-nav ul{display:flex;flex-direction:column;align-items:stretch;gap:0}
  .main-nav li{border-bottom:1px solid var(--line-light)}
  .main-nav a{padding:17px 0;font-size:17px}
  .main-nav a::after{display:none}
  .header-whatsapp{width:100%;min-height:52px}
  .menu-backdrop{display:block;position:fixed;z-index:250;inset:0;background:rgba(0,0,0,.35);opacity:0;visibility:hidden;transition:.25s ease}
  .menu-backdrop.is-visible{opacity:1;visibility:visible}
  .sub-menu{position:static;opacity:1;visibility:visible;transform:none;background:transparent;box-shadow:none;padding:0 0 8px 15px}
  .sub-menu a{color:var(--paper)!important;font-size:14px;padding:8px 0}
  .section-head{align-items:flex-start;flex-direction:column;gap:18px}
  .diff .wrap{grid-template-columns:1fr;gap:30px}
  .diff-item{padding:28px 0 0;border-left:0;border-top:1px solid var(--line)}
  .diff-item:first-child{padding-top:0;border-top:0}
  .areas-grid,.areas-grid--archive{grid-template-columns:1fr 1fr}
  .about--has-photo .wrap,.contact .wrap,.faq-layout,.area-single-layout{grid-template-columns:1fr;gap:50px}
  .about-photo{aspect-ratio:16/10}
  .faq-intro{position:static}
  .area-sidebar{position:static}
  .blog-grid{grid-template-columns:1fr 1fr}
  .quiz-card{min-height:auto}
  .footer-top{align-items:flex-start;flex-direction:column}

  /* rede de segurança contra overflow horizontal — agora cobrindo
     também os templates de área (single/archive), que ficaram de
     fora nas versões anteriores */
  main,.site-footer,.hero,.diff,.areas-section,.about,.team-section,.faq-section,
  .blog-preview,.contact,.related-areas,
  .area-archive-hero,.area-archive-list,.area-single,.area-single-hero,.area-single-image{
    max-width:100%;overflow-x:hidden;
  }
  .wrap,.nav-inner,.areas-grid,.areas-grid--archive,.team-grid,.blog-grid,.footer-grid,
  .faq-layout,.area-single-layout,.related-area-links{
    max-width:100%;
  }
  .wrap>*,.nav-inner>*,.areas-grid>*,.team-grid>*,.blog-grid>*,.footer-grid>*,
  .faq-layout>*,.area-single-layout>*,.related-area-links>*{
    min-width:0;max-width:100%;
  }
  svg,iframe,video,canvas,table{max-width:100%}
}

@media(max-width:782px){
  .admin-bar .site-header{top:46px}
  .admin-bar .nav-panel{inset:calc(var(--header-h) + 46px) 0 auto auto;height:calc(100dvh - var(--header-h) - 46px)}
}

@media(max-width:620px){
  .wrap{padding-inline:20px}
  :root{--header-h:86px}
  .nav-inner{padding:7px 16px;gap:10px}
  .logo{max-width:calc(100% - 76px)}
  .logo img{width:min(182px,calc(100vw - 94px));height:auto}
  .menu-toggle{gap:8px}
  .hero{min-height:auto;padding-top:150px;padding-bottom:85px}
  .hero h1{font-size:45px}
  .hero-sub{font-size:16px}
  .hero-actions{align-items:flex-start;flex-direction:column}
  .btn-primary{width:100%}
  .areas-section,.team-section,.faq-section,.blog-preview,.contact,.about{padding-block:82px}
  .areas-grid,.areas-grid--archive,.team-grid,.blog-grid,.footer-grid,.related-area-links{grid-template-columns:1fr}
  .area-card{min-height:315px;padding:27px}
  .about h2{font-size:39px}
  .member{min-height:220px}
  .member--portrait:not(.has-photo) .member-content{min-height:235px}
  .faq-item summary{font-size:16.5px;padding:21px 0}
  .faq-item>div{padding-right:20px}
  .contact-whatsapp-primary{width:100%}
  .quiz-card{padding:26px 20px}
  .quiz-header h3{font-size:23px}
  .quiz-step-meta{flex-direction:column;gap:2px}
  .quiz-actions{grid-template-columns:1fr}
  .submit-btn{grid-column:1}
  .quiz-back{order:2}
  .footer-top h2{font-size:38px}
  .footer-whatsapp{width:100%}
  .footer-grid{gap:34px}
  .footer-bottom{flex-direction:column;gap:8px}
  .float-wa{right:16px;bottom:16px}
  .float-wa-icon{width:52px;height:52px}
  .single-post{padding-top:140px}
  .area-archive-hero,.area-single-hero{padding-top:140px}
  .area-single-layout{padding-bottom:82px}
}

@media(max-width:420px){
  .logo{max-width:calc(100% - 58px)}
  .logo img{width:min(175px,calc(100vw - 74px))}
  .menu-toggle-label{display:none}
  .hero-eyebrow{font-size:9.5px;line-height:1.5;flex-wrap:wrap}
  .hero h1{font-size:clamp(37px,11.8vw,43px)}
  .float-wa-label{max-width:calc(100vw - 92px);overflow:hidden;text-overflow:ellipsis}
}

@media(max-width:380px){
  :root{--header-h:82px}
  .nav-inner{padding:6px 13px;gap:8px}
  .logo img{width:min(165px,calc(100vw - 68px))}
  .menu-toggle{padding-inline:4px}
}

/* Rede de segurança geral (sempre ativa, não só em telas pequenas) */
.site-header,.nav-panel,.menu-backdrop,main,.site-footer{max-width:100%}
.nav-inner>*,.section-head>*,.hero-actions>*,.footer-top>*,.contact .wrap>*,.faq-layout>*,.area-single-layout>*{min-width:0}
.area-card,.member,.post-card,.quiz-card,.footer-grid>div{min-width:0}
h1,h2,h3,h4,p,a,span,strong,small{overflow-wrap:break-word}

@supports (overflow:clip){
  html,body{overflow-x:clip}
  .hero,main,.site-footer,.diff,.areas-section,.about,.team-section,.faq-section,
  .blog-preview,.contact,.related-areas,
  .area-archive-hero,.area-archive-list,.area-single,.area-single-hero,.area-single-image{
    overflow-x:clip;
  }
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .reveal{opacity:1;transform:none}
}
