:root{--purple:#5212a2;--purple-dark:#2c075b;--ink:#14121a;--muted:#706b78;--line:#e6e2eb;--paper:#fff;--pale:#f6f4f8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input{font:inherit}.site-header{background:var(--purple);color:#fff}.header-inner,.search-row,main,.site-footer{max-width:1180px;margin:0 auto}.header-inner{height:73px;display:flex;align-items:center;gap:34px}.logo{font-size:25px;line-height:1;font-weight:900;font-style:italic;letter-spacing:.4px;white-space:nowrap}.main-nav{display:flex;align-items:center;gap:25px;flex:1}.main-nav a{text-transform:uppercase;font-size:10px;font-weight:700;white-space:nowrap;opacity:.96}.main-nav a:hover,.footer-links a:hover{opacity:.65}.header-actions{display:flex;align-items:center;gap:13px}.icon-button{position:relative;border:0;padding:2px;background:transparent;color:#fff;font-size:23px;line-height:1;cursor:pointer}.cart-count{position:absolute;top:-6px;right:-8px;display:none;align-items:center;justify-content:center;width:14px;height:14px;background:#fff;color:var(--purple);font-size:9px;border-radius:50%}.search-row{padding:0 0 15px}.search-box{display:flex;align-items:center;gap:9px;width:555px;height:37px;margin-left:277px;border:1px solid rgba(255,255,255,.52);border-radius:3px;padding:0 12px;color:#e8dfff}.search-box input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:#fff;font-size:11px}.search-box input::placeholder{color:#d8cbeb}.benefits{height:54px;display:flex;align-items:center;justify-content:space-around;gap:20px;border-bottom:1px solid var(--line)}.benefits p{margin:0;display:flex;align-items:center;gap:9px;color:#7026c6;font-size:20px}.benefits span{color:#4e4855;font-size:11px;font-weight:700}.hero{min-height:385px;display:grid;grid-template-columns:48% 52%;padding:46px 25px 20px 25px;background:#f2edf6;overflow:hidden}.eyebrow{margin:0 0 14px;font-size:11px;font-weight:800;color:#5a5561}.hero h1{max-width:570px;margin:0;font-size:49px;line-height:.98;letter-spacing:-1.6px;font-weight:900}.hero h1 span{color:var(--purple)}.hero-text{line-height:1.55;color:#4a4550;max-width:330px;margin:20px 0 19px;font-size:13px}.hero-buttons{display:flex;gap:14px}.button{display:inline-flex;align-items:center;justify-content:center;gap:27px;min-height:41px;padding:0 22px;border:1px solid var(--purple);border-radius:3px;text-transform:uppercase;font-size:10px;font-weight:800;cursor:pointer}.button b{font-size:20px;font-weight:400}.button-primary{background:var(--purple);color:#fff}.button-outline{color:var(--purple);background:transparent}.button-light{color:var(--purple);background:#fff;border-color:#fff}.hero-visual{position:relative;min-height:300px;background:#4e168c;overflow:hidden}.court{position:absolute;inset:28px 0 0;border:2px solid rgba(255,255,255,.25);transform:perspective(240px) rotateX(58deg);transform-origin:bottom}.ball{position:absolute;right:25px;top:125px;width:93px;height:93px;border:2px solid #301050;border-radius:50%;background:#d96a16;color:#803700;font-size:0}.ball:before,.ball:after{content:"";position:absolute;inset:8px 43px;border-left:2px solid #49233e;transform:rotate(42deg)}.ball:after{transform:rotate(-42deg)}.shoe{position:absolute;width:215px;height:84px;border:8px solid #ddd6e4;border-radius:52% 42% 32% 30%;background:#f8f7fa;box-shadow:inset 36px -16px #c7bfce,8px 14px 0 rgba(25,1,53,.24);transform:rotate(-12deg)}.shoe:after{content:"";position:absolute;width:81px;height:5px;right:19px;top:30px;background:#5b268d;box-shadow:0 13px #5b268d,0 26px #5b268d}.shoe-one{right:117px;top:147px}.shoe-two{right:10px;top:177px;transform:rotate(6deg)}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:0 0 26px;margin-top:-29px}.feature-card{height:235px;border:1px solid var(--line);border-radius:5px;padding:29px;display:flex;justify-content:space-between;overflow:hidden}.feature-card h2{font-size:20px;line-height:1.05;margin:0 0 15px}.feature-card p{font-size:11px;line-height:1.5;margin:0 0 20px}.dark-card{background:#17111d;color:#fff}.light-card{background:#f5f3f6}.feature-shoe{align-self:flex-end;width:180px;height:72px;border:7px solid #695176;border-radius:56% 38% 25% 28%;transform:rotate(-15deg)}.dark-shoe{background:#1b1c28;box-shadow:inset -25px -8px #ca246c}.light-shoe{background:#d8d7d9;border-color:#aaa5ae}.catalog-section{padding:0 0 27px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-heading h2{margin:0;color:var(--purple);text-transform:uppercase;font-size:16px}.section-heading a{font-size:10px;color:#5c5663}.section-heading span{display:inline-grid;place-items:center;width:18px;height:18px;margin-left:4px;border-radius:50%;background:#f0ebf5;color:var(--purple);font-size:17px}.product-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.product-card{display:flex;flex-direction:column;min-width:0;width:100%;border:1px solid var(--line);border-radius:10px;padding:9px;background:#fff;box-sizing:border-box;overflow:hidden;transition:transform .2s,border-color .2s,box-shadow .2s}.product-card:hover{transform:translateY(-3px);border-color:#a878d6;box-shadow:0 8px 20px rgba(82,18,162,.08)}.product-visual{position:relative;width:100%;aspect-ratio:1/1;height:auto;display:flex;align-items:center;justify-content:center;background:#f6f5f8;border-radius:8px;overflow:hidden;padding:8px;box-sizing:border-box;flex-shrink:0}.product-shape{width:91px;height:42px;border:5px solid var(--shoe-color,#32243f);border-radius:58% 38% 23% 33%;background:#f1edf4;transform:rotate(-15deg)}.jersey .product-shape{width:55px;height:83px;border-radius:5px 5px 11px 11px;transform:none;background:var(--jersey-color,#f2b319);border-color:var(--jersey-color,#f2b319)}.new-badge{position:absolute;top:0;left:0;padding:3px 6px;color:var(--purple);border:1px solid #b494d6;font-size:8px;font-weight:700}.favorite{position:absolute;top:6px;right:6px;border:0;background:rgba(255,255,255,.85);color:#8d8493;font-size:16px;cursor:pointer}.product-card h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;text-overflow:ellipsis;min-height:2.7em;max-height:2.7em;height:auto;margin:6px 0 6px;font-size:11px;line-height:1.35;overflow-wrap:anywhere;word-break:break-word;color:var(--ink);min-width:0}.product-card p{margin-top:auto;margin-bottom:0;font-size:12.5px;font-weight:900;color:var(--ink);white-space:nowrap}.quick-categories{display:grid;grid-template-columns:repeat(6,1fr);align-items:center;min-height:67px;margin-bottom:29px;border:1px solid var(--line)}.quick-categories a{display:flex;align-items:center;justify-content:center;gap:10px;color:#5e556a;font-size:11px;font-weight:700}.quick-categories i{color:#8a32db;font-style:normal;font-size:27px}.articles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding-bottom:22px}.article-card{position:relative;min-height:171px;padding:19px 17px;overflow:hidden;background:#f4f1f6}.article-label{margin:0 0 9px;color:var(--purple);font-weight:800;font-size:11px}.article-card h3{position:relative;z-index:1;margin:0 0 9px;font-size:14px;line-height:1.1}.article-card>p:not(.article-label){position:relative;z-index:1;margin:0 0 10px;font-size:10px;line-height:1.4;max-width:155px}.article-card>a{position:relative;z-index:1;text-transform:uppercase;color:var(--purple);font-size:10px;font-weight:800}.article-object{position:absolute}.shoe-object{right:20px;bottom:18px;width:117px;height:47px;border:6px solid #7f4b9a;border-radius:55% 40% 25% 30%;transform:rotate(-20deg)}.person-object{right:34px;bottom:-15px;width:92px;height:148px;border-radius:45px 45px 0 0;background:#1d1920}.person-object:before{content:"";position:absolute;width:47px;height:47px;top:-29px;left:22px;border-radius:50%;background:#9f735d}.care-object{right:30px;bottom:15px;width:84px;height:100px;border-bottom:10px solid #3e2650;border-left:18px solid transparent;border-right:18px solid transparent;background:#e9dfec}.newsletter{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px 25px;background:var(--purple);color:#fff;border-radius:4px}.newsletter h2{margin:0 0 4px;font-size:19px}.newsletter p{margin:0;font-size:10px}.newsletter form{display:flex;gap:10px;min-width:510px}.newsletter input{height:41px;flex:1;border:1px solid rgba(255,255,255,.5);border-radius:3px;background:transparent;padding:0 13px;color:#fff;outline:0;font-size:11px}.newsletter input::placeholder{color:#e2d6ee}.newsletter .button{min-width:178px}.footer-links{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:42px;padding:24px 17px}.footer-logo{display:block;color:var(--purple);margin:0 0 12px;font-size:21px}.footer-links p{margin:0;color:#625b68;font-size:10px;line-height:1.5}.footer-links h3{margin:0 0 8px;color:var(--purple);font-size:10px;text-transform:uppercase}.footer-links>div:not(:first-child) a{display:block;margin:0 0 4px;color:#5d5661;font-size:10px}.socials{display:flex;gap:12px;margin-top:14px;color:#8a32db;font-weight:700}.legal{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:11px 17px 17px;color:#98929c;font-size:8px}.legal div{display:flex;gap:27px}.toast{position:fixed;right:22px;bottom:22px;z-index:5;transform:translateY(90px);padding:12px 16px;background:#20102f;color:#fff;border-radius:4px;font-size:12px;transition:transform .25s}.toast.visible{transform:translateY(0)}
@media (max-width:900px){.header-inner,.search-row,main,.site-footer{padding-left:16px;padding-right:16px}.main-nav{display:none}.header-inner{justify-content:space-between;height:60px}.search-row{padding-bottom:12px}.search-box{width:100%;margin:0}.hero{grid-template-columns:1fr;padding:35px 26px 0}.hero h1{font-size:39px}.hero-visual{min-height:220px;margin-top:20px}.feature-grid{padding:0 16px;margin-top:0}.product-grid{grid-template-columns:repeat(3,1fr)}.product-card:nth-child(n+7){display:none}.newsletter{margin:0 16px}.footer-links{padding-left:16px;padding-right:16px}}
@media (max-width:560px){.logo{font-size:20px}.header-actions{gap:8px}.benefits{height:auto;padding:12px 16px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.benefits p{font-size:16px}.benefits span{font-size:9px}.hero{padding:30px 20px 0}.hero h1{font-size:33px;letter-spacing:-.7px}.feature-grid{grid-template-columns:1fr;gap:12px;padding-top:12px}.feature-card{height:195px;padding:22px}.product-grid{gap:8px}.product-card{padding:7px;border-radius:8px}.product-visual{width:100%;aspect-ratio:1/1;height:auto;padding:6px;border-radius:6px}.product-card h3{margin:4px 0 5px;font-size:10.5px;line-height:1.3;min-height:2.6em;max-height:2.6em}.product-card p{font-size:11.5px}.carousel-button{width:26px;height:26px;font-size:18px}.quick-categories{grid-template-columns:repeat(3,1fr);row-gap:12px;padding:12px 0}.quick-categories a{font-size:10px;flex-direction:column;gap:2px}.quick-categories i{font-size:21px}.articles{grid-template-columns:1fr;padding:0 16px 20px}.newsletter{display:block;padding:18px}.newsletter form{min-width:0;margin-top:14px}.newsletter .button{min-width:124px;padding:0 10px}.footer-links{grid-template-columns:1fr 1fr;gap:25px}.footer-links>div:first-child{grid-column:1/-1}.legal{display:block;padding:11px 16px 17px}.legal div{margin-top:7px;gap:10px;flex-wrap:wrap}.section-heading h2{font-size:14px}}

/* Controls and two-column article layout added for the prototype catalog. */
.section-controls{display:flex;align-items:center;gap:5px}.carousel-button{display:inline-grid;place-items:center;width:18px;height:18px;padding:0;border:0;border-radius:50%;background:#f0ebf5;color:var(--purple);font-size:17px;line-height:1;cursor:pointer}.carousel-button:hover{background:#ded2ea}.articles{grid-template-columns:repeat(2,minmax(0,1fr))}.empty-catalog{min-height:100vh}@media (max-width:560px){.articles{grid-template-columns:1fr}}

.benefit-icon{display:block;width:21px;height:21px;object-fit:contain}.poizon-icon{width:30px;object-fit:cover;border-radius:2px}.payment-icon{padding:3px;filter:none}

.header-inner{display:grid;grid-template-columns:190px minmax(0,1fr) auto;gap:0}.main-nav{justify-content:center;min-width:0;width:auto;margin:0 34px;gap:42px}.header-icon{display:block;width:22px;height:22px;object-fit:contain;filter:brightness(0) invert(1)}
.main-nav a.is-current{border-bottom:2px solid #fff;padding-bottom:6px}
.search-box{margin-left:auto;margin-right:auto}
.favorite-header-button{width:22px;height:22px;padding:0}

@media (max-width:900px){.header-inner{grid-template-columns:minmax(0,1fr) auto;gap:16px}}

.search-box{margin-left:315px}@media (max-width:900px){.search-box{margin-left:0}}

/* Live product search in the home-page header. */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  -webkit-appearance: none !important;
  appearance: none !important;
  display: none !important;
}
input[type="search"]::-ms-clear,
input[type="search"]::-ms-reveal {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

.search-row{position:relative}
.search-box{position:relative}
.search-icon{display:block;width:16px;height:16px;object-fit:contain;filter:brightness(0) invert(1)}
.search-clear{display:grid;place-items:center;width:22px;height:22px;padding:2px;border:0;background:transparent;cursor:pointer;flex-shrink:0;transition:opacity .15s ease,transform .15s ease}
.search-clear[hidden]{display:none !important}
.search-clear:hover{opacity:.8;transform:scale(1.08)}
.search-clear img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.home-search-results{position:absolute;z-index:1000;top:calc(100% - 11px);left:315px;width:555px;max-height:400px;overscroll-behavior:contain;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;border:1px solid #e6e2eb;border-radius:0 0 8px 8px;background:#fff;box-shadow:0 16px 32px rgba(32,16,47,.22)}
.home-search-results::-webkit-scrollbar{width:7px}
.home-search-results::-webkit-scrollbar-track{background:#f6f3f9;border-radius:4px}
.home-search-results::-webkit-scrollbar-thumb{background:#c5b4d6;border-radius:4px}
.home-search-results::-webkit-scrollbar-thumb:hover{background:var(--purple)}
.home-search-result{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 11px;color:#14121a}
.home-search-result+.home-search-result{border-top:1px solid #eeeaf2}
.home-search-result:hover{background:#f7f3fb}
.home-search-image{display:grid;place-items:center;width:46px;height:46px;overflow:hidden;border-radius:4px;background:#faf9fb}
.home-search-image img{width:100%;height:100%;padding:3px;object-fit:contain}
.home-search-image-placeholder{width:24px;height:12px;border:3px solid #8d7aa0;border-radius:50% 38% 25% 30%;transform:rotate(-15deg)}
.home-search-copy{min-width:0;display:grid;gap:3px}
.home-search-copy strong,.home-search-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.home-search-copy strong{font-size:12px}
.home-search-copy small{color:#746d7b;font-size:10px}
.home-search-result>b{color:#5212a2;font-size:11px;white-space:nowrap}
@media(max-width:900px){.home-search-results{right:16px;left:16px;width:auto;top:calc(100% - 8px)}}

.hero-image{display:block;width:100%;height:100%;object-fit:contain;object-position:top right}.feature-image{align-self:flex-end;width:55%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.feature-image.dunki-image{width:49%;height:92%;margin-right:2%}
.news-slide img.dunki-news-image{max-width:100%;max-height:100%;padding:16px;background:#fff;object-fit:contain;object-position:center}

.hero{position:relative;display:block;min-height:510px;border-radius:8px;overflow:hidden}.hero-copy{position:relative;z-index:2;width:48%}.hero-visual{position:absolute;top:0;right:0;z-index:0;width:52%;height:100%;min-height:0}.feature-grid{position:relative;z-index:3}.feature-card,.product-card,.article-card,.newsletter{border-radius:8px;overflow:hidden}
.dark-card .feature-image{mix-blend-mode:normal;background:#fff;border-radius:6px}

.hero-visual{height:auto;aspect-ratio:16 / 9}
@media (max-width:900px){.hero-visual{height:220px;aspect-ratio:auto}}
@media (max-width:900px){.hero{display:grid;grid-template-columns:1fr;min-height:0;overflow:visible}.hero-copy{width:auto}.hero-visual{position:relative;top:auto;right:auto;width:auto;height:220px;min-height:220px}.feature-grid{z-index:auto}}

.hero-visual{top:50%;right:28px;width:44%;height:auto;min-height:0;aspect-ratio:auto;transform:translateY(-50%);background:transparent;border-radius:8px;overflow:hidden}.hero-image{width:100%;height:auto;object-fit:initial;object-position:initial}
@media (max-width:900px){.hero-visual{top:auto;right:auto;width:auto;height:220px;min-height:220px;transform:none;border-radius:8px}.hero-image{width:100%;height:100%;object-fit:cover;object-position:center}}

.hero-stage{margin-bottom:27px;background:#f2edf6;border-radius:8px;overflow:hidden}.hero{background:transparent;border-radius:0;overflow:visible}.hero-stage .feature-grid{padding-bottom:0}.hero-visual{top:46px;right:28px;width:50%;transform:none}
@media (max-width:900px){.hero-visual{top:auto;right:auto;width:auto;transform:none}}

.article-image{position:absolute;right:0;bottom:0;width:50%;height:100%;border-radius:8px;object-fit:cover}

.hero-buttons .button,.feature-card .button{gap:0;font-size:12px}

.brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0 0 27px}.brand-card{display:block;min-height:128px;border:1px solid var(--purple);border-radius:8px;background-image:var(--brand-image);background-position:center;background-repeat:no-repeat;background-size:contain;transition:transform .2s ease}.brand-card:hover{transform:translateY(-2px)}.brand-nike{--brand-image:url("images/nike.png")}.brand-jordan{--brand-image:url("images/jordan.png")}.brand-adidas{--brand-image:url("images/adidas.png");background-size:55%}.brand-anta{--brand-image:url("images/anta.png");background-size:75%}.brand-li-ning{--brand-image:url("images/li ning.svg");background-size:80%}.brand-new-balance{--brand-image:url("images/new balance.webp");background-size:75%}.brand-puma{--brand-image:url("images/puma.webp");background-size:75%}.brand-reebok{--brand-image:url("images/reebok.png");background-size:75%}@media (max-width:700px){.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.brand-card{min-height:106px}}

.product-detail{padding:22px 0 42px}.product-breadcrumb{margin-bottom:24px;color:#7c7584;font-size:11px}.product-breadcrumb span{padding:0 8px;color:var(--purple)}.back-button{display:inline-flex;align-items:center;gap:8px;margin:0 0 22px;padding:0;border:0;background:transparent;color:var(--ink);font-size:12px;font-weight:800;text-transform:uppercase;cursor:pointer}.product-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:50px;align-items:start}.product-gallery{position:sticky;top:84px;align-self:start;display:grid;grid-template-columns:82px minmax(0,1fr);gap:16px}.product-thumbnails{display:grid;grid-auto-rows:82px;gap:11px;max-height:460px;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;scrollbar-width:thin;scrollbar-color:#b499ce #f1ecf5}.product-thumbnails::-webkit-scrollbar{width:5px}.product-thumbnails::-webkit-scrollbar-track{background:#f1ecf5;border-radius:4px}.product-thumbnails::-webkit-scrollbar-thumb{background:#b499ce;border-radius:4px}.product-thumbnails::-webkit-scrollbar-thumb:hover{background:var(--purple)}.detail-main-image{position:relative;display:flex;align-items:center;justify-content:center;min-height:440px;height:440px;max-height:440px;overflow:hidden;padding:16px;box-sizing:border-box;border:1px solid var(--line);border-radius:10px;background:#fff;color:#817988;text-align:center;font-size:13px;line-height:1.5}.detail-shoe-placeholder{width:62%;height:23%;margin-top:90px;border:10px solid var(--shoe-color);border-radius:55% 38% 26% 31%;background:#fff;box-shadow:inset -45px -16px rgba(0,0,0,.1);transform:rotate(-14deg)}.detail-image-index{position:absolute;bottom:14px;left:14px;margin:0;padding:7px 10px;border:1px solid var(--line);border-radius:5px;background:rgba(255,255,255,.92);color:var(--purple);font-size:10px;font-weight:800;box-shadow:0 2px 8px rgba(0,0,0,.06)}.product-summary{padding:10px 0}.product-chip{display:inline-block;margin-bottom:14px;padding:4px 7px;border:1px solid #b188de;border-radius:3px;color:var(--purple);font-size:9px;font-weight:800;text-transform:uppercase}.product-summary h1{max-width:380px;margin:0;color:var(--ink);font-size:32px;line-height:1.05}.product-sku{margin:14px 0 21px;color:#817988;font-size:11px}.detail-price{margin:0 0 20px;color:var(--purple);font-size:25px;font-weight:900}.detail-label{margin:0 0 8px;font-size:11px;font-weight:800}.detail-colors{display:flex;gap:10px;margin-bottom:22px}.color-option{width:27px;height:27px;border:0;border-radius:50%;background:#12111a;cursor:pointer}.color-option:nth-child(3){background:#c3c0c7}.color-option.is-selected{background:var(--color);outline:2px solid var(--purple);outline-offset:3px}.size-heading{display:flex;align-items:center;justify-content:space-between}.size-heading span{color:var(--purple);font-size:10px}.size-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:0 0 20px}.size-option{min-height:49px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font-size:11px;font-weight:700;cursor:pointer}.size-option small{display:block;margin-top:3px;color:#89828f;font-size:8px;font-weight:400}.size-option.is-selected{border:2px solid var(--purple);color:var(--purple)}.detail-add-button{width:100%;min-height:48px;border:0;border-radius:4px;background:var(--purple);color:#fff;text-transform:uppercase;font-size:11px;font-weight:800;cursor:pointer}.detail-add-button:disabled{background:#a387c4;cursor:not-allowed}.detail-add-button.is-disabled{background:#a387c4;cursor:pointer}.detail-description{max-width:690px;margin:28px 0 22px;padding-bottom:22px;border-bottom:1px solid var(--line)}.detail-description h2{margin:0 0 12px;text-transform:uppercase;font-size:14px}.detail-description p{margin:0;color:#2c2633;font-size:16px;line-height:1.7}.detail-description strong{font-weight:800;color:var(--ink)}
.detail-recommendations{display:grid;gap:36px;margin-top:36px;padding-top:10px}
.detail-recommendation{min-width:0}
.detail-recommendation .section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.detail-recommendation .section-heading h2{margin:0;color:var(--ink);font-size:16px;font-weight:800;letter-spacing:.2px;text-transform:uppercase}
.recommendation-grid{display:block;overflow:hidden;padding:4px 2px;margin:-4px -2px 0}
.carousel-track .catalog-product-card{flex:0 0 calc((100% - 50px) / 6);min-width:0;box-sizing:border-box}
.recommendation-button{display:inline-grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid var(--line);border-radius:50%;background:#f4eef9;color:var(--purple);font-size:20px;line-height:1;cursor:pointer;transition:background .15s,border-color .15s,opacity .15s}
.recommendation-button:hover:not(:disabled){background:#e2d2f2;border-color:#c9b1e4}
.recommendation-button:disabled{opacity:.35;cursor:default}
@media (max-width:900px){.carousel-track .catalog-product-card{flex-basis:calc((100% - 20px) / 3)}}
@media (max-width:560px){.detail-recommendations{margin-top:24px;gap:24px}.detail-recommendation .section-heading h2{font-size:14px}.carousel-track .product-card,.carousel-track .catalog-product-card{flex-basis:calc((100% - 10px) / 2)}}
.model-heading{display:flex;align-items:center;justify-content:space-between;margin-top:14px;margin-bottom:8px}.selected-model-badge{color:var(--purple);font-size:11px;font-weight:700}.model-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,1fr));max-height:165px;overflow-y:auto;gap:8px;margin-bottom:18px;padding:6px;border:1px solid var(--line);border-radius:6px;background:#faf9fb}.model-option{position:relative;display:flex;flex-direction:column;align-items:center;padding:4px;border:1.5px solid var(--line);border-radius:6px;background:#fff;cursor:pointer;transition:all .15s}.model-option:hover{border-color:#b188de}.model-option img{width:100%;height:52px;object-fit:cover;border-radius:4px}.model-option span{display:block;margin-top:2px;font-size:9px;font-weight:800;color:#666}.model-option.is-selected{border:2px solid var(--purple);box-shadow:0 0 0 2px rgba(177,136,222,.35);background:#f3eafd}.model-option.is-selected span{color:var(--purple)}
@media (max-width:900px){.product-detail{padding-left:16px;padding-right:16px}.product-layout{grid-template-columns:1fr;gap:25px}.product-gallery{position:static}.product-thumbnails{max-height:380px}.detail-main-image{min-height:360px;height:360px;max-height:360px;padding:12px}.product-summary h1{font-size:28px}.detail-description{max-width:none}}@media (max-width:560px){.product-gallery{grid-template-columns:1fr;position:static}.product-thumbnails{grid-auto-flow:column;grid-auto-columns:58px;grid-auto-rows:58px;max-height:none;overflow-x:auto;overflow-y:hidden;padding-right:0;padding-bottom:6px;gap:8px}.detail-main-image{width:100%;aspect-ratio:1/1;height:auto;min-height:auto;max-height:none;padding:14px;border-radius:10px}.size-grid{grid-template-columns:repeat(3,1fr);gap:6px}.product-summary h1{font-size:24px;line-height:1.15;overflow-wrap:break-word;word-break:break-word}.product-breadcrumb{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

[hidden]{display:none!important}

.site-header{position:sticky;top:0;z-index:20;will-change:transform;transition:transform .45s cubic-bezier(.22,.61,.36,1)}.site-header.is-hidden{transform:translateY(-100%)}

.product-grid{display:block;overflow:hidden}.carousel-track{display:flex;gap:10px;transition:transform .45s cubic-bezier(0.25, 1, 0.5, 1);will-change:transform}.carousel-track .product-card{flex:0 0 calc((100% - 50px) / 6)}.carousel-button:disabled{cursor:default;opacity:.4}@media (max-width:900px){.carousel-track .product-card{flex-basis:calc((100% - 20px) / 3)}.carousel-track .product-card:nth-child(n+7){display:block}}@media (max-width:560px){.carousel-track{gap:8px!important}.carousel-track .product-card,.carousel-track .catalog-product-card{flex:0 0 calc((100% - 8px) / 2)!important;flex-basis:calc((100% - 8px) / 2)!important;min-width:0!important}}

.reveal-on-scroll{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal-on-scroll{opacity:1;transform:none;transition:none}}

.product-photo{box-sizing:border-box;display:block;width:100%;height:100%;padding:0;margin:0;object-fit:contain;object-position:center}

/* Basketball catalog */
.catalog-page{background:#f8f6fa}.catalog-page .main-nav .is-current{border-bottom:2px solid #fff;padding-bottom:6px}.basketball-catalog{padding-bottom:55px}.catalog-breadcrumb{padding:20px 0;color:#8a8390;font-size:11px}.catalog-breadcrumb span{padding:0 9px;color:var(--purple)}.catalog-hero{position:relative;display:flex;align-items:center;min-height:245px;margin-bottom:22px;padding:38px 48px;overflow:hidden;border-radius:8px;background:linear-gradient(115deg,#eee7f4 0%,#f7f4f9 62%,#dfd0ef 100%)}.catalog-hero h1{margin:0;font-size:43px;line-height:.95;letter-spacing:-1px}.catalog-hero h1 span{color:var(--purple)}.catalog-hero>div>p:last-child{max-width:410px;margin:18px 0 0;color:#5e5764;line-height:1.5}.catalog-hero-mark{position:absolute;right:45px;color:rgba(82,18,162,.1);font-size:142px;font-weight:900;font-style:italic;letter-spacing:-15px}.catalog-hero-mark span{color:rgba(82,18,162,.18)}.catalog-toolbar{margin-bottom:24px;padding:18px 24px;border:1px solid var(--line);border-radius:12px;background:#fff}.catalog-filter-head{display:flex;justify-content:space-between;margin-bottom:16px;text-transform:uppercase;color:var(--purple);font-size:12px}.catalog-filter-head button{border:0;background:none;color:#8a8390;font-size:10px;text-decoration:underline;cursor:pointer}.catalog-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;transition:grid-template-columns .35s cubic-bezier(.2,.8,.2,1)}.catalog-filter-grid.has-color{grid-template-columns:repeat(4,minmax(0,1fr))}.catalog-filter-color{display:none!important;opacity:0;transform:translateY(-8px) scale(.97);transform-origin:top center}.catalog-filter-color.is-visible{display:grid!important;animation:colorFilterAppear .32s cubic-bezier(.16,1,.3,1) forwards}.catalog-filter-color.is-hiding{display:grid!important;pointer-events:none;animation:colorFilterDisappear .24s cubic-bezier(.4,0,.2,1) forwards}@keyframes colorFilterAppear{0%{opacity:0;transform:translateY(-10px) scale(.96)}100%{opacity:1;transform:translateY(0) scale(1)}}@keyframes colorFilterDisappear{0%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-10px) scale(.96)}}.catalog-filter-grid label{display:grid;gap:7px;color:#696270;font-size:10px;font-weight:700;text-transform:uppercase}.catalog-filter-grid select{height:42px;padding:0 12px;border:1px solid var(--line);border-radius:5px;background:#faf9fb;color:var(--ink);outline:none}.catalog-filter-grid select:focus{border-color:var(--purple)}.catalog-results-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:14px}.catalog-results-head h2{margin:0;color:var(--purple);font-size:18px;text-transform:uppercase}.catalog-results-head p{margin:0;color:#85808a;font-size:11px}.catalog-products{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.catalog-product-card{display:flex;flex-direction:column;min-width:0;width:100%;padding:9px;border:1px solid var(--line);border-radius:10px;background:#fff;box-sizing:border-box;overflow:hidden;transition:transform .2s,border-color .2s,box-shadow .2s}.catalog-product-card:hover{transform:translateY(-3px);border-color:#a878d6;box-shadow:0 8px 20px rgba(82,18,162,.08)}.catalog-product-image{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1/1;height:auto;border-radius:8px;background:#f6f5f8;color:#aaa3af;font-size:11px;overflow:hidden;padding:8px;box-sizing:border-box;flex-shrink:0}.catalog-product-image img{display:block;box-sizing:border-box;width:100%;height:100%;max-width:100%;max-height:100%;padding:0;margin:0;object-fit:contain;object-position:center}.catalog-product-image button{position:absolute;top:6px;right:6px;border:0;background:rgba(255,255,255,.85);color:#8d8493;font-size:16px;cursor:pointer}.catalog-product-meta{margin:6px 0 2px;color:var(--purple);font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;min-width:0;line-height:1.2}.catalog-product-card h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;text-overflow:ellipsis;margin:4px 0 8px;font-size:11px;font-weight:700;line-height:1.35;min-height:2.7em;max-height:2.7em;height:auto;overflow-wrap:anywhere;word-break:break-word;color:var(--ink);min-width:0}.catalog-product-bottom{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:auto;width:100%;min-width:0}.catalog-product-bottom strong{font-size:12.5px;font-weight:900;color:var(--ink);white-space:nowrap}.catalog-product-bottom span{display:inline-flex;align-items:center;gap:4px;color:#8b8490;font-size:8.5px;max-width:55%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.catalog-product-bottom i{width:9px;height:9px;flex-shrink:0;border:1px solid #ddd;border-radius:50%;background:var(--swatch)}.catalog-empty{grid-column:1/-1;padding:70px 20px;border:1px dashed #d4cbdc;border-radius:8px;background:#fff;text-align:center}.catalog-empty strong{color:var(--purple);font-size:17px}.catalog-empty p{color:#77707c}.catalog-loader{grid-column:1/-1;width:auto;height:auto;margin:35px auto 45px;border:0;border-radius:0;animation:none;text-align:center}@keyframes catalog-spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.basketball-catalog{padding-left:16px;padding-right:16px}.catalog-hero{padding:32px}.catalog-hero-mark{right:20px;font-size:100px}.catalog-filter-grid,.catalog-filter-grid.has-color{grid-template-columns:1fr 1fr}.catalog-products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.catalog-hero{min-height:190px;padding:24px 18px}.catalog-hero h1{font-size:30px;overflow-wrap:break-word;word-break:break-word}.catalog-hero-mark{display:none}.catalog-toolbar{padding:14px 16px;margin-bottom:18px}.catalog-filter-grid,.catalog-filter-grid.has-color{grid-template-columns:1fr;gap:10px}.catalog-filter-grid select{height:44px;font-size:14px}.catalog-results-head{margin-bottom:10px}.catalog-products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.catalog-product-card{padding:7px;border-radius:8px}.catalog-product-image{width:100%;aspect-ratio:1/1;height:auto;padding:6px;border-radius:6px}.catalog-product-image img{padding:0}.catalog-product-meta{margin:5px 0 2px;font-size:8px}.catalog-product-card h3{margin:3px 0 6px;font-size:10.5px;line-height:1.3;min-height:2.6em;max-height:2.6em}.catalog-product-bottom{align-items:flex-start;flex-direction:column;gap:2px}.catalog-product-bottom strong{font-size:11.5px}.catalog-product-bottom span{max-width:100%;font-size:8px}.catalog-page .newsletter{margin-left:16px;margin-right:16px}}

.catalog-toolbar{padding:18px 24px;border-color:#dfd5e8;border-radius:12px;background:linear-gradient(135deg,#fff,#faf7fc);box-shadow:0 10px 28px rgba(54,18,86,.07)}
.catalog-filter-head{align-items:center;margin-bottom:16px;text-transform:none}
.catalog-filter-head div{display:grid;gap:4px}
.catalog-filter-head strong{font-size:14px;text-transform:uppercase}
.catalog-filter-head span{color:#948d9a;font-size:10px}
.catalog-filter-head button{padding:7px 11px;border:1px solid #d6c5e7;border-radius:20px;background:#fff;color:var(--purple);font-weight:700;text-decoration:none}
.catalog-filter-head button:hover{background:var(--purple);color:#fff}
.catalog-filter-grid label span{padding-left:2px}
.catalog-filter-grid select{height:46px;border-color:#ded6e5;border-radius:8px;background-color:#fff;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.catalog-filter-grid select:hover,.catalog-filter-grid select:focus{border-color:#9b69cb;box-shadow:0 0 0 3px rgba(82,18,162,.08)}
.catalog-product-card{cursor:pointer}
.catalog-product-card:focus{outline:0;transform:translateY(-3px);border-color:#a878d6}
.catalog-product-image .product-shape{width:91px;height:42px}
.catalog-product-card.jersey .product-shape,.detail-main-image.jersey .product-shape{width:55px;height:83px;border-radius:5px 5px 11px 11px;transform:none;background:var(--jersey-color,#f2b319);border-color:var(--jersey-color,#f2b319)}
.product-breadcrumb button{padding:0;border:0;background:none;color:inherit;cursor:pointer}
.sizes-empty{grid-column:1/-1;color:#817988;font-size:11px}
.detail-thumbnail{position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0;background:#fff;border:1px solid var(--line);border-radius:8px;box-sizing:border-box;aspect-ratio:1/1;cursor:pointer;transition:border-color .15s,box-shadow .15s}.detail-thumbnail:hover{border-color:#b188de}.detail-thumbnail.is-selected{border:2px solid var(--purple);box-shadow:0 0 0 2px rgba(177,136,222,.25);color:var(--purple)}.detail-thumb-badge{position:absolute;bottom:2px;right:2px;padding:1px 4px;background:rgba(45,16,68,.75);color:#fff;border-radius:3px;font-size:8px;font-weight:800;line-height:1.2;pointer-events:none}.detail-thumbnail.is-selected .detail-thumb-badge{background:var(--purple)}.detail-thumbnail img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;padding:0;object-fit:contain;object-position:center}.detail-main-photo{display:block;width:100%;height:100%;max-width:100%;max-height:100%;padding:0;margin:0;object-fit:contain;object-position:center;background:transparent;box-sizing:border-box}

/* Home news carousel and eight primary catalog entries */
.news-carousel{position:relative;margin:22px 0 24px;overflow:hidden;border-radius:10px;background:#f0e8f5}.news-track{display:flex;transition:transform .5s cubic-bezier(.22,.61,.36,1)}.news-slide{position:relative;display:grid;grid-template-columns:48% 52%;flex:0 0 100%;min-height:390px}.news-slide img{width:100%;height:100%;object-fit:cover}.news-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:48px}.news-copy h1,.news-copy h2{margin:0;font-size:45px;line-height:.98;letter-spacing:-1.4px}.news-copy h1 span,.news-copy h2 span{color:var(--purple)}.news-copy>p:not(.eyebrow){margin:18px 0 22px;color:#5d5663;line-height:1.5}.news-arrow{position:absolute;top:50%;z-index:2;display:grid;place-items:center;width:38px;height:38px;border:1px solid #d9cce5;border-radius:50%;background:rgba(255,255,255,.9);color:var(--purple);font-size:26px;cursor:pointer;transform:translateY(-50%)}.news-prev{left:14px}.news-next{right:14px}.news-dots{position:absolute;bottom:14px;left:50%;z-index:2;display:flex;gap:7px;transform:translateX(-50%)}.news-dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#fff;cursor:pointer}.news-dot.is-active{width:24px;border-radius:8px;background:var(--purple)}.category-section{padding-bottom:28px}.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.category-card{position:relative;display:grid;grid-template-columns:104px 1fr;align-items:center;min-height:185px;padding:14px 0 14px 14px;overflow:hidden;border:1px solid #ece7f0;border-radius:10px;background:linear-gradient(145deg,#fbf9fc,#f2edf6);transition:transform .2s,border-color .2s;text-decoration:none}.category-card:hover{transform:translateY(-3px);border-color:#a878d6}.category-card img{align-self:center;justify-self:center;width:100%;height:110px;object-fit:contain;mix-blend-mode:multiply}.category-card span:not(.category-ball){position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 12px;gap:6px}.category-card strong{text-transform:uppercase;font-size:14px;line-height:1.15;text-align:center}.category-card small{color:#6d6672;font-size:10px;text-align:center}.category-card b{display:none!important}.category-ball{align-self:center;color:#ce641e;font-size:85px;line-height:1;text-shadow:inset 0 0 #000}.legacy-promo{display:none}
@media(max-width:900px){.news-slide{min-height:330px}.news-copy{padding:34px}.news-copy h1,.news-copy h2{font-size:35px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.news-carousel{margin:14px 16px 18px}.news-slide{display:block;min-height:430px}.news-slide img{position:absolute;inset:auto 0 0;height:47%;opacity:.92}.news-copy{position:relative;z-index:1;justify-content:flex-start;padding:35px 28px}.news-copy h1,.news-copy h2{font-size:31px}.news-arrow{top:auto;bottom:12px}.category-section{padding-left:16px;padding-right:16px}.category-grid{gap:9px}.category-card{grid-template-columns:1fr;grid-template-rows:86px auto;min-height:168px;padding:12px;align-items:center}.category-card img,.category-ball{grid-column:1/-1;width:100%;height:82px;justify-self:center}.category-card span:not(.category-ball){padding:0 4px}.category-card strong{font-size:11px;text-align:center}.category-card small{font-size:9px;text-align:center}}

/* Account */
[hidden]{display:none!important}.account-page{min-height:100vh;background:#f7f4f9}.account-page .site-header{position:relative}.account-main{min-height:calc(100vh - 150px);padding:48px 0 65px}.is-current-account{padding:7px;border:1px solid rgba(255,255,255,.65);border-radius:50%}.auth-shell{display:grid;grid-template-columns:minmax(0,1fr) 470px;min-height:610px;overflow:hidden;border-radius:14px;background:#fff;box-shadow:0 22px 65px rgba(49,12,83,.12)}.auth-intro{display:flex;flex-direction:column;justify-content:center;padding:65px;background:linear-gradient(135deg,#260652,#5212a2 58%,#7432b7);color:#fff}.auth-intro .eyebrow{color:#d9c5ef}.auth-intro h1{margin:0;font-size:58px;line-height:.92;letter-spacing:-2px}.auth-intro h1 span{color:#d9b7ff}.auth-intro>p:last-child{max-width:400px;margin:24px 0 0;color:#e8ddf2;font-size:14px;line-height:1.6}.auth-card{align-self:center;margin:42px;padding:4px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:32px;border-bottom:1px solid var(--line)}.auth-tabs button{padding:13px;border:0;border-bottom:2px solid transparent;background:none;color:#918a96;font-size:11px;font-weight:800;text-transform:uppercase;cursor:pointer}.auth-tabs button.is-active{border-color:var(--purple);color:var(--purple)}.account-form{display:grid;gap:16px}.account-form h2{margin:0 0 4px;color:var(--purple);font-size:24px}.account-form>p{margin:0;color:#746d79;line-height:1.5}.account-form label{display:grid;gap:7px}.account-form label span{color:#655e6a;font-size:10px;font-weight:800;text-transform:uppercase}.account-form input{width:100%;height:45px;padding:0 13px;border:1px solid #ddd5e3;border-radius:6px;background:#fff;outline:none}.account-form input:focus{border-color:#8e54c5;box-shadow:0 0 0 3px rgba(82,18,162,.08)}.account-form input:disabled{background:#f1eef3;color:#827b87}.account-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.account-submit{width:100%;margin-top:4px}.forgot-link,.auth-back{justify-self:start;padding:0;border:0;background:none;color:var(--purple);font-size:11px;font-weight:700;cursor:pointer}.auth-back{margin-bottom:4px}.account-message{min-height:18px;margin:17px 0 0;color:var(--purple);font-size:11px;line-height:1.4}.profile-shell{min-height:600px}.profile-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:28px;padding:0 4px}.profile-heading .eyebrow{color:var(--purple)}.profile-heading h1{margin:0;font-size:34px}.profile-heading h1 span{color:var(--purple)}.profile-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:22px}.profile-card,.orders-section{padding:25px;border:1px solid #e4dce9;border-radius:11px;background:#fff;box-shadow:0 10px 30px rgba(45,16,68,.05)}.profile-card h2,.orders-heading h2{margin:0;color:var(--purple);font-size:16px;text-transform:uppercase}.profile-card h2{margin-bottom:22px}.orders-column{display:grid;gap:22px}.orders-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.orders-heading span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#eee6f5;color:var(--purple);font-size:11px;font-weight:800}.orders-list{display:grid;gap:14px}.order-card{display:grid;gap:12px;padding:16px;border:1px solid #ebe5ef;border-radius:10px;background:#fcfbfd;transition:box-shadow .2s}.order-card:hover{box-shadow:0 4px 16px rgba(45,16,68,.06)}.order-card-header{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;align-items:center;gap:15px}.order-card-header>div{display:grid;gap:4px}.order-card-header small{color:#99919e;font-size:9px;text-transform:uppercase;font-weight:700}.order-card-header strong{font-size:13px;color:#240c38}.order-card-total{font-size:13px;font-weight:800;color:var(--purple)}.order-status{padding:6px 12px;border-radius:20px;font-size:10px;font-weight:700;text-transform:uppercase;text-align:center;white-space:nowrap}.status-pending{background:#fff8e6;color:#b7791f;border:1px solid #fde68a}.status-awaiting_payment{background:#fff3e0;color:#e65100;border:1px solid #ffcc80}.status-paid{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.status-processing{background:#efe8f5;color:var(--purple);border:1px solid #d8b4fe}.status-shipped{background:#e7eff9;color:#2563eb;border:1px solid #bfdbfe}.status-delivered{background:#e9f5ed;color:#16a34a;border:1px solid #bbf7d0}.status-completed{background:#e9f5ed;color:#15803d;border:1px solid #86efac}.status-cancelled{background:#fdf2f2;color:#dc2626;border:1px solid #fecaca}.order-card-delivery{padding:9px 12px;background:#f6f2f9;border-radius:6px;font-size:11px;color:#554e5b;line-height:1.4}.order-card-delivery b{color:var(--purple)}.order-card-items{display:grid;gap:8px;padding-top:8px;border-top:1px solid #eee7f3}.order-item-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;font-size:11px}.order-item-thumb{width:44px;height:44px;border-radius:6px;object-fit:cover;background:#fff;border:1px solid #e7dfed}.order-item-placeholder{display:grid;place-items:center;background:#f4eef8;font-size:20px;user-select:none}.order-item-info{display:grid;gap:2px;overflow:hidden}.order-item-info strong{font-size:12px;color:#260c38;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-item-info span{color:#837b88;font-size:10px}.order-item-sku{color:#9b92a2;font-size:9px}.order-item-price{font-size:12px;font-weight:700;color:#3b3342;white-space:nowrap}.orders-empty{padding:30px;border:1px dashed #d9cfe0;border-radius:8px;color:#8a828f;text-align:center;font-size:11px}.account-footer{background:#fff}
.account-form input:invalid:not(:placeholder-shown){border-color:#c64a55}.field-hint,.password-rules{color:#918995;font-size:9px;line-height:1.4}.password-rules{margin:-8px 0 0!important}.password-strength{display:grid;gap:7px;margin-top:-7px}.password-strength-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.password-strength-bar i{height:4px;border-radius:4px;background:#ddd7e1;transition:background .2s}.password-strength strong{color:#8b838f;font-size:10px}.password-strength[data-level="weak"] .password-strength-bar i:first-child{background:#d54b55}.password-strength[data-level="weak"] strong{color:#bc3541}.password-strength[data-level="medium"] .password-strength-bar i:nth-child(-n+2){background:#e2a52a}.password-strength[data-level="medium"] strong{color:#ad7410}.password-strength[data-level="strong"] .password-strength-bar i{background:#36a260}.password-strength[data-level="strong"] strong{color:#248248}
@media(max-width:900px){.account-main{padding:24px 16px 45px}.auth-shell{grid-template-columns:1fr}.auth-intro{min-height:250px;padding:38px}.auth-intro h1{font-size:43px}.auth-card{width:min(100% - 40px,480px);margin:35px auto}.profile-layout{grid-template-columns:1fr}.profile-card{max-width:none}.order-card{grid-template-columns:1fr 1fr}.order-status{justify-self:start}}
@media(max-width:560px){.account-main{padding-top:14px}.auth-shell{border-radius:9px}.auth-intro{min-height:210px;padding:30px 24px}.auth-intro h1{font-size:36px}.auth-card{width:auto;margin:28px 20px}.account-form-row{grid-template-columns:1fr}.profile-heading{align-items:flex-start;gap:18px}.profile-heading h1{font-size:27px}.profile-heading .button{min-height:35px;padding:0 14px}.profile-card,.orders-section{padding:18px}.order-card{grid-template-columns:1fr}.account-page .header-actions a:last-child{display:none}}

/* Order Stepper & Enhanced Live Status in Account */
.order-status-banner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 8px;
  background: #fbf8fe;
  border: 1px solid #ebdff5;
}
.status-banner-processing {
  background: #faf5ff;
  border-color: #d8b4fe;
}
.status-banner-shipped {
  background: #f0f6ff;
  border-color: #bfdbfe;
}
.status-banner-delivered {
  background: #f0fdf4;
  border-color: #bbf7d0;
}
.status-banner-completed {
  background: #f0fdf4;
  border-color: #86efac;
}
.status-banner-cancelled {
  background: #fef2f2;
  border-color: #fecaca;
}
.status-banner-icon {
  font-size: 22px;
  line-height: 1;
}
.status-banner-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.status-banner-text strong {
  font-size: 12px;
  color: var(--ink);
}
.status-banner-text p {
  margin: 0;
  font-size: 11px;
  color: #6c6374;
  line-height: 1.4;
}

.order-stepper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 8px 6px;
  position: relative;
}
.stepper-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  position: relative;
  z-index: 2;
  flex: 0 0 auto;
}
.stepper-circle {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 2px solid #ddd6e4;
  background: #fff;
  color: #928a99;
  font-size: 11px;
  font-weight: 800;
  transition: all 0.25s ease;
}
.stepper-name {
  font-size: 10px;
  font-weight: 700;
  color: #8c8393;
  text-transform: uppercase;
}
.stepper-step.is-done .stepper-circle {
  border-color: #16a34a;
  background: #16a34a;
  color: #fff;
}
.stepper-step.is-done .stepper-name {
  color: #16a34a;
}
.stepper-step.is-active .stepper-circle {
  border-color: var(--purple);
  background: var(--purple);
  color: #fff;
  box-shadow: 0 0 0 4px rgba(82, 18, 162, 0.16);
  animation: pulse-step 2s infinite ease-in-out;
}
.stepper-step.is-active .stepper-name {
  color: var(--purple);
  font-weight: 800;
}
.stepper-line {
  flex: 1;
  height: 3px;
  background: #ebe5f0;
  margin: -18px 4px 0;
  position: relative;
  z-index: 1;
  transition: background 0.25s ease;
}
.stepper-line.is-done {
  background: #16a34a;
}
@keyframes pulse-step {
  0%, 100% { box-shadow: 0 0 0 4px rgba(82, 18, 162, 0.16); }
  50% { box-shadow: 0 0 0 8px rgba(82, 18, 162, 0.28); }
}

.live-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 10px;
  font-weight: 800;
  color: #16a34a;
  background: #f0fdf4;
  padding: 4px 10px;
  border-radius: 12px;
  border: 1px solid #bbf7d0;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}
.live-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #16a34a;
  animation: live-blink 1.5s infinite;
}
@keyframes live-blink {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.25; transform: scale(0.8); }
}

/* Account session resolution and header counters */
.account-page.is-auth-pending .auth-shell,.account-page.is-auth-pending .profile-shell{visibility:hidden}
.favorite-count{position:absolute;top:-6px;right:-8px;display:flex;align-items:center;justify-content:center;min-width:14px;height:14px;padding:0 3px;border-radius:999px;background:#fff;color:var(--purple);font-size:9px;font-weight:800;line-height:1}

/* Favorites */
.detail-actions{display:grid;gap:9px}.detail-favorite-button{width:100%;min-height:45px;border:1px solid var(--purple);border-radius:4px;background:#fff;color:var(--purple);font-size:11px;font-weight:800;text-transform:uppercase;cursor:pointer}.detail-favorite-button:disabled{border-color:#c8b9d6;color:#aa9db5;cursor:not-allowed}.size-option.is-unavailable{border-style:dashed;color:#8c8490;background:#f7f5f8}.size-option.is-unavailable.is-selected{border:2px dashed var(--purple);color:var(--purple)}.favorites-page{min-height:100vh;background:#f8f6fa}.favorites-page .site-header{position:relative}.favorites-main{min-height:calc(100vh - 145px);padding:44px 0 65px}.favorites-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:25px}.favorites-heading .eyebrow{margin-bottom:8px;color:var(--purple)}.favorites-heading h1{margin:0;color:var(--purple);font-size:38px}.favorites-heading>span{color:#837c88;font-size:11px}.favorites-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.favorite-card{display:grid;grid-template-rows:280px 1fr auto;overflow:hidden;border:1px solid #e5deea;border-radius:10px;background:#fff}.favorite-card-image{display:grid;min-width:0;min-height:0;place-items:center;padding:12px;background:#fff;color:#9a929f;font-size:11px}.favorite-card-image img{display:block;box-sizing:border-box;width:100%;height:100%;min-width:0;min-height:0;padding:0;object-fit:contain;object-position:center}.favorite-card-copy{padding:18px}.favorite-card-copy>small{color:var(--purple);font-size:9px;font-weight:800;text-transform:uppercase}.favorite-card-copy h2{min-height:2.6em;margin:8px 0;font-size:14px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere;word-break:break-word}.favorite-card-copy>p{margin:0 0 15px;color:var(--purple);font-size:15px;font-weight:900}.favorite-size{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding:9px 11px;border-radius:6px;background:#f2edf6}.favorite-size span{color:#807987;font-size:10px}.favorite-size strong{color:var(--purple)}.favorite-available,.favorite-unavailable{font-size:9px;text-transform:uppercase}.favorite-available{color:#288247}.favorite-unavailable{color:#a55c24}.favorite-card-actions{display:grid;grid-template-columns:1fr auto;gap:9px;padding:0 18px 18px}.favorite-card-actions .button{min-height:38px;padding:0 12px}.favorite-card-actions button{border:0;background:none;color:#958c9a;font-size:10px;text-decoration:underline;cursor:pointer}.favorites-empty{grid-column:1/-1;padding:90px 20px;text-align:center}.favorites-empty>span{color:var(--purple);font-size:55px}.favorites-empty h2{margin:12px 0 8px;color:var(--purple)}.favorites-empty p{margin:0 0 22px;color:#7b7480}.favorites-empty .button{min-width:180px}
@media(max-width:900px){.favorites-main{padding:30px 16px 50px}.favorites-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.favorites-heading h1{font-size:30px}.favorites-grid{grid-template-columns:1fr}.favorite-card{grid-template-rows:220px 1fr auto}.favorite-card-image{padding:10px}.favorites-page .header-actions a:last-child{display:none}}

/* Stable header actions and safe product images */
.header-actions>.icon-button{display:grid;place-items:center;width:34px;height:34px;padding:6px;border:1px solid transparent;border-radius:50%;flex:0 0 34px}.header-actions>.icon-button.is-current-account{padding:6px;border-color:rgba(255,255,255,.65)}.header-actions>.icon-button .header-icon{width:22px;height:22px;max-width:100%;max-height:100%}.product-visual,.catalog-product-image,.favorite-card-image{overflow:hidden;background:#f6f5f8;display:flex;align-items:center;justify-content:center}.product-photo,.catalog-product-image img,.favorite-card-image img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;padding:0;margin:0;object-fit:contain;object-position:center;box-sizing:border-box}.product-card,.catalog-product-card,.favorite-card{isolation:isolate}.product-card h3,.product-card>p,.catalog-product-meta,.catalog-product-card h3,.catalog-product-bottom,.favorite-card-copy,.favorite-card-actions{position:relative;z-index:2;background:#fff}

.favorite.is-favorite{color:#e32636}.detail-favorite-button.is-favorite{border-color:#e32636;color:#e32636}.detail-cart-control{display:grid;grid-template-columns:48px 1fr 48px;min-height:50px;overflow:hidden;border:1px solid #2f9a57;border-radius:5px;background:#fff}.detail-cart-control[hidden]{display:none}.detail-cart-control>button{border:0;background:#2f9a57;color:#fff;font-size:22px;font-weight:700;cursor:pointer}.detail-cart-control>button:hover{background:#267f48}.detail-cart-control label{display:flex;align-items:center;justify-content:center;gap:12px;color:#2f9a57;font-size:10px;font-weight:800;text-transform:uppercase}.detail-cart-control input{width:58px;height:34px;border:1px solid #b9d9c5;border-radius:4px;color:#20733f;text-align:center;font-weight:900;outline:none}.detail-cart-control input:focus{border-color:#2f9a57}

/* Cart */
.cart-page{min-height:100vh;background:#f8f6fa}.cart-main{min-height:calc(100vh - 145px);padding:44px 0 70px}.cart-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:26px}.cart-heading .eyebrow{margin-bottom:8px;color:var(--purple)}.cart-heading h1{margin:0;color:var(--purple);font-size:40px}.cart-heading>span{color:#837c88;font-size:11px}.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:22px;align-items:start}.cart-list{display:grid;gap:14px}.cart-item{display:grid;grid-template-columns:130px minmax(0,1fr) auto 130px;gap:22px;align-items:center;min-height:144px;padding:16px;border:1px solid var(--line);border-radius:10px;background:#fff}.cart-item-image{display:grid;place-items:center;height:110px;overflow:hidden;border-radius:7px;background:#fff;border:1px solid var(--line);color:#99919e;font-size:10px}.cart-item-image img{width:100%;height:100%;padding:8px;object-fit:contain}.cart-item-copy small{color:#8a8390;font-size:9px;text-transform:uppercase}.cart-item-copy h2{margin:8px 0 12px;font-size:15px;line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere;word-break:break-word}.cart-item-copy p{margin:0;color:#817a87;font-size:11px}.cart-item-copy p strong{color:var(--ink)}.cart-quantity{display:flex;align-items:center;gap:12px}.cart-quantity button{width:32px;height:32px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--purple);font-size:17px;cursor:pointer}.cart-quantity span{min-width:12px;text-align:center}.cart-item-price{text-align:right}.cart-item-price strong{display:block;color:var(--purple);font-size:15px}.cart-item-price button{margin-top:17px;border:0;background:none;color:#918a96;font-size:10px;text-decoration:underline;cursor:pointer}.cart-summary{padding:25px 23px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 6px 22px rgba(44,7,91,.04)}.cart-summary>div{display:flex;justify-content:space-between;gap:15px;margin-bottom:18px;font-size:11px}.cart-summary>div strong{text-align:right;font-size:11px}.cart-summary hr{margin:20px 0;border:0;border-top:1px solid var(--line)}.cart-summary .cart-total{align-items:center;margin-bottom:20px;font-size:16px;font-weight:900}.cart-summary .cart-total strong{color:var(--purple);font-size:20px}.cart-checkout{width:100%;height:51px;border:0;border-radius:5px;background:var(--purple);color:#fff;font-size:11px;font-weight:900;text-transform:uppercase;cursor:pointer}.cart-checkout:hover{background:var(--purple-dark)}.cart-empty{grid-column:1/-1;padding:90px 20px;text-align:center}.cart-empty>span{font-size:50px}.cart-empty h2{margin:14px 0 8px;color:var(--purple)}.cart-empty p{margin:0 0 24px;color:#7b7480}.cart-empty .button{min-width:190px}
@media(max-width:900px){.cart-main{padding:32px 16px 55px}.cart-layout{grid-template-columns:1fr}.cart-summary{order:-1}.cart-item{grid-template-columns:110px minmax(0,1fr) auto}.cart-item-price{grid-column:2}.cart-quantity{grid-column:3;grid-row:1/3}}
@media(max-width:600px){.cart-heading h1{font-size:31px}.cart-item{grid-template-columns:85px minmax(0,1fr);gap:14px}.cart-item-image{height:85px;aspect-ratio:1/1}.cart-quantity{grid-column:2;grid-row:auto}.cart-item-price{grid-column:2;text-align:left}.cart-item-price button{margin:0 0 0 14px}.cart-page .main-nav{display:none}}

/* Authentication feedback */
.account-message.is-error{color:#a65b65}

/* Checkout */
.checkout-page{min-height:100vh;background:#f8f6fa}.checkout-header-inner,.checkout-main{max-width:1180px;margin:0 auto}.checkout-header-inner{display:flex;align-items:center;justify-content:space-between;height:73px}.checkout-back{margin-left:auto;margin-right:24px;color:#fff;font-size:11px;font-weight:800;text-transform:uppercase}.checkout-main{min-height:calc(100vh - 73px);padding:44px 0 70px}.checkout-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:26px}.checkout-heading .eyebrow{margin-bottom:8px;color:var(--purple)}.checkout-heading h1{margin:0;color:var(--purple);font-size:40px}.checkout-heading>span{color:#837c88;font-size:11px}.checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:22px;align-items:start}.checkout-form-panel,.checkout-summary{border:1px solid var(--line);border-radius:10px;background:#fff}.checkout-form-panel{padding:28px}.checkout-section-heading{display:flex;align-items:start;justify-content:space-between;gap:24px;margin-bottom:18px}.checkout-section-heading>div{display:flex;align-items:center;gap:10px}.checkout-step{display:grid;place-items:center;width:28px;height:28px;margin:0;border-radius:50%;background:#eee6f5;color:var(--purple);font-size:10px;font-weight:900}.checkout-section-heading h2,.checkout-summary h2{margin:0;color:var(--purple);font-size:17px;text-transform:uppercase}.checkout-section-heading>p{max-width:270px;margin:0;color:#837b88;font-size:10px;line-height:1.45;text-align:right}.delivery-methods{display:grid;gap:10px}.delivery-method{position:relative;display:flex;align-items:center;gap:12px;min-height:67px;padding:12px 15px;border:1px solid #e5ddeb;border-radius:7px;cursor:pointer}.delivery-method:hover{border-color:#b88ce4}.delivery-method.is-selected{border:2px solid var(--purple);padding:11px 14px}.delivery-method input{position:absolute;width:1px;height:1px;opacity:0}.delivery-method-dot{width:16px;height:16px;border:1px solid #c1b7cb;border-radius:50%;background:#fff}.delivery-method.is-selected .delivery-method-dot{border:5px solid var(--purple)}.delivery-method>span:last-child{display:grid;gap:4px}.delivery-method strong{font-size:12px}.delivery-method small{color:#807986;font-size:10px}.checkout-address-heading{margin-top:36px}.checkout-recipient-fields{display:grid;grid-template-columns:1fr 1.5fr;gap:12px}.checkout-recipient-fields label{display:grid;gap:7px;color:#6b6470;font-size:10px;font-weight:800;text-transform:uppercase}.checkout-recipient-fields input{height:43px;border:1px solid #ded6e4;border-radius:5px;padding:0 12px;outline:0;font-size:12px;text-transform:none}.checkout-recipient-fields input:focus{border-color:#9b60cb;box-shadow:0 0 0 3px rgba(82,18,162,.08)}.checkout-summary{padding:23px}.checkout-summary h2{margin-bottom:18px}.checkout-items{display:grid;gap:13px;padding-bottom:18px;border-bottom:1px solid var(--line)}.checkout-item{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:10px;align-items:center}.checkout-item-image{display:grid;place-items:center;width:46px;height:46px;border-radius:5px;background:#fff;border:1px solid var(--line);overflow:hidden}.checkout-item-image img{width:100%;height:100%;object-fit:contain}.checkout-item>div:nth-child(2){display:grid;gap:4px}.checkout-item strong{max-height:28px;overflow:hidden;font-size:10px;line-height:1.35;overflow-wrap:anywhere;word-break:break-word}.checkout-item span{color:#8c8491;font-size:9px}.checkout-item b{color:var(--purple);font-size:10px;white-space:nowrap}.checkout-summary-line,.checkout-final-total{display:flex;justify-content:space-between;gap:15px;margin-top:15px;font-size:11px}.checkout-summary-line strong{text-align:right;font-size:10px}.checkout-final-total{align-items:center;margin:22px 0}.checkout-final-total span{font-size:15px;font-weight:900}.checkout-final-total strong{color:var(--purple);font-size:21px}.checkout-pay{width:100%;height:51px;border:0;border-radius:5px;background:var(--purple);color:#fff;font-size:11px;font-weight:900;text-transform:uppercase;cursor:pointer}.checkout-pay:hover{background:var(--purple-dark)}.checkout-empty{grid-column:1/-1;padding:90px 20px;border:1px dashed #d9cfe0;border-radius:10px;background:#fff;text-align:center}.checkout-empty h2{margin:0 0 9px;color:var(--purple)}.checkout-empty p{margin:0 0 22px;color:#7b7480}.checkout-empty .button{min-width:180px}.payment-dialog{width:min(430px,calc(100vw - 32px));padding:30px;border:0;border-radius:10px;background:#fff;color:var(--ink);box-shadow:0 25px 70px rgba(31,9,52,.32)}.payment-dialog::backdrop{background:rgba(20,12,29,.48)}.payment-dialog .eyebrow{margin-bottom:8px;color:var(--purple)}.payment-dialog h2{margin:0;font-size:26px}.payment-close{position:absolute;top:12px;right:14px;width:30px;height:30px;border:0;background:transparent;color:#7d7483;font-size:24px;line-height:1;cursor:pointer}.payment-dialog-total{margin:18px 0;color:var(--purple);font-size:29px;font-weight:900}.payment-provider-card{display:flex;align-items:center;justify-content:space-between;padding:15px;border:1px solid #ded5e7;border-radius:6px}.payment-provider-card span{font-size:12px;font-weight:800}.payment-provider-card strong{color:#6c6471;font-size:10px}.payment-dialog-copy{margin:17px 0;color:#7f7785;font-size:11px;line-height:1.5}.payment-provider-button{width:100%;border:0}.payment-provider-button:hover{background:var(--purple-dark)}
@media(max-width:900px){.checkout-header-inner,.checkout-main{padding-left:16px;padding-right:16px}.checkout-layout{grid-template-columns:1fr}.checkout-summary{order:-1}.checkout-main{padding-top:32px}.checkout-address-heading{margin-top:28px}}
@media(max-width:560px){.checkout-header-inner{height:60px}.checkout-back{margin-right:12px;font-size:9px}.checkout-heading h1{font-size:30px}.checkout-form-panel,.checkout-summary{padding:18px}.checkout-section-heading{display:grid;gap:9px}.checkout-section-heading>p{text-align:left}.checkout-recipient-fields{grid-template-columns:1fr}.checkout-item strong{font-size:9px}}
.field-required{color:#c54b6c;font-weight:900}.checkout-pay:disabled{opacity:.55;cursor:not-allowed}.checkout-pay:disabled:hover{background:var(--purple)}.checkout-success{grid-column:1/-1;padding:70px 20px;text-align:center}.checkout-success-icon{display:inline-grid;place-items:center;width:72px;height:72px;margin-bottom:18px;border-radius:50%;background:#e8f5e9;color:#2e7d32;font-size:36px;font-weight:900}.checkout-success h2{margin:0 0 12px;color:var(--purple);font-size:28px}.checkout-success-number{margin:0 0 6px;font-size:16px;color:#5a5260}.checkout-success-total{margin:0 0 18px;font-size:20px;color:var(--purple);font-weight:900}.checkout-success-message{margin:0 0 30px;color:#7b7480;font-size:13px;line-height:1.6}.checkout-success-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.checkout-success-actions .button{min-width:170px}.button-secondary{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 26px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--purple);font-size:11px;font-weight:800;text-transform:uppercase;text-decoration:none;cursor:pointer}.button-secondary:hover{border-color:var(--purple);background:#faf6ff}
.account-message.is-success{color:#347657}

/* Checkout Authentication States */
.checkout-auth-banner {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 18px 20px;
  margin-bottom: 22px;
  border: 1.5px solid #d8c4ee;
  border-radius: 8px;
  background: #fbf7fd;
}
.checkout-auth-icon {
  font-size: 26px;
  line-height: 1;
}
.checkout-auth-info {
  flex: 1;
}
.checkout-auth-info h3 {
  margin: 0 0 6px;
  font-size: 13px;
  font-weight: 800;
  color: var(--purple);
  text-transform: uppercase;
}
.checkout-auth-info p {
  margin: 0 0 14px;
  font-size: 11px;
  color: #6c6374;
  line-height: 1.45;
}
.checkout-login-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  padding: 0 20px;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  text-decoration: none;
}
.checkout-user-badge {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 16px;
  margin-bottom: 20px;
  border: 1px solid #d5c8e3;
  border-radius: 8px;
  background: #fdfbfe;
}
.checkout-user-badge-left {
  display: flex;
  align-items: center;
  gap: 10px;
}
.user-badge-avatar {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #eee6f5;
  color: var(--purple);
  font-size: 14px;
}
.checkout-user-badge-left small {
  display: block;
  font-size: 9px;
  color: #7b7482;
  text-transform: uppercase;
  font-weight: 700;
}
.checkout-user-badge-left strong {
  font-size: 13px;
  color: var(--ink);
}
.user-badge-link {
  color: var(--purple);
  font-size: 11px;
  font-weight: 800;
  text-decoration: underline;
}
.checkout-pay-link {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}
.checkout-auth-subtext {
  margin: 8px 0 0;
  font-size: 10px;
  color: #8b8392;
  text-align: center;
  line-height: 1.35;
}
.auth-checkout-tip {
  margin-top: 18px;
  padding: 12px 14px;
  background: #fff;
  border-radius: 8px;
  border: 1.5px solid #d8c4ee;
  box-shadow: 0 4px 14px rgba(82,18,162,0.06);
}
.auth-checkout-tip strong {
  display: block;
  font-size: 11px;
  color: var(--purple);
  margin-bottom: 4px;
  text-transform: uppercase;
}
.auth-checkout-tip p {
  margin: 0;
  font-size: 10px;
  color: #645c6b;
  line-height: 1.45;
}

/* Order Confirmation Dialog */
.confirm-dialog {
  width: min(520px, calc(100vw - 32px));
  padding: 0;
  border: 0;
  border-radius: 12px;
  background: #fff;
  color: var(--ink);
  box-shadow: 0 25px 70px rgba(31, 9, 52, 0.35);
  margin: auto;
  overflow: hidden;
}
.confirm-dialog::backdrop {
  background: rgba(18, 10, 28, 0.65);
  backdrop-filter: blur(4px);
}
.confirm-dialog-inner {
  padding: 30px;
  position: relative;
}
.confirm-dialog-close {
  position: absolute;
  top: 16px;
  right: 18px;
  width: 32px;
  height: 32px;
  border: 0;
  background: transparent;
  color: #7d7483;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
  border-radius: 6px;
  transition: all 0.15s ease;
}
.confirm-dialog-close:hover {
  background: #f1e9f7;
  color: var(--purple);
}
.confirm-dialog h2 {
  margin: 4px 0 8px;
  font-size: 22px;
  color: var(--ink);
  font-weight: 800;
}
.confirm-dialog-intro {
  margin: 0 0 20px;
  color: #7a7281;
  font-size: 12px;
  line-height: 1.45;
}
.confirm-summary-cards {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 24px;
}
.confirm-card {
  padding: 14px 16px;
  border: 1px solid #ebdff5;
  border-radius: 8px;
  background: #faf7fc;
}
.confirm-card-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  color: var(--purple);
  margin-bottom: 8px;
}
.confirm-card-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 12px;
  line-height: 1.45;
  color: #3b3542;
  margin-bottom: 5px;
}
.confirm-card-row:last-child {
  margin-bottom: 0;
}
.confirm-card-row span {
  color: #7d7483;
  font-size: 11px;
}
.confirm-card-row strong {
  text-align: right;
  color: var(--ink);
  font-weight: 700;
}
.confirm-card-address {
  font-size: 12px;
  line-height: 1.45;
  color: #2e2637;
  word-break: break-word;
}
.confirm-dialog-actions {
  display: flex;
  gap: 10px;
}
.confirm-submit-btn {
  flex: 1.4;
  height: 48px;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}
.confirm-cancel-btn {
  flex: 1;
  height: 48px;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}
@media (max-width: 500px) {
  .confirm-dialog-inner {
    padding: 22px 18px;
  }
  .confirm-dialog-actions {
    flex-direction: column;
  }
  .confirm-submit-btn,
  .confirm-cancel-btn {
    width: 100%;
  }
}

/* Footer Typography Enhancement */
.footer-links {
  gap: 36px;
  padding: 34px 17px;
}
.footer-links h3 {
  font-size: 13px;
  margin-bottom: 12px;
  letter-spacing: 0.4px;
}
.footer-links p {
  font-size: 13px;
  line-height: 1.6;
}
.footer-links>div:not(:first-child) a {
  font-size: 13px;
  margin: 0 0 8px;
  line-height: 1.4;
  color: #554e5b;
  transition: color .15s ease;
}
.footer-links>div:not(:first-child) a:hover {
  color: var(--purple);
}
.socials a {
  font-size: 15px;
}
.legal {
  padding: 16px 17px 22px;
  font-size: 11px;
  text-align: center;
  justify-content: center;
}
.legal a {
  font-size: 11px;
  color: #837c88;
  transition: color .15s ease;
}
.legal a:hover {
  color: var(--purple);
}
@media(max-width:900px) {
  .footer-links {
    gap: 28px;
  }
}
@media(max-width:560px) {
  .footer-links h3 {
    font-size: 13px;
  }
  .footer-links p,
  .footer-links>div:not(:first-child) a {
    font-size: 12px;
  }
  .legal {
    font-size: 10px;
  }
  .legal a {
    font-size: 10px;
  }
}

/* Delivery and Payment Page */
.delivery-page {
  min-height: 100vh;
  background: #f8f6fa;
}
.delivery-main {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px 75px;
}
.delivery-breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 24px;
  font-size: 12px;
  color: #7b7482;
}
.delivery-breadcrumb a {
  color: var(--purple);
  text-decoration: none;
}
.delivery-hero {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 48px 52px;
  border-radius: 12px;
  background: linear-gradient(135deg, #260652, #5212a2 58%, #7432b7);
  color: #fff;
  margin-bottom: 40px;
  box-shadow: 0 16px 45px rgba(49, 12, 83, 0.12);
}
.delivery-hero .eyebrow {
  color: #d9c5ef;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.delivery-hero h1 {
  margin: 0 0 16px;
  font-size: 46px;
  line-height: 1;
  letter-spacing: -1px;
}
.delivery-hero h1 span {
  color: #d9b7ff;
}
.delivery-hero p {
  max-width: 640px;
  margin: 0;
  color: #e8ddf2;
  font-size: 15px;
  line-height: 1.6;
}
.delivery-section {
  margin-bottom: 48px;
}
.delivery-section-heading {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
}
.delivery-section-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #eee6f5;
  color: var(--purple);
  font-size: 13px;
  font-weight: 900;
}
.delivery-section-heading h2 {
  margin: 0;
  color: var(--purple);
  font-size: 22px;
  text-transform: uppercase;
  letter-spacing: -0.3px;
}
.delivery-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.delivery-card {
  display: flex;
  flex-direction: column;
  padding: 28px 24px;
  background: #fff;
  border: 1px solid #e5ddeb;
  border-radius: 10px;
  box-shadow: 0 4px 20px rgba(45, 16, 68, 0.04);
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.delivery-card:hover {
  transform: translateY(-2px);
  border-color: #b88ce4;
  box-shadow: 0 10px 30px rgba(45, 16, 68, 0.08);
}
.delivery-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}
.delivery-tag {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 20px;
  background: #f1e9f8;
  color: var(--purple);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}
.delivery-card h3 {
  margin: 0 0 10px;
  color: var(--ink);
  font-size: 20px;
  font-weight: 800;
}
.delivery-price-block {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 18px;
  padding-bottom: 16px;
  border-bottom: 1px solid #f0eaf4;
}
.delivery-price-value {
  color: var(--purple);
  font-size: 24px;
  font-weight: 900;
}
.delivery-price-label {
  color: #877f8d;
  font-size: 12px;
}
.delivery-features {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 12px;
  flex: 1;
}
.delivery-features li {
  position: relative;
  padding-left: 22px;
  font-size: 13px;
  line-height: 1.5;
  color: #514957;
}
.delivery-features li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #288247;
  font-weight: 900;
  font-size: 12px;
}
.delivery-features li strong {
  color: var(--ink);
}
.delivery-card-note {
  margin-top: 20px;
  padding: 12px 14px;
  border-radius: 6px;
  background: #fbf9fd;
  border-left: 3px solid var(--purple);
  font-size: 12px;
  line-height: 1.5;
  color: #6a6270;
}
.delivery-card-note a {
  color: var(--purple);
  font-weight: 700;
  text-decoration: underline;
}

/* Pickup and Warehouse Card */
.pickup-card {
  padding: 32px 34px;
  background: #fff;
  border: 1px solid #e5ddeb;
  border-radius: 10px;
  box-shadow: 0 4px 20px rgba(45, 16, 68, 0.04);
}
.pickup-address-banner {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 18px 22px;
  border-radius: 8px;
  background: #f4ecf9;
  border: 1px solid #e3d3ed;
  margin-bottom: 24px;
}
.pickup-pin {
  font-size: 26px;
}
.pickup-address-copy strong {
  display: block;
  font-size: 16px;
  color: var(--purple);
  margin-bottom: 4px;
}
.pickup-address-copy span {
  font-size: 13px;
  color: #635b6b;
}
.pickup-steps-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
.pickup-step-box {
  padding: 18px;
  border-radius: 8px;
  background: #faf8fc;
  border: 1px solid #eee8f3;
}
.pickup-step-num {
  display: inline-block;
  color: var(--purple);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  margin-bottom: 8px;
}
.pickup-step-box h4 {
  margin: 0 0 6px;
  font-size: 14px;
  color: var(--ink);
}
.pickup-step-box p {
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
  color: #686070;
}

/* Returns Card */
.returns-box {
  padding: 32px 34px;
  background: #fff;
  border: 1px solid #e5ddeb;
  border-radius: 10px;
  box-shadow: 0 4px 20px rgba(45, 16, 68, 0.04);
}
.returns-content {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 30px;
  align-items: center;
}
.returns-text p {
  font-size: 14px;
  line-height: 1.6;
  color: #514957;
  margin: 0 0 14px;
}
.returns-text ul {
  margin: 0 0 18px;
  padding-left: 20px;
  font-size: 13px;
  line-height: 1.6;
  color: #514957;
}
.returns-cta {
  padding: 24px;
  border-radius: 8px;
  background: #fbf8fd;
  border: 1px dashed #d6c6e4;
  text-align: center;
}
.returns-cta h4 {
  margin: 0 0 8px;
  color: var(--purple);
  font-size: 16px;
}
.returns-cta p {
  margin: 0 0 16px;
  font-size: 12px;
  color: #726a7a;
  line-height: 1.5;
}
.returns-cta .button {
  gap: 0;
  text-align: center;
  justify-content: center;
  display: inline-flex;
}

@media(max-width:900px) {
  .delivery-hero {
    padding: 36px 30px;
  }
  .delivery-hero h1 {
    font-size: 38px;
  }
  .delivery-grid {
    grid-template-columns: 1fr 1fr;
  }
  .delivery-grid-2 {
    grid-template-columns: 1fr;
  }
  .payment-grid {
    grid-template-columns: 1fr;
  }
  .pickup-steps-grid {
    grid-template-columns: 1fr 1fr;
  }
  .returns-content {
    grid-template-columns: 1fr;
  }
}
@media(max-width:600px) {
  .delivery-main {
    padding-top: 24px;
  }
  .delivery-hero {
    padding: 30px 20px;
  }
  .delivery-hero h1 {
    font-size: 30px;
  }
  .delivery-grid {
    grid-template-columns: 1fr;
  }
  .pickup-steps-grid {
    grid-template-columns: 1fr;
  }
  .pickup-address-banner {
    flex-direction: column;
    align-items: flex-start;
  }
}

.delivery-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
}
.payment-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.payment-card {
  display: flex;
  flex-direction: column;
  padding: 28px 24px;
  background: #fff;
  border: 1px solid #e5ddeb;
  border-radius: 10px;
  box-shadow: 0 4px 20px rgba(45, 16, 68, 0.04);
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.payment-card:hover {
  transform: translateY(-2px);
  border-color: #b88ce4;
  box-shadow: 0 10px 30px rgba(45, 16, 68, 0.08);
}
.payment-card-badge {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 20px;
  background: #f1e9f8;
  color: var(--purple);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}
.payment-card h3 {
  margin: 12px 0 8px;
  color: var(--ink);
  font-size: 20px;
  font-weight: 800;
}
.payment-card-desc {
  margin: 0 0 16px;
  font-size: 13px;
  line-height: 1.55;
  color: #6a6270;
}
.payment-card-list {
  list-style: none;
  padding: 0;
  margin: 0 0 18px;
  display: grid;
  gap: 10px;
  flex: 1;
}
.payment-card-list li {
  position: relative;
  padding-left: 20px;
  font-size: 13px;
  line-height: 1.5;
  color: #514957;
}
.payment-card-list li::before {
  content: "•";
  position: absolute;
  left: 4px;
  top: -1px;
  color: var(--purple);
  font-size: 18px;
  font-weight: 900;
}
.payment-badges-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid #f0eaf4;
}
.payment-pill {
  display: inline-flex;
  align-items: center;
  padding: 4px 9px;
  background: #f6f3f8;
  border: 1px solid #e7dfed;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 700;
  color: #4f4756;
}
.delivery-notice {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 6px;
  background: #fff8eb;
  border: 1px solid #fae2bc;
  color: #925805;
  font-size: 12px;
  margin-bottom: 14px;
  line-height: 1.4;
}

/* FAQ Page Styles */
.faq-page {
  min-height: 100vh;
  background: #f8f6fa;
}
.faq-main {
  max-width: 960px;
  margin: 0 auto;
  padding: 40px 20px 80px;
}
.faq-hero {
  padding: 46px 50px;
  border-radius: 12px;
  background: linear-gradient(135deg, #260652, #5212a2 58%, #7432b7);
  color: #fff;
  margin-bottom: 36px;
  box-shadow: 0 16px 45px rgba(49, 12, 83, 0.12);
}
.faq-hero .eyebrow {
  color: #d9c5ef;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.faq-hero h1 {
  margin: 0 0 14px;
  font-size: 42px;
  line-height: 1.05;
  letter-spacing: -0.5px;
}
.faq-hero h1 span {
  color: #d9b7ff;
}
.faq-hero p {
  max-width: 600px;
  margin: 0;
  color: #e8ddf2;
  font-size: 14px;
  line-height: 1.6;
}
.faq-list {
  display: grid;
  gap: 14px;
}
.faq-item {
  background: #fff;
  border: 1px solid #e5ddeb;
  border-radius: 10px;
  overflow: hidden;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.faq-item[open] {
  border-color: #b88ce4;
  box-shadow: 0 8px 25px rgba(45, 16, 68, 0.06);
}
.faq-question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 22px 26px;
  font-size: 16px;
  font-weight: 800;
  color: var(--ink);
  cursor: pointer;
  list-style: none;
  user-select: none;
}
.faq-question::-webkit-details-marker {
  display: none;
}
.faq-question-title {
  display: flex;
  align-items: center;
  gap: 14px;
}
.faq-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #eee6f5;
  color: var(--purple);
  font-size: 12px;
  font-weight: 900;
  flex-shrink: 0;
}
.faq-chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #f7f3f9;
  color: var(--purple);
  font-size: 13px;
  font-weight: 700;
  transition: transform 0.25s ease, background-color 0.2s ease, color 0.2s ease;
  flex-shrink: 0;
}
.faq-item[open] .faq-chevron {
  transform: rotate(180deg);
  background: var(--purple);
  color: #fff;
}
.faq-answer {
  padding: 0 26px 24px 68px;
  font-size: 14px;
  line-height: 1.65;
  color: #554e5b;
}
.faq-answer p {
  margin: 0 0 10px;
}
.faq-answer p:last-child {
  margin-bottom: 0;
}
.faq-note-box {
  margin-top: 14px;
  padding: 12px 16px;
  border-radius: 6px;
  background: #fbf8fd;
  border-left: 3px solid var(--purple);
  font-size: 13px;
  color: #635b6b;
  line-height: 1.5;
}
.faq-mail-link {
  color: var(--purple);
  font-weight: 700;
  text-decoration: underline;
}
.faq-support-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 40px;
  padding: 28px 32px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid #e5ddeb;
  box-shadow: 0 4px 20px rgba(45, 16, 68, 0.04);
}
.faq-support-copy h3 {
  margin: 0 0 6px;
  color: var(--purple);
  font-size: 18px;
}
.faq-support-copy p {
  margin: 0;
  font-size: 13px;
  color: #6a6270;
}
@media (max-width: 600px) {
  .faq-hero {
    padding: 30px 20px;
  }
  .faq-hero h1 {
    font-size: 30px;
  }
  .faq-answer {
    padding: 0 20px 20px 20px;
  }
  .faq-question {
    padding: 18px 20px;
    font-size: 14px;
  }
  .faq-support-banner {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* Returns Page Dedicated Styles */
.returns-page {
  min-height: 100vh;
  background: #f8f6fa;
}
.returns-main {
  max-width: 960px;
  margin: 0 auto;
  padding: 40px 20px 80px;
}
.returns-contact-banner {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 24px 28px;
  border-radius: 10px;
  background: #f4ecf9;
  border: 1px solid #dfcce9;
  margin-top: 24px;
}
.returns-contact-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--purple);
  color: #fff;
  font-size: 20px;
  flex-shrink: 0;
}
.returns-contact-copy strong {
  display: block;
  font-size: 15px;
  color: var(--purple);
  margin-bottom: 4px;
}
.returns-contact-copy p {
  margin: 0;
  font-size: 13px;
  color: #554e5b;
  line-height: 1.5;
}
.returns-contact-copy a {
  color: var(--purple);
  font-weight: 800;
  text-decoration: underline;
}
.returns-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-bottom: 32px;
}
.returns-guide-card {
  padding: 24px 22px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid #e5ddeb;
  box-shadow: 0 4px 20px rgba(45, 16, 68, 0.04);
}
.returns-guide-card h3 {
  margin: 10px 0 8px;
  font-size: 16px;
  color: var(--ink);
}
.returns-guide-card p {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: #635b6b;
}
@media (max-width: 768px) {
  .returns-guide-grid {
    grid-template-columns: 1fr;
  }
  .returns-contact-banner {
    flex-direction: column;
    align-items: flex-start;
  }
  .return-address-grid {
    grid-template-columns: 1fr;
  }
}

/* Return Address Cards and Legal Reference */
.return-address-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 24px;
}
.return-address-card {
  padding: 24px 22px;
  background: #fff;
  border: 1px solid #e5ddeb;
  border-radius: 10px;
  box-shadow: 0 4px 18px rgba(45, 16, 68, 0.04);
}
.return-address-card h3 {
  margin: 10px 0 14px;
  font-size: 18px;
  color: var(--ink);
}
.return-address-details {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 10px;
}
.return-address-details li {
  font-size: 13px;
  line-height: 1.5;
  color: #554e5b;
}
.return-address-details strong {
  color: var(--ink);
}
.legal-basis-box {
  margin-top: 24px;
  padding: 20px 24px;
  background: #fbf9fd;
  border-radius: 8px;
  border-left: 4px solid var(--purple);
}
.legal-basis-box h4 {
  margin: 0 0 10px;
  color: var(--purple);
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}
.legal-basis-box ul {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 8px;
}
.legal-basis-box li {
  font-size: 12px;
  line-height: 1.6;
  color: #6a6270;
}

/* Footer Social Icons */
.socials {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 14px;
}
.social-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: #f1eaf7;
  transition: transform 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
  overflow: hidden;
}
.social-icon-btn img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  display: block;
}
.social-icon-btn:hover {
  transform: translateY(-2px);
  background: #e7daf2;
  box-shadow: 0 4px 10px rgba(82, 18, 162, 0.15);
}

/* Contacts Page Styles */
.contacts-page {
  min-height: 100vh;
  background: #f8f6fa;
}
.contacts-main {
  max-width: 960px;
  margin: 0 auto;
  padding: 40px 20px 80px;
}
.contacts-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
  margin-top: 24px;
}
.contacts-card {
  background: #fff;
  border: 1px solid #e5ddeb;
  border-radius: 12px;
  padding: 28px 26px;
  box-shadow: 0 4px 20px rgba(45, 16, 68, 0.04);
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: transform 0.2s ease, border-color 0.2s ease;
}
.contacts-card:hover {
  transform: translateY(-2px);
  border-color: #b88ce4;
}
.contacts-card-tag {
  align-self: flex-start;
  padding: 4px 12px;
  border-radius: 20px;
  background: #f1e9f8;
  color: var(--purple);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}
.contacts-card h3 {
  margin: 0;
  font-size: 18px;
  color: var(--ink);
  font-weight: 800;
}
.contacts-card-desc {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: #6a6270;
}
.contacts-email-btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  background: #f9f6fc;
  border: 1px solid #dfd6e7;
  border-radius: 8px;
  color: var(--purple);
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
.contacts-email-btn:hover {
  background: #f2e9fa;
  border-color: var(--purple);
}
.contacts-email-btn small {
  font-size: 11px;
  color: #8a32db;
  font-weight: 600;
  background: #fff;
  padding: 3px 8px;
  border-radius: 4px;
  border: 1px solid #e2d3ed;
}

.contacts-social-item {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 14px 18px;
  border-radius: 10px;
  background: #f9f6fc;
  border: 1px solid #dfd6e7;
  transition: transform 0.15s ease, background-color 0.15s ease, border-color 0.15s ease;
}
.contacts-social-item:hover {
  transform: translateY(-2px);
  background: #f2e9fa;
  border-color: var(--purple);
}
.contacts-social-icon {
  width: 42px;
  height: 42px;
  object-fit: contain;
  flex-shrink: 0;
}
.contacts-social-info strong {
  display: block;
  font-size: 14px;
  color: var(--ink);
  margin-bottom: 3px;
}
.contacts-social-info span {
  font-size: 12px;
  color: var(--purple);
  font-weight: 700;
}

@media (max-width: 768px) {
  .contacts-grid {
    grid-template-columns: 1fr;
  }
}



/* Basketball loading animation, shared by the page overlay and catalog. */
.basket-loader{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f8f6fa;opacity:1;transition:opacity .35s ease}
.basket-loader.is-finished{opacity:0;pointer-events:none}
.basket-loader-scene{display:block;width:200px;height:150px;overflow:visible}
.basket-loader-backboard{fill:#fff;stroke:#5212a2;stroke-width:3;stroke-linejoin:round}
.basket-loader-rim-back,.basket-loader-rim-front{fill:none;stroke:#e46f24;stroke-width:5;stroke-linecap:round}
.basket-loader-net{fill:none;stroke:#9e84ba;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.basket-loader-ball{fill:#e97826;stroke:#58301d;stroke-width:2;animation:basket-shot 1.8s ease-in-out infinite}
.basket-loader-ball path{fill:none;stroke-width:1.5}
.basket-loader-label{margin-top:8px;color:#5212a2;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
@keyframes basket-shot{0%{transform:translate(22px,137px) rotate(-35deg) scale(1.35);opacity:0}10%{opacity:1}43%{transform:translate(84px,32px) rotate(165deg) scale(1.1)}62%{transform:translate(100px,69px) rotate(270deg) scale(.85);opacity:1}82%{transform:translate(100px,112px) rotate(350deg) scale(.65);opacity:1}100%{transform:translate(100px,135px) rotate(390deg) scale(.55);opacity:0}}
@media (prefers-reduced-motion:reduce){.basket-loader,.basket-loader-ball{animation:none;transition:none}.basket-loader-ball{transform:translate(100px,69px)}}

/* CDEK Widget & PVZ UI */
.cdek-select-prompt {
  margin-top: 10px;
  padding-top: 4px;
}

.cdek-open-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border: 1px solid var(--purple);
  border-radius: 6px;
  background: #f4ecfc;
  color: var(--purple);
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
  transition: all 0.2s ease;
}

.cdek-open-button:hover {
  background: var(--purple);
  color: #fff;
}

.cdek-hint {
  margin: 6px 0 0;
  color: #8c8592;
  font-size: 10px;
  line-height: 1.4;
}

.cdek-pvz-card {
  margin-top: 14px;
  padding: 14px 16px;
  background: #fdfbfe;
  border: 1px solid #dfd3ec;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.cdek-pvz-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 2px;
}

.cdek-badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 8px;
  background: #25a840;
  color: #fff;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

.cdek-pvz-code {
  color: #7b7482;
  font-size: 11px;
}

.cdek-pvz-code strong {
  color: var(--ink);
}

.cdek-pvz-title {
  margin: 2px 0 0;
  font-size: 13px;
  font-weight: 800;
  color: var(--ink);
  line-height: 1.45;
}

.cdek-pvz-address {
  margin: 0;
  color: #635b6c;
  font-size: 11.5px;
  line-height: 1.5;
}

.cdek-pvz-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 4px;
  padding-top: 10px;
  border-top: 1px dashed #dfd3ec;
  font-size: 11px;
  color: #6d6674;
}

.cdek-pvz-meta strong {
  color: var(--purple);
  font-size: 12px;
}

.cdek-change-button {
  margin-left: auto;
  border: 0;
  background: none;
  padding: 0;
  color: var(--purple);
  font-size: 10px;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
}

.cdek-change-button:hover {
  color: var(--purple-dark);
}

/* Yandex Delivery Dialog & Widget UI */
.yandex-dialog {
  padding: 0;
  border: 0;
  border-radius: 12px;
  background: #fff;
  width: min(94vw, 920px);
  max-width: 920px;
  box-shadow: 0 16px 48px rgba(20, 10, 30, 0.28);
  margin: auto;
  overflow: hidden;
}

.yandex-dialog::backdrop {
  background: rgba(18, 12, 28, 0.65);
  backdrop-filter: blur(4px);
}

.yandex-dialog-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
  border-bottom: 1px solid #ebe5f0;
  background: #faf7fc;
}

.yandex-dialog-header h2 {
  margin: 2px 0 0;
  font-size: 16px;
  color: var(--ink);
  font-weight: 800;
}

.yandex-dialog-close {
  background: none;
  border: 0;
  font-size: 26px;
  line-height: 1;
  color: #7a7382;
  cursor: pointer;
  padding: 4px 10px;
  border-radius: 6px;
  transition: all 0.15s ease;
}

.yandex-dialog-close:hover {
  background: #ede6f4;
  color: var(--purple);
}

.yandex-widget-mount {
  width: 100%;
  height: 540px;
  min-height: 500px;
  background: #fbf9fd;
}

.yandex-badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 8px;
  background: #fc3f1d;
  color: #fff;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

.yandex-open-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border: 1px solid #fc3f1d;
  border-radius: 6px;
  background: #fff3f1;
  color: #d82d0e;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
  transition: all 0.2s ease;
}

.yandex-open-button:hover {
  background: #fc3f1d;
  color: #fff;
}

/* Russian Post (Почта России) Dialog & Widget UI */
.pochta-dialog {
  padding: 0;
  border: 0;
  border-radius: 12px;
  background: #fff;
  width: min(94vw, 920px);
  max-width: 920px;
  box-shadow: 0 16px 48px rgba(20, 10, 30, 0.28);
  margin: auto;
  overflow: hidden;
}

.pochta-dialog::backdrop {
  background: rgba(18, 12, 28, 0.65);
  backdrop-filter: blur(4px);
}

.pochta-dialog-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
  border-bottom: 1px solid #ebe5f0;
  background: #faf7fc;
}

.pochta-dialog-header h2 {
  margin: 2px 0 0;
  font-size: 16px;
  color: var(--ink);
  font-weight: 800;
}

.pochta-dialog-close {
  background: none;
  border: 0;
  font-size: 26px;
  line-height: 1;
  color: #7a7382;
  cursor: pointer;
  padding: 4px 10px;
  border-radius: 6px;
  transition: all 0.15s ease;
}

.pochta-dialog-close:hover {
  background: #ede6f4;
  color: var(--purple);
}

.pochta-widget-mount {
  width: 100%;
  height: 540px;
  min-height: 500px;
  background: #fbf9fd;
}

.pochta-badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 8px;
  background: #0055a5;
  color: #fff;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

.pochta-open-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border: 1px solid #0055a5;
  border-radius: 6px;
  background: #eff6ff;
  color: #00458a;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
  transition: all 0.2s ease;
}

.pochta-open-button:hover {
  background: #0055a5;
  color: #fff;
}

/* Category CTA strip under the 8-card grid on home page */
.catalog-cta-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 18px;
  padding: 20px 26px;
  background: linear-gradient(135deg, #f7f3fa 0%, #ebe2f5 100%);
  border: 1px solid #e5dbf0;
  border-radius: 12px;
  box-shadow: 0 4px 16px rgba(45, 12, 80, 0.04);
}

.catalog-cta-copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.catalog-cta-badge {
  display: inline-block;
  color: var(--purple);
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}

.catalog-cta-copy h3 {
  margin: 0;
  font-size: 17px;
  font-weight: 900;
  color: var(--ink);
  letter-spacing: -0.3px;
}

.catalog-cta-copy p {
  margin: 0;
  color: #686070;
  font-size: 12px;
}

.catalog-cta-button {
  flex-shrink: 0;
  min-height: 42px;
  padding: 0 24px;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

@media (max-width: 768px) {
  .catalog-cta-strip {
    flex-direction: column;
    align-items: flex-start;
    padding: 18px 20px;
  }

  .catalog-cta-button {
    width: 100%;
  }
}

/* ==========================================================================
   Full Categories Catalog Page (Bento Grid)
   ========================================================================== */
.categories-page {
  min-height: 100vh;
  background: #ece8f0;
}

.categories-main {
  padding-bottom: 65px;
}

.categories-container {
  max-width: 1180px;
  margin: 0 auto;
}

.categories-hero {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
  margin-bottom: 34px;
  padding: 34px 40px;
  border-radius: 12px;
  background: linear-gradient(120deg, #dfd3ec 0%, #f6f2f9 55%, #dfd3ec 100%);
  border: 1px solid #d8cae7;
}

.categories-hero h1 {
  margin: 0;
  font-size: 38px;
  line-height: 0.95;
  letter-spacing: -1.2px;
  color: var(--ink);
  font-weight: 900;
}

.categories-hero-sub {
  margin: 12px 0 0;
  color: #5c5563;
  font-size: 13px;
  max-width: 520px;
  line-height: 1.45;
}

.categories-all-btn {
  flex-shrink: 0;
  white-space: nowrap;
}

.bento-group {
  margin-bottom: 42px;
}

.bento-group-header {
  display: flex;
  align-items: baseline;
  gap: 16px;
  margin-bottom: 14px;
  padding-left: 2px;
}

.bento-group-header h2 {
  margin: 0;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: -0.6px;
  color: #16121c;
  text-transform: uppercase;
}

.bento-group-link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 800;
  color: #797180;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  transition: color 0.15s ease;
}

.bento-group-link:hover {
  color: var(--purple);
}

.bento-group-link span {
  font-size: 14px;
  line-height: 1;
}

/* Bento Grid System */
.bento-grid {
  display: grid;
  gap: 12px;
}

/* Обувь: слева высокая карточка, справа 3 карточки */
.bento-grid-shoes {
  grid-template-columns: 1.4fr 1fr 1fr;
  grid-template-rows: repeat(2, 140px);
}

.bento-grid-shoes .bento-card-tall {
  grid-row: 1 / 3;
}

/* Одежда: слева высокая карточка, справа сетка из остальных */
.bento-grid-clothing {
  grid-template-columns: 1.35fr repeat(3, 1fr);
  grid-auto-rows: 140px;
}

.bento-grid-clothing .bento-card-tall {
  grid-row: 1 / 3;
}

/* Сетки на 4 колонки (Компрессия, Аксессуары) */
.bento-grid-four {
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 140px;
}

.bento-grid-two {
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: 155px;
}

/* Сетка для мячей (аккуратно растянутая карточка) */
.bento-grid-balls {
  grid-template-columns: minmax(320px, 440px);
  grid-auto-rows: 155px;
}

.bento-card-balls-featured .bento-image-wrap img {
  max-height: 102px;
}

.bento-card-balls-featured .bento-title {
  font-size: 13px;
}

.bento-grid-two .bento-image-wrap img {
  max-height: 96px;
}

/* Bento Card Design */
.bento-card {
  position: relative;
  background: #ffffff;
  border-radius: 10px;
  padding: 14px 16px 12px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid #e1dae7;
  overflow: hidden;
  transition: transform 0.2s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.2s cubic-bezier(0.2, 0.8, 0.2, 1), border-color 0.2s ease;
}

.bento-card:hover {
  transform: translateY(-3px);
  border-color: #aa82d5;
  box-shadow: 0 10px 24px rgba(42, 12, 72, 0.09);
}

.bento-image-wrap {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 0;
  overflow: hidden;
  padding: 4px 0;
}

.bento-image-wrap img {
  max-width: 100%;
  max-height: 84px;
  width: auto;
  height: auto;
  object-fit: contain;
  mix-blend-mode: multiply;
  transition: transform 0.25s ease;
}

.bento-card:hover .bento-image-wrap img {
  transform: scale(1.05);
}

.bento-card-tall .bento-image-wrap img {
  max-height: 180px;
}

.bento-card-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin-top: 6px;
  padding-top: 4px;
}

.bento-title {
  text-align: center;
  width: 100%;
  font-size: 11.5px;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: -0.1px;
  color: #14111a;
  text-transform: uppercase;
}

.bento-card-tall .bento-title {
  font-size: 13px;
}

.bento-arrow {
  display: none !important;
}

/* Placeholder for new containers waiting for user images */
.bento-placeholder-wrap {
  padding: 0;
}

.bento-placeholder-box {
  width: 100%;
  height: 74px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  border: 1.5px dashed #d5c8df;
  border-radius: 8px;
  background: #fbf9fd;
  color: #93899d;
  transition: border-color 0.2s, background 0.2s;
}

.bento-card:hover .bento-placeholder-box {
  border-color: #ab85d3;
  background: #f5edf9;
}

.bento-placeholder-icon {
  font-size: 18px;
  line-height: 1;
  opacity: 0.9;
}

.bento-placeholder-label {
  font-size: 8.5px;
  font-weight: 800;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: #9d94a6;
}

/* Accent Card ("ВСЕ КАТЕГОРИИ") */
.bento-card-accent {
  background: linear-gradient(135deg, #4f109c 0%, #2b0559 100%);
  border: 0;
  color: #fff;
}

.bento-card-accent:hover {
  box-shadow: 0 12px 28px rgba(50, 10, 85, 0.35);
  border-color: transparent;
}

.bento-accent-body {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.bento-accent-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.bento-accent-tag {
  font-size: 9.5px;
  font-weight: 900;
  letter-spacing: 1px;
  color: #d8beff;
  text-transform: uppercase;
}

.bento-accent-arrow {
  font-size: 22px;
  font-weight: 800;
  color: #fff;
  transition: transform 0.2s ease;
}

.bento-card-accent:hover .bento-accent-arrow {
  transform: translateX(4px);
}

.bento-accent-footer {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.bento-accent-footer strong {
  font-size: 15px;
  font-weight: 900;
  letter-spacing: -0.2px;
  color: #fff;
  text-transform: uppercase;
}

.bento-accent-footer span {
  font-size: 10px;
  color: #d1bfe5;
}

/* Responsive Categories Bento Grid */
@media (max-width: 990px) {
  .categories-hero {
    flex-direction: column;
    align-items: flex-start;
    padding: 28px;
  }

  .bento-grid-shoes,
  .bento-grid-clothing,
  .bento-grid-four,
  .bento-grid-two,
  .bento-grid-balls {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 140px;
  }

  .bento-grid-shoes .bento-card-tall,
  .bento-grid-clothing .bento-card-tall {
    grid-row: auto;
    grid-column: 1 / -1;
  }
}

@media (max-width: 560px) {
  .categories-main {
    padding-left: 16px;
    padding-right: 16px;
  }

  .categories-hero {
    padding: 22px 18px;
  }

  .categories-hero h1 {
    font-size: 28px;
  }

  .bento-group-header h2 {
    font-size: 20px;
  }

  .bento-grid-shoes,
  .bento-grid-clothing,
  .bento-grid-four,
  .bento-grid-two,
  .bento-grid-balls {
    grid-template-columns: 1fr;
    grid-auto-rows: 135px;
    gap: 10px;
  }

  .bento-grid-shoes .bento-card-tall,
  .bento-grid-clothing .bento-card-tall {
    grid-column: auto;
  }
}

/* Card image cycling indicators */
.card-image-indicators {
  position: absolute;
  bottom: 7px;
  left: 10px;
  right: 10px;
  display: flex;
  gap: 3px;
  z-index: 4;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}
.catalog-product-card:hover .card-image-indicators,
.catalog-product-card:focus-within .card-image-indicators,
.product-card:hover .card-image-indicators,
.product-card:focus-within .card-image-indicators {
  opacity: 1;
}
.card-indicator-dot {
  flex: 1;
  height: 2.5px;
  border-radius: 2px;
  background: rgba(0, 0, 0, 0.16);
  transition: background-color 0.15s ease, transform 0.15s ease;
}
.card-indicator-dot.is-active {
  background: var(--purple);
  transform: scaleY(1.3);
}
.catalog-product-image .favorite,
.product-visual .favorite {
  z-index: 6;
}

@media (max-width: 768px), (hover: none) {
  .card-image-indicators {
    opacity: 0.92;
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(4px);
    padding: 3px 6px;
    border-radius: 999px;
    bottom: 6px;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    gap: 4px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
  }
  .card-indicator-dot {
    width: 5px;
    height: 5px;
    flex: 0 0 5px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.22);
  }
  .card-indicator-dot.is-active {
    background: var(--purple);
    transform: scale(1.3);
  }
}

.catalog-product-image,
.product-visual {
  touch-action: pan-y;
  user-select: none;
  -webkit-user-select: none;
}
.product-grid,
.carousel-track,
.news-carousel,
.detail-main-image {
  touch-action: pan-y;
}

