:root {
	--msz-dept-off-white: #f4f0eb;
	--msz-dept-paper: #fff;
	--msz-dept-ink: #1d191a;
	--msz-dept-muted: #6e6667;
	--msz-dept-line: #d6cec8;
	--msz-dept-red: #d90926;
	--msz-dept-dark-red: #760014;
}

.msz-departments-page,
.msz-department-detail {
	background: var(--msz-dept-off-white);
	color: var(--msz-dept-ink);
}

.msz-eyebrow {
	margin: 0 0 22px;
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .18em;
	line-height: 1.4;
	text-transform: uppercase;
}

.msz-eyebrow--red { color: var(--msz-dept-red); }
.msz-section-index { margin: 0;color: var(--msz-dept-red);font-size: .72rem;font-weight: 800;letter-spacing: .14em; }

.msz-page-hero {
	position: relative;
	min-height: min(74svh, 760px);
	display: flex;
	align-items: flex-end;
	overflow: hidden;
	padding: calc(var(--msz-header-height) + 70px) var(--msz-page-gutter) clamp(68px, 8vw, 120px);
	background:
		linear-gradient(115deg, rgba(217, 9, 38, .97) 0 47%, rgba(154, 0, 24, .96) 47% 58%, rgba(29, 25, 26, .98) 58%),
		var(--msz-dept-dark-red);
	color: #fff;
}

.msz-page-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background: repeating-linear-gradient(115deg, transparent 0 46px, rgba(255, 255, 255, .025) 46px 47px);
	pointer-events: none;
}

.msz-page-hero-mark {
	position: absolute;
	right: -.04em;
	top: 47%;
	color: rgba(255, 255, 255, .06);
	font: 800 min(36vw, 500px)/.7 Fira, Arial, sans-serif;
	letter-spacing: -.08em;
	transform: translateY(-50%);
}

.msz-page-hero-inner { position: relative;z-index: 1;width: min(100%, 1500px);margin: 0 auto; }
.msz-page-hero h1 { max-width: 11ch;margin: 0;font: 800 clamp(4rem, 10vw, 10rem)/.9 Fira, Arial, sans-serif;letter-spacing: -.035em; }
.msz-page-hero-lead { max-width: 760px;margin: clamp(30px, 4vw, 54px) 0 0 clamp(0px, 12vw, 180px);font-size: clamp(1rem, 1.35vw, 1.25rem);line-height: 1.65; }

.msz-departments-intro,
.msz-department-introduction {
	display: grid;
	grid-template-columns: 50px minmax(300px, .95fr) minmax(320px, 1.05fr);
	gap: clamp(30px, 5vw, 90px);
	width: min(100%, 1600px);
	margin: 0 auto;
	padding: clamp(90px, 10vw, 170px) var(--msz-page-gutter);
}

.msz-departments-intro h2,
.msz-department-introduction h2 {
	margin: 0;
	font: 800 clamp(3.3rem, 6.3vw, 7.2rem)/.95 Fira, Arial, sans-serif;
	letter-spacing: -.06em;
}
.msz-departments-intro h2 { font-size: clamp(3.3rem, 5.8vw, 6.5rem); }
.msz-department-introduction h2 { font-size: clamp(2.5rem, 4vw, 3.7rem); }

.msz-departments-intro-copy,
.msz-department-copy { max-width: 740px;font-size: clamp(1rem, .35vw + .95rem, 1.18rem);line-height: 1.8; }
.msz-departments-intro-copy p,
.msz-department-copy p { margin: 0 0 1.4em; }
.msz-departments-intro-copy p:first-child,
.msz-department-copy p:first-child { font-size: 1.12em;font-weight: 650; }

