/* ==========================================================
   PROGRAMUL DE MENTORAT ÎN PROIECTARE ELECTRICĂ
========================================================== */


.ement-page{
    color:var(--az-ink);
    background:var(--az-white);
}

.ement-section{
    padding:96px 0;
}

.ement-section-soft{
    background:var(--az-gray);
}

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

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

.ement-heading{
    max-width:860px;
}

.ement-heading h2,
.ement-section h2{
    margin:14px 0 18px;
    color:var(--az-ink);
    font-size:clamp(2rem,4vw,3.4rem);
    line-height:1.08;
}

.ement-section-dark h2,
.ement-heading-light h2{
    color:var(--az-white);
}

.ement-heading p,
.ement-section p{
    color:var(--az-green);
    line-height:1.75;
}

.ement-section-dark p,
.ement-heading-light p{
    color:rgba(255,255,255,.72);
}

.ement-section-tag{
    display:inline-block;
    color:var(--az-green);
    font-size:.7rem;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

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


/* ==========================================================
   HERO
========================================================== */

.ement-hero{
    position:relative;
    overflow:hidden;
    padding: clamp(36px, 4vw, 96px) 0;
    color:var(--az-white);
    background:var(--az-green-deep);
}

.ement-hero-grid{
    position:absolute;
    inset:0;
    opacity:.12;
    background-image:
        linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);
    background-size:48px 48px;
    mask-image:linear-gradient(to bottom,black,transparent 88%);
}

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

.ement-section-tag,
.ement-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;
}

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

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

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

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

.ement-hero h1{
    max-width:900px;
    margin:24px 0 22px;
    color:var(--az-white);
    font-size:clamp(3rem,6vw,5.7rem);
    line-height:.98;
    letter-spacing:-.04em;
}

.ement-hero-lead{
    max-width:780px;
    margin:0;
    color:var(--az-white)!important;
    font-size:clamp(1.08rem,2vw,1.42rem);
    line-height:1.55;
}

.ement-hero-copy{
    max-width:720px;
    margin-top:20px;
    color:rgba(255,255,255,.7)!important;
    line-height:1.75;
}

.ement-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:32px;
}

.ement-hero-tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:34px;
}

.ement-hero-tags span{
    padding:8px 11px;
    border:1px solid rgba(255,255,255,.18);
    color:rgba(255,255,255,.82);
    font-size:.76rem;
}

.ement-hero-summary{
    padding:30px;
    background: var(--az-green);
    border:1px solid rgba(255,255,255,.16);
    box-shadow:0 28px 70px rgba(0,0,0,.2);
}

.ement-summary-label{
    display:block;
    color:var(--az-lime);
    font-size:.7rem;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.ement-summary-step{
    display:grid;
    grid-template-columns:46px 1fr;
    gap:14px;
    align-items:center;
    padding:18px 0;
    border-bottom:1px solid rgba(255,255,255,.14);
}

.ement-summary-step > span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    color:var(--az-green-deep);
    background:rgba(255,255,255,.78);
    font-size:.68rem;
    font-weight:800;
}

.ement-summary-step strong{
    display:block;
    color:var(--az-white);
}

.ement-summary-step small{
    display:block;
    margin-top:3px;
    color:rgba(255,255,255,.58);
}

.ement-summary-step.is-active > span{
    background:var(--az-lime);
}

.ement-summary-step.is-active strong{
    color:var(--az-lime);
}

.ement-summary-note{
    display:grid;
    grid-template-columns:24px 1fr;
    gap:12px;
    margin-top:20px;
}

.ement-summary-note i{
    color:var(--az-lime);
}

.ement-summary-note p{
    margin:0;
    color:rgba(255,255,255,.68)!important;
    font-size:.82rem;
    line-height:1.55;
}


/* ==========================================================
   COMPARE
========================================================== */

.ement-compare{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    margin-top:52px;
}

.ement-compare article{
    padding:30px;
    background:var(--az-white);
    border:1px solid var(--az-line);
}

