/* =========================================================
   HANDL — HANDLORD REGISTRATION
   Reference composition: 1055 × 1491 supplied mockup
   Responsive production implementation
========================================================= */

:root{
    --handl-hlr-purple:#6840f0;
    --handl-hlr-purple-2:#7b47ff;
    --handl-hlr-purple-soft:#f1ebff;
    --handl-hlr-ink:#10152f;
    --handl-hlr-text:#5f6578;
    --handl-hlr-muted:#8b90a2;
    --handl-hlr-border:#e2e4ed;
    --handl-hlr-bg:#f8f8fd;
    --handl-hlr-white:#ffffff;
    --handl-hlr-danger:#b4233c;
    --handl-hlr-pro-orange:#ff4b1f;
    --handl-hlr-pro-orange-soft:#fff1ec;
}

.handl-handlord-registration-page .entry-content,
.handl-handlord-registration-page .page-content{
    margin:0 !important;
    padding:0 !important;
}

.handl-hlr,
.handl-hlr *{
    box-sizing:border-box;
}

.handl-hlr{
    position:relative;
    isolation:isolate;
    width:100%;
    overflow:hidden;
    background:
        radial-gradient(circle at 25% 20%, rgba(113,70,255,.10) 0, rgba(113,70,255,0) 34%),
        linear-gradient(180deg,#fafaff 0%,#f8f8fd 100%);
    color:var(--handl-hlr-ink);
}

.handl-hlr svg{
    display:block;
    width:1em;
    height:1em;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.handl-hlr__wash{
    position:absolute;
    z-index:-1;
    left:-11rem;
    bottom:6rem;
    width:38rem;
    height:38rem;
    border:4.6rem solid rgba(112,66,255,.05);
    border-radius:50%;
    pointer-events:none;
}

.handl-hlr__shell{
    width:min(100% - 48px, 1480px);
    margin:0 auto;
    padding:62px 0 68px;
}

.handl-hlr__back{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin:0 0 60px;
    color:var(--handl-hlr-purple);
    font-size:15px;
    font-weight:700;
    line-height:1;
    text-decoration:none;
}

.handl-hlr__back:hover,
.handl-hlr__back:focus{
    color:#4f2ed0;
    text-decoration:none;
}

.handl-hlr__main-grid{
    display:grid;
    grid-template-columns:minmax(300px,.78fr) minmax(560px,1.22fr);
    gap:clamp(56px,7vw,112px);
    align-items:start;
}

.handl-hlr__story{
    padding:104px 0 0 12px;
}

.handl-hlr__eyebrow{
    margin-bottom:23px;
    color:var(--handl-hlr-purple);
    font-size:14px;
    font-weight:800;
    letter-spacing:.16em;
    line-height:1.2;
}

.handl-hlr__story h1{
    max-width:520px;
    margin:0;
    color:var(--handl-hlr-ink);
    font-size:clamp(46px,4.1vw,72px);
    font-weight:800;
    letter-spacing:-.055em;
    line-height:.98;
}

.handl-hlr__story h1 span{
    color:var(--handl-hlr-purple);
}

.handl-hlr__title-rule{
    width:68px;
    height:4px;
    margin:28px 0 30px;
    border-radius:99px;
    background:var(--handl-hlr-purple);
}

.handl-hlr__story-copy{
    max-width:500px;
    margin:0;
    color:var(--handl-hlr-text);
    font-size:19px;
    line-height:1.65;
}

.handl-hlr__benefits{
    display:grid;
    gap:25px;
    margin-top:46px;
}

.handl-hlr__benefit{
    display:grid;
    grid-template-columns:52px 1fr;
    gap:16px;
    align-items:start;
}

.handl-hlr__benefit-icon{
    display:grid;
    place-items:center;
    width:50px;
    height:50px;
    border-radius:50%;
    background:linear-gradient(145deg,var(--handl-hlr-purple),var(--handl-hlr-purple-2));
    color:#fff;
    box-shadow:0 10px 25px rgba(104,64,240,.16);
}

.handl-hlr__benefit-icon svg{
    width:24px;
    height:24px;
}

.handl-hlr__benefit h3{
    margin:1px 0 4px;
    color:var(--handl-hlr-ink);
    font-size:16px;
    font-weight:800;
    line-height:1.25;
}

.handl-hlr__benefit p{
    max-width:350px;
    margin:0;
    color:var(--handl-hlr-text);
    font-size:14px;
    line-height:1.5;
}

.handl-hlr__community-card{
    display:flex;
    align-items:center;
    gap:18px;
    width:min(100%,370px);
    margin-top:46px;
    padding:18px 20px;
    border:1px solid rgba(104,64,240,.12);
    border-radius:13px;
    background:rgba(255,255,255,.84);
    box-shadow:0 16px 40px rgba(63,46,129,.07);
    backdrop-filter:blur(8px);
}

.handl-hlr__community-avatars{
    display:flex;
    flex:0 0 auto;
    padding-left:8px;
}

.handl-hlr__community-avatars span{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    margin-left:-8px;
    border:2px solid #fff;
    border-radius:50%;
    background:var(--handl-hlr-purple-soft);
    color:var(--handl-hlr-purple);
    font-size:11px;
    font-weight:800;
}

.handl-hlr__community-copy strong{
    display:block;
    color:var(--handl-hlr-ink);
    font-size:13px;
    line-height:1.35;
}

.handl-hlr__rating{
    display:flex;
    gap:12px;
    align-items:center;
    margin-top:8px;
    color:var(--handl-hlr-text);
    font-size:13px;
}

.handl-hlr__stars{
    color:var(--handl-hlr-purple);
    letter-spacing:1.5px;
}

.handl-hlr__form-card{
    position:relative;
    overflow:hidden;
    width:100%;
    min-width:0;
    padding:48px 48px 38px;
    border:1px solid rgba(225,226,236,.84);
    border-radius:24px;
    background:rgba(255,255,255,.96);
    box-shadow:0 28px 80px rgba(37,30,73,.10);
}

.handl-hlr__form-card-head{
    position:relative;
    z-index:2;
    display:flex;
    justify-content:space-between;
    gap:24px;
    align-items:flex-start;
}

.handl-hlr__form-card-head h2{
    margin:0 0 5px;
    color:var(--handl-hlr-purple);
    font-size:30px;
    font-weight:800;
    letter-spacing:-.03em;
    line-height:1.1;
}

.handl-hlr__form-card-head p{
    margin:0;
    color:var(--handl-hlr-text);
    font-size:16px;
    line-height:1.45;
}

.handl-hlr__account-icon{
    display:grid;
    place-items:center;
    flex:0 0 auto;
    width:58px;
    height:58px;
    border-radius:50%;
    background:var(--handl-hlr-purple-soft);
    color:var(--handl-hlr-purple);
}

.handl-hlr__account-icon svg{
    width:29px;
    height:29px;
}

.handl-hlr__steps{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:auto minmax(70px,1fr) auto;
    align-items:center;
    gap:16px;
    margin:43px 0 45px;
}

.handl-hlr__step{
    display:flex;
    align-items:center;
    gap:12px;
    color:#969aad;
    white-space:nowrap;
}

.handl-hlr__step span{
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    border:1px solid #d2d5e1;
    border-radius:50%;
    background:#f7f7fa;
    color:#8a8fa2;
    font-size:12px;
    font-weight:800;
}

.handl-hlr__step strong{
    font-size:13px;
    font-weight:700;
}

.handl-hlr__step.is-active,
.handl-hlr__step.is-complete{
    color:var(--handl-hlr-ink);
}

.handl-hlr__step.is-active span{
    border-color:var(--handl-hlr-purple);
    background:var(--handl-hlr-purple);
    color:#fff;
}

.handl-hlr__step.is-complete span{
    border-color:#34a66f;
    background:#34a66f;
    color:#fff;
}

.handl-hlr__step-line{
    height:1px;
    background:#d8dae4;
}

.handl-hlr__form{
    position:relative;
    z-index:2;
    display:grid;
    gap:24px;
}

.handl-hlr__field-row{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
}

.handl-hlr__field{
    min-width:0;
}

.handl-hlr__field label{
    display:block;
    margin:0 0 9px;
    color:var(--handl-hlr-ink);
    font-size:13px;
    font-weight:800;
    line-height:1.25;
}

.handl-hlr__input-wrap{
    position:relative;
}

.handl-hlr__input-wrap input{
    display:block;
    width:100%;
    height:58px;
    margin:0;
    padding:0 54px 0 48px;
    border:1px solid #dfe1e9;
    border-radius:9px;
    background:#fff;
    color:var(--handl-hlr-ink);
    font:inherit;
    font-size:14px;
    outline:0;
    box-shadow:none;
    transition:border-color .2s ease, box-shadow .2s ease;
}

.handl-hlr__input-wrap input::placeholder{
    color:#a6aabb;
}

.handl-hlr__input-wrap input:focus{
    border-color:var(--handl-hlr-purple);
    box-shadow:0 0 0 4px rgba(104,64,240,.09);
}

.handl-hlr__input-icon{
    position:absolute;
    top:50%;
    left:17px;
    transform:translateY(-50%);
    color:#969bad;
    pointer-events:none;
}

.handl-hlr__input-icon svg{
    width:20px;
    height:20px;
}

.handl-hlr__password-toggle{
    position:absolute;
    top:50%;
    right:14px;
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    padding:0;
    border:0;
    border-radius:50%;
    background:transparent;
    color:#969bad;
    transform:translateY(-50%);
    cursor:pointer;
}

.handl-hlr__password-toggle:hover,
.handl-hlr__password-toggle:focus{
    background:#f4f1ff;
    color:var(--handl-hlr-purple);
    outline:0;
}

.handl-hlr__password-toggle svg{
    width:19px;
    height:19px;
}

.handl-hlr__field-error{
    display:block;
    margin-top:7px;
    color:var(--handl-hlr-danger);
    font-size:12px;
    font-weight:700;
    line-height:1.35;
}

.handl-hlr__notice{
    margin:0 0 25px;
    padding:13px 15px;
    border-radius:9px;
    font-size:13px;
    font-weight:700;
    line-height:1.45;
}

.handl-hlr__notice--error{
    border:1px solid #f0bcc6;
    background:#fff1f4;
    color:var(--handl-hlr-danger);
}

.handl-hlr__security-note{
    display:grid;
    grid-template-columns:34px 1fr;
    gap:12px;
    align-items:center;
    padding:13px 15px;
    border:1px solid rgba(104,64,240,.15);
    border-radius:8px;
    background:#f7f3ff;
}

.handl-hlr__security-icon{
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    border-radius:50%;
    color:var(--handl-hlr-purple);
}

.handl-hlr__security-icon svg{
    width:22px;
    height:22px;
}

.handl-hlr__security-note strong{
    display:block;
    margin-bottom:2px;
    color:var(--handl-hlr-purple);
    font-size:12px;
    line-height:1.25;
}

.handl-hlr__security-note p{
    margin:0;
    color:var(--handl-hlr-text);
    font-size:11px;
    line-height:1.4;
}

.handl-hlr__terms{
    display:flex;
    gap:10px;
    align-items:flex-start;
    margin:0;
    color:var(--handl-hlr-text);
    font-size:12px;
    line-height:1.5;
    cursor:pointer;
}

.handl-hlr__terms input{
    flex:0 0 auto;
    width:17px;
    height:17px;
    margin:1px 0 0;
    accent-color:var(--handl-hlr-purple);
}

.handl-hlr__terms a,
.handl-hlr__signin a{
    color:var(--handl-hlr-purple);
    font-weight:700;
    text-decoration:none;
}

.handl-hlr__terms a:hover,
.handl-hlr__signin a:hover{
    text-decoration:underline;
}

.handl-hlr__submit{
    width:100%;
    height:58px;
    margin:0;
    padding:0 24px;
    border:0;
    border-radius:8px;
    background:linear-gradient(90deg,#6338ea 0%,#7140f0 55%,#7445f5 100%);
    color:#fff;
    font:inherit;
    font-size:15px;
    font-weight:800;
    box-shadow:0 14px 30px rgba(104,64,240,.18);
    cursor:pointer;
    transition:transform .16s ease, box-shadow .16s ease;
}

.handl-hlr__submit:hover,
.handl-hlr__submit:focus{
    transform:translateY(-1px);
    box-shadow:0 18px 36px rgba(104,64,240,.22);
    outline:0;
}

.handl-hlr__or{
    display:grid;
    grid-template-columns:1fr auto 1fr;
    gap:14px;
    align-items:center;
    color:#8c91a3;
}

.handl-hlr__or span{
    height:1px;
    background:#e3e4ea;
}

.handl-hlr__or strong{
    font-size:11px;
    font-weight:700;
}

.handl-hlr__signin{
    margin:0;
    color:#8a8fa0;
    font-size:13px;
    text-align:center;
}

.handl-hlr__stats{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    margin-top:52px;
    padding:27px 28px;
    border:1px solid rgba(222,224,234,.84);
    border-radius:15px;
    background:rgba(255,255,255,.92);
    box-shadow:0 18px 55px rgba(55,41,112,.07);
}

.handl-hlr__stat{
    display:grid;
    grid-template-columns:54px 1fr;
    gap:15px;
    align-items:center;
    min-width:0;
    padding:0 27px;
    border-right:1px solid #e3e4eb;
}

.handl-hlr__stat:first-child{
    padding-left:8px;
}

.handl-hlr__stat:last-child{
    padding-right:8px;
    border-right:0;
}

.handl-hlr__stat-icon{
    display:grid;
    place-items:center;
    width:50px;
    height:50px;
    border-radius:50%;
    background:var(--handl-hlr-purple-soft);
    color:var(--handl-hlr-purple);
}

.handl-hlr__stat-icon svg{
    width:25px;
    height:25px;
}

.handl-hlr__stat strong,
.handl-hlr__stat span,
.handl-hlr__stat small{
    display:block;
}

.handl-hlr__stat strong{
    margin-bottom:3px;
    color:var(--handl-hlr-ink);
    font-size:20px;
    font-weight:800;
    line-height:1.1;
}

.handl-hlr__stat span{
    color:var(--handl-hlr-ink);
    font-size:12px;
    font-weight:700;
    line-height:1.3;
}

.handl-hlr__stat small{
    margin-top:3px;
    color:#969bad;
    font-size:10px;
    line-height:1.35;
}

/* =========================================================
   VERIFY EMAIL STATE
========================================================= */

.handl-hlr--verify{
    min-height:620px;
    display:grid;
    place-items:center;
    padding:70px 24px;
}

.handl-hlr__verify-card{
    width:min(100%,700px);
    padding:58px;
    border:1px solid var(--handl-hlr-border);
    border-radius:24px;
    background:#fff;
    text-align:center;
    box-shadow:0 28px 80px rgba(37,30,73,.10);
}

.handl-hlr__verify-icon{
    display:grid;
    place-items:center;
    width:76px;
    height:76px;
    margin:0 auto 24px;
    border-radius:50%;
    background:var(--handl-hlr-purple-soft);
    color:var(--handl-hlr-purple);
}

.handl-hlr__verify-icon svg{
    width:34px;
    height:34px;
}

.handl-hlr__verify-card .handl-hlr__eyebrow{
    margin-bottom:12px;
}

.handl-hlr__verify-card h1{
    margin:0 0 14px;
    color:var(--handl-hlr-ink);
    font-size:44px;
    letter-spacing:-.04em;
    line-height:1.05;
}

.handl-hlr__verify-card > p{
    max-width:540px;
    margin:0 auto;
    color:var(--handl-hlr-text);
    font-size:16px;
    line-height:1.65;
}

.handl-hlr__steps--verify{
    max-width:520px;
    margin:40px auto;
}

.handl-hlr__secondary-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:0 24px;
    border:1px solid var(--handl-hlr-purple);
    border-radius:8px;
    color:var(--handl-hlr-purple);
    font-size:14px;
    font-weight:800;
    text-decoration:none;
}

.handl-hlr__secondary-button:hover{
    background:var(--handl-hlr-purple-soft);
    color:var(--handl-hlr-purple);
    text-decoration:none;
}


/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width:1600px){
    .handl-hlr__shell{
        width:min(100% - 96px,1560px);
        padding-top:72px;
        padding-bottom:78px;
    }

    .handl-hlr__main-grid{
        grid-template-columns:minmax(350px,.82fr) minmax(650px,1.18fr);
        gap:118px;
    }

    .handl-hlr__form-card{
        padding:54px 58px 42px;
    }
}


/* =========================================================
   LAPTOP
========================================================= */

@media (max-width:1279px){
    .handl-hlr__shell{
        width:min(100% - 40px,1180px);
        padding-top:48px;
    }

    .handl-hlr__back{
        margin-bottom:44px;
    }

    .handl-hlr__main-grid{
        grid-template-columns:minmax(260px,.72fr) minmax(520px,1.28fr);
        gap:48px;
    }

    .handl-hlr__story{
        padding-top:74px;
        padding-left:0;
    }

    .handl-hlr__story h1{
        font-size:clamp(42px,4.3vw,58px);
    }

    .handl-hlr__story-copy{
        font-size:17px;
    }

    .handl-hlr__form-card{
        padding:40px 38px 34px;
    }

    .handl-hlr__stats{
        padding-inline:20px;
    }

    .handl-hlr__stat{
        grid-template-columns:44px 1fr;
        gap:11px;
        padding-inline:18px;
    }

    .handl-hlr__stat-icon{
        width:43px;
        height:43px;
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width:900px){
    .handl-hlr__shell{
        width:min(100% - 32px,760px);
        padding:36px 0 48px;
    }

    .handl-hlr__back{
        margin-bottom:34px;
    }

    .handl-hlr__main-grid{
        grid-template-columns:1fr;
        gap:36px;
    }

    .handl-hlr__story{
        padding:0;
    }

    .handl-hlr__story h1{
        max-width:640px;
        font-size:clamp(44px,8vw,64px);
    }

    .handl-hlr__story-copy{
        max-width:650px;
    }

    .handl-hlr__benefits{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:22px 28px;
    }

    .handl-hlr__community-card{
        margin-top:34px;
    }

    .handl-hlr__form-card{
        padding:40px;
    }

    .handl-hlr__stats{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:0;
        padding:12px;
    }

    .handl-hlr__stat{
        padding:20px;
        border-right:1px solid #e3e4eb;
        border-bottom:1px solid #e3e4eb;
    }

    .handl-hlr__stat:nth-child(2){
        border-right:0;
    }

    .handl-hlr__stat:nth-child(3){
        border-bottom:0;
    }

    .handl-hlr__stat:nth-child(4){
        border-right:0;
        border-bottom:0;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width:640px){
    .handl-hlr__shell{
        width:min(100% - 24px,560px);
        padding:26px 0 38px;
    }

    .handl-hlr__back{
        margin-bottom:28px;
        font-size:13px;
    }

    .handl-hlr__story h1{
        font-size:clamp(39px,12vw,54px);
    }

    .handl-hlr__eyebrow{
        margin-bottom:15px;
        font-size:12px;
    }

    .handl-hlr__title-rule{
        margin:21px 0 23px;
    }

    .handl-hlr__story-copy{
        font-size:16px;
    }

    .handl-hlr__benefits{
        grid-template-columns:1fr;
        margin-top:32px;
    }

    .handl-hlr__community-card{
        width:100%;
    }

    .handl-hlr__form-card{
        padding:28px 20px 25px;
        border-radius:18px;
    }

    .handl-hlr__form-card-head h2{
        font-size:25px;
    }

    .handl-hlr__form-card-head p{
        font-size:14px;
    }

    .handl-hlr__account-icon{
        width:48px;
        height:48px;
    }

    .handl-hlr__steps{
        grid-template-columns:auto minmax(28px,1fr) auto;
        gap:8px;
        margin:32px 0 34px;
    }

    .handl-hlr__step{
        gap:7px;
    }

    .handl-hlr__step strong{
        font-size:11px;
    }

    .handl-hlr__step span{
        width:24px;
        height:24px;
        font-size:10px;
    }

    .handl-hlr__field-row{
        grid-template-columns:1fr;
        gap:24px;
    }

    .handl-hlr__input-wrap input{
        height:54px;
        padding-left:45px;
    }

    .handl-hlr__security-note{
        align-items:start;
    }

    .handl-hlr__stats{
        grid-template-columns:1fr;
        margin-top:30px;
    }

    .handl-hlr__stat,
    .handl-hlr__stat:first-child,
    .handl-hlr__stat:last-child{
        padding:18px 16px;
        border-right:0;
        border-bottom:1px solid #e3e4eb;
    }

    .handl-hlr__stat:last-child{
        border-bottom:0;
    }

    .handl-hlr__verify-card{
        padding:38px 20px;
        border-radius:18px;
    }

    .handl-hlr__verify-card h1{
        font-size:36px;
    }

    .handl-hlr__steps--verify{
        margin:30px auto;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width:390px){
    .handl-hlr__shell{
        width:min(100% - 18px,360px);
    }

    .handl-hlr__story h1{
        font-size:39px;
    }

    .handl-hlr__community-card{
        align-items:flex-start;
        padding:15px;
    }

    .handl-hlr__form-card{
        padding:24px 16px 22px;
    }

    .handl-hlr__form-card-head{
        gap:12px;
    }

    .handl-hlr__form-card-head h2{
        font-size:23px;
    }

    .handl-hlr__steps{
        display:flex;
        justify-content:space-between;
    }

    .handl-hlr__step-line{
        flex:1 1 auto;
    }

    .handl-hlr__step strong{
        display:none;
    }
}


/* =========================================================
   HANDL PRO — DISTINCT VISUAL SYSTEM
   Violet remains the Handlord family color.
   Orange is only a business/Pro accent, never a Handler theme.
========================================================= */

.handl-hlr--pro{
    background:
        radial-gradient(circle at 21% 18%, rgba(111,68,244,.11) 0, rgba(111,68,244,0) 35%),
        radial-gradient(circle at 9% 66%, rgba(255,75,31,.045) 0, rgba(255,75,31,0) 21%),
        linear-gradient(180deg,#fbfaff 0%,#f8f7ff 100%);
}

.handl-hlr--pro .handl-hlr__wash{
    border-color:rgba(111,68,244,.045);
}

.handl-hlr--pro .handl-hlr__eyebrow{
    display:flex;
    align-items:center;
    gap:14px;
    color:var(--handl-hlr-pro-orange);
}

.handl-hlr--pro .handl-hlr__eyebrow::after{
    content:"";
    width:28px;
    height:2px;
    border-radius:999px;
    background:var(--handl-hlr-pro-orange);
}

.handl-hlr--pro .handl-hlr__story h1 span{
    color:var(--handl-hlr-purple);
}

.handl-hlr--pro .handl-hlr__title-rule{
    width:56px;
    background:linear-gradient(
        90deg,
        var(--handl-hlr-pro-orange) 0 68%,
        rgba(255,75,31,.28) 68% 100%
    );
}

.handl-hlr__pro-kicker{
    margin:-6px 0 24px;
    color:var(--handl-hlr-pro-orange);
    font-size:18px;
    font-weight:700;
    line-height:1.4;
}

.handl-hlr--pro .handl-hlr__benefit-icon{
    position:relative;
    overflow:visible;
    border:1px solid rgba(104,64,240,.10);
    background:#f0ebff;
    color:var(--handl-hlr-purple);
    box-shadow:none;
}

.handl-hlr--pro .handl-hlr__benefit-icon::after{
    content:"✓";
    position:absolute;
    right:-3px;
    bottom:-3px;
    display:grid;
    place-items:center;
    width:16px;
    height:16px;
    border:2px solid #fff;
    border-radius:50%;
    background:var(--handl-hlr-pro-orange);
    color:#fff;
    font-size:9px;
    font-weight:900;
    line-height:1;
}

.handl-hlr--pro .handl-hlr__community-card{
    border-color:rgba(104,64,240,.14);
    background:rgba(255,255,255,.88);
}

.handl-hlr--pro .handl-hlr__community-card--pro{
    align-items:flex-start;
    width:min(100%,395px);
    padding:19px 20px 18px;
}

.handl-hlr--pro .handl-hlr__community-card--pro .handl-hlr__community-copy{
    position:relative;
    padding-top:4px;
}

.handl-hlr__quote-mark{
    position:absolute;
    top:-12px;
    left:0;
    color:var(--handl-hlr-purple);
    font-family:Georgia,serif;
    font-size:36px;
    font-weight:700;
    line-height:1;
}

.handl-hlr__testimonial-copy{
    display:block;
    padding-top:18px;
    color:var(--handl-hlr-ink);
    font-size:12px !important;
    font-weight:650 !important;
    line-height:1.48 !important;
}

.handl-hlr--pro .handl-hlr__stars{
    color:var(--handl-hlr-pro-orange);
}

.handl-hlr__community-note{
    display:block;
    margin-top:8px;
    color:var(--handl-hlr-text);
    font-size:11px;
    line-height:1.4;
}

.handl-hlr--pro .handl-hlr__community-avatars span:nth-child(1){
    background:#e9e1ff;
}

.handl-hlr--pro .handl-hlr__community-avatars span:nth-child(2){
    background:#fff0eb;
    color:var(--handl-hlr-pro-orange);
}

.handl-hlr--pro .handl-hlr__community-avatars span:nth-child(3){
    background:#e7f2ef;
    color:#2f7563;
}

.handl-hlr--pro .handl-hlr__form-card::before{
    content:"";
    position:absolute;
    z-index:0;
    top:0;
    left:0;
    right:0;
    height:138px;
    background:
        radial-gradient(120% 160% at 92% -30%, rgba(104,64,240,.18) 0 31%, transparent 32%),
        radial-gradient(115% 150% at 58% -40%, rgba(104,64,240,.095) 0 45%, transparent 46%),
        linear-gradient(135deg,#f7f4ff 0%,#f2edff 100%);
    pointer-events:none;
}

.handl-hlr--pro .handl-hlr__form-card::after{
    content:"";
    position:absolute;
    z-index:1;
    top:137px;
    left:0;
    right:0;
    height:1px;
    background:rgba(104,64,240,.08);
}

.handl-hlr__type-heading{
    display:flex;
    align-items:center;
    gap:10px;
}

.handl-hlr__type-heading h2{
    margin:0 !important;
}

.handl-hlr__pro-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:39px;
    height:25px;
    padding:0 8px;
    border:1.5px solid var(--handl-hlr-pro-orange);
    border-radius:6px;
    background:#fff;
    color:var(--handl-hlr-pro-orange);
    font-size:11px;
    font-weight:900;
    letter-spacing:.02em;
}

.handl-hlr--pro .handl-hlr__form-card-head{
    min-height:76px;
}

.handl-hlr--pro .handl-hlr__account-icon{
    position:relative;
    border:1px solid rgba(104,64,240,.08);
    background:rgba(255,255,255,.83);
    color:var(--handl-hlr-purple);
    box-shadow:0 10px 26px rgba(64,42,139,.08);
}

.handl-hlr--pro .handl-hlr__account-icon::after{
    content:"✓";
    position:absolute;
    right:5px;
    bottom:5px;
    display:grid;
    place-items:center;
    width:17px;
    height:17px;
    border:2px solid #fff;
    border-radius:50%;
    background:var(--handl-hlr-pro-orange);
    color:#fff;
    font-size:9px;
    font-weight:900;
}

.handl-hlr--pro .handl-hlr__steps{
    margin-top:38px;
}

.handl-hlr--pro .handl-hlr__step.is-active span{
    border-color:var(--handl-hlr-purple);
    background:var(--handl-hlr-purple);
}

.handl-hlr--pro .handl-hlr__step-line{
    background:linear-gradient(
        90deg,
        var(--handl-hlr-purple) 0 24%,
        #d8dae4 24% 100%
    );
}

.handl-hlr--pro .handl-hlr__security-note{
    border-color:rgba(104,64,240,.18);
    background:linear-gradient(90deg,#f7f3ff 0%,#fbf8ff 100%);
}

.handl-hlr--pro .handl-hlr__security-icon{
    position:relative;
}

.handl-hlr--pro .handl-hlr__security-icon::after{
    content:"";
    position:absolute;
    right:0;
    bottom:2px;
    width:7px;
    height:7px;
    border-radius:50%;
    background:var(--handl-hlr-pro-orange);
}

.handl-hlr--pro .handl-hlr__submit{
    background:linear-gradient(
        90deg,
        #6338ea 0%,
        #7140f0 56%,
        #7445f5 100%
    );
}

.handl-hlr--pro .handl-hlr__terms a:first-of-type{
    text-decoration-color:rgba(255,75,31,.45);
}

.handl-hlr--pro .handl-hlr__stat-icon{
    position:relative;
}

.handl-hlr--pro .handl-hlr__stat:nth-child(2) .handl-hlr__stat-icon::after{
    content:"✓";
    position:absolute;
    right:1px;
    bottom:1px;
    display:grid;
    place-items:center;
    width:14px;
    height:14px;
    border:2px solid #fff;
    border-radius:50%;
    background:var(--handl-hlr-pro-orange);
    color:#fff;
    font-size:8px;
    font-weight:900;
}


/* Pro laptop */
@media (max-width:1279px){
    .handl-hlr--pro .handl-hlr__form-card::before{
        height:126px;
    }

    .handl-hlr--pro .handl-hlr__form-card::after{
        top:125px;
    }

    .handl-hlr__pro-kicker{
        font-size:17px;
    }
}


/* Pro tablet */
@media (max-width:900px){
    .handl-hlr--pro .handl-hlr__story{
        max-width:680px;
    }

    .handl-hlr--pro .handl-hlr__community-card--pro{
        width:min(100%,440px);
    }

    .handl-hlr--pro .handl-hlr__form-card::before{
        height:126px;
    }
}


/* Pro mobile */
@media (max-width:640px){
    .handl-hlr__pro-kicker{
        margin:-3px 0 18px;
        font-size:15px;
    }

    .handl-hlr--pro .handl-hlr__eyebrow::after{
        width:22px;
    }

    .handl-hlr--pro .handl-hlr__form-card::before{
        height:112px;
    }

    .handl-hlr--pro .handl-hlr__form-card::after{
        top:111px;
    }

    .handl-hlr__pro-pill{
        min-width:34px;
        height:22px;
        padding-inline:6px;
        font-size:10px;
    }

    .handl-hlr--pro .handl-hlr__form-card-head{
        min-height:62px;
    }

    .handl-hlr--pro .handl-hlr__steps{
        margin-top:30px;
    }
}


/* =========================================================
   HANDL PRO — SUPPLIED TESTIMONIAL PORTRAITS
========================================================= */

.handl-hlr__community-photo{
    flex:0 0 auto;
    width:118px;
    max-width:34%;
    margin-top:3px;
}

.handl-hlr__community-photo img{
    display:block;
    width:100%;
    height:auto;
    margin:0;
    border:0;
    object-fit:contain;
    filter:drop-shadow(0 5px 9px rgba(28,22,66,.08));
}

.handl-hlr--pro .handl-hlr__community-card--pro{
    display:grid;
    grid-template-columns:118px minmax(0,1fr);
    column-gap:16px;
    row-gap:4px;
    align-items:start;
}

.handl-hlr--pro .handl-hlr__community-card--pro .handl-hlr__community-photo{
    grid-column:1;
    grid-row:1;
    max-width:none;
}

.handl-hlr--pro .handl-hlr__community-card--pro .handl-hlr__community-copy{
    grid-column:2;
    grid-row:1;
    min-width:0;
}

@media (max-width:1279px){
    .handl-hlr--pro .handl-hlr__community-card--pro{
        grid-template-columns:102px minmax(0,1fr);
    }

    .handl-hlr__community-photo{
        width:102px;
    }
}

@media (max-width:900px){
    .handl-hlr--pro .handl-hlr__community-card--pro{
        grid-template-columns:112px minmax(0,1fr);
    }

    .handl-hlr__community-photo{
        width:112px;
    }
}

@media (max-width:480px){
    .handl-hlr--pro .handl-hlr__community-card--pro{
        grid-template-columns:90px minmax(0,1fr);
        column-gap:12px;
        padding:16px;
    }

    .handl-hlr__community-photo{
        width:90px;
    }

    .handl-hlr__testimonial-copy{
        font-size:11px !important;
    }

    .handl-hlr__community-note{
        font-size:10px;
    }
}
/* =========================================================
   v1.2 — SAFE FULL-WIDTH / CENTERED / NO EDGE CLIPPING
   HANDLORD REGISTRATION
   ---------------------------------------------------------
   Règle HANDL :
   - fond réellement pleine largeur ;
   - contenu centré avec gouttières de sécurité ;
   - aucun élément collé/coupé aux bords ;
   - même logique desktop / laptop / tablet / mobile ;
   - header/footer Homey non modifiés.
   ========================================================= */

body.handl-handlord-registration-page{
    overflow-x:hidden !important;
}

body.handl-handlord-registration-page .entry-content,
body.handl-handlord-registration-page .page-content{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
}

/* IMPORTANT :
   on supprime le breakout agressif 100vw + marges négatives.
   La section occupe toute la largeur réellement disponible sans
   être déplacée ni coupée sur téléphone. */
body.handl-handlord-registration-page .handl-hlr{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    overflow-x:clip !important;
    transform:none !important;
}

/* Un seul standard de largeur pour toute cette page HANDL :
   plein écran pour le fond, contenu plafonné et centré. */
body.handl-handlord-registration-page .handl-hlr__shell{
    box-sizing:border-box !important;
    width:100% !important;
    max-width:1600px !important;
    margin:0 auto !important;
    padding:
        clamp(24px,2.4vw,36px)
        clamp(22px,4vw,64px)
        clamp(44px,4vw,68px) !important;
}

/* Le lien retour ne doit plus créer une énorme zone vide sous le header. */
body.handl-handlord-registration-page .handl-hlr__back{
    margin:0 0 clamp(24px,2.5vw,34px) !important;
}

/* Desktop : deux colonnes équilibrées, avec un espace raisonnable. */
body.handl-handlord-registration-page .handl-hlr__main-grid{
    width:100% !important;
    min-width:0 !important;
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr) !important;
    gap:clamp(34px,4vw,64px) !important;
    align-items:start !important;
}

/* La colonne texte ne démarre plus 104px plus bas. */
body.handl-handlord-registration-page .handl-hlr__story{
    width:100% !important;
    max-width:560px !important;
    min-width:0 !important;
    justify-self:center !important;
    padding:clamp(22px,2.5vw,38px) 0 0 !important;
}

/* Titres réduits et surtout protégés contre toute coupure latérale. */
body.handl-handlord-registration-page .handl-hlr__story h1{
    width:100% !important;
    max-width:540px !important;
    margin:0 !important;
    padding:0 !important;
    font-size:clamp(40px,3.15vw,54px) !important;
    line-height:1.04 !important;
    letter-spacing:-.038em !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
}

body.handl-handlord-registration-page .handl-hlr__story-copy{
    max-width:520px !important;
    font-size:17px !important;
    line-height:1.58 !important;
}

body.handl-handlord-registration-page .handl-hlr__form-card{
    box-sizing:border-box !important;
    width:100% !important;
    max-width:820px !important;
    min-width:0 !important;
    justify-self:center !important;
    padding:clamp(34px,3.2vw,48px) clamp(30px,3.4vw,48px) 36px !important;
}

body.handl-handlord-registration-page .handl-hlr__form-card-head,
body.handl-handlord-registration-page .handl-hlr__form-card-head > div{
    min-width:0 !important;
}

body.handl-handlord-registration-page .handl-hlr__form-card-head h2{
    font-size:27px !important;
    line-height:1.1 !important;
}

/* Les champs et les étapes ne doivent jamais provoquer un débordement. */
body.handl-handlord-registration-page .handl-hlr__form,
body.handl-handlord-registration-page .handl-hlr__field-row,
body.handl-handlord-registration-page .handl-hlr__input-wrap,
body.handl-handlord-registration-page .handl-hlr__steps{
    min-width:0 !important;
    max-width:100% !important;
}

body.handl-handlord-registration-page .handl-hlr__stats{
    box-sizing:border-box !important;
    width:100% !important;
    max-width:100% !important;
    margin-top:clamp(34px,3.5vw,48px) !important;
}

/* =========================================================
   LARGE DESKTOP
   ========================================================= */
@media (min-width:1600px){
    body.handl-handlord-registration-page .handl-hlr__shell{
        max-width:1680px !important;
        padding-left:64px !important;
        padding-right:64px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__main-grid{
        grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) !important;
        gap:68px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__story{
        max-width:590px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__form-card{
        max-width:860px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__story h1{
        font-size:54px !important;
    }
}

/* =========================================================
   LAPTOP / SMALL DESKTOP
   ========================================================= */
@media (min-width:1025px) and (max-width:1599px){
    body.handl-handlord-registration-page .handl-hlr__shell{
        padding-left:clamp(28px,3.5vw,50px) !important;
        padding-right:clamp(28px,3.5vw,50px) !important;
    }

    body.handl-handlord-registration-page .handl-hlr__main-grid{
        grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr) !important;
        gap:clamp(30px,3.5vw,52px) !important;
    }

    body.handl-handlord-registration-page .handl-hlr__story h1{
        font-size:clamp(38px,3.8vw,50px) !important;
    }
}

/* =========================================================
   TABLET / COMPACT LAPTOP
   On empile avant que les colonnes deviennent trop serrées.
   ========================================================= */
@media (max-width:1024px){
    body.handl-handlord-registration-page .handl-hlr__shell{
        max-width:900px !important;
        padding:
            24px
            clamp(20px,4vw,34px)
            48px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__back{
        margin-bottom:24px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__main-grid{
        grid-template-columns:1fr !important;
        gap:32px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__story{
        max-width:720px !important;
        justify-self:center !important;
        padding:0 !important;
    }

    body.handl-handlord-registration-page .handl-hlr__story h1{
        max-width:640px !important;
        font-size:clamp(36px,5.4vw,46px) !important;
    }

    body.handl-handlord-registration-page .handl-hlr__story-copy{
        max-width:650px !important;
        font-size:16px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__form-card{
        max-width:820px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__benefits{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width:699px){
    body.handl-handlord-registration-page .handl-hlr{
        width:100% !important;
        max-width:100% !important;
        margin:0 !important;
        overflow-x:clip !important;
    }

    body.handl-handlord-registration-page .handl-hlr__shell{
        width:100% !important;
        max-width:none !important;
        margin:0 !important;
        padding:18px 16px 34px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__back{
        margin:0 0 20px !important;
        font-size:13px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__main-grid{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) !important;
        gap:26px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__story{
        width:100% !important;
        max-width:none !important;
        padding:0 !important;
    }

    body.handl-handlord-registration-page .handl-hlr__eyebrow{
        margin-bottom:13px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__story h1{
        width:100% !important;
        max-width:100% !important;
        font-size:clamp(31px,8.5vw,38px) !important;
        line-height:1.07 !important;
        letter-spacing:-.03em !important;
    }

    body.handl-handlord-registration-page .handl-hlr__title-rule{
        width:54px !important;
        margin:19px 0 20px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__story-copy{
        width:100% !important;
        max-width:100% !important;
        font-size:15px !important;
        line-height:1.55 !important;
    }

    body.handl-handlord-registration-page .handl-hlr__benefits{
        grid-template-columns:1fr !important;
        gap:18px !important;
        margin-top:28px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__benefit{
        grid-template-columns:46px minmax(0,1fr) !important;
        gap:14px !important;
        min-width:0 !important;
    }

    body.handl-handlord-registration-page .handl-hlr__benefit-icon{
        width:44px !important;
        height:44px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__benefit h3{
        font-size:15px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__benefit p{
        width:100% !important;
        max-width:none !important;
        font-size:13px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__community-card{
        box-sizing:border-box !important;
        width:100% !important;
        max-width:100% !important;
        margin-top:28px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__form-card{
        width:100% !important;
        max-width:100% !important;
        margin:0 !important;
        padding:26px 18px 24px !important;
        border-radius:18px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__form-card-head{
        gap:14px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__form-card-head h2{
        font-size:23px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__form-card-head p{
        font-size:13px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__account-icon{
        width:46px !important;
        height:46px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__steps{
        grid-template-columns:auto minmax(22px,1fr) auto !important;
        gap:7px !important;
        margin:28px 0 30px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__field-row{
        grid-template-columns:1fr !important;
        gap:20px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__input-wrap input{
        width:100% !important;
        max-width:100% !important;
        height:52px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__stats{
        grid-template-columns:1fr !important;
        margin-top:28px !important;
        padding:10px 16px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__stat,
    body.handl-handlord-registration-page .handl-hlr__stat:first-child,
    body.handl-handlord-registration-page .handl-hlr__stat:last-child{
        padding:15px 4px !important;
        border-right:0 !important;
        border-bottom:1px solid #e3e4eb !important;
    }

    body.handl-handlord-registration-page .handl-hlr__stat:last-child{
        border-bottom:0 !important;
    }

    body.handl-handlord-registration-page .handl-hlr__verify-card{
        width:100% !important;
        max-width:100% !important;
        padding:32px 18px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__verify-card h1{
        font-size:30px !important;
    }
}

/* Les libellés des étapes sont trop larges sur petits téléphones.
   On garde les numéros et la ligne, sans débordement. */
@media (max-width:480px){
    body.handl-handlord-registration-page .handl-hlr__shell{
        padding-left:14px !important;
        padding-right:14px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__story h1{
        font-size:clamp(29px,9vw,34px) !important;
    }

    body.handl-handlord-registration-page .handl-hlr__steps .handl-hlr__step strong{
        display:none !important;
    }

    body.handl-handlord-registration-page .handl-hlr__steps{
        grid-template-columns:auto minmax(36px,1fr) auto !important;
    }

    body.handl-handlord-registration-page .handl-hlr__form-card{
        padding-left:16px !important;
        padding-right:16px !important;
    }
}

/* Très petits téléphones : conserver une vraie marge de sécurité. */
@media (max-width:390px){
    body.handl-handlord-registration-page .handl-hlr__shell{
        padding-left:12px !important;
        padding-right:12px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__story h1{
        font-size:29px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__community-card{
        padding:14px !important;
    }

    body.handl-handlord-registration-page .handl-hlr__form-card{
        padding-left:14px !important;
        padding-right:14px !important;
    }
}
