/* ============================================================
   Cozelia site skin v2 — "Crispora" per le pagine root.
   Carica DOPO css/comfort-breeze-v2.css. Owner: agente SHELL.
   Contenuto: 1) token Crispora  2) override accenti cbv
   3) guscio condiviso (topbar/header/footer/mbar/drawer/cookie)
   4) componenti czs-* per le pagine.
   ============================================================ */

/* 1 — Token Crispora: verde foresta, corallo, oro, fondi latte/panna */
:root{
  --cbv-ink:#1c211d;
  --cbv-muted:#5e6862;
  --cbv-blue:#166044;
  --cbv-blue-dark:#0c4330;
  --cbv-cyan:#ef6a50;
  --cbv-green:#287a58;
  --cbv-gold:#d6a43e;
  --cbv-paper:#fffcf7;
  --cbv-soft:#f7f2e9;
  --cbv-line:#e2dbc9;
  --cbv-black:#131815;
  --cbv-shadow:0 18px 48px rgba(23,32,28,.14);
  --czs-cream:#f3ebdd;
  --czs-coral-soft:#fdeee9;
}
html,body{max-width:100%;overflow-x:clip}
body{background:var(--cbv-paper);color:var(--cbv-ink)}
img{height:auto}
:focus-visible{outline-color:#ef6a50}
::selection{background:#f6d9c2}

/* 2 — Accenti cbv riallineati alla palette (i blu hardcoded del base) */
.cbv-topbar{background:#ef6a50;color:#1a211d}
.cbv-topbar i{background:rgba(26,33,29,.35)}
.cbv-header{background:rgba(255,252,247,.96)}
.cbv-brand strong{color:#ef6a50}
.cbv-brand svg circle{fill:#ef6a50}
.cbv-button{box-shadow:0 10px 24px rgba(22,96,68,.22)}
.cbv-button:hover{box-shadow:0 14px 30px rgba(22,96,68,.28)}
.cbv-hero{background:var(--cbv-soft)}
.cbv-assurance-band .cbv-icon{color:#f08a70}
.cbv-feature-list article>span,.cbv-card-grid article>span{border-color:#cfc3a4;background:var(--czs-cream)}
.cbv-steps article>span{color:#ece4d2}
.cbv-faqs summary::after{background:var(--czs-cream)}
.cbv-ugc-review-meta span,.cbv-preview-label{background:var(--czs-cream);color:var(--cbv-blue)}
.cbv-review-section{background:#faf6ee}
.cbv-review-disclosure{background:#f6f0e3}
.cbv-review-meta span{background:#efe9da;color:var(--cbv-muted)}
.cbv-proof{background:var(--czs-cream)}
.cbv-selection{border-color:#c8bb9a}
.cbv-ribbon{box-shadow:0 9px 0 #cdb884}
.cbv-offer{background:#f5efe3}
.cbv-bundles label:has(input:checked){background:#eef4ee}
.cbv-support-head>span{background:var(--czs-cream)}
.cbv-marquee i{background:#ef6a50}
.cbv-sticky{border-top:3px solid #ef6a50}
.cbv-carousel-stage{border-color:#cfc3a4;background:#f6f1e6}

/* 3a — Topbar (contrassegno) + selettore lingua iniettato da i18n.js */
.cbv-topbar.topbar{gap:10px;padding:4px 10px;flex-wrap:nowrap}
.topbar .ctry{display:flex;align-items:center;margin-left:8px}
.langsel{min-height:26px;padding:2px 4px;border:1px solid rgba(26,33,29,.4);border-radius:4px;background:#fff7f2;color:#1a211d;font-size:.68rem;font-weight:800;cursor:pointer}
@media(max-width:560px){.czs-tb2,.cbv-topbar.topbar i{display:none}}

/* 3b — Header: hamburger, azioni, CTA */
.czs-hamb{width:44px;height:44px;flex:0 0 auto;display:grid;place-items:center;padding:0;border:1px solid var(--cbv-line);border-radius:8px;background:#fff;color:var(--cbv-ink);cursor:pointer}
.czs-hamb svg{width:24px;height:24px}
.czs-hact{display:flex;align-items:center;gap:8px}
.czs-iconb{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--cbv-line);border-radius:50%;background:#fff;color:var(--cbv-ink)}
.czs-iconb:hover{border-color:var(--cbv-blue);color:var(--cbv-blue)}
.czs-iconb svg{width:22px;height:22px}
.cbv-nav a.sale{color:#c2492f}
@media(max-width:700px){.czs-iconb{display:none}}
@media(min-width:820px){.czs-hamb{display:none}}

/* 3c — Footer */
.czs-footer .cbv-brand{color:#fff}
.czs-footer .cbv-footer-grid>div:first-child p{margin-top:12px}
.czs-affiliate{margin:36px 0 0;padding:14px 16px;border:1px solid #2a3530;border-left:4px solid #ef6a50;background:#1b221e;color:#aab6ad;font-size:.74rem;line-height:1.55}
.czs-legalnav{display:flex;align-items:center;flex-wrap:wrap;gap:0 18px}
.czs-legalnav a{min-height:44px;display:inline-flex;align-items:center}
@media(min-width:620px){.czs-footer .cbv-footer-grid{grid-template-columns:1fr 1fr}}
@media(min-width:900px){.czs-footer .cbv-footer-grid{grid-template-columns:1.6fr 1fr 1fr 1fr}}

/* 3d — Barra mobile + bolla contatto */
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:95;display:grid;grid-template-columns:repeat(4,1fr);padding-bottom:env(safe-area-inset-bottom);border-top:2px solid #ef6a50;background:#fffdf9;box-shadow:0 -8px 24px rgba(23,32,28,.12)}
.mbar a{min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#4c564f;font-size:.62rem;font-weight:800}
.mbar a:hover{color:var(--cbv-blue)}
.mbar svg{width:22px;height:22px}
.wabubble{position:fixed;right:14px;bottom:96px;z-index:96;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--cbv-blue);color:#fff;box-shadow:0 12px 28px rgba(12,67,48,.35)}
.wabubble:hover{background:var(--cbv-blue-dark)}
@media(min-width:820px){.mbar{display:none}.wabubble{right:24px;bottom:24px}}

/* 3e — Drawer mobile */
.mdrawer{position:fixed;inset:0;z-index:200;visibility:hidden}
.mdrawer.open{visibility:visible}
.mdrawer-scrim{position:absolute;inset:0;background:rgba(19,24,21,.55);opacity:0;transition:opacity .25s ease}
.mdrawer.open .mdrawer-scrim{opacity:1}
.mdrawer-panel{position:absolute;left:0;top:0;bottom:0;width:min(84vw,340px);display:flex;flex-direction:column;overflow-y:auto;background:var(--cbv-paper);box-shadow:24px 0 60px rgba(19,24,21,.25);transform:translateX(-102%);transition:transform .28s var(--cbv-ease)}
.mdrawer.open .mdrawer-panel{transform:none}
.mdrawer-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--cbv-line)}
.mdrawer-top .cbv-brand{font-size:1.35rem}
.mdrawer-x{width:44px;height:44px;flex:0 0 auto;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:var(--cbv-soft);color:var(--cbv-ink);cursor:pointer}
.mdrawer-x svg{width:20px;height:20px}
.mdrawer-cta{padding:14px 16px 4px}
.mdrawer-nav{display:grid;padding:10px 8px}
.mdrawer-nav a{min-height:48px;display:flex;align-items:center;padding:0 12px;border-radius:8px;font-weight:800}
.mdrawer-nav a:hover{background:var(--cbv-soft)}
.mdrawer-nav a.sale{color:#c2492f}
.mdrawer-links{display:grid;gap:2px;padding:14px 8px;border-top:1px solid var(--cbv-line)}
.mdrawer-links a{min-height:44px;display:flex;align-items:center;padding:0 12px;color:var(--cbv-muted);font-size:.9rem;font-weight:700}
.mdrawer-links a:hover{color:var(--cbv-blue)}
.mdrawer-lang{margin-top:auto;padding:16px;border-top:1px solid var(--cbv-line)}
.mdrawer-lang .langsel{width:100%;min-height:46px;padding:10px;border:1px solid #b9c4bb;border-radius:8px;background:#fff;font-size:.9rem}

/* 3f — Banner cookie (struttura .ckbanner invariata) */
.ckbanner{position:fixed;left:12px;right:12px;bottom:12px;z-index:220;max-width:720px;margin:0 auto;border:1px solid #cdc0a4;border-radius:10px;background:#fffdf8;box-shadow:0 24px 60px rgba(19,24,21,.28)}
.ckbanner-in{display:grid;gap:12px;padding:16px}
.ckbanner p{margin:0;color:#3c463f;font-size:.8rem;line-height:1.5}
.ckbanner a{color:var(--cbv-blue);font-weight:800;text-decoration:underline;text-underline-offset:2px}
.ckbanner-btn{display:flex;gap:10px;flex-wrap:wrap}
.ckbanner .btn{flex:1 1 140px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:0 16px;border-radius:6px;font-weight:900;cursor:pointer}
.ckbanner .btn-primary{border:0;background:var(--cbv-blue);color:#fff}
.ckbanner .btn-primary:hover{background:var(--cbv-blue-dark)}
.ckbanner .btn-ghost{border:1px solid #9aa79e;background:#fff;color:var(--cbv-ink)}
.ckbanner .btn-ghost:hover{border-color:var(--cbv-ink)}

/* 4 — Componenti pagina czs-* */
.czs-hero{padding:36px 0 44px;background:linear-gradient(180deg,var(--cbv-soft),var(--cbv-paper))}
.czs-hero img{border-radius:var(--cbv-radius);box-shadow:var(--cbv-shadow)}

.czs-grid{display:grid;gap:14px}
@media(min-width:620px){.czs-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.czs-grid{grid-template-columns:repeat(3,1fr)}.czs-grid-4{grid-template-columns:repeat(4,1fr)}.czs-grid-2{grid-template-columns:repeat(2,1fr)}}

.czs-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--cbv-line);border-radius:var(--cbv-radius);background:#fff;box-shadow:0 8px 22px rgba(23,32,28,.06);transition:transform .18s ease,box-shadow .18s ease}
.czs-card:hover{transform:translateY(-3px);box-shadow:var(--cbv-shadow)}
.czs-card>img{width:100%;aspect-ratio:4/3;object-fit:cover}
.czs-card>div{flex:1;display:flex;flex-direction:column;gap:8px;padding:16px 16px 18px}
.czs-card h3{margin:0}
.czs-card p{margin:0;color:var(--cbv-muted);font-size:.9rem}
.czs-card .cbv-text-link{margin-top:auto}

.czs-badge{display:inline-flex;align-items:center;gap:6px;width:max-content;padding:5px 9px;border-radius:4px;background:#ef6a50;color:#151c18;font-size:.66rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.czs-badge-green{background:var(--cbv-blue);color:#fff}
.czs-badge-gold{background:var(--cbv-gold);color:#231a06}

.czs-steps{display:grid;gap:14px;counter-reset:czs-step}
.czs-steps article{position:relative;padding:26px 22px;border:1px solid var(--cbv-line);border-radius:var(--cbv-radius);background:#fff}
.czs-steps article::before{counter-increment:czs-step;content:counter(czs-step);width:38px;height:38px;display:grid;place-items:center;margin-bottom:16px;border-radius:50%;background:var(--cbv-blue);color:#fff;font-weight:900}
.czs-steps h3{margin-bottom:8px}
.czs-steps p{margin:0;color:var(--cbv-muted);font-size:.92rem}
@media(min-width:820px){.czs-steps{grid-template-columns:repeat(3,1fr)}}

.czs-trust{display:grid;background:var(--cbv-black);color:#fff}
.czs-trust span{min-height:58px;display:flex;align-items:center;justify-content:center;gap:9px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.14);font-size:.78rem;font-weight:900;text-align:center}
.czs-trust span:last-child{border-bottom:0}
.czs-trust .cbv-icon{width:21px;height:21px;color:#f08a70}
@media(min-width:620px){.czs-trust{grid-template-columns:repeat(3,1fr)}.czs-trust span{border-bottom:0;border-right:1px solid rgba(255,255,255,.14)}.czs-trust span:last-child{border-right:0}}

.czs-cta{padding:60px 0;background:var(--cbv-blue);color:#fff;text-align:center}
.czs-cta h2{margin-bottom:12px;color:#fff}
.czs-cta p{max-width:560px;margin:0 auto 22px;color:#d9e7de}
.czs-cta .cbv-button{background:#ef6a50;color:#151c18;box-shadow:0 12px 28px rgba(0,0,0,.25)}
.czs-cta .cbv-button:hover{background:#e2543a;color:#151c18}

.czs-prose{max-width:76ch;margin-inline:auto;padding:44px 0 64px}
.czs-prose h1{font-size:clamp(2rem,7vw,2.7rem)}
.czs-prose h2{margin-top:40px;font-size:clamp(1.45rem,5vw,1.9rem)}
.czs-prose h3{margin-top:26px}
.czs-prose p,.czs-prose li{color:#414b44;line-height:1.7}
.czs-prose ul,.czs-prose ol{padding-left:22px}
.czs-prose a{color:var(--cbv-blue);font-weight:800;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
.czs-prose table{width:100%;border-collapse:collapse;font-size:.9rem}
.czs-prose th,.czs-prose td{padding:10px 12px;border:1px solid var(--cbv-line);text-align:left;vertical-align:top}

/* Guardia FOUC multilingua (da style.css, serve alle pagine senza style.css) */
html.i18n-pending body{visibility:hidden}
