/*
Theme Name:   Hello Elementor Child - Clearway Trusted Cleaning
Theme URI:    https://www.bluerockdigital.co.uk/
Description:  Child theme of Hello Elementor for Clearway Trusted Cleaning. Site-wide styling lives in Elementor's global kit; this file is only for the rare rule Elementor cannot express.
Author:       Blue Rock Digital
Author URI:   https://www.bluerockdigital.co.uk/
Template:     hello-elementor
Version:      1.3.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain:  hello-elementor-child
License:      GNU General Public License v3 or later
License URI:  https://www.gnu.org/licenses/gpl-3.0.html
*/

/* Default text font. Hello's reset.css uses a system stack that names
   "Roboto", which made Android download Elementor's Roboto web font for the
   few elements outside Elementor (contact bar, cookie notices). */
body {
	font-family: "Open Sans", Arial, sans-serif;
}

/* Two-tone headings: wrap the highlighted words in <span> (on light
   backgrounds) or <em> (on navy backgrounds) in the Elementor heading text. */
h1 span, h2 span, h3 span {
	color: #5FA132;
}

h1 em, h2 em, h3 em {
	font-style: normal;
	color: #8CC63F;
}

/* Mobile/tablet menu: Elementor's "full width" dropdown measures against the
   nav widget inside V4 containers, so it opens part-way across and pushes the
   header down. Pin the open panel full-width directly under the header. */
.elementor-location-header {
	position: relative;
	z-index: 50;
}

/* Sticky header (Jason, 24 Sep). The trust strip scrolls away and the navy
   bar pins to the top: --cw-topbar (set by clearway_sticky_header_js) pulls
   the sticky offset up by the strip's height. The WP admin bar is fixed
   above 600px, so logged-in users get its height added. */
.elementor-location-header {
	position: sticky;
	top: calc(var(--cw-adminbar, 0px) - var(--cw-topbar, 0px));
}
.admin-bar { --cw-adminbar: 32px; }
@media (max-width: 782px) { .admin-bar { --cw-adminbar: 46px; } }
@media (max-width: 600px) { .admin-bar { --cw-adminbar: 0px; } }
html { scroll-padding-top: 110px; }
/* Once scrolled, the logo shrinks so the pinned bar takes less room. */
.elementor-location-header img { transition: height 0.2s ease; }
@media (min-width: 768px) {
	.elementor-location-header.cw-stuck img { height: 68px !important; }
}
/* Header phone number on desktop: the full menu needs ~650px, so tighten the
   menu item padding (NAV_STYLE sets 8px) and, where even that won't fit,
   show just a round tap-to-call icon. */
@media (min-width: 1201px) {
	.elementor-location-header .elementor-nav-menu--main .elementor-item {
		padding-left: 6px !important;
		padding-right: 6px !important;
	}
}
@media (min-width: 1201px) and (max-width: 1299px) {
	.elementor-location-header a[href^="tel:"] > :last-child { display: none !important; }
	.elementor-location-header a[href^="tel:"] > :first-child {
		width: 40px; height: 40px; min-width: 40px;
		border-radius: 999px; background-color: var(--Green);
	}
	.elementor-location-header a[href^="tel:"] > :first-child svg { color: var(--Navy-Deep); }
}

/* Tap-to-call strip under the header below 1300px (Jason, 14 Oct: "make it
   nice and bright"). Output by clearway_call_strip(); pins under the navy bar
   using --cw-header-h from clearway_sticky_header_js. */
