/*
Theme Name: EduTrack
Theme URI: https://edutrack.io/
Author: EduTrack
Description: Lightweight custom theme for the EduTrack CEU management website.
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: edutrack
*/

@font-face {
	font-family: "Heebo";
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url("assets/fonts/heebo-latin-300-normal.woff2") format("woff2");
}

@font-face {
	font-family: "Heebo";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("assets/fonts/heebo-latin-400-normal.woff2") format("woff2");
}

@font-face {
	font-family: "Heebo";
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url("assets/fonts/heebo-latin-500-normal.woff2") format("woff2");
}

@font-face {
	font-family: "Heebo";
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url("assets/fonts/heebo-latin-600-normal.woff2") format("woff2");
}

@font-face {
	font-family: "Heebo";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("assets/fonts/heebo-latin-700-normal.woff2") format("woff2");
}

@font-face {
	font-family: "Libre Franklin";
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url("assets/fonts/libre-franklin-latin-600-normal.woff2") format("woff2");
}

@font-face {
	font-family: "Libre Franklin";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("assets/fonts/libre-franklin-latin-700-normal.woff2") format("woff2");
}

@font-face {
	font-family: "Libre Franklin";
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url("assets/fonts/libre-franklin-latin-800-normal.woff2") format("woff2");
}

:root {
	--et-blue: #176bc8;
	--et-blue-live: #207de9;
	--et-blue-dark: #0c57ad;
	--et-heading: #1e293b;
	--et-text: #374046;
	--et-muted: #6b7280;
	--et-line: #d3dce9;
	--et-surface: #ffffff;
	--et-tint: #f2f6fc;
	--et-aqua: #edf9f8;
	--et-success: #167a4a;
	--et-warning: #a15c00;
	--et-danger: #b42318;
	--et-radius: 10px;
	--et-shadow: 0 20px 30px rgba(15, 38, 68, 0.08);
	--et-container: 1240px;
	--et-medium: 1000px;
	--et-narrow: 840px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	background: var(--et-surface);
	color: var(--et-text);
	font-family: "Heebo", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.5;
}

body.menu-open {
	overflow: hidden;
}

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

img {
	height: auto;
}

button,
input,
select,
textarea {
	font: inherit;
}

button,
[type="button"],
[type="submit"] {
	cursor: pointer;
}

a {
	color: var(--et-blue-dark);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.15em;
}

a:hover {
	color: var(--et-blue);
}

:focus-visible {
	outline: 3px solid #f7941d;
	outline-offset: 3px;
}

::selection {
	background: #cde7ff;
	color: #152035;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0 0 0.55em;
	color: var(--et-heading);
	font-family: "Libre Franklin", sans-serif;
	text-wrap: balance;
}

h1 {
	font-size: clamp(2rem, 5vw, 5.25rem);
	font-weight: 800;
	line-height: 1.02;
}

h2 {
	font-size: 2.625rem;
	font-weight: 800;
	line-height: 1.3;
}

h3 {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.2;
}

h4 {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.3;
}

h5 {
	font-size: 1.3125rem;
	font-weight: 600;
	line-height: 1.65;
}

h6 {
	color: var(--et-blue);
	font-family: "Heebo", sans-serif;
	font-size: 0.9375rem;
	font-weight: 300;
	letter-spacing: 0.125rem;
	line-height: 1.6;
	text-transform: uppercase;
}

p,
ul,
ol,
blockquote,
figure {
	margin: 0 0 1.35rem;
}

sup {
	font-size: 0.55em;
	line-height: 0;
}

.et-container {
	width: min(var(--et-container), 100%);
	margin-inline: auto;
	padding-inline: 20px;
}

.et-container--medium {
	max-width: var(--et-medium);
}

.et-container--narrow {
	max-width: var(--et-narrow);
}

.et-section {
	padding-block: 5rem;
}

.et-eyebrow {
	margin-bottom: 1.2rem;
	color: var(--et-blue);
	font-size: 0.9375rem;
	font-weight: 500;
	letter-spacing: 0.13rem;
	line-height: 1.6;
	text-transform: uppercase;
}

.et-raised-card {
	border-radius: var(--et-radius);
	background: var(--et-surface);
	box-shadow: var(--et-shadow);
}

.et-icon {
	width: 1.5rem;
	height: 1.5rem;
	flex: 0 0 auto;
}

