/* ==========================================================
   PLC NIVELUL 1 – PRIMII PAȘI ÎN PROGRAMAREA PLC
   Identitate vizuală Academia de Automatizare
========================================================== */

html {
    scroll-behavior: smooth;
}

body {
    background: var(--az-gray);
}

.az-container {
    width: min(1700px, 94vw);
    margin-inline: auto;
}

.plc1-page {
    color: var(--az-ink);
}

.plc1-section,
.plc1-registration {
    padding: clamp(76px, 7vw, 116px) 0;
}

.plc1-section-soft {
    background: var(--az-sand);
}

.plc1-section-dark,
.plc1-registration {
    color: var(--az-white);
    background: var(--az-green-deep);
}

.plc1-pricing-section {
    background: var(--az-sand);

}

.plc1-heading {
    max-width: 940px;
}

.plc1-heading h2,
.plc1-section h2,
.plc1-registration h2 {
    margin-top: 18px;
    color: var(--az-ink);
    font-size: clamp(2.15rem, 4vw, 4.45rem);
    font-weight: 650;
    line-height: 1.05;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.plc1-heading p {
    color: var(--az-green);
    font-size: 1.04rem;
    line-height: 1.75;
}

.plc1-heading-light h2,
.plc1-registration h2 {
    color: var(--az-white);
}

.plc1-section-tag,
.plc1-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: var(--az-green);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.plc1-section-tag::before,
.plc1-eyebrow::before {
    width: 36px;
    height: 2px;
    content: "";
    background: currentColor;
}

.plc1-section-tag::after,
.plc1-eyebrow::after {
    width: 36px;
    height: 2px;
    content: "";
    background: currentColor;
}

.plc1-section-tag-light {
    color: var(--az-lime);
}


/* HERO */

.plc1-hero {
    position: relative;
    padding: clamp(36px, 4vw, 96px) 0;
    overflow: hidden;
    color: var(--az-white);
    background:
        linear-gradient(115deg, color-mix(in srgb, var(--az-green-deep) 99%, transparent), color-mix(in srgb, var(--az-green) 94%, transparent)),
        var(--az-green);
}

.plc1-hero-grid {
    position: absolute;
    inset: 0;
    opacity: .16;
    background-image:
        linear-gradient(color-mix(in srgb, var(--az-white) 12%, transparent) 1px, transparent 1px),
        linear-gradient(90deg, color-mix(in srgb, var(--az-white) 12%, transparent) 1px, transparent 1px);
    background-size: 54px 54px;
    mask-image: linear-gradient(90deg, transparent, var(--az-ink) 45%, var(--az-ink));
}

.plc1-hero .az-container {
    position: relative;
    z-index: 2;
}

.plc1-back-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
    color: color-mix(in srgb, var(--az-white) 68%, transparent);
    text-decoration: none;
    font-size: .86rem;
}

.plc1-back-link:hover {
    color: var(--az-lime);
}

.plc1-eyebrow {
    color: var(--az-lime);
}

.plc1-hero h1 {
    max-width: 980px;
    margin: 24px 0 0;
    color: var(--az-white);
    font-size: clamp(3rem, 5.7vw, 6.1rem);
    font-weight: 650;
    line-height: .98;
    letter-spacing: -.055em;
    text-wrap: balance;
}

.plc1-hero-lead {
    max-width: 780px;
    margin: 28px 0 0;
    color: color-mix(in srgb, var(--az-white) 90%, transparent);
    font-size: clamp(1.12rem, 1.6vw, 1.34rem);
    line-height: 1.65;
}

.plc1-hero-copy {
    max-width: 760px;
    margin: 14px 0 0;
    color: color-mix(in srgb, var(--az-white) 66%, transparent);
    line-height: 1.75;
}

.plc1-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 36px;
}

.plc1-hero-actions .btn {
    min-height: 58px;
    padding: 14px 22px;
    border-radius: 4px;
}

.plc1-hero-actions .btn-primary {
    color: var(--az-green-deep);
    background: var(--az-lime);
    border-color: var(--az-lime);
}

.plc1-hero-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

.plc1-hero-tags span {
    padding: 8px 12px;
    color: color-mix(in srgb, var(--az-white) 78%, transparent);
    border: 1px solid color-mix(in srgb, var(--az-white) 18%, transparent);
    font-size: .82rem;
    font-weight: 600;
}


/* HERO DASHBOARD */

.plc1-hero-dashboard {
    padding: 34px;
    margin-top: 15px;
    background: color-mix(in srgb, var(--az-white) 7%, transparent);
    border: 1px solid color-mix(in srgb, var(--az-white) 18%, transparent);
    backdrop-filter: blur(10px);
}

.plc1-dashboard-label {
    color: var(--az-lime);
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.plc1-dashboard-primary {
    padding: 24px 0;
    border-bottom: 1px solid color-mix(in srgb, var(--az-white) 16%, transparent);
}

.plc1-dashboard-primary span,
.plc1-dashboard-primary strong {
    display: block;
}

.plc1-dashboard-primary span {
    color: color-mix(in srgb, var(--az-white) 55%, transparent);
    font-size: .82rem;
}

.plc1-dashboard-primary strong {
    margin-top: 8px;
    color: var(--az-white);
    font-size: clamp(1.5rem, 2vw, 2.2rem);
    line-height: 1.15;
}

.plc1-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    border-left: 1px solid color-mix(in srgb, var(--az-white) 16%, transparent);
    border-top: 1px solid color-mix(in srgb, var(--az-white) 16%, transparent);
    margin-top: 24px;
}

.plc1-dashboard-grid > div {
    min-height: 142px;
    padding: 18px;
    border-right: 1px solid color-mix(in srgb, var(--az-white) 16%, transparent);
    border-bottom: 1px solid color-mix(in srgb, var(--az-white) 16%, transparent);
}

.plc1-dashboard-grid i,
.plc1-dashboard-grid span,
.plc1-dashboard-grid strong {
    display: block;
}

.plc1-dashboard-grid i {
    color: var(--az-lime);
    font-size: 1.3rem;
}

.plc1-dashboard-grid span {
    margin-top: 14px;
    color: color-mix(in srgb, var(--az-white) 52%, transparent);
    font-size: .76rem;
}

.plc1-dashboard-grid strong {
    margin-top: 4px;
    color: var(--az-white);
    font-size: .94rem;
}

.plc1-dashboard-note {
    display: grid;
    grid-template-columns: 24px 1fr;
    gap: 10px;
    margin-top: 20px;
    color: color-mix(in srgb, var(--az-white) 68%, transparent);
    font-size: .84rem;
    line-height: 1.5;
}

.plc1-dashboard-note i {
    color: var(--az-lime);
}


/* URMĂTOAREA GRUPĂ */

.plc1-enrollment-panel {
    display: block;
/*    grid-template-columns: 1.3fr 1fr auto;
    gap: 36px; */
    align-items: center;
/*    padding: clamp(28px, 4vw, 44px); */
    background: none;
    border: 1px solid var(--az-line);
    box-shadow: 0 18px 48px color-mix(in srgb, var(--az-green-deep) 8%, transparent);
}

.plc1-enrollment-main h2 {
    margin: 14px 0 8px;
    font-size: clamp(2rem, 3vw, 3rem);
}

.plc1-enrollment-main p {
    margin: 0;
    color: var(--az-green);
}

.plc1-enrollment-main small {
    display: block;
    margin-top: 10px;
    color: var(--az-green);
}

.plc1-seats-head {
    display: flex;
    color: var(--az-white);
}

.plc1-seats-head span {
    color: color-mix(in srgb, var(--az-white) 52%, transparent);
}

.plc1-seats-head small  {
    color: color-mix(in srgb, var(--az-white) 52%, transparent);
}
.plc1-seats-head strong {
    color: var(--az-white);
}

.plc1-seats-progress {
    height: 8px;
    margin: 5px 0 3px;
    overflow: hidden;
    background: color-mix(in srgb, var(--az-white) 52%, transparent);;
}

.plc1-seats-progress span {
    display: block;
    height: 100%;
    background: var(--az-lime);
}

.plc1-seats small {
    color: var(--az-green);
}

.plc1-seats-placeholder {
    margin-top: 12px;
    padding: 10px 12px;
    color: var(--az-green);
    background: var(--az-sand);
    font-size: .82rem;
}

