/* =========================
AREA CONTENT
========================= */

.area-content-sec{

    padding:100px 20px;

    background:
    linear-gradient(
        180deg,
        #071226 0%,
        #050816 100%
    );

}

.area-content-wrap{

    max-width:900px;

    margin:auto;

    text-align:center;

}

.area-content-tag{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:12px 24px;

    margin-bottom:28px;

    border-radius:60px;

    background:rgba(255,255,255,.05);

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

    backdrop-filter:blur(12px);

    color:#60A5FA;

    font-size:14px;

    font-weight:500;

}

.area-content-wrap h2{

    margin-bottom:30px;

    font-size:46px;

    line-height:1.2;

    color:#fff;

}

.area-content-wrap p{

    margin-bottom:22px;

    font-size:17px;

    line-height:1.9;

    color:#CBD5E1;

}

.area-content-wrap a{

    color:#60A5FA;

    text-decoration:none;

    transition:.3s;

}

.area-content-wrap a:hover{

    color:#93C5FD;

}

@media(max-width:768px){

    .area-content-sec{

        padding:80px 20px;

    }

    .area-content-wrap h2{

        font-size:34px;

    }

    .area-content-wrap p{

        font-size:16px;

        line-height:1.85;

    }

}
/* =========================
AREA PLACES
========================= */

.area-places{

    position:relative;

    overflow:hidden;

    padding:100px 20px;

    background:
    linear-gradient(
        180deg,
        #050816 0%,
        #071226 100%
    );

}

/* =========================
WRAP
========================= */

.area-places{

    max-width:900px;

    margin:auto;

    text-align:center;

}

/* =========================
TAG
========================= */

.area-tag{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:12px 24px;

    margin-bottom:24px;

    border-radius:60px;

    background:
    rgba(255,255,255,.05);

    backdrop-filter:blur(12px);

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

    color:#60A5FA;

    font-size:14px;

    font-weight:500;

}

/* =========================
TITLE
========================= */

.area-places h2{

    margin-bottom:28px;

    font-size:46px;

    line-height:1.2;

    color:#ffffff;

}

/* =========================
TEXT
========================= */

.area-places p{

    margin-bottom:45px;

    font-size:17px;

    line-height:1.9;

    color:#CBD5E1;

}

/* =========================
GRID
========================= */

.places-grid{

    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:18px;

}

/* =========================
ITEM
========================= */

.places-grid span{

    display:flex;

    align-items:center;

    justify-content:center;

    min-height:56px;

    padding:0 24px;

    border-radius:60px;

    background:
    rgba(255,255,255,.05);

    backdrop-filter:blur(14px);

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

    color:#ffffff;

    font-size:15px;

    font-weight:500;

    transition:.35s ease;

}

/* =========================
HOVER
========================= */

.places-grid span:hover{

    transform:
    translateY(-5px);

    background:
    rgba(37,99,235,.15);

    border-color:
    rgba(96,165,250,.35);

    color:#ffffff;

    box-shadow:
    0 12px 35px rgba(37,99,235,.18);

}

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

@media(max-width:992px){

    .area-places h2{

        font-size:40px;

    }

}

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

@media(max-width:768px){

    .area-places{

        padding:80px 20px;

    }

    .area-places h2{

        font-size:34px;

        line-height:1.25;

    }

    .area-places p{

        font-size:16px;

        line-height:1.85;

        margin-bottom:35px;

    }

    .places-grid{

        gap:14px;

    }

    .places-grid span{

        width:100%;

        min-height:52px;

        font-size:14px;

    }

}

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

.content-sec{

    position:relative;

    overflow:hidden;

    padding:110px 20px;

    background:
    linear-gradient(
        180deg,
        #050816 0%,
        #071226 100%
    );

}

/* =========================
GLOW
========================= */

.content-sec::before{

    content:"";

    position:absolute;

    top:-180px;
    left:-180px;

    width:420px;
    height:420px;

    border-radius:50%;

    background:
    rgba(37,99,235,.10);

    filter:blur(120px);

}

.content-sec::after{

    content:"";

    position:absolute;

    right:-180px;
    bottom:-180px;

    width:420px;
    height:420px;

    border-radius:50%;

    background:
    rgba(168,85,247,.10);

    filter:blur(120px);

}

/* =========================
WRAP
========================= */

.content-wrap{

    position:relative;

    z-index:2;

    max-width:1200px;

    margin:auto;

    display:grid;

    grid-template-columns:60% 40%;

    gap:60px;

    align-items:center;

}

