/* Archived Elementor motion settings are handled by coap-modern-motion.js. */
.coap-motion-target,
.coap-motion-target.animated { animation: none !important; }

/* The four home cards keep their original footprint while the CTA widens. */
@media (min-width: 768px) {
  .elementor-8 .year-home > .elementor-hidden-mobile .border-arrow {
    width: max-content !important;
    height: 88px !important;
    min-height: 88px !important;
    align-items: center !important;
    justify-content: center !important;
    flex: none !important;
  }
  .elementor-8 .year-home .border-arrow .elementor-widget-icon-box {
    width: max-content !important;
    height: 68px !important;
    min-height: 68px !important;
    flex: none !important;
  }
  .elementor-8 .year-home .border-arrow .elementor-icon-box-wrapper {
    display: flex !important;
    align-items: center !important;
    width: max-content !important;
    height: auto !important;
  }
  .elementor-8 .year-home .border-arrow .elementor-icon-box-content {
    display: block !important;
    width: auto !important;
    max-width: 0 !important;
    min-width: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    transition: max-width 460ms cubic-bezier(.2,.7,.2,1), opacity 380ms ease, padding-left 460ms ease !important;
  }
  .elementor-8 .year-home .border-arrow .elementor-icon-box-title {
    display: block !important;
    width: max-content !important;
    height: auto !important;
    white-space: nowrap !important;
    margin: 0 !important;
  }
  .elementor-8 .year-home:is(:hover, :focus-visible) .border-arrow .elementor-icon-box-content {
    max-width: 150px !important;
    padding-left: 10px !important;
    opacity: 1 !important;
  }
  .elementor-8 .year-home .border-arrow .elementor-icon-box-icon {
    transform: none !important;
    transition: none !important;
  }
  .elementor-8 .year-home .border-arrow .elementor-icon svg {
    transform: rotate(0deg);
    transform-origin: center;
    transition: transform 460ms cubic-bezier(.2,.7,.2,1);
  }
  .elementor-8 .year-home:is(:hover, :focus-visible) .border-arrow .elementor-icon svg {
    transform: rotate(45deg);
  }
  .elementor-8 .year-home:focus-visible { outline: 3px solid #a30c10 !important; outline-offset: 4px !important; }
}
@media (pointer: coarse) and (min-width: 768px) {
  .elementor-8 .year-home .border-arrow .elementor-icon-box-content {
    max-width: 150px !important;
    padding-left: 10px !important;
    opacity: 1 !important;
  }
}
@media (max-width: 767px) {
  .elementor-8 .year-home .elementor-hidden-desktop .elementor-widget-icon-box,
  .elementor-8 .year-home .elementor-hidden-desktop .elementor-icon-box-wrapper {
    width: max-content !important;
  }
  .elementor-8 .year-home .elementor-hidden-desktop .elementor-icon-box-content {
    max-width: 150px !important;
    padding-left: 10px !important;
    opacity: 1 !important;
    transition: none !important;
  }
  .elementor-8 .year-home .elementor-hidden-desktop .elementor-icon-box-title {
    width: max-content !important;
    white-space: nowrap !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .coap-motion-target { animation: none !important; transition: none !important; }
  .elementor-8 .year-home .border-arrow .elementor-icon svg { transition: none !important; }
  .elementor-8 .year-home .border-arrow .elementor-icon-box-content { transition: none !important; }
}

/* Only JS marks offscreen reveal groups as pending; no-JS content stays visible. */
.coap-motion-pending { opacity: 0; }
@media (prefers-reduced-motion: reduce) {
  .coap-motion-pending { opacity: 1; }
}

/* Keep the desktop CTA available and still while its words or icon are edited. */
@media (min-width: 768px) {
  .cantata-editing .elementor-8 .year-home .border-arrow .elementor-icon-box-content {
    max-width: 150px !important;
    padding-left: 10px !important;
    opacity: 1 !important;
    transition: none !important;
  }
  .cantata-editing .elementor-8 .year-home .border-arrow .elementor-icon svg {
    transform: rotate(45deg) !important;
    transition: none !important;
  }
}

/* Native sections added inside an archived page retain the theme's spacing choices. */
main > .elementor > section.c-text { padding-block: var(--section); }
main > .elementor > section.pad-s { padding-block: calc(var(--section) * .55); }
main > .elementor > section.pad-l { padding-block: calc(var(--section) * 1.4); }
main > .elementor > section.pad-t0 { padding-top: 0; }
main > .elementor > section.pad-b0 { padding-bottom: 0; }
