/* ============================================================
   Cathcart Accounts — Main CSS entry point
   ALL @imports must come first — any rule before an @import
   causes browsers to silently drop subsequent imports.
   ============================================================ */

/* -- Google Fonts -- */
@import url('https://fonts.googleapis.com/css2?family=Archivo:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,400&display=swap');

/* -- Foundation -- */
@import url('base/reset.css');
@import url('base/variables.css');
@import url('base/typography.css');
@import url('base/utilities.css');

/* -- Layout -- */
@import url('layout/sections.css');

/* -- Components -- */
@import url('components/buttons.css');
@import url('components/header.css');
@import url('components/hero.css');
@import url('components/overview.css');
@import url('components/services.css');
@import url('components/trust.css');
@import url('components/testimonials.css');
@import url('components/booking.css');
@import url('components/page-hero.css');
@import url('components/contact.css');
@import url('components/footer.css');

/* -- View Transitions API (must come after imports) -- */
@view-transition {
  navigation: auto;
}

::view-transition-old(root) {
  animation: ca-slide-out var(--dur-base) var(--ease-out) both;
}

::view-transition-new(root) {
  animation: ca-slide-in var(--dur-base) var(--ease-out) both;
}

@keyframes ca-slide-out {
  from { opacity: 1; transform: translateY(0); }
  to   { opacity: 0; transform: translateY(-12px); }
}

@keyframes ca-slide-in {
  from { opacity: 0; transform: translateY(14px); }
  to   { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
  ::view-transition-old(root),
  ::view-transition-new(root) {
    animation: none;
  }
}