/* =========================
LEFT
========================= */

.content-left h2{

    margin:24px 0;

    font-size:40px;

    line-height:1.18;

    color:#fff;

}

.content-left h3{

    margin:24px 0;

    font-size:32px;

    line-height:1.18;

    color:#fff;

}

.content-left p{

    margin-bottom:22px;

    font-size:17px;

    line-height:1.9;

    color:#CBD5E1;

}

.content-left a{

    color:#60A5FA;

    text-decoration:none;

    transition:.3s;

}

.content-left a:hover{

    color:#93C5FD;

}

/* =========================
TAG
========================= */

.content-tag{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:12px 22px;

    border-radius:60px;

    background:
    rgba(255,255,255,.05);

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

    backdrop-filter:blur(12px);

    color:#60A5FA;

    font-size:14px;

    font-weight:500;

}

/* =========================
IMAGE
========================= */

.content-right{

    position:relative;

}

.content-right img{

    width:100%;

    height:640px;

    object-fit:cover;

    display:block;

    border-radius:30px;

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

    transition:.4s;

}

.content-right img:hover{

    transform:scale(1.03);

}

/* FLOAT BADGE */

.content-badge{

    position:absolute;

    left:25px;
    bottom:25px;

    padding:14px 20px;

    border-radius:50px;

    background:
    rgba(255,255,255,.08);

    backdrop-filter:blur(15px);

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

    color:#fff;

    font-size:14px;

    font-weight:500;

}

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

@media(max-width:992px){

    .content-wrap{

        grid-template-columns:1fr;

        gap:45px;

    }

    .content-left h2{

        font-size:40px;

    }

}

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

@media(max-width:768px){

    .content-sec{

        padding:80px 20px;

    }

    .content-left h2{

        font-size:34px;

        line-height:1.25;

    }

    .content-left p{

        font-size:16px;

        line-height:1.85;

    }

    .content-right img{

        height:480px;

    }

    .content-badge{

        left:18px;

        bottom:18px;

        font-size:13px;

        padding:12px 16px;

    }

}

/* =========================
CTA SECTION
========================= */

.cta-sec{

    padding:110px 20px;

    background:
    linear-gradient(
        180deg,
        #071226 0%,
        #050816 100%
    );

}

.cta-wrap{

    max-width:900px;

    margin:auto;

    padding:70px 50px;

    text-align:center;

    border-radius:34px;

    background:
    linear-gradient(
        135deg,
        rgba(255,255,255,.05),
        rgba(255,255,255,.02)
    );

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

    backdrop-filter:blur(18px);

}

.cta-tag{

    display:inline-flex;

    padding:12px 24px;

    border-radius:60px;

    margin-bottom:25px;

    background:rgba(255,255,255,.05);

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

    color:#60A5FA;

    font-size:14px;

    font-weight:500;

}

.cta-wrap h2{

    margin-bottom:25px;

    font-size:50px;

    line-height:1.15;

    color:#fff;

}

.cta-wrap p{

    max-width:700px;

    margin:0 auto 45px;

    font-size:17px;

    line-height:1.9;

    color:#CBD5E1;

}

.cta-btns{

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;

}

.cta-btn{

    display:inline-flex;

    align-items:center;

    gap:12px;

    min-width:220px;

    justify-content:center;

    height:60px;

    padding:0 35px;

    border-radius:60px;

    text-decoration:none;

    font-size:15px;

    font-weight:600;

    transition:.35s;

}

.primary-btn{

    background:#2563EB;

    color:#fff;

}

.primary-btn:hover{

    transform:translateY(-4px);

    background:#3B82F6;

}

.secondary-btn{

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

    background:rgba(255,255,255,.05);

    color:#fff;

}

.secondary-btn:hover{

    transform:translateY(-4px);

    background:rgba(255,255,255,.08);

}

@media(max-width:768px){

    .cta-wrap{

        padding:50px 25px;

    }

    .cta-wrap h2{

        font-size:34px;

    }

    .cta-wrap p{

        font-size:16px;

    }

    .cta-btn{

        width:100%;

    }

}

/* =========================
CATEGORY SECTION
========================= */

.category-sec{

    position:relative;

    overflow:hidden;

    padding:110px 20px;

    background:
    linear-gradient(
        180deg,
        #050816 0%,
        #071226 100%
    );

}

/* =========================
GLOW
========================= */

.category-sec::before{

    content:"";

    position:absolute;

    top:-180px;
    left:-180px;

    width:420px;
    height:420px;

    border-radius:50%;

    background:
    rgba(37,99,235,.10);

    filter:blur(120px);

}

