/*==================================================
REYAAN TRAVELS
COMMON SERVICE CSS
Version : 1.0
==================================================*/


/*==================================================
RESET
==================================================*/

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:'Poppins',sans-serif;
background:#ffffff;
color:#222;
line-height:1.7;
overflow-x:hidden;
}

img{
max-width:100%;
display:block;
}

a{
text-decoration:none;
transition:.3s;
}

ul{
list-style:none;
}

.container{
width:100%;
max-width:1400px;
margin:auto;
padding:0 20px;
}

/*==================================================
COMMON SECTION
==================================================*/

section{
padding:90px 0;
position:relative;
}

.section-heading{
text-align:center;
margin-bottom:60px;
}

.section-heading span{

display:inline-block;

padding:8px 20px;

background:#edf4ff;

color:#0B56C5;

font-weight:700;

border-radius:30px;

font-size:14px;

letter-spacing:1px;

margin-bottom:15px;

text-transform:uppercase;

}

.section-heading h2{

font-size:48px;

font-weight:700;

color:#0B56C5;

margin-bottom:20px;

}

.section-heading p{

max-width:760px;

margin:auto;

font-size:18px;

color:#666;

}

/*==================================================
BUTTONS
==================================================*/

.btn-primary{

display:inline-flex;

align-items:center;

justify-content:center;

padding:16px 38px;

background:#FFB400;

color:#000;

font-weight:700;

border-radius:10px;

transition:.35s;

}

.btn-primary:hover{

background:#ffcb32;

transform:translateY(-4px);

}

.btn-whatsapp{

display:inline-flex;

align-items:center;

justify-content:center;

padding:16px 38px;

background:#25D366;

color:#fff;

font-weight:700;

border-radius:10px;

transition:.35s;

}

.btn-whatsapp:hover{

background:#1fb85a;

transform:translateY(-4px);

}

/*==================================================
COMMON HERO
==================================================*/

.service-hero{

    position:relative;

    min-height:520px;   /* 620px se chhota */

    display:flex;

    align-items:center;

    overflow:hidden;

    background-size:cover;

    background-position:center center;

    background-repeat:no-repeat;

}

.service-overlay{

    width:100%;

    min-height:540px;

    display:flex;

    align-items:center;

    padding:10px 0;

    background:transparent;   /* Overlay removed */

}

.service-container{

    display:grid;

    grid-template-columns:1fr 420px;

    gap:70px;

    align-items:center;

}

/*==================================
LEFT CONTENT
==================================*/

.service-content{

    color:#fff;

}

.service-badge{

    display:inline-flex;
    align-items:center;
    gap:6px;

}

.globe-icon{

    color:#0B56C5;

}

.global{

    color:#0B56C5;
    font-weight:700;

}

.visa-text{

    color:#0B56c5;
    font-weight:700;

}

/*=========================
HERO CONTENT
=========================*/

.service-content h1{

    font-size:30px;
    font-weight:700;
    color:#fff;

    white-space:nowrap;   /* Ek line me rakhega */

    margin:18px 0;

}

.service-content h1 span{

    display:block;

    color:#fff;

    font-weight:500;

    text-shadow:none;

}

.service-content p{

    font-size:19px;

    line-height:1.8;

    color:#222;

    font-weight:500;

    max-width:560px;

    margin-bottom:25px;

}

.hero-features{

    margin:25px 0;

    padding:0;

}

.hero-features li{

    list-style:none;

    display:flex;

    align-items:center;

    gap:12px;

    margin-bottom:14px;

    color:#222;

    font-size:15px;

    font-weight:500;

}

.hero-features i{

    color:#F7C948;

    font-size:18px;

}

.hero-trust{

    display:flex;

    flex-wrap:wrap;

    gap:15px;

    margin:30px 0;

    color:#222;

    font-size:20px;

    font-weight:800;

}

.hero-trust i{

    color:#F7C948;

    margin-right:10px;

}

/*==================================
RIGHT FORM
==================================*/

.service-form{

    background:rgba(255,255,255,.75);   /* Transparent */

    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);

    border:1px solid rgba(255,255,255,.45);

    box-shadow:0 15px 40px rgba(0,0,0,.12);

    border-radius:20px;

    padding:24px;

}

.service-form h2{

    font-size:22px;
    font-weight:700;
    color:#0B56C5;

    margin:0 0 8px;     /* Heading ke niche sirf 8px gap */

    line-height:1.3;

    white-space:nowrap; /* Ek line me rakhega */

}

.service-form p{

    margin:0 0 18px;    /* Paragraph ke niche normal gap */

    font-size:15px;

    line-height:1.6;

    color:#666;

}

.form-row{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:12px;

}

.service-form label{

    display:block;

    font-size:14px;

    font-weight:600;

    color:#333;

    margin-bottom:6px;

}

.service-form input,
.service-form select,
.service-form textarea{

    width:100%;

    border:1px solid #ddd;

    border-radius:10px;

    padding:13px 15px;

    margin-bottom:16px;

    font-size:15px;

    outline:none;

    transition:.3s;

}

.service-form textarea{

    height:90px;

    resize:none;

}

.service-form input:focus,
.service-form select:focus,
.service-form textarea:focus{

    border-color:#0B56C5;

}

.service-form button{

    width:100%;

    height:52px;

    border:none;

    border-radius:10px;

    background:#0B56C5;

    color:#fff;

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

}

.service-form button:hover{

    background:#08439A;

}

/*==================================
RESPONSIVE
==================================*/

@media(max-width:991px){

.service-hero,
.service-overlay{

min-height:auto;

}

.service-overlay{

padding:60px 0;

}

.service-container{

grid-template-columns:1fr;

gap:45px;

}

.service-content{

text-align:center;

}

.service-content h1{

font-size:42px;

max-width:100%;

}

.service-content p{

max-width:100%;

}

.hero-features{

display:inline-block;

text-align:left;

}

.hero-buttons{

justify-content:center;

}

.service-form{

max-width:100%;

}

}

@media(max-width:576px){

.form-row{

grid-template-columns:1fr;

}

.service-content h1{

font-size:34px;

}

.service-content p{

font-size:16px;

}

.hero-buttons{

flex-direction:column;

}

.hero-buttons a{

width:100%;

text-align:center;

}

}

/*==================================================
TRIP TABS
==================================================*/

.trip-tabs{
display:flex;
gap:10px;
margin-bottom:25px;
}

.trip-tabs label{
flex:1;
text-align:center;
padding:14px 10px;
background:#f4f8ff;
border:2px solid #d9e6ff;
border-radius:10px;
font-weight:600;
cursor:pointer;
transition:.3s;
color:#333;
}

