:root {
	--sfr-yellow: #ffc700;
	--sfr-yellow-soft: #fff3b7;
	--sfr-yellow-pale: #fffaf0;
	--sfr-gold: #c8982e;
	--sfr-ink: #14181a;
	--sfr-charcoal: #23282b;
	--sfr-white: #ffffff;
	--sfr-paper: #f7f8f8;
	--sfr-cream: #fffdf6;
	--sfr-line: #e5e8e9;
	--sfr-muted: #697077;
	--sfr-red: #c84536;
	--sfr-success: #1c7c54;
	--sfr-shadow: 0 18px 46px -26px rgba(20, 24, 26, .32);
	--sfr-shadow-strong: 0 26px 70px -34px rgba(20, 24, 26, .42);
}

html body.my35-storefront-v2 {
	color: var(--sfr-ink);
	background: var(--sfr-white);
	letter-spacing: 0;
}

body.my35-storefront-v2 h1,
body.my35-storefront-v2 h2,
body.my35-storefront-v2 h3,
body.my35-storefront-v2 h4,
body.my35-storefront-v2 p,
body.my35-storefront-v2 a,
body.my35-storefront-v2 button {
	letter-spacing: 0 !important;
}

/* Global actions */
body.my35-storefront-v2 .btn,
body.my35-storefront-v2 button,
body.my35-storefront-v2 input,
body.my35-storefront-v2 select,
body.my35-storefront-v2 textarea {
	border-radius: 8px;
}

body.my35-storefront-v2 .btn {
	min-height: 46px;
	font-weight: 800;
}

body.my35-storefront-v2 .btn-dark {
	background: var(--sfr-ink);
	color: #fff;
}

body.my35-storefront-v2 .btn-ghost {
	border-color: rgba(20, 24, 26, .16);
	background: #fff;
}

body.my35-storefront-v2 a:focus-visible,
body.my35-storefront-v2 button:focus-visible,
body.my35-storefront-v2 input:focus-visible,
body.my35-storefront-v2 select:focus-visible,
body.my35-storefront-v2 textarea:focus-visible {
	outline: 3px solid var(--sfr-yellow) !important;
	outline-offset: 3px !important;
}

/* Header: preserve MY35 black/yellow identity, improve hierarchy */
body.my35-storefront-v2 .utilbar {
	background: var(--sfr-ink);
	border: 0;
}

body.my35-storefront-v2 .utilbar .wrap { min-height: 36px; }

body.my35-storefront-v2 .utilnav a,
body.my35-storefront-v2 .utilmeta {
	color: rgba(255, 255, 255, .78);
	font-size: 12px;
}

body.my35-storefront-v2 .utilnav a:hover,
body.my35-storefront-v2 .utilnav a:nth-last-child(1),
body.my35-storefront-v2 .util-open { color: var(--sfr-yellow); }

body.my35-storefront-v2 .shipbar {
	min-height: 40px;
	padding: 9px 18px;
	background: var(--sfr-yellow);
	color: var(--sfr-ink);
	font-size: 13px;
	font-weight: 750;
}

body.my35-storefront-v2 .shipbar code {
	margin-inline: 5px;
	padding: 2px 7px;
	border: 1px solid rgba(20, 24, 26, .16);
	border-radius: 4px;
	background: rgba(20, 24, 26, .08);
	color: var(--sfr-ink);
	font-weight: 900;
}

body.my35-storefront-v2 .site-header {
	position: sticky;
	top: 0;
	z-index: 190;
	background: rgba(255, 255, 255, .98);
	border-bottom: 1px solid var(--sfr-line);
	transition: box-shadow .2s ease;
}

body.my35-storefront-v2.my35-sfr-scrolled .site-header {
	box-shadow: 0 12px 34px -24px rgba(20, 24, 26, .48);
}

body.my35-storefront-v2 .hdr {
	height: 78px;
	gap: 22px;
	transition: height .2s ease, gap .2s ease;
}

body.my35-storefront-v2 .menu-btn {
	min-width: 108px;
	height: 48px;
	padding: 0 18px;
	border: 1px solid var(--sfr-ink);
	border-radius: 8px;
	background: var(--sfr-ink);
	color: #fff;
	box-shadow: none;
}

body.my35-storefront-v2 .menu-btn:hover {
	background: #000;
	color: var(--sfr-yellow);
}

body.my35-storefront-v2 .logo img {
	width: 138px;
	height: auto !important;
	transition: width .2s ease;
}