.category-sec::after{

    content:"";

    position:absolute;

    right:-180px;
    bottom:-180px;

    width:420px;
    height:420px;

    border-radius:50%;

    background:
    rgba(168,85,247,.10);

    filter:blur(120px);

}

/* =========================
WRAP
========================= */

.category-wrap{

    position:relative;

    z-index:2;

    max-width:1200px;

    margin:auto;

}

/* =========================
HEAD
========================= */

.category-tag{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:12px 24px;

    margin-bottom:24px;

    border-radius:60px;

    background:
    rgba(255,255,255,.05);

    backdrop-filter:blur(12px);

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

    color:#60A5FA;

    font-size:14px;

    font-weight:500;

}

.category-wrap h2{

    margin-bottom:24px;

    font-size:48px;

    line-height:1.18;

    color:#ffffff;

}

.category-wrap > p{

    max-width:780px;

    margin-bottom:60px;

    font-size:17px;

    line-height:1.9;

    color:#CBD5E1;

}

/* =========================
GRID
========================= */

.category-grid{

    display:grid;

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

    gap:28px;

}

/* =========================
CARD
========================= */

.category-card{

    padding:35px 30px;

    border-radius:28px;

    background:
    linear-gradient(
        180deg,
        rgba(255,255,255,.05),
        rgba(255,255,255,.02)
    );

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

    backdrop-filter:blur(14px);

    transition:.35s ease;

}

.category-card:hover{

    transform:
    translateY(-8px);

    border-color:
    rgba(96,165,250,.30);

    box-shadow:
    0 18px 45px rgba(0,0,0,.28);

}

/* =========================
ICON
========================= */

.category-card i{

    width:68px;
    height:68px;

    margin-bottom:24px;

    border-radius:20px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:
    linear-gradient(
        135deg,
        #2563EB,
        #60A5FA
    );

    color:#ffffff;

    font-size:24px;

}

/* =========================
TITLE
========================= */

.category-card h3{

    margin-bottom:18px;

    font-size:24px;

    line-height:1.35;

    color:#ffffff;

}

/* =========================
TEXT
========================= */

.category-card p{

    font-size:15px;

    line-height:1.85;

    color:#CBD5E1;

}

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

@media(max-width:992px){

    .category-wrap h2{

        font-size:40px;

    }

    .category-grid{

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

    }

}

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

@media(max-width:768px){

    .category-sec{

        padding:80px 20px;

    }

    .category-wrap{

        text-align:center;

    }

    .category-wrap h2{

        font-size:34px;

        line-height:1.25;

    }

    .category-wrap > p{

        font-size:16px;

        line-height:1.85;

        margin-bottom:45px;

    }

    .category-grid{

        grid-template-columns:1fr;

        gap:20px;

    }

    .category-card{

        padding:28px 24px;

    }

    .category-card i{

        margin:0 auto 22px;

    }

}
/* =========================
BOOKING SECTION
========================= */

.booking-sec{

    position:relative;

    overflow:hidden;

    padding:110px 20px;

    background:
    linear-gradient(
        180deg,
        #050816 0%,
        #071226 100%
    );

}

/* =========================
GLOW
========================= */

.booking-sec::before{

    content:"";

    position:absolute;

    top:-180px;
    left:-180px;

    width:420px;
    height:420px;

    border-radius:50%;

    background:
    rgba(37,99,235,.10);

    filter:blur(120px);

}

.booking-sec::after{

    content:"";

    position:absolute;

    right:-180px;
    bottom:-180px;

    width:420px;
    height:420px;

    border-radius:50%;

    background:
    rgba(168,85,247,.10);

    filter:blur(120px);

}

/* =========================
WRAP
========================= */

.booking-wrap{

    position:relative;

    z-index:2;

    max-width:1200px;

    margin:auto;

}

/* =========================
HEAD
========================= */

.booking-head{

    max-width:820px;

    margin:0 auto 70px;

    text-align:center;

}

.booking-tag{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:12px 24px;

    margin-bottom:24px;

    border-radius:60px;

    background:
    rgba(255,255,255,.05);

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

    backdrop-filter:blur(12px);

    color:#60A5FA;

    font-size:14px;

    font-weight:500;

}

.booking-head h2{

    margin-bottom:24px;

    font-size:48px;

    line-height:1.18;

    color:#fff;

}

.booking-head p{

    max-width:760px;

    margin:auto;

    font-size:17px;

    line-height:1.9;

    color:#CBD5E1;

}

