/*
Theme Name: HM Pharma
Description: Site institucional bilingue baseado na revisão 10. Portal em demonstração.
Version: 1.0.48
Author: HM Pharma
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: hmpharma
*/
a{color:inherit;text-decoration:none}.btn{display:inline-block}.logo{white-space:nowrap}.language-switch{font-size:12px;font-weight:700;padding:10px}.admin-bar .header{top:32px}.page{display:block}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #428b79;outline-offset:4px}.hm-feedback{padding:18px;border:1px solid #428b79;margin-bottom:20px}.hm-trap{position:absolute;left:-10000px}.skip-link{position:absolute;left:-10000px}.skip-link:focus{left:20px;top:40px;z-index:10000;background:white;padding:12px}.hm-contact .btn{margin-top:20px}@media(max-width:782px){.admin-bar .header{top:46px}}@media(min-width:1051px) and (max-width:1280px){.nav{flex-wrap:wrap;height:auto;gap:18px;padding:20px 0}.links{order:3;width:100%;justify-content:center}}@media(max-width:650px){.navactions{gap:8px}.language-switch{display:inline-block!important}}
.links a{border:0;background:transparent;padding:12px 0;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.links a:hover{color:var(--text)}.footer a{display:block;border:0;background:transparent;color:#d6e0e5;padding:5px 0;text-align:left}.footer a.logo{color:white}.mobile-nav-link{display:block}img{max-width:100%}.nav>*{min-width:0}.navactions{align-items:center}.portalTop{gap:12px}.portalTop .logo{flex-shrink:0}@media(max-width:650px){.portalTop{padding:10px 15px;height:auto;flex-wrap:wrap}.portalLoginGrid{gap:25px}.loginbox{padding:25px}.imgcap{flex-wrap:wrap;gap:8px}}

/* Preserve original logo proportions and colours. */
.logo{display:inline-flex;align-items:center;flex:0 0 auto;line-height:1}.logo .hm-brand-image{display:block;width:154px;height:auto;max-height:72px;object-fit:contain;aspect-ratio:auto}.nav{min-height:94px;height:auto;padding-top:10px;padding-bottom:10px}.footer .logo{display:inline-flex;background:transparent;padding:0}.footer .logo .hm-brand-image{width:138px;max-height:64px;object-fit:contain}.portalTop .logo .hm-brand-image,.portalLogin .logo .hm-brand-image{width:154px;max-height:72px}@media(max-width:650px){.logo .hm-brand-image{width:132px;max-height:64px}.nav{min-height:82px}.footer .logo .hm-brand-image{width:126px}}

/* Show the complete supplied warehouse photograph. */
.heroimg{height:auto;aspect-ratio:1122/1404;object-fit:contain}
\n\n/* Gutenberg-native compatibility: preserve the approved 1.0.3 visual system. */
.entry-content > .wp-block-group.page{margin:0;max-width:none}.wp-block-group{margin-top:0;margin-bottom:0}.wp-block-group.wrap{max-width:1240px;margin-left:auto;margin-right:auto}.wp-block-group.hero-grid,.wp-block-group.grid4,.wp-block-group.grid3,.wp-block-group.grid2,.wp-block-group.split,.wp-block-group.contactgrid,.wp-block-group.cta-inner{display:grid}.wp-block-group.hero-grid{grid-template-columns:1.25fr .75fr}.wp-block-group.actions{display:flex}.wp-block-group.cta-inner{display:flex}.wp-block-image{margin:0}.wp-block-image.heroimg img,.heroimg img{width:100%;height:auto;aspect-ratio:1122/1404;object-fit:contain}.split .wp-block-image img{width:100%;display:block;aspect-ratio:16/10;object-fit:cover}.wp-block-button.hm-native-button{display:block}.actions>.wp-block-button{margin:0}.hm-link-line{margin:20px 0 0}.card>.hm-link-line a{margin-top:0}.eyebrow,.tagline,.icon{margin-top:0;margin-bottom:0}.hm-font-42{font-size:42px!important}.hm-font-24-zero{font-size:24px!important;margin:0!important}.hm-image-4x3 img{width:100%;aspect-ratio:4/3;object-fit:cover}.wp-block-group.imgcap{display:flex}.wp-block-group.stack-row{display:grid}.wp-block-group.footer-grid{display:grid}.wp-block-group.formgrid{display:grid}@media(max-width:1050px){.wp-block-group.hero-grid,.wp-block-group.split,.wp-block-group.contactgrid{grid-template-columns:1fr}.wp-block-group.grid4,.wp-block-group.grid3{grid-template-columns:1fr 1fr}}@media(max-width:650px){.wp-block-group.grid4,.wp-block-group.grid3,.wp-block-group.grid2{grid-template-columns:1fr}}\n

/* 1.0.7 — Gutenberg core blocks, preserving the approved 1.0.3 layout. */
.wp-block-group.page,.wp-block-group.hero,.wp-block-group.wrap,.wp-block-group.hero-grid,.wp-block-group.actions{max-width:none!important}
.wp-block-group.wrap{max-width:1240px!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;padding-left:34px!important;padding-right:34px!important}
.wp-block-group.hero-grid{display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)!important;gap:68px!important;align-items:center!important;padding-left:34px!important;padding-right:34px!important}
.wp-block-group.hero-grid>.wp-block-group{min-width:0!important;width:auto!important;max-width:none!important}
.wp-block-group.actions{display:flex!important;flex-direction:row!important;gap:13px!important;align-items:center!important;flex-wrap:wrap!important;margin-top:32px!important}
.hm-btn{margin:0!important;padding:0!important}.hm-btn a{display:inline-block;border:1px solid var(--brand);background:var(--brand);color:#fff;padding:13px 20px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border-radius:0!important}.hm-btn a:hover{background:#23506c}.hm-btn.outline a{background:#fff;color:var(--brand);border-color:#bfd0d8}
.wp-block-group.eyebrow>p,.wp-block-group.tagline>p,.wp-block-group.imgcap>p{margin:0!important}.wp-block-group.imgcap{display:flex!important;justify-content:space-between!important}
.wp-block-image.heroimg,.wp-block-image.heroimg img{width:100%!important;max-width:none!important}
@media(max-width:1050px){.wp-block-group.hero-grid{grid-template-columns:1fr!important;gap:40px!important}}
@media(max-width:650px){.wp-block-group.wrap,.wp-block-group.hero-grid{padding-left:20px!important;padding-right:20px!important}}


/* 1.0.8 — stored Gutenberg markup uses resolved URLs and stable flex sizing. */
.wp-block-group.actions>.hm-btn{display:block!important;flex:0 0 auto!important;width:auto!important;max-width:none!important}
.wp-block-group.actions>.hm-btn>a{width:auto!important;white-space:nowrap!important}
.wp-block-group.hero-grid>.wp-block-group:last-child{display:block!important;min-width:0!important}
.wp-block-group.hero-grid>.wp-block-group:last-child>.wp-block-image.heroimg{display:block!important;width:100%!important}


/* 1.0.12 — Gutenberg-native structural compatibility */
.wp-block-columns.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:68px;align-items:center}
.wp-block-columns.grid4,.wp-block-columns.grid3,.wp-block-columns.grid2{display:grid;gap:0}.wp-block-columns.grid4{grid-template-columns:repeat(4,1fr)}.wp-block-columns.grid3{grid-template-columns:repeat(3,1fr)}.wp-block-columns.grid2{grid-template-columns:repeat(2,1fr)}
.wp-block-columns.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.wp-block-columns.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.wp-block-columns>.wp-block-column{min-width:0}.wp-block-buttons.actions{display:flex;gap:13px;align-items:center;flex-wrap:wrap}.wp-block-button.hm-btn{margin:0}.wp-block-button.hm-btn .wp-block-button__link{border-radius:0}
@media(max-width:1050px){.wp-block-columns.hero-grid,.wp-block-columns.split{grid-template-columns:1fr}.wp-block-columns.grid4,.wp-block-columns.grid3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.wp-block-columns.grid4,.wp-block-columns.grid3,.wp-block-columns.grid2{grid-template-columns:1fr}.wp-block-columns.cta-inner{flex-direction:column;align-items:flex-start}}



/* 1.0.15 — restore approved 1.0.4 footer identity exactly. */
.footer .logo{background:transparent!important;padding:0!important}
.footer .logo .hm-brand-image{width:118px!important;height:auto!important;max-height:none!important}
@media(max-width:650px){.footer .logo .hm-brand-image{width:108px!important}}


/* 1.0.16 — approved dark-footer logo + equal-height Gutenberg cards. */
.footer .logo .hm-footer-brand-image{width:138px!important;height:auto!important;max-height:none!important;background:transparent!important}
.wp-block-columns.grid4>.wp-block-column,.wp-block-columns.grid3>.wp-block-column{display:flex;align-items:stretch}
.wp-block-columns.grid4>.wp-block-column>.card,.wp-block-columns.grid3>.wp-block-column>.card{width:100%;height:100%;display:flex;flex-direction:column}
.wp-block-columns.grid4>.wp-block-column>.card>.hm-link-line,.wp-block-columns.grid3>.wp-block-column>.card>.hm-link-line{margin-top:auto;padding-top:20px}
@media(max-width:650px){.footer .logo .hm-footer-brand-image{width:126px!important}}

/* 1.0.17 — footer logo width aligned visually with the tagline below. */
.footer .logo .hm-footer-brand-image{width:244px!important;height:auto!important;max-height:none!important}
@media(max-width:650px){.footer .logo .hm-footer-brand-image{width:220px!important;max-width:100%!important}}

/* 1.0.19 — global header/footer configuration and final footer proportions. */
.header .logo .hm-brand-image{width:var(--hm-header-logo-width,154px)!important}
.footer .hm-footer-brand{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}
.footer .logo .hm-footer-brand-image{width:205px!important;height:auto!important;max-height:none!important}
.footer .hm-footer-brand .muted{font-size:13px;line-height:1.35;margin-top:14px;max-width:205px}
.footer-grid{align-items:flex-start}
@media(max-width:650px){.footer .logo .hm-footer-brand-image{width:185px!important}.footer .hm-footer-brand .muted{max-width:185px;font-size:12px}}

/* 1.0.20 — reviewed page alignment, logistics process and footer proportions. */
.pagehero .wrap > h1{margin-left:0!important;margin-right:0!important}
.pagehero .wrap > .lead{margin-left:0!important;margin-right:0!important}
.wp-block-group.stack-row{grid-template-columns:45px minmax(0,1fr)!important;gap:10px!important;width:100%!important}
.wp-block-group.stack-row > p{width:45px!important;min-width:45px!important;margin-left:0!important;margin-right:0!important}
.wp-block-group.stack-row > .wp-block-group{width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important}
.wp-block-group.stack-row > .wp-block-group > p{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
.footer .hm-footer-brand{width:max-content;max-width:100%}
.footer .hm-footer-brand .muted{margin-top:8px!important;white-space:nowrap}
@media(max-width:650px){.footer .hm-footer-brand .muted{white-space:normal}}


/* 1.0.21 — final reviewed alignment/layout corrections. */
@media (min-width:1051px){
  .wp-block-group.contactgrid{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;gap:70px!important;align-items:start!important}
  .wp-block-group.contactgrid>.wp-block-group{width:100%!important;max-width:none!important;margin:0!important;min-width:0!important}
  .wp-block-columns.split>.wp-block-column{min-width:0!important}
}
@media (max-width:1050px){
  .wp-block-group.contactgrid{grid-template-columns:1fr!important;gap:40px!important}
}

/* 1.0.22 — structural desktop fixes: header, internal page titles, contact and logistics. */
@media (min-width:1051px){
  .header .wrap.nav{max-width:1240px!important;width:calc(100% - 68px)!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important;display:flex!important;flex-wrap:nowrap!important}
  .header .nav>.logo{display:flex!important;flex:0 0 var(--hm-header-logo-width,154px)!important;width:var(--hm-header-logo-width,154px)!important;min-width:var(--hm-header-logo-width,154px)!important;overflow:visible!important}
  .header .nav>.links{display:flex!important;flex:1 1 auto!important;min-width:0!important;justify-content:center!important}
  .header .nav>.navactions{display:flex!important;flex:0 0 auto!important}

  .pagehero .wrap>h1,
  .pagehero .wrap>h1.wp-block-heading{margin-left:0!important;margin-right:auto!important;margin-inline:0 auto!important;justify-self:start!important;align-self:start!important;width:auto!important;max-width:900px!important}

  .wp-block-columns.split{display:flex!important;flex-wrap:nowrap!important;gap:80px!important;align-items:center!important;width:100%!important}
  .wp-block-columns.split>.wp-block-column{flex:1 1 0!important;flex-basis:0!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important}
  .wp-block-columns.split>.wp-block-column:first-child{flex-basis:0!important}
  .wp-block-columns.split>.wp-block-column:last-child{flex-basis:0!important}

  .wp-block-group.stack{width:100%!important;max-width:none!important}
  .wp-block-group.stack-row{display:flex!important;grid-template-columns:none!important;width:100%!important;gap:10px!important;align-items:flex-start!important}
  .wp-block-group.stack-row>p{flex:0 0 45px!important;width:45px!important;min-width:45px!important;max-width:45px!important;margin:0!important}
  .wp-block-group.stack-row>.wp-block-group{flex:1 1 auto!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important}
  .wp-block-group.stack-row>.wp-block-group>p{width:auto!important;max-width:none!important;margin-left:0!important;margin-right:0!important;word-break:normal!important;overflow-wrap:normal!important}

  .wp-block-group.contactgrid{display:flex!important;grid-template-columns:none!important;flex-wrap:nowrap!important;gap:70px!important;align-items:flex-start!important;width:100%!important;max-width:1240px!important}
  .wp-block-group.contactgrid>.wp-block-group:first-child{flex:0 1 40%!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important}
  .wp-block-group.contactgrid>.wp-block-group:last-child{flex:1 1 60%!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important}
}


/* 1.0.23 — internal page structure: default-layout page heroes/contact grid; approved header/logistics untouched. */
.pagehero .wrap{display:block!important}
.pagehero .wrap>h1,.pagehero .wrap>h1.wp-block-heading{display:block!important;width:min(900px,100%)!important;max-width:900px!important;margin-left:0!important;margin-right:0!important;margin-inline:0!important}
.pagehero .wrap>.lead{display:block!important;margin-left:0!important;margin-right:0!important;margin-inline:0!important}
@media (min-width:1051px){
  .wp-block-group.wrap.contactgrid{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;gap:70px!important;align-items:start!important}
  .wp-block-group.wrap.contactgrid>.wp-block-group{width:100%!important;max-width:none!important;margin:0!important;min-width:0!important}
}

/* 1.0.25 Contactos: native Gutenberg columns. */
@media(min-width:1051px){.wp-block-columns.wrap.contactgrid{display:flex!important;gap:70px!important;align-items:flex-start!important;max-width:1240px;margin-left:auto!important;margin-right:auto!important}.wp-block-columns.wrap.contactgrid>.wp-block-column{min-width:0;margin:0!important}.wp-block-columns.wrap.contactgrid>.wp-block-column:first-child{flex:0 1 40%!important}.wp-block-columns.wrap.contactgrid>.wp-block-column:last-child{flex:1 1 60%!important}}
@media(max-width:1050px){.wp-block-columns.wrap.contactgrid{display:flex!important;flex-direction:column!important;gap:40px!important}.wp-block-columns.wrap.contactgrid>.wp-block-column{flex-basis:auto!important;width:100%!important}}

.language-switch{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.language-switch a{padding:0;color:inherit;opacity:.65}.language-switch a.current{opacity:1;font-weight:800}.language-switch a:hover{opacity:1}

/* 1.0.34 — PT desktop navigation: “Logística e Qualidade” stays on one line. */
@media (min-width:1051px){
  .header.hm-lang-pt .links{align-items:center!important;gap:16px!important;}
  .header.hm-lang-pt .links>a{
    display:inline-flex!important;
    align-items:center!important;
    padding-top:12px!important;
    padding-bottom:12px!important;
    margin:0!important;
    line-height:1!important;
  }
  .header.hm-lang-pt .links>a.hm-nav-logistica{white-space:nowrap!important;}
}

/* 1.0.35 — Animated background on home hero only. Existing Gutenberg content is untouched. */
.hm-animated-hero{position:relative;isolation:isolate;overflow:hidden}
.hm-animated-hero>.hm-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;pointer-events:none}
.hm-animated-hero::before{content:"";position:absolute;inset:0;background:rgba(255,255,255,.20);z-index:-1;pointer-events:none}
.hm-animated-hero>.hero-grid,.hm-animated-hero>.wrap,.hm-animated-hero>.wp-block-columns{position:relative;z-index:1}
@media(prefers-reduced-motion:reduce){.hm-animated-hero>.hm-hero-video{display:none}.hm-animated-hero{background:#e4f5fb url('assets/hmpharma-hero-poster.jpg') center/cover no-repeat}}

/* 1.0.37 — approved animated wave between interior title and content. */
.hm-interior-wave{position:relative;width:100%;max-width:none!important;margin:0!important;background:#fff;overflow:hidden}
.hm-interior-wave-stage{position:relative;overflow:hidden;height:260px;background:#fff}
.hm-interior-wave-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;clip-path:polygon(0 50%,25% 40%,50% 50%,75% 60%,100% 50%,100% 75%,75% 85%,50% 75%,25% 65%,0 75%)}
.hm-interior-wave-back{background:linear-gradient(105deg,#e4f7fa,#b5dced,#eff8fb);opacity:.65}
.hm-interior-wave-front{background:linear-gradient(105deg,#b9e9f0,#73b7db,#ceeaf4);opacity:.42}
.hm-interior-wave-film{opacity:.76}
@media(max-width:480px){.hm-interior-wave-stage{height:210px}}
@media print{.hm-interior-wave{display:none!important}}

/* Three photos per gallery; the original layout and hero remain unchanged. */
.hm-original-photos{padding:42px 0 54px}.hm-original-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.hm-original-photo-grid figure{margin:0}.hm-original-photo-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px;display:block}
.hm-original-photo-grid>figure:nth-child(n+4),.hm-photo-grid>figure:nth-child(n+4),.hm-photo-grid>.wp-block-column:nth-child(n+4){display:none!important}
@media(max-width:700px){.hm-original-photo-grid{grid-template-columns:1fr}}

/* 1.0.46 — equal-height regulatory cells, same existing grid and appearance. */
.wp-block-columns.grid2{align-items:stretch}
.wp-block-columns.grid2>.wp-block-column{min-width:0;display:flex;align-items:stretch}
.wp-block-columns.grid2>.wp-block-column>.wp-block-group.card{width:100%;height:100%;box-sizing:border-box}

/* 1.0.47 — gallery-only corrections; other site layout untouched. */
.hm-original-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.hm-original-photo-grid>figure{min-width:0;overflow:hidden;border-radius:10px;position:relative}
.hm-original-photo-grid>figure img{display:block;width:100%;height:100%;aspect-ratio:16/10;object-fit:contain;background:#fff;border-radius:10px}
.hm-original-photos::before,.hm-original-photos::after,.hm-original-photo-grid::before,.hm-original-photo-grid::after,.hm-original-photo-grid>figure::before,.hm-original-photo-grid>figure::after{content:none!important;display:none!important}
.hm-original-photos hr,.hm-original-photo-grid hr,.hm-photo-section hr{display:none!important}
.hm-original-photos .wp-block-separator,.hm-photo-section .wp-block-separator{display:none!important}
@media(max-width:700px){.hm-original-photo-grid{grid-template-columns:1fr}}

/* 1.0.48: Native Gutenberg gallery columns, same approved 3-up layout. */
.wp-block-columns.hm-original-photo-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;align-items:stretch!important}
.wp-block-columns.hm-original-photo-grid>.wp-block-column{margin:0!important;min-width:0!important;overflow:hidden;border-radius:10px}
.wp-block-columns.hm-original-photo-grid figure{margin:0!important;width:100%;height:100%}
.wp-block-columns.hm-original-photo-grid img{display:block;width:100%;aspect-ratio:16/10;object-fit:contain;border-radius:10px;background:#fff}
.wp-block-columns.hm-original-photo-grid::before,.wp-block-columns.hm-original-photo-grid::after{content:none!important;display:none!important}
@media(max-width:700px){.wp-block-columns.hm-original-photo-grid{grid-template-columns:1fr!important}}
