/* Responsive refinements for phones, tablets and desktop. */
*,*::before,*::after{box-sizing:border-box}
main,section,form,.grid>*,.flex>*{min-width:0}
img,iframe{max-width:100%}
h1,h2,h3,p,a,label{overflow-wrap:break-word}
#formulario{scroll-margin-top:96px}
input:not([type=checkbox]),select,textarea{width:100%;min-width:0;min-height:48px;font-size:16px}
button,a.inline-flex{min-height:44px}
button[aria-label="Menu"]{min-width:44px;min-height:44px}
.mobile-menu{top:72px;max-height:calc(100dvh - 72px);overflow-y:auto}
.mobile-menu a{display:flex;align-items:center;min-height:44px}
@media(max-width:1023px){
header nav[aria-label="Principal"]{display:none}
header button[aria-label="Menu"]{display:inline-flex;align-items:center;justify-content:center}
}
@media(min-width:1024px){.mobile-menu{display:none}}
@media(max-width:639px){
.mobile-menu{top:64px;max-height:calc(100dvh - 64px)}
main>section:first-child{padding-top:36px;row-gap:32px}
h1{font-size:clamp(30px,8.8vw,40px)!important}
h2.text-3xl{font-size:clamp(25px,7vw,30px);line-height:1.2}
form{padding:20px!important}
form h2{font-size:22px}
section a.inline-flex{max-width:100%;white-space:normal;text-align:center}
footer a{overflow-wrap:anywhere}
}
@media(max-width:359px){
header img{max-width:110px;height:auto}
header>div{gap:8px}
header a.inline-flex{padding-left:12px;padding-right:12px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

a.fixed[aria-label="Conversar com a Viva Bene pelo WhatsApp"]{bottom:calc(16px + env(safe-area-inset-bottom));right:16px;max-width:calc(100vw - 32px)}

header nav[aria-label="Principal"]{gap:20px}
header a[aria-current="page"]{color:#108953}

/* Blend the official logo white background with each light section. */
img[src="/assets/viva-bene-logo.jpg"]{mix-blend-mode:multiply;background:transparent}

/* Viva Bene navigation emphasis, shared by both pages. */
header nav[aria-label="Principal"] a,header .mobile-menu a{font-size:16px;font-weight:700;color:#06182B;line-height:1.4}
header nav[aria-label="Principal"]{gap:20px}
header nav[aria-label="Principal"] a:hover,header .mobile-menu a:hover{color:#108953}
@media(min-width:1024px) and (max-width:1100px){header nav[aria-label="Principal"]{gap:14px}header nav[aria-label="Principal"] a{font-size:15px}}

.hospital-tiers{margin-top:16px;display:grid;gap:12px}.hospital-tier{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:0}@media(min-width:640px){.hospital-tier{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.hospital-tier{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Keep hospital logos in one continuous grid without group gaps. */
.hospital-tiers{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hospital-tier{display:contents}@media(min-width:640px){.hospital-tiers{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.hospital-tiers{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Section colors from the Viva Bene identity and existing highlights. */
#solucoes{background:#218352;color:#fff}
#solucoes>div>div:first-child>.text-muted-foreground{color:#fff}
#solucoes .section-kicker{color:#fff}
#solucoes article{background:#fff;color:#06182B}
#como-funciona{background:#0F8C92;color:#fff}
#como-funciona .section-kicker{color:#fff}
#como-funciona .text-muted-foreground{color:#fff}
#como-funciona ol li>span{background:#fff;color:#06182B}
#como-funciona a{background:#fff;color:#06182B}
#como-funciona a:hover{background:#edf7f2}
#avaliacoes{background:#087bab;color:#fff}
#avaliacoes .section-kicker,#avaliacoes .text-muted-foreground{color:#fff}

.operator-grid{margin-top:40px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;padding:0}.operator-logo{position:relative;overflow:hidden;height:100px;width:100%;border-radius:12px}.operator-grid li{min-width:0}@media(min-width:640px){.operator-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.operator-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:380px){.operator-logo{transform:scale(.85)}}

.operator-logo img[src="/assets/operadora-bradesco.jpeg"]{filter:brightness(1.1);mix-blend-mode:multiply}

#abertura{background:#FFD0A3;color:#06182B}#abertura>div>div:first-child p{color:#06182B}#abertura form{background:#fff;color:#06182B}#abertura form .text-muted-foreground{color:#657278}@media(max-width:639px){#abertura>div{padding-top:36px;row-gap:32px}}

@media(max-width:639px){main>#abertura{padding-top:0}}
