/* Practice Areas – cards (page 4464 only) */
/* Practice Areas title hover — scoped */.page-id-4464 .our-practice-sec .area-row { 
  row-gap: 24px !important;           /* vertical spacing between rows */
}

body.page-id-4464 .our-practice-sec .area-row > [class*="col-"] {
  background: #fff;
  border: 1px solid rgba(14,36,55,.12);
  border-left: 6px solid #2bb673;     /* green accent */
  border-radius: 10px;
  padding: 20px;
  box-shadow: 0 1px 2px rgba(0,0,0,.04);
  transition: transform .18s ease, box-shadow .18s ease;
  display: flex;
  flex-direction: column;
  height: 100%;
}

body.page-id-4464 .our-practice-sec .area-row > [class*="col-"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(0,0,0,.10);
}

body.page-id-4464 .our-practice-sec .area-row h3 {
  font-size: 20px;
  font-weight: 700;
  color: #0e2437;
  margin: 0 0 8px;
}

body.page-id-4464 .our-practice-sec .area-row p {
  margin: 0;
  color: #394a59;
  line-height: 1.65;
}
/* Base typography */
body {
  font-family: var(--primary-font); /* "Open Sans", sans-serif from :root */
  font-size: var(--body-size);
  color: var(--body-color);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
button, input, select, textarea, optgroup { font-family: inherit; }

/* Improve text measure for readability */
.entry-content,
.page-content { max-width: 70ch; }
.entry-content > * + * { margin-top: 1.1em; }
address-wrap .sub_heading{
	  font-style: italic;

}
.values-column,
.pd-btm-content.black-layout{
	background-color:#0e2437;
	
}
.home-page-banner .lft:before{
background-image:unset!important;	
	
}

.feature_box_wrapper{
	flex-wrap:wrap!important;
	flex-flow: column!important;
}
.wp-video{
	
	margin: 0 auto;
}
.sidebar .widget-menu ul li a{
	text-transform: uppercase;
}
.member-contact h3{text-transform:none;}
.sidebar div.wpcf7 .wpcf7-form .form-control option{
	background-color: var(--dark-blue);
}
.practice-area-list-sc .row{
	row-gap: 20px;
}
.practice-area-list-sc .row .image{
	margin-bottom: -7px;
}
.practice-area-list-sc .link {
	height: auto;
}
.practice-area-list-sc .link {
    color: var(--dark-blue);
    background-color: #fff;
    border-color: #fff;
    justify-content: flex-start;
    border-left: 7px solid var(--green);
}
#involvement ul {
    column-count: 1;
}
#involvement ul li::before {
	  top: 9px;
}
#involvement ul li {
    margin-bottom: 0px;
    padding-top: 0px;
	  padding-bottom: 0px;
}
.team-details .f-center {
    justify-content: flex-start;
}
.page-id-171 .practice-area-list-sc.has-bg-img:after{
	opacity: .4;	
}
.practice-areas-team-section .feature_box .feature_box_wrapper .photo_wrapper {
    width: 170px;
    height: 210px;
}
.page-id-506 .bg-overlay:after {
    background-color: #000;
}
.page-id-544 .practice-areas-team-section:after{
    background-color: #000;
}
.practice-areas-team-section .h3,
.practice-areas-team-section .title .h4 {
    color: var(--dark-blue);
}
.practice-areas-team-section .designation{
	text-transform: uppercase;
}


section.pd-btm-content.my-80 {
    margin-bottom: 0 !important;
}
@media only screen and (min-width: 768px) and (max-width: 1025px){
	.our-services .btn-sc.text-center.mt-5.pt-xl-3 {
      padding: 20px 0 !important;
}
	.page-id-978 .submit-wp{
		margin:20px 0px
	}
	.menu-sidebar .menu-bar-wrapper li:hover .sidebar-menu-arrow:after {
    border-color: #fff;
}
}
.top-bio-section h3 span{right:0px!important;}
.f-center{
	 display: flex;
  align-items: center;
  justify-content: center;
}
.side-content h3{
	font-size:25px;
}
.b-bg h3,.n-bg h3{text-transform:uppercase;}
body.page-id-506 .inner-page-banner {
	min-height: 490px;
}
@media only screen and (min-width: 400px) and (max-width: 1199px){
.header-mobile-menu .menu-button {
      margin-left: 0px !important;
}
	.header-mobile-menu .header-search {
       margin-left: 0px !important;
}

}
@media (max-width:767px){
body .header-mobile-menu .header-search {
     margin: 0px !important;
}
	.submit-wp{
		margin:20px 0px
	}
	.menu-sidebar .menu-bar-wrapper li:hover .sidebar-menu-arrow:after {
    border-color: #fff !important;
}
	.menu-sidebar .menu-bar-wrapper li.menu-item-has-children:hover {
    background: #fff !important;
}

}
input.wpcf7-form-control.wpcf7-email.wpcf7-validates-as-required.wpcf7-text.wpcf7-validates-as-email.form-control.wpcf7-not-valid {
    height: 57px;
}

.bl-logo {
	height: 75px;
	padding-left: 40px;
}

@media (max-width:767px){
	.bl-logo {
	height: 75px;
	padding-left: 25px;
}
}

.bl-logo2 {
	width:175px;
	margin-top: 20px !important;
}
.widget.contat-wrap.contact-form-sidebar .title {
    color: #fff;
}

.top-bio-section {
	text-align: justify;
}

div#seminar-payment .btn {
    background-color: #47ad7a;
}

div#seminar-payment .btn:hover {
    background-color: transparent;
		color: #47ad7a;
		border: 1px solid #47ad7a;
}

.header-banner {
	color: #0e2437 !important;
	font-weight: 500;
}

.header-banner-btn {
	color: #0e2437 !important;
}


.header-banner-btn:hover {
	color: #fff !important;
}

.service-hp a {
	color: #fff !important;
	font-size: 30px;
	font-weight: 700;
}

.service-hp a:hover {
	color: #e1c97f !important;
	font-size: 30px;
	font-weight: 700;
}

.career-lists{
	display: flex;
	flex-wrap: wrap;
}
.career-lists .col{
	flex: 1 1 50%;
}
.page-id-544 .practice-areas-team-section:after {
  background-color: #fff;
}
.page-id-544 .practice-areas-team-section h3, .page-id-544 .practice-areas-team-section .h3 {
    color: #000;
}
.page-id-544 .practice-areas-team-section .feature_box .feature_box_wrapper .photo_wrapper {
    width: 300px;
    height: 440px;
}
.page-id-544 .practice-areas-team-section .feature_box .feature_box_wrapper .desc_wrapper {
    background-color: #102436;
    padding: 20px;
	width: 50%;
	text-align: center;
}
.page-id-544 .practice-areas-team-section .designation{
	color: #fff;
}
.page-id-544 .about-valley,
.page-id-544 .about-valley h3{
	background-color: #0e2437;
	color: #fff;
}
.page-id-544 .feature_box .content{
	color: #0e2437;
}
.page-id-544 .about-valley.bg-overlay:after{
	content: none;
}
.page-id-506 .bg-overlay:after {
    background-color: #0e2437;
	opacity: 1;
}
.page-id-506 .container ul{
	columns: 2;
}
.page-id-512 .top-content{
	margin: 0 0 60px 0;
}
@media (max-width: 991px) {
.page-id-544 .practice-areas-team-section .feature_box .feature_box_wrapper .desc_wrapper {
	width: 100%;
}
}

body.page-id-544 .inner-page-banner:after{
	background:none!important;
	opacity:1!important;
}
body.page-id-544 h1{ display:none; visibility:hidden;}
body.page-id-506 .inner-page-banner:after {
	display: none;
}
.values-column {
	padding: 0;
}
@media screen and (max-width: 767px) {
	.main-header-wrap .row {
		flex-wrap: nowrap;
	}
	.nav-menu-row,
	.main-header-wrap .header_menu_apply {
		display: none;
	}
	.header-mobile-menu {
		max-width: calc(100% - 100px);
	}
}
/* ===== 4 C's section: container, grid, and card polish (page 4464 only) ===== */
body.page-id-4464 .values-area,
body.page-id-4464 .values,
body.page-id-4464 .values-section {        /* catch common wrappers */
  padding: 64px 0;                          /* top/bottom breathing room */
  background: #fff;
}

/* The row that holds the four items (2 x 2 on desktop) */
body.page-id-4464 .values-row,
body.page-id-4464 .values .row,
body.page-id-4464 .values-section .row {
  max-width: 1300px;                        /* match your wide sections */
  width: 100%;
  margin: 0 auto;                           /* center the block */
  padding: 0 24px;                          /* side gutters */
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
}

/* Mobile: 1 per row */
@media (max-width: 767.98px) {
  body.page-id-4464 .values-row,
  body.page-id-4464 .values .row,
  body.page-id-4464 .values-section .row {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 0 18px;
  }
}

