@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;700&display=swap');

/*
Theme Name:  Catch Wheels Child
Template:    catch-wheels
Description: Child theme di Catch Wheels per matese.bike
Version:     1.0
Author:      matese.bike
*/

/* ============================================================
   MATESE-BLACK — house style matese.bike
   Regole per gli articoli editoriali del sito.
   ============================================================ */

:root {
  --mb-bg-page:   #1a1a1a;
  --mb-bg-box:    #252420;
  --mb-bg-deep:   #1e1c16;
  --mb-text:      #e8e4dc;
  --mb-gold:      #c8a96e;
  --mb-green:     #5a8a5a;
  --mb-alert:     #a05050;
  --mb-border:    #3a3830;
  --mb-font-body: Georgia, 'Times New Roman', serif;
  --mb-font-ui:   Arial, Helvetica, sans-serif;
}

.mb-articolo {
  background: var(--mb-bg-page);
  color: var(--mb-text);
  font-family: var(--mb-font-body);
  font-size: 17px;
  line-height: 1.75;
  padding: 40px 20px 80px;
}

.mb-serie-bandiera {
  display: inline-block;
  font-family: var(--mb-font-ui);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #1a1a1a;
  background: var(--mb-gold);
  padding: 4px 10px;
  margin-bottom: 14px;
}

.mb-kicker {
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--mb-gold);
  margin-bottom: 18px;
}

.mb-titolo {
  font-family: var(--mb-font-body);
  font-size: clamp(26px, 4vw, 38px);
  font-weight: 700;
  line-height: 1.2;
  color: var(--mb-text);
  margin-bottom: 16px;
}

.mb-sottotitolo {
  font-family: var(--mb-font-body);
  font-size: 19px;
  font-style: italic;
  color: #b0a898;
  line-height: 1.5;
  margin-bottom: 20px;
  border-left: 3px solid var(--mb-gold);
  padding-left: 16px;
}

.mb-meta {
  font-family: var(--mb-font-ui);
  font-size: 12px;
  color: #7a7468;
  letter-spacing: .06em;
  margin-bottom: 40px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--mb-border);
}

.mb-corpo {
  font-family: var(--mb-font-body);
  font-size: 17px;
  line-height: 1.8;
  color: var(--mb-text);
}

.mb-corpo p { margin-bottom: 1.4em; }

.mb-corpo h2, .mb-h2 {
  font-family: var(--mb-font-ui);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--mb-gold);
  margin: 2.4em 0 1em;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--mb-border);
}

.mb-corpo h3, .mb-h3 {
  font-family: var(--mb-font-ui);
  font-size: 15px;
  font-weight: 700;
  color: var(--mb-text);
  margin: 2em 0 .8em;
}

.mb-pull-quote {
  margin: 2.2em 0;
  padding: 20px 24px;
  border-left: 4px solid var(--mb-gold);
  background: var(--mb-bg-deep);
  font-size: 18px;
  font-style: italic;
  color: var(--mb-gold);
  line-height: 1.55;
}

/* BOX GOLD */
.mb-box {
  background: var(--mb-bg-box);
  border: 1px solid var(--mb-border);
  border-top: 3px solid var(--mb-gold);
  padding: 22px 24px;
  margin: 2em 0;
  font-size: 15.5px;
}
.mb-box .mb-box-titolo {
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--mb-gold);
  margin-bottom: 12px;
}
.mb-box p { margin-bottom: .9em; }
.mb-box p:last-child { margin-bottom: 0; }

/* BOX ALLERTA */
.mb-box-allerta {
  background: #2a1a1a;
  border: 1px solid #5a2a2a;
  border-top: 3px solid var(--mb-alert);
  padding: 22px 24px;
  margin: 2em 0;
  font-size: 15.5px;
}
.mb-box-allerta .mb-box-titolo {
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--mb-alert);
  margin-bottom: 12px;
}
.mb-box-allerta p { margin-bottom: .9em; }
.mb-box-allerta p:last-child { margin-bottom: 0; }