.trip-tabs label:hover{
background:#0B56C5;
color:#fff;
border-color:#0B56C5;
}

.trip-tabs input{
display:none;
}

.trip-active{
background:#0B56C5 !important;
color:#fff !important;
border-color:#0B56C5 !important;
}

/*==================================================
SERVICE GRID
==================================================*/

.service-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
}

.service-card{
background:#fff;
padding:35px 25px;
border-radius:20px;
text-align:center;
box-shadow:0 10px 35px rgba(0,0,0,.08);
transition:.35s;
}

.service-card:hover{
transform:translateY(-10px);
box-shadow:0 20px 45px rgba(0,0,0,.15);
}

.service-icon{
width:80px;
height:80px;
margin:auto;
margin-bottom:20px;
border-radius:50%;
background:#edf4ff;
display:flex;
align-items:center;
justify-content:center;
font-size:38px;
color:#0B56C5;
}

.service-card h3{
font-size:24px;
color:#0B56C5;
margin-bottom:15px;
}

.service-card p{
font-size:16px;
color:#666;
line-height:1.8;
}

/*==================================================
AIRLINES
==================================================*/

.airlines-section{
background:#f8fbff;
}

.airline-grid{
display:grid;
grid-template-columns:repeat(6,1fr);
gap:25px;
align-items:center;
}

.airline-box{
background:#fff;
padding:25px;
border-radius:18px;
display:flex;
align-items:center;
justify-content:center;
height:130px;
box-shadow:0 8px 25px rgba(0,0,0,.08);
transition:.3s;
}

.airline-box:hover{
transform:translateY(-8px);
box-shadow:0 20px 40px rgba(0,0,0,.12);
}

.airline-box img{
max-height:55px;
width:auto;
}

/*==================================================
POPULAR ROUTES
==================================================*/

.route-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

.route-card{
background:#fff;
padding:30px;
border-radius:18px;
box-shadow:0 10px 30px rgba(0,0,0,.08);
transition:.35s;
border-left:5px solid #0B56C5;
}

.route-card:hover{
transform:translateY(-8px);
box-shadow:0 18px 40px rgba(0,0,0,.12);
}

.route-card h3{
font-size:24px;
color:#0B56C5;
margin-bottom:12px;
}

.route-card p{
color:#666;
}

/*==================================================
FEATURE GRID
==================================================*/

.feature-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
}

.feature-box{
background:#fff;
padding:35px;
border-radius:18px;
text-align:center;
box-shadow:0 10px 30px rgba(0,0,0,.08);
transition:.35s;
}

.feature-box:hover{
background:#0B56C5;
color:#fff;
transform:translateY(-8px);
}

.feature-box:hover h3,
.feature-box:hover p{
color:#fff;
}

.feature-box h3{
font-size:22px;
color:#0B56C5;
margin-bottom:15px;
}

.feature-box p{
color:#666;
line-height:1.8;
}

/*==================================================
DESTINATION GRID
==================================================*/

.destination-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

.destination-card{
background:#fff;
overflow:hidden;
border-radius:20px;
box-shadow:0 10px 35px rgba(0,0,0,.08);
transition:.35s;
}

.destination-card:hover{
transform:translateY(-10px);
box-shadow:0 20px 45px rgba(0,0,0,.15);
}

.destination-card img{
width:100%;
height:240px;
object-fit:cover;
transition:.5s;
}

.destination-card:hover img{
transform:scale(1.08);
}

.destination-card h3{
padding:20px 20px 8px;
font-size:24px;
color:#0B56C5;
}

.destination-card p{
padding:0 20px 25px;
color:#666;
}

/*==================================================
COMMON ANIMATION
==================================================*/

.service-card,
.route-card,
.destination-card,
.airline-box,
.feature-box{
transition:all .35s ease;
}
/*==================================================
BOOKING PROCESS
==================================================*/

.booking-process{
    background:#f8fbff;
}

.process-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}

.process-card{
    background:#fff;
    border-radius:20px;
    padding:40px 30px;
    text-align:center;
    position:relative;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
}

.process-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 45px rgba(0,0,0,.15);
}

.process-number{
    width:70px;
    height:70px;
    margin:0 auto 20px;
    border-radius:50%;
    background:#0B56C5;
    color:#fff;
    font-size:28px;
    font-weight:700;
    display:flex;
    align-items:center;
    justify-content:center;
}

.process-card h3{
    color:#0B56C5;
    font-size:24px;
    margin-bottom:15px;
}

.process-card p{
    color:#666;
    line-height:1.8;
}

/*==================================================
SPECIAL OFFERS
==================================================*/

.flight-offers{
    background:#fff;
}

.offer-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.offer-card{
    background:linear-gradient(135deg,#0B56C5,#083b87);
    color:#fff;
    border-radius:20px;
    padding:35px;
    transition:.35s;
}

.offer-card:hover{
    transform:translateY(-10px);
}

.offer-card h3{
    font-size:28px;
    margin-bottom:15px;
}

.offer-card p{
    margin-bottom:25px;
    line-height:1.8;
}

.offer-btn{
    display:inline-block;
    background:#FFB400;
    color:#000;
    padding:14px 28px;
    border-radius:8px;
    font-weight:700;
}

.offer-btn:hover{
    background:#ffd04d;
}

/*==================================================
STATISTICS
==================================================*/

.flight-stats{
    background:#0B56C5;
}

.stats-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}

.stat-box{
    text-align:center;
    color:#fff;
}

.stat-box h2{
    font-size:52px;
    margin-bottom:10px;
}

.stat-box p{
    font-size:18px;
}

/*==================================================
REVIEWS
==================================================*/

.review-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.review-card{
    background:#fff;
    border-radius:20px;
    padding:35px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
}

.review-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 45px rgba(0,0,0,.15);
}

.stars{
    color:#FFB400;
    font-size:22px;
    margin-bottom:18px;
}

.review-card p{
    color:#666;
    line-height:1.8;
}

.review-card h4{
    margin-top:20px;
    color:#0B56C5;
}

.review-card span{
    color:#999;
    font-size:14px;
}

/*==================================================
WHY REYAAN
==================================================*/

.why-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}

.why-box{
    background:#fff;
    padding:35px;
    text-align:center;
    border-radius:20px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
}

.why-box:hover{
    background:#0B56C5;
    color:#fff;
    transform:translateY(-10px);
}

.why-icon{
    width:80px;
    height:80px;
    margin:0 auto 20px;
    border-radius:50%;
    background:#edf4ff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:38px;
}

.why-box:hover .why-icon{
    background:#fff;
}

.why-box h3{
    color:#0B56C5;
    margin-bottom:15px;
}

