/*
 * StyleMZ Editorial Home 3.4 — cinematic home-only layer.
 * Preserves the commerce shell and its yellow/black identity while giving the
 * campaign films full-bleed space. Loaded after smzed-home-v3.css.
 */

body.ekcs-site-smz .smzed {
	--smzed-ink: var(--smzz-ink, #09090b);
	--smzed-paper: var(--smzz-white, #fff);
	--smzed-accent: var(--smzz-yellow, #ffd523);
	--smzed-lime: var(--smzz-lime, #c7ff2f);
	background: var(--smzed-ink);
}

body.ekcs-site-smz .smzed-hero {
	position: relative;
	display: grid;
	min-height: calc(100dvh - var(--ekcs-header-h, 76px));
	grid-template-columns: 1fr;
	isolation: isolate;
	overflow: hidden;
	border: 0;
	background: var(--smzed-ink);
	color: #fff;
}

body.ekcs-site-smz .smzed-hero__media,
body.ekcs-site-smz .smzed-hero__pan,
body.ekcs-site-smz .smzed-hero__media picture {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
}

body.ekcs-site-smz .smzed-hero__media::before { display: none !important; content: none !important; }

body.ekcs-site-smz .smzed-hero__media::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
	background: rgb(0 0 0 / .12);
	box-shadow: inset min(760px, 48vw) 0 0 rgb(0 0 0 / .58), inset 0 -180px 0 rgb(0 0 0 / .18);
	pointer-events: none;
}

body.ekcs-site-smz .smzed-hero__media .smzz-hero-video,
body.ekcs-site-smz .smzed-hero__media .smzed-hero__video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

body.ekcs-site-smz .smzed-hero__media .smzz-hero-video {
	z-index: 0;
	transform: none;
}

body.ekcs-site-smz .smzed-hero__media .smzed-hero__video {
	z-index: 1;
	opacity: 0;
	transition: opacity .55s ease;
}

body.ekcs-site-smz .smzed-hero__media.is-clip-live .smzed-hero__video { opacity: 1; }

body.ekcs-site-smz .smzed-hero__inner {
	position: relative;
	z-index: 3;
	display: flex;
	width: min(100%, 1760px);
	min-width: 0;
	height: 100%;
	min-height: inherit;
	justify-content: flex-end;
	align-items: flex-start;
	margin: 0 auto;
	padding: clamp(58px, 7vw, 120px) clamp(28px, 3.2vw, 58px) clamp(48px, 6vw, 92px);
	border: 0;
	background: transparent;
	box-shadow: none;
}

body.ekcs-site-smz .smzed-hero__inner::before { display: none; }

body.ekcs-site-smz .smzed-hero .smzed-kicker {
	margin: 0 0 20px;
	color: var(--smzed-accent);
	font: 800 10px/1.3 var(--smzz-mono, ui-monospace, monospace);
	letter-spacing: .16em;
}

body.ekcs-site-smz .smzed .smzed-hero__title {
	max-width: 9ch;
	margin: 0 0 24px;
	color: #fff !important;
	font-family: var(--smzed-sans) !important;
	font-size: clamp(70px, 9.2vw, 176px) !important;
	font-weight: 900 !important;
	line-height: .77 !important;
	letter-spacing: -.075em !important;
	text-transform: uppercase;
	text-wrap: balance;
}

body.ekcs-site-smz .smzed-hero__sub {
	max-width: 36ch;
	margin: 0 0 28px;
	color: rgb(255 255 255 / .82);
	font-size: clamp(14px, 1.05vw, 18px);
	font-weight: 650;
	line-height: 1.55;
}

body.ekcs-site-smz .smzed-hero__cta { display: flex; gap: 0; }

body.ekcs-site-smz .smzed-hero__cta .smzed-btn {
	min-width: 176px;
	min-height: 52px;
	border: 2px solid #fff;
	background: #fff;
	color: var(--smzed-ink);
}

body.ekcs-site-smz .smzed-hero__cta .smzed-btn + .smzed-btn {
	border-left: 0;
	background: var(--smzed-accent);
	color: var(--smzed-ink);
}

body.ekcs-site-smz .smzed-hero__cta .smzed-btn:hover,
body.ekcs-site-smz .smzed-hero__cta .smzed-btn:focus-visible {
	border-color: var(--smzed-accent);
	background: var(--smzed-ink);
	color: #fff;
	transform: none;
}

body.ekcs-site-smz .smzed-tick {
	border-block: 2px solid var(--smzed-ink);
	background: var(--smzed-accent);
	padding: 13px 0;
}

body.ekcs-site-smz .smzed-tick__in span { color: var(--smzed-ink); font-weight: 900; }

body.ekcs-site-smz .smzed-sec,
body.ekcs-site-smz .smzed-sec.tone-dark {
	padding: clamp(72px, 8vw, 138px) 0;
	background: var(--smzed-paper);
	color: var(--smzed-ink);
}

body.ekcs-site-smz .smzed-sec.tone-dark { background: var(--smzed-lime); }

body.ekcs-site-smz .smzed-wrap {
	width: min(100%, 1760px);
	padding-inline: clamp(28px, 3.2vw, 58px);
}

body.ekcs-site-smz .smzed-head {
	display: block;
	margin-bottom: clamp(28px, 3vw, 48px);
}

body.ekcs-site-smz .smzed .smzed-h2 {
	max-width: 12ch;
	color: inherit !important;
	font-family: var(--smzed-sans) !important;
	font-size: clamp(52px, 7vw, 126px) !important;
	font-weight: 900 !important;
	line-height: .82 !important;
	letter-spacing: -.07em !important;
}

body.ekcs-site-smz .smzed-dek,
body.ekcs-site-smz .smzed-copy { color: inherit; }

body.ekcs-site-smz .smzed-seeall {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	margin-top: 18px;
	border-bottom: 2px solid currentColor;
	font-weight: 800;
}

body.ekcs-site-smz .smzed-world,
body.ekcs-site-smz .smzed-world.flip {
	position: relative;
	display: grid;
	min-height: min(900px, 92dvh);
	grid-template-columns: 1fr;
	isolation: isolate;
	overflow: hidden;
	background: var(--smzed-ink);
	color: #fff;
}

body.ekcs-site-smz .smzed-world__media,
body.ekcs-site-smz .smzed-world.flip .smzed-world__media {
	position: absolute;
	inset: 0;
	order: initial;
	width: 100%;
	height: 100%;
	min-height: 0;
	border: 0;
}

body.ekcs-site-smz .smzed-world__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgb(0 0 0 / .14);
	box-shadow: inset min(760px, 48vw) 0 0 rgb(0 0 0 / .58), inset 0 -220px 0 rgb(0 0 0 / .24);
	pointer-events: none;
}

body.ekcs-site-smz .smzed-world__media img,
body.ekcs-site-smz .smzed-world__media .smzz-world-video {
	display: block;
	width: 100%;
	height: 100%;
	max-height: none;
	object-fit: cover;
	transition: transform .6s cubic-bezier(.22, 1, .36, 1);
}

body.ekcs-site-smz .smzed-world__text,
body.ekcs-site-smz .smzed-world.flip .smzed-world__text {
	position: relative;
	z-index: 2;
	order: initial;
	width: min(100%, 1760px);
	align-self: end;
	margin: 0 auto;
	padding: clamp(48px, 6vw, 100px) clamp(28px, 3.2vw, 58px);
	color: #fff;
	text-align: left;
}

body.ekcs-site-smz .smzed-world__text::after { display: none; }
body.ekcs-site-smz .smzed-world .smzed-kicker { color: var(--smzed-accent); }
body.ekcs-site-smz .smzed-world .smzed-h2 { max-width: 10ch; }
body.ekcs-site-smz .smzed-world .smzed-copy,
body.ekcs-site-smz .smzed-world.flip .smzed-copy { max-width: 46ch; color: rgb(255 255 255 / .82); }

body.ekcs-site-smz .smzed-world .smzed-btn {
	border: 2px solid #fff;
	background: #fff;
	color: var(--smzed-ink);
}

body.ekcs-site-smz .smzed-world .smzed-btn:hover,
body.ekcs-site-smz .smzed-world .smzed-btn:focus-visible {
	border-color: var(--smzed-accent);
	background: var(--smzed-accent);
	color: var(--smzed-ink);
}

/* 3.5 campaign sequence: no legacy rail/story repetition. */
body.ekcs-site-smz .smzed-campaign-film {
	position: relative;
	min-height: min(960px, 100dvh);
	isolation: isolate;
	overflow: hidden;
	background: var(--smzed-ink);
	color: #fff;
}

body.ekcs-site-smz .smzed-campaign-film::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: rgb(0 0 0 / .08);
	box-shadow: inset 0 -430px 0 rgb(0 0 0 / .62);
	pointer-events: none;
}

body.ekcs-site-smz .smzed-campaign-film video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.ekcs-site-smz .smzed-campaign-film__copy {
	position: relative;
	z-index: 2;
	display: flex;
	width: min(100%, 1760px);
	min-height: inherit;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
	margin: 0 auto;
	padding: clamp(48px, 6vw, 100px) clamp(28px, 3.2vw, 58px);
}

body.ekcs-site-smz .smzed-campaign-film__copy p,
body.ekcs-site-smz .smzed-collage__copy p {
	margin: 0 0 18px;
	color: var(--smzed-accent);
	font: 800 10px/1.3 var(--smzz-mono, ui-monospace, monospace);
	letter-spacing: .14em;
	text-transform: uppercase;
}

body.ekcs-site-smz .smzed-campaign-film__copy h2,
body.ekcs-site-smz .smzed-collage__copy h2 {
	max-width: 8ch;
	margin: 0 0 28px;
	color: #fff !important;
	font-family: var(--smzed-sans) !important;
	font-size: clamp(72px, 10vw, 188px) !important;
	font-weight: 900 !important;
	line-height: .76 !important;
	letter-spacing: -.075em !important;
	text-transform: uppercase;
}

body.ekcs-site-smz .smzed-campaign-film .smzed-btn,
body.ekcs-site-smz .smzed-proof .smzed-btn {
	border: 2px solid #fff;
	background: #fff;
	color: var(--smzed-ink);
}

body.ekcs-site-smz .smzed-campaign-film .smzed-btn:hover,
body.ekcs-site-smz .smzed-campaign-film .smzed-btn:focus-visible,
body.ekcs-site-smz .smzed-proof .smzed-btn:hover,
body.ekcs-site-smz .smzed-proof .smzed-btn:focus-visible {
	border-color: var(--smzed-accent);
	background: var(--smzed-accent);
	color: var(--smzed-ink);
}

body.ekcs-site-smz .smzed-collage {
	position: relative;
	min-height: min(1500px, 145dvh);
	isolation: isolate;
	overflow: hidden;
	background: var(--smzed-ink);
	color: #fff;
}

body.ekcs-site-smz .smzed-collage__copy {
	position: absolute;
	top: clamp(64px, 8vw, 130px);
	left: clamp(28px, 3.2vw, 58px);
	z-index: 3;
}

body.ekcs-site-smz .smzed-collage__image { position: absolute; display: block; object-fit: cover; }
body.ekcs-site-smz .smzed-collage__image--a { top: 8%; right: -2%; width: min(62vw, 1050px); height: 58%; }
body.ekcs-site-smz .smzed-collage__image--b { bottom: 6%; left: 7%; width: min(48vw, 760px); height: 42%; border: 2px solid var(--smzed-accent); }

body.ekcs-site-smz .smzed-proof {
	position: relative;
	min-height: min(920px, 92dvh);
	isolation: isolate;
	overflow: hidden;
	background: var(--smzed-ink);
	color: #fff;
}

body.ekcs-site-smz .smzed-proof::after { content: ""; position: absolute; inset: 0; z-index: 1; background: rgb(0 0 0 / .12); box-shadow: inset min(820px,54vw) 0 0 rgb(0 0 0 / .68); pointer-events: none; }
body.ekcs-site-smz .smzed-proof > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
body.ekcs-site-smz .smzed-proof__copy { position: relative; z-index: 2; display: flex; width: min(100%,1760px); min-height: inherit; flex-direction: column; justify-content: flex-end; align-items: flex-start; margin: 0 auto; padding: clamp(48px,6vw,100px) clamp(28px,3.2vw,58px); }
body.ekcs-site-smz .smzed-proof__copy h2 { max-width: 11ch; margin: 0 0 22px; color: #fff !important; font-family: var(--smzed-sans) !important; font-size: clamp(64px,8vw,150px) !important; font-weight: 900 !important; line-height: .82 !important; letter-spacing: -.07em !important; text-transform: uppercase; }
body.ekcs-site-smz .smzed-proof__copy p { max-width: 42ch; margin: 0 0 28px; color: rgb(255 255 255 / .84); font-size: 15px; font-weight: 650; line-height: 1.6; }

@media (max-width: 782px) {
	body.ekcs-site-smz .smzed-hero { min-height: calc(100dvh - var(--ekcs-header-h, 62px)); }
	body.ekcs-site-smz .smzed-hero__media::after { background: rgb(0 0 0 / .08); box-shadow: inset 0 -470px 0 rgb(0 0 0 / .64); }
	body.ekcs-site-smz .smzed-hero__media .smzz-hero-video,
	body.ekcs-site-smz .smzed-hero__media .smzed-hero__video { object-position: 62% center; }
	body.ekcs-site-smz .smzed-hero__inner { justify-content: flex-end; padding: 52px 20px calc(160px + env(safe-area-inset-bottom)); }
	body.ekcs-site-smz .smzed .smzed-hero__title { max-width: 12ch; margin-bottom: 18px; font-size: clamp(48px, 13.2vw, 58px) !important; line-height: .8 !important; }
	body.ekcs-site-smz .smzed-hero__sub { max-width: 30ch; margin-bottom: 22px; font-size: 14px; }
	body.ekcs-site-smz .smzed-hero__cta { display: grid; width: 100%; grid-template-columns: 1fr 1fr; }
	body.ekcs-site-smz .smzed-hero__cta .smzed-btn { min-width: 0; min-height: 48px; padding: 0 10px; }
	body.ekcs-site-smz .smzed-wrap { padding-inline: 20px; }
	body.ekcs-site-smz .smzed .smzed-h2 { font-size: clamp(48px, 15vw, 72px) !important; }
	body.ekcs-site-smz .smzed-world,
	body.ekcs-site-smz .smzed-world.flip { min-height: 78dvh; }
	body.ekcs-site-smz .smzed-world__media,
	body.ekcs-site-smz .smzed-world.flip .smzed-world__media { aspect-ratio: auto; border: 0; }
	body.ekcs-site-smz .smzed-world__media::after { background: rgb(0 0 0 / .08); box-shadow: inset 0 -430px 0 rgb(0 0 0 / .68); }
	body.ekcs-site-smz .smzed-world__text,
	body.ekcs-site-smz .smzed-world.flip .smzed-world__text { padding: 42px 20px 30px; }
	body.ekcs-site-smz .smzed-world .smzed-h2 { max-width: 8ch; }
	body.ekcs-site-smz .smzed-campaign-film { min-height: 90dvh; }
	body.ekcs-site-smz .smzed-campaign-film__copy { padding: 42px 20px calc(92px + env(safe-area-inset-bottom)); }
	body.ekcs-site-smz .smzed-campaign-film__copy h2,
	body.ekcs-site-smz .smzed-collage__copy h2 { font-size: clamp(58px, 18vw, 84px) !important; }
	body.ekcs-site-smz .smzed-collage { min-height: 120dvh; }
	body.ekcs-site-smz .smzed-collage__copy { top: 58px; left: 20px; }
	body.ekcs-site-smz .smzed-collage__image--a { top: 29%; right: -18%; width: 92vw; height: 44%; }
	body.ekcs-site-smz .smzed-collage__image--b { bottom: 6%; left: 0; width: 70vw; height: 31%; }
	body.ekcs-site-smz .smzed-proof { min-height: 88dvh; }
	body.ekcs-site-smz .smzed-proof::after { background: rgb(0 0 0 / .08); box-shadow: inset 0 -430px 0 rgb(0 0 0 / .72); }
	body.ekcs-site-smz .smzed-proof__copy { padding: 42px 20px calc(92px + env(safe-area-inset-bottom)); }
	body.ekcs-site-smz .smzed-proof__copy h2 { font-size: clamp(54px,15vw,72px) !important; }
}

@media (prefers-reduced-motion: reduce) {
	body.ekcs-site-smz .smzed-hero__media .smzed-hero__video { display: none; }
	body.ekcs-site-smz .smzed-world__media .smzz-world-video { display: none; }
	body.ekcs-site-smz .smzed-campaign-film video { display: none; }
	body.ekcs-site-smz .smzed-tick__in { animation: none; }
}
