/* Interaction details preserve the approved layout and palette. */
.whatsapp-button {
  transition: transform .28s ease, box-shadow .28s ease, filter .28s ease;
}
.hero-button {
  box-shadow: inset 0 1px 0 #f9e5ae75, 0 4px 16px #9d7f3914;
}
.contact-button {
  box-shadow: 0 4px 16px #072b4014;
}
.header nav a {
  position: relative;
}
.header nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 6px;
  height: 1px;
  background: var(--gold);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .28s ease;
}
.header nav a:hover,
.header nav a:focus-visible {
  text-decoration: none;
}
.header nav a:hover::after,
.header nav a:focus-visible::after {
  transform: scaleX(1);
}
.icon-disc {
  transition: transform .35s ease, background-color .35s ease;
}
.trajectory summary {
  transition: background-color .25s ease, box-shadow .25s ease;
}
.trajectory .plus {
  transition: transform .28s ease;
}
.trajectory summary:hover .plus {
  transform: rotate(90deg);
}
.trajectory[open] summary:hover .plus {
  transform: rotate(0);
}
@media (hover: hover) and (pointer: fine) {
  .hero-button:hover {
    transform: translateY(-3px);
    box-shadow: inset 0 1px 0 #f9e5ae75, 0 10px 24px #9d7f3925;
  }
  .contact-button:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 24px #072b402b;
  }
  .modality:hover .icon-disc {
    transform: translateY(-4px);
    background-color: #dce2ce;
  }
  .trajectory summary:hover {
    box-shadow: 0 3px 12px #00000014;
  }
}
.whatsapp-button:active {
  transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
  .whatsapp-button,
  .header nav a::after,
  .icon-disc,
  .trajectory summary,
  .trajectory .plus {
    transition: none !important;
    animation: none !important;
  }
  .whatsapp-button:hover,
  .whatsapp-button:active,
  .modality:hover .icon-disc,
  .trajectory summary:hover .plus {
    transform: none !important;
  }
}
@media print {
  .header nav a::after {
    display: none;
  }
}
