/* Apsara Attire — v5 layer (3 Nov 2026): richer, image-led home in the Apsara palette (after carpetplanet.in),
   the two slide panels (the only motion the owner wants), back-to-top, live search, readable content pages. */

.v5-sec { padding-block: clamp(2.8rem, 6vw, 4.8rem); }
.v5-sec--ivory { background: #FBF7F0; }
.v5-sec--champ { background: #F4EBDB; }
.v5-sec--esp { background: #17110D; }
.v5-sec--esp .v5-title h2, .v5-sec--esp .v5-title p { color: #F3E8D2; }

/* centred titles: SHOP BY *Fabric* */
.v5-title { text-align: center; margin: 0 0 clamp(1.4rem, 3vw, 2.2rem); }
.v5-title h2 { margin: 0; font: 500 clamp(1.5rem, 3.2vw, 2.4rem)/1.15 var(--serif); letter-spacing: .14em; text-transform: uppercase; color: #1A120C; }
.v5-title h2 em { font-style: italic; text-transform: none; letter-spacing: .01em; color: #A8843F; font-weight: 500; }
.v5-title p { margin: .5rem 0 0; font-size: .92rem; color: #7A7068; }
.v5-title::after { content: ""; display: block; width: 64px; height: 1px; margin: .9rem auto 0; background: #A8843F; }
.v5-all { text-align: center; margin: 1.6rem 0 0; }

/* hero slider */
.v5-hero { position: relative; }
.v5-hero__track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.v5-hero__track::-webkit-scrollbar { display: none; }
.v5-slide { flex: 0 0 100%; scroll-snap-align: start; display: grid; min-height: min(82vh, 760px); }
.v5-slide--wine { background: radial-gradient(130% 120% at 0% 0%, #7A2A3B, #4A1220); }
.v5-slide--esp { background: radial-gradient(130% 120% at 0% 0%, #2E231A, #120D0A); }
.v5-slide--emerald { background: radial-gradient(130% 120% at 0% 0%, #2C5546, #14302A); }
.v5-slide--champ { background: radial-gradient(130% 120% at 0% 0%, #FBF3E2, #EAD9B9); }
.v5-slide__text { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: .9rem; padding: clamp(2rem, 6vw, 5rem) clamp(1.2rem, 5vw, 5rem); color: #F6EBD5; }
.v5-slide--champ .v5-slide__text { color: #1A120C; }
.v5-slide__eye { margin: 0; font: 500 .74rem/1 var(--sans); letter-spacing: .26em; text-transform: uppercase; color: #D9BE86; }
.v5-slide--champ .v5-slide__eye { color: #A8843F; }
.v5-slide__title { margin: 0; font: 500 clamp(2.3rem, 5vw, 4.4rem)/1.03 var(--serif); color: inherit; max-width: 14ch; }
.v5-slide__sub { margin: 0 0 .6rem; max-width: 34rem; font-size: 1rem; opacity: .85; }
.v5-slide__media { position: relative; display: block; overflow: hidden; }
.v5-slide__media img { width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block; }
.v5-slide__media::after { content: ""; position: absolute; inset: 16px; border: 1px solid rgba(232, 208, 150, .7); pointer-events: none; }
.v5-slide__tag { position: absolute; left: 28px; bottom: 28px; background: rgba(23, 17, 13, .82); color: #F3E3BE; padding: .5rem .8rem; font-size: .8rem; }
@media (min-width: 900px) { .v5-slide { grid-template-columns: 1fr 1fr; } }
@media (max-width: 899px) {
	.v5-slide__media { order: -1; aspect-ratio: 4 / 5; max-height: 64vh; }
	.v5-slide__text { padding: 1.6rem 1.2rem 3.6rem; }
	.v5-slide__title { font-size: 2.1rem; }
}
.v5-hero__nav { position: absolute; left: 0; right: 0; bottom: 14px; display: flex; justify-content: center; align-items: center; gap: .8rem; pointer-events: none; }
.v5-hero__nav button { pointer-events: auto; }
.v5-hero__nav > button { width: 38px; height: 38px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .6); background: rgba(23, 17, 13, .45); color: #fff; font-size: 1.3rem; line-height: 1; cursor: pointer; }
.v5-hero__dots { display: flex; gap: .45rem; }
.v5-hero__dots button { width: 9px; height: 9px; border-radius: 50%; border: 1px solid #D9BE86; background: transparent; padding: 0; cursor: pointer; }
.v5-hero__dots button.is-on { background: #D9BE86; width: 26px; border-radius: 6px; }

/* image tiles with the name on the picture */
.v5-tiles { display: grid; gap: clamp(.6rem, 1.4vw, 1.2rem); grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 900px) {
	.v5-tiles--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.v5-tiles--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.v5-tiles--6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}
@media (max-width: 899px) { .v5-tiles--6 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.v5-tile { position: relative; display: block; overflow: hidden; aspect-ratio: 3 / 4; background: #EAD9B9; }
.v5-tile--wide { aspect-ratio: 4 / 5; }
.v5-tile img { width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block; }
.v5-tile::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(23,17,13,.82) 100%); z-index: 1; }
.v5-tile::after { content: ""; position: absolute; inset: 10px; border: 1px solid rgba(232, 208, 150, .55); z-index: 2; pointer-events: none; }
.v5-tile__name { position: absolute; left: 0; right: 0; bottom: 0; z-index: 3; display: grid; gap: .3rem; justify-items: center; padding: 1rem .8rem 1.2rem; text-align: center; font: 500 clamp(1.1rem, 2vw, 1.5rem)/1.15 var(--serif); color: #FBF3E2; }
.v5-tile__name em { font: 500 .66rem/1 var(--sans); font-style: normal; letter-spacing: .2em; text-transform: uppercase; color: #D9BE86; }
.v5-tile--colour .v5-tile__name { font-size: 1rem; grid-auto-flow: column; justify-content: center; align-items: center; gap: .45rem; }
.v5-tile--colour .v5-tile__name i { width: 12px; height: 12px; border-radius: 50%; border: 1px solid rgba(255,255,255,.7); }
@media (hover: hover) { .v5-tile:hover .v5-tile__name em { text-decoration: underline; text-underline-offset: .3em; } }

/* product rows */
.v5-row { position: relative; }
.v5-row__track { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 3rem) / 4); gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-bottom: .4rem; }
.v5-row__track::-webkit-scrollbar { display: none; }
.v5-row__cell { scroll-snap-align: start; min-width: 0; }
@media (max-width: 899px) { .v5-row__track { grid-auto-columns: 46%; gap: .7rem; } }
.v5-row__btn { position: absolute; top: 38%; z-index: 4; width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(168, 132, 63, .5); background: #FFFDF8; color: #1A120C; font-size: 1.5rem; line-height: 1; cursor: pointer; box-shadow: 0 6px 18px rgba(0,0,0,.1); }
.v5-row__btn--prev { left: -14px; }
.v5-row__btn--next { right: -14px; }
@media (max-width: 899px) { .v5-row__btn { display: none; } }

/* reels */
.v5-reels { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 5rem) / 6); gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.v5-reels::-webkit-scrollbar { display: none; }
@media (max-width: 899px) { .v5-reels { grid-auto-columns: 42%; gap: .7rem; } }
.v5-reel { position: relative; display: block; scroll-snap-align: start; aspect-ratio: 9 / 16; overflow: hidden; background: #2E231A; outline: 1px solid rgba(217, 190, 134, .4); outline-offset: -1px; }
.v5-reel video { width: 100%; height: 100%; object-fit: cover; display: block; }
.v5-reel__info { position: absolute; left: 0; right: 0; bottom: 0; display: grid; gap: .15rem; padding: 1.4rem .8rem .8rem; background: linear-gradient(180deg, transparent, rgba(23,17,13,.9)); color: #FBF3E2; font-size: .85rem; }
.v5-reel__info em { font-style: normal; color: #D9BE86; font-weight: 500; }

/* story */
.v5-story { padding-block: clamp(3rem, 7vw, 5.5rem); background: radial-gradient(120% 120% at 100% 0%, #FBF3E2, #F1E3C8); }
.v5-story__grid { display: grid; gap: 2.4rem; align-items: center; }
@media (min-width: 900px) { .v5-story__grid { grid-template-columns: 1.1fr 1fr; gap: 4rem; } }
.v5-story__media { display: grid; grid-template-columns: 1.2fr 1fr; grid-template-rows: 1fr 1fr; gap: .8rem; aspect-ratio: 5 / 4; }
.v5-story__media img { width: 100%; height: 100%; object-fit: cover; object-position: center top; outline: 1px solid rgba(168,132,63,.35); outline-offset: -1px; }
.v5-story__media img:first-child { grid-row: 1 / span 2; }
.v5-story__text h2 { margin: .3rem 0 1rem; font: 500 clamp(1.9rem, 3.6vw, 2.8rem)/1.1 var(--serif); color: #1A120C; }
.v5-story__text p { color: #4A3F36; }
.v5-story__facts { list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 1.6rem 0 1.8rem; padding: 1.2rem 0; border-block: 1px solid rgba(168,132,63,.35); }
.v5-story__facts li { display: grid; gap: .2rem; text-align: center; }
.v5-story__facts strong { font: 500 1.4rem/1 var(--serif); color: #6B2333; }
.v5-story__facts span { font-size: .76rem; color: #7A7068; }

/* instagram */
.v5-ig { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .6rem; }
@media (max-width: 899px) { .v5-ig { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.v5-ig a { position: relative; display: block; aspect-ratio: 1; overflow: hidden; background: #EAD9B9; }
.v5-ig img { width: 100%; height: 100%; object-fit: cover; display: block; }
.v5-ig__play { position: absolute; top: 8px; right: 8px; color: #fff; font-size: .9rem; text-shadow: 0 1px 4px rgba(0,0,0,.6); }

/* journal */
.v5-blog { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.2rem; }
@media (max-width: 899px) { .v5-blog { grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: 72%; overflow-x: auto; scroll-snap-type: x mandatory; } }
.v5-blog__card { display: grid; gap: .45rem; align-content: start; scroll-snap-align: start; color: #1A120C; }
.v5-blog__img { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: #EAD9B9; }
.v5-blog__img img { width: 100%; height: 100%; object-fit: cover; }
.v5-blog__date { font: 500 .68rem/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: #A8843F; }
.v5-blog__card strong { font: 500 1.15rem/1.25 var(--serif); }
.v5-blog__card em { font: 500 .72rem/1 var(--sans); font-style: normal; letter-spacing: .14em; text-transform: uppercase; text-decoration: underline; text-decoration-color: #A8843F; text-underline-offset: .35em; }

/* ---------- The only motion: menu and cart slide in ---------- */
.aps-drawer { position: fixed; inset: 0; z-index: 110; padding: 0 !important; background: rgba(23, 17, 13, .45) !important; opacity: 0; transition: opacity .3s ease !important; overflow: hidden; }
.aps-drawer.is-open { opacity: 1; }
.aps-drawer__top, .aps-drawer__nav { position: relative; background: #FBF7F0 !important; width: min(86vw, 380px); transform: translateX(-100%); transition: transform .34s cubic-bezier(.2, .8, .2, 1) !important; }
.aps-drawer.is-open .aps-drawer__top, .aps-drawer.is-open .aps-drawer__nav { transform: none; }
.aps-drawer__top { display: flex; align-items: center; justify-content: space-between; padding: .7rem 1rem .7rem 1.4rem; border-bottom: 1px solid rgba(168,132,63,.3); }
.aps-drawer__nav { height: calc(100vh - 66px); overflow-y: auto; padding: .6rem 1.4rem 2rem; }
.aps-drawer__all, .aps-drawer__occ { display: block; padding: .85rem 0; border-bottom: 1px solid rgba(168,132,63,.18); font: 500 1.25rem/1.2 var(--serif) !important; color: #1A120C !important; }
.aps-drawer__more { display: grid; gap: .2rem; margin-top: 1rem; }
.aps-drawer__more a { padding: .55rem 0; font: 500 .76rem/1 var(--sans); letter-spacing: .14em; text-transform: uppercase; color: #4A3F36; }
.aps-cartdrawer__scrim { opacity: 0; transition: opacity .3s ease !important; }
.aps-cartdrawer__panel { transform: translateX(100%); transition: transform .34s cubic-bezier(.2, .8, .2, 1) !important; }
.aps-cartdrawer.is-open .aps-cartdrawer__scrim { opacity: 1; }
.aps-cartdrawer.is-open .aps-cartdrawer__panel { transform: none; }

/* back to top */
.aps-totop { position: fixed; left: 16px; bottom: calc(16px + env(safe-area-inset-bottom)); z-index: 80; width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(168,132,63,.6); background: #FFFDF8; color: #1A120C; display: grid; place-items: center; cursor: pointer; box-shadow: 0 6px 16px rgba(0,0,0,.12); }
@media (max-width: 899px) {
	.aps-totop { bottom: calc(72px + env(safe-area-inset-bottom)); }
	.single-product .aps-totop { bottom: calc(84px + env(safe-area-inset-bottom)); }
}

/* live search */
.aps-search { background: #FBF7F0 !important; }
.aps-search__results { max-width: 760px; margin: 0 auto; padding: 0 1rem 1rem; display: grid; gap: .3rem; }
.aps-search__results a { display: flex; align-items: center; gap: .9rem; padding: .55rem .4rem; border-bottom: 1px solid rgba(168,132,63,.18); color: #1A120C; }
.aps-search__results img { width: 52px; height: 64px; object-fit: cover; background: #EAD9B9; }
.aps-search__results span { display: grid; gap: .15rem; }
.aps-search__results strong { font: 500 1rem/1.2 var(--serif); }
.aps-search__results em { font-style: normal; font-size: .85rem; color: #6B2333; }
.aps-search__results .aps-search__all { justify-content: center; font: 500 .74rem/1 var(--sans); letter-spacing: .14em; text-transform: uppercase; }
.aps-search__none { margin: .6rem 0; color: #7A7068; font-size: .9rem; }

/* content pages: one readable ink, clear single headings, comfortable measure */
.aps-page__body, .aps-prose, .aps-guide__body, .aps-termcopy, .aps-story, .aps-weaves { color: #2B211A !important; }
.aps-prose h2, .aps-termcopy h2, .aps-guide__body h2, .aps-story h2, .aps-weaves h2 { display: block; font: 500 clamp(1.5rem, 2.6vw, 2rem)/1.2 var(--serif) !important; color: #1A120C !important; margin: 2.2rem 0 .8rem !important; letter-spacing: 0 !important; text-transform: none !important; }
.aps-prose h3, .aps-guide__body h3 { font: 500 1.25rem/1.25 var(--serif) !important; color: #1A120C !important; margin: 1.6rem 0 .5rem !important; }
.aps-prose p, .aps-prose li, .aps-guide__body p, .aps-guide__body li, .aps-termcopy p, .aps-termcopy li { font-size: 1rem; line-height: 1.75; color: #2B211A !important; }
.aps-prose a:not(.aps-btn), .aps-guide__body a:not(.aps-btn), .aps-termcopy a:not(.aps-btn) { color: #6B2333; text-decoration: underline; text-underline-offset: .2em; }
.aps-page__head .aps-h1 { color: #1A120C !important; }
.aps-termcopy { max-width: 820px; margin: 3rem auto 0; padding: 2rem clamp(1rem, 3vw, 2.4rem); background: #FBF7F0; border: 1px solid rgba(168,132,63,.25); }

/* cookie notice: a small card */
.aps-cookie { max-width: 26rem; left: 16px; right: auto; padding: 1rem 1.1rem; }
.aps-cookie p { font-size: .8rem; margin-bottom: .8rem; }
.aps-cookie .aps-btn { min-height: 2.5rem; font-size: .7rem; }
@media (max-width: 899px) { .aps-cookie { left: 12px; right: 12px; max-width: none; } }

/* Mobile hero: arrows and dots sit in their own strip under the slide, never over the button */
@media (max-width: 899px) {
	.v5-hero__nav { position: static; padding: .9rem 0 1rem; background: #17110D; gap: 1.2rem; }
	.v5-hero__nav > button { width: 34px; height: 34px; background: transparent; }
	.v5-slide__text { padding: 1.6rem 1.2rem 2rem; gap: .7rem; }
	.v5-slide__sub { margin-bottom: .4rem; }
	.v5-slide .aps-btn { width: 100%; }
}
