/* ==================================================
   INSTRUCTOR PAGE FOUNDATION
================================================== */

.ns-instructor-page {
	overflow: hidden;
	background: #f6f8fc;
	color: #13233b;
	font-family: "Poppins", sans-serif;
}

.ns-instructor-page *,
.ns-instructor-page *::before,
.ns-instructor-page *::after {
	box-sizing: border-box;
}

.ns-instructor-container {
	width: min(1180px, calc(100% - 40px));
	margin-inline: auto;
}

.ns-instructor-page h1,
.ns-instructor-page h2,
.ns-instructor-page h3 {
	font-family: "Montserrat", sans-serif;
}

.ns-instructor-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 18px;
	color: #d6a208;
	font-family: "Montserrat", sans-serif;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.ns-instructor-eyebrow::before {
	width: 22px;
	height: 2px;
	background: currentColor;
	content: "";
}


/* ==================================================
   SHARED BUTTONS
================================================== */

.ns-instructor-button {
	display: inline-flex;
	min-height: 54px;
	align-items: center;
	justify-content: center;
	padding: 0 25px;
	border-radius: 14px;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 750;
	text-decoration: none;
	transition:
		transform 0.25s ease,
		background 0.25s ease,
		box-shadow 0.25s ease;
}

.ns-instructor-button:hover {
	transform: translateY(-2px);
}

.ns-instructor-button--gold {
	background: #efba19;
	color: #102946;
	box-shadow: 0 16px 40px rgba(239, 186, 25, 0.24);
}

.ns-instructor-button--gold:hover {
	background: #ffd04a;
	color: #102946;
}

.ns-instructor-button--glass {
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.2);
	color: #ffffff;
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
}

.ns-instructor-button--glass:hover {
	background: rgba(255, 255, 255, 0.17);
	color: #ffffff;
}


/* ==================================================
   INSTRUCTOR HERO
================================================== */

.ns-instructor-hero {
	position: relative;
	overflow: hidden;
	padding: 125px 0 110px;
	background:
		linear-gradient(
			135deg,
			#061a34 0%,
			#093767 52%,
			#0d5795 100%
		);
}

.ns-instructor-hero::before {
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(
			rgba(255, 255, 255, 0.032) 1px,
			transparent 1px
		),
		linear-gradient(
			90deg,
			rgba(255, 255, 255, 0.032) 1px,
			transparent 1px
		);
	background-size: 72px 72px;
	content: "";
	mask-image: linear-gradient(to bottom, black, transparent);
}

.ns-instructor-hero__glow {
	position: absolute;
	border-radius: 50%;
	filter: blur(18px);
	pointer-events: none;
}

.ns-instructor-hero__glow--one {
	top: -190px;
	right: -110px;
	width: 500px;
	height: 500px;
	background: rgba(242, 189, 24, 0.17);
}

.ns-instructor-hero__glow--two {
	bottom: -260px;
	left: -170px;
	width: 600px;
	height: 600px;
	background: rgba(57, 146, 229, 0.2);
}

.ns-instructor-hero__grid {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: 1.05fr 0.95fr;
	align-items: center;
	gap: 80px;
}

.ns-instructor-hero__content .ns-instructor-eyebrow {
	color: #f3c332;
}

.ns-instructor-hero h1 {
	max-width: 720px;
	margin: 0 0 26px;
	color: #ffffff;
	font-size: clamp(46px, 5.8vw, 76px);
	font-weight: 750;
	line-height: 1.03;
	letter-spacing: -0.05em;
}

.ns-instructor-hero__lead {
	max-width: 680px;
	margin: 0;
	color: rgba(255, 255, 255, 0.72);
	font-size: 18px;
	line-height: 1.8;
}

.ns-instructor-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 13px;
	margin-top: 36px;
}

.ns-instructor-hero__trust {
	display: flex;
	flex-wrap: wrap;
	gap: 18px 24px;
	margin-top: 34px;
}

.ns-instructor-trust-item {
	display: flex;
	align-items: center;
	gap: 8px;
}

.ns-instructor-trust-item span {
	display: grid;
	width: 20px;
	height: 20px;
	background: rgba(239, 186, 25, 0.16);
	border: 1px solid rgba(239, 186, 25, 0.25);
	border-radius: 50%;
	color: #f4c431;
	font-size: 10px;
	place-items: center;
}

