/* =========================
   COMMON PAGE HEADER
========================= */

.page-header{

    position:relative;

    min-height:55vh;

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

    background-size:cover;
    background-repeat:no-repeat;

    background-position:center top;
}

.page-header-overlay{

    position:absolute;
    inset:0;

     background:
    linear-gradient(
        90deg,
        rgba(0,0,0,.85) 0%,
        rgba(0,0,0,.65) 45%,
        rgba(0,0,0,.45) 100%
    );
}

.page-header-content{

    position:relative;
    z-index:2;

    max-width:900px;

    text-align:center;

    padding:120px 25px 80px;
}

.page-tag{

    display:inline-block;

    color:#d9b38c;

    font-size:13px;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:15px;
}

.page-header-content h1{

    color:#fff;

    font-size:64px;

    line-height:1.15;

    margin-bottom:20px;

    font-family:'Playfair Display', serif;
}

.page-header-content p{

    color:#d6d6d6;

    font-size:20px;

    line-height:1.8;

    max-width:750px;

    margin:auto;
}

/* MOBILE */

@media(max-width:991px){

    .page-header{

        min-height:50vh;
    }

    .page-header-content{

        padding:110px 20px 60px;
    }

    .page-header-content h1{

        font-size:38px;
    }

    .page-header-content p{

        font-size:16px;
    }
}

/* =========================
   KOLKATA ESCORTS INTRO
========================= */

.kolkata-intro{

    background:#0a0a0a;

    padding:100px 25px;
}

.kolkata-intro-container{

    max-width:1300px;

    margin:auto;

    display:grid;

    grid-template-columns:60% 40%;

    gap:60px;

    align-items:center;
}

/* Content */

.kolkata-intro-content .section-tag{

    display:inline-block;

    color:#d9b38c;

    font-size:13px;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:15px;
}

.kolkata-intro-content h2{

    color:#fff;

    font-size:52px;

    line-height:1.2;

    margin-bottom:25px;

    font-family:'Playfair Display', serif;
}

.kolkata-intro-content p{

    color:#bdbdbd;

    font-size:17px;

    line-height:2;

    margin-bottom:20px;
}

/* Internal Link */

.kolkata-intro-content a{

    color:#d9b38c;

    text-decoration:none;

    transition:.3s ease;
}

.kolkata-intro-content a:hover{

    color:#fff;
}

/* Features */

.kolkata-features{

    list-style:none;

    padding:0;

    margin:30px 0 0;
}

.kolkata-features li{

    position:relative;

    padding-left:30px;

    margin-bottom:15px;

    color:#d6d6d6;

    line-height:1.8;
}

.kolkata-features li::before{

    content:"✓";

    position:absolute;

    left:0;
    top:0;

    color:#d9b38c;

    font-weight:700;
}

/* Image */

.kolkata-intro-image{

    overflow:hidden;

    border-radius:30px;

    border:1px solid rgba(255,255,255,.08);
}

.kolkata-intro-image img{

    width:100%;

    display:block;

    aspect-ratio:4/5;

    object-fit:cover;

    transition:.5s ease;
}

.kolkata-intro-image:hover img{

    transform:scale(1.05);
}

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

@media(max-width:1200px){

    .kolkata-intro-container{

        gap:40px;
    }

    .kolkata-intro-content h2{

        font-size:44px;
    }
}

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

@media(max-width:991px){

    .kolkata-intro{

        padding:70px 20px;
    }

    .kolkata-intro-container{

        grid-template-columns:1fr;

        gap:35px;
    }

    .kolkata-intro-image{

        order:1;
    }

    .kolkata-intro-content{

        order:2;
    }

    .kolkata-intro-content h2{

        font-size:34px;
    }

    .kolkata-intro-content p{

        font-size:16px;
    }

    .kolkata-features{

        margin-top:25px;
    }

    .kolkata-features li{

        font-size:15px;
    }
}
/* =========================
   FEATURED PROFILES
========================= */