/* BOX TECNICO */
.mb-box-tecnico {
  background: #1a1e1a;
  border: 1px solid #2a3a2a;
  border-top: 3px solid var(--mb-green);
  padding: 22px 24px;
  margin: 2em 0;
  font-size: 15.5px;
}
.mb-box-tecnico .mb-box-titolo {
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--mb-green);
  margin-bottom: 12px;
}
.mb-box-tecnico p { margin-bottom: .9em; }
.mb-box-tecnico p:last-child { margin-bottom: 0; }

/* BOX MOTO */
.mb-box-moto {
  background: var(--mb-bg-box);
  border: 1px solid var(--mb-border);
  border-top: 3px solid var(--mb-green);
  padding: 22px 24px;
  margin: 2em 0;
  font-size: 15.5px;
}
.mb-box-moto .mb-box-titolo {
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--mb-green);
  margin-bottom: 12px;
}
.mb-box-moto p { margin-bottom: .9em; }
.mb-box-moto p:last-child { margin-bottom: 0; }

/* BOX MEMORIA */
.mb-box-memoria {
  background: #1e1e28;
  border: 1px solid #3a3850;
  border-top: 3px solid #7a7ab0;
  padding: 22px 24px;
  margin: 2em 0;
  font-size: 15.5px;
}
.mb-box-memoria .mb-box-titolo {
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #9a9ad0;
  margin-bottom: 12px;
}
.mb-box-memoria p { margin-bottom: .9em; }
.mb-box-memoria p:last-child { margin-bottom: 0; }

/* BOX PRESENZA */
.mb-box-presenza {
  background: #1a1e24;
  border: 1px solid #2a3848;
  border-top: 3px solid #6a8aaa;
  padding: 22px 24px;
  margin: 2em 0;
  font-size: 15.5px;
}
.mb-box-presenza .mb-box-titolo {
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #6a8aaa;
  margin-bottom: 12px;
}
.mb-box-presenza p { margin-bottom: .9em; }
.mb-box-presenza p:last-child { margin-bottom: 0; }

/* BOX CORRELATI */
.mb-box-correlati {
  background: #1e1e18;
  border: 1px solid #4a4830;
  border-top: 3px solid #8a8a50;
  padding: 20px 24px;
  margin-bottom: 2.2em;
  font-size: 15px;
}
.mb-box-correlati .mb-box-titolo {
  font-family: var(--mb-font-ui);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #8a8a50;
  margin-bottom: 10px;
}
.mb-box-correlati p { margin-bottom: .8em; }
.mb-box-correlati p:last-child { margin-bottom: 0; }

/* ESEMPIO */
.mb-esempio {
  margin: 1.6em 0;
  padding: 16px 20px;
  border-left: 3px solid var(--mb-border);
  background: var(--mb-bg-deep);
  font-size: 15.5px;
  font-style: italic;
  color: #a0988e;
}
.mb-esempio strong {
  font-style: normal;
  color: var(--mb-text);
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  display: block;
  margin-bottom: 6px;
}

/* TIMELINE */
.mb-timeline {
  margin: 2.4em 0;
  padding: 0 0 0 28px;
  list-style: none;
  border-left: 2px solid var(--mb-border);
}
.mb-timeline-item {
  position: relative;
  margin-bottom: 2.2em;
  font-size: 16px;
  line-height: 1.7;
}
.mb-timeline-item::before {
  content: '';
  position: absolute;
  left: -35px;
  top: 6px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--mb-gold);
  border: 2px solid var(--mb-bg-page);
}
.mb-timeline-item.allerta::before { background: var(--mb-alert); }
.mb-timeline-item.recente::before { background: var(--mb-green); }

.mb-tl-anno {
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--mb-gold);
  display: block;
  margin-bottom: 3px;
}
.mb-timeline-item.allerta .mb-tl-anno { color: var(--mb-alert); }
.mb-timeline-item.recente .mb-tl-anno { color: var(--mb-green); }