.ns-instructor-trust-item p {
	margin: 0;
	color: rgba(255, 255, 255, 0.68);
	font-size: 12px;
	font-weight: 600;
}


/* ==================================================
   HERO VISUAL CARD
================================================== */

.ns-instructor-hero__visual {
	position: relative;
}

.ns-instructor-dashboard-card {
	position: relative;
	z-index: 2;
	padding: 31px;
	background:
		linear-gradient(
			145deg,
			rgba(255, 255, 255, 0.15),
			rgba(255, 255, 255, 0.07)
		);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 28px;
	box-shadow: 0 35px 90px rgba(0, 0, 0, 0.28);
	backdrop-filter: blur(24px);
	-webkit-backdrop-filter: blur(24px);
}

.ns-instructor-dashboard-card__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	padding-bottom: 25px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.11);
}

.ns-instructor-dashboard-card__header span {
	display: block;
	margin-bottom: 8px;
	color: #f4c431;
	font-size: 10px;
	font-weight: 750;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.ns-instructor-dashboard-card__header h2 {
	max-width: 360px;
	margin: 0;
	color: #ffffff;
	font-size: 22px;
	line-height: 1.35;
}

.ns-instructor-dashboard-card__badge {
	padding: 8px 12px;
	background: rgba(239, 186, 25, 0.15);
	border: 1px solid rgba(239, 186, 25, 0.25);
	border-radius: 999px;
	color: #f4c431;
	font-size: 10px;
	font-weight: 750;
}

.ns-instructor-dashboard-steps {
	display: grid;
	gap: 12px;
	margin-top: 24px;
}

.ns-instructor-dashboard-step {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 16px;
	padding: 17px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 16px;
}

.ns-instructor-dashboard-step__number {
	display: grid;
	width: 40px;
	height: 40px;
	background: rgba(239, 186, 25, 0.14);
	border-radius: 12px;
	color: #f4c431;
	font-size: 11px;
	font-weight: 800;
	place-items: center;
}

.ns-instructor-dashboard-step strong {
	display: block;
	margin-bottom: 3px;
	color: #ffffff;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
}

.ns-instructor-dashboard-step p {
	margin: 0;
	color: rgba(255, 255, 255, 0.57);
	font-size: 11px;
	line-height: 1.6;
}

.ns-instructor-floating-card {
	position: absolute;
	z-index: 3;
	min-width: 180px;
	padding: 15px 18px;
	background: rgba(255, 255, 255, 0.9);
	border: 1px solid rgba(255, 255, 255, 0.96);
	border-radius: 15px;
	box-shadow: 0 20px 55px rgba(1, 19, 39, 0.22);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
}

.ns-instructor-floating-card strong {
	display: block;
	margin-bottom: 3px;
	color: #102b4e;
	font-family: "Montserrat", sans-serif;
	font-size: 12px;
}

.ns-instructor-floating-card span {
	color: #718096;
	font-size: 10px;
}

.ns-instructor-floating-card--top {
	top: -34px;
	right: -35px;
}

.ns-instructor-floating-card--bottom {
	bottom: -32px;
	left: -42px;
}


/* ==================================================
   TRUST STRIP
================================================== */

.ns-instructor-trust-strip {
	background: #ffffff;
	border-bottom: 1px solid rgba(16, 43, 78, 0.08);
}

.ns-instructor-trust-strip__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ns-instructor-trust-strip__grid div {
	padding: 25px 20px;
	border-right: 1px solid rgba(16, 43, 78, 0.08);
	text-align: center;
}

.ns-instructor-trust-strip__grid div:last-child {
	border-right: 0;
}

.ns-instructor-trust-strip strong {
	display: block;
	margin-bottom: 5px;
	color: #104077;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
}

.ns-instructor-trust-strip span {
	color: #748296;
	font-size: 11px;
}


/* ==================================================
   SECTION HEADING
================================================== */

.ns-instructor-section-heading {
	max-width: 780px;
	margin: 0 auto 55px;
	text-align: center;
}

.ns-instructor-section-heading .ns-instructor-eyebrow {
	justify-content: center;
}

.ns-instructor-section-heading h2,
.ns-instructor-audience__content h2,
.ns-instructor-standards__heading h2,
.ns-instructor-application__content h2,
.ns-instructor-final-cta h2 {
	margin: 0;
	color: #102b4e;
	font-size: clamp(34px, 4.2vw, 55px);
	font-weight: 750;
	line-height: 1.12;
	letter-spacing: -0.04em;
}

.ns-instructor-section-heading p {
	margin: 20px 0 0;
	color: #68778b;
	font-size: 16px;
	line-height: 1.8;
}


/* ==================================================
   BENEFITS SECTION
================================================== */

.ns-instructor-benefits {
	padding: 115px 0;
}

.ns-instructor-benefits__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.ns-instructor-benefit-card {
	position: relative;
	min-height: 335px;
	padding: 28px;
	background: rgba(255, 255, 255, 0.8);
	border: 1px solid rgba(255, 255, 255, 0.96);
	border-radius: 23px;
	box-shadow: 0 18px 55px rgba(24, 52, 86, 0.08);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	transition:
		transform 0.3s ease,
		box-shadow 0.3s ease;
}

.ns-instructor-benefit-card:hover {
	box-shadow: 0 28px 75px rgba(24, 52, 86, 0.14);
	transform: translateY(-7px);
}

.ns-instructor-benefit-card__number {
	position: absolute;
	top: 25px;
	right: 25px;
	color: #9aa6b5;
	font-size: 11px;
	font-weight: 750;
}

.ns-instructor-benefit-card__icon {
	display: grid;
	width: 57px;
	height: 57px;
	margin-bottom: 62px;
	background: rgba(16, 64, 119, 0.09);
	border: 1px solid rgba(16, 64, 119, 0.1);
	border-radius: 16px;
	color: #104077;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 800;
	place-items: center;
}

.ns-instructor-benefit-card h3 {
	margin: 0 0 13px;
	color: #102b4e;
	font-size: 19px;
}

.ns-instructor-benefit-card p {
	margin: 0;
	color: #68778b;
	font-size: 13px;
	line-height: 1.75;
}


/* ==================================================
   AUDIENCE SECTION
================================================== */

.ns-instructor-audience {
	padding: 115px 0;
	background: #ffffff;
}

.ns-instructor-audience__grid {
	display: grid;
	grid-template-columns: 0.85fr 1.15fr;
	gap: 90px;
}

.ns-instructor-audience__content {
	position: sticky;
	top: 130px;
	align-self: start;
}

.ns-instructor-audience__content p {
	margin: 22px 0 28px;
	color: #68778b;
	font-size: 16px;
	line-height: 1.8;
}

.ns-instructor-text-link {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: #104077;
	font-size: 14px;
	font-weight: 750;
	text-decoration: none;
}

.ns-instructor-text-link:hover {
	color: #c18d00;
}

.ns-instructor-audience__list {
	display: grid;
}

.ns-instructor-audience-item {
	display: grid;
	grid-template-columns: 55px 1fr;
	gap: 25px;
	padding: 30px 0;
	border-bottom: 1px solid rgba(16, 43, 78, 0.1);
}

.ns-instructor-audience-item:first-child {
	padding-top: 0;
}

.ns-instructor-audience-item__number {
	color: #d7a30a;
	font-family: "Montserrat", sans-serif;
	font-size: 12px;
	font-weight: 800;
}

.ns-instructor-audience-item h3 {
	margin: 0 0 8px;
	color: #102b4e;
	font-size: 20px;
}

.ns-instructor-audience-item p {
	margin: 0;
	color: #68778b;
	font-size: 14px;
	line-height: 1.75;
}


/* ==================================================
   PROCESS SECTION
================================================== */

.ns-instructor-process {
	padding: 115px 0;
}

.ns-instructor-process__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.ns-instructor-process-card {
	padding: 29px;
	background: rgba(255, 255, 255, 0.76);
	border: 1px solid rgba(255, 255, 255, 0.96);
	border-radius: 22px;
	box-shadow: 0 18px 55px rgba(24, 52, 86, 0.08);
}

.ns-instructor-process-card__top {
	display: flex;
	align-items: center;
	gap: 13px;
	margin-bottom: 58px;
}

.ns-instructor-process-card__top span {
	color: #d6a208;
	font-family: "Montserrat", sans-serif;
	font-size: 12px;
	font-weight: 800;
}

.ns-instructor-process-card__line {
	flex: 1;
	height: 1px;
	background: rgba(16, 64, 119, 0.13);
}

.ns-instructor-process-card h3 {
	margin: 0 0 13px;
	color: #102b4e;
	font-size: 19px;
}

.ns-instructor-process-card p {
	margin: 0;
	color: #68778b;
	font-size: 13px;
	line-height: 1.75;
}


/* ==================================================
   COURSE STANDARDS SECTION
================================================== */

.ns-instructor-standards {
	padding: 0 0 115px;
}

.ns-instructor-standards__card {
	display: grid;
	grid-template-columns: 0.85fr 1.15fr;
	gap: 75px;
	padding: 62px;
	background:
		linear-gradient(
			135deg,
			#061c36,
			#0b4b85
		);
	border: 1px solid rgba(255, 255, 255, 0.13);
	border-radius: 31px;
	box-shadow: 0 34px 90px rgba(16, 49, 86, 0.23);
}

.ns-instructor-standards__heading .ns-instructor-eyebrow {
	color: #f2c02a;
}

.ns-instructor-standards__heading h2 {
	color: #ffffff;
}

.ns-instructor-standards__heading p {
	margin: 22px 0 0;
	color: rgba(255, 255, 255, 0.66);
	font-size: 15px;
	line-height: 1.8;
}

.ns-instructor-standards__list {
	display: grid;
}

.ns-instructor-standard-item {
	display: grid;
	grid-template-columns: 45px 1fr;
	gap: 18px;
	padding: 21px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.11);
}

