/* PWCreator modern header, page title band and footer (Impreza theme).
 * Loaded site-wide with pwc-site.css. Turn off with define( 'PWC_SITE_STYLE', false ).
 */
:root {
	--pwc-navy: #0b1b3a;
	--pwc-navy-2: #10295a;
	--pwc-blue: #0e4cae;
	--pwc-blue-2: #1d6ff2;
	--pwc-cyan: #38bdf8;
	--pwc-slate: #475569;
}

/* ---------------------------------------------------------------- Header */
.l-header.pos_fixed,
.l-header .l-subheader.at_middle {
	background: rgba(255, 255, 255, .86) !important;
	-webkit-backdrop-filter: saturate(180%) blur(14px);
	backdrop-filter: saturate(180%) blur(14px);
}
.l-header.shadow_thin .l-subheader.at_middle,
.l-header.shadow_thin { box-shadow: 0 1px 0 rgba(15, 23, 42, .06), 0 8px 24px -16px rgba(15, 23, 42, .18) !important; }
.l-header .w-image img { max-height: 46px; width: auto; }

/* Top-level links */
.l-header .w-nav.type_desktop .w-nav-anchor.level_1 {
	font-family: var(--font-body);
	font-size: 14.5px;
	font-weight: 500;
	color: #334155 !important;
	padding: 0 9px !important;
	position: relative;
	transition: color .15s;
}
.l-header .w-nav.type_desktop .w-nav-anchor.level_1 .w-nav-title {
	padding: 8px 2px;
	border-radius: 10px;
	position: relative;
}
.l-header .w-nav.type_desktop .w-nav-anchor.level_1 .w-nav-title::after {
	content: '';
	position: absolute;
	left: 2px; right: 2px; bottom: 0;
	height: 2px;
	border-radius: 2px;
	background: var(--pwc-blue);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .2s ease;
}
.l-header .w-nav.type_desktop .w-nav-item.level_1:hover > .w-nav-anchor,
.l-header .w-nav.type_desktop .w-nav-item.level_1.current-menu-item > .w-nav-anchor,
.l-header .w-nav.type_desktop .w-nav-item.level_1.current-menu-ancestor > .w-nav-anchor { color: var(--pwc-blue) !important; }
.l-header .w-nav.type_desktop .w-nav-item.level_1:hover > .w-nav-anchor .w-nav-title::after,
.l-header .w-nav.type_desktop .w-nav-item.level_1.current-menu-item > .w-nav-anchor .w-nav-title::after,
.l-header .w-nav.type_desktop .w-nav-item.level_1.current-menu-ancestor > .w-nav-anchor .w-nav-title::after { transform: scaleX(1); }

/* Dropdown arrow for "More Tools" */
.l-header .w-nav.type_desktop .menu-item-has-children > .w-nav-anchor.level_1 .w-nav-title { padding-right: 16px; }
.l-header .w-nav.type_desktop .menu-item-has-children > .w-nav-anchor.level_1 .w-nav-title::before {
	content: '';
	position: absolute;
	right: 2px; top: 50%;
	width: 6px; height: 6px;
	border-right: 1.75px solid currentColor;
	border-bottom: 1.75px solid currentColor;
	transform: translateY(-70%) rotate(45deg);
	transition: transform .2s;
}
.l-header .w-nav.type_desktop .menu-item-has-children:hover > .w-nav-anchor .w-nav-title::before { transform: translateY(-30%) rotate(-135deg); }

