/*
Theme Name: BSNomady
Author: Worbee
Author URI: https://worbee.com
Description: A custom BSNomady theme. Uses the Rockbase block theme as a parent.
Requires at least: 6.3
Tested up to: 6.4
Requires PHP: 7.3
Version: 1.5.2
License: GNU General Public License v3 or later
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Template: rockbase
Text Domain: rockbase-child
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, translation-ready, block-styles, template-editing, wide-blocks, global-styles
*/

/* Language navigation flags */
.nav-bg-link a::before {
    content: "";
    display: inline-block;
    width: 2rem;
    height: 1rem;
    background-image: url('https://bsnomady.com/wp-content/uploads/2025/01/Flag_of_Bulgaria.svg');
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 2px;
    vertical-align: middle;
}
.nav-en-link a::before {
    content: "";
    display: inline-block;
    width: 2rem;
    height: 1rem;
    background-image: url('https://bsnomady.com/wp-content/uploads/2025/01/Flag_of_the_United_States.svg');
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 2px;
    vertical-align: middle;
}

/* Sticky header styles */
.wp-site-blocks > header {
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    background-color: var(--wp--preset--color--background-1);
}

@media (min-width: 1200px) {
    .wp-site-blocks > header {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        transition: transform 0.3s ease-in-out;
    }

    .wp-site-blocks > header.header-scrolled {
        transform: translateY(-110px);
    }

    /* Adjust main content to prevent jump when header becomes fixed */
    .wp-site-blocks {
        /* padding-top: var(--wp-header-height, 110px); */
    }
}

/* Adjust for WordPress admin bar when logged in */
.admin-bar .wp-site-blocks > header {
    top: 32px; /* For desktop */
}
@media screen and (max-width: 782px) {
    .admin-bar .wp-site-blocks > header {
        top: 46px; /* For mobile */
    }
}

/* active page link */
header nav a[aria-current="page"] {
    text-decoration: underline;
}

/* Stack to Row responsive behavior */
@media (max-width: 1199px) {
    header .stack-row {
        flex-direction: row !important;
        gap: var(--wp--style--block-gap, 2rem) !important;
        align-items: center !important;
        justify-content: space-between !important;
    }
}

/* Apply desktop menu styles for screens >= 1200px */
@media (min-width: 1200px) {
    header .wp-block-navigation__responsive-container-open:not(.always-shown) {
      display: none !important;
    }
    header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
      display: block !important;
      width: 100%;
      position: relative;
      z-index: auto;
      background-color: inherit;
    }
  }
  
  /* Apply mobile menu styles for screens < 1199px */
  @media (max-width: 1199px) {
    header .wp-block-navigation__responsive-container-open:not(.always-shown) {
      display: flex !important;
    }
    header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
      display: none !important;
    }
  }

footer .wp-block-navigation {
  flex-direction: column;
  align-items: first baseline;
}
footer div.horizontal .wp-block-navigation {
  flex-direction: row;
}

.branded-underline {
    background: linear-gradient(to bottom, var(--wp--preset--color--tertiary), var(--wp--preset--color--tertiary));
    background-size: 100% 40%;
    background-repeat: no-repeat;
    background-position: 0 90%;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
    position: relative;
}

.scroll-top-add {
    scroll-margin-top: 220px;
}

/* restyle tertiary button */
.wp-block-button.is-style-button-tertiary .wp-element-button {
    border: 2px solid black;
}

.wp-block-button.is-style-button-tertiary .wp-element-button:hover {
    background-color: white;
}

.wp-block-cloudcatch-light-modal-block {
  max-width: 1000px;
}

.wp-block-cloudcatch-light-modal-block__wrapper {
  background-color: rgba(0,0,0,.3);
}

.map-container {
  margin-bottom: -10px !important;
  overflow: hidden;
}

.wp-block-cloudcatch-light-modal-block {
  border-radius: 8px;
}


.wpbc_button_light {
  border: 2px solid black !important;
  color: black !important;
  text-transform: uppercase !important;
  border-radius: 8px !important;
}

.wpbc_button_light:hover {
  background-color: black !important;
  color: white !important;
}

/* rotator effect */
.rotator__container {
    position: relative;
    overflow: hidden;
    height: 2em;              /* must match li height */
}

.rotator__container .content__container__list {
    margin: 0;
    padding: 0;
    list-style: none;
    /* make the UL as tall as 5 items so translateY works in multiples of 2em */
    height: calc(5 * 2em);
    animation: slideUp 10s linear infinite;
}

.rotator__container .content__container__list li {
    height: 2em;
    line-height: 2em;
    padding: 0;
    margin: 0;
    text-align: center;
}

@keyframes slideUp {
    /* show item 1 */
    0%, 16%   { transform: translateY(0); }
    /* slide to item 2 */
    20%, 36%  { transform: translateY(-2em); }
    /* slide to item 3 */
    40%, 56%  { transform: translateY(-4em); }
    /* slide to item 4 */
    60%, 76%  { transform: translateY(-6em); }
    /* slide to item 5 */
    80%, 96%  { transform: translateY(-8em); }
    /* loop back */
    100%      { transform: translateY(0); }
}
/* END rotator effect */

/* GDPR overrides */
#gdpr-cookie-consent-show-again {
    right: 15px !important;
    bottom: 15px !important;
}

#gdpr-cookie-consent-bar {
    right: 15px !important;
    bottom: 15px !important;
    left: 15px !important;
    width: auto !important;
}
#gdpr-cookie-consent-bar a {
    text-decoration: underline !important;
    color: black !important;
}
#cookie_action_settings,
#cookie_action_reject {
    color: black !important;
    border-color: black !important;
}
#default_buttons a.btn {
    border-radius: 8px !important;
    text-decoration: none !important;
}
a#cookie_action_accept.btn {
    border-color: black !important;
    background-color: black !important;
    color: white !important;
}
/* END GDPR overrides */

/* booking overrides */
.wpbc_no_custom_width.cal_month_num_2 {
    max-width: unset !important;
}
/* END booking overrides */

/* calendar overrides */
.datepick-one-month.datepick-new-row {
  border-right: 1px solid black;
}
/* END calendar overrides */
