/* Khaadi-reference homepage structure with Minal branding and real catalogue imagery. */
.home-page { --header-height:76px; --header-compact-height:52px; color:#111; background:#fff; }
.home-announcement { display:flex; justify-content:center; position:relative; min-height:34px; padding:8px 140px; background:#dfbdc7; font-size:12px; line-height:18px; }
.home-announcement p a { text-decoration:underline; font-weight:700; }
.home-announcement-phone { position:absolute; right:28px; font-size:11px; }
.home-page .site-header.minal-header { height:76px; grid-template-columns:90px minmax(0,1fr) 44px 88px; padding:0 28px; column-gap:6px; border:0; box-shadow:0 1px 3px #0000000a; }
.home-page .header-brand img { width:60px; height:60px; }
.home-page .header-brand>span { position:absolute; width:1px; height:1px; clip-path:inset(50%); overflow:hidden; }
.home-page .header-navigation { gap:30px; }
.home-page .header-navigation>a { font-size:14px; font-weight:400; }
.home-page .header-navigation>a:nth-child(2) { font-weight:700; }
.home-page .header-navigation .header-all { color:#762c43; font-weight:400; }
.home-page .header-search svg,.home-page .header-action-icon>svg { width:23px; height:23px; }
.is-header-compact .home-page .site-header.minal-header { height:52px; margin-bottom:24px; }
.is-header-compact .home-page .header-brand img { width:42px; height:42px; }
.home-page .hero.home-hero { height:auto; aspect-ratio:1920/700; position:relative; overflow:visible; background:#d8c7b3; margin:0; }
.home-page .hero-slide { inset:0; height:100%; position:absolute; }
.campaign-art { width:100%; height:100%; display:grid; grid-template-columns:35% 30% 35%; overflow:hidden; }
.campaign-art>span { min-width:0; min-height:0; position:relative; overflow:hidden; }
.campaign-side img { width:100%; height:100%; object-fit:cover; object-position:50% 6%; }
.campaign-side img { transform:scale(1.7); transform-origin:50% 0; }
.campaign-center { background:#d8c7b3; display:flex; flex-direction:column; align-items:center; }
.campaign-heading { padding:28px 10px 12px; text-align:center; display:block; position:relative; z-index:1; flex:0 0 auto; width:100%; }
.home-page .hero .campaign-heading h1,.home-page .hero .campaign-heading h2 { font-size:clamp(23px,2.65vw,42px); font-weight:700; line-height:1; letter-spacing:-1px; margin:0 0 5px; }
.campaign-heading h1>span,.campaign-heading h2>span { display:block; font-size:.55em; line-height:1.05; letter-spacing:0; }
.campaign-heading>span { font-size:12px; line-height:1.2; }
.campaign-model { flex:1 1 0; height:0; min-height:0; width:100%; object-fit:contain; object-position:center top; }
.campaign-1 .campaign-center { background:#e0c5c2; }
.campaign-2 .campaign-center { background:#cdd5d8; }
.home-page .hero-controls { bottom:-44px; height:44px; left:0; right:0; transform:none; justify-content:center; gap:0; }
.home-page .hero-dots { gap:0; }
.home-page .hero-dots button { width:24px; min-width:24px; height:44px; min-height:44px; padding:0; flex:0 0 24px; }
.home-page .hero-dots button:before { width:8px; height:8px; background:#c5c5c5; border:0; }
.home-page .hero-dots button.is-active:before { background:#444; }
.home-section-heading { text-align:center; margin:80px 0 0; padding:0 20px 28px; }
.top-picks .home-section-heading { margin-top:84px; }
.home-section-heading h2 { font-size:42px; font-weight:700; line-height:1.2; letter-spacing:1px; margin:0; }
.home-section-heading p { font-size:18px; line-height:1.6; margin:12px 0 0; }
.home-section-picture { display:grid; grid-template-columns:1fr 1fr; width:100%; aspect-ratio:1920/675; overflow:hidden; }
.home-section-picture>span { display:block; overflow:hidden; min-width:0; min-height:0; }
.home-section-picture img { width:100%; height:100%; object-fit:cover; object-position:50% 5%; }
.minal-edit .home-section-picture img { object-position:50% 10%; }
.home-rail { position:relative; margin-top:40px; padding:0 3.4%; }
.home-product-rail { --visible:6; display:flex; gap:12px; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-x:contain; }
.home-product-rail::-webkit-scrollbar { display:none; }
.home-product-rail .product-card { flex:0 0 calc((100% - (var(--visible) - 1)*12px)/var(--visible)); scroll-snap-align:start; }
.home-product-rail .product-image-wrap { aspect-ratio:2/3; }
.home-product-rail .product-image-link img { object-fit:cover; }
.home-product-rail .product-info { padding:8px 0 0; }
.home-product-rail .product-meta { font-size:12px; line-height:18px; margin:0; color:#777; }
.home-product-rail .product-name { font-size:14px; line-height:20px; letter-spacing:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin:1px 0 3px; }
.home-product-rail .product-price { font-size:14px; font-weight:700; line-height:20px; margin:0; }
.home-product-rail .product-price.on-request { font-size:13px; font-weight:400; }
.home-product-rail .color-dots { display:none; }
.home-product-rail .product-wish { width:40px; height:40px; top:8px; right:8px; background:#ffffffa6; }
.home-product-rail .product-wish svg { width:24px; height:24px; }
.home-product-rail .quick-view { font-size:11px; }
/* Complete homepage catalogue, independent of the curated sliding edits. */
.home-catalog { scroll-margin-top:20px; }
.home-catalog>.home-section-heading { margin-top:84px; }
.home-catalog-inner { max-width:1600px; margin:auto; padding:0 3.4%; }
.home-catalog-filters { display:flex; align-items:center; justify-content:center; gap:28px; overflow-x:auto; padding:4px 4px 8px; scrollbar-width:thin; overscroll-behavior-x:contain; }
.home-catalog-filters button { flex:0 0 auto; min-height:44px; padding:10px 1px; border-bottom:2px solid transparent; color:#666; font-size:14px; line-height:20px; white-space:nowrap; }
.home-catalog-filters button[aria-pressed="true"] { border-bottom-color:#762c43; color:#222; font-weight:700; }
.home-catalog-filters button:hover { color:#762c43; }
.home-catalog-summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 0 20px; color:#777; font-size:12px; line-height:18px; }
.home-catalog-summary a { display:flex; align-items:center; gap:8px; min-height:44px; color:#333; }
.home-catalog-summary svg { width:16px; height:16px; }
.home-catalog-group+.home-catalog-group { margin-top:52px; }
.home-catalog-group-heading { display:flex; align-items:baseline; gap:12px; margin-bottom:20px; padding-top:20px; border-top:1px solid #e5e5e5; }
.home-catalog-group-heading h3 { font-size:26px; font-weight:700; line-height:32px; letter-spacing:-.5px; }
.home-catalog-group-heading>span { color:#777; font-size:12px; }
.home-catalog-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px 24px; }
.home-catalog-grid .product-card { display:flex; flex-direction:column; min-width:0; }
.home-catalog-grid .product-image-wrap { aspect-ratio:2/3; }
.home-catalog-grid .product-image-link img { width:100%; height:100%; object-fit:cover; }
.home-catalog-grid .product-info { display:flex; flex:1; flex-direction:column; padding:10px 0 0; }
.home-catalog-grid .product-info h4 { flex:1; margin:0; font-size:14px; line-height:20px; font-weight:400; }
.home-catalog-grid .product-meta { margin:0 0 2px; font-size:12px; line-height:18px; color:#777; }
.home-catalog-grid .product-name { display:block; min-height:40px; margin:0 0 4px; font-size:14px; line-height:20px; font-weight:400; letter-spacing:0; overflow-wrap:anywhere; }
.home-catalog-grid .product-price { margin:0; font-size:14px; line-height:20px; font-weight:700; }
.home-catalog-grid .product-price.on-request { font-size:14px; font-weight:400; }
.home-catalog-grid .color-dots { display:none; }
.home-catalog-grid .product-wish { display:grid; place-items:center; top:8px; right:8px; width:44px; height:44px; min-width:44px; min-height:44px; border-radius:50%; background:#ffffffb3; padding:10px; }
.home-catalog-grid .product-wish svg { width:24px; height:24px; }
.home-catalog-grid .collection-quick-add { position:absolute; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:0; top:auto; right:auto; bottom:8px; left:8px; width:44px; height:44px; min-height:44px; padding:4px; border:0; border-radius:50%; background:#ffffffdb; color:#333; opacity:1; transform:none; font-size:9px; line-height:12px; letter-spacing:0; }
.home-catalog-grid .collection-quick-add svg { width:20px; height:20px; }
.home-catalog-grid .collection-quick-add:hover { background:#fff; }
@media(max-width:1100px) { .home-catalog-filters { justify-content:flex-start; gap:24px; } }
@media(max-width:900px) {
 .home-catalog { scroll-margin-top:20px; }
 .home-catalog>.home-section-heading { margin-top:64px; }
 .home-catalog-inner { padding:0 15px; }
 .home-catalog-filters { gap:22px; }
 .home-catalog-filters button { font-size:13px; }
 .home-catalog-summary { align-items:flex-start; gap:12px; padding:8px 0 18px; }
 .home-catalog-summary p { padding-top:13px; }
 .home-catalog-summary a { flex-shrink:0; }
 .home-catalog-group+.home-catalog-group { margin-top:36px; }
 .home-catalog-group-heading { margin-bottom:16px; padding-top:18px; }
 .home-catalog-group-heading h3 { font-size:22px; line-height:28px; }
 .home-catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px 12px; }
 .home-catalog-grid .product-wish { top:6px; right:6px; }
}
.rail-arrow { position:absolute; top:40%; width:38px; height:44px; padding:10px; display:grid; place-items:center; color:#777; z-index:2; }
.rail-arrow svg { width:20px; height:20px; }
.rail-prev { left:0; }.rail-next { right:0; }
.rail-arrow:disabled { opacity:.25; }
.rail-dots { display:flex; justify-content:center; align-items:center; height:44px; margin-top:24px; gap:0; }
.rail-dots button { width:26px; height:44px; padding:0; display:grid; place-items:center; }
.rail-dots button::before { content:''; width:8px; height:8px; border-radius:50%; background:#c5c5c5; }
.rail-dots button[aria-current='true']::before { background:#444; }
.home-services { margin-top:24px; background:#fdf8f3; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-bottom:1px solid #e5e5e5; min-height:82px; padding:15px 6%; gap:28px; }
.home-services>a,.home-services>button { display:flex; align-items:center; justify-content:center; gap:18px; text-align:left; min-width:0; padding:0; }
.home-services svg { width:34px; height:34px; color:#c77a62; }
.home-services strong { display:block; font-size:16px; font-weight:700; line-height:24px; }
.home-services span span { display:block; font-size:14px; line-height:22px; }
.home-page .home-footer { padding:0; background:#fff; }
.home-help-bar { display:grid; grid-template-columns:1fr 1fr; align-items:center; height:80px; border-bottom:1px solid #e5e5e5; padding:0 11%; }
.home-help-bar>span { font-size:24px; }
.home-help-bar button { display:flex; gap:22px; align-items:center; padding:10px 0; font-size:14px; justify-self:start; }
.home-footer-grid { display:grid; grid-template-columns:1fr 1.2fr 1fr; padding:32px 11% 35px; gap:50px; }
.home-footer-grid h2 { font-size:14px; font-weight:700; line-height:18px; margin:0 0 24px; }
.home-footer-grid>div>button,.home-footer-grid>div>a { display:block; font-size:14px; line-height:22px; margin:0 0 7px; padding:0; text-align:left; }
.home-footer-grid .social-icons { margin:0; gap:14px; }
.home-footer-grid .social-icons a { width:30px; height:30px; display:grid; place-items:center; }
.home-footer-grid .social-icons svg { width:27px; height:27px; }
.home-footer-grid .footer-contact-heading { margin:30px 0 15px; font-size:12px; }
.home-contact-line { display:flex; align-items:center; gap:12px; justify-content:space-between; border-bottom:1px solid #e5e5e5; padding-bottom:8px; }
.home-contact-line a:first-child { font-size:16px; color:#666; white-space:nowrap; }
.home-contact-line a:last-child { background:#272727; color:white; border-radius:20px; padding:7px 12px; font-size:11px; font-weight:700; white-space:nowrap; }
.home-footer-bottom { display:grid; grid-template-columns:1fr 1fr auto 1.6fr; align-items:center; gap:35px; padding:24px 11% 30px; border-top:1px solid #e5e5e5; font-size:12px; color:#777; }
.home-footer-bottom>div>span { display:block; margin-bottom:8px; }
.home-footer-bottom>div>a { display:flex; align-items:center; gap:8px; color:#333; font-size:13px; }
.home-footer-bottom img { width:50px; height:50px; border-radius:50%; }
.home-footer-bottom p { line-height:20px; }
.home-page .whatsapp-float { width:48px; height:48px; border:0; border-radius:50%; padding:10px; display:grid; place-items:center; color:#222; box-shadow:0 2px 9px #00000014; bottom:82px; right:30px; }
.home-to-top { display:grid; place-items:center; position:fixed; bottom:28px; right:30px; width:48px; height:48px; border-radius:50%; background:white; box-shadow:0 2px 9px #00000014; z-index:22; opacity:0; visibility:hidden; pointer-events:none; }
.home-to-top svg { transform:rotate(90deg); width:20px; height:20px; }
.is-header-compact .home-to-top { opacity:1; visibility:visible; pointer-events:auto; }
@media(min-width:901px) and (max-width:1349px) { .home-product-rail { --visible:5; } .home-page .header-navigation { gap:22px; } .home-page .header-navigation>a { font-size:12px; } }
@media(min-width:901px) and (max-width:1099px) { .home-product-rail { --visible:4; } .home-page .header-navigation { gap:15px; } .home-page .site-header.minal-header { padding:0 18px; grid-template-columns:65px minmax(0,1fr) 44px 88px; } .home-footer-grid { padding-inline:6%; gap:30px; } .home-footer-bottom { padding-inline:6%; gap:25px; } }
@media(max-width:900px) {
 .home-page { padding-bottom:calc(64px + env(safe-area-inset-bottom,0px)); }
 .home-page .home-announcement { display:none; }
 .home-page .site-header.minal-header,.is-header-compact .home-page .site-header.minal-header { position:fixed; top:0; left:0; right:0; width:100%; height:0; min-height:0; margin:0; padding:0; display:block; background:transparent; border:0; box-shadow:none; pointer-events:none; transition:none; }
 .home-page .header-brand,.is-header-compact .home-page .header-brand { display:block; position:absolute; top:7px; left:50%; transform:translateX(-50%); margin:0; padding:0; pointer-events:auto; }
 .home-page .header-brand img,.is-header-compact .home-page .header-brand img { width:54px; height:54px; transition:none; }
 .home-page .minal-header .menu-toggle,.home-page .minal-header .header-search,.home-page .minal-header .header-actions,.home-page .minal-header .header-navigation { display:none; }
 .home-page .hero.home-hero { aspect-ratio:2/3; }
 .campaign-art { display:block; }
 .campaign-art .campaign-side { display:none; }
 .campaign-art .campaign-center { width:100%; height:100%; padding-top:65px; }
 .campaign-heading { padding:0 10px 15px; }
 .home-page .hero .campaign-heading h1,.home-page .hero .campaign-heading h2 { font-size:34px; line-height:1.02; letter-spacing:-1px; margin:0 0 4px; }
 .campaign-heading>span { font-size:11px; }
 .campaign-model { width:100%; object-fit:contain; }
 .top-picks .home-section-heading { margin-top:64px; }
 .home-section-heading { margin-top:60px; padding:0 10px 24px; }
 .home-section-heading h2 { font-size:30px; line-height:36px; letter-spacing:.5px; }
 .home-section-heading p { font-size:16px; line-height:24px; margin-top:16px; }
 .home-section-picture { aspect-ratio:1; grid-template-columns:1fr; }
 .home-section-picture>span:nth-child(2) { display:none; }
 .home-section-picture img,.minal-edit .home-section-picture img { object-position:50% 4%; }
 .home-rail { margin-top:40px; padding:0 18px; }
 .home-product-rail { --visible:2; gap:15px; }
 .home-product-rail .product-card { flex-basis:calc((100% - 15px)/2); }
 .home-product-rail .product-image-wrap { aspect-ratio:2/3; }
 .home-product-rail .product-name { font-size:14px; }
 .home-product-rail .product-meta { font-size:12px; }
 .home-product-rail .product-wish { width:44px; height:44px; min-width:44px; min-height:44px; top:6px; right:6px; }
 .home-product-rail .quick-view { display:none; }
 .rail-arrow { display:none; }
 .rail-dots { margin-top:20px; height:44px; }
 .home-services { margin-top:15px; grid-template-columns:1fr; padding:34px 20px 45px; gap:36px; }
 .home-services>a,.home-services>button { flex-direction:column; gap:12px; text-align:center; }
 .home-services strong { font-size:16px; }
 .home-services span span { font-size:14px; }
 .home-help-bar { height:80px; padding:0 20px; grid-template-columns:1fr auto; gap:15px; }
 .home-help-bar>span { font-size:23px; }
 .home-help-bar button { font-size:11px; gap:12px; }
 .home-footer-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px 28px; padding:28px 15px 45px; }
 .home-footer-social { grid-column:1/-1; grid-row:1; }
 .home-footer-grid h2 { margin-bottom:22px; }
 .home-footer-grid .social-icons { gap:15px; }
 .home-footer-grid .social-icons a { width:30px; min-width:30px; height:30px; min-height:30px; }
 .home-footer-grid .footer-contact-heading { margin-top:34px; }
 .home-contact-line { margin-top:22px; }
 .home-contact-line a:last-child { min-height:36px; display:flex; align-items:center; }
 .home-footer-grid>div>button,.home-footer-grid>div>a { font-size:14px; line-height:21px; margin-bottom:8px; }
 .home-footer-bottom { display:grid; grid-template-columns:1fr; padding:25px 15px 60px; gap:26px; }
 .home-footer-bottom p { text-align:center; }
 .home-page .home-bottom-nav { display:flex; position:fixed; bottom:0; left:0; right:0; height:calc(64px + env(safe-area-inset-bottom,0px)); min-height:64px; background:#fff; border-top:1px solid #e5e5e5; justify-content:space-around; align-items:center; padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px)); z-index:23; }
 .home-page .home-bottom-nav>a,.home-page .home-bottom-nav>button { display:flex; flex-direction:column; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:0; gap:2px; color:#777; font-size:10px; }
 .home-page .home-bottom-nav svg { width:23px; height:23px; }
 .home-page .home-bottom-nav>a { color:#222; }
 body.home-page .whatsapp-float { display:grid; bottom:calc(130px + env(safe-area-inset-bottom,0px)); right:18px; width:44px; height:44px; }
 .home-page .toast { bottom:calc(80px + env(safe-area-inset-bottom,0px)); }
 .home-to-top { bottom:calc(80px + env(safe-area-inset-bottom,0px)); right:18px; width:44px; height:44px; }
 .home-page #menu-dialog { width:100%; height:85dvh; max-height:85dvh; margin:auto 0 0; border-radius:24px 24px 0 0; }
 .home-page #menu-dialog .dialog-header { padding:18px 20px; }
 .home-page #menu-dialog .menu-brand img,.home-page #menu-dialog .menu-brand>div>span { display:none; }
 .home-page #menu-dialog .dialog-header h2 { font-size:23px; font-weight:400; }
 .home-page #menu-dialog .mobile-menu>a { font-size:15px; font-weight:400; border:0; padding:15px 0; min-height:52px; }
 .home-page #menu-dialog .menu-contact { margin-top:0; }
}
@media(max-width:360px) { .home-page .hero .campaign-heading h1,.home-page .hero .campaign-heading h2 { font-size:28px; } .home-section-heading h2 { font-size:28px; } .home-rail { padding-inline:14px; } .home-product-rail { gap:12px; } .home-product-rail .product-card { flex-basis:calc((100% - 12px)/2); } .home-footer-grid { column-gap:18px; } }
@media(prefers-reduced-motion:reduce) { .home-product-rail { scroll-behavior:auto; } }
