﻿/* Bervion performance layer: keeps the visual identity, but avoids expensive paint/reflow work. */
:root {
  --bervion-fast-shadow: 0 12px 28px rgba(15, 42, 72, .12);
  --bervion-fast-shadow-dark: 0 16px 36px rgba(2, 8, 23, .22);
}

html.bervion-perf-ready *,
html.bervion-perf-ready *::before,
html.bervion-perf-ready *::after {
  -webkit-tap-highlight-color: transparent;
}

html.bervion-perf-ready .btn,
html.bervion-perf-ready button,
html.bervion-perf-ready a,
html.bervion-perf-ready .card,
html.bervion-perf-ready .project-card,
html.bervion-perf-ready .feature-card,
html.bervion-perf-ready .service-card,
html.bervion-perf-ready .pricing-card,
html.bervion-perf-ready .portfolio-item,
html.bervion-perf-ready .model-card,
html.bervion-perf-ready .testimonial-card,
html.bervion-perf-ready .faq-item {
  transition-property: transform, opacity, background-color, color, border-color, box-shadow !important;
  transition-duration: .22s !important;
  transition-timing-function: ease !important;
}

html.bervion-perf-ready .loader-wrapper {
  transition-duration: .18s !important;
}

html.bervion-perf-ready .loader-wrapper.fade-out,
html.bervion-perf-ready .loader-wrapper[aria-hidden="true"] {
  pointer-events: none !important;
}

html.bervion-perf-ready img,
html.bervion-perf-ready svg,
html.bervion-perf-ready video,
html.bervion-perf-ready iframe {
  max-width: 100%;
}

html.bervion-perf-ready .whatsapp-float,
html.bervion-perf-ready .back-to-top {
  will-change: transform, opacity;
}

html.bervion-is-scrolling .whatsapp-float,
html.bervion-is-scrolling .back-to-top,
html.bervion-is-scrolling .btn,
html.bervion-is-scrolling .card,
html.bervion-is-scrolling .project-card,
html.bervion-is-scrolling .feature-card,
html.bervion-is-scrolling .pricing-card,
html.bervion-is-scrolling .portfolio-item,
html.bervion-is-scrolling .model-card,
html.bervion-is-scrolling .testimonial-card {
  transition-duration: .08s !important;
}

@media (max-width: 1180px), (prefers-reduced-motion: reduce) {
  html.bervion-perf-ready {
    scroll-behavior: auto;
  }

  html.bervion-perf-ready .floating-shape,
  html.bervion-perf-ready .shape,
  html.bervion-perf-ready .particle,
  html.bervion-perf-ready .orb,
  html.bervion-perf-ready .blob,
  html.bervion-perf-ready .glow,
  html.bervion-perf-ready .hero::before,
  html.bervion-perf-ready .hero::after,
  html.bervion-perf-ready .header::before,
  html.bervion-perf-ready .header::after,
  html.bervion-perf-ready .calculator-hero::before,
  html.bervion-perf-ready .calculator-hero::after,
  html.bervion-perf-ready .loader-logo::before,
  html.bervion-perf-ready .loader-logo::after,
  html.bervion-perf-ready .loader-progress::before {
    animation: none !important;
    transform: none !important;
  }

  html.bervion-perf-ready .whatsapp-float {
    animation: none !important;
  }

  html.bervion-perf-ready .navbar,
  html.bervion-perf-ready .navbar.scrolled,
  html.bervion-perf-ready .nav-links,
  html.bervion-perf-ready .faq-item,
  html.bervion-perf-ready .glass,
  html.bervion-perf-ready .lead-form-container,
  html.bervion-perf-ready .contact-card,
  html.bervion-perf-ready .model-card--glass .model-preview::after {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }

  html.bervion-perf-ready .card,
  html.bervion-perf-ready .project-card,
  html.bervion-perf-ready .feature-card,
  html.bervion-perf-ready .service-card,
  html.bervion-perf-ready .pricing-card,
  html.bervion-perf-ready .portfolio-item,
  html.bervion-perf-ready .model-card,
  html.bervion-perf-ready .testimonial-card,
  html.bervion-perf-ready .lead-form-container {
    box-shadow: var(--bervion-fast-shadow) !important;
  }

  html.bervion-perf-ready .navbar-container .nav-links,
  html.bervion-perf-ready nav .nav-links,
  html.bervion-perf-ready .nav-links {
    box-shadow: -14px 0 34px rgba(0,0,0,.32) !important;
  }
}

