.cp-main{min-height:100vh}

.cp-hero{position:relative;min-height:90vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}
.cp-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.05)}
.cp-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,0.5),rgba(23,24,27,0.95))}
.cp-hero-content{position:relative;max-width:520px;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-4)}
.cp-hero h1{text-shadow:0 0 24px rgba(255,223,163,0.15)}

.cp-definition-inner{display:flex;flex-direction:column;gap:var(--space-4)}
.cp-definition-text{max-width:720px}

.cp-atmosphere .cp-atmo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}
.cp-card{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);min-width:0}

.cp-experience-grid{display:grid;grid-template-columns:3fr 2fr;gap:var(--space-5);align-items:center}
.cp-experience-text{max-width:640px}
.cp-experience-media{width:100%;min-width:0}
.cp-experience-media img{width:100%;height:100%;border-radius:var(--radius-md)}

.cp-access-inner{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-4)}
.cp-access-text{max-width:600px}

.cp-types-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}

.cp-gastro-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}
.cp-gastro-grid > div{min-width:0}

.cp-steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}
.cp-step{padding:var(--space-4);border-left:1.5px solid var(--color-border-gold)}

.cp-cta-inner{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-4);max-width:520px;margin-inline:auto}

@media (max-width:1024px){
.cp-atmosphere .cp-atmo-grid{grid-template-columns:1fr 1fr}
.cp-types-grid{grid-template-columns:1fr 1fr}
.cp-experience-grid{grid-template-columns:1fr}
.cp-gastro-grid{grid-template-columns:1fr}
.cp-steps-grid{grid-template-columns:1fr}
}

@media (max-width:640px){
.cp-atmosphere .cp-atmo-grid{grid-template-columns:1fr}
.cp-types-grid{grid-template-columns:1fr}
}
