/* ==========================================================================
   colecciones-shared.css — Tipografía y colores unificados (todas las colecciones)
   Se carga después del CSS de cada colección para alinear con global.css / home.
   ========================================================================== */

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) {
  font-family: var(--sans);
  color: var(--ink);
}

/* --- Eyebrows (mismo criterio que home: global .sec-head .eyebrow) --- */
body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .eyebrow {
  font-size: var(--fs-lead);
  line-height: var(--lh-body);
  letter-spacing: .22em;
  text-transform: uppercase;
  font-weight: var(--fw-emphasis);
  color: var(--ink-soft);
}

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .hero-inner .eyebrow,
body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .hero .eyebrow,
body:is(.page-setto, .page-filio) .immersive .eyebrow {
  color: rgba(255, 255, 255, .7);
}

body:is(
  .page-attesa,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-iwork,
  .page-filio,
  .page-italia
) .compl .eyebrow {
  color: rgba(255, 255, 255, .65);
}

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .faq .head .eyebrow,
body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .contact .eyebrow {
  font-size: var(--fs-lead);
  line-height: var(--lh-body);
  letter-spacing: .22em;
  color: var(--ink-soft);
}

/* --- Encabezados de sección --- */
body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .sec-head {
  max-width: 640px;
}

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .sec-head h2 {
  font-size: var(--fs-h2);
  font-weight: var(--fw-section);
  line-height: var(--lh-section);
  letter-spacing: var(--track-section);
  margin-top: 14px;
  color: var(--ink);
}

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .sec-head p:not(.eyebrow) {
  color: var(--ink-mid);
  font-size: var(--fs-lead);
  line-height: var(--lh-body);
  margin-top: 14px;
}

/* --- Hero --- */
body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .hero h1 {
  font-size: var(--fs-h1);
  font-weight: var(--fw-display);
  line-height: var(--lh-display);
  letter-spacing: var(--track-display);
}

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .hero h1 b,
body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .hero h1 strong {
  font-weight: var(--fw-emphasis);
}

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .hero .sub {
  font-size: var(--fs-lead);
  line-height: var(--lh-body);
}

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .htag {
  font-weight: var(--fw-emphasis);
}

/* --- Concepto (SPAs) --- */
body:is(.page-vasari, .page-anzio, .page-livello) .concepto h2 {
  font-size: var(--fs-h2);
  font-weight: var(--fw-section);
  line-height: var(--lh-section);
  letter-spacing: var(--track-section);
  color: var(--ink);
}

body:is(.page-vasari, .page-anzio, .page-livello) .concepto p {
  color: var(--ink-mid);
  font-size: var(--fs-lead);
  line-height: var(--lh-body);
}

body:is(.page-vasari, .page-anzio, .page-livello) .concepto p.big {
  font-size: var(--fs-lead);
  line-height: var(--lh-body);
  color: var(--ink);
}

/* --- Manifiesto --- */
body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .manif-txt .eyebrow {
  margin-bottom: 14px;
}

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .manif-txt h2 {
  font-size: clamp(1.7rem, 3.2vw, 2.5rem);
  font-weight: var(--fw-emphasis);
  letter-spacing: var(--track-section);
  line-height: var(--lh-section);
  margin-bottom: 16px;
  color: var(--ink);
}

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .manif-txt p {
  color: var(--ink-mid);
  font-size: var(--fs-lead);
  line-height: var(--lh-body);
  max-width: 60ch;
}

/* --- Rasgos --- */
body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork
) .rasgo .kicker {
  font-size: var(--fs-eyebrow);
  letter-spacing: .22em;
  text-transform: uppercase;
  font-weight: var(--fw-emphasis);
  color: var(--ink-soft);
  margin-bottom: 10px;
  line-height: 1;
}

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork
) .rasgo h3 {
  font-size: clamp(1.4rem, 2.6vw, 2.1rem);
  font-weight: var(--fw-emphasis);
  letter-spacing: var(--track-section);
  line-height: 1.12;
  margin-bottom: 16px;
  color: var(--ink);
}

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork
) .rasgo p {
  color: var(--ink-mid);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  max-width: 52ch;
}

/* --- Videos / tiles --- */
body:is(
  .page-attesa,
  .page-vasari,
  .page-anzio,
  .page-livello
) .vtile h4 {
  font-size: var(--fs-h4);
  font-weight: var(--fw-emphasis);
  letter-spacing: var(--track-heading);
  margin-bottom: 4px;
  color: #fff;
}

body:is(
  .page-attesa,
  .page-vasari,
  .page-anzio,
  .page-livello
) .vtile p {
  font-size: var(--fs-body);
  line-height: 1.45;
  color: rgba(255, 255, 255, .85);
}

body:is(
  .page-attesa,
  .page-vasari,
  .page-anzio,
  .page-livello
) .iconrow span {
  font-size: var(--fs-eyebrow);
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--ink-soft);
}

/* --- Complementos (banda brand) --- */
body:is(
  .page-attesa,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-iwork,
  .page-filio,
  .page-italia
) .compl .sec-head h2 {
  color: #fff;
}

body:is(
  .page-attesa,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-iwork,
  .page-filio,
  .page-italia
) .compl .sec-head p:not(.eyebrow) {
  color: rgba(255, 255, 255, .78);
  font-size: var(--fs-lead);
  line-height: var(--lh-body);
}

body:is(
  .page-attesa,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-iwork,
  .page-filio,
  .page-italia
) .compl-veg .vtag {
  font-size: var(--fs-eyebrow);
  letter-spacing: .22em;
  text-transform: uppercase;
  font-weight: var(--fw-emphasis);
  color: rgba(255, 255, 255, .7);
}

body:is(
  .page-attesa,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-iwork,
  .page-filio,
  .page-italia
) .compl-veg h3 {
  font-size: clamp(1.45rem, 2.2vw, 1.9rem);
  font-weight: var(--fw-emphasis);
  letter-spacing: var(--track-heading);
  line-height: var(--lh-heading);
  margin: 8px 0 12px;
  color: #fff;
}

body:is(
  .page-attesa,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-iwork,
  .page-filio,
  .page-italia
) .compl-veg p {
  color: rgba(255, 255, 255, .82);
  font-size: var(--fs-lead);
  line-height: var(--lh-body);
}

body:is(
  .page-attesa,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-iwork,
  .page-filio,
  .page-italia
) .cmp-body h4 {
  font-size: var(--fs-h4);
  font-weight: var(--fw-emphasis);
  margin-bottom: 4px;
  color: #fff;
}

body:is(
  .page-attesa,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-iwork,
  .page-filio,
  .page-italia
) .cmp-body p {
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  color: rgba(255, 255, 255, .72);
}

/* --- Migas --- */
body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .crumb {
  font-size: .82rem;
  color: var(--ink-soft);
}

body:is(
  .page-acusto,
  .page-aura,
  .page-attesa,
  .page-setto,
  .page-iwork,
  .page-vasari,
  .page-anzio,
  .page-livello,
  .page-filio,
  .page-italia
) .crumb a:hover {
  color: var(--ink);
}
