/* ==========================================================================
   Mizukami Atsushi Theme — Main Stylesheet
   Concept: Primitive High-Tech / Cinematic Editorial
   ========================================================================== */

:root {
	--m-bg:        #050403;
	--m-bg-2:      #0a0908;
	--m-bg-3:      #15110d;
	--m-line:      #1a1714;
	--m-text:      #ede8dc;
	--m-text-2:    #d4cfc4;
	--m-mute:      #948b7a;
	--m-mute-2:    #6b6557;
	--m-mute-3:    #4a453d;
	--m-gold:      #c9a96e;
	--m-gold-2:    #8b5a2b;
	--m-soil:      #251a10;
	--m-soil-2:    #3d2817;

	--font-serif-en: "Cormorant Garamond", "Georgia", "Times New Roman", serif;
	--font-serif-ja: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, "MS Mincho", serif;
	--font-mono:     "SF Mono", "Menlo", "Consolas", monospace;

	--container: 1280px;
	--padding-x: clamp(20px, 4vw, 56px);
}

/* Reset & base ----------------------------------------------------------- */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--m-bg);
	color: var(--m-text);
	font-family: var(--font-serif-ja);
	font-size: 15px;
	line-height: 1.85;
	letter-spacing: 0.04em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	overflow-x: hidden;
}
img, video { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; transition: opacity 0.25s ease, color 0.25s ease; }
a:hover { opacity: 0.78; }

.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important;
}
.skip-link { position: absolute; top: -40px; left: 0; padding: 8px 16px; background: var(--m-text); color: var(--m-bg); z-index: 9999; }
.skip-link:focus { top: 0; }

/* Header ----------------------------------------------------------------- */
.m-header {
	position: fixed; top: 0; left: 0; right: 0;
	z-index: 100;
	background: linear-gradient(to bottom, rgba(5,4,3,0.7) 0%, rgba(5,4,3,0) 100%);
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
	transition: background 0.4s ease, backdrop-filter 0.4s ease;
}
.m-header.is-scrolled {
	background: rgba(5,4,3,0.92);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border-bottom: 0.5px solid var(--m-line);
}
.m-header__inner {
	max-width: var(--container);
	margin: 0 auto;
	padding: 22px var(--padding-x);
	display: flex; align-items: center; justify-content: space-between;
}
.m-header__brand a {
	font-family: var(--font-serif-en);
	font-size: 14px;
	letter-spacing: 0.32em;
	color: var(--m-text);
	font-weight: 500;
}
.m-header__menu {
	list-style: none; margin: 0; padding: 0;
	display: flex; gap: 28px;
	font-family: var(--font-serif-en);
	font-size: 11px;
	letter-spacing: 0.22em;
	color: var(--m-text);
}
.m-header__menu a { display: inline-block; padding: 4px 0; position: relative; }
.m-header__menu a::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: -2px;
	height: 0.5px; background: var(--m-gold);
	transform: scaleX(0); transform-origin: left;
	transition: transform 0.35s ease;
}
.m-header__menu a:hover::after { transform: scaleX(1); }

.m-header__toggle { display: none; background: transparent; border: 0; padding: 8px; cursor: pointer; }
.m-header__toggle span { display: block; width: 22px; height: 1px; background: var(--m-text); margin: 5px 0; transition: transform 0.3s ease; }

@media (max-width: 768px) {
	.m-header__nav { display: none; }
	.m-header__nav.is-open {
		display: block;
		position: fixed; top: 60px; left: 0; right: 0; bottom: 0;
		background: var(--m-bg);
		padding: 40px var(--padding-x);
	}
	.m-header__menu { flex-direction: column; gap: 22px; font-size: 14px; }
	.m-header__toggle { display: block; }
}

