/*
Theme Name: IntimateMart Storefront Child
Theme URI: https://intimatemart.com/
Description: IntimateMart WooCommerce theme using the approved SOLÉRE design system.
Author: WD23
Template: storefront
Version: 2.9.272
Text Domain: intimatemart-storefront-child
*/

@font-face {
  font-family:'IntimateMart Brand';
  src:url('assets/fonts/Nunito-Variable.ttf') format('truetype-variations');
  font-style:normal;
  font-weight:200 1000;
  font-display:swap;
}

/* 2.9.236: two-up For Her / For Him collection close on the homepage. */
.home .im-audience-split {
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	width: 100%;
	margin: 0;
	background: #111;
}

.home .im-audience-split__card {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: 0;
	min-height: 760px;
	padding: 64px;
	color: #fff;
	overflow: hidden;
	text-align: center;
	text-decoration: none;
	isolation: isolate;
}

.home .im-audience-split__card::after {
	position: absolute;
	z-index: -1;
	inset: 0;
	background: linear-gradient(180deg,rgb(0 0 0 / 8%) 20%,rgb(0 0 0 / 48%) 100%);
	content: '';
}

.home .im-audience-split__card > img {
	position: absolute;
	z-index: -2;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .6s cubic-bezier(.2,.65,.3,1);
}

.home .im-audience-split__card:hover > img,
.home .im-audience-split__card:focus-visible > img {
	transform: scale(1.025);
}

.home .im-audience-split__content {
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	gap: 10px;
	width: 100%;
	max-width: 520px;
	color: #fff;
	text-align: center;
}

.home .im-audience-split .im-title-eyebrow {
	margin: 0 !important;
	color: #fff !important;
	text-align: center !important;
}

.home .im-audience-split__content h2 {
	display: block;
	margin: 0 !important;
	color: #fff;
	font: 300 clamp(48px,5vw,72px)/1 Arial,Helvetica,sans-serif;
	letter-spacing: -.045em;
	text-align: center !important;
	text-transform: lowercase;
}

.home .im-audience-split__content h2 strong {
	font-weight: 900;
}

.home .im-audience-split .im-title-subtitle {
	display: block;
	margin: 0 !important;
	color: #fff !important;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.45;
	text-align: center !important;
}

.home .im-audience-split__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 24px;
	border: 1px solid #fff;
	border-radius: 6px;
	background: #fff;
	color: #111;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .1em;
	margin-top: 18px;
	transition: background-color .2s,color .2s;
}

.home .im-audience-split__card:hover .im-audience-split__cta,
.home .im-audience-split__card:focus-visible .im-audience-split__cta {
	background: transparent;
	color: #fff;
}

@media (max-width: 780px) {
	.home .im-audience-split {
		grid-template-columns: 1fr;
	}

	.home .im-audience-split__card {
		min-height: 560px;
		padding: 42px 22px;
	}

	.home .im-audience-split__content {
		gap: 8px;
	}

	.home .im-audience-split__content h2 {
		font-size: 48px;
	}
}

/* 2.9.257: restrained empty mini-cart typography and theme-matched CTA. */
.wc-block-mini-cart__drawer .wc-block-mini-cart__empty-cart-wrapper,
.wc-block-mini-cart__drawer .wc-block-mini-cart__empty-cart-wrapper p,
.wc-block-mini-cart__drawer .wc-block-mini-cart__empty-cart-wrapper p strong {
	font-family: Arial, Helvetica, sans-serif !important;
	font-weight: 400 !important;
}

.wc-block-mini-cart__drawer .wc-block-mini-cart__empty-cart-wrapper p {
	margin-bottom: 22px !important;
	color: #111;
	font-size: 1rem;
	line-height: 1.5;
}

.wc-block-mini-cart__drawer a.wc-block-mini-cart__shopping-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: auto;
	min-width: 190px;
	height: 48px !important;
	min-height: 48px !important;
	padding: 0 26px !important;
	border: 1px solid #111;
	border-radius: 6px !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #111 !important;
	font: 400 .72rem/1 Arial, Helvetica, sans-serif !important;
	letter-spacing: .08em;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color .2s ease, color .2s ease;
}

.wc-block-mini-cart__drawer a.wc-block-mini-cart__shopping-button:hover,
.wc-block-mini-cart__drawer a.wc-block-mini-cart__shopping-button:focus-visible {
	background: #111 !important;
	color: #fff !important;
}

/* Minimal consent interface: scoped to Complianz only. */
.cmplz-cookiebanner,
.cmplz-cookiebanner *,
#cmplz-manage-consent .cmplz-manage-consent {
	font-family: Arial, Helvetica, sans-serif !important;
}

.cmplz-cookiebanner {
	background: #fff !important;
	color: #111 !important;
	border: 1px solid #d8d8d8 !important;
	border-radius: 6px !important;
	box-shadow: 0 12px 36px rgba(0, 0, 0, 0.12) !important;
}

.cmplz-cookiebanner .cmplz-title {
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
}

.cmplz-cookiebanner .cmplz-message,
.cmplz-cookiebanner .cmplz-category-title,
.cmplz-cookiebanner .cmplz-description {
	font-size: 13px !important;
	line-height: 1.45 !important;
}

.cmplz-cookiebanner .cmplz-btn {
	min-height: 44px !important;
	border-radius: 6px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
}

.cmplz-cookiebanner .cmplz-accept {
	background: #111 !important;
	border-color: #111 !important;
	color: #fff !important;
}

.cmplz-cookiebanner .cmplz-deny,
.cmplz-cookiebanner .cmplz-view-preferences,
.cmplz-cookiebanner .cmplz-save-preferences {
	background: #fff !important;
	border-color: #9a9a9a !important;
	color: #111 !important;
}

.cmplz-cookiebanner a,
.cmplz-cookiebanner .cmplz-link {
	color: #111 !important;
	text-underline-offset: 3px;
}

#cmplz-manage-consent .cmplz-manage-consent {
	background: #111 !important;
	color: #fff !important;
	border-radius: 6px 6px 0 0 !important;
}

/* Campaign-image treatment for the editorial bundle cards. */
.home .im-bundle-card .im-bundle-card__scene {
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
	transition: transform .6s cubic-bezier(.2, .7, .2, 1), filter .35s ease;
}

.home .im-bundle-card > a::after {
	z-index: 1;
}

.home .im-bundle-card > a > div {
	z-index: 3;
}

.home .im-bundle-card:hover .im-bundle-card__scene,
.home .im-bundle-card:focus-within .im-bundle-card__scene {
	filter: saturate(1.04);
	transform: scale(1.025);
}

