/* =========================================================
   CRITTENDEN MEDICAL - CONTINUING EDUCATION CREDITS
   ========================================================= */

.cml-credits-page {
	--cml-purple:#676ab1;
	--cml-blue:#41506f;
	--cml-navy:#293542;
	--cml-teal:#66e6d6;
	--cml-light:#f6f7fa;
	--cml-purple-light:#f1f1fa;
	--cml-border:#e1e3ea;
	--cml-text:#1a1a1a;
	background:#fff;
	color:var(--cml-text);
	font-family:"proxima-nova",sans-serif;
	font-size:16px;
	line-height:1.6;
	padding-bottom:70px;
}

.cml-credits-page *,
.cml-credits-page *::before,
.cml-credits-page *::after { box-sizing:border-box; }

.cml-credits-container {
	width:min(1180px,calc(100% - 40px));
	margin:0 auto;
}

/* HERO */
.cml-credits-hero {
	position:relative;
	min-height:390px;
	display:flex;
	align-items:center;
	background:
		linear-gradient(90deg,rgba(29,53,93,.98),rgba(29,53,93,.55)),
		var(--cml-credits-hero-image,linear-gradient(135deg,#243a66,#192c50));
	background-position:center;
	background-size:cover;
	overflow:hidden;
}

.cml-credits-hero-overlay {
	position:absolute;
	inset:0;
	background:linear-gradient(
		90deg,
		rgba(33,54,94,.97) 0%,
		rgba(33,54,94,.87) 36%,
		rgba(65,80,111,.48) 68%,
		rgba(65,80,111,.12) 100%
	);
}

.cml-credits-hero-inner { position:relative; z-index:2; }

.cml-credits-hero-copy {
	max-width:650px;
	padding:65px 0 70px;
	color:#fff;
}

.cml-credits-hero h1 {
	margin:0 0 14px;
	color:#fff;
	font-family:"Roboto",sans-serif;
	font-size:clamp(44px,5vw,66px);
	font-weight:700;
	letter-spacing:-.035em;
	line-height:1;
}

.cml-credits-hero-intro,
.cml-credits-hero-intro p {
	color:#fff;
	font-size:17px;
	line-height:1.55;
}

.cml-credits-hero-intro p:last-child { margin-bottom:0; }

.cml-credits-hero-features {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:24px;
	margin-top:30px;
}

.cml-credits-hero-feature {
	display:grid;
	grid-template-columns:42px 1fr;
	gap:12px;
	align-items:center;
}

.cml-credits-feature-icon {
	display:flex;
	width:38px;
	height:38px;
	align-items:center;
	justify-content:center;
	border:1px solid rgba(255,255,255,.7);
	border-radius:50%;
	color:#fff;
	font-weight:700;
}

.cml-credits-hero-feature strong,
.cml-credits-hero-feature span {
	display:block;
	color:#fff;
}

.cml-credits-hero-feature strong {
	font-family:"Roboto",sans-serif;
	font-size:13px;
	font-weight:600;
}

.cml-credits-hero-feature span {
	margin-top:2px;
	font-size:11px;
	line-height:1.35;
	opacity:.9;
}

/* TABS */
.cml-credits-tabs {
	position:relative;
	z-index:3;
	margin-top:-22px;
}

.cml-credits-tabs-inner {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	max-width:840px;
	border-radius:7px;
	overflow:hidden;
	background:#fff;
	box-shadow:0 7px 22px rgba(41,53,66,.12);
}

.cml-credits-tabs a {
	display:flex;
	align-items:center;
	justify-content:center;
	gap:5px;
	min-height:56px;
	padding:12px 16px;
	border-right:1px solid var(--cml-border);
	color:var(--cml-navy);
	font-family:"Roboto",sans-serif;
	font-size:13px;
	text-decoration:none;
}

.cml-credits-tabs a:last-child { border-right:0; }

.cml-credits-tabs a strong { font-weight:700; }
.cml-credits-tabs a span { color:#6d7480; font-size:11px; }

.cml-credits-tabs a.is-active,
.cml-credits-tabs a:hover {
	background:var(--cml-purple);
	color:#fff;
}

.cml-credits-tabs a.is-active span,
.cml-credits-tabs a:hover span { color:#fff; }

/* CONTENT */
.cml-credits-content { padding-top:45px; }

.cml-credits-kicker {
	display:block;
	margin-bottom:4px;
	color:var(--cml-purple);
	font-family:"Roboto",sans-serif;
	font-size:11px;
	font-weight:700;
	letter-spacing:.055em;
	text-transform:uppercase;
}

.cml-credits-richtext > *:first-child,
.cml-credits-section-intro > *:first-child { margin-top:0; }

.cml-credits-richtext > *:last-child,
.cml-credits-section-intro > *:last-child { margin-bottom:0; }

/* IMPORTANT */
.cml-credits-alert {
	display:grid;
	grid-template-columns:50px 1fr;
	gap:18px;
	margin-bottom:50px;
	padding:26px 28px;
	border:1px solid var(--cml-border);
	border-radius:10px;
	background:#fff;
	box-shadow:0 6px 20px rgba(41,53,66,.06);
}

.cml-credits-alert-icon,
.cml-credits-section-icon,
.cml-credits-contact-icon {
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	background:var(--cml-purple);
	color:#fff;
	font-family:"Roboto",sans-serif;
	font-weight:700;
}

.cml-credits-alert-icon {
	width:42px;
	height:42px;
	font-size:18px;
}

/* SECTION HEADINGS */
.cml-credits-section { margin-top:48px; }

.cml-credits-section-heading {
	display:grid;
	grid-template-columns:46px 1fr;
	gap:16px;
	align-items:start;
	margin-bottom:24px;
}

.cml-credits-section-icon {
	width:38px;
	height:38px;
	font-size:15px;
}

.cml-credits-section-heading h2 {
	margin:0;
	color:var(--cml-navy);
	font-family:"Roboto",sans-serif;
	font-size:clamp(28px,3vw,36px);
	font-weight:500;
	letter-spacing:-.02em;
	line-height:1.15;
}

.cml-credits-section-intro {
	margin-top:5px;
	color:#59616c;
	font-size:14px;
}

/* MCLE CARDS */
.cml-credits-state-grid {
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:18px;
}

.cml-credits-state-card {
	border:1px solid var(--cml-border);
	border-radius:8px;
	background:#fff;
	overflow:hidden;
	box-shadow:0 4px 14px rgba(41,53,66,.04);
}

.cml-credits-state-card-head {
	padding:16px 18px;
	background:linear-gradient(135deg,#4d568f,#676ab1);
	color:#fff;
}

.cml-credits-state-card-head strong {
	display:block;
	font-family:"Roboto",sans-serif;
	font-size:16px;
	font-weight:600;
}

.cml-credits-state-card-head span {
	display:inline-block;
	margin-top:6px;
	padding:3px 6px;
	border-radius:3px;
	background:rgba(255,255,255,.16);
	font-size:9px;
	font-weight:700;
	text-transform:uppercase;
}

.cml-credits-state-card-body { padding:18px; }

.cml-credits-credit-amount {
	color:var(--cml-purple);
	font-family:"Roboto",sans-serif;
	font-size:25px;
	font-weight:700;
	line-height:1;
}

.cml-credits-credit-type {
	margin-top:3px;
	color:var(--cml-navy);
	font-size:10px;
	font-weight:700;
}

.cml-credits-state-description {
	margin-top:14px;
	color:#555d67;
	font-size:12px;
	line-height:1.5;
}

.cml-credits-state-description p:last-child { margin-bottom:0; }

/* RECIPROCITY */
.cml-credits-reciprocity {
	margin-top:24px;
	padding:24px 28px;
	border-radius:8px;
	background:var(--cml-light);
}

.cml-credits-reciprocity h3 {
	margin:0 0 4px;
	color:var(--cml-navy);
	font-family:"Roboto",sans-serif;
	font-size:20px;
	font-weight:500;
}

.cml-credits-reciprocity p {
	margin:0 0 14px;
	font-size:13px;
}

.cml-credits-reciprocity ul {
	display:grid;
	grid-template-columns:repeat(5,1fr);
	gap:5px 20px;
	margin:0;
	padding:0;
	list-style:none;
}

.cml-credits-reciprocity li {
	position:relative;
	padding-left:12px;
	font-size:12px;
}

.cml-credits-reciprocity li::before {
	content:"•";
	position:absolute;
	left:0;
	color:var(--cml-purple);
}

.cml-credits-disclaimer {
	margin-top:14px;
	padding:17px 20px;
	border:1px solid var(--cml-border);
	border-radius:6px;
	background:#fff;
	font-size:11px;
	font-style:italic;
}

/* CE */
.cml-credits-section-tinted {
	margin-right:-20px;
	margin-left:-20px;
	padding:34px 20px;
	border-radius:12px;
	background:linear-gradient(135deg,#f8f8fc,#f1f1fa);
}

.cml-credits-mini-heading {
	margin:18px 0 10px;
	color:var(--cml-navy);
	font-family:"Roboto",sans-serif;
	font-size:13px;
	font-weight:500;
}

.cml-credits-approved-grid {
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:12px;
}

.cml-credits-approved-card {
	padding:16px 18px;
	border-radius:6px;
	background:linear-gradient(135deg,#31466e,#41506f);
	color:#fff;
}

.cml-credits-approved-card strong,
.cml-credits-approved-card span { display:block; }

.cml-credits-approved-card strong {
	font-family:"Roboto",sans-serif;
	font-size:15px;
}

.cml-credits-approved-card span {
	margin-top:3px;
	font-size:10px;
	opacity:.9;
}

.cml-credits-pending-grid {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:12px;
}

.cml-credits-pending-card {
	padding:16px 18px;
	border:1px solid rgba(103,106,177,.55);
	border-radius:6px;
	background:#fff;
}

.cml-credits-pending-card strong,
.cml-credits-pending-card span { display:block; }

.cml-credits-pending-card strong {
	color:var(--cml-navy);
	font-family:"Roboto",sans-serif;
	font-size:14px;
}

.cml-credits-pending-card span {
	margin-top:3px;
	color:#6b727c;
	font-size:10px;
}

.cml-credits-instructions {
	margin-top:22px;
	padding:20px 22px;
	border-left:4px solid var(--cml-purple);
	background:#fff;
}

/* ASHRM */
.cml-credits-ashrm-card {
	display:grid;
	grid-template-columns:130px 1fr;
	gap:28px;
	align-items:center;
	padding:24px;
	border:1px solid var(--cml-border);
	border-radius:9px;
	background:#fff;
}

.cml-credits-ashrm-hours {
	padding:20px;
	border-radius:7px;
	background:#f2e9dc;
	text-align:center;
}

.cml-credits-ashrm-hours strong,
.cml-credits-ashrm-hours span { display:block; }

.cml-credits-ashrm-hours strong {
	color:var(--cml-purple);
	font-family:"Roboto",sans-serif;
	font-size:35px;
	line-height:1;
}

.cml-credits-ashrm-hours span {
	margin-top:5px;
	font-size:10px;
	font-weight:700;
}

/* PROCESS */
.cml-credits-process {
	margin-top:55px;
	padding:35px 38px 38px;
	border-radius:10px;
	background:linear-gradient(135deg,#34476c,#41506f);
	color:#fff;
	text-align:center;
}

.cml-credits-process-kicker {
	display:block;
	color:#fff;
	font-family:"Roboto",sans-serif;
	font-size:10px;
	font-weight:700;
	letter-spacing:.06em;
	text-transform:uppercase;
	opacity:.8;
}

.cml-credits-process h2 {
	margin:5px 0 27px;
	color:#fff;
	font-family:"Roboto",sans-serif;
	font-size:31px;
	font-weight:500;
}

.cml-credits-process-grid {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:35px;
}

.cml-credits-process-step { position:relative; }

.cml-credits-process-icon {
	display:flex;
	width:58px;
	height:58px;
	margin:0 auto 13px;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	background:rgba(255,255,255,.12);
	color:#fff;
	font-size:20px;
}

.cml-credits-process-number {
	position:absolute;
	top:-4px;
	left:calc(50% + 18px);
	display:flex;
	width:20px;
	height:20px;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	background:var(--cml-purple);
	color:#fff;
	font-size:10px;
	font-weight:700;
}

.cml-credits-process-step h3 {
	margin:0 0 5px;
	color:#fff;
	font-family:"Roboto",sans-serif;
	font-size:16px;
	font-weight:500;
}

.cml-credits-process-step p {
	margin:0 auto;
	max-width:230px;
	color:#fff;
	font-size:11px;
	line-height:1.45;
	opacity:.9;
}

/* CONTACT */
.cml-credits-contact {
	display:grid;
	grid-template-columns:48px 1fr auto;
	gap:18px;
	align-items:center;
	margin-top:20px;
	padding:22px 24px;
	border:1px solid var(--cml-border);
	border-radius:8px;
	background:var(--cml-light);
}

.cml-credits-contact-icon {
	width:42px;
	height:42px;
	font-size:18px;
}

.cml-credits-contact h3 {
	margin:0 0 3px;
	color:var(--cml-navy);
	font-family:"Roboto",sans-serif;
	font-size:18px;
	font-weight:500;
}

.cml-credits-contact .cml-credits-richtext { font-size:12px; }

.cml-credits-btn {
	display:inline-flex;
	min-height:44px;
	align-items:center;
	justify-content:center;
	padding:11px 20px;
	border-radius:5px;
	background:var(--cml-purple);
	color:#fff!important;
	font-family:"Roboto",sans-serif;
	font-size:12px;
	font-weight:700;
	letter-spacing:.02em;
	text-decoration:none!important;
	text-transform:uppercase;
}

.cml-credits-btn:hover { background:var(--cml-blue); }

/* RESPONSIVE */
@media (max-width:1000px) {
	.cml-credits-state-grid,
	.cml-credits-approved-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }

	.cml-credits-reciprocity ul { grid-template-columns:repeat(3,1fr); }
}

@media (max-width:767px) {
	.cml-credits-container { width:min(100% - 30px,1180px); }
	.cml-credits-hero { min-height:0; }
	.cml-credits-hero-copy { padding:48px 0 70px; }
	.cml-credits-hero h1 { font-size:42px; }
	.cml-credits-hero-features { grid-template-columns:1fr; gap:13px; }

	.cml-credits-tabs { margin-top:-18px; }
	.cml-credits-tabs-inner { grid-template-columns:1fr; }
	.cml-credits-tabs a {
		min-height:50px;
		border-right:0;
		border-bottom:1px solid var(--cml-border);
	}

	.cml-credits-content { padding-top:35px; }
	.cml-credits-alert { grid-template-columns:42px 1fr; padding:20px; }
	.cml-credits-section { margin-top:38px; }
	.cml-credits-section-heading h2 { font-size:28px; }

	.cml-credits-state-grid,
	.cml-credits-approved-grid,
	.cml-credits-pending-grid { grid-template-columns:1fr; }

	.cml-credits-reciprocity ul { grid-template-columns:repeat(2,1fr); }

	.cml-credits-section-tinted {
		margin-right:0;
		margin-left:0;
		padding:26px 18px;
	}

	.cml-credits-ashrm-card { grid-template-columns:1fr; }
	.cml-credits-ashrm-hours { max-width:150px; }

	.cml-credits-process { padding:28px 20px; }
	.cml-credits-process h2 { font-size:27px; }
	.cml-credits-process-grid { grid-template-columns:1fr; gap:28px; }

	.cml-credits-contact { grid-template-columns:42px 1fr; }
	.cml-credits-contact .cml-credits-btn {
		grid-column:1 / -1;
		width:100%;
	}
}
