/* =========================
PROFESSIONAL TOUR CSS
========================= */

body{
background:#07152d;
font-family:'Poppins',sans-serif;
}

.tour-section{
padding:20px;
}

.section-heading{
font-size:32px;
font-weight:700;
text-align:center;
margin-bottom:25px;
color:#fff;
}

.tour-grid{
display:grid;
grid-template-columns:1fr;
gap:20px;
}

.tour-card{
background:#0f2347;
border-radius:22px;
overflow:hidden;
box-shadow:0 8px 30px rgba(0,0,0,.25);
transition:.3s;
border:1px solid rgba(255,255,255,.08);
}

.tour-card:hover{
transform:translateY(-5px);
}

.tour-card img{
width:100%;
height:220px;
object-fit:cover;
}

.tour-content{
padding:18px;
}

.tour-content h3{
font-size:22px;
margin-bottom:10px;
color:#fff;
}

.tour-content p{
font-size:14px;
line-height:1.7;
color:#cfcfcf;
margin-bottom:15px;
}

.tour-content a{
display:inline-block;
padding:12px 20px;
background:linear-gradient(45deg,#1e90ff,#00bfff);
border-radius:12px;
font-size:14px;
font-weight:600;
color:#fff;
transition:.3s;
}

.tour-content a:hover{
transform:scale(1.05);
}

/* MOBILE */

@media(max-width:768px){

.section-heading{
font-size:26px;
}

.tour-card img{
height:200px;
}

}

/* =========================
MOBILE RESPONSIVE FULL FIX
PASTE AT LAST OF STYLE
========================= */

@media screen and (max-width:768px){

body{
overflow-x:hidden;
}

.container{
width:100%;
max-width:100%;
overflow:hidden;
}

/* SECTION */

.section{
padding:15px;
}

.section-title{
font-size:32px;
line-height:1.3;
margin-bottom:20px;
}

/* VIDEO */

.video-frame{
height:220px;
}

/* LOGO */

.logo{
width:110px;
height:110px;
}

.brand{
font-size:24px;
line-height:1.4;
}

.owner{
font-size:18px;
}

/* ABOUT */

.about{
font-size:14px;
line-height:1.8;
}

/* SOCIAL */

.socials{
gap:10px;
}

.socials a{
width:50px;
height:50px;
font-size:20px;
}

/* CONTACT */

.contact-card{
flex-direction:row;
align-items:center;
padding:15px;
}

.contact-icon{
width:55px;
height:55px;
font-size:22px;
flex-shrink:0;
}

.contact-card h3{
font-size:18px;
}

.contact-card p{
font-size:14px;
line-height:1.6;
}

/* QR */

.qr-box img{
width:100%;
max-width:240px;
}

/* SERVICES */

.service{
margin-bottom:20px;
}

.service img{
height:220px;
}

.service-content h3{
font-size:22px;
}

.service-content p{
font-size:14px;
line-height:1.7;
}

/* TOUR SECTION */

.tour-section{
padding:15px;
}

.section-heading{
font-size:30px;
line-height:1.3;
margin-bottom:20px;
text-align:center;
}

.tour-grid{
display:grid;
grid-template-columns:1fr;
gap:20px;
}

.tour-card{
width:100%;
overflow:hidden;
border-radius:20px;
}

.tour-card img{
width:100%;
height:220px;
object-fit:cover;
}

.tour-content{
padding:15px;
}

.tour-content h3{
font-size:22px;
margin-bottom:10px;
}

.tour-content p{
font-size:14px;
line-height:1.7;
margin-bottom:15px;
}

.tour-content a{
display:block;
text-align:center;
padding:14px;
border-radius:12px;
background:#1e90ff;
}

/* HAPPY CUSTOMERS */

.gallery{
display:grid;
grid-template-columns:1fr;
gap:15px;
}

.gallery img{
width:100%;
height:220px;
object-fit:cover;
border-radius:20px;
}

/* TESTIMONIALS */

.testimonial{
padding:18px;
border-radius:18px;
margin-bottom:15px;
}

.testimonial p{
font-size:14px;
line-height:1.7;
}

/* INSTAGRAM */

.insta-grid{
display:grid;
grid-template-columns:1fr;
gap:15px;
}

.insta-grid video{
width:100%;
height:220px;
object-fit:cover;
background:#000;
border-radius:20px;
}

/* BLOGS */

.blog{
padding:18px;
border-radius:18px;
margin-bottom:15px;
}

.blog h3{
font-size:20px;
margin-bottom:10px;
}

.blog p{
font-size:14px;
}

/* HOURS */

.hours{
display:flex;
flex-direction:column;
gap:8px;
padding:18px;
border-radius:18px;
}

.hours h3{
font-size:20px;
}

.hours p{
font-size:15px;
}

/* MAP */

.map{
margin-top:10px;
}

.map iframe{
width:100%;
height:250px;
border-radius:20px;
}

/* FORM */

form{
padding:18px;
border-radius:20px;
}

input,
textarea{
width:100%;
font-size:15px;
padding:14px;
border-radius:12px;
margin-bottom:15px;
}

textarea{
height:120px;
}

button{
width:100%;
padding:15px;
font-size:16px;
border-radius:14px;
}

/* BUTTON */

.main-btn{
padding:15px;
font-size:16px;
border-radius:15px;
}

/* FOOTER */

.footer{
padding:20px 15px;
font-size:13px;
line-height:1.8;
}

}

/* ===================================
DESKTOP + MOBILE PERFECT GALLERY FIX
REMOVE OLD .gallery CSS
AND PASTE THIS
=================================== */

.gallery{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:18px;
margin-top:20px;
}

.gallery img{
width:100%;
height:280px;
object-fit:cover;
border-radius:24px;
transition:.4s;
box-shadow:0 10px 30px rgba(0,0,0,.25);
}

.gallery img:hover{
transform:scale(1.03);
}

/* MOBILE */

@media(max-width:768px){

.gallery{
grid-template-columns:1fr;
gap:15px;
}

.gallery img{
height:240px;
border-radius:20px;
}

}

/* ===================================
INSTAGRAM FEED PROFESSIONAL FIX
REMOVE OLD .insta-grid CSS
=================================== */

.insta-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:18px;
margin-top:20px;
}

