/* Horr Child – custom overrides */

.titlu{
    display:none;
} 
/* Disable scroll on homepage entirely */
body.home {
  overflow: hidden !important;
}

.horr-hover-slider {
  --skew: 60px;
  --gap: 10px;
  --skew-img: calc(var(--skew) + var(--skew) + var(--gap));
  display: flex;
  height: 100vh;
  height: 100dvh;
  width: 100%;
  overflow: hidden;
}

.horr-hover-slider-link {
  display: block;
  flex: 1 1 auto;
  width: 25%;
  opacity: 0.4;
  transition: width 0.5s cubic-bezier(0.3, 0.5, 0.2, 1), opacity 0.3s ease-in-out;
  text-shadow: 5px 5px #000000 !important;
}
.horr-hover-slider-link:hover {
  width: 100%;
  opacity: 1;
  text-shadow: 5px 5px #000000 !important;
}
.horr-hover-slider-link:first-of-type {
  clip-path: polygon(0 0, 0% 100%, calc(100% - var(--skew)) 100%, calc(100% + var(--skew)) 0);
}
.horr-hover-slider-link:first-of-type > img {
  clip-path: polygon(0 100%, 0 0, calc(100% - (var(--gap) * 0.5)) 0, calc(100% - var(--skew-img)) 100%);
}
.horr-hover-slider-link:last-of-type {
  clip-path: polygon(var(--skew) 0, calc(var(--skew) * -1) 100%, 100% 100%, 100% 0);
}
.horr-hover-slider-link:last-of-type > img {
  clip-path: polygon(var(--gap) 100%, var(--skew-img) 0, 100% 0, 100% 100%);
}
.horr-hover-slider-link:not(:first-of-type):not(:last-of-type) {
  clip-path: polygon(var(--skew) 0, calc(var(--skew) * -1) 100%, calc(100% - var(--skew)) 100%, calc(100% + var(--skew)) 0);
}
.horr-hover-slider-link:not(:first-of-type):not(:last-of-type) > img {
  clip-path: polygon(var(--gap) 100%, var(--skew-img) 0, calc(100% - var(--gap)) 0, calc(100% - var(--skew-img)) 100%);
}
.horr-hover-slider-link img {
  object-fit: cover;
  height: 100%;
  width: calc(100% + var(--skew) + var(--skew));
  max-width: calc(100% + var(--skew) + var(--skew));
  margin-left: calc(var(--skew) * -1);
  transform: translate3d(0, 0, 0);
}

.horr-hover-slider-label {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0 !important;
  pointer-events: none;
  font-size: 4vw;
  z-index: 1;
  text-shadow: 5px 5px #000000 !important;
}
.horr-hover-slider-label span {
  display: inline-block;
  min-width: 20px;
  opacity: 0;
  transform: translateX(25px);
  transition: opacity 0.7s cubic-bezier(0.3, 1, 0.1, 1), transform 0.6s cubic-bezier(0.3, 1, 0.1, 1);
  text-shadow: 5px 5px #000000 !important;
}
.horr-hover-slider-label span.show {
  transform: translateX(0);
  opacity: 1;
  text-shadow: 5px 5px #000000 !important;
}

