/* Inner-page photography and finish. Homepage and enquiry processing unchanged. */
.pg-story-pages {
    background: linear-gradient(90deg, #f3f8fc, #ffffff 8%, #ffffff 92%, #f3f8fc);
}
.pg-story-pages .pg-detail-hero {
    height: 380px;
    min-height: 380px;
    padding-block: 62px 48px;
    background-position: center 40%;
    border-bottom: 1px solid #d3e4f1;
}
.pg-story-pages .pg-detail-hero::before {
    background: linear-gradient(100deg, rgba(18,54,90,.98), rgba(18,54,90,.94) 62%, rgba(18,54,90,.62));
}
.pg-story-pages[data-page='gate-servicing'] .pg-detail-hero { background-position: center 58%; }
.pg-story-pages[data-page='gate-repairs'] .pg-detail-hero { background-position: center 18%; }
.pg-story-pages[data-page='how-it-works'] .pg-detail-hero { background-position: center 12%; }
.pg-story-pages[data-page='book-a-service'] .pg-detail-hero { background-position: center 48%; }
.pg-story-pages[data-page='book-a-call-out'] .pg-detail-hero { background-position: center 26%; }
.pg-story-pages[data-page='brands'] .pg-detail-hero { background-position: center 58%; }
.pg-story-pages[data-page='contact'] .pg-detail-hero { background-position: center 40%; }
.pg-story-pages .pg-inner-body {
    position: relative;
    padding-inline: clamp(18px, 2.2vw, 32px);
    border-inline: 1px solid #d8e7f2;
    background-color: white;
}
.pg-story-pages .pg-photo-grid article,
.pg-story-pages .pg-brands-grid article {
    border-color: #d1e2ef;
    border-radius: 7px;
    box-shadow: 0 4px 14px rgba(18,54,90,.045);
}
.pg-story-pages .pg-photo-grid img {
    aspect-ratio: 3 / 2;
    object-fit: cover;
}
.pg-story-pages .pg-form-panel {
    border-color: #cbdfee;
    border-radius: 7px;
    background: linear-gradient(145deg, #f6fbff, #edf6fc);
    box-shadow: 0 3px 12px rgba(18,54,90,.035);
}
.pg-story-pages .pg-enquiry-form legend {
    padding-left: 11px;
    border-left: 3px solid var(--orange);
    line-height: 1.2;
}
.pg-story-pages .pg-field input,
.pg-story-pages .pg-field select,
.pg-story-pages .pg-field textarea {
    min-height: 44px;
    border-color: #b7d0e3;
    border-radius: 4px;
    line-height: 1.4;
}
.pg-story-pages .pg-field input:focus,
.pg-story-pages .pg-field select:focus,
.pg-story-pages .pg-field textarea:focus {
    outline: 2px solid var(--navy);
    outline-offset: 2px;
}
.pg-story-pages .pg-button { min-height: 46px; }
.pg-story-pages .pg-contact-details > img {
    aspect-ratio: 3 / 2;
    object-fit: cover;
    border: 1px solid #d1e2ef;
    border-radius: 7px;
}
.pg-story-pages .pg-page-trust {
    border-block: 1px solid #d9e9f5;
}
.pg-story-pages .pg-inner-cta > img {
    border-radius: 7px;
    border: 1px solid #d1e2ef;
}
.pg-story-pages .pg-form-help {
    color: #365570;
}
@media (max-width: 1100px) {
    .pg-story-pages .pg-detail-hero { padding-block: 58px 44px; }
}
@media (max-width: 768px) {
    .pg-story-pages .pg-detail-hero {
        height: 360px;
        min-height: 360px;
        padding-block: 58px 38px;
        background-position: 78% center;
    }
    .pg-story-pages[data-page] .pg-detail-hero { background-position: 78% center; }
    .pg-story-pages .pg-detail-hero::before {
        background: linear-gradient(90deg, rgba(18,54,90,.97), rgba(18,54,90,.89));
    }
    .pg-story-pages .pg-detail-hero h1 { font-size: clamp(30px, 7vw, 42px); }
    .pg-story-pages .pg-detail-hero .pg-hero-summary { font-size: 16px; }
    .pg-story-pages .pg-inner-body { padding-inline: 16px; }
    .pg-story-pages .pg-form-panel { padding: 20px 14px; }
}
