/* EnFavori — Publisher application */
.efapply{
    --efapply-navy:#102a43;
    --efapply-navy-2:#0b2238;
    --efapply-text:#16324a;
    --efapply-muted:#64748b;
    --efapply-soft:#f4f8fb;
    --efapply-line:#cbd5e1;
    --efapply-line-strong:#aebdca;
    --efapply-teal:#0d9488;
    --efapply-teal-2:#14b8a6;
    --efapply-focus:rgba(20,184,166,.18);
    --efapply-danger:#b42318;
    --efapply-danger-bg:#fff4f2;
    --efapply-success:#087a66;
    --efapply-success-bg:#ecfdf5;

    padding:54px 18px 78px;
    background:
        radial-gradient(800px 320px at 50% -80px,rgba(20,184,166,.12),transparent 64%),
        linear-gradient(180deg,#f4f9fb 0%,#edf4f8 100%);
    color:var(--efapply-text);
}

.efapply *,
.efapply *::before,
.efapply *::after{
    box-sizing:border-box;
}

.efapply__shell{
    /* Same 1180px content line as the public header; no overhang. */
    width:min(1180px,100%);
    margin:0 auto;
}

.efapply__card{
    display:grid;
    grid-template-columns:minmax(340px,.82fr) minmax(0,1.48fr);
    overflow:hidden;
    border:1px solid #d9e4ec;
    border-radius:26px;
    background:#fff;
    box-shadow:
        0 28px 70px rgba(15,42,67,.10),
        0 2px 8px rgba(15,42,67,.05);
}

/* Left process panel */
.efapply__aside{
    position:relative;
    display:flex;
    flex-direction:column;
    min-height:100%;
    padding:40px 38px 34px;
    overflow:hidden;
    background:
        radial-gradient(460px 260px at 100% 0%,rgba(20,184,166,.22),transparent 64%),
        radial-gradient(360px 260px at -10% 82%,rgba(17,94,89,.24),transparent 66%),
        linear-gradient(165deg,#103854 0%,#0b2c45 45%,#081f34 100%);
    color:#fff;
}

.efapply__aside::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
    background-size:38px 38px;
    mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 88%);
}

.efapply__aside-top,
.efapply__aside-bottom{
    position:relative;
    z-index:1;
}

.efapply__logo{
    display:inline-flex;
    align-items:center;
    width:max-content;
    max-width:100%;
    min-height:42px;
    margin-bottom:38px;
    text-decoration:none;
}

.efapply__logo img{
    display:block;
    width:auto;
    height:42px;
    max-width:190px;
    object-fit:contain;
    object-position:left center;
}

.efapply__aside-copy{
    max-width:315px;
}

