.cmath-service-hero {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 554px;
	padding: var(--block-padding-m) var(--grid-margins);
	overflow: hidden;
	background: var(--color-bg-default-default);
}

.cmath-service-hero__bg {
	position: absolute;
	inset: 0;
}

.cmath-service-hero__bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.cmath-service-hero__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.3);
}

.cmath-service-hero__inner {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: var(--max-width-content);
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--space-150);
	color: var(--color-text-white);
}

.cmath-service-hero__tags {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-75);
}

.cmath-service-hero__text {
	display: flex;
	flex-direction: column;
	gap: var(--space-75);
}

.cmath-service-hero__format {
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: 700;
	font-size: var(--font-h6-size);
	line-height: 1.2;
}

.cmath-service-hero__title {
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: var(--font-h1-weight);
	font-size: var(--font-h1-size);
	line-height: 1.2;
	color: var(--color-text-white);
}

.cmath-service-hero__desc {
	margin: 0;
	max-width: 720px;
	font-family: var(--font-family-paragraph);
	font-weight: 500;
	font-size: var(--space-113);
	line-height: 1.4;
}

/* Tags */
.cmath-tag {
	display: inline-flex;
	align-items: center;
	padding: var(--space-25) var(--space-50);
	border-radius: var(--radius-xs);
	font-family: var(--font-family-paragraph);
	font-size: var(--font-label-m-size);
	line-height: 1.2;
	color: var(--color-text-white);
}

.cmath-tag--brick { background: var(--color-brand-brick); }
.cmath-tag--greenish-gold { background: var(--color-brand-greenish-gold); }
.cmath-tag--chalk-board { background: var(--color-brand-chalk-board); }
.cmath-tag--gold { background: var(--color-brand-gold); }
.cmath-tag--blue { background: var(--color-brand-blue); color: var(--color-text-default); }

/* Stats strip */
.cmath-stats {
	background: var(--color-brand-teal-darker);
	padding: var(--space-150) var(--grid-margins);
	color: var(--color-text-white);
}

.cmath-stats__inner {
	max-width: var(--max-width-content);
	margin-inline: auto;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-150) var(--space-500);
}

.cmath-stats__item {
	display: flex;
	align-items: center;
	gap: var(--space-50);
}

.cmath-stats__number {
	font-family: var(--font-family-headers);
	font-weight: var(--font-h4-weight);
	font-size: var(--font-h4-size);
	line-height: 1.2;
}

.cmath-stats__label {
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
}

/* Text block */
.cmath-text-block {
	background: var(--color-brand-light-blue);
	padding: var(--block-padding-m) var(--grid-margins);
}

.cmath-text-block__inner {
	max-width: var(--max-width-content);
	margin-inline: auto;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: var(--grid-gutter);
}

.cmath-text-block__heading {
	flex: 1 1 300px;
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: var(--font-h2-weight);
	font-size: var(--font-h2-size);
	line-height: 1.2;
	color: var(--color-text-default);
}

.cmath-text-block__body {
	flex: 1 1 300px;
	max-width: 600px;
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

.cmath-text-block__body > * + * {
	margin-top: var(--space-100);
}

.cmath-text-block__body ul {
	list-style: disc;
	padding-left: 1.25em;
}

.cmath-text-block__body li + li {
	margin-top: var(--space-25);
}

/* Text + media */
.cmath-textmedia {
	background: var(--color-bg-default-default);
	padding: var(--block-padding-m) var(--grid-margins);
}

.cmath-textmedia__inner {
	max-width: var(--max-width-content);
	margin-inline: auto;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: var(--grid-gutter);
}

.cmath-textmedia__media {
	position: relative;
	flex: 1 1 320px;
	min-height: 320px;
	max-height: 600px;
	overflow: hidden;
}

.cmath-textmedia__media img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cmath-textmedia__text {
	flex: 1 1 320px;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: var(--space-200);
}

.cmath-textmedia__heading {
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: var(--font-h2-weight);
	font-size: var(--font-h2-size);
	line-height: 1.2;
	color: var(--color-text-alt);
}

.cmath-textmedia__body {
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

.cmath-textmedia__body > * + * {
	margin-top: var(--space-100);
}

.cmath-textmedia__text .cmath-btn {
	align-self: flex-start;
}

/* Who is this for */
.cmath-who {
	background: var(--color-brand-light-blue);
	padding: var(--block-padding-m) var(--grid-margins);
}

.cmath-who__inner {
	max-width: var(--max-width-content);
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-250);
}

.cmath-who__head {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-50);
	text-align: center;
}