.ns-instructor-standard-item:first-child {
	padding-top: 0;
}

.ns-instructor-standard-item:last-child {
	border-bottom: 0;
}

.ns-instructor-standard-item > span {
	color: #f2c02a;
	font-size: 11px;
	font-weight: 800;
}

.ns-instructor-standard-item strong {
	display: block;
	margin-bottom: 6px;
	color: #ffffff;
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
}

.ns-instructor-standard-item p {
	margin: 0;
	color: rgba(255, 255, 255, 0.61);
	font-size: 12px;
	line-height: 1.7;
}


/* ==================================================
   APPLICATION SECTION
================================================== */

.ns-instructor-application {
	padding: 115px 0;
	background: #ffffff;
}

.ns-instructor-application__grid {
	display: grid;
	grid-template-columns: 0.75fr 1.25fr;
	align-items: start;
	gap: 75px;
}

.ns-instructor-application__content {
	position: sticky;
	top: 130px;
}

.ns-instructor-application__content p {
	margin: 22px 0 30px;
	color: #68778b;
	font-size: 16px;
	line-height: 1.8;
}

.ns-instructor-application-info {
	display: grid;
	gap: 12px;
	padding: 22px;
	background: #f5f8fc;
	border: 1px solid rgba(16, 64, 119, 0.08);
	border-radius: 19px;
}