.ement-compare article.is-active{
    color:var(--az-white);
    background:var(--az-green);
    border-color:var(--az-green);
}

.ement-compare article > span{
    color:var(--az-green);
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.ement-compare article.is-active > span{
    color:var(--az-lime);
}

.ement-compare h3{
    margin:12px 0 10px;
    color:var(--az-ink);
    font-size:1.25rem;
}

.ement-compare article.is-active h3{
    color:var(--az-white);
}

.ement-compare p{
    margin:0;
    font-size:.85rem;
}

.ement-compare article.is-active p{
    color:rgba(255,255,255,.75)!important;
}


/* ==========================================================
   GOALS
========================================================== */

.ement-goals-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
    margin-top:50px;
}

.ement-goals-grid article{
    position:relative;
    min-height:280px;
    padding:28px;
    background:var(--az-white);
    border:1px solid var(--az-line);
}

.ement-goals-grid article > span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    color:var(--az-green-deep);
    background:var(--az-lime);
    font-size:.68rem;
    font-weight:800;
}

.ement-goals-grid i{
    position:absolute;
    top:28px;
    right:28px;
    color:var(--az-green);
    font-size:1.4rem;
}

.ement-goals-grid h3{
    margin:24px 0 10px;
    color:var(--az-ink);
    font-size:1.12rem;
}

.ement-goals-grid p{
    margin:0;
    font-size:.84rem;
}


/* ==========================================================
   FEATURES
========================================================== */

.ement-feature-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin-top:50px;
}

.ement-feature-grid article{
    min-height:230px;
    padding:28px;
    background:var(--az-white);
    border:1px solid var(--az-line);
}

.ement-feature-grid i{
    display:flex;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    color:var(--az-green-deep);
    background:var(--az-lime);
    font-size:1.2rem;
}

.ement-feature-grid h3{
    margin:20px 0 10px;
    color:var(--az-ink);
    font-size:1.08rem;
}

.ement-feature-grid p{
    margin:0;
    font-size:.84rem;
}


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

.ement-roadmap{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:1px;
    margin-top:52px;
    background:var(--az-green);
}

.ement-roadmap article{
    min-height:220px;
    padding:26px;
    background:rgba(255,255,255,.06);
}

.ement-roadmap article.is-final{
    background:var(--az-lime);
}

.ement-roadmap article > span{
    color:var(--az-lime);
    font-size:.68rem;
    font-weight:800;
}

.ement-roadmap article.is-final > span{
    color:var(--az-green-deep);
}

.ement-roadmap h3{
    margin:20px 0 8px;
    color:var(--az-white);
    font-size:1.05rem;
}

.ement-roadmap p{
    margin:0;
    color:rgba(255,255,255,.68)!important;
    font-size:.82rem;
    line-height:1.58;
}

.ement-roadmap article.is-final h3,
.ement-roadmap article.is-final p{
    color:var(--az-green-deep)!important;
}


/* ==========================================================
   TOPICS
========================================================== */

.ement-side-copy{
    margin:0;
    font-size:.86rem;
}

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

.ement-project-grid article{
    padding:26px;
    background:var(--az-white);
    border:1px solid var(--az-line);
}

.ement-project-grid article > span{
    display:block;
    color:var(--az-green);
    font-size:.68rem;
    font-weight:800;
}

.ement-project-grid h3{
    margin:18px 0 10px;
    color:var(--az-ink);
    font-size:1.05rem;
}

.ement-project-grid p{
    margin:0;
    font-size:.82rem;
}

.ement-project-note{
    display:grid;
    grid-template-columns:48px 1fr;
    gap:16px;
    margin-top:28px;
    padding:22px;
    background:var(--az-sand);
    border-left:4px solid var(--az-lime);
}

.ement-project-note i{
    display:flex;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    color:var(--az-green-deep);
    background:var(--az-lime);
    font-size:1.2rem;
}

.ement-project-note strong{
    color:var(--az-ink);
}

