:root {
      --wc-header-height: 106px;
      --wc-blue: #fd7906;
      --wc-ink: #0f172a;
      --wc-line: #e5e7eb;
    }

    html { scroll-padding-top: var(--wc-header-height); }

    body {
      font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
      padding-top: var(--wc-header-height);
    }

    .site-header {
      position: fixed !important;
      top: 15px !important;
      left: 0 !important;
      right: 0 !important;
      z-index: 700 !important;
      height: auto !important;
      min-height: 0 !important;
      padding: 0 !important;
      margin: 0 !important;
      background: transparent !important;
      border: 0 !important;
      box-shadow: none !important;
      backdrop-filter: none !important;
      -webkit-backdrop-filter: none !important;
      pointer-events: none !important;
    }

    .site-header::before,
    .site-header::after {
      content: none !important;
      display: none !important;
    }

    .header-inner {
      position: relative;
      width: min(1600px, calc(100% - 60px));
      height: 76px;
      margin: 0 auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      padding: 10px 14px 10px 22px;
      border-radius: 999px;
      background: #fff;
      border: 1px solid #e5e7eb;
      box-shadow: 0 8px 24px rgba(15,23,42,.06), 0 1px 3px rgba(15,23,42,.04);
      pointer-events: auto !important;
      isolation: isolate;
    }

    .header-inner::before {
      content: '';
      position: absolute;
      inset: 0;
      border-radius: inherit;
      pointer-events: none;
      box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
    }

    .logo-link {
      display: inline-flex;
      align-items: center;
      flex: 0 0 auto;
      text-decoration: none;
      position: relative;
      z-index: 2;
    }

    .site-logo {
      height: 48px;
      width: auto;
      display: block;
    }

    .main-nav {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      flex: 1;
      position: relative;
      z-index: 2;
    }

    .main-nav a {
      height: 42px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 16px;
      border-radius: 999px;
      color: #111827;
      text-decoration: none;
      font-size: 14px;
      font-weight: 700;
      letter-spacing: 0;
      transition: background .18s ease, color .18s ease, transform .18s ease;
      white-space: nowrap;
    }

    .main-nav a:hover {
      background: #f8fafc;
      color: var(--wc-blue);
      transform: translateY(-1px);
    }

    .mobile-reservation-link {
      display: none !important;
    }

    #uc-privacy-button,
    button[data-testid="uc-privacy-button"],
    .uc-privacy-button-wrapper {
      display: none !important;
    }

    .header-language-switcher {
      height: 42px;
      display: inline-flex;
      align-items: center;
      gap: 4px;
      padding: 4px;
      border-radius: 999px;
      background: #f8fafc;
      border: 1px solid #e5e7eb;
      position: relative;
      z-index: 2;
      flex: 0 0 auto;
    }

    .header-language-switcher a,
    .mobile-language-switcher a {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 34px;
      height: 32px;
      padding: 0 9px;
      border-radius: 999px;
      color: #64748b;
      text-decoration: none;
      font-size: 12px;
      font-weight: 900;
      letter-spacing: 0;
    }

    .header-language-switcher a.is-active,
    .mobile-language-switcher a.is-active {
      background: #fff;
      color: var(--wc-blue);
      box-shadow: 0 6px 18px rgba(15,23,42,.08);
    }

    .mobile-language-switcher {
      display: none;
    }

    .header-cta {
      height: 46px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 20px;
      border-radius: 999px;
      background: var(--wc-blue);
      color: #fff;
      text-decoration: none;
      font-size: 13px;
      font-weight: 800;
      box-shadow: 0 12px 30px rgba(253,121,6,.24);
      white-space: nowrap;
      transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
      position: relative;
      z-index: 2;
    }

    .header-cta:hover {
      background: #d86100;
      transform: translateY(-1px);
      box-shadow: 0 16px 38px rgba(253,121,6,.32);
    }

    .mobile-menu-btn {
      display: none;
      width: 48px;
      height: 48px;
      border: 0;
      border-radius: 999px;
      background: #f1f5f9;
      color: var(--wc-ink);
      font-size: 22px;
      font-weight: 900;
      cursor: pointer;
      line-height: 1;
      transition: background .18s ease, transform .18s ease;
      position: relative;
      z-index: 4;
      -webkit-tap-highlight-color: transparent;
      touch-action: manipulation;
    }

    .mobile-menu-btn:hover {
      background: #e2e8f0;
      transform: translateY(-1px);
    }

    @media (max-width: 1180px) {
      .header-inner {
        width: min(1340px, calc(100% - 34px));
        gap: 14px;
      }

      .main-nav { gap: 4px; }

      .main-nav a {
        padding: 0 11px;
        font-size: 13px;
      }
    }

    @media (max-width: 980px) {
      :root { --wc-header-height: 92px; }

      .site-header {
        top: 10px !important;
        z-index: 700 !important;
      }

      .site-header.menu-open {
        z-index: 30000 !important;
      }

      .header-inner {
        position: relative;
        width: calc(100% - 20px);
        height: 68px;
        padding: 8px 8px 8px 16px;
        border-radius: 24px;
        gap: 12px;
      }

      .site-logo { height: 42px; }

      .main-nav {
        position: absolute !important;
        top: calc(100% + 10px) !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 30001 !important;
        display: flex !important;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        gap: 7px;
        padding: 12px;
        border-radius: 24px;
        background: #fff;
        border: 1px solid #e5e7eb;
        box-shadow: 0 24px 70px rgba(15,23,42,.18);
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translateY(-8px) scale(.98) !important;
        transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
      }

      .site-header.menu-open .main-nav {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translateY(0) scale(1) !important;
      }

      .main-nav a {
        width: 100%;
        height: 48px;
        justify-content: center;
        padding: 0 16px;
        border-radius: 16px;
        background: #f8fafc;
        font-size: 15px;
      }

      .main-nav a:hover { transform: none; }

      .main-nav .mobile-reservation-link {
        display: inline-flex !important;
        background: var(--wc-blue);
        color: #fff;
        font-weight: 850;
        box-shadow: 0 12px 28px rgba(253,121,6,.22);
      }

      .header-language-switcher {
        display: none !important;
      }

      .mobile-language-switcher {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        padding: 8px;
        border-radius: 16px;
        background: #f8fafc;
      }

      .mobile-language-switcher a {
        flex: 1;
        height: 42px;
        border-radius: 14px;
        background: #fff;
        border: 1px solid #e5e7eb;
        font-size: 14px;
      }

      .mobile-language-switcher a.is-active {
        border-color: rgba(253,121,6,.35);
        color: var(--wc-blue);
      }

      .header-cta {
        display: none !important;
      }

      .mobile-menu-btn {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
      }
    }