/* Dropdown panel */
.l-header .w-nav.type_desktop .w-nav-list.level_2 {
	background: #fff !important;
	border: 1px solid #e2e8f0;
	border-radius: 16px !important;
	padding: 8px !important;
	min-width: 260px;
	box-shadow: 0 20px 48px -12px rgba(15, 23, 42, .22), 0 2px 6px rgba(15, 23, 42, .06) !important;
	margin-top: -6px;
}
.l-header .w-nav.type_desktop .w-nav-anchor.level_2 {
	font-family: var(--font-body);
	font-size: 14.5px;
	font-weight: 500;
	color: #1f2937 !important;
	padding: 10px 14px !important;
	border-radius: 10px;
	background: transparent !important;
	transition: background .15s, color .15s;
}
.l-header .w-nav.type_desktop .w-nav-item.level_2:hover > .w-nav-anchor,
.l-header .w-nav.type_desktop .w-nav-item.level_2.current-menu-item > .w-nav-anchor { background: #f1f5fd !important; color: var(--pwc-blue) !important; }

/* Login icon and Register button */
.l-header .w-nav.type_desktop .menu-item-483 > .w-nav-anchor { padding-right: 6px !important; }
.l-header .w-nav.type_desktop .menu-item-484 > .w-nav-anchor { padding-left: 6px !important; padding-right: 4px !important; }
.l-header .w-nav.type_desktop .menu-item-484 > .w-nav-anchor .w-nav-title {
	background: linear-gradient(135deg, var(--pwc-blue), var(--pwc-blue-2));
	color: #fff !important;
	padding: 9px 18px;
	border-radius: 999px;
	font-weight: 600;
	box-shadow: 0 6px 16px -6px rgba(14, 76, 174, .55);
	transition: transform .15s, box-shadow .15s;
}
.l-header .w-nav.type_desktop .menu-item-484 > .w-nav-anchor .w-nav-title::after { display: none; }
.l-header .w-nav.type_desktop .menu-item-484:hover > .w-nav-anchor .w-nav-title { transform: translateY(-1px); box-shadow: 0 10px 22px -8px rgba(14, 76, 174, .6); }
.l-header .w-nav.type_desktop .menu-item-484 > .w-nav-anchor { color: #fff !important; }

/* Mobile menu (Impreza fullscreen layout) */
.l-header .w-nav-control .w-nav-icon > div,
.l-header .w-nav-control .w-nav-icon > div::before,
.l-header .w-nav-control .w-nav-icon > div::after { background: var(--pwc-navy) !important; height: 2px !important; border-radius: 2px; }
.w-nav.type_mobile .w-nav-list.level_1 { background: rgba(11, 27, 58, .97) !important; }
.w-nav.type_mobile .w-nav-anchor { font-family: var(--font-body); color: #fff !important; font-weight: 600; }
.w-nav.type_mobile .w-nav-anchor.level_2 { color: #cbd5e1 !important; font-weight: 500; }
.w-nav.type_mobile .w-nav-item:hover > .w-nav-anchor,
.w-nav.type_mobile .current-menu-item > .w-nav-anchor { color: var(--pwc-cyan) !important; }

/* ---------------------------------------------------------------- Page title band */
.l-main > .l-section:first-child:has(h1):not(:has(.pwc-blog, .w-grid)),
.l-section.us_custom_277b6e79 {
	background:
		radial-gradient(900px 400px at 85% -10%, rgba(56, 189, 248, .28), transparent 60%),
		radial-gradient(700px 380px at 0% 120%, rgba(29, 111, 242, .35), transparent 60%),
		linear-gradient(135deg, var(--pwc-navy) 0%, var(--pwc-navy-2) 55%, var(--pwc-blue) 100%) !important;
	position: relative;
	overflow: hidden;
}
.l-main > .l-section:first-child:has(h1):not(:has(.pwc-blog, .w-grid))::before,
.l-section.us_custom_277b6e79::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image: linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px);
	background-size: 44px 44px;
	-webkit-mask-image: linear-gradient(180deg, #000 0%, transparent 85%);
	mask-image: linear-gradient(180deg, #000 0%, transparent 85%);
	pointer-events: none;
}
.l-main > .l-section:first-child:has(h1):not(:has(.pwc-blog, .w-grid)) > .l-section-h,
.l-section.us_custom_277b6e79 > .l-section-h { position: relative; z-index: 1; }
.l-main > .l-section:first-child:has(h1):not(:has(.pwc-blog, .w-grid)) h1,
.l-section.us_custom_277b6e79 h1 {
	color: #fff !important;
	font-weight: 800 !important;
	letter-spacing: -0.03em;
	font-size: clamp(2rem, 4.2vw, 3.2rem) !important;
	line-height: 1.1 !important;
	margin: 0 !important;
}
.l-main > .l-section:first-child:has(h1):not(:has(.pwc-blog, .w-grid)) h1::before,
.l-section.us_custom_277b6e79 h1::before {
	content: 'Free · Private · Runs in your browser';
	display: block;
	width: max-content;
	max-width: 100%;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #bae6fd;
	background: rgba(56, 189, 248, .12);
	border: 1px solid rgba(56, 189, 248, .3);
	padding: 6px 12px;
	border-radius: 999px;
	margin-bottom: 18px;
}
.l-main > .l-section:first-child:has(h1):not(:has(.pwc-blog, .w-grid)) p,
.l-main > .l-section:first-child:has(h1):not(:has(.pwc-blog, .w-grid)) h2,
.l-main > .l-section:first-child:has(h1):not(:has(.pwc-blog, .w-grid)) h3 { color: #cbd5e1 !important; }

/* ---------------------------------------------------------------- Footer */
#page-footer.l-footer { display: none !important; }
.pwc-footer {
	background: var(--pwc-navy);
	color: #94a3b8;
	font-family: var(--font-body);
	font-size: 15px;
	line-height: 1.6;
	position: relative;
	overflow: hidden;
}
.pwc-footer::before {
	content: '';
	position: absolute;
	inset: 0 0 auto 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(56, 189, 248, .6), transparent);
}
.pwc-footer a { color: #cbd5e1; text-decoration: none; transition: color .15s; }
.pwc-footer a:hover { color: #fff; }
.pwc-footer-inner { max-width: 1240px; margin: 0 auto; padding: 64px 24px 0; }
.pwc-footer-cta {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px;
	background: linear-gradient(135deg, rgba(29, 111, 242, .22), rgba(56, 189, 248, .08));
	border: 1px solid rgba(56, 189, 248, .22);
	border-radius: 20px;
	padding: 28px 32px;
	margin-bottom: 56px;
}
.pwc-footer-cta h3 { color: #fff; margin: 0 0 4px; font-size: 1.35rem; font-weight: 700; letter-spacing: -0.01em; }
.pwc-footer-cta p { margin: 0; color: #cbd5e1; }
.pwc-footer-cta a.pwc-fbtn {
	display: inline-flex; align-items: center; gap: 8px;
	background: #fff; color: var(--pwc-navy); font-weight: 700;
	padding: 12px 22px; border-radius: 999px; white-space: nowrap;
	box-shadow: 0 8px 20px -8px rgba(0, 0, 0, .5);
}
.pwc-footer-cta a.pwc-fbtn:hover { color: var(--pwc-blue); transform: translateY(-1px); }
.pwc-footer-grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 40px; }
.pwc-footer-brand img { height: 44px; width: auto; filter: brightness(0) invert(1); margin-bottom: 14px; }
.pwc-footer-brand .pwc-flogo { display: inline-flex; align-items: center; gap: 10px; color: #fff; font-weight: 800; font-size: 1.25rem; letter-spacing: .02em; margin-bottom: 14px; }
.pwc-footer-brand p { max-width: 340px; margin: 0 0 18px; }
.pwc-badges { display: flex; flex-wrap: wrap; gap: 8px; }
.pwc-badges span { font-size: 12px; font-weight: 600; color: #bae6fd; background: rgba(56, 189, 248, .1); border: 1px solid rgba(56, 189, 248, .25); padding: 5px 10px; border-radius: 999px; }
.pwc-footer h4 { color: #fff; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin: 6px 0 16px; }
.pwc-footer ul { list-style: none; margin: 0; padding: 0; }
.pwc-footer li { margin: 0 0 10px; }
.pwc-footer-bottom {
	display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px;
	border-top: 1px solid rgba(148, 163, 184, .15);
	margin-top: 48px; padding: 22px 0 28px;
	font-size: 14px;
}
.pwc-footer-bottom nav { display: flex; gap: 20px; flex-wrap: wrap; }
@media (max-width: 960px) { .pwc-footer-grid { grid-template-columns: 1fr 1fr; } .pwc-footer-brand { grid-column: 1 / -1; } }
@media (max-width: 560px) {
	.pwc-footer-inner { padding: 48px 16px 0; }
	.pwc-footer-cta { padding: 22px; }
	.pwc-footer-grid { gap: 28px; }
}
