/* KARIGAR final visual QA polish — Checkpoint 1.17.1 */

/* The homepage ends with a full-bleed custom section, so do not insert the generic page/footer gap. */
.home-page-body .site-footer { margin-top: 0; }

/* Keep the premium hero dramatic without letting an empty fallback visual dominate the first viewport. */
.premium-hero { min-height: 620px; }
.premium-hero-copy { padding: clamp(2.25rem, 4.5vw, 4.7rem); }
.premium-hero h1 { font-size: clamp(3rem, 5vw, 5.55rem); line-height: .98; }
.premium-hero-media { min-height: 620px; }

/* A composed editorial room fallback for fresh stores that do not yet have a featured product image. */
.premium-room-scene {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 620px;
    overflow: hidden;
    background:
        radial-gradient(circle at 72% 18%, rgba(255,255,255,.38), transparent 22%),
        linear-gradient(180deg, #d9c4aa 0 63%, #b88962 63% 100%);
}
.premium-room-scene::before {
    content: "";
    position: absolute;
    left: 8%; right: 8%; bottom: 7%; height: 25%;
    border-radius: 50%;
    background: rgba(98,65,45,.18);
    filter: blur(18px);
}
.scene-arch {
    position: absolute;
    width: 52%; height: 52%;
    left: 24%; top: 8%;
    border-radius: 48% 48% 14px 14px;
    border: 9px solid rgba(117,94,70,.18);
    background: linear-gradient(180deg,#f7f0e4,#e5d8c3);
    box-shadow: inset 0 -20px 40px rgba(117,94,70,.07);
}
.scene-art {
    position: absolute;
    width: 22%; aspect-ratio: .82;
    left: 39%; top: 18%;
    border: 7px solid rgba(97,79,61,.16);
    border-radius: 6px;
    background: linear-gradient(145deg,#f5eee3 0 48%,#cdb79c 48% 56%,#7c937d 56% 100%);
}
.scene-sofa {
    position: absolute;
    left: 18%; right: 18%; bottom: 19%; height: 24%;
    border-radius: 30px 30px 14px 14px;
    background: #405f4c;
    box-shadow: 0 18px 0 -11px #263d30, 0 28px 50px rgba(51,34,24,.18);
}
.scene-sofa::before,
.scene-sofa::after {
    content:"";
    position:absolute;
    top:17%; bottom:16%; width:24%;
    border-radius:18px;
    background:#4b6c56;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.05);
}
.scene-sofa::before{left:11%}.scene-sofa::after{right:11%}
.scene-sofa span {
    position:absolute;
    width:15%; aspect-ratio:1;
    top:20%; border-radius:10px;
    background:#dbc1a4;
    transform:rotate(-5deg);
}
.scene-sofa span:first-child{left:29%}.scene-sofa span:last-child{right:29%;background:#c18a61;transform:rotate(6deg)}
.scene-side-table {
    position:absolute;
    right:9%; bottom:18%; width:10%; height:12%;
    border-radius:50% 50% 8px 8px;
    background:#6f513d;
    box-shadow: inset 0 8px 0 rgba(255,255,255,.08);
}
.scene-lamp {
    position:absolute;
    right:11%; bottom:29%; width:6%; height:22%;
    border-left:4px solid #5b493b;
}
.scene-lamp::before {
    content:""; position:absolute; left:-23px; top:-7px; width:48px; height:34px;
    background:#efe0c9; clip-path:polygon(18% 0,82% 0,100% 100%,0 100%); border-radius:4px;
}
.scene-plant { position:absolute; left:7%; bottom:20%; width:12%; height:26%; }
.scene-plant::after { content:""; position:absolute; left:34%; bottom:0; width:40%; height:30%; border-radius:5px 5px 16px 16px; background:#8d684c; }
.scene-plant i { position:absolute; left:46%; bottom:25%; width:32%; height:48%; border-radius:100% 0 100% 0; background:#496b52; transform-origin:bottom left; }
.scene-plant i:nth-child(1){transform:rotate(-42deg)}.scene-plant i:nth-child(2){transform:rotate(-4deg);height:57%}.scene-plant i:nth-child(3){transform:rotate(37deg)}
.scene-rug { position:absolute; left:23%; right:21%; bottom:8%; height:10%; border-radius:50%; background:#dcc7ab; box-shadow: inset 0 0 0 1px rgba(94,65,44,.08); }
.scene-caption {
    position:absolute; left:1.5rem; right:1.5rem; bottom:1.4rem;
    display:flex; align-items:flex-end; justify-content:space-between; gap:1rem;
    color:#fff; text-shadow:0 1px 14px rgba(0,0,0,.18);
    padding:.85rem 1rem;
    border:1px solid rgba(255,255,255,.14);
    border-radius:14px;
    background:rgba(25,49,38,.88);
    backdrop-filter:blur(10px);
}
.scene-caption span { text-transform:uppercase; letter-spacing:.14em; font-size:.66rem; font-weight:850; }
.scene-caption strong { max-width:280px; text-align:right; font:700 1.1rem/1.15 ui-serif,Georgia,serif; }

/* Tighten vertical rhythm in the final home section. */
.custom-home-section { padding-block: clamp(3.5rem, 6vw, 5rem); }

@media(max-width:1100px){
    .premium-hero,.premium-hero-media,.premium-room-scene{min-height:570px}
}
@media(max-width:820px){
    .premium-hero,.premium-hero-media,.premium-room-scene{min-height:auto}
    .premium-room-scene{height:440px}
}
@media(max-width:640px){
    .premium-room-scene{height:350px}
    .scene-caption{left:1rem;right:1rem;bottom:1rem;align-items:flex-start;flex-direction:column}
    .scene-caption strong{text-align:left}
}