.cw-call-strip { display: none; }
@media (max-width: 1299px) {
	.cw-call-strip {
		position: sticky;
		top: calc(var(--cw-adminbar, 0px) + var(--cw-header-h, 65px));
		z-index: 49;
		display: flex; align-items: center; justify-content: center; gap: 10px;
		padding: 9px 16px;
		background-color: #8CC63F; color: #0F2E4A;
		font-family: "Open Sans", sans-serif; line-height: 1.2; text-decoration: none;
		box-shadow: 0 4px 14px rgba(15, 46, 74, 0.2);
	}
	.cw-call-strip:hover, .cw-call-strip:focus-visible { background-color: #9AD24F; color: #0F2E4A; }
	.cw-call-strip:focus-visible { outline: 3px solid #0F2E4A; outline-offset: -3px; }
	.cw-call-strip__icon { flex: 0 0 auto; width: 18px; height: 18px; fill: currentColor; }
	.cw-call-strip__label { font-size: 13px; font-weight: 700; letter-spacing: 0.6px; text-transform: uppercase; }
	.cw-call-strip__num { font-size: 19px; font-weight: 800; letter-spacing: 0.2px; white-space: nowrap; }
}
@media (max-width: 389px) {
	.cw-call-strip { gap: 8px; padding: 9px 10px; }
	.cw-call-strip__label { font-size: 12px; letter-spacing: 0.2px; }
	.cw-call-strip__num { font-size: 17px; }
}

/* Blog articles: the Post Content widget outputs the classic editor's plain
   HTML, which the Elementor kit's V4 styles don't reach. */
.elementor-widget-theme-post-content {
	font-family: "Open Sans", sans-serif;
	font-size: 18px;
	line-height: 1.75;
	color: #33404F;
}

.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3 {
	font-family: "Open Sans", sans-serif;
	font-weight: 700;
	line-height: 1.25;
	color: #0F2E4A;
	margin: 40px 0 14px;
}

.elementor-widget-theme-post-content h2 {
	font-size: 30px;
}

.elementor-widget-theme-post-content h3 {
	font-size: 23px;
}

.elementor-widget-theme-post-content p,
.elementor-widget-theme-post-content li {
	margin: 0 0 16px;
}

.elementor-widget-theme-post-content ul,
.elementor-widget-theme-post-content ol {
	margin: 0 0 24px;
	padding-left: 1.3em;
}

.elementor-widget-theme-post-content li::marker {
	color: #5FA132;
	font-weight: 700;
}

.elementor-widget-theme-post-content a {
	color: #3E7A1F;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media (max-width: 767px) {
	.elementor-widget-theme-post-content {
		font-size: 17px;
	}

	.elementor-widget-theme-post-content h2 {
		font-size: 25px;
	}
}

/* Service icons in the menu (Zerorez-style). Each service menu item carries
   the classes "cw-ico cw-ico-<name>" (Appearance > Menus > CSS Classes), and
   the icon is drawn from a mask so it takes the link colour. */
.menu-item.cw-ico > a::before {
	content: "";
	display: inline-block;
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	margin-right: 12px;
	background-color: #5FA132;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
}

.menu-item.cw-ico-location-dot > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-building > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M48 0C21.5 0 0 21.5 0 48L0 464c0 26.5 21.5 48 48 48l96 0 0-80c0-26.5 21.5-48 48-48s48 21.5 48 48l0 80 96 0c26.5 0 48-21.5 48-48l0-416c0-26.5-21.5-48-48-48L48 0zM64 240c0-8.8 7.2-16 16-16l32 0c8.8 0 16 7.2 16 16l0 32c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-32zm112-16l32 0c8.8 0 16 7.2 16 16l0 32c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-32c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16l32 0c8.8 0 16 7.2 16 16l0 32c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-32zM80 96l32 0c8.8 0 16 7.2 16 16l0 32c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-32c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16l32 0c8.8 0 16 7.2 16 16l0 32c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-32zM272 96l32 0c8.8 0 16 7.2 16 16l0 32c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-32c0-8.8 7.2-16 16-16z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M48 0C21.5 0 0 21.5 0 48L0 464c0 26.5 21.5 48 48 48l96 0 0-80c0-26.5 21.5-48 48-48s48 21.5 48 48l0 80 96 0c26.5 0 48-21.5 48-48l0-416c0-26.5-21.5-48-48-48L48 0zM64 240c0-8.8 7.2-16 16-16l32 0c8.8 0 16 7.2 16 16l0 32c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-32zm112-16l32 0c8.8 0 16 7.2 16 16l0 32c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-32c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16l32 0c8.8 0 16 7.2 16 16l0 32c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-32zM80 96l32 0c8.8 0 16 7.2 16 16l0 32c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-32c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16l32 0c8.8 0 16 7.2 16 16l0 32c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-32zM272 96l32 0c8.8 0 16 7.2 16 16l0 32c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-32c0-8.8 7.2-16 16-16z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-broom > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M566.6 54.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192-34.7-34.7c-4.2-4.2-10-6.6-16-6.6c-12.5 0-22.6 10.1-22.6 22.6l0 29.1L364.3 320l29.1 0c12.5 0 22.6-10.1 22.6-22.6c0-6-2.4-11.8-6.6-16l-34.7-34.7 192-192zM341.1 353.4L222.6 234.9c-42.7-3.7-85.2 11.7-115.8 42.3l-8 8C76.5 307.5 64 337.7 64 369.2c0 6.8 7.1 11.2 13.2 8.2l51.1-25.5c5-2.5 9.5 4.1 5.4 7.9L7.3 473.4C2.7 477.6 0 483.6 0 489.9C0 502.1 9.9 512 22.1 512l173.3 0c38.8 0 75.9-15.4 103.4-42.8c30.6-30.6 45.9-73.1 42.3-115.8z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M566.6 54.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192-34.7-34.7c-4.2-4.2-10-6.6-16-6.6c-12.5 0-22.6 10.1-22.6 22.6l0 29.1L364.3 320l29.1 0c12.5 0 22.6-10.1 22.6-22.6c0-6-2.4-11.8-6.6-16l-34.7-34.7 192-192zM341.1 353.4L222.6 234.9c-42.7-3.7-85.2 11.7-115.8 42.3l-8 8C76.5 307.5 64 337.7 64 369.2c0 6.8 7.1 11.2 13.2 8.2l51.1-25.5c5-2.5 9.5 4.1 5.4 7.9L7.3 473.4C2.7 477.6 0 483.6 0 489.9C0 502.1 9.9 512 22.1 512l173.3 0c38.8 0 75.9-15.4 103.4-42.8c30.6-30.6 45.9-73.1 42.3-115.8z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-stairs > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M384 64c0-17.7 14.3-32 32-32l128 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-96 0 0 96c0 17.7-14.3 32-32 32l-96 0 0 96c0 17.7-14.3 32-32 32l-96 0 0 96c0 17.7-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32l96 0 0-96c0-17.7 14.3-32 32-32l96 0 0-96c0-17.7 14.3-32 32-32l96 0 0-96z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M384 64c0-17.7 14.3-32 32-32l128 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-96 0 0 96c0 17.7-14.3 32-32 32l-96 0 0 96c0 17.7-14.3 32-32 32l-96 0 0 96c0 17.7-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32l96 0 0-96c0-17.7 14.3-32 32-32l96 0 0-96c0-17.7 14.3-32 32-32l96 0 0-96z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-couch > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M64 160C64 89.3 121.3 32 192 32l256 0c70.7 0 128 57.3 128 128l0 33.6c-36.5 7.4-64 39.7-64 78.4l0 48-384 0 0-48c0-38.7-27.5-71-64-78.4L64 160zM544 272c0-20.9 13.4-38.7 32-45.3c5-1.8 10.4-2.7 16-2.7c26.5 0 48 21.5 48 48l0 176c0 17.7-14.3 32-32 32l-32 0c-17.7 0-32-14.3-32-32L96 448c0 17.7-14.3 32-32 32l-32 0c-17.7 0-32-14.3-32-32L0 272c0-26.5 21.5-48 48-48c5.6 0 11 1 16 2.7c18.6 6.6 32 24.4 32 45.3l0 48 0 32 32 0 384 0 32 0 0-32 0-48z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M64 160C64 89.3 121.3 32 192 32l256 0c70.7 0 128 57.3 128 128l0 33.6c-36.5 7.4-64 39.7-64 78.4l0 48-384 0 0-48c0-38.7-27.5-71-64-78.4L64 160zM544 272c0-20.9 13.4-38.7 32-45.3c5-1.8 10.4-2.7 16-2.7c26.5 0 48 21.5 48 48l0 176c0 17.7-14.3 32-32 32l-32 0c-17.7 0-32-14.3-32-32L96 448c0 17.7-14.3 32-32 32l-32 0c-17.7 0-32-14.3-32-32L0 272c0-26.5 21.5-48 48-48c5.6 0 11 1 16 2.7c18.6 6.6 32 24.4 32 45.3l0 48 0 32 32 0 384 0 32 0 0-32 0-48z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-rug > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M24 64l32 0 24 0 0 24 0 88 0 80 0 80 0 88 0 24-24 0-32 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l8 0 0-40-8 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l8 0 0-32-8 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l8 0 0-32-8 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l8 0 0-40-8 0C10.7 112 0 101.3 0 88S10.7 64 24 64zm88 0l416 0 0 384-416 0 0-384zM640 88c0 13.3-10.7 24-24 24l-8 0 0 40 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-8 0 0 32 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-8 0 0 32 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-8 0 0 40 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-32 0-24 0 0-24 0-88 0-80 0-80 0-88 0-24 24 0 32 0c13.3 0 24 10.7 24 24z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M24 64l32 0 24 0 0 24 0 88 0 80 0 80 0 88 0 24-24 0-32 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l8 0 0-40-8 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l8 0 0-32-8 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l8 0 0-32-8 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l8 0 0-40-8 0C10.7 112 0 101.3 0 88S10.7 64 24 64zm88 0l416 0 0 384-416 0 0-384zM640 88c0 13.3-10.7 24-24 24l-8 0 0 40 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-8 0 0 32 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-8 0 0 32 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-8 0 0 40 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-32 0-24 0 0-24 0-88 0-80 0-80 0-88 0-24 24 0 32 0c13.3 0 24 10.7 24 24z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-bed > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M32 32c17.7 0 32 14.3 32 32l0 256 224 0 0-160c0-17.7 14.3-32 32-32l224 0c53 0 96 43 96 96l0 224c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-32-224 0-32 0L64 416l0 32c0 17.7-14.3 32-32 32s-32-14.3-32-32L0 64C0 46.3 14.3 32 32 32zm144 96a80 80 0 1 1 0 160 80 80 0 1 1 0-160z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M32 32c17.7 0 32 14.3 32 32l0 256 224 0 0-160c0-17.7 14.3-32 32-32l224 0c53 0 96 43 96 96l0 224c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-32-224 0-32 0L64 416l0 32c0 17.7-14.3 32-32 32s-32-14.3-32-32L0 64C0 46.3 14.3 32 32 32zm144 96a80 80 0 1 1 0 160 80 80 0 1 1 0-160z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-paw > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M226.5 92.9c14.3 42.9-.3 86.2-32.6 96.8s-70.1-15.6-84.4-58.5s.3-86.2 32.6-96.8s70.1 15.6 84.4 58.5zM100.4 198.6c18.9 32.4 14.3 70.1-10.2 84.1s-59.7-.9-78.5-33.3S-2.7 179.3 21.8 165.3s59.7 .9 78.5 33.3zM69.2 401.2C121.6 259.9 214.7 224 256 224s134.4 35.9 186.8 177.2c3.6 9.7 5.2 20.1 5.2 30.5l0 1.6c0 25.8-20.9 46.7-46.7 46.7c-11.5 0-22.9-1.4-34-4.2l-88-22c-15.3-3.8-31.3-3.8-46.6 0l-88 22c-11.1 2.8-22.5 4.2-34 4.2C84.9 480 64 459.1 64 433.3l0-1.6c0-10.4 1.6-20.8 5.2-30.5zM421.8 282.7c-24.5-14-29.1-51.7-10.2-84.1s54-47.3 78.5-33.3s29.1 51.7 10.2 84.1s-54 47.3-78.5 33.3zM310.1 189.7c-32.3-10.6-46.9-53.9-32.6-96.8s52.1-69.1 84.4-58.5s46.9 53.9 32.6 96.8s-52.1 69.1-84.4 58.5z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M226.5 92.9c14.3 42.9-.3 86.2-32.6 96.8s-70.1-15.6-84.4-58.5s.3-86.2 32.6-96.8s70.1 15.6 84.4 58.5zM100.4 198.6c18.9 32.4 14.3 70.1-10.2 84.1s-59.7-.9-78.5-33.3S-2.7 179.3 21.8 165.3s59.7 .9 78.5 33.3zM69.2 401.2C121.6 259.9 214.7 224 256 224s134.4 35.9 186.8 177.2c3.6 9.7 5.2 20.1 5.2 30.5l0 1.6c0 25.8-20.9 46.7-46.7 46.7c-11.5 0-22.9-1.4-34-4.2l-88-22c-15.3-3.8-31.3-3.8-46.6 0l-88 22c-11.1 2.8-22.5 4.2-34 4.2C84.9 480 64 459.1 64 433.3l0-1.6c0-10.4 1.6-20.8 5.2-30.5zM421.8 282.7c-24.5-14-29.1-51.7-10.2-84.1s54-47.3 78.5-33.3s29.1 51.7 10.2 84.1s-54 47.3-78.5 33.3zM310.1 189.7c-32.3-10.6-46.9-53.9-32.6-96.8s52.1-69.1 84.4-58.5s46.9 53.9 32.6 96.8s-52.1 69.1-84.4 58.5z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-shield-halved > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 0c4.6 0 9.2 1 13.4 2.9L457.7 82.8c22 9.3 38.4 31 38.3 57.2c-.5 99.2-41.3 280.7-213.6 363.2c-16.7 8-36.1 8-52.8 0C57.3 420.7 16.5 239.2 16 140c-.1-26.2 16.3-47.9 38.3-57.2L242.7 2.9C246.8 1 251.4 0 256 0zm0 66.8l0 378.1C394 378 431.1 230.1 432 141.4L256 66.8s0 0 0 0z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 0c4.6 0 9.2 1 13.4 2.9L457.7 82.8c22 9.3 38.4 31 38.3 57.2c-.5 99.2-41.3 280.7-213.6 363.2c-16.7 8-36.1 8-52.8 0C57.3 420.7 16.5 239.2 16 140c-.1-26.2 16.3-47.9 38.3-57.2L242.7 2.9C246.8 1 251.4 0 256 0zm0 66.8l0 378.1C394 378 431.1 230.1 432 141.4L256 66.8s0 0 0 0z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-wind > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M288 32c0 17.7 14.3 32 32 32l32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 128c-17.7 0-32 14.3-32 32s14.3 32 32 32l320 0c53 0 96-43 96-96s-43-96-96-96L320 0c-17.7 0-32 14.3-32 32zm64 352c0 17.7 14.3 32 32 32l32 0c53 0 96-43 96-96s-43-96-96-96L32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-32 0c-17.7 0-32 14.3-32 32zM128 512l32 0c53 0 96-43 96-96s-43-96-96-96L32 320c-17.7 0-32 14.3-32 32s14.3 32 32 32l128 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-32 0c-17.7 0-32 14.3-32 32s14.3 32 32 32z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M288 32c0 17.7 14.3 32 32 32l32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 128c-17.7 0-32 14.3-32 32s14.3 32 32 32l320 0c53 0 96-43 96-96s-43-96-96-96L320 0c-17.7 0-32 14.3-32 32zm64 352c0 17.7 14.3 32 32 32l32 0c53 0 96-43 96-96s-43-96-96-96L32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-32 0c-17.7 0-32 14.3-32 32zM128 512l32 0c53 0 96-43 96-96s-43-96-96-96L32 320c-17.7 0-32 14.3-32 32s14.3 32 32 32l128 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-32 0c-17.7 0-32 14.3-32 32s14.3 32 32 32z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-biohazard > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M173.2 0c-1.8 0-3.5 .7-4.8 2C138.5 32.3 120 74 120 120c0 26.2 6 50.9 16.6 73c-22 2.4-43.8 9.1-64.2 20.5C37.9 232.8 13.3 262.4 .4 296c-.7 1.7-.5 3.7 .5 5.2c2.2 3.7 7.4 4.3 10.6 1.3C64.2 254.3 158 245.1 205 324s-8.1 153.1-77.6 173.2c-4.2 1.2-6.3 5.9-4.1 9.6c1 1.6 2.6 2.7 4.5 3c36.5 5.9 75.2 .1 109.7-19.2c20.4-11.4 37.4-26.5 50.5-43.8c13.1 17.3 30.1 32.4 50.5 43.8c34.5 19.3 73.3 25.2 109.7 19.2c1.9-.3 3.5-1.4 4.5-3c2.2-3.7 .1-8.4-4.1-9.6C379.1 477.1 324 403 371 324s140.7-69.8 193.5-21.4c3.2 2.9 8.4 2.3 10.6-1.3c1-1.6 1.1-3.5 .5-5.2c-12.9-33.6-37.5-63.2-72.1-82.5c-20.4-11.4-42.2-18.1-64.2-20.5C450 170.9 456 146.2 456 120c0-46-18.5-87.7-48.4-118c-1.3-1.3-3-2-4.8-2c-5 0-8.4 5.2-6.7 9.9C421.7 80.5 385.6 176 288 176S154.3 80.5 179.9 9.9c1.7-4.7-1.6-9.9-6.7-9.9zM240 272a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM181.7 417.6c6.3-11.8 9.8-25.1 8.6-39.8c-19.5-18-34-41.4-41.2-67.8c-12.5-8.1-26.2-11.8-40-12.4c-9-.4-18.1 .6-27.1 2.7c7.8 57.1 38.7 106.8 82.9 139.4c6.8-6.7 12.6-14.1 16.8-22.1zM288 64c-28.8 0-56.3 5.9-81.2 16.5c2 8.3 5 16.2 9 23.5c6.8 12.4 16.7 23.1 30.1 30.3c13.3-4.1 27.5-6.3 42.2-6.3s28.8 2.2 42.2 6.3c13.4-7.2 23.3-17.9 30.1-30.3c4-7.3 7-15.2 9-23.5C344.3 69.9 316.8 64 288 64zM426.9 310c-7.2 26.4-21.7 49.7-41.2 67.8c-1.2 14.7 2.2 28.1 8.6 39.8c4.3 8 10 15.4 16.8 22.1c44.3-32.6 75.2-82.3 82.9-139.4c-9-2.2-18.1-3.1-27.1-2.7c-13.8 .6-27.5 4.4-40 12.4z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M173.2 0c-1.8 0-3.5 .7-4.8 2C138.5 32.3 120 74 120 120c0 26.2 6 50.9 16.6 73c-22 2.4-43.8 9.1-64.2 20.5C37.9 232.8 13.3 262.4 .4 296c-.7 1.7-.5 3.7 .5 5.2c2.2 3.7 7.4 4.3 10.6 1.3C64.2 254.3 158 245.1 205 324s-8.1 153.1-77.6 173.2c-4.2 1.2-6.3 5.9-4.1 9.6c1 1.6 2.6 2.7 4.5 3c36.5 5.9 75.2 .1 109.7-19.2c20.4-11.4 37.4-26.5 50.5-43.8c13.1 17.3 30.1 32.4 50.5 43.8c34.5 19.3 73.3 25.2 109.7 19.2c1.9-.3 3.5-1.4 4.5-3c2.2-3.7 .1-8.4-4.1-9.6C379.1 477.1 324 403 371 324s140.7-69.8 193.5-21.4c3.2 2.9 8.4 2.3 10.6-1.3c1-1.6 1.1-3.5 .5-5.2c-12.9-33.6-37.5-63.2-72.1-82.5c-20.4-11.4-42.2-18.1-64.2-20.5C450 170.9 456 146.2 456 120c0-46-18.5-87.7-48.4-118c-1.3-1.3-3-2-4.8-2c-5 0-8.4 5.2-6.7 9.9C421.7 80.5 385.6 176 288 176S154.3 80.5 179.9 9.9c1.7-4.7-1.6-9.9-6.7-9.9zM240 272a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM181.7 417.6c6.3-11.8 9.8-25.1 8.6-39.8c-19.5-18-34-41.4-41.2-67.8c-12.5-8.1-26.2-11.8-40-12.4c-9-.4-18.1 .6-27.1 2.7c7.8 57.1 38.7 106.8 82.9 139.4c6.8-6.7 12.6-14.1 16.8-22.1zM288 64c-28.8 0-56.3 5.9-81.2 16.5c2 8.3 5 16.2 9 23.5c6.8 12.4 16.7 23.1 30.1 30.3c13.3-4.1 27.5-6.3 42.2-6.3s28.8 2.2 42.2 6.3c13.4-7.2 23.3-17.9 30.1-30.3c4-7.3 7-15.2 9-23.5C344.3 69.9 316.8 64 288 64zM426.9 310c-7.2 26.4-21.7 49.7-41.2 67.8c-1.2 14.7 2.2 28.1 8.6 39.8c4.3 8 10 15.4 16.8 22.1c44.3-32.6 75.2-82.3 82.9-139.4c-9-2.2-18.1-3.1-27.1-2.7c-13.8 .6-27.5 4.4-40 12.4z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-water > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M269.5 69.9c11.1-7.9 25.9-7.9 37 0C329 85.4 356.5 96 384 96c26.9 0 55.4-10.8 77.4-26.1c0 0 0 0 0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 149.7 417 160 384 160c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4C42.8 92.6 61 83.5 75.3 71.6c11.1-9.5 27.3-10.1 39.2-1.7c0 0 0 0 0 0C136.7 85.2 165.1 96 192 96c27.5 0 55-10.6 77.5-26.1zm37 288C329 373.4 356.5 384 384 384c26.9 0 55.4-10.8 77.4-26.1c0 0 0 0 0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 437.7 417 448 384 448c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4c18.1-4.2 36.2-13.3 50.6-25.2c11.1-9.4 27.3-10.1 39.2-1.7c0 0 0 0 0 0C136.7 373.2 165.1 384 192 384c27.5 0 55-10.6 77.5-26.1c11.1-7.9 25.9-7.9 37 0zm0-144C329 229.4 356.5 240 384 240c26.9 0 55.4-10.8 77.4-26.1c0 0 0 0 0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 293.7 417 304 384 304c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4c18.1-4.2 36.2-13.3 50.6-25.2c11.1-9.5 27.3-10.1 39.2-1.7c0 0 0 0 0 0C136.7 229.2 165.1 240 192 240c27.5 0 55-10.6 77.5-26.1c11.1-7.9 25.9-7.9 37 0z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M269.5 69.9c11.1-7.9 25.9-7.9 37 0C329 85.4 356.5 96 384 96c26.9 0 55.4-10.8 77.4-26.1c0 0 0 0 0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 149.7 417 160 384 160c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4C42.8 92.6 61 83.5 75.3 71.6c11.1-9.5 27.3-10.1 39.2-1.7c0 0 0 0 0 0C136.7 85.2 165.1 96 192 96c27.5 0 55-10.6 77.5-26.1zm37 288C329 373.4 356.5 384 384 384c26.9 0 55.4-10.8 77.4-26.1c0 0 0 0 0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 437.7 417 448 384 448c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4c18.1-4.2 36.2-13.3 50.6-25.2c11.1-9.4 27.3-10.1 39.2-1.7c0 0 0 0 0 0C136.7 373.2 165.1 384 192 384c27.5 0 55-10.6 77.5-26.1c11.1-7.9 25.9-7.9 37 0zm0-144C329 229.4 356.5 240 384 240c26.9 0 55.4-10.8 77.4-26.1c0 0 0 0 0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 293.7 417 304 384 304c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4c18.1-4.2 36.2-13.3 50.6-25.2c11.1-9.5 27.3-10.1 39.2-1.7c0 0 0 0 0 0C136.7 229.2 165.1 240 192 240c27.5 0 55-10.6 77.5-26.1c11.1-7.9 25.9-7.9 37 0z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-house-chimney > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M543.8 287.6c17 0 32-14 32-32.1c1-9-3-17-11-24L512 185l0-121c0-17.7-14.3-32-32-32l-32 0c-17.7 0-32 14.3-32 32l0 36.7L309.5 7c-6-5-14-7-21-7s-15 1-22 8L10 231.5c-7 7-10 15-10 24c0 18 14 32.1 32 32.1l32 0 0 69.7c-.1 .9-.1 1.8-.1 2.8l0 112c0 22.1 17.9 40 40 40l16 0c1.2 0 2.4-.1 3.6-.2c1.5 .1 3 .2 4.5 .2l31.9 0 24 0c22.1 0 40-17.9 40-40l0-24 0-64c0-17.7 14.3-32 32-32l64 0c17.7 0 32 14.3 32 32l0 64 0 24c0 22.1 17.9 40 40 40l24 0 32.5 0c1.4 0 2.8 0 4.2-.1c1.1 .1 2.2 .1 3.3 .1l16 0c22.1 0 40-17.9 40-40l0-16.2c.3-2.6 .5-5.3 .5-8.1l-.7-160.2 32 0z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M543.8 287.6c17 0 32-14 32-32.1c1-9-3-17-11-24L512 185l0-121c0-17.7-14.3-32-32-32l-32 0c-17.7 0-32 14.3-32 32l0 36.7L309.5 7c-6-5-14-7-21-7s-15 1-22 8L10 231.5c-7 7-10 15-10 24c0 18 14 32.1 32 32.1l32 0 0 69.7c-.1 .9-.1 1.8-.1 2.8l0 112c0 22.1 17.9 40 40 40l16 0c1.2 0 2.4-.1 3.6-.2c1.5 .1 3 .2 4.5 .2l31.9 0 24 0c22.1 0 40-17.9 40-40l0-24 0-64c0-17.7 14.3-32 32-32l64 0c17.7 0 32 14.3 32 32l0 64 0 24c0 22.1 17.9 40 40 40l24 0 32.5 0c1.4 0 2.8 0 4.2-.1c1.1 .1 2.2 .1 3.3 .1l16 0c22.1 0 40-17.9 40-40l0-16.2c.3-2.6 .5-5.3 .5-8.1l-.7-160.2 32 0z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-truck-moving > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M64 32C28.7 32 0 60.7 0 96L0 304l0 80 0 16c0 44.2 35.8 80 80 80c26.2 0 49.4-12.6 64-32c14.6 19.4 37.8 32 64 32c44.2 0 80-35.8 80-80c0-5.5-.6-10.8-1.6-16L416 384l33.6 0c-1 5.2-1.6 10.5-1.6 16c0 44.2 35.8 80 80 80s80-35.8 80-80c0-5.5-.6-10.8-1.6-16l1.6 0c17.7 0 32-14.3 32-32l0-64 0-16 0-10.3c0-9.2-3.2-18.2-9-25.3l-58.8-71.8c-10.6-13-26.5-20.5-43.3-20.5L480 144l0-48c0-35.3-28.7-64-64-64L64 32zM585 256l-105 0 0-64 48.8 0c2.4 0 4.7 1.1 6.2 2.9L585 256zM528 368a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM176 400a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM80 368a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M64 32C28.7 32 0 60.7 0 96L0 304l0 80 0 16c0 44.2 35.8 80 80 80c26.2 0 49.4-12.6 64-32c14.6 19.4 37.8 32 64 32c44.2 0 80-35.8 80-80c0-5.5-.6-10.8-1.6-16L416 384l33.6 0c-1 5.2-1.6 10.5-1.6 16c0 44.2 35.8 80 80 80s80-35.8 80-80c0-5.5-.6-10.8-1.6-16l1.6 0c17.7 0 32-14.3 32-32l0-64 0-16 0-10.3c0-9.2-3.2-18.2-9-25.3l-58.8-71.8c-10.6-13-26.5-20.5-43.3-20.5L480 144l0-48c0-35.3-28.7-64-64-64L64 32zM585 256l-105 0 0-64 48.8 0c2.4 0 4.7 1.1 6.2 2.9L585 256zM528 368a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM176 400a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM80 368a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-baby > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M152 88a72 72 0 1 1 144 0A72 72 0 1 1 152 88zM39.7 144.5c13-17.9 38-21.8 55.9-8.8L131.8 162c26.8 19.5 59.1 30 92.2 30s65.4-10.5 92.2-30l36.2-26.4c17.9-13 42.9-9 55.9 8.8s9 42.9-8.8 55.9l-36.2 26.4c-13.6 9.9-28.1 18.2-43.3 25l0 36.3-192 0 0-36.3c-15.2-6.7-29.7-15.1-43.3-25L48.5 200.3c-17.9-13-21.8-38-8.8-55.9zm89.8 184.8l60.6 53-26 37.2 24.3 24.3c15.6 15.6 15.6 40.9 0 56.6s-40.9 15.6-56.6 0l-48-48C70 438.6 68.1 417 79.2 401.1l50.2-71.8zm128.5 53l60.6-53 50.2 71.8c11.1 15.9 9.2 37.5-4.5 51.2l-48 48c-15.6 15.6-40.9 15.6-56.6 0s-15.6-40.9 0-56.6L284 419.4l-26-37.2z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M152 88a72 72 0 1 1 144 0A72 72 0 1 1 152 88zM39.7 144.5c13-17.9 38-21.8 55.9-8.8L131.8 162c26.8 19.5 59.1 30 92.2 30s65.4-10.5 92.2-30l36.2-26.4c17.9-13 42.9-9 55.9 8.8s9 42.9-8.8 55.9l-36.2 26.4c-13.6 9.9-28.1 18.2-43.3 25l0 36.3-192 0 0-36.3c-15.2-6.7-29.7-15.1-43.3-25L48.5 200.3c-17.9-13-21.8-38-8.8-55.9zm89.8 184.8l60.6 53-26 37.2 24.3 24.3c15.6 15.6 15.6 40.9 0 56.6s-40.9 15.6-56.6 0l-48-48C70 438.6 68.1 417 79.2 401.1l50.2-71.8zm128.5 53l60.6-53 50.2 71.8c11.1 15.9 9.2 37.5-4.5 51.2l-48 48c-15.6 15.6-40.9 15.6-56.6 0s-15.6-40.9 0-56.6L284 419.4l-26-37.2z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-calendar-check > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M128 0c17.7 0 32 14.3 32 32l0 32 128 0 0-32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 32 48 0c26.5 0 48 21.5 48 48l0 48L0 160l0-48C0 85.5 21.5 64 48 64l48 0 0-32c0-17.7 14.3-32 32-32zM0 192l448 0 0 272c0 26.5-21.5 48-48 48L48 512c-26.5 0-48-21.5-48-48L0 192zM329 305c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-95 95-47-47c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l64 64c9.4 9.4 24.6 9.4 33.9 0L329 305z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M128 0c17.7 0 32 14.3 32 32l0 32 128 0 0-32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 32 48 0c26.5 0 48 21.5 48 48l0 48L0 160l0-48C0 85.5 21.5 64 48 64l48 0 0-32c0-17.7 14.3-32 32-32zM0 192l448 0 0 272c0 26.5-21.5 48-48 48L48 512c-26.5 0-48-21.5-48-48L0 192zM329 305c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-95 95-47-47c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l64 64c9.4 9.4 24.6 9.4 33.9 0L329 305z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-star > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z'/%3E%3C/svg%3E");
}

.menu-item.cw-ico-store > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M547.6 103.8L490.3 13.1C485.2 5 476.1 0 466.4 0L109.6 0C99.9 0 90.8 5 85.7 13.1L28.3 103.8c-29.6 46.8-3.4 111.9 51.9 119.4c4 .5 8.1 .8 12.1 .8c26.1 0 49.3-11.4 65.2-29c15.9 17.6 39.1 29 65.2 29c26.1 0 49.3-11.4 65.2-29c15.9 17.6 39.1 29 65.2 29c26.2 0 49.3-11.4 65.2-29c16 17.6 39.1 29 65.2 29c4.1 0 8.1-.3 12.1-.8c55.5-7.4 81.8-72.5 52.1-119.4zM499.7 254.9c0 0 0 0-.1 0c-5.3 .7-10.7 1.1-16.2 1.1c-12.4 0-24.3-1.9-35.4-5.3L448 384l-320 0 0-133.4c-11.2 3.5-23.2 5.4-35.6 5.4c-5.5 0-11-.4-16.3-1.1l-.1 0c-4.1-.6-8.1-1.3-12-2.3L64 384l0 64c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-64 0-131.4c-4 1-8 1.8-12.3 2.3z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M547.6 103.8L490.3 13.1C485.2 5 476.1 0 466.4 0L109.6 0C99.9 0 90.8 5 85.7 13.1L28.3 103.8c-29.6 46.8-3.4 111.9 51.9 119.4c4 .5 8.1 .8 12.1 .8c26.1 0 49.3-11.4 65.2-29c15.9 17.6 39.1 29 65.2 29c26.1 0 49.3-11.4 65.2-29c15.9 17.6 39.1 29 65.2 29c26.2 0 49.3-11.4 65.2-29c16 17.6 39.1 29 65.2 29c4.1 0 8.1-.3 12.1-.8c55.5-7.4 81.8-72.5 52.1-119.4zM499.7 254.9c0 0 0 0-.1 0c-5.3 .7-10.7 1.1-16.2 1.1c-12.4 0-24.3-1.9-35.4-5.3L448 384l-320 0 0-133.4c-11.2 3.5-23.2 5.4-35.6 5.4c-5.5 0-11-.4-16.3-1.1l-.1 0c-4.1-.6-8.1-1.3-12-2.3L64 384l0 64c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-64 0-131.4c-4 1-8 1.8-12.3 2.3z'/%3E%3C/svg%3E");
}

