/* PS-MVP1-MINIMAL-HOMEPAGE-001
   The public homepage body is intentionally one image and one headline.
   Shared navigation and footer styling remain owned by the global shell. */

.homepage-minimal-page {
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    color: var(--ps-ink, #141a28);
    background: var(--ps-canvas, #f6f7fa);
}

.homepage-minimal-page .main-content {
    min-height: 0;
    flex: 1 0 auto;
    display: grid;
    place-items: center;
    overflow: visible;
}

.homepage-minimal {
    width: 100%;
    padding: clamp(3rem, 8vh, 6rem) 0;
}

.homepage-minimal__inner {
    width: min(calc(100% - 2.5rem), 47.5rem);
    margin-inline: auto;
    display: grid;
    justify-items: center;
    gap: clamp(2rem, 5vw, 3.25rem);
}

.homepage-minimal__visual {
    width: 100%;
    max-width: 40rem;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 1rem;
    background: var(--ps-primary-soft, #e7ecf4);
    box-shadow: 0 1.5rem 3.5rem rgb(10 27 54 / 14%);
}

.homepage-minimal__visual img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.homepage-minimal h1 {
    max-width: 24ch;
    margin: 0;
    color: var(--ps-ink, #141a28);
    font-family: "Newsreader", Georgia, serif;
    font-size: clamp(2.75rem, 5vw, 3.25rem);
    font-weight: 600;
    line-height: 1.04;
    letter-spacing: -0.035em;
    text-align: center;
    text-wrap: balance;
}

.homepage-minimal__status {
    max-width: 34rem;
    margin: calc(clamp(2rem, 5vw, 3.25rem) * -0.48) 0 0;
    color: var(--ps-muted, #5b6472);
    font-size: clamp(1rem, 1.6vw, 1.125rem);
    font-weight: 500;
    line-height: 1.55;
    text-align: center;
    text-wrap: balance;
}

@media (max-width: 36rem) {
    .homepage-minimal {
        padding-block: clamp(2.5rem, 9vh, 4.5rem);
    }

    .homepage-minimal__inner {
        width: min(calc(100% - 2.5rem), 47.5rem);
        gap: 2rem;
    }

    .homepage-minimal h1 {
        max-width: 12ch;
        font-size: clamp(2.125rem, 10vw, 2.625rem);
    }

    .homepage-minimal__status {
        max-width: 18rem;
        margin-top: -1rem;
        font-size: 1rem;
    }
}

@media (forced-colors: active) {
    .homepage-minimal__visual {
        border: 1px solid CanvasText;
        box-shadow: none;
    }
}
