/**
 * Header v2 - layout "mega shop" (riferimento Bricksify) con i contenuti Cameli.
 */
.cm-hdr { --hd-ink:#111; --hd-muted:#6b6b6b; --hd-line:#ececec; --hd-soft:#f6f5f3; --hd-ease:cubic-bezier(.2,.7,.2,1); background:#fff; border-bottom:1px solid var(--hd-line); color:var(--hd-ink); position:relative; }
.cm-hdr__inner.brxe-container { width:100%; max-width:1360px; padding-left:1.5rem !important; padding-right:1.5rem !important; margin:0 auto; display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); grid-template-areas:"left logo right" "nav nav nav"; align-items:center; column-gap:2.4rem; position:relative; padding:1rem 0 0; }
.cm-hdr__left { grid-area:left; display:flex; flex-direction:row; align-items:center; gap:1.6rem; width:auto; }
.cm-hdr__logo { grid-area:logo; width:auto; align-items:center; }
.cm-hdr__right { grid-area:right; display:flex; flex-direction:row; justify-content:flex-end; align-items:center; gap:1.6rem; width:auto; }
.cm-hdr__right > *, .cm-hdr__left > * { width:auto; flex:none; }
.cm-hdr__left .brxe-icon-box { font-size:1.3rem; color:var(--hd-ink); }
.cm-hdr__left .brxe-icon-box a { color:inherit; }