.cmath-who__title {
	margin: 0;
	max-width: 100%;
	font-family: var(--font-family-headers);
	font-weight: var(--font-h2-weight);
	font-size: var(--font-h2-size);
	line-height: 1.2;
	color: var(--color-text-default);
}

.cmath-who__subtitle {
	margin: 0;
	max-width: min(600px, 100%);
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

.cmath-who__cards {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--grid-gutter);
	width: 100%;
}

.cmath-who-card {
	flex: 0 0 auto;
	width: 276px;
	max-width: 100%;
	height: 211px;
	padding: var(--space-150) var(--space-180);
	display: flex;
	flex-direction: column;
	gap: var(--space-100);
	background: url('../img/card-who-is.svg') center / 100% 100% no-repeat;
	overflow: clip;
}

.cmath-who-card__title {
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: 700;
	font-size: var(--font-h5-size);
	line-height: 1.2;
	color: var(--color-text-default);
}

.cmath-who-card__desc {
	margin: 0;
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

/* Program */
.cmath-program {
	background: var(--color-brand-samon);
	padding: var(--block-padding-m) var(--grid-margins);
}

.cmath-program__inner {
	max-width: var(--max-width-content);
	margin-inline: auto;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: var(--space-400);
}

.cmath-program__intro {
	flex: 0 1 380px;
	display: flex;
	flex-direction: column;
	gap: var(--space-75);
}

.cmath-program__title {
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: var(--font-h2-weight);
	font-size: var(--font-h2-size);
	line-height: 1.2;
	color: var(--color-text-default);
}

.cmath-program__subtitle {
	margin: 0;
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
	opacity: 0.7;
}

.cmath-program__list {
	flex: 1 1 240px;
	min-width: 240px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.cmath-program__item {
	display: flex;
	align-items: center;
	gap: var(--space-100);
	padding-bottom: var(--space-100);
	background: url("../img/divider.svg") bottom center / 100% auto no-repeat;
}

.cmath-program__item + .cmath-program__item {
	margin-top: var(--space-100);
}

.cmath-program__icon {
	flex: 0 0 auto;
	width: 47px;
	height: auto;
}

.cmath-program__text {
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

/* What You'll Learn */
.cmath-learn {
	background: var(--color-bg-default-default);
	padding: var(--block-padding-m) var(--grid-margins);
}

.cmath-learn__inner {
	max-width: var(--max-width-content);
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-200);
}

.cmath-learn__title {
	margin: 0;
	max-width: 100%;
	font-family: var(--font-family-headers);
	font-weight: var(--font-h2-weight);
	font-size: var(--font-h2-size);
	line-height: 1.2;
	color: var(--color-text-alt);
	text-align: center;
}

.cmath-learn__grid {
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--space-200);
}

.cmath-learn__item {
	display: flex;
	align-items: center;
	gap: var(--space-100);
}

.cmath-learn__icon {
	flex: 0 0 auto;
	width: 47px;
	height: auto;
}

.cmath-learn__text {
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

/* Weeks */
.cmath-weeks {
	background: var(--color-brand-light-blue);
	padding: var(--block-padding-m) var(--grid-margins);
}

.cmath-weeks__inner {
	max-width: var(--max-width-content);
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-250);
}

.cmath-weeks__head {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-50);
	text-align: center;
}

.cmath-weeks__title {
	margin: 0;
	max-width: 100%;
	font-family: var(--font-family-headers);
	font-weight: var(--font-h2-weight);
	font-size: var(--font-h2-size);
	line-height: 1.2;
	color: var(--color-text-default);
}

