
/* Shared decorative layer. Original hero dimensions, backgrounds and content stay intact. */
.bsw-ambient-hero {position:relative;isolation:isolate;}
.bsw-ambient-hero > .bsw-ambient-foreground {position:relative;z-index:2;}
.bsw-hero-ambient {position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none;contain:paint;--bsw-pointer-x:0px;--bsw-pointer-y:0px;mask-image:linear-gradient(90deg,rgba(0,0,0,.12),#000 64%);-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.12),#000 64%);}
.bsw-ambient-response {position:absolute;inset:0;pointer-events:none;}
.bsw-ambient-response-light {transform:translate3d(var(--bsw-pointer-x),var(--bsw-pointer-y),0);}
.bsw-ambient-response-glass {transform:translate3d(calc(var(--bsw-pointer-x) * -.65),calc(var(--bsw-pointer-y) * .65),0);}
.bsw-ambient-response-curves {transform:translate3d(calc(var(--bsw-pointer-x) * .3),calc(var(--bsw-pointer-y) * .35),0);}
.bsw-ambient-light {position:absolute;inset:-25% -20% -25% 22%;background:radial-gradient(ellipse at 65% 45%,rgba(74,144,196,.30),rgba(46,102,155,.15) 33%,transparent 66%),radial-gradient(ellipse at 78% 72%,rgba(103,152,178,.12),transparent 57%);transform:translate3d(-3%,2%,0);animation:bsw-light-drift 24s ease-in-out infinite alternate;animation-play-state:paused;}
.bsw-ambient-glass {position:absolute;inset:-45% -35% -45% 52%;background:linear-gradient(116deg,transparent 28%,rgba(171,201,221,.015) 35%,rgba(171,201,221,.065) 37%,rgba(171,201,221,.015) 39%,transparent 47%,rgba(112,163,197,.025) 60%,transparent 70%);transform:translate3d(-5%,0,0) rotate(-5deg);animation:bsw-glass-drift 30s ease-in-out infinite alternate;animation-play-state:paused;}
.bsw-ambient-curves {position:absolute;inset:0;width:100%;height:100%;opacity:.7;transform:translate3d(0,2%,0);animation:bsw-curve-drift 28s ease-in-out infinite alternate;animation-play-state:paused;}
.bsw-hero-ambient.is-running .bsw-ambient-drift {animation-play-state:running;}
@keyframes bsw-light-drift {from{transform:translate3d(-3%,2%,0) scale(1);}to{transform:translate3d(5%,-3%,0) scale(1.07);}}
@keyframes bsw-glass-drift {from{transform:translate3d(-5%,0,0) rotate(-5deg);}to{transform:translate3d(6%,3%,0) rotate(-2deg);}}
@keyframes bsw-curve-drift {from{transform:translate3d(0,2%,0);}to{transform:translate3d(-2%,-1%,0);}}
/* A local reset avoids the shared primary-button rules. */
body .elementor .bsw-ambient-hero > button.bsw-ambient-toggle {
 position:absolute;right:24px;bottom:12px;z-index:3;width:auto!important;min-width:0!important;min-height:32px!important;height:auto!important;
 padding:5px 10px!important;border:1px solid rgba(190,205,222,.22)!important;border-radius:999px!important;
 background:rgba(15,39,71,.65)!important;color:#CED9E6!important;font:500 12px/20px Lato,sans-serif!important;text-transform:none!important;
 box-shadow:none!important;transform:none!important;translate:none!important;cursor:pointer;
}
body .elementor .bsw-ambient-hero > button.bsw-ambient-toggle:hover {border-color:#C8A04D!important;color:#fff!important;}
.bsw-ambient-toggle[hidden] {display:none!important;}
.bsw-ambient-toggle:focus-visible {outline:2px solid #C8A04D;outline-offset:3px;}
@media(max-width:1024px){
 .bsw-hero-ambient{mask-image:linear-gradient(180deg,rgba(0,0,0,.45),#000);-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.45),#000);}
 .bsw-ambient-light{opacity:.6;}.bsw-ambient-glass{opacity:.5;}.bsw-ambient-curves{opacity:.4;}
}
@media(max-width:767px){
 .bsw-hero-ambient .bsw-ambient-drift{animation:none!important;}
 .bsw-ambient-response{transform:none!important;}
 .bsw-ambient-light{inset:-10% -40% -20% 5%;opacity:.45;}
 .bsw-ambient-glass,.bsw-ambient-curves,.bsw-ambient-toggle{display:none!important;}
}
@media(prefers-reduced-motion:reduce){
 .bsw-hero-ambient .bsw-ambient-drift{animation:none!important;}
 .bsw-ambient-response{transform:none!important;}.bsw-ambient-toggle{display:none!important;}
}
