/**
 * Theme Name: Musa Zia Astra Child
 * Theme URI: https://www.musazia.com/
 * Description: Child theme for Musa Zia Architects, built on Astra.
 * Author: Musa Zia Architects
 * Template: astra
 * Version: 0.9.7
 * Text Domain: musa-zia-astra-child
 */

/*
 * Musa Zia Architects — Global Design Foundation (Phase 4A)
 *
 * This file establishes only reusable visual primitives.  Page composition,
 * header/footer design, and Project presentation remain intentionally out of
 * scope until their respective approved phases.
 */

:root {
	/* Colour */
	--mz-ink: #171717;
	--mz-soft-black: #242424;
	--mz-off-white: #f5f3ee;
	--mz-paper: #faf9f6;
	--mz-stone: #d8d2c8;
	--mz-muted: #8a8883;
	--mz-line: #d9d6cf;
	--mz-white: #ffffff;
	--mz-accent: #8b7355;

	/* Spacing */
	--mz-space-xs: clamp(0.5rem, 0.4rem + 0.2vw, 0.625rem);
	--mz-space-sm: clamp(0.875rem, 0.75rem + 0.5vw, 1.25rem);
	--mz-space-md: clamp(1.25rem, 1rem + 1vw, 2rem);
	--mz-space-lg: clamp(2rem, 1.5rem + 2vw, 3.5rem);
	--mz-space-xl: clamp(3.5rem, 2.5rem + 3vw, 6rem);
	--mz-space-2xl: clamp(5rem, 3.5rem + 5vw, 9rem);
	--mz-space-3xl: clamp(7rem, 5rem + 7vw, 11.25rem);

	/* Grid and interface */
	--mz-container-wide: 90rem;
	--mz-container: 82.5rem;
	--mz-container-text: 46rem;
	--mz-gutter: clamp(1.125rem, 0.65rem + 2.1vw, 4.5rem);
	--mz-line-color: var(--mz-line);
	--mz-transition: 180ms cubic-bezier(0.2, 0.65, 0.3, 1);
	--mz-radius: 0.125rem;

	/* Type */
	--mz-font-serif: Georgia, Cambria, "Times New Roman", Times, serif;
	--mz-font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--mz-tracking-label: 0.12em;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: var(--mz-space-lg);
}

/* Phase 5A — approved Journal masthead and disciplined editorial grid. */
.mza-journal--archive .mza-journal-hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(16rem,3fr) minmax(18rem,4fr);gap:clamp(1.5rem,4vw,5rem);align-items:end;padding-block:clamp(3rem,6vw,6rem) clamp(2.25rem,4vw,4rem);border-bottom:1px solid var(--mz-line)}
.mza-journal--archive .mza-journal-hero h1{margin:0;font-size:clamp(4.75rem,9vw,9rem);font-weight:400;line-height:.78;letter-spacing:-.055em}
.mza-journal-hero__lead,.mza-journal--archive .mza-journal-hero__intro{margin:0;color:var(--mz-ink-soft)}
.mza-journal-hero__lead{max-width:24rem;font-family:var(--mz-font-serif);font-size:clamp(1.25rem,1.75vw,1.75rem);line-height:1.28}
.mza-journal--archive .mza-journal-hero__intro{max-width:32rem;font-size:.95rem;line-height:1.7}
.mza-journal-categories{display:flex;gap:0;align-items:center;padding-block:1.15rem;border-bottom:1px solid var(--mz-line);overflow-x:auto;scrollbar-width:thin}
.mza-journal-categories a{position:relative;flex:0 0 auto;padding:.25rem clamp(.65rem,1.25vw,1.2rem);font-size:.69rem;letter-spacing:.1em;text-transform:uppercase}
.mza-journal-categories a:first-child{padding-inline-start:0}.mza-journal-categories a+a{border-inline-start:1px solid var(--mz-line)}
.mza-journal-categories a[aria-current="page"]::after{position:absolute;inset-inline:.65rem;bottom:-.95rem;height:2px;background:var(--mz-accent);content:""}.mza-journal-categories a:first-child[aria-current="page"]::after{inset-inline-start:0}
.mza-journal-latest{padding-block:clamp(2.25rem,4vw,4.5rem) clamp(4rem,8vw,8rem)}.mza-journal-section-heading{margin-bottom:1.4rem}
.mza-journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;gap:1px;align-items:stretch;padding:1px;background:var(--mz-line)}
.mza-journal-card,.mza-journal-card:nth-child(n),.mza-journal-card--lead{grid-column:auto;display:flex;min-width:0;height:100%;margin:0;padding:0;flex-direction:column;background:var(--mz-paper);border:0}
.mza-journal-card__media{position:relative;flex:0 0 auto;aspect-ratio:16/10;overflow:hidden}.mza-journal-card__image{display:block;width:100%;height:100%}
.mza-journal-card__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.mza-journal-card__image:hover img{transform:scale(1.012)}
.mza-journal-card__category{position:absolute;inset-block-start:1rem;inset-inline-start:1rem;z-index:1}.mza-journal-card__category .mza-journal-category{display:inline-block;padding:.42rem .65rem;background:rgba(244,240,232,.94);color:var(--mz-ink);font-size:.62rem;letter-spacing:.11em;line-height:1;text-transform:uppercase}
.mza-journal-card__content{display:flex;flex:1 1 auto;flex-direction:column;align-items:stretch;padding:clamp(1.25rem,2.2vw,2rem)}
.mza-journal-card__meta{display:flex;gap:.5rem;margin:0 0 1rem;color:var(--mz-muted);font-size:.64rem;letter-spacing:.09em;line-height:1.4;text-transform:uppercase}
.mza-journal-card h2{min-height:3.15em;margin:0 0 1rem;font-size:clamp(1.55rem,2vw,2.15rem);line-height:1.05}
.mza-journal-card .mza-journal-excerpt{flex:1 1 auto;margin-bottom:1.5rem}.mza-journal-card .mza-journal-excerpt p{margin:0}
.mza-journal-card .mza-journal-read{align-self:flex-start;margin-top:auto;padding-top:.85rem;border-top:1px solid var(--mz-line);font-size:.67rem;letter-spacing:.11em;text-transform:uppercase}
@media(max-width:1199px){.mza-journal--archive .mza-journal-hero{grid-template-columns:1fr 1fr}.mza-journal--archive .mza-journal-hero h1{grid-column:1/-1}.mza-journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.mza-journal--archive .mza-journal-hero{display:block;padding-block:3rem 2.5rem}.mza-journal--archive .mza-journal-hero h1{margin-bottom:1.75rem;font-size:clamp(4rem,21vw,6.25rem)}.mza-journal-hero__lead{margin-bottom:1.25rem}.mza-journal-categories{padding-block:.95rem}.mza-journal-grid{grid-template-columns:minmax(0,1fr)}.mza-journal-card h2{min-height:0}}
@media(prefers-reduced-motion:reduce){.mza-journal-card__image img{transition:none}}

/* Approved reference polish — compact masthead and category/search rail. */
.mza-journal--archive .mza-journal-hero{grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto auto;column-gap:clamp(1rem,2vw,2rem);row-gap:1.65rem;padding-block:clamp(2.75rem,4.5vw,4.75rem) clamp(2rem,3vw,3rem)}
.mza-journal--archive .mza-journal-hero h1{grid-column:1/span 7;grid-row:1;margin:0;font-size:clamp(5.5rem,9vw,9rem)}
.mza-journal--archive .mza-journal-hero__lead{grid-column:1/span 6;grid-row:2;display:flex;max-width:34rem;gap:1.75rem;align-items:center;font-family:var(--mz-font-sans);font-size:.78rem;font-weight:500;line-height:1.8;letter-spacing:.18em;text-transform:uppercase}
.mza-journal--archive .mza-journal-hero__lead::before{display:block;flex:0 0 2.8rem;width:2.8rem;height:2.8rem;border:1px solid var(--mz-line);background:linear-gradient(to bottom,transparent calc(50% - 1px),var(--mz-accent) calc(50% - 1px),var(--mz-accent) calc(50% + 1px),transparent calc(50% + 1px));content:""}
.mza-journal--archive .mza-journal-hero__intro{grid-column:8/span 4;grid-row:1/span 2;align-self:end;margin-bottom:.4rem;font-family:var(--mz-font-serif);font-size:clamp(1rem,1.2vw,1.2rem);line-height:1.55}
.mza-journal-toolbar{display:flex;gap:1.5rem;align-items:stretch;border-bottom:1px solid var(--mz-line)}
.mza-journal-toolbar .mza-journal-categories{min-width:0;flex:1 1 auto;border:0}
.mza-journal-search{display:flex;flex:0 0 clamp(13rem,20vw,20rem);align-items:center;border-bottom:1px solid var(--mz-line)}
.mza-journal-search input[type="search"]{width:100%;height:100%;min-height:3.55rem;margin:0;padding:.5rem;border:0;background:transparent;color:var(--mz-ink);font-family:var(--mz-font-sans);font-size:.82rem;box-shadow:none}
.mza-journal-search input[type="search"]:focus{outline:0;box-shadow:inset 0 -1px 0 var(--mz-accent)}
.mza-journal-search button{position:relative;width:2.75rem;height:100%;min-height:3.55rem;padding:0;border:0;background:transparent;color:var(--mz-ink);box-shadow:none}
.mza-journal-search button span{display:block;width:.85rem;height:.85rem;margin:auto;border:1.5px solid currentColor;border-radius:50%}.mza-journal-search button span::after{position:absolute;width:.42rem;height:1.5px;background:currentColor;transform:translate(.55rem,-.12rem) rotate(45deg);content:""}
.mza-journal-latest{padding-block:1.25rem clamp(4rem,8vw,8rem);border-top:0}
@media(max-width:1199px){.mza-journal--archive .mza-journal-hero{grid-template-columns:repeat(8,minmax(0,1fr))}.mza-journal--archive .mza-journal-hero h1{grid-column:1/-1}.mza-journal--archive .mza-journal-hero__lead{grid-column:1/span 4}.mza-journal--archive .mza-journal-hero__intro{grid-column:5/-1;grid-row:2}.mza-journal-toolbar{display:block}.mza-journal-search{display:none}}
@media(max-width:767px){.mza-journal--archive .mza-journal-hero{display:block}.mza-journal--archive .mza-journal-hero__lead{display:flex;margin-bottom:1.4rem}.mza-journal--archive .mza-journal-hero__intro{margin:0}.mza-journal--archive .mza-journal-hero__lead::before{flex-basis:2.25rem;width:2.25rem;height:2.25rem}.mza-journal-latest{padding-top:1rem}}

body,
button,
input,
select,
textarea {
	font-family: var(--mz-font-sans);
}

body {
	background-color: var(--mz-paper);
	color: var(--mz-ink);
	font-size: clamp(1rem, 0.97rem + 0.15vw, 1.125rem);
	line-height: 1.65;
	text-rendering: optimizeLegibility;
}

::selection {
	background: var(--mz-stone);
	color: var(--mz-ink);
}

/* Editorial hierarchy. Use a semantic heading order in all future templates. */
h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--mz-ink);
	font-family: var(--mz-font-serif);
	font-weight: 400;
	line-height: 1.08;
	margin-block: 0 0.65em;
	text-wrap: balance;
}

h1 {
	font-size: clamp(2.4rem, 1.55rem + 3.5vw, 5.5rem);
	letter-spacing: -0.035em;
}

h2 {
	font-size: clamp(2rem, 1.45rem + 2.25vw, 3.75rem);
	letter-spacing: -0.028em;
}

h3 {
	font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.3rem);
	letter-spacing: -0.02em;
}

h4 {
	font-family: var(--mz-font-sans);
	font-size: clamp(1.05rem, 1rem + 0.4vw, 1.3rem);
	font-weight: 600;
	letter-spacing: -0.01em;
}