.insta-grid video{
width:100%;
height:320px;
object-fit:cover;
border-radius:24px;
background:#000;
box-shadow:0 10px 30px rgba(0,0,0,.25);
}

/* MOBILE */

@media(max-width:768px){

.insta-grid{
grid-template-columns:1fr;
gap:15px;
}

.insta-grid video{
height:260px;
border-radius:20px;
}

}

/* ===================================
INSTAGRAM FEED PROFESSIONAL FIX
REMOVE OLD .insta-grid CSS
=================================== */

.insta-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:18px;
margin-top:20px;
}

.insta-grid video{
width:100%;
height:320px;
object-fit:cover;
border-radius:24px;
background:#000;
box-shadow:0 10px 30px rgba(0,0,0,.25);
}

/* MOBILE */

@media(max-width:768px){

.insta-grid{
grid-template-columns:1fr;
gap:15px;
}

.insta-grid video{
height:260px;
border-radius:20px;
}

}

/* ===================================
BLOG + HOURS + MAP FIX
=================================== */

#blogs,
#hours{
display:flex;
flex-direction:column;
gap:18px;
margin-top:20px;
}

.blog{
background:#102447;
padding:22px;
border-radius:22px;
transition:.3s;
}

.blog:hover{
transform:translateY(-3px);
}

.blog h3{
font-size:22px;
margin-bottom:10px;
}

.blog p{
font-size:14px;
line-height:1.7;
}

.hours{
background:#102447;
padding:20px;
border-radius:20px;
display:flex;
justify-content:space-between;
align-items:center;
}

.hours h3{
font-size:20px;
}

.hours p{
font-size:15px;
}

.map{
margin-top:20px;
}

.map iframe{
width:100%;
height:350px;
border:none;
border-radius:24px;
}

/* MOBILE */

@media(max-width:768px){

.hours{
flex-direction:column;
align-items:flex-start;
gap:8px;
}

.map iframe{
height:250px;
border-radius:20px;
}

.blog{
padding:18px;
}

}
.video-frame{
    width:100%;
    max-width:600px;
    margin:auto;
    padding:10px;
}

.video-frame iframe{
    width:100%;
    height:315px;
    border-radius:25px;
    border:3px solid #2b7cff;
    box-shadow:0 0 20px rgba(0,0,0,0.4);
}
.video-frame iframe{
    aspect-ratio:16/9;
    height:auto;
}


/* =========================
TESTIMONIALS CSS
PASTE IN STYLE.CSS
========================= */

.testimonials-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:20px;
margin-top:25px;
}

.testimonial-card{
background:#102447;
padding:25px;
border-radius:25px;
box-shadow:0 10px 30px rgba(0,0,0,.25);
transition:.4s;
}

.testimonial-card:hover{
transform:translateY(-5px);
}

.stars{
color:#FFD700;
font-size:20px;
margin-bottom:15px;
}

.testimonial-card p{
font-size:15px;
line-height:1.8;
color:#d7d7d7;
margin-bottom:15px;
}

.testimonial-card h4{
font-size:17px;
color:#fff;
}

/* MOBILE */

@media(max-width:768px){

.testimonials-grid{
grid-template-columns:1fr;
gap:15px;
}

.testimonial-card{
padding:20px;
border-radius:20px;
}

.testimonial-card p{
font-size:14px;
}

}

/* =========================
INSTAGRAM FEED PROFESSIONAL
========================= */

.instagram-box{
margin-top:20px;
background:#102447;
padding:15px;
border-radius:25px;
overflow:hidden;
box-shadow:0 10px 30px rgba(0,0,0,.25);
}

/* MOBILE */

@media(max-width:768px){

.instagram-box{
padding:10px;
border-radius:20px;
}

}

/* =========================
REMOVE ELFSIGHT BRANDING
========================= */

.eapps-widget-toolbar{
display:none !important;
}

.global-styles,
[class*="WidgetBackground__Container-sc"]{
display:none !important;
}

