.mmc-catalog-route{background:var(--mmc-color-background);color:var(--mmc-color-text);min-height:60vh}
.mmc-catalog-route__hero{background:var(--mmc-color-surface);border-bottom:1px solid var(--mmc-color-border);padding:var(--mmc-space-lg) 0}
.mmc-catalog-route__eyebrow{color:var(--mmc-color-primary);font-size:12px;font-weight:900;letter-spacing:.05em;margin:0 0 var(--mmc-space-xs);text-transform:uppercase}
.mmc-catalog-route__hero h1{color:var(--mmc-color-text-strong);font-size:32px;line-height:1.08;margin:0}
.mmc-catalog-route__description,.mmc-catalog-route__count{color:var(--mmc-color-text-muted);font-size:14px;line-height:1.45;margin:var(--mmc-space-xs) 0 0}
.mmc-catalog-route__count strong{color:var(--mmc-color-text-strong)}
.mmc-catalog-breadcrumb{font-size:12px;margin-bottom:var(--mmc-space-md);overflow:hidden}
.mmc-catalog-breadcrumb ol{display:flex;flex-wrap:wrap;gap:5px;list-style:none;margin:0;padding:0}
.mmc-catalog-breadcrumb li{align-items:center;display:flex;gap:5px}
.mmc-catalog-breadcrumb li:not(:last-child)::after{color:var(--mmc-color-text-muted);content:'\203A'}
.mmc-catalog-breadcrumb a{color:var(--mmc-color-primary);font-weight:850;text-decoration:none}
.mmc-catalog-breadcrumb span{color:var(--mmc-color-text-muted)}
.mmc-catalog-active-filters{align-items:center;display:flex;flex-wrap:wrap;gap:var(--mmc-space-xs);margin-top:var(--mmc-space-md)}
.mmc-catalog-active-filters a{align-items:center;background:var(--mmc-color-surface);border:1px solid var(--mmc-color-border);border-radius:999px;color:var(--mmc-color-text-strong);display:inline-flex;font-size:12px;font-weight:850;gap:var(--mmc-space-xs);min-height:44px;padding:8px 12px;text-decoration:none}
.mmc-catalog-active-filters a:is(:hover,:focus-visible){border-color:var(--mmc-color-primary);color:var(--mmc-color-primary)}
.mmc-catalog-active-filters .mmc-catalog-active-filters__reset{background:var(--mmc-color-surface);color:var(--mmc-color-primary)}

.mmc-catalog-mobile-toolbar{align-items:center;display:flex;justify-content:space-between;padding-bottom:var(--mmc-space-md);padding-top:var(--mmc-space-md)}
.mmc-catalog-filter-trigger{align-items:center;background:var(--mmc-color-primary);border:1px solid var(--mmc-color-primary);border-radius:10px;color:var(--mmc-color-text-inverse);cursor:pointer;display:inline-flex;font-weight:900;gap:var(--mmc-space-xs);min-height:44px;padding:9px 13px}
.mmc-catalog-filter-trigger svg{fill:none;height:20px;stroke:currentColor;stroke-linecap:round;stroke-width:2;width:20px}
.mmc-catalog-order{align-items:center;display:flex;gap:var(--mmc-space-xs)}
.mmc-catalog-order label{color:var(--mmc-color-text-strong);font-size:13px;font-weight:850}
.mmc-catalog-order select,.mmc-catalog-filter-form select,.mmc-catalog-price-filter input{background:var(--mmc-color-surface);border:1px solid var(--mmc-color-border);border-radius:9px;color:var(--mmc-color-text);min-height:44px;padding:8px 10px}
.mmc-catalog-order select{max-width:150px}

