@import url("https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,100..700;1,100..700&display=swap");

body * {
	box-sizing: border-box !important;
}

body,
button,
input,
textarea,
.wpforms-container,
.elementor-widget-heading .elementor-heading-title {
	font-family: "Josefin Sans", sans-serif;
	box-sizing: border-box !important;
}

/* Native <select> cannot reliably render Josefin Sans in Chrome/Edge (shows blank text). */
body select,
body .wpforms-container select,
div.wpforms-container-full select {
	font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

body .site-header-primary-section-right {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

body .ast-header-social-wrap svg {
	width: 21px;
	height: 21px;
}

body .ast-header-social-wrap svg path {
	fill: #2287d9;
}

body .ast-header-social-wrap .header-social-inner-wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding-right: 38px;
}

body #ast-mobile-header {
	display: none;
}

body .ast-builder-grid-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 24px 20px;
}

body .ast-builder-grid-row-container.ast-container {
	width: 100%;
	max-width: 1320px;
	margin: 0 auto;
}

body header#masthead {
	background: var(--od-bg-elevated, #272a33);
}

body .main-header-bar-navigation ul#ast-hf-menu-1 {
	list-style: none;
	display: flex;
	gap: 24px;
	padding: 0;
	margin: 0;
}

body .main-header-bar-navigation ul li a {
	font-weight: 400;
	font-size: 16px;
	line-height: 20.4px;
	letter-spacing: 0.34px;
	color: #fafbfc;
	margin: 0;
}

body .main-header-bar-navigation ul li.current_page_item a,
body .main-header-bar-navigation ul li a:hover {
	border-bottom: 2px solid #007aff;
}

body .site-header-primary-section-left.site-header-section .ast-site-title-wrap a {
	color: #ffffff;
	font-size: 20px;
	line-height: 24px;
	font-weight: 600;
}

body .site-header-primary-section-left {
	width: 100%;
	max-width: 420px;
}

body .site-header-primary-section-right {
	width: 100%;
	max-width: calc(100% - 420px);
}

body .site-header-primary-section-right .ast-builder-menu-1.ast-builder-menu.ast-flex.ast-builder-menu-1-focus-item.ast-builder-layout-element.site-header-focus-item {
	width: 45%;
}

body .site-header-primary-section-right .ast-builder-layout-element.ast-flex.site-header-focus-item {
	width: 18%;
}

body .site-header-primary-section-right .ast-builder-layout-element.ast-flex.site-header-focus-item.ast-header-html-2 {
	width: 38%;
	text-align: right;
}

body .site-header-primary-section-right .ast-builder-layout-element.ast-flex.site-header-focus-item.ast-header-html-2 a {
	background: linear-gradient(180deg, #0026bc 0%, #001156 100%);
	box-shadow: -0.5px -0.5px 0px 0px #00000012;
	padding: 14px 34px;
	border-radius: 4px;
	font-weight: 600;
	font-size: 18px;
	line-height: 16px;
	letter-spacing: -0.32px;
	vertical-align: middle;
	color: #ffffff;
}

body header#masthead .ast-builder-layout-element p {
	margin: 0;
	display: none;
}

body .ast-builder-grid-row-container-inner {
	border-top: 1px solid #ffffff1f;
	width: 100%;
	max-width: 1360px;
	padding: 0 20px;
	margin: 0 auto;
}

body .ast-builder-grid-row-container-inner p {
	color: #ffffff;
}

/* ------------------- */

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