.why-box:hover h3,
.why-box:hover p{
    color:#fff;
}

/*==================================================
COMMON SECTION BACKGROUND
==================================================*/

.bg-light{
    background:#f8fbff;
}

.bg-white{
    background:#fff;
}

.bg-primary{
    background:#0B56C5;
    color:#fff;
}
/*==================================================
FAQ
==================================================*/

.flight-faq,
.hotel-faq,
.taxi-faq,
.bus-faq,
.rail-faq,
.cruise-faq{
    background:#f8fbff;
}

.faq-item{
    background:#fff;
    margin-bottom:20px;
    padding:28px 30px;
    border-radius:18px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
}

.faq-item:hover{
    transform:translateY(-5px);
    box-shadow:0 18px 40px rgba(0,0,0,.12);
}

.faq-item h3{
    color:#0B56C5;
    font-size:22px;
    margin-bottom:12px;
}

.faq-item p{
    color:#666;
    line-height:1.8;
}

/*==================================================
CTA SECTION
==================================================*/

.flight-cta,
.hotel-cta,
.taxi-cta,
.bus-cta,
.rail-cta,
.cruise-cta{

    background:linear-gradient(135deg,#0B56C5,#06357b);
    text-align:center;
    color:#fff;

}

.flight-cta h2,
.hotel-cta h2,
.taxi-cta h2,
.bus-cta h2,
.rail-cta h2,
.cruise-cta h2{

    font-size:50px;
    margin-bottom:20px;

}

.flight-cta p,
.hotel-cta p,
.taxi-cta p,
.bus-cta p,
.rail-cta p,
.cruise-cta p{

    max-width:700px;
    margin:auto;
    margin-bottom:35px;
    font-size:20px;

}

.flight-cta .hero-buttons,
.hotel-cta .hero-buttons,
.taxi-cta .hero-buttons,
.bus-cta .hero-buttons,
.rail-cta .hero-buttons,
.cruise-cta .hero-buttons{

    justify-content:center;

}

/*==================================================
NEWSLETTER
==================================================*/

.newsletter{
    background:#ffffff;
}

.newsletter-box{

    max-width:900px;
    margin:auto;
    background:#0B56C5;
    border-radius:20px;
    padding:60px;
    text-align:center;
    color:#fff;

}

.newsletter-box h2{

    font-size:42px;
    margin-bottom:15px;

}

.newsletter-box p{

    margin-bottom:30px;
    font-size:18px;

}

.newsletter-form{

    display:flex;
    gap:15px;

}

.newsletter-form input{

    flex:1;
    height:60px;
    border:none;
    border-radius:10px;
    padding:0 20px;
    font-size:16px;

}

.newsletter-form button{

    width:220px;
    border:none;
    background:#FFB400;
    color:#000;
    border-radius:10px;
    font-weight:700;
    cursor:pointer;

}

.newsletter-form button:hover{

    background:#ffd04d;

}

/*==================================================
PARTNER LOGOS
==================================================*/

.travel-partners{

    background:#f8fbff;

}

.partner-grid{

    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:25px;

}

.partner-box{

    background:#fff;
    border-radius:18px;
    padding:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;

}

.partner-box:hover{

    transform:translateY(-8px);

}

.partner-box img{

    max-height:55px;
    width:auto;

}

/*==================================================
CALL STRIP
==================================================*/

.flight-call-strip{

    padding:50px 0;

}

.call-strip{

    background:#0B56C5;
    color:#fff;
    padding:40px 50px;
    border-radius:20px;

    display:flex;
    justify-content:space-between;
    align-items:center;

}

.call-strip h2{

    font-size:38px;
    margin-bottom:10px;

}

.call-strip p{

    font-size:18px;

}

/*==================================================
FINAL CTA
==================================================*/

.final-flight-cta{

    background:#083b87;
    text-align:center;
    color:#fff;

}

.final-flight-cta h2{

    font-size:52px;
    margin-bottom:20px;

}

.final-flight-cta p{

    max-width:700px;
    margin:auto;
    margin-bottom:35px;
    font-size:20px;

}

/*==================================================
COMMON HOVER EFFECT
==================================================*/

.service-card,
.feature-box,
.route-card,
.offer-card,
.review-card,
.partner-box,
.destination-card,
.process-card,
.why-box{

    transition:all .35s ease;

}

.service-card:hover,
.feature-box:hover,
.route-card:hover,
.offer-card:hover,
.review-card:hover,
.partner-box:hover,
.destination-card:hover,
.process-card:hover,
.why-box:hover{

    transform:translateY(-10px);

}
/*==================================================
RESPONSIVE - LARGE DEVICES
==================================================*/

@media(max-width:1200px){

.service-container{
grid-template-columns:1fr 480px;
gap:40px;
}

.service-content h1{
font-size:52px;
}

.airline-grid{
grid-template-columns:repeat(3,1fr);
}

.partner-grid{
grid-template-columns:repeat(3,1fr);
}

.service-grid,
.feature-grid,
.why-grid,
.process-grid{
grid-template-columns:repeat(2,1fr);
}

.route-grid,
.destination-grid,
.offer-grid,
.review-grid{
grid-template-columns:repeat(2,1fr);
}

}

/*==================================================
TABLET
==================================================*/

@media(max-width:991px){

section{
padding:70px 0;
}

.service-container{
grid-template-columns:1fr;
gap:50px;
}

.service-content{
text-align:center;
}

.service-content h1{
font-size:44px;
}

.service-content p{
font-size:18px;
margin:auto auto 30px;
}

.hero-features{
display:inline-block;
text-align:left;
}

.hero-buttons{
justify-content:center;
}

.service-form{
max-width:700px;
margin:auto;
}

.call-strip{
flex-direction:column;
text-align:center;
gap:25px;
}

.newsletter-box{
padding:40px;
}

.newsletter-form{
flex-direction:column;
}

.newsletter-form button{
width:100%;
height:60px;
}

.flight-cta h2,
.hotel-cta h2,
.taxi-cta h2,
.bus-cta h2,
.rail-cta h2,
.cruise-cta h2,
.final-flight-cta h2{
font-size:40px;
}

}

/*==================================================
MOBILE
==================================================*/

@media(max-width:768px){

section{
padding:60px 0;
}

.service-overlay{
padding:80px 0;
min-height:auto;
}

.service-hero{
min-height:auto;
}

.section-heading{
margin-bottom:40px;
}

.section-heading h2{
font-size:30px;
line-height:1.3;
}

.section-heading p{
font-size:16px;
}

.service-content h1{
font-size:34px;
}

.service-content p{
font-size:17px;
}

.hero-buttons{
flex-direction:column;
}

.btn-primary,
.btn-whatsapp{
width:100%;
}

.trip-tabs{
flex-direction:column;
}

.form-row{
grid-template-columns:1fr;
}

.service-grid,
.feature-grid,
.why-grid,
.process-grid,
.route-grid,
.destination-grid,
.offer-grid,
.review-grid,
.airline-grid,
.partner-grid{
grid-template-columns:1fr;
}

.destination-card img{
height:220px;
}

.service-form{
padding:25px;
}

.newsletter-box{
padding:30px 20px;
}

.newsletter-box h2{
font-size:28px;
}

.newsletter-box p{
font-size:16px;
}

.call-strip{
padding:30px;
}

.call-strip h2{
font-size:28px;
}

.call-strip p{
font-size:16px;
}

.flight-cta h2,
.hotel-cta h2,
.taxi-cta h2,
.bus-cta h2,
.rail-cta h2,
.cruise-cta h2,
.final-flight-cta h2{
font-size:30px;
}

.flight-cta p,
.hotel-cta p,
.taxi-cta p,
.bus-cta p,
.rail-cta p,
.cruise-cta p,
.final-flight-cta p{
font-size:16px;
}

}

/*==================================================
SMALL MOBILE
==================================================*/

@media(max-width:480px){

.container{
padding:0 15px;
}

.service-content h1{
font-size:28px;
}

.service-badge{
font-size:13px;
padding:8px 16px;
}

.hero-features li{
font-size:16px;
}

.service-form{
padding:20px;
border-radius:16px;
}

.service-form h2{
font-size:26px;
}

.service-form input,
.service-form select,
.service-form button{
height:52px;
}

.section-heading h2{
font-size:26px;
}

.section-heading span{
font-size:12px;
}

.process-number{
width:60px;
height:60px;
font-size:22px;
}

.service-icon,
.why-icon{
width:70px;
height:70px;
font-size:32px;
}

}

/*==================================================
COMMON ANIMATIONS
==================================================*/

.fade-up{
animation:fadeUp .8s ease both;
}

.fade-left{
animation:fadeLeft .8s ease both;
}

.fade-right{
animation:fadeRight .8s ease both;
}

.zoom-in{
animation:zoomIn .8s ease both;
}

@keyframes fadeUp{

from{
opacity:0;
transform:translateY(40px);
}

to{
opacity:1;
transform:translateY(0);
}

}

@keyframes fadeLeft{

from{
opacity:0;
transform:translateX(-40px);
}

to{
opacity:1;
transform:translateX(0);
}

}

@keyframes fadeRight{

from{
opacity:0;
transform:translateX(40px);
}

to{
opacity:1;
transform:translateX(0);
}

}

@keyframes zoomIn{

from{
opacity:0;
transform:scale(.9);
}

to{
opacity:1;
transform:scale(1);
}

}

/*==================================================
CUSTOM SCROLLBAR
==================================================*/

::-webkit-scrollbar{
width:10px;
}

::-webkit-scrollbar-track{
background:#f1f1f1;
}

::-webkit-scrollbar-thumb{
background:#0B56C5;
border-radius:20px;
}

::-webkit-scrollbar-thumb:hover{
background:#083b87;
}

/*==================================================
ABOUT PAGE
==================================================*/

.about-hero{
    background:linear-gradient(135deg,#f8fbff,#ffffff);
}

.about-hero .service-overlay{
    background:transparent;
    min-height:650px;
    padding:0px 0;
}

.about-hero .service-container{
    grid-template-columns:1.1fr .9fr;
    align-items:center;
    gap:70px;
}

.about-hero .service-content{
    color:#222;
}

.about-hero .service-badge{
    background:#edf4ff;
    color:#0B56C5;
    font-weight:700;
}

.about-hero .service-content h1{
    color:#0B56C5;
    max-width:650px;
    line-height:1.15;
    margin-bottom:25px;
}

.about-hero .service-content p{
    color:#666;
    font-size:19px;
    line-height:1.9;
    max-width:620px;
}

.about-hero .hero-features{
    margin:35px 0;
}

.about-hero .hero-features li{
    color:#333;
    padding:10px 0;
    font-size:17px;
}

.about-hero .hero-features i{
    color:#0B56C5;
    margin-right:12px;
}

.about-image{
    text-align:center;
}

.about-image img{
    width:100%;
    max-width:600px;
    border-radius:24px;
    border:8px solid #fff;
    box-shadow:0 25px 60px rgba(0,0,0,.15);
    transition:.4s;
}

.about-image img:hover{
    transform:scale(1.02);
}

.about-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:center;
}

.about-text h3{
    font-size:34px;
    color:#0B56C5;
    margin-bottom:20px;
}

.about-text p{
    font-size:17px;
    line-height:1.9;
    color:#666;
    margin-bottom:18px;
}

.about-list{
    margin-top:25px;
}

.about-list li{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:18px;
    color:#333;
    font-size:17px;
}

.about-list i{
    width:42px;
    height:42px;
    border-radius:50%;
    background:#edf4ff;
    color:#0B56C5;
    display:flex;
    align-items:center;
    justify-content:center;
}

.mission-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;
}

