/* =========================================================
PREMIUM HERO SECTION
========================================================= */

.modern-hero-wrapper{
    position:relative;
    overflow:hidden;

    margin-top:90px;   /* Header ke niche lekar aayega */

    padding:0 0 60px;

    border-radius:0 0 35px 35px;

    background:
    linear-gradient(
        90deg,
        rgba(223,243,239,.92),
        rgba(246,243,216,.88),
        rgba(245,223,244,.92)
    ),
    url("../images/home/hero-hotel.webp");

    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}

/* Overlay */

.modern-hero-wrapper::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(255,255,255,.12);
}

/* =========================================================
CONTENT
========================================================= */

.custom-hero-ui{

    position:relative;

    z-index:2;

    padding-top:70px;

    padding-bottom:80px;

}

.hero-layout{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:80px;
}

.hero-content{
    flex:1;
    max-width:620px;
}

/* =========================================================
BADGE
========================================================= */

.hero-badge{

    display:inline-flex;
    align-items:center;

    padding:10px 18px;

    border-radius:40px;

    background:rgba(255,255,255,.82);

    backdrop-filter:blur(14px);

    color:#555;

    font-size:13px;

    font-weight:500;

    margin-bottom:22px;
}

/* =========================================================
TITLE
========================================================= */

.hero-content h1{

    font-size:56px !important;

    font-weight:600 !important;

    line-height:1.1;

    letter-spacing:-1.5px;

    color:#111827 !important;

    margin-bottom:22px;
}

/* =========================================================
DESCRIPTION
========================================================= */

.hero-content p{

    font-size:18px;

    line-height:1.8;

    color:#5b6470 !important;

    margin-bottom:34px;

    max-width:560px;
}

/* =========================================================
BUTTONS
========================================================= */

.hero-buttons{

    display:flex;
    gap:16px;
    flex-wrap:wrap;

    margin-bottom:38px;
}

/* PRIMARY */

.btn-main{

    background:#0B4D63 !important;

    color:#fff !important;

    padding:16px 32px;

    border-radius:14px;

    font-size:15px;

    font-weight:500;

    text-decoration:none;

    transition:.35s;
}

.btn-main:hover{

    background:#083344 !important;

    transform:translateY(-3px);
}

/* SECONDARY */

.btn-outline{

    background:#fff;

    border:1px solid #e5e7eb;

    color:#111827 !important;

    padding:16px 32px;

    border-radius:14px;

    font-size:15px;

    font-weight:500;

    text-decoration:none;

    transition:.35s;
}

.btn-outline:hover{

    background:#f9fafb;

    transform:translateY(-3px);
}

/* =========================================================
STATS
========================================================= */

.hero-stats{

    display:flex;
    gap:18px;
    flex-wrap:wrap;
}

.hero-stat{

    background:rgba(255,255,255,.82);

    backdrop-filter:blur(15px);

    border-radius:18px;

    padding:18px 24px;

    min-width:145px;

    box-shadow:0 15px 35px rgba(0,0,0,.05);
}

.hero-stat strong{

    display:block;

    color:#0B4D63;

    font-size:26px;

    font-weight:600;

    margin-bottom:5px;
}

.hero-stat span{

    font-size:13px;

    color:#6b7280;
}

/* =========================================================
IMAGE
========================================================= */

.hero-image{

    flex:1;

    display:flex;
    justify-content:flex-end;
}

.hero-image img{

    width:100%;

    max-width:540px;

    border-radius:30px;

    box-shadow:
    0 30px 80px rgba(0,0,0,.18);

    object-fit:cover;
}

/* =========================================================
TABLET
========================================================= */

@media(max-width:991px){

.custom-hero-ui{

    padding-top:50px;
    padding-bottom:70px;

}

.hero-layout{

    flex-direction:column;

    text-align:center;

    gap:50px;
}

.hero-content{

    max-width:100%;
}

.hero-content p{

    margin-left:auto;
    margin-right:auto;
}

.hero-buttons{

    justify-content:center;
}

.hero-stats{

    justify-content:center;
}

.hero-image{

    justify-content:center;
}

.hero-image img{

    max-width:480px;
}

}