.cmath-weeks__subtitle {
	margin: 0;
	max-width: min(600px, 100%);
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

.cmath-weeks__cards {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--grid-gutter);
}

.cmath-week-card {
	flex: 0 0 auto;
	width: 276px;
	max-width: 100%;
	display: flex;
	flex-direction: column;
	gap: var(--space-150);
	padding: var(--space-150) var(--space-180);
	background: url("../img/card-who-is.svg") center / 100% 100% no-repeat;
}

.cmath-week-card__tag {
	align-self: flex-start;
	padding: var(--space-25) var(--space-50);
	border-radius: var(--radius-xs);
	background: var(--color-brand-light-blue);
	font-family: var(--font-family-paragraph);
	font-weight: 500;
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
	white-space: nowrap;
}

.cmath-week-card__body {
	display: flex;
	flex-direction: column;
	gap: var(--space-100);
}

.cmath-week-card__title {
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: 700;
	font-size: var(--font-h5-size);
	line-height: 1.2;
	color: var(--color-text-default);
}

.cmath-week-card__desc {
	margin: 0;
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

.cmath-weeks__band {
	width: 100%;
	min-height: 102px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: var(--space-25);
	padding: var(--space-125) var(--space-150);
	background: url("../img/slack-support.svg") center / 100% 100% no-repeat;
	color: var(--color-text-inverse);
}

.cmath-weeks__band-heading {
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: 700;
	font-size: var(--font-h5-size);
	line-height: 1.2;
}

.cmath-weeks__band-text {
	margin: 0;
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
}

/* Case studies: free text in a band like the "Plus" support band. Its border
   is the sliced tile used by the post areas (teal version), so the band can
   grow with the text without stretching the hand-drawn line. */
.cmath-case-studies {
	padding: var(--block-padding-m) var(--grid-margins);
}

.cmath-case-studies__inner {
	max-width: var(--max-width-content);
	margin-inline: auto;
}

.cmath-case-studies__band {
	display: flex;
	flex-direction: column;
	gap: var(--space-75);
	padding: var(--space-125) var(--space-150);
	border: 4px solid transparent;
	border-image: url("../img/case-study-border.svg?v=1") 4 fill / 4px round;
	color: var(--color-text-inverse);
}

.cmath-case-studies__heading {
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: 700;
	font-size: var(--font-h5-size);
	line-height: 1.2;
	color: inherit;
}

.cmath-case-studies__text {
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
}

.cmath-case-studies__text a {
	color: inherit;
	text-decoration: underline;
}

@media (forced-colors: active) {
	.cmath-case-studies__band {
		border: 1px solid CanvasText;
		border-image: none;
	}
}

/* Location & Logistics */
.cmath-logistics {
	background: var(--color-brand-samon);
	padding: var(--block-padding-m) var(--grid-margins);
}

.cmath-logistics__inner {
	max-width: var(--max-width-content);
	margin-inline: auto;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: var(--space-400);
}

.cmath-logistics__intro {
	flex: 0 1 380px;
	display: flex;
	flex-direction: column;
	gap: var(--space-75);
}

.cmath-logistics__title {
	margin: 0;
	max-width: 100%;
	font-family: var(--font-family-headers);
	font-weight: var(--font-h2-weight);
	font-size: var(--font-h2-size);
	line-height: 1.2;
	color: var(--color-text-default);
}

.cmath-logistics__subtitle {
	margin: 0;
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

.cmath-logistics__list {
	flex: 1 1 240px;
	min-width: 240px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.cmath-logistics__item {
	display: flex;
	flex-direction: column;
	gap: var(--space-75);
	padding-bottom: var(--space-100);
	background: url("../img/divider.svg") bottom center / 100% auto no-repeat;
}

.cmath-logistics__item + .cmath-logistics__item {
	margin-top: var(--space-100);
}

.cmath-logistics__item-title {
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: 700;
	font-size: var(--font-h5-size);
	line-height: 1.2;
	color: var(--color-text-default);
}

.cmath-logistics__item-desc {
	margin: 0;
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

/* FAQ */
.cmath-faq {
	background: var(--color-bg-default-default);
	padding: var(--block-padding-m) var(--grid-margins);
}

.cmath-faq__inner {
	max-width: var(--max-width-content);
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-300);
}

.cmath-faq__title {
	margin: 0;
	max-width: 100%;
	font-family: var(--font-family-headers);
	font-weight: var(--font-h2-weight);
	font-size: var(--font-h2-size);
	line-height: 1.2;
	color: var(--color-text-alt);
	text-align: center;
}

.cmath-faq__list {
	width: 100%;
	max-width: 600px;
}

.cmath-faq__item {
	padding: var(--space-100);
	background: url("../img/divider.svg") bottom center / 100% auto no-repeat;
}

.cmath-faq__q {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-50);
	cursor: pointer;
	list-style: none;
	font-family: var(--font-family-headers);
	font-weight: 700;
	font-size: var(--font-h6-size);
	line-height: 1.2;
	color: var(--color-text-default);
}

.cmath-faq__q::-webkit-details-marker {
	display: none;
}

.cmath-faq__q:focus-visible {
	outline: 2px solid var(--color-border-accent);
	outline-offset: 2px;
}

.cmath-faq__chevron {
	flex: 0 0 auto;
	color: var(--color-text-default);
	transition: transform 0.2s ease;
}

.cmath-faq__item[open] .cmath-faq__chevron {
	transform: rotate(180deg);
}

.cmath-faq__a {
	margin-top: var(--space-75);
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

/* Pricing & Registration */
.cmath-pricing {
	background: var(--color-brand-chalk-board);
	padding: var(--block-padding-m) var(--grid-margins);
}

.cmath-pricing__inner {
	max-width: var(--max-width-content);
	margin-inline: auto;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: var(--space-300);
}

.cmath-pricing__intro {
	flex: 0 1 380px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--space-75);
}

.cmath-pricing__title {
	margin: 0;
	max-width: 100%;
	overflow-wrap: break-word;
	font-family: var(--font-family-headers);
	font-weight: var(--font-h2-weight);
	font-size: var(--font-h2-size);
	line-height: 1.2;
	color: var(--color-text-inverse);
}

.cmath-pricing__subtitle {
	margin: 0;
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-inverse);
}

.cmath-pricing__cta {
	display: inline-flex;
	align-items: center;
	margin-top: var(--space-50);
	padding: var(--space-50) var(--space-100);
	border-radius: var(--radius-full);
	background: var(--color-brand-teal-darker);
	color: var(--color-text-white);
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	text-decoration: none;
}

.cmath-pricing__cta:hover,
.cmath-pricing__cta:focus {
	background: var(--color-brand-dark-turquoise);
	color: var(--color-text-white);
}

.cmath-pricing__cards {
	flex: 1 1 300px;
	min-width: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--grid-gutter);
}