/* Each value card (your ACF repeater items) */
body.page-id-4464 .values-column,
body.page-id-4464 .values .col,
body.page-id-4464 .values-section [class*="col-"] {
  background: #0d2437;                      /* dark blue */
  border-radius: 12px;
  padding: 28px 24px 26px;
  position: relative;
  box-shadow: 0 6px 24px rgba(0,0,0,.08);
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* subtle gold accent bar on the left */
body.page-id-4464 .values-column::before,
body.page-id-4464 .values .col::before,
body.page-id-4464 .values-section [class*="col-"]::before {
  content:"";
  position:absolute;
  inset: 0 auto 0 0;
  width: 6px;
  background:#e1c97f;                       /* gold */
  border-radius: 12px 0 0 12px;
}

/* Icon at the top (your ACF "Image") */
body.page-id-4464 .values-column img,
body.page-id-4464 .values .col img,
body.page-id-4464 .values-section [class*="col-"] img {
  display:block;
  width: 72px;                               /* adjust if needed */
  height: auto;
  margin: 6px 0 12px;
  filter: none;                              /* keep the gold tone SVG/PNG */
}

/* Title + copy */
body.page-id-4464 .values-column .title,
body.page-id-4464 .values .col .title,
body.page-id-4464 .values-section [class*="col-"] .title {
  color:#e1c97f;
  font-weight: 800;
  font-size: 26px;
  line-height: 1.2;
  margin: 0 0 10px;
}

body.page-id-4464 .values-column p,
body.page-id-4464 .values .col p,
body.page-id-4464 .values-section [class*="col-"] p {
  color:#ffffff;
  margin: 0;
  line-height: 1.6;
}
/* ===== 4 C’s fixes: center the grid + tame theme headings (page 4464) ===== */

/* Kill Bootstrap-style negative gutters so our padding centers properly */
body.page-id-4464 .values-row,
body.page-id-4464 .values .row,
body.page-id-4464 .values-section .row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Re-affirm container centering & side gutters */
body.page-id-4464 .values-row,
body.page-id-4464 .values .row,
body.page-id-4464 .values-section .row {
  max-width: 1300px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

/* Ensure each card stretches evenly */
body.page-id-4464 .values-column,
body.page-id-4464 .values .col,
body.page-id-4464 .values-section [class*="col-"] {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Force title styling inside cards (theme h3 was winning) */
body.page-id-4464 .values-column .title,
body.page-id-4464 .values .col .title,
body.page-id-4464 .values-section [class*="col-"] .title,
body.page-id-4464 .values-column h3,
body.page-id-4464 .values .col h3,
body.page-id-4464 .values-section [class*="col-"] h3 {
  font-size: 26px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  color: #e1c97f !important;      /* gold */
  margin: 0 0 10px !important;
  text-transform: none !important;
}

/* Paragraph color/spacing inside cards */
body.page-id-4464 .values-column p,
body.page-id-4464 .values .col p,
body.page-id-4464 .values-section [class*="col-"] p {
  color: #ffffff !important;
  margin: 0 !important;
  line-height: 1.6 !important;
}

/* Mobile: keep the 1-per-row look tidy */
@media (max-width: 767.98px){
  body.page-id-4464 .values-row,
  body.page-id-4464 .values .row,
  body.page-id-4464 .values-section .row {
    padding: 0 18px !important;
    gap: 20px !important;
  }
}
/* ——— 4 C’s (page 4464) —————————————————————————— */

/* 1) Widen containers on this page so the grid isn’t squished */
body.page-id-4464 .container {
  max-width: 1300px !important;
}

/* 2) Target the “Values / 4 C’s” row. Your items appear to use .values-column.
   If your markup uses different item classes (e.g., .col-*, .value-box),
   keep .values-column and ADD the other class after the comma. */
body.page-id-4464 .values-row,
body.page-id-4464 .values-section .row {
  display: flex !important;
  flex-wrap: wrap !important;
  column-gap: 28px !important;
  row-gap: 28px !important;
}

/* 3) FORCE 2-up on desktop, regardless of Bootstrap’s col-lg-4 etc. */
@media (min-width: 1024px) {
  body.page-id-4464 .values-row > .values-column,
  body.page-id-4464 .values-section .row > .values-column,
  body.page-id-4464 .values-row > [class*="col-"],
  body.page-id-4464 .values-section .row > [class*="col-"] {
    flex: 0 0 calc(50% - 14px) !important;
    max-width: calc(50% - 14px) !important;
  }
}

/* 4) 1-up on mobile/tablet */
@media (max-width: 1023px) {
  body.page-id-4464 .values-row > .values-column,
  body.page-id-4464 .values-section .row > .values-column,
  body.page-id-4464 .values-row > [class*="col-"],
  body.page-id-4464 .values-section .row > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

/* 5) Card chrome + inner spacing (optional, keeps your current look) */
body.page-id-4464 .values-column {
  background: #0e2437;                 /* navy card */
  border-radius: 12px;
  border-left: 6px solid #e1c97f;       /* gold stripe */
  padding: 28px;
  color: #fff;
  box-shadow: 0 6px 22px rgba(0,0,0,.15);
}
body.page-id-4464 .values-column .title {
  color: #e1c97f;
  font-weight: 700;
  margin: 0 0 10px;
}
body.page-id-4464 .values-column .text-center,
body.page-id-4464 .values-column p {
  color: #fff;
  line-height: 1.6;
  margin: 0;
}
.real-estate-hero {
  position: relative;
  background: linear-gradient(rgba(13,36,55,0.8), rgba(13,36,55,0.8)),
              url('https://zvmllp.com/wp-content/uploads/2024/01/real-estate-bg.jpg') center/cover no-repeat;
  color: #fff;
  padding: 120px 40px;
  border-radius: 8px;
  text-align: left;
  margin-bottom: 60px;
}
.real-estate-hero .hero-text {
  max-width: 700px;
}
.real-estate-hero h1 {
  font-size: 38px;
  font-weight: 700;
  margin-bottom: 18px;
}
.real-estate-hero p {
  font-size: 18px;
  line-height: 1.7;
  margin-bottom: 30px;
}
.hero-btn {
  background-color: #e1c97f;
  color: #0d2437;
  font-weight: 600;
  padding: 14px 34px;
  border-radius: 4px;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 0.3s ease;
}
.hero-btn:hover {
  background-color: #d6bd6d;
  box-shadow: 0 8px 18px rgba(0,0,0,0.15);
}
/* Real Estate page only (page-id 4562 from your screenshot) */
body.page-id-4562 .inner-page-banner,
body.page-id-4562 .inner-page-banner:before,
body.page-id-4562 .inner-page-banner:after,
body.page-id-4562 .banner-area,
body.page-id-4562 .banner-section,
body.page-id-4562 .page-banner {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Hide the right-side "Request Consultation" widget/sidebar on this page */
body.page-id-4562 .contact-form-sidebar,
body.page-id-4562 .widget.contact-form-sidebar,
body.page-id-4562 .sidebar,
body.page-id-4562 .widget-area,
body.page-id-4562 .page-right-sidebar,
body.page-id-4562 [class*="col-"].col-lg-4 {
  display: none !important;
}

/* Let the content column go full width */
body.page-id-4562 .content-area,
body.page-id-4562 .entry-content,
body.page-id-4562 .page-content,
body.page-id-4562 [class*="col-"].col-lg-8 {
  width: 100% !important;
  max-width: 960px !important;   /* tweak if you want wider/narrower */
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Force banner + sidebar hidden even in preview mode */
[data-preview="true"] .inner-page-banner,
[data-preview="true"] .banner-area,
[data-preview="true"] .page-banner,
[data-preview="true"] .col-lg-4,
[data-preview="true"] .contact-form-sidebar {
  display: none !important;
  height: 0 !important;
}
[data-preview="true"] .col-lg-8 {
  width: 100% !important;
	}
/* Change font of page title only (Abbotsford Law Firm) */
body.page-id-4464 .inner-ba-w-form h2 {
    font-family: "Poppins", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px;
    color: #e1c97f !important; /* keep gold title color */
}
/* Practice Area icon styling (merged + closed) */
.pa-card div[style*="font-size: 60px"] {
  color: #0d2437 !important;   /* solid navy */
  filter: none !important;     /* remove tint */
  font-size: 40px !important;  /* smaller icon */
  margin-bottom: 12px !important;
  display: block !important;
}    /* keeps original emoji color (no tint) */
/* Change page title from serif to sans-serif for page ID 4649 */
.post-4649 .entry-title {
    font-family: sans-serif !important;
}

/* Practice Areas title hover — scoped */
.practice-area .practice-area__title-link .practice-area__title {
  transition: color .2s ease;
}
.practice-area .practice-area__title-link:hover .practice-area__title,
.practice-area .practice-area__title-link:focus .practice-area__title {
  color: #C69E57;
}

/* PRACTICE AREA TITLES — Fix default color */
.services-column .title.brown-hd h3,
.services-column .title.brown-hd h3 a {
  color: #111 !important; /* black */
  text-decoration: none;
  font-weight: 700;
  transition: color .2s ease;
}

/* Force black on titles whether they are links or not */
.our-services .services-column .title.brown-hd h3 {
  color: #111 !important;
  text-decoration: none;
  font-weight: 700;
  transition: color .2s ease;
}
/* LOCATION TEMPLATE ONLY — final override for Practice Area titles */
.page-template-template-location .our-services .services-column .title.brown-hd h3,
.page-template-template-location .our-services .services-column .title.brown-hd h3 *,
.page-template-template-location .our-services .services-column .title.brown-hd a,
.page-template-template-location .our-services .services-column .title.brown-hd a * {
  color: #111 !important;         /* black by default */
  text-decoration: none !important;
  font-weight: 700;
  font-size: 22px;                 /* match home scale */
  line-height: 1.3;
}

/* Hover to gold */
.page-template-template-location .our-services .services-column:hover .title.brown-hd h3,
.page-template-template-location .our-services .services-column:hover .title.brown-hd a,
.page-template-template-location .our-services .services-column .title.brown-hd h3:hover,
.page-template-template-location .our-services .services-column .title.brown-hd a:hover {
  color: #e1c97f !important;       /* gold on hover */
}
	/* LOCATION TEMPLATE ONLY — replace the template's gold heading with our own */
.page-template-template-location .our-services .services-column .title.brown-hd {
  display: none !important; /* hide the theme's gold H3 entirely */
}

/* Our injected, clickable title that lives inside each Areas -> Content field */
.page-template-template-location .our-services .content-btm .pa-title {
  margin: 22px 0 10px;
  font-size: 22px;
  line-height: 1.3;
  font-weight: 700;
}

.page-template-template-location .our-services .content-btm .pa-title a {
  color: #111 !important;        /* black by default */
  text-decoration: none;
}

.page-template-template-location .our-services .content-btm .pa-title a:hover {
  color: #e1c97f !important;     /* gold on hover */
}
	/* ===== Location template — Practice Areas title fix ===== */
.page-template-template-location .our-services .services-column .title.brown-hd h3,
.page-template-template-location .our-services .services-column .title.brown-hd h3 a {
  color: #111 !important;          /* black by default */
  font-size: 22px !important;      /* match home page scale */
  line-height: 1.3 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.page-template-template-location .our-services .services-column .title.brown-hd h3 a:hover,
.page-template-template-location .our-services .services-column:hover .title.brown-hd h3 a {
  color: #e1c97f !important;       /* gold on hover */
}
/***** FIX PACK — put at the very bottom *****/

/* A) Undo the over-broad global override so the theme color returns everywhere */
.services-column .title.brown-hd h3,
.services-column .title.brown-hd h3 a {
  color: inherit !important;            /* restores the theme's gold from .brown-hd */
  text-decoration: inherit;
  font-weight: inherit;
}

/* B) Make sure titles are NOT hidden on location pages (we previously hid them by mistake) */
.page-template-template-location .our-services .services-column .title.brown-hd {
  display: block !important;
  visibility: visible !important;
}

/* C) Location pages ONLY: titles black by default, gold on hover, and match home font size */
.page-template-template-location .our-services .services-column .title.brown-hd h3,
.page-template-template-location .our-services .services-column .title.brown-hd h3 a {
  color: #0c1b36 !important;            /* black */
  font-size: 22px !important;           /* match home scale */
  line-height: 1.3 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.page-template-template-location .our-services .services-column .title.brown-hd h3:hover,
.page-template-template-location .our-services .services-column .title.brown-hd h3 a:hover,
.page-template-template-location .our-services .services-column:hover .title.brown-hd h3,
.page-template-template-location .our-services .services-column:hover .title.brown-hd h3 a {
  color: #e1c97f !important;            /* gold on hover */
}
/***** HOME PAGE — PRACTICE AREA TITLES *****/
.home .our-services .services-column .title.brown-hd { 
  display: block !important;              /* make sure it's visible */
  color: inherit !important;
}

.home .our-services .services-column .title.brown-hd h3,
.home .our-services .services-column .title.brown-hd h3 a {
  color: #ffffff !important;              /* WHITE by default */
  font-size: 22px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

/* WHITE → GOLD on hover (both card hover and link hover) */
.home .our-services .services-column:hover .title.brown-hd h3,
.home .our-services .services-column:hover .title.brown-hd h3 a,
.home .our-services .services-column .title.brown-hd h3 a:hover,
.home .our-services .services-column .title.brown-hd h3 a:focus {
  color: #e1c97f !important;              /* GOLD */
}
.pa-card-link {
  display: block;
  text-decoration: none !important;
  color: inherit !important;
}

.pa-card-link:hover .pa-title {
  color: #e1c97f !important; /* gold */
}
/* Force location page Practice Area titles to be clickable */
.page-template-template-location .pa-card-link {
  position: relative;
  z-index: 10;
  display: block;
}

/* Fix pointer events so title & card actually get the click */
.page-template-template-location .pa-card-link *,
.page-template-template-location .pa-card-link {
  pointer-events: auto !important;
}

/* Disable theme overlay blocking clicks */
.page-template-template-location .services-column,
.page-template-template-location .mcb-column-inner,
.page-template-template-location .column_attr {
  position: relative;
  z-index: 1;
}

.page-template-template-location .services-column::after,
.page-template-template-location .services-column a::after {
  pointer-events: none !important;
}
/* Location draft page: make Practice Area titles black → gold on hover and clickable */
.page-id-4951 .pa-title { 
  margin: 0 0 10px;
  font-size: 22px;
  line-height: 1.3;
  font-weight: 700;
}

.page-id-4951 .pa-title-link {
  color: #111 !important;            /* black by default */
  text-decoration: none;
  position: relative;
  z-index: 5;                        /* sit above any theme overlays */
}

.page-id-4951 .pa-title-link:hover,
.page-id-4951 .pa-title-link:focus {
  color: #e1c97f !important;         /* gold on hover */
}

/* Make sure wrappers don’t sit on top of the link */
.page-id-4951 .mcb-column-inner,
.page-id-4951 .column_attr {
  position: relative;
  z-index: 1;
}

/* Disable any pseudo-overlay that might block clicks */
.page-id-4951 .mcb-column-inner::after,
.page-id-4951 .column_attr::after {
  pointer-events: none !important;
}
/* Location template: make the title link definitely clickable and styled */
.page-template-template-location .pa-title a {
  position: relative;
  z-index: 3;
  pointer-events: auto;
  color: #111 !important;        /* black by default */
  text-decoration: none;
  font-weight: 700;
  font-size: 22px;
  line-height: 1.3;
  cursor: pointer;
}
.page-template-template-location .pa-title a:hover {
  color: #e1c97f !important;     /* gold on hover */
}

/* Defensive: disable any theme overlay from blocking clicks in this block */
.page-template-template-location .column_attr::after,
.page-template-template-location .mcb-column-inner::after {
  pointer-events: none !important;
}
/*–– Fix blocked links inside the Practice Areas / Our Services section ––*/
.our-services a {
  position: relative !important;
  z-index: 9999 !important;
  pointer-events: auto !important;
}
.custom-services h3 {
    font-size: 28px !important;
    font-weight: 700;
    margin-bottom: 10px;
}

.custom-services p {
    font-size: 16px;
    line-height: 1.6;
    color: #333;
    max-width: 300px;
}
/* Edmonton page – custom services section (page ID 5094) */
.page-id-5094 .custom-services .services-row {
  display: flex;
  flex-wrap: wrap;
  gap: 60px;
}

/* Each service block */
.page-id-5094 .custom-services .service-item {
  flex: 1 1 220px;
  max-width: 260px;
}

/* Heading + link */
.page-id-5094 .custom-services h3,
.page-id-5094 .custom-services h3 a {
  font-size: 26px !important;
  font-weight: 700;
  margin-bottom: 12px;
  color: #0a1b2d;
  text-decoration: none;
}


/* Hover gold on title */
.page-id-5094 .custom-services h3 a:hover {
  color: #e1c97f !important;
}

/* Body text */
.page-id-5094 .custom-services p {
  font-size: 16px;
  line-height: 1.6;
  color: #333333;
}

/* Center the "See More Services" button under the row */
.page-id-5094 .custom-services .services-cta {
  margin-top: 40px;
}

.page-id-5094 .custom-services .services-button {
  display: inline-block;
  padding: 12px 30px;
  background: #e1c97f;
  color: #0a1b2d;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}

.page-id-5094 .custom-services .services-button:hover {
  filter: brightness(0.95);
}
/* Edmonton Practice Areas – Page 5094 */

.page-id-5094 #edmonton-practice-areas {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
    font-family: inherit;
}

.page-id-5094 .practice-heading {
    font-size: 40px;
    font-weight: 700;
    color: #e1c97f;
    margin-bottom: 40px;
}

.page-id-5094 .practice-areas-row {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 50px;
}

.page-id-5094 .practice-area {
    width: 30%;
}

.page-id-5094 .practice-area h3 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 12px;
}

.page-id-5094 .practice-area h3 a {
    text-decoration: none;
    color: #0b1f36;
    transition: color 0.2s ease;
}

.page-id-5094 .practice-area h3 a:hover {
    color: #e1c97f;
}

.page-id-5094 .practice-area p {
    font-size: 16px;
    line-height: 1.6;
    color: #333;
}

/* Mobile */
@media (max-width: 900px) {
    .page-id-5094 .practice-areas-row {
        flex-direction: column;
        gap: 30px;
    }
    .page-id-5094 .practice-area {
        width: 100%;
    }
}
/* Practice Areas – See More Services button */
.page-id-5094 .practice-areas-button-wrap {
    text-align: center;
    margin: 40px 0 60px;
}

.page-id-5094 .practice-areas-btn {
    display: inline-block;
    padding: 12px 40px;
    background-color: #e1c97f;      /* gold */
    color: #ffffff;                 /* white text */
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 0.08em;
    border-radius: 0;
    border: 2px solid #e1c97f;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
}

/* Hover: transparent with gold outline + gold text */
.page-id-5094 .practice-areas-btn:hover {
    background-color: transparent;
    color: #e1c97f;
}
/* Edmonton Practice Areas – See More Services button */

/* full-width row + centering */
#edmonton-practice-areas .practice-areas-button-row {
    margin-top: 60px;
    text-align: center;
}

/* reset conflicting styles and define the button */
#edmonton-practice-areas .practice-areas-button {
    /* wipe out Bootstrap/anchor defaults */
    all: unset;

    /* make it a proper button */
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    cursor: pointer;

    padding: 16px 80px;              /* adjust 80px if you want it narrower/wider */
    background-color: #e1c97f;
    border: 2px solid #e1c97f;
    color: #ffffff;

    font-family: var(--primary-font, "Open Sans", sans-serif);
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none;
    line-height: 1;

    border-radius: 0;
    transition: all 0.2s ease;
}

/* hover: transparent with gold outline + gold text */
#edmonton-practice-areas .practice-areas-button:hover {
    background-color: transparent;
    color: #e1c97f;
    border-color: #e1c97f;
}
/* FINAL: Edmonton Practice Areas – See More Services button (page 5094) */

.page-id-5094 #edmonton-practice-areas .practice-areas-button-wrap {
    width: 100%;
    text-align: center;
    margin: 60px 0 60px;   /* space above/below */
}

.page-id-5094 #edmonton-practice-areas .practice-areas-button {
    display: inline-block;
    box-sizing: border-box;

    /* controls size */
    padding: 14px 60px;           /* tweak left/right for width, 14 for height */
    background-color: #e1c97f;    /* gold */
    border: 2px solid #e1c97f;
    color: #ffffff;

    font-family: var(--primary-font, "Open Sans", sans-serif);
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    line-height: 1;               /* keeps height tight */
    text-decoration: none;

    border-radius: 0;
    transition: all 0.2s ease;
}

/* Hover: transparent with gold outline + gold text */
.page-id-5094 #edmonton-practice-areas .practice-areas-button:hover {
    background-color: transparent;
    color: #e1c97f;
    border-color: #e1c97f;
}
#edmonton-practice-areas .btn {
    font-weight: 600 !important;
    text-transform: uppercase !important;
    padding: 16.5px 24px !important;
    color: var(--white) !important;
    border: 1px solid var(--green) !important;
    background-color: var(--green) !important;
    border-radius: 0 !important;
    font-size: 18px !important;
    line-height: 18px !important;
}

/* ===== Global footer clean-up layout ===== */

/* 1. Make the top footer area a flexible row */
.footer-top .footer-row {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;                 /* space between columns */
}

/* 2. Left vs right main columns */
.footer-top .footer-left,
.footer-top .footer-right {
  flex: 1 1 260px;           /* both grow, min ~260px */
}

/* 3. Inside the right side: split into two sub-columns
   (addresses) + (hours + newsletter) */
.footer-top .footer-right {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
}

/* Each block inside .footer-right (address, hours, subscribe) */
.footer-top .footer-right > * {
  flex: 1 1 260px;
}

/* 4. Tighten vertical spacing so it feels less “endless” */
.footer-top {
  padding-top: 40px;
  padding-bottom: 30px;
}

.footer-top .footer_hours,
.footer-top .subscribe-sc {
  margin-top: 0;
}

/* Optional: make the “Quick Links” list feel more footer-like */
.footer-left .menu {
  list-style: none;
  padding-left: 0;
  margin-top: 20px;
}

.footer-left .menu li {
  margin-bottom: 6px;
}

.footer-left .menu a {
  color: #ffffff;
  text-decoration: none;
}

.footer-left .menu a:hover {
  color: #e1c97f;
}

/* 5. Mobile – stack everything nicely */
@media (max-width: 991px) {
  .footer-top .footer-row,
  .footer-top .footer-right {
    flex-direction: column;
  }

  .footer-top .footer-right > * {
    flex: 0 0 100%;
  }
}
/* ===== Edmonton hero (page 5094) ===== */
body.page-id-5094 .edm-hero {
  position: relative;
  width: 100vw;
  margin-left: 50%;
  margin-right: 50%;
  transform: translateX(-50%);
  height: 575px;
  display: flex;
  align-items: center;
  background-image:
    linear-gradient(
      to bottom,
      rgba(14, 36, 55, 0.65),
      rgba(14, 36, 55, 0.75)
    ),
    url("https://zvmllp.com/wp-content/uploads/2025/10/mesmerizing-view-of-a-beautiful-edmonton-skyline-a-2025-02-09-22-28-38-utc.png");
  background-size: cover;
  background-position: center 40%;
  background-repeat: no-repeat;
  color: #ffffff;
}

/* inner max-width + two columns */
body.page-id-5094 .edm-hero__inner {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  padding: 40px 60px;
  display: flex;
  gap: 80px;
  align-items: center;
  justify-content: space-between;
}

/* left column (copy) */
body.page-id-5094 .edm-hero__copy {
  flex: 1 1 60%;
  min-width: 0;
}

/* eyebrow matches small gold label style */
body.page-id-5094 .edm-hero__eyebrow {
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #e1c97f;
  margin: 0 0 10px;
}

/* H1 - sans-serif and gold to match target */
body.page-id-5094 .edm-hero__copy h1 {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 48px;
  font-weight: 400;
  color: #e1c97f;
  margin: 0 0 20px;
  line-height: 1.2;
}

/* hero paragraph - ensure natural text flow */
body.page-id-5094 .edm-hero__copy p {
  color: #ffffff !important;
  line-height: 1.75;
  margin: 0;
  text-align: left !important;
  word-spacing: normal !important;
  letter-spacing: normal !important;
  hyphens: none !important;
  text-justify: none !important;
  white-space: normal !important;
}

/* right column (form) */
body.page-id-5094 .edm-hero__form {
  flex: 0 0 380px;
  background: rgba(14, 36, 55, 0.92);
  padding: 26px 28px 28px;
  border-radius: 4px;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.35);
}

/* form heading – sans-serif to match */
body.page-id-5094 .edm-hero__form-title {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 18px;
}

/* let CF7 fields stretch full width */
body.page-id-5094 .edm-hero__form form,
body.page-id-5094 .edm-hero__form p {
  margin: 0;
}

/* Style CF7 input fields for better visibility */
body.page-id-5094 .edm-hero__form input[type="text"],
body.page-id-5094 .edm-hero__form input[type="email"],
body.page-id-5094 .edm-hero__form input[type="tel"],
body.page-id-5094 .edm-hero__form textarea,
body.page-id-5094 .edm-hero__form .wpcf7-form-control {
  background-color: #ffffff;
  border: 1px solid #d1d5db;
  border-radius: 3px;
  padding: 12px 14px;
  width: 100%;
  font-size: 15px;
  color: #0e2437;
  margin-bottom: 12px;
}

body.page-id-5094 .edm-hero__form input::placeholder,
body.page-id-5094 .edm-hero__form textarea::placeholder {
  color: #6b7280;
}

body.page-id-5094 .edm-hero__form input:focus,
body.page-id-5094 .edm-hero__form textarea:focus {
  outline: none;
  border-color: #e1c97f;
  box-shadow: 0 0 0 2px rgba(225, 201, 127, 0.2);
}

/* Style the submit button */
body.page-id-5094 .edm-hero__form input[type="submit"],
body.page-id-5094 .edm-hero__form .wpcf7-submit {
  background-color: #e1c97f;
  color: #0e2437;
  border: none;
  border-radius: 3px;
  padding: 14px 32px;
  font-size: 15px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: background-color 0.3s ease;
  width: auto;
  margin-top: 6px;
}

body.page-id-5094 .edm-hero__form input[type="submit"]:hover,
body.page-id-5094 .edm-hero__form .wpcf7-submit:hover {
  background-color: #d4bb6f;
}

/* spacing before Practice Areas section */
body.page-id-5094 #edmonton-practice-areas {
  margin-top: 50px;
}

/* responsive: stack on mobile/tablet */
@media (max-width: 991px) {
  body.page-id-5094 .edm-hero {
    height: auto;
    padding: 40px 0;
  }

  body.page-id-5094 .edm-hero__inner {
    flex-direction: column;
    gap: 30px;
    padding: 30px 20px;
  }

  body.page-id-5094 .edm-hero__form {
    max-width: 100%;
  }
  
  body.page-id-5094 .edm-hero__copy h1 {
    font-size: 36px;
  }
}
/* ===== Contact Cards Section ===== */
body.page-id-5094 .edm-contact-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  max-width: 1400px;
  margin: -60px auto 60px;
  padding: 0 60px;
  position: relative;
  z-index: 10;
}

body.page-id-5094 .edm-contact-card {
  background: #1a2f3f;
  padding: 50px 40px;
  text-align: center;
  border-radius: 4px;
}

body.page-id-5094 .edm-contact-icon {
  color: #e1c97f;
  margin-bottom: 20px;
}

