/* Design layer over the client's Elementor pages. Only applies with Site polish on; see ACAT_Site_Polish. */

/* Type: sentence case instead of forced Title Case, one display face, calmer weights. */
body.acat-polish .elementor-heading-title,
body.acat-polish .elementor-icon-box-title,
body.acat-polish .elementor-icon-box-title a,
body.acat-polish .e-n-accordion-item-title-text,
body.acat-polish .elementor-form-fields-wrapper label,
body.acat-polish .elementor-button-text {
	text-transform: none !important; /* Their per-element rules are more specific than anything we can reasonably write. */
}
body.acat-polish .elementor-heading-title,
body.acat-polish .elementor-icon-box-title,
body.acat-polish .e-n-accordion-item-title-text {
	font-family: "Lexend", ui-sans-serif, system-ui, sans-serif;
	letter-spacing: -0.01em;
}
body.acat-polish .elementor-widget-text-editor,
body.acat-polish .elementor-icon-box-description,
body.acat-polish .elementor-icon-list-text {
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	line-height: 1.6;
}

/* Buttons. */
body.acat-polish .elementor-button {
	border-radius: 10px;
	font-weight: 600;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}
body.acat-polish .elementor-button:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.14);
}

/* Cards: anything Elementor draws as an icon box inside a section grid. */
body.acat-polish .elementor-widget-icon-box > .elementor-widget-container {
	transition: box-shadow 0.15s ease, transform 0.15s ease;
}
body.acat-polish .e-n-accordion-item {
	border-radius: 12px;
	overflow: hidden;
}

/* Forms, on every page: a proper upload area instead of the raw browser control. */
body.acat-polish .elementor-field-textual,
body.acat-polish .elementor-field-type-select select {
	border-radius: 8px !important;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
}
body.acat-polish input[type="file"].elementor-upload-field,
body.acat-polish .elementor-field-type-upload input[type="file"] {
	width: 100%;
	padding: 14px 12px;
	border: 2px dashed #b9c6d8 !important;
	border-radius: 10px !important;
	background: rgba(255, 255, 255, 0.72);
	color: #475569;
	font-size: 13px;
	cursor: pointer;
}
body.acat-polish .elementor-field-type-upload input[type="file"]::file-selector-button {
	margin-right: 12px;
	padding: 8px 14px;
	border: 0;
	border-radius: 8px;
	background: #0082dd;
	color: #fff;
	font-weight: 600;
	font-size: 13px;
	cursor: pointer;
}

/* Homepage hero. */
body.acat-polish .elementor-element-32bd16f .elementor-heading-title {
	font-size: clamp(2.25rem, 4.2vw, 3.5rem);
	font-weight: 700;
	line-height: 1.08;
}
body.acat-polish .elementor-element-98f456b .elementor-button {
	width: 100%;
}
body.acat-polish .acat-polish-search {
	margin-top: 20px;
}
body.acat-polish .acat-polish-search .acat-hero-search {
	margin-top: 0;
	color: #fff;
	text-align: left;
}
body.acat-polish .acat-polish-search .acat-search {
	margin: 0;
}

/* Homepage image and card sections. */
body.acat-polish .elementor-element-e525e5f img {
	border-radius: 18px;
	box-shadow: 0 18px 40px rgba(15, 23, 42, 0.18);
}
body.acat-polish .elementor-element-49b064e,
body.acat-polish .elementor-element-4169170,
body.acat-polish .elementor-element-91d5b8c,
body.acat-polish .elementor-element-5218d83,
body.acat-polish .elementor-element-ff975e4,
body.acat-polish .elementor-element-ab1db7b {
	border-radius: 14px;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);
	transition: box-shadow 0.15s ease, transform 0.15s ease;
}
body.acat-polish .elementor-element-49b064e:hover,
body.acat-polish .elementor-element-4169170:hover,
body.acat-polish .elementor-element-91d5b8c:hover,
body.acat-polish .elementor-element-5218d83:hover,
body.acat-polish .elementor-element-ff975e4:hover,
body.acat-polish .elementor-element-ab1db7b:hover {
	box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);
	transform: translateY(-2px);
}