.msz-department-overview { padding: clamp(80px, 9vw, 145px) var(--msz-page-gutter);background: var(--msz-dept-ink);color: #fff; }
.msz-department-overview-heading { width: min(100%, 1600px);margin: 0 auto clamp(50px, 6vw, 90px); }
.msz-department-overview-heading h2 { margin: 0;font: 800 clamp(4rem, 8.5vw, 9rem)/.88 Fira, Arial, sans-serif;letter-spacing: -.065em; }

.msz-department-grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	grid-auto-flow: dense;
	grid-auto-rows: clamp(145px, 11vw, 205px);
	gap: clamp(12px, 1.4vw, 22px);
	width: min(100%, 1600px);
	margin: 0 auto;
}

.msz-department-card {
	position: relative;
	grid-column: span 4;
	grid-row: span 2;
	min-height: 290px;
	overflow: hidden;
	background: #332d2e;
	color: #fff;
	isolation: isolate;
}

.msz-department-card:nth-child(6n + 1) { grid-column: span 7;grid-row: span 3; }
.msz-department-card:nth-child(6n + 2) { grid-column: span 5;grid-row: span 3; }
.msz-department-card:nth-child(6n + 4) { grid-column: span 5; }
.msz-department-card:nth-child(6n + 5) { grid-column: span 7; }
.msz-department-grid.count-8 .msz-department-card:nth-last-child(-n + 2),
.msz-department-grid.count-10 .msz-department-card:nth-last-child(-n + 2) { grid-column: span 6;grid-row: span 2; }
.msz-department-grid.count-9 .msz-department-card:nth-last-child(-n + 3),
.msz-department-grid.count-11 .msz-department-card:nth-last-child(-n + 3) { grid-column: span 4;grid-row: span 2; }
.msz-department-grid.count-12 .msz-department-card:nth-last-child(-n + 4) { grid-column: span 6;grid-row: span 2; }

