
.hom-ban2 {
    width: 100%;
    max-width: 1250px;
    height: 100%;
    min-height: 397px;
    margin: 0 auto;
    padding: 30px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    box-sizing: border-box;
}


.register-banner-content {
    position: relative;
    z-index: 3;
    flex: 1;
    max-width: 650px;
    color: #fff;
    padding: 20px 0;

    opacity: 0.75;
}


.register-banner-content h1 {
    margin: 0 0 18px;

    color: #fff;
    font-size: 45px;
    line-height: 1.12;
    font-weight: 700;

    text-shadow: 0 3px 15px rgba(0,0,0,.35);
}


.register-banner-content h2 {
    margin: 0;

    max-width: 620px;

    color: #fff;

    font-size: 15px;
    line-height: 1.45;
    font-weight: 500;

    text-shadow: 0 2px 10px rgba(0,0,0,.35);
}


/* Small decorative line */

.register-banner-content h1::after {
    content: "";
    display: block;

    width: 75px;
    height: 4px;

    margin-top: 18px;

    background: #e54663;

    border-radius: 10px;
}


#register-form {
    position: relative;
    z-index: 4;

    width: 390px;
    max-width: 100%;

    flex: 0 0 390px;

    background: rgba(255,255,255,.97);

    padding: 28px 30px;

    border-radius: 18px;

    box-shadow:
        0 15px 45px rgba(0,0,0,.28);

    backdrop-filter: blur(8px);
}




/* Form list */

#register-form .form-list {
    margin: 0;
    padding: 0;
}

#register-form .form-list li {
    list-style: none;

    margin-bottom: 14px;
}


/* Labels */

#register-form .form-list li > label {
    display: block;

    margin-bottom: 6px;

    color: #333;

    font-size: 14px;
    font-weight: 600;
}


/* Inputs */

#register-form input[type="email"],
#register-form input[type="text"],
#register-form input[type="password"],
#register-form select {

    width: 100%;
    height: 45px;

    padding: 0 13px;

    border: 1px solid #ddd;
    border-radius: 7px;

    background: #fff;

    color: #333;

    font-size: 14px;

    box-sizing: border-box;
}


/* Focus */

#register-form input:focus,
#register-form select:focus {

    outline: none;

    border-color: #e54663;

    box-shadow: 0 0 0 3px rgba(229,70,99,.10);
}


.phone-flex {
    display: flex;

    gap: 8px;

    width: 100%;
}

.phone-flex select {

    width: 88px !important;

    flex: 0 0 88px;
}

.phone-flex input {

    flex: 1;

    min-width: 0;
}


#register-form .agree-box {

    display: flex;

    align-items: center;

    gap: 8px;

    margin-top: 4px;
}

#register-form .agree-box input {

    width: 17px;
    height: 17px;

    margin: 0;

    flex: 0 0 17px;
}

#register-form .agree-box label {

    margin: 0;

    font-size: 13px;

    line-height: 1.4;

    color: #555;
}

#register-form .agree-box a {

    color: #e54663;

    text-decoration: none;

    font-weight: 600;
}



#register-form .btn-search {

    width: 100%;

    min-height: 40px;

    border: none;

    border-radius: 25px;

    background: #e54663;

    color: #fff;

    font-size: 14px;

    font-weight: 600;

    cursor: pointer;

    transition: all .25s ease;
}

#register-form .btn-search:hover {

    background: #d93654;

    transform: translateY(-1px);

    box-shadow: 0 7px 18px rgba(229,70,99,.25);
}



#register-form .alert {

    margin-bottom: 15px;

    padding: 9px 12px;

    border-radius: 6px;

    font-size: 13px;
}



@media(max-width:1100px){

    .hom-ban2 {

        gap: 35px;
    }

    .register-banner-content h1 {

        font-size: 42px;
    }

    .register-banner-content h2 {

        font-size: 21px;
    }

    #register-form {

        width: 360px;

        flex-basis: 360px;

        padding: 25px;
    }
}

@media(max-width:767px){

    .hom-head {

        min-height: auto;

        margin-top: 40px;

        padding: 45px 18px;

        background-position: center;
    }


    .hom-ban2 {

        flex-direction: column;

        align-items: stretch;

        gap: 30px;
    }


    /* Heading first */

    .register-banner-content {

        width: 100%;

        max-width: 100%;

        text-align: center;

        order: 1;

        padding: 10px 0;
    }


    .register-banner-content h1 {

        font-size: 32px;

        line-height: 1.2;
    }


    .register-banner-content h1::after {

        margin: 15px auto 0;
    }


    .register-banner-content h2 {

        font-size: 17px;

        line-height: 1.5;
    }


    /* Form second */

    #register-form {

        width: 100%;

        max-width: 430px;

        margin: 0 auto;

        flex: none;

        padding: 22px;

        order: 2;

        box-sizing: border-box;
    }
   
    .mobilepara1 {
        padding: 0 15px;
        margin-bottom: 15px;
    }

}



@media(max-width:480px){

    .hom-head {

        padding: 35px 12px;
    }

    .register-banner-content h1 {

        font-size: 28px;
    }

    .register-banner-content h2 {

        font-size: 16px;
    }

    #register-form {

        padding: 18px;
    }
}


.matrimony-search-card {
    width: 100%;
    max-width: 315px;

    padding: 18px 10px 12px;

    background: #ffffff;

    border: 1px solid #f0e5e5;

    border-radius: 18px;

    box-shadow: 0 8px 28px rgba(30, 20, 30, 0.08);

    box-sizing: border-box;
}


.matrimony-search-title {
    display: flex;

    align-items: center;

    gap: 10px;

    padding: 0 8px 13px;

    color: #25283d;

    font-size: 17px;

    font-weight: 700;
}


.matrimony-globe {
    width: 30px;
    height: 30px;

    display: flex;

    align-items: center;
    justify-content: center;

    flex: 0 0 30px;

    background: #e91e3f;

    border-radius: 50%;

    color: #ffffff;

    font-size: 15px;
}

.matrimony-search-list {
    margin: 0;

    padding: 0;

    list-style: none;
}


