/* Inovatie Clinic — estilos globais (base, keyframes, responsivo) */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Instrument Sans',system-ui,sans-serif;background:#ffffff;color:#33506B;-webkit-font-smoothing:antialiased}
a{color:#274864}
a:hover{color:#5E86A8}
::selection{background:#D8E8F3}
@keyframes invFadeIn{from{opacity:0}to{opacity:1}}
@keyframes invBarFill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes invFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}
@keyframes invShadow{0%,100%{transform:translateX(-50%) scale(1);opacity:.85}50%{transform:translateX(-50%) scale(.8);opacity:.5}}
@keyframes invRing{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.55}}
@keyframes invSpin{to{transform:rotate(360deg)}}
@keyframes invSpinR{to{transform:rotate(-360deg)}}
@keyframes invMarquee{to{transform:translateX(-50%)}}
@keyframes invPulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.45)}70%{box-shadow:0 0 0 18px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}
@keyframes invNudge{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(calc(-50% + 6px),-50%)}}
@keyframes invSpin3d{0%{transform:rotateY(0deg)}100%{transform:rotateY(360deg)}}
@keyframes invSway{0%,100%{transform:rotateY(-14deg) rotateZ(-2deg)}50%{transform:rotateY(14deg) rotateZ(2deg)}}
@keyframes invTilt3d{0%,100%{transform:rotateX(14deg) rotateZ(-5deg)}50%{transform:rotateX(-14deg) rotateZ(5deg)}}
@keyframes invSonar{0%{transform:scale(1);opacity:.6}100%{transform:scale(2);opacity:0}}
@keyframes invShine{0%{transform:translateX(-130%) skewX(-18deg)}55%,100%{transform:translateX(240%) skewX(-18deg)}}
@keyframes invLetter{0%{opacity:0;transform:translateY(16px) rotateX(70deg)}100%{opacity:1;transform:translateY(0) rotateX(0)}}
@keyframes invBlob{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(24px,-18px) scale(1.1)}}
body{overflow-x:hidden}
@media (max-width:820px){
  #inv-hdr nav{display:none!important}
  #inv-hdr>div{height:64px!important;padding:0 18px!important}
  #inv-hdr a[target="_blank"]{padding:9px 15px!important;font-size:12.5px!important}
  section,footer{padding-left:20px!important;padding-right:20px!important}
  #inicio{padding-top:110px!important;padding-bottom:56px!important}
  #sobre,#areas,#feedbacks{padding-top:68px!important;padding-bottom:68px!important}
  #contato{padding-top:68px!important}
  #inicio [data-rv="zoom"]{height:420px!important}
  #sobre .c-foto-wrap{padding:0 0 46px 20px!important}
  #contato>div>div:first-child{padding:26px 18px!important}
  #contato .c-map{min-height:420px!important}
  #hero-tooth{width:min(330px,82vw)!important;height:min(400px,100vw)!important}
  #sobre .c-foto{aspect-ratio:4/5!important}
  #areas .c-case{aspect-ratio:9/8!important}
  #areas .trat-img{height:auto!important;aspect-ratio:4/3!important}
  #areas #trat-protese{aspect-ratio:3/4!important}
  a[aria-label="Falar no WhatsApp"]{width:52px!important;height:52px!important;bottom:18px!important;right:18px!important}
}

/* Estados de hover */
.hv1:hover{color:#1C3450 !important}
.hv2:hover{background:#1B3550 !important; color:#ffffff !important; transform:translateY(-2px) !important; box-shadow:0 14px 30px rgba(31,58,84,.3) !important}
.hv3:hover{background:#1B3550 !important; color:#ffffff !important; transform:translateY(-2px) !important; box-shadow:0 16px 34px rgba(31,58,84,.32) !important}
.hv4:hover{background:#ffffff !important; color:#1C3450 !important; border-color:#9FBACE !important; transform:translateY(-2px) !important; box-shadow:0 12px 26px rgba(31,58,84,.12) !important}
.hv5:hover{transform:translateY(-6px) !important; box-shadow:0 22px 44px rgba(28,52,80,.12) !important; border-color:#D3E2ED !important}
.hv6:hover{gap:12px !important; color:#5E86A8 !important}
.hv7:hover{transform:translateY(-6px) !important; box-shadow:0 22px 44px rgba(28,52,80,.1) !important}
.hv8:hover{transform:translateY(-6px) !important; box-shadow:0 22px 44px rgba(28,52,80,.12) !important}
.hv9:hover{animation-play-state:paused !important}
.hv10:hover{transform:translateY(-5px) !important; box-shadow:0 20px 40px rgba(28,52,80,.09) !important}
.hv11:hover{color:#1C3450 !important; border-color:#9FBACE !important; transform:translateY(-2px) !important; box-shadow:0 12px 26px rgba(31,58,84,.12) !important}
.hv12:hover{background:#1B3550 !important; color:#ffffff !important; transform:translateY(-2px) !important}
.hv13:hover{transform:scale(1.1) !important}

html{scroll-behavior:smooth}
.slot-img{display:block}
.map-pin1,.map-pin2{max-width:calc(100% - 24px)}
@media (max-width:1100px){
  #contato .map-pin1{top:12px!important;left:12px!important;max-width:calc(100% - 24px)!important}
  #contato .map-pin2{top:calc(50% + 12px)!important;left:12px!important;max-width:calc(100% - 24px)!important}
}
