/* Header cart icon */
.mno-cart-item{display:flex!important;align-items:center}
.mno-cart-link{position:relative;display:inline-flex;align-items:center;color:#032635!important;padding:6px}
.mno-cart-link:hover{color:#327189!important}
.mno-cart-count{position:absolute;top:-4px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:#327189;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center}
.mno-cart-count.mno-empty{background:#b9c4c9}
.mno-cart-item.mno-bump .mno-cart-link{animation:mnoBump .5s}
@keyframes mnoBump{0%{transform:scale(1)}30%{transform:scale(1.25)}100%{transform:scale(1)}}

/* Quick-view modal */
body.mno-qv-open{overflow:hidden}
.mno-qv{position:fixed;inset:0;z-index:99999;display:none}
.mno-qv.is-open{display:block}
.mno-qv__overlay{position:absolute;inset:0;background:rgba(2,20,30,.6);backdrop-filter:blur(2px)}
.mno-qv__box{position:relative;background:#fff;max-width:820px;width:calc(100% - 32px);max-height:90vh;overflow:auto;margin:5vh auto;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.35);animation:mnoIn .2s ease}
@keyframes mnoIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.mno-qv__close{position:absolute;top:10px;right:14px;z-index:3;border:0;background:transparent;font-size:30px;line-height:1;color:#666;cursor:pointer}
.mno-qv__close:hover{color:#032635}
.mno-qv__loading{padding:60px;text-align:center;color:#777}
.mno-qv__body{display:flex;flex-wrap:wrap;gap:24px;padding:26px}
.mno-qv__media{flex:1 1 300px;max-width:360px}
.mno-qv__media img{width:100%;height:auto;border-radius:12px}
.mno-qv__info{flex:1 1 320px;min-width:280px}
.mno-qv__title{color:#032635;font-size:22px;font-weight:800;margin:4px 0 10px;line-height:1.2}
.mno-qv__price{font-size:22px;font-weight:700;color:#000;margin-bottom:12px}
.mno-qv__price del{color:#999;font-weight:400;margin-right:8px}
.mno-qv__price ins{text-decoration:none;color:#e84e4e}
.mno-qv__desc{color:#555;font-size:14px;line-height:1.6;margin-bottom:16px}
.mno-qv__body .variations{width:100%;margin-bottom:12px}
.mno-qv__body .variations td,.mno-qv__body .variations th{display:block;width:100%;text-align:left;padding:4px 0}
.mno-qv__body .variations label{font-weight:700;color:#032635}
.mno-qv__body .variations select{width:100%;padding:12px;border:1px solid #ccc;border-radius:8px;font-size:15px}
.mno-qv__body .reset_variations{display:inline-block;margin:6px 0;font-size:12px;color:#777}
.mno-qv__body .single_variation .price{font-size:20px;font-weight:700;color:#000;margin:8px 0}
.mno-qv__body .quantity input{width:70px;padding:10px;border:1px solid #ccc;border-radius:8px;margin-right:8px}
.mno-qv__body .single_add_to_cart_button{background:#032635!important;color:#fff!important;border:0;border-radius:8px;padding:14px 26px;font-weight:700;cursor:pointer}
.mno-qv__body .single_add_to_cart_button:hover{background:#327189!important}
.mno-qv__body .single_add_to_cart_button.disabled{opacity:.5;cursor:not-allowed}
.mno-qv__body .single_add_to_cart_button.loading{opacity:.7}
.mno-qv__full{display:inline-block;margin-top:14px;color:#327189;font-size:13px;font-weight:600}
.mno-qv__err{background:#fde8e8;color:#b02a2a;padding:10px 12px;border-radius:8px;margin-bottom:12px;font-size:14px}
.mno-qv__toast{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);background:#032635;color:#fff;padding:12px 22px;border-radius:30px;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.25);animation:mnoIn .2s}
@media(max-width:560px){.mno-qv__body{padding:18px}.mno-qv__box{margin:3vh auto;max-height:94vh}}

/* --- Mobile floating cart button (FAB) --- */
.mno-cart-fab{display:none}
@media(max-width:921px){
  .mno-cart-fab{display:inline-flex;position:fixed;right:16px;bottom:16px;z-index:9998;width:54px;height:54px;border-radius:50%;background:#032635;color:#fff!important;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(2,20,30,.35)}
  .mno-cart-fab:hover{background:#327189}
  .mno-cart-fab .mno-cart-count{position:absolute;top:-3px;right:-3px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#e84e4e;color:#fff;font-size:12px;font-weight:700;line-height:20px;text-align:center;border:2px solid #fff}
  .mno-cart-fab .mno-cart-count.mno-empty{display:none}
  .mno-cart-item{display:none!important} /* the nav cart lives inside the collapsed menu on mobile */
}
/* --- Top announcement bar: never clip on small screens --- */
@media(max-width:600px){
  .mno-topbar{font-size:11px;padding:7px 8px;line-height:1.5;white-space:normal}
  .mno-topbar span{margin:0 7px;display:inline-block}
}

/* --- Fix: Astra mobile hamburger toggle got hit by global button bg --- */
.menu-toggle,button.menu-toggle,.main-header-menu-toggle,.ast-mobile-menu-trigger-minimal,.ast-mobile-menu-trigger-fill{
  background:transparent!important;border:0!important;box-shadow:none!important;color:#032635!important
}
.menu-toggle:hover,.main-header-menu-toggle:hover{background:transparent!important;color:#327189!important}
.mobile-menu-toggle-icon,.menu-toggle .ast-mobile-svg,.menu-toggle svg{color:#032635!important;fill:#032635!important}
.ast-button-wrap .menu-toggle[aria-expanded="true"]{background:transparent!important}

/* --- Sticky header (follows on scroll) --- */
.site-header{position:sticky;top:0;z-index:999;background:#fff}
.site-header.ast-header-stuck,.ast-sticky-active .site-header{box-shadow:0 2px 10px rgba(2,20,30,.10)}
/* subtle shadow whenever it's stuck to the top */
.site-header{transition:box-shadow .2s}