.matrimony-search-item {
    margin: 0;

    padding: 0;

    list-style: none;

    border-bottom: 1px solid #eeeeee;
}


.matrimony-search-item:last-child {
    border-bottom: 0;
}


.matrimony-search-link {
    position: relative;

    display: flex;

    align-items: flex-start;

    gap: 8px;

    width: 100%;

    min-height: 43px;

    padding: 10px 8px;

    box-sizing: border-box;

    color: #202438;

    font-size: 13px;

    font-weight: 500;

    line-height: 1.45;

    text-decoration: none !important;

    border-radius: 7px;

    transition: all .2s ease;
}



.matrimony-arrow {
    flex: 0 0 12px;

    color: #e91e3f;

    font-size: 20px;

    line-height: 16px;

    font-weight: 400;
}


.matrimony-search-link:hover {

    color: #e91e3f;

    background: #fff5f6;

    text-decoration: none;
}


.matrimony-search-link.matrimony-active {

    color: #ffffff !important;

    background: linear-gradient(
        90deg,
        #e91e3f,
        #d91235
    );

    font-weight: 700;

    box-shadow: 0 4px 10px rgba(233, 30, 63, .16);
}


.matrimony-search-link.matrimony-active .matrimony-arrow {

    color: #ffffff;
}

.matrimony-search-cta {

    display: flex;

    align-items: center;

    gap: 11px;

    margin: 13px 0 0;

    padding: 10px;

    background: linear-gradient(
        135deg,
        #fff7f7,
        #fffafa
    );

    border: 1px solid #f8e1e3;

    border-radius: 11px;

    box-sizing: border-box;
}


/* Heart */

.matrimony-heart {

    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    flex: 0 0 43px;

    background: #ffe6e9;

    border-radius: 50%;
}


.matrimony-heart i {

    color: #e91e3f;

    font-size: 19px;
}


/* CTA text */

.matrimony-cta-text {

    display: flex;

    flex-direction: column;

    gap: 3px;

    min-width: 0;
}


.matrimony-cta-text strong {

    color: #202438;

    font-size: 12px;

    font-weight: 700;

    line-height: 1.3;
}


.matrimony-cta-text span {

    color: #555b6e;

    font-size: 10px;

    line-height: 1.45;
}


@media(max-width:767px) {

    .matrimony-search-card {

        max-width: 100%;

        border-radius: 15px;

        padding: 16px 10px 11px;
    }


    .matrimony-search-title {

        font-size: 16px;
    }


    .matrimony-search-link {

        font-size: 13px;

        min-height: 42px;
    }

}

/* ================================
   BANNER CONTENT CSS
   ================================ */

.register-banner-content {
    position: relative;
    z-index: 5;
    width: 100%;
    max-width: 760px;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Second Chance at */
.register-banner-content .banner-subtitle {
    display: block;
    margin: 0 0 4px;
    font-size: 21px;
    line-height: 1.3;
    font-weight: 500;
    color: #111;
}

/* Main Heading */
.register-banner-content h1 {
    margin: 0;
    padding: 0;

    font-size: 58px;
    line-height: 1.08;
    font-weight: 700;

    color: #fff;
    text-shadow: 0 3px 12px rgba(0, 0, 0, .25);
}

/* Pink line */
.register-banner-content h1::after {
    content: "";
    display: block;

    width: 92px;
    height: 5px;

    margin-top: 22px;

    background: #e54663;
    border-radius: 10px;
}

/* Description */
.register-banner-content h2 {
    max-width: 760px;

    margin: 22px 0 10px;
    padding: 0;

    font-size: 21px;
    line-height: 1.55;
    font-weight: 400;

    color: #111;
}

/* ================================
   FEATURES
   ================================ */
/* =========================================
   BANNER FEATURES - SAME AS REFERENCE IMAGE
   ========================================= */

.register-banner-content .banner-features {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    width: 100%;
    max-width: 430px;
    column-gap: 18px;
    row-gap: 0;
    margin: 20px 0 28px;
    padding: 0;

    align-items: start;
}


/* EACH FEATURE */
.register-banner-content .banner-feature {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;

    gap: 7px;

    margin: 0;
    padding: 0;

    text-align: center;

    font-size: 15px;
    line-height: 1.25;

    color: #111;
}


/* =========================================
   CIRCULAR ICON
   ========================================= */

.register-banner-content .banner-feature i {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 48px;
    height: 48px;
    min-width: 56px;
    min-height: 56px;

    margin: 0 0 3px;
    padding: 0;

    border: 1.5px solid #b84a67;
    border-radius: 50%;

    font-size: 24px;
    line-height: 1;

    text-align: center;

    color: #8f173c;
    background: transparent;

    box-sizing: border-box;
}


/* =========================================
   FEATURE TEXT
   ========================================= */

.register-banner-content .banner-feature span,
.register-banner-content .banner-feature .feature-text {
    display: block;

    width: 100%;

    text-align: center;

    color: #111;

    font-size: 10px;
    line-height: 1.3;
}


/* STRONG TEXT */
.register-banner-content .banner-feature strong {
    display: block;

    margin: 0 0 2px;

    font-weight: 700;
    font-size: 15px;

    line-height: 1.2;

    text-align: center;
}



/* =========================================
   DESKTOP
   ========================================= */

@media (min-width: 992px) {

    .register-banner-content .banner-features {
        grid-template-columns: repeat(4, 1fr);

        max-width: 371px;

        column-gap: 18px;

        margin-top: 9px;
        margin-bottom: 9px;
    }

    .register-banner-content .banner-feature i {
        width: 48px;
        height: 48px;

        min-width: 58px;
        min-height: 58px;

        font-size: 24px;
    }

    .register-banner-content .banner-feature {
        font-size: 15px;
    }
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 991px) and (min-width: 768px) {

    .register-banner-content .banner-features {
        grid-template-columns: repeat(4, 1fr);

        max-width: 100%;

        column-gap: 10px;

        margin: 25px 0;
    }

    .register-banner-content .banner-feature i {
        width: 52px;
        height: 52px;

        min-width: 52px;
        min-height: 52px;

        font-size: 24px;
    }

    .register-banner-content .banner-feature,
    .register-banner-content .banner-feature strong {
        font-size: 14px;
    }
}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 767px) {

    .register-banner-content .banner-features {
        grid-template-columns: repeat(2, 1fr);

        max-width: 360px;

        column-gap: 25px;
        row-gap: 22px;

        margin: 25px auto;
    }

    .register-banner-content .banner-feature i {
        width: 48px;
        height: 48px;

        min-width: 54px;
        min-height: 54px;

        font-size: 24px;
    }

    .register-banner-content .banner-feature,
    .register-banner-content .banner-feature strong {
        font-size: 14px;
    }
}


