:root {
--eci-black: #080808;
--eci-ink: #111111;
--eci-ink-soft: #454545;
--eci-muted: #f7f7f5;
--eci-muted-2: #ededeb;
--eci-white: #ffffff;
--eci-gold: #46c48d;
--eci-gold-light: #8be3ba;
--eci-gold-dark: #1f6f50;
--eci-green: #2f7d5c;
--eci-red: #b5332d;
--eci-border: rgba(23, 23, 23, 0.12);
--eci-shadow: 0 16px 40px rgba(0, 0, 0, 0.12);
--eci-radius: 8px;
}
.eci-cf-page {
margin: 0;
background: var(--eci-white);
color: var(--eci-ink);
font-family: Inter, Roboto, "Helvetica Neue", Arial, sans-serif;
text-rendering: optimizeLegibility;
}
.eci-cf-page * {
box-sizing: border-box;
}
.eci-cf-page img {
display: block;
max-width: 100%;
height: auto;
}
.eci-cf-page a {
color: inherit;
text-decoration: none;
}
.eci-cf-skip {
position: absolute;
top: 10px;
left: 10px;
z-index: 1000;
transform: translateY(-140%);
padding: 10px 12px;
border-radius: var(--eci-radius);
background: var(--eci-gold);
color: var(--eci-black);
font-weight: 700;
}
.eci-cf-skip:focus {
transform: translateY(0);
}
.eci-cf-container {
width: min(1180px, calc(100% - 32px));
margin: 0 auto;
}
.eci-cf-header {
position: sticky;
top: 0;
z-index: 100;
background: rgba(255, 255, 255, 0.96);
border-bottom: 1px solid var(--eci-border);
backdrop-filter: blur(14px);
}
.eci-cf-header__inner {
display: flex;
align-items: center;
justify-content: space-between;
min-height: 76px;
gap: 20px;
}
.eci-cf-brand {
display: inline-flex;
align-items: center;
gap: 12px;
min-width: 0;
}
.eci-cf-brand__mark {
display: inline-flex;
align-items: center;
justify-content: center;
width: 42px;
height: 42px;
border-radius: 50%;
background: var(--eci-black);
color: var(--eci-gold);
font-weight: 800;
}
.eci-cf-brand__logo img {
width: auto;
max-width: 230px;
max-height: 54px;
}
.eci-cf-brand__text {
display: none;
}
.eci-cf-brand strong,
.eci-cf-brand small {
display: block;
line-height: 1.15;
}
.eci-cf-brand strong {
font-size: 18px;
}
.eci-cf-brand small {
color: var(--eci-ink-soft);
font-size: 13px;
}
.eci-cf-nav {
display: flex;
align-items: center;
gap: 20px;
font-size: 15px;
font-weight: 650;
}
.eci-cf-nav > a {
padding: 10px 0;
color: var(--eci-ink);
}
.eci-cf-nav > a:hover,
.eci-cf-nav > a:focus {
color: var(--eci-gold-dark);
}
.eci-cf-language {
display: inline-flex;
gap: 6px;
padding-left: 6px;
}
.eci-cf-language a {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 38px;
min-height: 36px;
border: 1px solid var(--eci-border);
border-radius: var(--eci-radius);
font-size: 13px;
}
.eci-cf-language a.is-active,
.eci-cf-language a:hover,
.eci-cf-language a:focus {
background: var(--eci-gold);
color: var(--eci-white);
}
.eci-cf-menu-toggle {
display: none;
min-width: 44px;
min-height: 44px;
border: 1px solid var(--eci-gold) !important;
border-radius: var(--eci-radius);
background: var(--eci-gold) !important;
background-image: none !important;
color: var(--eci-black) !important;
font: inherit;
font-weight: 700;
}
.eci-cf-hero {
position: relative;
min-height: 90vh;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
background: var(--eci-black);
}
.eci-cf-hero__media {
position: absolute;
inset: 0;
background-image: url(//ecoledecoiffure.ca/wp-content/plugins/eci-course-first/assets/hero-mixed.jpg);
background-position: center 30%;
background-size: cover;
}
.eci-cf-hero__overlay {
position: absolute;
inset: 0;
background:
linear-gradient(90deg, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.5) 52%, rgba(0, 0, 0, 0.25) 100%),
linear-gradient(0deg, rgba(0, 0, 0, 0.24), rgba(0, 0, 0, 0.08));
}
.eci-cf-hero__content {
position: relative;
z-index: 1;
padding: 72px 0 64px;
color: var(--eci-white);
}
.eci-cf-trust-row {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: flex-start;
gap: 18px;
margin-bottom: 32px;
color: rgba(255, 255, 255, 0.9);
font-size: 16px;
}
.eci-cf-stars {
color: var(--eci-gold);
font-size: 18px;
letter-spacing: 1px;
}
.eci-cf-eyebrow {
margin: 0 0 14px;
color: var(--eci-gold);
font-size: 14px;
font-weight: 800;
text-transform: uppercase;
letter-spacing: 0;
}
.eci-cf-hero h1 {
max-width: 1040px;
margin: 0;
color: var(--eci-white);
font-size: clamp(44px, 7vw, 96px);
line-height: 0.96;
font-weight: 900;
text-transform: uppercase;
}
.eci-cf-hero__highlight {
display: block;
width: fit-content;
max-width: 1040px;
margin-top: 4px;
background: linear-gradient(90deg, var(--eci-gold), var(--eci-gold-light), var(--eci-gold));
-webkit-background-clip: text;
background-clip: text;
color: transparent;
font-size: clamp(44px, 7vw, 96px);
line-height: 0.96;
font-weight: 900;
text-transform: uppercase;
}
.eci-cf-hero__lead {
max-width: 780px;
margin: 28px 0 0;
color: rgba(255, 255, 255, 0.9);
font-size: 21px;
line-height: 1.45;
}
.eci-cf-actions {
display: flex;
flex-wrap: wrap;
gap: 12px;
margin-top: 32px;
}
.eci-cf-button,
.eci-cf-mini-button {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 46px;
border-radius: var(--eci-radius);
border: 1px solid transparent;
font-weight: 800;
line-height: 1.2;
text-align: center;
cursor: pointer;
transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}
.eci-cf-button {
min-height: 54px;
padding: 14px 24px;
font-size: 17px;
}
.eci-cf-button[hidden],
.eci-cf-mini-button[hidden] {
display: none !important;
}
.eci-cf-button:hover,
.eci-cf-button:focus,
.eci-cf-mini-button:hover,
.eci-cf-mini-button:focus {
transform: translateY(-1px);
}
.eci-cf-button--gold,
.eci-cf-mini-button {
border-color: transparent !important;
background: var(--eci-gold) !important;
background-image: none !important;
color: var(--eci-black) !important;
box-shadow: 0 8px 22px rgba(47, 125, 92, 0.28) !important;
}
.eci-cf-button--gold:hover,
.eci-cf-button--gold:focus,
.eci-cf-mini-button:hover,
.eci-cf-mini-button:focus {
background: #5ebe8f !important;
background-image: none !important;
}
.eci-cf-button--ghost {
border-color: rgba(255, 255, 255, 0.45) !important;
background: rgba(255, 255, 255, 0.1) !important;
background-image: none !important;
color: var(--eci-white) !important;
}
.eci-cf-button--ghost-dark {
border-color: var(--eci-ink) !important;
background: var(--eci-ink) !important;
background-image: none !important;
color: var(--eci-white) !important;
box-shadow: none !important;
}
.eci-cf-button--ghost-dark:hover,
.eci-cf-button--ghost-dark:focus {
border-color: var(--eci-gold-dark) !important;
background: var(--eci-gold-dark) !important;
background-image: none !important;
color: var(--eci-white) !important;
}
.eci-cf-proof {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 24px;
max-width: 960px;
margin: 64px auto 0;
}
.eci-cf-proof div {
min-height: 116px;
padding: 24px 18px;
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: var(--eci-radius);
background: rgba(255, 255, 255, 0.05);
backdrop-filter: blur(8px);
text-align: center;
}
.eci-cf-proof strong {
display: block;
color: var(--eci-gold);
font-size: 32px;
line-height: 1;
}
.eci-cf-proof span {
display: block;
margin-top: 8px;
color: rgba(255, 255, 255, 0.86);
font-size: 14px;
text-transform: uppercase;
}
.eci-cf-proof small {
display: block;
margin-top: 4px;
color: rgba(255, 255, 255, 0.68);
font-size: 12px;
}
.eci-cf-section {
padding: 86px 0;
}
.eci-cf-section--subtle {
background: linear-gradient(180deg, var(--eci-white), rgba(247, 247, 245, 0.55));
}
.eci-cf-section--tint {
background: var(--eci-muted);
}
.eci-cf-section--dark {
background: var(--eci-black);
color: var(--eci-white);
}
.eci-cf-section--dark h2,
.eci-cf-section--dark h3,
.eci-cf-program-hero h1 {
color: var(--eci-white) !important;
}
.eci-cf-section-head {
max-width: 760px;
margin-bottom: 34px;
}
.eci-cf-section-head--center {
margin-right: auto;
margin-left: auto;
text-align: center;
}
.eci-cf-badge {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 34px;
margin: 0 0 16px;
padding: 7px 12px;
border: 1px solid var(--eci-border);
border-radius: var(--eci-radius);
background: var(--eci-white);
color: var(--eci-ink);
font-size: 14px;
font-weight: 700;
}
.eci-cf-section-head h2,
.eci-cf-split h2,
.eci-cf-registration-layout h2,
.eci-cf-program-body h2,
.eci-cf-summary-card h2 {
margin: 0;
font-size: 42px;
line-height: 1.08;
font-weight: 850;
}
.eci-cf-section-head h2 span {
color: var(--eci-gold);
}
.eci-cf-section-head p:not(.eci-cf-eyebrow),
.eci-cf-split > div > p:not(.eci-cf-eyebrow),
.eci-cf-registration-layout > div > p:not(.eci-cf-eyebrow) {
margin: 16px 0 0;
color: var(--eci-ink-soft);
font-size: 18px;
line-height: 1.6;
}
.eci-cf-section--dark .eci-cf-registration-layout > div > p:not(.eci-cf-eyebrow) {
color: rgba(255, 255, 255, 0.78);
}
.eci-cf-filterbar {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-bottom: 22px;
}
.eci-cf-chip {
min-height: 40px;
padding: 9px 14px;
border: 1px solid var(--eci-border);
border-radius: var(--eci-radius);
background: var(--eci-white);
color: var(--eci-ink);
font: inherit;
font-weight: 750;
cursor: pointer;
}
.eci-cf-chip.is-active,
.eci-cf-chip:hover,
.eci-cf-chip:focus {
background: var(--eci-gold);
color: var(--eci-white);
}
.eci-cf-course-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 28px;
max-width: 1120px;
margin: 0 auto;
}
.eci-cf-course-card {
display: flex;
flex-direction: column;
min-height: 100%;
overflow: hidden;
border: 1px solid var(--eci-border);
border-radius: var(--eci-radius);
background: var(--eci-white);
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}
.eci-cf-course-card.is-hidden {
display: none;
}
.eci-cf-course-card__image {
position: relative;
display: block;
aspect-ratio: 4 / 3;
background: var(--eci-muted);
overflow: hidden;
}
.eci-cf-course-card__image img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 220ms ease;
}
.eci-cf-course-card:hover .eci-cf-course-card__image img,
.eci-cf-course-card:focus-within .eci-cf-course-card__image img {
transform: scale(1.035);
}
.eci-cf-course-card__body {
display: flex;
flex: 1;
flex-direction: column;
padding: 18px;
}
.eci-cf-course-card__meta {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-bottom: 12px;
}
.eci-cf-course-card__meta span {
display: inline-flex;
align-items: center;
min-height: 26px;
padding: 4px 8px;
border-radius: var(--eci-radius);
background: var(--eci-muted);
color: var(--eci-ink-soft);
font-size: 12px;
font-weight: 800;
}
.eci-cf-course-card h3 {
margin: 0;
font-size: 22px;
line-height: 1.2;
font-weight: 850;
}
.eci-cf-course-card h3 a:hover,
.eci-cf-course-card h3 a:focus {
color: var(--eci-gold-dark);
}
.eci-cf-course-card p {
margin: 12px 0 0;
color: var(--eci-ink-soft);
line-height: 1.55;
}
.eci-cf-course-card__footer {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: 14px;
margin-top: auto;
padding-top: 20px;
}
.eci-cf-price {
color: var(--eci-gold-dark);
font-size: 20px;
font-weight: 850;
white-space: nowrap;
}
.eci-cf-card-actions {
display: flex;
align-items: center;
gap: 10px;
}
.eci-cf-text-link {
font-weight: 800;
color: var(--eci-gold-dark);
}
.eci-cf-mini-button {
min-height: 38px;
padding: 9px 12px;
border: 0;
font-size: 14px;
}
.eci-cf-empty {
grid-column: 1 / -1;
padding: 20px;
border: 1px dashed var(--eci-border);
border-radius: var(--eci-radius);
color: var(--eci-ink-soft);
}
.eci-cf-schedule-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 20px;
}
.eci-cf-schedule-card {
min-height: 250px;
padding: 20px;
border: 1px solid var(--eci-border);
border-radius: var(--eci-radius);
background: var(--eci-white);
box-shadow: 0 10px 24px rgba(0, 0, 0, 0.05);
}
.eci-cf-schedule-card__top {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 14px;
}
.eci-cf-schedule-card__icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 46px;
height: 46px;
margin-bottom: 18px;
border-radius: 50%;
background: var(--eci-black);
color: var(--eci-gold);
font-size: 13px;
font-weight: 900;
}
.eci-cf-schedule-card__badge {
display: inline-flex;
align-items: center;
min-height: 28px;
padding: 5px 8px;
border-radius: var(--eci-radius);
background: rgba(47, 125, 92, 0.12);
color: var(--eci-gold-dark);
font-size: 11px;
font-weight: 800;
text-align: right;
}
.eci-cf-schedule-card h3 {
margin: 0;
font-size: 22px;
line-height: 1.2;
}
.eci-cf-schedule-card__time {
margin: 10px 0;
color: var(--eci-gold-dark);
font-weight: 850;
}
.eci-cf-schedule-card p:last-child {
margin-bottom: 0;
color: var(--eci-ink-soft);
line-height: 1.55;
}
.eci-cf-schedule-card small {
display: block;
margin-top: 18px;
padding-top: 14px;
border-top: 1px solid var(--eci-border);
color: var(--eci-ink);
font-weight: 800;
}
.eci-cf-split {
display: grid;
grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
gap: 42px;
align-items: start;
}
.eci-cf-benefits {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 18px;
}
.eci-cf-benefit {
min-height: 158px;
padding: 22px;
border: 1px solid var(--eci-border);
border-radius: var(--eci-radius);
background: var(--eci-white);
box-shadow: 0 10px 24px rgba(0, 0, 0, 0.05);
}
.eci-cf-benefit__icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 46px;
height: 46px;
margin-bottom: 18px;
border-radius: 50%;
background: rgba(47, 125, 92, 0.12);
color: var(--eci-gold-dark);
font-weight: 900;
}
.eci-cf-benefit h3 {
margin: 0;
font-size: 20px;
line-height: 1.2;
}
.eci-cf-benefit p {
margin: 10px 0 0;
color: var(--eci-ink-soft);
line-height: 1.55;
}
.eci-cf-benefit strong {
display: block;
margin-top: 14px;
color: var(--eci-gold-dark);
font-size: 14px;
}
.eci-cf-stat-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 18px;
margin-bottom: 48px;
}
.eci-cf-stat-grid div {
padding: 24px 16px;
border: 1px solid var(--eci-border);
border-radius: var(--eci-radius);
background: var(--eci-white);
text-align: center;
box-shadow: 0 10px 24px rgba(0, 0, 0, 0.05);
}
.eci-cf-stat-grid strong {
display: block;
color: var(--eci-gold);
font-size: 38px;
line-height: 1;
font-weight: 900;
}
.eci-cf-stat-grid span {
display: block;
margin-top: 10px;
color: var(--eci-ink-soft);
font-weight: 700;
}
.eci-cf-help-card {
max-width: 720px;
margin: 56px auto 0;
padding: 32px;
border: 1px solid rgba(47, 125, 92, 0.24);
border-radius: var(--eci-radius);
background: linear-gradient(135deg, rgba(47, 125, 92, 0.12), rgba(94, 190, 143, 0.12));
text-align: center;
}
.eci-cf-help-card h3 {
margin: 0;
font-size: 28px;
line-height: 1.12;
}
.eci-cf-help-card p {
max-width: 600px;
margin: 14px auto 0;
color: var(--eci-ink-soft);
line-height: 1.6;
}
.eci-cf-help-card--compact {
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
max-width: 960px;
margin-top: 32px;
text-align: left;
}
.eci-cf-help-card--compact h3 {
font-size: 24px;
}
.eci-cf-help-card--compact p {
margin: 8px 0 0;
}
.eci-cf-help-card--compact .eci-cf-button {
flex: 0 0 auto;
}
.eci-cf-registration-layout {
display: grid;
grid-template-columns: 1fr;
gap: 44px;
align-items: start;
max-width: 1120px;
}
.eci-cf-phone {
margin-top: 26px;
color: var(--eci-gold);
font-size: 28px;
font-weight: 850;
}
.eci-cf-form {
display: grid;
gap: 14px;
width: 100%;
padding: 24px;
border: 1px solid rgba(255, 255, 255, 0.14);
border-radius: var(--eci-radius);
background: var(--eci-white);
color: var(--eci-ink);
box-shadow: var(--eci-shadow);
}
.eci-cf-flow {
gap: 22px;
padding: 28px;
}
.eci-cf-flow__steps {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.eci-cf-flow__steps button {
min-height: 54px;
border: 1px solid var(--eci-border) !important;
border-radius: var(--eci-radius);
background: var(--eci-muted) !important;
background-image: none !important;
color: var(--eci-ink) !important;
font: inherit;
font-weight: 850;
cursor: pointer;
box-shadow: none !important;
}
.eci-cf-flow__steps button span {
display: block;
margin-top: 2px;
color: var(--eci-ink-soft);
font-size: 12px;
font-weight: 700;
}
.eci-cf-flow__steps button.is-active {
border-color: rgba(47, 125, 92, 0.7) !important;
background: var(--eci-gold) !important;
background-image: none !important;
color: var(--eci-black) !important;
}
.eci-cf-flow__steps button.is-active span {
color: var(--eci-black);
}
.eci-cf-flow__panel {
display: grid;
gap: 18px;
}
.eci-cf-flow__panel[hidden] {
display: none;
}
.eci-cf-flow__head {
max-width: 760px;
}
.eci-cf-flow__head h3,
.eci-cf-flow__panel h4 {
margin: 0;
color: var(--eci-ink);
font-size: 28px;
line-height: 1.12;
font-weight: 850;
}
.eci-cf-flow__head p:not(.eci-cf-eyebrow) {
margin: 10px 0 0;
color: var(--eci-ink-soft);
line-height: 1.55;
}
.eci-cf-flow__quiz-card {
display: flex;
align-items: center;
justify-content: space-between;
gap: 18px;
padding: 18px;
border: 1px solid rgba(47, 125, 92, 0.28);
border-radius: var(--eci-radius);
background: linear-gradient(135deg, rgba(47, 125, 92, 0.12), rgba(94, 190, 143, 0.1));
}
.eci-cf-flow__quiz-card strong {
display: block;
font-size: 18px;
}
.eci-cf-flow__quiz-card p {
margin: 6px 0 0;
color: var(--eci-ink-soft);
}
.eci-cf-flow__cards {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 14px;
}
.eci-cf-flow__cards--courses {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.eci-cf-flow-card {
display: grid;
gap: 8px;
min-height: 150px;
padding: 18px;
border: 1px solid var(--eci-border) !important;
border-radius: var(--eci-radius);
background: var(--eci-white) !important;
background-image: none !important;
color: var(--eci-ink) !important;
font: inherit;
text-align: left;
cursor: pointer;
box-shadow: 0 8px 22px rgba(0, 0, 0, 0.05) !important;
transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}
.eci-cf-flow-card:hover,
.eci-cf-flow-card:focus,
.eci-cf-flow-card.is-selected {
border-color: rgba(47, 125, 92, 0.75);
box-shadow: 0 12px 28px rgba(47, 125, 92, 0.16);
transform: translateY(-1px);
}
.eci-cf-flow-card.is-selected {
background: linear-gradient(135deg, rgba(47, 125, 92, 0.14), rgba(94, 190, 143, 0.08)) !important;
}
.eci-cf-flow-card strong {
font-size: 18px;
line-height: 1.2;
}
.eci-cf-flow-card small {
color: var(--eci-ink-soft);
line-height: 1.4;
}
.eci-cf-flow-card > span:last-child {
color: var(--eci-gold-dark);
font-weight: 850;
}
.eci-cf-flow-card__icon,
.eci-cf-flow-card__badge {
display: inline-flex;
align-items: center;
justify-content: center;
width: fit-content;
min-height: 28px;
padding: 5px 8px;
border-radius: var(--eci-radius);
background: rgba(47, 125, 92, 0.12);
color: var(--eci-gold-dark);
font-size: 12px;
font-weight: 900;
}
.eci-cf-flow__select-fallback {
max-width: 420px;
}
.eci-cf-flow-summary {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px;
padding: 18px;
border: 1px solid rgba(47, 125, 92, 0.24);
border-radius: var(--eci-radius);
background: rgba(47, 125, 92, 0.08);
}
.eci-cf-flow-summary div {
display: grid;
gap: 4px;
}
.eci-cf-flow-summary span {
color: var(--eci-ink-soft);
font-size: 12px;
font-weight: 800;
text-transform: uppercase;
}
.eci-cf-flow-summary strong {
font-size: 15px;
}
.eci-cf-status-tabs {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 10px;
}
.eci-cf-status-tabs label {
display: block;
margin: 0;
}
.eci-cf-status-tabs input {
position: absolute;
opacity: 0;
pointer-events: none;
}
.eci-cf-status-tabs span {
display: flex;
align-items: center;
justify-content: center;
min-height: 48px;
border: 1px solid var(--eci-border);
border-radius: var(--eci-radius);
background: var(--eci-muted);
font-weight: 850;
}
.eci-cf-status-tabs input:checked + span {
border-color: rgba(47, 125, 92, 0.7);
background: var(--eci-gold);
color: var(--eci-black);
}
.eci-cf-flow__controls {
display: flex;
justify-content: space-between;
gap: 12px;
}
.eci-cf-dialog[hidden] {
display: none;
}
.eci-cf-dialog {
position: fixed;
inset: 0;
z-index: 1000;
display: flex;
align-items: center;
justify-content: center;
padding: 24px;
}
.eci-cf-dialog__backdrop {
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.62);
}
.eci-cf-dialog__panel {
position: relative;
z-index: 1;
width: min(720px, 100%);
max-height: min(760px, calc(100vh - 48px));
overflow: auto;
padding: 28px;
border-radius: var(--eci-radius);
background: var(--eci-white);
color: var(--eci-ink);
box-shadow: 0 24px 80px rgba(0, 0, 0, 0.35);
}
.eci-cf-dialog__close {
position: absolute;
top: 12px;
right: 12px;
width: 40px;
height: 40px;
border: 1px solid var(--eci-border) !important;
border-radius: var(--eci-radius);
background: var(--eci-white) !important;
background-image: none !important;
color: var(--eci-ink) !important;
font-size: 24px;
line-height: 1;
cursor: pointer;
box-shadow: none !important;
}
.eci-cf-dialog__panel h3 {
margin: 0;
padding-right: 44px;
font-size: 30px;
line-height: 1.12;
}
.eci-cf-dialog__panel h4 {
margin: 18px 0;
font-size: 22px;
line-height: 1.3;
}
.eci-cf-dialog__bar {
height: 8px;
overflow: hidden;
border-radius: 999px;
background: var(--eci-muted);
}
.eci-cf-dialog__bar span {
display: block;
width: 0;
height: 100%;
background: var(--eci-gold);
transition: width 160ms ease;
}
.eci-cf-dialog__options {
display: grid;
gap: 10px;
}
.eci-cf-dialog__options button {
padding: 14px;
border: 1px solid var(--eci-border) !important;
border-radius: var(--eci-radius);
background: var(--eci-white) !important;
background-image: none !important;
color: var(--eci-ink) !important;
font: inherit;
text-align: left;
cursor: pointer;
box-shadow: none !important;
}
.eci-cf-dialog__options button.is-selected {
border-color: rgba(47, 125, 92, 0.8) !important;
background: rgba(47, 125, 92, 0.12) !important;
background-image: none !important;
}
.eci-cf-dialog__result {
display: grid;
gap: 14px;
margin-top: 18px;
padding: 18px;
border-radius: var(--eci-radius);
background: rgba(47, 125, 92, 0.1);
}
.eci-cf-dialog__actions {
display: flex;
justify-content: space-between;
gap: 12px;
margin-top: 22px;
}
.eci-cf-form label {
display: grid;
gap: 7px;
margin: 0;
font-weight: 750;
}
.eci-cf-form span {
display: block;
}
.eci-cf-form input,
.eci-cf-form select,
.eci-cf-form textarea {
width: 100%;
min-height: 46px;
border: 1px solid var(--eci-border);
border-radius: var(--eci-radius);
background: var(--eci-white);
color: var(--eci-ink);
font: inherit;
padding: 11px 12px;
}
.eci-cf-form textarea {
resize: vertical;
}
.eci-cf-form input:focus,
.eci-cf-form select:focus,
.eci-cf-form textarea:focus,
.eci-cf-chip:focus,
.eci-cf-button:focus,
.eci-cf-mini-button:focus,
.eci-cf-menu-toggle:focus,
.eci-cf-flow__steps button:focus,
.eci-cf-flow-card:focus,
.eci-cf-dialog__close:focus,
.eci-cf-dialog__options button:focus {
outline: 3px solid rgba(47, 125, 92, 0.34);
outline-offset: 2px;
}
.eci-cf-form__row {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px;
}
.eci-cf-consent {
grid-template-columns: auto 1fr;
align-items: start;
gap: 10px;
font-weight: 600;
line-height: 1.45;
}
.eci-cf-consent input {
width: 18px;
min-height: 18px;
margin-top: 2px;
}
.eci-cf-notice {
padding: 12px;
border-radius: var(--eci-radius);
font-weight: 750;
}
.eci-cf-notice--success {
background: rgba(47, 111, 88, 0.12);
color: var(--eci-green);
}
.eci-cf-notice--error {
background: rgba(181, 51, 45, 0.12);
color: var(--eci-red);
}
.eci-cf-footer {
padding: 28px 0;
background: #0d1411;
color: rgba(255, 255, 255, 0.76);
}
.eci-cf-footer__inner {
display: grid;
gap: 6px;
}
.eci-cf-footer p {
margin: 0;
}
.eci-cf-footer strong {
color: var(--eci-white);
}
.eci-cf-program-hero {
background: var(--eci-black);
color: var(--eci-white);
padding: 72px 0;
}
.eci-cf-program-hero__grid {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(300px, 430px);
gap: 44px;
align-items: center;
}
.eci-cf-program-hero h1 {
margin: 0;
font-size: 56px;
line-height: 1.05;
font-weight: 850;
}
.eci-cf-program-hero p:not(.eci-cf-eyebrow) {
max-width: 680px;
margin: 20px 0 0;
color: rgba(255, 255, 255, 0.82);
font-size: 20px;
line-height: 1.55;
}
.eci-cf-program-hero__image {
overflow: hidden;
border-radius: var(--eci-radius);
box-shadow: var(--eci-shadow);
}
.eci-cf-program-hero__image img {
width: 100%;
aspect-ratio: 4 / 3;
object-fit: cover;
}
.eci-cf-program-layout {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
gap: 36px;
align-items: start;
}
.eci-cf-program-body,
.eci-cf-summary-card {
border: 1px solid var(--eci-border);
border-radius: var(--eci-radius);
background: var(--eci-white);
}
.eci-cf-program-body {
padding: 28px;
}
.eci-cf-richtext {
margin-top: 20px;
color: var(--eci-ink-soft);
font-size: 17px;
line-height: 1.65;
}
.eci-cf-richtext h1,
.eci-cf-richtext h2,
.eci-cf-richtext h3,
.eci-cf-richtext h4 {
color: var(--eci-ink);
}
.eci-cf-richtext p,
.eci-cf-richtext ul,
.eci-cf-richtext ol {
margin-top: 0;
margin-bottom: 16px;
}
.eci-cf-richtext ul,
.eci-cf-richtext ol {
padding-left: 24px;
}
.eci-cf-program-sidebar {
position: sticky;
top: 96px;
}
.eci-cf-summary-card {
padding: 22px;
box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
}
.eci-cf-summary-card h2 {
font-size: 26px;
}
.eci-cf-summary-card dl {
display: grid;
gap: 0;
margin: 18px 0 0;
}
.eci-cf-summary-card dl > div {
display: grid;
grid-template-columns: 120px minmax(0, 1fr);
gap: 14px;
padding: 14px 0;
border-top: 1px solid var(--eci-border);
}
.eci-cf-summary-card dt {
color: var(--eci-ink-soft);
font-weight: 750;
}
.eci-cf-summary-card dd {
margin: 0;
font-weight: 850;
}
@media (max-width: 980px) {
.eci-cf-nav {
position: absolute;
top: 76px;
left: 0;
right: 0;
display: none;
flex-direction: column;
align-items: stretch;
gap: 0;
padding: 12px 16px 18px;
border-bottom: 1px solid var(--eci-border);
background: var(--eci-white);
}
.eci-cf-nav.is-open {
display: flex;
}
.eci-cf-nav > a {
min-height: 44px;
padding: 12px 0;
}
.eci-cf-language {
padding: 8px 0 0;
}
.eci-cf-menu-toggle {
display: inline-flex;
align-items: center;
justify-content: center;
}
.eci-cf-hero {
min-height: 600px;
}
.eci-cf-hero h1,
.eci-cf-hero__highlight {
font-size: 54px;
}
.eci-cf-proof,
.eci-cf-stat-grid,
.eci-cf-course-grid,
.eci-cf-schedule-grid,
.eci-cf-benefits,
.eci-cf-flow__cards,
.eci-cf-flow__cards--courses,
.eci-cf-split,
.eci-cf-registration-layout,
.eci-cf-program-hero__grid,
.eci-cf-program-layout {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.eci-cf-split,
.eci-cf-registration-layout,
.eci-cf-program-hero__grid,
.eci-cf-program-layout {
grid-template-columns: 1fr;
}
.eci-cf-program-sidebar {
position: static;
}
.eci-cf-flow__steps {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 680px) {
.eci-cf-container {
width: min(100% - 24px, 1180px);
}
.eci-cf-brand strong {
font-size: 16px;
}
.eci-cf-brand small {
font-size: 12px;
}
.eci-cf-brand__logo img {
max-width: 190px;
max-height: 54px;
}
.eci-cf-hero {
min-height: 620px;
}
.eci-cf-hero__content {
padding: 72px 0 48px;
}
.eci-cf-trust-row {
gap: 10px;
font-size: 14px;
}
.eci-cf-hero h1,
.eci-cf-hero__highlight {
font-size: 42px;
line-height: 1.02;
}
.eci-cf-hero__lead {
font-size: 18px;
}
.eci-cf-actions,
.eci-cf-card-actions {
align-items: stretch;
flex-direction: column;
}
.eci-cf-button,
.eci-cf-mini-button {
width: 100%;
}
.eci-cf-proof,
.eci-cf-stat-grid,
.eci-cf-course-grid,
.eci-cf-schedule-grid,
.eci-cf-benefits,
.eci-cf-flow__cards,
.eci-cf-flow__cards--courses,
.eci-cf-flow-summary,
.eci-cf-status-tabs,
.eci-cf-form__row {
grid-template-columns: 1fr;
}
.eci-cf-flow {
padding: 18px;
}
.eci-cf-flow__steps {
grid-template-columns: 1fr;
}
.eci-cf-flow__quiz-card,
.eci-cf-help-card--compact,
.eci-cf-flow__controls,
.eci-cf-dialog__actions {
align-items: stretch;
flex-direction: column;
}
.eci-cf-help-card--compact {
text-align: center;
}
.eci-cf-dialog {
padding: 12px;
}
.eci-cf-dialog__panel {
max-height: calc(100vh - 24px);
padding: 22px;
}
.eci-cf-section {
padding: 54px 0;
}
.eci-cf-section-head h2,
.eci-cf-split h2,
.eci-cf-registration-layout h2 {
font-size: 34px;
}
.eci-cf-program-hero h1 {
font-size: 38px;
}
.eci-cf-program-hero p:not(.eci-cf-eyebrow) {
font-size: 17px;
}
.eci-cf-course-card__footer {
align-items: stretch;
flex-direction: column;
}
.eci-cf-summary-card dl > div {
grid-template-columns: 1fr;
gap: 4px;
}
}
@media (prefers-reduced-motion: reduce) {
.eci-cf-page *,
.eci-cf-page *::before,
.eci-cf-page *::after {
scroll-behavior: auto !important;
transition-duration: 0.01ms !important;
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
}
}
body.eci-cf-page .eci-cf-hero h1,
body.eci-cf-page .eci-cf-section--dark h2,
body.eci-cf-page .eci-cf-section--dark h3,
body.eci-cf-page .eci-cf-program-hero h1 {
color: var(--eci-white) !important;
}