p,
ul,
ol {
	margin-block: 0 1.25em;
}

p:last-child,
ul:last-child,
ol:last-child {
	margin-bottom: 0;
}

a {
	color: currentColor;
	text-decoration-color: var(--mz-accent);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
	transition: color var(--mz-transition), text-decoration-color var(--mz-transition);
}

a:hover {
	color: var(--mz-accent);
}

/* Keyboard visibility is deliberately clear against the warm paper palette. */
:focus-visible {
	outline: 2px solid var(--mz-accent);
	outline-offset: 3px;
}

/* Reusable layout primitives for future Elementor sections and templates. */
.mz-container-wide,
.mz-container,
.mz-container-text {
	box-sizing: border-box;
	margin-inline: auto;
	padding-inline: var(--mz-gutter);
	width: 100%;
}

.mz-container-wide {
	max-width: calc(var(--mz-container-wide) + (var(--mz-gutter) * 2));
}

.mz-container {
	max-width: calc(var(--mz-container) + (var(--mz-gutter) * 2));
}

.mz-container-text {
	max-width: calc(var(--mz-container-text) + (var(--mz-gutter) * 2));
}

.mz-section {
	padding-block: var(--mz-space-2xl);
}

.mz-section--generous {
	padding-block: var(--mz-space-3xl);
}

.mz-eyebrow,
.mz-meta,
.mz-button,
.mz-text-link {
	font-family: var(--mz-font-sans);
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: var(--mz-tracking-label);
	line-height: 1.4;
	text-transform: uppercase;
}

.mz-eyebrow,
.mz-meta {
	color: var(--mz-muted);
}

.mz-button,
.wp-element-button,
input[type="submit"],
button[type="submit"] {
	background: transparent;
	border: 1px solid var(--mz-ink);
	border-radius: var(--mz-radius);
	color: var(--mz-ink);
	display: inline-flex;
	gap: 0.6em;
	justify-content: center;
	padding: 0.9rem 1.15rem;
	text-decoration: none;
	transition: background-color var(--mz-transition), border-color var(--mz-transition), color var(--mz-transition);
}

.mz-button:hover,
.wp-element-button:hover,
input[type="submit"]:hover,
button[type="submit"]:hover {
	background: var(--mz-ink);
	border-color: var(--mz-ink);
	color: var(--mz-paper);
}

.mz-text-link {
	align-items: center;
	display: inline-flex;
	gap: 0.65em;
	text-decoration: none;
}

.mz-text-link::after {
	content: "→";
	font-size: 1.15em;
	transition: transform var(--mz-transition);
}

.mz-text-link:hover::after {
	transform: translateX(0.25em);
}

/* Avoid card-like treatment; imagery remains square, calm, and responsive. */
img,
figure,
.wp-post-image {
	border-radius: 0;
}

img {
	height: auto;
	max-width: 100%;
}

.mz-image--hero,
.mz-image--landscape,
.mz-image--editorial,
.mz-image--portrait {
	display: block;
	object-fit: cover;
	width: 100%;
}

.mz-image--hero { aspect-ratio: 16 / 9; }
.mz-image--landscape { aspect-ratio: 3 / 2; }
.mz-image--editorial { aspect-ratio: 4 / 3; }
.mz-image--portrait { aspect-ratio: 4 / 5; }

hr,
.mz-rule {
	border: 0;
	border-top: 1px solid var(--mz-line-color);
	margin-block: var(--mz-space-lg);
}

@media (max-width: 767px) {
	:root {
		--mz-gutter: clamp(1.125rem, 4.8vw, 1.5rem);
	}

	.mz-section {
		padding-block: var(--mz-space-xl);
	}

	.mz-section--generous {
		padding-block: var(--mz-space-2xl);
	}

	.mz-image--hero {
		aspect-ratio: 4 / 3;
	}
}

/* Journal launch state and future dynamic entries. */
.mza-journal-archive {
	background: var(--mz-paper);
}

body.blog #content,
body.blog .site-content {
	background: var(--mz-paper);
}

body.blog #content > .ast-container {
	display: block;
	margin: 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

.mza-journal-archive__intro {
	min-height: clamp(32rem, 68vh, 48rem);
	padding-block: clamp(4.5rem, 3rem + 4vw, 8rem);
}

.mza-journal-archive__intro > .mz-eyebrow {
	margin-bottom: clamp(2rem, 1.25rem + 1.5vw, 3.5rem);
}

.mza-journal-archive__intro h1 {
	font-size: clamp(4rem, 2.4rem + 5vw, 8.25rem);
	font-weight: 400;
	letter-spacing: -0.045em;
	line-height: 0.9;
	margin: 0;
	max-width: 10ch;
}

.mza-journal-archive__intro > p:last-child {
	font-size: clamp(1rem, 0.95rem + 0.2vw, 1.15rem);
	line-height: 1.75;
	margin-top: 2.5rem;
	max-width: 38rem;
}

.mza-journal-archive__list {
	border-top: 1px solid var(--mz-line);
	padding-block: var(--mz-space-xl);
}

.mza-journal-entry {
	border-bottom: 1px solid var(--mz-line);
	padding-block: var(--mz-space-md);
}

.mza-journal-entry h2 {
	font-size: clamp(2rem, 1.5rem + 1.5vw, 3.5rem);
	font-weight: 400;
	margin: 0.4rem 0 1rem;
}

@media (max-width: 767px) {
	.mza-journal-archive__intro {
		min-height: 34rem;
		padding-block: 3.5rem 4rem;
	}

	.mza-journal-archive__intro h1 {
		font-size: clamp(2.9rem, 11.5vw, 4.25rem);
	}
}

/* Phase 4D — Elementor-editable homepage composition. */
body.home #content,
body.home .site-content {
	background: var(--mz-paper);
}

body.home #content > .ast-container {
	display: block;
	margin: 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

body.home.ast-separate-container .ast-article-single {
	background: transparent;
	margin: 0;
	padding: 0;
}

body.home .entry-header {
	display: none;
}

body.home .elementor-widget {
	margin-bottom: 0;
}

body.home .elementor-widget-heading .elementor-heading-title {
	color: var(--mz-ink);
	font-family: var(--mz-font-serif);
	font-weight: 400;
}

body.home .elementor-widget-text-editor {
	color: var(--mz-ink);
	font-family: var(--mz-font-sans);
}

body.home .mza-home-section-label .elementor-heading-title,
body.home .mza-home-eyebrow p {
	color: var(--mz-muted);
	font-family: var(--mz-font-sans);
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: var(--mz-tracking-label);
	line-height: 1.4;
	margin: 0;
	text-transform: uppercase;
}

body.home .mza-home-hero.e-con {
	display: grid;
	gap: var(--mz-space-lg);
	grid-template-columns: repeat(12, minmax(0, 1fr));
	padding-block: clamp(5rem, 3.5rem + 4vw, 8rem) var(--mz-space-2xl);
}

body.home .mza-home-hero > .mza-home-eyebrow {
	grid-column: 1 / -1;
}

body.home .mza-home-hero-title {
	align-self: end;
	grid-column: 1 / span 8;
}

body.home .mza-home-hero-title .elementor-heading-title {
	font-size: clamp(3.75rem, 2.3rem + 5.6vw, 8rem);
	letter-spacing: -0.045em;
	line-height: 0.92;
}

body.home .mza-home-hero-copy {
	align-self: end;
	grid-column: 9 / -1;
}

body.home .mza-home-hero-copy p {
	font-size: clamp(1.05rem, 0.97rem + 0.3vw, 1.25rem);
	line-height: 1.75;
	margin: 0 0 0.25rem;
	max-width: 36rem;
}

body.home .mza-home-hero-image {
	grid-column: 1 / -1;
	margin-top: var(--mz-space-lg);
}

body.home .mza-home-hero-image img {
	display: block;
	height: auto;
	width: 100%;
}

body.home .mza-home-selected.e-con,
body.home .mza-home-studio.e-con,
body.home .mza-home-practice.e-con,
body.home .mza-home-philosophy.e-con,
body.home .mza-home-closing.e-con {
	padding-block: var(--mz-space-2xl);
}

body.home .mza-home-selected > .mza-home-section-label,
body.home .mza-home-practice > .mza-home-section-label {
	margin-bottom: var(--mz-space-xl);
}

.mza-home-projects-grid {
	display: grid;
	gap: var(--mz-space-2xl) var(--mz-space-lg);
	grid-template-columns: repeat(12, minmax(0, 1fr));
}

body.ast-separate-container .mza-home-project {
	background: transparent;
	grid-column: 8 / -1;
	margin: var(--mz-space-xl) 0 0;
	padding: 0;
}

body.ast-separate-container .mza-home-project.is-featured {
	grid-column: 1 / span 7;
	margin-top: 0;
}

.mza-home-project__image {
	display: block;
	overflow: hidden;
	text-decoration: none;
}

.mza-home-project__image img {
	display: block;
	height: auto;
	transition: transform 600ms cubic-bezier(0.2, 0.65, 0.3, 1);
	width: 100%;
}

.mza-home-project__image:hover img {
	transform: scale(1.018);
}

.mza-home-project__body {
	padding-top: var(--mz-space-sm);
}

.mza-home-project__body .mz-meta {
	margin-bottom: 0.45rem;
}

.mza-home-project__body h3 {
	color: var(--mz-ink);
	font-family: var(--mz-font-serif);
	font-size: clamp(1.75rem, 1.25rem + 1.5vw, 3rem);
	font-weight: 400;
	margin: 0;
}

.mza-home-project__body h3 a {
	text-decoration: none;
}

body.home .mza-home-text-link {
	margin-top: var(--mz-space-lg);
}

body.home .mza-home-text-link .elementor-button {
	background: transparent;
	border: 0;
	border-radius: 0;
	color: var(--mz-ink);
	font-family: var(--mz-font-sans);
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: var(--mz-tracking-label);
	line-height: 1.4;
	padding: 0 0 0.25rem;
	text-transform: uppercase;
}

body.home .mza-home-text-link .elementor-button:hover {
	background: transparent;
	color: var(--mz-accent);
}

body.home .mza-home-studio.e-con,
body.home .mza-home-philosophy.e-con {
	align-items: end;
	border-top: 1px solid var(--mz-line);
	display: grid;
	gap: var(--mz-space-xl);
	grid-template-columns: minmax(0, 1.4fr) minmax(20rem, 0.6fr);
}

body.home .mza-home-studio-title .elementor-heading-title,
body.home .mza-home-philosophy-title .elementor-heading-title {
	font-size: clamp(3rem, 2rem + 3.8vw, 6.5rem);
	letter-spacing: -0.04em;
	line-height: 0.96;
	max-width: 11ch;
}

body.home .mza-home-studio-copy p,
body.home .mza-home-philosophy-copy p {
	font-size: clamp(1rem, 0.95rem + 0.2vw, 1.15rem);
	line-height: 1.8;
	margin: 0;
}

body.home .mza-home-studio > .mza-home-text-link {
	grid-column: 2;
	margin-top: calc(var(--mz-space-lg) * -0.5);
}

body.home .mza-home-practice.e-con {
	border-top: 1px solid var(--mz-line);
}

body.home .mza-practice-list ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}

body.home .mza-practice-list li {
	border-top: 1px solid var(--mz-line);
	font-family: var(--mz-font-serif);
	font-size: clamp(1.6rem, 1.2rem + 1.25vw, 2.75rem);
	line-height: 1.2;
	padding: var(--mz-space-sm) var(--mz-space-md) var(--mz-space-sm) 0;
}

body.home .mza-practice-list li:nth-child(odd) {
	margin-right: var(--mz-space-lg);
}

body.home .mza-home-closing.e-con {
	border-top: 1px solid var(--mz-line);
	text-align: center;
}