.escort-profiles{

    background:#0a0a0a;

    padding:0 25px 100px;
}

/* Heading */

.escort-profiles .section-heading{

    max-width:900px;

    margin:0 auto 60px;

    text-align:center;
}

.escort-profiles .section-tag{

    display:inline-block;

    color:#d9b38c;

    font-size:13px;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:15px;
}

.escort-profiles h2{

    color:#fff;

    font-size:52px;

    line-height:1.2;

    margin-bottom:20px;

    font-family:'Playfair Display', serif;
}

.escort-profiles .section-description{

    max-width:850px;

    margin:0 auto;

    color:#bdbdbd;

    line-height:2;

    font-size:17px;
}

/* Grid */

.escort-profiles .gallery-grid{

    max-width:1300px;

    margin:60px auto 0;

    display:grid;

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

    gap:25px;
}

/* View All Button */

.view-all-wrap{

    text-align:center;

    margin-top:50px;
}

.view-all-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:240px;

    height:56px;

    border-radius:50px;

    text-decoration:none;

    color:#fff;

    font-size:15px;

    letter-spacing:.5px;

    background:
    linear-gradient(
        135deg,
        #7A1F3D,
        #B76E79
    );

    transition:.35s ease;
}

.view-all-btn:hover{

    transform:translateY(-3px);

    box-shadow:
    0 15px 35px rgba(122,31,61,.35);
}

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

@media(max-width:991px){

    .escort-profiles{

        padding:0 20px 80px;
    }

    .escort-profiles .section-heading{

        margin-bottom:40px;
    }

    .escort-profiles h2{

        font-size:34px;
    }

    .escort-profiles .section-description{

        font-size:16px;
    }

    .escort-profiles .gallery-grid{

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

        gap:15px;

        margin-top:40px;
    }

    .view-all-wrap{

        margin-top:35px;
    }

    .view-all-btn{

        width:100%;

        max-width:280px;
    }
}

/* FAQ Heading Fix */

.faq-section .section-heading{

    max-width:900px;

    margin:0 auto 60px;

    text-align:center !important;
}

.faq-section .section-tag{

    display:inline-block;

    color:#d9b38c !important;

    font-size:13px;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:15px;
}

.faq-section .section-heading h2{

    color:#fff !important;

    font-size:52px;

    line-height:1.2;

    margin-bottom:20px;

    text-align:center !important;

    font-family:'Playfair Display', serif;
}

.faq-section .section-description{

    max-width:850px;

    margin:0 auto;

    color:#bdbdbd !important;

    font-size:17px;

    line-height:2;

    text-align:center !important;
}

@media(max-width:991px){

    .faq-section .section-heading h2{

        font-size:34px;
    }

    .faq-section .section-description{

        font-size:16px;
    }
}

/* =========================
   ESCORT CTA
========================= */

.escort-cta{

    background:#0a0a0a;

    padding:0 25px 100px;
}

.escort-cta-box{

    max-width:1200px;

    margin:auto;

    text-align:center;

    padding:80px 50px;

    border-radius:30px;

    background:
    linear-gradient(
        135deg,
        rgba(122,31,61,.45),
        rgba(183,110,121,.10)
    );

    border:
    1px solid rgba(183,110,121,.25);
}

.escort-cta .section-tag{

    display:inline-block;

    color:#d9b38c;

    font-size:13px;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:15px;
}

.escort-cta h2{

    color:#fff;

    font-size:52px;

    line-height:1.2;

    margin-bottom:25px;

    font-family:'Playfair Display', serif;
}

.escort-cta p{

    max-width:800px;

    margin:auto;

    color:#d6d6d6;

    line-height:2;

    font-size:17px;
}

.escort-cta-buttons{

    display:flex;

    justify-content:center;

    gap:15px;

    margin-top:35px;
}

