/* MediaMatic generated Etch stylesheet bundle. Source: Etch core defaults + etch_global_stylesheets. */

/* === etch-defaults-css-styles === */
@layer etch-defaults {
	body {
		line-height: 1.5;
		-webkit-font-smoothing: antialiased;
		font-family: system-ui;
		display: flex;
		flex-direction: column;
	}
}

/* === etch-reset-css-styles === */
@layer etch-reset {
	/* Box sizing rules */
	*,
	*::before,
	*::after {
		box-sizing: border-box;
	}

	/* Remove default margins */
	* {
		margin: 0;
	}

	/* Prevent font size inflation */
	html {
		-moz-text-size-adjust: none;
		-webkit-text-size-adjust: none;
		text-size-adjust: none;
		scrollbar-gutter: stable;
	}

	/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
	ul[role='list'],
	ol[role='list'] {
		list-style: none;
	}

	ul[class]:not(
			[data-etch-has-custom-classes='false'], /* data-etch-has-custom-classes is builder only (not output on frontend) */
			.wp-block-list,
			.list,
			[class*='marker']
		),
	ol[class]:not(
			[data-etch-has-custom-classes='false'], /* data-etch-has-custom-classes is builder only (not output on frontend) */
			.wp-block-list,
			.list,
			[class*='marker']
		) {
		padding: 0;
		list-style: none;
	}

	/* Set body min height */
	body {
		min-block-size: 100svh;
		display: flex;
		flex-direction: column;

		main {
			flex-grow: 1;
		}
	}

	/* A elements that don't have a class get default styles */
	a:not([class]) {
		text-decoration-skip-ink: auto;
	}

	/* Make media easier to work with */
	img,
	picture,
	video,
	canvas,
	svg:not(.block-editor-list-view-tree svg),
	a:not(
		p > a,
		span > a,
		h1 > a,
		h2 > a,
		h3 > a,
		h4 > a,
		h5 > a,
		h6 > a,
		li > a,
		em > a,
		q > a,
		label > a,
		strong > a,
		figcaption > a,
		.editor-styles-wrapper a
	) {
		max-inline-size: 100%;
		height: auto;
		display: block;
	}

	/* Inherit fonts for inputs and buttons */
	input,
	button,
	textarea,
	select {
		font: inherit;
		font-size: inherit;
	}

	button {
		cursor: pointer;
		background-color: transparent;
		border: none;
		color: currentColor;
	}

	/* Make sure textareas without a rows attribute are not tiny */
	textarea:not([rows]) {
		min-height: 10em;
	}

	/* Avoid text overflows */
	p,
	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		overflow-wrap: break-word;
	}

	figure > img {
		inline-size: 100%;
	}

	img {
		block-size: auto;
	}

	/* Add back select GB styles that are removed by global settings toggle */
	.has-text-align-center {
		text-align: center;
	}

	.has-text-align-left {
		text-align: left;
	}

	.has-text-align-right {
		text-align: right;
	}

	.has-fit-text {
		white-space: nowrap !important;
	}

	#end-resizable-editor-section {
		display: none;
	}

	.aligncenter {
		clear: both;
	}

	.items-justified-left {
		justify-content: flex-start;
	}

	.items-justified-center {
		justify-content: center;
	}

	.items-justified-right {
		justify-content: flex-end;
	}

	.items-justified-space-between {
		justify-content: space-between;
	}

	.screen-reader-text {
		border: 0;
		clip-path: inset(50%);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
		word-wrap: normal !important;
	}

	.screen-reader-text:focus {
		background-color: #ddd;
		clip-path: none;
		color: #444;
		display: block;
		font-size: 1em;
		height: auto;
		left: 5px;
		line-height: normal;
		padding: 15px 23px 14px;
		text-decoration: none;
		top: 5px;
		width: auto;
		z-index: 100000;
	}
}

/* === wp-img-auto-sizes-contain-inline-css === */
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
/*# sourceURL=wp-img-auto-sizes-contain-inline-css */

/* === wp-block-post-content-inline-css === */
.wp-block-post-content{display:flow-root}
/*# sourceURL=https://mediamatic.mt/wp-includes/blocks/post-content/style.min.css */

/* === Mediamatic Estimate Page (5955509) === */
/* ============================================================
   MEDIAMATIC ESTIMATE PAGE
   Guided estimate request page and multistep form.
============================================================ */

.mm-estimate-hero-card {
  display: grid;
  gap: 0.9rem;
  padding: clamp(1.4rem, 3vw, 2rem);
  border: 1px solid rgba(227, 230, 241, 0.22);
  border-radius: var(--mm-radius-lg);
  background: rgba(38, 47, 64, 0.54);
  box-shadow: inset 0 0 0 1px rgba(123, 134, 193, 0.12);
}

.mm-estimate-hero-card__row {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  gap: 0.9rem;
  align-items: center;
  min-height: 54px;
  padding: 0.85rem 1rem;
  border: 1px solid rgba(227, 230, 241, 0.16);
  border-radius: var(--mm-radius-sm);
  background: rgba(245, 245, 245, 0.055);
}

.mm-estimate-hero-card__number {
  display: grid;
  place-items: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  color: #fffdfa;
  background: var(--mm-coral);
  font-family: var(--mm-font-display);
  font-weight: 800;
  line-height: 1;
}

.mm-estimate-hero-card__row strong {
  display: block;
  color: var(--mm-near-white);
  font-size: 0.95rem;
  line-height: 1.2;
}

.mm-estimate-hero-card__row span:last-child {
  color: var(--mm-text-on-dark-muted);
  font-size: 0.78rem;
  line-height: 1.3;
}

.mm-estimate-note {
  padding: clamp(1.25rem, 3vw, 1.8rem);
  border: 1px solid rgba(123, 134, 193, 0.24);
  border-radius: var(--mm-radius-lg);
  background: #fff8ec;
  color: var(--mm-midnight);
}

.mm-estimate-note strong {
  color: var(--mm-coral);
}

.mm-estimate-form-wrap {
  display: grid;
  grid-template-columns: minmax(260px, 0.58fr) minmax(0, 1.42fr);
  gap: clamp(2rem, 5vw, 4rem);
  align-items: start;
}

.mm-estimate-aside {
  position: sticky;
  top: 6rem;
}

.mm-estimate-aside__panel {
  padding: clamp(1.35rem, 3vw, 1.9rem);
  border: 1px solid rgba(123, 134, 193, 0.24);
  border-radius: var(--mm-radius-lg);
  background: var(--mm-white);
  box-shadow: 0 14px 34px rgba(38, 47, 64, 0.07);
}

.mm-estimate-aside__panel h3 {
  margin-bottom: 0.85rem;
  font-size: clamp(1.2rem, 2vw, 1.45rem);
}

.mm-estimate-aside__panel p {
  color: var(--mm-text-muted);
  font-size: 0.95rem;
  line-height: 1.7;
}

.mm-estimate-checklist {
  display: grid;
  gap: 0.7rem;
  margin: 1.25rem 0 0;
  padding: 0;
  list-style: none;
}

.mm-estimate-checklist li {
  display: grid;
  grid-template-columns: 1.25rem minmax(0, 1fr);
  gap: 0.6rem;
  color: var(--mm-midnight);
  font-size: 0.9rem;
  line-height: 1.45;
}

.mm-estimate-checklist li::before {
  content: "";
  width: 0.72rem;
  height: 0.72rem;
  margin-top: 0.34rem;
  border-radius: 50%;
  background: var(--mm-coral);
  box-shadow: 0 0 0 4px rgba(235, 100, 98, 0.12);
}

.mm-estimate-form,
.mm-estimate-notice {
  border-radius: var(--mm-radius-lg);
}

.mm-estimate-form {
  padding: clamp(1.2rem, 3vw, 2rem);
  border: 1px solid rgba(123, 134, 193, 0.26);
  background: var(--mm-white);
  box-shadow: 0 18px 44px rgba(38, 47, 64, 0.08);
}

.mm-estimate-notice {
  margin: 0 0 1rem;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(123, 134, 193, 0.24);
  background: var(--mm-white);
  color: var(--mm-midnight);
  font-weight: 700;
}

.mm-estimate-notice--success {
  border-color: rgba(72, 158, 116, 0.35);
  background: #edf8f1;
}

.mm-estimate-notice--error {
  border-color: rgba(235, 100, 98, 0.4);
  background: #fff0ef;
}

.mm-estimate-honeypot {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.mm-estimate-progress {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.9rem;
  align-items: center;
  margin-bottom: clamp(1.3rem, 3vw, 2rem);
}

.mm-estimate-progress__bar {
  display: block;
  height: 0.55rem;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(123, 134, 193, 0.18);
}

.mm-estimate-progress__bar span {
  display: block;
  width: 20%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--mm-coral), #f4c56b);
  transition: width 0.25s ease;
}

.mm-estimate-progress__text {
  color: var(--mm-coral);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.mm-estimate-step {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.mm-estimate-step legend {
  margin-bottom: 0.35rem;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: clamp(1.45rem, 2.6vw, 2rem);
  font-weight: 800;
  line-height: 1.1;
}

.mm-estimate-step__intro {
  max-width: 760px;
  margin: 0 0 1.25rem;
  color: var(--mm-text-muted);
  font-size: 1rem;
  line-height: 1.65;
}

.mm-estimate-grid {
  display: grid;
  gap: 1rem;
}

.mm-estimate-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mm-estimate-grid__full {
  grid-column: 1 / -1;
}

.mm-estimate-form label,
.mm-estimate-field {
  display: grid;
  gap: 0.45rem;
  color: var(--mm-midnight);
  font-size: 0.84rem;
  font-weight: 800;
  line-height: 1.35;
}

.mm-estimate-label {
  color: var(--mm-midnight);
  font-size: 0.84rem;
  font-weight: 800;
}

.mm-estimate-form input[type="text"],
.mm-estimate-form input[type="email"],
.mm-estimate-form input[type="tel"],
.mm-estimate-form input[type="url"],
.mm-estimate-form input[type="date"],
.mm-estimate-form textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(123, 134, 193, 0.3);
  border-radius: var(--mm-radius-sm);
  background: #fffdfa;
  color: var(--mm-midnight);
  padding: 0.78rem 0.86rem;
  font: inherit;
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.35;
}

.mm-estimate-form textarea {
  resize: vertical;
}

.mm-estimate-form input:focus-visible,
.mm-estimate-form textarea:focus-visible {
  outline: 3px solid rgba(235, 100, 98, 0.18);
  outline-offset: 2px;
  border-color: var(--mm-coral);
}

.mm-estimate-options {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}

.mm-estimate-option {
  display: inline-flex !important;
  width: auto;
  min-width: 0;
  cursor: pointer;
}

.mm-estimate-option input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.mm-estimate-option span {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 0.62rem 0.86rem;
  border: 1px solid rgba(123, 134, 193, 0.28);
  border-radius: 999px;
  background: #fffdfa;
  color: var(--mm-midnight);
  font-size: 0.84rem;
  font-weight: 800;
  line-height: 1.1;
}

.mm-estimate-option input:checked + span {
  border-color: var(--mm-coral);
  background: rgba(235, 100, 98, 0.12);
  color: var(--mm-coral);
}

.mm-estimate-disclaimer {
  margin: 1rem 0;
  padding: 1rem;
  border-left: 3px solid var(--mm-coral);
  background: #fff8ec;
  color: var(--mm-text-muted);
  font-size: 0.9rem;
  line-height: 1.65;
}

.mm-estimate-consent {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 0.65rem !important;
  align-items: start;
  margin-top: 1rem;
  color: var(--mm-text-muted) !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
}

.mm-estimate-consent input {
  margin-top: 0.2rem;
  accent-color: var(--mm-coral);
}

.mm-estimate-actions {
  display: flex;
  justify-content: space-between;
  gap: 0.8rem;
  margin-top: clamp(1.35rem, 3vw, 2rem);
  padding-top: 1.25rem;
  border-top: 1px solid rgba(123, 134, 193, 0.2);
}

.mm-estimate-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0.78rem 1.2rem;
  border-radius: var(--mm-radius-sm);
  font-size: 0.9rem;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
}

.mm-estimate-btn--primary {
  border: 1px solid var(--mm-coral);
  background: var(--mm-coral);
  color: var(--mm-white);
}

.mm-estimate-btn--primary:hover {
  border-color: var(--mm-coral-dark);
  background: var(--mm-coral-dark);
  opacity: 1;
}

.mm-estimate-btn--ghost {
  border: 1px solid rgba(123, 134, 193, 0.36);
  background: transparent;
  color: var(--mm-midnight);
}

.mm-estimate-btn[hidden] {
  display: none;
}

@media (max-width: 999px) {
  .mm-estimate-form-wrap {
    grid-template-columns: 1fr;
  }

  .mm-estimate-aside {
    position: static;
  }
}

@media (max-width: 699px) {
  .mm-estimate-grid--2 {
    grid-template-columns: 1fr;
  }

  .mm-estimate-grid__full {
    grid-column: auto;
  }

  .mm-estimate-progress {
    grid-template-columns: 1fr;
  }

  .mm-estimate-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .mm-estimate-btn {
    width: 100%;
  }
}

/* === EU AI Act Compliance Page (6666035) === */
.mm-ai-act-hero{position:relative;overflow:hidden}.mm-ai-act-hero .service-page-hero__subtitle{max-width:46rem}.mm-ai-act-hero__notice{display:inline-flex;align-items:center;gap:.55rem;margin:0 0 1rem;padding:.55rem .75rem;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);font-size:.75rem;font-weight:700;text-transform:uppercase}.mm-ai-act-hero__notice::before{content:"";width:.55rem;height:.55rem;background:#f26363}.mm-ai-act-signal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#d7dde3;border:1px solid #d7dde3;margin-top:2rem}.mm-ai-act-signal article{background:#fff;padding:1.25rem}.mm-ai-act-signal strong{display:block;color:#18283d;font-size:1.65rem;line-height:1.05;margin-bottom:.35rem}.mm-ai-act-signal span{font-size:.82rem;color:#526173}.mm-ai-act-problem{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,5rem);align-items:start}.mm-ai-act-problem__copy{position:sticky;top:7rem}.mm-ai-act-problem__list{display:grid;gap:1px;background:#cbd5df;border:1px solid #cbd5df}.mm-ai-act-problem__item{background:#fff;padding:clamp(1.35rem,3vw,2rem)}.mm-ai-act-problem__item span,.mm-ai-act-card span,.mm-ai-act-role span{display:block;margin-bottom:.55rem;color:#d94f54;font-size:.75rem;font-weight:750;text-transform:uppercase}.mm-ai-act-problem__item h3,.mm-ai-act-card h3,.mm-ai-act-role h3{margin:0 0 .65rem}.mm-ai-act-problem__item p,.mm-ai-act-card p,.mm-ai-act-role p{margin:0;color:#526173}.mm-ai-act-definition{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.7fr);gap:clamp(2rem,6vw,5rem);align-items:center}.mm-ai-act-definition__panel{padding:clamp(1.5rem,4vw,2.5rem);background:#18283d;color:#fff;border-left:4px solid #f26363}.mm-ai-act-definition__panel strong{display:block;font-size:1.25rem;margin-bottom:.65rem}.mm-ai-act-definition__panel p{margin:0;color:#dce5ee}.mm-ai-act-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.mm-ai-act-card{padding:clamp(1.35rem,3vw,2rem);background:#fff;border:1px solid #d7dde3}.mm-ai-act-card--dark{background:#18283d;border-color:#32445a}.mm-ai-act-card--dark h3{color:#fff}.mm-ai-act-card--dark p{color:#dce5ee}.mm-ai-act-guide{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:center}.mm-ai-act-authority{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#32445a;border:1px solid #32445a}.mm-ai-act-authority div{background:#18283d;padding:1.5rem;color:#fff}.mm-ai-act-authority strong{display:block;color:#f26363;font-size:1.4rem}.mm-ai-act-authority span{font-size:.8rem;color:#dce5ee}.mm-ai-act-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#405165;border:1px solid #405165;margin-top:2rem}.mm-ai-act-step{background:#18283d;padding:1.5rem;color:#fff}.mm-ai-act-step__number{display:block;color:#f26363;font-size:1.65rem;font-weight:750;margin-bottom:1.5rem}.mm-ai-act-step h3{color:#fff;font-size:1.05rem}.mm-ai-act-step p{color:#dce5ee;font-size:.9rem}.mm-ai-act-step small{display:block;color:#9fb0c3;margin-top:1rem}.mm-ai-act-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.mm-ai-act-role{padding:1.5rem;border:1px solid #cbd5df;background:#fff}.mm-ai-act-stakes{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,5rem);align-items:start}.mm-ai-act-penalties{display:grid;gap:1rem}.mm-ai-act-penalty{padding:1.5rem;background:#fff;border-left:4px solid #f26363}.mm-ai-act-penalty strong{display:block;color:#18283d;font-size:clamp(1.4rem,3vw,2.15rem);line-height:1.05}.mm-ai-act-penalty p{margin:.5rem 0 0;color:#526173}.mm-ai-act-caveat{font-size:.82rem;color:#677689;margin-top:1rem}.mm-ai-act-success{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem}.mm-ai-act-success article{border-top:4px solid #2f907c;background:#fff;padding:1.5rem}.mm-ai-act-success h3{margin-top:0}.mm-ai-act-faq{display:grid;gap:0;border-top:1px solid #cbd5df}.mm-ai-act-faq details{border-bottom:1px solid #cbd5df;padding:1.15rem 0}.mm-ai-act-faq summary{cursor:pointer;font-weight:700;color:#18283d;list-style:none;padding-right:2rem;position:relative}.mm-ai-act-faq summary::after{content:"+";position:absolute;right:0;top:0;color:#d94f54}.mm-ai-act-faq details[open] summary::after{content:"−"}.mm-ai-act-faq p{max-width:52rem;color:#526173}.mm-ai-act-assessment{display:grid;grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);gap:clamp(2rem,6vw,5rem);align-items:start}.mm-ai-act-assessment__intro{position:sticky;top:7rem}.mm-ai-act-assessment__form{padding:clamp(1.25rem,4vw,2.25rem);background:#fff;border:1px solid #d7dde3}.mm-ai-act-source-note{padding:1rem 1.2rem;border-left:4px solid #6c7f93;background:#eef2f5;font-size:.82rem;color:#526173}.mm-ai-act-source-note a{font-weight:700}.mm-ai-act-inline-cta{margin-top:1.5rem}.mm-ai-act-inline-cta .mm-btn{margin-right:.5rem;margin-bottom:.5rem}@media(max-width:900px){.mm-ai-act-problem,.mm-ai-act-definition,.mm-ai-act-guide,.mm-ai-act-stakes,.mm-ai-act-assessment{grid-template-columns:1fr}.mm-ai-act-problem__copy,.mm-ai-act-assessment__intro{position:static}.mm-ai-act-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.mm-ai-act-roles,.mm-ai-act-success{grid-template-columns:1fr}.mm-ai-act-signal{grid-template-columns:1fr}}@media(max-width:560px){.mm-ai-act-grid,.mm-ai-act-authority,.mm-ai-act-steps{grid-template-columns:1fr}.mm-ai-act-inline-cta .mm-btn{display:flex;width:100%;margin-right:0;justify-content:center}}/* EU AI ACT CARD EDGE CLEANUP */.mm-ai-act-signal-intro{max-width:48rem;margin:0 auto;text-align:center}.mm-ai-act-signal-intro h2{margin-bottom:.75rem}.mm-ai-act-signal-intro .mm-section__subtitle{margin-left:auto;margin-right:auto}.mm-ai-act-definition__panel{border:1px solid #32445a}.mm-ai-act-penalty{border:1px solid #d7dde3}.mm-ai-act-success article{border:1px solid #d7dde3}.mm-ai-act-source-note{border:1px solid #cbd5df}/* EU AI ACT GUIDE TO PLAN */.mm-ai-act-guide-section{border-bottom:1px solid #d7dde3}.mm-ai-act-guide__bridge{display:grid;gap:.2rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #cbd5df}.mm-ai-act-guide__bridge strong{color:#18283d}.mm-ai-act-guide__bridge span{color:#526173;font-size:.9rem}/* EU AI ACT CLOSING CTA */.mm-ai-act-closing{padding-block:clamp(4rem,8vw,7rem)}.mm-ai-act-closing__main{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(17rem,.75fr);gap:clamp(2.5rem,7vw,6rem);align-items:end}.mm-ai-act-closing__copy{max-width:46rem}.mm-ai-act-closing__copy h2{max-width:15ch;margin-bottom:1rem;color:#fff}.mm-ai-act-closing__copy>p{max-width:42rem;margin:0;color:#dce5ee;font-size:1.05rem}.mm-ai-act-closing__proof{display:flex;flex-wrap:wrap;gap:.55rem 1.25rem;margin-top:1.75rem;padding-top:1.25rem;border-top:1px solid #405165}.mm-ai-act-closing__proof span{color:#dce5ee;font-size:.8rem;font-weight:700}.mm-ai-act-closing__proof span::before{content:"✓";margin-right:.45rem;color:#f26363}.mm-ai-act-closing__actions{padding-left:clamp(1.5rem,4vw,3rem);border-left:1px solid #405165}.mm-ai-act-closing__actions p{margin:0 0 1.25rem;color:#dce5ee}.mm-ai-act-closing__actions p strong{display:block;margin-bottom:.25rem;color:#fff}.mm-ai-act-closing__actions .mm-btn{display:flex;width:100%;justify-content:center}.mm-ai-act-closing__secondary{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;padding:.65rem 0;color:#fff;font-size:.85rem;font-weight:700;border-bottom:1px solid #405165}.mm-ai-act-closing__secondary:hover{color:#f26363}.mm-ai-act-closing__references{display:grid;grid-template-columns:auto 1fr auto;gap:1rem 2rem;align-items:center;margin-top:clamp(2.5rem,6vw,4.5rem);padding-top:1.25rem;border-top:1px solid #405165;color:#9fb0c3;font-size:.75rem}.mm-ai-act-closing__references strong{color:#dce5ee}.mm-ai-act-closing__references span{display:flex;flex-wrap:wrap;gap:.45rem 1.25rem}.mm-ai-act-closing__references a{color:#dce5ee;text-decoration:underline;text-underline-offset:.2rem}.mm-ai-act-closing__references a:hover{color:#fff}@media(max-width:760px){.mm-ai-act-closing__main{grid-template-columns:1fr;align-items:start}.mm-ai-act-closing__actions{padding-left:0;padding-top:1.5rem;border-left:0;border-top:1px solid #405165}.mm-ai-act-closing__references{grid-template-columns:1fr;gap:.75rem}.mm-ai-act-closing__references span{display:grid;gap:.5rem}}/* EU AI ACT TLDR NAV */.mm-ai-act-signal-intro{max-width:54rem}.mm-ai-act-signal-intro .mm-section__subtitle{max-width:52rem}.mm-ai-act-jump{display:grid;grid-template-columns:auto 1fr;gap:1rem 2rem;align-items:start;margin-top:2rem;padding-block:1rem;border-top:1px solid #cbd5df;border-bottom:1px solid #cbd5df}.mm-ai-act-jump>strong{color:#18283d;font-size:.78rem;text-transform:uppercase}.mm-ai-act-jump>div{display:flex;flex-wrap:wrap;gap:.55rem 1.25rem}.mm-ai-act-jump a{color:#33475d;font-size:.82rem;font-weight:700;text-decoration:underline;text-decoration-color:#aeb9c5;text-underline-offset:.25rem}.mm-ai-act-jump a:hover,.mm-ai-act-jump a:focus-visible{color:#d94f54;text-decoration-color:#d94f54}.mm-ai-act-jump+.mm-ai-act-signal{margin-top:2rem}[id]{scroll-margin-top:6rem}@media(max-width:700px){.mm-ai-act-jump{grid-template-columns:1fr;gap:.75rem}.mm-ai-act-jump>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem}}@media(max-width:430px){.mm-ai-act-jump>div{grid-template-columns:1fr}}

/* === Mediamatic Design System (default) === */
/* ============================================================
   MEDIAMATIC DESIGN SYSTEM
   Colours: #262F40 #434568 #7B86C1 #EB6462 #E3E6F1 #F5F5F5
   Fonts: Syne (headings) + Outfit (body)
   BEM prefix: mm-
============================================================ */

/* --- Local Fonts (GDPR Compliant) ---
   Syne + Outfit served from wp-content/fonts/
   No data sent to Google. */
/* latin-ext */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/QGYvz_MVcBeNP4NJuktqQ4E.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/QGYvz_MVcBeNP4NJtEtq.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/QGYvz_MVcBeNP4NJuktqQ4E.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/QGYvz_MVcBeNP4NJtEtq.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/QGYvz_MVcBeNP4NJuktqQ4E.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/QGYvz_MVcBeNP4NJtEtq.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/QGYvz_MVcBeNP4NJuktqQ4E.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/QGYvz_MVcBeNP4NJtEtq.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* greek */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/8vIH7w4qzmVxm2NL9Hz_.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* latin-ext */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/8vIH7w4qzmVxm25L9Hz_.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/8vIH7w4qzmVxm2BL9A.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* greek */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/8vIH7w4qzmVxm2NL9Hz_.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* latin-ext */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/8vIH7w4qzmVxm25L9Hz_.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/8vIH7w4qzmVxm2BL9A.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* greek */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/8vIH7w4qzmVxm2NL9Hz_.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* latin-ext */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/8vIH7w4qzmVxm25L9Hz_.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://mediamatic.mt/wp-content/fonts/8vIH7w4qzmVxm2BL9A.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* --- Design Tokens --- */
:root {
  /* Brand colours */
  --mm-midnight:     #262F40;
  --mm-indigo:       #434568;
  --mm-periwinkle:   #7B86C1;
  --mm-coral:        #EB6462;
  --mm-coral-dark:   #d4534f;
  --mm-blue-grey:    #E3E6F1;
  --mm-near-white:   #F5F5F5;
  --mm-white:        #ffffff;

  /* Text */
  --mm-text-body:        #434568;
  --mm-text-muted:       #7B86C1;
  --mm-text-on-dark:     #F5F5F5;
  --mm-text-on-dark-muted: #9CA3C0;

  /* Typography */
  --mm-font-display: 'Syne', sans-serif;
  --mm-font-body:    'Outfit', sans-serif;

  /* Spacing scale */
  --mm-space-xs:   8px;
  --mm-space-sm:   16px;
  --mm-space-md:   24px;
  --mm-space-lg:   48px;
  --mm-space-xl:   80px;
  --mm-space-xxl:  120px;

  /* Container widths */
  --mm-container:        1200px;
  --mm-container-narrow: 760px;
  --mm-container-wide:   1440px;

  /* Border radius */
  --mm-radius-sm: 4px;
  --mm-radius-md: 8px;
  --mm-radius-lg: 12px;
  --mm-radius-xl: 20px;

  /* Transitions */
  --mm-transition: 0.2s ease;
  --mm-transition-slow: 0.35s ease;
}

/* --- Reset & Base --- */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: var(--mm-font-body);
  font-size: 16px;
  line-height: 1.7;
  color: var(--mm-text-body);
  background: var(--mm-near-white);
}