body.my35-storefront-v2 .search {
	height: 50px;
	max-width: 650px;
	border: 1px solid #dfe3e5;
	border-radius: 8px;
	background: #f7f8fa;
	box-shadow: none;
	transition: height .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

body.my35-storefront-v2 .search:focus-within {
	border-color: var(--sfr-gold);
	background: #fff;
	box-shadow: 0 0 0 3px rgba(255, 199, 0, .16);
}

body.my35-storefront-v2 .hdr-actions { gap: 5px; }

body.my35-storefront-v2 .hdr-actions .icon-btn {
	width: 44px;
	height: 44px;
	border: 1px solid transparent;
	border-radius: 8px;
	color: var(--sfr-ink);
}

body.my35-storefront-v2 .hdr-actions .icon-btn:hover {
	border-color: rgba(20, 24, 26, .12);
	background: var(--sfr-yellow-soft);
}

body.my35-storefront-v2 nav.main {
	border-top: 1px solid #eef0f1;
	background: #fff;
}

body.my35-storefront-v2 .megabar { min-height: 54px; }

body.my35-storefront-v2 .allcats {
	min-height: 54px;
	padding-inline: 20px;
	border: 0;
	background: var(--sfr-ink);
	color: #fff;
}

body.my35-storefront-v2 .allcats svg { color: var(--sfr-yellow); }

body.my35-storefront-v2 .quicknav a {
	position: relative;
	padding-inline: 20px;
	font-size: 13px;
	font-weight: 750;
	color: #30373a;
}

body.my35-storefront-v2 .quicknav a::after {
	content: "";
	position: absolute;
	left: 20px;
	right: 20px;
	bottom: 7px;
	height: 3px;
	background: transparent;
}

body.my35-storefront-v2 .quicknav a:hover::after { background: var(--sfr-yellow); }
body.my35-storefront-v2 .quicknav a.hot { color: var(--sfr-red); }

body.my35-storefront-v2 .megainner {
	border: 1px solid rgba(20, 24, 26, .1);
	border-top: 4px solid var(--sfr-yellow);
	border-radius: 0 0 8px 8px;
	box-shadow: 0 28px 70px -28px rgba(20, 24, 26, .44);
}

body.my35-storefront-v2 .rail-l1.railsel,
body.my35-storefront-v2 .rail-l1:hover { background: var(--sfr-yellow-soft); }

@media (min-width: 981px) {
	body.my35-storefront-v2.my35-sfr-scrolled .hdr { height: 66px; gap: 17px; }
	body.my35-storefront-v2.my35-sfr-scrolled .logo img { width: 122px; }
	body.my35-storefront-v2.my35-sfr-scrolled .search { height: 44px; }
	body.my35-storefront-v2.my35-sfr-scrolled .menu-btn { height: 44px; }
	body.my35-storefront-v2.my35-sfr-scrolled .megabar,
	body.my35-storefront-v2.my35-sfr-scrolled .allcats { min-height: 48px; }
}

/* Homepage cinematic hero, same concept with stronger conversion focus */
body.home.my35-storefront-v2 .hero-banner {
	height: 620px;
	min-height: 560px;
}

body.home.my35-storefront-v2 .hero-banner::after {
	background:
		linear-gradient(90deg, rgba(14, 17, 18, .9) 0%, rgba(14, 17, 18, .68) 42%, rgba(14, 17, 18, .18) 72%, rgba(14, 17, 18, .28) 100%),
		radial-gradient(90% 100% at 82% 18%, rgba(255, 199, 0, .15), transparent 58%);
}

body.home.my35-storefront-v2 .hero-layout {
	grid-template-columns: minmax(0, 660px) 350px;
	gap: 54px;
}

body.home.my35-storefront-v2 .hero-inner { max-width: 660px; }

body.home.my35-storefront-v2 .hero-eyebrow {
	margin-bottom: 20px;
	padding: 8px 13px;
	border: 1px solid rgba(255, 255, 255, .24);
	border-radius: 6px;
	background: rgba(20, 24, 26, .32);
	font-size: 12px;
	font-weight: 800;
}

body.home.my35-storefront-v2 .hero h1 {
	max-width: 660px;
	margin-bottom: 18px;
	font-size: 58px;
	line-height: 1.04;
	font-weight: 650;
}

body.home.my35-storefront-v2 .hero h1 .rot,
body.home.my35-storefront-v2 .hero h1 em { color: var(--sfr-yellow); }

body.home.my35-storefront-v2 .hero-sub {
	max-width: 600px;
	margin-bottom: 25px;
	font-size: 17px;
	line-height: 1.55;
	color: rgba(255, 255, 255, .9);
}

body.home.my35-storefront-v2 .hero-cta { gap: 10px; margin-bottom: 24px; }

body.home.my35-storefront-v2 .hero-cta .btn {
	min-height: 52px;
	padding: 0 22px;
	border-radius: 8px;
	font-weight: 850;
}

body.home.my35-storefront-v2 .hero-cta-primary {
	background: var(--sfr-yellow);
	color: var(--sfr-ink);
	box-shadow: 0 14px 30px -16px rgba(255, 199, 0, .9);
}

body.home.my35-storefront-v2 .hero-cta-secondary {
	border: 1px solid rgba(255, 255, 255, .36) !important;
	background: rgba(20, 24, 26, .35) !important;
	color: #fff !important;
}

body.home.my35-storefront-v2 .hero-cta-secondary:hover {
	border-color: var(--sfr-yellow) !important;
	background: rgba(20, 24, 26, .72) !important;
}

body.home.my35-storefront-v2 .hero-pts {
	gap: 18px;
	padding-top: 18px;
	border-top: 1px solid rgba(255, 255, 255, .18);
}

body.home.my35-storefront-v2 .hero-card {
	width: 350px;
	padding: 24px;
	border: 1px solid rgba(255, 199, 0, .42);
	border-radius: 8px;
	background: rgba(20, 24, 26, .76);
	box-shadow: 0 28px 70px -26px rgba(0, 0, 0, .72);
	backdrop-filter: blur(14px);
}

body.home.my35-storefront-v2 .hc-pill {
	border-radius: 5px;
	background: var(--sfr-yellow);
	color: var(--sfr-ink);
}

body.home.my35-storefront-v2 .hc-live { color: rgba(255, 255, 255, .72); }
body.home.my35-storefront-v2 .hc-dot { background: var(--sfr-yellow); box-shadow: 0 0 0 4px rgba(255, 199, 0, .12); }
body.home.my35-storefront-v2 .hc-title { color: #fff; }
body.home.my35-storefront-v2 .hc-row svg,
body.home.my35-storefront-v2 .hc-trust svg { color: var(--sfr-yellow); }
body.home.my35-storefront-v2 .hc-phone { border-color: rgba(255, 255, 255, .28); background: transparent; color: #fff; }

body.home.my35-storefront-v2 .hero-scroll { border-color: rgba(255, 199, 0, .58); }
body.home.my35-storefront-v2 .hero-scroll span { background: var(--sfr-yellow); }

/* Trust strip */
body.home.my35-storefront-v2 .trustbar {
	background: var(--sfr-cream);
	border-bottom: 1px solid #eee8d8;
}

body.home.my35-storefront-v2 .trustbar-row { padding: 22px 0; }

body.home.my35-storefront-v2 .trust-ic {
	border: 1px solid rgba(200, 152, 46, .2);
	background: #fff7da;
	color: #806019;
}

body.home.my35-storefront-v2 .trust-ic.stars { color: var(--sfr-gold); }

/* New need navigation */
.my35-sfr-needs {
	padding: 52px 0 46px;
	background: #fff;
}

.my35-sfr-section-head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 24px;
}

.my35-sfr-kicker {
	display: block;
	margin-bottom: 7px;
	font-size: 12px;
	font-weight: 900;
	color: #806019;
	text-transform: uppercase;
}

.my35-sfr-section-head h2 {
	margin: 0;
	font-size: 38px;
	line-height: 1.1;
	font-weight: 700;
	color: var(--sfr-ink);
}

.my35-sfr-ai {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 16px;
	border: 1px solid var(--sfr-ink);
	border-radius: 8px;
	background: var(--sfr-ink);
	color: #fff;
	font-weight: 800;
	cursor: pointer;
}

.my35-sfr-ai svg { color: var(--sfr-yellow); }
.my35-sfr-ai:hover { background: #000; }

.my35-sfr-need-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

.my35-sfr-need {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr) 20px;
	align-items: center;
	gap: 12px;
	min-height: 92px;
	padding: 15px;
	border: 1px solid var(--sfr-line);
	border-radius: 8px;
	background: var(--sfr-paper);
	color: var(--sfr-ink);
	text-decoration: none;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.my35-sfr-need:nth-child(1),
.my35-sfr-need:nth-child(4),
.my35-sfr-need:nth-child(6),
.my35-sfr-need:nth-child(8) { background: var(--sfr-yellow-pale); }

.my35-sfr-need:hover {
	transform: translateY(-3px);
	border-color: var(--sfr-gold);
	background: #fff;
	box-shadow: var(--sfr-shadow);
}

.my35-sfr-need-icon {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	border-radius: 8px;
	background: var(--sfr-yellow);
	color: var(--sfr-ink);
}

.my35-sfr-need-copy { display: grid; gap: 3px; min-width: 0; }
.my35-sfr-need-copy strong { font-size: 14px; line-height: 1.2; }
.my35-sfr-need-copy small { font-size: 11.5px; line-height: 1.25; color: var(--sfr-muted); }
.my35-sfr-need-arrow { color: #806019; }

/* Visual category gateways */
.my35-sfr-gateways {
	padding: 58px 0 66px;
	background: var(--sfr-ink);
}

.my35-sfr-section-head-light h2 { color: #fff; }
.my35-sfr-section-head-light .my35-sfr-kicker { color: var(--sfr-yellow); }

.my35-sfr-text-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #fff;
	font-size: 13px;
	font-weight: 800;
}

.my35-sfr-text-link svg { color: var(--sfr-yellow); }

.my35-sfr-gateway-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.my35-sfr-gateway {
	position: relative;
	display: block;
	min-height: 360px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 8px;
	background: #2a2f31;
	color: #fff;
}

.my35-sfr-gateway img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .4s ease;
}

.my35-sfr-gateway-shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(20, 24, 26, .06) 20%, rgba(20, 24, 26, .9) 100%);
}

.my35-sfr-gateway-copy {
	position: absolute;
	left: 20px;
	right: 20px;
	bottom: 20px;
	display: grid;
	gap: 5px;
}

.my35-sfr-gateway-copy small {
	color: var(--sfr-yellow);
	font-size: 11px;
	font-weight: 900;
	text-transform: uppercase;
}

.my35-sfr-gateway-copy strong { font-size: 25px; line-height: 1.08; }
.my35-sfr-gateway-copy em { color: rgba(255, 255, 255, .76); font-size: 12px; font-style: normal; line-height: 1.35; }
.my35-sfr-gateway-copy b { display: inline-flex; align-items: center; gap: 7px; margin-top: 7px; font-size: 12px; }
.my35-sfr-gateway-copy b svg { color: var(--sfr-yellow); }
.my35-sfr-gateway:hover img { transform: scale(1.045); }
.my35-sfr-gateway:hover { border-color: var(--sfr-yellow); }

/* Product rails and catalog cards */
body.my35-storefront-v2 .prod-head,
body.my35-storefront-v2 .sec-head { margin-bottom: 24px; }

body.my35-storefront-v2 .prod-head h2,
body.my35-storefront-v2 .sec-head h2 { color: var(--sfr-ink); font-size: 34px; }
body.my35-storefront-v2 .prod-head .eyebrow,
body.my35-storefront-v2 .sec-head .eyebrow { color: #806019; }

body.my35-storefront-v2 article.card,
body.my35-storefront-v2 ul.products li.product {
	border: 1px solid var(--sfr-line) !important;
	border-radius: 8px !important;
	background: #fff !important;
	box-shadow: 0 5px 20px -16px rgba(20, 24, 26, .34) !important;
	overflow: hidden !important;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease !important;
}

body.my35-storefront-v2 article.card:hover,
body.my35-storefront-v2 ul.products li.product:hover {
	transform: translateY(-4px);
	border-color: rgba(200, 152, 46, .7) !important;
	box-shadow: var(--sfr-shadow-strong) !important;
}

body.my35-storefront-v2 article.card .card-img,
body.my35-storefront-v2 ul.products li.product .my35-card-media {
	background: #fff !important;
}

body.my35-storefront-v2 article.card .card-img { border-radius: 0 !important; }

body.my35-storefront-v2 article.card .card-img img,
body.my35-storefront-v2 ul.products li.product .my35-card-media img {
	transition: transform .28s ease;
}

body.my35-storefront-v2 article.card:hover .card-img img,
body.my35-storefront-v2 ul.products li.product:hover .my35-card-media img { transform: scale(1.035); }

body.my35-storefront-v2 .card-tag.sale,
body.my35-storefront-v2 .my35-badge.sale {
	left: 10px !important;
	top: 10px !important;
	padding: 6px 8px !important;
	border-radius: 5px !important;
	background: var(--sfr-red) !important;
	color: #fff !important;
	font-size: 11px !important;
	font-weight: 900 !important;
}

body.my35-storefront-v2 .card-tag.bulk,
body.my35-storefront-v2 .my35-badge.bulk {
	right: 10px !important;
	top: 10px !important;
	max-width: calc(100% - 66px);
	padding: 5px 7px !important;
	border-radius: 5px !important;
	background: #fff5c7 !important;
	color: #6d5217 !important;
	font-size: 10px !important;
}

body.my35-storefront-v2 .my35-sfr-bulk-banner.card-tag.bulk,
body.my35-storefront-v2 .my35-sfr-bulk-banner.my35-badge.bulk {
	position: static !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	order: -1 !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	bottom: auto !important;
	width: 100% !important;
	height: 34px !important;
	max-width: none !important;
	min-height: 34px !important;
	margin: 0 !important;
	padding: 7px 10px !important;
	border: 0 !important;
	border-bottom: 1px solid #ead48d !important;
	border-radius: 0 !important;
	background: var(--sfr-yellow-pale) !important;
	color: #654a11 !important;
	font-size: 10.5px !important;
	font-weight: 850 !important;
	line-height: 1.2 !important;
	text-align: center !important;
	white-space: normal !important;
	box-shadow: none !important;
}

body.my35-storefront-v2 .my35-sfr-bulk-banner svg {
	flex: 0 0 auto;
	color: #8b650f;
}

body.my35-storefront-v2 article.card .card-body { padding: 14px 15px 15px; }

body.my35-storefront-v2 article.card .card-brand {
	font-size: 10.5px;
	font-weight: 900;
	color: #806019;
	text-transform: uppercase;
}

body.my35-storefront-v2 article.card .card-name,
body.my35-storefront-v2 ul.products li.product .woocommerce-loop-product__title {
	display: -webkit-box !important;
	min-height: 57px;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	color: var(--sfr-ink) !important;
}

body.my35-storefront-v2 .card-grw,
body.my35-storefront-v2 ul.products li.product .my35-card-rate,
body.my35-storefront-v2 ul.products li.product > .onsale,
body.my35-storefront-v2 ul.products li.product .my35-card-media > .onsale { display: none !important; }

body.my35-storefront-v2 .card-urgent,
body.my35-storefront-v2 .my35-card-urgent {
	min-height: 32px;
	font-size: 11px !important;
	font-weight: 700 !important;
	color: var(--sfr-success) !important;
}

body.my35-storefront-v2 article.card .price,
body.my35-storefront-v2 ul.products li.product .price {
	color: var(--sfr-ink) !important;
	font-size: 19px !important;
	font-weight: 900 !important;
}

body.my35-storefront-v2 article.card .add,
html body.my35-storefront-v2.woocommerce ul.products li.product a.button.add_to_cart_button,
html body.my35-storefront-v2.tax-product_cat ul.products li.product a.button.add_to_cart_button,
html body.my35-storefront-v2.post-type-archive-product ul.products li.product a.button.add_to_cart_button {
	min-height: 44px !important;
	border: 1px solid var(--sfr-yellow) !important;
	border-radius: 7px !important;
	background: var(--sfr-yellow) !important;
	color: var(--sfr-ink) !important;
	font-weight: 900 !important;
	box-shadow: none !important;
}

body.my35-storefront-v2 article.card .add:hover,
html body.my35-storefront-v2.woocommerce ul.products li.product a.button.add_to_cart_button:hover {
	border-color: var(--sfr-ink) !important;
	background: var(--sfr-ink) !important;
	color: #fff !important;
}

/* Category and search */
body.my35-storefront-v2.tax-product_cat,
body.my35-storefront-v2.post-type-archive-product,
body.my35-storefront-v2.search-results { background: var(--sfr-paper); }

body.my35-storefront-v2.tax-product_cat #main,
body.my35-storefront-v2.post-type-archive-product #main,
body.my35-storefront-v2.search-results #main { padding-top: 28px; }

body.my35-storefront-v2 .woocommerce-breadcrumb,
body.my35-storefront-v2 .breadcrumbs { color: #727b80; font-size: 12px; }

body.my35-storefront-v2 .my35-b-title,
body.my35-storefront-v2 .woocommerce-products-header__title,
body.my35-storefront-v2 .page-title {
	font-size: 44px !important;
	font-weight: 700 !important;
	color: var(--sfr-ink) !important;
}

body.my35-storefront-v2 .my35-b-subtitle { color: var(--sfr-muted); font-size: 15px; }

body.my35-storefront-v2 .wc-filter,
body.my35-storefront-v2 .wc-filter-sheet,
body.my35-storefront-v2 .widget-area {
	border: 1px solid var(--sfr-line) !important;
	border-top: 4px solid var(--sfr-yellow) !important;
	border-radius: 8px !important;
	background: #fff !important;
	box-shadow: var(--sfr-shadow) !important;
}

body.my35-storefront-v2 .wcf-row.active,
body.my35-storefront-v2 .wcf-row:hover { background: var(--sfr-yellow-pale) !important; }

body.my35-storefront-v2 .wcf-box {
	border-radius: 4px !important;
	border-color: #d4d9dc !important;
}

body.my35-storefront-v2 .wcf-row.active .wcf-box { border-color: var(--sfr-gold) !important; background: var(--sfr-yellow) !important; }

body.my35-storefront-v2 .my35-archive-trust {
	border-color: #eadcae !important;
	background: var(--sfr-yellow-pale) !important;
}

body.my35-storefront-v2 .woocommerce-ordering select,
body.my35-storefront-v2 .my35-sort-trigger {
	border-color: #dce1e3 !important;
	border-radius: 8px !important;
	background: #fff !important;
}

/* Product detail */
body.single-product.my35-storefront-v2 { background: var(--sfr-paper); }
body.single-product.my35-storefront-v2 #main { padding-top: 24px; }

body.single-product.my35-storefront-v2 div.product {
	gap: 64px !important;
	align-items: start;
}

body.single-product.my35-storefront-v2 .woocommerce-product-gallery {
	padding: 28px !important;
	border: 1px solid var(--sfr-line) !important;
	border-radius: 8px !important;
	background: #fff !important;
	box-shadow: var(--sfr-shadow) !important;
}

body.single-product.my35-storefront-v2 .summary.entry-summary {
	position: relative;
	top: auto;
	padding-top: 10px;
}

.my35-sfr-pdp-kicker {
	order: 5 !important;
	display: inline-flex;
	align-self: flex-start;
	margin-bottom: 10px;
	padding: 6px 9px;
	border: 1px solid rgba(200, 152, 46, .25);
	border-radius: 5px;
	background: var(--sfr-yellow-soft);
	color: #654a11;
	font-size: 10.5px;
	font-weight: 900;
	text-transform: uppercase;
}

body.single-product.my35-storefront-v2 .summary h1.product_title {
	font-size: 46px !important;
	line-height: 1.06 !important;
	font-weight: 700 !important;
	color: var(--sfr-ink) !important;
}

body.single-product.my35-storefront-v2 .my35-pdp-code-strip > span {
	border-color: #dfe3e5 !important;
	border-radius: 5px !important;
	background: #fff !important;
}

body.single-product.my35-storefront-v2 .summary .price,
body.single-product.my35-storefront-v2 .my35-price { color: var(--sfr-ink) !important; }

body.single-product.my35-storefront-v2 .summary p.stock,
body.single-product.my35-storefront-v2 .summary .my35-stock {
	border: 1px solid rgba(28, 124, 84, .2) !important;
	border-radius: 7px !important;
	background: #edf8f2 !important;
	color: var(--sfr-success) !important;
}

body.single-product.my35-storefront-v2 form.cart .single_add_to_cart_button {
	min-height: 58px !important;
	border: 1px solid var(--sfr-yellow) !important;
	border-radius: 8px !important;
	background: var(--sfr-yellow) !important;
	color: var(--sfr-ink) !important;
	font-size: 16px !important;
	font-weight: 900 !important;
	box-shadow: 0 16px 32px -22px rgba(255, 199, 0, .95) !important;
}

body.single-product.my35-storefront-v2 form.cart .single_add_to_cart_button:hover {
	border-color: var(--sfr-ink) !important;
	background: var(--sfr-ink) !important;
	color: #fff !important;
}

body.single-product.my35-storefront-v2 .my35-qtpl-pdp-nudge.is-near {
	border-color: rgba(200, 152, 46, .28) !important;
	background: var(--sfr-yellow-soft) !important;
}

body.single-product.my35-storefront-v2 .my35-store-trust,
body.single-product.my35-storefront-v2 .my35-product-usps,
body.single-product.my35-storefront-v2 .my35-pdp-answer,
body.single-product.my35-storefront-v2 .my35-ask-pharmacist-wrap {
	border-color: var(--sfr-line) !important;
	border-radius: 8px !important;
	background: #fff !important;
}

body.single-product.my35-storefront-v2 .woocommerce-tabs,
body.single-product.my35-storefront-v2 .related.products,
body.single-product.my35-storefront-v2 .my35-fbt {
	border-radius: 8px;
}

/* Cart and checkout */
body.woocommerce-cart.my35-storefront-v2,
body.woocommerce-checkout.my35-storefront-v2 { background: var(--sfr-paper); }

body.woocommerce-cart.my35-storefront-v2 #main,
body.woocommerce-checkout.my35-storefront-v2 #main { padding-top: 28px; }

body.woocommerce-cart.my35-storefront-v2 .woocommerce-cart-form,
body.woocommerce-cart.my35-storefront-v2 .cart_totals,
body.woocommerce-checkout.my35-storefront-v2 .woocommerce-checkout-review-order,
body.woocommerce-checkout.my35-storefront-v2 .woocommerce-billing-fields,
body.woocommerce-checkout.my35-storefront-v2 .woocommerce-shipping-fields {
	border-color: var(--sfr-line) !important;
	border-radius: 8px !important;
	background: #fff !important;
	box-shadow: var(--sfr-shadow) !important;
}

body.woocommerce-cart.my35-storefront-v2 .checkout-button,
body.woocommerce-checkout.my35-storefront-v2 #place_order {
	min-height: 58px !important;
	border: 1px solid var(--sfr-yellow) !important;
	border-radius: 8px !important;
	background: var(--sfr-yellow) !important;
	color: var(--sfr-ink) !important;
	font-size: 16px !important;
	font-weight: 900 !important;
	box-shadow: 0 14px 30px -20px rgba(255, 199, 0, .9) !important;
}

body.woocommerce-cart.my35-storefront-v2 .checkout-button:hover,
body.woocommerce-checkout.my35-storefront-v2 #place_order:hover {
	border-color: var(--sfr-ink) !important;
	background: var(--sfr-ink) !important;
	color: #fff !important;
}

body.woocommerce-cart.my35-storefront-v2 .my35-dorean-cart-message {
	border: 1px solid rgba(200, 152, 46, .34) !important;
	border-radius: 8px !important;
	background: var(--sfr-yellow-soft) !important;
	color: var(--sfr-ink) !important;
}

body.woocommerce-cart.my35-storefront-v2 .my35-dorean-apply {
	border: 1px solid var(--sfr-ink) !important;
	border-radius: 7px !important;
	background: var(--sfr-ink) !important;
	color: #fff !important;
}

body.woocommerce-cart.my35-storefront-v2 .my35-freeship,
body.woocommerce-cart.my35-storefront-v2 .my35-ftb-promo {
	border-color: rgba(200, 152, 46, .28) !important;
	background: var(--sfr-yellow-pale) !important;
}

body.woocommerce-checkout.my35-storefront-v2 .form-row input,
body.woocommerce-checkout.my35-storefront-v2 .form-row select,
body.woocommerce-checkout.my35-storefront-v2 .form-row textarea {
	min-height: 50px;
	border: 1px solid #dce1e3;
	border-radius: 7px;
	background: #fff;
}

body.woocommerce-checkout.my35-storefront-v2 .form-row input:focus,
body.woocommerce-checkout.my35-storefront-v2 .form-row select:focus,
body.woocommerce-checkout.my35-storefront-v2 .form-row textarea:focus {
	border-color: var(--sfr-gold);
	box-shadow: 0 0 0 3px rgba(255, 199, 0, .13);
}

body.woocommerce-checkout.my35-storefront-v2 .wc_payment_method {
	border-color: var(--sfr-line) !important;
	border-radius: 7px !important;
}

body.woocommerce-checkout.my35-storefront-v2 .wc_payment_method:has(input:checked) {
	border-color: var(--sfr-gold) !important;
	background: var(--sfr-yellow-pale) !important;
}

/* AI and editorial bands harmonized with brand */
body.home.my35-storefront-v2 .ai-promo {
	background: var(--sfr-ink) !important;
	color: #fff;
}

body.home.my35-storefront-v2 .ai-promo-title,
body.home.my35-storefront-v2 .ai-promo-copy h2 { color: #fff !important; }

body.home.my35-storefront-v2 .ai-promo-title em,
body.home.my35-storefront-v2 .ai-promo-badge,
body.home.my35-storefront-v2 .ai-promo-benefit svg { color: var(--sfr-yellow) !important; }

body.home.my35-storefront-v2 .ai-promo-cta {
	background: var(--sfr-yellow) !important;
	color: var(--sfr-ink) !important;
}

body.home.my35-storefront-v2 .ai-promo-chat {
	border: 1px solid rgba(255, 199, 0, .34) !important;
	border-radius: 8px !important;
}

/* Homepage discovery: every band has one clear decision */
.my35-sfr-section-copy {
	max-width: 620px;
	margin: 8px 0 0;
	color: var(--sfr-muted);
	font-size: 13px;
	line-height: 1.45;
}

body.home.my35-storefront-v2 .my35-sfr-concern-sec,
body.home.my35-storefront-v2 .my35-sfr-deals-sec,
body.home.my35-storefront-v2 .my35-sfr-category-sec,
body.home.my35-storefront-v2 .my35-sfr-arrivals-sec {
	padding-top: 68px !important;
	padding-bottom: 72px !important;
	border-radius: 0 !important;
}

body.home.my35-storefront-v2 .my35-sfr-concern-sec {
	border-top: 1px solid var(--sfr-line);
	border-bottom: 1px solid var(--sfr-line);
	background: var(--sfr-paper);
}

body.home.my35-storefront-v2 .my35-sfr-concern-sec .sec-head {
	display: block;
	margin-bottom: 26px;
	text-align: left;
}

body.home.my35-storefront-v2 .my35-sfr-concern-sec .sec-head h2 {
	font-size: 38px;
}

body.home.my35-storefront-v2 .my35-sfr-concern-sec .concern {
	gap: 10px;
}

body.home.my35-storefront-v2 .my35-sfr-concern-sec .concern-card {
	min-height: 88px;
	border: 1px solid #dfe3e5;
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 10px 26px -24px rgba(20, 24, 26, .5);
	transition: transform .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
}

body.home.my35-storefront-v2 .my35-sfr-concern-sec .concern-card:nth-child(1),
body.home.my35-storefront-v2 .my35-sfr-concern-sec .concern-card:nth-child(5) {
	background: var(--sfr-yellow-pale);
}

body.home.my35-storefront-v2 .my35-sfr-concern-sec .concern-card:hover {
	transform: translateY(-3px);
	border-color: var(--sfr-ink);
	background: var(--sfr-ink);
	color: #fff;
}

body.home.my35-storefront-v2 .my35-sfr-concern-sec .cc-ic,
body.home.my35-storefront-v2 .my35-sfr-concern-sec .cc-arrow {
	border-radius: 7px;
	background: var(--sfr-yellow);
	color: var(--sfr-ink);
}

body.home.my35-storefront-v2 .my35-sfr-concern-sec .concern-card:hover .cc-tx i { color: rgba(255, 255, 255, .65); }

body.home.my35-storefront-v2 .my35-sfr-deals-sec {
	background: #fff8f5 !important;
}

body.home.my35-storefront-v2 .my35-sfr-deals-sec .prod-head,
body.home.my35-storefront-v2 .my35-sfr-arrivals-sec .prod-head {
	align-items: end;
}

body.home.my35-storefront-v2 .my35-sfr-deals-sec .prod-head h2,
body.home.my35-storefront-v2 .my35-sfr-arrivals-sec .prod-head h2 {
	font-size: 38px;
	line-height: 1.1;
}

body.home.my35-storefront-v2 .my35-sfr-deals-sec article.card {
	border-color: #eadeda !important;
}

body.home.my35-storefront-v2 .my35-sfr-category-sec {
	background: var(--sfr-ink);
	color: #fff;
}

body.home.my35-storefront-v2 .my35-sfr-category-sec .sec-head {
	display: block;
	margin-bottom: 28px;
	text-align: left;
}

body.home.my35-storefront-v2 .my35-sfr-category-sec .sec-head .eyebrow { color: var(--sfr-yellow); }
body.home.my35-storefront-v2 .my35-sfr-category-sec .sec-head h2 { color: #fff; font-size: 38px; }
body.home.my35-storefront-v2 .my35-sfr-category-sec .my35-sfr-section-copy { color: rgba(255, 255, 255, .62); }

body.home.my35-storefront-v2 .my35-sfr-category-sec .cats { gap: 10px; }

body.home.my35-storefront-v2 .my35-sfr-category-sec .cat {
	min-height: 310px;
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 8px;
	box-shadow: none;
	transition: transform .22s ease, border-color .22s ease;
}

body.home.my35-storefront-v2 .my35-sfr-category-sec .cat:hover {
	transform: translateY(-5px);
	border-color: var(--sfr-yellow);
}

body.home.my35-storefront-v2 .my35-sfr-category-sec .cat img { transition: transform .35s ease; }
body.home.my35-storefront-v2 .my35-sfr-category-sec .cat:hover img { transform: scale(1.04); }
body.home.my35-storefront-v2 .my35-sfr-category-sec .cat-lab { background: var(--sfr-yellow) !important; color: var(--sfr-ink) !important; }
body.home.my35-storefront-v2 .my35-sfr-category-sec .cat-lab-badge,
body.home.my35-storefront-v2 .my35-sfr-category-sec .cat-lab p { color: var(--sfr-ink) !important; }

body.home.my35-storefront-v2 .my35-sfr-arrivals-sec {
	border-bottom: 1px solid var(--sfr-line);
	background: #fff;
}

body.home.my35-storefront-v2 .my35-sfr-loyalty-sec {
	padding: 46px 0 !important;
	background: var(--sfr-yellow);
}

body.home.my35-storefront-v2 .my35-sfr-loyalty-sec .loyalty {
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--sfr-ink) !important;
	box-shadow: none !important;
}

body.home.my35-storefront-v2 .my35-sfr-loyalty-sec .lt b {
	color: var(--sfr-ink) !important;
	font-size: 29px;
}

body.home.my35-storefront-v2 .my35-sfr-loyalty-sec .lt span,
body.home.my35-storefront-v2 .my35-sfr-loyalty-sec .lpt span { color: rgba(20, 24, 26, .7) !important; }
body.home.my35-storefront-v2 .my35-sfr-loyalty-sec .lpt b { color: var(--sfr-ink) !important; }
body.home.my35-storefront-v2 .my35-sfr-loyalty-sec .btn-dark { border-color: var(--sfr-ink); background: var(--sfr-ink); color: #fff; }

/* Lower-home conversion journey */
.my35-sfr-care-flow {
	padding: 72px 0;
	background: var(--sfr-ink);
	color: #fff;
}

.my35-sfr-care-flow > .wrap {
	display: grid;
	grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
	align-items: center;
	gap: 64px;
}

.my35-sfr-care-intro h2 {
	max-width: 560px;
	margin: 0 0 16px;
	color: #fff;
	font-size: 42px;
	line-height: 1.08;
}

.my35-sfr-care-intro > p {
	max-width: 590px;
	margin: 0;
	color: rgba(255, 255, 255, .72);
	font-size: 15px;
	line-height: 1.65;
}

.my35-sfr-care-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 24px;
}

.my35-sfr-care-primary,
.my35-sfr-care-phone {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 48px;
	padding: 0 17px;
	border-radius: 7px;
	font: inherit;
	font-size: 13px;
	font-weight: 900;
	text-decoration: none;
	cursor: pointer;
}

.my35-sfr-care-primary {
	border: 1px solid var(--sfr-yellow);
	background: var(--sfr-yellow);
	color: var(--sfr-ink);
}

.my35-sfr-care-phone {
	border: 1px solid rgba(255, 255, 255, .3);
	background: transparent;
	color: #fff;
}

.my35-sfr-care-primary:hover { border-color: #fff; background: #fff; }
.my35-sfr-care-phone:hover { border-color: var(--sfr-yellow); color: var(--sfr-yellow); }

.my35-sfr-care-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.my35-sfr-care-steps li {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 242px;
	padding: 23px 20px 20px;
	border: 1px solid rgba(255, 255, 255, .14);
	border-top: 4px solid var(--sfr-yellow);
	border-radius: 8px;
	background: #202527;
}

.my35-sfr-care-number {
	position: absolute;
	top: 17px;
	right: 17px;
	color: rgba(255, 255, 255, .24);
	font-size: 13px;
	font-weight: 900;
}

.my35-sfr-care-icon {
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	margin-bottom: auto;
	border-radius: 7px;
	background: var(--sfr-yellow);
	color: var(--sfr-ink);
}

.my35-sfr-care-steps strong {
	margin-top: 30px;
	font-size: 16px;
	line-height: 1.2;
}

.my35-sfr-care-steps small {
	margin-top: 8px;
	color: rgba(255, 255, 255, .62);
	font-size: 11.5px;
	line-height: 1.48;
}

body.home.my35-storefront-v2 .pharm-sec,
body.home.my35-storefront-v2 .my35-heritage-sec,
body.home.my35-storefront-v2 .reviews,
body.home.my35-storefront-v2 .nl-sec,
body.home.my35-storefront-v2 .my35-sfr-contact-sec {
	padding-top: 76px !important;
	padding-bottom: 76px !important;
}

body.home.my35-storefront-v2 .pharm-sec {
	background: #fff;
}

body.home.my35-storefront-v2 .pharm-sec.reveal,
body.home.my35-storefront-v2 .pharm-sec .reveal,
body.home.my35-storefront-v2 .my35-heritage-sec .reveal,
body.home.my35-storefront-v2 .reviews .reveal,
body.home.my35-storefront-v2 .nl-sec .reveal,
body.home.my35-storefront-v2 .my35-sfr-contact-sec .reveal {
	opacity: 1 !important;
	transform: none !important;
}

body.home.my35-storefront-v2 .my35-pharmacist {
	display: grid !important;
	grid-template-columns: 310px minmax(0, 1fr) !important;
	align-items: stretch !important;
	gap: 52px !important;
	max-width: none !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
}

body.home.my35-storefront-v2 .my35-ph-photo {
	display: block !important;
	width: 310px !important;
	height: 290px !important;
	border: 0 !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	box-shadow: var(--sfr-shadow-strong) !important;
}

body.home.my35-storefront-v2 .my35-ph-photo img {
	width: 100% !important;
	height: 100% !important;
	border: 0 !important;
	border-radius: 0 !important;
	object-fit: cover !important;
}

body.home.my35-storefront-v2 .my35-ph-body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 720px;
}

body.home.my35-storefront-v2 .my35-ph-eyebrow,
body.home.my35-storefront-v2 .my35-ph-meta { color: #806019 !important; }

body.home.my35-storefront-v2 .my35-ph-name {
	margin: 6px 0 10px;
	font-size: 40px !important;
	line-height: 1.1;
	color: var(--sfr-ink) !important;
}

body.home.my35-storefront-v2 .my35-ph-bio {
	max-width: 650px;
	color: var(--sfr-muted) !important;
	font-size: 15px !important;
	line-height: 1.65 !important;
}

body.home.my35-storefront-v2 .my35-ph-cta-primary {
	border-color: var(--sfr-yellow) !important;
	background: var(--sfr-yellow) !important;
	color: var(--sfr-ink) !important;
}

body.home.my35-storefront-v2 .my35-heritage-sec {
	position: relative;
	overflow: hidden;
	background: var(--sfr-yellow) !important;
}

body.home.my35-storefront-v2 .my35-heritage {
	display: grid !important;
	grid-template-columns: 245px minmax(0, 1fr);
	column-gap: 56px;
	max-width: none !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: left !important;
}

body.home.my35-storefront-v2 .my35-heritage::before {
	content: "1982";
	grid-row: 1 / span 3;
	align-self: center;
	color: var(--sfr-ink);
	font-size: 82px;
	font-weight: 900;
	line-height: 1;
}

body.home.my35-storefront-v2 .my35-heritage .eyebrow {
	margin: 0 0 7px;
	color: rgba(20, 24, 26, .64) !important;
}

body.home.my35-storefront-v2 .my35-heritage h2 {
	margin: 0 0 12px;
	color: var(--sfr-ink) !important;
	font-size: 40px !important;
	line-height: 1.08;
}

body.home.my35-storefront-v2 .my35-heritage p {
	max-width: 760px;
	margin: 0;
	color: rgba(20, 24, 26, .75) !important;
	font-size: 14px !important;
	line-height: 1.65 !important;
}

body.home.my35-storefront-v2 .reviews {
	background: #f5f6f6 !important;
}

body.home.my35-storefront-v2 .reviews .rev-score { display: none !important; }

body.home.my35-storefront-v2 .reviews .rev-fallback {
	display: grid !important;
	grid-template-columns: 225px minmax(0, 1fr) auto;
	align-items: center;
	gap: 42px;
	max-width: none !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.home.my35-storefront-v2 .reviews .rf-score {
	padding-right: 34px;
	border-right: 1px solid #d8dddf;
}

body.home.my35-storefront-v2 .reviews .rf-num {
	color: var(--sfr-ink) !important;
	font-size: 62px !important;
	font-weight: 900 !important;
}

body.home.my35-storefront-v2 .reviews .stars { color: var(--sfr-yellow) !important; }
body.home.my35-storefront-v2 .reviews .rf-lead { max-width: 510px; color: var(--sfr-ink) !important; font-size: 19px !important; line-height: 1.45 !important; }
body.home.my35-storefront-v2 .reviews .rf-cta {
	display: flex !important;
	grid-column: auto !important;
	flex-direction: column;
	justify-self: end;
	gap: 8px;
	width: 220px !important;
}

body.home.my35-storefront-v2 .reviews .rf-cta .btn {
	width: 220px !important;
	justify-content: center;
}

body.home.my35-storefront-v2 .nl-sec {
	background: var(--sfr-ink) !important;
}

body.home.my35-storefront-v2 .nl-sec::before,
body.home.my35-storefront-v2 .nl-sec::after,
body.home.my35-storefront-v2 .nl-box::before,
body.home.my35-storefront-v2 .nl-box::after { display: none !important; }

body.home.my35-storefront-v2 .nl-box {
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.home.my35-storefront-v2 .nl-left h2 { color: #fff !important; font-size: 40px !important; }
body.home.my35-storefront-v2 .nl-left p,
body.home.my35-storefront-v2 .nl-perks { color: rgba(255, 255, 255, .72) !important; }
body.home.my35-storefront-v2 .nl-left b,
body.home.my35-storefront-v2 .nl-perks svg,
body.home.my35-storefront-v2 .nl-box .eyebrow { color: var(--sfr-yellow) !important; }
body.home.my35-storefront-v2 .nl-form label { color: #fff !important; }
body.home.my35-storefront-v2 .nl-inputrow input { border-color: rgba(255, 255, 255, .26) !important; background: #252a2c !important; color: #fff !important; }
body.home.my35-storefront-v2 .nl-inputrow .btn { border-color: var(--sfr-yellow) !important; background: var(--sfr-yellow) !important; color: var(--sfr-ink) !important; }
body.home.my35-storefront-v2 .nl-note { color: rgba(255, 255, 255, .48) !important; }

body.home.my35-storefront-v2 .my35-sfr-contact-sec {
	background: #fff;
}

body.home.my35-storefront-v2 .my35-sfr-contact-sec .sec-head { margin-bottom: 30px; text-align: left !important; }
body.home.my35-storefront-v2 .my35-sfr-contact-sec .sec-head h2 { font-size: 40px !important; }
body.home.my35-storefront-v2 .contact-grid {
	border: 1px solid var(--sfr-line) !important;
	border-radius: 8px !important;
	box-shadow: var(--sfr-shadow) !important;
	overflow: hidden;
}

body.home.my35-storefront-v2 .contact-info { padding: 42px !important; }
body.home.my35-storefront-v2 .contact-map { min-height: 480px !important; }

/* Footer */
body.my35-storefront-v2 .site-footer { background: var(--sfr-ink); }
body.my35-storefront-v2 .site-footer a:hover { color: var(--sfr-yellow); }

body.my35-storefront-v2.page-id-2004 .my35-pharmacist-byline,
body.my35-storefront-v2.page-id-13599 .my35-pharmacist-byline {
	display: none !important;
}

body.my35-storefront-v2 .labx-ghost-light {
	border-color: rgba(255, 255, 255, .55) !important;
	background: rgba(20, 24, 26, .42) !important;
	color: #fff !important;
}

body.my35-storefront-v2 .labx-ghost-light:hover {
	border-color: var(--sfr-yellow) !important;
	background: rgba(20, 24, 26, .78) !important;
}

.my35-sfr-mobile-dock { display: none; }

@media (max-width: 1100px) {
	body.home.my35-storefront-v2 .hero-layout { grid-template-columns: minmax(0, 680px); }
	body.home.my35-storefront-v2 .hero-card { display: none !important; }
	.my35-sfr-need-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.my35-sfr-gateway-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.my35-sfr-gateway { min-height: 320px; }
	.my35-sfr-care-flow > .wrap { grid-template-columns: 1fr; gap: 36px; }
	body.home.my35-storefront-v2 .my35-pharmacist { grid-template-columns: 260px minmax(0, 1fr) !important; gap: 34px !important; }
	body.home.my35-storefront-v2 .my35-ph-photo { width: 260px !important; }
	body.home.my35-storefront-v2 .reviews .rev-fallback { grid-template-columns: 190px minmax(0, 1fr); gap: 28px; }
	body.home.my35-storefront-v2 .reviews .rf-cta { grid-column: 2 !important; flex-direction: row; justify-self: start; width: auto !important; }
	body.home.my35-storefront-v2 .reviews .rf-cta .btn { width: auto !important; }
	body.home.my35-storefront-v2 .my35-sfr-category-sec .cats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	body.home.my35-storefront-v2 .my35-sfr-category-sec .cat-lab { grid-column: span 2; }
}

@media (max-width: 980px) {
	body.my35-storefront-v2 .m-toplinks {
		display: flex !important;
		gap: 16px;
		padding: 5px 13px;
		background: var(--sfr-ink);
	}

	body.my35-storefront-v2 .m-toplinks a { min-height: 32px; font-size: 11px; }
	body.my35-storefront-v2 .m-toplinks a.hot { color: var(--sfr-yellow); }
	body.my35-storefront-v2 .shipbar { min-height: 34px; padding: 7px 10px; font-size: 11px; }
	body.my35-storefront-v2 .site-header { top: 0; }
	body.my35-storefront-v2 .hdr { height: 64px; padding-inline: 13px; gap: 10px; }
	body.my35-storefront-v2 .menu-btn { min-width: 44px; width: 44px; height: 44px; padding: 0; }
	body.my35-storefront-v2 .menu-btn .mtxt { display: none; }
	body.my35-storefront-v2 .logo img { width: 118px; max-width: 118px !important; height: auto !important; }
	body.my35-storefront-v2 .hdr-actions { margin-left: auto; }
	body.my35-storefront-v2 .hdr-actions .icon-btn { width: 40px; height: 40px; }
	body.my35-storefront-v2 .hdr-actions .icon-btn:first-child { display: none; }

	body.my35-storefront-v2 .m-catbar {
		gap: 7px;
		padding: 8px 12px;
		border-bottom: 1px solid var(--sfr-line);
		background: #fff;
	}

	body.my35-storefront-v2 .m-chip {
		min-height: 36px;
		padding: 8px 12px;
		border-radius: 7px;
		background: var(--sfr-paper);
		font-size: 12px;
	}

	body.my35-storefront-v2 .m-chip-all { border-color: var(--sfr-ink); background: var(--sfr-ink); color: #fff; }
	body.my35-storefront-v2 .m-chip-hot { border-color: var(--sfr-gold); background: var(--sfr-yellow-soft); color: #806019; }

	body.home.my35-storefront-v2 .hero-banner { height: auto; min-height: 580px; }
	body.home.my35-storefront-v2 .hero-banner::after {
		background: linear-gradient(180deg, rgba(20, 24, 26, .24) 0%, rgba(20, 24, 26, .78) 64%, rgba(20, 24, 26, .94) 100%);
	}
	body.home.my35-storefront-v2 .hero-content { min-height: 580px; padding: 44px 0 30px; align-items: end; }
	body.home.my35-storefront-v2 .hero h1 { font-size: 39px !important; line-height: 1.07 !important; }
	body.home.my35-storefront-v2 .hero-sub { font-size: 15px; line-height: 1.48; }
	body.home.my35-storefront-v2 .hero-cta { display: grid; grid-template-columns: 1fr 1fr; }
	body.home.my35-storefront-v2 .hero-cta-primary { grid-column: 1 / -1; }
	body.home.my35-storefront-v2 .hero-cta .btn { width: 100%; min-width: 0; padding-inline: 12px; }
	body.home.my35-storefront-v2 .hero-pts { display: grid; gap: 8px; margin-top: 16px; }
	body.home.my35-storefront-v2 .hero-pt { white-space: normal; }

	.my35-sfr-needs { padding: 38px 0 34px; }
	.my35-sfr-section-head { align-items: start; margin-bottom: 18px; }
	.my35-sfr-section-head h2 { font-size: 30px; }
	.my35-sfr-ai { font-size: 12px; }
	.my35-sfr-need { grid-template-columns: 42px minmax(0, 1fr); min-height: 82px; padding: 12px; }
	.my35-sfr-need-icon { width: 42px; height: 42px; }
	.my35-sfr-need-arrow { display: none; }

	body.single-product.my35-storefront-v2 div.product { gap: 28px !important; }
	body.single-product.my35-storefront-v2 .summary.entry-summary { position: static; }
	body.single-product.my35-storefront-v2 .woocommerce-product-gallery { padding: 18px !important; }
	body.single-product.my35-storefront-v2 .summary h1.product_title { font-size: 32px !important; }
}

@media (max-width: 767px) {
	body.my35-storefront-v2:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) { padding-bottom: 76px !important; }
	body.my35-storefront-v2 .shipbar svg { display: none; }
	body.my35-storefront-v2 .hdr-actions .icon-btn[aria-label="Λογαριασμός"] { display: none; }
	body.my35-storefront-v2 .logo img { width: 106px; max-width: 106px !important; }

	body.home.my35-storefront-v2 .hero-eyebrow { max-width: 100%; font-size: 10.5px; }
	body.home.my35-storefront-v2 .hero h1 { margin-top: 14px; font-size: 35px !important; }
	body.home.my35-storefront-v2 .hero h1 .rot { max-width: 100%; font-size: 31px !important; }
	body.home.my35-storefront-v2 .hero-cta .btn { min-height: 50px; font-size: 13px; }
	body.home.my35-storefront-v2 .hero-pts .hero-pt:nth-child(2) { display: none; }
	body.home.my35-storefront-v2 .trustbar-row { gap: 8px !important; padding: 14px 0 !important; }
	body.home.my35-storefront-v2 .trustbar-row > .trust-it { padding: 8px !important; }

	.my35-sfr-section-head { display: block; }
	.my35-sfr-section-head .my35-sfr-ai { margin-top: 13px; }
	.my35-sfr-need-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
	.my35-sfr-need { gap: 8px; }
	.my35-sfr-need-copy strong { font-size: 12.5px; }
	.my35-sfr-need-copy small { font-size: 10px; }

	.my35-sfr-gateways { padding: 42px 0 48px; }
	.my35-sfr-gateway-grid { display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
	.my35-sfr-gateway-grid::-webkit-scrollbar { display: none; }
	.my35-sfr-gateway { flex: 0 0 82%; min-height: 330px; scroll-snap-align: start; }
	.my35-sfr-gateway-copy strong { font-size: 23px; }

	body.home.my35-storefront-v2 .my35-sfr-concern-sec,
	body.home.my35-storefront-v2 .my35-sfr-deals-sec,
	body.home.my35-storefront-v2 .my35-sfr-category-sec,
	body.home.my35-storefront-v2 .my35-sfr-arrivals-sec {
		padding-top: 48px !important;
		padding-bottom: 52px !important;
	}

	body.home.my35-storefront-v2 .my35-sfr-concern-sec .sec-head h2,
	body.home.my35-storefront-v2 .my35-sfr-deals-sec .prod-head h2,
	body.home.my35-storefront-v2 .my35-sfr-category-sec .sec-head h2,
	body.home.my35-storefront-v2 .my35-sfr-arrivals-sec .prod-head h2 { font-size: 30px; }

	.my35-sfr-section-copy { max-width: 100%; font-size: 12px; }
	body.home.my35-storefront-v2 .my35-sfr-concern-sec .concern { grid-template-columns: 1fr; gap: 8px; }
	body.home.my35-storefront-v2 .my35-sfr-concern-sec .concern-card { min-height: 78px; }
	body.home.my35-storefront-v2 .my35-sfr-deals-sec .prod-head,
	body.home.my35-storefront-v2 .my35-sfr-arrivals-sec .prod-head { align-items: start; }

	body.home.my35-storefront-v2 .my35-sfr-category-sec .cats {
		display: flex;
		gap: 10px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	body.home.my35-storefront-v2 .my35-sfr-category-sec .cats::-webkit-scrollbar { display: none; }
	body.home.my35-storefront-v2 .my35-sfr-category-sec .cat,
	body.home.my35-storefront-v2 .my35-sfr-category-sec .cat-lab {
		flex: 0 0 82%;
		min-height: 330px;
		scroll-snap-align: start;
	}

	body.home.my35-storefront-v2 .my35-sfr-loyalty-sec { padding: 42px 0 !important; }
	body.home.my35-storefront-v2 .my35-sfr-loyalty-sec .loyalty { display: grid !important; gap: 24px !important; }
	body.home.my35-storefront-v2 .my35-sfr-loyalty-sec .lt b { font-size: 26px; line-height: 1.15; }
	body.home.my35-storefront-v2 .my35-sfr-loyalty-sec .lpts { justify-content: space-between; }
	body.home.my35-storefront-v2 .my35-sfr-loyalty-sec .btn { width: 100%; }

	.my35-sfr-care-flow { padding: 48px 0; }
	.my35-sfr-care-flow > .wrap { gap: 30px; }
	.my35-sfr-care-intro h2 { font-size: 31px; }
	.my35-sfr-care-intro > p { font-size: 13px; }
	.my35-sfr-care-actions { display: grid; grid-template-columns: 1fr; }
	.my35-sfr-care-primary,
	.my35-sfr-care-phone { width: 100%; }
	.my35-sfr-care-steps {
		display: flex;
		gap: 10px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	.my35-sfr-care-steps::-webkit-scrollbar { display: none; }
	.my35-sfr-care-steps li { flex: 0 0 82%; min-height: 218px; scroll-snap-align: start; }

	body.home.my35-storefront-v2 .pharm-sec,
	body.home.my35-storefront-v2 .my35-heritage-sec,
	body.home.my35-storefront-v2 .reviews,
	body.home.my35-storefront-v2 .nl-sec,
	body.home.my35-storefront-v2 .my35-sfr-contact-sec {
		padding-top: 48px !important;
		padding-bottom: 48px !important;
	}

	body.home.my35-storefront-v2 .my35-pharmacist { grid-template-columns: 1fr !important; gap: 26px !important; }
	body.home.my35-storefront-v2 .my35-ph-photo { width: 100% !important; height: 280px !important; }
	body.home.my35-storefront-v2 .my35-ph-name { font-size: 31px !important; }
	body.home.my35-storefront-v2 .my35-ph-cta { display: grid !important; grid-template-columns: 1fr !important; }
	body.home.my35-storefront-v2 .my35-ph-cta .btn { width: 100% !important; }

	body.home.my35-storefront-v2 .my35-heritage { display: block !important; }
	body.home.my35-storefront-v2 .my35-heritage::before { display: block; margin-bottom: 22px; font-size: 62px; }
	body.home.my35-storefront-v2 .my35-heritage h2 { font-size: 31px !important; }

	body.home.my35-storefront-v2 .reviews .rev-fallback { display: block !important; }
	body.home.my35-storefront-v2 .reviews .rf-score { margin-bottom: 24px; padding: 0 0 20px; border-right: 0; border-bottom: 1px solid #d8dddf; }
	body.home.my35-storefront-v2 .reviews .rf-lead { font-size: 17px !important; }
	body.home.my35-storefront-v2 .reviews .rf-cta { display: grid !important; grid-column: auto !important; grid-template-columns: 1fr; width: 100% !important; margin-top: 22px; }
	body.home.my35-storefront-v2 .reviews .rf-cta .btn { width: 100%; }

	body.home.my35-storefront-v2 .nl-left h2 { font-size: 31px !important; }
	body.home.my35-storefront-v2 .nl-inputrow { display: grid !important; grid-template-columns: 1fr !important; gap: 9px; }
	body.home.my35-storefront-v2 .nl-inputrow .btn { width: 100%; }
	body.home.my35-storefront-v2 .my35-sfr-contact-sec .sec-head h2 { font-size: 31px !important; }
	body.home.my35-storefront-v2 .contact-info { padding: 28px 20px !important; }
	body.home.my35-storefront-v2 .contact-map { min-height: 360px !important; }

	body.my35-storefront-v2 article.card .card-body { padding: 11px 11px 12px; }
	body.my35-storefront-v2 article.card .card-name,
	body.my35-storefront-v2 ul.products li.product .woocommerce-loop-product__title { min-height: 51px; font-size: 12.5px !important; }
	body.my35-storefront-v2 article.card .card-urgent,
	body.my35-storefront-v2 ul.products li.product .my35-card-urgent { font-size: 9.5px !important; }
	body.my35-storefront-v2 .card-tag.bulk,
	body.my35-storefront-v2 .my35-badge.bulk { display: none !important; }
	body.my35-storefront-v2 article.card .price,
	body.my35-storefront-v2 ul.products li.product .price { font-size: 17px !important; }
	body.my35-storefront-v2 article.card .add,
	body.my35-storefront-v2 ul.products li.product .add_to_cart_button { min-height: 42px !important; font-size: 11.5px !important; }

	body.my35-storefront-v2.tax-product_cat #main,
	body.my35-storefront-v2.post-type-archive-product #main,
	body.my35-storefront-v2.search-results #main { padding-top: 16px; }
	body.my35-storefront-v2 .my35-b-title,
	body.my35-storefront-v2 .woocommerce-products-header__title,
	body.my35-storefront-v2 .page-title { font-size: 30px !important; }

	body.single-product.my35-storefront-v2 #main { padding-top: 12px; }
	body.single-product.my35-storefront-v2 .breadcrumbs,
	body.single-product.my35-storefront-v2 .woocommerce-breadcrumb { display: none !important; }
	body.single-product.my35-storefront-v2 .woocommerce-product-gallery { border: 0 !important; box-shadow: none !important; }
	html body.single-product.my35-storefront-v2 .woocommerce-product-gallery.my35-product-gallery-ready {
		padding-bottom: 58px !important;
	}
	html body.single-product.my35-storefront-v2 .woocommerce-product-gallery.my35-product-gallery-ready .woocommerce-product-gallery__wrapper,
	html body.single-product.my35-storefront-v2 .woocommerce-product-gallery.my35-product-gallery-ready .woocommerce-product-gallery__image a {
		min-height: 310px !important;
	}
	html body.single-product.my35-storefront-v2 .woocommerce-product-gallery.my35-product-gallery-ready .woocommerce-product-gallery__image img {
		max-height: 330px !important;
	}
	body.single-product.my35-storefront-v2 .summary.entry-summary { padding-top: 0; }
	body.single-product.my35-storefront-v2 .summary h1.product_title { font-size: 29px !important; }
	body.single-product.my35-storefront-v2 form.cart .single_add_to_cart_button { min-height: 55px !important; }

	.my35-sfr-mobile-dock {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		position: fixed;
		left: 10px;
		right: 10px;
		bottom: max(8px, env(safe-area-inset-bottom, 8px));
		z-index: 185;
		min-height: 58px;
		padding: 5px;
		border: 1px solid rgba(255, 199, 0, .35);
		border-radius: 8px;
		background: rgba(20, 24, 26, .98);
		box-shadow: 0 16px 38px -18px rgba(20, 24, 26, .72);
		backdrop-filter: blur(14px);
		opacity: 0;
		transform: translateY(88px);
		pointer-events: none;
		transition: opacity .2s ease, transform .2s ease;
	}

	body.my35-sfr-scrolled .my35-sfr-mobile-dock {
		opacity: 1;
		transform: none;
		pointer-events: auto;
	}

	.my35-sfr-mobile-dock a,
	.my35-sfr-mobile-dock button {
		position: relative;
		display: grid;
		place-items: center;
		gap: 2px;
		min-width: 0;
		padding: 4px;
		border: 0;
		background: transparent;
		color: #fff;
		font: inherit;
		font-size: 9.5px;
		font-weight: 750;
		text-decoration: none;
		cursor: pointer;
	}

	.my35-sfr-mobile-dock svg { color: var(--sfr-yellow); }

	.my35-sfr-mobile-dock i {
		position: absolute;
		top: 0;
		right: calc(50% - 18px);
		display: grid;
		place-items: center;
		min-width: 17px;
		height: 17px;
		padding: 0 4px;
		border-radius: 9px;
		background: var(--sfr-yellow);
		color: var(--sfr-ink);
		font-size: 9px;
		font-style: normal;
	}

	body.single-product .my35-sfr-mobile-dock,
	body.woocommerce-cart .my35-sfr-mobile-dock,
	body.woocommerce-checkout .my35-sfr-mobile-dock,
	body:has(#my35-ai-assistant-root.is-open) .my35-sfr-mobile-dock { display: none !important; }

	html body.my35-storefront-v2 #my35-ai-assistant-root:not(.is-open),
	html body.my35-storefront-v2 #my35-ai-assistant-root:not(.is-open) .my35-ai-launcher {
		display: none !important;
	}
}

@media (max-width: 380px) {
	body.home.my35-storefront-v2 .hero h1 .rot { font-size: 29px !important; }
}

/* The legacy floating AI launcher can cover product links on tablets and
 * compact desktops. Keep AI available through the in-page controls without
 * placing a fixed target over commerce content. */
@media (min-width: 768px) and (max-width: 1366px) {
	html body.my35-storefront-v2 #my35-ai-assistant-root:not(.is-open) .my35-ai-launcher {
		display: none !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.my35-storefront-v2 *,
	body.my35-storefront-v2 *::before,
	body.my35-storefront-v2 *::after {
		scroll-behavior: auto !important;
		animation-duration: .01ms !important;
		transition-duration: .01ms !important;
	}
}