.mmc-catalog-layout{padding-bottom:var(--mmc-space-xl)}
.mmc-catalog-sidebar{display:none}
.mmc-catalog-content{min-width:0}
.mmc-catalog-results-header{align-items:start;display:grid;gap:var(--mmc-space-sm);margin-bottom:var(--mmc-space-md)}
.mmc-catalog-results-header h2{color:var(--mmc-color-text-strong);font-size:24px;line-height:1.15;margin:0}
.mmc-catalog-results-header p{color:var(--mmc-color-text-muted);font-size:13px;margin:4px 0 0}
.mmc-catalog-results-header p strong{color:var(--mmc-color-text-strong)}
.mmc-catalog-results-header .mmc-catalog-active-filters{margin-top:0}
.mmc-catalog-desktop-order{display:none}
.mmc-catalog-results__grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}

.mmc-catalog-pagination{display:flex;flex-wrap:wrap;justify-content:center;margin-top:var(--mmc-space-lg)}
.mmc-catalog-pagination .page-numbers{align-items:center;background:var(--mmc-color-surface);border:1px solid var(--mmc-color-border);border-radius:9px;color:var(--mmc-color-primary);display:inline-flex;font-size:13px;font-weight:850;justify-content:center;margin:3px;min-height:44px;min-width:44px;padding:8px;text-decoration:none}
.mmc-catalog-pagination .current{background:var(--mmc-color-primary);border-color:var(--mmc-color-primary);color:var(--mmc-color-text-inverse)}
.mmc-catalog-route__empty{background:var(--mmc-color-surface);border:1px solid var(--mmc-color-border);border-radius:14px;padding:var(--mmc-space-lg);text-align:center}
.mmc-catalog-route__empty h1,.mmc-catalog-route__empty h2{color:var(--mmc-color-text-strong);margin:0 0 var(--mmc-space-xs)}
.mmc-catalog-route__empty p{color:var(--mmc-color-text-muted);margin:0 0 var(--mmc-space-md)}
.mmc-catalog-route__empty div{display:flex;flex-wrap:wrap;gap:var(--mmc-space-sm);justify-content:center}
.mmc-catalog-route__empty a{color:var(--mmc-color-primary);font-weight:900}

.mmc-catalog-filter-form{background:var(--mmc-color-surface)}
.mmc-catalog-filter-group{border-bottom:1px solid var(--mmc-color-border);padding:var(--mmc-space-sm) 0}
.mmc-catalog-filter-group summary{align-items:center;color:var(--mmc-color-text-strong);cursor:pointer;display:flex;font-size:14px;font-weight:900;justify-content:space-between;list-style:none;min-height:44px;padding:9px 0}
.mmc-catalog-filter-group summary::-webkit-details-marker{display:none}
.mmc-catalog-filter-group summary::after{color:var(--mmc-color-primary);content:'+';font-size:20px;font-weight:700;line-height:1}
.mmc-catalog-filter-group[open] summary::after{content:'−'}
.mmc-catalog-filter-group__options{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:var(--mmc-space-xs)}
.mmc-catalog-filter-option{align-items:center;background:var(--mmc-color-surface);border:1px solid var(--mmc-color-border);border-radius:999px;color:var(--mmc-color-text);cursor:pointer;display:grid;font-size:13px;gap:7px;grid-template-columns:18px auto auto;min-height:44px;padding:7px 11px}
.mmc-catalog-filter-option:has(input:checked){background:var(--mmc-color-primary-soft);color:var(--mmc-color-primary-dark)}
.mmc-catalog-filter-option input{appearance:none;background:var(--mmc-color-surface);border:1px solid var(--mmc-color-border);height:18px;margin:0;position:relative;width:18px}
.mmc-catalog-filter-option input[type=radio]{border-radius:50%}
.mmc-catalog-filter-option input[type=radio]:checked{border:5px solid var(--mmc-color-primary)}
.mmc-catalog-filter-option input[type=checkbox]{border-radius:5px}
.mmc-catalog-filter-option input[type=checkbox]:checked{background:var(--mmc-color-primary);border-color:var(--mmc-color-primary)}
.mmc-catalog-filter-option input[type=checkbox]:checked::after{color:var(--mmc-color-text-inverse);content:'✓';font-size:13px;font-weight:900;left:2px;line-height:1;position:absolute;top:1px}
.mmc-catalog-filter-option small{color:var(--mmc-color-text-muted)}
.mmc-catalog-price-filter{align-items:center;display:grid;gap:var(--mmc-space-xs);grid-template-columns:auto minmax(0,1fr);padding-bottom:var(--mmc-space-sm)}
.mmc-catalog-price-filter label,.mmc-catalog-select-label{color:var(--mmc-color-text-muted);font-size:12px;font-weight:800}
.mmc-catalog-filter-form select{width:100%}
.mmc-catalog-filter-form__actions{align-items:center;background:var(--mmc-color-surface);display:flex;gap:var(--mmc-space-sm);justify-content:space-between;padding-top:var(--mmc-space-md)}
.mmc-catalog-filter-form__actions a{align-items:center;color:var(--mmc-color-primary);display:inline-flex;font-size:13px;font-weight:900;min-height:44px}
.mmc-catalog-filter-form__actions button{background:var(--mmc-color-primary);border:1px solid var(--mmc-color-primary);border-radius:10px;color:var(--mmc-color-text-inverse);cursor:pointer;font-weight:900;min-height:44px;padding:9px 14px}
.mmc-catalog-filter-form__actions .mmc-catalog-filter-form__reset{background:var(--mmc-color-surface);border-color:transparent;color:var(--mmc-color-primary);flex:0 0 auto;font-size:13px;padding-inline:0}

