/* Avery Chen student-branding layer: intentionally extends Mireya's light theme. */
:root {
	--avery-paper: #f4f0e9;
	--avery-paper-deep: #ebe4da;
	--avery-ink: #242522;
	--avery-stone: #6c6a63;
	--avery-brick: #a4513d;
	--avery-brick-dark: #7d382b;
}

html { scroll-behavior: smooth; }
body { background: var(--avery-paper); }
body, .mry-text { color: var(--avery-stone); }
h1, h2, h3, h4, h5, h6,
.mry-h1, .mry-h2, .mry-h3, .mry-h4, .mry-h5, .mry-h6,
.mry-label, .mry-menu nav ul .menu-item a { color: var(--avery-ink); }
.mry-border-text {
	-webkit-text-stroke-color: var(--avery-ink);
	-moz-text-stroke-color: var(--avery-ink);
}
.mry-subtitle:before, .mry-btn, .mry-btn-color,
.mry-loader-bar .mry-loader, .mry-slider-pagination .swiper-pagination-bullet-active,
.mry-slider-progress-bar .mry-progress, .mry-scroll-hint span,
.mry-filter .mry-current:after, .mry-card-item .mry-card-cover-frame .mry-badge {
	background-color: var(--avery-brick) !important;
}
.mry-btn:hover, .mry-btn-color:hover { background-color: var(--avery-brick-dark) !important; }
.mry-link, .mry-text a, .mry-text a:hover, .mry-footer-copy a:hover,
.mry-menu nav ul .menu-item.current-menu-item > a { color: var(--avery-brick); }
.avery-logo {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	color: var(--avery-ink);
	white-space: nowrap;
}
.avery-logo-mark {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(36, 37, 34, .35);
	font-family: -apple-system, BlinkMacSystemFont, sans-serif;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .08em;
}
.avery-logo-name {
	font-family: -apple-system, BlinkMacSystemFont, sans-serif;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: .03em;
}
.mry-preloader .avery-logo { justify-content: center; }
.mry-preloader .avery-logo-mark { width: 54px; height: 54px; }
.mry-menu .mry-info-box-frame .mry-info-box { border-color: rgba(36, 37, 34, .18); }
.avery-menu-intro { max-width: 340px; }
.mry-project-slider-item .mry-project-frame.mry-project-half .mry-cover-frame { width: 54%; }
.mry-project-slider-item .mry-cover-frame img, .mry-head-bg img,
.mry-card-cover-frame img, .mry-member-photo-frame img, .avery-editorial-image img {
	filter: saturate(.72) contrast(.96);
}
.mry-project-slider-item .mry-project-frame .mry-cover-overlay {
	background-image: linear-gradient(269deg, rgba(244, 240, 233, 0) 66%, rgba(244, 240, 233, .72) 84%, var(--avery-paper) 100%);
}
.mry-project-slider-item .mry-main-title-frame .mry-main-title h1,
.mry-project-slider-item .mry-main-title-frame .mry-main-title .mry-h1 { text-shadow: 0 0 40px rgba(244, 240, 233, .55); }
.avery-slide-copy { max-width: 540px; }
.avery-slide-copy .mry-text { max-width: 470px; font-size: 17px; line-height: 26px; }
.avery-kicker { color: var(--avery-brick); }
.avery-lede { font-size: 20px; line-height: 31px; }
.avery-wide-copy { max-width: 760px; margin-right: auto; margin-left: auto; }
.avery-section-rule { border-top: 1px solid rgba(36, 37, 34, .14); }
.avery-editorial-image { position: relative; overflow: hidden; }
.avery-editorial-image img { width: 100%; height: 100%; object-fit: cover; }
.avery-editorial-image--wide { height: 520px; }
.avery-editorial-image--tall { height: 620px; }

.avery-theme-card {
	height: 100%;
	padding: 34px 32px;
	border-top: 1px solid rgba(36, 37, 34, .24);
}
.avery-theme-card .avery-index {
	display: block;
	margin-bottom: 28px;
	color: var(--avery-brick);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 2px;
}