/* Ricerca: pulsante a pillola */
.cm-hdr__search > ul > li > .brx-submenu-toggle { display:inline-flex; align-items:center; gap:.8rem; height:4rem; padding:0 1.6rem 0 1.4rem; border:1px solid var(--hd-line); border-radius:999px; background:var(--hd-soft); cursor:pointer; transition:border-color .2s, background .2s; }
.cm-hdr__search > ul > li > .brx-submenu-toggle:hover { border-color:var(--hd-ink); background:#fff; }
.cm-hdr__search > ul > li > .brx-submenu-toggle::after { content:'Cerca un prodotto'; font-size:1.3rem; color:var(--hd-muted); }
.cm-hdr__search .brx-dropdown-content { border-radius:16px !important; border:1px solid var(--hd-line); box-shadow:0 24px 48px -24px rgba(17,17,17,.25) !important; }

/* Navigazione desktop */
.cm-hdr__nav { grid-area:nav; justify-self:center; position:static !important; width:auto; }
.cm-hdr__nav > ul { display:flex; flex-direction:row; align-items:center; gap:.2rem; position:static; margin:0; padding:0; }
.cm-hdr__nav > ul > li { position:static; }
.cm-hdr__nav > ul > li > a, .cm-hdr__nav > ul > li > .brx-submenu-toggle { position:relative; display:inline-flex; align-items:center; gap:.4rem; padding:1.4rem 1.2rem 1.6rem; font-size:1.4rem; font-weight:500; color:var(--hd-ink); letter-spacing:.01em; }
.cm-hdr__nav > ul > li > a::after, .cm-hdr__nav > ul > li > .brx-submenu-toggle::after { content:''; position:absolute; left:1.2rem; right:1.2rem; bottom:1rem; height:1.5px; background:currentColor; transform:scaleX(0); transform-origin:left; transition:transform .3s var(--hd-ease); }
.cm-hdr__nav > ul > li:hover > a::after, .cm-hdr__nav > ul > li.open > .brx-submenu-toggle::after, .cm-hdr__nav > ul > li:hover > .brx-submenu-toggle::after, .cm-hdr__nav > ul > li > a[aria-current]::after { transform:scaleX(1); }
.cm-hdr__nav .brx-submenu-toggle button { padding:0; background:none; border:0; }
.cm-hdr__nav .brx-submenu-toggle svg, .cm-hdr__nav .brx-submenu-toggle i { transition:transform .3s var(--hd-ease); font-size:1.1rem; }
.cm-hdr__mhead, .cm-hdr__mextra, .cm-hdr__burger { display:none !important; }

@media (min-width: 992px) {
  /* Pannelli mega menu: card centrata con transizione */
  .cm-hdr .cm-dd > .brx-dropdown-content { display:flex !important; position:absolute !important; top:100% !important; left:50% !important; right:auto !important; width:min(1240px, calc(100vw - 4rem)) !important; min-width:0 !important; max-height:calc(100vh - var(--cm-hdr-h, 180px) - 2.4rem); overflow:auto; margin:0 !important; padding:3.2rem !important; background:#fff !important; border:1px solid var(--hd-line); border-radius:16px; box-shadow:0 30px 60px -30px rgba(17,17,17,.3); opacity:0; visibility:hidden; pointer-events:none; transform:translate(-50%, 10px) !important; transition:opacity .25s ease, transform .35s var(--hd-ease), visibility 0s linear .35s !important; z-index:1000; }
  .cm-hdr .cm-dd.open > .brx-dropdown-content, .cm-hdr .cm-dd:focus-within > .brx-dropdown-content { opacity:1; visibility:visible; pointer-events:auto; transform:translate(-50%, 0) !important; transition:opacity .25s ease, transform .35s var(--hd-ease), visibility 0s !important; }
  .cm-hdr .cm-dd--vintage { position:relative !important; }
  .cm-hdr .cm-dd--vintage > .brx-dropdown-content { width:24rem !important; padding:1.6rem !important; flex-direction:column; gap:.4rem; }
  .cm-hdr .cm-dd--vintage > .brx-dropdown-content a { padding:.8rem 1rem; border-radius:8px; font-size:1.4rem; }
  .cm-hdr .cm-dd--vintage > .brx-dropdown-content a:hover { background:var(--hd-soft); }
  .cm-mega > .brxe-container { display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,30rem); gap:3.2rem; width:100% !important; max-width:none !important; padding:0 !important; margin:0 !important; align-items:start; }
  .cm-mega > .brxe-container > * { width:auto !important; min-width:0; margin:0 !important; padding:0 !important; grid-column:auto !important; grid-row:auto !important; flex:none !important; background:none !important; }
  .cm-dd--donna .cm-mega > .brxe-container > :last-child, .cm-dd--uomo .cm-mega > .brxe-container > :last-child { display:flex !important; flex-direction:column; }
  .cm-mega a { color:var(--hd-ink); }
  .cm-mega img { display:block; width:100%; height:auto; border-radius:12px; }
  /* liste categorie (Donna / Uomo) */
  .cm-dd--donna .cm-mega > .brxe-container > :first-child, .cm-dd--uomo .cm-mega > .brxe-container > :first-child { display:grid !important; grid-template-columns:repeat(3, minmax(0,1fr)); gap:.2rem 2.4rem; align-content:start; }
  .cm-mega [data-query-element-id], .cm-mega .brxe-div[class*="brxe-"] { min-width:0; }
  .cm-dd--donna .cm-mega a.brxe-div, .cm-dd--uomo .cm-mega a.brxe-div, .cm-dd--bambini .cm-mega a.brxe-div { padding:.9rem 1.2rem !important; border-radius:8px !important; font-size:1.45rem; transition:background .2s; }
  .cm-mega a.brxe-div:hover { background:var(--hd-soft) !important; }
  .cm-dd--donna .cm-mega > .brxe-container > :last-child img, .cm-dd--uomo .cm-mega > .brxe-container > :last-child img { max-height:30rem; object-fit:cover; }
  .cm-mega .brxe-button { width:100%; justify-content:center; border-radius:999px; margin-top:1.2rem; }
  /* Bambini: due liste + due immagini */
  .cm-dd--bambini .cm-mega > .brxe-container { grid-template-columns:repeat(2, minmax(0,1fr)) repeat(2, minmax(0,22rem)); }
  .cm-dd--bambini .cm-mega > .brxe-container > * > .brxe-text-basic:first-child { font-weight:600; font-size:1.3rem; letter-spacing:.08em; text-transform:uppercase; color:var(--hd-muted); padding:0 1.2rem .6rem; }
  /* Brands: griglia compatta */
  .cm-dd--brands .cm-mega > .brxe-container { display:grid !important; grid-template-columns:repeat(6, minmax(0,1fr)); gap:.2rem 1.6rem; }
  .cm-dd--brands .cm-mega > .brxe-container > * { padding:.6rem .8rem !important; border-radius:6px; font-size:1.35rem; }
  .cm-dd--brands .cm-mega > .brxe-container > *:hover { background:var(--hd-soft); }
  /* Oro: quattro colonne */
  .cm-dd--oro .cm-mega > .brxe-container { grid-template-columns:repeat(4, minmax(0,1fr)); }
  .cm-dd--oro .cm-mega > .brxe-container > * { display:flex; flex-direction:column; justify-content:space-between; gap:1.2rem; padding:2rem !important; background:var(--hd-soft); border-radius:12px; }
  .cm-dd--oro .cm-mega a.brxe-div { padding:.6rem 0 !important; font-size:1.4rem; }
  .cm-dd--oro .cm-mega > .brxe-container > * > * > .brxe-text-basic:first-child { font-weight:600; font-size:1.5rem; }
  /* Idee regalo: card immagine */
  .cm-dd--regalo .cm-mega > .brxe-container { grid-template-columns:repeat(7, minmax(0,1fr)); gap:1.6rem; }
  .cm-dd--regalo .cm-mega img { aspect-ratio:3/4; object-fit:cover; transition:scale .5s var(--hd-ease); }
  .cm-dd--regalo .cm-mega a:hover img { scale:1.03; }
  .cm-dd--regalo .cm-mega .brxe-block { overflow:hidden; border-radius:12px; }
}

/* ---------- Tablet e mobile ---------- */
@media (max-width: 991px) {
  .cm-hdr__inner.brxe-container { width:calc(100% - 3.2rem); grid-template-columns:auto auto minmax(0,1fr) auto; grid-template-areas:"nav left logo right"; column-gap:1.2rem; padding:.8rem 0; }
  .cm-hdr__logo { justify-self:center; }
  .cm-hdr__left .brxe-icon-box { display:none !important; }
  .cm-hdr__search > ul > li > .brx-submenu-toggle { height:auto; padding:.4rem; border:0; background:none; }
  .cm-hdr__search > ul > li > .brx-submenu-toggle::after { display:none; }
  .cm-hdr__right { gap:1.2rem; }
  .cm-hdr__nav { justify-self:start; }
  .cm-hdr__burger { display:inline-flex !important; align-items:center; justify-content:center; width:4rem; height:4rem; margin-left:-.8rem; }
  /* pannello */
  .cm-hdr__nav > ul.brx-nav-nested-items { display:flex !important; flex-direction:column; align-items:stretch; gap:0; position:fixed !important; top:0 !important; left:0 !important; bottom:0 !important; right:auto !important; width:min(88vw, 40rem) !important; height:100dvh !important; margin:0; padding:0 2rem 3.2rem !important; background:#fff !important; overflow-y:auto; overscroll-behavior:contain; z-index:2; transform:translateX(-102%); visibility:hidden; transition:transform .4s var(--hd-ease), visibility 0s linear .4s; box-shadow:12px 0 40px rgba(0,0,0,.12); }
  .cm-hdr__nav.brx-open > ul.brx-nav-nested-items { transform:none; visibility:visible; transition:transform .4s var(--hd-ease), visibility 0s; }
  /* overlay: sotto al pannello (risolve il problema di z-index del riferimento) */
  .cm-hdr__nav::before { content:''; position:fixed; inset:0; background:rgba(17,17,17,.45); opacity:0; visibility:hidden; transition:opacity .3s, visibility 0s linear .3s; z-index:1; }
  .cm-hdr__nav.brx-open::before { opacity:1; visibility:visible; transition:opacity .3s, visibility 0s; }
  #brx-header:has(.cm-hdr__nav.brx-open) { z-index:100002 !important; }
  html.cm-hdr-lock, html.cm-hdr-lock body { overflow:hidden; }
  .cm-hdr__mhead { display:flex !important; flex-direction:row; align-items:center; justify-content:space-between; position:sticky; top:0; z-index:3; background:#fff; padding:1.6rem 0 1.2rem; margin-bottom:.4rem; border-bottom:1px solid var(--hd-line); list-style:none; }
  .cm-hdr__mtitle { font-size:1.6rem; font-weight:600; }
  .cm-hdr__close { display:inline-grid !important; place-items:center; width:3.8rem; height:3.8rem; border-radius:50%; border:1px solid var(--hd-line); font-size:1.4rem; }
  .cm-hdr__nav > ul > li { border-bottom:1px solid var(--hd-line); width:100%; list-style:none; }
  .cm-hdr__nav > ul > li > a, .cm-hdr__nav > ul > li > .brx-submenu-toggle { width:100%; justify-content:space-between; padding:1.4rem 0 !important; font-size:1.5rem; font-weight:500; }
  .cm-hdr__nav > ul > li > a::after, .cm-hdr__nav > ul > li > .brx-submenu-toggle::after { display:none; }
  .cm-hdr__nav .cm-dd > .brx-dropdown-content { display:none !important; position:static !important; transform:none !important; width:auto !important; padding:0 0 1.4rem !important; margin:0 !important; background:none !important; box-shadow:none !important; border:0 !important; min-width:0 !important; }
  .cm-hdr__nav .cm-dd.open > .brx-dropdown-content { display:block !important; animation:cmHdrIn .3s var(--hd-ease); }
  .cm-mega .brxe-container, .cm-mega .brxe-block, .cm-mega .brxe-div { display:block !important; width:auto !important; max-width:none !important; padding:0 !important; margin:0 !important; border:0 !important; background:none !important; }
  .cm-mega a, .cm-mega .brxe-text-basic, .cm-mega .brxe-text-link { display:block; font-size:1.4rem !important; line-height:1.4 !important; color:#3a3a3a !important; padding:.75rem 0 .75rem 1.2rem !important; }
  .cm-mega .brxe-text-basic:first-child:not(a .brxe-text-basic) { font-weight:600; color:var(--hd-ink) !important; }
  .cm-mega img, .cm-mega .brxe-image { display:none !important; }
  .cm-dd--regalo .cm-mega > .brxe-container { display:grid !important; grid-template-columns:repeat(2, minmax(0,1fr)); gap:.8rem; }
  .cm-dd--regalo .cm-mega img, .cm-dd--regalo .cm-mega .brxe-image { display:block !important; width:100%; height:auto; border-radius:10px; padding:0 !important; }
  .cm-dd--regalo .cm-mega a { padding:0 !important; }
  .cm-mega .brxe-button { display:inline-flex !important; margin:.8rem 0 0 1.2rem !important; padding:1rem 1.6rem !important; font-size:1.2rem !important; border-radius:999px !important; color:#fff !important; }
  .cm-hdr__mextra { display:flex !important; flex-direction:column; gap:.2rem; padding-top:1.6rem; border:0 !important; list-style:none; }
  .cm-hdr__mextra a { font-size:1.35rem; color:var(--hd-muted); padding:.6rem 0; }
}
@keyframes cmHdrIn { from { opacity:0; transform:translateY(-4px); } to { opacity:1; transform:none; } }
@media (prefers-reduced-motion: reduce) { .cm-hdr *, .cm-hdr *::before, .cm-hdr *::after { transition:none !important; animation:none !important; } }
@media (min-width: 992px) {
  .cm-mega > .brxe-container { box-shadow:none !important; background:none !important; border:0 !important; border-radius:0 !important; }
  .cm-mega .brxe-image, .cm-mega .brxe-image a, .cm-mega figure, .cm-mega picture { display:block; width:100% !important; max-width:none !important; height:auto !important; }
  .cm-mega .brxe-block:has(> .brxe-image), .cm-mega .brxe-div:has(> .brxe-image) { width:100% !important; }
  .cm-dd--donna .cm-mega > .brxe-container > :last-child *, .cm-dd--uomo .cm-mega > .brxe-container > :last-child * { max-width:none !important; }
  .cm-dd--donna .cm-mega > .brxe-container > :last-child :is(.brxe-div,.brxe-block,.brxe-image), .cm-dd--uomo .cm-mega > .brxe-container > :last-child :is(.brxe-div,.brxe-block,.brxe-image) { width:100% !important; height:auto !important; }
  .cm-dd--donna .cm-mega img, .cm-dd--uomo .cm-mega img { width:100% !important; height:30rem !important; object-fit:cover; object-position:top center; }
  .cm-dd--donna .cm-mega > .brxe-container > :last-child > *, .cm-dd--uomo .cm-mega > .brxe-container > :last-child > * { width:100% !important; }
  .cm-mega .brxe-button { display:inline-flex; justify-content:center; width:100%; padding:1.2rem 2rem !important; border-radius:999px !important; background:var(--hd-ink) !important; color:#fff !important; font-size:1.25rem !important; letter-spacing:.06em; }
  .cm-mega .brxe-button:hover { background:#333 !important; }
}
@media (min-width: 992px) {
  .cm-dd--donna .cm-mega > .brxe-container > :last-child .brxe-block, .cm-dd--donna .cm-mega > .brxe-container > :last-child .brxe-div, .cm-dd--uomo .cm-mega > .brxe-container > :last-child .brxe-block, .cm-dd--uomo .cm-mega > .brxe-container > :last-child .brxe-div { display:block !important; width:100% !important; }
  .cm-hdr .cm-mega a.brxe-button { display:flex !important; justify-content:center; width:100% !important; padding:1.2rem 2rem !important; border-radius:999px !important; background:#111 !important; color:#fff !important; font-size:1.25rem !important; letter-spacing:.06em; margin-top:1.2rem; }
  .cm-hdr .cm-mega a.brxe-button:hover { background:#333 !important; }
}
@media (min-width: 992px) {
  .cm-dd--brands .cm-mega > .brxe-container { grid-template-columns:repeat(7, minmax(0,1fr)) !important; gap:0 1.2rem !important; }
  .cm-dd--brands .cm-mega > .brxe-container > * { padding:.45rem .8rem !important; line-height:1.4 !important; min-height:0 !important; }
}
@media (min-width: 992px) {
  .cm-dd--oro .cm-mega > .brxe-container { align-items:stretch !important; }
  .cm-dd--oro .cm-mega > .brxe-container > * { display:flex !important; flex-direction:column; }
  .cm-dd--oro .cm-mega > .brxe-container > * > :last-child { margin-top:auto !important; }
  .cm-dd--oro .cm-mega > .brxe-container > * > * > .brxe-text-basic:first-child { color:var(--hd-ink) !important; letter-spacing:.06em; text-transform:uppercase; font-size:1.3rem !important; }
}
@media (min-width: 992px) { .cm-dd--regalo .cm-mega img { object-position:top center; aspect-ratio:4/5 !important; } }
@media (max-width: 991px) {
  .cm-mega .brxe-container, .cm-mega .brxe-block, .cm-mega .brxe-div { box-shadow:none !important; border-radius:0 !important; }
  .cm-hdr__mextra > * { text-transform:none !important; font-weight:400 !important; font-size:1.35rem !important; color:var(--hd-muted) !important; border:0 !important; padding:.6rem 0 !important; letter-spacing:0 !important; }
  .cm-hdr__nav .brx-submenu-toggle > button { transition:transform .3s var(--hd-ease); }
}
@media (max-width: 991px) { .cm-dd--regalo .cm-mega > .brxe-container { grid-template-columns:repeat(3, minmax(0,1fr)) !important; gap:.8rem !important; padding-bottom:.4rem !important; } .cm-dd--regalo .cm-mega img { aspect-ratio:4/5; object-fit:cover; object-position:top; } }
.cm-hdr__right .brx-dropdown-content { border-radius:12px !important; border:1px solid var(--hd-line) !important; box-shadow:0 20px 40px -20px rgba(17,17,17,.25) !important; overflow:hidden; min-width:18rem; }
.cm-hdr__right .brx-dropdown-content a:hover { background:var(--hd-soft); }
/* Vintage: tendina compatta */
@media (min-width: 992px) {
  .cm-hdr .cm-dd--vintage > .brx-dropdown-content { width:auto !important; min-width:22rem !important; max-width:none !important; padding:1.2rem !important; gap:.2rem; }
  .cm-hdr .cm-dd--vintage > .brx-dropdown-content > li { list-style:none; width:100%; }
  .cm-hdr .cm-dd--vintage > .brx-dropdown-content a { display:block; white-space:nowrap; padding:1rem 1.4rem !important; border-radius:8px; font-size:1.45rem; color:var(--hd-ink); transition:background .2s; }
}
/* Mobile: voci allineate in alto, niente centratura verticale */
@media (max-width: 991px) {
  .cm-hdr__nav > ul.brx-nav-nested-items { justify-content:flex-start !important; align-items:stretch !important; align-content:flex-start !important; }
  .cm-hdr__nav > ul.brx-nav-nested-items > li { flex:none !important; }
  .cm-hdr .cm-dd--vintage > .brx-dropdown-content a { display:block; padding:.75rem 0 .75rem 1.2rem !important; font-size:1.4rem !important; color:#3a3a3a !important; }
  .cm-hdr .cm-dd--vintage.open > .brx-dropdown-content { display:block !important; }
  .cm-hdr .cm-dd--vintage > .brx-dropdown-content > li { list-style:none; }
}
.cm-hdr__nav .brx-submenu-toggle > button { transition:transform .3s var(--hd-ease); }

/* ===== Pannello ricerca: copre tutto l'header, chiudi in alto a destra ===== */
#brxe-drmpxc > .brx-dropdown-content { display:block !important; position:fixed !important; top:0 !important; left:0 !important; right:0 !important; width:100vw !important; min-width:0 !important; max-width:none !important; min-height:var(--cm-hdr-h, 180px); max-height:100vh; overflow-y:auto; margin:0 !important; padding:4.8rem 2.4rem 4rem !important; background:#fff !important; border:0 !important; border-radius:0 0 20px 20px !important; box-shadow:0 0 0 100vmax rgba(17,17,17,.35), 0 20px 40px -20px rgba(17,17,17,.3) !important; z-index:100010 !important; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-16px) !important; transition:opacity .25s ease, transform .35s cubic-bezier(.2,.7,.2,1), visibility 0s linear .35s !important; }
#brxe-drmpxc.open > .brx-dropdown-content { opacity:1; visibility:visible; pointer-events:auto; transform:none !important; transition:opacity .25s ease, transform .35s cubic-bezier(.2,.7,.2,1), visibility 0s !important; }
#brxe-drmpxc > .brx-dropdown-content > .brxe-container { width:min(1240px, 100%) !important; max-width:none !important; margin:0 auto !important; }
.cm-search-close { position:absolute; top:1.6rem; right:1.6rem; z-index:2; display:inline-grid; place-items:center; width:4.4rem; height:4.4rem; border-radius:50%; border:1px solid #ececec; background:#fff; color:#111; cursor:pointer; transition:border-color .2s, background .2s; }
.cm-search-close:hover { border-color:#111; background:#f6f5f3; }
.cm-search-close:focus-visible { outline:2px solid #111; outline-offset:2px; }
#brx-header:has(#brxe-drmpxc.open) { z-index:100002 !important; }
@media (max-width: 767px) {
  #brxe-drmpxc > .brx-dropdown-content { padding:6.4rem 1.6rem 2.4rem !important; border-radius:0 0 16px 16px !important; }
  .cm-search-close { top:1.2rem; right:1.2rem; width:4rem; height:4rem; }
}
@media (prefers-reduced-motion: reduce) { #brxe-drmpxc > .brx-dropdown-content { transition:none !important; } }