body.home .mza-home-closing-title .elementor-heading-title {
	font-size: clamp(3rem, 2rem + 4vw, 7rem);
	letter-spacing: -0.04em;
	line-height: 0.98;
}

body.home .mza-home-closing-copy p {
	font-family: var(--mz-font-serif);
	font-size: clamp(1.5rem, 1.1rem + 1vw, 2.25rem);
	margin: var(--mz-space-md) 0 0;
}

body.home .mza-home-closing > .mza-home-text-link {
	margin-top: var(--mz-space-lg);
}

@media (max-width: 767px) {
	body.home .mza-home-hero.e-con {
		grid-template-columns: 1fr;
		padding-block: var(--mz-space-xl) var(--mz-space-2xl);
	}

	body.home .mza-home-hero > .mza-home-eyebrow,
	body.home .mza-home-hero-title,
	body.home .mza-home-hero-copy,
	body.home .mza-home-hero-image {
		grid-column: 1;
	}

	body.home .mza-home-hero-title .elementor-heading-title {
		font-size: clamp(3.25rem, 15vw, 4.75rem);
		line-height: 0.94;
		overflow-wrap: normal;
		word-break: normal;
	}

	body.home .mza-home-hero-copy {
		margin-top: var(--mz-space-sm);
	}

	body.home .mza-home-hero-image {
		margin-top: var(--mz-space-md);
	}

	body.home .mza-home-selected.e-con,
	body.home .mza-home-studio.e-con,
	body.home .mza-home-practice.e-con,
	body.home .mza-home-philosophy.e-con,
	body.home .mza-home-closing.e-con {
		padding-block: var(--mz-space-xl);
	}

	.mza-home-projects-grid {
		gap: var(--mz-space-xl);
		grid-template-columns: 1fr;
	}

	body.ast-separate-container .mza-home-project,
	body.ast-separate-container .mza-home-project.is-featured {
		grid-column: 1;
		margin-top: 0;
	}

	body.home .mza-home-studio.e-con,
	body.home .mza-home-philosophy.e-con {
		align-items: start;
		gap: var(--mz-space-lg);
		grid-template-columns: 1fr;
	}

	body.home .mza-home-studio > .mza-home-text-link {
		grid-column: 1;
		margin-top: 0;
	}

	body.home .mza-home-studio-title .elementor-heading-title,
	body.home .mza-home-philosophy-title .elementor-heading-title {
		font-size: clamp(2.75rem, 12.5vw, 4.25rem);
	}

	body.home .mza-practice-list ul {
		grid-template-columns: 1fr;
	}

	body.home .mza-practice-list li:nth-child(odd) {
		margin-right: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mza-home-project__image img {
		transform: none !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/* Phase 4B — Astra frame styling. */
.site-header .ast-primary-header-bar { background: var(--mz-paper); border-bottom: 1px solid var(--mz-line); box-shadow: none; }
.site-header .ast-builder-grid-row-container { padding-inline: var(--mz-gutter); }
.site-header .site-title a { color: var(--mz-ink); display: block; font-family: var(--mz-font-sans); font-size: 0.78rem; font-weight: 700; letter-spacing: 0.12em; line-height: 1.25; max-width: 10em; text-transform: uppercase; }
.site-header .main-header-menu > .menu-item > .menu-link { color: var(--mz-ink); font-family: var(--mz-font-sans); font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.12em; padding-inline: 0.85rem; text-transform: uppercase; }
.site-header .main-header-menu > .menu-item > .menu-link::after { background: var(--mz-accent); content: ''; display: block; height: 1px; transform: scaleX(0); transform-origin: left; transition: transform var(--mz-transition); }
.site-header .main-header-menu > .menu-item > .menu-link:hover::after, .site-header .main-header-menu > .current-menu-item > .menu-link::after { transform: scaleX(1); }
.mza-site-footer { background: var(--mz-ink); color: var(--mz-off-white); margin-top: var(--mz-space-2xl); }
.mza-footer-inner { padding-block: var(--mz-space-xl) var(--mz-space-md); }
.mza-footer-cta { border-bottom: 1px solid rgba(245,243,238,.25); padding-bottom: var(--mz-space-lg); }
.mza-site-footer .mz-eyebrow { color: var(--mz-stone); }.mza-site-footer a { color: var(--mz-off-white); }.mza-footer-grid { display:grid; gap:var(--mz-space-lg); grid-template-columns:1.5fr 1fr 1fr; padding-block:var(--mz-space-xl); }.mza-footer-wordmark { font-size:clamp(1.8rem,1.1rem + 2vw,3.2rem); letter-spacing:-.04em; line-height:.95; }.mza-footer-nav { list-style:none; margin:0; padding:0; }.mza-footer-nav li { margin-block:.35rem; }.mza-footer-bottom { border-top:1px solid rgba(245,243,238,.25); color:var(--mz-muted); font-size:.6875rem; letter-spacing:.12em; padding-top:var(--mz-space-md); text-transform:uppercase; }
@media (max-width: 921px) { .site-header .main-header-menu > .menu-item > .menu-link { min-height:44px; padding: .75rem var(--mz-gutter); }.mza-footer-grid { grid-template-columns:1fr 1fr; } }
@media (max-width: 544px) { .site-header .site-title a { font-size:.68rem; }.site-header .menu-toggle { color:var(--mz-ink); font-family:var(--mz-font-sans); font-size:.6875rem; letter-spacing:.12em; min-height:44px; }.mza-footer-grid { grid-template-columns:1fr; gap:var(--mz-space-md); }.mza-footer-inner { padding-block:var(--mz-space-lg) var(--mz-space-md); } }

/* Phase 4C-2 — dynamic Project archive and taxonomy presentation. */
.mza-projects-archive {
	background: var(--mz-paper);
	overflow: clip;
}

body.post-type-archive-project #content,
body.tax-project_category #content {
	background: var(--mz-paper);
}

body.post-type-archive-project #content > .ast-container,
body.tax-project_category #content > .ast-container {
	display: block;
	margin: 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

.mza-projects-intro {
	align-items: end;
	display: grid;
	gap: var(--mz-space-lg);
	grid-template-columns: minmax(0, 1.38fr) minmax(20rem, 0.62fr);
	padding-block: clamp(5.5rem, 4rem + 4.5vw, 8.25rem) var(--mz-space-2xl);
}

.mza-projects-intro .mz-eyebrow {
	margin-bottom: var(--mz-space-md);
}

.mza-projects-intro h1 {
	font-size: clamp(3rem, 2rem + 4.5vw, 6.75rem);
	line-height: 0.98;
	margin: 0;
	max-width: 12ch;
}

.mza-projects-intro__copy {
	color: var(--mz-soft-black);
	font-size: clamp(1rem, 0.94rem + 0.25vw, 1.2rem);
	line-height: 1.7;
	margin: 0 0 0.35rem;
	max-width: 34rem;
}

.mza-project-categories {
	border-block: 1px solid var(--mz-line);
	display: flex;
	flex-wrap: wrap;
	gap: 0 var(--mz-space-md);
	padding-block: 1.15rem;
}

.mza-project-categories a {
	color: var(--mz-muted);
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: var(--mz-tracking-label);
	line-height: 1.5;
	padding-block: 0.5rem;
	position: relative;
	text-decoration: none;
	text-transform: uppercase;
}

.mza-project-categories a::after {
	background: var(--mz-accent);
	bottom: 0.28rem;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform var(--mz-transition);
	width: 100%;
}

.mza-project-categories a:hover,
.mza-project-categories a.is-current {
	color: var(--mz-ink);
}

.mza-project-categories a:hover::after,
.mza-project-categories a.is-current::after {
	transform: scaleX(1);
}

.mza-projects-list {
	padding-block: var(--mz-space-2xl) var(--mz-space-xl);
}

.mza-project-grid {
	display: grid;
	gap: var(--mz-space-2xl) clamp(2rem, 2vw + 1rem, 4.5rem);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.ast-separate-container .mza-project-card {
	background: transparent;
	border: 0;
	box-shadow: none;
	margin: 0;
	min-width: 0;
	padding: 0;
}

.mza-project-card__image {
	background: var(--mz-stone);
	display: block;
	overflow: hidden;
	text-decoration: none;
}

.mza-project-card__image img {
	aspect-ratio: 3 / 2;
	display: block;
	height: auto;
	object-fit: cover;
	transition: transform 600ms cubic-bezier(0.2, 0.65, 0.3, 1);
	width: 100%;
}

.mza-project-card__image:hover img {
	transform: scale(1.018);
}

.mza-project-card__body {
	padding-top: var(--mz-space-sm);
}

.mza-project-card__title {
	font-size: clamp(1.5rem, 1.15rem + 1vw, 2.35rem);
	letter-spacing: -0.025em;
	margin: 0 0 0.55rem;
}

.mza-project-card__title a {
	text-decoration: none;
}

.mza-project-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem 1.4rem;
}

.mza-project-card__meta span + span {
	position: relative;
}

.mza-project-card__meta span + span::before {
	background: var(--mz-line);
	content: "";
	height: 0.75rem;
	left: -0.7rem;
	position: absolute;
	top: 0.08rem;
	width: 1px;
}

.mza-projects-empty {
	color: var(--mz-muted);
	margin: 0;
}

.mza-projects-list .navigation.pagination {
	margin-top: var(--mz-space-xl);
}

@media (max-width: 1024px) {
	.mza-projects-intro {
		gap: var(--mz-space-lg);
		grid-template-columns: minmax(0, 1.25fr) minmax(17rem, 0.75fr);
		padding-top: var(--mz-space-2xl);
	}

	.mza-project-grid {
		column-gap: var(--mz-space-lg);
	}
}

@media (max-width: 767px) {
	.mza-projects-intro {
		align-items: start;
		grid-template-columns: 1fr;
		padding-block: var(--mz-space-xl);
	}

	.mza-projects-intro h1 {
		font-size: clamp(2.75rem, 12vw, 4.6rem);
	}

	.mza-projects-intro__copy {
		max-width: 38rem;
	}

	.mza-project-categories {
		gap: 0.4rem var(--mz-space-sm);
		padding-block: 0.85rem;
	}

	.mza-projects-list {
		padding-top: var(--mz-space-xl);
	}

	.mza-project-grid {
		gap: var(--mz-space-xl);
		grid-template-columns: 1fr;
	}
}

@media (max-width: 921px) {
	.site-header .menu-toggle,
	.site-header .ast-button-wrap .menu-toggle {
		color: var(--mz-ink);
	}

	.site-header .ast-button-wrap .menu-toggle .ast-mobile-svg {
		fill: var(--mz-ink);
	}
}

/* Phase 5 — Journal editorial system. */
body.single-post .site-content>.ast-container{width:100%;max-width:none;padding-inline:0}.mza-journal,.mza-journal-article{position:static;flex:1 1 auto;width:100%;min-width:0;max-width:none;margin-inline:0;transform:none;background:var(--mz-paper);color:var(--mz-ink);overflow:clip}.mza-journal a,.mza-journal-article a{color:inherit}
.mza-journal-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(17rem,.55fr);column-gap:clamp(3rem,8vw,9rem);row-gap:1rem;align-items:end;padding-block:clamp(5rem,9vw,9rem) clamp(3.5rem,7vw,7rem);border-bottom:1px solid var(--mz-line)}
.mza-journal-hero>.mz-eyebrow{grid-column:1/-1;margin:0 0 clamp(2rem,4vw,4rem)}.mza-journal-hero h1{max-width:18ch;margin:0;font-family:var(--mz-font-serif);font-size:clamp(3rem,6.2vw,6.8rem);font-weight:400;letter-spacing:-.045em;line-height:.98}.mza-journal-hero__intro{max-width:33rem;margin:0 0 .35rem;color:#56534e;font-family:var(--mz-font-serif);font-size:clamp(1.15rem,1.4vw,1.5rem);line-height:1.55}.mza-journal-hero--category{grid-template-columns:1fr;padding-bottom:clamp(2.5rem,5vw,5rem)}.mza-journal-hero--category h1{font-size:clamp(3.5rem,8vw,8rem)}
.mza-journal-categories{display:flex;gap:0;overflow-x:auto;padding-block:1rem;border-bottom:1px solid var(--mz-line);scrollbar-width:thin;white-space:nowrap}.mza-journal-categories a{padding:.5rem clamp(.8rem,1.5vw,1.35rem);border-inline-end:1px solid var(--mz-line);font-size:.72rem;font-weight:600;letter-spacing:.11em;line-height:1;text-transform:uppercase;transition:color var(--mz-transition)}.mza-journal-categories a:first-child{padding-inline-start:0}.mza-journal-categories a:hover,.mza-journal-categories a[aria-current=page]{color:var(--mz-accent)}
.mza-journal-feature{padding-block:clamp(4rem,8vw,8rem)}.mza-journal-feature__article{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(20rem,.65fr);gap:clamp(2.5rem,6vw,7rem);align-items:center}.mza-journal-feature__image,.mza-journal-card__image{display:block;overflow:hidden;background:var(--mz-stone)}.mza-journal-feature__image{aspect-ratio:16/10}.mza-journal-feature__image img,.mza-journal-card__image img,.mza-journal-related img{width:100%;height:100%;object-fit:cover;transition:transform 650ms cubic-bezier(.2,.65,.3,1)}.mza-journal-feature__image:hover img,.mza-journal-card__image:hover img,.mza-journal-related a:hover img{transform:scale(1.018)}.mza-journal-feature__content>.mz-eyebrow{margin-bottom:clamp(2rem,4vw,4rem)}
.mza-journal-category{display:inline-block;margin-bottom:1.15rem;color:var(--mz-accent)!important;font-size:.72rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase}.mza-journal-feature h2,.mza-journal-card h2{margin:0;font-family:var(--mz-font-serif);font-weight:400;letter-spacing:-.035em}.mza-journal-feature h2{font-size:clamp(2.3rem,4.2vw,4.8rem);line-height:1.03}.mza-journal-excerpt{margin-top:1.5rem;color:#5b5853;font-size:1rem;line-height:1.7}.mza-journal-excerpt p{margin:0}.mza-journal-meta{margin:1.3rem 0 0;color:var(--mz-muted);font-size:.7rem;font-weight:550;letter-spacing:.08em;text-transform:uppercase}.mza-journal-read{display:inline-flex;gap:.7rem;align-items:center;margin-top:2rem;padding-bottom:.25rem;border-bottom:1px solid currentColor;font-size:.78rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase}
.mza-journal-latest{padding-block:clamp(3.5rem,7vw,7rem) clamp(5rem,9vw,9rem);border-top:1px solid var(--mz-line)}.mza-journal-section-heading{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:clamp(2.5rem,5vw,5rem);padding-bottom:.9rem;border-bottom:1px solid var(--mz-line)}.mza-journal-section-heading p,.mza-journal-section-heading span{margin:0}.mza-journal-section-heading span{color:var(--mz-muted);font-size:.68rem;letter-spacing:.11em}.mza-journal-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1.5rem,3vw,3.5rem);row-gap:clamp(4rem,8vw,8rem)}.mza-journal-card{grid-column:span 5}.mza-journal-card:nth-child(3n+2){grid-column:7/span 6;padding-top:clamp(3rem,8vw,8rem)}.mza-journal-card:nth-child(3n+3){grid-column:2/span 7}.mza-journal-card__image{aspect-ratio:4/3;margin-bottom:1.7rem}.mza-journal-card:nth-child(3n+2) .mza-journal-card__image{aspect-ratio:3/4}.mza-journal-card h2{font-size:clamp(1.75rem,2.6vw,3rem);line-height:1.08}.mza-journal .navigation.pagination{margin-top:5rem;border-top:1px solid var(--mz-line);padding-top:1.5rem}
.mza-article-header{max-width:76rem;padding-top:clamp(5rem,9vw,9rem);padding-bottom:clamp(3rem,6vw,6rem);text-align:center}.mza-article-header h1{max-width:15ch;margin:0 auto;font-family:var(--mz-font-serif);font-size:clamp(3rem,7vw,7.4rem);font-weight:400;letter-spacing:-.05em;line-height:.98}.mza-article-deck{max-width:47rem;margin:2rem auto 0;color:#55524e;font-family:var(--mz-font-serif);font-size:clamp(1.2rem,1.8vw,1.65rem);line-height:1.52}.mza-article-header .mza-journal-meta{margin-top:2rem}.mza-article-hero{margin-bottom:clamp(4rem,8vw,8rem)}.mza-article-hero img{display:block;width:100%;max-height:min(76vh,58rem);object-fit:cover}.mza-article-hero figcaption,.mza-article-content figcaption{margin-top:.7rem;color:var(--mz-muted);font-size:.72rem;letter-spacing:.035em}
.mza-article-content{width:min(100% - (2 * var(--mz-gutter)),47rem);margin-inline:auto;font-family:var(--mz-font-serif);font-size:clamp(1.12rem,1rem + .35vw,1.34rem);line-height:1.82}.mza-article-content>p:first-child::first-letter{float:left;margin:.08em .12em 0 0;font-size:4.6em;line-height:.78}html[dir=rtl] .mza-article-content>p:first-child::first-letter{float:right;margin:.08em 0 0 .12em}.mza-article-content h2,.mza-article-content h3{font-family:var(--mz-font-serif);font-weight:400;letter-spacing:-.025em}.mza-article-content h2{margin:3.7em 0 .8em;font-size:clamp(2rem,3.4vw,3.25rem);line-height:1.08}.mza-article-content h3{margin:2.6em 0 .75em;font-size:clamp(1.5rem,2.3vw,2.15rem)}.mza-article-content p,.mza-article-content ul,.mza-article-content ol{margin-bottom:1.55em}.mza-article-content ul,.mza-article-content ol{padding-inline-start:1.4em}.mza-article-content blockquote{margin:3.5rem -5rem;padding:0 0 0 2.2rem;border-inline-start:1px solid var(--mz-accent);color:#33312e;font-size:clamp(1.6rem,3vw,2.6rem);font-style:normal;line-height:1.35}.mza-article-content figure,.mza-article-content .wp-block-image{margin-block:3.5rem}.mza-article-content .wp-block-embed,.mza-article-content .wp-block-video,.mza-article-content .wp-video,.mza-article-content iframe{max-width:100%}.mza-article-content .wp-block-embed__wrapper{position:relative;aspect-ratio:16/9;overflow:hidden}.mza-article-content .wp-block-embed__wrapper iframe{position:absolute;inset:0;width:100%;height:100%}
.mza-article-footer{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:clamp(5rem,9vw,9rem);padding-block:2rem;border-block:1px solid var(--mz-line)}.mza-article-attribution p:last-child{max-width:34rem;margin:.7rem 0 0;font-family:var(--mz-font-serif)}.mza-article-taxonomy{align-self:end;font-size:.72rem;letter-spacing:.08em;text-align:end;text-transform:uppercase}.mza-article-tags{margin-top:.7rem;color:var(--mz-muted)}.mza-article-adjacent{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding-block:clamp(3rem,6vw,6rem)}.mza-article-adjacent>div:last-child{text-align:end}.mza-article-adjacent span{display:block;margin-bottom:.7rem;color:var(--mz-muted);font-size:.67rem;letter-spacing:.12em}.mza-article-adjacent a{font-family:var(--mz-font-serif);font-size:clamp(1.2rem,2vw,1.8rem)}
.mza-journal-related{padding-block:clamp(3rem,6vw,6rem);border-top:1px solid var(--mz-line)}.mza-journal-related__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.3rem,3vw,3rem)}.mza-journal-related article a{display:block}.mza-journal-related img{display:block;aspect-ratio:4/3;margin-bottom:1.2rem}.mza-journal-related span{display:block;font-family:var(--mz-font-serif);font-size:clamp(1.2rem,1.8vw,1.65rem);line-height:1.2}.mza-article-practice{padding-block:clamp(4rem,8vw,8rem);border-top:1px solid var(--mz-line);text-align:center}.mza-article-practice h2{margin:1rem 0 0;font-family:var(--mz-font-serif);font-size:clamp(2.4rem,5vw,5rem);font-weight:400;letter-spacing:-.04em}
@media(max-width:900px){.mza-journal-hero,.mza-journal-feature__article{grid-template-columns:1fr}.mza-journal-hero h1{max-width:20ch}.mza-journal-feature__content>.mz-eyebrow{margin-bottom:1.5rem}.mza-journal-card,.mza-journal-card:nth-child(3n+2),.mza-journal-card:nth-child(3n+3){grid-column:span 6;padding-top:0}.mza-journal-card:nth-child(3n+2) .mza-journal-card__image{aspect-ratio:4/3}.mza-article-content blockquote{margin-inline:-2rem}}
@media(max-width:640px){.mza-journal-hero{padding-block:4.5rem 3.5rem}.mza-journal-hero>.mz-eyebrow{margin-bottom:1.5rem}.mza-journal-hero h1{font-size:clamp(2.75rem,13vw,4.4rem);line-height:1}.mza-journal-hero__intro{font-size:1.12rem}.mza-journal-categories{margin-inline:0;padding-inline:var(--mz-gutter)}.mza-journal-feature__article{gap:2rem}.mza-journal-feature h2{font-size:clamp(2.25rem,11vw,3.5rem)}.mza-journal-card,.mza-journal-card:nth-child(3n+2),.mza-journal-card:nth-child(3n+3){grid-column:1/-1}.mza-journal-grid{row-gap:4rem}.mza-journal-card h2{font-size:2rem}.mza-article-header{padding-top:4.5rem;text-align:start}.mza-article-header h1{margin-inline:0;font-size:clamp(2.9rem,13vw,4.5rem)}.mza-article-deck{margin-inline:0}.mza-article-content{font-size:1.08rem;line-height:1.75}.mza-article-content blockquote{margin:2.5rem 0;padding-inline-start:1.3rem;font-size:1.55rem}.mza-article-footer,.mza-article-adjacent,.mza-journal-related__grid{grid-template-columns:1fr}.mza-article-taxonomy,.mza-article-adjacent>div:last-child{text-align:start}.mza-article-adjacent>div:empty{display:none}}

/* Elementor container placement corrections for launch-page editorial grids. */
body .mza-inner-hero > .mza-page-eyebrow {
	grid-column: 1 / -1 !important;
}

body .mza-inner-hero > .mza-page-title {
	grid-column: 1 / span 8 !important;
}

body .mza-inner-hero > .mza-page-lead {
	grid-column: 9 / -1 !important;
}

body .mza-about-hero > .mza-page-title,
body .mza-journal-empty > .mza-page-title {
	grid-column: 1 / span 10 !important;
}

body .mza-about-intro > .mza-editorial-statement,
body .mza-about-architect > .mza-section-heading,
body .mza-about-philosophy > .mza-editorial-statement,
body .mza-contact-direct > .mza-section-heading,
body .mza-contact-form-section > .mza-section-heading {
	grid-column: 1 !important;
}

body .mza-about-intro > .mza-editorial-copy,
body .mza-about-architect > .mza-editorial-copy,
body .mza-about-philosophy > .mza-editorial-copy,
body .mza-contact-direct > .mza-contact-links,
body .mza-contact-form-section > .mza-section-intro,
body .mza-contact-form-section > .mza-project-enquiry-form {
	grid-column: 2 !important;
}

body .mza-about-philosophy > .mza-principles {
	grid-column: 1 / -1 !important;
}

@media (max-width: 767px) {
	body .mza-inner-hero > .mza-page-eyebrow,
	body .mza-inner-hero > .mza-page-title,
	body .mza-inner-hero > .mza-page-lead,
	body .mza-about-intro > .mza-editorial-statement,
	body .mza-about-intro > .mza-editorial-copy,
	body .mza-about-architect > .mza-section-heading,
	body .mza-about-architect > .mza-editorial-copy,
	body .mza-about-philosophy > .mza-editorial-statement,
	body .mza-about-philosophy > .mza-editorial-copy,
	body .mza-about-philosophy > .mza-principles,
	body .mza-contact-direct > .mza-section-heading,
	body .mza-contact-direct > .mza-contact-links,
	body .mza-contact-form-section > .mza-section-heading,
	body .mza-contact-form-section > .mza-section-intro,
	body .mza-contact-form-section > .mza-project-enquiry-form {
		grid-column: 1 !important;
	}
}

/* Final launch pages — shared editorial presentation. */
body.page-id-11 #content,
body.page-id-12 #content,
body.page-id-13 #content,
body.page-id-14 #content {
	background: var(--mz-paper);
}