.mission-box{
    background:#fff;
    border-radius:22px;
    padding:40px;
    box-shadow:0 12px 35px rgba(0,0,0,.08);
    transition:.35s;
}

.mission-box:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 45px rgba(0,0,0,.12);
}

.mission-box h3{
    font-size:28px;
    color:#0B56C5;
    margin-bottom:18px;
}

.mission-box p{
    color:#666;
    line-height:1.9;
}

.about-cta{
    padding:60px 0 80px;
}

.about-cta-box{
    max-width:900px;
    margin:auto;
    text-align:center;
    padding:50px 60px;
    background:rgba(11,86,197,.05);
    border:1px solid rgba(11,86,197,.12);
    border-radius:24px;
}

.about-cta-box span{
    display:inline-block;
    padding:8px 20px;
    background:#edf4ff;
    color:#0B56C5;
    border-radius:30px;
    font-size:14px;
    font-weight:600;
    margin-bottom:20px;
}

.about-cta-box h2{
    font-size:42px;
    color:#0B56C5;
    margin-bottom:18px;
}

.about-cta-box p{
    max-width:700px;
    margin:0 auto 35px;
    color:#666;
    line-height:1.8;
}

.about-cta .hero-buttons{
    justify-content:center;
}

@media(max-width:991px){

.about-hero .service-overlay{
    min-height:auto;
}

.about-hero .service-container,
.about-grid,
.mission-grid{
    grid-template-columns:1fr;
    gap:40px;
}

.about-hero .service-content{
    text-align:center;
}

.about-hero .service-content h1,
.about-hero .service-content p{
    max-width:100%;
}

.about-hero .hero-features{
    display:inline-block;
    text-align:left;
}

.about-image{
    margin-top:20px;
}

.about-cta-box{
    padding:35px 25px;
}

.about-cta-box h2{
    font-size:30px;
}

}

