/* Loaded only by the Home/About checkpoint. Lebix remains the visual base. */
.bvl-checkpoint body { cursor: auto; }
.bvl-checkpoint .bvl-header-logo { width: 101px; height: 32px; }
/* Keep the 101 x 32 layout box so adjacent navigation does not move. */
.bvl-checkpoint .bvl-header-logo img {
  width: 100%; height: 100%; object-fit: contain;
  transform: scale(1.4375); transform-origin: left center;
}
/* Reuse the existing Lebix pill CTA alongside the unchanged hamburger. */
@media (max-width: 1199px) {
  .bvl-checkpoint .header-area-1 .header-button { display: flex !important; }
  .bvl-checkpoint .header-area-1 .header-right { margin-left: auto; }
  .bvl-checkpoint .header-button .btn-main-primary .text {
    padding: 10px 12px 8px; white-space: nowrap;
  }
  .bvl-checkpoint .header-button .btn-main-primary .icon { display: none; }
}
.bvl-checkpoint .bvl-preloader-logo { width: 200px; height: auto; margin-bottom: 30px; }
.bvl-checkpoint .preloader__progress { transform: scaleX(1); }
.bvl-checkpoint [hidden] { display: none !important; }
.bvl-checkpoint .bvl-announcement { background: var(--bg); color: var(--white); }
.bvl-checkpoint .main-menu > ul > li:focus-within > .dp-menu { opacity: 1; pointer-events: all; inset-inline-start: 0; }
@media (max-width: 1024px), (pointer: coarse), (prefers-reduced-motion: reduce) {
  html.bvl-checkpoint { scroll-behavior: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .bvl-checkpoint .hero-agency__showcase-card,
  .bvl-checkpoint .marquee-agency__track { animation: none; }
  .bvl-checkpoint .side-info,
  .bvl-checkpoint .offcanvas-overlay,
  .bvl-checkpoint .header-sticky { transition-duration: 0s; }
  .bvl-checkpoint .img_anim_reveal,
  .bvl-checkpoint .reveal-item { opacity: 1; visibility: visible; transform: none; }
}

/* Reserve the enlarged logo's visual width only in the mobile control row.
   The hidden desktop menu must not retain its empty flex gap. */
@media (max-width: 1199px) {
  .bvl-checkpoint .header-area-1 .header-area-1-inner .left {
    gap: 0; padding-right: 44.2px; flex-shrink: 0;
  }
  .bvl-checkpoint .header-area-1 .header-nav { display: none; }
  .bvl-checkpoint .header-area-1 .header-right,
  .bvl-checkpoint .header-area-1 .header-offcanvas { flex-shrink: 0; }
  .bvl-checkpoint .header-area-1 .side-toggle {
    display: inline-flex; align-items: center; gap: 6px;
  }
  /* Draw the menu icon without depending on an unavailable icon font. */
  .bvl-checkpoint .header-area-1 .side-toggle::before {
    content: ""; display: block; width: 20px; height: 14px; flex-shrink: 0;
    border-top: 2px solid var(--white); border-bottom: 2px solid var(--white);
    background: linear-gradient(var(--white), var(--white)) center / 100% 2px no-repeat;
  }
}
@media (max-width: 390px) {
  .bvl-checkpoint .header-area-1-inner { gap: 8px; }
  .bvl-checkpoint .header-area-1 .side-toggle { gap: 0; }
  /* Keep the text in the accessibility tree while showing only the icon. */
  .bvl-checkpoint .header-area-1 .side-toggle > span {
    position: absolute; width: 1px; height: 1px; padding: 0;
    overflow: hidden; clip-path: inset(50%); white-space: nowrap;
  }
  .bvl-checkpoint .header-button .btn-main-primary .text {
    padding-left: 4px; padding-right: 4px;
  }
}

/* Keep the static vertical lines; disable only their falling droplets. */
.bvl-checkpoint .bg-line__droplet { display: none; animation: none; }

/* Native document scrolling on every adapted BVL page. */
html.bvl-checkpoint { scroll-behavior: auto; }
.bvl-checkpoint .mouse-follower { display: none; }
@media (min-width: 1025px) and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .bvl-checkpoint.bvl-cursor-enabled body { cursor: none; }
  .bvl-checkpoint.bvl-cursor-enabled .mouse-follower { display: block; }
}
.bvl-checkpoint .hero-agency__title .bvl-hero-established { font-size: 75%; }
.bvl-checkpoint .bvl-mailing-address { display: block; line-height: 1.6; }

