/* ═══════════════════════════════════════════════════════════
   ChiaraB — Blog (single + archive)  ·  namespace .cbb-
   Leggero per Core Web Vitals: niente effetti costosi, dimensioni
   immagini esplicite (no CLS), tipografia leggibile, mobile-first.
   ═══════════════════════════════════════════════════════════ */
:root{
  --cbb-blush:#bb847a; --cbb-blush-dk:#a06f66; --cbb-text:#54524f; --cbb-ink:#3d3b39;
  --cbb-mut:#7a746f; --cbb-cream:#f4f0ed; --cbb-paper:#faf7f4; --cbb-white:#fff; --cbb-line:#e6ddd6;
  --cbb-serif:'Cormorant Garamond',Georgia,serif; --cbb-sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --cbb-read:760px; --cbb-wide:1140px;
}
/* reset wrapper Solene */
.cbb-page .eltdf-content,.cbb-page .eltdf-content-inner,
.cbb-page .eltdf-full-width,.cbb-page .eltdf-full-width-inner,
.cbb-page .eltdf-page-content-holder{padding:0!important;margin:0!important}
.cbb-page .eltdf-grid-row{margin:0!important}
.cbb-x,.cbb-x *{box-sizing:border-box}
.cbb-x img{max-width:100%;height:auto;display:block}
.cbb-read{max-width:var(--cbb-read);margin:0 auto;padding:0 22px}
.cbb-wide{max-width:var(--cbb-wide);margin:0 auto;padding:0 22px}

.cbb-bc,.cbb-bc a{font-family:var(--cbb-serif);font-style:italic;color:var(--cbb-mut);font-size:15px;text-decoration:none}
.cbb-bc a:hover{color:var(--cbb-blush)}
.cbb-eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--cbb-blush-dk);margin:0 0 10px}
.cbb-eyebrow a{color:inherit;text-decoration:none}
.cbb-eyebrow a:hover{text-decoration:underline}
.cbb-btn{display:inline-block;background:var(--cbb-blush);color:#fff;font-family:var(--cbb-serif);font-size:19px;
  font-weight:700;padding:12px 28px;border-radius:6px;text-decoration:none;border:1px solid var(--cbb-blush);transition:background .2s,color .2s}
.cbb-btn:hover{background:#fff;color:var(--cbb-text)}
.cbb-x a:focus-visible,.cbb-btn:focus-visible{outline:2px solid var(--cbb-blush-dk);outline-offset:2px;border-radius:3px}

/* ═══ SINGLE ═══ */
.cbb-single{padding:clamp(28px,4vw,46px) 0 0}
.cbb-shead{text-align:center;padding-bottom:clamp(20px,3vw,30px)}
.cbb-title{font-family:var(--cbb-serif);font-weight:400;color:var(--cbb-ink);
  font-size:clamp(28px,4.4vw,46px);line-height:1.18;letter-spacing:.01em;margin:.25em 0 .3em}
.cbb-meta{font-family:var(--cbb-sans);font-size:13px;color:var(--cbb-mut);letter-spacing:.02em}
.cbb-meta time,.cbb-meta .sep{white-space:nowrap}
.cbb-meta .sep{margin:0 8px;opacity:.6}
.cbb-hero-img{margin:clamp(20px,3vw,32px) auto 0;max-width:var(--cbb-wide)}
.cbb-hero-img img{width:100%;border-radius:4px;aspect-ratio:16/9;object-fit:cover}

/* contenuto articolo */
.cbb-content{font-family:var(--cbb-sans);font-size:18px;line-height:1.8;color:var(--cbb-text);padding:clamp(30px,4vw,48px) 0 0}
.cbb-content > *{margin:0 0 1.15em}
.cbb-content h2{font-family:var(--cbb-serif);font-weight:400;color:var(--cbb-ink);font-size:clamp(24px,3vw,32px);line-height:1.25;margin:1.7em 0 .4em}
.cbb-content h3{font-family:var(--cbb-serif);font-weight:500;color:var(--cbb-ink);font-size:clamp(20px,2.2vw,25px);margin:1.4em 0 .35em}
.cbb-content a{color:var(--cbb-blush-dk);text-decoration:underline;text-underline-offset:2px}
.cbb-content img{border-radius:4px;margin-inline:auto}
.cbb-content ul,.cbb-content ol{padding-left:1.3em}
.cbb-content li{margin:.4em 0}
.cbb-content blockquote{border-left:3px solid var(--cbb-blush);padding:4px 0 4px 20px;margin-left:0;
  font-family:var(--cbb-serif);font-style:italic;font-size:1.18em;color:var(--cbb-ink)}
.cbb-content strong{color:var(--cbb-ink)}

.cbb-tags{margin-top:8px;display:flex;flex-wrap:wrap;gap:8px}
.cbb-tags a{font-size:12px;letter-spacing:.05em;color:var(--cbb-blush-dk);text-decoration:none;border:1px solid var(--cbb-line);border-radius:20px;padding:5px 13px}
.cbb-tags a:hover{background:var(--cbb-cream)}

.cbb-cta{background:var(--cbb-cream);border-radius:12px;text-align:center;padding:32px 24px;margin:clamp(36px,5vw,52px) 0 0}
.cbb-cta h2{font-family:var(--cbb-serif);font-weight:400;font-size:clamp(22px,2.6vw,28px);color:var(--cbb-ink);margin:0 0 .2em}
.cbb-cta p{color:var(--cbb-text);margin:0 0 1em;font-family:var(--cbb-sans);font-size:15px}

.cbb-pillars{padding:clamp(34px,5vw,52px) 0 0;text-align:center}
.cbb-pillars h2{font-family:var(--cbb-serif);font-weight:400;font-size:clamp(20px,2.4vw,26px);color:var(--cbb-ink);margin:0 0 16px}
.cbb-pill-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.cbb-pill-list a{font-family:var(--cbb-serif);font-size:17px;color:var(--cbb-blush-dk);text-decoration:none;
  border:1px solid var(--cbb-line);background:var(--cbb-white);border-radius:22px;padding:8px 18px}
.cbb-pill-list a:hover{background:var(--cbb-blush);color:#fff;border-color:var(--cbb-blush)}

/* ═══ ARCHIVE ═══ */
.cbb-arch{padding:clamp(34px,5vw,64px) 0 clamp(48px,7vw,80px)}
.cbb-arch-head{text-align:center;margin-bottom:clamp(30px,4vw,50px)}
.cbb-arch-head h1{font-family:var(--cbb-serif);font-weight:400;color:var(--cbb-ink);
  font-size:clamp(28px,4.4vw,46px);letter-spacing:.02em;margin:.2em 0 .25em}
.cbb-arch-head .desc{font-family:var(--cbb-serif);font-style:italic;color:var(--cbb-mut);font-size:clamp(16px,2vw,20px);max-width:680px;margin:0 auto;line-height:1.5}
.cbb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,34px)}
.cbb-card{display:flex;flex-direction:column}
.cbb-card-thumb{display:block;border-radius:4px;overflow:hidden;background:var(--cbb-cream);aspect-ratio:4/3}
.cbb-card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.cbb-card:hover .cbb-card-thumb img{transform:scale(1.04)}
.cbb-card .cbb-eyebrow{margin:14px 0 4px}
.cbb-card h2{font-family:var(--cbb-serif);font-weight:500;color:var(--cbb-ink);font-size:clamp(19px,2vw,23px);line-height:1.3;margin:0 0 .35em}
.cbb-card h2 a{color:inherit;text-decoration:none}
.cbb-card h2 a:hover{color:var(--cbb-blush)}
.cbb-card .exc{font-family:var(--cbb-sans);font-size:14.5px;line-height:1.7;color:var(--cbb-text);margin:0 0 .6em}
.cbb-card .more{font-family:var(--cbb-serif);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--cbb-mut);text-decoration:none}
.cbb-card .more:hover{color:var(--cbb-blush)}