.mb-tl-luogo {
  font-family: var(--mb-font-ui);
  font-size: 12px;
  color: #7a7468;
  margin-bottom: 5px;
  display: block;
}
.mb-tl-testo { color: var(--mb-text); }
.mb-tl-fonte {
  display: block;
  margin-top: 6px;
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-style: italic;
  color: #5a5448;
}

/* AZIONI ep.4 */
.mb-azione {
  margin: 1.8em 0;
  padding: 0 0 0 20px;
  border-left: 4px solid var(--mb-green);
}
.mb-azione-numero {
  font-family: var(--mb-font-ui);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--mb-green);
  margin-bottom: 4px;
}
.mb-azione-titolo {
  font-family: var(--mb-font-ui);
  font-size: 15px;
  font-weight: 700;
  color: var(--mb-text);
  margin-bottom: 8px;
}
.mb-azione-testo {
  font-size: 16px;
  color: #c0b8b0;
  line-height: 1.7;
  margin-bottom: 6px;
}
.mb-azione-chi {
  font-family: var(--mb-font-ui);
  font-size: 11px;
  color: #5a5448;
  letter-spacing: .06em;
  margin-top: 6px;
}
.mb-azione-chi span { color: #7a7060; }

/* SEPARATORE */
.mb-hr {
  border: none;
  border-top: 1px solid var(--mb-border);
  margin: 3em 0;
}

/* NAVIGAZIONE SERIE */
.mb-nav-serie {
  margin-top: 3.5em;
  padding: 20px 24px;
  background: var(--mb-bg-box);
  border: 1px solid var(--mb-border);
  font-family: var(--mb-font-ui);
  font-size: 13px;
}
.mb-nav-serie .mb-nav-titolo {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--mb-gold);
  margin-bottom: 14px;
}
.mb-nav-serie ol {
  padding-left: 1.4em;
  color: #7a7468;
}
.mb-nav-serie ol li { margin-bottom: 6px; }
.mb-nav-serie ol li.corrente { color: var(--mb-text); font-weight: 700; }
.mb-nav-serie ol li a { color: var(--mb-gold); text-decoration: none; }
.mb-nav-serie ol li a:hover { text-decoration: underline; }

/* CHIUSURA */
.mb-chiusura {
  margin-top: 3em;
  padding-top: 1.6em;
  border-top: 1px solid var(--mb-border);
  font-family: var(--mb-font-body);
  font-size: 15px;
  font-style: italic;
  color: #9a9488;
  line-height: 1.65;
}
.mb-chiusura p { margin-bottom: .8em; }
.mb-chiusura p:last-child { margin-bottom: 0; }

/* FIRMA */
.mb-firma {
  margin-top: 1.8em;
  font-family: var(--mb-font-ui);
  font-size: 12px;
  letter-spacing: .08em;
  color: #6a6458;
}

/* NUMERO DISPLAY */
.mb-numero-display {
  display: block;
  font-family: var(--mb-font-ui);
  font-size: 88px;
  font-weight: 900;
  color: var(--mb-alert);
  line-height: 1;
  margin: 1.2em 0 .2em;
  letter-spacing: -.02em;
  opacity: .85;
}
.mb-numero-label {
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: #7a6868;
  margin-bottom: 2em;
}
/* ============================================================
   HEADER COMPATTO — Opzione B (logo 50px, massima compattezza)
   ============================================================ */
.site-branding {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    padding: 8px 15px !important;
    gap: 12px;
}

.custom-logo-link img.custom-logo {
    width: 50px !important;
    height: 50px !important;
}

.site-identity {
    text-align: left !important;
}

.site-title {
    font-size: 20px !important;
    margin-bottom: 2px !important;
}

.site-description {
    font-size: 11px !important;
    margin-bottom: 0 !important;
}

/* ============================================================
   MATESE-LIGHT — stile alternativo per guide pratiche e
   contenuto strumentale. Prefisso: mb-light-*
   Aggiunto a style.css del child theme Catch Wheels Child.
   Riferimento visivo: articolo GPX/percorsi matese.bike
   ============================================================ */