/* Their lead form is a third-party script that rebuilds this widget and sets inline styles, hence !important. Looks only. */
body.acat-polish .elementor-element-98f456b {
	border-radius: 16px !important;
	border: 1px solid rgba(255, 255, 255, 0.5) !important;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(232, 241, 248, 0.88)) !important;
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	box-shadow: 0 24px 48px rgba(15, 23, 42, 0.28);
}
body.acat-polish .elementor-element-98f456b > .elementor-widget-container,
body.acat-polish .elementor-element-98f456b form.elementor-form {
	background: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
}
body.acat-polish .elementor-form form[identifier] {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	padding: 24px !important;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif !important;
	font-size: 15px !important;
}
body.acat-polish .elementor-form form[identifier] > * {
	grid-column: 1 / -1;
	min-width: 0;
	margin: 0 !important;
}
body.acat-polish .elementor-form form[identifier] > .form-group:has(#full_name),
body.acat-polish .elementor-form form[identifier] > .form-group:has(#phone_number) {
	grid-column: auto;
}
body.acat-polish .elementor-form form[identifier] h1 {
	margin: 0 !important;
	font-family: "Lexend", ui-sans-serif, system-ui, sans-serif !important;
	font-size: 24px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.01em;
	color: #0f172a !important;
	text-transform: lowercase;
}
body.acat-polish .elementor-form form[identifier] h1::first-letter {
	text-transform: uppercase;
}
body.acat-polish .acat-lc-sub {
	margin-top: -8px !important;
	font-size: 13px;
	color: #475569;
}
body.acat-polish .elementor-form form[identifier] label {
	display: block !important;
	margin: 0 0 5px !important;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.04em;
	color: #334155 !important;
}
body.acat-polish .elementor-form form[identifier] .form-control {
	display: block;
	box-sizing: border-box;
	width: 100% !important;
	height: auto !important;
	min-height: 44px !important;
	padding: 10px 12px !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 6px !important;
	background: #fff !important;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif !important;
	font-size: 15px !important;
	line-height: 1.4 !important;
	color: #0f172a !important;
}
body.acat-polish .elementor-form form[identifier] .form-control::placeholder {
	color: #94a3b8;
}
body.acat-polish .elementor-form form[identifier] .form-control:focus {
	border-color: #0082dd !important;
	outline: 0;
	box-shadow: 0 0 0 3px rgba(0, 130, 221, 0.18);
}
body.acat-polish .elementor-form form[identifier] textarea.form-control {
	height: 84px !important;
	min-height: 70px !important;
}
body.acat-polish .elementor-form form[identifier] input[type="file"].form-control {
	padding: 12px !important;
	border: 2px dashed #b9c6d8 !important;
	background: rgba(255, 255, 255, 0.7) !important;
	font-size: 13px !important;
	color: #475569 !important;
	cursor: pointer;
}
body.acat-polish .elementor-form form[identifier] input[type="file"].form-control::file-selector-button {
	margin-right: 12px;
	padding: 8px 14px;
	border: 0;
	border-radius: 6px;
	background: #0082dd;
	color: #fff;
	font-weight: 600;
	cursor: pointer;
}
/* With the script running, the upload becomes a drop area. The real input stays on top, so picking files is unchanged. */
body.acat-polish .acat-lc-file {
	position: relative;
}
body.acat-polish .elementor-form form[identifier] .acat-lc-file input[type="file"].form-control {
	position: absolute;
	left: 0;
	right: 0;
	top: 22px;
	bottom: 22px;
	z-index: 2;
	width: 100% !important;
	height: calc(100% - 44px) !important;
	min-height: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	opacity: 0;
	cursor: pointer;
}
body.acat-polish .acat-lc-drop {
	padding: 14px 12px;
	border: 2px dashed #b9c6d8;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.7);
	text-align: center;
	color: #0f172a;
}
body.acat-polish .acat-lc-file:hover .acat-lc-drop,
body.acat-polish .acat-lc-file:focus-within .acat-lc-drop {
	border-color: #0082dd;
}
body.acat-polish .acat-lc-drop svg {
	display: block;
	width: 22px;
	height: 22px;
	margin: 0 auto 4px;
	color: #0082dd;
}
body.acat-polish .acat-lc-drop strong {
	display: block;
	font-family: "Lexend", ui-sans-serif, system-ui, sans-serif;
	font-size: 14px;
	font-weight: 600;
}
body.acat-polish .acat-lc-file p {
	margin: 5px 0 0 !important;
	font-size: 12px !important;
	color: #64748b !important;
}
body.acat-polish .elementor-form form[identifier] .btn-primary {
	display: block;
	width: 100% !important;
	padding: 13px 18px !important;
	border: 0 !important;
	border-radius: 8px !important;
	background: #0082dd !important;
	color: #fff !important;
	font-family: "Lexend", ui-sans-serif, system-ui, sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	cursor: pointer;
}
body.acat-polish .elementor-form form[identifier] .btn-primary:hover {
	background: #006fbd !important;
}

/* The Elementor form shows until the lead form swaps in, so it gets the same layout and nothing jumps. */
body.acat-polish .elementor-element-98f456b .elementor-form-fields-wrapper {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	gap: 12px !important;
	box-sizing: border-box;
	width: 100% !important;
	margin: 0 !important;
	padding: 24px !important;
}
body.acat-polish .elementor-element-98f456b .elementor-form-fields-wrapper > .elementor-field-group {
	grid-column: 1 / -1;
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
}
body.acat-polish .elementor-element-98f456b .elementor-form-fields-wrapper > .elementor-field-group-name,
body.acat-polish .elementor-element-98f456b .elementor-form-fields-wrapper > .elementor-field-group-phone {
	grid-column: auto;
}
body.acat-polish .elementor-element-98f456b .elementor-form-title {
	margin: 0 !important;
	font-family: "Lexend", ui-sans-serif, system-ui, sans-serif !important;
	font-size: 24px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.01em;
	text-align: left !important;
	color: #0f172a !important;
	text-transform: lowercase !important;
}
body.acat-polish .elementor-element-98f456b .elementor-form-title::first-letter {
	text-transform: uppercase;
}
body.acat-polish .elementor-element-98f456b .elementor-form-title-description-wrapper::after {
	content: "Add a photo of the converter and code, and we\2019ll reply with a price.";
	display: block;
	margin-top: 12px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 13px;
	line-height: 1.45;
	color: #475569;
}
body.acat-polish .acat-lc-sub {
	line-height: 1.45 !important;
}
body.acat-polish .elementor-element-98f456b .elementor-field-label,
body.acat-polish .elementor-form form[identifier] label {
	display: block !important;
	margin: 0 0 5px !important;
	padding: 0 !important;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.04em;
	text-transform: uppercase !important;
	color: #334155 !important;
}
body.acat-polish .elementor-element-98f456b .elementor-field-textual {
	display: block;
	box-sizing: border-box;
	width: 100% !important;
	height: auto !important;
	min-height: 44px !important;
	padding: 10px 12px !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 6px !important;
	background: #fff !important;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif !important;
	font-size: 15px !important;
	line-height: 1.4 !important;
	color: #0f172a !important;
}
body.acat-polish .elementor-element-98f456b textarea.elementor-field-textual {
	height: 84px !important;
	min-height: 70px !important;
}
body.acat-polish .elementor-element-98f456b .elementor-form-fields-wrapper > .elementor-field-group.elementor-field-group-images {
	position: relative;
	display: flex !important;
	flex-direction: column;
	align-items: stretch;
}
body.acat-polish .elementor-element-98f456b .elementor-field-group-images::before {
	content: "Take or upload a photo";
	display: block;
	order: 1;
	box-sizing: border-box;
	width: 100%;
	height: 80px;
	padding-top: 40px;
	border: 2px dashed #b9c6d8;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.7) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230082dd' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z'/%3E%3Ccircle cx='12' cy='13' r='4'/%3E%3C/svg%3E") center 14px / 22px 22px no-repeat;
	text-align: center;
	font-family: "Lexend", ui-sans-serif, system-ui, sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	color: #0f172a;
}
body.acat-polish .elementor-element-98f456b .elementor-field-group-images::after {
	content: "File maximum size is 5MB";
	display: block;
	order: 2;
	margin-top: 5px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 12px;
	line-height: 1.4;
	color: #64748b;
}
body.acat-polish .elementor-element-98f456b .elementor-field-group-images .elementor-field-label {
	order: 0;
}
body.acat-polish .elementor-element-98f456b .elementor-field-group-images input[type="file"] {
	position: absolute !important;
	left: 0;
	top: 20px;
	z-index: 2;
	width: 100% !important;
	height: 80px !important;
	min-height: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	opacity: 0;
	cursor: pointer;
}
body.acat-polish .acat-lc-drop {
	box-sizing: border-box;
	height: 80px;
	line-height: 1.4;
}
body.acat-polish .acat-lc-file p {
	line-height: 1.4 !important;
}
body.acat-polish .elementor-element-98f456b .elementor-field-type-submit .elementor-button:not(.elementor-hidden) {
	display: block;
	width: 100% !important;
	padding: 13px 18px !important;
	border: 0 !important;
	border-radius: 8px !important;
	background: #0082dd !important;
	color: #fff !important;
	font-family: "Lexend", ui-sans-serif, system-ui, sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
}
body.acat-polish .elementor-element-98f456b .elementor-field-type-submit .elementor-button-text {
	font: inherit !important;
}

body.acat-polish .elementor-element-98f456b .elementor-field-group-email .elementor-field-label::after {
	content: " *";
}
@media (max-width: 767px) {
	body.acat-polish .elementor-element-5d2e990 {
		align-self: center !important;
	}
}

/* Their header: an edge so scrolling content does not run into it, and the phone number on one line. */
body.acat-polish .elementor-element-5a4e6b3 {
	min-height: 0 !important;
	padding: 8px max(24px, calc((100vw - 1320px) / 2)) !important;
	border-bottom: 1px solid #e2e8f0;
	background-color: #fff !important;
}
/* Their logo keeps the size they set at every width. */
body.acat-polish .elementor-element-03b57a4,
body.acat-polish .elementor-element-bf33ef4,
body.acat-polish .elementor-element-6823298 {
	flex: 0 0 auto !important;
	width: auto !important;
	min-height: 0 !important;
	align-self: center;
}
body.acat-polish .elementor-element-03b57a4 .elementor-button-text {
	white-space: nowrap;
}
body.acat-polish .elementor-element-da61f1f {
	flex: 1 1 auto !important;
	width: auto !important;
	min-width: 0;
}

/* Homepage, desktop: one column shared with the catalogue section, and the catalogue's type scale. */
body.acat-polish .elementor-element-32bd16f .elementor-heading-title {
	font-size: clamp(38px, 4.2vw, 56px) !important;
	font-weight: 700 !important;
	line-height: 1.06 !important;
}
body.acat-polish .elementor-element-d402c97 .elementor-heading-title,
body.acat-polish .elementor-element-165bf35 .elementor-heading-title,
body.acat-polish .elementor-element-c8b992a .elementor-heading-title {
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
}
body.acat-polish .elementor-element-2f2f36f .elementor-heading-title,
body.acat-polish .elementor-element-fbb428c .elementor-heading-title,
body.acat-polish .elementor-element-34ae0a9 .elementor-heading-title,
body.acat-polish .elementor-element-a22700d .elementor-heading-title,
body.acat-polish .elementor-element-3444456 .elementor-heading-title,
body.acat-polish .elementor-element-712ed9a .elementor-heading-title {
	font-size: clamp(28px, 3.1vw, 38px) !important;
	font-weight: 600 !important;
	line-height: 1.15 !important;
}
body.acat-polish .elementor-element-56b70f3 .elementor-heading-title {
	font-size: clamp(26px, 2.7vw, 32px) !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
}
body.acat-polish .elementor-element-3cb6870 .elementor-icon-box-title,
body.acat-polish .elementor-element-3cb6870 .elementor-icon-box-title a {
	font-size: 19px !important;
	font-weight: 600 !important;
}
body.acat-polish .elementor-element-a373f6a .elementor-icon-box-title,
body.acat-polish .elementor-element-a373f6a .elementor-icon-box-title a {
	font-size: 18px !important;
	font-weight: 600 !important;
}
body.acat-polish .elementor-element-a373f6a .elementor-icon-box-wrapper,
body.acat-polish .elementor-element-a373f6a .elementor-icon-box-content,
body.acat-polish .elementor-element-a373f6a .elementor-icon-box-title,
body.acat-polish .elementor-element-a373f6a .elementor-icon-box-description {
	text-align: left !important;
}
body.acat-polish .elementor-element-3cb6870 .elementor-icon-box-description,
body.acat-polish .elementor-element-a373f6a .elementor-icon-box-description {
	font-size: 14px !important;
	color: #475569 !important;
}
body.acat-polish .elementor-element-2a7e8b8 .elementor-icon-list-items {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	gap: 8px 16px;
}
body.acat-polish .elementor-element-2a7e8b8 .elementor-icon-list-text {
	font-size: 14px !important;
}
body.acat-polish .elementor-element-5d20814 .e-n-accordion-item-title-text,
body.acat-polish .elementor-element-497fe00 .e-n-accordion-item-title-text {
	font-size: 16px !important;
	font-weight: 600 !important;
}
body.acat-polish .elementor-element-5a4e6b3 .elementor-button,
body.acat-polish .elementor-element-9592055 .elementor-button {
	border-radius: 8px !important;
}
@media (min-width: 1025px) {
	body.acat-polish .elementor-element-83b0586,
	body.acat-polish .elementor-element-6e6cd8d,
	body.acat-polish .elementor-element-d218bb3,
	body.acat-polish .elementor-element-a842000,
	body.acat-polish .elementor-element-03b2b0b,
	body.acat-polish .elementor-element-87479e8,
	body.acat-polish .elementor-element-df29d19,
	body.acat-polish .elementor-element-28356c0 {
		padding-left: max(24px, calc((100% - 1104px) / 2)) !important;
		padding-right: max(24px, calc((100% - 1104px) / 2)) !important;
	}
	/* Children carry their own 10px gutters; line their edges up with the column. */
	body.acat-polish .elementor-element-e1d843d,
	body.acat-polish .elementor-element-33b8c8b,
	body.acat-polish .elementor-element-9576a6e {
		--padding-left: 0px;
		--padding-right: 0px;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	body.acat-polish .elementor-element-d218bb3 > .e-con-inner {
		gap: 48px;
		align-items: center;
	}
	body.acat-polish .elementor-element-e525e5f {
		align-self: center;
	}
	body.acat-polish .elementor-element-e525e5f img {
		display: block;
		width: 100%;
		height: 400px !important;
		object-fit: cover;
	}
	body.acat-polish .elementor-element-a842000 {
		flex-direction: row !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 32px;
		padding-top: 44px !important;
		padding-bottom: 44px !important;
	}
	body.acat-polish .elementor-element-857d920 {
		flex: 1 1 auto !important;
		width: auto !important;
		padding: 0 !important;
	}
	body.acat-polish .elementor-element-9592055 {
		flex: 0 0 auto !important;
		width: auto !important;
	}
	body.acat-polish .elementor-element-497fe00 {
		width: 720px !important;
		max-width: 100% !important;
		margin-left: auto;
		margin-right: auto;
	}
	body.acat-polish .elementor-element-497fe00 > * {
		width: 100% !important;
	}
}
body.acat-polish .acat-polish-block .acat-headrow .acat-muted {
	margin-top: 10px;
}

/* Tablet: their menu collapses, so keep the phone and button on the right beside it. */
@media (max-width: 1024px) {
	body.acat-polish .elementor-element-03b57a4 {
		margin-left: auto !important;
		margin-right: 12px !important;
	}
	body.acat-polish .elementor-element-da61f1f {
		flex: 0 0 auto !important;
	}
	body.acat-polish .acat-polish-block .acat-trust strong {
		font-size: 22px;
		white-space: nowrap;
	}
}
body.acat-polish .elementor-element-5d2e990 {
	align-self: flex-start !important;
	width: fit-content !important;
	max-width: 100%;
}
body.acat-polish .elementor-element-5d2e990 .elementor-button,
body.acat-polish .elementor-element-5d2e990 .elementor-button-text {
	white-space: nowrap;
}

/* Phones, on pages with our bottom bar: it already has Call and WhatsApp, so their duplicate floating buttons step aside.
   The cookie control and captcha badge must stay available, so they move above the bar instead. */
@media (max-width: 639px) {
	body.acat-polish:has(.acat-mobilebar) #wa,
	body.acat-polish:has(.acat-mobilebar) .fc-floating-contact {
		display: none !important;
	}
	body.acat-polish:has(.acat-mobilebar) .termly-display-preferences {
		bottom: 72px !important;
	}
	body.acat-polish:has(.acat-mobilebar) .grecaptcha-badge {
		bottom: 72px !important;
	}
}

/* Their collapsed menu, laid out like the demo: a full-width panel that starts under the header. */
@media (max-width: 1024px) {
	body.acat-polish .elementor-element-da61f1f,
	body.acat-polish .elementor-element-da61f1f > .elementor-widget-container {
		position: static !important;
	}
	body.acat-polish .elementor-element-da61f1f .twbb-menu-toggle {
		display: flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		width: 40px;
		height: 40px;
		padding: 0;
		border: 1px solid #e2e8f0;
		border-radius: 10px;
		background: #fff;
	}
	body.acat-polish .elementor-element-da61f1f .twbb-menu-toggle svg {
		width: 22px;
		height: 22px;
	}
	body.acat-polish .elementor-element-da61f1f .twbb-nav-menu--dropdown {
		top: 100% !important;
		left: 0 !important;
		box-sizing: border-box;
		width: 100% !important;
		max-height: calc(100vh - 80px);
		margin: 0 !important;
		padding: 8px 24px 16px;
		overflow-y: auto;
		border-top: 1px solid #e2e8f0;
		border-bottom: 1px solid #e2e8f0;
		background: #fff !important;
		box-shadow: 0 12px 24px rgba(15, 23, 42, .08);
		z-index: 100;
	}
	body.acat-polish .elementor-element-da61f1f .twbb-nav-menu--dropdown ul {
		margin: 0;
		padding: 0;
		background: transparent !important;
	}
	body.acat-polish .elementor-element-da61f1f .twbb-nav-menu--dropdown a.twbb-item {
		display: block;
		padding: 14px 0 !important;
		border-bottom: 1px solid #f1f5f9;
		background: transparent !important;
		color: #0f172a !important;
		font-family: Lexend, sans-serif;
		font-size: 16px !important;
		font-weight: 600;
		line-height: 1.5;
		text-align: left !important;
		text-transform: none !important;
	}
	body.acat-polish .elementor-element-da61f1f .twbb-nav-menu--dropdown a.twbb-item:hover,
	body.acat-polish .elementor-element-da61f1f .twbb-nav-menu--dropdown a.twbb-item:focus {
		color: #0a7ce0 !important;
	}
	body.acat-polish .acat-nav-actions {
		display: grid;
		grid-auto-flow: column;
		grid-auto-columns: 1fr;
		gap: 12px;
		padding-top: 12px;
	}
	body.acat-polish .acat-nav-actions a {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		box-sizing: border-box;
		min-height: 44px;
		padding: 10px;
		border: 2px solid transparent;
		border-radius: 6px;
		font-family: Lexend, sans-serif;
		font-size: 14px;
		font-weight: 600;
		line-height: 1.2;
		text-decoration: none;
		text-transform: none;
	}
	body.acat-polish .acat-nav-actions svg {
		flex: 0 0 auto;
		width: 18px;
		height: 18px;
	}
	body.acat-polish .acat-nav-actions .acat-nav-call,
	body.acat-polish .acat-nav-actions .acat-nav-call:hover {
		border-color: #0a7ce0;
		color: #0a7ce0;
	}
	body.acat-polish .acat-nav-actions .acat-nav-wa,
	body.acat-polish .acat-nav-actions .acat-nav-wa:hover {
		background: #2db742;
		color: #fff;
	}
}

/* Phones: their quote button stays in the header. The phone number moves into the menu, as there is no room for both. */
@media (max-width: 767px) {
	body.acat-polish .elementor-element-5a4e6b3 {
		flex-wrap: nowrap !important;
		padding: 8px 16px !important;
	}
	body.acat-polish .elementor-element-3b25377 {
		width: fit-content !important;
	}
	body.acat-polish .elementor-element-03b57a4.elementor-hidden-mobile {
		display: flex !important;
		margin-right: 8px !important;
	}
	body.acat-polish .elementor-element-bf33ef4 {
		display: none !important;
	}
	body.acat-polish .elementor-element-6823298 .elementor-button {
		display: inline-flex;
		align-items: center;
		min-height: 40px;
		padding: 8px 12px !important;
		font-size: 14px !important;
		line-height: 1.2 !important;
		white-space: nowrap;
	}
	body.acat-polish .elementor-element-da61f1f .twbb-nav-menu--dropdown {
		padding: 8px 16px 16px;
	}
}

/* Injected sections sit full width between their containers. */
body.acat-polish .acat-polish-block {
	width: 100%;
	background: #fff;
}