/* =========================================
   VERY SMALL MOBILE
   ========================================= */

@media (max-width: 400px) {

    .register-banner-content .banner-features {
        column-gap: 12px;
    }

    .register-banner-content .banner-feature i {
        width: 48px;
        height: 48px;

        min-width: 50px;
        min-height: 50px;

        font-size: 23px;
    }

    .register-banner-content .banner-feature,
    .register-banner-content .banner-feature strong {
        font-size: 13px;
    }
}

.register-banner-content .join-now-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 290px;
    height: 54px;

    margin-top: 10px;
    padding: 0 25px;

    border-radius: 30px;

    background: #e54663;
    color: #fff !important;

    font-size: 18px;
    font-weight: 600;
    line-height: 1;

    text-decoration: none !important;

    box-sizing: border-box;

    transition: all .25s ease;
}

.register-banner-content .join-now-btn:hover {
    color: #fff !important;

    transform: translateY(-2px);

    box-shadow: 0 8px 20px rgba(229, 70, 99, .25);
}

/* Arrow inside button */
.register-banner-content .join-now-btn i {
    margin-left: 10px;
    font-size: 18px;
}

/* ================================
   TRUST TEXT
   ================================ */

.register-banner-content .trust-text {
    display: flex;
    align-items: center;

    gap: 8px;

    margin-top: 12px;

    font-size: 10px;
    line-height: 1.4;

    color: #111;
}

.register-banner-content .trust-text i {
    font-size: 10px;
    color: #111;
    
}


/* ================================
   DESKTOP ALIGNMENT
   ================================ */

@media (min-width: 1200px) {

    .register-banner-content {
        max-width: 780px;
        margin-left: 0;
    }

    .register-banner-content h1 {
        font-size: 41px;
    }

    .register-banner-content h2 {
        font-size: 15px;
        max-width: 760px;
    }
}


/* ================================
   LAPTOP
   ================================ */

@media (max-width: 1199px) {

    .register-banner-content {
        max-width: 650px;
    }

    .register-banner-content h1 {
        font-size: 48px;
    }

    .register-banner-content h2 {
        font-size: 19px;
        max-width: 650px;
    }

    .register-banner-content .banner-features {
        column-gap: 25px;
    }
}


/* ================================
   TABLET
   ================================ */

@media (max-width: 991px) {

    .register-banner-content {
        max-width: 560px;
    }

    .register-banner-content h1 {
        font-size: 42px;
    }

    .register-banner-content .banner-subtitle {
        font-size: 18px;
    }

    .register-banner-content h2 {
        font-size: 18px;
    }

    .register-banner-content .banner-feature {
        font-size: 16px;
    }

    .register-banner-content .banner-features {
        grid-template-columns: 1fr 1fr;
        column-gap: 20px;
    }
}


/* ================================
   MOBILE
   ================================ */

@media (max-width: 767px) {

    .register-banner-content {
        width: 100%;
        max-width: 100%;

        padding: 10px 5px;

        text-align: center;
    }

    .register-banner-content .banner-subtitle {
        font-size: 17px;
        line-height: 1.4;
    }

    .register-banner-content h1 {
        font-size: 34px;
        line-height: 1.15;
    }

    .register-banner-content h1::after {
        width: 70px;
        height: 4px;

        margin: 15px auto 0;
    }

    .register-banner-content h2 {
        max-width: 100%;

        margin: 17px auto 12px;

        font-size: 16px;
        line-height: 1.5;
    }

    .register-banner-content .banner-features {
        display: grid;

        grid-template-columns: 1fr 1fr;

        width: 100%;

        column-gap: 8px;
        row-gap: 8px;

        margin: 12px auto;
    }

    .register-banner-content .banner-feature {
        justify-content: center;

        font-size: 14px;
    }

    .register-banner-content .banner-feature i {
        font-size: 16px;
    }

    .register-banner-content .join-now-btn {
        min-width: 240px;
        width: auto;

        height: 48px;

        margin-top: 8px;

        font-size: 16px;
    }

    .register-banner-content .trust-text {
        justify-content: center;

        margin-top: 10px;

        font-size: 14px;
    }
}


/* ================================
   SMALL MOBILE
   ================================ */

@media (max-width: 480px) {

    .register-banner-content h1 {
        font-size: 29px;
    }

    .register-banner-content .banner-subtitle {
        font-size: 15px;
    }

    .register-banner-content h2 {
        font-size: 15px;
    }

    .register-banner-content .banner-features {
        grid-template-columns: 1fr;
        row-gap: 5px;
    }

    .register-banner-content .banner-feature {
        font-size: 14px;
    }

    .register-banner-content .join-now-btn {
        width: 100%;
        max-width: 280px;
    }

    .register-banner-content .trust-text {
        font-size: 13px;
    }
}

.matrimony-register-title strong {
    display: block;

    font-size: 20px;

    line-height: 1.25;
}


.matrimony-register-title span {
    display: block;

    margin-top: 3px;

    font-size: 13px;

    line-height: 1.3;

    opacity: .95;
}

/* =========================================
   BANNER + REGISTER FORM FIX
   ========================================= */

.hom-head {
    position: relative;
    width: 100%;
    min-height: 620px;
    height: 620px;

    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;

    overflow: visible;
}



/* LEFT CONTENT */
.register-banner-content {
    flex: 1 1 auto;
    max-width: 760px;
    margin: 0;
    padding: 0;
}


/* RIGHT REGISTER BOX */
.matrimony-register-box {
    position: relative;
    z-index: 10;

    flex: 0 0 390px;
    width: 390px;
    max-width: 390px;

    margin: 0;

    box-sizing: border-box;
}