.custom-header .container {
	position: relative;
	width: 100%;
	max-width: 1360px;
	margin: 0 auto;
	padding: 0 20px;
	background: var(--od-bg-elevated, #272a33);
}

.custom-header {
	position: relative;
	z-index: 10050;
	background: var(--od-bg-elevated, #272a33);
	pointer-events: auto;
}

.custom-header-wrapper {
	padding: 24px 0;
}

.custom-header-wrapper {
	padding: 24px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.logo-col {
	width: 100%;
	max-width: 320px;
	flex-shrink: 0;
}

.logo-col a {
	color: var(--od-header-link, #fafbfc);
	font-size: 20px;
	line-height: 24px;
	font-weight: 600;
	cursor: pointer;
}

/* Header brand: scooter rider logo + company name */
.onduty-header-brand {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	text-decoration: none !important;
	color: var(--od-header-link, #fafbfc) !important;
	max-width: 100%;
}

.onduty-header-brand:hover {
	color: var(--od-header-link, #fafbfc) !important;
	opacity: 0.92;
}

.onduty-header-brand__icon {
	display: block;
	width: 60px;
	height: auto;
	flex-shrink: 0;
	filter: drop-shadow(0 4px 10px rgba(0, 122, 255, 0.35));
}

.onduty-header-brand__text {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2px;
	min-width: 0;
}

.onduty-header-brand__name {
	font-family: "Josefin Sans", sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--od-header-link, #fafbfc);
}

.onduty-header-brand__tagline {
	font-family: "Josefin Sans", sans-serif;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #007aff;
}


html:not([data-onduty-lang="en"]) .onduty-header-brand .od-i18n[data-lang="de"],
html[data-onduty-lang="de"] .onduty-header-brand .od-i18n[data-lang="de"] {
	display: inline !important;
}

html:not([data-onduty-lang="en"]) .onduty-header-brand .od-i18n[data-lang="en"],
html[data-onduty-lang="de"] .onduty-header-brand .od-i18n[data-lang="en"] {
	display: none !important;
}

html[data-onduty-lang="en"] .onduty-header-brand .od-i18n[data-lang="en"] {
	display: inline !important;
}

html[data-onduty-lang="en"] .onduty-header-brand .od-i18n[data-lang="de"] {
	display: none !important;
}

.menu-col {
	flex: 1;
	width: auto;
	max-width: none;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 16px;
	min-width: 0;
}

.menu-col-wrapper nav .menu,
.menu-col-wrapper .main-menu ul {
	list-style: none;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px 24px;
	padding: 0;
	margin: 0;
}

/* Site nav — Join the Fleet CTA + Login in menu */
.main-menu .menu-item--cta > a,
.main-menu .onduty-nav-join {
	background: #007aff !important;
	color: #ffffff !important;
	border-radius: 35px !important;
	padding: 8px 18px !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	line-height: 1.2;
	box-shadow: none !important;
	white-space: nowrap;
}

.main-menu .menu-item--cta > a:hover,
.main-menu .onduty-nav-join:hover {
	background: #0066d6 !important;
	color: #ffffff !important;
	transform: translateY(-1px);
}

.main-menu .menu-item--cta .od-i18n,
.main-menu .menu-item--cta span[aria-hidden="true"] {
	color: #ffffff !important;
}

.main-menu .menu-item--login > a,
.main-menu .onduty-nav-login {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	background: transparent !important;
	color: var(--od-auth-btn-text, #0f0f0f) !important;
	border: 1.5px solid var(--od-auth-btn-border, rgba(15, 15, 15, 0.2)) !important;
	border-radius: 35px !important;
	padding: 8px 18px !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	line-height: 1.2;
	box-shadow: none !important;
	white-space: nowrap;
	text-decoration: none !important;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.main-menu .menu-item--login > a:hover,
.main-menu .onduty-nav-login:hover {
	background: rgba(0, 122, 255, 0.08) !important;
	border-color: #007aff !important;
	color: #007aff !important;
	transform: translateY(-1px);
}

.main-menu .menu-item--login .od-i18n {
	color: inherit !important;
}

html.onduty-theme-dark .main-menu .menu-item--login > a,
html.onduty-theme-dark .main-menu .onduty-nav-login {
	--od-auth-btn-border: rgba(255, 255, 255, 0.35);
	--od-auth-btn-text: #fafbfc;
}

.menu-col-wrapper nav .menu li a,
.menu-col-wrapper .main-menu ul li a,
.mobile-menu-panel .main-menu ul li a,
.main-menu ul li a {
	font-weight: 600;
	font-size: 16px;
	line-height: 20.4px;
	letter-spacing: 0.34px;
	color: var(--od-header-link, #000000);
	margin: 0;
	text-decoration: none;
	border-bottom: none;
}

.menu-col-wrapper nav .menu li.current_page_item a,
.menu-col-wrapper nav .menu li a:hover,
.menu-col-wrapper .main-menu ul li.current_page_item a,
.menu-col-wrapper .main-menu ul li a:hover,
.mobile-menu-panel .main-menu ul li a:hover,
.main-menu ul li a:hover {
	color: var(--od-brand-blue, #007aff);
	border-bottom: none;
	opacity: 1;
}

.social-media-wrapper .social-media-col ul {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.social-media-wrapper svg {
	width: 21px;
	height: 21px;
}

.social-media-wrapper svg path {
	fill: #2287d9;
}

.social-media-wrapper {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	width: auto;
	flex-shrink: 0;
	margin-left: 0;
	padding-left: 0;
}

.menu-col-wrapper {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: nowrap;
}

.header-nav-spacer {
	display: none;
}

.header-lang-slot {
	flex: 0 0 auto;
	flex-shrink: 0;
	margin: 0;
	padding: 0;
}

.social-media-wrapper .header-lang-slot {
	margin-right: 0;
}

.header-lang-switcher {
	position: relative;
	display: block;
	width: max-content;
	height: auto;
	overflow: visible;
}

.custom-header .header-lang-switcher > .header-lang-toggle {
	display: inline-flex !important;
}

.custom-header .header-lang-switcher > .header-lang-dropdown {
	float: none !important;
	flex: none !important;
}

.header-lang-toggle {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--od-header-link, #fafbfc);
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.34px;
	cursor: pointer;
	font-family: inherit;
	white-space: nowrap;
}

.header-lang-toggle img {
	width: 20px;
	height: 15px;
	object-fit: cover;
	margin: 0;
	border-radius: 1px;
}

.header-lang-label {
	text-transform: uppercase;
	font-weight: 400;
}

.header-lang-arrow {
	display: inline-block;
	width: 0;
	height: 0;
	margin-left: 4px;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid var(--od-header-link, #fafbfc);
	transition: transform 0.2s ease;
}

.header-lang-switcher.is-open .header-lang-arrow {
	transform: rotate(180deg);
}

.custom-header .header-lang-switcher .header-lang-dropdown {
	position: absolute !important;
	top: 100% !important;
	left: 0 !important;
	list-style: none !important;
	background: var(--od-bg-elevated, #272a33) !important;
	min-width: 140px;
	z-index: 10001 !important;
}

.header-lang-dropdown li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.header-lang-option {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 6px 0;
	color: var(--od-header-link, #fafbfc) !important;
	text-decoration: none;
	font-size: 16px;
	font-weight: 400;
	background: transparent !important;
	white-space: nowrap;
}

.header-lang-option:hover {
	opacity: 0.85;
	background: transparent !important;
}

.header-lang-option img {
	width: 20px;
	height: 15px;
	object-fit: cover;
	border-radius: 1px;
}

/* One switcher per viewport: desktop in bar, mobile in slide-out menu */
.mobile-menu-panel .header-lang-slot {
	display: none;
}

@media (max-width: 991px) {
	.desktop-header .header-lang-slot {
		display: none;
	}

	.mobile-menu-panel .header-lang-slot {
		display: block;
		margin-left: 0;
		padding-left: 0;
		margin-top: 8px;
		padding-top: 20px;
		border-top: 1px solid rgba(255, 255, 255, 0.08);
	}
}

/* Header auth buttons — secondary outline pill (Join the Fleet stays primary) */
.login-col > a.header-login-bttn,
.login-col .header-auth-actions .header-profile-bttn,
.login-col .header-auth-actions .header-login-bttn,
.mobile-login-col .header-auth-actions .header-profile-bttn,
.mobile-login-col .header-auth-actions .header-login-bttn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 44px;
	padding: 10px 22px;
	border-radius: 35px;
	border: 1.5px solid var(--od-auth-btn-border, rgba(15, 15, 15, 0.2));
	font-weight: 600;
	font-size: 15px;
	line-height: 1.2;
	letter-spacing: normal;
	text-decoration: none !important;
	white-space: nowrap;
	vertical-align: middle;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--od-auth-btn-text, #333333) !important;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

html.onduty-theme-dark {
	--od-auth-btn-border: rgba(255, 255, 255, 0.35);
	--od-auth-btn-text: #fafbfc;
}

html.onduty-theme-light {
	--od-auth-btn-border: rgba(15, 15, 15, 0.2);
	--od-auth-btn-text: #333333;
}

.login-col > a.header-login-bttn {
	padding: 10px 24px;
}

.header-auth-actions {
	display: inline-flex;
	align-items: stretch;
	gap: 8px;
	flex-wrap: nowrap;
}

.login-col .header-auth-actions .header-profile-bttn,
.login-col .header-auth-actions .header-login-bttn {
	min-width: 0;
	padding: 12px 18px;
	font-size: 15px;
}

.header-profile-bttn .od-i18n,
.header-login-bttn .od-i18n {
	display: inline;
	line-height: inherit;
	font-size: inherit;
	color: inherit !important;
}

.header-profile-bttn:hover,
.header-login-bttn:hover {
	background: rgba(0, 122, 255, 0.08) !important;
	border-color: #007aff !important;
	color: #007aff !important;
	opacity: 1;
	transform: translateY(-1px);
}

.header-profile-bttn.is-active {
	background: rgba(0, 122, 255, 0.12) !important;
	border-color: #007aff !important;
	color: #007aff !important;
}

/* ── Mobile header ────────────────────────────── */

.mobile-header {
	display: none;
}

.mobile-header-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 12px 16px;
	min-height: 56px;
}

.mobile-header-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-shrink: 0;
}

.mobile-login-col .header-auth-actions {
	gap: 6px;
}

.mobile-login-col .header-auth-actions .header-profile-bttn,
.mobile-login-col .header-auth-actions .header-login-bttn {
	min-height: 38px;
	padding: 8px 14px;
	font-size: 13px;
	border-radius: 35px;
}

.mobile-menu-toggle {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 38px;
	height: 38px;
	padding: 0;
	cursor: pointer;
	background: rgba(0, 122, 255, 0.08);
	border: 1px solid rgba(0, 122, 255, 0.2);
	border-radius: 8px;
	-webkit-tap-highlight-color: transparent;
}

.mobile-menu-toggle span {
	display: block;
	width: 18px;
	height: 2px;
	background: #007aff;
	border-radius: 2px;
	transition: transform 0.25s ease, opacity 0.25s ease;
}

.mobile-menu-toggle span + span {
	margin-top: 4px;
}

body.menu-open .mobile-menu-toggle {
	background: rgba(0, 122, 255, 0.15);
}

body.menu-open .mobile-menu-toggle span:nth-child(1) {
	transform: translateY(6px) rotate(45deg);
}

body.menu-open .mobile-menu-toggle span:nth-child(2) {
	opacity: 0;
}

body.menu-open .mobile-menu-toggle span:nth-child(3) {
	transform: translateY(-6px) rotate(-45deg);
}

/* ── Mobile dropdown drawer ───────────────────── */

.mobile-menu-panel {
	position: absolute;
	top: 100%;
	right: 0;
	width: min(280px, calc(100vw - 24px));
	max-height: calc(100dvh - 72px);
	background: var(--od-bg-elevated, #272a33);
	z-index: 9999;
	border-radius: 0 0 12px 12px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-8px);
	transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.mobile-menu-panel.active {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.mobile-menu-inner {
	padding: 16px 20px;
}

/* Drawer content — always styled (also when viewport changes while open) */
.mobile-menu-panel .main-menu ul,
.mobile-menu-panel .mobile-social ul {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 0;
	padding: 0;
	margin: 0;
}

.mobile-menu-panel .main-menu ul li a {
	display: block;
	font-weight: 500;
	font-size: 15px;
	line-height: 1.3;
	letter-spacing: 0.02em;
	color: var(--od-header-link, #fafbfc);
	padding: 12px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	text-decoration: none;
}

.mobile-menu-panel .main-menu ul li:last-child a {
	border-bottom: none;
}

.mobile-menu-panel .main-menu ul li.current_page_item a,
.mobile-menu-panel .main-menu ul li a:hover {
	color: var(--od-brand-blue, #007aff);
	border-bottom-color: transparent;
}

.mobile-menu-panel .main-menu .menu-item--cta {
	margin-top: 12px;
}

.mobile-menu-panel .main-menu .menu-item--cta > a,
.mobile-menu-panel .main-menu .onduty-nav-join {
	display: flex;
	justify-content: center;
	width: 100%;
	padding: 12px 20px !important;
	border-bottom: none !important;
}

.mobile-menu-panel .main-menu .menu-item--login {
	margin-top: 12px;
	margin-bottom: 20px;
	padding-bottom: 4px;
}

.mobile-menu-panel .main-menu .menu-item--login > a,
.mobile-menu-panel .main-menu .onduty-nav-login {
	display: flex;
	justify-content: center;
	width: 100%;
	padding: 12px 20px !important;
	margin-bottom: 0;
	border: 1.5px solid var(--od-auth-btn-border, rgba(255, 255, 255, 0.35)) !important;
	border-radius: 35px !important;
	box-sizing: border-box;
}

.mobile-menu-panel .header-lang-slot {
	margin-top: 8px;
	padding: 20px 0 10px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.mobile-menu-panel .header-lang-toggle {
	min-height: 44px;
	padding: 8px 0;
}

.mobile-menu-panel .mobile-social ul {
	flex-direction: row;
	align-items: center;
	gap: 10px;
}

.mobile-menu-panel .header-social-item {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0 !important;
	border-radius: 8px;
	background: rgba(0, 122, 255, 0.08);
	flex-shrink: 0;
}

.mobile-menu-panel .mobile-social svg,
.mobile-menu-panel .header-social-item svg {
	width: 20px !important;
	height: 20px !important;
	max-width: 20px;
	max-height: 20px;
}

.mobile-menu-panel .mobile-social svg path,
.mobile-menu-panel .header-social-item svg path {
	fill: #007aff;
}

.mobile-menu-panel .mobile-social {
	display: flex;
	align-items: center;
	gap: 16px;
}

.mobile-menu-panel .mobile-social-wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.mobile-menu-panel .login-col {
	display: none !important;
}

/* Never show mobile drawer on desktop layouts */
@media (min-width: 992px) {
	.mobile-menu-panel,
	.mobile-menu-panel.active {
		display: none !important;
		opacity: 0 !important;
		visibility: hidden !important;
		transform: none !important;
		pointer-events: none !important;
	}

	body.menu-open {
		overflow: auto;
	}
}

body.menu-open {
	/* no full-page lock for a compact drawer */
}

/* ── WordPress admin bar (logged-in) ───────────────── */
/* WP 7 admin bar is fixed; scroll-padding alone does not push layout down */
body.admin-bar #page {
	padding-top: var(--wp-admin--admin-bar--height, 32px);
}

body.admin-bar .custom-header {
	position: relative;
	z-index: 200;
}

/* responsive */

@media (max-width: 991px) {
	.desktop-header {
		display: none;
	}

	.mobile-header {
		display: block;
	}

	.custom-header-wrapper {
		padding: 0;
	}

	.custom-header .container {
		padding: 0;
	}

	.mobile-menu-panel .login-col {
		display: none !important;
	}

	.logo-col {
		max-width: 200px;
		flex-shrink: 1;
		min-width: 0;
	}

	.mobile-header .onduty-header-brand {
		gap: 8px;
	}

	.mobile-header .onduty-header-brand__icon {
		width: 44px;
	}

	.mobile-header .onduty-header-brand__name {
		font-size: 15px;
		line-height: 1.15;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.mobile-header .onduty-header-brand__tagline {
		display: none;
	}
}

@media (max-width: 380px) {
	.mobile-header-inner {
		padding: 10px 12px;
	}

	.mobile-login-col .header-auth-actions .header-profile-bttn,
	.mobile-login-col .header-auth-actions .header-login-bttn {
		min-height: 34px;
		padding: 7px 10px;
		font-size: 12px;
	}

	.mobile-header .onduty-header-brand__icon {
		width: 38px;
	}

	.mobile-header .onduty-header-brand__name {
		font-size: 13px;
	}

	.mobile-header-actions {
		gap: 8px;
	}

	.mobile-menu-toggle {
		width: 34px;
		height: 34px;
	}
}

/* @media (max-width: 1164px) {
	.menu-col-wrapper {
		width: 58%;
	}

} */

@media (max-width: 1164px) {

	.logo-col a {
		font-size: 16px;
	}

	.logo-col {
		max-width: 300px;
	}

	.menu-col {
		width: 100%;
		max-width: none;
		gap: 12px;
	}

	.menu-col-wrapper {
		flex: 1 1 auto;
		min-width: 0;
		width: auto;
		max-width: none;
	}

	.menu-col-wrapper nav .menu,
	.menu-col-wrapper .main-menu ul,
	.custom-header .onduty-site-nav ul {
		flex-wrap: nowrap;
		gap: 12px 16px;
	}

	.social-media-wrapper {
		gap: 10px;
		flex-shrink: 0;
	}

	.login-col > a.header-login-bttn {
		min-height: 40px;
		padding: 10px 20px;
		font-size: 15px;
	}

	.login-col .header-auth-actions .header-profile-bttn,
	.login-col .header-auth-actions .header-login-bttn {
		min-height: 40px;
		padding: 10px 14px;
		font-size: 14px;
	}

	.social-media-wrapper svg {
		width: 18px;
		height: 18px;
	}

	.social-media-wrapper .social-media-col ul {
		gap: 16px;
	}

	.menu-col-wrapper nav .menu li a,
	.menu-col-wrapper .main-menu ul li a {
		font-weight: 600;
		font-size: 14px;
	}

	/* Tight header: hide social icons, keep lang + theme */
	.custom-header .social-media-col {
		display: none;
	}

	body .gt_float_switcher .gt-selected .gt-current-lang span.gt-lang-code {
		font-size: 14px;
		line-height: 14px;
		font-weight: 500;
	}

	body .gt_float_switcher .gt-selected .gt-current-lang span.gt_float_switcher-arrow {
		margin-top: 5px;
	}
}

@media (min-width: 993px) and (max-width: 1280px) {
	.menu-col-wrapper nav .menu,
	.menu-col-wrapper .main-menu ul,
	.custom-header .onduty-site-nav ul {
		gap: 10px 14px;
	}

	.main-menu .menu-item--cta > a,
	.main-menu .onduty-nav-join,
	.main-menu .menu-item--login > a,
	.main-menu .onduty-nav-login {
		padding: 7px 14px !important;
		font-size: 13px !important;
	}
}

/* login from csss */

html.onduty-theme-dark body.page-id-115,
html.onduty-theme-dark body.page-id-1060 {
	background-color: var(--od-bg, #1d1f27) !important;
}

html.onduty-theme-light body.page-id-115,
html.onduty-theme-light body.page-id-1060 {
	background-color: var(--od-bg, #eef1f6) !important;
}

#wpforms-112 {
	width: 100%;
	padding: 50px 0 100px;
	background-image: url();
	background-image: url("/wp-content/themes/astra-child/modules/global-module/images/login-from-bg.png");
	background-repeat: no-repeat;
	background-position: bottom left;
	background-size: 280px;
}

form#wpforms-form-112,
body.page-id-115 form#on-duty-login-form {
	position: relative;
	width: 100%;
	max-width: 442px;
	margin: 0 auto;
}

body.page-id-115 .onduty-login-page .login-from-wrapper {
	width: 100%;
	max-width: 442px;
	margin: 0 auto;
}

html.onduty-theme-dark body.page-id-115 form#on-duty-login-form .from-field-wrapper label {
	margin-bottom: 8px;
	font-size: 16px !important;
	font-weight: 400;
	color: #ffffff !important;
	text-align: left;
	display: block;
}

html.onduty-theme-light body.page-id-115 form#on-duty-login-form .from-field-wrapper label {
	margin-bottom: 8px;
	font-size: 16px !important;
	font-weight: 400;
	color: #1a1d24 !important;
	text-align: left;
	display: block;
}

html.onduty-theme-dark body.page-id-115 form#on-duty-login-form input[type="email"],
html.onduty-theme-dark body.page-id-115 form#on-duty-login-form input[type="password"] {
	border: 1px solid #1a88ff4d !important;
	background-color: #141414 !important;
	padding: 15px 20px;
	font-weight: 400;
	font-size: 14px;
	line-height: 20px;
	color: #ffffff !important;
	height: 48px;
	border-radius: 4px;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

html.onduty-theme-light body.page-id-115 form#on-duty-login-form input[type="email"],
html.onduty-theme-light body.page-id-115 form#on-duty-login-form input[type="password"] {
	border: 1px solid rgba(0, 122, 255, 0.35) !important;
	background-color: #ffffff !important;
	padding: 15px 20px;
	font-weight: 400;
	font-size: 14px;
	line-height: 20px;
	color: #1a1d24 !important;
	height: 48px;
	border-radius: 4px;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

body.page-id-115 form#on-duty-login-form .login-btn {
	text-align: center;
	display: block;
	background: linear-gradient(180deg, #0026bc 0%, #001156 100%);
	padding: 14px 34px;
	border-radius: 4px;
	font-weight: 600;
	font-size: 18px;
	color: #ffffff;
	border: none;
	cursor: pointer;
	width: auto;
}

body.page-id-115 form#on-duty-login-form a.forgot-password-btn {
	font-size: 15px !important;
	color: #007aff !important;
}

html.onduty-theme-dark body.page-id-115 .onduty-login-page p.account-wrapper {
	text-align: center;
	color: #c9c9c9;
	margin-top: 24px;
}

html.onduty-theme-light body.page-id-115 .onduty-login-page p.account-wrapper {
	text-align: center;
	color: #5c6370;
	margin-top: 24px;
}

body.page-id-115 .onduty-login-page p.account-wrapper a {
	color: #007aff;
	text-decoration: underline;
}

body.page-id-115 .onduty-login-page .wizard-message.login-message {
	text-align: center;
	margin-bottom: 16px;
}

body.page-id-115 .onduty-login-page .wizard-message.login-message.error {
	color: #ff4d4d;
}

body.page-id-115 .onduty-login-page .wizard-message.login-message.success {
	color: #1ea50f;
}

body form#wpforms-form-112 .wpforms-field-label,
div.wpforms-container-full form#wpforms-form-112 .wpforms-field.wpforms-field-checkbox ul li input+label {
	margin-bottom: 8px;
	font-size: 16px !important;
	font-weight: 400;
	color: #ffffff !important;
	text-align: left;
}

body form#wpforms-form-112 input[type="text"],
body form#wpforms-form-112 input[type="password"] {
	border: 1px solid #1a88ff4d !important;
	background-color: #141414 !important;
	padding: 15px 20px;
	font-weight: 400;
	font-size: 14px;
	line-height: 20px;
	letter-spacing: 0px;
	color: #ffffff !important;
	height: 48px;
	border-radius: 4px;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	width: 100%;
	max-width: 100%;
}

body div.wpforms-container-full form#wpforms-form-112 input[type="checkbox"]:before {
	border: 1px solid #1a88ff4d !important;
	background-color: #141414 !important;
}

body div.wpforms-container-full form#wpforms-form-112 input[type="checkbox"]:checked:before,
body div.wpforms-container-full form#wpforms-form-112 input[type="checkbox"]:focus:before {
	border: 1px solid #1a88ff4d !important;
	box-shadow: unset;
}

body form#wpforms-form-112 .login-register-hint p {
	font-size: 15px !important;
	font-weight: 400;
	color: #ffffff !important;
	text-align: left;
}

body form#wpforms-form-112 .login-register-hint {
	display: flex;
	gap: 5px;
	align-items: center;
	justify-content: center;
}

body form#wpforms-form-112 div#wpforms-112-field_5-container {
	position: absolute;
	right: 0;
	left: 0;
	margin: 0 auto;
	bottom: -50px;
	padding: 0;
}

body form#wpforms-form-112 button#wpforms-submit-112 {
	text-align: center;
	margin: 60px auto 0;
	display: block;
	background: linear-gradient(180deg, #0026bc 0%, #001156 100%);
	box-shadow: -0.5px -0.5px 0px 0px #00000012;
	padding: 14px 34px;
	border-radius: 4px;
	font-weight: 600;
	font-size: 18px;
	line-height: 16px;
	letter-spacing: -0.32px;
	vertical-align: middle;
	color: #ffffff;
}

body form#wpforms-form-112 .login-register-hint .register-link {
	font-size: 15px !important;
	font-weight: 400;
	color: #007aff !important;
}

body.page-id-115 #login-from-title h2 {
	font-family: "Josefin Sans", sans-serif;
	font-weight: 500;
	font-size: 46px;
	line-height: 100%;
	letter-spacing: -0.32px;
	text-align: center;
	vertical-align: middle;
	color: #1a88ff;
	margin-top: 30px;
}

html.onduty-theme-dark body.page-id-115 .login-from-subtitle {
	font-weight: 400;
	font-size: 18px;
	line-height: 26px;
	letter-spacing: 0px;
	text-align: center;
	vertical-align: middle;
	color: #c9c9c9;
	max-width: 995px;
	margin: 18px auto 0;
}

html.onduty-theme-light body.page-id-115 .login-from-subtitle {
	font-weight: 400;
	font-size: 18px;
	line-height: 26px;
	text-align: center;
	color: #5c6370;
	max-width: 995px;
	margin: 18px auto 0;
}

div.wpforms-container-full form#wpforms-form-112 .wpforms-field-password.wpforms-field-password-visibility-enabled:has(.wpforms-field-medium) {
	max-width: 100%;
}

div.wpforms-container-full form#wpforms-form-112 .wpforms-field-password.wpforms-field-password-visibility-enabled .wpforms-field-password-input-icon path {
	fill: #646464;
}

div.wpforms-container-full form#wpforms-form-112 .wpforms-field-password.wpforms-field-password-visibility-enabled .wpforms-field-password-input-icon svg {
	margin-top: 3px;
}

@media (max-width: 1024px) {
	body.page-id-115 #login-from-title h2 {
		padding: 0 20px;
	}

	body.page-id-115 .login-from-subtitle {
		padding: 0 20px;
	}
}

@media (max-width: 767px) {
	body.page-id-115 #login-from-title h2 {
		font-size: 32px;
	}

	body.page-id-115 .login-from-subtitle {
		font-size: 14px;
		line-height: 20px;
	}

	form#wpforms-form-112 {
		padding: 0 20px;
	}

	#wpforms-112 {
		padding: 50px 0 180px;
		background-size: 150px;
	}

	body form#wpforms-form-112 .wpforms-field-label,
	div.wpforms-container-full form#wpforms-form-112 .wpforms-field.wpforms-field-checkbox ul li input+label {
		font-size: 14px !important;
	}
}