@media (max-width: 1081px) {
  .titlu {
    display: flex !important;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    background: rgba(0, 0, 0, 0.45); /* Soft dark overlay for text contrast */
    color: #ffffff;
    font-size: 34px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    align-items: center; /* Center text vertically */
    justify-content: center; /* Center text horizontally */
    padding: 0 30px;
    text-align: center;
    opacity: 0;
    transform: translateY(-15px); /* Start slightly lower than active shifted position */
    transition: opacity 0.6s cubic-bezier(0.2, 0.8, 0.2, 1), transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);
    font-family: inherit;
  }
  
  .horr-hover-slider {
    display: flex;
    flex-direction: row;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    align-items: center;
    scrollbar-width: none; /* Firefox */
  }
  
  .horr-hover-slider::-webkit-scrollbar {
    display: none; /* Chrome/Safari/Edge */
  }
  
  .horr-hover-slider-label {
    display: none;
  }
  
  .horr-hover-slider-link {
    flex: 0 0 100vw;
    height: 100vh;
    height: 100dvh;
    scroll-snap-align: center;
    position: relative;
    border-radius: 0;
    overflow: hidden;
    margin: 0;
    box-shadow: none;
    border: none;
    opacity: 1;
    clip-path: none !important;
    display: block;
  }
  
  .horr-hover-slider-link.active .titlu {
    opacity: 1;
    transform: translateY(-30px); /* Shift up slightly for visual center balance */
  }
  
  .horr-hover-slider-link img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin-left: 0;
    transform: scale(1.0);
    max-width: 100%;
    clip-path: none !important;
    transition: transform 1.2s cubic-bezier(0.1, 0.8, 0.2, 1);
  }
  
  .horr-hover-slider-link.active img {
    transform: scale(1.08);
  }

  /* Lift scroll top button above the bottom navigation bar */
  .horr-scroll-top-wrapper {
    bottom: 90px !important;
  }

  /* Removed custom site-header overrides to inherit parent theme negative margins and padding */

  /* Mobile Carousel Navigation Arrows */
  .horr-carousel-arrow {
    position: fixed;
    top: calc(50% - 30px); /* Shift up by 30px to align with centered title */
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    background-color: var(--horr-color-brand) !important;
    border: none;
    border-radius: 50%;
    color: hsl(var(--horr-color-white));
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
    cursor: pointer;
    outline: none;
    padding: 0;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
    -webkit-mask-image: url('../horr/assets/images/mask-circle.svg');
    mask-image: url('../horr/assets/images/mask-circle.svg');
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-transition: background-color var(--horr-transition-duration) var(--horr-transition-easing), transform 0.2s ease;
    transition: background-color var(--horr-transition-duration) var(--horr-transition-easing), transform 0.2s ease;
  }
  
  .horr-carousel-arrow:hover,
  .horr-carousel-arrow:focus {
    background-color: var(--horr-color-brand-dark) !important;
  }
  
  .horr-carousel-arrow:active {
    transform: translateY(-50%) scale(0.92);
  }
  
  .horr-carousel-prev {
    left: 16px;
  }
  
  .horr-carousel-next {
    right: 16px;
  }

  .horr-carousel-arrow svg {
    display: block;
    width: 24px;
    height: 24px;
  }
}

@media (min-width: 1082px) {
  .horr-carousel-arrow {
    display: none !important;
  }
}

