/* UTF Mega Menu v1.0.0 */
:root{--utfmm-accent:#cc0000;--utfmm-ink:#111;--utfmm-muted:#6b6b6b;--utfmm-line:#ebe8e3;--utfmm-soft:#f3f1ee;--utfmm-top:120px}

/* Divi: keep the menu module visible at every width and hide its own hamburger */
.utfmm-on .et_pb_menu .et_mobile_nav_menu{display:none!important}
.utfmm-on .et_pb_menu .et_pb_menu__menu{display:flex!important}
.utfmm-on .et_pb_menu .et_pb_menu__menu>nav{width:100%}

/* ---------- Bar ----------
   Divi styles menus with an ID-based rule on shop, category and product pages (.et-db #et-boc ...), which would
   shrink the menu to 16px and turn Sale black there. The !important rules below keep the bar identical on every page. */
nav.utfmm{display:flex;align-items:center;justify-content:center;width:100%}
nav.utfmm .utfmm-bar{display:flex;align-items:center;justify-content:center;gap:30px;margin:0;padding:0;list-style:none}
nav.utfmm .utfmm-li{margin:0;padding:0;list-style:none}
nav.utfmm .utfmm-bar a.utfmm-top{display:flex!important;align-items:center;gap:6px;padding:10px 2px!important;margin:0!important;font-family:inherit;font-size:18px!important;font-weight:400!important;line-height:1.2!important;letter-spacing:normal!important;text-transform:none!important;color:var(--utfmm-ink)!important;opacity:1!important;text-decoration:none!important;border-bottom:2px solid transparent;transition:border-color .15s}
nav.utfmm .utfmm-bar a.utfmm-top:hover,nav.utfmm .utfmm-bar a.utfmm-top[aria-expanded="true"]{border-bottom-color:var(--utfmm-ink);color:var(--utfmm-ink)}
nav.utfmm .utfmm-bar a.utfmm-top.is-accent{color:var(--utfmm-accent)!important;font-weight:600!important}
nav.utfmm .utfmm-bar a.utfmm-top.is-accent[aria-expanded="true"],nav.utfmm .utfmm-bar a.utfmm-top.is-accent:hover{border-bottom-color:var(--utfmm-accent)}
nav.utfmm .utfmm-top .utfmm-i{transition:transform .2s}
nav.utfmm .utfmm-top[aria-expanded="true"] .utfmm-i{transform:rotate(180deg)}
nav.utfmm .utfmm-burger{display:none;background:none!important;border:0!important;padding:8px!important;margin:0;color:var(--utfmm-ink)!important;cursor:pointer;min-width:44px;min-height:44px;align-items:center;justify-content:center}
@media (max-width:980px){
  nav.utfmm{justify-content:flex-start}
  nav.utfmm .utfmm-bar{display:none}
  nav.utfmm .utfmm-burger{display:inline-flex}
  .utfmm-layer{display:none!important}
}

/* ---------- Panels ---------- */
.utfmm-overlay{position:fixed;left:0;right:0;bottom:0;top:var(--utfmm-top);background:rgba(17,17,17,.45);opacity:0;visibility:hidden;transition:opacity .15s ease-out,visibility .15s;z-index:99990}
.utfmm-layer[data-blur="1"] .utfmm-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.utfmm-layer[data-overlay="1"].is-open .utfmm-overlay{opacity:1;visibility:visible}
.utfmm-panel{position:fixed;left:0;right:0;top:var(--utfmm-top);z-index:99991;background:#fff;box-shadow:0 24px 48px rgba(0,0,0,.18);display:none;max-height:calc(100vh - var(--utfmm-top));overflow-y:auto;overscroll-behavior:contain;color:var(--utfmm-ink);font-size:15px;line-height:1.35;text-align:left;font-family:inherit;border-top:1px solid var(--utfmm-line)}
/* The panel appears instantly and solid (a fade lets the page show through for a moment, which reads as flicker); only the dimmed background fades. */
.utfmm-panel.is-open{display:block}
.utfmm-overlay{will-change:opacity}
@media (prefers-reduced-motion:reduce){.utfmm-panel.is-open{animation:none}.utfmm-overlay{transition:none}}
.utfmm-panel a{text-decoration:none;color:var(--utfmm-ink)}
.utfmm-wrap{max-width:1600px;margin:0 auto;padding:32px 48px 0;box-sizing:border-box}
.utfmm-grid{display:grid;grid-template-columns:repeat(var(--utfmm-cols,4),minmax(0,1fr)) 340px;gap:40px;align-items:start}
.utfmm-grid--empty{grid-template-columns:minmax(0,1fr) 340px;padding-bottom:32px;align-items:center}
.utfmm-col{display:flex;flex-direction:column;gap:22px;min-width:0}
.utfmm-block{display:flex;flex-direction:column;gap:2px}
.utfmm-h{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--utfmm-muted);margin:0 0 10px}
.utfmm-n{font-size:13px;color:var(--utfmm-muted);font-variant-numeric:tabular-nums}
.utfmm-muted{color:var(--utfmm-muted);font-size:13px}
.utfmm-big{font-size:30px;font-weight:600;line-height:1.15;margin:0 0 10px}

.utfmm-panel a.utfmm-type{display:flex;align-items:center;gap:12px;padding:6px;margin:0 -6px;border-radius:12px;transition:background .15s}
.utfmm-panel a.utfmm-type:hover{background:var(--utfmm-soft)}
.utfmm-ibox{width:52px;height:52px;border-radius:12px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--utfmm-soft);color:var(--utfmm-ink);transition:background .15s,color .15s;overflow:hidden}
.utfmm-ibox img{width:100%;height:100%;object-fit:cover;display:block}
a.utfmm-type:hover .utfmm-ibox:not(.utfmm-ibox--tile){background:var(--utfmm-ink);color:#fff}
.utfmm-tt{display:flex;flex-direction:column;min-width:0}
.utfmm-tl{font-size:16px;font-weight:600;display:flex;align-items:center;gap:8px}
.utfmm-ts{font-size:13px;color:var(--utfmm-muted)}
.utfmm-badge{font-size:11px;font-weight:700;background:var(--utfmm-accent);color:#fff;border-radius:999px;padding:2px 8px;line-height:1.4}

.utfmm-sws{display:grid;grid-template-columns:minmax(0,1fr);row-gap:0}
.utfmm-panel a.utfmm-sw{display:flex;align-items:center;gap:10px;padding:6px 8px;margin:0 -8px;border-radius:8px}
.utfmm-panel a.utfmm-sw:hover{background:var(--utfmm-soft)}
.utfmm-dot{width:24px;height:24px;border-radius:50%;flex:none;border:1px solid rgba(0,0,0,.12)}
.utfmm-sl{flex:1;min-width:0}

.utfmm-chips{display:flex;flex-wrap:wrap;gap:8px}
a.utfmm-chip,.utfmm-panel a.utfmm-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #d9d6d1;border-radius:999px;padding:7px 12px;font-size:14px;color:var(--utfmm-ink);text-decoration:none;transition:background .15s,color .15s,border-color .15s}
a.utfmm-chip:hover{background:var(--utfmm-ink);border-color:var(--utfmm-ink);color:#fff}
a.utfmm-chip:hover .utfmm-n{color:#ddd}

.utfmm-panel a.utfmm-link{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 10px;margin:0 -10px;border-radius:8px}
.utfmm-panel a.utfmm-link:hover{background:var(--utfmm-soft)}

.utfmm-panel a.utfmm-all{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;font-weight:600;border-bottom:1px solid var(--utfmm-ink);padding-bottom:2px;margin-top:-6px}

.utfmm-promo{gap:12px}
.utfmm-panel a.utfmm-card{position:relative;display:block;height:240px;border-radius:14px;overflow:hidden;color:#fff}
.utfmm-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.utfmm-card:hover img{transform:scale(1.04)}
.utfmm-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,12,6,.15),rgba(20,12,6,.6))}
.utfmm-card--sale .utfmm-card-shade{background:var(--utfmm-accent);opacity:.82}
.utfmm-card-body{position:absolute;inset:0;padding:22px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff}
.utfmm-kicker{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.9}
.utfmm-card-title{font-size:27px;font-weight:600;margin:4px 0 2px;line-height:1.1}
.utfmm-card-text{font-size:15px;opacity:.92;margin-bottom:14px}
.utfmm-btn{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;background:#fff;color:var(--utfmm-ink);border-radius:999px;padding:10px 18px;font-size:15px;font-weight:600;transition:background .15s,color .15s}
.utfmm-card:hover .utfmm-btn{background:var(--utfmm-ink);color:#fff}
a.utfmm-util{display:flex;gap:12px;align-items:flex-start;padding:13px 14px;border:1px solid #e7e4df;border-radius:12px;color:var(--utfmm-ink);text-decoration:none;transition:border-color .15s}
a.utfmm-util:hover{border-color:var(--utfmm-ink)}
a.utfmm-util strong{display:block;font-size:15px;font-weight:600}
a.utfmm-util .utfmm-i{flex:none;margin-top:1px}

.utfmm-foot{margin-top:26px;border-top:1px solid var(--utfmm-line);padding:14px 0;display:flex;justify-content:space-between;gap:16px;font-size:14px;color:#555}
.utfmm-panel .utfmm-foot a{font-weight:600}

@media (min-width:981px) and (max-width:1279px){
  .utfmm-wrap{padding:26px 28px 0}
  .utfmm-grid{gap:26px;grid-template-columns:repeat(var(--utfmm-cols,4),minmax(0,1fr)) 260px}
  .utfmm-card{height:200px}
}

/* ---------- Mobile drawer ---------- */
.utfmm-drawer{position:fixed;inset:0;z-index:2147483000;background:#fff;color:var(--utfmm-ink);display:flex;flex-direction:column;transform:translateX(-100%);transition:transform .25s ease;font-size:16px;line-height:1.35;text-align:left}
.utfmm-drawer[hidden]{display:none}
.utfmm-drawer.is-open{transform:none}
.utfmm-drawer a{color:var(--utfmm-ink);text-decoration:none}
.utfmm-dhead{flex:none;height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 8px 0 20px;border-bottom:1px solid var(--utfmm-line)}
.utfmm-dtitle{font-weight:700;font-size:17px}
.utfmm-close{background:none;border:0;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;color:var(--utfmm-ink);cursor:pointer}
.utfmm-screens{position:relative;flex:1;overflow:hidden}
.utfmm-screen{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;padding:0 20px 28px;box-sizing:border-box;background:#fff;transform:translateX(100%);visibility:hidden;transition:transform .25s ease,visibility .25s}
.utfmm-screen.is-active{transform:none;visibility:visible}
.utfmm-screen.is-behind{transform:translateX(-25%);visibility:hidden}
@media (prefers-reduced-motion:reduce){.utfmm-drawer,.utfmm-screen{transition:none}}
.utfmm-search{display:flex;align-items:center;gap:10px;border:1px solid #d9d6d1;border-radius:999px;padding:0 16px;height:46px;margin:14px 0 6px;color:var(--utfmm-muted)}
.utfmm-search input[type=search]{border:0!important;outline:0;font:inherit;font-size:16px;flex:1;background:transparent!important;padding:0!important;min-width:0;color:var(--utfmm-ink);box-shadow:none!important}
.utfmm-row{width:calc(100% + 40px);margin:0 -20px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:0;border-bottom:1px solid #eeebe6;padding:0 20px;min-height:56px;font:inherit;font-size:17px;color:var(--utfmm-ink);cursor:pointer;text-align:left;box-sizing:border-box}
.utfmm-row:hover,.utfmm-row:active{background:#f6f4f1}
.utfmm-row.is-accent{color:var(--utfmm-accent);font-weight:600}
.utfmm-rows{display:flex;flex-direction:column}
.utfmm-rows--bleed{margin-top:18px;border-top:1px solid #eeebe6}
.utfmm-back{display:inline-flex;align-items:center;gap:6px;background:none;border:0;font:inherit;font-size:15px;color:var(--utfmm-ink);padding:12px 0;min-height:44px;cursor:pointer}
.utfmm-stitle{font-size:28px;font-weight:600;margin:2px 0 16px}
.utfmm-mtypes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:20px}
.utfmm-mtype{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:600}
.utfmm-mtype .utfmm-ibox{width:100%;height:84px}
.utfmm-msws{display:flex;gap:4px;overflow-x:auto;padding-bottom:6px;margin:0 -20px;padding-left:20px;padding-right:20px}
.utfmm-msw{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:13px;min-width:66px}
.utfmm-msw .utfmm-dot{width:44px;height:44px}
.utfmm-mall{margin-top:22px;display:flex;justify-content:center;align-items:center;height:52px;border-radius:999px;background:var(--utfmm-ink);color:#fff!important;font-weight:600}
.utfmm-mquick{display:flex;flex-direction:column;gap:10px;margin-top:22px}
html.utfmm-lock,html.utfmm-lock body{overflow:hidden!important}
