/*
Theme Name: Feminie
Author: Feminie
Description: Custom WooCommerce storefront rebuilt for Feminie. Products are managed by WooCommerce.
Version: 0.1.0
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: feminie
*/
@font-face{font-family:Figtree;src:url('assets/font-1.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Figtree;src:url('assets/font-2.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Instrument;src:url('assets/font-0.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--ink:#242424;--line:#dedede;--paper:#fff;--accent:#267f8f}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:400 16px/1.6 Figtree,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3{line-height:1.2;font-weight:400}h1{font-size:35px}h2{font-size:28px}p{margin:0 0 20px}a:hover{text-decoration:underline;text-underline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #267f8f;outline-offset:5px}[hidden]{display:none!important}.content{width:calc(100% - 80px);max-width:1440px;margin-inline:auto}.center{text-align:center}.screen-reader-text,.skip-link{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link:focus{position:fixed;top:10px;left:10px;width:auto;height:auto;padding:12px;clip:auto;z-index:100;background:white;color:black}
.site-header{height:105px;padding:0 40px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:#fff;border-bottom:1px solid #eee;position:relative;z-index:10}.site-header.over-hero{position:absolute;inset:auto 0 auto;top:0;background:transparent;color:white;border:0}.admin-bar .site-header.over-hero{top:32px}.brand{display:block;width:155px}.brand img{width:155px;height:70px;object-fit:contain}.site-header:not(.over-hero) .brand img{filter:brightness(0)}.header-actions{display:flex;gap:24px;justify-self:end;align-items:center}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:44px;padding:0;border:0;background:transparent;color:inherit}.cart-toggle{position:relative}.cart-count{font-size:10px;position:absolute;top:0;right:-5px}.desktop-nav{display:flex;gap:25px;align-items:center;font-size:15px}.desktop-nav ul{display:flex;gap:20px;list-style:none;margin:0;padding:0}.nav-shop{position:relative;padding:25px 0}.nav-shop>a{display:flex;gap:8px}.nav-dropdown{display:none;position:absolute;top:100%;left:-20px;width:180px;padding:15px 20px;background:#fff;color:var(--ink);box-shadow:0 7px 15px #0001}.nav-shop:hover .nav-dropdown,.nav-shop:focus-within .nav-dropdown{display:grid;gap:10px}.mobile-toggle{display:none}.hero{position:relative;background:#333;color:white}.hero-slide{position:relative;height:100svh;min-height:550px}.hero-image{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0003 50%,#0009)}.hero-copy{position:absolute;inset:auto 40px 100px;text-align:center}.hero-copy h1{font-size:36px;margin:0 0 25px}.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{display:inline-block;background:var(--ink);color:white;border:1px solid transparent;border-radius:2px;padding:15px 30px;font:400 14px/1.4 Figtree,Arial,sans-serif;letter-spacing:1px;text-transform:uppercase;text-align:center;text-decoration:none;cursor:pointer}.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce button.button.alt:hover{background:#444;color:white}.hero-button-1{background:#267f8f}.hero-button-2{background:#92a692}.slide-controls{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);display:flex;gap:10px}.slide-controls button{width:55px;height:28px;background:transparent;border:0;position:relative}.slide-controls button:after{content:'';display:block;height:2px;background:#fff6}.slide-controls button[aria-pressed=true]:after{background:white}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding-block:40px 45px}.category-card{display:block;position:relative;overflow:hidden;border-radius:2px;aspect-ratio:4/5;background:#eee;color:white}.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.category-card:hover img{transform:scale(1.035)}.category-card:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#242424b8)}.category-caption{position:absolute;bottom:32px;left:15px;right:15px;text-align:center;z-index:1}.category-caption h2{font-size:25px;margin:0 0 15px}.category-caption>span{font-size:14px;border-bottom:1px solid #fff8;padding-bottom:4px}.category-caption>span>span{margin-left:10px}.featured-products{padding-block:50px 5px}.site-footer{border-top:1px solid #eee;background:#f7f7f7}.footer-grid{display:grid;grid-template-columns:minmax(180px,1fr) minmax(280px,2fr);gap:70px;padding-block:55px}.footer-grid h2{font-size:16px;margin:0 0 16px}.footer-grid a,.text-button{display:block;margin:8px 0;font-size:14px}.text-button{padding:0;border:0;background:transparent;color:inherit}.text-button:hover{text-decoration:underline}.newsletter{max-width:520px}.newsletter p{font-size:14px;margin-bottom:16px}.footer-social{display:flex;gap:14px;margin-top:18px}.footer-social a{display:inline-flex;margin:0;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid #d5d5d5;border-radius:50%}.footer-social svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.footer-bottom{padding-block:20px;border-top:1px solid #ddd;font-size:13px}.newsletter-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.newsletter-form input[type=email]{width:100%;min-width:0}.newsletter-form .consent{font-size:12px;grid-column:1/-1;display:flex;gap:8px;align-items:start;line-height:1.45}.newsletter-form .consent input{margin-top:3px;flex:0 0 auto}.newsletter-form .honey{position:absolute;left:-9999px}.form-notice{font-size:14px;padding:10px;border:1px solid var(--line)}input[type=text],input[type=email],input[type=search],input[type=password],input[type=tel],input[type=number],select,textarea{border:1px solid #bbb;background:white;border-radius:2px;padding:12px;max-width:100%;color:var(--ink)}.page-content,.shop-content{min-height:55vh;padding-block:45px 70px}.page-content>article:not(.woocommerce-page){max-width:1100px;margin:auto}.page-content h1{text-align:center;margin:0 0 35px}.entry-content a:not(.button){text-decoration:underline}.search-form{display:flex;gap:10px}.search-form input[type=search]{flex:1;min-width:0}.entry-content:after{content:'';display:block;clear:both}.entry-content table{border-collapse:collapse;width:100%}.entry-content td,.entry-content th{padding:12px;border-bottom:1px solid #ddd}.entry-content .woocommerce{margin-top:25px}.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:none;width:100%;margin:0}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:16px;font-weight:400}.woocommerce ul.products li.product .price{color:var(--ink);font-size:15px}.woocommerce span.onsale{background:#974949;border-radius:2px;min-height:0;line-height:1.5;padding:5px 10px}.woocommerce div.product .product_title{text-align:left;font-size:30px}.woocommerce div.product p.price{color:var(--ink)}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{padding:12px}.woocommerce div.product form.cart .variations select{padding:10px}.woocommerce .quantity .qty{width:5em}.woocommerce-message,.woocommerce-info{border-top-color:var(--accent)}.woocommerce-message:before,.woocommerce-info:before{color:var(--accent)}.woocommerce ul.products li.product a img{aspect-ratio:4/5;object-fit:cover}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0}.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:10px 0}.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{font-weight:700}.woocommerce .woocommerce-breadcrumb{margin-bottom:30px}.woocommerce-cart .page-content>article,.woocommerce-checkout .page-content>article{max-width:1200px}.woocommerce-cart table.cart img{width:65px}.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:15px}.woocommerce table.shop_table{border-color:var(--line)}.woocommerce ul.order_details{padding:0}.dialog-open{overflow:hidden}dialog{color:var(--ink);border:0;padding:28px;max-width:calc(100% - 24px);box-shadow:0 0 50px #0002}dialog::backdrop{background:#0006}.drawer{height:100dvh;max-height:100dvh;width:430px;margin:0;margin-right:auto}.cart-drawer{margin-left:auto;margin-right:0}.dialog-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ddd;padding-bottom:16px;margin-bottom:25px;gap:15px}.dialog-heading h2{font-size:24px;margin:0}.drawer nav{display:grid;gap:10px}.drawer nav a{padding:8px 0}.search-dialog{width:700px}.widget_shopping_cart_content ul{list-style:none;padding:0}.widget_shopping_cart_content li{position:relative;padding:10px 0;border-bottom:1px solid #ddd}.widget_shopping_cart_content img{width:60px;float:right}.widget_shopping_cart_content .quantity{display:block}.widget_shopping_cart_content .remove{margin-right:10px}.widget_shopping_cart_content .buttons{display:flex;flex-wrap:wrap;gap:8px}.widget_shopping_cart_content .button{padding:12px 20px}.continue-link{display:inline-block;margin-top:20px;font-size:14px}.woocommerce-mini-cart__empty-message{padding-block:25px}
@media(min-width:768px){.hero-copy h1{font-size:12px}}
@media(max-width:1050px){.desktop-nav{gap:16px;font-size:14px}.site-header{padding-inline:25px}.header-actions{gap:15px}}
@media(max-width:989px){.desktop-nav{display:none}.mobile-toggle{display:inline-flex;justify-self:start}.site-header{height:80px}.brand,.brand img{width:125px}.brand img{height:55px}.category-grid{gap:16px}.content{width:calc(100% - 40px)}}
@media(max-width:767px){.site-header{padding-inline:18px}.header-actions{gap:10px}.account-link{display:none}.hero-slide{height:auto;min-height:0;aspect-ratio:3034/3793}.hero-copy{inset:auto 20px 65px}.hero-copy h1{font-size:36px;margin-bottom:20px}.hero-button{padding:13px 26px}.slide-controls{bottom:15px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-block:25px}.category-caption{bottom:20px;left:8px;right:8px}.category-caption h2{font-size:20px;margin-bottom:9px}.category-caption>span{font-size:12px}.footer-grid{grid-template-columns:1fr;gap:26px;padding-block:32px;text-align:left}.footer-links,.newsletter{max-width:520px;width:100%;margin-inline:auto}.footer-social{margin-top:16px}.newsletter-form{gap:10px}.newsletter{grid-column:auto;max-width:100%}.footer-bottom{text-align:center}.newsletter-form{text-align:left}.page-content,.shop-content{padding-block:30px 45px}h1{font-size:28px}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:100%}.admin-bar .site-header.over-hero{top:46px}.search-form{flex-wrap:wrap}.search-form input{width:100%}.content{width:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Direct checkout */
.woocommerce div.product form.cart .feminie-buy-now{display:block;clear:both;width:100%;margin:14px 0 0;background:transparent;color:var(--ink);border-color:var(--ink)}
.woocommerce div.product form.cart .feminie-buy-now:hover{background:var(--ink);color:white}
.feminie-styled-by-you{clear:both;padding:55px 0 20px}.feminie-styled-by-you h2{text-align:center;text-transform:uppercase;font-size:18px;letter-spacing:1.5px;opacity:.75}.feminie-styled-rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 0 18px;scrollbar-width:none}.feminie-styled-rail::-webkit-scrollbar{display:none}.feminie-styled-rail img,.feminie-styled-rail video{flex:0 0 min(360px,82vw);width:min(360px,82vw);aspect-ratio:3/4;object-fit:cover;border-radius:10px;scroll-snap-align:start;background:#eee}

/* Mobile-first merchandising: large imagery and swipeable homepage rails. */
@media(max-width:767px){
 .hero-copy h1{font-size:32px}
 .featured-products{width:100%;padding:38px 0 10px;overflow:hidden}
 .featured-products .products{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px!important;padding:0 16px 18px;margin:0;scrollbar-width:none}
 .featured-products .products::-webkit-scrollbar,.category-grid::-webkit-scrollbar{display:none}
 .featured-products .products li.product{flex:0 0 min(82vw,430px);width:auto!important;scroll-snap-align:center;text-align:center}
 .featured-products .products li.product a img{width:100%;margin:0 0 18px;aspect-ratio:1/1;object-fit:cover;border-radius:3px}
 .featured-products .products li.product .woocommerce-loop-product__title{font-size:20px;font-weight:700;padding:.2em 0}
 .featured-products .products li.product .price{font-size:20px;font-weight:700}
 .featured-products .products li.product .button{background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--ink);padding:6px 0;border-radius:0;font-size:17px;letter-spacing:0;text-transform:none}
 .featured-products .center{padding-top:20px}
 .category-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;width:100%;padding:10px 16px 35px;scrollbar-width:none}
 .category-card{flex:0 0 calc(100vw - 42px);scroll-snap-align:center;aspect-ratio:4/5}
 .category-caption{bottom:28px;left:12px;right:12px}.category-caption h2{font-size:27px;font-weight:700;margin-bottom:15px}
 .category-caption>span{display:inline-block;background:var(--ink);border:0;padding:14px 24px;font-size:14px;letter-spacing:1px;text-transform:uppercase}
 .shop-content .products{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:36px}
 .shop-content .products li.product .woocommerce-loop-product__link{display:block;width:100%}
 .shop-content .products li.product a img{display:block;width:100%;max-width:none;margin-bottom:12px}
 .shop-content .products li.product .woocommerce-loop-product__title{font-size:16px;line-height:1.25;min-height:40px;padding:.3em 0}
 .shop-content .products li.product .price{font-size:15px;line-height:1.35}
 .shop-content .products li.product .button{width:100%;padding:13px 6px;font-size:12px;line-height:1.3}
 .woocommerce span.onsale{font-size:12px;padding:4px 8px}
 .woocommerce div.product div.images,.woocommerce div.product div.summary{float:none;width:100%}
 .woocommerce div.product .product_title{font-size:27px}
 .woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:10px}
 .woocommerce div.product form.cart .quantity{margin:0}
 .woocommerce div.product form.cart .single_add_to_cart_button{flex:1;margin:0}
 .woocommerce div.product form.cart .feminie-buy-now{flex-basis:100%;margin:0;padding-block:16px}
 .feminie-styled-by-you{padding-top:40px}.feminie-styled-rail{margin-inline:-16px;padding-inline:16px}.feminie-styled-rail img,.feminie-styled-rail video{flex-basis:78vw;width:78vw}
}

/* WooCommerce's float-era card width must not override the theme grid above mobile. */
@media(min-width:768px){
 .woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:auto!important}
}

/* Shared mobile product cards: shop/category grids and Related Products. */
@media(max-width:767px){
 .shop-content ul.products,.related.products ul.products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px 10px!important;width:100%;margin:0!important;padding:0!important}
 .shop-content ul.products li.product,.related.products ul.products li.product{position:relative;display:flex!important;flex-direction:column;float:none!important;min-width:0!important;width:auto!important;margin:0!important}
 .shop-content ul.products li.product .woocommerce-loop-product__link,.related.products ul.products li.product .woocommerce-loop-product__link{display:block;width:100%;margin:0!important}
 .shop-content ul.products li.product a img,.related.products ul.products li.product a img{display:block;width:100%!important;max-width:none!important;aspect-ratio:1/1;object-fit:cover;margin:0 0 9px!important}
 .shop-content ul.products li.product .woocommerce-loop-product__title,.related.products ul.products li.product .woocommerce-loop-product__title{min-height:0;margin:0 0 4px!important;padding:0!important;font-size:15px;line-height:1.25}
 .shop-content ul.products li.product .price,.related.products ul.products li.product .price{min-height:39px;margin:0 0 8px!important;font-size:14px;line-height:1.35}
 .shop-content ul.products li.product .button,.related.products ul.products li.product .button{width:100%;margin-top:auto!important;padding:11px 4px!important;font-size:11px;line-height:1.25;letter-spacing:.6px}
 .shop-content ul.products li.product .onsale,.related.products ul.products li.product .onsale{top:7px;left:7px;right:auto;margin:0!important;padding:4px 7px;font-size:11px;line-height:1.25;z-index:2}
 .related.products{clear:both;margin:38px 0 0!important}.related.products>h2{margin:0 0 18px!important;font-size:24px}.related.products ul.products li.product:nth-child(odd):last-child{grid-column:1}
}

