/* Header menu and contact forms (replacing the Elementor Pro widgets) */
.pjb-nav { display: flex; align-items: center; align-self: center; }
.pjb-nav__list { display: flex; flex-wrap: wrap; justify-content: center; list-style: none; margin: 0; padding: 0; }
.pjb-nav__list a {
	display: block; padding: 13px 20px;
	font-family: "Sora", sans-serif; font-size: 1em; font-weight: 700; line-height: 20px;
	color: #1A1818; text-decoration: none; transition: color .3s, background-color .3s;
}
.pjb-nav__list a:hover, .pjb-nav__list a:focus-visible, .pjb-nav__list a.is-active { color: #C61515; }
.pjb-nav__toggle {
	display: none; flex-direction: column; justify-content: center; gap: 5px;
	width: 44px; height: 44px; padding: 10px; margin: 0 auto;
	background: transparent; border: 0; border-radius: 3px; cursor: pointer;
}
.pjb-nav__toggle:hover, .pjb-nav__toggle:focus { background: transparent; }
.pjb-nav__toggle span { display: block; height: 3px; background: #D51717; border-radius: 2px; transition: transform .3s, opacity .3s; }
.pjb-nav__toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.pjb-nav__toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.pjb-nav__toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

@media (max-width: 1024px) {
	.pjb-nav { flex-direction: column; width: 100%; }
	.pjb-nav__toggle { display: flex; }
	.pjb-nav__list { display: none; flex-direction: column; width: 100%; margin-top: 10px; background: #fff; box-shadow: 0 4px 10px rgba(0, 0, 0, .08); }
	.pjb-nav.is-open .pjb-nav__list { display: flex; }
	.pjb-nav__list a { text-align: center; }
	.pjb-nav__list a:hover, .pjb-nav__list a:focus-visible, .pjb-nav__list a.is-active { background-color: #007CC3; color: #fff; }
}

.pjb-form { display: grid; grid-template-columns: 1fr; gap: 10px; width: 100%; }
.pjb-form input, .pjb-form textarea {
	width: 100%; padding: 5px 14px; min-height: 40px;
	font-family: "Sora", sans-serif; font-size: 15px; line-height: 1.4; color: #1f2124;
	background: #fff; border: 1px solid #69727d; border-radius: 3px;
}
.pjb-form textarea { padding-top: 10px; resize: vertical; }
.pjb-form input:focus, .pjb-form textarea:focus { outline: 2px solid #D51717; outline-offset: 1px; }
.pjb-form button {
	width: 100%; min-height: 40px; padding: 10px 24px;
	font-family: "Inter", sans-serif; font-size: 15px; font-weight: 700; color: #fff;
	background: #D51717; border: 0; border-radius: 30px; cursor: pointer; transition: transform .3s, background-color .3s;
}
.pjb-form button:hover, .pjb-form button:focus { background: #C61515; color: #fff; transform: scale(1.04); }
.pjb-form__msg { margin: 0; font-family: "Sora", sans-serif; font-size: .875em; }
.pjb-form__msg:empty { display: none; }
.pjb-footer .pjb-form__msg { color: #F7F7F7; }
.pjb-form .is-invalid { border-color: #F43838; }

.pjb-form-wrap { max-width: 1280px; margin: 0 auto; padding: 0 0 5em; }
.pjb-form--page { grid-template-columns: 1fr 1fr; }
.pjb-form--page input, .pjb-form--page textarea { min-height: 59px; padding: 8px 20px; font-size: 20px; border-radius: 5px; }
.pjb-form--page textarea, .pjb-form--page button, .pjb-form--page .pjb-form__msg { grid-column: 1 / -1; }
.pjb-form--page button { padding: 15px 0; font-size: 20px; border-radius: 20px; }
.pjb-form--page button:hover { transform: none; }
@media (max-width: 1024px) { .pjb-form-wrap { padding: 0 1.25em 5em; } }
@media (max-width: 767px) { .pjb-form--page { grid-template-columns: 1fr; } }

/* The header template carries a -35px side margin that left it short of the right edge */
.pjb-header > .elementor > .e-con { --margin-left: 0px !important; --margin-right: 0px !important; }

.pjb-form__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.pjb-form button:disabled { opacity: .6; cursor: default; }
.pjb-form__msg a { color: inherit; text-decoration: underline; }
