/* FALCON Visual Fix 1.12.1 — Phase 2 marketing-image integration. */
/* Phase 1: keep the shared floating conversion control inside the safe area. */
.hhb-floating-quote {
  left: auto !important;
  right: max(20px, env(safe-area-inset-right)) !important;
  bottom: max(20px, env(safe-area-inset-bottom)) !important;
  max-width: calc(100vw - 40px) !important;
  z-index: 120 !important;
}

body.home .hh-home-hero-1100,
body.home .hh-hero.hhb-hero {
  background-image:
    linear-gradient(90deg, rgba(6, 35, 25, .74) 0%, rgba(6, 35, 25, .53) 35%, rgba(6, 35, 25, .12) 73%, rgba(6, 35, 25, .04) 100%),
    url('../images/phase2/01_home_hero_showroom.png') !important;
  background-position: 68% center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

/* Keep the title region readable while preserving vehicle detail. */
body.home .hh-home-hero-1100::after {
  background: linear-gradient(90deg, rgba(4, 29, 20, .20), transparent 62%) !important;
}

body.home #applications .hh-app {
  min-height: clamp(310px, 28vw, 390px);
  background: #0b3d2b;
}

body.home #applications .hh-app .ffc-app-media,
body.home #applications .hh-app .ffc-app-media img {
  display: block;
  width: 100%;
  height: 100%;
}

body.home #applications .hh-app .ffc-app-media {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

body.home #applications .hh-app .ffc-app-media img {
  object-fit: cover;
  transform: none;
}

body.home #applications .hh-app:nth-child(1) .ffc-app-media img { object-position: 55% center; }
body.home #applications .hh-app:nth-child(2) .ffc-app-media img { object-position: 50% 50%; }
body.home #applications .hh-app:nth-child(3) .ffc-app-media img { object-position: 52% 52%; }
body.home #applications .hh-app:nth-child(4) .ffc-app-media img { object-position: 54% 53%; }
body.home #applications .hh-app:nth-child(5) .ffc-app-media img { object-position: 50% 48%; }
body.home #applications .hh-app:nth-child(6) .ffc-app-media img { object-position: 52% 50%; }

body.home #applications .hh-app > div {
  z-index: 1;
  background: linear-gradient(180deg, rgba(4, 25, 18, 0) 28%, rgba(4, 25, 18, .88) 100%) !important;
}

/* The two new scene images share the same intentional presentation ratio. */
body.home .hh-quality-grid .hh-media > img:first-child,
body.home .hh-about .hh-media > img:first-child {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
  border-radius: 28px;
}

body.home .hh-quality-grid .hh-media > img:first-child { object-position: 51% 50%; }
body.home .hh-about .hh-media > img:first-child { object-position: 52% 54%; }

/* Remove only the obsolete secondary home About image that caused the residual corner. */
body.home .hh-about .hh-home-about-img-secondary-152 {
  display: none !important;
}

/* Phase 2 marketing images share a deliberate presentation system. These
   rules only match immutable plugin assets and cannot affect product-detail
   featured images in the Media Library. */
img[src*="/falcon-visual-fix-117/assets/images/phase2/"] {
  max-width: 100%;
}

body.page .hh-media-split img[src*="/assets/images/phase2/"],
body.page .hh-process-visual-grid img[src*="/assets/images/phase2/"],
body.page .hh-application-page-grid img[src*="/assets/images/phase2/"] {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
}

body.page .hh-media-split img[src*="05_oem_design_review.png"] { object-position: 52% center; }
body.page .hh-media-split img[src*="07_packaging_export_center.png"] { object-position: 50% 52%; }
body.page .hh-media-split img[src*="14_about_campus_shuttle.png"] { object-position: 52% center; }

