
:root {
  --navy: #001D52;
  --navy-deep: #07172C;
  --blue: #4B98C5;
  --blue-soft: #DCECF5;
  --off: #F5F7FA;
  --white: #FFFFFF;
  --graphite: #263445;
  --muted: #617083;
  --amber: #D6A84A;
  --line: #DDE4EB;
  --shadow: 0 24px 70px rgba(0,29,82,.12);
  --radius: 6px;
  --container: 1180px;
  --font-title: "Manrope", Arial, sans-serif;
  --font-body: "Source Sans 3", Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background:var(--white); color:var(--graphite); font:18px/1.6 var(--font-body); text-rendering:optimizeLegibility; }
img { display:block; max-width:100%; }
a { color:inherit; }
button,input,select,textarea { font:inherit; }
button { cursor:pointer; }
.container { width:min(var(--container),calc(100% - 48px)); margin-inline:auto; }
.section { padding:110px 0; }
.bg-soft { background:var(--off); }
.section-dark { background:var(--navy-deep); color:white; }
.eyebrow { margin:0 0 16px; color:var(--blue); font:800 .78rem/1.2 var(--font-title); letter-spacing:.16em; text-transform:uppercase; }
.eyebrow-light { color:#9CCCE7; }
h1,h2,h3 { margin:0; font-family:var(--font-title); line-height:1.08; letter-spacing:-.035em; }
h1 { font-size:clamp(3rem,6vw,5.8rem); }
h2 { font-size:clamp(2.3rem,4.5vw,4.3rem); }
h3 { font-size:1.35rem; }
p { margin:0; }
.section-heading { max-width:880px; margin-bottom:56px; }
.section-heading > p:last-child { margin-top:22px; max-width:760px; color:var(--muted); font-size:1.12rem; }
.split-heading { max-width:none; display:grid; grid-template-columns:1.25fr .75fr; gap:70px; align-items:end; }
.split-heading > p { margin:0!important; color:inherit; opacity:.78; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:54px; padding:0 24px; border:1px solid transparent; border-radius:var(--radius); text-decoration:none; font:800 .95rem/1 var(--font-title); transition:.2s ease; }
.button:hover { transform:translateY(-2px); }
.button-primary { background:var(--navy); color:white; }
.button-secondary { border-color:var(--navy); color:var(--navy); }
.button-amber { background:var(--amber); color:var(--navy); }
.button-full { width:100%; }
.text-link { display:inline-block; margin-top:28px; color:var(--navy); font-weight:800; text-decoration:none; }

.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.skip-link { position:fixed; z-index:9999; top:-60px; left:12px; padding:10px 16px; background:var(--amber); color:var(--navy); font-weight:800; }
.skip-link:focus { top:12px; }

.site-header { position:sticky; top:0; z-index:1000; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--white) 92%,transparent); backdrop-filter:blur(18px); }
.nav-shell { min-height:82px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:flex; align-items:center; gap:12px; text-decoration:none; }
.brand-symbol { position:relative; display:block; width:44px; height:48px; }
.brand-symbol img { position:absolute; inset:0; width:44px; height:48px; object-fit:contain; }
.brand-copy { display:grid; line-height:1; }
.brand-copy strong { color:var(--navy); font:800 1.05rem/1 var(--font-title); letter-spacing:.08em; text-transform:uppercase; }
.brand-copy small { margin-top:6px; color:var(--blue); font:700 .6rem/1 var(--font-title); letter-spacing:.11em; text-transform:uppercase; }
.main-nav { display:flex; align-items:center; gap:25px; font:700 .81rem/1 var(--font-title); }
.main-nav a { text-decoration:none; }
.main-nav a:hover,.main-nav a.active { color:var(--blue); }
.nav-cta { padding:14px 18px; border-radius:var(--radius); background:var(--navy); color:white!important; }
.nav-cta:hover { background:var(--blue); color:var(--navy)!important; }
.menu-toggle { display:none; padding:8px; border:0; background:transparent; }
.menu-toggle i { display:block; width:25px; height:2px; margin:5px; background:var(--graphite); }

.hero { overflow:hidden; padding-top:88px; background:linear-gradient(90deg,color-mix(in srgb,var(--off) 82%,transparent),transparent 55%),var(--white); }
.hero-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:70px; align-items:center; }
.hero-copy { padding-bottom:70px; }
.hero h1 span { color:var(--blue); }
.hero-lead { margin-top:28px; max-width:760px; color:var(--muted); font-size:clamp(1.1rem,1.6vw,1.3rem); }
.hero-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:34px; }
.hero-visual { position:relative; min-height:680px; display:flex; justify-content:center; align-items:flex-end; }
.portrait-frame { position:relative; width:min(430px,90%); height:630px; overflow:hidden; background:var(--blue-soft); box-shadow:var(--shadow); }
.portrait-frame img { width:100%; height:100%; object-fit:cover; object-position:center top; }
.portrait-caption { position:absolute; left:0; right:0; bottom:0; padding:22px 24px; color:white; background:linear-gradient(transparent,rgba(0,29,82,.93)); }
.portrait-caption strong,.portrait-caption span { display:block; }
.portrait-caption strong { font:700 1.15rem/1.2 var(--font-title); }
.portrait-caption span { opacity:.8; font-size:.9rem; }
.hero-card { position:absolute; min-width:160px; padding:16px 18px; border-left:4px solid var(--amber); background:var(--white); box-shadow:var(--shadow); }
.hero-card span,.hero-card small { display:block; }
.hero-card span { color:var(--navy); font:800 1.5rem/1 var(--font-title); }
.hero-card small { margin-top:5px; color:var(--muted); }
.card-a { left:0; top:120px; }
.card-b { right:0; bottom:100px; }
.stats-bar { display:grid; grid-template-columns:repeat(4,1fr); background:var(--navy); color:white; }
.stats-bar div { padding:26px 28px; border-right:1px solid rgba(255,255,255,.15); }
.stats-bar strong { display:block; color:var(--amber); font:800 1.55rem/1 var(--font-title); }
.stats-bar span { display:block; margin-top:7px; opacity:.8; font-size:.9rem; line-height:1.3; }

.bento-grid { display:grid; grid-template-columns:1.3fr .7fr; gap:18px; }
.bento-card { position:relative; min-height:245px; padding:34px; border:1px solid var(--line); background:var(--white); overflow:hidden; }
.bento-large { grid-row:span 2; min-height:510px; }
.bento-card h3 { margin-top:58px; max-width:500px; font-size:1.7rem; }
.bento-card p { margin-top:18px; max-width:560px; color:var(--muted); }
.card-number { position:absolute; top:28px; right:28px; color:var(--blue); font-weight:800; }
.bento-dark { display:flex; align-items:end; min-height:205px; background:var(--navy); color:white; }
.bento-dark p { color:white; font:700 1.4rem/1.35 var(--font-title); }
.route-line { position:absolute; left:34px; right:34px; bottom:40px; height:3px; background:var(--blue); }
.route-line::before,.route-line::after { content:""; position:absolute; top:-5px; width:13px; height:13px; border-radius:50%; background:var(--amber); }
.route-line::before { left:8%; } .route-line::after { right:8%; }