body.page-id-5094 .edm-contact-icon svg {
  width: 48px;
  height: 48px;
}

body.page-id-5094 .edm-contact-card h3 {
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin: 0 0 20px;
  text-transform: uppercase;
}

body.page-id-5094 .edm-contact-card p {
  color: #ffffff;
  font-size: 16px;
  line-height: 1.6;
  margin: 0;
}

body.page-id-5094 .edm-phone {
  color: #e1c97f;
  font-size: 24px;
  font-weight: 600;
  text-decoration: none;
  display: inline-block;
  transition: color 0.3s ease;
}

body.page-id-5094 .edm-phone:hover {
  color: #d4bb6f;
}

body.page-id-5094 .edm-client-btn {
  display: inline-block;
  padding: 14px 32px;
  border: 2px solid #e1c97f;
  color: #e1c97f;
  background: transparent;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 3px;
  transition: all 0.3s ease;
}

body.page-id-5094 .edm-client-btn:hover {
  background: #e1c97f;
  color: #1a2f3f;
}

/* Mobile responsive */
@media (max-width: 991px) {
  body.page-id-5094 .edm-contact-cards {
    grid-template-columns: 1fr;
    margin: 30px auto;
    padding: 0 20px;
  }
  
  body.page-id-5094 .edm-contact-card {
    padding: 40px 30px;
  }
}
/* ===== Practice Areas Button Fix ===== */
body.page-id-5094 .practice-areas-btn,
body.page-id-5094 a[href*="services"] {
  display: inline-block;
  padding: 16px 40px;
  background: #e1c97f;
  color: #ffffff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 0;
  transition: background 0.3s ease;
  line-height: 1;
  vertical-align: middle;
}

body.page-id-5094 .practice-areas-btn:hover,
body.page-id-5094 a[href*="services"]:hover {
  background: #d4bb6f;
}
/* ===== Practice Areas Button Fix ===== */
body.page-id-5094 .practice-areas-btn,
body.page-id-5094 a[href*="services"] {
  display: inline-block;
  padding: 12px 40px !important;
  background: #e1c97f;
  color: #ffffff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 0;
  transition: background 0.3s ease;
  line-height: 1 !important;
  vertical-align: middle;
}

body.page-id-5094 .practice-areas-btn:hover,
body.page-id-5094 a[href*="services"]:hover {
  background: #d4bb6f;
}
/* ===== Practice Areas Button Fix ===== */
body.page-id-5094 .btn.btn-lg.text-center {
  padding: 12px 40px !important;
  background: #e1c97f !important;
  color: #ffffff !important;
  text-decoration: none;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 0 !important;
  transition: background 0.3s ease;
  line-height: 1 !important;
  vertical-align: middle;
  border: none !important;
}

body.page-id-5094 .btn.btn-lg.text-center:hover {
  background: #d4bb6f !important;
}
/* ===== Practice Areas Button Fix ===== */
body.page-id-5094 a.btn.btn-lg.text-center.mt-5.px-4 {
  padding: 12px 40px !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  background: #e1c97f !important;
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  transition: background 0.3s ease !important;
  line-height: 1 !important;
  height: auto !important;
  vertical-align: middle !important;
  border: none !important;
  box-sizing: border-box !important;
}

body.page-id-5094 a.btn.btn-lg.text-center.mt-5.px-4:hover {
  background: #d4bb6f !important;
}
/* ===== Featured Team Section ===== */
#featured-team-section {
  background-color: #1a3a52;
  padding: 80px 20px;
  text-align: center;
}

.featured-team-container {
  max-width: 965px;
  margin: 0 auto;
}
/* ===== Featured Team Section - UPDATED ===== */
#featured-team-section {
  background-color: #0d2437;
  padding: 80px 20px;
  text-align: center;
  position: relative;
  overflow: hidden;
}

/* Wave divider at top */
#featured-team-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background: #f5f5f5;
  clip-path: polygon(0 0, 100% 0, 100% 50%, 0 100%);
  transform: translateY(-40px);
}

.featured-team-container {
  max-width: 965px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.featured-team-heading {
  font-family: 'Montserrat', sans-serif;
  font-size: 36px;
  font-weight: 700;
  color: #e1c97f;
  margin-bottom: 20px;
  line-height: 1.3;
}

.featured-team-subheading {
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #ffffff;
  margin-bottom: 60px;
  line-height: 1.6;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

.featured-team-grid {
  display: flex;
  justify-content: center;
  gap: 40px;
  margin-bottom: 60px;
  flex-wrap: nowrap;
}

.team-member {
  flex: 0 1 280px;
  text-align: center;
}

.team-member-link {
  text-decoration: none;
  display: block;
  transition: transform 0.3s ease;
}

.team-member-link:hover {
  transform: translateY(-10px);
}

.team-member-image-wrapper {
  margin-bottom: 20px;
  overflow: hidden;
}

.team-member-image {
  width: 100%;
  max-width: 280px;
  height: auto;
  display: block;
  margin: 0 auto;
  transition: transform 0.3s ease;
}

.team-member-link:hover .team-member-image {
  transform: scale(1.05);
}

.team-member-name {
  font-family: 'Montserrat', sans-serif;
  font-size: 22px;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 8px;
  line-height: 1.3;
}

.team-member-title {
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #e1c97f;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin: 0;
}

.featured-team-button-wrapper {
  text-align: center;
}

.featured-team-button {
  display: inline-block;
  padding: 16px 40px;
  background: #e1c97f;
  color: #ffffff;
  text-decoration: none;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 0;
  transition: background 0.3s ease;
  line-height: 1;
}

.featured-team-button:hover {
  background: #d4bb6f;
}

/* ===== Mobile Responsive ===== */
@media (max-width: 768px) {
  .featured-team-heading {
    font-size: 28px;
  }
  
  .featured-team-subheading {
    font-size: 14px;
    margin-bottom: 40px;
  }
  
  .featured-team-grid {
    flex-direction: column;
    align-items: center;
    gap: 40px;
  }
  
  .team-member {
    max-width: 300px;
  }
}
/* ===== 4 C's Values Section ===== */
#four-cs-section {
  background-color: #f5f5f5;
  padding: 80px 20px;
  text-align: center;
}

.four-cs-container {
  max-width: 1200px;
  margin: 0 auto;
}

.four-cs-heading {
  font-family: 'Montserrat', sans-serif;
  font-size: 42px;
  font-weight: 700;
  color: #1a3a52;
  margin-bottom: 60px;
  line-height: 1.3;
}

.four-cs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  margin-bottom: 40px;
}

.cs-card {
  background-color: #ffffff;
  padding: 50px 40px;
  text-align: center;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.cs-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.cs-icon-wrapper {
  margin-bottom: 25px;
}

.cs-icon {
  width: 80px;
  height: 80px;
  margin: 0 auto;
  display: block;
}

.cs-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 32px;
  font-weight: 700;
  color: #1a3a52;
  margin-bottom: 20px;
  line-height: 1.3;
}

.cs-description {
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  font-weight: 400;
  color: #333333;
  line-height: 1.7;
  margin: 0;
}

/* ===== Mobile Responsive ===== */
@media (max-width: 768px) {
  .four-cs-heading {
    font-size: 32px;
    margin-bottom: 40px;
  }
  
  .four-cs-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  
  .cs-card {
    padding: 40px 30px;
  }
  
  .cs-title {
    font-size: 26px;
  }
}
/* ===== 4 C's Values Section ===== */
#four-cs-section {
  background-color: #ffffff;
  padding: 80px 20px;
  text-align: center;
}

.four-cs-container {
  max-width: 800px;
  margin: 0 auto;
}

.four-cs-heading {
  font-family: 'Montserrat', sans-serif;
  font-size: 42px;
  font-weight: 700;
  color: #1a3a52;
  margin-bottom: 60px;
  line-height: 1.3;
}

.four-cs-grid {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.cs-card {
  background-color: #ffffff;
  padding: 50px 40px;
  text-align: center;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.cs-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.cs-icon-wrapper {
  margin-bottom: 25px;
}

.cs-icon {
  width: 80px;
  height: 80px;
  margin: 0 auto;
  display: block;
}

.cs-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 32px;
  font-weight: 700;
  color: #1a3a52;
  margin-bottom: 20px;
  line-height: 1.3;
}

.cs-description {
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #2c2c2c;
  line-height: 1.8;
  margin: 0;
}

/* ===== Mobile Responsive ===== */
@media (max-width: 768px) {
  .four-cs-heading {
    font-size: 32px;
    margin-bottom: 40px;
  }
  
  .cs-card {
    padding: 40px 30px;
  }
  
  .cs-title {
    font-size: 26px;
  }
  
  .cs-description {
    font-size: 15px;
  }
}
/* ===== 4 C's Values Section ===== */
#four-cs-section {
  background-color: #ffffff;
  padding: 80px 20px;
  text-align: center;
}

.four-cs-container {
  max-width: 1300px;
  margin: 0 auto;
}

.four-cs-heading {
  font-family: 'Montserrat', sans-serif;
  font-size: 42px;
  font-weight: 700;
  color: #1a3a52;
  margin-bottom: 60px;
  line-height: 1.3;
}

.four-cs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}

.cs-card {
  background-color: #ffffff;
  padding: 50px 40px;
  text-align: center;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.cs-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.cs-icon-wrapper {
  margin-bottom: 25px;
}

.cs-icon {
  width: 80px;
  height: 80px;
  margin: 0 auto;
  display: block;
}

.cs-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 32px;
  font-weight: 700;
  color: #1a3a52;
  margin-bottom: 20px;
  line-height: 1.3;
}

.cs-description {
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #2c2c2c;
  line-height: 1.8;
  margin: 0;
}

/* ===== Mobile Responsive ===== */
@media (max-width: 768px) {
  .four-cs-heading {
    font-size: 32px;
    margin-bottom: 40px;
  }
  
  .four-cs-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  
  .cs-card {
    padding: 40px 30px;
  }
  
  .cs-title {
    font-size: 26px;
  }
  
  .cs-description {
    font-size: 15px;
  }
}
/* ===== 4 C's Values Section ===== */
#four-cs-section {
  background-color: #ffffff !important;
  padding: 80px 20px;
  text-align: center;
}

.four-cs-container {
  max-width: 1300px !important;
  margin: 0 auto !important;
  width: 100% !important;
}

.four-cs-heading {
  font-family: 'Montserrat', sans-serif;
  font-size: 42px;
  font-weight: 700;
  color: #1a3a52;
  margin-bottom: 60px;
  line-height: 1.3;
}

.four-cs-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 40px !important;
  width: 100% !important;
}

.cs-card {
  background-color: #ffffff !important;
  padding: 50px 40px;
  text-align: center;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  width: 100% !important;
  box-sizing: border-box !important;
}

.cs-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.cs-icon-wrapper {
  margin-bottom: 25px;
}

.cs-icon {
  width: 80px;
  height: 80px;
  margin: 0 auto;
  display: block;
}

.cs-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 32px;
  font-weight: 700;
  color: #1a3a52;
  margin-bottom: 20px;
  line-height: 1.3;
}

.cs-description {
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #2c2c2c;
  line-height: 1.8;
  margin: 0;
}

/* ===== Mobile Responsive ===== */
@media (max-width: 768px) {
  .four-cs-heading {
    font-size: 32px;
    margin-bottom: 40px;
  }
  
  .four-cs-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  
  .cs-card {
    padding: 40px 30px;
  }
  
  .cs-title {
    font-size: 26px;
  }
  
  .cs-description {
    font-size: 15px;
  }
}
/* ===== FOOTER LAYOUT TRANSFORMATION ===== */

/* Main footer background */
footer,
.footer-wrap,
.site-footer {
  background-color: #1a2f3f !important;
  color: #ffffff !important;
  padding: 60px 40px 30px !important;
}

/* Footer container - max width and centering */
footer .container,
.footer-wrap .container {
  max-width: 1300px !important;
  margin: 0 auto !important;
}

/* Footer main row - 4 column layout */
footer .row,
.footer-top .row {
  display: flex !important;
  justify-content: space-between !important;
  gap: 50px !important;
  flex-wrap: wrap !important;
}

/* Each footer column */
footer .footer-column,
footer [class*="col-"] {
  flex: 1 1 220px !important;
  min-width: 220px !important;
}

/* Logo styling */
footer .footer-logo img {
  max-width: 280px;
  margin-bottom: 30px;
}

/* Footer headings - gold and uppercase */
footer h3,
footer h4,
footer .widget-title {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  margin-bottom: 20px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em;
}

/* Footer links */
footer ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

footer ul li {
  margin-bottom: 12px !important;
}

footer a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  transition: color 0.3s ease;
}

footer a:hover {
  color: #e1c97f !important;
}

/* Contact info text */
footer p,
footer .footer-contact p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  margin-bottom: 10px !important;
}

/* Social icons */
footer .footer-social,
footer .social-icons {
  display: flex;
  gap: 15px;
  margin-top: 20px;
}

footer .footer-social a,
footer .social-icons a {
  color: #ffffff !important;
  font-size: 24px !important;
  transition: color 0.3s ease;
}

footer .footer-social a:hover,
footer .social-icons a:hover {
  color: #e1c97f !important;
}

/* Best Law Firms badge */
footer .footer-badge img,
footer .bl-logo2 {
  max-width: 150px;
  margin: 30px 0;
}

/* Email subscription form */
footer .subscribe-sc,
footer .footer-subscribe {
  margin-top: 30px;
}

footer .subscribe-sc p,
footer .footer-subscribe p {
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin-bottom: 15px !important;
}

footer input[type="email"],
footer .subscribe-sc input {
  width: 100%;
  max-width: 400px;
  padding: 12px 15px;
  border: none;
  border-radius: 4px;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  margin-bottom: 10px;
  background-color: #ffffff;
  color: #1a2f3f;
}

footer button[type="submit"],
footer .subscribe-sc button {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  padding: 12px 30px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer;
  transition: background-color 0.3s ease;
  text-transform: uppercase;
}

footer button[type="submit"]:hover,
footer .subscribe-sc button:hover {
  background-color: #d4bb6f !important;
}

/* Copyright section */
footer .footer-bottom,
footer .copyright {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin-top: 40px;
  padding-top: 20px;
  text-align: center;
}

footer .footer-bottom p,
footer .copyright p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  margin: 0 !important;
}

/* Back to top button */
.back-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  background-color: #e1c97f;
  color: #1a2f3f;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  z-index: 999;
}

.back-to-top:hover {
  background-color: #d4bb6f;
}

/* Mobile responsive */
@media (max-width: 768px) {
  footer .row,
  .footer-top .row {
    flex-direction: column;
    gap: 30px !important;
  }
  
  footer .footer-column,
  footer [class*="col-"] {
    min-width: 100% !important;
  }
  
  footer {
    padding: 40px 20px 20px !important;
  }
}
/* ===== FOOTER LAYOUT TRANSFORMATION ===== */

/* Main footer background */
footer,
.footer-wrap,
.site-footer {
  background-color: #1a2f3f !important;
  color: #ffffff !important;
  padding: 60px 40px 30px !important;
}

/* Footer container - max width and centering */
footer .container,
.footer-wrap .container {
  max-width: 1300px !important;
  margin: 0 auto !important;
}

/* Footer main row - 4 column layout */
footer .row,
.footer-top .row {
  display: flex !important;
  justify-content: space-between !important;
  gap: 50px !important;
  flex-wrap: wrap !important;
}

/* Each footer column */
footer .footer-column,
footer [class*="col-"] {
  flex: 1 1 220px !important;
  min-width: 220px !important;
}

/* Logo styling */
footer .footer-logo img {
  max-width: 280px;
  margin-bottom: 30px;
}

/* Footer headings - gold and uppercase */
footer h3,
footer h4,
footer .widget-title {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  margin-bottom: 20px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em;
}

/* Locations title specifically - gold */
footer .locations-title,
footer h3:contains("Locations"),
footer h4:contains("Locations") {
  color: #e1c97f !important;
}

/* Footer links */
footer ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

footer ul li {
  margin-bottom: 12px !important;
}

footer a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  transition: color 0.3s ease;
}

footer a:hover {
  color: #e1c97f !important;
}

/* Contact info text */
footer p,
footer .footer-contact p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  margin-bottom: 10px !important;
}

/* Social icons */
footer .footer-social,
footer .social-icons {
  display: flex;
  gap: 15px;
  margin-top: 20px;
}

footer .footer-social a,
footer .social-icons a {
  color: #ffffff !important;
  font-size: 24px !important;
  transition: color 0.3s ease;
}

footer .footer-social a:hover,
footer .social-icons a:hover {
  color: #e1c97f !important;
}

/* Best Law Firms badge */
footer .footer-badge img,
footer .bl-logo2 {
  max-width: 150px;
  margin: 30px 0;
}

/* Email subscription form */
footer .subscribe-sc,
footer .footer-subscribe {
  margin-top: 30px;
}

footer .subscribe-sc p,
footer .footer-subscribe p {
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin-bottom: 15px !important;
}

footer input[type="email"],
footer .subscribe-sc input {
  width: 100%;
  max-width: 400px;
  padding: 12px 15px;
  border: none;
  border-radius: 4px;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  margin-bottom: 10px;
  background-color: #ffffff;
  color: #1a2f3f;
}

footer button[type="submit"],
footer .subscribe-sc button {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  padding: 12px 30px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer;
  transition: background-color 0.3s ease;
  text-transform: uppercase;
}

footer button[type="submit"]:hover,
footer .subscribe-sc button:hover {
  background-color: #d4bb6f !important;
}

/* Copyright section */
footer .footer-bottom,
footer .copyright {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin-top: 40px;
  padding-top: 20px;
  text-align: center;
}

footer .footer-bottom p,
footer .copyright p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  margin: 0 !important;
}

/* Back to top button */
.back-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  background-color: #e1c97f;
  color: #1a2f3f;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  z-index: 999;
}

.back-to-top:hover {
  background-color: #d4bb6f;
}

/* Mobile responsive */
@media (max-width: 768px) {
  footer .row,
  .footer-top .row {
    flex-direction: column;
    gap: 30px !important;
  }
  
  footer .footer-column,
  footer [class*="col-"] {
    min-width: 100% !important;
  }
  
  footer {
    padding: 40px 20px 20px !important;
  }
}
 /* ===== FOOTER LAYOUT TRANSFORMATION ===== */

