/* Solcore 2026 modern look. Tokens match the logo (red + charcoal). */
:root {
	--sc-red: #bf1421;
	--sc-red-dark: #9c101a;
	--sc-ink: #2e2c2c;
	--sc-muted: #6b6767;
	--sc-soft: #f6f3f2;
	--sc-line: #e8e3e1;
	--sc-radius: 14px;
}

/* ---------- header ---------- */
.whb-top-bar { font-size: 12px; letter-spacing: .02em; }
.whb-general-header { box-shadow: 0 1px 0 var(--sc-line); }
.whb-sticky-shadow.whb-sticky-real .whb-general-header { box-shadow: 0 6px 24px rgba(0,0,0,.08); }
.wd-header-main-nav .menu > li > a,
.whb-general-header .wd-nav > li > a { font-size: 14px !important; font-weight: 600 !important; letter-spacing: .03em; }
.wd-header-main-nav .menu > li > a:hover,
.wd-header-main-nav .menu > li.current-menu-item > a { color: var(--sc-red) !important; }
.site-logo img { height: auto; }

/* remove fixed overlays that cover content */
.wd-sticky-social { display: none !important; }
.brave_popup, .brave_popup__step__inner { display: none !important; }

/* ---------- buttons / cards ---------- */
.btn, .button, .wd-button-wrapper a { border-radius: 8px; }
.wd-product .product-wrapper { border-radius: var(--sc-radius); transition: transform .2s ease, box-shadow .2s ease; }
.wd-product:hover .product-wrapper { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(0,0,0,.10); }
.wd-product .product-image-link img { border-radius: 10px; }
.wd-entry-content a:not(.btn):not(.button):not(.sc-btn) { text-underline-offset: 2px; }

/* ---------- home sections ---------- */
.sc-wrap { max-width: 1222px; margin: 0 auto; padding: 0 16px; }
.sc-center { text-align: center; margin-top: 32px; }

