.cn-hero { min-height: min(900px, 92vh); display: grid; align-items: center; padding-block: calc(var(--cn-header) + 3rem) 4rem; }
.cn-hero--home { min-height: 100vh; }
.cn-hero--text, .cn-hero--journal { min-height: min(760px, 86vh); }
.cn-hero__grid, .cn-hero__text-grid { display: grid; gap: clamp(2rem, 6vw, 5rem); align-items: center; }
.cn-hero__content { display: grid; gap: 1.5rem; }
.cn-hero__actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.cn-hero-side { align-self: end; border-top: 1px solid var(--cn-color-border); padding-top: 1.5rem; color: var(--cn-color-muted); }
.cn-section-head { display: grid; gap: 1rem; max-width: 760px; }
.cn-selected-grid, .cn-articles-grid, .cn-services-grid { display: grid; gap: var(--cn-grid-gap); }
.cn-band--surface { background: rgba(31, 31, 32, .45); }
.cn-statement { border-block: 1px solid var(--cn-color-border); padding-block: clamp(3rem, 8vw, 6rem); font-family: var(--cn-font-display); font-size: clamp(2.75rem, 8vw, 5rem); line-height: .98; text-transform: uppercase; }
.cn-stats { display: grid; gap: var(--cn-grid-gap); }
.cn-stat { border-top: 1px solid var(--cn-color-border); padding-top: 1rem; }
.cn-stat strong { display: block; color: var(--cn-color-white); font-family: var(--cn-font-display); font-size: clamp(3rem, 8vw, 5rem); font-weight: 400; line-height: .9; }
.cn-testimonial { display: grid; gap: 1.25rem; max-width: 980px; }
.cn-testimonial blockquote { margin: 0; font-family: var(--cn-font-display); font-size: clamp(3.5rem, 9vw, 7.5rem); line-height: .88; text-transform: uppercase; }
.cn-quote-mark { display: block; height: .55em; color: var(--cn-color-accent); font-family: var(--cn-font-display); font-size: clamp(5rem, 14vw, 7.5rem); line-height: .7; }
.cn-milestones { display: grid; }
.cn-milestone-row { display: grid; gap: 1rem; border-bottom: 1px solid var(--cn-color-border); padding-block: clamp(1.5rem, 4vw, 2.5rem); }
.cn-milestone-row span { color: var(--cn-color-accent-soft); font-size: .78rem; font-weight: 800; letter-spacing: .12em; }
.cn-milestone-row strong { font-family: var(--cn-font-display); font-size: clamp(2.25rem, 5vw, 4rem); font-weight: 400; line-height: .95; text-transform: uppercase; }
.cn-timeline { position: relative; display: grid; gap: 2rem; }
.cn-timeline::before { content: ''; display: none; position: absolute; top: 0; bottom: 0; left: 50%; width: 1px; background: var(--cn-color-border); }
.cn-timeline__item { display: grid; gap: 1rem; border-top: 1px solid var(--cn-color-border); padding-top: 1.5rem; }
.cn-awards { display: grid; gap: 1rem; }
.cn-award-row { display: grid; gap: 1rem; border-top: 1px solid var(--cn-color-border); padding-block: 1rem; }
.cn-newsletter { border-block: 1px solid var(--cn-color-border); padding-block: clamp(2rem, 5vw, 3.5rem); }
.cn-newsletter form { display: grid; gap: 1rem; }
.cn-feature-panel { align-items: center; }
.cn-feature-panel .cn-source-visual { min-height: clamp(360px, 48vw, 640px); }
.cn-entry { padding-block: calc(var(--cn-header) + 3rem) var(--cn-section); }
.cn-entry__content { color: var(--cn-color-muted); }
.cn-entry__content > * + * { margin-top: 1.25rem; }
.cn-entry__content h2, .cn-entry__content h3 { margin-top: 2.5rem; }
@media (min-width: 768px) {
  .cn-hero__grid { grid-template-columns: minmax(0, 1fr) minmax(280px, 1fr); }
  .cn-selected-grid, .cn-articles-grid, .cn-services-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cn-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .cn-timeline::before { display: block; }
  .cn-timeline__item { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
  .cn-timeline__item:nth-child(even) .cn-process-card { grid-column: 2; }
  .cn-award-row { grid-template-columns: 1fr 2fr 1fr; }
  .cn-newsletter form { grid-template-columns: 1fr auto; align-items: end; }
  .cn-milestone-row { grid-template-columns: 2fr 10fr; align-items: center; }
}
@media (min-width: 1100px) {
  .cn-work-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--cn-grid-gap); }
  .cn-work-grid .cn-project-card:nth-child(4n+1), .cn-work-grid .cn-project-card:nth-child(4n) { grid-column: span 8; }
  .cn-work-grid .cn-project-card:nth-child(4n+2), .cn-work-grid .cn-project-card:nth-child(4n+3) { grid-column: span 4; }
  .cn-work-grid .cn-project-card:nth-child(4n+1) .cn-source-visual, .cn-work-grid .cn-project-card:nth-child(4n) .cn-source-visual { aspect-ratio: 16 / 10; min-height: 420px; }
}