/* Hero ------------------------------------------------------------------- */
.m-hero {
	position: relative;
	height: 100vh; min-height: 600px;
	overflow: hidden;
	background: var(--m-bg);
}
.m-hero__media { position: absolute; inset: 0; z-index: 0; }
.m-hero__bg {
	position: absolute; inset: 0;
	background-size: cover; background-position: center 60%;
	will-change: transform;
}
.m-hero__bg--kb {
	animation: m-kenburns 22s ease-in-out infinite;
}
.m-hero__bg--placeholder {
	background:
		radial-gradient(ellipse at 50% 70%, rgba(232, 184, 112, 0.35) 0%, rgba(139, 90, 43, 0.18) 35%, transparent 70%),
		linear-gradient(180deg, #1a1410 0%, #2a1d12 55%, #4a3220 100%);
}
@keyframes m-kenburns {
	0%   { transform: scale(1.0)  translate(0, 0); }
	50%  { transform: scale(1.08) translate(-1%, -1.5%); }
	100% { transform: scale(1.0)  translate(0, 0); }
}
.m-hero__overlay {
	position: absolute; inset: 0;
	background:
		linear-gradient(180deg, rgba(5,4,3,0.55) 0%, rgba(5,4,3,0.15) 35%, rgba(5,4,3,0.4) 70%, rgba(5,4,3,0.85) 100%);
}

.m-hero__content {
	position: absolute; left: 0; right: 0; bottom: 22%;
	padding: 0 var(--padding-x);
	max-width: 720px;
	z-index: 2;
	opacity: 0;
	transform: translateY(20px);
	animation: m-rise 1.6s cubic-bezier(0.2, 0.6, 0.2, 1) 0.4s forwards;
}
@keyframes m-rise { to { opacity: 1; transform: translateY(0); } }

.m-hero__label {
	font-family: var(--font-serif-en);
	font-size: 11px;
	letter-spacing: 0.32em;
	color: var(--m-gold);
	margin-bottom: 18px;
	animation: m-shimmer 3s ease-in-out infinite;
}
@keyframes m-shimmer { 0%, 100% { opacity: 0.65; } 50% { opacity: 1; } }

.m-hero__title {
	font-family: var(--font-serif-en);
	font-size: clamp(48px, 8vw, 92px);
	font-weight: 500;
	color: var(--m-text);
	line-height: 0.95;
	letter-spacing: 0.10em;
	margin: 0 0 10px;
}
.m-hero__sub {
	font-family: var(--font-serif-ja);
	font-size: 14px;
	letter-spacing: 0.22em;
	color: var(--m-gold);
	margin-bottom: 24px;
}
.m-hero__tagline {
	font-family: var(--font-serif-ja);
	font-size: clamp(14px, 1.4vw, 17px);
	line-height: 1.95;
	letter-spacing: 0.08em;
	color: var(--m-text-2);
	margin: 0;
	max-width: 480px;
}

.m-hero__play {
	position: absolute; right: var(--padding-x); bottom: 28%;
	z-index: 2;
	display: inline-flex; align-items: center; gap: 12px;
	padding: 11px 22px;
	border: 0.5px solid rgba(237,232,220,0.4);
	border-radius: 100px;
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	font-family: var(--font-serif-en);
	font-size: 11px;
	letter-spacing: 0.22em;
	color: var(--m-text);
	transition: background 0.3s ease, border-color 0.3s ease;
}
.m-hero__play:hover {
	background: rgba(237,232,220,0.08);
	border-color: rgba(237,232,220,0.8);
	opacity: 1;
}
.m-hero__play-icon {
	width: 0; height: 0;
	border-left: 7px solid var(--m-text);
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
}

@media (max-width: 768px) {
	.m-hero__play { display: none; }
	.m-hero__content { bottom: 14%; max-width: 100%; }
}

.m-hero__bottom {
	position: absolute; left: 0; right: 0; bottom: 28px;
	z-index: 2;
	padding: 0 var(--padding-x);
	display: flex; align-items: center; justify-content: space-between;
}
.m-hero__counter {
	display: flex; align-items: center; gap: 14px;
	font-family: var(--font-serif-en);
	font-size: 11px;
	letter-spacing: 0.18em;
	color: rgba(237,232,220,0.55);
}
.m-hero__counter .is-current { color: var(--m-text); }
.m-hero__bars { display: flex; gap: 4px; }
.m-hero__bars span { width: 24px; height: 0.5px; background: rgba(237,232,220,0.2); display: block; }
.m-hero__bars span.is-active { background: var(--m-text); }

.m-hero__scroll {
	display: flex; flex-direction: column; align-items: center; gap: 6px;
	font-family: var(--font-serif-en);
	font-size: 10px;
	letter-spacing: 0.32em;
	color: var(--m-text);
}
.m-hero__scroll-line {
	width: 0.5px; height: 24px; background: var(--m-text);
	animation: m-scroll-pulse 2.4s ease-in-out infinite;
}
@keyframes m-scroll-pulse {
	0%, 100% { opacity: 0.4; transform: translateY(0); }
	50%      { opacity: 1;   transform: translateY(4px); }
}

/* Meta bar --------------------------------------------------------------- */
.m-meta-bar {
	background: var(--m-bg);
	border-bottom: 0.5px solid var(--m-line);
}
.m-meta-bar__inner {
	max-width: var(--container);
	margin: 0 auto;
	padding: 26px var(--padding-x);
	display: flex; align-items: center; justify-content: space-between;
	gap: 24px; flex-wrap: wrap;
}
.m-meta-bar__items {
	display: flex; gap: 36px; flex-wrap: wrap;
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.22em;
	color: var(--m-text-2);
}
.m-meta-bar__items em {
	font-style: normal; color: var(--m-mute); margin-right: 10px;
}
.m-meta-bar__link {
	font-family: var(--font-serif-ja);
	font-size: 12px; letter-spacing: 0.18em; color: var(--m-gold);
}

/* Works ------------------------------------------------------------------ */
.m-works {
	max-width: var(--container);
	margin: 0 auto;
	padding: clamp(60px, 8vw, 110px) var(--padding-x) clamp(40px, 5vw, 60px);
}
.m-works--archive { padding-top: clamp(120px, 12vw, 180px); }
.m-works__head {
	display: flex; align-items: baseline; justify-content: space-between;
	margin-bottom: 40px; gap: 24px; flex-wrap: wrap;
}
.m-works__label {
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.32em;
	color: var(--m-gold-2); margin-bottom: 12px;
}
.m-works__title {
	font-family: var(--font-serif-en);
	font-size: clamp(28px, 4vw, 38px);
	font-weight: 500; font-style: italic;
	color: var(--m-text);
	margin: 0; letter-spacing: 0.04em;
}
.m-works__count {
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.2em; color: var(--m-mute-2);
}

.m-works__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2px;
	background: var(--m-line);
}
@media (max-width: 640px) { .m-works__grid { grid-template-columns: 1fr; } }

