/* ================================================================
   Soluciones Hospitalarias 1.6 · Producto individual
   ================================================================ */

body.single-product .sh-site-header {
	position: fixed;
	top: 0;
	z-index: 1080;
	border: 0;
	background: transparent;
	box-shadow: none;
	backdrop-filter: none;
}
body.single-product .sh-header-main,
body.single-product .sh-site-header.is-scrolled .sh-header-main {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	backdrop-filter: none !important;
}
@media (min-width: 981px) {
	body.single-product .sh-site-header { left: var(--sh-book-spine-width); width: calc(100% - var(--sh-book-spine-width)); }
	body.admin-bar.single-product .sh-site-header { top: 32px; }
}
@media (max-width: 980px) {
	body.single-product .sh-site-header { left: 0; width: 100%; }
	body.single-product .sh-header-main,
	body.single-product .sh-site-header.is-scrolled .sh-header-main { padding: 10px 0 0; }
}
@media (max-width: 782px) { body.admin-bar.single-product .sh-site-header { top: 46px; } }

.sh-product-stage {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: 100svh;
	padding: clamp(120px, 11vw, 165px) 0 clamp(66px, 8vw, 105px);
	background:
		radial-gradient(circle at 85% 20%, rgba(91,140,255,.2), transparent 32%),
		linear-gradient(135deg, #071126 0%, #0b1020 55%, #101d3e 100%);
	color: #f8fafc;
}
.sh-product-stage__grid {
	position: absolute; inset: 0; z-index: -1;
	background-image: linear-gradient(rgba(91,140,255,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(91,140,255,.075) 1px,transparent 1px);
	background-size: 66px 66px;
	mask-image: linear-gradient(to bottom,black,transparent 94%);
}
.sh-product-stage__breadcrumb { margin-bottom: 30px; }
.sh-single-product__primary { display:grid; grid-template-columns:minmax(0,1.06fr) minmax(360px,.94fr); gap:clamp(36px,5vw,76px); align-items:center; }
.sh-single-product__gallery { position:relative; min-width:0; }
.sh-product-stage__index { position:absolute; top:-24px; left:-6px; z-index:3; color:rgba(155,184,255,.45); font-size:.72rem; font-weight:800; letter-spacing:.18em; }

/* Galería nativa WooCommerce adaptada a catálogo */
.sh-single-product__gallery .woocommerce-product-gallery { width:100% !important; float:none !important; margin:0 !important; }
.sh-single-product__gallery .woocommerce-product-gallery__wrapper,
.sh-single-product__gallery .flex-viewport {
	border:1px solid rgba(191,211,255,.2);
	border-radius:30px;
	background:linear-gradient(145deg,#fff,#eef4ff);
	box-shadow:0 34px 80px rgba(0,0,0,.32);
	overflow:hidden;
}
.sh-single-product__gallery .woocommerce-product-gallery__image a { display:grid; place-items:center; min-height:clamp(430px,48vw,650px); padding:clamp(28px,4vw,58px); }
.sh-single-product__gallery .woocommerce-product-gallery__image img { width:100% !important; height:100% !important; max-height:570px; object-fit:contain; object-position:center; margin:auto; }
.sh-single-product__gallery .flex-control-thumbs { display:flex; gap:10px; margin:14px 0 0 !important; padding:0; overflow-x:auto; list-style:none; scrollbar-width:thin; }
.sh-single-product__gallery .flex-control-thumbs li { flex:0 0 76px; width:76px !important; float:none !important; margin:0 !important; }
.sh-single-product__gallery .flex-control-thumbs img { width:76px !important; height:76px !important; padding:7px; border:1px solid rgba(191,211,255,.22); border-radius:14px; background:#fff; object-fit:contain; opacity:.68; transition:all var(--sh-transition); }
.sh-single-product__gallery .flex-control-thumbs img:hover,
.sh-single-product__gallery .flex-control-thumbs img.flex-active { opacity:1; border-color:#7ba5ff; box-shadow:0 9px 22px rgba(91,140,255,.18); transform:translateY(-2px); }

.sh-single-product__summary { color:#f8fafc; }
.sh-product-stage__micro { display:block; margin-bottom:10px; color:#8eb0ff; font-size:.68rem; font-weight:800; letter-spacing:.17em; text-transform:uppercase; }
.sh-single-product__summary h1 { max-width:720px; margin:0 0 20px; color:#fff; font-size:clamp(2.6rem,4.2vw,4.85rem); line-height:.98; letter-spacing:-.045em; }
.sh-product-eyebrow { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:16px; font-size:.7rem; font-weight:780; text-transform:uppercase; letter-spacing:.1em; }
.sh-product-eyebrow a { color:#9bb8ff; }
.sh-product-summary__excerpt, .sh-product-summary__excerpt p { color:#bfd3ff; font-size:clamp(.98rem,1.2vw,1.08rem); line-height:1.75; }
.sh-product-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin:28px 0; overflow:hidden; border:1px solid rgba(191,211,255,.15); border-radius:16px; background:rgba(191,211,255,.08); }
.sh-product-facts > span { padding:15px 16px; background:rgba(7,17,38,.66); }
.sh-product-facts small,.sh-product-facts strong { display:block; }
.sh-product-facts small { margin-bottom:5px; color:#809bd8; font-size:.58rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.sh-product-facts strong { color:#fff; font-size:.78rem; line-height:1.35; }
.sh-product-ctas { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.sh-product-ctas .sh-btn--youtube { grid-column:1/-1; }
.sh-btn--youtube { border:1px solid rgba(255,85,85,.35); background:rgba(255,0,0,.08); color:inherit; }
.sh-btn--youtube:hover { border-color:#ff3b30; background:#ff1f1f; color:#fff; transform:translateY(-3px); box-shadow:0 14px 30px rgba(255,31,31,.22); }
.sh-product-assurance { display:flex; gap:10px 18px; flex-wrap:wrap; margin-top:20px; color:#91a7d7; font-size:.68rem; }
.sh-product-assurance span { display:inline-flex; align-items:center; gap:7px; }
.sh-product-assurance i { color:#7ba5ff; }
.sh-product-datasheet-link { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:16px; padding:15px 17px; border:1px solid rgba(191,211,255,.18); border-radius:14px; background:rgba(255,255,255,.04); color:#dbe7ff; transition:all var(--sh-transition); }
.sh-product-datasheet-link span { display:flex; align-items:center; gap:10px; font-weight:700; }
.sh-product-datasheet-link:hover { border-color:#7ba5ff; background:rgba(91,140,255,.12); color:#fff; transform:translateX(4px); }

.sh-product-anchor-nav { position:sticky; top:0; z-index:48; border-bottom:1px solid var(--sh-border); background:color-mix(in srgb,var(--sh-surface) 88%,transparent); backdrop-filter:blur(18px); }
.sh-product-anchor-nav .sh-shell { display:flex; gap:6px; overflow-x:auto; padding-top:9px; padding-bottom:9px; }
.sh-product-anchor-nav a { flex:0 0 auto; padding:9px 13px; border-radius:999px; color:var(--sh-muted-strong); font-size:.7rem; font-weight:760; transition:all var(--sh-transition); }
.sh-product-anchor-nav a:hover,.sh-product-anchor-nav a.is-active { background:rgba(91,140,255,.12); color:var(--sh-primary-strong); }

.sh-product-detail-deck { background:var(--sh-surface); }
.sh-product-editorial-block { display:grid; grid-template-columns:120px minmax(0,1fr); gap:clamp(28px,5vw,78px); padding:clamp(46px,6vw,82px) 0; border-bottom:1px solid var(--sh-border); scroll-margin-top:95px; }
.sh-product-editorial-block__rail { display:flex; flex-direction:column; gap:7px; padding-top:5px; }
.sh-product-editorial-block__rail span { color:var(--sh-primary); font-size:1.25rem; font-weight:800; }
.sh-product-editorial-block__rail small { color:var(--sh-muted); font-size:.62rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.sh-product-editorial-block__body { max-width:1040px; }
.sh-product-editorial-block__body h2 { margin-bottom:24px; font-size:clamp(2rem,3.4vw,3.35rem); }
.sh-product-spec-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.sh-specification-deck { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid var(--sh-border); }
.sh-specification-deck__item { display:grid; grid-template-columns:42px minmax(120px,.7fr) minmax(0,1.3fr); gap:14px; align-items:start; padding:18px 12px 18px 0; border-bottom:1px solid var(--sh-border); }
.sh-specification-deck__item:nth-child(odd) { padding-right:28px; border-right:1px solid var(--sh-border); }
.sh-specification-deck__item:nth-child(even) { padding-left:28px; }
.sh-specification-deck__item > span { color:var(--sh-primary); font-size:.62rem; font-weight:800; }
.sh-specification-deck__item small { color:var(--sh-muted); font-size:.72rem; font-weight:700; }
.sh-specification-deck__item strong { color:var(--sh-text); font-size:.82rem; line-height:1.45; }
.sh-specification-deck__item:hover { background:linear-gradient(90deg,rgba(91,140,255,.06),transparent); }
.sh-product-taxonomy-cloud { display:flex; flex-wrap:wrap; gap:10px; margin-top:26px; }
.sh-product-taxonomy-cloud a { display:inline-flex; align-items:center; gap:9px; padding:10px 13px; border:1px solid var(--sh-border); border-radius:999px; background:var(--sh-bg-alt); color:var(--sh-text); font-size:.72rem; font-weight:720; transition:all var(--sh-transition); }
.sh-product-taxonomy-cloud a span,.sh-product-taxonomy-cloud a i { color:var(--sh-primary); }
.sh-product-taxonomy-cloud a:hover { border-color:var(--sh-primary); transform:translateY(-3px); box-shadow:var(--sh-shadow-sm); }
.sh-product-empty-state { display:flex; gap:16px; align-items:flex-start; padding:24px; border:1px dashed var(--sh-border-strong); border-radius:18px; background:var(--sh-bg-alt); }
.sh-product-empty-state i { color:var(--sh-primary); font-size:1.4rem; }

.sh-product-related { background:var(--sh-bg-alt); border-block:1px solid var(--sh-border); }
.sh-product-related__controls { display:flex; gap:8px; }
.sh-product-related__controls button { display:grid; place-items:center; width:44px; height:44px; border:1px solid var(--sh-border-strong); border-radius:50%; background:var(--sh-surface); color:var(--sh-text); cursor:pointer; transition:all var(--sh-transition); }
.sh-product-related__controls button:hover { background:var(--sh-primary); color:#071126; transform:translateY(-3px); }
.sh-product-related__viewport { overflow:hidden; margin-top:30px; }
.sh-product-related__track.products { display:flex !important; gap:22px !important; width:auto !important; margin:0 !important; scroll-snap-type:x mandatory; overflow-x:auto; scrollbar-width:none; }
.sh-product-related__track.products::-webkit-scrollbar { display:none; }
.sh-product-related__track.products > li.product { flex:0 0 calc((100% - 44px)/3) !important; width:auto !important; margin:0 !important; scroll-snap-align:start; }

.sh-product-quote-section { background:var(--sh-surface); }
.sh-product-quote-layout { display:grid; grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr); overflow:hidden; border:1px solid var(--sh-border); border-radius:28px; background:var(--sh-bg-alt); box-shadow:var(--sh-shadow-md); }
.sh-product-quote-context { padding:clamp(30px,4vw,56px); background:linear-gradient(145deg,#0b1020,#122348); color:#f8fafc; }
.sh-product-quote-context h2 { color:#fff; margin-bottom:16px; }
.sh-product-quote-context > p { color:#bfd3ff; }
.sh-product-quote-context__product { display:flex; gap:16px; align-items:center; margin:30px 0; padding:15px; border:1px solid rgba(191,211,255,.15); border-radius:18px; background:rgba(255,255,255,.045); }
.sh-product-quote-context__image { display:grid; place-items:center; flex:0 0 86px; width:86px; height:86px; padding:7px; border-radius:14px; background:#fff; }
.sh-product-quote-context__image img { width:100%; height:100%; object-fit:contain; }
.sh-product-quote-context__product small,.sh-product-quote-context__product strong,.sh-product-quote-context__product span { display:block; }
.sh-product-quote-context__product small { color:#8eb0ff; font-size:.6rem; text-transform:uppercase; font-weight:800; }
.sh-product-quote-context__product strong { margin:4px 0; color:#fff; font-size:.9rem; }
.sh-product-quote-context__product span { color:#9fb4df; font-size:.68rem; }
.sh-product-quote-context__channels { display:grid; gap:9px; }
.sh-product-quote-context__channels a { display:flex; gap:12px; align-items:center; padding:13px 14px; border:1px solid rgba(191,211,255,.14); border-radius:14px; color:#fff; transition:all var(--sh-transition); }
.sh-product-quote-context__channels a:hover { transform:translateX(5px); background:rgba(91,140,255,.11); border-color:#7ba5ff; }
.sh-product-quote-context__channels i { color:#79a2ff; }
.sh-product-quote-context__channels small,.sh-product-quote-context__channels span { display:block; }
.sh-product-quote-context__channels small { color:#829bd3; font-size:.58rem; text-transform:uppercase; }
.sh-product-quote-form-wrap { padding:clamp(30px,4vw,56px); background:var(--sh-surface); }
.sh-product-quote-form__head { display:flex; gap:14px; align-items:center; margin-bottom:24px; }
.sh-product-quote-form__head > span { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; background:rgba(91,140,255,.12); color:var(--sh-primary-strong); font-weight:800; }
.sh-product-quote-form__head strong,.sh-product-quote-form__head small { display:block; }
.sh-product-quote-form__head small { color:var(--sh-muted); font-size:.67rem; }
.sh-product-quote-form__actions { display:grid; grid-template-columns:1.4fr 1fr .8fr; gap:9px; margin-top:22px; }

@media (max-width:980px){
	.sh-single-product__primary{grid-template-columns:1fr;}
	.sh-product-stage{padding-top:110px;min-height:0;}
	.sh-single-product__summary{max-width:760px;}
	.sh-product-related__track.products>li.product{flex-basis:calc((100% - 22px)/2)!important;}
	.sh-product-quote-layout{grid-template-columns:1fr;}
}
@media (max-width:720px){
	.sh-single-product__gallery .woocommerce-product-gallery__image a{min-height:360px;padding:22px;}
	.sh-single-product__summary h1{font-size:clamp(2.3rem,11vw,3.6rem);}
	.sh-product-facts{grid-template-columns:1fr;}
	.sh-product-ctas{grid-template-columns:1fr;}
	.sh-product-ctas .sh-btn--youtube{grid-column:auto;}
	.sh-product-editorial-block{grid-template-columns:1fr;gap:18px;padding:48px 0;}
	.sh-product-editorial-block__rail{flex-direction:row;align-items:center;}
	.sh-specification-deck{grid-template-columns:1fr;}
	.sh-specification-deck__item:nth-child(n){padding:16px 0;border-right:0;}
	.sh-product-spec-heading{align-items:flex-start;flex-direction:column;}
	.sh-product-related__track.products>li.product{flex-basis:100%!important;}
	.sh-product-quote-form__actions{grid-template-columns:1fr;}
}

/* ================================================================
   Soluciones Hospitalarias 1.6.3 · Product Stage editorial
   ================================================================ */

.sh-product-stage {
	--sh-stage-bg: #edf4ff;
	--sh-stage-bg-2: #f8fbff;
	--sh-stage-card: rgba(255, 255, 255, 0.9);
	--sh-stage-gallery: linear-gradient(145deg, #f9fbff 0%, #e9f1ff 100%);
	--sh-stage-text: #0b1020;
	--sh-stage-muted: #5e6f91;
	--sh-stage-line: rgba(35, 59, 122, 0.12);
	--sh-stage-shadow: 0 34px 90px rgba(35, 59, 122, 0.14);
	min-height: auto;
	padding: clamp(118px, 9vw, 150px) 0 clamp(58px, 7vw, 92px);
	background:
		radial-gradient(circle at 13% 18%, rgba(91, 140, 255, 0.16), transparent 27%),
		radial-gradient(circle at 92% 18%, rgba(191, 211, 255, 0.48), transparent 29%),
		linear-gradient(135deg, var(--sh-stage-bg-2) 0%, var(--sh-stage-bg) 100%);
	color: var(--sh-stage-text);
}

html[data-theme="dark"] .sh-product-stage {
	--sh-stage-bg: #071126;
	--sh-stage-bg-2: #0b1020;
	--sh-stage-card: rgba(14, 27, 54, 0.92);
	--sh-stage-gallery: linear-gradient(145deg, #f8fbff 0%, #e6efff 100%);
	--sh-stage-text: #f8fafc;
	--sh-stage-muted: #bfd3ff;
	--sh-stage-line: rgba(191, 211, 255, 0.14);
	--sh-stage-shadow: 0 38px 100px rgba(0, 0, 0, 0.36);
	background:
		radial-gradient(circle at 15% 18%, rgba(91, 140, 255, 0.17), transparent 28%),
		radial-gradient(circle at 90% 12%, rgba(35, 59, 122, 0.34), transparent 30%),
		linear-gradient(135deg, var(--sh-stage-bg) 0%, var(--sh-stage-bg-2) 58%, #101d3e 100%);
}

.sh-product-stage__grid {
	background-image:
		linear-gradient(rgba(91, 140, 255, 0.055) 1px, transparent 1px),
		linear-gradient(90deg, rgba(91, 140, 255, 0.055) 1px, transparent 1px);
	background-size: 72px 72px;
	mask-image: linear-gradient(to bottom, black, transparent 96%);
	-webkit-mask-image: linear-gradient(to bottom, black, transparent 96%);
}

.sh-product-stage__orb {
	position: absolute;
	z-index: -1;
	border: 1px solid rgba(91, 140, 255, 0.16);
	border-radius: 50%;
	pointer-events: none;
}

.sh-product-stage__orb--one {
	top: 20%;
	left: 8%;
	width: 310px;
	height: 310px;
}

.sh-product-stage__orb--two {
	right: 4%;
	bottom: 2%;
	width: 190px;
	height: 190px;
	border-style: dashed;
	opacity: 0.55;
}

.sh-product-stage__breadcrumb {
	margin-bottom: 22px;
}

.sh-product-stage .woocommerce-breadcrumb,
.sh-product-stage .woocommerce-breadcrumb a {
	color: var(--sh-stage-muted);
}

.sh-product-stage .woocommerce-breadcrumb a:hover {
	color: var(--sh-primary-strong);
}

.sh-product-stage-card {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.38fr) minmax(390px, 1fr);
	align-items: stretch;
	min-height: 640px;
	border: 1px solid var(--sh-stage-line);
	border-radius: 32px;
	background: var(--sh-stage-card);
	box-shadow: var(--sh-stage-shadow);
	overflow: hidden;
	isolation: isolate;
	backdrop-filter: blur(18px) saturate(125%);
	-webkit-backdrop-filter: blur(18px) saturate(125%);
}

.sh-product-stage-card::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(115deg, transparent 28%, rgba(91, 140, 255, 0.055) 50%, transparent 72%);
	transform: translateX(-120%);
	transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
	pointer-events: none;
}

.sh-product-stage-card:hover::after {
	transform: translateX(120%);
}

.sh-product-stage-card__gallery {
	position: relative;
	min-width: 0;
	padding: clamp(22px, 2.4vw, 34px);
	border-right: 1px solid var(--sh-stage-line);
	background:
		radial-gradient(circle at 50% 46%, rgba(91, 140, 255, 0.12), transparent 34%),
		var(--sh-stage-gallery);
}

.sh-product-gallery-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 16px;
	color: #233b7a;
}

.sh-product-gallery-head > span {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.sh-product-gallery-head > span i {
	color: #5b8cff;
}

.sh-product-gallery-head small {
	color: #7282a2;
	font-size: 0.65rem;
	font-weight: 650;
}

/* Neutraliza los floats y anchos nativos de WooCommerce en la ficha. */
.sh-single-product__gallery .woocommerce-product-gallery,
.sh-single-product__summary.summary,
.woocommerce div.product .sh-single-product__summary.summary,
.woocommerce div.product .sh-single-product__gallery .woocommerce-product-gallery {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

.sh-single-product__gallery .woocommerce-product-gallery {
	position: relative;
}

.sh-single-product__gallery .woocommerce-product-gallery__wrapper,
.sh-single-product__gallery .flex-viewport {
	border: 0;
	border-radius: 24px;
	background: transparent;
	box-shadow: none;
	overflow: hidden;
}

.sh-single-product__gallery .woocommerce-product-gallery__image a {
	display: grid;
	place-items: center;
	min-height: clamp(470px, 41vw, 590px);
	padding: clamp(26px, 4vw, 54px);
	border: 1px solid rgba(91, 140, 255, 0.08);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.72);
	overflow: hidden;
}

.sh-single-product__gallery .woocommerce-product-gallery__image img {
	width: 100% !important;
	height: 100% !important;
	max-width: 760px;
	max-height: 520px;
	object-fit: contain;
	object-position: center;
	margin: auto;
	filter: drop-shadow(0 24px 28px rgba(35, 59, 122, 0.14));
	transform: translateY(0) scale(0.965);
	transition: transform 0.65s cubic-bezier(0.16, 1, 0.3, 1), filter var(--sh-transition), opacity 0.28s ease;
}

.sh-product-stage-card__gallery:hover .woocommerce-product-gallery__image img {
	filter: drop-shadow(0 30px 34px rgba(35, 59, 122, 0.19));
	transform: translateY(-7px) scale(0.985);
}

.sh-single-product__gallery.is-switching .woocommerce-product-gallery__image img {
	opacity: 0.4;
	transform: scale(0.94);
}

.sh-single-product__gallery .woocommerce-product-gallery__trigger {
	top: 18px !important;
	right: 18px !important;
	display: grid !important;
	place-items: center;
	width: 44px !important;
	height: 44px !important;
	border: 1px solid rgba(35, 59, 122, 0.12) !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, 0.92) !important;
	box-shadow: 0 12px 30px rgba(35, 59, 122, 0.13) !important;
	transition: transform var(--sh-transition), box-shadow var(--sh-transition), border-color var(--sh-transition) !important;
}

.sh-single-product__gallery .woocommerce-product-gallery__trigger:hover {
	border-color: #5b8cff !important;
	box-shadow: 0 15px 34px rgba(91, 140, 255, 0.2) !important;
	transform: rotate(7deg) scale(1.06);
}

.sh-single-product__gallery .flex-control-thumbs {
	display: flex;
	gap: 11px;
	margin: 14px 0 0 !important;
	padding: 2px 2px 6px;
	overflow-x: auto;
	list-style: none;
	scroll-snap-type: x proximity;
	scrollbar-width: thin;
	scrollbar-color: rgba(91, 140, 255, 0.55) transparent;
}

.sh-single-product__gallery .flex-control-thumbs li {
	flex: 0 0 84px;
	width: 84px !important;
	float: none !important;
	margin: 0 !important;
	scroll-snap-align: start;
}

.sh-single-product__gallery .flex-control-thumbs img {
	width: 84px !important;
	height: 84px !important;
	padding: 8px;
	border: 1px solid rgba(35, 59, 122, 0.12);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.9);
	object-fit: contain;
	opacity: 0.68;
	box-shadow: 0 7px 18px rgba(35, 59, 122, 0.06);
	transition: opacity var(--sh-transition), border-color var(--sh-transition), transform var(--sh-transition), box-shadow var(--sh-transition);
}

.sh-single-product__gallery .flex-control-thumbs img:hover,
.sh-single-product__gallery .flex-control-thumbs img.flex-active {
	opacity: 1;
	border-color: #5b8cff;
	box-shadow: 0 12px 24px rgba(91, 140, 255, 0.16), 0 0 0 3px rgba(91, 140, 255, 0.07);
	transform: translateY(-3px);
}

.sh-single-product__summary {
	position: relative;
	min-width: 0;
	padding: clamp(34px, 4vw, 58px);
	color: var(--sh-stage-text);
	background: color-mix(in srgb, var(--sh-stage-card) 92%, transparent);
}

.sh-product-summary-panel {
	display: flex;
	height: 100%;
	flex-direction: column;
	justify-content: center;
}

.sh-product-stage__micro {
	display: inline-flex;
	width: fit-content;
	margin-bottom: 11px;
	padding: 7px 10px;
	border: 1px solid rgba(91, 140, 255, 0.18);
	border-radius: 999px;
	background: rgba(91, 140, 255, 0.07);
	color: var(--sh-primary-strong);
	font-size: 0.61rem;
	font-weight: 820;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

html[data-theme="dark"] .sh-product-stage__micro {
	color: #9bb8ff;
	background: rgba(91, 140, 255, 0.1);
}

.sh-product-eyebrow {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin-bottom: 13px;
	font-size: 0.66rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.sh-product-eyebrow a {
	color: var(--sh-primary-strong);
}

html[data-theme="dark"] .sh-product-eyebrow a {
	color: #9bb8ff;
}

.sh-single-product__summary h1,
.woocommerce div.product .sh-single-product__summary h1.product_title {
	max-width: 100%;
	margin: 0 0 18px;
	color: var(--sh-stage-text);
	font-size: clamp(2.15rem, 3vw, 3.55rem);
	line-height: 1.02;
	letter-spacing: -0.042em;
	text-wrap: balance;
}

.sh-product-summary__excerpt,
.sh-product-summary__excerpt p {
	max-width: 640px;
	margin-bottom: 0;
	color: var(--sh-stage-muted);
	font-size: clamp(0.96rem, 1.05vw, 1.05rem);
	line-height: 1.72;
}

.sh-product-facts {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	margin: 26px 0 24px;
	border: 0;
	border-top: 1px solid var(--sh-stage-line);
	border-bottom: 1px solid var(--sh-stage-line);
	border-radius: 0;
	background: transparent;
	overflow: visible;
}

.sh-product-facts > span {
	display: grid;
	grid-template-columns: minmax(92px, 0.38fr) minmax(0, 1fr);
	align-items: center;
	gap: 14px;
	padding: 12px 0;
	border-bottom: 1px solid var(--sh-stage-line);
	background: transparent;
	transition: padding-left var(--sh-transition), background-color var(--sh-transition);
}

.sh-product-facts > span:last-child {
	border-bottom: 0;
}

.sh-product-facts > span:hover {
	padding-left: 9px;
	background: linear-gradient(90deg, rgba(91, 140, 255, 0.075), transparent);
}

.sh-product-facts small,
.sh-product-facts strong {
	display: block;
	margin: 0;
}

.sh-product-facts small {
	color: var(--sh-stage-muted);
	font-size: 0.59rem;
	font-weight: 820;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.sh-product-facts strong {
	color: var(--sh-stage-text);
	font-size: 0.76rem;
	font-weight: 760;
	line-height: 1.42;
}

.sh-product-ctas {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}

.sh-product-cta-primary {
	width: 100%;
	min-height: 54px;
	justify-content: space-between;
	padding-inline: 20px;
}

.sh-product-cta-primary i {
	transition: transform var(--sh-transition);
}

.sh-product-cta-primary:hover i {
	transform: translateX(5px);
}

.sh-product-cta-secondary {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}

.sh-product-cta-secondary .sh-btn {
	min-height: 48px;
	justify-content: center;
}

.sh-product-call {
	border: 1px solid var(--sh-stage-line);
	background: transparent;
	color: var(--sh-stage-text);
}

.sh-product-call:hover {
	border-color: rgba(91, 140, 255, 0.48);
	background: rgba(91, 140, 255, 0.08);
	color: var(--sh-primary-strong);
	transform: translateY(-3px);
}

html[data-theme="dark"] .sh-product-call:hover {
	color: #bfd3ff;
}

.sh-product-youtube-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-top: 2px;
	padding: 12px 2px;
	border-bottom: 1px solid var(--sh-stage-line);
	color: var(--sh-stage-muted);
	font-size: 0.73rem;
	font-weight: 760;
	transition: color var(--sh-transition), padding-left var(--sh-transition), border-color var(--sh-transition);
}

.sh-product-youtube-link span {
	display: inline-flex;
	align-items: center;
	gap: 10px;
}

.sh-product-youtube-link .fa-youtube {
	color: #ff2d2d;
	font-size: 1rem;
	transition: transform var(--sh-transition);
}

.sh-product-youtube-link:hover {
	padding-left: 7px;
	border-color: rgba(255, 45, 45, 0.28);
	color: var(--sh-stage-text);
}

.sh-product-youtube-link:hover .fa-youtube {
	transform: scale(1.12);
}

.sh-product-assurance {
	display: grid;
	gap: 5px;
	margin-top: 18px;
	padding-top: 17px;
	border-top: 1px solid var(--sh-stage-line);
	color: var(--sh-stage-muted);
}

.sh-product-assurance__status {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--sh-stage-text);
	font-size: 0.69rem;
}

.sh-product-assurance__status i {
	color: #37d67a;
	font-size: 0.42rem;
	filter: drop-shadow(0 0 5px rgba(55, 214, 122, 0.55));
}

.sh-product-assurance small {
	max-width: 480px;
	color: var(--sh-stage-muted);
	font-size: 0.64rem;
	line-height: 1.55;
}

.sh-product-datasheet-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-top: 14px;
	padding: 14px 16px;
	border: 1px solid var(--sh-stage-line);
	border-radius: 14px;
	background: rgba(91, 140, 255, 0.06);
	color: var(--sh-stage-text);
	transition: border-color var(--sh-transition), background-color var(--sh-transition), color var(--sh-transition), transform var(--sh-transition), box-shadow var(--sh-transition);
}

.sh-product-datasheet-link span {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 0.72rem;
	font-weight: 760;
}

.sh-product-datasheet-link span i {
	color: #e23b3b;
}

.sh-product-datasheet-link:hover {
	border-color: rgba(91, 140, 255, 0.46);
	background: rgba(91, 140, 255, 0.1);
	color: var(--sh-primary-strong);
	box-shadow: 0 12px 26px rgba(91, 140, 255, 0.1);
	transform: translateY(-2px);
}

html[data-theme="dark"] .sh-product-datasheet-link:hover {
	color: #bfd3ff;
}

/* Navegación técnica numerada y activa según la sección visible. */
.sh-product-anchor-nav {
	top: calc(var(--sh-header-height, 76px) + 4px);
	z-index: 960;
	border-top: 1px solid var(--sh-border);
	border-bottom: 1px solid var(--sh-border);
	background: color-mix(in srgb, var(--sh-surface) 92%, transparent);
	box-shadow: 0 12px 28px rgba(11, 16, 32, 0.05);
	backdrop-filter: blur(18px) saturate(135%);
	-webkit-backdrop-filter: blur(18px) saturate(135%);
}

.sh-product-anchor-nav .sh-shell {
	display: flex;
	justify-content: center;
	gap: 8px;
	overflow-x: auto;
	padding-top: 9px;
	padding-bottom: 9px;
	scrollbar-width: none;
}

.sh-product-anchor-nav .sh-shell::-webkit-scrollbar {
	display: none;
}

.sh-product-anchor-nav a {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex: 0 0 auto;
	padding: 9px 13px;
	border: 1px solid transparent;
	border-radius: 999px;
	color: var(--sh-muted-strong);
	font-size: 0.69rem;
	font-weight: 760;
	transition: color var(--sh-transition), background-color var(--sh-transition), border-color var(--sh-transition), transform var(--sh-transition);
}

.sh-product-anchor-nav a > span {
	color: var(--sh-primary);
	font-size: 0.54rem;
	font-weight: 850;
	letter-spacing: 0.06em;
}

.sh-product-anchor-nav a:hover,
.sh-product-anchor-nav a.is-active {
	border-color: rgba(91, 140, 255, 0.18);
	background: rgba(91, 140, 255, 0.1);
	color: var(--sh-primary-strong);
	transform: translateY(-1px);
}

.sh-product-editorial-block,
#cotizacion {
	scroll-margin-top: calc(var(--sh-header-height, 76px) + 86px);
}

@media (max-width: 1180px) {
	.sh-product-stage-card {
		grid-template-columns: minmax(0, 1.2fr) minmax(360px, 0.9fr);
	}

	.sh-single-product__summary {
		padding: 34px;
	}

	.sh-single-product__summary h1,
	.woocommerce div.product .sh-single-product__summary h1.product_title {
		font-size: clamp(2rem, 3.2vw, 3.1rem);
	}
}

@media (max-width: 980px) {
	.sh-product-stage {
		padding-top: 108px;
	}

	.sh-product-stage-card {
		grid-template-columns: 1fr;
		min-height: 0;
		border-radius: 26px;
	}

	.sh-product-stage-card__gallery {
		border-right: 0;
		border-bottom: 1px solid var(--sh-stage-line);
	}

	.sh-single-product__summary {
		max-width: none;
	}

	.sh-product-anchor-nav {
		top: var(--sh-header-height, 76px);
	}

	body.admin-bar.single-product .sh-product-anchor-nav {
		top: calc(var(--sh-header-height, 76px) + 32px);
	}
}

@media (max-width: 782px) {
	body.admin-bar.single-product .sh-product-anchor-nav {
		top: calc(var(--sh-header-height, 76px) + 46px);
	}
}

@media (max-width: 720px) {
	.sh-product-stage {
		padding: 98px 0 42px;
	}

	.sh-product-stage__breadcrumb {
		margin-bottom: 15px;
	}

	.sh-product-stage-card {
		border-radius: 22px;
	}

	.sh-product-stage-card__gallery {
		padding: 15px;
	}

	.sh-product-gallery-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 4px;
		margin-bottom: 11px;
	}

	.sh-product-gallery-head small {
		display: none;
	}

	.sh-single-product__gallery .woocommerce-product-gallery__image a {
		min-height: clamp(315px, 88vw, 390px);
		padding: 18px;
		border-radius: 18px;
	}

	.sh-single-product__gallery .woocommerce-product-gallery__image img {
		max-height: 350px;
		transform: none;
	}

	.sh-product-stage-card__gallery:hover .woocommerce-product-gallery__image img {
		transform: none;
	}

	.sh-single-product__gallery .flex-control-thumbs li {
		flex-basis: 70px;
		width: 70px !important;
	}

	.sh-single-product__gallery .flex-control-thumbs img {
		width: 70px !important;
		height: 70px !important;
		border-radius: 13px;
	}

	.sh-single-product__summary {
		padding: 26px 20px 28px;
	}

	.sh-single-product__summary h1,
	.woocommerce div.product .sh-single-product__summary h1.product_title {
		font-size: clamp(2rem, 9.2vw, 2.85rem);
		line-height: 1.04;
	}

	.sh-product-facts {
		grid-template-columns: 1fr;
	}

	.sh-product-facts > span {
		grid-template-columns: 88px minmax(0, 1fr);
	}

	.sh-product-cta-secondary {
		grid-template-columns: 1fr 1fr;
	}

	.sh-product-anchor-nav .sh-shell {
		justify-content: flex-start;
		padding-left: 14px;
		padding-right: 14px;
	}
}

@media (max-width: 430px) {
	.sh-product-cta-secondary {
		grid-template-columns: 1fr;
	}

	.sh-product-stage__orb {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sh-product-stage-card::after,
	.sh-single-product__gallery .woocommerce-product-gallery__image img,
	.sh-single-product__gallery .flex-control-thumbs img {
		transition-duration: 0.01ms !important;
	}

	.sh-product-stage-card:hover::after {
		transform: none;
	}
}

@media (min-width: 981px) {
	body.admin-bar.single-product .sh-product-anchor-nav {
		top: calc(var(--sh-header-height, 92px) + 36px);
	}
}

/* ================================================================
   Soluciones Hospitalarias 1.6.4 · Ficha final y header sobre el stage
   ================================================================ */

/* El header flota sobre la primera seccion del producto, sin franja blanca. */
body.single-product .sh-site-header {
	position: fixed;
	top: 0;
	z-index: 1080;
	border: 0;
	background: transparent;
	box-shadow: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

body.single-product .sh-header-main,
body.single-product .sh-site-header.is-scrolled .sh-header-main {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}

/* Estado final cuando existe PDF pero no se han cargado atributos visibles. */
.sh-product-datasheet-feature {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: clamp(18px, 3vw, 34px);
	padding: clamp(24px, 3.4vw, 38px);
	border: 1px solid rgba(91, 140, 255, 0.22);
	border-radius: 24px;
	background:
		radial-gradient(circle at 8% 50%, rgba(91, 140, 255, 0.13), transparent 28%),
		linear-gradient(135deg, rgba(91, 140, 255, 0.065), rgba(191, 211, 255, 0.045));
	box-shadow: 0 18px 42px rgba(11, 16, 32, 0.06);
	overflow: hidden;
	isolation: isolate;
}

.sh-product-datasheet-feature::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(110deg, transparent 18%, rgba(255, 255, 255, 0.18) 48%, transparent 78%);
	transform: translateX(-120%);
	transition: transform 0.9s cubic-bezier(0.16, 1, 0.3, 1);
}

.sh-product-datasheet-feature:hover::after {
	transform: translateX(120%);
}

.sh-product-datasheet-feature__icon {
	display: grid;
	place-items: center;
	width: 68px;
	height: 68px;
	border: 1px solid rgba(91, 140, 255, 0.28);
	border-radius: 20px;
	background: var(--sh-surface);
	color: var(--sh-primary-strong);
	box-shadow: 0 14px 30px rgba(91, 140, 255, 0.12);
	font-size: 1.7rem;
	transition: transform var(--sh-transition), box-shadow var(--sh-transition);
}

.sh-product-datasheet-feature:hover .sh-product-datasheet-feature__icon {
	box-shadow: 0 18px 36px rgba(91, 140, 255, 0.2);
	transform: translateY(-3px) rotate(-3deg);
}

.sh-product-datasheet-feature__copy {
	min-width: 0;
}

.sh-product-datasheet-feature__copy small,
.sh-product-datasheet-feature__copy strong,
.sh-product-datasheet-feature__copy span {
	display: block;
}

.sh-product-datasheet-feature__copy small {
	margin-bottom: 6px;
	color: var(--sh-primary-strong);
	font-size: 0.65rem;
	font-weight: 820;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.sh-product-datasheet-feature__copy strong {
	margin-bottom: 7px;
	color: var(--sh-text);
	font-size: clamp(1.05rem, 1.8vw, 1.35rem);
	line-height: 1.25;
}

.sh-product-datasheet-feature__copy span {
	max-width: 620px;
	color: var(--sh-muted);
	font-size: 0.82rem;
	line-height: 1.65;
}

html[data-theme="dark"] .sh-product-datasheet-feature {
	border-color: rgba(142, 176, 255, 0.2);
	background:
		radial-gradient(circle at 8% 50%, rgba(91, 140, 255, 0.14), transparent 28%),
		linear-gradient(135deg, rgba(91, 140, 255, 0.08), rgba(18, 28, 51, 0.46));
	box-shadow: 0 20px 46px rgba(0, 0, 0, 0.18);
}

@media (min-width: 981px) {
	body.single-product .sh-site-header {
		left: var(--sh-book-spine-width);
		width: calc(100% - var(--sh-book-spine-width));
	}

	body.admin-bar.single-product .sh-site-header {
		top: 32px;
	}

	body.single-product .sh-header-main,
	body.single-product .sh-site-header.is-scrolled .sh-header-main {
		padding-top: 13px;
	}
}

@media (max-width: 980px) {
	body.single-product .sh-site-header {
		left: 0;
		width: 100%;
	}

	body.single-product .sh-header-main,
	body.single-product .sh-site-header.is-scrolled .sh-header-main {
		padding: 10px 0 0;
	}

	body.single-product .sh-header-shell {
		min-height: 58px;
	}

	body.single-product .sh-header-mobile-brand,
	body.single-product .sh-header-actions--mobile {
		position: relative;
		z-index: 2;
	}
}

@media (max-width: 782px) {
	body.admin-bar.single-product .sh-site-header {
		top: 46px;
	}
}

@media (max-width: 720px) {
	.sh-product-datasheet-feature {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.sh-product-datasheet-feature > .sh-btn {
		grid-column: 1 / -1;
		justify-content: center;
	}

	.sh-product-datasheet-feature__icon {
		width: 58px;
		height: 58px;
		border-radius: 17px;
		font-size: 1.4rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sh-product-datasheet-feature::after,
	.sh-product-datasheet-feature__icon {
		transition-duration: 0.01ms !important;
	}

	.sh-product-datasheet-feature:hover::after,
	.sh-product-datasheet-feature:hover .sh-product-datasheet-feature__icon {
		transform: none;
	}
}

/* ================================================================
   Soluciones Hospitalarias 1.6.5 · Stage bajo header + carrusel relacionado
   ================================================================ */

/* Extiende visualmente el Product Stage por debajo del header flotante.
   El padding adicional compensa el desplazamiento para no mover el contenido. */
body.single-product .sh-product-stage {
	--sh-product-stage-top: clamp(120px, 11vw, 165px);
	margin-top: calc(0px - var(--sh-header-height, 92px));
	padding-top: calc(var(--sh-product-stage-top) + var(--sh-header-height, 92px));
}

@media (max-width: 980px) {
	body.single-product .sh-product-stage {
		--sh-product-stage-top: 108px;
	}
}

@media (max-width: 720px) {
	body.single-product .sh-product-stage {
		--sh-product-stage-top: 98px;
	}
}

/* El viewport recorta; la pista es el elemento desplazable real. */
.sh-product-related__viewport {
	overflow: hidden;
}

.sh-product-related__track.products {
	position: relative;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	scroll-behavior: smooth;
	overscroll-behavior-inline: contain;
	-webkit-overflow-scrolling: touch;
}

/* Evita el bucle visual de hover causado por desplazar la card bajo el cursor. */
.sh-product-related .sh-wc-product-card,
.sh-product-related .sh-product-card {
	transform: none !important;
	transition:
		border-color var(--sh-transition),
		background-color var(--sh-transition),
		box-shadow var(--sh-transition) !important;
}

.sh-product-related .sh-wc-product-card:hover,
.sh-product-related .sh-product-card:hover {
	transform: none !important;
	border-color: rgba(91, 140, 255, 0.34);
	box-shadow: 0 18px 38px rgba(11, 16, 32, 0.11);
}

.sh-product-related .sh-wc-product-card__media img,
.sh-product-related .sh-product-card__media img {
	transform: translateZ(0) scale(1) !important;
	will-change: transform;
	transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.sh-product-related .sh-wc-product-card:hover .sh-wc-product-card__media img,
.sh-product-related .sh-product-card:hover .sh-product-card__media img,
.sh-product-related .sh-wc-product-card__media:hover img,
.sh-product-related .sh-product-card__media:hover img {
	transform: translateZ(0) scale(1.025) !important;
}

@media (prefers-reduced-motion: reduce) {
	.sh-product-related__track.products {
		scroll-behavior: auto;
	}

	.sh-product-related .sh-wc-product-card__media img,
	.sh-product-related .sh-product-card__media img,
	.sh-product-related .sh-wc-product-card:hover .sh-wc-product-card__media img,
	.sh-product-related .sh-product-card:hover .sh-product-card__media img {
		transform: none !important;
		transition: none !important;
	}
}


/* ================================================================
   Soluciones Hospitalarias 1.6.6 · Galería móvil centrada
   ================================================================ */
@media (max-width: 720px) {
	.sh-product-stage-card__gallery {
		overflow: hidden;
	}

	.sh-single-product__gallery,
	.sh-single-product__gallery .woocommerce-product-gallery,
	.woocommerce div.product .sh-single-product__gallery .woocommerce-product-gallery {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		overflow: hidden;
	}

	.sh-single-product__gallery .flex-viewport {
		width: 100% !important;
		max-width: 100% !important;
		overflow: hidden !important;
		border-radius: 18px;
	}

	.sh-single-product__gallery[data-sh-mobile-gallery="true"] .woocommerce-product-gallery__wrapper {
		display: flex !important;
		align-items: stretch;
		margin: 0 !important;
		will-change: transform;
		transition: transform 0.38s cubic-bezier(0.16, 1, 0.3, 1) !important;
	}

	.sh-single-product__gallery[data-sh-mobile-gallery="true"] .woocommerce-product-gallery__image {
		display: grid !important;
		place-items: center !important;
		min-width: 0 !important;
		max-width: none !important;
		float: none !important;
		box-sizing: border-box;
	}

	.sh-single-product__gallery .woocommerce-product-gallery__image a {
		width: 100% !important;
		max-width: 100% !important;
		min-height: clamp(330px, 82vw, 410px);
		padding: 18px;
		display: grid !important;
		place-items: center !important;
		box-sizing: border-box;
	}

	.sh-single-product__gallery .woocommerce-product-gallery__image img,
	.woocommerce div.product .sh-single-product__gallery .woocommerce-product-gallery__image img {
		display: block !important;
		width: auto !important;
		height: auto !important;
		max-width: 100% !important;
		max-height: min(360px, 74vw) !important;
		object-fit: contain !important;
		object-position: center center !important;
		margin: auto !important;
		transform: none !important;
	}

	.sh-single-product__gallery.is-switching .woocommerce-product-gallery__image img,
	.sh-product-stage-card__gallery:hover .woocommerce-product-gallery__image img {
		transform: none !important;
	}

	.sh-single-product__gallery .flex-control-thumbs {
		justify-content: flex-start;
		gap: 12px;
		padding: 3px 2px 8px;
		scroll-snap-type: x mandatory;
	}

	.sh-single-product__gallery .flex-control-thumbs li {
		flex: 0 0 72px !important;
		width: 72px !important;
		scroll-snap-align: center;
	}

	.sh-single-product__gallery .flex-control-thumbs img {
		width: 72px !important;
		height: 72px !important;
		object-fit: contain !important;
		object-position: center center !important;
	}
}

@media (max-width: 430px) {
	.sh-single-product__gallery .woocommerce-product-gallery__image a {
		min-height: clamp(310px, 86vw, 380px);
		padding: 14px;
	}

	.sh-single-product__gallery .woocommerce-product-gallery__image img,
	.woocommerce div.product .sh-single-product__gallery .woocommerce-product-gallery__image img {
		max-height: min(345px, 78vw) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sh-single-product__gallery[data-sh-mobile-gallery="true"] .woocommerce-product-gallery__wrapper {
		transition: none !important;
	}
}
