/* Homepage layout. Shared header design lives in navigation-preview.css. */
body.homepage-preview { --preview-ink:#103665; --preview-pink:#D93678; color:var(--preview-ink); background:#fffcfa; }
.homepage-preview .grand-opening-banner { margin:0; padding:8px 16px; background:#fce6ed; border-bottom:1px solid #f5cedc; font-size:11px; }
.preview-hero { position:relative; isolation:isolate; min-height:500px; max-width:1440px; margin:auto; overflow:hidden; background:#fff4ed; }
.preview-hero-photo { position:absolute; inset:0 0 0 auto; width:66%; height:100%; object-fit:cover; object-position:center; z-index:-2; }
.preview-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#fff5ed 1%,#fff5ed 29%,rgba(255,245,237,.94) 36%,rgba(255,245,237,.05) 65%); z-index:-1; }
.preview-hero-copy { padding:65px 0 60px max(32px,calc((100% - 1180px)/2)); width:53%; }
.preview-eyebrow { font-size:10px; font-weight:600; letter-spacing:2.8px; color:#785763; }
.preview-hero h1 { margin:18px 0 20px; font:700 clamp(52px,5.4vw,78px)/1.06 'Dancing Script',cursive; color:#103665; }
.preview-hero h1 span { color:#d93678; }
.preview-hero-description { font-size:11px; line-height:1.9; letter-spacing:1.7px; font-weight:600; }
.preview-button { display:inline-flex; gap:28px; align-items:center; margin-top:15px; border-radius:32px; padding:16px 28px; background:#c12764; color:white; text-decoration:none; font-size:11px; font-weight:800; letter-spacing:1.5px; transition:background .2s; }
.preview-button:hover { background:#a51d53; }
.preview-benefits { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); max-width:1200px; margin:0 auto; border-bottom:1px solid #f5cedc; padding:24px 10px; gap:10px; }
.preview-benefits span { display:flex; align-items:center; justify-content:center; gap:12px; font-size:12px; font-weight:600; }
.preview-benefits span + span { border-left:1px solid #f5cedc; }
.preview-benefits i { color:#b82b63; font-size:19px; }
.preview-section-heading { text-align:center; padding:48px 20px 26px; }
.preview-section-heading h2 { font:700 clamp(34px,3.8vw,46px)/1.2 'Dancing Script',cursive; margin:0 0 10px; color:#103665; }
.preview-section-heading p { margin:0; color:#795b68; font-size:10px; letter-spacing:2.3px; }
.homepage-preview #shop { scroll-margin-top:20px; }
.homepage-preview .categories-container { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); max-width:1240px; margin:0 auto 50px; gap:22px; padding:0 30px; }
.homepage-preview .cat-box { grid-column:span 3; height:270px; border:1px solid #f5cedc; border-radius:18px; box-shadow:0 4px 16px #10366508; background:#fff; }
.homepage-preview .cat-box:nth-child(n+6) { grid-column:span 4; }
.homepage-preview .cat-box[hidden] { display:none; }
.homepage-preview .cat-box img { height:200px; filter:none; object-fit:cover; }
.homepage-preview .cat-overlay { justify-content:flex-end; align-items:flex-start; padding:18px; background:linear-gradient(transparent 65%,#fff 65%); color:#103665; text-align:left; }
.homepage-preview .cat-overlay h3 { font-size:16px; font-weight:600; text-shadow:none; max-width:80%; margin:0; }
.homepage-preview .cat-btn { position:absolute; bottom:20px; right:13px; font-size:0; width:29px; height:29px; padding:6px; border:1px solid #f5cedc; color:#a21c53; background:#fff1f6; }
.homepage-preview .cat-btn::after { content:'→'; font-size:16px; }
.homepage-preview .cat-btn i { display:none; }
.homepage-preview .cat-choice-toggle { width:auto; max-width:95px; font-size:8px; height:auto; padding:6px; border-radius:10px; }
.homepage-preview .cat-choice-toggle::after { content:'⌄'; font-size:12px; }
.homepage-preview .cat-box--cups h3 { max-width:45%; }
.homepage-preview .cat-choice-menu { bottom:64px; z-index:2; }
.homepage-preview .cat-box--farmasi { background:radial-gradient(ellipse at 50% 25%,#fffaf3,#efd0dc); }
.homepage-preview .cat-box--farmasi .cat-overlay { justify-content:flex-end; background:linear-gradient(transparent 65%,#fff 65%); }
.homepage-preview .farmasi-category-mark { position:absolute; top:30px; left:calc(50% - 40px); width:80px; height:100px; color:#a32057; font:70px Georgia,serif; background:transparent; }
.homepage-preview .cat-box--farmasi .cat-overlay p { position:absolute; top:141px; width:calc(100% - 36px); text-align:center; color:#75475e; font-size:12px; }
.preview-season { display:grid; grid-template-columns:1fr 1fr; overflow:hidden; max-width:1180px; margin:0 auto 12px; border:1px solid #f5cedc; border-radius:24px; background:#f7e7e9; }
.preview-season .banner-content { padding:42px 48px; align-self:center; }
.preview-season .banner-subtitle { color:#865170; font-size:10px; }
.preview-season h2 { color:#103665; font-size:47px; }
.preview-season .banner-content p { font-size:13px; }
.preview-season .blind-book-flash-price { display:block; margin:14px 0; font-weight:600; }
.preview-season .btn-banner { background:#103665; padding:13px 22px; }
.preview-season .banner-image { min-height:300px; }
.preview-season .banner-image img { width:100%; height:100%; max-height:340px; object-fit:cover; display:block; }
.preview-season .banner-image img[src*="preview-halloween-cover"] { object-position:center 68%; }
.homepage-preview .cat-box img[src*="preview-blind-book-cover"] { object-position:center 59%; }
.preview-featured { max-width:1240px; margin:0 auto 60px; padding:0 30px; }
.preview-products { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:18px; }
.homepage-preview .preview-product { position:relative; min-width:0; padding:0; overflow:hidden; border:1px solid #f1dfe4; border-radius:16px; background:white; box-shadow:0 5px 15px #10366506; }
.preview-product > a { display:block; }
.preview-product img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:cover; }
.preview-product-copy { padding:17px 15px; }
.preview-product h3 { margin:0 0 10px; font-size:12px; line-height:1.6; font-weight:600; }
.preview-product h3 a { color:#103665; text-decoration:none; }
.preview-product .product-price { color:#a51d53; font-size:13px; font-weight:700; margin:0; }
.homepage-preview .footer-grid { background:#fce6ed; border-top:1px solid #f5cedc; }
.homepage-preview :is(a,button):focus-visible { outline:3px solid #b82b63; outline-offset:3px; }
@media(max-width:1024px) {
 .homepage-preview .categories-container { gap:16px; }
 .preview-hero-copy { padding-left:35px; }
 .preview-products { gap:12px; }
 .preview-season { margin-inline:30px; }
 .preview-benefits span { font-size:10px; gap:7px; }
}
@media(max-width:768px) {
 .preview-hero { min-height:450px; }
 .preview-hero-copy { padding:55px 24px; width:64%; }
 .preview-hero h1 { font-size:55px; }
 .preview-hero-photo { width:70%; }
 .preview-hero::after { background:linear-gradient(90deg,#fff5ed 5%,#fff5edf2 33%,#fff5ed10 90%); }
 .preview-benefits { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 0; padding:20px 10px; }
 .preview-benefits span:nth-child(3) { border:0; }
 .homepage-preview .categories-container { grid-template-columns:repeat(2,minmax(0,1fr)); padding:0 20px; gap:16px; }
 .homepage-preview .cat-box, .homepage-preview .cat-box:nth-child(n+6) { grid-column:span 1; height:265px; }
 .homepage-preview .cat-box img { height:185px; }
 .homepage-preview .cat-overlay { background:linear-gradient(transparent 64%,#fff 64%); }
 .homepage-preview .cat-overlay h3 { font-size:14px; }
 .preview-products { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .preview-season .banner-content { padding:25px; }
 .preview-season h2 { font-size:36px; }
 .preview-season .banner-image { min-height:290px; }
 .preview-season .banner-image img { min-height:290px; }
}
@media(max-width:500px) {
 .preview-hero { min-height:600px; }
 .preview-hero-copy { width:100%; text-align:center; padding:30px 16px 260px; }
 .preview-hero h1 { font-size:55px; margin:15px 0; }
 .preview-hero-photo { top:auto; width:100%; height:280px; object-position:center 48%; }
 .preview-hero::after { background:linear-gradient(180deg,#fff5ed 0%,#fff5ed 51%,#fff5ed00 72%); }
 .preview-hero-description { font-size:9px; letter-spacing:1.3px; }
 .preview-button { padding:14px 24px; margin-top:7px; }
 .preview-eyebrow { font-size:9px; }
 .preview-section-heading { padding-top:35px; }
 .homepage-preview .categories-container { padding:0 16px; gap:12px; margin-bottom:32px; }
 .homepage-preview .cat-box, .homepage-preview .cat-box:nth-child(n+6) { height:225px; }
 .homepage-preview .cat-box img { height:150px; }
 .homepage-preview .cat-overlay { padding:12px; background:linear-gradient(transparent 62%,#fff 62%); }
 .homepage-preview .cat-overlay h3 { font-size:12px; max-width:75%; }
 .homepage-preview .cat-btn { right:8px; bottom:14px; width:24px; height:24px; }
 .homepage-preview .cat-choice-toggle { font-size:7px; width:66px; height:33px; }
 .homepage-preview .cat-box--farmasi .cat-overlay { background:linear-gradient(transparent 62%,#fff 62%); }
 .homepage-preview .farmasi-category-mark { top:16px; }
 .homepage-preview .cat-box--farmasi .cat-overlay p { top:110px; font-size:10px; }
 .preview-season { margin:0 16px; grid-template-columns:1fr; }
 .preview-season .banner-content { padding:28px; }
 .preview-season .banner-image { min-height:0; }
 .preview-season .banner-image img { min-height:0; height:230px; }
 .preview-products { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .preview-featured { padding:0 16px; }
 .preview-product-copy { padding:12px; }
}
@media(prefers-reduced-motion:reduce) { html:has(.homepage-preview) { scroll-behavior:auto; } .homepage-preview *, .homepage-preview *::before, .homepage-preview *::after { transition:none!important; animation:none!important; } }
