/* =========================================================================
   PS Beton – hlavní menu (Max Mega Menu, umístění main_menu)
   Selektory odpovídají vygenerovanému CSS Max Mega Menu, jen s body.psb-menu navíc.
   ====================================================================== */
body.psb-menu {
	--psb-brand: #103B87;
	--psb-brand-dark: #0A2454;
	--psb-ink: #0F1E33;
	--psb-muted: #55606B;
	--psb-accent: #F5B400;
	--psb-line: #E2E0DB;
	--psb-font: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

/* ---------- Desktop ---------- */
@media only screen and (min-width: 769px) {

	/* Položky 1. úrovně */
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item > a.mega-menu-link {
		position: relative;
		height: 60px; line-height: 60px; padding: 0 14px;
		font-family: var(--psb-font); font-size: 15px; font-weight: 600; letter-spacing: .03em;
		color: var(--psb-brand);
		transition: color .15s;
	}
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item > a.mega-menu-link::after {
		content: ""; position: absolute; left: 14px; right: 14px; bottom: 10px; height: 3px; border-radius: 2px;
		background: var(--psb-accent); transform: scaleX(0); transform-origin: left; transition: transform .2s;
	}
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item > a.mega-menu-link:hover,
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-toggle-on > a.mega-menu-link,
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link {
		color: var(--psb-brand-dark); background: transparent;
	}
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item > a.mega-menu-link:hover::after,
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-toggle-on > a.mega-menu-link::after,
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link::after,
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link::after,
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link::after {
		transform: scaleX(1);
	}
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item > a.mega-menu-link .mega-indicator { margin-left: 4px; opacity: .7; }

	/* Tlačítko „Poptávka“ v menu (položka s CSS třídou psb-menu-cta) */
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-psb-menu-cta { margin-left: 8px; }
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-psb-menu-cta > a.mega-menu-link {
		height: 42px; line-height: 42px; padding: 0 20px; border-radius: 8px;
		background: var(--psb-accent); color: var(--psb-ink); letter-spacing: .02em;
		transition: background-color .15s;
	}
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-psb-menu-cta > a.mega-menu-link:hover { background: #FFC61A; color: var(--psb-ink); }
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-psb-menu-cta > a.mega-menu-link::after { display: none; }

	/* Mega panel (Nabídka) */
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu {
		padding: 28px 32px 24px;
		background: #FFFFFF;
		border: 1px solid var(--psb-line); border-top: 3px solid var(--psb-accent);
		border-radius: 0 0 14px 14px;
		box-shadow: 0 18px 40px rgba(15, 30, 51, .14);
	}
	/* Nadpisy sloupců */
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
		margin: 0 0 10px; padding: 0 0 10px;
		border-bottom: 1px solid var(--psb-line);
		font-family: var(--psb-font); font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
		color: var(--psb-brand);
	}
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item { padding: 0 20px; }
	/* Odkazy ve sloupcích */
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item > a.mega-menu-link {
		padding: 6px 0; line-height: 1.35;
		font-family: var(--psb-font); font-size: 15px; font-weight: 400; text-transform: none; letter-spacing: 0;
		color: var(--psb-ink);
		transition: color .15s, transform .15s;
	}
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item > a.mega-menu-link:hover,
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item.mega-current-menu-item > a.mega-menu-link {
		color: var(--psb-brand); background: transparent; transform: translateX(3px);
	}
	/* Stavební stroje mají ~20 položek – dva sloupce, ať panel není tak vysoký */
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu > li#mega-menu-item-2500 { width: 50%; }
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu > li#mega-menu-item-2498,
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu > li#mega-menu-item-5029 { width: 25%; }
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu li#mega-menu-item-2500 > ul.mega-sub-menu { columns: 2; column-gap: 28px; }
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu li#mega-menu-item-2500 > ul.mega-sub-menu > li { break-inside: avoid; }

	/* Rozbalovací seznamy (E-shop apod.) */
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-flyout ul.mega-sub-menu {
		width: 280px; padding: 10px 0;
		background: #FFFFFF;
		border: 1px solid var(--psb-line); border-top: 3px solid var(--psb-accent);
		border-radius: 0 0 12px 12px;
		box-shadow: 0 18px 40px rgba(15, 30, 51, .14);
	}
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {
		padding: 9px 20px; line-height: 1.35; background: transparent;
		font-family: var(--psb-font); font-size: 15px; font-weight: 400; text-transform: none; letter-spacing: 0;
		color: var(--psb-ink);
		transition: color .15s, background-color .15s;
	}
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover,
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item.mega-current-menu-item > a.mega-menu-link {
		background: #F4F6FA; color: var(--psb-brand);
	}
	/* E-shop má ~17 kategorií – dva sloupce */
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li#mega-menu-item-4726 > ul.mega-sub-menu { width: 560px; columns: 2; column-gap: 0; }
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li#mega-menu-item-4726 > ul.mega-sub-menu > li { break-inside: avoid; }
}

/* ---------- Mobil ---------- */
@media only screen and (max-width: 768px) {
	body.psb-menu #mega-menu-wrap-main_menu .mega-menu-toggle {
		height: 56px; line-height: 56px; padding: 0 16px;
		background: var(--psb-brand); border-radius: 0;
	}
	body.psb-menu #mega-menu-wrap-main_menu .mega-menu-toggle .mega-toggle-label,
	body.psb-menu #mega-menu-wrap-main_menu .mega-menu-toggle .mega-toggle-block { color: #FFFFFF; font-family: var(--psb-font); font-weight: 600; letter-spacing: .06em; }
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu { background: #FFFFFF; border-bottom: 3px solid var(--psb-accent); }
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item > a.mega-menu-link {
		height: auto; min-height: 52px; line-height: 52px; padding: 0 18px;
		border-bottom: 1px solid var(--psb-line);
		font-family: var(--psb-font); font-size: 16px; font-weight: 600; color: var(--psb-brand);
	}
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu li.mega-menu-item ul.mega-sub-menu { background: #F7F8FA; }
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu li.mega-menu-item ul.mega-sub-menu a.mega-menu-link {
		padding: 12px 18px 12px 30px; line-height: 1.35;
		font-family: var(--psb-font); font-size: 15px; font-weight: 400; text-transform: none; color: var(--psb-ink);
	}
	body.psb-menu #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-psb-menu-cta > a.mega-menu-link {
		margin: 12px 18px; border-radius: 8px; border: 0; text-align: center;
		background: var(--psb-accent); color: var(--psb-ink);
	}
}

@media (prefers-reduced-motion: reduce) {
	body.psb-menu #mega-menu-wrap-main_menu * { transition: none !important; }
}

/* =========================================================================
   Varianta MODRÁ – modrý pruh menu jako v návrhu (body.psb-menu--blue)
   ====================================================================== */
body.psb-menu--blue .main-menu,
body.psb-menu--blue .main-menu #site-navigation,
body.psb-menu--blue .main-menu .navbar,
body.psb-menu--blue .main-menu .navbar-default {
	background: var(--psb-brand) !important;
	border-color: var(--psb-brand) !important;
	box-shadow: none;
}
body.psb-menu--blue .main-menu { border-bottom: 1px solid var(--psb-brand-dark) !important; }
body.psb-menu--blue #mega-menu-wrap-main_menu,
body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu { background: transparent !important; }

@media only screen and (min-width: 769px) {
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item > a.mega-menu-link {
		color: #FFFFFF;
	}
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item > a.mega-menu-link:hover,
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-toggle-on > a.mega-menu-link,
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link {
		color: #FFFFFF; background: rgba(255, 255, 255, .08);
	}
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item > a.mega-menu-link .mega-indicator { opacity: .85; }
	/* Žluté tlačítko „Poptávka“ zůstává */
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-psb-menu-cta > a.mega-menu-link,
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-psb-menu-cta > a.mega-menu-link:hover {
		color: var(--psb-ink);
	}
	/* Panely navazují přímo na modrý pruh */
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu,
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-flyout > ul.mega-sub-menu {
		border-top-width: 3px;
	}
}
@media only screen and (max-width: 768px) {
	body.psb-menu--blue #mega-menu-wrap-main_menu .mega-menu-toggle { background: var(--psb-brand); }
	/* Rozbalené menu: bílé položky na modré */
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu {
		background: var(--psb-brand) !important;
		border-top: 1px solid rgba(255, 255, 255, .15);
		border-bottom: 3px solid var(--psb-accent);
	}
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item > a.mega-menu-link,
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item > a.mega-menu-link:hover,
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-toggle-on > a.mega-menu-link,
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link {
		color: #FFFFFF !important;
		background: transparent;
		border-bottom: 1px solid rgba(255, 255, 255, .15);
	}
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item.mega-toggle-on > a.mega-menu-link { background: rgba(255, 255, 255, .08); }
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-item > a.mega-menu-link::after { display: none; }
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu .mega-indicator,
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu .mega-indicator::after { color: #FFFFFF !important; }
	/* Podmenu: tmavší modrá */
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu li.mega-menu-item ul.mega-sub-menu {
		background: var(--psb-brand-dark) !important; border: 0 !important; box-shadow: none !important;
	}
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu li.mega-menu-item ul.mega-sub-menu a.mega-menu-link,
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu li.mega-menu-item ul.mega-sub-menu a.mega-menu-link:hover {
		color: #D4E1EF !important; background: transparent !important;
		border-bottom: 1px solid rgba(255, 255, 255, .08);
	}
	/* Nadpisy sloupců v mega panelu (Stavební stroje…) */
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
		color: var(--psb-accent) !important; font-weight: 700; text-transform: uppercase; font-size: 13px; letter-spacing: .08em;
	}
	/* Tlačítko Poptávka */
	body.psb-menu--blue #mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-psb-menu-cta > a.mega-menu-link {
		color: var(--psb-ink) !important; background: var(--psb-accent) !important; border-bottom: 0;
	}
}

