/* =========================================================
   WIRELESS ACTIVATION — En-tête (topbar, header, méga-menu,
   tiroir mobile, panier coulissant). Repris 1:1 de la maquette.
   Scopé sous .wa-scope + surcharges .wa-shell locales pour ne
   pas dépendre du conteneur Elementor.
   ========================================================= */

.wa-scope .wa-shell{width:min(100% - var(--gutter)*2,var(--shell));margin-inline:auto}

/* ---------- Barre utilitaire ---------- */
.wa-topbar{background:var(--wa-paper);color:var(--wa-grey);font-size:.8rem;border-bottom:1px solid var(--wa-line)}
.wa-topbar .wa-shell{display:flex;flex-wrap:wrap;gap:.5rem 1.6rem;align-items:center;justify-content:space-between;padding-block:.6rem}
.wa-topbar a{color:inherit;text-decoration:none}
.wa-topbar a:hover{color:var(--wa-ink)}
.wa-topbar strong{color:var(--wa-ink);font-weight:600}
.wa-topbar-open{color:var(--wa-green)}
.wa-topbar p{margin:0}
.wa-topbar-right{display:flex;align-items:center;gap:1rem}
.wa-topbar-right .wa-langs{margin:0}
.wa-topbar-wa{display:inline-flex;align-items:center;gap:.35rem;color:#1da851;text-decoration:none;font-weight:600}
.wa-topbar-wa svg{width:16px;height:16px}
.wa-topbar-wa:hover{color:#0f7a3a}

/* ---------- Header ---------- */
.wa-header{position:relative;top:0;z-index:90;background:color-mix(in srgb,var(--wa-paper) 82%,transparent);backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--wa-line);transition:transform .32s var(--ease),border-color .3s var(--ease),box-shadow .3s var(--ease);will-change:transform}
/* Épinglé par JS dès que la barre utilitaire a défilé (position:sticky ne marche
   pas ici : le header est rendu dans un conteneur Elementor court). Le spacer
   évite le saut de contenu quand le header quitte le flux. */
.wa-header.is-fixed{position:fixed;left:0;right:0;top:0;width:100%}
.wa-header-spacer{height:0}
.wa-header.is-stuck{border-bottom-color:var(--wa-line);box-shadow:0 6px 24px rgba(26,21,18,.05)}
/* Descente : masqué ; remontée : version fine condensée */
.wa-header.is-hidden{transform:translateY(-101%)}
.wa-header.is-condensed{background:color-mix(in srgb,var(--wa-paper) 92%,transparent);box-shadow:0 6px 24px rgba(26,21,18,.07)}
.wa-header .wa-shell{display:flex;align-items:center;gap:clamp(12px,2vw,28px);min-height:74px;transition:min-height .28s var(--ease)}
.wa-header.is-condensed .wa-shell{min-height:56px}
.wa-logo{display:flex;align-items:center;gap:.6rem;flex:none;text-decoration:none}
.wa-logo svg{width:34px;height:34px;transition:width .28s var(--ease),height .28s var(--ease)}
.wa-header.is-condensed .wa-logo svg{width:28px;height:28px}
.wa-header.is-condensed .wa-logo-txt em{display:none}
.wa-logo-txt{font-family:var(--font-display);font-weight:700;line-height:1.02;color:var(--wa-ink);font-size:1.02rem;letter-spacing:-.02em}
.wa-logo-txt em{display:block;font-style:italic;font-weight:600;color:var(--wa-ink-2)}

.wa-nav{display:flex;align-items:center;gap:.15rem;margin-inline:auto;list-style:none;margin-block:0;padding:0}
.wa-nav>li{position:static}
.wa-nav>li>a,.wa-nav>li>button{display:inline-flex;align-items:center;gap:.35rem;padding:.6rem .7rem;border-radius:9px;background:none;border:0;cursor:pointer;font-weight:500;font-size:.94rem;color:var(--wa-ink-2);transition:background .2s var(--ease),color .2s var(--ease);font-family:var(--font-body);text-decoration:none;white-space:nowrap}
.wa-nav>li>a:hover,.wa-nav>li>button:hover,.wa-nav>li.is-open>button{background:var(--wa-surface);color:var(--wa-ink)}
.wa-nav .wa-caret{width:9px;height:9px;transition:transform .25s var(--ease)}
.wa-nav>li.is-open .wa-caret{transform:rotate(180deg)}
.wa-nav a[aria-current="page"]{color:var(--wa-orange)}

.wa-search{display:flex;align-items:center;gap:.5rem;background:var(--wa-surface);border:1px solid transparent;border-radius:100px;padding:.5rem .9rem;min-width:190px;transition:border-color .2s var(--ease),background .2s var(--ease)}
.wa-search:focus-within{background:#fff;border-color:var(--wa-line)}
.wa-search input{border:0;background:none;outline:none;width:100%;font-size:.9rem;font-family:var(--font-body)}
.wa-search svg{width:16px;height:16px;color:var(--wa-grey-2);flex:none}

.wa-actions{display:flex;align-items:center;gap:.35rem;flex:none}
.wa-langs{display:inline-flex;align-items:center;background:var(--wa-surface);border:1px solid var(--wa-line);border-radius:100px;padding:2px;margin-right:.35rem}
.wa-lang{display:grid;place-items:center;min-width:34px;height:28px;border-radius:100px;font-family:var(--font-display);font-weight:600;font-size:.78rem;letter-spacing:.02em;color:var(--wa-grey);text-decoration:none;transition:color .2s var(--ease),background .2s var(--ease)}
.wa-lang:hover{color:var(--wa-ink)}
.wa-lang.is-current{background:var(--wa-white);color:var(--wa-ink);box-shadow:0 1px 2px rgba(26,21,18,.06)}
@media (max-width:520px){.wa-langs{display:none}}
.wa-icon-btn{position:relative;display:grid;place-items:center;width:42px;height:42px;border-radius:11px;border:0;background:none;cursor:pointer;color:var(--wa-ink-2);transition:background .2s var(--ease);text-decoration:none}
.wa-icon-btn:hover{background:var(--wa-surface)}
.wa-icon-btn svg{width:20px;height:20px}
.wa-badge{position:absolute;top:5px;right:5px;min-width:17px;height:17px;padding:0 4px;border-radius:100px;background:var(--wa-orange);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center}
.wa-badge[hidden]{display:none}
.wa-burger{display:none}

/* ---------- Méga-menu ---------- */
.wa-mega{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--wa-line);box-shadow:0 26px 44px rgba(17,19,23,.1);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .22s var(--ease),transform .22s var(--ease),visibility .22s}
.wa-nav>li.is-open .wa-mega{opacity:1;visibility:visible;transform:translateY(0)}
.wa-mega-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,3vw,44px);padding-block:34px 38px}
.wa-mega h4{font-size:.78rem;letter-spacing:.13em;text-transform:uppercase;color:var(--wa-grey-2);margin:0 0 .9rem;font-family:var(--font-display)}
.wa-mega ul{list-style:none;margin:0;padding:0}
.wa-mega li+li{margin-top:.45rem}
.wa-mega li a{font-size:.94rem;color:var(--wa-ink-2);text-decoration:none}
.wa-mega li a:hover{color:var(--wa-orange)}
.wa-mega-promo{background:var(--wa-orange-soft);border-radius:var(--radius);padding:22px;align-self:start}
.wa-mega-promo p{font-size:.9rem;color:var(--wa-ink-2);margin:.3rem 0 .8rem}
.wa-mega-promo strong{display:block;font-family:var(--font-display);color:var(--wa-ink);margin-bottom:.3rem}
.wa-service-link{margin-top:auto;display:inline-flex;align-items:center;gap:.45rem;font-family:var(--font-display);font-weight:600;font-size:.92rem;color:var(--wa-orange);cursor:pointer;text-decoration:none}
.wa-service-link svg{width:15px;height:15px;transition:transform .25s var(--ease)}
.wa-service-link:hover svg{transform:translateX(4px)}