body.page-id-11 #content > .ast-container,
body.page-id-12 #content > .ast-container,
body.page-id-13 #content > .ast-container,
body.page-id-14 #content > .ast-container {
	display: block;
	margin: 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

body.page-id-11.ast-separate-container .ast-article-single,
body.page-id-12.ast-separate-container .ast-article-single,
body.page-id-13.ast-separate-container .ast-article-single,
body.page-id-14.ast-separate-container .ast-article-single {
	background: transparent;
	margin: 0;
	padding: 0;
}

body.page-id-11 .entry-header,
body.page-id-12 .entry-header,
body.page-id-13 .entry-header,
body.page-id-14 .entry-header {
	display: none;
}

.mza-editorial-page.e-con {
	gap: 0;
}

.mza-editorial-page .elementor-widget-heading .elementor-heading-title {
	color: var(--mz-ink);
	font-family: var(--mz-font-serif);
	font-weight: 400;
}

.mza-editorial-page .elementor-widget-text-editor {
	color: var(--mz-ink);
	font-family: var(--mz-font-sans);
}

.mza-inner-hero.e-con {
	column-gap: clamp(2.5rem, 6vw, 7rem);
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	padding-block: clamp(4.5rem, 3rem + 4vw, 8rem) clamp(4.5rem, 3.5rem + 3vw, 7rem);
}

