/* ===== Base Camp Aviation — motion & hover layer ===== */
:root{ --bc-ease: cubic-bezier(.22,.61,.36,1); }

/* Entrance reveal: sections + cards fade-up */
.bc-anim{ opacity:0; transform:translateY(26px); transition:opacity .7s var(--bc-ease), transform .7s var(--bc-ease); will-change:opacity,transform; }
.bc-anim.bc-in{ opacity:1; transform:none; }
/* stagger children a touch */
.bc-anim.bc-d1{ transition-delay:.08s } .bc-anim.bc-d2{ transition-delay:.16s } .bc-anim.bc-d3{ transition-delay:.24s }
@media (prefers-reduced-motion: reduce){ .bc-anim{opacity:1!important;transform:none!important;transition:none!important} }

/* Card hover-lift + shadow. Cards = bordered/!bg containers inside sections */
.elementor .e-con.bc-card{ transition: transform .38s var(--bc-ease), box-shadow .38s var(--bc-ease), border-color .38s var(--bc-ease); }
.elementor .e-con.bc-card:hover{ transform:translateY(-6px); box-shadow:0 18px 44px rgba(10,22,34,.14)!important; }

/* Image zoom inside cards */
.elementor .e-con.bc-card .elementor-widget-image{ overflow:hidden; }
.elementor .e-con.bc-card .elementor-widget-image img{ transition:transform .6s var(--bc-ease); display:block; width:100%; }
.elementor .e-con.bc-card:hover .elementor-widget-image img{ transform:scale(1.06); }

/* Button hover transitions (XPro buttons) */
.elementor .elementor-widget-xpro-button a,
.elementor .elementor-widget-xpro-button .xpro-elementor-button{ transition:transform .25s var(--bc-ease), box-shadow .25s var(--bc-ease), background-color .25s var(--bc-ease), color .2s var(--bc-ease)!important; }
.elementor .elementor-widget-xpro-button a:hover,
.elementor .elementor-widget-xpro-button .xpro-elementor-button:hover{ transform:translateY(-2px); box-shadow:0 10px 24px rgba(255,90,31,.28); }
.elementor .elementor-widget-xpro-button .xpro-btn-icon,
.elementor .elementor-widget-xpro-button i{ transition:transform .25s var(--bc-ease); }
.elementor .elementor-widget-xpro-button a:hover .xpro-btn-icon,
.elementor .elementor-widget-xpro-button a:hover i{ transform:translateX(4px); }

/* Nav link hover underline (header menu) */
.elementor .elementor-widget-xpro-horizontal-menu .xpro-menu-item > a,
.elementor .elementor-widget-xpro-horizontal-menu a.xpro-menu-link{ position:relative; transition:color .2s var(--bc-ease); }

/* Sticky header: XPro renders header inside a wrapper; we swap look on scroll */
body.bc-scrolled .xpro-theme-builder-header,
body.bc-scrolled header .elementor-location-header{ box-shadow:0 6px 22px rgba(10,22,34,.08); }
.xpro-theme-builder-header, header .elementor-location-header{ transition:box-shadow .3s var(--bc-ease), background-color .3s var(--bc-ease); }