.ns-instructor-application-info div {
	display: grid;
	grid-template-columns: 35px 1fr;
	align-items: start;
	gap: 10px;
}

.ns-instructor-application-info span {
	color: #d4a00a;
	font-size: 10px;
	font-weight: 800;
}

.ns-instructor-application-info p {
	margin: 0;
	color: #66768b;
	font-size: 12px;
	line-height: 1.65;
}


/* ==================================================
   APPLICATION FORM CARD
================================================== */

.ns-instructor-form-card {
	padding: 42px;
	background:
		linear-gradient(
			145deg,
			rgba(255, 255, 255, 0.97),
			rgba(242, 247, 252, 0.9)
		);
	border: 1px solid rgba(16, 64, 119, 0.09);
	border-radius: 29px;
	box-shadow: 0 30px 90px rgba(22, 50, 84, 0.13);
}

.ns-instructor-form-card__heading {
	margin-bottom: 31px;
	padding-bottom: 27px;
	border-bottom: 1px solid rgba(16, 43, 78, 0.09);
}

.ns-instructor-form-card__heading > span {
	display: block;
	margin-bottom: 10px;
	color: #c99300;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.ns-instructor-form-card__heading h3 {
	margin: 0 0 11px;
	color: #102b4e;
	font-size: 31px;
	letter-spacing: -0.03em;
}