.mb-light-articolo {
  font-family: var(--mb-font-body);
  font-size: 17px;
  line-height: 1.85;
  color: var(--mb-text);
  padding: 2.5rem 1.2rem 4rem;
}

/* KICKER */
.mb-light-kicker {
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--mb-gold);
  margin-bottom: 0.9rem;
}

/* SOTTOTITOLO */
.mb-light-sottotitolo {
  font-size: 17px;
  font-style: italic;
  line-height: 1.65;
  color: #b0aa9e;
  margin: 0 0 1.4rem;
}

/* META — con supporto tag colorati */
.mb-light-meta {
  font-family: var(--mb-font-ui);
  font-size: 12px;
  color: #7a7570;
  border-top: 1px solid var(--mb-border);
  border-bottom: 1px solid var(--mb-border);
  padding: 0.5rem 0;
  margin-bottom: 2.2rem;
  display: flex;
  gap: 1.2rem;
  flex-wrap: wrap;
  align-items: center;
}

.mb-light-meta-tag {
  background: rgba(90, 138, 90, 0.18);
  color: #7aaa7a;
  padding: 0.15rem 0.5rem;
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 700;
}

/* CORPO */
.mb-light-corpo p {
  margin: 0 0 1.45rem;
}

.mb-light-corpo h2 {
  font-family: var(--mb-font-ui);
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  color: var(--mb-gold);
  margin: 2.8rem 0 0.85rem;
  border-bottom: 1px solid var(--mb-border);
  padding-bottom: 0.45rem;
}

.mb-light-corpo h3 {
  font-family: var(--mb-font-ui);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #8aaa6a;
  margin: 2.2rem 0 0.7rem;
}

/* PULL QUOTE */
.mb-light-pull {
  border-left: 3px solid var(--mb-gold);
  padding: 0.3rem 0 0.3rem 1.3rem;
  margin: 2.2rem 0;
  font-size: 19px;
  font-style: italic;
  color: #b0aa9e;
  line-height: 1.6;
}

/* BOX VERDE (informativo) */
.mb-light-box {
  background: var(--mb-bg-box);
  border-left: 3px solid var(--mb-green);
  padding: 1.25rem 1.5rem;
  margin: 2.2rem 0;
  font-family: var(--mb-font-ui);
  font-size: 14px;
  line-height: 1.72;
  color: #c8c4bc;
}

.mb-light-box .mb-light-box-titolo {
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--mb-green);
  margin-bottom: 0.65rem;
}

.mb-light-box p {
  margin: 0 0 0.7rem;
}

.mb-light-box p:last-child {
  margin: 0;
}

/* BOX MOTO (oro, per note specifiche motociclismo) */
.mb-light-box-moto {
  background: var(--mb-bg-deep);
  border-left: 4px solid var(--mb-gold);
  border-top: 1px solid var(--mb-border);
  border-bottom: 1px solid var(--mb-border);
  padding: 1.7rem 1.75rem;
  margin: 2.8rem 0;
  font-family: var(--mb-font-ui);
  font-size: 14px;
  line-height: 1.75;
  color: #c8c4bc;
}

.mb-light-box-moto .mb-light-box-titolo {
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.13em;
  color: var(--mb-gold);
  margin-bottom: 0.55rem;
}

.mb-light-box-moto h4 {
  font-family: var(--mb-font-body);
  font-size: 18px;
  font-weight: 700;
  color: var(--mb-text);
  line-height: 1.3;
  margin: 0 0 1.1rem;
}

.mb-light-box-moto p {
  margin: 0 0 0.85rem;
}

.mb-light-box-moto p:last-child {
  margin: 0;
}

.mb-light-box-moto strong {
  color: var(--mb-text);
  font-weight: 700;
}