/* login form css end */

body div#wpforms-112-field_11 {
	position: absolute;
	right: 0;
	bottom: 55px;
}

div#wpforms-112-field_11 a#forget-password {
	font-size: 15px !important;
	font-weight: 400;
	color: #007aff !important;
}










/* ── Application footer (wizard, profile, login, register) ───── */

body.onduty-app-page #page {
	display: block;
	min-height: 0;
	height: auto;
}

body.onduty-app-page #content,
body.onduty-app-page main#content,
body.onduty-app-page .site-content,
body.onduty-app-page .site-content .ast-container {
	flex: none;
	min-height: 0;
	height: auto;
	padding-bottom: 0;
	margin-bottom: 0;
}

body.onduty-app-page footer#colophon {
	display: none !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	visibility: hidden !important;
}

body.onduty-app-page #ast-scroll-top {
	display: none !important;
}

body.onduty-app-page .onduty-app-footer {
	display: none !important;
}

.onduty-app-footer {
	display: block;
	width: 100%;
	margin-top: 0;
	padding: 24px 20px 28px;
	text-align: center;
	background-color: #14161e;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	position: relative;
	z-index: 20;
}

.onduty-app-footer__text {
	margin: 0;
	font-family: "Josefin Sans", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	color: #a8acb8;
}