/* Reserve space only while the existing urgent bar is active; keep its approved colors/layout. */
/* Add notice height to Lebix's existing hero padding, keeping the header background intact. */
.bvl-checkpoint .breadcrumb-area { padding-top: calc(200px + var(--bvl-announcement-height, 0px)); }
.bvl-checkpoint .hero-agency { padding-top: calc(180px + var(--bvl-announcement-height, 0px)); }
@media (max-width: 1199px) {
  .bvl-checkpoint .hero-agency { padding-top: calc(140px + var(--bvl-announcement-height, 0px)); }
}
@media (max-width: 991px) {
  .bvl-checkpoint .breadcrumb-area { padding-top: calc(160px + var(--bvl-announcement-height, 0px)); }
  .bvl-checkpoint .hero-agency { padding-top: calc(120px + var(--bvl-announcement-height, 0px)); }
}
@media (max-width: 575px) {
  .bvl-checkpoint .hero-agency { padding-top: calc(100px + var(--bvl-announcement-height, 0px)); }
}
.bvl-checkpoint .bvl-announcement { overflow-wrap: anywhere; }
.bvl-checkpoint .bvl-announcement [data-announcement-message] { white-space: pre-line; }
.bvl-checkpoint .bvl-announcement [data-announcement-link] { text-decoration: underline; }

/* Urgent notice: BVL logo red, scoped to the existing non-sticky bar. */
.bvl-checkpoint .bvl-announcement {
  background: linear-gradient(105deg, #951a1e 0%, #bf2126 55%, #a71d21 100%);
  color: #fff;
  border-bottom: 1px solid rgba(0,0,0,.2);
  box-shadow: 0 3px 8px rgba(0,0,0,.15);
}
.bvl-checkpoint .bvl-announcement:not([hidden]) { animation: bvl-notice-enter 350ms ease-out both; }
.bvl-checkpoint .bvl-announcement > .container {
  display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px;
  padding-top: 14px; padding-bottom: 14px;
  font-size: 15px; line-height: 1.45;
}
.bvl-checkpoint .bvl-announcement [data-announcement-headline] {
  display: flex; align-items: center; gap: 9px; min-width: 0;
  font-weight: 700; margin: 0;
}
/* Empty CSS decoration has no spoken content; no additional icon font required. */
.bvl-checkpoint .bvl-announcement [data-announcement-headline]::before {
  content: ''; width: 22px; height: 22px; flex: 0 0 22px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='none' stroke='white' stroke-width='2'/%3E%3Cpath d='M12 6v7' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3Ccircle cx='12' cy='17' r='1.2' fill='white'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bvl-checkpoint .bvl-announcement [data-announcement-message] { flex: 1 1 300px; min-width: 0; font-weight: 400; }
.bvl-checkpoint .bvl-announcement [data-announcement-link] {
  display: inline-flex; align-items: center; justify-content: center;
  max-width: 100%; min-height: 44px; padding: 9px 16px; margin: 0;
  border: 1px solid #fff; border-radius: 24px; background: #fff; color: #951a1e;
  font-weight: 700; text-decoration: none; text-align: center;
}
.bvl-checkpoint .bvl-announcement [data-announcement-link]:hover { background: transparent; color: #fff; }
.bvl-checkpoint .bvl-announcement a:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
@media (max-width: 767px) {
  .bvl-checkpoint .bvl-announcement > .container { flex-direction: column; align-items: flex-start; gap: 8px; }
  .bvl-checkpoint .bvl-announcement [data-announcement-message] { flex: 0 1 auto; }
}
@keyframes bvl-notice-enter {
  from { opacity: 0; transform: translateY(-8px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  .bvl-checkpoint .bvl-announcement:not([hidden]) { animation: none; }
}

/* Once per hidden-to-visible transition; text updates do not restart CSS animations. */
.bvl-checkpoint .bvl-announcement:not([hidden]) [data-announcement-headline] {
  transform-origin: left center;
  animation: bvl-notice-headline 800ms ease-in-out 300ms 1 both;
}
@keyframes bvl-notice-headline {
  0%, 100% { transform: scale(1); }
  45% { transform: scale(1.02); }
}
@media (prefers-reduced-motion: reduce) {
  .bvl-checkpoint .bvl-announcement:not([hidden]) [data-announcement-headline] { animation: none; }
}

/* Keyboard bypass; fixed positioning preserves the approved page layout. */
.bvl-skip-link {
  position: fixed;
  top: 8px;
  left: -10000px;
  z-index: 2147483647;
  max-width: calc(100vw - 32px);
  padding: 12px 16px;
  background: #fff;
  color: #121317;
  font: inherit;
  line-height: 1.4;
  text-decoration: underline;
  transition: none;
}
.bvl-skip-link:focus {
  left: 16px;
  color: #121317;
  outline: 3px solid #c85b17;
  outline-offset: 2px;
}
#main-content { scroll-margin-top: 110px; }