/* =========================================================
MOBILE
========================================================= */

@media(max-width:768px){

.modern-hero-wrapper{

    border-radius:0 0 25px 25px;
}

.custom-hero-ui{

    padding-top:35px;

    padding-bottom:45px;

    padding-left:20px;

    padding-right:20px;

}

.hero-layout{

    gap:35px;
}

.hero-content h1{

    font-size:38px !important;

    line-height:1.18;
}

.hero-content p{

    font-size:15px;

    line-height:1.8;
}

.hero-buttons{

    flex-direction:column;
}

.btn-main,
.btn-outline{

    width:100%;

    justify-content:center;
}

.hero-stats{

    gap:12px;
}

.hero-stat{

    flex:1;

    min-width:105px;

    padding:16px 12px;

    text-align:center;
}

.hero-stat strong{

    font-size:24px;
}

.hero-image img{

    width:100%;

    max-width:100%;
}

}


/*======================================
BLOG UI
======================================*/

.blog-category{

padding:70px 0;

}

.blog-card{

background:#fff;

border-radius:24px;

overflow:hidden;

height:100%;

box-shadow:0 12px 35px rgba(0,0,0,.06);

transition:.35s;

display:flex;

flex-direction:column;

}

.blog-card:hover{

transform:translateY(-8px);

box-shadow:0 20px 50px rgba(0,0,0,.12);

}

.blog-image{

display:block;

overflow:hidden;

}

.blog-image img{

width:100%;

height:250px;

object-fit:cover;

transition:.5s;

}

.blog-card:hover img{

transform:scale(1.08);

}

.blog-content{

padding:24px;

flex:1;

display:flex;

flex-direction:column;

}

.blog-meta{

display:flex;

justify-content:space-between;

flex-wrap:wrap;

gap:10px;

font-size:13px;

color:#777;

margin-bottom:18px;

}

.blog-meta span{

display:flex;

align-items:center;

gap:6px;

}

.blog-title{

font-size:22px;

font-weight:600;

line-height:1.45;

margin-bottom:16px;

}

.blog-title a{

color:#111827;

text-decoration:none;

}

.blog-title a:hover{

color:#0B4D63;

}

.blog-desc{

font-size:15px;

line-height:1.8;

color:#666;

margin-bottom:22px;

flex:1;

}

.blog-btn{

display:inline-flex;

align-items:center;

gap:8px;

font-size:15px;

font-weight:600;

color:#0B4D63;

text-decoration:none;

}

.blog-btn:hover{

color:#083344;

}

@media(max-width:768px){

.blog-category{

padding:50px 0;

}

.blog-title{

font-size:20px;

}

.blog-image img{

height:220px;

}

}


/*==========================
BLOG HERO
==========================*/

.blog-hero-gradient{

background:linear-gradient(
135deg,
#ddfbff 0%,
#fffbd4 50%,
#f5d0fc 100%
);

padding:110px 0 70px;

border-radius:0 0 30px 30px;

position:relative;

overflow:hidden;

margin-bottom:40px;

}

.blog-hero-gradient::before{

content:"";

position:absolute;

inset:0;

background:
radial-gradient(circle at left,#ffffff70,transparent 45%),
radial-gradient(circle at right,#ffffff60,transparent 40%);

}

.blog-hero-content{

position:relative;

z-index:2;

text-align:center;

max-width:900px;

margin:auto;

}

.blog-badge{

display:inline-block;

padding:8px 18px;

background:#ffffff;

border-radius:50px;

font-size:13px;

color:#0B4D63;

margin-bottom:20px;

}

.blog-hero-content h1{

font-size:42px;

font-weight:600;

line-height:1.3;

color:#111827;

margin-bottom:15px;

}

.blog-hero-content p{

font-size:15px;

color:#6b7280;

}

@media(max-width:768px){

.blog-hero-gradient{

padding:90px 20px 50px;

}

.blog-hero-content h1{

font-size:30px;

}

}
