@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap");

::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #0a0f1d; }
::-webkit-scrollbar-thumb { background: #c6ac85; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #b39265; }
*:focus-visible { outline: 2px solid #c6ac85; outline-offset: 2px; }
html { scroll-behavior: smooth; }

.logo-img {
  width: 42px;
  height: 42px;
  object-fit: contain;
  border-radius: 999px;
  transition: transform .3s ease;
}
.group:hover .logo-img { transform: scale(1.05); }

.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .65s ease, transform .65s ease;
}
.reveal.in-view {
  opacity: 1;
  transform: translateY(0);
}
.hero-rise {
  animation: hero-rise .75s ease both;
}
.hero-scale {
  animation: hero-scale .8s ease .2s both;
}
.whatsapp-pop {
  animation: whatsapp-pop .65s cubic-bezier(.2, .9, .22, 1.2) both;
}
.greeting-pop {
  animation: greeting-pop .5s ease 3s both;
}
.drawer {
  transform: translateX(100%);
  transition: transform .3s ease;
}
.drawer.open { transform: translateX(0); }
.backdrop {
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease;
}
.backdrop.open {
  opacity: .6;
  pointer-events: auto;
}
.accordion-body {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height .3s ease, opacity .25s ease;
}
.accordion.open .accordion-body {
  max-height: 620px;
  opacity: 1;
}
.practice-card.open .practice-details {
  max-height: 900px;
  opacity: 1;
}
.practice-details {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height .32s ease, opacity .25s ease;
}
.practice-card.open .practice-footer {
  background: #050811;
  border-color: #050811;
  color: #dbcaab;
}
.practice-card.open {
  border-color: #b39265;
  box-shadow: 0 0 0 1px rgba(179, 146, 101, .2);
}

@keyframes hero-rise {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes hero-scale {
  from { opacity: 0; transform: scale(.95); }
  to { opacity: 1; transform: scale(1); }
}
@keyframes whatsapp-pop {
  from { opacity: 0; transform: scale(0); }
  to { opacity: 1; transform: scale(1); }
}
@keyframes greeting-pop {
  from { opacity: 0; transform: translateY(10px) scale(.8); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