/* Main footer background */
footer,
.footer-wrap,
.site-footer {
  background-color: #1a2f3f !important;
  color: #ffffff !important;
  padding: 60px 40px 30px !important;
}

/* Footer container - max width and centering */
footer .container,
.footer-wrap .container {
  max-width: 1300px !important;
  margin: 0 auto !important;
}

/* Footer main row - 4 column layout */
footer .row,
.footer-top .row {
  display: flex !important;
  justify-content: space-between !important;
  gap: 50px !important;
  flex-wrap: wrap !important;
}

/* Each footer column */
footer .footer-column,
footer [class*="col-"] {
  flex: 1 1 220px !important;
  min-width: 220px !important;
}

/* Logo styling */
footer .footer-logo img {
  max-width: 280px;
  margin-bottom: 30px;
}

/* Footer headings - gold and uppercase */
footer h3,
footer h4,
footer h5,
footer .widget-title,
footer strong {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  margin-bottom: 15px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em;
}

/* Location titles specifically */
footer .location-title,
footer p strong,
footer div strong {
  color: #e1c97f !important;
  display: block !important;
  margin-bottom: 10px !important;
}

/* Remove ALL bullet points from footer */
footer ul,
footer ol {
  list-style: none !important;
  list-style-type: none !important;
  padding: 0 !important;
  padding-left: 0 !important;
  margin: 0 !important;
  margin-left: 0 !important;
}

footer ul li,
footer ol li,
footer li {
  margin-bottom: 12px !important;
  list-style: none !important;
  list-style-type: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

footer ul li::before,
footer ol li::before,
footer li::before {
  content: none !important;
  display: none !important;
}

footer ul li::marker,
footer ol li::marker,
footer li::marker {
  display: none !important;
  content: none !important;
}

/* Footer links */
footer a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  transition: color 0.3s ease;
}

footer a:hover {
  color: #e1c97f !important;
}

/* Contact info text */
footer p,
footer .footer-contact p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  margin-bottom: 10px !important;
}

/* Phone numbers styling */
footer p:contains("PHONE"),
footer .phone-number {
  color: #ffffff !important;
  font-weight: 400 !important;
}

/* Social icons - remove bullets */
footer .footer-social,
footer .social-icons {
  display: flex !important;
  gap: 15px;
  margin-top: 20px;
  list-style: none !important;
  padding: 0 !important;
}

footer .footer-social li,
footer .social-icons li {
  list-style: none !important;
  list-style-type: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

footer .footer-social li::before,
footer .social-icons li::before {
  display: none !important;
  content: none !important;
}

footer .footer-social a,
footer .social-icons a {
  color: #ffffff !important;
  font-size: 24px !important;
  transition: color 0.3s ease;
}

footer .footer-social a:hover,
footer .social-icons a:hover {
  color: #e1c97f !important;
}

/* Best Law Firms badge */
footer .footer-badge img,
footer .bl-logo2 {
  max-width: 150px;
  margin: 30px 0;
}

/* Email subscription form */
footer .subscribe-sc,
footer .footer-subscribe {
  margin-top: 30px;
}

footer .subscribe-sc p,
footer .footer-subscribe p {
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin-bottom: 15px !important;
}

footer input[type="email"],
footer .subscribe-sc input {
  width: 100%;
  max-width: 400px;
  padding: 12px 15px;
  border: none;
  border-radius: 4px;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  margin-bottom: 10px;
  background-color: #ffffff;
  color: #1a2f3f;
}

footer button[type="submit"],
footer .subscribe-sc button {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  padding: 12px 30px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer;
  transition: background-color 0.3s ease;
  text-transform: uppercase;
}

footer button[type="submit"]:hover,
footer .subscribe-sc button:hover {
  background-color: #d4bb6f !important;
}

/* Copyright section */
footer .footer-bottom,
footer .copyright {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin-top: 40px;
  padding-top: 20px;
  text-align: center;
}

footer .footer-bottom p,
footer .copyright p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  margin: 0 !important;
}

/* Back to top button */
.back-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  background-color: #e1c97f;
  color: #1a2f3f;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  z-index: 999;
}

.back-to-top:hover {
  background-color: #d4bb6f;
}

/* Mobile responsive */
@media (max-width: 768px) {
  footer .row,
  .footer-top .row {
    flex-direction: column;
    gap: 30px !important;
  }
  
  footer .footer-column,
  footer [class*="col-"] {
    min-width: 100% !important;
  }
  
  footer {
    padding: 40px 20px 20px !important;
  }
}    
/* ===== FOOTER LAYOUT TRANSFORMATION ===== */

/* Main footer background */
footer,
.footer-wrap,
.site-footer {
  background-color: #1a2f3f !important;
  color: #ffffff !important;
  padding: 60px 40px 30px !important;
}

/* Footer container - max width and centering */
footer .container,
.footer-wrap .container {
  max-width: 1300px !important;
  margin: 0 auto !important;
}

/* Footer main row - 4 column layout */
footer .row,
.footer-top .row {
  display: flex !important;
  justify-content: space-between !important;
  gap: 50px !important;
  flex-wrap: wrap !important;
}

/* Each footer column */
footer .footer-column,
footer [class*="col-"] {
  flex: 1 1 220px !important;
  min-width: 220px !important;
}

/* Logo styling */
footer .footer-logo img {
  max-width: 280px;
  margin-bottom: 30px;
}

/* Footer headings - gold and uppercase (for section titles like OFFICE HOURS) */
footer h3,
footer h4,
footer h5,
footer .widget-title {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  margin-bottom: 15px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em;
}

/* Location titles ONLY - make them gold */
footer strong,
footer p strong,
footer div strong,
footer span strong {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  display: block !important;
  margin-bottom: 8px !important;
  letter-spacing: 0.05em;
}

/* Remove ALL bullet points from footer */
footer ul,
footer ol {
  list-style: none !important;
  list-style-type: none !important;
  padding: 0 !important;
  padding-left: 0 !important;
  margin: 0 !important;
  margin-left: 0 !important;
}

footer ul li,
footer ol li,
footer li {
  margin-bottom: 12px !important;
  list-style: none !important;
  list-style-type: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

footer ul li::before,
footer ol li::before,
footer li::before {
  content: none !important;
  display: none !important;
}

footer ul li::marker,
footer ol li::marker,
footer li::marker {
  display: none !important;
  content: none !important;
}

/* Footer links */
footer a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  transition: color 0.3s ease;
}

footer a:hover {
  color: #e1c97f !important;
}

/* Contact info text - keep WHITE */
footer p,
footer .footer-contact p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  margin-bottom: 10px !important;
}

/* Phone numbers styling - keep WHITE */
footer p:contains("PHONE"),
footer .phone-number {
  color: #ffffff !important;
  font-weight: 400 !important;
}

/* Social icons - remove bullets */
footer .footer-social,
footer .social-icons {
  display: flex !important;
  gap: 15px;
  margin-top: 20px;
  list-style: none !important;
  padding: 0 !important;
}

footer .footer-social li,
footer .social-icons li {
  list-style: none !important;
  list-style-type: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

footer .footer-social li::before,
footer .social-icons li::before {
  display: none !important;
  content: none !important;
}

footer .footer-social a,
footer .social-icons a {
  color: #ffffff !important;
  font-size: 24px !important;
  transition: color 0.3s ease;
}

footer .footer-social a:hover,
footer .social-icons a:hover {
  color: #e1c97f !important;
}

/* Best Law Firms badge */
footer .footer-badge img,
footer .bl-logo2 {
  max-width: 150px;
  margin: 30px 0;
}

/* Email subscription form */
footer .subscribe-sc,
footer .footer-subscribe {
  margin-top: 30px;
}

footer .subscribe-sc p,
footer .footer-subscribe p {
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin-bottom: 15px !important;
}

footer input[type="email"],
footer .subscribe-sc input {
  width: 100%;
  max-width: 400px;
  padding: 12px 15px;
  border: none;
  border-radius: 4px;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  margin-bottom: 10px;
  background-color: #ffffff;
  color: #1a2f3f;
}

footer button[type="submit"],
footer .subscribe-sc button {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  padding: 12px 30px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer;
  transition: background-color 0.3s ease;
  text-transform: uppercase;
}

footer button[type="submit"]:hover,
footer .subscribe-sc button:hover {
  background-color: #d4bb6f !important;
}

/* Copyright section */
footer .footer-bottom,
footer .copyright {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin-top: 40px;
  padding-top: 20px;
  text-align: center;
}

footer .footer-bottom p,
footer .copyright p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  margin: 0 !important;
}

/* Back to top button */
.back-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  background-color: #e1c97f;
  color: #1a2f3f;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  z-index: 999;
}

.back-to-top:hover {
  background-color: #d4bb6f;
}

/* Mobile responsive */
@media (max-width: 768px) {
  footer .row,
  .footer-top .row {
    flex-direction: column;
    gap: 30px !important;
  }
  
  footer .footer-column,
  footer [class*="col-"] {
    min-width: 100% !important;
  }
  
  footer {
    padding: 40px 20px 20px !important;
  }
}
/* ===== FOOTER LAYOUT TRANSFORMATION ===== */

/* Main footer background */
footer,
.footer-wrap,
.site-footer {
  background-color: #1a2f3f !important;
  color: #ffffff !important;
  padding: 60px 40px 30px !important;
}

/* Footer container - max width and centering */
footer .container,
.footer-wrap .container {
  max-width: 1300px !important;
  margin: 0 auto !important;
}

/* Footer main row - 4 column layout */
footer .row,
.footer-top .row {
  display: flex !important;
  justify-content: space-between !important;
  gap: 50px !important;
  flex-wrap: wrap !important;
}

/* Each footer column */
footer .footer-column,
footer [class*="col-"] {
  flex: 1 1 220px !important;
  min-width: 220px !important;
}

/* Logo styling */
footer .footer-logo img {
  max-width: 280px;
  margin-bottom: 30px;
}

/* Footer headings - gold and uppercase (for section titles like OFFICE HOURS) */
footer h3,
footer h4,
footer h5,
footer .widget-title {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  margin-bottom: 15px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em;
}

/* Location titles ONLY - make them gold */
footer strong,
footer p strong,
footer div strong,
footer span strong {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  display: block !important;
  margin-bottom: 8px !important;
  letter-spacing: 0.05em;
}

/* Remove ALL bullet points from footer */
footer ul,
footer ol {
  list-style: none !important;
  list-style-type: none !important;
  padding: 0 !important;
  padding-left: 0 !important;
  margin: 0 !important;
  margin-left: 0 !important;
}

footer ul li,
footer ol li,
footer li {
  margin-bottom: 12px !important;
  list-style: none !important;
  list-style-type: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

footer ul li::before,
footer ol li::before,
footer li::before {
  content: none !important;
  display: none !important;
}

footer ul li::marker,
footer ol li::marker,
footer li::marker {
  display: none !important;
  content: none !important;
}

/* Footer links */
footer a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  transition: color 0.3s ease;
}

footer a:hover {
  color: #e1c97f !important;
}

/* Contact info text - keep WHITE */
footer p,
footer .footer-contact p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  margin-bottom: 10px !important;
}

/* Phone numbers styling - keep WHITE */
footer p:contains("PHONE"),
footer .phone-number {
  color: #ffffff !important;
  font-weight: 400 !important;
}

/* Social icons - remove bullets */
footer .footer-social,
footer .social-icons {
  display: flex !important;
  gap: 15px;
  margin-top: 20px;
  list-style: none !important;
  padding: 0 !important;
}

footer .footer-social li,
footer .social-icons li {
  list-style: none !important;
  list-style-type: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

footer .footer-social li::before,
footer .social-icons li::before {
  display: none !important;
  content: none !important;
}

footer .footer-social a,
footer .social-icons a {
  color: #ffffff !important;
  font-size: 24px !important;
  transition: color 0.3s ease;
}

footer .footer-social a:hover,
footer .social-icons a:hover {
  color: #e1c97f !important;
}

/* Best Law Firms badge */
footer .footer-badge img,
footer .bl-logo2 {
  max-width: 150px;
  margin: 30px 0;
}

/* Email subscription form */
footer .subscribe-sc,
footer .footer-subscribe {
  margin-top: 30px;
}

footer .subscribe-sc p,
footer .footer-subscribe p {
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin-bottom: 15px !important;
}

footer input[type="email"],
footer .subscribe-sc input {
  width: 100%;
  max-width: 400px;
  padding: 12px 15px;
  border: none;
  border-radius: 4px;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  margin-bottom: 10px;
  background-color: #ffffff;
  color: #1a2f3f;
}

footer button[type="submit"],
footer .subscribe-sc button {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  padding: 12px 30px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer;
  transition: background-color 0.3s ease;
  text-transform: uppercase;
}

footer button[type="submit"]:hover,
footer .subscribe-sc button:hover {
  background-color: #d4bb6f !important;
}

/* Copyright section */
footer .footer-bottom,
footer .copyright {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin-top: 40px;
  padding-top: 20px;
  text-align: center;
}

footer .footer-bottom p,
footer .copyright p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  margin: 0 !important;
}

/* Back to top button */
.back-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  background-color: #e1c97f;
  color: #1a2f3f;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  z-index: 999;
}

.back-to-top:hover {
  background-color: #d4bb6f;
}

/* Mobile responsive */
@media (max-width: 768px) {
  footer .row,
  .footer-top .row {
    flex-direction: column;
    gap: 30px !important;
  }
  
  footer .footer-column,
  footer [class*="col-"] {
    min-width: 100% !important;
  }
  
  footer {
    padding: 40px 20px 20px !important;
  }
}
/* ===== FOOTER LAYOUT TRANSFORMATION ===== */

/* Main footer background */
footer,
.footer-wrap,
.site-footer {
  background-color: #1a2f3f !important;
  color: #ffffff !important;
  padding: 60px 40px 30px !important;
}

/* Footer container - max width and centering */
footer .container,
.footer-wrap .container {
  max-width: 1300px !important;
  margin: 0 auto !important;
}

/* Footer main row - 4 column layout */
footer .row,
.footer-top .row {
  display: flex !important;
  justify-content: space-between !important;
  gap: 50px !important;
  flex-wrap: wrap !important;
}

/* Each footer column */
footer .footer-column,
footer [class*="col-"] {
  flex: 1 1 220px !important;
  min-width: 220px !important;
}

/* Logo styling */
footer .footer-logo img {
  max-width: 280px;
  margin-bottom: 30px;
}

/* Footer section headings - GOLD (like "OFFICE HOURS", location names, "Follow Us") */
footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6,
footer .widget-title,
footer .footer-widget-title,
footer .widgettitle {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  margin-bottom: 15px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

/* If location names are in paragraphs with specific class or first paragraph */
footer .footer-column > p:first-of-type,
footer [class*="col-"] > p:first-of-type {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 15px !important;
}

/* All regular content text - WHITE */
footer p,
footer li,
footer span,
footer div {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
}

/* Override first paragraph rule for subsequent paragraphs */
footer p:not(:first-of-type),
footer .footer-contact p {
  color: #ffffff !important;
  font-weight: 400 !important;
  text-transform: none !important;
  margin-bottom: 10px !important;
}

/* Remove ALL bullet points from footer */
footer ul,
footer ol {
  list-style: none !important;
  list-style-type: none !important;
  padding: 0 !important;
  padding-left: 0 !important;
  margin: 0 !important;
  margin-left: 0 !important;
}

footer ul li,
footer ol li,
footer li {
  margin-bottom: 12px !important;
  list-style: none !important;
  list-style-type: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

footer ul li::before,
footer ol li::before,
footer li::before {
  content: none !important;
  display: none !important;
}

footer ul li::marker,
footer ol li::marker,
footer li::marker {
  display: none !important;
  content: none !important;
}

/* Footer links */
footer a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  transition: color 0.3s ease;
}

footer a:hover {
  color: #e1c97f !important;
}

/* Social icons section */
footer .footer-social,
footer .social-icons {
  display: flex !important;
  gap: 15px;
  margin-top: 20px;
  list-style: none !important;
  padding: 0 !important;
}

/* "Follow Us" heading */
footer .footer-social h3,
footer .footer-social h4,
footer h3:contains("Follow"),
footer h4:contains("Follow") {
  color: #e1c97f !important;
}

footer .footer-social li,
footer .social-icons li {
  list-style: none !important;
  list-style-type: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

footer .footer-social li::before,
footer .social-icons li::before {
  display: none !important;
  content: none !important;
}

footer .footer-social a,
footer .social-icons a {
  color: #ffffff !important;
  font-size: 24px !important;
  transition: color 0.3s ease;
}

footer .footer-social a:hover,
footer .social-icons a:hover {
  color: #e1c97f !important;
}

/* Best Law Firms badge */
footer .footer-badge img,
footer .bl-logo2 {
  max-width: 150px;
  margin: 30px 0;
}

/* Email subscription form */
footer .subscribe-sc,
footer .footer-subscribe {
  margin-top: 30px;
}

footer .subscribe-sc p,
footer .footer-subscribe p {
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin-bottom: 15px !important;
}

footer input[type="email"],
footer .subscribe-sc input {
  width: 100%;
  max-width: 400px;
  padding: 12px 15px;
  border: none;
  border-radius: 4px;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  margin-bottom: 10px;
  background-color: #ffffff;
  color: #1a2f3f;
}

footer button[type="submit"],
footer .subscribe-sc button {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  padding: 12px 30px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer;
  transition: background-color 0.3s ease;
  text-transform: uppercase;
}

footer button[type="submit"]:hover,
footer .subscribe-sc button:hover {
  background-color: #d4bb6f !important;
}

/* Copyright section */
footer .footer-bottom,
footer .copyright {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin-top: 40px;
  padding-top: 20px;
  text-align: center;
}

footer .footer-bottom p,
footer .copyright p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  margin: 0 !important;
}

/* Back to top button */
.back-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  background-color: #e1c97f;
  color: #1a2f3f;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  z-index: 999;
}

.back-to-top:hover {
  background-color: #d4bb6f;
}

