.pp-page{overflow:hidden}

.pp-hero-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6);align-items:center}
.pp-hero-text{max-width:55ch;display:flex;flex-direction:column;gap:var(--space-3)}
.pp-hero-image img{width:100%;border-radius:var(--radius-lg)}

.pp-types-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}
.pp-type-card{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}

.pp-atmosphere{background:url('/assets/images/private-party-atmosphere.webp') center/cover no-repeat;position:relative}
.pp-atmosphere-overlay{background:rgba(0,0,0,0.35);padding:var(--space-7) 0}
.pp-atmosphere-text{max-width:60ch;margin-inline:auto;text-align:center;color:#fff}
.pp-atmosphere-text h2,.pp-atmosphere-text p{color:#fff}

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

.pp-personal-inner{max-width:60ch;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:var(--space-3)}

.pp-timeline-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-5)}
.pp-step{background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-3);border-radius:var(--radius-sm);text-align:center}

.pp-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-4)}
.pp-gallery-grid img{cursor:pointer}

.pp-why-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}

.pp-cta-box{background:var(--color-bg-secondary);padding:var(--space-5);border-radius:var(--radius-lg);text-align:center;display:flex;flex-direction:column;gap:var(--space-3);max-width:50ch;margin-inline:auto}

@media(max-width:1000px){
.pp-types-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.pp-elements-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:900px){
.pp-hero-grid{grid-template-columns:1fr}
}

@media(max-width:768px){
.pp-types-grid,.pp-elements-grid,.pp-gallery-grid,.pp-why-grid{grid-template-columns:1fr}
.pp-timeline-grid{grid-template-columns:1fr}
}
