:root { --vpa-blue:#223970; --vpa-blue-dark:#142858; --vpa-green:#19a649; --vpa-ink:#132236; --vpa-muted:#677486; --vpa-line:#dde3eb; --vpa-paper:#fff; --vpa-sand:#f7f3ec; --vpa-cloud:#f4f6fa; --vpa-container:1280px; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; color:var(--vpa-ink); background:var(--vpa-paper); font-family:"DM Sans",Arial,sans-serif; line-height:1.55; -webkit-font-smoothing:antialiased; } img { display:block; max-width:100%; height:auto; } a { color:inherit; } button,input,select { font:inherit; } h1,h2,h3,p { margin-top:0; } h1,h2,h3 { font-family:"Playfair Display",Georgia,serif; font-weight:600; line-height:1.1; letter-spacing:-.035em; } h1 { font-size:clamp(2.8rem,5vw,5.8rem); } h2 { font-size:clamp(2.2rem,3.5vw,4rem); } h3 { font-size:clamp(1.35rem,2vw,1.85rem); }
.vpa-container{ width:min(calc(100% - 48px),var(--vpa-container)); margin-inline:auto; }.screen-reader-text { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }.screen-reader-text:focus { z-index:999; top:16px; left:16px; width:auto; height:auto; padding:12px; clip:auto; color:#fff; background:var(--vpa-blue); }body.home .vpa-kicker{ display:flex; align-items:center; gap:10px; margin-bottom:14px; color:var(--vpa-green); font-size:.74rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }body.home .vpa-kicker::before{ width:22px; height:2px; content:""; background:currentColor; }body.home .vpa-button{ display:inline-flex; min-height:50px; align-items:center; justify-content:center; padding:0 24px; border:0; border-radius:999px; color:#fff; font-size:.92rem; font-weight:700; text-decoration:none; transition:transform .2s ease,background .2s ease; }body.home .vpa-button:hover{ transform:translateY(-2px); }body.home .vpa-button--green{ background:var(--vpa-green); }body.home .vpa-button--blue{ background:var(--vpa-blue); }body.home .vpa-button--blue:hover{ background:var(--vpa-blue-dark); }body.home .vpa-section{ padding:104px 0; }body.home .vpa-section-head{ display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:42px; }body.home .vpa-section-head h2{ margin-bottom:10px; }body.home .vpa-section-head p:not(.vpa-kicker){ max-width:620px; margin:0; color:var(--vpa-muted); }body.home .vpa-text-link{ color:var(--vpa-blue); font-size:.92rem; font-weight:700; text-decoration:none; white-space:nowrap; }
.site-header { position:absolute; z-index:30; top:0; left:0; width:100%; color:#fff; transition:background .25s ease,box-shadow .25s ease,transform .25s ease; }.site-header.is-scrolled { position:fixed; background:rgba(20,40,88,.98); box-shadow:0 12px 30px rgba(11,21,43,.18); }.vpa-contact-strip{ border-bottom:1px solid rgba(255,255,255,.24); }.vpa-contact-strip__inner{ display:flex; min-height:52px; align-items:center; justify-content:flex-end; gap:18px; font-size:.78rem; }.vpa-contact-strip a{ color:#fff; font-weight:700; text-decoration:none; }.vpa-contact-strip address{ margin:0; font-style:normal; }body.home .is-scrolled .vpa-contact-strip{ display:none; }.site-header__inner { display:flex; min-height:86px; align-items:center; justify-content:space-between; gap:40px; }.custom-logo { width:auto; max-height:62px; }.site-branding__name { color:#fff; font-size:2rem; font-weight:700; letter-spacing:-.08em; text-decoration:none; }.site-branding__name span { display:block; margin-top:-4px; font-family:"DM Sans",sans-serif; font-size:.62rem; letter-spacing:.08em; text-transform:uppercase; }.primary-navigation ul,.footer-navigation ul { display:flex; align-items:center; gap:clamp(18px,2.1vw,36px); padding:0; margin:0; list-style:none; }.primary-navigation a { color:#fff; font-size:.78rem; font-weight:700; letter-spacing:.02em; text-decoration:none; text-transform:uppercase; }.primary-navigation a:hover,.primary-navigation .current-menu-item a { color:#19a649; }.menu-toggle { display:none; width:44px; height:44px; padding:10px; background:transparent; border:1px solid rgba(255,255,255,.5); border-radius:50%; }.menu-toggle span:not(.screen-reader-text) { display:block; height:2px; margin:5px 0; background:#fff; }
body.home .vpa-hero{ position:relative; min-height:760px; overflow:hidden; background:var(--vpa-blue-dark); }body.home .vpa-hero__slide{ position:absolute; inset:0; display:grid; visibility:hidden; place-items:center; opacity:0; background-position:center; background-size:cover; transition:opacity .65s ease,visibility .65s ease; }body.home .vpa-hero__slide.is-active{ z-index:1; visibility:visible; opacity:1; }body.home .vpa-hero__content{ padding-top:144px; color:#fff; }body.home .vpa-hero h1{ max-width:850px; margin-bottom:24px; color:#fff; }body.home .vpa-hero__content > p:not(.vpa-kicker){ max-width:850px; margin-bottom:32px; font-size:1.1rem; }body.home .vpa-hero .vpa-kicker{ color:#19a649; }body.home .vpa-hero__controls{ position:absolute; z-index:3; right:max(24px,calc((100vw - var(--vpa-container)) / 2)); bottom:38px; display:flex; align-items:center; gap:12px; }body.home .vpa-hero__controls button{ display:grid; width:42px; height:42px; place-items:center; color:#fff; background:transparent; border:1px solid rgba(255,255,255,.55); border-radius:50%; font-size:1.6rem; }body.home .vpa-hero__controls button:hover{ background:#fff; color:var(--vpa-blue); }body.home .vpa-hero__controls [data-hero-dots]{ display:flex; gap:8px; }body.home .vpa-hero__controls [data-hero-dots] button{ width:8px; height:8px; padding:0; border:0; background:rgba(255,255,255,.5); }body.home .vpa-hero__controls [data-hero-dots] button.is-active{ background:#fff; }
body.home .vpa-search-section{ position:relative; z-index:4; margin-top:-38px; }body.home .vpa-search-form{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) auto; gap:12px; padding:18px; background:#fff; border-radius:16px; box-shadow:0 16px 35px rgba(17,35,67,.15); }body.home .vpa-search-form select{ width:100%; min-height:50px; padding:0 38px 0 16px; color:var(--vpa-ink); background:#f5f6f8; border:1px solid #e7eaf0; border-radius:10px; }body.home .vpa-search-form .vpa-button{ min-width:132px; }
body.home .vpa-projects-section{ padding-top:72px; }body.home .vpa-project-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px 24px; }body.home .vpa-project-card{ overflow:hidden; border-radius:18px; background:#fff; box-shadow:0 10px 32px rgba(22,43,83,.1); }body.home .vpa-project-card__image{ position:relative; display:block; min-height:280px; overflow:hidden; background:linear-gradient(135deg,#c8d0df,#8391a8); }body.home .vpa-project-card__image img{ width:100%; height:280px; object-fit:cover; transition:transform .4s ease; }body.home .vpa-project-card:hover .vpa-project-card__image img{ transform:scale(1.04); }body.home .vpa-project-card__location{ position:absolute; right:14px; bottom:14px; padding:7px 10px; border-radius:999px; color:#fff; background:rgba(19,34,54,.78); font-size:.74rem; font-weight:700; }body.home .vpa-project-card__body{ padding:24px; }body.home .vpa-project-card h3{ margin-bottom:16px; font-size:1.8rem; }body.home .vpa-project-card h3 a{ text-decoration:none; }body.home .vpa-project-card__meta{ display:grid; gap:9px; padding:0; margin:0 0 18px; list-style:none; color:#405166; font-size:.86rem; }body.home .vpa-project-card__meta li{ padding-left:18px; position:relative; }body.home .vpa-project-card__meta li::before{ position:absolute; left:0; color:var(--vpa-green); content:"•"; }body.home .vpa-sales{ margin:18px 0; }body.home .vpa-sales div{ display:flex; justify-content:space-between; margin-bottom:7px; color:#24384d; font-size:.78rem; font-weight:700; }body.home .vpa-sales > span{ display:block; height:10px; max-width:100%; border-radius:999px; background:var(--vpa-green); box-shadow:0 0 0 10px #edf0ef; }body.home .vpa-project-card .vpa-button{ width:100%; }
body.home .vpa-destinations{ color:#fff; background:var(--vpa-blue); }body.home .vpa-destinations h2, body.home .vpa-destinations p{ color:#fff; }body.home .vpa-destinations .vpa-kicker{ color:#19a649; }body.home .vpa-split{ display:grid; grid-template-columns:1.1fr .9fr; align-items:end; gap:80px; }body.home .vpa-split > p, body.home .vpa-split > div > p{ max-width:500px; margin:0; color:inherit; font-size:1.12rem; }body.home .vpa-presence{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }body.home .vpa-presence article{ padding:30px; border-top:2px solid var(--vpa-green); background:var(--vpa-cloud); }body.home .vpa-presence h3{ margin-bottom:16px; font-size:1.4rem; }body.home .vpa-presence p{ margin:0; color:var(--vpa-muted); }body.home .vpa-experience{ color:#fff; background:var(--vpa-blue); }body.home .vpa-experience h2, body.home .vpa-experience .vpa-section-head p{ color:#fff; }body.home .vpa-experience .vpa-kicker{ color:#19a649; }body.home .vpa-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }body.home .vpa-stats article{ padding:12px 0; border-left:1px solid rgba(255,255,255,.32); text-align:center; }body.home .vpa-stats strong{ display:block; color:#fff; font-size:clamp(2rem,3vw,3.8rem); line-height:1; }body.home .vpa-stats span{ display:block; margin-top:12px; color:#d4dced; font-size:.9rem; }body.home .vpa-videos{ display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }body.home .vpa-video{ overflow:hidden; border-radius:12px; background:var(--vpa-cloud); aspect-ratio:9/16; }body.home .vpa-video iframe{ width:100%; height:100%; border:0; }body.home .vpa-portfolio{ padding:52px 0; }body.home .vpa-portfolio .vpa-section-head{ margin-bottom:20px; }body.home .vpa-logo-carousel{ display:flex; gap:0; overflow:auto; padding:6px 0; scrollbar-width:none; }body.home .vpa-logo-carousel::-webkit-scrollbar{ display:none; }body.home .vpa-logo-carousel a{ display:grid; min-width:190px; min-height:68px; place-items:center; padding:12px; color:#7d8794; font-size:.82rem; font-weight:700; text-align:center; text-decoration:none; text-transform:uppercase; }body.home .vpa-logo-carousel a:hover{ color:var(--vpa-blue); }body.home .vpa-partnership{ color:#fff; background:#263444; }body.home .vpa-partnership h2, body.home .vpa-partnership p{ color:#fff; }body.home .vpa-partnership .vpa-kicker{ color:#19a649; }body.home .vpa-partnership .vpa-button{ margin-top:28px; }
.site-footer { padding:70px 0 0; color:#bdc6d4; background:#101927; }.site-footer__grid { display:grid; grid-template-columns:1.3fr 1fr 1.15fr; gap:56px; }.site-footer__heading { margin-bottom:18px; color:#97a3b4; font-family:"DM Sans",sans-serif; font-size:.76rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.site-footer p { max-width:360px; margin-bottom:18px; font-size:.88rem; }.site-footer .custom-logo { max-height:44px; filter:brightness(0) invert(1); }.footer-navigation ul { display:grid; gap:10px; }.footer-navigation a,.site-footer a { color:#e9edf3; font-size:.88rem; text-decoration:none; }.site-footer address { max-width:300px; font-size:.88rem; font-style:normal; }.site-footer__legal { padding:24px 0; margin-top:54px; border-top:1px solid rgba(255,255,255,.13); color:#788597; font-size:.75rem; }.site-footer__legal p { margin:0; }
@media (max-width:1000px) { .primary-navigation { display:none; }.primary-navigation.is-open { position:absolute; top:100%; left:0; display:block; width:100%; padding:18px 24px; background:var(--vpa-blue-dark); }.primary-navigation ul { flex-direction:column; align-items:stretch; gap:0; }.primary-navigation a { display:block; padding:12px 0; }.menu-toggle { display:block; }body.home .vpa-project-grid{ grid-template-columns:repeat(2,1fr); }body.home .vpa-videos{ grid-template-columns:repeat(3,1fr); }body.home .vpa-stats{ grid-template-columns:repeat(2,1fr); }.site-footer__grid { grid-template-columns:1fr 1fr; }.site-footer__grid > :first-child { grid-column:1/-1; } }
@media (max-width:680px) { .vpa-container { width:min(calc(100% - 32px),var(--vpa-container)); }body.home .vpa-section{ padding:70px 0; }.vpa-contact-strip__inner{ justify-content:center; gap:9px; min-height:38px; overflow:hidden; font-size:.67rem; white-space:nowrap; }.vpa-contact-strip__inner a:nth-of-type(2), .vpa-contact-strip__inner span:nth-of-type(2){ display:none; }.vpa-contact-strip__inner address{ overflow:hidden; text-overflow:ellipsis; }.site-header__inner { min-height:68px; }.site-branding__name { font-size:1.5rem; }body.home .vpa-hero{ min-height:660px; }body.home .vpa-hero__content{ padding-top:130px; }body.home .vpa-hero__content > p:not(.vpa-kicker){ font-size:1rem; }body.home .vpa-hero__controls{ right:16px; bottom:24px; }body.home .vpa-search-section{ margin-top:-24px; }body.home .vpa-search-form{ grid-template-columns:1fr; padding:12px; border-radius:12px; }body.home .vpa-search-form .vpa-button{ width:100%; }body.home .vpa-section-head{ align-items:start; flex-direction:column; margin-bottom:30px; }body.home .vpa-project-grid, body.home .vpa-presence, body.home .vpa-stats, body.home .vpa-videos, .site-footer__grid, body.home .vpa-split{ grid-template-columns:1fr; }body.home .vpa-project-card__image, body.home .vpa-project-card__image img{ min-height:240px; height:240px; }body.home .vpa-stats article{ border-left:0; border-bottom:1px solid rgba(255,255,255,.27); padding:22px 0; }body.home .vpa-logo-carousel a{ min-width:156px; min-height:60px; }body.home .vpa-portfolio{ padding:44px 0; }.site-footer__grid > :first-child { grid-column:auto; }.site-footer__grid { gap:30px; }.site-footer { padding-top:54px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; } }


/* Páginas internas: cabeçalho estável e independente do hero da Home. */
body:not(.home) .site-header { position:relative; color:var(--vpa-blue); background:#fff; box-shadow:0 1px 0 rgba(19,34,54,.12); }
body:not(.home) .vpa-contact-strip { border-bottom:1px solid var(--vpa-line); background:#f7f9fc; }
body:not(.home) .vpa-contact-strip a, body:not(.home) .site-branding__name, body:not(.home) .primary-navigation a { color:var(--vpa-blue); }
body:not(.home) .primary-navigation a:hover, body:not(.home) .primary-navigation .current-menu-item a { color:var(--vpa-green); }
body:not(.home) .menu-toggle { border-color:rgba(34,57,112,.45); }
body:not(.home) .menu-toggle span:not(.screen-reader-text) { background:var(--vpa-blue); }
body.single-vpa_empreendimento footer.site-footer { clear:both; width:100%; padding:70px 0 0 !important; background:#101927 !important; color:#bdc6d4 !important; }
body.single-vpa_empreendimento footer.site-footer .site-footer__heading { color:#97a3b4; }
body.single-vpa_empreendimento footer.site-footer a { color:#e9edf3 !important; }


/* Controles editáveis da Home. */
.vpa-contact-strip__inner { justify-content:flex-end; gap:0; }
.vpa-contact-item { display:flex; align-items:center; gap:9px; min-height:52px; padding:0 18px; color:inherit; text-decoration:none; }
.vpa-contact-item + .vpa-contact-item { border-left:1px solid rgba(255,255,255,.25); }
.vpa-contact-item__icon { display:grid; width:22px; height:22px; place-items:center; color:var(--vpa-green); }
.vpa-contact-item__icon svg, .vpa-stats i svg, .site-footer__socials svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.vpa-contact-item strong, .vpa-contact-item small { display:block; line-height:1.18; }
.vpa-contact-item strong { font-size:.7rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.vpa-contact-item small { margin-top:3px; font-size:.74rem; opacity:.82; }
body.home .vpa-hero__slide::before { position:absolute; inset:0; content:""; pointer-events:none; }
body.home .vpa-hero__slide--blue::before { background:linear-gradient(90deg,rgba(8,27,52,.78),rgba(8,27,52,.24)); }
body.home .vpa-hero__slide--black::before { background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.18)); }
body.home .vpa-hero__slide--none::before { display:none; }
body.home .vpa-hero__content { position:relative; z-index:1; }
body.home .vpa-hero__controls { bottom:88px; }
.vpa-destination-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:54px; }
.vpa-destination-card { position:relative; min-height:340px; display:flex; align-items:end; overflow:hidden; padding:26px; background:#284271 center/cover no-repeat; color:#fff; }
.vpa-destination-card::before { position:absolute; inset:0; background:linear-gradient(180deg,rgba(7,16,34,.04),rgba(7,16,34,.84)); content:""; }
.vpa-destination-card > div { position:relative; z-index:1; }
.vpa-destination-card p { margin:0 0 10px; color:var(--vpa-green) !important; font-size:.72rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.vpa-destination-card h3 { margin:0 0 10px; color:#fff; }
.vpa-destination-card span { display:block; margin-bottom:18px; color:rgba(255,255,255,.85); font-size:.9rem; }
.vpa-destination-card a { color:#fff; font-size:.82rem; font-weight:700; text-decoration:none; }
body.home .vpa-stats article { display:grid; justify-items:center; }
body.home .vpa-stats i { display:grid; width:46px; height:46px; place-items:center; margin-bottom:16px; color:#fff; font-style:normal; }
body.home .vpa-stats i svg { stroke-width:1.7; }
.site-footer__identity { padding-bottom:34px; border-bottom:1px solid rgba(255,255,255,.13); }
.site-footer__logo, .site-footer__logo-wrap .custom-logo { display:block; width:auto; max-width:210px; max-height:52px; filter:brightness(0) invert(1); }
.site-footer__grid { grid-template-columns:1.25fr repeat(3,1fr); gap:42px; padding-top:38px; }
.site-footer__contact { font-size:.88rem; line-height:1.65; }
.site-footer__contact address, .site-footer__contact a, .site-footer__contact p { display:block; margin:0 0 10px; color:#e9edf3; font-style:normal; text-decoration:none; }
.site-footer__contact p { color:#bdc6d4; }
.site-footer__column h2 { margin:0 0 17px; color:#97a3b4; font-family:"DM Sans",sans-serif; font-size:.76rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.site-footer__column ul { display:grid; gap:10px; padding:0; margin:0; list-style:none; }
.site-footer__column li, .site-footer__column a { color:#e9edf3; font-size:.88rem; text-decoration:none; }
.site-footer__bottom { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px 0; margin-top:50px; border-top:1px solid rgba(255,255,255,.13); color:#788597; font-size:.75rem; }
.site-footer__bottom p { margin:0; }

/* Mantém os títulos dos slides do banner da Home no mesmo tamanho do título institucional. */
body.home .vpa-hero h2{max-width:850px;margin-bottom:24px;color:#fff;font-size:clamp(2.8rem,5vw,5.8rem);}
.site-footer__socials { display:flex; align-items:center; gap:14px; }
.site-footer__socials a { display:grid; width:18px; height:18px; color:#788597 !important; }
.site-footer__socials a:hover { color:#e9edf3 !important; }

@media (max-width:1000px) {
	.vpa-contact-item { padding:0 12px; }
	.vpa-contact-item strong { font-size:.64rem; }
	.site-footer__grid { grid-template-columns:repeat(2,1fr); }
	.site-footer__contact { grid-column:1/-1; max-width:520px; }
	.vpa-destination-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:680px) {
	.vpa-contact-strip__inner { justify-content:center; }
	.vpa-contact-item { min-height:38px; padding:0 6px; }
	.vpa-contact-item--2 { display:none; }
	.vpa-contact-item--1 .vpa-contact-item__icon, .vpa-contact-item--3 .vpa-contact-item__icon, .vpa-contact-item strong { display:none; }
	.vpa-contact-item small { margin:0; font-size:.68rem; }
	.vpa-contact-item + .vpa-contact-item { border-left:1px solid rgba(255,255,255,.35); }
	body.home .vpa-hero__controls { bottom:76px; }
	.vpa-destination-grid, .site-footer__grid { grid-template-columns:1fr; }
	.vpa-destination-card { min-height:290px; }
	.site-footer__contact { grid-column:auto; }
	.site-footer__bottom { align-items:flex-start; flex-direction:column; gap:16px; margin-top:36px; }
}


/* Refinamentos da Home. */
body.home .vpa-contact-strip { border-bottom:0; }
body.home .vpa-contact-item, body.home .vpa-contact-strip a { color:#fff; }
body.home .vpa-contact-item + .vpa-contact-item { position:relative; border-left:0; }
body.home .vpa-contact-item + .vpa-contact-item::before { position:absolute; left:0; color:rgba(255,255,255,.72); content:"|"; }
body.home .vpa-contact-item__icon { color:#fff; }
.primary-navigation .vpa-client-portal { display:inline-flex; min-height:42px; align-items:center; padding:0 17px; border:1px solid rgba(255,255,255,.62); color:#fff !important; }
.primary-navigation .vpa-client-portal:hover { border-color:var(--vpa-green); background:var(--vpa-green); color:#fff !important; }
body:not(.home) .primary-navigation .vpa-client-portal { border-color:var(--vpa-blue); color:var(--vpa-blue) !important; }
body.home .vpa-destinations .vpa-kicker, body.home .vpa-experience .vpa-kicker, body.home .vpa-partnership .vpa-kicker { color:var(--vpa-green); }
body.home .vpa-destination-grid { margin-top:38px; }
body.home .vpa-destination-card { min-height:285px; padding:24px; }
body.home .vpa-destination-card > div { transform:translateY(-10px); }
body.home .vpa-destination-card a { display:inline-flex; min-height:44px; align-items:center; padding:0 20px; border-radius:999px; background:var(--vpa-green); color:#fff; }
body.home .vpa-videos-section { background:#f4f6fa; }
body.home .vpa-video-showcase { display:grid; grid-template-columns:minmax(280px,.78fr) minmax(0,1.5fr); min-height:430px; overflow:hidden; background:#fff; box-shadow:0 14px 36px rgba(20,40,88,.12); }
body.home .vpa-video-playlist { display:flex; min-height:0; flex-direction:column; border-right:1px solid var(--vpa-line); }
body.home .vpa-video-playlist h3 { margin:0; padding:22px; font-family:"DM Sans",Arial,sans-serif; font-size:1.05rem; letter-spacing:0; }
body.home .vpa-video-playlist > div { overflow:auto; }
body.home .vpa-video-playlist button { display:grid; width:100%; grid-template-columns:94px 1fr; gap:12px; align-items:center; padding:9px 18px; border:0; border-top:1px solid #edf0f4; background:#fff; color:var(--vpa-ink); text-align:left; cursor:pointer; }
body.home .vpa-video-playlist button.is-active { background:#f1f3f6; }
body.home .vpa-video-playlist img, body.home .vpa-video-fallback { display:block; width:94px; height:58px; object-fit:cover; background:linear-gradient(135deg,var(--vpa-blue),var(--vpa-green)); }
body.home .vpa-video-playlist button > span:last-child { overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.88rem; line-height:1.35; }
body.home .vpa-video-feature { position:relative; min-height:430px; background:#0d1f35; }
body.home .vpa-video-feature iframe { position:absolute; width:100%; height:100%; border:0; inset:0; }
body.home .vpa-portfolio { background:#fff; }
body.home .vpa-logo-carousel { gap:18px; }
body.home .vpa-logo-carousel a, body.home .vpa-logo-carousel > span { display:grid; min-width:176px; min-height:78px; place-items:center; padding:14px; }
body.home .vpa-logo-carousel img { width:auto; max-width:145px; max-height:52px; object-fit:contain; filter:grayscale(1); opacity:.76; transition:filter .2s ease,opacity .2s ease; }
body.home .vpa-logo-carousel a:hover img { filter:grayscale(0); opacity:1; }
body.home .vpa-partnership .vpa-split { align-items:center; }
body.home .vpa-partnership { background:linear-gradient(115deg,#1d2b3c,#263f57); }
body.home .vpa-partnership .vpa-button { margin-top:30px; }
body.home .vpa-section-head h2, body.home .vpa-destinations h2, body.home .vpa-partnership h2 { font-family:"Playfair Display",Georgia,serif; font-weight:600; line-height:1.1; letter-spacing:-.035em; }
@media (max-width:1000px) { body.home .vpa-video-showcase { grid-template-columns:1fr; } body.home .vpa-video-playlist { border-right:0; border-bottom:1px solid var(--vpa-line); } body.home .vpa-video-feature { min-height:360px; } }
@media (max-width:680px) { body.home .vpa-contact-item + .vpa-contact-item::before { color:rgba(255,255,255,.7); } body.home .vpa-video-feature { min-height:235px; } body.home .vpa-video-playlist button { grid-template-columns:78px 1fr; } body.home .vpa-video-playlist img, body.home .vpa-video-fallback { width:78px; height:49px; } }

body.home .vpa-stats i img { width:100%; height:100%; object-fit:contain; filter:brightness(0) invert(1); }

body:not(.home) .vpa-contact-strip { background:var(--vpa-blue); border-bottom:0; color:#fff; }
body:not(.home) .vpa-contact-strip a, body:not(.home) .vpa-contact-item { color:#fff; }
body:not(.home) .vpa-contact-item__icon { color:#fff; }
body:not(.home) .vpa-contact-item + .vpa-contact-item { border-left:0; }
body:not(.home) .vpa-contact-item + .vpa-contact-item::before { position:absolute; left:0; color:rgba(255,255,255,.72); content:"|"; }


/* Cards comerciais e Blog. */
body.home .vpa-project-grid { gap:24px; }
body.home .vpa-featured-card { overflow:hidden; border-radius:22px; background:#f1f2f4; box-shadow:0 12px 30px rgba(19,34,54,.1); }
body.home .vpa-featured-card__image { position:relative; display:flex; height:300px; align-items:end; overflow:hidden; background:#31445d; color:#fff; text-decoration:none; }
body.home .vpa-featured-card__image > img { position:absolute; width:100%; height:100%; object-fit:cover; inset:0; }
body.home .vpa-featured-card__overlay { position:absolute; inset:0; background:linear-gradient(180deg,rgba(6,15,28,.03),rgba(6,15,28,.76)); }
body.home .vpa-featured-card__content { position:relative; z-index:1; display:grid; gap:5px; width:100%; padding:26px; }
body.home .vpa-featured-card__content small { font-size:.72rem; font-weight:700; text-transform:uppercase; }
body.home .vpa-featured-card__content strong { font-family:"DM Sans",Arial,sans-serif; font-size:1.2rem; font-weight:600; }
body.home .vpa-featured-card__content em { font-size:.85rem; font-style:normal; font-weight:600; }
body.home .vpa-featured-card__sales { padding:14px 26px 10px; background:#fff; }
body.home .vpa-featured-card__sales span { display:block; margin-bottom:8px; font-size:.8rem; font-weight:700; }
body.home .vpa-featured-card__sales i { display:block; height:10px; overflow:hidden; border-radius:999px; background:#d7dbe1; }
body.home .vpa-featured-card__sales b { display:block; height:100%; border-radius:inherit; background:var(--vpa-green); }
body.home .vpa-featured-card__body { padding:12px 26px 26px; }
body.home .vpa-featured-card__body > p { display:-webkit-box; min-height:64px; overflow:hidden; margin:0 0 17px; color:#566477; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
body.home .vpa-featured-card__body ul { padding:0; margin:0 0 22px; list-style:none; border-top:1px solid #dfe3e8; }
body.home .vpa-featured-card__body li { display:flex; min-height:50px; align-items:center; gap:12px; border-bottom:1px solid #dfe3e8; font-size:.9rem; font-weight:600; }
body.home .vpa-featured-card__body li i { display:grid; width:21px; height:21px; flex:0 0 21px; color:#172534; }
body.home .vpa-featured-card__body li svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
body.home .vpa-featured-card .vpa-button { width:auto; min-width:142px; gap:10px; }
body.home .vpa-featured-card .vpa-button span { display:grid; width:21px; height:21px; place-items:center; border:1px solid rgba(255,255,255,.8); border-radius:50%; }
body.home .vpa-blog { background:#eef0f5; }
body.home .vpa-blog-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
body.home .vpa-blog-card__image { display:block; height:260px; overflow:hidden; border-radius:20px; background:#dce4df; }
body.home .vpa-blog-card__image img { width:100%; height:100%; object-fit:cover; transition:transform .25s ease; }
body.home .vpa-blog-card__image:hover img { transform:scale(1.04); }
body.home .vpa-blog-grid small { display:block; margin-top:18px; color:#7d8794; font-size:.72rem; text-transform:uppercase; }
body.home .vpa-blog-grid h3 { margin:8px 0 0; font-family:"DM Sans",Arial,sans-serif; font-size:1.18rem; letter-spacing:-.025em; }
body.home .vpa-blog-grid h3 a { text-decoration:none; }
@media (max-width:1000px) { body.home .vpa-blog-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:680px) { body.home .vpa-featured-card__image { height:270px; } body.home .vpa-blog-grid { grid-template-columns:1fr; } }


/* Ajustes finos de navegação e padronização editorial. */
.vpa-contact-item + .vpa-contact-item::before { font-size:.9rem; font-weight:300; line-height:1; transform:scaleY(1.32); }
.vpa-contact-item small { font-weight:400; }
.primary-navigation .vpa-client-portal { border-radius:999px; }
body.home .vpa-destinations .vpa-kicker,
body.home .vpa-partnership .vpa-kicker { font-family:"DM Sans",Arial,sans-serif; font-size:.74rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }

/* Ajustes dos cards de destaque e Blog. */
body.home .vpa-featured-card{display:flex;min-height:100%;flex-direction:column;background:#fff}body.home .vpa-featured-card__body{display:flex;flex:1;flex-direction:column}body.home .vpa-featured-card__body .vpa-button{margin-top:auto}body.home .vpa-featured-card__content small b{display:inline-flex;padding:7px 10px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(0,0,0,.4);font-family:"DM Sans",Arial,sans-serif;font-size:.68rem;font-weight:700}body.home .vpa-featured-card__body li i img,body.home .vpa-featured-card .vpa-button span img{width:100%;height:100%;object-fit:contain}body.home .vpa-featured-card .vpa-button span{width:20px;height:20px;border:0}body.home .vpa-featured-card .vpa-button span img{filter:brightness(0) invert(1)}body.home .vpa-blog-card__image{height:205px}

.vpa-contact-item__icon img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.site-footer__socials img{width:100%;height:100%;object-fit:contain;filter:invert(54%) sepia(9%) saturate(805%) hue-rotate(174deg) brightness(91%) contrast(84%)}.site-footer__socials a:hover img{filter:brightness(0) invert(1)}

/* Status comercial, seções e atendimento flutuante. */
body.home .vpa-featured-card__sales--neutral b{background:#9ba5b1}body.home .vpa-featured-card__sales--green b{background:#19a649}body.home .vpa-featured-card__sales--warm b{background:#df9b24}body.home .vpa-featured-card__sales--hot b{background:#d54d4d}
body.home .vpa-blog{background:#fff}body.home .vpa-portfolio{background:var(--vpa-cloud)}body.home .vpa-blog-card__image{width:100%;height:auto;aspect-ratio:436/267}
.vpa-floating-contact{position:fixed;z-index:90;right:24px;bottom:24px;display:grid;width:58px;height:58px;place-items:center;border:0;border-radius:50%;background:#19a649;box-shadow:0 12px 26px rgba(11,42,25,.28);cursor:pointer}.vpa-floating-contact img{width:27px;height:27px;filter:brightness(0) invert(1)}.vpa-floating-contact::before{position:absolute;inset:-7px;border:1px solid rgba(25,166,73,.45);border-radius:50%;content:"";animation:vpa-pulse 2s infinite}.vpa-contact-modal{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:24px}.vpa-contact-modal__backdrop{position:absolute;inset:0;background:rgba(11,25,45,.64)}.vpa-contact-modal__dialog{position:relative;z-index:1;width:min(100%,560px);max-height:85vh;overflow:auto;padding:38px;background:#fff;border-radius:20px;box-shadow:0 25px 70px rgba(11,25,45,.35)}.vpa-contact-modal__close{position:absolute;top:10px;right:14px;border:0;background:transparent;color:#223970;font-size:2rem;cursor:pointer}.vpa-modal-open{overflow:hidden}@keyframes vpa-pulse{0%,100%{opacity:0;transform:scale(.9)}45%{opacity:1;transform:scale(1.12)}}@media(max-width:680px){.vpa-floating-contact{right:16px;bottom:16px;width:54px;height:54px}}


/* Navegação institucional e carrossel do portfólio. */
@media (min-width:1001px){
	.site-header__inner{min-height:94px;}
	.primary-navigation{padding:18px 24px;background:rgba(0,0,0,.38);}
}
.custom-logo{max-height:72px;}
body.home .vpa-hero__content{padding-top:164px;}
body.single-vpa_empreendimento .site-header{position:absolute;color:#fff;background:transparent;box-shadow:none;}
body.single-vpa_empreendimento .vpa-contact-strip{border-bottom:1px solid rgba(255,255,255,.24);background:transparent;}
body.single-vpa_empreendimento .vpa-contact-strip a,
body.single-vpa_empreendimento .site-branding__name,
body.single-vpa_empreendimento .primary-navigation a{color:#fff;}
body.single-vpa_empreendimento .primary-navigation a:hover,
body.single-vpa_empreendimento .primary-navigation .current-menu-item a{color:var(--vpa-green);}
body.single-vpa_empreendimento .menu-toggle{border-color:rgba(255,255,255,.55);}
body.single-vpa_empreendimento .menu-toggle span:not(.screen-reader-text){background:#fff;}
body.home .vpa-experience .vpa-kicker{color:var(--vpa-green)!important;}
body.home .vpa-portfolio--compact{padding-block:34px;}
body.home .vpa-logo-carousel{overflow:hidden;will-change:scroll-position;}
body.home .vpa-logo-carousel a,
body.home .vpa-logo-carousel span{display:grid;min-width:210px;min-height:88px;place-items:center;padding:12px;color:#7d8794;font-size:.82rem;font-weight:700;text-align:center;text-decoration:none;text-transform:uppercase;}
body.home .vpa-logo-carousel img{width:auto;max-width:160px;max-height:72px;object-fit:contain;}
@media (max-width:1000px){
	.custom-logo{max-height:64px;}
	body.single-vpa_empreendimento .site-header{position:absolute;}
}
@media (max-width:680px){
	.custom-logo{max-height:56px;}
	body.home .vpa-hero__content{padding-top:146px;}
	body.home .vpa-logo-carousel a,
	body.home .vpa-logo-carousel span{min-width:168px;min-height:70px;}
	body.home .vpa-logo-carousel img{max-width:132px;max-height:54px;}
}

body.single-vpa_empreendimento .site-header.is-scrolled .vpa-contact-strip{display:none;}


/* Navegação integrada ao hero. */
.site-header{isolation:isolate;}
.site-header::after{position:absolute;z-index:0;top:0;right:0;left:0;height:270px;content:"";pointer-events:none;background:linear-gradient(180deg,rgba(7,16,30,.66) 0%,rgba(7,16,30,.42) 48%,rgba(7,16,30,0) 100%);}
.site-header > *{position:relative;z-index:1;}
.site-header.is-scrolled::after{display:none;}
@media (min-width:1001px){
	.primary-navigation{padding:0;background:transparent;}
	.primary-navigation ul{gap:clamp(22px,2.25vw,38px);}
}
body.single-vpa_empreendimento .site-header.is-scrolled{position:fixed;background:rgba(20,40,88,.98);box-shadow:0 12px 30px rgba(11,21,43,.18);}
body.single-vpa_empreendimento .site-header.is-scrolled .vpa-contact-strip{display:none;}
body:not(.home):not(.single-vpa_empreendimento) .site-header::after{display:none;}
@media (max-width:680px){
	.site-header::after{height:190px;background:linear-gradient(180deg,rgba(7,16,30,.7) 0%,rgba(7,16,30,0) 100%);}
}


/* Compensação do cabeçalho sobre os heros do plugin. */
.primary-navigation a.vpa-client-portal{padding:12px 18px!important;color:#fff!important;background:var(--vpa-green)!important;border:1px solid var(--vpa-green)!important;border-radius:999px;}
.primary-navigation a.vpa-client-portal:hover{color:#fff!important;background:#158b3d!important;border-color:#158b3d!important;}
@media (min-width:681px){
	body.single-vpa_empreendimento .vpa-hero__content{padding-top:200px!important;}
}
@media (max-width:680px){
	body.single-vpa_empreendimento .vpa-hero__content{padding-top:144px!important;}
}

body.home .site-header .primary-navigation a.vpa-client-portal,
body.single-vpa_empreendimento .site-header .primary-navigation a.vpa-client-portal{color:#fff!important;}


/* Separação consistente da faixa de contatos. */
.vpa-contact-item + .vpa-contact-item::before{content:none!important;}
.vpa-contact-strip{border-bottom:1px solid var(--vpa-line)!important;}
body.home .vpa-contact-strip,
body.single-vpa_empreendimento .vpa-contact-strip{border-bottom-color:rgba(255,255,255,.28)!important;}

@media (max-width:680px){
	.vpa-contact-strip{border-bottom:0!important;}
}


/* Rodapé VPA. */
.site-footer,
body.single-vpa_empreendimento footer.site-footer{background:#222!important;color:#fff!important;}
.site-footer__contact address,
.site-footer__contact a,
.site-footer__column li,
.site-footer__column a,
body.single-vpa_empreendimento footer.site-footer a{color:#fff!important;}
.site-footer__column h2,
.site-footer__contact p,
.site-footer__bottom,
.site-footer__socials a,
body.single-vpa_empreendimento footer.site-footer .site-footer__heading{color:#c6cbd0!important;}
.site-footer__identity,
.site-footer__bottom{border-color:rgba(198,203,208,.28)!important;}
body.home .vpa-portfolio--compact{padding-block:30px;}


/* Continuidade entre as informações legais e o rodapé. */
body.single-vpa_empreendimento .vpa-legal-notice::after{
	left:50%!important;
	right:auto!important;
	width:min(calc(100% - 48px),1280px)!important;
	transform:translateX(-50%);
	background:rgba(198,203,208,.28)!important;
}
.site-footer__socials{gap:16px;}
.site-footer__socials a{width:22px;height:22px;color:#bec2c8!important;}
.site-footer__socials img{filter:brightness(0) saturate(100%) invert(84%) sepia(7%) saturate(302%) hue-rotate(174deg) brightness(91%) contrast(92%)!important;}
.site-footer__socials a:hover{color:#fff!important;}
.site-footer__socials a:hover img{filter:brightness(0) invert(1)!important;}


/* Botão flutuante de atendimento da Home, igual ao componente público dos empreendimentos. */
.vpa-whatsapp-float { position: fixed; right: max(22px, env(safe-area-inset-right)); bottom: max(22px, env(safe-area-inset-bottom)); z-index: 999; display: grid; width: 72px; height: 72px; place-items: center; border: 0; border-radius: 50%; background: #25d366; color: #fff; box-shadow: 0 8px 28px rgba(0, 0, 0, 0.28); text-decoration: none; transition: transform 180ms ease, background-color 180ms ease, box-shadow 180ms ease; animation: vpa-whatsapp-pulse 2s infinite; }
.vpa-whatsapp-float::before,
.vpa-whatsapp-float::after { position: absolute; inset: -3px; border: 2px solid rgba(37, 211, 102, 0.52); border-radius: inherit; content: ""; animation: vpa-whatsapp-ring 2s infinite; }
.vpa-whatsapp-float::after { animation-delay: 0.65s; }
.vpa-whatsapp-float svg { width: 40px; height: 40px; }
.vpa-whatsapp-float:hover,
.vpa-whatsapp-float:focus-visible { color: #fff; background: #1fbd59; box-shadow: 0 10px 34px rgba(0, 0, 0, 0.34); transform: translateY(-3px) scale(1.04); }
.vpa-whatsapp-float:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
@keyframes vpa-whatsapp-pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.06); } }
@keyframes vpa-whatsapp-ring { 0% { opacity: 0.72; transform: scale(1); } 75%, 100% { opacity: 0; transform: scale(1.42); } }

body.vpa-modal-open { overflow: hidden; }
.vpa-whatsapp-modal[hidden] { display: none; }
.vpa-whatsapp-modal { position: fixed; inset: 0; z-index: 1100; display: grid; place-items: center; padding: 20px; }
.vpa-whatsapp-modal__backdrop { position: absolute; inset: 0; background: rgba(3, 23, 39, 0.78); backdrop-filter: blur(7px); }
.vpa-whatsapp-modal__dialog { position: relative; z-index: 1; width: min(100%, 460px); max-height: calc(100vh - 40px); overflow-y: auto; padding: 30px 34px 26px; border: 1px solid rgba(15, 51, 39, 0.1); border-radius: 18px; background: linear-gradient(180deg, #f2fbf6 0, #fff 145px); color: #10283a; box-shadow: 0 30px 90px rgba(0, 0, 0, 0.38); }
.vpa-whatsapp-modal__heading { display: flex; align-items: center; gap: 12px; padding-right: 36px; }
.vpa-whatsapp-modal__icon { display: grid; width: 40px; height: 40px; flex: 0 0 40px; place-items: center; border-radius: 50%; background: #25d366; color: #fff; box-shadow: 0 8px 24px rgba(37, 211, 102, 0.28); }
.vpa-whatsapp-modal__icon svg { width: 25px; height: 25px; }
.vpa-whatsapp-modal__dialog h2 { margin: 1px 0 0; color: #0c3327; font-size: 1.58rem; line-height: 1.08; white-space: nowrap; }
.vpa-whatsapp-modal__dialog > p:not(.vpa-whatsapp-modal__privacy) { margin: 15px 0 20px; color: #43574f; font-size: 0.92rem; line-height: 1.45; }
.vpa-whatsapp-modal__eyebrow { margin: 0; color: #128c4a; font-size: 0.69rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.vpa-whatsapp-modal__close { position: absolute; top: 14px; right: 14px; display: grid; width: 38px; height: 38px; place-items: center; border: 0; border-radius: 50%; background: rgba(16, 40, 58, 0.07); color: #10283a; font-size: 1.65rem; line-height: 1; cursor: pointer; transition: background 180ms ease, transform 180ms ease; }
.vpa-whatsapp-modal__close:hover { background: rgba(16, 40, 58, 0.13); transform: rotate(4deg); }
.vpa-whatsapp-modal__form .wpcf7-form { display: block; }
.vpa-whatsapp-modal__form .wpcf7-form > p { margin: 0; }
.vpa-whatsapp-modal__form .vpa-wrap { max-width: none !important; margin: 0 !important; padding: 0 !important; background: transparent !important; }
.vpa-whatsapp-modal__form .vpa-wrap p { display: grid !important; gap: 12px; margin: 0 !important; padding: 0 !important; }
.vpa-whatsapp-modal__form .vpa-wrap br { display: none; }
.vpa-whatsapp-modal__form label { display: block; color: #30463d; font-size: 0.84rem; font-weight: 700; }
.vpa-whatsapp-modal__form .wpcf7-form-control-wrap { display: block; margin: 0; }
.vpa-whatsapp-modal__form input:not([type="checkbox"]):not([type="radio"]),
.vpa-whatsapp-modal__form button,
.vpa-whatsapp-modal__form input[type="submit"] { width: 100%; min-height: 48px; box-sizing: border-box; }
.vpa-whatsapp-modal__form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]) { margin: 0 !important; padding: 0 15px; border: 1px solid #ccd9d2; border-radius: 10px; background: #fff; color: #10283a; font: inherit; box-shadow: 0 2px 8px rgba(16, 40, 58, 0.035); transition: border-color 180ms ease, box-shadow 180ms ease; }
.vpa-whatsapp-modal__form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):focus { border-color: #25a85d; outline: 0; box-shadow: 0 0 0 4px rgba(37, 211, 102, 0.13); }
.vpa-whatsapp-modal__form input[type="submit"],
.vpa-whatsapp-modal__form button[type="submit"] { min-height: 52px; margin: 4px 0 0 !important; border: 0; border-radius: 10px; background: #25d366; color: #fff; font-size: 1rem; font-weight: 800; cursor: pointer; box-shadow: 0 10px 24px rgba(37, 211, 102, 0.24); transition: background 180ms ease, box-shadow 180ms ease, transform 180ms ease; }
.vpa-whatsapp-modal__form input[type="submit"]:hover,
.vpa-whatsapp-modal__form button[type="submit"]:hover { background: #1fbd59; box-shadow: 0 13px 28px rgba(37, 211, 102, 0.3); transform: translateY(-1px); }
.vpa-whatsapp-modal__form .wpcf7-spinner { position: absolute; }
.vpa-whatsapp-modal__form .wpcf7-not-valid-tip { margin-top: 5px; font-size: 0.78rem; }
.vpa-whatsapp-modal__form .wpcf7-response-output { margin: 12px 0 0; border-radius: 8px; font-size: 0.85rem; }
.vpa-whatsapp-modal__form .wpcf7-form.init .wpcf7-response-output,
.vpa-whatsapp-modal__form .wpcf7-form.sent .wpcf7-response-output { display: none; }
.vpa-whatsapp-modal__privacy { display: flex; align-items: center; justify-content: center; gap: 7px; margin: 12px 0 0; color: #708078; font-size: 0.74rem; line-height: 1.35; text-align: center; }
.vpa-whatsapp-modal__privacy span { color: #128c4a; font-weight: 900; }


@media (max-width: 620px) {
	.vpa-whatsapp-float { right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); width: 66px; height: 66px; }
	.vpa-whatsapp-float svg { width: 36px; height: 36px; }
	.vpa-whatsapp-modal { align-items: end; padding: 12px; }
	.vpa-whatsapp-modal__dialog { width: 100%; max-height: calc(100dvh - 24px); padding: 24px 20px 20px; border-radius: 20px; }
	.vpa-whatsapp-modal__heading { display: block; padding-right: 0; }
	.vpa-whatsapp-modal__icon { display: none; }
	.vpa-whatsapp-modal__dialog h2 { font-size: 1.45rem; white-space: nowrap; }
}
@media (prefers-reduced-motion: reduce) { .vpa-whatsapp-float, .vpa-whatsapp-float::before, .vpa-whatsapp-float::after { animation:none; } }


/* Rodapé compacto: a marca integra a grade de conteúdo e elimina a faixa exclusiva superior. */
.site-footer{padding-top:48px!important;}
.site-footer__grid{grid-template-columns:minmax(170px,.95fr) minmax(220px,1.3fr) repeat(3,minmax(130px,.85fr))!important;align-items:center;gap:clamp(28px,3vw,46px)!important;padding-top:30px!important;border-top:1px solid rgba(198,203,208,.28)!important;}
.site-footer__identity{align-self:center;padding:0!important;border:0!important;}
.site-footer__logo,.site-footer__logo-wrap .custom-logo{max-width:220px!important;max-height:78px!important;}
.site-footer__bottom{margin-top:38px!important;}
@media (max-width:1000px){
	.site-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start;}
	.site-footer__identity,.site-footer__contact{grid-column:1/-1!important;}
	.site-footer__identity{margin-bottom:2px;}
}
@media (max-width:680px){
	.site-footer{padding-top:38px!important;}
	.site-footer__grid{grid-template-columns:1fr!important;gap:28px!important;padding-top:26px!important;}
	.site-footer__identity,.site-footer__contact{grid-column:auto!important;}
	.site-footer__logo,.site-footer__logo-wrap .custom-logo{max-width:185px!important;max-height:66px!important;}
	.site-footer__bottom{margin-top:30px!important;}
}


/* Empreendimentos: a linha do aviso legal substitui a linha superior do rodapé. */
body.single-vpa_empreendimento footer.site-footer{padding-top:0!important;}
body.single-vpa_empreendimento footer.site-footer .site-footer__grid{padding-top:26px!important;border-top:0!important;}
body.single-vpa_empreendimento footer.site-footer .site-footer__bottom{margin-top:34px!important;}
@media (max-width:680px){
	body.single-vpa_empreendimento footer.site-footer .site-footer__grid{padding-top:22px!important;}
}


/* Portfólio e parcerias: movimento contínuo e proporção vertical equilibrada. */
body.home .vpa-logo-carousel{scroll-behavior:auto!important;}
body.home .vpa-partnership{padding-bottom:104px!important;}


/* Arquivo de empreendimentos: catálogo institucional com a mesma ferramenta de busca da Home. */
.vpa-project-archive{background:#fff;}
.vpa-project-archive__intro{padding:150px 0 78px;color:#fff;background:linear-gradient(120deg,#142858 0%,#223970 58%,#1b5b6d 100%);}
.vpa-project-archive__intro .vpa-kicker{display:flex;align-items:center;gap:10px;margin-bottom:14px;color:#19a649;font-family:"DM Sans",Arial,sans-serif;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;}
.vpa-project-archive__intro .vpa-kicker::before{width:22px;height:2px;background:currentColor;content:"";}
.vpa-project-archive__intro h1{margin-bottom:16px;color:#fff;}
.vpa-project-archive__intro > .vpa-container > p:last-child{max-width:630px;margin:0;color:rgba(255,255,255,.82);font-size:1.06rem;}
.vpa-project-archive__search{position:relative;z-index:2;margin-top:-38px;}
.vpa-project-archive .vpa-search-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;padding:18px;background:#fff;border-radius:16px;box-shadow:0 16px 35px rgba(17,35,67,.15);}
.vpa-project-archive .vpa-search-form select{width:100%;min-height:50px;padding:0 38px 0 16px;color:var(--vpa-ink);background:#f5f6f8;border:1px solid #e7eaf0;border-radius:10px;}
.vpa-project-archive .vpa-button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:9px;padding:0 24px;border:0;border-radius:999px;color:#fff;font-size:.92rem;font-weight:700;text-decoration:none;transition:transform .2s ease,background .2s ease;}
.vpa-project-archive .vpa-button:hover{transform:translateY(-2px);}
.vpa-project-archive .vpa-button--green{background:var(--vpa-green);}
.vpa-project-archive .vpa-button--blue{background:var(--vpa-blue);}
.vpa-project-archive__results{padding:72px 0 104px;}
.vpa-project-archive__count{min-height:24px;margin:0 0 20px;color:var(--vpa-muted);font-size:.9rem;}
.vpa-project-archive__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px;}
.vpa-project-archive .vpa-featured-card{display:flex;min-height:100%;flex-direction:column;overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 10px 32px rgba(22,43,83,.1);}
.vpa-project-archive .vpa-featured-card__image{position:relative;display:block;min-height:280px;overflow:hidden;background:#d5dce5;text-decoration:none;}
.vpa-project-archive .vpa-featured-card__image>img{width:100%;height:280px;object-fit:cover;transition:transform .4s ease;}
.vpa-project-archive .vpa-featured-card:hover .vpa-featured-card__image>img{transform:scale(1.04);}
.vpa-project-archive .vpa-featured-card__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,18,31,.04),rgba(6,18,31,.78));}
.vpa-project-archive .vpa-featured-card__content{position:absolute;z-index:1;right:20px;bottom:19px;left:20px;color:#fff;}
.vpa-project-archive .vpa-featured-card__content small{display:block;margin-bottom:7px;}
.vpa-project-archive .vpa-featured-card__content small b{display:inline-flex;padding:7px 10px;border:1px solid rgba(255,255,255,.26);border-radius:999px;background:rgba(0,0,0,.4);font-family:"DM Sans",Arial,sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.02em;}
.vpa-project-archive .vpa-featured-card__content strong,.vpa-project-archive .vpa-featured-card__content em{display:block;}
.vpa-project-archive .vpa-featured-card__content strong{font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.65rem,2.2vw,2.15rem);font-weight:600;line-height:1.02;letter-spacing:-.035em;}
.vpa-project-archive .vpa-featured-card__content em{margin-top:8px;font-size:.76rem;font-style:normal;font-weight:700;letter-spacing:.06em;text-transform:uppercase;}
.vpa-project-archive .vpa-featured-card__sales{padding:15px 22px 4px;background:#fff;}
.vpa-project-archive .vpa-featured-card__sales>span{display:block;margin-bottom:8px;color:#465264;font-size:.78rem;font-weight:700;}
.vpa-project-archive .vpa-featured-card__sales i{display:block;height:9px;overflow:hidden;border-radius:999px;background:#e1e5ea;}
.vpa-project-archive .vpa-featured-card__sales b{display:block;height:100%;border-radius:inherit;background:#19a649;}
.vpa-project-archive .vpa-featured-card__sales--warm b{background:#d99a29;}.vpa-project-archive .vpa-featured-card__sales--hot b{background:#c94848;}.vpa-project-archive .vpa-featured-card__sales--neutral b{background:#aeb6c0;}
.vpa-project-archive .vpa-featured-card__body{display:flex;flex:1;flex-direction:column;padding:20px 22px 22px;}
.vpa-project-archive .vpa-featured-card__body>p{display:-webkit-box;min-height:4.65em;overflow:hidden;margin:0 0 17px;color:#5b6573;font-size:.9rem;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:3;}
.vpa-project-archive .vpa-featured-card__body ul{display:grid;gap:0;padding:0;margin:0 0 20px;list-style:none;}
.vpa-project-archive .vpa-featured-card__body li{display:flex;align-items:center;gap:10px;padding:11px 0;border-top:1px solid #e6eaf0;color:#263445;font-size:.86rem;font-weight:600;}
.vpa-project-archive .vpa-featured-card__body li i{display:grid;width:19px;height:19px;flex:0 0 19px;place-items:center;color:#223970;}.vpa-project-archive .vpa-featured-card__body li i img{width:100%;height:100%;object-fit:contain;}
.vpa-project-archive .vpa-featured-card__body .vpa-button{width:100%;margin-top:auto;}.vpa-project-archive .vpa-featured-card__body .vpa-button span{width:20px;height:20px;}.vpa-project-archive .vpa-featured-card__body .vpa-button span img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1);}
.vpa-project-archive__empty{max-width:560px;margin:44px auto;color:var(--vpa-muted);text-align:center;}
@media (max-width:1000px){.vpa-project-archive__grid{grid-template-columns:repeat(2,minmax(0,1fr));}.vpa-project-archive__intro{padding-top:130px;}}
@media (max-width:680px){.vpa-project-archive__intro{padding:116px 0 62px;}.vpa-project-archive__search{margin-top:-24px;}.vpa-project-archive .vpa-search-form{grid-template-columns:1fr;padding:12px;border-radius:12px;}.vpa-project-archive .vpa-search-form .vpa-button{width:100%;}.vpa-project-archive__results{padding:55px 0 72px;}.vpa-project-archive__grid{grid-template-columns:1fr;}.vpa-project-archive .vpa-featured-card__image,.vpa-project-archive .vpa-featured-card__image>img{min-height:250px;height:250px;}}


/* Catálogo: o mesmo card aprovado na Home, sem variação visual. */
.vpa-search-form button[type="submit"]{cursor:pointer;}
.vpa-project-archive .vpa-featured-card{display:flex;min-height:100%;flex-direction:column;overflow:hidden;border-radius:22px;background:#f1f2f4;box-shadow:0 12px 30px rgba(19,34,54,.1);}
.vpa-project-archive .vpa-featured-card__image{position:relative;display:flex;height:300px;align-items:end;overflow:hidden;background:#31445d;color:#fff;text-decoration:none;}
.vpa-project-archive .vpa-featured-card__image>img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0;transition:transform .4s ease;}
.vpa-project-archive .vpa-featured-card:hover .vpa-featured-card__image>img{transform:scale(1.04);}
.vpa-project-archive .vpa-featured-card__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,15,28,.03),rgba(6,15,28,.76));}
.vpa-project-archive .vpa-featured-card__content{position:relative;z-index:1;display:grid;gap:5px;width:100%;padding:26px;color:#fff;}
.vpa-project-archive .vpa-featured-card__content small{font-size:.72rem;font-weight:700;text-transform:uppercase;}
.vpa-project-archive .vpa-featured-card__content small b{display:inline-flex;padding:7px 10px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(0,0,0,.4);font-family:"DM Sans",Arial,sans-serif;font-size:.68rem;font-weight:700;}
.vpa-project-archive .vpa-featured-card__content strong{font-family:"DM Sans",Arial,sans-serif;font-size:1.2rem;font-weight:600;line-height:normal;letter-spacing:normal;}
.vpa-project-archive .vpa-featured-card__content em{font-size:.85rem;font-style:normal;font-weight:600;}
.vpa-project-archive .vpa-featured-card__sales{padding:14px 26px 10px;background:#fff;}
.vpa-project-archive .vpa-featured-card__sales span{display:block;margin-bottom:8px;font-size:.8rem;font-weight:700;}
.vpa-project-archive .vpa-featured-card__sales i{display:block;height:10px;overflow:hidden;border-radius:999px;background:#d7dbe1;}
.vpa-project-archive .vpa-featured-card__sales b{display:block;height:100%;border-radius:inherit;background:var(--vpa-green);}
.vpa-project-archive .vpa-featured-card__sales--warm b{background:#d89822;}
.vpa-project-archive .vpa-featured-card__sales--hot b{background:#c33a3a;}
.vpa-project-archive .vpa-featured-card__sales--neutral b{background:#9aa3af;}
.vpa-project-archive .vpa-featured-card__body{display:flex;flex:1;flex-direction:column;padding:12px 26px 26px;}
.vpa-project-archive .vpa-featured-card__body>p{display:-webkit-box;min-height:64px;overflow:hidden;margin:0 0 17px;color:#566477;-webkit-box-orient:vertical;-webkit-line-clamp:3;}
.vpa-project-archive .vpa-featured-card__body ul{padding:0;margin:0 0 22px;list-style:none;border-top:1px solid #dfe3e8;}
.vpa-project-archive .vpa-featured-card__body li{display:flex;min-height:50px;align-items:center;gap:12px;border-bottom:1px solid #dfe3e8;font-size:.9rem;font-weight:600;}
.vpa-project-archive .vpa-featured-card__body li i{display:grid;width:21px;height:21px;flex:0 0 21px;color:#172534;}
.vpa-project-archive .vpa-featured-card__body li i img{width:100%;height:100%;object-fit:contain;}
.vpa-project-archive .vpa-featured-card .vpa-button{width:auto;min-width:142px;gap:10px;margin-top:auto;}
.vpa-project-archive .vpa-featured-card .vpa-button span{display:grid;width:21px;height:21px;place-items:center;border:1px solid rgba(255,255,255,.8);border-radius:50%;}
.vpa-project-archive .vpa-featured-card .vpa-button span img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1);}
.vpa-project-archive__pagination{margin-top:42px;text-align:center;}
.vpa-project-archive__pagination .page-numbers{display:inline-flex;gap:8px;align-items:center;padding:0;list-style:none;}
.vpa-project-archive__pagination a,.vpa-project-archive__pagination span{display:grid;min-width:38px;height:38px;place-items:center;border-radius:50%;color:var(--vpa-blue);text-decoration:none;}
.vpa-project-archive__pagination .current{background:var(--vpa-blue);color:#fff;}
@media(max-width:760px){.vpa-project-archive .vpa-featured-card__image{height:270px;}.vpa-project-archive .vpa-featured-card__content{padding:22px;}}


/* Catálogo: mesma navegação e superfície de card da Home. */
body.post-type-archive-vpa_empreendimento .site-header{position:absolute;color:#fff;background:transparent;box-shadow:none;}
body.post-type-archive-vpa_empreendimento .vpa-contact-strip{border-bottom:1px solid rgba(255,255,255,.24);background:transparent;}
body.post-type-archive-vpa_empreendimento .vpa-contact-strip a,
body.post-type-archive-vpa_empreendimento .site-branding__name,
body.post-type-archive-vpa_empreendimento .primary-navigation a{color:#fff;}
body.post-type-archive-vpa_empreendimento .primary-navigation a:hover,
body.post-type-archive-vpa_empreendimento .primary-navigation .current-menu-item a{color:var(--vpa-green);}
body.post-type-archive-vpa_empreendimento .menu-toggle{border-color:rgba(255,255,255,.55);}
body.post-type-archive-vpa_empreendimento .menu-toggle span:not(.screen-reader-text){background:#fff;}
body.post-type-archive-vpa_empreendimento .site-header.is-scrolled{position:fixed;background:rgba(20,40,88,.98);box-shadow:0 12px 30px rgba(11,21,43,.18);}
body.post-type-archive-vpa_empreendimento .site-header.is-scrolled .vpa-contact-strip{display:none;}
.vpa-project-archive__intro{min-height:500px;padding:220px 0 132px;background-position:center;background-size:cover;}
.vpa-project-archive__search{margin-top:-32px;}
.vpa-project-archive .vpa-search-form{align-items:center;}
.vpa-project-archive .vpa-search-clear{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:0 12px;color:var(--vpa-blue);font-size:.86rem;font-weight:700;text-decoration:none;white-space:nowrap;}
.vpa-project-archive .vpa-search-clear:hover{text-decoration:underline;}
.vpa-project-archive .vpa-featured-card{background:#fff;}
.vpa-project-archive .vpa-featured-card__body{background:#fff;}
@media(max-width:1000px){body.post-type-archive-vpa_empreendimento .site-header{position:absolute;}.vpa-project-archive__intro{min-height:0;padding:170px 0 104px;}}
@media(max-width:760px){.vpa-project-archive__intro{padding:150px 0 92px;}.vpa-project-archive__search{margin-top:-22px;}.vpa-project-archive .vpa-search-clear{width:100%;padding:4px 0 0;}}


/* Ação secundária do catálogo. */
.vpa-project-archive__clear{display:flex;justify-content:center;margin-top:18px;}
.vpa-project-archive .vpa-search-clear{display:inline-flex;min-height:42px;align-items:center;justify-content:center;padding:0 22px;border:1px solid #d5dae1;border-radius:999px;background:#e9edf1;color:#4c5663;font-size:.86rem;font-weight:700;text-decoration:none;box-shadow:0 5px 14px rgba(20,40,88,.08);transition:background .2s ease,color .2s ease,transform .2s ease;}
.vpa-project-archive .vpa-search-clear:hover{background:#dce2e8;color:#223970;text-decoration:none;transform:translateY(-1px);}
@media(max-width:760px){.vpa-project-archive__clear{margin-top:14px;}.vpa-project-archive .vpa-search-clear{width:auto;padding:0 20px;}}


/* Componente institucional compartilhado: Home, catálogo e páginas internas. */
body.post-type-archive-vpa_empreendimento .site-header::after,
body.page-template-template-institutional .site-header::after{display:block;}
body.post-type-archive-vpa_empreendimento .site-header,
body.page-template-template-institutional .site-header{position:absolute;color:#fff;background:transparent;box-shadow:none;}
body.post-type-archive-vpa_empreendimento .vpa-contact-strip,
body.page-template-template-institutional .vpa-contact-strip{border-bottom-color:rgba(255,255,255,.28)!important;background:transparent;}
body.post-type-archive-vpa_empreendimento .vpa-contact-strip a,
body.post-type-archive-vpa_empreendimento .site-branding__name,
body.post-type-archive-vpa_empreendimento .primary-navigation a,
body.page-template-template-institutional .vpa-contact-strip a,
body.page-template-template-institutional .site-branding__name,
body.page-template-template-institutional .primary-navigation a{color:#fff!important;}
body.post-type-archive-vpa_empreendimento .site-header .primary-navigation a.vpa-client-portal,
body.page-template-template-institutional .site-header .primary-navigation a.vpa-client-portal{display:inline-flex;min-height:42px;align-items:center;padding:12px 18px!important;border:1px solid var(--vpa-green)!important;border-radius:999px;background:var(--vpa-green)!important;color:#fff!important;}
body.post-type-archive-vpa_empreendimento .site-header.is-scrolled,
body.page-template-template-institutional .site-header.is-scrolled{position:fixed;background:rgba(20,40,88,.98);box-shadow:0 12px 30px rgba(11,21,43,.18);}
body.post-type-archive-vpa_empreendimento .site-header.is-scrolled .vpa-contact-strip,
body.page-template-template-institutional .site-header.is-scrolled .vpa-contact-strip{display:none;}
.vpa-institutional-hero{display:flex;min-height:500px;align-items:end;padding:220px 0 118px;background:linear-gradient(120deg,#142858 0%,#223970 58%,#1b5b6d 100%);background-position:center;background-size:cover;color:#fff;}
.vpa-institutional-hero .vpa-kicker{display:flex;align-items:center;gap:10px;margin:0 0 14px;color:var(--vpa-green);font-family:"DM Sans",Arial,sans-serif;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;}
.vpa-institutional-hero .vpa-kicker::before{width:22px;height:2px;background:currentColor;content:"";}
.vpa-institutional-hero h1{max-width:780px;margin:0 0 16px;color:#fff;}
.vpa-institutional-hero p:last-child{max-width:780px;margin:0;color:rgba(255,255,255,.84);font-size:1.06rem;}
.vpa-institutional-page__content{padding:78px 0 104px;}
@media(max-width:1000px){.vpa-institutional-hero{min-height:0;padding:170px 0 96px;}}
@media(max-width:680px){.vpa-institutional-hero{padding:148px 0 78px;}.vpa-institutional-page__content{padding:50px 0 72px;}}


/* Hero do catálogo: imagem original, com proteção de leitura somente no cabeçalho. */
body.post-type-archive-vpa_empreendimento:not(.home):not(.single-vpa_empreendimento) .site-header::after{display:block!important;height:270px;background:linear-gradient(180deg,rgba(7,16,30,.66) 0%,rgba(7,16,30,.42) 48%,rgba(7,16,30,0) 100%);}


/* Camada escura do hero do catálogo, equivalente à Home e sem alteração cromática azul. */
.vpa-project-archive__intro{position:relative;isolation:isolate;}
.vpa-project-archive__intro::before{position:absolute;z-index:0;inset:0;content:"";background:rgba(7,16,30,.46);}
.vpa-project-archive__intro>.vpa-container{position:relative;z-index:1;}


/* Carrossel contínuo de marcas */
body.home .vpa-logo-carousel {
	overflow: hidden;
	padding: 6px 0;
}
body.home .vpa-logo-carousel__track {
	display: flex;
	gap: 18px;
	width: max-content;
	will-change: transform;
	animation: vpa-brand-marquee 30s linear infinite;
}
body.home .vpa-logo-carousel__group {
	display: flex;
	flex: 0 0 auto;
	gap: 18px;
}
@keyframes vpa-brand-marquee {
	from { transform: translate3d(0, 0, 0); }
	to { transform: translate3d(calc(-50% - 9px), 0, 0); }
}
@media (max-width: 720px) {
	body.home .vpa-logo-carousel__track,
	body.home .vpa-logo-carousel__group { gap: 14px; }
	@keyframes vpa-brand-marquee {
		from { transform: translate3d(0, 0, 0); }
		to { transform: translate3d(calc(-50% - 7px), 0, 0); }
	}
}

/* Refinamentos de ritmo e responsividade da Home */
body.home .vpa-button--subtle {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	padding: 0 22px;
	border: 0;
	border-radius: 999px;
	background: #e7ebf0;
	color: var(--vpa-blue);
	font-size: .84rem;
	font-weight: 700;
	text-decoration: none;
	transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
body.home .vpa-button--subtle:hover,
body.home .vpa-button--subtle:focus-visible {
	background: #d9e0e8;
	color: var(--vpa-blue-dark);
	transform: translateY(-1px);
}
body.home .vpa-destinations .vpa-split {
	grid-template-columns: minmax(0, 1.65fr) minmax(280px, .65fr);
	align-items: end;
	gap: 40px;
}
body.home .vpa-destinations .vpa-split > p {
	justify-self: start;
	max-width: 360px;
	text-align: left;
}
body.home .vpa-destinations h2,
body.home .vpa-experience h2 {
	white-space: nowrap;
}
body.home .vpa-experience h2 {
	max-width: none;
	font-size: clamp(2.3rem, 3.55vw, 4.1rem);
	letter-spacing: -.028em;
}
body.home .vpa-stats article:first-child {
	border-left: 0;
}

@media (max-width: 680px) {
	body.home .vpa-hero {
		min-height: 610px;
	}
	body.home .vpa-hero__content {
		padding-top: 88px;
	}
	body.home .vpa-destinations .vpa-split,
	body.home .vpa-partnership .vpa-split {
		grid-template-columns: 1fr;
		gap: 22px;
	}
	body.home .vpa-destinations .vpa-split > p {
		max-width: none;
	}
	body.home .vpa-destinations h2,
	body.home .vpa-experience h2 {
		white-space: normal;
	}
	body.home .vpa-experience h2 {
		font-size: clamp(2.2rem, 10vw, 3.15rem);
	}
	body.home .vpa-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0;
	}
	body.home .vpa-stats article {
		min-height: 178px;
		padding: 20px 12px;
		border-left: 1px solid rgba(255,255,255,.27);
		border-bottom: 1px solid rgba(255,255,255,.27);
	}
	body.home .vpa-stats article:nth-child(odd) {
		border-left: 0;
	}
	body.home .vpa-stats article:nth-last-child(-n+2) {
		border-bottom: 0;
	}
	body.home .vpa-stats i {
		width: 38px;
		height: 38px;
		margin-bottom: 12px;
	}
	body.home .vpa-stats strong {
		font-size: clamp(2rem, 10vw, 2.85rem);
	}
	body.home .vpa-stats span {
		margin-top: 8px;
		font-size: .8rem;
	}
	body.home .vpa-video-showcase {
		grid-template-columns: 1fr;
		grid-template-areas: "feature" "playlist";
		min-height: 0;
	}
	body.home .vpa-video-feature {
		grid-area: feature;
		min-height: 230px;
	}
	body.home .vpa-video-playlist {
		grid-area: playlist;
		border-top: 1px solid var(--vpa-line);
		border-right: 0;
	}
	body.home .vpa-video-playlist h3 {
		padding: 18px;
	}
	body.home .vpa-video-playlist > div {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	body.home .vpa-video-playlist button {
		grid-template-columns: 72px minmax(0, 1fr);
		gap: 9px;
		padding: 10px;
	}
	body.home .vpa-video-playlist img,
	body.home .vpa-video-fallback {
		width: 72px;
		height: 48px;
	}
	body.home .vpa-video-playlist button > span:last-child {
		font-size: .76rem;
	}
	.site-footer {
		padding-top: 38px;
	}
	.site-footer__grid {
		display: grid;
		grid-template-columns: .8fr 1.2fr;
		gap: 26px 18px;
		padding-top: 0;
	}
	.site-footer__identity {
		grid-column: 1;
		align-self: center;
		padding: 0;
		border: 0;
	}
	.site-footer__contact {
		grid-column: 2;
		font-size: .76rem;
		line-height: 1.5;
	}
	.site-footer__contact address,
	.site-footer__contact a,
	.site-footer__contact p {
		margin-bottom: 6px;
	}
	.site-footer__column {
		grid-column: auto;
		min-width: 0;
	}
	.site-footer__column h2 {
		margin-bottom: 10px;
		font-size: .62rem;
		letter-spacing: .08em;
	}
	.site-footer__column li,
	.site-footer__column a {
		font-size: .72rem;
		line-height: 1.35;
	}
	.site-footer__column ul {
		gap: 7px;
	}
	.site-footer__bottom {
		align-items: center;
		flex-direction: column;
		gap: 14px;
		margin-top: 30px;
		padding: 18px 0;
		text-align: center;
	}
}

/* Cabeçalho de Novos Destinos: texto de apoio sob o título */
body.home .vpa-destinations .vpa-split {
	grid-template-columns: minmax(0, 1fr);
	align-items: start;
	gap: 14px;
}
body.home .vpa-destinations .vpa-split > p {
	justify-self: start;
	max-width: 430px;
	text-align: left;
}

/* Mantém a frase institucional de Novos Destinos em uma linha no desktop */
body.home .vpa-destinations .vpa-split {
	gap: 10px;
}
body.home .vpa-destinations .vpa-split > p {
	max-width: none;
	white-space: nowrap;
}
@media (max-width: 680px) {
	body.home .vpa-destinations .vpa-split > p {
		white-space: normal;
	}
}

/* Padroniza a distância entre título e texto de apoio das seções */
body.home .vpa-destinations .vpa-split {
	gap: 0;
}
body.home .vpa-destinations .vpa-split h2 {
	margin-bottom: 10px;
}

/* Refinamento da navegação e hierarquia da Home no celular */
.vpa-mobile-section-cta { display: none; }
@media (max-width: 680px) {
	body.vpa-menu-open { overflow: hidden; }
	.menu-toggle {
		display: inline-flex;
		width: auto;
		min-width: 82px;
		align-items: center;
		justify-content: center;
		gap: 8px;
		padding: 0 14px;
		color: #fff;
		border-radius: 999px;
		font-family: "DM Sans", Arial, sans-serif;
		font-size: .72rem;
		font-weight: 700;
		letter-spacing: .08em;
		text-transform: uppercase;
	}
	.menu-toggle::before { content: "Menu"; }
	.site-header.menu-open .menu-toggle {
		position: fixed;
		top: 18px;
		right: 16px;
		z-index: 32;
		border-color: rgba(255,255,255,.55);
		background: rgba(255,255,255,.12);
	}
	.site-header.menu-open .menu-toggle::before { content: "Fechar"; }
	.site-header.menu-open .menu-toggle span:not(.screen-reader-text) { display: none; }
	.site-header.menu-open .menu-toggle::after {
		font-size: 1.4rem;
		font-weight: 400;
		line-height: 1;
		content: "×";
	}
	.site-header.menu-open .primary-navigation.is-open {
		position: fixed;
		inset: 0;
		z-index: 31;
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 100%;
		padding: 92px 32px 42px;
		background: linear-gradient(145deg, #0d2148 0%, #142858 58%, #223970 100%);
	}
	.site-header.menu-open .primary-navigation.is-open::before {
		margin-bottom: 24px;
		color: #7fe09c;
		font-family: "DM Sans", Arial, sans-serif;
		font-size: .72rem;
		font-weight: 700;
		letter-spacing: .14em;
		content: "NAVEGAÇÃO";
	}
	.site-header.menu-open .primary-navigation.is-open ul {
		width: min(100%, 360px);
	}
	.site-header.menu-open .primary-navigation.is-open li {
		width: 100%;
		border-bottom: 1px solid rgba(255,255,255,.17);
	}
	.site-header.menu-open .primary-navigation.is-open a {
		padding: 16px 0;
		font-size: .88rem;
		letter-spacing: .04em;
	}
	.site-header.menu-open .primary-navigation.is-open a.vpa-client-portal {
		width: 100%;
		min-height: 52px;
		justify-content: center;
		margin-top: 18px;
		padding: 0 18px !important;
		border: 0;
	}
	.site-header.menu-open .primary-navigation.is-open li:has(.vpa-client-portal) {
		border-bottom: 0;
	}
	body.home .vpa-section-head__cta { display: none; }
	body.home .vpa-mobile-section-cta {
		display: flex;
		width: min(100%, 260px);
		min-height: 50px;
		margin: 28px auto 0;
		font-size: .9rem;
	}
	body.home .vpa-stats strong {
		font-size: clamp(1.65rem, 8vw, 2.25rem);
		letter-spacing: -.05em;
		white-space: nowrap;
	}
	body.home .vpa-video-playlist > div {
		grid-template-columns: 1fr;
	}
	.site-footer__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 26px 10px;
		text-align: center;
	}
	.site-footer__identity,
	.site-footer__contact {
		grid-column: 1 / -1;
		justify-self: center;
		text-align: center;
	}
	.site-footer__contact address,
	.site-footer__contact a,
	.site-footer__contact p {
		margin-right: auto;
		margin-left: auto;
	}
	.site-footer__column {
		grid-column: span 1;
		text-align: center;
	}
	.site-footer__column ul {
		justify-items: center;
	}
}

/* Painel de navegação e rodapé compactos no mobile */
@media (max-width: 680px) {
	.menu-toggle span:not(.screen-reader-text) { display: none; }
	.menu-toggle::after {
		width: 16px;
		height: 12px;
		background: linear-gradient(#fff 0 0) 0 0 / 100% 2px no-repeat,
			linear-gradient(#fff 0 0) 0 50% / 100% 2px no-repeat,
			linear-gradient(#fff 0 0) 0 100% / 100% 2px no-repeat;
		content: "";
	}
	.site-header.menu-open .menu-toggle {
		position: relative;
		top: auto;
		right: auto;
		z-index: 32;
	}
	.site-header.menu-open .menu-toggle::after {
		width: auto;
		height: auto;
		background: none;
		font-size: 1.4rem;
		font-weight: 400;
		line-height: 1;
		content: "×";
	}
	.site-header.menu-open .primary-navigation.is-open {
		position: absolute;
		top: calc(100% + 8px);
		right: 16px;
		bottom: auto;
		left: 16px;
		z-index: 31;
		display: block;
		width: auto;
		max-height: calc(100dvh - 100px);
		padding: 24px;
		overflow-y: auto;
		border: 1px solid rgba(255,255,255,.14);
		border-radius: 18px;
		background: linear-gradient(145deg, #0d2148 0%, #142858 58%, #223970 100%);
		box-shadow: 0 18px 42px rgba(7,18,42,.34);
	}
	.site-header.menu-open .primary-navigation.is-open::before {
		display: block;
		margin-bottom: 16px;
	}
	.site-header.menu-open .primary-navigation.is-open ul { width: 100%; }
	.site-header.menu-open .primary-navigation.is-open a { padding: 13px 0; }
	.site-header.menu-open .primary-navigation.is-open a.vpa-client-portal {
		min-height: 48px;
		margin-top: 14px;
	}
	.site-footer__grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	.site-footer__column { display: none; }
	.site-footer__bottom { margin-top: 22px; }
}

/* Aproxima marca e controle de navegação no cabeçalho mobile */
@media (max-width: 680px) {
	.site-header__inner {
		justify-content: flex-start;
		gap: 16px;
	}
	.menu-toggle { margin-left: 0; }
}

/* Centraliza o conjunto de marca e menu no cabeçalho mobile */
@media (max-width: 680px) {
	.site-header__inner { justify-content: center; }
}

/* Empreendimentos: leitura e navegação interna no mobile */
@media (max-width: 620px) {
	body.single-vpa_empreendimento .vpa-empreendimento__overview {
		text-align: center;
	}
	body.single-vpa_empreendimento .vpa-commercial-status {
		justify-self: center;
	}
	body.single-vpa_empreendimento .vpa-empreendimento__dados > div {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	body.single-vpa_empreendimento .vpa-empreendimento__dados dt,
	body.single-vpa_empreendimento .vpa-empreendimento__dados dd {
		text-align: center;
	}
	body.single-vpa_empreendimento .vpa-quick-nav {
		overflow: visible;
	}
	body.single-vpa_empreendimento .vpa-quick-nav > div {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		width: 100%;
		min-width: 0;
		justify-content: stretch;
		gap: 2px;
		padding: 6px;
	}
	body.single-vpa_empreendimento .vpa-quick-nav a {
		min-height: 46px;
		justify-content: center;
		padding: 7px 4px;
		font-size: .62rem;
		line-height: 1.1;
		text-align: center;
		white-space: normal;
	}
	body.single-vpa_empreendimento .vpa-quick-nav a::after {
		right: 8px;
		bottom: 4px;
		left: 8px;
	}
	body.single-vpa_empreendimento .vpa-section--lead,
	body.single-vpa_empreendimento .vpa-lead-form__intro {
		text-align: center;
	}
	body.single-vpa_empreendimento .vpa-section--lead .vpa-section__heading::before {
		margin-inline: auto;
	}
	body.single-vpa_empreendimento .vpa-lead-form__intro > p {
		margin-right: auto;
		margin-left: auto;
	}
}

/* Empreendimentos: alinhamento editorial das seções no mobile */
@media (max-width: 620px) {
	body.single-vpa_empreendimento .vpa-hero__content,
	body.single-vpa_empreendimento .vpa-hero__content .vpa-hero__text {
		text-align: center;
	}
	body.single-vpa_empreendimento .vpa-hero__content .vpa-hero__button {
		justify-content: center;
	}
	body.single-vpa_empreendimento .vpa-section--gallery .vpa-section__heading,
	body.single-vpa_empreendimento .vpa-section--benefits .vpa-section__heading,
	body.single-vpa_empreendimento .vpa-section--implantation .vpa-section__heading,
	body.single-vpa_empreendimento .vpa-section--works .vpa-section__heading,
	body.single-vpa_empreendimento .vpa-section--videos .vpa-section__heading,
	body.single-vpa_empreendimento .vpa-section--location .vpa-section__heading,
	body.single-vpa_empreendimento .vpa-section--similar .vpa-section__heading,
	body.single-vpa_empreendimento .vpa-similar .vpa-section__heading {
		text-align: center;
	}
	body.single-vpa_empreendimento .vpa-section--gallery .vpa-section__heading::before,
	body.single-vpa_empreendimento .vpa-section--benefits .vpa-section__heading::before,
	body.single-vpa_empreendimento .vpa-section--implantation .vpa-section__heading::before,
	body.single-vpa_empreendimento .vpa-section--works .vpa-section__heading::before,
	body.single-vpa_empreendimento .vpa-section--videos .vpa-section__heading::before,
	body.single-vpa_empreendimento .vpa-section--location .vpa-section__heading::before,
	body.single-vpa_empreendimento .vpa-section--similar .vpa-section__heading::before,
	body.single-vpa_empreendimento .vpa-similar .vpa-section__heading::before {
		margin-inline: auto;
	}
	body.single-vpa_empreendimento .vpa-section--implantation .vpa-section__heading > p,
	body.single-vpa_empreendimento .vpa-section--works .vpa-section__heading > p,
	body.single-vpa_empreendimento .vpa-section--location .vpa-section__heading > p,
	body.single-vpa_empreendimento .vpa-section--similar .vpa-section__heading > p,
	body.single-vpa_empreendimento .vpa-similar .vpa-section__heading > p {
		margin-right: auto;
		margin-left: auto;
		text-align: center;
	}
	body.single-vpa_empreendimento .vpa-location__button {
		margin-right: auto;
		margin-left: auto;
	}
}

/* Complemento: localização e similares centralizados no mobile */
@media (max-width: 620px) {
	body.single-vpa_empreendimento .vpa-location__content {
		align-items: center;
		text-align: center;
	}
	body.single-vpa_empreendimento .vpa-location__content .vpa-section__heading::before {
		margin-inline: auto;
	}
	body.single-vpa_empreendimento .vpa-location__text {
		margin-right: auto;
		margin-left: auto;
		text-align: center;
	}
	body.single-vpa_empreendimento .vpa-similar__header {
		margin-right: auto;
		margin-left: auto;
		text-align: center;
	}
}

/* CTAs duplicados existem somente para a ordem mobile das seções */
body.home .vpa-mobile-section-cta { display: none !important; }
@media (max-width: 680px) {
	body.home .vpa-mobile-section-cta { display: flex !important; }
}

/* Home: composição centralizada exclusivamente no mobile */
@media (max-width: 680px) {
	body.home .vpa-hero__content {
		padding-top: 160px !important;
		padding-bottom: 128px;
		text-align: center;
	}
	body.home .vpa-hero__content > p:not(.vpa-kicker) {
		margin-right: auto;
		margin-left: auto;
	}
	body.home .vpa-hero__controls {
		right: 0;
		bottom: 28px;
		left: 0;
		justify-content: center;
	}
	body.home .vpa-projects-section .vpa-section-head,
	body.home .vpa-experience .vpa-section-head,
	body.home .vpa-videos-section .vpa-section-head,
	body.home .vpa-blog .vpa-section-head,
	body.home .vpa-section:has(.vpa-presence) .vpa-section-head {
		align-items: center;
		text-align: center;
	}
	body.home .vpa-projects-section .vpa-section-head > div,
	body.home .vpa-experience .vpa-section-head > div,
	body.home .vpa-videos-section .vpa-section-head > div,
	body.home .vpa-blog .vpa-section-head > div,
	body.home .vpa-section:has(.vpa-presence) .vpa-section-head > div {
		width: 100%;
	}
	body.home .vpa-projects-section .vpa-kicker,
	body.home .vpa-destinations .vpa-kicker,
	body.home .vpa-experience .vpa-kicker,
	body.home .vpa-videos-section .vpa-kicker,
	body.home .vpa-blog .vpa-kicker,
	body.home .vpa-partnership .vpa-kicker,
	body.home .vpa-section:has(.vpa-presence) .vpa-kicker {
		justify-content: center;
	}
	body.home .vpa-destinations .vpa-split,
	body.home .vpa-partnership .vpa-split {
		text-align: center;
	}
	body.home .vpa-destinations .vpa-split > p,
	body.home .vpa-partnership .vpa-split > p,
	body.home .vpa-partnership .vpa-split > div > p {
		margin-right: auto;
		margin-left: auto;
		text-align: center;
	}
	body.home .vpa-partnership .vpa-button {
		display: inline-flex;
		margin-right: auto;
		margin-left: auto;
	}
	body.home .vpa-blog-grid article,
	body.home .vpa-blog-grid h3,
	body.home .vpa-blog-grid small {
		text-align: center;
	}
	body.home .vpa-blog-grid small {
		display: block;
	}
	body.home .vpa-blog-card__image {
		margin-right: auto;
		margin-left: auto;
	}
}


/* Home e rodapé: acabamento exclusivo para celular */
@media (max-width: 680px) {
	/* Centraliza todos os subtítulos verdes e remove o traço decorativo. */
	body.home .vpa-kicker {
		justify-content: center;
		gap: 0;
	}
	body.home .vpa-kicker::before {
		display: none;
	}
	/* Afasta a navegação do carrossel da borda inferior da hero. */
	body.home .vpa-hero__controls {
		bottom: 56px;
	}
	/* Valoriza o telefone sem competir com as demais informações. */
	.site-footer__contact a[href^="tel:"] {
		display: inline-block;
		font-size: 1rem;
		font-weight: 800;
	}
}


/* Heros de Empreendimentos e páginas institucionais: composição centralizada no celular */
@media (max-width: 680px) {
	.vpa-project-archive__intro > .vpa-container,
	.vpa-institutional-hero > .vpa-container {
		text-align: center;
	}
	.vpa-project-archive__intro .vpa-kicker,
	.vpa-institutional-hero .vpa-kicker {
		justify-content: center;
		gap: 0;
	}
	.vpa-project-archive__intro .vpa-kicker::before,
	.vpa-institutional-hero .vpa-kicker::before {
		display: none;
	}
	.vpa-project-archive__intro h1,
	.vpa-institutional-hero h1,
	.vpa-project-archive__intro > .vpa-container > p:last-child,
	.vpa-institutional-hero p:last-child {
		margin-right: auto;
		margin-left: auto;
	}
}


/* Catálogo: resultado de busca centralizado somente no mobile */
@media (max-width: 680px) {
	.vpa-project-archive__count {
		text-align: center;
	}
}


/* Modelo institucional: opções por página para conteúdo em largura total ou junto à hero. */
.vpa-institutional-page--full-width .vpa-institutional-page__content-inner {
	width: 100%;
	max-width: none;
	padding-right: 0;
	padding-left: 0;
}
.vpa-institutional-page--flush-content .vpa-institutional-page__content {
	padding-top: 0;
}


/* Modelo institucional: hero com área editorial mais confortável e rodapé sem respiro opcional. */
.vpa-institutional-hero h1 {
	max-width: 1040px;
}
.vpa-institutional-page--flush-bottom .vpa-institutional-page__content {
	padding-bottom: 0;
}


/* Modelo Institucional VPA: o conteúdo termina diretamente no rodapé. */
.vpa-institutional-page .vpa-institutional-page__content {
	padding-bottom: 0;
}


/* Modelo Institucional VPA: interações do menu idênticas às da Home. */
body.page-template-template-institutional .site-header .primary-navigation a:hover,
body.page-template-template-institutional .site-header .primary-navigation .current-menu-item a {
	color: var(--vpa-green) !important;
}
body.page-template-template-institutional .site-header .primary-navigation a.vpa-client-portal:hover {
	color: #fff !important;
	background: #158b3d !important;
	border-color: #158b3d !important;
}


/* Modelo Institucional VPA: contraste do menu vem da camada escura, não do item ativo. */
body.page-template-template-institutional .site-header::after {
	display: block !important;
	height: 270px;
	background: linear-gradient(180deg, rgba(7,16,30,.66) 0%, rgba(7,16,30,.42) 48%, rgba(7,16,30,0) 100%);
}
body.page-template-template-institutional .site-header .primary-navigation .current-menu-item a {
	color: #fff !important;
}
body.page-template-template-institutional .site-header .primary-navigation .current-menu-item a:hover {
	color: var(--vpa-green) !important;
}
@media (max-width: 680px) {
	body.page-template-template-institutional .site-header::after {
		height: 190px;
		background: linear-gradient(180deg, rgba(7,16,30,.70) 0%, rgba(7,16,30,0) 100%);
	}
}


/* Camada de leitura: fora da Home, ela pertence somente à própria hero. */
body:not(.home) .site-header::after {
	display: none !important;
}


/* Hero institucional: contraste do menu equivalente ao da Home, contido na própria hero. */
.vpa-institutional-hero {
	position: relative;
	isolation: isolate;
}
.vpa-institutional-hero::after {
	position: absolute;
	z-index: 0;
	top: 0;
	right: 0;
	left: 0;
	height: 270px;
	content: "";
	pointer-events: none;
	background: linear-gradient(180deg, rgba(7,16,30,.66) 0%, rgba(7,16,30,.42) 48%, rgba(7,16,30,0) 100%);
}
.vpa-institutional-hero > .vpa-container {
	position: relative;
	z-index: 1;
}
@media (max-width: 680px) {
	.vpa-institutional-hero::after {
		height: 190px;
		background: linear-gradient(180deg, rgba(7,16,30,.70) 0%, rgba(7,16,30,0) 100%);
	}
}


/* Regra global de navegação: comportamento único em todo o site. */
.site-header .primary-navigation a:not(.vpa-client-portal):hover,
.site-header .primary-navigation .current-menu-item a:not(.vpa-client-portal):hover {
	color: var(--vpa-green) !important;
}
.site-header .primary-navigation a.vpa-client-portal:hover {
	color: #fff !important;
	background: #158b3d !important;
	border-color: #158b3d !important;
}


/* Portal do Cliente: o hover acompanha a prioridade dos cabeçalhos especiais. */
body.post-type-archive-vpa_empreendimento .site-header .primary-navigation a.vpa-client-portal:hover,
body.single-vpa_empreendimento .site-header .primary-navigation a.vpa-client-portal:hover,
body.page-template-template-institutional .site-header .primary-navigation a.vpa-client-portal:hover {
	color: #fff !important;
	background: #158b3d !important;
	border-color: #158b3d !important;
}



/* Índice editorial do Blog VPA */
.vpa-blog-index {
	background: #fff;
}
.vpa-blog-hero {
	padding: 104px 0 112px;
	color: #fff;
	background: linear-gradient(118deg, #102b62 0%, #263f7a 56%, #0d6a78 100%);
}
.vpa-blog-hero .vpa-kicker,
.vpa-blog-cta .vpa-kicker {
	color: var(--vpa-green);
}
.vpa-blog-hero h1 {
	max-width: 940px;
	margin: 18px 0 16px;
	color: #fff;
	font-size: clamp(2.8rem, 5vw, 5.2rem);
	line-height: .98;
}
.vpa-blog-hero > .vpa-container > p:last-child {
	max-width: 720px;
	margin: 0;
	font-size: 1.08rem;
	line-height: 1.6;
}
.vpa-blog-featured,
.vpa-blog-listing {
	padding: 82px 0;
}
.vpa-blog-listing {
	background: #f8fafc;
}
.vpa-blog-section-heading h2,
.vpa-blog-cta h2 {
	margin: 12px 0 0;
	color: var(--vpa-blue);
	font-size: clamp(2.15rem, 4vw, 3.7rem);
	line-height: 1.02;
}
.vpa-blog-featured__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.28fr) minmax(320px, .72fr);
	gap: 28px;
	margin-top: 42px;
}
.vpa-blog-featured__main,
.vpa-blog-card {
	overflow: hidden;
	background: #fff;
	border: 1px solid #e5e8ee;
	border-radius: 18px;
	box-shadow: 0 10px 28px rgba(8, 28, 62, .07);
}
.vpa-blog-featured__main {
	display: grid;
	grid-template-columns: 1.12fr .88fr;
}
.vpa-blog-featured__image,
.vpa-blog-card__media {
	display: block;
	min-height: 270px;
	background-color: #203c75;
	background-position: center;
	background-size: cover;
}
.vpa-blog-featured__image {
	min-height: 100%;
}
.vpa-blog-card__media--placeholder {
	display: grid;
	place-items: center;
	color: #fff;
	font-family: "Playfair Display", serif;
	font-size: 1.4rem;
}
.vpa-blog-featured__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	padding: 38px;
}
.vpa-blog-featured__content h3,
.vpa-blog-card h3 {
	margin: 9px 0 0;
	font-family: "DM Sans", sans-serif;
	font-size: clamp(1.28rem, 2vw, 1.75rem);
	line-height: 1.12;
}
.vpa-blog-featured__content h3 a,
.vpa-blog-card h3 a {
	color: var(--vpa-blue);
	text-decoration: none;
}
.vpa-blog-featured__content h3 a:hover,
.vpa-blog-card h3 a:hover {
	color: var(--vpa-green);
}
.vpa-blog-featured__content > p:not(.vpa-blog-card__category) {
	margin: 17px 0 22px;
	color: #53647e;
	line-height: 1.55;
}
.vpa-blog-card__category {
	margin: 0;
	color: var(--vpa-green);
	font-size: .69rem;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.35;
	text-transform: uppercase;
}
.vpa-blog-card__meta {
	display: block;
	margin: 18px 0 0;
	color: #6f7d91;
	font-size: .78rem;
	line-height: 1.4;
}
.vpa-blog-card__meta span,
.vpa-blog-card__meta b {
	margin: 0 5px;
	color: var(--vpa-green);
}
.vpa-blog-featured__side {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
}
.vpa-blog-card--compact {
	display: grid;
	grid-template-columns: 170px 1fr;
	min-height: 0;
}
.vpa-blog-card--compact .vpa-blog-card__media {
	min-height: 100%;
}
.vpa-blog-card__content {
	padding: 22px 24px 24px;
}
.vpa-blog-card--compact .vpa-blog-card__content {
	padding: 22px;
}
.vpa-blog-card--compact h3 {
	font-size: 1.16rem;
}
.vpa-blog-listing__toolbar {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 28px;
}
.vpa-blog-search {
	display: flex;
	flex: 0 1 380px;
	overflow: hidden;
	background: #fff;
	border: 1px solid #dfe5ed;
	border-radius: 12px;
}
.vpa-blog-search input {
	width: 100%;
	min-width: 0;
	padding: 13px 14px;
	color: var(--vpa-blue);
	border: 0;
	outline: 0;
	font: inherit;
}
.vpa-blog-search button {
	padding: 0 18px;
	color: #fff;
	border: 0;
	background: var(--vpa-green);
	font: 700 .8rem "DM Sans", sans-serif;
	cursor: pointer;
}
.vpa-blog-search button:hover {
	background: #158b3d;
}
.vpa-blog-categories {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 36px 0;
}
.vpa-blog-categories a {
	padding: 10px 15px;
	color: var(--vpa-blue);
	border: 1px solid #dfe5ed;
	border-radius: 999px;
	background: #fff;
	font-size: .8rem;
	font-weight: 700;
	text-decoration: none;
	transition: .2s ease;
}
.vpa-blog-categories a:hover,
.vpa-blog-categories a.is-active {
	color: #fff;
	border-color: var(--vpa-blue);
	background: var(--vpa-blue);
}
.vpa-blog-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px;
}
.vpa-blog-grid .vpa-blog-card__media {
	min-height: 220px;
}
.vpa-blog-pagination {
	margin-top: 45px;
}
.vpa-blog-pagination .page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.vpa-blog-pagination a,
.vpa-blog-pagination span {
	display: grid;
	min-width: 38px;
	height: 38px;
	padding: 0 10px;
	place-items: center;
	color: var(--vpa-blue);
	border-radius: 50%;
	background: #e6ebf2;
	font-size: .8rem;
	font-weight: 700;
	text-decoration: none;
}
.vpa-blog-pagination .current,
.vpa-blog-pagination a:hover {
	color: #fff;
	background: var(--vpa-green);
}
.vpa-blog-empty {
	padding: 54px 24px;
	text-align: center;
	border: 1px solid #e3e8ef;
	border-radius: 16px;
	background: #fff;
}
.vpa-blog-empty h3 {
	margin: 0;
	color: var(--vpa-blue);
	font-size: 1.45rem;
}
.vpa-blog-empty p {
	margin: 10px 0 23px;
	color: #586981;
}
.vpa-blog-cta {
	padding: 92px 0;
	text-align: center;
	color: #fff;
	background: #13294e;
}
.vpa-blog-cta .vpa-kicker {
	justify-content: center;
}
.vpa-blog-cta .vpa-kicker::before {
	display: none;
}
.vpa-blog-cta h2 {
	max-width: 760px;
	margin: 14px auto 30px;
	color: #fff;
}
.vpa-blog-cta .vpa-button {
	min-width: 240px;
}

@media (max-width: 900px) {
	.vpa-blog-featured__grid {
		grid-template-columns: 1fr;
	}
	.vpa-blog-featured__side {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.vpa-blog-card--compact {
		grid-template-columns: 1fr;
	}
	.vpa-blog-card--compact .vpa-blog-card__media {
		min-height: 220px;
	}
	.vpa-blog-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 680px) {
	.vpa-blog-hero,
	.vpa-blog-featured,
	.vpa-blog-listing,
	.vpa-blog-cta {
		padding-top: 62px;
		padding-bottom: 62px;
	}
	.vpa-blog-hero > .vpa-container,
	.vpa-blog-section-heading,
	.vpa-blog-cta {
		text-align: center;
	}
	.vpa-blog-hero .vpa-kicker,
	.vpa-blog-section-heading .vpa-kicker {
		justify-content: center;
		gap: 0;
	}
	.vpa-blog-hero .vpa-kicker::before,
	.vpa-blog-section-heading .vpa-kicker::before {
		display: none;
	}
	.vpa-blog-hero h1 {
		margin-top: 13px;
		font-size: clamp(2.45rem, 12vw, 3.25rem);
	}
	.vpa-blog-hero > .vpa-container > p:last-child {
		margin-right: auto;
		margin-left: auto;
		font-size: 1rem;
	}
	.vpa-blog-featured__grid {
		margin-top: 30px;
	}
	.vpa-blog-featured__main {
		grid-template-columns: 1fr;
		text-align: left;
	}
	.vpa-blog-featured__image {
		min-height: 242px;
	}
	.vpa-blog-featured__content {
		padding: 27px 23px;
	}
	.vpa-blog-featured__side,
	.vpa-blog-grid {
		grid-template-columns: 1fr;
	}
	.vpa-blog-card--compact {
		grid-template-columns: 130px 1fr;
		text-align: left;
	}
	.vpa-blog-card--compact .vpa-blog-card__media {
		min-height: 100%;
	}
	.vpa-blog-listing__toolbar {
		align-items: stretch;
		flex-direction: column;
		gap: 23px;
	}
	.vpa-blog-search {
		flex-basis: auto;
		width: 100%;
	}
	.vpa-blog-categories {
		flex-wrap: nowrap;
		overflow-x: auto;
		margin: 28px -20px 30px;
		padding: 0 20px 6px;
		white-space: nowrap;
	}
	.vpa-blog-categories a {
		flex: 0 0 auto;
	}
	.vpa-blog-grid .vpa-blog-card__media {
		min-height: 225px;
	}
	.vpa-blog-card__content {
		padding: 20px;
	}
	.vpa-blog-cta h2 {
		font-size: 2.15rem;
	}
}



/* Blog: navegação idêntica à Home e às páginas institucionais. */
body.vpa-blog-page .site-header {
	position: absolute;
	color: #fff;
	background: transparent;
	box-shadow: none;
}
body.vpa-blog-page .vpa-contact-strip {
	border-bottom-color: rgba(255,255,255,.28) !important;
	background: transparent;
}
body.vpa-blog-page .vpa-contact-strip a,
body.vpa-blog-page .site-branding__name,
body.vpa-blog-page .primary-navigation a {
	color: #fff !important;
}
body.vpa-blog-page .site-header .primary-navigation a.vpa-client-portal {
	display: inline-flex;
	min-height: 42px;
	align-items: center;
	padding: 12px 18px !important;
	color: #fff !important;
	border: 1px solid var(--vpa-green) !important;
	border-radius: 999px;
	background: var(--vpa-green) !important;
}
body.vpa-blog-page .site-header.is-scrolled {
	position: fixed;
	background: rgba(20,40,88,.98);
	box-shadow: 0 12px 30px rgba(11,21,43,.18);
}
body.vpa-blog-page .site-header.is-scrolled .vpa-contact-strip {
	display: none;
}
body.vpa-blog-page .site-header .primary-navigation a:hover {
	color: var(--vpa-green) !important;
}
body.vpa-blog-page .site-header .primary-navigation a.vpa-client-portal:hover {
	color: #fff !important;
	background: #158b3d !important;
	border-color: #158b3d !important;
}

/* Blog: mesma escala e largura editorial da hero institucional. */
.vpa-blog-hero {
	display: flex;
	min-height: 500px;
	align-items: end;
	padding: 220px 0 118px;
}
.vpa-blog-hero h1 {
	max-width: 780px;
	margin: 0 0 16px;
	font-size: inherit;
	line-height: inherit;
}
.vpa-blog-hero > .vpa-container > p:last-child {
	max-width: 630px;
	margin: 0;
	color: rgba(255,255,255,.84);
	font-size: 1.06rem;
	line-height: 1.6;
}
.vpa-blog-cta .vpa-button.vpa-button--green {
	display: inline-flex;
	min-height: 50px;
	align-items: center;
	justify-content: center;
	padding: 0 25px;
	color: #fff;
	border: 0;
	border-radius: 999px;
	background: var(--vpa-green);
	font-weight: 700;
	text-decoration: none;
}
.vpa-blog-cta .vpa-button.vpa-button--green:hover {
	background: #158b3d;
	transform: translateY(-2px);
}

@media (max-width: 1000px) {
	.vpa-blog-hero {
		min-height: 0;
		padding: 170px 0 96px;
	}
}
@media (max-width: 680px) {
	.vpa-blog-hero {
		padding: 148px 0 78px;
	}
}



/* Blog: tipografia da hero alinhada ao Modelo Institucional VPA. */
.vpa-blog-hero .vpa-kicker {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 14px;
	color: var(--vpa-green);
	font-family: "DM Sans", Arial, sans-serif;
	font-size: .74rem;
	font-weight: 700;
	letter-spacing: .12em;
	line-height: 1.2;
	text-transform: uppercase;
}
.vpa-blog-hero .vpa-kicker::before {
	width: 22px;
	height: 2px;
	content: "";
	background: currentColor;
}
.vpa-blog-hero h1 {
	max-width: 1040px;
	margin: 0 0 16px;
	font-size: clamp(2.8rem, 5vw, 5.8rem);
	line-height: 1.1;
}
.vpa-blog-hero > .vpa-container > p:last-child {
	max-width: 630px;
	margin: 0;
	font-size: 1.06rem;
	line-height: 1.55;
}
@media (max-width: 680px) {
	.vpa-blog-hero .vpa-kicker {
		justify-content: center;
		gap: 0;
	}
	.vpa-blog-hero .vpa-kicker::before {
		display: none;
	}
	.vpa-blog-hero h1,
	.vpa-blog-hero > .vpa-container > p:last-child {
		margin-right: auto;
		margin-left: auto;
	}
}



/* Blog: navegação anterior e próxima em formato de botão. */
.vpa-blog-pagination .page-numbers .prev,
.vpa-blog-pagination .page-numbers .next {
	width: auto;
	min-width: 0;
	padding: 0 18px;
	border-radius: 999px;
}



/* Leitura editorial dos artigos do Blog. */
body.single-post .site-header {
	position: absolute;
	color: #fff;
	background: transparent;
	box-shadow: none;
}
body.single-post .vpa-contact-strip {
	border-bottom-color: rgba(255,255,255,.28) !important;
	background: transparent;
}
body.single-post .vpa-contact-strip a,
body.single-post .site-branding__name,
body.single-post .primary-navigation a {
	color: #fff !important;
}
body.single-post .site-header .primary-navigation a.vpa-client-portal {
	display: inline-flex;
	min-height: 42px;
	align-items: center;
	padding: 12px 18px !important;
	color: #fff !important;
	border: 1px solid var(--vpa-green) !important;
	border-radius: 999px;
	background: var(--vpa-green) !important;
}
body.single-post .site-header.is-scrolled {
	position: fixed;
	background: rgba(20,40,88,.98);
	box-shadow: 0 12px 30px rgba(11,21,43,.18);
}
body.single-post .site-header.is-scrolled .vpa-contact-strip {
	display: none;
}
body.single-post .site-header .primary-navigation a:hover {
	color: var(--vpa-green) !important;
}
body.single-post .site-header .primary-navigation a.vpa-client-portal:hover {
	color: #fff !important;
	background: #158b3d !important;
	border-color: #158b3d !important;
}
.vpa-blog-article {
	background: #fff;
}
.vpa-blog-article__hero {
	min-height: 510px;
	padding: 204px 0 84px;
	color: #fff;
	background: linear-gradient(118deg, #102b62 0%, #263f7a 56%, #0d6a78 100%);
}
.vpa-blog-article__breadcrumb {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 40px;
	font-size: .78rem;
}
.vpa-blog-article__breadcrumb a {
	color: rgba(255,255,255,.8);
	text-decoration: none;
}
.vpa-blog-article__breadcrumb a:hover {
	color: #fff;
}
.vpa-blog-article__hero .vpa-kicker {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 14px;
	color: var(--vpa-green);
	font-family: "DM Sans", Arial, sans-serif;
	font-size: .74rem;
	font-weight: 700;
	letter-spacing: .12em;
	line-height: 1.2;
	text-transform: uppercase;
}
.vpa-blog-article__hero .vpa-kicker::before,
.vpa-blog-article__cta .vpa-kicker::before,
.vpa-blog-article__related .vpa-kicker::before {
	width: 22px;
	height: 2px;
	content: "";
	background: currentColor;
}
.vpa-blog-article__hero h1 {
	max-width: 1040px;
	margin: 0 0 18px;
	color: #fff;
	font-size: clamp(2.55rem, 4.6vw, 5.1rem);
	line-height: 1.06;
}
.vpa-blog-article__intro {
	max-width: 720px;
	margin: 0;
	color: rgba(255,255,255,.88);
	font-size: 1.1rem;
	line-height: 1.58;
}
.vpa-blog-article__meta {
	margin: 20px 0 0;
	color: rgba(255,255,255,.76);
	font-size: .82rem;
}
.vpa-blog-article__meta span {
	margin: 0 6px;
	color: var(--vpa-green);
}
.vpa-blog-article__cover {
	margin-top: 54px;
	margin-bottom: 0;
}
.vpa-blog-article__cover img {
	width: 100%;
	max-height: 650px;
	object-fit: cover;
	border-radius: 18px;
}
.vpa-blog-article__reading {
	padding: 72px 0 96px;
}
.vpa-blog-article__reading-grid {
	display: grid;
	grid-template-columns: 220px minmax(0, 760px);
	align-items: start;
	justify-content: center;
	gap: 64px;
}
.vpa-blog-article__aside {
	position: sticky;
	top: 132px;
	display: grid;
	gap: 24px;
}
.vpa-blog-toc {
	padding: 19px;
	border: 1px solid #e1e7ee;
	border-radius: 12px;
	background: #f8fafc;
}
.vpa-blog-toc strong {
	display: block;
	margin-bottom: 12px;
	color: var(--vpa-blue);
	font-size: .8rem;
}
.vpa-blog-toc ol {
	display: grid;
	gap: 9px;
	margin: 0;
	padding-left: 18px;
}
.vpa-blog-toc a,
.vpa-blog-article__back {
	color: #50617a;
	font-size: .78rem;
	line-height: 1.35;
	text-decoration: none;
}
.vpa-blog-toc a:hover,
.vpa-blog-article__back:hover {
	color: var(--vpa-green);
}
.vpa-blog-article__back {
	color: var(--vpa-blue);
	font-weight: 700;
}
.vpa-blog-article__content {
	color: #31415a;
	font-size: 1.08rem;
	line-height: 1.78;
}
.vpa-blog-article__content > * {
	max-width: 760px;
}
.vpa-blog-article__content p,
.vpa-blog-article__content ul,
.vpa-blog-article__content ol {
	margin-bottom: 1.45em;
}
.vpa-blog-article__content h2,
.vpa-blog-article__content h3 {
	margin: 1.65em 0 .55em;
	color: var(--vpa-blue);
	scroll-margin-top: 125px;
}
.vpa-blog-article__content h2 {
	font-size: clamp(1.85rem, 3vw, 2.7rem);
}
.vpa-blog-article__content h3 {
	font-family: "DM Sans", Arial, sans-serif;
	font-size: 1.35rem;
	letter-spacing: 0;
}
.vpa-blog-article__content a {
	color: var(--vpa-green);
	font-weight: 700;
}
.vpa-blog-article__content blockquote {
	margin: 2em 0;
	padding: 16px 22px;
	color: var(--vpa-blue);
	border-left: 3px solid var(--vpa-green);
	background: #f4f7fa;
	font-family: "Playfair Display", Georgia, serif;
	font-size: 1.3rem;
	line-height: 1.45;
}
.vpa-blog-article__content figure {
	margin: 2em 0;
}
.vpa-blog-article__content figcaption {
	margin-top: 8px;
	color: #66758b;
	font-size: .8rem;
	text-align: center;
}
.vpa-blog-article__cta {
	padding: 82px 0;
	color: #fff;
	text-align: center;
	background: #13294e;
}
.vpa-blog-article__cta .vpa-kicker,
.vpa-blog-article__related .vpa-kicker {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--vpa-green);
	font-family: "DM Sans", Arial, sans-serif;
	font-size: .74rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.vpa-blog-article__cta .vpa-kicker {
	justify-content: center;
	margin: 0;
}
.vpa-blog-article__cta h2 {
	max-width: 760px;
	margin: 14px auto 28px;
	color: #fff;
	font-size: clamp(2rem, 3.5vw, 3.45rem);
	line-height: 1.08;
}
.vpa-blog-article__cta .vpa-button {
	display: inline-flex;
	min-height: 50px;
	align-items: center;
	justify-content: center;
	padding: 0 25px;
	color: #fff;
	border-radius: 999px;
	background: var(--vpa-green);
	font-weight: 700;
	text-decoration: none;
}
.vpa-blog-article__cta .vpa-button:hover {
	background: #158b3d;
	transform: translateY(-2px);
}
.vpa-blog-article__related {
	padding: 86px 0;
	background: #f8fafc;
}
.vpa-blog-article__related .vpa-kicker {
	margin: 0 0 12px;
}
.vpa-blog-article__related h2 {
	margin: 0;
	color: var(--vpa-blue);
	font-size: clamp(2rem, 3.5vw, 3.5rem);
}
.vpa-blog-article__related .vpa-blog-grid {
	margin-top: 36px;
}
.vpa-blog-article__post-navigation {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	padding-top: 44px;
	padding-bottom: 44px;
}
.vpa-blog-article__post-navigation a {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 62px;
	padding: 15px 20px;
	color: var(--vpa-blue);
	border: 1px solid #e1e7ee;
	border-radius: 12px;
	font-size: .88rem;
	font-weight: 700;
	text-decoration: none;
}
.vpa-blog-article__post-navigation a:hover {
	color: var(--vpa-green);
	border-color: var(--vpa-green);
}
.vpa-blog-article__post-navigation > :last-child {
	justify-content: flex-end;
	text-align: right;
}
@media (max-width: 850px) {
	.vpa-blog-article__reading-grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}
	.vpa-blog-article__aside {
		position: static;
		grid-template-columns: 1fr auto;
		align-items: start;
	}
}
@media (max-width: 680px) {
	.vpa-blog-article__hero {
		min-height: 0;
		padding: 158px 0 62px;
		text-align: center;
	}
	.vpa-blog-article__breadcrumb,
	.vpa-blog-article__hero .vpa-kicker {
		justify-content: center;
	}
	.vpa-blog-article__hero .vpa-kicker {
		gap: 0;
	}
	.vpa-blog-article__hero .vpa-kicker::before {
		display: none;
	}
	.vpa-blog-article__hero h1 {
		font-size: clamp(2.25rem, 11vw, 3.1rem);
	}
	.vpa-blog-article__intro {
		margin-right: auto;
		margin-left: auto;
		font-size: 1rem;
	}
	.vpa-blog-article__cover {
		width: calc(100% - 40px);
		margin-top: 30px;
	}
	.vpa-blog-article__cover img {
		min-height: 230px;
		border-radius: 12px;
	}
	.vpa-blog-article__reading {
		padding: 48px 0 62px;
	}
	.vpa-blog-article__aside {
		grid-template-columns: 1fr;
	}
	.vpa-blog-article__content {
		font-size: 1rem;
		line-height: 1.72;
	}
	.vpa-blog-article__content h2 {
		font-size: 2rem;
	}
	.vpa-blog-article__cta,
	.vpa-blog-article__related {
		padding: 62px 0;
	}
	.vpa-blog-article__related .vpa-kicker {
		justify-content: center;
		gap: 0;
	}
	.vpa-blog-article__related .vpa-kicker::before {
		display: none;
	}
	.vpa-blog-article__related .vpa-blog-section-heading {
		text-align: center;
	}
	.vpa-blog-article__post-navigation {
		grid-template-columns: 1fr;
		padding-top: 30px;
		padding-bottom: 30px;
	}
	.vpa-blog-article__post-navigation > :last-child {
		justify-content: flex-start;
		text-align: left;
	}
}


/* Artigos do Blog: abertura mais objetiva, capa protegida e compartilhamento. */
.vpa-blog-article__hero {
	min-height: 430px;
	padding: 174px 0 58px;
}
.vpa-blog-article__hero h1 {
	max-width: 980px;
	font-size: clamp(2.4rem, 4.2vw, 4.7rem);
}
.vpa-blog-article__cover {
	width: min(calc(100% - 48px), 1020px);
}
.vpa-blog-article__cover img {
	height: auto;
	max-height: 480px;
	aspect-ratio: 2.15 / 1;
	object-fit: cover;
}
.vpa-blog-article__share {
	padding: 28px 0;
	border-top: 1px solid #e4e9ef;
	background: #fff;
}
.vpa-blog-article__share-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	max-width: 760px;
	margin: 0 auto;
}
.vpa-blog-article__share-inner > p {
	margin: 0;
	color: var(--vpa-blue);
	font-size: .9rem;
	font-weight: 700;
}
.vpa-blog-article__share-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
}
.vpa-blog-article__share-actions a,
.vpa-blog-article__share-actions button {
	display: inline-flex;
	min-height: 38px;
	align-items: center;
	justify-content: center;
	padding: 0 14px;
	color: var(--vpa-blue);
	border: 1px solid #dce4ed;
	border-radius: 999px;
	background: #fff;
	font: 700 .76rem "DM Sans", Arial, sans-serif;
	text-decoration: none;
	cursor: pointer;
	transition: .2s ease;
}
.vpa-blog-article__share-actions a:hover,
.vpa-blog-article__share-actions button:hover {
	color: #fff;
	border-color: var(--vpa-blue);
	background: var(--vpa-blue);
}
@media (max-width: 680px) {
	.vpa-blog-article__hero {
		padding: 144px 0 48px;
	}
	.vpa-blog-article__cover img {
		min-height: 210px;
		aspect-ratio: 1.65 / 1;
	}
	.vpa-blog-article__share-inner {
		align-items: stretch;
		flex-direction: column;
		text-align: center;
	}
	.vpa-blog-article__share-actions {
		justify-content: center;
	}
}


/* Artigos sem índice não reservam coluna lateral. */
.vpa-blog-article__reading-grid--without-toc {
	grid-template-columns: minmax(0, 760px);
}
.vpa-blog-article__back--inline {
	display: inline-block;
	margin: 0 0 26px;
}


/* Blog article return */
.vpa-blog-article__return {
	padding: 0 0 56px;
	text-align: center;
}

.vpa-blog-article__return-button {
	align-items: center;
	background: var(--vpa-blue);
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	font-size: 0.94rem;
	font-weight: 700;
	justify-content: center;
	min-height: 50px;
	padding: 0 27px;
	text-decoration: none;
	transition: background-color 180ms ease, transform 180ms ease;
}

.vpa-blog-article__return-button:hover,
.vpa-blog-article__return-button:focus-visible {
	background: var(--vpa-blue-dark);
	color: #fff;
	transform: translateY(-2px);
}

@media (max-width: 700px) {
	.vpa-blog-article__return {
		padding-bottom: 42px;
	}
}


/* Blog article hero alignment */
.single-post .vpa-blog-article__hero .vpa-container {
	text-align: center;
}

.single-post .vpa-blog-article__breadcrumb,
.single-post .vpa-blog-article__hero .vpa-kicker {
	justify-content: center;
}

.single-post .vpa-blog-article__hero h1 {
	margin-right: auto;
	margin-left: auto;
}


/* Blog article hero: category without decorative rule */
.single-post .vpa-blog-article__hero .vpa-kicker::before {
	display: none;
}


/* Blog index hero composition */
@media (min-width: 1100px) {
	.vpa-blog-hero > .vpa-container > p:last-child {
		max-width: none;
		white-space: nowrap;
	}
}

@media (max-width: 1099px) {
	.vpa-blog-hero__title-break {
		display: none;
	}
}


/* Institutional hero: keep supporting text aligned with the effective title width */
.vpa-institutional-hero p:last-child {
	max-width: 1040px;
}


/* Global hero typography and reading measure */
:root {
	--vpa-hero-content-max: 1040px;
}

body.home .vpa-hero h1,
body.home .vpa-hero__content > p:not(.vpa-kicker),
.vpa-institutional-hero h1,
.vpa-institutional-hero p:last-child {
	max-width: var(--vpa-hero-content-max);
}

body.home .vpa-hero h1,
.vpa-institutional-hero h1 {
	font-family: "Playfair Display", Georgia, "Times New Roman", serif;
}

body.home .vpa-hero__content > p:not(.vpa-kicker),
.vpa-institutional-hero p:last-child {
	font-family: "DM Sans", Arial, sans-serif;
}


/* Página 404 */
.vpa-404 { position: relative; overflow: hidden; isolation: isolate; background: linear-gradient(135deg, #f5f7fa 0%, #ffffff 52%, #eef3f8 100%); }
.vpa-404::before { position: absolute; z-index: -1; top: -210px; right: -125px; width: min(50vw, 680px); height: min(50vw, 680px); border: 1px solid rgba(34, 57, 112, 0.12); border-radius: 50%; box-shadow: 0 0 0 66px rgba(34, 57, 112, 0.045), 0 0 0 132px rgba(34, 57, 112, 0.025); content: ""; }
.vpa-404__inner { position: relative; display: flex; align-items: center; min-height: clamp(460px, 52vw, 610px); padding-block: clamp(78px, 11vw, 142px); }
.vpa-404__content { position: relative; max-width: 720px; }
.vpa-404__watermark { position: absolute; top: 50%; right: clamp(0px, 3vw, 54px); z-index: -1; color: rgba(34, 57, 112, 0.055); font-family: "Playfair Display", Georgia, serif; font-size: clamp(13rem, 31vw, 30rem); font-weight: 700; line-height: 0.7; letter-spacing: -0.1em; pointer-events: none; transform: translateY(-48%); }
.vpa-404__eyebrow { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 18px; color: #1ca74a; font-size: 0.78rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.vpa-404__eyebrow::before { width: 34px; height: 2px; background: currentColor; content: ""; }
.vpa-404__content h1 { max-width: 700px; margin: 0; color: #13213b; font-family: "Playfair Display", Georgia, serif; font-size: clamp(2.65rem, 5.5vw, 5.25rem); font-weight: 600; letter-spacing: -0.04em; line-height: 1.04; }
.vpa-404__text { max-width: 560px; margin: 26px 0 0; color: #526071; font-size: clamp(1rem, 1.5vw, 1.14rem); line-height: 1.7; }
.vpa-404__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 28px; margin-top: 36px; }
.vpa-404__primary { min-height: 52px; padding-inline: 28px; }
.vpa-404__secondary { color: #223970; font-size: 0.94rem; font-weight: 800; text-decoration: none; }
.vpa-404__secondary::after { margin-left: 8px; content: "→"; transition: transform 160ms ease; }
.vpa-404__secondary:hover::after, .vpa-404__secondary:focus-visible::after { display: inline-block; transform: translateX(4px); }
.vpa-404__links { display: flex; flex-wrap: wrap; gap: 7px 16px; margin: 45px 0 0; color: #748093; font-size: 0.86rem; }
.vpa-404__links span { color: #5b6778; }
.vpa-404__links a { color: #223970; font-weight: 700; text-decoration: none; }
.vpa-404__links a + a::before { margin-right: 16px; color: #bdc6d2; content: "•"; }

@media (max-width: 700px) {
	.vpa-404::before { top: -260px; right: -270px; width: 520px; height: 520px; }
	.vpa-404__inner { align-items: flex-start; min-height: 500px; padding-block: 74px 82px; }
	.vpa-404__watermark { top: 24px; right: -11px; font-size: 15rem; transform: none; }
	.vpa-404__content h1 { max-width: 450px; font-size: clamp(2.6rem, 12vw, 4.2rem); }
	.vpa-404__text { max-width: 430px; }
	.vpa-404__actions { align-items: flex-start; flex-direction: column; gap: 23px; margin-top: 31px; }
	.vpa-404__primary { width: 100%; justify-content: center; }
	.vpa-404__links { gap: 8px 13px; margin-top: 38px; line-height: 1.5; }
	.vpa-404__links span { width: 100%; }
	.vpa-404__links a + a::before { margin-right: 13px; }
}


/* A 404 usa a mesma navegação integrada da Home. */
body.error404 .site-header { position: absolute; color: #fff; background: transparent; box-shadow: none; }
body.error404 .site-header::after { display: block; }
body.error404 .vpa-contact-strip { border-bottom-color: rgba(255, 255, 255, 0.24); background: transparent; }
body.error404 .vpa-contact-strip a,
body.error404 .site-branding__name,
body.error404 .primary-navigation a { color: #fff; }
body.error404 .primary-navigation a:hover,
body.error404 .primary-navigation .current-menu-item a { color: var(--vpa-green); }
body.error404 .menu-toggle { border-color: rgba(255, 255, 255, 0.55); }
body.error404 .menu-toggle span:not(.screen-reader-text) { background: #fff; }

.vpa-404__primary { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 28px; border-radius: 999px; background: var(--vpa-green); color: #fff; font-size: 0.92rem; font-weight: 700; line-height: 1; text-decoration: none; transition: transform 180ms ease, background 180ms ease; }
.vpa-404__primary:hover,
.vpa-404__primary:focus-visible { background: #158b3d; color: #fff; transform: translateY(-2px); }


/* Fundo de transição da 404 para manter a navegação global legível. */
.vpa-404 { background: linear-gradient(180deg, #223970 0, #223970 82px, rgba(34, 57, 112, 0.78) 142px, rgba(226, 232, 242, 0.94) 255px, #f5f7fa 390px, #f5f7fa 100%); }


/* Respiro entre a navegação integrada e o conteúdo da 404. */
@media (min-width: 701px) {
	.vpa-404__inner { padding-top: clamp(178px, 15vw, 210px); padding-bottom: clamp(78px, 8vw, 118px); }
}


/* Composição centralizada da 404 em telas pequenas. */
@media (max-width: 700px) {
	.vpa-404__inner { align-items: center; min-height: 570px; padding-top: 150px; padding-bottom: 88px; text-align: center; }
	.vpa-404__content { display: flex; align-items: center; flex-direction: column; width: 100%; }
	.vpa-404__watermark { top: 105px; right: 50%; font-size: 13.5rem; transform: translateX(50%); }
	.vpa-404__eyebrow { justify-content: center; }
	.vpa-404__content h1,
	.vpa-404__text { text-align: center; }
	.vpa-404__actions { align-items: center; width: 100%; }
	.vpa-404__primary { width: min(100%, 320px); }
	.vpa-404__links { justify-content: center; width: 100%; }
}


/* Home mobile: quatro empreendimentos em destaque mantêm a navegação mais objetiva. */
@media (max-width: 680px) {
	body.home .vpa-project-grid > .vpa-featured-card:nth-child(n + 5) {
		display: none;
	}
}


/* Home: categorias dos artigos no mesmo padrão visual da página do Blog. */
body.home .vpa-blog-grid small {
	margin: 18px 0 0;
	color: var(--vpa-green);
	font-family: "DM Sans", Arial, sans-serif;
	font-size: .69rem;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.35;
	text-transform: uppercase;
}


/* Indicadores da Experiência VPA: ícone, número e legenda no mesmo eixo. */
body.home .vpa-experience .vpa-stats article {
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	text-align:center;
}
body.home .vpa-experience .vpa-stats i,
body.home .vpa-experience .vpa-stats strong,
body.home .vpa-experience .vpa-stats span {
	margin-inline:auto;
	text-align:center;
}