.m-work-card {
	background: var(--m-bg);
	display: block;
	transition: transform 0.6s cubic-bezier(0.2, 0.6, 0.2, 1);
}
.m-work-card__media {
	aspect-ratio: 4/3;
	overflow: hidden;
	position: relative;
	background: var(--m-soil);
}
.m-work-card__media img {
	width: 100%; height: 100%; object-fit: cover;
	transition: transform 1.2s cubic-bezier(0.2, 0.6, 0.2, 1), filter 0.6s ease;
	filter: brightness(0.92);
}
.m-work-card:hover .m-work-card__media img {
	transform: scale(1.06);
	filter: brightness(1.05);
	opacity: 1;
}
.m-work-card__placeholder {
	position: absolute; inset: 0;
	background: linear-gradient(135deg, var(--m-soil) 0%, var(--m-bg-3) 60%, var(--m-bg-2) 100%);
}
.m-work-card__number {
	position: absolute; top: 16px; left: 16px;
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.28em;
	color: var(--m-gold);
	z-index: 2;
}
.m-work-card__body {
	padding: 22px 20px 28px;
}
.m-work-card__title {
	font-family: var(--font-serif-ja);
	font-size: 18px;
	color: var(--m-text);
	margin-bottom: 6px;
	letter-spacing: 0.04em;
}
.m-work-card__meta {
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.18em;
	color: var(--m-mute-2);
}

