/* Carta della qualità (page 44, patterns/carta-qualita.php). Loaded only where the page is, and in the editor.
   The root also has "palladio-contatti": colors (--pct-*), base type, margin reset, the bordeaux opening and the contact
   channels come from palladio-contatti.css. Cards and section headings follow Chi siamo (palladio-chi-siamo.css).
   Colors: direction A (README, "Regola dei colori"). Spacing with gaps. No JS. */
.palladio-carta-qualita {
  --pcq-section: clamp(56px, 8vw, 96px);
}
.palladio-carta-qualita h2 { font-size: clamp(28px, 4.2vw, 44px); }
.palladio-carta-qualita [id] { scroll-margin-top: 16px; }
.palladio-carta-qualita .pcq-sezione { padding-block: var(--pcq-section); }
.palladio-carta-qualita .pcq-testo { max-width: 640px; color: var(--pct-secondary); font-size: 17px; }

/* Opening: title and introduction, the icon box beside the title only. */
.palladio-carta-qualita .pct-testa::before, .palladio-carta-qualita .pct-testa::after { grid-row: 1; }
.palladio-carta-qualita.palladio-contatti .pct-apertura h1 { align-self: center; }

/* Section heading: title left, text right (one column on phones). */
.palladio-carta-qualita .pcq-testa-sezione { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); column-gap: 48px; row-gap: 14px; align-items: end; margin-bottom: 40px; }
.palladio-carta-qualita .pcq-testa-sezione > .pcq-testo { grid-column: 2; }

/* 1. The four levels: numbered cards as in Chi siamo, two per row. */
.palladio-carta-qualita .pcq-livelli { padding-bottom: 0; }
.palladio-carta-qualita .pcq-griglia { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.palladio-carta-qualita .pcq-livello { display: flex; flex-direction: column; gap: 12px; padding: 24px; border: 1px solid var(--pct-line); border-radius: 16px; background: var(--pct-white); }
.palladio-carta-qualita .pcq-livello h2 { font-size: 22px; }
/* Card icon (includes/carta-qualita.php, --pcq-icon): gold box above the title, bordeaux Lucide drawing, decorative. */
.palladio-carta-qualita .pcq-livello > :not(.pcq-numero) { order: 2; }
.palladio-carta-qualita .pcq-livello[class*="pcq-icona-"]::before {
  content: ""; order: 1; flex: none; width: 48px; height: 48px; margin-block: 8px 4px; box-sizing: border-box;
  border: 1px solid color-mix(in srgb, var(--pct-gold) 40%, transparent); border-radius: 14px;
  background: var(--pcq-icon) center / 24px no-repeat, color-mix(in srgb, var(--pct-gold) 14%, transparent);
}
.palladio-carta-qualita .pcq-numero { color: var(--pct-secondary); font-size: 13px; font-weight: 600; letter-spacing: .06em; }
.palladio-carta-qualita .pcq-livello .pcq-testo { font-size: 16px; }
.palladio-carta-qualita .pcq-link a { display: inline-flex; align-items: center; min-height: 44px; color: var(--pct-red); font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.palladio-carta-qualita .pcq-link a::after { content: "↓"; margin-left: 8px; text-decoration: none; }

/* 2. Quality factors: numbered list, two columns, thin rules. */
.palladio-carta-qualita.palladio-carta-qualita .pcq-elenco { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 48px; margin: 0; padding: 0; list-style: none; counter-reset: pcq-fattore; }
.palladio-carta-qualita .pcq-elenco li {
  counter-increment: pcq-fattore; display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; align-items: baseline;
  padding-block: 18px; border-top: 1px solid var(--pct-line); font-size: 17px; font-weight: 600;
}
.palladio-carta-qualita .pcq-elenco li::before { content: counter(pcq-fattore, decimal-leading-zero); color: var(--pct-bordeaux); font-family: var(--pct-heading-font); font-weight: 700; }

/* 3. Complaints: text left, the contact channels of the Contatti page right. */
.palladio-carta-qualita .pcq-reclami { padding-top: 0; }
.palladio-carta-qualita .pcq-reclami .pct-wrap { padding-top: var(--pcq-section); border-top: 1px solid var(--pct-line); }
.palladio-carta-qualita .pcq-reclami-griglia { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 32px 48px; align-items: start; }
.palladio-carta-qualita .pcq-reclami .pcq-testa-sezione { grid-template-columns: minmax(0, 1fr); align-items: start; margin-bottom: 0; }
.palladio-carta-qualita .pcq-reclami .pcq-testa-sezione > .pcq-testo { grid-column: 1; }

@media (max-width: 767px) {
  .palladio-carta-qualita :is(.pcq-testa-sezione, .pcq-griglia, .pcq-reclami-griglia) { grid-template-columns: minmax(0, 1fr); }
  .palladio-carta-qualita .pcq-testa-sezione > .pcq-testo { grid-column: 1; }
  .palladio-carta-qualita.palladio-carta-qualita .pcq-elenco { grid-template-columns: minmax(0, 1fr); }
  .palladio-carta-qualita .pcq-livello[class*="pcq-icona-"]::before { width: 44px; height: 44px; border-radius: 12px; background-size: 22px, auto; }
  .palladio-carta-qualita .pcq-testo { font-size: 16px; }
}

/* PDF download at the bottom of the page (28/10/2026): one white card, title and size on the left, the site's button
   (palladio-card-cta, file-down icon) on the right; stacked under 760px. */
.palladio-carta-qualita .pcq-scarica { padding-top: 0; }
.palladio-carta-qualita .pcq-scarica-box { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px 32px; padding: clamp(24px, 4vw, 36px); border: 1px solid var(--pct-line); border-radius: 20px; background: var(--pct-white); }
.palladio-carta-qualita .pcq-scarica-testo { display: grid; gap: 6px; }
.palladio-carta-qualita .pcq-scarica-box h2 { font-size: clamp(22px, 2.6vw, 28px); }
.palladio-carta-qualita.palladio-carta-qualita .pcq-scarica-azione { margin: 0; }
@media (max-width: 760px) { .palladio-carta-qualita .pcq-scarica-azione { flex-basis: 100%; } }
