:root {
	--pbb-red: #0878bd;
	--pbb-red-dark: #055484;
	--pbb-red-soft: #eef8fe;
	--pbb-black: #071a2b;
	--pbb-charcoal: #0a2b45;
	--pbb-ink: #173247;
	--pbb-muted: #647789;
	--pbb-line: #dbe6ee;
	--pbb-soft: #f4f8fb;
	--pbb-white: #fff;
	--pbb-radius: 12px;
	--pbb-shadow: 0 16px 42px rgba(5,43,70,.10);
	--pbb-shell: min(1180px, calc(100% - 40px));
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	background: #fff;
	color: var(--pbb-ink);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
}
body.admin-bar .pbb-site-header { top: 32px; }
img { max-width: 100%; height: auto; }
a { color: inherit; }
svg { display: block; width: 1.2em; height: 1.2em; }
button, input, textarea, select { font: inherit; }

h1, h2, h3, h4, h5, h6 {
	margin: 0 0 .65em;
	color: var(--pbb-black);
	font-family: Arial, Helvetica, sans-serif;
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: -.025em;
}
h1 { font-size: clamp(2.5rem, 5vw, 4.5rem); }
h2 { font-size: clamp(2rem, 3.5vw, 3.1rem); }
h3 { font-size: clamp(1.15rem, 1.8vw, 1.45rem); }
p { margin: 0 0 1.15em; }

