/* Homepage refinements kept separate from the legacy theme cascade. */
.ilaaura-home-page { --home-font: 'Jost', sans-serif; }
.ilaaura-home-page .ilaaura-home { font-family: var(--home-font); }
.ilaaura-home-page .ilaaura-map-hero { padding: 0 !important; }
.ilaaura-home-page .ilaaura-map-hero > .container { width: 100%; max-width: none; padding: 0; }
.ilaaura-home-page .ilaaura-map-hero__layout { position: relative; display: block; height: min(760px, calc(100svh - 126px)); min-height: 520px; overflow: hidden; }
.ilaaura-home-page [data-hero-slide] { position: absolute; inset: 0; min-height: 0; opacity: 0; visibility: hidden; transition: opacity .7s ease, visibility .7s; }
.ilaaura-home-page [data-hero-slide].is-active { opacity: 1; visibility: visible; }
.ilaaura-home-page [data-hero-slide] > img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.ilaaura-home-page .ilaaura-map-hero__content { display: block; height: 100%; width: 100%; }
.ilaaura-home-page .ilaaura-map-hero__copy { left: 9%; bottom: 13%; max-width: min(600px, 42vw); }
.ilaaura-home-page .ilaaura-map-hero__copy h1 { max-width: 620px; }
.ilaaura-home-page .ilaaura-map-hero__copy p { max-width: 520px; }
.ilaaura-home-page .ilaaura-map-hero__secondary-content { left: 9%; bottom: 13%; padding: 0; }
.ilaaura-home-page .ilaaura-map-hero__secondary-content strong { font-size: clamp(34px,4.5vw,68px); max-width: 550px; }
.ilaaura-home-page .ilaaura-hero-arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: 3; display: grid; place-items: center; width: 42px; height: 42px; padding: 0 0 4px; border: 0; border-radius: 50%; background: #fffdf9; color: #1a1612; font: 32px Georgia,serif; }
.ilaaura-home-page .ilaaura-hero-arrow.is-prev { left: 24px; }
.ilaaura-home-page .ilaaura-hero-arrow.is-next { right: 24px; }
.ilaaura-home-page .ilaaura-hero-dots { position: absolute; bottom: 24px; left: 50%; transform: translateX(-50%); display: flex; gap: 10px; z-index: 3; }
.ilaaura-home-page .ilaaura-hero-dots button { border: 0; background: #ffffff70; width: 34px; height: 3px; padding: 8px 0; background-clip: content-box; }
.ilaaura-home-page .ilaaura-hero-dots button[aria-pressed=true] { background-color: white; }
.ilaaura-home-page .ilaaura-home :is(h2,.ilaaura-map-product__title,.ilaaura-map-button) { font-family: var(--home-font); font-weight: 400; }
.ilaaura-home-page .ilaaura-map-heading h2 { font-size: 32px; letter-spacing: 0; text-transform: none; }
.ilaaura-home-page .ilaaura-map-product__title { font-size: 16px; line-height: 1.4; }
.ilaaura-home-page .ilaaura-map-product__price { font-size: 15px; }
.ilaaura-home-page .ilaaura-map-product__details { padding-inline: 0; }
.ilaaura-home-page .ilaaura-map-product { display: flex; flex-direction: column; height: 100%; }
.ilaaura-home-page .ilaaura-map-product__details { min-height: 112px; }
.ilaaura-home-page .ilaaura-map-product__media { aspect-ratio: .74; height: auto; }
.ilaaura-home-page .ilaaura-map-product__media img { object-fit: cover; padding: 0; }
.ilaaura-home-page .ilaaura-map-product--small .ilaaura-map-product__media { aspect-ratio: .74; height: auto; }
.ilaaura-home-page .ilaaura-map-product--small .ilaaura-map-product__details { min-height: 78px; }
.ilaaura-home-page .ilaaura-map-product__media { border-radius: 0 !important; }
.ilaaura-home-page .ilaaura-map-product:focus-within .ilaaura-map-product__actions { opacity: 1; visibility: visible; transform: none; }
.ilaaura-home-page .ilaaura-map-proof__ratings strong { font: 400 25px/1.3 var(--home-font); }

/* Keep nested editorial grids inside the mapped page frame at wide zooms. */
.ilaaura-home-page .ilaaura-home--mapped,
.ilaaura-home-page .ilaaura-home--mapped section,
.ilaaura-home-page .ilaaura-map-mosaic-layout,
.ilaaura-home-page .ilaaura-map-mosaic-grid {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
    width: 100%;
}
.ilaaura-home-page .ilaaura-home--mapped { overflow-x: hidden; }
.ilaaura-home-page .ilaaura-map-mosaic { overflow: hidden; }
.ilaaura-home-page .ilaaura-map-story-card { justify-content: center; }
.ilaaura-home-page .ilaaura-map-mosaic-tile,
.ilaaura-home-page .ilaaura-map-mosaic-tile img,
.ilaaura-home-page .ilaaura-map-proof__visual,
.ilaaura-home-page .ilaaura-map-proof__visual img {
    max-width: 100%;
    min-width: 0;
}
@media(min-width:992px) {
    .ilaaura-home-page .ilaaura-map-mosaic-layout { grid-template-columns: minmax(0, .68fr) minmax(0, 1.32fr); }
    .ilaaura-home-page .ilaaura-map-mosaic-grid { grid-auto-rows: 259px; }
    .ilaaura-home-page .ilaaura-map-mosaic-tile.is-tall { height: 259px; min-height: 259px; }
}
@media(min-width:768px) and (max-width:991px) {
    .ilaaura-home-page .ilaaura-map-mosaic-grid { grid-auto-rows: 230px; }
    .ilaaura-home-page .ilaaura-map-mosaic-tile.is-tall { height: 230px; min-height: 230px; }
}
@media(min-width:768px) {
    .ilaaura-home-page .ilaaura-map-hero__copy,
    .ilaaura-home-page .ilaaura-map-hero__secondary-content {
        bottom: auto;
        top: 50%;
        transform: translateY(-50%);
    }
}
@media(max-width:1199px) {
    .ilaaura-home-page .ilaaura-map-hero__layout { height: min(700px, calc(100svh - 76px)); min-height: 500px; }
    .ilaaura-home-page .ilaaura-map-hero__copy { max-width: min(440px, 48vw); }
}
@media(max-width:767px) {
    .ilaaura-home-page .ilaaura-map-hero__layout { min-height: 0; height: min(720px, calc(100svh - 80px)); }
    .ilaaura-home-page [data-hero-slide] > img { object-position: 65% center; }
    .ilaaura-home-page .ilaaura-map-hero__copy { left: 7%; right: 7%; bottom: 13%; max-width: 330px; }
    .ilaaura-home-page .ilaaura-map-hero__copy p { font-size: 16px; line-height: 1.6; }
    .ilaaura-home-page .ilaaura-map-hero__secondary-content { left: 7%; right: 7%; bottom: 13%; }
    .ilaaura-home-page .ilaaura-hero-arrow { width: 32px; height: 32px; font-size: 26px; top: 40%; }
    .ilaaura-home-page .ilaaura-hero-arrow.is-prev { left: 10px; }
    .ilaaura-home-page .ilaaura-hero-arrow.is-next { right: 10px; }
    .ilaaura-home-page .ilaaura-map-heading h2 { font-size: 26px; }
    .ilaaura-home-page .ilaaura-map-product__title { font-size: 14px; }
    .ilaaura-home-page .ilaaura-map-product__details { min-height: 104px; }
    .ilaaura-home-page .ilaaura-map-product__media img,
    .ilaaura-home-page .ilaaura-map-product--small .ilaaura-map-product__media img {
        aspect-ratio: auto;
        height: 100%;
        width: 100%;
    }
    .ilaaura-home-page .ilaaura-map-mosaic-grid { grid-auto-rows: auto; }
    .ilaaura-home-page .ilaaura-map-mosaic-tile.is-tall { height: auto; min-height: 0; }
}
@media(prefers-reduced-motion:reduce) {
    .ilaaura-home-page [data-hero-slide] { transition: none; }
}
