/* Apparel & Bags shared styles */
.ab-page{font-family:Quicksand,sans-serif;color:#333}.ab-page *{box-sizing:border-box}.ab-page img{display:block;max-width:100%;height:auto}.ab-section{max-width:1180px;margin:0 auto;padding:0 20px}
.ab-titlebar{background:#f8f8f8;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px 20px}
.ab-titlebar h1{font-family:Quicksand,sans-serif;font-weight:500;font-size:32px;line-height:1;color:#2e2a26;margin:0;letter-spacing:.01em}
.ab-dots{display:flex;justify-content:center;gap:9px;margin-top:12px}.ab-dots span{width:14px;height:14px;border-radius:50%;display:block}
.ab-dot--pink{background:#ff66c4}.ab-dot--orange{background:#ff914d}.ab-dot--teal{background:#03989e}.ab-dot--red{background:#ff5757}
.ab-hero{margin-top:30px}
.ab-hero__strip{display:flex;gap:0;border-radius:8px;overflow:hidden;max-width:1180px;margin:0 auto;height:clamp(290px,26vw,370px)}
.ab-hero__photo{flex:1}.ab-hero__photo img{width:100%;height:100%;object-fit:cover}
.ab-hero__centre{flex:0 0 34%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#8e9faf;color:#fff;padding:24px 28px}
.ab-hero__centre h2{font-family:Quicksand,sans-serif;font-weight:700;font-size:clamp(22px,2.4vw,34px);margin:0 0 14px;line-height:1.2}
.ab-hero__centre p{font-size:clamp(13px,1.3vw,16px);line-height:1.5;margin:0;max-width:280px;opacity:.92}
.ab-categories{margin-top:48px}
.ab-cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;max-width:1180px;margin:0 auto;padding:0 20px}
.ab-cat-card{text-decoration:none;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .2s}
.ab-cat-card:hover{transform:translateY(-4px)}
.ab-cat-card__img{width:100%;aspect-ratio:1;border-radius:8px;overflow:hidden;background:#f4ede4}
.ab-cat-card__img img{width:100%;height:100%;object-fit:cover}
.ab-cat-card__label{font-family:Quicksand,sans-serif;font-weight:400;font-size:17px;color:#2e2a26;margin-top:12px;text-transform:lowercase}
.ab-collections{margin-top:54px;padding-bottom:60px}
.ab-collections__inner{max-width:1180px;margin:0 auto;padding:0 20px}
.ab-filter-bar{display:flex;justify-content:center;align-items:flex-start;flex-wrap:wrap;gap:56px;max-width:1040px;margin:0 auto 34px}
.ab-filter-bar__left{flex:0 1 auto;max-width:560px;min-width:0}
.ab-filter-bar__title{font-family:Quicksand,sans-serif;font-weight:500;font-size:17px;color:#2e2a26;margin:0 0 14px}
.ab-tabs{display:flex;flex-wrap:wrap;gap:9px}
.ab-tab{cursor:pointer;font-family:Quicksand,sans-serif;font-size:13px;font-weight:500;color:#4a4540;background:#fff;border:1px solid #ddd6cd;padding:8px 16px;border-radius:6px;transition:border-color .15s,color .15s,background .15s}
.ab-tab:hover{border-color:#b8ad9d;background:#faf8f5}.ab-tab--active{background:#fff;color:#2e2a26;border-color:#2e2a26;font-weight:600}
.ab-filter-bar__right{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.ab-color-label{font-family:Quicksand,sans-serif;font-size:17px;font-weight:500;color:#2e2a26;white-space:nowrap}
.ab-color-swatches{display:flex;flex-wrap:wrap;gap:10px;max-width:280px}
.ab-swatch{width:26px;height:26px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color .15s}
.ab-swatch:hover,.ab-swatch--active{border-color:#2e2a26}
.ab-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.ab-product-card{text-decoration:none;display:block;transition:transform .2s}.ab-product-card:hover{transform:translateY(-3px)}
.ab-product-card__img-wrap{width:100%;aspect-ratio:1;border-radius:8px;overflow:hidden;background:#f4ede4}
.ab-product-card__img-wrap img{width:100%;height:100%;object-fit:cover}
.ab-product-card__artist{display:block;font-family:Quicksand,sans-serif;font-size:12px;color:#8a817a;margin-top:8px;text-align:center}
.ab-product-card__title{display:block;font-family:Quicksand,sans-serif;font-weight:500;font-size:14px;color:#2e2a26;margin-top:2px;text-align:center}
.ab-product-card__price{display:block;font-family:Quicksand,sans-serif;font-size:14px;color:#d43d3d;margin-top:2px;text-align:center}
.ab-subhero{margin-top:30px}
.ab-subhero-grid{display:grid;gap:28px;max-width:1180px;margin:0 auto;padding:0 20px}
.ab-subhero-grid--2{grid-template-columns:repeat(2,1fr)}.ab-subhero-grid--3{grid-template-columns:repeat(3,1fr)}.ab-subhero-grid--4{grid-template-columns:repeat(4,1fr)}
.ab-subhero-card{text-decoration:none;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .2s}
.ab-subhero-card:hover{transform:translateY(-4px)}
.ab-subhero-card__img{width:100%;aspect-ratio:1.1;border-radius:8px;overflow:hidden;background:#f4ede4}
.ab-subhero-card__img img{width:100%;height:100%;object-fit:cover}
.ab-subhero-card__label{font-family:Quicksand,sans-serif;font-weight:400;font-size:16px;color:#2e2a26;margin-top:10px}
.ab-garment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:900px;margin:0 auto;padding:0 20px}
.ab-garment-card{text-decoration:none;display:flex;flex-direction:column;align-items:center;text-align:center}
.ab-garment-card__img{width:100%;aspect-ratio:1;border-radius:8px;overflow:hidden;background:#f8f8f8}
.ab-garment-card__img img{width:100%;height:100%;object-fit:contain}
.ab-garment-card__label{font-family:Quicksand,sans-serif;font-weight:400;font-size:14px;color:#555;margin-top:8px}
@media(max-width:900px){.ab-titlebar h1{font-size:27px}.ab-hero__strip{flex-direction:column;height:auto}.ab-hero__centre{padding:28px 20px}.ab-cat-grid{grid-template-columns:repeat(2,1fr);gap:20px}.ab-subhero-grid--2,.ab-subhero-grid--3,.ab-subhero-grid--4{grid-template-columns:repeat(2,1fr);gap:20px}.ab-product-grid{grid-template-columns:repeat(3,1fr);gap:18px}.ab-garment-grid{grid-template-columns:repeat(2,1fr);gap:18px}.ab-filter-bar{flex-direction:column}}
@media(max-width:580px){.ab-cat-grid{grid-template-columns:repeat(2,1fr);gap:16px}.ab-subhero-grid--2,.ab-subhero-grid--3,.ab-subhero-grid--4{grid-template-columns:1fr}.ab-product-grid{grid-template-columns:repeat(2,1fr);gap:14px}.ab-garment-grid{grid-template-columns:repeat(2,1fr);gap:14px}.ab-tabs{gap:4px}.ab-tab{font-size:12px;padding:4px 10px}}