img, video, svg {
  max-width: 100%;
  display: block;
  height: auto;
}

a {
  color: var(--mm-coral);
  text-decoration: none;
  transition: opacity var(--mm-transition);
}

a:hover {
  opacity: 0.8;
}

::selection {
  background: var(--mm-periwinkle);
  color: var(--mm-white);
}

/* --- Typography --- */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--mm-font-display);
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--mm-midnight);
  font-weight: 700;
}

h1 { font-size: clamp(2rem,    5vw, 3.25rem); font-weight: 800; }
h2 { font-size: clamp(1.5rem,  3.5vw, 2.25rem); }
h3 { font-size: clamp(1.2rem,  2.5vw, 1.625rem); }
h4 { font-size: 1.2rem; font-weight: 600; }
h5 { font-size: 1rem;   font-weight: 600; }
h6 { font-size: 0.875rem; font-weight: 600; }

p {
  margin-bottom: 1rem;
}

p:last-child {
  margin-bottom: 0;
}

strong {
  font-weight: 600;
}

ul, ol {
  padding-left: 1.5rem;
}

/* --- Overline Label --- */
.mm-overline {
  font-family: var(--mm-font-body);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--mm-coral);
  display: block;
  margin-bottom: 0.75rem;
}

.mm-overline--periwinkle {
  color: var(--mm-periwinkle);
}

.mm-overline--light {
  color: var(--mm-blue-grey);
}

/* --- Layout: Container --- */
.mm-container {
  max-width: var(--mm-container);
  margin-inline: auto;
  padding-inline: clamp(1rem, 5vw, 3rem);
  width: 100%;
}

.mm-container--narrow {
  max-width: var(--mm-container-narrow);
  margin-inline: auto;
  padding-inline: clamp(1rem, 5vw, 3rem);
  width: 100%;
}

.mm-container--wide {
  max-width: var(--mm-container-wide);
  margin-inline: auto;
  padding-inline: clamp(1rem, 5vw, 3rem);
  width: 100%;
}

/* --- Layout: Section --- */
.mm-section {
  padding-block: clamp(3rem, 8vw, 6rem);
}

.mm-section--sm {
  padding-block: clamp(2rem, 5vw, 3.5rem);
}

.mm-section--lg {
  padding-block: clamp(4rem, 10vw, 8rem);
}

/* --- Section Colour Variants --- */
.mm-section--dark {
  background: var(--mm-midnight);
  color: var(--mm-text-on-dark);
}

.mm-section--dark h1,
.mm-section--dark h2,
.mm-section--dark h3,
.mm-section--dark h4,
.mm-section--dark h5,
.mm-section--dark h6 {
  color: var(--mm-text-on-dark);
}

.mm-section--indigo {
  background: var(--mm-indigo);
  color: var(--mm-text-on-dark);
}

.mm-section--indigo h1,
.mm-section--indigo h2,
.mm-section--indigo h3,
.mm-section--indigo h4,
.mm-section--indigo h5,
.mm-section--indigo h6 {
  color: var(--mm-text-on-dark);
}

.mm-section--blue-grey {
  background: var(--mm-blue-grey);
  color: var(--mm-midnight);
}

.mm-section--white {
  background: var(--mm-white);
}

/* --- Section Header --- */
.mm-section__header {
  margin-bottom: clamp(2rem, 5vw, 3.5rem);
}

.mm-section__header--center {
  text-align: center;
  max-width: 640px;
  margin-inline: auto;
  margin-bottom: clamp(2rem, 5vw, 3.5rem);
}

.mm-section__subtitle {
  font-size: 1.0625rem;
  line-height: 1.75;
  margin-top: 0.875rem;
  opacity: 0.85;
}

/* --- Buttons --- */
.mm-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-family: var(--mm-font-body);
  font-size: 0.9375rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  padding: 0.8125rem 1.875rem;
  border-radius: var(--mm-radius-sm);
  border: 1.5px solid transparent;
  cursor: pointer;
  transition: background var(--mm-transition), color var(--mm-transition), border-color var(--mm-transition);
  text-decoration: none;
  line-height: 1;
  white-space: nowrap;
}

.mm-btn--primary {
  background: var(--mm-coral);
  color: var(--mm-white);
  border-color: var(--mm-coral);
}

.mm-btn--primary:hover {
  background: var(--mm-coral-dark);
  border-color: var(--mm-coral-dark);
  color: var(--mm-white);
  opacity: 1;
}

.mm-btn--outline-dark {
  background: transparent;
  color: var(--mm-midnight);
  border-color: var(--mm-midnight);
}

.mm-btn--outline-dark:hover {
  background: var(--mm-midnight);
  color: var(--mm-white);
  opacity: 1;
}

.mm-btn--outline-light {
  background: transparent;
  color: var(--mm-near-white);
  border-color: var(--mm-near-white);
}

.mm-btn--outline-light:hover {
  background: var(--mm-near-white);
  color: var(--mm-midnight);
  opacity: 1;
}

.mm-btn--outline-coral {
  background: transparent;
  color: var(--mm-coral);
  border-color: var(--mm-coral);
}

.mm-btn--outline-coral:hover {
  background: var(--mm-coral);
  color: var(--mm-white);
  opacity: 1;
}

/* --- Cards --- */
.mm-card {
  background: var(--mm-white);
  border: 0.5px solid var(--mm-blue-grey);
  border-radius: var(--mm-radius-lg);
  padding: 1.75rem;
}

.mm-card--blue-grey {
  background: var(--mm-blue-grey);
  border: none;
  border-radius: var(--mm-radius-lg);
  padding: 1.75rem;
}

.mm-card--dark {
  background: var(--mm-indigo);
  border: none;
  border-radius: var(--mm-radius-lg);
  padding: 1.75rem;
}

.mm-card__label {
  font-family: var(--mm-font-body);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--mm-coral);
  margin-bottom: 0.5rem;
  display: block;
}

.mm-card__title {
  font-family: var(--mm-font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--mm-midnight);
  margin-bottom: 0.625rem;
  line-height: 1.3;
  letter-spacing: -0.01em;
}

.mm-card--dark .mm-card__title {
  color: var(--mm-near-white);
}

.mm-card__body {
  font-family: var(--mm-font-body);
  font-size: 0.9375rem;
  color: var(--mm-text-muted);
  line-height: 1.65;
}

.mm-card--dark .mm-card__body {
  color: var(--mm-text-on-dark-muted);
}

.mm-card__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--mm-font-body);
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--mm-coral);
  margin-top: 1rem;
  text-decoration: none;
  transition: gap var(--mm-transition);
}

.mm-card__link:hover {
  gap: 10px;
  opacity: 1;
}

/* --- Grid Utilities --- */
.mm-grid {
  display: grid;
  gap: 1.5rem;
}

.mm-grid--2 { grid-template-columns: repeat(2, 1fr); }
.mm-grid--3 { grid-template-columns: repeat(3, 1fr); }
.mm-grid--4 { grid-template-columns: repeat(4, 1fr); }

@media (max-width: 899px) {
  .mm-grid--3 { grid-template-columns: repeat(2, 1fr); }
  .mm-grid--4 { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 599px) {
  .mm-grid--2,
  .mm-grid--3,
  .mm-grid--4 { grid-template-columns: 1fr; }
}

/* --- Flex Utilities --- */
.mm-flex { display: flex; }
.mm-flex--center { align-items: center; justify-content: center; }
.mm-flex--between { align-items: center; justify-content: space-between; }
.mm-flex--gap-sm { gap: var(--mm-space-sm); }
.mm-flex--gap-md { gap: var(--mm-space-md); }

/* --- Text Utilities --- */
.mm-text-center  { text-align: center; }
.mm-text-coral   { color: var(--mm-coral); }
.mm-text-periwinkle { color: var(--mm-periwinkle); }
.mm-text-muted   { color: var(--mm-text-muted); }
.mm-text-on-dark { color: var(--mm-text-on-dark); }
.mm-text-midnight { color: var(--mm-midnight); }

/* --- Periwinkle Highlight Bar --- */
.mm-highlight {
  background: var(--mm-periwinkle);
  border-radius: var(--mm-radius-md);
  padding: 1.25rem 1.5rem;
  color: var(--mm-white);
}

.mm-highlight p {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--mm-white);
  margin: 0;
}

/* --- Testimonial --- */
.mm-testimonial {
  background: var(--mm-white);
  border: 0.5px solid var(--mm-blue-grey);
  border-radius: var(--mm-radius-lg);
  padding: 1.75rem;
}

.mm-testimonial__quote {
  font-size: 1rem;
  line-height: 1.75;
  color: var(--mm-indigo);
  font-style: italic;
  margin-bottom: 1.25rem;
}

.mm-testimonial__name {
  font-family: var(--mm-font-display);
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--mm-midnight);
}

.mm-testimonial__role {
  font-size: 0.8125rem;
  color: var(--mm-text-muted);
  margin-top: 2px;
}

/* --- Step / Process --- */
.mm-step {
  display: flex;
  gap: 1.25rem;
  align-items: flex-start;
}

.mm-step__number {
  font-family: var(--mm-font-display);
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--mm-coral);
  line-height: 1;
  flex-shrink: 0;
  width: 3rem;
}

.mm-step__content {}

.mm-step__title {
  font-family: var(--mm-font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--mm-midnight);
  margin-bottom: 0.375rem;
}

.mm-section--dark .mm-step__title,
.mm-section--indigo .mm-step__title {
  color: var(--mm-near-white);
}

.mm-step__body {
  font-size: 0.9375rem;
  color: var(--mm-text-muted);
  line-height: 1.65;
}

.mm-section--dark .mm-step__body,
.mm-section--indigo .mm-step__body {
  color: var(--mm-text-on-dark-muted);
}

/* --- Stat / Credential Block --- */
.mm-stat {
  text-align: center;
  padding: 1.5rem;
}

.mm-stat__number {
  font-family: var(--mm-font-display);
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 800;
  color: var(--mm-coral);
  line-height: 1;
  display: block;
}

.mm-stat__label {
  font-size: 0.9375rem;
  color: var(--mm-text-on-dark-muted);
  margin-top: 0.5rem;
  display: block;
}

/* --- Divider --- */
.mm-divider {
  border: none;
  border-top: 1px solid rgba(123, 134, 193, 0.2);
  margin-block: 0;
}

/* --- Visually Hidden (accessibility) --- */
.mm-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

/* === Custom Media Definitions (custom-media) === */
@custom-media --mm-mobile (max-width: 599px);
@custom-media --mm-tablet (min-width: 600px) and (max-width: 899px);
@custom-media --mm-desktop (min-width: 900px);
@custom-media --mm-wide (min-width: 1280px);
@custom-media --mm-below-desktop (max-width: 899px);
@custom-media --mm-below-tablet (max-width: 599px);

/* === Mediamatic Components (1876b45) === */
/* ============================================================
   MEDIAMATIC COMPONENTS
   Site Header, Site Footer, and page-level component CSS
============================================================ */

/* --- Site Header --- */
.site-header {
  background: var(--mm-midnight);
  position: sticky;
  top: 0;
  z-index: 100;
  border-bottom: 1px solid rgba(123, 134, 193, 0.12);
}

.site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 72px;
  gap: 2rem;
}

.site-header__logo {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  opacity: 1;
}

.site-header__logo img {
  height: 40px;
  width: auto;
  display: block;
}

.site-header__nav {
  display: flex;
  align-items: center;
}

.site-header__nav-list {
  display: flex;
  align-items: center;
  gap: 2rem;
  list-style: none;
  padding: 0;
  margin: 0;
}

.site-header__nav-link {
  font-family: var(--mm-font-body);
  font-size: 0.9375rem;
  font-weight: 500;
  color: var(--mm-near-white);
  text-decoration: none;
  transition: color var(--mm-transition);
  opacity: 1;
  white-space: nowrap;
}

.site-header__nav-link:hover {
  color: var(--mm-periwinkle);
  opacity: 1;
}

.site-header__nav-link--cta {
  background: var(--mm-coral);
  color: var(--mm-white);
  padding: 0.625rem 1.25rem;
  border-radius: var(--mm-radius-sm);
  transition: background var(--mm-transition), color var(--mm-transition);
}

.site-header__nav-link--cta:hover {
  background: var(--mm-coral-dark);
  color: var(--mm-white);
  opacity: 1;
}

.site-header__mobile-toggle {
  display: none;
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  color: var(--mm-near-white);
  line-height: 0;
  flex-shrink: 0;
}

@media (max-width: 899px) {
  .site-header__nav {
    display: none;
    position: absolute;
    top: 72px;
    left: 0;
    right: 0;
    background: var(--mm-midnight);
    border-top: 1px solid rgba(123, 134, 193, 0.12);
    padding: 1.5rem clamp(1rem, 5vw, 3rem);
    z-index: 99;
  }

  .site-header__nav--open {
    display: flex;
  }

  .site-header__nav-list {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.125rem;
    width: 100%;
  }

  .site-header__nav-link--cta {
    display: inline-block;
    margin-top: 0.5rem;
  }

  .site-header__mobile-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

/* --- Site Footer --- */
.site-footer {
  background: var(--mm-midnight);
  color: var(--mm-text-on-dark);
  padding-block: clamp(3rem, 6vw, 5rem);
}

.site-footer__grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: clamp(2rem, 5vw, 4rem);
  margin-bottom: clamp(2rem, 4vw, 3rem);
}

.site-footer__logo {
  display: inline-flex;
  margin-bottom: 1.25rem;
  opacity: 1;
}

.site-footer__logo img {
  height: 36px;
  width: auto;
  display: block;
}

.site-footer__tagline {
  font-family: var(--mm-font-body);
  font-size: 0.9375rem;
  color: var(--mm-text-on-dark-muted);
  line-height: 1.7;
  max-width: 300px;
  margin: 0;
}

.site-footer__heading {
  font-family: var(--mm-font-body);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--mm-periwinkle);
  margin-bottom: 1.25rem;
  display: block;
}

.site-footer__nav-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}

.site-footer__nav-link {
  font-family: var(--mm-font-body);
  font-size: 0.9375rem;
  color: var(--mm-text-on-dark-muted);
  text-decoration: none;
  transition: color var(--mm-transition);
  opacity: 1;
  display: inline-block;
}

.site-footer__nav-link:hover {
  color: var(--mm-near-white);
  opacity: 1;
}

.site-footer__contact-item {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-family: var(--mm-font-body);
  font-size: 0.9375rem;
  color: var(--mm-text-on-dark-muted);
  margin-bottom: 0.625rem;
  text-decoration: none;
  transition: color var(--mm-transition);
  opacity: 1;
}

.site-footer__contact-item:hover {
  color: var(--mm-near-white);
  opacity: 1;
}

.site-footer__bottom {
  padding-top: 1.75rem;
  border-top: 1px solid rgba(123, 134, 193, 0.15);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1rem;
}

.site-footer__copyright {
  font-size: 0.8125rem;
  color: var(--mm-text-on-dark-muted);
  margin: 0;
}

.site-footer__legal-links {
  display: flex;
  gap: 1.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
}

.site-footer__legal-link {
  font-size: 0.8125rem;
  color: var(--mm-text-on-dark-muted);
  text-decoration: none;
  transition: color var(--mm-transition);
  opacity: 1;
}

.site-footer__legal-link:hover {
  color: var(--mm-near-white);
  opacity: 1;
}

@media (max-width: 899px) {
  .site-footer__grid {
    grid-template-columns: 1fr 1fr;
  }

  .site-footer__col--brand {
    grid-column: 1 / -1;
  }

  .site-footer__tagline {
    max-width: 100%;
  }
}

@media (max-width: 599px) {
  .site-footer__grid {
    grid-template-columns: 1fr;
  }

  .site-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* === Mediamatic Pages (9243d90) === */
/* ============================================================
   MEDIAMATIC PAGES
   Homepage and inner page layout CSS
============================================================ */

/* --- Problem Cards --- */
.problem-card {
  background: var(--mm-white);
  border: 0.5px solid rgba(123, 134, 193, 0.3);
  border-radius: var(--mm-radius-lg);
  padding: 2rem;
}

.problem-card__number {
  font-family: var(--mm-font-display);
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--mm-coral);
  line-height: 1;
  margin-bottom: 1.25rem;
  display: block;
  padding-bottom: 1rem;
  border-bottom: 2px solid var(--mm-blue-grey);
  width: fit-content;
  min-width: 3rem;
}

.problem-card__title {
  font-family: var(--mm-font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--mm-midnight);
  margin-bottom: 0.75rem;
  line-height: 1.3;
}

.problem-card__body {
  font-size: 0.9375rem;
  color: var(--mm-text-muted);
  line-height: 1.7;
  margin: 0;
}

/* --- Guide Section --- */
.mm-guide {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: clamp(2.5rem, 6vw, 5rem);
  align-items: center;
}

.mm-guide__text h2 {
  color: var(--mm-near-white);
  margin-bottom: 1.25rem;
}

.mm-guide__text p {
  color: var(--mm-text-on-dark-muted);
  font-size: 1rem;
  line-height: 1.8;
  margin: 0;
}

.mm-guide__stats {
  display: grid;
  gap: 1rem;
}

.mm-stat-item {
  padding: 1.5rem;
  background: rgba(123, 134, 193, 0.12);
  border-radius: var(--mm-radius-md);
  text-align: center;
  border: 1px solid rgba(123, 134, 193, 0.15);
}

.mm-stat-item__number {
  font-family: var(--mm-font-display);
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--mm-coral);
  line-height: 1;
  display: block;
}

.mm-stat-item__label {
  font-size: 0.875rem;
  color: var(--mm-text-on-dark-muted);
  margin-top: 0.5rem;
  display: block;
  line-height: 1.4;
}

