/* Secondary page families — presentation-only companion to atelier-system.css.
   Existing links, pricing, forms, tables, content and scripts remain unchanged. */

/* Bring the bespoke printing catalogue onto the shared palette. */
.ax-site.custom-printing {
  --cp-ink: var(--ax-bg);
  --cp-panel: var(--ax-surface);
  --cp-panel-soft: var(--ax-panel);
  --cp-paper: var(--ax-ink);
  --cp-muted: var(--ax-muted);
  --cp-copper: var(--ax-copper);
  --cp-copper-light: var(--ax-copper);
  --cp-line: var(--ax-line);
  --cp-line-soft: var(--ax-line);
}
.ax-site.custom-printing > .announce {
  padding: 10px max(20px, calc((100vw - 1180px) / 2));
  border-bottom: 1px solid var(--ax-line);
  background: var(--ax-surface);
  color: var(--ax-muted);
  font-size: 12px;
  line-height: 1.6;
}
.ax-site.custom-printing .cp-button,
.ax-site.barometer-page .baro-btn {
  min-height: 48px;
  padding: 12px 22px;
  border: 1px solid var(--ax-line);
  border-radius: 8px;
  font: 750 14px/1.5 Atelier, Arial, sans-serif;
  color: var(--ax-ink);
  text-align: center;
  text-decoration: none;
}
.ax-site.custom-printing .cp-button--primary,
.ax-site.barometer-page .baro-btn-primary {
  color: var(--ax-bg) !important;
  background: var(--ax-copper) !important;
  border-color: var(--ax-copper) !important;
  box-shadow: none;
}
.ax-site.custom-printing .cp-button--primary:hover,
.ax-site.barometer-page .baro-btn-primary:hover { background: #edbd98 !important; }
.ax-site.custom-printing .cp-hero { background: var(--ax-bg); }
.ax-site.custom-printing .cp-hero-visual { min-height: 500px; overflow: hidden; border-radius: 12px; border: 1px solid var(--ax-line); }
.ax-site.custom-printing .cp-hero-visual img { height: 100% !important; object-fit: cover; }
.ax-site.custom-printing .cp-hero-visual::before { inset: 0; transform: none; border: 0; }
.ax-site.custom-printing .cp-visual-note { border-color: var(--ax-line); border-radius: 8px; }
.ax-site.custom-printing .cp-visual-note span { color: var(--ax-muted); }
.ax-site.custom-printing :is(.cp-trust, .cp-service-card, .cp-process-card) { background-color: var(--ax-surface); }

/* Printed-style metadata stays compact but no longer relies on a fallback
   typewriter face after external font providers have been removed. */
.ax-site:is(.custom-printing, .barometer-page, .copper-page-web, .copper-service-montage, .copper-page-guide, .copper-page-zone, .copper-page-legal) :is(.breadcrumbs, .breadcrumb, .cp-breadcrumb, .cp-breadcrumbs, .baro-breadcrumbs),
.ax-site :is(.thermo-breadcrumbs, .problem-breadcrumbs) {
  font-family: Atelier, Arial, sans-serif !important;
  font-size: 12px !important;
  line-height: 1.7;
  letter-spacing: 0 !important;
  color: var(--ax-muted) !important;
}
.ax-site :is(.thermo-breadcrumbs, .problem-breadcrumbs) a { text-decoration: underline; text-underline-offset: 4px; }
.ax-site.custom-printing .cp-breadcrumb > span { color: var(--ax-muted) !important; }
.ax-site.barometer-page .baro-meta span { font-family: Atelier, Arial, sans-serif !important; }
.ax-site:is(.barometer-page, .copper-page-web, .copper-service-montage, .copper-page-guide, .copper-page-zone, .copper-page-legal) :is(.tag, .baro-kicker, .baro-label, .baro-meta, .cm-card-eyebrow, .cm-price-label, .hc-head, .hc-sub, .hc-row, .hc-cta, .hero-chip) {
  font-family: Atelier, Arial, sans-serif !important;
  letter-spacing: .035em !important;
}
.ax-site.copper-page-web :is(.cm-pricing-row > *, .hero-chip) { background: var(--ax-panel) !important; border-color: var(--ax-line) !important; border-radius: 6px; }
.ax-site.copper-page-web :is(.cm-price-value, .hc-row .val) { color: var(--ax-copper) !important; }
.ax-site.copper-page-web .hero-chip { color: var(--ax-muted); box-shadow: none; }
.ax-site.copper-page-web .hc-cta .check { color: var(--ax-focus) !important; border-color: var(--ax-focus) !important; box-shadow: none !important; background: var(--ax-panel) !important; }
.ax-site.copper-page-web .hc-cta .label,
.ax-site.copper-service-montage :is(.build-label, .build-index) { font-family: Atelier, Arial, sans-serif !important; }
.ax-site.copper-page-web .cm-hero-card { align-self: start; }

/* Editorial data page: keep the existing figures and tables, unify surfaces. */
.ax-site.barometer-page {
  --baro-paper: var(--ax-ink);
  --baro-ink: var(--ax-bg);
  --baro-copper: var(--ax-copper);
  --baro-copper-light: var(--ax-copper);
  --baro-line: var(--ax-line);
  --baro-panel: var(--ax-surface);
}
.ax-site.barometer-page .baro-hero-grid { background: var(--ax-surface); border-color: var(--ax-line); border-radius: 12px 12px 0 0; overflow: hidden; }
.ax-site.barometer-page :is(.baro-panel, .baro-stat-card) { border-color: var(--ax-line); border-radius: 12px; }
.ax-site.barometer-page .baro-hero-copy > p { color: var(--ax-muted); }

/* Technical article and diagnostic families used inline neon variables.
   Override their scoped tokens, not their behavior or content structure. */
.ax-site .thermo-page { --thermo: var(--ax-copper) !important; }
.ax-site .problem-page,
.ax-site :is(.problem-hub-card, .ate-problem-map-card) { --problem-accent: var(--ax-copper) !important; }
.ax-site :is(.thermo-kicker, .problem-kicker) { color: var(--ax-copper) !important; font: 750 11px/1.6 Atelier, Arial, sans-serif !important; letter-spacing: .1em; }
.ax-site :is(.thermo-lead, .problem-lead) { color: var(--ax-muted) !important; font-size: clamp(1rem, 1.4vw, 1.13rem); }
.ax-site :is(.thermo-panel, .thermo-card, .problem-panel, .problem-card, .problem-mini) { background: var(--ax-surface) !important; border: 1px solid var(--ax-line); border-radius: 12px; box-shadow: none; }
.ax-site :is(.thermo-panel, .problem-panel)::before { background: var(--ax-copper); }
.ax-site :is(.thermo-card, .thermo-panel, .problem-card, .problem-mini) :is(p, li) { color: var(--ax-muted); }
.ax-site :is(.thermo-proof > div, .thermo-step, .problem-step, .thermo-related a, .problem-related a, .thermo-faq details, .problem-faq details) { background: var(--ax-panel); border-color: var(--ax-line); border-radius: 8px; }
.ax-site :is(.thermo-note, .problem-badge) { color: var(--ax-ink); background: var(--ax-panel); border-color: var(--ax-copper); border-radius: 8px; }
.ax-site :is(.thermo-cta, .problem-cta) { background: var(--ax-surface); border-color: var(--ax-line); border-radius: 12px; }
.ax-site :is(.thermo-cta, .problem-cta) p { color: var(--ax-muted); }
.ax-site :is(.problem-hub-card, .ate-problem-map-card) > span { color: var(--ax-copper) !important; }
.ax-site .problem-status { display: grid; grid-template-columns: minmax(90px, .4fr) minmax(0, 1fr); gap: 12px; align-items: start; border-color: var(--ax-line); }
.ax-site .problem-status > span { overflow-wrap: normal; word-break: normal; }
.ax-site .problem-status strong { text-align: right; }
.ax-site .problem-panel { align-self: start; }

/* Supporting workshop photographs should not push a directory, glossary or
   legal text a full viewport away. Retain every image and caption, compact
   their existing editorial block into a clearly secondary card. */
.ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) main > .copper-visual-essay { padding-block: 24px !important; }
.ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) .copper-editorial-visual {
  display: grid !important;
  grid-template-columns: minmax(200px, .45fr) minmax(0, 1fr) !important;
  min-height: 0 !important;
  height: auto !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 12px;
  overflow: hidden;
}
.ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) .copper-editorial-media { min-height: 0 !important; height: 210px !important; }
.ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) .copper-editorial-media img { width: 100%; height: 100% !important; object-fit: cover; }
.ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) .copper-editorial-visual figcaption { min-height: 0; padding: 24px 30px; justify-content: center; background: var(--ax-surface); }
.ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) .copper-editorial-visual figcaption strong { font-size: 1.6rem !important; line-height: 1.2; max-width: 35ch; }
.ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) .copper-editorial-visual figcaption > span:last-child { font-size: .85rem; line-height: 1.65; max-width: 75ch; color: var(--ax-muted); }
.ax-site.copper-page-guide .page-head .tag { display: inline-flex; min-width: 38px; min-height: 38px; align-items: center; justify-content: center; border-color: var(--ax-line); border-radius: 6px; background: var(--ax-surface); font-size: 12px; }