/* paginazione */
.cbb-pag{margin-top:clamp(40px,5vw,60px);text-align:center}
.cbb-pag .page-numbers{display:inline-block;min-width:42px;padding:9px 12px;margin:0 3px;border:1px solid var(--cbb-line);
  border-radius:6px;text-decoration:none;color:var(--cbb-ink);font-family:var(--cbb-serif);font-size:18px}
.cbb-pag .page-numbers.current{background:var(--cbb-blush);color:#fff;border-color:var(--cbb-blush)}
.cbb-pag a.page-numbers:hover{background:var(--cbb-cream)}

/* related (single) */
.cbb-rel{background:var(--cbb-paper);margin-top:clamp(44px,6vw,72px);padding:clamp(40px,5vw,64px) 0}
.cbb-rel h2{font-family:var(--cbb-serif);font-weight:400;text-align:center;font-size:clamp(22px,2.8vw,30px);color:var(--cbb-ink);margin:0 0 28px}

@media(max-width:860px){.cbb-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.cbb-grid{grid-template-columns:1fr;max-width:440px;margin:0 auto}.cbb-content{font-size:17px}}
@media(prefers-reduced-motion:reduce){.cbb-card-thumb img,.cbb-btn{transition:none}}

/* ════════════════════════════════════════════════════════
   Override specificità tema (Solene impone h2 maiuscoli/grandi)
   + sezione "Le nostre location" sul singolo articolo
   ════════════════════════════════════════════════════════ */
body.cbb-page .cbb-title{font-size:clamp(26px,3.6vw,40px)!important;text-transform:none!important;letter-spacing:.01em!important;font-weight:400!important}
body.cbb-page .cbb-card h2{font-size:clamp(17px,1.7vw,20px)!important;text-transform:none!important;letter-spacing:normal!important;font-weight:500!important;line-height:1.3!important;margin:0 0 .35em!important}
body.cbb-page .cbb-card h2 a{font-size:inherit!important;letter-spacing:normal!important}
body.cbb-page .cbb-rel h2{font-size:clamp(20px,2.4vw,26px)!important;text-transform:none!important;letter-spacing:.01em!important}

/* Le nostre location (singolo articolo) — gemella della home */
.cbb-loc{max-width:var(--cbb-wide);margin:clamp(28px,4vw,44px) auto 0;padding:0 20px;text-align:center}
.cbb-loc > h2{font-family:var(--cbb-serif);font-weight:400;color:var(--cbb-ink);font-size:clamp(20px,2.4vw,26px);margin:0 0 clamp(18px,2.5vw,28px)}
.cbb-loc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.cbb-loc-card{display:flex;align-items:center;gap:11px;text-decoration:none;background:#fff;
  border:1px solid var(--cbb-line,#e6ddd6);border-radius:10px;padding:14px 16px;text-align:left;
  transition:border-color .2s,transform .2s,box-shadow .2s}
.cbb-loc-card:hover,.cbb-loc-card:focus-visible{border-color:var(--cbb-blush);transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.05);outline:none}
.cbb-loc-ic{font-size:1.45rem;line-height:1;flex:0 0 auto}
.cbb-loc-nm{font-family:var(--cbb-serif);font-size:clamp(15px,1.6vw,18px);color:var(--cbb-ink);line-height:1.25}
@media (max-width:860px){ .cbb-loc-grid{grid-template-columns:repeat(2,1fr)} }
@media (max-width:480px){ .cbb-loc-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto} }