/* FORM */
#register-form {
    width: 100%;
    max-width: 390px;

    margin: 0;
    padding: 22px 30px;

    box-sizing: border-box;

    background: rgba(255,255,255,.97);
    border-radius: 18px;

    box-shadow: 0 15px 45px rgba(0,0,0,.25);
}


/* FORM ITEMS */
#register-form .form-list li {
    margin-bottom: 10px;
}

#register-form .form-list li > label {
    margin-bottom: 5px;
}


/* INPUTS */
#register-form input[type="email"],
#register-form input[type="text"],
#register-form input[type="password"],
#register-form select {
    height: 44px;
}


/* =========================================
   LAPTOP
   ========================================= */

@media (max-width: 1199px) {

    .hom-head {
        min-height: 600px;
        height: 600px;
    }

    .hom-ban2 {
        min-height: 600px;
        gap: 30px;
        padding: 25px 20px;
    }

    .register-banner-content {
        max-width: 600px;
    }

    .matrimony-register-box {
        flex: 0 0 360px;
        width: 360px;
        max-width: 360px;
    }

    #register-form {
        max-width: 360px;
        padding: 20px 25px;
    }
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 991px) {

    .hom-head {
        min-height: 580px;
        height: auto;
    }

    .hom-ban2 {
        min-height: 580px;
        gap: 20px;
    }

    .register-banner-content {
        max-width: 540px;
    }

    .matrimony-register-box {
        flex: 0 0 340px;
        width: 340px;
        max-width: 340px;
    }

    #register-form {
        max-width: 340px;
        padding: 20px;
    }
}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 767px) {

    .hom-head {
        height: auto;
        min-height: auto;

        padding: 0;

        overflow: visible;
    }

    .hom-ban2 {
        height: auto;
        min-height: auto;

        flex-direction: column;
        align-items: stretch;

        gap: 25px;

        padding: 40px 15px;
    }

    .register-banner-content {
        width: 100%;
        max-width: 100%;

        text-align: center;
    }

    .matrimony-register-box {
        width: 100%;
        max-width: 430px;

        flex: none;

        margin: 0 auto;
    }

    #register-form {
        width: 100%;
        max-width: 430px;

        padding: 20px;
        margin: 0 auto;

        border-radius: 16px;
    }
}


/* SMALL MOBILE */

@media (max-width: 480px) {

    .hom-ban2 {
        padding: 30px 12px;
    }

    #register-form {
        padding: 18px;
    }
}

/* =========================================================
   FINAL BANNER FIX - DO NOT REMOVE EXISTING CODE
   This block only overrides previous CSS.
   ========================================================= */

.hom-head {
    position: relative !important;
    width: 100% !important;
    height: 620px !important;
    min-height: 620px !important;
    padding: 0 !important;
    overflow: visible !important;
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}

.hom-head > .hom-ban2,
.hom-head .hom-ban2 {
    width: 100% !important;
    max-width: 1402px  !important;
    height: 620px !important;
    min-height: 620px !important;
    margin: 0 auto !important;
    padding: 30px 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 50px !important;
    box-sizing: border-box !important;
}

.hom-head .register-banner-content {
    position: relative !important;
    z-index: 5 !important;
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: 550px !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.hom-head .matrimony-register-box {
    position: relative !important;
    z-index: 20 !important;
    flex: 0 0 390px !important;
    width: 390px !important;
    max-width: 390px !important;
    margin: 0 !important;
    align-self: center !important;
    box-sizing: border-box !important;
}

.hom-head #register-form {
    position: relative !important;
    z-index: 21 !important;
    width: 390px !important;
    max-width: 390px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 22px 30px !important;
    box-sizing: border-box !important;
}

/* Keep all existing form controls and dynamic Laravel code unchanged */
.hom-head #register-form .form-list {
    margin: 0 !important;
    padding: 0 !important;
}

.hom-head #register-form .form-list li {
    margin-bottom: 10px;
}

.hom-head #register-form input[type="email"],
.hom-head #register-form input[type="text"],
.hom-head #register-form input[type="password"],
.hom-head #register-form select {
    height: 44px;
    box-sizing: border-box;
}

/* =========================================================
   DESKTOP / LARGE LAPTOP
   ========================================================= */

@media (min-width: 1200px) {
    .hom-head {
        height: 620px !important;
        min-height: 620px !important;
    }

    .hom-head > .hom-ban2,
    .hom-head .hom-ban2 {
        height: 620px !important;
        min-height: 620px !important;
    }

    .hom-head .matrimony-register-box {
        flex-basis: 390px !important;
        width: 390px !important;
        max-width: 390px !important;
    }

    .hom-head #register-form {
        width: 390px !important;
        max-width: 390px !important;
    }
}

/* =========================================================
   LAPTOP
   ========================================================= */

@media (min-width: 992px) and (max-width: 1199px) {
    .hom-head {
        height: 600px !important;
        min-height: 600px !important;
    }

    .hom-head > .hom-ban2,
    .hom-head .hom-ban2 {
        height: 600px !important;
        min-height: 600px !important;
        gap: 30px !important;
        padding: 25px 20px !important;
    }

    .hom-head .register-banner-content {
        max-width: 600px !important;
    }

    .hom-head .matrimony-register-box {
        flex: 0 0 360px !important;
        width: 360px !important;
        max-width: 360px !important;
    }

    .hom-head #register-form {
        width: 360px !important;
        max-width: 360px !important;
        padding: 20px 25px !important;
    }
}

/* =========================================================
   TABLET
   ========================================================= */

