/*====================================================================
   Custom CSS File for most of Desktop and Mobile look for Kipya Template
   Developed by Amazing LWEGATECH LTD team.
===================================================================**/

:root {
	/* Font Variables */
	--kpy-font: "Raleway", sans-serif;           
	--kpy-font-2: "Playfair Display", serif;
	--kpy-font-3: "Montserrat", sans-serif;
	
	/* Original Color Variables (kept for compatibility) */
	--kpy-base: var(--kpy-logo-red);
	--kpy-base-rgb: var(--kpy-logo-red-rgb);
	--kpy-yellow: #fcd20a;
	--kpy-yellow-rgb: 252, 210, 10;
	--kpy-green: #87c441;
	--kpy-green-rgb: 135, 196, 65;
	--kpy-grey: #7f7873;
	--kpy-grey-rgb: 127, 120, 115;
	--kpy-white: #ffffff;
	--kpy-white-rgb: 255, 255, 255;
	--kpy-black: #333;
	--kpy-black-rgb: 51, 51, 51;
	--kpy-primary: var(--kpy-logo-blue);
	--kpy-primary-rgb: var(--kpy-logo-blue-rgb);
	
	/* Root Variables */
        :root {
            --primary-blue: #2B5AA0;
            --primary-blue-rgb: 43, 90, 160;
            --accent-yellow: #FFC107;
            --accent-yellow-rgb: 255, 193, 7;
            --dark-blue: #1E3A5F;
            --dark-blue-rgb: 30, 58, 95;
            --text-dark: #2C2C2C;
            --text-light: #666666;
            --text-muted: #999999;
            --background-light: #F5F8FA;
            --white: #FFFFFF;
            --border-light: #E5E5E5;
            --transition: all 0.3s ease;
            --shadow-sm: 0 4px 6px rgba(0, 0, 0, 0.1);
            --shadow-md: 0 10px 15px rgba(0, 0, 0, 0.1);
            --shadow-lg: 0 20px 25px rgba(0, 0, 0, 0.1);
            --radius-sm: 4px;
            --radius-md: 8px;
            --radius-lg: 12px;
            --radius-xl: 16px;
            --radius-full: 9999px;
        }
	
	/* Typography Settings */
	--kpy-font-size: 17px;
	--kpy-heading-color: var(--kpy-logo-dark-blue);
	--kpy-body-color: var(--kpy-black);
}

/* Global Body Styles */
html, body {
    font: 500 var(--kpy-font-size)/1.6 var(--kpy-font) !important;
    color: var(--kpy-body-color);
    text-rendering: auto;
    height: 100vh;
    margin: 0;
    font-optical-sizing: auto;
}

/* Global Heading Styles */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: var(--kpy-font-playful-2) !important;
    color: var(--kpy-heading-color);
    line-height: 1.2;
    font-weight: 700;
}

/* Specific heading sizes */
h1, .h1 { font-size: 2.5rem; }
h2, .h2 { font-size: 2rem; font-weight: 600; }
h3, .h3 { font-size: 1.75rem; font-weight: 600; }
h4, .h4 { font-size: 1.5rem; font-weight: 500; }
h5, .h5 { font-size: 1.25rem; font-weight: 500; }
h6, .h6 { font-size: 1rem; font-weight: 500; }

/* Utility Classes */
.text-primary     { color: var(--kpy-primary) !important; }
.text-logo-blue   { color: var(--kpy-logo-blue) !important; }
.text-logo-red    { color: var(--kpy-logo-red) !important; }
.bg-primary       { background-color: var(--kpy-primary) !important; }
.bg-logo-blue     { background-color: var(--kpy-logo-blue) !important; }


/** =========================================================
Fading Effects
==========================================================**/
@keyframes fadeUp {
  0% {opacity: 0;transform: translateY(30px);}
  100% {opacity: 1;transform: translateY(0);}}
.fade-up {opacity: 0; transform: translateY(30px);}
.fade-up.animate {animation: fadeUp 0.8s ease-out forwards;}


/** =========================================================
Home page call to action
==========================================================**/

