/*
 * "Professional Medical" homepage; scoped to storefront body classes.
 * The same header/footer styles serve shop, single-product, cart/checkout and
 * account pages because they reuse these template parts.
 */

/* ============================================================
   Header
   ============================================================ */
body.pharmacy-modern .pharmacy-site-header {
	background:var(--white);
	border-block-end:1px solid var(--border);
}
body.pharmacy-modern .header-main {
	display:flex;
	align-items:center;
	gap:36px;
	padding-block:18px;
}
body.pharmacy-modern .brand {
	display:flex;
	align-items:center;
	gap:12px;
	flex-shrink:0;
}
body.pharmacy-modern .brand-mark {
	display:grid;
	place-items:center;
	background:linear-gradient(150deg,var(--primary-strong),var(--primary-deep));
	color:var(--white);
	inline-size:48px;
	block-size:48px;
	border-radius:16px;
	box-shadow:0 8px 18px var(--shadow-accent-color);
	position:relative;
}
body.pharmacy-modern .brand-text {
	display:flex;
	flex-direction:column;
	line-height:1.5;
}
body.pharmacy-modern .brand strong {
	font-size:18px;
	font-weight:800;
	display:block;
}
body.pharmacy-modern .brand small {
	font-size:var(--s12);
	color:var(--muted);
	display:block;
}
body.pharmacy-modern .search {
	display:flex;
	align-items:center;
	gap:8px;
	background:var(--soft);
	border:1px solid var(--border);
	border-radius:14px;
	padding-inline:18px 5px;
	block-size:52px;
	flex:1;
	min-inline-size:0;
}
body.pharmacy-modern .search>svg {
	color:var(--muted);
}
body.pharmacy-modern .search input {
	min-inline-size:0;
	inline-size:100%;
	background:none;
	border:none;
	outline:none!important;
	font-size:var(--s14);
	color:var(--navy);
}
body.pharmacy-modern .search:focus-within {
	background:var(--white);
	border-color:var(--primary);
	box-shadow:0 0 0 3px var(--focus-ring-color);
}
body.pharmacy-modern .search .search-submit {
	display:grid;
	place-items:center;
	inline-size:42px;
	block-size:42px;
	color:var(--primary);
	background:var(--mint);
	border-radius:10px;
	flex-shrink:0;
}
body.pharmacy-modern .search .search-submit:hover {
	background:var(--primary);
	color:var(--white);
}
body.pharmacy-modern .header-actions {
	display:flex;
	align-items:center;
	gap:16px;
	flex-shrink:0;
}
body.pharmacy-modern .text-button {
	display:inline-flex;
	align-items:center;
	gap:8px;
	min-block-size:var(--control-h-sm);
	padding:0;
	font-weight:600;
}
body.pharmacy-modern .green {
	color:var(--primary);
}
body.pharmacy-modern .on-emerald {
	color:var(--white);
}
body.pharmacy-modern .action-divider {
	block-size:26px;
	inline-size:1px;
	background:var(--border);
}
body.pharmacy-modern .icon-button {
	display:grid;
	place-items:center;
	inline-size:44px;
	block-size:44px;
	border-radius:12px;
	position:relative;
	color:var(--navy);
}
body.pharmacy-modern .icon-button:hover {
	background:var(--mint);
	color:var(--primary);
}
body.pharmacy-modern .cart-count {
	display:grid;
	place-items:center;
	min-inline-size:18px;
	block-size:18px;
	border-radius:6px;
	background:var(--primary);
	color:var(--white);
	font-size:var(--s12);
	line-height:1;
}
body.pharmacy-modern .header-actions .cart-count {
	position:absolute;
	inset-block-start:1px;
	inset-inline-end:0;
	min-inline-size:20px;
	block-size:20px;
	font-size:11px;
	border:2px solid var(--white);
	padding-inline:2px;
}
body.pharmacy-modern .nav-border {
	border-block-start:1px solid var(--border);
	background:var(--white);
}
body.pharmacy-modern .navigation {
	display:flex;
	align-items:center;
	gap:28px;
	min-block-size:54px;
}
body.pharmacy-modern .navigation>a {
	display:flex;
	align-items:center;
	gap:8px;
	font-size:var(--s14);
	font-weight:500;
	min-block-size:var(--control-h);
	white-space:nowrap;
	color:var(--navy);
	border-radius:10px;
}
body.pharmacy-modern .navigation>a:hover {
	color:var(--primary);
}
body.pharmacy-modern .all-categories {
	padding-inline-end:24px;
	border-inline-end:1px solid var(--border);
	color:var(--primary);
	font-weight:700!important;
}
body.pharmacy-modern .all-categories svg:last-child {
	inline-size:16px;
}
body.pharmacy-modern .special-link {
	color:var(--primary);
}
body.pharmacy-modern .nav-guide {
	margin-inline-start:auto;
	color:var(--muted);
}
body.pharmacy-modern .mobile-menu,
body.pharmacy-modern .mobile-bottom {
	display:none;
}

/* ============================================================
   Hero
   ============================================================ */