@media (min-width: 768px) and (max-width: 991px) {
    .hom-head {
        height: 580px !important;
        min-height: 580px !important;
    }

    .hom-head > .hom-ban2,
    .hom-head .hom-ban2 {
        height: 580px !important;
        min-height: 580px !important;
        gap: 20px !important;
        padding: 25px 15px !important;
    }

    .hom-head .register-banner-content {
        max-width: 540px !important;
    }

    .hom-head .matrimony-register-box {
        flex: 0 0 340px !important;
        width: 340px !important;
        max-width: 340px !important;
    }

    .hom-head #register-form {
        width: 340px !important;
        max-width: 340px !important;
        padding: 20px !important;
    }
    

    .mobilepara1 {
        padding: 0 15px;
        margin-bottom: 15px;
    }

}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {
    .hom-head {
        height: auto !important;
        min-height: auto !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    .hom-head > .hom-ban2,
    .hom-head .hom-ban2 {
        width: 100% !important;
        height: auto !important;
        min-height: auto !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 25px !important;
        padding: 40px 15px !important;
    }

    .hom-head .register-banner-content {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        text-align: center !important;
        padding: 10px 5px !important;
    }

    .hom-head .matrimony-register-box {
        width: 100% !important;
        max-width: 430px !important;
        flex: none !important;
        margin: 0 auto !important;
        align-self: center !important;
    }

    .hom-head #register-form {
        width: 100% !important;
        max-width: 430px !important;
        margin: 0 auto !important;
        padding: 20px !important;
        border-radius: 16px !important;
    }
}

@media (max-width: 480px) {
    .hom-head > .hom-ban2,
    .hom-head .hom-ban2 {
        padding: 30px 12px !important;
    }

    .hom-head #register-form {
        padding: 18px !important;
    }
}



/* =========================================================
   FINAL SAME-UI OVERRIDE
   ---------------------------------------------------------
   Keeps ALL existing HTML, Laravel/PHP dynamic code and
   existing colours. This block only controls the layout so
   the banner matches the supplied reference UI.
   ========================================================= */

/* DESKTOP BANNER */
.hom-head {
    position: relative !important;
    width: 100% !important;
    height: 620px !important;
    min-height: 620px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}



/* RIGHT REGISTER CARD */
.hom-head .matrimony-register-box {
    position: relative !important;
    z-index: 20 !important;
    flex: 0 0 335px !important;
    width: 335px !important;
    max-width: 335px !important;
    min-width: 335px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-self: center !important;
    box-sizing: border-box !important;
}

.hom-head #register-form {
    position: relative !important;
    z-index: 21 !important;
    display: block !important;
    width: 335px !important;
    max-width: 335px !important;
    min-width: 335px !important;
    margin: 0 !important;
    padding: 18px 22px !important;
    box-sizing: border-box !important;
    border-radius: 18px !important;
    background: rgba(255,255,255,.97) !important;
    box-shadow: 0 15px 45px rgba(0,0,0,.25) !important;
}

/* FORM TITLE */
.hom-head #register-form .matrimony-register-title {
    margin: 0 0 12px !important;
    padding: 0 !important;
}

.hom-head #register-form .matrimony-register-title strong {
    display: block !important;
    margin: 0 !important;
    font-size: 19px !important;
    line-height: 1.25 !important;
}

.hom-head #register-form .matrimony-register-title span {
    display: block !important;
    margin-top: 3px !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
}

/* FORM LIST */
.hom-head #register-form .form-list {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.hom-head #register-form .form-list li {
    width: 100% !important;
    margin: 0 0 9px !important;
    padding: 0 !important;
    list-style: none !important;
    box-sizing: border-box !important;
}

.hom-head #register-form .form-list li > label {
    display: block !important;
    margin: 0 0 4px !important;
    padding: 0 !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
}

/* INPUTS / SELECTS */
.hom-head #register-form input[type="email"],
.hom-head #register-form input[type="text"],
.hom-head #register-form input[type="password"],
.hom-head #register-form select {
    width: 100% !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 0 11px !important;
    box-sizing: border-box !important;
    border-radius: 7px !important;
}

/* PHONE ROW */
.hom-head #register-form .phone-flex {
    display: flex !important;
    width: 100% !important;
    gap: 7px !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.hom-head #register-form .phone-flex select {
    flex: 0 0 72px !important;
    width: 72px !important;
    max-width: 72px !important;
}

.hom-head #register-form .phone-flex input {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
}

/* TERMS */
.hom-head #register-form .agree-box {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    margin: 4px 0 12px !important;
    padding: 0 !important;
}

.hom-head #register-form .agree-box input {
    flex: 0 0 16px !important;
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
}

.hom-head #register-form .agree-box label {
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
}


/* ALERTS */
.hom-head #register-form .alert {
    margin: 0 0 10px !important;
    padding: 8px 10px !important;
    font-size: 12px !important;
}

/* =========================================================
   1200px+ : reference desktop proportions
   ========================================================= */
@media (min-width: 1200px) {
    .hom-head .hom-ban2 {
        max-width: 1350px !important;
        height: 620px !important;
        min-height: 620px !important;
        padding: 15px 0 !important;
        gap: 35px !important;
    }

    .hom-head .register-banner-content {
        max-width: 550px !important;
    }

    .hom-head .matrimony-register-box,
    .hom-head #register-form {
        width: 335px !important;
        max-width: 335px !important;
        min-width: 335px !important;
    }
}

/* =========================================================
   992px - 1199px : laptop
   ========================================================= */
@media (min-width: 992px) and (max-width: 1199px) {
    .hom-head {
        height: 600px !important;
        min-height: 600px !important;
    }

    .hom-head .hom-ban2 {
        height: 600px !important;
        min-height: 600px !important;
        padding: 20px 15px !important;
        gap: 25px !important;
    }

    .hom-head .register-banner-content {
        max-width: 600px !important;
    }

    .hom-head .matrimony-register-box,
    .hom-head #register-form {
        width: 330px !important;
        max-width: 330px !important;
        min-width: 330px !important;
    }

    .hom-head #register-form {
        padding: 18px 20px !important;
    }
}

/* =========================================================
   768px - 991px : tablet
   ========================================================= */
@media (min-width: 768px) and (max-width: 991px) {
    .hom-head {
        height: 580px !important;
        min-height: 580px !important;
    }

    .hom-head .hom-ban2 {
        height: 580px !important;
        min-height: 580px !important;
        padding: 20px 15px !important;
        gap: 18px !important;
    }

    .hom-head .register-banner-content {
        max-width: 500px !important;
    }

    .hom-head .matrimony-register-box,
    .hom-head #register-form {
        width: 310px !important;
        max-width: 310px !important;
        min-width: 310px !important;
    }

    .hom-head #register-form {
        padding: 17px !important;
    }
}