.mmc-catalog-filter-backdrop{background:var(--mmc-color-primary-dark);inset:0;opacity:.5;position:fixed;z-index:9997}
.mmc-catalog-filter-sheet{background:var(--mmc-color-surface);border-radius:18px 18px 0 0;bottom:0;display:flex;flex-direction:column;max-height:calc(100dvh - 48px);left:0;position:fixed;right:0;transform:translateY(100%);transition:transform .22s ease;z-index:9998}
.mmc-catalog-filter-sheet.is-open{transform:translateY(0)}
.mmc-catalog-filter-sheet__header{align-items:center;border-bottom:1px solid var(--mmc-color-border);display:flex;flex:0 0 auto;justify-content:space-between;padding:var(--mmc-space-md)}
.mmc-catalog-filter-sheet__header h2{color:var(--mmc-color-text-strong);font-size:20px;margin:0}
.mmc-catalog-filter-sheet__header p{color:var(--mmc-color-text-muted);font-size:12px;margin:3px 0 0}
.mmc-catalog-filter-sheet__header button{align-items:center;background:var(--mmc-color-surface);border:1px solid var(--mmc-color-border);border-radius:999px;color:var(--mmc-color-text-strong);cursor:pointer;display:flex;font-size:24px;height:44px;justify-content:center;width:44px}
.mmc-catalog-filter-form--mobile{display:flex;flex:1;flex-direction:column;min-height:0;padding:0 var(--mmc-space-md)}
.mmc-catalog-filter-summary{background:var(--mmc-color-primary-soft);border:1px solid var(--mmc-color-border);border-radius:10px;color:var(--mmc-color-text);flex:0 0 auto;font-size:12px;line-height:1.4;margin-top:var(--mmc-space-sm);padding:10px 12px}
.mmc-catalog-filter-form--mobile .mmc-catalog-filter-form__scroll{flex:1;min-height:0;overflow-y:auto;padding-bottom:var(--mmc-space-md)}
.mmc-catalog-filter-form--mobile .mmc-catalog-filter-form__actions{border-top:1px solid var(--mmc-color-border);flex:0 0 auto;padding:var(--mmc-space-md) 0 calc(var(--mmc-space-md) + env(safe-area-inset-bottom))}
.mmc-catalog-filter-form--mobile .mmc-catalog-filter-form__actions [data-mmc-catalog-apply]{flex:1}
body.mmc-catalog-filter-lock{overflow:hidden;position:fixed;width:100%}
.mmc-catalog-route :is(a,button,input,select,summary):focus-visible{outline:2px solid var(--mmc-color-primary);outline-offset:2px}