/* =========================
GRID
========================= */

.booking-grid{

    display:grid;

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

    gap:28px;

}

/* =========================
CARD
========================= */

.booking-card{

    position:relative;

    padding:35px 30px;

    border-radius:28px;

    background:
    linear-gradient(
        180deg,
        rgba(255,255,255,.05),
        rgba(255,255,255,.02)
    );

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

    backdrop-filter:blur(14px);

    transition:.35s ease;

}

.booking-card:hover{

    transform:translateY(-8px);

    border-color:
    rgba(96,165,250,.35);

    box-shadow:
    0 18px 45px rgba(0,0,0,.28);

}

/* =========================
NUMBER
========================= */

.booking-number{

    display:flex;

    align-items:center;

    justify-content:center;

    width:64px;
    height:64px;

    margin-bottom:24px;

    border-radius:18px;

    background:
    linear-gradient(
        135deg,
        #2563EB,
        #60A5FA
    );

    color:#fff;

    font-size:22px;

    font-weight:700;

}

/* =========================
TITLE
========================= */

.booking-card h3{

    margin-bottom:16px;

    font-size:24px;

    color:#fff;

    line-height:1.3;

}

/* =========================
TEXT
========================= */

.booking-card p{

    font-size:15px;

    line-height:1.85;

    color:#CBD5E1;

}

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

@media(max-width:1100px){

    .booking-grid{

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

    }

    .booking-head h2{

        font-size:40px;

    }

}

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

@media(max-width:768px){

    .booking-sec{

        padding:80px 20px;

    }

    .booking-head{

        margin-bottom:45px;

    }

    .booking-head h2{

        font-size:34px;

        line-height:1.25;

    }

    .booking-head p{

        font-size:16px;

        line-height:1.85;

    }

    .booking-grid{

        grid-template-columns:1fr;

        gap:20px;

    }

    .booking-card{

        padding:28px 24px;

    }

    .booking-number{

        width:58px;
        height:58px;

        font-size:20px;

    }

    .booking-card h3{

        font-size:22px;

    }

}
/* =========================
NEARBY AREAS
========================= */

.nearby-sec{

    position:relative;

    overflow:hidden;

    padding:110px 20px;

    background:
    linear-gradient(
        180deg,
        #071226 0%,
        #050816 100%
    );

}

/* =========================
GLOW
========================= */

.nearby-sec::before{

    content:"";

    position:absolute;

    top:-180px;
    left:-180px;

    width:420px;
    height:420px;

    border-radius:50%;

    background:
    rgba(37,99,235,.10);

    filter:blur(120px);

}

.nearby-sec::after{

    content:"";

    position:absolute;

    right:-180px;
    bottom:-180px;

    width:420px;
    height:420px;

    border-radius:50%;

    background:
    rgba(168,85,247,.10);

    filter:blur(120px);

}

/* =========================
WRAP
========================= */

.nearby-wrap{

    position:relative;

    z-index:2;

    max-width:1200px;

    margin:auto;

}

/* =========================
HEAD
========================= */

.nearby-head{

    max-width:820px;

    margin:0 auto 60px;

    text-align:center;

}

.nearby-tag{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:12px 24px;

    margin-bottom:24px;

    border-radius:60px;

    background:
    rgba(255,255,255,.05);

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

    backdrop-filter:blur(12px);

    color:#60A5FA;

    font-size:14px;

    font-weight:500;

}

.nearby-head h2{

    margin-bottom:24px;

    font-size:48px;

    line-height:1.18;

    color:#ffffff;

}

.nearby-head p{

    max-width:720px;

    margin:auto;

    font-size:17px;

    line-height:1.9;

    color:#CBD5E1;

}

/* =========================
GRID
========================= */

.nearby-grid{

    display:grid;

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

    gap:24px;

}

/* =========================
CARD
========================= */

.nearby-card{

    padding:30px;

    border-radius:26px;

    background:
    linear-gradient(
        180deg,
        rgba(255,255,255,.05),
        rgba(255,255,255,.02)
    );

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

    backdrop-filter:blur(14px);

    transition:.35s ease;

}

.nearby-card:hover{

    transform:translateY(-8px);

    border-color:
    rgba(96,165,250,.35);

    box-shadow:
    0 18px 45px rgba(0,0,0,.28);

}

/* =========================
TITLE
========================= */

.nearby-card h3{

    display:flex;

    align-items:center;

    gap:12px;

    margin-bottom:16px;

    font-size:24px;

    color:#ffffff;

}