/* =========================================================
   MOBILE : stack exactly, no overlap / no overflow
   ========================================================= */
@media (max-width: 767px) {
    .hom-head {
        width: 100% !important;
        height: auto !important;
        min-height: auto !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    .hom-head .hom-ban2 {
        width: 100% !important;
        height: auto !important;
        min-height: auto !important;
        margin: 0 auto !important;
        padding: 35px 15px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 25px !important;
    }

    .hom-head .register-banner-content {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: center !important;
    }

    .hom-head .matrimony-register-box {
        width: 100% !important;
        max-width: 430px !important;
        min-width: 0 !important;
        flex: none !important;
        margin: 0 auto !important;
        align-self: center !important;
    }

    .hom-head #register-form {
        width: 100% !important;
        max-width: 430px !important;
        min-width: 0 !important;
        margin: 0 auto !important;
        padding: 20px !important;
        border-radius: 16px !important;
    }
}

/* =========================================================
   SMALL MOBILE
   ========================================================= */
@media (max-width: 480px) {
    .hom-head .hom-ban2 {
        padding: 30px 12px !important;
        gap: 22px !important;
    }

    .hom-head #register-form {
        padding: 18px !important;
    }
}



/* =========================================================
   FINAL ALIGNMENT FIX
   ---------------------------------------------------------
   Added only as an override. Existing HTML, Laravel/PHP
   dynamic code, routes, loops and colours are preserved.
   ========================================================= */

.hom-head .hom-ban2 {
    width: 100% !important;
    max-width: 1350px !important;
    height: 620px !important;
    min-height: 620px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    column-gap: 35px !important;
    box-sizing: border-box !important;
}

/* JOIN BUTTON */
.hom-head .register-banner-content .join-now-btn {
    font-size: 14px;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 227px !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 40px !important;
    margin: 14px 0 0 !important;
    padding: 0 24px !important;
    box-sizing: border-box !important;
}


/* =========================================================
   REGISTER CARD
   ========================================================= */

.hom-head .matrimony-register-box {
    position: relative !important;
    z-index: 50 !important;
    flex: 0 0 335px !important;
    width: 335px !important;
    max-width: 335px !important;
    min-width: 335px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-self: center !important;
    box-sizing: border-box !important;
}

.hom-head #register-form {
    position: relative !important;
    z-index: 51 !important;
    display: block !important;
    width: 335px !important;
    max-width: 335px !important;
    min-width: 335px !important;
    margin: 0 !important;
    padding: 18px 22px 20px !important;
    box-sizing: border-box !important;
    border-radius: 18px !important;
    background: rgba(255,255,255,.97) !important;
    box-shadow: 0 15px 45px rgba(0,0,0,.25) !important;
}

/* FORM HEADER WITH CIRCLE ICON */
.hom-head #register-form .matrimony-register-title {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    width: 100% !important;
    min-height: 52px !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.hom-head #register-form .matrimony-register-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 52px !important;
    width: 52px !important;
    height: 52px !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    color: #8e1038 !important;
    border: 1px solid #eeeeee !important;
    box-shadow: 0 2px 7px rgba(0,0,0,.08) !important;
    box-sizing: border-box !important;
}

.hom-head #register-form .matrimony-register-icon i {
    margin: 0 !important;
    font-size: 25px !important;
    line-height: 1 !important;
}

.hom-head #register-form .matrimony-register-title-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.hom-head #register-form .matrimony-register-title strong {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #292b32 !important;
    font-size: 19px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

.hom-head #register-form .matrimony-register-title span {
    display: block !important;
    margin: 4px 0 0 !important;
    padding: 0 !important;
    color: #4d4d55 !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
}

/* FORM FIELDS */
.hom-head #register-form .form-list {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.hom-head #register-form .form-list > li {
    width: 100% !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.hom-head #register-form .form-list li > label {
    display: block !important;
    width: 100% !important;
    margin: 0 0 5px !important;
    padding: 0 !important;
    color: #333333 !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
}

.hom-head #register-form input[type="email"],
.hom-head #register-form input[type="text"],
.hom-head #register-form input[type="password"],
.hom-head #register-form select {
    display: block !important;
    width: 100% !important;
    height: 43px !important;
    min-height: 43px !important;
    margin: 0 !important;
    padding: 0 11px !important;
    border: 1px solid #dddddd !important;
    border-radius: 7px !important;
    box-sizing: border-box !important;
    font-size: 13px !important;
    line-height: 43px !important;
}

/* PHONE: country select + phone input aligned */
.hom-head #register-form .phone-flex {
    display: flex !important;
    align-items: stretch !important;
    width: 100% !important;
    gap: 7px !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.hom-head #register-form .phone-flex select {
    flex: 0 0 70px !important;
    width: 70px !important;
    max-width: 70px !important;
}

.hom-head #register-form .phone-flex input {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
}

/* TERMS */
.hom-head #register-form .agree-box {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    width: 100% !important;
    margin: 3px 0 12px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.hom-head #register-form .agree-box input {
    flex: 0 0 17px !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
}

.hom-head #register-form .agree-box label {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
}

/* =========================================================
   LAPTOP
   ========================================================= */
@media (min-width: 992px) and (max-width: 1199px) {
    .hom-head {
        height: 600px !important;
        min-height: 600px !important;
    }

    .hom-head .hom-ban2 {
        height: 600px !important;
        min-height: 600px !important;
        padding: 0 15px !important;
        column-gap: 24px !important;
    }

    .hom-head .register-banner-content {
        max-width: 590px !important;
    }

    .hom-head .register-banner-content h1 {
        font-size: 48px !important;
    }

    .hom-head .register-banner-content h2 {
        font-size: 19px !important;
    }

    .hom-head .register-banner-content .banner-feature {
        font-size: 16px !important;
    }

    .hom-head .matrimony-register-box,
    .hom-head #register-form {
        width: 330px !important;
        max-width: 330px !important;
        min-width: 330px !important;
    }
}

/* =========================================================
   TABLET
   ========================================================= */
