/*
Theme Name: Shustar Shop
Template: storefront
Version: 1.0
*/
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;800;900&family=Nunito:wght@700;800;900;1000&display=swap');
body { background:#fffaf3; color:#171416; }
.site-header { background:#fffaf3; border-bottom:2px solid #171416; }
.site-branding .custom-logo-link img { width:48px; border-radius:50%; }
.shop-hero { padding:clamp(2rem,6vw,6rem) 5%; border:2px solid #171416; border-radius:24px; background-color:#fff0f7; background-image:linear-gradient(#a5275424 1px,transparent 1px),linear-gradient(90deg,#a5275424 1px,transparent 1px); background-size:24px 24px; margin-bottom:2rem; }
.shop-hero h1 { font-size:clamp(2.5rem,6vw,5rem); font-weight:900; letter-spacing:-.05em; line-height:1; }
.shop-hero em { color:#a7174e; }
.shop-hero .eyebrow { font:700 .8rem monospace; letter-spacing:.12em; text-transform:uppercase; }
ul.products li.product { background:#f9d9eb; border:2px solid #171416; border-radius:24px; box-shadow:4px 5px #171416; padding:1rem; }
ul.products li.product:nth-child(3n+2) { background:#fff0a8; }
ul.products li.product:nth-child(3n+3) { background:#d8f1df; }
ul.products li.product img { width:100%; aspect-ratio:1; object-fit:cover; border-radius:14px; }
.button, button.button, .button.alt { background:#ff6482; color:#171416; border:2px solid #171416; border-radius:99px; font-weight:700; }
.shop-band { background:#ff83bf; padding:2rem; text-align:center; border-radius:20px; }
.site-footer { background-color:#171416; background-image:linear-gradient(#ffffff22 1px,transparent 1px),linear-gradient(90deg,#ffffff22 1px,transparent 1px); background-size:24px 24px; color:#fff; }
.site-footer a:not(.button) { color:#fff; }

.shustar-layout { --lavender:#9a83f7; --lime:#cefc51; --olive:#a2c63f; --sky:#a2cdf8; --grey:#efefef; background:white; color:#000; font-family:Inter,Arial,sans-serif; }
.shustar-layout h1,.shustar-layout h2 { font-family:"Archivo Black",Inter,Arial,sans-serif; color:#000; text-transform:uppercase; line-height:1.04; letter-spacing:-.04em; }
.shustar-layout h2 { font-size:clamp(1.8rem,4vw,3.5rem); }
.shustar-layout a:not(.button) { color:#000; }
.store-announcement { background:var(--lavender); text-align:center; padding:.5rem 1rem; font-size:.85rem; font-weight:800; }
.store-header { position:sticky; top:0; z-index:20; min-height:75px; background:#fff; border-bottom:1px solid #ddd; display:grid; grid-template-columns:auto 1fr auto 1fr; align-items:center; gap:1.2rem; padding:0 2.4vw; }
.admin-bar .store-header { top:32px; }
.store-header a,.store-menu summary { text-decoration:none; }
.store-menu summary,.store-navigation a,.store-tools { font-size:.75rem; font-weight:900; text-transform:uppercase; white-space:nowrap; }
.store-menu summary { cursor:pointer; }
.menu-mobile { display:none; }
.store-navigation,.store-tools { display:flex; align-items:center; gap:clamp(.45rem,1vw,1rem); }
.store-brand { display:flex; align-items:center; gap:.5rem; justify-self:center; font-family:"Archivo Black",Inter,sans-serif; font-style:italic; font-size:clamp(1.35rem,2.6vw,2.5rem); line-height:1; }
.shustar-layout .store-brand { color:#6241bd; }
.store-brand img { width:38px; height:38px; object-fit:contain; }
.store-tools { justify-content:flex-end; }
.store-icon { display:inline-flex; align-items:center; gap:.25rem; padding:.35rem; border:0; background:white; color:#000; text-transform:uppercase; font-weight:900; }
.store-mega { position:absolute; left:0; right:0; top:100%; display:grid; grid-template-columns:1fr 3fr; gap:2rem; padding:1.5rem 4vw; background:white; border-bottom:2px solid #000; }
.store-mega nav,.store-footer nav { display:grid; align-content:start; gap:.45rem; }
.store-mega ul.products { margin:0; }
.store-mega li.product:nth-child(3n+1) { background:#e0d7ff; }
.store-mega li.product:nth-child(3n+2) { background:#e8f9aa; }
.store-mega li.product:nth-child(3n+3) { background:#cde8ff; }
.store-search { padding:1rem 4vw; }
.store-search input[type=search] { width:100%; background:white; border:2px solid black; box-shadow:none; }
.store-search form { display:flex; }
.store-cart { position:fixed; inset:0 0 0 auto; margin:0; width:min(100%,460px); max-height:none; height:100%; border:0; padding:1.5rem; color:black; background:white; }
.store-cart::backdrop { background:#0007; }
.store-cart form[method=dialog] { display:flex; justify-content:flex-end; }
.shustar-layout .col-full { max-width:86rem; }
.shustar-layout.home #content>.col-full { max-width:none; margin:0; padding:0; }
.shustar-layout #primary.content-area { width:100%; float:none; }
.store-hero { background:var(--sky); position:relative; }
.hero-slides,.product-rail ul.products,.collection-rail { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; }
.hero-slide { position:relative; flex:0 0 100%; min-width:0; height:clamp(440px,56vw,700px); display:grid; grid-template-columns:1fr 1fr; align-items:center; background:var(--sky); scroll-snap-align:start; }
.hero-slide:nth-child(2) { background:var(--lavender); }
.hero-slide:nth-child(3) { background:var(--lime); }
.hero-slide img { grid-column:2; width:100%; height:100%; object-fit:cover; border-radius:0; }
.hero-copy { grid-row:1; grid-column:1; padding:clamp(1rem,5vw,5rem); }
.hero-copy h1,.hero-copy h2 { font-size:clamp(2.6rem,5.5vw,5.5rem); margin:.25em 0; }
.hero-copy p { font-weight:900; text-transform:uppercase; }
.hero-pagination { position:absolute; bottom:.75rem; left:50%; transform:translateX(-50%); display:flex; gap:.4rem; }
.hero-pagination button { padding:.3rem .65rem; background:white; border:1px solid black; }
.hero-pagination button[aria-current=true] { background:var(--lime); }
.store-section { padding:clamp(2rem,5vw,5rem) 4vw; }
.store-section-heading { display:flex; align-items:baseline; justify-content:space-between; gap:1rem; }
.store-section-heading a,.store-story a { font-weight:900; text-transform:uppercase; }
.store-lime { background:var(--lime); }
.shustar-layout ul.products li.product { border:0; border-radius:0; box-shadow:none; padding:0; background:transparent; text-align:left; }
.shustar-layout ul.products li.product img { aspect-ratio:3/4; object-fit:cover; border-radius:0; margin:0 0 .75rem; }
.shustar-layout ul.products li.product .woocommerce-loop-product__title { font:800 .95rem/1.2 Inter,sans-serif; letter-spacing:0; text-transform:none; color:black; }
.shustar-layout ul.products li.product .price,.shustar-layout div.product .summary .price { color:#6241bd; font-weight:900; }
.shustar-layout .onsale { background:var(--lime); color:black; border:0; border-radius:999px; }
.product-rail ul.products { gap:1rem; margin:0; }
.product-rail ul.products::before,.product-rail ul.products::after { display:none; }
.shustar-layout .product-rail ul.products li.product { flex:0 0 22%; width:auto; margin:0; scroll-snap-align:start; }
.store-quick-tiles { display:grid; grid-template-columns:1fr 1fr; }
.store-quick-tiles a { padding:2rem; background:var(--lavender); font:900 clamp(1.6rem,4vw,3rem) "Archivo Black",sans-serif; text-transform:uppercase; text-decoration:none; }
.store-quick-tiles a:nth-child(2) { background:var(--lime); }
.collection-index { background:var(--lavender); }
.collection-rail { gap:1rem; }
.collection-rail>a { flex:0 0 22%; min-width:155px; scroll-snap-align:start; background:#fff; padding:1rem; font-weight:900; text-transform:uppercase; text-decoration:none; }
.collection-banner { display:block; position:relative; margin-bottom:1rem; background:var(--sky); }
.collection-banner img { display:block; width:100%; height:clamp(210px,34vw,480px); object-fit:cover; object-position:center; border-radius:0; }
.collection-banner h2 { position:absolute; bottom:0; right:0; margin:0; padding:.5rem 1rem; background:var(--lime); font-style:italic; }
.collection-cards img { width:100%; aspect-ratio:1; object-fit:cover; margin-bottom:.75rem; border-radius:0; }
.store-story { text-align:center; }
.store-story h2 { max-width:1000px; margin:0 auto 1rem; font-size:clamp(2rem,5vw,4rem); }
.store-story p { margin:.5rem auto; max-width:42rem; }
.store-trust { display:grid; grid-template-columns:repeat(3,1fr); text-align:center; padding:2rem 4vw; gap:1rem; }
.store-trust a { display:grid; text-decoration:none; }
.store-trust span { font-size:2.3rem; line-height:1; }
.store-trust strong { text-transform:uppercase; }
.shustar-layout .button,.shustar-layout button.button { border:0; border-radius:0; box-shadow:none; background:#000; color:white; text-transform:uppercase; font-weight:900; }
.shustar-layout .single_add_to_cart_button.button { width:100%; background:var(--lavender); color:#182000; margin-top:.75rem; min-height:50px; }
.single-product .woocommerce-product-gallery img { border-radius:0; }
.single-product .summary h1 { font-size:clamp(1.8rem,3vw,2.4rem); }
.single-product .summary .price { font-size:1.75rem; }
.shop-filters { display:flex; gap:.5rem; flex-wrap:wrap; margin:1rem 0; }
.shop-filters a { padding:.45rem .65rem; background:var(--grey); font-weight:700; }
.store-footer { background:var(--lavender); padding:3rem 4vw 1rem; }
.store-footer-inner { display:grid; grid-template-columns:2fr repeat(4,1fr); gap:2rem; }
.store-footer h3 { font-size:.9rem; font-weight:900; text-transform:uppercase; }
.shustar-layout .store-footer-brand { display:flex; gap:.6rem; align-items:center; color:var(--lime); font:italic clamp(2.3rem,5vw,4.5rem)/1 "Archivo Black",sans-serif; text-decoration:none; }

.store-copyright { border-top:1px solid #000; padding-top:1rem; margin:2rem 0 0; font-size:.8rem; }
.private-label-form { display:grid; gap:1rem; max-width:43rem; margin:2rem 0; }
.private-label-form label { display:grid; gap:.25rem; font-weight:700; }
.private-label-form input,.private-label-form textarea { border:1px solid #000; box-shadow:none; border-radius:0; }
.shustar-layout { --navy:#101d74; --blue:#0f3bb5; --pink:#ff4f9b; --cream:#fffbf7; background:var(--cream); color:var(--navy); }
.shustar-layout h1,.shustar-layout h2 { font-family:Nunito,Inter,sans-serif; color:var(--navy); font-weight:1000; letter-spacing:-.045em; text-transform:none; }
.shustar-layout a:not(.button) { color:var(--navy); }
.store-announcement { background:var(--blue); color:white; }
.store-header { grid-template-columns:auto auto 1fr auto; gap:clamp(.65rem,1.4vw,1.5rem); }
.store-brand { order:-2; font:1000 clamp(1.1rem,2.4vw,1.8rem)/.9 Nunito,sans-serif; white-space:nowrap; }
.shustar-layout .store-brand { color:var(--navy); }
.store-brand small { display:block; font-size:.62em; letter-spacing:.18em; margin-top:.3em; }
.store-brand img { width:60px; height:60px; }
.store-navigation { justify-content:center; }
.store-menu summary,.store-navigation a,.store-tools { text-transform:none; font-size:.83rem; }
.store-icon { color:var(--navy); }
.store-search input[type=search] { border:1px solid #cbcde1; border-radius:999px; }
.store-mega { border-color:#e3e3ef; }
.shu-wrap { width:min(96%,1440px); margin-inline:auto; }
.shu-hero { min-height:clamp(385px,39vw,640px); display:grid; grid-template-columns:32% 68%; align-items:center; background:radial-gradient(circle at 33% 37%,#fff9f2,transparent 45%),linear-gradient(110deg,#ffe6ef,#f4cabc 68%,#ffead3); overflow:hidden; }
.shu-hero-copy { position:relative; z-index:1; padding:clamp(1.3rem,3.5vw,4rem); padding-right:0; }
.shu-hero h1 { font-size:clamp(2.65rem,4.65vw,5.6rem); line-height:.99; margin:0 0 .4em; }
.shu-hero h1 em { display:inline-block; text-decoration:underline #f9ba1b .12em; text-underline-offset:.13em; }
.shu-hero-copy p { font-size:clamp(1rem,1.45vw,1.4rem); line-height:1.3; max-width:28ch; margin:0 0 1.1rem; color:#171729; }
.shustar-layout .button,.shustar-layout button.button { background:var(--navy); color:#fff; border-radius:999px; text-transform:none; }
.shustar-layout .button.shu-pink { background:#e51769; color:#fff; }
.shustar-layout .button.shu-outline { background:transparent; color:var(--navy); border:1.5px solid var(--navy); }
.shu-hero-copy .button { display:table; margin:.5rem 0; padding:.6rem 1.1rem; }
.shu-hero-art { position:relative; align-self:stretch; min-height:100%; }
.shu-hero-art a { position:absolute; display:block; border:5px solid white; border-radius:1.1rem; background:white; box-shadow:0 10px 28px #40273c24; }
.shu-hero-art img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:cover; border-radius:.8rem; }
.shu-hero-art a:nth-child(1) { width:42%; left:6%; top:13%; transform:rotate(-7deg); z-index:2; }
.shu-hero-art a:nth-child(2) { width:34%; left:44%; bottom:8%; transform:rotate(6deg); z-index:3; }
.shu-hero-art a:nth-child(3) { width:28%; right:6%; top:8%; transform:rotate(8deg); }
.shu-spark,.shu-heart { position:absolute; z-index:3; font-size:clamp(2rem,5vw,5rem); font-weight:900; line-height:1; }
.shu-spark { top:10%; left:8%; color:#f7b901; }
.shu-heart { bottom:2%; right:4%; color:#ff4f9b; transform:rotate(15deg); }
.shu-category-section { margin-block:1.75rem; scroll-margin-top:100px; }
.shu-collections { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(.75rem,1.4vw,1.25rem); }
.shu-tile { display:grid; grid-template-columns:1fr auto; align-items:center; gap:.7rem; padding:.75rem; border-radius:1rem; overflow:hidden; text-decoration:none; background:#ffe8a8; }
.shu-tile:nth-child(2) { background:#ffc9e1; }.shu-tile:nth-child(3) { background:#c9f3e4; }
.shu-tile-text { display:grid; padding:.3rem; }
.shu-tile strong { font:1000 clamp(1.15rem,2.2vw,2rem)/1 Nunito,sans-serif; }
.shu-tile small { line-height:1.15; padding-top:.35rem; }
.shu-tile img { grid-column:1/-1; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:.65rem; }
.shu-tile-arrow { display:grid; place-items:center; width:2rem; height:2rem; border-radius:50%; background:white; font-weight:900; }
.shu-heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:.75rem; }
.shu-heading h2 { margin:0; font-size:clamp(1.55rem,3vw,2.6rem); }
.shu-heading h2 span { color:#e99c00; }
.shu-heading a { font-size:.84rem; font-weight:800; text-align:right; }
.shustar-layout ul.products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.9rem; }
.shustar-layout ul.products::before,.shustar-layout ul.products::after { display:none; }
.shustar-layout .shu-catalog ul.products { grid-template-columns:repeat(5,minmax(0,1fr)); }
.shustar-layout ul.products li.product { width:auto; margin:0; background:#fff; border:1px solid #ececf2; padding:.4rem .4rem .75rem; border-radius:.7rem; }
.shustar-layout ul.products li.product img { border-radius:.55rem; aspect-ratio:1; background:#f8f5f2; }
.shustar-layout ul.products li.product .woocommerce-loop-product__title { color:var(--navy); padding-inline:.3rem; }
.shustar-layout ul.products li.product .price,.shustar-layout div.product .summary .price { color:#c61763; }
.shustar-layout ul.products li.product .price { padding-inline:.3rem; margin-bottom:0; }
.store-mega ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); }
.shu-story { display:grid; grid-template-columns:1fr 1.25fr auto; align-items:center; gap:1.4rem; background:#fff0d3; border-radius:2rem; margin-block:1.7rem 1rem; overflow:hidden; padding-right:1.25rem; }
.shu-story-brand { min-height:150px; padding:1rem; background:var(--blue); color:#fff; display:flex; align-items:center; justify-content:center; gap:.65rem; border-radius:0 0 35% 0; }
.shu-story-brand img { object-fit:contain; }.shu-story-brand strong { font:1000 clamp(1.4rem,3vw,2.6rem)/1 Nunito,sans-serif; }.shu-story-brand small { display:block; }
.shu-story h2 { font-size:2rem; margin:0; }.shu-story p { margin:.3rem 0 0; line-height:1.45; }
.shu-trust { display:grid; grid-template-columns:repeat(3,1fr); text-align:center; gap:.4rem; padding:1rem 0; }
.shu-trust a { text-decoration:none; }.shu-trust span { color:#e51769; font-size:1.5rem; margin-right:.4rem; }
.shu-concepts { display:flex; gap:1rem; align-items:center; padding:1rem; background:#fff0d3; margin-block:1rem; border-radius:1rem; scroll-margin-top:100px; }
.shu-concepts img { width:min(40%,220px); border-radius:.75rem; }.shu-concepts h2,.shu-concepts p { margin:0; }
.store-footer { background:var(--navy); color:white; border-radius:2rem 2rem 0 0; }
.shustar-layout .store-footer a:not(.button) { color:white; }
.shustar-layout .store-footer-brand { font:1000 clamp(1.5rem,2.5vw,2.65rem)/1 Nunito,sans-serif; }
.store-footer-brand img { object-fit:contain; }
.store-copyright { border-color:#ffffff5c; }
.shustar-layout .single_add_to_cart_button.button { background:#c61763; color:white; }
.shustar-layout .woocommerce-product-gallery img { border-radius:.8rem; }
.shustar-layout .shop-filters a { background:#e4d5ff; border-radius:999px; }
@media(max-width:1050px) {
  .store-header { grid-template-columns:1fr auto 1fr; }
  .store-brand { order:0; }
  .store-mega { grid-template-columns:1fr; }
  .store-mega .woocommerce { display:none; }
}
@media(max-width:768px) {
  .shu-hero { grid-template-columns:1fr; }
  .shu-hero-copy { padding:1.4rem 1rem .5rem; }
  .shu-hero h1 { font-size:clamp(2.5rem,8vw,4.6rem); }
  .shu-hero-art { min-height:clamp(230px,60vw,460px); }
  .shu-hero-copy .button { display:inline-block; font-size:.78rem; }
  .shu-collections { grid-template-columns:1fr; }
  .shu-tile { grid-template-columns:minmax(90px,38%) 1fr auto; gap:.5rem; }
  .shu-tile img { grid-column:auto; aspect-ratio:1; }
  .shustar-layout ul.products,.shustar-layout .shu-catalog ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .shu-story { grid-template-columns:1fr; gap:.65rem; padding:0 0 1rem; }
  .shu-story>*:not(:first-child) { margin-inline:1rem; justify-self:start; }
  .shu-story-brand { min-height:100px; border-radius:0; }
  .shu-trust { font-size:.75rem; }
}
@media(max-width:1050px) {
  .store-navigation { display:none; }
  .store-header { grid-template-columns:1fr auto 1fr; gap:.25rem; }
  .menu-desktop { display:none; } .menu-mobile { display:inline; font-size:1.4rem; }
}
@media(max-width:600px) {
  .store-header { min-height:60px; padding:0 .7rem; }
  .store-brand img { width:38px; height:38px; }
  .store-tools { gap:.1rem; }
  .store-mega { grid-template-columns:1fr; }
  .store-mega .woocommerce { display:none; }
  .hero-slide { display:block; height:490px; }
  .hero-slide img { width:100%; height:100%; }
  .hero-copy { position:absolute; inset:auto 0 3rem; padding:1rem; background:var(--sky); }
  .hero-copy h1,.hero-copy h2 { font-size:2.5rem; }
  .shustar-layout .product-rail ul.products li.product { flex-basis:62%; }
  .shustar-layout .site-main ul.products:not(.product-rail ul.products) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
  .shustar-layout .site-main ul.products:not(.product-rail ul.products) li.product { width:auto; margin:0; }
  .shustar-layout .site-main ul.products::before,.shustar-layout .site-main ul.products::after { display:none; }
  .store-quick-tiles,.store-footer-inner { grid-template-columns:1fr; }
  .store-trust { padding-inline:.6rem; gap:.4rem; }
  .store-trust strong { font-size:.7rem; }
}
