/* VIS-002: refinamento da identidade existente; matrizes e textos preservados. */
.hero-modern__backdrop img { filter:none; object-position: center 48%; opacity:1; }
.hero-modern::before { background:linear-gradient(90deg,rgba(20,27,38,.94),rgba(20,27,38,.82) 36%,rgba(20,27,38,.18) 67%,rgba(20,27,38,.08)),linear-gradient(0deg,rgba(15,22,32,.7),transparent 35%); }
.hero-modern::after { display:none; }
.hero-modern__inner { width:min(1440px,calc(100% - 64px)); grid-template-columns:minmax(0,1fr) 265px; gap:36px; padding-top:170px; }
.hero-modern__copy { max-width:900px; }
.hero-title { font-size:clamp(3.2rem,5.8vw,5.65rem); line-height:1.07; font-weight:500; letter-spacing:-.045em; text-wrap:pretty; }
.hero-modern__lead { max-width:710px; color:#e2e5ea; line-height:1.8; }
.hero-modern__aside { align-self:end; margin-bottom:8px; padding-left:24px; background:linear-gradient(90deg,rgba(17,24,34,.5),transparent); }
.hero-modern__aside p { text-wrap:pretty; }
.hero-journey { background:rgba(21,29,41,.72); backdrop-filter:blur(12px); }
.button-primary,.header-cta { background:linear-gradient(115deg,#d8b45d,#bf922e); box-shadow:inset 0 1px rgba(255,255,255,.23),0 8px 24px rgba(8,14,23,.1); }
.eyebrow,.hero-modern__aside span,.analysis-panel__image span { font-size:.875rem; letter-spacing:.13em; }
.analysis-panel__image { min-height:580px; }
.analysis-panel__image img { position:absolute; inset:0; filter:none; object-position:38% center; }
.analysis-panel__image::after { background:linear-gradient(0deg,rgba(14,24,34,.98),rgba(14,24,34,.64) 20%,transparent 57%); }
.analysis-panel__image > div { left:32px; right:32px; bottom:32px; }
.analysis-panel__image strong { font-size:clamp(1.7rem,2.5vw,2.2rem); line-height:1.25; font-weight:500; text-wrap:pretty; }
#teses .analysis-list article { padding:28px 30px; }
#teses .analysis-list p { font-size:1rem; }
#teses .analysis-list article > span { font-size:.875rem; }
.lawyer-contact__card { box-shadow:0 22px 65px rgba(30,36,48,.07); }
.content-hero { background:radial-gradient(ellipse at 95% 0,rgba(191,146,46,.09),transparent 50%),#101f2a; }
.library-layout { width:min(1440px,calc(100% - 64px)); margin:auto; display:grid; grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr); gap:48px; align-items:center; padding:155px 0 80px; }
.library-layout > div { min-width:0; }
.content-hero__title { max-width:none; font-size:clamp(3rem,4.4vw,4.5rem); line-height:1.05; letter-spacing:-.055em; text-wrap:pretty; overflow-wrap:normal; }
.library-layout > div > p { font-size:1.125rem; line-height:1.8; }
.library-visual { border:1px solid rgba(216,180,93,.3); border-radius:18px; overflow:hidden; box-shadow:0 30px 70px rgba(0,0,0,.22); }
.library-visual > img { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
.library-visual .content-hero__note { max-width:none; padding:24px 28px; border:0; border-top:1px solid rgba(216,180,93,.25); background:#13232e; }
.library-visual .content-hero__note span { font-size:.875rem; }
.library-visual .content-hero__note strong { font-family:Inter,system-ui,sans-serif; font-size:1rem; font-weight:400; letter-spacing:-.02em; line-height:1.6; margin-top:12px; }
.library-visual .content-hero__note p { font-size:.875rem; margin-top:12px; }
@media(min-width:1200px){
 .content-hero--editorial .library-layout { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; }
 .content-hero--editorial .content-hero__title { position:relative; z-index:2; width:calc(100% + 36px); font-size:clamp(3.4rem,5.1vw,5rem); text-shadow:0 2px 12px #101f2a; }
 .content-hero--editorial .library-visual { margin-left:0; }
 .content-hero--editorial .library-layout > div:first-child > p { max-width:90%; }
}
@media(max-width:1023px){
 .hero-modern__inner { grid-template-columns:minmax(0,1fr); padding-top:140px; }
 .hero-modern__copy { max-width:680px; }
 .hero-modern__aside { display:none; }
 .library-layout { grid-template-columns:minmax(0,1fr); width:min(720px,calc(100% - 40px)); gap:36px; padding:132px 0 64px; }
 .content-hero__title { max-width:680px; font-size:clamp(2.75rem,7vw,4.5rem); }
 .library-visual { width:100%; }
 .analysis-panel__image { min-height:400px; }
}
@media(max-width:600px){
 .hero-modern__inner { width:calc(100% - 40px); padding:130px 0 40px; min-height:auto; }
 .hero-modern__backdrop { height:440px; }
 .hero-modern__backdrop img { object-position:76% top; opacity:.65; }
 .hero-modern::before { background:linear-gradient(180deg,rgba(21,28,39,.12),rgba(21,28,39,.66) 190px,#1e2430 440px); }
 .hero-title { font-size:clamp(2.4rem,10.2vw,3.7rem); line-height:1.1; text-wrap:pretty; overflow-wrap:normal; }
 .hero-modern__copy::before { margin-bottom:120px; }
 .hero-modern__lead { font-size:1rem; }
 .hero-modern__actions { gap:12px; }
 .hero-journey { background:#1a222e; }
 .content-hero__title { font-size:clamp(2.5rem,10.5vw,3.7rem); line-height:1.08; }
 .library-layout > div > p { font-size:1rem; }
 .library-visual .content-hero__note { padding:22px; }
 .analysis-panel__image { min-height:380px; }
 .analysis-panel__image img { object-position:40% center; }
 .analysis-panel__image > div { left:22px; right:22px; bottom:24px; }
 #teses .analysis-list article { padding:24px 20px; grid-template-columns:26px minmax(0,1fr); }
}
@media(prefers-reduced-motion:reduce){.button-primary,.header-cta{transition:none;}}

/* A: somente a borda final da frase avança sobre o painel, em telas amplas. */
@media(min-width:1200px){
 .content-hero--editorial { --editorial-size:clamp(3.4rem,5.1vw,5rem); }
 .content-hero--editorial .library-layout { grid-template-columns:calc(var(--editorial-size) * 7.54 - 18px) minmax(0,1fr); gap:0; }
 .content-hero--editorial .content-hero__title { font-size:var(--editorial-size); width:calc(100% + 44px); text-wrap:initial; }
 .content-hero--editorial .content-hero__title span { display:block; white-space:nowrap; }
 .content-hero--editorial .content-hero__title span:last-child { font-size:.9em; }
 .content-hero--editorial .library-layout > div:first-child > p { max-width:calc(100% - 30px); }
}
@media(min-width:1024px){
 #teses .analysis-panel { grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr); }
 #teses .analysis-list article { padding:22px 28px; }
 .analysis-panel__image img { object-position:50% center; }
}