html.onduty-theme-light .onduty-app-footer {
	background-color: #eef1f6;
	border-top-color: rgba(0, 0, 0, 0.08);
}

html.onduty-theme-light .onduty-app-footer__text {
	color: #5c6370;
}

body.page-template-on-duty-php .onduty-app-footer,
body.page-template-on-duty-content-php .onduty-app-footer,
body.page-template-profile-php .onduty-app-footer {
	margin-top: 0;
}

@media (max-width: 768px) {
	.onduty-app-footer {
		padding: 10px 16px 12px;
	}

	.onduty-app-footer__text {
		font-size: 12px;
		line-height: 1.4;
	}
}

/* Unified primary CTA — navbar Join the Fleet */
a.next-btn.onduty-header-cta,
a.onduty-btn.onduty-btn--primary {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 4px;
	background: #007aff !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 35px !important;
	padding: 10px 24px !important;
	font-weight: 600 !important;
	font-size: 15px !important;
	line-height: 1.2;
	text-decoration: none !important;
	box-shadow: none !important;
	transition: transform 0.2s ease, background 0.2s ease;
	white-space: nowrap;
}

a.next-btn.onduty-header-cta:hover,
a.onduty-btn.onduty-btn--primary:hover {
	background: #0066d6 !important;
	color: #ffffff !important;
	transform: translateY(-1px);
}

a.next-btn.onduty-header-cta span,
a.onduty-btn.onduty-btn--primary span {
	color: #ffffff !important;
}

@media (max-width: 900px) {
	.mobile-header .header-courier-cta-col a.onduty-header-cta {
		padding: 8px 14px !important;
		font-size: 13px !important;
	}

	.mobile-header .header-courier-cta-col a.onduty-header-cta span[aria-hidden="true"] {
		display: none;
	}
}

/* Hide legacy GTranslate float widget in custom header (we use header-lang-switcher). */
.custom-header .gt_float_switcher,
.custom-header #gt_float_wrapper,
.custom-header .gtranslate_wrapper {
	display: none !important;
}

/* Prevent GTranslate from showing extra language links inline in the header. */
.custom-header .header-lang-switcher a.glink:not(.header-lang-option) {
	display: none !important;
}