/* ---------- Tiroir latéral (mobile) ---------- */
.wa-drawer{position:fixed;inset:0 0 0 auto;width:min(88vw,380px);z-index:120;background:#fff;padding:22px var(--gutter) 40px;overflow-y:auto;transform:translateX(100%);transition:transform .35s var(--ease);box-shadow:-20px 0 50px rgba(17,19,23,.16)}
.wa-drawer.is-open{transform:translateX(0)}
.wa-drawer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.wa-drawer details{border-bottom:1px solid var(--wa-line)}
.wa-drawer summary{list-style:none;cursor:pointer;padding:.95rem 0;font-family:var(--font-display);font-weight:600;color:var(--wa-ink);display:flex;justify-content:space-between;align-items:center}
.wa-drawer summary::-webkit-details-marker{display:none}
.wa-drawer summary::after{content:"+";color:var(--wa-orange);font-size:1.2rem}
.wa-drawer details[open] summary::after{content:"–"}
.wa-drawer details ul{list-style:none;padding:0 0 .9rem .2rem;margin:0}
.wa-drawer details li+li{margin-top:.55rem}
.wa-drawer details li a{text-decoration:none;color:var(--wa-ink-2)}
.wa-drawer-link{display:block;padding:.95rem 0;border-bottom:1px solid var(--wa-line);font-family:var(--font-display);font-weight:600;color:var(--wa-ink);text-decoration:none}
.wa-drawer-cta{display:grid;gap:.6rem;margin-top:24px}
.wa-overlay{position:fixed;inset:0;z-index:110;background:rgba(17,19,23,.45);opacity:0;visibility:hidden;transition:opacity .3s var(--ease),visibility .3s}
.wa-overlay.is-open{opacity:1;visibility:visible}

/* ---------- Panier coulissant ---------- */
.wa-cart{position:fixed;inset:0 0 0 auto;width:min(92vw,420px);z-index:130;background:var(--wa-white);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .35s var(--ease);box-shadow:-20px 0 60px rgba(26,21,18,.18)}
.wa-cart.is-open{transform:translateX(0)}
.wa-cart-top{display:flex;justify-content:space-between;align-items:center;padding:18px var(--gutter);border-bottom:1px solid var(--wa-line);flex:none}
.wa-cart-top h3{margin:0;font-family:var(--font-display);font-size:1.05rem;letter-spacing:-.02em}
/* Le corps + le contenu du widget forment une colonne flex : articles qui
   défilent, pied (sous-total + boutons) épinglé en bas. */
.wa-cart-body{flex:1;min-height:0;display:flex;flex-direction:column;padding:0}
.wa-cart-body .widget_shopping_cart_content{flex:1;min-height:0;display:flex;flex-direction:column}
.wa-cart-scroll{flex:1;min-height:0;overflow-y:auto;padding:8px var(--gutter)}
.wa-cart-body .woocommerce-mini-cart__empty-message{text-align:center;color:var(--wa-grey);padding:48px 24px}

/* Articles */
.wa-cart-body ul.cart_list{list-style:none;margin:0;padding:0}
.wa-cart-body li.mini_cart_item{position:relative;padding:16px 30px 16px 0;border-top:1px solid var(--wa-line)}
.wa-cart-body li.mini_cart_item:first-child{border-top:0}
.wa-cart-body li.mini_cart_item>a:not(.remove){display:flex;align-items:center;gap:12px;text-decoration:none}
.wa-cart-body li.mini_cart_item img{width:54px !important;height:54px;object-fit:cover;border-radius:10px;background:var(--wa-surface);float:none !important;margin:0 !important;flex:none}
.wa-cart-body li.mini_cart_item .wa-mc-name{font-family:var(--font-display);font-weight:600;font-size:.92rem;color:var(--wa-ink);letter-spacing:-.01em;line-height:1.3}
.wa-cart-body li.mini_cart_item .quantity{display:block;margin:6px 0 0 66px;font-size:.86rem;color:var(--wa-grey);font-variant-numeric:tabular-nums}
.wa-cart-body li.mini_cart_item a.remove{position:absolute;right:0;top:16px;width:26px;height:26px;display:grid;place-items:center;border-radius:100px;color:var(--wa-grey-2) !important;font-size:1.05rem;line-height:1;text-decoration:none;transition:color .2s,background .2s}
.wa-cart-body li.mini_cart_item a.remove:hover{color:var(--wa-orange) !important;background:var(--wa-orange-soft) !important}

/* Pied épinglé */
.wa-cart-foot{flex:none;padding:18px var(--gutter) calc(18px + env(safe-area-inset-bottom));border-top:1px solid var(--wa-line);background:var(--wa-surface)}
.wa-cart-foot .woocommerce-mini-cart__total{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 14px;font-family:var(--font-display)}
.wa-cart-foot .woocommerce-mini-cart__total strong{font-weight:600;color:var(--wa-ink-2)}
.wa-cart-foot .woocommerce-mini-cart__total .amount{font-size:1.35rem;color:var(--wa-ink);font-weight:700;font-variant-numeric:tabular-nums}
.wa-cart-foot .woocommerce-mini-cart__buttons{display:grid;gap:10px;margin:0}
.wa-cart-foot .woocommerce-mini-cart__buttons a{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-display);font-weight:600;font-size:.98rem;padding:.85rem 1.4rem;border-radius:100px;text-decoration:none;transition:transform .2s var(--ease),box-shadow .2s var(--ease)}
.wa-cart-foot .woocommerce-mini-cart__buttons a.button{background:var(--wa-white);color:var(--wa-ink);border:1px solid var(--wa-line);order:2}
.wa-cart-foot .woocommerce-mini-cart__buttons a.button:hover{border-color:var(--wa-ink)}
.wa-cart-foot .woocommerce-mini-cart__buttons a.checkout{background:var(--wa-orange);color:#fff;order:1;box-shadow:0 1px 2px rgba(184,66,15,.22),0 10px 24px -12px rgba(236,90,34,.55)}
.wa-cart-foot .woocommerce-mini-cart__buttons a.checkout:hover{transform:translateY(-1.5px)}

/* ---------- Responsive ---------- */
@media (max-width:1140px){
  .wa-nav>li>a,.wa-nav>li>button{padding:.6rem .55rem;font-size:.88rem}
}
@media (max-width:1080px){
  .wa-search{display:none}
  .wa-mega-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:940px){
  .wa-nav{display:none}
  .wa-burger{display:grid}
  .wa-actions{margin-left:auto}
}
@media (max-width:640px){
  .wa-topbar .wa-shell{justify-content:center;text-align:center}
}
