/* Shared V103 header and progressive floating navigation, original logo bytes. */
@layer gcp-v101-refinements {
  .gcp-v103-site-header {
    background: #2b567e !important;
    background-image: none !important;
    color: #fffdf7 !important;
    border-color: #2b567e !important;
  }
  .gcp-v103-site-header a,
  .gcp-v103-site-header .eyebrow,
  .gcp-v103-site-header .edition {
    color: #fffdf7 !important;
    -webkit-text-fill-color: #fffdf7 !important;
  }
  body .gcp-v103-site-header .gcp-v89-service-links a {
    color: #fffdf7 !important;
    -webkit-text-fill-color: #fffdf7 !important;
  }
  .gcp-v103-site-header > .navin,
  .gcp-v103-site-header .gcp-v89-service-nav,
  .gcp-v103-site-header .seo-header-inner,
  .gcp-v103-site-header .top-inner {
    background: transparent !important;
  }
  .gcp-v103-site-header a:has(> img[src$="logo-gilcoupdepouce.webp"]),
  .gcp-v103-site-header img[src$="logo-gilcoupdepouce.webp"] {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
  }
  .gcp-v103-site-header img[src$="logo-gilcoupdepouce.webp"] {
    display: block !important;
    width: clamp(180px, 20vw, 264px) !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 72px !important;
    object-fit: contain !important;
  }
  #gcpQuickNavigation[hidden] {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
  #gcpLinaPanel:not([hidden]) {
    z-index: 2147483601 !important;
  }
  body:has(#gcpLinaPanel:not([hidden])) #gcpQuickNavigation {
    visibility: hidden !important;
    pointer-events: none !important;
  }
  #gcpFloatingMenu > svg {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    flex: 0 0 24px !important;
  }
  /* Keep a usable header trigger while the floating trigger is below the opening. */
  body:not(.gcp-v71-navigation-visible) .gcp-v103-site-header #gcpMenuToggle {
    display: inline-flex !important;
  }
  .gcp-v103-foodtruck .gcp-lina-eyebrow {
    font: 700 clamp(20px, 2.6vw, 30px)/1.4 Nunito, Arial, sans-serif !important;
    color: #426f92 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    margin: 0 0 16px !important;
  }
  .gcp-v103-foodtruck h1 {
    font-size: clamp(30px, 3.8vw, 44px) !important;
    max-width: none !important;
  }
  .gcp-v103-foodtruck .gcp-lina-hero p,
  .gcp-v103-foodtruck .gcp-lina-hero p small {
    font: 400 clamp(18px, 1.8vw, 20px)/1.65 Nunito, Arial, sans-serif !important;
  }
  .gcp-v103-foodtruck .gcp-lina-hero { margin-top: 0 !important; }
  .gcp-v103-site-header.topbar .edition { white-space: normal !important; }
  @media (max-width: 900px) {
    #gcpQuickNavigation:not([hidden]) {
      position: fixed !important;
      left: max(12px, env(safe-area-inset-left)) !important;
      right: max(12px, env(safe-area-inset-right)) !important;
      bottom: max(12px, env(safe-area-inset-bottom)) !important;
      top: auto !important;
      display: grid !important;
      grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
      width: auto !important;
      max-width: none !important;
      align-items: stretch !important;
      gap: 0 !important;
      padding: 0 !important;
      margin: 0 !important;
      background: #fffdf7 !important;
      border: 1px solid #d99a2b !important;
      border-radius: 18px !important;
      overflow: hidden !important;
      box-shadow: 0 5px 18px #002a541a !important;
      pointer-events: auto !important;
    }
    #gcpQuickNavigation #gcpFloatingMenu,
    #gcpQuickNavigation .gcp-v71-quick-secondary {
      position: static !important;
      display: flex !important;
      flex-direction: column !important;
      align-items: center !important;
      justify-content: center !important;
      gap: 4px !important;
      width: 100% !important;
      min-width: 0 !important;
      max-width: none !important;
      height: auto !important;
      min-height: 64px !important;
      padding: 8px 4px !important;
      margin: 0 !important;
      border: 0 !important;
      border-radius: 0 !important;
      background: #fffdf7 !important;
      color: #173b5e !important;
      -webkit-text-fill-color: #173b5e !important;
      font: 700 18px/1.2 Nunito, Arial, sans-serif !important;
      text-decoration: none !important;
      box-shadow: none !important;
      box-sizing: border-box !important;
      pointer-events: auto !important;
    }
    #gcpQuickNavigation .gcp-v71-quick-secondary:last-child {
      background: #d99a2b !important;
    }
    #gcpQuickNavigation > * > svg {
      display: block !important;
      width: 24px !important;
      height: 24px !important;
      min-width: 24px !important;
      flex: 0 0 24px !important;
      color: #173b5e !important;
    }
    #gcpQuickNavigation > * > span {
      font: inherit !important;
      color: inherit !important;
    }
    #gcpSideMenu {
      bottom: calc(90px + env(safe-area-inset-bottom)) !important;
      max-height: calc(100dvh - 120px - env(safe-area-inset-bottom)) !important;
    }
    body:has(#gcpQuickNavigation) > footer {
      padding-bottom: calc(116px + env(safe-area-inset-bottom)) !important;
    }
    body:has(#gcpQuickNavigation) .gcp-lina-launch {
      bottom: calc(92px + env(safe-area-inset-bottom)) !important;
    }
  }
  @media (max-width: 600px) {
    .gcp-v103-foodtruck .gcp-lina-header { padding: 16px !important; gap: 16px !important; flex-wrap: wrap !important; }
    .gcp-v103-foodtruck .gcp-lina-header nav { width: 100% !important; }
  }
}