/* BOX ALLERTA */
.mb-light-box-allerta {
  background: #241e1e;
  border-left: 3px solid var(--mb-alert);
  padding: 1.25rem 1.5rem;
  margin: 2.2rem 0;
  font-family: var(--mb-font-ui);
  font-size: 14px;
  line-height: 1.72;
  color: #c8c4bc;
}

.mb-light-box-allerta .mb-light-box-titolo {
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #c07070;
  margin-bottom: 0.65rem;
}

.mb-light-box-allerta p {
  margin: 0 0 0.7rem;
}

.mb-light-box-allerta p:last-child {
  margin: 0;
}

/* LINK — solo dentro mb-light-*, border-bottom animato */
.mb-light-articolo a {
  color: var(--mb-gold);
  text-decoration: none;
  border-bottom: 1px solid rgba(200, 169, 110, 0.35);
  transition: border-color 0.2s;
}

.mb-light-articolo a:hover {
  border-bottom-color: var(--mb-gold);
}

.mb-light-box a,
.mb-light-box-moto a,
.mb-light-box-allerta a {
  color: #8aaa6a;
  border-bottom: 1px solid rgba(138, 170, 106, 0.35);
  text-decoration: none;
  transition: border-color 0.2s;
}

.mb-light-box a:hover,
.mb-light-box-moto a:hover,
.mb-light-box-allerta a:hover {
  border-bottom-color: #8aaa6a;
}

/* CHIUSURA */
.mb-light-chiusura {
  font-style: italic;
  font-size: 16px;
  color: #b0aa9e;
  border-top: 1px solid var(--mb-border);
  margin-top: 3rem;
  padding-top: 1.75rem;
  line-height: 1.8;
}

.mb-light-chiusura p {
  margin-bottom: 0.8em;
}

.mb-light-chiusura p:last-child {
  margin-bottom: 0;
}

/* FIRMA */
.mb-light-firma {
  font-family: var(--mb-font-ui);
  font-size: 12px;
  color: #5a5650;
  margin-top: 1.4rem;
  letter-spacing: 0.05em;
}

/* BOX COLLASSABILE (details/summary) */
.mb-light-details {
  background: var(--mb-bg-box);
  border-left: 3px solid var(--mb-green);
  margin: 2.2rem 0;
  font-family: var(--mb-font-ui);
  font-size: 14px;
  line-height: 1.72;
  color: #c8c4bc;
}

.mb-light-details summary {
  list-style: none;
  cursor: pointer;
  padding: 1rem 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  user-select: none;
}

.mb-light-details summary::-webkit-details-marker {
  display: none;
}

.mb-light-details summary .mb-light-details-titolo {
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--mb-green);
}

.mb-light-details summary::after {
  content: '+';
  font-family: var(--mb-font-ui);
  font-size: 18px;
  font-weight: 300;
  color: var(--mb-green);
  flex-shrink: 0;
  line-height: 1;
  transition: transform 0.2s;
}

.mb-light-details[open] summary::after {
  content: '−';
}

.mb-light-details summary:hover {
  background: rgba(90, 138, 90, 0.08);
}

.mb-light-details .mb-light-details-corpo {
  padding: 0 1.5rem 1.25rem;
  border-top: 1px solid var(--mb-border);
}

.mb-light-details .mb-light-details-corpo p {
  margin: 0.7rem 0 0;
}

.mb-light-details .mb-light-details-corpo p:last-child {
  margin-bottom: 0;
}

.mb-light-details a {
  color: #8aaa6a;
  border-bottom: 1px solid rgba(138, 170, 106, 0.35);
  text-decoration: none;
  transition: border-color 0.2s;
}

.mb-light-details a:hover {
  border-bottom-color: #8aaa6a;
}

/* SEPARATORE NARRATIVO/REPORT */
.mb-light-separatore {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  margin: 3.5rem 0;
}

.mb-light-separatore::before,
.mb-light-separatore::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--mb-border);
}

.mb-light-separatore-label {
  font-family: var(--mb-font-ui);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--mb-gold);
  white-space: nowrap;
  opacity: 0.7;
}

