/* One editorial canvas; no viewport offsets or clipped tab labels. */
body.home .mg-hero--tabs {
	height: auto; min-height: 0; display: flex; flex-direction: column;
	background: #091923; overflow: hidden; padding-bottom: 24px;
}
body.home .mg-hero--tabs .mg-hero__track { position: relative; inset: auto; display: grid; order: 1; }
body.home .mg-hero--tabs .mg-hero__slide {
	position: relative; inset: auto; grid-area: 1 / 1;
	width: 100%; min-height: 560px; max-width: 1360px; margin-inline: auto;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: auto;
	gap: 72px; padding: 124px 40px 54px; align-items: center;
	background: transparent; transform: none; opacity: 0; visibility: hidden;
	pointer-events: none; will-change: auto;
	transition: opacity 460ms ease, visibility 0s linear 460ms;
}
body.home .mg-hero--tabs .mg-hero__slide.is-active { opacity: 1; visibility: visible; pointer-events: auto; transition-delay: 0s; }
body.home .mg-hero--tabs .mg-hero__slide::before,
body.home .mg-hero--tabs .mg-hero__backdrop { display: none; }
body.home .mg-hero--tabs .mg-hero__body { grid-column: 1; grid-row: 1; transform: translateY(18px); opacity: 0; transition: transform 600ms cubic-bezier(.23,1,.32,1), opacity 360ms ease; }
body.home .mg-hero--tabs .mg-hero__slide.is-active .mg-hero__body { transform: none; opacity: 1; }
body.home .mg-hero--tabs .mg-hero__feature {
	grid-column: 2; grid-row: 1;
	height: 360px; max-width: none; border-radius: 28px; margin: 0;
	background: transparent; border: 0; padding: 28px;
	box-shadow: none; opacity: 0; transform: translateX(-24px);
	transition: transform 660ms cubic-bezier(.23,1,.32,1), opacity 400ms ease;
}
body.home .mg-hero--tabs .mg-hero__slide.is-active .mg-hero__feature { transform: none; opacity: 1; }
body.home .mg-hero--tabs .mg-hero__slide--official .mg-hero__feature { background: transparent; border: 0; border-radius: 28px; padding: 28px; }
body.home .mg-hero--tabs .mg-hero__image { object-fit: contain !important; mix-blend-mode: normal; }
body.home .mg-hero--tabs .mg-hero__image--white-key { filter: url(#mg-hero-white-key); }
body.home .mg-hero--tabs .mg-hero__slide--course .mg-hero__feature { background: transparent; border: 0; padding: 12px; }
body.home .mg-hero--tabs .mg-hero__slide--course .mg-hero__image { mix-blend-mode: normal; max-height: 100%; }
body.home .mg-hero--tabs .mg-hero__title { font-size: clamp(32px, 3.2vw, 52px); line-height: 1.45; font-weight: 800; letter-spacing: -.02em; color: #fff; }
body.home .mg-hero--tabs .mg-hero__addr { color: #bfd0da; opacity: 1; font-size: 16px; line-height: 1.95; max-width: 48ch; }
body.home .mg-hero--tabs .mg-hero__meta { color: #9ec8df; font-size: 12px; }
body.home .mg-hero--tabs .mg-hero__meta b { color: #9ec8df; }
body.home .mg-hero--tabs .mg-hero__rule { background: #4c7b92; }
body.home .mg-hero--tabs .mg-hero__title,
body.home .mg-hero--tabs .mg-hero__addr,
body.home .mg-hero--tabs .mg-hero__explore { animation: none !important; }
body.home .mg-hero--tabs .mg-hero__explore { background: #176088; border-color: #3a7a9c; box-shadow: inset 0 1px 0 #ffffff20; border-radius: 14px; padding: 9px 10px 9px 18px; font-size: 14px; min-height: 48px; }
body.home .mg-hero--tabs .mg-hero__selectors,
body.home .mg-hero--tabs[style*="--mg-hero-count:6"] .mg-hero__selectors {
	position: relative; inset: auto; transform: none; order: 2;
	width: calc(100% - 80px); max-width: 1280px; margin: 0 auto;
	display: grid; grid-template-columns: repeat(var(--mg-hero-count, 6), minmax(0, 1fr));
	gap: 8px; padding: 0; overflow: visible;
}
body.home .mg-hero--tabs .mg-hero__selector,
body.home .mg-hero--tabs[style*="--mg-hero-count:6"] .mg-hero__selector {
	width: 100%; min-width: 0; min-height: 76px; padding: 14px 12px;
	gap: 8px; border-radius: 12px; border: 1px solid #324b5a;
	background: #112733; color: #b9cedb; overflow: visible; transform: none;
	transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}
body.home .mg-hero--tabs .mg-hero__selector.is-active { color: #fff; border-color: #6bb9e3; background: #1c4e69; box-shadow: inset 0 -3px 0 #6bb9e3; }
body.home .mg-hero--tabs .mg-hero__selector-copy { display: block; opacity: 1; transform: none; flex: 1; }
body.home .mg-hero--tabs .mg-hero__selector-copy b,
body.home .mg-hero--tabs[style*="--mg-hero-count:6"] .mg-hero__selector-copy b {
	display: block; font-size: 13px; line-height: 1.7; white-space: normal;
	text-overflow: clip; overflow: visible; overflow-wrap: anywhere; color: inherit;
}
body.home .mg-hero--tabs .mg-hero__selector-copy small { display: none; }
body.home .mg-hero--tabs .mg-hero__selector-num { font-size: 12px; flex: 0 0 18px; color: #83afc7; }
body.home .mg-hero--tabs .mg-hero__side { position: relative; inset: auto; transform: none; order: 3; width: calc(100% - 80px); max-width: 1280px; margin: 18px auto 0; display: flex; justify-content: flex-start; }
body.home .mg-hero--tabs .mg-hero__btn { border: 1px solid #496272; border-radius: 50%; background: #132b38; width: 44px; height: 44px; }
body.home .mg-hero--tabs .mg-hero__btn svg { transform: rotate(90deg); }
body.home .mg-hero--tabs .mg-hero__toggle { border-radius: 50%; }
body.home .mg-hero--tabs .mg-hero__progress { height: 2px; }
body.home .mg-hero--tabs .mg-hero__progress i { width: 100%; transform: scaleX(0); transform-origin: right; background: #6bb9e3; }
body.home .mg-hero--tabs :is(.mg-hero__selector,.mg-hero__btn,.mg-hero__toggle):focus-visible { outline: 3px solid #91d3f4; outline-offset: 3px; }
body.home .mg-hero--tabs :is(.mg-hero__selector,.mg-hero__btn,.mg-hero__toggle,.mg-hero__explore):active { transform: scale(.97); }
@media (hover: hover) and (pointer: fine) {
	body.home .mg-hero--tabs .mg-hero__selector:hover { background: #254354; border-color: #6799b5; transform: none; }
	body.home .mg-hero--tabs .mg-hero__explore:hover { background: #2678a4; border-color: #91d3f4; transform: translateY(-2px); }
}
@media (max-width: 1000px) {
	body.home .mg-hero--tabs .mg-hero__slide { gap: 36px; padding-inline: 24px; }
	body.home .mg-hero--tabs .mg-hero__selectors { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
	body.home .mg-hero--tabs { padding-bottom: 28px; }
	body.home .mg-hero--tabs .mg-hero__slide { min-height: 0; grid-template-columns: minmax(0,1fr); grid-template-rows: 220px auto; gap: 24px; padding: 90px 22px 30px; align-content: start; }
	body.home .mg-hero--tabs .mg-hero__feature,
	body.home .mg-hero--tabs .mg-hero__slide--official .mg-hero__feature { height: 220px; padding: 18px; border-radius: 22px; }
	body.home .mg-hero--tabs .mg-hero__image { max-height: 184px; }
	body.home .mg-hero--tabs .mg-hero__body { grid-column: 1; grid-row: 2; }
	body.home .mg-hero--tabs .mg-hero__feature { grid-column: 1; grid-row: 1; }
	body.home .mg-hero--tabs .mg-hero__title { font-size: clamp(26px,7vw,34px); margin-bottom: 12px; }
	body.home .mg-hero--tabs .mg-hero__addr { font-size: 14px; margin-bottom: 20px; }
	body.home .mg-hero--tabs .mg-hero__selectors,
	body.home .mg-hero--tabs[style*="--mg-hero-count:6"] .mg-hero__selectors { width: calc(100% - 44px); grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
	body.home .mg-hero--tabs .mg-hero__selector,
	body.home .mg-hero--tabs[style*="--mg-hero-count:6"] .mg-hero__selector { min-height: 56px; padding: 10px; }
	body.home .mg-hero--tabs .mg-hero__selector-num { display: none; }
	body.home .mg-hero--tabs .mg-hero__selector-copy b { font-size: 13px; text-align: center; }
	body.home .mg-hero--tabs .mg-hero__side { width: calc(100% - 44px); margin-top: 16px; }
}
body.home .mg-hero--instant :is(.mg-hero__slide,.mg-hero__body,.mg-hero__feature) { transition: none !important; }
@media (prefers-reduced-motion: reduce) {
	body.home .mg-hero--tabs :is(.mg-hero__slide,.mg-hero__body,.mg-hero__feature,.mg-hero__selector) { transition: none; transform: none; }
}