.m-works__more { margin-top: 48px; text-align: center; }
.m-works__more a {
	display: inline-block;
	padding: 16px 36px;
	border: 0.5px solid var(--m-bg-3);
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.28em;
	color: var(--m-text);
	transition: border-color 0.3s ease, background 0.3s ease;
}
.m-works__more a:hover {
	border-color: var(--m-gold);
	background: rgba(201, 169, 110, 0.05);
	opacity: 1;
}

.m-works__empty {
	padding: 60px 20px;
	text-align: center;
	color: var(--m-mute);
	border: 0.5px dashed var(--m-line);
	font-family: var(--font-serif-ja);
	line-height: 2;
}

/* Manifesto -------------------------------------------------------------- */
.m-manifesto {
	background: #030201;
	border-top: 0.5px solid var(--m-line);
	border-bottom: 0.5px solid var(--m-line);
	padding: clamp(80px, 10vw, 130px) 0;
}
.m-manifesto__inner {
	max-width: var(--container);
	margin: 0 auto;
	padding: 0 var(--padding-x);
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 64px;
	align-items: center;
}
@media (max-width: 768px) {
	.m-manifesto__inner { grid-template-columns: 1fr; gap: 48px; }
}
.m-manifesto__label {
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.32em;
	color: var(--m-gold-2); margin-bottom: 24px;
}
.m-manifesto__title {
	font-family: var(--font-serif-ja);
	font-size: clamp(26px, 3.5vw, 36px);
	line-height: 1.65; font-weight: 400;
	letter-spacing: 0.06em;
	color: var(--m-text);
	margin: 0 0 22px;
}
.m-manifesto__body {
	font-family: var(--font-serif-ja);
	font-size: 14px; line-height: 2.1;
	letter-spacing: 0.06em;
	color: var(--m-mute);
	margin: 0 0 28px;
}
.m-manifesto__link {
	display: inline-block;
	font-family: var(--font-serif-en);
	font-size: 12px; letter-spacing: 0.22em;
	color: var(--m-gold);
	font-style: italic;
	padding-bottom: 4px;
	border-bottom: 0.5px solid var(--m-gold);
}
.m-manifesto__vertical {
	display: flex; justify-content: center; align-items: center;
}
.m-manifesto__vtext {
	writing-mode: vertical-rl;
	font-family: var(--font-serif-ja);
	font-size: 18px; line-height: 2.6;
	letter-spacing: 0.5em;
	color: var(--m-gold);
	opacity: 0.85;
	font-weight: 400;
}

/* Single Work ------------------------------------------------------------ */
.m-single__hero {
	position: relative;
	height: 80vh; min-height: 520px;
	overflow: hidden;
}
.m-single__hero-bg {
	position: absolute; inset: 0;
	background-size: cover; background-position: center;
	animation: m-kenburns 30s ease-in-out infinite;
}
.m-single__hero-overlay {
	position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(5,4,3,0.4) 0%, rgba(5,4,3,0.2) 40%, rgba(5,4,3,0.85) 100%);
}
.m-single__hero-inner {
	position: absolute; left: 0; right: 0; bottom: 18%;
	padding: 0 var(--padding-x);
	max-width: var(--container);
	margin: 0 auto;
	z-index: 2;
}
.m-single__num {
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.32em;
	color: var(--m-gold);
	margin-bottom: 18px;
}
.m-single__en {
	font-family: var(--font-serif-en);
	font-size: clamp(48px, 8vw, 96px);
	font-weight: 500;
	letter-spacing: 0.10em;
	color: var(--m-text);
	margin: 0 0 8px;
	line-height: 0.95;
}
.m-single__ja {
	font-family: var(--font-serif-ja);
	font-size: 16px; letter-spacing: 0.22em;
	color: var(--m-gold);
}
.m-single__meta {
	background: var(--m-bg);
	border-bottom: 0.5px solid var(--m-line);
}
.m-single__meta-inner {
	max-width: var(--container);
	margin: 0 auto;
	padding: 32px var(--padding-x);
	display: flex; gap: 48px; flex-wrap: wrap;
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.22em;
	color: var(--m-text-2);
}
.m-single__meta-inner em { font-style: normal; color: var(--m-mute); margin-right: 12px; }