body.page .hh-application-page-grid img[src*="02_delivery_market_fresh_goods.png"] { object-position: 52% center; }
body.page .hh-application-page-grid img[src*="09_community_mobility.png"] { object-position: 50% 50%; }
body.page .hh-application-page-grid img[src*="10_campus_shuttle.png"] { object-position: 50% 48%; }
body.page .hh-application-page-grid img[src*="11_tourism_garden_shuttle.png"] { object-position: 52% 52%; }
body.page .hh-application-page-grid img[src*="12_golf_resort.png"] { object-position: 54% 53%; }
body.page .hh-application-page-grid img[src*="13_urban_commuting_scooter.png"] { object-position: 52% 50%; }

@media (max-width: 1024px) {
  body.home .hh-home-hero-1100,
  body.home .hh-hero.hhb-hero { background-position: 63% center !important; }
}

@media (max-width: 768px) {
  body.home .hh-home-hero-1100,
  body.home .hh-hero.hhb-hero {
    background-image:
      linear-gradient(180deg, rgba(5, 32, 22, .74) 0%, rgba(5, 32, 22, .50) 48%, rgba(5, 32, 22, .24) 100%),
      url('../images/phase2/01_home_hero_showroom.png') !important;
    background-position: 61% center !important;
  }

  body.home #applications .hh-app { min-height: 285px; }
}

@media (max-width: 420px) {
  body.home .hh-home-hero-1100,
  body.home .hh-hero.hhb-hero { background-position: 59% center !important; }

  body.home #applications .hh-app { min-height: 250px; }
  body.home #applications .hh-app > div { padding: 72px 18px 18px !important; }
  body.home #applications .hh-app h3 { font-size: clamp(1rem, 4.2vw, 1.15rem); }
  body.home #applications .hh-app p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
}

/* Mobile pages already provide in-flow inquiry CTAs. Hiding only the floating
   duplicate prevents it from covering card titles, form controls and footer
   links while preserving every normal conversion link. */
@media (max-width: 620px) {
  .hhb-floating-quote {
    display: none !important;
  }
}

/* WPLP Cookie Consent: FALCON-native presentation only. The official WPLP
   IDs and data-gdpr_action attributes remain untouched so consent storage,
   category toggles and reopening continue to use the plugin's own logic. */
#gdpr-cookie-consent-bar.falcon-cookie-card {
  box-sizing: border-box !important;
  left: auto !important;
  right: 24px !important;
  bottom: 24px !important;
  width: 390px !important;
  max-width: calc(100vw - 48px) !important;
  padding: 22px !important;
  gap: 14px !important;
  border: 1px solid rgba(15, 92, 59, .12) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 18px 50px rgba(7, 53, 38, .18) !important;
  color: #17221c !important;
  font-family: inherit !important;
  z-index: 999999999 !important;
}

#gdpr-cookie-consent-bar.falcon-cookie-card .gdpr_main_body,
#gdpr-cookie-consent-bar.falcon-cookie-card .gdpr-notice-content-body,
#gdpr-cookie-consent-bar.falcon-cookie-card .gdpr_messagebar_content,
#gdpr-cookie-consent-bar.falcon-cookie-card .cookie_notice_buttons,
#gdpr-cookie-consent-bar.falcon-cookie-card .left_buttons {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
}

#gdpr-cookie-consent-bar.falcon-cookie-card .falcon-cookie-title {
  margin: 0 0 8px !important;
  color: #073526 !important;
  font: 700 1.2rem/1.25 inherit !important;
  letter-spacing: -.015em !important;
  text-align: left !important;
}

#gdpr-cookie-consent-bar.falcon-cookie-card .falcon-cookie-description {
  display: block !important;
  margin: 0 !important;
  color: #53625a !important;
  font: 400 .93rem/1.58 inherit !important;
  text-align: left !important;
}

#gdpr-cookie-consent-bar.falcon-cookie-card .gdpr_messagebar_detail_button,
#gdpr-cookie-consent-bar.falcon-cookie-card .gdpr-policy-link,
#gdpr-cookie-consent-bar.falcon-cookie-card a {
  color: #1f8a55 !important;
}

#gdpr-cookie-consent-bar.falcon-cookie-card .left_buttons {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 10px !important;
  margin: 0 !important;
}

