/* Hero carousel: miele.ro homepage hero (measured at 390 / 1024 / 1440 px). */
.raa-hero {
	--raa-hero-ink: #1e1e1e;
	--raa-hero-cta: #f59b00;
	--raa-hero-cta-hover: #c47c00;
	--raa-hero-track: rgba(30, 30, 30, .25);
	--raa-hero-btn-border: #89867e;
	--raa-hero-ease: cubic-bezier(.25, 0, .25, 1);
	--raa-hero-edge: 32px;
	position: relative;
	color: var(--raa-hero-ink);
	background: #fff;
	margin-top: 0;
	margin-bottom: 0;
}
.raa-hero *,
.raa-hero *::before,
.raa-hero *::after { box-sizing: border-box; }

.raa-hero__viewport { position: relative; overflow: hidden; }

/* Edge to edge on every width (Shoptimizer only widens .alignfull above 992px). */
.site-main .raa-hero.alignfull {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	width: auto;
	max-width: none;
}
.raa-hero .raa-hero__track {
	display: flex;
	gap: 0 32px;
	margin: 0;
	padding: 0;
	list-style: none;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	position: relative;
}
.raa-hero .raa-hero__track::-webkit-scrollbar { display: none; }
.raa-hero .raa-hero__slide {
	flex: 0 0 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	scroll-snap-align: start;
	scroll-snap-stop: always;
}
.raa-hero__item { display: grid; grid-template-columns: 1fr; align-content: start; height: 100%; }

/* Image */
.raa-hero .raa-hero__media {
	position: relative;
	margin: 0;
	overflow: hidden;
	background: #f6f5f4;
}
/* Minimum height from the image ratio; the image still stretches if the text column is taller. */
.raa-hero .raa-hero__media::before { content: ""; display: block; padding-top: 56.25%; }
.raa-hero__media picture { display: contents; }
.raa-hero .raa-hero__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	display: block;
}

/* Text */
.raa-hero__body {
	display: flex;
	align-items: center;
	padding: 32px 32px 16px;
	min-width: 0;
}
.raa-hero__content { width: 100%; }
.raa-hero .raa-hero__tagline {
	display: none;
	margin: 0 0 16px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: none;
	color: inherit;
}
.raa-hero .raa-hero__title {
	margin: 0;
	padding: 0;
	font-size: 33px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
	color: inherit;
	text-transform: none;
	overflow-wrap: break-word;
	hyphens: manual;
}
.raa-hero .raa-hero__title a,
.raa-hero .raa-hero__title a:hover,
.raa-hero .raa-hero__title a:focus { color: inherit; text-decoration: none; }
.raa-hero__title-strong,
.raa-hero__title-light {
	display: block;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}
.raa-hero .raa-hero__title-light { font-weight: 300; }
.raa-hero .raa-hero__text {
	margin: 24px 0 0;
	font-size: 18px;
	font-weight: 300;
	line-height: 1.4;
	color: inherit;
}
.raa-hero .raa-hero__cta,
.raa-hero .raa-hero__cta:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 44px;
	margin-top: 48px;
	padding: 0 20px;
	border: 0;
	border-radius: 9999px;
	background: var(--raa-hero-cta);
	color: var(--raa-hero-ink);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: .05em;
	text-transform: uppercase;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color .16s var(--raa-hero-ease);
}
.raa-hero .raa-hero__cta:hover,
.raa-hero .raa-hero__cta:focus-visible { background: var(--raa-hero-cta-hover); color: var(--raa-hero-ink); }
.raa-hero .raa-hero__cta:focus-visible,
.raa-hero .raa-hero__btn:focus-visible,
.raa-hero .raa-hero__title a:focus-visible { outline: 2px solid var(--raa-hero-ink); outline-offset: 2px; }

/* Control bar: progress line + round arrows */
.raa-hero__bar { padding: 16px 0; }
.raa-hero__bar-inner {
	display: flex;
	align-items: center;
	gap: 16px;
	height: 32px;
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 var(--raa-hero-edge);
}
.raa-hero__progress {
	position: relative;
	flex: 1 1 0%;
	height: 2px;
	border-top: 2px solid var(--raa-hero-track);
}
.raa-hero__progress-bar {
	position: absolute;
	top: -2px;
	left: 0;
	height: 2px;
	border-top: 2px solid var(--raa-hero-ink);
	transition: width .33s var(--raa-hero-ease);
}
.raa-hero__controls { display: flex; gap: 8px; flex-shrink: 0; }
.raa-hero .raa-hero__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	min-width: 0;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 1px solid var(--raa-hero-btn-border);
	border-radius: 9999px;
	background: transparent;
	color: var(--raa-hero-ink);
	box-shadow: none;
	cursor: pointer;
	transition: background-color .16s var(--raa-hero-ease), border-color .16s var(--raa-hero-ease);
	-webkit-tap-highlight-color: transparent;
}
.raa-hero .raa-hero__btn:hover { background: rgba(30, 30, 30, .06); border-color: var(--raa-hero-ink); color: var(--raa-hero-ink); }
.raa-hero .raa-hero__btn:active { background: rgba(30, 30, 30, .12); }
.raa-hero .raa-hero__btn svg { display: block; width: 16px; height: 16px; }
.raa-hero__btn--next svg { transform: scaleX(-1); }

/* Tablet: image left (65%), text right (35%), image 4:3 */
@media (min-width: 768px) {
	.raa-hero { --raa-hero-edge: 64px; }
	.raa-hero__item { grid-template-columns: 65fr 35fr; align-content: stretch; }
	.raa-hero .raa-hero__media::before { padding-top: 75%; }
	.raa-hero__body { padding: 32px 64px 32px 32px; }
	.raa-hero .raa-hero__tagline { display: block; font-size: 16px; }
	.raa-hero .raa-hero__title { font-size: 47px; }
	.raa-hero .raa-hero__cta { margin-top: 56px; }
}
/* Desktop: image 16:9 */
@media (min-width: 1280px) {
	.raa-hero { --raa-hero-edge: 96px; }
	.raa-hero .raa-hero__media::before { padding-top: 56.25%; }
	.raa-hero__body { padding: 48px 96px 48px 48px; }
	.raa-hero .raa-hero__cta { margin-top: 64px; }
}

.raa-hero--single .raa-hero__track { overflow: hidden; }

@media (prefers-reduced-motion: reduce) {
	.raa-hero .raa-hero__track { scroll-behavior: auto; }
	.raa-hero__progress-bar,
	.raa-hero .raa-hero__cta,
	.raa-hero .raa-hero__btn { transition: none; }
}