@media (max-width: 899px) {
  .mm-guide {
    grid-template-columns: 1fr;
  }

  .mm-guide__stats {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 599px) {
  .mm-guide__stats {
    grid-template-columns: 1fr;
  }
}

/* --- Plan CTA --- */
.mm-plan-cta {
  text-align: center;
  margin-top: clamp(2.5rem, 5vw, 3.5rem);
  padding-top: clamp(2rem, 4vw, 3rem);
  border-top: 1px solid rgba(123, 134, 193, 0.15);
}

/* --- Stats Row (Social Proof) --- */
.mm-stats-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin-bottom: clamp(2.5rem, 5vw, 4rem);
  border-bottom: 1px solid var(--mm-blue-grey);
  padding-bottom: clamp(2rem, 4vw, 3rem);
}

.mm-stats-row__item {
  text-align: center;
  padding: 1.25rem;
}

.mm-stats-row__number {
  font-family: var(--mm-font-display);
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  color: var(--mm-midnight);
  line-height: 1;
  display: block;
}

.mm-stats-row__label {
  font-size: 0.9375rem;
  color: var(--mm-text-muted);
  margin-top: 0.5rem;
  display: block;
}

@media (max-width: 599px) {
  .mm-stats-row {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .mm-stats-row__item {
    border-bottom: 1px solid var(--mm-blue-grey);
    padding: 1rem;
  }

  .mm-stats-row__item:last-child {
    border-bottom: none;
  }
}

/* ============================================================
   SERVICE CARDS — What We Do
   Coral top accent, hover lift, auto-numbered labels
============================================================ */

.mm-section--white .mm-grid--2 {
  counter-reset: service-card;
}

.mm-section--white .mm-grid--2 .mm-card,
.mm-section--white .mm-grid--2 .mm-card--blue-grey {
  counter-increment: service-card;
  border-top: 3px solid var(--mm-coral);
  border-radius: 0 0 var(--mm-radius-lg) var(--mm-radius-lg);
  display: flex;
  flex-direction: column;
  transition: box-shadow var(--mm-transition-slow), transform var(--mm-transition);
}

.mm-section--white .mm-grid--2 .mm-card:hover,
.mm-section--white .mm-grid--2 .mm-card--blue-grey:hover {
  box-shadow: 0 8px 28px rgba(38, 47, 64, 0.1);
  transform: translateY(-3px);
  opacity: 1;
}

.mm-section--white .mm-grid--2 .mm-card__label::before,
.mm-section--white .mm-grid--2 .mm-card--blue-grey .mm-card__label::before {
  content: counter(service-card, decimal-leading-zero) " · ";
  font-weight: 700;
}

.mm-section--white .mm-grid--2 .mm-card__body,
.mm-section--white .mm-grid--2 .mm-card--blue-grey .mm-card__body {
  flex: 1;
}

/* ============================================================
   PLAN STEPS — How It Works
   Vertical card layout, step number as small overline label
============================================================ */

.mm-section--dark .mm-step {
  display: block;
  background: rgba(245, 245, 245, 0.04);
  border: 1px solid rgba(123, 134, 193, 0.12);
  border-radius: var(--mm-radius-lg);
  padding: 2rem;
}

.mm-section--dark .mm-step__number {
  font-family: var(--mm-font-body);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--mm-coral);
  opacity: 0.8;
  display: block;
  margin-bottom: 1rem;
  width: auto;
  line-height: 1;
}

.mm-section--dark .mm-step__content {
  display: block;
}

/* ============================================================\n   MEDIAMATIC HOMEPAGE REFINEMENTS\n   Problem cards, pathway cards and homepage card rhythm.\n============================================================ */

body.home > .mm-section:nth-of-type(2) .mm-grid--3 {
  gap: 0;
  border-top: 1px solid rgba(25, 35, 52, 0.13);
  border-bottom: 1px solid rgba(25, 35, 52, 0.13);
  background: rgba(255, 253, 250, 0.36);
}

.problem-card {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: clamp(1.35rem, 3vw, 2.15rem) clamp(1.25rem, 3vw, 2rem);
}

.problem-card + .problem-card {
  border-left: 1px solid rgba(25, 35, 52, 0.11) !important;
}

.problem-card__number {
  border: 0 !important;
  color: rgba(25, 35, 52, 0.46) !important;
  font-family: var(--mm-font-body);
  font-size: 0.78rem !important;
  font-weight: 800;
  letter-spacing: 0.06em !important;
  margin-bottom: 1.4rem;
  padding: 0 !important;
}

.problem-card__title {
  max-width: 260px;
  font-size: clamp(1.12rem, 1.8vw, 1.35rem) !important;
  line-height: 1.16;
  margin-bottom: 0.85rem;
}

.problem-card__body {
  max-width: 310px;
  color: var(--mm-text-body);
  opacity: 0.78;
}

.mm-section--white .mm-grid--2 {
  gap: 0 !important;
  border: 0 !important;
  border-top: 1px solid rgba(25, 35, 52, 0.13) !important;
  border-bottom: 1px solid rgba(25, 35, 52, 0.13) !important;
  background: transparent !important;
}

.mm-section--white .mm-grid--2 .mm-card,
.mm-section--white .mm-grid--2 .mm-card--blue-grey {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: clamp(1.6rem, 3.5vw, 2.6rem) clamp(1.25rem, 3.5vw, 2.35rem) !important;
  transition: color var(--mm-transition), background var(--mm-transition) !important;
}

.mm-section--white .mm-grid--2 .mm-card:nth-child(odd),
.mm-section--white .mm-grid--2 .mm-card--blue-grey:nth-child(odd) {
  border-right: 1px solid rgba(25, 35, 52, 0.11) !important;
}

.mm-section--white .mm-grid--2 .mm-card:nth-child(-n+2),
.mm-section--white .mm-grid--2 .mm-card--blue-grey:nth-child(-n+2) {
  border-bottom: 1px solid rgba(25, 35, 52, 0.11) !important;
}

.mm-section--white .mm-grid--2 .mm-card:hover,
.mm-section--white .mm-grid--2 .mm-card--blue-grey:hover {
  transform: none !important;
  box-shadow: none !important;
  background: rgba(25, 35, 52, 0.025) !important;
}

.mm-section--white .mm-grid--2 .mm-card__label,
.mm-section--white .mm-grid--2 .mm-card--blue-grey .mm-card__label {
  color: rgba(25, 35, 52, 0.56) !important;
  font-size: 0.72rem;
  letter-spacing: 0.07em;
  margin-bottom: 1.1rem;
}

.mm-section--white .mm-grid--2 .mm-card__label::before,
.mm-section--white .mm-grid--2 .mm-card--blue-grey .mm-card__label::before {
  color: var(--mm-coral);
  content: counter(service-card, decimal-leading-zero) " / " !important;
  font-weight: 800;
}

.mm-card__title {
  font-size: clamp(1.12rem, 1.8vw, 1.38rem) !important;
  line-height: 1.18;
  max-width: 390px;
}

.mm-card__body {
  max-width: 470px;
  color: var(--mm-text-body) !important;
  opacity: 0.76;
}

.mm-card__link {
  color: var(--mm-midnight) !important;
  margin-top: 1.35rem;
  text-decoration: underline;
  text-decoration-color: rgba(240, 100, 95, 0.55);
  text-underline-offset: 0.28em;
  transition: color var(--mm-transition), text-decoration-color var(--mm-transition) !important;
}

.mm-card__link:hover {
  color: var(--mm-coral) !important;
  gap: 6px !important;
  text-decoration-color: var(--mm-coral);
}

@media (max-width: 899px) {
  .problem-card + .problem-card {
    border-left: 0 !important;
    border-top: 1px solid rgba(25, 35, 52, 0.11) !important;
  }

  .mm-section--white .mm-grid--2 .mm-card:nth-child(odd),
  .mm-section--white .mm-grid--2 .mm-card--blue-grey:nth-child(odd) {
    border-right: 0 !important;
  }

  .mm-section--white .mm-grid--2 .mm-card,
  .mm-section--white .mm-grid--2 .mm-card--blue-grey {
    border-bottom: 1px solid rgba(25, 35, 52, 0.11) !important;
  }

  .mm-section--white .mm-grid--2 .mm-card:last-child,
  .mm-section--white .mm-grid--2 .mm-card--blue-grey:last-child {
    border-bottom: 0 !important;
  }
}

/* === Mediamatic Visual System (6f66493) === */
/* ============================================================
   MEDIAMATIC ART DIRECTION PASS
   Purpose: reduce template feel, add local authority, and vary section rhythm.
============================================================ */

:root {
  --mm-midnight: #192334;
  --mm-indigo: #363a5d;
  --mm-periwinkle: #6f7fbd;
  --mm-coral: #f0645f;
  --mm-coral-dark: #d94f4a;
  --mm-blue-grey: #e6e9f1;
  --mm-near-white: #f7f5f0;
  --mm-stone: #d9d4ca;
  --mm-ink-soft: #2e394c;
  --mm-text-body: #364054;
  --mm-text-muted: #69748b;
  --mm-text-on-dark-muted: #c2c8d8;
  --mm-radius-md: 6px;
  --mm-radius-lg: 8px;
  --mm-radius-xl: 8px;
}

html {
  background: var(--mm-midnight);
}

body {
  background: var(--mm-near-white);
  color: var(--mm-text-body);
}

h1, h2, h3, h4, h5, h6 {
  letter-spacing: 0;
}

.mm-container {
  max-width: 1160px;
}

.mm-section {
  position: relative;
  overflow: hidden;
}

.mm-section--white {
  background: #fffdfa;
}

.mm-section--blue-grey {
  background:
    linear-gradient(90deg, rgba(25,35,52,0.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(25,35,52,0.035) 1px, transparent 1px),
    #edf0f6;
  background-size: 56px 56px;
}

.mm-section--indigo,
.mm-section--dark {
  background: var(--mm-midnight);
}

.mm-overline {
  letter-spacing: 0.08em;
  color: var(--mm-coral);
}

.mm-section__header--center {
  max-width: 720px;
}

.mm-section__header--center h2 {
  max-width: 680px;
  margin-inline: auto;
}

.mm-btn {
  border-radius: 6px;
  font-weight: 700;
  box-shadow: none;
}

.mm-btn--primary {
  box-shadow: 0 12px 28px rgba(240, 100, 95, 0.22);
}

.mm-btn--outline-light {
  border-color: rgba(247, 245, 240, 0.42);
  color: var(--mm-near-white);
}

.site-header {
  background: rgba(25, 35, 52, 0.96);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(217, 212, 202, 0.14);
}

.site-header__inner {
  height: 68px;
}

.site-header__nav-list {
  gap: 1.6rem;
}

.site-header__nav-link {
  font-size: 0.875rem;
}

.site-header__nav-link--cta {
  border-radius: 6px;
  padding: 0.68rem 1.05rem;
}

body.home > .mm-section:nth-of-type(2) .mm-section__header--center {
  text-align: left;
  margin-inline: 0;
  max-width: 620px;
}

body.home > .mm-section:nth-of-type(2) .mm-grid--3 {
  align-items: stretch;
}

.problem-card {
  border: 0;
  border-top: 3px solid var(--mm-coral);
  border-radius: 0 0 8px 8px;
  background: #fffdfa;
  box-shadow: 0 14px 32px rgba(25, 35, 52, 0.07);
}

.problem-card__number {
  border: 0;
  padding-bottom: 0;
  color: var(--mm-coral);
  font-size: 0.875rem;
  letter-spacing: 0.08em;
}

.problem-card__title {
  font-size: 1.18rem;
}

@media (min-width: 900px) {
  .mm-guide {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.78fr);
  }
}

.mm-guide__text {
  max-width: 680px;
  min-width: 0;
}

.mm-guide__stats {
  gap: 0;
  border: 1px solid rgba(217, 212, 202, 0.16);
}

.mm-stat-item {
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(217, 212, 202, 0.16);
  border-radius: 0;
  text-align: left;
  padding: 1.4rem 1.6rem;
}

.mm-stat-item:last-child {
  border-bottom: 0;
}

.mm-stat-item__number {
  font-size: 2.8rem;
}

.mm-section--white .mm-grid--2 {
  gap: 0;
  border: 1px solid var(--mm-blue-grey);
  background: #fffdfa;
}

.mm-section--white .mm-grid--2 .mm-card,
.mm-section--white .mm-grid--2 .mm-card--blue-grey {
  border: 0;
  border-top: 0;
  border-radius: 0;
  background: transparent;
  padding: clamp(1.5rem, 4vw, 2.5rem);
  box-shadow: none;
}

.mm-section--white .mm-grid--2 .mm-card:nth-child(odd) {
  border-right: 1px solid var(--mm-blue-grey);
}

.mm-section--white .mm-grid--2 .mm-card:nth-child(-n+2),
.mm-section--white .mm-grid--2 .mm-card--blue-grey:nth-child(-n+2) {
  border-bottom: 1px solid var(--mm-blue-grey);
}

.mm-section--white .mm-grid--2 .mm-card:hover,
.mm-section--white .mm-grid--2 .mm-card--blue-grey:hover {
  transform: none;
  box-shadow: inset 0 3px 0 var(--mm-coral);
}

.mm-card__label {
  color: var(--mm-coral);
}

.mm-card__body {
  color: var(--mm-text-muted);
}

.mm-section--dark .mm-step {
  border-radius: 8px;
  background: rgba(255, 253, 250, 0.045);
  border-color: rgba(217, 212, 202, 0.12);
}

.mm-section--dark .mm-grid--3 {
  position: relative;
}

.mm-section--dark .mm-step__number {
  color: var(--mm-coral);
}

.mm-stats-row {
  border-top: 1px solid var(--mm-blue-grey);
  border-bottom: 1px solid var(--mm-blue-grey);
  padding-block: clamp(1.5rem, 4vw, 2.5rem);
}

.mm-stats-row__number {
  color: var(--mm-midnight);
}

.mm-testimonial {
  border-radius: 8px;
  border-color: rgba(25, 35, 52, 0.1);
  box-shadow: 0 14px 30px rgba(25, 35, 52, 0.055);
}

.mm-testimonial__quote {
  color: var(--mm-ink-soft);
}

body.home > .mm-section:nth-last-of-type(1) {
  background: var(--mm-indigo);
}

.site-footer {
  background: #172130;
  border-top: 1px solid rgba(217, 212, 202, 0.14);
}

.site-footer__grid {
  grid-template-columns: 1.4fr 0.8fr 0.8fr;
}

@media (max-width: 899px) {
.mm-guide__stats {
    grid-template-columns: 1fr;
  }

  .mm-section--white .mm-grid--2 .mm-card:nth-child(odd) {
    border-right: 0;
  }

  .mm-section--white .mm-grid--2 .mm-card,
  .mm-section--white .mm-grid--2 .mm-card--blue-grey {
    border-bottom: 1px solid var(--mm-blue-grey);
  }

  .mm-section--white .mm-grid--2 .mm-card:last-child,
  .mm-section--white .mm-grid--2 .mm-card--blue-grey:last-child {
    border-bottom: 0;
  }
}

@media (max-width: 599px) {
body.home > .mm-section:nth-of-type(2) .mm-section__header--center {
    text-align: center;
    margin-inline: auto;
  }
}

/* === Mediamatic Heroes (53854db) === */
/* ============================================================
   MEDIAMATIC HEROES
   Shared hero system for all page heroes.
   Homepage keeps only its right-hand graphic card as a content variation.
============================================================ */

:root {
  --mm-hero-padding-block: clamp(4rem, 10vw, 8rem);
  --mm-hero-padding-block-mobile: clamp(3.5rem, 14vw, 5rem);
  --mm-hero-grid-gap: clamp(44px, 6vw, 82px);
  --mm-hero-h2-size: clamp(2.75rem, 4.8vw, 4.2rem);
  --mm-hero-h2-size-tablet: clamp(2.5rem, 6vw, 3.6rem);
  --mm-hero-h2-size-mobile: clamp(2.25rem, 11vw, 3rem);
  --mm-hero-h2-line-height: 1.02;
}

/* --- Shared hero section shell --- */
body.home > .mm-section:first-of-type,
.mm-section--indigo.mm-section--lg,
.mm-section--dark.service-page-hero,
.service-page-hero {
  min-height: auto !important;
  display: block !important;
  align-items: initial !important;
  padding-block: var(--mm-hero-padding-block) !important;
  background:
    linear-gradient(90deg, rgba(217,212,202,0.08) 1px, transparent 1px),
    linear-gradient(180deg, rgba(217,212,202,0.06) 1px, transparent 1px),
    var(--mm-midnight) !important;
  background-size: 72px 72px !important;
}

body.home > .mm-section:first-of-type::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(240,100,95,0.55), transparent);
}

/* --- Shared hero grid --- */
.hero__grid,
.service-page-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.58fr) !important;
  gap: var(--mm-hero-grid-gap) !important;
  align-items: center;
}

@media (min-width: 1100px) {
  body.home .hero__grid {
    grid-template-columns: minmax(0, 0.96fr) minmax(500px, 0.9fr) !important;
    gap: clamp(44px, 5vw, 76px) !important;
  }

  body.home .hero__visual {
    justify-content: flex-end;
  }
}

/* --- Shared hero type and content rhythm --- */
.hero__content,
.service-page-hero__content {
  padding-block: 0 !important;
}

.hero__content h1.mm-overline,
.service-page-hero__content h1.mm-overline,
.mm-section--indigo h1.mm-overline,
.mm-section--dark h1.mm-overline,
.service-page-hero h1.mm-overline {
  color: var(--mm-coral) !important;
}

.hero__content h2,
.service-page-hero__content h2 {
  max-width: 780px;
  color: var(--mm-near-white) !important;
  font-size: var(--mm-hero-h2-size) !important;
  line-height: var(--mm-hero-h2-line-height) !important;
  margin-bottom: 1.25rem;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: manual;
  text-wrap: balance;
}

.hero__subtitle,
.service-page-hero__subtitle {
  max-width: 680px;
  margin: 1.25rem 0 2rem;
  color: #d7dbe7;
  font-size: clamp(1rem, 2vw, 1.125rem);
  line-height: 1.75;
}

.hero__actions {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 1.45rem;
}

/* --- Hero right-column proof/stat treatments --- */
.hero__stats,
.service-page-hero__proof {
  display: grid;
  gap: 0;
  align-self: center;
  border-top: 1px solid rgba(217, 212, 202, 0.16);
  border-bottom: 1px solid rgba(217, 212, 202, 0.16);
  max-width: 380px;
  margin-left: auto;
}

.hero__stat-item,
.service-proof__item {
  padding: 1.1rem 0;
}

.hero__stat-item + .hero__stat-item,
.service-proof__item + .service-proof__item {
  border-top: 1px solid rgba(217, 212, 202, 0.16);
}

.hero__stat-item span,
.service-proof__item span {
  display: block;
  color: var(--mm-coral);
  font-family: var(--mm-font-display);
  font-size: clamp(1.65rem, 3vw, 2.4rem);
  font-weight: 700;
  line-height: 1;
}

.hero__stat-item p,
.service-proof__item p {
  margin: 0.35rem 0 0;
  color: #c2c8d8;
  font-size: 0.92rem;
  line-height: 1.45;
  font-family: var(--mm-font-body);
}

.hero__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  max-width: 640px;
}

.hero__proof span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0.45rem 0.7rem;
  border: 1px solid rgba(217, 212, 202, 0.18);
  border-radius: 999px;
  color: #d9d4ca;
  background: rgba(255, 253, 250, 0.045);
  font-size: 0.8125rem;
  line-height: 1.2;
}

/* --- Hero visual surfaces --- */
.hero__visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.hero__visual svg {
  width: 100%;
  height: auto;
  max-height: 460px;
}

.hero__visual img {
  width: 100%;
  height: auto;
  border-radius: var(--mm-radius-xl);
  object-fit: cover;
}

.mm-growth-board {
  position: relative;
  width: min(100%, 540px) !important;
  min-height: 395px;
  border: 1px solid rgba(217, 212, 202, 0.18);
  background: rgba(255, 253, 250, 0.055);
  padding: 1.2rem;
  box-shadow: 0 26px 60px rgba(0, 0, 0, 0.22);
}

.mm-growth-board::before {
  content: "";
  position: absolute;
  inset: 16px;
  border: 1px solid rgba(217, 212, 202, 0.09);
  pointer-events: none;
}

.mm-growth-board__search,
.mm-growth-board__metric,
.mm-growth-board__panel {
  position: absolute;
  border: 1px solid rgba(25, 35, 52, 0.22);
  background: #fffdfa;
  color: var(--mm-midnight);
  box-shadow:
    0 16px 38px rgba(5, 10, 18, 0.2),
    inset 0 0 0 1px rgba(255, 255, 255, 0.62);
  z-index: 1;
}

.mm-growth-board__search {
  top: 54px;
  left: 30px;
  right: 86px;
  padding: 1.35rem 1.45rem 1.55rem;
  z-index: 2;
}

.mm-growth-board__kicker,
.mm-growth-board__panel span {
  display: block;
  color: var(--mm-coral);
  font-size: 0.6875rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 0.4rem;
}

.mm-growth-board__search strong {
  display: block;
  max-width: 300px;
  font-family: var(--mm-font-display);
  font-size: 1.35rem;
  line-height: 1.12;
  color: var(--mm-midnight);
}

.mm-growth-board__search p {
  max-width: 330px;
  margin-top: 0.8rem;
  color: var(--mm-text-muted);
  font-size: 0.9rem;
  line-height: 1.55;
}

.mm-growth-board__metric {
  top: 28px;
  right: 34px;
  width: 146px;
  padding: 1rem;
  text-align: center;
  background: var(--mm-coral);
  color: #fff;
  z-index: 5;
}

.mm-growth-board__metric span {
  display: block;
  font-family: var(--mm-font-display);
  font-size: 2.2rem;
  line-height: 1;
}

.mm-growth-board__metric small {
  display: block;
  margin-top: 0.35rem;
  font-size: 0.72rem;
  line-height: 1.25;
}

.mm-growth-board__metric {
  border-color: rgba(255, 255, 255, 0.36);
  box-shadow:
    0 16px 38px rgba(5, 10, 18, 0.2),
    inset 0 0 0 1px rgba(255, 255, 255, 0.22);
}

.mm-growth-board__panel--lead {
  border-color: rgba(25, 35, 52, 0.2);
}

