/* Solo Med — estilos extras */
html { scroll-behavior: smooth; }
::selection { background: #1F6F5C; color: #F6F4EE; }

/* Largura e estilo de scrollbar discreto, padrão da rede Solo */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(31, 111, 92, 0.25); border-radius: 999px; }
::-webkit-scrollbar-thumb:hover { background: rgba(31, 111, 92, 0.45); }

[x-cloak] { display: none !important; }

input[type="date"]::-webkit-calendar-picker-indicator,
input[type="time"]::-webkit-calendar-picker-indicator { cursor: pointer; opacity: 0.6; }

/* Fallback de impressão para o recibo HTML */
@media print {
  body { background: #fff !important; }
  .f, script { display: none; }
}

/* ---------------------------------------------------------------------------
   Landing — animações dos cards de funcionalidades (estilo iClinic)
--------------------------------------------------------------------------- */
@keyframes surgir { from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
.anim-surgir { animation: surgir .7s cubic-bezier(.2,.8,.2,1) both; }

@keyframes flutuar { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
.anim-flutuar { animation: flutuar 5.5s ease-in-out infinite; }
.anim-flutuar-devagar { animation: flutuar 7.5s ease-in-out infinite .6s; }

.fcard {
  transition: transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease, border-color .35s ease, background-color .35s ease;
}
.fcard:hover { transform: translateY(-10px); box-shadow: 0 24px 48px -20px rgba(31,111,92,.38); border-color: rgba(31,111,92,.35); }
.fcard .fcard-icon {
  transition: transform .35s ease, background-color .35s ease, color .35s ease;
}
.fcard:hover .fcard-icon { transform: scale(1.12) rotate(-6deg); background-color: #1F6F5C; color: #F6F4EE; }
.fcard .fcard-accent { transform: scaleX(0); transform-origin: left; transition: transform .45s cubic-bezier(.2,.8,.2,1); }
.fcard:hover .fcard-accent { transform: scaleX(1); }
.fcard .fcard-extra { max-height: 0; opacity: 0; overflow: hidden; transition: max-height .45s ease, opacity .45s ease; }
.fcard:hover .fcard-extra { max-height: 120px; opacity: 1; }
.fcard .fcard-link { display: inline-flex; align-items: center; gap: .25rem; opacity: 0; transform: translateX(-8px); transition: opacity .3s ease, transform .3s ease; }
.fcard:hover .fcard-link { opacity: 1; transform: translateX(0); }

@media (hover: none) {
  .fcard-extra { max-height: 120px !important; opacity: 1 !important; }
  .fcard-link { opacity: 1 !important; transform: none !important; }
}

.foto-med { transition: transform .8s ease; }
.foto-med:hover { transform: scale(1.03); }

.med-zoom { transition: transform .8s cubic-bezier(.2,.8,.2,1); }
.med-zoom:hover img { transform: scale(1.06); }

.whatsapp-botao { transition: transform .25s ease, background-color .25s ease; }
.whatsapp-botao:hover { transform: translateY(-3px); background-color: #1ebe5b; }
@media (max-width: 520px) {
  .whatsapp-botao span:last-child { display: none; }
  .whatsapp-botao { padding-right: 1rem; }
}