@media (min-width: 768px) and (max-width: 991px) {
    .hom-head {
        height: 580px !important;
        min-height: 580px !important;
    }

    .hom-head .hom-ban2 {
        height: 580px !important;
        min-height: 580px !important;
        padding: 0 12px !important;
        column-gap: 16px !important;
    }

    .hom-head .register-banner-content {
        max-width: 470px !important;
    }

    .hom-head .register-banner-content h1 {
        font-size: 40px !important;
    }

    .hom-head .register-banner-content h2 {
        font-size: 17px !important;
    }

    .hom-head .register-banner-content .banner-features {
        column-gap: 12px !important;
    }

    .hom-head .register-banner-content .banner-feature {
        font-size: 14px !important;
    }

    .hom-head .matrimony-register-box,
    .hom-head #register-form {
        width: 305px !important;
        max-width: 305px !important;
        min-width: 305px !important;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width: 767px) {
    .hom-head {
        width: 100% !important;
        height: auto !important;
        min-height: auto !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    .hom-head .hom-ban2 {
        width: 100% !important;
        height: auto !important;
        min-height: auto !important;
        margin: 0 auto !important;
        padding: 35px 15px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        row-gap: 25px !important;
    }

    .hom-head .register-banner-content {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: center !important;
    }

    .hom-head .register-banner-content .banner-features {
        grid-template-columns: 1fr 1fr !important;
        max-width: 430px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        column-gap: 8px !important;
    }

    .hom-head .register-banner-content .banner-feature {
        justify-content: center !important;
        white-space: normal !important;
        font-size: 14px !important;
    }

    .hom-head .register-banner-content .join-now-btn {
        width: 100% !important;
        max-width: 365px !important;
        height: 54px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .hom-head .matrimony-register-box {
        width: 100% !important;
        max-width: 430px !important;
        min-width: 0 !important;
        flex: none !important;
        margin: 0 auto !important;
        align-self: center !important;
    }

    .hom-head #register-form {
        width: 100% !important;
        max-width: 430px !important;
        min-width: 0 !important;
        margin: 0 auto !important;
        padding: 20px !important;
        border-radius: 18px !important;
    }

    .hom-head #register-form .matrimony-register-icon {
        flex-basis: 50px !important;
        width: 50px !important;
        height: 50px !important;
    }
}

@media (max-width: 480px) {
    .hom-head .hom-ban2 {
        padding: 30px 12px !important;
    }

    .hom-head #register-form {
        padding: 18px !important;
    }

    .hom-head #register-form .matrimony-register-title strong {
        font-size: 18px !important;
    }
}

/* =====================================
   HOME ACCESS TABS
===================================== */

.home-acces {
    width: 100%;
}


/* TABS */

.home-acces .nav-tabs {
    display: flex;
    align-items: center;
    justify-content: center;

    flex-wrap: wrap;

    width: 100%;

    margin: 0;
    padding: 0;

    border: 0;
    gap: 0;
}


/* TAB ITEM */

.home-acces .nav-tabs .nav-item {
    margin: 0;
    padding: 0;
}


/* TAB LINK */

.home-acces .nav-tabs .nav-link {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    min-height: 45px;

    margin: 0;
    padding: 10px 22px;

    border: 0 !important;
    border-radius: 0;

    background: transparent;

    color: #333;

    font-size: 15px;
    font-weight: 600;

    text-decoration: none;

    transition: all .25s ease;
}


/* ACTIVE TAB */

.home-acces .nav-tabs .nav-link.active {
    color: #e54663;

    background: transparent;
}


/* ACTIVE LINE */

.home-acces .nav-tabs .nav-link.active::after {
    content: "";

    position: absolute;

    left: 18px;
    right: 18px;
    bottom: 0;

    height: 3px;

    background: #e54663;

    border-radius: 5px 5px 0 0;
}


/* HOVER */

.home-acces .nav-tabs .nav-link:hover {
    color: #e54663;
}


/* =====================================
   TAB CONTENT
===================================== */

.home-acces .tab-content {
    width: 100%;

    margin-top: 15px;

    padding: 20px;

    background: #fff;

    box-sizing: border-box;
}


/* TAB PANEL */

.home-acces .tab-pane {
    width: 100%;
}


/* LINKS */

.home-acces .tab-pane a {
    display: inline-block;

    margin: 0 20px 12px 0;

    color: #333;

    font-size: 14px;
    line-height: 1.5;

    text-decoration: none;

    transition: color .2s ease;
}


.home-acces .tab-pane a:hover {
    color: #e54663;
}


/* =====================================
   MOBILE
===================================== */

@media (max-width: 767px) {

    .home-acces .nav-tabs {
        display: grid;

        grid-template-columns: repeat(3, 1fr);

        gap: 8px;

        border: 0;
    }


    .home-acces .nav-tabs .nav-item {
        width: 100%;
    }


    .home-acces .nav-tabs .nav-link {
        width: 100%;

        min-height: 42px;

        padding: 8px 5px;

        border: 1px solid #eee !important;
        border-radius: 7px;

        background: #fff;

        font-size: 13px;

        box-sizing: border-box;
    }


    .home-acces .nav-tabs .nav-link.active {
        color: #fff;

        background: #e54663;

        border-color: #e54663 !important;
    }


    .home-acces .nav-tabs .nav-link.active::after {
        display: none;
    }


    .home-acces .tab-content {
        margin-top: 15px;

        padding: 15px 10px;
    }


    .home-acces .tab-pane a {
        margin-right: 12px;
        margin-bottom: 10px;

        font-size: 13px;
    }

}
/* =========================================================
   PROFILE CARD
========================================================= */

.all-pro-box {
    position: relative;

    display: grid;

    grid-template-columns: 390px 1fr;

    width: 100%;

    min-height: 350px;

    background: #fff;

    border-radius: 12px;

    overflow: hidden;

    box-shadow: 0 8px 30px rgba(0,0,0,0.08);

    border: 1px solid #eee;

    transition: all .3s ease;
}


.all-pro-box:hover {
    transform: translateY(-3px);

    box-shadow: 0 12px 35px rgba(0,0,0,0.12);
}


