@font-face{font-family:'Font Awesome 5 Free';font-style:normal;font-weight:900;font-display:block;src:url('fa-solid-900.woff2') format('woff2')}
:root{--navy:#202b5c;--coral:#ff6e69;--mint:#eefbf9;--teal:#48b7a8;--ink:#17224d;--muted:#697089;--line:#e7e9f0;--white:#fff;--display:'Mouse Memoirs',sans-serif;--body:'Inter',sans-serif;--radius:8px;--shadow:0 16px 40px rgba(31,43,91,.09)}
.fa-chevron-down{display:inline-block;margin-left:7px;font-family:'Font Awesome 5 Free';font-size:9px;font-style:normal;font-weight:900;line-height:1;vertical-align:1px}.fa-chevron-down:before{content:'\f078'}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip;max-width:100%}body{margin:0;color:var(--ink);background:#fff;font-family:var(--body);font-size:15px;line-height:1.65;overflow-x:clip;max-width:100%;position:relative}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{transition:.25s ease}.wrap{width:min(1280px,calc(100% - 48px));margin-inline:auto}.announcement{height:47px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;letter-spacing:.02em}.announcement span{margin-right:10px;color:#8fe4d8}.store-header{background:#fff;position:relative;z-index:20}.header-main{height:94px;display:grid;grid-template-columns:220px 1fr 280px;align-items:center;gap:38px}.store-logo img{width:158px;max-height:65px}.header-search{display:flex;border:1px solid var(--line);border-radius:5px;overflow:hidden;box-shadow:0 5px 16px rgba(31,43,91,.04)}.header-search input{border:0;outline:0;padding:16px 20px;width:100%;color:var(--ink)}.header-search button{width:57px;border:0;background:var(--navy);color:#fff;font-size:28px;cursor:pointer}.header-search button:hover{background:var(--coral)}.header-actions{display:flex;justify-content:flex-end;gap:28px}.header-actions a{display:grid;position:relative;text-align:center;font-size:11px;font-weight:700}.header-actions b{font-size:26px;line-height:1}.header-actions a:hover{color:var(--coral)}.header-actions i{position:absolute;right:-7px;top:-8px;background:var(--coral);color:#fff;width:17px;height:17px;border-radius:50%;font-style:normal;font-size:10px;line-height:17px}.menu-toggle{display:none;border:0;background:var(--navy);color:#fff;border-radius:5px;width:44px;height:44px;font-size:22px}.store-nav{border-top:1px solid #f1f1f4;border-bottom:1px solid var(--line)}.store-nav .wrap{height:66px;display:flex;align-items:center;justify-content:center;gap:56px}.store-nav a{font-size:14px;font-weight:700}.store-nav a.active,.store-nav a:hover{color:var(--coral)}.home-hero{height:min(660px,48vw);min-height:520px;background:#cdf6f0 url('hero-bg.jpg') center/cover no-repeat}.hero-inner{height:100%;display:flex;align-items:center}.hero-copy{max-width:570px}.hero-copy>span,.eyebrow,.section-heading>span,.countdown-copy>small,.wide-cta small{display:block;font-size:13px;font-weight:800;letter-spacing:.08em;margin-bottom:13px}.hero-copy h1,.page-hero h1,.article-hero h1{font-family:var(--display);font-weight:400;line-height:.92;margin:0}.hero-copy h1{font-size:clamp(68px,7vw,112px);letter-spacing:.01em}.hero-copy h2{font:400 clamp(38px,4vw,58px)/1 var(--display);margin:20px 0 42px}.outline-button,.navy-button,.white-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;border-radius:30px;padding:0 26px;font-weight:800;font-size:13px;cursor:pointer}.outline-button{border:2px solid var(--navy)}.outline-button:hover{color:#fff;background:var(--navy)}.navy-button{border:2px solid var(--navy);background:var(--navy);color:#fff}.navy-button:hover{background:var(--coral);border-color:var(--coral)}.white-button{background:#fff;border:0;color:var(--ink)}.white-button:hover{background:var(--coral);color:#fff}.section{padding-block:105px}.section-heading{text-align:center;margin-bottom:48px}.section-heading>span{color:var(--coral)}.section-heading h2,.about-intro h2,.contact-copy h2,.auth-card h2,.product-tabs h2,.product-summary h1{font:400 clamp(39px,4.1vw,62px)/1.05 var(--display);margin:0}.section-heading.light{color:#fff}.section-heading.light>span{color:#fff}.collections-section{padding-bottom:115px}.category-row{display:grid;grid-template-columns:repeat(7,1fr);gap:20px}.category-chip{text-align:center;font-weight:700}.category-chip img{width:145px;aspect-ratio:1;border-radius:50%;object-fit:cover;margin:0 auto 16px;border:4px solid transparent}.category-chip:hover img{border-color:var(--coral);transform:translateY(-5px)}.split-promos{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:70px}.split-promos article{min-height:330px;padding:60px;border-radius:var(--radius);background-size:cover;background-position:center}.split-promos h3{font:400 42px/1 var(--display);margin:0 0 12px}.split-promos p{width:53%;margin:0 0 26px}.split-promos a,.read-more{font-weight:800;font-size:13px}.split-promos i{display:inline-grid;place-items:center;background:var(--navy);color:#fff;width:24px;height:24px;border-radius:50%;font-style:normal;margin-left:7px}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.product-grid-3{grid-template-columns:repeat(3,1fr)}.product-card{min-width:0}.product-image{display:block;position:relative;background:#f8f9fb;border-radius:7px;overflow:hidden}.product-image>img{width:100%;aspect-ratio:1;object-fit:contain;padding:10px;transition:.35s}.product-card:hover .product-image>img{transform:scale(1.04)}.sale-badge{position:absolute;z-index:2;left:14px;top:14px;background:var(--coral);color:#fff;border-radius:4px;padding:4px 9px;font-size:11px;font-weight:800}.quick-actions{position:absolute;right:13px;top:13px;display:grid;gap:7px;opacity:0;transform:translateX(10px)}.product-card:hover .quick-actions{opacity:1;transform:none}.quick-actions button,.heart-button{width:39px;height:39px;border-radius:50%;background:#fff;border:1px solid var(--line);font-size:20px;cursor:pointer}.quick-actions button:hover,.heart-button:hover,.quick-actions button.active,.heart-button.active{background:var(--coral);color:#fff;border-color:var(--coral)}.product-copy{padding:20px 6px}.product-copy h3{font-size:15px;margin:0 0 5px}.product-copy h3 a:hover{color:var(--coral)}.rating{color:#ff625c;font-size:14px;letter-spacing:1px}.rating small{color:#9499aa;letter-spacing:0}.price{font-weight:700;margin:5px 0 0}.price del,.detail-price del{color:#a1a5b2;margin-right:6px}.navy-section{background:var(--navy)}.deal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.deal-grid article{min-height:340px;background-size:cover;background-position:center;border-radius:var(--radius);padding:45px;color:#fff}.deal-grid small{font-weight:800}.deal-grid h3{font:400 37px/1 var(--display);margin:35px 0 7px}.deal-grid p{margin:0 0 28px}.age-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}.age-grid a{text-align:center}.age-grid span{background:#f7f9fa;border-radius:5px;display:block;overflow:hidden;margin-bottom:14px}.age-grid img{width:100%;aspect-ratio:1.05;object-fit:contain;transition:.3s}.age-grid a:hover img{transform:scale(1.08)}.feature-collage{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:repeat(2,220px);gap:20px;margin-top:90px}.feature-collage a{position:relative;border-radius:6px;background-size:cover;background-position:center;padding:30px;color:#fff;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start}.feature-collage a:first-child{grid-row:span 2}.feature-collage a:last-child{grid-row:auto}.feature-collage b{font:400 29px/1.05 var(--display);max-width:210px}.feature-collage span{font-size:12px;font-weight:800;margin-top:12px}.countdown-banner{min-height:640px;background-size:cover;background-position:center;display:flex;align-items:center;color:#fff}.countdown-banner .wrap{display:flex;justify-content:flex-start}.countdown-copy{max-width:530px}.countdown-copy h2{font:400 66px/1 var(--display);margin:0 0 15px}.countdown{display:flex;gap:10px;margin:30px 0}.countdown span{display:grid;place-items:center;width:78px;height:75px;border-radius:6px;background:rgba(255,255,255,.16);font-size:10px;text-transform:uppercase}.countdown b{font-size:24px}.arrival-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.arrival-grid a{position:relative;border-radius:8px;overflow:hidden}.arrival-grid img{width:100%;aspect-ratio:.84;object-fit:cover}.arrival-grid b{position:absolute;left:28px;right:28px;bottom:26px;color:#fff;font:400 31px/1.05 var(--display);text-shadow:0 2px 12px #000}.wide-cta{min-height:615px;background-size:cover;background-position:center;display:flex;align-items:center}.wide-cta>div>div{max-width:560px}.wide-cta h2{font:400 64px/1 var(--display);margin:0 0 18px}.wide-cta p{max-width:520px;margin-bottom:30px}.top-deals{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.top-deals a{min-height:340px;border-radius:6px;background-size:cover;background-position:center;padding:30px;display:flex;flex-direction:column;align-items:flex-start}.top-deals small{font-size:11px;font-weight:800}.top-deals b{font:400 30px/1.05 var(--display);max-width:200px;margin:10px 0}.top-deals span{font-size:12px;font-weight:800}.social-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.social-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px}.social-grid a:hover{transform:translateY(-5px)}.testimonial-section{background:var(--navy);padding:75px 0 55px;margin-bottom:60px}.testimonials-slider{max-width:800px;margin-inline:auto;padding-bottom:0}.testimonial-card{display:grid;grid-template-columns:0.95fr 1.05fr;background:#fff;border-radius:8px;overflow:hidden;box-shadow:var(--shadow);transform:none}.testimonial-card>img{width:100%;height:100%;object-fit:cover}.testimonial-card>div{padding:32px 34px}.testimonial-card h2{font:400 36px/1.05 var(--display);margin:0 0 10px}.testimonial-card blockquote{font-size:14px;line-height:1.55;margin:12px 0 16px;color:var(--muted)}.testimonial-card span{display:block;color:var(--muted);font-size:12px}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.post-grid article>img,.post-grid article>a>img{width:100%;aspect-ratio:1.38;object-fit:cover;border-radius:7px}.post-grid small{display:block;color:var(--coral);font-weight:800;font-size:11px;margin:22px 0 8px}.post-grid h2,.post-grid h3{line-height:1.3;margin:0 0 16px}.post-grid h2 a:hover,.post-grid h3 a:hover{color:var(--coral)}
.page-hero,.article-hero{background:var(--mint);text-align:center;padding:95px 0}.page-hero.compact{padding:65px 0}.page-hero span,.article-hero span{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--coral)}.page-hero h1{font-size:72px;margin-top:10px}.article-hero{padding-block:110px}.article-hero .wrap{max-width:980px}.article-hero h1{font-size:clamp(56px,7vw,94px);margin-top:20px}.shop-layout{display:grid;grid-template-columns:260px 1fr;gap:55px;align-items:start}.shop-sidebar{position:sticky;top:20px;align-self:start;max-height:calc(100vh - 40px);overflow-y:auto;overscroll-behavior:contain;padding-right:6px;scrollbar-width:thin}.shop-sidebar label,.shop-sidebar h3{display:block;font-weight:800;margin:0 0 15px}.side-search{display:flex;border:1px solid var(--line);margin-bottom:38px}.side-search input{min-width:0;width:100%;border:0;padding:13px}.side-search button{border:0;background:var(--navy);color:#fff;width:45px}.shop-sidebar>a{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.shop-sidebar>a.active,.shop-sidebar>a:hover{color:var(--coral)}.sidebar-promo{min-height:190px;margin-top:24px;padding:22px 18px;background-size:cover;background-position:center;border-radius:6px}.sidebar-promo small{font-size:10px;font-weight:800}.sidebar-promo h3{font:400 39px/1 var(--display);margin:15px 0}.sidebar-promo a{font-size:12px;font-weight:800;text-decoration:underline}.shop-toolbar{height:60px;border-bottom:1px solid var(--line);margin-bottom:30px;display:flex;align-items:flex-start;justify-content:space-between}.shop-toolbar p{margin:0;color:var(--muted)}.shop-toolbar select{border:0;color:var(--ink);outline:0}.empty-state{text-align:center;padding:80px 20px;background:#fafbfc;border-radius:8px}.empty-state>span{font-size:60px;color:var(--coral)}.empty-state h2{font:400 43px/1 var(--display);margin:15px 0}.empty-state p{color:var(--muted);margin-bottom:28px}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:80px}.main-product-image{position:relative;background:#f7f8fa;border-radius:8px}.main-product-image img{width:100%;aspect-ratio:1;object-fit:contain}.thumbs{display:flex;gap:12px;margin-top:15px}.thumbs button{width:90px;border:1px solid var(--line);background:#fff;border-radius:5px;cursor:pointer}.product-summary{padding-top:20px}.product-summary .eyebrow{color:var(--coral)}.product-summary h1{font-size:65px;margin:10px 0 15px}.detail-price{font-size:25px;font-weight:800;margin:24px 0}.product-summary>p:not(.detail-price){color:var(--muted)}.benefit-list{list-style:none;padding:0;margin:26px 0}.benefit-list li{margin:7px 0}.purchase-row{display:flex;gap:12px;align-items:center;margin:30px 0}.quantity{height:50px;display:flex;border:1px solid var(--line);border-radius:26px;overflow:hidden}.quantity button{width:40px;border:0;background:#fff;cursor:pointer}.quantity input{width:35px;border:0;text-align:center;outline:0}.product-meta{display:grid;border-top:1px solid var(--line);padding-top:25px;gap:7px;font-size:13px}.product-tabs{margin-bottom:10px}.tab-buttons{border-bottom:1px solid var(--line);display:flex;gap:30px}.tab-buttons button{border:0;background:none;padding:18px 0;font-weight:800;cursor:pointer;border-bottom:2px solid transparent}.tab-buttons button.active{color:var(--coral);border-color:var(--coral)}.tab-panel{display:none;padding:40px 0;color:var(--muted)}.tab-panel.active{display:block}.tab-panel h2{color:var(--ink);font-size:39px}.account-shell{max-width:900px}.stored-cart h2{font:400 45px/1 var(--display)}.cart-item{display:grid;grid-template-columns:80px 1fr auto;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:18px 0}.cart-item img{background:#f6f7f9;border-radius:5px}.cart-item button{border:0;background:none;color:var(--coral);cursor:pointer}.cart-total{display:flex;justify-content:space-between;font-size:20px;padding:25px 0}.auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.auth-card{padding:50px;border:1px solid var(--line);border-radius:8px;display:flex;flex-direction:column;align-items:stretch;gap:18px}.auth-card h2{font-size:52px}.auth-card label:not(.checkbox){display:grid;gap:7px;font-weight:700}.auth-card input,.contact-form input,.contact-form textarea{border:1px solid var(--line);padding:14px 16px;border-radius:4px;outline:0;background:#fff}.auth-card input:focus,.contact-form input:focus,.contact-form textarea:focus{border-color:var(--teal)}.checkbox{display:flex;align-items:center;gap:8px}.coral-card{background:#fff2f1;border-color:#fff2f1}.blog-grid article{padding-bottom:25px}.blog-grid h2{font:400 35px/1.05 var(--display)}.blog-grid p{color:var(--muted)}.article-content{max-width:940px;padding:70px 0}.article-image{width:100%;border-radius:8px}.article-body{max-width:780px;margin:45px auto;font-size:17px;color:#50586f}.article-body .lead{font-size:22px;color:var(--ink)}.article-body h2{font:400 44px/1 var(--display);color:var(--ink);margin-top:45px}.article-body blockquote{font:400 32px/1.2 var(--display);color:var(--ink);border-left:4px solid var(--coral);margin:40px 0;padding:8px 0 8px 30px}.article-share{display:flex;align-items:center;justify-content:center;gap:10px;border-top:1px solid var(--line);padding-top:25px}.article-share span{font-weight:800;margin-right:10px}.article-share a,.social-links a{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:#fff}.about-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.about-intro h2,.contact-copy h2{font-size:60px;margin:12px 0 25px}.about-intro p,.contact-copy>p{color:var(--muted)}.about-images{display:grid;grid-template-columns:1fr 1fr;gap:18px}.about-images img{width:100%;height:420px;object-fit:cover;border-radius:8px}.about-images img:last-child{margin-top:50px}.values-section{padding:100px 0}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.value-grid article{background:#fff;color:var(--ink);padding:40px;border-radius:7px}.value-grid article>b{font:400 56px/1 var(--display);color:var(--coral)}.value-grid h3{font:400 34px/1 var(--display);margin:15px 0}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.contact-info{margin-top:40px;display:grid;gap:20px}.contact-info article{display:flex;gap:18px;align-items:flex-start}.contact-info article>b{width:45px;height:45px;border-radius:50%;background:var(--mint);display:grid;place-items:center;color:var(--coral);font-size:20px}.contact-info h3{margin:0}.contact-info p{margin:4px 0;color:var(--muted)}.contact-form{background:var(--mint);padding:45px;border-radius:8px;display:grid;gap:18px}.contact-form h2{font:400 48px/1 var(--display);margin:0 0 10px}.contact-form label{display:grid;gap:7px;font-weight:700}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.store-footer{margin-top:30px}.footer-main{background:var(--navy);color:#fff;padding:80px 0}.footer-grid{display:grid;grid-template-columns:1.7fr .8fr 1fr 1.3fr;gap:70px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start}.footer-brand>img{width:160px;margin-bottom:22px}.footer-grid p{color:#d5d9e9}.footer-grid h3{font:400 30px/1 var(--display);margin:0 0 22px}.footer-grid>div>a{margin:4px 0;color:#e2e5f0}.footer-grid>div>a:hover{color:var(--coral)}.social-links{display:flex;gap:8px;margin-top:12px}.social-links a{background:rgba(255,255,255,.1)}.footer-bottom{background:#161f48;color:#cdd2e5;padding:21px 0;font-size:12px}.footer-bottom .wrap{display:flex;align-items:center;justify-content:space-between}.payments{display:flex;align-items:center;gap:7px}.payments img{height:20px;width:31px}
@media(max-width:1024px){.header-main{grid-template-columns:180px 1fr auto}.header-actions{display:none}.menu-toggle{display:block}.store-nav{position:fixed;inset:0 0 0 auto;width:min(360px,88vw);background:#fff;transform:translateX(100%);padding:100px 30px 30px;box-shadow:-12px 0 40px rgba(0,0,0,.15);transition:.3s}.menu-open .store-nav{transform:none}.store-nav .wrap{width:100%;height:auto;display:grid;justify-content:stretch;gap:0}.store-nav a{padding:15px 0;border-bottom:1px solid var(--line)}.category-row{grid-template-columns:repeat(4,1fr)}.product-grid{grid-template-columns:repeat(3,1fr)}.deal-grid{grid-template-columns:1fr 1fr}.deal-grid article:last-child{grid-column:span 2}.age-grid{grid-template-columns:repeat(3,1fr)}.top-deals{grid-template-columns:1fr 1fr}.social-grid{grid-template-columns:repeat(3,1fr)}.shop-layout{grid-template-columns:220px 1fr;gap:30px;align-items:start}.product-grid-3{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1.4fr 1fr 1fr;gap:45px}.footer-grid>div:last-child{grid-column:1/-1}.contact-grid{gap:40px}.about-intro{gap:40px}}
@media(max-width:767px){.wrap{width:min(100% - 30px,1280px)}.announcement{height:38px;font-size:11px}.header-main{height:75px;grid-template-columns:128px 1fr auto;gap:12px}.store-logo img{width:122px}.header-search{justify-self:end}.header-search input{position:absolute;width:1px;height:1px;opacity:0}.header-search button{width:42px;height:42px;font-size:22px}.menu-toggle{width:42px;height:42px}.home-hero{min-height:520px;height:70vh;background-position:83% center;position:relative}.home-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(205,246,240,.98) 0%,rgba(205,246,240,.75) 47%,transparent 90%)}.hero-inner{position:relative}.hero-copy{max-width:290px}.hero-copy h1{font-size:61px}.hero-copy h2{font-size:38px}.section{padding-block:70px}.section-heading{margin-bottom:35px}.section-heading h2{font-size:42px}.category-row{grid-template-columns:repeat(3,1fr);gap:16px 10px}.category-chip img{width:100px}.category-chip b{font-size:12px}.split-promos{grid-template-columns:1fr;margin-top:45px}.split-promos article{min-height:290px;padding:35px}.product-grid,.product-grid-3{grid-template-columns:1fr 1fr;gap:20px 12px}.product-copy{padding-inline:2px}.product-copy h3{font-size:13px}.deal-grid{grid-template-columns:1fr}.deal-grid article:last-child{grid-column:auto}.age-grid{grid-template-columns:1fr 1fr}.feature-collage{grid-template-columns:1fr;grid-template-rows:none}.feature-collage a,.feature-collage a:first-child,.feature-collage a:last-child{min-height:250px;grid-row:auto}.countdown-banner{min-height:570px;background-position:62% center;position:relative}.countdown-banner:before{content:"";position:absolute;inset:0;background:rgba(17,28,70,.42)}.countdown-banner .wrap{position:relative}.countdown-copy h2{font-size:50px}.countdown span{width:62px}.arrival-grid{grid-template-columns:1fr}.arrival-grid img{aspect-ratio:1.15}.wide-cta{min-height:560px;background-position:66% center}.wide-cta>div>div{max-width:300px}.wide-cta h2{font-size:48px}.top-deals{grid-template-columns:1fr}.social-grid{grid-template-columns:1fr 1fr}.testimonial-section{margin-bottom:100px}.testimonial-card{grid-template-columns:1fr;transform:translateY(50px)}.testimonial-card>div{padding:35px}.post-grid{grid-template-columns:1fr}.page-hero,.article-hero{padding:70px 0}.page-hero h1{font-size:53px}.shop-layout{grid-template-columns:1fr;padding-top:50px}.shop-sidebar{display:none}.shop-toolbar{align-items:center}.product-detail{grid-template-columns:1fr;gap:35px}.product-summary h1{font-size:51px}.purchase-row{flex-wrap:wrap}.tab-buttons{gap:15px;overflow:auto}.auth-grid{grid-template-columns:1fr}.auth-card{padding:32px 24px}.about-intro,.contact-grid{grid-template-columns:1fr;gap:40px}.about-intro h2,.contact-copy h2{font-size:49px}.about-images img{height:280px}.value-grid{grid-template-columns:1fr}.contact-form{padding:30px 20px}.form-row{grid-template-columns:1fr}.article-content{padding-inline:15px}.article-body{font-size:16px}.article-body blockquote{font-size:27px}.footer-grid{grid-template-columns:1fr 1fr;gap:45px 25px}.footer-brand,.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom .wrap{display:grid;gap:15px;text-align:center;justify-content:center}.payments{justify-content:center}}
@media(max-width:420px){.home-hero{background-position:85% center!important}.category-row{grid-template-columns:1fr 1fr}.product-grid,.product-grid-3{grid-template-columns:1fr 1fr}.product-image>img{padding:0}.quick-actions{display:none}.product-copy h3{min-height:39px}.rating{font-size:11px}.price{font-size:12px}.footer-grid{grid-template-columns:1fr}.footer-grid>div{grid-column:auto!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.card-bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;transition:transform .35s ease}
.feature-collage a,.top-deals a,.deal-grid article{position:relative;overflow:hidden}
.feature-collage a:hover .card-bg-img,.top-deals a:hover .card-bg-img,.deal-grid article:hover .card-bg-img{transform:scale(1.05)}
.feature-collage a>b,.feature-collage a>span,.top-deals a>small,.top-deals a>b,.top-deals a>span,.deal-grid article>small,.deal-grid article>h3,.deal-grid article>p,.deal-grid article>.white-button,.split-promos article>*, .distortion-canvas-wrap>*:not(canvas){position:relative;z-index:2}
.product-badges{position:absolute!important;top:10px!important;left:10px!important;z-index:3!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;pointer-events:none!important}
.badge-new{background:#e31b23!important;color:#fff!important;border-radius:6px!important;padding:3px 9px!important;font-size:11px!important;font-weight:700!important;line-height:1.3!important;box-shadow:0 2px 6px rgba(227,27,35,.35)!important;display:inline-block!important}
.badge-sale{background:#ff5252!important;color:#fff!important;border-radius:6px!important;padding:3px 9px!important;font-size:11px!important;font-weight:700!important;line-height:1.3!important;box-shadow:0 2px 6px rgba(255,82,82,.35)!important;display:inline-block!important}
.badge-custom{position:absolute!important;bottom:10px!important;left:10px!important;z-index:3!important;background:#ff4f81!important;color:#fff!important;border-radius:6px!important;padding:3px 9px!important;font-size:11px!important;font-weight:700!important;line-height:1.3!important;box-shadow:0 2px 6px rgba(255,79,129,.35)!important;pointer-events:none!important;display:inline-block!important}
.product-card .product-copy h3,.product-copy h3{font-size:14px!important;line-height:1.35!important;margin:0 0 5px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;text-overflow:ellipsis!important;min-height:38px!important}
.shop-sidebar>.sidebar-category-group:first-child>.parent-category-row,.shop-sidebar>.all-products-group>.parent-category-row{padding-top:0!important}
.footer-contact p{margin:4px 0!important}
.ql-align-justify,[style*="text-align: justify"],[style*="text-align:justify"]{text-align:justify!important;text-justify:inter-word}
.ql-align-center,[style*="text-align: center"],[style*="text-align:center"]{text-align:center!important}
.ql-align-right,[style*="text-align: right"],[style*="text-align:right"]{text-align:right!important}
.ql-align-left,[style*="text-align: left"],[style*="text-align:left"]{text-align:left!important}
.promo-rich-desc, .promo-rich-desc p { color: inherit; font-size: inherit; line-height: inherit; margin: 0 0 15px; }
.wide-cta .wide-cta-desc, .wide-cta .wide-cta-desc p { max-width: 520px; margin: 15px 0 25px; color: var(--ink); }
.contact-copy .contact-desc, .contact-copy .contact-desc p { color: var(--muted); margin-bottom: 20px; }
.empty-state .empty-desc, .empty-state .empty-desc p { color: var(--muted); margin-bottom: 28px; }
.tab-panel .product-shipping-info, .tab-panel .product-shipping-info p, .tab-panel .product-return-policy, .tab-panel .product-return-policy p { color: var(--muted); }
.section-heading h2 { color: var(--coral, #ff6e69) !important; }
.section-heading.light h2 { color: #ffffff !important; }

/* ========================================================
   HOME PAGE RESPONSIVE SYSTEM (Mobile <= 767px & Tablet <= 1024px)
   STRICT GUARD: Desktop (> 1024px) remains 100% untouched.
   ======================================================== */

/* Prevent horizontal scroll from any animated or wide elements */
main {
    overflow-x: clip;
    width: 100%;
}

/* Tighter desktop rhythm between content sections. */
@media (min-width: 1025px) {
    .section {
        padding: 75px 0 40px;
    }
    .collections-section,
    .best-selling-section,
    .arrivals {
        padding-bottom: 0;
    }
    .section-heading {
        margin-bottom: 38px;
    }
    .testimonial-section {
        margin-bottom: 35px;
    }
}

/* --- TABLET (768px - 1024px) --- */
@media (max-width: 1024px) {
    .section {
        padding-block: 65px;
    }
    .section-heading {
        margin-bottom: 35px;
    }
    .section-heading h2 {
        font-size: clamp(44px, 5vw, 56px);
        line-height: 1.05;
    }
    .category-row-centered {
        gap: 24px 18px !important;
    }
    .category-row-centered .category-chip {
        flex: 0 0 140px;
    }
    .testimonial-section {
        padding: 60px 0 45px;
        margin-bottom: 50px;
    }
    .testimonials-slider {
        max-width: 680px;
    }
    .testimonials-slider .testimonial-card {
        transform: none;
    }
    .testimonial-card > div {
        padding: 24px 26px;
    }
    .testimonial-card h2 {
        font-size: 28px;
        margin-bottom: 8px;
    }
    .testimonial-card blockquote {
        font-size: 13.5px;
        line-height: 1.5;
        margin: 10px 0 12px;
    }
    .feature-collage {
        margin-top: 60px;
    }
}

/* --- MOBILE PHONES (<= 767px) --- */
@media (max-width: 767px) {
    /* Base spacing & typography */
    .section {
        padding-block: 45px;
    }
    .collections-section,
    .best-selling-section,
    .arrivals {
        padding-bottom: 0;
    }
    .section-heading {
        margin-bottom: 24px;
    }
    .section-heading > span {
        display: block;
        font-size: 13px;
        font-weight: 800;
        letter-spacing: 0.08em;
        margin-bottom: 8px;
        color: var(--coral, #ff6e69);
    }
    .section-heading.light > span {
        color: #ffffff;
    }
    .section-heading h2 {
        font-size: clamp(44px, 11vw, 56px) !important;
        line-height: 1.04;
        color: var(--coral, #ff6e69) !important;
    }
    .section-heading.light h2 {
        color: #ffffff !important;
    }

    /* 1. Hero Section */
    .home-hero {
        min-height: 440px;
        height: auto;
        padding: 50px 0 40px;
        background-position: 83% center !important;
    }
    .hero-inner {
        padding-top: 8px;
        padding-bottom: 8px;
    }
    .hero-copy {
        max-width: min(270px, 62%);
    }
    .hero-copy > span {
        font-size: 11px;
        letter-spacing: 0.06em;
        margin-bottom: 6px;
    }
    .hero-copy h1 {
        font-size: clamp(34px, 9vw, 48px);
        line-height: 1.0;
        word-break: break-word;
        margin-bottom: 8px;
    }
    .hero-copy h2 {
        font-size: clamp(20px, 5.2vw, 28px);
        margin: 8px 0 22px;
    }
    .hero-shapes .shape-badge {
        top: 14px;
        right: 12px;
        padding: 5px 12px;
        font-size: 10.5px;
        border-radius: 20px;
    }
    .hero-shapes .shape-badge i {
        font-size: 14px;
    }
    .hero-shapes .shape-balloon {
        width: 44px;
        right: 6%;
        top: 12%;
    }
    .hero-shapes .shape-star {
        width: 28px;
        left: 5%;
        bottom: 12%;
    }

    /* 2. Collections / Category Chips */
    .category-row-centered {
        gap: 16px 10px !important;
    }
    .category-row-centered .category-chip {
        flex: 0 0 calc(33.333% - 8px);
        max-width: 115px;
    }
    .category-chip-thumb {
        width: 82px;
        height: 82px;
        margin-bottom: 6px;
        border-width: 3px;
    }
    .category-row-centered .category-chip b {
        font-size: 12px;
        line-height: 1.25;
    }
    .category-chip-count {
        font-size: 10.5px;
    }

    /* 3. Split Promos */
    .split-promos {
        gap: 16px;
        margin-top: 32px;
    }
    .split-promos article {
        min-height: 220px;
        padding: 26px 20px;
        border-radius: 8px;
    }
    .split-promos h3 {
        font-size: 28px;
        margin-bottom: 6px;
    }
    .split-promos p,
    .split-promos .promo-rich-desc,
    .split-promos .promo-rich-desc p {
        width: 100% !important;
        max-width: 360px !important;
        font-size: 13px !important;
        line-height: 1.45 !important;
        margin-bottom: 16px !important;
    }
    .split-promos article > *:not(canvas) {
        position: relative !important;
        z-index: 2 !important;
    }

    /* 4. Best Selling Slider */
    .best-selling-section {
        padding-top: 20px;
    }
    .best-selling-slider {
        width: 100%;
        padding: 4px 0 12px;
    }
    .best-selling-slider-wrap .slider-arrow {
        display: none !important;
    }
    .best-selling-slider .swiper-slide .product-image > img {
        max-height: 150px;
        padding: 8px;
    }
    .best-selling-slider .swiper-slide .product-copy {
        padding: 10px 4px 4px;
    }
    .best-selling-slider .swiper-slide .product-copy h3 {
        font-size: 13px;
        min-height: 34px;
    }
    .best-selling-slider .swiper-slide .product-copy .price {
        font-size: 14px;
    }

    /* 5. Limited Deals (Navy Section) */
    .deal-grid {
        gap: 16px;
    }
    .deal-grid article {
        min-height: 230px;
        padding: 26px 18px;
    }
    .deal-grid h3 {
        font-size: 30px;
        margin: 16px 0 6px;
    }
    .deal-grid p {
        font-size: 13px;
        margin-bottom: 18px;
    }

    /* 6. Occasion & Age Grid */
    .age-grid {
        gap: 12px 8px;
    }
    .age-grid span {
        margin-bottom: 6px;
        border-radius: 6px;
    }
    .age-grid b {
        font-size: 11.5px;
        line-height: 1.25;
        display: block;
    }

    /* 7. Feature Collage */
    .feature-collage {
        margin-top: 30px;
    }

    /* 8. Circular New Arrivals */
    .arrival-grid-circular {
        gap: 20px !important;
    }
    .arrival-grid-circular .arrival-circle-thumb {
        width: min(190px, 56vw) !important;
        border-width: 4px !important;
        margin-bottom: 10px !important;
    }
    .arrival-grid-circular .arrival-circle-card b {
        font-size: 22px !important;
        margin-bottom: 4px !important;
    }
    .arrival-grid-circular .arrival-circle-count {
        font-size: 11px !important;
        padding: 2px 10px !important;
    }

    /* 9. Wide CTA */
    .wide-cta {
        min-height: 360px;
        padding: 35px 0;
        background-position: center;
    }
    .wide-cta > div > div {
        max-width: 100%;
        background: rgba(255, 255, 255, 0.9);
        backdrop-filter: blur(4px);
        -webkit-backdrop-filter: blur(4px);
        padding: 22px 18px;
        border-radius: 10px;
    }
    .wide-cta h2 {
        font-size: clamp(28px, 6.5vw, 38px);
        margin: 6px 0 10px;
    }
    .wide-cta p,
    .wide-cta .wide-cta-desc,
    .wide-cta .wide-cta-desc p {
        font-size: 13px !important;
        margin-bottom: 18px !important;
    }

    /* 10. Top Deals */
    .top-deals {
        gap: 14px;
    }
    .top-deals a {
        min-height: 200px;
        padding: 22px 18px;
    }
    .top-deals b {
        font-size: 24px;
        margin: 6px 0;
    }

    /* 11. Social Grid (3-column Instagram style) */
    .social-grid {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 8px !important;
    }
    .social-grid img {
        border-radius: 6px;
    }

    /* 12. Testimonials Section */
    .testimonial-section {
        padding: 45px 0 35px;
        margin-bottom: 40px;
    }
    .testimonials-slider {
        max-width: 100%;
    }
    .testimonials-slider .testimonial-card {
        transform: none;
    }
    .testimonial-card > img {
        max-height: 165px;
        aspect-ratio: 16/10;
        object-fit: cover;
    }
    .testimonial-card > div {
        padding: 16px 14px;
    }
    .testimonial-card h2 {
        font-size: clamp(20px, 5.2vw, 25px);
        margin-bottom: 6px;
    }
    .testimonial-card blockquote {
        font-size: 12.5px;
        line-height: 1.45;
        margin: 8px 0 10px;
    }

    /* 13. Blog Post Grid */
    .post-grid {
        gap: 18px;
    }
    .post-grid article h3 {
        font-size: 14px;
        margin-bottom: 6px;
    }
}

/* --- SMALL MOBILE PHONES (<= 380px) --- */
@media (max-width: 380px) {
    .category-row-centered .category-chip {
        flex: 0 0 calc(50% - 6px);
    }
    .category-chip-thumb {
        width: 72px;
        height: 72px;
    }
}

/* ========================================================
   BREADCRUMBS & HERO SEPARATOR
   ======================================================== */
.hero-sep {
    margin: 0 7px;
    font-size: 13px;
    opacity: 0.65;
    font-weight: 400;
    vertical-align: middle;
}
.shop-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px 6px;
    font-size: 13.5px;
    line-height: 1.5;
}
.shop-breadcrumb .breadcrumb-link {
    color: #64748b;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.15s ease;
}
.shop-breadcrumb .breadcrumb-link:hover {
    color: var(--coral, #ff4f81);
}
.shop-breadcrumb .breadcrumb-sep {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #94a3b8;
    margin: 0 1px;
    flex-shrink: 0;
    user-select: none;
}
.shop-breadcrumb .breadcrumb-sep svg {
    display: block;
    width: 10px;
    height: 10px;
}
.shop-breadcrumb .breadcrumb-title {
    color: var(--navy, #202b5c);
    font-weight: 700;
}

/* ========================================================
   HEADER CUSTOM COLOR SCHEME (#FBF1F9 / #DE89B7)
   ======================================================== */
.announcement,
.mobile-announcement {
    background: #DE89B7 !important;
    color: #ffffff !important;
}
.announcement span,
.mobile-announcement-dot {
    color: #ffffff !important;
}
.store-header {
    background: #FBF1F9 !important;
}
.header-main-bar {
    background: #FBF1F9 !important;
    width: 100%;
}
.header-search button,
.mobile-search-form button {
    background: #DE89B7 !important;
    color: #ffffff !important;
}
.header-search button:hover {
    background: #c56e9e !important;
}
.cart-icon-wrapper .cart-badge,
.header-cart-btn .cart-badge,
.mobile-cart-badge {
    background: #DE89B7 !important;
    color: #ffffff !important;
    box-shadow: 0 2px 5px rgba(222, 137, 183, 0.45) !important;
}
.header-search {
    background: #ffffff !important;
    border: 1.5px solid rgba(222, 137, 183, 0.35) !important;
}
.header-search input {
    background: #ffffff !important;
}
.header-cart-btn {
    background: #ffffff !important;
    border: 1.5px solid rgba(222, 137, 183, 0.35) !important;
}
.header-cart-btn:hover {
    border-color: #DE89B7 !important;
    color: #DE89B7 !important;
}

/* Nav bar (#DE89B7 with white text) */
.store-nav {
    background: #DE89B7 !important;
    border-top: none !important;
    border-bottom: none !important;
}
.store-nav > .wrap > a,
.store-nav .nav-dropdown > a {
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    position: relative;
    padding: 6px 0;
    transition: opacity 0.2s ease !important;
}
.store-nav a .fa-chevron-down {
    color: #ffffff !important;
}
.store-nav > .wrap > a:hover,
.store-nav .nav-dropdown:hover > a {
    color: #ffffff !important;
    opacity: 0.85 !important;
}
.store-nav > .wrap > a.active,
.store-nav .nav-dropdown > a.active {
    color: #ffffff !important;
    font-weight: 800 !important;
}
.store-nav > .wrap > a.active::after,
.store-nav .nav-dropdown > a.active::after {
    content: '' !important;
    position: absolute !important;
    bottom: -4px !important;
    left: 0 !important;
    right: 0 !important;
    height: 2.5px !important;
    background: #ffffff !important;
    border-radius: 2px !important;
}

/* Dropdown Menu (Keep clean readable dark text on white box) */
.store-nav .dropdown-menu {
    background: #ffffff !important;
    border: 1px solid rgba(222, 137, 183, 0.25) !important;
    box-shadow: 0 16px 36px rgba(32, 43, 92, 0.12) !important;
}
.store-nav .dropdown-menu a {
    color: var(--ink, #17224d) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    border-bottom: 1px solid #f6f7fa !important;
    opacity: 1 !important;
}
.store-nav .dropdown-menu a::after {
    display: none !important;
}
.store-nav .dropdown-menu a:hover,
.store-nav .dropdown-menu a.active {
    background: #FBF1F9 !important;
    color: #DE89B7 !important;
}

/* ========================================================
   FOOTER CUSTOM COLOR SCHEME (#FBF1F9 / #DE89B7)
   ======================================================== */
.store-footer {
    margin-top: 40px;
}

/* 1. Large Section (#ffc9e6) */
.footer-main {
    background: #ffc9e6 !important;
    color: var(--ink, #17224d) !important;
    padding: 70px 0 60px 0 !important;
    border-top: 1px solid rgba(222, 137, 183, 0.25) !important;
}
.footer-brand > img {
    width: 155px;
    max-height: 52px;
    margin-bottom: 20px;
}
.footer-description,
.footer-description p {
    color: #50586f !important;
    font-size: 14px;
    line-height: 1.6;
}
.footer-description p {
    margin-bottom: 10px;
}
.footer-description p:last-child {
    margin-bottom: 0;
}
.footer-description a {
    color: #DE89B7 !important;
    text-decoration: underline;
}
.footer-description strong,
.footer-description b {
    color: var(--ink, #17224d) !important;
}

.footer-grid h3 {
    font: 400 28px/1 var(--display, 'Mouse Memoirs', sans-serif) !important;
    color: var(--ink, #17224d) !important;
    margin: 0 0 18px !important;
    letter-spacing: 0.02em;
}
.footer-grid > div > a {
    margin: 5px 0 !important;
    color: #50586f !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    transition: color 0.2s ease, transform 0.2s ease !important;
}
.footer-grid > div > a:hover {
    color: #DE89B7 !important;
    transform: translateX(3px);
}

/* Contact Column */
.footer-contact p {
    color: #50586f !important;
    font-size: 13.5px !important;
    margin: 6px 0 !important;
}
.footer-contact a {
    color: #50586f !important;
    transition: color 0.2s ease !important;
}
.footer-contact a:hover {
    color: #DE89B7 !important;
}

/* Social Links */
.social-links {
    display: flex;
    gap: 10px;
    margin-top: 18px;
}
.social-links a {
    background: #ffffff !important;
    color: #DE89B7 !important;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: inline-grid;
    place-items: center;
    border: 1.5px solid rgba(222, 137, 183, 0.35) !important;
    box-shadow: 0 2px 6px rgba(222, 137, 183, 0.15) !important;
    font-weight: 700;
    transition: all 0.2s ease !important;
}
.social-links a:hover {
    background: #DE89B7 !important;
    color: #ffffff !important;
    border-color: #DE89B7 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(222, 137, 183, 0.3) !important;
}

/* 2. Small Bottom Bar (#DE89B7) */
.footer-bottom {
    background: #DE89B7 !important;
    color: #ffffff !important;
    padding: 18px 0 !important;
    font-size: 13px !important;
    border-top: none !important;
}
.footer-bottom .wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.footer-bottom span {
    color: #ffffff !important;
    font-weight: 500;
}
.payments {
    display: flex;
    align-items: center;
    gap: 8px;
}
.payments img {
    height: 22px;
    width: 35px;
    border-radius: 4px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

/* Price Slider #DE89B7 Scheme */
.tw-slider-rail {
    background: rgba(222, 137, 183, 0.25) !important;
}
.tw-slider-bar {
    background: #DE89B7 !important;
}
.tw-slider-handle {
    background: #DE89B7 !important;
}
.tw-slider-handle:hover,
.tw-slider-handle:focus-visible,
.tw-slider-handle.is-active {
    background: #c56e9e !important;
}
.sidebar-price-reset-btn {
    background: #DE89B7 !important;
}
.sidebar-price-reset-btn:hover {
    background: #c56e9e !important;
}

/* ========================================================
   TESTIMONIALS SECTION THEME
   ======================================================== */
.testimonial-section {
    background: #a551cd !important;
}
.testimonial-section .section-heading.light > span {
    color: #DE89B7 !important;
}
.testimonial-section .section-heading.light h2 {
    color: #ffffff !important;
}
.testimonials-slider .swiper-pagination-bullet {
    background: #ffffff !important;
    opacity: 0.35 !important;
}
.testimonials-slider .swiper-pagination-bullet-active {
    background: #DE89B7 !important;
    opacity: 1 !important;
    box-shadow: 0 0 10px rgba(222, 137, 183, 0.6) !important;
}

/* ========================================================
   SHOP SIDEBAR & STICKY / FLOATING FILTER SYSTEM
   ======================================================== */
.shop-sidebar {
    position: sticky;
    top: var(--sidebar-sticky-top, 235px);
    align-self: start;
    max-height: calc(100vh - 25px);
    overflow-y: auto;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
    padding-right: 8px;
    scrollbar-width: thin;
    scrollbar-color: #cbd5e1 transparent;
    transition: top 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: top;
}
@media (min-width: 1025px) {
    body:has(#desktopHeaderWrapper.is-hidden) .shop-sidebar,
    .shop-sidebar.is-header-hidden {
        top: 20px !important;
    }
}
.shop-sidebar::-webkit-scrollbar {
    width: 6px;
}
.shop-sidebar::-webkit-scrollbar-track {
    background: rgba(226, 232, 240, 0.4);
    border-radius: 4px;
}
.shop-sidebar::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 4px;
    transition: background 0.2s ease;
}
.shop-sidebar::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

.sidebar-mobile-header,
.sidebar-mobile-footer,
.floating-filter-btn,
.shop-filter-backdrop,
.toolbar-filter-btn {
    display: none !important;
}

@media (max-width: 1024px) {
    .shop-layout {
        display: block !important;
        grid-template-columns: 1fr !important;
        padding-top: 15px !important;
    }

    .shop-sidebar {
        display: flex !important;
        flex-direction: column !important;
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        left: auto !important;
        width: min(380px, 88vw) !important;
        height: 100% !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        background: #ffffff !important;
        z-index: 99999 !important;
        transform: translateX(105%) !important;
        transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.32s ease !important;
        box-shadow: -8px 0 32px rgba(23, 34, 77, 0.22) !important;
        padding: 0 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        overscroll-behavior: contain !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    .shop-sidebar.is-open {
        transform: translateX(0) !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    body.filter-open {
        overflow: hidden !important;
    }

    .sidebar-mobile-header {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 16px 20px !important;
        background: #ffffff !important;
        border-bottom: 1px solid var(--line, #edf0f5) !important;
        position: sticky !important;
        top: 0 !important;
        z-index: 10 !important;
        flex-shrink: 0 !important;
    }

    .sidebar-mobile-title {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        font-size: 16px !important;
        font-weight: 800 !important;
        color: var(--navy, #202b5c) !important;
    }

    .sidebar-mobile-title svg {
        color: var(--coral, #ff6e69) !important;
    }

    .sidebar-mobile-close {
        width: 34px !important;
        height: 34px !important;
        border-radius: 50% !important;
        border: 1px solid var(--line, #edf0f5) !important;
        background: #f8f9fb !important;
        color: var(--ink, #17224d) !important;
        display: grid !important;
        place-items: center !important;
        cursor: pointer !important;
        padding: 0 !important;
        transition: all 0.2s ease !important;
    }

    .sidebar-mobile-close:hover {
        background: var(--navy, #202b5c) !important;
        color: #ffffff !important;
    }

    .shop-sidebar > .sidebar-price-filter,
    .shop-sidebar > .sidebar-category-group,
    .shop-sidebar > .sidebar-promo {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .shop-sidebar > .sidebar-price-filter {
        padding-top: 18px !important;
    }

    .sidebar-mobile-footer {
        display: block !important;
        position: sticky !important;
        bottom: 0 !important;
        margin-top: auto !important;
        width: 100% !important;
        background: #ffffff !important;
        padding: 14px 20px !important;
        border-top: 1px solid var(--line, #edf0f5) !important;
        box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.06) !important;
        z-index: 11 !important;
    }

    .btn-sidebar-apply {
        width: 100% !important;
        height: 44px !important;
        border-radius: 24px !important;
        background: var(--navy, #202b5c) !important;
        color: #ffffff !important;
        font-size: 14px !important;
        font-weight: 700 !important;
        border: none !important;
        cursor: pointer !important;
        transition: background 0.2s ease !important;
    }

    .btn-sidebar-apply:hover {
        background: var(--coral, #ff6e69) !important;
    }

    .shop-filter-backdrop {
        display: block !important;
        position: fixed !important;
        inset: 0 !important;
        background: rgba(17, 24, 39, 0.5) !important;
        backdrop-filter: blur(2px) !important;
        -webkit-backdrop-filter: blur(2px) !important;
        z-index: 9998 !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transition: opacity 0.3s ease !important;
    }

    .shop-filter-backdrop.is-active {
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    /* Floating Filter Trigger Button ("đi theo người dùng") */
    .floating-filter-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        position: fixed !important;
        bottom: 22px !important;
        left: 50% !important;
        transform: translateX(-50%) translateZ(0) !important;
        background: #DE89B7 !important;
        color: #ffffff !important;
        padding: 11px 22px !important;
        border-radius: 30px !important;
        border: 1px solid rgba(255, 255, 255, 0.25) !important;
        box-shadow: 0 8px 24px rgba(222, 137, 183, 0.42), 0 2px 6px rgba(0, 0, 0, 0.12) !important;
        font-size: 13.5px !important;
        font-weight: 700 !important;
        letter-spacing: 0.02em !important;
        cursor: pointer !important;
        z-index: 900 !important;
        transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease !important;
        white-space: nowrap !important;
    }

    .floating-filter-btn:hover {
        background: #c56e9e !important;
        transform: translateX(-50%) translateY(-2px) !important;
        box-shadow: 0 12px 28px rgba(222, 137, 183, 0.5) !important;
    }

    .floating-filter-btn:active {
        transform: translateX(-50%) scale(0.96) !important;
    }

    .floating-filter-btn svg {
        color: #ffffff !important;
        stroke: #ffffff !important;
        transition: color 0.2s ease !important;
    }

    .floating-filter-btn:hover svg {
        color: #ffffff !important;
        stroke: #ffffff !important;
    }

    .filter-count-badge {
        display: inline-block !important;
        color: #ffffff !important;
        font-size: 10px !important;
        line-height: 1 !important;
    }

    .shop-toolbar {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        height: auto !important;
        padding-bottom: 14px !important;
        gap: 12px !important;
    }

    .shop-toolbar-controls {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
        width: 100% !important;
    }

    .toolbar-filter-btn {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        background: #f8f9fb !important;
        border: 1px solid var(--line, #e2e8f0) !important;
        border-radius: 6px !important;
        padding: 8px 14px !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        color: var(--navy, #202b5c) !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
    }

    .toolbar-filter-btn:hover {
        background: var(--navy, #202b5c) !important;
        color: #ffffff !important;
    }

    .toolbar-filter-btn svg {
        color: var(--coral, #ff6e69) !important;
    }

    .toolbar-filter-btn:hover svg {
        color: #ffffff !important;
    }

    #shop-sort-select {
        flex: 1 !important;
        max-width: 210px !important;
        background: #f8f9fb !important;
        border: 1px solid var(--line, #e2e8f0) !important;
        border-radius: 6px !important;
        padding: 8px 10px !important;
        font-size: 12.5px !important;
        font-weight: 600 !important;
        color: var(--ink, #17224d) !important;
    }
}

/* ========================================================
   WCAG 2 AA ACCESSIBILITY COLOR CONTRAST FIXES
   ======================================================== */
.announcement,
.mobile-announcement {
    background: #9c356b !important;
    color: #ffffff !important;
}
.announcement span,
.mobile-announcement-dot {
    color: #ffffff !important;
}
.store-nav {
    background: #9c356b !important;
}
.store-nav a,
.store-nav a.active,
.store-nav a:hover,
.store-nav .nav-dropdown > a,
.store-nav .nav-dropdown > a.active {
    color: #ffffff !important;
    text-decoration: none !important;
}
.footer-bottom {
    background: #9c356b !important;
    color: #ffffff !important;
}
.footer-bottom span,
.footer-bottom a {
    color: #ffffff !important;
}
.section-heading > span,
.eyebrow,
.hero-copy > span {
    color: #b82352 !important;
}
.section-heading.light > span {
    color: #ffffff !important;
}
.category-chip-count {
    color: #495067 !important;
}
.category-chip b {
    color: #17224d !important;
}
.rating small {
    color: #495067 !important;
}
.badge-custom {
    background: #b8174a !important;
    color: #ffffff !important;
}

.section-heading h2 { color: #17224d !important; }
.section-heading.light h2 { color: #ffffff !important; }

/* Brand logo: keep transparent artwork proportional in header and footer. */
.store-logo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-width: 0;
}
.store-logo img {
    width: auto;
    height: auto;
    max-width: 180px;
    max-height: 72px;
    object-fit: contain;
    background: transparent;
}
.footer-brand > img {
    width: auto !important;
    height: auto;
    max-width: 190px;
    max-height: 110px !important;
    object-fit: contain;
    background: transparent;
}

@media (max-width: 767px) {
    .store-logo img,
    .mobile-store-logo img,
    .mobile-drawer-logo img {
        width: auto;
        height: auto;
        max-width: 120px;
        max-height: 52px;
        object-fit: contain;
        background: transparent;
    }

    .footer-brand > img {
        max-width: 160px;
        max-height: 96px !important;
    }
}