@media(max-width:768px){

.about-hero .service-overlay{
    padding:50px 0;
}

.about-hero .service-content h1{
    font-size:34px;
}

.about-hero .service-content p{
    font-size:17px;
}

.about-image img{
    max-width:100%;
}

}

/*==================================================
ABOUT CTA
==================================================*/

.about-cta{
    padding:40px 0 70px;
}

.about-cta-box{

    max-width:900px;
    margin:auto;
    text-align:center;
    padding:50px 60px;

    background:rgba(11,86,197,.05);

    border:1px solid rgba(11,86,197,.12);

    border-radius:22px;

}

.about-cta-box span{

    display:inline-block;
    padding:8px 20px;

    background:#edf4ff;

    color:#0B56C5;

    border-radius:30px;

    font-size:14px;

    font-weight:600;

    margin-bottom:18px;

}

.about-cta-box h2{

    font-size:42px;

    color:#0B56C5;

    margin-bottom:18px;

}

.about-cta-box p{

    max-width:650px;

    margin:0 auto 30px;

    color:#666;

    line-height:1.8;

}

.about-cta .hero-buttons{

    justify-content:center;

}

@media(max-width:768px){

.about-cta-box{

padding:35px 25px;

}

.about-cta-box h2{

font-size:30px;

}

}

/*==================================
VISA CHECKLIST
==================================*/

.checklist-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;
    margin-top:50px;
}

.checklist-box{
    background:#fff;
    border-radius:18px;
    padding:35px;
    box-shadow:0 12px 35px rgba(0,0,0,.08);
}

.checklist-box ul{
    list-style:none;
    margin:0;
    padding:0;
}

.checklist-box li{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:18px;
    font-size:17px;
    color:#333;
}

.checklist-box li:last-child{
    margin-bottom:0;
}

.checklist-box i{
    color:#0B56C5;
    font-size:18px;
}

.visa-note{
    margin-top:35px;
    padding:18px 22px;
    background:#edf4ff;
    border-left:4px solid #0B56C5;
    border-radius:10px;
    color:#555;
    line-height:1.8;
}

.visa-note i{
    color:#0B56C5;
    margin-right:8px;
}

@media(max-width:991px){

.checklist-grid{
    grid-template-columns:1fr;
}

}
/*==================================
VISA CHECKLIST
==================================*/

.checklist-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;
    margin-top:50px;
}

.checklist-box{
    background:#fff;
    border-radius:18px;
    padding:35px;
    box-shadow:0 12px 35px rgba(0,0,0,.08);
}

.checklist-box ul{
    list-style:none;
    margin:0;
    padding:0;
}

.checklist-box li{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:18px;
    font-size:17px;
    color:#333;
}

.checklist-box li:last-child{
    margin-bottom:0;
}

.checklist-box i{
    color:#0B56C5;
    font-size:18px;
}

.visa-note{
    margin-top:35px;
    padding:18px 22px;
    background:#edf4ff;
    border-left:4px solid #0B56C5;
    border-radius:10px;
    color:#555;
    line-height:1.8;
}

.visa-note i{
    color:#0B56C5;
    margin-right:8px;
}

@media(max-width:991px){

.checklist-grid{
    grid-template-columns:1fr;
}

}

/*==================================
VISA HELP FAQ
==================================*/

.visahelp-section{

    padding:90px 0;
    background:#F8FAFD;

}

.visahelp-wrapper{

    max-width:900px;
    margin:50px auto 0;

}

.visahelp-item{

    background:#fff;
    border-radius:14px;
    margin-bottom:18px;
    overflow:hidden;
    box-shadow:0 8px 20px rgba(0,0,0,.08);

}

.visahelp-question{

    width:100%;
    border:none;
    background:#fff;
    padding:22px 25px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    cursor:pointer;
    font-size:18px;
    font-weight:600;
    color:#0B53C0;
    text-align:left;

}

.visahelp-question span{

    flex:1;

}

.visahelp-question i{

    color:#0B53C0;
    transition:.35s;

}

.visahelp-answer{

    max-height:0;
    overflow:hidden;
    transition:max-height .35s ease;

}

.visahelp-answer p{

    padding:0 25px 25px;
    margin:0;
    color:#666;
    line-height:1.8;

}

.visahelp-item.active .visahelp-answer{

    max-height:250px;

}

.visahelp-item.active .visahelp-question i{

    transform:rotate(45deg);
    color:#FF9800;

}
/*==================================
Country Search Css
==================================*/

.ts-control{

    border:1px solid #DDE6F3 !important;

    border-radius:10px !important;

    min-height:52px !important;

    padding:10px 14px !important;

    box-shadow:none !important;

}

.ts-control:focus{

    border-color:#0B53C0 !important;

    box-shadow:0 0 0 4px rgba(11,83,192,.12) !important;

}

.ts-dropdown{

    border-radius:10px !important;

    overflow:hidden;

}

.ts-dropdown .active{

    background:#0B53C0 !important;

    color:#fff !important;

}
/*==================================
VISA COUNTRY GRID
==================================*/
.visa-country-card{

    background:#fff;

    border-radius:14px;

    overflow:hidden;

    box-shadow:0 8px 20px rgba(0,0,0,.08);

    transition:.35s;

    min-height:280px;

}

.visa-country-card img{

    width:100%;

    height:140px;

    object-fit:cover;

}

.visa-country-card h3{

    font-size:18px;

    margin:15px 15px 8px;

}

.visa-country-card p{

    font-size:13px;

    margin:0 15px 15px;

    min-height:38px;

}

.visa-country-btn{

    margin:0 15px 18px;

    display:inline-block;

    padding:10px 18px;

    font-size:14px;

}

.visa-country-btn:hover{

    background:#FF9800;

}

@media(max-width:1200px){

    .visa-country-grid{

        grid-template-columns:repeat(3,1fr);

    }

}

@media(max-width:768px){

    .visa-country-grid{

        grid-template-columns:repeat(2,1fr);

    }

}

@media(max-width:576px){

    .visa-country-grid{

        grid-template-columns:1fr;

    }

}

/*==================================
VISA FAQ
==================================*/

.visa-faq-section{

    padding:90px 0;
    background:#F8FAFD;

}

.visa-faq-wrapper{

    max-width:900px;
    margin:50px auto 0;

}