@media(max-width:430px){.footer-grid{gap:24px;padding-block:28px}.newsletter-form{grid-template-columns:1fr}.newsletter-form .button{width:100%;padding-block:13px}.newsletter-form .consent{grid-column:1}.footer-bottom{padding-block:18px}}

/* 2026 storefront visual system */
.single-product .shop-content{max-width:1280px}.single-product div.product{position:relative}.single-product div.product .summary{padding-top:14px}.single-product div.product .product_title{margin:0 0 10px;font-size:32px;letter-spacing:-.6px}.single-product div.product p.price{margin:0 0 18px;font-size:20px;font-weight:700}.single-product div.product p.price del{font-weight:400;color:#8a8a8a}.single-product div.product .woocommerce-product-details__short-description{max-width:580px;color:#5d5d5d;font-size:15px}.single-product div.product form.cart{margin:24px 0 20px}.single-product div.product form.cart .single_add_to_cart_button{min-height:52px}.single-product div.product form.cart .feminie-buy-now{min-height:52px}.single-product div.product .product_meta{padding-top:16px;border-top:1px solid var(--line);font-size:13px;color:#666}.product-assurances{display:grid;margin:18px 0;border-top:1px solid var(--line)}.product-assurances>div,.product-assurances>a{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.product-assurances strong{font-weight:500}.product-assurances span{color:#666;text-align:right}.product-accordions{clear:both;margin-top:42px;border-top:1px solid var(--line)}.product-accordion{border-bottom:1px solid var(--line)}.product-accordion summary{display:flex;justify-content:space-between;align-items:center;min-height:58px;cursor:pointer;font-size:15px;font-weight:500;list-style:none}.product-accordion summary::-webkit-details-marker{display:none}.product-accordion summary span{font-size:22px;font-weight:300;transition:transform .2s}.product-accordion[open] summary span{transform:rotate(45deg)}.product-accordion .woocommerce-Tabs-panel{padding:0 0 25px;color:#555;font-size:14px}.product-accordion .woocommerce-Tabs-panel>h2:first-child{display:none}.shop-category-filter{float:left;position:relative;margin:0 12px 24px 0}.shop-category-filter summary{list-style:none;cursor:pointer;border:1px solid var(--ink);padding:8px 15px;font-size:13px;text-transform:uppercase;letter-spacing:.7px}.shop-category-filter summary::-webkit-details-marker{display:none}.shop-category-filter>div{position:absolute;top:calc(100% + 6px);left:0;z-index:8;display:grid;min-width:180px;padding:10px 14px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px #00000012}.shop-category-filter a{padding:6px 0;font-size:14px}.woocommerce .woocommerce-ordering select{border-color:var(--ink);padding:8px 34px 8px 12px;font-size:13px;text-transform:uppercase}.woocommerce ul.products li.product a img{transition:opacity .2s}.woocommerce ul.products li.product a:hover img{opacity:.92}

@media(max-width:767px){
 body{font-size:15px}.site-header{height:66px;padding-inline:14px}.brand,.brand img{width:104px}.brand img{height:48px}.header-actions{gap:4px}.icon-button{min-width:38px;min-height:44px}.cart-count{top:1px;right:-1px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 3px;border-radius:9px;background:var(--ink);color:#fff;font-size:9px}
 .single-product .shop-content{width:100%;padding:0 0 42px}.single-product .woocommerce-breadcrumb{margin:0;padding:12px 16px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.single-product div.product{margin:0!important}.single-product div.product .onsale{top:14px;left:14px;right:auto;z-index:5}.single-product div.product div.images{position:relative;margin:0!important;background:#f2f2f2}.single-product div.product div.images .woocommerce-product-gallery__wrapper{margin:0}.single-product div.product div.images .woocommerce-product-gallery__image a{display:block}.single-product div.product div.images .woocommerce-product-gallery__image img{width:100%;height:min(118vw,calc(100svh - 66px));min-height:400px;object-fit:cover;object-position:center}.single-product div.product div.images .flex-control-thumbs{position:absolute;left:50%;bottom:14px;z-index:4;display:flex;justify-content:center;gap:7px;width:auto;margin:0;transform:translateX(-50%)}.single-product div.product div.images .flex-control-thumbs li{float:none;width:auto}.single-product div.product div.images .flex-control-thumbs img{width:7px!important;height:7px!important;border-radius:50%;background:#fff;opacity:.55;object-fit:cover;filter:brightness(0) invert(1)}.single-product div.product div.images .flex-control-thumbs img.flex-active{opacity:1;outline:1px solid #fff;outline-offset:2px}.product-gallery-count{position:absolute;right:14px;bottom:11px;z-index:4;padding:3px 8px;border-radius:12px;background:#ffffffd9;font-size:11px}
 .single-product div.product .summary{margin:0!important;padding:24px 16px 8px}.single-product div.product .product_title{font-size:25px;line-height:1.15;letter-spacing:-.35px}.single-product div.product p.price{margin-bottom:15px;font-size:18px}.single-product div.product .woocommerce-product-details__short-description{margin-bottom:18px;font-size:14px;line-height:1.55}.single-product div.product form.cart{position:sticky;bottom:0;z-index:9;display:grid!important;grid-template-columns:72px minmax(0,1fr);gap:9px;margin:18px -8px 16px!important;padding:10px 8px calc(10px + env(safe-area-inset-bottom));background:#fffc;backdrop-filter:blur(12px);border-top:1px solid #e8e8e8}.single-product div.product form.cart .quantity{width:72px}.single-product div.product form.cart .quantity .qty{width:100%;height:50px;padding:8px}.single-product div.product form.cart .single_add_to_cart_button{width:100%;min-height:50px;padding:12px 10px;font-size:13px}.single-product div.product form.cart .feminie-buy-now{grid-column:1/-1;width:100%;min-height:48px;margin:0;padding:12px 10px;font-size:13px}.single-product div.product form.cart.variations_form{display:block!important}.single-product div.product form.cart.variations_form .variations{margin-bottom:12px}.single-product div.product form.cart.variations_form .single_variation_wrap{display:grid;grid-template-columns:72px minmax(0,1fr);gap:9px}.single-product div.product form.cart.variations_form .single_variation{grid-column:1/-1}.single-product div.product form.cart.variations_form .woocommerce-variation-add-to-cart{display:contents}.single-product div.product form.cart .variations tr{display:block;margin-bottom:16px}.single-product div.product form.cart .variations th,.single-product div.product form.cart .variations td{display:block;width:100%;padding:0;text-align:left}.single-product div.product form.cart .variations th{margin-bottom:8px;font-size:13px}.single-product div.product form.cart .reset_variations{display:inline-block;margin-top:8px;font-size:12px}
 .variation-swatches{display:flex;flex-wrap:wrap;gap:8px}.variation-swatches button{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 11px;border:1px solid #cfcfcf;border-radius:20px;background:#fff;color:var(--ink);font-size:12px}.variation-swatches--color button{width:34px;min-width:34px;height:34px;padding:0;border:6px solid #fff;background:var(--swatch);box-shadow:0 0 0 1px #ccc;text-indent:-999px;overflow:hidden}.variation-swatches button.is-selected{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.variation-swatches button:disabled{opacity:.3;text-decoration:line-through}
 .product-assurances{margin-top:12px}.product-assurances>div,.product-assurances>a{padding:14px 0;font-size:13px}.single-product div.product .product_meta{margin-top:8px}.product-accordions{margin:26px 16px 0}.product-accordion summary{min-height:56px}.product-accordion .woocommerce-Tabs-panel{line-height:1.65}
 .feminie-styled-by-you{margin-top:30px;padding:26px 16px 10px;border-top:1px solid var(--line)}.feminie-styled-by-you h2{text-align:left;margin:0 0 12px;font-size:17px;letter-spacing:1px}.feminie-styled-rail{margin-inline:-16px;padding:4px 16px 16px;gap:9px}.feminie-styled-rail img,.feminie-styled-rail video{flex-basis:76vw;width:76vw;border-radius:2px}
 .related.products{padding:0 16px}.related.products>h2{font-size:21px!important;letter-spacing:-.2px}.shop-content ul.products,.related.products ul.products{gap:26px 8px!important}.shop-content ul.products li.product a img,.related.products ul.products li.product a img{aspect-ratio:4/5!important;margin-bottom:10px!important}.shop-content ul.products li.product .woocommerce-loop-product__title,.related.products ul.products li.product .woocommerce-loop-product__title{font-size:14px!important;line-height:1.3}.shop-content ul.products li.product .price,.related.products ul.products li.product .price{min-height:0!important;margin-bottom:0!important;font-size:13px!important}.shop-content ul.products li.product .button,.related.products ul.products li.product .button{display:none!important}.woocommerce ul.products li.product .onsale{top:8px!important;left:8px!important;border-radius:0!important;background:#242424!important}
 .woocommerce .woocommerce-result-count{float:none;margin:0 0 10px;font-size:12px;color:#777}.woocommerce .woocommerce-ordering{float:right;margin:0 0 18px}.shop-category-filter{margin-bottom:18px}.shop-category-filter summary{padding:8px 13px}.shop-content>.woocommerce-products-header h1{margin-bottom:20px}
 .featured-products{width:calc(100% - 32px);padding:34px 0 12px;overflow:visible}.featured-products .products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 8px!important;padding:0!important;overflow:visible}.featured-products .products li.product{width:auto!important;min-width:0;text-align:left}.featured-products .products li.product a img{aspect-ratio:4/5;margin:0 0 9px;border-radius:0}.featured-products .products li.product .woocommerce-loop-product__title{min-height:0;padding:0;font-size:14px}.featured-products .products li.product .price{font-size:13px}.featured-products .products li.product .button{display:none}.featured-products .center{padding-top:24px}.category-grid{display:grid;grid-template-columns:1fr;gap:10px;width:100%;padding:18px 16px 34px;overflow:visible}.category-card{width:100%;aspect-ratio:4/5}.category-caption h2{font-size:25px}.category-caption>span{padding:12px 20px}
}
@media(max-width:350px){.single-product div.product div.images .woocommerce-product-gallery__image img{min-height:365px}.single-product div.product .summary{padding-inline:12px}.product-accordions,.related.products{margin-inline:12px;padding-inline:0}.featured-products{width:calc(100% - 24px)}}

.single-product div.product div.images .woocommerce-product-gallery__image img{width:100%;aspect-ratio:4/5;object-fit:cover}.woocommerce ul.products li.product.outofstock .woocommerce-loop-product__link{position:relative}.woocommerce ul.products li.product.outofstock .woocommerce-loop-product__link:after{content:"Sold out";position:absolute;top:8px;right:8px;padding:4px 7px;background:#fff;color:var(--ink);font-size:10px;line-height:1.3;text-transform:uppercase;letter-spacing:.5px}
@media(max-width:767px){.single-product div.product form.cart .quantity{float:none!important;grid-column:1;grid-row:1;margin:0!important}.single-product div.product form.cart .single_add_to_cart_button{float:none!important;grid-column:2;grid-row:1;margin:0!important}.single-product div.product form.cart .feminie-buy-now{grid-column:1/-1;grid-row:2}.home .featured-products li.product .button{display:none!important}}
@media(min-width:768px) and (max-width:989px){.single-product div.product div.images .woocommerce-product-gallery__image img{height:calc(100svh - 150px);max-height:780px}.single-product div.product div.images .flex-control-thumbs{display:flex;gap:8px;overflow-x:auto;margin-top:10px}.single-product div.product div.images .flex-control-thumbs li{float:none;flex:0 0 68px;width:68px}.single-product div.product div.images .flex-control-thumbs img{width:68px;height:68px;object-fit:cover}}
@media(min-width:768px){.single-product div.product div.images .flex-control-thumbs{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;margin-top:10px}.single-product div.product div.images .flex-control-thumbs li{float:none;flex:0 0 72px;width:72px;margin:0}.single-product div.product div.images .flex-control-thumbs img{width:72px;height:72px;object-fit:cover}}

/* Native-style mobile product experience */
.feminie-purchase-bar{display:none}
.feminie-stock-status{display:flex;align-items:center;gap:8px;margin:10px 0 4px;font-size:13px}.feminie-stock-status>span{width:8px;height:8px;border-radius:50%;background:#368c55;box-shadow:0 0 0 3px #368c5518}.feminie-stock-status strong{font-weight:500}.feminie-stock-selling-fast>span{background:#df8b2d;box-shadow:0 0 0 3px #df8b2d1c}.feminie-stock-sold-out>span{background:#bd3d3d;box-shadow:0 0 0 3px #bd3d3d1c}
@media(max-width:767px){
 body.single-product.feminie-fixed-purchase{padding-bottom:calc(var(--feminie-purchase-height,76px) + 12px)}
 .single-product .site-header{position:absolute;left:0;right:0;z-index:20;height:60px;background:linear-gradient(180deg,#0007,transparent);color:#fff;border:0}.single-product .site-header:not(.over-hero) .brand img{filter:none}.single-product .site-header .icon-button{filter:drop-shadow(0 1px 2px #0008)}.single-product .site-header .cart-count{background:#fff;color:#111}
 .single-product .woocommerce-breadcrumb{display:none}.single-product .shop-content{padding-bottom:18px}.single-product div.product .onsale{top:72px;left:12px;padding:4px 8px;background:#fff!important;color:#111;font-size:10px;letter-spacing:.5px;text-transform:uppercase}
 .single-product div.product div.images .woocommerce-product-gallery__trigger{display:none}.single-product div.product div.images .woocommerce-product-gallery__image img{height:clamp(520px,calc(100svh - 22px),760px);min-height:0;aspect-ratio:auto;object-fit:cover}.single-product div.product div.images .flex-control-thumbs{bottom:16px}.single-product div.product div.images .flex-control-thumbs img{width:6px!important;height:6px!important}.product-gallery-count{right:12px;bottom:10px;padding:2px 7px;font-size:10px}
 .single-product div.product .summary{padding:17px 16px 4px}.single-product div.product .product_title{margin:0 0 7px;font-size:22px;line-height:1.18}.single-product div.product p.price{margin:0 0 11px;font-size:17px;line-height:1.35}.single-product div.product .woocommerce-product-details__short-description{margin:0 0 13px;font-size:13px;line-height:1.5}.single-product div.product .woocommerce-product-details__short-description p{margin-bottom:8px}
 .single-product div.product form.cart,.single-product div.product form.cart.variations_form{position:static;display:flex!important;align-items:center;grid-template-columns:none;gap:8px;margin:8px 0 10px!important;padding:0;background:transparent;border:0;backdrop-filter:none}.single-product div.product form.cart .quantity-label{font-size:12px;color:#666}.single-product div.product form.cart .quantity{display:block;width:58px}.single-product div.product form.cart .quantity .qty{width:58px;height:38px;padding:6px;border-color:#d7d7d7;border-radius:20px}.single-product div.product form.cart>.single_add_to_cart_button,.single-product div.product form.cart>.feminie-buy-now,.single-product div.product form.cart .woocommerce-variation-add-to-cart .single_add_to_cart_button{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
 .single-product div.product form.cart.variations_form{display:block!important}.single-product div.product form.cart.variations_form .variations{margin:0}.single-product div.product form.cart .variations tr{margin-bottom:12px}.single-product div.product form.cart .variations th{margin-bottom:6px;font-size:12px;font-weight:500}.single-product div.product form.cart.variations_form .single_variation_wrap{display:flex;align-items:center;gap:8px}.single-product div.product form.cart.variations_form .single_variation{width:100%;margin:0}.single-product div.product form.cart.variations_form .woocommerce-variation-add-to-cart{display:flex;align-items:center;gap:8px}.single-product div.product form.cart.needs-selection{outline:2px solid #b78d6c;outline-offset:7px}
 .variation-swatches{gap:7px}.variation-swatches button{min-width:36px;height:36px;padding:0 10px}.variation-swatches--color button{width:30px;min-width:30px;height:30px;border-width:5px}
 .single-product div.product .product_meta{display:none}.product-assurances{margin:5px 0 0;border-top:1px solid #e7e7e7}.product-assurances>div,.product-assurances>a{min-height:48px;align-items:center;padding:9px 0;border-color:#e7e7e7;font-size:12px}.product-assurances span{font-size:11px}
 .product-accordions{margin:0 16px;border-top:0}.product-accordion{border-color:#e7e7e7}.product-accordion summary{min-height:49px;font-size:13px}.product-accordion summary span{font-size:18px}.product-accordion .woocommerce-Tabs-panel{padding:0 0 16px;font-size:12px;line-height:1.55}.product-accordion .woocommerce-Tabs-panel p{margin-bottom:9px}
 .feminie-purchase-bar{position:fixed;left:0;right:0;bottom:0;z-index:999;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(105px,.8fr);gap:8px;padding:9px 12px calc(9px + env(safe-area-inset-bottom));background:#fffc;backdrop-filter:blur(16px);border-top:1px solid #ddd;box-shadow:0 -5px 22px #0000000d}.feminie-purchase-bar button{min-width:0;height:52px;border:1px solid #222;border-radius:3px;text-transform:uppercase;letter-spacing:.7px;font-size:11px}.feminie-bar-add{display:flex;align-items:center;justify-content:center;gap:7px;background:#222;color:#fff}.feminie-bar-add small{font-size:10px;white-space:nowrap;opacity:.78}.feminie-bar-add small:empty{display:none}.feminie-bar-add.needs-options:after{content:"Select options";position:absolute;bottom:2px;font-size:8px;opacity:.7}.feminie-bar-buy{background:#fff;color:#222}.feminie-purchase-bar:not(:has(.feminie-bar-buy)){grid-template-columns:1fr}
 .feminie-styled-by-you{margin-top:18px;padding-top:20px}.related.products{margin-top:26px!important}.related.products>h2{margin-bottom:13px!important;font-size:18px!important}
}
@media(max-width:350px){.feminie-purchase-bar{grid-template-columns:minmax(0,1.3fr) minmax(92px,.75fr);gap:6px;padding-inline:8px}.feminie-purchase-bar button{height:50px;font-size:10px}.feminie-bar-add{gap:4px}.feminie-bar-add small{font-size:9px}.single-product div.product .summary{padding-inline:12px}.product-assurances{margin-inline:0}.product-accordions{margin-inline:12px}}
/* =========================================================
   MOBILE PRODUCT GRID FIX FOR SALE / SHORTCODE PRODUCT PAGES
   ========================================================= */
@media(max-width:767px){
  .page-content .woocommerce ul.products{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:8px!important;
    row-gap:26px!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  .page-content .woocommerce ul.products::before,
  .page-content .woocommerce ul.products::after{
    display:none!important;
    content:none!important;
  }

  .page-content .woocommerce ul.products li.product,
  .woocommerce-page .page-content ul.products li.product{
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    float:none!important;
    clear:none!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }

  .page-content .woocommerce ul.products li.product .woocommerce-loop-product__link{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  .page-content .woocommerce ul.products li.product a img{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    aspect-ratio:4/5!important;
    object-fit:cover!important;
    margin:0 0 10px!important;
  }

  .page-content .woocommerce ul.products li.product .woocommerce-loop-product__title{
    min-height:0!important;
    margin:0 0 4px!important;
    padding:0!important;
    font-size:14px!important;
    line-height:1.3!important;
  }

  .page-content .woocommerce ul.products li.product .price{
    min-height:0!important;
    margin:0!important;
    font-size:13px!important;
    line-height:1.35!important;
  }

  .page-content .woocommerce ul.products li.product .button{
    display:none!important;
  }

  .page-content .woocommerce ul.products li.product .onsale{
    top:8px!important;
    left:8px!important;
    right:auto!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:4px 7px!important;
    border-radius:0!important;
    background:#242424!important;
    color:#fff!important;
    font-size:11px!important;
    line-height:1.25!important;
    z-index:2!important;
  }
}
/* =========================================================
   Single product quantity label placement
   Keep the label attached to the quantity selector instead of
   floating beside the Add to Bag button.
   ========================================================= */
.single-product div.product form.cart{
  position:relative;
}
.single-product div.product form.cart .quantity-label{
  display:block!important;
  width:auto!important;
  margin:0 0 6px!important;
  font-size:12px!important;
  line-height:1.2!important;
  color:#666!important;
}
.single-product div.product form.cart .quantity{
  display:inline-block;
  vertical-align:bottom;
}

/* Desktop/tablet: place Quantity directly above the number field. */
@media(min-width:768px){
  .single-product div.product form.cart{
    display:grid!important;
    grid-template-columns:80px minmax(180px,240px);
    gap:6px 8px;
    align-items:end;
    width:max-content;
    max-width:100%;
  }
  .single-product div.product form.cart .quantity-label{
    grid-column:1;
    grid-row:1;
    align-self:end;
  }
  .single-product div.product form.cart .quantity{
    grid-column:1;
    grid-row:2;
    width:80px!important;
    margin:0!important;
  }
  .single-product div.product form.cart .quantity .qty{
    width:80px!important;
    height:52px;
  }
  .single-product div.product form.cart .single_add_to_cart_button{
    grid-column:2;
    grid-row:2;
    margin:0!important;
    min-height:52px;
  }
  .single-product div.product form.cart .feminie-buy-now{
    grid-column:1 / -1;
    grid-row:3;
    width:100%;
    margin:8px 0 0!important;
  }
}

/* Mobile: keep the compact app-style controls; don't show a floating label. */
@media(max-width:767px){
  .single-product div.product form.cart .quantity-label{
    display:none!important;
  }
}
/* =========================================================
   FEMINIE PREMIUM HOMEPAGE
   Scoped to .home so shop/product/checkout/admin stay untouched.
   ========================================================= */

.home .home-main{
  overflow:hidden;
}

/* ---------- Hero ---------- */
.home .home-hero{
  position:relative;
  height:100svh;
  min-height:620px;
  overflow:hidden;
  isolation:isolate;
  background:#1c1c1c;
}

.home .home-hero .hero-slide{
  position:absolute;
  inset:0;
  height:100%;
  min-height:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .85s cubic-bezier(.22,.61,.36,1),visibility .85s;
}

.home .home-hero .hero-slide.is-active{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  z-index:2;
}

.home .home-hero .hero-image{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform:scale(1.035);
  transition:transform 7s cubic-bezier(.2,.55,.2,1);
  will-change:transform;
}

.home .home-hero .hero-slide.is-active .hero-image{
  transform:scale(1);
}

.home .home-hero .hero-shade{
  z-index:1;
  background:
    linear-gradient(180deg,rgba(0,0,0,.20) 0%,rgba(0,0,0,.02) 38%,rgba(0,0,0,.64) 100%);
}

.home .home-hero .hero-copy{
  z-index:3;
  bottom:clamp(88px,12vh,135px);
  max-width:820px;
  margin-inline:auto;
  color:#fff;
}

.home .hero-kicker{
  display:block;
  margin-bottom:10px;
  font-size:11px;
  line-height:1;
  letter-spacing:2.5px;
  text-transform:uppercase;
  opacity:0;
  transform:translateY(12px);
}

.home .home-hero .hero-copy h1{
  max-width:900px;
  margin:0 auto 25px;
  font-size:clamp(44px,5vw,76px);
  line-height:.98;
  letter-spacing:-2.2px;
  opacity:0;
  transform:translateY(22px);
}

.home .home-hero .hero-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:24px;
  min-width:190px;
  padding:15px 22px;
  border:1px solid rgba(255,255,255,.75);
  background:rgba(20,20,20,.64);
  backdrop-filter:blur(10px);
  color:#fff;
  opacity:0;
  transform:translateY(18px);
  transition:
    opacity .6s ease .28s,
    transform .6s ease .28s,
    background .25s ease,
    color .25s ease,
    border-color .25s ease;
}

.home .home-hero .hero-button:hover{
  background:#fff;
  border-color:#fff;
  color:#111;
  text-decoration:none;
}

.home .home-hero .hero-slide.is-active .hero-kicker,
.home .home-hero .hero-slide.is-active .hero-copy h1,
.home .home-hero .hero-slide.is-active .hero-button{
  opacity:1;
  transform:translateY(0);
}

.home .home-hero .hero-slide.is-active .hero-kicker{
  transition:opacity .55s ease .16s,transform .55s ease .16s;
}

.home .home-hero .hero-slide.is-active .hero-copy h1{
  transition:opacity .65s ease .22s,transform .65s cubic-bezier(.2,.75,.2,1) .22s;
}

.home .slide-controls{
  z-index:5;
  bottom:32px;
  gap:7px;
}

.home .slide-controls button{
  width:52px;
  height:30px;
  padding:0;
  overflow:hidden;
}

.home .slide-controls button:after{
  display:none;
}

.home .slide-controls button span{
  position:relative;
  display:block;
  width:100%;
  height:2px;
  overflow:hidden;
  background:rgba(255,255,255,.38);
}

.home .slide-controls button span:after{
  content:"";
  position:absolute;
  inset:0;
  background:#fff;
  transform:scaleX(0);
  transform-origin:left;
}

.home .slide-controls button[aria-pressed="true"] span:after{
  animation:feminieHeroProgress 5.5s linear forwards;
}

@keyframes feminieHeroProgress{
  to{transform:scaleX(1)}
}

.home .hero-swipe-hint{
  position:absolute;
  right:26px;
  bottom:27px;
  z-index:5;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0;
  border:0;
  background:transparent;
  color:#fff;
  font-size:10px;
  letter-spacing:1.5px;
  text-transform:uppercase;
  opacity:.72;
}

.home .hero-swipe-hint span:last-child{
  display:inline-grid;
  place-items:center;
  width:27px;
  height:27px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:50%;
  animation:feminieHintFloat 1.8s ease-in-out infinite;
}

@keyframes feminieHintFloat{
  50%{transform:translateY(4px)}
}

/* ---------- Section typography ---------- */
.home .home-section{
  padding-top:clamp(58px,8vw,105px);
  padding-bottom:clamp(58px,8vw,105px);
}

.home .home-section-heading{
  margin:0 0 34px;
}

.home .home-eyebrow{
  display:block;
  margin-bottom:8px;
  font-size:10px;
  line-height:1.2;
  letter-spacing:2.4px;
  text-transform:uppercase;
  color:#777;
}

.home .home-section-heading h2{
  margin:0;
  max-width:760px;
  font-size:clamp(34px,4.6vw,64px);
  line-height:1.02;
  letter-spacing:-1.7px;
}

.home .home-text-link{
  display:inline-flex;
  align-items:center;
  gap:24px;
  padding:10px 0 5px;
  border-bottom:1px solid #242424;
  font-size:12px;
  line-height:1.2;
  letter-spacing:1px;
  text-transform:uppercase;
  transition:gap .25s ease,opacity .25s ease;
}

.home .home-text-link:hover{
  gap:34px;
  opacity:.68;
  text-decoration:none;
}

.home .home-view-all{
  margin-top:36px;
}

/* ---------- Featured products ---------- */
.home .featured-products{
  position:relative;
}

.home .home-product-grid > .woocommerce{
  margin:0;
}

.home .featured-products ul.products{
  gap:36px 18px;
}

.home .featured-products ul.products li.product{
  overflow:visible;
}

.home .featured-products ul.products li.product .woocommerce-loop-product__link{
  display:block;
  overflow:hidden;
}

.home .featured-products ul.products li.product a img{
  width:100%;
  margin:0 0 12px;
  aspect-ratio:4/5;
  object-fit:cover;
  transition:transform .7s cubic-bezier(.2,.6,.2,1),opacity .25s ease;
}

.home .featured-products ul.products li.product:hover a img{
  transform:scale(1.025);
  opacity:1;
}

.home .featured-products ul.products li.product .woocommerce-loop-product__title{
  margin:0 0 3px;
  padding:0;
  font-size:15px;
  line-height:1.25;
}

.home .featured-products ul.products li.product .price{
  margin:0;
  font-size:14px;
  line-height:1.35;
}

.home .featured-products ul.products li.product .button{
  display:none!important;
}

/* ---------- Categories ---------- */
.home .category-grid-wrap{
  display:block;
}

.home .category-grid{
  padding:0;
}

.home .category-card{
  min-height:0;
  border-radius:0;
  background:#ddd;
}

.home .category-card:after{
  inset:28% 0 0;
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.66));
}

.home .category-card img{
  transform:scale(1.001);
  transition:transform 1s cubic-bezier(.2,.6,.2,1),filter .45s ease;
}

.home .category-card:hover img{
  transform:scale(1.045);
}

.home .category-caption{
  bottom:26px;
  left:24px;
  right:24px;
  text-align:left;
}

.home .category-index{
  display:block!important;
  margin:0 0 7px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  font-size:9px!important;
  line-height:1.2;
  letter-spacing:2px!important;
  text-transform:uppercase;
  opacity:.7;
}

.home .category-caption h2{
  margin:0 0 15px;
  font-size:clamp(27px,3vw,40px);
  line-height:1;
  letter-spacing:-.8px;
}

.home .category-cta{
  display:inline-flex!important;
  align-items:center;
  gap:16px;
  padding:0 0 4px!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.65)!important;
  background:transparent!important;
  font-size:10px!important;
  letter-spacing:1.3px!important;
  text-transform:uppercase;
}

/* ---------- Reveal animations ---------- */
.home [data-reveal]{
  opacity:0;
  transform:translateY(34px);
  transition:opacity .75s ease,transform .85s cubic-bezier(.2,.7,.2,1);
}

.home [data-reveal].is-visible{
  opacity:1;
  transform:none;
}

.home .home-stagger-item{
  opacity:0;
  transform:translateY(26px);
}

.home [data-stagger].is-visible .home-stagger-item{
  opacity:1;
  transform:none;
  transition:
    opacity .65s ease var(--reveal-delay,0ms),
    transform .75s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms);
}

/* ---------- Mobile fashion-app treatment ---------- */
@media(max-width:767px){
  .home .home-hero{
    height:100svh;
    min-height:600px;
  }

  .home .home-hero .hero-copy{
    inset:auto 18px 86px;
    margin:0;
    text-align:left;
  }

  .home .hero-kicker{
    margin-bottom:12px;
    font-size:9px;
    letter-spacing:2px;
  }

  .home .home-hero .hero-copy h1{
    margin:0 0 22px;
    max-width:92%;
    font-size:clamp(42px,12vw,58px);
    line-height:.95;
    letter-spacing:-2px;
  }

  .home .home-hero .hero-button{
    min-width:178px;
    justify-content:space-between;
    padding:14px 17px;
    font-size:11px;
  }

  .home .slide-controls{
    left:18px;
    bottom:32px;
    transform:none;
  }

  .home .slide-controls button{
    width:42px;
  }

  .home .hero-swipe-hint{
    right:16px;
    bottom:24px;
  }

  .home .hero-swipe-hint span:first-child{
    display:none;
  }

  .home .home-section{
    width:100%;
    padding:62px 16px 68px;
  }

  .home .home-section-heading{
    margin-bottom:25px;
  }

  .home .home-eyebrow{
    font-size:9px;
    letter-spacing:2px;
  }

  .home .home-section-heading h2{
    max-width:90%;
    font-size:38px;
    line-height:.98;
    letter-spacing:-1.4px;
  }

  /* Large horizontal product rail: closer to a shopping app / editorial feed. */
  .home .featured-products{
    overflow:hidden;
  }

  .home .featured-products ul.products{
    display:flex!important;
    gap:10px!important;
    margin:0 -16px!important;
    padding:0 16px 12px!important;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }

  .home .featured-products ul.products::-webkit-scrollbar{
    display:none;
  }

  .home .featured-products ul.products li.product,
  .home .featured-products ul.products[class*=columns-] li.product{
    flex:0 0 76vw!important;
    width:76vw!important;
    min-width:0!important;
    margin:0!important;
    scroll-snap-align:start;
  }

  .home .featured-products ul.products li.product a img{
    aspect-ratio:4/5!important;
    margin-bottom:11px!important;
  }

  .home .featured-products ul.products li.product .woocommerce-loop-product__title{
    font-size:15px!important;
  }

  .home .featured-products ul.products li.product .price{
    font-size:14px!important;
  }

  .home .home-view-all{
    margin-top:18px;
    text-align:left;
  }

  /* Full-width editorial category cards. */
  .home .category-grid-wrap{
    padding-left:0;
    padding-right:0;
  }

  .home .category-grid-wrap .home-section-heading{
    padding-inline:16px;
  }

  .home .category-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    width:100%!important;
    padding:0!important;
    overflow:visible!important;
  }

  .home .category-card{
    width:100%!important;
    aspect-ratio:4/5!important;
    min-height:0;
  }

  .home .category-caption{
    bottom:28px;
    left:18px;
    right:18px;
  }

  .home .category-index{
    font-size:8px!important;
  }

  .home .category-caption h2{
    margin-bottom:14px;
    font-size:34px;
    letter-spacing:-1px;
  }

  .home .category-cta{
    font-size:9px!important;
  }

  .home .category-card:active img,
  .home .featured-products li.product:active img{
    transform:scale(.985);
  }
}

/* Tiny screens */
@media(max-width:350px){
  .home .home-hero .hero-copy h1{
    font-size:38px;
  }

  .home .featured-products ul.products li.product,
  .home .featured-products ul.products[class*=columns-] li.product{
    flex-basis:82vw!important;
    width:82vw!important;
  }
}

/* Accessibility */
@media(prefers-reduced-motion:reduce){
  .home .home-hero .hero-slide,
  .home .home-hero .hero-image,
  .home .hero-kicker,
  .home .home-hero .hero-copy h1,
  .home .home-hero .hero-button,
  .home [data-reveal],
  .home .home-stagger-item,
  .home .category-card img,
  .home .featured-products ul.products li.product a img{
    animation:none!important;
    transition:none!important;
    transform:none!important;
  }

  .home [data-reveal],
  .home .home-stagger-item{
    opacity:1!important;
  }

  .home .slide-controls button[aria-pressed="true"] span:after{
    animation:none!important;
    transform:scaleX(1);
  }
}
/* =========================================================
   MOBILE HERO TITLE FIT FIX
   Keep long collection titles fully visible on small screens.
   ========================================================= */
@media(max-width:767px){
  .home .home-hero .hero-copy{
    right:18px;
    max-width:calc(100vw - 36px);
    overflow:visible;
  }

  .home .home-hero .hero-copy h1{
    width:100%;
    max-width:100%;
    font-size:clamp(34px,10.5vw,48px);
    line-height:.98;
    letter-spacing:-1.5px;
    white-space:normal;
    overflow-wrap:anywhere;
    word-break:normal;
  }
}

@media(max-width:390px){
  .home .home-hero .hero-copy h1{
    font-size:clamp(32px,10vw,42px);
  }
}
/* =========================================================
   Homepage typing word
   ========================================================= */
.home .home-heading-type{
  display:inline-block;
  min-width:9.2ch;
  white-space:nowrap;
}

.home .home-type-caret{
  display:inline-block;
  width:1px;
  height:.9em;
  margin-left:3px;
  vertical-align:-.05em;
  background:currentColor;
  animation:feminieCaretBlink .75s steps(1,end) infinite;
}

@keyframes feminieCaretBlink{
  0%,48%{opacity:1}
  49%,100%{opacity:0}
}

@media(prefers-reduced-motion:reduce){
  .home .home-type-caret{
    display:none;
  }
}
/* Her, Unfiltered — responsive heading fit */
.home .home-section-heading h2{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  column-gap:.22em;
  max-width:100%;
}

.home .home-heading-type{
  min-width:9.2ch;
}

@media(min-width:768px){
  .home .home-section-heading h2{
    font-size:clamp(40px,5vw,68px);
    line-height:1;
    letter-spacing:-1.8px;
  }
}

@media(max-width:767px){
  .home .home-section-heading h2{
    display:block;
    font-size:clamp(34px,10.5vw,42px);
    line-height:1;
    letter-spacing:-1.3px;
  }
}
/* =========================================================
   FEMINIE DESKTOP HOMEPAGE POLISH
   Desktop only — mobile layout stays unchanged.
   ========================================================= */
@media(min-width:768px){

  /* Keep the hero cinematic without letting it dominate the whole screen. */
  .home .home-hero{
    height:min(76vh,760px);
    min-height:560px;
  }

  .home .home-hero .hero-copy{
    bottom:78px;
    max-width:760px;
  }

  .home .home-hero .hero-copy h1{
    font-size:clamp(44px,4.7vw,68px);
    line-height:.98;
    letter-spacing:-2px;
  }

  .home .hero-kicker{
    font-size:10px;
  }

  .home .home-hero .hero-button{
    min-width:180px;
    padding:14px 20px;
  }

  /* Desktop content width and rhythm */
  .home .home-section{
    width:calc(100% - 80px);
    max-width:1280px;
    margin-inline:auto;
    padding-top:76px;
    padding-bottom:82px;
  }

  .home .home-section-heading{
    margin-bottom:30px;
  }

  .home .home-section-heading h2{
    display:block;
    max-width:760px;
    font-size:clamp(42px,4vw,56px);
    line-height:1.02;
    letter-spacing:-1.5px;
  }

  /* Product grid: editorial, but not oversized. */
  .home .featured-products ul.products{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:34px 16px!important;
    margin:0!important;
    padding:0!important;
  }

  .home .featured-products ul.products li.product,
  .home .featured-products ul.products[class*=columns-] li.product{
    width:auto!important;
    min-width:0!important;
    margin:0!important;
  }

  .home .featured-products ul.products li.product a img{
    aspect-ratio:4/5!important;
    max-height:420px;
    object-fit:cover;
  }

  .home .featured-products ul.products li.product .woocommerce-loop-product__title{
    font-size:14px!important;
  }

  .home .featured-products ul.products li.product .price{
    font-size:13px!important;
  }

  .home .home-view-all{
    margin-top:30px;
  }

  /* Categories: three balanced cards instead of giant full-bleed panels. */
  .home .category-grid-wrap{
    width:calc(100% - 80px);
    max-width:1280px;
    margin-inline:auto;
  }

  .home .category-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:16px!important;
    width:100%!important;
    padding:0!important;
    overflow:visible!important;
  }

  .home .category-card{
    width:100%!important;
    aspect-ratio:4/5!important;
    min-height:0!important;
  }

  .home .category-caption{
    bottom:22px;
    left:20px;
    right:20px;
  }

  .home .category-caption h2{
    margin-bottom:12px;
    font-size:30px;
  }

  .home .category-cta{
    font-size:9px!important;
  }

  /* Her, Unfiltered: strong but proportional on desktop. */
  .home .home-heading-type{
    min-width:0;
  }

  .home .home-type-caret{
    height:.82em;
  }
}

/* Larger desktop screens: keep cards elegant rather than huge. */
@media(min-width:1280px){
  .home .featured-products ul.products li.product a img{
    max-height:440px;
  }

  .home .category-grid{
    gap:18px!important;
  }
}

/* =========================================================
   FEMINIE STOREFRONT FINAL POLISH
   Header intentionally untouched.
   ========================================================= */

/* ---------- Product cards: restrained premium interaction ---------- */
@media(hover:hover) and (pointer:fine){
  .woocommerce ul.products li.product .woocommerce-loop-product__link{
    overflow:hidden;
  }

  .woocommerce ul.products li.product a img{
    transition:transform .55s cubic-bezier(.2,.6,.2,1),opacity .25s ease;
  }

  .woocommerce ul.products li.product:hover a img{
    transform:scale(1.018);
    opacity:1;
  }

  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .woocommerce ul.products li.product .price{
    transition:opacity .2s ease,transform .25s ease;
  }

  .woocommerce ul.products li.product:hover .woocommerce-loop-product__title,
  .woocommerce ul.products li.product:hover .price{
    transform:translateY(-1px);
  }

  .home .category-card .category-caption{
    transition:transform .45s cubic-bezier(.2,.7,.2,1);
  }

  .home .category-card:hover .category-caption{
    transform:translateY(-5px);
  }
}

/* ---------- Desktop product page ---------- */
@media(min-width:990px){
  .single-product .shop-content{
    width:calc(100% - 80px);
    max-width:1360px;
    padding-top:34px;
  }

  .single-product .woocommerce-breadcrumb{
    margin-bottom:24px;
    font-size:12px;
    color:#777;
  }

  .single-product div.product div.images{
    width:56%;
    margin-bottom:70px;
  }

  .single-product div.product div.summary{
    float:right;
    width:38%;
    max-width:470px;
    margin-bottom:70px;
    padding:18px 0 0;
    position:sticky;
    top:24px;
    align-self:start;
  }

  .single-product div.product .product_title{
    margin-bottom:12px;
    font-size:clamp(32px,3vw,46px);
    line-height:1.02;
    letter-spacing:-1.4px;
  }

  .single-product div.product p.price{
    margin-bottom:18px;
    font-size:19px;
  }

  .single-product div.product .woocommerce-product-details__short-description{
    max-width:440px;
    margin-bottom:18px;
    color:#666;
    font-size:14px;
    line-height:1.65;
  }

  .single-product div.product div.images .woocommerce-product-gallery__image img{
    width:100%;
    aspect-ratio:4/5;
    object-fit:cover;
    background:#f2f2f2;
  }

  .single-product div.product div.images .flex-control-thumbs{
    display:flex;
    gap:8px;
    overflow-x:auto;
    margin-top:10px;
    scrollbar-width:none;
  }

  .single-product div.product div.images .flex-control-thumbs::-webkit-scrollbar{
    display:none;
  }

  .single-product div.product div.images .flex-control-thumbs li{
    flex:0 0 70px;
    width:70px!important;
  }

  .single-product div.product div.images .flex-control-thumbs img{
    width:70px!important;
    height:88px!important;
    object-fit:cover;
    opacity:.52;
    transition:opacity .2s ease;
  }

  .single-product div.product div.images .flex-control-thumbs img.flex-active,
  .single-product div.product div.images .flex-control-thumbs img:hover{
    opacity:1;
  }

  .single-product .product-gallery-count{
    right:14px;
    bottom:98px;
    padding:4px 9px;
    border-radius:14px;
    background:rgba(255,255,255,.92);
    font-size:10px;
  }

  .single-product .feminie-stock-status{
    margin:12px 0 18px;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.7px;
  }

  /* Quantity + buttons: no floating label on desktop. */
  .single-product div.product form.cart .quantity-label{
    display:none!important;
  }

  .single-product div.product form.cart{
    display:grid!important;
    grid-template-columns:82px minmax(0,1fr);
    gap:9px;
    width:100%;
    margin:20px 0 18px!important;
  }

  .single-product div.product form.cart .quantity{
    grid-column:1;
    width:82px!important;
    margin:0!important;
  }

  .single-product div.product form.cart .quantity .qty{
    width:82px!important;
    height:52px;
    border:1px solid #cfcfcf;
    border-radius:2px;
    text-align:center;
  }

  .single-product div.product form.cart .single_add_to_cart_button{
    grid-column:2;
    width:100%;
    min-height:52px;
    margin:0!important;
  }

  .single-product div.product form.cart .feminie-buy-now{
    grid-column:1/-1;
    width:100%;
    min-height:50px;
    margin:0!important;
  }

  /* Variable products */
  .single-product div.product form.cart.variations_form{
    display:block!important;
  }

  .single-product div.product form.cart.variations_form .variations{
    width:100%;
    margin:0 0 18px;
  }

  .single-product div.product form.cart.variations_form .variations tr{
    display:block;
    margin-bottom:16px;
  }

  .single-product div.product form.cart.variations_form .variations th,
  .single-product div.product form.cart.variations_form .variations td{
    display:block;
    width:100%;
    padding:0;
    text-align:left;
  }

  .single-product div.product form.cart.variations_form .variations th{
    margin-bottom:8px;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.7px;
  }

  .single-product div.product form.cart.variations_form .single_variation_wrap{
    display:block;
  }

  .single-product div.product form.cart.variations_form .woocommerce-variation-add-to-cart{
    display:grid;
    grid-template-columns:82px minmax(0,1fr);
    gap:9px;
  }

  .single-product div.product form.cart.variations_form .woocommerce-variation-add-to-cart .quantity{
    grid-column:1;
  }

  .single-product div.product form.cart.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button{
    grid-column:2;
  }

  .single-product div.product form.cart.variations_form .woocommerce-variation-add-to-cart .feminie-buy-now{
    grid-column:1/-1;
  }

  .variation-swatches{
    gap:8px;
  }

  .variation-swatches button{
    min-width:44px;
    height:42px;
    border-radius:22px;
    transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
  }

  .variation-swatches button:hover:not(:disabled){
    transform:translateY(-1px);
    border-color:#222;
  }

  .product-assurances{
    margin-top:22px;
  }

  .product-assurances>div,
  .product-assurances>a{
    min-height:52px;
    align-items:center;
    padding:13px 0;
    font-size:13px;
  }

  .product-accordions{
    clear:both;
    max-width:760px;
    margin:30px 0 60px 62%;
  }

  .product-accordion summary{
    min-height:62px;
  }

  .feminie-styled-by-you{
    clear:both;
    padding-top:60px;
    border-top:1px solid #eee;
  }

  .feminie-styled-by-you h2{
    margin-bottom:24px;
    text-align:left;
    font-size:22px;
    letter-spacing:1px;
  }

  .feminie-styled-rail{
    gap:14px;
  }

  .feminie-styled-rail img,
  .feminie-styled-rail video{
    flex-basis:300px;
    width:300px;
    border-radius:2px;
  }

  .related.products{
    clear:both;
    padding-top:65px;
    border-top:1px solid #eee;
  }

  .related.products>h2{
    margin-bottom:26px!important;
    font-size:28px!important;
    letter-spacing:-.5px;
  }

  .related.products ul.products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:30px 14px!important;
  }

  .related.products ul.products li.product .button{
    display:none!important;
  }
}

/* ---------- Tablet product page ---------- */
@media(min-width:768px) and (max-width:989px){
  .single-product .shop-content{
    width:calc(100% - 40px);
  }

  .single-product div.product .summary{
    padding-top:10px;
  }

  .single-product div.product form.cart .quantity-label{
    display:none!important;
  }
}

/* ---------- Premium footer ---------- */
.site-footer{
  border-top:1px solid #e8e8e8;
  background:#f3f1ee;
}

.footer-editorial{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(170px,.55fr) minmax(300px,1fr);
  gap:70px;
  padding-top:72px;
  padding-bottom:64px;
}

.footer-kicker{
  display:block;
  margin-bottom:14px;
  color:#777;
  font-size:9px;
  line-height:1;
  letter-spacing:2.2px;
  text-transform:uppercase;
}

.footer-brand-block h2,
.site-footer .newsletter h2{
  margin:0 0 18px;
  font-size:clamp(28px,3vw,46px);
  line-height:1.02;
  letter-spacing:-1.1px;
}

.footer-brand-block p,
.site-footer .newsletter p{
  max-width:430px;
  color:#686868;
  font-size:13px;
  line-height:1.65;
}

.site-footer .footer-links{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.site-footer .footer-links a,
.site-footer .footer-links .text-button{
  margin:0 0 8px;
  padding:0;
  font-size:13px;
}

.site-footer .footer-links ul{
  list-style:none;
  margin:0;
  padding:0;
}

.site-footer .newsletter{
  max-width:none;
}

.site-footer .newsletter-form input[type=email]{
  min-height:50px;
  border:0;
  border-bottom:1px solid #888;
  border-radius:0;
  background:transparent;
  padding-inline:0;
}

.site-footer .newsletter-form .button{
  min-height:50px;
  border-radius:0;
  padding-inline:22px;
}

.site-footer .newsletter-form .consent{
  color:#777;
}

.site-footer .footer-social{
  margin-top:24px;
}

.site-footer .footer-social a{
  width:38px;
  height:38px;
  border-color:#c9c5c0;
  transition:transform .2s ease,background .2s ease,color .2s ease;
}

.site-footer .footer-social a:hover{
  transform:translateY(-2px);
  background:#242424;
  color:#fff;
  text-decoration:none;
}

.site-footer .footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-top:20px;
  padding-bottom:22px;
  border-top:1px solid #d8d4cf;
  color:#777;
  font-size:11px;
}

.footer-bottom-note{
  text-align:right;
}

@media(max-width:767px){
  .footer-editorial{
    display:grid;
    grid-template-columns:1fr;
    gap:42px;
    width:calc(100% - 32px);
    padding-top:50px;
    padding-bottom:42px;
  }

  .footer-brand-block h2,
  .site-footer .newsletter h2{
    font-size:32px;
  }

  .site-footer .newsletter-form{
    grid-template-columns:1fr;
  }

  .site-footer .newsletter-form .button{
    width:100%;
  }

  .site-footer .footer-bottom{
    width:calc(100% - 32px);
    flex-direction:column;
    gap:5px;
    text-align:left;
  }

  .footer-bottom-note{
    text-align:left;
  }
}

/* ---------- Lightweight performance / motion ---------- */
@media(prefers-reduced-motion:no-preference){
  .woocommerce ul.products li.product,
  .category-card{
    content-visibility:auto;
    contain-intrinsic-size:1px 480px;
  }
}

@media(prefers-reduced-motion:reduce){
  .site-footer .footer-social a,
  .variation-swatches button,
  .woocommerce ul.products li.product a img,
  .home .category-card .category-caption{
    transition:none!important;
    transform:none!important;
  }
}
/* =========================================================
   PRODUCT DESKTOP HOTFIX
   Restores a stable two-column WooCommerce product layout.
   ========================================================= */
@media(min-width:990px){
  .single-product .shop-content{
    width:calc(100% - 80px)!important;
    max-width:1360px!important;
    margin-inline:auto!important;
    padding-top:34px!important;
  }

  .single-product div.product{
    display:grid!important;
    grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr)!important;
    column-gap:64px!important;
    align-items:start!important;
  }

  .single-product div.product::before,
  .single-product div.product::after{
    display:none!important;
    content:none!important;
  }

  .single-product div.product div.images,
  .single-product div.product div.summary{
    float:none!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    clear:none!important;
  }

  .single-product div.product div.images{
    grid-column:1!important;
    grid-row:1!important;
  }

  .single-product div.product div.summary{
    grid-column:2!important;
    grid-row:1!important;
    position:sticky!important;
    top:24px!important;
    padding:10px 0 0!important;
  }

  .single-product div.product .product_title{
    position:static!important;
    margin:0 0 10px!important;
    font-size:40px!important;
    line-height:1.05!important;
  }

  .single-product div.product p.price{
    position:static!important;
    margin:0 0 14px!important;
  }

  .single-product div.product .woocommerce-product-details__short-description{
    position:static!important;
    margin:0 0 18px!important;
    max-width:100%!important;
  }

  .single-product div.product form.cart,
  .single-product div.product form.cart.variations_form{
    position:static!important;
    width:100%!important;
    max-width:none!important;
    margin:18px 0!important;
  }

  .single-product div.product .product_meta,
  .single-product .product-assurances{
    position:static!important;
  }

  .single-product .product-accordions{
    grid-column:2!important;
    width:100%!important;
    max-width:none!important;
    margin:24px 0 0!important;
  }

  .single-product .feminie-styled-by-you,
  .single-product .related.products{
    grid-column:1 / -1!important;
    width:100%!important;
  }

  .single-product .feminie-styled-by-you{
    margin-top:60px!important;
  }

  .single-product .related.products{
    margin-top:60px!important;
  }

  .single-product div.product div.images .woocommerce-product-gallery__image img{
    width:100%!important;
    height:auto!important;
    aspect-ratio:4/5!important;
    object-fit:cover!important;
  }
}

@media(min-width:768px) and (max-width:989px){
  .single-product div.product div.images,
  .single-product div.product div.summary{
    float:none!important;
    width:100%!important;
  }

  .single-product div.product div.summary{
    position:static!important;
  }

  .single-product .product-accordions{
    margin:24px 0 0!important;
  }
}
/* =========================================================
   PRODUCT DESKTOP FLOW FIX v2
   Force every WooCommerce section into its own grid row so
   Description / Delivery / Returns can never overlap summary.
   ========================================================= */
@media(min-width:990px){

  .single-product div.product{
    display:grid!important;
    grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr)!important;
    grid-template-rows:auto auto auto auto!important;
    column-gap:64px!important;
    row-gap:0!important;
    align-items:start!important;
  }

  .single-product div.product > div.images{
    grid-column:1!important;
    grid-row:1 / span 2!important;
    position:relative!important;
    z-index:1!important;
  }

  .single-product div.product > div.summary{
    grid-column:2!important;
    grid-row:1!important;
    position:relative!important;
    top:auto!important;
    z-index:2!important;
    float:none!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:10px 0 0!important;
    align-self:start!important;
  }

  /* Nothing inside the summary may float over the next section. */
  .single-product div.product > div.summary > *{
    position:static!important;
    float:none;
    max-width:100%;
  }

  .single-product div.product > div.summary::after{
    content:"";
    display:block;
    clear:both;
  }

  .single-product div.product > .woocommerce-tabs,
  .single-product div.product > .product-accordions{
    grid-column:2!important;
    grid-row:2!important;
    position:relative!important;
    inset:auto!important;
    float:none!important;
    clear:both!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    margin:28px 0 0!important;
    padding:0!important;
    z-index:1!important;
  }

  /* If the custom accordion is present, don't render the old Woo tabs too. */
    .single-product div.product > .woocommerce-tabs .panel,
  .single-product div.product > .product-accordions .woocommerce-Tabs-panel{
    position:static!important;
    float:none!important;
    clear:both!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    margin:0!important;
  }

  .single-product .product-accordion{
    position:relative!important;
    width:100%!important;
  }

  .single-product .product-accordion summary{
    position:relative!important;
    width:100%!important;
    min-height:58px!important;
    margin:0!important;
  }

  .single-product .product-assurances{
    position:static!important;
    clear:both!important;
    width:100%!important;
    margin:22px 0 0!important;
  }

  .single-product div.product > .feminie-styled-by-you{
    grid-column:1 / -1!important;
    grid-row:3!important;
    position:relative!important;
    clear:both!important;
    width:100%!important;
    margin:64px 0 0!important;
  }

  .single-product div.product > .related.products{
    grid-column:1 / -1!important;
    grid-row:4!important;
    position:relative!important;
    clear:both!important;
    width:100%!important;
    margin:64px 0 0!important;
  }

  /* Standard WooCommerce tabs fallback when no custom accordion exists. */
  .single-product div.product > .woocommerce-tabs ul.tabs{
    display:none!important;
  }

  .single-product div.product > .woocommerce-tabs .woocommerce-Tabs-panel{
    display:block!important;
  }
}
/* =========================================================
   RESTORE PRODUCT DESCRIPTION
   Keep WooCommerce description/reviews visible and in normal flow.
   ========================================================= */
@media(min-width:990px){
  .single-product div.product > .woocommerce-tabs{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    grid-column:2!important;
    position:relative!important;
    width:100%!important;
    height:auto!important;
    margin:28px 0 0!important;
    overflow:visible!important;
  }

  .single-product div.product > .woocommerce-tabs .woocommerce-Tabs-panel,
  .single-product div.product > .woocommerce-tabs .panel{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:static!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }

  .single-product div.product > .woocommerce-tabs #tab-description{
    display:block!important;
  }
}
