:root { --ink:#312526; --muted:#746768; --paper:#fffdf9; --blush:#f7e8e5; --rose:#a9475b; --deep:#5b2632; --line:#eadeda; --serif:'Playfair Display', Georgia, serif; --sans:'Hind Siliguri', sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--sans); font-size:16px; line-height:1.55; }
button,input,textarea { font:inherit; }
button { cursor:pointer; }
a { color:inherit; text-decoration:none; }
.announcement { padding:7px 16px; text-align:center; color:#fff; background:var(--deep); font-size:.88rem; }
.site-header { height:80px; max-width:1240px; margin:auto; padding:0 28px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { color:var(--deep); font:700 1.55rem var(--serif); letter-spacing:-.04em; white-space:nowrap; }
.brand span { color:var(--rose); }
nav { display:flex; gap:28px; color:var(--muted); font-size:.94rem; }
nav a:hover { color:var(--rose); }
.cart-button,.dark-button { border:0; background:var(--ink); color:white; padding:10px 16px; border-radius:100px; font-weight:600; }
.cart-button span { display:inline-grid; place-items:center; margin-left:6px; width:19px; height:19px; border-radius:100%; color:var(--ink); background:#fff; font-size:.75rem; }
.hero { min-height:525px; padding:60px max(28px,calc((100% - 1184px)/2)); display:grid; grid-template-columns:1.05fr .95fr; gap:50px; align-items:center; overflow:hidden; background:#f5e4df; }
.hero-copy { max-width:575px; }
.eyebrow { margin:0 0 9px; color:var(--rose); font-size:.78rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
h1,h2 { margin:0; font-family:var(--serif); line-height:1.08; letter-spacing:-.04em; }
h1 { font-size:clamp(2.7rem,6vw,5rem); font-weight:700; }
h1 em { color:var(--rose); font-weight:600; }
.hero-copy > p:not(.eyebrow) { max-width:440px; margin:22px 0 28px; color:#665355; font-size:1.08rem; }
.primary-button { display:inline-flex; align-items:center; justify-content:center; gap:14px; border:0; border-radius:3px; padding:13px 20px; color:#fff; background:var(--rose); font-weight:600; transition:.2s transform,.2s background; }
.primary-button:hover { background:var(--deep); transform:translateY(-1px); }
.primary-button span { font-size:1.35rem; line-height:.7; }
.hero-art { min-height:390px; position:relative; }
.hero-circle { position:absolute; top:8px; right:3%; width:min(32vw,370px); height:min(32vw,370px); border-radius:50%; background:#dfb5ad; }
.cloth-shape { position:absolute; border-radius:48% 52% 43% 57% / 45% 35% 65% 55%; box-shadow:0 21px 35px #734a4a2e; }
.cloth-one { width:208px; height:287px; top:51px; left:10%; transform:rotate(-12deg); background:linear-gradient(128deg,#602a40,#d58486 48%,#f2bcaa); }
.cloth-two { width:220px; height:300px; top:75px; right:5%; transform:rotate(16deg); background:repeating-linear-gradient(45deg,#f5dada 0 9px,#c56c77 10px 13px,#8f4056 14px 19px); }
.hero-art p { position:absolute; bottom:0; right:0; color:var(--deep); font:600 .88rem/1.25 var(--serif); letter-spacing:.15em; }
.benefits { max-width:1184px; margin:auto; padding:28px; display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.benefits > div { display:flex; align-items:center; gap:13px; }
.benefits span { display:grid; place-items:center; width:39px; height:39px; color:var(--rose); border-radius:50%; background:var(--blush); font-size:1.2rem; }
.benefits p { margin:0; color:var(--muted); font-size:.82rem; }.benefits strong { display:block; color:var(--ink); font-size:.95rem; }
.shop-section { max-width:1184px; padding:74px 28px 84px; margin:auto; }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; }.section-heading h2,.track-section h2 { font-size:clamp(2rem,4vw,3.1rem); }
.search { width:255px; padding:9px 12px; display:flex; gap:7px; align-items:center; border-bottom:1px solid #bba8a6; color:var(--muted); }.search input { width:100%; border:0; outline:0; background:transparent; }
.category-list { display:flex; flex-wrap:wrap; gap:9px; margin:31px 0 27px; }.category { border:1px solid var(--line); border-radius:100px; padding:8px 17px; background:#fff; color:var(--muted); }.category.active,.category:hover { background:var(--deep); color:#fff; border-color:var(--deep); }
.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:23px; min-height:280px; }.loading,.empty { grid-column:1/-1; padding:50px 0; color:var(--muted); text-align:center; }
.product-card { position:relative; overflow:hidden; background:#fff; }.product-image { display:grid; place-items:center; height:305px; position:relative; overflow:hidden; background:linear-gradient(135deg,#f3dddd,#e7b9b0); }.product-image img { width:100%; height:100%; object-fit:cover; }.product-image .fallback { font-size:4rem; }.product-card:nth-child(3n+2) .product-image { background:linear-gradient(135deg,#dde9e1,#9dbbaa); }.product-card:nth-child(3n+3) .product-image { background:linear-gradient(135deg,#ece1d1,#d2b98d); }.badge { position:absolute; left:12px; top:12px; padding:3px 9px; border-radius:100px; background:#fff; color:var(--rose); font-size:.75rem; font-weight:700; }.quick-add { position:absolute; right:12px; bottom:12px; border:0; border-radius:50%; width:42px; height:42px; color:#fff; background:var(--deep); font-size:1.5rem; opacity:0; transform:translateY(9px); transition:.18s; }.product-card:hover .quick-add { opacity:1; transform:translateY(0); }.product-info { padding:14px 2px 8px; }.product-info p { margin:0; color:var(--muted); font-size:.78rem; }.product-info h3 { margin:2px 0 7px; font-size:1rem; font-weight:600; }.price { display:flex; align-items:center; gap:8px; }.price strong { color:var(--rose); }.price del { color:#978b8a; font-size:.85rem; }
.track-section { padding:60px max(28px,calc((100% - 1128px)/2)); display:grid; grid-template-columns:1fr 1fr; gap:85px; align-items:center; color:#fff; background:var(--deep); }.track-section .eyebrow { color:#edbdc3; }.track-section > div > p:last-child { max-width:420px; margin:17px 0 0; color:#ead8d9; }.tracking-form { padding:25px; background:#fff; color:var(--ink); }.tracking-form label, .checkout-dialog label { display:grid; gap:5px; font-size:.87rem; font-weight:600; }.tracking-form input, .checkout-dialog input,.checkout-dialog textarea { border:1px solid #dacdca; border-radius:2px; padding:10px; outline-color:var(--rose); }.tracking-form input { margin:6px 0 14px; }.dark-button { width:100%; border-radius:2px; background:var(--ink); }.form-message { min-height:1.2em; margin:12px 0 0; font-size:.89rem; color:var(--rose); }
footer { padding:51px max(28px,calc((100% - 1128px)/2)); display:grid; grid-template-columns:2fr 1fr 1fr; gap:30px; background:#f6eeea; }footer > div { display:flex; flex-direction:column; gap:4px; color:var(--muted); font-size:.9rem; }footer strong { color:var(--ink); margin-bottom:4px; }footer p { grid-column:1/-1; margin:20px 0 0; color:var(--muted); font-size:.8rem; }
.cart-drawer { position:fixed; z-index:10; top:0; right:0; display:flex; flex-direction:column; width:min(410px,100vw); height:100dvh; padding:22px; background:var(--paper); transform:translateX(102%); transition:transform .25s; }.cart-drawer.open { transform:translateX(0); }.drawer-head { display:flex; justify-content:space-between; align-items:center; padding-bottom:17px; border-bottom:1px solid var(--line); }.drawer-head h2 { font-size:1.8rem; }.icon-button { border:0; background:transparent; font-size:1.8rem; line-height:1; color:var(--ink); }.cart-items { flex:1; overflow:auto; }.cart-line { display:grid; grid-template-columns:1fr auto; gap:7px; padding:17px 0; border-bottom:1px solid var(--line); }.cart-line h3 { margin:0 0 3px; font-size:1rem; }.cart-line p { margin:0; color:var(--rose); }.quantity { display:flex; align-items:center; gap:8px; margin-top:7px; }.quantity button { width:25px; height:25px; border:1px solid var(--line); background:#fff; }.remove { border:0; padding:0; background:none; color:#9c666b; font-size:.8rem; }.cart-summary { padding-top:17px; }.cart-summary p,.checkout-total { display:flex; justify-content:space-between; margin:0 0 3px; }.cart-summary small { display:block; margin-bottom:15px; color:var(--muted); }.full { width:100%; }
.overlay { position:fixed; inset:0; z-index:9; background:#281d1d70; }.checkout-dialog { position:relative; width:min(600px,calc(100vw - 28px)); max-height:90dvh; padding:31px; border:0; box-shadow:0 25px 90px #321e1e44; }.checkout-dialog::backdrop { background:#281d1d70; }.dialog-close { position:absolute; top:15px; right:17px; }.checkout-intro { margin-bottom:23px; }.checkout-intro h2 { font-size:2.2rem; }.checkout-intro p:last-child { margin:9px 0 0; color:var(--muted); }.checkout-dialog form { display:grid; grid-template-columns:1fr 1fr; gap:14px; }.checkout-dialog label:nth-of-type(3),.checkout-dialog fieldset,.checkout-total,.checkout-dialog button,.checkout-dialog .form-message { grid-column:1/-1; }.checkout-dialog fieldset { display:grid; grid-template-columns:1fr 1fr; gap:8px; padding:11px; border:1px solid var(--line); }.checkout-dialog legend { font-size:.87rem; font-weight:600; }.checkout-dialog .radio-label { display:flex; align-items:center; gap:6px; }.radio-label span { margin-left:auto; color:var(--rose); }.checkout-total { padding:12px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.checkout-total strong { color:var(--rose); font-size:1.2rem; }.toast { position:fixed; z-index:30; left:50%; bottom:26px; max-width:calc(100vw - 35px); padding:10px 16px; border-radius:3px; color:#fff; background:var(--ink); opacity:0; pointer-events:none; transform:translate(-50%,15px); transition:.2s; }.toast.visible { opacity:1; transform:translate(-50%,0); }
@media (max-width:720px) { .site-header { height:65px; padding:0 17px; }.site-header nav { display:none; }.hero { min-height:620px; padding:50px 25px; grid-template-columns:1fr; gap:5px; }.hero-art { min-height:290px; }.hero-circle { width:260px; height:260px; }.cloth-one { width:156px; height:216px; left:10%; top:30px; }.cloth-two { width:165px; height:220px; top:45px; right:3%; }.benefits { grid-template-columns:1fr; padding:27px; gap:14px; }.section-heading { align-items:start; flex-direction:column; }.search { width:100%; }.shop-section { padding:57px 20px 61px; }.product-grid { grid-template-columns:repeat(2,1fr); gap:15px; }.product-image { height:215px; }.quick-add { opacity:1; transform:none; }.product-info h3 { font-size:.93rem; }.track-section { grid-template-columns:1fr; gap:25px; padding:51px 25px; } footer { grid-template-columns:1fr 1fr; padding:41px 25px; } footer .brand { grid-column:1/-1; } .checkout-dialog { padding:28px 20px; }.checkout-dialog form { grid-template-columns:1fr; }.checkout-dialog label:nth-of-type(3),.checkout-dialog fieldset,.checkout-total,.checkout-dialog button,.checkout-dialog .form-message { grid-column:auto; }.checkout-dialog fieldset { grid-template-columns:1fr; } }