.mza-inner-hero > .mza-page-eyebrow {
	grid-column: 1 / -1;
	margin-bottom: clamp(2rem, 1.25rem + 1.5vw, 3.5rem);
}

.mza-page-eyebrow p,
.mza-section-heading .elementor-heading-title {
	color: var(--mz-muted);
	font-family: var(--mz-font-sans) !important;
	font-size: 0.6875rem !important;
	font-weight: 600 !important;
	letter-spacing: var(--mz-tracking-label);
	line-height: 1.4 !important;
	margin: 0;
	text-transform: uppercase;
}

.mza-inner-hero > .mza-page-title {
	align-self: end;
	grid-column: 1 / span 8;
}

.mza-page-title .elementor-heading-title {
	font-size: clamp(4rem, 2.4rem + 5vw, 8.25rem);
	letter-spacing: -0.045em;
	line-height: 0.9;
	overflow-wrap: normal;
	word-break: normal;
}

.mza-inner-hero > .mza-page-lead {
	align-self: end;
	grid-column: 9 / -1;
	padding-bottom: 0.45rem;
}

.mza-page-lead p,
.mza-section-intro p,
.mza-editorial-copy p {
	font-size: clamp(1rem, 0.95rem + 0.2vw, 1.15rem);
	line-height: 1.75;
}

.mza-about-hero > .mza-page-title,
.mza-journal-empty > .mza-page-title {
	grid-column: 1 / span 10;
}

.mza-journal-empty.e-con {
	min-height: clamp(32rem, 68vh, 48rem);
}

.mza-about-intro.e-con,
.mza-about-architect.e-con,
.mza-about-philosophy.e-con {
	align-items: start;
	border-top: 1px solid var(--mz-line);
	column-gap: clamp(3rem, 7vw, 8rem);
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(20rem, 0.85fr);
	padding-block: clamp(4.5rem, 3.5rem + 2.5vw, 7rem);
}

.mza-editorial-statement .elementor-heading-title {
	font-size: clamp(3.25rem, 2rem + 3.2vw, 6.25rem);
	letter-spacing: -0.04em;
	line-height: 0.95;
}

.mza-editorial-copy p + p {
	margin-top: 1.3rem;
}

.mza-about-image.e-con {
	padding-bottom: clamp(4.5rem, 3.5rem + 3vw, 7.5rem);
}

.mza-page-image,
.mza-page-image img {
	display: block;
	height: auto;
	width: 100%;
}

.mza-about-experience.e-con,
.mza-services-content.e-con,
.mza-contact-direct.e-con,
.mza-contact-form-section.e-con {
	border-top: 1px solid var(--mz-line);
	padding-block: clamp(4.5rem, 3.5rem + 2.5vw, 7rem);
}

.mza-about-experience > .mza-section-heading,
.mza-services-content > .mza-section-heading {
	margin-bottom: clamp(2rem, 1.5rem + 1.5vw, 3.5rem);
}

.mza-typographic-list ul,
.mza-principles ul {
	display: grid;
	list-style: none;
	margin: 0;
	padding: 0;
}

.mza-typographic-list ul {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mza-typographic-list li,
.mza-principles li {
	border-top: 1px solid var(--mz-line);
	font-family: var(--mz-font-serif);
	font-size: clamp(1.35rem, 1.05rem + 0.9vw, 2.2rem);
	line-height: 1.2;
	padding: 1rem 1rem 1rem 0;
}

.mza-typographic-list li:nth-child(odd) {
	margin-right: var(--mz-space-lg);
}

.mza-about-philosophy.e-con {
	grid-template-columns: minmax(0, 1.05fr) minmax(20rem, 0.95fr);
}

.mza-about-philosophy > .mza-principles {
	grid-column: 1 / -1;
	margin-top: clamp(2.5rem, 1.75rem + 1.5vw, 4rem);
}

.mza-principles ul {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mza-principles li {
	font-size: clamp(1.15rem, 1rem + 0.45vw, 1.6rem);
}

.mza-services-list article {
	align-items: start;
	border-top: 1px solid var(--mz-line);
	display: grid;
	gap: clamp(1.5rem, 3vw, 4rem);
	grid-template-columns: 2.5rem minmax(12rem, 0.85fr) minmax(20rem, 1.15fr);
	padding-block: clamp(1.5rem, 1rem + 1vw, 2.5rem);
}

.mza-services-list article > p {
	color: var(--mz-muted);
	font-size: 0.6875rem;
	letter-spacing: var(--mz-tracking-label);
	margin: 0.45rem 0 0;
}

.mza-services-list h3 {
	font-family: var(--mz-font-serif);
	font-size: clamp(2rem, 1.5rem + 1.5vw, 3.5rem);
	font-weight: 400;
	letter-spacing: -0.03em;
	line-height: 1;
	margin: 0;
}

.mza-services-list article > div {
	font-size: clamp(1rem, 0.96rem + 0.15vw, 1.1rem);
	line-height: 1.7;
}

.mza-contact-direct.e-con,
.mza-contact-form-section.e-con {
	column-gap: clamp(3rem, 7vw, 8rem);
	display: grid;
	grid-template-columns: minmax(10rem, 0.45fr) minmax(0, 1.55fr);
}

.mza-contact-direct > .mza-contact-links,
.mza-contact-form-section > .mza-section-intro,
.mza-contact-form-section > .mza-project-enquiry-form {
	grid-column: 2;
}

.mza-contact-form-section > .mza-project-enquiry-form {
	margin-top: clamp(2rem, 1.5rem + 1vw, 3rem);
}

.mza-contact-links ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}

.mza-contact-links li {
	border-top: 1px solid var(--mz-line);
	display: flex;
	flex-direction: column;
	gap: 0.7rem;
	margin-right: var(--mz-space-lg);
	padding-block: 1.25rem 1.75rem;
}

.mza-contact-links li span {
	color: var(--mz-muted);
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: var(--mz-tracking-label);
}

.mza-contact-links li a,
.mza-contact-links li strong {
	font-family: var(--mz-font-serif);
	font-size: clamp(1.3rem, 1.05rem + 0.7vw, 1.9rem);
	font-weight: 400;
	line-height: 1.2;
}

.mza-project-enquiry-form .wpforms-container {
	margin: 0;
}

.mza-project-enquiry-form .wpforms-form .wpforms-field {
	padding-block: 0 1.5rem;
}

.mza-project-enquiry-form .wpforms-form label.wpforms-field-label {
	color: var(--mz-ink);
	font-family: var(--mz-font-sans);
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: var(--mz-tracking-label);
	margin-bottom: 0.6rem;
	text-transform: uppercase;
}

.mza-project-enquiry-form .wpforms-form input[type="text"],
.mza-project-enquiry-form .wpforms-form input[type="email"],
.mza-project-enquiry-form .wpforms-form input[type="tel"],
.mza-project-enquiry-form .wpforms-form select,
.mza-project-enquiry-form .wpforms-form textarea {
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--mz-stone);
	border-radius: 0;
	box-shadow: none;
	color: var(--mz-ink);
	font-family: var(--mz-font-sans);
	font-size: 1rem;
	max-width: none;
	padding: 0.75rem 0;
	width: 100%;
}

.mza-project-enquiry-form .wpforms-form textarea {
	border: 1px solid var(--mz-stone);
	min-height: 11rem;
	padding: 0.9rem;
}

.mza-project-enquiry-form .wpforms-form input:focus,
.mza-project-enquiry-form .wpforms-form select:focus,
.mza-project-enquiry-form .wpforms-form textarea:focus {
	border-color: var(--mz-ink);
	outline: 1px solid transparent;
}

.mza-project-enquiry-form .wpforms-submit-container {
	padding-top: 0.5rem;
}

.mza-project-enquiry-form .wpforms-form button[type="submit"] {
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid var(--mz-ink) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--mz-ink) !important;
	font-family: var(--mz-font-sans);
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: var(--mz-tracking-label);
	min-height: 2.75rem;
	padding: 0 !important;
	text-transform: uppercase;
}

.mza-project-enquiry-form .wpforms-confirmation-container-full {
	background: transparent;
	border: 1px solid var(--mz-stone);
	color: var(--mz-ink);
	margin: 0;
	padding: var(--mz-space-md);
}

.mza-page-cta.e-con {
	border-top: 1px solid var(--mz-line);
	padding-block: clamp(4.5rem, 3.5rem + 2.5vw, 7rem);
}

.mza-cta-title .elementor-heading-title {
	font-size: clamp(3rem, 2rem + 3vw, 6rem);
	letter-spacing: -0.04em;
	line-height: 0.95;
}

.mza-page-cta > .mza-text-link {
	margin-top: 2rem;
}

.mza-page-cta .mza-text-link a {
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: var(--mz-tracking-label);
	text-transform: uppercase;
}