.plc1-enrollment-action .btn {
    white-space: nowrap;
}


/* POZIȚIONARE */

.plc1-before-after {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 22px;
}

.plc1-state-card {
    padding: 34px;
    background: var(--az-white);
    border: 1px solid var(--az-line);
    box-shadow: 0 18px 48px color-mix(in srgb, var(--az-green-deep) 8%, transparent);
}

.plc1-state-card-result {
    color: var(--az-white);
    background: var(--az-green);
    border-color: var(--az-green);
}

.plc1-state-label {
    display: inline-flex;
    padding: 7px 10px;
    color: var(--az-green-deep);
    background: var(--az-lime);
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.plc1-state-card h3 {
    margin-top: 22px;
    color: var(--az-ink);
}

.plc1-state-card-result h3,
.plc1-state-card-result li {
    color: var(--az-white);
}

.plc1-state-card ul {
    margin: 22px 0 0;
    padding-left: 20px;
}

.plc1-state-card li {
    margin-bottom: 12px;
}

.plc1-level-boundary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    border-top: 1px solid var(--az-line);
    border-left: 1px solid var(--az-line);
}

.plc1-level-boundary > div {
    padding: 24px;
    background: var(--az-sand);
    border-right: 1px solid var(--az-line);
    border-bottom: 1px solid var(--az-line);
}

.plc1-level-boundary span,
.plc1-level-boundary strong {
    display: block;
}

.plc1-level-boundary span {
    color: var(--az-green);
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.plc1-level-boundary strong {
    margin-top: 8px;
    color: var(--az-ink);
}


/* AUDIENȚĂ */

.plc1-audience-card {
    padding: 30px;
    background: color-mix(in srgb, var(--az-white) 6%, transparent);
    border: 1px solid color-mix(in srgb, var(--az-white) 16%, transparent);
}

.plc1-audience-card i {
    display: block;
    margin-bottom: 20px;
    color: var(--az-lime);
    font-size: 2rem;
}

.plc1-audience-card > span {
    color: var(--az-lime);
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.plc1-audience-card h3 {
    margin-top: 12px;
    color: var(--az-white);
}

.plc1-audience-card p {
    color: color-mix(in srgb, var(--az-white) 65%, transparent);
}

.plc1-dark-note {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 14px;
    max-width: 100%;
    margin-inline: auto;
    padding: 22px;
    background: color-mix(in srgb, var(--az-lime) 10%, transparent);
    border: 1px solid color-mix(in srgb, var(--az-lime) 25%, transparent);
}

.plc1-dark-note i {
    color: var(--az-lime);
}

.plc1-dark-note p {
    margin: 0;
    color: color-mix(in srgb, var(--az-white) 78%, transparent);
}


/* COMPETENȚE */

.plc1-skills-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    border-top: 1px solid var(--az-line);
    border-left: 1px solid var(--az-line);
}

.plc1-skills-grid article {
    position: relative;
    min-height: 150px;
    padding: 10px;
    padding-left: 30px;
    background: var(--az-white);
    border-right: 1px solid var(--az-line);
    border-bottom: 1px solid var(--az-line);
}

.plc1-skills-grid article > span {
    position: absolute;
    top: 10px;
    right: 24px;
    color: var(--az-green);
    font-size: .72rem;
    font-weight: 800;
}

.plc1-skills-grid i {
    color: var(--az-green);
    font-size: 2rem;
}

.plc1-skills-grid h3 {
    margin-top: 16px;
    color: var(--az-ink);
}

.plc1-skills-grid p {
    color: var(--az-green);
}

.plc1-result-panel {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    color: var(--az-white);
    background: var(--az-green);
}

.plc1-result-panel > div {
    padding: 30px;
    border-right: 1px solid color-mix(in srgb, var(--az-white) 15%, transparent);
}

.plc1-result-panel span {
    color: var(--az-lime);
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.plc1-result-panel h3 {
    margin-top: 12px;
    color: var(--az-white);
    font-size: 1.25rem;
}


/* PROGRAMA */

.plc1-program-accordion {
    max-width: 100%;
    padding: 40px;
    background: var(--az-gray);
    border: 1px solid var(--az-line);
}

.plc1-program-accordion .accordion-item,
.plc1-faq .accordion-item {
    background: transparent;
    border: 0;
    border-bottom: 1px solid var(--az-line);
}

.plc1-program-accordion .accordion-button,
.plc1-faq .accordion-button {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 14px 0;
    color: var(--az-ink);
    background: transparent;
    border: none;
    box-shadow: none;
    font-size: 1.06rem;
    font-weight: 650;
    width: 100%;
}

.plc1-program-accordion .accordion-button > span,
.plc1-faq .accordion-button > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    margin-right: 15px;
    flex: 0 0 42px;
    color: var(--az-green-deep);
    background: var(--az-lime);
    font-size: .72rem;
    font-weight: 800;
}

.plc1-program-accordion .accordion-button:not(.collapsed),
.plc1-faq .accordion-button:not(.collapsed) {
    color: var(--az-green);
}

.plc1-program-accordion .accordion-body,
.plc1-faq .accordion-body {
    padding: 0 0 28px 60px;
    color: var(--az-green);
    line-height: 1.75;
}

.plc1-program-accordion .accordion-body li,
.plc1-faq .accordion-body li {
    margin-bottom: 8px;
}

.plc1-program-accordion .accordion-body p,
.plc1-faq .accordion-body p {
    margin: 18px 0 0;
    color: var(--az-ink);
}

.plc1-program-footer {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: center;
    max-width: 100%;
    margin: 36px auto 0;
}

.plc1-program-exclusion {
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 16px;
    max-width: 760px;
    padding: 22px;
    background: var(--az-white);
    border-left: 4px solid var(--az-lime);
}

.plc1-program-exclusion i {
    color: var(--az-green);
    font-size: 1.5rem;
}

.plc1-program-exclusion strong,
.plc1-program-exclusion p {
    display: block;
}

.plc1-program-exclusion p {
    margin: 6px 0 0;
    color: var(--az-green);
}


/* EXPERIENȚĂ DE ÎNVĂȚARE */

.plc1-learning-cycle {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 18px;
}

.plc1-learning-cycle article {
    position: relative;
    min-height: 300px;
    padding: 28px;
    background: var(--az-white);
    border: 1px solid var(--az-line);
    box-shadow: 0 18px 48px color-mix(in srgb, var(--az-green-deep) 8%, transparent);
}

.plc1-learning-cycle article > span {
    position: absolute;
    top: 20px;
    right: 20px;
    color: var(--az-green);
    font-size: .72rem;
    font-weight: 800;
}

.plc1-learning-cycle i {
    color: var(--az-green);
    font-size: 2rem;
}

.plc1-learning-cycle h3 {
    margin-top: 28px;
    color: var(--az-ink);
    font-size: 1.2rem;
}

.plc1-learning-cycle p {
    color: var(--az-green);
}

.plc1-course-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    background: var(--az-green-deep);
}

.plc1-course-stats > div {
    padding: 28px;
    text-align: center;
    border-right: 1px solid color-mix(in srgb, var(--az-white) 14%, transparent);
}

.plc1-course-stats strong,
.plc1-course-stats span {
    display: block;
}

.plc1-course-stats strong {
    color: var(--az-lime);
    font-size: 2.5rem;
}

.plc1-course-stats span {
    color: color-mix(in srgb, var(--az-white) 66%, transparent);
}


/* PREȚ */

.plc1-included-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    border-top: 1px solid var(--az-line);
    border-left: 1px solid var(--az-line);
}

.plc1-included-grid > div {
    display: flex;
    gap: 12px;
    padding: 18px;
    background: var(--az-white);
    border-right: 1px solid var(--az-line);
    border-bottom: 1px solid var(--az-line);
}

.plc1-included-grid i {
    color: var(--az-green);
}

.plc1-price-card {
    padding: 36px;
    background: var(--az-white);
    border: 1px solid var(--az-line);
    box-shadow: 0 24px 60px color-mix(in srgb, var(--az-green-deep) 14%, transparent);
}