@media (max-width: 768px) {
  html.bervion-perf-ready .btn:hover,
  html.bervion-perf-ready .card:hover,
  html.bervion-perf-ready .project-card:hover,
  html.bervion-perf-ready .feature-card:hover,
  html.bervion-perf-ready .pricing-card:hover,
  html.bervion-perf-ready .portfolio-item:hover,
  html.bervion-perf-ready .model-card:hover,
  html.bervion-perf-ready .testimonial-card:hover {
    transform: none !important;
  }

  html.bervion-perf-ready .header-buttons,
  html.bervion-perf-ready .hero-buttons,
  html.bervion-perf-ready .cta-buttons {
    contain: layout paint;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.bervion-perf-ready *,
  html.bervion-perf-ready *::before,
  html.bervion-perf-ready *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

/* Extra scroll performance: pause decorative work while the user is moving through the page. */
html.bervion-is-scrolling *,
html.bervion-is-scrolling *::before,
html.bervion-is-scrolling *::after {
  animation-play-state: paused !important;
}

html.bervion-is-scrolling .navbar,
html.bervion-is-scrolling .navbar.scrolled,
html.bervion-is-scrolling .nav-links,
html.bervion-is-scrolling .faq-item,
html.bervion-is-scrolling .glass,
html.bervion-is-scrolling .lead-form-container,
html.bervion-is-scrolling .contact-card,
html.bervion-is-scrolling .model-card--glass .model-preview::after {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

html.bervion-is-scrolling .card,
html.bervion-is-scrolling .project-card,
html.bervion-is-scrolling .feature-card,
html.bervion-is-scrolling .service-card,
html.bervion-is-scrolling .pricing-card,
html.bervion-is-scrolling .portfolio-item,
html.bervion-is-scrolling .model-card,
html.bervion-is-scrolling .testimonial-card,
html.bervion-is-scrolling .lead-form-container {
  box-shadow: var(--bervion-fast-shadow) !important;
}

@supports (content-visibility: auto) {
  html.bervion-perf-ready body > section,
  html.bervion-perf-ready main > section,
  html.bervion-perf-ready .services-section,
  html.bervion-perf-ready .portfolio-section,
  html.bervion-perf-ready .testimonials-section,
  html.bervion-perf-ready .pricing-section,
  html.bervion-perf-ready .faq-section,
  html.bervion-perf-ready .contact-section,
  html.bervion-perf-ready .models-showcase,
  html.bervion-perf-ready .calculator-section,
  html.bervion-perf-ready .request-section {
    content-visibility: auto;
    contain-intrinsic-size: 820px;
  }

  html.bervion-perf-ready .header,
  html.bervion-perf-ready .hero,
  html.bervion-perf-ready #home,
  html.bervion-perf-ready .calculator-hero,
  html.bervion-perf-ready .models-hero {
    content-visibility: visible;
    contain-intrinsic-size: auto;
  }
}

@media (min-width: 1181px) {
  html.bervion-perf-ready .card,
  html.bervion-perf-ready .project-card,
  html.bervion-perf-ready .feature-card,
  html.bervion-perf-ready .service-card,
  html.bervion-perf-ready .pricing-card,
  html.bervion-perf-ready .portfolio-item,
  html.bervion-perf-ready .model-card,
  html.bervion-perf-ready .testimonial-card {
    will-change: auto !important;
  }
}

/* Final readability and navbar consistency fixes - 20260728 */
html.bervion-perf-ready #features,
html.bervion-perf-ready .section#features {
  background: linear-gradient(135deg, #0f1b2d 0%, #14283c 58%, #0d3a52 100%) !important;
}

html.bervion-perf-ready #features .section-subtitle {
  color: #58d5e4 !important;
  background: rgba(88, 213, 228, .12) !important;
  border: 1px solid rgba(88, 213, 228, .28) !important;
}

html.bervion-perf-ready #features .section-title,
html.bervion-perf-ready #features h2.section-title {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
  background: none !important;
  text-shadow: 0 14px 34px rgba(0, 0, 0, .32) !important;
  opacity: 1 !important;
}

html.bervion-perf-ready #features .section-description {
  color: rgba(235, 245, 255, .9) !important;
  opacity: 1 !important;
  text-shadow: 0 10px 26px rgba(0, 0, 0, .25) !important;
}