/* Mobile responsive */
@media (max-width: 768px) {
  footer .row,
  .footer-top .row {
    flex-direction: column;
    gap: 30px !important;
  }
  
  footer .footer-column,
  footer [class*="col-"] {
    min-width: 100% !important;
  }
  
  footer {
    padding: 40px 20px 20px !important;
  }
}
/* Target the location/city names specifically */
footer .nap-post-title,
footer .div.nap-post-title,
footer [class*="nap-post-title"] {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 15px !important;
}

/* Widget titles like "Contact Us" - also gold */
footer .widget-title,
footer .widget-title.h4 {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 20px !important;
}

/* Keep all other text WHITE */
footer .address-wrap,
footer .nap-postal-address-wrap,
footer .business-name,
footer .address,
footer .phone {
  color: #ffffff !important;
}
/* Force horizontal multi-column layout */
footer .footer-row,
footer .location-wrap,
footer [class*="location"] {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 40px !important;
}

/* Make location columns equal width */
footer .location.footer-map-col {
  flex: 1 1 300px !important;
  max-width: 350px !important;
}

/* Move location name to top and make it prominent */
footer .nap-post-title {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 15px !important;
  order: -1 !important;
}

/* Ensure address info follows */
footer .nap-postal-address-wrap {
  color: #ffffff !important;
  order: 1 !important;
}

/* "OFFICE HOURS" section - keep gold */
footer .footer-hours h4,
footer .widget-title {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  text-transform: uppercase !important;
}
/* ===== FOOTER LAYOUT - MATCH TARGET DESIGN ===== */

/* Main footer background */
footer,
.footer-wrap,
.site-footer {
  background-color: #1a2f3f !important;
  color: #ffffff !important;
  padding: 60px 40px 30px !important;
}

/* Footer top section - two column layout (left sidebar + right locations) */
.footer-top .container {
  max-width: 1400px !important;
  margin: 0 auto !important;
}

.footer-top .footer-row {
  display: flex !important;
  gap: 60px !important;
  align-items: flex-start !important;
}

/* Left column - logo, menu, social */
.footer-top .col.footer-left {
  flex: 0 0 280px !important;
  max-width: 280px !important;
}

/* Right column - locations and office hours */
.footer-top .col.footer-right {
  flex: 1 !important;
}

/* Footer locations - HORIZONTAL GRID LAYOUT */
.footer-locations.footer-nap-row {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 40px 50px !important;
  margin-bottom: 30px !important;
}

/* Individual location blocks */
.footer-locations .location.footer-nap-col {
  display: flex !important;
  flex-direction: column !important;
}

/* Location/City names - GOLD and prominent at top */
.footer-locations .nap-post-title {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 10px !important;
  display: block !important;
}

/* Sub-heading (like "By Appointment Only") - WHITE and italic */
.footer-locations .sub_heading {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 14px !important;
  font-style: italic !important;
  margin-bottom: 8px !important;
}

/* Address and contact info - WHITE */
.footer-locations .address,
.footer-locations .phone,
.footer-locations .email {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  margin-bottom: 8px !important;
}

.footer-locations .address a,
.footer-locations .phone a,
.footer-locations .email a {
  color: #ffffff !important;
  text-decoration: none !important;
  transition: color 0.3s ease;
}

.footer-locations .address a:hover,
.footer-locations .phone a:hover,
.footer-locations .email a:hover {
  color: #e1c97f !important;
}

/* "PHONE:" label styling */
.footer-locations .phone {
  font-weight: 400 !important;
}

/* Office Hours section - GOLD heading */
.footer_hours {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.footer_hours h3,
.footer_hours h4,
.footer_hours h5,
.footer_hours .widget-title,
.footer_hours p:first-child,
.footer_hours strong:first-child {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 12px !important;
  display: block !important;
}

/* Office hours content - WHITE */
.footer_hours p,
.footer_hours div {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
}

/* Left column elements */
.footer-left .footer-logo img {
  max-width: 250px;
  margin-bottom: 30px;
}

/* Navigation menu - WHITE */
.footer-left .menu,
.footer-left ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 30px 0 !important;
}

.footer-left .menu li,
.footer-left ul li {
  margin-bottom: 12px !important;
  list-style: none !important;
}

.footer-left .menu a,
.footer-left ul a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  transition: color 0.3s ease;
}

.footer-left .menu a:hover,
.footer-left ul a:hover {
  color: #e1c97f !important;
}

/* Social section */
.footer-social {
  margin-top: 30px !important;
}

.footer-social .social-title .h5 {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

.footer-social .social-media {
  display: flex !important;
  gap: 15px;
  list-style: none !important;
  padding: 0 !important;
}

.footer-social .social-media li {
  list-style: none !important;
}

.footer-social .social-media a {
  color: #ffffff !important;
  font-size: 24px !important;
  transition: color 0.3s ease;
}

.footer-social .social-media a:hover {
  color: #e1c97f !important;
}

/* Email subscription section */
.subscribe-sc {
  margin-top: 30px !important;
}

.subscribe-sc .top-sc p,
.subscribe-sc p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

.subscribe-sc input[type="email"] {
  width: 100%;
  max-width: 450px;
  padding: 12px 15px;
  border: none;
  border-radius: 4px;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  margin-bottom: 10px;
  background-color: #ffffff;
  color: #1a2f3f;
}

.subscribe-sc button[type="submit"],
.subscribe-sc input[type="submit"] {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  padding: 12px 30px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer;
  transition: background-color 0.3s ease;
  text-transform: uppercase;
}

.subscribe-sc button[type="submit"]:hover,
.subscribe-sc input[type="submit"]:hover {
  background-color: #d4bb6f !important;
}

/* Copyright section */
.footer-copyright {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin-top: 40px !important;
}

.footer-copyright .copyright-privacy {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  text-align: center;
}

/* Remove all list bullets globally in footer */
footer ul,
footer ol {
  list-style: none !important;
  list-style-type: none !important;
}

footer ul li::before,
footer ol li::before,
footer li::before {
  content: none !important;
  display: none !important;
}

footer ul li::marker,
footer ol li::marker,
footer li::marker {
  display: none !important;
}

/* Mobile responsive */
@media (max-width: 992px) {
  .footer-top .footer-row {
    flex-direction: column;
    gap: 40px !important;
  }
  
  .footer-top .col.footer-left {
    flex: 1 !important;
    max-width: 100% !important;
  }
  
  .footer-locations.footer-nap-row {
    grid-template-columns: 1fr !important;
  }
  
  footer {
    padding: 40px 20px 20px !important;
  }
}
/* ===== FOOTER LAYOUT - MATCH TARGET DESIGN ===== */

/* Main footer background */
footer,
.footer-wrap,
.site-footer,
.footer-top {
  background-color: #1a2f3f !important;
  color: #ffffff !important;
  padding: 60px 40px 30px !important;
}

/* Footer top section - two column layout */
.footer-top .container {
  max-width: 1400px !important;
  margin: 0 auto !important;
}

.footer-top .footer-row {
  display: flex !important;
  gap: 60px !important;
  align-items: flex-start !important;
}

/* Left column - logo, menu, badge, social */
.footer-top .col.footer-left {
  flex: 0 0 280px !important;
  max-width: 280px !important;
}

/* Right column - ALL locations and office hours side by side */
.footer-top .col.footer-right {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

/* CRITICAL: Make locations display in HORIZONTAL GRID (columns across) */
.footer-right .footer-block-3.footer-contact {
  width: 100% !important;
}

.footer-locations.footer-nap-row {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 30px 40px !important;
  margin-bottom: 40px !important;
}

/* Individual location blocks */
.footer-locations .location.footer-nap-col {
  display: flex !important;
  flex-direction: column !important;
}

/* Location/City names - GOLD and prominent */
.footer-locations .nap-post-title {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 12px !important;
  display: block !important;
}

/* Sub-heading (like "By Appointment Only") - WHITE italic */
.footer-locations .sub_heading {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 14px !important;
  font-style: italic !important;
  margin-bottom: 10px !important;
}

/* Address text - WHITE */
.footer-locations .address {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  margin-bottom: 10px !important;
}

.footer-locations .address span {
  color: #ffffff !important;
}

/* Phone numbers - WHITE */
.footer-locations .phone {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  margin-bottom: 8px !important;
}

.footer-locations .phone a {
  color: #ffffff !important;
  text-decoration: none !important;
  transition: color 0.3s ease;
}

.footer-locations .phone a:hover {
  color: #e1c97f !important;
}

/* Links in addresses */
.footer-locations .direction-link {
  color: #ffffff !important;
  text-decoration: none !important;
}

.footer-locations .direction-link:hover {
  color: #e1c97f !important;
}

/* Office Hours section - position alongside locations */
.footer_hours {
  margin-bottom: 30px !important;
  grid-column: 1 / -1 !important; /* Span full width below locations */
}

/* Office Hours heading - GOLD */
.footer_hours h3,
.footer_hours h4,
.footer_hours h5,
.footer_hours p strong:first-child {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 12px !important;
  display: block !important;
}

/* Office hours details - WHITE */
.footer_hours p,
.footer_hours div {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
}

/* === LEFT COLUMN STYLING === */

/* Logo */
.footer-left .footer-logo img {
  max-width: 250px;
  margin-bottom: 30px;
}

/* Navigation menu - WHITE */
.footer-left .menu,
.footer-left ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 30px 0 !important;
}

.footer-left .menu li,
.footer-left ul li {
  margin-bottom: 12px !important;
  list-style: none !important;
  padding: 0 !important;
}

.footer-left .menu li::before,
.footer-left ul li::before {
  display: none !important;
  content: none !important;
}

.footer-left .menu a,
.footer-left ul a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  transition: color 0.3s ease;
}

.footer-left .menu a:hover,
.footer-left ul a:hover {
  color: #e1c97f !important;
}

/* Best Law Firms Badge */
.footer-left .footer_left_content img {
  max-width: 200px;
  margin: 20px 0;
}

/* Social section */
.footer-social {
  margin-top: 30px !important;
}

.footer-social .social-title .h5 {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 15px !important;
}

.footer-social .social-media {
  display: flex !important;
  gap: 15px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.footer-social .social-media li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-social .social-media li::before {
  display: none !important;
  content: none !important;
}

.footer-social .social-media a {
  color: #ffffff !important;
  font-size: 24px !important;
  transition: color 0.3s ease;
  text-decoration: none !important;
}

.footer-social .social-media a:hover {
  color: #e1c97f !important;
}

/* === EMAIL SUBSCRIPTION === */
.subscribe-sc {
  margin-top: 40px !important;
}

.subscribe-sc .top-sc,
.subscribe-sc .top-sc p,
.subscribe-sc > p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin-bottom: 15px !important;
}

.subscribe-sc input[type="email"],
.subscribe-sc .wpcf7-form-control.wpcf7-email {
  width: 100% !important;
  max-width: 500px !important;
  padding: 12px 15px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 14px !important;
  margin-bottom: 12px !important;
  background-color: #ffffff !important;
  color: #1a2f3f !important;
}

.subscribe-sc button[type="submit"],
.subscribe-sc input[type="submit"],
.subscribe-sc .wpcf7-form-control.wpcf7-submit {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  padding: 12px 30px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: background-color 0.3s ease !important;
  text-transform: uppercase !important;
}

.subscribe-sc button[type="submit"]:hover,
.subscribe-sc input[type="submit"]:hover,
.subscribe-sc .wpcf7-form-control.wpcf7-submit:hover {
  background-color: #d4bb6f !important;
}

.subscribe-sc .btm-sc,
.subscribe-sc .btm-sc p {
  color: #ffffff !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  margin-top: 10px !important;
}

.subscribe-sc .btm-sc a {
  color: #e1c97f !important;
  text-decoration: underline !important;
}

/* === COPYRIGHT SECTION === */
.footer-copyright {
  border-top: 1px solid rgba(255, 255, 255, 0.2) !important;
  margin-top: 40px !important;
  padding-top: 20px !important;
}

.footer-copyright .copyright-privacy {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  text-align: center !important;
}

/* Scroll to top button */
.scroll-top a {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.3s ease;
}

.scroll-top a:hover {
  background-color: #d4bb6f !important;
}

/* Remove all list styling globally in footer */
footer ul,
footer ol {
  list-style: none !important;
  list-style-type: none !important;
}

footer ul li::before,
footer ol li::before,
footer li::before {
  content: none !important;
  display: none !important;
}

footer ul li::marker,
footer ol li::marker,
footer li::marker {
  display: none !important;
  content: none !important;
}