.visa-faq-item{

    background:#fff;
    border-radius:14px;
    margin-bottom:18px;
    overflow:hidden;
    box-shadow:0 8px 20px rgba(0,0,0,.08);

}

.visa-faq-question{

    width:100%;
    border:none;
    background:#fff;
    padding:22px 25px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    cursor:pointer;
    font-size:18px;
    font-weight:600;
    color:#0B53C0;
    text-align:left;

}

.visa-faq-question span{

    flex:1;

}

.visa-faq-question i{

    color:#0B53C0;
    transition:.35s;

}

.visa-faq-answer{

    max-height:0;
    overflow:hidden;
    transition:max-height .35s ease;

}

.visa-faq-answer p{

    padding:0 25px 25px;
    margin:0;
    color:#666;
    line-height:1.8;

}

.visa-faq-item.active .visa-faq-answer{

    max-height:250px;

}

.visa-faq-item.active .visa-faq-question i{

    transform:rotate(45deg);
    color:#FF9800;

}
/*==================================
OUR OFFICE BRANCHES
==================================*/
.office-grid{

    display:grid;
    grid-template-columns:repeat(2,380px);
    justify-content:center;
    gap:35px;

}

.office-card{

    width:380px;
    min-height:560px;

    background:#fff;
    border-radius:22px;

    padding:35px 25px;

    text-align:center;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

    transition:.35s;

}

.office-icon{

    width:70px;
    height:70px;

    margin:0 auto 20px;

    background:#EEF4FF;

    border-radius:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:28px;

    color:#0B53C0;

}

.office-card h3{

    font-size:24px;
    color:#0B53C0;
    margin:15px 0;

}

.office-card p{

    font-size:17px;
    line-height:1.8;
    color:#555;

}

.office-buttons{

    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:10px;

    margin-top:25px;

}

.office-buttons a{

    width:150px;       /* Pehle 100% tha */
    height:46px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:10px;

    font-size:16px;
    font-weight:600;

    text-decoration:none;

    transition:.3s;

}

.office-map{

background:#FFB300;
color:#111 !important;

}

.office-call{

background:#0B53C0;
color:#fff !important;

}

.office-whatsapp{

background:#25D366;
color:#fff !important;

}
/*==================================
CONTACT FAQ
==================================*/

.flight-faq{

    padding:90px 0;
    background:#F8FAFD;

}

.flight-faq .section-heading{

    text-align:center;
    margin-bottom:50px;

}

.flight-faq .container{

    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;

}

.flight-faq .section-heading{

    grid-column:1/-1;

}

.flight-faq .faq-item{

    background:#fff;

    padding:30px 25px;

    border-radius:18px;

    text-align:center;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.35s;

    border-top:4px solid #0B53C0;

}

.flight-faq .faq-item:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(11,83,192,.18);

}

.flight-faq .faq-item h3{

    font-size:22px;

    color:#0B53C0;

    margin-bottom:18px;

    line-height:1.4;

}

.flight-faq .faq-item p{

    color:#666;

    font-size:16px;

    line-height:1.8;

    margin:0;

}

/* Tablet */

@media(max-width:991px){

.flight-faq .container{

    grid-template-columns:repeat(2,1fr);

}

}

/* Mobile */

@media(max-width:576px){

.flight-faq .container{

    grid-template-columns:1fr;

}

}

/*=============================
HOTEL PARTNER Css
==============================*/
.partner-box{

    background:#fff;
    border-radius:16px;
    padding:30px 20px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;

}

.partner-box:hover{

    transform:translateY(-8px);

}

.partner-box i{

    font-size:50px;
    color:#0B53C0;
    margin-bottom:18px;

}

.partner-box h4{

    font-size:22px;
    color:#333;
    font-weight:600;

}

/*====================================
RELATED SERVICES SWIPER
====================================*/

.relatedServices{

    position:relative;
    overflow:hidden;
    padding:20px 5px 20px;

}

.relatedServices .swiper-wrapper{

    align-items:stretch;

}

.relatedServices .swiper-slide{

    height:auto;
    display:flex;

}

.relatedServices .service-card{

    width:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    text-decoration:none;
    background:#fff;
    border-radius:20px;
    padding:35px 25px;
    box-shadow:0 10px 35px rgba(0,0,0,.08);
    transition:.35s;

}

.relatedServices .service-card:hover{

    transform:translateY(-8px);

}

.relatedServices .swiper-button-next,
.relatedServices .swiper-button-prev{

    color:#0B53C0;
    width:45px;
    height:45px;

}

.relatedServices .swiper-button-next:after,
.relatedServices .swiper-button-prev:after{

    font-size:22px;
    font-weight:700;

}

.relatedServices .swiper-pagination{

    bottom:0 !important;

}

.relatedServices .swiper-pagination-bullet{

    width:10px;
    height:10px;

}

.relatedServices .swiper-pagination-bullet-active{

    background:#0B53C0;

}
/*====================================
BUS CATEGORIES
====================================*/

.bus-categories{

    padding:90px 0;
    background:#F8FAFD;

}

.category-grid{

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;

}

.category-card{

    background:#fff;
    border-radius:18px;
    padding:35px 30px;
    text-align:center;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.35s;

}

.category-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(11,83,192,.18);

}

.category-icon{

    width:80px;
    height:80px;

    margin:0 auto 20px;

    border-radius:50%;

    background:#EEF4FF;

    display:flex;
    align-items:center;
    justify-content:center;

}

.category-icon i{

    font-size:34px;
    color:#0B53C0;

}

.category-card h3{

    font-size:24px;
    color:#0B53C0;
    margin-bottom:15px;

}

.category-card p{

    color:#666;
    font-size:16px;
    line-height:1.8;

}