.mm-growth-board__panel--care {
  border-color: rgba(217, 212, 202, 0.28);
}

.mm-growth-board__panel {
  width: 205px;
  padding: 1rem 1.05rem;
}

.mm-growth-board__panel strong {
  position: relative;
  z-index: 2;
  max-width: 170px;
  display: block;
  font-size: 0.95rem;
  line-height: 1.25;
}

.mm-growth-board__panel--site {
  left: 58px;
  bottom: 106px;
  z-index: 2;
}

.mm-growth-board__panel--lead {
  right: 36px;
  bottom: 116px;
  width: 210px;
  background: #eef1f7;
  z-index: 4;
}

.mm-growth-board__panel--care {
  left: 178px;
  bottom: 38px;
  width: 210px;
  background: var(--mm-midnight);
  color: var(--mm-near-white);
  z-index: 5;
}

@media (max-width: 1099px) {
  .hero__grid,
  .service-page-hero__grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .hero__content h2,
  .service-page-hero__content h2 {
    max-width: 760px;
    font-size: var(--mm-hero-h2-size-tablet) !important;
  }

  .hero__stats,
  .service-page-hero__proof {
    margin-left: 0;
    max-width: 100%;
  }
}

@media (max-width: 899px) {
  .hero__visual {
    display: flex;
  }

  .mm-growth-board {
    min-height: 360px;
  }

  .mm-growth-board__search {
    right: 28px;
  }
}

@media (max-width: 599px) {
  body.home > .mm-section:first-of-type,
  .mm-section--indigo.mm-section--lg,
  .mm-section--dark.service-page-hero,
  .service-page-hero {
    padding-block: var(--mm-hero-padding-block-mobile) !important;
  }

  .hero__content h2,
  .service-page-hero__content h2 {
    font-size: var(--mm-hero-h2-size-mobile) !important;
    line-height: 1.05 !important;
  }

  .hero__actions .mm-btn,
  .service-page-hero .hero__actions .mm-btn {
    width: 100%;
  }

  .hero__proof span {
    width: 100%;
    justify-content: center;
    border-radius: 6px;
  }

  .mm-growth-board {
    min-height: 0;
  }

  .mm-growth-board__search,
  .mm-growth-board__metric,
  .mm-growth-board__panel,
  .mm-growth-board__panel--lead,
  .mm-growth-board__panel--care,
  .mm-growth-board__panel--site {
    position: relative;
    inset: auto;
    width: auto;
    margin-bottom: 0.75rem;
  }

  .mm-growth-board__panel--care {
    margin-bottom: 0;
  }
}

/* === Mediamatic Final CTA (691c415) === */
/* ============================================================
   MEDIAMATIC FINAL CTA
   Turns the closing CTA into a considered decision section.
============================================================ */

.mm-section--final-cta {
  background:
    linear-gradient(90deg, rgba(217,212,202,0.07) 1px, transparent 1px),
    linear-gradient(180deg, rgba(217,212,202,0.055) 1px, transparent 1px),
    var(--mm-midnight);
  background-size: 64px 64px;
  color: var(--mm-near-white);
  padding-block: clamp(3.75rem, 7vw, 5.75rem);
  border-top: 1px solid rgba(217, 212, 202, 0.13);
  border-bottom: 1px solid rgba(217, 212, 202, 0.13);
}

.final-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
  column-gap: clamp(3rem, 8vw, 7rem);
  row-gap: 2rem;
  align-items: end;
  text-align: left !important;
}

.final-cta .mm-overline {
  grid-column: 1;
  color: var(--mm-coral);
  margin-bottom: 0.85rem;
}

.final-cta h2 {
  grid-column: 1;
  max-width: 680px;
  margin: 0;
  color: var(--mm-near-white);
}

.final-cta .mm-section__subtitle {
  grid-column: 1;
  max-width: 600px !important;
  margin: 1.05rem 0 0 !important;
  color: #c8cedd;
  font-size: 1rem;
  line-height: 1.7;
}

.final-cta__steps {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: clamp(1.35rem, 3vw, 2rem);
  border-top: 1px solid rgba(217, 212, 202, 0.16);
  border-bottom: 1px solid rgba(217, 212, 202, 0.16);
}

.final-cta__steps span {
  display: block;
  padding: 0.95rem 1.15rem;
  color: #d9d4ca;
  font-size: 0.9rem;
  line-height: 1.35;
}

.final-cta__steps span + span {
  border-left: 1px solid rgba(217, 212, 202, 0.16);
}

.final-cta .mm-btn {
  grid-column: 2;
  grid-row: 1 / span 3;
  justify-self: end;
  align-self: center;
  margin-top: 0 !important;
  min-width: 230px;
  min-height: 54px;
}

@media (max-width: 899px) {
  .final-cta {
    display: block;
  }

  .final-cta h2,
  .final-cta .mm-section__subtitle {
    max-width: 720px !important;
  }

  .final-cta .mm-btn {
    margin-top: 2rem !important;
  }

  .final-cta__steps {
    grid-template-columns: 1fr;
  }

  .final-cta__steps span + span {
    border-left: 0;
    border-top: 1px solid rgba(217, 212, 202, 0.16);
  }
}

@media (max-width: 599px) {\n.final-cta .mm-btn {
    width: 100%;
  }
}

/* --- Homepage final CTA element placement --- */
.final-cta > .mm-section__subtitle {
  max-width: 520px;
  margin-inline: auto;
}

.final-cta > .mm-btn {
  margin-top: 2rem;
  display: inline-flex;
}

/* === Mediamatic Enhanced Footer (46e7f37) === */
/* ============================================================
   MEDIAMATIC ENHANCED FOOTER
   Styles the reusable Site Footer component as a useful closing panel.
============================================================ */

.site-footer--enhanced {
  background:
    linear-gradient(90deg, rgba(217,212,202,0.045) 1px, transparent 1px),
    #172130;
  background-size: 72px 72px;
  color: var(--mm-text-on-dark);
  padding-block: clamp(3.75rem, 7vw, 6rem) clamp(2rem, 4vw, 3rem);
  border-top: 1px solid rgba(217, 212, 202, 0.14);
}

.site-footer--enhanced .site-footer__topline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.5rem;
  align-items: center;
  padding-bottom: clamp(1.75rem, 4vw, 2.75rem);
  margin-bottom: clamp(2rem, 4vw, 3rem);
  border-bottom: 1px solid rgba(217, 212, 202, 0.16);
}

.site-footer--enhanced .site-footer__statement {
  max-width: 780px;
  margin: 0;
  color: var(--mm-near-white);
  font-family: var(--mm-font-display);
  font-size: clamp(1.65rem, 3.2vw, 3rem);
  font-weight: 700;
  line-height: 1.06;
}

.site-footer--enhanced .site-footer__top-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0.8rem 1.15rem;
  border: 1px solid rgba(240, 100, 95, 0.72);
  border-radius: 6px;
  color: #fff;
  background: rgba(240, 100, 95, 0.9);
  font-size: 0.9rem;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

.site-footer--enhanced .site-footer__top-cta:hover {
  background: var(--mm-coral-dark);
  border-color: var(--mm-coral-dark);
  opacity: 1;
}

.site-footer--enhanced .site-footer__grid {
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) minmax(140px, 0.7fr) minmax(140px, 0.7fr) minmax(230px, 1fr);
  gap: clamp(2rem, 5vw, 4rem);
  margin-bottom: clamp(2rem, 4vw, 3rem);
}

.site-footer--enhanced .site-footer__logo {
  margin-bottom: 1.25rem;
}

.site-footer--enhanced .site-footer__logo img {
  height: 38px;
}

.site-footer--enhanced .site-footer__tagline {
  max-width: 360px;
  color: #c8cedd;
  font-size: 0.96rem;
  line-height: 1.75;
}

.site-footer--enhanced .site-footer__proof {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin-top: 1.35rem;
  max-width: 380px;
}

.site-footer--enhanced .site-footer__proof span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0.35rem 0.62rem;
  border: 1px solid rgba(217, 212, 202, 0.16);
  border-radius: 999px;
  color: #d9d4ca;
  background: rgba(255, 253, 250, 0.035);
  font-size: 0.78rem;
  line-height: 1.2;
}

.site-footer--enhanced .site-footer__news-card {
  display: block;
  max-width: 380px;
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid rgba(217, 212, 202, 0.16);
  border-radius: 8px;
  color: #d4d9e6;
  background: rgba(255, 253, 250, 0.045);
  text-decoration: none;
}

.site-footer--enhanced .site-footer__news-card:hover {
  border-color: rgba(240, 100, 95, 0.75);
  background: rgba(240, 100, 95, 0.08);
  opacity: 1;
}

.site-footer--enhanced .site-footer__news-card span {
  display: block;
  margin-bottom: 0.45rem;
  color: var(--mm-coral);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.site-footer--enhanced .site-footer__news-card strong {
  display: block;
  margin-bottom: 0.35rem;
  color: #fffdfa;
  font-family: var(--mm-font-display);
  font-size: 1.02rem;
  line-height: 1.22;
}

.site-footer--enhanced .site-footer__news-card em {
  display: block;
  color: #9da7bd;
  font-size: 0.86rem;
  font-style: normal;
  line-height: 1.5;
}

.site-footer--enhanced .site-footer__news-card:hover strong,
.site-footer--enhanced .site-footer__news-card:hover em {
  color: #fffdfa;
}

.site-footer--enhanced .site-footer__heading {
  color: var(--mm-coral);
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  margin-bottom: 1rem;
}

.site-footer--enhanced .site-footer__nav-list {
  gap: 0.72rem;
}

.site-footer--enhanced .site-footer__nav-link {
  color: #d4d9e6;
  font-size: 0.94rem;
  line-height: 1.35;
}

.site-footer--enhanced .site-footer__nav-link:hover {
  color: #fffdfa;
  opacity: 1;
}

.site-footer--enhanced .site-footer__col--contact {
  padding: 1.25rem;
  border: 1px solid rgba(217, 212, 202, 0.14);
  background: rgba(255, 253, 250, 0.035);
}

.site-footer--enhanced .site-footer__contact-list {
  display: grid;
  gap: 0;
}

.site-footer--enhanced .site-footer__contact-item {
  display: block;
  margin: 0;
  padding: 0.9rem 0;
  border-top: 1px solid rgba(217, 212, 202, 0.12);
  color: #d4d9e6;
}

.site-footer--enhanced .site-footer__contact-item:first-child {
  border-top: 0;
  padding-top: 0;
}

.site-footer--enhanced .site-footer__contact-item span {
  display: block;
  margin-bottom: 0.22rem;
  color: #8f9ab6;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.site-footer--enhanced .site-footer__contact-item strong {
  display: block;
  color: #fffdfa;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.site-footer--enhanced .site-footer__contact-item:hover strong {
  color: var(--mm-coral);
}

.site-footer--enhanced .site-footer__bottom {
  padding-top: 1.35rem;
  border-top: 1px solid rgba(217, 212, 202, 0.16);
}

.site-footer--enhanced .site-footer__copyright,
.site-footer--enhanced .site-footer__legal-link {
  color: #9da7bd;
}

@media (max-width: 999px) {
  .site-footer--enhanced .site-footer__grid {
    grid-template-columns: 1fr 1fr;
  }

  .site-footer--enhanced .site-footer__col--brand,
  .site-footer--enhanced .site-footer__col--contact {
    grid-column: span 2;
  }
}

@media (max-width: 699px) {
  .site-footer--enhanced .site-footer__topline,
  .site-footer--enhanced .site-footer__grid {
    display: block;
  }

  .site-footer--enhanced .site-footer__top-cta {
    margin-top: 1.35rem;
  }

  .site-footer--enhanced .site-footer__col {
    margin-top: 2rem;
  }

  .site-footer--enhanced .site-footer__col--brand {
    margin-top: 0;
  }

  .site-footer--enhanced .site-footer__bottom {
    align-items: flex-start;
  }
}

/* === Mediamatic Proof Section (fe2bf5b) === */
/* ============================================================
   MEDIAMATIC PROOF SIMPLIFIED
   Makes the proof/testimonial section readable and calm.
============================================================ */

.mm-section--proof {
  background: #fffdfa;
  padding-block: clamp(4rem, 7vw, 6rem) !important;
}

.mm-section--proof .mm-container {
  display: block !important;
  max-width: 1120px;
}

.mm-section--proof .mm-section__header--center {
  position: static !important;
  max-width: 760px !important;
  margin: 0 0 clamp(1.75rem, 4vw, 2.5rem) !important;
  text-align: left !important;
}

.mm-section--proof .mm-section__header--center h2 {
  max-width: 680px !important;
  margin: 0 !important;
}

.mm-section--proof .mm-section__header--center::after {
  content: "Since 1997, Mediamatic has grown by staying useful after launch day." !important;
  display: block;
  max-width: 540px !important;
  margin-top: 0.9rem !important;
  color: var(--mm-text-muted);
  font-size: 0.96rem;
  line-height: 1.65;
}

.mm-section--proof .mm-stats-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  max-width: none !important;
  margin: 0 0 clamp(2rem, 4vw, 3rem) !important;
  padding: 0 !important;
  border-top: 1px solid rgba(25, 35, 52, 0.14) !important;
  border-bottom: 1px solid rgba(25, 35, 52, 0.14) !important;
}

.mm-section--proof .mm-stats-row__item {
  display: block !important;
  min-height: 0 !important;
  padding: 1.1rem clamp(1rem, 3vw, 1.5rem) !important;
  border: 0 !important;
  text-align: left !important;
}

.mm-section--proof .mm-stats-row__item + .mm-stats-row__item {
  border-left: 1px solid rgba(25, 35, 52, 0.14) !important;
}

.mm-section--proof .mm-stats-row__number {
  display: block !important;
  min-width: 0 !important;
  margin: 0 0 0.3rem !important;
  color: var(--mm-midnight);
  font-size: clamp(1.65rem, 3.2vw, 2.35rem) !important;
  line-height: 1 !important;
  white-space: nowrap;
}

.mm-section--proof .mm-stats-row__label {
  display: block !important;
  margin: 0 !important;
  color: var(--mm-text-muted);
  font-size: 0.9rem;
  line-height: 1.35;
}

.mm-section--proof .mm-grid--3 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border: 0 !important;
}

.mm-section--proof .mm-testimonial {
  display: block !important;
  padding: clamp(1.35rem, 3vw, 2rem) 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.mm-section--proof .mm-testimonial:first-child {
  grid-column: 1 / -1;
  padding-top: 0 !important;
  padding-bottom: clamp(1.6rem, 4vw, 2.4rem) !important;
  margin-bottom: clamp(1rem, 2.5vw, 1.5rem);
  border-bottom: 1px solid rgba(25, 35, 52, 0.14) !important;
}

.mm-section--proof .mm-testimonial:nth-child(2) {
  padding-right: clamp(1.25rem, 3vw, 2.25rem) !important;
}

.mm-section--proof .mm-testimonial:nth-child(3) {
  padding-left: clamp(1.25rem, 3vw, 2.25rem) !important;
  border-left: 1px solid rgba(25, 35, 52, 0.14) !important;
}

.mm-section--proof .mm-testimonial:first-child .mm-testimonial__quote {
  max-width: 760px !important;
  margin: 0 !important;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: clamp(1.25rem, 2vw, 1.8rem) !important;
  line-height: 1.28 !important;
  letter-spacing: 0 !important;
}

.mm-section--proof .mm-testimonial:first-child .mm-testimonial__quote::before {
  content: "Featured proof";
  display: block;
  margin-bottom: 0.85rem !important;
  color: var(--mm-coral);
  font-family: var(--mm-font-body);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.mm-section--proof .mm-testimonial__quote {
  max-width: 520px !important;
  margin: 0 !important;
  color: var(--mm-text-body) !important;
  font-family: var(--mm-font-body);
  font-size: 0.96rem !important;
  line-height: 1.68 !important;
  font-style: normal !important;
}

.mm-section--proof .mm-testimonial__name {
  margin: 1rem 0 0 !important;
  color: var(--mm-midnight);
  font-family: var(--mm-font-body);
  font-size: 0.9rem;
  font-weight: 800;
}

.mm-section--proof .mm-testimonial__role {
  margin: 0.12rem 0 0 !important;
  color: var(--mm-text-muted);
  font-size: 0.8rem;
}

.mm-section--quiet-work {
  background: #F0EEE7;
  border-top: 1px solid rgba(25, 35, 52, 0.08);
  border-bottom: 1px solid rgba(25, 35, 52, 0.08);
  padding-block: clamp(4.5rem, 8vw, 7rem) !important;
}

.mm-section--client-privacy {
  background: #fffdfa;
}

.mm-section--client-privacy {
  border-top: 1px solid rgba(25, 35, 52, 0.08);
  border-bottom: 1px solid rgba(25, 35, 52, 0.08);
}

.mm-section--quiet-work .mm-container,
.mm-section--client-privacy .mm-container {
  max-width: 1120px;
}

.mm-quiet-work__intro {
  max-width: 760px;
  margin: 0 0 clamp(2rem, 4vw, 3rem);
}

.mm-quiet-work__intro h2 {
  max-width: 680px;
  margin: 0;
}

.mm-quiet-work__intro .mm-section__subtitle {
  max-width: 680px;
  margin-top: 0.85rem;
}

.mm-quiet-work__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.15rem, 2.5vw, 1.65rem);
  max-width: 980px;
}

.mm-quiet-work__card {
  display: flex;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  gap: 1rem;
  padding: clamp(1.45rem, 2.8vw, 1.9rem);
  background: #ffffff;
  border: 1px solid rgba(25, 35, 52, 0.14);
  border-radius: 8px;
  box-shadow: 0 16px 34px rgba(25, 35, 52, 0.045);
}

.mm-quiet-work__label,
.mm-client-privacy__label {
  color: var(--mm-coral);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.25;
  text-transform: uppercase;
}

.mm-quiet-work__card h3 {
  max-width: 440px;
  margin: 0;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: clamp(1.18rem, 1.8vw, 1.42rem);
  line-height: 1.16;
  letter-spacing: 0;
}

.mm-quiet-work__card p {
  max-width: 470px;
  margin: 0;
  color: var(--mm-text-body);
  font-size: 0.98rem;
  line-height: 1.68;
}

.mm-quiet-work__focus {
  display: block;
  margin-top: auto;
  padding-top: 1rem;
  border-top: 1px solid rgba(25, 35, 52, 0.12);
  color: var(--mm-text-muted);
  font-size: 0.8rem;
  font-weight: 800;
  line-height: 1.35;
}

.mm-quiet-work__note {
  max-width: 720px;
  margin: clamp(1.4rem, 3vw, 2rem) 0 0;
  color: var(--mm-text-muted);
  font-size: 0.92rem;
  line-height: 1.6;
}

.mm-client-privacy {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
  gap: clamp(1.5rem, 4vw, 3rem);
  align-items: start;
}

.mm-client-privacy__copy {
  min-width: 0;
  max-width: 720px;
}

.mm-client-privacy__copy h2 {
  max-width: 640px;
  margin: 0;
}

.mm-client-privacy__copy p {
  max-width: 690px;
  margin: 1rem 0 0;
  color: var(--mm-text-body);
  font-size: 1rem;
  line-height: 1.72;
}

.mm-client-privacy__panel {
  min-width: 0;
  padding: clamp(1.2rem, 2.8vw, 1.6rem);
  background: #ffffff;
  border: 1px solid rgba(25, 35, 52, 0.14);
  border-radius: 8px;
  box-shadow: 0 16px 34px rgba(25, 35, 52, 0.05);
}

.mm-client-privacy__list {
  display: grid;
  gap: 0.7rem;
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
}

.mm-client-privacy__list li {
  position: relative;
  min-width: 0;
  padding-left: 1.15rem;
  color: var(--mm-text-body);
  font-size: 0.94rem;
  line-height: 1.45;
}

.mm-client-privacy__list li::before {
  content: "";
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 0.38rem;
  height: 0.38rem;
  border-radius: 999px;
  background: var(--mm-coral);
}

@media (max-width: 1024px) {
  .mm-quiet-work__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: none;
  }
}

@media (max-width: 799px) {
  .mm-section--proof .mm-stats-row,
  .mm-section--proof .mm-grid--3,
  .mm-quiet-work__grid,
  .mm-client-privacy {
    grid-template-columns: 1fr !important;
  }

  .mm-section--proof .mm-stats-row__item + .mm-stats-row__item {
    border-left: 0 !important;
    border-top: 1px solid rgba(25, 35, 52, 0.14) !important;
  }

  .mm-section--proof .mm-testimonial:nth-child(2),
  .mm-section--proof .mm-testimonial:nth-child(3) {
    padding-inline: 0 !important;
    border-left: 0 !important;
  }

  .mm-section--proof .mm-testimonial:nth-child(3) {
    border-top: 1px solid rgba(25, 35, 52, 0.14) !important;
  }
}

/* === Mediamatic Success Pathway (a44817a) === */
/* ============================================================
   MEDIAMATIC SUCCESS PATHWAY
   Adds the StoryBrand success destination, service pathway treatment,
   and section rhythm between adjacent light sections.
============================================================ */

.mm-section--success {
  background: #fffdfa;
  padding-block: clamp(4.5rem, 8vw, 7rem);
  border-top: 1px solid rgba(25, 35, 52, 0.1);
  border-bottom: 1px solid rgba(25, 35, 52, 0.1);
}

.success-path {
  display: grid;
  grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1fr);
  gap: clamp(2.75rem, 7vw, 6rem);
  align-items: start;
}

.success-path__intro {
  max-width: 560px;
}

.success-path__intro h2 {
  max-width: 560px;
}

.success-path__intro .mm-section__subtitle {
  max-width: 520px;
  margin-top: 1.15rem;
  color: var(--mm-text-muted);
}

.success-path__outcomes {
  display: grid;
  gap: 0;
  border-top: 1px solid rgba(25, 35, 52, 0.13);
  border-bottom: 1px solid rgba(25, 35, 52, 0.13);
}

.success-path__outcome {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: clamp(1rem, 3vw, 1.75rem);
  align-items: baseline;
  padding: clamp(1.25rem, 3vw, 1.85rem) 0;
}

.success-path__outcome + .success-path__outcome {
  border-top: 1px solid rgba(25, 35, 52, 0.13);
}

