/* v4.6 — Compact editorial rhythm, with unchanged type sizes and touch targets. */
:root {
  --leading-body: 1.62;
  --leading-long: 1.65;
  --leading-title: 1.24;
  --leading-subtitle: 1.35;
  --leading-note: 1.5;
}

body { line-height: var(--leading-body); letter-spacing: .005em; }
h2, .manifesto h2, .process h2, .contact h2,
.section-heading h2, .process-copy h2, .about-copy h2, .faq-grid h2 {
  line-height: var(--leading-title);
}
h3, .service-item h3, .work-info h3, .step h3, .guild-copy h3 {
  line-height: var(--leading-subtitle);
}
.hero-title, .hero--panorama .hero-title, .hero--immersive .hero-title {
  line-height: 1.4;
}
.hero-lead, .hero--panorama .hero-lead, .hero--panorama .hero-intro .hero-lead,
.hero--immersive .hero-lead, .section-heading > p, .manifesto p:last-child,
.service-item p, .step p, .faq details p, .contact p, .craft-step p,
.collection-intro, .collection-approach {
  line-height: var(--leading-body);
  letter-spacing: .005em;
}
.about-copy > p:not(.eyebrow), .guild-intro { line-height: var(--leading-long); }
.contact dl, .contact-address { line-height: 1.55; }
.eyebrow, .hero-copy .eyebrow, .manifesto .eyebrow,
.hero-preview-hint, .hero-overlay-bottom, .hero-panorama figcaption,
.studio-media figcaption, .process-media figcaption, .collection-figure figcaption,
.collection-kicker, .collection-rights, .gallery-note, .guild-certificate figcaption,
.guild-registration, .interview-label, .interview-links, .video-status,
.craft-number, .craft-process-link, .footer-top p, .footer-bottom {
  line-height: var(--leading-note);
}
.faq summary { line-height: 1.45; }
.work-dialog h2 { line-height: var(--leading-subtitle); }
.collection-heading { line-height: 1.3; margin-bottom: 1rem; }

/* Space within a section is tighter than the space between sections. */
.section { padding: 4.5rem 0; }
.section-heading { margin-bottom: 1.75rem; }
.eyebrow { margin-bottom: .75rem; }
.manifesto { padding: 3.25rem 0; }
.manifesto h2, .contact h2, .about-copy h2 { margin-bottom: 1rem; }
.service-item { padding-top: 1.25rem; }
.service-item h3 { margin: 1rem 0 .625rem; }
.process-copy { padding-top: 3rem; padding-bottom: 3rem; }
.process-copy h2 { margin-bottom: 1.25rem; }
.step { padding: .875rem 0; }
.step h3 { margin-bottom: .25rem; }
.about-copy > p:not(.eyebrow) { margin-top: .75rem; }
.about-copy > p.company-line { margin-top: 1.25rem; padding-top: 1rem; }
.faq { padding-top: 3rem; }
.faq details { padding: .875rem 0; }
.faq details p { padding-top: .625rem; }
.contact { padding: 3.75rem 0; }
.contact dl { margin: 1rem 0 0; row-gap: .5rem; }
.contact .contact-address { align-self: start; }
.guild-heading { margin-bottom: 1rem; }
.guild-copy .eyebrow { margin-bottom: .5rem; }
.guild-facts { margin: 1.25rem 0 1rem; padding: 1rem 0; row-gap: .875rem; }
.guild-facts dd { margin-top: .25rem; line-height: 1.35; }
.guild-certificate figcaption { padding-top: .625rem; }
.interview-info { padding-top: .875rem; }
.interview-label { margin-bottom: .375rem; }
.interview-info h3 { margin-bottom: .625rem; }
.interview-links { row-gap: .5rem; padding-bottom: .875rem; }
.craft-step figcaption { padding-top: 1rem; }
.craft-number { margin-bottom: .5rem; }
.craft-step h3 { margin-bottom: .5rem; }
.craft-process-link { margin-top: 1.25rem; }
.collection-index { margin-bottom: 2.25rem; }
.collection-story { margin-bottom: 3rem; padding-bottom: 3rem; }
.collection-story:last-child { margin-bottom: 0; padding-bottom: 1rem; }
.collection-kicker { margin-bottom: .75rem; }
.collection-intro { margin-bottom: .75rem; }
.collection-copy > .collection-open { margin-top: 1.25rem; }
.collection-rights { margin: 1.5rem 0; }
.site-footer { padding-top: 2.5rem; }
.footer-top { padding-bottom: 1.75rem; }
.footer-top p { margin-top: 1rem; }
.footer-bottom { padding-top: 1.25rem; }

/* Keep a compact, static studio introduction. */
.hero--immersive .eyebrow { margin-bottom: 1rem; }
.hero--immersive h1 { margin-bottom: 1.25rem; }
.hero--immersive .hero-title { margin-bottom: .5rem; }
.hero--immersive .hero-lead { margin-bottom: 1.25rem; }
.hero-preview-hint { margin-top: .5rem; }

/* Text-only compaction in the configurator; canvas and control geometry stay intact. */
.customizer-header h2 { line-height: var(--leading-subtitle); }
.preview-description, .preview-disclaimer, .preview-help, .preview-source-label,
.preview-status, .preview-composition, .preview-disclaimer-wrap,
.preview-material-status, .material-selected, .material-reference,
.material-reference figcaption, .physical-size-summary, .preview-empty,
.art-size-result, .example-picker { line-height: var(--leading-body); }
.preview-composition-title { line-height: 1.4; }

@media (max-width: 760px) {
  .section { padding: 2.75rem 0; }
  .section-heading { margin-bottom: 1.5rem; }
  .section-heading > p { margin-top: .75rem; }
  .manifesto { padding: 2.25rem 0; }
  .process-copy { padding-top: 2rem; padding-bottom: 2rem; }
  .contact { padding: 2.75rem 0; }
  .contact-grid { gap: 1.5rem; }
  .contact-card { padding-top: 1.25rem; }
  .collection-index { margin-bottom: 1.5rem; }
  .collection-story { gap: 1.25rem; margin-bottom: 2rem; padding-bottom: 2rem; }
  .collection-copy > .collection-open { margin-top: 1rem; }
  .craft-step figcaption { padding-top: 1rem; }
  .interview-grid, .craft-grid { row-gap: 1.75rem; }
}