/* Custom icon (assets/icons/carpet-wand.svg) - Carpet Cleaning. */
.menu-item.cw-ico-carpet-wand > a::before {
	-webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M408.9 22.9L234.9 298.9L289.1 333.1L463.1 57.1ZM420.5 -8.5L368.5 73.5L439.5 118.5L491.5 36.5ZM104 292h248c22.1 0 40 17.9 40 40v8c0 13.3-10.7 24-24 24H88c-13.3 0-24-10.7-24-24v-8c0-22.1 17.9-40 40-40zM24 424c0-13.3 10.7-24 24-24h416c13.3 0 24 10.7 24 24s-10.7 24-24 24H48c-13.3 0-24-10.7-24-24zM96 488c0-13.3 10.7-24 24-24h272c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M408.9 22.9L234.9 298.9L289.1 333.1L463.1 57.1ZM420.5 -8.5L368.5 73.5L439.5 118.5L491.5 36.5ZM104 292h248c22.1 0 40 17.9 40 40v8c0 13.3-10.7 24-24 24H88c-13.3 0-24-10.7-24-24v-8c0-22.1 17.9-40 40-40zM24 424c0-13.3 10.7-24 24-24h416c13.3 0 24 10.7 24 24s-10.7 24-24 24H48c-13.3 0-24-10.7-24-24zM96 488c0-13.3 10.7-24 24-24h272c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24z'/%3E%3C/svg%3E");
}