.success-path__number {
  color: var(--mm-coral);
  font-family: var(--mm-font-body);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.success-path__outcome h3 {
  max-width: 560px;
  margin: 0;
  color: var(--mm-midnight);
  font-size: clamp(1.08rem, 2vw, 1.42rem);
  line-height: 1.22;
}

.mm-section--pathway .mm-section__header--center {
  text-align: left;
  margin-inline: 0;
  max-width: 720px;
}

.mm-section--pathway .mm-section__header--center h2,
.mm-section--pathway .mm-section__header--center .mm-section__subtitle {
  margin-inline: 0;
}

.mm-section--pathway .mm-grid--2 {
  position: relative;
}

.mm-section--pathway .mm-card__label {
  color: rgba(25, 35, 52, 0.62) !important;
}

.mm-section--pathway .mm-card__title {
  max-width: 430px;
}

.mm-section--pathway .mm-card__body {
  max-width: 500px;
}

.final-cta__stakes {
  grid-column: 1;
  max-width: 680px;
  margin: 1.2rem 0 0;
  padding-left: 1rem;
  border-left: 2px solid rgba(240, 100, 95, 0.72);
  color: #d9d4ca;
  font-size: 0.98rem;
  line-height: 1.65;
}

.mm-section--success {
  background:
    linear-gradient(90deg, rgba(25, 35, 52, 0.032) 1px, transparent 1px),
    linear-gradient(180deg, rgba(25, 35, 52, 0.026) 1px, transparent 1px),
    #f1eee7 !important;
  background-size: 68px 68px;
  border-top: 1px solid rgba(25, 35, 52, 0.11) !important;
  border-bottom: 1px solid rgba(25, 35, 52, 0.12) !important;
}

.mm-section--success::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(240, 100, 95, 0.28), transparent);
}

.mm-section--pathway {
  background: #fffdfa !important;
  padding-top: clamp(4.75rem, 8vw, 7rem);
}

.mm-section--pathway::before {
  content: "";
  position: absolute;
  top: 0;
  left: clamp(1rem, 5vw, 3rem);
  right: clamp(1rem, 5vw, 3rem);
  height: 1px;
  max-width: 1160px;
  margin-inline: auto;
  background: rgba(25, 35, 52, 0.16);
}

@media (max-width: 899px) {
  .success-path {
    grid-template-columns: 1fr;
  }

  .mm-section--pathway .mm-section__header--center {
    max-width: 100%;
  }
}

@media (max-width: 599px) {
  .success-path__outcome {
    grid-template-columns: 1fr;
    gap: 0.45rem;
  }

  .final-cta__stakes {
    padding-left: 0.85rem;
  }
}

/* === Mediamatic Services Page (ea38227) === */
/* ============================================================
   MEDIAMATIC SERVICES PAGE
   Service hub and supporting service-page layouts.
============================================================ */

.service-problems__grid {
  display: grid;
  grid-template-columns: minmax(260px, 0.7fr) minmax(0, 1fr);
  gap: clamp(2.5rem, 7vw, 6rem);
  align-items: start;
}

.service-problems__intro h2 {
  max-width: 520px;
}

.service-problems__list {
  border-top: 1px solid rgba(25, 35, 52, 0.14);
  border-bottom: 1px solid rgba(25, 35, 52, 0.14);
}

.service-problems__list p {
  margin: 0;
  padding: clamp(1rem, 2.5vw, 1.35rem) 0;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: clamp(1.08rem, 2vw, 1.38rem);
  font-weight: 700;
  line-height: 1.22;
}

.service-problems__list p + p {
  border-top: 1px solid rgba(25, 35, 52, 0.14);
}

.service-full-service {
  background: #fffdfa;
}

.service-full-service__grid {
  display: grid;
  grid-template-columns: minmax(270px, 0.78fr) minmax(0, 1fr);
  gap: clamp(2.5rem, 7vw, 6rem);
  align-items: start;
}

.service-full-service__intro h2 {
  max-width: 620px;
}

.service-full-service__intro p {
  max-width: 680px;
  color: var(--mm-text-muted);
  font-size: clamp(1rem, 1.55vw, 1.12rem);
  line-height: 1.72;
}

.service-full-service__intro p + p {
  margin-top: 1rem;
}

.service-stack-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(0.9rem, 2vw, 1.2rem);
}

.service-stack-card {
  min-height: 100%;
  padding: clamp(1.1rem, 2.5vw, 1.35rem);
  border: 1px solid rgba(25, 35, 52, 0.13);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.72);
}

.service-stack-card--ai {
  grid-column: 1 / -1;
  border-color: rgba(235, 100, 98, 0.34);
  background: rgba(255, 255, 255, 0.86);
  color: inherit;
  text-decoration: none;
  transition: border-color var(--mm-transition), transform var(--mm-transition), box-shadow var(--mm-transition);
}

.service-stack-card--ai:hover {
  opacity: 1;
  border-color: var(--mm-coral);
  transform: translateY(-2px);
  box-shadow: 0 16px 36px rgba(38, 47, 64, 0.1);
}

.service-stack-card span {
  display: block;
  margin-bottom: 0.45rem;
  color: var(--mm-coral);
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.service-stack-card h3 {
  margin: 0 0 0.6rem;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: clamp(1.02rem, 1.5vw, 1.2rem);
  line-height: 1.22;
}

.service-stack-card p {
  margin: 0;
  color: var(--mm-text-muted);
  font-size: 0.96rem;
  line-height: 1.62;
}

.service-core {
  background: #fffdfa;
}

.service-link-list {
  display: grid;
  gap: 0;
  border-top: 1px solid rgba(25, 35, 52, 0.14);
  border-bottom: 1px solid rgba(25, 35, 52, 0.14);
}

.service-link {
  display: grid;
  grid-template-columns: minmax(150px, 0.32fr) minmax(0, 1fr) minmax(130px, 0.28fr);
  gap: clamp(1rem, 4vw, 2.5rem);
  align-items: baseline;
  padding: clamp(1.15rem, 3vw, 1.8rem) 0;
  color: var(--mm-midnight);
  text-decoration: none;
  opacity: 1;
}

.service-link + .service-link {
  border-top: 1px solid rgba(25, 35, 52, 0.14);
}

.service-link:hover {
  opacity: 1;
}

.service-link__label {
  color: var(--mm-coral);
  font-size: 0.76rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.service-link strong {
  max-width: 650px;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: clamp(1.02rem, 1.65vw, 1.28rem);
  line-height: 1.25;
}

.service-link em {
  color: var(--mm-text-muted);
  font-size: 0.9rem;
  font-style: normal;
  text-align: right;
}

.service-link:hover strong,
.service-link:hover em {
  color: var(--mm-coral);
}

.service-plan {
  background: var(--mm-midnight);
}

@media (max-width: 899px) {
  .service-problems__grid,
  .service-full-service__grid {
    grid-template-columns: 1fr;
  }

  .service-stack-list {
    grid-template-columns: 1fr;
  }

  .service-link {
    grid-template-columns: 1fr;
    gap: 0.55rem;
  }

  .service-link em {
    text-align: left;
  }
}

/* === Mediamatic Contact Page (0002873) === */
/* ============================================================
   MEDIAMATIC CONTACT PAGE
   Two-column layout and form styling for /contact-us/
============================================================ */

/* --- Contact section layout --- */
.mm-contact-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.85fr) minmax(0, 1.15fr);
  gap: clamp(2.5rem, 6vw, 5rem);
  align-items: start;
}

@media (max-width: 899px) {
  .mm-contact-grid {
    grid-template-columns: 1fr;
  }
}

/* --- Contact details column --- */
.mm-contact-details__intro {
  font-size: 1rem;
  color: var(--mm-text-muted);
  line-height: 1.7;
  margin: 0 0 2rem;
  max-width: 380px;
}

.mm-contact-details__list {
  display: grid;
  gap: 1.5rem;
  border-top: 1px solid rgba(123, 134, 193, 0.2);
  padding-top: 1.75rem;
}

.mm-contact-detail {
  display: grid;
  gap: 0.25rem;
}

.mm-contact-detail__label {
  font-family: var(--mm-font-body);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--mm-coral);
  margin: 0;
}

.mm-contact-detail__value {
  font-family: var(--mm-font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--mm-midnight);
  margin: 0;
  line-height: 1.4;
}

.mm-contact-detail__value a {
  color: var(--mm-midnight);
  text-decoration: none;
  transition: color var(--mm-transition);
}

.mm-contact-detail__value a:hover {
  color: var(--mm-coral);
  opacity: 1;
}

.mm-contact-detail__note {
  font-family: var(--mm-font-body);
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--mm-text-muted);
  margin: 0;
}

/* --- Form container --- */
.mm-contact-form {
  background: var(--mm-white);
  border: 1px solid rgba(123, 134, 193, 0.2);
  border-radius: var(--mm-radius-lg);
  padding: clamp(1.75rem, 3.5vw, 2.5rem);
}

/* --- Alerts --- */
.mm-contact-form__alert {
  padding: 1rem 1.25rem;
  border-radius: var(--mm-radius-md);
  margin-bottom: 1.5rem;
  font-size: 0.9375rem;
  line-height: 1.5;
}

.mm-contact-form__alert--success {
  background: rgba(123, 134, 193, 0.12);
  border-left: 3px solid var(--mm-periwinkle);
  color: var(--mm-midnight);
}

.mm-contact-form__alert--error {
  background: rgba(235, 100, 98, 0.08);
  border-left: 3px solid var(--mm-coral);
  color: var(--mm-midnight);
}

/* --- Form structure --- */
.mm-form {
  display: grid;
  gap: 1.25rem;
}

.mm-form__row {
  display: grid;
  gap: 1.25rem;
}

.mm-form__row--split {
  grid-template-columns: 1fr 1fr;
}

@media (max-width: 599px) {
  .mm-form__row--split {
    grid-template-columns: 1fr;
  }
}

.mm-form__field {
  display: grid;
  gap: 0.5rem;
}

/* Honeypot — hidden from real users */
.mm-form__honeypot {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* --- Labels --- */
.mm-form__label {
  font-family: var(--mm-font-body);
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--mm-midnight);
  letter-spacing: 0.01em;
}

.mm-form__optional {
  font-weight: 400;
  color: var(--mm-text-muted);
  font-size: 0.75rem;
}

/* --- Inputs and textarea --- */
.mm-form__input,
.mm-form__textarea {
  font-family: var(--mm-font-body);
  font-size: 0.9375rem;
  color: var(--mm-midnight);
  background: var(--mm-white);
  border: 1px solid rgba(123, 134, 193, 0.35);
  border-radius: var(--mm-radius-sm);
  padding: 0.75rem 0.875rem;
  width: 100%;
  transition: border-color var(--mm-transition), box-shadow var(--mm-transition);
  line-height: 1.5;
}

.mm-form__textarea {
  resize: vertical;
  min-height: 120px;
  font-family: var(--mm-font-body);
}

.mm-form__input:focus,
.mm-form__textarea:focus {
  outline: none;
  border-color: var(--mm-coral);
  box-shadow: 0 0 0 3px rgba(235, 100, 98, 0.15);
}

.mm-form__input:invalid:not(:placeholder-shown),
.mm-form__textarea:invalid:not(:placeholder-shown) {
  border-color: rgba(235, 100, 98, 0.6);
}

.mm-form__input::placeholder,
.mm-form__textarea::placeholder {
  color: var(--mm-text-muted);
  opacity: 0.7;
}

/* --- Checkbox row --- */
.mm-form__field--check {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.75rem;
  align-items: start;
  padding-top: 0.25rem;
}

.mm-form__check {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  accent-color: var(--mm-coral);
  cursor: pointer;
  flex-shrink: 0;
}

.mm-form__check-label {
  font-family: var(--mm-font-body);
  font-size: 0.875rem;
  color: var(--mm-text-muted);
  line-height: 1.55;
  cursor: pointer;
}

.mm-form__check-label a {
  color: var(--mm-coral);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.mm-form__check-label a:hover {
  opacity: 1;
}

/* --- Submit button --- */
.mm-form__submit {
  justify-self: start;
  margin-top: 0.5rem;
  padding: 0.875rem 2rem;
}

@media (max-width: 599px) {
  .mm-form__submit {
    justify-self: stretch;
    width: 100%;
  }
}


/* --- Validation error states
   Used by both the contact form and the consultation form via the inline
   validation script. Server-side errors fall back to the generic alert
   at the top of the form. */
.mm-form__error {
  color: var(--mm-coral);
  font-family: var(--mm-font-body);
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.4;
  margin-top: 0.25rem;
  display: none;
}

.mm-form__error--visible {
  display: block;
}

.mm-form__input--invalid,
.mm-form__field--invalid .mm-form__input,
.mm-form__field--invalid .mm-form__textarea {
  border-color: var(--mm-coral);
  background-color: rgba(235, 100, 98, 0.04);
}

.mm-form__input--invalid:focus,
.mm-form__field--invalid .mm-form__input:focus,
.mm-form__field--invalid .mm-form__textarea:focus {
  box-shadow: 0 0 0 3px rgba(235, 100, 98, 0.18);
}

.mm-form__field--invalid .mm-form__check-label {
  color: var(--mm-coral);
}

.mm-form__field--check .mm-form__error {
  grid-column: 1 / -1;
  margin-left: 1.75rem;
}

/* === Mediamatic About Page (cb2be7c) === */
/* ============================================================
   MEDIAMATIC ABOUT PAGE
   Two-column intro, pillar cards, and native FAQ accordion.
============================================================ */

/* --- About intro (two-column) --- */
.mm-about-intro {
  display: grid;
  grid-template-columns: minmax(280px, 0.85fr) minmax(0, 1.15fr);
  gap: clamp(2.5rem, 6vw, 5rem);
  align-items: start;
}

.mm-about-intro__lead h2 {
  color: var(--mm-midnight);
  margin-bottom: 0;
  max-width: 380px;
}

.mm-about-intro__body p {
  font-size: 1.0625rem;
  line-height: 1.75;
  color: var(--mm-text-muted);
  margin: 0 0 1.5rem;
  max-width: 620px;
}

.mm-about-intro__body p:last-child {
  margin-bottom: 0;
}

@media (max-width: 899px) {
  .mm-about-intro {
    grid-template-columns: 1fr;
  }
}

/* --- Pillar cards (CREATIVITY / STRATEGY / DESIGN)
   Matching the problem-card pattern from the homepage:
   subtle full-perimeter border, coral label with blue-grey divider line. */
.mm-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.25rem, 3vw, 2rem);
  margin-top: clamp(2.5rem, 5vw, 3.5rem);
}

.mm-pillar {
  padding: clamp(1.75rem, 3vw, 2.25rem);
  background: var(--mm-white);
  border: 0.5px solid rgba(123, 134, 193, 0.3);
  border-radius: var(--mm-radius-lg);
}

.mm-pillar__label {
  font-family: var(--mm-font-body);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--mm-coral);
  display: block;
  margin-bottom: 1.25rem;
  padding-bottom: 1rem;
  border-bottom: 2px solid var(--mm-blue-grey);
  width: fit-content;
  min-width: 3rem;
}

.mm-pillar__body {
  font-family: var(--mm-font-display);
  font-size: 1.0625rem;
  line-height: 1.55;
  color: var(--mm-midnight);
  margin: 0;
  font-weight: 500;
  letter-spacing: -0.005em;
}

@media (max-width: 899px) {
  .mm-pillars {
    grid-template-columns: 1fr;
  }
}

/* --- FAQ accordion (uses native details/summary) --- */
.mm-faq {
  display: grid;
  gap: 0;
  border-top: 1px solid rgba(25, 35, 52, 0.12);
  max-width: 880px;
  margin-top: clamp(2rem, 4vw, 3rem);
}

.mm-faq__item {
  border-bottom: 1px solid rgba(25, 35, 52, 0.12);
}

.mm-faq__item > summary {
  list-style: none;
  cursor: pointer;
  padding: clamp(1.1rem, 2.5vw, 1.5rem) 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 2rem;
  font-family: var(--mm-font-display);
  font-size: clamp(1.05rem, 1.8vw, 1.25rem);
  font-weight: 700;
  color: var(--mm-midnight);
  line-height: 1.35;
  transition: color var(--mm-transition);
}

.mm-faq__item > summary::-webkit-details-marker {
  display: none;
}

.mm-faq__item > summary::after {
  content: "+";
  font-family: var(--mm-font-body);
  font-size: 1.5rem;
  font-weight: 300;
  color: var(--mm-coral);
  line-height: 1;
  flex-shrink: 0;
  transition: transform var(--mm-transition);
}

.mm-faq__item[open] > summary::after {
  content: "−";
}

.mm-faq__item > summary:hover {
  color: var(--mm-coral);
}

.mm-faq__answer {
  padding: 0 0 clamp(1.1rem, 2.5vw, 1.5rem);
  font-size: 0.9375rem;
  color: var(--mm-text-muted);
  line-height: 1.75;
  max-width: 760px;
}

.mm-faq__answer p {
  margin: 0 0 0.75rem;
}

.mm-faq__answer p:last-child {
  margin-bottom: 0;
}

.mm-faq__answer a {
  color: var(--mm-coral);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.mm-faq__answer a:hover {
  opacity: 1;
}

.mm-faq__answer .mm-faq__link {
  display: inline-flex;
  width: fit-content;
  margin-top: 0.35rem;
  color: var(--mm-coral);
  font-size: 0.88rem;
  font-weight: 800;
  line-height: 1.35;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
}

.mm-faq__answer .mm-faq__link:hover {
  color: var(--mm-midnight);
}

/* --- About CTA block (centered dark section) --- */
.mm-about-cta {
  text-align: center;
  max-width: 680px;
  margin: 0 auto;
}

.mm-about-cta h2 {
  color: var(--mm-near-white);
  margin-bottom: 1.25rem;
}

.mm-about-cta p {
  color: var(--mm-text-on-dark-muted);
  font-size: 1.0625rem;
  line-height: 1.75;
  margin: 0 0 2rem;
}

.mm-about-cta__actions {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
}

/* === Mediamatic Consultation Page (bec69a7) === */
/* ============================================================
   MEDIAMATIC CONSULTATION PAGE
   Two-column layout (timeline + form), timeline component,
   and form additions (select dropdowns).
============================================================ */

/* --- Two-column layout --- */
.mm-consult-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.78fr) minmax(0, 1.22fr);
  gap: clamp(2.5rem, 6vw, 5rem);
  align-items: start;
}

@media (max-width: 899px) {
  .mm-consult-grid {
    grid-template-columns: 1fr;
  }
}

/* --- Section intro (centred above the grid) --- */
.mm-consult-intro {
  max-width: 720px;
  margin: 0 auto clamp(2.5rem, 5vw, 3.5rem);
  text-align: center;
}

.mm-consult-intro h2 {
  color: var(--mm-midnight);
  margin-bottom: 1rem;
}

.mm-consult-intro p {
  font-size: 1.0625rem;
  line-height: 1.75;
  color: var(--mm-text-muted);
  margin: 0;
}

/* --- Timeline column header --- */
.mm-consult-aside h3 {
  font-family: var(--mm-font-display);
  font-size: clamp(1.25rem, 2.5vw, 1.6rem);
  font-weight: 700;
  color: var(--mm-midnight);
  margin: 0.5rem 0 1.5rem;
  line-height: 1.25;
}

/* --- Timeline (numbered, connected steps) --- */
.mm-timeline {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: clamp(1.25rem, 2.5vw, 1.75rem);
  counter-reset: mm-timeline;
}

.mm-timeline__step {
  display: grid;
  grid-template-columns: 2.25rem 1fr;
  gap: 1.25rem;
  align-items: start;
  position: relative;
  counter-increment: mm-timeline;
}

/* connecting line between numbered markers */
.mm-timeline__step:not(:last-child)::before {
  content: "";
  position: absolute;
  left: 1.125rem;
  top: 2.5rem;
  bottom: calc(-1 * clamp(1.25rem, 2.5vw, 1.75rem) + 0.5rem);
  width: 1px;
  background: rgba(123, 134, 193, 0.35);
  transform: translateX(-50%);
}

.mm-timeline__number {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: var(--mm-coral);
  color: var(--mm-near-white);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--mm-font-display);
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1;
  z-index: 1;
  position: relative;
}

.mm-timeline__number::before {
  content: counter(mm-timeline);
}

.mm-timeline__text {
  padding-top: 0.5rem;
}

.mm-timeline__text p {
  margin: 0;
  font-family: var(--mm-font-body);
  font-size: 0.9375rem;
  line-height: 1.7;
  color: var(--mm-text-muted);
}

/* --- Form column header --- */
.mm-consult-main h3 {
  font-family: var(--mm-font-display);
  font-size: clamp(1.25rem, 2.5vw, 1.6rem);
  font-weight: 700;
  color: var(--mm-midnight);
  margin: 0.5rem 0 1.5rem;
  line-height: 1.25;
}

/* --- Custom select styling (used in consultation form) --- */
select.mm-form__input,
.mm-form__select {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23262F40' d='M5 6L0 0h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.875rem center;
  background-size: 10px 6px;
  padding-right: 2.5rem;
  cursor: pointer;
}

/* Date input — line up with text inputs */
input[type="date"].mm-form__input {
  font-family: var(--mm-font-body);
  color: var(--mm-midnight);
  min-height: calc(0.9375rem * 1.5 + 0.75rem * 2 + 2px);
}

/* --- Direct contact note at the foot of the form column --- */
.mm-consult-direct {
  margin-top: clamp(2.5rem, 4vw, 3rem);
  padding-top: clamp(1.5rem, 3vw, 2rem);
  border-top: 1px solid rgba(123, 134, 193, 0.25);
  text-align: center;
}

.mm-consult-direct p {
  font-size: 0.9375rem;
  color: var(--mm-text-muted);
  line-height: 1.7;
  margin: 0;
  max-width: 540px;
  margin-inline: auto;
}

.mm-consult-direct a {
  color: var(--mm-coral);
  text-decoration: none;
  font-weight: 600;
}

.mm-consult-direct a:hover {
  text-decoration: underline;
  opacity: 1;
}


/* --- Timeline hover progression
   Hovering a step colours that step's circle and every preceding step's
   circle (plus the lines between them), giving a sense of passing through stages.
   Uses :has() — supported in all current evergreen browsers. */