@media (max-width: 767px) {
	.mza-inner-hero.e-con {
		grid-template-columns: 1fr;
		padding-block: 3.5rem 4rem;
	}

	.mza-inner-hero > .mza-page-eyebrow,
	.mza-inner-hero > .mza-page-title,
	.mza-inner-hero > .mza-page-lead {
		grid-column: 1;
	}

	.mza-inner-hero > .mza-page-eyebrow {
		margin-bottom: 1.75rem;
	}

	.mza-page-title .elementor-heading-title {
		font-size: clamp(2.9rem, 11.5vw, 4.25rem);
		line-height: 0.92;
	}

	.mza-inner-hero > .mza-page-lead {
		margin-top: 2rem;
		padding-bottom: 0;
	}

	.mza-about-intro.e-con,
	.mza-about-architect.e-con,
	.mza-about-philosophy.e-con,
	.mza-contact-direct.e-con,
	.mza-contact-form-section.e-con {
		grid-template-columns: 1fr;
		padding-block: 3.75rem;
	}

	.mza-editorial-statement .elementor-heading-title {
		font-size: clamp(2.8rem, 12vw, 4rem);
	}

	.mza-about-intro > .mza-editorial-copy,
	.mza-about-architect > .mza-editorial-copy,
	.mza-about-philosophy > .mza-editorial-copy,
	.mza-contact-direct > .mza-contact-links,
	.mza-contact-form-section > .mza-section-intro,
	.mza-contact-form-section > .mza-project-enquiry-form {
		grid-column: 1;
		margin-top: 2rem;
	}

	.mza-about-experience.e-con,
	.mza-services-content.e-con {
		padding-block: 3.75rem;
	}

	.mza-typographic-list ul,
	.mza-principles ul,
	.mza-contact-links ul {
		grid-template-columns: 1fr;
	}

	.mza-typographic-list li:nth-child(odd),
	.mza-contact-links li {
		margin-right: 0;
	}

	.mza-services-list article {
		gap: 0.8rem;
		grid-template-columns: 2rem minmax(0, 1fr);
		padding-block: 1.75rem;
	}

	.mza-services-list article > div {
		grid-column: 2;
	}

	.mza-services-list h3 {
		font-size: clamp(2rem, 9vw, 2.8rem);
	}

	.mza-page-cta.e-con {
		padding-block: 4rem;
	}

	.mza-cta-title .elementor-heading-title {
		font-size: clamp(2.8rem, 12vw, 4rem);
	}
}

@media (prefers-reduced-motion: reduce) {
	.mza-project-card__image img {
		transform: none !important;
	}
}

/* Phase 4C-3 — dynamic single Project case study. */
body.single-project #content {
	background: var(--mz-paper);
}

body.single-project #content > .ast-container {
	display: block;
	margin: 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

.mza-project-single {
	background: var(--mz-paper);
	overflow: clip;
}

body.ast-separate-container .mza-project-case-study {
	background: transparent;
	margin: 0;
	padding: 0;
}

.mza-project-hero {
	padding-block: clamp(4rem, 3.5rem + 3vw, 6.25rem) var(--mz-space-xl);
}

.mza-project-hero__meta {
	margin-bottom: var(--mz-space-lg);
}

.mza-project-hero__title-row {
	align-items: end;
	display: grid;
	gap: var(--mz-space-md);
	grid-template-columns: minmax(0, 1.35fr) minmax(21rem, 0.65fr);
}

.mza-project-hero h1 {
	font-size: clamp(4rem, 2.5rem + 6vw, 8.75rem);
	line-height: 0.9;
	margin: 0;
	max-width: 10ch;
}

.mza-project-hero__intro {
	font-size: clamp(1.05rem, 0.96rem + 0.35vw, 1.3rem);
	line-height: 1.7;
	margin: 0 0 0.3rem;
	max-width: 37rem;
}

.mza-project-hero-image {
	margin-bottom: var(--mz-space-2xl);
}

.mza-project-hero-image__asset {
	display: block;
	height: auto;
	width: 100%;
}

.mza-project-facts {
	border-block: 1px solid var(--mz-line);
	padding-block: var(--mz-space-lg);
}

.mza-project-facts > .mz-eyebrow {
	margin-bottom: var(--mz-space-md);
}

.mza-project-facts__grid {
	display: grid;
	gap: var(--mz-space-md) var(--mz-space-lg);
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin: 0;
}

.mza-project-facts__grid div {
	min-width: 0;
}

.mza-project-facts__grid dt {
	color: var(--mz-muted);
	font-size: 0.625rem;
	font-weight: 600;
	letter-spacing: var(--mz-tracking-label);
	margin-bottom: 0.45rem;
	text-transform: uppercase;
}

.mza-project-facts__grid dd {
	font-family: var(--mz-font-serif);
	font-size: clamp(1.05rem, 0.98rem + 0.25vw, 1.25rem);
	line-height: 1.4;
	margin: 0;
}

.mza-project-narrative {
	display: grid;
	gap: var(--mz-space-2xl);
	padding-block: var(--mz-space-3xl);
}

.mza-project-text-block {
	display: grid;
	gap: var(--mz-space-lg);
	grid-template-columns: minmax(15rem, 0.7fr) minmax(0, 1.3fr);
}

.mza-project-text-block .mz-eyebrow {
	grid-column: 1 / -1;
	margin: 0;
}

.mza-project-text-block h2,
.mza-project-section-heading h2 {
	font-size: clamp(2.35rem, 1.65rem + 2.5vw, 4.5rem);
	line-height: 1.02;
	margin: 0;
}

.mza-project-prose {
	font-size: clamp(1rem, 0.94rem + 0.25vw, 1.18rem);
	line-height: 1.8;
	max-width: 46rem;
}

.mza-project-gallery,
.mza-project-highlights,
.mza-project-drawings {
	padding-block: var(--mz-space-2xl);
}

.mza-project-section-heading {
	align-items: end;
	display: grid;
	gap: var(--mz-space-md);
	grid-template-columns: minmax(10rem, 0.45fr) minmax(0, 1.55fr);
	margin-bottom: var(--mz-space-xl);
}

.mza-project-section-heading .mz-eyebrow {
	margin: 0;
}

.mza-project-section-heading h2 {
	max-width: 13ch;
}

.mza-project-gallery__grid {
	display: grid;
	gap: var(--mz-space-2xl) var(--mz-space-lg);
	grid-template-columns: repeat(12, minmax(0, 1fr));
}

.mza-project-gallery__item {
	grid-column: span 6;
	margin: 0;
}

.mza-project-gallery__item:nth-child(4n + 1) {
	grid-column: 1 / -1;
}

.mza-project-gallery__item img {
	display: block;
	height: auto;
	width: 100%;
}

.mza-project-gallery__item:last-child:nth-child(even) {
	grid-column: 7 / -1;
}

.mza-project-highlights {
	border-block: 1px solid var(--mz-line);
	display: grid;
	gap: var(--mz-space-xl);
	grid-template-columns: minmax(15rem, 0.75fr) minmax(0, 1.25fr);
}

.mza-project-highlights .mza-project-section-heading {
	display: block;
	margin: 0;
}

.mza-project-highlights .mz-eyebrow {
	margin-bottom: var(--mz-space-md);
}

.mza-project-highlights ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}

.mza-project-highlights li {
	border-top: 1px solid var(--mz-line);
	font-family: var(--mz-font-serif);
	font-size: clamp(1.15rem, 1rem + 0.45vw, 1.5rem);
	line-height: 1.35;
	padding: var(--mz-space-sm) var(--mz-space-md) var(--mz-space-sm) 0;
}

.mza-project-highlights li:nth-child(odd) {
	margin-right: var(--mz-space-md);
}

.mza-project-drawings__list {
	display: grid;
	gap: var(--mz-space-xl);
}

.mza-project-drawings figure {
	margin: 0;
}

.mza-project-drawings img {
	display: block;
	height: auto;
	margin-inline: auto;
	max-width: 90rem;
	width: 100%;
}

.mza-project-drawings figcaption {
	margin-top: var(--mz-space-sm);
}

.mza-project-recognition {
	border-top: 1px solid var(--mz-line);
	display: grid;
	gap: var(--mz-space-lg);
	grid-template-columns: 1fr 1fr;
	padding-block: var(--mz-space-xl);
}

.mza-project-end {
	border-top: 1px solid var(--mz-line);
	padding-block: var(--mz-space-xl) var(--mz-space-lg);
}

.mza-project-back {
	text-decoration: none;
}

.mza-project-back::after {
	content: none;
}

.mza-project-adjacent {
	display: grid;
	gap: var(--mz-space-lg);
	grid-template-columns: 1fr 1fr;
	margin-top: var(--mz-space-xl);
}

.mza-project-adjacent a {
	border-top: 1px solid var(--mz-line);
	padding-top: var(--mz-space-sm);
	text-decoration: none;
}

.mza-project-adjacent span,
.mza-project-adjacent strong {
	display: block;
}

.mza-project-adjacent strong {
	font-family: var(--mz-font-serif);
	font-size: clamp(1.4rem, 1.15rem + 0.7vw, 2rem);
	font-weight: 400;
	margin-top: 0.4rem;
}

@media (max-width: 1024px) {
	.mza-project-hero__title-row {
		grid-template-columns: minmax(0, 1.2fr) minmax(19rem, 0.8fr);
	}

	.mza-project-facts__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.mza-project-narrative {
		padding-block: var(--mz-space-2xl);
	}
}

@media (max-width: 767px) {
	.mza-project-hero {
		padding-block: var(--mz-space-xl) var(--mz-space-lg);
	}

	.mza-project-hero__meta {
		line-height: 1.7;
		margin-bottom: var(--mz-space-sm);
	}

	.mza-project-hero__title-row,
	.mza-project-text-block,
	.mza-project-section-heading,
	.mza-project-highlights,
	.mza-project-recognition {
		grid-template-columns: 1fr;
	}

	.mza-project-hero h1 {
		font-size: clamp(3.125rem, 14vw, 5rem);
		overflow-wrap: normal;
		word-break: normal;
	}

	.mza-project-hero__intro {
		margin-top: var(--mz-space-sm);
	}

	.mza-project-hero-image {
		margin-bottom: var(--mz-space-xl);
	}

	.mza-project-facts__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mza-project-narrative {
		gap: var(--mz-space-xl);
		padding-block: var(--mz-space-2xl);
	}

	.mza-project-text-block {
		gap: var(--mz-space-md);
	}

	.mza-project-gallery,
	.mza-project-highlights,
	.mza-project-drawings {
		padding-block: var(--mz-space-xl);
	}

	.mza-project-section-heading {
		align-items: start;
		margin-bottom: var(--mz-space-lg);
	}

	.mza-project-gallery__grid {
		gap: var(--mz-space-xl);
		grid-template-columns: 1fr;
	}

	.mza-project-gallery__item,
	.mza-project-gallery__item:nth-child(4n + 1),
	.mza-project-gallery__item:last-child:nth-child(even) {
		grid-column: 1;
	}

	.mza-project-highlights {
		gap: var(--mz-space-lg);
	}

	.mza-project-highlights ul {
		grid-template-columns: 1fr;
	}

	.mza-project-highlights li:nth-child(odd) {
		margin-right: 0;
	}

	.mza-project-end {
		padding-top: var(--mz-space-lg);
	}
}

/* Phase 4D-R — image-led homepage recomposition. */
body.home .mza-home-section.e-con {
	gap: 0;
}

body.home .mza-home-hero.e-con {
	column-gap: clamp(2rem, 5vw, 6rem);
	padding-block: clamp(3rem, 2.25rem + 1.8vw, 4.5rem) clamp(3.75rem, 3rem + 2vw, 5.5rem);
}

body.home .mza-home-hero > .mza-home-eyebrow {
	margin-bottom: clamp(1.5rem, 1rem + 1vw, 2.5rem);
}

body.home .mza-home-hero-title {
	grid-column: 1 / span 8;
}

body.home .mza-home-hero-copy {
	grid-column: 9 / -1;
	padding-bottom: 0.4rem;
}

body.home .mza-home-hero-image {
	grid-column: 1 / -1;
	margin-top: clamp(2.25rem, 1.5rem + 1.5vw, 3.75rem);
	width: 100%;
}

body.home .mza-home-hero-image img {
	aspect-ratio: 16 / 8;
	height: auto;
	object-fit: cover;
	object-position: center 48%;
}

body.home .mza-home-selected.e-con {
	border-top: 1px solid var(--mz-line);
	padding-block: clamp(4rem, 3rem + 2.25vw, 6.5rem);
}

body.home .mza-home-selected > .mza-home-section-label {
	margin-bottom: clamp(2.25rem, 1.5rem + 2vw, 4.5rem);
}