.plc1-price-label {
    color: var(--az-green);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.plc1-price {
    margin: 22px 0 10px;
    color: var(--az-green);
    font-size: clamp(2.5rem, 4vw, 4rem);
    font-weight: 700;
    line-height: 1;
}

.plc1-price-card > p {
    color: var(--az-green);
}

.plc1-price-card dl {
    margin: 26px 0;
}

.plc1-price-card dl > div {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    padding: 13px 0;
    border-bottom: 1px solid var(--az-line);
}

.plc1-price-card dt {
    color: var(--az-green);
    font-weight: 500;
}

.plc1-price-card dd {
    margin: 0;
    color: var(--az-ink);
    font-weight: 650;
    text-align: right;
}

.plc1-price-card > small {
    display: block;
    margin-top: 14px;
    color: var(--az-green);
    text-align: center;
}


/* DIPLOMĂ */

.plc1-diploma-image {
    padding: 14px;
    background: var(--az-white);
    border: 1px solid var(--az-line);
    box-shadow: 0 18px 48px color-mix(in srgb, var(--az-green-deep) 8%, transparent);
}

.plc1-check-list {
    list-style: none;
    padding: 0;
    margin: 28px 0;
}

.plc1-check-list li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 12px;
}

.plc1-check-list li::before {
    position: absolute;
    left: 0;
    content: "✓";
    color: var(--az-green);
    font-weight: 900;
}

.plc1-diploma-note {
    padding: 20px;
    background: var(--az-sand);
    border-left: 4px solid var(--az-lime);
}


/* TESTIMONIALE */

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

.plc1-testimonials blockquote {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 300px;
    margin: 0;
    padding: 30px;
    background: var(--az-white);
    border: 1px solid var(--az-green);
    box-shadow: 0 18px 48px color-mix(in srgb, var(--az-green-deep) 8%, transparent);
}

.plc1-testimonials blockquote p {
    color: var(--az-ink);
    font-size: 0.9rem;
    line-height: 1.75;
}

.plc1-testimonials footer {
    padding-top: 20px;
    border-top: 1px solid var(--az-lime);
}

.plc1-testimonials strong {
    display: block;
    color: var(--az-green);
}

.plc1-testimonials span {
    display: block;
    margin-top: 4px;
    color: var(--az-ink);
    font-size: .84rem;
}


/* FAQ */

.plc1-faq {
    max-width: 100%;
    border: 1px solid var(--az-line);
    padding: 40px;
    background: var(--az-gray);
}

.plc1-faq .accordion-body {
    padding-left: 0;
}


/* FORMULAR */

.plc1-registration p {
    color: color-mix(in srgb, var(--az-white) 68%, transparent);
}

.plc1-registration-summary {
    margin-top: 28px;
    border-top: 1px solid color-mix(in srgb, var(--az-white) 16%, transparent);
}

.plc1-registration-summary > div {
    padding: 16px 0;
    border-bottom: 1px solid color-mix(in srgb, var(--az-white) 16%, transparent);
}

.plc1-registration-summary span,
.plc1-registration-summary strong {
    display: block;
}

.plc1-registration-summary span {
    color: color-mix(in srgb, var(--az-white) 50%, transparent);
    font-size: .76rem;
}

.plc1-registration-summary strong {
    margin-top: 4px;
    color: var(--az-white);
}

.plc1-registration-form h3 {
    margin-top: 12px;
    color: var(--az-ink);
}

.plc1-registration-form p {
    color: var(--az-green);
}

.plc1-registration-form .form-control,
.plc1-registration-form .form-select {
    min-height: 52px;
    border-color: var(--az-line);
    border-radius: 3px;
}

.plc1-registration-form textarea.form-control {
    min-height: 110px;
}

.plc1-registration-form .form-control:focus,
.plc1-registration-form .form-select:focus,
.plc1-registration-form .form-check-input:focus {
    border-color: var(--az-green);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--az-green) 12%, transparent);
}

.plc1-registration-form .form-check-input:checked {
    background-color: var(--az-green);
    border-color: var(--az-green);
}

.plc1-choice-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 12px;
}

.plc1-choice-list label {
    display: flex;
    gap: 10px;
    padding: 16px;
    cursor: pointer;
    background: var(--az-sand);
    border: 1px solid var(--az-line);
}

.plc1-form-navigation {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    margin-top: 28px;
}


/* BUTOANE */

.plc1-page .btn-primary {
    --bs-btn-bg: var(--az-green);
    --bs-btn-border-color: var(--az-green);
    --bs-btn-hover-bg: var(--az-green-deep);
    --bs-btn-hover-border-color: var(--az-green-deep);
    --bs-btn-active-bg: var(--az-green-deep);
    --bs-btn-active-border-color: var(--az-green-deep);
}

.plc1-page .btn-primary {
    color: var(--az-green-deep);
    background: var(--az-lime);
    border-color: var(--az-lime);
}

.plc1-page .btn-outline-primary {
    color: var(--az-green);
    border-color: var(--az-green);
}

.plc1-page .btn-outline-primary:hover {
    color: var(--az-white);
    background: var(--az-green);
    border-color: var(--az-green);
}

.plc1-page .btn:focus,
.plc1-page .btn:focus-visible {
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--az-green) 18%, transparent) !important;
}


/* RESPONSIVE */