#gdpr-cookie-consent-bar.falcon-cookie-card .gdpr_action_button {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 11px 13px !important;
  border-radius: 10px !important;
  font: 700 .86rem/1.25 inherit !important;
  text-align: center !important;
  white-space: normal !important;
  box-shadow: none !important;
}

#gdpr-cookie-consent-bar.falcon-cookie-card #cookie_action_accept_all {
  grid-column: 1 / -1 !important;
  grid-row: 1 !important;
  border: 1px solid #1f8a55 !important;
  background: #1f8a55 !important;
  color: #fff !important;
}

#gdpr-cookie-consent-bar.falcon-cookie-card #cookie_action_reject {
  grid-column: 1 !important;
  grid-row: 2 !important;
  border: 1px solid #1f8a55 !important;
  background: #fff !important;
  color: #0f5c3b !important;
}

#gdpr-cookie-consent-bar.falcon-cookie-card #cookie_action_settings {
  grid-column: 2 !important;
  grid-row: 2 !important;
  border: 1px solid #e4eee8 !important;
  background: #edf7f1 !important;
  color: #0f5c3b !important;
}

#gdpr-cookie-consent-bar.falcon-cookie-card .gdpr_action_button:hover,
#gdpr-cookie-consent-bar.falcon-cookie-card .gdpr_action_button:focus-visible {
  border-color: #0f5c3b !important;
  outline: 3px solid rgba(31, 138, 85, .18) !important;
  outline-offset: 2px !important;
}

/* Preferences dialog retains WPLP category controls and behavior. */
#gdpr-gdprmodal.falcon-cookie-preferences .gdprmodal-content {
  overflow: hidden !important;
  width: min(720px, calc(100vw - 48px)) !important;
  max-width: 720px !important;
  max-height: calc(100dvh - 48px) !important;
  border: 1px solid rgba(15, 92, 59, .12) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 24px 70px rgba(7, 53, 38, .22) !important;
  font-family: inherit !important;
}

#gdpr-gdprmodal.falcon-cookie-preferences .category-header,
#gdpr-gdprmodal.falcon-cookie-preferences .always-active {
  color: #0f5c3b !important;
}

#gdpr-gdprmodal.falcon-cookie-preferences .gdpr_action_button {
  min-height: 44px !important;
  border-radius: 10px !important;
  font-family: inherit !important;
  font-weight: 700 !important;
}

#gdpr-gdprmodal.falcon-cookie-preferences #cookie_action_accept_all {
  border-color: #1f8a55 !important;
  background: #1f8a55 !important;
  color: #fff !important;
}

#gdpr-gdprmodal.falcon-cookie-preferences #cookie_action_reject {
  border-color: #1f8a55 !important;
  background: #fff !important;
  color: #0f5c3b !important;
}

#gdpr-gdprmodal.falcon-cookie-preferences #cookie_action_save {
  border-color: #dceae2 !important;
  background: #edf7f1 !important;
  color: #0f5c3b !important;
}

body.falcon-cookie-ui-open .hhb-floating-quote {
  bottom: 300px !important;
}

.falcon-cookie-settings-link {
  cursor: pointer;
}

/* WPLP's post-consent reopen control. Keep it away from the conversion CTA
   by making it a quiet FALCON utility button on the opposite desktop edge. */
#gdpr-cookie-consent-show-again {
  box-sizing: border-box !important;
  position: fixed !important;
  left: 24px !important;
  right: auto !important;
  bottom: 24px !important;
  z-index: 119 !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 10px 14px !important;
  border: 1px solid rgba(15, 92, 59, .26) !important;
  border-radius: 12px !important;
  background: #f7fbf8 !important;
  color: #0f5c3b !important;
  box-shadow: 0 8px 20px rgba(7, 53, 38, .12) !important;
  font: 600 14px/1.25 inherit !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease !important;
}