body.home .mza-home-selected > .mza-home-projects,
body.home .mza-home-selected .elementor-widget-shortcode,
body.home .mza-home-selected .elementor-widget-container,
body.home .mza-home-projects-grid {
	min-width: 0;
	width: 100%;
}

body.home .mza-home-projects-grid {
	align-items: start;
	column-gap: clamp(2rem, 4.5vw, 5.5rem);
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	row-gap: 0;
}

body.home .mza-home-project {
	background: transparent;
	grid-column: 8 / -1;
	grid-row: 1;
	margin: clamp(5rem, 8vw, 9rem) 0 0;
	min-width: 0;
	padding: 0;
	width: auto;
}

body.home .mza-home-project.is-featured {
	grid-column: 1 / span 7;
	grid-row: 1;
	margin-top: 0;
}

body.home .mza-home-project__image {
	background: var(--mz-line);
	width: 100%;
}

body.home .mza-home-project__image img {
	aspect-ratio: 4 / 3;
	height: auto;
	object-fit: cover;
	width: 100%;
}

body.home .mza-home-project.is-featured .mza-home-project__image img {
	aspect-ratio: 3 / 2;
}

body.home .mza-home-project__body {
	display: grid;
	gap: 0.5rem;
	padding-top: clamp(1rem, 0.75rem + 0.5vw, 1.4rem);
}

body.home .mza-home-project__body .mz-meta {
	font-size: 0.6875rem;
	line-height: 1.5;
	margin: 0;
}

body.home .mza-home-project__body h3 {
	font-size: clamp(2rem, 1.45rem + 1.8vw, 3.6rem);
	line-height: 1;
	max-width: 100%;
	overflow-wrap: normal;
	word-break: normal;
}

body.home .mza-home-project__body h3 a {
	color: var(--mz-ink);
}

body.home .mza-home-selected > .mza-home-text-link {
	margin-top: clamp(2.5rem, 1.5rem + 2vw, 4.5rem);
}

body.home .mza-home-studio.e-con {
	align-items: end;
	column-gap: clamp(3rem, 7vw, 8rem);
	grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.85fr);
	padding-block: clamp(4rem, 3rem + 2vw, 5.75rem);
}

body.home .mza-home-studio-title .elementor-heading-title {
	font-size: clamp(3rem, 2.25rem + 2.6vw, 5.5rem);
	max-width: 12ch;
}

body.home .mza-home-studio-copy p {
	line-height: 1.7;
}

body.home .mza-home-studio > .mza-home-text-link {
	grid-column: 2;
	margin-top: 1.5rem;
}

body.home .mza-home-practice.e-con {
	padding-block: clamp(4rem, 3rem + 2vw, 5.75rem);
}

body.home .mza-home-practice > .mza-home-section-label {
	margin-bottom: clamp(2rem, 1.25rem + 1.5vw, 3.5rem);
}

body.home .mza-practice-list li {
	font-size: clamp(1.55rem, 1.2rem + 1vw, 2.5rem);
	padding-block: clamp(0.7rem, 0.55rem + 0.3vw, 0.95rem);
}

body.home .mza-home-practice > .mza-home-text-link {
	margin-top: clamp(2rem, 1.25rem + 1.5vw, 3.5rem);
}

body.home .mza-home-philosophy.e-con {
	align-items: start;
	column-gap: clamp(2.5rem, 6vw, 7rem);
	grid-template-columns: repeat(12, minmax(0, 1fr));
	padding-block: clamp(4rem, 3rem + 2.25vw, 6.5rem);
}

body.home .mza-home-philosophy-title {
	grid-column: 1 / span 6;
	grid-row: 1;
}

body.home .mza-home-philosophy-title .elementor-heading-title {
	font-size: clamp(3.25rem, 2.25rem + 3vw, 6.25rem);
	line-height: 0.9;
	hyphens: none;
	max-width: none;
	overflow-wrap: normal;
	word-break: normal;
}

body.home .mza-home-philosophy-copy {
	grid-column: 1 / span 6;
	grid-row: 2;
	margin-top: clamp(2rem, 1.25rem + 1.5vw, 3.5rem);
}

body.home .mza-home-philosophy-copy p {
	line-height: 1.7;
}

body.home .mza-home-philosophy-image {
	align-self: center;
	grid-column: 7 / -1;
	grid-row: 1 / span 2;
	width: 100%;
}

body.home .mza-home-philosophy-image img {
	display: block;
	height: auto;
	width: 100%;
}

body.home .mza-home-closing.e-con {
	padding-block: clamp(4.5rem, 3rem + 3vw, 7.5rem);
}

body.home .mza-home-closing-title .elementor-heading-title {
	font-size: clamp(3rem, 2rem + 3vw, 6rem);
}

body.home .mza-home-closing-copy p {
	font-size: clamp(1.4rem, 1.1rem + 0.8vw, 2rem);
	margin-top: 1.25rem;
}

body.home .mza-home-closing > .mza-home-text-link {
	margin-top: 2rem;
}

@media (max-width: 900px) {
	body.home .mza-home-hero-title {
		grid-column: 1 / span 8;
	}

	body.home .mza-home-hero-copy {
		grid-column: 9 / -1;
	}

	body.home .mza-home-projects-grid {
		column-gap: 2rem;
	}

	body.home .mza-home-project,
	body.home .mza-home-project.is-featured {
		grid-column: span 6;
	}

	body.home .mza-home-project {
		margin-top: 3.5rem;
	}

	body.home .mza-home-studio.e-con {
		grid-template-columns: minmax(0, 1fr) minmax(16rem, 0.8fr);
	}
}

@media (max-width: 767px) {
	body.home .mza-home-hero.e-con {
		gap: 0;
		padding-block: 2.75rem 4rem;
	}

	body.home .mza-home-hero > .mza-home-eyebrow {
		margin-bottom: 1.5rem;
	}

	body.home .mza-home-hero-title,
	body.home .mza-home-hero-copy,
	body.home .mza-home-hero-image {
		grid-column: 1;
	}

	body.home .mza-home-hero-title .elementor-heading-title {
		font-size: clamp(3.2rem, 14vw, 4.3rem);
	}

	body.home .mza-home-hero-copy {
		margin-top: 1.5rem;
		padding-bottom: 0;
	}

	body.home .mza-home-hero-copy p {
		font-size: 1rem;
		line-height: 1.65;
	}

	body.home .mza-home-hero-image {
		margin-top: 2.25rem;
	}

	body.home .mza-home-hero-image img {
		aspect-ratio: 4 / 3;
		object-position: center;
	}

	body.home .mza-home-selected.e-con,
	body.home .mza-home-studio.e-con,
	body.home .mza-home-practice.e-con,
	body.home .mza-home-philosophy.e-con,
	body.home .mza-home-closing.e-con {
		padding-block: 4rem;
	}

	body.home .mza-home-selected.e-con,
	body.home .mza-home-studio.e-con,
	body.home .mza-home-practice.e-con,
	body.home .mza-home-philosophy.e-con {
		padding-block: 3.5rem;
	}

	body.home .mza-home-selected > .mza-home-section-label {
		margin-bottom: 2rem;
	}

	body.home .mza-home-projects-grid {
		gap: 3.25rem;
		grid-template-columns: minmax(0, 1fr);
	}

	body.home .mza-home-project,
	body.home .mza-home-project.is-featured {
		grid-column: 1;
		grid-row: auto;
		margin: 0;
		min-width: 0;
	}

	body.home .mza-home-project__image img,
	body.home .mza-home-project.is-featured .mza-home-project__image img {
		aspect-ratio: 3 / 2;
	}

	body.home .mza-home-project__body h3 {
		font-size: clamp(2rem, 9vw, 2.8rem);
		line-height: 1.02;
	}

	body.home .mza-home-selected > .mza-home-text-link {
		margin-top: 2.5rem;
	}

	body.home .mza-home-studio.e-con {
		column-gap: 0;
		grid-template-columns: 1fr;
	}

	body.home .mza-home-studio-title .elementor-heading-title {
		font-size: clamp(2.8rem, 12vw, 4rem);
	}

	body.home .mza-home-studio-copy {
		margin-top: 2rem;
	}

	body.home .mza-home-studio > .mza-home-text-link {
		grid-column: 1;
		margin-top: 1.5rem;
	}

	body.home .mza-practice-list ul {
		grid-template-columns: 1fr 1fr;
	}

	body.home .mza-practice-list li,
	body.home .mza-practice-list li:nth-child(odd) {
		font-size: clamp(1.25rem, 5.5vw, 1.65rem);
		margin: 0;
		padding-right: 0.75rem;
	}

	body.home .mza-practice-list li:nth-child(even) {
		padding-left: 0.75rem;
	}

	body.home .mza-home-philosophy.e-con {
		grid-template-columns: 1fr;
	}

	body.home .mza-home-philosophy-title,
	body.home .mza-home-philosophy-copy,
	body.home .mza-home-philosophy-image {
		grid-column: 1;
		grid-row: auto;
	}

	body.home .mza-home-philosophy-title .elementor-heading-title {
		font-size: clamp(3rem, 13vw, 4.25rem);
	}

	body.home .mza-home-philosophy-copy {
		margin-top: 2rem;
	}

	body.home .mza-home-philosophy-image {
		margin-top: 2.5rem;
	}

	body.home .mza-home-closing.e-con {
		text-align: left;
	}

	body.home .mza-home-closing-title .elementor-heading-title {
		font-size: clamp(2.8rem, 12vw, 4rem);
	}
}

@media (max-width: 420px) {
	body.home .mza-practice-list ul {
		grid-template-columns: 1fr;
	}

	body.home .mza-practice-list li,
	body.home .mza-practice-list li:nth-child(even) {
		padding-left: 0;
	}
}

/* Phase 4D-R3 — site-wide floating contact actions. */
.mza-floating-contact {
	align-items: center;
	bottom: max(1.5rem, env(safe-area-inset-bottom));
	display: flex;
	gap: 0.5rem;
	position: fixed;
	right: max(1.5rem, env(safe-area-inset-right));
	z-index: 80;
}

.mza-floating-contact__action {
	align-items: center;
	background: var(--mz-paper);
	border: 1px solid var(--mz-stone);
	color: var(--mz-ink);
	display: inline-flex;
	font-family: var(--mz-font-sans);
	font-size: 0.6875rem;
	font-weight: 600;
	gap: 0.55rem;
	justify-content: center;
	letter-spacing: 0.09em;
	min-height: 2.75rem;
	padding: 0.65rem 0.85rem;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color var(--mz-transition), border-color var(--mz-transition), color var(--mz-transition);
}

.mza-floating-contact__action svg {
	fill: none;
	flex: 0 0 1.05rem;
	height: 1.05rem;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.45;
	width: 1.05rem;
}

.mza-floating-contact__action:hover {
	background: var(--mz-ink);
	border-color: var(--mz-ink);
	color: var(--mz-paper);
}

.mza-floating-contact__action:focus-visible {
	outline: 2px solid var(--mz-ink);
	outline-offset: 3px;
}