@media (max-width: 1199.98px) {
/*    .plc1-enrollment-panel {
        grid-template-columns: 1fr 1fr;
    }
*/
    .plc1-enrollment-action {
        grid-column: 1 / -1;
    }

    .plc1-learning-cycle {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 991.98px) {
    .plc1-hero {
        padding-top: 84px;
        padding-bottom: 84px;
    }

    .plc1-before-after,
    .plc1-level-boundary,
    .plc1-result-panel,
    .plc1-program-footer,
    .plc1-testimonials {
        grid-template-columns: 1fr;
    }

    .plc1-program-footer {
        display: grid;
    }

    .plc1-program-footer .btn {
        justify-self: start;
    }

    .plc1-course-stats {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 767.98px) {
    .az-container {
        width: calc(100% - 36px);
    }

    .plc1-section,
    .plc1-registration {
        padding: 64px 0;
    }

    .plc1-hero h1 {
        font-size: clamp(2.6rem, 12vw, 3.6rem);
    }

    .plc1-hero-actions {
        flex-direction: column;
    }

    .plc1-hero-actions .btn {
        width: 100%;
        justify-content: center;
    }

    .plc1-dashboard-grid,
/*    .plc1-enrollment-panel, */
    .plc1-skills-grid,
    .plc1-learning-cycle,
    .plc1-course-stats,
    .plc1-included-grid,
    .plc1-choice-list {
        grid-template-columns: 1fr;
    }

    .plc1-seats-head,
    .plc1-price-card dl > div,
    .plc1-form-navigation {
        align-items: flex-start;
        flex-direction: column;
    }

    .plc1-program-accordion .accordion-body {
        padding-left: 0;
    }

    .plc1-program-accordion .accordion-button {
        align-items: flex-start;
    }

    .plc1-form-navigation > div {
        display: flex;
        width: 100%;
        gap: 10px;
    }

    .plc1-form-navigation .btn {
        flex: 1;
    }
}

/* =====================================================
   INFORMAȚII CURS
=====================================================*/

.plc1-info-grid{

    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;

    margin-top:60px;

}

.plc1-info-grid article{

    padding:34px;

    background:var(--az-white);

    border:1px solid var(--az-line);

    transition:.25s ease;

}

.plc1-info-grid article:hover{

    transform:translateY(-6px);

    box-shadow:0 20px 50px color-mix(in srgb,var(--az-green-deep) 10%,transparent);

}

.plc1-info-grid i{

    display:inline-flex;

    align-items:center;
    justify-content:center;

    width:64px;
    height:64px;

    margin-bottom:26px;

    color:var(--az-green);

    background:var(--az-lime);

    font-size:1.8rem;

}

.plc1-info-grid h3{

    margin-bottom:22px;

    color:var(--az-ink);

    font-size:1.35rem;

    font-weight:650;

}

.plc1-info-grid ul{

    margin:0;
    padding:0;

    list-style:none;

}

.plc1-info-grid li{

    position:relative;

    padding-left:26px;

    margin-bottom:14px;

    color:var(--az-ink);

    line-height:1.7;

}

.plc1-info-grid li::before{

    content:"";

    position:absolute;

    left:0;
    top:11px;

    width:8px;
    height:8px;

    border-radius:50%;

    background:var(--az-lime);

}

@media(max-width:991px){

    .plc1-info-grid{

        grid-template-columns:repeat(2,minmax(0,1fr));

    }

}

@media(max-width:767px){

    .plc1-info-grid{

        grid-template-columns:1fr;

    }

}

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

@media(max-width:991.98px){
    .plc1-testimonials{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:767.98px){
    .plc1-testimonials{
        display:flex;
        gap:16px;

        margin-inline:-18px;
        padding-inline:18px;
        padding-bottom:12px;

        overflow-x:auto;
        scroll-snap-type:x mandatory;
        scrollbar-width:none;
    }

    .plc1-testimonials::-webkit-scrollbar{
        display:none;
    }

    .plc1-testimonials blockquote{
        flex:0 0 86%;
        min-height:280px;
        scroll-snap-align:start;
    }
}


/* =====================================================
   METODA DE ÎNVĂȚARE
===================================================== */

.plc1-learning-process{

    display:grid;

    grid-template-columns:
        repeat(4,minmax(0,1fr));

    gap:18px;

    margin-top:56px;

}

.plc1-learning-process article{

    position:relative;

    min-height:280px;

    padding:30px;

    background:var(--az-white);

    border:1px solid var(--az-line);

}

.plc1-learning-process article > span{

    display:inline-flex;

    align-items:center;
    justify-content:center;

    width:42px;
    height:42px;

    color:var(--az-green-deep);

    background:var(--az-lime);

    font-size:.72rem;
    font-weight:800;

}

.plc1-learning-process h3{

    margin-top:28px;

    color:var(--az-ink);

    font-size:1.25rem;
    font-weight:650;

}

.plc1-learning-process p{

    margin-bottom:0;

    color:var(--az-green);

    line-height:1.7;

}


/* =====================================================
   COMPETENȚE DOBÂNDITE
===================================================== */

.plc1-competence-grid{

    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:0;

    margin-top:56px;

    border-top:1px solid var(--az-line);
    border-left:1px solid var(--az-line);

}

.plc1-competence-grid > div{

    position:relative;

    min-height:86px;

    padding:22px 24px 22px 56px;

    color:var(--az-ink);

    background:var(--az-white);

    border-right:1px solid var(--az-line);
    border-bottom:1px solid var(--az-line);

    font-size:.96rem;
    font-weight:600;

    line-height:1.55;

}

.plc1-competence-grid > div::before{

    content:"✓";

    position:absolute;

    left:22px;
    top:22px;

    display:flex;

    align-items:center;
    justify-content:center;

    width:24px;
    height:24px;

    color:var(--az-green-deep);

    background:var(--az-lime);

    font-size:.75rem;
    font-weight:900;

}


/* =====================================================
   EVALUAREA COMPETENȚELOR
===================================================== */

.plc1-highlight-card{

    padding:40px;

    color:var(--az-white);

    background:var(--az-green);

    border:1px solid var(--az-green);

}

.plc1-highlight-card h3{

    margin:0;

    color:var(--az-white);

    font-size:clamp(1.7rem,3vw,2.6rem);

    font-weight:650;

    line-height:1.12;

    letter-spacing:-.035em;

}

.plc1-highlight-card p{

    margin:22px 0 0;

    color:var(--az-white);

    line-height:1.75;

}

.plc1-check-list{

    list-style:none;

    margin:30px 0 0;

    padding:0;

}

.plc1-check-list li{

    position:relative;

    padding-left:32px;

    margin-bottom:16px;

    color:var(--az-ink);

    line-height:1.6;

}

.plc1-check-list li::before{

    content:"✓";

    position:absolute;

    left:0;
    top:0;

    color:var(--az-green);

    font-weight:900;

}


/* =====================================================
   ROADMAP PERSONAL
===================================================== */

.plc1-section-dark .plc1-heading h2{

    color:var(--az-white);

}

.plc1-section-dark .plc1-heading p{

    color:var(--az-white);

}

.plc1-section-dark .plc1-section-tag{

    color:var(--az-lime);

}

.plc1-section-dark .plc1-section-tag::before{

    background:var(--az-lime);

}

.plc1-roadmap{

    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:18px;

    margin-top:56px;

}

.plc1-roadmap > div{

    min-height:300px;

    padding:30px;

    background:
        color-mix(
            in srgb,
            var(--az-white) 6%,
            transparent
        );

    border:
        1px solid
        color-mix(
            in srgb,
            var(--az-white) 16%,
            transparent
        );

}

.plc1-roadmap > div > span{

    display:flex;

    align-items:center;
    justify-content:center;

    width:44px;
    height:44px;

    color:var(--az-green-deep);

    background:var(--az-lime);

    font-size:.8rem;
    font-weight:800;

}

.plc1-roadmap h3{

    margin-top:28px;

    color:var(--az-white);

    font-size:1.25rem;
    font-weight:650;

}

.plc1-roadmap p{

    margin-bottom:0;

    color:var(--az-white);

    line-height:1.7;

}


/* =====================================================
   RESPONSIVE
===================================================== */

@media(max-width:991.98px){

    .plc1-learning-process{

        grid-template-columns:
            repeat(2,minmax(0,1fr));

    }

    .plc1-roadmap{

        grid-template-columns:1fr;

    }

}

@media(max-width:767.98px){

    .plc1-learning-process{

        grid-template-columns:1fr;

    }

    .plc1-competence-grid{

        grid-template-columns:1fr;

    }

    .plc1-highlight-card{

        padding:28px;

    }

}

/* =====================================================
   MESAJ FILOSOFIA ACADEMIEI
===================================================== */

.plc1-academy-message{

    display:grid;
    grid-template-columns:72px 1fr;
    gap:24px;

    max-width:100%;

    margin:10px auto 0;

    padding:32px;

    color:var(--az-white);

    background:var(--az-green);

    border:1px solid var(--az-green);

}

.plc1-academy-message-icon{

    display:flex;

    align-items:center;
    justify-content:center;

    width:72px;
    height:72px;

    color:var(--az-green-deep);

    background:var(--az-lime);

    font-size:2rem;

}

.plc1-academy-message-label{

    display:block;

    margin-bottom:10px;

    color:var(--az-lime);

    font-size:.72rem;
    font-weight:800;

    letter-spacing:.12em;

    text-transform:uppercase;

}

.plc1-academy-message p{

    max-width:100%;

    margin:0;

    color:var(--az-white);

    font-size:1.05rem;
    line-height:1.75;

}

@media(max-width:767.98px){

    .plc1-academy-message{

        grid-template-columns:1fr;

        padding:24px;

    }

    .plc1-academy-message-icon{

        width:58px;
        height:58px;

        font-size:1.5rem;

    }

}

/* =====================================================
   ROADMAP COMPETENȚE
===================================================== */

.plc1-competence-roadmap{
    position:relative;
    max-width:1100px;
    margin:60px auto 0;
}

.plc1-competence-roadmap::before{
    content:"";
    position:absolute;
    top:25px;
    bottom:25px;
    left:31px;
    width:2px;
    background:var(--az-line);
}

.plc1-competence-step{
    position:relative;
    display:grid;
    grid-template-columns:64px 1fr;
    gap:28px;
    margin-bottom:18px;
}

.plc1-competence-marker{
    position:relative;
    z-index:2;
}

.plc1-competence-marker span{
    display:flex;
    align-items:center;
    justify-content:center;

    width:64px;
    height:64px;

    color:var(--az-green-deep);
    background:var(--az-lime);

    border:6px solid var(--az-sand);

    font-size:.74rem;
    font-weight:800;
}

.plc1-competence-content{
    padding:28px 30px;

    background:var(--az-white);
    border:1px solid var(--az-line);

    transition:
        border-color .2s ease,
        transform .2s ease;
}

.plc1-competence-content:hover{
    transform:translateX(4px);
    border-color:var(--az-green);
}

.plc1-competence-category{
    color:var(--az-green);

    font-size:.68rem;
    font-weight:800;
    letter-spacing:.12em;

    text-transform:uppercase;
}

.plc1-competence-content h3{
    margin:10px 0 8px;

    color:var(--az-ink);

    font-size:1.28rem;
    font-weight:650;
}

.plc1-competence-content p{
    max-width:800px;

    margin:0;

    color:var(--az-green);

    line-height:1.65;
}


/* AUTOEVALUARE */

.plc1-self-evaluation{
    display:flex;
    flex-wrap:wrap;
    gap:8px;

    margin-top:22px;
    padding-top:20px;

    border-top:1px solid var(--az-line);
}

.plc1-self-evaluation button{
    display:inline-flex;
    align-items:center;
    gap:8px;

    min-height:42px;

    padding:9px 12px;

    color:var(--az-green);

    background:var(--az-gray);

    border:1px solid var(--az-line);

    font-size:.78rem;
    font-weight:650;

    transition:.2s ease;
}

.plc1-self-evaluation button:hover{
    border-color:var(--az-green);
}

.plc1-self-evaluation button.is-selected{
    color:var(--az-green-deep);
    background:var(--az-lime);
    border-color:var(--az-lime);
}


/* REZULTAT */

.plc1-competence-result{
    max-width:1100px;

    margin:42px auto 0;
    padding:32px;

    background:var(--az-green-deep);

    border:1px solid var(--az-green-deep);
}

.plc1-competence-result
.plc1-section-tag{
    color:var(--az-lime);
}

.plc1-competence-result
.plc1-section-tag::before{
    background:var(--az-lime);
}

.plc1-competence-result-grid{
    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    margin-top:26px;

    border-top:
        1px solid
        color-mix(
            in srgb,
            var(--az-white) 16%,
            transparent
        );

    border-left:
        1px solid
        color-mix(
            in srgb,
            var(--az-white) 16%,
            transparent
        );
}

.plc1-competence-result-grid > div{
    padding:24px;

    border-right:
        1px solid
        color-mix(
            in srgb,
            var(--az-white) 16%,
            transparent
        );

    border-bottom:
        1px solid
        color-mix(
            in srgb,
            var(--az-white) 16%,
            transparent
        );
}

.plc1-competence-result-grid strong{
    display:block;

    color:var(--az-lime);

    font-size:2.3rem;
}

.plc1-competence-result-grid span{
    display:block;

    margin-top:4px;

    color:var(--az-white);

    font-size:.82rem;
}

.plc1-competence-result > p{
    margin:24px 0 0;

    color:var(--az-white);

    line-height:1.7;
}


/* MOBILE */

@media(max-width:767.98px){

    .plc1-competence-roadmap::before{
        left:23px;
    }

    .plc1-competence-step{
        grid-template-columns:48px 1fr;
        gap:16px;
    }

    .plc1-competence-marker span{
        width:48px;
        height:48px;

        border-width:4px;
    }

    .plc1-competence-content{
        padding:22px 20px;
    }

    .plc1-self-evaluation{
        flex-direction:column;
    }

    .plc1-self-evaluation button{
        width:100%;
        justify-content:flex-start;
    }

    .plc1-competence-result-grid{
        grid-template-columns:1fr;
    }

}


/* =====================================================
   FORMULAR ÎNSCRIERE – PLC NIVELUL 1
===================================================== */

.plc1-registration{
    color:var(--az-white);
    background:var(--az-green-deep);
}


/* ---------------------------------------------
   COLOANA STÂNGĂ
--------------------------------------------- */

.plc1-registration-intro{
    max-width:520px;
    margin-top:24px;

    color:
        color-mix(
            in srgb,
            var(--az-white) 68%,
            transparent
        );

    font-size:1.02rem;
    line-height:1.75;
}


.plc1-registration-summary{
    margin-top:36px;

    border-top:1px solid
        color-mix(
            in srgb,
            var(--az-white) 16%,
            transparent
        );
}


.plc1-registration-summary > div{
    display:grid;

    grid-template-columns:100px 1fr;

    gap:20px;

    padding:18px 0;

    border-bottom:1px solid
        color-mix(
            in srgb,
            var(--az-white) 16%,
            transparent
        );
}


.plc1-registration-summary span{
    color:
        color-mix(
            in srgb,
            var(--az-white) 50%,
            transparent
        );

    font-size:.76rem;

    text-transform:uppercase;

    letter-spacing:.08em;
}


.plc1-registration-summary strong{
    color:var(--az-white);

    font-size:.95rem;
}


/* ---------------------------------------------
   CONTAINER FORMULAR
--------------------------------------------- */

.plc1-form-shell{
    padding: clamp(10px, 2vw, 20px);
    overflow:hidden;
    color:var(--az-ink);
    background:var(--az-white);
    border:1px solid var(--az-line);
    box-shadow:
        0 24px 70px
        color-mix(
            in srgb,
            var(--az-ink) 18%,
            transparent
        );
}


/* ---------------------------------------------
   HEADER
--------------------------------------------- */

.plc1-form-header{
    display:flex;

    align-items:flex-end;
    justify-content:space-between;

    gap:24px;

    padding:
        28px
        clamp(14px,3vw,34px)
        20px;
}


.plc1-form-header > div{
    display:flex;

    flex-direction:column;

    gap:5px;
}


.plc1-form-header-label{
    color:var(--az-green);

    font-size:.68rem;
    font-weight:800;

    letter-spacing:.12em;

    text-transform:uppercase;
}


.plc1-form-header strong{
    color:var(--az-ink);

    font-size:1rem;
}


.plc1-form-progress-label{
    color:var(--az-green);

    font-size:.75rem;
}


/* ---------------------------------------------
   PROGRESS BAR
--------------------------------------------- */

.plc1-form-progress{
    height:6px;
    margin:0;
    overflow:hidden;
    background:var(--az-gray);
    border-radius:0;
    margin-left: clamp(14px,3vw,34px);
    margin-right: clamp(14px,3vw,34px);
    
}


.plc1-form-progress .progress-bar{
    background:var(--az-lime);
    transition:width .35s ease;
}


/* ---------------------------------------------
   FORM
--------------------------------------------- */

.plc1-registration-form {
    margin-top: 10px;
    padding:
        clamp(10px,2vw,26px)
        clamp(14px,3vw,34px)
        12px;
}


/*
form_progress_plc.js aplică .active
pe pagina vizibilă.
*/

.plc1-registration-form .form-page{
    display:none;
}


.plc1-registration-form .form-page.active{
    display:block;
    animation:
        plcFormPageIn
        .3s ease;
}


@keyframes plcFormPageIn{

    from{
        opacity:0;
        transform:translateY(8px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}


/* ---------------------------------------------
   TITLU PAS
--------------------------------------------- */

.plc1-form-step{
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:var(--az-green);
    font-size:.7rem;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}


.plc1-form-step::before{
    width:30px;
    height:2px;
    content:"";
    background:var(--az-green);
}

.plc1-form-step::after{
    width:30px;
    height:2px;
    content:"";
    background:var(--az-green);
}

.plc1-registration-form .form-page > h3{
    max-width:100%;

    margin:18px 0 0;

    color:var(--az-ink);

    font-size:
        clamp(
            1.75rem,
            3vw,
            2.8rem
        );

    font-weight:650;

    line-height:1.12;

    letter-spacing:-.035em;
}


.plc1-registration-form .form-page > p{
    max-width:100%;

    margin:16px 0 0;

    color:var(--az-green);

    line-height:1.7;
}


/* ---------------------------------------------
   LABELS
--------------------------------------------- */

.plc1-registration-form .form-label{
    margin-bottom:8px;

    color:var(--az-ink);

    font-size:.82rem;
    font-weight:700;
}


.plc1-registration-form .form-label span{
    color:var(--az-green);

    font-weight:400;
}


/* ---------------------------------------------
   INPUT / SELECT / TEXTAREA
--------------------------------------------- */

.plc1-registration-form .form-control,
.plc1-registration-form .form-select{

    width:100%;

    min-height:54px;

    padding:12px 14px;

    color:var(--az-ink);

    background:var(--az-white);

    border:1px solid var(--az-line);

    border-radius:3px;

    transition:
        border-color .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}


.plc1-registration-form textarea.form-control{
    min-height:120px;

    resize:vertical;
}


.plc1-registration-form .form-control::placeholder{
    color:
        color-mix(
            in srgb,
            var(--az-green) 58%,
            transparent
        );
}


.plc1-registration-form .form-control:hover,
.plc1-registration-form .form-select:hover{
    border-color:var(--az-green);
}


.plc1-registration-form .form-control:focus,
.plc1-registration-form .form-select:focus{

    background:var(--az-white);

    border-color:var(--az-green);

    box-shadow:
        0 0 0 4px
        color-mix(
            in srgb,
            var(--az-green) 12%,
            transparent
        );

    outline:0;
}


/* ---------------------------------------------
   CONSENT / GDPR
--------------------------------------------- */

.plc1-consent-card{
    padding:20px;

    background:var(--az-sand);

    border:1px solid var(--az-line);

    border-left:4px solid var(--az-lime);
}


.plc1-consent-secondary{
    background:var(--az-gray);

    border-left-color:var(--az-green);
}


.plc1-consent-card .form-check{
    display: flex;
/*
    grid-template-columns:22px 1fr;

    gap:12px;*/

    align-items:flex-start;

    min-height:auto;

    padding:0;

    margin:0;
}


.plc1-consent-card .form-check-input{
    float:none;

    width:20px;
    height:20px;

    margin:2px 0 0;

    border:1px solid var(--az-green);

    border-radius:2px;
}


.plc1-consent-card .form-check-input:checked{
    background-color:var(--az-green);

    border-color:var(--az-green);
}


.plc1-consent-card .form-check-input:focus{
    box-shadow:
        0 0 0 4px
        color-mix(
            in srgb,
            var(--az-green) 12%,
            transparent
        );
}


.plc1-consent-card .form-check-label{
    color:var(--az-ink);
    font-size:.9rem;
    line-height:1.65;
    margin-left: 30px;
    width: 100%;
}


/* ---------------------------------------------
   OBIECTIVE – CARDURI SELECTABILE
--------------------------------------------- */

.plc1-choice-list{
    display:grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0,1fr)
        );

    gap:12px;
}


.plc1-choice-list label{
    position:relative;

    cursor:pointer;
}


.plc1-choice-list input{
    position:absolute;

    opacity:0;

    pointer-events:none;
}


.plc1-choice-list label > span{
    display:flex;

    align-items:center;

    gap:13px;

    min-height:72px;

    padding:16px;

    color:var(--az-ink);

    background:var(--az-gray);

    border:1px solid var(--az-line);

    font-size:.9rem;
    font-weight:600;

    transition:
        background .2s ease,
        border-color .2s ease,
        transform .2s ease;
}


.plc1-choice-list label > span i{
    color:var(--az-green);

    font-size:1.25rem;
}


.plc1-choice-list label:hover > span{
    transform:translateY(-2px);

    border-color:var(--az-green);
}


.plc1-choice-list input:checked + span{
    color:var(--az-green-deep);

    background:var(--az-lime);

    border-color:var(--az-lime);
}


.plc1-choice-list input:checked + span i{
    color:var(--az-green-deep);
}


/* ---------------------------------------------
   NAVIGAȚIE
--------------------------------------------- */

.plc1-form-navigation{
    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:16px;

    margin-top:40px;

    padding-top:24px;

    border-top:1px solid var(--az-line);
}


.plc1-form-navigation > div{
    display:flex;

    gap:10px;
}


.plc1-form-navigation .btn{
    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    min-height:52px;

    padding:12px 20px;

    border-radius:3px;

    font-weight:650;
}


/* Înapoi */

.plc1-form-navigation .btn-outline-secondary{
    color:var(--az-green);

    background:transparent;

    border-color:var(--az-line);
}


.plc1-form-navigation .btn-outline-secondary:hover:not(:disabled){
    color:var(--az-white);

    background:var(--az-green);

    border-color:var(--az-green);
}


.plc1-form-navigation .btn-outline-secondary:disabled{
    opacity:.4;
}


/* Înainte / submit */

.plc1-form-navigation .btn-primary{
    color:var(--az-white);

    background:var(--az-green);

    border-color:var(--az-green);
}


.plc1-form-navigation .btn-primary:hover,
.plc1-form-navigation .btn-primary:focus{
    color:var(--az-green-deep);

    background:var(--az-lime);

    border-color:var(--az-lime);
}


/* ---------------------------------------------
   MOBILE
--------------------------------------------- */

@media(max-width:767.98px){

    .plc1-form-shell{
        margin-top:10px;
    }


    .plc1-form-header{
        align-items:flex-start;

        padding:
            22px
            20px
            18px;
    }


    .plc1-registration-form {
        padding:
            10px
            20px
            24px;
    }


    .plc1-choice-list{
        grid-template-columns:1fr;
    }


    .plc1-form-navigation{
        flex-direction:column-reverse;

        align-items:stretch;
    }


    .plc1-form-navigation > div{
        width:100%;
    }


    .plc1-form-navigation .btn{
        width:100%;
    }


    .plc1-registration-summary > div{
        grid-template-columns:80px 1fr;
    }

}

/* =====================================================
   MESAJ TRIMITERE FORMULAR
===================================================== */

.plc1-form-message{

    margin-top:32px;

    padding:22px 24px;

    border:1px solid var(--az-line);

    font-size:.95rem;
    font-weight:600;

    line-height:1.7;

}


.plc1-form-message.is-success{

    color:var(--az-green-deep);

    background:var(--az-lime);

    border-color:var(--az-lime);

}


.plc1-form-message.is-success::before{

    content:"✓";

    display:inline-flex;

    align-items:center;
    justify-content:center;

    width:28px;
    height:28px;

    margin-right:12px;

    color:var(--az-white);

    background:var(--az-green);

    font-weight:800;

}


.plc1-form-message.is-error{

    color:var(--az-white);

    background:var(--az-green-deep);

    border-color:var(--az-green-deep);

}


.plc1-form-message.is-error::before{

    content:"!";

    display:inline-flex;

    align-items:center;
    justify-content:center;

    width:28px;
    height:28px;

    margin-right:12px;

    color:var(--az-green-deep);

    background:var(--az-lime);

    font-weight:800;

}


.plc1-form-page-completed{

    display:none !important;

}

/* =====================================================
   FORMULAR – REZUMAT ÎNAINTE DE TRIMITERE
===================================================== */

.plc1-form-summary{

    display:grid;

    gap:18px;

}


.plc1-summary-group{

    padding:26px;

    background:var(--az-gray);

    border:1px solid var(--az-line);

}


.plc1-summary-heading{

    display:flex;

    align-items:center;

    gap:14px;

    margin-bottom:22px;

}


.plc1-summary-heading > span{

    display:flex;

    align-items:center;
    justify-content:center;

    width:38px;
    height:38px;

    flex:0 0 38px;

    color:var(--az-green-deep);

    background:var(--az-lime);

    font-size:.7rem;
    font-weight:800;

}


.plc1-summary-heading h4{

    margin:0;

    color:var(--az-ink);

    font-size:1.08rem;
    font-weight:700;

}


/* DATE */

.plc1-summary-group dl{

    margin:0;

}


.plc1-summary-group dl > div{

    display:grid;

    grid-template-columns:190px 1fr;

    gap:22px;

    padding:13px 0;

    border-bottom:1px solid var(--az-line);

}


.plc1-summary-group dl > div:last-child{

    border-bottom:0;

}


.plc1-summary-group dt{

    color:var(--az-green);

    font-size:.78rem;
    font-weight:600;

}


.plc1-summary-group dd{

    margin:0;

    color:var(--az-ink);

    font-size:.9rem;
    font-weight:600;

    line-height:1.6;

    overflow-wrap:anywhere;

}


/* OBIECTIVE */

.plc1-summary-topics{

    display:flex;

    flex-wrap:wrap;

    gap:8px;

    margin-bottom:18px;

}


.plc1-summary-topics > span{

    padding:8px 11px;

    color:var(--az-green-deep);

    background:var(--az-lime);

    font-size:.78rem;
    font-weight:650;

}


.plc1-summary-topics
.plc1-summary-empty{

    color:var(--az-green);

    background:var(--az-white);

    border:1px solid var(--az-line);

}


/* ACORDURI */

.plc1-summary-consent-row{

    display:grid;

    grid-template-columns:22px 1fr;

    gap:12px;

    padding:13px 0;

    border-bottom:1px solid var(--az-line);

}


.plc1-summary-consent-row:last-child{

    border-bottom:0;

}


.plc1-summary-consent-row i{

    color:var(--az-green);

}


.plc1-summary-consent-row span{

    color:var(--az-ink);

    font-size:.88rem;

    line-height:1.55;

}


/* MOBILE */

@media(max-width:767.98px){

    .plc1-summary-group{

        padding:20px;

    }


    .plc1-summary-group dl > div{

        grid-template-columns:1fr;

        gap:5px;

    }

}

/* ==========================================================
   STRUCTURĂ SECȚIUNE
========================================================== */

#inscriere.plc1-section-dark {
    position: relative;
    overflow: hidden;
    background: var(--az-green-deep);
}

#inscriere.plc1-section-dark::before {
    position: absolute;
    inset: 0;
    pointer-events: none;
    content: "";
    opacity: .08;
    background-image:
        linear-gradient(
            color-mix(in srgb, var(--az-white) 18%, transparent) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            color-mix(in srgb, var(--az-white) 18%, transparent) 1px,
            transparent 1px
        );
    background-size: 54px 54px;
}

#inscriere .az-container {
    position: relative;
    z-index: 1;
}