/* Two-step quote form (see the redirect/steps script in functions.php). */
.cw-choice:has(input:checked) {
	border-color: #5FA132 !important;
	background-color: #F4FAEC !important;
	box-shadow: 0 0 0 3px rgba(140, 198, 63, 0.25);
}

/* Option cards have no symbols (Jason, 22 Sep) - the checkbox is drawn as a
   round tick on the right: grey ring, filled green with a white tick when chosen. */
.cw-choice input[type="checkbox"] {
	-webkit-appearance: none;
	appearance: none;
	flex: 0 0 24px;
	width: 24px !important;
	height: 24px !important;
	margin: 0 !important;
	border: 2px solid #C9D3DC;
	border-radius: 50%;
	background: #fff center / 14px 14px no-repeat;
	cursor: pointer;
	transition: background-color .15s, border-color .15s;
}
.cw-choice:hover input[type="checkbox"] { border-color: #8CC63F; }
.cw-choice input[type="checkbox"]:checked {
	border-color: #5FA132;
	background-color: #5FA132;
	background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3.2 3L13 4.8' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.cw-choice input[type="checkbox"]:focus-visible { outline: 2px solid #0F2E4A; outline-offset: 2px; }
/* Very narrow phones (360px): stop "Commercial" running into the tick. */
@media (max-width: 380px) {
	.cw-choice { gap: 6px !important; padding-left: 12px !important; padding-right: 8px !important; }
	.cw-choice label { font-size: 13.5px !important; }
	.cw-choice input[type="checkbox"] { flex-basis: 22px; width: 22px !important; height: 22px !important; min-width: 22px !important; }
}

.cw-need-choice .cw-choice {
	border-color: #E5484D !important;
}

.cw-choice-hint {
	margin: 0;
	font-size: 14px;
	font-weight: 600;
	color: #B42318;
}

/* Long email addresses - let them wrap on phones (atomic styles don't support overflow-wrap). */
a[href^="mailto:"] { overflow-wrap: anywhere !important; word-break: break-word; }

/* Fixed contact bar (output by clearway_whatsapp_bar() in functions.php):
   WhatsApp across the bottom on all screens, plus a Call half on phones. */
body { padding-bottom: 64px; }
.cw-wa-bar {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990;
	display: flex;
	box-shadow: 0 -6px 24px rgba(10, 46, 28, 0.22);
	padding-bottom: env(safe-area-inset-bottom, 0px);
	background-color: #25D366;
}
.cw-wa-bar__wa { flex: 1 1 auto; display: block; background-color: #25D366; color: #0A2E1C; text-decoration: none; }
.cw-wa-bar__wa:hover, .cw-wa-bar__wa:focus-visible { background-color: #1FBA59; color: #0A2E1C; }
.cw-wa-bar a:focus-visible { outline: 3px solid #0A2E1C; outline-offset: -3px; }
.cw-wa-bar__call { display: none; }
.cw-wa-bar__inner {
	max-width: 1240px; margin: 0 auto; padding: 11px 24px;
	display: flex; align-items: center; justify-content: flex-end; gap: 14px;
}
.cw-wa-bar__icon { flex: 0 0 auto; width: 30px; height: 30px; fill: #0A2E1C; }
.cw-wa-bar__text { flex: 0 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 1px; text-align: right; }
.cw-wa-bar__title { font-size: 16px; font-weight: 700; line-height: 1.25; }
.cw-wa-bar__sub { font-size: 13px; line-height: 1.3; color: #0D3A24; }
.cw-wa-bar__label-short { display: none; }
.cw-wa-bar__cta {
	flex: 0 0 auto; background-color: #fff; color: #0A2E1C; font-size: 14px; font-weight: 700;
	padding: 9px 18px; border-radius: 999px; white-space: nowrap;
}
@media (max-width: 560px) {
	body { padding-bottom: 52px; }
	.cw-wa-bar__call {
		flex: 0 0 50%; display: flex; align-items: center; justify-content: center; gap: 10px;
		background-color: #0F2E4A; color: #fff; text-decoration: none;
	}
	.cw-wa-bar__call .cw-wa-bar__icon { width: 20px; height: 20px; fill: #8CC63F; }
	.cw-wa-bar__call .cw-wa-bar__title { font-size: 15px; }
	.cw-wa-bar__wa { flex: 0 0 50%; }
	.cw-wa-bar__inner { padding: 13px 12px; justify-content: center; gap: 10px; }
	.cw-wa-bar__wa .cw-wa-bar__icon { width: 22px; height: 22px; }
	.cw-wa-bar__title { font-size: 15px; white-space: nowrap; }
	.cw-wa-bar__sub, .cw-wa-bar__label-long, .cw-wa-bar__cta { display: none; }
	.cw-wa-bar__label-short { display: inline; }
}
@media print { .cw-wa-bar { display: none; } }

/* ---------------------------------------------------------------------------
   Mobile / tablet menu panel - Zero Dry Time style (Jason, 22 Sep).
   Output by clearway_mobile_nav() in functions.php from the "Mobile menu"
   (Appearance > Menus): each item is a card, its Description field is the
   line under the title, and "cw-ico cw-ico-<name>" classes add an icon.
   The header burger (Elementor Nav Menu toggle, <=1200px) opens it; the Nav
   Menu's own dropdown is never shown.
   --------------------------------------------------------------------------- */
.elementor-nav-menu--main .cw-menu-cta { display: none !important; }

@media (max-width: 1200px) {
	.elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container { display: none !important; }
}

.cw-mnav { position: fixed; inset: 0; z-index: 100000; visibility: hidden; pointer-events: none; }
.cw-mnav.is-open { visibility: visible; pointer-events: auto; }
.cw-mnav__backdrop {
	position: absolute; inset: 0; background: rgba(6, 20, 33, 0.55);
	opacity: 0; transition: opacity 0.3s ease;
}
.cw-mnav.is-open .cw-mnav__backdrop { opacity: 1; }
.cw-mnav__panel {
	position: absolute; top: 0; right: 0; bottom: 0;
	width: 100%; max-width: 440px;
	display: flex; flex-direction: column;
	background: linear-gradient(160deg, #123A5C 0%, #0F2E4A 45%, #0A2236 100%);
	color: #fff; font-family: "Open Sans", sans-serif;
	box-shadow: -20px 0 50px rgba(0, 0, 0, 0.3);
	overflow-y: auto; -webkit-overflow-scrolling: touch;
	transform: translateX(100%);
	transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}
.cw-mnav.is-open .cw-mnav__panel { transform: translateX(0); }
.admin-bar .cw-mnav__panel { top: 0; }

.cw-mnav__head {
	position: sticky; top: 0; z-index: 2;
	flex: 0 0 auto; display: flex; align-items: center; justify-content: space-between;
	padding: 12px 18px; border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	background: #123A5C;
}
.cw-mnav__logo img { display: block; height: 52px; width: auto; }
.cw-mnav__close {
	display: flex; align-items: center; justify-content: center;
	width: 40px; height: 40px; padding: 0; border: 0; border-radius: 999px;
	background: #8CC63F; color: #0A2236; cursor: pointer;
}
/* Hello Elementor's reset turns every button #c36 (magenta) on hover/focus -
   keep ours on brand */
.cw-mnav .cw-mnav__close:hover, .cw-mnav .cw-mnav__close:focus, .cw-mnav .cw-mnav__close:active {
	background: #9fd352; color: #0A2236; border: 0;
}
.cw-mnav .cw-mnav__close:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.cw-mnav__close svg { width: 18px; height: 18px; }

.cw-mnav__body { flex: 0 0 auto; padding: 16px 18px 6px; }
.cw-mnav__eyebrow {
	margin: 0 0 4px; font-size: 11px; font-weight: 700; letter-spacing: 2.4px;
	text-transform: uppercase; color: #8CC63F;
}
.cw-mnav__title { margin: 0 0 12px; font-size: 21px; line-height: 1.2; font-weight: 700; color: #fff; }
.cw-mnav__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 7px; }
.cw-mnav__list li { margin: 0; }
.cw-mnav__list a {
	display: flex; align-items: center; gap: 12px;
	padding: 10px 14px; border-radius: 10px;
	background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.1);
	color: #fff; text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}
.cw-mnav__list a:hover, .cw-mnav__list a:focus-visible {
	background: rgba(255, 255, 255, 0.09); border-color: rgba(140, 198, 63, 0.6);
}
.cw-mnav__list .current-menu-item > a { border-color: #8CC63F; }
.cw-mnav__list .menu-item.cw-ico > a::before {
	width: 19px; height: 19px; margin: 0; background-color: #8CC63F;
}
.cw-mnav__text { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.cw-mnav__name { font-size: 15.5px; font-weight: 600; line-height: 1.25; color: #fff; }
.cw-mnav__desc { font-size: 12px; line-height: 1.35; color: #B9C7D6; }
.cw-mnav__arrow { flex: 0 0 auto; width: 16px; height: 16px; color: rgba(255, 255, 255, 0.55); }
.cw-mnav__list a:hover .cw-mnav__arrow { color: #8CC63F; }

/* Expandable sections - the card is a button that opens its sub-list. */
.cw-mnav .cw-mnav__toggle {
	display: flex; align-items: center; gap: 12px; width: 100%;
	padding: 10px 14px; border-radius: 10px; text-align: left;
	background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.1);
	color: #fff; font: inherit; cursor: pointer; white-space: normal;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}
.cw-mnav .cw-mnav__toggle:hover, .cw-mnav .cw-mnav__toggle:focus, .cw-mnav .cw-mnav__toggle:active {
	background: rgba(255, 255, 255, 0.09); border-color: rgba(140, 198, 63, 0.6); color: #fff;
}
.cw-mnav .cw-mnav__toggle:focus-visible { outline: 3px solid #8CC63F; outline-offset: 2px; }
.cw-mnav .cw-mnav__toggle[aria-expanded="true"] { border-color: #8CC63F; background: rgba(255, 255, 255, 0.07); }
.cw-mnav__chev { flex: 0 0 auto; width: 16px; height: 16px; color: #8CC63F; transition: transform 0.2s ease; }
.cw-mnav__toggle[aria-expanded="true"] .cw-mnav__chev { transform: rotate(180deg); }
.cw-mnav__sub { list-style: none; margin: 5px 0 3px; padding: 0 0 0 12px; display: flex; flex-direction: column; gap: 5px; }
.cw-mnav__sub[hidden] { display: none; }
.cw-mnav__list .cw-mnav__sub a {
	padding: 8px 12px; gap: 10px; border-radius: 9px;
	font-size: 14.5px; font-weight: 500; line-height: 1.25;
	background: rgba(255, 255, 255, 0.03); border-color: rgba(255, 255, 255, 0.07);
}
.cw-mnav__list .cw-mnav__sub .menu-item.cw-ico > a::before { width: 18px; height: 18px; }
.cw-mnav__list .cw-mnav__sub .cw-mnav__all > a { justify-content: space-between; font-weight: 700; color: #8CC63F; }
.cw-mnav__all .cw-mnav__arrow { width: 14px; height: 14px; color: #8CC63F; }

.cw-mnav__foot {
	flex: 0 0 auto; margin-top: auto; padding: 14px 18px calc(16px + env(safe-area-inset-bottom, 0px));
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	display: flex; flex-direction: column; gap: 8px;
}
.cw-mnav__quote, .cw-mnav__phone {
	display: flex; align-items: center; border-radius: 8px; padding: 11px 16px;
	font-size: 14.5px; font-weight: 700; text-decoration: none;
}
.cw-mnav__quote { justify-content: space-between; background: #8CC63F; color: #0A2236; }
.cw-mnav__quote:hover { background: #9fd352; color: #0A2236; }
.cw-mnav__phone {
	justify-content: center; gap: 10px; background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.12); color: #fff;
}
.cw-mnav__phone:hover { border-color: #8CC63F; color: #fff; }
.cw-mnav__phone svg { width: 17px; height: 17px; fill: #8CC63F; }
.cw-mnav__quote svg { width: 16px; height: 16px; }
.cw-mnav__trust { margin: 2px 0 0; font-size: 12px; line-height: 1.4; color: #9FB1C3; }

body.cw-mnav-open { overflow: hidden; }

@media (prefers-reduced-motion: reduce) {
	.cw-mnav__panel, .cw-mnav__backdrop { transition: none; }
}

/* Back-to-top button (as on clarkscarpetcare.co.uk): appears after scrolling,
   sits above the fixed contact bar. Output + behaviour in functions.php. */
.cw-top {
	position: fixed; right: 20px; bottom: 84px; z-index: 9989;
	width: 44px; height: 44px; padding: 0; border: 0; border-radius: 6px;
	display: flex; align-items: center; justify-content: center;
	background: #0F2E4A; color: #fff; cursor: pointer;
	box-shadow: 0 6px 18px rgba(10, 34, 54, 0.25);
	opacity: 0; visibility: hidden; transform: translateY(8px);
	transition: opacity 0.25s ease, transform 0.25s ease, visibility 0s linear 0.25s, background-color 0.2s ease;
}
.cw-top.is-visible { opacity: 0.85; visibility: visible; transform: none; transition: opacity 0.25s ease, transform 0.25s ease, background-color 0.2s ease; }
button.cw-top:focus { background: #0F2E4A; color: #fff; border: 0; }
button.cw-top:hover, button.cw-top:focus-visible { opacity: 1; background: #8CC63F; color: #0A2236; }
.cw-top svg { width: 18px; height: 18px; }
body.cw-mnav-open .cw-top { opacity: 0; visibility: hidden; }
@media (max-width: 560px) {
	.cw-top { right: 14px; bottom: 66px; width: 40px; height: 40px; }
}
@media print { .cw-top { display: none; } }

/* Header on tablet/phone: quote button and burger share one height and the
   site's 4px button radius (Sean, 22 Sep). */
@media (max-width: 1200px) {
	.elementor-location-header a.cw-btn,
	.elementor-location-header .elementor-menu-toggle {
		height: 42px !important;
		border-radius: 4px !important;
		box-sizing: border-box;
	}
	.elementor-location-header a.cw-btn {
		display: inline-flex !important;
		align-items: center;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}
	.elementor-location-header .elementor-menu-toggle {
		width: 42px !important;
		padding: 0 !important;
		display: flex !important;
		align-items: center;
		justify-content: center;
	}
}
@media (max-width: 767px) {
	.elementor-location-header a.cw-btn,
	.elementor-location-header .elementor-menu-toggle { height: 40px !important; }
	.elementor-location-header .elementor-menu-toggle { width: 40px !important; }
}

/* Desktop dropdowns (Sean, 22 Sep): pull the panel left so the item icons
   line up under the parent link's text, with tighter icon spacing. */
@media (min-width: 1201px) {
	.elementor-location-header .elementor-nav-menu--main .sub-menu {
		margin-left: -4px !important; /* smartmenus writes an inline margin-left */
		min-width: 250px !important;
	}
	.elementor-location-header .elementor-nav-menu--main .sub-menu a.elementor-sub-item {
		padding-left: 12px !important;
		padding-right: 24px !important;
	}
	.elementor-location-header .elementor-nav-menu--main .menu-item.cw-ico > a::before {
		width: 18px;
		height: 18px;
		margin-right: 10px;
	}
}

/* ---------------------------------------------------------------------------
   Google reviews (components "Clearway Reviews Slider" / "Clearway Reviews
   Grid"). Cards carry the global class cw-review-card; the slider's arrows
   and "Read more" links are added by clearway_reviews_js() in functions.php.
   --------------------------------------------------------------------------- */
.cw-review-card > p:last-child { margin-top: auto; }

/* slider */
.cw-reviews-main { position: relative; flex: 1 1 auto; min-width: 0; width: 100%; }
.cw-reviews-track {
	display: flex !important; gap: 20px; overflow-x: auto; overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none;
	padding: 6px 4px 18px !important; align-items: stretch;
	/* Matches the 4px side padding, so the first card's snap point is 0. Without
	   it the browser snapped the track 4px on load, and Chrome stops measuring
	   Largest Contentful Paint at the first scroll (PageSpeed: "NO_LCP"). */
	scroll-padding-inline: 4px;
}
.cw-reviews-track::-webkit-scrollbar { display: none; }
.cw-reviews-track > .cw-review-card { flex: 0 0 340px; scroll-snap-align: start; }
.cw-reviews-track .cw-review-text {
	display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden;
}
.cw-reviews-track .cw-review-text.is-open { display: block; -webkit-line-clamp: unset; overflow: visible; }
.cw-review-more {
	align-self: flex-start; margin: -4px 0 0; padding: 0; border: 0; background: none;
	font: 700 14px/1.4 "Open Sans", sans-serif; color: #3E7A1F; cursor: pointer;
}
button.cw-review-more:hover, button.cw-review-more:focus { background: none; color: #0F2E4A; text-decoration: underline; }
.cw-reviews-nav { display: flex; justify-content: flex-end; gap: 10px; margin-top: 4px; }
button.cw-reviews-btn {
	width: 44px; height: 44px; padding: 0; border-radius: 999px; border: 1px solid #D5DEE7;
	background: #fff; color: #0F2E4A; display: flex; align-items: center; justify-content: center; cursor: pointer;
	box-shadow: 0 4px 12px rgba(10, 34, 54, 0.08);
}
button.cw-reviews-btn:hover, button.cw-reviews-btn:focus { background: #0F2E4A; color: #fff; border-color: #0F2E4A; }
button.cw-reviews-btn:disabled { opacity: 0.35; cursor: default; background: #fff; color: #0F2E4A; border-color: #D5DEE7; }
.cw-reviews-btn svg { width: 16px; height: 16px; }
@media (max-width: 767px) {
	.cw-reviews-track > .cw-review-card { flex: 0 0 86%; }
	.cw-reviews-nav { justify-content: center; }
}

/* grid page (masonry columns) */
.cw-reviews-grid { column-count: 3; column-gap: 20px; }
.cw-reviews-grid > .cw-review-card {
	display: flex !important; width: 100%; break-inside: avoid; margin: 0 0 20px;
}
@media (max-width: 1024px) { .cw-reviews-grid { column-count: 2; } }
@media (max-width: 767px) { .cw-reviews-grid { column-count: 1; } }

/* Breadcrumb bar under the header (clearway_breadcrumb_bar() in functions.php).
   Contrast on #000: links #F3F4F6 ~19:1, current page #A3ACB6 ~9:1, hover green ~11:1. */
.cw-crumbs {
	background: #000;
	color: #F3F4F6;
	font-family: "Open Sans", sans-serif;
	font-size: 13px;
	line-height: 1.4;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.cw-crumbs__in {
	max-width: 1240px;
	margin: 0 auto;
	padding: 11px 24px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.cw-crumbs a {
	color: #F3F4F6;
	font-weight: 600;
	text-decoration: none;
	transition: color .15s;
}
.cw-crumbs a:hover { color: #8CC63F; text-decoration: underline; text-underline-offset: 3px; }
.cw-crumbs a:focus-visible { outline: 2px solid #8CC63F; outline-offset: 2px; border-radius: 2px; }
.cw-crumbs .breadcrumb_last { color: #A3ACB6; font-weight: 400; }
.cw-crumbs__sep {
	display: inline-block;
	width: 7px;
	height: 7px;
	margin: 0 10px 1px 8px;
	border-top: 1.5px solid #6B7580;
	border-right: 1.5px solid #6B7580;
	transform: rotate(45deg);
}
@media (max-width: 767px) {
	.cw-crumbs__in { padding: 10px 16px; font-size: 12.5px; }
}

/* Elementor's SVG icon widget renders the <svg> inline in a 24px line box, so
   icons under ~18px sat on the text baseline and dropped 3-9px below centre
   (top bar, ticks, chevrons). Block display centres them in their box. */
.e-svg-base > svg { display: block; }