#gdpr-cookie-consent-show-again:hover,
#gdpr-cookie-consent-show-again:focus-visible {
  border-color: #1f8a55 !important;
  background: #1f8a55 !important;
  color: #fff !important;
  box-shadow: 0 12px 26px rgba(15, 92, 59, .22) !important;
  outline: none !important;
}

#gdpr-cookie-consent-show-again,
#gdpr-cookie-consent-show-again * {
  font-weight: 600 !important;
}

@media (min-width: 768px) and (max-width: 1023px) {
  #gdpr-cookie-consent-show-again {
    left: 20px !important;
    bottom: 20px !important;
  }
}

@media (max-width: 600px) {
  #gdpr-cookie-consent-bar.falcon-cookie-card {
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    width: auto !important;
    max-width: none !important;
    max-height: calc(100dvh - 24px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: 18px !important;
    border-radius: 18px !important;
  }

  #gdpr-cookie-consent-bar.falcon-cookie-card .left_buttons {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  #gdpr-cookie-consent-bar.falcon-cookie-card #cookie_action_accept_all,
  #gdpr-cookie-consent-bar.falcon-cookie-card #cookie_action_reject,
  #gdpr-cookie-consent-bar.falcon-cookie-card #cookie_action_settings {
    grid-column: 1 !important;
  }

  #gdpr-cookie-consent-bar.falcon-cookie-card #cookie_action_accept_all { grid-row: 1 !important; }
  #gdpr-cookie-consent-bar.falcon-cookie-card #cookie_action_reject { grid-row: 2 !important; }
  #gdpr-cookie-consent-bar.falcon-cookie-card #cookie_action_settings { grid-row: 3 !important; }

  #gdpr-gdprmodal.falcon-cookie-preferences .gdprmodal-content {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
    border-radius: 18px !important;
  }

  body.falcon-cookie-ui-open .hhb-floating-quote {
    display: none !important;
  }
}

/* On phones the legal-footer link is the non-obstructive, accessible reopen
   path. The primary enquiry controls therefore keep the entire fixed area. */
@media (max-width: 767px) {
  #gdpr-cookie-consent-show-again {
    display: none !important;
  }
}

/* FALCON Header Language Switcher — retain GTranslate, remove only its legacy float. */
#gt-wrapper-81541316 .gt_switcher_wrapper,
#gt-wrapper-81541316 #gt_float_wrapper,
#gt_float_wrapper {
  display: none !important;
}

.hh-menu-list > .hh-language-switcher {
  display: flex !important;
  align-items: center !important;
  position: relative !important;
  margin: 0 2px !important;
  padding: 0 !important;
}

.hh-language-toggle { position: relative; }

.hh-language-toggle > summary {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 38px;
  padding: 0 9px;
  border-radius: 8px;
  color: #17221c;
  cursor: pointer;
  font: 600 14px/1.2 inherit;
  list-style: none;
  transition: background-color .18s ease, color .18s ease;
}

.hh-language-toggle > summary::-webkit-details-marker { display: none; }
.hh-language-toggle > summary::marker { content: ''; }
.hh-language-toggle > summary:hover,
.hh-language-toggle > summary:focus-visible {
  background: #edf7f0;
  color: #0f5c3b;
  outline: none;
}

.hh-language-chevron {
  width: 7px;
  height: 7px;
  border-right: 1.8px solid currentColor;
  border-bottom: 1.8px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
  transition: transform .18s ease;
}

.hh-language-toggle[open] .hh-language-chevron {
  transform: rotate(225deg) translate(-1px, -1px);
}

.hh-language-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 210;
  width: 102px;
  margin: 0;
  padding: 6px;
  border: 1px solid rgba(15, 92, 59, .14);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(7, 53, 38, .14);
}

.hh-language-menu a {
  display: block;
  padding: 8px 10px;
  border-radius: 7px;
  color: #17221c !important;
  font: 600 14px/1.2 inherit;
  text-decoration: none !important;
}

.hh-language-menu a:hover,
.hh-language-menu a:focus-visible {
  background: #edf7f0;
  color: #0f5c3b !important;
  outline: none;
}