/* ==========================================================
   COLOANA STÂNGĂ
========================================================== */

.plc1-contact-intro {
    max-width: 650px;
    margin: 24px 0 0;
    color: color-mix(in srgb, var(--az-white) 74%, transparent);
    font-size: 1.04rem;
    line-height: 1.75;
}

.plc1-contact-course {
    margin-top: 36px;
    padding: clamp(24px, 3vw, 32px);
    background: color-mix(in srgb, var(--az-white) 6%, transparent);
    border: 1px solid color-mix(in srgb, var(--az-white) 16%, transparent);
}

.plc1-contact-course > span {
    display: block;
    color: var(--az-lime);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.plc1-contact-course > strong {
    display: block;
    margin-top: 8px;
    color: var(--az-white);
    font-size: clamp(1.55rem, 2.4vw, 2.2rem);
    font-weight: 650;
    line-height: 1.15;
}

.plc1-contact-course dl {
    margin: 26px 0 0;
}

.plc1-contact-course dl > div {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    padding: 13px 0;
    border-bottom: 1px solid color-mix(in srgb, var(--az-white) 14%, transparent);
}

.plc1-contact-course dl > div:last-child {
    border-bottom: 0;
}

.plc1-contact-course dt {
    color: color-mix(in srgb, var(--az-white) 52%, transparent);
    font-size: .84rem;
    font-weight: 500;
}

.plc1-contact-course dd {
    margin: 0;
    color: var(--az-white);
    font-size: .9rem;
    font-weight: 650;
    text-align: right;
}

.plc1-contact-points {
    margin-top: 34px;
}

.plc1-contact-points > div {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 16px;
    padding: 20px 0;
    border-bottom: 1px solid color-mix(in srgb, var(--az-white) 14%, transparent);
}

.plc1-contact-points > div:first-child {
    border-top: 1px solid color-mix(in srgb, var(--az-white) 14%, transparent);
}

.plc1-contact-points > div > span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    color: var(--az-green-deep);
    background: var(--az-lime);
    font-size: .72rem;
    font-weight: 800;
}

