// HeaderAlt.jsx — sticky header with mobile burger + full-screen overlay menu
const altHeaderStyles = {
wrap: {
position: "sticky", top: 0, zIndex: 50,
background: "rgba(255,255,255,0.86)",
backdropFilter: "blur(14px)",
WebkitBackdropFilter: "blur(14px)",
borderBottom: "1px solid var(--border)",
},
inner: { height: 84, display: "flex", alignItems: "center", justifyContent: "space-between", gap: 24 },
left: { display: "flex", alignItems: "center", gap: 36, minWidth: 0 },
logo: { height: 44, width: "auto" },
logoMobile: { height: 32, width: "auto" },
nav: { display: "flex", gap: 36, alignItems: "center" },
navLink: (active) => ({
fontFamily: "var(--font-display)", fontWeight: 400, fontSize: 13,
color: active ? "var(--gol-navy-800)" : "var(--fg-muted)",
padding: "8px 0",
position: "relative",
transition: "color 140ms",
}),
navUnderline: { position: "absolute", bottom: 0, left: 0, right: 0, height: 1.5, background: "var(--gol-gold-500)" },
right: { display: "flex", alignItems: "center", gap: 10 },
langChipButton: (active) => ({
background: "none",
border: "none",
padding: 0,
cursor: "pointer",
color: active ? "var(--gol-navy-800)" : "var(--fg-muted)",
fontFamily: "var(--font-mono)",
fontSize: 11,
fontWeight: active ? 600 : 400,
letterSpacing: "0.08em",
}),
langChip: {
display: "flex", alignItems: "center", gap: 6,
padding: "5px 10px", border: "1px solid var(--border)", borderRadius: 8,
fontFamily: "var(--font-mono)", fontSize: 11, color: "var(--fg-muted)",
letterSpacing: "0.08em",
},
burger: {
width: 44, height: 44,
background: "transparent",
border: "1px solid var(--slate-300)",
borderRadius: 10,
display: "inline-flex", alignItems: "center", justifyContent: "center",
cursor: "pointer",
color: "var(--fg)",
},
/* Mobile overlay */
overlay: (open) => ({
position: "fixed", inset: 0, zIndex: 100,
background: "var(--gol-navy-950)",
color: "#fff",
display: "flex", flexDirection: "column",
transform: open ? "translateX(0)" : "translateX(100%)",
transition: "transform 320ms cubic-bezier(0.22,1,0.36,1)",
overflowY: "auto",
}),
overlayTop: {
display: "flex", alignItems: "center", justifyContent: "space-between",
padding: "20px 24px",
borderBottom: "1px solid rgba(255,255,255,0.08)",
},
overlayClose: {
width: 44, height: 44,
background: "transparent",
border: "1px solid rgba(255,255,255,0.16)",
borderRadius: 10,
color: "#fff",
display: "inline-flex", alignItems: "center", justifyContent: "center",
cursor: "pointer",
},
overlayNav: {
display: "flex", flexDirection: "column",
padding: "16px 24px 24px",
},
overlayLink: (active) => ({
display: "flex", alignItems: "center", justifyContent: "space-between",
padding: "20px 0",
fontFamily: "var(--font-display)", fontWeight: 500,
fontSize: 26,
letterSpacing: "-0.01em",
color: active ? "var(--gol-gold-400)" : "#fff",
borderBottom: "1px solid rgba(255,255,255,0.08)",
textAlign: "left",
background: "transparent", border: "none",
cursor: "pointer",
width: "100%",
}),
overlayLinkArrow: { color: "rgba(255,255,255,0.4)" },
overlayFooter: {
marginTop: "auto",
padding: "24px",
borderTop: "1px solid rgba(255,255,255,0.08)",
display: "flex", flexDirection: "column", gap: 14,
},
overlayLangRow: {
display: "flex", gap: 8,
fontFamily: "var(--font-mono)", fontSize: 13,
color: "rgba(255,255,255,0.55)",
letterSpacing: "0.08em",
},
};
function HeaderAlt({ route, setRoute }) {
const isMobile = window.useMobile ? window.useMobile(760) : false;
const [lang, setLang] = window.useLang();
const [open, setOpen] = React.useState(false);
// Lock body scroll while overlay is open
React.useEffect(() => {
if (open) {
document.body.style.overflow = "hidden";
} else {
document.body.style.overflow = "";
}
return () => { document.body.style.overflow = ""; };
}, [open]);
// Close overlay when route changes
const navigate = (id) => { setRoute && setRoute(id); setOpen(false); };
const navItems = [
[t("О компании", "Компания туралы"), "about"],
[t("Контакты", "Байланыс"), "contacts"],
];
const scrollToConsultation = () => {
window.open("https://wa.me/77089098810", "_blank", "noopener,noreferrer");
setOpen(false);
};
return (
<>
{!isMobile && (
)}