.card-grid { display:grid; gap:18px; }
.card-grid-3 { grid-template-columns:repeat(3,1fr); }
.card-grid-4 { grid-template-columns:repeat(4,1fr); }
.service-card,.content-card,.principle-card,.signal-card,.deliverable-card { min-height:255px; padding:30px; border:1px solid var(--line); background:var(--off); }
.service-card > span,.content-card > span,.principle-card > span { color:var(--blue); font-weight:800; }
.service-card h3,.content-card h3,.principle-card h3 { margin-top:52px; }
.service-card p,.content-card p,.principle-card p,.deliverable-card p { margin-top:15px; color:var(--muted); }
.service-card a,.content-card a,.article-card a {
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  min-height:38px;
  margin-top:22px;
  padding:9px 13px;
  border:1px solid color-mix(in srgb, var(--amber) 58%, transparent);
  border-radius:var(--radius);
  background:color-mix(in srgb, var(--amber) 14%, #FFFFFF);
  color:var(--navy);
  font-weight:800;
  line-height:1.1;
  text-decoration:none;
  box-shadow:0 8px 18px rgba(0,29,82,.05);
}
.signal-card { display:flex; align-items:flex-end; min-height:210px; border-top:3px solid var(--blue); }
.deliverable-card h3 { margin-top:45px; }

.method-preview { display:grid; grid-template-columns:.75fr 1.25fr; gap:90px; align-items:start; }
.method-preview h2,.section-dark h2 { color:white; }
.method-preview p { margin:22px 0 30px; max-width:450px; color:rgba(255,255,255,.72); }
.numbered-list { list-style:none; margin:0; padding:0; border-top:1px solid rgba(255,255,255,.15); }
.numbered-list li { display:grid; grid-template-columns:80px 1fr; padding:25px 0; border-bottom:1px solid rgba(255,255,255,.15); }
.numbered-list span { color:var(--amber); font-weight:800; }
.numbered-list strong { font:700 1.25rem/1.2 var(--font-title); }

.authority-grid { display:grid; grid-template-columns:1fr .85fr; gap:90px; align-items:center; }
.authority-images { position:relative; min-height:590px; }
.image-main { width:86%; height:510px; object-fit:cover; box-shadow:var(--shadow); }
.image-detail { position:absolute; right:0; bottom:0; width:235px; height:280px; object-fit:cover; border:10px solid var(--off); }
.role { margin-top:14px; color:var(--blue); font:700 1rem/1.4 var(--font-title); }
.authority-grid > div:last-child > p:not(.eyebrow):not(.role) { margin-top:22px; color:var(--muted); }

.page-hero { padding:100px 0 90px; background:var(--off); }
.page-hero-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:80px; align-items:end; }
.page-hero p:not(.eyebrow) { margin-top:25px; max-width:760px; color:var(--muted); font-size:1.15rem; }
.page-hero-mark { justify-self:end; display:grid; width:310px; height:310px; place-content:center; border:1px solid var(--line); text-align:center; }
.page-hero-mark span { color:var(--navy); font:800 8rem/1 var(--font-title); }
.page-hero-mark small,.page-hero-side { color:var(--muted); }
.page-hero-side { justify-self:end; max-width:350px; padding:30px; border-left:4px solid var(--amber); background:var(--white); }
.method-seal { justify-self:end; width:360px; height:360px; padding:60px; border:1px solid var(--line); border-radius:50%; display:flex; flex-direction:column; justify-content:center; text-align:center; }
.method-seal strong { color:var(--navy); font:800 5rem/1 var(--font-title); }
.method-seal span { margin-top:20px; color:var(--muted); font-size:.9rem; }
.compact-hero { padding:80px 0 65px; }

.prose-grid,.detail-grid,.comparison-grid,.article-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; align-items:start; }
.prose p,.article-body p { color:var(--muted); margin-bottom:22px; font-size:1.08rem; }
.prose ul,.article-body ul,.clean-list { padding-left:20px; color:var(--muted); }
.prose li,.article-body li,.clean-list li { margin:8px 0; }
.comparison { border-top:1px solid var(--line); }
.comparison div { display:grid; gap:8px; padding:25px 0; border-bottom:1px solid var(--line); }
.comparison strong { font-family:var(--font-title); }
.comparison span { color:var(--muted); }
.section-image { background:var(--navy-deep); color:white; }
.image-copy-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.image-copy-grid img { width:100%; height:560px; object-fit:cover; }
.image-copy-grid p:not(.eyebrow) { margin-top:22px; color:rgba(255,255,255,.72); }

.solution-detail { border-bottom:1px solid var(--line); }
.detail-number { display:block; margin-bottom:26px; color:var(--blue); font:800 3rem/1 var(--font-title); }
.ethics-box { display:grid; grid-template-columns:1fr 1fr; gap:70px; padding:48px; border:1px solid var(--line); border-left:6px solid var(--amber); }
.ethics-box > p { color:var(--muted); font-size:1.08rem; }

.timeline { list-style:none; margin:0; padding:0; border-top:1px solid rgba(255,255,255,.15); }
.timeline li { display:grid; grid-template-columns:100px 1fr; gap:20px; padding:30px 0; border-bottom:1px solid rgba(255,255,255,.15); }
.timeline span { color:var(--amber); font:800 1.15rem/1 var(--font-title); }
.timeline p { margin-top:10px; color:rgba(255,255,255,.7); }