/* === MOBILE RESPONSIVE === */
@media (max-width: 1200px) {
  .footer-locations.footer-nap-row {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

@media (max-width: 992px) {
  .footer-top .footer-row {
    flex-direction: column !important;
    gap: 40px !important;
  }
  
  .footer-top .col.footer-left {
    flex: 1 !important;
    max-width: 100% !important;
  }
  
  .footer-locations.footer-nap-row {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 768px) {
  .footer-locations.footer-nap-row {
    grid-template-columns: 1fr !important;
  }
  
  footer,
  .footer-top {
    padding: 40px 20px 20px !important;
  }
}
/* ===== FOOTER LAYOUT - MATCH TARGET DESIGN ===== */

/* Main footer background */
footer,
.footer-wrap,
.site-footer,
.footer-top {
  background-color: #1a2f3f !important;
  color: #ffffff !important;
}

.footer-top {
  padding: 60px 40px 30px !important;
}

/* Footer container */
.footer-top .container {
  max-width: 1400px !important;
  margin: 0 auto !important;
}

/* Main footer row - side by side layout */
.footer-top .footer-row {
  display: flex !important;
  gap: 60px !important;
  align-items: flex-start !important;
}

/* Left column - logo, menu, badge, office hours, social */
.footer-top .col.footer-left {
  flex: 0 0 320px !important;
  max-width: 320px !important;
}

/* Right column - locations in grid */
.footer-top .col.footer-right {
  flex: 1 !important;
}

/* === LOCATIONS GRID === */
.footer-right .footer-block-3.footer-contact {
  width: 100% !important;
}

/* 3 columns across, 2 rows down (6 locations total) */
.footer-locations.footer-nap-row {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 35px 50px !important;
  margin-bottom: 0 !important;
}

/* Individual location styling */
.footer-locations .location.footer-nap-col {
  display: flex !important;
  flex-direction: column !important;
}

/* Location names - GOLD */
.footer-locations .nap-post-title {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 10px !important;
  display: block !important;
}

/* "By Appointment Only" - WHITE italic */
.footer-locations .sub_heading {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 14px !important;
  font-style: italic !important;
  margin-bottom: 8px !important;
}

/* Addresses - WHITE */
.footer-locations .address {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  margin-bottom: 8px !important;
}

.footer-locations .address span {
  color: #ffffff !important;
}

.footer-locations .address a,
.footer-locations .direction-link {
  color: #ffffff !important;
  text-decoration: none !important;
}

/* Phone numbers - WHITE */
.footer-locations .phone {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  margin-bottom: 8px !important;
  font-weight: 400 !important;
}

.footer-locations .phone a {
  color: #ffffff !important;
  text-decoration: none !important;
}

.footer-locations .phone a:hover,
.footer-locations .address a:hover {
  color: #e1c97f !important;
}

/* === OFFICE HOURS - Move to LEFT column === */
.footer_hours {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
  order: 3 !important; /* Position after badge, before social */
}

/* Office Hours heading - GOLD */
.footer_hours h3,
.footer_hours h4,
.footer_hours h5,
.footer_hours strong:first-child,
.footer_hours p:first-child strong {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 10px !important;
  display: block !important;
}

/* Office hours content - WHITE */
.footer_hours p,
.footer_hours div {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  margin-bottom: 5px !important;
}

/* === LEFT COLUMN ELEMENTS === */

/* Logo */
.footer-left .footer-logo {
  margin-bottom: 30px !important;
  order: 1 !important;
}

.footer-left .footer-logo img {
  max-width: 260px;
}

/* Navigation menu */
.footer-left .menu,
.footer-left ul:not(.social-media) {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 25px 0 !important;
  order: 2 !important;
}

.footer-left .menu li,
.footer-left ul:not(.social-media) li {
  margin-bottom: 10px !important;
  list-style: none !important;
  padding: 0 !important;
}

.footer-left .menu li::before,
.footer-left ul:not(.social-media) li::before {
  display: none !important;
  content: none !important;
}

.footer-left .menu a,
.footer-left ul:not(.social-media) a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  transition: color 0.3s ease;
}

.footer-left .menu a:hover,
.footer-left ul:not(.social-media) a:hover {
  color: #e1c97f !important;
}

/* Best Law Firms Badge */
.footer-left .footer_left_content {
  margin: 25px 0 !important;
  order: 4 !important;
}

.footer-left .footer_left_content img {
  max-width: 220px;
}

/* Social Media */
.footer-social {
  margin-top: 30px !important;
  order: 5 !important;
}

.footer-social .social-title .h5 {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 15px !important;
}

.footer-social .social-media {
  display: flex !important;
  gap: 15px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.footer-social .social-media li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-social .social-media li::before {
  display: none !important;
}

.footer-social .social-media a {
  color: #ffffff !important;
  font-size: 24px !important;
  text-decoration: none !important;
  transition: color 0.3s ease;
}

.footer-social .social-media a:hover {
  color: #e1c97f !important;
}

/* === EMAIL SUBSCRIPTION (bottom section) === */
.subscribe-sc {
  margin-top: 50px !important;
  padding-top: 40px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.subscribe-sc .top-sc,
.subscribe-sc .top-sc p,
.subscribe-sc > p {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin-bottom: 15px !important;
}

.subscribe-sc .signup-form-sc {
  display: flex !important;
  gap: 10px !important;
  align-items: flex-start !important;
  max-width: 700px !important;
}

.subscribe-sc input[type="email"],
.subscribe-sc .wpcf7-form-control.wpcf7-email {
  flex: 1 !important;
  padding: 12px 15px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 14px !important;
  background-color: #ffffff !important;
  color: #1a2f3f !important;
  margin: 0 !important;
}

.subscribe-sc button[type="submit"],
.subscribe-sc input[type="submit"],
.subscribe-sc .wpcf7-form-control.wpcf7-submit {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  padding: 12px 30px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: background-color 0.3s ease !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.subscribe-sc button[type="submit"]:hover,
.subscribe-sc input[type="submit"]:hover,
.subscribe-sc .wpcf7-form-control.wpcf7-submit:hover {
  background-color: #d4bb6f !important;
}

.subscribe-sc .btm-sc,
.subscribe-sc .btm-sc p {
  color: #ffffff !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  margin-top: 10px !important;
}

.subscribe-sc .btm-sc a {
  color: #e1c97f !important;
  text-decoration: underline !important;
}

/* === COPYRIGHT === */
.footer-copyright {
  border-top: 1px solid rgba(255, 255, 255, 0.2) !important;
  margin-top: 40px !important;
  padding-top: 20px !important;
}

.footer-copyright .copyright-row {
  padding: 20px 0 !important;
}

.footer-copyright .copyright-privacy {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 13px !important;
  text-align: center !important;
}

/* Scroll to top */
.scroll-top a {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.3s ease;
  text-decoration: none !important;
}

.scroll-top a:hover {
  background-color: #d4bb6f !important;
}

/* Remove all bullets */
footer ul,
footer ol {
  list-style: none !important;
  list-style-type: none !important;
}

footer li::before,
footer li::marker {
  display: none !important;
  content: none !important;
}

/* === RESPONSIVE === */
@media (max-width: 1200px) {
  .footer-locations.footer-nap-row {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 992px) {
  .footer-top .footer-row {
    flex-direction: column !important;
  }
  
  .footer-top .col.footer-left {
    flex: 1 !important;
    max-width: 100% !important;
  }
}

@media (max-width: 768px) {
  .footer-locations.footer-nap-row {
    grid-template-columns: 1fr !important;
  }
  
  .footer-top {
    padding: 40px 20px 20px !important;
  }
  
  .subscribe-sc .signup-form-sc {
    flex-direction: column !important;
  }
  
  .subscribe-sc input[type="email"] {
    width: 100% !important;
  }
}
/* === FEATURED TEAM SECTION === */

#featured-team-section {
  background-color: #1a2f3f !important;
  padding: 80px 40px !important;
}

.featured-team-container {
  max-width: 1400px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

/* Headings */
.featured-team-heading {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 36px !important;
  font-weight: 700 !important;
  margin-bottom: 20px !important;
  text-transform: none !important;
}

.featured-team-subheading {
  color: #ffffff !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 18px !important;
  line-height: 1.6 !important;
  max-width: 800px !important;
  margin: 0 auto 60px !important;
}

/* Team Grid - FORCE 3 columns on one row */
.featured-team-grid {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: space-between !important;
  gap: 30px !important;
  margin-bottom: 50px !important;
  align-items: flex-end !important; /* Align to bottom of images */
}

/* Individual team member card - equal width */
.team-member {
  flex: 1 1 33.333% !important;
  max-width: 33.333% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

.team-member-link {
  text-decoration: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  width: 100% !important;
  transition: transform 0.3s ease !important;
}

.team-member-link:hover {
  transform: translateY(-5px) !important;
}

/* Image wrapper - FIXED HEIGHT for perfect alignment */
.team-member-image-wrapper {
  width: 100% !important;
  height: 550px !important; /* Fixed height */
  margin-bottom: 20px !important;
  display: flex !important;
  align-items: flex-end !important; /* Align images to bottom */
  justify-content: center !important;
  overflow: hidden !important;
}

.team-member-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important; /* Cover the container */
  object-position: center top !important; /* Focus on faces */
  display: block !important;
}

/* Team member name */
.team-member-name {
  color: #ffffff !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  margin-bottom: 8px !important;
  text-align: center !important;
  line-height: 1.3 !important;
}

/* Team member title */
.team-member-title {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  margin: 0 !important;
  text-align: center !important;
}

/* Button */
.featured-team-button-wrapper {
  text-align: center !important;
  margin-top: 40px !important;
}

.featured-team-button {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  padding: 15px 40px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background-color 0.3s ease !important;
  cursor: pointer !important;
}

.featured-team-button:hover {
  background-color: #d4bb6f !important;
  color: #1a2f3f !important;
  text-decoration: none !important;
}

/* Responsive */
@media (max-width: 992px) {
  .featured-team-grid {
    flex-wrap: wrap !important;
  }
  
  .team-member {
    flex: 1 1 45% !important;
    max-width: 45% !important;
  }
}

@media (max-width: 768px) {
  #featured-team-section {
    padding: 60px 20px !important;
  }
  
  .featured-team-heading {
    font-size: 28px !important;
  }
  
  .featured-team-subheading {
    font-size: 16px !important;
  }
  
  .featured-team-grid {
    flex-direction: column !important;
    align-items: center !important;
  }
  
  .team-member {
    flex: 1 1 100% !important;
    max-width: 400px !important;
  }
  
  .team-member-image-wrapper {
    height: auto !important;
  }
  
  .team-member-image {
    object-fit: contain !important;
  }
}
/* === TESTIMONIALS SECTION === */

/* Trustindex Google Reviews Widget Styling */
.ti-widget {
  background-color: #f8f8f8 !important;
  padding: 80px 40px !important;
}

.ti-widget .ti-widget-container {
  max-width: 1400px !important;
  margin: 0 auto !important;
}

/* Main heading "What Our Clients Are Saying" */
.ti-widget h2,
.ti-header {
  color: #1a2f3f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 36px !important;
  font-weight: 700 !important;
  text-align: center !important;
  margin-bottom: 50px !important;
}

/* Review cards container */
.ti-reviews-container {
  display: flex !important;
  gap: 30px !important;
  overflow-x: auto !important;
  padding-bottom: 20px !important;
}

/* Individual review cards */
.ti-review-item {
  background-color: #ffffff !important;
  border-radius: 8px !important;
  padding: 30px !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
  min-width: 300px !important;
  flex: 0 0 auto !important;
}

/* Reviewer name */
.ti-review-header {
  margin-bottom: 15px !important;
}

.ti-name {
  color: #1a2f3f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
}

/* Star ratings */
.ti-stars {
  margin: 10px 0 !important;
}

.ti-star {
  width: 20px !important;
  height: 20px !important;
  margin-right: 3px !important;
}

/* Review text */
.ti-review-content {
  color: #2c2c2c !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  margin-top: 15px !important;
}

/* Read more button */
.ti-read-more {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  margin-top: 10px !important;
  display: inline-block !important;
}

.ti-read-more:hover {
  text-decoration: underline !important;
}

/* Google logo */
.ti-review-item img[alt="Google"] {
  max-width: 60px !important;
  margin-bottom: 10px !important;
}

/* Navigation arrows if present */
.ti-controls-line {
  text-align: center !important;
  margin-top: 30px !important;
}


/* === HOW TO VISIT US / MAP SECTION === */

/* Map section wrapper */
.form_section_content_wrap {
  background-color: #ffffff !important;
  padding: 50px 40px !important;
  text-align: center !important;
}

/* "How To Visit Us" heading */
.form_section_content_wrap h2 {
  color: #1a2f3f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 36px !important;
  font-weight: 700 !important;
  margin-bottom: 30px !important;
}

/* Phone number */
.form_section_content_wrap .phone {
  margin-bottom: 20px !important;
}

.form_section_content_wrap .phone-link {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: color 0.3s ease !important;
}

.form_section_content_wrap .phone-link:hover {
  color: #d4bb6f !important;
}

/* Address section */
.form_section_content_wrap .map_address {
  margin: 30px 0 !important;
}

.form_section_content_wrap .map_address p {
  color: #2c2c2c !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 18px !important;
  line-height: 1.7 !important;
  margin-bottom: 10px !important;
}

.form_section_content_wrap .map_address p:first-child {
  color: #1a2f3f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  margin-bottom: 15px !important;
}

/* Contact Us button */
.form_section_content_wrap .btn-sc {
  padding-top: 30px !important;
}

.form_section_content_wrap .btn {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  padding: 15px 40px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background-color 0.3s ease !important;
  cursor: pointer !important;
}

.form_section_content_wrap .btn:hover {
  background-color: #d4bb6f !important;
  color: #1a2f3f !important;
  text-decoration: none !important;
}

/* If there's a map iframe in the section */
.form_section_content_wrap iframe {
  width: 100% !important;
  height: 450px !important;
  border: none !important;
  border-radius: 8px !important;
  margin-bottom: 30px !important;
}

/* Responsive */
@media (max-width: 768px) {
  .ti-widget,
  .form_section_content_wrap {
    padding: 60px 20px !important;
  }
  
  .ti-widget h2,
  .form_section_content_wrap h2 {
    font-size: 28px !important;
  }
  
  .form_section_content_wrap .phone-link {
    font-size: 24px !important;
  }
  
  .ti-review-item {
    min-width: 280px !important;
  }
}
/* === TESTIMONIALS SECTION === */

.ti-widget {
  background-color: #f8f8f8 !important;
  padding: 80px 40px !important;
}

.ti-widget .ti-widget-container {
  max-width: 1400px !important;
  margin: 0 auto !important;
}

.ti-widget h2 {
  color: #1a2f3f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 36px !important;
  font-weight: 700 !important;
  text-align: center !important;
  margin-bottom: 50px !important;
}

/* Review items styling */
.ti-review-item {
  background-color: #ffffff !important;
  border-radius: 8px !important;
  padding: 30px !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
}

.ti-name {
  color: #1a2f3f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
}

.ti-review-content {
  color: #2c2c2c !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}


/* === MAP / VISIT US SECTION === */

.map-visit-section {
  background-color: #ffffff !important;
  padding: 80px 40px !important;
}

.map-visit-container {
  max-width: 1400px !important;
  margin: 0 auto !important;
}

.map-visit-row {
  display: flex !important;
  align-items: center !important;
  gap: 60px !important;
  flex-wrap: wrap !important;
}

/* Map column - left side */
.map-column {
  flex: 1 1 500px !important;
}

.map-column iframe {
  width: 100% !important;
  height: 500px !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
}

/* Contact info column - right side */
.contact-column {
  flex: 1 1 400px !important;
  text-align: center !important;
}

.form_section_content_wrap h2 {
  color: #1a2f3f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 36px !important;
  font-weight: 700 !important;
  margin-bottom: 30px !important;
}

/* Phone number - GOLD */
.form_section_content_wrap .phone {
  margin-bottom: 30px !important;
}

.form_section_content_wrap .phone-link {
  color: #e1c97f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: color 0.3s ease !important;
}

.form_section_content_wrap .phone-link:hover {
  color: #d4bb6f !important;
}

/* Address */
.form_section_content_wrap .map_address {
  margin: 30px 0 !important;
}

.form_section_content_wrap .map_address p {
  color: #2c2c2c !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 18px !important;
  line-height: 1.8 !important;
  margin-bottom: 10px !important;
}

.form_section_content_wrap .map_address p strong {
  color: #1a2f3f !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  display: block !important;
  margin-bottom: 15px !important;
}

/* Contact Us Button */
.form_section_content_wrap .btn-sc {
  padding-top: 30px !important;
}

.form_section_content_wrap .btn {
  background-color: #e1c97f !important;
  color: #1a2f3f !important;
  padding: 15px 40px !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background-color 0.3s ease !important;
  cursor: pointer !important;
}

.form_section_content_wrap .btn:hover {
  background-color: #d4bb6f !important;
  color: #1a2f3f !important;
  text-decoration: none !important;
}

/* Responsive */
@media (max-width: 992px) {
  .map-visit-row {
    flex-direction: column !important;
  }
  
  .map-column,
  .contact-column {
    flex: 1 1 100% !important;
  }
}

@media (max-width: 768px) {
  .ti-widget,
  .map-visit-section {
    padding: 60px 20px !important;
  }
  
  .ti-widget h2,
  .form_section_content_wrap h2 {
    font-size: 28px !important;
  }
  
  .form_section_content_wrap .phone-link {
    font-size: 24px !important;
  }
  
  .map-column iframe {
    height: 400px !important;
  }
}
.featured-team-button {
    background: #d7bb61;
    color: #0f2a3d;
    padding: 12px 40px;
    font-weight: 700;
    border-radius: 4px;
    display: inline-block;
    text-decoration: none;
    border: 2px solid #d7bb61;
    letter-spacing: 0.5px;
    line-height: 1;
}

.featured-team-button-wrapper {
    text-align: center;
    margin-top: 40px;
}
/* Make all featured-team buttons consistent everywhere */
.featured-team-button {
    background-color: #d7bb61 !important;
    color: #1a3a52 !important;
    padding: 15px 40px !important;
    border-radius: 4px !important;
    font-family: "Montserrat", sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0.95px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    display: inline-block !important;
    line-height: 1 !important;
    transition: background-color 0.3s ease !important;
    cursor: pointer !important;
}

/* Center wrapper everywhere */
.featured-team-button-wrapper {
    text-align: center !important;
    margin-top: 40px !important;
}
/*************************************************************
 * LOCATION CLONES: Reuse Edmonton (page 5094) styling on:
 *  - 5094 = Edmonton
 *  - 5285 = Abbotsford
 *  - 5289 = Chilliwack
 *  - 5292 = Victoria
 *  - 5295 = Vancouver
 *************************************************************/

/* ---------- Custom Services section ---------- */

.page-id-5094 .custom-services .services-row,
.page-id-5285 .custom-services .services-row,
.page-id-5289 .custom-services .services-row,
.page-id-5292 .custom-services .services-row,
.page-id-5295 .custom-services .services-row {
  display: flex;
  flex-wrap: wrap;
  gap: 60px;
}

.page-id-5094 .custom-services .service-item,
.page-id-5285 .custom-services .service-item,
.page-id-5289 .custom-services .service-item,
.page-id-5292 .custom-services .service-item,
.page-id-5295 .custom-services .service-item {
  flex: 1 1 220px;
  max-width: 260px;
}

/* Heading + link */
.page-id-5094 .custom-services h3,
.page-id-5094 .custom-services h3 a,
.page-id-5285 .custom-services h3,
.page-id-5285 .custom-services h3 a,
.page-id-5289 .custom-services h3,
.page-id-5289 .custom-services h3 a,
.page-id-5292 .custom-services h3,
.page-id-5292 .custom-services h3 a,
.page-id-5295 .custom-services h3,
.page-id-5295 .custom-services h3 a {
  font-size: 26px !important;
  font-weight: 700;
  margin-bottom: 12px;
  color: #0a1b2d;
  text-decoration: none;
}

.page-id-5094 .custom-services h3 a:hover,
.page-id-5285 .custom-services h3 a:hover,
.page-id-5289 .custom-services h3 a:hover,
.page-id-5292 .custom-services h3 a:hover,
.page-id-5295 .custom-services h3 a:hover {
  color: #e1c97f !important;
}

/* Body text */
.page-id-5094 .custom-services p,
.page-id-5285 .custom-services p,
.page-id-5289 .custom-services p,
.page-id-5292 .custom-services p,
.page-id-5295 .custom-services p {
  font-size: 16px;
  line-height: 1.6;
  color: #333333;
}

/* CTA under services */
.page-id-5094 .custom-services .services-cta,
.page-id-5285 .custom-services .services-cta,
.page-id-5289 .custom-services .services-cta,
.page-id-5292 .custom-services .services-cta,
.page-id-5295 .custom-services .services-cta {
  margin-top: 40px;
}

.page-id-5094 .custom-services .services-button,
.page-id-5285 .custom-services .services-button,
.page-id-5289 .custom-services .services-button,
.page-id-5292 .custom-services .services-button,
.page-id-5295 .custom-services .services-button {
  display: inline-block;
  padding: 12px 30px;
  background: #e1c97f;
  color: #0a1b2d;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}

.page-id-5094 .custom-services .services-button:hover,
.page-id-5285 .custom-services .services-button:hover,
.page-id-5289 .custom-services .services-button:hover,
.page-id-5292 .custom-services .services-button:hover,
.page-id-5295 .custom-services .services-button:hover {
  filter: brightness(0.95);
}


/* ---------- Practice Areas layout (cards) ---------- */

.page-id-5094 #edmonton-practice-areas,
.page-id-5285 #edmonton-practice-areas,
.page-id-5289 #edmonton-practice-areas,
.page-id-5292 #edmonton-practice-areas,
.page-id-5295 #edmonton-practice-areas {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px;
  font-family: inherit;
}

.page-id-5094 .practice-heading,
.page-id-5285 .practice-heading,
.page-id-5289 .practice-heading,
.page-id-5292 .practice-heading,
.page-id-5295 .practice-heading {
  font-size: 40px;
  font-weight: 700;
  color: #e1c97f;
  margin-bottom: 40px;
}

.page-id-5094 .practice-areas-row,
.page-id-5285 .practice-areas-row,
.page-id-5289 .practice-areas-row,
.page-id-5292 .practice-areas-row,
.page-id-5295 .practice-areas-row {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  margin-bottom: 50px;
}

.page-id-5094 .practice-area,
.page-id-5285 .practice-area,
.page-id-5289 .practice-area,
.page-id-5292 .practice-area,
.page-id-5295 .practice-area {
  width: 30%;
}

.page-id-5094 .practice-area h3,
.page-id-5285 .practice-area h3,
.page-id-5289 .practice-area h3,
.page-id-5292 .practice-area h3,
.page-id-5295 .practice-area h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

.page-id-5094 .practice-area h3 a,
.page-id-5285 .practice-area h3 a,
.page-id-5289 .practice-area h3 a,
.page-id-5292 .practice-area h3 a,
.page-id-5295 .practice-area h3 a {
  text-decoration: none;
  color: #0b1f36;
  transition: color 0.2s ease;
}

.page-id-5094 .practice-area h3 a:hover,
.page-id-5285 .practice-area h3 a:hover,
.page-id-5289 .practice-area h3 a:hover,
.page-id-5292 .practice-area h3 a:hover,
.page-id-5295 .practice-area h3 a:hover {
  color: #e1c97f;
}

.page-id-5094 .practice-area p,
.page-id-5285 .practice-area p,
.page-id-5289 .practice-area p,
.page-id-5292 .practice-area p,
.page-id-5295 .practice-area p {
  font-size: 16px;
  line-height: 1.6;
  color: #333;
}

/* Mobile stacking for Practice Areas */
@media (max-width: 900px) {
  .page-id-5094 .practice-areas-row,
  .page-id-5285 .practice-areas-row,
  .page-id-5289 .practice-areas-row,
  .page-id-5292 .practice-areas-row,
  .page-id-5295 .practice-areas-row {
    flex-direction: column;
    gap: 30px;
  }
  .page-id-5094 .practice-area,
  .page-id-5285 .practice-area,
  .page-id-5289 .practice-area,
  .page-id-5292 .practice-area,
  .page-id-5295 .practice-area {
    width: 100%;
  }
}


/* ---------- “See More Services” button (under Practice Areas) ---------- */

.page-id-5094 .practice-areas-button-wrap,
.page-id-5285 .practice-areas-button-wrap,
.page-id-5289 .practice-areas-button-wrap,
.page-id-5292 .practice-areas-button-wrap,
.page-id-5295 .practice-areas-button-wrap {
  text-align: center;
  margin: 40px 0 60px;
}

/* Old .practice-areas-btn helper */
.page-id-5094 .practice-areas-btn,
.page-id-5285 .practice-areas-btn,
.page-id-5289 .practice-areas-btn,
.page-id-5292 .practice-areas-btn,
.page-id-5295 .practice-areas-btn {
  display: inline-block;
  padding: 12px 40px;
  background-color: #e1c97f;
  color: #ffffff;
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: 0.08em;
  border-radius: 0;
  border: 2px solid #e1c97f;
  text-decoration: none;
  transition: all 0.2s ease-in-out;
  line-height: 1;
}

.page-id-5094 .practice-areas-btn:hover,
.page-id-5285 .practice-areas-btn:hover,
.page-id-5289 .practice-areas-btn:hover,
.page-id-5292 .practice-areas-btn:hover,
.page-id-5295 .practice-areas-btn:hover {
  background-color: transparent;
  color: #e1c97f;
}

/* FINAL “See more services” button style that matches Edmonton */
.page-id-5094 #edmonton-practice-areas .practice-areas-button-wrap,
.page-id-5285 #edmonton-practice-areas .practice-areas-button-wrap,
.page-id-5289 #edmonton-practice-areas .practice-areas-button-wrap,
.page-id-5292 #edmonton-practice-areas .practice-areas-button-wrap,
.page-id-5295 #edmonton-practice-areas .practice-areas-button-wrap {
  width: 100%;
  text-align: center;
  margin: 60px 0 60px;
}

.page-id-5094 #edmonton-practice-areas .practice-areas-button,
.page-id-5285 #edmonton-practice-areas .practice-areas-button,
.page-id-5289 #edmonton-practice-areas .practice-areas-button,
.page-id-5292 #edmonton-practice-areas .practice-areas-button,
.page-id-5295 #edmonton-practice-areas .practice-areas-button {
  display: inline-block;
  box-sizing: border-box;
  padding: 14px 60px;
  background-color: #e1c97f;
  border: 2px solid #e1c97f;
  color: #ffffff;
  font-family: var(--primary-font, "Open Sans", sans-serif);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  line-height: 1;
  text-decoration: none;
  border-radius: 0;
  transition: all 0.2s ease;
}

.page-id-5094 #edmonton-practice-areas .practice-areas-button:hover,
.page-id-5285 #edmonton-practice-areas .practice-areas-button:hover,
.page-id-5289 #edmonton-practice-areas .practice-areas-button:hover,
.page-id-5292 #edmonton-practice-areas .practice-areas-button:hover,
.page-id-5295 #edmonton-practice-areas .practice-areas-button:hover {
  background-color: transparent;
  color: #e1c97f;
  border-color: #e1c97f;
}

/* Generic button fixes you used on 5094 – extend to the clones too */
body.page-id-5094 .practice-areas-btn,
body.page-id-5094 a[href*="services"],
body.page-id-5285 .practice-areas-btn,
body.page-id-5285 a[href*="services"],
body.page-id-5289 .practice-areas-btn,
body.page-id-5289 a[href*="services"],
body.page-id-5292 .practice-areas-btn,
body.page-id-5292 a[href*="services"],
body.page-id-5295 .practice-areas-btn,
body.page-id-5295 a[href*="services"] {
  display: inline-block;
  padding: 12px 40px !important;
  background: #e1c97f;
  color: #ffffff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 0;
  transition: background 0.3s ease;
  line-height: 1 !important;
  vertical-align: middle;
}

body.page-id-5094 .practice-areas-btn:hover,
body.page-id-5094 a[href*="services"]:hover,
body.page-id-5285 .practice-areas-btn:hover,
body.page-id-5285 a[href*="services"]:hover,
body.page-id-5289 .practice-areas-btn:hover,
body.page-id-5289 a[href*="services"]:hover,
body.page-id-5292 .practice-areas-btn:hover,
body.page-id-5292 a[href*="services"]:hover,
body.page-id-5295 .practice-areas-btn:hover,
body.page-id-5295 a[href*="services"]:hover {
  background: #d4bb6f;
}

/* The very specific .btn overrides you used on 5094 */
body.page-id-5094 .btn.btn-lg.text-center,
body.page-id-5285 .btn.btn-lg.text-center,
body.page-id-5289 .btn.btn-lg.text-center,
body.page-id-5292 .btn.btn-lg.text-center,
body.page-id-5295 .btn.btn-lg.text-center {
  padding: 12px 40px !important;
  background: #e1c97f !important;
  color: #ffffff !important;
  text-decoration: none;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 0 !important;
  transition: background 0.3s ease;
  line-height: 1 !important;
  vertical-align: middle;
  border: none !important;
}

body.page-id-5094 .btn.btn-lg.text-center:hover,
body.page-id-5285 .btn.btn-lg.text-center:hover,
body.page-id-5289 .btn.btn-lg.text-center:hover,
body.page-id-5292 .btn.btn-lg.text-center:hover,
body.page-id-5295 .btn.btn-lg.text-center:hover {
  background: #d4bb6f !important;
}

body.page-id-5094 a.btn.btn-lg.text-center.mt-5.px-4,
body.page-id-5285 a.btn.btn-lg.text-center.mt-5.px-4,
body.page-id-5289 a.btn.btn-lg.text-center.mt-5.px-4,
body.page-id-5292 a.btn.btn-lg.text-center.mt-5.px-4,
body.page-id-5295 a.btn.btn-lg.text-center.mt-5.px-4 {
  padding: 12px 40px !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  background: #e1c97f !important;
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  transition: background 0.3s ease !important;
  line-height: 1 !important;
  height: auto !important;
  vertical-align: middle !important;
  border: none !important;
  box-sizing: border-box !important;
}

body.page-id-5094 a.btn.btn-lg.text-center.mt-5.px-4:hover,
body.page-id-5285 a.btn.btn-lg.text-center.mt-5.px-4:hover,
body.page-id-5289 a.btn.btn-lg.text-center.mt-5.px-4:hover,
body.page-id-5292 a.btn.btn-lg.text-center.mt-5.px-4:hover,
body.page-id-5295 a.btn.btn-lg.text-center.mt-5.px-4:hover {
  background: #d4bb6f !important;
}


/* ---------- Edmonton-style hero section for all 5 pages ---------- */

body.page-id-5094 .edm-hero,
body.page-id-5285 .edm-hero,
body.page-id-5289 .edm-hero,
body.page-id-5292 .edm-hero,
body.page-id-5295 .edm-hero {
  position: relative;
  width: 100vw;
  margin-left: 50%;
  margin-right: 50%;
  transform: translateX(-50%);
  height: 575px;
  display: flex;
  align-items: center;
  background-image:
    linear-gradient(
      to bottom,
      rgba(14, 36, 55, 0.65),
      rgba(14, 36, 55, 0.75)
    ),
    url("https://zvmllp.com/wp-content/uploads/2025/10/mesmerizing-view-of-a-beautiful-edmonton-skyline-a-2025-02-09-22-28-38-utc.png");
  background-size: cover;
  background-position: center 40%;
  background-repeat: no-repeat;
  color: #ffffff;
}

/* inner max-width + two columns */
body.page-id-5094 .edm-hero__inner,
body.page-id-5285 .edm-hero__inner,
body.page-id-5289 .edm-hero__inner,
body.page-id-5292 .edm-hero__inner,
body.page-id-5295 .edm-hero__inner {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  padding: 40px 60px;
  display: flex;
  gap: 80px;
  align-items: center;
  justify-content: space-between;
}

/* left column (copy) */
body.page-id-5094 .edm-hero__copy,
body.page-id-5285 .edm-hero__copy,
body.page-id-5289 .edm-hero__copy,
body.page-id-5292 .edm-hero__copy,
body.page-id-5295 .edm-hero__copy {
  flex: 1 1 60%;
  min-width: 0;
}

/* eyebrow */
body.page-id-5094 .edm-hero__eyebrow,
body.page-id-5285 .edm-hero__eyebrow,
body.page-id-5289 .edm-hero__eyebrow,
body.page-id-5292 .edm-hero__eyebrow,
body.page-id-5295 .edm-hero__eyebrow {
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #e1c97f;
  margin: 0 0 10px;
}

/* H1 */
body.page-id-5094 .edm-hero__copy h1,
body.page-id-5285 .edm-hero__copy h1,
body.page-id-5289 .edm-hero__copy h1,
body.page-id-5292 .edm-hero__copy h1,
body.page-id-5295 .edm-hero__copy h1 {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 48px;
  font-weight: 400;
  color: #e1c97f;
  margin: 0 0 20px;
  line-height: 1.2;
}

/* hero paragraph */
body.page-id-5094 .edm-hero__copy p,
body.page-id-5285 .edm-hero__copy p,
body.page-id-5289 .edm-hero__copy p,
body.page-id-5292 .edm-hero__copy p,
body.page-id-5295 .edm-hero__copy p {
  color: #ffffff !important;
  line-height: 1.75;
  margin: 0;
  text-align: left !important;
  word-spacing: normal !important;
  letter-spacing: normal !important;
  hyphens: none !important;
  text-justify: none !important;
  white-space: normal !important;
}

/* right column (form) */
body.page-id-5094 .edm-hero__form,
body.page-id-5285 .edm-hero__form,
body.page-id-5289 .edm-hero__form,
body.page-id-5292 .edm-hero__form,
body.page-id-5295 .edm-hero__form {
  flex: 0 0 380px;
  background: rgba(14, 36, 55, 0.92);
  padding: 26px 28px 28px;
  border-radius: 4px;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.35);
}

/* form heading */
body.page-id-5094 .edm-hero__form-title,
body.page-id-5285 .edm-hero__form-title,
body.page-id-5289 .edm-hero__form-title,
body.page-id-5292 .edm-hero__form-title,
body.page-id-5295 .edm-hero__form-title {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 18px;
}

/* form spacing */
body.page-id-5094 .edm-hero__form form,
body.page-id-5094 .edm-hero__form p,
body.page-id-5285 .edm-hero__form form,
body.page-id-5285 .edm-hero__form p,
body.page-id-5289 .edm-hero__form form,
body.page-id-5289 .edm-hero__form p,
body.page-id-5292 .edm-hero__form form,
body.page-id-5292 .edm-hero__form p,
body.page-id-5295 .edm-hero__form form,
body.page-id-5295 .edm-hero__form p {
  margin: 0;
}

/* CF7 fields */
body.page-id-5094 .edm-hero__form input[type="text"],
body.page-id-5094 .edm-hero__form input[type="email"],
body.page-id-5094 .edm-hero__form input[type="tel"],
body.page-id-5094 .edm-hero__form textarea,
body.page-id-5094 .edm-hero__form .wpcf7-form-control,
body.page-id-5285 .edm-hero__form input[type="text"],
body.page-id-5285 .edm-hero__form input[type="email"],
body.page-id-5285 .edm-hero__form input[type="tel"],
body.page-id-5285 .edm-hero__form textarea,
body.page-id-5285 .edm-hero__form .wpcf7-form-control,
body.page-id-5289 .edm-hero__form input[type="text"],
body.page-id-5289 .edm-hero__form input[type="email"],
body.page-id-5289 .edm-hero__form input[type="tel"],
body.page-id-5289 .edm-hero__form textarea,
body.page-id-5289 .edm-hero__form .wpcf7-form-control,
body.page-id-5292 .edm-hero__form input[type="text"],
body.page-id-5292 .edm-hero__form input[type="email"],
body.page-id-5292 .edm-hero__form input[type="tel"],
body.page-id-5292 .edm-hero__form textarea,
body.page-id-5292 .edm-hero__form .wpcf7-form-control,
body.page-id-5295 .edm-hero__form input[type="text"],
body.page-id-5295 .edm-hero__form input[type="email"],
body.page-id-5295 .edm-hero__form input[type="tel"],
body.page-id-5295 .edm-hero__form textarea,
body.page-id-5295 .edm-hero__form .wpcf7-form-control {
  background-color: #ffffff;
  border: 1px solid #d1d5db;
  border-radius: 3px;
  padding: 12px 14px;
  width: 100%;
  font-size: 15px;
  color: #0e2437;
  margin-bottom: 12px;
}

body.page-id-5094 .edm-hero__form input::placeholder,
body.page-id-5094 .edm-hero__form textarea::placeholder,
body.page-id-5285 .edm-hero__form input::placeholder,
body.page-id-5285 .edm-hero__form textarea::placeholder,
body.page-id-5289 .edm-hero__form input::placeholder,
body.page-id-5289 .edm-hero__form textarea::placeholder,
body.page-id-5292 .edm-hero__form input::placeholder,
body.page-id-5292 .edm-hero__form textarea::placeholder,
body.page-id-5295 .edm-hero__form input::placeholder,
body.page-id-5295 .edm-hero__form textarea::placeholder {
  color: #6b7280;
}

body.page-id-5094 .edm-hero__form input:focus,
body.page-id-5094 .edm-hero__form textarea:focus,
body.page-id-5285 .edm-hero__form input:focus,
body.page-id-5285 .edm-hero__form textarea:focus,
body.page-id-5289 .edm-hero__form input:focus,
body.page-id-5289 .edm-hero__form textarea:focus,
body.page-id-5292 .edm-hero__form input:focus,
body.page-id-5292 .edm-hero__form textarea:focus,
body.page-id-5295 .edm-hero__form input:focus,
body.page-id-5295 .edm-hero__form textarea:focus {
  outline: none;
  border-color: #e1c97f;
  box-shadow: 0 0 0 2px rgba(225, 201, 127, 0.2);
}

/* submit button */
body.page-id-5094 .edm-hero__form input[type="submit"],
body.page-id-5094 .edm-hero__form .wpcf7-submit,
body.page-id-5285 .edm-hero__form input[type="submit"],
body.page-id-5285 .edm-hero__form .wpcf7-submit,
body.page-id-5289 .edm-hero__form input[type="submit"],
body.page-id-5289 .edm-hero__form .wpcf7-submit,
body.page-id-5292 .edm-hero__form input[type="submit"],
body.page-id-5292 .edm-hero__form .wpcf7-submit,
body.page-id-5295 .edm-hero__form input[type="submit"],
body.page-id-5295 .edm-hero__form .wpcf7-submit {
  background-color: #e1c97f;
  color: #0e2437;
  border: none;
  border-radius: 3px;
  padding: 14px 32px;
  font-size: 15px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: background-color 0.3s ease;
  width: auto;
  margin-top: 6px;
}

body.page-id-5094 .edm-hero__form input[type="submit"]:hover,
body.page-id-5094 .edm-hero__form .wpcf7-submit:hover,
body.page-id-5285 .edm-hero__form input[type="submit"]:hover,
body.page-id-5285 .edm-hero__form .wpcf7-submit:hover,
body.page-id-5289 .edm-hero__form input[type="submit"]:hover,
body.page-id-5289 .edm-hero__form .wpcf7-submit:hover,
body.page-id-5292 .edm-hero__form input[type="submit"]:hover,
body.page-id-5292 .edm-hero__form .wpcf7-submit:hover,
body.page-id-5295 .edm-hero__form input[type="submit"]:hover,
body.page-id-5295 .edm-hero__form .wpcf7-submit:hover {
  background-color: #d4bb6f;
}

/* spacing before Practice Areas section */
body.page-id-5094 #edmonton-practice-areas,
body.page-id-5285 #edmonton-practice-areas,
body.page-id-5289 #edmonton-practice-areas,
body.page-id-5292 #edmonton-practice-areas,
body.page-id-5295 #edmonton-practice-areas {
  margin-top: 50px;
}

/* Hero mobile */
@media (max-width: 991px) {
  body.page-id-5094 .edm-hero,
  body.page-id-5285 .edm-hero,
  body.page-id-5289 .edm-hero,
  body.page-id-5292 .edm-hero,
  body.page-id-5295 .edm-hero {
    height: auto;
    padding: 40px 0;
  }

  body.page-id-5094 .edm-hero__inner,
  body.page-id-5285 .edm-hero__inner,
  body.page-id-5289 .edm-hero__inner,
  body.page-id-5292 .edm-hero__inner,
  body.page-id-5295 .edm-hero__inner {
    flex-direction: column;
    gap: 30px;
    padding: 30px 20px;
  }

  body.page-id-5094 .edm-hero__form,
  body.page-id-5285 .edm-hero__form,
  body.page-id-5289 .edm-hero__form,
  body.page-id-5292 .edm-hero__form,
  body.page-id-5295 .edm-hero__form {
    max-width: 100%;
  }

  body.page-id-5094 .edm-hero__copy h1,
  body.page-id-5285 .edm-hero__copy h1,
  body.page-id-5289 .edm-hero__copy h1,
  body.page-id-5292 .edm-hero__copy h1,
  body.page-id-5295 .edm-hero__copy h1 {
    font-size: 36px;
  }
}


/* ---------- Contact Cards section ---------- */

body.page-id-5094 .edm-contact-cards,
body.page-id-5285 .edm-contact-cards,
body.page-id-5289 .edm-contact-cards,
body.page-id-5292 .edm-contact-cards,
body.page-id-5295 .edm-contact-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  max-width: 1400px;
  margin: -60px auto 60px;
  padding: 0 60px;
  position: relative;
  z-index: 10;
}