@media(max-width:991px){

.category-grid{

    grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:576px){

.category-grid{

    grid-template-columns:1fr;

}

}
/*====================================
INSURANCE CTA
====================================*/

.insurance-cta{

    padding:90px 0;
    background:linear-gradient(135deg,#0B53C0,#083B8A);
    text-align:center;

}

.insurance-cta h2{

    color:#fff;
    font-size:42px;
    margin-bottom:20px;

}

.insurance-cta p{

    color:#EAF2FF;
    font-size:18px;
    max-width:760px;
    margin:0 auto 35px;
    line-height:1.8;

}

.insurance-cta .cta-features{

    margin-top:30px;
    display:flex;
    justify-content:center;
    gap:35px;
    flex-wrap:wrap;

}

.insurance-cta .cta-features span{

    color:#fff;
    font-size:16px;
    font-weight:600;

}

.insurance-cta .cta-features i{

    color:#FFB300;
    margin-right:8px;

}
/*============================
INQUIRY 
=============================*/
.popup-overlay{
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.65);
    justify-content:center;
    align-items:center;
    z-index:999999;
}

.popup-box{
    width:420px;
    max-width:92%;
    background:#fff;
    border-radius:15px;
    padding:30px;
    position:relative;
    box-shadow:0 15px 40px rgba(0,0,0,.25);
    animation:popup .3s ease;
}

@keyframes popup{
from{
transform:scale(.8);
opacity:0;
}
to{
transform:scale(1);
opacity:1;
}
}

.popup-box h3{
    margin:0 0 8px;
    text-align:center;
    font-size:24px;
    color:#0056b3;
}

.popup-box p{
    text-align:center;
    color:#666;
    margin-bottom:20px;
    font-size:14px;
}

.popup-box input{
    width:100%;
    height:48px;
    margin-bottom:15px;
    border:1px solid #ddd;
    border-radius:8px;
    padding:0 15px;
    font-size:15px;
    outline:none;
    box-sizing:border-box;
}

.popup-box input:focus{
    border-color:#0d6efd;
}

.popup-box button{
    width:100%;
    height:48px;
    border:none;
    border-radius:8px;
    background:#ff6b00;
    color:#fff;
    font-size:16px;
    font-weight:600;
    cursor:pointer;
    transition:.3s;
}

.popup-box button:hover{
    background:#e65c00;
}

#closePopup{
    position:absolute;
    top:12px;
    right:15px;
    font-size:26px;
    cursor:pointer;
    color:#888;
}

#closePopup:hover{
    color:#000;
}
/*============================
package-details.Css
==============================*/
.package-hero{
padding:70px 0;
background:#f8f9fa;
}

.package-hero h1{
font-size:42px;
font-weight:700;
margin-bottom:15px;
}

.package-hero img{
border-radius:12px;
width:100%;
}

.package-hero .card{
border:none;
border-radius:12px;
overflow:hidden;
}
.package-gallery{
    width:100%;
    height:220px;
    object-fit:cover;
    transition:.3s;
    border-radius:10px;
}

.package-gallery:hover{
    transform:scale(1.05);
}
.itinerary-box{
    display:flex;
    gap:25px;
    background:#fff;
    margin-bottom:25px;
    border-radius:12px;
    padding:25px;
    box-shadow:0 5px 20px rgba(0,0,0,.08);
}

.day-number{
    width:90px;
    height:90px;
    background:#0B53C0;
    color:#fff;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    font-weight:bold;
    font-size:18px;
    flex-shrink:0;
}

.day-content h4{
    margin-bottom:12px;
    color:#0B53C0;
}

.day-content p{
    margin:0;
    line-height:1.8;
}

@media(max-width:768px){

.itinerary-box{
    flex-direction:column;
    text-align:center;
}

.day-number{
    margin:auto;
}

}
.list-group-item{
font-size:16px;
padding:14px;
}

.card-header{
padding:18px;
}

.card{
border-radius:12px;
overflow:hidden;
margin-bottom:25px;
}

/*==================================
live package grid
====================================*/
.live-package-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(340px,1fr));
gap:30px;
margin-top:40px;
}

.live-package-card{
background:#fff;
border-radius:18px;
overflow:hidden;
box-shadow:0 10px 30px rgba(0,0,0,.08);
transition:.35s;
}

.live-package-card:hover{
transform:translateY(-8px);
}

.live-package-image{
width:100%;
height:240px;
object-fit:cover;
display:block;
}

.live-package-content{
padding:22px;
}

.live-package-content h3{
font-size:24px;
font-weight:700;
color:#163b73;
margin-bottom:15px;
line-height:1.4;
}

.package-meta{
margin-bottom:10px;
font-size:15px;
color:#666;
}

.package-location{
color:#666;
margin-bottom:18px;
}

.package-footer{
display:flex;
justify-content:space-between;
align-items:center;
margin-top:20px;
}

.package-price{
font-size:28px;
font-weight:700;
color:#ff6b00;
}

.live-package-btn{
background:#0b5ed7;
color:#fff;
padding:12px 18px;
border-radius:8px;
text-decoration:none;
font-weight:600;
transition:.3s;
}

.live-package-btn:hover{
background:#0849a8;
color:#fff;
}

@media(max-width:768px){

.live-package-grid{
grid-template-columns:1fr;
}

.package-footer{
flex-direction:column;
gap:15px;
align-items:flex-start;
}

.live-package-btn{
width:100%;
text-align:center;
}

}

.live-package-card{
    display:flex;
    flex-direction:column;
}

.live-package-content{
    display:flex;
    flex-direction:column;
    flex:1;
}

.package-footer{
    margin-top:auto;
}

.live-package-image{
    height:240px;
    object-fit:cover;
}
/*================================
package detailist
=================================*/
.rt-container{

width:92%;

max-width:1320px;

margin:auto;

}

.rt-package-hero{

padding:70px 0;

background:#fff;

}

.rt-package-top{

display:grid;

grid-template-columns:2fr 380px;

gap:45px;

align-items:start;

margin-bottom:35px;

}

.rt-theme{

display:inline-block;

background:#eef5ff;

color:#0b53c0;

padding:8px 18px;

border-radius:30px;

font-weight:600;

margin-bottom:18px;

}

.rt-package-left h1{

font-size:48px;

line-height:1.2;

font-weight:800;

color:#163b73;

margin-bottom:20px;

}

.rt-meta{

display:flex;

gap:25px;

flex-wrap:wrap;

margin-bottom:25px;

font-weight:600;

}

.rt-meta span{

color:#444;

}

.rt-package-left p{

font-size:17px;

line-height:1.9;

color:#666;

}

.rt-book-card{

background:#fff;

border-radius:20px;

padding:35px;

box-shadow:0 20px 45px rgba(0,0,0,.08);

position:sticky;

top:100px;

}

.rt-book-card h2{

font-size:42px;

margin-bottom:25px;

color:#0b53c0;

}

.rt-book-meta{

margin-bottom:25px;

}

.rt-book-meta div{

display:flex;

justify-content:space-between;

padding:12px 0;

border-bottom:1px solid #eee;

}

.rt-btn-primary{

display:block;

text-align:center;

background:#0b53c0;

color:#fff;

padding:15px;

border-radius:10px;

font-weight:700;

margin-bottom:15px;

text-decoration:none;

}

.rt-btn-whatsapp{

display:block;

text-align:center;

background:#25d366;

color:#fff;

padding:15px;

border-radius:10px;

font-weight:700;

text-decoration:none;

}

.rt-banner img{

width:100%;

height:550px;

object-fit:cover;

border-radius:20px;

}

