hr{
  border-top-width: 1px !important;
  border-color: var(--color-black);
  opacity: 1;
  padding-bottom: 1rem;
}
img{max-width: 100%;}

.hyphens-auto{
  hyphens: auto;
}
/* .material-symbols-rounded {
  font-variation-settings:
  'FILL' 0,
  'wght' 200,
  'GRAD' 0,
  'opsz' 24
} */
.btn-close{
  --bs-btn-close-bg: transparent;
  --bs-btn-close-color: var(--color-white);
  width: inherit;
  height: inherit;
  line-height: 1;
  box-shadow: none !important;
}
.btn-close:after{
  content: "\e5cd";
  font-family: 'Material Symbols Rounded';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  font-size: 1.4em;
}

.spacer.spacer-header{
  display: block;
  height: 125px;
}
.spacer.spacer-100{
  display: block;
  height: 100px;
}

.container-fluid{
  --bs-gutter-x: 6rem;
}
@media (max-width: 1199px) {
  .container-fluid{
    --bs-gutter-x: 3rem;
  }
}
@media (min-width: 1900px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: var(--wp--style--global--content-size);
    }
}



@media (max-width: 768px) {

  /* Target all possible table wrappers */
  .wp-block-table,
  .wp-block-table__wrapper,
  figure.wp-block-table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    width: 100%;
  }

  .wp-block-table table {
    width: 100%;
    margin-bottom: 0;
    display: table; /* Ensure table stays as table */
  }

  /* Prevent table from shrinking */
  .wp-block-table table {
    min-width: 600px; /* Adjust based on your content */
  }


  .wp-block-table {
    border: 1px solid #ddd; /* Visual hint of scrollable area */
    border-radius: 4px;
  }

  /* Scroll indicator */
  .wp-block-table::after {
    content: "← Scroll to see more →";
    display: block;
    text-align: center;
    font-size: 12px;
    color: #666;
    padding: 8px;
    background: #f8f9fa;
  }
}



/*------------------------------------*\
  Header
\*------------------------------------*/

.navbar-brand svg{
  width: 250px;
  transition: all .15s ease;
}
@media (max-width: 1399px) {
  .navbar-brand svg{
    width: 150px;
  }
}

body > header{
  z-index: 99;
}
body.scroll > header{
  box-shadow: var(--bs-box-shadow);
}
body.scroll > header::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    backdrop-filter: blur(15px);
    background-color: rgb(21 45 94 / 33%);
    pointer-events: none;
}
body.scroll .navbar-brand svg{
  width: 150px;
}



/*------------------------------------*\
  Navigation
\*------------------------------------*/