body.page-id-5094 .edm-contact-card,
body.page-id-5285 .edm-contact-card,
body.page-id-5289 .edm-contact-card,
body.page-id-5292 .edm-contact-card,
body.page-id-5295 .edm-contact-card {
  background: #1a2f3f;
  padding: 50px 40px;
  text-align: center;
  border-radius: 4px;
}

body.page-id-5094 .edm-contact-icon,
body.page-id-5285 .edm-contact-icon,
body.page-id-5289 .edm-contact-icon,
body.page-id-5292 .edm-contact-icon,
body.page-id-5295 .edm-contact-icon {
  color: #e1c97f;
  margin-bottom: 20px;
}

body.page-id-5094 .edm-contact-icon svg,
body.page-id-5285 .edm-contact-icon svg,
body.page-id-5289 .edm-contact-icon svg,
body.page-id-5292 .edm-contact-icon svg,
body.page-id-5295 .edm-contact-icon svg {
  width: 48px;
  height: 48px;
}

body.page-id-5094 .edm-contact-card h3,
body.page-id-5285 .edm-contact-card h3,
body.page-id-5289 .edm-contact-card h3,
body.page-id-5292 .edm-contact-card h3,
body.page-id-5295 .edm-contact-card h3 {
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin: 0 0 20px;
  text-transform: uppercase;
}

