/*
Theme Name: Wash & Thomas Child
Template: flat-bootstrap
Description: Light modern refresh of the Flat Bootstrap theme for Wash & Thomas Attorneys. All overrides live here so parent theme code is never edited.
Version: 1.0.0
Text Domain: washthomas-child
*/

:root {
	--wt-navy: #0b1f5c;
	--wt-blue: #1a3a9c;
	--wt-accent: #80270f;
	--wt-accent-dark: #5f1c0a;
	--wt-gold: #c9a24b;
	--wt-light: #f4f6fb;
}

/* Typography: remove old zoom hack, use modern readable type */
body {
	zoom: 1;
	font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
	font-weight: 400;
	font-size: 17px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, .content-header h1 {
	font-family: "Playfair Display", Georgia, serif;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.25;
}

/* Navigation: clean white bar, animated gold underline, card-style dropdowns */
.navbar-default {
	background: #fff; border: 0; border-bottom: 3px solid var(--wt-gold);
	box-shadow: 0 4px 16px rgba(11, 31, 92, .08); margin-bottom: 0;
}
.navbar-default .navbar-nav > li { top: 0; }
.navbar-default .navbar-nav > li > a {
	position: relative; color: var(--wt-navy) !important; background: transparent !important;
	font-family: "Inter", Arial, sans-serif; font-weight: 600 !important; font-size: 14px;
	letter-spacing: .06em; text-transform: uppercase; padding: 22px 16px; margin: 0; border: 0;
	transition: color .2s;
}
.navbar-default .navbar-nav > li > a::after {
	content: ""; position: absolute; left: 16px; right: 16px; bottom: 0; height: 3px;
	background: var(--wt-accent); transform: scaleX(0); transform-origin: left; transition: transform .25s ease;
}
.navbar-default .navbar-nav > li:hover > a,
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus,
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active:hover > a { color: var(--wt-accent) !important; background: transparent !important; border: 0; }
.navbar-default .navbar-nav > li:hover > a::after,
.navbar-default .navbar-nav > .open > a::after,
.navbar-default .navbar-nav > .active > a::after { transform: scaleX(1); }
.navbar-default .navbar-nav > li > a .caret { margin-left: 4px; border-top-color: currentColor; border-bottom-color: currentColor; }

/* Dropdown card */
.navbar-default .dropdown-menu {
	min-width: 250px; margin: 0; padding: 10px; background: #fff; border: 1px solid #e2e7f3; border-top: 3px solid var(--wt-gold);
	border-radius: 0 0 12px 12px; box-shadow: 0 18px 40px rgba(11, 31, 92, .18);
}
.navbar-default .dropdown-menu > li > a {
	display: block; padding: 10px 14px; border-radius: 8px; color: var(--wt-navy) !important;
	font-size: 15px; font-weight: 500; letter-spacing: 0; text-transform: none; white-space: normal;
	transition: background .15s, color .15s, padding-left .15s;
}
.navbar-default .dropdown-menu > li > a:hover,
.navbar-default .dropdown-menu > li > a:focus,
.navbar-default .dropdown-menu > .active > a { background: var(--wt-light) !important; color: var(--wt-accent) !important; padding-left: 20px; }

@media (min-width: 992px) {
	.navbar-default .navbar-nav { margin-left: -16px; }
	/* open on hover with a soft fade (click and keyboard still work through Bootstrap) */
	.navbar-default .navbar-nav > li > .dropdown-menu {
		display: block; opacity: 0; visibility: hidden; transform: translateY(10px);
		transition: opacity .2s ease, transform .2s ease, visibility .2s;
	}
	.navbar-default .navbar-nav > li:hover > .dropdown-menu,
	.navbar-default .navbar-nav > li.open > .dropdown-menu,
	.navbar-default .navbar-nav > li:focus-within > .dropdown-menu { opacity: 1; visibility: visible; transform: none; }
}
@media (min-width: 992px) {
	/* second-level items fly out to the right instead of expanding inside the card */
	.navbar-default .dropdown-menu > li { position: relative; }
	.navbar-default .dropdown-menu .dropdown-menu {
		position: absolute; top: -13px; left: 100%; margin-left: 4px; min-width: 260px; display: block;
		opacity: 0; visibility: hidden; transform: translateX(8px); transition: opacity .2s, transform .2s, visibility .2s;
	}
	.navbar-default .dropdown-menu > li:hover > .dropdown-menu,
	.navbar-default .dropdown-menu > li:focus-within > .dropdown-menu { opacity: 1; visibility: visible; transform: none; }
	.navbar-default .dropdown-menu > li.dropdown > a .caret { transform: rotate(-90deg); float: right; margin-top: 8px; }
}
@media (max-width: 991px) {
	.navbar-default .navbar-nav > li > a { padding: 14px 16px; }
	.navbar-default .navbar-nav > li > a::after { display: none; }
	.navbar-default .dropdown-menu { box-shadow: none; border: 0; border-left: 3px solid var(--wt-gold); border-radius: 0; background: var(--wt-light); }
}

/* Buttons */
.btn, .btn-primary, input[type=submit], button[type=submit] {
	background: var(--wt-accent);
	border: 0;
	border-radius: 6px;
	box-shadow: 0 3px 8px rgba(0, 0, 0, .25);
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
	transition: background .2s, transform .2s;
}
.btn:hover, .btn-primary:hover, input[type=submit]:hover, button[type=submit]:hover {
	background: var(--wt-accent-dark);
	transform: translateY(-1px);
}

/* Section banner bars (e.g. EMPLOYMENT DISCRIMINATION) */
h2[style*="background"], .section-heading {
	border-radius: 6px;
}

/* Contact forms: soft card instead of heavy images/shadows */
#wpcf7-f80-p6-o1, #wpcf7-f80-p278-o1, #wpcf7-f80-p6-o2 {
	background: var(--wt-accent);
	border-radius: 10px 10px 0 0;
	box-shadow: 0 10px 28px rgba(0, 0, 0, .3);
}
#wpcf7-f80-o2, #wpcf7-f80-o1 {
	background: var(--wt-blue);
	border-radius: 10px 10px 0 0;
	box-shadow: 0 10px 28px rgba(0, 0, 0, .3);
}
#lower-frm-bg, #lower-frm-bg-blu {
	background: var(--wt-accent-dark);
	border-radius: 0 0 10px 10px;
	box-shadow: 0 10px 28px rgba(0, 0, 0, .3);
}
.wpcf7 input[type=text], .wpcf7 input[type=email], .wpcf7 input[type=tel],
.wpcf7 select, .wpcf7 textarea {
	border: 1px solid #d5dbea;
	border-radius: 6px;
	padding: 10px 12px;
}