.mm-timeline__number {
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.mm-timeline__step:not(:last-child)::before {
  transition: background-color 0.25s ease, opacity 0.25s ease;
}

.mm-timeline__step:hover .mm-timeline__number,
.mm-timeline__step:has(~ .mm-timeline__step:hover) .mm-timeline__number {
  background: var(--mm-midnight);
}

.mm-timeline__step:hover .mm-timeline__number {
  transform: scale(1.06);
}

.mm-timeline__step:has(~ .mm-timeline__step:hover):not(:last-child)::before {
  background: var(--mm-midnight);
  opacity: 0.45;
}

/* === Mediamatic Layout & Section Standards (aa719c2) === */
/* ============================================================
   MEDIAMATIC SECTION HEADING STANDARD
   Shared H2 sizing for normal content sections.
   Hero H2s remain governed by MEDIAMATIC HERO STANDARD.
============================================================ */

:root {
  --mm-section-heading-size: clamp(1.75rem, 3.2vw, 2.65rem);
  --mm-section-heading-size-mobile: clamp(1.65rem, 9vw, 2.35rem);
  --mm-section-heading-line-height: 1.08;
}

.mm-section__header--center > h2,
.mm-guide__text > h2,
.success-path__intro > h2,
.mm-section--proof .mm-section__header--center > h2,
.final-cta > h2,
.service-problems__intro > h2,
.mm-about-intro__lead > h2,
.mm-about-cta > h2,
.mm-consult-intro > h2 {
  font-size: var(--mm-section-heading-size) !important;
  line-height: var(--mm-section-heading-line-height) !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
}

@media (max-width: 599px) {
  .mm-section__header--center > h2,
  .mm-guide__text > h2,
  .success-path__intro > h2,
  .mm-section--proof .mm-section__header--center > h2,
  .final-cta > h2,
  .service-problems__intro > h2,
  .mm-about-intro__lead > h2,
  .mm-about-cta > h2,
  .mm-consult-intro > h2 {
    font-size: var(--mm-section-heading-size-mobile) !important;
    line-height: 1.1 !important;
  }
}

/* ============================================================\n   MEDIAMATIC RESPONSIVE GUARDRAILS\n   Mobile guardrails for shared Etch layouts.\n============================================================ */

html, body {
  max-width: 100%;
  overflow-x: clip;
}

.mm-container,
.hero__grid,
.service-page-hero__grid,
.mm-guide,
.mm-guide__text,
.mm-guide__stats,
.mm-grid,
.mm-card,
.problem-card,
.success-path,
.success-path__intro,
.success-path__outcomes,
.success-path__outcome,
.service-problems__grid,
.service-link-list,
.service-link,
.mm-contact-grid,
.mm-consult-grid,
.mm-support-route-grid,
.mm-support-faq-grid,
.mm-support-split,
.mm-support-cta {
  min-width: 0;
}

h1, h2, h3, h4, h5, h6,
.mm-card__title,
.problem-card__title,
.service-link strong,
.success-path__outcome h3,
.mm-support-route-card__title,
.mm-support-faq-group__title {
  overflow-wrap: normal;
  word-break: normal;
  hyphens: manual;
}

@media (max-width: 899px) {
  .mm-guide,
  .service-problems__grid,
  .success-path,
  .mm-contact-grid,
  .mm-consult-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .hero__grid,
  .service-page-hero__grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .mm-guide__text {
    max-width: 720px;
  }
}

@media (max-width: 599px) {
  .mm-container {
    padding-inline: 1rem;
  }

  .mm-guide__text > h2,
  .success-path__intro > h2,
  .service-problems__intro > h2,
  .mm-section__header--center > h2,
  .final-cta > h2 {
    text-wrap: balance;
    max-width: 100%;
  }

  .hero__actions,
  .mm-about-cta__actions {
    align-items: stretch;
  }

  .hero__actions .mm-btn,
  .mm-about-cta__actions .mm-btn {
    width: 100%;
  }
}

/* === Mediamatic Support Hub (a9e137c) === */
/* ============================================================
   MEDIAMATIC SUPPORT HUB
   Help centre, FAQ navigation and live support ticket routes
============================================================ */

.mm-support-hero {
  padding-bottom: clamp(2.5rem, 6vw, 5rem);
}

.mm-support-hero .service-page-hero__grid {
  grid-template-columns: minmax(0, 0.98fr) minmax(300px, 0.62fr);
  align-items: center;
}

.mm-support-hero-card {
  display: grid;
  gap: 0.85rem;
  padding: clamp(1.5rem, 3vw, 2rem);
  border: 1px solid rgba(227, 230, 241, 0.24);
  border-radius: var(--mm-radius-lg);
  background: rgba(38, 47, 64, 0.5);
  box-shadow: inset 0 0 0 1px rgba(123, 134, 193, 0.16);
}

.mm-support-hero-card__label {
  font-family: var(--mm-font-body);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--mm-coral);
}

.mm-support-hero-card__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 48px;
  padding: 0.85rem 1rem;
  border: 1px solid rgba(227, 230, 241, 0.16);
  border-radius: var(--mm-radius-sm);
  background: rgba(245, 245, 245, 0.05);
  color: var(--mm-near-white);
  font-weight: 700;
  line-height: 1.25;
}

.mm-support-hero-card__status {
  color: var(--mm-text-on-dark-muted);
  font-size: 0.78rem;
  font-weight: 600;
  white-space: nowrap;
}

.mm-support-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: clamp(2rem, 4vw, 3rem);
  padding: 0.75rem;
  border: 1px solid rgba(227, 230, 241, 0.22);
  border-radius: var(--mm-radius-lg);
  background: rgba(38, 47, 64, 0.66);
}

.mm-support-nav--light {
  margin-top: 0;
  border-color: rgba(123, 134, 193, 0.28);
  background: var(--mm-white);
}

.mm-support-nav__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0.65rem 1.05rem;
  border: 1px solid transparent;
  border-radius: 999px;
  color: var(--mm-near-white);
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.1;
  text-align: center;
}

.mm-support-nav--light .mm-support-nav__link {
  color: var(--mm-midnight);
}

.mm-support-nav__link:hover,
.mm-support-nav__link--active {
  opacity: 1;
  color: var(--mm-white);
  border-color: var(--mm-coral);
  background: var(--mm-coral);
}

.mm-support-nav__link--future {
  border-color: rgba(235, 100, 98, 0.34);
  color: var(--mm-coral);
  background: rgba(235, 100, 98, 0.08);
}

.mm-support-routes {
  border-top: 1px solid rgba(123, 134, 193, 0.18);
}

.mm-support-route-grid,
.mm-support-faq-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}

.mm-support-route-card,
.mm-support-faq-group,
.mm-support-ticket-note {
  border: 1px solid rgba(123, 134, 193, 0.24);
  border-radius: var(--mm-radius-lg);
  background: var(--mm-white);
  box-shadow: 0 12px 30px rgba(38, 47, 64, 0.06);
}

.mm-support-route-card {
  display: flex;
  flex-direction: column;
  min-height: 250px;
  padding: clamp(1.5rem, 3vw, 2rem);
  transition: border-color var(--mm-transition), transform var(--mm-transition), box-shadow var(--mm-transition);
}

.mm-support-route-card:hover {
  opacity: 1;
  border-color: rgba(235, 100, 98, 0.7);
  transform: translateY(-2px);
  box-shadow: 0 16px 36px rgba(38, 47, 64, 0.1);
}

.mm-support-route-card__label {
  font-family: var(--mm-font-body);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--mm-coral);
  margin-bottom: 1rem;
}

.mm-support-route-card__title {
  margin-bottom: 0.85rem;
  font-size: clamp(1.12rem, 1.8vw, 1.38rem);
  line-height: 1.2;
}

.mm-support-route-card__text {
  color: var(--mm-text-muted);
  font-size: 0.95rem;
  line-height: 1.65;
}

.mm-support-route-card__link {
  margin-top: auto;
  padding-top: 1.25rem;
  color: var(--mm-coral);
  font-size: 0.875rem;
  font-weight: 700;
}

.mm-support-split {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(320px, 1.1fr);
  gap: clamp(2rem, 5vw, 4rem);
  align-items: start;
}

.mm-support-link-list {
  display: grid;
  gap: 0.75rem;
}

.mm-support-link-list__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 58px;
  padding: 1rem 1.1rem;
  border: 1px solid rgba(123, 134, 193, 0.24);
  border-radius: var(--mm-radius-md);
  background: var(--mm-white);
  color: var(--mm-midnight);
  font-weight: 700;
}

.mm-support-link-list__item::after {
  content: '->';
  color: var(--mm-coral);
}

.mm-support-faq-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mm-support-faq-group {
  padding: clamp(1.35rem, 3vw, 1.85rem);
}

.mm-support-faq-group__title {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(123, 134, 193, 0.22);
  font-size: clamp(1.12rem, 1.8vw, 1.38rem);
}

.mm-support-faq-item {
  padding: 1rem 0;
  border-bottom: 1px solid rgba(123, 134, 193, 0.16);
}

.mm-support-faq-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.mm-support-faq-item__question {
  cursor: pointer;
  color: var(--mm-midnight);
  font-weight: 700;
  line-height: 1.35;
}

.mm-support-faq-item__answer {
  margin-top: 0.75rem;
  color: var(--mm-text-muted);
  font-size: 0.9375rem;
  line-height: 1.65;
}

.mm-support-ticket-note {
  padding: clamp(1.5rem, 4vw, 2.5rem);
}

.mm-section--dark .mm-support-ticket-note {
  border-color: rgba(227, 230, 241, 0.2);
  background: rgba(245, 245, 245, 0.05);
  box-shadow: none;
}

.mm-support-ticket-note__title {
  margin-bottom: 0.8rem;
}

.mm-support-ticket-note__text {
  max-width: 760px;
  color: inherit;
  opacity: 0.82;
  line-height: 1.7;
}

.mm-support-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.5rem;
  align-items: center;
  margin-top: clamp(2rem, 5vw, 3rem);
  padding: clamp(1.5rem, 4vw, 2.5rem);
  border: 1px solid rgba(123, 134, 193, 0.24);
  border-radius: var(--mm-radius-lg);
  background: var(--mm-white);
}

.mm-support-cta__title {
  margin-bottom: 0.7rem;
}

.mm-support-cta__text {
  color: var(--mm-text-muted);
  line-height: 1.65;
}

.mm-support-nav-section {
  padding-block: clamp(1.25rem, 3vw, 2rem);
}

@media (max-width: 899px) {
  .mm-support-hero .service-page-hero__grid,
  .mm-support-route-grid,
  .mm-support-faq-grid,
  .mm-support-split,
  .mm-support-cta {
    grid-template-columns: 1fr;
  }

  .mm-support-cta .mm-btn {
    justify-self: start;
  }
}

@media (max-width: 599px) {
  .mm-support-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .mm-support-nav__link {
    min-height: 46px;
    padding-inline: 0.75rem;
  }

  .mm-support-route-card {
    min-height: auto;
  }

  .mm-support-cta .mm-btn {
    width: 100%;
  }
}

/* === Mediamatic Footer Newsletter (5fa15cd) === */
/* ============================================================
   MEDIAMATIC FOOTER NEWSLETTER
   Warm patterned break between dark page sections and dark footer.
============================================================ */

.site-footer--enhanced {
  padding-block-start: 0;
}

.site-footer-newsletter {
  position: relative;
  isolation: isolate;
  padding: clamp(1.35rem, 3vw, 2.35rem) 0 clamp(1.85rem, 4vw, 3.25rem);
  background:
    linear-gradient(90deg, rgba(38, 47, 64, 0.055) 1px, transparent 1px),
    linear-gradient(0deg, rgba(38, 47, 64, 0.045) 1px, transparent 1px),
    linear-gradient(135deg, #f6efe1 0%, #fff8ec 48%, #eef4f5 100%);
  background-size: 42px 42px, 42px 42px, auto;
  border-top: 1px solid rgba(38, 47, 64, 0.12);
  border-bottom: 1px solid rgba(38, 47, 64, 0.12);
}

.site-footer-newsletter + .mm-container {
  padding-top: clamp(2rem, 4vw, 3.25rem);
}

.site-footer-newsletter::before,
.site-footer-newsletter__wrap::after {
  content: none;
  display: none;
}

.site-footer-newsletter__wrap {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(1rem, 2vw, 1.45rem);
  align-items: start;
  padding: clamp(1.15rem, 2.6vw, 1.9rem);
  border: 1px solid rgba(255, 253, 250, 0.18);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255, 253, 250, 0.13), rgba(255, 253, 250, 0.045)),
    rgba(23, 33, 48, 0.94);
  box-shadow: 0 20px 58px rgba(38, 47, 64, 0.22);
  overflow: hidden;
}

.site-footer-newsletter__copy,
.site-footer-newsletter__title,
.site-footer-newsletter__text,
.site-footer-newsletter__form,
.site-footer-newsletter__fields {
  max-width: none;
  width: 100%;
}

.site-footer-newsletter__eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  margin: 0 0 0.55rem;
  padding: 0.32rem 0.6rem;
  border: 1px solid rgba(240, 100, 95, 0.44);
  border-radius: 999px;
  color: #fffdfa;
  background: rgba(240, 100, 95, 0.18);
  font-size: 0.7rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.site-footer-newsletter__title {
  margin: 0;
  color: #fffdfa;
  font-family: var(--mm-font-display);
  font-size: clamp(1.85rem, 3.6vw, 3.25rem);
  font-weight: 800;
  line-height: 1.02;
  text-wrap: balance;
}

.site-footer-newsletter__text {
  margin: 0.72rem 0 0;
  color: #cfd6e5;
  font-size: clamp(0.94rem, 1.2vw, 1.04rem);
  line-height: 1.55;
}

.site-footer-newsletter__form {
  display: grid;
  gap: 0.72rem;
  min-width: 0;
}

.site-footer-newsletter__fields {
  display: grid;
  grid-template-columns: minmax(130px, 0.75fr) minmax(130px, 0.75fr) minmax(240px, 1.35fr) minmax(140px, 0.55fr);
  gap: 0.62rem;
  align-items: stretch;
}

.site-footer-newsletter__field,
.site-footer-newsletter__button {
  min-height: 48px;
  border-radius: 6px;
  font: inherit;
}

.site-footer-newsletter__field {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(255, 253, 250, 0.2);
  color: #172130;
  background: #fffdfa;
  padding: 0.75rem 0.82rem;
  font-size: 0.9rem;
  line-height: 1.1;
  box-shadow: inset 0 0 0 1px rgba(23, 33, 48, 0.03);
}

.site-footer-newsletter__field::placeholder {
  color: #6f778a;
  opacity: 1;
}

.site-footer-newsletter__field:focus-visible {
  outline: 3px solid rgba(244, 197, 107, 0.42);
  outline-offset: 2px;
  border-color: #f4c56b;
}

.site-footer-newsletter__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(240, 100, 95, 0.95);
  color: #fffdfa;
  background: linear-gradient(135deg, var(--mm-coral), #c94b56);
  padding: 0.75rem 1rem;
  font-size: 0.9rem;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(240, 100, 95, 0.22);
}

.site-footer-newsletter__button:hover,
.site-footer-newsletter__button:focus-visible {
  border-color: #f4c56b;
  background: linear-gradient(135deg, #f4c56b, var(--mm-coral));
  color: #172130;
  opacity: 1;
}

.site-footer-newsletter__consent {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 0.55rem;
  align-items: start;
  margin: 0;
  color: #d9dfeb;
  font-size: 0.78rem;
  line-height: 1.38;
}

.site-footer-newsletter__consent input {
  width: 16px;
  height: 16px;
  margin: 0.1rem 0 0;
  accent-color: var(--mm-coral);
}

.site-footer-newsletter__honeypot,
.site-footer-newsletter__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 900px) {
  .site-footer-newsletter__fields {
    grid-template-columns: 1fr 1fr;
  }

  .site-footer-newsletter__field--email,
  .site-footer-newsletter__button {
    grid-column: span 2;
  }
}

@media (max-width: 560px) {
  .site-footer-newsletter {
    padding-block: 1rem 1.6rem;
  }

  .site-footer-newsletter + .mm-container {
    padding-top: 1.75rem;
  }

  .site-footer-newsletter__wrap {
    padding: 1rem;
  }

  .site-footer-newsletter__title {
    font-size: clamp(1.65rem, 10vw, 2.35rem);
  }

  .site-footer-newsletter__fields {
    grid-template-columns: 1fr;
  }

  .site-footer-newsletter__field--email,
  .site-footer-newsletter__button {
    grid-column: auto;
  }
}

/* === Mediamatic Ticket System (7b57cf8) === */
/* ============================================================
   MEDIAMATIC TICKET SYSTEM
   Support ticket page and form styling.
============================================================ */

.mm-ticket-hero-card {
  display: grid;
  gap: 0.9rem;
  padding: clamp(1.35rem, 3vw, 2rem);
  border: 1px solid rgba(227, 230, 241, 0.24);
  border-radius: var(--mm-radius-lg);
  background: rgba(38, 47, 64, 0.55);
  box-shadow: inset 0 0 0 1px rgba(123, 134, 193, 0.14);
}

.mm-ticket-hero-card__item {
  display: grid;
  gap: 0.25rem;
  padding: 0.95rem 1rem;
  border: 1px solid rgba(227, 230, 241, 0.16);
  border-radius: var(--mm-radius-sm);
  background: rgba(245, 245, 245, 0.055);
}

.mm-ticket-hero-card__item span {
  color: var(--mm-coral);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.mm-ticket-hero-card__item strong {
  color: var(--mm-near-white);
  font-size: 1rem;
  line-height: 1.25;
}

.mm-ticket-layout {
  display: grid;
  grid-template-columns: minmax(260px, 0.58fr) minmax(0, 1.42fr);
  gap: clamp(2rem, 5vw, 4rem);
  align-items: start;
}

.mm-ticket-aside {
  position: sticky;
  top: 6rem;
}

.mm-ticket-panel {
  padding: clamp(1.35rem, 3vw, 2rem);
  border: 1px solid rgba(123, 134, 193, 0.24);
  border-radius: var(--mm-radius-lg);
  background: var(--mm-white);
  box-shadow: 0 14px 34px rgba(38, 47, 64, 0.07);
}

.mm-ticket-panel h3 {
  margin-bottom: 0.85rem;
  font-size: clamp(1.2rem, 2vw, 1.45rem);
}

.mm-ticket-panel p {
  color: var(--mm-text-muted);
  font-size: 0.95rem;
  line-height: 1.7;
}

.mm-ticket-list {
  display: grid;
  gap: 0.75rem;
  margin: 1.25rem 0 0;
  padding: 0;
  list-style: none;
}

.mm-ticket-list li {
  display: grid;
  grid-template-columns: 1.25rem minmax(0, 1fr);
  gap: 0.65rem;
  color: var(--mm-midnight);
  font-size: 0.9rem;
  line-height: 1.45;
}

.mm-ticket-list li::before {
  content: "";
  width: 0.72rem;
  height: 0.72rem;
  margin-top: 0.34rem;
  border-radius: 50%;
  background: var(--mm-coral);
  box-shadow: 0 0 0 4px rgba(235, 100, 98, 0.12);
}

.mm-ticket-form,
.mm-ticket-notice {
  border-radius: var(--mm-radius-lg);
}

.mm-ticket-form {
  padding: clamp(1.2rem, 3vw, 2rem);
  border: 1px solid rgba(123, 134, 193, 0.26);
  background: var(--mm-white);
  box-shadow: 0 18px 44px rgba(38, 47, 64, 0.08);
}

.mm-ticket-notice {
  margin: 0 0 1rem;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(123, 134, 193, 0.24);
  background: var(--mm-white);
  color: var(--mm-midnight);
  font-weight: 700;
}

.mm-ticket-notice--success {
  border-color: rgba(72, 158, 116, 0.35);
  background: #edf8f1;
}

.mm-ticket-notice--error {
  border-color: rgba(235, 100, 98, 0.4);
  background: #fff0ef;
}

.mm-ticket-honeypot {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.mm-ticket-grid {
  display: grid;
  gap: 1rem;
}

.mm-ticket-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mm-ticket-grid__full {
  grid-column: 1 / -1;
}

.mm-ticket-form label {
  display: grid;
  gap: 0.45rem;
  color: var(--mm-midnight);
  font-size: 0.84rem;
  font-weight: 800;
  line-height: 1.35;
}

.mm-ticket-form input[type="text"],
.mm-ticket-form input[type="email"],
.mm-ticket-form input[type="url"],
.mm-ticket-form select,
.mm-ticket-form textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(123, 134, 193, 0.3);
  border-radius: var(--mm-radius-sm);
  background: #fffdfa;
  color: var(--mm-midnight);
  padding: 0.78rem 0.86rem;
  font: inherit;
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.35;
}

.mm-ticket-file-field {
  padding: 1rem;
  border: 1px dashed rgba(123, 134, 193, 0.42);
  border-radius: var(--mm-radius-sm);
  background: #fffdfa;
}

.mm-ticket-form input[type="file"] {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(123, 134, 193, 0.24);
  border-radius: var(--mm-radius-sm);
  background: var(--mm-white);
  color: var(--mm-text-muted);
  padding: 0.72rem;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 600;
}

.mm-ticket-form input[type="file"]::file-selector-button {
  margin-right: 0.85rem;
  border: 0;
  border-radius: 6px;
  background: var(--mm-midnight);
  color: var(--mm-white);
  padding: 0.62rem 0.82rem;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 800;
  cursor: pointer;
}

.mm-ticket-file-help {
  margin: -0.35rem 0 0;
  color: var(--mm-text-muted);
  font-size: 0.84rem;
  line-height: 1.55;
}

.mm-ticket-form select {
  appearance: none;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23262F40' d='M5 6L0 0h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.875rem center;
  background-size: 10px 6px;
  padding-right: 2.5rem;
}

.mm-ticket-form textarea {
  resize: vertical;
}

.mm-ticket-form input:focus-visible,
.mm-ticket-form select:focus-visible,
.mm-ticket-form textarea:focus-visible {
  outline: 3px solid rgba(235, 100, 98, 0.18);
  outline-offset: 2px;
  border-color: var(--mm-coral);
}

.mm-ticket-guidance {
  margin: 1rem 0;
  padding: 1rem;
  border-left: 3px solid var(--mm-coral);
  background: #fff8ec;
  color: var(--mm-text-muted);
  font-size: 0.9rem;
  line-height: 1.65;
}

.mm-ticket-consent {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 0.65rem !important;
  align-items: start;
  color: var(--mm-text-muted) !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
}

.mm-ticket-consent input {
  margin-top: 0.2rem;
  accent-color: var(--mm-coral);
}

.mm-ticket-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  margin-top: 1.25rem;
  padding: 0.82rem 1.25rem;
  border: 1px solid var(--mm-coral);
  border-radius: var(--mm-radius-sm);
  background: var(--mm-coral);
  color: var(--mm-white);
  font-size: 0.92rem;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
}