html.bervion-perf-ready .navbar,
html.bervion-perf-ready .navbar.navbar--solid {
  background: #13233a !important;
  border-bottom: 1px solid rgba(255, 255, 255, .06) !important;
}

html.bervion-perf-ready .navbar-container,
html.bervion-perf-ready .navbar .nav-container,
html.bervion-perf-ready .nav-container {
  width: min(100% - 32px, 1120px) !important;
  max-width: 1120px !important;
  min-height: 86px !important;
  margin-inline: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: clamp(18px, 3vw, 42px) !important;
  padding: 0 !important;
}

html.bervion-perf-ready .navbar-container .logo,
html.bervion-perf-ready .navbar .logo,
html.bervion-perf-ready .logo {
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex: 0 0 auto !important;
  min-width: max-content !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

html.bervion-perf-ready .navbar-container .logo span,
html.bervion-perf-ready .navbar .logo span,
html.bervion-perf-ready .logo span {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-size: clamp(1.35rem, 2vw, 1.85rem) !important;
  line-height: 1 !important;
  letter-spacing: -0.03em !important;
  white-space: nowrap !important;
}

html.bervion-perf-ready .navbar-container .logo img,
html.bervion-perf-ready .navbar .logo img,
html.bervion-perf-ready .logo img.logo-icon {
  width: clamp(54px, 5vw, 72px) !important;
  height: clamp(54px, 5vw, 72px) !important;
  object-fit: contain !important;
  flex: 0 0 auto !important;
}

html.bervion-perf-ready .navbar-container .nav-links,
html.bervion-perf-ready .navbar .nav-links,
html.bervion-perf-ready .nav-links {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: clamp(12px, 1.25vw, 20px) !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

html.bervion-perf-ready .navbar-container .nav-link,
html.bervion-perf-ready .navbar .nav-link,
html.bervion-perf-ready .nav-link {
  color: rgba(255, 255, 255, .9) !important;
  -webkit-text-fill-color: rgba(255, 255, 255, .9) !important;
  font-size: clamp(.82rem, .86vw, .96rem) !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  text-decoration: none !important;
  letter-spacing: -0.01em !important;
}

html.bervion-perf-ready .navbar-container .nav-link:hover,
html.bervion-perf-ready .navbar .nav-link:hover,
html.bervion-perf-ready .nav-link:hover {
  color: #50d3e4 !important;
  -webkit-text-fill-color: #50d3e4 !important;
}

html.bervion-perf-ready .navbar-container .nav-link.active,
html.bervion-perf-ready .navbar .nav-link.active,
html.bervion-perf-ready .nav-link.active {
  color: rgba(255, 255, 255, .92) !important;
  -webkit-text-fill-color: rgba(255, 255, 255, .92) !important;
}

@media (max-width: 1240px) {
  html.bervion-perf-ready .navbar-container,
  html.bervion-perf-ready .navbar .nav-container,
  html.bervion-perf-ready .nav-container {
    width: min(100% - 28px, 1040px) !important;
    gap: 18px !important;
  }

  html.bervion-perf-ready .navbar-container .nav-links,
  html.bervion-perf-ready .navbar .nav-links,
  html.bervion-perf-ready .nav-links {
    gap: 11px !important;
  }

  html.bervion-perf-ready .navbar-container .nav-link,
  html.bervion-perf-ready .navbar .nav-link,
  html.bervion-perf-ready .nav-link {
    font-size: .8rem !important;
  }
}

@media (max-width: 1120px) {
  html.bervion-perf-ready .navbar-container,
  html.bervion-perf-ready .navbar .nav-container,
  html.bervion-perf-ready .nav-container {
    min-height: 78px !important;
  }

  html.bervion-perf-ready .navbar-container .nav-links,
  html.bervion-perf-ready .navbar .nav-links,
  html.bervion-perf-ready .nav-links {
    position: fixed !important;
    inset: 0 0 0 auto !important;
    width: min(86vw, 360px) !important;
    max-width: 360px !important;
    min-height: 100dvh !important;
    padding: 88px 24px 28px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    background: #101d31 !important;
    border-left: 1px solid rgba(255, 255, 255, .08) !important;
    transform: translateX(105%) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    z-index: 1000 !important;
    overflow-y: auto !important;
    box-shadow: -24px 0 50px rgba(0, 0, 0, .34) !important;
  }

  html.bervion-perf-ready .navbar-container .nav-links.active,
  html.bervion-perf-ready .navbar-container .nav-links.open,
  html.bervion-perf-ready .navbar .nav-links.active,
  html.bervion-perf-ready .navbar .nav-links.open,
  html.bervion-perf-ready .nav-links.active,
  html.bervion-perf-ready .nav-links.open {
    transform: translateX(0) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  html.bervion-perf-ready .navbar-container .nav-link,
  html.bervion-perf-ready .navbar .nav-link,
  html.bervion-perf-ready .nav-link {
    width: 100% !important;
    min-height: 46px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 12px 14px !important;
    border-radius: 16px !important;
    font-size: 1rem !important;
    background: rgba(255, 255, 255, .045) !important;
  }

  html.bervion-perf-ready .mobile-menu-btn,
  html.bervion-perf-ready button.mobile-menu-btn,
  html.bervion-perf-ready .bervion-menu-toggle,
  html.bervion-perf-ready button.bervion-menu-toggle.mobile-menu-btn {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    width: 50px !important;
    height: 50px !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    background: rgba(255, 255, 255, .08) !important;
    border: 1px solid rgba(255, 255, 255, .22) !important;
    z-index: 1100 !important;
  }
}

@media (max-width: 520px) {
  html.bervion-perf-ready .navbar-container,
  html.bervion-perf-ready .navbar .nav-container,
  html.bervion-perf-ready .nav-container {
    width: min(100% - 22px, 100%) !important;
    min-height: 74px !important;
  }

  html.bervion-perf-ready .navbar-container .logo img,
  html.bervion-perf-ready .navbar .logo img,
  html.bervion-perf-ready .logo img.logo-icon {
    width: 50px !important;
    height: 50px !important;
  }

  html.bervion-perf-ready .navbar-container .logo span,
  html.bervion-perf-ready .navbar .logo span,
  html.bervion-perf-ready .logo span {
    font-size: 1.25rem !important;
  }

  html.bervion-perf-ready #features .section-title,
  html.bervion-perf-ready #features h2.section-title {
    font-size: clamp(2rem, 10vw, 2.75rem) !important;
    line-height: 1.06 !important;
  }
}

/* Dark hero highlight: keep Bervion identity but make emphasized words readable. */
html.bervion-perf-ready .header .highlight,
html.bervion-perf-ready .hero .highlight,
html.bervion-perf-ready .calculator-hero .highlight,
html.bervion-perf-ready .request-hero .highlight,
html.bervion-perf-ready .lead-section .highlight {
  color: #62d7e8 !important;
  background: linear-gradient(135deg, #7de8f2 0%, #48b9d9 46%, #e9f7ff 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-shadow: 0 12px 34px rgba(80, 211, 228, .22) !important;
  opacity: 1 !important;
}

/* Keep gradient words readable on dark internal hero sections too. */
html.bervion-perf-ready .calculator-hero .text-gradient,
html.bervion-perf-ready .request-hero .text-gradient,
html.bervion-perf-ready .lead-section .text-gradient,
html.bervion-perf-ready .hero .text-gradient,
html.bervion-perf-ready .header .text-gradient {
  color: #62d7e8 !important;
  background: linear-gradient(135deg, #7de8f2 0%, #48b9d9 46%, #e9f7ff 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-shadow: 0 12px 34px rgba(80, 211, 228, .22) !important;
  opacity: 1 !important;
}

html.bervion-perf-ready .calculator-header .highlight,
html.bervion-perf-ready .calculator-header .text-gradient,
html.bervion-perf-ready .calculator-header h1 span {
  color: #62d7e8 !important;
  background: linear-gradient(135deg, #7de8f2 0%, #48b9d9 46%, #e9f7ff 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-shadow: 0 12px 34px rgba(80, 211, 228, .22) !important;
  opacity: 1 !important;
}