@media(min-width:600px){.mmc-catalog-results__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:768px){
    .mmc-catalog-route__hero{padding:var(--mmc-space-xl) 0}.mmc-catalog-route__hero h1{font-size:44px}
}
@media(min-width:1024px){
    .mmc-catalog-mobile-toolbar,.mmc-catalog-filter-backdrop,.mmc-catalog-filter-sheet{display:none}
    .mmc-catalog-layout{align-items:start;display:grid;gap:var(--mmc-space-xl);grid-template-columns:minmax(210px,250px) minmax(0,1fr);padding-top:var(--mmc-space-xl)}
    .mmc-catalog-sidebar{background:var(--mmc-color-surface);border:1px solid var(--mmc-color-border);border-radius:14px;display:block;max-height:calc(100vh - 116px);overflow:auto;padding:var(--mmc-space-md);position:sticky;top:96px}
    .mmc-catalog-sidebar__heading{align-items:start;border-bottom:1px solid var(--mmc-color-border);display:flex;gap:var(--mmc-space-sm);justify-content:space-between;padding-bottom:var(--mmc-space-sm)}
    .mmc-catalog-sidebar h2{color:var(--mmc-color-text-strong);font-size:20px;line-height:1.15;margin:0}
    .mmc-catalog-sidebar__heading p{color:var(--mmc-color-text-muted);font-size:12px;margin:2px 0 0;white-space:nowrap}
    .mmc-catalog-results-header{grid-template-columns:minmax(0,1fr) auto}
    .mmc-catalog-results-header .mmc-catalog-active-filters{grid-column:1/-1}
    .mmc-catalog-desktop-order{display:block}
    .mmc-catalog-results__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(min-width:1440px){.mmc-catalog-results__grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.mmc-catalog-filter-sheet{transition:none}}

/* Cataloghi completi del singolo negozio: testata persistente con copertina. */
.mmc-catalog-route__hero--activity{background:var(--mmc-color-surface);padding:var(--mmc-space-md) 0 var(--mmc-space-lg)}
.mmc-catalog-route__hero--activity .mmc-catalog-breadcrumb{margin-bottom:var(--mmc-space-sm)}
.mmc-catalog-activity-banner{align-items:flex-end;background-color:var(--mmc-color-primary-dark);background-position:center;background-size:cover;border-radius:16px;display:flex;isolation:isolate;min-height:210px;overflow:hidden;padding:var(--mmc-space-lg);position:relative}
.mmc-catalog-activity-banner::before{background:linear-gradient(180deg,rgba(7,29,58,.16) 12%,rgba(7,29,58,.78) 100%);content:"";inset:0;position:absolute;z-index:0}
.mmc-catalog-activity-banner.has-no-cover::before{background:linear-gradient(135deg,rgba(30,86,240,.88),rgba(7,29,58,.98))}
.mmc-catalog-activity-banner__content{max-width:760px;position:relative;z-index:1}
.mmc-catalog-activity-banner .mmc-catalog-route__eyebrow{color:#fff4e6;font-size:12px;margin-bottom:7px;text-shadow:0 2px 8px rgba(7,29,58,.6)}
.mmc-catalog-activity-banner h1{color:#fff4e6;font-size:clamp(2rem,9vw,3.35rem);text-shadow:0 3px 14px rgba(7,29,58,.72)}
.mmc-catalog-route__count--activity{font-size:14px;margin:var(--mmc-space-sm) 2px 0}
.mmc-catalog-activity-toolbar{align-items:center;display:flex;justify-content:flex-end;padding-bottom:var(--mmc-space-md);padding-top:var(--mmc-space-md)}
.mmc-catalog-layout--activity{padding-top:0}
.mmc-catalog-route--activity .mmc-catalog-results__grid{margin-top:0}

@media(min-width:768px){
    .mmc-catalog-route__hero--activity{padding:var(--mmc-space-lg) 0 var(--mmc-space-xl)}
    .mmc-catalog-activity-banner{min-height:290px;padding:var(--mmc-space-xl)}
}
@media(min-width:1024px){
    .mmc-catalog-layout.mmc-catalog-layout--activity{display:block;padding-top:0}
    .mmc-catalog-route--activity .mmc-catalog-results__grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(min-width:1440px){
    .mmc-catalog-route--activity .mmc-catalog-results__grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media(min-width:1800px){
    .mmc-catalog-results__grid,
    .mmc-catalog-route--activity .mmc-catalog-results__grid{grid-template-columns:repeat(6,minmax(0,1fr))}
}


/* Le route catalogo occupano l'intera area disponibile, indipendentemente
   dalla struttura a colonne o dalla sidebar prevista dal tema attivo. */
body.mmc-catalog-page #page,
body.mmc-catalog-page #content,
body.mmc-catalog-page .site-content,
body.mmc-catalog-page #primary,
body.mmc-catalog-page .content-area,
body.mmc-catalog-page .site-main,
body.mmc-catalog-page .entry-content{
    box-sizing:border-box!important;
    clear:both!important;
    display:block!important;
    float:none!important;
    grid-template-columns:none!important;
    margin-left:0!important;
    margin-right:0!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
    width:100%!important;
}
body.mmc-catalog-page #secondary,
body.mmc-catalog-page .widget-area,
body.mmc-catalog-page .site-sidebar{
    display:none!important;
}
body.mmc-catalog-page .mmc-catalog-route{
    clear:both;
    display:block;
    flex:0 0 100%;
    margin:0;
    max-width:none;
    width:100%;
}
body.mmc-catalog-page .mmc-catalog-route .mmc-container{
    max-width:none;
    width:100%;
}


/* Testata visuale persistente per tutti i reparti e le tipologie prodotto. */
.mmc-catalog-taxonomy-banner{
    align-items:flex-end;
    background-color:var(--mmc-color-primary-dark);
    background-position:center;
    background-size:cover;
    border-radius:16px;
    display:flex;
    isolation:isolate;
    min-height:210px;
    overflow:hidden;
    padding:var(--mmc-space-lg);
    position:relative;
}
.mmc-catalog-taxonomy-banner::before{
    background:linear-gradient(180deg,rgba(5,20,43,.12) 8%,rgba(5,20,43,.82) 100%);
    content:"";
    inset:0;
    position:absolute;
    z-index:0;
}

.mmc-catalog-taxonomy-banner.has-no-cover{
    background:
        radial-gradient(circle at 82% 22%,rgba(255,244,230,.13) 0 10%,transparent 31%),
        linear-gradient(135deg,#071d3a 0%,#0d2d55 58%,#6f4b2e 140%);
}
.mmc-catalog-taxonomy-banner.has-no-cover::before{
    background:
        linear-gradient(115deg,transparent 0 58%,rgba(255,244,230,.07) 58% 60%,transparent 60% 100%),
        linear-gradient(180deg,rgba(5,20,43,.05),rgba(5,20,43,.34));
}
.mmc-catalog-taxonomy-banner.has-no-cover::after{
    border:1px solid rgba(255,244,230,.16);
    border-radius:999px;
    content:"";
    height:220px;
    position:absolute;
    right:-65px;
    top:-90px;
    width:220px;
    z-index:0;
}
.mmc-catalog-taxonomy-banner__content{max-width:760px;position:relative;z-index:1}
.mmc-catalog-taxonomy-banner .mmc-catalog-route__eyebrow{color:#fff4e6;margin-bottom:7px;text-shadow:0 2px 8px rgba(7,29,58,.6)}
.mmc-catalog-taxonomy-banner h1{color:#fff4e6;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,9vw,3.35rem);font-weight:600;text-shadow:0 3px 14px rgba(7,29,58,.72)}
.mmc-catalog-route__count--taxonomy{font-size:14px;margin:var(--mmc-space-sm) 2px 0}
@media(min-width:768px){
    .mmc-catalog-taxonomy-banner{min-height:290px;padding:var(--mmc-space-xl)}
}

/* Evita il doppio titolo nei cataloghi tassonomici, mantenendo ordinamento e filtri attivi. */
.mmc-catalog-results-header--compact{align-items:center;display:grid;gap:var(--mmc-space-sm);grid-template-columns:minmax(0,1fr) auto;margin-bottom:var(--mmc-space-md)}
.mmc-catalog-results-header--compact .mmc-catalog-results-summary{color:var(--mmc-color-text-muted);font-size:13px;margin:0}
.mmc-catalog-results-header--compact .mmc-catalog-results-summary strong{color:var(--mmc-color-text-strong)}
.mmc-catalog-results-header--compact .mmc-catalog-active-filters{grid-column:1/-1;margin-top:0}
@media(max-width:1023px){
    .mmc-catalog-results-header--compact{display:block}
    .mmc-catalog-results-header--compact .mmc-catalog-results-summary{margin-bottom:var(--mmc-space-sm)}
}


/* Banner editoriali full-width per archivi, target/eta e cataloghi negozio. */
.mmc-catalog-route__hero{overflow:hidden;padding:var(--mmc-space-md) 0 0}
.mmc-catalog-route__breadcrumb-wrap{padding-bottom:var(--mmc-space-sm)}
.mmc-catalog-route__hero .mmc-catalog-breadcrumb{margin-bottom:0}
.mmc-catalog-route__hero>.mmc-editorial-banner--fullbleed:not(.mmc-editorial-banner--audience){
	margin-left:0;
	margin-right:0;
	max-width:none;
	width:100%;
}
.mmc-catalog-route__count--visual,
.mmc-catalog-route__count--activity{
	margin:0;
	padding:12px 0 16px;
}
.mmc-catalog-route__hero--activity{padding:var(--mmc-space-md) 0 0}
.mmc-catalog-route__hero--activity .mmc-catalog-breadcrumb{margin-bottom:0}
.mmc-catalog-activity-toolbar{padding-top:12px}
.mmc-catalog-route--activity .mmc-product-card__header .mmc-activity-identity{display:none}

@media(max-width:599px){
	.mmc-catalog-results__grid{gap:10px}
	.mmc-catalog-results__grid .mmc-product-card__header{
		min-height:40px;
		padding:5px 42px 4px 7px;
	}
	.mmc-catalog-results__grid .mmc-product-card .mmc-favorite-toggle{
		height:36px;
		right:3px;
		top:2px;
		width:36px;
	}
	.mmc-catalog-results__grid .mmc-product-card__image{padding:6px}
	.mmc-catalog-results__grid .mmc-product-card__body{padding:8px}
	.mmc-catalog-results__grid .mmc-product-card__title{
		font-size:12.5px;
		line-height:1.22;
		min-height:31px;
	}
	.mmc-catalog-results__grid .mmc-product-card__price{
		font-size:14px;
		margin-bottom:0;
		min-height:19px;
	}
	.mmc-catalog-results__grid .mmc-product-card__price del{font-size:10.5px}
	.mmc-catalog-results__grid .mmc-product-card__meta{display:none}
	.mmc-catalog-results__grid .mmc-product-card__status{
		bottom:6px;
		font-size:9.5px;
		left:6px;
		padding:5px 7px;
	}
}
@media(min-width:600px){
	.mmc-catalog-results__grid{gap:var(--mmc-product-card-gap)}
}
@media(min-width:768px){
	.mmc-catalog-route__hero{padding-top:var(--mmc-space-lg)}
	.mmc-catalog-route__breadcrumb-wrap{padding-bottom:var(--mmc-space-md)}
	.mmc-catalog-route__count--visual,
	.mmc-catalog-route__count--activity{padding:14px 0 20px}
}

/* 0.31.9 — Il cuore della Card Marketplace resta sovrapposto all'immagine
   anche nelle griglie catalogo mobili, senza occupare la riga del negozio. */
@media(max-width:599px){
    .mmc-catalog-results__grid .mmc-product-card--context-marketplace .mmc-favorite-toggle{
        height:36px;
        right:6px;
        top:6px;
        width:36px;
    }
}