.escort-cta-buttons a{

    width:220px;

    height:55px;

    display:flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    border-radius:50px;

    text-decoration:none;

    color:#fff;

    transition:.3s ease;
}

.cta-whatsapp{

    background:
    linear-gradient(
        135deg,
        #25D366,
        #1db954
    );
}

.cta-contact{

    background:
    linear-gradient(
        135deg,
        #7A1F3D,
        #B76E79
    );
}

.escort-cta-buttons a:hover{

    transform:translateY(-3px);
}

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

@media(max-width:991px){

    .escort-cta{

        padding:0 20px 80px;
    }

    .escort-cta-box{

        padding:50px 25px;
    }

    .escort-cta h2{

        font-size:34px;
    }

    .escort-cta p{

        font-size:16px;
    }

    .escort-cta-buttons{

        grid-template-columns:1fr 1fr;

        display:grid;

        gap:12px;
    }

    .escort-cta-buttons a{

        width:100%;
    }
}

.legal-content{

    background:#0a0a0a;

    padding:100px 25px;
}

.legal-container{

    max-width:900px;

    margin:auto;

    text-align:center;
}

.legal-content .section-tag{

    display:inline-block;

    color:#d9b38c;

    font-size:13px;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:15px;
}

.legal-content h2{

    color:#fff;

    font-size:52px;

    margin-bottom:25px;

    font-family:'Playfair Display', serif;
}

.legal-content p{

    color:#bdbdbd;

    font-size:17px;

    line-height:2;

    margin-bottom:22px;
}

@media(max-width:991px){

    .legal-content{

        padding:70px 20px;
    }

    .legal-content h2{

        font-size:34px;
    }

    .legal-content p{

        font-size:16px;
    }
}
.legal-note{

    margin-top:40px;

    color:#8f8f8f;

    font-size:14px;

    letter-spacing:1px;
}

/*==================================
    CONTENT SECTION
==================================*/

.content-section{

    padding:100px 0;

    background:#0a0a0a;
}

.content-container{

    max-width:1300px;

    margin:auto;

    padding:0 25px;

    display:grid;

    grid-template-columns:40% 60%;

    gap:45px;

    align-items:center;
}

/* Image */

.content-image{

    display:flex;

    justify-content:center;
}

.content-image img{

    width:100%;

    max-width:480px;

    display:block;

    border-radius:22px;

    border:1px solid rgba(255,255,255,.08);

    box-shadow:0 20px 45px rgba(0,0,0,.35);

    transition:.35s ease;
}

.content-image img:hover{

    transform:translateY(-6px);
}

/* Content */

.content-content{

    max-width:760px;
}

.content-content .section-tag{

    display:inline-block;

    margin-bottom:18px;
}

.content-content h2{

    color:#fff;

    font-family:'Playfair Display', serif;

    font-size:48px;

    line-height:1.2;

    margin-bottom:25px;
}

.content-content p{

    color:#d6d6d6;

    font-size:17px;

    line-height:1.9;

    margin-bottom:20px;
}

/* Button */

.content-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-width:190px;

    height:52px;

    margin-top:10px;

    border-radius:50px;

    text-decoration:none;

    color:#fff;

    background:linear-gradient(135deg,#7A1F3D,#B76E79);

    transition:.3s ease;
}

.content-btn:hover{

    transform:translateY(-3px);
}

/* Mobile */

@media(max-width:991px){

    .content-section{

        padding:70px 0;
    }

    .content-container{

        grid-template-columns:1fr;

        gap:35px;

        padding:0 20px;
    }

    .content-image{

        order:1;
    }

    .content-content{

        order:2;

        max-width:100%;
    }

    .content-image img{

        max-width:340px;
    }

    .content-content h2{

        font-size:34px;
    }

    .content-content p{

        font-size:16px;

        line-height:1.8;
    }

    .content-btn{

        width:200px;
    }

}