.ns-instructor-form-card__heading p {
	margin: 0;
	color: #718096;
	font-size: 12px;
	line-height: 1.7;
}

.ns-instructor-form {
	display: grid;
	gap: 21px;
}

.ns-instructor-form__row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 17px;
}

.ns-instructor-field {
	display: grid;
	gap: 8px;
}

.ns-instructor-field label {
	color: #263d5a;
	font-size: 12px;
	font-weight: 700;
}

.ns-instructor-field input,
.ns-instructor-field select,
.ns-instructor-field textarea {
	width: 100%;
	margin: 0;
	padding: 14px 15px;
	background: rgba(255, 255, 255, 0.86);
	border: 1px solid rgba(16, 64, 119, 0.14);
	border-radius: 12px;
	color: #13233b;
	font-family: "Poppins", sans-serif;
	font-size: 13px;
	outline: none;
	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease,
		background 0.2s ease;
}

.ns-instructor-field input,
.ns-instructor-field select {
	min-height: 51px;
}

.ns-instructor-field textarea {
	min-height: 135px;
	resize: vertical;
}

.ns-instructor-field input::placeholder,
.ns-instructor-field textarea::placeholder {
	color: #a0aaba;
}

.ns-instructor-field input:focus,
.ns-instructor-field select:focus,
.ns-instructor-field textarea:focus {
	background: #ffffff;
	border-color: rgba(16, 64, 119, 0.5);
	box-shadow: 0 0 0 4px rgba(16, 64, 119, 0.08);
}

.ns-instructor-consent {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: start;
	gap: 10px;
	color: #718096;
	font-size: 11px;
	line-height: 1.65;
	cursor: pointer;
}

.ns-instructor-consent input {
	width: 16px;
	height: 16px;
	margin-top: 2px;
	accent-color: #104077;
}

.ns-instructor-submit {
	display: inline-flex;
	min-height: 55px;
	align-items: center;
	justify-content: center;
	gap: 11px;
	padding: 0 26px;
	background: #104077;
	border: 0;
	border-radius: 13px;
	box-shadow: 0 15px 38px rgba(16, 64, 119, 0.23);
	color: #ffffff;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 750;
	cursor: pointer;
	transition:
		transform 0.25s ease,
		background 0.25s ease,
		box-shadow 0.25s ease;
}

.ns-instructor-submit:hover {
	background: #0b315e;
	box-shadow: 0 20px 45px rgba(16, 64, 119, 0.3);
	transform: translateY(-2px);
}


/* ==================================================
   FORM MESSAGES
================================================== */

.ns-instructor-form-message {
	margin-bottom: 24px;
	padding: 18px 20px;
	border-radius: 14px;
}

.ns-instructor-form-message strong {
	display: block;
	margin-bottom: 5px;
	font-size: 13px;
}

.ns-instructor-form-message p {
	margin: 0;
	font-size: 12px;
	line-height: 1.65;
}

.ns-instructor-form-message--success {
	background: rgba(35, 163, 94, 0.1);
	border: 1px solid rgba(35, 163, 94, 0.2);
	color: #166c3e;
}

.ns-instructor-form-message--error {
	background: rgba(207, 55, 55, 0.09);
	border: 1px solid rgba(207, 55, 55, 0.18);
	color: #9c2929;
}


/* ==================================================
   FAQ SECTION
================================================== */

.ns-instructor-faq {
	padding: 115px 0;
}

.ns-instructor-faq__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.ns-instructor-faq-item {
	background: rgba(255, 255, 255, 0.82);
	border: 1px solid rgba(16, 64, 119, 0.09);
	border-radius: 18px;
	box-shadow: 0 15px 45px rgba(24, 52, 86, 0.07);
	overflow: hidden;
}

.ns-instructor-faq-item summary {
	position: relative;
	padding: 22px 55px 22px 22px;
	color: #102b4e;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	list-style: none;
}