.call-to-action{
    background: url(https://lwegatech.net/beaute-sauvage-safaris/wp-content/uploads/2025/07/singapore-2.jpg);
    background-size: cover;
    background-attachment: fixed;
    height:300px;
    color:var(--kpy-white);
}

/** ==========================================================
page.php Styles
===========================================================**/

.parallax-hero { position: relative; height: 350px; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.parallax-bg { position: absolute; top: -20%; left: 0; width: 100%; height: 120%; background-attachment: fixed; background-position: center center; background-repeat: no-repeat; background-size: cover; will-change: transform; z-index: 1; animation: zoomIn 20s ease-out infinite alternate; }
@keyframes zoomIn { 0% { transform: scale(1); } 100% { transform: scale(1.1); } }
.hero-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.2) 100%); z-index: 2; }
.hero-content { position: relative; z-index: 3; text-align: center; color: #fff; padding: 2rem; max-width: 800px; margin: 0 auto; }
.hero-title { font-size: 3rem; font-weight: 700; margin-bottom: 1rem; text-shadow: 2px 2px 4px rgba(0,0,0,0.5); line-height: 1.2; }
.hero-excerpt { font-size: 1.1rem; line-height: 1.6; margin-bottom: 1.5rem; text-shadow: 1px 1px 2px rgba(0,0,0,0.5); opacity: 0.9; }
.hero-line { position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background-color: #fff; z-index: 4; }

/* Responsive adjustments */
@media (max-width: 768px) {
    .parallax-hero { height: 400px; }
    .hero-title { font-size: 2.2rem; }
    .hero-excerpt { font-size: 1rem; }
    .parallax-bg { background-attachment: scroll; }
}

@media (max-width: 480px) {
    .parallax-hero { height: 350px; }
    .hero-title { font-size: 1.8rem; }
    .hero-excerpt { font-size: 0.9rem; }
}

/* Animation styles */
.fade-up { opacity: 0; transform: translateY(50px); animation: fadeUp 1.2s ease-out forwards; }
.fade-up.delay-1 { animation-delay: 0.3s; }
.fade-up.delay-2 { animation-delay: 0.6s; }
@keyframes fadeUp { 0% { opacity: 0; transform: translateY(50px); } 100% { opacity: 1; transform: translateY(0); } }

/* Additional text animation */
.hero-title { animation-duration: 1.5s; }
.hero-excerpt { opacity: 0; animation-duration: 1.3s; }

	
/** ==========================================================
Header Section
===========================================================**/

 /* ================== TOP INFO BAR ================== */
.top-header { background: #1e3a8a; color: #fff; padding: 8px 0; font-size: 14px; position: relative; }
.top-info-container { display: flex; justify-content: space-between; align-items: center; max-width: 1400px; margin: 0 auto; padding: 0 20px; }
.top-left-contact { display: flex; align-items: center; gap: 30px; }
.top-contact-item { display: flex; align-items: center; gap: 8px; color: #fff; text-decoration: none; transition: color 0.3s ease; font-size: 14px; font-weight: 400; }
.top-contact-item:hover { color: #fbbf24; }
.top-contact-item i { font-size: 16px; }
.top-right-social { display: flex; align-items: center; gap: 12px; }
.social-text { color: #fff; font-size: 14px; margin-right: 12px; font-weight: 500; }
.top-social-links { display: flex; gap: 10px; }
.top-social-link { color: #fff; width: 32px; height: 32px; border-radius: 6px; display: flex; align-items: center; justify-content: center; transition: all 0.3s ease; font-size: 16px; text-decoration: none; background: rgba(255,255,255,0.1); }
.top-social-link:hover { background: #fbbf24; color: #fff; transform: translateY(-2px); }

/* ================== MAIN HEADER ================== */
.main-header { background: #fff; padding: 0; box-shadow: 0 2px 15px rgba(0,0,0,0.1); position: sticky; top: 0; z-index: 1000; }
.header-container { display: flex; align-items: center; justify-content: space-between; max-width: 1400px; margin: 0 auto; padding: 0 20px; min-height: 70px; }

/* Logo Section */
.logo-section { flex: 0 0 auto; display: flex; align-items: center; }
.logo-section img { height: 50px; width: auto; max-width: 180px; }
.logo-section h1, .logo-section a { font-size: 24px; font-weight: bold; color: #1e3a8a; text-decoration: none; margin: 0; line-height: 1; display: flex; align-items: center; }
.logo-section a:hover { color: #fbbf24; }

/* Navigation Section  */
.navigation-section { flex: 1; display: flex; justify-content: center; margin: 0 30px; }
.main-nav { display: flex; align-items: center; justify-content: center; width: 100%; }

/* NAVBAR NAV  */
.navbar-nav { display: flex !important; flex-direction: row !important; gap: 30px; margin: 0; padding: 0; list-style: none; align-items: center;}

/* OVERRIDE ANY BOOTSTRAP FLEX-COLUMN */
.navbar-nav.flex-column { flex-direction: row !important; }

.navbar-nav .nav-item { position: relative; display: flex; align-items: center;justify-content:center;}
.navbar-nav .nav-link { color: #1e3a8a; text-decoration: none; font-weight: 500; font-size: 19px; padding: 10px 0; transition: all 0.3s ease; white-space: nowrap; display: block; text-align: center; }
.navbar-nav .nav-link:hover { color: #1e40af; }

/* Dropdown Styling */
.navbar-nav .dropdown-menu { position: absolute; top: 100%; left: 50%; transform: translateX(-50%); background: #fff; width: 200px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1); border-radius: 0; opacity: 0; visibility: hidden; transition: all 0.3s ease; z-index: 100; margin: 0; border: 1px solid #e5e7eb; }
.navbar-nav .dropdown-menu::before { display: none; }
.navbar-nav .dropdown-item { display: inline-block; padding: 2px 20px 2px 20px; color: #374151; text-decoration: none; font-size: 14px; font-weight: 400; transition: all 0.2s ease; position: relative; border-bottom: 1px solid #f3f4f6; width: 100%; }
.navbar-nav .dropdown-item:last-child { border-bottom: none; }
.navbar-nav .dropdown-item:hover { color: #2563eb; background: #eff6ff; }

/* Dropdown Styling - Custom Style */
.navbar-nav .custom-dropdown { position: relative; }
.navbar-nav .custom-dropdown-menu { position: absolute; top: 100%; left: 50%; transform: translateX(-50%); background: #fff; width: 200px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1); border-radius: 0; opacity: 0; visibility: hidden; transition: all 0.3s ease; z-index: 100; padding: 0; margin: 0; border: 1px solid #e5e7eb; }
.navbar-nav .custom-dropdown:hover .custom-dropdown-menu { opacity: 1; visibility: visible; }
.navbar-nav .nav-link:hover { background-color: #1e3a8a !important; color: #fff !important; transition: all 0.3s ease; border-radius: 4px; padding: 8px 12px !important; margin: 2px; display: inline-block;  width: 100%; }
.navbar-nav .dropdown-item:hover { color: #fff; background: #1e3a8a; border-radius: 4px; margin: 2px 8px; }

/* ================== MOBILE MENU STYLES ================== */

/* Unique Animated Hamburger Menu - Circular Design */
.mobile-menu-toggle { background: #1e3a8a !important; color: #fff !important; border: 2px solid #1e3a8a !important; border-radius: 50%; padding: 12px; font-size: 18px; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; box-shadow: 0 4px 12px rgba(30, 58, 138, 0.3); }

.mobile-menu-toggle:hover { background: #1e40af !important; border-color: #1e40af !important; transform: scale(1.1) rotate(180deg); box-shadow: 0 6px 20px rgba(30, 58, 138, 0.4); }

.mobile-menu-toggle:focus { outline: none; box-shadow: 0 0 0 3px rgba(30, 58, 138, 0.3), 0 4px 12px rgba(30, 58, 138, 0.3); }

.mobile-menu-toggle svg { width: 22px; height: 22px; transition: all 0.3s ease; }

.mobile-menu-toggle:hover svg { transform: rotate(-180deg); }

.mobile-menu-toggle.active { transform: scale(1.1) rotate(360deg); background: #dc2626 !important; border-color: #dc2626 !important; }

.mobile-menu-toggle.active svg { transform: rotate(180deg) scale(0.8); }

/* Bootstrap Offcanvas Customization */
.offcanvas { background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%); border: none; box-shadow: -10px 0 30px rgba(0, 0, 0, 0.15); }

.offcanvas-header { background: #1e3a8a; color: #fff; padding: 20px 25px; border-bottom: 3px solid #fbbf24; position: relative; }

.offcanvas-header::after { content: ''; position: absolute; bottom: -3px; left: 0; width: 100%; height: 3px; background: linear-gradient(90deg, #fbbf24, #f59e0b, #fbbf24); }
.offcanvas-title { font-size: 20px; font-weight: 600; color: #fff; margin: 0; }
.btn-close { background: transparent; border: none; color: #fff; font-size: 18px; padding: 8px; border-radius: 50%; transition: all 0.3s ease; opacity: 1; }
.btn-close:hover { background: rgba(255, 255, 255, 0.2); transform: rotate(90deg); }
.offcanvas-body { padding: 25px; }

/* Mobile Navigation Styling */
.mobile-nav .navbar-nav { display: flex !important; flex-direction: column !important; gap: 0; padding: 0; margin: 0; list-style: none; }
.mobile-nav .nav-item { border-bottom: 1px solid rgba(30, 58, 138, 0.1); margin: 0; transition: all 0.3s ease; }
.mobile-nav .nav-item:last-child { border-bottom: none; }
.mobile-nav .nav-item:hover { background: rgba(30, 58, 138, 0.05); border-radius: 8px; margin: 2px 0; }
.mobile-nav .nav-link { color: #1e3a8a !important; text-decoration: none; font-weight: 500; font-size: 16px; padding: 18px 15px; display: block; width: 100%; border-radius: 8px; margin: 0; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); position: relative; }
.mobile-nav .nav-link::before { content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 4px; height: 0; background: #fbbf24; transition: height 0.3s ease; border-radius: 2px; }
.mobile-nav .nav-link:hover { color: #fff !important; background: linear-gradient(135deg, #1e3a8a, #1e40af) !important; padding: 18px 15px 18px 25px !important; transform: translateX(5px); box-shadow: 0 4px 15px rgba(30, 58, 138, 0.3); }
.mobile-nav .nav-link:hover::before { height: 60%; }
/* Mobile Dropdown Styles */
.mobile-nav .dropdown { position: relative; }
.mobile-nav .mobile-dropdown-toggle::after { content: '▼'; float: right; font-size: 12px; color: #64748b; transition: all 0.3s ease; }
.mobile-nav .dropdown.active .mobile-dropdown-toggle::after { transform: rotate(180deg); color: #fbbf24; }
.mobile-nav .dropdown-menu { position: static; display: none; width: 100%; background: rgba(248, 250, 252, 0.8); box-shadow: inset 0 2px 10px rgba(30, 58, 138, 0.1); border: none; border-radius: 8px; padding: 10px 0; margin: 8px 0 8px 20px; opacity: 1; visibility: visible; transform: none; backdrop-filter: blur(10px); }
.mobile-nav .dropdown.active .dropdown-menu { display: block; animation: slideDown 0.4s cubic-bezier(0.4, 0, 0.2, 1) forwards; }
.mobile-nav .dropdown-item { color: #475569 !important; padding: 12px 20px; font-size: 14px; border-bottom: none; width: 100%; margin: 0; border-radius: 6px; transition: all 0.3s ease; position: relative; }
.mobile-nav .dropdown-item::before { content: '→'; position: absolute; left: 8px; opacity: 0; transition: all 0.3s ease; color: #fbbf24; }
.mobile-nav .dropdown-item:hover { color: #fff !important; background: linear-gradient(135deg, #fbbf24, #f59e0b) !important; margin: 2px 8px; transform: translateX(5px); padding-left: 28px !important; }
.mobile-nav .dropdown-item:hover::before { opacity: 1; left: 12px; }

/* Mobile Book Now Button */
.mobile-book-now { padding: 25px 0 15px; border-top: 2px solid rgba(30, 58, 138, 0.1); margin-top: 25px; }
.btn-book-now { background: linear-gradient(135deg, #fbbf24, #f59e0b); border: none; color: #1e3a8a; font-weight: 600; font-size: 16px; padding: 15px 30px; border-radius: 25px; width: 100%; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); text-transform: uppercase; letter-spacing: 1px; box-shadow: 0 4px 15px rgba(251, 191, 36, 0.3); }
.btn-book-now:hover { background: linear-gradient(135deg, #f59e0b, #fbbf24); color: #1e3a8a; transform: translateY(-3px); box-shadow: 0 8px 25px rgba(251, 191, 36, 0.4); }

/* Animation for dropdown */
@keyframes slideDown { from { opacity: 0; transform: translateY(-10px) scaleY(0.8); } to { opacity: 1; transform: translateY(0) scaleY(1); } }

/* Animation for menu opening */
@keyframes fadeInUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

.offcanvas.show .mobile-nav .nav-item { animation: fadeInUp 0.5s ease forwards; }
.offcanvas.show .mobile-nav .nav-item:nth-child(1) { animation-delay: 0.1s; }
.offcanvas.show .mobile-nav .nav-item:nth-child(2) { animation-delay: 0.15s; }
.offcanvas.show .mobile-nav .nav-item:nth-child(3) { animation-delay: 0.2s; }
.offcanvas.show .mobile-nav .nav-item:nth-child(4) { animation-delay: 0.25s; }
.offcanvas.show .mobile-nav .nav-item:nth-child(5) { animation-delay: 0.3s; }
.offcanvas.show .mobile-nav .nav-item:nth-child(6) { animation-delay: 0.35s; }
.offcanvas.show .mobile-nav .nav-item:nth-child(7) { animation-delay: 0.4s; }
.offcanvas.show .mobile-nav .nav-item:nth-child(8) { animation-delay: 0.45s; }


/** ==========================================================
Romantic Package Styles
===========================================================**/


:root { --primary-color:#dc3545; --secondary-color:#007bff; --success-color:#28a745; --text-color:#333; --light-bg:#f9f9f9; --border-radius:8px; --box-shadow:0 5px 15px rgba(0,0,0,0.1); --transition:all 0.3s ease; }
.travel-services-panel { display:flex; max-width:1300px; margin:2rem auto; background:#fff; box-shadow:var(--box-shadow); overflow:hidden; min-height:400px; position:relative; }
.services-sidebar { width:280px; background:linear-gradient(135deg,#c94b4b 0%,#4b134f 100%); padding:2rem 0; display:flex; flex-direction:column; }
.sidebar-item { color:rgba(255,255,255,0.9); padding:1.2rem 1.5rem; display:flex; align-items:center; cursor:pointer; transition:var(--transition); border-left:4px solid transparent; font-size:1rem; margin:0.2rem 0; position:relative; overflow:hidden; }
.sidebar-item::before { content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:rgba(255,255,255,0.1); transition:var(--transition); }
.sidebar-item:hover { color:#fff; }
.sidebar-item:hover::before { left:0; }
.sidebar-item.active { background:rgba(255,255,255,0.15); color:#fff; border-left:4px solid #ff7e00; font-weight:500; }
.sidebar-item i { margin-right:1rem; font-size:1.2rem; width:1.5rem; text-align:center; }
.services-content { flex:1; padding:2.5rem; background:#fff; position:relative; }
.content-item { display:none; animation:fadeIn 0.4s ease-out forwards; }
.content-item.active { display:block; }
.package-card:hover { transform:translateY(-3px); box-shadow:0 8px 25px rgba(0,0,0,0.15); }
.package-card { transition:all 0.3s ease; }
@keyframes fadeIn { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:992px) { .travel-services-panel { flex-direction:column; max-width:95%; min-height:auto; } .services-sidebar { width:100%; flex-direction:row; flex-wrap:wrap; padding:0; } .sidebar-item { flex:1 1 180px; min-width:180px; justify-content:center; border-left:none; border-bottom:3px solid transparent; padding:1rem 0.5rem; margin:0; text-align:center; flex-direction:column; } .sidebar-item i { margin-right:0; margin-bottom:0.5rem; } .sidebar-item.active { border-left:none; border-bottom:3px solid #ff7e00; } .services-content { padding:1.5rem; } .packages-grid { grid-template-columns:repeat(2,1fr)!important; } }
@media(max-width:768px) { .packages-grid { grid-template-columns:1fr!important; } }



/** ==========================================================
Travel Package Styles
===========================================================**/

:root { --primary-color:#dc3545; --secondary-color:#007bff; --success-color:#28a745; --text-color:#333; --light-bg:#f9f9f9; --border-radius:8px; --box-shadow:0 5px 15px rgba(0,0,0,0.1); --transition:all 0.3s ease; }
.travel-services-panel { display:flex; max-width:1300px; margin:2rem auto; background:#fff; box-shadow:var(--box-shadow); overflow:hidden; min-height:400px; position:relative; }
.services-sidebar { width:280px; background:linear-gradient(135deg,#c94b4b 0%,#4b134f 100%); padding:2rem 0; display:flex; flex-direction:column; }
.sidebar-item { color:rgba(255,255,255,0.9); padding:1.2rem 1.5rem; display:flex; align-items:center; cursor:pointer; transition:var(--transition); border-left:4px solid transparent; font-size:1rem; margin:0.2rem 0; position:relative; overflow:hidden; }
.sidebar-item::before { content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:rgba(255,255,255,0.1); transition:var(--transition); }
.sidebar-item:hover { color:#fff; }
.sidebar-item:hover::before { left:0; }
.sidebar-item.active { background:rgba(255,255,255,0.15); color:#fff; border-left:4px solid #ff7e00; font-weight:500; }
.sidebar-item i { margin-right:1rem; font-size:1.2rem; width:1.5rem; text-align:center; }
.services-content { flex:1; padding:2.5rem; background:#fff; position:relative; }
.content-item { display:none; animation:fadeIn 0.4s ease-out forwards; }
.content-item.active { display:block; }
.package-card:hover { transform:translateY(-3px); box-shadow:0 8px 25px rgba(0,0,0,0.15); }
.package-card { transition:all 0.3s ease; }
@keyframes fadeIn { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:992px) { .travel-services-panel { flex-direction:column; max-width:95%; min-height:auto; } .services-sidebar { width:100%; flex-direction:row; flex-wrap:wrap; padding:0; } .sidebar-item { flex:1 1 180px; min-width:180px; justify-content:center; border-left:none; border-bottom:3px solid transparent; padding:1rem 0.5rem; margin:0; text-align:center; flex-direction:column; } .sidebar-item i { margin-right:0; margin-bottom:0.5rem; } .sidebar-item.active { border-left:none; border-bottom:3px solid #ff7e00; } .services-content { padding:1.5rem; } .packages-grid { grid-template-columns:repeat(2,1fr)!important; } }
@media(max-width:768px) { .packages-grid { grid-template-columns:1fr!important; } }




/** ==========================================================
Testimonial Styles
===========================================================**/

  /* Testimonials Carousel Styles */
.testimonial-carousel { position: relative; width: 100%; min-height: 500px; background: #1a2a4a !important; padding: 120px 20px 80px 20px; color: #fff !important; overflow: hidden; margin: 40px 0; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2); }
.testimonial-title { text-align: center; margin-bottom: 60px; }
.testimonial-title h2 { font-size: 2.5rem; font-weight: 700; color: #ffffff !important; margin: 0; text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); letter-spacing: 1px; }
.testimonial-container { max-width: 1200px; margin: 0 auto; position: relative; z-index: 2; display: flex; align-items: center; justify-content: center; min-height: 400px; }
.testimonial-slide { position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: 0; visibility: hidden; transition: all 0.8s ease-in-out; display: flex; align-items: center; justify-content: center; padding: 40px 0; }
.testimonial-slide.active { opacity: 1; visibility: visible; z-index: 1; }
.testimonial-image-col { flex: 0 0 40%; padding-right: 60px; display: flex; align-items: center; justify-content: center; }
.testimonial-image { width: 280px; height: 280px; border-radius: 50%; overflow: hidden; border: 4px solid rgba(255, 255, 255, 0.2); box-shadow: 0 15px 35px rgba(0, 0, 0, 0.3); transition: transform 0.3s ease; }
.testimonial-image img { width: 100%; height: 100%; object-fit: cover; }
.testimonial-content-col { flex: 1; padding-left: 60px; border-left: 2px solid rgba(255, 255, 255, 0.2); display: flex; flex-direction: column; justify-content: center; }
.testimonial-content { font-size: 22px; line-height: 1.6; color: rgba(255, 255, 255, 0.95) !important; margin-bottom: 30px; font-style: italic; position: relative; text-align: left; }
.testimonial-content::before { content: '"'; font-size: 80px; color: rgba(255, 255, 255, 0.15); position: absolute; top: -40px; left: -30px;  line-height: 1; }
.testimonial-author { font-weight: 700; font-size: 24px; color: #ffffff !important; margin-bottom: 8px; }
.testimonial-position { color: rgba(255, 255, 255, 0.8) !important; font-size: 18px; font-weight: 400; }
.testimonial-rating { margin: 20px 0; font-size: 24px; display: flex; gap: 4px; }
.testimonial-star { color: rgba(255, 255, 255, 0.3); }
.testimonial-star.filled { color: #ffb400; }
.no-testimonials { text-align: center; color: #64748b; font-size: 18px; padding: 60px 20px; background: #f8fafc; margin: 20px 0; }

/* Tablet Styles */
@media (max-width: 1024px) {
    .testimonial-carousel { min-height: 450px; padding: 100px 20px 60px 20px; }
    .testimonial-title h2 { font-size: 2.2rem !important; }
    .testimonial-container { min-height: 350px; }
    .testimonial-image { width: 250px; height: 250px; }
    .testimonial-image-col { padding-right: 50px; }
    .testimonial-content-col { padding-left: 50px; }
    .testimonial-content { font-size: 20px; }
    .testimonial-author { font-size: 22px; }
}

/* Mobile Styles */
@media (max-width: 768px) {
.testimonial-carousel { min-height: 650px; padding: 80px 15px 60px 15px; }
.testimonial-title h2 { font-size: 1.8rem !important; }
.testimonial-title { margin-bottom: 50px; }
.testimonial-container { min-height: 500px; }
.testimonial-slide { flex-direction: column; text-align: center; padding: 40px 0; justify-content: center; }
.testimonial-image-col { flex: 0 0 auto; padding-right: 0; margin-bottom: 40px; }
.testimonial-image { width: 200px; height: 200px; margin: 0 auto; }
.testimonial-content-col { padding-left: 0; border-left: none; border-top: 2px solid rgba(255, 255, 255, 0.2); padding-top: 30px; text-align: center; align-items: center; }
.testimonial-content { font-size: 18px; text-align: center; max-width: 90%; }
.testimonial-content::before { left: 50%; transform: translateX(-50%); top: -30px; font-size: 60px; }
.testimonial-author { font-size: 20px; text-align: center; }
.testimonial-position { font-size: 16px; text-align: center; }
.testimonial-rating { justify-content: center; margin: 15px 0; }
}

/* Small Mobile Styles */
@media (max-width: 480px) {
.testimonial-carousel { min-height: 600px; padding: 60px 10px 40px 10px; }
.testimonial-title h2 { font-size: 1.5rem !important; }
.testimonial-title { margin-bottom: 40px; }
.testimonial-container { min-height: 450px; }
.testimonial-slide { padding: 30px 0; }
.testimonial-image { width: 160px; height: 160px; }
.testimonial-content { font-size: 16px; margin-bottom: 25px; }
.testimonial-content::before { font-size: 50px; top: -25px; }
.testimonial-author { font-size: 18px; margin-bottom: 6px; }
.testimonial-position { font-size: 15px; }
.testimonial-rating { font-size: 20px; margin: 12px 0; }
}

/* Very Small Mobile Styles */
@media (max-width: 360px) {
    .testimonial-carousel { min-height: 550px; padding: 50px 8px 30px 8px; }
    .testimonial-title h2 { font-size: 1.3rem !important; }
    .testimonial-container { min-height: 400px; }
    .testimonial-image { width: 140px; height: 140px; }
    .testimonial-content { font-size: 15px; line-height: 1.5; }
    .testimonial-author { font-size: 17px; }
    .testimonial-position { font-size: 14px; }
}

/** ==========================================================
Preloader Styles
===========================================================**/
#preloader{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,#87CEEB 0%,#E0F7FA 100%);z-index:9999;display:flex;justify-content:center;align-items:center;overflow:hidden}
.island{position:relative;width:220px;height:120px}
.sand{position:absolute;bottom:0;width:100%;height:60px;background:#F4E7C3;border-radius:50% 50% 0 0;box-shadow:0 -8px 12px rgba(0,0,0,0.1)}
.palm-trees{position:absolute;bottom:50px;width:100%;display:flex;justify-content:center;gap:10px;z-index:2;padding:0 20px}
.palm-tree{font-size:42px;animation:sway 1.8s ease-in-out infinite alternate;transform-origin:bottom center;margin:0 -10px}
.palm-tree:nth-child(1){animation-delay:0.3s}
.palm-tree:nth-child(2){animation-delay:0.6s}
.palm-tree:nth-child(3){animation-delay:0s}
.airplane{position:absolute;font-size:36px;bottom:80px;left:-40px;animation:takeoff 1.5s ease-out forwards;z-index:3;transform:rotate(10deg)}
.brand-name{position:absolute;bottom:20px;width:100%;text-align:center;font-weight:700;font-size:20px;color:#5D4037;text-shadow:1px 1px 2px rgba(255,255,255,0.5);letter-spacing:1px}
.wave{position:absolute;bottom:50px;width:100%;height:15px;background:url('data:image/svg+xml;utf8,<svg viewBox="0 0 120 12" xmlns="http://www.w3.org/2000/svg"><path d="M0,0V6c12,2,24,4,40,4s32-2,40-4s24-2,40-2s32,2,40,4V0Z" fill="%23F4E7C3" opacity=".3"/></svg>');background-size:cover}@keyframes sway{0%{transform:rotate(-3deg)}100%{transform:rotate(3deg)}}@keyframes takeoff{0%{transform:translateX(0) translateY(0) rotate(10deg)}60%{transform:translateX(120px) translateY(-30px) rotate(0deg)}100%{transform:translateX(250px) translateY(-60px) rotate(-10deg);opacity:0}}
        
/** ==========================================================
Overview Styles
===========================================================**/
.overview-tp-travel-portal{line-height:1.6;color:#333;background-color:#f8fafc;overflow-x:hidden}
.overview-tp-container{max-width:1400px;margin:0 auto;padding:0 30px}
.overview-tp-about-section{padding:100px 0;background:linear-gradient(to bottom,#f8fafc,#ffffff);position:relative}
.overview-tp-content-container{display:flex;align-items:center;gap:80px;max-width:1300px;margin:0 auto;position:relative}
.overview-tp-content-card{flex:1.2;background:#fff;border-radius:20px;padding:50px;box-shadow:0 20px 40px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05);position:relative;overflow:hidden}
.overview-tp-content-card::before{content:'';position:absolute;top:0;left:0;width:5px;height:100%;background:linear-gradient(to bottom,#3b82f6,#ef4444)}
.overview-tp-content-header{color:#1e3a8a;font-size:2rem;font-weight:700;margin-bottom:20px;line-height:1.3}
.overview-tp-content-text p{font-size:1rem;line-height:1.8;color:#555;margin-bottom:20px}
.overview-tp-content-text .overview-hidden-content{display:none}
.overview-tp-read-more-btn{display:inline-block;background:linear-gradient(to right,#3b82f6,#ef4444);color:#fff;padding:12px 25px;border-radius:50px;font-weight:600;margin-top:15px;cursor:pointer;transition:all 0.3s ease;border:none;font-size:0.9rem;box-shadow:0 4px 15px rgba(59,130,246,0.3)}
.overview-tp-read-more-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(59,130,246,0.4)}
.overview-tp-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.8);z-index:1000;overflow-y:auto;padding:20px;box-sizing:border-box}
.overview-tp-modal-content{background:#fff;max-width:800px;margin:50px auto;padding:40px;border-radius:20px;position:relative;animation:fadeInUp 0.5s ease}
.overview-tp-modal-close{position:absolute;top:20px;right:20px;font-size:1.5rem;cursor:pointer;color:#64748b;transition:all 0.3s ease}
.overview-tp-modal-close:hover{color:#ef4444;transform:rotate(90deg)}.overview-tp-modal-header{font-size:1.8rem;color:#1e3a8a;margin-bottom:20px;font-weight:700}
.overview-tp-stats-section{padding:80px 0;background:#1e3a8a;color:#fff}
.overview-tp-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px;text-align:center}.overview-tp-stat-item{padding:30px 20px}
.overview-tp-stat-number{font-size:3rem;font-weight:700;color:#fbbf24;display:block;margin-bottom:10px}
.overview-tp-stat-label{font-size:1.1rem;opacity:0.9}@keyframes countUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.overview-tp-stat-number.animate{animation:countUp 0.8s ease-out}.overview-tp-destinations-section{padding:100px 0;background:linear-gradient(135deg,#f8fafc 0%,#e0f2fe 100%)}
.overview-tp-section-header{text-align:center;margin-bottom:60px}
.overview-tp-section-header h2{font-size:2.8rem;font-weight:700;color:#1e3a8a;margin-bottom:20px;letter-spacing:-0.02em}
.overview-tp-section-header p{font-size:1.2rem;color:#64748b;max-width:600px;margin:0 auto;line-height:1.6}
.overview-tp-destinations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-top:50px}
.overview-tp-destination-card{background:#fff;border-radius:20px;overflow:hidden;transition:all 0.3s ease;border:1px solid #e2e8f0;box-shadow:0 5px 15px rgba(0,0,0,0.05)}
.overview-tp-destination-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px rgba(0,0,0,0.1)}
.overview-tp-destination-image{height:200px;background-size:cover;background-position:center;position:relative}
.overview-tp-destination-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,0.6));color:#fff;padding:20px}
.overview-tp-destination-content{padding:25px}
.overview-tp-destination-content h3{font-size:1.3rem;color:#1e3a8a;margin-bottom:10px}
.overview-tp-destination-content p{color:#64748b;font-size:0.95rem;line-height:1.6}
.overview-tp-why-section{position:relative;padding:120px 0;background:linear-gradient(135deg,#1e3a8a 0%,#3b82f6 100%);color:#fff;text-align:center;overflow:hidden}
.overview-tp-why-content{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:0 20px}
.overview-tp-why-content h2{font-size:3rem;font-weight:700;margin-bottom:30px;text-shadow:2px 2px 4px rgba(0,0,0,0.3)}
.overview-tp-why-content p{font-size:1.2rem;line-height:1.8;margin-bottom:40px;opacity:0.95;max-width:800px;margin-left:auto;margin-right:auto}
.overview-tp-why-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-top:60px}
.overview-tp-why-feature{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);border-radius:15px;padding:40px 25px;transition:all 0.3s ease;backdrop-filter:blur(5px)}
.overview-tp-why-feature:hover{background:rgba(255,255,255,0.15);transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,0.2)}.overview-tp-why-feature .overview-icon{font-size:2.5rem;margin-bottom:20px;color:#ef4444;display:inline-block;transition:all 0.3s ease}
.overview-tp-why-feature:hover 
.overview-icon{transform:scale(1.1)}
.overview-tp-why-feature h3{font-size:1.3rem;margin-bottom:15px;color:#fff;font-weight:600}
.overview-tp-why-feature p{font-size:1rem;opacity:0.9;margin:0;color:rgba(255,255,255,0.9)}@keyframes float{0%,100%{transform:translateY(0) rotate(var(--rotation,0deg))}50%{transform:translateY(-15px) rotate(var(--rotation,0deg))}}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){
.overview-tp-content-container{flex-direction:column;gap:50px}
.overview-tp-content-card{padding:40px}.overview-tp-images-container{height:400px}
.overview-tp-image-card{width:220px;height:220px}
.overview-tp-why-features{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (max-width:768px){
    .overview-tp-content-card{padding:30px}
.overview-tp-content-header{font-size:1.8rem}
.overview-tp-section-header h2{font-size:2.2rem}
.overview-tp-why-content h2{font-size:2.5rem}}@media (max-width:576px){
.overview-tp-content-card{padding:25px 20px}
.overview-tp-images-container{height:300px;flex-direction:column;align-items:center;justify-content:center;margin-top:30px}
.overview-tp-image-card{position:relative;width:150px;height:150px;border-radius:50%;margin:10px;animation:none;transform:none !important;display:inline-block;top:auto !important;left:auto !important;right:auto !important;bottom:auto !important}
.overview-tp-image-card:hover{transform:scale(1.1) !important}
.overview-tp-why-content h2{font-size:2rem}
.overview-tp-why-features{grid-template-columns:1fr}}
.overview-tp-images-container { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; max-width: 600px; height: 600px; }
.overview-tp-image-card { position: relative; width: 500px; height: 600px; border-radius: 300px; overflow: hidden; background: transparent; }
.overview-tp-image-card img { width: 100%; height: 100%; object-fit: cover; border-radius: 300px; }

/* Responsive design */
@media (max-width: 768px) {
  .overview-tp-images-container { height: 500px; }
  .overview-tp-image-card { width: 400px; height: 500px; border-radius: 250px; }
  .overview-tp-image-card img { border-radius: 250px; }
}

@media (max-width: 480px) {
  .overview-tp-images-container { height: 400px; }
  .overview-tp-image-card { width: 300px; height: 400px; border-radius: 200px; }
  .overview-tp-image-card img { border-radius: 200px; }
}
       

/** ==========================================================
Affiliations Styles
===========================================================**/

.affiliations-section{background:linear-gradient(135deg,#f8fafc 0%,#e0f2fe 50%,#f8fafc 100%);padding:100px 0;position:relative;overflow:hidden;}
.affiliations-section::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:url('https://images.unsplash.com/photo-1551632811-561732d1e306?ixlib=rb-4.0.3&auto=format&fit=crop&w=2000&q=80') center/cover;opacity:0.03;pointer-events:none;}
.affiliations-container{max-width:1400px;margin:0 auto;padding:0 30px;position:relative;z-index:2;}
.affiliations-header{text-align:center;margin-bottom:80px;position:relative;}
.affiliations-header h2{color:#1e3a8a;font-size:3rem;margin-bottom:25px;font-weight:700;letter-spacing:-0.02em;position:relative;display:inline-block;}
.affiliations-header h2::after{content:'';position:absolute;bottom:-15px;left:50%;transform:translateX(-50%);width:100px;height:4px;background:linear-gradient(to right,#1e3a8a,#3b82f6,#fbbf24);border-radius:2px;}
.affiliations-header p{color:#64748b;font-size:1.3rem;line-height:1.7;max-width:800px;margin:30px auto 0;}
.affiliations-trust-badge{display:inline-flex;align-items:center;background:rgba(30,58,138,0.1);backdrop-filter:blur(10px);border:1px solid rgba(30,58,138,0.2);border-radius:10px;padding:12px 25px;margin-top:30px;color:#1e3a8a;font-weight:600;font-size:1rem;}
.affiliations-trust-badge::before{content:'🏆';margin-right:10px;font-size:1.2rem;}
.affiliations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-bottom:60px;}
.affiliations-card{background:rgba(255,255,255,0.9);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,0.2);border-radius:10px;padding:40px 30px;text-align:center;transition:all 0.4s ease;position:relative;overflow:hidden;min-height:320px;display:flex;flex-direction:column;justify-content:space-between;}
.affiliations-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--card-color),var(--card-color));transition:all 0.4s ease;}
.affiliations-card:hover{transform:translateY(-15px);background:rgba(255,255,255,0.95);}
.affiliations-card:hover::before{height:100%;opacity:0.05;}
.affiliations-logo-container{height:80px;display:flex;align-items:center;justify-content:center;margin-bottom:25px;position:relative;}
.affiliations-logo-image{max-width:100%;max-height:100%;object-fit:contain;filter:grayscale(100%);transition:all 0.3s ease;}
.affiliations-card:hover .affiliations-logo-image{filter:grayscale(0%);transform:scale(1.05);}
.affiliations-logo-placeholder{width:80px;height:80px;background:linear-gradient(135deg,var(--card-color),var(--card-color));border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:2rem;font-weight:700;transition:all 0.3s ease;}
.affiliations-card:hover .affiliations-logo-placeholder{transform:scale(1.1) rotate(5deg);}
.affiliations-content{flex-grow:1;display:flex;flex-direction:column;justify-content:center;}
.affiliations-card h3{color:#1e3a8a;margin-bottom:15px;font-size:1.3rem;font-weight:600;line-height:1.3;transition:color 0.3s ease;}
.affiliations-card:hover h3{color:var(--card-color);}
.affiliations-card p{color:#64748b;font-size:0.95rem;line-height:1.6;margin-bottom:20px;}
.affiliations-learn-more{display:inline-flex;align-items:center;color:var(--card-color);text-decoration:none;font-weight:600;font-size:0.9rem;opacity:0;transform:translateY(10px);transition:all 0.3s ease;}
.affiliations-card:hover .affiliations-learn-more{opacity:1;transform:translateY(0);}
.affiliations-learn-more::after{content:'→';margin-left:8px;transition:transform 0.3s ease;}
.affiliations-learn-more:hover::after{transform:translateX(5px);}
.affiliations-cta{text-align:center;background:rgba(30,58,138,0.05);border-radius:10px;padding:50px 40px;position:relative;overflow:hidden;}
.affiliations-cta::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(30,58,138,0.1),rgba(59,130,246,0.1),rgba(251,191,36,0.1));pointer-events:none;}
.affiliations-cta-content{position:relative;z-index:2;}
.affiliations-cta h3{color:#1e3a8a;font-size:2rem;font-weight:700;margin-bottom:20px;}
.affiliations-cta p{color:#64748b;font-size:1.1rem;line-height:1.7;max-width:600px;margin:0 auto 30px;}
.affiliations-cta-button{display:inline-block;background:linear-gradient(45deg,#1e3a8a,#3b82f6);color:#fff;padding:15px 35px;border-radius:10px;text-decoration:none;font-weight:600;font-size:1rem;transition:all 0.3s ease;border:none;cursor:pointer;}
.affiliations-cta-button:hover{transform:translateY(-3px);background:linear-gradient(45deg,#3b82f6,#fbbf24);color:#1e3a8a;text-decoration:none;}
@media (max-width:1024px){.affiliations-grid{grid-template-columns:repeat(2,1fr);gap:30px;}}
@media (max-width:768px){.affiliations-header h2{font-size:2.2rem;}.affiliations-header p{font-size:1.1rem;}.affiliations-grid{grid-template-columns:1fr;gap:25px;}.affiliations-card{padding:30px 25px;min-height:280px;}.affiliations-cta{padding:40px 30px;}.affiliations-cta h3{font-size:1.6rem;}}
@media (max-width:576px){.affiliations-section{padding:80px 0;}.affiliations-header h2{font-size:1.8rem;}.affiliations-card{padding:25px 20px;}}




/** =====================================================================
*Destinations Shortcode Styles
=======================================================================**/

.dest-detail-panel { max-width:1200px; margin:2rem auto; background:#fff; border-radius:12px; box-shadow:0 8px 30px rgba(0,0,0,0.1); overflow:hidden; }

/* Override to remove container borders and make tabs touch hero */
.dest-detail-panel {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-radius: 0 !important;
}

.dest-tabs { display:none; }
.dest-tab-item { display:none; }
.dest-tab-content { min-height:auto; }
.dest-tab-pane { display:block; padding:2rem; animation:none; }
.dest-tab-pane.active { display:block; }
@keyframes destFadeIn { from { transform:translateY(20px); } to { opacity:1; transform:translateY(0); } }

/* Overview section - 50/50 column layout */
.overview-content { display:grid; grid-template-columns:1fr 1fr; gap:2rem; align-items:start; }
.overview-text { order:2; padding-left:1rem; }
.map-container { order:1; padding-right:1rem; }

.dest-places-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(350px,1fr)); gap:2rem; }
.dest-place-card { background:#fff; border-radius:12px; overflow:hidden; box-shadow:0 4px 20px rgba(0,0,0,0.08); transition:all 0.3s ease; }
.dest-place-card:hover { transform:translateY(-5px); box-shadow:0 8px 30px rgba(0,0,0,0.15); }
.dest-place-image { height:200px; overflow:hidden; }
.dest-place-image img { width:100%; height:100%; object-fit:cover; transition:transform 0.3s ease; }
.dest-place-card:hover .dest-place-image img { transform:scale(1.05); }
.dest-place-content { padding:1.5rem; }
.place-content { padding:1.5rem; }
.place-content h3 { margin:0 0 1rem; color:#333; font-size:1.25rem; font-weight:600; }
.place-content p { color:#666; line-height:1.6; margin:0; }

/* Popular destinations - smaller package cards */
.packages-grid { display:grid !important; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)) !important; gap:1.5rem !important; }
.dest-package-card-enhanced { background:#fff; border-radius:12px; overflow:hidden; box-shadow:0 4px 15px rgba(0,0,0,0.08); transition:all 0.3s ease; }
.dest-package-card-enhanced:hover { transform:translateY(-5px); box-shadow:0 8px 25px rgba(0,0,0,0.15); }
.dest-package-image-enhanced { height:180px; background-size:cover; background-position:center; position:relative; }
.dest-package-badge { position:absolute; top:12px; left:12px; background:#ff6b6b; color:#fff; padding:5px 10px; border-radius:18px; font-size:0.75rem; font-weight:600; text-transform:uppercase; }
.dest-package-price { position:absolute; top:12px; right:12px; display:flex; flex-direction:column; align-items:flex-end; }
.dest-price-usd { background:#ff6b6b; color:#fff; padding:6px 10px; border-radius:5px; font-weight:bold; margin-bottom:4px; font-size:0.9rem; }
.dest-price-ugx { background:rgba(0,0,0,0.7); color:#fff; padding:3px 6px; border-radius:3px; font-size:0.8rem; }
.dest-package-info-enhanced { padding:1.25rem; }
.dest-package-info-enhanced h3 { margin:0 0 0.75rem; font-size:1.1rem; color:#333; font-weight:600; }
.destination-info { color:#666; font-size:0.85rem; margin-bottom:0.75rem; display:flex; align-items:center; }
.destination-info i { color:#ff6b6b; margin-right:0.5rem; }
.dest-package-excerpt { color:#555; line-height:1.5; margin-bottom:1.25rem; font-size:0.9rem; }
.dest-package-footer { display:flex; justify-content:space-between; align-items:center; border-top:1px solid #f0f0f0; padding-top:0.75rem; }
.dest-rating { display:flex; align-items:center; font-size:0.85rem; }
.dest-stars { color:#ffa500; margin-right:0.5rem; }
.dest-review-count { color:#666; }
.dest-view-package-btn { background:linear-gradient(45deg,#667eea,#764ba2); color:#fff; padding:8px 16px; border-radius:20px; text-decoration:none; font-weight:500; transition:all 0.3s ease; text-transform:uppercase; font-size:0.8rem; }
.dest-view-package-btn:hover { background:linear-gradient(45deg,#5a67d8,#6b46c1); transform:translateY(-2px); box-shadow:0 4px 12px rgba(0,0,0,0.2); }

.dest-accordion { max-width:800px; margin:0 auto; }
.dest-accordion-item { border:1px solid #e2e8f0; border-radius:8px; margin-bottom:1rem; overflow:hidden; background:#fff; }
.accordion-header { padding:1.25rem 1.5rem; cursor:pointer; display:flex; justify-content:space-between; align-items:center; transition:all 0.3s ease; border-bottom:1px solid transparent; }
/*.accordion-header:hover { background:#f8fafc; }*/
.accordion-header.active { color:#fff; border-bottom:1px solid rgba(255,255,255,0.2); }
.accordion-header h3 { margin:0; font-size:1.1rem; font-weight:600; }
.accordion-header i { font-size:1rem; transition:transform 0.3s ease; }
.accordion-header.active i { transform:rotate(180deg); }
.dest-accordion-content { max-height:0; overflow:hidden; transition:max-height 0.3s ease; }
.dest-accordion-content.active { max-height:1000px; }
.dest-accordion-body { padding:1.5rem; line-height:1.7; color:#4a5568; background:#f8fafc; }

.dest-no-content { text-align:center; padding:3rem 2rem; color:#666; }
.dest-no-content i { display:block; margin-bottom:1rem; color:#ccc; }
.dest-no-content p { font-size:1rem; margin:0; }

@media (max-width:992px) { 
  .dest-tab-pane { padding:1.5rem; } 
  .dest-places-grid { grid-template-columns:1fr; } 
  .dest-packages-grid { grid-template-columns:1fr; } 
  .packages-grid { grid-template-columns:1fr; }
  .packages-grid { grid-template-columns:1fr; }
  /* Override for mobile - remove margins */
  .dest-detail-panel { margin: 0 !important; }
  /* Overview responsive */
  .overview-content { grid-template-columns:1fr; gap:1.5rem; }
  .overview-text, .map-container { padding:0; order:initial; }
}

@media (max-width:768px) { 
  .dest-detail-panel { margin:0 !important; border-radius:0 !important; } 
  .dest-tab-pane { padding:1.25rem; } 
  .dest-packages-grid { grid-template-columns:1fr; } 
  .packages-grid { grid-template-columns:1fr; gap:1rem !important; }
  .dest-package-card-enhanced { border-radius:10px; }
  .dest-package-image-enhanced { height:160px; }
  .dest-package-info-enhanced { padding:1rem; }
}

@media (max-width:480px) { 
  .packages-grid { grid-template-columns:1fr !important; gap:1rem !important; }
  .dest-package-card-enhanced { margin-bottom:0.5rem; }
  .dest-package-info-enhanced h3 { font-size:1rem; }
  .dest-view-package-btn { padding:6px 12px; font-size:0.75rem; }
}
/** =====================================================================
*single Package Template Styles
=======================================================================**/



/* Parallax Hero Section */
.parallax-hero { position: relative; height: 350px; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.parallax-bg { position: absolute; top: -20%; left: 0; width: 100%; height: 120%; background-attachment: fixed; background-position: center center; background-repeat: no-repeat; background-size: cover; will-change: transform; z-index: 1; animation: zoomIn 20s ease-out infinite alternate; }

@keyframes zoomIn {
    0% { transform: scale(1); }
    100% { transform: scale(1.1); }
}

.hero-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.2) 100%); z-index: 2; }
.hero-content { position: relative; z-index: 3; text-align: center; color: #fff; padding: 2rem; max-width: 800px; margin: 0 auto; }
.hero-title { font-size: 3rem; font-weight: 700; margin-bottom: 1rem; text-shadow: 2px 2px 4px rgba(0,0,0,0.5); line-height: 1.2; animation-duration: 1.5s; }
.hero-excerpt { font-size: 1.1rem; line-height: 1.6; margin-bottom: 1.5rem; text-shadow: 1px 1px 2px rgba(0,0,0,0.5); opacity: 0; animation-duration: 1.3s; }
.hero-line { position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background-color: #fff; z-index: 4; }

.trip-meta { display: flex; gap: 2rem; justify-content: center; flex-wrap: wrap; }
.trip-meta span { background: rgba(0,0,0,0.5); padding: 0.5rem 1rem; border-radius: 20px; font-size: 0.9rem; text-shadow: 1px 1px 2px rgba(0,0,0,0.7); }

/* Post type specific styling for parallax hero */
.romantic_package .hero-overlay { background: linear-gradient(135deg, rgba(255,20,147,0.3) 0%, rgba(0,0,0,0.4) 100%); }
.travel_package .hero-overlay { background: linear-gradient(135deg, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.2) 100%); }

/* Responsive adjustments */
@media (max-width: 768px) {
    .parallax-hero { height: 400px; }
    .hero-title { font-size: 2.2rem; }
    .hero-excerpt { font-size: 1rem; }
    .parallax-bg { background-attachment: scroll; }
    .trip-meta { flex-direction: column; gap: 0.5rem; align-items: center; }
}

@media (max-width: 480px) {
    .parallax-hero { height: 350px; }
    .hero-title { font-size: 1.8rem; }
    .hero-excerpt { font-size: 0.9rem; }
}

/* Animation styles */
.fade-up { opacity: 0; transform: translateY(50px); animation: fadeUp 1.2s ease-out forwards; }
.fade-up.delay-1 { animation-delay: 0.3s; }
.fade-up.delay-2 { animation-delay: 0.6s; }

@keyframes fadeUp {
    0% { opacity: 0; transform: translateY(50px); }
    100% { opacity: 1; transform: translateY(0); }
}
  
  
  .trip-meta { display: flex; gap: 2rem; justify-content: center; flex-wrap: wrap; }
.trip-meta span { background: rgba(0,0,0,0.5); padding: 0.5rem 1rem; border-radius: 20px; font-size: 0.9rem; text-shadow: 1px 1px 2px rgba(0,0,0,0.7); }

/* Post type specific styling */
.romantic_package .booking-widget { background: linear-gradient(135deg, #8e44ad, #e91e63) !important; }
.travel_package .booking-widget { background: #1e3a8a; }

/* Main Content */
.destination-container { max-width: 1200px; margin: 0 auto; padding: 2rem; display: grid; grid-template-columns: 2fr 1fr; gap: 3rem; }
.destination-content { background: #fff; }
.overview-section, .itinerary-section { margin-bottom: 2rem; }
.overview-section h2, .itinerary-section h2 { color: #2c3e50; margin-bottom: 1rem; font-size: 1.8rem; }
.overview-content { margin-bottom: 1.5rem; color: #555; line-height: 1.7; }
.overview-content p { margin-bottom: 1rem; }
.itinerary-day { margin-bottom: 1rem; padding: 1rem; border-left: 4px solid #f39c12; background: #f8f9fa; cursor: pointer; transition: all 0.3s ease; border-radius: 0 8px 8px 0; }
.romantic_package .itinerary-day { border-left-color: #e91e63; }
.itinerary-day:hover { transform: translateX(5px); box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
.day-title { font-weight: bold; color: #2c3e50; margin-bottom: 0.5rem; display: flex; align-items: center; gap: 10px; font-size: 2.5rem; }
.day-content { color: #666; display: none; margin-top: 0.5rem; padding-left: 1rem; line-height: 1.6; }
.day-content.active { display: block; }
.toggle-icon { transition: transform 0.3s; color: #f39c12; }
.romantic_package .toggle-icon { color: #e91e63; }
.toggle-icon.rotated { transform: rotate(180deg); }

/* Sidebar */
.destination-sidebar { display: flex; flex-direction: column; gap: 2rem; }
.booking-widget { color: #fff; padding: 2rem; border-radius: 10px; height: fit-content; position: sticky; top: 120px; }
.booking-widget h3 { color: #f39c12; margin-bottom: 1.5rem; font-size: 1.3rem; text-align: center; }
.romantic_package .booking-widget h3 { color: #ffb3d9; }
.booking-widget ul { list-style: none; margin-bottom: 2rem; }
.booking-widget li { display: flex; justify-content: space-between; margin-bottom: 1rem; padding-bottom: 0.5rem; border-bottom: 1px solid rgba(255,255,255,0.2); }
.booking-widget .info-label { font-weight: bold; }
.book-now-btn { background: #f39c12; color: #fff; padding: 1rem 2rem; border: none; border-radius: 25px; font-weight: bold; cursor: pointer; width: 100%; font-size: 1rem; transition: background 0.3s; }
.romantic_package .book-now-btn { background: #ff1493; }
.book-now-btn:hover { background: #e67e22; }
.romantic_package .book-now-btn:hover { background: #dc143c; }

/* Includes/Excludes Section */
.includes-excludes { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin-top: 2rem; }
.includes, .excludes { background: #f8f9fa; padding: 1.5rem; border-radius: 8px; }
.includes h4, .excludes h4 { color: #2c3e50; margin-bottom: 1rem; font-size: 1.2rem; display: flex; align-items: center; gap: 10px; }
.includes h4 { color: #27ae60; }
.excludes h4 { color: #e74c3c; }
.includes ul, .excludes ul { list-style: none; }
.includes li, .excludes li { margin-bottom: 0.5rem; padding-left: 1.5rem; position: relative; line-height: 1.4; }
.includes li::before { content: "✓"; position: absolute; left: 0; color: #27ae60; font-weight: bold; }
.excludes li::before { content: "✗"; position: absolute; left: 0; color: #e74c3c; font-weight: bold; }

.destination-gallery { max-width: 1200px; margin: 3rem auto 0; padding: 0 2rem; }
.destination-gallery h2 { color: #2c3e50; margin-bottom: 2rem; font-size: 2rem; text-align: center; }
.gallery-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1rem; }
.gallery-image { width: 100%; height: 200px; object-fit: cover; border-radius: 8px; transition: transform 0.3s; cursor: pointer; }
.gallery-image:hover { transform: scale(1.05); }

/* Responsive */
@media (max-width: 768px) {
    .destination-hero h1 { font-size: 2rem; }
    .trip-meta { flex-direction: column; gap: 0.5rem; align-items: center; }
    .destination-container { grid-template-columns: 1fr; padding: 1rem; gap: 2rem; }
    .booking-widget { position: relative; top: auto; }
    .includes-excludes { grid-template-columns: 1fr; }
}



/** =====================================================================
*Airticketing / travel management
=======================================================================**/

.ticketing-overview-section{background-color:#f9f9f9;padding:60px 20px;text-align:center;}
    .ticketing-overview-container{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;}
    .ticketing-overview-columns{display:flex;flex-direction:column;gap:40px;align-items:center;width:100%;}
.mgt-overview-heading { color: #2c3e50; font-size: 2.5rem; margin-top: 20px; margin-bottom: 25px; position: relative; padding-bottom: 15px; text-align: center; }
.mgt-overview-heading:after { content: ''; position: absolute; left: 50%; transform: translateX(-50%); bottom: 0; width: 80px; height: 4px; background: #ff8c00; }
.ticketing-overview-text-column { flex: 1; min-width: 100%; display: flex; flex-direction: column; align-items: center; }
.ticketing-overview-text-column p { color: #555; line-height: 1.8; margin-bottom: 20px; font-size: 17px; text-align: center; max-width: 800px; margin-left: 20px; margin-right: 20px; }
.ticketing-overview-text-column, .ticketing-overview-image-column { min-width: 100%; }
@media (max-width: 768px) { .mgt-overview-heading { font-size: 2rem; } }
        
    
:root { --primary-color:#ff8c00; --secondary-color:#ff7e00; --accent-color:#66b4b8; --text-color:#333; --light-bg:#f9f9f9; --border-radius:8px; --box-shadow:0 5px 15px rgba(0,0,0,0.1); --transition:all 0.3s ease; }
.ticketing-travel-services-panel{ display:flex; max-width:1300px; margin:2rem auto; background:#fff; box-shadow:var(--box-shadow); overflow:hidden; min-height:500px; position:relative; }
.ticketing-services-sidebar  { width:280px; background:linear-gradient(135deg,#1775bb 0%,#084092 100%); padding:2rem 0; display:flex; flex-direction:column; }
.ticketing-sidebar-item{ color:rgba(255,255,255,0.9); padding:1.2rem 1.5rem; display:flex; align-items:center; cursor:pointer; transition:var(--transition); border-left:4px solid transparent; font-size:1rem; margin:0.2rem 0; position:relative; overflow:hidden; }
.ticketing-sidebar-item::before  { content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:rgba(255,255,255,0.1); transition:var(--transition); }
.ticketing-sidebar-item:hover{ color:#fff; }
.ticketing-sidebar-item:hover::before{ left:0; }
.ticketing-sidebar-item.ticketing-active { background:rgba(255,255,255,0.15); color:#fff; border-left:4px solid var(--secondary-color); font-weight:500; }
.ticketing-sidebar-item i{ margin-right:1rem; font-size:1.2rem; width:1.5rem; text-align:center; }
.ticketing-services-content { flex:1; padding:2.5rem; background:#fff; position:relative; }
.ticketing-content-item{ display:none; animation:fadeIn 0.4s ease-out forwards; }
.ticketing-content-item.ticketing-active  { display:block; }
.ticketing-content-wrapper { max-height:400px; overflow-y:auto; padding-right:1rem; }
.ticketing-content-wrapper::-webkit-scrollbar { width:6px; }
.ticketing-content-wrapper::-webkit-scrollbar-thumb { background:var(--accent-color); border-radius:3px; }
.ticketing-content-item h3  { color:var(--primary-color); margin:0 0 1.5rem; font-size:1.8rem; font-weight:600; padding-bottom:0.8rem; border-bottom:2px solid var(--light-bg); }
.ticketing-content-item p  { line-height:1.8; color:var(--text-color); margin-bottom:1.2rem; font-size:1.05rem; }
.ticketing-content-item ul,.ticketing-content-item ol{ margin:1.2rem 0; padding-left:1.5rem; line-height:1.8; }
.ticketing-content-item li{ margin-bottom:0.8rem; position:relative; padding-left:1.5rem; }
.ticketing-content-item ul li::before { content:'•'; color:var(--secondary-color); position:absolute; left:0; font-weight:bold; }



@keyframes fadeIn { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:992px) { .ticketing-travel-services-panel { flex-direction:column; max-width:95%; min-height:auto; } .ticketing-services-sidebar { width:100%; flex-direction:row; flex-wrap:wrap; padding:0; background:var(--primary-color); } .ticketing-sidebar-item { flex:1 1 180px; min-width:180px; justify-content:center; border-left:none; border-bottom:3px solid transparent; padding:1rem 0.5rem; margin:0; text-align:center; flex-direction:column; } .ticketing-sidebar-item i { margin-right:0; margin-bottom:0.5rem; } .ticketing-sidebar-item.ticketing-active { border-left:none; border-bottom:3px solid var(--secondary-color); } .ticketing-services-content { padding:1.5rem; } .ticketing-content-wrapper { max-height:none; } }
@media(max-width:576px)         { .ticketing-sidebar-item { flex:1 1 140px; font-size:0.9rem; padding:0.8rem 0.3rem; } .ticketing-sidebar-item i { font-size:1rem; } .ticketing-content-item h3 { font-size:1.5rem; } }


/** =====================================================================
*search
=======================================================================**/

.header-search input{visibility: hidden;}
.header-search ul.search-dropdown{display: none;}
.header-search label{position: relative;display: block;cursor: pointer;margin-top: -20px}
.header-search input:checked~ul.search-dropdown{display: block;position: absolute;z-index: 119;}
.search-dropdown .input-group{right:100%;flex-wrap: unset;margin-top:28px;}
.search-dropdown ul li{list-style: none !important;}
.search-dropdown .input-group input{visibility:visible;width: 600px !important;height: 60px;}
.search-dropdown .input-group .btn-search{background:#0b5a5f;color:#fff;}
#search-results {display: none;right: 100%;position: relative;background: rgba(255,255,255,0.93);padding: 1em;
    font-size: small;list-style: none;max-height: 300px;overflow-y: auto;width: 100%;border: 1px solid #ccc;box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);}
#search-results a{color:#125e63}
.search-result-item {margin-bottom: 3px;padding: 5px;}
.search-result-item h5 {margin: 0;font-size: 1.1em;}
.search-result-item p {margin-top: 2px;color: #666;font-size: 0.9em;margin-bottom: 5px;}
.search-result-item:hover{background: rgba(245, 227, 225, 0.92);}

/**modal search**/
.modal-search{background: rgba(42, 42, 134, 0.6);}
.modal-search .modal-body{align-items: center;}
.modal-search input{height: 60px;width: 600px;}
.modal-search .input-group .btn-search{background: #00AEEF;color:#fff;}
.modal-search #search-results {display: none;right: 0;position: relative;background: transparent;	padding: 1em;list-style: none;width: 100%;border: 0px solid #ccc;color:#fff;}
.modal-search  #search-results a{color:#00aeef;}
.modal-search .search-result-item {margin-bottom: 3px;padding: 5px;}
.modal-search .search-result-item h5 {margin: 0;font-size: 1.15em;}
.modal-search .search-result-item p {margin-top: 2px;color: #eee;font-size: 0.95em;margin-bottom: 5px;}
.modal-search .search-result-item:hover{background: rgba(0, 175, 239, 0.139);}






/** ==========================================================
Main Slides
===========================================================**/
.btn-one {  position: relative;  display: inline-block;  overflow: hidden;  padding-left: 30px;  padding-right: 30px;  background-color: transparent;  color: var(--kpy-black);  font-size: 18px;
	line-height: 60px;  font-weight: 500;  text-transform: capitalize;  border-radius: 0px;  -webkit-transition: all 0.3s linear;  -o-transition: all 0.3s linear;  transition: all 0.3s linear;  z-index: 2;}
  .btn-one:before {  position: absolute;  top: 110px;  left: -50px;  right: -50px;  height: 170px;
	content: "";  background: var(--kpy-primary);  -webkit-transform: translateY(-50px);  transform: translateY(-50px);  border-radius: 50%;  transition-duration: 800ms;  z-index: 1;}
  .btn-one:hover:before {  top: 0%;  left: -70px;  right: -70px;}
  .btn-one:after {  content: "";  position: absolute;  top: 0px;left: 0px;  bottom: 0px;  right: 0px;
	border-radius: 0px;  background-color: #ffffff;  opacity: 1;  transform: scaleX(1.0);  transition-duration: 800ms;  z-index: -1;}
  .btn-one:hover:after {  transform: scaleX(0);  transition-duration: 1500ms;}
  .btn-one .txt {  position: relative;  z-index: 1;}
  .btn-one:hover,.btn-one:focus {  color: #ffffff;}
  .btn-one i {  position: relative;  display: inline-block;  padding-left: 5px;  font-size: 12px;  font-weight: 500;}
  .btn-btn {  color: var(--kpy-white);  background: var(--kpy-primary);  border-radius: 0px;  padding: 11px 24px;  display: inline-block;  box-shadow: inset 0 0 0 0 var(--kpy-black);  -webkit-transition: ease-out 0.4s;  -moz-transition: ease-out 0.4s;  transition: ease-out 0.4s;}
  .btn-btn:hover {  color: var(--kpy-white);  box-shadow: inset 400px 0 0 0 var(--kpy-black);}
.slider-buttom-box {position: absolute;left: 20px;bottom: 20px;z-index: 11;}
.slider-buttom-box a {position: relative;display: flex;align-items: center;justify-content: space-between;width: 230px;height: 50px;background-color: var(--kpy-primary);padding: 0 20px;color: #ffffff;font-weight: 500;transition: all 200ms linear;transition-delay: 0.1s;}
.slider-buttom-box a:hover {background-color: var(--kpy-primary);}
.slider-buttom-box a+a {  margin-top: 10px;}
.slider-buttom-box a.box-link {  background-color: var(--kpy-primary);}
.slider-buttom-box a.box-link:hover {  background-color: var(--kpy-primary);}
.main-slider .swiper-slide {  position: relative;height:600px}
.main-slider .container {  position: relative;  padding-top: 350px;  padding-bottom: 100px; z-index: 3;}
.main-slider .image-layer, .slider-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to right,rgb(0, 0, 0) 0,rgba(251, 251, 251, 0.97) 99%,rgb(249, 249, 249) 100%);background-blend-mode:overlay;background-repeat:no-repeat;background-size:cover;background-position:center center;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:opacity 1500ms ease-in,-webkit-transform 7000ms ease;transition:opacity 1500ms ease-in,-webkit-transform 7000ms ease;transition:transform 7000ms ease,opacity 1500ms ease-in;transition:transform 7000ms ease,opacity 1500ms ease-in,-webkit-transform 7000ms ease;z-index:1;background-image:linear-gradient(to bottom,rgba(0, 0, 0, 0.2) 0%,rgba(0,0,0,0.2) 40%,rgba(0, 0, 0, 0.15) 99%,rgba(0, 0, 0, 0) 100%);} 
.main-slider .swiper-slide-active .image-layer {  -webkit-transform: scale(1.15);  transform: scale(1.15);}
.main-slider .main-slider-content {position: relative;  display: block; 	width: 100%; margin: auto; text-align: center;}
.main-slider .main-slider-content__inner {  position: relative;  display: block;  overflow: hidden;width: 60%;padding: 1rem 2rem 0;border-left: solid 5px #E82A2A;}
.main-slider .main-slider-content__inner::before{ border-left: 3.2rem solid #E82A2A;}
.main-slider .main-slider-content .big-title {  position: relative;  display: block;  opacity: 0;
  -webkit-transform: perspective(400px) rotateY(0deg) translateY(-80px);
  -ms-transform: perspective(400px) rotateY(0deg) translateY(-80px);
  transform: perspective(400px) rotateY(0deg) translateY(-80px);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
  -webkit-transition: all 1000ms ease;
  -moz-transition: all 1000ms ease;
  -ms-transition: all 1000ms ease;
  -o-transition: all 1000ms ease;
  transition: all 1000ms ease;
  z-index: 10;
}
.main-slider .swiper-slide-active .main-slider-content .big-title {
  opacity: 1;
  -webkit-transform: perspective(400px) rotateY(0deg) translateY(0px);
  -ms-transform: perspective(400px) rotateY(0deg) translateY(0px);
  transform: perspective(400px) rotateY(0deg) translateY(0px);
  -webkit-transition-delay: 1000ms;
  -moz-transition-delay: 1000ms;
  -ms-transition-delay: 1000ms;
  -o-transition-delay: 1000ms;
  transition-delay: 1000ms;
}
.main-slider .main-slider-content .big-title h2 {   color: #ffffff;  font-size: 36px;  line-height: 1.2em;  font-weight: 800;  text-transform: uppercase; text-shadow:1px .5px .5px #000;text-transform: capitalize;letter-spacing: -.8px;text-align: left;}
.main-slider .main-slider-content .text {  position: relative;  display: block;  width: 80%;  margin-top: 16px;  opacity: 0;
  -webkit-transform: perspective(400px) rotateY(0deg) translateX(80px);
  -ms-transform: perspective(400px) rotateY(0deg) translateX(80px);
  transform: perspective(400px) rotateY(0deg) translateX(80px);
  -webkit-transform-origin: bottom;
  -ms-transform-origin: bottom;
  transform-origin: bottom;
  -webkit-transition: all 1000ms ease;
  -moz-transition: all 1000ms ease;
  -ms-transition: all 1000ms ease;
  -o-transition: all 1000ms ease;
  transition: all 1000ms ease;
  z-index: 10;
}

.main-slider .swiper-slide-active .main-slider-content .text {opacity: 1;
  -webkit-transform: perspective(400px) rotateY(0deg) translateX(0px);
  -ms-transform: perspective(400px) rotateY(0deg) translateX(0px);
  transform: perspective(400px) rotateY(0deg) translateX(0px);
  -webkit-transition-delay: 1000ms;
  -moz-transition-delay: 1000ms;
  -ms-transition-delay: 1000ms;
  -o-transition-delay: 1000ms;
  transition-delay: 1000ms;
}
.main-slider .main-slider-content .text p {color: #fff;  font-weight: 500; font-size: 18px; text-shadow:.5px .5px .5px #000;letter-spacing: -.5px;text-align: left;}
.main-slider .main-slider-content  a.text-link {text-align: left;  color: #E82A2A;  float: left; font-weight:500;}
.main-slider .main-slider-content a.text-link::after {content: "\F285"; display: inline-block; font-style: normal; font-variant: normal; text-transform: none; vertical-align: -.3em; padding-left: .6rem; font-size: 1.1rem;}
.main-slider .main-slider-content .btns-box {  position: relative;  display: block;  line-height: 0;
  padding-top: 15px;  opacity: 0;
  -webkit-transform: perspective(400px) rotateY(0deg) translateY(80px);
  -ms-transform: perspective(400px) rotateY(0deg) translateY(80px);
  transform: perspective(400px) rotateY(0deg) translateY(80px);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
  -webkit-transition: all 1000ms ease;
  -moz-transition: all 1000ms ease;
  -ms-transition: all 1000ms ease;
  -o-transition: all 1000ms ease;
  transition: all 1000ms ease;
  z-index: 10;
}

.main-slider .main-slider-content .btns-box a {
  background: var(--kpy-primary);
}

.main-slider .swiper-slide-active .main-slider-content .btns-box {
  opacity: 1;
  -webkit-transform: perspective(400px) rotateY(0deg) translateY(0px);
  -ms-transform: perspective(400px) rotateY(0deg) translateY(0px);
  transform: perspective(400px) rotateY(0deg) translateY(0px);
  -webkit-transition-delay: 1500ms;
  -moz-transition-delay: 1500ms;
  -ms-transition-delay: 1500ms;
  -o-transition-delay: 1500ms;
  transition-delay: 1500ms;
}
.main-slider__nav {  position: absolute;  right: 120px;  top: 400px;  transform: translateY(0%) translateX(0);  display: flex;  flex-direction: row;  justify-content: space-between;  align-items: center;  z-index: 100;  width: 100px;}
.main-slider__nav .swiper-button-next {
    right: 70px;  
}
.main-slider__nav .swiper-button-prev {
    left: 70px;  
}
.main-slider__nav .swiper-button-next,
.main-slider__nav .swiper-button-prev {  position: relative;  top: auto;  left: auto;  right: auto;  bottom: auto;  width: 50px;  height: 50px;  display: flex;  justify-content: center;  align-items: center;  font-size: 30px;  color: #fbfbfb;    border-radius: 0;  margin: 0;  text-align: center;  transition: all 500ms ease;  z-index: 100;}
.main-slider__nav .swiper-button-next:hover,.main-slider__nav .swiper-button-prev:hover {  color: #ffffff;  background-color: #E82A2A;}
.main-slider__nav .swiper-button-next::after,.main-slider__nav .swiper-button-prev::after {  display: none;}


/*==========================================================
# Sticky Side buttons
==========================================================**/
.iisu-sticky-buttons{position:fixed;right:30px;top:60%;transform:translateY(-50%);display:flex;flex-direction:column;gap:10px;z-index:1000;}  
.iisu-btn{display:flex;flex-direction:column;justify-content:center;align-items:center;background:#e82a2a;color:#fff;padding:12px;transition:background .5s ease-in-out;text-align:center;width:80px;height:80px;border-radius:50%;font-size:11px;font-weight:500;word-wrap:break-word;white-space:normal;overflow-wrap:break-word;text-align:center;line-height:1.2;overflow:hidden; border:solid 3px #f9f9f9;}  
.iisu-btn:hover{background:#c30000;}  
.iisu-btn i{font-size:20px;}  
.btn-content{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;text-align:center;word-break:break-word;}  
@media (max-width:768px){.iisu-sticky-buttons{right:0;left:0;bottom:0px;top:auto;transform:none;flex-direction:row;justify-content:center;gap:5px;margin: auto;background: #fffffffc;padding: 15px 0;}  
.iisu-btn{padding:8px;width:70px;height:70px;font-size:12px;}}  



/*==========================================================
# Back to top button
==========================================================**/
.back-to-top {position: fixed;opacity: 0; visibility: hidden;right: 15px;bottom: 15px;z-index: 99999;    background: var(--kpy-base);width: 40px;height: 40px;border-radius: 4px;transition: all 0.4s;}
.back-to-top i {font-size: 24px;color: #fff;padding: 5px;text-align: center;}
.back-to-top:hover {background: var(--kpy-yellow);color: #fff;}
.back-to-top.active {visibility: visible;opacity: 1;}


/** ==========================================================
Homepage Layout
===========================================================**/
/* Root Variables */
:root {
    --primary-blue: #2B5AA0; --primary-blue-rgb: 43, 90, 160; --accent-yellow: #FFC107; --accent-yellow-rgb: 255, 193, 7; --dark-blue: #1E3A5F; --dark-blue-rgb: 30, 58, 95; --text-dark: #2C2C2C; --text-light: #666666; --text-muted: #999999; --background-light: #F5F8FA; --white: #FFFFFF; --border-light: #E5E5E5; --transition: all 0.3s ease; --shadow-sm: 0 4px 6px rgba(0, 0, 0, 0.1); --shadow-md: 0 10px 15px rgba(0, 0, 0, 0.1); --shadow-lg: 0 20px 25px rgba(0, 0, 0, 0.1); --radius-sm: 4px; --radius-md: 8px; --radius-lg: 12px; --radius-xl: 16px; --radius-full: 9999px;
}

/* Base Styles */

:root {
    --primary-blue: #2563eb;
    --dark-blue: #1e40af;
    --darker-blue: #1e3a8a;
    --accent-yellow: #fbbf24;
    --white: #ffffff;
    --background-light: #f8fafc;
    --text-dark: #1f2937;
    --text-light: #6b7280;
    --text-muted: #9ca3af;
    --border-light: #e5e7eb;
    --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-full: 9999px;
    --transition: all 0.3s ease;
    --primary-blue-rgb: 37, 99, 235;
    --dark-blue-rgb: 30, 64, 175;
    --accent-yellow-rgb: 251, 191, 36;
}

.bs-homepage * { box-sizing: border-box; }
.bs-homepage { line-height: 1.6; color: var(--text-dark); background-color: var(--background-light); }
.bs-homepage h1, .bs-homepage h2, .bs-homepage h3, .bs-homepage h4, .bs-homepage h5, .bs-homepage h6 { font-weight: 600; line-height: 1.2; margin-bottom: 1rem; }
.bs-homepage p { margin-bottom: 1rem; }
.bs-homepage a { text-decoration: none; color: var(--primary-blue); transition: var(--transition); }
.bs-homepage a:hover { color: var(--dark-blue); }
.bs-homepage img { max-width: 100%; height: auto; display: block; }

/* Container Styles */
.bs-container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 20px; }

/* Section Styles */
.bs-home-section { padding: 80px 0; position: relative; }
.bs-section-header { text-align: center; margin-bottom: 60px; }
.bs-section-title { font-size: 2.5rem; color: var(--dark-blue); margin-bottom: 15px; position: relative; display: inline-block; }
.bs-section-title:after { content: ""; position: absolute; bottom: -10px; left: 50%; transform: translateX(-50%); width: 80px; height: 3px; background: var(--accent-yellow); }
.bs-section-subtitle { font-size: 1.1rem; color: var(--text-light); max-width: 700px; margin: 0 auto; }

/* Hero Section */
.bs-hero-section { background-color: var(--white); padding: 80px 0; overflow: hidden; position: relative; }
.bs-hero-content { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; min-height: 600px; }
.bs-hero-title { font-size: 3.5rem; font-weight: 700; color: var(--dark-blue); margin-bottom: 1.5rem; line-height: 1.2; }
.bs-highlight { color: var(--primary-blue); position: relative; display: inline-block; }
.bs-highlight:after { content: ""; position: absolute; bottom: -5px; left: 0; width: 100%; height: 8px; background-color: rgba(var(--accent-yellow-rgb), 0.3); z-index: -1; }
.bs-hero-description { font-size: 1.2rem; color: var(--text-light); line-height: 1.8; margin-bottom: 2rem; }
.bs-brand-highlight { color: var(--primary-blue); font-weight: 600; }
.bs-hero-visual { position: relative; display: flex; justify-content: center; align-items: center; }
.bs-hero-circle { width: 400px; height: 400px; border-radius: 50%; overflow: hidden; position: relative; border: 8px solid var(--white); box-shadow: var(--shadow-lg); }
.bs-hero-image { width: 100%; height: 100%; object-fit: cover; }
.bs-hero-decorations { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; }
.bs-decoration { position: absolute; border-radius: 50%; background: linear-gradient(135deg, var(--primary-blue), var(--dark-blue)); }
.bs-decoration-1 { width: 60px; height: 60px; top: -20px; right: -20px; opacity: 0.7; }
.bs-decoration-2 { width: 40px; height: 40px; bottom: 30px; left: -30px; opacity: 0.5; }
.bs-quote-mark { position: absolute; top: 50px; right: 50px; font-size: 6rem; color: var(--accent-yellow); font-family: Georgia, serif; opacity: 0.8; }
.bs-hero-highlight-text { position: absolute; bottom: -40px; right: 0; background: var(--white); padding: 25px; border-radius: var(--radius-lg); box-shadow: var(--shadow-md); max-width: 350px; z-index: 2; }
.bs-hero-highlight-text p { margin: 0; font-style: italic; color: var(--text-dark); line-height: 1.6; }
.bs-hero-highlight-text strong { color: var(--primary-blue); }

/* Services Section */
.bs-services-section { background: var(--white); padding: 100px 0; }
.bs-services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; margin-top: 60px; }
.bs-service-card { background: var(--white); padding: 40px 30px; border-radius: var(--radius-lg); text-align: center; box-shadow: var(--shadow-sm); transition: var(--transition); border: 1px solid var(--border-light); }
.bs-service-card:hover { transform: translateY(-10px); box-shadow: var(--shadow-lg); }
.bs-service-icon { width: 80px; height: 80px; margin: 0 auto 25px; background: linear-gradient(135deg, var(--primary-blue), var(--dark-blue)); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: var(--white); font-size: 2rem; }
.bs-service-card h3 { font-size: 1.5rem; color: var(--dark-blue); margin-bottom: 15px; }
.bs-service-card p { color: var(--text-light); margin-bottom: 25px; line-height: 1.7; }
.bs-service-cta { display: inline-block; color: var(--primary-blue); font-weight: 600; padding: 10px 0; position: relative; }
.bs-service-cta:after { content: ""; position: absolute; bottom: 0; left: 0; width: 0; height: 2px; background: var(--accent-yellow); transition: var(--transition); }
.bs-service-cta:hover:after { width: 100%; }

/* Testimonial Section */
.bs-testimonial-section { background: linear-gradient(135deg, var(--primary-blue), var(--dark-blue)); color: var(--white); padding: 80px 0; text-align: center; }
.bs-testimonial-content { max-width: 800px; margin: 0 auto; position: relative; }
.bs-testimonial-quote { position: relative; padding: 0 60px; }
.bs-quote-marks { font-size: 8rem; font-family: Georgia, serif; color: rgba(255, 255, 255, 0.1); position: absolute; top: -40px; left: 0; line-height: 1; }
.bs-testimonial-quote blockquote { font-size: 1.5rem; font-style: italic; line-height: 1.6; margin-bottom: 30px; position: relative; z-index: 2; }
.bs-testimonial-quote cite { font-size: 1.1rem; font-weight: 600; font-style: normal; color: var(--accent-yellow); }
.bs-testimonial-indicators { display: flex; justify-content: center; gap: 15px; margin-top: 40px; }
.bs-indicator { width: 12px; height: 12px; border-radius: 50%; background: rgba(255, 255, 255, 0.3); cursor: pointer; transition: var(--transition); }
.bs-indicator.active { background: var(--accent-yellow); transform: scale(1.2); }

/* Travel Activities Gallery */
.bs-travel-gallery { padding: 60px 0; background: var(--background-light); }
.bs-gallery-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.bs-gallery-item { position: relative; overflow: hidden; border-radius: var(--radius-lg); height: 280px; cursor: pointer; box-shadow: var(--shadow-md); transition: var(--transition); }
.bs-gallery-item:hover { transform: translateY(-5px); box-shadow: var(--shadow-lg); }
.bs-gallery-image { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.bs-gallery-item:hover .bs-gallery-image { transform: scale(1.1); }
.bs-gallery-overlay { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(to top, rgba(0,0,0,0.8), transparent); color: var(--white); padding: 25px; transform: translateY(100%); transition: transform 0.3s ease; }
.bs-gallery-item:hover .bs-gallery-overlay { transform: translateY(0); }
.bs-gallery-overlay h4 { margin: 0 0 8px 0; font-size: 1.2rem; font-weight: 600; }
.bs-gallery-overlay p { margin: 0; font-size: 0.9rem; opacity: 0.9; }

/* Packages Section */
.bs-packages-section { background: var(--background-light); }
.bs-packages-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; margin-bottom: 50px; }
.bs-package-card { background: var(--white); border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-sm); transition: var(--transition); }
.bs-package-card:hover { transform: translateY(-10px); box-shadow: var(--shadow-lg); }
.bs-package-image { position: relative; height: 250px; overflow: hidden; }
.bs-package-image img { width: 100%; height: 100%; object-fit: cover; transition: var(--transition); }
.bs-package-card:hover .bs-package-image img { transform: scale(1.1); }
.bs-package-price-overlay { position: absolute; top: 20px; right: 20px; background: rgba(var(--dark-blue-rgb), 0.9); color: var(--white); padding: 10px 15px; border-radius: var(--radius-md); text-align: center; }
.bs-price-main { font-size: 1.2rem; font-weight: 700; color: var(--accent-yellow); }
.bs-price-local { font-size: 0.8rem; opacity: 0.8; }
.bs-package-details { padding: 25px; }
.bs-package-meta { display: flex; justify-content: space-between; margin-bottom: 15px; font-size: 0.9rem; color: var(--text-muted); }
.bs-package-meta span { display: flex; align-items: center; gap: 5px; }
.bs-package-details h3 { font-size: 1.4rem; color: var(--dark-blue); margin-bottom: 15px; }
.bs-package-features { display: flex; flex-direction: column; gap: 10px; margin-bottom: 20px; }
.bs-package-features span { display: flex; align-items: center; gap: 8px; font-size: 0.9rem; color: var(--text-light); }
.bs-package-features i { color: var(--primary-blue); width: 16px; }
.bs-view-details-button { display: inline-block; background: var(--primary-blue); color: var(--white); padding: 12px 25px; border-radius: var(--radius-full); font-weight: 600; transition: var(--transition); text-align: center; width: 100%; }
.bs-view-details-button:hover { background: var(--dark-blue); color: var(--white); transform: translateY(-3px); }
.bs-packages-cta { text-align: center; padding: 40px 0; background: var(--white); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); }
.bs-packages-cta p { font-size: 1.2rem; color: var(--text-dark); margin-bottom: 25px; }
.bs-packages-buttons { display: flex; justify-content: center; gap: 20px; }
.bs-packages-link { padding: 12px 30px; border: 2px solid var(--primary-blue); color: var(--primary-blue); border-radius: var(--radius-full); font-weight: 600; transition: var(--transition); }
.bs-packages-link:hover { background: var(--primary-blue); color: var(--white); }

/* FAQ Section */
.bs-faq-section { background: var(--white); padding: 100px 0; }
.bs-faq-header { margin-bottom: 60px; }
.bs-faq-header h2 { font-size: 2.5rem; color: var(--dark-blue); text-align: center; margin-bottom: 40px; }
.bs-faq-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.bs-faq-visual { position: relative; display: flex; justify-content: center; }
.bs-faq-circle { width: 350px; height: 350px; border-radius: 50%; overflow: hidden; position: relative; border: 8px solid var(--white); box-shadow: var(--shadow-lg); }
.bs-faq-image { width: 100%; height: 100%; object-fit: cover; }
.bs-faq-decorations { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; }
.bs-decoration-3 { width: 50px; height: 50px; top: -15px; left: 30px; opacity: 0.6; background: linear-gradient(135deg, var(--accent-yellow), #ff9800); }
.bs-decoration-4 { width: 35px; height: 35px; bottom: 40px; right: 20px; opacity: 0.4; background: linear-gradient(135deg, var(--primary-blue), var(--dark-blue)); }
.bs-faq-text { font-size: 1.1rem; line-height: 1.8; color: var(--text-light); }
.bs-faq-accordion { max-width: 800px; margin: 0 auto; }
.bs-faq-item { border-bottom: 1px solid var(--border-light); margin-bottom: 15px; }
.bs-faq-question { width: 100%; padding: 25px 0; text-align: left; background: none; border: none; display: flex; justify-content: space-between; align-items: center; font-size: 1.2rem; font-weight: 600; color: var(--dark-blue); cursor: pointer; transition: var(--transition); }
.bs-faq-question:hover { color: var(--primary-blue); }
.bs-faq-question i { transition: var(--transition); }
.bs-faq-item.active .bs-faq-question i { transform: rotate(180deg); }
.bs-faq-answer { padding: 0; max-height: 0; overflow: hidden; transition: max-height 0.3s ease, padding 0.3s ease; }
.bs-faq-item.active .bs-faq-answer { padding: 0 0 25px 0; max-height: 500px; }
.bs-faq-answer p { color: var(--text-light); line-height: 1.7; margin: 0; }

/* Final CTA Section with Graphics */
.bs-final-cta { background: var(--darker-blue); color: var(--white); padding: 120px 0 0 0; text-align: center; position: relative; overflow: hidden; margin-top: 0; }
.bs-final-cta-content { position: relative; z-index: 2; padding-bottom: 80px; }
.bs-cta-graphics { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 1; }
.bs-graphic { position: absolute; color: var(--accent-yellow); opacity: 0.1; font-size: 3rem; animation: float 6s ease-in-out infinite; }
.bs-graphic-1 { top: 10%; left: 10%; animation-delay: 0s; }
.bs-graphic-2 { top: 20%; right: 15%; animation-delay: 1s; }
.bs-graphic-3 { top: 60%; left: 5%; animation-delay: 2s; }
.bs-graphic-4 { bottom: 30%; right: 10%; animation-delay: 3s; }
.bs-graphic-5 { top: 45%; left: 80%; animation-delay: 4s; }

@keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-20px); }
}

.bs-final-cta-content h2 { font-size: 3rem; margin-bottom: 20px; position: relative; z-index: 3; }
.bs-final-cta-content p { font-size: 1.3rem; margin-bottom: 40px; opacity: 0.9; max-width: 600px; margin-left: auto; margin-right: auto; position: relative; z-index: 3; }
.bs-final-cta-button { display: inline-block; background: var(--accent-yellow); color: var(--darker-blue); padding: 18px 50px; border-radius: var(--radius-full); font-size: 1.1rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; transition: var(--transition); box-shadow: var(--shadow-md); position: relative; z-index: 3; }
.bs-final-cta-button:hover { background: var(--white); transform: translateY(-5px); box-shadow: var(--shadow-lg); color: var(--darker-blue); }

/* Responsive Design */
@media (max-width: 1200px) {
    .bs-hero-title { font-size: 3rem; }
    .bs-services-grid { grid-template-columns: repeat(2, 1fr); }
    .bs-gallery-grid { grid-template-columns: repeat(2, 1fr); }
    .bs-packages-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
    .bs-hero-content { grid-template-columns: 1fr; gap: 40px; }
    .bs-hero-title { font-size: 2.5rem; }
    .bs-services-grid { grid-template-columns: 1fr; }
    .bs-gallery-grid { grid-template-columns: 1fr; }
    .bs-packages-grid { grid-template-columns: 1fr; }
    .bs-faq-intro { grid-template-columns: 1fr; gap: 40px; }
    .bs-packages-buttons { flex-direction: column; align-items: center; }
    .bs-hero-circle { width: 300px; height: 300px; }
    .bs-hero-highlight-text { position: relative; bottom: 0; right: 0; margin-top: 30px; max-width: 100%; }
    .bs-faq-circle { width: 280px; height: 280px; }
    .bs-gallery-item { height: 220px; }
}

@media (max-width: 480px) {
    .bs-hero-title { font-size: 2rem; }
    .bs-section-title { font-size: 2rem; }
    .bs-final-cta-content h2 { font-size: 2.2rem; }
    .bs-final-cta-content p { font-size: 1.1rem; }
    .bs-hero-circle { width: 250px; height: 250px; }
    .bs-faq-circle { width: 220px; height: 220px; }
    .bs-gallery-item { height: 180px; }
    .bs-graphic { font-size: 2rem; }
}

/* Animation for elements */
@keyframes fadeInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }
.bs-animate { animation: fadeInUp 0.6s ease forwards; }



/** =====================================================
 INNER PAGES
========================================================**/
.header-programs{min-height:400px;position:relative;overflow:hidden;} 
.header-programs .overlay {position:absolute;height:100%;width:100%;top:0;left:0;color:#fff;display:flex;align-items:end;padding:0 0 0 70px;box-sizing:border-box;z-index: 9;}
.header-programs h1{font-weight: 700;text-shadow: 0 0 20px #000;width: 100%;}
.header-programs p{text-shadow: 0 0 20px #000;}
.header-programs .breadcrumb{font-size: 12px;color: #333;}
.header-programs .breadcrumb a{color:#666;}
.overlay .page-title {width:90%;}
/*.header-wrap{min-height:500px;overflow:hidden;top: 110px;padding-top: 200px;}*/
/*.header-wrap1{min-height: 500px;padding-top: 350px;position: relative;}*/
.default-title{font-size: 60px;font-weight: 700;color:#fff;}
.news-title{font-size: 36px;font-weight: 700;text-align: left;margin-top:20px;padding-bottom:25px;color:#f9f9f9;}



/** =========================================================
Travel portal breadcrumb
===============================================================**/
.breadcrumb{font-size:14px;margin:10px 0;padding:8px 0}
.breadcrumb a.breadcrumb-item{color:#007cba;text-decoration:none;transition:color 0.3s ease}
.breadcrumb a.breadcrumb-item:hover{color:#005a87;text-decoration:underline}
.breadcrumb .separator{margin:0 8px;color:#666}
.breadcrumb .breadcrumb-current{color:#333;font-weight:500}
.breadcrumb a[data-breadcrumb-home="true"]:before{content:"";font-size:12px}

/** =========================================================
Contact Form Styles
===============================================================**/
*{box-sizing:border-box}.grace-contact-wrapper{background-color:var(--background-light);min-height:100vh;padding:0;margin:0;width:100%;max-width:100%}
.grace-contact-container{display:flex;min-height:100vh;width:100%;max-width:100%;margin:0;background:var(--white)}
.grace-contact-left{flex:1;padding:80px 60px;background-color:var(--background-light);display:flex;flex-direction:column;justify-content:flex-start}.grace-contact-header{margin-bottom:60px}
.grace-contact-title{font-size:3.5rem;font-weight:400;color:var(--dark-blue);margin:0 0 24px 0;line-height:1.1;letter-spacing:-0.02em}
.grace-contact-description{font-size:1rem;line-height:1.6;color:var(--text-light);margin:0;max-width:400px}
.grace-contact-details{margin-bottom:60px}
.grace-contact-item{display:flex;align-items:flex-start;margin-bottom:40px}
.grace-contact-icon{width:20px;height:20px;margin-right:20px;margin-top:2px;color:var(--primary-blue);flex-shrink:0;transition:var(--transition)}
.grace-contact-item:hover 
.grace-contact-icon{color:var(--accent-yellow)}
.grace-contact-info h4{font-weight:500;font-size:1rem;color:var(--primary-blue);margin:0 0 8px 0;text-transform:capitalize}
.grace-contact-info p{font-size:0.95rem;line-height:1.5;color:var(--text-dark);margin:0}
.grace-social-links h4{font-weight:500;font-size:1rem;color:var(--text-dark);margin:0 0 20px 0}
.grace-social-icons{display:flex;gap:16px}.grace-social-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:var(--transition);text-decoration:none}
.grace-social-icon:hover{color:var(--accent-yellow);transform:translateY(-2px)}
.grace-contact-right{flex:1;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;width:100%}
.grace-form-background{position:absolute;top:0;right:0;bottom:0;left:0;background-image:url('https://images.unsplash.com/photo-1516426122078-c23e76319801?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=2068&q=80');background-size:cover;background-position:center;background-repeat:no-repeat;opacity:0.02;z-index:1}
.grace-form-background::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(var(--primary-blue-rgb),0.1) 0%,rgba(255,255,255,0.8) 50%,rgba(255,255,255,0.95) 100%);z-index:2}
.grace-form-container{position:relative;z-index:3;background:rgba(255,255,255,0.95);backdrop-filter:blur(10px);padding:60px 50px;border-radius:0;width:100%;max-width:500px;margin:40px;box-shadow:0 20px 60px rgba(0,0,0,0.1)}
.grace-form-header h2{font-size:2rem;font-weight:400;color:var(--dark-blue);margin:0 0 40px 0;text-align:center}
.grace-contact-form{width:100%}
.grace-form-group{margin-bottom:24px}
.grace-form-row{display:flex;gap:16px}
.grace-input-group{flex:1}.grace-form-group label{display:block;font-size:0.875rem;font-weight:500;color:var(--dark-blue);margin-bottom:8px}
.grace-form-group input,
.grace-form-group select,
.grace-form-group textarea{width:100%;padding:14px 16px;border:1px solid var(--border-light);border-radius:4px;font-size:1rem;background:var(--white);color:var(--text-dark);transition:var(--transition);outline:none}
.grace-form-group input:focus,.grace-form-group select:focus,.grace-form-group textarea:focus{border-color:var(--primary-blue);box-shadow:0 0 0 2px rgba(var(--primary-blue-rgb),0.1)}.grace-form-group input::placeholder,
.grace-form-group textarea::placeholder{color:var(--text-muted)}
.grace-form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}
.grace-form-group textarea{resize:vertical;min-height:120px;line-height:1.5}.grace-form-submit{text-align:center;margin-top:32px}
.grace-submit-btn{background-color:var(--dark-blue);color:var(--white);border:none;padding:16px 40px;font-size:1rem;font-weight:500;border-radius:4px;cursor:pointer;transition:var(--transition);min-width:160px}
.grace-submit-btn:hover{background-color:var(--primary-blue);transform:translateY(-2px);box-shadow:0 8px 25px rgba(var(--accent-yellow-rgb),0.3)}
.safari-alert{padding:16px 20px;border-radius:4px;margin-bottom:24px;font-size:0.95rem;border-left:4px solid}
.safari-alert-success{background:#E8F5E9;color:#2E7D32;border-left-color:#4CAF50}
.safari-alert-danger{background:#FFEBEE;color:#C62828;border-left-color:#E53935}
.grace-quote-section{background:var(--white);padding:100px 20px;text-align:center;width:100%;max-width:100%}
.grace-quote-container{max-width:800px;margin:0 auto}
.grace-quote-mark{font-size:4rem;color:var(--primary-blue);line-height:1;margin-bottom:30px}
.grace-quote-text{font-size:1.5rem;font-style:italic;line-height:1.6;color:var(--primary-blue);margin:0 0 40px 0;font-weight:400}
.grace-quote-signature{display:flex;align-items:center;justify-content:center;gap:20px}
.grace-signature-line{width:60px;height:1px;background:var(--primary-blue)}
.grace-signature-name{font-size:1.1rem;color:var(--primary-blue);margin:0;font-style:italic}
.grace-newsletter-section{background:var(--dark-blue);color:var(--white);padding:80px 20px;text-align:center;width:100%;max-width:100%}
.grace-newsletter-container{max-width:600px;margin:0 auto}
.grace-newsletter-container h3{font-size:1.8rem;font-weight:400;margin:0 0 40px 0;line-height:1.4}
.grace-newsletter-form{display:flex;max-width:400px;margin:0 auto;gap:12px}
.grace-newsletter-form input{flex:1;padding:14px 16px;border:1px solid rgba(255,255,255,0.2);border-radius:4px;background:rgba(255,255,255,0.1);color:var(--white);font-size:1rem;outline:none;transition:var(--transition)}
.grace-newsletter-form input::placeholder{color:rgba(255,255,255,0.6)}
.grace-newsletter-form input:focus{border-color:var(--accent-yellow);background:rgba(255,255,255,0.15)}
.grace-newsletter-form button{padding:14px 24px;background:var(--accent-yellow);color:var(--text-dark);border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:var(--transition);white-space:nowrap}
.grace-newsletter-form button:hover{background:#FFD54F;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.15)}@media (max-width:1024px){
    
    .grace-contact-container{flex-direction:column;min-height:auto}
    .grace-contact-left{padding:60px 40px}.grace-contact-right{min-height:600px}.grace-form-container{margin:20px;padding:50px 40px}}@media (max-width:768px){.grace-contact-title{font-size:2.8rem}.grace-contact-left{padding:40px 30px}.grace-form-container{margin:20px;padding:40px 30px}.grace-form-row{flex-direction:column;gap:20px}.grace-quote-text{font-size:1.25rem}.grace-newsletter-form{flex-direction:column;gap:16px}.grace-newsletter-form button{padding:16px 24px}}@media (max-width:480px){.grace-contact-title{font-size:2.2rem}.grace-contact-left{padding:30px 20px}.grace-form-container{margin:10px;padding:30px 20px}.grace-form-header h2{font-size:1.6rem}.grace-quote-section{padding:60px 20px}.grace-quote-text{font-size:1.1rem}.grace-newsletter-section{padding:60px 20px}.grace-newsletter-container h3{font-size:1.4rem}}@media screen and (-webkit-min-device-pixel-ratio:0){.grace-form-background{transform:translateZ(0)}}@media print{.grace-form-background{display:none}.grace-contact-right{background:var(--white)}}.parallax-hero{position:relative;height:60vh;min-height:400px;overflow:hidden;display:flex;align-items:center;justify-content:center}
    .parallax-bg{position:absolute;top:-20%;left:0;width:100%;height:120%;background-attachment:fixed;background-position:center center;background-repeat:no-repeat;background-size:cover;will-change:transform;z-index:1;animation:zoomIn 20s ease-out infinite alternate}@keyframes zoomIn{0%{transform:scale(1)}100%{transform:scale(1.1)}}
    .hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(0,0,0,0.4) 0%,rgba(0,0,0,0.2) 100%);z-index:2}
    .hero-content{position:relative;z-index:3;text-align:center;color:#fff;padding:2rem}.hero-title{font-size:3.5rem;font-weight:700;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,0.5);line-height:1.2}
    .hero-subtitle{font-size:1.2rem;opacity:0.9;margin-bottom:2rem;text-shadow:1px 1px 2px rgba(0,0,0,0.5)}
    

/** =========================================================
destinations-details. php
===============================================================**/

.destination-meta-box {padding: 15px;}
.meta-row {display: flex;margin-bottom: 15px;flex-wrap: wrap;}
.meta-field {flex: 1;min-width: 200px;margin-right: 15px;margin-bottom: 10px;}
.meta-field.full-width {flex: 0 0 100%;}
.meta-field label {display: block;margin-bottom: 5px;font-weight: bold;}
.meta-field input[type="text"],
.meta-field select,
.meta-field textarea {width: 100%;}
.meta-field textarea {min-height: 100px;}
.gallery-preview {display: flex;flex-wrap: wrap;margin-top: 10px;}
.gallery-preview img {width: 80px;height: 80px;object-fit: cover;margin-right: 5px;margin-bottom: 5px;cursor: pointer;border: 2px solid #ddd;}
.gallery-preview img:hover {border-color: #999;}
.itinerary-day {margin-bottom: 20px;padding: 15px;background: #f9f9f9;border: 1px solid #ddd;}



/** =========================================================
text slider Styles
===============================================================**/

.text-slider{position:relative;width:100%;height:100vh;max-height:600px;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff}
.slider-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center}
.slider-video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1}
.video-title-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;z-index:2;background:rgba(0,0,0,0.3)}
.video-main-title{font-size:clamp(3rem,8vw,8rem);font-weight:400;color:#fff;text-align:center;line-height:1.1;letter-spacing:0.02em;text-shadow:2px 2px 4px rgba(0,0,0,0.5);margin:0;padding:0 2rem;max-width:90%;word-spacing:0.3em}
.overlay{position:relative;background:rgba(0,0,0,0.6);padding:30px;border-radius:10px;z-index:2}
.main-title{font-size:40px;margin-bottom:10px}.subtitle{font-size:24px;height:30px}
.slider-btn{display:inline-block;margin-top:15px;padding:10px 20px;color:#fff;background:#ff9900;text-decoration:none;border-radius:5px}
@media(max-width:768px){
.video-main-title{font-size:clamp(2rem,10vw,4rem);padding:0 1rem}}
@media(max-width:480px){
.video-main-title{font-size:clamp(1.5rem,12vw,3rem);word-spacing:0.2em}}



/** ============================================================
Error 404 Page Not Found CSS
=============================================================**/
.Error_404 {overflow: hidden; padding:80px 0 120px;}
.Error_404 .error_pic {width: 35%; float: left; text-align: center;}
.Error_404 .error_pic i {color: #E82A2A; font-size: 250px; line-height: 250px; margin-right: .2em; text-align: center; font-variant: normal; text-transform: none; margin-left: .2em;}
.Error_404 .error_desk {width: 65%; float: left; padding-top: 40px;}
.Error_404 .error_desk h2 {font-size: 55px; line-height: 60px;color: #E82A2A;font-weight: 500;}
.Error_404 .error_desk h4 {font-size: 28px; line-height: 30px;}
.Error_404 .error_desk p .check {line-height: 45px; font-size: 16px;}
.Error_404 .error_desk p .button {padding: 13px 20px; margin: 0; border-radius: 5px; display: inline; margin-left: 10px; box-shadow: inset 0 0 0 0;}
.Error_404 .error_desk p .button:hover{color:#f9f9f9; text-decoration: none; background: #E82A2A;}
a.button, a.tp-button {transition:.2s all; background: transparent; color: #E82A2A; border:solid 2px;}
.wp-block-ub-tabbed-content-tab-title strong {font-weight:500!important;}
.text-dark {color:#a88343;}


/** ============================================================
Footer CSS
=============================================================**/



/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (max-width: 480px) { 
    .wrapper .mainz { width:100%; height:100%; float:left; padding: 15px; background-color: transparent; }
    .main-header-menu {margin-top: 0;}
    .menu-section .top-right-widget {display:none;}
    .menu-section .top-right-widget span {font-size:14px;padding-right: 0px;}
    .home-curricula {padding:3rem 0;}
    .home-curricula h2, .home-gallery h2, .iisu-cta-section h2, .inyana-blog h2, .iisu-sections h2{font-size:30px;}
    .iisu-bgcolored, .principal-msg {padding: 0 20px;}
    .inyana-blog, .iisu-sections {padding:3rem 2rem;}
    .home-end-teaser h2 {font-size:20px;}
    .home-end .wp-block-image {margin-top: -100px;}
    .iisu-sticky-buttons {background:#e82a2ad9;}
    .publications table.dataTable tbody td{display: flex !important;flex-direction: column !important;}
}
@media only screen and (max-width: 767px) {
    
.sticky-header, .menu-section { padding:10px 0; }
.menu-section .member-btn a {padding:3px 15px;}
.menu-section .main-header-menu {margin-left: auto;}
.sticky-header img {margin-top:0;}
.menu-section img { height:70px;}
.sticky-header i.bi-list { color:#555 !important; }
.main-title {font-size: 40px !important;}
.subtitle{font-size:22px !important;}
.text-slider p{font-size: math;}
.kpy_intro_curve {margin-top: -38px;}
.kpy_intro{padding:10px;}
.kpy-container {width: 100% !important;}
.kpy_intro .cyears {top: -70px;width: 85%;}
.intro-serve h2 {font-size: 32px;}
.intro-serve p, .home-nuz p {width:95%;}
.home-event {width: 95% !important;padding-top: 40px;padding-bottom: 30px;}
.home-event h2 {font-size: 40px !important;}
.home-event h4 {font-size: 28px;font-weight: 300;}
.home-nuz h2 {font-size: 32px;}
.default-title {font-size: 42px;}
.kpy-all-news h3, .news-title {font-size: 24px;}
.footer .footer-logo img { margin-top: 0; padding: 10px;  border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; }
.footer-mob, .footer .footer-top h4 { text-align: center; display: block; }
.footer .footer-top h4::after { margin: auto; }
.footer-menus ul li a { font-size: math;}
.main-slider .main-slider-content .big-title h2 { font-size:24px; }
.main-slider .main-slider-content .text p { font-size:14px; line-height:inherit; }
.main-slider .main-slider-content__inner, .focus-areas .focus-area-items { width:100%; }
.main-slider__nav, .focus-areas h1, .inyana-news h1, .nhp-numbers h1 { display:none; }
#offcanvasNavbar { max-width: 400px; padding: 0px; margin: auto; width:100%;  color: #fff;}
.collapse.navbar-collapse:not(.show) {display: block !important;}
.offcanvas-body{padding: 0 !important;background: rgba(var(--kpy-base-rgb),0.9);}
.offcanvas-body ul li { font-size: 20px; font-weight: 500; margin-bottom: 0px; }
  .offcanvas-body ul li .dropdown-toggle::after { margin-left: 0.55em; float: right; margin-top: 10px; content: "\F282";font-style: normal; font-variant: normal; text-transform: none; border:none!important; }
  .offcanvas-body .dropdown-menu { border: none; padding: 5px; width: 100%; background: #E82A2A; }
  .offcanvas-body ul.dropdown-menu li a, .offcanvas-body ul.dropdown-menu li a.nav-link { color:#fff; font-weight:400; }
  .dropdown-item { padding: 5px; font-size: 17px; }
  .menu-section .menu-item .nav-link {padding-left: 10px !important;text-align: left;}
  .menu-section2 .menu-item .nav-link {color: #fff;padding-left: 10px !important;}
  .menu_kipya .menu-item .nav-link {color: #fff;padding-left: 10px !important;}
  .menu_kipya .menu-item .nav-link.active, .menu-section2 .menu-item .nav-link.active{color: #fff;}
 .inyana-news .inyana-news-feed {padding: 0 20px;}
.main-slider .swiper-slide { height:500px; }
.main-slider .container { padding-top:200px; }
.nhp-intro,.nhp-prog, .focus-areas, .nhp-numbers, .inyana-news,.page-content{ padding:30px 20PX!important; }
.inner-menu {display: none;}
.footer { padding:10px;}
/*.breadcrumb{display:none!important;}*/
.header-search input:checked~ul.search-dropdown{display: block;position: absolute;z-index: 119;}
.header-search ul.search-dropdown {display: none;}
.search-dropdown .input-group {right: 75%;margin-top: 40px;}
.search-dropdown .input-group input{visibility:visible;width: 250px !important;height: 60px;}
#search-results {display: none;right: 0%;position: relative;background: rgba(255,255,255,0.93);padding: 1em;
    font-size: small;list-style: none;max-height: 300px;overflow-y: auto;width: 100%;border: 1px solid #ccc;box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);}
#search-results {display: none;right: 75%;position: relative;background: rgba(255,255,255,0.93);padding: 1em;
        font-size: small;list-style: none;max-height: 300px;overflow-y: auto;width: 100%;border: 1px solid #ccc;box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);}
.menu-section .member-btn a {margin-left: 0px;}
/**modal search**/
.modal-search input{height: 60px;width: 320px;}
.modal-search .input-group .btn-search{background: #00AEEF;color:#fff;}
.modal-search #search-results {display: none;right: 0;position: relative;background: transparent;	padding: 1em;list-style: none;width: 100%;border: 0px solid #ccc;color:#fff;}
  
  .team .team-details{padding:20px 30px;}
.admission-process, .news-container, .about-values-intro, .event-container{width:100% !important;}
.pub-content-area {width:100% !important;}
}


@media only screen and (max-width: 1024px) and (min-width: 768px) {
.header-menu-item .menu-item a { font-size:14px; }
.menu-section img {height:80px;width: auto; }
.home-event {width: 95% !important;padding-top: 40px;padding-bottom: 30px;}
.home-event h2 {font-size: 50px !important;}
.main-title {font-size: 50px;}

#menu-copyright-menu ul li a { font-size:12.5px; }
.main-menu .menu-item a {font-size:9.5px;}
.main-menu ul li {padding-right:0;}

.main-header-menu {margin-left:auto;}
    
}


@media only screen and (min-width:1140px) {

}

@media only screen and (-webkit-min-device-pixel-ratio:1.5),
	   only screen and (min-resolution:144dpi) {

}

.flight-booking-section{position:relative;overflow:hidden;padding:2.5rem;box-shadow:0 10px 30px rgba(0,0,0,0.08);margin-bottom:2rem;border:1px solid rgba(255,255,255,0.2);}
.flight-booking-container{position:relative;z-index:2;}
.flight-booking-text{font-size:1.1rem;line-height:1.7;color:#333;margin-bottom:1.2rem;max-width:500px;text-align:center;}
.animated-bg-section::before,.animated-bg-section::after{content:"";position:absolute;border-radius:50%;background:rgba(118,163,170,0.1);animation:float 8s infinite ease-in-out;z-index:1;}
.animated-bg-section::before{width:150px;height:150px;top:-50px;left:-50px;animation-delay:0s;}
.animated-bg-section::after{width:200px;height:200px;bottom:-80px;right:-30px;animation-delay:2s;}
@keyframes float{0%,100%{transform:translateY(0) rotate(0deg);}50%{transform:translateY(-20px) rotate(5deg);}}
.flight-tips-inner{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;min-height:300px;padding:2rem;}
.flight-tips-title{color:#fff !important;font-size:2.5rem !important;font-weight:700;text-align:center;text-shadow:2px 2px 8px rgba(0,0,0,0.3);margin:0;padding:1rem 2rem;border-radius:8px;background:rgba(255,255,255,0.15);backdrop-filter:blur(5px);border:1px solid rgba(255,255,255,0.2);transform:perspective(500px) rotateX(0deg);transition:all 0.3s ease;}
.flight-tips-title:hover{transform:perspective(500px) rotateX(5deg);background:rgba(255,255,255,0.25);}

/*------------------------------------*\
    TYPOGRAPHY
\*------------------------------------*/
