/* Refinamento após auditoria: preservar a identidade, reduzir atrito e distração. */
.institutional-page header {padding: 24px max(48px, calc((100% - 1280px)/2));}
.header-contact .contact-label-desktop, .header-contact .contact-label-mobile {font-size: inherit; line-height: inherit; font-weight: inherit;}
.header-contact .contact-label-mobile {display: none;}
.hero-secondary {display: block; width: fit-content; max-width: 100%; padding: 12px 0; min-height: 48px; margin-top: 8px; font-size: 1.125rem; font-weight: 700; color: var(--navy); text-decoration: underline; text-underline-offset: 5px;}
.hero {padding-top: 64px; padding-bottom: 64px;}
.hero-visual {border-radius: 4px;}
.references {padding-top: 64px; padding-bottom: 64px;}
.client-logos {margin-top: 32px;}
.client-logo {padding-top: 28px; gap: 20px;}
.section-head > p {align-self: center;}
.additional-services {margin-top: 24px;}
.additional-services summary, .editorial-preview summary {width: fit-content; max-width: 100%; min-height: 56px; cursor: pointer; padding: 14px 22px; border: 2px solid var(--navy); border-radius: 8px; background: var(--white); color: var(--navy); font-size: 1.125rem; font-weight: 700;}
.additional-services summary:hover, .editorial-preview summary:hover {background: #e5ebef;}
.additional-services .services {margin-top: 24px;}
.portfolio-preparation {padding: 0; border: 0;}
.editorial-preview[open] summary {margin-bottom: 32px;}
.editorial-preview .testimonial-grid {margin-top: 12px;}
.testimonial-grid:empty {display: none;}
.testimonials {padding-top: 64px; padding-bottom: 64px;}
.editorial-notice {margin-bottom: 28px;}
.contact-section {background: #edf0f2;}
.contact-layout {display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0,1fr); gap: 72px; align-items: center;}
.contact-layout > div > p {max-width: 54ch;}
.contact-actions {padding-left: 40px; border-left: 1px solid #9babb7;}
.contact-actions > p {font-size: 1.125rem; margin: 20px 0 0;}
.contact-actions a:not(.button) {text-decoration: underline; text-underline-offset: 4px;}
.contact-channel {font-weight: 700;}
.demo-access {margin-top: 32px; border-top: 1px solid #87a0b3; padding-top: 24px; font-size: 1rem;}
.demo-access a {min-height: 48px; display: inline-flex; align-items: center; text-decoration: underline; text-underline-offset: 4px;}
.demo-page header nav {width: auto;}
@media(max-width:1100px){
  .institutional-page header {padding: 24px 32px;}
  .contact-layout {gap: 40px;}
  .articles {grid-template-columns: minmax(0,1fr); gap: 24px;}
}
@media(max-width:760px){
  .institutional-page header {display: flex; flex-wrap: wrap; padding: 16px 20px; gap: 12px 16px; align-items: center;}
  .institutional-page header > .brand {flex: 0 0 142px; max-width: 100%;}
  .institutional-page header nav {width: 100%; gap: 8px 24px; order: 3; font-size: 1.125rem;}
  .institutional-page header .site-logo {width: 142px;}
  .institutional-page header > .header-contact {flex: 0 1 auto; width: auto; gap: 12px; padding: 14px 16px;}
  .header-contact .contact-label-desktop {display: none;}
  .header-contact .contact-label-mobile {display: inline;}
  .institutional-page .prototype {padding: 8px 20px;}
  .hero {padding: 40px 0; gap: 32px;}
  .references, .testimonials {padding-top: 48px; padding-bottom: 48px;}
  .client-logos {margin-top: 24px; gap: 24px;}
  .client-logo {padding-top: 24px; gap: 16px;}
  .section-head > p {align-self: auto;}
  .contact-layout {grid-template-columns: minmax(0,1fr); gap: 32px;}
  .contact-actions {border-left: 0; border-top: 1px solid #9babb7; padding: 28px 0 0;}
}
@media(max-width:360px){
  .institutional-page header > .header-contact {width: fit-content;}
}