/* ============================================================
   Fine blocco MATESE-LIGHT
   ============================================================ */

/* ============================================================
   HEADER MEDIA COMPATTO — altezza ridotta su tutte le pagine
   ============================================================ */
.custom-header-media {
    max-height: 180px !important;
    overflow: hidden !important;
}

.custom-header-media img,
.custom-header-media video,
.custom-header-media iframe {
    max-height: 180px !important;
    object-fit: cover !important;
    object-position: center 40% !important;
}

/* ============================================================
   HEADER MEDIA COMPATTO v2 — height forzata su .custom-header
   ============================================================ */
.custom-header {
    height: 180px !important;
    min-height: 0 !important;
}

.custom-header:before {
    height: 180px !important;
}

.custom-header-media img {
    height: 180px !important;
    width: 100% !important;
    object-fit: cover !important;
    object-position: center 40% !important;
}

/* ============================================================
   HEADER COMPATTO v3 — testo centrato verticalmente
   ============================================================ */
.custom-header-content {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 10 !important;
    text-align: center !important;
    width: 100% !important;
}

.custom-header .entry-title {
    font-size: 22px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
}

/* ============================================================
   HEADER COMPATTO v5 — testo non maiuscolo, dimensioni ridotte
   ============================================================ */
.custom-header .entry-title,
.custom-header .entry-summary,
.custom-header .entry-content,
.custom-header-content p {
    text-transform: none !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
}

.custom-header .entry-title {
    font-size: 20px !important;
}

/* HEADER — peso font normale */
.custom-header .entry-summary,
.custom-header .entry-content,
.custom-header-content p {
    font-weight: 400 !important;
}

/* HEADER — corsivo per descrizione */
.custom-header .entry-summary,
.custom-header .entry-content,
.custom-header-content p {
    font-style: italic !important;
}

/* ============================================================
   MATESE-TECNO — stile per guide tecniche, trucchi e consigli.
   Font: Inter (sans-serif, leggero e leggibile).
   Sfondo dark alleggerito. Palette colori condivisa con BLACK/LIGHT.
   Prefisso: mb-tecno-*
   ============================================================ */