.msz-department-card-image,
.msz-department-card-shade { position: absolute;inset: 0;width: 100%;height: 100%; }
.msz-department-card-image { object-fit: cover;transition: transform .7s cubic-bezier(.22, .61, .36, 1), filter .35s ease; }
.msz-department-card-shade { z-index: 1;background: linear-gradient(180deg, rgba(16, 10, 11, .1) 20%, rgba(16, 10, 11, .88) 100%); }
.msz-department-card-number { position: absolute;z-index: 2;top: 22px;left: 24px;font-size: .68rem;font-weight: 800;letter-spacing: .14em; }
.msz-department-card-content { position: absolute;z-index: 2;right: clamp(22px, 3vw, 42px);bottom: clamp(22px, 3vw, 38px);left: clamp(22px, 3vw, 42px);display: grid;grid-template-columns: minmax(0, 1fr) auto;align-items: end;gap: 12px 22px; }
.msz-department-card-content strong { font: 800 clamp(2rem, 3.7vw, 4.8rem)/.94 Fira, Arial, sans-serif;letter-spacing: -.055em;hyphens: auto;overflow-wrap: normal; }
.msz-department-card-content small { grid-column: 1;max-width: 620px;color: rgba(255, 255, 255, .82);font-size: clamp(.76rem, .3vw + .7rem, .95rem);line-height: 1.55;opacity: 0;transform: translateY(10px);transition: opacity .3s ease, transform .3s ease; }
.msz-department-card-content i { grid-column: 2;grid-row: 1 / span 2;color: #fff;font-size: clamp(1.6rem, 2.2vw, 2.4rem);font-style: normal;transition: transform .25s ease; }
.msz-department-card:hover .msz-department-card-image,
.msz-department-card:focus-visible .msz-department-card-image { filter: brightness(.8);transform: scale(1.035); }
.msz-department-card:hover small,
.msz-department-card:focus-visible small { opacity: 1;transform: none; }
.msz-department-card:hover i,
.msz-department-card:focus-visible i { transform: translate(4px, -4px); }
.msz-department-card:focus-visible { outline: 3px solid #ffcc00;outline-offset: 5px;z-index: 3; }

.msz-department-hero {
	position: relative;
	min-height: min(84svh, 900px);
	display: flex;
	align-items: flex-end;
	overflow: hidden;
	padding: calc(var(--msz-header-height) + 70px) var(--msz-page-gutter) clamp(66px, 8vw, 120px);
	background: #231d1e;
	color: #fff;
}

.msz-department-hero-image,
.msz-department-hero-overlay { position: absolute;inset: 0;width: 100%;height: 100%; }
.msz-department-hero-image { object-fit: cover; }
.msz-department-hero-overlay { background: linear-gradient(180deg, rgba(12, 8, 9, .55) 0, rgba(12, 8, 9, .12) 38%, rgba(15, 8, 10, .92) 100%); }
.msz-department-hero-inner { position: relative;z-index: 1;width: min(100%, 1600px);margin: 0 auto; }
.msz-department-back { display: inline-flex;margin-bottom: clamp(48px, 9vh, 100px);font-size: .7rem;font-weight: 800;letter-spacing: .12em; }
.msz-department-back:hover,
.msz-department-back:focus-visible { color: var(--msz-red-on-dark); }
.msz-department-hero h1 { max-width: 14ch;margin: 0;font: 800 clamp(3.8rem, 8vw, 9rem)/.94 Fira, Arial, sans-serif;letter-spacing: -.06em;hyphens: auto;overflow-wrap: normal; }

.msz-department-introduction h2 { font-size: clamp(2.5rem, 4vw, 3.7rem);line-height: 1.02; }

.msz-department-facts { display: grid;grid-template-columns: minmax(280px, .7fr) minmax(0, 1.3fr);gap: clamp(45px, 8vw, 130px);padding: clamp(90px, 10vw, 160px) var(--msz-page-gutter);background: var(--msz-dept-red);color: #fff; }
.msz-department-facts-heading h2 { margin: 0;font: 800 clamp(4rem, 7vw, 8rem)/.9 Fira, Arial, sans-serif;letter-spacing: -.06em; }
.msz-department-facts-grid { display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));align-content: start;border-top: 1px solid rgba(255, 255, 255, .42); }
.msz-department-facts-grid section { position: relative;min-height: 250px;padding: 30px clamp(20px, 3vw, 46px) 34px 0;border-bottom: 1px solid rgba(255, 255, 255, .42); }
.msz-department-facts-grid section:nth-child(odd) { border-right: 1px solid rgba(255, 255, 255, .42); }
.msz-department-facts-grid section:nth-child(even) { padding-left: clamp(20px, 3vw, 46px); }
.msz-fact-number { margin: 0 0 42px;color: rgba(255, 255, 255, .68);font-size: .68rem;font-weight: 800;letter-spacing: .14em; }
.msz-department-facts-grid h3 { margin: 0 0 20px;font: 800 clamp(1.55rem, 2.4vw, 2.7rem)/1 Fira, Arial, sans-serif;letter-spacing: -.035em; }
.msz-department-facts-grid p,
.msz-department-facts-list { margin: 0;font-size: .94rem;line-height: 1.7; }
.msz-department-facts-list,
.msz-department-links { padding: 0;list-style: none; }
.msz-department-facts-list li { position: relative;padding: 7px 0 7px 20px; }
.msz-department-facts-list li::before { content: "";position: absolute;top: 1.15em;left: 0;width: 8px;height: 2px;background: currentColor; }
.msz-department-links a { display: inline-block;padding: 7px 0;border-bottom: 1px solid currentColor; }

.msz-department-gallery-section { padding: clamp(90px, 10vw, 160px) var(--msz-page-gutter);background: #fff; }
.msz-department-gallery-heading { width: min(100%, 1600px);margin: 0 auto clamp(46px, 6vw, 90px); }
.msz-department-gallery-heading h2 { margin: 0;font: 800 clamp(4rem, 8vw, 9rem)/.9 Fira, Arial, sans-serif;letter-spacing: -.06em; }
.msz-department-gallery { display: grid;grid-template-columns: repeat(12, minmax(0, 1fr));grid-auto-rows: clamp(160px, 15vw, 260px);gap: clamp(12px, 1.5vw, 22px);width: min(100%, 1600px);margin: 0 auto; }
.msz-gallery-item { position: relative;grid-column: span 5;grid-row: span 2;overflow: hidden;padding: 0;border: 0;background: #282223;cursor: zoom-in; }
.msz-gallery-item:nth-child(3n + 1) { grid-column: span 7; }
.msz-gallery-item:nth-child(3n) { grid-column: span 12;grid-row: span 2; }
.msz-gallery-item img { width: 100%;height: 100%;object-fit: cover;transition: transform .6s cubic-bezier(.22, .61, .36, 1), filter .3s ease; }
.msz-gallery-item span { position: absolute;right: 18px;bottom: 16px;padding: 7px 10px;background: #fff;color: var(--msz-dept-red);font-size: .7rem;font-weight: 800; }
.msz-gallery-item:hover img,
.msz-gallery-item:focus-visible img { filter: brightness(.82);transform: scale(1.025); }
.msz-gallery-item:focus-visible { outline: 3px solid var(--msz-dept-red);outline-offset: 5px;z-index: 2; }

.msz-gallery-dialog { width: min(94vw, 1500px);height: min(92svh, 980px);max-width: none;max-height: none;padding: 64px 80px;border: 0;background: #151112;color: #fff; }
.msz-gallery-dialog::backdrop { background: rgba(8, 5, 6, .88); }
.msz-gallery-dialog figure { display: grid;grid-template-rows: minmax(0, 1fr) auto;width: 100%;height: 100%;margin: 0; }
.msz-gallery-dialog figure img { width: 100%;height: 100%;min-height: 0;object-fit: contain; }
.msz-gallery-dialog figcaption { min-height: 28px;padding-top: 12px;text-align: center;font-size: .85rem; }
.msz-gallery-close,
.msz-gallery-nav { position: absolute;z-index: 2;display: grid;place-items: center;width: 48px;height: 48px;border: 1px solid rgba(255, 255, 255, .45);background: #151112;color: #fff;font: 400 1.4rem/1 Manrope, Arial, sans-serif;cursor: pointer; }
.msz-gallery-close { top: 12px;right: 12px; }
.msz-gallery-nav { top: 50%;transform: translateY(-50%); }
.msz-gallery-nav--prev { left: 16px; }
.msz-gallery-nav--next { right: 16px; }
.msz-gallery-close:hover,
.msz-gallery-close:focus-visible,
.msz-gallery-nav:hover,
.msz-gallery-nav:focus-visible { border-color: #ffcc00;outline: 2px solid #ffcc00;outline-offset: 2px; }

.msz-more-departments { display: grid;grid-template-columns: minmax(270px, .7fr) minmax(0, 1.3fr);gap: clamp(50px, 8vw, 130px);padding: clamp(90px, 10vw, 160px) var(--msz-page-gutter);background: var(--msz-dept-ink);color: #fff; }
.msz-more-departments-heading h2 { margin: 0;font: 800 clamp(3rem, 5vw, 5.5rem)/.92 Fira, Arial, sans-serif;letter-spacing: -.06em; }
.msz-more-departments-list { border-top: 1px solid rgba(255, 255, 255, .3); }
.msz-more-departments-list a { display: grid;grid-template-columns: 46px minmax(0, 1fr) auto;align-items: center;gap: 20px;min-height: 105px;border-bottom: 1px solid rgba(255, 255, 255, .3); }
.msz-more-departments-list a span { color: var(--msz-red-on-dark);font-size: .7rem;font-weight: 800; }
.msz-more-departments-list a strong { font: 800 clamp(1.7rem, 3vw, 3.6rem)/1 Fira, Arial, sans-serif;letter-spacing: -.04em;hyphens: auto; }
.msz-more-departments-list a i { color: #fff;font-size: 1.7rem;font-style: normal;transition: transform .25s ease; }
.msz-more-departments-list a:hover i,
.msz-more-departments-list a:focus-visible i { transform: translate(4px, -4px); }
.msz-more-departments-list a:focus-visible { outline: 3px solid #ffcc00;outline-offset: 5px; }
.msz-more-departments-list .msz-all-departments { min-height: 82px; }
.msz-more-departments-list .msz-all-departments strong { font: 800 .72rem/1.35 Manrope, Arial, sans-serif;letter-spacing: .12em; }

.msz-department-cta { padding: clamp(100px, 12vw, 190px) var(--msz-page-gutter);background: var(--msz-dept-off-white);text-align: center; }
.msz-department-cta .msz-eyebrow { color: var(--msz-dept-red); }
.msz-department-cta h2 { margin: 0;font: 800 clamp(4rem, 9vw, 10rem)/.92 Fira, Arial, sans-serif;letter-spacing: -.065em; }
.msz-department-button { display: inline-flex;align-items: center;justify-content: space-between;gap: 40px;min-width: 245px;min-height: 58px;margin-top: 44px;padding: 16px 22px;background: var(--msz-dept-red);color: #fff;font-size: .72rem;font-weight: 800;letter-spacing: .1em; }
.msz-department-button:hover,
.msz-department-button:focus-visible { background: #b70721;transform: translateY(-2px); }
.msz-department-button:focus-visible { outline: 3px solid #1d191a;outline-offset: 4px; }

.msz-site-footer { padding: 64px var(--msz-page-gutter) 26px;background: #1d191a;color: #fff; }
.msz-site-footer-grid { display: grid;grid-template-columns: 1.25fr 1fr .7fr;gap: 50px;width: min(100%, 1600px);margin: 0 auto;padding-bottom: 56px; }
.msz-site-footer-brand img { width: 230px;height: auto; }
.msz-site-footer strong { font-size: .92rem; }
.msz-site-footer p,
.msz-site-footer nav a { margin: 10px 0 0;color: #c9c1c2;font-size: .82rem;line-height: 1.75; }
.msz-site-footer nav a { display: block; }
.msz-site-footer a:hover,
.msz-site-footer a:focus-visible { color: #fff; }
.msz-site-footer a:focus-visible { outline: 3px solid #ffcc00;outline-offset: 4px; }
.msz-site-footer-bottom { display: flex;justify-content: space-between;gap: 30px;width: min(100%, 1600px);margin: 0 auto;padding-top: 24px;border-top: 1px solid #4a4344;font-size: .7rem;letter-spacing: .08em; }

@media (max-width: 1100px) {
	.msz-departments-intro,
	.msz-department-introduction { grid-template-columns: 34px 1fr; }
	.msz-departments-intro-copy,
	.msz-department-copy { grid-column: 2; }
	.msz-department-card-content small { display: none; }
	.msz-department-facts,
	.msz-more-departments { grid-template-columns: 1fr; }
	.msz-department-facts-heading h2,
	.msz-more-departments-heading h2 { max-width: 10ch; }
}

@media (max-width: 980px) {
	.msz-page-hero { min-height: 680px;background: linear-gradient(150deg, #d90926 0 64%, #211b1c 64%); }
	.msz-page-hero-lead { margin-left: 0; }
	.msz-department-grid { grid-template-columns: repeat(2, minmax(0, 1fr));grid-auto-rows: 270px; }
	.msz-department-card,
	.msz-department-card:nth-child(n),
	.msz-department-grid[class*="count-"] .msz-department-card:nth-last-child(-n + 3) { grid-column: span 1;grid-row: span 1;min-height: 0; }
	.msz-department-card:nth-child(3n + 1) { grid-column: span 2; }
	.msz-department-grid .msz-department-card:last-child:nth-child(odd) { grid-column: span 2; }
	.msz-department-card-content strong { font-size: clamp(2rem, 5.5vw, 4rem); }
	.msz-department-hero { min-height: 72svh; }
	.msz-department-gallery { grid-auto-rows: 220px; }
}

@media (max-width: 760px) {
	.msz-page-hero { min-height: 650px;padding-bottom: 64px; }
	.msz-page-hero-mark { top: 28%;font-size: 70vw; }
	.msz-page-hero h1 { font-size: clamp(3.1rem, 14vw, 5.4rem);line-height: .96;letter-spacing: -.025em; }
	.msz-page-hero-lead { font-size: 1rem;line-height: 1.6; }
	.msz-departments-intro,
	.msz-department-introduction { display: block;padding-top: 82px;padding-bottom: 82px; }
	.msz-section-index { margin-bottom: 50px; }
	.msz-departments-intro-copy,
	.msz-department-copy { margin-top: 40px; }
	.msz-departments-intro h2,
	.msz-department-introduction h2 { font-size: clamp(2.25rem, 10vw, 4.5rem);line-height: 1;hyphens: auto;overflow-wrap: normal; }
	.msz-department-overview { padding-top: 76px;padding-bottom: 84px; }
	.msz-department-overview-heading h2 { font-size: 4.6rem; }
	.msz-department-hero { min-height: 650px;padding-bottom: 58px; }
	.msz-department-back { margin-bottom: 80px; }
	.msz-department-hero h1 { font-size: clamp(2.3rem, 10.5vw, 6rem);line-height: .96;hyphens: auto;overflow-wrap: normal; }
	.msz-department-facts,
	.msz-more-departments,
	.msz-department-gallery-section { padding-top: 82px;padding-bottom: 82px; }
	.msz-department-facts-grid { grid-template-columns: 1fr; }
	.msz-department-facts-grid section,
	.msz-department-facts-grid section:nth-child(n) { min-height: 0;padding: 28px 0 34px;border-right: 0; }
	.msz-fact-number { margin-bottom: 30px; }
	.msz-department-gallery { display: block; }
	.msz-gallery-item { display: block;width: 100%;height: auto;min-height: 310px;margin-bottom: 14px; }
	.msz-gallery-item img { position: absolute;inset: 0; }
	.msz-gallery-dialog { width: 100vw;height: 100svh;padding: 72px 52px 38px; }
	.msz-gallery-nav { width: 42px;height: 42px; }
	.msz-gallery-nav--prev { left: 5px; }
	.msz-gallery-nav--next { right: 5px; }
	.msz-more-departments-list a { grid-template-columns: 34px minmax(0, 1fr) auto;gap: 12px; }
	.msz-department-cta h2 { font-size: clamp(3.3rem, 14vw, 5.5rem); }
	.msz-site-footer-grid { grid-template-columns: 1fr; }
	.msz-site-footer-bottom { flex-direction: column; }
}

@media (max-width: 560px) {
	.msz-department-grid { display: block; }
	.msz-department-card,
	.msz-department-card:nth-child(n) { display: block;min-height: 330px;margin-bottom: 14px; }
	.msz-department-card-content strong { font-size: clamp(2.5rem, 12vw, 4rem); }
	.msz-department-overview-heading h2 { font-size: 4rem; }
	.msz-department-facts-heading h2 { font-size: 4rem; }
	.msz-department-gallery-heading h2 { font-size: clamp(3rem, 15vw, 3.8rem); }
	.msz-more-departments-heading h2 { max-width:none;font-size: clamp(2.75rem, 13vw, 3.3rem); }
	.msz-more-departments-list a strong { font-size: clamp(1.6rem, 8vw, 2.5rem); }
	.msz-department-cta h2 { font-size: clamp(2.9rem, 14vw, 4.6rem); }
}

@media (max-width: 360px) {
	.msz-page-hero h1 { letter-spacing: -.035em; }
	.msz-department-gallery-heading h2 { font-size: 2.85rem; }
	.msz-more-departments-heading h2 { font-size: 2.6rem; }
	.msz-department-cta h2 { font-size: 2.75rem; }
}

@media (prefers-reduced-motion: reduce) {
	.msz-department-card-image,
	.msz-department-card-content small,
	.msz-department-card-content i,
	.msz-gallery-item img,
	.msz-more-departments-list a i,
	.msz-department-button { transition: none !important; }
	.msz-department-card:hover .msz-department-card-image,
	.msz-department-card:focus-visible .msz-department-card-image,
	.msz-gallery-item:hover img,
	.msz-gallery-item:focus-visible img,
	.msz-department-button:hover,
	.msz-department-button:focus-visible { transform: none; }
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