.m-single__tagline {
	max-width: var(--container);
	margin: 0 auto;
	padding: clamp(60px, 8vw, 100px) var(--padding-x) clamp(20px, 3vw, 40px);
}
.m-single__tagline p {
	font-family: var(--font-serif-ja);
	font-size: clamp(20px, 2.5vw, 28px);
	line-height: 1.85;
	letter-spacing: 0.08em;
	color: var(--m-text);
	max-width: 720px; margin: 0;
}

.m-single__body {
	max-width: var(--container);
	margin: 0 auto;
	padding: 0 var(--padding-x) clamp(40px, 6vw, 80px);
}
.m-single__body-inner {
	max-width: 760px;
	margin: 0 auto;
	font-family: var(--font-serif-ja);
	font-size: 16px; line-height: 2.1;
	color: var(--m-text-2);
}
.m-single__body-inner p { margin: 0 0 1.5em; }
.m-single__body-inner img { margin: 2em 0; border-radius: 0; }
.m-single__body-inner h2 {
	font-family: var(--font-serif-ja);
	font-size: 22px;
	color: var(--m-text);
	margin: 2.5em 0 1em;
	letter-spacing: 0.06em;
	font-weight: 500;
}
.m-single__body-inner h3 {
	font-family: var(--font-serif-ja);
	font-size: 18px;
	color: var(--m-text);
	margin: 2em 0 0.8em;
}
.m-single__body-inner a { color: var(--m-gold); border-bottom: 0.5px solid var(--m-gold); }

.m-single__quote {
	background: #030201;
	border-top: 0.5px solid var(--m-line);
	border-bottom: 0.5px solid var(--m-line);
	padding: clamp(60px, 8vw, 100px) 0;
}
.m-single__quote-inner {
	max-width: 840px;
	margin: 0 auto;
	padding: 0 var(--padding-x);
}
.m-single__quote-label {
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.32em;
	color: var(--m-gold-2); margin-bottom: 24px;
}
.m-single__quote blockquote {
	font-family: var(--font-serif-ja);
	font-size: clamp(18px, 2.2vw, 24px);
	line-height: 1.95;
	letter-spacing: 0.08em;
	color: var(--m-text);
	margin: 0;
	border: 0; padding: 0;
}

.m-single__nav {
	border-top: 0.5px solid var(--m-line);
}
.m-single__nav-inner {
	max-width: var(--container);
	margin: 0 auto;
	padding: 36px var(--padding-x);
	display: flex; align-items: center; justify-content: space-between;
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.22em;
	color: var(--m-mute);
	gap: 24px;
}
.m-single__nav-all {
	color: var(--m-gold); padding: 10px 24px; border: 0.5px solid var(--m-bg-3);
}

/* Page / Single Post ----------------------------------------------------- */
.m-page {
	max-width: 840px;
	margin: 0 auto;
	padding: clamp(120px, 14vw, 180px) var(--padding-x) clamp(60px, 8vw, 100px);
}
.m-page__head { margin-bottom: 56px; }
.m-page__label {
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.32em;
	color: var(--m-gold-2); margin-bottom: 18px;
}
.m-page__title {
	font-family: var(--font-serif-ja);
	font-size: clamp(28px, 4vw, 40px);
	font-weight: 500;
	letter-spacing: 0.06em;
	color: var(--m-text);
	margin: 0;
	line-height: 1.5;
}
.m-page__thumb { margin-bottom: 48px; }
.m-page__body {
	font-family: var(--font-serif-ja);
	font-size: 16px; line-height: 2.1;
	color: var(--m-text-2);
}
.m-page__body a { color: var(--m-gold); border-bottom: 0.5px solid var(--m-gold); }
.m-page__body h2, .m-page__body h3 {
	color: var(--m-text);
	font-weight: 500;
	margin-top: 2em;
}