.avery-journey-card .mry-member-photo-frame { height: 360px; }
.avery-journey-card .mry-member-photo-frame img { object-fit: cover; }
.avery-journey-meta { color: var(--avery-brick); font-size: 12px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; }
.avery-recognition { padding: 28px 0; border-top: 1px solid rgba(36, 37, 34, .16); }
.avery-recognition:last-child { border-bottom: 1px solid rgba(36, 37, 34, .16); }
.avery-reflection { padding: 18px 0 38px; }
.avery-reflection blockquote { margin: 0; color: var(--avery-ink); font-family: -apple-system, BlinkMacSystemFont, sans-serif; font-size: 30px; font-weight: 800; line-height: 1.3; }

.avery-metric { padding: 30px 12px; border-top: 1px solid rgba(36, 37, 34, .2); }
.avery-metric strong { display: block; color: var(--avery-ink); font-family: -apple-system, BlinkMacSystemFont, sans-serif; font-size: 62px; font-weight: 900; line-height: 1; }
.avery-metric span { display: block; margin-top: 10px; color: var(--avery-stone); font-size: 11px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; }
.avery-method-list { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 24px; margin: 0; padding: 0; list-style: none; }
.avery-method-list li { position: relative; padding-left: 18px; color: var(--avery-stone); }
.avery-method-list li:before { position: absolute; left: 0; color: var(--avery-brick); content: '•'; }

.avery-chart-card { height: 100%; padding: 34px; background: var(--avery-paper-deep); }
.avery-chart-wrap { position: relative; min-height: 330px; }
.avery-chart-note { margin: 16px 0 0; color: var(--avery-stone); font-size: 13px; line-height: 19px; }
.avery-finding { padding: 40px 0; border-top: 1px solid rgba(36, 37, 34, .16); }
.avery-finding-number { color: var(--avery-brick); font-size: 12px; font-weight: 700; letter-spacing: 2px; }

.mry-card-item .mry-card-cover-frame img { object-fit: cover; }
.mry-item-descr .mry-text { min-height: 44px; }
.avery-card-link { color: inherit; }

.avery-note-meta { margin-bottom: 14px; color: var(--avery-brick); font-size: 11px; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; }
.avery-article-meta { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 26px; margin-top: 30px; color: var(--avery-stone); font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.avery-article h2 { margin: 70px 0 25px; font-size: 38px; line-height: 48px; }
.avery-article p { margin-bottom: 24px; color: var(--avery-stone); font-size: 18px; line-height: 30px; }
.avery-article blockquote { margin: 52px 0; padding: 34px 0 34px 36px; border-left: 3px solid var(--avery-brick); color: var(--avery-ink); font-family: -apple-system, BlinkMacSystemFont, sans-serif; font-size: 28px; font-weight: 800; line-height: 1.4; }

.avery-contact-links { margin: 0; padding: 0; list-style: none; }
.avery-contact-links li { border-top: 1px solid rgba(36, 37, 34, .18); }
.avery-contact-links li:last-child { border-bottom: 1px solid rgba(36, 37, 34, .18); }
.avery-contact-links a { display: flex; align-items: center; justify-content: space-between; padding: 28px 4px; color: var(--avery-ink); font-family: -apple-system, BlinkMacSystemFont, sans-serif; font-size: 22px; font-weight: 800; }
.avery-contact-links a:hover { color: var(--avery-brick); }
.avery-contact-links small { color: var(--avery-stone); font-family: 'Josefin Sans', sans-serif; font-size: 11px; font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; }

.avery-footer-title { margin-bottom: 8px; }
.avery-footer-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px 28px; margin: 24px 0 0; padding: 0; list-style: none; }
.avery-footer-links a { color: var(--avery-ink); font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.avery-footer-links a:hover { color: var(--avery-brick); }

.avery-sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}
a:focus-visible, button:focus-visible, [tabindex]:focus-visible, .mry-menu-btn:focus-visible {
	outline: 2px solid var(--avery-brick) !important;
	outline-offset: 5px;
}
.mry-menu-btn {
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
}
.mry-prev, .mry-next {
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
}