@media(max-width:992px){

.rt-package-top{

grid-template-columns:1fr;

}

.rt-package-left h1{

font-size:34px;

}

.rt-banner img{

height:300px;

}

}
/* Gallery */

.rt-gallery-section{

padding:70px 0;

}

.rt-section-title{

text-align:center;

margin-bottom:45px;

}

.rt-section-title h2{

font-size:38px;

font-weight:800;

color:#163b73;

margin-bottom:10px;

}

.rt-section-title p{

color:#666;

font-size:18px;

}

.rt-gallery-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:20px;

}

.rt-gallery-item{

overflow:hidden;

border-radius:18px;

display:block;

}

.rt-gallery-item img{

width:100%;

height:240px;

object-fit:cover;

transition:.4s;

display:block;

}

.rt-gallery-item:hover img{

transform:scale(1.08);

}

/* Itinerary */

.rt-itinerary{

padding:70px 0;

background:#f8fbff;

}

.rt-day-card{

display:flex;

gap:30px;

margin-bottom:35px;

align-items:flex-start;

}

.rt-day-circle{

width:95px;

height:95px;

background:#0b53c0;

color:#fff;

border-radius:50%;

display:flex;

flex-direction:column;

justify-content:center;

align-items:center;

flex-shrink:0;

font-weight:700;

box-shadow:0 10px 25px rgba(11,83,192,.25);

}

.rt-day-circle span{

font-size:14px;

}

.rt-day-circle strong{

font-size:32px;

line-height:1;

}

.rt-day-content{

background:#fff;

border-radius:18px;

padding:30px;

flex:1;

box-shadow:0 10px 30px rgba(0,0,0,.06);

}

.rt-day-content h3{

font-size:24px;

color:#163b73;

margin-bottom:15px;

}

.rt-day-content p{

line-height:1.9;

color:#666;

margin:0;

}

@media(max-width:992px){

.rt-gallery-grid{

grid-template-columns:repeat(2,1fr);

}

.rt-day-card{

flex-direction:column;

}

.rt-day-circle{

margin:auto;

}

}

@media(max-width:600px){

.rt-gallery-grid{

grid-template-columns:1fr;

}

}
/* Bottom Layout */

.rt-bottom-section{

padding:80px 0;

background:#fff;

}

.rt-bottom-grid{

display:grid;

grid-template-columns:2fr 360px;

gap:40px;

align-items:start;

}

.rt-card{

background:#fff;

padding:35px;

border-radius:20px;

box-shadow:0 15px 40px rgba(0,0,0,.06);

margin-bottom:35px;

}

.rt-card h2{

font-size:32px;

margin-bottom:25px;

color:#163b73;

}

.rt-service-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:15px;

}

.rt-service-item{

background:#f5f8fd;

padding:18px;

border-radius:10px;

font-weight:600;

}

.rt-term{

padding-bottom:20px;

margin-bottom:20px;

border-bottom:1px solid #eee;

}

.rt-term:last-child{

border:none;

margin:0;

padding:0;

}

.rt-term h4{

margin-bottom:10px;

color:#163b73;

}

.rt-form-grid{

display:grid;

gap:18px;

}

.rt-form-grid input,

.rt-form-grid textarea{

width:100%;

padding:15px;

border:1px solid #ddd;

border-radius:10px;

font-size:16px;

}

.rt-form-grid button{

background:#0b53c0;

color:#fff;

padding:16px;

border:none;

border-radius:10px;

font-size:18px;

font-weight:700;

cursor:pointer;

}

.rt-sidebar{

position:sticky;

top:100px;

}

.rt-contact-card{

background:#163b73;

color:#fff;

padding:35px;

border-radius:20px;

}

.rt-contact-card h2{

font-size:42px;

margin:20px 0;

color:#fff;

}

.rt-contact-card ul{

padding:0;

margin-top:25px;

list-style:none;

}

.rt-contact-card li{

padding:10px 0;

border-bottom:1px solid rgba(255,255,255,.15);

}

.rt-contact-card li:last-child{

border:none;

}

.rt-contact-card .rt-btn-primary,

.rt-contact-card .rt-btn-whatsapp{

display:block;

text-align:center;

margin-top:15px;

text-decoration:none;

padding:14px;

border-radius:10px;

font-weight:700;

}

.rt-contact-card .rt-btn-primary{

background:#fff;

color:#163b73;

}

.rt-contact-card .rt-btn-whatsapp{

background:#25D366;

color:#fff;

}

@media(max-width:992px){

.rt-bottom-grid{

grid-template-columns:1fr;

}

.rt-sidebar{

position:static;

}

.rt-service-grid{

grid-template-columns:1fr;

}

}
.rt-package-info{

display:flex;

gap:25px;

flex-wrap:wrap;

margin:25px 0;

font-weight:600;

color:#555;

}

.rt-package-info i{

color:#f4b400;

margin-right:6px;

}

.rt-hero-buttons{

display:flex;

gap:15px;

margin-top:25px;

}
.rt-banner{

position:relative;

}

.rt-banner-overlay{

position:absolute;

left:35px;

bottom:35px;

background:rgba(0,0,0,.55);

padding:20px 28px;

border-radius:12px;

color:#fff;

backdrop-filter:blur(8px);

}

.rt-banner-overlay h3{

margin:0;

font-size:30px;

}

.rt-banner-overlay p{

margin-top:8px;

}
.rt-book-features{

margin:25px 0;

}

.rt-book-features div{

padding:12px 0;

border-bottom:1px solid #ececec;

font-weight:600;

}
.rt-gallery-item{

position:relative;

overflow:hidden;

}

.rt-gallery-item::after{

content:'View';

position:absolute;

left:50%;

top:50%;

transform:translate(-50%,-50%);

background:#0b53c0;

color:#fff;

padding:12px 24px;

border-radius:40px;

opacity:0;

transition:.4s;

}

.rt-gallery-item:hover::after{

opacity:1;

}

.rt-gallery-item:hover img{

transform:scale(1.1);

filter:brightness(.75);

}
.rt-day-card{

transition:.35s;

}

.rt-day-card:hover{

transform:translateY(-6px);

box-shadow:0 18px 45px rgba(0,0,0,.12);

}
.rt-form-grid button{

font-size:19px;

font-weight:700;

transition:.35s;

}

.rt-form-grid button:hover{

transform:translateY(-3px);

box-shadow:0 15px 30px rgba(11,83,192,.35);

}
.rt-trust{

padding:70px 0;

background:#0b53c0;

color:#fff;

margin:80px 0;

}

.rt-trust-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

text-align:center;

}

.rt-trust h3{

font-size:42px;

margin-bottom:10px;

}