.plc1-contact-points strong {
    display: block;
    color: var(--az-white);
    font-size: 1rem;
}

.plc1-contact-points p {
    margin: 6px 0 0;
    color: color-mix(in srgb, var(--az-white) 60%, transparent);
    font-size: .9rem;
    line-height: 1.6;
}


/* ==========================================================
   CONTAINER FORMULAR
========================================================== */

.plc1-contact-form-shell {
    padding: clamp(26px, 4vw, 46px);
    color: var(--az-ink);
    background: var(--az-white);
    border: 1px solid var(--az-line);
    box-shadow: 0 24px 70px color-mix(in srgb, var(--az-green-deep) 24%, transparent);
}

.plc1-contact-form-heading {
    padding-bottom: 28px;
    border-bottom: 1px solid var(--az-line);
}

.plc1-contact-form-heading > span {
    display: inline-block;
    color: var(--az-green);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.plc1-contact-form-heading h3 {
    margin: 10px 0 0;
    color: var(--az-ink);
    font-size: clamp(1.8rem, 3vw, 2.7rem);
    font-weight: 650;
    line-height: 1.08;
    letter-spacing: -.035em;
}

.plc1-contact-form-heading p {
    max-width: 650px;
    margin: 12px 0 0;
    color: var(--az-green);
    line-height: 1.7;
}

.plc1-contact-form {
    margin-top: 4px;
}


/* ==========================================================
   DIVIZOARE FORMULAR
========================================================== */

.plc1-form-divider {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 38px 0 20px;
}

.plc1-form-divider.first {
    margin-top: 30px;
}

.plc1-form-divider::after {
    height: 1px;
    flex: 1;
    content: "";
    background: var(--az-line);
}

.plc1-form-divider > span {
    color: var(--az-green);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    white-space: nowrap;
}

.plc1-form-helper {
    margin: -8px 0 18px;
    color: var(--az-green);
    font-size: .88rem;
}


/* ==========================================================
   INPUTURI BOOTSTRAP
========================================================== */

.plc1-contact-form .form-label {
    margin-bottom: 7px;
    color: var(--az-ink);
    font-size: .84rem;
    font-weight: 650;
}

.plc1-contact-form .form-label > span {
    color: var(--az-green);
    font-size: .76rem;
    font-weight: 500;
}

.plc1-contact-form .form-control,
.plc1-contact-form .form-select {
    min-height: 52px;
    padding: 12px 14px;
    color: var(--az-ink);
    background-color: var(--az-white);
    border: 1px solid var(--az-line);
    border-radius: 3px;
    box-shadow: none;
    font-size: .94rem;
}

.plc1-contact-form textarea.form-control {
    min-height: 128px;
    resize: vertical;
}

.plc1-contact-form .form-control::placeholder {
    color: color-mix(in srgb, var(--az-green) 56%, transparent);
}

.plc1-contact-form .form-control:hover,
.plc1-contact-form .form-select:hover {
    border-color: color-mix(in srgb, var(--az-green) 45%, transparent);
}

.plc1-contact-form .form-control:focus,
.plc1-contact-form .form-select:focus {
    border-color: var(--az-green);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--az-green) 12%, transparent);
}

