.cc-page { }

.cc-hero { position: relative; min-height: 90vh; display: flex; align-items: flex-end; }
.cc-hero-media { position: absolute; inset: 0; }
.cc-hero-content { position: relative; max-width: 480px; margin-left: var(--space-5); margin-bottom: var(--space-5); display: flex; flex-direction: column; gap: var(--space-2); }

.cc-intro-inner { display: flex; justify-content: center; }
.cc-intro-col { max-width: 700px; text-align: center; }

.cc-types-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: var(--space-4); }
.cc-card { padding: var(--space-3); max-width: 420px; }
.cc-types-grid > .cc-card:nth-child(odd) { justify-self: start; }
.cc-types-grid > .cc-card:nth-child(even) { justify-self: end; }

.cc-timeline-inner { display: grid; grid-template-columns: 60% 40%; }
.cc-steps { display: flex; flex-direction: column; gap: var(--space-4); border-left: var(--border-thin); padding-left: var(--space-3); }
.cc-step h4 { margin-bottom: var(--space-1); }

.cc-atmosphere-inner { display: grid; grid-template-columns: 60% 40%; gap: var(--space-4); align-items: center; }
.cc-atmosphere-text { max-width: 480px; justify-self: end; }

.cc-custom-inner { max-width: 720px; margin-inline: auto; text-align: center; display: flex; flex-direction: column; gap: var(--space-2); }

.cc-practical-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--space-3); }
.cc-info { padding: var(--space-3); }

.cc-closing-inner { max-width: 800px; margin-inline: auto; text-align: center; }

.cc-cta-inner { text-align: center; display: flex; flex-direction: column; gap: var(--space-2); align-items: center; }

@media (max-width: 1024px) {
  .cc-types-grid { grid-template-columns: 1fr; }
  .cc-timeline-inner { grid-template-columns: 1fr; }
  .cc-atmosphere-inner { grid-template-columns: 1fr; }
  .cc-practical-grid { grid-template-columns: 1fr; }
  .cc-hero-content { margin: var(--space-3); }
}
