/* Home-page composition classes. Content/data stays in UX Builder/WordPress. */
.pony-front-page #main { background: var(--pony-cream); }
.pony-front-page .pony-anchor {
    display: block;
    height: 0;
    scroll-margin-top: calc(var(--pony-header-height) + 16px);
}
.pony-front-page #content > .section,
.pony-front-page #content > .row,
.pony-front-page #content > .container { position: relative; }

/* Give UX Builder sections a consistent editorial rhythm without changing their content. */
.pony-front-page #content > .section.pony-section:not(.pony-hero):not(.pony-usp) {
    padding-top: clamp(52px, 6vw, 88px);
    padding-bottom: clamp(52px, 6vw, 88px);
}
.pony-front-page #content > .section > .section-content > .row,
.pony-front-page #content > .section > .row {
    max-width: var(--pony-container);
}

/* Section headings use the same restrained salon typography throughout the page. */
.pony-front-page #main .pony-heading__eyebrow {
    margin-bottom: 8px;
    color: #9b7741;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .16em;
}
.pony-front-page #main .pony-heading h2 {
    margin-bottom: 22px;
    color: var(--pony-text);
    font-size: clamp(25px, 3vw, 38px);
    line-height: 1.12;
    letter-spacing: -.025em;
}

/* Reuse current UX Builder rows as clean responsive card grids. */
.pony-front-page #main .pony-services-grid > .row,
.pony-front-page #main .pony-hairstyles > .section-content > .row,
.pony-front-page #main .pony-home-prices .pony-grid-4 > .row,
.pony-front-page #main .pony-home-reviews .row {
    gap: 14px;
}
.pony-front-page #main .pony-home-prices .pony-price-card,
.pony-front-page #main .pony-home-reviews .pony-review-card,
.pony-front-page #main .pony-hairstyles .box,
.pony-front-page #main .pony-services-grid .pony-service-card {
    border: 1px solid rgba(61,45,24,.09);
    border-radius: var(--pony-radius-md);
    background: #fff;
    box-shadow: 0 8px 26px rgba(55,39,20,.055);
}

.pony-front-page #main .pony-home-reviews .pony-review-card {
    padding: 23px;
}
.pony-front-page #main .pony-home-reviews .pony-review-card__stars { color: #b88b45; }

.pony-front-page #main .pony-booking-cta {
    border-radius: 0;
}

/* The theme's mobile bottom bar needs page space only when a menu is assigned. */
@media (max-width: 849px) {
    .pony-front-page #content > .section.pony-section:not(.pony-hero):not(.pony-usp) {
        padding-top: 44px;
        padding-bottom: 44px;
    }
    .pony-front-page #main .pony-heading h2 { margin-bottom: 16px; }
    .pony-front-page #main .pony-home-reviews .pony-review-card { padding: 16px; }
}

.pony-home-intro { background: var(--pony-cream); }
.pony-home-intro > .section-content > .row { align-items: center; }
.pony-home-intro__media { overflow: hidden; border-radius: var(--pony-radius-lg); }
.pony-home-intro__media img { width: 100%; min-height: 520px; object-fit: cover; }
.pony-home-intro__content { max-width: 570px; padding-left: clamp(24px, 4vw, 64px); }
.pony-home-intro__content .pony-heading { margin-bottom: 20px; }

.pony-hairstyles { overflow: hidden; }
.pony-hairstyles .box-image { border-radius: var(--pony-radius-md); overflow: hidden; }
.pony-hairstyles .box-image img { aspect-ratio: 3 / 4; object-fit: cover; transition: transform .45s ease; }
.pony-hairstyles .box:hover .box-image img { transform: scale(1.035); }

.pony-home-prices { background: #fbf7f0; }
.pony-home-prices .pony-grid-4 > .row { align-items: stretch; }
.pony-home-prices .pony-price-card { min-height: 150px; display: flex; flex-direction: column; justify-content: center; }

.pony-brand-strip { padding: 0; }
.pony-brand-strip .pony-banner { overflow: hidden; }
.pony-brand-strip .pony-banner img { min-height: 350px; max-height: 560px; object-fit: cover; }

.pony-home-reviews { background: var(--pony-cream); }
.pony-home-reviews .pony-review-card { min-height: 210px; }

.pony-home-posts .box-blog-post { height: 100%; overflow: hidden; border: 1px solid var(--pony-border); border-radius: var(--pony-radius-md); background: #fff; transition: transform var(--pony-transition), box-shadow var(--pony-transition); }
.pony-home-posts .box-blog-post:hover { transform: translateY(-4px); box-shadow: var(--pony-shadow-card); }
.pony-home-posts .box-image { border-radius: 0; }
.pony-home-posts .box-image img { aspect-ratio: 16 / 10; object-fit: cover; }
.pony-home-posts .box-text { padding: 14px 15px 18px; }

.pony-booking-cta { position: relative; min-height: 420px; display: flex; align-items: center; overflow: hidden; background: var(--pony-black); color: #fff; }
.pony-booking-cta .section-bg-overlay { background: rgba(0,0,0,.58) !important; }
.pony-booking-cta > .section-content { width: 100%; }
.pony-booking-cta__inner { max-width: 760px; margin: 0 auto; text-align: center; }
.pony-booking-cta__inner h2 { color: #fff; }
.pony-booking-cta .button { display: table; margin: 22px auto 0; }

@media (max-width: 849px) {
    .pony-home-intro > .section-content > .row { display: flex; flex-direction: column; }
    .pony-home-intro__media { width: 100%; border-radius: 16px; }
    .pony-home-intro__media img { min-height: 350px; }
    .pony-home-intro__content { width: 100%; max-width: none; padding: 23px 0 0; }
    .pony-home-prices .pony-price-card { min-height: 128px; padding: 16px; }
    .pony-brand-strip .pony-banner { border-radius: 0; }
    .pony-brand-strip .pony-banner img { min-height: 310px; }
    .pony-home-reviews .pony-review-card { min-height: 0; }
    .pony-booking-cta { min-height: 360px; }
}