/* Mobile Menu & Preloader Layout Overrides */
@media (max-width: 1081px) {
  /* Custom site-header margin overrides removed to align logo with viewport grid */

  /* Center mobile menu container buttons/links horizontally */
  .horr-navbar-mobile .horr-navbar-body,
  .horr-navbar-mobile .menu-item,
  .horr-navbar-mobile .page_item {
    text-align: center !important;
  }
  
  .horr-navbar-mobile .horr-navbar-body ul.sub-menu,
  .horr-navbar-mobile .horr-navbar-body .children {
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: center !important;
  }
  
  /* Reduce mobile menu sizing to fit screens better */
  .horr-navbar-mobile {
    --horr-navbar-mobile__padding-v: 20px !important;
    --horr-navbar-mobile__gap: 20px !important;
    --horr-navbar-mobile--link__font-size: 1.6rem !important;
  }
  
  /* Position buttons higher up in the menu drawer, but with ample spacing below header */
  .horr-navbar-mobile .horr-navbar-container {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding-top: 80px !important;
    padding-bottom: 40px !important;
  }
  
  /* Enable vertical scrolling when menu content overflows */
  .horr-fancybox-navbar .horr-fancybox-wrap {
    height: auto !important;
    min-height: 100% !important;
  }
  
  /* Centering and height fix for the loading splash screen on mobile */
  .horr-preloader {
    height: 100vh !important;
    height: 100dvh !important;
  }

  /* Mobile Menu Typography Hierarchy & Colors */
  .horr-navbar-mobile .horr-navbar-body > div > ul > .menu-item > a,
  .horr-navbar-mobile .horr-navbar-body > ul > .menu-item > a,
  .horr-navbar-mobile .horr-navbar-body > div > ul > .page_item > a,
  .horr-navbar-mobile .horr-navbar-body > ul > .page_item > a {
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #ffffff !important;
  }
  
  .horr-navbar-mobile .horr-navbar-body ul.sub-menu > .menu-item > a,
  .horr-navbar-mobile .horr-navbar-body .children > .page_item > a,
  .horr-navbar-mobile .horr-navbar-body ul.sub-menu a,
  .horr-navbar-mobile .horr-navbar-body .children a {
    font-size: 1.2rem !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 0.85;
    color: #ffffff !important;
  }
  
  /* Ensure hover/active state colors are accessible (theme brand color) */
  .horr-navbar-mobile .horr-navbar-body a:hover,
  .horr-navbar-mobile .horr-navbar-body a:focus,
  .horr-navbar-mobile .horr-navbar-body a:active,
  .horr-navbar-mobile .horr-navbar-body .menu-item-has-children.show > a {
    color: var(--horr-color-brand) !important;
    opacity: 1 !important;
  }

  /* Background Image Distortion and Pixelation Fix */
  .horr-navbar-mobile .horr-fancybox-background-image .horr-fancybox-image {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 100vw !important;
    height: 100vh !important;
    transform: translate(-50%, -50%) !important;
    object-fit: cover !important;
  }

  /* Semi-transparent dark overlay for high text contrast accessibility over background image */
  .horr-navbar-mobile .horr-fancybox-background-image::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-color: rgba(0, 0, 0, 0.85) !important;
    z-index: 1 !important;
  }

  /* Force mobile menu layout (toggle on right, inline navigation hidden) on mobile and tablet (under 1081px) */
  .site-header .horr-navbar-toggle {
    display: flex !important;
  }
  .site-header .horr-navbar-nav:not(.horr-navbar-nav-show) {
    display: none !important;
  }
  .site-header .horr-navbar-nav ~ .horr-navbar-nav-show {
    margin-left: auto !important;
  }

  /* Add padding-right to links with submenus to fit the arrow */
  .horr-navbar-mobile .menu-item-has-children > a,
  .horr-navbar-mobile .page_item_has_children > a,
  .horr-navbar-mobile ul.sub-menu > .menu-item-has-children > a,
  .horr-navbar-mobile ul.sub-menu > .page_item_has_children > a,
  .horr-navbar-mobile .children > .menu-item-has-children > a,
  .horr-navbar-mobile .children > .page_item_has_children > a {
    padding-right: 20px !important;
  }

  /* Replace mobile/tablet submenu bullets with a down arrow */
  .horr-navbar-mobile .menu-item-has-children > a::after,
  .horr-navbar-mobile .page_item_has_children > a::after,
  .horr-navbar-mobile ul.sub-menu > .menu-item-has-children > a::after,
  .horr-navbar-mobile ul.sub-menu > .page_item_has_children > a::after,
  .horr-navbar-mobile .children > .menu-item-has-children > a::after,
  .horr-navbar-mobile .children > .page_item_has_children > a::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    background-color: transparent !important;
    border-radius: 0 !important;
    border: solid currentColor !important;
    border-width: 0 1.5px 1.5px 0 !important;
    width: 7px !important;
    height: 7px !important;
    top: 50% !important;
    margin-top: -5px !important;
    right: 0 !important;
    left: auto !important;
    transform: rotate(45deg) !important;
    transition: transform 0.3s ease-in-out !important;
  }

  /* Rotate arrow to point up when submenu is shown */
  .horr-navbar-mobile .menu-item-has-children.show > a::after,
  .horr-navbar-mobile .page_item_has_children.show > a::after,
  .horr-navbar-mobile ul.sub-menu > .menu-item-has-children.show > a::after,
  .horr-navbar-mobile ul.sub-menu > .page_item_has_children.show > a::after,
  .horr-navbar-mobile .children > .menu-item-has-children.show > a::after,
  .horr-navbar-mobile .children > .page_item_has_children.show > a::after {
    transform: rotate(-135deg) !important;
    margin-top: -2px !important;
  }
}

/* --- Responsive Variable and Text Column Spacing Overrides --- */

/* Adjust grid container padding dynamically on tablet and mobile viewports */
@media (max-width: 1081px) {
  body {
    --horr--container--padding: 20px !important;
  }
}
@media (max-width: 571.98px) {
  body {
    --horr--container--padding: 15px !important;
  }
}

/* Inner pages text column width overrides to prevent narrow squeezed text and fix alignment */
body:not(.home).page .entry-content > *:not(.alignwide):not(.alignfull),
body:not(.home).single .entry-content > *:not(.alignwide):not(.alignfull),
body:not(.home).page .entry-header,
body:not(.home).single .entry-header,
body:not(.home).page .comments-area,
body:not(.home).single .comments-area {
  width: 100% !important;
  max-width: 860px !important;
}

/* Mobile: carousel scrolls horizontally internally, body stays locked */
@media (max-width: 1081px) {
  body.home .horr-hover-slider {
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }
}