@media (max-width: 767px) {
  .ax-site.custom-printing .cp-container { width: calc(100% - 40px); }
  .ax-site.custom-printing .cp-hero-visual { min-height: 340px; }
  .ax-site.custom-printing .cp-hero-actions { gap: 12px; }
  .ax-site.custom-printing .cp-button { width: 100%; }
  .ax-site.custom-printing .cp-hero-lead { font-size: 1rem; }
  .ax-site.barometer-page .baro-wrap { width: calc(100% - 40px); }
  .ax-site.barometer-page .baro-hero-copy { padding: 24px 20px; }
  .ax-site.barometer-page .baro-hero-copy > p { font-size: 1rem; }
  .ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) .copper-editorial-visual { grid-template-columns: 104px minmax(0, 1fr) !important; }
  .ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) .copper-editorial-media { height: 100% !important; min-height: 200px !important; }
  .ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) .copper-editorial-visual figcaption { padding: 18px 16px; }
  .ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) .copper-editorial-visual figcaption strong { font-size: 1.15rem !important; line-height: 1.25; }
  .ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) .copper-editorial-visual figcaption > span:last-child { font-size: .78rem; line-height: 1.6; }
  .ax-site:is(.copper-page-guide, .copper-page-zone, .copper-page-legal) .copper-editorial-kicker { font-size: 8px; line-height: 1.6; }
  .ax-site.copper-page-guide .page-head .tag { min-width: 44px; min-height: 44px; }
}