@media (max-width: 921px) {
	.mza-floating-contact {
		bottom: max(1rem, env(safe-area-inset-bottom));
		gap: 0.4rem;
		right: max(1rem, env(safe-area-inset-right));
	}

	.mza-floating-contact__action {
		height: 48px;
		min-height: 48px;
		min-width: 48px;
		padding: 0;
		width: 48px;
	}

	.mza-floating-contact__action span {
		display: none;
	}

	.mza-floating-contact__action svg {
		flex-basis: 1.15rem;
		height: 1.15rem;
		width: 1.15rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mza-floating-contact__action {
		transition: none;
	}
}

/* GTranslate Free — restrained three-language selector and RTL support. */
.mza-language-switcher {
	align-items: center;
	background: var(--mz-paper, #faf9f6);
	border: 1px solid var(--mz-stone, #d8d2c8);
	bottom: max(1.5rem, env(safe-area-inset-bottom));
	color: var(--mz-ink, #171717);
	direction: ltr;
	display: flex;
	font-family: var(--mz-font-sans, system-ui, sans-serif);
	font-size: 0.6875rem;
	font-weight: 600;
	gap: 0.48rem;
	left: max(1.5rem, env(safe-area-inset-left));
	letter-spacing: 0.06em;
	min-height: 2.75rem;
	padding: 0.65rem 0.8rem;
	position: fixed;
	z-index: 82;
}

.mza-language-switcher a {
	color: inherit;
	line-height: 1.2;
	text-decoration: none;
	transition: color var(--mz-transition, 180ms ease), opacity var(--mz-transition, 180ms ease);
}

.mza-language-switcher a[data-gt-lang="ur"] {
	font-family: "Noto Nastaliq Urdu", "Noto Sans Arabic", "Segoe UI", Tahoma, sans-serif;
	font-size: 0.8rem;
	letter-spacing: 0;
}

.mza-language-switcher a[data-gt-lang="ar"] {
	font-family: "Noto Sans Arabic", "Segoe UI", Tahoma, Arial, sans-serif;
	font-size: 0.76rem;
	letter-spacing: 0;
}

.mza-language-switcher a:hover,
.mza-language-switcher a.gt-current-lang {
	color: var(--mz-accent, #8b7355);
}

.mza-language-switcher a:focus-visible {
	outline: 2px solid var(--mz-ink, #171717);
	outline-offset: 3px;
}

html[dir="rtl"] body {
	direction: rtl;
}

html[dir="rtl"] .mza-language-switcher,
html[dir="rtl"] .mza-floating-contact,
html[dir="rtl"] .mza-assistant {
	direction: ltr;
}

@media (max-width: 921px) {
	.mza-language-switcher {
		bottom: max(1rem, env(safe-area-inset-bottom));
		left: max(1rem, env(safe-area-inset-left));
		min-height: 3rem;
	}
}

/* Phase 4D-R4 — combined official header identity. */
.site-header .mza-header-brand {
	align-items: center;
	display: inline-flex !important;
	gap: 0.7rem;
	text-decoration: none;
	width: max-content;
}

.site-header .mza-header-brand__logo {
	display: block;
	flex: 0 0 auto;
	height: 40px;
	object-fit: contain;
	width: auto;
}

.site-header .mza-header-brand__text {
	color: var(--mz-ink);
	display: flex;
	flex-direction: column;
	font-family: var(--mz-font-sans);
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	line-height: 1.05;
	white-space: nowrap;
}

.site-header .mza-header-brand__text span + span {
	margin-top: 0.18rem;
}

@media (max-width: 921px) {
	.site-header .mza-header-brand {
		gap: 0.55rem;
	}

	.site-header .mza-header-brand__logo {
		height: 34px;
	}

	.site-header .mza-header-brand__text {
		font-size: 0.68rem;
		letter-spacing: 0.1em;
	}
}

/* Phase 5A reference rhythm lock — must follow legacy Journal declarations. */
.mza-journal--archive{margin-top:clamp(2.5rem,4vw,4.375rem)!important}
.mza-journal--archive .mza-journal-hero{padding-block:2.5rem 2rem;row-gap:1.15rem}
.mza-journal--archive .mza-journal-hero h1{font-size:clamp(5rem,8vw,7rem)}
.mza-journal--archive .mza-journal-latest{padding-block:1.25rem clamp(4rem,8vw,8rem);border-top:0}
@media(max-width:1199px){.mza-journal--archive{margin-top:clamp(2.5rem,4vw,4.375rem)}.mza-journal--archive .mza-journal-hero{padding-block:2.5rem 2rem}}
@media(max-width:767px){.mza-journal--archive{margin-top:2.5rem}.mza-journal--archive .mza-journal-hero{padding-block:2.5rem 2rem}.mza-journal--archive .mza-journal-hero h1{font-size:clamp(4rem,21vw,6.25rem)}.mza-journal--archive .mza-journal-latest{padding-top:1rem}}

/* Phase 5A cascade lock: equal structural grid overrides earlier Journal rules. */
.mza-journal--archive{margin-top:clamp(2.5rem,4vw,4.375rem)!important}
.mza-journal--archive .mza-journal-hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto auto;column-gap:clamp(1rem,2vw,2rem);row-gap:1.15rem;align-items:end;padding-block:2.5rem 2rem;border-bottom:1px solid var(--mz-line)}
.mza-journal--archive .mza-journal-hero h1{grid-column:1/span 7;grid-row:1;margin:0;font-size:clamp(5rem,8vw,7rem);font-weight:400;line-height:.78;letter-spacing:-.055em}.mza-journal--archive .mza-journal-hero__lead{grid-column:1/span 6;grid-row:2;display:flex;max-width:34rem;gap:1.75rem;align-items:center;margin:0;color:var(--mz-ink-soft);font-family:var(--mz-font-sans);font-size:.78rem;font-weight:500;line-height:1.8;letter-spacing:.18em;text-transform:uppercase}.mza-journal--archive .mza-journal-hero__intro{grid-column:8/span 4;grid-row:1/span 2;align-self:end;max-width:32rem;margin:0 0 .4rem;color:var(--mz-ink-soft);font-family:var(--mz-font-serif);font-size:clamp(1rem,1.2vw,1.2rem);line-height:1.55}
.mza-journal-categories{display:flex;gap:0;align-items:center;padding-block:1.15rem;border-bottom:1px solid var(--mz-line);overflow-x:auto;scrollbar-width:thin}.mza-journal-categories a{position:relative;flex:0 0 auto;padding:.25rem clamp(.65rem,1.25vw,1.2rem);font-size:.69rem;letter-spacing:.1em;text-transform:uppercase}.mza-journal-categories a:first-child{padding-inline-start:0}.mza-journal-categories a+a{border-inline-start:1px solid var(--mz-line)}.mza-journal-categories a[aria-current="page"]::after{position:absolute;inset-inline:.65rem;bottom:-.95rem;height:2px;background:var(--mz-accent);content:""}.mza-journal-categories a:first-child[aria-current="page"]::after{inset-inline-start:0}
.mza-journal-latest{padding-block:1.25rem clamp(4rem,8vw,8rem);border-top:0}.mza-journal-section-heading{margin-bottom:1.4rem}
.mza-journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;gap:1px;align-items:stretch;padding:1px;background:var(--mz-line)}
.mza-journal-card,.mza-journal-card:nth-child(n),.mza-journal-card--lead{grid-column:auto;display:flex;min-width:0;height:100%;margin:0;padding:0;flex-direction:column;background:var(--mz-paper);border:0}.mza-journal-card__media{position:relative;flex:0 0 auto;aspect-ratio:16/10;overflow:hidden}.mza-journal-card__image{display:block;width:100%;height:100%;margin:0;aspect-ratio:auto}.mza-journal-card__image img,.mza-journal-card:nth-child(n) .mza-journal-card__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.mza-journal-card__image:hover img{transform:scale(1.012)}
.mza-journal-card__category{position:absolute;inset-block-start:1rem;inset-inline-start:1rem;z-index:1}.mza-journal-card__category .mza-journal-category{display:inline-block;padding:.42rem .65rem;background:rgba(244,240,232,.94);color:var(--mz-ink);font-size:.62rem;letter-spacing:.11em;line-height:1;text-transform:uppercase}.mza-journal-card__content{display:flex;flex:1 1 auto;flex-direction:column;align-items:stretch;padding:clamp(1.25rem,2.2vw,2rem)}.mza-journal-card__meta{display:flex;gap:.5rem;margin:0 0 1rem;color:var(--mz-muted);font-size:.64rem;letter-spacing:.09em;line-height:1.4;text-transform:uppercase}.mza-journal-card h2{min-height:3.15em;margin:0 0 1rem;font-size:clamp(1.55rem,2vw,2.15rem);line-height:1.05}.mza-journal-card .mza-journal-excerpt{flex:1 1 auto;margin-bottom:1.5rem}.mza-journal-card .mza-journal-excerpt p{margin:0}.mza-journal-card .mza-journal-read{align-self:flex-start;margin-top:auto;padding-top:.85rem;border-top:1px solid var(--mz-line);font-size:.67rem;letter-spacing:.11em;text-transform:uppercase}@media(max-width:1199px){.mza-journal--archive .mza-journal-hero{grid-template-columns:repeat(8,minmax(0,1fr))}.mza-journal--archive .mza-journal-hero h1{grid-column:1/-1}.mza-journal--archive .mza-journal-hero__lead{grid-column:1/span 4}.mza-journal--archive .mza-journal-hero__intro{grid-column:5/-1;grid-row:2}.mza-journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:921px){.mza-journal--archive{margin-top:0!important}}
@media(max-width:767px){.mza-journal--archive{margin-top:0!important}.mza-journal--archive .mza-journal-hero{display:block;padding-block:2.5rem 2rem}.mza-journal--archive .mza-journal-hero h1{margin-bottom:1.75rem;font-size:clamp(4rem,21vw,6.25rem)}.mza-journal--archive .mza-journal-hero__lead{display:flex;margin-bottom:1.4rem}.mza-journal-categories{padding-block:.95rem}.mza-journal-grid{grid-template-columns:minmax(0,1fr)}.mza-journal-card h2{min-height:0}}
@media(prefers-reduced-motion:reduce){.mza-journal-card__image img{transition:none}}

/* Final Journal archive geometry lock — intentionally last in the cascade. */
.mza-journal--archive{margin-top:clamp(2.5rem,4vw,4.375rem)!important;position:static;transform:none}
.mza-journal--archive .mza-journal-section-heading{display:none;margin:0;padding:0;border:0}
.mza-journal--archive .mza-journal-latest{padding-top:1.5rem}
.mza-journal--archive .mza-journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px;row-gap:24px;align-items:stretch;padding:0;background:transparent}
.mza-journal--archive .mza-journal-card,.mza-journal--archive .mza-journal-card:nth-child(n),.mza-journal--archive .mza-journal-card--lead{box-sizing:border-box;height:100%;border:1px solid var(--mz-line)}
.mza-journal--archive .mza-journal-card__media{aspect-ratio:16/10;background:transparent}
.mza-journal--archive .mza-journal-card__image,.mza-journal--archive .mza-journal-card__image img,.mza-journal--archive .mza-journal-card:nth-child(n) .mza-journal-card__image img{width:100%;height:100%;max-width:none;margin:0;padding:0;background:transparent}
.mza-journal--archive .mza-journal-card__image img,.mza-journal--archive .mza-journal-card:nth-child(n) .mza-journal-card__image img{display:block;object-fit:cover;object-position:center}
@media(max-width:1199px){.mza-journal--archive .mza-journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:921px){.mza-journal--archive{margin-top:0!important}}
@media(max-width:767px){.mza-journal--archive .mza-journal-grid{grid-template-columns:minmax(0,1fr);row-gap:24px}}

/* Permanent Journal featured-image normalization — archive and category cards only. */
:is(.mza-journal--archive, .mza-journal--category) .mza-journal-card__media {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 10;
	overflow: hidden;
}

:is(.mza-journal--archive, .mza-journal--category) .mza-journal-card__media > .mza-journal-card__image,
:is(.mza-journal--archive, .mza-journal--category) .mza-journal-card__media > .mza-journal-card__image > picture {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;
	aspect-ratio: auto !important;
	background: transparent !important;
}

:is(.mza-journal--archive, .mza-journal--category) .mza-journal-card__media .mza-journal-card__image img,
:is(.mza-journal--archive, .mza-journal--category) .mza-journal-card__media img.wp-post-image {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	object-fit: cover !important;
	object-position: center !important;
	background: transparent !important;
}