a[href*="elfsight.com"]{
display:none !important;
visibility:hidden !important;
opacity:0 !important;
height:0 !important;
}

/* =========================
REMOVE ELFSIGHT WATERMARK
========================= */

.eapps-link,
.eapps-widget-toolbar,
.eapps-instagram-feed-posts-slider-load-more,
.es-widget-branding,
[class*="eapps-widget-toolbar"],
[class*="WidgetBackground__Container"],
a[href*="elfsight.com"]{
display:none !important;
visibility:hidden !important;
opacity:0 !important;
height:0 !important;
width:0 !important;
overflow:hidden !important;
pointer-events:none !important;
}

/* =========================
TRAVEL BLOGS CSS
PASTE IN style.css
========================= */

.blogs-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:20px;
margin-top:25px;
}

.blog-card{
background:#102447;
border-radius:25px;
overflow:hidden;
transition:.4s;
box-shadow:0 10px 30px rgba(0,0,0,.25);
}

.blog-card:hover{
transform:translateY(-5px);
}

.blog-card img{
width:100%;
height:220px;
object-fit:cover;
}

.blog-content{
padding:20px;
}

.blog-content h3{
font-size:22px;
margin-bottom:12px;
color:#fff;
line-height:1.4;
}

.blog-content p{
font-size:14px;
line-height:1.8;
color:#d7d7d7;
margin-bottom:15px;
}

.blog-content span{
color:#1e90ff;
font-weight:600;
font-size:15px;
}

/* MOBILE */

@media(max-width:768px){

.blogs-grid{
grid-template-columns:1fr;
gap:15px;
}

.blog-card img{
height:220px;
}

.blog-content{
padding:18px;
}

.blog-content h3{
font-size:20px;
}

.blog-content p{
font-size:14px;
}

}

/* =========================
BUSINESS HOURS PERFECT MOBILE + DESKTOP
OLD HOURS CSS REMOVE KARO
YE PASTE KARO
========================= */

.business-hours{
display:flex;
flex-direction:column;
gap:18px;
margin-top:25px;
width:100%;
}

/* CARD */

.hour-card{
width:100%;
display:flex;
align-items:center;
gap:20px;
padding:22px;
background:#102447;
border-radius:26px;
border:1px solid rgba(255,255,255,.08);
box-shadow:0 10px 30px rgba(0,0,0,.20);
transition:.4s;
}

/* HOVER */

.hour-card:hover{
transform:translateY(-3px);
border-color:#1e90ff;
}

/* ICON */

.hour-icon{
width:72px;
height:72px;
min-width:72px;
background:#1d3767;
border-radius:22px;
display:flex;
align-items:center;
justify-content:center;
font-size:30px;
color:#fff;
}

/* TEXT */

.hour-content{
width:100%;
}

.hour-content h3{
font-size:26px;
font-weight:600;
margin-bottom:8px;
color:#49a6ff;
}

.hour-content p{
font-size:21px;
font-weight:600;
color:#fff;
line-height:1.5;
}

/* =========================
TABLET
========================= */

@media(max-width:992px){

.hour-card{
padding:20px;
gap:18px;
}

.hour-icon{
width:65px;
height:65px;
min-width:65px;
font-size:26px;
}

.hour-content h3{
font-size:22px;
}

.hour-content p{
font-size:18px;
}

}

/* =========================
MOBILE VIEW
========================= */

@media(max-width:768px){

.business-hours{
gap:15px;
}

.hour-card{
padding:16px;
gap:14px;
border-radius:22px;
align-items:center;
}

.hour-icon{
width:58px;
height:58px;
min-width:58px;
font-size:22px;
border-radius:18px;
}

/* TEXT */

.hour-content h3{
font-size:20px;
margin-bottom:5px;
line-height:1.3;
}

.hour-content p{
font-size:16px;
line-height:1.5;
word-break:break-word;
}

/* FULL WIDTH */

.hour-content{
width:100%;
}

/* REMOVE OVERFLOW */

body{
overflow-x:hidden;
}

.container{
width:100%;
max-width:100%;
overflow:hidden;
}

}

/* =========================
SMALL MOBILE
========================= */

@media(max-width:480px){

.hour-card{
padding:14px;
gap:12px;
}

.hour-icon{
width:52px;
height:52px;
min-width:52px;
font-size:20px;
}

.hour-content h3{
font-size:18px;
}

.hour-content p{
font-size:15px;
}

}

/* =========================
DESKTOP + MOBILE PERFECT
========================= */

.container{
width:100%;
max-width:520px;
margin:auto;
padding-bottom:40px;
}

/* DESKTOP */

@media(min-width:992px){

.container{
max-width:700px;
}

.gallery img{
height:320px;
}

.insta-grid video{
height:380px;
}

}

/* MOBILE */

@media(max-width:768px){

.container{
max-width:100%;
padding:0 14px 30px;
}

.section{
padding:14px 0;
}

.section-title{
font-size:30px;
}

.gallery img,
.service img,
.tour-card img,
.blog-card img{
height:240px;
}

.insta-grid video{
height:280px;
}

}