/* CS Home — tutto dentro .csh; ":not(#csh-z)" e qualche !important battono gli stili del tema Disto */
body{overflow-x:clip}
/* Disto: niente spazio bianco tra menu e hero */
.jl_home_bw:has(.csh-hero){padding-top:0 !important}
.csh:not(#csh-z){--acc:#d7372f;box-sizing:border-box;width:100vw;max-width:none;margin:0 0 0 calc(50% - 50vw);background:#fff;color:#111;font-family:Poppins,system-ui,sans-serif;font-size:16px;line-height:1.4;text-align:left;clear:both}
.csh:not(#csh-z) *,.csh:not(#csh-z) *::before,.csh:not(#csh-z) *::after{box-sizing:border-box}
.csh:not(#csh-z) a{color:#111 !important;text-decoration:none !important;box-shadow:none;border-bottom:0}
.csh:not(#csh-z) img{display:block;max-width:none;margin:0;border:0;border-radius:0;box-shadow:none}
.csh:not(#csh-z) h1,.csh:not(#csh-z) h2{margin:0;padding:0;border:0;background:none;font-family:inherit;color:inherit;text-transform:none;letter-spacing:-.01em}
.csh:not(#csh-z) h1,.csh:not(#csh-z) h2{text-transform:none !important}
.csh:not(#csh-z) .csh-hero-sh h2{text-transform:uppercase !important}
.csh:not(#csh-z) h1::before,.csh:not(#csh-z) h1::after,.csh:not(#csh-z) h2::before,.csh:not(#csh-z) h2::after{display:none}
.csh:not(#csh-z) p{margin:0}
.csh:not(#csh-z) button{font:inherit;margin:0;box-shadow:none;text-transform:none;letter-spacing:normal;min-height:0;line-height:1;cursor:pointer}
.csh:not(#csh-z) :focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.csh:not(#csh-z) .csh-in{max-width:1240px;margin:0 auto;padding:0 24px;display:flex;flex-direction:column;gap:28px}
.csh:not(#csh-z) .csh-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.csh:not(#csh-z) .csh-noimg{display:block;width:100%;height:100%;background:#e9e9e9}

/* testata delle sezioni */
.csh:not(#csh-z) .csh-h{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px}
.csh:not(#csh-z) .csh-tt{display:flex;flex-direction:column;gap:8px;max-width:640px}
.csh:not(#csh-z) .k{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--acc)}
.csh:not(#csh-z) .csh-h h2,.csh:not(#csh-z) .csh-la-h{font-size:36px;line-height:1.1;font-weight:800;color:#111}
.csh:not(#csh-z) .csh-tt p{font-size:16px;line-height:1.55;color:#555}
.csh:not(#csh-z) .pill{align-self:flex-start;background:var(--acc);color:#fff;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;border-radius:999px;line-height:1.2}
.csh:not(#csh-z) .c{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--acc)}

/* 1. HERO */
.csh-hero:not(#csh-z){background:#0d0d0d;color:#fff;padding:32px 0 56px}
.csh-hero:not(#csh-z) .csh-in{flex-direction:row;flex-wrap:wrap;gap:24px}
.csh-hero:not(#csh-z) .csh-hero-stage{flex:999 1 560px;min-width:0;position:relative;border-radius:14px;overflow:hidden;aspect-ratio:16/10;background:#222}
.csh-hero:not(#csh-z) a.csh-hero-big{position:absolute;inset:0;display:block;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s;color:#fff !important}
.csh-hero:not(#csh-z) a.csh-hero-big.on{opacity:1;visibility:visible}
.csh-hero:not(#csh-z) .csh-hero-big img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.csh-hero:not(#csh-z) .csh-hero-big .ov{position:absolute;left:0;right:0;bottom:0;padding:120px 32px 30px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.88) 70%);display:flex;flex-direction:column;gap:12px}
.csh-hero:not(#csh-z) .csh-hero-big .tt{font-size:34px;line-height:1.15;font-weight:800;color:#fff;max-width:760px}
.csh-hero:not(#csh-z) .csh-hero-big .dd{font-size:14px;color:#d9d9d9}
.csh-hero:not(#csh-z) .csh-hero-side{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:10px}
.csh-hero:not(#csh-z) .csh-hero-sh{display:flex;align-items:center;justify-content:space-between;padding:4px 2px 6px}
.csh-hero:not(#csh-z) .csh-hero-sh h2{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#bdbdbd}
.csh:not(#csh-z) .csh-nav{display:flex;gap:8px}
.csh:not(#csh-z) .csh-nav button{width:44px;height:44px;padding:0;border-radius:999px;border:1px solid #3a3a3a;background:#1a1a1a;color:#fff;display:flex;align-items:center;justify-content:center}
.csh:not(#csh-z) .csh-nav button:hover{border-color:var(--acc)}
.csh-hero:not(#csh-z) .csh-hero-list{display:flex;flex-direction:column;gap:10px}
.csh-hero:not(#csh-z) a.csh-hero-row{display:flex;align-items:center;gap:14px;width:100%;padding:10px;border-radius:12px;border:1px solid #262626;background:transparent;color:#fff !important;transition:background .2s,border-color .2s}
.csh-hero:not(#csh-z) a.csh-hero-row.on,.csh-hero:not(#csh-z) a.csh-hero-row:hover{background:#1f1f1f;border-color:var(--acc)}
.csh-hero:not(#csh-z) .csh-hero-row img,.csh-hero:not(#csh-z) .csh-hero-row .csh-noimg{width:104px;height:72px;object-fit:cover;border-radius:8px;flex:none}
.csh-hero:not(#csh-z) .csh-hero-row .tx{display:flex;flex-direction:column;gap:4px;min-width:0}
.csh-hero:not(#csh-z) .csh-hero-row .c{color:#bdbdbd}
.csh-hero:not(#csh-z) .csh-hero-row.on .c{color:#fff}
.csh-hero:not(#csh-z) .csh-hero-row .t{font-size:14px;line-height:1.3;font-weight:600;color:#fff}

/* 3. DOVE COMPRARE */
.csh-partner:not(#csh-z){padding:64px 0}
.csh-partner:not(#csh-z) .csh-aff{font-size:12px;color:#6b6b6b}
.csh-partner:not(#csh-z) .csh-partner-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}
.csh-partner:not(#csh-z) a.csh-partner-c{display:flex;flex-direction:column;align-items:center;gap:12px;padding:22px 16px 18px;border:1px solid #e3e3e3;border-radius:14px;background:#fff;transition:border-color .15s}
.csh-partner:not(#csh-z) a.csh-partner-c:hover{border-color:#bdbdbd}
.csh-partner:not(#csh-z) .csh-partner-c img{width:120px;height:120px;object-fit:contain}
.csh-partner:not(#csh-z) .csh-partner-c b{font-size:15px;font-weight:700;color:#111}
.csh-partner:not(#csh-z) .csh-partner-c span{font-size:13px;font-weight:600;color:var(--acc)}

/* 4. LEGGI ANCHE */
.csh-leggi:not(#csh-z){padding:8px 0 64px}
.csh-leggi:not(#csh-z) .csh-in{gap:24px}
.csh-leggi:not(#csh-z) .csh-la-h{padding-top:48px;border-top:1px solid #e3e3e3}
.csh-leggi:not(#csh-z) .csh-la{display:flex;flex-wrap:wrap;gap:24px}
.csh-leggi:not(#csh-z) a.csh-la-main{flex:999 1 520px;min-width:0;position:relative;display:block;border-radius:14px;overflow:hidden;min-height:380px;background:#222;color:#fff !important}
.csh-leggi:not(#csh-z) .csh-la-main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.csh-leggi:not(#csh-z) .csh-la-main .ov{position:absolute;left:0;right:0;bottom:0;padding:100px 28px 26px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.85) 70%);display:flex;flex-direction:column;gap:10px}
.csh-leggi:not(#csh-z) .csh-la-main .tt{font-size:28px;line-height:1.2;font-weight:800;color:#fff}
.csh-leggi:not(#csh-z) .csh-la-list{flex:1 1 340px;min-width:0;display:flex;flex-direction:column;gap:14px}
.csh-leggi:not(#csh-z) a.csh-la-row{display:flex;align-items:center;gap:16px;padding-bottom:14px;border-bottom:1px solid #ececec !important}
.csh-leggi:not(#csh-z) .csh-la-row img,.csh-leggi:not(#csh-z) .csh-la-row .csh-noimg{width:120px;height:84px;object-fit:cover;border-radius:10px;flex:none}
.csh-leggi:not(#csh-z) .csh-la-row .tx{display:flex;flex-direction:column;gap:6px;min-width:0}
.csh-leggi:not(#csh-z) .csh-la-row .t{font-size:16px;line-height:1.3;font-weight:700;color:#111}
.csh-leggi:not(#csh-z) a.csh-la-row:hover .t{color:var(--acc)}

/* 5. BRAND */
.csh-brand:not(#csh-z){padding:64px 0 72px;background:#f3f2ef}
.csh-brand:not(#csh-z) .csh-brand-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.csh-brand:not(#csh-z) a.csh-brand-c{display:flex;flex-direction:column;justify-content:space-between;gap:18px;min-height:150px;padding:20px;border-radius:14px;background:#fff;border:1px solid #e3e3e3;transition:border-color .15s}
.csh-brand:not(#csh-z) a.csh-brand-c:hover{border-color:#111}
.csh-brand:not(#csh-z) .top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.csh-brand:not(#csh-z) .lg{height:56px;display:flex;align-items:center}
.csh-brand:not(#csh-z) .lg img{max-height:48px;max-width:120px;width:auto;height:auto;object-fit:contain}
.csh-brand:not(#csh-z) .lg .wm{font-size:22px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#111;line-height:1.1}
.csh-brand:not(#csh-z) .bt{display:flex;flex-direction:column;gap:2px}
.csh-brand:not(#csh-z) .bt b{font-size:18px;font-weight:800;color:#111}
.csh-brand:not(#csh-z) .bt span{font-size:13px;color:#6b6b6b}

/* 6. NOTIZIE */
.csh-news:not(#csh-z){padding:72px 0}
.csh-news:not(#csh-z) .csh-news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}
.csh-news:not(#csh-z) a.csh-news-c{display:flex;flex-direction:column;background:#fff;border-radius:14px;overflow:hidden;border:1px solid #e3e3e3;transition:border-color .15s}
.csh-news:not(#csh-z) a.csh-news-c:hover{border-color:#bdbdbd}
.csh-news:not(#csh-z) .csh-news-c img,.csh-news:not(#csh-z) .csh-news-c .csh-noimg{width:100%;aspect-ratio:3/2;object-fit:cover;background:#e9e9e9}
.csh-news:not(#csh-z) .csh-news-c .tx{display:flex;flex-direction:column;gap:8px;padding:18px 20px 22px}
.csh-news:not(#csh-z) .csh-news-c .t{font-size:18px;line-height:1.3;font-weight:700;color:#111}
.csh-news:not(#csh-z) a.csh-news-c:hover .t{color:var(--acc)}
.csh-news:not(#csh-z) .csh-news-c .d{font-size:13px;color:#6b6b6b}
.csh-news:not(#csh-z) .csh-more{display:flex;justify-content:center}
.csh-news:not(#csh-z) .csh-more button{display:inline-flex;align-items:center;min-height:48px;padding:0 28px;border-radius:999px;border:2px solid #111;background:#fff;color:#111;font-size:15px;font-weight:700}
.csh-news:not(#csh-z) .csh-more button:hover{background:#111;color:#fff}
.csh-news:not(#csh-z) .csh-more button[disabled]{opacity:.5;cursor:wait}

/* MOBILE */
@media (max-width:899px){
  /* hero: il primo articolo in grande, sotto gli altri (ogni riga apre il suo articolo) */
  .csh-hero:not(#csh-z) .csh-nav,.csh-hero:not(#csh-z) .csh-hero-row:first-child{display:none}
  .csh-hero:not(#csh-z) a.csh-hero-row.on{background:transparent;border-color:#262626}
  .csh-hero:not(#csh-z) .csh-hero-row.on .c{color:#bdbdbd}
}
@media (max-width:640px){
  .csh:not(#csh-z) .csh-in{padding:0 16px;gap:20px}
  .csh:not(#csh-z) .csh-h h2,.csh:not(#csh-z) .csh-la-h{font-size:28px}
  .csh-hero:not(#csh-z){padding:16px 0 40px}
  .csh-hero:not(#csh-z) .csh-in{gap:16px}
  .csh-hero:not(#csh-z) .csh-hero-stage{aspect-ratio:4/5;flex-basis:100%}
  .csh-hero:not(#csh-z) .csh-hero-big .ov{padding:80px 18px 20px;gap:10px}
  .csh-hero:not(#csh-z) .csh-hero-big .tt{font-size:22px}
  .csh-hero:not(#csh-z) .csh-hero-side{flex-basis:100%}
  .csh-hero:not(#csh-z) .csh-hero-row img,.csh-hero:not(#csh-z) .csh-hero-row .csh-noimg{width:96px;height:66px}
  .csh-partner:not(#csh-z),.csh-brand:not(#csh-z){padding:44px 0}
  .csh-partner:not(#csh-z) .csh-partner-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .csh-partner:not(#csh-z) .csh-partner-c img{width:96px;height:96px}
  .csh-leggi:not(#csh-z) .csh-la-h{padding-top:36px}
  .csh-leggi:not(#csh-z) a.csh-la-main{min-height:300px}
  .csh-leggi:not(#csh-z) .csh-la-main .tt{font-size:22px}
  .csh-leggi:not(#csh-z) .csh-la-main .ov{padding:80px 18px 20px}
  .csh-leggi:not(#csh-z) .csh-la-row img,.csh-leggi:not(#csh-z) .csh-la-row .csh-noimg{width:96px;height:68px}
  .csh-leggi:not(#csh-z) .csh-la-row .t{font-size:15px}
  .csh-brand:not(#csh-z) .csh-brand-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .csh-brand:not(#csh-z) a.csh-brand-c{min-height:130px;padding:16px}
  .csh-brand:not(#csh-z) .lg{height:44px}
  .csh-brand:not(#csh-z) .lg img{max-height:36px;max-width:96px}
  .csh-brand:not(#csh-z) .lg .wm{font-size:16px}
  .csh-brand:not(#csh-z) .bt b{font-size:16px}
  .csh-news:not(#csh-z){padding:48px 0}
  .csh-news:not(#csh-z) .csh-news-grid{grid-template-columns:1fr;gap:18px}
}