body.pharmacy-modern .hero {
	margin-block-start:20px;
}
body.pharmacy-modern .hero-panel {
	position:relative;
	display:grid;
	grid-template-columns:1.03fr .97fr;
	grid-template-rows:1fr auto;
	min-block-size:460px;
	border-radius:var(--radius-hero);
	background:
		radial-gradient(120% 90% at 18% 12%,var(--primary-strong) 0%,transparent 58%),
		linear-gradient(135deg,var(--primary-deep) 0%,var(--primary) 55%,#0a6b5e 100%);
	overflow:hidden;
	box-shadow:0 24px 48px var(--shadow-color);
}
body.pharmacy-modern .hero-copy {
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:flex-start;
	padding:48px 56px 36px;
	grid-column:1;
	grid-row:1;
	position:relative;
	z-index:2;
}
body.pharmacy-modern .eyebrow.chip {
	display:inline-flex;
	align-items:center;
	gap:8px;
	font-size:var(--s12);
	font-weight:600;
	color:var(--white);
	background:var(--white-60);
	padding:8px 14px;
	border-radius:var(--radius-pill);
	margin-block-end:20px;
}
body.pharmacy-modern .eyebrow.chip svg {
	inline-size:16px;
	block-size:16px;
}
body.pharmacy-modern h1 {
	font-size:var(--s48);
	font-weight:850;
	line-height:1.5;
	color:var(--white);
	letter-spacing:0;
	text-wrap:balance;
}
body.pharmacy-modern h1 em {
	color:#B7E7DA;
	font-style:normal;
}
body.pharmacy-modern .hero-copy p {
	color:var(--white);
	opacity:.88;
	font-size:var(--s16);
	margin-block:16px 28px;
	line-height:1.95;
}
body.pharmacy-modern .hero-actions {
	display:flex;
	align-items:center;
	gap:16px;
	flex-wrap:wrap;
}
body.pharmacy-modern .hero-actions .hero-primary {
	background:var(--white);
	color:var(--primary-deep);
	font-weight:700;
	box-shadow:0 12px 28px #02312b40;
}
body.pharmacy-modern .hero-actions .hero-primary:hover {
	background:var(--mint);
	transform:translateY(-2px);
}
body.pharmacy-modern .hero-secondary {
	display:flex;
	align-items:center;
	gap:8px;
	font-weight:600;
	color:var(--white);
	opacity:.9;
	min-block-size:var(--control-h);
	padding-inline:8px;
	border-radius:var(--control);
}
body.pharmacy-modern .hero-secondary:hover {
	opacity:1;
	background:var(--white-60);
}
body.pharmacy-modern .hero-stage {
	grid-column:2;
	grid-row:1;
	position:relative;
	isolation:isolate;
	min-block-size:380px;
	overflow:hidden;
}
body.pharmacy-modern .stage-ring {
	position:absolute;
	inset-inline-start:16%;
	inset-block-start:26px;
	inline-size:400px;
	block-size:400px;
	border-radius:50%;
	background:radial-gradient(closest-side,#ffffff1f,#ffffff00);
}
body.pharmacy-modern .hero-product {
	position:absolute;
	display:grid;
	place-items:center;
	aspect-ratio:1;
	/* Deliberate white photo tile: real product photography presentation. */
	background:var(--white);
	border-radius:22px;
	padding:10px;
	box-shadow:0 20px 34px #02312b45;
}
body.pharmacy-modern .stage-main {
	inline-size:280px;
	inset-inline-start:14%;
	inset-block-end:64px;
	transform:rotate(-5deg);
	z-index:2;
}
body.pharmacy-modern .stage-side {
	inline-size:200px;
	inset-inline-start:52%;
	inset-block-end:30px;
	transform:rotate(4deg);
	z-index:1;
}
body.pharmacy-modern .hero-product img {
	inline-size:100%;
	block-size:auto;
	aspect-ratio:1;
	object-fit:contain;
}
body.pharmacy-modern .floating-note {
	position:absolute;
	inset-block-start:24px;
	inset-inline-end:16px;
	background:var(--white);
	padding:12px 16px;
	border-radius:14px;
	box-shadow:0 16px 30px #02312b3d;
	display:flex;
	gap:12px;
	align-items:center;
	z-index:3;
}
body.pharmacy-modern .floating-icon {
	display:grid;
	place-items:center;
	background:var(--mint);
	color:var(--primary-deep);
	inline-size:36px;
	block-size:36px;
	border-radius:50%;
}
body.pharmacy-modern .floating-icon svg {
	inline-size:18px;
	block-size:18px;
}
body.pharmacy-modern .floating-note strong {
	font-size:var(--s12);
	display:block;
}
body.pharmacy-modern .floating-note small {
	font-size:var(--s12);
	color:var(--muted);
}
body.pharmacy-modern .hero-foot {
	grid-column:1 / -1;
	grid-row:2;
	display:grid;
	grid-template-columns:repeat(4,1fr);
	padding:0;
	z-index:2;
}
body.pharmacy-modern .hero-foot>span {
	display:flex;
	align-items:center;
	gap:10px;
	padding:18px 22px;
	border-block-start:1px solid #ffffff24;
	border-inline-start:1px solid #ffffff24;
	color:var(--white);
	font-size:var(--s14);
	font-weight:550;
	white-space:nowrap;
}
body.pharmacy-modern .hero-foot>span:first-child {
	border-inline-start:0;
}
body.pharmacy-modern .hero-foot i {
	display:grid;
	place-items:center;
	inline-size:40px;
	block-size:40px;
	border-radius:12px;
	background:var(--white-60);
	flex-shrink:0;
}
body.pharmacy-modern .hero-foot svg {
	inline-size:20px;
	block-size:20px;
}

/* ============================================================
   Sections and headings
   ============================================================ */
body.pharmacy-modern .section {
	margin-block-start:48px;
	scroll-margin-block-start:20px;
}
body.pharmacy-modern .section-heading {
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:16px;
	margin-block-end:24px;
}
body.pharmacy-modern .kicker {
	font-size:var(--s12);
	color:var(--primary);
	margin-block-end:6px;
	font-weight:650;
	display:block;
}
body.pharmacy-modern h2 {
	font-size:var(--s28);
	font-weight:750;
	line-height:1.55;
	letter-spacing:-.2px;
}
body.pharmacy-modern .text-button svg {
	inline-size:18px;
}
body.pharmacy-modern .section-meta {
	color:var(--muted);
	font-size:var(--s12);
}

/* ============================================================
   Categories
   ============================================================ */
body.pharmacy-modern .categories {
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
	gap:16px;
}
body.pharmacy-modern .category {
	border:1px solid var(--border);
	border-radius:var(--radius-card);
	background:linear-gradient(165deg,#fbfdfc,var(--mint-soft));
	padding:14px;
	text-align:start;
	min-inline-size:0;
	transition:border-color var(--motion),box-shadow var(--motion),transform var(--motion);
}
body.pharmacy-modern .category:hover {
	border-color:var(--border-accent);
	box-shadow:var(--shadow-soft);
	transform:translateY(-2px);
}
body.pharmacy-modern .category-photo {
	display:grid;
	place-items:center;
	block-size:120px;
	border-radius:var(--radius);
	background:linear-gradient(165deg,var(--mint-soft),var(--mint));
	border:1px solid var(--mint-ring);
	overflow:hidden;
	margin-block-end:14px;
}
body.pharmacy-modern .category-photo img {
	inline-size:88px;
	block-size:104px;
	object-fit:contain;
	mix-blend-mode:multiply;
	transition:transform var(--motion);
}
body.pharmacy-modern .category:hover .category-photo img {
	transform:scale(1.06);
}
body.pharmacy-modern .category-glyph {
	display:grid;
	place-items:center;
	inline-size:64px;
	block-size:64px;
	border-radius:20px;
	background:var(--white);
	color:var(--primary);
	box-shadow:0 10px 20px var(--shadow-soft-color);
}
body.pharmacy-modern .category-glyph svg {
	inline-size:28px;
	block-size:28px;
	stroke-width:1.6;
}
body.pharmacy-modern .category-info strong {
	display:block;
	font-size:var(--s14);
	font-weight:700;
	color:var(--navy);
}
body.pharmacy-modern .category small {
	display:flex;
	justify-content:space-between;
	align-items:center;
	color:var(--muted);
	font-size:var(--s12);
	margin-block-start:6px;
}
body.pharmacy-modern .category-cta {
	display:inline-flex;
	align-items:center;
	gap:6px;
	color:var(--primary);
	font-weight:650;
	font-size:var(--s12);
}
body.pharmacy-modern .category small svg {
	inline-size:15px;
	block-size:15px;
}
body.pharmacy-modern .all-category .category-photo {
	flex-direction:column;
}
body.pharmacy-modern .all-category .category-glyph.all-glyph {
	background:var(--primary);
	color:var(--white);
	box-shadow:0 10px 20px var(--shadow-accent-color);
}

/* ============================================================
   Product sections and cards
   ============================================================ */
body.pharmacy-modern .product-section {
	background:transparent;
}
body.pharmacy-modern .product-toolbar {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	margin-block:-6px 22px;
}
body.pharmacy-modern .tabs {
	display:flex;
	gap:8px;
	flex-wrap:wrap;
}
body.pharmacy-modern .tabs a {
	display:flex;
	align-items:center;
	min-block-size:40px;
	padding:6px 18px;
	border-radius:var(--radius-pill);
	font-size:var(--s14);
	color:var(--muted);
	background:var(--white);
	border:1px solid var(--border);
}
body.pharmacy-modern .tabs a.active {
	background:var(--primary);
	color:var(--white);
	border-color:var(--primary);
	font-weight:600;
	box-shadow:0 8px 18px var(--shadow-accent-color);
}
body.pharmacy-modern .tabs a:hover:not(.active) {
	border-color:var(--border-accent);
	color:var(--primary);
}
body.pharmacy-modern .product-grid {
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:20px;
}
body.pharmacy-modern .product-card {
	display:flex;
	flex-direction:column;
	border:1px solid var(--border);
	border-radius:var(--radius-card);
	padding:12px;
	min-inline-size:0;
	background:var(--white);
	transition:box-shadow var(--motion),border-color var(--motion),transform var(--motion);
}
body.pharmacy-modern .product-card:hover {
	box-shadow:var(--shadow);
	border-color:var(--border-accent);
	transform:translateY(-2px);
}
body.pharmacy-modern .product-card .product-media {
	position:relative;
	background:linear-gradient(165deg,#fafcfa,var(--soft));
	border:1px solid var(--media-border);
	border-radius:var(--radius);
	margin-block-end:14px;
	display:grid;
	place-items:center;
	aspect-ratio:1;
	overflow:hidden;
}
body.pharmacy-modern .product-card .product-media img {
	inline-size:86%;
	block-size:100%;
	object-fit:contain;
	mix-blend-mode:multiply;
	padding:10px;
	transition:transform var(--motion);
}
body.pharmacy-modern .product-card:hover .product-media img {
	transform:translateY(-3px) scale(1.02);
}
body.pharmacy-modern .product-info {
	display:flex;
	flex-direction:column;
	flex:1;
	padding-inline:2px;
}
body.pharmacy-modern .product-meta {
	font-size:var(--s12);
	color:var(--muted);
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:8px;
	flex-wrap:wrap;
	margin-block-end:4px;
}
body.pharmacy-modern .product-card .product-status {
	display:inline-flex;
	align-items:center;
	padding:2px 10px;
	border-radius:var(--radius-pill);
	background:var(--mint);
	color:var(--primary-deep);
	font-size:11px;
	font-weight:600;
	line-height:1.8;
}
body.pharmacy-modern .product-card .out-of-stock {
	background:var(--neutral-soft);
	color:var(--neutral-text);
}
body.pharmacy-modern .product-card h3 {
	font-size:var(--s14);
	line-height:1.85;
	font-weight:650;
	min-block-size:var(--control-h);
}
body.pharmacy-modern .product-card h3 a {
	display:block;
}
body.pharmacy-modern .product-card h3 a:hover {
	color:var(--primary);
}
body.pharmacy-modern .product-description {
	font-size:var(--s12);
	color:var(--muted);
	margin-block-start:4px;
}
body.pharmacy-modern .product-price {
	display:flex;
	justify-content:flex-end;
	align-items:flex-end;
	margin-block-start:auto;
	padding-block-start:8px;
	margin-block-end:12px;
	min-block-size:74px;
}
body.pharmacy-modern .product-price .price {
	color:var(--primary-deep);
	font-size:20px;
	font-weight:750;
	line-height:1.6;
	text-align:end;
	font-variant-numeric:tabular-nums;
}
body.pharmacy-modern .product-price del {
	display:block;
	color:var(--muted);
	font-size:var(--s12);
	font-weight:400;
}
body.pharmacy-modern .product-price ins {
	text-decoration:none;
	background:none;
}
body.pharmacy-modern .product-price .woocommerce-Price-currencySymbol {
	font-size:var(--s12);
	font-weight:400;
}
body.pharmacy-modern .product-price .price-unavailable {
	font-size:var(--s12);
	color:var(--muted);
}
body.pharmacy-modern .discount {
	display:inline-flex;
	align-items:center;
	gap:2px;
	background:var(--sale);
	color:var(--white);
	font-size:var(--s12);
	padding:2px 10px;
	border-radius:var(--radius-pill);
	font-weight:700;
	line-height:1.6;
}
body.pharmacy-modern .product-sale-badge {
	position:absolute;
	inset-block-start:10px;
	inset-inline-start:10px;
	padding:2px 10px;
	font-size:11px;
}
body.pharmacy-modern .product-sale-badge strong {
	font-size:13px;
	font-weight:800;
}
body.pharmacy-modern .product-sale-badge small {
	font-size:10px;
	font-weight:500;
}
body.pharmacy-modern .product-action {
	margin-block-start:auto;
}
body.pharmacy-modern .add-cart {
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	inline-size:100%;
	border:1px solid var(--border);
	border-radius:var(--control);
	min-block-size:var(--control-h-sm);
	color:var(--primary-deep);
	font-size:var(--s14);
	font-weight:600;
}
body.pharmacy-modern .add-cart:hover {
	background:var(--primary);
	color:var(--white);
	border-color:var(--primary);
}
body.pharmacy-modern .empty-state {
	background:var(--white);
	padding:32px;
	border-radius:var(--radius-card);
	border:1px solid var(--border);
}
body.pharmacy-modern [hidden] {
	display:none!important;
}

/* ============================================================
   Campaigns and guide
   ============================================================ */
body.pharmacy-modern .campaigns {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:20px;
}
body.pharmacy-modern .campaign {
	border-radius:var(--radius-card);
	padding:32px;
	position:relative;
	overflow:hidden;
	min-block-size:230px;
	display:flex;
	align-items:center;
	color:var(--white);
	box-shadow:var(--shadow-soft);
}
body.pharmacy-modern .campaign>div {
	position:relative;
	z-index:1;
	max-inline-size:64%;
	display:flex;
	flex-direction:column;
	align-items:flex-start;
}
body.pharmacy-modern .campaign .kicker {
	color:#AFDCCB;
}
body.pharmacy-modern .campaign-emerald {
	background:linear-gradient(135deg,var(--primary-deep),var(--primary) 70%,#0d7a68);
}
body.pharmacy-modern .campaign-teal {
	background:linear-gradient(135deg,#0B4F46,#0A6B5E 65%,#117f70);
}
body.pharmacy-modern .campaign h2 {
	font-size:var(--s28);
	line-height:1.65;
	color:var(--white);
}
body.pharmacy-modern .campaign p {
	color:var(--white);
	opacity:.8;
	font-size:var(--s12);
	margin-block:12px 10px;
}
body.pharmacy-modern .campaign-symbol {
	position:absolute;
	inset-inline-end:-28px;
	inset-block-end:-16px;
	inline-size:190px;
	block-size:190px;
	border-radius:50%;
	display:grid;
	place-items:center;
	background:var(--white-60);
	color:var(--white);
	opacity:.5;
}
body.pharmacy-modern .campaign-symbol svg {
	inline-size:84px;
	block-size:84px;
	stroke-width:1.2;
	opacity:.6;
}
body.pharmacy-modern .campaign .text-button {
	min-block-size:var(--control-h-sm);
	padding-inline:14px;
	border-radius:var(--radius-pill);
	background:var(--white-60);
}
body.pharmacy-modern .campaign .text-button:hover {
	background:var(--white);
	color:var(--primary-deep);
}
body.pharmacy-modern .guide {
	display:flex;
	align-items:center;
	gap:24px;
	background:var(--mint);
	border:1px solid var(--border-accent);
	padding:26px 32px;
	border-radius:var(--radius-card);
	margin-block-end:52px;
}
body.pharmacy-modern .guide-symbol {
	inline-size:64px;
	block-size:64px;
	display:grid;
	place-items:center;
	flex-shrink:0;
	border-radius:20px;
	background:var(--white);
	color:var(--primary);
	box-shadow:0 10px 20px var(--shadow-soft-color);
}
body.pharmacy-modern .guide-symbol svg {
	inline-size:30px;
	block-size:30px;
}
body.pharmacy-modern .guide-copy {
	flex:1;
}
body.pharmacy-modern .guide h2 {
	font-size:var(--s20);
}
body.pharmacy-modern .guide p {
	color:var(--muted);
	margin-block-start:4px;
}
body.pharmacy-modern .guide small {
	font-size:var(--s12);
	color:var(--muted);
}
body.pharmacy-modern .guide .button {
	padding-block:8px;
}

/* ============================================================
   Footer
   ============================================================ */
body.pharmacy-modern footer {
	margin-block-start:56px;
}
body.pharmacy-modern .pharmacy-site-footer {
	background:linear-gradient(180deg,var(--primary-deep),#053d37);
	color:var(--white);
}
body.pharmacy-modern .footer-top {
	display:grid;
	grid-template-columns:1.4fr .9fr 1fr 1.2fr;
	gap:40px;
	padding-block:44px 36px;
}
body.pharmacy-modern .pharmacy-site-footer .brand {
	color:var(--white);
}
body.pharmacy-modern .pharmacy-site-footer .brand-mark {
	inline-size:44px;
	block-size:44px;
	border-radius:14px;
	box-shadow:none;
}
body.pharmacy-modern .footer-about p {
	font-size:var(--s12);
	color:#bcd9cf;
	margin-block:14px 8px;
	line-height:1.9;
}
body.pharmacy-modern .footer-top h3 {
	font-size:var(--s14);
	margin-block-end:14px;
	color:var(--white);
}
body.pharmacy-modern .footer-links>a {
	display:flex;
	align-items:center;
	min-block-size:34px;
	color:#cfe4dc;
	font-size:var(--s12);
	gap:8px;
}
body.pharmacy-modern .footer-links>a:hover {
	color:var(--white);
}
body.pharmacy-modern .footer-note {
	border:1px solid #ffffff24;
	border-radius:var(--radius);
	padding:18px 20px;
}
body.pharmacy-modern .footer-note-icon {
	display:grid;
	place-items:center;
	inline-size:40px;
	block-size:40px;
	border-radius:12px;
	background:var(--white-60);
	margin-block-end:10px;
}
body.pharmacy-modern .footer-note-icon svg {
	inline-size:20px;
	block-size:20px;
}
body.pharmacy-modern .footer-note strong {
	display:block;
	font-size:var(--s14);
}
body.pharmacy-modern .footer-note p {
	font-size:var(--s12);
	color:#bcd9cf;
	margin-block-start:6px;
	line-height:1.9;
}
body.pharmacy-modern .footer-bottom {
	border-block-start:1px solid #ffffff24;
	padding-block:16px;
	display:flex;
	justify-content:space-between;
	align-items:center;
	font-size:var(--s12);
	color:#bcd9cf;
}
body.pharmacy-modern .footer-bottom a {
	display:flex;
	align-items:center;
	gap:8px;
	min-block-size:var(--control-h-sm);
	color:#cfe4dc;
}
body.pharmacy-modern .footer-bottom a:hover {
	color:var(--white);
}
body.pharmacy-modern .sr-only {
	position:absolute;
	inline-size:1px;
	block-size:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip:rect(0,0,0,0);
	white-space:nowrap;
	border:0;
}

/* ============================================================
   Responsive adaptation
   ============================================================ */
@media(min-width:1440px) {
	body.pharmacy-modern .hero-copy {
		padding-inline-start:56px;
	}
	body.pharmacy-modern .stage-main {
		inline-size:330px;
	}
}
@media(max-width:1180px) {
	body.pharmacy-modern .header-main {
		gap:24px;
	}
	body.pharmacy-modern .navigation {
		gap:20px;
	}
	body.pharmacy-modern .nav-guide {
		display:none!important;
	}
	body.pharmacy-modern h1 {
		font-size:40px;
	}
	body.pharmacy-modern .hero-copy {
		padding:36px;
	}
	body.pharmacy-modern .stage-main {
		inline-size:260px;
		inset-inline-start:16%;
	}
	body.pharmacy-modern .stage-side {
		inline-size:190px;
	}
	body.pharmacy-modern .product-grid {
		gap:16px;
	}
	body.pharmacy-modern .campaign {
		padding:24px;
	}
	body.pharmacy-modern .footer-top {
		gap:24px;
	}
}
@media(max-width:900px) {
	body.pharmacy-modern .header-main {
		flex-wrap:wrap;
		gap:16px;
		padding-block:16px;
	}
	body.pharmacy-modern .brand {
		margin-inline-end:auto;
	}
	body.pharmacy-modern .search {
		order:3;
		flex-basis:100%;
	}
	body.pharmacy-modern .header-actions .login>span {
		display:none;
	}
	body.pharmacy-modern .action-divider {
		display:none;
	}
	body.pharmacy-modern .header-actions {
		gap:8px;
	}
	body.pharmacy-modern .hero {
		margin-block-start:16px;
	}
	body.pharmacy-modern .hero-panel {
		grid-template-columns:1fr;
		grid-template-rows:none;
		min-block-size:0;
	}
	body.pharmacy-modern .hero-copy {
		padding:32px 28px 8px;
		align-items:flex-start;
	}
	body.pharmacy-modern h1 {
		font-size:32px;
	}
	body.pharmacy-modern .hero-copy p {
		font-size:var(--s14);
	}
	body.pharmacy-modern .hero-copy p br {
		display:none;
	}
	body.pharmacy-modern .hero-stage {
		min-block-size:300px;
		max-inline-size:480px;
		inline-size:100%;
		margin-inline:auto;
	}
	body.pharmacy-modern .stage-ring {
		inline-size:280px;
		block-size:280px;
	}
	body.pharmacy-modern .stage-main {
		inline-size:220px;
		inset-inline-start:14%;
		inset-block-end:72px;
	}
	body.pharmacy-modern .stage-side {
		inline-size:160px;
		inset-inline-start:56%;
		inset-block-end:36px;
	}
	body.pharmacy-modern .floating-note {
		inset-block-start:16px;
		inset-inline-end:12px;
	}
	body.pharmacy-modern .hero-foot>span {
		font-size:var(--s12);
		gap:8px;
		padding:14px 12px;
		justify-content:center;
	}
	body.pharmacy-modern .hero-foot i {
		inline-size:34px;
		block-size:34px;
		border-radius:10px;
	}
	body.pharmacy-modern .section {
		margin-block-start:40px;
	}
	body.pharmacy-modern .product-grid {
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
	body.pharmacy-modern .categories {
		grid-template-columns:repeat(3,1fr);
	}
	body.pharmacy-modern .campaign h2 {
		font-size:var(--s20);
	}
	body.pharmacy-modern .campaign-symbol {
		inline-size:150px;
		block-size:150px;
	}
	body.pharmacy-modern .campaign-symbol svg {
		inline-size:64px;
		block-size:64px;
	}
	body.pharmacy-modern .category-photo {
		block-size:110px;
	}
	body.pharmacy-modern .footer-top {
		grid-template-columns:1fr 1fr;
	}
	/* Mobile drawer: the completed main menu moves into the dialog via JS,
	   so the hamburger replaces the desktop strip entirely below 900px. */
	body.pharmacy-modern .nav-border {
		display:none;
	}
	/* inline-flex overrides the grid centring of .icon-button; restore it */
	body.pharmacy-modern.pharmacy-menu-ready .mobile-menu {
		display:inline-flex;
		align-items:center;
		justify-content:center;
		padding:0;
	}
}
@media(max-width:600px) {
	body.pharmacy-modern .header-main {
		gap:10px;
		padding-block:12px 10px;
	}
	body.pharmacy-modern .brand {
		gap:10px;
	}
	body.pharmacy-modern .brand-mark {
		inline-size:42px;
		block-size:42px;
		border-radius:13px;
	}
	body.pharmacy-modern .brand-mark svg.lucide {
		inline-size:24px;
		block-size:24px;
	}
	body.pharmacy-modern .brand strong {
		font-size:var(--s16);
	}
	body.pharmacy-modern .brand small {
		font-size:10px;
	}
	body.pharmacy-modern .header-actions .login {
		display:none;
	}
	body.pharmacy-modern .search {
		block-size:48px;
		padding-inline:14px 4px;
	}
	body.pharmacy-modern .search input {
		font-size:var(--s16);
	}
	body.pharmacy-modern .search .search-submit {
		inline-size:40px;
		block-size:40px;
	}
	body.pharmacy-modern .hero {
		margin-block-start:12px;
	}
	body.pharmacy-modern .hero-panel {
		border-radius:var(--radius-card);
	}
	body.pharmacy-modern .hero-copy {
		padding:24px 20px 10px;
	}
	body.pharmacy-modern .eyebrow.chip {
		font-size:11px;
		padding:6px 12px;
		margin-block-end:14px;
	}
	body.pharmacy-modern h1 {
		font-size:30px;
		line-height:1.55;
	}
	body.pharmacy-modern .hero-copy p {
		font-size:var(--s14);
		margin-block:10px 18px;
	}
	body.pharmacy-modern .hero-actions {
		gap:12px;
	}
	body.pharmacy-modern .hero-actions .hero-primary {
		padding-inline:18px;
		flex:1;
	}
	body.pharmacy-modern .hero-secondary {
		min-block-size:var(--control-h-sm);
	}
	body.pharmacy-modern .hero-stage {
		min-block-size:250px;
	}
	body.pharmacy-modern .stage-main {
		inline-size:190px;
		inset-inline-start:16%;
		inset-block-end:60px;
	}
	body.pharmacy-modern .stage-side {
		inline-size:128px;
		inset-block-end:26px;
	}
	body.pharmacy-modern .floating-note {
		padding:8px 10px;
		gap:8px;
		inset-block-start:10px;
		inset-inline-end:10px;
	}
	body.pharmacy-modern .floating-note strong,
	body.pharmacy-modern .floating-note small {
		font-size:10px;
	}
	body.pharmacy-modern .floating-icon {
		inline-size:28px;
		block-size:28px;
	}
	body.pharmacy-modern .floating-icon svg {
		inline-size:15px;
		block-size:15px;
	}
	body.pharmacy-modern .hero-foot {
		grid-template-columns:repeat(2,1fr);
	}
	body.pharmacy-modern .hero-foot>span {
		justify-content:flex-start;
		padding:12px 14px;
		font-size:12px;
		border-inline-start:0;
	}
	body.pharmacy-modern .hero-foot>span:nth-child(even) {
		border-inline-start:1px solid #ffffff24;
	}
	body.pharmacy-modern .hero-foot i {
		inline-size:30px;
		block-size:30px;
		border-radius:9px;
	}
	body.pharmacy-modern .hero-foot svg {
		inline-size:16px;
		block-size:16px;
	}
	body.pharmacy-modern .section {
		margin-block-start:32px;
	}
	body.pharmacy-modern .section-heading {
		gap:12px;
		margin-block-end:18px;
	}
	body.pharmacy-modern .kicker {
		font-size:11px;
		margin-block-end:4px;
	}
	body.pharmacy-modern h2 {
		font-size:var(--s20);
	}
	body.pharmacy-modern .category-photo {
		block-size:96px;
		border-radius:12px;
		margin-block-end:10px;
	}
	body.pharmacy-modern .category-glyph {
		inline-size:54px;
		block-size:54px;
		border-radius:16px;
	}
	body.pharmacy-modern .category-glyph svg {
		inline-size:24px;
		block-size:24px;
	}
	body.pharmacy-modern .category-info strong {
		font-size:var(--s12);
	}
	body.pharmacy-modern .category small {
		font-size:10px;
		margin-block-start:4px;
	}
	body.pharmacy-modern .category small svg {
		display:none;
	}
	body.pharmacy-modern .product-section .section-heading {
		align-items:flex-end;
	}
	body.pharmacy-modern .product-section .section-heading h2 {
		max-inline-size:230px;
	}
	body.pharmacy-modern .section-heading .text-button {
		font-size:var(--s12);
		white-space:nowrap;
		gap:4px;
	}
	body.pharmacy-modern .section-heading .text-button svg {
		inline-size:16px;
	}
	body.pharmacy-modern .tabs {
		gap:6px;
		inline-size:100%;
		flex-wrap:nowrap;
		overflow-x:auto;
		scrollbar-width:none;
	}
	body.pharmacy-modern .tabs::-webkit-scrollbar {
		display:none;
	}
	body.pharmacy-modern .tabs a {
		padding:5px 14px;
		white-space:nowrap;
		font-size:var(--s12);
		min-block-size:36px;
	}
	body.pharmacy-modern .product-toolbar {
		margin-block-end:16px;
	}
	body.pharmacy-modern .product-grid {
		gap:12px;
	}
	body.pharmacy-modern .product-card {
		padding:10px;
		border-radius:var(--radius);
	}
	body.pharmacy-modern .product-card .product-media {
		margin-block-end:10px;
	}
	body.pharmacy-modern .product-card .product-media img {
		padding:6px;
	}
	body.pharmacy-modern .product-card h3 {
		font-size:13px;
		min-block-size:60px;
	}
	body.pharmacy-modern .product-price {
		min-block-size:64px;
		padding-block-start:6px;
		margin-block-end:10px;
	}
	body.pharmacy-modern .product-price .price {
		font-size:16px;
	}
	body.pharmacy-modern .product-price .woocommerce-Price-currencySymbol,
	body.pharmacy-modern .product-price del {
		font-size:10px;
	}
	body.pharmacy-modern .product-sale-badge strong {
		font-size:12px;
	}
	body.pharmacy-modern .product-sale-badge small {
		display:none;
	}
	body.pharmacy-modern .empty-state {
		padding:24px 20px;
	}
	body.pharmacy-modern .empty-state h3 {
		font-size:var(--s16);
	}
	body.pharmacy-modern .empty-state p {
		font-size:var(--s12);
	}
	body.pharmacy-modern .campaigns {
		grid-template-columns:1fr;
		gap:16px;
	}
	body.pharmacy-modern .campaign {
		min-block-size:190px;
		padding:22px;
	}
	body.pharmacy-modern .campaign>div {
		max-inline-size:78%;
	}
	body.pharmacy-modern .campaign h2 {
		font-size:var(--s20);
		line-height:1.7;
	}
	body.pharmacy-modern .campaign-symbol {
		inline-size:130px;
		block-size:130px;
		inset-inline-end:-18px;
		inset-block-end:-10px;
	}
	body.pharmacy-modern .guide {
		flex-wrap:wrap;
		padding:20px;
		margin-block-end:36px;
		gap:16px;
	}
	body.pharmacy-modern .guide-symbol {
		inline-size:48px;
		block-size:48px;
		border-radius:14px;
	}
	body.pharmacy-modern .guide-symbol svg {
		inline-size:24px;
		block-size:24px;
	}
	body.pharmacy-modern .guide-copy {
		flex-basis:calc(100% - 64px);
	}
	body.pharmacy-modern .guide .kicker {
		font-size:10px;
	}
	body.pharmacy-modern .guide h2 {
		font-size:var(--s16);
		line-height:1.8;
	}
	body.pharmacy-modern .guide p {
		font-size:var(--s12);
	}
	body.pharmacy-modern .guide .button {
		inline-size:100%;
		font-size:var(--s14);
	}
	body.pharmacy-modern .footer-top {
		grid-template-columns:1fr 1fr;
		gap:28px 20px;
		padding-block:30px 24px;
	}
	body.pharmacy-modern .footer-about {
		grid-column:1/-1;
	}
	body.pharmacy-modern .footer-note {
		grid-column:1/-1;
	}
	body.pharmacy-modern .footer-bottom {
		padding-block:8px 84px;
		font-size:10px;
	}
	body.pharmacy-modern .mobile-bottom {
		display:grid;
		grid-template-columns:repeat(4,1fr);
		position:fixed;
		inset-block-end:0;
		inset-inline:0;
		background:var(--white);
		border-block-start:1px solid var(--border);
		z-index:50;
		padding:6px 8px max(6px,env(safe-area-inset-bottom));
		box-shadow:0 -6px 24px var(--shadow-soft-color);
	}
	body.pharmacy-modern .mobile-bottom>a {
		display:flex;
		flex-direction:column;
		align-items:center;
		justify-content:center;
		gap:4px;
		font-size:10px;
		min-block-size:var(--control-h);
		color:var(--muted);
		position:relative;
		border-radius:12px;
		transition:color var(--motion);
	}
	body.pharmacy-modern .mobile-bottom svg.lucide {
		inline-size:22px;
		block-size:22px;
	}
	body.pharmacy-modern .mobile-bottom .active {
		color:var(--primary);
		font-weight:600;
	}
	body.pharmacy-modern .mobile-bottom .cart-count {
		position:absolute;
		inset-block-start:-2px;
		inset-inline-end:22%;
		min-inline-size:18px;
		block-size:18px;
		font-size:10px;
		border:0;
	}
}
/* Editorial homepage: grounded product photography, compact retail rhythm.
   Scoped to the homepage so catalog and transaction layouts stay unchanged. */
body.pharmacy-modern .pharmacy-home .medical-hero {
	display:grid;
	grid-template-columns:1fr 1fr;
	background:var(--primary-deep);
	border-radius:20px;
	overflow:hidden;
}
body.pharmacy-modern .medical-hero-copy {
	padding:48px 44px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:flex-start;
	color:var(--white);
}
body.pharmacy-modern .medical-eyebrow {
	display:flex;
	align-items:center;
	gap:10px;
	font-size:12px;
	color:var(--mint);
	margin-block-end:20px;
}
body.pharmacy-modern .medical-eyebrow::before {
	content:"";
	inline-size:24px;
	border-block-start:2px solid currentColor;
}
body.pharmacy-modern .medical-hero h1 {
	font-size:clamp(30px,3.1vw,46px);
	font-weight:800;
	line-height:1.6;
	letter-spacing:-1px;
	color:var(--white);
}
body.pharmacy-modern .medical-hero h1 em {
	font-style:normal;
	color:var(--mint);
}
body.pharmacy-modern .medical-hero-copy p {
	font-size:14px;
	line-height:2;
	color:var(--mint);
	max-inline-size:370px;
	margin-block:16px 26px;
}
body.pharmacy-modern .medical-hero-actions {
	display:flex;
	align-items:center;
	gap:22px;
	flex-wrap:wrap;
}
body.pharmacy-modern .medical-hero-actions a {
	display:inline-flex;
	align-items:center;
	gap:10px;
	min-block-size:44px;
	border-radius:8px;
	color:var(--white);
	font-size:13px;
}
body.pharmacy-modern .medical-hero-actions .button {
	background:var(--white);
	color:var(--primary-deep);
	padding:12px 22px;
	font-weight:750;
}
body.pharmacy-modern .medical-hero-actions a:hover {
	text-decoration:underline;
	text-underline-offset:5px;
}
body.pharmacy-modern .medical-hero-actions svg {
	inline-size:18px;
	block-size:18px;
}
body.pharmacy-modern .hero-still-life {
	background:#eaf0ec;
	padding:24px 32px 28px;
	min-inline-size:0;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
}
body.pharmacy-modern .hero-display-label {
	display:flex;
	align-items:center;
	justify-content:space-between;
	color:var(--primary);
	font-size:12px;
	padding-block-end:16px;
	border-block-end:1px solid var(--border-strong);
}
body.pharmacy-modern .hero-display-label svg {
	inline-size:24px;
	block-size:24px;
}
body.pharmacy-modern .hero-display-products {
	display:flex;
	align-items:flex-end;
	justify-content:center;
	gap:16px;
	flex:1;
	padding-block-start:20px;
}
body.pharmacy-modern .hero-display-product {
	flex:1;
	min-inline-size:0;
	color:var(--primary-deep);
}
body.pharmacy-modern .hero-display-product img {
	display:block;
	inline-size:100%;
	block-size:230px;
	object-fit:contain;
	mix-blend-mode:multiply;
}
body.pharmacy-modern .hero-display-product:nth-child(2) img {
	block-size:195px;
}
body.pharmacy-modern .hero-display-product>span {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:8px;
	font-size:11px;
	line-height:1.8;
	border-block-start:1px solid var(--border-strong);
	padding-block-start:12px;
	margin-block-start:16px;
	min-block-size:52px;
}
body.pharmacy-modern .hero-display-product>span svg {
	inline-size:16px;
	block-size:16px;
	flex-shrink:0;
}
body.pharmacy-modern .hero-display-product:hover>span {
	text-decoration:underline;
}
body.pharmacy-modern .hero-display-empty {
	display:grid;
	place-items:center;
	gap:24px;
	color:var(--primary);
	padding:40px;
}
body.pharmacy-modern .hero-display-empty svg {
	inline-size:100px;
	block-size:100px;
}
body.pharmacy-modern .medical-hero-foot {
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	padding-block:18px;
	border-block-end:1px solid var(--border);
}
body.pharmacy-modern .medical-hero-foot>span {
	display:flex;
	justify-content:center;
	align-items:center;
	gap:10px;
	font-size:12px;
	color:var(--muted);
	border-inline-start:1px solid var(--border);
}
body.pharmacy-modern .medical-hero-foot>span:first-child {
	border:0;
}
body.pharmacy-modern .medical-hero-foot i {
	display:flex;
	color:var(--primary);
}
body.pharmacy-modern .medical-hero-foot svg {
	inline-size:20px;
	block-size:20px;
}
body.pharmacy-modern .pharmacy-home .section {
	margin-block-start:36px;
}
body.pharmacy-modern .pharmacy-home h2 {
	font-size:24px;
	letter-spacing:-.5px;
}
body.pharmacy-modern .pharmacy-home .categories {
	grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
	gap:12px;
}
body.pharmacy-modern .pharmacy-home .category {
	display:flex;
	align-items:center;
	gap:14px;
	padding:16px 14px;
	background:var(--white);
	border-radius:12px;
}
body.pharmacy-modern .pharmacy-home .category-photo {
	inline-size:48px;
	block-size:52px;
	flex-shrink:0;
	background:var(--mint-soft);
	border:0;
	border-radius:12px;
	margin:0;
}
body.pharmacy-modern .pharmacy-home .category-glyph {
	inline-size:100%;
	block-size:100%;
	background:none;
	box-shadow:none;
}
body.pharmacy-modern .pharmacy-home .category-glyph svg {
	inline-size:26px;
	block-size:26px;
}
body.pharmacy-modern .pharmacy-home .all-category .category-glyph {
	background:var(--primary);
}
body.pharmacy-modern .pharmacy-home .category-info {
	min-inline-size:0;
}
body.pharmacy-modern .pharmacy-home .category-info strong {
	font-size:13px;
}
body.pharmacy-modern .pharmacy-home .category-cta {
	display:none;
}
body.pharmacy-modern .pharmacy-home .product-card {
	padding:14px;
	border-radius:14px;
	box-shadow:none;
}
body.pharmacy-modern .pharmacy-home .product-card:focus-within {
	border-color:var(--primary);
}
body.pharmacy-modern .pharmacy-home .product-card .product-media {
	aspect-ratio:auto;
	block-size:190px;
	background:var(--white);
	border:0;
	border-radius:8px;
	margin-block-end:12px;
}
body.pharmacy-modern .pharmacy-home .product-card .product-media img {
	position:absolute;
	inset:0;
	inline-size:100%;
	block-size:100%;
	padding:12px 22px;
	object-fit:contain;
}
body.pharmacy-modern .pharmacy-home .product-card h3 {
	font-size:14px;
	line-height:1.85;
	min-block-size:52px;
	margin-block:4px 8px;
}
body.pharmacy-modern .pharmacy-home .product-meta {
	margin:0;
}
body.pharmacy-modern .pharmacy-home .product-status {
	background:none;
	padding:0;
	font-size:10px;
	color:var(--muted);
}
body.pharmacy-modern .pharmacy-home .product-status::before {
	content:"";
	inline-size:5px;
	block-size:5px;
	border-radius:50%;
	background:var(--primary-strong);
	margin-inline-end:5px;
}
body.pharmacy-modern .pharmacy-home .out-of-stock::before {
	background:var(--muted);
}
body.pharmacy-modern .pharmacy-home .product-price {
	min-block-size:58px;
	padding-block-start:0;
	margin-block-end:12px;
}
body.pharmacy-modern .pharmacy-home .product-price .price,
body.pharmacy-modern .pharmacy-home .product-price .sale-price {
	display:flex;
	flex-direction:column;
	align-items:flex-end;
	gap:2px;
	font-size:21px;
	line-height:1.5;
	font-weight:800;
}
body.pharmacy-modern .pharmacy-home .product-price del {
	font-size:11px;
	font-weight:400;
}
body.pharmacy-modern .pharmacy-home .product-sale-badge {
	inset-block-start:2px;
	inset-inline-start:0;
	inset-inline-end:auto;
	padding:3px 8px;
	border-radius:6px;
	font-size:11px;
}
body.pharmacy-modern .pharmacy-home .product-action .button {
	min-block-size:44px;
	border-radius:8px;
	background:var(--primary-deep);
	color:var(--white);
	font-size:13px;
	font-weight:600;
}
body.pharmacy-modern .pharmacy-home .product-action .button:hover {
	background:var(--primary-strong);
	box-shadow:none;
}
body.pharmacy-modern .pharmacy-home .product-out .product-action .button {
	background:var(--soft);
	color:var(--muted);
	border:1px solid var(--border);
}
body.pharmacy-modern .pharmacy-home .product-media-fallback {
	inline-size:100%;
	block-size:100%;
	background:var(--soft);
	box-shadow:none;
	border-radius:8px;
	align-content:center;
	gap:12px;
	color:var(--muted);
}
body.pharmacy-modern .product-media-fallback small {
	font-size:11px;
	font-weight:400;
}
body.pharmacy-modern .pharmacy-home .campaign {
	background:var(--mint);
	border:1px solid var(--border-accent);
	box-shadow:none;
	border-radius:16px;
	min-block-size:180px;
	padding:28px;
	color:var(--primary-deep);
}
body.pharmacy-modern .pharmacy-home .campaign-teal {
	background:var(--sand);
	border-color:var(--border);
}
body.pharmacy-modern .pharmacy-home .campaign h2,
body.pharmacy-modern .pharmacy-home .campaign .kicker,
body.pharmacy-modern .pharmacy-home .campaign p,
body.pharmacy-modern .pharmacy-home .campaign a {
	color:var(--primary-deep);
}
body.pharmacy-modern .pharmacy-home .campaign a {
	background:var(--white);
	border-radius:8px;
	opacity:1;
}
body.pharmacy-modern .pharmacy-home .campaign-symbol {
	background:none;
	color:var(--primary);
	opacity:.18;
}
body.pharmacy-modern .pharmacy-home .guide {
	background:var(--white);
	border:1px solid var(--border);
}
@media(max-width:1100px) {
	body.pharmacy-modern .medical-hero-copy { padding:32px; }
	body.pharmacy-modern .hero-still-life { padding:24px; }
	body.pharmacy-modern .pharmacy-home .category { flex-direction:column; text-align:center; gap:10px; padding:14px 8px; }
	body.pharmacy-modern .pharmacy-home .category small { justify-content:center; }
}
@media(max-width:600px) {
	body.pharmacy-modern .pharmacy-home .medical-hero { grid-template-columns:1fr; border-radius:16px; }
	body.pharmacy-modern .medical-hero-copy { padding:26px 24px 28px; }
	body.pharmacy-modern .medical-eyebrow { font-size:11px; margin-block-end:12px; }
	body.pharmacy-modern .medical-hero h1 { font-size:30px; line-height:1.55; letter-spacing:-.7px; }
	body.pharmacy-modern .medical-hero-copy p { font-size:12px; line-height:1.9; margin-block:12px 18px; }
	body.pharmacy-modern .medical-hero-actions { gap:16px; }
	body.pharmacy-modern .medical-hero-actions a { font-size:11px; gap:6px; }
	body.pharmacy-modern .medical-hero-actions .button { padding:10px 16px; }
	body.pharmacy-modern .hero-still-life { padding:14px 20px 16px; }
	body.pharmacy-modern .hero-display-label { font-size:10px; padding-block-end:10px; }
	body.pharmacy-modern .hero-display-label svg { inline-size:18px; block-size:18px; }
	body.pharmacy-modern .hero-display-products { padding-block-start:12px; gap:20px; }
	body.pharmacy-modern .hero-display-product img { block-size:150px; }
	body.pharmacy-modern .hero-display-product:nth-child(2) img { block-size:130px; }
	body.pharmacy-modern .hero-display-product>span { font-size:10px; min-block-size:40px; padding-block-start:8px; margin-block-start:10px; }
	body.pharmacy-modern .medical-hero-foot { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 0; padding-block:16px; }
	body.pharmacy-modern .medical-hero-foot>span { font-size:10px; gap:8px; }
	body.pharmacy-modern .medical-hero-foot>span:nth-child(3) { border:0; }
	body.pharmacy-modern .medical-hero-foot svg { inline-size:17px; block-size:17px; }
	body.pharmacy-modern .pharmacy-home .section { margin-block-start:28px; }
	body.pharmacy-modern .pharmacy-home h2 { font-size:19px; }
	body.pharmacy-modern .pharmacy-home .section-heading { margin-block-end:16px; gap:12px; }
	body.pharmacy-modern .pharmacy-home .categories { display:flex; overflow-x:auto; gap:8px; padding-block-end:8px; scroll-snap-type:x proximity; }
	body.pharmacy-modern .pharmacy-home .category { flex:0 0 100px; scroll-snap-align:start; padding:14px 6px; }
	body.pharmacy-modern .pharmacy-home .category-photo { inline-size:44px; block-size:46px; }
	body.pharmacy-modern .pharmacy-home .category-info strong { font-size:11px; }
	body.pharmacy-modern .pharmacy-home .category small { font-size:10px; }
	body.pharmacy-modern .pharmacy-home .product-grid { gap:10px; }
	body.pharmacy-modern .pharmacy-home .product-card { padding:10px; border-radius:12px; }
	body.pharmacy-modern .pharmacy-home .product-card .product-media { block-size:142px; margin-block-end:8px; }
	body.pharmacy-modern .pharmacy-home .product-card .product-media img { padding:12px 10px; }
	body.pharmacy-modern .pharmacy-home .product-card h3 { font-size:12px; line-height:1.8; min-block-size:65px; margin-block-end:4px; }
	body.pharmacy-modern .pharmacy-home .product-price { min-block-size:46px; margin-block-end:10px; }
	body.pharmacy-modern .pharmacy-home .product-price .price { font-size:16px; }
	body.pharmacy-modern .pharmacy-home .product-price del { font-size:10px; }
	body.pharmacy-modern .pharmacy-home .product-action .button { padding:8px 4px; font-size:11px; }
	body.pharmacy-modern .pharmacy-home .product-sale-badge { font-size:10px; padding:2px 6px; }
	body.pharmacy-modern .pharmacy-home .product-sale-badge strong { font-size:11px; }
	body.pharmacy-modern .pharmacy-home .campaign { min-block-size:166px; padding:22px; }
}
@media(prefers-reduced-motion:reduce) {
	body.pharmacy-modern *,
	body.pharmacy-modern *::before,
	body.pharmacy-modern *::after {
		transition:none!important;
		animation:none!important;
	}
}
/* Homepage imagery: scoped refinement of the existing carousel and category cards. */
body.pharmacy-modern .pharmacy-home .pharmacy-slider {
 position:relative; overflow:hidden; border-radius:20px; background:var(--primary-deep); color:var(--white);
}
body.pharmacy-modern .pharmacy-home .pharmacy-slides { display:grid; touch-action:pan-y pinch-zoom; }
body.pharmacy-modern .pharmacy-home .pharmacy-slide {
 grid-area:1/1; display:grid; grid-template-columns:1fr 1fr; min-inline-size:0; min-block-size:440px;
 padding-block-end:68px; opacity:0; visibility:hidden; pointer-events:none;
 transition:opacity .65s ease,visibility .65s; background:var(--primary-deep);
}
body.pharmacy-modern .pharmacy-home .pharmacy-slide.is-active { opacity:1; visibility:visible; pointer-events:auto; }
body.pharmacy-modern .pharmacy-home .slider-copy {
 padding:var(--space-12); align-self:center; position:relative; z-index:1;
}
body.pharmacy-modern .pharmacy-home .slider-copy :is(h1,h2) {
 font-size:clamp(32px,3.3vw,48px); line-height:1.55; font-weight:800; color:var(--white);
 max-inline-size:14ch; margin:0; letter-spacing:-.025em; text-wrap:balance;
}
body.pharmacy-modern .pharmacy-home .slider-copy p {
 font-size:var(--text-sm); line-height:2; color:var(--mint); max-inline-size:38ch; margin-block:var(--space-4) var(--space-6);
}
body.pharmacy-modern .pharmacy-home .slider-copy .button {
 display:inline-flex; align-items:center; gap:var(--space-4); min-block-size:48px;
 padding:var(--space-3) var(--space-6); border-radius:8px; background:var(--white); color:var(--primary-deep); font-weight:700;
}
body.pharmacy-modern .pharmacy-home .slider-copy .button:hover { background:var(--mint); }
body.pharmacy-modern .pharmacy-home .slider-copy .button svg { inline-size:18px; block-size:18px; }
body.pharmacy-modern .pharmacy-home .slider-art {
 display:flex; flex-direction:column; justify-content:flex-end; align-items:center; gap:var(--space-4);
 position:relative; padding:var(--space-8) var(--space-8) var(--space-6); min-inline-size:0;
 background:var(--white); border-inline-start:1px solid var(--border-accent);
}
body.pharmacy-modern .pharmacy-home .slider-art img {
 display:block; inline-size:auto; block-size:auto; max-inline-size:min(100%,540px); max-block-size:264px;
 object-fit:contain; filter:none;
}
body.pharmacy-modern .pharmacy-home .slide-sports .slider-art img { max-block-size:284px; }
body.pharmacy-modern .pharmacy-home .slider-caption {
 display:block; flex-shrink:0; inline-size:100%; border-block-start:1px solid var(--border-accent);
 padding-block-start:var(--space-3); color:var(--primary-deep); font-size:var(--text-xs); text-align:center;
}
body.pharmacy-modern .pharmacy-home .slider-controls {
 position:absolute; inset-inline:0; inset-block-end:0; display:flex; align-items:center;
 justify-content:space-between; gap:var(--space-3); z-index:2; min-block-size:68px;
 padding:var(--space-3) var(--space-8); background:var(--primary-deep); border-block-start:1px solid var(--white-60);
}
body.pharmacy-modern .pharmacy-home .slider-controls[hidden] { display:none; }
body.pharmacy-modern .pharmacy-home .slider-arrows,body.pharmacy-modern .pharmacy-home .slider-dots { display:flex; gap:var(--space-1); }
body.pharmacy-modern .pharmacy-home .slider-controls button {
 display:grid; place-items:center; background:transparent; color:var(--white); border:1px solid var(--white-60);
 border-radius:8px; padding:0 var(--space-3); min-inline-size:44px; min-block-size:44px; font:inherit; font-size:var(--text-xs); cursor:pointer;
}
body.pharmacy-modern .pharmacy-home .slider-arrows svg { inline-size:18px; block-size:18px; }
body.pharmacy-modern .pharmacy-home [data-slide-prev] svg { transform:rotate(180deg); }
body.pharmacy-modern .pharmacy-home .slider-dots button { border:0; min-inline-size:44px; padding:var(--space-2); }
body.pharmacy-modern .pharmacy-home .slider-dots span {
 display:block; inline-size:24px; block-size:8px; border-radius:8px; background:var(--white-60); transform:scaleX(.3333); transition:transform .25s;
}
body.pharmacy-modern .pharmacy-home .slider-dots [aria-pressed=true] span { transform:scaleX(1); background:var(--white); }
body.pharmacy-modern .pharmacy-home .slider-controls button:hover { background:var(--primary-strong); }
body.pharmacy-modern .pharmacy-home .slider-controls button:disabled { cursor:default; }
body.pharmacy-modern .pharmacy-home :is(.slider-controls button,.slider-copy a):focus-visible {
 outline:2px solid var(--white); outline-offset:3px;
}
body.pharmacy-modern .pharmacy-home .category:focus-visible { outline:2px solid var(--primary); outline-offset:3px; }
body.pharmacy-modern .pharmacy-home .categories { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:var(--space-3); }
body.pharmacy-modern .pharmacy-home .category {
 display:flex; flex-direction:column; align-items:center; gap:var(--space-3); padding:var(--space-4) var(--space-3);
 background:var(--media-bg); border:1px solid var(--border); border-radius:12px; text-align:center;
 min-inline-size:0; transition:background .2s,border-color .2s;
}
body.pharmacy-modern .pharmacy-home .category:hover { background:var(--mint-soft); border-color:var(--primary); }
body.pharmacy-modern .pharmacy-home .category-photo {
 display:grid; place-items:center; inline-size:100%; block-size:100px; background:transparent; overflow:visible; border-radius:0;
}
body.pharmacy-modern .pharmacy-home .category-photo img {
 inline-size:auto; block-size:auto; max-inline-size:80px; max-block-size:88px; object-fit:contain;
 mix-blend-mode:normal; transform:none;
}
body.pharmacy-modern .pharmacy-home .category:hover .category-photo img { transform:none; }
body.pharmacy-modern .pharmacy-home .all-category .category-glyph.all-glyph {
 inline-size:80px; block-size:88px; border-radius:12px; background:transparent; color:var(--primary); box-shadow:none;
}
body.pharmacy-modern .pharmacy-home .all-category .category-glyph svg { inline-size:36px; block-size:36px; }
body.pharmacy-modern .pharmacy-home .category-info { inline-size:100%; }
body.pharmacy-modern .pharmacy-home .category-info strong { font-size:var(--text-sm); line-height:1.8; }
body.pharmacy-modern .pharmacy-home .category small { justify-content:center; margin-block-start:var(--space-1); font-variant-numeric:tabular-nums; }
body.pharmacy-modern .pharmacy-home .category-cta { display:none; }
@media(max-width:900px) {
 body.pharmacy-modern .pharmacy-home .slider-copy { padding:var(--space-8); }
 body.pharmacy-modern .pharmacy-home .slider-art { padding-inline:var(--space-4); }
 body.pharmacy-modern .pharmacy-home .categories { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:600px) {
 body.pharmacy-modern .pharmacy-home .pharmacy-slider { border-radius:16px; }
 body.pharmacy-modern .pharmacy-home .pharmacy-slide {
  grid-template-columns:1fr; grid-template-rows:auto 192px; min-block-size:0; padding-block-end:60px;
 }
 body.pharmacy-modern .pharmacy-home .slider-copy { padding:var(--space-4) var(--space-6); }
 body.pharmacy-modern .pharmacy-home .slider-copy :is(h1,h2) { font-size:28px; max-inline-size:100%; }
 body.pharmacy-modern .pharmacy-home .slider-copy p { font-size:var(--text-sm); margin-block:var(--space-2) var(--space-3); line-height:1.85; }
 body.pharmacy-modern .pharmacy-home .slider-copy .button { font-size:var(--text-sm); min-block-size:46px; padding:var(--space-3) var(--space-4); }
 body.pharmacy-modern .pharmacy-home .slider-art { padding:var(--space-3) var(--space-4); gap:var(--space-2); border-inline-start:0; }
 body.pharmacy-modern .pharmacy-home .slider-art img { max-block-size:132px; }
 body.pharmacy-modern .pharmacy-home .slide-sports .slider-art img { max-block-size:132px; }
 body.pharmacy-modern .pharmacy-home .slider-caption { font-size:var(--text-xs); padding-block-start:var(--space-1); }
 body.pharmacy-modern .pharmacy-home .slider-controls { min-block-size:60px; padding:var(--space-2) var(--space-3); gap:var(--space-1); }
 body.pharmacy-modern .pharmacy-home .slider-dots { gap:0; }
 body.pharmacy-modern .pharmacy-home .categories { grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-3); overflow:visible; }
 body.pharmacy-modern .pharmacy-home .category { padding:var(--space-3); gap:var(--space-2); }
 body.pharmacy-modern .pharmacy-home .category-photo { inline-size:100%; block-size:88px; }
 body.pharmacy-modern .pharmacy-home .category-info strong { font-size:var(--text-sm); }
 body.pharmacy-modern .pharmacy-home .category small { font-size:var(--text-xs); }
}
@media(prefers-reduced-motion:reduce) {
 body.pharmacy-modern .pharmacy-home :is(.pharmacy-slide,.slider-dots span,.category) { transition:none; }
}

/* Homepage merchandising: private-preview imagery, shared storefront unchanged. */
body.pharmacy-modern .pharmacy-home .hero { margin-block-start:24px; }
body.pharmacy-modern .pharmacy-home .pharmacy-slider { border:0; border-radius:20px; box-shadow:none; }
body.pharmacy-modern .pharmacy-home .pharmacy-slide { grid-template-columns:1fr 1.12fr; min-block-size:408px; padding-block-end:56px; background:var(--peach); }
body.pharmacy-modern .pharmacy-home .slide-dietary { background:var(--mint); }
body.pharmacy-modern .pharmacy-home .slide-sports { background:var(--blue); }
body.pharmacy-modern .pharmacy-home .slider-copy { padding:40px 48px; }
body.pharmacy-modern .pharmacy-home .slider-copy :is(h1,h2) { color:var(--primary-deep); font-size:clamp(32px,3.4vw,48px); max-inline-size:13ch; letter-spacing:0; }
body.pharmacy-modern .pharmacy-home .slider-copy p { color:var(--navy); font-size:16px; margin-block:16px 24px; max-inline-size:36ch; }
body.pharmacy-modern .pharmacy-home .slider-copy .button { color:var(--white); background:var(--primary); border-radius:10px; }
body.pharmacy-modern .pharmacy-home .slider-copy .button:hover { background:var(--primary-deep); }
body.pharmacy-modern .pharmacy-home .slider-art { justify-content:center; padding:32px 32px 20px; border:0; background:transparent; gap:16px; }
body.pharmacy-modern .pharmacy-home .slider-art img { max-inline-size:100%; max-block-size:244px; filter:drop-shadow(0 14px 12px #18312e18); }
body.pharmacy-modern .pharmacy-home .slide-sports .slider-art img { max-block-size:272px; }
body.pharmacy-modern .pharmacy-home .slider-caption { inline-size:auto; border:0; color:var(--primary-deep); padding:0; font-size:12px; }
body.pharmacy-modern .pharmacy-home .slider-controls { min-block-size:56px; padding:6px 24px; background:transparent; border-block-start:1px solid #18312e18; }
body.pharmacy-modern .pharmacy-home .slider-controls button { color:var(--primary-deep); border-color:#18312e30; }
body.pharmacy-modern .pharmacy-home .slider-controls button:hover { background:#ffffff80; }
body.pharmacy-modern .pharmacy-home .slider-dots span { background:#075a5050; }
body.pharmacy-modern .pharmacy-home .slider-dots [aria-pressed=true] span { background:var(--primary); }
body.pharmacy-modern .pharmacy-home :is(.slider-controls button,.slider-copy a):focus-visible { outline-color:var(--primary); }
body.pharmacy-modern .pharmacy-home .home-collections { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-block-start:20px; }
body.pharmacy-modern .pharmacy-home .home-collection { display:grid; grid-template-columns:1.1fr .9fr; align-items:center; min-block-size:220px; padding:24px 28px; border-radius:16px; background:var(--mint); gap:16px; overflow:hidden; }
body.pharmacy-modern .pharmacy-home .collection-sports { background:var(--blue); }
body.pharmacy-modern .pharmacy-home .home-collection h2 { font-size:26px; color:var(--primary-deep); margin:0; }
body.pharmacy-modern .pharmacy-home .home-collection p { font-size:14px; line-height:1.9; color:var(--navy); margin-block:8px 16px; }
body.pharmacy-modern .pharmacy-home .home-collection img { inline-size:100%; block-size:164px; object-fit:contain; filter:drop-shadow(0 8px 8px #18312e14); }
body.pharmacy-modern .pharmacy-home .collection-link { display:inline-flex; align-items:center; gap:12px; font-size:14px; font-weight:700; color:var(--primary); min-block-size:44px; }
body.pharmacy-modern .pharmacy-home .collection-link svg { inline-size:18px; block-size:18px; }
body.pharmacy-modern .pharmacy-home .home-collection:hover .collection-link { text-decoration:underline; text-underline-offset:5px; }
body.pharmacy-modern .pharmacy-home .section { margin-block-start:40px; }
body.pharmacy-modern .pharmacy-home .section-heading { margin-block-end:20px; align-items:center; }
body.pharmacy-modern .pharmacy-home .section-heading h2 { font-size:26px; }
body.pharmacy-modern .pharmacy-home .categories { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
body.pharmacy-modern .pharmacy-home .category { flex-direction:row; text-align:start; padding:16px 24px; gap:20px; background:var(--white); border-radius:16px; }
body.pharmacy-modern .pharmacy-home .category-photo { inline-size:88px; block-size:88px; border:0; margin:0; flex-shrink:0; }
body.pharmacy-modern .pharmacy-home .category-photo img { max-inline-size:80px; max-block-size:88px; }
body.pharmacy-modern .pharmacy-home .category-info strong { font-size:16px; }
body.pharmacy-modern .pharmacy-home .category small { justify-content:flex-start; }
body.pharmacy-modern .pharmacy-home #pharmacy-sale { background:var(--peach); padding:28px; border-radius:20px; }
body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading h2 { color:var(--sale); }
body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading a { color:var(--sale); }
body.pharmacy-modern .pharmacy-home .product-grid { gap:16px; }
body.pharmacy-modern .pharmacy-home .product-card { border:1px solid var(--border); border-radius:16px; padding:12px; background:var(--white); }
body.pharmacy-modern .pharmacy-home .product-card .product-media { background:var(--white); aspect-ratio:1; block-size:auto; border:0; }
body.pharmacy-modern .pharmacy-home .product-card .product-media img { inline-size:86%; block-size:100%; padding:12px; mix-blend-mode:normal; }
body.pharmacy-modern .pharmacy-home .product-card h3 { font-size:14px; line-height:1.9; min-block-size:56px; }
body.pharmacy-modern .pharmacy-home .product-price { padding-block-start:12px; min-block-size:72px; }
body.pharmacy-modern .pharmacy-home .tabs { gap:8px; }
body.pharmacy-modern .pharmacy-home .guide { margin-block-end:40px; padding:24px; }
@media(max-width:900px) {
 body.pharmacy-modern .pharmacy-home .slider-copy { padding:28px; }
 body.pharmacy-modern .pharmacy-home .home-collection { padding:20px; grid-template-columns:1.2fr .8fr; }
 body.pharmacy-modern .pharmacy-home .home-collection h2 { font-size:22px; }
 body.pharmacy-modern .pharmacy-home .category { padding:12px; gap:12px; }
 body.pharmacy-modern .pharmacy-home .category-photo { inline-size:64px; }
 body.pharmacy-modern .pharmacy-home .category-info strong { font-size:14px; }
}
@media(max-width:600px) {
 body.pharmacy-modern .pharmacy-home .hero { margin-block-start:16px; }
 body.pharmacy-modern .pharmacy-home .pharmacy-slide { grid-template-columns:1fr; grid-template-rows:auto 170px; min-block-size:0; padding-block-end:56px; }
 body.pharmacy-modern .pharmacy-home .slider-copy { padding:24px 24px 0; }
 body.pharmacy-modern .pharmacy-home .slider-copy :is(h1,h2) { font-size:30px; max-inline-size:none; }
 body.pharmacy-modern .pharmacy-home .slider-copy p { font-size:14px; margin-block:8px 12px; line-height:1.85; }
 body.pharmacy-modern .pharmacy-home .slider-copy .button { min-block-size:44px; padding:8px 16px; }
 body.pharmacy-modern .pharmacy-home .slider-art { padding:8px 20px 12px; gap:6px; }
 body.pharmacy-modern .pharmacy-home .slider-art img { max-block-size:122px; max-inline-size:100%; }
 body.pharmacy-modern .pharmacy-home .slide-sports .slider-art img { max-block-size:132px; }
 body.pharmacy-modern .pharmacy-home .slider-caption { font-size:11px; }
 body.pharmacy-modern .pharmacy-home .slider-controls { padding-inline:12px; }
 body.pharmacy-modern .pharmacy-home .home-collections { grid-template-columns:1fr; gap:12px; margin-block-start:16px; }
 body.pharmacy-modern .pharmacy-home .home-collection { min-block-size:164px; padding:16px 20px; grid-template-columns:1.2fr .8fr; gap:12px; }
 body.pharmacy-modern .pharmacy-home .home-collection h2 { font-size:22px; }
 body.pharmacy-modern .pharmacy-home .home-collection p { font-size:12px; margin-block:4px 8px; }
 body.pharmacy-modern .pharmacy-home .home-collection img { block-size:128px; }
 body.pharmacy-modern .pharmacy-home .collection-link { font-size:12px; }
 body.pharmacy-modern .pharmacy-home .section { margin-block-start:28px; }
 body.pharmacy-modern .pharmacy-home .section-heading h2 { font-size:22px; }
 body.pharmacy-modern .pharmacy-home .categories { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
 body.pharmacy-modern .pharmacy-home .category { flex-direction:column; padding:12px 4px; text-align:center; gap:8px; }
 body.pharmacy-modern .pharmacy-home .category-photo { inline-size:100%; block-size:72px; }
 body.pharmacy-modern .pharmacy-home .category-photo img { max-inline-size:64px; max-block-size:72px; }
 body.pharmacy-modern .pharmacy-home .all-category .category-glyph.all-glyph { inline-size:64px; block-size:72px; }
 body.pharmacy-modern .pharmacy-home .category-info strong { font-size:12px; }
 body.pharmacy-modern .pharmacy-home .category small { justify-content:center; }
 body.pharmacy-modern .pharmacy-home #pharmacy-sale { padding:16px 12px; }
 body.pharmacy-modern .pharmacy-home .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 body.pharmacy-modern .pharmacy-home .product-card { padding:8px; }
 body.pharmacy-modern .pharmacy-home .product-card h3 { font-size:13px; min-block-size:76px; }
 body.pharmacy-modern .pharmacy-home .product-price .price { font-size:18px; }
 body.pharmacy-modern .pharmacy-home .product-action .button { font-size:12px; padding-inline:6px; }
 body.pharmacy-modern .pharmacy-home .guide { margin-block-end:28px; }
}
/* Approved four-slide campaign photography; copy and controls remain native HTML. */
body.pharmacy-modern .pharmacy-home .campaign-hero { position:relative; isolation:isolate; display:grid; grid-template-columns:1fr; min-block-size:440px; padding-block-end:56px; background:var(--peach); }
body.pharmacy-modern .pharmacy-home .campaign-hero .slider-art { position:absolute; inset:0; z-index:-2; padding:0; border:0; background:none; display:block; }
body.pharmacy-modern .pharmacy-home .campaign-hero .slider-art img { inline-size:100%; block-size:100%; max-inline-size:none; max-block-size:none; object-fit:cover; object-position:center; filter:none; }
body.pharmacy-modern .pharmacy-home .campaign-hero::before { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(to left,#faf6eeab,transparent 64%); pointer-events:none; }
body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy { inline-size:46%; padding:40px 48px; justify-self:start; }
body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy :is(h1,h2) { font-size:clamp(30px,3vw,42px); line-height:1.55; letter-spacing:0; max-inline-size:16ch; color:var(--primary-deep); }
body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy p { font-size:16px; font-weight:400; line-height:1.95; margin-block:14px 24px; max-inline-size:32ch; color:var(--navy); }
body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy .button { background:var(--primary); color:var(--white); }
body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy .button:hover { background:var(--primary-deep); }
body.pharmacy-modern .pharmacy-home .campaign-hero.slide-sports::before { background:linear-gradient(to left,#092e2be6,#092e2b88 42%,transparent 65%); }
body.pharmacy-modern .pharmacy-home .campaign-hero.slide-sports .slider-copy :is(h1,h2) { color:var(--white); }
body.pharmacy-modern .pharmacy-home .campaign-hero.slide-sports .slider-copy p { color:var(--white); }
body.pharmacy-modern .pharmacy-home .campaign-hero.slide-sports .slider-copy .button { background:var(--white); color:var(--primary-deep); }
body.pharmacy-modern .pharmacy-home .hero .slider-controls { background:var(--white); }
@media(max-width:900px) {
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy { inline-size:48%; padding:28px; }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy :is(h1,h2) { font-size:32px; }
}
@media(max-width:600px) {
 body.pharmacy-modern .pharmacy-home .campaign-hero { grid-template-columns:1fr; grid-template-rows:auto 210px; min-block-size:0; background:var(--peach); }
 body.pharmacy-modern .pharmacy-home .campaign-hero.slide-wellness { background:var(--sand); }
 body.pharmacy-modern .pharmacy-home .campaign-hero.slide-dietary { background:var(--mint-soft); }
 body.pharmacy-modern .pharmacy-home .campaign-hero.slide-sports { background:var(--primary-deep); }
 body.pharmacy-modern .pharmacy-home .campaign-hero::before { display:none; }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy { inline-size:100%; padding:22px 24px 18px; grid-row:1; }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy :is(h1,h2) { font-size:28px; max-inline-size:none; }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy p { font-size:14px; line-height:1.85; margin-block:8px 14px; max-inline-size:none; }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy .button { min-block-size:44px; padding:8px 16px; }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-art { position:relative; inset:auto; z-index:0; grid-row:2; overflow:hidden; }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-art img { object-position:left center; }
 body.pharmacy-modern .pharmacy-home .hero .slider-controls { padding-inline:10px; gap:4px; min-block-size:56px; }
 body.pharmacy-modern .pharmacy-home .hero .slider-dots button { min-inline-size:32px; padding-inline:4px; }
 body.pharmacy-modern .pharmacy-home .hero [data-slide-pause] { min-inline-size:44px; padding-inline:6px; }
}

/* Supporting campaigns share the approved photographic art direction. */
body.pharmacy-modern .pharmacy-home .home-collection { position:relative; isolation:isolate; display:flex; min-block-size:224px; padding:28px; gap:0; background:var(--mint-soft); }
body.pharmacy-modern .pharmacy-home .home-collection > img { position:absolute; inset:0; z-index:-2; inline-size:100%; block-size:100%; object-fit:cover; object-position:center; filter:none; }
body.pharmacy-modern .pharmacy-home .home-collection::before { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(to left,#f0f9f5ed,transparent 70%); pointer-events:none; }
body.pharmacy-modern .pharmacy-home .home-collection > div { inline-size:52%; margin-inline-end:auto; }
body.pharmacy-modern .pharmacy-home .home-collection h2 { font-size:25px; line-height:1.6; }
body.pharmacy-modern .pharmacy-home .home-collection p { font-size:13px; line-height:1.85; margin-block:6px 10px; }
body.pharmacy-modern .pharmacy-home .home-collection .collection-link { font-size:13px; min-block-size:44px; text-decoration:underline; text-underline-offset:5px; }
body.pharmacy-modern .pharmacy-home .collection-sports::before { background:linear-gradient(to left,#092e2beF,#092e2b99 48%,transparent 72%); }
body.pharmacy-modern .pharmacy-home .collection-sports :is(h2,p,.collection-link) { color:var(--white); }
body.pharmacy-modern .pharmacy-home .home-collection:focus-visible { outline:3px solid var(--primary); outline-offset:4px; }
@media(max-width:900px) {
 body.pharmacy-modern .pharmacy-home .home-collection { padding:20px; }
 body.pharmacy-modern .pharmacy-home .home-collection h2 { font-size:22px; }
}
@media(max-width:600px) {
 body.pharmacy-modern .pharmacy-home .home-collection { min-block-size:212px; padding:18px; }
 body.pharmacy-modern .pharmacy-home .home-collection > div { inline-size:52%; }
 body.pharmacy-modern .pharmacy-home .home-collection > img { object-position:25% center; }
 body.pharmacy-modern .pharmacy-home .home-collection h2 { font-size:21px; }
 body.pharmacy-modern .pharmacy-home .home-collection p { font-size:12px; margin-block:6px; }
 body.pharmacy-modern .pharmacy-home .home-collection .collection-link { font-size:12px; gap:6px; }
}

/* Homepage merchandising: a sale destination followed by a distinct discovery grid. */
body.pharmacy-modern .pharmacy-home #pharmacy-sale { display:grid; grid-template-columns:176px minmax(0,1fr); gap:24px; padding:24px; background:var(--primary-deep); border-radius:20px; }
body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:20px; margin:0; }
body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading h2 { font-size:29px; line-height:1.65; color:var(--white); }
body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading p { font-size:13px; line-height:1.95; color:var(--mint); margin-block:12px 0; }
body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading a { color:var(--white); font-size:13px; text-decoration:underline; text-underline-offset:6px; }
body.pharmacy-modern .pharmacy-home .sale-selection-icon { display:block; margin-block-end:20px; color:var(--mint); }
body.pharmacy-modern .pharmacy-home .sale-selection-icon svg { inline-size:40px; block-size:40px; }
body.pharmacy-modern .pharmacy-home #pharmacy-sale .product-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; align-items:stretch; }
body.pharmacy-modern .pharmacy-home #pharmacy-sale .product-card { display:flex; flex-direction:column; border:0; padding:12px; border-radius:12px; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-card { position:relative; box-shadow:none; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-card:hover { transform:none; border-color:var(--border-accent); }
body.pharmacy-modern .pharmacy-home #pharmacy-sale .product-media { margin-block-end:6px; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-media { aspect-ratio:auto; block-size:196px; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-media img { inline-size:100%; block-size:100%; padding:6px; object-fit:contain; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-card:hover .product-media img { transform:none; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-info { padding:0; min-inline-size:0; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-card h3 { min-block-size:48px; margin-block:4px 6px; font-size:14px; line-height:1.7; font-weight:600; text-align:start; text-wrap:pretty; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-price { min-block-size:52px; margin-block-end:8px; padding-block-start:4px; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-price :is(.price,.sale-price) { font-size:21px; line-height:1.5; gap:2px; flex-direction:column; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-price del { font-size:12px; color:var(--muted); order:0; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-price ins { color:var(--primary-deep); order:1; font-weight:800; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-meta { position:absolute; inset-block-start:12px; inset-inline-end:12px; z-index:1; min-block-size:0; max-inline-size:48%; gap:4px; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-status { font-size:11px; color:var(--primary); background:var(--mint-soft); padding:2px 8px; border-radius:6px; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .out-of-stock { background:var(--neutral-soft); color:var(--neutral-text); }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-sale-badge { inset-block-start:0; inset-inline-start:0; padding:3px 7px; font-size:12px; line-height:1.5; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-sale-badge small { display:none; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-action .button { min-block-size:44px; padding:8px 12px; border-radius:8px; line-height:1.6; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-action .button:hover { background:var(--primary-strong); box-shadow:none; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) :is(.product-action a,.product-media,h3 a):focus-visible { outline:2px solid var(--primary); outline-offset:3px; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-out .product-action .button:hover { background:var(--neutral-soft); color:var(--navy); }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-media--missing { background:var(--white); }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-media-fallback { inline-size:auto; block-size:auto; background:none; gap:8px; box-shadow:none; }
body.pharmacy-modern .pharmacy-home #pharmacy-products .product-grid { gap:20px; }
body.pharmacy-modern .pharmacy-home #pharmacy-products .product-grid--2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
body.pharmacy-modern .pharmacy-home #pharmacy-products .product-grid--1 { grid-template-columns:minmax(0,1fr); }
body.pharmacy-modern .pharmacy-home #pharmacy-products :is(.product-grid--1,.product-grid--2) .product-card { display:grid; grid-template-columns:minmax(120px,.8fr) minmax(0,1fr); align-items:center; gap:var(--space-4); padding:var(--space-4); }
body.pharmacy-modern .pharmacy-home #pharmacy-products :is(.product-grid--1,.product-grid--2) .product-media { block-size:208px; margin:0; }
body.pharmacy-modern .pharmacy-home #pharmacy-products :is(.product-grid--1,.product-grid--2) .product-card h3 { font-size:16px; min-block-size:54px; }
body.pharmacy-modern .pharmacy-home #pharmacy-products :is(.product-grid--1,.product-grid--2) .product-info { min-inline-size:0; }
body.pharmacy-modern .pharmacy-home #pharmacy-categories .categories { grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; }
body.pharmacy-modern .pharmacy-home #pharmacy-categories .category { flex-direction:column; text-align:center; padding:16px 8px; gap:12px; background:var(--media-bg); border-color:var(--media-border); }
body.pharmacy-modern .pharmacy-home #pharmacy-categories .category:hover { background:var(--mint-soft); border-color:var(--border-accent); }
body.pharmacy-modern .pharmacy-home #pharmacy-categories .category-photo { inline-size:96px; block-size:80px; }
body.pharmacy-modern .pharmacy-home #pharmacy-categories .category-photo img { max-inline-size:96px; max-block-size:80px; mix-blend-mode:multiply; }
body.pharmacy-modern .pharmacy-home #pharmacy-categories .category-info strong { font-size:14px; }
body.pharmacy-modern .pharmacy-home #pharmacy-categories .category small { justify-content:center; }
@media(max-width:1100px) {
 body.pharmacy-modern .pharmacy-home #pharmacy-sale { grid-template-columns:1fr; }
 body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading { flex-direction:row; align-items:center; justify-content:space-between; gap:16px; }
 body.pharmacy-modern .pharmacy-home .sale-selection-icon { display:none; }
 body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading h2 { font-size:26px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading p { margin-block-start:4px; }
}
@media(max-width:600px) {
 body.pharmacy-modern .pharmacy-home #pharmacy-sale { padding:20px 12px 12px; gap:20px; border-radius:16px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading { display:block; padding-inline:4px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading h2 { font-size:24px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading p { font-size:12px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-sale .section-heading a { margin-block-start:8px; font-size:12px; min-block-size:44px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-sale .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-sale .product-card { padding:8px; }
 body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-card h3 { font-size:13px; min-block-size:66px; margin-block:4px 6px; }
 body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-media { block-size:168px; }
 body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-media img { padding:6px 2px; }
 body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-price :is(.price,.sale-price) { font-size:18px; }
 body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-meta { inset-block-start:8px; inset-inline-end:8px; }
 body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-status { font-size:11px; padding:2px 5px; }
 body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-products) .product-price del { font-size:11px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-products .product-grid { gap:12px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-products :is(.product-grid--1,.product-grid--2) .product-card { display:flex; align-items:stretch; gap:0; padding:var(--space-2); }
 body.pharmacy-modern .pharmacy-home #pharmacy-products :is(.product-grid--1,.product-grid--2) .product-media { block-size:176px; margin-block-end:6px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-products :is(.product-grid--1,.product-grid--2) .product-card h3 { font-size:13px; min-block-size:66px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-categories .categories { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-categories .category { padding:12px 4px; gap:8px; }
 body.pharmacy-modern .pharmacy-home #pharmacy-categories .category-info strong { font-size:12px; }
}

/* Header: staff dashboard button */
body.pharmacy-modern .dashboard-button { display: inline-flex; align-items: center; gap: 7px; min-block-size: 40px; padding: 6px 14px; border: 1px solid var(--primary); border-radius: var(--radius-sm); background: var(--mint); color: var(--primary); font-size: 12px; font-weight: 650; }
body.pharmacy-modern .dashboard-button:hover { background: var(--primary); color: var(--white); }
body.pharmacy-modern .dashboard-button svg { inline-size: 18px; block-size: 18px; }

/* Header: live search dropdown */
body.pharmacy-modern .search { position: relative; }
body.pharmacy-modern .search-results { position: absolute; inset-block-start: calc(100% + 8px); inset-inline: 0; z-index: 60; max-block-size: 380px; overflow-y: auto; padding: 8px; border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--white); box-shadow: 0 18px 40px var(--shadow-soft-color); }
body.pharmacy-modern .search-result { display: flex; align-items: center; gap: 12px; padding: 8px; border-radius: var(--radius-sm); color: var(--navy); }
body.pharmacy-modern .search-result:hover,
body.pharmacy-modern .search-result[aria-selected="true"] { background: var(--mint); }
body.pharmacy-modern .search-result img,
body.pharmacy-modern .search-thumb-empty { inline-size: 44px; block-size: 44px; flex: 0 0 44px; border-radius: 8px; object-fit: contain; background: var(--mint-soft); }
body.pharmacy-modern .search-result-copy { display: flex; flex-direction: column; gap: 2px; min-inline-size: 0; font-size: 13px; line-height: 1.8; }
body.pharmacy-modern .search-result-copy strong { font-weight: 650; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.pharmacy-modern .search-result-copy .woocommerce-Price-amount { font-size: 12px; color: var(--primary); font-weight: 650; }
body.pharmacy-modern .search-empty,
body.pharmacy-modern .search-hint { margin: 0; padding: 12px 10px; font-size: 12px; color: var(--muted); text-align: center; }
body.pharmacy-modern .search-hint { border-block-start: 1px solid var(--border-accent); margin-block-start: 4px; }

/* Header: category dropdown */
body.pharmacy-modern .all-categories-wrap { position: relative; display: inline-flex; }
body.pharmacy-modern .categories-menu { position: absolute; inset-block-start: calc(100% + 6px); inset-inline-start: 0; z-index: 60; min-inline-size: 240px; margin: 0; padding: 8px; list-style: none; border: 1px solid var(--border); border-radius: var(--radius-card); background: var(--white); box-shadow: 0 18px 40px var(--shadow-soft-color); opacity: 0; visibility: hidden; transform: translateY(-4px); transition: opacity .16s ease, transform .16s ease, visibility .16s; }
body.pharmacy-modern .all-categories-wrap:hover .categories-menu,
body.pharmacy-modern .all-categories-wrap:focus-within .categories-menu { opacity: 1; visibility: visible; transform: translateY(0); }
body.pharmacy-modern .categories-menu a { display: block; padding: 9px 12px; border-radius: var(--radius-sm); color: var(--navy); font-size: 13px; font-weight: 550; }
body.pharmacy-modern .categories-menu a:hover,
body.pharmacy-modern .categories-menu a:focus-visible { background: var(--mint); color: var(--primary); }
body.pharmacy-modern .categories-menu-all { margin-block-start: 4px; border-block-start: 1px solid var(--border-accent); padding-block-start: 4px; }
body.pharmacy-modern .categories-menu-all a { color: var(--primary); font-weight: 650; }

/* Header: diversified navigation strip */
body.pharmacy-modern .navigation { flex-wrap:wrap; gap:20px 24px; padding-block:6px; }
body.pharmacy-modern .nav-deals { color:var(--primary); font-weight:650; }
body.pharmacy-modern .nav-deals svg { inline-size:16px; block-size:16px; }

/* Trust strip under the hero */
body.pharmacy-modern .trust-strip { margin-block-start:18px; }
body.pharmacy-modern .trust-strip ul { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:0; padding:0; list-style:none; }
body.pharmacy-modern .trust-strip li { display:flex; align-items:center; gap:12px; min-width:0; padding:14px 16px; border:1px solid var(--border); border-radius:var(--radius-card); background:var(--white); }
body.pharmacy-modern .trust-icon { display:grid; place-items:center; inline-size:42px; block-size:42px; flex:0 0 42px; border-radius:12px; background:var(--mint); color:var(--primary); }
body.pharmacy-modern .trust-icon svg { inline-size:22px; block-size:22px; }
body.pharmacy-modern .trust-copy { display:flex; flex-direction:column; gap:2px; min-inline-size:0; }
body.pharmacy-modern .trust-copy strong { font-size:13px; font-weight:700; color:var(--navy); }
body.pharmacy-modern .trust-copy span { font-size:11px; color:var(--muted); line-height:1.7; }
@media(max-width:1000px){ body.pharmacy-modern .trust-strip ul { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px){
	body.pharmacy-modern .trust-strip { margin-block-start:14px; }
	body.pharmacy-modern .trust-strip ul { gap:10px; }
	body.pharmacy-modern .trust-strip li { padding:11px 12px; gap:10px; align-items:flex-start; }
	body.pharmacy-modern .trust-icon { inline-size:34px; block-size:34px; flex-basis:34px; border-radius:10px; }
	body.pharmacy-modern .trust-icon svg { inline-size:18px; block-size:18px; }
	body.pharmacy-modern .trust-copy strong { font-size:12px; }
	body.pharmacy-modern .trust-copy span { font-size:10px; }
}

/* Mobile drawer: identical rows, no nested category menu */
body.pharmacy-modern .pharmacy-menu-dialog .all-categories-wrap { display:block; inline-size:100%; }
body.pharmacy-modern .pharmacy-menu-dialog .categories-menu { display:none; }
body.pharmacy-modern .pharmacy-menu-dialog .navigation > a,
body.pharmacy-modern .pharmacy-menu-dialog .all-categories-wrap > a { inline-size:100%; box-sizing:border-box; justify-content:flex-start; min-block-size:48px; }
body.pharmacy-modern .pharmacy-menu-dialog .navigation > a svg { flex:0 0 auto; }
body.pharmacy-modern .pharmacy-menu-dialog .nav-guide,
body.pharmacy-modern .pharmacy-menu-dialog .special-link { margin-inline-start:0; }

/* Keep the category disclosure aligned with the links in the navigation row. */
body.pharmacy-modern #pharmacy-main-nav { align-items:center; }
body.pharmacy-modern #pharmacy-main-nav .all-categories-wrap { display:flex; align-items:center; align-self:stretch; }
body.pharmacy-modern #pharmacy-main-nav .all-categories { display:flex; align-items:center; min-block-size:var(--control-h); line-height:1.5; }

/* Center product photos across their full home-card media tiles. */
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-newest,#pharmacy-products) .product-media { inline-size:100%; align-self:stretch; }
body.pharmacy-modern .pharmacy-home :is(#pharmacy-sale,#pharmacy-newest,#pharmacy-products) .product-media img { inset-inline:0; margin-inline:auto; object-position:center; }

/* Give the category label consistent breathing room between both icons. */
body.pharmacy-modern #pharmacy-main-nav .all-categories { gap:8px; }
body.pharmacy-modern #pharmacy-main-nav .all-categories svg { inline-size:16px; block-size:16px; flex:0 0 auto; }

/* Integrate carousel navigation into the campaign image. */
body.pharmacy-modern .pharmacy-home .hero .slider-controls {
 background:transparent;
 border-block-start:0;
 pointer-events:none;
}
body.pharmacy-modern .pharmacy-home .hero .slider-controls button {
 background:transparent;
 color:var(--slider-control-color);
 border-color:currentColor;
 pointer-events:auto;
}
body.pharmacy-modern .pharmacy-home .hero .slider-controls button:hover {
 background:var(--white-60);
}
body.pharmacy-modern .pharmacy-home .hero .slider-dots {
 background:transparent;
 border-radius:var(--radius-sm);
}
body.pharmacy-modern .pharmacy-home .hero .slider-dots button {
 background:transparent;
}
@media(max-width:600px) {
 body.pharmacy-modern .pharmacy-home .campaign-hero { padding-block-end:0; }
}
body.pharmacy-modern .pharmacy-home .hero .pharmacy-slider { --slider-control-color:var(--primary-deep); }
body.pharmacy-modern .pharmacy-home .hero .pharmacy-slider:has(.slide-sports.is-active) { --slider-control-color:var(--white); }
body.pharmacy-modern .pharmacy-home .hero .slider-dots span { background:var(--slider-control-color); opacity:.55; }
body.pharmacy-modern .pharmacy-home .hero .slider-dots [aria-pressed=true] span { background:var(--slider-control-color); opacity:1; }
body.pharmacy-modern .pharmacy-home .hero .slider-controls button:focus-visible { outline-color:var(--slider-control-color); }

/* A single mobile campaign scene; reuse the desktop artwork without a caption panel. */
@media(max-width:600px) {
 body.pharmacy-modern .pharmacy-home .campaign-hero { --campaign-surface:var(--peach); display:block; min-block-size:420px; padding:0; background:var(--campaign-surface); }
 body.pharmacy-modern .pharmacy-home .campaign-hero.slide-wellness { --campaign-surface:var(--sand); }
 body.pharmacy-modern .pharmacy-home .campaign-hero.slide-dietary { --campaign-surface:var(--mint-soft); }
 body.pharmacy-modern .pharmacy-home .campaign-hero.slide-sports { --campaign-surface:var(--primary-deep); }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-art { position:absolute; inset:0; z-index:-2; grid-row:auto; }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-art img { position:absolute; inset-block-end:0; inline-size:100%; block-size:240px; object-fit:cover; object-position:left center; }
 body.pharmacy-modern .pharmacy-home .campaign-hero::before,
 body.pharmacy-modern .pharmacy-home .campaign-hero.slide-sports::before { display:block; background:linear-gradient(to bottom,var(--campaign-surface) 0 43%,transparent 62%); }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy { inline-size:100%; padding:22px 24px 0; text-align:center; }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy :is(h1,h2) { font-size:24px; line-height:1.55; max-inline-size:none; }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy p { font-size:13px; line-height:1.85; margin:6px auto 12px; max-inline-size:34ch; }
 body.pharmacy-modern .pharmacy-home .campaign-hero .slider-copy .button { font-size:13px; padding:8px 16px; gap:10px; }
 body.pharmacy-modern .pharmacy-home .hero .slider-controls { min-block-size:48px; padding:6px 12px; }
 body.pharmacy-modern .pharmacy-home .hero .slider-arrows button { min-inline-size:36px; min-block-size:36px; padding:0; }
 body.pharmacy-modern .pharmacy-home .hero .slider-arrows svg { inline-size:14px; block-size:14px; }
 body.pharmacy-modern .pharmacy-home .hero .slider-dots button { min-inline-size:24px; min-block-size:36px; padding:3px; }
 body.pharmacy-modern .pharmacy-home .hero .slider-dots span { inline-size:18px; block-size:6px; }
}