/* =========================================================
   IMAGE
========================================================= */

.all-pro-box .pro-img {
    position: relative;

    width: 100%;
    height: 100%;

    min-height: 350px;

    overflow: hidden;

    background: #f5f5f5;
}


.all-pro-box .pro-img > a {
    display: block;

    width: 100%;
    height: 100%;
}


.all-pro-box .pro-img img {
    display: block;

    width: 100%;
    height: 100%;

    min-height: 350px;

    object-fit: cover;

    object-position: center;

    transition: transform .4s ease;
}


.all-pro-box:hover .pro-img img {
    transform: scale(1.03);
}


/* =========================================================
   GUEST BLUR
========================================================= */

.all-pro-box .guest-blur img {
    filter: blur(12px);

    transform: scale(1.05);
}


.all-pro-box:hover .guest-blur img {
    transform: scale(1.08);
}


/* =========================================================
   ONLINE STATUS
========================================================= */

.pro-avl-status {
    position: absolute;

    left: 15px;
    bottom: 15px;

    padding: 6px 12px;

    background: rgba(255,255,255,.95);

    border-radius: 20px;

    box-shadow: 0 3px 10px rgba(0,0,0,.12);
}


.pro-avl-status h5 {
    margin: 0;

    color: #333;

    font-size: 12px;

    font-weight: 600;
}


.pro-avl-status h5::before {
    content: "";

    display: inline-block;

    width: 8px;
    height: 8px;

    margin-right: 6px;

    border-radius: 50%;

    background: #35b85a;
}


/* =========================================================
   GALLERY NAV
========================================================= */

.nav-gallery {
    position: absolute;

    right: 15px;
    bottom: 15px;

    display: flex;

    align-items: center;

    gap: 7px;

    padding: 6px 10px;

    color: #333;

    background: rgba(255,255,255,.95);

    border-radius: 20px;

    font-size: 12px;
}


.img-gall-nav {
    cursor: pointer;

    font-size: 11px;
}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.profile-id-badge {
    position: relative;

    padding: 20px 25px 18px;

    background: #fff;
}


.profile-title h3 {
    margin: 0;

    color: #e54663;

    font-size: 21px;

    line-height: 1.35;

    font-weight: 500;
}


.profile-title h3 b {
    font-weight: 700;
}


.profile-id-badge hr {
    margin: 16px 0 18px;

    border: 0;

    border-top: 1px solid #e5e5e5;
}


/* =========================================================
   DETAILS GRID
========================================================= */

.profile-details-grid {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 0 30px;
}


.profile-detail-column {
    width: 100%;
}


.profile-detail-item {
    display: flex;

    align-items: center;

    min-height: 48px;

    padding: 6px 0;

    gap: 10px;
}


.profile-detail-item .detail-icon {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 28px;
    min-width: 28px;

    height: 28px;

    color: #e54663;

    font-size: 14px;
}


.profile-detail-item .detail-text {
    display: block;

    color: #222;

    font-size: 15px;

    line-height: 1.4;
}


.profile-detail-item .detail-text strong {
    font-weight: 600;
}


/* =========================================================
   BUTTONS
========================================================= */

.profile-id-badge .links {
    display: flex;

    align-items: center;

    gap: 10px;

    margin-top: 15px;
}


.profile-id-badge .links a {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 40px;

    padding: 8px 18px;

    border-radius: 22px;

    font-size: 14px;

    font-weight: 600;

    text-decoration: none;

    transition: all .25s ease;
}


/* SEND INTEREST */

.profile-id-badge .links .send_intrest_button_profiles,
.profile-id-badge .links .login-required {
    color: #fff;

    background: #e54663;
}


.profile-id-badge .links .send_intrest_button_profiles:hover,
.profile-id-badge .links .login-required:hover {
    background: #d63655;

    color: #fff;
}


/* MORE DETAILS */

.profile-id-badge .links .more-details-profile {
    color: #333;

    background: #f0e9eb;
}


.profile-id-badge .links .more-details-profile:hover {
    color: #fff;

    background: #e54663;
}


/* ICON */

.profile-id-badge .links a i {
    margin-right: 7px;
}


/* INTEREST SENT */

.profile-id-badge .links .interest-already {
    color: #555;

    background: #eee;
}


/* =========================================================
   SHORTLIST
========================================================= */

.all-pro-box .enq-sav {
    position: absolute;

    top: 15px;
    right: 15px;

    z-index: 10;

    display: flex;

    align-items: center;
    justify-content: center;

    width: 40px;
    height: 40px;

    background: rgba(255,255,255,.95);

    border-radius: 50%;

    box-shadow: 0 3px 12px rgba(0,0,0,.12);

    cursor: pointer;

    font-size: 18px;
}


.all-pro-box .enq-sav:hover {
    color: #e54663;

    transform: scale(1.05);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .all-pro-box {
        grid-template-columns: 300px 1fr;

        min-height: 320px;
    }

    .all-pro-box .pro-img,
    .all-pro-box .pro-img img {
        min-height: 320px;
    }

    .profile-id-badge {
        padding: 18px;
    }

    .profile-title h3 {
        font-size: 18px;
    }

    .profile-details-grid {
        gap: 0 15px;
    }

    .profile-detail-item .detail-text {
        font-size: 14px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .all-pro-box {
        display: flex;

        flex-direction: column;

        min-height: auto;

        border-radius: 12px;
    }


    .all-pro-box .pro-img {
        width: 100%;

        height: 320px;

        min-height: 320px;
    }


    .all-pro-box .pro-img img {
        width: 100%;

        height: 320px;

        min-height: 320px;
    }


    .profile-id-badge {
        width: 100%;

        padding: 18px 15px;
    }


    .profile-title h3 {
        font-size: 17px;
    }


    .profile-details-grid {
        grid-template-columns: 1fr;

        gap: 0;
    }


    .profile-detail-item {
        min-height: 42px;
    }


    .profile-id-badge .links {
        flex-direction: column;

        width: 100%;
    }


    .profile-id-badge .links a {
        width: 100%;
    }


    .all-pro-box .enq-sav {
        top: 12px;
        right: 12px;
    }

}