@media (max-width: 1050px) {
  .hh-menu-list > .hh-language-switcher {
    display: block !important;
    margin: 2px 0 !important;
  }
  .hh-language-toggle,
  .hh-language-toggle > summary { width: 100%; }
  .hh-language-toggle > summary { justify-content: space-between; }
  .hh-language-menu {
    position: static;
    width: auto;
    margin: 4px 10px 0;
    box-shadow: none;
  }
}


/* FALCON mobile-only home Hero image — 2026-08-19 */
@media (max-width: 767px) {
  body.home .hh-home-hero-1100,
  body.home .hh-hero.hhb-hero {
    background-image:
      linear-gradient(180deg, rgba(4, 29, 20, .58) 0%, rgba(4, 29, 20, .30) 48%, rgba(4, 29, 20, .38) 100%),
      url('https://falcon-ev-eac.com/wp-content/uploads/2026/08/codex-clipboard-86f4cd85-39af-4733-becd-0bcbc35d1ef7.png') !important;
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    min-height: 760px !important;
  }
  body.home .hh-home-hero-1100::after {
    background: linear-gradient(180deg, rgba(4, 29, 20, .10), rgba(4, 29, 20, .04) 58%, rgba(4, 29, 20, .16)) !important;
  }
}

/* FALCON Header + Footer redesign — 2026-08-19 */
.hh-footer-grid {
  grid-template-columns: minmax(210px, 1.05fr) minmax(150px, .78fr) minmax(210px, 1.2fr) minmax(285px, 1.22fr);
  gap: clamp(34px, 4vw, 80px);
}
.hh-footer-contact { min-width: 0; }
.hh-footer-contact-title {
  display: inline-flex; align-items: center; gap: 8px; margin: 4px 0 10px;
  color: #fff !important; font-size: 18px; font-weight: 800; line-height: 1.3;
}
.hh-footer-contact-title:hover, .hh-footer-contact-title:focus-visible { color: #bfe8d2 !important; }
.hh-footer-contact-title span { font-size: 15px; }
.hh-footer-contact-intro {
  max-width: 320px; margin: 0 0 22px !important; color: rgba(255,255,255,.62) !important;
  font-size: 13px; line-height: 1.55 !important;
}
.hh-footer-contact-list { display: block; margin: 0; }
.hh-footer-contact-row { display: block; padding: 14px 0; border-top: 1px solid rgba(255,255,255,.12); }
.hh-footer-contact-label, .hh-footer-contact-value { display: block; }
.hh-footer-contact-label { margin-bottom: 6px; color: #8bd2ad; font-size: 10px; font-weight: 800; letter-spacing: .16em; line-height: 1.2; }
.hh-footer-contact-value { color: #fff; font-size: 14px; font-weight: 700; line-height: 1.45; overflow-wrap: anywhere; }
.hh-footer-contact-row:hover .hh-footer-contact-value, .hh-footer-contact-row:focus-visible .hh-footer-contact-value { color: #bfe8d2; }
.hh-footer-contact-value b { font-size: 13px; font-weight: 700; }
@media (max-width: 1050px) { .hh-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 42px 50px; } }
@media (max-width: 620px) {
  .hh-footer-grid { grid-template-columns: 1fr; gap: 34px; }
  .hh-footer-contact { border-top: 1px solid rgba(255,255,255,.16); padding-top: 17px; }
  .hh-footer-contact-intro { max-width: none; }
}

/* Native mobile Applications pictures; no image replacement or visibility logic. */
@media (max-width: 767px) {
  body.home #applications .hh-app-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  body.home #applications .hh-app {
    min-width: 0;
    overflow: hidden;
    border-radius: 18px;
  }

  body.home #applications .hh-app .ffc-app-media picture {
    display: block;
    width: 100%;
    height: 100%;
  }

  body.home #applications .hh-app .ffc-app-media picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

/* Product inquiry description contrast fix: product summary only. */
.hh-product-summary .hh-page-lead {
  color: #000000 !important;
  opacity: 1 !important;
}