.plc1-contact-form .form-control:invalid:not(:placeholder-shown):focus {
    box-shadow: 0 0 0 4px color-mix(in srgb, #b42318 10%, transparent);
}


/* ==========================================================
   OBIECTIVE – CARDURI SELECTABILE
========================================================== */

.plc1-registration-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.plc1-registration-options label {
    position: relative;
    display: block;
    margin: 0;
    cursor: pointer;
}

.plc1-registration-options input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.plc1-registration-options label > span {
    display: block;
    height: 100%;
    min-height: 154px;
    padding: 20px;
    background: var(--az-gray);
    border: 1px solid var(--az-line);
    transition:
        border-color .18s ease,
        background-color .18s ease,
        transform .18s ease;
}

.plc1-registration-options label:hover > span {
    border-color: color-mix(in srgb, var(--az-green) 48%, transparent);
    transform: translateY(-1px);
}

.plc1-registration-options input:checked + span {
    background: color-mix(in srgb, var(--az-lime) 22%, var(--az-white));
    border-color: var(--az-green);
}

.plc1-registration-options input:focus-visible + span {
    outline: 3px solid color-mix(in srgb, var(--az-green) 18%, transparent);
    outline-offset: 2px;
}

.plc1-registration-options i {
    display: block;
    margin-bottom: 18px;
    color: var(--az-green);
    font-size: 1.45rem;
}

.plc1-registration-options strong {
    display: block;
    color: var(--az-ink);
    font-size: .98rem;
}

.plc1-registration-options small {
    display: block;
    margin-top: 7px;
    color: var(--az-green);
    font-size: .82rem;
    line-height: 1.55;
}

.plc1-registration-options input:checked + span::after {
    position: absolute;
    top: 14px;
    right: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    content: "✓";
    color: var(--az-green-deep);
    background: var(--az-lime);
    border-radius: 50%;
    font-size: .72rem;
    font-weight: 900;
}


/* ==========================================================
   FACTURARE ȘI PLATĂ
========================================================== */

.plc1-pricing-form {
    width: 100%;
    padding: clamp(20px, 3vw, 28px);
    background: var(--az-gray);
    border: 1px solid var(--az-line);
}

.plc1-pricing-field {
    width: 100%;
    margin: 0;
}

/* Toate selecturile din pricing au aceeași poziție și lățime */
.plc1-pricing-field .form-select {
    display: block;
    width: 100%;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
    box-sizing: border-box;
}

/* Și label-urile pornesc de pe aceeași axă X */
.plc1-pricing-field .form-label {
    display: block;
    width: 100%;
    margin-left: 0;
}


.plc1-pricing-field + .plc1-pricing-field {
    margin-top: 18px;
}

.plc1-payment-conditional {
    width: 100%;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--az-line);
}