.sc-btn { display: inline-block; padding: 14px 26px; border-radius: 10px; font-weight: 600; font-size: 15px; text-decoration: none !important; transition: background .2s, color .2s, border-color .2s, transform .2s; }
.sc-btn:hover { transform: translateY(-1px); }
.sc-btn-primary { background: var(--sc-red); color: #fff !important; border: 2px solid var(--sc-red); }
.sc-btn-primary:hover { background: var(--sc-red-dark); border-color: var(--sc-red-dark); }
.sc-btn-ghost { background: transparent; color: var(--sc-ink) !important; border: 2px solid var(--sc-ink); }
.sc-btn-ghost:hover { background: var(--sc-ink); color: #fff !important; }

.sc-hero { background: linear-gradient(120deg, #fff 0%, var(--sc-soft) 55%, #efe8e6 100%); padding: 64px 0; margin-bottom: 0; overflow: hidden; }
.sc-hero-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 40px; align-items: center; }
.sc-eyebrow { display: inline-block; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--sc-red); margin-bottom: 14px; }
.sc-hero h1 { font-size: clamp(32px, 4.4vw, 54px); line-height: 1.08; font-weight: 800; color: var(--sc-ink); margin: 0 0 18px; letter-spacing: -.01em; }
.sc-hero p { font-size: 18px; line-height: 1.6; color: var(--sc-muted); max-width: 560px; margin: 0 0 28px; }
.sc-hero-btns { display: flex; flex-wrap: wrap; gap: 14px; }
.sc-hero-img { text-align: center; }
.sc-hero-img img { max-height: 440px; width: auto; max-width: 100%; mix-blend-mode: multiply; }

.sc-trust { background: var(--sc-ink); color: #fff; }
.sc-trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; }
.sc-trust-grid div { padding: 22px 18px; border-left: 1px solid rgba(255,255,255,.12); display: flex; flex-direction: column; gap: 4px; }
.sc-trust-grid div:first-child { border-left: 0; }
.sc-trust-grid strong { font-size: 16px; color: #fff; }
.sc-trust-grid span { font-size: 13px; color: rgba(255,255,255,.72); line-height: 1.4; }

.sc-cats { padding: 64px 0 40px; }
.sc-h2 { text-align: center; font-size: clamp(26px, 3vw, 36px); font-weight: 800; color: var(--sc-ink); margin: 0 0 36px; }
.sc-cats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.sc-cat { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--sc-line); border-radius: var(--sc-radius); overflow: hidden; text-decoration: none !important; transition: transform .2s, box-shadow .2s, border-color .2s; }
.sc-cat:hover { transform: translateY(-4px); box-shadow: 0 16px 34px rgba(0,0,0,.10); border-color: var(--sc-red); }
.sc-cat-img { display: block; height: 210px; background: var(--sc-soft); padding: 14px; box-sizing: border-box; }
.sc-cat-img img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; display: block; }
.sc-cat-name { display: block; padding: 16px 18px; font-weight: 700 !important; font-size: 15px; letter-spacing: .02em; color: var(--sc-ink); text-transform: uppercase; line-height: 1.3; }
.sc-cat:hover .sc-cat-name { color: var(--sc-red); }

/* ---------- footer ESPA ---------- */
.sc-espa { background: #fff; text-align: center; padding: 18px 16px; border-top: 1px solid var(--sc-line); }
.sc-espa img { height: auto; max-width: 220px; }

/* ---------- responsive ---------- */
@media (max-width: 1024px) {
	.sc-cats-grid { grid-template-columns: repeat(3, 1fr); }
	.sc-trust-grid { grid-template-columns: repeat(2, 1fr); }
	.sc-trust-grid div:nth-child(3) { border-left: 0; }
}
@media (max-width: 768px) {
	.sc-hero { padding: 36px 0; }
	.sc-hero-grid { grid-template-columns: 1fr; text-align: center; }
	.sc-hero p { margin-left: auto; margin-right: auto; }
	.sc-hero-btns { justify-content: center; }
	.sc-hero-img img { max-height: 280px; }
	.sc-cats-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
	.sc-cat-name { font-size: 13px; padding: 12px; } .sc-cat-img { height: 150px; }
	.sc-cats { padding: 40px 0 24px; }
}
@media (max-width: 480px) {
	.sc-trust-grid { grid-template-columns: 1fr; }
	.sc-trust-grid div { border-left: 0; border-top: 1px solid rgba(255,255,255,.12); }
	.sc-trust-grid div:first-child { border-top: 0; }
}

/* ---------- footer ---------- */
.footer-container img[src*="logo_solcore_new_footer"] { content: url("/wp-content/uploads/2026/11/solcore-logo-2026.png"); width: 120px; height: auto; background: #fff; padding: 10px 14px; border-radius: 12px; box-sizing: content-box; }
.footer-container .widget-title { letter-spacing: .08em; font-weight: 700; }
.footer-container a { transition: color .15s; }
.footer-container a:hover { color: #fff; }

/* ---------- product page ---------- */
.single-product .product_title { font-size: clamp(24px, 2.6vw, 34px); font-weight: 800; line-height: 1.2; color: var(--sc-ink); }
.single-product .summary-inner .price { font-size: 30px; font-weight: 800; color: var(--sc-red); }
.single-product .single_add_to_cart_button { border-radius: 10px; padding: 0 34px; font-weight: 700; letter-spacing: .03em; }
.single-product .product_meta { padding: 14px 0; border-top: 1px solid var(--sc-line); margin-top: 16px; }
.single-product .woocommerce-product-gallery { border-radius: var(--sc-radius); }
.single-product .woocommerce-tabs .wd-nav-tabs > li > a { font-weight: 700; letter-spacing: .04em; }
.single-product .woocommerce-Tabs-panel table th { background: var(--sc-soft); font-weight: 600; width: 38%; }
.single-product .woocommerce-Tabs-panel table th, .single-product .woocommerce-Tabs-panel table td { padding: 10px 14px; border-bottom: 1px solid var(--sc-line); }
.single-product .entry-content img[src*="icon"], .single-product .entry-content a > img { transition: transform .15s, box-shadow .15s; }
.single-product .entry-content a > img:hover { transform: translateY(-2px); }
.doc-soon { filter: grayscale(1); }

/* ---------- shop / category ---------- */
.page-title { background-image: none !important; background: var(--sc-soft) !important; border-bottom: 1px solid var(--sc-line); }
.page-title .container { padding-top: 22px; padding-bottom: 22px; }
.page-title .entry-title, .page-title .title { font-size: clamp(24px, 3vw, 34px) !important; font-weight: 800; color: var(--sc-ink) !important; letter-spacing: 0; text-transform: none; }
.page-title .wd-back-btn, .page-title a, .page-title .breadcrumbs, .page-title .woocommerce-breadcrumb { color: var(--sc-muted) !important; }
.page-title-default { min-height: 0; }
.sidebar-container .widget_product_categories:first-child:has(.wc-block-product-categories-list, ul.product-categories li.cat-item-15:only-child) { display: none; }
.sidebar-container .widget-title { font-size: 14px; font-weight: 800; letter-spacing: .08em; color: var(--sc-ink); }
.sidebar-container .product-categories a { color: var(--sc-ink); }
.sidebar-container .product-categories .current-cat > a, .sidebar-container .product-categories a:hover { color: var(--sc-red); font-weight: 700; }
.products .wd-product .product-wrapper { border: 1px solid var(--sc-line); background: #fff; }
.products .wd-product .wd-entities-title a { font-weight: 600; line-height: 1.35; }
.products .wd-product .price { font-weight: 800; color: var(--sc-red); font-size: 17px; }
.wd-product .product-image-link { background: #fff; border-radius: 10px; }
.woocommerce-ordering select, .woocommerce-ordering .select2-selection { border-radius: 8px; }
.onsale, .out-of-stock.product-label, .product-label { border-radius: 6px; }
@media (max-width: 768px) {
	.page-title .container { padding-top: 14px; padding-bottom: 14px; }
}
.sidebar-container .widget_categories { display: none !important; }
.page-title.page-title-default { padding-top: 6px !important; padding-bottom: 6px !important; }
.page-title.title-size-default { padding: 6px 0 !important; }
.page-title .wd-page-title-bg, .page-title .wd-page-title-bg img { display: none !important; }
.page-title .wd-nav a, .page-title .wd-nav .nav-link-text, .page-title .wd-nav > li > a, .page-title [class*="wd-nav-product-cat"] a, .page-title .wd-nav-product-cat-btn { color: var(--sc-ink) !important; }
.page-title .wd-nav > li.current-menu-item > a { color: var(--sc-red) !important; }

/* ---------- animated hero carousel ---------- */
.sc-hero-slider { position: relative; padding: 0; min-height: clamp(460px, 62vh, 640px); background: #14100e; color: #fff; overflow: hidden; }
.sc-slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity 1.1s ease, visibility 0s linear 1.1s; display: flex; align-items: center; }
.sc-slide.is-active { opacity: 1; visibility: visible; transition: opacity 1.1s ease; z-index: 1; }
.sc-slide-bg { position: absolute; inset: 0; background-size: cover; background-position: center; transform: scale(1.02); }
.sc-slide.is-active .sc-slide-bg { animation: sc-kenburns 9s ease-out forwards; }
.sc-slide::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,8,7,.82) 0%, rgba(10,8,7,.55) 45%, rgba(10,8,7,.15) 100%); }
.sc-slide-inner { position: relative; z-index: 2; width: 100%; }
.sc-slide-inner > * { opacity: 0; transform: translateY(26px); }
.sc-slide.is-active .sc-slide-inner > * { animation: sc-rise .8s cubic-bezier(.2,.7,.2,1) forwards; }
.sc-slide.is-active .sc-slide-inner > :nth-child(1) { animation-delay: .25s; }
.sc-slide.is-active .sc-slide-inner > :nth-child(2) { animation-delay: .45s; }
.sc-slide.is-active .sc-slide-inner > :nth-child(3) { animation-delay: .65s; }
.sc-slide.is-active .sc-slide-inner > :nth-child(4) { animation-delay: .85s; }
.sc-hero-slider h1, .sc-hero-slider .sc-slide-h { font-size: clamp(32px, 5vw, 62px); line-height: 1.06; font-weight: 800; color: #fff; margin: 0 0 18px; max-width: 760px; letter-spacing: -.01em; }
.sc-hero-slider p { color: rgba(255,255,255,.86); font-size: clamp(16px, 1.6vw, 20px); max-width: 560px; margin: 0 0 28px; }
.sc-hero-slider .sc-eyebrow { color: #ff6b73; }
.sc-btn-light { background: transparent; color: #fff !important; border: 2px solid rgba(255,255,255,.85); }
.sc-btn-light:hover { background: #fff; color: var(--sc-ink) !important; }
.sc-nav { position: absolute; top: 50%; z-index: 5; transform: translateY(-50%); width: 46px; height: 46px; border-radius: 50%; border: 1px solid rgba(255,255,255,.5); background: rgba(0,0,0,.25); color: #fff; font-size: 28px; line-height: 1; cursor: pointer; transition: background .2s; padding: 0; }
.sc-nav:hover { background: var(--sc-red); border-color: var(--sc-red); }
.sc-prev { left: 18px; } .sc-next { right: 18px; }
.sc-dots { position: absolute; z-index: 5; left: 0; right: 0; bottom: 22px; display: flex; gap: 10px; justify-content: center; }
.sc-dots button { width: 34px; height: 4px; border: 0; border-radius: 2px; background: rgba(255,255,255,.4); cursor: pointer; padding: 0; }
.sc-dots button.is-active { background: var(--sc-red); }
@keyframes sc-kenburns { from { transform: scale(1.02); } to { transform: scale(1.12); } }
@keyframes sc-rise { to { opacity: 1; transform: none; } }
@media (max-width: 768px) {
	.sc-hero-slider { min-height: 520px; }
	.sc-slide::after { background: linear-gradient(180deg, rgba(10,8,7,.55) 0%, rgba(10,8,7,.78) 100%); }
	.sc-hero-slider .sc-hero-btns { justify-content: flex-start; }
	.sc-hero-slider .sc-slide-inner { text-align: left; }
	.sc-nav { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.sc-slide.is-active .sc-slide-bg, .sc-slide.is-active .sc-slide-inner > * { animation: none; opacity: 1; transform: none; }
	.sc-slide-inner > * { opacity: 1; transform: none; }
}
.sc-hero-slider .sc-dots button { width: 34px !important; height: 4px !important; min-height: 0 !important; min-width: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 2px !important; background: rgba(255,255,255,.4) !important; box-shadow: none !important; font-size: 0 !important; }
.sc-hero-slider .sc-dots button.is-active { background: var(--sc-red) !important; }
.sc-hero-slider .sc-nav { width: 46px !important; height: 46px !important; min-height: 0 !important; min-width: 0 !important; padding: 0 !important; border-radius: 50% !important; border: 1px solid rgba(255,255,255,.5) !important; background: rgba(0,0,0,.3) !important; color: #fff !important; font-size: 28px !important; line-height: 42px !important; box-shadow: none !important; text-align: center; }
.sc-hero-slider .sc-nav:hover { background: var(--sc-red) !important; border-color: var(--sc-red) !important; }
.sc-hero-slider .sc-prev { left: 18px; right: auto; } .sc-hero-slider .sc-next { right: 18px; left: auto; }
.sc-hero-slider .sc-nav { position: absolute !important; top: 50% !important; transform: translateY(-50%) !important; }
.sc-hero-slider .sc-dots { position: absolute !important; }

/* ---------- hero v2: real environments, glass card, progress dots, parallax ---------- */
.sc-hero-slider { --px: 0px; --py: 0px; min-height: clamp(520px, 72vh, 720px); }
.sc-slide-bg { inset: -24px; transform: translate3d(var(--px), var(--py), 0) scale(1.04); transition: transform .5s ease-out; will-change: transform; }
.sc-slide.is-active .sc-slide-bg { animation: sc-kenburns2 12s ease-out forwards; }
@keyframes sc-kenburns2 { from { scale: 1; } to { scale: 1.09; } }
.sc-slide::after { background: linear-gradient(100deg, rgba(14,10,8,.78) 0%, rgba(14,10,8,.46) 42%, rgba(14,10,8,.05) 75%); }
.sc-sweep { position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(115deg, transparent 35%, rgba(255,255,255,.10) 50%, transparent 65%); transform: translateX(-120%); }
.sc-slide.is-active .sc-sweep { animation: sc-sweep 2.4s ease-out .5s 1 forwards; }
@keyframes sc-sweep { to { transform: translateX(120%); } }
.sc-card { max-width: 640px; padding: clamp(22px, 3vw, 40px); border-radius: 20px; background: rgba(20,14,12,.38); border: 1px solid rgba(255,255,255,.16); backdrop-filter: blur(10px) saturate(120%); -webkit-backdrop-filter: blur(10px) saturate(120%); box-shadow: 0 24px 60px rgba(0,0,0,.28); }
.sc-slide-inner > .sc-card { opacity: 1; transform: none; animation: none !important; }
.sc-card > * { opacity: 0; transform: translateY(24px); }
.sc-slide.is-active .sc-card > * { animation: sc-rise .8s cubic-bezier(.2,.7,.2,1) forwards; }
.sc-slide.is-active .sc-card > :nth-child(1) { animation-delay: .3s; }
.sc-slide.is-active .sc-card > :nth-child(2) { animation-delay: .5s; }
.sc-slide.is-active .sc-card > :nth-child(3) { animation-delay: .7s; }
.sc-slide.is-active .sc-card > :nth-child(4) { animation-delay: .85s; }
.sc-slide.is-active .sc-card > :nth-child(5) { animation-delay: 1s; }
.sc-hero-slider h1, .sc-hero-slider .sc-slide-h { font-size: clamp(30px, 4.4vw, 56px); margin-bottom: 14px; }
.sc-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 24px; }
.sc-chips span { padding: 6px 14px; border-radius: 999px; font-size: 13px; font-weight: 700; letter-spacing: .04em; color: #fff; background: rgba(191,20,33,.85); }
.sc-hero-slider .sc-dots { bottom: 26px; justify-content: flex-start; padding-left: max(16px, calc((100% - 1222px) / 2 + 16px)); }
.sc-hero-slider .sc-dots button { position: relative; overflow: hidden; width: 54px !important; height: 4px !important; background: rgba(255,255,255,.35) !important; }
.sc-hero-slider .sc-dots button i { position: absolute; inset: 0; background: var(--sc-red); transform: scaleX(0); transform-origin: left; }
.sc-hero-slider .sc-dots button.is-active { background: rgba(255,255,255,.35) !important; }
.sc-hero-slider .sc-dots button.is-active i { animation: sc-prog var(--dur, 7s) linear forwards; }
.sc-hero-slider.is-paused .sc-dots button.is-active i { animation-play-state: paused; }
@keyframes sc-prog { to { transform: scaleX(1); } }
@media (max-width: 768px) {
	.sc-hero-slider { min-height: 560px; }
	.sc-slide { align-items: flex-end; padding-bottom: 64px; }
	.sc-slide::after { background: linear-gradient(180deg, rgba(14,10,8,.05) 0%, rgba(14,10,8,.7) 100%); }
	.sc-card { padding: 20px; border-radius: 16px; }
	.sc-hero-slider .sc-dots { padding-left: 16px; }
}
@media (prefers-reduced-motion: reduce) {
	.sc-slide.is-active .sc-slide-bg, .sc-slide.is-active .sc-sweep, .sc-slide.is-active .sc-card > *, .sc-hero-slider .sc-dots button.is-active i { animation: none; }
	.sc-card > * { opacity: 1; transform: none; }
	.sc-hero-slider .sc-dots button.is-active i { transform: scaleX(1); }
}
.sc-hero-slider .sc-prev { left: auto !important; right: 84px !important; top: auto !important; bottom: 14px !important; transform: none !important; }
.sc-hero-slider .sc-next { right: 24px !important; top: auto !important; bottom: 14px !important; transform: none !important; }

/* ---------- hero v3: product shown in each slide ---------- */
.sc-product { position: absolute; z-index: 2; right: max(4%, calc((100% - 1222px) / 2 + 40px)); bottom: 7%; height: 74%; width: auto; max-width: 38%; object-fit: contain; pointer-events: none; opacity: 0; transform: translate3d(60px, 20px, 0) scale(.94); filter: drop-shadow(0 30px 40px rgba(0,0,0,.45)); }
.sc-slide.is-active .sc-product { animation: sc-prod-in 1.1s cubic-bezier(.2,.7,.2,1) .5s forwards, sc-float 6s ease-in-out 1.6s infinite; }
.sc-slide::before { content: ""; position: absolute; z-index: 1; right: 6%; bottom: 4%; width: min(46vw, 560px); aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgba(255,255,255,.28) 0%, rgba(255,255,255,0) 68%); opacity: 0; }
.sc-slide.is-active::before { animation: sc-glow 1.4s ease-out .4s forwards; }
@keyframes sc-prod-in { to { opacity: 1; transform: translate3d(0, 0, 0) scale(1); } }
@keyframes sc-float { 0%, 100% { translate: 0 0; } 50% { translate: 0 -12px; } }
@keyframes sc-glow { to { opacity: 1; } }
@media (max-width: 1024px) {
	.sc-product { max-width: 34%; height: 58%; right: 3%; }
}
@media (max-width: 768px) {
	.sc-product { height: 34%; max-width: 40%; top: 6%; bottom: auto; right: 6%; }
	.sc-slide::before { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.sc-slide.is-active .sc-product { animation: none; opacity: 1; transform: none; }
	.sc-slide.is-active::before { animation: none; opacity: 1; }
}

/* ---------- catalog-style spec table (exhaust fans) ---------- */
.sc-spec-wrap { margin: 40px 0; overflow-x: auto; }
.sc-spec { width: 100%; border-collapse: separate; border-spacing: 0 3px; font-size: 15px; text-align: center; min-width: 560px; }
.sc-spec thead th { background: #3d3d3f; color: #fff; padding: 12px 10px; font-weight: 600; font-size: 18px; line-height: 1.2; text-align: center; }
.sc-spec thead th small { display: block; font-size: 10px; letter-spacing: .08em; font-weight: 600; opacity: .85; }
.sc-spec thead th.sc-spec-h { text-align: left; font-size: 17px; padding-left: 16px; width: 28%; }
.sc-spec tbody th { background: #ececee; color: #2e2c2c; text-align: left; font-weight: 700; padding: 10px 16px; width: 28%; }
.sc-spec tbody td { background: #f2f2f3; padding: 10px 12px; color: #333; border-left: 3px solid #fff; }
.sc-spec tbody tr:nth-child(even) td { background: #e6e6e8; }
.sc-spec tbody tr:nth-child(even) th { background: #dedee0; }
@media (max-width: 600px) { .sc-spec { font-size: 13px; } .sc-spec thead th { font-size: 14px; } }
.sc-spec-note { margin: 10px 0 0; font-style: italic; font-weight: 700; color: #bf1421; }

/* ---------- hero slide with the exhaust fans: enter one by one from the right, then travel clockwise around the group ---------- */
.sc-fans { position: absolute; z-index: 2; right: max(1%, calc((100% - 1222px) / 2)); top: 50%; height: min(86%, 44vw); aspect-ratio: 1; transform: translateY(-50%); pointer-events: none; }
.sc-ring { position: absolute; inset: 0; }
.sc-fan { position: absolute; width: 33%; height: 39%; margin: -19.5% 0 0 -16.5%; opacity: 0; transform: translate3d(70vw, 0, 0); }
.sc-fan img { display: block; width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 22px 28px rgba(0,0,0,.5)); }
.sc-fan-1 { left: 29%; top: 64%; }  /* F, bottom left */
.sc-fan-2 { left: 50%; top: 25%; }  /* N graphite, top */
.sc-fan-3 { left: 71%; top: 64%; }  /* N white, bottom right */
.sc-slide.is-active .sc-fan-1 { animation: sc-fan-in 1.4s cubic-bezier(.16,.8,.2,1) .5s forwards; }
.sc-slide.is-active .sc-fan-2 { animation: sc-fan-in 1.4s cubic-bezier(.16,.8,.2,1) 1.5s forwards; }
.sc-slide.is-active .sc-fan-3 { animation: sc-fan-in 1.4s cubic-bezier(.16,.8,.2,1) 2.5s forwards; }
/* after the third fan has landed: the whole group turns clockwise, each fan counter-rotates to stay upright */
.sc-slide.is-active .sc-ring { animation: sc-ring 12s linear 4.2s infinite; }
.sc-slide.is-active .sc-fan img { animation: sc-ring 12s linear 4.2s infinite reverse; }
@keyframes sc-fan-in { 0% { opacity: 0; transform: translate3d(70vw, 0, 0); } 15% { opacity: 1; } 100% { opacity: 1; transform: translate3d(0, 0, 0); } }
@keyframes sc-ring { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
@media (max-width: 1024px) { .sc-fans { height: min(80%, 50vw); } }
@media (max-width: 768px) {
	.sc-fans { top: 3%; right: 4%; left: 4%; height: 34%; width: auto; aspect-ratio: auto; transform: none; }
	.sc-ring { animation: none !important; }
	.sc-fan { height: 100%; width: 30%; margin: 0; top: 0; }
	.sc-fan-1 { left: 2%; top: 8%; } .sc-fan-2 { left: 35%; top: 0; } .sc-fan-3 { left: 68%; top: 8%; }
	.sc-slide.is-active .sc-fan img { animation: none; }
}
@media (prefers-reduced-motion: reduce) {
	.sc-slide.is-active .sc-fan { animation: none; opacity: 1; transform: none; }
	.sc-slide.is-active .sc-ring, .sc-slide.is-active .sc-fan img { animation: none; }
}

/* phones: keep the whole card inside the slide and leave the top third for the product(s) */
@media (max-width: 768px) {
	.sc-hero-slider { min-height: 640px; }
	.sc-hero-slider .sc-card > p { display: none; }
	.sc-hero-slider .sc-card { padding: 20px 20px 22px; }
}
