/* Page-specific refinement for the private château rental landing page. */

@media (min-width: 1025px) {
    .lp-page .nav-inner {
        width: 100%;
        max-width: 1400px;
        margin-inline: auto;
        padding-left: clamp(22px, 2.8vw, 40px);
        padding-right: clamp(22px, 2.8vw, 40px);
    }

    .lp-page .lp-hero {
        height: 700px;
        min-height: 700px;
    }

    .lp-page .lp-hero::before {
        inset: 0;
        width: 100%;
        background:
            linear-gradient(90deg, rgba(12, 9, 7, 0.94) 0%, rgba(12, 9, 7, 0.82) 27%, rgba(12, 9, 7, 0.5) 49%, rgba(12, 9, 7, 0.12) 76%, rgba(12, 9, 7, 0.05) 100%),
            linear-gradient(180deg, rgba(8, 7, 6, 0.16), rgba(8, 7, 6, 0.3));
    }

    .lp-page .lp-hero-media {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }

    .lp-page .lp-hero-media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .lp-page .lp-hero-inner {
        width: min(1180px, calc(100% - 56px));
        height: 100%;
        min-height: 0;
        margin-inline: auto;
        padding: 92px 0 24px;
        align-content: center;
        grid-template-rows: 1fr;
        row-gap: 0;
    }

    .lp-page .lp-hero-copy {
        align-self: center;
    }

    .lp-page .lp-hero-copy::before {
        display: none;
    }

    .lp-page .lp-hero-copy .lp-kicker {
        margin-bottom: 14px;
    }

    .lp-page .lp-hero h1 {
        font-size: clamp(3.1rem, 3.45vw, 4.25rem);
        line-height: 0.98;
    }

    .lp-page .lp-hero p {
        max-width: 42ch;
        margin-top: 18px;
        font-size: clamp(0.95rem, 0.85vw, 1rem);
        line-height: 1.58;
    }

    .lp-page .lp-hero .lp-actions {
        margin-top: 24px;
    }

    .lp-page .lp-intro {
        padding-top: clamp(24px, 2vw, 32px);
    }
}

@media (max-width: 1024px) {
    .lp-page .lp-hero::before {
        inset: 0;
        width: 100%;
        background: linear-gradient(90deg, rgba(12, 9, 7, 0.9), rgba(12, 9, 7, 0.56) 68%, rgba(12, 9, 7, 0.25));
    }

    .lp-page .lp-hero-media {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }

    .lp-page .lp-hero-media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .lp-page .lp-hero-copy::before {
        display: none;
    }
}

@media (max-width: 760px) {
    .lp-page .lp-hero {
        height: 680px;
        min-height: 680px;
    }

    .lp-page .lp-hero-inner {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr;
        height: 100%;
        min-height: 0;
        padding-top: 112px;
        padding-bottom: 42px;
        align-content: center;
    }

    .lp-page .lp-hero h1 {
        font-size: clamp(2.75rem, 13vw, 3.85rem);
        line-height: 0.98;
    }

    .lp-page .lp-hero p {
        max-width: 34ch;
        font-size: 0.97rem;
        line-height: 1.55;
    }
}