.cmath-price-card {
	flex: 1 1 300px;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: var(--space-100);
	min-height: 213px;
	padding: var(--space-125);
	background: url("../img/price-card-small.svg") center / 100% 100% no-repeat;
	color: var(--color-text-default);
}

.cmath-pricing__cards--single .cmath-price-card {
	background-image: url("../img/price-card-big.svg");
}

.cmath-price-card__title {
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: 700;
	font-size: var(--font-h6-size);
	line-height: 1.2;
}

.cmath-price-card__price {
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: 700;
	font-size: 52px;
	line-height: 1.1;
	color: var(--color-brand-teal-darker);
}

.cmath-price-card__label {
	margin: 0;
	font-family: var(--font-family-paragraph);
	font-size: var(--font-label-m-size);
	line-height: 1.2;
}

/* You might also like */
.cmath-related-services {
	background: var(--color-brand-samon);
	padding: var(--block-padding-m) var(--grid-margins);
}

.cmath-related-services__inner {
	max-width: var(--max-width-content);
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-200);
}

.cmath-related-services__head {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--space-75);
	text-align: center;
}

.cmath-related-services__title {
	margin: 0;
	max-width: 100%;
	overflow-wrap: break-word;
	font-family: var(--font-family-headers);
	font-weight: var(--font-h2-weight);
	font-size: var(--font-h2-size);
	line-height: 1.2;
	color: var(--color-text-alt);
}