.nearby-card h3::before{

    content:"";

    width:10px;

    height:10px;

    border-radius:50%;

    background:#3B82F6;

    box-shadow:
    0 0 15px rgba(59,130,246,.7);

}

/* =========================
TEXT
========================= */

.nearby-card p{

    font-size:15px;

    line-height:1.8;

    color:#CBD5E1;

}

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

@media(max-width:992px){

    .nearby-head h2{

        font-size:40px;

    }

    .nearby-grid{

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

    }

}

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

@media(max-width:768px){

    .nearby-sec{

        padding:80px 20px;

    }

    .nearby-head{

        margin-bottom:45px;

    }

    .nearby-head h2{

        font-size:34px;

        line-height:1.25;

    }

    .nearby-head p{

        font-size:16px;

        line-height:1.85;

    }

    .nearby-grid{

        grid-template-columns:1fr;

        gap:18px;

    }

    .nearby-card{

        padding:24px;

    }

    .nearby-card h3{

        font-size:22px;

    }

}
/* =========================
TESTIMONIAL SECTION
========================= */

.testimonial-sec{

    position:relative;

    overflow:hidden;

    padding:110px 20px;

    background:
    linear-gradient(
        180deg,
        #050816 0%,
        #071226 100%
    );

}

/* =========================
GLOW
========================= */

.testimonial-sec::before{

    content:"";

    position:absolute;

    top:-180px;
    left:-180px;

    width:420px;
    height:420px;

    border-radius:50%;

    background:
    rgba(37,99,235,.10);

    filter:blur(120px);

}

.testimonial-sec::after{

    content:"";

    position:absolute;

    right:-180px;
    bottom:-180px;

    width:420px;
    height:420px;

    border-radius:50%;

    background:
    rgba(168,85,247,.10);

    filter:blur(120px);

}

/* =========================
WRAP
========================= */

.testimonial-wrap{

    position:relative;

    z-index:2;

    max-width:1200px;

    margin:auto;

}

/* =========================
HEAD
========================= */

.testimonial-head{

    max-width:800px;

    margin:0 auto 60px;

    text-align:center;

}

.testimonial-tag{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:12px 24px;

    margin-bottom:24px;

    border-radius:60px;

    background:
    rgba(255,255,255,.05);

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

    backdrop-filter:blur(12px);

    color:#60A5FA;

    font-size:14px;

    font-weight:500;

}

.testimonial-head h2{

    margin-bottom:24px;

    font-size:48px;

    line-height:1.18;

    color:#ffffff;

}

.testimonial-head p{

    max-width:720px;

    margin:auto;

    font-size:17px;

    line-height:1.9;

    color:#CBD5E1;

}

/* =========================
GRID
========================= */

.testimonial-grid{

    display:grid;

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

    gap:28px;

}

/* =========================
CARD
========================= */

.testimonial-card{

    padding:35px 32px;

    border-radius:30px;

    background:
    linear-gradient(
        180deg,
        rgba(255,255,255,.05),
        rgba(255,255,255,.02)
    );

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

    backdrop-filter:blur(14px);

    transition:.35s ease;

}

.testimonial-card:hover{

    transform:
    translateY(-8px);

    border-color:
    rgba(96,165,250,.35);

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

}

/* =========================
STARS
========================= */

.testimonial-stars{

    margin-bottom:22px;

    color:#FBBF24;

    font-size:22px;

    letter-spacing:4px;

}

/* =========================
TEXT
========================= */

.testimonial-text{

    margin-bottom:30px;

    font-size:16px;

    line-height:1.9;

    color:#CBD5E1;

    font-style:italic;

}

/* =========================
USER
========================= */

.testimonial-user{

    padding-top:20px;

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

}

.testimonial-user h3{

    margin-bottom:6px;

    font-size:20px;

    color:#ffffff;

}

.testimonial-user span{

    font-size:14px;

    color:#94A3B8;

}

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

@media(max-width:992px){

    .testimonial-head h2{

        font-size:40px;

    }

    .testimonial-grid{

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

    }

}

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

@media(max-width:768px){

    .testimonial-sec{

        padding:80px 20px;

    }

    .testimonial-head{

        margin-bottom:45px;

    }

    .testimonial-head h2{

        font-size:34px;

        line-height:1.25;

    }

    .testimonial-head p{

        font-size:16px;

        line-height:1.85;

    }

    .testimonial-grid{

        grid-template-columns:1fr;

        gap:20px;

    }

    .testimonial-card{

        padding:28px 24px;

    }

    .testimonial-stars{

        font-size:20px;

    }

}