.efapply__aside-kicker{
    display:block;
    margin-bottom:11px;
    color:#59e4d5;
    font-size:11px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.efapply__aside h2{
    margin:0;
    color:#fff;
    font-size:clamp(28px,3vw,36px);
    line-height:1.08;
    font-weight:950;
    letter-spacing:-.035em;
}

.efapply__aside-copy > p{
    margin:14px 0 0;
    color:#c6d6e3;
    font-size:14px;
    line-height:1.65;
}

.efapply__steps{
    display:grid;
    gap:0;
    margin:32px 0 0;
    padding:0;
    list-style:none;
}

.efapply__steps li{
    position:relative;
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:13px;
    min-height:75px;
}

.efapply__steps li:not(:last-child)::after{
    content:"";
    position:absolute;
    left:16px;
    top:36px;
    bottom:2px;
    width:1px;
    background:rgba(148,210,205,.22);
}

.efapply__steps b{
    position:relative;
    z-index:1;
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    border:1px solid rgba(113,218,208,.24);
    border-radius:11px;
    background:rgba(16,91,100,.50);
    color:#65e4d7;
    font-size:13px;
    font-weight:950;
}

.efapply__steps li.is-current b{
    border-color:#f4bd15;
    background:#f4bd15;
    color:#332600;
    box-shadow:0 7px 20px rgba(244,189,21,.20);
}

.efapply__steps span{
    display:block;
    padding-top:3px;
}

.efapply__steps strong{
    display:block;
    color:#fff;
    font-size:14px;
    line-height:1.25;
    font-weight:850;
}

.efapply__steps small{
    display:block;
    margin-top:4px;
    color:#abc0d0;
    font-size:12px;
    line-height:1.45;
}

.efapply__aside-bottom{
    margin-top:auto;
    padding-top:26px;
    border-top:1px solid rgba(255,255,255,.10);
}

.efapply__shield{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    margin-bottom:11px;
    border:1px solid rgba(89,228,213,.22);
    border-radius:12px;
    background:rgba(20,184,166,.10);
    color:#62dfd3;
}

.efapply__shield svg{
    width:20px;
    height:20px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.efapply__aside-bottom p{
    max-width:290px;
    margin:0;
    color:#abc0d0;
    font-size:11px;
    line-height:1.55;
}

.efapply__aside-bottom > strong{
    display:block;
    margin-top:18px;
    color:#809bb0;
    font-size:11px;
    font-weight:850;
    letter-spacing:.02em;
}

/* Main form */
.efapply__main{
    min-width:0;
    padding:43px 46px 40px;
    background:#fff;
}

.efapply__header{
    padding-bottom:28px;
    border-bottom:1px solid #e8eef3;
}

.efapply__kicker{
    display:block;
    margin-bottom:8px;
    color:var(--efapply-teal);
    font-size:11px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.efapply__header h1{
    margin:0;
    color:var(--efapply-navy);
    font-size:clamp(30px,3.1vw,40px);
    line-height:1.08;
    font-weight:950;
    letter-spacing:-.035em;
}

.efapply__header > p{
    max-width:760px;
    margin:12px 0 0;
    color:var(--efapply-muted);
    font-size:14px;
    line-height:1.65;
}

.efapply__trust{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:18px;
}

.efapply__trust span{
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:32px;
    padding:0 10px;
    border:1px solid #d7e7e6;
    border-radius:999px;
    background:#f4fbfa;
    color:#466579;
    font-size:10px;
    font-weight:800;
}

.efapply__trust svg{
    width:15px;
    height:15px;
    fill:none;
    stroke:#0d9488;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.efapply__notice{
    display:grid;
    grid-template-columns:28px minmax(0,1fr);
    gap:10px;
    margin:20px 0 0;
    padding:14px 15px;
    border:1px solid;
    border-radius:14px;
    font-size:13px;
    line-height:1.5;
}

.efapply__notice > span{
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    border-radius:9px;
    font-size:13px;
    font-weight:950;
}

.efapply__notice strong{
    display:block;
    margin-bottom:4px;
}

.efapply__notice ul{
    margin:4px 0 0;
    padding-left:18px;
}

.efapply__notice--success{
    border-color:#a7e7d8;
    background:var(--efapply-success-bg);
    color:#176a59;
}

.efapply__notice--success > span{
    background:#d5f5ea;
    color:var(--efapply-success);
}

.efapply__notice--error{
    border-color:#f1bbb4;
    background:var(--efapply-danger-bg);
    color:#8f2d23;
}

.efapply__notice--error > span{
    background:#fee4e2;
    color:var(--efapply-danger);
}

.efapply__form{
    display:grid;
    gap:0;
}

.efapply__section{
    padding:28px 0 30px;
    border-bottom:1px solid #e8eef3;
}

.efapply__section-head{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:13px;
    align-items:start;
    margin-bottom:18px;
}

.efapply__section-no{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border:1px solid #cce5e2;
    border-radius:13px;
    background:#f1faf8;
    color:#0d9488;
    font-size:11px;
    font-weight:950;
    letter-spacing:.04em;
}

.efapply__section-head h2{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    margin:1px 0 0;
    color:var(--efapply-navy);
    font-size:17px;
    line-height:1.25;
    font-weight:900;
}

.efapply__section-head h2 em{
    display:inline-flex;
    align-items:center;
    min-height:22px;
    padding:0 8px;
    border-radius:999px;
    background:#f0f4f8;
    color:#7a8ba0;
    font-size:10px;
    font-style:normal;
    font-weight:800;
}

.efapply__section-head p{
    margin:5px 0 0;
    color:#718196;
    font-size:12px;
    line-height:1.5;
}

.efapply__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px 16px;
    align-items:start;
}

/* Aligned pairs: fixed label row + fixed input row. Help/error text
   remains below its own input without pushing the neighboring field. */
.efapply__grid > .efapply__field{
    grid-template-rows:28px 52px;
    grid-auto-rows:min-content;
    align-content:start;
}

.efapply__field{
    display:grid;
    gap:8px;
    min-width:0;
}

.efapply__grid > .efapply__field > label{
    min-width:0;
    min-height:28px;
    margin:0;
    white-space:nowrap;
}

.efapply__grid > .efapply__field > label > span{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
}

.efapply__grid > .efapply__field > input{
    height:52px;
    min-height:52px;
    margin:0;
    align-self:start;
}

.efapply__field--full{
    grid-column:1 / -1;
}

.efapply__field label{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    color:#203b53;
    font-size:12px;
    line-height:1.3;
    font-weight:850;
}

.efapply__field label b,
.efapply__field label em{
    flex:0 0 auto;
    min-height:20px;
    padding:3px 7px;
    border-radius:999px;
    font-size:9px;
    line-height:14px;
    font-style:normal;
    font-weight:850;
}

.efapply__field label b{
    background:#edf8f6;
    color:#087f74;
}

.efapply__field label em{
    background:#f2f5f8;
    color:#7b8ca0;
}

.efapply__field input,
.efapply__field textarea{
    width:100%;
    border:1.5px solid var(--efapply-line-strong);
    border-radius:13px;
    background:#f8fafc;
    color:#102a43;
    font:inherit;
    font-size:14px;
    box-shadow:
        inset 0 1px 2px rgba(15,42,67,.025),
        0 1px 0 rgba(255,255,255,.75);
    outline:none;
    transition:
        border-color .16s ease,
        box-shadow .16s ease,
        background .16s ease;
}

.efapply__field input{
    height:52px;
    padding:0 14px;
}

.efapply__field textarea{
    min-height:142px;
    padding:13px 14px;
    resize:vertical;
    line-height:1.55;
}

.efapply__field input::placeholder,
.efapply__field textarea::placeholder{
    color:#8b9bb0;
    opacity:1;
}

.efapply__field input:hover,
.efapply__field textarea:hover{
    border-color:#8fa3b6;
    background:#fff;
}

.efapply__field input:focus,
.efapply__field textarea:focus{
    border-color:var(--efapply-teal-2);
    background:#fff;
    box-shadow:0 0 0 4px var(--efapply-focus);
}

.efapply__field.is-invalid input,
.efapply__field.is-invalid textarea,
.efapply__field input[aria-invalid="true"],
.efapply__field textarea[aria-invalid="true"]{
    border-color:#dd7d73;
    background:#fffafa;
}

.efapply__field.is-invalid input:focus,
.efapply__field.is-invalid textarea:focus{
    box-shadow:0 0 0 4px rgba(217,83,69,.12);
}

.efapply__hint,
.efapply__field-error{
    display:block;
    font-size:10px;
    line-height:1.4;
}

.efapply__hint{
    color:#8292a5;
}

.efapply__field-error{
    color:var(--efapply-danger);
    font-weight:800;
}

.efapply__textarea-meta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-top:-2px;
    color:#8a99ab;
}

.efapply__textarea-meta small{
    font-size:10px;
}

.efapply__section--consent{
    padding-bottom:24px;
}

.efapply__consents{
    display:grid;
    gap:10px;
}

.efapply__check{
    position:relative;
    display:grid;
    grid-template-columns:24px minmax(0,1fr);
    gap:12px;
    align-items:start;
    min-height:58px;
    padding:14px 15px;
    border:1.5px solid #c8d5df;
    border-radius:13px;
    background:#f6f9fb;
    color:#29445a;
    cursor:pointer;
    transition:
        border-color .16s ease,
        background .16s ease,
        box-shadow .16s ease;
}

.efapply__check:hover{
    border-color:#93aabc;
    background:#fff;
}

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

.efapply__check-box{
    display:grid;
    place-items:center;
    width:24px;
    height:24px;
    margin-top:1px;
    border:1.7px solid #99aabd;
    border-radius:7px;
    background:#fff;
    color:transparent;
    transition:
        border-color .16s ease,
        background .16s ease,
        box-shadow .16s ease;
}

.efapply__check-box svg{
    width:14px;
    height:14px;
    fill:none;
    stroke:currentColor;
    stroke-width:2.4;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.efapply__check input:checked + .efapply__check-box{
    border-color:var(--efapply-teal);
    background:var(--efapply-teal);
    color:#fff;
}

.efapply__check input:focus-visible + .efapply__check-box{
    box-shadow:0 0 0 4px var(--efapply-focus);
}

.efapply__check.is-invalid{
    border-color:#e6a49d;
    background:#fff9f8;
}

.efapply__check-text{
    padding-top:2px;
    font-size:12px;
    line-height:1.55;
    font-weight:700;
}

.efapply__submit-area{
    padding-top:24px;
}

.efapply__submit{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    width:100%;
    min-height:56px;
    padding:0 20px;
    border:1px solid #0f2d49;
    border-radius:13px;
    background:linear-gradient(180deg,#153b5e 0%,#102f4d 100%);
    color:#fff;
    font:inherit;
    font-size:15px;
    font-weight:900;
    cursor:pointer;
    box-shadow:0 8px 20px rgba(15,42,67,.16);
    transition:
        transform .16s ease,
        border-color .16s ease,
        background .16s ease,
        box-shadow .16s ease;
}

.efapply__submit svg{
    width:19px;
    height:19px;
    fill:none;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
    transition:transform .16s ease;
}

.efapply__submit:hover{
    transform:translateY(-1px);
    border-color:#0a766d;
    background:linear-gradient(180deg,#0f9e91 0%,#0d8278 100%);
    box-shadow:0 10px 24px rgba(13,148,136,.20);
}

.efapply__submit:hover svg{
    transform:translateX(3px);
}

.efapply__submit:focus-visible{
    outline:none;
    box-shadow:0 0 0 4px var(--efapply-focus),0 8px 20px rgba(15,42,67,.16);
}

.efapply__submit-area > p{
    display:flex;
    align-items:flex-start;
    justify-content:center;
    gap:7px;
    margin:10px 0 0;
    color:#7a8b9e;
    font-size:10px;
    line-height:1.45;
    text-align:center;
}

.efapply__submit-area > p svg{
    flex:0 0 15px;
    width:15px;
    height:15px;
    fill:none;
    stroke:#0d9488;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.efapply__footer{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:26px;
    padding-top:22px;
    border-top:1px solid #e8eef3;
}

.efapply__footer > div{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:5px;
    min-height:72px;
    padding:13px 14px;
    border:1px solid #e0e8ef;
    border-radius:12px;
    background:#fbfcfd;
}

.efapply__footer strong{
    color:#53687b;
    font-size:10px;
    line-height:1.4;
    font-weight:750;
}

.efapply__footer a{
    color:#087f74;
    font-size:12px;
    font-weight:900;
    text-decoration:none;
}

.efapply__footer a:hover{
    text-decoration:underline;
}

.efapply .sr-only{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
}

@media(max-width:1020px){
    .efapply{
        padding:32px 14px 56px;
    }

    .efapply__card{
        grid-template-columns:1fr;
        width:min(800px,100%);
        margin:0 auto;
    }

    .efapply__aside{
        min-height:auto;
        padding:28px 30px;
    }

    .efapply__aside-top{
        display:grid;
        grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);
        column-gap:26px;
        align-items:start;
    }

    .efapply__logo{
        grid-column:1 / -1;
        margin-bottom:24px;
    }

    .efapply__steps{
        margin:0;
    }

    .efapply__steps li{
        min-height:67px;
    }

    .efapply__aside-bottom{
        display:none;
    }
}

@media(max-width:760px){
    .efapply{
        padding:18px 10px 40px;
    }

    .efapply__card{
        border-radius:20px;
    }

    .efapply__aside{
        padding:24px 22px;
    }

    .efapply__aside-top{
        display:block;
    }

    .efapply__logo{
        margin-bottom:20px;
    }

    .efapply__logo img{
        height:36px;
        max-width:165px;
    }

    .efapply__aside-copy{
        max-width:none;
    }

    .efapply__aside h2{
        font-size:27px;
    }

    .efapply__aside-copy > p{
        font-size:13px;
    }

    .efapply__steps{
        grid-template-columns:repeat(4,minmax(0,1fr));
        gap:7px;
        margin-top:22px;
    }

    .efapply__steps li{
        display:block;
        min-height:0;
        padding:10px;
        border:1px solid rgba(255,255,255,.08);
        border-radius:11px;
        background:rgba(255,255,255,.035);
    }

    .efapply__steps li::after{
        display:none;
    }

    .efapply__steps b{
        width:28px;
        height:28px;
        margin-bottom:8px;
        border-radius:9px;
        font-size:11px;
    }

    .efapply__steps strong{
        font-size:10px;
    }

    .efapply__steps small{
        display:none;
    }

    .efapply__main{
        padding:28px 22px 26px;
    }

    .efapply__header{
        padding-bottom:23px;
    }

    .efapply__header h1{
        font-size:30px;
    }

    .efapply__header > p{
        font-size:13px;
    }

    .efapply__grid{
        grid-template-columns:minmax(0,1fr);
        gap:15px;
    }

    .efapply__grid > .efapply__field{
        grid-template-rows:28px 52px;
    }

    .efapply__field--full{
        grid-column:auto;
    }

    .efapply__section{
        padding:24px 0;
    }

    .efapply__section-head{
        grid-template-columns:36px minmax(0,1fr);
        gap:10px;
    }

    .efapply__section-no{
        width:36px;
        height:36px;
        border-radius:11px;
        font-size:10px;
    }

    .efapply__footer{
        grid-template-columns:1fr;
    }
}

@media(max-width:480px){
    .efapply{
        padding-inline:0;
        padding-top:0;
        background:#fff;
    }

    .efapply__card{
        border:0;
        border-radius:0;
        box-shadow:none;
    }

    .efapply__aside{
        padding:22px 18px 20px;
        border-radius:0;
    }

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

    .efapply__main{
        padding:24px 18px 30px;
    }

    .efapply__trust{
        display:grid;
        grid-template-columns:1fr;
    }

    .efapply__trust span{
        justify-content:flex-start;
        width:100%;
    }

    .efapply__grid > .efapply__field{
        grid-template-rows:28px 54px;
    }

    .efapply__field input,
    .efapply__grid > .efapply__field > input{
        height:54px;
        min-height:54px;
        font-size:16px;
    }

    .efapply__field textarea{
        font-size:16px;
    }

    .efapply__check{
        min-height:62px;
        padding:13px;
    }

    .efapply__submit{
        min-height:58px;
        font-size:16px;
    }
}

/* Profile V4 public application: dynamic sections stay aligned and keyboard accessible. */
.efapply__profile-section [hidden]{display:none!important}
.efapply__profile-type{margin-bottom:16px}
.efapply__field select{
    display:block;width:100%;height:52px;min-height:52px;margin:0;
    padding:0 14px;border:1.5px solid var(--efapply-line-strong);
    border-radius:13px;background:#f8fafc;color:var(--efapply-navy);
    font:inherit;font-size:14px;outline:none;
}
.efapply__field select:focus-visible{
    border-color:var(--efapply-teal-2);box-shadow:0 0 0 4px var(--efapply-focus);
}
.efapply__profile-common{margin-top:18px}
.efapply__profile-common .efapply__grid>.efapply__field:has(textarea){
    grid-template-rows:auto auto;
}
.efapply__profile-common .efapply__grid>.efapply__field>textarea{
    min-height:100px;
}
.efapply__profile-specific{
    margin-top:22px;padding:18px 18px 20px;border:1px solid #d7e7e6;
    border-radius:16px;background:#f5faf9;
}
.efapply__profile-specific h3{
    margin:0 0 16px;font-size:15px;font-weight:900;color:#12324a;
}
.efapply__profile-specific .efapply__field{
    grid-template-rows:auto auto;
}
.efapply__profile-specific .efapply__field label{
    min-height:28px;white-space:normal;
}
.efapply__profile-specific .efapply__field>input{
    height:52px;min-height:52px;
}
.efapply__profile-specific .efapply__field>textarea{min-height:105px}
.efapply__profile-note{
    margin:16px 0 0;font-size:12px;line-height:1.6;color:#506c7c;
}
@media(max-width:760px){
    .efapply__profile-specific{padding:15px 13px 17px}
    .efapply__field select{height:54px;min-height:54px;font-size:16px}
    .efapply__profile-specific .efapply__field>input{height:54px;min-height:54px;font-size:16px}
    .efapply__profile-specific .efapply__field>textarea{font-size:16px}
}


/* EnFavori profile applications v5 — compact mobile-first controls. */
.efapply__profile-section .efapply__field,
.efapply__phone-field{grid-template-rows:auto auto;grid-auto-rows:min-content;align-content:start}
.efapply__profile-section .efapply__field>label,
.efapply__phone-field>label{min-height:24px;white-space:normal}
.efapply__profile-section .efapply__field>label>span,
.efapply__phone-field>label>span{overflow:visible;text-overflow:clip;white-space:normal}
.efapply__profile-section .efapply__field>input,
.efapply__phone-field>.efapply__phone-row{align-self:start}
.efapply__phone-row{
    display:grid;grid-template-columns:minmax(110px,0.94fr) minmax(0,1.4fr);
    align-items:stretch;gap:9px;min-width:0;
}
.efapply__phone-row select,
.efapply__phone-row input{width:100%;min-width:0;height:52px;min-height:52px;margin:0}
.efapply__phone-row select{padding-inline:10px;font-size:13px}
.efapply__field>input[data-custom-dial]{
    width:min(190px,100%);margin-top:7px;height:46px;min-height:46px;
}
.efapply__profile-section [hidden],.efapply__phone-field [hidden]{display:none!important}
.efapply__profile-common{display:grid;gap:19px;margin-top:18px}
.efapply__profile-common .efapply__field{gap:8px}
#efapply-profile-bio{min-height:92px}
#efapply-profile-about{min-height:116px}
.efapply__contact-card{
    display:grid;gap:13px;padding:16px 15px;
    border:1px solid #d8e7e7;border-radius:17px;background:#f7fbfa;
}
.efapply__contact-card-head{display:flex;align-items:flex-start;gap:11px}
.efapply__contact-card-head strong{display:block;font-size:15px;line-height:1.35;color:#10314a}
.efapply__contact-card-head p{margin:5px 0 0;color:#667d8c;font-size:12px;line-height:1.5}
.efapply__contact-card-icon{
    display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;
    border-radius:11px;background:#ddf6ed;color:#067c71;font-size:19px
}
.efapply__same-number{
    display:flex;align-items:center;gap:10px;min-height:47px;padding:10px 11px;
    border:1px solid #bfddd7;border-radius:12px;background:#fff;
    color:#203d50;font-size:13px;font-weight:800;cursor:pointer;
}
.efapply__same-number input{
    flex:0 0 19px;width:19px;height:19px;min-height:19px;
    accent-color:#078d80;margin:0;
}
.efapply__optional-group,.efapply__hours{
    min-width:0;border:1px solid #d5e3e7;border-radius:15px;background:#fafcfd;overflow:hidden;
}
.efapply__optional-group>summary,.efapply__hours>summary{
    display:flex;align-items:center;gap:12px;min-height:65px;padding:14px;
    list-style:none;cursor:pointer;color:#193b52;
}
.efapply__optional-group>summary::-webkit-details-marker,
.efapply__hours>summary::-webkit-details-marker{display:none}
.efapply__optional-group>summary strong,.efapply__hours>summary strong{display:block;font-size:13px;font-weight:900}
.efapply__optional-group>summary small,.efapply__hours>summary small{
    display:block;color:#6a7d8d;font-size:11px;line-height:1.45;margin-top:3px;
}
.efapply__optional-group>summary>span:last-child,
.efapply__hours-toggle{margin-left:auto;font-size:21px;color:#63818c;transition:transform .15s}
.efapply__optional-group[open]>summary>span:last-child,
.efapply__hours[open] .efapply__hours-toggle{transform:rotate(180deg)}
.efapply__optional-body{
    display:grid;gap:16px;padding:0 15px 17px;
}
.efapply__hours{grid-column:1 / -1;width:100%;background:#fff}
.efapply__hours-icon{
    display:grid;place-items:center;flex:0 0 35px;height:35px;
    border-radius:10px;background:#e6f7f4;color:#088c7e;font-size:25px;
}
.efapply__hours-body{padding:0 12px 14px}
.efapply__hours-presets{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}
.efapply__hours-presets button{
    flex:1 0 auto;min-height:40px;padding:8px 11px;
    border:1px solid #c6dddd;border-radius:10px;background:#f5faf9;
    color:#164a54;font:inherit;font-size:12px;font-weight:800;cursor:pointer;
}
.efapply__hours-presets button:hover,.efapply__hours-presets button:focus-visible{
    border-color:#13a99b;background:#e6f7f2;
}
.efapply__hours-list{display:grid;gap:8px}
.efapply__hours-day{
    display:grid;grid-template-columns:minmax(70px,.7fr) minmax(0,1.7fr);
    gap:8px;align-items:center;min-height:50px;padding:8px 10px;
    border:1px solid #e0ebee;border-radius:11px;background:#fff;
}
.efapply__hours-day.is-open{border-color:#a7d8d3;background:#f4fcfa}
.efapply__hours-day-label{display:flex!important;gap:7px!important;align-items:center!important;min-width:0!important}
.efapply__hours-day-label input{
    flex:0 0 17px;width:17px!important;height:17px!important;min-height:17px!important;
    accent-color:#0d9488;margin:0!important;
}
.efapply__hours-day-label span{font-size:13px;white-space:nowrap;font-weight:850}
.efapply__hours-times{display:flex;align-items:center;justify-content:flex-end;gap:5px;min-width:0}
.efapply__hours-times label{min-width:0;flex:1 1 0}
.efapply__hours-times input{
    display:block;width:100%;min-width:0;height:42px!important;min-height:42px!important;
    padding:0 5px!important;border:1px solid #bfccd3;border-radius:9px;
    background:#fff;font:inherit;font-size:13px;color:#16324a;
}
.efapply__hours-closed{grid-column:2;text-align:right;color:#8899a5;font-size:12px}
.efapply__hours-day:not(.is-open) .efapply__hours-times{display:none}
.efapply__hours-preview{margin:12px 3px 0;color:#627989;font-size:12px;font-weight:700}
@media(max-width:760px){
    .efapply__phone-row{grid-template-columns:minmax(112px,.96fr) minmax(0,1.28fr)}
    .efapply__phone-row select,.efapply__phone-row input{height:54px;min-height:54px;font-size:16px}
    .efapply__phone-row select{font-size:14px}
    .efapply__contact-card{padding:14px 12px}
    .efapply__optional-body{padding-inline:12px}
    .efapply__hours-day{grid-template-columns:minmax(65px,.67fr) minmax(0,1.67fr);padding:8px}
    .efapply__hours-times input{font-size:14px}
}

/* Publisher selection v2: compact comparison with native expandable explanations. */
.efapply__header > p{font-size:16px;line-height:1.6;color:#4d6478}
.efapply__trust span{font-size:12px;line-height:1.4;padding:7px 12px;min-height:36px}
.efapply__section-head h2{font-size:clamp(20px,2.2vw,24px);line-height:1.3}
.efapply__section-head p{font-size:15px;line-height:1.6;color:#4d6376}
.efapply__section-no{font-size:14px}
.efapply__field label{font-size:15px}
.efapply__field label b,.efapply__field label em{font-size:11px}
.efapply__field input,.efapply__field textarea{font-size:16px}
.efapply__hint,.efapply__field-error{font-size:13px;line-height:1.5;color:#596f80}
.efapply__field-error{color:#b42318}
.efapply__type-section{padding-top:32px}
.efapply__type-section .efapply__section-head{margin-bottom:14px}
.efapply__decision-intro{margin-bottom:12px;padding:15px 17px;border:1px solid #b9d9d6;border-left:4px solid #0e9285;border-radius:14px;background:#f1faf8;color:#15384a}
.efapply__decision-intro strong{display:block;font-size:17px;line-height:1.35;font-weight:900}
.efapply__decision-intro p{margin:6px 0 0;font-size:14px;line-height:1.55;color:#395b6b}
.efapply__member-hint{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;margin-bottom:17px;padding:14px 16px;border:1px solid #cbdde8;border-radius:13px;background:#f7fafc;color:#14384e}
.efapply__member-hint div{flex:1 1 220px}
.efapply__member-hint strong{font-size:15px;line-height:1.4}
.efapply__member-hint p{margin:4px 0 0;font-size:13px;line-height:1.5;color:#4c6376}
.efapply__member-hint a{display:inline-flex;align-items:center;min-height:40px;padding:8px 12px;border:1px solid #0c847c;border-radius:10px;color:#06786f;font-size:14px;font-weight:900;text-decoration:none}
.efapply__member-hint a:hover,.efapply__member-hint a:focus-visible{background:#e4f6f2}
.efapply__type-options{display:grid;grid-template-columns:1fr;gap:12px;min-width:0}
.efapply__type-option{position:relative;display:flex;flex-direction:column;min-width:0;border:1.5px solid #ccdae4;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 2px 8px rgba(16,42,67,.04)}
.efapply__type-label{position:relative;display:block;flex:1;cursor:pointer;min-width:0}
.efapply__type-label input{position:absolute;opacity:0;width:1px;height:1px;top:16px;left:16px}
.efapply__type-option-copy{display:flex;flex-direction:column;gap:9px;height:100%;padding:16px 16px 13px;color:#132e43;background:transparent}
.efapply__type-option-head{display:flex;align-items:flex-start;gap:10px;min-width:0}
.efapply__type-number{display:grid;place-items:center;flex:0 0 35px;width:35px;height:35px;border-radius:10px;background:#eaf2f5;color:#29485d;font-size:13px;font-weight:900}
.efapply__type-heading{display:block;flex:1;min-width:0}
.efapply__type-heading strong{display:block;font-size:18px;font-weight:900;line-height:1.3;color:#0f2941}
.efapply__type-eyebrow{display:block;margin-top:3px;font-size:12px;font-weight:750;line-height:1.4;color:#506c7d}
.efapply__type-indicator{flex:0 0 21px;width:21px;height:21px;margin-top:2px;border:2px solid #9fb4c1;border-radius:50%;background:#fff}
.efapply__type-who{display:block;font-size:14px;line-height:1.5;font-weight:650;color:#253f53}
.efapply__type-example{display:block;font-size:13px;line-height:1.5;color:#4b6170}
.efapply__type-example b{color:#193950;font-weight:850}
.efapply__type-expand{margin-top:auto;border-top:1px solid #e4edf1}
.efapply__type-expand summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:43px;padding:8px 16px;color:#08766e;font-size:13px;font-weight:850;cursor:pointer;list-style:none}
.efapply__type-expand summary::-webkit-details-marker{display:none}
.efapply__type-expand summary::after{content:"+";display:grid;place-items:center;flex:0 0 22px;height:22px;border:1px solid #b9dad4;border-radius:50%;font-size:17px;line-height:1}
.efapply__type-expand[open] summary::after{content:"−"}
.efapply__type-expand summary:hover{background:#f4fbf9}
.efapply__type-expand summary:focus-visible{outline:3px solid #087f74;outline-offset:-3px}
.efapply__type-expand p{margin:0;padding:0 16px 14px;font-size:14px;line-height:1.55;color:#355769}
.efapply__type-expand p b{color:#106b65}
.efapply__type-option:has(input:checked){border-color:#078e82;background:#f1faf7;box-shadow:0 0 0 2px rgba(7,143,130,.14)}
.efapply__type-option input:checked+.efapply__type-option-copy .efapply__type-number{background:#087f74;color:#fff}
.efapply__type-option input:checked+.efapply__type-option-copy .efapply__type-indicator{border:6px solid #078e82}
.efapply__type-option input:focus-visible+.efapply__type-option-copy{outline:3px solid #087f74;outline-offset:-3px}
.efapply__type-clarity{margin:17px 0 0;padding:14px 16px;border:1px solid #dce6ed;border-radius:12px;background:#f6f9fb;color:#486072;font-size:13px;line-height:1.6}
.efapply__data-notice{padding:15px 16px;border:1px solid #d1e2e8;border-radius:13px;background:#f7fafc}
.efapply__data-notice strong{display:block;margin-bottom:5px;font-size:15px;color:#193950}
.efapply__data-notice p{margin:0;color:#465d6d;font-size:14px;line-height:1.6}
.efapply__data-notice a{color:#08776f;font-weight:800;text-decoration:underline}
.efapply__type-extra [hidden]{display:none!important}
.efapply__type-extra{padding:0 0 18px;border-bottom:1px solid #e8eef3}
.efapply__type-extra .efapply__profile-specific{margin:0;padding:14px 16px}
.efapply__type-extra .efapply__profile-note{margin:12px 0 0}
.efapply__representation{margin-top:14px}
.efapply__representation .efapply__check-text{font-size:14px;line-height:1.55}
.efapply__type-extra .efapply__field>label{font-size:15px}
@media(max-width:1020px){.efapply__type-options{grid-template-columns:1fr}}
@media(max-width:760px){
  .efapply__type-options{grid-template-columns:1fr;gap:10px}
  .efapply__type-option-copy{padding:14px 14px 11px;gap:8px}
  .efapply__type-heading strong{font-size:18px}
  .efapply__type-who{font-size:15px}
  .efapply__type-example{font-size:13px}
  .efapply__type-expand summary{font-size:14px}
  .efapply__type-section .efapply__section-head{gap:12px}
  .efapply__section-head{grid-template-columns:42px minmax(0,1fr)}
  .efapply__section-no{width:42px;height:42px}
  .efapply__section-head h2{font-size:22px}
  .efapply__section-head p{font-size:15px}
}
@media(max-width:480px){
  .efapply__main{padding:28px 18px 34px}
  .efapply__decision-intro{padding:14px}
  .efapply__member-hint{padding:13px 14px}
  .efapply__type-option-head{gap:9px}
  .efapply__type-number{width:33px;height:33px;flex-basis:33px}
  .efapply__type-heading strong{font-size:18px}
}
@media(prefers-reduced-motion:reduce){.efapply__type-option{transition:none}}

/* Publisher onboarding V2: compact hero, single-form progression and a concise decision UI. */
.efapply__aside--compact{justify-content:flex-start}
.efapply__aside--compact .efapply__aside-top{display:block}
.efapply__aside--compact .efapply__aside-copy{max-width:360px}
.efapply__aside--compact .efapply__aside-copy>p{margin-top:12px;font-size:15px;line-height:1.5}
.efapply__type-section{padding-top:20px}
.efapply__type-options{gap:9px}
.efapply__type-option{border-radius:14px}
.efapply__type-option-copy{padding:13px 14px;gap:5px}
.efapply__type-number{width:32px;height:32px;flex-basis:32px}
.efapply__type-heading strong{font-size:17px}
.efapply__type-eyebrow{font-size:12px}
.efapply__type-who{font-size:13px;font-weight:500;line-height:1.4}
.efapply__type-expand summary{min-height:40px;padding:6px 14px;font-size:13px}
.efapply__type-expand p{padding:0 14px 8px;font-size:13px}
.efapply__type-expand p:last-child{padding-bottom:12px}
.efapply__more-open{display:none}
.efapply__type-expand[open] .efapply__more-open{display:inline}
.efapply__type-expand[open] .efapply__more-closed{display:none}
.efapply__member-hint{padding:10px 12px;margin-bottom:14px}
.efapply__member-hint div{flex:1 1 170px}
.efapply__member-hint p{margin:0;font-size:13px}
.efapply__type-clarity{margin-top:12px;padding:10px 12px;font-size:12px;line-height:1.5}
.efapply__legal-documents{display:flex;flex-wrap:wrap;gap:9px 18px;margin:0}
.efapply__legal-documents a{display:inline-flex;align-items:center;min-height:40px;color:#08776f;text-decoration:underline;text-underline-offset:3px;font-size:14px;font-weight:800}
.efapply__legal-documents a:focus-visible{outline:3px solid #0d9488;outline-offset:3px;border-radius:4px}
@media(max-width:1020px){.efapply__aside--compact .efapply__aside-top{display:block}}
@media(max-width:760px){
  .efapply__aside--compact{padding:23px 22px}
  .efapply__aside--compact h2{font-size:25px}
  .efapply__aside--compact .efapply__aside-copy>p{font-size:14px}
  .efapply__type-who{font-size:13px}
}
@media(max-width:480px){
  .efapply__aside--compact{padding:22px 19px}
  .efapply__type-option-copy{padding:12px}
  .efapply__type-who{font-size:13px}
  .efapply__type-expand summary{padding-inline:12px}
  .efapply__type-expand p{padding-inline:12px}
  .efapply__legal-documents{gap:2px 16px}
}

/* Publisher onboarding V3: independent password visibility + in-flow success confirmation. */
.efapply__password-control{position:relative;min-width:0;width:100%}
.efapply__password-control input{
    display:block;width:100%;height:52px;min-height:52px;
    padding-inline-end:100px;margin:0;
}
.efapply__password-toggle{
    position:absolute;inset-inline-end:7px;top:50%;transform:translateY(-50%);
    display:inline-flex;align-items:center;justify-content:center;
    min-width:78px;min-height:42px;padding:6px 10px;
    border:1px solid #bbd5d2;border-radius:10px;background:#edf8f5;
    font:inherit;font-size:13px;font-weight:850;line-height:1.3;
    color:#076e65;cursor:pointer;white-space:nowrap;
}
.efapply__password-toggle:hover{background:#dbf2ec;border-color:#0f9487}
.efapply__password-toggle:focus-visible{outline:3px solid #0d9488;outline-offset:2px}
.efapply__password-control:focus-within input{border-color:var(--efapply-teal-2)}
.efapply__success{
    display:flex;flex-direction:column;align-items:flex-start;
    gap:12px;margin-top:27px;padding:24px 24px 26px;
    border:1px solid #bbded2;border-radius:19px;
    background:linear-gradient(145deg,#f0faf6,#ffffff 76%);
    box-shadow:0 8px 22px rgba(8,96,78,.05);
    color:#174537;
}
.efapply__success-mark{
    display:grid;place-items:center;width:48px;height:48px;
    border-radius:14px;background:#d5f2e8;color:#087a62;
    font-size:28px;font-weight:900;
}
.efapply__success h2{
    margin:0;color:#103a32;font-size:clamp(23px,3vw,29px);
    font-weight:900;line-height:1.2;letter-spacing:-.02em;
}
.efapply__success p{margin:0;max-width:600px;color:#375b50;font-size:15px;line-height:1.6}
.efapply__success-next{
    padding-top:12px;border-top:1px solid #d5e8e0;width:100%;
}
.efapply__success-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px 13px;margin-top:4px}
.efapply__success-actions a{
    display:inline-flex;align-items:center;justify-content:center;
    min-height:45px;padding:10px 17px;border-radius:11px;font-size:14px;
    font-weight:850;text-decoration:none;
}
.efapply__success-primary{background:#087e73;color:#fff}
.efapply__success-primary:hover{background:#06665e;color:#fff}
.efapply__success-secondary{border:1px solid #b4d2cc;background:#fff;color:#0b6c62}
.efapply__success-secondary:hover{background:#e4f5ee}
.efapply__success-actions a:focus-visible{outline:3px solid #0d9488;outline-offset:3px}
@media(max-width:760px){
    .efapply__password-control input{height:54px;min-height:54px;font-size:16px}
    .efapply__success{margin-top:18px;padding:21px 18px 22px}
    .efapply__success-actions{width:100%}
}
@media(max-width:380px){.efapply__success-actions a{flex:1 1 100%}}