.mm-ticket-submit:hover {
  border-color: var(--mm-coral-dark);
  background: var(--mm-coral-dark);
  opacity: 1;
}

.mm-ticket-next-step-section {
  border-top: 1px solid rgba(38, 47, 64, 0.12);
}

.mm-ticket-next-step {
  display: grid;
  justify-items: center;
  gap: 0.85rem;
  max-width: 820px;
  margin-inline: auto;
  padding: clamp(1.5rem, 4vw, 2.25rem);
  border: 1px solid rgba(123, 134, 193, 0.24);
  border-radius: var(--mm-radius-lg);
  background: #fffdfa;
  text-align: center;
  box-shadow: 0 18px 44px rgba(38, 47, 64, 0.08);
}

.mm-ticket-next-step .mm-overline {
  margin-bottom: 0;
}

.mm-ticket-next-step h2 {
  max-width: 680px;
  margin: 0;
  font-size: clamp(1.65rem, 3vw, 2.25rem);
  line-height: 1.12;
}

.mm-ticket-next-step .mm-section__subtitle {
  max-width: 650px;
  margin: 0;
  color: var(--mm-text-muted);
  font-size: 1rem;
  line-height: 1.7;
}

.mm-ticket-next-step__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
  margin-top: 0.35rem;
}

.mm-ticket-next-step__actions .mm-btn {
  min-width: 180px;
}

@media (max-width: 999px) {
  .mm-ticket-layout {
    grid-template-columns: 1fr;
  }

  .mm-ticket-aside {
    position: static;
  }
}

@media (max-width: 699px) {
  .mm-ticket-grid--2 {
    grid-template-columns: 1fr;
  }

  .mm-ticket-grid__full {
    grid-column: auto;
  }

  .mm-ticket-submit,
  .mm-ticket-next-step__actions,
  .mm-ticket-next-step__actions .mm-btn {
    width: 100%;
  }
}

/* === Mediamatic Privacy Policy (1d59801) === */
/* ============================================================
   MEDIAMATIC PRIVACY POLICY
   Privacy page layout and policy content styling.
============================================================ */

.mm-privacy-hero .hero__subtitle {
  max-width: 720px;
}

.mm-privacy-main {
  background: #fffdfa;
}

.mm-privacy-layout {
  display: grid;
  grid-template-columns: minmax(220px, 0.28fr) minmax(0, 0.72fr);
  gap: clamp(2rem, 6vw, 4.5rem);
  align-items: start;
}

.mm-privacy-toc {
  position: sticky;
  top: 6.5rem;
  border-top: 1px solid rgba(25, 35, 52, 0.14);
  border-bottom: 1px solid rgba(25, 35, 52, 0.14);
  padding-block: 1rem;
}

.mm-privacy-toc strong {
  display: block;
  margin-bottom: 0.8rem;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: 1rem;
  line-height: 1.2;
}

.mm-privacy-toc a {
  display: block;
  padding: 0.42rem 0;
  color: var(--mm-text-muted);
  font-size: 0.92rem;
  line-height: 1.35;
  text-decoration: none;
}

.mm-privacy-toc a:hover {
  color: var(--mm-coral);
  opacity: 1;
}

.mm-privacy-article {
  max-width: 860px;
}

.mm-privacy-updated {
  display: inline-flex;
  margin-bottom: clamp(1.5rem, 3vw, 2rem);
  border: 1px solid rgba(25, 35, 52, 0.13);
  border-radius: 999px;
  padding: 0.45rem 0.75rem;
  background: rgba(25, 35, 52, 0.035);
  color: var(--mm-text-muted);
  font-size: 0.84rem;
  font-weight: 800;
  line-height: 1.2;
}

.mm-privacy-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-bottom: clamp(2rem, 5vw, 3rem);
  border-top: 1px solid rgba(25, 35, 52, 0.13);
  border-bottom: 1px solid rgba(25, 35, 52, 0.13);
}

.mm-privacy-summary__item {
  padding: clamp(1rem, 2.5vw, 1.35rem);
}

.mm-privacy-summary__item + .mm-privacy-summary__item {
  border-left: 1px solid rgba(25, 35, 52, 0.11);
}

.mm-privacy-summary__item span {
  display: block;
  margin-bottom: 0.55rem;
  color: var(--mm-coral);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  line-height: 1;
  text-transform: uppercase;
}

.mm-privacy-summary__item p {
  margin: 0;
  color: var(--mm-text-body);
  font-size: 0.94rem;
  line-height: 1.6;
}

.mm-privacy-section {
  padding-block: clamp(1.7rem, 4vw, 2.4rem);
  border-top: 1px solid rgba(25, 35, 52, 0.11);
  scroll-margin-top: 7rem;
}

.mm-privacy-section:first-of-type {
  border-top: 0;
  padding-top: 0;
}

.mm-privacy-section h2 {
  margin: 0 0 0.9rem;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  line-height: 1.16;
}

.mm-privacy-section h3 {
  margin: 1.35rem 0 0.55rem;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: clamp(1.05rem, 1.7vw, 1.28rem);
  line-height: 1.2;
}

.mm-privacy-section p,
.mm-privacy-section li {
  color: var(--mm-text-muted);
  font-size: 1rem;
  line-height: 1.75;
}

.mm-privacy-section p {
  margin: 0;
}

.mm-privacy-section p + p,
.mm-privacy-section ul + p,
.mm-privacy-section p + ul {
  margin-top: 0.9rem;
}

.mm-privacy-section ul {
  display: grid;
  gap: 0.55rem;
  margin: 0.9rem 0 0;
  padding-left: 1.1rem;
}

.mm-privacy-section a {
  color: var(--mm-coral);
  font-weight: 800;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.24em;
}

.mm-privacy-basis-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin-top: 1.1rem;
  border-top: 1px solid rgba(25, 35, 52, 0.13);
  border-left: 1px solid rgba(25, 35, 52, 0.13);
}

.mm-privacy-basis {
  padding: clamp(1rem, 2.4vw, 1.25rem);
  border-right: 1px solid rgba(25, 35, 52, 0.13);
  border-bottom: 1px solid rgba(25, 35, 52, 0.13);
  background: #fff;
}

.mm-privacy-basis strong {
  display: block;
  margin-bottom: 0.45rem;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  line-height: 1.2;
}

.mm-privacy-basis p {
  font-size: 0.94rem;
  line-height: 1.62;
}

.mm-privacy-note {
  margin-top: 1.1rem;
  border-left: 4px solid var(--mm-coral);
  padding: 1rem 1.1rem;
  background: rgba(240, 100, 95, 0.08);
}

.mm-privacy-note p {
  color: var(--mm-midnight);
  font-weight: 700;
}

.mm-privacy-cta {
  border-top: 1px solid rgba(217, 212, 202, 0.16);
  border-bottom: 1px solid rgba(217, 212, 202, 0.16);
  padding-block: clamp(2rem, 5vw, 3rem);
}

.mm-privacy-cta__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(1.5rem, 4vw, 2.5rem);
  align-items: center;
}

.mm-privacy-cta h2 {
  margin: 0 0 0.6rem;
  color: var(--mm-near-white);
}

.mm-privacy-cta p {
  max-width: 680px;
  margin: 0;
  color: var(--mm-text-on-dark-muted);
  line-height: 1.72;
}

@media (max-width: 980px) {
  .mm-privacy-layout,
  .mm-privacy-cta__inner {
    grid-template-columns: 1fr;
  }

  .mm-privacy-toc {
    position: static;
  }
}

@media (max-width: 720px) {
  .mm-privacy-summary,
  .mm-privacy-basis-grid {
    grid-template-columns: 1fr;
  }

  .mm-privacy-summary__item + .mm-privacy-summary__item {
    border-left: 0;
    border-top: 1px solid rgba(25, 35, 52, 0.11);
  }
}

/* === Mediamatic Terms Page (66ee232) === */
/* ============================================================
   MEDIAMATIC TERMS PAGE
   Website terms layout, aligned with Privacy Policy styling.
============================================================ */

.mm-terms-hero .hero__subtitle {
  max-width: 720px;
}

.mm-terms-main {
  background: #fffdfa;
}

.mm-terms-layout {
  display: grid;
  grid-template-columns: minmax(220px, 0.28fr) minmax(0, 0.72fr);
  gap: clamp(2rem, 6vw, 4.5rem);
  align-items: start;
}

.mm-terms-toc {
  position: sticky;
  top: 6.5rem;
  border-top: 1px solid rgba(25, 35, 52, 0.14);
  border-bottom: 1px solid rgba(25, 35, 52, 0.14);
  padding-block: 1rem;
}

.mm-terms-toc strong {
  display: block;
  margin-bottom: 0.8rem;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: 1rem;
  line-height: 1.2;
}

.mm-terms-toc a {
  display: block;
  padding: 0.42rem 0;
  color: var(--mm-text-muted);
  font-size: 0.92rem;
  line-height: 1.35;
  text-decoration: none;
}

.mm-terms-toc a:hover {
  color: var(--mm-coral);
  opacity: 1;
}

.mm-terms-article {
  max-width: 860px;
}

.mm-terms-updated {
  display: inline-flex;
  margin-bottom: clamp(1.5rem, 3vw, 2rem);
  border: 1px solid rgba(25, 35, 52, 0.13);
  border-radius: 999px;
  padding: 0.45rem 0.75rem;
  background: rgba(25, 35, 52, 0.035);
  color: var(--mm-text-muted);
  font-size: 0.84rem;
  font-weight: 800;
  line-height: 1.2;
}

.mm-terms-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-bottom: clamp(2rem, 5vw, 3rem);
  border-top: 1px solid rgba(25, 35, 52, 0.13);
  border-bottom: 1px solid rgba(25, 35, 52, 0.13);
}

.mm-terms-summary__item {
  padding: clamp(1rem, 2.5vw, 1.35rem);
}

.mm-terms-summary__item + .mm-terms-summary__item {
  border-left: 1px solid rgba(25, 35, 52, 0.11);
}

.mm-terms-summary__item span {
  display: block;
  margin-bottom: 0.55rem;
  color: var(--mm-coral);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  line-height: 1;
  text-transform: uppercase;
}

.mm-terms-summary__item p {
  margin: 0;
  color: var(--mm-text-body);
  font-size: 0.94rem;
  line-height: 1.6;
}

.mm-terms-section {
  padding-block: clamp(1.7rem, 4vw, 2.4rem);
  border-top: 1px solid rgba(25, 35, 52, 0.11);
  scroll-margin-top: 7rem;
}

.mm-terms-section:first-of-type {
  border-top: 0;
  padding-top: 0;
}

.mm-terms-section h2 {
  margin: 0 0 0.9rem;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  line-height: 1.16;
}

.mm-terms-section h3 {
  margin: 1.35rem 0 0.55rem;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: clamp(1.05rem, 1.7vw, 1.28rem);
  line-height: 1.2;
}

.mm-terms-section p,
.mm-terms-section li {
  color: var(--mm-text-muted);
  font-size: 1rem;
  line-height: 1.75;
}

.mm-terms-section p {
  margin: 0;
}

.mm-terms-section p + p,
.mm-terms-section ul + p,
.mm-terms-section p + ul {
  margin-top: 0.9rem;
}

.mm-terms-section ul {
  display: grid;
  gap: 0.55rem;
  margin: 0.9rem 0 0;
  padding-left: 1.1rem;
}

.mm-terms-section a {
  color: var(--mm-coral);
  font-weight: 800;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.24em;
}

.mm-terms-note {
  margin-top: 1.1rem;
  border-left: 4px solid var(--mm-coral);
  padding: 1rem 1.1rem;
  background: rgba(240, 100, 95, 0.08);
}

.mm-terms-note p {
  color: var(--mm-midnight);
  font-weight: 700;
}

.mm-terms-cta {
  border-top: 1px solid rgba(217, 212, 202, 0.16);
  border-bottom: 1px solid rgba(217, 212, 202, 0.16);
  padding-block: clamp(2rem, 5vw, 3rem);
}

.mm-terms-cta__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(1.5rem, 4vw, 2.5rem);
  align-items: center;
}

.mm-terms-cta h2 {
  margin: 0 0 0.6rem;
  color: var(--mm-near-white);
}

.mm-terms-cta p {
  max-width: 680px;
  margin: 0;
  color: var(--mm-text-on-dark-muted);
  line-height: 1.72;
}

@media (max-width: 980px) {
  .mm-terms-layout,
  .mm-terms-cta__inner {
    grid-template-columns: 1fr;
  }

  .mm-terms-toc {
    position: static;
  }
}

@media (max-width: 720px) {
  .mm-terms-summary {
    grid-template-columns: 1fr;
  }

  .mm-terms-summary__item + .mm-terms-summary__item {
    border-left: 0;
    border-top: 1px solid rgba(25, 35, 52, 0.11);
  }
}

/* === Mediamatic AI Integrations Page (80c9763) === */
.mm-ai-guide {
  background: var(--mm-white);
}

.mm-ai-guide__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(320px, 1.18fr);
  gap: clamp(2rem, 6vw, 5rem);
  align-items: start;
}

.mm-ai-guide__copy {
  display: grid;
  gap: 1rem;
}

.mm-ai-guide__copy p {
  color: var(--mm-text-muted);
  font-size: clamp(1rem, 1.4vw, 1.08rem);
  line-height: 1.72;
}

.mm-ai-principles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.mm-ai-principle,
.mm-ai-use-case,
.mm-ai-guardrail {
  border: 1px solid rgba(25, 35, 52, 0.14);
  border-radius: 8px;
  background: var(--mm-white);
}

.mm-ai-principle {
  padding: clamp(1.2rem, 3vw, 1.65rem);
}

.mm-ai-principle span,
.mm-ai-use-case span,
.mm-ai-guardrail span {
  display: block;
  margin-bottom: 0.55rem;
  color: var(--mm-coral);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.mm-ai-principle h3,
.mm-ai-use-case h3,
.mm-ai-guardrail h3 {
  margin: 0 0 0.65rem;
  color: var(--mm-midnight);
  font-size: clamp(1.05rem, 1.7vw, 1.28rem);
  line-height: 1.25;
}

.mm-ai-principle p,
.mm-ai-use-case p,
.mm-ai-guardrail p {
  margin: 0;
  color: var(--mm-text-muted);
  line-height: 1.65;
}

.mm-ai-use-cases {
  background: #fffdfa;
}

.mm-ai-use-case-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.mm-ai-use-case {
  min-height: 100%;
  padding: clamp(1.25rem, 3vw, 1.75rem);
}

.mm-ai-guardrails {
  background: var(--mm-white);
}

.mm-ai-guardrails__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr);
  gap: clamp(2rem, 5vw, 4rem);
  align-items: start;
}

.mm-ai-guardrail-list {
  display: grid;
  gap: 1rem;
}

.mm-ai-guardrail {
  padding: clamp(1.15rem, 3vw, 1.55rem);
}

.mm-ai-stakes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: clamp(2rem, 5vw, 3rem);
}

.mm-ai-stake {
  padding: clamp(1.4rem, 3vw, 2rem);
  border-radius: 8px;
}

.mm-ai-stake--without {
  border: 1px solid rgba(25, 35, 52, 0.14);
  background: var(--mm-white);
}

.mm-ai-stake--with {
  border: 1px solid rgba(235, 100, 98, 0.3);
  background: var(--mm-midnight);
  color: var(--mm-near-white);
}

.mm-ai-stake h3 {
  margin: 0 0 0.75rem;
}

.mm-ai-stake ul {
  margin: 0;
  padding-left: 1.15rem;
}

.mm-ai-stake li {
  margin-top: 0.55rem;
  line-height: 1.55;
}

.mm-ai-stake--without li {
  color: var(--mm-text-muted);
}

.mm-ai-stake--with h3,
.mm-ai-stake--with li {
  color: inherit;
}

.mm-ai-dual-cta {
  background: var(--mm-white);
}

.mm-ai-dual-cta__header {
  max-width: 820px;
  margin-bottom: clamp(1.75rem, 4vw, 2.75rem);
}

.mm-ai-dual-cta__header h2 {
  margin-bottom: 0.85rem;
}

.mm-ai-dual-cta__header p {
  max-width: 760px;
  color: var(--mm-text-muted);
  font-size: clamp(1rem, 1.45vw, 1.1rem);
  line-height: 1.72;
}

.mm-ai-dual-cta__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.mm-ai-dual-cta__path {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 100%;
  padding: clamp(1.5rem, 4vw, 2.25rem);
  border: 1px solid rgba(25, 35, 52, 0.14);
  border-radius: 8px;
  background: #fffdfa;
}

.mm-ai-dual-cta__path--network {
  border-color: rgba(235, 100, 98, 0.34);
  background: var(--mm-midnight);
  color: var(--mm-near-white);
}