/* =========================================================================
   HLAVIČKA – sjednocení s návrhem (platí pro obě varianty menu)
   ====================================================================== */

/* ---------- Horní lišta s kontakty ---------- */
body.psb-menu .top-bar-section {
	background: var(--psb-brand-dark) !important;
	padding: 0 !important; margin: 0; border: 0 !important;
	font-family: var(--psb-font);
}
body.psb-menu .top-bar-section .container > .row {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
	gap: 0 24px; min-height: 42px;
}
body.psb-menu .top-bar-section .container > .row::before,
body.psb-menu .top-bar-section .container > .row::after { display: none; }
body.psb-menu .top-bar-section .widget {
	float: none !important; width: auto !important; margin: 0 !important; padding: 8px 15px !important;
	display: flex; align-items: center; gap: 8px; text-align: left !important;
}
body.psb-menu .top-bar-section .widget .textwidget { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 6px; }
body.psb-menu .top-bar-section .widget h4,
body.psb-menu .top-bar-section .widget p {
	display: inline; margin: 0 !important; padding: 0;
	font-family: var(--psb-font) !important; font-size: 14px !important; font-weight: 400 !important;
	line-height: 1.4 !important; color: #D4E1EF !important; text-transform: none; letter-spacing: 0;
}
body.psb-menu .top-bar-section .widget h4 a,
body.psb-menu .top-bar-section .widget a {
	color: #FFFFFF !important; font-weight: 600; text-decoration: none;
}
body.psb-menu .top-bar-section .widget a:hover { text-decoration: underline; }
/* Ikony před kontakty (telefon, adresa, e-mail) */
body.psb-menu .top-bar-section .widget::before {
	content: ""; flex: none; width: 16px; height: 16px; background: var(--psb-accent);
	-webkit-mask: var(--psb-ico) center / contain no-repeat; mask: var(--psb-ico) center / contain no-repeat;
}
body.psb-menu .top-bar-section .widget:nth-child(1) { --psb-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E"); }
body.psb-menu .top-bar-section .widget:nth-child(2) { --psb-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s-8-6.5-8-13a8 8 0 0 1 16 0c0 6.5-8 13-8 13z'/%3E%3Ccircle cx='12' cy='9' r='3'/%3E%3C/svg%3E"); }
body.psb-menu .top-bar-section .widget:nth-child(3) { --psb-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3Cpath d='M22 6l-10 7L2 6'/%3E%3C/svg%3E"); }

/* ---------- Bílá část: logo, vyhledávání, účet, košík ---------- */
body.psb-menu .site-header {
	padding-top: 18px !important; padding-bottom: 18px !important;
	background: #FFFFFF; border-bottom: 0;
	font-family: var(--psb-font);
}
body.psb-menu .site-header .heading-row { display: flex; flex-wrap: wrap; align-items: center; }
body.psb-menu .site-header .heading-row::before,
body.psb-menu .site-header .heading-row::after { display: none; }
body.psb-menu .site-header .site-heading,
body.psb-menu .site-header .search-heading,
body.psb-menu .site-header .header-right { float: none; }
body.psb-menu .site-heading-sidebar { display: flex; flex-direction: column; gap: 6px; }

/* Vyhledávání */
body.psb-menu .site-header .search-form {
	display: flex; width: 100%; margin: 0;
}
body.psb-menu .site-header .search-form label { flex: 1 1 auto; margin: 0; }
body.psb-menu .site-header .search-form .search-field {
	width: 100%; height: 48px; margin: 0; padding: 0 16px;
	border: 1.5px solid #C9C6C0; border-right: 0; border-radius: 8px 0 0 8px;
	background: #FAFAF8; box-shadow: none;
	font-family: var(--psb-font); font-size: 15px; color: var(--psb-ink);
}
body.psb-menu .site-header .search-form .search-field::placeholder { color: #7A8590; }
body.psb-menu .site-header .search-form .search-field:focus {
	outline: none; border-color: var(--psb-brand); background: #FFFFFF;
	box-shadow: 0 0 0 3px rgba(16, 59, 135, .15);
}
body.psb-menu .site-header .search-form .search-submit {
	flex: none; height: 48px; margin: 0; padding: 0 24px;
	border: 0 !important; border-radius: 0 8px 8px 0;
	background: var(--psb-brand) !important; color: #FFFFFF !important;
	font-family: var(--psb-font); font-size: 15px; font-weight: 600; cursor: pointer;
	transition: background-color .15s;
}
body.psb-menu .site-header .search-form .search-submit:hover { background: var(--psb-brand-dark) !important; }

/* Účet a košík */
body.psb-menu .site-header .header-right { display: flex; align-items: center; justify-content: flex-end; gap: 16px; }
body.psb-menu .site-header .header-my-account a,
body.psb-menu .site-header .header-cart a.cart-contents { color: var(--psb-brand) !important; text-decoration: none; }
body.psb-menu .site-header .header-my-account i,
body.psb-menu .site-header .header-cart a.cart-contents i { color: var(--psb-brand) !important; font-size: 24px; }
body.psb-menu .site-header .header-cart a.cart-contents { display: inline-flex; align-items: center; gap: 10px; }
body.psb-menu .site-header .header-cart .count {
	background: var(--psb-accent) !important; color: var(--psb-ink) !important;
	font-family: var(--psb-font); font-weight: 700;
}
body.psb-menu .site-header .header-cart .amount-cart {
	background: transparent !important; color: var(--psb-brand) !important; padding: 0 !important;
	font-family: var(--psb-font); font-size: 16px; font-weight: 700;
}
body.psb-menu .site-header .header-cart .amount-cart::before,
body.psb-menu .site-header .header-cart .amount-cart::after { display: none !important; }

/* Mobil */
@media (max-width: 767px) {
	body.psb-menu .top-bar-section .container > .row { justify-content: center; min-height: 0; padding: 4px 0; }
	body.psb-menu .top-bar-section .widget { padding: 4px 10px !important; }
	body.psb-menu .top-bar-section .widget:nth-child(2) { display: none !important; } /* adresa je v patičce */
	body.psb-menu .site-header { padding-top: 12px !important; padding-bottom: 12px !important; }
	body.psb-menu .site-header .search-heading { margin-top: 10px; }
}

/* =========================================================================
   Varianta MODRÁ HLAVIČKA (body.psb-menu--header, navíc k psb-menu--blue)
   Hlavička i menu #103B87, logo původní v bílém rámečku.
   ====================================================================== */
body.psb-menu--header .site-header { background: var(--psb-brand) !important; }

/* Menu – stejná modrá jako hlavička, oddělené jemnými linkami */
body.psb-menu--header .main-menu,
body.psb-menu--header .main-menu #site-navigation,
body.psb-menu--header .main-menu .navbar,
body.psb-menu--header .main-menu .navbar-default {
	background: var(--psb-brand) !important;
	border-color: transparent !important;
}
body.psb-menu--header .main-menu {
	border-top: 1px solid rgba(255, 255, 255, .16) !important;
	border-bottom: 1px solid rgba(255, 255, 255, .16) !important;
}

/* Logo v bílém zaobleném rámečku – původní barvy zůstanou čitelné */
body.psb-menu--header .site-branding-logo a.custom-logo-link {
	display: inline-flex; align-items: center;
	padding: 12px 20px; border-radius: 12px;
	background: #FFFFFF;
	box-shadow: 0 6px 18px rgba(5, 18, 45, .25);
	line-height: 0;
	transition: transform .2s, box-shadow .2s;
}
body.psb-menu--header .site-branding-logo a.custom-logo-link:hover { transform: translateY(-1px); box-shadow: 0 10px 24px rgba(5, 18, 45, .32); }
body.psb-menu--header .site-branding-logo a.custom-logo-link img,
body.psb-menu--header .site-branding-logo img {
	width: 180px !important; max-width: 100%; height: auto !important; display: block; margin: 0;
}
@media (max-width: 767px) {
	body.psb-menu--header .site-branding-logo a.custom-logo-link { padding: 10px 14px; }
	body.psb-menu--header .site-branding-logo a.custom-logo-link img,
	body.psb-menu--header .site-branding-logo img { width: 150px !important; }
}

/* Vyhledávání: bílé pole, žluté tlačítko */
body.psb-menu--header .site-header .search-form .search-field {
	border: 0; background: #FFFFFF;
}
body.psb-menu--header .site-header .search-form .search-field:focus { box-shadow: 0 0 0 3px rgba(245, 180, 0, .45); }
body.psb-menu--header .site-header .search-form .search-submit {
	background: var(--psb-accent) !important; color: var(--psb-ink) !important;
}
body.psb-menu--header .site-header .search-form .search-submit:hover { background: #FFC61A !important; }

/* Účet a košík bíle */
body.psb-menu--header .site-header .header-my-account a,
body.psb-menu--header .site-header .header-my-account i,
body.psb-menu--header .site-header .header-cart a.cart-contents,
body.psb-menu--header .site-header .header-cart a.cart-contents i,
body.psb-menu--header .site-header .header-cart .amount-cart { color: #FFFFFF !important; }

/* Přepínač jazyků (GTranslate) a název webu */
body.psb-menu--header .site-header .gtranslate_wrapper a,
body.psb-menu--header .site-header .site-heading-sidebar a { color: #FFFFFF !important; }
body.psb-menu--header .site-header .site-title a,
body.psb-menu--header .site-header .site-description { color: #FFFFFF !important; }

/* Mobil: rozbalené menu ve stejné modré */
@media only screen and (max-width: 768px) {
	body.psb-menu--header #mega-menu-wrap-main_menu .mega-menu-toggle,
	body.psb-menu--header #mega-menu-wrap-main_menu #mega-menu-main_menu { background: var(--psb-brand) !important; }
}

/* =========================================================================
   Zarovnání hlavičky na šířku obsahu (1280 px jako zbytek stránky)
   ====================================================================== */
body.psb-menu .top-bar-section > .container,
body.psb-menu .site-header > .container {
	width: 100% !important;
	max-width: 1280px !important;
	padding-left: 24px !important;
	padding-right: 24px !important;
	margin-left: auto; margin-right: auto;
	box-sizing: border-box;
}
/* Řádky bez záporných okrajů Bootstrapu, aby levý okraj loga = levý okraj obsahu */
body.psb-menu .top-bar-section > .container > .row,
body.psb-menu .site-header > .container > .heading-row { margin-left: 0 !important; margin-right: 0 !important; }
body.psb-menu .top-bar-section .widget:first-child,
body.psb-menu .site-header .site-heading { padding-left: 0 !important; }
body.psb-menu .top-bar-section .widget:last-child,
body.psb-menu .site-header .header-right { padding-right: 0 !important; }
@media (max-width: 600px) {
	body.psb-menu .top-bar-section > .container,
	body.psb-menu .site-header > .container { padding-left: 16px !important; padding-right: 16px !important; }
}

/* =========================================================================
   Vyhledávání – pole a tlačítko přesně v jedné linii
   ====================================================================== */
body.psb-menu .site-header .search-form {
	display: flex !important; align-items: stretch; flex-wrap: nowrap;
	height: 48px; padding: 0 !important; border: 0 !important; background: transparent !important;
}
body.psb-menu .site-header .search-form label {
	display: flex; flex: 1 1 auto; height: 48px; margin: 0 !important; padding: 0 !important;
}
body.psb-menu .site-header .search-form .search-field,
body.psb-menu .site-header .search-form .search-submit {
	box-sizing: border-box !important;
	height: 48px !important; min-height: 0 !important;
	margin: 0 !important;
	position: static !important; top: auto !important;
	vertical-align: top;
	line-height: 48px !important;
}
body.psb-menu .site-header .search-form .search-field { padding-top: 0 !important; padding-bottom: 0 !important; }
body.psb-menu .site-header .search-form .search-submit {
	padding-top: 0 !important; padding-bottom: 0 !important;
	border: 0 !important; outline-offset: -3px;
	-webkit-appearance: none; appearance: none;
}

/* =========================================================================
   MODRÁ HLAVIČKA – pravá část podle návrhu
   (vyhledávání jako jeden box, ikony ve čtvercích, tlačítko Poptávka)
   ====================================================================== */
@media (min-width: 768px) {
	/* Rozložení: logo | vyhledávání (roztažené) | ikony + Poptávka */
	body.psb-menu--header .site-header .heading-row { flex-wrap: nowrap; gap: 32px; }
	body.psb-menu--header .site-header .site-heading { flex: 0 0 auto; width: auto !important; }
	body.psb-menu--header .site-header .search-heading { flex: 1 1 auto; width: auto !important; max-width: 640px; margin: 0 auto; padding: 0 !important; }
	body.psb-menu--header .site-header .header-right { flex: 0 0 auto; width: auto !important; display: flex !important; gap: 10px; }
}

/* Vyhledávání: bílý box, tlačítko uvnitř – žádné přesahy */
body.psb-menu--header .site-header .search-form {
	position: relative; display: flex !important; align-items: center;
	height: 52px !important; padding: 5px !important; gap: 6px;
	background: #FFFFFF !important; border: 0 !important; border-radius: 10px;
	box-shadow: 0 4px 14px rgba(5, 18, 45, .18);
	box-sizing: border-box;
}
body.psb-menu--header .site-header .search-form:focus-within { box-shadow: 0 0 0 3px rgba(245, 180, 0, .55); }
body.psb-menu--header .site-header .search-form label { height: 42px; }
body.psb-menu--header .site-header .search-form .search-field {
	height: 42px !important; line-height: 42px !important;
	padding: 0 12px !important; border: 0 !important; border-radius: 6px;
	background: transparent !important; box-shadow: none !important;
}
body.psb-menu--header .site-header .search-form .search-field:focus { box-shadow: none !important; }
body.psb-menu--header .site-header .search-form .search-submit {
	height: 42px !important; line-height: 42px !important;
	padding: 0 22px !important; border-radius: 7px !important;
	background: var(--psb-accent) !important; color: var(--psb-ink) !important;
	font-weight: 600;
}

/* Účet a košík jako orámované čtverce */
body.psb-menu--header .site-header .header-my-account,
body.psb-menu--header .site-header .header-cart { margin: 0 !important; float: none !important; }
body.psb-menu--header .site-header .header-login a,
body.psb-menu--header .site-header .header-cart a.cart-contents {
	position: relative;
	display: inline-flex !important; align-items: center; justify-content: center;
	width: 48px; height: 48px; padding: 0 !important; margin: 0 !important;
	border: 1px solid rgba(255, 255, 255, .35); border-radius: 10px;
	background: transparent;
	transition: border-color .15s, background-color .15s;
}
body.psb-menu--header .site-header .header-login a:hover,
body.psb-menu--header .site-header .header-cart a.cart-contents:hover { border-color: #FFFFFF; background: rgba(255, 255, 255, .08); }
body.psb-menu--header .site-header .header-login a i,
body.psb-menu--header .site-header .header-cart a.cart-contents i { font-size: 20px !important; margin: 0 !important; position: static !important; line-height: 1 !important; }
/* Počet položek jako žluté kolečko v rohu */
body.psb-menu--header .site-header .header-cart a.cart-contents .count {
	position: absolute !important; top: -8px !important; right: -8px !important; left: auto !important;
	min-width: 20px; height: 20px; padding: 0 5px; border-radius: 10px;
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 11px !important; line-height: 1 !important;
}
/* Částka v košíku se v čtverci neukazuje (je v rozbalovacím košíku) */
body.psb-menu--header .site-header .header-cart .amount-cart { display: none !important; }

/* Tlačítko Poptávka (vkládá plugin) */
body.psb-menu--header .site-header .psb-hdr-cta {
	display: inline-flex; align-items: center; justify-content: center;
	height: 48px; padding: 0 24px; border-radius: 10px;
	background: var(--psb-accent); color: var(--psb-ink) !important;
	font-family: var(--psb-font); font-size: 16px; font-weight: 600; text-decoration: none !important; white-space: nowrap;
	transition: background-color .15s;
}
body.psb-menu--header .site-header .psb-hdr-cta:hover { background: #FFC61A; }
body.psb-menu--header .site-header .psb-hdr-cta:focus-visible { outline: 3px solid #FFFFFF; outline-offset: 2px; }
.psb-hdr-cta { display: none; }
body.psb-menu--header .psb-hdr-cta { display: inline-flex; }

/* Přepínač jazyků vlevo od vyhledávání, vše na jednom řádku a svisle na středu */
@media (min-width: 768px) {
	body.psb-menu--header .site-header .search-heading { display: flex; align-items: center; }
	body.psb-menu--header .site-header .site-heading-sidebar {
		display: flex !important; flex-direction: row !important; align-items: center; gap: 16px;
		width: 100%; margin: 0 !important; padding: 0 !important;
	}
	body.psb-menu--header .site-header .site-heading-sidebar > .widget { margin: 0 !important; padding: 0 !important; }
	body.psb-menu--header .site-header .site-heading-sidebar > .widget_gtranslate { order: 0; flex: 0 0 auto; }
	body.psb-menu--header .site-header .site-heading-sidebar > .widget_search { order: 1; flex: 1 1 auto; min-width: 0; }
	body.psb-menu--header .site-header .gtranslate_wrapper { display: flex; flex-direction: column; gap: 6px; }
	body.psb-menu--header .site-header .gtranslate_wrapper a {
		display: inline-flex; align-items: center; gap: 6px;
		font-size: 13px; font-weight: 600; line-height: 1; opacity: .75; text-decoration: none;
	}
	body.psb-menu--header .site-header .gtranslate_wrapper a.gt-current-lang,
	body.psb-menu--header .site-header .gtranslate_wrapper a:hover { opacity: 1; }
	body.psb-menu--header .site-header .gtranslate_wrapper img { width: 20px; height: auto; margin: 0 !important; }
}

/* Přepínač jazyků vpravo od vyhledávání */
@media (min-width: 768px) {
	body.psb-menu--header .site-header .site-heading-sidebar > .widget_gtranslate { order: 2; }
	body.psb-menu--header .site-header .site-heading-sidebar > .widget_search { order: 1; }
}

/* Jednotné linky: nad i pod menu stejná jemná světlá linka, žádné další okraje šablony */
body.psb-menu--header .site-header { border: 0 !important; box-shadow: none !important; }
body.psb-menu--header .main-menu #site-navigation,
body.psb-menu--header .main-menu .navbar,
body.psb-menu--header .main-menu .navbar-default,
body.psb-menu--header .main-menu .container,
body.psb-menu--header #mega-menu-wrap-main_menu {
	border: 0 !important; box-shadow: none !important;
}
body.psb-menu--header .main-menu {
	border-top: 1px solid rgba(255, 255, 255, .16) !important;
	border-bottom: 1px solid rgba(255, 255, 255, .16) !important;
	box-shadow: none !important;
}
/* Stejná linka i u lišty s čísly v hero na úvodní stránce */
body.psb-menu--header .psb-home .psb-trust { border-top-color: rgba(255, 255, 255, .16); }

/* =========================================================================
   PATIČKA – sjednocení s hlavičkou (všechny varianty menu)
   ====================================================================== */
body.psb-menu #content-footer-section {
	background: var(--psb-brand-dark) !important;
	padding: 64px 0 48px !important;
	font-family: var(--psb-font); color: #D4E1EF;
	border: 0 !important;
}
body.psb-menu #content-footer-section > .container {
	width: 100% !important; max-width: 1280px !important; padding: 0 24px !important; margin: 0 auto; box-sizing: border-box;
	display: grid; grid-template-columns: 1.4fr 1fr 1.1fr .8fr; gap: 40px;
}
body.psb-menu #content-footer-section > .container::before,
body.psb-menu #content-footer-section > .container::after { display: none !important; content: none !important; }
body.psb-menu #content-footer-section .widget {
	width: auto !important; float: none !important; margin: 0 !important; padding: 0 !important;
	font-size: 15px !important; line-height: 1.6; color: #D4E1EF; text-align: left;
}

/* Nadpisy sloupců */
body.psb-menu #content-footer-section .widget-title { margin: 0 0 18px !important; padding: 0 !important; text-align: left !important; border: 0 !important; }
body.psb-menu #content-footer-section .widget-title::before,
body.psb-menu #content-footer-section .widget-title::after { display: none !important; content: none !important; }
body.psb-menu #content-footer-section .widget-title h3 {
	display: block; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important;
	font-family: var(--psb-font) !important; font-size: 13px !important; font-weight: 700 !important;
	letter-spacing: .1em !important; text-transform: uppercase !important; color: var(--psb-accent) !important;
}
body.psb-menu #content-footer-section .widget-title h3::before,
body.psb-menu #content-footer-section .widget-title h3::after { display: none !important; }

/* Odkazy a texty */
body.psb-menu #content-footer-section ul.menu { margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; }
body.psb-menu #content-footer-section ul.menu li { margin: 0; padding: 0; border: 0; }
body.psb-menu #content-footer-section ul.menu li::before { display: none; }
body.psb-menu #content-footer-section a { color: #FFFFFF !important; text-decoration: none; transition: color .15s; }
body.psb-menu #content-footer-section a:hover { color: var(--psb-accent) !important; }
body.psb-menu #content-footer-section ul.menu a { color: #D4E1EF !important; }
body.psb-menu #content-footer-section ul.menu a:hover { color: #FFFFFF !important; text-decoration: underline; }
body.psb-menu #content-footer-section .textwidget p { margin: 0 0 6px; color: #D4E1EF; }
body.psb-menu #content-footer-section .textwidget .company { color: #FFFFFF; font-weight: 600; }

/* Platební loga na bílých štítcích */
body.psb-menu #content-footer-section #text-9 img {
	display: inline-block; height: 34px !important; width: auto !important; max-width: 90px;
	margin: 14px 6px 0 0 !important; padding: 6px 9px; box-sizing: border-box;
	background: #FFFFFF; border-radius: 6px; object-fit: contain; vertical-align: middle;
}

/* YouTube – menší ikona s popiskem */
body.psb-menu #content-footer-section #text-11 .textwidget p:first-child a {
	display: inline-flex !important; align-items: center; gap: 12px; font-weight: 600;
}
body.psb-menu #content-footer-section #text-11 .textwidget p:first-child a::after { content: "YouTube kanál"; }
body.psb-menu #content-footer-section #text-11 img { width: 44px !important; height: 44px !important; margin: 0 !important; float: none !important; display: block; }

/* Nový první sloupec (vkládá plugin): negativní logo, text, poptávka */
body.psb-menu .psb-fbrand { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
body.psb-menu .psb-fbrand img { width: 190px; height: auto; display: block; }
body.psb-menu .psb-fbrand p { margin: 0; max-width: 340px; font-size: 15px; line-height: 1.6; color: #D4E1EF; }
body.psb-menu #content-footer-section a.psb-fcta {
	display: inline-flex; align-items: center; justify-content: center; height: 46px; padding: 0 22px;
	border-radius: 10px; background: var(--psb-accent); color: var(--psb-ink) !important;
	font-weight: 600; font-size: 15px; text-decoration: none !important;
}
body.psb-menu #content-footer-section a.psb-fcta:hover { background: #FFC61A; color: var(--psb-ink) !important; }

/* Spodní řádek s copyrightem */
body.psb-menu .footer-credits {
	background: #071A3D !important; border-top: 1px solid rgba(255, 255, 255, .10);
	font-family: var(--psb-font);
}
body.psb-menu .footer-credits > .container { width: 100% !important; max-width: 1280px !important; padding: 0 24px !important; margin: 0 auto; }
body.psb-menu .footer-credits-text { padding: 18px 0 !important; }
body.psb-menu .footer-credits-text p { margin: 0; font-size: 13px; color: #9FB3CC; }
body.psb-menu .footer-credits-text a { color: var(--psb-accent) !important; }

@media (max-width: 991px) {
	body.psb-menu #content-footer-section > .container { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 32px; }
}
@media (max-width: 600px) {
	body.psb-menu #content-footer-section { padding: 44px 0 32px !important; }
	body.psb-menu #content-footer-section > .container { grid-template-columns: minmax(0, 1fr); padding: 0 16px !important; }
}