.dayelly-hero { padding-bottom:0; overflow:hidden; }
.dayelly-hero-grid { display:grid; grid-template-columns:1fr .8fr; gap:80px; align-items:end; }
.dayelly-hero-grid img { justify-self:end; width:440px; height:620px; object-fit:cover; object-position:center top; }
.stats-wide { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.stats-wide div { padding:30px; border:1px solid var(--line); background:var(--white); }
.stats-wide strong { display:block; color:var(--navy); font:800 2rem/1 var(--font-title); }
.stats-wide span { display:block; margin-top:10px; color:var(--muted); }
.expertise-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.expertise-grid img { width:100%; height:530px; object-fit:cover; }
.clean-list { margin-top:28px; }
.quote-block { max-width:900px; }
.quote-block p { font:700 clamp(2rem,4vw,4rem)/1.2 var(--font-title); }
.quote-block span { display:block; margin-top:25px; color:var(--amber); }
.video-placeholder { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.video-placeholder p:not(.eyebrow) { margin-top:22px; color:var(--muted); }
.video-box { min-height:330px; display:grid; place-items:center; border:1px solid var(--line); background:var(--white); }
.video-box span { color:var(--muted); font-weight:800; text-transform:uppercase; letter-spacing:.12em; }

.article-section { padding:100px 0; border-bottom:1px solid var(--line); }
.article-body h3 { margin:38px 0 15px; }
.article-body p:last-child { margin-bottom:0; }

.contact-page { min-height:calc(100vh - 82px); padding:95px 0; background:var(--navy-deep); color:white; }
.contact-page-grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:90px; align-items:start; }
.contact-intro h1 { color:white; }
.contact-intro > p:not(.eyebrow) { margin-top:24px; color:rgba(255,255,255,.72); }
.contact-email-pill {
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  min-height:38px;
  margin:0 0 22px;
  padding:8px 12px;
  border:1px solid rgba(214,168,74,.58);
  border-radius:var(--radius);
  background:rgba(214,168,74,.14);
  color:#FFFFFF;
  font:800 .9rem/1.1 var(--font-title);
  text-decoration:none;
}
.contact-email-pill:hover { background:var(--amber); color:var(--navy); }
.contact-quick-route {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: -8px 0 26px;
  font: 700 .82rem/1.1 var(--font-title);
}
.contact-quick-route span {
  width: 100%;
  color: rgba(255,255,255,.72);
}
.contact-quick-route a {
  min-height: 34px;
  padding: 8px 11px;
  border: 1px solid rgba(156,204,231,.42);
  border-radius: var(--radius);
  color: #FFFFFF;
  text-decoration: none;
}
.contact-quick-route a:hover,
.contact-quick-route a:focus-visible {
  border-color: var(--amber);
  background: var(--amber);
  color: var(--navy);
}
.contact-channels { display:grid; gap:10px; margin-top:34px; }
.contact-channels a { color:white; text-decoration:none; }
.contact-form { padding:34px; background:var(--white); color:var(--graphite); box-shadow:var(--shadow); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.contact-form label { display:grid; gap:7px; margin-bottom:16px; font:700 .88rem/1.3 var(--font-title); }
.contact-form input,.contact-form select,.contact-form textarea { width:100%; padding:13px 14px; border:1px solid var(--line); border-radius:3px; background:var(--off); color:var(--graphite); outline:none; }
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus { border-color:var(--blue); box-shadow:0 0 0 3px rgba(75,152,197,.16); }
.consent { grid-template-columns:20px 1fr!important; align-items:start; font-family:var(--font-body)!important; font-weight:400!important; }
.consent input { margin-top:4px; }
.form-note { margin-top:10px; color:var(--muted); text-align:center; font-size:.78rem; }

.cta-band { padding:75px 0; background:var(--navy); color:white; }
.cta-band-grid { display:grid; grid-template-columns:1fr auto; gap:70px; align-items:center; }
.cta-band h2 { color:white; font-size:clamp(2rem,3.5vw,3.3rem); }
.cta-band p:not(.eyebrow) { margin-top:18px; color:rgba(255,255,255,.72); }

.legal-copy { max-width:900px; }
.legal-copy h2 { margin:40px 0 12px; font-size:1.6rem; }
.legal-copy h2:first-child { margin-top:0; }
.legal-copy p { color:var(--muted); }

.site-footer { padding:58px 0 20px; background:#00163C; color:white; }
.footer-grid { display:grid; grid-template-columns:1.4fr .6fr .8fr; gap:50px; }
.footer-brand { display:flex; gap:18px; align-items:flex-start; }
.footer-brand img { width:56px; height:60px; object-fit:contain; }
.footer-brand strong { font-family:var(--font-title); }
.footer-brand p { margin-top:8px; max-width:480px; opacity:.68; font-size:.9rem; }
.footer-links,.footer-contact { display:grid; gap:10px; align-content:start; }
.footer-links a,.footer-contact a { text-decoration:none; opacity:.8; font-size:.9rem; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; margin-top:42px; padding-top:18px; border-top:1px solid rgba(255,255,255,.12); opacity:.62; font-size:.78rem; }

.reveal { opacity:0; transform:translateY(20px); transition:opacity .65s ease,transform .65s ease; }
.reveal.is-visible { opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto}.reveal{opacity:1;transform:none}*{transition:none!important} }

@media (max-width:1000px) {
  .main-nav { position:fixed; inset:82px 0 auto 0; display:none; flex-direction:column; align-items:stretch; padding:24px; background:var(--white); box-shadow:var(--shadow); }
  .main-nav.is-open { display:flex; }
  .menu-toggle { display:block; }
  .hero-grid,.authority-grid,.method-preview,.page-hero-grid,.prose-grid,.detail-grid,.comparison-grid,.article-grid,.image-copy-grid,.dayelly-hero-grid,.expertise-grid,.video-placeholder,.contact-page-grid { grid-template-columns:1fr; }
  .hero-visual { min-height:650px; }
  .stats-bar,.stats-wide { grid-template-columns:1fr 1fr; }
  .split-heading { grid-template-columns:1fr; gap:20px; }
  .card-grid-3,.card-grid-4 { grid-template-columns:1fr 1fr; }
  .page-hero-mark,.method-seal,.page-hero-side { justify-self:start; margin-top:20px; }
  .dayelly-hero-grid img { justify-self:start; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .footer-brand { grid-column:1/-1; }
}
@media (max-width:680px) {
  body { font-size:17px; }
  .container { width:min(100% - 30px,var(--container)); }
  .section { padding:78px 0; }
  .brand-copy small { font-size:.52rem; }
  .hero { padding-top:58px; }
  .hero-visual { min-height:560px; }
  .portrait-frame { height:530px; }
  .card-a { top:60px; left:-4px; }
  .card-b { right:-4px; bottom:55px; }
  .stats-bar,.stats-wide,.card-grid-3,.card-grid-4,.form-row,.footer-grid { grid-template-columns:1fr; }
  .bento-grid { grid-template-columns:1fr; }
  .bento-large { grid-row:auto; min-height:460px; }
  .authority-images { min-height:500px; }
  .image-main { width:100%; height:420px; }
  .image-detail { width:160px; height:190px; }
  .method-seal { width:280px; height:280px; padding:45px; }
  .dayelly-hero-grid img { width:100%; height:520px; }
  .cta-band-grid { grid-template-columns:1fr; }
  .contact-form { padding:24px 18px; }
  .footer-brand { grid-column:auto; }
  .footer-bottom { flex-direction:column; }
}

/* ==========================================================
   V2 — REVISÃO DE ACABAMENTO, RESPONSIVIDADE E CONTRASTE
   ========================================================== */

:root {
  --header-height: 76px;
}

/* Cabeçalho e marca */
.nav-shell { min-height: var(--header-height); }
.brand { flex-shrink: 0; gap: 10px; min-width: 218px; }
.brand-symbol {
  width: 34px;
  height: 37px;
  flex: 0 0 34px;
  overflow: visible;
}
.brand-symbol img {
  width: 34px;
  height: 37px;
  object-fit: contain;
}
.brand-copy strong { font-size: .98rem; }
.brand-copy small { font-size: .54rem; letter-spacing: .10em; }
.main-nav { gap: 19px; font-size: .76rem; }
.nav-cta { padding: 13px 15px; white-space: nowrap; }

/* Ritmo vertical */
.section { padding: 90px 0; }
.article-section { padding: 82px 0; }
.page-hero { padding: 82px 0 76px; }
.compact-hero { padding: 64px 0 54px; }

/* Hero principal */
.hero { padding-top: 66px; }
.hero-grid { gap: 58px; }
.hero-copy { padding-bottom: 56px; }
.hero h1 { font-size: clamp(3rem, 5.1vw, 4.95rem); max-width: 760px; }
.hero-lead { margin-top: 24px; max-width: 700px; }
.hero-visual { min-height: 590px; }
.portrait-frame { width: min(400px, 88%); height: 555px; }
.hero-card { min-width: 148px; padding: 14px 16px; }
.card-a { left: 3px; top: 105px; }
.card-b { right: 3px; bottom: 70px; }
.stats-bar div { padding: 23px 24px; }

/* Cards e grids */
.bento-card { min-height: 220px; padding: 30px; }
.bento-large { min-height: 440px; }
.bento-card h3 { margin-top: 46px; }
.service-card,
.content-card,
.principle-card,
.signal-card,
.deliverable-card { min-height: 220px; padding: 27px; }
.signal-card { min-height: 155px; }
.deliverable-card { min-height: 185px; }
.principle-card h3,
.service-card h3,
.content-card h3 { margin-top: 42px; }
.card-grid { gap: 16px; }

/* A Fusari: bloco visual mais discreto */
.page-hero-brand {
  justify-self: end;
  width: 280px;
  min-height: 230px;
  padding: 36px;
  border: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: var(--white);
}
.page-hero-brand img {
  width: 88px;
  height: 95px;
  object-fit: contain;
}
.page-hero-brand strong,
.page-hero-brand span { display: block; }
.page-hero-brand strong { font: 800 1.05rem/1.2 var(--font-title); }
.page-hero-brand span { color: var(--muted); margin-top: 5px; font-size: .9rem; }

/* Fotos */
.authority-images { min-height: 540px; }
.image-main { height: 465px; }
.image-detail { width: 210px; height: 250px; }
.image-copy-grid img { height: 470px; }
.dayelly-hero-grid img { height: 555px; }
.expertise-grid img { height: 470px; }

/* Método */
.method-seal { width: 310px; height: 310px; padding: 48px; }
.timeline li { padding: 26px 0; }
.inline-cta {
  margin-top: 42px;
  padding: 26px 28px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.16);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}
.inline-cta strong,
.inline-cta span { display: block; }
.inline-cta span { margin-top: 4px; color: rgba(255,255,255,.68); }
.before-after { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.before-after article { padding: 34px; border: 1px solid var(--line); background: var(--white); }
.before-after article:last-child { border-top: 4px solid var(--blue); }
.before-after article:first-child { border-top: 4px solid var(--amber); }
.before-after span { color: var(--blue); font-weight: 800; text-transform: uppercase; letter-spacing: .1em; font-size: .75rem; }
.before-after h3 { margin-top: 32px; }
.before-after ul { margin: 18px 0 0; padding-left: 20px; color: var(--muted); }

/* Conteúdos */
.content-list-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.article-card {
  min-height: 370px;
  padding: 32px;
  border: 1px solid var(--line);
  background: var(--off);
  display: flex;
  flex-direction: column;
}
.article-card > span {
  color: var(--blue);
  font: 800 .74rem/1.2 var(--font-title);
  letter-spacing: .1em;
  text-transform: uppercase;
}
.article-card h2 {
  margin-top: 52px;
  font-size: 1.7rem;
}
.article-card p {
  margin-top: 18px;
  color: var(--muted);
}
.article-card a {
  margin-top: auto;
  padding-top: 28px;
  color: var(--navy);
  font-weight: 800;
  text-decoration: none;
}

.article-hero { padding: 86px 0 70px; background: var(--off); }
.article-hero-inner { max-width: 930px; }
.article-back { display: inline-block; margin-bottom: 40px; color: var(--muted); text-decoration: none; font-weight: 700; }
.article-hero h1 { max-width: 900px; font-size: clamp(2.8rem, 5vw, 4.9rem); }
.article-hero > .container > p:not(.eyebrow),
.article-hero-inner > p:not(.eyebrow) { margin-top: 24px; max-width: 760px; color: var(--muted); font-size: 1.18rem; }
.article-meta { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 30px; color: var(--muted); font-size: .88rem; }
.article-reading { max-width: 820px; padding-top: 72px; padding-bottom: 90px; }
.article-reading > p,
.article-reading > ul { color: var(--muted); font-size: 1.08rem; }
.article-reading > p { margin: 0 0 24px; }
.article-reading > h2 { margin: 56px 0 20px; font-size: 2rem; }
.article-reading > ul { padding-left: 22px; }
.article-reading > ul li { margin: 10px 0; }
.article-lead { font-size: 1.35rem !important; color: var(--graphite) !important; }
.article-closing {
  margin-top: 70px;
  padding: 34px;
  border-left: 5px solid var(--amber);
  background: var(--off);
}
.article-closing strong { font: 800 1.25rem/1.3 var(--font-title); }
.article-closing p { margin: 10px 0 24px; color: var(--muted); }

/* Formulário */
.contact-form { padding: 30px; }
.contact-form label { margin-bottom: 14px; }
.consent a { color: var(--blue); }

/* Rodapé */
.site-footer { padding-top: 50px; }

/* Breakpoint antecipado para proteger marca e menu */
@media (max-width: 1180px) {
  .main-nav {
    position: fixed;
    inset: var(--header-height) 0 auto 0;
    display: none;
    flex-direction: column;
    align-items: stretch;
    padding: 24px;
    background: var(--white);
    box-shadow: var(--shadow);
  }
  .main-nav.is-open { display: flex; }
  .menu-toggle { display: block; }
}

/* Tablet */
@media (max-width: 1000px) {
  .hero-grid,
  .authority-grid,
  .method-preview,
  .page-hero-grid,
  .prose-grid,
  .detail-grid,
  .comparison-grid,
  .article-grid,
  .image-copy-grid,
  .dayelly-hero-grid,
  .expertise-grid,
  .contact-page-grid { grid-template-columns: 1fr; }

  .hero-visual { min-height: 590px; }
  .content-list-grid { grid-template-columns: 1fr 1fr; }
  .page-hero-brand,
  .page-hero-side,
  .method-seal { justify-self: start; }
  .dayelly-hero-grid img { justify-self: start; }
}

/* Mobile */
@media (max-width: 680px) {
  :root { --header-height: 70px; }
  .container { width: min(100% - 30px, var(--container)); }
  .section { padding: 62px 0; }
  .page-hero { padding: 58px 0 54px; }
  .article-section { padding: 62px 0; }

  .brand { min-width: 0; }
  .brand-symbol { width: 30px; height: 33px; flex-basis: 30px; }
  .brand-symbol img { width: 30px; height: 33px; }
  .brand-copy strong { font-size: .88rem; }
  .brand-copy small { font-size: .47rem; }

  h1 { font-size: clamp(2.55rem, 12vw, 3.4rem); }
  h2 { font-size: clamp(2rem, 9vw, 2.75rem); }
  .hero { padding-top: 48px; }
  .hero h1 { font-size: clamp(2.65rem, 12vw, 3.45rem); }
  .hero-copy { padding-bottom: 34px; }
  .hero-actions { display: grid; }
  .hero-actions .button { width: 100%; }

  .hero-visual {
    min-height: auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    align-items: stretch;
  }
  .portrait-frame {
    grid-column: 1 / -1;
    width: 100%;
    height: 440px;
  }
  .hero-card {
    position: static;
    min-width: 0;
    box-shadow: none;
    border: 1px solid var(--line);
    border-left: 4px solid var(--amber);
  }
  .stats-bar { grid-template-columns: 1fr 1fr; }
  .stats-bar div { padding: 20px; border-bottom: 1px solid rgba(255,255,255,.15); }

  .bento-card,
  .bento-large { min-height: auto; }
  .bento-large { padding-bottom: 90px; }
  .service-card,
  .content-card,
  .principle-card,
  .signal-card,
  .deliverable-card { min-height: auto; }
  .signal-card { min-height: 130px; }
  .card-grid-3,
  .card-grid-4,
  .content-list-grid,
  .before-after { grid-template-columns: 1fr; }

  .page-hero-brand { width: 100%; min-height: 190px; }
  .method-seal { width: 250px; height: 250px; padding: 38px; }
  .method-seal strong { font-size: 4rem; }

  .authority-images { min-height: 440px; }
  .image-main { height: 360px; }
  .image-detail { width: 145px; height: 175px; border-width: 7px; }
  .image-copy-grid img,
  .expertise-grid img { height: 330px; }
  .dayelly-hero-grid img { height: 430px; }
  .inline-cta { flex-direction: column; align-items: stretch; }
  .inline-cta .button { width: 100%; }

  .article-card { min-height: 310px; }
  .article-hero { padding: 58px 0 50px; }
  .article-hero h1 { font-size: clamp(2.45rem, 11vw, 3.25rem); }
  .article-reading { padding-top: 50px; padding-bottom: 65px; }
  .article-reading > h2 { margin-top: 42px; font-size: 1.65rem; }

  .form-row { grid-template-columns: 1fr; }
  .contact-form { padding: 22px 17px; }
  .cta-band { padding: 58px 0; }
}

/* Pequenos celulares */
@media (max-width: 430px) {
  .stats-bar { grid-template-columns: 1fr; }
  .hero-visual { grid-template-columns: 1fr; }
  .portrait-frame { grid-column: auto; height: 410px; }
}

@media (max-width: 680px) {
  .hero { padding-top: 38px; }
  .hero-copy { padding-bottom: 22px; }
  .hero .eyebrow { margin-bottom: 12px; }
  .hero h1 { font-size: clamp(2.45rem, 11.2vw, 3.15rem); }
  .hero-lead { margin-top: 18px; font-size: 1rem; line-height: 1.55; }
  .hero-actions { margin-top: 24px; gap: 12px; }
  .button { min-height: 50px; }
  .portrait-frame { height: 400px; }

  .method-seal { width: 220px; height: 220px; padding: 30px; }
  .method-seal strong { font-size: 3.65rem; }
  .method-seal span { margin-top: 12px; font-size: .78rem; }

  .ethics-box { grid-template-columns: 1fr; gap: 24px; padding: 28px; }
  .contact-page { padding: 58px 0; }
  .contact-page-grid { gap: 44px; }
}


/* V3 - revisão final para publicação: tema claro fixo, marca compacta e CTA direto */
.brand {
  min-width: 198px;
}

.brand-symbol,
.brand-symbol img {
  width: 30px;
  height: 32px;
}

.brand-copy strong {
  font-size: .92rem;
}

.brand-copy small {
  font-size: .5rem;
}

.nav-cta:hover {
  background: #00163C;
  color: #FFFFFF !important;
}

.page-hero-brand {
  width: 250px;
  min-height: 200px;
  padding: 30px;
}

.page-hero-brand img {
  width: 60px;
  height: 64px;
}

.footer-brand img {
  width: 44px;
  height: 48px;
}

.floating-whatsapp {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 1100;
  width: 58px;
  height: 58px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: #25D366;
  box-shadow: 0 16px 34px rgba(0, 29, 82, .22);
  text-decoration: none;
}

.whatsapp-mark {
  width: 31px;
  height: 31px;
  fill: #FFFFFF;
}

.floating-whatsapp:focus-visible {
  outline: 3px solid rgba(37, 211, 102, .35);
  outline-offset: 4px;
}

@media (max-width: 680px) {
  .brand {
    min-width: 0;
  }

  .floating-whatsapp {
    right: 16px;
    bottom: 16px;
    width: 54px;
    height: 54px;
  }
}

/* V3.1 - ajustes somente desktop após revisão visual */
@media (min-width: 1001px) {
  .section {
    padding: 66px 0;
  }

  .page-hero {
    padding: 58px 0 54px;
  }

  .compact-hero {
    padding: 50px 0 44px;
  }

  .article-section {
    padding: 58px 0;
  }

  .section-heading {
    margin-bottom: 34px;
  }

  .section-heading > p:last-child {
    margin-top: 16px;
  }

  .split-heading {
    gap: 48px;
    align-items: start;
  }

  .bento-grid {
    grid-template-columns: 1fr 1fr;
    gap: 16px;
  }

  .bento-card,
  .bento-large {
    min-height: 185px;
    padding: 28px;
  }

  .bento-large {
    grid-row: auto;
  }

  .bento-card h3 {
    margin-top: 34px;
    font-size: 1.45rem;
  }

  .bento-card p {
    margin-top: 12px;
  }

  .bento-dark {
    min-height: 185px;
  }

  .route-line {
    display: none;
  }

  .card-grid {
    gap: 18px;
  }

  .service-card,
  .content-card,
  .principle-card,
  .signal-card,
  .deliverable-card {
    min-height: 190px;
    padding: 24px;
    background: var(--off);
    border: 1px solid var(--line);
    display: flex;
    flex-direction: column;
  }

  .service-card h3,
  .content-card h3,
  .principle-card h3 {
    margin-top: 28px;
    font-size: 1.22rem;
    letter-spacing: -0.02em;
  }

  .service-card p,
  .content-card p,
  .principle-card p,
  .deliverable-card p {
    margin-top: 12px;
  }

  .service-card a,
  .content-card a {
    margin-top: auto;
    padding-top: 20px;
  }

  .method-preview {
    grid-template-columns: .95fr 1.05fr;
    gap: 54px;
    align-items: center;
  }

  .numbered-list li {
    grid-template-columns: 70px 1fr;
    padding: 18px 0;
  }

  .authority-grid {
    gap: 58px;
  }

  .authority-images {
    min-height: auto;
    display: grid;
    grid-template-columns: 1.45fr .75fr;
    gap: 18px;
    align-items: end;
  }

  .image-main {
    width: 100%;
    height: 410px;
  }

  .image-detail {
    position: static;
    width: 100%;
    height: 255px;
    border: 0;
  }

  .content-card {
    min-height: 240px;
  }

  .cta-band {
    padding: 56px 0 64px;
    background: var(--off);
    color: var(--graphite);
  }

  .cta-band-grid {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 42px;
    align-items: center;
  }

  .cta-band h2 {
    color: var(--graphite);
    font-size: clamp(2rem, 3vw, 3rem);
  }

  .cta-band p:not(.eyebrow) {
    max-width: 640px;
    color: var(--muted);
  }

  .site-footer {
    padding-top: 44px;
  }

  .footer-grid {
    gap: 46px;
  }

  .footer-bottom {
    margin-top: 34px;
  }
}

/* V3.2 - reforco real de desktop e cache-safe para publicacao */
h1,
h2,
h3 {
  letter-spacing: 0;
}

.reveal {
  opacity: 1;
  transform: none;
}

.floating-whatsapp {
  position: fixed !important;
  right: 24px !important;
  bottom: 24px !important;
  z-index: 5000 !important;
  display: grid !important;
  width: 58px !important;
  height: 58px !important;
  overflow: hidden;
}

.floating-whatsapp svg,
.floating-whatsapp .whatsapp-mark {
  display: block !important;
  width: 31px !important;
  height: 31px !important;
  max-width: 31px !important;
  max-height: 31px !important;
}

@media (min-width: 1001px) {
  body {
    background: var(--white);
  }

  .hero {
    padding-top: 58px;
  }

  .hero-copy {
    padding-bottom: 46px;
  }

  .section {
    padding: 58px 0;
  }

  .page-hero {
    padding: 52px 0 50px;
  }

  .bg-soft {
    background: #F4F7FA;
  }

  .page-home main > .section:nth-of-type(3),
  .page-home main > .section:nth-of-type(6) {
    background: var(--white);
  }

  .page-home main > .section:nth-of-type(2),
  .page-home main > .section:nth-of-type(5) {
    background: #F4F7FA;
  }

  .page-home main > .section.section-dark {
    background: var(--navy-deep);
    color: white;
  }

  .page-home .card-grid.card-grid-3 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }

  .page-home .service-card,
  .page-home .content-card,
  .page-a-fusari .principle-card {
    min-height: 215px !important;
    padding: 26px !important;
    display: flex !important;
    flex-direction: column !important;
    background: #FFFFFF !important;
    border: 1px solid #D9E2EA !important;
    box-shadow: 0 12px 32px rgba(0, 29, 82, .06);
  }

  .page-home .service-card > span,
  .page-home .content-card > span,
  .page-a-fusari .principle-card > span {
    display: inline-grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid #D9E2EA;
    background: #F4F7FA;
    color: var(--navy);
    font: 800 .78rem/1 var(--font-title);
  }

  .page-home .content-card > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 160px;
    height: 42px;
    padding: 0 10px;
    box-sizing: border-box;
    text-align: center;
    white-space: nowrap;
  }

  .page-home .service-card h3,
  .page-home .content-card h3,
  .page-a-fusari .principle-card h3 {
    margin-top: 24px !important;
    font-size: 1.2rem;
    line-height: 1.15;
  }

  .page-home .service-card p,
  .page-home .content-card p,
  .page-a-fusari .principle-card p {
    margin-top: 12px !important;
    line-height: 1.45;
  }

  .page-home .service-card a,
  .page-home .content-card a {
    margin-top: auto !important;
    padding-top: 18px;
  }

  .page-home .authority-grid {
    grid-template-columns: 1fr .82fr;
    gap: 58px;
  }

  .page-home .authority-images {
    position: relative;
    display: block;
    min-height: 470px;
  }

  .page-home .image-main {
    width: 82%;
    height: 450px;
    object-fit: cover;
    object-position: center center;
  }

  .page-home .image-detail {
    position: absolute;
    right: 0;
    bottom: 28px;
    width: 220px;
    height: 260px;
    object-fit: cover;
    object-position: center top;
    border: 10px solid #F4F7FA;
    box-shadow: 0 18px 42px rgba(0, 29, 82, .14);
  }

  .cta-band {
    padding: 68px 0 78px !important;
    background: #F4F7FA !important;
    color: var(--graphite) !important;
  }

  .cta-band-grid {
    grid-template-columns: minmax(0, 760px) minmax(230px, 280px) !important;
    gap: 52px !important;
    align-items: center !important;
  }

  .cta-band h2 {
    color: var(--graphite) !important;
    max-width: 820px;
  }

  .cta-band p:not(.eyebrow) {
    color: var(--graphite) !important;
    max-width: 660px;
  }

  .cta-band .button {
    justify-self: end;
    width: 100%;
    min-height: 56px;
  }

  .site-footer {
    padding-top: 50px !important;
  }

  .page-a-fusari .page-hero-grid,
  .page-a-fusari .prose-grid,
  .page-a-fusari .comparison-grid,
  .page-a-fusari .image-copy-grid {
    gap: 54px;
  }

  .page-a-fusari .section {
    padding: 56px 0;
  }

  .page-a-fusari .section-heading {
    margin-bottom: 30px;
  }

  .page-a-fusari .page-hero-brand {
    width: 210px;
    min-height: 160px;
    padding: 24px;
  }

  .page-a-fusari .page-hero-brand img {
    width: 44px;
    height: 48px;
  }

  .page-a-fusari .card-grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
  }

  .page-a-fusari .image-copy-grid img {
    height: 430px;
    object-fit: cover;
    object-position: center 18%;
  }
}