.cmath-related-services__subtitle {
	margin: 0;
	max-width: min(700px, 100%);
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

.cmath-related-services__cards {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--grid-gutter);
}

.cmath-rel-card {
	flex: 1 1 300px;
	max-width: 380px;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: var(--space-150);
	padding: var(--space-125);
	background: url("../img/service-card.svg") center / 100% 100% no-repeat;
}

.cmath-rel-card__image {
	width: 100%;
	aspect-ratio: 352 / 222;
	overflow: hidden;
}

.cmath-rel-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cmath-rel-card__body {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	gap: var(--space-150);
}

.cmath-rel-card__title {
	margin: 0;
	font-family: var(--font-family-headers);
	font-weight: 800;
	font-size: var(--font-h4-size);
	line-height: 1.2;
	color: var(--color-text-default);
}

.cmath-rel-card__desc {
	margin: 0;
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	color: var(--color-text-default);
}

.cmath-rel-card__btn {
	margin-top: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: var(--space-50) var(--space-100);
	border: 2px solid var(--color-border-accent);
	border-radius: var(--radius-full);
	background: transparent;
	color: var(--color-text-default);
	font-family: var(--font-family-paragraph);
	font-size: var(--font-body-size);
	line-height: 1.3;
	text-decoration: none;
}

.cmath-rel-card__btn:hover,
.cmath-rel-card__btn:focus {
	background: var(--color-brand-blue);
	border-color: var(--color-brand-blue);
	color: var(--color-text-default);
}

@media (max-width: 768px) {
	.cmath-stats__inner {
		gap: var(--space-100) var(--space-200);
	}

	.cmath-textmedia__text {
		order: 1;
	}

	.cmath-textmedia__media {
		order: 2;
		flex-basis: 100%;
		min-height: 320px;
	}

	.cmath-who-card {
		width: 100%;
		height: auto;
		background-image: url("../img/card-who-is-mobile.svg");
	}

	.cmath-program__item,
	.cmath-logistics__item {
		background-image: url("../img/divider-mobile.svg");
	}

	.cmath-week-card {
		width: 100%;
		background-image: url("../img/card-who-is-mobile.svg");
	}

	.cmath-weeks__band {
		background-image: url("../img/slack-support-mobile.svg");
	}

	.cmath-program__inner {
		gap: var(--space-200);
	}

	.cmath-program__intro {
		flex-basis: 100%;
	}

	.cmath-learn__grid {
		grid-template-columns: 1fr;
	}

	.cmath-logistics__inner {
		gap: var(--space-200);
	}

	.cmath-logistics__intro {
		flex-basis: 100%;
	}

	.cmath-pricing__intro {
		flex-basis: 100%;
	}

	.cmath-price-card {
		flex-basis: 100%;
	}

	.cmath-price-card,
	.cmath-pricing__cards--single .cmath-price-card {
		background-image: url("../img/price-card-mobile.svg");
	}

	.cmath-faq__item {
		background-image: url("../img/divider-mobile.svg");
	}

	.cmath-related-services__cards {
		flex-wrap: nowrap;
		justify-content: flex-start;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		/* Full-bleed: cards are clipped by viewport, not section margin. */
		width: calc(100% + 2 * var(--grid-margins));
		margin-inline: calc(-1 * var(--grid-margins));
		padding-inline: var(--grid-margins);
		scroll-padding-inline: var(--grid-margins);
	}

	.cmath-related-services__cards::-webkit-scrollbar {
		display: none;
	}

	.cmath-rel-card {
		flex: 0 0 86%;
		max-width: none;
		scroll-snap-align: start;
	}
}
