/* Meiya V3 working copy only. Layout, copy and brand tokens stay in styles.css. */
:root { --motion-ease: cubic-bezier(.22,.61,.36,1); }
.section { scroll-margin-top: 24px; }
.control, .gold, .menu-toggle, .workbench button, .dialog-close {
  transition: transform 280ms var(--motion-ease), filter 280ms ease,
    box-shadow 280ms ease, background-color 280ms ease;
}
.plan-card {
  transition: transform 300ms var(--motion-ease), box-shadow 300ms ease;
}
.plan-card .media img { transition: transform 320ms var(--motion-ease); }
.site-nav nav a, .footer a:not(.brand), .social a {
  transition: color 240ms ease, text-decoration-color 240ms ease, background-color 240ms ease;
  text-underline-offset: 6px;
  text-decoration-color: transparent;
}
.site-nav nav a:focus-visible, .footer a:focus-visible {
  text-decoration: underline;
  text-decoration-color: currentColor;
}
button:focus-visible, a:focus-visible, select:focus-visible, input:focus-visible {
  outline: 3px solid var(--brown);
  outline-offset: 4px;
  box-shadow: 0 0 0 7px var(--cream);
}
.readmore .arrow-circle { transition: transform 280ms var(--motion-ease); }
@media (max-width:1100px) {
  /* Original Hero B selector otherwise outranks the shared nav.open rule. */
  body[data-hero="b"] .site-nav nav.open { display: flex; }
}
@media (hover:hover) and (pointer:fine) {
  .control:not([aria-disabled="true"]):not(:disabled):hover,
  .gold:not(:disabled):hover, .menu-toggle:hover, .workbench button:hover {
    filter: brightness(1.035);
    box-shadow: 0 5px 14px #39291321;
    transform: translateY(-1px);
  }
  /* Only cards with an existing enabled CTA: the card itself is not a link. */
  .plan-card:has(.control:not([aria-disabled="true"]):not(:disabled)):hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 28px #39291322;
  }
  .plan-card:hover .media img { transform: scale(1.02); }
  .site-nav nav a:hover, .footer a:not(.brand):hover {
    text-decoration: underline;
    text-decoration-color: currentColor;
  }
  .social a:hover { background-color: var(--brown); }
  .readmore:hover .arrow-circle { transform: translate(2px,-2px); }
}
.control:not([aria-disabled="true"]):not(:disabled):active,
.gold:not(:disabled):active, .menu-toggle:active, .workbench button:active {
  transform: translateY(1px);
  filter: brightness(.97);
}
.control[aria-disabled="true"]:hover, .control:disabled:hover {
  filter: none; transform: none; box-shadow: none;
}
@media (hover:none), (pointer:coarse) {
  .control:hover, .gold:hover { filter: none; box-shadow: none; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
  .plan-card:hover, .control:hover, .gold:hover, .menu-toggle:hover,
  .workbench button:hover, .control:active, .gold:active,
  .menu-toggle:active, .workbench button:active, .readmore:hover .arrow-circle,
  .plan-card:hover .media img { transform: none !important; }
}
