/* Header icons: search, mini cart, account (theme colours). Used by both the original and the simplified design. */
.iwh{--iwh-p:var(--primary,#D81D88);--iwh-s:var(--secondary,#662F89);--iwh-a:var(--accent,#F2B01E);display:flex;align-items:center;justify-content:flex-end;gap:10px;font-family:var(--font-body,'Montserrat',sans-serif);line-height:1.4}
.iwh *{box-sizing:border-box}
.iwh svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.iwh-slot{display:flex!important;justify-content:flex-end;align-items:center;width:auto!important;max-width:none!important}
.iwh-item{position:relative}
.iwh .iwh-icon{position:relative;width:44px;height:44px;border-radius:50%;border:1.5px solid #f2cfe4!important;background:#fff!important;color:var(--iwh-p)!important;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0!important;margin:0;box-shadow:0 2px 10px rgba(216,29,136,.10);transition:background .2s,border-color .2s,transform .2s;line-height:1;min-height:0}
.iwh .iwh-icon:hover,.iwh .iwh-item.is-open .iwh-icon{background:#fdf1f8!important;border-color:var(--iwh-p)!important}
.iwh .iwh-icon:focus-visible{outline:3px solid rgba(216,29,136,.35);outline-offset:2px}
.iwh-badge{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--iwh-a);color:#3a2a00;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid #fff}
.iwh-badge[hidden]{display:none}
.iwh-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--iwh-p),var(--iwh-s));color:#fff;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center}
.iwh-dot{position:absolute;right:1px;bottom:1px;width:11px;height:11px;border-radius:50%;background:#22c55e;border:2px solid #fff}

/* dropdown panels */
.iwh-panel{position:absolute;top:calc(100% + 14px);right:-8px;z-index:10000;background:#fff;border-radius:16px;box-shadow:0 18px 50px rgba(45,20,60,.20);border:1px solid #f1e3ee;padding:16px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s,transform .18s,visibility .18s;text-align:left;color:#4b4f58;font-size:14px}
.iwh-panel::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;border-radius:16px 16px 0 0;background:linear-gradient(90deg,var(--iwh-p),var(--iwh-s))}
.iwh-panel::after{content:"";position:absolute;top:-7px;right:22px;width:14px;height:14px;background:var(--iwh-s);transform:rotate(45deg);border-radius:3px;z-index:-1}
.iwh-item.is-open .iwh-panel{opacity:1;visibility:visible;transform:none}
.iwh-panel--cart{width:350px}
.iwh-panel--search{width:330px;padding:12px}
.iwh-panel--account{width:250px;padding:16px 0 8px}

/* mini cart */
.iwh-lines{list-style:none;margin:0!important;padding:0!important;max-height:330px;overflow-y:auto}
.iwh-line{display:grid;grid-template-columns:56px minmax(0,1fr) auto 18px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #f3e8f0;margin:0!important}
.iwh-line__img{display:block;width:56px;height:56px;border-radius:10px;overflow:hidden;background:#fdf1f8}
.iwh-line__img img{width:100%;height:100%;object-fit:cover;display:block}
.iwh-line__name{display:block;font-weight:600;color:#2d2236!important;text-decoration:none!important;font-size:13px;line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.iwh-line__name:hover{color:var(--iwh-p)!important}
.iwh-line__price{display:block;font-weight:700;color:var(--iwh-s);font-size:13px;margin-top:2px}
.iwh-line__digital{font-size:10px;font-weight:700;letter-spacing:.06em;color:var(--iwh-p);background:#fdf1f8;border-radius:6px;padding:4px 7px}
.iwh-stepper{display:inline-flex;align-items:center;border:1.5px solid #f2cfe4;border-radius:8px;overflow:hidden;background:#fffafd}
.iwh .iwh-stepper button{width:26px;height:26px;border:0!important;background:none!important;color:var(--iwh-s)!important;font-weight:700;font-size:15px;cursor:pointer;padding:0!important;line-height:1;min-height:0}
.iwh .iwh-stepper button:hover{background:#fdf1f8!important;color:var(--iwh-p)!important}
.iwh .iwh-stepper button[disabled]{opacity:.35;cursor:not-allowed}
.iwh-stepper span{min-width:22px;text-align:center;font-weight:700;font-size:13px;color:#2d2236}
.iwh .iwh-remove{width:18px;height:18px;border:0!important;background:none!important;color:#b5a8bc!important;font-size:18px;line-height:1;cursor:pointer;padding:0!important;min-height:0}
.iwh .iwh-remove:hover{color:#c62828!important}
.iwh-mini.is-busy{opacity:.55;pointer-events:none}
.iwh-subtotal{display:flex;justify-content:space-between;align-items:center;padding:14px 0 12px;font-weight:700;color:#2d2236}
.iwh-subtotal b{font-size:16px;color:var(--iwh-s)}
.iwh .iwh-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;border-radius:10px;background:linear-gradient(100deg,var(--iwh-p),#e8479f);color:#fff!important;font-weight:700;font-size:14px;text-decoration:none!important;margin-top:8px;border:0;letter-spacing:.02em;text-transform:none;transition:filter .2s}
.iwh .iwh-btn:hover{filter:brightness(1.07)}
.iwh .iwh-btn.is-dark{background:linear-gradient(100deg,var(--iwh-s),#4a1f66)}
.iwh .iwh-btn.is-ghost{background:#fff;color:var(--iwh-s)!important;border:1.5px solid var(--iwh-s)}
.iwh-empty{text-align:center;padding:14px 4px 4px}
.iwh-empty svg{width:42px;height:42px;color:var(--iwh-p);margin-bottom:6px}
.iwh-empty p{margin:0 0 6px!important;font-weight:600;color:#2d2236}

/* search */
.iwh-searchform{display:flex;gap:0;border:1.5px solid #f2cfe4;border-radius:10px;overflow:hidden;margin:0!important}
.iwh .iwh-searchform input{flex:1;min-width:0;height:44px!important;border:0!important;padding:0 14px!important;font:inherit;font-size:14px!important;outline:0;box-shadow:none!important;background:#fff!important;color:#2d2236!important;margin:0!important;border-radius:0!important}
.iwh .iwh-searchform button{width:46px;height:44px;border:0!important;border-radius:0!important;background:linear-gradient(100deg,var(--iwh-p),var(--iwh-s))!important;color:#fff!important;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0!important;min-height:0}
.iwh-searchform:focus-within{border-color:var(--iwh-p);box-shadow:0 0 0 3px rgba(216,29,136,.12)}

/* account */
.iwh-who{padding:4px 18px 12px;border-bottom:1px solid #f3e8f0;margin-bottom:6px}
.iwh-who b{display:block;color:var(--iwh-s);font-size:15px}
.iwh-who small{display:block;color:#8a7f92;font-size:12px;margin-top:2px;overflow-wrap:anywhere;line-height:1.45}
.iwh-links a{display:block;padding:9px 18px;color:#2d2236!important;text-decoration:none!important;font-size:14px;font-weight:500}
.iwh-links a:hover{background:#fdf1f8;color:var(--iwh-p)!important}
.iwh-logout{margin:6px 0 0!important;border-top:1px solid #f3e8f0;padding-top:4px}
.iwh .iwh-logout button{width:100%;text-align:left;padding:9px 18px!important;border:0!important;background:none!important;color:#c62828!important;font:inherit;font-size:14px;font-weight:600;cursor:pointer;min-height:0;text-transform:none;letter-spacing:0}
.iwh .iwh-logout button:hover{background:#fdf1f8!important}
.iwh-panel--account .iwh-btn{width:auto;margin:8px 16px 0}
.iwh-panel--account .iwh-who{margin-bottom:4px}

/* phones: panels open full width under the header */
@media (max-width:767px){
  .iwh{gap:7px}
  .iwh .iwh-icon{width:40px;height:40px}
  .iwh-avatar{width:30px;height:30px;font-size:13px}
  .iwh-item{position:static}
  .iwh-panel{position:fixed;top:var(--iwh-top,72px);left:10px;right:10px;width:auto!important}
  .iwh-panel::after{display:none}
}

/* original-design header: the old search column disappears, the icons column takes its space */
.elementor-column:has(> .elementor-widget-wrap > .iwh-gone){display:none!important}
.elementor-column:has(> .elementor-widget-wrap > .iwh-slot){width:auto!important;flex:1 0 auto!important;min-width:150px}
.elementor-column:has(> .elementor-widget-wrap > .iwh-slot)>.elementor-widget-wrap{justify-content:flex-end!important;align-content:center!important}