body > header .offcanvas-header{
  padding-bottom: 0;
}
.navbar-toggler{
  --bs-navbar-toggler-padding-y: 0;
  --bs-navbar-toggler-padding-x: 0;
  --bs-navbar-color: #fff;
  --bs-border-width: 0;
  color: var(--color-white);
  box-shadow: none !important;
}
.navbar-toggler > span{font-size: 40px;}
.navbar-nav{
  --bs-nav-link-font-weight: 500;
  --bs-nav-link-font-size: 16px;
  --bs-navbar-nav-link-padding-x: 1.8rem;
  --bs-nav-link-padding-y: .8rem;
  --bs-nav-link-border-radius: 15px;
  --bs-nav-link-color: var(--color-white);
  --bs-nav-link-hover-color: var(--color-red);
  --bs-navbar-hover-color: var(--color-red);
  --bs-navbar-active-color: var(--color-grey-dark);
}
.nav-link{
  letter-spacing: .02rem;
  border-radius: var(--bs-nav-link-border-radius);
}
.nav-link:hover{
  background-color: var(--bs-nav-link-hover-bg);
}
.navbar-nav .dropdown-menu{
  --bs-dropdown-bg: transparent;
}
.navbar-nav .dropdown-toggle{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.navbar-nav a[data-bs-toggle]:after{
  content: "\e313";
  font-family: 'Material Symbols Rounded';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  border: 0;
  transform: rotate(-90deg);
  transition: transform .35s
  ease;
  font-size: 1.5em;
  margin: 0;
  min-width: 23px;
}
.dropdown-item{
  font-weight: var(--bs-dropdown-font-weight);
  border-radius: var(--bs-dropdown-item-border-radius);
}
.dropdown-menu{
  box-shadow: var(--bs-box-shadow);
}


@media (min-width: 1200px) {

  .navbar-nav a[data-bs-toggle]:after{
    transform: inherit;
    margin-left: .5rem;
  }
  .navbar-nav .dropdown-menu{
    --bs-dropdown-link-color: var(--color-grey-dark);
    --bs-dropdown-bg: var(--color-white);
    --bs-dropdown-link-hover-bg: var(--color-grey-light);
    --bs-dropdown-link-hover-color: var(--color-black);
    --bs-dropdown-font-size: 16px;
    --bs-dropdown-link-active-bg: transparent;
    --bs-dropdown-padding-y: 3px;
    --bs-dropdown-padding-x: 3px;
    --bs-dropdown-item-padding-x: 1.8rem;
    --bs-dropdown-item-padding-y: 0.8rem;
    --bs-dropdown-item-border-radius: 15px;
    --bs-dropdown-font-weight: 500;
    --bs-dropdown-border-radius: 18px;
    --bs-dropdown-min-width: 13rem;
    --bs-dropdown-border-width: 0;
  }

}

@media (max-width: 1199px) {

  .navbar-nav{
    /* --bs-nav-link-color: var(--color-grey-light);
    --bs-navbar-hover-color: var(--color-grey-light);
    --bs-nav-link-hover-bg: transparent;
    --bs-navbar-active-color: var(--color-white); */
    --bs-nav-link-hover-bg: transparent;
    --bs-nav-link-border-radius: 0;
  }

  ul.navbar-nav > li{
    line-height: 1.4;
    /* border-bottom: 1px solid var(--color-grey-light); */
  }

  ul.navbar-nav li > .dropdown-item {
    /* border-top: 1px solid #49464f1c; */
  }

  .navbar-nav .dropdown-toggle > span {
    position: relative;
  }
  .navbar-nav a[data-bs-toggle][aria-expanded="true"]:after {
    transform: rotate(0deg);
  }
  ul.navbar-nav .nav-link,
  ul.navbar-nav .dropdown-item{
    padding: 1rem 1.8rem;
    margin: 0;
    position: relative;
    transition: none;
  }

  ul.navbar-nav .nav-link[aria-expanded="true"]{
    background-color: rgb(var(--color-primary-rgb) / 10%);
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
  }

  .navbar-nav .dropdown-menu{
    --bs-dropdown-bg: rgb(var(--color-primary-rgb) / 10%);
    --bs-dropdown-link-color: var(--color-grey-dark);
    --bs-dropdown-link-active-color: var(--color-olive-medium);
    --bs-dropdown-border-width: 0;
    --bs-dropdown-padding-x: 0;
    --bs-dropdown-padding-y: .5rem;
    --bs-box-shadow: none;
    --bs-dropdown-font-weight: 500;
    --bs-dropdown-font-size: 16px;
    --bs-dropdown-border-radius: 0;
    margin: 0;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
  }
  .navbar-nav .dropdown-menu > li:first-of-type{
    margin-top: -.5rem;
  }

  .navbar .offcanvas{background: transparent;}
  .navbar .offcanvas::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    backdrop-filter: blur(15px);
    background-color: rgb(48 84 159 / 16%);
            pointer-events: none;
  }

}



/*------------------------------------*\
  Page
\*------------------------------------*/
.jumbotron h1{
  margin: 0;
  font-size: var(--fs-jumbotron);
  hyphens: auto;
}

/*------------------------------------*\
  Bolton animation
\*------------------------------------*/
#bolton-ani{width: 70%; min-height: 40vw;}
@media (max-width: 768px) {
  #bolton-ani{width: 100%;}
}

/*------------------------------------*\
  References
\*------------------------------------*/
.references-grid > div{

}
.references-grid > div:nth-child(even) > div:first-of-type{
  order: 2;
}
@media (max-width: 1199px) {
  .references-grid > div > div:first-of-type{
    order: 1;
  }
}

/*------------------------------------*\
  Modals
\*------------------------------------*/
.modal{
  --bs-modal-border-width: 0;
  --bs-modal-header-border-width: 0;
  --bs-modal-footer-border-width: 0;
  --bs-modal-header-padding: 2rem;
  --bs-modal-padding: 2rem;
}

.modal-title{margin-top: 0;}
.modal-body{padding-top: 0; padding-bottom: 0;}

@media (max-width: 1199px) {
  .modal{
    --bs-modal-header-padding: 1rem;
    --bs-modal-padding: 1rem;
  }
}

/*------------------------------------*\
  Swiper JS
\*------------------------------------*/
.swiper {
 width: 100%;
 height: 600px;
}

.swiper-slide {
 text-align: center;
 font-size: 18px;
 background: #444;
 display: flex;
 justify-content: center;
 align-items: center;
}

.swiper-slide img {
 display: block;
 width: 100%;
 height: 100%;
 object-fit: cover;
}

/*------------------------------------*\
  Footer
\*------------------------------------*/
footer > div{
  background-image: url(../images/flag.svg);
  background-repeat: no-repeat;
  background-position: 98% bottom;
  background-size: 150px;
}

footer .social svg{
  width: 30px;
  height: 30px;
}
footer .social a:hover > svg{
  border-radius: 10px;
  background-color: #fff;
}

.social-icon svg{
  stroke: var(--color-primary) !important;
}

footer p{
  margin-top: 1rem;
  margin-bottom: 2rem;
}
footer h3{
  margin-bottom: .5rem;
}
footer .navbar-brand > svg,
footer .navbar-brand > img{
  width: 250px;
}


footer > div:first-of-type > *{
  z-index:1;
  position: relative;
}


