.pc-page {}

.pc-hero-panel { display:flex; flex-direction:column; gap:var(--space-2); max-width:55ch; }

.pc-occasions h2 { max-width:60ch; }
.pc-occasion-grid > * { min-width:0; }

.pc-experience-grid { display:grid; grid-template-columns: 60% 40%; gap:var(--space-3); align-items:center; }
.pc-experience-text { max-width:60ch; }
.pc-experience-media { width:100%; }

.pc-dining-grid > * { min-width:0; max-width:65ch; }

.pc-spaces-grid { display:grid; grid-template-columns: 60% 40%; gap:var(--space-3); align-items:center; }
.pc-spaces-text { max-width:55ch; }

.pc-steps { display:grid; grid-template-columns: repeat(3,1fr); gap:var(--space-3); }
.pc-step { background:var(--color-surface-dark); border:1px solid var(--color-border); border-radius:var(--radius-sm); padding:var(--space-2); }

.pc-why { text-align:center; }
.pc-why-grid > * { max-width:55ch; margin-inline:auto; }

.pc-booking { text-align:center; }
.pc-form-wrap { max-width:600px; margin-inline:auto; display:flex; flex-direction:column; gap:var(--space-3); }
.pc-form { display:flex; flex-direction:column; gap:var(--space-2); }
.pc-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-2); }
.pc-form-grid > * { min-width:0; text-align:left; }
.pc-form-msg { min-height:1.5em; }

.pc-cta-inner { max-width:50ch; margin-inline:auto; text-align:center; display:flex; flex-direction:column; gap:var(--space-2); }

@media (max-width:900px) {
  .pc-experience-grid, .pc-spaces-grid { grid-template-columns:1fr; }
  .pc-steps { grid-template-columns:1fr; }
  .pc-form-grid { grid-template-columns:1fr; }
}