/* Footer */
.sidebar-footer { background: #101a3d; }
.after-footer { background: #0a1230; }
.sidebar-footer a:hover:not(.btn), .footer-nav-menu a:hover:not(.btn) { color: var(--wt-gold); }

/* Images: slightly rounded and consistent */
.entry-content img:not(.aligncenter) { border-radius: 6px; }

/* Readable breadcrumbs on the navy background */
.breadcrumb, .breadcrumb a, .breadcrumbs, .breadcrumbs a { color: #c9d4f5; }
.breadcrumb a:hover, .breadcrumbs a:hover { color: var(--wt-gold); }

/* ---------- Top bar ---------- */
.wt-topbar { background: #fff; }
.wt-topbar-inner {
	max-width: 1200px; margin: 0 auto; padding: 10px 20px;
	display: flex; align-items: center; justify-content: space-between; gap: 20px;
}
.wt-logo img { height: 112px; width: auto; display: block; }
.wt-topbar-cta { display: flex; align-items: center; gap: 14px; }
.wt-call-label { font-size: 13px; text-transform: uppercase; letter-spacing: .1em; color: #6b7694; }
.wt-phone { font-family: "Playfair Display", Georgia, serif; font-size: 26px; font-weight: 700; color: var(--wt-navy); text-decoration: none; }
.wt-btn { color: #fff !important; padding: 11px 22px; }
.wt-btn-ghost {
	color: var(--wt-navy) !important; background: transparent; border: 2px solid var(--wt-navy);
	border-radius: 6px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em;
}
.wt-btn-ghost:hover { background: var(--wt-navy); color: #fff !important; }
.wt-btn-lg { padding: 14px 28px; font-size: 15px; }

/* ---------- Hero ---------- */
.wt-hero { position: relative; background: linear-gradient(100deg, #ffffff 0%, #f1f4fb 60%, #e8edf8 100%); border-bottom: 3px solid var(--wt-gold); overflow: hidden; }
.wt-hero-inner {
	position: relative; z-index: 3; max-width: 1200px; margin: 0 auto; padding: 0 20px;
	min-height: 480px; display: flex; align-items: center;
}
.wt-hero-text { max-width: 420px; padding: 56px 0; }
.wt-eyebrow { color: var(--wt-accent); font-weight: 700; text-transform: uppercase; letter-spacing: .14em; font-size: 13px; margin-bottom: 14px; }
.wt-hero-title { color: var(--wt-navy); font-size: 46px; margin: 0 0 16px; }
.wt-hero-sub { color: #3a4668; font-size: 17px; margin-bottom: 28px; }
.wt-hero-actions { display: flex; flex-wrap: wrap; gap: 14px; }

/* Group photo fills the right side with a clean, straight edge */
.wt-hero-photo { position: absolute; top: 0; right: 0; bottom: 0; width: 62%; z-index: 2; line-height: 0; }
.wt-hero-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 40% 35%; display: block; }

/* On wide screens, start the photo where the text column ends so copy never sits on the photo */
@media (min-width: 1400px) {
	.wt-hero-photo { left: calc((100% - 1200px) / 2 + 460px); width: auto; }
	.wt-hero-photo img { object-position: 35% 35%; }
}

@media (max-width: 1100px) {
	.wt-hero { display: flex; flex-direction: column; }
	.wt-hero-inner { min-height: 0; display: block; }
	.wt-hero-text { max-width: none; padding: 36px 0 20px; }
	.wt-hero-title { font-size: 34px; }
	.wt-hero-photo { order: 2; position: relative; width: 100%; height: 340px; }
	.wt-hero-photo img { object-position: 55% 30%; }
}
@media (max-width: 767px) {
	body { font-size: 16px; }
	.navbar-default .navbar-nav > li > a { padding: 12px 15px; margin: 0; }
	.wt-topbar-inner { flex-direction: column; gap: 8px; }
	.wt-logo img { height: 88px; }
	.wt-call-label { display: none; }
	.wt-phone { font-size: 22px; }
}

/* ================= Home page sections ================= */
.wt-wrap { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.wt-section { padding: 80px 0; }
.wt-kicker { color: var(--wt-accent); font-weight: 700; text-transform: uppercase; letter-spacing: .14em; font-size: 13px; margin: 0 0 10px; }
.wt-h2 { font-size: 38px; color: var(--wt-navy); margin: 0 0 40px; }
.wt-icon { width: 1em; height: 1em; vertical-align: -.125em; }
.wt-link { color: var(--wt-accent); font-weight: 700; font-size: 14px; letter-spacing: .03em; }
.wt-link .wt-icon { transition: transform .2s; }
a:hover > .wt-link .wt-icon, .wt-link:hover .wt-icon { transform: translateX(4px); }

/* Core practice areas */
.wt-core { background: var(--wt-light); }
.wt-core-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.wt-core-card {
	background: #fff; border-radius: 12px; padding: 32px 26px; text-decoration: none; color: #3a4668;
	box-shadow: 0 2px 4px rgba(11, 31, 92, .06), 0 10px 28px rgba(11, 31, 92, .08);
	border-top: 4px solid transparent; transition: transform .25s, box-shadow .25s, border-color .25s;
	display: flex; flex-direction: column;
}
.wt-core-card:hover { transform: translateY(-6px); border-top-color: var(--wt-gold); box-shadow: 0 18px 40px rgba(11, 31, 92, .18); text-decoration: none; }
.wt-core-icon {
	width: 58px; height: 58px; border-radius: 14px; background: var(--wt-navy); color: var(--wt-gold);
	display: flex; align-items: center; justify-content: center; font-size: 28px; margin-bottom: 20px;
}
.wt-core-card h3 { font-size: 22px; color: var(--wt-navy); margin: 0 0 12px; }
.wt-core-card p { font-size: 15.5px; line-height: 1.6; margin: 0 0 20px; flex: 1; color: #3a4668; }

/* Consultation / form */
.wt-consult { background: radial-gradient(ellipse at 80% 20%, #1f3ea8 0%, #0b1f5c 60%); color: #fff; }
.wt-consult-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 60px; align-items: center; }
.wt-consult .wt-kicker { color: var(--wt-gold); }
.wt-consult .wt-h2 { color: #fff; margin-bottom: 20px; }
.wt-consult-text p { color: #dbe3fa; font-size: 18px; }
.wt-checks { list-style: none; padding: 0; margin: 24px 0 28px; }
.wt-checks li { display: flex; align-items: center; gap: 12px; color: #fff; font-size: 17px; margin-bottom: 12px; }
.wt-checks .wt-icon { width: 22px; height: 22px; padding: 4px; border-radius: 50%; background: var(--wt-gold); color: var(--wt-navy); flex: none; stroke-width: 3; }
.wt-consult-phone { font-family: "Playfair Display", Georgia, serif; font-size: 40px; font-weight: 700; color: var(--wt-gold); text-decoration: none; }
.wt-consult-form { background: #fff; border-radius: 14px; padding: 30px; box-shadow: 0 24px 60px rgba(0, 0, 0, .35); }
.wt-consult-form #wpcf7-f80-o1, .wt-consult-form #wpcf7-f80-o2, .wt-consult-form [id^="wpcf7-f80"] {
	background: none !important; box-shadow: none !important; padding: 0 !important; border-radius: 0 !important; top: 0 !important; height: auto !important;
}
.wt-consult-form form { color: var(--wt-navy); }
.wt-consult-form h2, .wt-consult-form h3, .wt-consult-form h4, .wt-consult-form .wpcf7-list-item-label, .wt-consult-form label { color: var(--wt-navy) !important; }
.wt-consult-form input[type=text], .wt-consult-form input[type=email], .wt-consult-form input[type=tel],
.wt-consult-form select, .wt-consult-form textarea { width: 100%; background: var(--wt-light); border: 1px solid #d5dbea; margin-bottom: 12px; }
.wt-consult-form input[type=submit] { width: 100%; padding: 14px; color: #fff !important; background: var(--wt-accent) !important; border: 0; margin-top: 8px; }
.wt-consult-form span.wpcf7-form-control-wrap, .wt-consult-form span { max-width: 100%; }
.wt-consult-form .wpcf7-list-item-label { font-size: 14px; }
.wt-consult-form #lower-frm-bg, .wt-consult-form #lower-frm-bg-blu { display: none; }
.wt-consult-form .wpcf7-response-output { color: var(--wt-navy) !important; }

/* All practice areas */
.wt-areas { background: #fff; }
.wt-areas-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.wt-area-card {
	display: flex; flex-direction: column; text-decoration: none; background: #fff; border-radius: 12px; overflow: hidden;
	box-shadow: 0 2px 4px rgba(11, 31, 92, .06), 0 8px 22px rgba(11, 31, 92, .1); transition: transform .25s, box-shadow .25s;
}
.wt-area-card:hover { transform: translateY(-5px); box-shadow: 0 16px 36px rgba(11, 31, 92, .2); text-decoration: none; }
.wt-area-img { height: 150px; background-size: cover; background-position: center; border-bottom: 3px solid var(--wt-gold); }
.wt-area-body { padding: 18px 20px 22px; display: flex; flex-direction: column; gap: 8px; }
.wt-area-body strong { font-family: "Playfair Display", Georgia, serif; font-size: 19px; color: var(--wt-navy); }
.wt-area-body span { font-size: 14.5px; line-height: 1.55; color: #55608a; }

/* About + news */
.wt-about { background: var(--wt-light); }
.wt-about-grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: 60px; }
.wt-about-text p { font-size: 17px; color: #3a4668; margin-bottom: 24px; }
.wt-news-item {
	display: block; background: #fff; border-radius: 10px; padding: 18px 22px; margin-bottom: 14px; text-decoration: none; color: var(--wt-navy);
	border-left: 4px solid var(--wt-gold); box-shadow: 0 6px 18px rgba(11, 31, 92, .08); transition: transform .2s;
}
.wt-news-item:hover { transform: translateX(4px); text-decoration: none; }
.wt-news-item strong { display: block; font-size: 16.5px; line-height: 1.4; margin: 4px 0 8px; }
.wt-news-date { font-size: 12.5px; color: #6b7694; text-transform: uppercase; letter-spacing: .08em; }

/* ================= Footer ================= */
.wt-footer { background: #0a1230; color: #b9c5ea; margin-top: 0; }
.wt-footer-cta { background: linear-gradient(135deg, var(--wt-accent) 0%, var(--wt-accent-dark) 100%); padding: 44px 0; }
.wt-footer-cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.wt-footer-cta h2 { color: #fff; font-size: 30px; margin: 0 0 6px; }
.wt-footer-cta p { color: #f3d9d0; margin: 0; }
.wt-footer-cta-actions { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.wt-footer-cta .wt-btn { background: #fff; color: var(--wt-accent) !important; }
.wt-footer-cta .wt-btn:hover { background: var(--wt-gold); color: var(--wt-navy) !important; }
.wt-footer-cta-phone { font-family: "Playfair Display", Georgia, serif; font-size: 28px; font-weight: 700; color: #fff; text-decoration: none; }

.wt-footer-main { padding: 64px 0 40px; }
.wt-footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.3fr; gap: 40px; }
.wt-footer-logo { display: inline-block; background: #fff; border-radius: 10px; padding: 8px 14px; margin-bottom: 18px; }
.wt-footer-logo img { height: 92px; width: auto; display: block; }
.wt-footer-brand p { font-size: 15px; line-height: 1.65; max-width: 340px; }
.wt-social { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 16px; }
.wt-social a {
	font-size: 13px; font-weight: 600; color: #fff; text-decoration: none; padding: 7px 14px;
	border: 1px solid rgba(255, 255, 255, .25); border-radius: 999px; transition: background .2s, color .2s;
}
.wt-social a:hover { background: var(--wt-gold); border-color: var(--wt-gold); color: var(--wt-navy); }
.wt-footer h4 {
	font-family: "Inter", Arial, sans-serif; font-size: 13px; font-weight: 700; text-transform: uppercase;
	letter-spacing: .14em; color: var(--wt-gold); margin: 6px 0 18px;
}
.wt-footer ul { list-style: none; padding: 0; margin: 0; }
.wt-footer li { margin-bottom: 10px; }
.wt-footer a { color: #d5def7; text-decoration: none; transition: color .2s; }
.wt-footer a:hover { color: var(--wt-gold); }
.wt-footer address { font-style: normal; line-height: 1.7; margin-bottom: 12px; }
.wt-footer-phone { font-family: "Playfair Display", Georgia, serif; font-size: 24px; font-weight: 700; color: #fff !important; }
.wt-footer-bottom { border-top: 1px solid rgba(255, 255, 255, .1); padding: 22px 0; font-size: 13.5px; }
.wt-footer-bottom-inner { display: flex; align-items: center; justify-content: space-between; gap: 18px; flex-wrap: wrap; }
.wt-footer-bottom a { color: var(--wt-gold); }
.wt-cards { height: 26px; width: auto; background: #fff; border-radius: 6px; padding: 3px 8px; }

/* ================= Responsive ================= */
@media (max-width: 1100px) {
	.wt-core-grid, .wt-areas-grid { grid-template-columns: repeat(2, 1fr); }
	.wt-footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 860px) {
	.wt-section { padding: 56px 0; }
	.wt-h2 { font-size: 30px; margin-bottom: 28px; }
	.wt-consult-grid, .wt-about-grid { grid-template-columns: 1fr; gap: 36px; }
	.wt-consult-phone { font-size: 32px; }
}
@media (max-width: 560px) {
	.wt-core-grid, .wt-areas-grid, .wt-footer-grid { grid-template-columns: 1fr; }
	.wt-footer-bottom-inner { flex-direction: column; text-align: center; }
	.wt-footer-cta-inner { text-align: center; justify-content: center; }
}

/* Form submit: parent theme's #submit rule zeroed the padding */
.wt-consult-form p.text-right { text-align: center; margin: 8px 0 0 !important; }
.wt-consult-form #submit, .wt-consult-form input.submit-frm {
	display: block; width: 100% !important; padding: 14px 24px !important; margin: 0 !important;
	font-size: 16px; line-height: 1.2; text-align: center; cursor: pointer;
}
.wt-consult-form form a, .wt-consult-form form p a { color: var(--wt-accent) !important; text-decoration: underline; }
.wt-consult-form form p, .wt-consult-form form label { color: var(--wt-navy); }

.wt-core-more { text-align: center; margin: 40px 0 0; }
.wt-core-more .wt-icon { margin-left: 6px; }
html { scroll-behavior: smooth; }
.wt-areas { scroll-margin-top: 20px; }
.wt-core-card p { margin: 0 0 10px; }
.wt-core-card p:last-of-type { margin-bottom: 20px; }
.wt-core-card p { flex: none; }
.wt-core-card p:last-of-type { flex: 1; }

/* ================= Inner pages ================= */
body { background: #fff; }
.wt-page-banner {
	background: linear-gradient(120deg, #0b1f5c 0%, #14297a 55%, #1a3a9c 100%);
	border-bottom: 3px solid var(--wt-gold); padding: 44px 0 40px; color: #fff;
}
.wt-crumbs { font-size: 13.5px; color: #b9c5ea; margin-bottom: 12px; }
.wt-crumbs a { color: #dbe3fa; text-decoration: none; }
.wt-crumbs a:hover { color: var(--wt-gold); }
.wt-crumb-sep { margin: 0 6px; opacity: .7; }
.wt-page-title { color: #fff; font-size: 40px; margin: 0; max-width: 900px; text-shadow: none; }
.wt-page-subtitle { color: #dbe3fa; font-size: 18px; margin: 12px 0 0; max-width: 760px; }

.wt-inner { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 56px; padding-top: 56px; padding-bottom: 72px; align-items: start; }
.wt-main { min-width: 0; }
.wt-article { color: #2b3552; font-size: 17px; line-height: 1.75; }
.wt-article h1, .wt-article h2, .wt-article h3, .wt-article h4, .wt-article h5 { color: var(--wt-navy); margin: 1.6em 0 .6em; text-shadow: none; }
.wt-article h2 { font-size: 30px; }
.wt-article h3 { font-size: 24px; }
.wt-article h4 { font-size: 20px; }
.wt-article > .entry-content > :first-child, .wt-article > .entry-content > h2:first-child, .wt-article > .entry-content > h3:first-child { margin-top: 0; }
.wt-article p, .wt-article li, .wt-article td { color: #2b3552; }
.wt-article a:not(.btn) { color: var(--wt-accent); text-decoration: underline; text-underline-offset: 2px; }
.wt-article a:not(.btn):hover { color: var(--wt-navy); }
.wt-article ul, .wt-article ol { padding-left: 1.3em; margin: 0 0 1.2em; }
.wt-article li { margin-bottom: .45em; }
.wt-article img { max-width: 100%; height: auto; border-radius: 8px; }
.wt-article table { width: 100%; border-collapse: collapse; margin: 1.4em 0; font-size: 16px; }
.wt-article th { background: var(--wt-navy); color: #fff; text-align: left; padding: 10px 14px; }
.wt-article td { padding: 10px 14px; border-bottom: 1px solid #e2e7f3; }
.wt-article blockquote { border-left: 4px solid var(--wt-gold); background: var(--wt-light); margin: 1.4em 0; padding: 16px 22px; color: var(--wt-navy); border-radius: 0 8px 8px 0; }
.wt-article hr { border-color: #e2e7f3; }
.wt-article .page-content { color: inherit; }
.wt-post-meta { font-size: 13.5px; color: #6b7694; text-transform: uppercase; letter-spacing: .08em; margin: 0 0 18px; }
.wt-post-meta a { color: var(--wt-accent); text-decoration: none; }
.entry-meta { margin-top: 24px; font-size: 14px; }

/* Sidebar */
.wt-aside { position: sticky; top: 24px; display: flex; flex-direction: column; gap: 22px; }
.wt-aside-card { background: var(--wt-light); border-radius: 12px; padding: 26px 24px; border: 1px solid #e2e7f3; }
.wt-aside-card h2, .wt-aside-card h3 { font-size: 22px; color: var(--wt-navy); margin: 0 0 14px; }
.wt-aside-cta { background: linear-gradient(135deg, #0b1f5c 0%, #1a3a9c 100%); border: 0; color: #fff; box-shadow: 0 14px 34px rgba(11, 31, 92, .25); }
.wt-aside-cta h2 { color: #fff; }
.wt-aside-cta .wt-kicker { color: var(--wt-gold); }
.wt-block { display: block; width: 100%; text-align: center; margin-bottom: 18px; }
.wt-aside-phone { display: block; font-family: "Playfair Display", Georgia, serif; font-size: 30px; font-weight: 700; color: var(--wt-gold); text-decoration: none; text-align: center; }
.wt-aside-addr { color: #c9d4f5; text-align: center; font-size: 14.5px; margin: 10px 0 0; }
.wt-aside-links { list-style: none; padding: 0; margin: 0; }
.wt-aside-links li { border-bottom: 1px solid #dfe5f3; }
.wt-aside-links li:last-child { border-bottom: 0; }
.wt-aside-links a { display: block; padding: 11px 0; color: var(--wt-navy); text-decoration: none; font-weight: 500; }
.wt-aside-links a:hover { color: var(--wt-accent); padding-left: 6px; transition: padding .15s; }

/* Blog list */
.wt-post-list { display: grid; gap: 28px; }
.wt-post-card { display: grid; grid-template-columns: 260px 1fr; gap: 26px; background: #fff; border: 1px solid #e2e7f3; border-radius: 12px; overflow: hidden; box-shadow: 0 6px 20px rgba(11, 31, 92, .06); }
.wt-post-card:not(:has(.wt-post-thumb)) { grid-template-columns: 1fr; }
.wt-post-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 0; }
.wt-post-body { padding: 24px 26px 24px 0; }
.wt-post-card:not(:has(.wt-post-thumb)) .wt-post-body { padding-left: 26px; }
.wt-post-body h2 { font-size: 24px; margin: 0 0 10px; }
.wt-post-body h2 a { color: var(--wt-navy); text-decoration: none; }
.wt-post-body h2 a:hover { color: var(--wt-accent); }
.wt-post-excerpt { color: #4a5578; margin-bottom: 12px; }
.wt-pagination, .paging-navigation { margin-top: 36px; text-align: center; }
.wt-pagination .page-numbers, .pagination > li > a, .pagination > li > span {
	display: inline-block; padding: 8px 14px; margin: 0 3px; border: 1px solid #d5dbea; border-radius: 6px; color: var(--wt-navy); text-decoration: none; background: #fff;
}
.wt-pagination .page-numbers.current { background: var(--wt-navy); color: #fff; border-color: var(--wt-navy); }

/* Search form and misc */
.search-form, .searchform { display: flex; gap: 10px; max-width: 520px; }
.search-form input[type=search], .searchform input[type=text] { flex: 1; padding: 11px 14px; border: 1px solid #d5dbea; border-radius: 6px; }

@media (max-width: 991px) {
	.wt-inner { grid-template-columns: 1fr; gap: 40px; padding-top: 40px; }
	.wt-aside { position: static; }
	.wt-page-title { font-size: 32px; }
}
@media (max-width: 640px) {
	.wt-page-banner { padding: 30px 0 28px; }
	.wt-page-title { font-size: 27px; }
	.wt-post-card { grid-template-columns: 1fr; }
	.wt-post-body { padding: 0 20px 22px; }
	.wt-article { font-size: 16px; }
}

/* Contact forms inside page content (Contact Us, Free Evaluation) */
.wt-form-card, .wt-article .wpcf7 { background: #fff; border: 1px solid #e2e7f3; border-radius: 14px; padding: 28px; box-shadow: 0 10px 30px rgba(11, 31, 92, .08); max-width: 640px; margin: 0 0 28px; }
.wt-form-card .wpcf7 { border: 0; padding: 0; box-shadow: none; margin: 0; max-width: none; }
.wt-form-card [id^="wpcf7-f80"], .wt-article [id^="wpcf7-f80"] { background: none !important; box-shadow: none !important; padding: 0 !important; border-radius: 0 !important; top: 0 !important; height: auto !important; }
.wt-form-card form, .wt-article .wpcf7 form { color: var(--wt-navy); }
.wt-form-card h2, .wt-form-card h3, .wt-form-card h4, .wt-form-card label, .wt-form-card .wpcf7-list-item-label,
.wt-article .wpcf7 h2, .wt-article .wpcf7 h3, .wt-article .wpcf7 h4, .wt-article .wpcf7 label, .wt-article .wpcf7 .wpcf7-list-item-label { color: var(--wt-navy) !important; margin-top: 0; }
.wt-form-card input[type=text], .wt-form-card input[type=email], .wt-form-card input[type=tel], .wt-form-card select, .wt-form-card textarea,
.wt-article .wpcf7 input[type=text], .wt-article .wpcf7 input[type=email], .wt-article .wpcf7 input[type=tel], .wt-article .wpcf7 select, .wt-article .wpcf7 textarea {
	width: 100%; background: var(--wt-light); border: 1px solid #d5dbea; border-radius: 6px; padding: 10px 12px; margin-bottom: 12px;
}
.wt-form-card #submit, .wt-article .wpcf7 #submit { display: block; width: 100% !important; padding: 14px 24px !important; margin: 0 !important; color: #fff !important; background: var(--wt-accent) !important; border: 0; font-size: 16px; text-align: center; cursor: pointer; }
.wt-form-card p.text-right, .wt-article .wpcf7 p.text-right { text-align: center; margin: 8px 0 0 !important; }
.wt-form-card .wpcf7-response-output, .wt-article .wpcf7 .wpcf7-response-output { color: var(--wt-navy) !important; }
.wt-form-card #lower-frm-bg, .wt-article #lower-frm-bg { display: none; }
.wt-article form a { color: var(--wt-accent) !important; }
.wt-map iframe, .wt-article iframe { width: 100%; max-width: 100%; border: 0; border-radius: 12px; }
.wt-map iframe { height: 380px; }
.wt-article iframe[src*="maps"] { height: 380px; margin-bottom: 20px; }

/* Search form */
.search-form .form-group { display: flex; gap: 10px; align-items: stretch; max-width: 520px; }
.search-form label { flex: 1; margin: 0; }
.search-form .search-field { width: 100%; height: 100%; min-height: 46px; padding: 10px 14px; border: 1px solid #d5dbea; border-radius: 6px; }
.search-form .search-submit { width: auto !important; padding: 0 24px; }

/* Hover/focus colors for links that sit on dark backgrounds (parent theme turned them dark navy) */
.wt-aside-phone:hover, .wt-aside-phone:focus { color: #fff; text-decoration: none; }
.wt-consult-phone:hover, .wt-consult-phone:focus { color: #fff; text-decoration: none; }
.wt-footer-cta-phone:hover, .wt-footer-cta-phone:focus { color: var(--wt-gold); text-decoration: none; }
.wt-phone:hover, .wt-phone:focus { color: var(--wt-accent); text-decoration: none; }
.wt-footer-phone:hover, .wt-footer-phone:focus { color: var(--wt-gold) !important; }
.wt-crumbs a:focus { color: var(--wt-gold); }
.wt-btn:hover, .wt-btn:focus, .btn.wt-btn:hover { color: #fff !important; text-decoration: none; }
.wt-btn-ghost:focus { color: #fff !important; }
.wt-footer-cta .wt-btn:hover, .wt-footer-cta .wt-btn:focus { color: var(--wt-navy) !important; }
.wt-aside-links a:focus { color: var(--wt-accent); }
.wt-social a:focus { color: var(--wt-navy); }
.wt-footer .wt-social a:hover, .wt-footer .wt-social a:focus { background: var(--wt-gold); border-color: var(--wt-gold); color: var(--wt-navy); }

/* ================= Attorneys ================= */
.wt-attorney-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin: 36px 0 12px; }
.wt-attorney-card {
	display: flex; flex-direction: column; align-items: center; text-align: center; text-decoration: none !important;
	background: #fff; border: 1px solid #e2e7f3; border-radius: 14px; padding: 30px 22px 26px; color: #3a4668;
	box-shadow: 0 6px 20px rgba(11, 31, 92, .07); transition: transform .25s, box-shadow .25s, border-color .25s;
}
.wt-attorney-card:hover { transform: translateY(-5px); box-shadow: 0 16px 36px rgba(11, 31, 92, .18); border-color: var(--wt-gold); }
.wt-attorney-photo { width: 150px; height: 150px; border-radius: 50%; overflow: hidden; border: 4px solid #fff; box-shadow: 0 0 0 3px var(--wt-gold), 0 8px 20px rgba(11, 31, 92, .2); margin-bottom: 20px; flex: none; }
.wt-attorney-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 12%; border-radius: 0 !important; display: block; }
.wt-article .wt-attorney-card h3 { font-size: 22px; margin: 0 0 10px; color: var(--wt-navy); }
.wt-attorney-label { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .12em; color: var(--wt-accent); margin: 0 0 6px; }
.wt-article .wt-attorney-card p.wt-attorney-areas { font-size: 15px; line-height: 1.6; margin: 0 0 16px; flex: 1; color: #3a4668; }
.wt-article a.wt-attorney-card { color: #3a4668; }

/* Profile pages: labels become small headings, photos get a card treatment */
.wt-profile .wt-article strong, .wt-profile .wt-article b { color: var(--wt-navy); }
.wt-profile .wt-article .entry-content > p > strong:first-child,
.wt-profile .wt-article .entry-content > strong,
.wt-profile .wt-article .su-column > p > strong:first-child { color: var(--wt-accent); text-transform: uppercase; letter-spacing: .08em; font-size: 13.5px; }
.wt-profile .wt-article p { margin-bottom: 1.1em; }
.wt-profile .wt-article img.alignright, .wt-profile .wt-article img[class*="wp-image-72"], .wt-profile .wt-article img[class*="wp-image-98"] {
	border-radius: 14px; box-shadow: 0 14px 34px rgba(11, 31, 92, .2); border: 4px solid #fff;
}
.wt-profile .wt-article img.alignright { float: right; margin: 0 0 24px 32px; max-width: 260px; height: auto; }
.wt-profile .wt-article .wp-caption, .wt-profile .wt-article .su-column .wp-caption-text, .wt-profile .wt-article [class*="caption"] {
	background: var(--wt-light); border-left: 4px solid var(--wt-gold); border-radius: 0 10px 10px 0; padding: 16px 20px; font-size: 15.5px; font-style: italic; margin: 0 0 18px; max-width: 100%;
}
.wt-more-attorneys { margin-top: 56px; padding-top: 36px; border-top: 1px solid #e2e7f3; clear: both; }
.wt-more-attorneys h2 { margin-top: 0; font-size: 26px; }
.wt-more-attorneys .wt-attorney-grid { grid-template-columns: repeat(2, 1fr); }
.su-row { overflow: hidden; }

@media (max-width: 900px) { .wt-attorney-grid { grid-template-columns: 1fr; } .wt-more-attorneys .wt-attorney-grid { grid-template-columns: 1fr; } }
@media (max-width: 640px) { .wt-profile .wt-article img.alignright { float: none; display: block; margin: 0 auto 24px; } }

/* Pagination: brand colors (parent theme used green for hover and current) */
.pagination > li > a, .pagination > li > span, .wt-pagination .page-numbers {
	color: var(--wt-navy); background: #fff; border: 1px solid #d5dbea; border-radius: 6px !important; margin: 0 3px; transition: background .15s, color .15s, border-color .15s;
}
.pagination > li > a:hover, .pagination > li > a:focus, .pagination > li > span:hover,
.wt-pagination a.page-numbers:hover, .wt-pagination a.page-numbers:focus {
	background: var(--wt-accent) !important; border-color: var(--wt-accent) !important; color: #fff !important;
}
.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover,
.pagination > .active > a:focus, .wt-pagination .page-numbers.current, .page-numbers.current {
	background: var(--wt-navy) !important; border-color: var(--wt-navy) !important; color: #fff !important;
}
.pagination > .disabled > span, .pagination > .disabled > a { color: #9aa3bf; background: #f4f6fb; }
.pager li > a, .pager li > span { border-radius: 6px; border-color: #d5dbea; color: var(--wt-navy); }
.pager li > a:hover, .pager li > a:focus { background: var(--wt-accent); border-color: var(--wt-accent); color: #fff; }

/* ===== Contact form 7 (id 80): one consistent look everywhere it appears ===== */
.wt-form-card, .wt-article > .entry-content > .wpcf7 {
	background: #fff; border: 1px solid #e2e7f3; border-radius: 14px; padding: 30px !important;
	box-shadow: 0 10px 30px rgba(11, 31, 92, .08); max-width: 560px; margin: 0 0 28px;
}
.wt-form-card .wpcf7 { border: 0 !important; padding: 0 !important; margin: 0; box-shadow: none; max-width: none; background: none !important; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) form { margin: 0; color: var(--wt-navy); }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) form h4 { color: var(--wt-navy) !important; font-family: "Playfair Display", Georgia, serif !important; font-size: 24px !important; font-weight: 700 !important; margin: 0 0 18px !important; text-transform: none; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) form h4.hidden-md { display: none !important; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) form p { margin: 0 0 12px !important; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) form br { display: none; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) .wpcf7-form-control-wrap { display: block; width: 100%; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) input.wpcf7-text,
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) input.wpcf7-email,
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) input.wpcf7-tel,
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) select {
	display: block; width: 100% !important; height: 48px !important; min-height: 0 !important; margin: 0 !important; padding: 0 14px !important;
	background: var(--wt-light) !important; border: 1px solid #d5dbea !important; border-radius: 8px !important; color: var(--wt-navy) !important; font-size: 16px; box-shadow: none;
}
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) textarea {
	display: block; width: 100% !important; height: 130px !important; margin: 0 !important; padding: 12px 14px !important;
	background: var(--wt-light) !important; border: 1px solid #d5dbea !important; border-radius: 8px !important; color: var(--wt-navy) !important; font-size: 16px; box-shadow: none; resize: vertical;
}
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) ::placeholder { color: #6b7694; opacity: 1; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) input:focus, :is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) textarea:focus {
	outline: 0; border-color: var(--wt-blue) !important; box-shadow: 0 0 0 3px rgba(26, 58, 156, .15);
}
/* Agree checkbox and disclaimer link sit on one line */
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) .wpcf7-form-control-wrap[data-name="agree"] { display: inline; width: auto; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) .wpcf7-list-item { display: inline; margin: 0 !important; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) .wpcf7-list-item label { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-weight: 400; font-size: 14px; vertical-align: middle; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) input[type=checkbox] { width: 16px; height: 16px; margin: 0; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) .wpcf7-list-item-label { font-size: 14px; color: var(--wt-navy) !important; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) form p a { margin-left: 4px; font-size: 14px !important; color: var(--wt-accent) !important; text-decoration: underline; vertical-align: middle; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) p.text-right { text-align: center; margin-top: 16px !important; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) #submit, :is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) input.submit-frm {
	display: block; width: 100% !important; height: 52px; padding: 0 24px !important; margin: 0 !important; border: 0 !important; border-radius: 8px;
	background: var(--wt-accent) !important; color: #fff !important; font-size: 16px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer;
}
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) #submit:hover { background: var(--wt-accent-dark) !important; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) .wpcf7-response-output { margin: 14px 0 0 !important; padding: 10px 14px; border-radius: 8px; font-size: 14px; }
:is(.wt-consult-form, .wt-form-card, .wt-article .wpcf7) .wpcf7-not-valid-tip { font-size: 13px; margin-top: 4px; }
.wt-consult-form { padding: 32px; }

/* Attorney pages use the full width (the call-to-action band in the footer replaces the sidebar) */
.wt-profile .wt-inner, .wt-attorneys .wt-inner { grid-template-columns: 1fr; }
.wt-profile .wt-article { max-width: none; }
.wt-profile .wt-aside, .wt-attorneys .wt-aside { display: none; }
.wt-attorneys .wt-attorney-grid { gap: 28px; }
.wt-profile .wt-article .su-row { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 56px; }
.wt-profile .wt-article .su-column { width: auto !important; float: none !important; margin: 0 !important; }
.wt-profile .wt-article .su-column-inner { margin: 0; }
@media (max-width: 760px) { .wt-profile .wt-article .su-row { grid-template-columns: 1fr; gap: 24px; } }
/* Photo column hugs the right edge of the content area, in line with the header */
@media (min-width: 761px) {
	.wt-profile .wt-article .su-column:last-child center, .wt-profile .wt-article .col-md-4 center { display: block; text-align: right; }
	.wt-profile .wt-article .su-column:last-child center img, .wt-profile .wt-article .col-md-4 center img { margin-left: auto; }
}

/* ===== Social icons (nav) ===== */
.wt-social-icons { list-style: none; margin: 0; padding: 0; display: flex; gap: 10px; align-items: center; }
.wt-social-nav { position: absolute; right: 15px; top: 50%; transform: translateY(-50%); }
.wt-social-icons a {
	display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%;
	background: var(--wt-light); color: var(--wt-navy); border: 1px solid #dfe5f3; transition: background .2s, color .2s, transform .2s, border-color .2s;
}
.wt-social-icons a:hover, .wt-social-icons a:focus { background: var(--wt-navy); border-color: var(--wt-navy); color: #fff; transform: translateY(-2px); text-decoration: none; }
.wt-social-icons svg { width: 18px; height: 18px; }
.navbar-default .container, .navbar-default .navbar { position: relative; }

/* Footer variant of the social icons (light on dark) */
.wt-social-footer { margin-top: 18px; }
.wt-footer .wt-social-footer a { background: transparent; color: #fff; border: 1px solid rgba(255, 255, 255, .3); width: 42px; height: 42px; }
.wt-footer .wt-social-footer a:hover, .wt-footer .wt-social-footer a:focus { background: var(--wt-gold); border-color: var(--wt-gold); color: var(--wt-navy); transform: translateY(-2px); }
.wt-footer .wt-social-footer svg { width: 20px; height: 20px; }

/* ===== Header: logo card overlapping the menu bar, social icons up top, menu on the right ===== */
.wt-social-top { margin-right: 14px; }
.wt-social-top a { width: 36px; height: 36px; }
.site-header { position: relative; z-index: 50; }
.navbar-default .navbar-collapse { width: 100%; max-width: 100%; }

@media (min-width: 1200px) {
	.wt-topbar-inner { position: relative; height: 92px; padding-top: 0; padding-bottom: 0; justify-content: flex-end; }
	.wt-logo {
		position: absolute; left: 20px; top: 0; z-index: 1100; background: #fff;
		padding: 14px 22px 31px; border-radius: 0 0 14px 14px;
		box-shadow: 0 12px 32px rgba(11, 31, 92, .28), 0 2px 6px rgba(11, 31, 92, .12);
	}
	.wt-logo img { height: 116px; width: auto; }
	/* menu sits on the right so the logo card can overlap the left of the bar */
	.navbar-default .navbar-collapse { display: flex !important; justify-content: flex-end; padding: 0; }
	.navbar-default .navbar-nav { float: none; margin-left: 0; margin-right: -14px; }
	.navbar-default .navbar-nav > li > a { padding-left: 14px; padding-right: 14px; }
	.navbar-default .navbar-nav > li > a::after { left: 14px; right: 14px; }
}