:root { --solere-ink:#111; --solere-line:#d9d9d9; --solere-font:Arial,sans-serif; }
html,body,.site,.site-header,.site-content,.site-footer,.woocommerce,.wp-site-blocks { font-family:var(--solere-font)!important; }
body :where(h1,h2,h3,h4,h5,h6,p,a,li,dt,dd,label,legend,summary,blockquote,figcaption,caption,th,td,small,strong,em,mark,time,address,code,kbd,samp,var,button,input,textarea,select,option,optgroup) { font-family:var(--solere-font)!important; }
body,button,input,textarea,select,h1,h2,h3,h4,h5,h6 { color:var(--solere-ink); }
a:focus,input:focus,textarea:focus,select:focus,button:focus { outline-color:#111!important; box-shadow:none; }
a:focus:not(:focus-visible),button:focus:not(:focus-visible) { outline:0!important; }
a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible { outline:1px solid #111!important; outline-offset:2px; }
@media (hover:none) and (pointer:coarse) { a,button,summary,label,input,select,textarea,[role="button"],[tabindex] { -webkit-tap-highlight-color:transparent!important; } }
body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) .storefront-breadcrumb { display:none; }
body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) .site-content>.col-full { box-sizing:border-box; width:100%; max-width:960px; margin-inline:auto; padding:4.5rem 24px 7rem; }
body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) .content-area { float:none; width:100%; margin:0; }
body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) article { width:100%; margin:0; }
body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) .entry-header,
body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) .entry-content { width:100%; max-width:820px; margin-inline:auto; }
body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) .entry-header h1 { margin:0 0 2.5rem; font-size:1.7rem!important; letter-spacing:.04em; text-transform:uppercase; }
body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) .entry-content { color:#222; font-size:.94rem; line-height:1.75; }
body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) .entry-content h2 { margin:2.75rem 0 .85rem; font-size:1rem!important; font-weight:700!important; line-height:1.4; }
body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) .entry-content h3 { margin:2rem 0 .65rem; font-size:.94rem!important; font-weight:700!important; line-height:1.45; }
body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) .entry-content :is(h4,h5,h6) { margin:1.75rem 0 .55rem; font-size:.94rem!important; font-weight:700!important; line-height:1.45; }
body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) .entry-content strong { font-weight:700; }
body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-refund-returns,.page-shipping-delivery,.page-secure-payment,.page-order-tracking,.page-contact) .storefront-breadcrumb { display:none; }
body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-refund-returns,.page-shipping-delivery,.page-secure-payment,.page-order-tracking,.page-contact) .site-content>.col-full { box-sizing:border-box; width:100%; max-width:960px; margin-inline:auto; padding:4.5rem 24px 7rem; }
body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-refund-returns,.page-shipping-delivery,.page-secure-payment,.page-order-tracking,.page-contact) .content-area { float:none; width:100%; margin:0; }
body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-refund-returns,.page-shipping-delivery,.page-secure-payment,.page-order-tracking,.page-contact) article { width:100%; margin:0; }
body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-refund-returns,.page-shipping-delivery,.page-secure-payment,.page-order-tracking,.page-contact) :is(.entry-header,.entry-content) { width:100%; max-width:820px; margin-inline:auto; }
body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-refund-returns,.page-shipping-delivery,.page-secure-payment,.page-order-tracking,.page-contact) .entry-header h1 { margin:0 0 2.5rem; font-size:1.7rem!important; letter-spacing:.04em; text-transform:uppercase; }
body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-refund-returns,.page-shipping-delivery,.page-secure-payment,.page-order-tracking,.page-contact) .entry-content { color:#222; font-size:.94rem; line-height:1.75; }
body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-refund-returns,.page-shipping-delivery,.page-secure-payment,.page-order-tracking,.page-contact) .entry-content h2 { margin:2.75rem 0 .85rem; font-size:1rem!important; font-weight:700!important; line-height:1.4; }
body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-refund-returns,.page-shipping-delivery,.page-secure-payment,.page-order-tracking,.page-contact) .entry-content p { margin:0 0 1.2rem; }
@media (max-width:600px) { body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-refund-returns,.page-shipping-delivery,.page-secure-payment,.page-order-tracking,.page-contact) .site-content>.col-full { padding:3rem 20px 5rem; } }
.page-about-us .storefront-breadcrumb,.page-about-us .entry-header { display:none; }
.page-about-us .site-content>.col-full,.page-about-us .content-area,.page-about-us .site-main,.page-about-us article,.page-about-us .entry-content { width:100%; max-width:none; margin:0; padding:0; float:none; }
.solere-about { margin:0; color:#111; }
.solere-about img { border-radius:0!important; }
.solere-about__hero figure,.solere-about__hero img { display:block; width:100%; height:calc(100svh - 73px); min-height:620px; margin:0; object-fit:cover; object-position:center; }
.solere-about__intro { max-width:920px; margin:0 auto; padding:7rem 30px; text-align:center; }
.solere-about__intro h1 { margin:0 0 2rem; font:400 clamp(1.9rem,3vw,3rem)/1.05 Arial,Helvetica,sans-serif!important; letter-spacing:-.035em; text-transform:uppercase; }
.solere-about__intro p { max-width:760px; margin:0 auto; color:#333; font-size:.96rem; line-height:1.8; }
.solere-about__pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; margin:0; padding:0 0 7rem; }
.solere-about__pair>.wp-block-column { min-width:0; margin:0!important; }
.solere-about__pair figure,.solere-about__pair img { display:block; width:100%; height:auto; min-height:0; aspect-ratio:2/3; margin:0; object-fit:cover; }
.solere-about__quote { position:relative; display:flex; flex-direction:column; box-sizing:border-box; min-height:0; margin:0; padding:0; overflow:hidden; background:#fff!important; }
.solere-about__quote>.wp-block-cover__image-background { position:relative; z-index:0; order:2; inset:auto; display:block!important; width:100%; height:82vh; object-fit:cover; }
.solere-about__quote>.wp-block-cover__background { display:none!important; }
.solere-about__quote>.wp-block-cover__inner-container { position:relative; z-index:1; order:1; display:flex; align-self:stretch; align-items:center; justify-content:center; box-sizing:border-box; width:100%!important; max-width:none!important; min-height:0; padding:64px 96px; background:#fff; }
.page-about-us .solere-about__quote,.page-about-us article,.page-about-us .entry-content,.page-about-us .site-main { margin-bottom:0!important; padding-bottom:0!important; }
.page-about-us .site-footer { margin-top:0!important; }
.solere-about__quote blockquote { max-width:1088px; margin:0 auto; padding:0; border:0; color:#232323; font:400 21px/33.6px Arial,sans-serif; letter-spacing:normal; text-align:center; text-shadow:none; }
.solere-about__quote blockquote p { margin:0; }
.solere-about__quote blockquote p { color:#232323!important; }
.solere-about__final figure,.solere-about__final img { display:block; width:100%; height:82vh; min-height:650px; margin:0; object-fit:cover; object-position:center; }
.site-header { position:sticky; z-index:1000; top:0; height:73px; margin:0; padding:0; border:0; background:#fff; }
.admin-bar .site-header { top:0; }
.solere-site-header { display:grid; grid-template-columns:180px 1fr 180px; align-items:center; width:100%; height:73px; padding:0 34px; gap:20px; border-bottom:1px solid #ddd; }
.solere-site-header a { color:#111; text-decoration:none; }
.solere-site-header__logo { justify-self:start; font-size:1.75rem; font-weight:500; line-height:1; letter-spacing:.11em; }
.solere-site-header__nav { display:flex; justify-self:center; align-items:center; gap:clamp(.65rem,1.15vw,1.15rem); }
.solere-site-header__nav a,.solere-site-header__login { font-size:.72rem; line-height:1; letter-spacing:.02em; text-transform:uppercase; white-space:nowrap; }
.solere-site-header__nav a { font-size:clamp(.58rem,.62vw,.7rem); }
.intimatemart-mega-menu { display:flex; align-items:center; height:73px; }
.intimatemart-mega-menu__trigger { display:flex; align-items:center; gap:.35rem; height:100%; margin:0; padding:0; border:0; border-radius:0; background:transparent; color:#111; font:400 clamp(.58rem,.62vw,.7rem)/1 Arial,Helvetica,sans-serif; letter-spacing:.02em; text-transform:uppercase; white-space:nowrap; }
.intimatemart-mega-menu__trigger:hover,.intimatemart-mega-menu__trigger:focus { background:transparent; color:#111; }
.intimatemart-mega-menu__trigger span { display:inline-block; font-size:.78rem; font-weight:300; transition:transform .18s ease; }
.intimatemart-mega-menu.is-open .intimatemart-mega-menu__trigger span { transform:rotate(45deg); }
.intimatemart-mega-menu__panel { position:fixed; z-index:1001; top:73px; right:0; left:0; max-height:calc(100vh - 73px); border-bottom:1px solid #d9d9d9; background:#fff; box-shadow:0 18px 34px rgb(0 0 0 / 8%); opacity:0; overflow:auto; pointer-events:none; transform:translateY(-8px); visibility:hidden; transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s; }
.intimatemart-mega-menu.is-open .intimatemart-mega-menu__panel { opacity:1; pointer-events:auto; transform:translateY(0); visibility:visible; transition-delay:0s; }
.intimatemart-mega-menu__inner { box-sizing:border-box; width:100%; max-width:1480px; margin:0 auto; padding:30px 34px 40px; }
.intimatemart-mega-menu__inner>header { display:flex; align-items:center; justify-content:space-between; margin:0 0 25px; padding:0 0 18px; border-bottom:1px solid #ddd; }
.intimatemart-mega-menu__inner>header p { margin:0; font-size:.72rem; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.solere-site-header__nav .intimatemart-mega-menu__inner>header a { padding-bottom:3px; border-bottom:1px solid #111; font-size:.68rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.intimatemart-mega-menu__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px 54px; }
.intimatemart-mega-menu__grid section { min-width:0; }
.solere-site-header__nav .intimatemart-mega-menu__grid a { display:block; margin:0; padding:3px 0; color:#333; font-size:.71rem; line-height:1.45; letter-spacing:0; text-transform:none; white-space:normal; }
.solere-site-header__nav .intimatemart-mega-menu__grid a:hover { color:#111; text-decoration:underline; text-underline-offset:3px; }
.solere-site-header__nav .intimatemart-mega-menu__grid .intimatemart-mega-menu__parent { margin:0 0 8px; padding:0 0 7px; border-bottom:1px solid #bbb; color:#111; font-size:.75rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.solere-site-header__women { position:relative; }
.solere-site-header__women>summary { cursor:pointer; list-style:none; font-size:.72rem; line-height:1; letter-spacing:.02em; text-transform:uppercase; white-space:nowrap; }
.solere-site-header__women>summary::-webkit-details-marker { display:none; }
.solere-site-header__women>summary::after { display:inline-block; margin-left:.4rem; content:'+'; font-size:.72rem; }
.solere-site-header__women[open]>summary::after { content:'−'; }
.solere-site-header__women>div { position:absolute; z-index:1002; top:calc(100% + 29px); left:50%; display:grid; width:220px; padding:1.25rem 1.4rem; border:1px solid #ddd; background:#fff; box-shadow:0 10px 24px rgb(0 0 0 / 6%); transform:translateX(-50%); }
.solere-site-header__women>div a { padding:.62rem 0; font-size:.7rem; }
.solere-site-header__tools { display:flex; justify-self:end; align-items:center; gap:1.3rem; }
.solere-site-header__tools .wp-block-woocommerce-mini-cart { margin:0!important; }
.solere-site-header__tools .wc-block-mini-cart__button { width:40px; min-width:40px; height:40px; padding:0; color:#111; background-color:transparent; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cg transform='matrix(1.3333333 0 0 -1.3333333 0 32)' fill='none' stroke='%23333' stroke-width='.774' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m8.093 15.43 8.276-.009c.295 0 .503-.402.533-.9l.414-6.942c.03-.498-.238-.9-.533-.9H7.758c-.295 0-.557.402-.533.9l.335 6.9c.024.498.237.951.533.951z'/%3E%3Cpath d='M14.876 15.946a2.605 2.694 0 0 1-1.307 2.336 2.605 2.694 0 0 1-2.609-.007 2.605 2.694 0 0 1-1.295-2.343'/%3E%3C/g%3E%3C/svg%3E"); background-position:center; background-repeat:no-repeat; background-size:40px 40px; }
.solere-site-header__tools .wc-block-mini-cart__icon { width:40px; height:40px; opacity:0; }
.solere-site-header__tools .wc-block-mini-cart__amount { display:none; }
.home .site-content>.col-full,.home .content-area,.home .site-main,.home article,.home .entry-content { box-sizing:border-box; float:none!important; width:100%!important; max-width:none!important; margin:0!important; padding:0!important; }
.home .entry-header { display:none!important; }
.home .site-header { display:block!important; margin-bottom:0!important; }
.home .solere-preview__header { display:none!important; }
.home .site-footer { display:block!important; }
.home .solere-preview__footer { display:none!important; }
.storefront-handheld-footer-bar { display:none!important; }
.home .solere-preview__logo { justify-self:start; margin:0!important; line-height:1!important; }
.home .solere-preview__logo a { color:#111; font:500 1.75rem/1 Arial,Helvetica,sans-serif!important; letter-spacing:.11em; text-decoration:none; }
.home .solere-preview__nav { justify-self:center; gap:2.1rem!important; height:73px; }
.home .solere-preview__nav .wp-block-navigation-item { margin:0; }
.home .solere-preview__nav a { color:#111; font:400 .72rem/1 Arial,Helvetica,sans-serif!important; letter-spacing:.02em; text-decoration:none; text-transform:uppercase; white-space:nowrap; }
.home .solere-preview__tools { justify-self:end; gap:1.3rem!important; margin:0!important; }
.home .solere-preview__tools>p { margin:0; }
.home .solere-preview__tools>p a { color:#111; font:400 .72rem/1 Arial,Helvetica,sans-serif; letter-spacing:.02em; text-decoration:none; text-transform:uppercase; }
.home .solere-preview__tools>p span { display:none; }
.wc-block-components-drawer.wc-block-mini-cart__drawer { right:auto!important; left:100%!important; width:50vw!important; max-width:640px!important; transform:translateX(-100%)!important; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__title { font:500 1.2rem/1.2 Arial,Helvetica,sans-serif!important; letter-spacing:.04em; text-align:center; text-transform:uppercase; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__title { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__header { min-height:82px; padding:0 28px; border-bottom:1px solid #ddd; }
.wc-block-mini-cart__drawer .wc-block-components-drawer__close { box-sizing:border-box; width:38px!important; min-width:38px!important; height:38px!important; min-height:38px!important; padding:8px!important; border:0!important; background:transparent!important; box-shadow:none!important; outline:0!important; -webkit-tap-highlight-color:transparent; }
.wc-block-mini-cart__drawer .wc-block-components-drawer__close:focus,.wc-block-mini-cart__drawer .wc-block-components-drawer__close:focus-visible { outline:0!important; box-shadow:none!important; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__items { padding:0 28px; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer { padding:18px 28px 22px; border-top:1px solid #ddd; }
.wc-block-mini-cart__drawer .wc-block-cart-items__row { display:grid; grid-template-columns:120px minmax(0,1fr) 72px!important; column-gap:18px!important; padding:24px 0!important; border-bottom:1px solid #ddd; }
.wc-block-mini-cart__drawer .wc-block-cart-item__image { width:120px!important; padding:0!important; }
.wc-block-mini-cart__drawer .wc-block-cart-item__image img { width:120px; aspect-ratio:3/4; object-fit:cover; }
.wc-block-mini-cart__drawer .wc-block-cart-item__product { padding:0!important; }
.wc-block-mini-cart__drawer .wc-block-cart-item__image { grid-column:1!important; grid-row:1!important; }
.wc-block-mini-cart__drawer .wc-block-cart-item__product { grid-column:2!important; grid-row:1!important; min-width:0!important; }
.wc-block-mini-cart__drawer .wc-block-cart-item__total { grid-column:3!important; grid-row:1!important; min-width:0; }
.wc-block-mini-cart__drawer .wc-block-cart-item__product a { display:block; max-width:100%; overflow-wrap:anywhere; }
.wc-block-mini-cart__drawer .wc-block-components-product-name { color:#111; font:400 .88rem/1.35 Arial,Helvetica,sans-serif; text-decoration:none; }
.wc-block-mini-cart__drawer .wc-block-components-product-price { margin-top:.45rem; font-size:.8rem; }
.wc-block-mini-cart__drawer .wc-block-components-product-metadata { margin:.7rem 0; color:#555; font-size:.7rem; }
.wc-block-mini-cart__drawer .wc-block-cart-item__quantity { display:flex; align-items:center; gap:8px; margin-top:1rem; }
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; flex:0 0 96px; width:96px; height:36px; margin:0; border:1px solid #bbb; border-radius:0; }
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector input { box-sizing:border-box; width:100%!important; min-width:0!important; padding:0!important; font-size:.75rem; text-align:center; }
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector__button { box-sizing:border-box; width:100%!important; min-width:0!important; padding:0!important; border-radius:0!important; background:#fff!important; color:#111!important; text-align:center; }
.wc-block-mini-cart__drawer .wc-block-cart-item__remove-link { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; margin:0; padding:0; color:#555; font-size:.65rem; line-height:1; vertical-align:middle; }
.wc-block-mini-cart__drawer .wc-block-cart-item__remove-link svg { display:block; width:18px; height:18px; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions { display:grid; grid-template-columns:1fr; gap:6px; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions a { min-height:42px; padding:0 14px; border:1px solid #111; border-radius:0!important; font:500 .65rem/40px Arial,Helvetica,sans-serif; letter-spacing:.055em; text-align:center; text-transform:uppercase; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions a:first-child { background:#fff!important; color:#111!important; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions a:last-child { background:#111!important; color:#fff!important; }
.solere-site-header__search { position:relative; display:block; width:26px; height:26px; border:0; }
.solere-site-header__search::before { position:absolute; top:3px; left:3px; box-sizing:border-box; width:15px; height:15px; border:1px solid #111; border-radius:50%; content:''; }
.solere-site-header__search::after { position:absolute; top:17px; left:16px; width:6px; height:1px; background:#111; content:''; transform:rotate(45deg); transform-origin:left center; }
.solere-site-header__mobile-nav { display:none; }
.solere-live-search { position:fixed; z-index:100000; inset:0; padding-top:73px; background:rgb(122 122 122 / 10%); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .2s ease,visibility .2s ease; }
.solere-live-search.is-open { opacity:1; visibility:visible; pointer-events:auto; }
.solere-live-search__bar { display:flex; align-items:center; min-height:71px; padding:0 56px; gap:1rem; border-bottom:1px solid #ddd; background:#fff; transform:translateY(-100%); transition:transform .22s ease; }
.solere-live-search.is-open .solere-live-search__bar { transform:translateY(0); }
.solere-live-search__bar>span { font-size:.62rem; letter-spacing:.09em; }
.solere-live-search__bar input { box-sizing:border-box; flex:1; height:38px; padding:0 12px; border:0; background:transparent; box-shadow:none; color:#111; font:400 1rem/1 Arial,Helvetica,sans-serif; letter-spacing:.01em; }
.solere-live-search__bar input:focus { outline:0; }
.solere-live-search__bar button { width:28px; height:28px; padding:0; border:0; background:transparent; color:#111; font:300 1.15rem/1 Arial,sans-serif; }
.solere-live-search__results { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); column-gap:4px; row-gap:32px; max-height:calc(100vh - 144px); padding:20px 34px 30px; background:#fff; overflow-y:auto; }
.solere-live-search__results>a { display:block; min-width:0; color:#111; text-decoration:none; }
.solere-live-search__results img { display:block; width:100%; aspect-ratio:3/4; margin:0 0 .7rem; border-radius:0!important; object-fit:cover; }
.solere-live-search__product-details { display:block; margin:0; padding:0; text-align:left; }
.solere-live-search__results .woocommerce-loop-product__title { display:block; margin:0 0 .3rem!important; padding:0!important; color:#111; font:400 .88rem/1.35 Arial,sans-serif!important; text-align:left; text-transform:none; }
.solere-live-search__results .price { display:block; margin:0!important; padding:0!important; color:#111; font:400 .72rem/1.35 Arial,sans-serif!important; text-align:left; }
.solere-live-search__results .price>.price { display:inline; }
.solere-live-search__results .price del,.solere-live-search__results .price ins,.solere-live-search__results .price .woocommerce-Price-amount { margin:0; padding:0; font:inherit; }
.solere-live-search__results .price ins { background:transparent; text-decoration:none; }
.solere-live-search__results>p { grid-column:1/-1; margin-top:2rem; font-size:.72rem; letter-spacing:.05em; text-align:center; }
.solere-drill-menu { position:fixed; z-index:100002; inset:0; display:none; background:#fff; }
.solere-drill-menu.is-open { display:block; }
.solere-drill-menu__top { display:grid; grid-template-columns:38px 1fr 38px; align-items:center; height:56px; padding:0 16px; border-bottom:1px solid #ddd; }
.solere-drill-menu__top strong { grid-column:2; justify-self:center; font-size:1.25rem; font-weight:500; letter-spacing:.11em; }
.solere-drill-menu__top button { position:relative; grid-column:1; grid-row:1; width:30px; height:30px; padding:0; border:0; overflow:visible; background:transparent; color:transparent; font-size:0; }
.solere-drill-menu__top button::before,.solere-drill-menu__top button::after { content:none!important; }
.solere-drill-menu__top button span { position:absolute; top:50%; left:3px; display:block; width:24px; height:1px; background:#111; transform-origin:center; transition:transform .18s ease; }
.solere-drill-menu__top button span:first-child { transform:rotate(45deg) scaleY(.65); }
.solere-drill-menu__top button span:last-child { transform:rotate(-45deg) scaleY(.65); }
.solere-drill-menu.is-closing .solere-drill-menu__top button span:first-child { transform:translateY(-4px) scaleY(.65); }
.solere-drill-menu.is-closing .solere-drill-menu__top button span:last-child { transform:translateY(4px) scaleY(.65); }
.solere-drill-menu__viewport { position:relative; height:calc(100% - 56px); overflow:hidden; }
.solere-drill-menu__panel { position:absolute; inset:0; display:flex; flex-direction:column; padding:22px; background:#fff; overflow-y:auto; transform:translateX(100%); transition:transform .24s ease; }
.solere-drill-menu__panel.is-active { transform:translateX(0); }
.solere-drill-menu__panel.is-previous { transform:translateX(-100%); }
.solere-drill-menu__panel a,.solere-drill-menu__panel>button { display:flex; align-items:center; justify-content:space-between; min-height:58px; padding:0; border:0; border-bottom:1px solid #ddd; background:#fff; color:#111; font:400 .9rem/1 Arial,Helvetica,sans-serif; letter-spacing:.045em; text-align:left; text-decoration:none; }
.solere-drill-menu a,.solere-drill-menu button { -webkit-tap-highlight-color:transparent; box-shadow:none!important; }
.solere-drill-menu__panel a:hover,.solere-drill-menu__panel>button:hover { background:#f5f5f5; color:#111; }
.solere-drill-menu a:focus,.solere-drill-menu button:focus { outline:0; }
.solere-drill-menu a:focus-visible,.solere-drill-menu button:focus-visible { outline:1px solid #111; outline-offset:-1px; }
.solere-drill-menu__panel>button span { font-size:1.5rem; font-weight:300; }
.solere-drill-menu__panel .solere-drill-menu__back { justify-content:flex-start; gap:14px; margin-bottom:10px; font-size:.78rem; }
.solere-drill-menu__panel .solere-drill-menu__view-all { font-weight:700; }
.solere-login-drawer { position:fixed; z-index:100003; inset:0; visibility:hidden; pointer-events:none; }
.solere-login-drawer.is-open { visibility:visible; pointer-events:auto; }
.solere-login-drawer__overlay { position:absolute; inset:0; width:100%; height:100%; padding:0; border:0; background:rgb(0 0 0 / 35%); opacity:0; transition:opacity .25s ease; }
.solere-login-drawer.is-open .solere-login-drawer__overlay { opacity:1; }
.solere-login-drawer__panel { position:absolute; top:0; right:0; width:50vw; max-width:640px; height:100%; background:#fff; transform:translateX(100%); transition:transform .25s ease; }
.solere-login-drawer.is-open .solere-login-drawer__panel { transform:translateX(0); }
.solere-login-drawer__panel>header { display:grid; grid-template-columns:44px 1fr 44px; align-items:center; min-height:82px; padding:0 28px; border-bottom:1px solid #ddd; }
.solere-login-drawer__panel>header h2 { grid-column:2; margin:0; font:500 1.2rem/1.2 Arial,Helvetica,sans-serif; letter-spacing:.04em; text-align:center; text-transform:uppercase; }
.solere-login-drawer__close { grid-column:3; width:44px; height:44px; padding:0; border:0; background:transparent; color:#111; font:300 2rem/1 Arial,sans-serif; }
.solere-login-drawer__body { padding:44px 36px; }
.solere-login-drawer form.login { max-width:none!important; margin:0!important; padding:0!important; border:0!important; }
.solere-login-drawer form p { margin:0 0 1.25rem; }
.solere-login-drawer label { display:block; margin-bottom:.45rem; font-size:.72rem; letter-spacing:.04em; text-transform:uppercase; }
.solere-login-drawer input[type=text],.solere-login-drawer input[type=password] { box-sizing:border-box; width:100%; height:50px; padding:0 14px; border:1px solid #777; border-radius:0; background:#fff; }
.solere-login-drawer__remember { display:flex!important; align-items:center; gap:.5rem; margin:0 0 1.5rem; text-transform:none!important; }
.solere-login-drawer form button[type=submit] { width:100%; min-height:50px; border:1px solid #111; border-radius:0; background:#111; color:#fff; font-size:.72rem; letter-spacing:.06em; text-transform:uppercase; }
.solere-login-drawer__lost,.solere-login-drawer__account { display:block; margin-top:1rem; color:#111; font-size:.72rem; text-align:center; text-decoration:none; }
.solere-login-drawer__account { min-height:48px; padding:15px; border:1px solid #111; letter-spacing:.05em; text-transform:uppercase; }
.solere-login-drawer__body nav a { display:block; padding:1rem 0; border-bottom:1px solid #ddd; color:#111; font-size:.78rem; letter-spacing:.04em; text-decoration:none; text-transform:uppercase; }

/* Shared Mizu-style footer */
.site-footer { padding:0; background:#f4f4f4; color:#111; }
.site-footer>.col-full { width:100%; max-width:none; margin:0; padding:0; }
.solere-footer { display:grid; grid-template-columns:2fr repeat(3,1fr); gap:5vw; padding:5rem 34px 2rem; }
.solere-footer__intro { max-width:430px; }
.solere-footer a.solere-footer__logo { display:inline-block; margin-bottom:1.5rem; color:#111; font-size:1.75rem; font-weight:500; line-height:1; letter-spacing:.11em; text-decoration:none; }
.home .solere-preview__footer-logo { font-size:1.75rem!important; font-weight:500!important; line-height:1!important; letter-spacing:.11em!important; }
.home .solere-editorial-split { align-items:stretch; min-height:1000px; gap:0; margin:0; }
.home .solere-preview__feature--coats,.home .solere-preview__feature--dresses,.home .solere-preview__feature--trousers { --solere-feature-image:url('assets/intimatemart-product-landscape-20260823.png'); }
.home .solere-preview__mizu-hero { position:relative; height:95vh!important; min-height:95vh!important; overflow:hidden; background-color:#211218; background-image:url('assets/campaign/hero-slider-v2/hero-01-desktop.jpg'); background-position:center; background-repeat:no-repeat; background-size:cover; touch-action:pan-y; }
.home .solere-preview__mizu-hero::after { display:none; }
.home .im-home-hero__slides { position:absolute; z-index:0; inset:0; overflow:hidden; pointer-events:none; }
.home .im-home-hero__slides > span { position:absolute; inset:0; background-position:center 42%; background-repeat:no-repeat; background-size:cover; opacity:0; animation:im-home-hero-fade 32s ease-in-out infinite; will-change:opacity; }
.home .im-home-hero__slides > span:nth-child(1) { background-image:url('assets/campaign/hero-slider-v2/hero-01-desktop.jpg'); }
.home .im-home-hero__slides > span:nth-child(2) { background-image:url('assets/campaign/hero-slider-v2/hero-02-desktop.jpg'); animation-delay:8s; }
.home .im-home-hero__slides > span:nth-child(3) { background-image:url('assets/campaign/hero-slider-v2/hero-03-desktop.jpg'); animation-delay:16s; }
.home .im-home-hero__slides > span:nth-child(4) { background-image:url('assets/campaign/hero-slider-v2/hero-04-desktop.jpg'); animation-delay:24s; }
.home .im-home-hero__slides.is-controlled > span { animation:none; opacity:0; transition:opacity 1.2s ease-in-out; }
.home .im-home-hero__slides.is-controlled > span.is-active { opacity:1; }
.home .im-home-hero.is-dragging { cursor:grabbing; }
.home .solere-preview__mizu-hero>.wp-block-spacer { position:relative; z-index:1; height:95vh!important; min-height:95vh!important; }
@keyframes im-home-hero-fade { 0% { opacity:0; } 6%,23% { opacity:1; } 32%,100% { opacity:0; } }
.home .solere-preview__mizu-hero.is-manual-first::after,.home .solere-preview__mizu-hero.is-manual-second::after { animation:none; }
.home .solere-preview__mizu-hero.is-manual-first::after { opacity:0; }
.home .solere-preview__mizu-hero.is-manual-second::after { opacity:1; }
.home .solere-preview__section { padding:6.5rem 30px 7.5rem; }
.home .solere-preview__section-head { align-items:flex-end; margin:0 0 1rem; }
.home .solere-preview__section-head h2 { margin:0!important; }
.home .solere-preview__section-head h2 a { color:#111; text-decoration:none; }
.home .solere-preview__section-head h2::after { content:none!important; }
.home .solere-preview__section .woocommerce ul.products { display:flex!important; gap:4px; margin:0!important; padding:0 0 12px; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scrollbar-color:#aaa transparent; scrollbar-width:thin; -webkit-overflow-scrolling:touch; }
.home .solere-preview__section .woocommerce ul.products::before,.home .solere-preview__section .woocommerce ul.products::after { display:none!important; }
.home .solere-preview__section .woocommerce ul.products li.product { flex:0 0 calc((100% - 16px)/5); float:none!important; width:auto!important; margin:0!important; scroll-snap-align:start; }
.home .solere-preview__section .woocommerce ul.products li.product img { margin:0!important; border-radius:0!important; }
.home .solere-preview__section .woocommerce ul.products li.product .woocommerce-loop-product__title { box-sizing:border-box; margin:0 0 .3rem!important; padding:.7rem 8px 0!important; font-size:.88rem!important; line-height:1.35!important; }
.home .solere-preview__section .woocommerce ul.products li.product .price { box-sizing:border-box; margin:0!important; padding:0 8px!important; color:#111; font-size:.72rem!important; line-height:1.35!important; }
.home .solere-preview__campaign { box-sizing:border-box; display:flex; align-items:center; justify-content:center; min-height:85vh; padding:5.5rem 24px; background-color:#8b7668; background-image:linear-gradient(rgb(0 0 0 / 28%),rgb(0 0 0 / 28%)),url('assets/campaign/intimatemart-campaign-wellness-2k.jpg'); background-image:linear-gradient(rgb(0 0 0 / 28%),rgb(0 0 0 / 28%)),image-set(url('assets/campaign/intimatemart-campaign-wellness-2k.jpg') 1x,url('assets/campaign/intimatemart-campaign-wellness-4k.jpg') 2x); background-position:center; background-repeat:no-repeat; background-size:cover; background-attachment:fixed; color:#fff; text-align:center; }
.home .solere-preview__campaign p,.home .solere-preview__campaign h2,.home .solere-preview__campaign a { color:#fff!important; }
.home .solere-preview__campaign a { display:inline-block; padding-bottom:.35rem; border-bottom:1px solid currentColor; text-decoration:none; }
.home img { border-radius:0!important; }
.home .solere-preview__featured { box-sizing:border-box; width:100%; margin:64px 0!important; padding:0 24px!important; }
.home .solere-preview__section-head h2,.home .solere-preview__featured>.wp-block-group__inner-container>h2,.home .solere-shop-categories>.wp-block-group__inner-container>h2 { font:500 clamp(1.35rem,2.6875vw,2.15rem)/1 Arial,sans-serif!important; letter-spacing:-.035em!important; text-transform:uppercase; }
.home .solere-preview__featured>.wp-block-group__inner-container>h2 { margin:0 0 16px!important; padding:0; text-align:right; }
.home .solere-preview__featured .wp-block-columns { gap:16px; margin:0!important; }
.home .solere-preview__featured .wp-block-column { margin:0!important; }
.home .solere-preview__featured .solere-preview__feature { min-width:0; min-height:0; margin:0!important; overflow:visible; background:none; }
.home .solere-preview__featured .solere-preview__feature>.wp-block-spacer { width:100%; height:auto!important; aspect-ratio:12/17; background-color:#fff; background-image:var(--solere-feature-image); background-position:var(--solere-feature-position,center); background-repeat:no-repeat; background-size:cover; }
.home .solere-preview__featured .solere-preview__feature>h3 { position:static; margin:16px 0 0!important; font:400 1.058rem/1.2 Arial,Helvetica,sans-serif!important; letter-spacing:0; text-align:center; text-transform:uppercase; }
.home .solere-preview__featured .solere-preview__feature>h3 a { display:inline-block; padding:0; background:transparent; color:#111; font-size:0; text-decoration:none; text-shadow:none; }
.home .solere-preview__featured .solere-preview__feature>h3 a::before { font-size:1.058rem; }
.home .solere-preview__featured .solere-preview__feature--coats>h3 a::before { content:'VIBRATORS'; }
.home .solere-preview__featured .solere-preview__feature--dresses>h3 a::before { content:'COUPLES TOYS'; }
.home .solere-preview__featured .solere-preview__feature--trousers>h3 a::before { content:'LINGERIE'; }
.home .solere-explore-discover { box-sizing:border-box; display:flex; align-items:center; justify-content:center; min-height:520px; padding:6rem 24px; text-align:center; }
.home .solere-explore-discover>.wp-block-group__inner-container { width:100%; max-width:720px; }
.home .solere-explore-discover h2 { margin:0 0 1.25rem; font:400 clamp(1.7rem,2.7vw,2.7rem)/1.1 Arial,sans-serif!important; letter-spacing:.075em; }
.home .solere-explore-discover p { max-width:620px; margin:0 auto 1.5rem; color:#444; font-size:.92rem; line-height:1.75; }
.home .solere-explore-discover p:last-child { margin-bottom:0; }
.home .solere-explore-discover a { display:inline-block; padding-bottom:.35rem; border-bottom:1px solid #111; color:#111; font-size:.7rem; letter-spacing:.08em; text-decoration:none; }
.home .solere-editorial-split>.wp-block-column { position:relative; min-height:1000px; margin:0!important; overflow:hidden; isolation:isolate; }
.home .solere-editorial-split figure,.home .solere-editorial-split img { width:100%; height:100%; margin:0; object-fit:cover; }
.home .solere-editorial-split__content { display:flex; flex-direction:column; justify-content:center; min-height:1000px; padding:6vw; background:transparent; color:#fff; text-align:center; }
.home .solere-editorial-split__content::before { position:absolute; z-index:-2; inset:0; background-image:url('assets/campaign/intimatemart-campaign-editorial-sexy-diverse-v3-1x.jpg'); background-image:image-set(url('assets/campaign/intimatemart-campaign-editorial-sexy-diverse-v3-1x.jpg') 1x,url('assets/campaign/intimatemart-campaign-editorial-sexy-diverse-v3-2x.jpg') 2x); background-position:center; background-repeat:no-repeat; background-size:cover; content:''; transition:transform .7s cubic-bezier(.2,.65,.3,1); }
.home .solere-editorial-split__content::after,.home .solere-editorial-panel--women::after { position:absolute; z-index:-1; inset:0; background:rgb(0 0 0 / 25%); content:''; pointer-events:none; }
.home .solere-editorial-split__content:hover::before,.home .solere-editorial-split__content:focus-within::before { transform:scale(1.025); }
.home .solere-editorial-split__content>*,.home .solere-editorial-panel__content { position:relative; z-index:2; }
.home .solere-editorial-panel--women figure { position:absolute; z-index:-2; inset:0; width:100%; height:100%; }
.home .solere-editorial-panel--women img { transition:transform .7s cubic-bezier(.2,.65,.3,1); }
.home .solere-editorial-panel--women:hover img,.home .solere-editorial-panel--women:focus-within img { transform:scale(1.025); }
.home .solere-editorial-panel__content { display:flex; flex-direction:column; align-items:center; justify-content:center; box-sizing:border-box; width:100%; height:100%; padding:6vw; color:#fff; text-align:center; }
.home .solere-editorial-panel--women .solere-editorial-panel__content { transform:translateY(-31px); }
.home .solere-editorial-split__content h2,.home .solere-editorial-panel__content h2 { margin:0 0 .8rem!important; color:#fff; font:400 clamp(1.7rem,2.7vw,2.7rem)/1.1 Arial,sans-serif!important; letter-spacing:.075em!important; text-transform:uppercase; }
.home .solere-editorial-panel__content p { max-width:520px; margin:0!important; color:#fff; font-size:.92rem; line-height:1.7; }
.home .solere-editorial-split__content>.solere-editorial-kicker,.home .solere-editorial-panel__content>.solere-editorial-kicker { margin:0 0 .65rem!important; color:#fff!important; }
.home .solere-editorial-panel__content p:last-child { margin-bottom:0; }
.home .solere-editorial-panel__content a { display:inline-block; padding-bottom:.35rem; border-bottom:1px solid #fff; color:#fff; font-size:.7rem; letter-spacing:.08em; text-decoration:none; }
.home .solere-editorial-split__content h2 { margin:0 0 .8rem; font:400 clamp(1.8rem,3vw,3rem)/1.08 Arial,Helvetica,sans-serif!important; letter-spacing:-.035em; }
.home .solere-editorial-split__content h2 { font-size:clamp(1.7rem,2.7vw,2.7rem)!important; font-weight:400!important; letter-spacing:.075em!important; line-height:1.1!important; text-transform:uppercase; }
.home .solere-editorial-split__content>.solere-editorial-kicker { margin:0 0 .65rem!important; }
.home .solere-editorial-split__content>p:not(.solere-editorial-kicker) { max-width:520px; margin-right:auto!important; margin-left:auto!important; color:#fff!important; font-size:.92rem; line-height:1.7; }
.home .solere-editorial-split__content>p:last-child { margin-top:1rem!important; }
.home .solere-editorial-split__content>p:last-child a { margin-top:0; }
.home .solere-editorial-kicker { margin:0 0 1.5rem; font-size:.68rem!important; letter-spacing:.12em; text-transform:uppercase; }
.home .solere-editorial-split__content a,.home .solere-editorial-parallax a { display:inline-block; margin-top:1rem; padding-bottom:.35rem; border-bottom:1px solid currentColor; color:inherit; font-size:.7rem; letter-spacing:.08em; text-decoration:none; text-transform:uppercase; }
.home .solere-editorial-parallax { min-height:1000px!important; margin:0; background-color:#6c625c; background-image:linear-gradient(rgb(0 0 0 / 28%),rgb(0 0 0 / 28%)),url('assets/campaign/intimatemart-campaign-collection-2k.jpg'); background-image:linear-gradient(rgb(0 0 0 / 28%),rgb(0 0 0 / 28%)),image-set(url('assets/campaign/intimatemart-campaign-collection-2k.jpg') 1x,url('assets/campaign/intimatemart-campaign-collection-4k.jpg') 2x); background-attachment:fixed; background-position:center; background-repeat:no-repeat; background-size:cover; }
.home .solere-editorial-parallax h2 { margin:0 0 1rem; color:#fff; font:400 clamp(2rem,4vw,4rem)/1.05 Arial,Helvetica,sans-serif!important; letter-spacing:-.035em; }
.home .solere-editorial-parallax p,.home .solere-editorial-parallax a { color:#fff; }
.home .solere-editorial-parallax,.home .solere-editorial-parallax h2,.home .solere-editorial-parallax p,.home .solere-editorial-parallax a,.home .solere-editorial-parallax .solere-editorial-kicker { color:#fff!important; }
.home .solere-shop-categories { box-sizing:border-box; margin:24px 0!important; padding:0 24px; background:#fff; }
.home .solere-shop-categories>.wp-block-group__inner-container { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; }
.home .solere-shop-categories>.wp-block-group__inner-container>h2 { grid-column:1; margin:0!important; padding:0; }
.home .solere-shop-categories>.wp-block-group__inner-container>p { grid-column:2; justify-self:end; max-width:520px; margin:0!important; padding:0; color:#555; font-size:.92rem; line-height:1.7; text-align:right; }
.home .solere-editorial-split__content>p:not(.solere-editorial-kicker) { max-width:520px; margin:0 auto!important; font:400 .92rem/1.7 Arial,Helvetica,sans-serif!important; }
.home .solere-shop-categories .wp-block-columns { grid-column:1/-1; gap:16px; margin:24px 0 0!important; }
.home .solere-shop-categories .wp-block-column { min-width:0; margin:0!important; }
.home .solere-shop-categories .wp-block-column { position:relative; overflow:hidden; }
.home .solere-shop-categories figure { margin:0!important; overflow:hidden; }
.home .solere-shop-categories figure>a { display:block; font-size:0; line-height:0; }
.home .solere-shop-categories img { display:block; width:100%; aspect-ratio:3/4; object-fit:cover; transition:transform .4s ease; }
.home .solere-shop-categories a:hover img { transform:scale(1.015); }
.home .solere-shop-categories h3 { position:static; margin:16px 0 0; font:400 1.058rem/1.2 Arial,sans-serif!important; letter-spacing:0; text-align:center; text-transform:uppercase; }
.home .solere-shop-categories h3 a { color:#111; font-size:0; text-decoration:none; text-shadow:none; }
.home .solere-shop-categories h3 a::before { font-size:1.058rem; }
.home .solere-shop-categories h3 a[href*="/trousers/"]::before { content:'TROUSERS'; }
.home .solere-shop-categories h3 a[href*="/dresses/"]::before { content:'DRESSES'; }
.home .solere-shop-categories h3 a[href*="/jackets-coats/"]::before { content:'JACKETS & COATS'; }
.home .solere-shop-categories h3 a[href*="/tops-shirts/"]::before { content:'TOPS & SHIRTS'; }
.home .solere-shop-categories h3 a[href*="/skirts/"]::before { content:'SKIRTS'; }
.home .solere-shop-categories h3 a[href*="/vibrators/"]::before { content:'VIBRATORS'; }
.home .solere-shop-categories h3 a[href*="/dildos/"]::before { content:'DILDOS'; }
.home .solere-shop-categories h3 a[href*="/anal-toys/"]::before { content:'ANAL TOYS'; }
.home .solere-shop-categories h3 a[href*="/male-masturbators/"]::before { content:'FOR HIM'; }
.home .solere-shop-categories h3 a[href*="/bondage-kink/"]::before { content:'BONDAGE'; }
.home .solere-shop-categories .wp-block-column::after { content:none; }
@media (min-width:781px) {
  .home .solere-preview__featured .wp-block-columns,
  .home .solere-shop-categories .wp-block-columns { display:flex!important; flex-wrap:nowrap!important; align-items:flex-start; }
  .home .solere-preview__featured .wp-block-column,
  .home .solere-shop-categories .wp-block-column { flex:1 1 0!important; width:auto!important; min-width:0; }
}

/* Pure Romance-inspired catalog layout: centered, four-up and filter-free. */
@media (min-width:781px) {
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .site-content>.col-full {
    width:calc(100% - 40px);
    max-width:1180px;
    margin-right:auto;
    margin-left:auto;
    padding:34px 0 72px;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products {
    grid-template-columns:repeat(4,minmax(0,1fr));
    column-gap:24px;
    row-gap:32px;
  }
}

/* Let the full-bleed related rail escape Storefront's clipped product wrapper. */
body.single-product.storefront-full-width-content div.product {
  overflow:visible!important;
}

/* Storefront adds a faint H3 divider; homepage subtitles should remain clean. */
.home .im-title-subtitle { border:0!important; }

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-breadcrumb {
  display:block;
  margin:0 0 18px;
  padding:0;
  color:#686868;
  font-size:12px;
  line-height:1.4;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-breadcrumb .col-full {
  width:calc(100% - 40px);
  max-width:1180px;
  margin-right:auto;
  margin-left:auto;
  padding:0;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .woocommerce-products-header {
  margin:0 0 25px!important;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .woocommerce-products-header__title.page-title {
  font-size:26px!important;
  font-weight:600!important;
  line-height:1.15!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.intimatemart-shop-intro,
body:is(.tax-product_cat,.tax-product_tag) .term-description {
  max-width:760px;
  margin:12px 0 0!important;
  color:#4e4e4e;
  font-size:14px;
  line-height:1.6;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting {
  position:static;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  width:100%;
  margin:0 0 28px;
  padding:12px 0;
  border-top:1px solid #dedede;
  border-bottom:1px solid #dedede;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting .woocommerce-result-count {
  grid-column:1;
  display:block;
  font-size:12px;
  letter-spacing:0;
  text-transform:none;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting .woocommerce-ordering {
  grid-column:2;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting select {
  min-width:190px;
  min-height:38px;
  font-size:11px;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters {
  display:none!important;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product {
  display:flex!important;
  flex-direction:column;
  min-height:500px;
  margin:0!important;
  padding:0 0 18px;
  border:1px solid #ddd;
  background:#fff;
  overflow:hidden;
  transition:border-color .2s ease,box-shadow .25s ease,transform .25s ease;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product:hover,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product:focus-within {
  border-color:#999;
  box-shadow:0 10px 24px rgb(0 0 0 / 9%);
  transform:translateY(-2px);
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .woocommerce-LoopProduct-link {
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  min-height:0;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product img {
  display:block;
  width:100%;
  aspect-ratio:1/1;
  margin:0 0 17px;
  background:#fff;
  object-fit:contain;
  transition:transform .35s ease;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product:hover img {
  transform:scale(1.025);
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .intimatemart-product-brand {
  box-sizing:border-box;
  width:100%;
  min-height:16px;
  margin:0;
  padding:0 18px 5px;
  color:#626262;
  font-size:10px;
  line-height:1.2;
  letter-spacing:.08em;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .woocommerce-loop-product__title {
  box-sizing:border-box;
  width:100%;
  min-height:42px;
  margin:0!important;
  padding:0 18px 4px!important;
  font-size:14px!important;
  font-weight:600!important;
  line-height:1.35!important;
}
.intimatemart-product-type {
  display:block;
  box-sizing:border-box;
  width:100%;
  min-height:20px;
  padding:0 18px;
  color:#777;
  font-size:11px;
  line-height:1.4;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .price {
  box-sizing:border-box;
  width:100%;
  min-height:23px;
  margin-top:auto!important;
  padding:8px 18px 0!important;
  font-size:14px!important;
  font-weight:600!important;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .button {
  position:static;
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:calc(100% - 36px);
  max-width:none;
  min-height:45px;
  margin:15px 18px 0;
  padding:0 12px;
  border:1px solid #111;
  background:#fff;
  color:#111;
  font-size:11px;
  font-weight:600;
  opacity:1;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .button:hover,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .button:focus {
  background:#111;
  color:#fff;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .onsale,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-source-badge {
  top:10px;
  left:10px;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) li.product:has(.solere-source-badge) .onsale {
  top:36px;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-infinite-scroll {
  margin:38px 0 0;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-shop-seo {
  margin-top:54px;
  padding-bottom:0;
}

@media (max-width:780px) {
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-breadcrumb .col-full {
    width:calc(100% - 28px);
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .site-content>.col-full {
    padding:22px 14px 54px;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .woocommerce-products-header {
    display:block;
    min-height:0!important;
    margin:0 0 20px!important;
    padding:0!important;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting {
    position:static;
    grid-template-columns:1fr auto;
    min-height:0;
    margin:0 0 18px;
    padding:10px 0;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting .woocommerce-result-count,
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting .woocommerce-ordering {
    display:block;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting select {
    min-width:0;
    max-width:150px;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products {
    gap:10px;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product {
    min-height:390px;
    padding-bottom:12px;
    transform:none!important;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product img {
    margin-bottom:12px;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .intimatemart-product-brand {
    padding-right:10px;
    padding-left:10px;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .woocommerce-loop-product__title {
    min-height:56px;
    padding-right:10px!important;
    padding-left:10px!important;
    font-size:12px!important;
  }
  .intimatemart-product-type { min-height:18px; padding-right:10px; padding-left:10px; font-size:10px; }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .price {
    padding-right:10px!important;
    padding-left:10px!important;
    font-size:12px!important;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .button {
    width:calc(100% - 20px);
    min-height:40px;
    margin:12px 10px 0;
    padding:0 5px;
    font-size:10px;
  }
}

/* Related alone is truly full-bleed; homepage rails keep their contained width. */
@media (min-width:781px) {
  .single-product .related.im-product-rail>.solere-preview__section-head,
  .single-product .related.im-product-rail>.woocommerce.im-product-carousel,
  .single-product .related.im-product-rail>.woocommerce ul.products {
    width:100%!important;
    max-width:none!important;
  }
}

/* Related carousel mirrors the wider boxed shop grid. */
.single-product .related ul.products { gap:12px; }
body.single-product .related ul.products li.product {
  box-sizing:border-box;
  flex-basis:301px!important;
  width:301px!important;
  min-height:562px;
  padding:25px;
}
.single-product .related ul.products li.product .woocommerce-loop-product__link {
  flex:1 1 auto;
  width:100%;
}
.single-product .related ul.products li.product .woocommerce-loop-product__link>img:not(.im-product-card__hover-image) {
  width:100%!important;
  height:auto!important;
  margin:0 0 18px!important;
}
.single-product .related .im-product-card__hover-image {
  top:0;
  left:0;
  width:100%!important;
  height:auto!important;
}
.single-product .related ul.products li.product .intimatemart-product-brand {
  width:100%;
  margin:0 0 4px;
}
.single-product .related ul.products li.product .woocommerce-loop-product__title,
.single-product .related ul.products li.product .price {
  width:100%;
}
.single-product .related ul.products li.product .button {
  width:100%;
  margin:15px 0 0!important;
}

@media (max-width:780px) {
  body.single-product .related ul.products li.product {
    flex-basis:76vw!important;
    width:76vw!important;
    min-height:440px;
    padding:16px;
  }
  .single-product .related ul.products li.product .intimatemart-product-brand,
  .single-product .related ul.products li.product .woocommerce-loop-product__title,
  .single-product .related ul.products li.product .price,
  .single-product .related ul.products li.product .button {
    width:100%!important;
  }
}

/* SOLERE-style catalog controls with wider cards and a full-width filter panel. */
@media (min-width:781px) {
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products {
    column-gap:12px;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting {
    position:sticky;
    top:73px;
    z-index:60;
    grid-template-columns:auto minmax(0,1fr) auto auto;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting .woocommerce-result-count { grid-column:1; }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting .woocommerce-ordering { grid-column:3; }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters {
    display:block!important;
    grid-column:4;
    margin-right:6px;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel {
    right:-20px;
    left:-20px;
  }
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters>summary {
  min-height:38px;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel section>.solere-stock-filter {
  width:100%;
}

@media (max-width:780px) {
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting {
    position:sticky;
    top:56px;
    z-index:60;
    grid-template-columns:minmax(0,1fr) auto;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting .woocommerce-result-count,
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting .woocommerce-ordering {
    display:none;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters {
    display:block!important;
    grid-column:2;
    margin-right:0;
  }
}
.solere-footer h2 { margin:0 0 1.35rem; font:500 .78rem/1 Arial,Helvetica,sans-serif; letter-spacing:.03em; text-transform:uppercase; }
.solere-footer p,.solere-footer a { color:#111; font-size:.75rem; line-height:1.8; text-decoration:none; }
.solere-footer nav>a { display:block; margin:.25rem 0; }
.solere-footer nav>a:hover { text-decoration:underline; }
.solere-footer__recaptcha { grid-column:1/-1; margin:2.25rem 0 -1.5rem!important; color:#666!important; font-size:.62rem!important; line-height:1.6!important; }
.solere-footer__recaptcha a { color:inherit!important; font-size:inherit!important; text-decoration:underline; text-underline-offset:2px; }
.solere-footer__legal { grid-column:1/-1; display:flex; justify-content:space-between; margin-top:3rem; padding-top:1.5rem; border-top:1px solid #d8d8d8; font-size:.68rem; letter-spacing:.03em; text-transform:uppercase; }
.solere-footer__legal nav { display:flex; flex-wrap:nowrap; gap:1.5rem; white-space:nowrap; }
.solere-footer__legal nav a { margin:0; font-size:inherit; text-transform:none; }
.grecaptcha-badge { visibility:hidden!important; }

/* Native cart and checkout */
.woocommerce-cart .storefront-breadcrumb,.woocommerce-checkout .storefront-breadcrumb { display:none; }
.woocommerce-cart .site-content>.col-full,.woocommerce-checkout .site-content>.col-full { width:100%; max-width:1400px; margin:0 auto; padding:5.5rem 36px 7rem; }
.woocommerce-cart .entry-header h1,.woocommerce-checkout .entry-header h1 { margin:0 0 4rem; font:400 clamp(1.55rem,2vw,1.85rem)/1.15 Arial,Helvetica,sans-serif; letter-spacing:.04em; text-align:left; text-transform:uppercase; }
.woocommerce-cart .entry-content,.woocommerce-checkout .entry-content { font-family:Arial,Helvetica,sans-serif; }
.woocommerce-cart .wc-block-cart__submit-button,.woocommerce-checkout .wc-block-components-checkout-place-order-button { min-height:54px; border:1px solid #222; border-radius:0; background:#222; color:#fff; font-size:.76rem; letter-spacing:.06em; text-transform:uppercase; transition:background-color .2s ease,color .2s ease; }
.woocommerce-cart .wc-block-cart__submit-button:hover,.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover { background:#fff; color:#222; }
.woocommerce-cart .wc-block-cart *,.woocommerce-checkout .wc-block-checkout * { font-family:Arial,Helvetica,sans-serif!important; }
.woocommerce-checkout .wc-block-components-title,.woocommerce-checkout .wc-block-components-checkout-step__title,.woocommerce-checkout .wc-block-components-order-summary__title-text { font-weight:400!important; letter-spacing:-.025em; }
.woocommerce-checkout .wc-block-components-checkout-step { margin-bottom:2.25rem; }
.woocommerce-checkout .wc-block-components-checkout-step__heading { margin-bottom:1rem; }
.woocommerce-checkout .wc-block-components-text-input input,.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input,.woocommerce-checkout .wc-block-components-address-form select { min-height:52px; border:1px solid #777!important; border-radius:0!important; background:#fff!important; box-shadow:none!important; }
.woocommerce-checkout .wc-block-components-text-input label,.woocommerce-checkout .wc-block-components-combobox label { font-size:.72rem!important; }
.woocommerce-checkout .wc-block-checkout__sidebar { border:1px solid #ddd; border-radius:0; background:#fafafa; }
.woocommerce-checkout .wc-block-components-order-summary,.woocommerce-checkout .wc-block-components-totals-wrapper { border-color:#ddd!important; }
.woocommerce-checkout .wc-block-components-button,.woocommerce-cart .wc-block-components-button { border-radius:0!important; box-shadow:none!important; }
.woocommerce-checkout .wc-block-components-validation-error { color:#8b1a1a; font-size:.72rem; }
.woocommerce-account .woocommerce,.woocommerce-account .woocommerce * { font-family:Arial,Helvetica,sans-serif!important; }
.woocommerce-cart .wc-block-components-text-input input,.woocommerce-checkout .wc-block-components-text-input input,.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input { border-color:#777; border-radius:0!important; box-shadow:none!important; }
.woocommerce-checkout .wc-block-checkout__main { padding-right:5vw; }
.woocommerce-checkout .wc-block-checkout__sidebar { padding:1.5rem; border:1px solid #ddd; background:#fafafa; }
.woocommerce-checkout .wc-block-components-checkout-step__heading h2,.woocommerce-checkout .wc-block-components-title { font-weight:400; letter-spacing:-.02em; }
.woocommerce-checkout .wc-block-components-checkout-step { margin-bottom:2.5rem; }
.woocommerce-cart .wc-block-cart-items,.woocommerce-cart .wc-block-cart__totals-title,.woocommerce-checkout .wc-block-components-order-summary { border-color:#ddd; }
.woocommerce-cart .edit-link,.woocommerce-checkout .edit-link { display:none; }

/* WooCommerce catalogue, search and account system */
:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag) .storefront-breadcrumb,.woocommerce-account .storefront-breadcrumb { display:none; }
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product),body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) #page { overflow-x:clip!important; overflow-y:visible!important; }
:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product,.woocommerce-account) .site-content>.col-full { box-sizing:border-box; width:100%; max-width:none; margin:0; padding:4.5rem 30px 7rem; }
:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) :is(.content-area,.site-main) { margin-bottom:0; }
:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .site-content>.col-full { padding-bottom:3rem; }
.woocommerce-products-header { min-height:0!important; margin:0 0 2rem!important; padding:0!important; text-align:left!important; }
.home .solere-preview__campaign>.wp-block-group__inner-container>.wp-block-heading { font-family:Arial,Helvetica,sans-serif!important; font-size:clamp(1.8rem,3vw,3rem)!important; font-weight:400!important; line-height:1.02!important; letter-spacing:-.04em!important; }
.home .solere-preview__campaign>.wp-block-group__inner-container>.wp-block-heading { letter-spacing:.045em!important; white-space:nowrap; }
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .woocommerce-products-header__title.page-title { margin:0; font:400 clamp(1.55rem,2vw,1.85rem)/1.15 Arial,Helvetica,sans-serif!important; letter-spacing:.04em; text-align:left!important; text-transform:uppercase; }
.storefront-sorting { position:sticky; z-index:60; top:73px; display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; align-items:center; column-gap:.75rem; row-gap:0; box-sizing:border-box; width:100%; max-width:100%; margin:0 0 2rem; padding:.25rem 8px .4rem; border-bottom:1px solid #e2e2e2; background:#fff; }
.storefront-sorting .woocommerce-notices-wrapper:empty { display:none; }
.storefront-sorting>.woocommerce-pagination { grid-column:2; grid-row:1; }
.storefront-sorting .woocommerce-ordering,.storefront-sorting .woocommerce-result-count { margin:0; font-size:.72rem; text-transform:uppercase; }
.storefront-sorting .woocommerce-ordering,.storefront-sorting .woocommerce-result-count { padding-top:0; padding-bottom:0; }
.storefront-sorting .woocommerce-result-count { grid-column:1; grid-row:1; justify-self:start!important; max-width:100%; text-align:left!important; }
.storefront-sorting .woocommerce-ordering { grid-column:3; grid-row:1; justify-self:end; }
.storefront-sorting select { min-height:36px; padding:0 30px 0 10px; border:1px solid #bbb; border-radius:0; background:#fff; font-size:.7rem; text-transform:uppercase; }
.solere-catalog-filters { grid-column:4; grid-row:1; justify-self:end; width:auto; max-width:100%; margin:0 8px 0 0; border:0; }
.solere-catalog-filters>summary { display:flex; align-items:center; justify-content:flex-end; gap:.55rem; padding:.65rem 0; cursor:pointer; list-style:none; font-size:.72rem; letter-spacing:.05em; text-transform:uppercase; }
.solere-catalog-filters>summary::-webkit-details-marker { display:none; }
.solere-catalog-filters>summary span,.solere-catalog-filters>summary span::before,.solere-catalog-filters>summary span::after { display:block; width:15px; height:1px; background:#111; content:''; }
.solere-catalog-filters>summary span::before { transform:translateY(-4px); }
.solere-catalog-filters>summary span::after { transform:translateY(3px); }
.solere-catalog-filters__panel { position:absolute; z-index:50; top:100%; right:-30px; left:-30px; display:grid; grid-template-columns:repeat(4,1fr) auto; gap:3rem; padding:2rem 30px; border:0; border-bottom:1px solid #e7e7e7; background:#fff; box-shadow:0 10px 20px rgb(0 0 0 / 3%); }
.solere-catalog-filters__panel h2 { margin:0 0 1rem; font:500 .7rem/1 Arial,Helvetica,sans-serif; letter-spacing:.05em; text-transform:uppercase; }
.solere-filter-values { display:flex; flex-wrap:wrap; gap:.55rem; }
.solere-filter-values a,.solere-stock-filter { box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; width:auto; min-width:92px; min-height:40px; padding:.5rem .8rem; border:1px solid #bbb; color:#111; font-size:.72rem; line-height:1.1; text-align:center; text-decoration:none; white-space:nowrap; }
.solere-filter-values a:hover,.solere-filter-values a.is-active,.solere-stock-filter:hover,.solere-stock-filter.is-active { border-color:#222; background:#222; color:#fff; }
.solere-filter-values--color a { min-width:52px; }
.solere-filter-clear { align-self:end; color:#111; font-size:.7rem; text-transform:uppercase; }
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products,.search-results ul.products { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; margin:0!important; }
@media (min-width:781px) {
  :is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products,.search-results ul.products { grid-template-columns:repeat(5,minmax(0,1fr)); }
}
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products::before,:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products::after { display:none!important; }
body:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product,body.search-results ul.products li.product { position:relative; container-type:inline-size; float:none!important; width:100%!important; margin:0 0 3rem!important; text-align:left; }
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product .woocommerce-LoopProduct-link,.search-results ul.products li.product .woocommerce-LoopProduct-link { display:block; min-height:calc(100% - 48px); }
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product img,.search-results ul.products li.product img { width:100%; aspect-ratio:3/4; margin:0 0 .7rem; object-fit:cover; }
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product img,.search-results ul.products li.product img,.single-product .related ul.products li.product img { border-radius:0!important; }
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product .woocommerce-loop-product__title,.search-results ul.products li.product .woocommerce-loop-product__title { margin:0; padding:0 8px .3rem; color:#111; font:400 .88rem/1.35 Arial,Helvetica,sans-serif; text-align:left; }
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product .price,.search-results ul.products li.product .price { padding:0 8px; color:#111; font:400 .8rem/1.35 Arial,Helvetica,sans-serif; text-align:left; }
ul.products li.product .woocommerce-loop-product__title { margin:0 0 .3rem!important; padding:0!important; text-align:left!important; }
ul.products li.product .price { margin:0!important; padding:0!important; font-size:.72rem!important; line-height:1.35!important; text-align:left!important; }
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product .button,.search-results ul.products li.product .button { position:absolute; top:calc(133.333cqw - 60px); right:12px; bottom:auto; left:12px; box-sizing:border-box; width:auto; max-width:calc(100% - 24px); margin:0; padding:1rem; border-radius:0; background:#fff; color:#111; font-size:.7rem; letter-spacing:.04em; text-align:center; text-transform:uppercase; opacity:0; overflow:hidden; transform:none; transition:opacity .2s ease,background-color .2s ease,color .2s ease; }
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product:hover .button,.search-results ul.products li.product:hover .button { opacity:1; }
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product .button:hover,.search-results ul.products li.product .button:hover { background:#222; color:#fff; }
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product .onsale,.search-results ul.products li.product .onsale,.single-product .related ul.products li.product .onsale { position:absolute; z-index:3; top:calc(133.333cqw - 33px); right:auto; left:8px; display:inline-flex!important; align-items:center; justify-content:center; min-width:0; min-height:21px; margin:0; padding:0 6px; border:0; border-radius:0; background:#111; color:#fff; font:500 .52rem/1 Arial,Helvetica,sans-serif; letter-spacing:.08em; text-transform:uppercase; transition:opacity .18s ease; }
.solere-source-badge { position:absolute; z-index:4; top:calc(133.333cqw - 33px); left:8px; display:inline-flex; align-items:center; justify-content:center; min-width:0; min-height:21px; padding:0 6px; background:#111; color:#fff; font:500 .52rem/1 Arial,Helvetica,sans-serif; letter-spacing:.08em; text-transform:uppercase; transition:opacity .18s ease; }
li.product:has(.solere-source-badge) .onsale { top:calc(133.333cqw - 59px); }
.home .solere-preview__section .woocommerce ul.products li.product { container-type:inline-size; }
.home .solere-preview__section .woocommerce ul.products li.product .onsale { top:calc(133.333cqw - 33px); left:8px; min-width:0; min-height:21px; padding:0 6px; font-size:.52rem; letter-spacing:.08em; }
@media (hover:hover) { li.product:hover>.solere-source-badge,li.product:hover>a>.solere-source-badge,li.product:hover>.onsale,li.product:hover>a>.onsale { opacity:0; } }
.woocommerce-pagination { position:static!important; float:none!important; clear:both; display:block!important; width:100%!important; margin:3rem 0 0!important; padding-top:2rem; border-top:1px solid #ddd; text-align:center; }
.woocommerce-pagination .page-numbers li .page-numbers { border-radius:0; background:transparent; color:#111; }
.woocommerce-pagination .page-numbers li .page-numbers.current { background:#222; color:#fff; }
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag,.search-results) .woocommerce-pagination { position:absolute!important; width:1px!important; height:1px!important; margin:-1px!important; padding:0!important; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
.site-main>.storefront-sorting .woocommerce-pagination ul.page-numbers { display:flex; align-items:center; gap:.15rem; margin:0; }
.site-main>.storefront-sorting .woocommerce-pagination .page-numbers li { margin:0; }
.site-main>.storefront-sorting .woocommerce-pagination .page-numbers li .page-numbers { display:flex; align-items:center; justify-content:center; min-width:30px; height:30px; padding:0 .45rem; font-size:.7rem; }
.solere-infinite-scroll { grid-column:1/-1; display:flex; align-items:center; justify-content:center; gap:.75rem; width:100%; min-height:90px; margin-top:1rem; color:#111; font-size:.7rem; font-weight:400; letter-spacing:.06em; text-transform:uppercase; }
.solere-infinite-scroll span { width:18px; height:18px; border:1px solid #bbb; border-top-color:#111; border-radius:50%; opacity:0; }
.solere-infinite-scroll.is-loading span { opacity:1; animation:solere-spin .7s linear infinite; }
.solere-infinite-scroll.is-complete span,.solere-infinite-scroll.has-error span { display:none; }
.solere-infinite-scroll button { min-width:190px; min-height:44px; padding:.75rem 1.25rem; border:1px solid #111; border-radius:0; background:#fff; color:#111; font-size:.7rem; letter-spacing:.06em; text-transform:uppercase; }
.solere-infinite-scroll:not(.has-error) button { display:none; }
@keyframes solere-spin { to { transform:rotate(360deg); } }
.woocommerce-account .entry-header { margin-bottom:3.5rem; text-align:left; }
.woocommerce-account .entry-header h1 { font:400 clamp(1.55rem,2vw,1.85rem)/1.15 Arial,Helvetica,sans-serif; letter-spacing:.04em; text-transform:uppercase; }
.solere-lightbox { position:fixed; z-index:999999; inset:0; display:none; align-items:center; justify-content:center; padding:24px; border:0; background:rgb(0 0 0 / 88%); }
.solere-lightbox.is-open { display:flex; }
.solere-lightbox img { display:block; max-width:min(92vw,1400px); max-height:92vh; object-fit:contain; }
.solere-lightbox button { position:absolute; display:flex; align-items:center; justify-content:center; width:46px; height:46px; padding:0; border:0; border-radius:0; background:transparent; color:#fff; font:300 2rem/1 Arial,sans-serif; }
.solere-lightbox__close { top:18px; right:18px; }
.solere-lightbox__prev { top:50%; left:18px; transform:translateY(-50%); }
.solere-lightbox__next { top:50%; right:18px; transform:translateY(-50%); }
.woocommerce-account .woocommerce { max-width:1180px; margin:0 auto; }
.woocommerce-account .edit-link { display:none; }
.woocommerce-account .woocommerce-MyAccount-navigation { width:25%; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin:0; border-top:1px solid #ddd; }
.woocommerce-account .woocommerce-MyAccount-navigation li { border-bottom:1px solid #ddd; list-style:none; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display:block; padding:1rem 0; color:#111; font-size:.75rem; letter-spacing:.03em; text-decoration:none; text-transform:uppercase; }
.woocommerce-account .woocommerce-MyAccount-content { width:68%; }
.woocommerce-account form.login,.woocommerce-account form.register,.woocommerce-account form.edit-account { max-width:620px; margin:0 auto; padding:2.5rem; border:1px solid #ddd; border-radius:0; }
.woocommerce-account:not(.logged-in) .entry-header { max-width:500px; margin:0 auto 2rem; padding:0!important; text-align:center; }
.woocommerce-account:not(.logged-in) .entry-header h1 { margin:0; font-size:1.35rem; letter-spacing:.08em; }
.woocommerce-account:not(.logged-in) .woocommerce { max-width:500px; }
.woocommerce-account:not(.logged-in) .woocommerce>h2 { display:none; }
.woocommerce-account:not(.logged-in) form.login { max-width:none; margin:0; padding:0; border:0; }
.woocommerce-account:not(.logged-in) form.login>p { margin:0 0 1.25rem; }
.woocommerce-account:not(.logged-in) form.login label { display:block; margin:0 0 .45rem; font-size:.7rem; letter-spacing:.045em; text-transform:uppercase; }
.woocommerce-account:not(.logged-in) form.login input.input-text { box-sizing:border-box; width:100%; min-height:50px; padding:0 14px; font-size:16px; }
.woocommerce-account:not(.logged-in) form.login .form-row:nth-last-of-type(2) { display:flex; flex-wrap:wrap; align-items:center; gap:1rem; margin-top:1.5rem; }
.woocommerce-account:not(.logged-in) form.login .woocommerce-form-login__rememberme { display:flex; align-items:center; gap:.5rem; margin:0 auto 0 0; font-size:.7rem; text-transform:none; }
.woocommerce-account:not(.logged-in) form.login .woocommerce-form-login__rememberme input { margin:0; }
.woocommerce-account:not(.logged-in) form.login .woocommerce-form-login__submit { min-width:160px; min-height:48px; margin:0; padding:0 24px; }
.woocommerce-account:not(.logged-in) form.login .woocommerce-LostPassword { margin:.85rem 0 0; text-align:right; }
.woocommerce-account:not(.logged-in) form.login .woocommerce-LostPassword a { color:#111; font-size:.7rem; letter-spacing:.03em; text-decoration:none; }
.woocommerce-account input.input-text,.woocommerce-account select { min-height:49px; border:1px solid #777; border-radius:0; background:#fff; box-shadow:none; }
.woocommerce-account button.button,.woocommerce-account a.button,.woocommerce-message .button,.woocommerce-info .button { border:1px solid #222; border-radius:0; background:#222; color:#fff; font-size:.72rem; letter-spacing:.05em; text-transform:uppercase; }
.woocommerce-account button.button,.woocommerce-account a.button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 24px; line-height:1.2; }
.woocommerce-account .password-input { position:relative; display:block; width:100%; }
.woocommerce-account .password-input input { padding-right:52px!important; }
.woocommerce-account .password-input .show-password-input { position:absolute; top:50%; right:6px; width:40px; height:40px; min-height:40px; margin:0; padding:0; border:0; background:transparent; transform:translateY(-50%); }
.woocommerce-account form.lost_reset_password { width:100%; max-width:500px; margin:0 auto; text-align:center; }
.woocommerce-account form.lost_reset_password .form-row { float:none; width:100%; margin-right:0; margin-left:0; text-align:left; }
.woocommerce-account form.lost_reset_password input.input-text { box-sizing:border-box; width:100%; min-height:49px; font-size:16px; }
.woocommerce-account form.lost_reset_password button.button { width:100%; }
.woocommerce form .form-row:has(>label+input:not([type="checkbox"]):not([type="radio"])),.woocommerce form .form-row:has(>label+.password-input),.woocommerce form .form-row:has(>label+select),.woocommerce form .form-row:has(>label+textarea) { position:relative; }
.woocommerce form .form-row>label:not(.woocommerce-form__label-for-checkbox) { transition:color .18s ease,transform .18s ease,font-size .18s ease; }
.woocommerce form .form-row.solere-floating-field>label { position:absolute; z-index:2; top:15px; left:14px; margin:0; color:#666; font-size:.76rem; line-height:1; letter-spacing:.02em; pointer-events:none; text-transform:none; transform-origin:left top; }
.woocommerce form .form-row.solere-floating-field input.input-text,.woocommerce form .form-row.solere-floating-field select { padding:17px 44px 3px 14px; transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease; }
.woocommerce form .form-row.solere-floating-field textarea { padding:20px 14px 8px; transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease; }
.woocommerce form .form-row.solere-floating-field:focus-within>label,.woocommerce form .form-row.solere-floating-field.has-value>label { top:6px; color:#111; font-size:.56rem; letter-spacing:.05em; text-transform:uppercase; }
.woocommerce form .form-row.solere-floating-field:focus-within input.input-text,.woocommerce form .form-row.solere-floating-field:focus-within select,.woocommerce form .form-row.solere-floating-field:focus-within textarea { border-color:#111!important; background:#fff!important; box-shadow:0 0 0 1px #111!important; outline:0!important; }
.woocommerce-message,.woocommerce-info,.woocommerce-error { border:0; border-left:3px solid #222; border-radius:0; background:#f5f5f5; color:#111; font-size:.8rem; }

/* Mizu-aligned single product */
.single-product .storefront-breadcrumb,.single-product .woocommerce-products-header { display:none; }
.single-product .site-header { position:fixed!important; z-index:1000; top:0; right:0; left:0; width:100%; }
.admin-bar.single-product .site-header { top:32px; }
.single-product .site-content { padding-top:73px; }
.single-product .site-content>.col-full { width:100%; max-width:none; margin:0; padding:0; }
body.single-product,body.single-product #page,body.single-product #content,body.single-product .site-content,body.single-product .site-content>.col-full,body.single-product #primary,body.single-product #main,body.single-product article.product { overflow:visible!important; }
.single-product .content-area,.single-product .site-main { width:100%; margin:0; padding:0; float:none; }
.single-product div.product { display:grid!important; grid-template-columns:50% 50%; margin:0; }
body.single-product.storefront-full-width-content div.product .woocommerce-product-gallery { grid-column:1; grid-row:1; float:none!important; width:100%!important; margin:0!important; overflow:visible; }
.single-product div.product .woocommerce-product-gallery__wrapper { display:block; margin:0; }
.single-product div.product .woocommerce-product-gallery__image { scroll-snap-align:start; }
.single-product div.product .woocommerce-product-gallery__image a { display:block; height:auto; min-height:0; overflow:hidden; }
.single-product div.product .woocommerce-product-gallery,.single-product div.product .woocommerce-product-gallery__wrapper,.single-product div.product .woocommerce-product-gallery__image,.single-product div.product .woocommerce-product-gallery__image a,.single-product div.product .woocommerce-product-gallery__image img { border-radius:0!important; }
.single-product div.product .woocommerce-product-gallery__image img { display:block; width:auto; max-width:100%; height:auto; margin:0 auto; background:#fff; object-fit:contain; object-position:center; }
.single-product div.product .woocommerce-product-gallery__trigger { display:none!important; }
body.single-product.storefront-full-width-content div.product .summary { position:relative; grid-column:2; grid-row:1; align-self:stretch; float:none!important; width:100%!important; height:100%; min-height:100%; margin:0!important; padding:0; background:#fff; }
.single-product .solere-product-panel { position:sticky; top:73px; box-sizing:border-box; display:flex; flex-direction:column; justify-content:flex-start; width:100%; min-height:calc(100vh - 73px); padding:100px clamp(55px,7vw,120px) 48px; }
.admin-bar.single-product .solere-product-panel { top:105px; min-height:calc(100vh - 105px); }
body.single-product .solere-product-panel>* { width:100%; max-width:420px; }
.single-product div.product .product_title { margin:0 0 .55rem; font:400 clamp(1.85rem,2vw,2.15rem)/1.08 Arial,Helvetica,sans-serif; letter-spacing:-.035em; }
.single-product div.product .summary .price { margin:0 0 2rem; color:#111; font:400 1rem/1.4 Arial,Helvetica,sans-serif; }
.single-product div.product .woocommerce-product-details__short-description { max-width:360px; margin:0 0 2rem; font-size:.88rem; line-height:1.65; }
.single-product .solere-made-to-order-notice { display:grid; gap:.3rem; box-sizing:border-box; margin:0 0 1.6rem; padding:.9rem 0; border-top:1px solid #ddd; border-bottom:1px solid #ddd; color:#222; font-size:.76rem; line-height:1.5; }
.single-product .solere-made-to-order-notice strong { font-size:.68rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
.single-product .solere-made-to-order-notice span { display:block; }
.single-product div.product form.cart { display:flex; flex-wrap:wrap; align-items:stretch; gap:0; margin:0; }
.single-product div.product.product-type-simple form.cart::before,.single-product div.product.product-type-variable .woocommerce-variation-add-to-cart::before { content:'Quantity:'; flex-basis:100%; margin:0 0 1rem; font-size:.8rem; }
.single-product div.product form.variations_form { display:block; }
.single-product div.product form.variations_form table.variations { width:100%; margin:0 0 2rem; }
.single-product div.product form.variations_form table.variations tr,.single-product div.product form.variations_form table.variations th,.single-product div.product form.variations_form table.variations td { display:block; width:100%; padding:0; background:transparent; }
.single-product div.product form.variations_form table.variations th.label { margin:0 0 1rem; font-size:.8rem; font-weight:400; text-align:left; }
.single-product div.product form.variations_form table.variations select { width:100%; height:49px; margin:0; padding:0 12px; border:1px solid #777; border-radius:0; background:#fff; color:#111; font:400 .82rem Arial,Helvetica,sans-serif; appearance:auto; -webkit-appearance:menulist; }
.single-product div.product form.variations_form .reset_variations { display:none!important; }
.single-product div.product .single_variation_wrap { width:100%; }
.single-product div.product .woocommerce-variation { min-height:0; }
.single-product div.product .woocommerce-variation-price { display:none; }
.single-product div.product .woocommerce-variation-add-to-cart { display:flex; flex-wrap:wrap; align-items:stretch; }
.single-product div.product form.variations_form:has(table.variations tr:only-child) { display:grid!important; grid-template-columns:minmax(0,1fr) 150px; grid-template-rows:auto 50px auto; column-gap:12px; row-gap:0; }
.single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations,.single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations tbody,.single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations tr { display:contents!important; }
.single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations select { width:104px!important; max-width:104px!important; padding-right:8px!important; background:#fff; appearance:auto; -webkit-appearance:menulist; }
.single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations th.label { grid-column:1; grid-row:1; align-self:end; margin:0 0 .7rem; }
.single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations td.value { grid-column:1; grid-row:2; width:104px; }
.single-product div.product form.variations_form table.variations select:focus { border:1px solid #111!important; box-shadow:none!important; outline:0!important; }
.single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations tbody { display:block; width:100%; }
.single-product div.product form.variations_form:has(table.variations tr:only-child) .single_variation_wrap,.single-product div.product form.variations_form:has(table.variations tr:only-child) .woocommerce-variation-add-to-cart { display:contents!important; }
.single-product div.product form.variations_form:has(table.variations tr:only-child) .woocommerce-variation { display:none!important; }
.single-product div.product form.variations_form:has(table.variations tr:only-child) .woocommerce-variation-add-to-cart::before { grid-column:2; grid-row:1; align-self:end; margin:0 0 .7rem; }
.single-product div.product form.variations_form:has(table.variations tr:only-child) .quantity { grid-column:2; grid-row:2; align-self:start; }
.single-product div.product form.variations_form:has(table.variations tr:only-child) .single_add_to_cart_button { grid-column:1/-1; grid-row:3; width:100%; margin-top:12px; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)) .woocommerce-variation-add-to-cart { display:grid; grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr); grid-template-rows:auto 50px auto; gap:0; width:100%; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)) .woocommerce-variation-add-to-cart::before { grid-column:2; grid-row:1; align-self:end; margin:0 0 .7rem; text-align:left; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)) .quantity { grid-column:2; grid-row:2; margin:0; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)) .single_add_to_cart_button { grid-column:1/-1; grid-row:3; width:100%; margin-top:12px; }
@media (min-width:781px) {
  .single-product div.product form.variations_form:has(table.variations tr:only-child) { grid-template-columns:minmax(0,1fr) 104px 150px minmax(0,1fr); justify-content:stretch; }
  .single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations select { width:104px; }
  .single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations th.label,.single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations td.value { grid-column:2; }
  .single-product div.product form.variations_form:has(table.variations tr:only-child) .woocommerce-variation-add-to-cart::before,.single-product div.product form.variations_form:has(table.variations tr:only-child) .quantity { grid-column:3; }
  .single-product div.product form.variations_form:has(table.variations tr:only-child) .single_add_to_cart_button { width:420px; }
}
.single-product div.product form.cart .quantity { display:grid; grid-template-columns:50px 50px 50px; float:none; width:150px; margin:0 0 2.2rem; }
.single-product div.product form.cart .qty { width:50px; height:50px; padding:0; border:1px solid #777; border-right:0; border-left:0; border-radius:0; background:#fff; font-size:.85rem; text-align:center; appearance:textfield; }
.single-product div.product form.cart .qty::-webkit-inner-spin-button,.single-product div.product form.cart .qty::-webkit-outer-spin-button { margin:0; appearance:none; }
.single-product .solere-qty-button { width:50px; height:50px; padding:0; border:1px solid #777; border-radius:0; background:#fff; color:#111; font-size:1rem; font-weight:400; }
.single-product .solere-qty-button { transition:background-color .2s ease,color .2s ease; }
.single-product .solere-qty-button:hover { background:#222; color:#fff; }
.single-product div.product form.cart .single_add_to_cart_button { flex-basis:100%; width:100%; min-height:50px; margin:0; border-radius:0; background:#222; color:#fff; font-size:.75rem; font-weight:400; letter-spacing:.08em; text-transform:uppercase; }
.single-product div.product form.cart .single_add_to_cart_button { position:relative; overflow:hidden; border:1px solid #222; transition:background-color .25s ease,color .25s ease; }
.single-product div.product form.cart .single_add_to_cart_button:hover { background:#fff; color:#222; }
.single-product div.product form.cart .single_add_to_cart_button.disabled { opacity:1; background:#222; color:#fff; }
.solere-product-accordions { margin-top:3rem; border-top:1px solid #cfcfcf; }
.solere-product-accordions details { border-bottom:1px solid #cfcfcf; }
.solere-product-accordions summary { display:flex; align-items:center; justify-content:space-between; padding:1.15rem 0; cursor:pointer; list-style:none; font:500 .78rem/1.35 Arial,Helvetica,sans-serif; letter-spacing:0; text-transform:none; }
.solere-product-accordions summary::-webkit-details-marker { display:none; }
.solere-product-accordions summary::after { content:'+'; font-size:.9rem; font-weight:400; }
.solere-product-accordions details[open] summary::after { content:'−'; }
.solere-product-accordions details>div { max-width:390px; padding:0 24px 1.25rem 0; color:#333; font-size:.8rem; line-height:1.65; }
.solere-product-accordions details>div p { margin:0 0 .75rem; }
.solere-product-accordions details>div p:last-child { margin-bottom:0; }
.single-product div.product .product_meta { display:none; }
.single-product .edit-link { display:none; }
.single-product .woocommerce-tabs,.single-product .related { grid-column:1/-1; width:100%!important; margin:0 auto!important; }
.single-product .related { max-width:none; padding:5rem 0 7rem; overflow:hidden; }
.single-product .storefront-product-pagination { display:none; }
.single-product .storefront-sticky-add-to-cart { display:none!important; }
.single-product .woocommerce-tabs ul.tabs { width:100%; margin:0 0 2rem; border:0; }
.single-product .woocommerce-tabs ul.tabs li { display:inline-block; margin-right:2rem; border:0; }
.single-product .woocommerce-tabs .panel { width:100%; max-width:780px; margin:0; }
.solere-shop-seo-wrap { grid-column:1/-1; width:100%; }
.solere-shop-seo { box-sizing:border-box; width:100%; margin:5rem 0 0; padding:0 0 4rem; }
.solere-shop-seo__accordion { width:100%; border-top:1px solid #e7e7e7; }
.solere-shop-seo details { border:0; border-bottom:1px solid #e7e7e7; }
.solere-shop-seo summary { display:flex; align-items:center; justify-content:space-between; min-height:58px; padding:14px 0; cursor:pointer; list-style:none; font:500 .78rem/1.35 Arial,Helvetica,sans-serif; letter-spacing:0; text-transform:none; }
.solere-shop-seo summary::-webkit-details-marker { display:none; }
.solere-shop-seo summary::after { content:'+'; font-size:.9rem; font-weight:400; }
.solere-shop-seo details[open] summary::after { content:'−'; }
.solere-shop-seo__answer { box-sizing:border-box; width:100%; max-width:none; padding:1rem 0 2rem; color:#3a3a3a; font-size:.84rem; line-height:1.7; }
.solere-shop-seo__answer h2 { margin:0 0 1rem; font:400 clamp(1.05rem,1.5vw,1.3rem)/1.22 Arial,Helvetica,sans-serif!important; letter-spacing:-.015em; text-transform:none; }
.solere-shop-seo__answer h3 { margin:1.65rem 0 .5rem; font:500 .78rem/1.4 Arial,Helvetica,sans-serif!important; letter-spacing:0; text-transform:none; }
.solere-shop-seo__answer p { margin:0 0 .75rem; }
.solere-shop-seo__answer > :last-child { margin-bottom:0; }
.solere-shop-seo__answer a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
@media (max-width:767px) {
  .solere-shop-seo { margin-top:3.5rem; padding-bottom:2rem; }
  .solere-shop-seo__answer { padding-right:10px; font-size:.8rem; }
  .solere-shop-seo__answer h2 { font-size:1.15rem!important; }
  .solere-shop-seo summary { min-height:54px; font-size:.7rem; }
}
.single-product .related>h2 { margin:0 32px 1.25rem; font:400 1.55rem/1 Arial,Helvetica,sans-serif; text-align:right; text-transform:uppercase; }
.single-product .related>h2::after { content:'\00a0\2192'; }
.single-product .related ul.products { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; width:100%; margin:0!important; }
.single-product .related ul.products::before,.single-product .related ul.products::after { display:none!important; }
body.single-product .related ul.products li.product { position:relative; container-type:inline-size; float:none!important; width:100%!important; max-width:none!important; margin:0!important; padding:0; text-align:left; }
.single-product .related ul.products li.product img { width:100%; max-width:none; aspect-ratio:3/4; margin:0 0 .65rem; object-fit:cover; transition:filter .25s ease,transform .35s ease; }
.single-product .related ul.products li.product:hover img { filter:brightness(.96); }
.single-product .related ul.products li.product .woocommerce-loop-product__title { margin:0; padding:0 8px .35rem; color:#111; font:400 .88rem/1.35 Arial,Helvetica,sans-serif; text-align:left; text-transform:none; }
.single-product .related ul.products li.product .price { margin:0; padding:0 8px; color:#111; font:400 .8rem/1.35 Arial,Helvetica,sans-serif; text-align:left; }
.single-product .related ul.products li.product .woocommerce-loop-product__title,.single-product .related ul.products li.product .price { box-sizing:border-box; padding-right:12px!important; padding-left:12px!important; }
.single-product .related ul.products li.product .button { position:absolute; z-index:2; top:calc(133.333cqw - 60px); right:12px; bottom:auto; left:12px; display:block!important; box-sizing:border-box; width:auto; max-width:calc(100% - 24px); margin:0; padding:1rem 14px; border:0; border-radius:0; background:#fff; color:#111; font:400 .72rem/1 Arial,Helvetica,sans-serif; letter-spacing:.04em; text-align:center; text-transform:uppercase; opacity:0; transform:none; transition:opacity .25s ease,background-color .2s ease,color .2s ease; }
.single-product .related ul.products li.product:hover .button,.single-product .related ul.products li.product:focus-within .button { opacity:1; transform:translateY(0); }
.single-product .related ul.products li.product .button:hover { background:#222; color:#fff; }
.single-product .related ul.products li.product .added_to_cart { display:none!important; }
.single-product div.product>.onsale { position:absolute; z-index:5; top:16px; left:16px; margin:0; padding:.55rem .75rem; border:0; border-radius:0; background:#111; color:#fff; font:500 .62rem/1 Arial,Helvetica,sans-serif; letter-spacing:.1em; text-transform:uppercase; }

@media (max-width:780px) {
  .site-header { height:56px; }
  .admin-bar .site-header { top:0; }
  .single-product .site-content { padding-top:56px; }
  .solere-site-header { position:relative; grid-template-columns:40px 1fr auto; height:56px; padding:0 16px; gap:.65rem; }
  .solere-site-header__logo { position:absolute; left:50%; justify-self:auto; font-size:1.34rem; transform:translateX(-50%); }
  .solere-site-header__nav,.solere-site-header__login { display:none; }
  .solere-site-header__mobile-nav { display:block; position:relative; }
  .solere-site-header__mobile-nav summary { display:flex; flex-direction:column; justify-content:center; width:24px; height:24px; gap:4px; cursor:pointer; list-style:none; }
  .solere-site-header__mobile-nav summary::-webkit-details-marker { display:none; }
  .solere-site-header__mobile-nav summary span { display:block; width:21px; height:1px; background:#111; }
  .solere-site-header__mobile-nav[open] summary { position:relative; z-index:100001; }
  .solere-site-header__mobile-nav[open] summary span:first-child { transform:translateY(5px) rotate(45deg); }
  .solere-site-header__mobile-nav[open] summary span:nth-child(2) { opacity:0; }
  .solere-site-header__mobile-nav[open] summary span:last-child { transform:translateY(-5px) rotate(-45deg); }
  .solere-site-header__mobile-nav summary span { transition:transform .2s ease,opacity .2s ease; }
  .solere-site-header__mobile-nav nav { position:fixed; z-index:100000; inset:56px 0 0; display:flex; flex-direction:column; padding:3.5rem 22px 2rem; background:#fff; }
  .admin-bar .solere-site-header__mobile-nav nav { top:56px; }
  .solere-site-header__mobile-nav nav a { padding:1rem 0; border-bottom:1px solid #ddd; font-size:1.1rem; font-weight:400; letter-spacing:.02em; text-transform:uppercase; }
  .solere-site-header__tools { gap:1rem; }
  .home .solere-preview__header { position:relative; grid-template-columns:40px 1fr auto; height:56px; padding:0 16px; gap:.65rem; }
  .home .solere-preview__mobile-menu { display:flex; }
  .home .solere-preview__nav { display:none; }
  .home .solere-preview__logo { position:absolute; left:50%; margin:0!important; transform:translateX(-50%); }
  .home .solere-preview__logo a { font-size:1.34rem!important; }
  .single-product div.product { display:block!important; }
  .single-product div.product .woocommerce-product-gallery__image a { height:auto; min-height:0; }
  body.single-product.storefront-full-width-content div.product .summary,.admin-bar.single-product div.product .summary { position:relative; min-height:0; padding:0; }
  .single-product .solere-product-panel,.admin-bar.single-product .solere-product-panel { position:relative; top:auto; height:auto; min-height:0; padding:2.25rem 20px 3rem; }
  .single-product div.product .product_title { margin-bottom:.35rem; font-size:1.65rem; line-height:1.12; letter-spacing:-.025em; }
  .single-product div.product .summary .price { margin-bottom:1.35rem; font-size:.9rem; }
  .single-product div.product .woocommerce-product-details__short-description { margin-bottom:1.65rem; font-size:.82rem; line-height:1.55; }
  .single-product div.product form.variations_form table.variations { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-bottom:1.5rem; }
  .single-product div.product form.variations_form table.variations tbody { display:contents; }
  .single-product div.product form.variations_form table.variations tr { display:block; min-width:0; }
  .single-product div.product form.variations_form table.variations th.label { margin-bottom:.55rem; font-size:.68rem; letter-spacing:.04em; text-transform:uppercase; }
  .single-product div.product form.variations_form table.variations select { height:46px; padding-right:34px; padding-left:12px; font-size:.76rem; }
  .single-product div.product form.variations_form:has(table.variations tr:only-child) { display:grid!important; grid-template-columns:minmax(0,1fr) 104px 126px minmax(0,1fr); grid-template-rows:auto 46px auto; justify-content:stretch; column-gap:10px; row-gap:0; }
  .single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations { display:contents!important; }
  .single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations th.label,.single-product div.product form.variations_form:has(table.variations tr:only-child) table.variations td.value { grid-column:2; }
  .single-product div.product form.variations_form:has(table.variations tr:only-child) .single_variation_wrap,.single-product div.product form.variations_form:has(table.variations tr:only-child) .woocommerce-variation-add-to-cart { display:contents!important; }
  .single-product div.product form.variations_form:has(table.variations tr:only-child) .woocommerce-variation { display:none!important; }
  .single-product div.product form.variations_form:has(table.variations tr:only-child) .woocommerce-variation-add-to-cart::before { grid-column:3; grid-row:1; align-self:end; margin:0 0 .55rem; }
  .single-product div.product form.variations_form:has(table.variations tr:only-child) .quantity { grid-column:3; grid-row:2; align-self:start; }
  .single-product div.product form.variations_form:has(table.variations tr:only-child) .single_add_to_cart_button { grid-column:1/-1; grid-row:3; width:100%; margin-top:12px; }
  .single-product div.product form.variations_form:has(table.variations tr:nth-child(2)) .woocommerce-variation-add-to-cart { display:grid; grid-template-columns:minmax(0,1fr) 126px minmax(0,1fr); grid-template-rows:auto 46px auto; gap:0; width:100%; }
  .single-product div.product form.variations_form:has(table.variations tr:nth-child(2)) .woocommerce-variation-add-to-cart::before { grid-column:2; grid-row:1; align-self:end; margin:0 0 .55rem; text-align:left; }
  .single-product div.product form.variations_form:has(table.variations tr:nth-child(2)) .quantity { grid-column:2; grid-row:2; margin:0; }
  .single-product div.product form.variations_form:has(table.variations tr:nth-child(2)) .single_add_to_cart_button { grid-column:1/-1; grid-row:3; width:100%; margin-top:12px; }
  .single-product div.product.product-type-simple form.cart::before,.single-product div.product.product-type-variable .woocommerce-variation-add-to-cart::before { margin-bottom:.6rem; font-size:.68rem; letter-spacing:.04em; text-transform:uppercase; }
  .single-product div.product .woocommerce-variation-add-to-cart { display:flex; align-items:stretch; gap:10px; }
  .single-product div.product form.cart .quantity { grid-template-columns:42px 42px 42px; width:126px; margin:0; }
  .single-product div.product form.cart .qty,.single-product .solere-qty-button { width:42px; height:46px; }
  .single-product div.product form.cart .single_add_to_cart_button { flex:1 1 auto; width:auto; min-height:46px; padding-right:12px; padding-left:12px; font-size:.68rem; }
  .solere-product-accordions { margin-top:2.5rem; }
  .single-product .woocommerce-tabs { padding:4rem 20px; }
  .single-product .related { padding:4rem 0; }
  .single-product .related>h2 { margin:0 18px 1rem; font-size:1.2rem; text-align:left; }
  .single-product .related ul.products { display:flex!important; gap:8px; padding:0 18px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
  body.single-product .related ul.products li.product { flex:0 0 78vw; scroll-snap-align:start; }
  .single-product .related ul.products li.product .button { display:none!important; }
  .solere-footer { grid-template-columns:1fr 1fr; gap:2.75rem 1.5rem; padding:3.5rem 20px 1.5rem; }
  .solere-footer__intro { grid-column:1/-1; }
  .solere-footer__recaptcha { margin:1.25rem 0 -.25rem!important; }
  .solere-footer__legal { flex-direction:column; gap:1rem; margin-top:1rem; }
  .solere-footer__legal nav { justify-content:space-between; width:100%; gap:.35rem; padding:0; overflow:visible; flex-wrap:nowrap; }
  .solere-footer__legal nav a { flex:0 1 auto; font-size:.44rem; letter-spacing:0; }
  .woocommerce-cart .site-content>.col-full,.woocommerce-checkout .site-content>.col-full { padding:3.5rem 18px 5rem; }
  .woocommerce-cart .entry-header h1,.woocommerce-checkout .entry-header h1 { margin-bottom:2.5rem; text-align:left; }
  .woocommerce-checkout .wc-block-checkout__main { padding-right:0; }
  .woocommerce-checkout .wc-block-checkout__sidebar { margin-top:2rem; padding:1rem; }
  :is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product,.woocommerce-account) .site-content>.col-full { padding:2rem 14px 5rem; }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .site-content>.col-full { padding-top:1.6rem; }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .woocommerce-products-header { position:relative; min-height:44px!important; margin:0!important; padding-right:118px!important; display:flex; align-items:center; pointer-events:none; }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .woocommerce-products-header__title.page-title { position:relative; z-index:61; font-size:clamp(1.15rem,5vw,1.45rem)!important; line-height:1.1!important; }
  :is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products,.search-results ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; }
  :is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product .button,.search-results ul.products li.product .button { display:none!important; }
  .storefront-sorting { z-index:60; top:56px; grid-template-columns:minmax(0,1fr) auto; column-gap:.5rem; row-gap:0; min-height:38px; margin:-44px 0 1.35rem; padding:0 2px .2rem; border-bottom:1px solid #e2e2e2; }
  .storefront-sorting .woocommerce-result-count { display:none; }
  .storefront-sorting .woocommerce-ordering { display:none; }
  .solere-catalog-filters { grid-column:2; }
  .site-main>.storefront-sorting .woocommerce-pagination .page-numbers li .page-numbers { min-width:27px; height:27px; padding:0 .35rem; }
  .woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content { float:none; width:100%; }
  .woocommerce-account .woocommerce-MyAccount-navigation { margin-bottom:2.5rem; }
  .woocommerce-account form.login,.woocommerce-account form.register,.woocommerce-account form.edit-account { padding:1.5rem; }
  .woocommerce-account:not(.logged-in) .entry-header { margin-bottom:1.5rem; }
  .woocommerce-account:not(.logged-in) form.login { padding:0; }
  .woocommerce-account:not(.logged-in) form.login .form-row:nth-last-of-type(2) { display:grid; grid-template-columns:1fr; gap:1rem; }
  .woocommerce-account:not(.logged-in) form.login .woocommerce-form-login__submit { width:100%; }
  .woocommerce-account:not(.logged-in) form.login .woocommerce-LostPassword { text-align:center; }
  .solere-catalog-filters__panel { top:100%; right:-14px; left:-14px; grid-template-columns:1fr 1fr; gap:1.5rem 1rem; max-height:calc(100svh - 112px); padding:1.5rem 18px 2rem; border-top:0; border-bottom:1px solid #e7e7e7; background:#fff; box-shadow:0 10px 20px rgb(0 0 0 / 3%); overflow-y:auto; }
  .solere-catalog-filters>summary { justify-content:space-between; }
  .wc-block-components-drawer.wc-block-mini-cart__drawer { width:100vw!important; max-width:none!important; }
  .wc-block-mini-cart__drawer .wc-block-cart-items__row { grid-template-columns:92px minmax(0,1fr) 60px!important; column-gap:12px!important; padding:18px 0!important; }
  .wc-block-mini-cart__drawer .wc-block-cart-item__image,.wc-block-mini-cart__drawer .wc-block-cart-item__image img { width:92px!important; }
  .wc-block-mini-cart__drawer .wc-block-mini-cart__header { box-sizing:border-box; min-height:72px; margin-top:max(10px,env(safe-area-inset-top)); padding:0 14px; }
  .wc-block-mini-cart__drawer .wc-block-mini-cart__title { font-size:1rem!important; }
  .wc-block-mini-cart__drawer .wc-block-components-drawer__close { top:max(14px,env(safe-area-inset-top))!important; right:14px!important; width:36px!important; min-width:36px!important; height:36px!important; min-height:36px!important; padding:9px!important; }
  .wc-block-mini-cart__drawer .wc-block-components-drawer__close svg { width:18px; height:18px; }
  .wc-block-mini-cart__drawer .wc-block-mini-cart__items { padding:0 16px; }
  .wc-block-mini-cart__drawer .wc-block-mini-cart__footer { padding:14px 16px 16px; }
  .solere-live-search { padding-top:56px; background:rgb(122 122 122 / 10%); }
  .solere-live-search__bar { box-sizing:border-box; display:grid; grid-template-columns:auto minmax(0,1fr) 32px; min-height:71px; padding:0 16px; gap:12px; border-bottom:1px solid #d9d9d9; background:#fff; transform:translateY(-100%); }
  .solere-live-search__bar>span { font-size:.6rem; line-height:1; letter-spacing:.1em; }
  .solere-live-search__bar input { box-sizing:border-box; width:100%; height:40px; min-height:0; padding:0 10px; border:0!important; border-radius:0; outline:0!important; background:#fff!important; box-shadow:none!important; font-size:16px!important; line-height:40px; appearance:none; -webkit-appearance:none; }
  .solere-live-search__bar input:focus,.solere-live-search__bar input:focus-visible { border:0!important; outline:0!important; box-shadow:none!important; }
  .solere-live-search__bar button { display:flex; align-items:center; justify-content:center; width:32px; height:32px; font-size:1.05rem; }
  .solere-live-search__results { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:calc(100svh - 127px); padding:14px 16px 28px; column-gap:4px; row-gap:28px; }
  body:is(.page-id-251,.page-id-3,.page-id-253,.page-id-254) .site-content>.col-full { padding:2.5rem 20px 4.5rem; }
  .solere-about__hero figure,.solere-about__hero img { height:72svh; min-height:520px; }
  .solere-about__intro { padding:4.5rem 22px; text-align:left; }
  .solere-about__intro h1 { margin-bottom:1.4rem; font-size:1.8rem!important; }
  .solere-about__intro p { font-size:.88rem; }
  .solere-about__pair { display:grid; grid-template-columns:1fr 1fr; gap:4px; padding:0 0 4rem; }
  .solere-about__pair figure,.solere-about__pair img { height:auto; min-height:0; aspect-ratio:2/3; }
  .solere-about__quote { min-height:0; padding:0; }
  .solere-about__quote>.wp-block-cover__inner-container { min-height:0; padding:44px 24px; }
  .solere-about__quote>.wp-block-cover__image-background { height:68svh; }
  .solere-about__quote blockquote { padding:0; font-size:1rem; line-height:1.6; }
  .solere-about__final figure,.solere-about__final img { height:68svh; min-height:520px; }
  .solere-login-drawer__panel { width:100vw; max-width:none; }
  .solere-login-drawer__panel>header { min-height:68px; padding:0 16px; }
  .solere-login-drawer__body { padding:32px 20px; }
  .home .solere-editorial-split { display:flex; flex-direction:column; min-height:0; }
  .home .solere-preview__mizu-hero { min-height:95vh!important; background-position:65% 40%!important; }
  .home .solere-preview__mizu-hero>.wp-block-spacer { min-height:95vh!important; }
  .home .solere-editorial-split--reverse { flex-direction:column-reverse; }
  .home .solere-editorial-split>.wp-block-column { min-height:82svh; }
  .home .solere-editorial-split__content { min-height:82svh!important; padding:4.5rem 22px; }
  .home .solere-editorial-panel__content { min-height:82svh; padding:4.5rem 22px; }
  .home .solere-editorial-parallax { min-height:90svh!important; background-attachment:scroll; }
  .home .solere-preview__section { padding:3.5rem 16px 4.5rem; }
  .home .solere-preview__section-head { position:relative; z-index:1; top:8px; margin-bottom:14px; }
  .home .solere-preview__section-head h2 { font-size:1.35rem!important; text-align:left; }
  .home .solere-preview__section-head p { margin:0!important; }
  .home .solere-preview__section .solere-preview__section-head+.woocommerce { margin-block-start:0!important; }
  .home .solere-preview__section .woocommerce { margin-top:0!important; }
  .home .solere-preview__section .woocommerce ul.products { display:flex!important; gap:8px; margin-right:-16px!important; padding-right:16px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
  .home .solere-preview__section .woocommerce ul.products::-webkit-scrollbar { display:none; }
  .home .solere-preview__section .woocommerce ul.products li.product { flex:0 0 78vw; scroll-snap-align:start; }
  .home .solere-preview__section .woocommerce ul.products li.product .woocommerce-loop-product__title { padding:.6rem 4px 0!important; }
  .home .solere-preview__section .woocommerce ul.products li.product .price { padding:0 4px!important; }
  .home .solere-preview__campaign { min-height:72svh; padding:4rem 20px; background-attachment:scroll; }
  .home .solere-preview__campaign>.wp-block-group__inner-container>.wp-block-heading { font-size:clamp(1.15rem,5.6vw,1.7rem)!important; letter-spacing:.025em!important; }
  .home .solere-editorial-split__content h2 { font-size:1.75rem!important; letter-spacing:.06em!important; }
  .home .solere-preview__featured { margin:44px 0!important; padding:0 16px!important; }
  .home .solere-preview__featured>.wp-block-group__inner-container>h2 { position:relative; z-index:1; top:8px; margin:0 0 14px!important; font-size:1.35rem!important; text-align:left; }
  .home .solere-preview__featured .wp-block-columns { display:grid!important; grid-template-columns:minmax(0,1fr); gap:24px; margin-block-start:0!important; }
  .home .solere-preview__featured .solere-preview__feature { box-sizing:border-box; width:100%!important; min-width:0; min-height:0; flex:none!important; }
  .home .solere-preview__featured .solere-preview__feature>.wp-block-spacer { display:block; width:100%!important; height:auto!important; min-height:0!important; aspect-ratio:12/17; }
  .home .solere-explore-discover { min-height:420px; padding:4.5rem 22px; }
  .home .solere-explore-discover h2 { font-size:1.75rem!important; }
  .home .solere-shop-categories { padding:0 24px; }
  .home .solere-shop-categories>.wp-block-group__inner-container { grid-template-columns:1fr; }
  .home .solere-shop-categories>.wp-block-group__inner-container>h2 { position:relative; z-index:1; top:8px; grid-column:1; margin:0 0 14px!important; padding:0; font-size:1.35rem!important; text-align:left; }
  .home .solere-shop-categories>.wp-block-group__inner-container>p { grid-column:1; justify-self:start; margin:0!important; padding:0; text-align:left; }
  .home .solere-shop-categories .wp-block-columns { display:grid; grid-template-columns:1fr; gap:0; margin:24px 0 0!important; }
  .home .solere-shop-categories .wp-block-column { margin-bottom:0!important; }
  .home .solere-shop-categories h3 { margin:16px 0 24px!important; }
}

/* Hero-specific rhythm: tight wrapped headline, deliberate CTA separation. */
.home .im-home-hero__content h1 { line-height:.98!important; }
.home .im-home-hero__content .im-title-subtitle { margin:12px 0 32px!important; }

@media (max-width:780px) {
  .home .im-home-hero__content h1 { line-height:1!important; }
  .home .im-home-hero__content .im-title-subtitle { margin:10px 0 28px!important; }
}

/* Final section-lockup layout overrides. */
.home .im-title-eyebrow,
.home .im-product-rail .solere-preview__section-head .im-title-eyebrow,
.home .im-bundle-section>header .im-title-eyebrow {
  margin:0 0 12px!important;
  padding:0!important;
  color:#6d6866;
  font:900 11px/13px Arial,sans-serif!important;
  letter-spacing:4px!important;
  text-align:left!important;
  text-transform:uppercase!important;
}
.home .im-home-hero .im-title-eyebrow,
.home .im-product-rail--dark .im-title-eyebrow,
.home .im-bundle-section .im-title-eyebrow,
.home .im-pleasure-finder .im-title-eyebrow,
.home .solere-editorial-split .im-title-eyebrow,
.home .im-explore-banner .im-title-eyebrow { color:#fff!important; }
.home .im-product-rail .solere-preview__section-head {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,620px)!important;
  align-items:end!important;
  gap:20px!important;
}
.home .im-product-rail .solere-preview__section-head .im-title-lockup { grid-column:2; width:100%; margin:0; }
.home .im-product-rail .solere-preview__section-head>p { grid-column:1; grid-row:1; align-self:end; justify-self:start; margin:0!important; }
.home .im-bundle-section>header {
  box-sizing:border-box;
  width:min(620px,calc(100% - 40px));
  max-width:none;
  margin-right:max(20px,calc((100vw - 1240px)/2));
  margin-left:auto;
}
.home .im-home-hero::before { background:linear-gradient(270deg,rgb(0 0 0 / 54%) 0%,rgb(0 0 0 / 19%) 48%,transparent 75%); }
.home .im-home-hero__content { margin-left:auto; }
.home .im-pleasure-finder>.wp-block-group__inner-container,
.home .im-explore-banner>.wp-block-cover__inner-container,
.home .im-home-about>.wp-block-group__inner-container {
  box-sizing:border-box;
  width:min(620px,calc(100% - 40px));
  max-width:none;
  margin-right:max(20px,calc((100vw - 1240px)/2));
  margin-left:auto;
  text-align:left;
}
.home .im-pleasure-finder .im-title-subtitle,
.home .im-explore-banner .im-title-subtitle,
.home .im-home-about .im-title-subtitle { text-align:left!important; }

@media (max-width:780px) {
  .home .im-product-rail .solere-preview__section-head { grid-template-columns:1fr!important; gap:16px!important; }
  .home .im-product-rail .solere-preview__section-head .im-title-lockup { grid-column:1; grid-row:1; }
  .home .im-product-rail .solere-preview__section-head>p { grid-column:1; grid-row:2; }
  .home .im-bundle-section>header,
  .home .im-pleasure-finder>.wp-block-group__inner-container,
  .home .im-explore-banner>.wp-block-cover__inner-container,
  .home .im-home-about>.wp-block-group__inner-container { width:calc(100% - 32px); margin-right:16px; margin-left:16px; }
  .home .im-home-hero::before { background:linear-gradient(0deg,rgb(0 0 0 / 62%) 0%,rgb(0 0 0 / 15%) 62%,transparent 100%); }
  .home .im-home-hero__content { margin-left:0; }
}

@media (min-width:781px) {
  .home .im-home-hero { padding-right:20px; }
  .home .im-pleasure-finder>.wp-block-group__inner-container,
  .home .im-home-about>.wp-block-group__inner-container { transform:translateX(24px); }
}

/* Final related-grid lock: match the wider 301px shop cards. */
.single-product .related ul.products { gap:12px!important; }
body.single-product .related ul.products li.product {
  box-sizing:border-box;
  flex:0 0 301px!important;
  width:301px!important;
  min-height:562px!important;
  padding:25px!important;
}
.single-product .related ul.products li.product .woocommerce-loop-product__link { flex:1 1 auto; width:100%; }
.single-product .related ul.products li.product .woocommerce-loop-product__link>img:not(.im-product-card__hover-image) { width:100%!important; height:auto!important; margin:0 0 18px!important; }
.single-product .related .im-product-card__hover-image { top:0!important; left:0!important; width:100%!important; height:auto!important; }
.single-product .related ul.products li.product .intimatemart-product-brand { width:100%!important; margin:0 0 4px!important; }
.single-product .related ul.products li.product .woocommerce-loop-product__title,
.single-product .related ul.products li.product .price { width:100%!important; }
.single-product .related ul.products li.product .button { width:100%!important; margin:15px 0 0!important; }

@media (max-width:780px) {
  body.single-product .related ul.products li.product { flex-basis:76vw!important; width:76vw!important; min-height:440px!important; padding:16px!important; }
  .single-product .related ul.products li.product .intimatemart-product-brand,
  .single-product .related ul.products li.product .woocommerce-loop-product__title,
  .single-product .related ul.products li.product .price,
  .single-product .related ul.products li.product .button { width:100%!important; }
}

/* Related products use the same four-visible carousel system as homepage rails. */
.single-product .related.im-product-carousel { position:relative; box-sizing:border-box; width:100%!important; max-width:none; padding:72px 20px 82px; overflow:hidden; }
.single-product .related>h2 { width:100%; max-width:1240px; margin:0 auto 30px!important; font:600 32px/1.2 Arial,sans-serif!important; letter-spacing:.6px; text-align:left; text-transform:none; }
.single-product .related>h2::after { content:none; }
.single-product .related ul.products { display:flex!important; flex-wrap:nowrap!important; gap:20px; box-sizing:border-box; width:100%; max-width:1240px; margin:0 auto!important; padding:0 0 20px; overflow-x:auto; overflow-y:hidden; scroll-behavior:smooth; scroll-snap-type:x mandatory; scrollbar-width:none; }
.single-product .related ul.products::-webkit-scrollbar { display:none; }
body.single-product .related ul.products li.product { position:relative; display:flex!important; flex:0 0 292px!important; flex-direction:column; width:292px!important; min-height:0; margin:0!important; padding:0; border:1px solid rgb(0 0 0 / 20%); background:#fff; box-shadow:none; scroll-snap-align:start; overflow:hidden; transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease; }
body.single-product .related ul.products li.product:hover,body.single-product .related ul.products li.product:focus-within { border-color:rgb(0 0 0 / 55%); box-shadow:0 8px 22px rgb(35 25 20 / 10%); transform:translateY(-2px); }
.single-product .related ul.products li.product .woocommerce-loop-product__link { position:relative; display:flex; flex:0 0 auto; flex-direction:column; width:100%; }
.single-product .related ul.products li.product .woocommerce-loop-product__link>img:not(.im-product-card__hover-image) { display:block; width:240px!important; height:240px!important; margin:25px auto 0!important; aspect-ratio:1/1; background:#fff!important; object-fit:contain; transition:transform .35s ease; }
.single-product .related .im-product-card__hover-image { position:absolute; z-index:2; top:25px; left:25px; display:block; width:240px!important; height:240px!important; margin:0!important; aspect-ratio:1/1; background:#fff!important; object-fit:contain; opacity:0; pointer-events:none; transition:opacity .3s ease,transform .35s ease; }
.single-product .related li.product:hover .im-product-card__hover-image,.single-product .related li.product:focus-within .im-product-card__hover-image { opacity:1; transform:scale(1.025); }
.single-product .related ul.products li.product .intimatemart-product-brand { box-sizing:border-box; width:240px; height:16px; min-height:16px; margin:18px auto 4px; padding:0; line-height:16px; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; }
.single-product .related ul.products li.product .woocommerce-loop-product__title { display:-webkit-box!important; box-sizing:border-box; width:240px; height:43px; min-height:43px; max-height:43px; margin:0 auto!important; padding:0!important; font-size:.86rem!important; line-height:1.4!important; text-align:left!important; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.single-product .related ul.products li.product .price { box-sizing:border-box; width:240px; min-height:1.5em; margin:8px auto 0!important; padding:0!important; font-size:.78rem!important; text-align:left!important; }
.single-product .related ul.products li.product .button { position:static; display:flex!important; align-items:center; justify-content:center; width:240px; max-width:none; min-height:49px; margin:18px auto 25px!important; padding:0 10px!important; border:1px solid rgb(0 0 0 / 55%); background:#fff; color:#111; font-size:15px; opacity:1; }
.single-product .related ul.products li.product .button:hover,.single-product .related ul.products li.product .button:focus { background:#111; color:#fff; }
.single-product .related .im-product-carousel__button { position:absolute; z-index:6; top:50%; display:flex; align-items:center; justify-content:center; width:44px; height:44px; min-width:44px; min-height:44px; padding:0; border:0; border-radius:50%; background:rgb(255 255 255 / 88%); box-shadow:0 1px 5px rgb(0 0 0 / 16%); color:#7a7a7a; opacity:.75; cursor:pointer; transform:translateY(-50%); }
.single-product .related .im-product-carousel__button[hidden] { display:none!important; }
.single-product .related .im-product-carousel__button--previous { left:8px; }
.single-product .related .im-product-carousel__button--next { right:8px; }
.single-product .related .im-product-carousel__button svg { width:26px; height:24px; }
.single-product .related .im-product-carousel__button--previous svg { transform:rotate(90deg); }
.single-product .related .im-product-carousel__button--next svg { transform:rotate(-90deg); }

@media (max-width:780px) {
  .single-product .related.im-product-carousel { padding:52px 16px 58px; }
  .single-product .related>h2 { margin-bottom:18px!important; font-size:1.45rem!important; }
  .single-product .related ul.products { gap:12px; padding:0 0 16px; }
  body.single-product .related ul.products li.product { flex-basis:76vw!important; width:76vw!important; transform:none!important; }
  .single-product .related ul.products li.product .woocommerce-loop-product__link>img:not(.im-product-card__hover-image) { width:calc(100% - 32px)!important; height:auto!important; margin:16px auto 0!important; }
  .single-product .related .im-product-card__hover-image { display:none; }
  .single-product .related ul.products li.product .intimatemart-product-brand,.single-product .related ul.products li.product .woocommerce-loop-product__title,.single-product .related ul.products li.product .price,.single-product .related ul.products li.product .button { width:calc(100% - 32px)!important; }
  .single-product .related ul.products li.product .button { display:flex!important; }
  .single-product .related .im-product-carousel__button { display:none!important; }
}

/* Reference product CTAs use a subtle six-pixel corner radius. */
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .button,
.home .im-product-rail .woocommerce ul.products li.product .button,
.single-product .related ul.products li.product .button {
  border-radius:6px!important;
}

/* Friendlier reference card shell with a slightly wider IntimateMart catalog. */
@media (min-width:781px) {
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .site-content>.col-full,
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-breadcrumb .col-full {
    width:calc(100% - 40px);
    max-width:1240px;
  }
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product {
  box-sizing:border-box;
  min-height:562px;
  padding:25px;
  border:1px solid rgb(0 0 0 / 20%);
  border-radius:18px;
  overflow:hidden;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product:hover,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product:focus-within {
  border-color:rgb(0 0 0 / 55%);
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .woocommerce-LoopProduct-link {
  width:100%;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product img {
  width:100%;
  margin:0 0 18px;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .intimatemart-product-brand {
  padding-right:0;
  padding-left:0;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .woocommerce-loop-product__title {
  padding-right:0!important;
  padding-left:0!important;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .intimatemart-product-type {
  padding-right:0;
  padding-left:0;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .price {
  padding-right:0!important;
  padding-left:0!important;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .button {
  width:100%;
  margin:15px 0 0;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .onsale,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-source-badge {
  top:35px;
  left:35px;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) li.product:has(.solere-source-badge) .onsale {
  top:61px;
}
.home .im-product-rail .woocommerce ul.products li.product,
body.single-product .related ul.products li.product {
  border:1px solid rgb(0 0 0 / 20%);
  border-radius:18px;
  overflow:hidden;
}

@media (max-width:780px) {
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product {
    min-height:440px;
    padding:16px;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .intimatemart-product-brand,
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .woocommerce-loop-product__title,
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .intimatemart-product-type,
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .price {
    padding-right:0!important;
    padding-left:0!important;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .button {
    width:100%;
    margin:12px 0 0;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .onsale,
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-source-badge {
    top:24px;
    left:24px;
  }
}

/* Archive hover image and final mobile catalog lock. */
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .woocommerce-LoopProduct-link {
  position:relative;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .im-product-card__hover-image {
  position:absolute;
  z-index:2;
  top:0;
  left:0;
  width:100%!important;
  aspect-ratio:1/1;
  margin:0!important;
  background:#fff;
  object-fit:contain;
  opacity:0;
  pointer-events:none;
  transition:opacity .3s ease,transform .35s ease;
}

/* Supplier product photography should sit on a clean white card surface. */
.home .im-product-rail .woocommerce ul.products li.product img,
.home .im-product-rail .im-product-card__hover-image,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product img,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .im-product-card__hover-image {
  background:#fff!important;
}
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product:hover .im-product-card__hover-image,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product:focus-within .im-product-card__hover-image {
  opacity:1;
  transform:scale(1.025);
}
@media (max-width:780px) {
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .woocommerce-products-header {
    position:static;
    display:block;
    min-height:0!important;
    margin:0 0 20px!important;
    padding:0!important;
    pointer-events:auto;
  }
  body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .im-product-card__hover-image {
    display:none;
  }
}

/* One desktop position and height for every three-line collection heading. */
@media (min-width:781px) {
  .home .im-product-rail .solere-preview__section-head,
  .home .im-product-rail .solere-preview__section-head .im-title-lockup,
  .home .im-bundle-section>header {
    height:104px;
    min-height:104px;
  }
  body.home .im-product-rail .solere-preview__section-head h2,
  body.home .im-bundle-section>header h2 {
    font-size:48px!important;
    line-height:52px!important;
    white-space:nowrap!important;
  }
  body.home .im-product-rail .solere-preview__section-head {
    position:relative!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.home .im-product-rail .solere-preview__section-head .im-title-lockup {
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
  }
  body.home .im-product-rail .solere-preview__section-head .im-title-lockup>* {
    box-sizing:border-box;
    width:100%!important;
  }
  body.home .im-product-rail .solere-preview__section-head>p {
    position:absolute!important;
    right:0!important;
    bottom:0!important;
    grid-column:1!important;
    grid-row:1!important;
    justify-self:end!important;
  }
  body.home .im-home-hero__content,
  body.home .im-bundle-section>header,
  body.home .im-pleasure-finder>.wp-block-group__inner-container,
  body.home .im-explore-banner>.wp-block-cover__inner-container,
  body.home .im-home-about>.wp-block-group__inner-container {
    box-sizing:border-box;
    width:min(1190px,calc(100% - 40px))!important;
    max-width:1190px!important;
    margin-right:auto!important;
    margin-left:auto!important;
    transform:none!important;
  }
  body.home .im-product-rail>.solere-preview__section-head {
    width:100%!important;
    max-width:1240px!important;
  }
  body.home .im-bundle-section>header {
    width:100%!important;
    max-width:1280px!important;
  }
  body.home .im-home-hero,
  body.home .im-pleasure-finder,
  body.home .im-home-about {
    padding-right:0!important;
    padding-left:0!important;
  }
  body.home .im-explore-banner>.wp-block-cover__inner-container {
    padding-right:0!important;
    padding-left:0!important;
  }
}

/* Final editorial rhythm: aligned lower sections and equal 50/50 content. */
body.home .im-explore-banner>.wp-block-cover__inner-container,
body.home .im-home-about>.wp-block-group__inner-container {
  text-align:left!important;
}
body.home .im-explore-banner .im-title-eyebrow,
body.home .im-home-about .im-title-eyebrow {
  width:100%!important;
  max-width:none!important;
  margin:0 0 14px!important;
}
body.home .im-explore-banner h2,
body.home .im-home-about h2 {
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.home .im-explore-banner .im-title-subtitle,
body.home .im-home-about .im-title-subtitle {
  width:100%!important;
  max-width:none!important;
  margin:14px 0 0!important;
  text-align:left!important;
}
body.home .im-explore-banner,
body.home .im-explore-banner .im-title-eyebrow,
body.home .im-explore-banner h2,
body.home .im-explore-banner .im-title-subtitle,
body.home .im-explore-banner p,
body.home .im-explore-banner a {
  color:#fff!important;
}
body.home .im-explore-banner>.wp-block-cover__inner-container>p:last-child {
  width:100%!important;
  max-width:none!important;
  margin:28px 0 0!important;
  text-align:left!important;
}
body.home .im-explore-banner>.wp-block-cover__inner-container>p:last-child a {
  margin:0!important;
}
body.home .im-home-about>.wp-block-group__inner-container>p:not(.im-title-eyebrow):not(:last-child) {
  width:min(760px,100%)!important;
  max-width:760px!important;
  margin:24px 0 0!important;
  color:#444!important;
  text-align:left!important;
}
body.home .im-home-about>.wp-block-group__inner-container>p:last-child {
  width:100%!important;
  max-width:none!important;
  margin:26px 0 0!important;
  text-align:left!important;
}
body.home .solere-editorial-split__content,
body.home .solere-editorial-panel__content {
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  height:650px!important;
  min-height:650px!important;
  padding:76px!important;
  color:#fff!important;
  text-align:left!important;
  transform:none!important;
}
body.home .solere-editorial-split__content>.im-title-eyebrow,
body.home .solere-editorial-panel__content>.im-title-eyebrow {
  width:100%!important;
  max-width:none!important;
  margin:0 0 14px!important;
  color:#fff!important;
}
body.home .solere-editorial-split__content>h2,
body.home .solere-editorial-panel__content>h2 {
  width:100%!important;
  height:96px!important;
  min-height:96px!important;
  max-height:96px!important;
  margin:0!important;
  overflow:hidden;
  color:#fff!important;
  font-size:44px!important;
  line-height:48px!important;
  text-align:left!important;
}
body.home .solere-editorial-split__content>.im-title-subtitle,
body.home .solere-editorial-panel__content>.im-title-subtitle {
  width:100%!important;
  max-width:none!important;
  margin:14px 0 0!important;
  color:#fff!important;
  text-align:left!important;
}
body.home .solere-editorial-split__content>p:not(.im-title-eyebrow):not(:last-child),
body.home .solere-editorial-panel__content>p:not(.im-title-eyebrow):not(:last-child) {
  width:100%!important;
  max-width:none!important;
  margin:24px 0 0!important;
  color:#fff!important;
  font-size:.92rem!important;
  line-height:1.7!important;
  text-align:left!important;
}
body.home .solere-editorial-split__content>p:last-child,
body.home .solere-editorial-panel__content>p:last-child {
  width:100%!important;
  max-width:none!important;
  margin:24px 0 0!important;
  color:#fff!important;
  text-align:left!important;
}
body.home .solere-editorial-split__content>p:last-child a,
body.home .solere-editorial-panel__content>p:last-child a {
  display:inline-block!important;
  margin:0!important;
  padding-bottom:.35rem!important;
  border-bottom:1px solid #fff!important;
  color:#fff!important;
}

@media (max-width:780px) {
  body.home .solere-editorial-split__content,
  body.home .solere-editorial-panel__content {
    height:auto!important;
    min-height:74svh!important;
    padding:64px 22px!important;
  }
  body.home .solere-editorial-split__content>h2,
  body.home .solere-editorial-panel__content>h2 {
    height:auto!important;
    min-height:86px!important;
    max-height:none!important;
    font-size:40px!important;
    line-height:43px!important;
  }
}

/* Fixed card metadata rows keep every Add to Cart button on one baseline. */
.home .im-product-rail .woocommerce ul.products li.product .intimatemart-product-brand {
  display:block;
  height:16px;
  min-height:16px;
  line-height:16px;
  white-space:nowrap;
  text-overflow:ellipsis;
  overflow:hidden;
}
.home .im-product-rail .woocommerce ul.products li.product .woocommerce-loop-product__title {
  display:-webkit-box!important;
  height:43px;
  min-height:43px!important;
  max-height:43px;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

/* Final dark-band color overrides follow all shared title rules. */
.home .im-product-rail--dark { background:#111; color:#fff; }
.home .im-product-rail--dark .solere-preview__section-head,
.home .im-product-rail--dark .solere-preview__section-head h2,
.home .im-product-rail--dark .solere-preview__section-head .im-title-subtitle { color:#fff!important; }
.home .im-product-rail--dark .solere-preview__section-head a { border-bottom-color:#fff; color:#fff; }
.home .im-product-rail--dark .im-product-carousel__button { background:rgb(255 255 255 / 92%); box-shadow:0 1px 7px rgb(0 0 0 / 36%); color:#111; opacity:.9; }
.home .im-product-rail--dark .woocommerce ul.products li.product { color:#111; }

/* Shared three-line section lockup, positioned in the right content column. */
.home .im-title-eyebrow,
.home .im-product-rail .solere-preview__section-head .im-title-eyebrow,
.home .im-bundle-section>header .im-title-eyebrow {
  margin:0 0 12px!important;
  padding:0!important;
  color:#6d6866;
  font:900 11px/13px Arial,sans-serif!important;
  letter-spacing:4px!important;
  text-align:left!important;
  text-transform:uppercase!important;
}
.home .im-home-hero .im-title-eyebrow,
.home .im-product-rail--dark .im-title-eyebrow,
.home .im-bundle-section .im-title-eyebrow,
.home .im-pleasure-finder .im-title-eyebrow,
.home .solere-editorial-split .im-title-eyebrow,
.home .im-explore-banner .im-title-eyebrow { color:#fff!important; }
.home .im-product-rail .solere-preview__section-head {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,620px);
  align-items:end;
  gap:20px;
}
.home .im-product-rail .solere-preview__section-head .im-title-lockup { grid-column:2; width:100%; margin:0; }
.home .im-product-rail .solere-preview__section-head>p { grid-column:1; grid-row:1; align-self:end; justify-self:start; margin:0!important; }
.home .im-bundle-section>header {
  box-sizing:border-box;
  width:min(620px,calc(100% - 40px));
  max-width:none;
  margin-right:max(20px,calc((100vw - 1240px)/2));
  margin-left:auto;
}
.home .im-home-hero::before { background:linear-gradient(270deg,rgb(0 0 0 / 54%) 0%,rgb(0 0 0 / 19%) 48%,transparent 75%); }
.home .im-home-hero__content { margin-left:auto; }
.home .im-pleasure-finder>.wp-block-group__inner-container,
.home .im-explore-banner>.wp-block-cover__inner-container,
.home .im-home-about>.wp-block-group__inner-container {
  box-sizing:border-box;
  width:min(620px,calc(100% - 40px));
  max-width:none;
  margin-right:max(20px,calc((100vw - 1240px)/2));
  margin-left:auto;
  text-align:left;
}
.home .im-pleasure-finder .im-title-subtitle,
.home .im-explore-banner .im-title-subtitle,
.home .im-home-about .im-title-subtitle { text-align:left!important; }

@media (max-width:780px) {
  .home .im-product-rail .solere-preview__section-head { grid-template-columns:1fr; gap:16px; }
  .home .im-product-rail .solere-preview__section-head .im-title-lockup { grid-column:1; grid-row:1; }
  .home .im-product-rail .solere-preview__section-head>p { grid-column:1; grid-row:2; }
  .home .im-bundle-section>header,
  .home .im-pleasure-finder>.wp-block-group__inner-container,
  .home .im-explore-banner>.wp-block-cover__inner-container,
  .home .im-home-about>.wp-block-group__inner-container { width:calc(100% - 32px); margin-right:16px; margin-left:16px; }
  .home .im-home-hero::before { background:linear-gradient(0deg,rgb(0 0 0 / 62%) 0%,rgb(0 0 0 / 15%) 62%,transparent 100%); }
  .home .im-home-hero__content { margin-left:0; }
}

/* Black collection bands with white merchandise cards. */
.home .im-product-rail--dark { background:#111; color:#fff; }
.home .im-product-rail--dark .solere-preview__section-head,
.home .im-product-rail--dark .solere-preview__section-head h2,
.home .im-product-rail--dark .solere-preview__section-head .im-title-subtitle { color:#fff!important; }
.home .im-product-rail--dark .solere-preview__section-head a { border-bottom-color:#fff; color:#fff; }
.home .im-product-rail--dark .im-product-carousel__button { background:rgb(255 255 255 / 92%); box-shadow:0 1px 7px rgb(0 0 0 / 36%); color:#111; opacity:.9; }
.home .im-product-rail--dark .woocommerce ul.products li.product { color:#111; }
@media (orientation:landscape) and (max-height:600px) {
  .site-header { height:56px; }
  .single-product .site-content { padding-top:56px; }
  .solere-site-header { position:relative; grid-template-columns:40px 1fr auto; height:56px; padding:0 16px; gap:.65rem; }
  .solere-site-header__logo { position:absolute; left:50%; justify-self:auto; font-size:1.34rem; transform:translateX(-50%); }
  .solere-site-header__nav,.solere-site-header__login { display:none; }
  .solere-site-header__mobile-nav { position:relative; display:block; }
  .solere-site-header__mobile-nav summary { display:flex; flex-direction:column; justify-content:center; width:24px; height:24px; gap:4px; cursor:pointer; list-style:none; }
  .solere-site-header__mobile-nav summary::-webkit-details-marker { display:none; }
  .solere-site-header__mobile-nav summary span { display:block; width:21px; height:1px; background:#111; transition:transform .2s ease,opacity .2s ease; }
  .solere-site-header__mobile-nav[open] summary { position:relative; z-index:100001; }
  .solere-site-header__mobile-nav[open] summary span:first-child { transform:translateY(5px) rotate(45deg); }
  .solere-site-header__mobile-nav[open] summary span:nth-child(2) { opacity:0; }
  .solere-site-header__mobile-nav[open] summary span:last-child { transform:translateY(-5px) rotate(-45deg); }
  .solere-site-header__mobile-nav nav { position:fixed; z-index:100000; inset:56px 0 0; display:flex; flex-direction:column; padding:1rem 22px 2rem; background:#fff; overflow-y:auto; }
  .solere-site-header__mobile-nav nav a { padding:.7rem 0; border-bottom:1px solid #ddd; font-size:.88rem; font-weight:400; letter-spacing:.02em; text-transform:uppercase; }
  .solere-site-header__tools { gap:1rem; }
  .home .solere-shop-categories h3 { font-size:.72rem!important; line-height:1.15!important; white-space:nowrap; }
  .home .solere-shop-categories h3 a::before { font-size:.72rem; }
  .home .solere-preview__featured .solere-preview__feature>h3 { font-size:.72rem!important; line-height:1.15!important; white-space:nowrap; }
  .home .solere-preview__featured .solere-preview__feature>h3 a::before { font-size:.72rem; }
}
.solere-site-header__mobile-nav summary { width:30px; padding:0; gap:7px; overflow:visible; }
.solere-site-header__mobile-nav summary span { width:26px; height:1px; transform:scaleY(.65); transform-origin:center; }
.solere-site-header__mobile-nav summary span:nth-child(2) { display:none; }
.solere-site-header__mobile-nav[open] summary span:first-child { transform:translateY(4px) rotate(45deg) scale(.9,.65); }
.solere-site-header__mobile-nav[open] summary span:last-child { transform:translateY(-4px) rotate(-45deg) scale(.9,.65); }
.solere-menu-is-opening .solere-site-header__mobile-nav summary span:first-child { transform:translateY(4px) rotate(45deg) scale(.9,.65); }
.solere-menu-is-opening .solere-site-header__mobile-nav summary span:last-child { transform:translateY(-4px) rotate(-45deg) scale(.9,.65); }
@media (prefers-reduced-motion:reduce) { .home .solere-editorial-parallax { background-attachment:scroll; } .home .im-home-hero__slides > span { animation:none; opacity:0; } .home .im-home-hero__slides > span:first-child { opacity:1; } }

/* IntimateMart content adaptations on the authoritative SOLÉRE design system. */
.intimatemart-wordmark { display:inline-flex!important; align-items:center; color:#050505!important; font-family:'IntimateMart Brand',Arial,sans-serif!important; font-size:20px!important; font-weight:800!important; font-variation-settings:'wght' 800; letter-spacing:0!important; line-height:1!important; white-space:nowrap; }
.intimatemart-wordmark :where(span,strong) { font-family:'IntimateMart Brand',Arial,sans-serif!important; }
.intimatemart-wordmark__text { display:block; font:inherit!important; letter-spacing:inherit!important; line-height:1!important; }
.intimatemart-wordmark__mark { display:block; flex:0 0 auto; width:1.98em; height:1em; margin:0 .16em 0 .12em; overflow:visible; }
.intimatemart-wordmark__x { fill:#ccaffe; }
.intimatemart-wordmark__heart { fill:currentColor; }
.solere-footer a.solere-footer__logo.intimatemart-wordmark { font-size:25.86px!important; }
.solere-site-header__nav { gap:clamp(.5rem,.85vw,.9rem); }
.solere-site-header__nav a { font-size:clamp(.54rem,.58vw,.66rem); }
.solere-drill-menu__top strong { font-size:1.05rem; letter-spacing:.08em; white-space:nowrap; }
.intimatemart-product-brand { display:block; margin:0 0 .28rem; color:#666; font-size:.62rem; letter-spacing:.08em; text-transform:uppercase; }
.intimatemart-product-brand--single { margin-bottom:.75rem; }
.solere-catalog-filters__panel { grid-template-columns:minmax(0,1.25fr) minmax(0,1.25fr) max-content auto; }
.home .solere-preview__feature--coats>h3 a::before { content:'VIBRATORS'; }
.home .solere-preview__feature--dresses>h3 a::before { content:'COUPLES TOYS'; }
.home .solere-preview__feature--trousers>h3 a::before { content:'LINGERIE'; }
.home .solere-editorial-split__content { background-position:center; background-size:cover; }
.home .solere-shop-categories h3 a { font-size:1.058rem; }
.home .solere-shop-categories h3 a::before { content:none!important; }
.home .solere-preview__section .woocommerce ul.products li.product { container-type:inline-size; }
.home .solere-preview__section .woocommerce ul.products li.product .button { position:absolute; top:calc(133.333cqw - 60px); right:12px; left:12px; display:block; width:auto; margin:0; padding:1rem; border-radius:0; background:#fff; color:#111; font-size:.7rem; letter-spacing:.04em; text-align:center; text-transform:uppercase; opacity:0; transition:opacity .2s ease,background-color .2s ease,color .2s ease; }
.home .solere-preview__section .woocommerce ul.products li.product:hover .button { opacity:1; }
.home .solere-preview__section .woocommerce ul.products li.product .button:hover { background:#222; color:#fff; }
:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product img,.search-results ul.products li.product img,.single-product .related ul.products li.product img { background:#fff; object-fit:contain; }
.single-product div.product .woocommerce-product-gallery__image img { object-fit:contain; }
.single-product .solere-product-panel .intimatemart-product-brand { order:-1; }
.single-product .solere-made-to-order-notice { margin-top:.25rem; }
.single-product .solere-product-panel > .ppcp-messages { margin-top:18px!important; }
body .solere-login-drawer.is-open>.solere-login-drawer__panel { transform:translateX(0)!important; }

@media (max-width:780px) {
  .solere-site-header__logo.intimatemart-wordmark { font-size:clamp(18px,5vw,20px)!important; }
  .solere-footer a.solere-footer__logo.intimatemart-wordmark { font-size:22.33px!important; }
  .solere-catalog-filters__panel { grid-template-columns:1fr 1fr; }
  .solere-filter-values { display:grid; grid-template-columns:1fr; }
  .solere-filter-values a,.solere-stock-filter { width:100%; min-width:0; white-space:normal; }
  :is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) ul.products li.product .button,.search-results ul.products li.product .button { position:static; display:block!important; width:calc(100% - 16px); max-width:none; margin:.7rem 8px 0; padding:.72rem .4rem; border:1px solid #222; background:#fff; color:#111; opacity:1; }
  .home .solere-preview__section .woocommerce ul.products li.product .button { position:static; display:block; width:calc(100% - 8px); margin:.65rem 4px 0; padding:.72rem .35rem; border:1px solid #222; opacity:1; }
}

@media (max-width:340px) {
  .solere-site-header__logo.intimatemart-wordmark { position:static; grid-column:2; left:auto; justify-self:center; transform:none; }
}

/* Global multi-option purchase layout: Size and Quantity together, secondary option below. */
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) { display:grid!important; grid-template-columns:90px 150px 156px; grid-template-rows:auto 50px auto; column-gap:12px; row-gap:0; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) table.variations,.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) table.variations tbody,.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) table.variations tr { display:contents!important; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) tr:has(select[name*="size"]) th.label { grid-column:1; grid-row:1; align-self:end; margin:0 0 .7rem; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) tr:has(select[name*="size"]) td.value { grid-column:1; grid-row:2; width:90px; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) tr:has(select[name*="size"]) select { width:90px!important; max-width:90px!important; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) tr:not(:has(select[name*="size"])) th.label { position:static; grid-column:3; grid-row:1; align-self:end; margin:0 0 .7rem; white-space:nowrap; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) tr:not(:has(select[name*="size"])) td.value { position:static; grid-column:3; grid-row:2; align-self:start; width:156px; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) tr:not(:has(select[name*="size"])) select { width:156px!important; max-width:156px!important; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) .single_variation_wrap,.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) .woocommerce-variation-add-to-cart { display:contents!important; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) .woocommerce-variation { display:none!important; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) .woocommerce-variation-add-to-cart::before { grid-column:2; grid-row:1; align-self:end; margin:0 0 .7rem; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) .quantity { grid-column:2; grid-row:2; align-self:start; margin:0; }
.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) .single_add_to_cart_button { grid-column:1/-1; grid-row:3; width:100%; margin-top:14px; }
@media (max-width:780px) {
  .single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) { grid-template-columns:minmax(70px,1fr) 126px minmax(105px,1.35fr); grid-template-rows:auto 46px auto; column-gap:8px; }
  .single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) tr:has(select[name*="size"]) td.value,.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) tr:has(select[name*="size"]) select { width:100%!important; max-width:none!important; }
  .single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) tr:not(:has(select[name*="size"])) td.value,.single-product div.product form.variations_form:has(table.variations tr:nth-child(2)):has(select[name*="size"]) tr:not(:has(select[name*="size"])) select { width:100%!important; max-width:none!important; }
}

/* Pure Romance-inspired homepage rhythm, retaining IntimateMart branding and Arial. */
.home .im-home-hero { display:flex; align-items:flex-end; box-sizing:border-box; height:clamp(540px,47vw,660px)!important; min-height:540px!important; padding:clamp(34px,5vw,70px); background-position:center 42%; isolation:isolate; }
.home .im-home-hero::before { position:absolute; z-index:1; inset:0; background:linear-gradient(90deg,rgb(0 0 0 / 54%) 0%,rgb(0 0 0 / 19%) 48%,transparent 75%); content:''; pointer-events:none; }
.home .im-home-hero__content { position:relative; z-index:2; width:min(580px,70vw); color:#fff; }
.home .im-home-hero__content p { margin:0 0 13px; color:#fff; font:600 .68rem/1 Arial,sans-serif; letter-spacing:.16em; }
.home .im-home-hero__content h1 { margin:0 0 26px; color:#fff; font:500 clamp(2.2rem,4.4vw,4.45rem)/.97 Arial,sans-serif; letter-spacing:-.045em; text-transform:uppercase; }
.home .im-home-hero__content a { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 26px; border:1px solid #fff; border-radius:6px; background:#fff; color:#111; font:600 .68rem/1 Arial,sans-serif; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; transition:background .2s,color .2s; }
.home .im-home-hero__content a:hover { background:transparent; color:#fff; }
.home .im-home-trust { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); min-height:72px; border-bottom:1px solid #e5e1df; background:#fff; }
.home .im-home-trust>div { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:14px 24px; border-right:1px solid #e5e1df; text-align:center; }
.home .im-home-trust>div:last-child { border-right:0; }
.home .im-home-trust strong { margin-bottom:5px; font:600 .66rem/1 Arial,sans-serif; letter-spacing:.09em; }
.home .im-home-trust span { color:#555; font:400 .7rem/1.35 Arial,sans-serif; }
.home .im-product-rail { box-sizing:border-box; padding:72px 30px 76px; }
.home .im-product-rail--soft { background:#faf7f5; }
.home .im-product-rail .solere-preview__section-head { display:flex; align-items:flex-end; justify-content:space-between; margin:0 0 24px; }
.home .im-product-rail .solere-preview__section-head h2 { color:#111; font:600 clamp(1.55rem,2.7vw,2.35rem)/1 Arial,sans-serif!important; letter-spacing:-.035em; text-transform:none; }
.home .im-product-rail .solere-preview__section-head p { margin:0!important; }
.home .im-product-rail .solere-preview__section-head a { padding-bottom:4px; border-bottom:1px solid #111; color:#111; font:600 .65rem/1 Arial,sans-serif; letter-spacing:.08em; text-decoration:none; text-transform:uppercase; }
.home .im-product-rail .woocommerce ul.products { padding-bottom:16px; gap:8px; }
.home .im-product-rail .woocommerce ul.products li.product { flex-basis:calc((100% - 32px)/5); padding-bottom:4px; background:#fff; }
.home .im-product-rail .woocommerce ul.products li.product img { display:block; width:100%; aspect-ratio:1/1; margin:0!important; background:#f7f7f7; object-fit:contain; }
.home .im-product-rail .woocommerce ul.products li.product .onsale { top:8px; right:auto; bottom:auto; left:8px; }
.home .im-product-rail .woocommerce ul.products li.product .woocommerce-loop-product__title { min-height:3.1em; padding:13px 10px 0!important; font-size:.78rem!important; line-height:1.38!important; }
.home .im-product-rail .woocommerce ul.products li.product .intimatemart-product-brand { padding:0 10px; }
.home .im-product-rail .woocommerce ul.products li.product .price { min-height:1.5em; padding:0 10px!important; font-size:.72rem!important; }
.home .im-product-rail .woocommerce ul.products li.product .button { position:static!important; display:flex!important; align-items:center; justify-content:center; width:calc(100% - 20px)!important; min-height:42px; margin:13px 10px 8px!important; padding:0 8px!important; border:1px solid #111; background:#fff; color:#111; font-size:.64rem; opacity:1!important; }
.home .im-product-rail .woocommerce ul.products li.product .button:hover { background:#111; color:#fff; }
.home .im-top-categories { margin:0!important; padding:72px 30px 80px!important; }
.home .im-top-categories>.wp-block-group__inner-container>h2 { margin:0 0 24px!important; font:600 clamp(1.55rem,2.7vw,2.35rem)/1 Arial,sans-serif!important; letter-spacing:-.035em!important; text-align:left; text-transform:none; }
.home .im-top-categories .wp-block-columns { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.home .im-top-categories .solere-preview__feature>.wp-block-spacer { aspect-ratio:4/5; background-size:cover; }
.home .im-top-categories .solere-preview__feature>h3 { margin-top:14px!important; font-size:.78rem!important; }
.home .im-top-categories .solere-preview__feature>h3 a { color:#111; font-size:.78rem!important; font-weight:600; letter-spacing:.05em; text-transform:uppercase; }
.home .im-top-categories .solere-preview__feature>h3 a::before { content:none!important; }
.home .im-pleasure-finder { min-height:440px; padding:72px 24px; background-attachment:scroll; }
.home .im-pleasure-finder>.wp-block-group__inner-container { max-width:700px; }
.home .im-pleasure-finder h2 { margin:0 0 16px; font:500 clamp(2rem,4vw,3.8rem)/1 Arial,sans-serif!important; letter-spacing:-.04em; }
.home .im-pleasure-finder p { max-width:620px; margin:0 auto 17px; font:400 .9rem/1.65 Arial,sans-serif; }
.home .im-pleasure-finder p:first-child { margin-bottom:12px; font-size:.67rem; font-weight:600; letter-spacing:.13em; }
.home .im-pleasure-finder p:last-child { margin-bottom:0; }
.home .solere-editorial-split { display:flex!important; flex-direction:row; min-height:650px; }
.home .solere-editorial-split>.wp-block-column { flex:1 1 50%; width:50%; }
.home .solere-editorial-split>.wp-block-column,.home .solere-editorial-split__content { min-height:650px!important; }
.home .solere-editorial-panel__content { min-height:650px; }
.home .solere-editorial-split__content h2,.home .solere-editorial-panel__content h2 { max-width:610px; margin-right:auto!important; margin-left:auto!important; font-size:clamp(1.8rem,3vw,3.3rem)!important; letter-spacing:-.035em!important; }
.home .im-explore-banner { display:flex; align-items:center; min-height:650px!important; }
.home .im-explore-banner>.wp-block-cover__inner-container { box-sizing:border-box; width:100%; max-width:720px; margin:0 auto; padding:70px 24px; text-align:center; }
.home .im-explore-banner h2 { font-size:clamp(2rem,4vw,4rem)!important; }
.home .im-home-about { min-height:390px; padding:76px 24px; background:#f7f2ef; }
.home .im-home-about>.wp-block-group__inner-container { max-width:850px; }
.home .im-home-about h2 { font:600 clamp(1.7rem,3vw,2.8rem)/1.05 Arial,sans-serif!important; letter-spacing:-.035em; }
.home .im-home-about p { max-width:760px; }

@media (max-width:780px) {
  .home .im-home-hero { align-items:flex-end; height:76svh!important; min-height:560px!important; padding:38px 20px; background-image:url('assets/campaign/hero-slider-v2/hero-01-mobile.jpg'); background-position:center!important; }
  .home .im-home-hero__slides > span { background-position:center; }
  .home .im-home-hero__slides > span:nth-child(1) { background-image:url('assets/campaign/hero-slider-v2/hero-01-mobile.jpg'); }
  .home .im-home-hero__slides > span:nth-child(2) { background-image:url('assets/campaign/hero-slider-v2/hero-02-mobile.jpg'); }
  .home .im-home-hero__slides > span:nth-child(3) { background-image:url('assets/campaign/hero-slider-v2/hero-03-mobile.jpg'); }
  .home .im-home-hero__slides > span:nth-child(4) { background-image:url('assets/campaign/hero-slider-v2/hero-04-mobile.jpg'); }
  .home .im-home-hero::before { background:linear-gradient(0deg,rgb(0 0 0 / 62%) 0%,rgb(0 0 0 / 15%) 62%,transparent 100%); }
  .home .im-home-hero__content { width:100%; }
  .home .im-home-hero__content h1 { max-width:330px; font-size:2.35rem; }
  .home .im-home-trust { grid-template-columns:1fr; }
  .home .im-home-trust>div { min-height:58px; border-right:0; border-bottom:1px solid #e5e1df; }
  .home .im-home-trust>div:last-child { border-bottom:0; }
  .home .im-product-rail { padding:52px 16px 58px; }
  .home .im-product-rail .solere-preview__section-head { top:0; margin-bottom:18px; }
  .home .im-product-rail .solere-preview__section-head h2 { font-size:1.45rem!important; }
  .home .im-product-rail .woocommerce ul.products li.product { flex:0 0 76vw; }
  .home .im-top-categories { padding:52px 16px 58px!important; }
  .home .im-top-categories>.wp-block-group__inner-container>h2 { top:0; margin-bottom:18px!important; font-size:1.45rem!important; }
  .home .im-top-categories .wp-block-columns { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:22px 8px!important; }
  .home .im-top-categories .solere-preview__feature { width:100%!important; }
  .home .im-top-categories .solere-preview__feature>h3 { margin-top:10px!important; }
  .home .im-pleasure-finder { min-height:500px; padding:64px 22px; }
  .home .solere-editorial-split { flex-direction:column; }
  .home .solere-editorial-split>.wp-block-column { flex:none; width:100%; }
  .home .solere-editorial-split>.wp-block-column,.home .solere-editorial-split__content,.home .solere-editorial-panel__content { min-height:74svh!important; }
  .home .im-explore-banner { min-height:76svh!important; }
  .home .im-home-about { min-height:0; padding:60px 22px; text-align:left; }
  .home .im-home-about h2 { font-size:1.75rem!important; }
}

/* Centered, scroll-forward product cards with supplier alternate-image hover. */
.home .im-product-rail>.solere-preview__section-head,.home .im-product-rail>.woocommerce { box-sizing:border-box; width:100%; max-width:1180px; margin-right:auto!important; margin-left:auto!important; }
.home .im-product-rail .woocommerce ul.products li.product { position:relative; flex:0 0 218px!important; width:218px!important; border:1px solid #dedbd8; background:#fff; box-shadow:0 1px 0 rgb(0 0 0 / 3%); overflow:hidden; transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease; }
.home .im-product-rail .woocommerce ul.products li.product:hover,.home .im-product-rail .woocommerce ul.products li.product:focus-within { border-color:#aaa5a1; box-shadow:0 12px 28px rgb(35 25 20 / 12%); transform:translateY(-4px); }
.home .im-product-rail .woocommerce-loop-product__link { position:relative; display:block; }
.home .im-product-rail .woocommerce-loop-product__link>img:not(.im-product-card__hover-image) { transition:opacity .3s ease,transform .45s ease; }
.home .im-product-rail .im-product-card__hover-image { position:absolute; z-index:2; top:0; left:0; display:block; width:100%!important; height:auto; aspect-ratio:1/1; margin:0!important; background:#f7f7f7; object-fit:contain; opacity:0; pointer-events:none; transition:opacity .3s ease,transform .45s ease; }
.home .im-product-rail li.product:hover .im-product-card__hover-image,.home .im-product-rail li.product:focus-within .im-product-card__hover-image { opacity:1; transform:scale(1.025); }
.home .im-product-rail li.product:hover .woocommerce-loop-product__link>img:not(.im-product-card__hover-image),.home .im-product-rail li.product:focus-within .woocommerce-loop-product__link>img:not(.im-product-card__hover-image) { transform:scale(1.025); }
.home .im-product-rail .woocommerce ul.products li.product .button { border-color:#111; background:#111; color:#fff; }
.home .im-product-rail .woocommerce ul.products li.product .button:hover,.home .im-product-rail .woocommerce ul.products li.product .button:focus { background:#fff; color:#111; }
.home .im-top-categories>.wp-block-group__inner-container { width:100%; max-width:1180px; margin:0 auto; }

@media (max-width:780px) {
  .home .im-product-rail>.solere-preview__section-head,.home .im-product-rail>.woocommerce { max-width:none; }
  .home .im-product-rail .woocommerce ul.products li.product { flex-basis:76vw!important; width:76vw!important; }
  .home .im-product-rail .woocommerce ul.products li.product:hover,.home .im-product-rail .woocommerce ul.products li.product:focus-within { transform:none; }
}

/* Exact reference carousel geometry: 1240 rail, four 292 cards, 240 media/button. */
.home .im-product-rail { padding-right:20px; padding-left:20px; }
.home .im-product-rail>.solere-preview__section-head,.home .im-product-rail>.woocommerce { max-width:1240px; }
.home .im-product-rail .woocommerce ul.products { gap:20px; }
.home .im-product-rail .woocommerce ul.products li.product { display:flex!important; flex:0 0 292px!important; flex-direction:column; width:292px!important; min-height:573px; padding:0; border:1px solid rgb(0 0 0 / 20%); box-shadow:none; }
.home .im-product-rail .woocommerce ul.products li.product:hover,.home .im-product-rail .woocommerce ul.products li.product:focus-within { border-color:rgb(0 0 0 / 55%); box-shadow:0 8px 22px rgb(35 25 20 / 10%); transform:translateY(-2px); }
.home .im-product-rail .woocommerce-loop-product__link { display:flex; flex:1 1 auto; flex-direction:column; width:100%; }
.home .im-product-rail .woocommerce-loop-product__link>img:not(.im-product-card__hover-image) { width:240px!important; height:240px!important; margin:25px auto 0!important; aspect-ratio:1/1; }
.home .im-product-rail .im-product-card__hover-image { top:25px; left:25px; width:240px!important; height:240px!important; }
.home .im-product-rail .woocommerce ul.products li.product .onsale { top:32px; left:32px; }
.home .im-product-rail .woocommerce ul.products li.product .intimatemart-product-brand { box-sizing:border-box; width:240px; margin:18px auto 4px; padding:0; }
.home .im-product-rail .woocommerce ul.products li.product .woocommerce-loop-product__title { box-sizing:border-box; width:240px; min-height:3.1em; margin-right:auto!important; margin-left:auto!important; padding:0!important; font-size:.86rem!important; line-height:1.4!important; }
.home .im-product-rail .woocommerce ul.products li.product .price { box-sizing:border-box; width:240px; min-height:1.5em; margin:8px auto 0!important; padding:0!important; font-size:.78rem!important; }
.home .im-product-rail .woocommerce ul.products li.product .button { flex:0 0 auto; width:240px!important; min-height:49px; margin:18px auto 25px!important; padding:0 10px!important; border:1px solid rgb(0 0 0 / 55%); background:transparent; color:#111; font-size:.8rem; font-weight:400; }
.home .im-product-rail .woocommerce ul.products li.product .button:hover,.home .im-product-rail .woocommerce ul.products li.product .button:focus { background:#111; color:#fff; }

@media (max-width:780px) {
  .home .im-product-rail { padding-right:16px; padding-left:16px; }
  .home .im-product-rail .woocommerce ul.products { gap:12px; }
  .home .im-product-rail .woocommerce ul.products li.product { flex-basis:76vw!important; width:76vw!important; min-height:540px; }
  .home .im-product-rail .woocommerce-loop-product__link>img:not(.im-product-card__hover-image) { width:calc(100% - 32px)!important; height:auto!important; margin:16px auto 0!important; }
  .home .im-product-rail .im-product-card__hover-image { top:16px; left:16px; width:calc(100% - 32px)!important; height:auto!important; }
  .home .im-product-rail .woocommerce ul.products li.product .intimatemart-product-brand,.home .im-product-rail .woocommerce ul.products li.product .woocommerce-loop-product__title,.home .im-product-rail .woocommerce ul.products li.product .price,.home .im-product-rail .woocommerce ul.products li.product .button { width:calc(100% - 32px)!important; }
  .home .im-product-rail .woocommerce ul.products li.product .onsale { top:22px; left:22px; }
}

/* Reference carousel controls: hidden scrollbar and 44px centered caret buttons. */
.home .im-product-carousel { position:relative; }
.home .im-product-rail .solere-preview__section-head h2 { font-size:32px!important; line-height:1.2!important; letter-spacing:.6px; }
.home .im-product-rail .woocommerce ul.products { padding-bottom:20px; scrollbar-width:none; }
.home .im-product-rail .woocommerce ul.products::-webkit-scrollbar { display:none; }
.home .im-product-rail .woocommerce ul.products li.product .button { font-size:15px; }
.home .im-product-rail .woocommerce ul.products li.product { min-height:0; }
.home .im-product-rail .woocommerce-loop-product__link { flex:0 0 auto; }
.home .im-product-rail .woocommerce ul.products li.product .intimatemart-product-brand,
.home .im-product-rail .woocommerce ul.products li.product .woocommerce-loop-product__title,
.home .im-product-rail .woocommerce ul.products li.product .price { text-align:left!important; }
.home .im-product-carousel__button {
  position:absolute;
  z-index:6;
  top:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  min-width:44px;
  min-height:44px;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  color:#7a7a7a;
  opacity:.6;
  cursor:pointer;
  transform:translateY(-50%);
  transition:color .2s ease,opacity .2s ease;
}
.home .im-product-carousel__button:hover,
.home .im-product-carousel__button:focus-visible { color:#111; opacity:1; outline:1px solid currentColor; outline-offset:2px; }
.home .im-product-carousel__button[hidden] { display:none!important; }
.home .im-product-carousel__button--previous { left:-66px; }
.home .im-product-carousel__button--next { right:-66px; }
.home .im-product-carousel__button svg { width:26px; height:24px; }
.home .im-product-carousel__button--previous svg { transform:rotate(90deg); }
.home .im-product-carousel__button--next svg { transform:rotate(-90deg); }

@media (max-width:1399px) {
  .home .im-product-carousel__button { background:rgb(255 255 255 / 88%); box-shadow:0 1px 5px rgb(0 0 0 / 16%); }
  .home .im-product-carousel__button--previous { left:8px; }
  .home .im-product-carousel__button--next { right:8px; }
}

@media (max-width:780px) {
  .home .im-product-rail .solere-preview__section-head h2 { font-size:1.45rem!important; letter-spacing:-.02em; }
  .home .im-product-carousel__button { display:none!important; }
}

/* Expanded homepage merchandising and LELO-inspired Arial heading hierarchy. */
.home .im-product-rail .solere-preview__section-head { align-items:flex-end; }
.home .im-product-rail .solere-preview__section-head h2 {
  margin:0;
  font:400 clamp(2rem,3.1vw,2.75rem)/.98 Arial,sans-serif!important;
  letter-spacing:-.045em!important;
  text-align:left;
  text-transform:none;
}
.home .im-product-rail .solere-preview__section-head a { font-size:.72rem; font-weight:700; letter-spacing:.12em; }
.home .im-product-panel[hidden] { display:none!important; }
.home .im-product-panel>.woocommerce { box-sizing:border-box; width:100%; max-width:1240px; margin-right:auto!important; margin-left:auto!important; }
.home .im-product-tabs__list {
  display:flex;
  align-items:center;
  width:100%;
  max-width:1240px;
  margin:0 auto 28px;
  border-bottom:1px solid #d9d5d2;
  gap:clamp(18px,3vw,42px);
  overflow-x:auto;
  scrollbar-width:none;
}
.home .im-product-tabs__list::-webkit-scrollbar { display:none; }
.home .im-product-tabs__list button {
  position:relative;
  flex:0 0 auto;
  min-height:48px;
  padding:0 0 2px;
  border:0;
  background:transparent;
  color:#6f6b69;
  font:700 .78rem/1 Arial,sans-serif!important;
  letter-spacing:.11em;
  text-transform:uppercase;
  cursor:pointer;
}
.home .im-product-tabs__list button::after { position:absolute; right:0; bottom:-1px; left:0; height:2px; background:#111; content:''; opacity:0; transform:scaleX(.5); transition:opacity .2s ease,transform .2s ease; }
.home .im-product-tabs__list button[aria-selected="true"] { color:#111; }
.home .im-product-tabs__list button[aria-selected="true"]::after { opacity:1; transform:scaleX(1); }
.home .im-product-tabs__list button:focus-visible { outline:1px solid #111; outline-offset:4px; }

.home .im-bundle-section { padding:76px 0 82px; background:#171314; color:#fff; overflow:hidden; }
.home .im-bundle-section>header { box-sizing:border-box; width:100%; max-width:1240px; margin:0 auto 30px; padding:0; }
.home .im-bundle-section>header p { margin:0 0 12px; color:#d9c8c2; font:700 .7rem/1 Arial,sans-serif!important; letter-spacing:.25em; }
.home .im-bundle-section>header h2 { margin:0; color:#fff; font:400 clamp(2.4rem,5vw,4.6rem)/.9 Arial,sans-serif!important; letter-spacing:-.055em; text-align:left; text-transform:none; }
.home .im-bundle-carousel { position:relative; width:100%; }
.home .im-bundle-carousel__track { display:flex; width:100%; padding:0 0 20px; gap:16px; overflow-x:auto; scroll-behavior:smooth; scroll-snap-type:x mandatory; scrollbar-width:none; }
.home .im-bundle-carousel__track::-webkit-scrollbar { display:none; }
.home .im-bundle-card { position:relative; flex:0 0 calc((100vw - 48px)/4); min-width:0; aspect-ratio:468/610; margin:0; background:#292124; scroll-snap-align:start; overflow:hidden; }
.home .im-bundle-card>a { position:absolute; inset:0; display:block; color:#fff; text-decoration:none; }
.home .im-bundle-card img { width:100%; height:100%; margin:0; object-fit:cover; transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .35s ease; }
.home .im-bundle-card>a::after { position:absolute; inset:22% 0 0; background:linear-gradient(0deg,rgb(9 5 6 / 94%) 0%,rgb(9 5 6 / 52%) 52%,transparent 100%); content:''; }
.home .im-bundle-card>a>div { position:absolute; z-index:2; right:0; bottom:0; left:0; display:flex; flex-direction:column; align-items:flex-start; padding:clamp(22px,2.4vw,36px); }
.home .im-bundle-card p { margin:0 0 10px; padding:5px 9px; background:#a51f3c; color:#fff; font:700 .62rem/1 Arial,sans-serif!important; letter-spacing:.22em; }
.home .im-bundle-card h3 { margin:0 0 10px; color:#fff; font:800 clamp(1.55rem,2.25vw,2.25rem)/.95 Arial,sans-serif!important; letter-spacing:-.04em; text-align:left; text-transform:none; }
.home .im-bundle-card span { display:block; max-width:275px; color:#fff; font-size:.78rem; font-weight:500; line-height:1.45; }
.home .im-bundle-card strong { display:inline-flex; align-items:center; justify-content:center; min-width:150px; min-height:42px; margin-top:18px; border:1px solid #fff; background:#fff; color:#111; font:700 .68rem/1 Arial,sans-serif!important; letter-spacing:.14em; text-transform:uppercase; transition:background .2s ease,color .2s ease; }
.home .im-bundle-card:hover img,.home .im-bundle-card:focus-within img { filter:saturate(1.06); transform:scale(1.035); }
.home .im-bundle-card:hover strong,.home .im-bundle-card:focus-within strong { background:transparent; color:#fff; }
.home .im-bundle-carousel .im-product-carousel__button { background:rgb(255 255 255 / 88%); box-shadow:0 1px 7px rgb(0 0 0 / 25%); color:#111; }
.home .im-bundle-carousel .im-product-carousel__button--previous { left:12px; }
.home .im-bundle-carousel .im-product-carousel__button--next { right:12px; }

@media (max-width:1279px) {
  .home .im-bundle-section>header { padding-right:20px; padding-left:20px; }
}

@media (max-width:780px) {
  .home .im-product-rail .solere-preview__section-head h2 { font-size:2rem!important; }
  .home .im-product-panel>.woocommerce { max-width:none; }
  .home .im-product-tabs__list { margin-bottom:20px; }
  .home .im-bundle-section { padding:56px 0 60px; }
  .home .im-bundle-section>header { margin-bottom:22px; padding-right:16px; padding-left:16px; }
  .home .im-bundle-section>header h2 { font-size:2.7rem!important; }
  .home .im-bundle-carousel__track { gap:12px; padding-right:16px; padding-left:16px; }
  .home .im-bundle-card { flex-basis:82vw; }
}

/* Paired regular/bold headline rhythm. */
.home .im-home-hero__content h1,
.home .im-product-rail .solere-preview__section-head h2,
.home .im-bundle-section>header h2,
.home .im-pleasure-finder h2,
.home .solere-editorial-split__content h2,
.home .solere-editorial-panel__content h2,
.home .im-explore-banner h2,
.home .im-home-about h2 { font-weight:400!important; }
.home .im-home-hero__content h1 strong,
.home .im-product-rail .solere-preview__section-head h2 strong,
.home .im-bundle-section>header h2 strong,
.home .im-pleasure-finder h2 strong,
.home .solere-editorial-split__content h2 strong,
.home .solere-editorial-panel__content h2 strong,
.home .im-explore-banner h2 strong,
.home .im-home-about h2 strong { font-family:Arial,sans-serif!important; font-weight:800!important; }

/* Two-line title lockups: lowercase weighted headline plus product-style subtitle. */
.home .im-title-lockup { display:flex; flex-direction:column; align-items:flex-start; }
.home .im-home-hero__content h1,
.home .im-product-rail .solere-preview__section-head h2,
.home .im-bundle-section>header h2,
.home .im-pleasure-finder h2,
.home .solere-editorial-split__content h2,
.home .solere-editorial-panel__content h2,
.home .im-explore-banner h2,
.home .im-home-about h2 { text-transform:lowercase!important; }
.home .im-title-subtitle {
  margin:10px 0 0!important;
  padding:0;
  font:700 clamp(.92rem,1.45vw,1.25rem)/1.2 Arial,sans-serif!important;
  letter-spacing:-.015em!important;
  text-align:left;
  text-transform:none!important;
}
.home .im-product-rail .solere-preview__section-head .im-title-subtitle { color:#111; }
.home .im-home-hero__content h1 { margin-bottom:0; }
.home .im-home-hero__content .im-title-subtitle { margin:12px 0 26px!important; color:#fff; }
.home .im-bundle-section>header .im-title-subtitle { margin-top:14px!important; color:#fff; font-size:clamp(1rem,1.65vw,1.4rem)!important; }
.home .im-pleasure-finder .im-title-subtitle { margin:0 0 18px!important; color:#fff; text-align:center; }
.home .solere-editorial-split .im-title-subtitle,
.home .im-explore-banner .im-title-subtitle { margin:0 0 18px!important; color:#fff; text-align:center; }
.home .im-home-about .im-title-subtitle { margin:0 0 20px!important; color:#111; text-align:center; }

@media (max-width:780px) {
  .home .im-title-subtitle { font-size:.95rem!important; }
}

/* Exact reference lockup metrics at 1280px, using Arial. */
.home .im-home-hero__content h1,
.home .im-product-rail .solere-preview__section-head h2,
.home .im-bundle-section>header h2,
.home .im-pleasure-finder h2,
.home .solere-editorial-split__content h2,
.home .solere-editorial-panel__content h2,
.home .im-explore-banner h2,
.home .im-home-about h2 {
  margin:0!important;
  padding:0!important;
  font-family:Arial,sans-serif!important;
  font-size:clamp(40px,4.53125vw,58px)!important;
  font-weight:300!important;
  line-height:1.103448!important;
  letter-spacing:normal!important;
  text-align:left!important;
  text-transform:lowercase!important;
}
.home .im-home-hero__content h1 strong,
.home .im-product-rail .solere-preview__section-head h2 strong,
.home .im-bundle-section>header h2 strong,
.home .im-pleasure-finder h2 strong,
.home .solere-editorial-split__content h2 strong,
.home .solere-editorial-panel__content h2 strong,
.home .im-explore-banner h2 strong,
.home .im-home-about h2 strong { font-weight:900!important; }
.home .im-title-subtitle,
.home .im-home-hero__content .im-title-subtitle,
.home .im-product-rail .solere-preview__section-head .im-title-subtitle,
.home .im-bundle-section>header .im-title-subtitle,
.home .im-pleasure-finder .im-title-subtitle,
.home .solere-editorial-split .im-title-subtitle,
.home .im-explore-banner .im-title-subtitle,
.home .im-home-about .im-title-subtitle {
  margin:0!important;
  padding:0!important;
  color:inherit;
  font-family:Arial,sans-serif!important;
  font-size:clamp(17px,1.640625vw,21px)!important;
  font-weight:900!important;
  line-height:1.285714!important;
  letter-spacing:2.25px!important;
  text-align:left!important;
  text-transform:none!important;
}
.home .im-product-rail .solere-preview__section-head { margin-bottom:30px; }

@media (max-width:780px) {
  .home .im-home-hero__content h1,
  .home .im-product-rail .solere-preview__section-head h2,
  .home .im-bundle-section>header h2,
  .home .im-pleasure-finder h2,
  .home .solere-editorial-split__content h2,
  .home .solere-editorial-panel__content h2,
  .home .im-explore-banner h2,
  .home .im-home-about h2 { font-size:40px!important; line-height:1.075!important; }
  .home .im-title-subtitle { font-size:17px!important; line-height:1.294118!important; letter-spacing:1.75px!important; }
}

/* Final hero override follows the shared lockup rules. */
.home .im-home-hero__content h1 { line-height:.98!important; }
.home .im-home-hero__content .im-title-subtitle { margin:12px 0 32px!important; }

@media (max-width:780px) {
  .home .im-home-hero__content h1 { line-height:1!important; }
  .home .im-home-hero__content .im-title-subtitle { margin:10px 0 28px!important; }
}

/* Authoritative three-line right-column section lockup. */
.home .im-title-eyebrow,
.home .im-product-rail .solere-preview__section-head .im-title-eyebrow,
.home .im-bundle-section>header .im-title-eyebrow { margin:0 0 12px!important; padding:0!important; color:#6d6866; font:900 11px/13px Arial,sans-serif!important; letter-spacing:4px!important; text-align:left!important; text-transform:uppercase!important; }
.home .im-home-hero .im-title-eyebrow,.home .im-product-rail--dark .im-title-eyebrow,.home .im-bundle-section .im-title-eyebrow,.home .im-pleasure-finder .im-title-eyebrow,.home .solere-editorial-split .im-title-eyebrow,.home .im-explore-banner .im-title-eyebrow { color:#fff!important; }
.home .im-product-rail .solere-preview__section-head { display:grid!important; grid-template-columns:minmax(0,1fr) minmax(0,620px)!important; align-items:end!important; gap:20px!important; }
.home .im-product-rail .solere-preview__section-head .im-title-lockup { grid-column:2; width:100%; margin:0; }
.home .im-product-rail .solere-preview__section-head>p { grid-column:1; grid-row:1; align-self:end; justify-self:start; margin:0!important; }
.home .im-bundle-section>header { box-sizing:border-box; width:min(620px,calc(100% - 40px)); max-width:none; margin-right:max(20px,calc((100vw - 1240px)/2)); margin-left:auto; }
.home .im-home-hero::before { background:linear-gradient(270deg,rgb(0 0 0 / 54%) 0%,rgb(0 0 0 / 19%) 48%,transparent 75%); }
.home .im-home-hero__content { margin-left:auto; }
.home .im-pleasure-finder>.wp-block-group__inner-container,.home .im-explore-banner>.wp-block-cover__inner-container,.home .im-home-about>.wp-block-group__inner-container { box-sizing:border-box; width:min(620px,calc(100% - 40px)); max-width:none; margin-right:max(20px,calc((100vw - 1240px)/2)); margin-left:auto; text-align:left; }
.home .im-pleasure-finder .im-title-subtitle,.home .im-explore-banner .im-title-subtitle,.home .im-home-about .im-title-subtitle { text-align:left!important; }

@media (max-width:780px) {
  .home .im-product-rail .solere-preview__section-head { grid-template-columns:1fr!important; gap:16px!important; }
  .home .im-product-rail .solere-preview__section-head .im-title-lockup { grid-column:1; grid-row:1; }
  .home .im-product-rail .solere-preview__section-head>p { grid-column:1; grid-row:2; }
  .home .im-bundle-section>header,.home .im-pleasure-finder>.wp-block-group__inner-container,.home .im-explore-banner>.wp-block-cover__inner-container,.home .im-home-about>.wp-block-group__inner-container { width:calc(100% - 32px); margin-right:16px; margin-left:16px; }
  .home .im-home-hero::before { background:linear-gradient(0deg,rgb(0 0 0 / 62%) 0%,rgb(0 0 0 / 15%) 62%,transparent 100%); }
  .home .im-home-hero__content { margin-left:0; }
}

@media (min-width:781px) {
  .home .im-home-hero { padding-right:20px; }
  .home .im-pleasure-finder>.wp-block-group__inner-container,
  .home .im-home-about>.wp-block-group__inner-container { transform:translateX(24px); }
}

/* Authoritative related grid follows every legacy product-card rule. */
.single-product .related ul.products { gap:12px!important; }
body.single-product .related ul.products li.product { box-sizing:border-box; flex:0 0 301px!important; width:301px!important; min-height:562px!important; padding:25px!important; }
.single-product .related ul.products li.product .woocommerce-loop-product__link { flex:1 1 auto; width:100%; }
.single-product .related ul.products li.product .woocommerce-loop-product__link>img:not(.im-product-card__hover-image) { width:100%!important; height:auto!important; margin:0 0 18px!important; }
.single-product .related .im-product-card__hover-image { top:0!important; left:0!important; width:100%!important; height:auto!important; }
.single-product .related ul.products li.product .intimatemart-product-brand { width:100%!important; margin:0 0 4px!important; }
.single-product .related ul.products li.product .woocommerce-loop-product__title,.single-product .related ul.products li.product .price { width:100%!important; }
.single-product .related ul.products li.product .button { width:100%!important; margin:15px 0 0!important; }
@media (max-width:780px) {
  body.single-product .related ul.products li.product { flex-basis:76vw!important; width:76vw!important; min-height:440px!important; padding:16px!important; }
}

/* Wider homepage merchandising rails with protected hover clearance. */
.home .im-product-rail { padding-right:12px; padding-left:12px; }
.home .im-product-rail>.solere-preview__section-head,
.home .im-product-rail>.woocommerce { max-width:1320px; }
.home .im-product-rail .woocommerce ul.products {
  gap:12px;
  margin-top:-10px!important;
  padding-top:10px;
}
.home .im-product-rail .woocommerce ul.products li.product {
  flex:0 0 301px!important;
  width:301px!important;
}
.home .im-product-rail .im-product-card__hover-image { left:30px; }

@media (max-width:780px) {
  .home .im-product-rail { padding-right:16px; padding-left:16px; }
  .home .im-product-rail>.solere-preview__section-head,
  .home .im-product-rail>.woocommerce { max-width:none; }
  .home .im-product-rail .woocommerce ul.products { gap:12px; margin-top:-8px!important; padding-top:8px; }
  .home .im-product-rail .woocommerce ul.products li.product { flex-basis:76vw!important; width:76vw!important; }
  .home .im-product-rail .im-product-card__hover-image { left:16px; }
}

/* Slightly wider desktop rails with headings aligned to the first card edge. */
@media (min-width:781px) {
  .home .im-product-rail { padding-right:8px; padding-left:8px; }
  body.home .im-product-rail>.solere-preview__section-head,
  .home .im-product-rail>.woocommerce { max-width:1360px; }
  body.home .im-product-rail>.solere-preview__section-head { max-width:1360px!important; }
  .home .im-product-rail .solere-preview__section-head {
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  .home .im-product-rail .solere-preview__section-head .im-title-lockup {
    grid-column:1!important;
    grid-row:1!important;
    justify-self:start;
    width:min(620px,100%);
  }
  .home .im-product-rail .solere-preview__section-head>p {
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end;
  }
  .home .im-product-rail .woocommerce ul.products li.product {
    flex-basis:304px!important;
    width:304px!important;
  }
  .home .im-product-rail .im-product-card__hover-image { left:31px; }
  .home .im-product-rail .im-product-panel>.woocommerce {
    width:100%;
    max-width:none;
    margin-right:0!important;
    margin-left:0!important;
  }
}

/* Trending tabs and single-product related rails share the wider homepage geometry. */
@media (min-width:781px) {
  .home .im-product-tabs__list {
    width:100%;
    max-width:1360px;
    margin-right:auto;
    margin-left:auto;
  }
  .single-product .related.im-product-carousel { padding-right:8px; padding-left:8px; }
  .single-product .related>h2,
  .single-product .related ul.products { max-width:1360px; }
  body.single-product .related ul.products li.product {
    flex-basis:304px!important;
    width:304px!important;
  }
}

@media (max-width:780px) {
  .single-product .related.im-product-carousel { padding-right:16px; padding-left:16px; }
  body.single-product .related ul.products li.product { flex-basis:76vw!important; width:76vw!important; }
}

/* Balance the product hero without constraining the full-width related rail. */
@media (min-width:781px) {
  body.single-product.storefront-full-width-content div.product {
    box-sizing:border-box;
    grid-template-columns:minmax(0,588px) minmax(0,588px);
    column-gap:24px;
    width:calc(100% - 80px);
    max-width:1200px;
    margin-right:auto!important;
    margin-left:auto!important;
  }
  body.single-product.storefront-full-width-content div.product .woocommerce-product-gallery {
    grid-column:1;
    width:100%!important;
  }
  body.single-product.storefront-full-width-content div.product .summary {
    grid-column:2;
    width:100%!important;
  }
  .single-product .solere-product-panel {
    padding:82px 48px 48px;
  }
  .single-product .woocommerce-tabs,
  .single-product .related {
    grid-column:1/-1;
    justify-self:start;
    width:100vw!important;
    min-width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
  }
}

/* Keep every homepage product image centered inside the shared card shell. */
@media (min-width:781px) {
  body.home .im-product-rail.solere-preview__section .woocommerce ul.products li.product
  .woocommerce-loop-product__link>img:not(.im-product-card__hover-image) {
    display:block;
    width:240px!important;
    height:240px!important;
    margin:25px auto 0!important;
    object-fit:contain;
    object-position:center;
  }
  body.home #trending-now .im-product-panel>.woocommerce {
    width:100%;
    max-width:none;
    margin-right:0!important;
    margin-left:0!important;
  }
}

/* Related products use the exact homepage card inside the full-width rail. */
@media (min-width:781px) {
  body.single-product .related ul.products li.product {
    box-sizing:border-box;
    display:flex!important;
    flex:0 0 304px!important;
    flex-direction:column;
    width:304px!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:1px solid rgb(0 0 0 / 20%);
    border-radius:18px;
    background:#fff;
    overflow:hidden;
  }
  .single-product .related ul.products li.product .woocommerce-loop-product__link {
    position:relative;
    display:flex;
    flex:0 0 auto;
    flex-direction:column;
    width:100%;
  }
  .single-product .related ul.products li.product .woocommerce-loop-product__link
  >img:not(.im-product-card__hover-image) {
    display:block;
    width:240px!important;
    height:240px!important;
    margin:25px auto 0!important;
    object-fit:contain;
    object-position:center;
  }
  .single-product .related .im-product-card__hover-image {
    top:25px!important;
    left:31px!important;
    width:240px!important;
    height:240px!important;
    margin:0!important;
    object-fit:contain;
    object-position:center;
  }
  .single-product .related ul.products li.product .intimatemart-product-brand {
    box-sizing:border-box;
    width:240px!important;
    height:16px;
    min-height:16px;
    margin:18px auto 4px!important;
    padding:0!important;
  }
  .single-product .related ul.products li.product .woocommerce-loop-product__title {
    box-sizing:border-box;
    width:240px!important;
    height:43px;
    min-height:43px;
    max-height:43px;
    margin:0 auto!important;
    padding:0!important;
    font-size:.86rem!important;
    line-height:1.4!important;
    text-align:left!important;
    overflow:hidden;
  }
  .single-product .related ul.products li.product .price {
    box-sizing:border-box;
    width:240px!important;
    min-height:1.5em;
    margin:8px auto 0!important;
    padding:0!important;
    font-size:.78rem!important;
    text-align:left!important;
  }
  .single-product .related ul.products li.product .button {
    display:flex!important;
    align-items:center;
    justify-content:center;
    width:240px!important;
    min-height:49px;
    margin:18px auto 25px!important;
    padding:0 10px!important;
    border:1px solid rgb(0 0 0 / 55%);
    border-radius:6px!important;
    background:transparent;
    color:#111;
    font-size:15px;
  }
  .single-product .related ul.products li.product .button:hover,
  .single-product .related ul.products li.product .button:focus {
    background:#111;
    color:#fff;
  }
}

@media (max-width:780px) {
  body.single-product .related ul.products li.product {
    flex-basis:76vw!important;
    width:76vw!important;
    min-height:0!important;
    padding:0!important;
  }
  .single-product .related ul.products li.product .woocommerce-loop-product__link
  >img:not(.im-product-card__hover-image) {
    width:calc(100% - 32px)!important;
    height:auto!important;
    margin:16px auto 0!important;
  }
  .single-product .related .im-product-card__hover-image { display:none!important; }
  .single-product .related ul.products li.product .intimatemart-product-brand,
  .single-product .related ul.products li.product .woocommerce-loop-product__title,
  .single-product .related ul.products li.product .price,
  .single-product .related ul.products li.product .button {
    width:calc(100% - 32px)!important;
  }
}

/* The single-product related block is a true homepage-style merchandising rail. */
.single-product .related.im-product-rail {
  position:relative;
  box-sizing:border-box;
  width:100vw!important;
  max-width:none!important;
  padding:72px 8px 82px!important;
  background:#fff;
  overflow:hidden;
}
.single-product .related.im-product-rail>.solere-preview__section-head {
  box-sizing:border-box;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:20px;
  width:100%;
  max-width:1360px;
  height:104px;
  min-height:104px;
  margin:0 auto 30px!important;
}
.single-product .related.im-product-rail .im-title-lockup {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-self:start;
  width:min(620px,100%);
}
.single-product .related.im-product-rail .im-title-eyebrow {
  margin:0 0 12px!important;
  color:#6d6866;
  font:900 11px/13px Arial,sans-serif!important;
  letter-spacing:4px;
  text-transform:uppercase;
}
.single-product .related.im-product-rail .solere-preview__section-head h2 {
  margin:0!important;
  padding:0!important;
  font:300 48px/52px Arial,sans-serif!important;
  letter-spacing:normal!important;
  text-align:left!important;
  text-transform:lowercase!important;
}
.single-product .related.im-product-rail .solere-preview__section-head h2 strong {
  font-family:Arial,sans-serif!important;
  font-weight:900!important;
}
.single-product .related.im-product-rail .im-title-subtitle {
  margin:0!important;
  padding:0!important;
  border:0!important;
  font:900 21px/27px Arial,sans-serif!important;
  letter-spacing:2.25px;
  text-align:left;
  text-transform:none!important;
}
.single-product .related.im-product-rail>.solere-preview__section-head>p {
  align-self:end;
  justify-self:end;
  margin:0!important;
}
.single-product .related.im-product-rail>.solere-preview__section-head>p a {
  color:#111;
  font:700 .72rem/1 Arial,sans-serif;
  letter-spacing:.12em;
  text-decoration:none;
  text-transform:uppercase;
}
.single-product .related.im-product-rail>.woocommerce.im-product-carousel {
  position:relative;
  width:100%;
  max-width:1360px;
  margin:0 auto!important;
}
.single-product .related.im-product-rail>.woocommerce ul.products {
  width:100%;
  max-width:none;
}

@media (max-width:780px) {
  .single-product .related.im-product-rail { padding:52px 16px 58px!important; }
  .single-product .related.im-product-rail>.solere-preview__section-head {
    display:grid;
    grid-template-columns:1fr;
    gap:16px;
    height:auto;
    min-height:0;
    margin-bottom:18px!important;
  }
  .single-product .related.im-product-rail .solere-preview__section-head h2 {
    font-size:40px!important;
    line-height:43px!important;
  }
  .single-product .related.im-product-rail .im-title-subtitle {
    font-size:17px!important;
    line-height:22px!important;
    letter-spacing:1.75px;
  }
  .single-product .related.im-product-rail>.solere-preview__section-head>p {
    justify-self:start;
  }
}

/* Preserve top clearance for the Related card hover treatment. */
@media (min-width:781px) {
  .single-product .related.im-product-rail>.woocommerce ul.products {
    gap:12px!important;
    margin-top:-10px!important;
    padding-top:10px!important;
  }
}

/* Prevent Arial's bold glyphs from clipping inside the related heading lockup. */
@media (min-width:781px) {
  .single-product .related.im-product-rail {
    overflow:visible!important;
  }
  .single-product .related.im-product-rail>.solere-preview__section-head {
    height:auto!important;
    min-height:112px!important;
  }
  .single-product .related.im-product-rail .im-title-lockup {
    min-height:112px;
  }
  .single-product .related.im-product-rail .solere-preview__section-head h2 {
    padding:2px 0!important;
    line-height:56px!important;
    overflow:visible!important;
  }
}

/* Match Related to Trending: contained heading, full rail, fixed cards, 20 products. */
@media (min-width:781px) {
  .single-product .related.im-product-rail>.solere-preview__section-head {
    width:100%!important;
    max-width:1360px!important;
  }
  .single-product .related.im-product-rail>.woocommerce.im-product-carousel,
  .single-product .related.im-product-rail>.woocommerce ul.products {
    width:100%!important;
    max-width:none!important;
  }
  body.single-product .related.im-product-rail ul.products li.product {
    flex:0 0 304px!important;
    width:304px!important;
  }
  .single-product .related.im-product-rail .im-product-card__hover-image {
    left:31px!important;
  }
}

/* Trending uses the same contained desktop width as every other homepage rail. */
@media (min-width:781px) {
  body.home #trending-now .im-product-panel>.woocommerce {
    width:100%;
    max-width:1360px!important;
    margin-right:auto!important;
    margin-left:auto!important;
  }
}

/* 2.9.204: keep every merchandising-card action on one clean bottom row. */
.home .im-product-rail .woocommerce ul.products li.product,
.single-product .related.im-product-rail ul.products li.product {
	display: flex !important;
	flex-direction: column !important;
	height: auto !important;
	overflow: hidden;
}

.home .im-product-rail .woocommerce ul.products li.product .woocommerce-loop-product__link,
.single-product .related.im-product-rail ul.products li.product .woocommerce-loop-product__link {
	display: flex !important;
	flex: 1 1 auto !important;
	flex-direction: column !important;
}

.home .im-product-rail .woocommerce ul.products li.product .intimatemart-product-brand,
.single-product .related.im-product-rail ul.products li.product .intimatemart-product-brand {
	min-height: 1.15em;
}

.home .im-product-rail .woocommerce ul.products li.product .woocommerce-loop-product__title,
.single-product .related.im-product-rail ul.products li.product .woocommerce-loop-product__title {
	display: -webkit-box;
	height: 3.1em;
	min-height: 3.1em;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.home .im-product-rail .woocommerce ul.products li.product .price,
.single-product .related.im-product-rail ul.products li.product .price {
	min-height: 1.5em;
}

.home .im-product-rail .woocommerce ul.products li.product .button,
.single-product .related.im-product-rail ul.products li.product .button {
	box-sizing: border-box !important;
	display: flex !important;
	flex: 0 0 49px !important;
	align-items: center;
	justify-content: center;
	height: 49px !important;
	min-height: 49px !important;
	line-height: 1.1 !important;
}

.home .im-product-rail .woocommerce ul.products li.product .button {
	margin-top: 18px !important;
	margin-bottom: 20px !important;
}

.single-product .related.im-product-rail ul.products li.product .button {
	margin-top: 18px !important;
	margin-bottom: 20px !important;
}

/* Border-floating labels for classic WooCommerce account, login and checkout forms. */
.woocommerce form .form-row:has(> label:not(.woocommerce-form__label-for-checkbox)):has(input.input-text, select, textarea),
.woocommerce form .form-row.solere-floating-field {
	position: relative;
	margin-top: 18px;
}

.woocommerce form .form-row:has(> label:not(.woocommerce-form__label-for-checkbox)):has(input.input-text, select, textarea) > label:not(.screen-reader-text),
.woocommerce form .form-row.solere-floating-field > label:not(.screen-reader-text) {
	position: absolute !important;
	z-index: 3;
	top: 0 !important;
	left: 12px !important;
	display: block !important;
	width: auto !important;
	max-width: calc(100% - 24px);
	margin: 0 !important;
	padding: 0 6px !important;
	background: #fff;
	color: #333 !important;
	font: 600 10px/1 Arial, Helvetica, sans-serif !important;
	letter-spacing: .065em !important;
	pointer-events: none;
	text-transform: uppercase !important;
	transform: translateY(-50%) !important;
}

.woocommerce form .form-row:has(> label:not(.woocommerce-form__label-for-checkbox)):has(input.input-text, select, textarea) input.input-text,
.woocommerce form .form-row:has(> label:not(.woocommerce-form__label-for-checkbox)):has(input.input-text, select, textarea) select,
.woocommerce form .form-row:has(> label:not(.woocommerce-form__label-for-checkbox)):has(input.input-text, select, textarea) textarea,
.woocommerce form .form-row.solere-floating-field input.input-text,
.woocommerce form .form-row.solere-floating-field select,
.woocommerce form .form-row.solere-floating-field textarea {
	box-sizing: border-box;
	min-height: 52px;
	padding: 13px 14px 9px !important;
	border: 1px solid #777 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	font-size: 16px;
}

.woocommerce form .form-row:has(> label:not(.woocommerce-form__label-for-checkbox)):has(input.input-text, select, textarea):focus-within input.input-text,
.woocommerce form .form-row:has(> label:not(.woocommerce-form__label-for-checkbox)):has(input.input-text, select, textarea):focus-within select,
.woocommerce form .form-row:has(> label:not(.woocommerce-form__label-for-checkbox)):has(input.input-text, select, textarea):focus-within textarea,
.woocommerce form .form-row.solere-floating-field:focus-within input.input-text,
.woocommerce form .form-row.solere-floating-field:focus-within select,
.woocommerce form .form-row.solere-floating-field:focus-within textarea {
	border-color: #111 !important;
	box-shadow: 0 0 0 1px #111 !important;
	outline: 0 !important;
}

/* The header login drawer uses plain paragraphs rather than WooCommerce form rows. */
.solere-login-drawer form.login > p:has(> label + input.input-text) {
	position: relative;
	margin-top: 18px;
}

.solere-login-drawer form.login > p:has(> label + input.input-text) > label {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 12px;
	width: auto;
	margin: 0;
	padding: 0 6px;
	background: #fff;
	color: #333;
	font: 600 10px/1 Arial, Helvetica, sans-serif;
	letter-spacing: .065em;
	pointer-events: none;
	text-transform: uppercase;
	transform: translateY(-50%);
}

.solere-login-drawer form.login > p:has(> label + input.input-text) > input.input-text {
	height: 52px;
	min-height: 52px;
	padding: 12px 14px 9px;
}

.solere-login-drawer form.login > p:has(> label + input.input-text):focus-within > input.input-text {
	border-color: #111;
	box-shadow: 0 0 0 1px #111;
	outline: 0;
}

/* Border-floating labels for the Cart and Checkout Blocks, including dynamic address fields. */
.woocommerce-cart .wc-block-components-text-input,
.woocommerce-cart .wc-block-components-combobox,
.woocommerce-cart .wc-block-components-select,
.woocommerce-checkout .wc-block-components-text-input,
.woocommerce-checkout .wc-block-components-combobox,
.woocommerce-checkout .wc-block-components-select {
	position: relative;
	margin-top: 16px !important;
}

.woocommerce-cart .wc-block-components-text-input label,
.woocommerce-cart .wc-block-components-combobox .wc-block-components-combobox-control label,
.woocommerce-cart .wc-block-components-select label,
.woocommerce-checkout .wc-block-components-text-input label,
.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control label,
.woocommerce-checkout .wc-block-components-select label {
	position: absolute !important;
	z-index: 3 !important;
	top: 0 !important;
	left: 12px !important;
	width: auto !important;
	max-width: calc(100% - 24px);
	margin: 0 !important;
	padding: 0 6px !important;
	background: #fff !important;
	color: #333 !important;
	font: 600 10px/1 Arial, Helvetica, sans-serif !important;
	letter-spacing: .065em !important;
	pointer-events: none;
	text-transform: uppercase !important;
	transform: translateY(-50%) !important;
}

.woocommerce-cart .wc-block-components-text-input input,
.woocommerce-cart .wc-block-components-combobox .wc-block-components-combobox-control input,
.woocommerce-cart .wc-block-components-select select,
.woocommerce-checkout .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input,
.woocommerce-checkout .wc-block-components-select select {
	box-sizing: border-box;
	min-height: 52px !important;
	padding: 12px 14px 9px !important;
	border: 1px solid #777 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	font-size: 16px !important;
}

.woocommerce-cart :is(.wc-block-components-text-input, .wc-block-components-combobox, .wc-block-components-select):focus-within input,
.woocommerce-cart :is(.wc-block-components-text-input, .wc-block-components-combobox, .wc-block-components-select):focus-within select,
.woocommerce-checkout :is(.wc-block-components-text-input, .wc-block-components-combobox, .wc-block-components-select):focus-within input,
.woocommerce-checkout :is(.wc-block-components-text-input, .wc-block-components-combobox, .wc-block-components-select):focus-within select {
	border-color: #111 !important;
	box-shadow: 0 0 0 1px #111 !important;
	outline: 0 !important;
}

/* A restrained empty-cart state that matches the store instead of Woo Blocks defaults. */
.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
	padding-top: 0 !important;
}

.woocommerce-cart .wc-block-cart__empty-cart__title.with-empty-cart-icon::before {
	display: none !important;
	content: none !important;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block > .wp-block-separator.is-style-dots {
	display: none !important;
}

.woocommerce-cart .wc-block-cart__empty-cart__title {
	margin: 0 0 46px !important;
	font: 400 clamp(1rem, 1.35vw, 1.2rem)/1.35 Arial, Helvetica, sans-serif !important;
	letter-spacing: .01em;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) {
	margin: 0 0 24px !important;
	font: 400 clamp(1.7rem, 3vw, 2.5rem)/1.1 Arial, Helvetica, sans-serif !important;
	letter-spacing: -.025em;
}

@media (max-width: 780px) {
	.home .im-product-rail .woocommerce ul.products li.product .button {
		margin-top: 16px !important;
		margin-bottom: 16px !important;
	}

	.woocommerce-cart .site-content > .col-full {
		padding: 34px 18px 58px;
	}

	.woocommerce-cart .entry-header {
		margin-bottom: 34px;
	}

	.woocommerce-cart .entry-header h1 {
		font-size: 1.85rem;
	}

	.woocommerce-cart .wc-block-cart__empty-cart__title {
		margin-bottom: 38px !important;
	}

	.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) {
		margin-bottom: 20px !important;
		font-size: 1.9rem !important;
	}
}

/* 2.9.212: modern breadcrumb and catalogue-filter interface. */
.storefront-breadcrumb {
	box-sizing: border-box;
	margin-bottom: 24px !important;
	padding: 0 !important;
	background: transparent !important;
}

.storefront-breadcrumb .woocommerce-breadcrumb {
	box-sizing: border-box;
	display: inline-flex !important;
	align-items: center;
	max-width: 100%;
	min-height: 36px;
	padding: 0 14px !important;
	border: 1px solid rgb(17 17 17 / 12%);
	border-radius: 6px;
	background: linear-gradient(135deg,rgb(255 255 255 / 96%),rgb(246 246 248 / 92%));
	box-shadow: inset 0 1px 0 rgb(255 255 255 / 90%),0 8px 24px rgb(17 17 17 / 5%);
	color: #585858 !important;
	font: 500 10px/1 Arial,Helvetica,sans-serif !important;
	letter-spacing: .075em;
	text-transform: uppercase;
	white-space: nowrap;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.storefront-breadcrumb .woocommerce-breadcrumb a {
	position: relative;
	color: #111 !important;
	font-weight: 700;
	text-decoration: none;
	transition: opacity .18s ease;
}

.storefront-breadcrumb .woocommerce-breadcrumb a:hover,
.storefront-breadcrumb .woocommerce-breadcrumb a:focus-visible {
	opacity: .55;
}

.storefront-breadcrumb .breadcrumb-separator {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	color: transparent;
	font-size: 0;
}

.storefront-breadcrumb .breadcrumb-separator::before {
	width: 6px;
	height: 6px;
	border-top: 1px solid #8b8b8b;
	border-right: 1px solid #8b8b8b;
	content: '';
	transform: rotate(45deg);
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-breadcrumb .col-full {
	display: flex;
	align-items: center;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters {
	margin-right: 0;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary {
	box-sizing: border-box;
	justify-content: center;
	min-width: 108px;
	min-height: 40px;
	padding: 0 16px;
	border: 1px solid rgb(17 17 17 / 18%);
	border-radius: 6px;
	background: linear-gradient(135deg,#fff,#f3f3f5);
	box-shadow: inset 0 1px 0 #fff,0 5px 16px rgb(17 17 17 / 6%);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .12em;
	transition: color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary:hover,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary:focus-visible,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters[open] > summary {
	border-color: #111;
	background: #111;
	box-shadow: 0 8px 22px rgb(17 17 17 / 16%);
	color: #fff;
	transform: translateY(-1px);
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary span,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary span::before,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary span::after {
	width: 16px;
	height: 1px;
	border-radius: 6px;
	background: currentColor;
	transition: width .2s ease,transform .2s ease;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary span::before {
	width: 11px;
	transform: translate(2px,-4px);
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary span::after {
	width: 7px;
	transform: translate(4px,3px);
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters[open] > summary span::before,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters[open] > summary span::after {
	width: 16px;
	transform: translate(0,0);
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel {
	top: calc(100% + 10px);
	right: -20px;
	left: -20px;
	grid-template-columns: minmax(0,1.15fr) minmax(0,1.15fr) minmax(170px,.55fr) auto;
	gap: 14px;
	padding: 16px;
	border: 1px solid rgb(17 17 17 / 12%);
	border-radius: 16px;
	background: rgb(255 255 255 / 96%);
	box-shadow: 0 24px 70px rgb(17 17 17 / 14%);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	animation: im-filter-reveal .22s cubic-bezier(.2,.75,.3,1) both;
}

@keyframes im-filter-reveal {
	from { opacity:0; transform:translateY(-7px) scale(.992); }
	to { opacity:1; transform:translateY(0) scale(1); }
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel > section {
	box-sizing: border-box;
	min-width: 0;
	padding: 14px;
	border: 1px solid rgb(17 17 17 / 8%);
	border-radius: 12px;
	background: linear-gradient(145deg,#fafafa,#f5f5f7);
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel h2 {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 12px;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .14em;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel h2::before {
	width: 6px;
	height: 6px;
	border: 1px solid #111;
	border-radius: 50%;
	box-shadow: 0 0 0 3px rgb(17 17 17 / 6%);
	content: '';
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 8px;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values a,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-stock-filter {
	position: relative;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-width: 0;
	height: 46px;
	min-height: 46px;
	padding: 0 12px;
	overflow: hidden;
	border: 1px solid rgb(17 17 17 / 16%);
	border-radius: 10px;
	background: rgb(255 255 255 / 86%);
	box-shadow: inset 0 1px 0 #fff;
	color: #222;
	font-size: 10.5px;
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: .01em;
	text-overflow: ellipsis;
	white-space: nowrap;
	transition: color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values a:hover,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values a:focus-visible,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-stock-filter:hover,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-stock-filter:focus-visible {
	border-color: #111;
	background: #fff;
	box-shadow: 0 7px 18px rgb(17 17 17 / 10%);
	color: #111;
	transform: translateY(-2px);
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values a.is-active,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-stock-filter.is-active {
	border-color: #111;
	background: #111;
	box-shadow: inset 0 0 0 1px rgb(255 255 255 / 10%),0 7px 18px rgb(17 17 17 / 14%);
	color: #fff;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-clear {
	align-self: end;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 112px;
	height: 42px;
	padding: 0 16px;
	border: 1px solid rgb(17 17 17 / 18%);
	border-radius: 6px;
	background: transparent;
	color: #111;
	font-size: 9.5px;
	font-weight: 700;
	letter-spacing: .1em;
	text-decoration: none;
	transition: color .18s ease,background .18s ease,border-color .18s ease;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-clear:hover,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-clear:focus-visible {
	border-color: #111;
	background: #111;
	color: #fff;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .storefront-sorting select {
	min-height: 40px;
	padding-right: 34px;
	padding-left: 14px;
	border-color: rgb(17 17 17 / 18%);
	border-radius: 6px;
	background-color: #fff;
	box-shadow: 0 5px 16px rgb(17 17 17 / 5%);
}

@media (max-width: 780px) {
	.storefront-breadcrumb {
		margin-bottom: 18px !important;
	}

	.storefront-breadcrumb .woocommerce-breadcrumb {
		max-width: 100%;
		min-height: 34px;
		overflow-x: auto;
		font-size: 9px !important;
		scrollbar-width: none;
	}

	.storefront-breadcrumb .woocommerce-breadcrumb::-webkit-scrollbar {
		display: none;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary {
		min-width: 104px;
		min-height: 38px;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel {
		top: calc(100% + 8px);
		right: -12px;
		left: -12px;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
		max-height: calc(100svh - 126px);
		padding: 10px;
		border-radius: 14px;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel > section {
		padding: 10px;
		border-radius: 10px;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values {
		grid-template-columns: 1fr;
		gap: 7px;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values a,
	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-stock-filter {
		height: 44px;
		min-height: 44px;
		padding: 0 10px;
		font-size: 10px;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel > section:last-of-type,
	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-clear {
		grid-column: 1/-1;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-clear {
		width: 100%;
	}
}

/* 2.9.208: WD23-style label motion — inside when empty, on the border when active. */
.woocommerce form .form-row.im-floating-field > label:not(.screen-reader-text),
.solere-login-drawer form.login > p.im-floating-field > label,
.woocommerce-cart .wc-block-components-text-input.im-floating-field label,
.woocommerce-cart .wc-block-components-combobox.im-floating-field .wc-block-components-combobox-control label,
.woocommerce-cart .wc-block-components-select.im-floating-field label,
.woocommerce-checkout .wc-block-components-text-input.im-floating-field label,
.woocommerce-checkout .wc-block-components-combobox.im-floating-field .wc-block-components-combobox-control label,
.woocommerce-checkout .wc-block-components-select.im-floating-field label {
	top: 26px !important;
	left: 14px !important;
	padding: 0 !important;
	background: transparent !important;
	color: #666 !important;
	font: 400 15px/1 Arial, Helvetica, sans-serif !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	transform: translateY(-50%) scale(1) !important;
	transform-origin: left center;
	transition: top .2s cubic-bezier(.2,.75,.3,1), transform .2s cubic-bezier(.2,.75,.3,1), font-size .2s cubic-bezier(.2,.75,.3,1), color .2s ease, background-color .2s ease, padding .2s ease !important;
}

.woocommerce form .form-row.im-floating-field:focus-within > label:not(.screen-reader-text),
.woocommerce form .form-row.im-floating-field.im-has-value > label:not(.screen-reader-text),
.solere-login-drawer form.login > p.im-floating-field:focus-within > label,
.solere-login-drawer form.login > p.im-floating-field.im-has-value > label,
.woocommerce-cart .wc-block-components-text-input.im-floating-field:focus-within label,
.woocommerce-cart .wc-block-components-text-input.im-floating-field.im-has-value label,
.woocommerce-cart .wc-block-components-combobox.im-floating-field:focus-within .wc-block-components-combobox-control label,
.woocommerce-cart .wc-block-components-combobox.im-floating-field.im-has-value .wc-block-components-combobox-control label,
.woocommerce-cart .wc-block-components-select.im-floating-field:focus-within label,
.woocommerce-cart .wc-block-components-select.im-floating-field.im-has-value label,
.woocommerce-checkout .wc-block-components-text-input.im-floating-field:focus-within label,
.woocommerce-checkout .wc-block-components-text-input.im-floating-field.im-has-value label,
.woocommerce-checkout .wc-block-components-combobox.im-floating-field:focus-within .wc-block-components-combobox-control label,
.woocommerce-checkout .wc-block-components-combobox.im-floating-field.im-has-value .wc-block-components-combobox-control label,
.woocommerce-checkout .wc-block-components-select.im-floating-field:focus-within label,
.woocommerce-checkout .wc-block-components-select.im-floating-field.im-has-value label {
	top: 0 !important;
	left: 12px !important;
	padding: 0 6px !important;
	background: #fff !important;
	color: #111 !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: .01em !important;
	transform: translateY(-50%) scale(1) !important;
}

.woocommerce form .form-row.im-floating-field input.input-text,
.woocommerce form .form-row.im-floating-field select,
.solere-login-drawer form.login > p.im-floating-field > input.input-text,
.woocommerce-cart .im-floating-field input,
.woocommerce-cart .im-floating-field select,
.woocommerce-checkout .im-floating-field input,
.woocommerce-checkout .im-floating-field select {
	padding: 0 14px !important;
}

/* Live supplier-brand directory. The feed provides names, not logo artwork. */
.page-brands .site-content > .col-full {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

.page-brands .content-area,
.page-brands .site-main {
	float: none;
	width: 100%;
	margin: 0;
}

.page-brands .storefront-breadcrumb,
.page-brands .entry-header,
.page-brands .edit-link {
	display: none !important;
}

.page-brands .entry-content {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

.im-brands-directory__intro {
	box-sizing: border-box;
	display: grid;
	grid-template-columns: minmax(0,1fr) minmax(300px,520px);
	align-items: end;
	gap: 40px;
	width: 100%;
	min-height: 430px;
	margin: 0 0 72px;
	padding: 96px max(36px,calc((100vw - 1368px)/2));
	background: radial-gradient(circle at 82% 18%,rgb(255 255 255 / 10%),transparent 32%),linear-gradient(135deg,#080808,#1b1b1d);
	color: #fff;
}

.im-brands-directory__intro h2 {
	margin: 0;
	color: #fff;
	font: 400 clamp(2rem,3.4vw,3.8rem)/1 Arial, Helvetica, sans-serif;
	letter-spacing: -.045em;
	text-transform: lowercase;
}

.im-brands-directory__intro h2 strong {
	font-weight: 700;
}

.im-brands-directory__intro > p:last-child {
	max-width: 500px;
	margin: 0 0 4px;
	color: #d2d2d4;
	font-size: .92rem;
	line-height: 1.65;
}

.im-brands-directory__featured {
	width: calc(100% - 72px);
	max-width: 1368px;
	margin: 0 auto 72px;
}

.im-brands-directory__featured > h3,
.im-brands-directory__list > section > h3 {
	margin: 0 0 22px;
	font: 700 12px/1.2 Arial, Helvetica, sans-serif;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.im-brands-directory__featured-grid {
	display: grid;
	grid-template-columns: repeat(4,minmax(0,1fr));
	gap: 12px;
}

.im-brands-directory__featured-grid > a {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 154px;
	padding: 26px 24px 20px;
	border: 1px solid #d6d6d6;
	border-radius: 6px;
	background: #fff;
	color: #111;
	text-decoration: none;
	transition: color .22s ease, background-color .22s ease, border-color .22s ease, transform .22s ease;
}

.im-brands-directory__featured-grid > a:hover,
.im-brands-directory__featured-grid > a:focus-visible {
	border-color: #111;
	background: #111;
	color: #fff;
	transform: translateY(-2px);
}

.im-brands-directory__wordmark {
	display: block;
	font: 700 clamp(1.25rem,1.7vw,1.75rem)/1 Arial, Helvetica, sans-serif;
	letter-spacing: -.045em;
}

.im-brands-directory__count {
	font-size: .68rem;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.im-brands-directory__alphabet {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	width: calc(100% - 72px);
	max-width: 1368px;
	margin: 0 auto 54px;
	padding: 18px 0;
	border-top: 1px solid #d6d6d6;
	border-bottom: 1px solid #d6d6d6;
}

.im-brands-directory__alphabet a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border: 1px solid transparent;
	border-radius: 50%;
	color: #111;
	font-size: .75rem;
	font-weight: 600;
	text-decoration: none;
}

.im-brands-directory__alphabet a:hover,
.im-brands-directory__alphabet a:focus-visible {
	border-color: #111;
	background: #111;
	color: #fff;
}

.im-brands-directory__list > section {
	display: grid;
	grid-template-columns: 70px minmax(0,1fr);
	gap: 30px;
	padding: 36px 0;
	border-bottom: 1px solid #e1e1e1;
	scroll-margin-top: 105px;
}

.im-brands-directory__list {
	width: calc(100% - 72px);
	max-width: 1368px;
	margin: 0 auto;
	padding-bottom: 96px;
}

.im-brands-directory__list > section > h3 {
	margin: 4px 0 0;
	font-size: 1.25rem;
}

.im-brands-directory__list > section > div {
	display: grid;
	grid-template-columns: repeat(4,minmax(0,1fr));
	column-gap: 28px;
}

.im-brands-directory__list a {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 10px;
	min-width: 0;
	padding: 10px 0;
	border-bottom: 1px solid #eee;
	color: #111;
	font-size: .79rem;
	line-height: 1.35;
	text-decoration: none;
}

.im-brands-directory__list a span {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.im-brands-directory__list a small {
	flex: 0 0 auto;
	color: #777;
	font-size: .62rem;
}

.im-brands-directory__list a:hover span,
.im-brands-directory__list a:focus-visible span {
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media (max-width: 980px) {
	.im-brands-directory__featured-grid,
	.im-brands-directory__list > section > div {
		grid-template-columns: repeat(2,minmax(0,1fr));
	}
}

@media (max-width: 780px) {
	.page-brands .site-content > .col-full {
		padding: 0;
	}

	.im-brands-directory__intro {
		grid-template-columns: 1fr;
		gap: 18px;
		min-height: 340px;
		margin-bottom: 48px;
		padding: 64px 18px 48px;
	}

	.im-brands-directory__featured {
		width: calc(100% - 36px);
		margin-bottom: 52px;
	}

	.im-brands-directory__alphabet,
	.im-brands-directory__list {
		width: calc(100% - 36px);
	}

	.im-brands-directory__list {
		padding-bottom: 70px;
	}

	.im-brands-directory__featured-grid {
		grid-template-columns: repeat(2,minmax(0,1fr));
		gap: 8px;
	}

	.im-brands-directory__featured-grid > a {
		min-height: 126px;
		padding: 20px 16px 16px;
	}

	.im-brands-directory__alphabet {
		margin-bottom: 28px;
	}

	.im-brands-directory__list > section {
		grid-template-columns: 38px minmax(0,1fr);
		gap: 14px;
		padding: 28px 0;
	}

	.im-brands-directory__list > section > div {
		grid-template-columns: 1fr;
	}
}

/* 2.9.213: clearer navigation typography and breathing room below the header. */
.storefront-breadcrumb {
	padding-top: 20px !important;
}

.solere-site-header__nav > a,
.solere-site-header__login,
.intimatemart-mega-menu__trigger,
.solere-site-header__women > summary {
	font-size: clamp(.7rem,.72vw,.78rem) !important;
	font-weight: 500;
}

.intimatemart-mega-menu__inner > header p,
.solere-site-header__nav .intimatemart-mega-menu__inner > header a {
	font-size: .75rem;
}

.solere-site-header__nav .intimatemart-mega-menu__grid a {
	font-size: .81rem;
	line-height: 1.5;
}

.solere-site-header__nav .intimatemart-mega-menu__grid .intimatemart-mega-menu__parent {
	font-size: .78rem;
}

.solere-drill-menu__panel a,
.solere-drill-menu__panel > button {
	font-size: 1rem;
}

.solere-drill-menu__panel .solere-drill-menu__back {
	font-size: .88rem;
}

@media (max-width: 780px) {
	.storefront-breadcrumb {
		padding-top: 14px !important;
	}
}

/* 2.9.214: category headings use the homepage headline typography. */
body.tax-product_cat .woocommerce-products-header__title.page-title {
	margin: 0 !important;
	padding: 0 !important;
	font-family: Arial,Helvetica,sans-serif !important;
	font-size: clamp(40px,4.53125vw,58px) !important;
	font-weight: 300 !important;
	line-height: 1.103448 !important;
	letter-spacing: normal !important;
	text-align: left !important;
	text-transform: lowercase !important;
}

@media (max-width: 780px) {
	body.tax-product_cat .woocommerce-products-header__title.page-title {
		font-size: 40px !important;
		line-height: 1.075 !important;
	}
}

/* 2.9.233: approved temporary Arial wordmark with the original PNG X and heart. */
.intimatemart-wordmark--image {
	display: inline-flex !important;
	align-items: center;
	font-size: 0 !important;
	letter-spacing: 0 !important;
	line-height: 0 !important;
}

.intimatemart-wordmark--image .intimatemart-wordmark__image {
	display: block;
	width: 245px;
	max-width: none;
	height: auto;
	margin: 0;
}

.solere-footer .intimatemart-wordmark--image .intimatemart-wordmark__image {
	width: 280px;
}

@media (max-width: 780px) {
	.solere-site-header__logo.intimatemart-wordmark--image {
		font-size: 0 !important;
	}

	.solere-site-header__logo.intimatemart-wordmark--image .intimatemart-wordmark__image {
		width: clamp(160px,48vw,188px);
		max-height: 40px;
		object-fit: contain;
	}

	.solere-site-header__tools {
		gap: .5rem;
	}

	.solere-footer .intimatemart-wordmark--image .intimatemart-wordmark__image {
		width: 235px;
	}
}

/* 2.9.215: larger header wordmark without increasing navigation height. */
.solere-site-header__logo.intimatemart-wordmark {
	font-size: clamp(23px,1.75vw,26px) !important;
}

@media (max-width: 780px) {
	.solere-site-header__logo.intimatemart-wordmark {
		font-size: clamp(22px,6vw,24px) !important;
	}
}

/* 2.9.216: equal rhythm for homepage label, heading, and subtitle groups. */
.home .im-title-lockup,
.home .im-bundle-section > header {
	display: flex !important;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 10px;
}

.home .im-title-lockup > .im-title-eyebrow,
.home .im-title-lockup > h2,
.home .im-title-lockup > .im-title-subtitle,
.home .im-bundle-section > header > .im-title-eyebrow,
.home .im-bundle-section > header > h2,
.home .im-bundle-section > header > .im-title-subtitle {
	margin: 0 !important;
}

.home .im-home-hero__content > .im-title-eyebrow,
.home .solere-editorial-split__content > .im-title-eyebrow,
.home .solere-editorial-panel__content > .im-title-eyebrow,
.home .im-explore-banner .im-title-eyebrow,
.home .im-home-about .im-title-eyebrow {
	margin: 0 0 10px !important;
}

.home .im-home-hero__content > .im-title-subtitle,
.home .solere-editorial-split__content > .im-title-subtitle,
.home .solere-editorial-panel__content > .im-title-subtitle,
.home .im-explore-banner .im-title-subtitle,
.home .im-home-about .im-title-subtitle {
	margin-top: 10px !important;
}

.home .im-product-rail .solere-preview__section-head {
	margin-bottom: 32px !important;
}

@media (min-width: 781px) {
	.home .im-product-rail .solere-preview__section-head,
	.home .im-product-rail .solere-preview__section-head .im-title-lockup,
	.home .im-bundle-section > header {
		height: 112px;
		min-height: 112px;
	}
}

@media (max-width: 780px) {
	.home .im-title-lockup,
	.home .im-bundle-section > header {
		gap: 8px;
		height: auto;
		min-height: 0;
	}

	.home .im-product-rail .solere-preview__section-head {
		margin-bottom: 26px !important;
	}
}

/* 2.9.219: keep every homepage product-section title lockup on one rhythm. */
.home .im-product-rail .solere-preview__section-head .im-title-lockup > .im-title-eyebrow,
.home .im-product-rail .solere-preview__section-head .im-title-lockup > h2,
.home .im-product-rail .solere-preview__section-head .im-title-lockup > .im-title-subtitle,
.home .im-bundle-section > header > .im-title-eyebrow,
.home .im-bundle-section > header > h2,
.home .im-bundle-section > header > .im-title-subtitle {
	margin: 0 !important;
}

/* 2.9.220: extend the same title rhythm through hero and editorial groups. */
body.home .im-home-hero__content > .im-title-eyebrow,
body.home .solere-editorial-split__content > .im-title-eyebrow,
body.home .solere-editorial-panel__content > .im-title-eyebrow,
body.home .im-explore-banner .im-title-eyebrow,
body.home .im-home-about .im-title-eyebrow {
	margin-bottom: 10px !important;
}

body.home .im-home-hero__content > .im-title-subtitle,
body.home .solere-editorial-split__content > .im-title-subtitle,
body.home .solere-editorial-panel__content > .im-title-subtitle,
body.home .im-explore-banner .im-title-subtitle,
body.home .im-home-about .im-title-subtitle {
	margin-top: 10px !important;
}

@media (max-width: 780px) {
	body.home .im-home-hero__content > .im-title-eyebrow,
	body.home .solere-editorial-split__content > .im-title-eyebrow,
	body.home .solere-editorial-panel__content > .im-title-eyebrow,
	body.home .im-explore-banner .im-title-eyebrow,
	body.home .im-home-about .im-title-eyebrow {
		margin-bottom: 8px !important;
	}

	body.home .im-home-hero__content > .im-title-subtitle,
	body.home .solere-editorial-split__content > .im-title-subtitle,
	body.home .solere-editorial-panel__content > .im-title-subtitle,
	body.home .im-explore-banner .im-title-subtitle,
	body.home .im-home-about .im-title-subtitle {
		margin-top: 8px !important;
	}
}

/* 2.9.217: WooCommerce archives share the homepage light/bold title treatment. */
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .woocommerce-products-header__title.page-title {
	font-family: Arial,Helvetica,sans-serif !important;
	font-weight: 300 !important;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .woocommerce-products-header__title.page-title strong {
	font-family: Arial,Helvetica,sans-serif !important;
	font-weight: 900 !important;
}

/* 2.9.218: compact archive cards without the artificial action-area void. */
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product {
	height: auto !important;
	min-height: 0 !important;
	padding: 20px !important;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .woocommerce-LoopProduct-link {
	flex: 0 0 auto !important;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .price {
	margin: 12px 0 0 !important;
	padding-top: 0 !important;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .button {
	margin: 14px 0 0 !important;
}

@media (max-width: 780px) {
	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product {
		min-height: 0 !important;
		padding: 12px !important;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .price {
		margin-top: 10px !important;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) ul.products li.product .button {
		margin-top: 10px !important;
	}
}

/* Compact full-width consent bar inspired by modern luxury/retail notices. */
.cmplz-cookiebanner {
	top: auto !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	padding: 14px 28px !important;
	border: 0 !important;
	border-top: 1px solid #d8d8d8 !important;
	border-radius: 0 !important;
	box-shadow: 0 -8px 28px rgb(0 0 0 / 10%) !important;
	transform: none !important;
}

.cmplz-cookiebanner.cmplz-show {
	display: grid !important;
	grid-template-areas:
		"header body buttons"
		"header documents buttons";
	grid-template-columns: minmax(130px,180px) minmax(0,1fr) auto;
	align-items: center;
	column-gap: 24px;
	row-gap: 5px;
}

.cmplz-cookiebanner .cmplz-header {
	grid-area: header;
	align-self: center;
}

.cmplz-cookiebanner .cmplz-title {
	font-size: 12px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.cmplz-cookiebanner .cmplz-body {
	grid-area: body;
	min-width: 0;
}

.cmplz-cookiebanner .cmplz-message,
.cmplz-cookiebanner .cmplz-message p {
	margin: 0 !important;
	font-size: 12px !important;
	line-height: 1.45 !important;
}

.cmplz-cookiebanner .cmplz-buttons {
	grid-area: buttons;
	display: flex !important;
	align-items: center;
	gap: 8px;
}

.cmplz-cookiebanner .cmplz-btn {
	width: auto !important;
	min-width: 118px !important;
	min-height: 38px !important;
	padding: 0 18px !important;
	font-size: 10px !important;
	line-height: 1 !important;
}

.cmplz-cookiebanner .cmplz-documents {
	grid-area: documents;
	margin: 0 !important;
}

.cmplz-cookiebanner .cmplz-documents ul {
	display: flex !important;
	flex-wrap: wrap;
	gap: 5px 16px;
	margin: 0 !important;
	padding: 0 !important;
}

.cmplz-cookiebanner .cmplz-documents li,
.cmplz-cookiebanner .cmplz-documents a {
	margin: 0 !important;
	font-size: 10px !important;
	line-height: 1.25 !important;
}

.cmplz-cookiebanner .cmplz-divider,
.cmplz-cookiebanner .cmplz-links.cmplz-information {
	display: none !important;
}

.cmplz-cookiebanner .cmplz-close {
	top: 10px !important;
	right: 12px !important;
	width: 20px !important;
	height: 20px !important;
}

.cmplz-cookiebanner.cmplz-categories-visible {
	max-height: 78vh !important;
	overflow: auto !important;
}

#cmplz-manage-consent .cmplz-manage-consent {
	min-height: 28px !important;
	padding: 5px 9px !important;
	border: 1px solid #d0d0d0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	color: #555 !important;
	font-size: 9px !important;
	letter-spacing: .04em;
	text-transform: uppercase;
}

@media (max-width: 780px) {
	.cmplz-cookiebanner {
		padding: 14px 16px !important;
	}

	.cmplz-cookiebanner.cmplz-show {
		grid-template-areas:
			"header"
			"body"
			"buttons"
			"documents";
		grid-template-columns: minmax(0,1fr);
		align-items: stretch;
		gap: 10px;
	}

	.cmplz-cookiebanner .cmplz-buttons {
		display: grid !important;
		grid-template-columns: repeat(2,minmax(0,1fr));
	}

	.cmplz-cookiebanner .cmplz-btn {
		width: 100% !important;
		min-width: 0 !important;
	}
}

/* 2.9.222: restore the original squared catalog filters with even controls. */
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary {
	min-width: 108px;
	min-height: 40px;
	padding: 0 16px;
	border: 1px solid #bbb;
	border-radius: 0;
	background: #fff;
	box-shadow: none;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .1em;
	transform: none;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary:hover,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary:focus-visible,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters[open] > summary {
	border-color: #111;
	background: #111;
	box-shadow: none;
	color: #fff;
	transform: none;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary span,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary span::before,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters > summary span::after {
	width: 15px;
	border-radius: 0;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel {
	top: 100%;
	right: -20px;
	left: -20px;
	grid-template-columns: minmax(0,1fr) minmax(0,1fr) minmax(140px,160px) minmax(140px,160px);
	gap: 28px;
	padding: 28px 20px;
	border: 0;
	border-bottom: 1px solid #e2e2e2;
	border-radius: 0;
	background: #fff;
	box-shadow: 0 10px 20px rgb(0 0 0 / 3%);
	animation: none;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel > section {
	min-width: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel h2 {
	margin: 0 0 12px;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .12em;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel h2::before {
	display: none;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 8px;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values a,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-stock-filter,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-clear {
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	height: 44px;
	min-height: 44px;
	padding: 0 10px;
	border: 1px solid #bbb;
	border-radius: 0;
	background: #fff;
	box-shadow: none;
	color: #111;
	font-size: 10px;
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: .01em;
	white-space: nowrap;
	transform: none;
}

body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values a:hover,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values a:focus-visible,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-stock-filter:hover,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-stock-filter:focus-visible,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-clear:hover,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-clear:focus-visible {
	border-color: #111;
	background: #111;
	box-shadow: none;
	color: #fff;
	transform: none;
}

@media (max-width: 780px) {
	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel {
		top: 100%;
		right: -12px;
		left: -12px;
		grid-template-columns: 1fr 1fr;
		gap: 18px 12px;
		padding: 18px 12px 24px;
		border-radius: 0;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel > section {
		padding: 0;
		border-radius: 0;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values {
		grid-template-columns: 1fr;
		gap: 7px;
	}
}

/* 2.9.267: static exotic-color blur for homepage title accents. */
body.home .im-home-hero,
body.home #top-sellers,
body.home #most-wanted-vibes {
	--im-glare-rgb: 255 0 249;
	--im-glare-delay: 0s;
}

body.home #up-to-80-off,
body.home .im-bundle-section,
body.home #for-her-products,
body.home #shop-by-audience .im-audience-split__card:nth-child(1) {
	--im-glare-rgb: 255 0 121;
	--im-glare-delay: -2.4s;
}

body.home #enhance-the-experience,
body.home #for-him-products,
body.home #shop-by-audience .im-audience-split__card:nth-child(2) {
	--im-glare-rgb: 189 0 61;
	--im-glare-delay: -4.8s;
}

body.home #trending-now,
body.home #trending-manufacturers {
	--im-glare-rgb: 255 0 134;
	--im-glare-delay: -7.2s;
}

body.home #sexcation-must-haves,
body.home .im-explore-banner {
	--im-glare-rgb: 255 0 82;
	--im-glare-delay: -9.6s;
}

body.home .im-home-hero__content h1 > strong,
body.home .im-product-rail .solere-preview__section-head h2 > strong,
body.home .im-bundle-section > header h2 > strong,
body.home .im-explore-banner h2 > strong,
body.home .im-audience-split__content h2 > strong {
	display: inline-block;
	background: none;
	color: rgb(var(--im-glare-rgb)) !important;
	filter:
		drop-shadow(0 0 12px rgb(var(--im-glare-rgb) / 38%))
		drop-shadow(0 0 28px rgb(var(--im-glare-rgb) / 16%));
	font-weight: 600 !important;
	-webkit-text-fill-color: currentColor;
	animation: none;
}

/* 2.9.256: align the hero and editorial banner lockups with product-section titles. */
@media (min-width: 781px) {
	body.home .im-home-hero__content,
	body.home .im-explore-banner > .wp-block-cover__inner-container {
		box-sizing: border-box;
		width: min(1360px, calc(100% - 16px)) !important;
		max-width: 1360px !important;
		margin-right: auto !important;
		margin-left: auto !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}
}

@media (max-width: 780px) {
	body.home .im-home-hero {
		padding-right: 16px !important;
		padding-left: 16px !important;
	}

	body.home .im-explore-banner > .wp-block-cover__inner-container {
		box-sizing: border-box;
		width: calc(100% - 32px) !important;
		margin-right: 16px !important;
		margin-left: 16px !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}
}

/* 2.9.223: contained single-product image with thumbnail navigation. */
body.single-product.storefront-full-width-content div.product .woocommerce-product-gallery {
	align-self: start;
	box-sizing: border-box;
	height: auto !important;
	padding: 48px 44px 0;
	overflow: hidden !important;
}

.single-product div.product .woocommerce-product-gallery .flex-viewport {
	width: 100%;
	overflow: hidden;
}

.single-product div.product .woocommerce-product-gallery__image a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 1;
	background: #fff;
}

.single-product div.product .woocommerce-product-gallery__image img {
	width: 100%;
	height: 100%;
	max-height: 500px;
	object-fit: contain;
	object-position: center;
}

.single-product div.product .flex-control-thumbs {
	display: grid !important;
	grid-template-columns: repeat(5,minmax(0,64px));
	justify-content: center;
	gap: 8px;
	margin: 14px 0 0 !important;
	padding: 0 !important;
	list-style: none;
}

.single-product div.product .flex-control-thumbs li {
	float: none !important;
	width: 64px !important;
	height: 64px !important;
	margin: 0 !important;
}

.single-product div.product .flex-control-thumbs img {
	box-sizing: border-box;
	display: block;
	width: 64px !important;
	max-width: none !important;
	height: 64px !important;
	padding: 4px;
	border: 1px solid #d8d8d8;
	border-radius: 0 !important;
	background: #fff;
	object-fit: contain;
	opacity: .62;
	cursor: pointer;
}

.single-product div.product .flex-control-thumbs img:hover,
.single-product div.product .flex-control-thumbs img.flex-active {
	border-color: #111;
	opacity: 1;
}

@media (max-width: 780px) {
	body.single-product.storefront-full-width-content div.product .woocommerce-product-gallery {
		padding: 24px 16px 0;
	}

	.single-product div.product .flex-control-thumbs {
		grid-template-columns: repeat(5,minmax(0,52px));
		gap: 6px;
		margin-top: 10px !important;
	}

	.single-product div.product .flex-control-thumbs li,
	.single-product div.product .flex-control-thumbs img {
		width: 52px !important;
		height: 52px !important;
	}
}

/* 2.9.225: align product columns and surface express checkout before details. */
@media (min-width: 781px) {
	body.single-product.storefront-full-width-content div.product .woocommerce-product-gallery {
		padding-top: 82px;
	}
}

.single-product .solere-product-panel > .intimatemart-product-brand {
	order: -1;
}

.single-product .solere-product-panel > .product_title {
	order: 0;
}

.single-product .solere-product-panel > .price {
	order: 1;
}

.single-product .solere-product-panel > .woocommerce-product-details__short-description {
	order: 2;
}

.single-product .solere-product-panel > .solere-made-to-order-notice {
	order: 3;
}

.single-product .solere-product-panel > .stock {
	order: 4;
}

.single-product .solere-product-panel > form.cart {
	order: 5;
}

.single-product .solere-product-panel > .ppcp-messages {
	order: 6;
	margin: 18px 0 10px !important;
}

.single-product .solere-product-panel > .ppc-button-wrapper {
	order: 7;
	margin: 0 0 24px !important;
}

.single-product .solere-product-panel > .solere-product-accordions {
	order: 8;
}

.single-product .solere-product-panel > .edit-link {
	order: 9;
}

/* 2.9.229: shared merchandising lockup and unclipped mobile product actions. */
.home .im-product-rail .solere-preview__section-head .im-title-lockup,
.single-product .related.im-product-rail .solere-preview__section-head .im-title-lockup {
	display: flex !important;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
}

.home .im-product-rail .im-title-lockup > .im-title-eyebrow,
.home .im-product-rail .im-title-lockup > h2,
.home .im-product-rail .im-title-lockup > .im-title-subtitle,
.single-product .related.im-product-rail .im-title-lockup > .im-title-eyebrow,
.single-product .related.im-product-rail .im-title-lockup > h2,
.single-product .related.im-product-rail .im-title-lockup > .im-title-subtitle {
	margin: 0 !important;
	padding: 0 !important;
}

.home .im-product-rail .solere-preview__section-head h2,
.single-product .related.im-product-rail .solere-preview__section-head h2 {
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: clamp(40px,4.53125vw,58px) !important;
	font-weight: 300 !important;
	line-height: 1.103448 !important;
	letter-spacing: normal !important;
	text-align: left !important;
	text-transform: lowercase !important;
	overflow: visible !important;
}

.home .im-product-rail .solere-preview__section-head h2 strong,
.single-product .related.im-product-rail .solere-preview__section-head h2 strong {
	font-family: Arial, Helvetica, sans-serif !important;
	font-weight: 900 !important;
}

.home .im-product-rail .solere-preview__section-head .im-title-eyebrow,
.single-product .related.im-product-rail .solere-preview__section-head .im-title-eyebrow {
	color: #6d6866;
	font: 900 11px/13px Arial, Helvetica, sans-serif !important;
	letter-spacing: 4px !important;
	text-align: left !important;
	text-transform: uppercase !important;
}

.home .im-product-rail .solere-preview__section-head .im-title-subtitle,
.single-product .related.im-product-rail .solere-preview__section-head .im-title-subtitle {
	border: 0 !important;
	font: 900 clamp(17px,1.640625vw,21px)/1.285714 Arial, Helvetica, sans-serif !important;
	letter-spacing: 2.25px !important;
	text-align: left !important;
	text-transform: none !important;
}

@media (min-width: 781px) {
	.home .im-product-rail .solere-preview__section-head .im-title-lockup,
	.single-product .related.im-product-rail .solere-preview__section-head .im-title-lockup {
		height: 112px;
		min-height: 112px;
	}
}

@media (max-width: 780px) {
	.home .im-product-rail .solere-preview__section-head .im-title-lockup,
	.single-product .related.im-product-rail .solere-preview__section-head .im-title-lockup {
		gap: 8px;
		height: auto;
		min-height: 0;
	}

	.home .im-product-rail .solere-preview__section-head h2,
	.single-product .related.im-product-rail .solere-preview__section-head h2 {
		font-size: 40px !important;
		line-height: 43px !important;
	}

	.home .im-product-rail .solere-preview__section-head .im-title-subtitle,
	.single-product .related.im-product-rail .solere-preview__section-head .im-title-subtitle {
		font-size: 17px !important;
		line-height: 22px !important;
		letter-spacing: 1.75px !important;
	}

	.single-product .related.im-product-rail > .woocommerce.im-product-carousel,
	.single-product .related.im-product-rail > .woocommerce ul.products {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100% !important;
	}

	.single-product .related.im-product-rail > .woocommerce ul.products {
		display: flex !important;
		gap: 12px !important;
		padding: 0 0 18px !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		scroll-padding-inline: 0;
		scroll-snap-type: x mandatory;
	}

	body.single-product .related.im-product-rail ul.products li.product {
		box-sizing: border-box !important;
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		scroll-snap-align: start;
		scroll-snap-stop: always;
	}

	.single-product .related.im-product-rail ul.products li.product .button {
		box-sizing: border-box !important;
		width: calc(100% - 32px) !important;
		max-width: calc(100% - 32px) !important;
		margin-right: auto !important;
		margin-bottom: 20px !important;
		margin-left: auto !important;
		overflow: visible !important;
	}

	/* One shared 16px card-content edge for every related-product field. */
	.single-product .related.im-product-rail ul.products li.product .intimatemart-product-brand,
	.single-product .related.im-product-rail ul.products li.product .woocommerce-loop-product__title,
	.single-product .related.im-product-rail ul.products li.product .price,
	.single-product .related.im-product-rail ul.products li.product .button {
		box-sizing: border-box !important;
		width: calc(100% - 32px) !important;
		max-width: calc(100% - 32px) !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	.single-product .related.im-product-rail ul.products li.product .intimatemart-product-brand {
		margin-top: 18px !important;
		margin-bottom: 4px !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.single-product .related.im-product-rail ul.products li.product .woocommerce-loop-product__title {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.single-product .related.im-product-rail ul.products li.product .price {
		margin-top: 8px !important;
		margin-bottom: 0 !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}
}

/* 2.9.231: native Blog archive and editorial article system. */
body:is(.blog,.single-post) .storefront-breadcrumb {
	display: none !important;
}

body:is(.blog,.single-post) .site-content > .col-full,
body:is(.blog,.single-post) .content-area,
body:is(.blog,.single-post) .site-main {
	box-sizing: border-box;
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.im-blog-index,
.im-article {
	color: #111;
	font-family: Arial, Helvetica, sans-serif;
}

.im-blog-index__hero {
	padding: 96px 32px 92px;
	background: #f5efec;
}

.im-blog-index__hero-inner {
	width: 100%;
	max-width: 1360px;
	margin: 0 auto;
}

.im-blog-index__hero .im-title-eyebrow,
.im-article__header .im-title-eyebrow {
	margin: 0 0 14px;
	color: #6d6866;
	font: 900 11px/13px Arial, Helvetica, sans-serif !important;
	letter-spacing: 4px;
	text-transform: uppercase;
}

.im-blog-index__hero h1 {
	max-width: 940px;
	margin: 0;
	font: 300 clamp(48px,6vw,82px)/.98 Arial, Helvetica, sans-serif;
	letter-spacing: -.045em;
	text-transform: lowercase;
}

.im-blog-index__hero h1 strong,
.im-blog-index__heading h2 strong,
.im-article__footer h2 strong {
	font-weight: 900;
}

.im-blog-index__hero-inner > p:last-child {
	max-width: 650px;
	margin: 24px 0 0;
	color: #393634;
	font-size: 18px;
	line-height: 1.6;
}

.im-blog-index__content {
	box-sizing: border-box;
	width: 100%;
	max-width: 1360px;
	margin: 0 auto;
	padding: 82px 32px 110px;
}

.im-blog-index__heading {
	margin-bottom: 34px;
}

.im-blog-index__heading > p,
.im-article__footer > div > p {
	margin: 0 0 10px;
	color: #6d6866;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 3.2px;
	text-transform: uppercase;
}

.im-blog-index__heading h2,
.im-article__footer h2 {
	margin: 0;
	font: 300 clamp(34px,4vw,54px)/1.02 Arial, Helvetica, sans-serif;
	letter-spacing: -.04em;
	text-transform: lowercase;
}

.im-blog-grid {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 46px 22px;
}

.im-blog-card {
	margin: 0;
	background: #fff;
}

.im-blog-card--featured {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: minmax(0,1.7fr) minmax(330px,.8fr);
	align-items: stretch;
	min-height: 590px;
	border: 1px solid #ddd7d3;
}

.im-blog-card__image {
	display: block;
	background: #eee9e6;
	overflow: hidden;
}

.im-blog-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 300px;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	transition: transform .45s ease;
}

.im-blog-card:hover .im-blog-card__image img,
.im-blog-card:focus-within .im-blog-card__image img {
	transform: scale(1.018);
}

.im-blog-card__body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 24px 2px 0;
}

.im-blog-card--featured .im-blog-card__body {
	justify-content: center;
	padding: 54px;
}

.im-blog-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 18px;
	margin: 0 0 18px;
	color: #706b68;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.im-blog-card h2 {
	margin: 0 0 16px;
	font: 500 clamp(23px,2.2vw,36px)/1.08 Arial, Helvetica, sans-serif;
	letter-spacing: -.03em;
}

.im-blog-card h2 a {
	color: #111;
	text-decoration: none;
}

.im-blog-card__body > p:not(.im-blog-card__meta) {
	margin: 0 0 24px;
	color: #4c4845;
	font-size: 15px;
	line-height: 1.65;
}

.im-blog-card__link,
.im-article__back,
.im-article__footer > a {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding-bottom: 3px;
	border-bottom: 1px solid currentColor;
	color: #111;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .13em;
	text-decoration: none;
	text-transform: uppercase;
}

.im-blog-index .navigation.pagination {
	margin-top: 70px;
	text-align: center;
}

.im-article__header {
	box-sizing: border-box;
	width: 100%;
	max-width: 1040px;
	margin: 0 auto;
	padding: 88px 32px 54px;
}

.im-article__back {
	margin-bottom: 56px;
}

.im-article__header h1 {
	margin: 0;
	font: 500 clamp(46px,5.5vw,76px)/1.01 Arial, Helvetica, sans-serif;
	letter-spacing: -.048em;
}

.im-article__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 22px;
	margin-top: 28px;
	color: #696461;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.im-article__featured {
	width: 100%;
	max-width: 1360px;
	margin: 0 auto 78px;
	padding: 0 32px;
}

.im-article__featured img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 880px;
	object-fit: cover;
}

.im-article__content {
	box-sizing: border-box;
	width: 100%;
	max-width: 850px;
	margin: 0 auto;
	padding: 0 32px;
	color: #292624;
	font-size: 18px;
	line-height: 1.78;
}

.im-article__content > p:first-child,
.im-article__content .im-post-lede {
	color: #111;
	font-size: clamp(21px,2vw,26px);
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: -.012em;
}

.im-article__content h2 {
	margin: 72px 0 22px;
	font: 600 clamp(31px,4vw,46px)/1.08 Arial, Helvetica, sans-serif !important;
	letter-spacing: -.04em;
}

.im-article__content h3 {
	margin: 46px 0 14px;
	font: 700 clamp(21px,2.4vw,28px)/1.2 Arial, Helvetica, sans-serif !important;
	letter-spacing: -.025em;
}

.im-article__content p,
.im-article__content ul,
.im-article__content ol {
	margin-top: 0;
	margin-bottom: 24px;
}

.im-article__content li + li {
	margin-top: 10px;
}

.im-article__content a {
	color: #111;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.im-article__content figure.wp-block-image {
	position: relative;
	left: 50%;
	width: min(1120px,calc(100vw - 64px));
	margin: 62px 0 60px !important;
	transform: translateX(-50%);
}

.im-article__content figure.wp-block-image img {
	display: block;
	width: 100%;
	height: auto;
}

.im-article__content figcaption {
	margin-top: 10px;
	color: #6c6763;
	font-size: 12px;
	line-height: 1.5;
	text-align: left;
}

.im-guide-summary,
.im-guide-note,
.im-guide-cta,
.im-source-list {
	box-sizing: border-box;
	margin: 42px 0;
	padding: 28px 30px;
	border: 1px solid #d8d1cd;
	background: #faf7f5;
}

.im-guide-summary > :last-child,
.im-guide-note > :last-child,
.im-guide-cta > :last-child,
.im-source-list > :last-child {
	margin-bottom: 0;
}

.im-guide-summary strong:first-child,
.im-guide-note strong:first-child {
	display: block;
	margin-bottom: 8px;
	font-size: 11px;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.im-comparison-table {
	width: min(1060px,calc(100vw - 64px));
	margin: 44px 50% 54px;
	overflow-x: auto;
	transform: translateX(-50%);
}

.im-comparison-table table {
	width: 100%;
	min-width: 720px;
	margin: 0;
	border-collapse: collapse;
	font-size: 15px;
	line-height: 1.55;
}

.im-comparison-table :is(th,td) {
	padding: 17px 18px;
	border: 1px solid #d8d1cd;
	text-align: left;
	vertical-align: top;
}

.im-comparison-table th {
	background: #f5efec;
	font-weight: 800;
}

.im-guide-cta {
	background: #111;
	color: #fff;
}

.im-guide-cta a {
	color: #fff;
}

.im-guide-disclaimer {
	color: #66605c;
	font-size: 13px;
	line-height: 1.6;
}

.im-article__footer {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 34px;
	box-sizing: border-box;
	width: calc(100% - 64px);
	max-width: 1120px;
	margin: 94px auto 112px;
	padding: 48px 0 0;
	border-top: 1px solid #d8d1cd;
}

@media (max-width: 780px) {
	.im-blog-index__hero {
		padding: 64px 18px 60px;
	}

	.im-blog-index__hero h1 {
		font-size: 48px;
	}

	.im-blog-index__hero-inner > p:last-child {
		font-size: 16px;
	}

	.im-blog-index__content {
		padding: 58px 18px 78px;
	}

	.im-blog-grid,
	.im-blog-card--featured {
		display: grid;
		grid-template-columns: 1fr;
		gap: 38px;
	}

	.im-blog-card--featured {
		gap: 0;
		min-height: 0;
	}

	.im-blog-card--featured .im-blog-card__body {
		padding: 30px 24px 34px;
	}

	.im-blog-card h2 {
		font-size: 27px;
	}

	.im-article__header {
		padding: 56px 18px 38px;
	}

	.im-article__back {
		margin-bottom: 42px;
	}

	.im-article__header h1 {
		font-size: 43px;
		line-height: 1.04;
	}

	.im-article__meta {
		gap: 8px 14px;
		margin-top: 22px;
	}

	.im-article__featured {
		margin-bottom: 52px;
		padding: 0 18px;
	}

	.im-article__content {
		padding: 0 20px;
		font-size: 17px;
		line-height: 1.72;
	}

	.im-article__content h2 {
		margin-top: 58px;
		font-size: 32px !important;
	}

	.im-article__content h3 {
		margin-top: 40px;
		font-size: 23px !important;
	}

	.im-article__content figure.wp-block-image,
	.im-comparison-table {
		width: calc(100vw - 36px);
	}

	.im-guide-summary,
	.im-guide-note,
	.im-guide-cta,
	.im-source-list {
		padding: 23px 20px;
	}

	.im-article__footer {
		align-items: flex-start;
		flex-direction: column;
		width: calc(100% - 36px);
		margin-top: 72px;
		margin-bottom: 78px;
		padding-top: 36px;
	}
}

/* 2.9.241: hero and campaign banner use the product-section title rhythm. */
body.home .im-title-lockup--hero,
body.home .im-title-lockup--banner {
	display: flex !important;
	align-items: flex-start;
	flex-direction: column;
	justify-content: flex-start;
	gap: 10px;
	height: auto;
	min-height: 0;
	text-align: left;
}

body.home .im-title-lockup--hero > .im-title-eyebrow,
body.home .im-title-lockup--hero > h1,
body.home .im-title-lockup--hero > .im-title-subtitle,
body.home .im-title-lockup--banner > .im-title-eyebrow,
body.home .im-title-lockup--banner > h2,
body.home .im-title-lockup--banner > .im-title-subtitle {
	margin: 0 !important;
	text-align: left !important;
}

body.home .im-home-hero__content > a {
	margin-top: 22px;
}

body.home .im-explore-banner__cta {
	margin: 22px 0 0 !important;
}

body.home .im-explore-banner__cta > a {
	margin-top: 0;
}

@media (max-width: 780px) {
	body.home .im-title-lockup--hero,
	body.home .im-title-lockup--banner {
		gap: 8px;
	}

	body.home .im-home-hero__content > a,
	body.home .im-explore-banner__cta {
		margin-top: 18px !important;
	}
}

/* 2.9.242: one authoritative floating-label system for every WooCommerce form. */
:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field,
:is(.woocommerce-cart, .woocommerce-checkout) :is(.wc-block-components-text-input, .wc-block-components-combobox, .wc-block-components-select).im-floating-field {
	position: relative !important;
	isolation: isolate;
}

:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field > label:not(.woocommerce-form__label-for-checkbox, .screen-reader-text),
:is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-text-input.im-floating-field > label,
:is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-combobox.im-floating-field .wc-block-components-combobox-control > label,
:is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-select.im-floating-field > label {
	position: absolute !important;
	z-index: 20 !important;
	top: 26px !important;
	left: 14px !important;
	display: inline-flex !important;
	align-items: center;
	width: auto !important;
	max-width: calc(100% - 28px);
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #666 !important;
	font: 400 15px/1 Arial, Helvetica, sans-serif !important;
	letter-spacing: 0 !important;
	white-space: nowrap;
	pointer-events: none;
	text-decoration: none !important;
	text-transform: none !important;
	transform: translateY(-50%) scale(1) !important;
	transform-origin: left center !important;
	transition: top .2s cubic-bezier(.2,.75,.3,1), left .2s ease, transform .2s cubic-bezier(.2,.75,.3,1), color .2s ease, background-color .2s ease, padding .2s ease, box-shadow .2s ease !important;
}

:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field:is(:focus-within, .im-has-value) > label:not(.woocommerce-form__label-for-checkbox, .screen-reader-text),
:is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-text-input.im-floating-field:is(:focus-within, .im-has-value) > label,
:is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-combobox.im-floating-field:is(:focus-within, .im-has-value) .wc-block-components-combobox-control > label,
:is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-select.im-floating-field:is(:focus-within, .im-has-value) > label {
	z-index: 20 !important;
	top: 0 !important;
	left: 14px !important;
	padding: 0 5px !important;
	background: #fff !important;
	box-shadow: -2px 0 0 2px #fff, 2px 0 0 2px #fff !important;
	color: #111 !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .035em !important;
	line-height: 1 !important;
	text-transform: uppercase !important;
	transform: translateY(-50%) scale(.96) !important;
}

:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]), select, textarea),
:is(.woocommerce-cart, .woocommerce-checkout) :is(.wc-block-components-text-input, .wc-block-components-combobox, .wc-block-components-select).im-floating-field :is(input, select, textarea) {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	min-height: 52px !important;
	padding-right: 14px !important;
	padding-left: 14px !important;
	border: 1px solid #777 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	font-size: 16px !important;
	transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease !important;
}

:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field:focus-within :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]), select, textarea),
:is(.woocommerce-cart, .woocommerce-checkout) :is(.wc-block-components-text-input, .wc-block-components-combobox, .wc-block-components-select).im-floating-field:focus-within :is(input, select, textarea) {
	border-color: #111 !important;
	box-shadow: 0 0 0 1px #111 !important;
	outline: 0 !important;
}

:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field.woocommerce-invalid > label:not(.woocommerce-form__label-for-checkbox, .screen-reader-text),
:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field.woocommerce-invalid-required-field > label:not(.woocommerce-form__label-for-checkbox, .screen-reader-text) {
	color: #9c1c1c !important;
}

:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field.woocommerce-invalid :is(input, select, textarea),
:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field.woocommerce-invalid-required-field :is(input, select, textarea) {
	border-color: #9c1c1c !important;
}

:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field input::placeholder,
:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field textarea::placeholder {
	color: transparent !important;
	transition: color .18s ease;
}

:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field:focus-within input::placeholder,
:is(.woocommerce form .form-row, .solere-login-drawer form.login > p).im-floating-field:focus-within textarea::placeholder {
	color: #777 !important;
}

.woocommerce form .form-row.im-floating-field .password-input {
	position: static;
}

.woocommerce form .form-row.im-floating-field .password-input .show-password-input {
	z-index: 4;
}

/* 2.9.243: outrank legacy :has() rules so empty labels actually begin inside fields. */
#page .woocommerce form .form-row.im-floating-field > label:not(.woocommerce-form__label-for-checkbox, .screen-reader-text),
#page .solere-login-drawer form.login > p.im-floating-field > label,
#page :is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-text-input.im-floating-field > label,
#page :is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-combobox.im-floating-field .wc-block-components-combobox-control > label,
#page :is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-select.im-floating-field > label {
	top: 26px !important;
	left: 14px !important;
	padding: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #666 !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	transform: translateY(-50%) scale(1) !important;
}

#page .woocommerce form .form-row.im-floating-field:is(:focus-within, .im-has-value) > label:not(.woocommerce-form__label-for-checkbox, .screen-reader-text),
#page .solere-login-drawer form.login > p.im-floating-field:is(:focus-within, .im-has-value) > label,
#page :is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-text-input.im-floating-field:is(:focus-within, .im-has-value) > label,
#page :is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-combobox.im-floating-field:is(:focus-within, .im-has-value) .wc-block-components-combobox-control > label,
#page :is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-select.im-floating-field:is(:focus-within, .im-has-value) > label {
	top: 0 !important;
	left: 14px !important;
	padding: 0 5px !important;
	background: #fff !important;
	box-shadow: -2px 0 0 2px #fff, 2px 0 0 2px #fff !important;
	color: #111 !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .035em !important;
	text-transform: uppercase !important;
	transform: translateY(-50%) scale(.96) !important;
}

/* Keep the My Account feature image for sharing metadata, but never render it as a page banner. */
.woocommerce-account .entry-header > .wp-post-image {
	display: none !important;
}

/* 2.9.244: account titles sit above and align with the navigation/content grid. */
.woocommerce-account.logged-in .entry-header {
	box-sizing: border-box;
	width: 100%;
	max-width: 1180px;
	margin: 0 auto 42px !important;
	padding: 0 !important;
	text-align: left !important;
}

.woocommerce-account.logged-in .entry-header .entry-title {
	margin: 0 !important;
	color: #111;
	font: 400 clamp(2.25rem, 4vw, 4rem)/.98 Arial, Helvetica, sans-serif !important;
	letter-spacing: -.055em !important;
	text-align: left !important;
	text-transform: none !important;
}

.woocommerce-account.logged-in .entry-header .entry-title strong {
	font-weight: 800;
}

@media (max-width: 780px) {
	.woocommerce-account.logged-in .entry-header {
		margin-bottom: 30px !important;
	}

	.woocommerce-account.logged-in .entry-header .entry-title {
		font-size: clamp(2rem, 10vw, 3rem) !important;
	}
}

/* 2.9.245: Shipping & Delivery uses the storefront's regular/bold title language. */
body.page-shipping-delivery .entry-header .entry-title {
	margin: 0 0 2.5rem !important;
	color: #111;
	font: 400 clamp(2.25rem, 4vw, 4rem)/.98 Arial, Helvetica, sans-serif !important;
	letter-spacing: -.055em !important;
	text-align: left !important;
	text-transform: none !important;
}

body.page-shipping-delivery .entry-header .entry-title strong {
	font-weight: 800;
}

@media (max-width: 780px) {
	body.page-shipping-delivery .entry-header .entry-title {
		font-size: clamp(2rem, 10vw, 3rem) !important;
	}
}

/* 2.9.246: balanced catalog filters with readable brands and aligned actions. */
@media (min-width: 781px) {
	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel {
		grid-template-columns: repeat(2,minmax(0,1fr));
		gap: 24px 28px;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-group--category .solere-filter-values {
		grid-template-columns: repeat(3,minmax(0,1fr));
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-group--brand .solere-filter-values {
		grid-template-columns: repeat(2,minmax(0,1fr));
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values a {
		height: 48px;
		min-height: 48px;
		padding: 0 14px;
		overflow: visible;
		font-size: 10px;
		text-overflow: clip;
		white-space: nowrap;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-actions {
		grid-column: 1/-1;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		gap: 12px;
		padding-top: 18px;
		border-top: 1px solid #e2e2e2;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-group--availability {
		display: grid;
		grid-template-columns: auto 180px;
		align-items: center;
		gap: 12px;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-group--availability h2 {
		margin: 0;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-stock-filter,
	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-clear {
		width: 180px;
		height: 48px;
		min-height: 48px;
	}
}

@media (max-width: 780px) {
	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-actions {
		grid-column: 1/-1;
		display: grid;
		grid-template-columns: repeat(2,minmax(0,1fr));
		align-items: end;
		gap: 10px;
		padding-top: 14px;
		border-top: 1px solid #e2e2e2;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-group--availability {
		display: grid;
		grid-template-columns: 1fr;
		gap: 7px;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-group--availability h2 {
		margin-bottom: 0;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-actions .solere-filter-clear {
		width: 100%;
	}
}

/* 2.9.247: equal mobile filter controls and lighter option typography. */
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values a,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-stock-filter,
body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-clear {
	font-weight: 400;
}

@media (max-width: 780px) {
	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-catalog-filters__panel > .solere-filter-group {
		grid-column: 1/-1;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values {
		grid-template-columns: repeat(2,minmax(0,1fr));
		gap: 10px;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-values a,
	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-stock-filter,
	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-clear {
		height: 48px;
		min-height: 48px;
		padding: 0 10px;
		overflow: hidden;
		font-size: 10px;
		line-height: 1.15;
		text-overflow: clip;
		white-space: normal;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-group--availability,
	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-actions {
		grid-template-columns: repeat(2,minmax(0,1fr));
		gap: 10px;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-group--availability h2 {
		grid-column: 1/-1;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-group--availability .solere-stock-filter {
		grid-column: 1/-1;
	}

	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-actions > .solere-filter-group--availability,
	body:is(.woocommerce-shop,.tax-product_cat,.tax-product_tag,.post-type-archive-product) .solere-filter-actions > .solere-filter-clear {
		grid-column: auto;
	}
}

/* 2.9.259: keep the hero accent legible over campaign photography. */
body.home .im-home-hero__content h1 > strong {
	background: none;
	color: #fff !important;
	filter:
		drop-shadow(0 1px 10px rgb(0 0 0 / 55%))
		drop-shadow(0 0 14px rgb(255 0 249 / 40%))
		drop-shadow(0 0 30px rgb(255 0 249 / 18%));
	-webkit-text-fill-color: currentColor;
	animation: none;
}

/* 2.9.260: order-tracking CTA matches the storefront button system. */
.woocommerce-form-track-order button.button[name="track"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: auto;
	min-width: 190px;
	height: 48px !important;
	min-height: 48px !important;
	padding: 0 26px !important;
	border: 1px solid #111;
	border-radius: 6px !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #111 !important;
	font: 400 .72rem/1 Arial, Helvetica, sans-serif !important;
	letter-spacing: .08em;
	text-transform: uppercase;
	transition: background-color .2s ease, color .2s ease;
}

.woocommerce-form-track-order button.button[name="track"]:hover,
.woocommerce-form-track-order button.button[name="track"]:focus-visible {
	background: #111 !important;
	color: #fff !important;
}

@media (max-width: 480px) {
	.woocommerce-form-track-order button.button[name="track"] {
		width: 100%;
	}
}

/* 2.9.261: black archive-style headings for supplier brands and legal pages. */
body.woocommerce-shop .woocommerce-products-header__title.page-title,
body.woocommerce-shop .woocommerce-products-header__title.page-title strong {
	color: #111 !important;
}

body:is(
	.page-privacy-policy,
	.page-cookie-policy,
	.page-terms-and-conditions,
	.page-refund-returns,
	.page-opt-out-preferences
) .entry-header .entry-title {
	margin: 0 0 2.5rem !important;
	color: #111 !important;
	font: 300 clamp(1.55rem, 2vw, 1.85rem)/1.15 Arial, Helvetica, sans-serif !important;
	letter-spacing: 0 !important;
	text-align: left !important;
	text-transform: none !important;
}

body:is(
	.page-privacy-policy,
	.page-cookie-policy,
	.page-terms-and-conditions,
	.page-refund-returns,
	.page-opt-out-preferences
) .entry-header .entry-title strong {
	color: #111 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-weight: 900 !important;
}

@media (max-width: 780px) {
	body:is(
		.page-privacy-policy,
		.page-cookie-policy,
		.page-terms-and-conditions,
		.page-refund-returns,
		.page-opt-out-preferences
	) .entry-header .entry-title {
		font-size: clamp(1.55rem, 8vw, 2rem) !important;
	}
}

/* 2.9.262: strict, banner-free legal-document presentation. */
body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) .storefront-breadcrumb,
body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) .entry-header > .wp-post-image,
body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) article > .wp-post-image {
	display: none !important;
}

body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) .site-content > .col-full {
	box-sizing: border-box;
	width: 100%;
	max-width: 960px;
	margin-inline: auto;
	padding: 4.5rem 24px 7rem;
}

body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) :is(.content-area,.site-main,article) {
	float: none;
	width: 100%;
	margin: 0;
}

body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) :is(.entry-header,.entry-content) {
	width: 100%;
	max-width: 820px;
	margin-inline: auto;
}

body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) .entry-header .entry-title {
	margin: 0 0 2.5rem !important;
	color: #111 !important;
	font: 300 clamp(1.55rem, 2vw, 1.85rem)/1.15 Arial, Helvetica, sans-serif !important;
	letter-spacing: 0 !important;
	text-align: left !important;
	text-transform: none !important;
}

body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) .entry-header .entry-title strong {
	color: #111 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-weight: 900 !important;
}

body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) .entry-content {
	color: #161616;
	font: 400 .94rem/1.75 Arial, Helvetica, sans-serif;
}

body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) .entry-content h2 {
	margin: 2.75rem 0 1rem !important;
	padding-top: 1.25rem;
	border-top: 1px solid #cfcfcf;
	color: #111;
	font: 700 1rem/1.35 Arial, Helvetica, sans-serif !important;
	letter-spacing: .04em;
	text-transform: uppercase;
}

body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) .entry-content :is(p,li) {
	font-weight: 400;
}

body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) .entry-content :is(ul,ol) {
	margin: 0 0 1.5rem 1.25rem;
}

.solere-footer__legal nav {
	flex-wrap: wrap;
}

@media (max-width: 780px) {
	body:is(.page-privacy-policy,.page-cookie-policy,.page-terms-and-conditions,.page-terms-of-use,.page-dmca,.page-refund-returns,.page-opt-out-preferences) .site-content > .col-full {
		padding: 3rem 20px 5rem;
	}

	.solere-footer__legal nav {
		justify-content: flex-start;
		gap: .55rem 1rem;
		white-space: normal;
	}

	.solere-footer__legal nav a {
		font-size: .55rem;
	}
}

/* 2.9.264: shared 414px legal hero and document navigation. */
body.im-legal-page .site-content > .col-full {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.im-legal-page :is(.content-area,.site-main,article) {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

body.im-legal-page .entry-header {
	position: relative;
	display: flex;
	align-items: flex-end;
	box-sizing: border-box;
	width: 100vw !important;
	max-width: none !important;
	height: 414px;
	min-height: 414px;
	margin: 0 calc(50% - 50vw) !important;
	padding: 0;
	overflow: hidden;
	background: linear-gradient(118deg,#050505 0%,#151515 58%,#303030 100%);
}

body.im-legal-page .entry-header::before {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg,rgb(255 255 255 / 4%) 1px,transparent 1px) 0 0/96px 100%,
		linear-gradient(0deg,rgb(255 255 255 / 3%) 1px,transparent 1px) 0 0/100% 96px;
	content: "";
	pointer-events: none;
}

body.im-legal-page .entry-header .entry-title {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	width: min(1190px,calc(100% - 40px));
	max-width: 1190px;
	margin: 0 auto 40px !important;
	color: #fff !important;
	font: 300 clamp(2.7rem,5.1vw,4.0625rem)/1.15 Arial,Helvetica,sans-serif !important;
	letter-spacing: -.035em !important;
	text-align: left !important;
	text-transform: none !important;
}

body.im-legal-page .entry-header .entry-title strong {
	color: #fff !important;
	font-weight: 900 !important;
}

body.im-legal-page .entry-header > .wp-post-image,
body.im-legal-page article > .wp-post-image {
	display: none !important;
}

body.im-legal-page .entry-content {
	box-sizing: border-box;
	width: min(1190px,calc(100% - 40px)) !important;
	max-width: 1190px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

.im-legal-layout {
	display: grid;
	grid-template-columns: 344px minmax(0,774px);
	gap: 36px;
	align-items: stretch;
}

.im-legal-menu {
	box-sizing: border-box;
	min-height: 100%;
	padding: 56px 32px 7rem 0;
	border-right: 1px solid #d5d5d5;
}

body.im-legal-page .entry-content h2.im-legal-menu__title {
	margin: 0 0 24px !important;
	padding: 0 !important;
	border: 0 !important;
	color: #111;
	font: 700 .72rem/1 Arial,Helvetica,sans-serif !important;
	letter-spacing: .14em !important;
	text-transform: uppercase !important;
}

.im-legal-menu__links {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.im-legal-menu__links a {
	display: block;
	padding: 12px 14px;
	border-left: 2px solid transparent;
	color: #555;
	font: 400 .82rem/1.35 Arial,Helvetica,sans-serif;
	text-decoration: none;
	transition: border-color .2s ease,color .2s ease;
}

.im-legal-menu__links a:hover,
.im-legal-menu__links a:focus-visible,
.im-legal-menu__links a[aria-current="page"] {
	border-left-color: #111;
	color: #111;
}

.im-legal-menu__links a[aria-current="page"] {
	font-weight: 700;
}

.im-legal-document {
	min-width: 0;
	padding: 56px 0 7rem;
}

body.im-legal-page .im-legal-document > :first-child {
	margin-top: 0;
}

@media (max-width: 780px) {
	body.im-legal-page .entry-header {
		height: 410px;
		min-height: 410px;
	}

	body.im-legal-page .entry-header .entry-title {
		width: calc(100% - 40px);
		margin-bottom: 40px !important;
		font-size: clamp(2rem,10vw,2.5rem) !important;
		line-height: 1.08 !important;
	}

	body.im-legal-page .entry-content {
		width: 100% !important;
	}

	.im-legal-layout {
		display: block;
	}

	.im-legal-menu {
		display: flex;
		align-items: center;
		width: 100%;
		min-height: 50px;
		padding: 0 20px;
		overflow-x: auto;
		border-right: 0;
		border-bottom: 1px solid #d5d5d5;
		background: #fff;
		scrollbar-width: none;
	}

	.im-legal-menu::-webkit-scrollbar {
		display: none;
	}

	body.im-legal-page .entry-content h2.im-legal-menu__title {
		flex: 0 0 auto;
		margin: 0 18px 0 0 !important;
	}

	.im-legal-menu__links {
		display: flex;
		flex: 0 0 auto;
		flex-direction: row;
		align-items: stretch;
	}

	.im-legal-menu__links a {
		display: flex;
		align-items: center;
		height: 50px;
		padding: 0 12px;
		border-bottom: 2px solid transparent;
		border-left: 0;
		white-space: nowrap;
	}

	.im-legal-menu__links a:hover,
	.im-legal-menu__links a:focus-visible,
	.im-legal-menu__links a[aria-current="page"] {
		border-bottom-color: #111;
	}

	.im-legal-document {
		padding: 40px 20px 5rem;
	}
}
