/* Public storefront only: orange/navy identity from the September 26 reference. */
:root{--shop-ink:#101c46;--shop-muted:#65718a;--shop-border:#e2e7f0;--shop-radius:12px;--primary-light:color-mix(in srgb,var(--primary) 9%,white);--bs-link-color:var(--primary-dark);--bs-link-hover-color:var(--primary);--shop-blue:var(--primary);--home-ink:var(--shop-ink);--home-muted:var(--shop-muted)}
body{background:#f8faff;color:var(--shop-ink)}
h1,h2,h3,h4,h5,h6{color:var(--shop-ink)}
.shop-utility{background:#eef2f8;color:#53617a;border-bottom:1px solid #e5eaf2}
.shop-header{background:#fff;border-bottom:1px solid var(--shop-border)}
.shop-header-main{padding:20px 0;gap:32px}.shop-brand{color:var(--shop-ink)}
.brand-bag path[fill="#1647ff"]{fill:var(--shop-ink)}
.brand-bag path[stroke="#1647ff"]{stroke:var(--primary)}
.shop-search{border:1px solid #d6deeb;border-radius:8px;height:45px;background:#f8faff}
.shop-search input{background:transparent}.shop-search button{border-radius:0 7px 7px 0}
.shop-navigation{padding-bottom:12px;gap:28px;min-height:54px}
.shop-navigation .nav-dropdown{background:var(--primary);border-radius:7px;padding:11px 17px;color:white;font-size:12px}
.shop-navigation .nav-dropdown:hover,.shop-navigation .nav-dropdown:focus{background:var(--primary-dark);color:white}
.shop-navigation>a{font-size:12px;font-weight:500}.shop-navigation .dropdown-menu{border:1px solid var(--shop-border);border-radius:10px;box-shadow:0 12px 32px #12234a12}
.dropdown-item:hover,.dropdown-item:focus{background:var(--primary-light);color:var(--primary-dark)}
.shop-count{background:var(--primary)}
.home-hero{margin-top:20px;border-radius:14px;background:#fff0e5;border:1px solid #f7dfce}
.lifestyle-hero{min-height:390px}.lifestyle-hero .hero-copy{padding:55px 4.8%;width:54%}
.lifestyle-hero h1{font-size:clamp(30px,3.25vw,45px);letter-spacing:-1.5px;line-height:1.15}
.lifestyle-hero p{font-size:14px;max-width:370px;color:#4c5b76;line-height:1.65}
.hero-backdrop img{object-fit:cover;width:100%;height:100%}.hero-backdrop:after{display:none}
.hero-benefits{gap:14px;white-space:normal;margin-top:25px;font-size:10px;flex-wrap:wrap}.hero-benefits i{color:var(--primary);font-size:20px}
.home-button{border-radius:8px;padding:13px 22px;font-size:12px;box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 15%,transparent)}
.home-sections{gap:30px;padding-top:18px}.home-services-band{order:-1;padding:0;background:transparent;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}
.home-services-band>a{display:flex;gap:15px;align-items:center;padding:18px 20px;border:1px solid #e3eaf5;border-radius:9px;background:#f0f5fc;color:var(--shop-ink)}
.home-services-band i{color:var(--primary);font-size:25px}.home-services-band strong{font-size:12px}.home-services-band small{font-size:10px;color:var(--shop-muted)}
.section-heading h2{font-size:22px;font-weight:700;letter-spacing:-.6px}.section-heading>a{color:var(--primary-dark);font-size:11px;font-weight:500}
.home-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.home-category{border:1px solid var(--shop-border);border-radius:10px;overflow:hidden;background:#fff;gap:0;padding:0;transition:border-color .15s ease}
.home-category img{width:100%;height:145px;border-radius:0;background:#edf1f7;padding:16px;object-fit:contain}
.home-category>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:43px;margin:0;padding:8px;font-size:12px;font-weight:600;color:var(--shop-ink)}
.home-category:hover{border-color:var(--primary);background:white}.category-upcoming{margin:0;padding:1px 7px;font-size:9px}
.home-promo{border-radius:12px;background:#fff0e5;border:1px solid #f7dfce}.home-promo:nth-child(2){background:#f3eee8;border-color:#e9e0d6}.home-promo:nth-child(3){background:#edf3fb;border-color:#dee7f5}
.home-promo h2{color:var(--shop-ink)}.home-promo p{color:#5c6577}
.product-card,.catalog-surface .product-card{border-radius:11px;border-color:#e2e7f0;background:#fff}
.product-card:hover,.catalog-surface .product-card:hover{border-color:color-mix(in srgb,var(--primary) 45%,white)}
.product-card .product-image,.catalog-surface .product-image{background:#f0f3f8}
.product-card .product-title,.product-card .current-price{color:var(--shop-ink)}
.product-card .shop-purchase .btn-action{border:1px solid #f1d9ca;border-radius:7px;color:var(--primary-dark);background:#fff8f3}
.product-card .product-actions .btn-action{color:var(--shop-ink)}
.badge-sale{background:#fff0e6;color:var(--primary-dark)}
.storefront-rail .product-rail-button{color:var(--primary-dark);border-color:#e2e7f0}
.shop-newsletter{background:#fff0e5;border:1px solid #f7dfce;border-radius:12px;padding:24px;gap:26px}
.newsletter-input{border-radius:8px;border-color:#e5d8cf}.newsletter-art{margin-bottom:-24px}
.shop-footer{padding-top:44px}.shop-footer .brand-bag path[fill="#1647ff"]{fill:var(--primary)}.shop-footer .brand-blue{color:var(--primary)}
.shop-footer h2{color:#fff}.shop-footer-bottom{border-color:#ffffff20}.shop-footer-grid>div>a:not(.shop-brand),.shop-footer p,.shop-footer-bottom,.shop-footer-bottom a{color:#c7cfe0}
.shop-footer-grid>div>a:hover,.shop-footer-bottom a:hover{color:#fff}.shop-footer .app-store-badge{background:#0b1531;border-color:#56617b}
.btn-primary,.btn-primary-custom{--bs-btn-bg:var(--primary);--bs-btn-border-color:var(--primary);--bs-btn-hover-bg:var(--primary-dark);--bs-btn-hover-border-color:var(--primary-dark);--bs-btn-active-bg:var(--primary-dark);--bs-btn-active-border-color:var(--primary-dark);background:var(--primary);border-color:var(--primary);border-radius:8px}
.btn-primary:hover,.btn-primary:focus,.btn-primary-custom:hover{background:var(--primary-dark);border-color:var(--primary-dark)}
.btn-outline-primary{--bs-btn-color:var(--primary-dark);--bs-btn-border-color:var(--primary);--bs-btn-hover-bg:var(--primary);--bs-btn-hover-border-color:var(--primary);--bs-btn-active-bg:var(--primary);--bs-btn-active-border-color:var(--primary);color:var(--primary-dark);border-color:var(--primary);border-radius:8px}
.form-control,.form-select{border-radius:8px;border-color:#dce3ef;background-color:#fff;color:var(--shop-ink)}
.form-control:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}
.form-check-input:checked,.page-item.active .page-link{background-color:var(--primary);border-color:var(--primary)}
.page-link{color:var(--primary-dark);border-color:#e2e7f0}.page-link:focus{box-shadow:0 0 0 3px var(--primary-light)}
.page-link:hover{background:var(--primary-light);color:var(--primary-dark)}
main .card,main .rounded-4{border-radius:12px!important}main .card-header{background:#f0f4fa;border-color:var(--shop-border)}
.breadcrumb-wrapper{background:#f0f4fa}.breadcrumb a{color:var(--primary-dark)}
.auth-page{background:linear-gradient(130deg,#fff4eb,#f5f8fd 60%)}
.auth-page .card{border:1px solid #e1e6f0!important;border-radius:15px!important;box-shadow:0 12px 36px #14254b08!important}
.auth-page h1{color:var(--shop-ink)}.auth-page .btn-primary{border-radius:8px}
.auth-page a:not(.shop-brand){color:var(--primary-dark)}
.auth-social button{border-radius:8px}.auth-social i{color:inherit}
@media(max-width:1100px){.shop-navigation{gap:20px}.lifestyle-hero .hero-copy{width:58%;padding:42px 4%}.lifestyle-hero{min-height:355px}.home-services-band>a{padding:15px 12px;gap:10px}.home-services-band strong{font-size:11px}}
@media(max-width:767px){.shop-header-main{gap:14px;padding:16px 0}.shop-nav-toggle{color:var(--primary-dark)}.shop-navigation .nav-dropdown{padding:10px 13px}.lifestyle-hero{min-height:510px}.lifestyle-hero .hero-copy{width:100%;padding:27px 22px}.lifestyle-hero h1{font-size:30px;letter-spacing:-1px}.lifestyle-hero p{max-width:100%;font-size:13px}.hero-backdrop{inset:auto 0 0;height:235px}.hero-backdrop img{height:100%;object-fit:cover;object-position:right center;width:200%;max-width:none;position:absolute;right:0}.home-services-band{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-services-band>a{padding:15px 11px;gap:9px}.home-services-band i{font-size:21px}.home-services-band strong{font-size:10px}.home-services-band small{font-size:9px}.home-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-category img{height:122px}.home-category>span{font-size:11px}.section-heading h2{font-size:19px}.section-heading>a{font-size:10px}.shop-newsletter{padding:22px;gap:17px}.newsletter-art{margin-bottom:0}.shop-newsletter form{min-width:0;width:100%}.shop-newsletter h2{font-size:21px}.shop-footer{padding-top:32px}.home-sections{gap:25px}.home-promo{min-height:185px}}
@media(prefers-reduced-motion:reduce){.home-category{transition:none}}

/* Circular category portraits, keeping existing CMS images and brand colors. */
.home-category-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:18px}
.home-category{border:0;border-radius:0;background:transparent;overflow:visible;align-items:center}
.home-category img{width:100%;max-width:118px;height:auto;aspect-ratio:1;border-radius:50%;padding:9px;background:#f1f2f4;object-fit:contain}
.home-category>span{padding:8px 0;min-height:40px;font-size:11px;font-weight:500}
.home-category:hover{background:transparent}.home-category:hover img{box-shadow:0 0 0 2px var(--primary-light)}
@media(max-width:991px){.home-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}}
@media(max-width:479px){.home-category-grid{gap:12px 9px}.home-category>span{font-size:10px}.home-category img{padding:6px}}
[data-user-menu] .dropdown-item.text-danger{color:#b42335!important}
[data-user-menu] .dropdown-item.text-danger:hover{background:#fff0f1;color:#941b2a!important}

/* Login and registration keep a neutral white background across the page. */
body.auth-white-surface,body.auth-white-surface main,body.auth-white-surface .auth-page{background:#fff}

/* CMS hero: equal-height layers avoid layout jumps while text and imagery fade together. */
.hero-carousel{overflow:hidden}.hero-slides{display:grid}.hero-carousel .hero-slide{grid-area:1/1;position:relative;isolation:isolate;min-width:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 1000ms ease,visibility 1000ms; background:#fff0e5}
.hero-carousel .hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.hero-carousel .hero-copy{padding-bottom:65px}
.hero-carousel .hero-copy h2{font-size:clamp(30px,3.25vw,45px);font-weight:750;letter-spacing:-1.5px;line-height:1.15;margin:0 0 16px}
.hero-carousel .hero-copy h2 span{color:var(--primary)}
.hero-carousel[data-animation="slide"] .hero-slide{transform:translateX(100%);transition:transform 1000ms cubic-bezier(.22,.61,.36,1),opacity 1000ms,visibility 1000ms}
.hero-carousel[data-animation="slide"] .hero-slide.is-before{transform:translateX(-100%)}
.hero-carousel[data-animation="slide"] .hero-slide.is-active{transform:translateX(0)}
.hero-controls{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);z-index:3;display:flex;align-items:center;max-width:calc(100% - 32px);padding:0;border:0;background:transparent;opacity:0;pointer-events:none;transition:opacity .25s ease}
.hero-controls[hidden]{display:none}.hero-controls-visible .hero-controls,.hero-controls:has(:focus-visible){opacity:1;pointer-events:auto}
.hero-controls button{border:0;background:transparent;width:32px;height:32px;padding:0;border-radius:50%;display:grid;place-items:center;flex-shrink:0}
.hero-controls button:focus-visible{outline:2px solid var(--primary);outline-offset:0}
.hero-dots{display:flex;gap:3px;min-width:0;overflow-x:auto;scrollbar-width:none}.hero-dots::-webkit-scrollbar{display:none}
.hero-dots button:after{content:'';width:7px;height:7px;border-radius:10px;background:#7d8596;box-shadow:0 0 0 2px #ffffff70;transition:width .25s,background .25s,transform .25s}
.hero-dots button:hover:after{transform:scale(1.15);background:var(--primary)}.hero-dots button[aria-pressed="true"]:after{width:24px;background:var(--primary);box-shadow:0 2px 7px #ff571430}
@media(max-width:767px){.hero-carousel .hero-slide{min-height:535px}.hero-carousel .hero-copy{padding:27px 22px 250px}.hero-carousel .hero-copy h2{font-size:30px;letter-spacing:-1px}.hero-carousel .hero-backdrop{background:#fff0e5}.hero-controls{left:50%;transform:translateX(-50%);bottom:9px}.hero-carousel .hero-backdrop img{width:200%;object-fit:cover}}
@media(prefers-reduced-motion:reduce){.hero-carousel .hero-slide{transition:none!important}.hero-dots button:after{transition:none}}

.hero-carousel .hero-copy h1,.hero-carousel .hero-copy h2{overflow-wrap:anywhere}