.pbb-shell { width: var(--pbb-shell); margin-inline: auto; }
.screen-reader-text, .skip-link {
	position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.skip-link:focus {
	position: fixed; z-index: 99999; top: 14px; left: 14px; width: auto; height: auto;
	padding: 10px 14px; margin: 0; clip: auto; background: #fff; color: #111;
}

/* Header: compact, high-contrast and compact and high-contrast. */
.pbb-topbar {
	background: var(--pbb-black);
	color: rgba(255,255,255,.86);
	font-size: .76rem;
	font-weight: 700;
}
.pbb-topbar-inner {
	min-height: 36px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}
.pbb-topbar-left, .pbb-topbar-right { display: flex; align-items: center; gap: 22px; }
.pbb-topbar span, .pbb-topbar a { display: inline-flex; align-items: center; gap: 7px; text-decoration: none; }
.pbb-topbar svg { color: var(--pbb-red); }

.pbb-site-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	background: #fff;
	box-shadow: 0 8px 28px rgba(0,0,0,.10);
}
.pbb-masthead { background: #fff; }
.pbb-header-inner {
	min-height: 88px;
	display: grid;
	grid-template-columns: 225px 1fr auto;
	align-items: center;
	gap: 30px;
}
.pbb-brand { min-width: 0; }
.pbb-brand a { display: inline-flex; align-items: center; text-decoration: none; }
.pbb-brand img, .pbb-brand .custom-logo {
	display: block;
	width: 212px;
	max-width: 100%;
	max-height: 72px;
	object-fit: contain;
	object-position: left center;
}
.pbb-text-logo { display: flex; flex-direction: column; color: var(--pbb-black); line-height: 1.05; }
.pbb-text-logo strong { font-size: 1.35rem; }
.pbb-text-logo span { margin-top: 6px; color: var(--pbb-red); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.pbb-header-message { text-align: center; }
.pbb-header-message strong { display: block; color: var(--pbb-black); font-size: 1rem; letter-spacing: .05em; text-transform: uppercase; }
.pbb-header-message span { display: block; margin-top: 4px; color: var(--pbb-muted); font-size: .78rem; font-weight: 700; }
.pbb-header-call {
	min-width: 230px;
	display: grid;
	grid-template-columns: 38px 1fr;
	grid-template-areas: "icon small" "icon strong";
	align-items: center;
	padding: 12px 16px;
	border: 2px solid var(--pbb-red);
	border-radius: 10px;
	background: #fff;
	color: var(--pbb-black);
	text-decoration: none;
	line-height: 1.1;
	transition: .2s ease;
}
.pbb-header-call:hover { background: var(--pbb-red); color: #fff; transform: translateY(-1px); }
.pbb-header-call > span { grid-area: icon; color: var(--pbb-red); }
.pbb-header-call:hover > span { color: #fff; }
.pbb-header-call svg { width: 29px; height: 29px; }
.pbb-header-call small { grid-area: small; font-size: .65rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.pbb-header-call strong { grid-area: strong; margin-top: 3px; font-size: 1.2rem; }

.pbb-nav-wrap { background: var(--pbb-charcoal); border-top: 4px solid var(--pbb-red); }
.pbb-nav-inner { min-height: 52px; display: flex; align-items: stretch; justify-content: space-between; gap: 22px; }
.pbb-navigation { min-width: 0; }
.pbb-menu { list-style: none; display: flex; align-items: stretch; gap: 0; padding: 0; margin: 0; }
.pbb-menu li { position: relative; }
.pbb-menu > li > a {
	display: flex;
	align-items: center;
	min-height: 52px;
	padding: 0 16px;
	color: rgba(255,255,255,.88);
	text-decoration: none;
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .025em;
	text-transform: uppercase;
	white-space: nowrap;
	transition: .18s ease;
}
.pbb-menu > li > a:hover, .pbb-menu > li.current-menu-item > a, .pbb-menu > li.current-menu-ancestor > a { background: var(--pbb-red); color: #fff; }
.pbb-menu .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 10;
	width: 260px;
	list-style: none;
	padding: 8px;
	margin: 0;
	background: #fff;
	border-top: 3px solid var(--pbb-red);
	box-shadow: var(--pbb-shadow);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: .18s ease;
}
.pbb-menu li:hover > .sub-menu, .pbb-menu li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.pbb-menu .sub-menu a { display: block; padding: 10px 12px; color: var(--pbb-ink); text-decoration: none; font-size: .86rem; font-weight: 700; }
.pbb-menu .sub-menu a:hover { background: var(--pbb-red-soft); color: var(--pbb-red-dark); }
.pbb-nav-actions { display: flex; align-items: stretch; margin-left: auto; }
.pbb-nav-action {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0 17px;
	background: var(--pbb-red);
	color: #fff;
	text-decoration: none;
	font-size: .76rem;
	font-weight: 900;
	letter-spacing: .04em;
	text-transform: uppercase;
}
.pbb-nav-action:hover { background: var(--pbb-red-dark); }
.pbb-menu-toggle {
	display: none;
	width: 46px;
	height: 44px;
	padding: 10px;
	border: 0;
	border-radius: 7px;
	background: var(--pbb-red);
	cursor: pointer;
}
.pbb-menu-toggle span:not(.screen-reader-text) { display: block; height: 2px; margin: 5px 0; background: #fff; }

/* Hero slider: deliberately restrained so images never dominate the page. */
.pbb-hero-slider { position: relative; overflow: hidden; background: #111; }
.pbb-hero-track { position: relative; min-height: 520px; }
.pbb-hero-slide {
	position: absolute;
	inset: 0;
	min-height: 520px;
	display: grid;
	align-items: center;
	background-position: center;
	background-size: cover;
	opacity: 0;
	visibility: hidden;
	transform: scale(1.015);
	transition: opacity .55s ease, visibility .55s ease, transform 6s ease;
}
.pbb-hero-slide.is-active { opacity: 1; visibility: visible; transform: scale(1); }
.pbb-hero-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(9,10,12,.94) 0%, rgba(9,10,12,.83) 45%, rgba(9,10,12,.35) 78%, rgba(9,10,12,.18) 100%);
}
.pbb-hero-overlay::after { content: ""; position: absolute; inset: 0 auto 0 0; width: 9px; background: var(--pbb-red); }
.pbb-hero-inner { position: relative; z-index: 2; width: var(--pbb-shell); margin-inline: auto; padding: 70px 0 82px; }
.pbb-hero-copy { max-width: 690px; }
.pbb-hero-copy h1 { max-width: 690px; margin-bottom: 18px; color: #fff; font-size: clamp(2.55rem, 5vw, 4.3rem); }
.pbb-hero-copy p { max-width: 610px; color: rgba(255,255,255,.86); font-size: clamp(1rem, 1.5vw, 1.18rem); line-height: 1.62; }
.pbb-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 15px;
	color: #67c7ff;
	font-size: .72rem;
	font-weight: 900;
	letter-spacing: .14em;
	text-transform: uppercase;
}
.pbb-eyebrow::before { content: ""; width: 28px; height: 3px; background: currentColor; }
.pbb-eyebrow--dark { color: var(--pbb-red); }
.pbb-hero-actions, .pbb-cta-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 28px; }
.pbb-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 49px;
	padding: 12px 20px;
	border: 0;
	border-radius: 7px;
	text-decoration: none;
	font-size: .82rem;
	font-weight: 900;
	letter-spacing: .035em;
	text-transform: uppercase;
	transition: .18s ease;
}
.pbb-btn:hover { transform: translateY(-2px); }
.pbb-btn--primary, .pbb-btn:not(.pbb-btn--ghost) { background: var(--pbb-red); color: #fff; box-shadow: 0 11px 26px rgba(8,120,189,.25); }
.pbb-btn--primary:hover { background: var(--pbb-red-dark); }
.pbb-btn--ghost { border: 1px solid rgba(255,255,255,.45); background: rgba(255,255,255,.08); color: #fff; }
.pbb-btn--ghost:hover { background: #fff; color: var(--pbb-black); }
.pbb-hero-controls {
	position: absolute;
	z-index: 4;
	bottom: 27px;
	left: 50%;
	width: var(--pbb-shell);
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	gap: 10px;
}
.pbb-hero-controls button { border: 0; cursor: pointer; }
.pbb-hero-prev, .pbb-hero-next { width: 38px; height: 38px; border-radius: 50%; background: rgba(255,255,255,.14); color: #fff; }
.pbb-hero-prev:hover, .pbb-hero-next:hover { background: var(--pbb-red); }
.pbb-hero-dots { display: flex; gap: 7px; }
.pbb-hero-dots button { width: 9px; height: 9px; padding: 0; border-radius: 999px; background: rgba(255,255,255,.45); transition: .18s ease; }
.pbb-hero-dots button.is-active { width: 28px; background: var(--pbb-red); }

/* WPBakery layout and spacing. */
.pbb-front-page > .vc_row, .pbb-page-content > .vc_row, .pbb-section { width: var(--pbb-shell); margin-left: auto !important; margin-right: auto !important; }
.vc_row { display: flex; flex-wrap: wrap; row-gap: 28px; }
.vc_column_container { min-width: 0; }
.vc_column_container > .vc_column-inner { height: 100%; padding-left: 15px; padding-right: 15px; }
.wpb_wrapper { height: 100%; }
.pbb-col-1-1 { width: 100%; }
.pbb-col-1-2 { width: 50%; }
.pbb-col-1-3 { width: 33.333%; }
.pbb-col-2-3 { width: 66.667%; }
.pbb-col-1-4 { width: 25%; }
.pbb-section { padding-top: 76px; padding-bottom: 76px; }
.pbb-section--tight { padding-top: 42px !important; padding-bottom: 42px !important; }
.pbb-section--soft {
	margin-top: 24px !important;
	margin-bottom: 24px !important;
	padding: 62px 48px !important;
	border-top: 5px solid var(--pbb-red);
	background: var(--pbb-soft);
}
.pbb-section--dark {
	margin-top: 24px !important;
	margin-bottom: 24px !important;
	padding: 62px 48px !important;
	background: var(--pbb-charcoal);
	color: rgba(255,255,255,.78);
}
.pbb-section--dark h2, .pbb-section--dark h3 { color: #fff; }
.pbb-section--dark .pbb-section-heading p { color: rgba(255,255,255,.72); }
.pbb-gap-row { row-gap: 30px; }
.pbb-align-center { text-align: center; }
.pbb-section-heading { max-width: 760px; margin-bottom: 30px; }
.pbb-section-heading.pbb-align-center { margin-inline: auto; text-align: center; }
.pbb-section-heading.pbb-align-center .pbb-eyebrow { justify-content: center; }
.pbb-section-heading p { color: var(--pbb-muted); font-size: 1.04rem; }

/* Urgent information strip. */
.pbb-trust-strip {
	position: relative;
	z-index: 5;
	width: var(--pbb-shell) !important;
	margin: -24px auto 0 !important;
	padding: 18px 14px;
	background: #fff;
	border-bottom: 4px solid var(--pbb-red);
	box-shadow: var(--pbb-shadow);
}
.pbb-stat { height: 100%; padding: 7px 20px; border-right: 1px solid var(--pbb-line); text-align: center; }
.pbb-trust-strip .wpb_column:last-child .pbb-stat { border-right: 0; }
.pbb-stat strong { display: block; color: var(--pbb-red); font-size: 1.32rem; line-height: 1.05; }
.pbb-stat span { display: block; margin-top: 5px; color: var(--pbb-muted); font-size: .72rem; font-weight: 800; letter-spacing: .055em; text-transform: uppercase; }
.pbb-urgent-bar {
	width: 100% !important;
	max-width: none !important;
	padding: 15px max(20px, calc((100vw - 1180px)/2)) !important;
	background: var(--pbb-red);
	color: #fff;
	align-items: center;
}
.pbb-urgent-bar h3 { margin: 0; color: #fff; font-size: 1.16rem; }
.pbb-urgent-bar p { margin: 2px 0 0; color: rgba(255,255,255,.86); font-size: .86rem; }
.pbb-urgent-bar .pbb-btn { min-height: 43px; background: #fff; color: var(--pbb-red-dark); box-shadow: none; }
.pbb-urgent-bar .pbb-btn:hover { background: var(--pbb-black); color: #fff; }

/* Cards and reusable content. */
.pbb-icon {
	width: 48px;
	height: 48px;
	display: grid;
	place-items: center;
	margin-bottom: 18px;
	border-radius: 8px;
	background: var(--pbb-red-soft);
	color: var(--pbb-red);
}
.pbb-icon svg { width: 25px; height: 25px; }
.pbb-service-card {
	position: relative;
	height: 100%;
	padding: 26px 24px 24px;
	border: 1px solid var(--pbb-line);
	border-top: 4px solid var(--pbb-red);
	background: #fff;
	box-shadow: 0 8px 24px rgba(15,17,20,.055);
	transition: .18s ease;
}
.pbb-service-card:hover { transform: translateY(-4px); box-shadow: var(--pbb-shadow); }
.pbb-service-card h3 { margin-bottom: 9px; font-size: 1.16rem; }
.pbb-service-card p { color: var(--pbb-muted); font-size: .91rem; }
.pbb-card-link { display: inline-flex; align-items: center; gap: 7px; margin-top: 4px; color: var(--pbb-red); text-decoration: none; font-size: .78rem; font-weight: 900; text-transform: uppercase; }
.pbb-card-link svg { width: 17px; }
.pbb-check-list { display: grid; gap: 9px; padding: 0; margin: 22px 0; list-style: none; }
.pbb-check-list li { position: relative; padding-left: 29px; }
.pbb-check-list li::before { content: "✓"; position: absolute; left: 0; top: 0; width: 20px; height: 20px; display: grid; place-items: center; border-radius: 50%; background: var(--pbb-red); color: #fff; font-size: .72rem; font-weight: 900; }
.pbb-note { padding: 15px 17px; border-left: 4px solid var(--pbb-red); background: var(--pbb-red-soft); color: #28506a; font-size: .88rem; }
.pbb-process-step { display: grid; grid-template-columns: 45px 1fr; gap: 16px; padding: 17px 0; border-bottom: 1px solid var(--pbb-line); }
.pbb-process-step:last-child { border-bottom: 0; }
.pbb-step-number { width: 43px; height: 43px; display: grid; place-items: center; border-radius: 50%; background: var(--pbb-red); color: #fff; font-size: .8rem; font-weight: 900; }
.pbb-process-step h3 { margin-bottom: 5px; font-size: 1.05rem; }
.pbb-process-step p { margin: 0; color: var(--pbb-muted); font-size: .9rem; }
.pbb-county-card {
	display: grid;
	grid-template-columns: 39px 1fr auto;
	gap: 13px;
	align-items: center;
	min-height: 94px;
	height: 100%;
	padding: 17px;
	border: 1px solid rgba(255,255,255,.14);
	background: rgba(255,255,255,.055);
	color: #fff;
	text-decoration: none;
	transition: .18s ease;
}
.pbb-county-card:hover { border-color: var(--pbb-red); background: rgba(199,16,29,.2); transform: translateY(-2px); }
.pbb-county-card > span { width: 39px; height: 39px; display: grid; place-items: center; border-radius: 7px; background: var(--pbb-red); }
.pbb-county-card h3 { margin: 0 0 3px; color: #fff; font-size: .98rem; letter-spacing: 0; }
.pbb-county-card p { margin: 0; color: rgba(255,255,255,.62); font-size: .72rem; line-height: 1.35; }
.pbb-county-card b { color: #77d0ff; }
.pbb-contact-box { height: 100%; margin-bottom: 15px; padding: 23px; border: 1px solid var(--pbb-line); border-left: 4px solid var(--pbb-red); background: #fff; }
.pbb-contact-box h3 { margin-bottom: 7px; font-size: 1.1rem; }
.pbb-contact-box p { color: var(--pbb-muted); font-size: .88rem; }
.pbb-contact-box a { color: var(--pbb-red); font-weight: 900; text-decoration: none; }
.pbb-document-card { display: grid; grid-template-columns: 48px 1fr auto; gap: 14px; align-items: center; min-height: 90px; padding: 16px; border: 1px solid var(--pbb-line); border-left: 4px solid var(--pbb-red); background: #fff; text-decoration: none; transition: .18s ease; }
.pbb-document-card:hover { transform: translateY(-2px); box-shadow: var(--pbb-shadow); }
.pbb-document-card .pbb-icon { width: 44px; height: 44px; margin: 0; }
.pbb-document-card strong { display: block; font-size: .94rem; line-height: 1.28; }
.pbb-document-card small { display: block; margin-top: 3px; color: var(--pbb-muted); }
.pbb-document-card > b { color: var(--pbb-red); font-size: .7rem; letter-spacing: .08em; }
.pbb-attorney-card { height: 100%; padding: 24px; border: 1px solid var(--pbb-line); border-top: 4px solid var(--pbb-red); background: #fff; }
.pbb-attorney-card p { color: var(--pbb-muted); font-size: .88rem; }
.pbb-attorney-card a { color: var(--pbb-red); font-weight: 800; }

/* Images are capped and cropped consistently; no oversized content photos. */
.pbb-editable-image, .wpb_single_image img {
	display: block;
	width: 100%;
	max-height: 360px;
	object-fit: cover;
	object-position: center;
	border-radius: 8px;
}
.pbb-image-frame { position: relative; max-width: 560px; margin-inline: auto; padding: 9px; border: 1px solid var(--pbb-line); background: #fff; box-shadow: var(--pbb-shadow); }
.pbb-image-frame::after { content: ""; position: absolute; z-index: -1; right: -10px; bottom: -10px; width: 45%; height: 45%; background: var(--pbb-red); }
.pbb-brand-assets { align-items: center; }
.pbb-brand-assets .wpb_single_image { margin: 0; padding: 18px; border: 1px solid var(--pbb-line); background: #fff; text-align: center; }
.pbb-brand-assets .wpb_single_image img { width: auto; max-width: 230px; max-height: 105px; margin: auto; object-fit: contain; border-radius: 0; }

/* Forms. */
.pbb-form-column { align-self: flex-start; }
.wpcf7, .pbb-form-card { padding: 27px; border: 1px solid var(--pbb-line); border-top: 5px solid var(--pbb-red); background: #fff; box-shadow: var(--pbb-shadow); }
.wpcf7 p { margin-bottom: 12px; }
.wpcf7 label { display: block; color: var(--pbb-black); font-size: .72rem; font-weight: 900; letter-spacing: .045em; text-transform: uppercase; }
.wpcf7 input:not([type="submit"]):not([type="checkbox"]), .wpcf7 textarea, .wpcf7 select {
	width: 100%;
	margin-top: 5px;
	padding: 10px 12px;
	border: 1px solid #ccd0d5;
	border-radius: 5px;
	background: #fff;
	color: var(--pbb-ink);
	outline: none;
}
.wpcf7 input:focus, .wpcf7 textarea:focus, .wpcf7 select:focus { border-color: var(--pbb-red); box-shadow: 0 0 0 3px rgba(199,16,29,.1); }
.wpcf7 textarea { min-height: 100px; resize: vertical; }
.wpcf7 input[type="submit"] { min-height: 48px; padding: 11px 20px; border: 0; border-radius: 5px; background: var(--pbb-red); color: #fff; font-weight: 900; text-transform: uppercase; cursor: pointer; }
.wpcf7 input[type="submit"]:hover { background: var(--pbb-red-dark); }
.wpcf7-list-item { margin-left: 0; }
.wpcf7-list-item label { display: flex; gap: 8px; align-items: flex-start; color: var(--pbb-muted); font-size: .76rem; font-weight: 600; letter-spacing: 0; text-transform: none; }
.wpcf7-response-output { margin: 14px 0 0 !important; border-radius: 4px; }

/* CTA, payment, FAQ, page headings. */
.pbb-cta {
	width: var(--pbb-shell);
	margin: 20px auto 78px;
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 36px;
	padding: 42px 46px;
	border-left: 8px solid var(--pbb-red);
	background: var(--pbb-charcoal);
	color: rgba(255,255,255,.75);
	box-shadow: var(--pbb-shadow);
}
.pbb-cta h2 { max-width: 760px; margin-bottom: 10px; color: #fff; }
.pbb-cta p { max-width: 720px; margin: 0; }
.pbb-cta-actions { margin: 0; min-width: 190px; justify-content: flex-end; }
.pbb-payment-placeholder { padding: 26px; border: 2px dashed #c8ccd1; background: var(--pbb-soft); text-align: center; }
.pbb-payment-placeholder .pbb-icon { margin-inline: auto; }
.vc_tta-container { margin-bottom: 0 !important; }
.vc_tta.vc_general .vc_tta-panel-title > a { padding: 18px 20px !important; color: var(--pbb-black) !important; font-weight: 800; }
.vc_tta.vc_general .vc_tta-panel-body { padding: 0 20px 20px !important; color: var(--pbb-muted); }
.vc_tta-panel, .pbb-faq-item { margin-bottom: 9px !important; border: 1px solid var(--pbb-line) !important; border-left: 4px solid var(--pbb-red) !important; background: #fff; overflow: hidden; }
.pbb-faq-item summary { padding: 17px 19px; font-weight: 800; cursor: pointer; }
.pbb-faq-answer { padding: 0 19px 17px; color: var(--pbb-muted); }
.pbb-page-hero { padding: 56px 0 49px; border-bottom: 5px solid var(--pbb-red); background: linear-gradient(110deg, #17191d, #292d32); }
.pbb-page-hero h1 { max-width: 920px; margin-bottom: 12px; color: #fff; font-size: clamp(2.25rem, 5vw, 3.9rem); }
.pbb-breadcrumb { display: flex; align-items: center; gap: 9px; color: rgba(255,255,255,.62); font-size: .8rem; }
.pbb-breadcrumb a { color: #fff; text-decoration: none; }
.pbb-prose { padding: 65px 0; }

/* Footer. */
.pbb-site-footer { border-top: 6px solid var(--pbb-red); background: var(--pbb-black); color: rgba(255,255,255,.67); }
.pbb-footer-grid { display: grid; grid-template-columns: 1.35fr .75fr 1fr; gap: 55px; padding: 58px 0 45px; }
.pbb-footer-brand img { width: 205px; max-height: 72px; object-fit: contain; object-position: left center; }
.pbb-footer-brand p { max-width: 440px; margin-top: 18px; font-size: .88rem; }
.pbb-footer-since { color: #67c7ff; font-weight: 800; }
.pbb-footer-heading { margin-bottom: 17px; color: #fff; font-size: 1rem; letter-spacing: .04em; text-transform: uppercase; }
.pbb-footer-menu, .pbb-footer-contact { list-style: none; padding: 0; margin: 0; }
.pbb-footer-menu li { margin-bottom: 7px; }
.pbb-footer-menu a { color: rgba(255,255,255,.68); text-decoration: none; font-size: .86rem; }
.pbb-footer-menu a:hover { color: #67c7ff; }
.pbb-footer-contact { display: grid; gap: 12px; }
.pbb-footer-contact li { display: grid; grid-template-columns: 21px 1fr; gap: 10px; align-items: start; font-size: .86rem; }
.pbb-footer-contact svg { color: #67c7ff; }
.pbb-footer-contact a { color: #fff; text-decoration: none; font-weight: 800; }
.pbb-footer-widgets { padding-bottom: 35px; }
.pbb-footer-bottom { border-top: 1px solid rgba(255,255,255,.11); }
.pbb-footer-bottom .pbb-shell { display: flex; justify-content: space-between; gap: 30px; padding: 18px 0; }
.pbb-footer-bottom p { margin: 0; font-size: .7rem; line-height: 1.45; }
.pbb-footer-bottom p:last-child { max-width: 650px; text-align: right; }
.pbb-mobile-call-bar { display: none; }

@media (max-width: 1120px) {
	.pbb-header-inner { grid-template-columns: 190px 1fr auto; gap: 18px; }
	.pbb-header-call { min-width: 205px; }
	.pbb-menu > li > a { padding-inline: 11px; font-size: .72rem; }
	.pbb-nav-action { padding-inline: 12px; }
}

@media (max-width: 960px) {
	body.admin-bar .pbb-site-header { top: 46px; }
	.pbb-header-inner { min-height: 76px; grid-template-columns: 1fr auto; }
	.pbb-brand img, .pbb-brand .custom-logo { width: 170px; max-height: 58px; }
	.pbb-header-message, .pbb-header-call { display: none; }
	.pbb-menu-toggle { display: block; }
	.pbb-nav-wrap { position: absolute; left: 0; right: 0; top: 100%; border-top-width: 3px; opacity: 0; visibility: hidden; transform: translateY(-8px); transition: .18s ease; }
	.pbb-nav-wrap.is-open { opacity: 1; visibility: visible; transform: translateY(0); }
	.pbb-nav-inner { display: block; max-height: calc(100vh - 120px); overflow-y: auto; }
	.pbb-navigation { width: 100%; }
	.pbb-menu { display: block; width: 100%; padding: 10px 0; }
	.pbb-menu > li > a { min-height: 42px; padding: 9px 4px; }
	.pbb-menu .sub-menu { position: static; width: auto; padding: 0 0 0 18px; border: 0; background: rgba(255,255,255,.04); box-shadow: none; opacity: 1; visibility: visible; transform: none; }
	.pbb-menu .sub-menu a { color: rgba(255,255,255,.72); }
	.pbb-nav-actions { display: grid; grid-template-columns: 1fr 1fr; }
	.pbb-nav-action { justify-content: center; min-height: 48px; }
	.pbb-hero-track, .pbb-hero-slide { min-height: 500px; }
	.pbb-hero-overlay { background: linear-gradient(90deg, rgba(9,10,12,.94), rgba(9,10,12,.58)); }
	.pbb-cta { grid-template-columns: 1fr; gap: 22px; }
	.pbb-cta-actions { justify-content: flex-start; }
	.pbb-footer-grid { grid-template-columns: 1fr 1fr; }
	.pbb-footer-brand { grid-column: 1 / -1; }
	.vc_col-sm-3, .pbb-col-1-4 { width: 50%; }
}

@media (max-width: 767px) {
	:root { --pbb-shell: min(100% - 28px, 1180px); }
	body { font-size: 15.5px; }
	.pbb-topbar-address, .pbb-topbar-right { display: none !important; }
	.pbb-topbar-inner { justify-content: center; }
	.pbb-header-inner { min-height: 70px; }
	.pbb-brand img, .pbb-brand .custom-logo { width: 150px; max-height: 52px; }
	.pbb-hero-track, .pbb-hero-slide { min-height: 520px; }
	.pbb-hero-inner { padding: 58px 0 88px; }
	.pbb-hero-copy h1 { font-size: clamp(2.35rem, 11vw, 3.5rem); }
	.pbb-hero-copy p { font-size: .98rem; }
	.pbb-hero-actions .pbb-btn { width: 100%; }
	.pbb-hero-controls { bottom: 20px; }
	.pbb-front-page > .vc_row, .pbb-page-content > .vc_row, .pbb-section { padding-top: 55px; padding-bottom: 55px; }
	.vc_col-sm-6, .vc_col-sm-4, .vc_col-sm-3, .vc_col-sm-8, .pbb-col-1-2, .pbb-col-1-3, .pbb-col-1-4, .pbb-col-2-3 { width: 100%; }
	.vc_column_container > .vc_column-inner { padding-left: 0; padding-right: 0; }
	.pbb-trust-strip { margin-top: 0 !important; padding: 12px !important; }
	.pbb-trust-strip .wpb_column { width: 50%; }
	.pbb-stat { border-right: 0; border-bottom: 1px solid var(--pbb-line); }
	.pbb-trust-strip .wpb_column:nth-last-child(-n+2) .pbb-stat { border-bottom: 0; }
	.pbb-urgent-bar { padding: 18px 14px !important; text-align: center; }
	.pbb-section--soft, .pbb-section--dark { margin-top: 12px !important; margin-bottom: 12px !important; padding: 38px 22px !important; }
	.pbb-editable-image, .wpb_single_image img { max-height: 300px; }
	.pbb-cta { margin-bottom: 70px; padding: 34px 24px; }
	.pbb-footer-grid { grid-template-columns: 1fr; gap: 32px; padding: 50px 0 38px; }
	.pbb-footer-brand { grid-column: auto; }
	.pbb-footer-bottom .pbb-shell { display: block; }
	.pbb-footer-bottom p:last-child { margin-top: 9px; text-align: left; }
	.pbb-mobile-call-bar { position: fixed; z-index: 9999; left: 0; right: 0; bottom: 0; display: grid; grid-template-columns: 1fr 1fr; height: 62px; box-shadow: 0 -8px 22px rgba(0,0,0,.18); }
	.pbb-mobile-call-bar a { display: flex; align-items: center; justify-content: center; gap: 9px; background: var(--pbb-red); color: #fff; text-decoration: none; }
	.pbb-mobile-call-bar a:last-child { background: var(--pbb-charcoal); }
	.pbb-mobile-call-bar svg { width: 22px; height: 22px; }
	.pbb-mobile-call-bar small, .pbb-mobile-call-bar strong { display: block; line-height: 1.1; }
	.pbb-mobile-call-bar small { font-size: .6rem; text-transform: uppercase; }
	.pbb-mobile-call-bar strong { font-size: .84rem; }
	.pbb-has-mobile-call-bar { padding-bottom: 62px; }
}

@media (max-width: 460px) {
	.pbb-brand img, .pbb-brand .custom-logo { width: 137px; }
	.pbb-trust-strip .wpb_column { width: 100%; }
	.pbb-trust-strip .pbb-stat { border-bottom: 1px solid var(--pbb-line) !important; }
	.pbb-trust-strip .wpb_column:last-child .pbb-stat { border-bottom: 0 !important; }
	.pbb-document-card { grid-template-columns: 44px 1fr; }
	.pbb-document-card > b { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	* { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Contact Form 7 grid markup imported with the demo. */
.pbb-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 14px; }
.pbb-form-grid > label:nth-last-of-type(1), .pbb-form-grid > p, .pbb-form-grid > .wpcf7-form-control-wrap:has(textarea), .pbb-form-grid .wpcf7-acceptance { grid-column: 1 / -1; }
.pbb-form-grid label:has(textarea), .pbb-form-grid label:last-of-type { grid-column: 1 / -1; }
@media (max-width: 600px) { .pbb-form-grid { grid-template-columns: 1fr; } .pbb-form-grid > * { grid-column: 1 !important; } }
.wpb_single_image.pbb-brand-asset-image { max-width: 470px; margin: 0 auto 18px; padding: 22px; border: 1px solid var(--pbb-line); background: #fff; text-align: center; }
.wpb_single_image.pbb-brand-asset-image img { width: auto; max-width: 100%; max-height: 170px; margin: auto; object-fit: contain; border-radius: 0; box-shadow: none; }

/* ========================================================================
   V3 WORDPRESS / WPBAKERY COMPATIBILITY LAYER
   These rules intentionally load last. They remove WPBakery's negative row
   margins, floating columns, oversized image output, and theme/plugin spacing
   conflicts so the installed site matches the supplied design consistently.
   ======================================================================== */
html,
body { width: 100%; max-width: 100%; overflow-x: hidden; }
body.pbb-modern-site { background: #fff !important; }
.pbb-site-main { display: block; width: 100%; min-height: 40vh; overflow: clip; }
.pbb-front-page,
.pbb-page-content { display: block; width: 100%; margin: 0; padding: 0; }

/* Reset WPBakery rows without disabling the visual editor structure. */
.pbb-site-main .vc_row,
.pbb-site-main .wpb_row,
.pbb-site-main .vc_row-fluid {
	box-sizing: border-box !important;
	float: none !important;
	clear: both !important;
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: stretch;
	width: min(1180px, calc(100% - 40px)) !important;
	max-width: 1180px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
.pbb-site-main .vc_row::before,
.pbb-site-main .vc_row::after,
.pbb-site-main .wpb_row::before,
.pbb-site-main .wpb_row::after { display: none !important; content: none !important; }

.pbb-site-main .vc_column_container,
.pbb-site-main .wpb_column {
	position: relative;
	float: none !important;
	min-width: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.pbb-site-main .vc_column_container > .vc_column-inner {
	box-sizing: border-box !important;
	width: 100% !important;
	height: 100%;
	padding-left: 15px !important;
	padding-right: 15px !important;
}
.pbb-site-main .wpb_wrapper { width: 100%; height: 100%; }
.pbb-site-main .wpb_content_element { margin-bottom: 0 !important; }
.pbb-site-main .vc_col-sm-12,
.pbb-site-main .pbb-col-1-1 { width: 100% !important; }
.pbb-site-main .vc_col-sm-9,
.pbb-site-main .pbb-col-3-4 { width: 75% !important; }
.pbb-site-main .vc_col-sm-8,
.pbb-site-main .pbb-col-2-3 { width: 66.666667% !important; }
.pbb-site-main .vc_col-sm-6,
.pbb-site-main .pbb-col-1-2 { width: 50% !important; }
.pbb-site-main .vc_col-sm-4,
.pbb-site-main .pbb-col-1-3 { width: 33.333333% !important; }
.pbb-site-main .vc_col-sm-3,
.pbb-site-main .pbb-col-1-4 { width: 25% !important; }

/* Section geometry. */
.pbb-site-main .pbb-section {
	width: min(1180px, calc(100% - 40px)) !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 72px 0 !important;
	row-gap: 30px !important;
}
.pbb-site-main .pbb-section + .pbb-section { border-top: 1px solid #eceef0; }
.pbb-site-main .pbb-section--tight { padding-top: 42px !important; padding-bottom: 42px !important; }
.pbb-site-main .pbb-section--soft,
.pbb-site-main .pbb-section--dark {
	margin-top: 18px !important;
	margin-bottom: 18px !important;
	padding: 58px 36px !important;
	border-radius: 12px;
	border-top: 4px solid var(--pbb-red);
}
.pbb-site-main .pbb-section--soft { background: #f4f8fb !important; }
.pbb-site-main .pbb-section--dark { background: #0a2b45 !important; }
.pbb-site-main .pbb-gap-row { row-gap: 28px !important; }

/* Full-width emergency bar while keeping the content aligned. */
.pbb-front-page > .pbb-urgent-bar,
.pbb-site-main .pbb-urgent-bar {
	left: 50% !important;
	width: 100vw !important;
	max-width: none !important;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
	padding: 16px max(24px, calc((100vw - 1180px) / 2 + 15px)) !important;
	border-radius: 0 !important;
}
.pbb-site-main .pbb-urgent-bar .vc_column-inner { padding-top: 0 !important; }

/* Compact hero. */
.pbb-hero-slider { width: 100%; max-width: 100%; }
.pbb-hero-track,
.pbb-hero-slide { min-height: 460px !important; height: 460px; max-height: 460px; }
.pbb-hero-slide {
	background-repeat: no-repeat;
	background-size: cover !important;
	background-position: center center !important;
}
.pbb-hero-inner { padding: 55px 0 72px !important; }
.pbb-hero-copy { max-width: 670px; }
.pbb-hero-copy h1 { max-width: 670px; font-size: clamp(2.35rem, 4.6vw, 3.85rem) !important; }
.pbb-hero-copy p { max-width: 590px; }
.pbb-hero-controls { bottom: 20px; }

/* Page heading stays compact across all internal pages. */
.pbb-page-hero { padding: 46px 0 40px !important; min-height: 205px; display: flex; align-items: center; }
.pbb-page-hero h1 { font-size: clamp(2rem, 4.2vw, 3.35rem) !important; }

/* All media is constrained. The logo and 24/7 graphic use contain, not crop. */
.pbb-site-main .wpb_single_image,
.pbb-site-main .wpb_single_image .vc_figure,
.pbb-site-main .wpb_single_image .vc_single_image-wrapper {
	display: block !important;
	width: 100% !important;
	max-width: 560px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
.pbb-site-main .wpb_single_image img,
.pbb-site-main img.pbb-editable-image {
	display: block !important;
	width: 100% !important;
	height: 310px !important;
	max-height: 310px !important;
	object-fit: cover !important;
	object-position: center center !important;
	border-radius: 10px !important;
}
.pbb-site-main .pbb-image-frame,
.pbb-site-main .wpb_single_image.pbb-image-frame {
	max-width: 520px !important;
	margin: 0 auto !important;
	padding: 8px !important;
	border: 1px solid var(--pbb-line) !important;
	background: #fff !important;
	box-shadow: 0 14px 36px rgba(5,43,70,.11) !important;
}
.pbb-site-main .pbb-image-frame img { height: 300px !important; max-height: 300px !important; }
.pbb-site-main .wpb_single_image.pbb-brand-asset-image,
.pbb-site-main .pbb-brand-assets .wpb_single_image {
	width: 100% !important;
	max-width: 440px !important;
	margin: 0 auto 18px !important;
	padding: 20px !important;
	border: 1px solid var(--pbb-line) !important;
	background: #fff !important;
	text-align: center !important;
}
.pbb-site-main .wpb_single_image.pbb-brand-asset-image img,
.pbb-site-main .pbb-brand-assets .wpb_single_image img {
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 155px !important;
	margin: auto !important;
	object-fit: contain !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

/* Cards remain equal height and never stretch their images. */
.pbb-service-card,
.pbb-contact-box,
.pbb-attorney-card,
.pbb-document-card,
.pbb-county-card { width: 100%; }
.pbb-service-card { min-height: 250px; }
.pbb-county-card { min-height: 104px; }

/* Forms: override both Contact Form 7 and theme/plugin defaults. */
.pbb-form-column .wpb_wrapper { height: auto; }
.pbb-form-column .wpcf7,
.pbb-page-content .wpcf7,
.pbb-form-card {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 25px !important;
	border: 1px solid var(--pbb-line) !important;
	border-top: 5px solid var(--pbb-red) !important;
	border-radius: 10px;
	background: #fff !important;
	box-shadow: 0 14px 36px rgba(5,43,70,.10) !important;
}
.pbb-form-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 12px 14px !important; }
.pbb-form-grid > p,
.pbb-form-grid .pbb-field-full,
.pbb-form-grid label:has(textarea),
.pbb-form-grid label:last-of-type,
.pbb-form-grid .wpcf7-acceptance { grid-column: 1 / -1 !important; }
.wpcf7 form p { margin: 0 0 12px !important; }
.wpcf7 input:not([type="submit"]):not([type="checkbox"]),
.wpcf7 textarea,
.wpcf7 select,
.pbb-form-card input:not([type="submit"]):not([type="checkbox"]),
.pbb-form-card textarea,
.pbb-form-card select {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: 100% !important;
	min-height: 45px;
	margin-top: 5px !important;
	padding: 10px 12px !important;
	border: 1px solid #d6d9dd !important;
	border-radius: 5px !important;
	background: #fff !important;
}
.wpcf7 textarea,
.pbb-form-card textarea { min-height: 105px !important; }
.pbb-form-fallback-note { margin: 12px 0 !important; color: var(--pbb-muted); font-size: .82rem; }

/* Header/footer sizing is fixed so uploaded logos cannot explode. */
.pbb-brand,
.pbb-brand .custom-logo-link { width: 205px; max-width: 205px; }
.pbb-brand img,
.pbb-brand .custom-logo { width: 195px !important; height: auto !important; max-width: 195px !important; max-height: 64px !important; object-fit: contain !important; }
.pbb-footer-brand .custom-logo-link { display: inline-block; width: 205px; max-width: 205px; }
.pbb-footer-brand img,
.pbb-footer-brand .custom-logo { width: 200px !important; height: auto !important; max-width: 200px !important; max-height: 72px !important; object-fit: contain !important; }

/* Buttons and text wrapping. */
.pbb-btn,
.pbb-nav-action,
.pbb-header-call { white-space: normal; text-align: center; }
.pbb-section-heading h2 { max-width: 850px; }
.pbb-section-heading p { max-width: 760px; }

@media (max-width: 1080px) {
	.pbb-header-message { display: none !important; }
	.pbb-header-inner { grid-template-columns: 1fr auto auto !important; }
	.pbb-menu-toggle { display: block !important; }
	.pbb-nav-wrap {
		position: absolute !important;
		left: 0; right: 0; top: 100%;
		opacity: 0; visibility: hidden; transform: translateY(-8px);
		transition: .18s ease;
	}
	.pbb-nav-wrap.is-open { opacity: 1; visibility: visible; transform: translateY(0); }
	.pbb-nav-inner { display: block !important; max-height: calc(100vh - 110px); overflow-y: auto; }
	.pbb-menu { display: block !important; padding: 9px 0; }
	.pbb-menu > li > a { min-height: 42px !important; padding: 9px 4px !important; }
	.pbb-menu .sub-menu {
		position: static !important; width: auto !important; padding: 0 0 0 18px !important;
		border: 0 !important; background: rgba(255,255,255,.04) !important; box-shadow: none !important;
		opacity: 1 !important; visibility: visible !important; transform: none !important;
	}
	.pbb-menu .sub-menu a { color: rgba(255,255,255,.74) !important; }
	.pbb-nav-actions { display: grid !important; grid-template-columns: 1fr 1fr; }
	.pbb-nav-action { min-height: 49px; justify-content: center; }
}

@media (max-width: 900px) {
	.pbb-site-main .vc_col-sm-3,
	.pbb-site-main .pbb-col-1-4 { width: 50% !important; }
	.pbb-site-main .vc_col-sm-4,
	.pbb-site-main .pbb-col-1-3 { width: 50% !important; }
	.pbb-site-main .pbb-section--soft,
	.pbb-site-main .pbb-section--dark { padding-left: 24px !important; padding-right: 24px !important; }
	.pbb-header-call { min-width: 205px; }
}

@media (max-width: 767px) {
	:root { --pbb-shell: min(100% - 28px, 1180px); }
	.pbb-site-main .vc_row,
	.pbb-site-main .wpb_row,
	.pbb-site-main .vc_row-fluid,
	.pbb-site-main .pbb-section { width: calc(100% - 28px) !important; }
	.pbb-site-main .pbb-section { padding: 52px 0 !important; }
	.pbb-site-main .pbb-section--soft,
	.pbb-site-main .pbb-section--dark { padding: 38px 18px !important; }
	.pbb-site-main .vc_col-sm-12,
	.pbb-site-main .vc_col-sm-9,
	.pbb-site-main .vc_col-sm-8,
	.pbb-site-main .vc_col-sm-6,
	.pbb-site-main .vc_col-sm-4,
	.pbb-site-main .vc_col-sm-3,
	.pbb-site-main [class*="pbb-col-"] { width: 100% !important; }
	.pbb-site-main .vc_column_container > .vc_column-inner { padding-left: 0 !important; padding-right: 0 !important; }
	.pbb-trust-strip .wpb_column,
	.pbb-trust-strip .vc_column_container { width: 50% !important; }
	.pbb-hero-track,
	.pbb-hero-slide { min-height: 430px !important; height: 430px !important; max-height: 430px !important; }
	.pbb-hero-inner { padding: 46px 0 76px !important; }
	.pbb-hero-copy h1 { font-size: clamp(2rem, 9.6vw, 3rem) !important; }
	.pbb-page-hero { min-height: 170px; padding: 36px 0 32px !important; }
	.pbb-site-main .wpb_single_image img,
	.pbb-site-main img.pbb-editable-image { height: 245px !important; max-height: 245px !important; }
	.pbb-site-main .pbb-image-frame img { height: 235px !important; max-height: 235px !important; }
	.pbb-form-grid { grid-template-columns: 1fr !important; }
	.pbb-form-grid > * { grid-column: 1 !important; }
	.pbb-header-call { display: none !important; }
	.pbb-header-inner { grid-template-columns: 1fr auto !important; }
	.pbb-brand,
	.pbb-brand .custom-logo-link { width: 160px; max-width: 160px; }
	.pbb-brand img,
	.pbb-brand .custom-logo { width: 155px !important; max-width: 155px !important; max-height: 54px !important; }
}

@media (max-width: 480px) {
	.pbb-trust-strip .wpb_column,
	.pbb-trust-strip .vc_column_container { width: 100% !important; }
	.pbb-hero-track,
	.pbb-hero-slide { min-height: 455px !important; height: 455px !important; max-height: 455px !important; }
	.pbb-form-column .wpcf7,
	.pbb-page-content .wpcf7,
	.pbb-form-card { padding: 20px !important; }
	.pbb-service-card { min-height: 0; }
}


/* V3.0.1 final sizing pass: compact photography on all internal pages. */
.pbb-hero-track,
.pbb-hero-slide {
	min-height: 420px !important;
	height: 420px !important;
	max-height: 420px !important;
}
.pbb-site-main .wpb_single_image.pbb-page-feature-image {
	max-width: 430px !important;
}
.pbb-site-main .wpb_single_image.pbb-page-feature-image img {
	height: 225px !important;
	max-height: 225px !important;
	object-fit: cover !important;
}
.pbb-site-main .wpb_single_image.pbb-page-brand-image img {
	height: auto !important;
	max-height: 145px !important;
	object-fit: contain !important;
}
@media (max-width: 767px) {
	.pbb-hero-track,
	.pbb-hero-slide {
		min-height: 400px !important;
		height: 400px !important;
		max-height: 400px !important;
	}
	.pbb-site-main .wpb_single_image.pbb-page-feature-image img {
		height: 205px !important;
		max-height: 205px !important;
	}
}
@media (max-width: 480px) {
	.pbb-hero-track,
	.pbb-hero-slide {
		min-height: 430px !important;
		height: 430px !important;
		max-height: 430px !important;
	}
}

/* Stacked contact boxes must size to their content, not the full parent row. */
.pbb-site-main .pbb-contact-box { height: auto !important; min-height: 0 !important; }
@media (max-width: 767px) {
	.pbb-site-main .pbb-urgent-bar .vc_column_container { width: 100% !important; }
	.pbb-site-main .pbb-urgent-bar .vc_col-sm-4 .wpb_wrapper {
		justify-content: center !important;
		margin-top: 10px !important;
	}
}


/* Philadelphia V1 blue brand and hard layout guardrails. */
html, body { max-width: 100%; overflow-x: clip; }
:root { --pbb-red: #0878bd; --pbb-red-dark: #055484; --pbb-red-soft: #eef8fe; --pbb-black: #071a2b; --pbb-charcoal: #0a2b45; }
.pbb-topbar { background: #061827; }
.pbb-nav-wrap { background: #0a2b45; }
.pbb-page-hero { background: linear-gradient(110deg, #071a2b, #0e4166) !important; }
.pbb-site-footer { background: #061827; }
.pbb-footer-bottom { background: #04121e; }
.pbb-brand .custom-logo-link { padding: 4px 0; }
.pbb-brand img, .pbb-brand .custom-logo { width: 212px !important; max-width: 212px !important; max-height: 72px !important; }
.pbb-footer-brand img, .pbb-footer-brand .custom-logo { width: 220px !important; max-width: 220px !important; max-height: 92px !important; }
.pbb-hero-overlay { background: linear-gradient(90deg, rgba(4,20,34,.95) 0%, rgba(4,31,51,.86) 46%, rgba(5,56,89,.40) 78%, rgba(4,20,34,.18) 100%); }
.pbb-site-main .vc_row, .pbb-site-main .wpb_row { max-width: 1180px !important; }
.pbb-site-main .pbb-urgent-bar, .pbb-site-main .pbb-trust-strip { max-width: none !important; }
.pbb-site-main .wpb_single_image.pbb-logo-image img { height: auto !important; max-height: 155px !important; object-fit: contain !important; border-radius: 0 !important; }
.pbb-site-main .wpb_single_image.pbb-payment-logo img { height: auto !important; max-height: 105px !important; object-fit: contain !important; border-radius: 0 !important; }
.pbb-site-main .wpb_single_image.pbb-bailrep-image img { height: auto !important; max-height: 72px !important; object-fit: contain !important; border-radius: 0 !important; }
.pbb-service-card, .pbb-contact-box, .pbb-attorney-card, .pbb-document-card, .pbb-county-card { overflow-wrap: anywhere; }
.pbb-page-content table { width: 100%; max-width: 100%; border-collapse: collapse; }
.pbb-page-content iframe { max-width: 100%; }
@media (max-width: 1080px) { .pbb-site-header { position: sticky; } }
@media (max-width: 767px) {
  .pbb-brand, .pbb-brand .custom-logo-link { width: 175px !important; max-width: 175px !important; }
  .pbb-brand img, .pbb-brand .custom-logo { width: 170px !important; max-width: 170px !important; max-height: 62px !important; }
  .pbb-topbar-address { display: none !important; }
  .pbb-page-content .pbb-btn { width: auto; max-width: 100%; }
}


/* ========================================================================
   V1.1 PROFESSIONAL ALIGNMENT FIX
   Corrects the hero, homepage call/request bar and footer contact column.
   Kept at the end so it reliably wins over WPBakery and cached legacy rules.
   ======================================================================== */

/* Hero: normal proportions, vertically centered copy and no cropped controls. */
body.pbb-modern-site .pbb-hero-slider {
	position: relative !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	overflow: hidden !important;
	background: #071a2b !important;
}
body.pbb-modern-site .pbb-hero-track,
body.pbb-modern-site .pbb-hero-slide {
	height: clamp(500px, 45vw, 550px) !important;
	min-height: 500px !important;
	max-height: 550px !important;
}
body.pbb-modern-site .pbb-hero-slide {
	display: flex !important;
	align-items: center !important;
	background-position: center 44% !important;
	background-size: cover !important;
	transform: none !important;
}
body.pbb-modern-site .pbb-hero-slide.is-active { transform: none !important; }
body.pbb-modern-site .pbb-hero-overlay {
	background: linear-gradient(90deg, rgba(3,20,34,.96) 0%, rgba(4,31,51,.91) 43%, rgba(6,58,92,.56) 72%, rgba(3,20,34,.22) 100%) !important;
}
body.pbb-modern-site .pbb-hero-inner {
	display: flex !important;
	align-items: center !important;
	width: min(1180px, calc(100% - 40px)) !important;
	height: 100% !important;
	margin: 0 auto !important;
	padding: 44px 0 76px !important;
}
body.pbb-modern-site .pbb-hero-copy {
	width: min(690px, 66%) !important;
	max-width: 690px !important;
}
body.pbb-modern-site .pbb-hero-copy h1 {
	max-width: 680px !important;
	margin: 0 0 16px !important;
	font-size: clamp(2.45rem, 4.15vw, 3.75rem) !important;
	line-height: 1.04 !important;
	letter-spacing: -.035em !important;
}
body.pbb-modern-site .pbb-hero-copy p {
	max-width: 600px !important;
	margin: 0 !important;
	font-size: clamp(.98rem, 1.25vw, 1.1rem) !important;
	line-height: 1.55 !important;
}
body.pbb-modern-site .pbb-hero-actions {
	align-items: center !important;
	margin-top: 24px !important;
}
body.pbb-modern-site .pbb-hero-actions .pbb-btn {
	min-width: 170px !important;
	min-height: 48px !important;
	padding: 11px 19px !important;
}
body.pbb-modern-site .pbb-hero-controls {
	bottom: 22px !important;
	width: min(1180px, calc(100% - 40px)) !important;
}

/* Homepage call/request bar: one clean full-width band with aligned inner content. */
body.pbb-modern-site .pbb-site-main .pbb-urgent-bar,
body.pbb-modern-site .pbb-site-main .pbb-home-action-bar {
	position: relative !important;
	left: auto !important;
	right: auto !important;
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	max-width: none !important;
	min-height: 90px !important;
	margin: 0 !important;
	padding: 18px max(20px, calc((100vw - 1180px) / 2)) !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: linear-gradient(90deg, #0878bd, #0669a5) !important;
	box-shadow: 0 10px 28px rgba(5,43,70,.14) !important;
	overflow: hidden !important;
	transform: none !important;
}
body.pbb-modern-site .pbb-site-main .pbb-urgent-bar::before,
body.pbb-modern-site .pbb-site-main .pbb-urgent-bar::after,
body.pbb-modern-site .pbb-site-main .pbb-home-action-bar::before,
body.pbb-modern-site .pbb-site-main .pbb-home-action-bar::after {
	display: none !important;
	content: none !important;
}
body.pbb-modern-site .pbb-urgent-bar > .vc_column_container,
body.pbb-modern-site .pbb-home-action-bar > .vc_column_container {
	display: flex !important;
	align-items: center !important;
	float: none !important;
	min-width: 0 !important;
}
body.pbb-modern-site .pbb-urgent-bar > .vc_column_container:first-child,
body.pbb-modern-site .pbb-home-action-bar > .vc_column_container:first-child {
	width: 64% !important;
}
body.pbb-modern-site .pbb-urgent-bar > .vc_column_container:last-child,
body.pbb-modern-site .pbb-home-action-bar > .vc_column_container:last-child {
	width: 36% !important;
}
body.pbb-modern-site .pbb-urgent-bar .vc_column-inner,
body.pbb-modern-site .pbb-home-action-bar .vc_column-inner {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	height: auto !important;
	padding: 0 15px !important;
}
body.pbb-modern-site .pbb-urgent-bar .wpb_wrapper,
body.pbb-modern-site .pbb-home-action-bar .wpb_wrapper {
	width: 100% !important;
	height: auto !important;
}
body.pbb-modern-site .pbb-urgent-bar .wpb_text_column,
body.pbb-modern-site .pbb-home-action-bar .wpb_text_column {
	width: 100% !important;
}
body.pbb-modern-site .pbb-urgent-bar h3,
body.pbb-modern-site .pbb-home-action-bar h3 {
	margin: 0 0 3px !important;
	font-size: clamp(1.08rem, 1.7vw, 1.35rem) !important;
	line-height: 1.2 !important;
}
body.pbb-modern-site .pbb-urgent-bar p,
body.pbb-modern-site .pbb-home-action-bar p {
	margin: 0 !important;
	line-height: 1.45 !important;
}
body.pbb-modern-site .pbb-urgent-bar > .vc_column_container:last-child .wpb_text_column .wpb_wrapper > div,
body.pbb-modern-site .pbb-home-action-links {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 10px !important;
	width: 100% !important;
	margin: 0 !important;
}
body.pbb-modern-site .pbb-urgent-bar .pbb-btn,
body.pbb-modern-site .pbb-home-action-bar .pbb-btn {
	flex: 0 1 auto !important;
	min-width: 145px !important;
	min-height: 46px !important;
	margin: 0 !important;
	padding: 10px 16px !important;
	white-space: nowrap !important;
}

/* Footer: balanced columns and a modern two-column contact card layout. */
body.pbb-modern-site .pbb-footer-grid {
	grid-template-columns: minmax(0, 1.25fr) minmax(175px, .65fr) minmax(360px, 1.2fr) !important;
	align-items: start !important;
	gap: clamp(32px, 4.5vw, 64px) !important;
	padding-top: 54px !important;
	padding-bottom: 44px !important;
}
body.pbb-modern-site .pbb-footer-grid > * { min-width: 0 !important; }
body.pbb-modern-site .pbb-footer-contact-column { min-width: 0 !important; }
body.pbb-modern-site .pbb-footer-contact {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 10px !important;
}
body.pbb-modern-site .pbb-footer-contact-item {
	display: grid !important;
	grid-template-columns: 24px minmax(0, 1fr) !important;
	align-items: start !important;
	gap: 10px !important;
	min-width: 0 !important;
	padding: 13px !important;
	border: 1px solid rgba(255,255,255,.1) !important;
	border-radius: 7px !important;
	background: rgba(255,255,255,.045) !important;
	font-size: .82rem !important;
	line-height: 1.35 !important;
}
body.pbb-modern-site .pbb-footer-contact-item--address,
body.pbb-modern-site .pbb-footer-contact-item--fax {
	grid-column: 1 / -1 !important;
}
body.pbb-modern-site .pbb-footer-contact-item svg {
	width: 20px !important;
	height: 20px !important;
	margin-top: 2px !important;
}
body.pbb-modern-site .pbb-footer-contact-item span { min-width: 0 !important; }
body.pbb-modern-site .pbb-footer-contact-item small {
	display: block !important;
	margin-bottom: 4px !important;
	color: #67c7ff !important;
	font-size: .63rem !important;
	font-weight: 900 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
}
body.pbb-modern-site .pbb-footer-contact-item strong,
body.pbb-modern-site .pbb-footer-contact-item a {
	display: block !important;
	color: #fff !important;
	font-size: .86rem !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	text-decoration: none !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

@media (max-width: 1020px) {
	body.pbb-modern-site .pbb-footer-grid {
		grid-template-columns: 1.25fr .75fr !important;
	}
	body.pbb-modern-site .pbb-footer-contact-column {
		grid-column: 1 / -1 !important;
	}
	body.pbb-modern-site .pbb-footer-contact {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}
	body.pbb-modern-site .pbb-footer-contact-item--address { grid-column: span 2 !important; }
	body.pbb-modern-site .pbb-footer-contact-item--fax { grid-column: auto !important; }
}

@media (max-width: 767px) {
	body.pbb-modern-site .pbb-hero-track,
	body.pbb-modern-site .pbb-hero-slide {
		height: 540px !important;
		min-height: 540px !important;
		max-height: 540px !important;
	}
	body.pbb-modern-site .pbb-hero-slide { background-position: 62% center !important; }
	body.pbb-modern-site .pbb-hero-overlay {
		background: linear-gradient(90deg, rgba(3,20,34,.97) 0%, rgba(4,31,51,.92) 70%, rgba(4,31,51,.68) 100%) !important;
	}
	body.pbb-modern-site .pbb-hero-inner {
		width: calc(100% - 28px) !important;
		padding: 38px 0 76px !important;
	}
	body.pbb-modern-site .pbb-hero-copy {
		width: 100% !important;
		max-width: 590px !important;
	}
	body.pbb-modern-site .pbb-hero-copy h1 {
		font-size: clamp(2.05rem, 10vw, 3rem) !important;
		line-height: 1.06 !important;
	}
	body.pbb-modern-site .pbb-hero-copy p { font-size: .97rem !important; }
	body.pbb-modern-site .pbb-hero-actions .pbb-btn {
		min-width: 0 !important;
		width: auto !important;
		max-width: 100% !important;
	}
	body.pbb-modern-site .pbb-hero-controls { width: calc(100% - 28px) !important; }

	body.pbb-modern-site .pbb-site-main .pbb-urgent-bar,
	body.pbb-modern-site .pbb-site-main .pbb-home-action-bar {
		display: block !important;
		min-height: 0 !important;
		padding: 20px 14px !important;
	}
	body.pbb-modern-site .pbb-urgent-bar > .vc_column_container,
	body.pbb-modern-site .pbb-home-action-bar > .vc_column_container,
	body.pbb-modern-site .pbb-urgent-bar > .vc_column_container:first-child,
	body.pbb-modern-site .pbb-urgent-bar > .vc_column_container:last-child,
	body.pbb-modern-site .pbb-home-action-bar > .vc_column_container:first-child,
	body.pbb-modern-site .pbb-home-action-bar > .vc_column_container:last-child {
		width: 100% !important;
	}
	body.pbb-modern-site .pbb-urgent-bar .vc_column-inner,
	body.pbb-modern-site .pbb-home-action-bar .vc_column-inner { padding: 0 !important; }
	body.pbb-modern-site .pbb-urgent-bar > .vc_column_container:last-child .wpb_text_column .wpb_wrapper > div,
	body.pbb-modern-site .pbb-home-action-links {
		justify-content: flex-start !important;
		flex-wrap: wrap !important;
		margin-top: 14px !important;
	}
	body.pbb-modern-site .pbb-urgent-bar .pbb-btn,
	body.pbb-modern-site .pbb-home-action-bar .pbb-btn {
		flex: 1 1 145px !important;
		white-space: normal !important;
	}

	body.pbb-modern-site .pbb-footer-grid {
		grid-template-columns: 1fr !important;
		gap: 34px !important;
		padding-top: 44px !important;
	}
	body.pbb-modern-site .pbb-footer-contact-column { grid-column: auto !important; }
	body.pbb-modern-site .pbb-footer-contact {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
	body.pbb-modern-site .pbb-footer-contact-item--address { grid-column: 1 / -1 !important; }
	body.pbb-modern-site .pbb-footer-contact-item--fax { grid-column: auto !important; }
	body.pbb-modern-site .pbb-footer-bottom .pbb-shell {
		display: block !important;
	}
	body.pbb-modern-site .pbb-footer-bottom p:last-child {
		max-width: none !important;
		margin-top: 8px !important;
		text-align: left !important;
	}
}

@media (max-width: 480px) {
	body.pbb-modern-site .pbb-hero-track,
	body.pbb-modern-site .pbb-hero-slide {
		height: 565px !important;
		min-height: 565px !important;
		max-height: 565px !important;
	}
	body.pbb-modern-site .pbb-hero-actions {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 9px !important;
	}
	body.pbb-modern-site .pbb-hero-actions .pbb-btn { width: 100% !important; }
	body.pbb-modern-site .pbb-footer-contact { grid-template-columns: 1fr !important; }
	body.pbb-modern-site .pbb-footer-contact-item,
	body.pbb-modern-site .pbb-footer-contact-item--address,
	body.pbb-modern-site .pbb-footer-contact-item--fax { grid-column: auto !important; }
}

/* V1.1.1 footer flex fallback: avoids narrow nested grid columns in builders. */
body.pbb-modern-site .pbb-footer-grid {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important;
}
body.pbb-modern-site .pbb-footer-grid > .pbb-footer-brand {
	flex: 1.25 1 0 !important;
}
body.pbb-modern-site .pbb-footer-grid > div:nth-child(2) {
	flex: 0 0 190px !important;
}
body.pbb-modern-site .pbb-footer-grid > .pbb-footer-contact-column {
	flex: 1.2 1 360px !important;
}
body.pbb-modern-site .pbb-footer-contact {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: stretch !important;
}
body.pbb-modern-site .pbb-footer-contact-item {
	flex: 1 1 calc(50% - 5px) !important;
	width: auto !important;
}
body.pbb-modern-site .pbb-footer-contact-item--address,
body.pbb-modern-site .pbb-footer-contact-item--fax {
	flex-basis: 100% !important;
	grid-column: auto !important;
}
body.pbb-modern-site .pbb-hero-slide {
	left: 0 !important;
	right: 0 !important;
	top: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	max-width: none !important;
}
@media (max-width: 1020px) {
	body.pbb-modern-site .pbb-footer-grid { flex-wrap: wrap !important; }
	body.pbb-modern-site .pbb-footer-grid > .pbb-footer-brand { flex: 1 1 calc(100% - 250px) !important; }
	body.pbb-modern-site .pbb-footer-grid > div:nth-child(2) { flex: 0 0 210px !important; }
	body.pbb-modern-site .pbb-footer-grid > .pbb-footer-contact-column { flex: 1 1 100% !important; }
	body.pbb-modern-site .pbb-footer-contact-item--address { flex-basis: calc(50% - 5px) !important; }
	body.pbb-modern-site .pbb-footer-contact-item--fax { flex-basis: calc(25% - 8px) !important; }
	body.pbb-modern-site .pbb-footer-contact-item:not(.pbb-footer-contact-item--address):not(.pbb-footer-contact-item--fax) { flex-basis: calc(25% - 8px) !important; }
}
@media (max-width: 767px) {
	body.pbb-modern-site .pbb-footer-grid {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
	}
	body.pbb-modern-site .pbb-footer-grid > .pbb-footer-brand,
	body.pbb-modern-site .pbb-footer-grid > div:nth-child(2),
	body.pbb-modern-site .pbb-footer-grid > .pbb-footer-contact-column {
		flex: 0 0 auto !important;
		width: 100% !important;
	}
	body.pbb-modern-site .pbb-footer-contact-item,
	body.pbb-modern-site .pbb-footer-contact-item--address,
	body.pbb-modern-site .pbb-footer-contact-item--fax,
	body.pbb-modern-site .pbb-footer-contact-item:not(.pbb-footer-contact-item--address):not(.pbb-footer-contact-item--fax) {
		flex: 1 1 calc(50% - 5px) !important;
	}
}
@media (max-width: 480px) {
	body.pbb-modern-site .pbb-footer-contact-item,
	body.pbb-modern-site .pbb-footer-contact-item--address,
	body.pbb-modern-site .pbb-footer-contact-item--fax,
	body.pbb-modern-site .pbb-footer-contact-item:not(.pbb-footer-contact-item--address):not(.pbb-footer-contact-item--fax) {
		flex-basis: 100% !important;
	}
}

/* V1.1.2 deterministic sizing for hosts/browsers that alter clamp or flex-basis. */
body.pbb-modern-site .pbb-hero-track,
body.pbb-modern-site .pbb-hero-slide {
	height: 520px !important;
	min-height: 520px !important;
	max-height: 520px !important;
}
body.pbb-modern-site .pbb-footer-contact-item {
	flex: 0 0 calc(50% - 5px) !important;
	width: calc(50% - 5px) !important;
}
body.pbb-modern-site .pbb-footer-contact-item--address,
body.pbb-modern-site .pbb-footer-contact-item--fax {
	flex: 0 0 100% !important;
	width: 100% !important;
}
@media (max-width: 767px) {
	body.pbb-modern-site .pbb-hero-track,
	body.pbb-modern-site .pbb-hero-slide {
		height: 540px !important;
		min-height: 540px !important;
		max-height: 540px !important;
	}
	body.pbb-modern-site .pbb-footer-contact-item,
	body.pbb-modern-site .pbb-footer-contact-item--address,
	body.pbb-modern-site .pbb-footer-contact-item--fax {
		flex: 0 0 calc(50% - 5px) !important;
		width: calc(50% - 5px) !important;
	}
}
@media (max-width: 480px) {
	body.pbb-modern-site .pbb-hero-track,
	body.pbb-modern-site .pbb-hero-slide {
		height: 565px !important;
		min-height: 565px !important;
		max-height: 565px !important;
	}
	body.pbb-modern-site .pbb-footer-contact-item,
	body.pbb-modern-site .pbb-footer-contact-item--address,
	body.pbb-modern-site .pbb-footer-contact-item--fax {
		flex-basis: 100% !important;
		width: 100% !important;
	}
}

/* V1.1.3 explicit footer contact columns: prevents all contact details stacking. */
body.pbb-modern-site .pbb-footer-contact {
	display: block !important;
	font-size: 0 !important;
}
body.pbb-modern-site .pbb-footer-contact-item {
	display: inline-grid !important;
	vertical-align: top !important;
	width: calc(50% - 5px) !important;
	margin: 0 10px 10px 0 !important;
	font-size: .82rem !important;
}
body.pbb-modern-site .pbb-footer-contact-item:nth-child(3) {
	margin-right: 0 !important;
}
body.pbb-modern-site .pbb-footer-contact-item--address,
body.pbb-modern-site .pbb-footer-contact-item--fax {
	display: grid !important;
	width: 100% !important;
	margin-right: 0 !important;
}
@media (max-width: 480px) {
	body.pbb-modern-site .pbb-footer-contact-item,
	body.pbb-modern-site .pbb-footer-contact-item--address,
	body.pbb-modern-site .pbb-footer-contact-item--fax {
		display: grid !important;
		width: 100% !important;
		margin-right: 0 !important;
	}
}

/* V1.1.4 — simplified, deterministic three-column footer. */
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-grid--simple {
	display: grid !important;
	grid-template-columns: minmax(0, 1.15fr) minmax(170px, .55fr) minmax(300px, 1.1fr) !important;
	align-items: start !important;
	gap: clamp(32px, 4vw, 62px) !important;
	width: var(--pbb-shell) !important;
	margin: 0 auto !important;
	padding: 54px 0 46px !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-grid--simple > .pbb-footer-column,
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-grid--simple > .pbb-footer-brand,
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-grid--simple > .pbb-footer-links-column,
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-grid--simple > .pbb-footer-map-column {
	display: block !important;
	grid-column: auto !important;
	flex: none !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-brand .custom-logo-link {
	display: inline-block !important;
	width: auto !important;
	max-width: 225px !important;
	margin: 0 0 20px !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-brand img,
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-brand .custom-logo {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 225px !important;
	max-height: 88px !important;
	margin: 0 !important;
	object-fit: contain !important;
	object-position: left center !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-brand p {
	max-width: 430px !important;
	margin: 0 !important;
	color: rgba(255,255,255,.72) !important;
	font-size: .91rem !important;
	line-height: 1.75 !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-heading {
	margin: 2px 0 20px !important;
	padding: 0 0 11px !important;
	border-bottom: 1px solid rgba(255,255,255,.14) !important;
	color: #fff !important;
	font-size: 1rem !important;
	line-height: 1.25 !important;
	letter-spacing: .055em !important;
	text-transform: uppercase !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-menu--four-links {
	display: block !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-menu--four-links li {
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: 1px solid rgba(255,255,255,.09) !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-menu--four-links li:last-child {
	border-bottom: 0 !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-menu--four-links a {
	display: flex !important;
	align-items: center !important;
	min-height: 44px !important;
	padding: 9px 2px !important;
	color: rgba(255,255,255,.78) !important;
	font-size: .91rem !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	text-decoration: none !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-menu--four-links a::before {
	content: "›" !important;
	margin-right: 10px !important;
	color: #67c7ff !important;
	font-size: 1.25rem !important;
	line-height: 1 !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-menu--four-links a:hover,
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-menu--four-links a:focus {
	color: #fff !important;
	transform: translateX(3px) !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-map {
	overflow: hidden !important;
	width: 100% !important;
	height: 230px !important;
	margin: 0 !important;
	border: 1px solid rgba(255,255,255,.16) !important;
	border-radius: 8px !important;
	background: #0b2233 !important;
	box-shadow: 0 14px 28px rgba(0,0,0,.18) !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-map iframe {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	border: 0 !important;
}
body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-address {
	margin: 12px 0 0 !important;
	color: rgba(255,255,255,.72) !important;
	font-size: .82rem !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
}

@media (max-width: 980px) {
	body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-grid--simple {
		grid-template-columns: minmax(0, 1fr) minmax(160px, .55fr) !important;
		gap: 38px !important;
	}
	body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-map-column {
		grid-column: 1 / -1 !important;
	}
	body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-map {
		height: 260px !important;
	}
}

@media (max-width: 680px) {
	body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-grid--simple {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 34px !important;
		width: var(--pbb-shell) !important;
		padding: 44px 0 36px !important;
	}
	body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-map-column {
		grid-column: auto !important;
	}
	body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-brand .custom-logo-link,
	body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-brand img,
	body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-brand .custom-logo {
		max-width: 205px !important;
	}
	body.pbb-modern-site .pbb-site-footer--three-column .pbb-footer-map {
		height: 230px !important;
	}
}