.et-button,
.entry-content .et-button,
.button,
.edutrack-button,
button:not(.nav-toggle),
input[type="submit"],
input[type="button"] {
	display: inline-flex;
	min-height: 46px;
	align-items: center;
	justify-content: center;
	padding: 0.78rem 1.875rem;
	border: 0;
	border-radius: var(--et-radius);
	background: var(--et-blue);
	color: #fff;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.1;
	text-align: center;
	text-decoration: none;
	transition: background-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.et-button:hover,
.entry-content .et-button:hover,
.button:hover,
.edutrack-button:hover,
button:not(.nav-toggle):hover,
input[type="submit"]:hover,
input[type="button"]:hover {
	background: var(--et-blue-dark);
	color: #fff;
	transform: translateY(-1px);
}

.et-button--block {
	display: flex;
	width: 100%;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus,
.skip-link:focus {
	top: 0.5rem;
	left: 0.5rem;
	z-index: 10000;
	width: auto;
	height: auto;
	padding: 0.75rem 1rem;
	clip: auto;
	border-radius: 4px;
	background: #fff;
	color: var(--et-heading);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

/* Header and navigation */
.site-header {
	position: relative;
	z-index: 99;
	height: 91px;
	background: #fff;
}

.site-header__inner {
	display: flex;
	height: 90px;
	align-items: center;
	justify-content: space-between;
}

.site-branding,
.site-branding__link,
.custom-logo-link {
	display: flex;
	align-items: center;
}

.site-branding__link,
.custom-logo-link {
	text-decoration: none;
}

.site-branding__logo,
.custom-logo {
	width: 212px;
	max-height: 54px;
	object-fit: contain;
}

.primary-navigation,
.primary-menu {
	height: 100%;
}

.primary-menu,
.primary-menu ul {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

.primary-menu > li {
	position: relative;
	display: flex;
	height: 100%;
	align-items: center;
}

.primary-menu a {
	display: flex;
	height: 80px;
	align-items: center;
	padding-inline: 18px;
	color: #334155;
	font-size: 18px;
	line-height: 1;
	text-decoration: none;
}

.primary-menu a:hover,
.primary-menu .current-menu-item > a,
.primary-menu .current_page_item > a {
	color: #045cb4;
}

.primary-menu .sub-menu {
	position: absolute;
	top: calc(100% - 5px);
	left: 0;
	display: none;
	width: 220px;
	height: auto;
	padding: 0.5rem;
	border: 1px solid var(--et-line);
	border-radius: var(--et-radius);
	background: #fff;
	box-shadow: 0 12px 24px rgba(15, 23, 42, 0.12);
}

.primary-menu .sub-menu a {
	height: auto;
	padding: 0.65rem 0.75rem;
}

.primary-menu li:hover > .sub-menu,
.primary-menu li:focus-within > .sub-menu {
	display: block;
}

.nav-toggle {
	display: none;
	width: 46px;
	height: 46px;
	align-items: center;
	justify-content: center;
	padding: 10px;
	border: 0;
	border-radius: 6px;
	background: transparent;
}

.nav-toggle > span[aria-hidden] {
	position: absolute;
	width: 25px;
	height: 2px;
	border-radius: 1px;
	background: var(--et-heading);
	transition: transform 160ms ease, opacity 160ms ease;
}

.nav-toggle > span[aria-hidden]:nth-of-type(2) { transform: translateY(-7px); }
.nav-toggle > span[aria-hidden]:nth-of-type(4) { transform: translateY(7px); }
.nav-toggle[aria-expanded="true"] > span[aria-hidden]:nth-of-type(2) { transform: rotate(45deg); }
.nav-toggle[aria-expanded="true"] > span[aria-hidden]:nth-of-type(3) { opacity: 0; }
.nav-toggle[aria-expanded="true"] > span[aria-hidden]:nth-of-type(4) { transform: rotate(-45deg); }

/* Homepage hero */
.home-hero {
	min-height: 647px;
	display: flex;
	align-items: flex-end;
	padding-bottom: 17px;
	background-color: #d7eafa;
	background-image: url("assets/images/hero-teacher.webp");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.home-hero__inner {
	text-align: center;
}

.home-hero h1 {
	margin: 0;
	padding: 0.1em 0.05em 0.15em;
	background: linear-gradient(180deg, rgba(110, 193, 228, 0.96), rgba(110, 193, 228, 0));
	color: #fff;
	font-size: 3.75rem;
	font-weight: 600;
	line-height: 1.2;
	text-shadow: 0 1px 3px rgba(0, 34, 76, 0.3);
}

.home-hero h1 span {
	display: block;
}

@media (min-width: 921px) {
	.home-hero {
		background-position: 50% 0;
		background-size: contain;
	}

	.home-hero h1 span {
		white-space: nowrap;
	}
}

.home-hero__promise {
	display: flex;
	margin: 20px 0;
	padding: 0.2rem 1rem;
	flex-direction: column;
	background: linear-gradient(180deg, #0064f3, #29b6f2);
	color: #fff;
	font-family: "Libre Franklin", sans-serif;
	font-size: 1.3125rem;
	font-weight: 700;
	line-height: 1.2;
}

.et-button--hero {
	min-width: 384px;
	background: #176bc8;
	text-transform: uppercase;
}

/* Homepage about */
.home-about {
	padding-block: 5.2rem 6.7rem;
}

.home-about__inner {
	display: grid;
	grid-template-columns: 40% 1fr;
	gap: 5rem;
	align-items: start;
}

.photo-mosaic {
	display: grid;
	grid-template-columns: 55fr 45fr;
	grid-template-rows: 300px 300px;
	gap: 20px;
	padding-top: 6.9rem;
}

.photo-mosaic img {
	width: 100%;
	border-radius: var(--et-radius);
	object-fit: cover;
}

.photo-mosaic__one,
.photo-mosaic__four { height: 300px; }
.photo-mosaic__two { height: 130px; align-self: end; }
.photo-mosaic__three { height: 242px; align-self: start; }

.home-about__card {
	padding: 3rem;
}

.home-about__card h2 {
	margin-bottom: 1.4rem;
}

.home-about__card > p:not(.et-eyebrow) {
	padding-bottom: 1.1rem;
	border-bottom: 1px solid #edf0f4;
}

.benefit-list {
	display: grid;
	gap: 1.8rem;
	margin: 1.6rem 0 2rem;
	padding: 0;
	list-style: none;
}

.benefit-list li {
	display: grid;
	grid-template-columns: 42px 1fr;
	gap: 1.1rem;
	align-items: start;
}

.benefit-list__icon {
	color: var(--et-blue);
}

.benefit-list__icon .et-icon {
	width: 42px;
	height: 42px;
}

.benefit-list strong,
.benefit-list small {
	display: block;
}

.benefit-list strong {
	margin-bottom: 0.2rem;
	color: var(--et-heading);
	font-size: 1rem;
}

.benefit-list small {
	font-size: 0.875rem;
	line-height: 1.65;
}

/* Homepage why */
.home-why {
	padding-block: 5.5rem 6.5rem;
}

.home-why__inner {
	display: grid;
	grid-template-columns: 40% 1fr;
	gap: 3.5rem;
	align-items: center;
}

.home-why__intro {
	padding: 1rem;
}

.home-why__intro h2 {
	max-width: 450px;
}

.home-why__intro p:not(.et-eyebrow) {
	max-width: 430px;
	margin-bottom: 2.75rem;
}

.why-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.why-card {
	display: grid;
	min-height: 220px;
	grid-template-columns: 40px 1fr;
	gap: 1rem;
	padding: 2rem 1.2rem;
	border-radius: var(--et-radius);
}

.why-card--green { background: #e9f7f0; }
.why-card--red { background: #fdeded; }
.why-card--yellow { background: #fffaea; }
.why-card--teal { background: #edf9f8; }
.why-card--green .why-card__icon { color: #26b16d; }
.why-card--red .why-card__icon { color: #f87376; }
.why-card--yellow .why-card__icon { color: #f7941d; }
.why-card--teal .why-card__icon { color: #6adfd7; }

.why-card__icon .et-icon {
	width: 38px;
	height: 38px;
}

.why-card h3 {
	font-size: 1.3125rem;
	line-height: 1.65;
}

.why-card p {
	margin-bottom: 0;
	font-size: 1rem;
}

/* Homepage features */
.home-features {
	padding-block: 6.2rem;
	background: var(--et-tint);
}

.feature-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.feature-grid__intro {
	padding: 2rem 1.5rem;
}

.feature-grid__intro h2 {
	font-size: 2.625rem;
}

.feature-grid__intro p:not(.et-eyebrow) {
	max-width: 300px;
}

.feature-card {
	display: flex;
	min-height: 275px;
	align-items: center;
	justify-content: center;
	padding: 3rem;
	flex-direction: column;
	border: 1px solid var(--et-tint);
	border-radius: var(--et-radius);
	background: #fff;
	text-align: center;
	transition: box-shadow 160ms ease, transform 160ms ease;
}

.feature-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.08);
}

.feature-card__icon {
	display: grid;
	width: 92px;
	height: 92px;
	margin-bottom: 2rem;
	place-items: center;
	border-radius: 50%;
}

.feature-card__icon .et-icon {
	width: 42px;
	height: 42px;
}

.feature-card--blue .feature-card__icon { color: var(--et-blue); background: #f2f6fc; }
.feature-card--yellow .feature-card__icon { color: #f7941d; background: #fffaea; }
.feature-card--green .feature-card__icon { color: #26b16d; background: #edf9f8; }
.feature-card--red .feature-card__icon { color: #f87376; background: #fdeded; }
.feature-card--teal .feature-card__icon { color: #6adfd7; background: #edf9f8; }

.feature-card h3 {
	margin: 0;
	font-size: 1.5rem;
	line-height: 1.3;
}

/* Licensed professions */
.home-licensed {
	padding-block: 5rem;
}

.home-licensed__inner {
	display: grid;
	min-height: 640px;
	grid-template-columns: 65% 35%;
}

.home-licensed__copy {
	display: flex;
	justify-content: center;
	padding: 4.5rem;
	flex-direction: column;
}

.home-licensed__copy h2 {
	max-width: 690px;
}

.home-licensed__copy > p:not(.et-eyebrow) {
	max-width: 660px;
}

.home-licensed__image {
	min-height: 640px;
	background: url("assets/images/startup-team.jpg") center center / cover no-repeat;
}

.check-columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem 2rem;
	margin: 1.2rem 0 1.5rem;
}

.check-columns ul {
	display: grid;
	gap: 0.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.check-columns li {
	display: flex;
	gap: 0.55rem;
	align-items: center;
	font-size: 1rem;
}

.check-columns .et-icon {
	width: 16px;
	height: 16px;
	padding: 2px;
	border-radius: 50%;
	background: #26b16d;
	color: #fff;
}

/* Testimonial */
.home-testimonial {
	min-height: 503px;
	margin-bottom: 4.2rem;
	background-color: #f5f5f5;
	background-image: linear-gradient(90deg, #f5f5f5 40%, rgba(245, 245, 245, 0) 40%), url("assets/images/testimonial-background.jpg");
	background-position: center, right top;
	background-repeat: no-repeat;
	background-size: 100%, auto 100%;
}

.home-testimonial__inner {
	position: relative;
	min-height: 503px;
}

.testimonial-card {
	position: absolute;
	top: 50%;
	left: 0;
	width: 51%;
	padding: 3rem;
	transform: translateY(-50%);
}

.testimonial-card h2 {
	margin-bottom: 1.2rem;
}

.testimonial-card__stars {
	color: var(--et-blue);
	font-size: 1.3rem;
	letter-spacing: 0.32rem;
}

.testimonial-card blockquote {
	position: relative;
	margin: 2rem 0 1.4rem;
	padding: 0;
	font-size: 1rem;
}

.testimonial-card blockquote::after {
	position: absolute;
	right: 1rem;
	bottom: -2.2rem;
	content: "”";
	color: var(--et-blue);
	font-family: Georgia, serif;
	font-size: 5rem;
	font-weight: 700;
	line-height: 1;
}

.testimonial-card__author {
	margin: 0;
}

.testimonial-card__author small {
	display: block;
	color: var(--et-muted);
	font-size: 0.875rem;
}

/* Facts */
.home-facts {
	padding-block: 5rem;
	background: var(--et-aqua);
	text-align: center;
}

.home-facts h2 {
	max-width: 920px;
	margin-inline: auto;
}

.home-facts__inner > p:not(.et-eyebrow) {
	max-width: 900px;
	margin: 0 auto 2.4rem;
}

.fact-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.5rem;
	margin: 2rem 0;
	text-align: left;
}

.fact-item {
	display: flex;
	gap: 1.1rem;
	align-items: center;
	justify-content: center;
}

.fact-item > .et-icon {
	width: 54px;
	height: 54px;
	color: var(--et-blue);
}

.fact-item span,
.fact-item strong,
.fact-item small {
	display: block;
}

.fact-item strong {
	color: var(--et-heading);
	font-family: "Libre Franklin", sans-serif;
	font-size: 2.625rem;
	font-weight: 800;
	line-height: 1.1;
}

.fact-item small {
	font-size: 0.875rem;
}

/* FAQ */
.home-faq {
	padding-block: 6rem;
	text-align: center;
}

.home-faq__inner > p:not(.et-eyebrow) {
	margin-bottom: 2rem;
}

.faq-list {
	margin: 2rem 0 3rem;
	text-align: left;
}

.faq-list details {
	border-bottom: 1px solid var(--et-line);
	background: #fff;
}

.faq-list summary {
	position: relative;
	padding: 1.2rem 3rem 1.2rem 1.25rem;
	color: var(--et-text);
	font-family: "Libre Franklin", sans-serif;
	font-size: 1.125rem;
	font-weight: 700;
	list-style: none;
	cursor: pointer;
}

.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after {
	position: absolute;
	top: 50%;
	right: 1.25rem;
	width: 12px;
	height: 12px;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	content: "";
	transform: translateY(-70%) rotate(45deg);
	transition: transform 160ms ease;
}

.faq-list details[open] summary::after {
	transform: translateY(-30%) rotate(225deg);
}

.faq-list details > p,
.faq-list details > div {
	padding: 0 1.25rem 1.25rem;
}

/* Shared public page language */
.site-main--flush,
.site-main--flush > .et-page,
.site-main--flush .entry-content {
	width: 100%;
}

.et-page-hero {
	position: relative;
	display: grid;
	min-height: 363px;
	place-items: center;
	overflow: hidden;
	background: #eff8ff url("assets/images/watercolor-background.jpg") center / cover no-repeat;
	text-align: center;
}

.et-page-hero::before {
	position: absolute;
	inset: 0;
	background: rgba(255, 255, 255, 0.7);
	content: "";
}

.et-page-hero__inner {
	position: relative;
	z-index: 1;
	padding-block: 4rem;
}

.et-page-hero h1,
.et-page-hero h2 {
	font-size: 2.625rem;
	line-height: 1.3;
}

.et-page-hero__lead {
	margin: 0;
	color: var(--et-heading);
	font-family: "Libre Franklin", sans-serif;
	font-size: 1.3125rem;
	font-weight: 600;
	line-height: 1.3;
}

.et-content-section {
	padding-block: 5rem;
}

.et-content-section--tint { background: var(--et-tint); }
.et-content-section--aqua { background: var(--et-aqua); }
.et-content-section--map {
	background-color: var(--et-aqua);
	background-image: linear-gradient(rgba(237, 249, 248, 0.92), rgba(237, 249, 248, 0.92)), url("assets/images/map-background.png");
	background-position: center;
	background-size: cover;
}

.et-section-heading {
	max-width: 900px;
	margin: 0 auto 3rem;
	text-align: center;
}

.et-section-heading > :last-child { margin-bottom: 0; }

.about-photo-collage {
	display: grid;
	grid-template-columns: 55fr 45fr;
	grid-template-rows: repeat(2, 300px);
	gap: 20px;
	margin-top: -0.5rem;
	margin-bottom: 5rem;
}

.about-photo-collage img {
	width: 100%;
	height: 100%;
	border-radius: var(--et-radius);
	object-fit: cover;
}

.about-photo-collage__two {
	height: 230px !important;
	align-self: end;
}

.about-photo-collage__three {
	height: 245px !important;
	align-self: start;
}

.et-split {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 4rem;
	align-items: center;
}

.et-split--wide-copy { grid-template-columns: 3fr 2fr; }
.et-split--reverse .et-split__media { order: 2; }
.et-split__media img {
	width: 100%;
	border-radius: var(--et-radius);
}

.et-section-media {
	max-width: 1024px;
	margin: 3rem auto 0;
}

.et-section-media img {
	width: 100%;
	border-radius: var(--et-radius);
}

.et-split__copy > :last-child { margin-bottom: 0; }

.et-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
}

.et-card-grid--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.et-card-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.et-info-card {
	padding: 2rem;
	border: 1px solid #e8edf4;
	border-radius: var(--et-radius);
	background: #fff;
	box-shadow: 0 8px 24px rgba(15, 38, 68, 0.05);
}

.et-info-card h2,
.et-info-card h3,
.et-info-card h4 {
	font-size: 1.25rem;
	line-height: 1.4;
}

.et-info-card > :last-child { margin-bottom: 0; }

.et-info-card__icon {
	display: grid;
	width: 64px;
	height: 64px;
	margin-bottom: 1.25rem;
	place-items: center;
	border-radius: 50%;
	background: var(--et-tint);
	color: var(--et-blue);
}

.et-info-card__icon .et-icon { width: 32px; height: 32px; }

.et-steps {
	display: grid;
	gap: 1.25rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.et-step {
	display: grid;
	grid-template-columns: 54px 1fr;
	gap: 1.25rem;
	align-items: start;
	padding: 1.5rem;
	border-radius: var(--et-radius);
	background: #fff;
	box-shadow: 0 7px 20px rgba(15, 38, 68, 0.06);
}

.et-step__number {
	display: grid;
	width: 54px;
	height: 54px;
	place-items: center;
	border-radius: 50%;
	background: var(--et-blue);
	color: #fff;
	font-family: "Libre Franklin", sans-serif;
	font-weight: 700;
}

.et-step h3 { font-size: 1.5rem; }
.et-step > div > :last-child { margin-bottom: 0; }

.et-check-list {
	display: grid;
	gap: 0.75rem;
	margin: 1.5rem 0;
	padding: 0;
	list-style: none;
}

.et-check-list li {
	position: relative;
	padding-left: 1.75rem;
}

.et-check-list li::before {
	position: absolute;
	top: 0.38em;
	left: 0;
	width: 0.9rem;
	height: 0.5rem;
	border-bottom: 2px solid #26b16d;
	border-left: 2px solid #26b16d;
	content: "";
	transform: rotate(-45deg);
}

.et-cta {
	padding: 3.5rem;
	border-radius: var(--et-radius);
	background: var(--et-heading);
	color: #fff;
	text-align: center;
}

.et-cta h2,
.et-cta h3 { color: #fff; }
.et-cta > :last-child { margin-bottom: 0; }

.et-cta .et-info-card {
	color: var(--et-text);
	text-align: left;
}

.et-cta .et-info-card h2,
.et-cta .et-info-card h3 {
	color: var(--et-heading);
}

.et-centered-copy {
	max-width: 840px;
	margin: 2rem auto 0;
	text-align: center;
}

.et-testimonial {
	margin: 0;
	padding: clamp(2rem, 6vw, 4.5rem);
	border-radius: var(--et-radius);
	background: #fff;
	box-shadow: var(--et-shadow);
}

.et-testimonial p {
	color: var(--et-heading);
	font-family: "Libre Franklin", sans-serif;
	font-size: clamp(1.35rem, 3vw, 2rem);
	font-weight: 600;
	line-height: 1.5;
}

.et-testimonial .testimonial-card__stars {
	margin-bottom: 1.3rem;
	color: var(--et-blue);
	font-family: inherit;
	font-size: 1.3rem;
	font-weight: 400;
	letter-spacing: 0.32rem;
	line-height: 1;
}

.et-testimonial footer {
	color: var(--et-text);
	font-size: 1rem;
}

/* Standard content and legal pages */
.content-shell {
	width: min(1000px, calc(100% - 40px));
	min-height: 50vh;
	margin-inline: auto;
	padding-block: 4rem;
}

.entry-title {
	font-size: 2rem;
	line-height: 1.2;
}

.et-prose {
	font-size: 1rem;
	line-height: 1.7;
}

.et-prose h2 { margin-top: 2.4rem; font-size: 1.7rem; }
.et-prose h3 { margin-top: 2rem; font-size: 1.35rem; }
.et-prose li + li { margin-top: 0.45rem; }
.et-prose a { overflow-wrap: anywhere; }
.et-prose > :first-child,
.entry-content > :first-child { margin-top: 0; }

.post-list {
	display: grid;
	gap: 1.5rem;
}

.post-card {
	padding: 1.5rem;
	border: 1px solid var(--et-line);
	border-radius: var(--et-radius);
}

.post-card h2 { font-size: 1.5rem; }

.error-page {
	display: grid;
	min-height: 65vh;
	place-items: center;
	padding-block: 5rem;
	text-align: center;
}

/* Forms and the plugin-owned application */
.edutrack-application .site-main,
.et-app-shell {
	background: var(--et-tint);
}

.et-app-shell {
	min-height: calc(100vh - 203px);
	padding-block: 3rem 5rem;
}

.et-app,
.edutrack-app,
.edutrack-dashboard,
.edutrack-account,
.edutrack-form-wrap,
.et-auth {
	width: min(1120px, calc(100% - 40px));
	margin-inline: auto;
}

.et-auth,
.edutrack-login,
.edutrack-register,
.edutrack-form-wrap {
	max-width: 620px;
	padding: 2.5rem;
	border-radius: var(--et-radius);
	background: #fff;
	box-shadow: var(--et-shadow);
}

.et-form,
.edutrack-form,
.entry-content form {
	display: grid;
	gap: 1rem;
}

.et-form-row,
.edutrack-form-row,
.edutrack-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.et-field,
.edutrack-field,
.entry-content form > p {
	display: grid;
	gap: 0.4rem;
}

label {
	color: var(--et-heading);
	font-weight: 600;
	line-height: 1.5;
}

input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
select,
textarea {
	width: 100%;
	min-height: 48px;
	padding: 0.72rem 0.9rem;
	border: 1px solid #dfe5ee;
	border-radius: var(--et-radius);
	background: #f7f9fc;
	color: var(--et-heading);
	line-height: 1.35;
	transition: border-color 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
}

textarea {
	min-height: 140px;
	resize: vertical;
}

input:focus,
select:focus,
textarea:focus {
	border-color: var(--et-blue);
	background: #fff;
	box-shadow: 0 0 0 3px rgba(23, 107, 200, 0.16);
	outline: none;
}

input[type="checkbox"],
input[type="radio"] {
	width: 1.1rem;
	height: 1.1rem;
	accent-color: var(--et-blue);
}

input[type="file"] {
	padding: 0.7rem;
	border: 1px dashed #b6c4d8;
	border-radius: var(--et-radius);
	background: #f8fbff;
}

.et-help,
.description,
.form-description,
.edutrack-form-note,
.edutrack-file-unavailable {
	color: var(--et-muted);
	font-size: 0.875rem;
}

.edutrack-honeypot {
	position: absolute !important;
	left: -10000px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.et-notice,
.edutrack-notice,
.notice-success,
.notice-error {
	margin-bottom: 1.25rem;
	padding: 0.9rem 1rem;
	border: 1px solid #c7d5e6;
	border-left: 4px solid var(--et-blue);
	border-radius: 6px;
	background: #f5f9ff;
}

.et-notice--success,
.edutrack-notice--success,
.edutrack-notice-success,
.notice-success {
	border-left-color: var(--et-success);
	background: #eefaf4;
	color: #0e5f39;
}

.et-notice--error,
.edutrack-notice--error,
.edutrack-notice-error,
.notice-error {
	border-left-color: var(--et-danger);
	background: #fff3f2;
	color: #8f1d14;
}

.edutrack-notice-info,
.edutrack-notice--info {
	border-left-color: var(--et-blue);
	background: #f5f9ff;
}

.et-dashboard-grid,
.edutrack-dashboard-grid,
.edutrack-cards,
.edutrack-stat-grid,
.edutrack-stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.25rem;
}

.et-dashboard-card,
.edutrack-card,
.edutrack-panel,
.edutrack-stat,
.edutrack-action-card,
.edutrack-account-membership,
.edutrack-account-details,
.edutrack-profile,
.edutrack-categories,
.edutrack-upload,
.edutrack-certificates,
.edutrack-status,
.edutrack-overview,
.edutrack-affiliate-dashboard {
	padding: 1.5rem;
	border: 1px solid #e7ecf3;
	border-radius: var(--et-radius);
	background: #fff;
	box-shadow: 0 6px 18px rgba(15, 38, 68, 0.05);
}

.et-dashboard-card > :last-child,
.edutrack-card > :last-child,
.edutrack-panel > :last-child,
.edutrack-stat > :last-child,
.edutrack-action-card > :last-child,
.edutrack-account-membership > :last-child,
.edutrack-account-details > :last-child,
.edutrack-profile > :last-child,
.edutrack-categories > :last-child,
.edutrack-upload > :last-child,
.edutrack-certificates > :last-child,
.edutrack-status > :last-child,
.edutrack-overview > :last-child,
.edutrack-affiliate-dashboard > :last-child { margin-bottom: 0; }

.edutrack-stat {
	display: flex;
	min-height: 125px;
	justify-content: center;
	flex-direction: column;
}

.edutrack-stat strong {
	display: block;
	color: var(--et-heading);
	font-family: "Libre Franklin", sans-serif;
	font-size: 2rem;
	font-weight: 800;
	line-height: 1.15;
}

.edutrack-stat span {
	color: var(--et-muted);
	font-size: 0.9rem;
}

.edutrack-overview,
.edutrack-profile,
.edutrack-categories,
.edutrack-upload,
.edutrack-certificates,
.edutrack-status,
.edutrack-account-membership,
.edutrack-account-details {
	margin-bottom: 1.5rem;
}

.edutrack-profile {
	width: min(1120px, calc(100% - 40px));
	margin: 3rem auto;
}

.edutrack-profile-layout {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(240px, 1fr);
	gap: 2.5rem;
	align-items: start;
}

.edutrack-profile-companion {
	padding-left: 2rem;
	border-left: 1px solid var(--et-line);
}

.edutrack-profile-companion img {
	width: 225px;
	margin: 0 auto 1.5rem;
}

.edutrack-profile-companion > :last-child {
	margin-bottom: 0;
}

.edutrack-action-card {
	display: block;
	color: var(--et-heading);
	text-decoration: none;
}

.edutrack-action-card:hover {
	border-color: #bdd3ec;
	color: var(--et-blue-dark);
	box-shadow: 0 10px 24px rgba(15, 38, 68, 0.1);
}

.et-stat {
	display: block;
	color: var(--et-heading);
	font-family: "Libre Franklin", sans-serif;
	font-size: 2rem;
	font-weight: 800;
}

.et-progress,
.edutrack-progress {
	height: 10px;
	overflow: hidden;
	border-radius: 99px;
	background: #e8eef6;
}

.et-progress > span,
.edutrack-progress > span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: var(--et-blue);
}

.et-tabs,
.edutrack-tabs,
.edutrack-account-nav,
.edutrack-dashboard-nav {
	display: flex;
	gap: 0.25rem;
	margin: 0 0 1.5rem;
	padding: 0;
	overflow-x: auto;
	border-bottom: 1px solid var(--et-line);
	list-style: none;
}

.et-tabs a,
.edutrack-tabs a,
.edutrack-account-nav a,
.edutrack-dashboard-nav a {
	display: block;
	padding: 0.75rem 1rem;
	border-bottom: 3px solid transparent;
	color: var(--et-text);
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
}

.et-tabs .is-active a,
.edutrack-tabs .is-active a,
.et-tabs a[aria-current="page"],
.edutrack-tabs a[aria-current="page"],
.edutrack-account-nav a[aria-current="page"],
.edutrack-dashboard-nav a.is-active,
.edutrack-dashboard-nav .is-active a {
	border-bottom-color: var(--et-blue);
	color: var(--et-blue-dark);
}

.et-table-wrap,
.edutrack-table-wrap {
	width: 100%;
	overflow-x: auto;
	border: 1px solid var(--et-line);
	border-radius: var(--et-radius);
	background: #fff;
}

table {
	width: 100%;
	border-collapse: collapse;
}

th,
td {
	padding: 0.85rem 1rem;
	border-bottom: 1px solid #e8edf4;
	text-align: left;
	vertical-align: top;
}

th {
	background: #f7f9fc;
	color: var(--et-heading);
	font-weight: 700;
}

tr:last-child td { border-bottom: 0; }

.et-status,
.edutrack-status,
.status-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.25rem 0.65rem;
	border-radius: 99px;
	background: #eef3f8;
	color: #46586b;
	font-size: 0.8125rem;
	font-weight: 700;
	line-height: 1.4;
}

.et-status--good,
.edutrack-status--good,
.status-active { background: #e5f7ee; color: #126b41; }
.et-status--warning,
.edutrack-status--warning,
.status-expiring { background: #fff5df; color: #895000; }
.et-status--danger,
.edutrack-status--danger,
.status-expired { background: #ffebe9; color: #9a2118; }

.et-actions,
.edutrack-actions {
	display: flex;
	gap: 0.65rem;
	align-items: center;
	flex-wrap: wrap;
}

.et-button--secondary,
.button-secondary {
	border: 1px solid var(--et-blue);
	background: #fff;
	color: var(--et-blue-dark);
}

.et-button--secondary:hover,
.button-secondary:hover {
	background: #eff7ff;
	color: var(--et-blue-dark);
}

.et-button--danger {
	background: var(--et-danger);
}

.edutrack-button-small {
	min-height: 36px;
	padding: 0.52rem 0.8rem;
	font-size: 0.875rem;
}

.edutrack-button-danger {
	background: var(--et-danger);
}

button:not(.nav-toggle).edutrack-link-button {
	min-height: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--et-danger) !important;
	font-size: 0.875rem !important;
	font-weight: 600 !important;
	text-decoration: underline;
	transform: none !important;
}

.edutrack-delete-form {
	display: inline !important;
	margin: 0;
}

.edutrack-category-row,
.edutrack-category-progress {
	display: grid;
	grid-template-columns: minmax(180px, 1fr) minmax(220px, 2fr);
	gap: 1rem;
	align-items: center;
	padding-block: 0.9rem;
	border-bottom: 1px solid #e8edf4;
}

.edutrack-category-row:last-child,
.edutrack-category-progress:last-child {
	border-bottom: 0;
}

.edutrack-category-progress div,
.edutrack-category-progress strong,
.edutrack-category-progress span {
	display: block;
}

.edutrack-category-progress span {
	color: var(--et-muted);
	font-size: 0.875rem;
}

progress {
	width: 100%;
	height: 12px;
	border: 0;
	border-radius: 99px;
	background: #e8eef6;
	accent-color: var(--et-blue);
}

progress::-webkit-progress-bar { border-radius: 99px; background: #e8eef6; }
progress::-webkit-progress-value { border-radius: 99px; background: var(--et-blue); }
progress::-moz-progress-bar { border-radius: 99px; background: var(--et-blue); }

.edutrack-membership-summary,
.edutrack-registration,
.edutrack-affiliate-application,
.edutrack-contact {
	width: min(720px, calc(100% - 40px));
	margin: 3rem auto;
	padding: 2.5rem;
}

.edutrack-affiliate-dashboard {
	width: min(1120px, calc(100% - 40px));
	margin: 3rem auto;
}

.edutrack-affiliate-agreement {
	padding: 1rem;
	border: 1px solid var(--et-line);
	border-radius: var(--et-radius);
	background: #f8fafc;
}

.edutrack-affiliate-agreement summary {
	color: var(--et-heading);
	font-weight: 700;
	cursor: pointer;
}

.edutrack-affiliate-agreement > div {
	max-height: 320px;
	margin-top: 1rem;
	padding: 1rem;
	overflow-y: auto;
	border: 1px solid #e6ebf2;
	background: #fff;
	font-size: 0.875rem;
}

#edutrack-referral-link[readonly] {
	background: #fff;
}

.edutrack-tutorial {
	width: min(900px, calc(100% - 40px));
	margin: 2.5rem auto 0;
}

.edutrack-tutorial-frame {
	position: relative;
	width: 100%;
	padding-bottom: 56.25%;
	overflow: hidden;
	border-radius: var(--et-radius);
	background: #0f172a;
	box-shadow: var(--et-shadow);
}

.edutrack-tutorial-frame iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* WordPress content compatibility */
.alignwide { width: min(1280px, calc(100vw - 40px)); max-width: none; margin-left: 50%; transform: translateX(-50%); }
.alignfull { width: 100vw; max-width: none; margin-left: 50%; transform: translateX(-50%); }
.wp-caption { max-width: 100%; }
.wp-caption-text { color: var(--et-muted); font-size: 0.875rem; }
.pagination .nav-links { display: flex; gap: 0.5rem; margin-top: 2rem; }
.pagination .page-numbers { padding: 0.45rem 0.75rem; border: 1px solid var(--et-line); border-radius: 5px; text-decoration: none; }
.pagination .current { background: var(--et-blue); color: #fff; }

/* Footer */
.site-footer {
	border-top: 1px solid #d7dce2;
	background: #fff;
}

.site-footer__inner {
	display: grid;
	min-height: 112px;
	place-items: center;
	text-align: center;
}

.site-footer p {
	margin: 0;
	color: #111;
	font-size: 0.875rem;
	line-height: 2;
}

button.scroll-to-top {
	position: fixed;
	right: 30px;
	bottom: 30px;
	z-index: 100;
	width: 42px;
	height: 42px;
	min-height: 42px;
	padding: 0;
	border: 0;
	border-radius: 2px;
	background: #046bd2;
	box-shadow: 0 4px 12px rgba(15, 23, 42, 0.2);
	color: #fff;
	cursor: pointer;
	transition: background-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

button.scroll-to-top[hidden] {
	display: none;
}

button.scroll-to-top:hover {
	background: #0358ad;
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.25);
	color: #fff;
	transform: translateY(-1px);
}

button.scroll-to-top:focus-visible {
	outline: 3px solid #fbbf24;
	outline-offset: 3px;
}

button.scroll-to-top svg {
	display: block;
}

@media (max-width: 767px) {
	button.scroll-to-top {
		right: 16px;
		bottom: 16px;
	}
}

@media (max-width: 1100px) {
	.site-header__inner { width: min(100% - 32px, var(--et-container)); }
	.primary-menu a { padding-inline: 12px; font-size: 17px; }
	.home-about__inner { gap: 3rem; }
	.home-about__card { padding: 2rem; }
	.home-licensed__copy { padding: 3rem; }
}

@media (max-width: 920px) {
	body { font-size: 15px; }
	h1 { font-size: 2.25rem; line-height: 1; }
	h2 { font-size: 2rem; line-height: 1.1; }
	h3 { font-size: 1.5rem; line-height: 1.3; }
	h4 { font-size: 1.25rem; line-height: 1.4; }
	h5 { font-size: 1.125rem; line-height: 1.4; }
	h6,
	.et-eyebrow { font-size: 0.875rem; line-height: 1.5; }
	.site-header,
	.site-header__inner { height: 76px; }
	.site-branding__logo,
	.custom-logo { width: 190px; max-height: 48px; }
	.nav-toggle { position: relative; display: inline-flex; }
	.primary-navigation {
		position: absolute;
		top: 76px;
		left: 0;
		width: 100%;
		height: auto;
		max-height: 0;
		overflow: hidden;
		border-top: 1px solid transparent;
		background: #fff;
		box-shadow: 0 14px 22px rgba(15, 23, 42, 0.12);
		visibility: hidden;
		transition: max-height 220ms ease, visibility 220ms ease;
	}
	.menu-open .primary-navigation {
		max-height: calc(100vh - 76px);
		overflow-y: auto;
		border-top-color: var(--et-line);
		visibility: visible;
	}
	.primary-menu,
	.primary-menu ul { display: block; height: auto; }
	.primary-menu { padding: 0.6rem max(20px, calc((100vw - 1024px) / 2)); }
	.primary-menu > li { display: block; height: auto; }
	.primary-menu a { height: auto; padding: 0.75rem 0.5rem; font-size: 16px; line-height: 1.4; }
	.primary-menu .sub-menu { position: static; display: block; width: auto; padding: 0 0 0 1rem; border: 0; box-shadow: none; }
	.home-hero { min-height: 570px; }
	.home-hero h1 { font-size: 3rem; }
	.home-about__inner,
	.home-why__inner { grid-template-columns: 1fr; }
	.photo-mosaic { padding-top: 0; }
	.home-why__intro p:not(.et-eyebrow),
	.home-why__intro h2 { max-width: none; }
	.feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.feature-grid__intro { grid-column: 1 / -1; text-align: center; }
	.feature-grid__intro p:not(.et-eyebrow) { max-width: 560px; margin-inline: auto; }
	.home-licensed__inner { grid-template-columns: 60% 40%; }
	.home-licensed__copy { padding: 2.5rem 2rem; }
	.testimonial-card { width: 65%; padding: 2rem; }
	.fact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.et-card-grid--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.et-dashboard-grid,
	.edutrack-dashboard-grid,
	.edutrack-cards,
	.edutrack-stat-grid,
	.edutrack-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
	body { font-size: 16px; }
	.et-container { width: 100%; padding-inline: 10px; }
	.et-section { padding-block: 40px; }
	.site-header,
	.site-header__inner { height: 70px; }
	.primary-navigation { top: 70px; }
	.site-branding__logo,
	.custom-logo { width: 165px; max-height: 44px; }
	.home-hero {
		min-height: 535px;
		padding: 80px 10px 28px;
		align-items: flex-end;
		background-position: center;
	}
	.home-hero h1 { font-size: 2.5rem; line-height: 1.1; }
	.home-hero__promise { margin-block: 14px; padding: 0.45rem; font-size: 1rem; line-height: 1.25; }
	.et-button--hero { width: 100%; min-width: 0; font-size: 0.9rem; }
	.home-about { padding-block: 40px; }
	.home-about__inner { gap: 30px; }
	.photo-mosaic { grid-template-rows: 175px 175px; gap: 10px; }
	.photo-mosaic__one,
	.photo-mosaic__four { height: 175px; }
	.photo-mosaic__two { height: 90px; }
	.photo-mosaic__three { height: 150px; }
	.home-about__card { padding: 2rem 1.25rem; }
	.home-about__card h2 { font-size: 1.75rem; }
	.benefit-list { gap: 1.25rem; }
	.benefit-list li { grid-template-columns: 35px 1fr; gap: 0.75rem; }
	.benefit-list__icon .et-icon { width: 35px; height: 35px; }
	.home-why { padding-block: 40px; }
	.home-why__intro { padding: 0; }
	.why-grid { grid-template-columns: 1fr; }
	.why-card { min-height: 0; padding: 1.25rem; }
	.feature-grid { grid-template-columns: 1fr; gap: 15px; }
	.feature-grid__intro { grid-column: auto; padding: 0.5rem; }
	.feature-card { min-height: 210px; padding: 2rem; }
	.feature-card__icon { width: 76px; height: 76px; margin-bottom: 1.3rem; }
	.feature-card h3 { font-size: 1.25rem; }
	.home-licensed { padding: 0; }
	.home-licensed__inner { width: 100%; grid-template-columns: 1fr; }
	.home-licensed__copy { padding: 40px 20px; }
	.home-licensed__image { min-height: 420px; order: -1; }
	.check-columns { grid-template-columns: 1fr; gap: 0.5rem; }
	.home-testimonial {
		min-height: 760px;
		margin-bottom: 0;
		padding: 260px 10px 40px;
		background-image: linear-gradient(rgba(245,245,245,0) 190px, #f5f5f5 300px), url("assets/images/testimonial-background.jpg");
		background-position: center, top center;
		background-size: 100%, auto 320px;
	}
	.home-testimonial__inner { min-height: 450px; }
	.testimonial-card { position: static; width: 100%; padding: 2rem 1.25rem; transform: none; }
	.home-facts { padding-block: 40px; }
	.fact-grid { gap: 1.25rem 0.5rem; }
	.fact-item { gap: 0.6rem; justify-content: flex-start; }
	.fact-item > .et-icon { width: 40px; height: 40px; }
	.fact-item strong { font-size: 1.5rem; }
	.fact-item small { font-size: 0.75rem; }
	.home-faq { padding-block: 40px; }
	.faq-list summary { padding-block: 1rem; font-size: 1rem; line-height: 1.4; }
	.et-page-hero { min-height: 340px; }
	.et-page-hero__inner { padding-block: 3rem; }
	.et-page-hero h1,
	.et-page-hero h2 { font-size: 1.75rem; line-height: 1.15; }
	.et-page-hero__lead { font-size: 1rem; line-height: 1.5; }
	.et-content-section { padding-block: 40px; }
	.et-split,
	.et-split--wide-copy { grid-template-columns: 1fr; gap: 2rem; }
	.et-split--reverse .et-split__media { order: 0; }
	.et-card-grid,
	.et-card-grid--two,
	.et-card-grid--four { grid-template-columns: 1fr; }
	.et-section-heading { margin-bottom: 2rem; }
	.about-photo-collage { grid-template-rows: repeat(2, 175px); gap: 10px; margin-bottom: 40px; }
	.about-photo-collage__two { height: 105px !important; }
	.about-photo-collage__three { height: 145px !important; }
	.et-cta { padding: 2rem 1.25rem; }
	.et-step { grid-template-columns: 44px 1fr; gap: 0.9rem; padding: 1.1rem; }
	.et-step__number { width: 44px; height: 44px; }
	.content-shell { width: min(100% - 32px, 1000px); padding-block: 2.5rem; }
	.et-form-row,
	.edutrack-form-row,
	.edutrack-form-grid { grid-template-columns: 1fr; }
	.et-auth,
	.edutrack-login,
	.edutrack-register,
	.edutrack-form-wrap { width: min(100% - 20px, 620px); padding: 1.5rem; }
	.et-dashboard-grid,
	.edutrack-dashboard-grid,
	.edutrack-cards,
	.edutrack-stat-grid,
	.edutrack-stats { grid-template-columns: 1fr; }
	.edutrack-category-row,
	.edutrack-category-progress { grid-template-columns: 1fr; }
	.edutrack-profile-layout { grid-template-columns: 1fr; }
	.edutrack-profile-companion { padding: 1.5rem 0 0; border-top: 1px solid var(--et-line); border-left: 0; }
	.edutrack-membership-summary,
	.edutrack-registration,
	.edutrack-affiliate-application,
	.edutrack-contact,
	.edutrack-affiliate-dashboard { width: min(100% - 20px, 720px); padding: 1.5rem; }
	.et-actions > *,
	.edutrack-actions > * { flex: 1 1 auto; }
	th,
	td { padding: 0.7rem; font-size: 0.875rem; }
}

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

@media print {
	.site-header,
	.site-footer,
	.nav-toggle,
	.et-button,
	button,
	.et-actions,
	.edutrack-actions { display: none !important; }
	body { color: #000; background: #fff; font-size: 11pt; }
	.site-main,
	.content-shell,
	.et-app,
	.edutrack-app { width: 100%; max-width: none; padding: 0; }
	a { color: #000; text-decoration: none; }
}
