 :root {
     --primary-dark: #0d2818;
     --primary-green: #1a472a;
     --secondary-green: #2a623d;
     --accent-gold: #d4af37;
     --accent-brown: #8b4513;
     --light-beige: #f5f1e8;
     --light-cream: #f9f7f2;
     --dark-text: #1a2c21;
     --light-text: #5a6d5b;
     --white: #ffffff;
     --shadow-light: 0 5px 15px rgba(0, 0, 0, 0.08);
     --shadow-medium: 4px 4px 20px rgba(165, 165, 165, 0.85);
     --transition: all 0.3s ease;
 }

 /* Base Styles */
 body {
     font-family: 'Poppins', sans-serif;
     color: var(--dark-text);
     background-color: var(--light-cream);
     line-height: 1.7;
     overflow-x: hidden;
     width: 100%;
     position: relative;
 }

 h1,
 h2,
 h3,
 h4,
 h5 {
     font-family: 'Playfair Display', serif;
     font-weight: 700;
     color: var(--primary-dark);
 }

 .section-title {
     position: relative;
     margin-bottom: 35px;
 }

 .section-title h2 {
     display: inline-block;
     position: relative;
     padding-bottom: 15px;
 }

 .section-title h2:after {
     content: '';
     position: absolute;
     width: 80px;
     height: 4px;
     background: linear-gradient(to right, var(--accent-gold), var(--accent-brown));
     bottom: 0;
     left: 50%;
     transform: translateX(-50%);
     border-radius: 2px;
 }

 /* Header Styles */
 .navbar {
     background-color: rgba(13, 40, 24, 0.95) !important;
     backdrop-filter: blur(10px);
     padding: 15px 0;
     transition: var(--transition);
     border-bottom: 2px solid rgba(212, 175, 55, 0.2);
 }

 .navbar.scrolled {
     padding: 10px 0;
     box-shadow: var(--shadow-light);
 }

 /* Logo Responsive */
 .navbar-brand {
     display: flex;
     align-items: center;
     padding: 0;
 }

 .navbar-brand img {
     height: 50px;
     width: auto;
     transition: var(--transition);
     object-fit: contain;
 }

 .nav-link {
     color: var(--white) !important;
     font-weight: 500;
     margin: 0 10px;
     position: relative;
 }

 .nav-link:after {
     content: '';
     position: absolute;
     width: 0;
     height: 2px;
     background: var(--accent-gold);
     bottom: 0;
     left: 0;
     transition: var(--transition);
 }

 .nav-link:hover:after,
 .nav-link.active:after {
     width: 100%;
 }

 .nav-link:hover {
     color: var(--accent-gold) !important;
 }

 .nav-cta {
     background: linear-gradient(to right, var(--accent-gold), var(--accent-brown));
     color: var(--primary-dark) !important;
     padding: 10px 25px !important;
     border-radius: 50px;
     font-weight: 700 !important;
     margin-left: 10px;
 }

 .nav-cta:hover {
     background-color: var(--white);
     color: var(--primary-green) !important;
 }

 /* Hero Section */
 .hero-section {
     background: linear-gradient(rgba(13, 40, 24, 0.85), rgba(26, 71, 42, 0.9)),
         url('https://images.unsplash.com/photo-1518837695005-2083093ee35b?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=2070&q=80');
     background-size: cover;
     background-position: center;
     color: var(--white);
     padding: 160px 0 100px;
     position: relative;
     width: 100%;
     overflow: hidden;
 }

 .hero-section h1 {
     font-size: 3.5rem;
     color: var(--white);
     margin-bottom: 1.5rem;
     text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.3);
 }

 .hero-section p {
     font-size: 1.2rem;
     margin-bottom: 2rem;
     color: rgba(255, 255, 255, 0.9);
 }

 .cta-button {
     background: linear-gradient(to right, var(--accent-gold), var(--accent-brown));
     color: var(--primary-dark);
     padding: 15px 35px;
     border-radius: 50px;
     text-decoration: none;
     font-weight: 700;
     font-size: 1.1rem;
     transition: var(--transition);
     border: none;
     display: inline-block;
 }

 .cta-button:hover {
     transform: translateY(-3px);
     box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
     color: var(--primary-dark);
 }

 /* Destinations Section */
 .destinations-section {
     padding: 50px 0;
     background-color: var(--light-cream);
     width: 100%;
     overflow: hidden;
 }

 .destination-card {
     background-color: var(--white);
     border-radius: 15px;
     overflow: hidden;
     box-shadow: var(--shadow-light);
     transition: var(--transition);
     height: 100%;
     margin-bottom: 25px;
     width: 100%;
 }

 .destination-card:hover {
     transform: translateY(-10px);
     box-shadow: var(--shadow-medium);
 }

 .card-img-top {
     height: 250px;
     width: 100%;
     object-fit: cover;
     transition: transform 0.5s ease;
 }

 .destination-card:hover .card-img-top {
     transform: scale(1.05);
 }

 .card-body {
     padding: 25px;
 }

 .card-title {
     color: var(--primary-green);
     font-size: 1.6rem;
     margin-bottom: 15px;
 }

 .card-text {
     color: var(--light-text);
     margin-bottom: 20px;
     font-weight: 500;
 }

 .card-features {
     display: grid;
     gap: 10px;
     margin-bottom: 20px;
 }

 .card-feature {
     background-color: var(--light-beige);
     color: var(--primary-green);
     padding: 5px 15px;
     border-radius: 50px;
     font-size: 0.9rem;
     font-weight: 500;
 }

 .card-features span {
     display: flex;
     align-items: center;
 }

 .card-features span svg {
     color: #2ecc71;
     margin-right: 12px;
     margin-top: 3px;
     font-size: 1.1rem;
 }

 .card-buttons {
     text-align-last: center;
     width: 100%;
 }

 .btn-book {
     background: linear-gradient(to right, var(--accent-gold), var(--accent-brown));
     color: var(--primary-dark);
     border: none;
     padding: 12px 25px;
     border-radius: 50px;
     font-weight: 600;
     flex: 1;
     min-width: 120px;
     transition: var(--transition);
     text-align: center;
         width: 100%;
 }

 .btn-whatsapp {
     background-color: #157a3f;
     color: var(--white);
     border: none;
     padding: 12px 25px;
     border-radius: 50px;
     font-weight: 600;
     flex: 1;
     min-width: 120px;
     transition: var(--transition);
     text-align: center;
    margin-top: 10px;
        width: 100%;
 }

 .btn-book:hover,
 .btn-whatsapp:hover {
     transform: translateY(-3px);
     box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
 }

 /* Wildlife Section */
 .wildlife-section {
     background-color: var(--white);
     position: relative;
     padding: 50px 0;
     width: 100%;
     overflow: hidden;
 }

 .wildlife-grid {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
     gap: 30px;
     width: 100%;
 }

 .wildlife-card {
     background-color: var(--light-cream);
     border-radius: 15px;
     padding: 30px;
     text-align: center;
     box-shadow: var(--shadow-medium);
     transition: var(--transition);
     border: 2px solid transparent;
     width: 100%;
 }

 .wildlife-card:hover {
     transform: translateY(-10px);
     box-shadow: var(--shadow-medium);
     border-color: rgba(212, 175, 55, 0.3);
 }

 .wildlife-icon {
     font-size: 3rem;
     color: var(--accent-gold);
     margin-bottom: 20px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     height: 80px;
     width: 80px;
     background-color: rgba(212, 175, 55, 0.1);
     border-radius: 50%;
 }

 .wildlife-card h4 {
     font-size: 1.4rem;
     margin-bottom: 15px;
     color: var(--primary-green);
 }

 .wildlife-card p {
     color: var(--light-text);
     line-height: 1.6;
 }

 /* Team Section */
 .team-section {
     padding: 50px 0;
     background-color: var(--white);
     width: 100%;
     overflow: hidden;
 }

 .team-card {
     background-color: var(--white);
     border-radius: 15px;
     overflow: hidden;
     box-shadow: var(--shadow-light);
     transition: var(--transition);
     height: 100%;
     margin-bottom: 30px;
     text-align: center;
     width: 100%;
 }

 .team-card:hover {
     transform: translateY(-10px);
     box-shadow: var(--shadow-medium);
 }

 .team-img {
     height: 300px;
     width: 100%;
     object-fit: cover;
 }

 .team-info {
     padding: 25px;
 }

 .team-name {
     color: var(--primary-green);
     font-size: 1.5rem;
     margin-bottom: 5px;
 }

 .team-role {
     color: var(--accent-brown);
     font-weight: 600;
     margin-bottom: 15px;
     display: block;
 }

 .team-desc {
     color: var(--light-text);
     margin-bottom: 20px;
 }

 .team-social {
     display: flex;
     justify-content: center;
     gap: 15px;
 }

 .team-social a {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 40px;
     height: 40px;
     background-color: var(--light-beige);
     border-radius: 50%;
     color: var(--primary-green);
     transition: var(--transition);
 }

 .team-social a:hover {
     background-color: var(--accent-gold);
     color: var(--white);
     transform: translateY(-3px);
 }

 /* Founder Section */
 .founder-section {
     padding: 50px 0;
     background-color: var(--light-cream);
     width: 100%;
     overflow: hidden;
 }

 .founder-container {
     background-color: var(--white);
     border-radius: 15px;
     overflow: hidden;
     box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
     width: 100%;
 }

 .founder-img {
     height: 100%;
     min-height: 500px;
     width: 100%;
     object-fit: cover;
 }

 .founder-content {
     padding: 40px;
 }

 .founder-quote {
     font-size: 1.5rem;
     font-style: italic;
     color: var(--primary-green);
     margin-bottom: 25px;
     line-height: 1.5;
     position: relative;
     padding-left: 20px;
     border-left: 5px solid var(--accent-gold);
 }

 .founder-name {
     color: var(--primary-green);
     font-size: 2.2rem;
     margin-bottom: 10px;
 }

 .founder-role {
     color: var(--accent-brown);
     font-size: 1.3rem;
     margin-bottom: 25px;
     font-weight: 600;
 }

 .founder-desc {
     color: var(--light-text);
     margin-bottom: 25px;
     line-height: 1.6;
 }

 /* Modal Styles */
 .modal-content {
     border-radius: 15px;
     overflow: hidden;
     border: none;
 }

 .modal-header {
     background: linear-gradient(to right, var(--primary-green), var(--secondary-green));
     color: var(--white);
     border-bottom: none;
     padding: 25px 30px;
 }

 .modal-title {
     color: var(--white);
     font-size: 1.8rem;
 }

 .modal-body {
     padding: 30px 30px 0px 30px;
 }

 .modal-footer {
     border-top: none;
     padding: 5px 30px;
 }

 .modal-footer .btn-submit{
    background: linear-gradient(to right, var(--accent-gold), var(--accent-brown));
 }

 .btn-close-white {
     filter: invert(1) grayscale(100%) brightness(200%);
 }
 
 .form-label{
     font-size: 15px;
 }

 /* Footer */
 footer {
     background-color: var(--primary-dark);
     color: var(--white);
     padding: 80px 0 40px;
     width: 100%;
     overflow: hidden;
 }

 .footer-title {
     color: var(--accent-gold);
     font-size: 1.5rem;
     margin-bottom: 25px;
     position: relative;
     padding-bottom: 15px;
 }

 .footer-title:after {
     content: '';
     position: absolute;
     width: 50px;
     height: 3px;
     background-color: var(--accent-gold);
     bottom: 0;
     left: 0;
 }

 .footer-links a {
     color: rgba(255, 255, 255, 0.75);
     text-decoration: none;
     margin-bottom: 12px;
     display: block;
     transition: var(--transition);
 }

 .footer-links a:hover {
     color: var(--accent-gold);
     padding-left: 5px;
 }

 .footer-social {
     display: flex;
     gap: 15px;
     margin-top: 25px;
 }

 .footer-social a {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 45px;
     height: 45px;
     background-color: rgba(255, 255, 255, 0.05);
     border-radius: 50%;
     color: var(--white);
     font-size: 1.2rem;
     transition: var(--transition);
 }

 .footer-social a:hover {
     background-color: var(--accent-gold);
     color: var(--primary-dark);
     transform: translateY(-5px);
 }

 .copyright {
     text-align: center;
     padding-top: 40px;
     border-top: 1px solid rgba(255, 255, 255, 0.1);
     color: rgba(255, 255, 255, 0.6);
     font-size: 0.9rem;
     line-height: 1.6;
 }

 /* =========================== */
 /* MOBILE RESPONSIVE FIXES */
 /* =========================== */

 /* General Mobile Fixes */
 @media (max-width: 1200px) {
     .navbar-brand img {
         height: 50px;
     }

     .hero-section h1 {
         font-size: 3rem;
     }

     .wildlife-grid {
         grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
     }
 }

 @media (max-width: 992px) {
     .navbar-brand img {
         height: 50px;
     }

     .hero-section h1 {
         font-size: 2.5rem;
     }

     .hero-section p {
         font-size: 1.1rem;
     }

     .section-title h2 {
         font-size: 2.2rem;
     }

     .wildlife-grid {
         grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
         gap: 25px;
     }

     .wildlife-card {
         padding: 25px;
     }

     .wildlife-icon {
         font-size: 2.8rem;
         height: 75px;
         width: 75px;
     }

     .wildlife-card h4 {
         font-size: 1.3rem;
     }

     .founder-img {
         min-height: 400px;
     }

     .founder-content {
         padding: 30px;
     }

     .founder-quote {
         font-size: 1.3rem;
     }

     .founder-name {
         font-size: 2rem;
     }
 }

 /* Tablet and Mobile Landscape */
 @media (max-width: 768px) {

     /* Fix horizontal scroll */
     html,
     body {
         overflow-x: hidden !important;
         max-width: 100vw !important;
     }

     .container {
         max-width: 100% !important;
         padding-left: 12px !important;
         padding-right: 12px !important;
     }

     .row {
         margin-left: 0 !important;
         margin-right: 0 !important;
     }

     /* Logo Fix */
     .navbar-brand img {
         height: 45px;
     }

     .navbar-brand {
         position: relative;
         left: auto;
         transform: none;
     }

     /* Navbar Mobile Menu */
     .navbar-collapse {
         background: var(--primary-dark);
         padding: 20px;
         border-radius: 10px;
         margin-top: 15px;
         text-align: center;
     }

     .nav-item {
         margin: 10px 0;
     }

     .nav-link {
         text-align: center;
         padding: 12px !important;
         margin: 0;
     }

     .nav-cta {
         margin: 15px auto 0;
         display: block;
         width: 80%;
         text-align: center;
     }

     /* Hero Section */
     .hero-section {
         padding: 120px 0 60px !important;
         background-attachment: scroll !important;
     }

     .hero-section h1 {
         font-size: 2.2rem;
         line-height: 1.3;
         margin-bottom: 20px;
     }

     .hero-section p {
         font-size: 1rem;
         margin-bottom: 30px;
     }

     .cta-button {
         padding: 14px 30px;
         font-size: 1rem;
         margin: 10px 5px;
         width: auto;
         display: inline-block;
     }

     /* Destinations Section */
     .destinations-section {
         padding: 38px 0;
     }

     .section-title {
         margin-bottom: 30px;
     }

     .section-title h2 {
         font-size: 1.8rem;
         padding-bottom: 12px;
     }

     .destination-card {
         margin-bottom: 8px;
     }

     .card-img-top {
         height: 200px;
     }

     .card-body {
         padding: 20px;
     }

     .card-title {
         font-size: 1.4rem;
     }

     .card-text {
         font-size: 0.95rem;
     }

     .card-buttons {
         flex-direction: column;
         gap: 12px;
     }

     .btn-book,
     .btn-whatsapp {
         width: 100%;
         padding: 14px;
         font-size: 1rem;
     }

     /* Wildlife Section */
     .wildlife-section {
         padding: 40px 0;
     }

     .wildlife-grid {
         grid-template-columns: 1fr !important;
         gap: 20px;
         max-width: 500px;
         margin: 0 auto;
     }

     .wildlife-card {
         padding: 25px;
         margin-bottom: 0;
     }

     .wildlife-icon {
         font-size: 2.5rem;
         height: 70px;
         width: 70px;
         margin-bottom: 15px;
     }

     .wildlife-card h4 {
         font-size: 1.2rem;
         margin-bottom: 10px;
     }

     .wildlife-card p {
         font-size: 0.95rem;
     }

     /* Remove hover on mobile */
     .wildlife-card:hover,
     .destination-card:hover,
     .team-card:hover {
         transform: none;
     }

     /* Team Section */
     .team-section {
         padding: 40px 0;
     }

     .team-card {
         margin-bottom: 30px;
     }

     .team-img {
         height: 250px;
     }

     .team-info {
         padding: 20px;
     }

     .team-name {
         font-size: 1.3rem;
     }

     /* Founder Section */
     .founder-section {
         padding: 40px 0;
     }

     .founder-container {
         margin: 0;
     }

     .founder-img {
         min-height: 300px;
         height: 300px;
     }

     .founder-content {
         padding: 25px;
     }

     .founder-quote {
         font-size: 1.1rem;
         padding-left: 15px;
         margin-bottom: 20px;
     }

     .founder-name {
         font-size: 1.8rem;
     }

     .founder-role {
         font-size: 1.1rem;
     }

     .founder-desc {
         font-size: 0.95rem;
     }

     /* Modal */
     .modal-dialog {
         margin: 10px;
         max-width: calc(100% - 20px);
     }

     .modal-header {
         padding: 20px;
     }

     .modal-title {
         font-size: 1.4rem;
     }

     .modal-body {
         padding: 20px;
     }

     .modal-footer {
         padding: 1px 20px;
     }

     /* Footer */
     footer {
         padding: 60px 0 30px;
     }

     .footer-title {
         font-size: 1.3rem;
         margin-bottom: 20px;
     }

     .footer-links a {
         font-size: 0.95rem;
     }

     .footer-social a {
         width: 40px;
         height: 40px;
         font-size: 1.1rem;
     }

     .copyright {
         padding-top: 30px;
         font-size: 0.85rem;
     }
 }

 /* Mobile Portrait */
 @media (max-width: 576px) {
     .form-label{
     font-size: 14px;
 }
     .container {
         max-width: 100% !important;
         padding-left: 8px !important;
         padding-right: 8px !important;
     }

     .navbar-brand img {
         height: 45px;
     }

     .hero-section {
         padding: 100px 0 50px !important;
     }

     .hero-section h1 {
         font-size: 1.8rem;
     }

     .hero-section p {
         font-size: 0.95rem;
     }

     .cta-button {
         padding: 12px 25px;
         font-size: 0.95rem;
         margin: 8px 0;
         width: 100%;
         text-align: center;
     }

     .section-title h2 {
         font-size: 1.6rem;
     }

     .card-img-top {
         height: 180px;
     }

     .card-title {
         font-size: 1.3rem;
     }

     .card-text {
         font-size: 0.9rem;
     }

     .wildlife-section {
         padding: 30px 15px;
     }

     .wildlife-card {
         padding: 20px;
     }

     .wildlife-icon {
         font-size: 2.2rem;
         height: 65px;
         width: 65px;
     }

     .wildlife-card h4 {
         font-size: 1.1rem;
     }

     .wildlife-card p {
         font-size: 0.9rem;
     }

     .team-img {
         height: 220px;
     }

     .team-name {
         font-size: 1.2rem;
     }

     .founder-img {
         min-height: 250px;
         height: 250px;
     }

     .founder-quote {
         font-size: 1rem;
     }

     .founder-name {
         font-size: 1.6rem;
     }

     .founder-desc {
         font-size: 0.9rem;
     }

     footer {
         padding: 50px 15px 25px;
     }
 }

 /* Small Mobile Devices */
 @media (max-width: 375px) {
     
         .modal-header {
        padding: 10px;
    }
         .modal-footer {
        padding: 8px 20px;
    }
     .navbar-brand img {
         height: 30px;
     }

     .hero-section h1 {
         font-size: 1.6rem;
     }

     .cta-button {
         font-size: 0.9rem;
         padding: 12px 20px;
     }

     .section-title h2 {
         font-size: 1.4rem;
     }

     .card-img-top {
         height: 160px;
     }

     .wildlife-card {
         padding: 18px;
     }

     .wildlife-icon {
         font-size: 2rem;
         height: 60px;
         width: 60px;
     }

     .wildlife-card h4 {
         font-size: 1rem;
     }

     .wildlife-card p {
         font-size: 0.85rem;
     }

     .founder-name {
         font-size: 1.4rem;
     }
 }

 /* Mobile Landscape */
 @media (max-width: 768px) and (orientation: landscape) {
     .hero-section {
         padding: 100px 0 50px !important;
         min-height: auto;
     }

     .wildlife-grid {
         grid-template-columns: repeat(2, 1fr) !important;
         gap: 15px;
     }

     .wildlife-card {
         padding: 18px 15px;
         min-height: 220px;
     }

     .wildlife-icon {
         font-size: 2rem;
         height: 60px;
         width: 60px;
         margin-bottom: 10px;
     }

     .wildlife-card h4 {
         font-size: 1rem;
     }

     .wildlife-card p {
         font-size: 0.85rem;
     }
 }

 /* Tablet */
 @media (min-width: 769px) and (max-width: 1024px) {
     .wildlife-grid {
         grid-template-columns: repeat(2, 1fr) !important;
     }

     .founder-img {
         min-height: 450px;
     }
 }

 /* Touch Device Optimizations */
 @media (hover: none) and (pointer: coarse) {

     .destination-card:hover,
     .team-card:hover,
     .wildlife-card:hover {
         transform: none;
     }

     .btn-book:hover,
     .btn-whatsapp:hover,
     .cta-button:hover,
     .team-social a:hover,
     .footer-social a:hover {
         transform: none;
     }

     .nav-link,
     .btn,
     .card-buttons button,
     .card-buttons a {
         min-height: 44px;
         padding: 12px;
     }

     .btn:active,
     .card-buttons button:active,
     .nav-link:active {
         opacity: 0.8;
         transform: scale(0.98);
     }
 }

 /* iOS Safari Fixes */
 @supports (-webkit-touch-callout: none) {
     .hero-section {
         background-attachment: scroll;
     }

     .modal {
         -webkit-overflow-scrolling: touch;
     }

     input,
     select,
     textarea {
         font-size: 16px;
     }
 }

 /* Hide horizontal scrollbar */
 ::-webkit-scrollbar {
     width: 0;
     height: 0;
 }