.v-site-header{background:#1e4036;color:#fff;font-family:var(--v-font-body)}
.v-header-inner{display:flex;align-items:center;justify-content:space-between;gap:clamp(64px,7.5vw,110px);min-height:108px}
.v-brand{display:block;width:220px;flex-shrink:0;line-height:0}.v-brand img{display:block;width:100%;height:auto;object-fit:contain}
.v-navigation{display:flex;align-items:center;gap:26px;font:400 15px/1.5 var(--v-font-body);flex:1;justify-content:flex-start}
.v-navigation>a:not(.v-button){color:#fff;min-height:46px;display:inline-flex;align-items:center;white-space:nowrap;border-bottom:1px solid transparent}.v-navigation>a:hover,.v-navigation>a[aria-current=page]{border-bottom-color:#d3dfd5}
.v-nav-contact{background:transparent;color:#fff;border-color:#b4c6bc;font-size:13px;min-height:48px;padding:12px 20px;gap:12px;margin-left:auto;white-space:nowrap;border-radius:12px}.v-nav-contact:hover{background:#31594a;border-color:#fff}
.v-menu-button{border:1px solid #b4c6bc;min-width:96px;min-height:46px;padding:10px 13px;display:inline-flex;align-items:center;justify-content:center;gap:12px;background:transparent;border-radius:8px;font:600 13px var(--v-font-body);color:white}
.v-footer{margin-top:36px;padding-block:42px 0;background:#1e4036;color:white;font:400 13px/1.6 var(--v-font-body)}
.v-footer-grid{display:flex;align-items:center;gap:40px;padding-bottom:32px}.v-brand--footer{width:205px;margin-right:32px}.v-footer-links{display:flex;flex-wrap:wrap;gap:4px 24px;max-width:490px}.v-footer a{color:white}.v-footer-links a,.v-footer-social a{min-height:36px;display:inline-flex;align-items:center;font-size:12px}.v-footer-links a:hover,.v-footer-social a:hover{text-decoration:underline;text-underline-offset:5px}.v-footer-social{display:flex;gap:18px;flex-wrap:wrap;max-width:130px}.v-footer .v-nav-contact{font-size:12px}
.v-footer-bottom{border-top:1px solid #ffffff25;display:flex;justify-content:space-between;gap:24px;padding-block:22px;font-size:11px;color:#d2ddd5}.v-footer-bottom a{color:#d2ddd5;min-height:36px}
.v-site-header :focus-visible,.v-footer :focus-visible{outline-color:#fff}
@media(max-width:1200px){.v-header-inner{gap:40px}.v-brand{width:180px}.v-navigation{gap:18px;font-size:13px}.v-nav-contact{padding-inline:14px}.v-footer-grid{gap:24px}.v-brand--footer{margin-right:0;width:175px}.v-footer-links{max-width:400px;gap:4px 18px}}
@media(max-width:1100px){.v-header-inner{flex-wrap:wrap;min-height:88px;padding-block:16px;gap:16px}.v-brand{width:180px}.v-navigation{width:100%;flex:none;flex-direction:column;align-items:stretch;gap:0;padding-bottom:12px}.v-navigation>a:not(.v-button){min-height:52px;font-size:15px;border-bottom-color:#ffffff30}.v-nav-contact{margin:16px 0 0;align-self:flex-start}.v-footer-grid{flex-wrap:wrap;justify-content:space-between}.v-footer-links{max-width:60%}.v-footer-social{max-width:none}.v-footer .v-nav-contact{margin:0}.v-footer-bottom{flex-wrap:wrap;gap:10px}}
@media(min-width:1101px){.v-menu-button{display:none}}
@media(max-width:640px){.v-header-inner{min-height:82px}.v-brand{width:165px}.v-footer{padding-top:30px}.v-footer-grid{gap:24px}.v-footer-links{max-width:none;width:100%;order:2;gap:0 22px}.v-footer-links a,.v-footer-social a{min-height:44px}.v-footer-social{order:3}.v-footer .v-nav-contact{order:4}.v-footer-bottom{font-size:10px;padding-bottom:24px}.v-brand--footer{width:180px}}

.v-site-header .v-nav-contact,.v-footer .v-nav-contact{background:transparent;border:1px solid #b4c6bc;color:white;min-height:48px;font-size:13px;padding:12px 20px;border-radius:12px}.v-site-header .v-nav-contact:hover,.v-footer .v-nav-contact:hover{background:#31594a;border-color:white}

/* Espaço seguro para textos ampliados e menus sem JavaScript. */
.v-header-inner,.v-footer-grid,.v-footer-links,.v-navigation{min-width:0}
.v-navigation>a{overflow-wrap:anywhere}
.v-footer-grid{display:grid;grid-template-columns:205px minmax(0,1fr) 120px auto;gap:32px}
.v-brand--footer{margin-right:0}
.v-footer-links{max-width:none}
.v-footer .v-nav-contact{margin:0;justify-self:end}
.v-footer-social{max-width:none}
@media(max-width:1100px){
 .v-header-inner{gap:16px;justify-content:space-between}
 .v-menu-button{margin-left:auto}
 .v-navigation{align-items:stretch;justify-content:flex-start}
 .v-footer-grid{grid-template-columns:180px minmax(0,1fr);gap:24px 36px}
 .v-footer-links{max-width:none}
 .v-footer .v-nav-contact{justify-self:end;align-self:start}
}
@media(max-width:600px){
 .v-header-inner{min-height:82px}
 .v-brand{width:clamp(140px,43vw,165px)}
 .v-footer-grid{grid-template-columns:minmax(0,1fr);gap:20px}
 .v-brand--footer{width:180px}
 .v-footer-links,.v-footer-social,.v-footer .v-nav-contact{order:initial;justify-self:start}
 .v-footer-links{gap:0 20px}
 .v-footer-bottom{align-items:flex-start;flex-direction:column}
}

/* Redes sociais com nomes acessíveis e assinatura da agência. */
.v-footer-social{gap:12px;flex-wrap:nowrap}
.v-footer .v-footer-social a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;border:1px solid #ffffff50;border-radius:10px;flex-shrink:0}
.v-footer-social svg{display:block;flex-shrink:0}
.v-footer .v-footer-social a:hover{background:#31594a;border-color:#d2ddd5}
.v-footer-bottom{align-items:center;flex-wrap:wrap}
.v-footer .v-footer-credit{display:inline-flex;align-items:center;flex-wrap:wrap;gap:5px;min-height:44px;margin-left:auto;font-size:12px}
.v-footer-credit strong{font-weight:600;letter-spacing:.04em}
.v-footer-credit:hover strong{text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){.v-footer-bottom{align-items:flex-start}.v-footer .v-footer-credit{margin-left:0}}

/* Movimento discreto da marca, sem alterar o arquivo oficial do logotipo. */
.v-brand{position:relative;isolation:isolate;transform-origin:center;transition:transform 240ms ease}
.v-site-header .v-brand{animation:v-logo-enter 650ms cubic-bezier(.2,.65,.3,1) backwards}
.v-brand img{transition:filter 240ms ease,opacity 240ms ease}
.v-brand::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;background:linear-gradient(110deg,transparent 35%,#ffffffb3 48%,transparent 61%);background-size:300% 100%;background-position:100% 0;-webkit-mask:var(--v-logo-mask,url('../images/logo.png')) center/contain no-repeat;mask:var(--v-logo-mask,url('../images/logo.png')) center/contain no-repeat}
.v-brand:focus-visible{transform:translateY(-2px) scale(1.025)}
.v-brand:focus-visible::after{animation:v-logo-sheen 950ms ease both}
@media(hover:hover) and (pointer:fine){
 .v-brand:hover{transform:translateY(-2px) scale(1.025)}
 .v-brand:hover::after{animation:v-logo-sheen 950ms ease both}
}
@keyframes v-logo-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes v-logo-sheen{0%{opacity:0;background-position:100% 0}15%{opacity:.65}85%{opacity:.65}100%{opacity:0;background-position:0 0}}
@media(prefers-reduced-motion:reduce){.v-brand,.v-site-header .v-brand,.v-brand img,.v-brand::after{animation:none!important;transition:none!important}.v-brand:hover,.v-brand:focus-visible{transform:none}.v-brand::after{display:none}}

.v-footer-social:empty{display:none}.v-footer-grid>.v-nav-contact{grid-column:-2/-1}