.mm-ai-dual-cta__label {
  display: block;
  margin-bottom: 0.65rem;
  color: var(--mm-coral);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.mm-ai-dual-cta__path h3 {
  margin: 0 0 0.75rem;
  font-size: clamp(1.2rem, 2vw, 1.55rem);
}

.mm-ai-dual-cta__path p {
  margin: 0 0 1.4rem;
  color: var(--mm-text-muted);
  line-height: 1.7;
}

.mm-ai-dual-cta__path .mm-btn {
  margin-top: auto;
}

.mm-ai-dual-cta__path--network h3,
.mm-ai-dual-cta__path--network p {
  color: inherit;
}

.mm-ai-dual-cta__terms {
  margin-top: 1rem;
  color: var(--mm-text-muted);
  font-size: 0.78rem;
  line-height: 1.55;
}

@media (max-width: 899px) {
  .mm-ai-guide__grid,
  .mm-ai-guardrails__grid,
  .mm-ai-use-case-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 699px) {
  .mm-ai-dual-cta__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 599px) {
  .mm-ai-principles,
  .mm-ai-stakes {
    grid-template-columns: 1fr;
  }
}

/* === AI Compliance StoryBrand Sales Page (5647ab0) === */
.mm-ai-sales-hero{padding-block:clamp(4.5rem,9vw,8rem)}.mm-ai-sales-hero__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr);gap:clamp(3rem,8vw,7rem);align-items:center}.mm-ai-sales-hero__copy{max-width:48rem}.mm-ai-sales-hero h1{max-width:16ch;margin:.35rem 0 1.25rem;color:var(--mm-near-white);font-family:var(--mm-font-display);font-size:clamp(2.25rem,4vw,3.65rem);font-weight:700;line-height:var(--mm-hero-h2-line-height);letter-spacing:-0.02em;overflow-wrap:normal;word-break:normal;hyphens:manual;text-wrap:balance}.mm-ai-sales-hero__copy>p{max-width:43rem;color:#dce5ee;font-size:1.08rem}.mm-ai-sales-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}.mm-ai-sales-hero__link{display:inline-flex;align-items:center;color:#fff;font-size:.86rem;font-weight:700;border-bottom:1px solid #6f8195}.mm-ai-sales-hero__link:hover{color:#f26363}.mm-ai-sales-hero__proof{display:flex;flex-wrap:wrap;gap:.6rem 1.25rem;margin-top:2rem;padding-top:1.25rem;border-top:1px solid #405165}.mm-ai-sales-hero__proof span{color:#dce5ee;font-size:.8rem;font-weight:700}.mm-ai-sales-hero__proof span::before{content:"✓";margin-right:.4rem;color:#f26363}.mm-ai-sales-hero__aside{border:1px solid #405165;background:#1d3047}.mm-ai-sales-hero__aside header{padding:1.25rem;border-bottom:1px solid #405165}.mm-ai-sales-hero__aside header span{color:#f26363;font-size:.74rem;font-weight:750;text-transform:uppercase}.mm-ai-sales-hero__aside header h2{margin:.35rem 0 0;color:#fff;font-size:1.35rem}.mm-ai-sales-hero__aside ol{list-style:none;margin:0;padding:0}.mm-ai-sales-hero__aside li{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1.15rem 1.25rem;border-bottom:1px solid #405165}.mm-ai-sales-hero__aside li:last-child{border-bottom:0}.mm-ai-sales-hero__aside b{color:#f26363}.mm-ai-sales-hero__aside strong{display:block;color:#fff;font-size:.9rem}.mm-ai-sales-hero__aside small{display:block;margin-top:.2rem;color:#aebccc}.mm-ai-sales-problem{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2.5rem,7vw,6rem);align-items:start}.mm-ai-sales-problem__intro{position:sticky;top:7rem}.mm-ai-sales-problem__list{display:grid;gap:1rem}.mm-ai-sales-problem__item{padding:1.5rem;background:#fff;border:1px solid #cbd5df}.mm-ai-sales-problem__item span,.mm-ai-sales-benefit span{display:block;margin-bottom:.45rem;color:#d94f54;font-size:.74rem;font-weight:750;text-transform:uppercase}.mm-ai-sales-problem__item h3{margin:.1rem 0 .55rem}.mm-ai-sales-problem__item p{margin:0;color:#526173}.mm-ai-sales-guide{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.8fr);gap:clamp(2.5rem,7vw,6rem);align-items:center}.mm-ai-sales-guide__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #cbd5df}.mm-ai-sales-guide__facts div{padding:1.35rem;border-right:1px solid #cbd5df;border-bottom:1px solid #cbd5df}.mm-ai-sales-guide__facts div:nth-child(2n){border-right:0}.mm-ai-sales-guide__facts div:nth-last-child(-n+2){border-bottom:0}.mm-ai-sales-guide__facts strong{display:block;color:#18283d;font-size:1.35rem}.mm-ai-sales-guide__facts span{color:#526173;font-size:.8rem}.mm-ai-sales-plan__intro{max-width:50rem;margin:0 auto;text-align:center}.mm-ai-sales-plan{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:2.25rem;background:#405165;border:1px solid #405165}.mm-ai-sales-step{padding:1.75rem;background:#18283d}.mm-ai-sales-step b{display:block;margin-bottom:2rem;color:#f26363;font-size:1.8rem}.mm-ai-sales-step h3{color:#fff}.mm-ai-sales-step p{color:#dce5ee}.mm-ai-sales-step small{display:block;margin-top:1rem;color:#9fb0c3}.mm-ai-sales-success__header{max-width:50rem;margin:0 auto;text-align:center}.mm-ai-sales-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem}.mm-ai-sales-benefit{padding:1.5rem;background:#fff;border:1px solid #cbd5df}.mm-ai-sales-benefit h3{margin-top:0}.mm-ai-sales-benefit p{margin-bottom:0;color:#526173}.mm-ai-sales-stakes{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.75fr);gap:clamp(2.5rem,7vw,6rem);align-items:center}.mm-ai-sales-stakes__figures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #d7dde3}.mm-ai-sales-stakes__figures div{padding:1.5rem;background:#fff}.mm-ai-sales-stakes__figures div+div{border-left:1px solid #d7dde3}.mm-ai-sales-stakes__figures strong{display:block;color:#18283d;font-size:clamp(1.5rem,3vw,2.35rem)}.mm-ai-sales-stakes__figures span{color:#526173;font-size:.82rem}.mm-ai-sales-stakes__note{margin-top:1rem;color:#677689;font-size:.8rem}.mm-ai-sales-detail-link{display:grid;grid-template-columns:1fr auto;gap:1.5rem;align-items:center;margin-top:2rem;padding-block:1.25rem;border-top:1px solid #cbd5df;border-bottom:1px solid #cbd5df}.mm-ai-sales-detail-link p{margin:0;color:#526173}.mm-ai-sales-detail-link a{font-weight:750}.mm-ai-sales-assessment{display:grid;grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);gap:clamp(2.5rem,7vw,6rem);align-items:start}.mm-ai-sales-assessment__intro{position:sticky;top:7rem}.mm-ai-sales-assessment__checks{display:grid;gap:.65rem;margin:1.5rem 0 0;padding:0;list-style:none}.mm-ai-sales-assessment__checks li{color:#33475d}.mm-ai-sales-assessment__checks li::before{content:"✓";margin-right:.55rem;color:#2f907c;font-weight:800}.mm-ai-sales-assessment__form{padding:clamp(1.25rem,4vw,2.25rem);background:#fff;border:1px solid #d7dde3}.mm-ai-sales-assessment__notice{margin-top:1.25rem;padding-top:1rem;border-top:1px solid #cbd5df;color:#677689;font-size:.8rem}.mm-ai-sales-final{text-align:center}.mm-ai-sales-final h2{max-width:18ch;margin-inline:auto;color:#fff}.mm-ai-sales-final p{max-width:44rem;margin-inline:auto;color:#dce5ee}.mm-ai-sales-final .hero__actions{justify-content:center}@media(max-width:900px){.mm-ai-sales-hero__grid,.mm-ai-sales-problem,.mm-ai-sales-guide,.mm-ai-sales-stakes,.mm-ai-sales-assessment{grid-template-columns:1fr}.mm-ai-sales-problem__intro,.mm-ai-sales-assessment__intro{position:static}.mm-ai-sales-plan,.mm-ai-sales-benefits{grid-template-columns:1fr}.mm-ai-sales-hero h1{max-width:18ch}}@media(max-width:560px){.mm-ai-sales-hero__actions{display:grid}.mm-ai-sales-hero__actions .mm-btn{justify-content:center}.mm-ai-sales-guide__facts,.mm-ai-sales-stakes__figures{grid-template-columns:1fr}.mm-ai-sales-guide__facts div{border-right:0}.mm-ai-sales-guide__facts div:nth-last-child(2){border-bottom:1px solid #cbd5df}.mm-ai-sales-stakes__figures div+div{border-left:0;border-top:1px solid #d7dde3}.mm-ai-sales-detail-link{grid-template-columns:1fr}}/* AI SALES STAKES RESPONSIVE FIX */.mm-ai-sales-stakes__figures>div{min-width:0}.mm-ai-sales-stakes__figures strong{max-width:100%;font-size:clamp(1.45rem,2.25vw,2.1rem);line-height:1.05;letter-spacing:-0.02em;overflow-wrap:anywhere}.mm-ai-sales-detail-link__cta{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:44px;padding:.7rem 1rem;border:1px solid #d94f54;color:#d94f54;font-size:.8rem;font-weight:750;line-height:1.2;text-align:center;text-decoration:none}.mm-ai-sales-detail-link__cta span{font-size:1rem;transition:transform .18s ease}.mm-ai-sales-detail-link__cta:hover,.mm-ai-sales-detail-link__cta:focus-visible{background:#d94f54;color:#fff}.mm-ai-sales-detail-link__cta:hover span,.mm-ai-sales-detail-link__cta:focus-visible span{transform:translateX(3px)}@media(max-width:1100px) and (min-width:901px){.mm-ai-sales-stakes{grid-template-columns:minmax(0,1fr) minmax(15rem,.7fr);gap:clamp(2rem,5vw,4rem)}.mm-ai-sales-stakes__figures{grid-template-columns:1fr}.mm-ai-sales-stakes__figures div+div{border-left:0;border-top:1px solid #d7dde3}.mm-ai-sales-stakes__figures strong{overflow-wrap:normal}}@media(max-width:700px){.mm-ai-sales-detail-link{grid-template-columns:1fr}.mm-ai-sales-detail-link__cta{width:100%}}

/* === Mediamatic Newsletter Unsubscribe Page (1fc1278) === */
.mm-newsletter-unsub-hero,
.mm-newsletter-unsub-hero *,
.mm-newsletter-unsub-main,
.mm-newsletter-unsub-main * {
    box-sizing: border-box;
}

.mm-newsletter-unsub-hero {
    background: #162132;
    color: #f7f4ed;
    padding: clamp(64px, 7vw, 98px) 0 clamp(50px, 6vw, 76px);
    position: relative;
    overflow: hidden;
}

.mm-newsletter-unsub-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
    background-size: 64px 64px;
    pointer-events: none;
}

.mm-newsletter-unsub-hero .mm-container,
.mm-newsletter-unsub-main .mm-container {
    width: min(1120px, calc(100% - 44px));
    margin-inline: auto;
    position: relative;
}

.mm-newsletter-unsub-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .62fr);
    gap: clamp(40px, 6vw, 82px);
    align-items: center;
}

.mm-newsletter-unsub-hero__grid > * {
    min-width: 0;
}

.mm-newsletter-unsub-hero h1 {
    max-width: 530px;
    margin: 12px 0 18px;
    color: #f7f4ed;
    font-size: clamp(38px, 4.05vw, 52px);
    line-height: 1.02;
    letter-spacing: 0;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
    text-wrap: balance;
}

.mm-newsletter-unsub-hero p {
    max-width: 620px;
    color: rgba(247,244,237,.86);
    font-size: clamp(16px, 1.45vw, 18px);
    line-height: 1.65;
    margin: 0;
}

.mm-newsletter-unsub-hero__proof {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

.mm-newsletter-unsub-hero__proof span {
    border: 1px solid rgba(247,244,237,.18);
    color: rgba(247,244,237,.9);
    border-radius: 999px;
    padding: 8px 13px;
    font-size: 13px;
}

.mm-newsletter-unsub-card {
    background: #f7f4ed;
    color: #172132;
    border: 1px solid rgba(247,244,237,.22);
    box-shadow: 0 24px 60px rgba(0,0,0,.24);
    padding: clamp(24px, 3vw, 34px);
    min-width: 0;
}

.mm-newsletter-unsub-card span {
    display: block;
    color: #f45f5f;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.mm-newsletter-unsub-card h2 {
    margin: 0 0 12px;
    color: #172132;
    font-size: clamp(22px, 2.05vw, 28px);
    line-height: 1.12;
    letter-spacing: 0;
    overflow-wrap: normal;
    word-break: normal;
    text-wrap: balance;
}

.mm-newsletter-unsub-card p {
    color: #536070;
    font-size: 15px;
    line-height: 1.65;
}

.mm-newsletter-unsub-main {
    background: #f7f4ed;
    padding: clamp(52px, 7vw, 88px) 0;
}

.mm-newsletter-unsubscribe {
    display: grid;
    grid-template-columns: minmax(0, .68fr) minmax(0, 1fr);
    gap: clamp(30px, 5.5vw, 70px);
    align-items: start;
}

.mm-newsletter-unsubscribe > * {
    min-width: 0;
}

.mm-newsletter-unsubscribe__copy .mm-overline,
.mm-newsletter-unsub-hero .mm-overline {
    display: inline-block;
    color: #f45f5f;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.mm-newsletter-unsubscribe__copy h2 {
    margin: 12px 0 16px;
    color: #172132;
    font-size: clamp(28px, 3.5vw, 40px);
    line-height: 1.05;
    letter-spacing: 0;
    text-wrap: balance;
}

.mm-newsletter-unsubscribe__copy p {
    color: #536070;
    font-size: 17px;
    line-height: 1.7;
    margin: 0 0 18px;
}

.mm-newsletter-unsubscribe__list {
    list-style: none;
    margin: 26px 0 0;
    padding: 0;
    border-top: 1px solid #d8dde4;
}

.mm-newsletter-unsubscribe__list li {
    border-bottom: 1px solid #d8dde4;
    padding: 14px 0;
    color: #172132;
    font-weight: 700;
}

.mm-newsletter-unsubscribe__panel {
    background: #fff;
    border: 1px solid #d8dde4;
    box-shadow: 0 18px 44px rgba(22,33,50,.08);
    padding: clamp(24px, 3vw, 34px);
    min-width: 0;
}

.mm-newsletter-unsubscribe__notice {
    background: #f7f4ed;
    border: 1px solid #d8dde4;
    color: #172132;
    padding: 18px 20px;
    margin: 0 0 24px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.65);
}

.mm-newsletter-unsubscribe__notice h2 {
    margin: 0 0 6px;
    font-size: 21px;
    color: #172132;
}

.mm-newsletter-unsubscribe__notice p {
    margin: 0;
    color: #536070;
    line-height: 1.6;
}

.mm-newsletter-unsubscribe__panel h2 {
    max-width: 100%;
    margin: 0 0 10px;
    color: #172132;
    font-size: clamp(24px, 2.35vw, 30px);
    line-height: 1.12;
    letter-spacing: 0;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
    text-wrap: balance;
}

.mm-newsletter-unsubscribe__panel p {
    color: #536070;
    line-height: 1.65;
}

.mm-newsletter-unsubscribe__panel form {
    margin-top: 24px;
}

.mm-newsletter-unsubscribe__panel label {
    display: block;
    color: #172132;
    font-weight: 800;
    margin-bottom: 8px;
}

.mm-newsletter-unsubscribe__panel input[type="email"] {
    width: 100%;
    max-width: 100%;
    min-height: 52px;
    border: 1px solid #ccd3dd;
    background: #fff;
    color: #172132;
    padding: 12px 14px;
    font-size: 16px;
}

.mm-newsletter-unsubscribe__panel input[type="email"]:focus {
    outline: 3px solid rgba(244,95,95,.22);
    border-color: #f45f5f;
}

.mm-newsletter-unsubscribe__button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    max-width: 100%;
    min-height: 52px;
    border: 0;
    background: #f45f5f;
    color: #fff;
    font-weight: 800;
    padding: 14px 22px;
    cursor: pointer;
    text-decoration: none;
    text-align: center;
    white-space: normal;
}

.mm-newsletter-unsubscribe__button:hover,
.mm-newsletter-unsubscribe__button:focus {
    background: #de4d4d;
    color: #fff;
}

.mm-newsletter-unsubscribe__email {
    word-break: break-word;
}

.mm-newsletter-unsubscribe__status,
.mm-newsletter-unsubscribe__confirm {
    display: none;
}

body.mm-newsletter-unsub-state-sent .mm-newsletter-unsubscribe__status--sent,
body.mm-newsletter-unsub-state-unsubscribed .mm-newsletter-unsubscribe__status--unsubscribed,
body.mm-newsletter-unsub-state-invalid .mm-newsletter-unsubscribe__status--invalid,
body.mm-newsletter-unsub-state-confirm .mm-newsletter-unsubscribe__confirm {
    display: block;
}

body.mm-newsletter-unsub-state-confirm .mm-newsletter-unsubscribe__request,
body.mm-newsletter-unsub-state-unsubscribed .mm-newsletter-unsubscribe__request {
    display: none;
}

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

@media (max-width: 820px) {
    .mm-newsletter-unsub-hero__grid,
    .mm-newsletter-unsubscribe {
        grid-template-columns: 1fr;
    }

    .mm-newsletter-unsub-hero h1 {
        max-width: 100%;
        font-size: clamp(34px, 9.5vw, 46px);
    }

    .mm-newsletter-unsubscribe__copy h2,
    .mm-newsletter-unsubscribe__panel h2 {
        font-size: clamp(26px, 7.6vw, 34px);
    }
}

/* === Mediamatic News Page (fdbe43a) === */
/* Mediamatic News page */
.mm-news-hero-card {
  justify-self: end;
  width: min(100%, 280px);
  padding: clamp(1.15rem, 3vw, 1.55rem);
  border: 1px solid rgba(217, 212, 202, 0.16);
  border-radius: 8px;
  background: rgba(255, 253, 250, 0.045);
}

.mm-news-hero-card__item {
  padding-block: 0.9rem;
  border-top: 1px solid rgba(217, 212, 202, 0.16);
}

.mm-news-hero-card__item:first-child {
  padding-top: 0;
  border-top: 0;
}

.mm-news-hero-card__item:last-child {
  padding-bottom: 0;
}

.mm-news-hero-card__item span {
  display: block;
  margin-bottom: 0.28rem;
  color: var(--mm-coral);
  font-family: var(--mm-font-display);
  font-size: clamp(1.35rem, 2.4vw, 1.9rem);
  font-weight: 800;
  line-height: 1.05;
}

.mm-news-hero-card__item strong {
  display: block;
  color: var(--mm-near-white);
  font-size: 0.9rem;
  line-height: 1.35;
}

.mm-news-archive__header {
  display: grid;
  gap: 0.8rem;
  max-width: 820px;
  margin-bottom: clamp(2rem, 5vw, 3rem);
}

.mm-news-archive__header h2 {
  margin: 0;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: var(--mm-section-heading-size);
  line-height: var(--mm-section-heading-line-height);
  letter-spacing: 0;
  text-wrap: balance;
}

.mm-news-archive__header p {
  max-width: 760px;
  margin: 0;
  color: var(--mm-text-body);
  line-height: 1.72;
}

.mm-news-topic-nav {
  margin-top: 0.65rem;
}

.mm-news-topic-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mm-news-topic-list a {
  display: inline-flex;
  align-items: center;
  min-height: 2.35rem;
  padding: 0.42rem 0.82rem;
  border: 1px solid rgba(38, 47, 64, 0.18);
  border-radius: 999px;
  background: var(--mm-white);
  color: var(--mm-midnight);
  font-size: 0.84rem;
  font-weight: 600;
  line-height: 1.2;
}

.mm-news-topic-list a:hover,
.mm-news-topic-list a:focus-visible {
  border-color: var(--mm-coral);
  color: var(--mm-coral);
  opacity: 1;
}

.mm-news-topic-list a[aria-current="page"],
.mm-news-topic-list a[aria-current="true"] {
  border-color: var(--mm-coral);
  background: var(--mm-coral);
  color: var(--mm-white);
}

.mm-news-topic-list a[aria-current="page"]:hover,
.mm-news-topic-list a[aria-current="page"]:focus-visible,
.mm-news-topic-list a[aria-current="true"]:hover,
.mm-news-topic-list a[aria-current="true"]:focus-visible {
  color: var(--mm-white);
}

.mm-news-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 2.6vw, 1.5rem);
}

.mm-news-card {
  display: grid;
  grid-template-rows: auto 1fr;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(38, 47, 64, 0.14);
  border-radius: 8px;
  background: var(--mm-white);
  box-shadow: 0 18px 42px rgba(38, 47, 64, 0.08);
}

.mm-news-card__image {
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #eef2f5;
}

.mm-news-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform var(--mm-transition-slow);
}

.mm-news-card__image:hover img {
  transform: scale(1.025);
}

.mm-news-card__body {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: 0.75rem;
  padding: clamp(1.1rem, 2.5vw, 1.35rem);
}

.mm-news-card h3 {
  margin: 0;
  color: var(--mm-midnight);
  font-family: var(--mm-font-display);
  font-size: clamp(1.1rem, 1.8vw, 1.32rem);
  line-height: 1.2;
  letter-spacing: 0;
  overflow-wrap: normal;
  word-break: normal;
}

.mm-news-card h3 a {
  color: inherit;
}

.mm-news-card p {
  margin: 0;
  color: var(--mm-text-body);
  line-height: 1.65;
}

.mm-news-card__link {
  margin-top: auto;
  color: var(--mm-coral);
  font-weight: 700;
}

.mm-news-card__link:hover,
.mm-news-card__link:focus-visible {
  color: var(--mm-coral-dark);
  opacity: 1;
}

@media (max-width: 980px) {
  .mm-news-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mm-news-hero-card {
    justify-self: stretch;
    width: 100%;
  }
}

@media (max-width: 599px) {
  .mm-news-archive__header h2 {
    font-size: var(--mm-section-heading-size-mobile);
    line-height: 1.1;
  }

  .mm-news-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .mm-news-topic-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mm-news-topic-list a {
    justify-content: center;
    text-align: center;
  }
}

/* === Mediamatic About Privacy Polish (a4807ad) === */
/* About page client privacy polish */

.mm-section--client-privacy {
  background: #F0EEE7 !important;
  border-top: 1px solid rgba(25, 35, 52, 0.12) !important;
  border-bottom: 1px solid rgba(25, 35, 52, 0.12) !important;
}

.mm-section--client-privacy + .mm-section--blue-grey {
  border-top: 1px solid rgba(25, 35, 52, 0.12);
}

.mm-client-privacy {
  gap: clamp(2rem, 5vw, 4rem);
}

.mm-client-privacy__highlight {
  display: block;
  max-width: 660px !important;
  margin-top: clamp(1.25rem, 3vw, 1.75rem) !important;
  padding: clamp(1rem, 2.5vw, 1.35rem) !important;
  background: #ffffff;
  border: 1px solid rgba(25, 35, 52, 0.16);
  border-radius: 8px;
  box-shadow: 0 16px 34px rgba(25, 35, 52, 0.06);
  color: var(--mm-midnight) !important;
  font-weight: 700;
  line-height: 1.65 !important;
}

.mm-client-privacy__panel {
  box-shadow: 0 18px 40px rgba(25, 35, 52, 0.07);
}

@media (max-width: 799px) {
  .mm-client-privacy__highlight {
    margin-top: 1.1rem !important;
  }
}

/* === Mediamatic About Intro Polish (895539e) === */
/* About intro business positioning polish */

.mm-about-intro--business {
  display: grid;
  grid-template-columns: minmax(0, 760px) minmax(280px, 360px);
  justify-content: start;
  column-gap: clamp(1.5rem, 4vw, 3rem);
  row-gap: clamp(1.4rem, 3vw, 2rem);
  align-items: start;
}

.mm-about-intro--business .mm-about-intro__lead {
  display: block;
  grid-column: 1 / -1;
  min-width: 0;
  max-width: 100%;
}

.mm-about-intro--business .mm-about-intro__lead h2 {
  max-width: 560px;
}

.mm-about-intro--business .mm-about-intro__body {
  min-width: 0;
  width: 100%;
  padding: clamp(1.35rem, 3vw, 1.8rem);
  background: #ffffff;
  border: 1px solid rgba(25, 35, 52, 0.12);
  border-radius: 8px;
  box-shadow: 0 18px 42px rgba(25, 35, 52, 0.055);
}

.mm-about-intro--business .mm-about-intro__body p {
  max-width: 680px;
}

.mm-about-intro--business .mm-about-intro__plain-english {
  margin-top: 1.65rem !important;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(25, 35, 52, 0.12);
  color: var(--mm-midnight) !important;
  font-weight: 700;
}

.mm-about-intro__signals {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-top: 1.25rem;
}

.mm-about-intro__signals span {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  padding: 0.48rem 0.72rem;
  background: #F0EEE7;
  border: 1px solid rgba(25, 35, 52, 0.12);
  border-radius: 999px;
  color: var(--mm-midnight);
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.2;
}

.mm-about-intro__practice {
  min-width: 0;
  width: 100%;
  padding: clamp(1.2rem, 2.4vw, 1.55rem);
  background: #F0EEE7;
  border: 1px solid rgba(25, 35, 52, 0.12);
  border-radius: 8px;
}

.mm-about-intro__practice-label {
  display: block;
  margin-bottom: 1rem;
  color: var(--mm-coral);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: uppercase;
}

.mm-about-intro__practice-flow {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mm-about-intro__practice-flow li {
  position: relative;
  display: grid;
  grid-template-columns: 2.05rem minmax(0, 1fr);
  column-gap: 0.75rem;
  min-width: 0;
  padding: 0 0 1rem;
}

.mm-about-intro__practice-flow li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 1.85rem;
  bottom: 0.25rem;
  left: 1rem;
  width: 1px;
  background: rgba(25, 35, 52, 0.18);
}

.mm-about-intro__step {
  display: inline-flex;
  position: relative;
  z-index: 1;
  align-items: center;
  justify-content: center;
  width: 2.05rem;
  height: 2.05rem;
  background: #ffffff;
  border: 1px solid rgba(25, 35, 52, 0.14);
  border-radius: 999px;
  color: var(--mm-coral);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
}

.mm-about-intro__step-copy {
  min-width: 0;
  padding-top: 0.1rem;
}

.mm-about-intro__step-copy strong {
  display: block;
  color: var(--mm-midnight);
  font-size: 0.95rem;
  font-weight: 800;
  line-height: 1.25;
}

.mm-about-intro__step-copy p {
  margin: 0.28rem 0 0;
  color: rgba(25, 35, 52, 0.78);
  font-size: 0.86rem;
  font-weight: 500;
  line-height: 1.5;
}

.mm-about-intro__practice-flow li:last-child {
  padding-bottom: 0;
}

@media (max-width: 1099px) {
  .mm-about-intro--business {
    grid-template-columns: minmax(0, 1fr);
  }

  .mm-about-intro__practice {
    max-width: 760px;
  }
}

@media (max-width: 899px) {
  .mm-about-intro--business .mm-about-intro__body,
  .mm-about-intro__practice {
    width: 100%;
    padding: clamp(1.15rem, 5vw, 1.45rem);
  }
}