@media (max-width: 680px) {
  .floating-whatsapp {
    right: 16px !important;
    bottom: 16px !important;
    width: 54px !important;
    height: 54px !important;
  }

  .page-a-fusari .image-copy-grid img {
    object-position: center top;
  }
}

/* V3.3 - ajustes finos finais somente para desktop */
.portrait-caption-stat {
  display: none;
}

@media (min-width: 1001px) {
  .page-home .hero-grid {
    grid-template-columns: 1.05fr .95fr;
    gap: 64px;
    align-items: center;
  }

  .page-home .hero-visual {
    min-height: 580px;
    justify-content: center;
    align-items: flex-end;
  }

  .page-home .portrait-frame {
    width: min(430px, 92%);
    height: 560px;
  }

  .page-home .portrait-caption {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: end;
    padding: 22px 24px;
  }

  .page-home .portrait-caption-name {
    display: block;
  }

  .page-home .portrait-caption-stat {
    display: block;
    min-width: 124px;
    padding-left: 18px;
    border-left: 1px solid rgba(255, 255, 255, .28);
  }

  .page-home .portrait-caption-stat strong {
    color: #FFFFFF;
    font: 800 1.35rem/1 var(--font-title);
  }

  .page-home .portrait-caption-stat span {
    margin-top: 5px;
    color: rgba(255, 255, 255, .75);
    font-size: .78rem;
    line-height: 1.2;
  }

  .page-home .hero-card {
    display: none !important;
  }

  .page-home .authority-images {
    min-height: 450px;
  }

  .page-home .image-main {
    width: 84%;
    height: 420px;
    object-position: center center;
  }

  .page-home .image-detail {
    right: -18px;
    bottom: -10px;
    width: 188px;
    height: 225px;
    border-width: 8px;
  }
}