/* Restore Mireya's single rectangular homepage slider-navigation panel. */
.mry-main-slider ~ .mry-slider-nav-panel .mry-slider-arrows {
	height: 100px;
	border-radius: 0;
}
.mry-main-slider ~ .mry-slider-nav-panel .mry-slider-arrows .mry-button-prev,
.mry-main-slider ~ .mry-slider-nav-panel .mry-slider-arrows .mry-button-next {
	height: 100px;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 0;
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
	box-shadow: none;
	color: inherit;
}
.mry-main-slider ~ .mry-slider-nav-panel .mry-slider-arrows .mry-button-prev:hover span i,
.mry-main-slider ~ .mry-slider-nav-panel .mry-slider-arrows .mry-button-next:hover span i {
	color: var(--avery-brick);
}
.mry-magic-cursor { display: none !important; }
.avery-native-scroll .mry-content-frame { height: auto !important; min-height: 100vh; overflow: visible !important; }
.mry-curtain { transform: translateX(-105%); pointer-events: none; }
.scrollbar-track .scrollbar-thumb { background-color: var(--avery-brick) !important; }
@media (hover: none), (pointer: coarse) {
	.mry-magic-cursor { display: none !important; }
	.mry-card-item .mry-card-cover-frame .mry-hover-links { opacity: 1; transform: none; }
}
@media (max-width: 992px) {
	.mry-project-slider-item .mry-project-frame.mry-project-half .mry-cover-frame { width: 58%; }
	.avery-slide-copy { max-width: 470px; }
}
@media (max-width: 768px) {
	.mry-main-slider ~ .mry-slider-nav-panel .mry-slider-arrows {
		padding: 0 14px 0 24px;
	}
	.mry-main-slider ~ .mry-slider-nav-panel .mry-slider-arrows .mry-label {
		display: block;
		margin-right: 12px;
		white-space: nowrap;
	}
	.mry-project-slider-item .mry-project-frame.mry-project-half .mry-cover-frame { width: 100%; }
	.mry-project-slider-item .mry-project-frame .mry-cover-overlay {
		background: linear-gradient(0deg, rgba(244, 240, 233, .98) 0%, rgba(244, 240, 233, .68) 54%, rgba(244, 240, 233, .08) 100%);
	}
	.avery-slide-copy .mry-text { font-size: 14px; line-height: 20px; }
	.avery-logo-name { display: none; }
	.avery-editorial-image--wide, .avery-editorial-image--tall { height: 360px; }
	.avery-lede { font-size: 17px; line-height: 27px; }
	.avery-reflection blockquote { font-size: 24px; }
	.avery-metric strong { font-size: 46px; }
	.avery-chart-card { padding: 24px 18px; }
	.avery-chart-wrap { min-height: 280px; }
	.avery-article h2 { margin-top: 50px; font-size: 30px; line-height: 38px; }
	.avery-article p { font-size: 16px; line-height: 27px; }
	.avery-article blockquote { margin: 38px 0; padding-left: 22px; font-size: 23px; }
	.avery-contact-links a { font-size: 18px; }
}
@media (max-width: 590px) {
	.mry-main-slider ~ .mry-slider-nav-panel .mry-slider-arrows {
		left: auto;
		right: 0;
		height: 80px;
		padding: 0 12px 0 20px;
		justify-content: flex-end;
		background-color: #f7f8fa !important;
	}
	.mry-main-slider ~ .mry-slider-nav-panel .mry-slider-arrows .mry-label {
		display: block;
		margin-right: 10px;
	}
	.mry-main-slider ~ .mry-slider-nav-panel .mry-slider-arrows .mry-button-prev,
	.mry-main-slider ~ .mry-slider-nav-panel .mry-slider-arrows .mry-button-next {
		width: 48px;
		height: 80px;
	}
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *:before, *:after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}
}
