/*
Theme Name: Hospital Memorial de Pernambuco
Author: HMPE
Description: Tema clássico fiel ao modelo HTML do Hospital Memorial de Pernambuco.
Version: 1.0.11
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: hmpe
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
.hmpe-site { min-width: 1000px; }
[hidden] { display: none !important; }
.screen-reader-text { border: 0; clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; white-space: nowrap; }
.screen-reader-text:focus { clip-path: none; height: auto; margin: 0; width: auto; background: #fff; padding: 12px; z-index: 100; }
.hmpe-menu { list-style: none; margin: 0; padding: 0; }
.hmpe-main-menu { display: flex; align-items: center; gap: 2px; }
.hmpe-menu li { position: relative; }
.hmpe-main-menu a { display: block; text-decoration: none; color: #33415C; font-weight: 700; font-size: 15px; padding: 12px 10px; border-radius: 8px; white-space: nowrap; }
.hmpe-main-menu a:hover, .hmpe-main-menu a:focus-visible { background: #EEF3FB; color: #0D2168; }
.hmpe-main-menu .current-menu-item > a, .hmpe-main-menu .current-menu-ancestor > a { background: #EEF3FB; color: #0D2168; font-weight: 800; }
.hmpe-menu .sub-menu { list-style: none; margin: 0; padding: 8px; }
.hmpe-main-menu .sub-menu { visibility: hidden; opacity: 0; position: absolute; z-index: 80; top: 100%; left: 0; min-width: 200px; background: #fff; border: 1px solid #E3E9F2; border-radius: 10px; box-shadow: 0 8px 24px rgba(13,33,104,.08); }
.hmpe-main-menu li:hover > .sub-menu, .hmpe-main-menu li:focus-within > .sub-menu { visibility: visible; opacity: 1; }
.hmpe-main-menu .sub-menu .sub-menu { top: 0; left: 100%; }
.hmpe-footer-menu { display: flex; flex-direction: column; gap: 12px; }
.hmpe-footer-menu a { display: block; color: #C9D4F0; text-decoration: none; font-size: 15px; padding: 4px 0; }
.hmpe-footer-menu a:hover, .hmpe-footer-menu a:focus-visible { color: #fff; text-decoration: underline; }
.hmpe-specialty-card { text-decoration: none; box-sizing: border-box; }
.hmpe-card-image { display: block; width: 100%; object-fit: cover; }
.hmpe-photo-placeholder { background: repeating-linear-gradient(45deg,#EEF3FB,#EEF3FB 14px,#E3EAF7 14px,#E3EAF7 28px); display: flex; align-items: center; justify-content: center; }
.hmpe-photo-placeholder > span { font-family: monospace; font-size: 13px; color: #6B7A99; }
.hmpe-hero-photo { height: 380px; border-radius: 16px; width: 100%; object-fit: cover; }
.hmpe-team-photo { height: 320px; border-radius: 16px; width: 100%; object-fit: cover; }
.hmpe-pix-qr { width: 120px; height: 120px; flex: none; object-fit: contain; border: 1px solid #E3E9F2; border-radius: 10px; }
.hmpe-modal { padding: 0; border: 0; background: transparent; max-width: min(620px, calc(100vw - 48px)); width: 100%; max-height: 90vh; overflow: visible; }
.hmpe-modal::backdrop { background: rgba(13,33,104,.6); }
.hmpe-modal-content > div { box-sizing: border-box; }
.hmpe-modal .hmpe-card-image, .hmpe-modal .hmpe-photo-placeholder { border-radius: 18px 18px 0 0; }
.hmpe-modal .hmpe-photo-placeholder > span { background: #fff; padding: 8px 14px; border-radius: 8px; border: 1px solid #E3E9F2; }
.hmpe-modal-open { overflow: hidden; }
.hmpe-high-contrast { filter: invert(1) hue-rotate(180deg) contrast(1.05); }
.hmpe-high-contrast img { filter: invert(1) hue-rotate(180deg) grayscale(1); background-color: #fff; }
.hmpe-pagination { margin-top: 32px; }
.hmpe-pagination ul { display: flex; flex-wrap: wrap; gap: 10px; padding: 0; list-style: none; }
.hmpe-pagination a, .hmpe-pagination span { display: inline-flex; padding: 10px 16px; border: 1px solid #E3E9F2; border-radius: 8px; font-weight: 800; text-decoration: none; }
.hmpe-pagination .current { color: #fff; background: #1638A8; border-color: #1638A8; }
.hmpe-empty { grid-column: 1 / -1; color: #33415C; }
.hmpe-donation-tab, .hmpe-donation-chip { color: #33415C; border: 2px solid #E3E9F2; font-weight: 800; font-size: 15px; border-radius: 10px; cursor: pointer; font-family: inherit; }
.hmpe-donation-tab { background: #F5F8FC; padding: 12px 18px; }
.hmpe-donation-chip { background: #fff; padding: 13px 10px; text-align: center; }
.hmpe-donation-tab[aria-pressed="true"] { background: #1638A8; color: #fff; border-color: #1638A8; }
.hmpe-donation-chip[aria-pressed="true"] { background: #0D2168; color: #fff; border-color: #0D2168; }
[data-donation-panel]:not([hidden]) { display: contents; }
[data-donation-status] { color: #33415C; font-size: 15px; line-height: 1.6; }
.hmpe-entry { font-size: 17px; line-height: 1.75; color: #33415C; overflow-wrap: anywhere; }
.hmpe-entry > :first-child { margin-top: 0; }
.hmpe-entry > :last-child { margin-bottom: 0; }
.hmpe-entry img { max-width: 100%; height: auto; }
.hmpe-entry iframe { max-width: 100%; }
.hmpe-entry h2, .hmpe-entry h3 { color: #0D2168; }
.hmpe-container { max-width: 1184px; margin: 0 auto; padding: 64px 48px; }
.hmpe-page-extra { max-width: 1184px; margin: 0 auto; }
.hmpe-page-heading { background: #0D2168; color: #fff; }
.hmpe-page-heading > div { max-width: 1280px; margin: 0 auto; padding: 48px 48px 52px; display: flex; flex-direction: column; gap: 14px; }
.hmpe-page-heading h1 { margin: 0; font-size: 40px; font-weight: 900; }
.hmpe-page-heading a { color: #A9B8E6; }
/* Shared breadcrumbs for pages, publications, search and plugin pages. */
.hmpe-site nav[aria-label="Trilha de navegação"] { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; max-width: 100%; font-size: 14px; line-height: 1.6; text-align: left; }
.hmpe-site nav[aria-label="Trilha de navegação"] > a, .hmpe-site nav[aria-label="Trilha de navegação"] > span { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.hmpe-site nav[aria-label="Trilha de navegação"] > a { color: #A9B8E6; font-weight: 400; text-decoration: underline; text-underline-offset: 2px; }
.hmpe-site nav[aria-label="Trilha de navegação"] > span[aria-hidden="true"] { flex: none; color: #6B7CC0; }
.hmpe-site nav[aria-label="Trilha de navegação"] > span:not([aria-hidden="true"]) { color: #fff; font-weight: 700; }
.hmpe-site nav[aria-label="Trilha de navegação"] > a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; border-radius: 2px; }
.hmpe-page-heading h1 { overflow-wrap: anywhere; }
.hmpe-additional-contact { padding-bottom: 24px; display: flex; flex-wrap: wrap; gap: 18px; font-size: 15px; }
.hmpe-additional-contact a { color: #C9D4F0; }
.hmpe-search-form { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.hmpe-search-form input, .hmpe-search-form button { font: inherit; padding: 12px 16px; border: 1px solid #C6D2E4; border-radius: 10px; }
.hmpe-search-form button { background: #1638A8; color: #fff; cursor: pointer; }
.hmpe-search-bar { background: #F0F0F0; border-bottom: 1px solid #DCDCDC; }
.hmpe-search-bar-inner { box-sizing: border-box; max-width: 1280px; margin: 0 auto; padding: 8px 48px; display: flex; justify-content: flex-end; }
.hmpe-search-form-compact { box-sizing: border-box; width: 380px; max-width: 100%; flex-wrap: nowrap; gap: 0; }
.hmpe-search-form-compact input { box-sizing: border-box; flex: 1; width: 0; min-width: 0; min-height: 40px; padding: 8px 13px; border-color: #BFC6D0; border-radius: 7px 0 0 7px; background: #fff; color: #1B2437; font-size: 14px; }
.hmpe-search-form-compact button { flex: none; min-height: 40px; padding: 8px 18px; border-color: #1638A8; border-radius: 0 7px 7px 0; font-size: 14px; font-weight: 700; }
.hmpe-search-form-compact button:hover { background: #0D2168; border-color: #0D2168; }
.hmpe-search-form-compact input:focus-visible, .hmpe-search-form-compact button:focus-visible { outline: 2px solid #1638A8; outline-offset: 2px; position: relative; z-index: 1; }
@media (max-width: 999px) { .hmpe-search-bar-inner { padding-inline: 24px; } }
@media (max-width: 600px) { .hmpe-search-bar-inner { padding-inline: 18px; } .hmpe-search-form-compact { width: 100%; } .hmpe-search-form-compact input { font-size: 16px; } .hmpe-search-form-compact input, .hmpe-search-form-compact button { min-height: 44px; } }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignleft { float: left; margin-right: 24px; }
.alignright { float: right; margin-left: 24px; }
.wp-caption { max-width: 100%; }
.wp-caption-text, .gallery-caption { font-size: 14px; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; } }
/* The reference defines a 1000px minimum. Keep its desktop dimensions intact. */
@media (max-width: 999px) {
  .hmpe-page-heading > div { padding-inline: 24px; }
  .hmpe-site { min-width: 0; }
  .hmpe-site div, .hmpe-site section, .hmpe-site main, .hmpe-site article, .hmpe-site nav, .hmpe-site form, .hmpe-site input { min-width: 0; }
  .hmpe-site [style*="max-width: 1280px"] { padding-left: 24px !important; padding-right: 24px !important; }
  .hmpe-site [style*="grid-template-columns"] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .hmpe-site main[style*="grid-template-columns"], .hmpe-site section[aria-label="Destaque"] > div { grid-template-columns: 1fr !important; }
  .hmpe-site [role="region"] > div, .hmpe-site [role="region"] nav, .hmpe-site [role="region"] > div > div { flex-wrap: wrap; gap: 12px !important; }
  .hmpe-site header > div { justify-content: center !important; }
  #menu-principal { width: 100%; }
  .hmpe-main-menu { flex-wrap: wrap; justify-content: center; width: 100%; }
  .hmpe-site section[aria-label="Boletim informativo"] > div, .hmpe-site section[aria-label="Trabalhe conosco"] > div { flex-direction: column; align-items: stretch !important; }
  .hmpe-site h1 { font-size: 38px !important; }
  .hmpe-site main > nav[style*="sticky"] { position: static !important; }
  .hmpe-hero-photo { max-width: 100%; }
}
@media (max-width: 600px) {
  .hmpe-page-heading > div { padding-inline: 18px; }
  .hmpe-site [style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
  .hmpe-site [aria-label="Doe agora"] [style*="grid-template-columns"], .hmpe-site #doar [style*="repeat(4"] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .hmpe-site [style*="max-width: 1280px"] { padding-left: 18px !important; padding-right: 18px !important; }
  .hmpe-site [style*="justify-content: space-between"][style*="gap: 24px"], .hmpe-site [style*="gap: 32px"] { flex-wrap: wrap; }
  .hmpe-site h1 { font-size: 32px !important; }
  .hmpe-site h2 { font-size: 28px !important; }
  .hmpe-site #doar { padding: 22px !important; }
  .hmpe-site #doar [style*="gap: 20px"] { flex-wrap: wrap; }
  .hmpe-site #doar input { width: 100%; box-sizing: border-box; }
  .hmpe-site #doar [style*="gap: 10px"] { flex-wrap: wrap; }
  .hmpe-site footer [style*="justify-content: space-between"] { flex-direction: column; gap: 14px; }
  .hmpe-site section[aria-label="Destaque"] [style*="display: flex; gap: 16px"] { flex-wrap: wrap; }
  .hmpe-main-menu .sub-menu { min-width: 160px; max-width: 240px; }
  .hmpe-main-menu .sub-menu .sub-menu { position: static; }
}
