/* FRANKFURTFINDER HEADER V2 — LOCKED. Do not modify without explicit Product Owner approval. */
.ff-header { position:relative; z-index:100; }
.ff-header__bar { display:flex; align-items:center; justify-content:space-between; height:68px; padding:0 28px; max-width:1220px; margin:0 auto; box-sizing:border-box; }
.ff-header__logo { display:flex; align-items:center; gap:9px; text-decoration:none; flex:none; }
.ff-header__logo-mark { width:28px;height:28px;border-radius:7px;background:#191817;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;color:#c8b273;flex:none; }
.ff-header__logo-text { font-size:17px;font-weight:800;white-space:nowrap; }
.ff-header__nav { display:flex; gap:2px; }
.ff-header__nav-item { display:inline-flex;align-items:center;padding:9px 15px;font-size:14px;font-weight:600;color:#46423c;text-decoration:none;border-radius:8px;border:1px solid transparent;background:transparent;transition:background 190ms ease-out,border-color 190ms ease-out,color 190ms ease-out,transform 190ms ease-out;white-space:nowrap; }
.ff-header__nav-item:hover,.ff-header__nav-item:focus-visible { background:#f4ead9;color:#191817;font-weight:700;border-color:#ddc9a3;transform:translateY(-1px);outline:none; }
.ff-header__nav-item--active { background:#f0e3c8;color:#191817;font-weight:650;border-color:#d4bd8b; }
.ff-header__nav-item--active:hover { background:#f4ead9; }
.ff-header__utilities { display:flex;align-items:center;gap:8px;flex:none; }
.ff-header__search-btn { display:inline-flex;align-items:center;gap:5px;padding:9px 15px;font-size:13.5px;font-weight:600;color:#46423c;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;font-family:inherit;transition:background 190ms ease-out,border-color 190ms ease-out,color 190ms ease-out,transform 190ms ease-out; }
.ff-header__search-btn:hover,.ff-header__search-btn:focus-visible { background:#f4ead9;color:#191817;font-weight:700;border-color:#ddc9a3;transform:translateY(-1px);outline:none; }
.ff-header__lang { display:flex;gap:3px;padding-left:8px;border-left:1px solid #e2ddd0; }
.ff-header__lang-item { display:inline-flex;align-items:center;padding:7px 10px;font-size:13.5px;font-weight:600;color:#46423c;text-decoration:none;border-radius:7px;border:1px solid transparent;background:transparent;transition:background 190ms ease-out,border-color 190ms ease-out,color 190ms ease-out,transform 190ms ease-out; }
.ff-header__lang-item:hover,.ff-header__lang-item:focus-visible { background:#f4ead9;color:#191817;font-weight:700;border-color:#ddc9a3;transform:translateY(-1px);outline:none; }
.ff-header__lang-item--active { background:#191817;color:#fff;font-weight:700;border-color:#191817; }
.ff-header__lang-item--active:hover { background:#2a2825;color:#fff;border-color:#191817; }
.ff-header__menu-btn { display:none;background:none;border:none;cursor:pointer;padding:8px;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:5px;border-radius:7px;transition:background 190ms ease-out; }
.ff-header__menu-btn:hover { background:#f4ead9; }
.ff-header__menu-btn span { display:block;width:20px;height:2px;background:#191817;border-radius:1px;transition:transform .2s,opacity .2s; }
.ff-header__menu-btn[aria-expanded="true"] span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
.ff-header__menu-btn[aria-expanded="true"] span:nth-child(2) { opacity:0; }
.ff-header__menu-btn[aria-expanded="true"] span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
.ff-header__divider { height:1px;background:#e2ddd0;width:100%; }
.ff-header__mobile-menu { background:#fffdf8;border-bottom:1px solid #191817;padding:4px 0; }
.ff-header__mobile-menu[hidden] { display:none; }
.ff-header__mobile-menu a { display:flex;align-items:center;padding:14px 28px;font-size:16px;font-weight:600;color:#191817;text-decoration:none;transition:background 150ms;min-height:44px;box-sizing:border-box; }
.ff-header__mobile-menu a:hover { background:#f4ead9; }
.ff-header__mobile-menu a.ff-header__nav-item--active { background:#f0e3c8;font-weight:650; }

@media (max-width:1023px) {
  .ff-header__bar { height:60px;padding:0 20px; }
  .ff-header__logo-text { font-size:15.5px; }
  .ff-header__nav-item { font-size:12.5px;padding:7px 10px; }
  .ff-header__search-btn { font-size:12.5px;padding:7px 10px; }
  .ff-header__lang-item { font-size:12.5px;padding:6px 9px; }
}
@media (max-width:759px) {
  .ff-header__bar { height:56px;padding:0 16px; }
  .ff-header__logo-text { font-size:14.5px; }
  .ff-header__nav { display:none; }
  .ff-header__menu-btn { display:flex; }
  .ff-header__search-btn { font-size:11px;padding:6px 8px; }
  .ff-header__lang-item { font-size:11px;padding:5px 8px; }
  .ff-header__mobile-menu a { padding:14px 16px; }
}
@media (prefers-reduced-motion:reduce) {
  .ff-header__nav-item,.ff-header__search-btn,.ff-header__lang-item,.ff-header__menu-btn { transition:none; }
  .ff-header__nav-item:hover,.ff-header__search-btn:hover,.ff-header__lang-item:hover { transform:none; }
}