@media (max-width: 1000px) {
  .portrait-caption-stat {
    display: none !important;
  }
}


/* ==========================================================
   V4 — REVISÃO CIRÚRGICA APROVADA | 24/07/2026
   Marca, navegação, estados de ação, hero e rodapé.
   ========================================================== */

/* Marca atualizada, mantendo o cabeçalho aprovado */
.brand { min-width: 238px; }
.brand-copy strong { font-size: .84rem; letter-spacing: .065em; white-space: nowrap; }
.brand-copy small { font-size: .49rem; letter-spacing: .09em; white-space: nowrap; }

/* Navegação suspensa: hover apenas onde existe hover; toque e teclado em todos os dispositivos */
.nav-item { position: relative; display: flex; align-items: center; }
.nav-dropdown-toggle {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
}
.nav-chevron { width: 10px; height: 7px; transition: transform .18s ease; }
.nav-item-dropdown.is-open .nav-chevron,
.nav-dropdown-toggle[aria-expanded="true"] .nav-chevron { transform: rotate(180deg); }
.nav-dropdown {
  position: absolute;
  top: calc(100% + 14px);
  left: -18px;
  z-index: 30;
  display: grid;
  min-width: 225px;
  padding: 10px;
  border: 1px solid var(--line);
  background: var(--navy);
  box-shadow: 0 22px 48px rgba(0,29,82,.18);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-7px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.nav-dropdown a {
  min-height: 44px;
  display: flex;
  align-items: center;
  padding: 10px 13px;
  color: #FFFFFF;
  border-bottom: 1px solid rgba(255,255,255,.13);
  line-height: 1.25;
}
.nav-dropdown a:last-child { border-bottom: 0; }
.nav-dropdown a:hover,
.nav-dropdown a:focus-visible { background: rgba(75,152,197,.18); color: #FFFFFF; }
.nav-item-dropdown.is-open .nav-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.main-nav > a,
.nav-dropdown-toggle { position: relative; }
.main-nav > a:not(.nav-cta)::after,
.nav-dropdown-toggle::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 4px;
  height: 2px;
  background: var(--blue);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .18s ease;
}
.main-nav > a:not(.nav-cta):hover::after,
.main-nav > a.active:not(.nav-cta)::after,
.nav-dropdown-toggle:hover::after,
.nav-dropdown-toggle.active::after { transform: scaleX(1); }

@media (hover: hover) and (min-width: 1181px) {
  .nav-item-dropdown:not(.suppress-hover):hover .nav-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}

/* Estados claros e consistentes dos botões */
.button,
.nav-cta,
.text-link,
.service-card a,
.content-card a,
.article-card a,
.contact-email-pill,
.footer-links a,
.footer-contact a,
.affiliation-links a,
.social-link { transition: color .18s ease, background-color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease, opacity .18s ease; }
.button-primary { background: var(--navy); color: #FFFFFF; border-color: var(--navy); }
.button-primary:hover { background: var(--blue); border-color: var(--blue); color: var(--navy); }
.button-secondary { background: #FFFFFF; color: var(--navy); border-color: var(--navy); }
.button-secondary:hover { background: var(--navy); color: #FFFFFF; }
.button-amber { background: var(--amber); color: var(--navy); border-color: var(--amber); }
.button-amber:hover { background: #E3B957; border-color: #E3B957; color: var(--navy); }
.button:active,
.nav-cta:active,
.social-link:active { transform: translateY(0) scale(.985); }
.button:focus-visible,
.nav-cta:focus-visible,
.nav-dropdown-toggle:focus-visible,
.main-nav a:focus-visible,
.text-link:focus-visible,
.service-card a:focus-visible,
.content-card a:focus-visible,
.article-card a:focus-visible,
.contact-email-pill:focus-visible,
.footer-links a:focus-visible,
.footer-contact a:focus-visible,
.affiliation-links a:focus-visible,
.social-link:focus-visible,
.menu-toggle:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--amber) 72%, transparent);
  outline-offset: 4px;
}
.button[aria-disabled="true"],
.button:disabled { opacity: .5; cursor: not-allowed; transform: none; }
.nav-cta:hover { background: var(--blue); color: var(--navy) !important; }
.text-link:hover { color: var(--blue); }
.service-card a:hover,
.content-card a:hover,
.article-card a:hover {
  background:var(--amber);
  border-color:var(--amber);
  color:var(--navy);
  transform:translateY(-1px);
  box-shadow:0 12px 24px rgba(0,29,82,.10);
}

/* Imagem de impacto solicitada, dentro da primeira dobra já aprovada */
.page-home .portrait-frame.is-impact {
  width: min(560px, 100%);
  height: 430px;
}
.page-home .portrait-frame.is-impact img {
  object-fit: cover;
  object-position: center center;
}
.page-home .hero-visual { min-height: 500px; }
.page-home .card-a { top: 70px; left: -8px; }
.page-home .card-b { right: -8px; bottom: 46px; }

/* Atuação: apenas os complementos solicitados */
.sector-tags {
  display: grid;
  grid-template-columns: repeat(2, minmax(120px, 1fr));
  gap: 10px;
  align-self: center;
}
.sector-tags span {
  min-height: 48px;
  display: grid;
  place-items: center;
  padding: 8px 14px;
  background: var(--navy);
  color: #FFFFFF;
  font: 800 .73rem/1.2 var(--font-title);
  letter-spacing: .06em;
  text-align: center;
  text-transform: uppercase;
}
.specialty-link {
  display: grid;
  gap: 4px;
  margin-top: 26px;
  padding: 18px 20px;
  border-left: 4px solid var(--amber);
  background: var(--navy);
  color: #FFFFFF;
  text-decoration: none;
}
.specialty-link strong { font-family: var(--font-title); }
.specialty-link span { color: #9CCCE7; font-size: .92rem; }
.specialty-link:hover { background: #00163C; }
.profile-link { margin-top: 28px; }

/* Rodapé: redes e vínculos sem alterar a base aprovada */
.footer-brand strong,
.footer-descriptor { display: block; }
.footer-descriptor {
  margin-top: 5px;
  color: #9CCCE7;
  font: 700 .66rem/1.2 var(--font-title);
  letter-spacing: .11em;
  text-transform: uppercase;
}
.footer-label {
  color: #9CCCE7;
  font: 800 .72rem/1.2 var(--font-title);
  letter-spacing: .12em;
  text-transform: uppercase;
}
.footer-extras {
  display: grid;
  grid-template-columns: .65fr 1.35fr;
  gap: 48px;
  align-items: end;
  margin-top: 36px;
  padding-top: 28px;
  border-top: 1px solid rgba(255,255,255,.12);
}
.footer-social-block,
.footer-affiliations { display: grid; gap: 14px; }
.social-links { display: flex; flex-wrap: wrap; gap: 10px; }
.social-link {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(156,204,231,.38);
  color: #9CCCE7;
  text-decoration: none;
}
.social-link svg { width: 22px; height: 22px; }
.social-link:hover { background: var(--amber); border-color: var(--amber); color: var(--navy); transform: translateY(-2px); }
.affiliation-links { display: flex; flex-wrap: wrap; gap: 10px 24px; }
.affiliation-links a { color: #FFFFFF; opacity: .78; text-decoration: none; }
.affiliation-links a:hover { color: var(--amber); opacity: 1; }
.footer-bottom { margin-top: 28px; }

@media (max-width: 1180px) {
  body.menu-open { overflow: hidden; }
  .main-nav { max-height: calc(100vh - var(--header-height)); overflow-y: auto; gap: 3px; }
  .main-nav > a,
  .nav-dropdown-toggle { width: 100%; min-height: 48px; justify-content: space-between; padding: 12px 4px; }
  .nav-item { display: block; width: 100%; }
  .nav-dropdown {
    position: static;
    min-width: 0;
    display: none;
    margin: 0 0 8px;
    padding: 6px 10px;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
  }
  .nav-item-dropdown.is-open .nav-dropdown { display: grid; }
  .main-nav > a:not(.nav-cta)::after,
  .nav-dropdown-toggle::after { bottom: 2px; }
  .nav-cta { margin-top: 8px; text-align: center; justify-content: center !important; }
}

@media (max-width: 680px) {
  .brand { min-width: 0; max-width: calc(100vw - 88px); }
  .brand-copy strong { font-size: .73rem; }
  .brand-copy small { font-size: .4rem; letter-spacing: .075em; }
  .page-home .portrait-frame.is-impact { height: 340px; }
  .page-home .hero-visual { min-height: auto; }
  .sector-tags { grid-template-columns: 1fr 1fr; width: 100%; }
  .footer-extras { grid-template-columns: 1fr; gap: 28px; }
  .social-link { width: 48px; height: 48px; }
}

@media (max-width: 430px) {
  .page-home .portrait-frame.is-impact { height: 305px; }
  .sector-tags { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
.nav-dropdown-toggle:hover,
.nav-dropdown-toggle.active { color: var(--blue); }

/* Vínculos profissionais — aplicação visual cirúrgica no rodapé */
.affiliation-links.affiliation-logos {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 12px;
}
.affiliation-logo {
  min-width: 150px;
  min-height: 62px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 14px;
  border: 1px solid rgba(156, 204, 231, .28);
  background: rgba(255, 255, 255, .025);
  color: #C9E2F0;
  opacity: 1;
  text-decoration: none;
  border-radius: 2px;
  transition: color .18s ease, background-color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.affiliation-logo:hover {
  color: var(--amber);
  border-color: color-mix(in srgb, var(--amber) 76%, transparent);
  background: rgba(214, 168, 74, .07);
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(0, 0, 0, .12);
}
.affiliation-logo:active { transform: translateY(0) scale(.985); }
.affiliation-logo:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--amber) 72%, transparent);
  outline-offset: 4px;
}
.affiliation-logo-art {
  width: 100%;
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* IVG — assinatura tipográfica monocromática, dentro da paleta Fusari */
.ivg-mark { gap: 9px; }
.ivg-monogram {
  display: inline-flex;
  align-items: baseline;
  padding: 3px 5px 2px;
  border: 1.5px solid currentColor;
  font: 800 1rem/1 var(--font-title);
  letter-spacing: -.04em;
}
.ivg-monogram span { color: var(--amber); }
.ivg-name {
  font: 700 .55rem/1.15 var(--font-title);
  letter-spacing: .055em;
  text-transform: uppercase;
  text-align: left;
}

/* PMI — referência visual à certificação, sem reproduzir logomarca institucional */
.pmi-mark { gap: 11px; }
.pmi-main {
  font: 800 1.05rem/1 var(--font-title);
  letter-spacing: .015em;
}
.pmi-main sup { font-size: .48em; vertical-align: super; }
.pmi-divider { width: 1px; height: 30px; background: currentColor; opacity: .42; }
.pmi-sub {
  font: 800 .88rem/1 var(--font-title);
  letter-spacing: .11em;
}

/* Infra Women Brazil — wordmark editorial monocromático */
.iwb-mark {
  position: relative;
  width: auto;
  min-width: 92px;
  display: grid;
  grid-template-columns: auto;
  justify-items: start;
  align-content: center;
  gap: 0;
  line-height: 1;
}
.iwb-infra,
.iwb-women {
  font: 700 .94rem/.82 Georgia, 'Times New Roman', serif;
  letter-spacing: -.035em;
}
.iwb-infra {
  padding: 1px 6px 2px;
  background: #C9E2F0;
  color: var(--navy);
}
.iwb-women { padding-left: 6px; }
.iwb-brazil {
  padding: 4px 0 0 7px;
  font: 700 .39rem/1 var(--font-title);
  letter-spacing: .34em;
}
.affiliation-logo-iwb:hover .iwb-infra { background: var(--amber); color: var(--navy); }

@media (max-width: 680px) {
  .affiliation-links.affiliation-logos {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .affiliation-logo { min-width: 0; width: 100%; }
  .affiliation-logo-iwb { grid-column: 1 / -1; }
}
@media (max-width: 390px) {
  .affiliation-links.affiliation-logos { grid-template-columns: 1fr; }
  .affiliation-logo-iwb { grid-column: auto; }
}

/* Revisão 004 — logos visuais reais no bloco de vínculos */
.affiliation-logo-image {
  min-height: 78px;
  padding: 13px 16px;
}
.affiliation-logo-image img {
  display: block;
  width: 100%;
  max-width: 245px;
  height: 58px;
  object-fit: contain;
  object-position: center;
  opacity: .92;
  transition: opacity .18s ease, transform .18s ease, filter .18s ease;
}
.affiliation-logo-image:hover img {
  opacity: 1;
  transform: scale(1.025);
  filter: brightness(1.12) saturate(1.05);
}
@media (max-width: 680px) {
  .affiliation-logo-image { min-height: 72px; }
  .affiliation-logo-image img { height: 52px; }
}


/* ==========================================================
   V5 — CORREÇÃO AUDITADA | FOTO ORIGINAL + VÍNCULOS VISÍVEIS
   Mantém a estrutura aprovada; corrige somente os dois pontos
   confirmados na auditoria de 24/07/2026.
   ========================================================== */

/* O hero volta a usar a moldura original. A regra .is-impact permanece
   sem efeito porque a classe foi removida do HTML, evitando regressão. */

.footer-affiliations {
  min-width: 0;
}
.affiliation-links.affiliation-logos {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
}
.affiliation-logo.affiliation-logo-image {
  min-width: 0;
  min-height: 92px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 12px 13px 10px;
  border: 1px solid rgba(156, 204, 231, .30);
  background: rgba(255, 255, 255, .035);
  color: #C9E2F0;
  opacity: 1;
  text-align: center;
}
.affiliation-logo.affiliation-logo-image img {
  display: block;
  width: 100%;
  max-width: 190px;
  height: 48px;
  object-fit: contain;
  object-position: center;
  opacity: .96;
}
.affiliation-logo.affiliation-logo-image span {
  display: block;
  color: #C9E2F0;
  font: 700 .65rem/1.2 var(--font-title);
  letter-spacing: .045em;
}
.affiliation-logo.affiliation-logo-image:hover span {
  color: var(--amber);
}
@media (max-width: 900px) {
  .affiliation-links.affiliation-logos {
    grid-template-columns: 1fr;
  }
  .affiliation-logo.affiliation-logo-image {
    min-height: 84px;
  }
  .affiliation-logo.affiliation-logo-image img {
    max-width: 210px;
    height: 44px;
  }
}


/* ==========================================================
   V6 — ORGANIZAÇÃO CIRÚRGICA DO RODAPÉ
   Une os ícones ao bloco Contato e mantém os vínculos em uma
   faixa própria, sem alterar os demais elementos aprovados.
   ========================================================== */
.footer-contact .footer-contact-social {
  margin-top: 6px;
  gap: 8px;
}
.footer-contact .footer-contact-social .social-link {
  width: 38px;
  height: 38px;
}
.footer-contact .footer-contact-social .social-link svg {
  width: 19px;
  height: 19px;
}
.footer-extras {
  grid-template-columns: 1fr;
  align-items: start;
}
.footer-affiliations {
  justify-items: center;
  text-align: center;
}
.footer-affiliations .affiliation-links.affiliation-logos {
  width: min(100%, 760px);
}
@media (max-width: 680px) {
  .footer-contact .footer-contact-social {
    margin-top: 4px;
  }
  .footer-contact .footer-contact-social .social-link {
    width: 44px;
    height: 44px;
  }
  .footer-affiliations {
    justify-items: stretch;
    text-align: left;
  }
  .footer-affiliations .affiliation-links.affiliation-logos {
    width: 100%;
  }
}


/* ==========================================================
   V7 — ORDEM FINAL DO RODAPÉ
   Move os vínculos e referências para a primeira faixa,
   acima da marca, navegação e contato. Nenhum outro bloco
   ou conteúdo do site foi alterado.
   ========================================================== */
.site-footer > .footer-extras {
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 30px;
  border-top: 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.site-footer > .footer-grid {
  padding-top: 34px;
}
@media (max-width: 680px) {
  .site-footer > .footer-extras {
    padding-bottom: 26px;
  }
  .site-footer > .footer-grid {
    padding-top: 28px;
  }
}

/* ==========================================================
   V8 — REVISÃO CONSOLIDADA DAYELLY | 31/07/2026
   Hero de infraestrutura, conteúdo institucional, mobilidade,
   clientes, âncoras, navegação e acessibilidade de movimento.
   ========================================================== */

/* Âncoras sob cabeçalho fixo */
section[id],
main[id] { scroll-margin-top: 110px; }

/* Correção do sublinhado da navegação: linha abaixo do texto, sem efeito tachado */
@media (min-width: 1181px) {
  .main-nav > a:not(.nav-cta) {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
  .main-nav > a:not(.nav-cta)::after,
  .nav-dropdown-toggle::after { bottom: 0; }
}

/* Hero de impacto — conteúdo permanece em HTML e a imagem pode ser substituída isoladamente */
.page-home .hero.hero-impact {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 0;
  background: var(--navy-deep);
  color: #FFFFFF;
}
.page-home .hero-media,
.page-home .hero-shade {
  position: absolute;
  inset: 0;
}
.page-home .hero-media { z-index: -3; }
.page-home .hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 48%;
}
.page-home .hero-shade {
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(0, 22, 60, .96) 0%, rgba(0, 29, 82, .82) 42%, rgba(7, 23, 44, .38) 72%, rgba(7, 23, 44, .54) 100%),
    linear-gradient(0deg, rgba(7, 23, 44, .76) 0%, transparent 46%);
}
.page-home .hero-impact-content {
  min-height: 630px;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 1;
}
.page-home .hero-impact .hero-copy {
  max-width: 880px;
  padding: 88px 0 112px;
}
.page-home .hero-impact h1 {
  max-width: 860px;
  color: #FFFFFF;
  text-wrap: balance;
}
.page-home .hero-impact h1 span { color: var(--amber); }
.page-home .hero-impact .hero-lead {
  max-width: 760px;
  color: rgba(255, 255, 255, .84);
  text-shadow: 0 1px 18px rgba(0, 0, 0, .24);
}
.button-secondary-light {
  border-color: rgba(255,255,255,.72);
  color: #FFFFFF;
  background: rgba(0,29,82,.18);
  backdrop-filter: blur(4px);
}
.button-secondary-light:hover,
.button-secondary-light:focus-visible {
  border-color: #FFFFFF;
  background: #FFFFFF;
  color: var(--navy);
}
.page-home .hero-impact .stats-bar {
  position: relative;
  z-index: 2;
  background: rgba(0, 29, 82, .94);
  box-shadow: 0 -1px 0 rgba(255,255,255,.12);
  backdrop-filter: blur(8px);
}

/* Prova social com movimento acessível, sem elemento <marquee> */
.client-proof {
  overflow: hidden;
  padding: 76px 0 82px;
  border-bottom: 1px solid var(--line);
  background: var(--white);
}
.client-proof-heading {
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 70px;
  align-items: end;
  margin-bottom: 38px;
}
.client-proof-heading h2 {
  max-width: 760px;
  font-size: clamp(2rem, 3.5vw, 3.35rem);
}
.client-proof-heading > p {
  max-width: 520px;
  color: var(--muted);
}
.client-marquee {
  width: 100%;
  overflow: hidden;
  padding: 12px 0;
  outline: none;
  cursor: grab;
  touch-action: pan-y;
  user-select: none;
  mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}
.client-marquee.is-dragging { cursor: grabbing; }
.client-marquee:focus-visible {
  box-shadow: inset 0 0 0 3px color-mix(in srgb, var(--blue) 70%, transparent);
}
.client-track {
  width: max-content;
  display: flex;
  will-change: transform;
}
.client-group {
  flex: none;
  display: flex;
  align-items: center;
  gap: 18px;
  padding-right: 18px;
}
.client-logo {
  --client-logo-scale: .9;
  --client-logo-inset-y: 16px;
  --client-logo-inset-x: 18px;
  position: relative;
  width: 240px;
  height: 128px;
  flex: 0 0 auto;
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid var(--line);
  background: #FFFFFF;
  box-shadow: 0 12px 28px rgba(0,29,82,.06);
}
.client-logo-frame {
  position: absolute;
  inset: var(--client-logo-inset-y) var(--client-logo-inset-x);
  display: block;
}
.client-logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transform: scale(var(--client-logo-scale));
  transform-origin: center;
}
  .client-logo-frame,
  .client-logo img {
    pointer-events: none;
    user-select: none;
    -webkit-user-drag: none;
  }
/* Ajuste óptico por proporção: cada marca permanece inteira e legível. */
.client-logo--monto { --client-logo-scale: .9; }
.client-logo--rota { --client-logo-scale: .84; }
.client-logo--odebrecht { --client-logo-scale: .96; }
.client-logo--terra-nova { --client-logo-scale: .9; background: #050658; }
.client-logo--petrobras { --client-logo-scale: .95; --client-logo-inset-y: 22px; --client-logo-inset-x: 22px; }
.client-logo--ldc { --client-logo-scale: .86; }
.client-logo--bom-jesus { --client-logo-scale: .9; --client-logo-inset-y: 18px; --client-logo-inset-x: 20px; }
.client-logo--nova-mutum { --client-logo-scale: .78; --client-logo-inset-y: 14px; --client-logo-inset-x: 44px; }
.client-logo--bp { --client-logo-scale: .82; --client-logo-inset-y: 14px; --client-logo-inset-x: 30px; }
/* Missão, visão e valores completos */
.values-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.values-grid .principle-card {
  min-height: 320px;
  background: var(--white);
}
.values-grid .principle-card:last-child {
  grid-column: 1 / -1;
  min-height: 240px;
}
.methodology-owned { border-top: 1px solid var(--line); }

/* Atuação ampliada dentro do território de infraestrutura */
.sector-tags-expanded {
  grid-template-columns: repeat(2, minmax(145px, 1fr));
  max-width: 470px;
}
.sector-tags-expanded span:first-child {
  grid-column: 1 / -1;
  background: var(--amber);
  color: var(--navy);
}

/* Camadas do Acesso Seguro 360° */
.method-layers-section { background: var(--off); }
.method-layers {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.method-layers article {
  min-height: 260px;
  padding: 30px;
  border: 1px solid var(--line);
  border-top: 4px solid var(--amber);
  background: var(--white);
}
.method-layers span {
  color: var(--amber);
  font: 800 .82rem/1 var(--font-title);
  letter-spacing: .12em;
}
.method-layers h3 { margin-top: 42px; }
.method-layers p { margin-top: 15px; color: var(--muted); }

/* Endereço institucional */
.footer-contact address,
.contact-channels address {
  margin: 0;
  font-style: normal;
  line-height: 1.45;
}
.footer-contact address {
  max-width: 270px;
  color: rgba(255,255,255,.72);
  font-size: .86rem;
}
.contact-channels address { color: rgba(255,255,255,.76); }
.route-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
}
.route-actions .route-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 9px 14px;
  border: 1px solid rgba(214,168,74,.66);
  border-radius: var(--radius);
  background: rgba(214,168,74,.13);
  color: #FFFFFF;
  font: 800 .88rem/1.1 var(--font-title);
}
.route-actions .route-link:hover,
.route-actions .route-link:focus-visible {
  border-color: var(--amber);
  background: var(--amber);
  color: var(--navy);
}
.footer-route-link {
  width: max-content;
  color: var(--amber) !important;
  font-weight: 700;
  opacity: 1 !important;
}
.footer-route-link:hover { color: #FFFFFF !important; }

@media (min-width: 901px) {
  .page-home .service-card a,
  .page-home .content-card a,
  .article-card a {
    min-height: 34px;
    padding: 7px 11px !important;
    font-size: .94rem;
    line-height: 1;
    justify-content: center;
  }
}

@media (max-width: 900px) {
  section[id],
  main[id] { scroll-margin-top: 96px; }
  .page-home .hero-impact-content { min-height: 560px; }
  .page-home .hero-impact .hero-copy { padding: 74px 0 92px; }
  .client-proof-heading { grid-template-columns: 1fr; gap: 18px; }
  .values-grid,
  .method-layers { grid-template-columns: 1fr 1fr; }
  .values-grid .principle-card:last-child { grid-column: 1 / -1; }
}

@media (max-width: 680px) {
  .page-home .hero-media img { object-position: 58% center; }
  .page-home .hero-shade {
    background: linear-gradient(90deg, rgba(0,22,60,.94), rgba(0,29,82,.72)),
                linear-gradient(0deg, rgba(7,23,44,.82), transparent 55%);
  }
  .page-home .hero-impact-content { min-height: 540px; }
  .page-home .hero-impact .hero-copy { padding: 62px 0 76px; }
  .page-home .hero-impact .hero-actions { display: grid; }
  .page-home .hero-impact .hero-actions .button { width: 100%; }
  .client-proof { padding: 58px 0 62px; }
  .client-marquee { mask-image: none; }
  .client-logo {
    --client-logo-inset-y: 14px;
    --client-logo-inset-x: 16px;
    width: 210px;
    height: 112px;
  }
  .route-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .values-grid,
  .method-layers { grid-template-columns: 1fr; }
  .values-grid .principle-card,
  .values-grid .principle-card:last-child { grid-column: auto; min-height: 0; }
  .method-layers article { min-height: 0; }
  .sector-tags-expanded { grid-template-columns: 1fr 1fr; max-width: none; }
}

@media (max-width: 430px) {
  .route-actions { grid-template-columns: 1fr; }
}

@media (max-width: 430px) {
  .sector-tags-expanded { grid-template-columns: 1fr; }
  .sector-tags-expanded span:first-child { grid-column: auto; }
  .client-logo { width: 184px; height: 104px; }
}

@media (prefers-reduced-motion: reduce) {
  .client-marquee {
    overflow: visible;
    mask-image: none;
  }
  .client-track {
    width: 100%;
    display: block;
    animation: none !important;
    transform: none !important;
  }
  .client-group:first-child {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    padding-right: 0;
  }
  .client-group[aria-hidden="true"] { display: none; }
  .client-logo { width: 100%; }
}

@media (max-width: 900px) and (prefers-reduced-motion: reduce) {
  .client-group:first-child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 520px) and (prefers-reduced-motion: reduce) {
  .client-group:first-child { grid-template-columns: 1fr; }
}


/* Auditoria final 009 — o contato já oferece formulário e canais próprios. */
.page-contact .floating-whatsapp { display: none !important; }

/* Revisão Cirúrgica 010 — normalização óptica do carrossel de clientes. */

/* Revisão SEO 014 — autoria e navegação contextual dos artigos. */
.article-meta a {
  color: inherit;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.article-related-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  margin: 34px 0;
  padding-top: 22px;
  border-top: 1px solid var(--line);
}

.article-related-links strong {
  flex-basis: 100%;
  color: var(--navy);
}

.article-related-links a {
  color: var(--navy);
  font-weight: 700;
  text-underline-offset: 3px;
}

/* Revisão cirúrgica mobile — A Fusari: integrar marca ao bloco Estrutura */
@media (max-width: 680px) {
  .page-a-fusari .page-hero-brand {
    width: 100%;
    min-height: auto;
    padding: 24px;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 18px;
  }

  .page-a-fusari .page-hero-brand img {
    width: 48px;
    height: 52px;
    flex: 0 0 auto;
  }

  .page-a-fusari .page-hero-brand > div {
    min-width: 0;
  }
}