.ement-project-note p{
    margin:5px 0 0;
    font-size:.82rem;
}


/* ==========================================================
   OUTCOME
========================================================== */

.ement-outcome-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:50px;
}

.ement-outcome-grid article{
    padding:34px;
    background:var(--az-white);
    border:1px solid var(--az-line);
}

.ement-outcome-grid article.is-company{
    color:var(--az-white);
    background:var(--az-green);
    border-color:var(--az-green);
}

.ement-outcome-grid article > span{
    color:var(--az-green);
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.ement-outcome-grid article.is-company > span{
    color:var(--az-lime);
}

.ement-outcome-grid h3{
    margin:12px 0 18px;
    color:var(--az-ink);
    font-size:1.35rem;
}

.ement-outcome-grid article.is-company h3{
    color:var(--az-white);
}

.ement-outcome-grid ul{
    margin:0;
    padding-left:20px;
}

.ement-outcome-grid li{
    margin-bottom:9px;
    color:var(--az-green);
}

.ement-outcome-grid article.is-company li{
    color:rgba(255,255,255,.8);
}


/* ==========================================================
   PRICE
========================================================== */

.ement-price-facts{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:30px;
}

.ement-price-facts > div{
    padding:20px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.14);
}

.ement-price-facts span{
    display:block;
    color:rgba(255,255,255,.55);
    font-size:.68rem;
    text-transform:uppercase;
}

.ement-price-facts strong{
    display:block;
    margin-top:6px;
    color:var(--az-lime);
    font-size:1.25rem;
}

.ement-price-card{
    padding:30px;
    background:rgba(255,255,255,.07);
    border:1px solid rgba(255,255,255,.16);
}

.ement-price-card > span{
    color:var(--az-lime);
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.ement-price-card ul{
    margin:22px 0 28px;
    padding-left:20px;
}

.ement-price-card li{
    margin-bottom:10px;
    color:rgba(255,255,255,.78);
}


/* ==========================================================
   APPLICATION SECTION
========================================================== */

.ement-application{
    padding:96px 0;
    background:var(--az-green);
}

.ement-application h2{
    margin:14px 0 18px;
    color:var(--az-white);
    font-size:clamp(2rem,4vw,3.2rem);
    line-height:1.08;
}

.ement-application-intro{
    max-width:580px;
    color:rgba(255,255,255,.72)!important;
    line-height:1.75;
}

.ement-application-steps{
    margin-top:30px;
    border-top:1px solid rgba(255,255,255,.16);
}

.ement-application-steps > div{
    display:grid;
    grid-template-columns:44px 1fr;
    gap:16px;
    padding:20px 0;
    border-bottom:1px solid rgba(255,255,255,.16);
}

.ement-application-steps > div > span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    color:var(--az-green-deep);
    background:var(--az-lime);
    font-size:.68rem;
    font-weight:800;
}

.ement-application-steps strong{
    color:var(--az-white);
}

.ement-application-steps p{
    margin:5px 0 0;
    color:rgba(255,255,255,.62)!important;
    font-size:.82rem;
    line-height:1.55;
}


/* ==========================================================
   FORM
========================================================== */

.ement-form-shell{
    overflow:hidden;
    color:var(--az-ink);
    background:var(--az-white);
    border:1px solid var(--az-line);
    box-shadow:0 26px 70px rgba(0,0,0,.2);
}

.ement-form-heading{
    padding:32px 34px 28px;
    background:var(--az-sand);
    border-bottom:1px solid var(--az-line);
}