.ns-instructor-faq-item summary::-webkit-details-marker {
	display: none;
}

.ns-instructor-faq-item summary::after {
	position: absolute;
	top: 50%;
	right: 21px;
	color: #104077;
	font-size: 20px;
	font-weight: 400;
	content: "+";
	transform: translateY(-50%);
}

.ns-instructor-faq-item[open] summary::after {
	content: "−";
}

.ns-instructor-faq-item div {
	padding: 0 22px 22px;
}

.ns-instructor-faq-item p {
	margin: 0;
	color: #68778b;
	font-size: 13px;
	line-height: 1.75;
}


/* ==================================================
   FINAL CTA
================================================== */

.ns-instructor-final-cta {
	padding: 0 0 110px;
}

.ns-instructor-final-cta__card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 50px;
	padding: 61px;
	background:
		linear-gradient(
			135deg,
			#061c36,
			#0b4b85
		);
	border: 1px solid rgba(255, 255, 255, 0.13);
	border-radius: 31px;
	box-shadow: 0 34px 90px rgba(16, 49, 86, 0.23);
}

.ns-instructor-final-cta__content {
	max-width: 760px;
}

.ns-instructor-final-cta .ns-instructor-eyebrow {
	color: #f2c02a;
}

.ns-instructor-final-cta h2 {
	color: #ffffff;
}

.ns-instructor-final-cta p {
	margin: 19px 0 0;
	color: rgba(255, 255, 255, 0.68);
	font-size: 15px;
	line-height: 1.8;
}


/* ==================================================
   TABLET RESPONSIVE
================================================== */

@media (max-width: 1024px) {

	.ns-instructor-hero__grid,
	.ns-instructor-audience__grid,
	.ns-instructor-standards__card,
	.ns-instructor-application__grid {
		grid-template-columns: 1fr;
		gap: 58px;
	}

	.ns-instructor-benefits__grid,
	.ns-instructor-process__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ns-instructor-audience__content,
	.ns-instructor-application__content {
		position: static;
	}

	.ns-instructor-final-cta__card {
		align-items: flex-start;
		flex-direction: column;
	}

}


/* ==================================================
   MOBILE RESPONSIVE
================================================== */

@media (max-width: 767px) {

	.ns-instructor-container {
		width: min(100% - 28px, 1180px);
	}

	.ns-instructor-hero {
		padding: 90px 0 80px;
	}

	.ns-instructor-hero h1 {
		font-size: clamp(39px, 12vw, 54px);
	}

	.ns-instructor-hero__lead {
		font-size: 16px;
	}

	.ns-instructor-hero__actions,
	.ns-instructor-button {
		width: 100%;
	}

	.ns-instructor-floating-card {
		display: none;
	}

	.ns-instructor-dashboard-card {
		padding: 22px;
		border-radius: 22px;
	}

	.ns-instructor-dashboard-card__header {
		flex-direction: column;
	}

	.ns-instructor-trust-strip__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ns-instructor-trust-strip__grid div {
		border-bottom: 1px solid rgba(16, 43, 78, 0.08);
	}

	.ns-instructor-benefits,
	.ns-instructor-audience,
	.ns-instructor-process,
	.ns-instructor-application,
	.ns-instructor-faq {
		padding: 80px 0;
	}

	.ns-instructor-benefits__grid,
	.ns-instructor-process__grid,
	.ns-instructor-faq__grid,
	.ns-instructor-form__row {
		grid-template-columns: 1fr;
	}

	.ns-instructor-benefit-card,
	.ns-instructor-process-card {
		min-height: auto;
	}

	.ns-instructor-benefit-card__icon,
	.ns-instructor-process-card__top {
		margin-bottom: 40px;
	}

	.ns-instructor-standards {
		padding-bottom: 80px;
	}

	.ns-instructor-standards__card {
		padding: 40px 24px;
		border-radius: 24px;
	}

	.ns-instructor-form-card {
		padding: 28px 21px;
		border-radius: 22px;
	}

	.ns-instructor-final-cta {
		padding-bottom: 80px;
	}

	.ns-instructor-final-cta__card {
		padding: 40px 24px;
		border-radius: 24px;
	}

}