/*
 Theme Name:   TopTravel Child
 Theme URI:    https://example.com/toptravel-child
 Description:  Child theme extending TopTravel (which extends Kava). Allows safe updates to TopTravel.
 Author:       Your Name
 Author URI:   https://example.com
 Template:     kava
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  toptravel-child
*/

html,
body,
p,
div,
span,
a,
button,
input,
textarea,
select,
h1, h2, h3, h4, h5, h6,
li,
td,
th,
label {
  font-family: "Roboto", sans-serif;
}

/* Set the root font size */
html {
  font-size: 16px;
}

/* Set body font size */
body {
  font-size: 16px;
  line-height: 1.6;
}

/* Reset common text elements to inherit properly */
p {
  font-size: 16px;
  margin-bottom: 1em;
}

/* List items */
ul, ol {
  font-size: 16px;
}

li {
  font-size: 16px;
}

/* Span and other inline elements */
span, a, strong, em, i, b {
  font-size: inherit;
}

/* Headings - adjust these to your preference */
h1 {
  font-size: 2.5rem; /* 40px */
}

h2 {
  font-size: 2rem; /* 32px */
}

h3 {
  font-size: 1.75rem; /* 28px */
}

h4 {
  font-size: 1.5rem; /* 24px */
}

h5 {
  font-size: 1.25rem; /* 20px */
}

h6 {
  font-size: 1rem; /* 16px */
}

h1, h2, h3, h4, h5, h6 {
  color: #3A53A4;
}

/* Tables */
table, td, th {
  font-size: 16px;
}

/* Form elements */
input, textarea, select, button {
  font-size: 16px;
}

/* Divs and sections inherit from body */
div, section, article, aside, nav, header, footer {
  font-size: inherit;
}

.main-content a, .main-content a:hover {
  color: #f34230 !important;
}

@media (max-width: 576px) {
  .main-content p {
    font-size: 18px;
  }
}

.bosfl__header-ct {
    align-items: flex-start;
    flex-direction: row;
    width: 100%;
    justify-content: space-between;
    max-width: 1200px !important;
    margin: 0 auto;
}

.elementor-68 .elementor-element.elementor-element-d0ec046 {
  padding: 0px 20px 0px 20px !important;
}


.bosfl__logo-ct {}

.bosfl-brand-logo {background-image: url('/wp-content/uploads/2025/12/BOSLF-HeaderLogo1.png');display: inline-block;width: 225px;max-width: 100%;height: 60px;background-size: contain;background-repeat: no-repeat;background-position: center left;text-indent: -9999px;overflow: hidden;}

@media (max-width: 1024px) {
  .bosfl__header-ct .elementor-column {
    width: 100%;
  }
  .bosfl__logo-ct {
    margin-top: 10px;
  }
}

@media (max-width: 767px) {
  .elementor-68 .elementor-element.elementor-element-bf6ddd2 {
      width: auto;
      max-width: auto;
  }
  .bosfl__header-ct {
    flex-wrap: nowrap;
  }

  .bosfl__header-ct .elementor-column {
    width: auto !important;
  }

  .bosfl__logo-ct {
    margin-top: 0;
  }
}

.elementor-10 .elementor-element.elementor-element-dc2c664 { 
  margin-bottom: 0 !important;
}

body:not(.page-template-fullwidth-content) .site-content { margin-bottom: 0;}
footer {display: flex;  flex-direction: column; background-color: #3A53A4 !important;}

.section-padding-90 { padding: 10px 0 25px 0; }
.footer-section .container { max-width: 1200px; margin: 0 auto; }
.footer-row { display: flex; flex-direction: row; gap: 120px; margin-top: 25px; }
.footer-logo {display: block; text-align: center; margin-bottom: 20px;}
.footer-logo img {max-width: 200px; height: auto;}

p.footer-mission {color: #fff;}

.footer-section .widget .contact-info {padding-left: 0; list-style: none; margin: 0; font-size: 16px; margin-bottom: 15px;}
.footer-section .widget .contact-info li {line-height: 30px;}
.footer-section .widget .contact-info li i {margin-right: 10px;}
.footer-section .widget h5 {font-size: 1.25rem;margin-bottom: 14px;color: #fff;font-weight: 700;}
.footer-section .widget .footer-menu {margin: 0; padding: 0;list-style: none;}
.footer-section .widget .footer-menu li { margin-bottom: 0;}
.footer-section .widget .footer-menu li a {color: #c7c4e2;; text-decoration: none;}
.footer-section .widget .footer-menu li a:hover {color: #f34230 !important;}
.footer-section .about-us-container {flex: 0 0 33%;}
.footer-section .footer-nav-container {flex: 1; display: flex; flex-direction: row; gap: 20px;}
.footer-section .footer-nav-container .footer-column { flex: 1; }
.footer-section .footer-top .widget ul li {color: #fff;}

.social-media {
    padding: 0;
    overflow: hidden;
    text-align: center;
    margin: 0;
    list-style: none;
}
.social-media li {
  float: left;
}


.social-media li a {
    width: 46px;
    height: 46px;
    font-size: 18px;
    line-height: 46px;
    margin-right: 5px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    text-align: center;
    display: flex;
    background-color: #ffffff;
    justify-content: center;
    align-items: center;
    text-decoration: none;
}

.footer-social-icon i {
    color: #9e0003 !important;
    font-size: 23px;
}

.footer-bottom {background-color: #FFFFFF; text-align: center;}
.footer-bottom p {padding: 10px 20px; font-size: 12px; margin-bottom: 0;}

@media (max-width: 1024px) {
  .footer-row {
    flex-direction: column-reverse;
    align-items: center;
    gap: 35px
  }

  .about-us-container {
    max-width: 500px;
    flex: 1;
  }

  .footer-section .footer-nav-container {
    width: 100%;
  }

  .footer-section .footer-nav-container .footer-column {
    display: flex;
    justify-content: center;
  }
}

@media (max-width: 767px) {
  .footer-section .footer-nav-container { 
    flex-direction: column;
  }
  .footer-section .footer-nav-container .footer-column {
    justify-content: flex-start;
  }
  .footer-section .widget .footer-menu { display: flex; gap: 10px; flex-wrap: wrap;}

}