.ement-form-heading > span{
    color:var(--az-green);
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.ement-form-heading h3{
    margin:10px 0 8px;
    color:var(--az-ink);
    font-size:1.9rem;
}

.ement-form-heading p{
    margin:0;
    color:var(--az-green)!important;
}

.ement-form{
    padding:34px;
}

.ement-form .form-label{
    margin-bottom:7px;
    color:var(--az-ink);
    font-size:.8rem;
    font-weight:700;
}

.ement-form .form-label span{
    color:var(--az-green);
    font-weight:400;
}

.ement-form .form-control,
.ement-form .form-select{
    width:100%;
    min-height:52px;
    padding:10px 42px 10px 14px;
    color:var(--az-ink);
    background:var(--az-white);
    border:1px solid var(--az-line);
    border-radius:3px;
    font-size:.82rem;
}

.ement-form textarea.form-control{
    min-height:110px;
    padding-right:14px;
}

.ement-form .form-control:focus,
.ement-form .form-select:focus{
    border-color:var(--az-green);
    box-shadow:0 0 0 4px rgba(30,74,61,.12);
}

.ement-form-divider{
    display:flex;
    align-items:center;
    gap:15px;
    margin:36px 0 20px;
}

.ement-form-divider.first{
    margin-top:0;
}

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

.ement-form-divider span{
    color:var(--az-green);
    font-size:.7rem;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.ement-form-field{
    margin-bottom:15px;
}

.ement-conditional{
    margin-top:15px;
    animation:ementShow .2s ease;
}

@keyframes ementShow{
    from{
        opacity:0;
        transform:translateY(-5px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

.ement-price-reminder{
    margin-top:20px;
    padding:20px;
    background:var(--az-sand);
    border:1px solid var(--az-line);
    border-left:4px solid var(--az-lime);
}

.ement-price-reminder span{
    display:block;
    color:var(--az-green);
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.ement-price-reminder strong{
    display:block;
    margin-top:6px;
    color:var(--az-green-deep);
    font-size:1.5rem;
}

.ement-price-reminder small{
    display:block;
    margin-top:5px;
    color:var(--az-green);
    line-height:1.5;
}

.ement-consent-card{
    margin-top:26px;
    padding:18px;
    background:var(--az-sand);
    border:1px solid var(--az-line);
    border-left:4px solid var(--az-lime);
}

.ement-consent-card .form-check{
    display:flex;
    padding:0;
    margin:0;
}

.ement-consent-card .form-check-input{
    float:none;
    width:20px;
    height:20px;
    margin:2px 0 0;
}

.ement-consent-card .form-check-label{
    color:var(--az-ink);
    font-size:.83rem;
    line-height:1.55;
    margin-left: 30px;
}

.ement-form-message{
    margin-top:22px;
    padding:16px 18px;
    border:1px solid var(--az-line);
    line-height:1.55;
}

.ement-form-message.is-success{
    color:var(--az-green-deep);
    background:var(--az-lime);
    border-color:var(--az-lime);
}

.ement-form-message.is-error{
    color:var(--az-white);
    background:var(--az-green-deep);
    border-color:var(--az-green-deep);
}

.ement-form-note{
    margin:12px auto 0!important;
    color:var(--az-green)!important;
    font-size:.72rem;
    line-height:1.5;
    text-align:center;
}


/* ==========================================================
   FAQ
========================================================== */

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

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

.ement-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%;
}

.ement-faq .accordion-body{
    padding:0 0 18px;
    color:var(--az-green);
    line-height:1.7;
}

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

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

@media(max-width:1199.98px){

    .ement-goals-grid,
    .ement-roadmap{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .ement-project-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}

@media(max-width:991.98px){

    .ement-hero{
        padding:100px 0 80px;
    }

    .ement-compare,
    .ement-feature-grid,
    .ement-outcome-grid{
        grid-template-columns:1fr;
    }

}

@media(max-width:767.98px){

    .ement-section,
    .ement-application{
        padding:72px 0;
    }

    .ement-goals-grid,
    .ement-roadmap,
    .ement-project-grid{
        grid-template-columns:1fr;
    }

    .ement-price-facts{
        grid-template-columns:1fr;
    }

    .ement-project-note{
        grid-template-columns:1fr;
    }

    .ement-form-heading,
    .ement-form{
        padding:24px 20px;
    }

}

@media(max-width:575.98px){

    .ement-hero h1{
        font-size:2.7rem;
    }

}