.plc1-payment-conditional .plc1-pricing-field {
    width: 100%;
}

.plc1-payment-conditional .plc1-pricing-field:first-child {
    margin-top: 0;
}


/* ==========================================================
   CALCULATOR PREȚ
========================================================== */

.plc1-price-calculator {
    margin-top: 26px;
    overflow: hidden;
    background: var(--az-white);
    border: 1px solid var(--az-line);
}

.plc1-price-calculator-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 22px 24px;
    color: var(--az-white);
    background: var(--az-green);
}

.plc1-price-calculator-header span,
.plc1-price-calculator-header small {
    display: block;
}

.plc1-price-calculator-header span {
    color: var(--az-lime);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.plc1-price-calculator-header small {
    margin-top: 4px;
    color: color-mix(in srgb, var(--az-white) 66%, transparent);
    font-size: .78rem;
}

.plc1-price-calculator-header > strong {
    color: var(--az-white);
    font-size: clamp(1.55rem, 3vw, 2.15rem);
    font-weight: 700;
    white-space: nowrap;
}

.plc1-price-calculator-body {
    padding: 8px 24px 24px;
}

.plc1-price-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    padding: 14px 0;
    border-bottom: 1px solid var(--az-line);
}

.plc1-price-row > span {
    color: var(--az-green);
    font-size: .88rem;
}

.plc1-price-row > span > small {
    display: block;
    margin-top: 3px;
    color: color-mix(in srgb, var(--az-green) 70%, transparent);
    font-size: .76rem;
}

.plc1-price-row > strong {
    color: var(--az-ink);
    font-size: .9rem;
    text-align: right;
    white-space: nowrap;
}

.plc1-price-subtotal {
    margin-top: 4px;
    border-bottom-color: color-mix(in srgb, var(--az-green) 35%, transparent);
}

.plc1-price-subtotal > span,
.plc1-price-subtotal > strong {
    color: var(--az-ink);
    font-weight: 700;
}

.plc1-price-total-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-top: 18px;
    padding: 20px;
    color: var(--az-white);
    background: var(--az-green-deep);
}

.plc1-price-total-row span,
.plc1-price-total-row small {
    display: block;
}

.plc1-price-total-row span {
    color: var(--az-white);
    font-weight: 700;
}

.plc1-price-total-row small {
    margin-top: 3px;
    color: color-mix(in srgb, var(--az-white) 56%, transparent);
    font-size: .76rem;
}

.plc1-price-total-row > strong {
    color: var(--az-lime);
    font-size: clamp(1.45rem, 3vw, 2rem);
    white-space: nowrap;
}

.plc1-price-commercial-note {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 12px;
    padding: 16px 24px;
    background: var(--az-sand);
    border-top: 1px solid var(--az-line);
}

.plc1-price-commercial-note i {
    color: var(--az-green);
}

.plc1-price-commercial-note p {
    margin: 0;
    color: var(--az-green);
    font-size: .82rem;
    line-height: 1.55;
}


/* ==========================================================
   NOTĂ DESPRE RITM
========================================================== */

.plc1-course-agreement {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 14px;
    margin-top: 32px;
    padding: 20px;
    background: color-mix(in srgb, var(--az-lime) 20%, var(--az-white));
    border: 1px solid color-mix(in srgb, var(--az-green) 22%, transparent);
    border-left: 4px solid var(--az-lime);
}

.plc1-course-agreement > i {
    color: var(--az-green);
    font-size: 1.2rem;
}

.plc1-course-agreement strong {
    display: block;
    color: var(--az-ink);
}

.plc1-course-agreement p {
    margin: 6px 0 0;
    color: var(--az-green);
    font-size: .88rem;
    line-height: 1.65;
}


/* ==========================================================
   GDPR
========================================================== */

.plc1-consent-card {
    margin-top: 20px;
    padding: 20px;
    background: var(--az-gray);
    border: 1px solid var(--az-line);
}

.plc1-consent-card .form-check {
    display: flex;
/*    grid-template-columns: 20px minmax(0, 1fr);*/
    gap: 12px;
    padding-left: 0;
    margin: 0;
}

.plc1-consent-card .form-check-input {
    width: 20px;
    height: 20px;
    margin: 2px 0 0;
    border-color: color-mix(in srgb, var(--az-green) 55%, transparent);
    border-radius: 2px;
    box-shadow: none;
}

.plc1-consent-card .form-check-input:checked {
    background-color: var(--az-green);
    border-color: var(--az-green);
}

.plc1-consent-card .form-check-input:focus {
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--az-green) 12%, transparent);
}

.plc1-consent-card .form-check-label {
    color: var(--az-green);
    font-size: .84rem;
    line-height: 1.6;
}


/* ==========================================================
   MESAJ FORMULAR
========================================================== */

.plc1-form-message {
    margin-top: 22px;
    padding: 16px 18px;
    border: 1px solid transparent;
    font-size: .9rem;
    line-height: 1.55;
}

.plc1-form-message.is-success {
    color: #155724;
    background: #edf8ef;
    border-color: #b7dfbd;
}

.plc1-form-message.is-error {
    color: #842029;
    background: #fff0f1;
    border-color: #f0b8bd;
}


/* ==========================================================
   BUTON TRIMITERE
========================================================== */

.plc1-contact-form > .btn-primary {
    min-height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: var(--az-green-deep);
    background: var(--az-lime);
    border-color: var(--az-lime);
    border-radius: 3px;
    font-weight: 700;
}

.plc1-contact-form > .btn-primary:hover,
.plc1-contact-form > .btn-primary:focus {
    color: var(--az-white);
    background: var(--az-green);
    border-color: var(--az-green);
}

.plc1-contact-form > .btn-primary:disabled {
    color: color-mix(in srgb, var(--az-green-deep) 70%, transparent);
    background: color-mix(in srgb, var(--az-lime) 62%, var(--az-white));
    border-color: transparent;
}

.plc1-form-note {
    max-width: 640px;
    margin: 14px auto 0;
    color: var(--az-green);
    font-size: .78rem;
    line-height: 1.55;
    text-align: center;
}


/* ==========================================================
   RESPONSIVE
========================================================== */

@media (max-width: 991.98px) {

    .plc1-contact-form-shell {
        margin-top: 10px;
    }

    .plc1-contact-intro {
        max-width: 780px;
    }

    .plc1-contact-course {
        max-width: 720px;
    }

    .plc1-contact-points {
        max-width: 720px;
    }
}


@media (max-width: 767.98px) {

    .plc1-contact-form-shell {
        padding: 24px 20px;
    }

    .plc1-registration-options {
        grid-template-columns: 1fr;
    }

    .plc1-registration-options label > span {
        min-height: 0;
    }

    .plc1-contact-course dl > div {
        gap: 14px;
    }

    .plc1-price-calculator-header,
    .plc1-price-total-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .plc1-price-calculator-header > strong,
    .plc1-price-total-row > strong {
        white-space: normal;
    }

    .plc1-price-row {
        gap: 16px;
    }
}


@media (max-width: 575.98px) {

    .plc1-contact-course {
        padding: 20px;
    }

    .plc1-contact-course dl > div {
        display: block;
    }

    .plc1-contact-course dd {
        margin-top: 4px;
        text-align: left;
    }

    .plc1-contact-points > div {
        grid-template-columns: 36px minmax(0, 1fr);
    }

    .plc1-contact-points > div > span {
        width: 36px;
        height: 36px;
    }

    .plc1-form-divider {
        margin-top: 32px;
    }

    .plc1-form-divider > span {
        white-space: normal;
    }

    .plc1-price-calculator-body {
        padding-inline: 18px;
    }

    .plc1-price-calculator-header {
        padding: 20px 18px;
    }

    .plc1-price-row {
        display: block;
    }

    .plc1-price-row > strong {
        display: block;
        margin-top: 5px;
        text-align: left;
        white-space: normal;
    }

    .plc1-price-commercial-note {
        padding-inline: 18px;
    }
}