/* Archive (blog) --------------------------------------------------------- */
.m-archive {
	max-width: 920px;
	margin: 0 auto;
	padding: clamp(120px, 14vw, 180px) var(--padding-x) clamp(60px, 8vw, 100px);
}
.m-archive__head { margin-bottom: 56px; }
.m-archive__label {
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.32em;
	color: var(--m-gold-2); margin-bottom: 14px;
}
.m-archive__title {
	font-family: var(--font-serif-ja);
	font-size: clamp(28px, 4vw, 38px);
	font-weight: 500; margin: 0;
	color: var(--m-text);
	letter-spacing: 0.06em;
}
.m-archive__list { display: flex; flex-direction: column; }
.m-archive__item {
	display: grid;
	grid-template-columns: 100px 1fr;
	gap: 24px;
	padding: 28px 0;
	border-top: 0.5px solid var(--m-line);
}
.m-archive__item:last-child { border-bottom: 0.5px solid var(--m-line); }
.m-archive__date {
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.18em;
	color: var(--m-mute);
	padding-top: 4px;
}
.m-archive__item-title {
	font-family: var(--font-serif-ja);
	font-size: 18px;
	font-weight: 400;
	color: var(--m-text);
	margin: 0 0 8px;
	letter-spacing: 0.04em;
}
.m-archive__excerpt {
	font-family: var(--font-serif-ja);
	font-size: 14px;
	line-height: 1.95;
	color: var(--m-mute);
}
.m-archive__nav {
	margin-top: 48px;
	display: flex; justify-content: center; gap: 24px;
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.22em;
	color: var(--m-mute);
}
.m-archive__nav a { color: var(--m-text); padding: 10px 20px; border: 0.5px solid var(--m-line); }

@media (max-width: 600px) {
	.m-archive__item { grid-template-columns: 1fr; gap: 8px; }
}

/* 404 -------------------------------------------------------------------- */
.m-404 {
	min-height: 70vh;
	display: flex; align-items: center; justify-content: center;
	padding: 0 var(--padding-x);
}
.m-404__inner { text-align: center; }
.m-404__num {
	font-family: var(--font-serif-en);
	font-size: clamp(80px, 14vw, 160px);
	font-weight: 500;
	letter-spacing: 0.1em;
	color: var(--m-gold);
	margin-bottom: 24px;
}
.m-404__msg { font-family: var(--font-serif-ja); margin-bottom: 32px; }
.m-404 a {
	font-family: var(--font-serif-en);
	font-size: 12px; letter-spacing: 0.22em;
	color: var(--m-text);
	padding: 12px 28px;
	border: 0.5px solid var(--m-line);
	display: inline-block;
}

/* Footer ----------------------------------------------------------------- */
.m-footer {
	background: var(--m-bg);
	border-top: 0.5px solid var(--m-line);
}
.m-footer__inner {
	max-width: var(--container);
	margin: 0 auto;
	padding: 36px var(--padding-x);
	display: flex; justify-content: space-between; align-items: center;
	gap: 24px; flex-wrap: wrap;
}
.m-footer__copy {
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.22em;
	color: var(--m-mute-3);
}
.m-footer__lang {
	display: flex; gap: 18px;
	font-family: var(--font-serif-en);
	font-size: 11px; letter-spacing: 0.22em;
	color: var(--m-mute-2);
}
.m-footer__lang .is-active { color: var(--m-gold); }

/* Reduced motion --------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}