:root {
  --mb-tecno-bg-page: #22231f;
  --mb-tecno-bg-box:  #2c2d29;
  --mb-tecno-bg-deep: #272820;
  --mb-tecno-font:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.mb-tecno-articolo {
  background:   var(--mb-tecno-bg-page);
  color:        var(--mb-text);
  font-family:  var(--mb-tecno-font);
  font-size:    16px;
  font-weight:  300;
  line-height:  1.85;
  padding:      2.5rem 1.2rem 4rem;
}

/* KICKER */
.mb-tecno-kicker {
  font-family:     var(--mb-tecno-font);
  font-size:       10px;
  font-weight:     700;
  letter-spacing:  0.18em;
  text-transform:  uppercase;
  color:           var(--mb-gold);
  margin-bottom:   0.9rem;
}

/* TITOLO */
.mb-tecno-titolo {
  font-family:   var(--mb-tecno-font);
  font-size:     clamp(24px, 4vw, 36px);
  font-weight:   500;
  line-height:   1.2;
  color:         var(--mb-text);
  margin-bottom: 1rem;
  letter-spacing: -0.01em;
}

/* SOTTOTITOLO */
.mb-tecno-sottotitolo {
  font-family:   var(--mb-tecno-font);
  font-size:     16px;
  font-weight:   300;
  font-style:    italic;
  line-height:   1.65;
  color:         #b0aa9e;
  margin:        0 0 1.4rem;
}

/* META */
.mb-tecno-meta {
  font-family:    var(--mb-tecno-font);
  font-size:      11px;
  font-weight:    400;
  color:          #7a7570;
  border-top:     1px solid var(--mb-border);
  border-bottom:  1px solid var(--mb-border);
  padding:        0.5rem 0;
  margin-bottom:  2.2rem;
  display:        flex;
  gap:            1.2rem;
  flex-wrap:      wrap;
  align-items:    center;
  letter-spacing: 0.05em;
}

.mb-tecno-meta-tag {
  background:     rgba(90, 138, 90, 0.18);
  color:          #7aaa7a;
  padding:        0.15rem 0.5rem;
  font-size:      10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight:    700;
}

/* CORPO */
.mb-tecno-corpo {
  font-family: var(--mb-tecno-font);
  font-size:   16px;
  font-weight: 300;
  line-height: 1.85;
  color:       var(--mb-text);
}

.mb-tecno-corpo p {
  margin: 0 0 1.45rem;
}

.mb-tecno-corpo strong {
  font-weight: 500;
  color:       var(--mb-text);
}

.mb-tecno-corpo h2 {
  font-family:    var(--mb-tecno-font);
  font-size:      11px;
  font-weight:    700;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color:          var(--mb-gold);
  margin:         2.8rem 0 0.85rem;
  border-bottom:  1px solid var(--mb-border);
  padding-bottom: 0.45rem;
}

.mb-tecno-corpo h3 {
  font-family:    var(--mb-tecno-font);
  font-size:      11px;
  font-weight:    700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color:          #8aaa6a;
  margin:         2.2rem 0 0.7rem;
}

/* PULL QUOTE */
.mb-tecno-pull {
  border-left:  3px solid var(--mb-gold);
  padding:      0.3rem 0 0.3rem 1.3rem;
  margin:       2.2rem 0;
  font-size:    18px;
  font-weight:  300;
  font-style:   italic;
  color:        #b0aa9e;
  line-height:  1.6;
}

/* BOX INFORMATIVO (verde) */
.mb-tecno-box {
  background:  var(--mb-tecno-bg-box);
  border-left: 3px solid var(--mb-green);
  padding:     1.25rem 1.5rem;
  margin:      2.2rem 0;
  font-family: var(--mb-tecno-font);
  font-size:   14px;
  font-weight: 400;
  line-height: 1.72;
  color:       #c8c4bc;
}

.mb-tecno-box .mb-tecno-box-titolo {
  font-weight:    700;
  font-size:      10px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color:          var(--mb-green);
  margin-bottom:  0.65rem;
}

.mb-tecno-box p { margin: 0 0 0.7rem; }
.mb-tecno-box p:last-child { margin: 0; }

/* BOX MOTO (oro) */
.mb-tecno-box-moto {
  background:    var(--mb-tecno-bg-deep);
  border-left:   4px solid var(--mb-gold);
  border-top:    1px solid var(--mb-border);
  border-bottom: 1px solid var(--mb-border);
  padding:       1.7rem 1.75rem;
  margin:        2.8rem 0;
  font-family:   var(--mb-tecno-font);
  font-size:     14px;
  font-weight:   400;
  line-height:   1.75;
  color:         #c8c4bc;
}

.mb-tecno-box-moto .mb-tecno-box-titolo {
  font-weight:    700;
  font-size:      10px;
  text-transform: uppercase;
  letter-spacing: 0.13em;
  color:          var(--mb-gold);
  margin-bottom:  0.55rem;
}

.mb-tecno-box-moto p { margin: 0 0 0.85rem; }
.mb-tecno-box-moto p:last-child { margin: 0; }
.mb-tecno-box-moto strong { color: var(--mb-text); font-weight: 500; }

/* BOX ALLERTA */
.mb-tecno-box-allerta {
  background:  #241e1e;
  border-left: 3px solid var(--mb-alert);
  padding:     1.25rem 1.5rem;
  margin:      2.2rem 0;
  font-family: var(--mb-tecno-font);
  font-size:   14px;
  font-weight: 400;
  line-height: 1.72;
  color:       #c8c4bc;
}

.mb-tecno-box-allerta .mb-tecno-box-titolo {
  font-weight:    700;
  font-size:      10px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color:          #c07070;
  margin-bottom:  0.65rem;
}

.mb-tecno-box-allerta p { margin: 0 0 0.7rem; }
.mb-tecno-box-allerta p:last-child { margin: 0; }

/* BOX TECNICO (numerato, per step procedurali) */
.mb-tecno-steps {
  background:  var(--mb-tecno-bg-box);
  border-left: 3px solid #6a8aaa;
  padding:     1.25rem 1.5rem;
  margin:      2.2rem 0;
  font-family: var(--mb-tecno-font);
  font-size:   14px;
  font-weight: 400;
  line-height: 1.72;
  color:       #c8c4bc;
  counter-reset: tecno-step;
}

.mb-tecno-steps .mb-tecno-box-titolo {
  font-weight:    700;
  font-size:      10px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color:          #6a8aaa;
  margin-bottom:  0.9rem;
}

.mb-tecno-steps p {
  margin:   0 0 0.7rem;
  padding-left: 2rem;
  position: relative;
  counter-increment: tecno-step;
}

.mb-tecno-steps p::before {
  content:      counter(tecno-step);
  position:     absolute;
  left:         0;
  font-weight:  700;
  font-size:    11px;
  color:        #6a8aaa;
  line-height:  1.72;
}

.mb-tecno-steps p:last-child { margin: 0; }

/* LINK */
.mb-tecno-articolo a {
  color:           var(--mb-gold);
  text-decoration: none;
  border-bottom:   1px solid rgba(200, 169, 110, 0.35);
  transition:      border-color 0.2s;
}

.mb-tecno-articolo a:hover {
  border-bottom-color: var(--mb-gold);
}

.mb-tecno-box a,
.mb-tecno-box-moto a,
.mb-tecno-box-allerta a,
.mb-tecno-steps a {
  color:           #8aaa6a;
  border-bottom:   1px solid rgba(138, 170, 106, 0.35);
  text-decoration: none;
  transition:      border-color 0.2s;
}

.mb-tecno-box a:hover,
.mb-tecno-box-moto a:hover,
.mb-tecno-box-allerta a:hover,
.mb-tecno-steps a:hover {
  border-bottom-color: #8aaa6a;
}

/* CHIUSURA */
.mb-tecno-chiusura {
  font-family:  var(--mb-tecno-font);
  font-size:    15px;
  font-weight:  300;
  font-style:   italic;
  color:        #b0aa9e;
  border-top:   1px solid var(--mb-border);
  margin-top:   3rem;
  padding-top:  1.75rem;
  line-height:  1.8;
}

.mb-tecno-chiusura p { margin-bottom: 0.8em; }
.mb-tecno-chiusura p:last-child { margin-bottom: 0; }

/* FIRMA */
.mb-tecno-firma {
  font-family:    var(--mb-tecno-font);
  font-size:      11px;
  font-weight:    400;
  color:          #5a5650;
  margin-top:     1.4rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

/* ============================================================
   Fine blocco MATESE-TECNO
   ============================================================ */


/* ============================================================
   Pulsanti di condivisione articolo (mb-share-*)
   Aggiunto: giugno 2026
   ============================================================ */

.mb-share-box {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  flex-wrap: wrap;
  margin: 2rem 0 1.5rem 0;
  padding: 1rem 1.2rem;
  border-top: 1px solid var(--mb-border);
  border-bottom: 1px solid var(--mb-border);
}

.mb-share-label {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--mb-gold);
  margin-right: 0.4rem;
}

.mb-share-btn {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.35rem 0.9rem;
  border: 1px solid var(--mb-border);
  border-radius: 2px;
  text-decoration: none;
  transition: background-color 0.2s, color 0.2s, border-color 0.2s;
  color: var(--mb-text);
  background-color: transparent;
  cursor: pointer;
}

.mb-share-btn:hover {
  background-color: var(--mb-gold);
  color: var(--mb-bg-deep);
  border-color: var(--mb-gold);
}

/* ============================================================
   Fine blocco mb-share-*
   ============================================================ */
