/* MacitynetAZofferte — stili pubblici: pagina Offerte, caroselli, card inline. */
.maz-app{--maz-green:#176c45;--maz-soft:#edf7f0;--maz-ink:#15271d;--maz-muted:#5a6a60;--maz-border:#dfe6e0;--maz-orange:#fff5de;font-family:inherit;color:var(--maz-ink);line-height:1.5}
.maz-app{container:maz / inline-size;max-width:1200px;margin:24px auto;font-size:15px}
.maz-app *{box-sizing:border-box}
.maz-app [hidden]{display:none!important}
.maz-app button,.maz-app input,.maz-app select{font:inherit}
.maz-app button{cursor:pointer}
.maz-app button:disabled{cursor:default;opacity:.5}
.maz-app :focus-visible{outline:3px solid #2676b8;outline-offset:3px}
.maz-app .maz-header{padding:0 0 20px;border-bottom:1px solid var(--maz-border);margin-bottom:18px}
.maz-app .maz-kicker{font-size:11px;font-weight:800;letter-spacing:.13em;color:var(--maz-green);margin-bottom:8px}
.maz-app .maz-header h2{font-size:clamp(25px,4vw,38px);line-height:1.15;letter-spacing:-.025em;color:var(--maz-ink);margin:0 0 12px;font-weight:800;text-transform:none}
.maz-app .maz-header-desc{color:var(--maz-muted);font-size:15px;margin:0;max-width:750px}
.maz-app .maz-filter{background:#fff;border:1px solid var(--maz-border);border-radius:7px;color:var(--maz-ink);font-size:13px;font-weight:600;padding:9px 13px;white-space:nowrap;line-height:1.4;box-shadow:none;text-transform:none}
.maz-app .maz-filter[aria-pressed=true]{background:var(--maz-green);border-color:var(--maz-green);color:#fff}
.maz-tools{display:flex;gap:10px;margin:4px 0 13px;flex-wrap:wrap}
.maz-app .maz-tools input{flex:1 1 210px;min-width:0;background:#fff;border:1px solid var(--maz-border);border-radius:8px;padding:12px 14px;color:var(--maz-ink);height:auto}
.maz-app .maz-tools select{flex:0 1 245px;max-width:100%;border:1px solid var(--maz-border);background:#fff;color:var(--maz-ink);border-radius:8px;padding:11px 12px;height:auto}
.maz-quick-filters{display:flex;flex-wrap:wrap;gap:7px}
.maz-app .maz-quick-filters .maz-filter{font-size:12px;padding:6px 11px}
.maz-count{color:var(--maz-muted);font-size:12px;margin:18px 0 10px}
.maz-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:stretch;transition:opacity .15s}
.maz-grid[aria-busy=true]{opacity:.55;min-height:80px}
.maz-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--maz-border);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #142b1b05;text-align:left;margin:0!important;padding:0!important;line-height:1.4;color:var(--maz-ink)}
.maz-card-top{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:49px;padding:13px 13px 4px}
.maz-discount{background:var(--maz-green);color:#fff;border-radius:5px;font-size:16px;font-weight:800;padding:4px 8px;white-space:nowrap}
.maz-pick{font-size:10px;font-weight:700;color:var(--maz-green);background:var(--maz-soft);border-radius:30px;padding:5px 7px;text-align:center}
.maz-image-link{display:flex;align-items:center;justify-content:center;height:178px;margin:5px 14px 2px;overflow:hidden;background:#fff;text-decoration:none!important;border:0!important}
.maz-image-link img{object-fit:contain;width:100%;height:100%;max-width:100%;margin:0;border:0;box-shadow:none;mix-blend-mode:multiply}
.maz-image-empty{font-size:12px;color:var(--maz-muted);padding:30px 10px}
.maz-card-body{display:flex;flex:1;flex-direction:column;padding:14px}
.maz-card .maz-product-title{font-size:17px;line-height:1.35;font-weight:750;margin:0 0 8px;letter-spacing:-.01em;color:var(--maz-ink);text-transform:none}
.maz-card .maz-product-title a{color:var(--maz-ink)!important;text-decoration:none!important;border:0!important}
.maz-card .maz-product-title a:hover{text-decoration:underline!important}
.maz-description{font-size:12px;color:var(--maz-muted);margin:0 0 12px}
.maz-price{font-size:31px;font-weight:850;letter-spacing:-.04em;line-height:1.2;margin:3px 0 5px;font-variant-numeric:tabular-nums;color:var(--maz-ink)}
.maz-reference{font-size:11px;color:var(--maz-muted);margin:2px 0;line-height:1.5}
.maz-saving{font-size:12px;color:var(--maz-green);font-weight:650;margin:5px 0 8px}
.maz-promo-tags{display:flex;gap:5px;flex-wrap:wrap;margin:9px 0 7px}
.maz-promo-tag{font-size:10px;font-weight:800;padding:5px 7px;border:1px solid #b9d9c3;background:var(--maz-soft);color:#155e3b;border-radius:4px;letter-spacing:.015em}
.maz-promo-tag.maz-alternative{color:#655726;background:var(--maz-orange);border-color:#ead9a7}
.maz-promo-instructions{padding:8px 10px;background:#f7faf7;border-left:2px solid #b9d9c3;border-radius:3px;font-size:11px;color:#46554a}
.maz-promo-instructions span{margin:0 0 4px;line-height:1.45}
.maz-promo-instructions span:last-child{margin-bottom:0}
.maz-eligibility{font-size:10px;color:#647167}
.maz-condition{font-weight:700}
.maz-product-meta{display:flex;gap:7px;flex-wrap:wrap;color:var(--maz-green);font-weight:650;font-size:11px;margin-top:10px}
.maz-merchant,.maz-availability{font-size:10px;color:var(--maz-muted);margin:5px 0 0;overflow-wrap:anywhere}
.maz-card-actions{margin-top:auto;padding-top:11px;display:flex;flex-direction:column;gap:8px}
.maz-card .maz-buy{display:block;text-align:center;color:#fff!important;background:var(--maz-green);border-radius:7px;text-decoration:none!important;font-size:12px;font-weight:800;letter-spacing:.03em;padding:12px 8px;line-height:1.4;border:0!important}
.maz-card .maz-buy:hover{background:#105735}
.maz-card .maz-article-link{font-size:11px;color:var(--maz-green);text-align:center;text-decoration:underline;text-underline-offset:2px}
.maz-disabled{pointer-events:none;opacity:.45}
.maz-price-unavailable{font-size:15px;font-weight:700;color:var(--maz-muted);padding:18px 0}
.maz-empty{grid-column:1/-1;padding:28px 12px;font-size:14px;text-align:center;color:var(--maz-muted)}
.maz-notice{padding:14px 16px;background:var(--maz-orange);border:1px solid #ecdca8;border-radius:8px;font-size:13px;margin:14px 0}
.maz-notice span{margin:0 0 10px}
.maz-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin:24px 0;font-size:12px}
.maz-legal{margin-top:22px;padding:14px 0;border-top:1px solid var(--maz-border);color:var(--maz-muted);font-size:11px;line-height:1.6}
.maz-legal summary{cursor:pointer;font-weight:650}
.maz-legal span{margin:8px 0}
.maz-compact .maz-header{padding-bottom:14px}
.maz-compact .maz-header h2{font-size:24px}
.maz-compact .maz-header .maz-kicker,.maz-compact .maz-header-desc{display:none}
.maz-compact .maz-image-link{height:140px}
@container maz (min-width:520px){.maz-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container maz (min-width:800px){.maz-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@container maz (min-width:1000px){.maz-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@supports not (container-type:inline-size){@media(min-width:620px){.maz-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1000px){.maz-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1200px){.maz-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}}
@media(prefers-reduced-motion:reduce){.maz-grid{transition:none}}
.maz-card-top{flex-wrap:wrap}
.maz-pick{margin-left:auto;max-width:150px}
.maz-card .maz-info-badge{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:32px;border:1px solid var(--maz-green)!important;border-radius:50px;background:#fff;color:var(--maz-green)!important;font-size:11px;font-weight:800;text-decoration:none!important;padding:5px 8px;white-space:nowrap}
.maz-card .maz-info-badge:hover{background:var(--maz-green);color:white!important}
.maz-featured-section{border:1px solid #c8dfce;background:#f4faf5;border-radius:14px;padding:18px;margin:8px 0 28px}
.maz-app .maz-section-title{font-size:22px;font-weight:800;line-height:1.25;margin:0 0 8px;text-transform:none;letter-spacing:-.01em;color:var(--maz-ink)}
.maz-section-intro{font-size:12px;color:var(--maz-muted);margin:0 0 17px}
.maz-app>.maz-section-title{margin-bottom:14px}
@container maz (max-width:519px){.maz-featured-section{padding:12px}.maz-app .maz-section-title{font-size:20px}}
.maz-app{--maz-green:#176c45;--maz-soft:#f0f8f1;--maz-ink:#172b21;--maz-muted:#586a60;--maz-border:#dce6df}
.maz-app{max-width:1280px;margin:22px auto}.maz-header{display:flex;align-items:center;justify-content:space-between;gap:20px}
.maz-app .maz-header h2{font-size:32px;margin-bottom:8px}.maz-all-link{white-space:nowrap;color:#176c45;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.maz-app .maz-pick{display:inline-flex;align-items:center;justify-content:center;min-height:27px;font-size:10px;font-weight:800;letter-spacing:.015em;border-radius:6px;background:#d3f2b5;color:#173d26;padding:5px 9px;text-decoration:none!important;white-space:nowrap;margin-left:auto;max-width:none;border:0!important}
.maz-app .maz-pick-info{background:#176c45;color:#fff!important}
.maz-app .maz-pick-info:hover{background:#0e5031}
.maz-app .maz-discount{background:#b92b38;font-size:13px;padding:5px 8px}
.maz-app .maz-card .maz-buy{background:#ffd633;color:#1c291f!important;text-transform:none;letter-spacing:0;padding:11px 9px;min-height:40px;font-size:12px;font-weight:750}
.maz-app .maz-card .maz-buy:hover{background:#f5ca14}
.maz-app .maz-category-section{background:#fff;border:1px solid var(--maz-border);border-radius:12px;padding:20px;margin-bottom:25px}
.maz-app .maz-section-title{font-size:21px;font-weight:780;line-height:1.3;margin:0 0 9px;color:var(--maz-ink)}
.maz-app .maz-section-intro{font-size:12px;color:var(--maz-muted);margin:0 0 14px}
.maz-app .maz-featured-section{padding:20px;background:#eef1f0;border:1px solid #dfe4e2;border-radius:12px;margin:0 0 24px}
.maz-app .maz-subheading{grid-column:1/-1;font-size:18px;color:var(--maz-green);padding:14px 0 8px;margin:0;border-bottom:1px solid var(--maz-border)}
.maz-track{--maz-cols:1;display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#c1d6c6 transparent;overscroll-behavior-x:contain;padding:2px 0 9px;min-width:0;align-items:stretch}
.maz-track>.maz-card{flex:0 0 calc((100% - (var(--maz-cols) - 1)*10px)/var(--maz-cols));scroll-snap-align:start;scroll-snap-stop:normal;min-width:0;max-width:none}
.maz-slider{min-width:0}
.maz-mode-carousel{border:1px solid var(--maz-border);border-radius:12px;padding:18px 20px;background:#fff}
.maz-mode-carousel .maz-header{padding:0 0 14px;margin:0 0 12px}.maz-mode-carousel .maz-header h2{font-size:25px;margin:0}
/* Slider (carosello + selezionati): card orizzontale compatta, immagine a sinistra. */
.maz-track .maz-card{display:grid;grid-template-columns:150px minmax(0,1fr);grid-template-rows:auto 1fr;align-items:start}
.maz-track .maz-card-top{grid-column:1/-1;min-height:38px;padding:10px 10px 2px}
.maz-track .maz-image-link{height:auto;min-height:130px;margin:4px 0 10px 10px;align-self:stretch}
.maz-track .maz-card-body{padding:10px;align-self:stretch;display:flex;flex-direction:column}
.maz-track .maz-product-title{font-size:13px;margin:0 0 6px;line-height:1.35}
.maz-track .maz-price{font-size:20px;margin:2px 0 4px}
.maz-track .maz-reference{font-size:10px}.maz-track .maz-reference s{white-space:nowrap}
.maz-track .maz-description,.maz-track .maz-saving,.maz-track .maz-merchant,.maz-track .maz-availability{display:none}
.maz-track .maz-promo-tag{font-size:9px;padding:3px 5px}.maz-track .maz-promo-instructions{font-size:10px;padding:5px}
@media(max-width:620px){.maz-track .maz-card{grid-template-columns:120px minmax(0,1fr)}.maz-track .maz-image-link{min-height:110px}}
.maz-mode-carousel .maz-legal{margin-top:12px;padding:10px 0 0;font-size:10px}
.maz-mode-inline{margin:15px 0}.maz-mode-inline .maz-grid{margin:0}
.maz-app .maz-grid{gap:10px}
@container maz (max-width:519px){.maz-header{align-items:flex-start;flex-direction:column;gap:8px}.maz-app .maz-category-section,.maz-app .maz-featured-section{padding:14px}}
@media(prefers-reduced-motion:reduce){.maz-track{scroll-behavior:auto!important}}
.maz-promo-details{font-size:11px;color:var(--maz-green);margin:0 0 5px}.maz-promo-details summary{cursor:pointer;font-weight:650;padding:4px 0}.maz-promo-details[open] summary{margin-bottom:5px}.maz-track .maz-card-actions{padding-top:8px}
.maz-app .maz-caticons{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:4px;margin-bottom:14px}
.maz-caticon{display:flex;flex-direction:column;align-items:center;gap:4px;background:transparent;border:1px solid transparent;border-radius:10px;padding:8px 2px;cursor:pointer;color:var(--maz-ink);min-width:0}
.maz-caticon:hover{background:#f0f8f1}
.maz-caticon:focus-visible{outline:3px solid #2676b8;outline-offset:2px}
.maz-caticon[aria-pressed="true"]{background:var(--maz-green);border-color:var(--maz-green);color:#fff}
.maz-caticon-icon{display:flex}
.maz-caticon-label{font-size:10px;font-weight:400;line-height:1.2;text-align:center;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.maz-app .maz-tools .maz-quick-filters{margin-left:auto;align-items:center}
@media(max-width:900px){.maz-app .maz-caticons{grid-template-columns:repeat(8,minmax(0,1fr))}}
@media(max-width:620px){.maz-app .maz-caticons{grid-template-columns:repeat(4,minmax(0,1fr))}.maz-app .maz-tools .maz-quick-filters{margin-left:0}}
.maz-mode-page .maz-product-title{font-size:16px}
.maz-mode-page .maz-price{font-size:28px}
.maz-mode-page .maz-description{font-size:11px}
.maz-mode-page .maz-reference{font-size:12px;color:#5f6b65}
.maz-mode-page .maz-saving{font-size:12px;margin:2px 0 6px}
.maz-mode-page .maz-product-meta{font-size:10px}
.maz-mode-page .maz-promo-tag{font-size:9px}
.maz-mode-page .maz-promo-instructions{font-size:10px}
.maz-mode-page .maz-merchant,.maz-mode-page .maz-availability{font-size:9px}
.maz-app span.maz-header-desc,.maz-app span.maz-count,.maz-app span.maz-empty,.maz-card span.maz-description,.maz-card span.maz-reference,.maz-card span.maz-saving,.maz-card span.maz-merchant,.maz-card span.maz-availability,.maz-notice span,.maz-legal span,.maz-promo-instructions span{display:block}
/* Card orizzontale (shortcode layout="orizzontale"): immagine a sinistra, testi a destra. */
.maz-mode-page.maz-layout-horizontal .maz-grid{grid-template-columns:minmax(0,1fr)}
.maz-mode-page.maz-layout-horizontal .maz-grid .maz-card{display:grid;grid-template-columns:220px minmax(0,1fr);grid-template-rows:auto 1fr}
.maz-mode-page.maz-layout-horizontal .maz-card-top{grid-column:1/-1}
.maz-mode-page.maz-layout-horizontal .maz-image-link{height:auto;min-height:200px;margin:4px 0 12px 14px;align-self:stretch}
.maz-mode-page.maz-layout-horizontal .maz-card-body{padding:14px}
@media(max-width:620px){.maz-mode-page.maz-layout-horizontal .maz-grid .maz-card{grid-template-columns:150px minmax(0,1fr)}.maz-mode-page.maz-layout-horizontal .maz-image-link{min-height:150px}}
/* Export/articoli inline: stesso orizzontale; su mobile le card tornano verticali. */
.maz-mode-inline.maz-layout-horizontal .maz-grid{grid-template-columns:minmax(0,1fr)}
.maz-mode-inline.maz-layout-horizontal .maz-grid .maz-card{display:grid;grid-template-columns:220px minmax(0,1fr);grid-template-rows:auto 1fr}
.maz-mode-inline.maz-layout-horizontal .maz-card-top{grid-column:1/-1}
.maz-mode-inline.maz-layout-horizontal .maz-image-link{height:auto;min-height:200px;margin:4px 0 12px 14px;align-self:stretch}
.maz-mode-inline.maz-layout-horizontal .maz-card-body{padding:14px}
@media(max-width:620px){.maz-mode-page.maz-layout-horizontal .maz-grid .maz-card,.maz-mode-inline.maz-layout-horizontal .maz-grid .maz-card{grid-template-columns:minmax(0,1fr)}.maz-mode-page.maz-layout-horizontal .maz-image-link,.maz-mode-inline.maz-layout-horizontal .maz-image-link{height:170px;min-height:0;margin:5px 14px 2px}}
/* ==========================================================================
   Banner singola offerta (Fix Layout Desktop, Tablet e Mobile)
   ========================================================================== */

.maz-mode-banner {
    width: 100%;
    max-width: 728px;
    margin: 15px auto;
    box-sizing: border-box;
}

.maz-banner-host {
    width: 100%;
    min-height: 90px;
}

.maz-banner-empty {
    visibility: hidden;
}

/* Struttura base Flexbox per Desktop e Tablet */
.maz-app.maz-mode-banner .maz-banner,
.maz-banner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: #fff;
    border: 1px solid var(--maz-border, #dfe6e0);
    border-radius: 10px;
    padding: 8px 14px;
    overflow: hidden;
    box-sizing: border-box;
    width: 100%;
}

/* Immagine prodotto */
.maz-app.maz-mode-banner .maz-banner-media,
.maz-banner-media {
    flex: 0 0 80px; /* Dimensione fissa e contenuta */
    width: 80px;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    border: 0 !important;
    overflow: hidden;
}

.maz-app.maz-mode-banner .maz-banner-media img,
.maz-banner-media img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain;
    margin: 0 auto !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Informazioni di testo e prezzo */
.maz-app.maz-mode-banner .maz-banner-info,
.maz-banner-info {
    flex: 1 1 auto;
    min-width: 0; /* Previene l'overflow dei testi in Flexbox */
}

.maz-app.maz-mode-banner .maz-banner-title,
.maz-banner-title {
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
    color: var(--maz-ink, #15271d);
    margin: 0;
    /* Consenti al testo di andare a capo su 2 righe per evitare sovrapposizioni su Tablet */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    white-space: normal;
}

.maz-banner-title a {
    color: inherit;
    text-decoration: none;
}

.maz-banner-pricerow {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-top: 4px;
    flex-wrap: wrap;
}

.maz-banner-price {
    font-size: 18px;
    font-weight: 800;
    letter-spacing: -.02em;
    font-variant-numeric: tabular-nums;
    color: var(--maz-ink, #15271d);
}

.maz-banner-ref {
    font-size: 11px;
    color: #5f6b65;
    text-decoration: line-through;
}

.maz-banner-badge {
    background: #b92b38;
    color: #fff;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 800;
    padding: 2px 6px;
    white-space: nowrap;
}

.maz-banner-noprice {
    font-size: 12px;
    color: var(--maz-muted, #5a6a60);
}

/* Bottone Call to Action */
.maz-app.maz-mode-banner .maz-banner-cta,
.maz-banner-cta {
    flex: 0 0 auto;
    background: #ffd633;
    color: #1c291f !important;
    font-weight: 800;
    font-size: 12px;
    padding: 9px 14px;
    border-radius: 7px;
    text-decoration: none !important;
    white-space: nowrap;
    text-align: center;
}

.maz-banner-cta:hover {
    background: #f5ca14;
}

/* ==========================================================================
   Breakpoints Media Queries (Flessibilità Mobile & Tablet)
   ========================================================================== */

/* Su schermi piccoli (Mobile) passa al 100% della larghezza anziché 300px fissi */
@media (max-width: 600px) {
    .maz-mode-banner,
    .maz-app.maz-mode-banner {
        max-width: 100% !important;
        width: 100% !important;
        margin: 10px 0;
    }

    .maz-banner-host {
        min-height: auto;
        max-width: 100% !important;
    }

    .maz-app.maz-mode-banner .maz-banner,
    .maz-banner {
        flex-direction: row; /* Mantiene disposizione orizzontale se compatto, oppure passa a colonna */
        flex-wrap: wrap;
        padding: 10px;
        gap: 10px;
    }

    .maz-app.maz-mode-banner .maz-banner-media,
    .maz-banner-media {
        flex: 0 0 60px;
        width: 60px;
        height: 60px;
    }

    .maz-app.maz-mode-banner .maz-banner-info,
    .maz-banner-info {
        flex: 1 1 calc(100% - 80px);
    }

    .maz-app.maz-mode-banner .maz-banner-cta,
    .maz-banner-cta {
        flex: 1 1 100%; /* Il pulsante si allarga a tutta larghezza in basso su mobile */
        margin-top: 4px;
    }
}
/* Selezionati: titolo sopra, slider a tutta larghezza senza box, spazio prima delle categorie. */
.maz-app .maz-featured-section{background:transparent;border:0;padding:0;margin:0 0 30px}
.maz-app .maz-featured-section .maz-section-title{margin-bottom:12px}