body.page-id-5094 .edm-contact-card p,
body.page-id-5285 .edm-contact-card p,
body.page-id-5289 .edm-contact-card p,
body.page-id-5292 .edm-contact-card p,
body.page-id-5295 .edm-contact-card p {
  color: #ffffff;
  font-size: 16px;
  line-height: 1.6;
  margin: 0;
}

body.page-id-5094 .edm-phone,
body.page-id-5285 .edm-phone,
body.page-id-5289 .edm-phone,
body.page-id-5292 .edm-phone,
body.page-id-5295 .edm-phone {
  color: #e1c97f;
  font-size: 24px;
  font-weight: 600;
  text-decoration: none;
  display: inline-block;
  transition: color 0.3s ease;
}

body.page-id-5094 .edm-phone:hover,
body.page-id-5285 .edm-phone:hover,
body.page-id-5289 .edm-phone:hover,
body.page-id-5292 .edm-phone:hover,
body.page-id-5295 .edm-phone:hover {
  color: #d4bb6f;
}

body.page-id-5094 .edm-client-btn,
body.page-id-5285 .edm-client-btn,
body.page-id-5289 .edm-client-btn,
body.page-id-5292 .edm-client-btn,
body.page-id-5295 .edm-client-btn {
  display: inline-block;
  padding: 14px 32px;
  border: 2px solid #e1c97f;
  color: #e1c97f;
  background: transparent;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 3px;
  transition: all 0.3s ease;
}

body.page-id-5094 .edm-client-btn:hover,
body.page-id-5285 .edm-client-btn:hover,
body.page-id-5289 .edm-client-btn:hover,
body.page-id-5292 .edm-client-btn:hover,
body.page-id-5295 .edm-client-btn:hover {
  background: #e1c97f;
  color: #1a2f3f;
}

/* Contact cards mobile */
@media (max-width: 991px) {
  body.page-id-5094 .edm-contact-cards,
  body.page-id-5285 .edm-contact-cards,
  body.page-id-5289 .edm-contact-cards,
  body.page-id-5292 .edm-contact-cards,
  body.page-id-5295 .edm-contact-cards {
    grid-template-columns: 1fr;
    margin: 30px auto;
    padding: 0 20px;
  }
  
  body.page-id-5094 .edm-contact-card,
  body.page-id-5285 .edm-contact-card,
  body.page-id-5289 .edm-contact-card,
  body.page-id-5292 .edm-contact-card,
  body.page-id-5295 .edm-contact-card {
    padding: 40px 30px;
  }
}
/* Hide page title on Abbotsford page */
body.page-id-5285 .entry-title {
    display: none !important;
}
/* Ensure 2-lawyer grid centers properly */
.featured-team-grid.two-lawyers {
    display: flex;
    justify-content: center;
    gap: 60px;
}
/* === "Our Focused Practice Areas" intro block === */
#edmonton-practice-areas .pa-intro-wrap {
  padding: 70px 20px 40px;
  background-color: #ffffff;
}

#edmonton-practice-areas .pa-intro-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 32px;
}

#edmonton-practice-areas .pa-intro-left {
  flex: 1 1 260px;
  min-width: 260px;
}

#edmonton-practice-areas .pa-intro-right {
  flex: 2 1 380px;
  min-width: 260px;
  font-size: 16px;
  line-height: 1.7;
  color: #2f2f2f;
}

/* Eyebrow label */
#edmonton-practice-areas .pa-intro-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #d7bb61; /* gold */
  margin-bottom: 8px;
}

#edmonton-practice-areas .pa-intro-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 2px solid #d7bb61;
}

/* Main heading */
#edmonton-practice-areas .pa-intro-heading {
  font-size: 36px;
  line-height: 1.2;
  margin: 0;
  font-weight: 700;
  color: #d7bb61; /* gold, like screenshot */
}

/* Responsive stacking */
@media (max-width: 900px) {
  #edmonton-practice-areas .pa-intro-wrap {
    padding-top: 50px;
  }

  #edmonton-practice-areas .pa-intro-heading {
    font-size: 30px;
  }
}

@media (max-width: 640px) {
  #edmonton-practice-areas .pa-intro-inner {
    gap: 20px;
  }

  #edmonton-practice-areas .pa-intro-heading {
    font-size: 26px;
  }
}
/* ==== Featured Team Section – global tidy up ==== */

#featured-team-section {
  padding: 70px 0 80px;
  background-color: #0f2a3d; /* matches Chilliwack panel */
  color: #ffffff;
}

#featured-team-section .featured-team-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  text-align: center;
}

/* Heading + subheading layout */
#featured-team-section .featured-team-heading {
  font-size: 34px;
  margin-bottom: 15px;
}

#featured-team-section .featured-team-subheading {
  max-width: 720px;          /* keeps it from stretching too wide */
  margin: 0 auto 45px;       /* centers + adds space below */
  line-height: 1.6;
}

/* Grid & card layout */
#featured-team-section .featured-team-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}

/* Each lawyer card */
#featured-team-section .team-member {
  flex: 1 1 220px;
  max-width: 260px;
}

/* Image sizing – smaller, consistent height, no cropping */
#featured-team-section .team-member-image-wrapper {
  max-width: 230px;
  margin: 0 auto 18px;
}

#featured-team-section .team-member-image {
  display: block;
  width: 100%;
  height: 340px;           /* consistent height */
  object-fit: contain;     /* keep proportions, no cropping */
}

/* Name + title */
#featured-team-section .team-member-name {
  font-size: 16px;
  margin-bottom: 4px;
}

#featured-team-section .team-member-title {
  font-size: 12px;
  letter-spacing: 1px;
}

/* Optional: tighten spacing above the button */
#featured-team-section .featured-team-button-wrapper {
  margin-top: 40px;
}
/* === Chilliwack location page – featured team cleanup (page 52898 only) === */
body.page-id-52898 #featured-team-section {
  background-color: #0f2a3d;   /* same deep blue as live Chilliwack panel */
  padding: 70px 0 80px;
}

/* Heading + subheading */
body.page-id-52898 #featured-team-section .featured-team-heading {
  color: #d7bb61;              /* firm gold */
  text-align: center;
  margin-bottom: 10px;
}

body.page-id-52898 #featured-team-section .featured-team-subheading {
  color: #ffffff;
  max-width: 720px;
  margin: 0 auto 40px;
  line-height: 1.7;
  text-align: center;
}

/* Grid layout – keeps your button styling intact */
body.page-id-52898 #featured-team-section .featured-team-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}

/* Each lawyer card */
body.page-id-52898 #featured-team-section .team-member {
  flex: 1 1 220px;
  max-width: 260px;
  text-align: center;
}

/* Image sizing: smaller + consistent */
body.page-id-52898 #featured-team-section .team-member-image-wrapper {
  max-width: 220px;
  margin: 0 auto 18px;
}

body.page-id-52898 #featured-team-section .team-member-image {
  display: block;
  width: 100%;
  height: 320px;               /* shrink or bump this as needed */
  object-fit: contain;
}

/* Names + titles – gold like target Chilliwack page */
body.page-id-52898 #featured-team-section .team-member-name,
body.page-id-52898 #featured-team-section .team-member-title {
  color: #d7bb61;
}

body.page-id-52898 #featured-team-section .team-member-title {
  font-size: 12px;
  letter-spacing: 1px;
}

/* Button: just a little spacing, no color changes */
body.page-id-52898 #featured-team-section .featured-team-button-wrapper {
  margin-top: 40px;
}
/* ========= Featured Chilliwack Team (match live page) ========= */

#featured-team-section {
    background-color: #0e2437;          /* same navy background */
    padding: 80px 0 70px;
}

#featured-team-section .featured-team-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
    text-align: center;
}

/* Heading + subheading */
#featured-team-section .featured-team-heading {
    margin: 0 0 18px;
    font-size: 36px;
    font-weight: 700;
    color: #e1c97f;                     /* gold */
}

#featured-team-section .featured-team-subheading {
    max-width: 720px;
    margin: 0 auto 48px !important;     /* single centred block */
    font-size: 16px;
    line-height: 1.6;
    color: #ffffff;
}

/* Grid layout */
#featured-team-section .featured-team-grid {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 40px;
    flex-wrap: wrap;
}

/* Each person */
#featured-team-section .team-member {
    flex: 1 1 22%;
    text-align: center;
}

/* Image sizing – make them smaller and even */
#featured-team-section .team-member-image-wrapper {
    max-width: 230px;                   /* shrink overall size */
    margin: 0 auto 22px;
}

#featured-team-section .team-member-image {
    display: block;
    width: 100%;
    height: auto;
}

/* Names + titles – gold, matching target */
#featured-team-section .team-member-name {
    margin: 0 0 6px;
    font-size: 18px;
    font-weight: 700;
    color: #e1c97f !important;          /* force gold */
}

#featured-team-section .team-member-title {
    margin: 0;
    font-size: 12px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #e1c97f !important;          /* gold, like target */
}

/* Button spacing only – use existing button styles */
#featured-team-section .featured-team-button-wrapper {
    margin-top: 48px;
}

/* Responsive tweaks */
@media (max-width: 1024px) {
    #featured-team-section .team-member {
        flex: 1 1 45%;
    }
}

@media (max-width: 640px) {
    #featured-team-section .featured-team-container {
        padding: 0 20px;
    }
    #featured-team-section .team-member {
        flex: 1 1 100%;
    }
    #featured-team-section .team-member-image-wrapper {
        max-width: 260px;
    }
}
/* ========= Featured Chilliwack Team (match live page) ========= */

#featured-team-section {
    background-color: #0e2437;          /* same navy background */
    padding: 80px 0 70px;
}

#featured-team-section .featured-team-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
    text-align: center;
}

/* Heading + subheading */
#featured-team-section .featured-team-heading {
    margin: 0 0 18px;
    font-size: 36px;
    font-weight: 700;
    color: #e1c97f;                     /* gold */
}

#featured-team-section .featured-team-subheading {
    max-width: 720px;
    margin: 0 auto 48px !important;     /* single centred block */
    font-size: 16px;
    line-height: 1.6;
    color: #ffffff;
}

/* Grid layout */
#featured-team-section .featured-team-grid {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 40px;
    flex-wrap: wrap;
}

/* Each person */
#featured-team-section .team-member {
    flex: 1 1 22%;
    text-align: center;
}

/* Image sizing – make them smaller and even */
#featured-team-section .team-member-image-wrapper {
    max-width: 230px;                   /* shrink overall size */
    margin: 0 auto 22px;
}

#featured-team-section .team-member-image {
    display: block;
    width: 100%;
    height: auto;
}

/* Names + titles – gold, matching target */
#featured-team-section .team-member-name {
    margin: 0 0 6px;
    font-size: 18px;
    font-weight: 700;
    color: #e1c97f !important;          /* force gold */
}

#featured-team-section .team-member-title {
    margin: 0;
    font-size: 12px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #e1c97f !important;          /* gold, like target */
}

/* Button spacing only – use existing button styles */
#featured-team-section .featured-team-button-wrapper {
    margin-top: 48px;
}

/* Responsive tweaks */
@media (max-width: 1024px) {
    #featured-team-section .team-member {
        flex: 1 1 45%;
    }
}

@media (max-width: 640px) {
    #featured-team-section .featured-team-container {
        padding: 0 20px;
    }
    #featured-team-section .team-member {
        flex: 1 1 100%;
    }
    #featured-team-section .team-member-image-wrapper {
        max-width: 260px;
    }
}
/* Chilliwack location – Featured Team tweaks (page_id=5289) */
body.page-id-5289 #featured-team-section .featured-team-subheading {
    max-width: 720px;
    margin: 0 auto 50px;
    text-align: center;
    line-height: 1.6;
}

/* Make all four lawyers smaller and consistent */
body.page-id-5289 #featured-team-section .team-member-image-wrapper {
    max-width: 230px;
    margin: 0 auto;
}

body.page-id-5289 #featured-team-section .team-member-image {
    width: 100%;
    height: auto;
    display: block;
}

/* Match Chilliwack style: gold names + titles */
body.page-id-5289 #featured-team-section .team-member-name,
body.page-id-5289 #featured-team-section .team-member-title {
    color: #d7bb61 !important;
}
/* --- Correct Chilliwack practice areas intro formatting (page 5289 only) --- */

body.page-id-5289 .pa-intro-wrap.chilliwack-pa {
    padding: 70px 0 60px;
}

body.page-id-5289 .pa-intro-inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 60px;
}

body.page-id-5289 .pa-intro-left {
    width: 35%;
}

body.page-id-5289 .pa-intro-right {
    width: 60%;
}

body.page-id-5289 .pa-intro-heading {
    margin-top: 15px;
    margin-bottom: 10px;
}

body.page-id-5289 .pa-intro-right p {
    line-height: 1.65;
    margin: 0;
}
/* =========================================================
   CHILLIWACK TEAM STRIP – FORCE MATCH TO LIVE VERSION
   ========================================================= */

#featured-team-section.chilliwack-team {
    padding: 70px 0 65px;
}

/* Heading + subheading */

#featured-team-section.chilliwack-team .featured-team-heading {
    text-align: center;
    font-size: 36px;
    font-weight: 700;
    color: #e1c97f;
    margin: 0 0 18px;
}

#featured-team-section.chilliwack-team .featured-team-subheading {
    max-width: 640px;
    margin: 0 auto 55px;
    text-align: center;
    font-size: 16px;
    line-height: 1.6;
    color: #ffffff;
}

/* Grid layout */

#featured-team-section.chilliwack-team .featured-team-grid {
    max-width: 980px;
    margin: 0 auto 35px;
    display: flex;
    justify-content: space-between;
    gap: 40px;
    align-items: flex-end;
}

/* Image sizing so they don't look huge */

#featured-team-section.chilliwack-team .team-member-image-wrapper {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    max-height: 360px;
    overflow: hidden;
}

#featured-team-section.chilliwack-team .team-member-image {
    width: auto;
    height: auto;
    max-height: 360px;
}

/* Names + titles in gold, correct sizing */

#featured-team-section.chilliwack-team .team-member-name {
    margin-top: 22px;
    margin-bottom: 4px;
    font-size: 18px;
    font-weight: 600;
    color: #e1c97f !important;
}

#featured-team-section.chilliwack-team .team-member-title {
    font-size: 11px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #e1c97f !important;
}

/* Keep the button where it belongs */

#featured-team-section.chilliwack-team .featured-team-button-wrapper {
    text-align: center;
    margin-top: 5px;
}
/* ================================
   Chilliwack team – full-width strip
   ================================ */

#featured-team-section.chilliwack-team {
    position: relative;
    width: 100vw;                     /* stretch to full browser width */
    margin-left: 50%;                 /* center the 100vw block */
    transform: translateX(-50%);
    background-color: #14344c;        /* same navy as target */
    padding: 80px 0 70px;
    overflow: hidden;
}

/* Inner container matches target width (~1300px) */

#featured-team-section.chilliwack-team .featured-team-container {
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 40px;                  /* side breathing room */
}
/* Heading + subheading */

#featured-team-section.chilliwack-team .featured-team-heading {
    text-align: center;
    font-size: 36px;
    font-weight: 700;
    color: #e1c97f;
    margin: 0 0 18px;
}

#featured-team-section.chilliwack-team .featured-team-subheading {
    max-width: 640px;
    margin: 0 auto 55px;
    text-align: center;
    font-size: 16px;
    line-height: 1.6;
    color: #ffffff;
}

/* Team row */

#featured-team-section.chilliwack-team .featured-team-grid {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 40px;
}

/* Image sizing – smaller + aligned along bottom */

#featured-team-section.chilliwack-team .team-member-image-wrapper {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    max-height: 360px;
    overflow: hidden;
}

#featured-team-section.chilliwack-team .team-member-image {
    max-height: 360px;
    width: auto;
    height: auto;
}

/* Names + titles in gold */

#featured-team-section.chilliwack-team .team-member-name {
    margin-top: 22px;
    margin-bottom: 4px;
    font-size: 18px;
    font-weight: 600;
    color: #e1c97f !important;
}

#featured-team-section.chilliwack-team .team-member-title {
    font-size: 11px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #e1c97f !important;
}

/* Button placement */

#featured-team-section.chilliwack-team .featured-team-button-wrapper {
    text-align: center;
    margin-top: 10px;
}
/* Make the Featured Team section container wider */
#featured-team-section .featured-team-container {
  max-width: 1300px !important;
}

/* (Optional but usually helpful) keep the grid itself full width inside that container */
#featured-team-section .featured-team-grid {
  max-width: 1300px;
  margin: 0 auto;
}
#featured-team-section {
  background: linear-gradient(180deg, #1e3a4a 0%, #0d2535 100%);
  padding: 80px 20px 100px;
  color: #ffffff;
  width: 100%;  /* FULL WIDTH for blue background */
}

.featured-team-container {
  max-width: 1300px;  /* This contains everything at 1300px */
  margin: 0 auto;
  width: 100%;
}

.featured-team-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
  margin-bottom: 60px;
  width: 100%;  /* Use full 1300px from container */
  margin-left: auto;
  margin-right: auto;
}