/* AIR SHOP accent and restrained interaction system. Approved brand artwork stays unchanged. */
:root{--accent:#4495e9;--blue:var(--accent);--accent-tint:rgba(68,149,233,.1);--accent-shadow:rgba(68,149,233,.2);--ease-soft:cubic-bezier(.2,.7,.3,1)}
button,a,input,select,textarea{transition:color 180ms var(--ease-soft),background-color 220ms var(--ease-soft),border-color 220ms var(--ease-soft),box-shadow 220ms var(--ease-soft),transform 220ms var(--ease-soft)}
button:hover:not(:disabled),a:hover,button:active:not(:disabled),a:active{color:var(--accent)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.form-grid input:focus,.form-grid textarea:focus,.option-group input:focus-visible,#optionVariants input:focus-visible{outline-color:var(--accent)}
input[type=checkbox],input[type=radio]{accent-color:var(--accent)}
nav>a,nav>button{position:relative;padding:8px 0}
nav>a::after,nav>button::after{content:'';position:absolute;inset:auto 0 0;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:center;transition:transform 240ms var(--ease-soft)}
nav>a:is(:hover,:focus-visible),nav>button:is(:hover,:focus-visible){color:var(--accent)}
nav>a:is(:hover,:focus-visible)::after,nav>button:is(:hover,:focus-visible)::after{transform:scaleX(1)}
.primary:is(:hover,:focus-visible):not(:disabled),.primary:active:not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 7px 20px var(--accent-shadow)}
.primary:is(:hover,:focus-visible):not(:disabled){transform:translateY(-2px)}
.primary:active:not(:disabled){transform:translateY(0) scale(.99);box-shadow:0 3px 9px var(--accent-shadow)}
.primary>span,.section-title a>span{display:inline-block;transition:transform 240ms var(--ease-soft)}
.primary:is(:hover,:focus-visible)>span,.section-title a:is(:hover,:focus-visible)>span{transform:translateX(3px)}
.secondary:is(:hover,:focus-visible):not(:disabled),.file-button:is(:hover,:focus-visible){border-color:var(--accent);color:var(--accent);background:#f5faff;box-shadow:0 3px 12px rgba(68,149,233,.09)}
.chip:is(:hover,:focus-visible),.pagination button:is(:hover,:focus-visible):not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-tint)}
.chip.active,.pagination .active{background:var(--accent);border-color:var(--accent);color:#fff}
.chip.active:is(:hover,:focus-visible),.pagination button.active:is(:hover,:focus-visible):not(:disabled){background:var(--accent);color:#fff}
.cart-count{background:var(--accent);color:#fff}
.thumb.active{border-color:var(--accent)}
.section-title a,.shipping,.eyebrow,.description-toggle{color:var(--accent)}
.account-nav a:is(:hover,:focus-visible),.account-nav a.active{background:var(--accent-tint);color:var(--accent)}
.close:is(:hover,:focus-visible),.video-control:is(:hover,:focus-visible),.gallery-arrow:is(:hover,:focus-visible){background:rgba(255,255,255,.96);color:var(--accent);box-shadow:0 3px 13px rgba(25,53,80,.1)}
.upload-tile button:is(:hover,:focus-visible){color:var(--accent);border-color:var(--accent)}
.wish,.card-media>.wish,.gallery-stage>.wish{display:grid;place-items:center;padding:0;line-height:0;color:var(--navy);isolation:isolate}
.wish svg,.card-media>.wish svg,.gallery-stage>.wish svg{display:block;width:22px;height:22px;min-width:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;transform-origin:50% 50%;transition:fill 200ms var(--ease-soft),stroke 200ms var(--ease-soft),transform 220ms var(--ease-soft)}
.wish.active,.wish.active:hover{color:var(--accent)}
.wish.active svg{fill:var(--accent);stroke:var(--accent)}
.wish:is(:hover,:focus-visible):not(:disabled){color:var(--accent);background:#fff;box-shadow:0 3px 13px var(--accent-shadow)}
.wish:active:not(:disabled) svg{transform:scale(.91)}
.wish.wish-confirm svg{animation:heart-confirm 340ms var(--ease-soft)}
@keyframes heart-confirm{0%{transform:scale(.86)}48%{transform:scale(1.12)}100%{transform:scale(1)}}
@keyframes surface-appear{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.product-dialog[open],.panel-dialog[open],.image-viewer[open],.address-dialog[open]{animation:surface-appear 220ms var(--ease-soft)}
@media(hover:hover) and (pointer:fine){
 .card-media .product-image>img,.card-media .product-image>svg{transition:transform 380ms var(--ease-soft);transform-origin:center}
 .card-link:is(:hover,:focus-visible) .product-image>img,.card-link:is(:hover,:focus-visible) .product-image>svg{transform:scale(1.025)}
}
@media(max-width:700px){.wish svg,.card-media>.wish svg,.gallery-stage>.wish svg{width:20px;height:20px;min-width:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
