.elementor-140 .elementor-element.elementor-element-30c0c360{--display:flex;--min-height:81vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.58;--padding-top:0%;--padding-bottom:0%;--padding-left:5%;--padding-right:50%;}.elementor-140 .elementor-element.elementor-element-30c0c360:not(.elementor-motion-effects-element-type-background), .elementor-140 .elementor-element.elementor-element-30c0c360 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FEE715;background-image:url("https://chesterfieldcountyvalockandkey.com/wp-content/uploads/2025/08/door_repair_3.jpg");background-position:center left;background-repeat:no-repeat;background-size:cover;}.elementor-140 .elementor-element.elementor-element-30c0c360::before, .elementor-140 .elementor-element.elementor-element-30c0c360 > .elementor-background-video-container::before, .elementor-140 .elementor-element.elementor-element-30c0c360 > .e-con-inner > .elementor-background-video-container::before, .elementor-140 .elementor-element.elementor-element-30c0c360 > .elementor-background-slideshow::before, .elementor-140 .elementor-element.elementor-element-30c0c360 > .e-con-inner > .elementor-background-slideshow::before, .elementor-140 .elementor-element.elementor-element-30c0c360 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-140 .elementor-element.elementor-element-7025b828{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overlay-opacity:0.71;--margin-top:0px;--margin-bottom:0px;--margin-left:700px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-140 .elementor-element.elementor-element-7025b828::before, .elementor-140 .elementor-element.elementor-element-7025b828 > .elementor-background-video-container::before, .elementor-140 .elementor-element.elementor-element-7025b828 > .e-con-inner > .elementor-background-video-container::before, .elementor-140 .elementor-element.elementor-element-7025b828 > .elementor-background-slideshow::before, .elementor-140 .elementor-element.elementor-element-7025b828 > .e-con-inner > .elementor-background-slideshow::before, .elementor-140 .elementor-element.elementor-element-7025b828 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-140 .elementor-element.elementor-element-4bccbef6{width:100%;max-width:100%;text-align:right;}.elementor-140 .elementor-element.elementor-element-4bccbef6 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:60px;font-weight:700;text-transform:none;font-style:normal;text-decoration:none;line-height:1.1em;letter-spacing:0px;-webkit-text-stroke-width:1px;stroke-width:1px;-webkit-text-stroke-color:#39393982;stroke:#39393982;text-shadow:0px 0px 60px rgba(0, 0, 0, 0.65);color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-140 .elementor-element.elementor-element-5c6059b3{width:100%;max-width:100%;text-align:right;font-family:"Poppins", Sans-serif;font-size:25px;font-weight:300;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;text-shadow:0px 0px 60px rgba(0, 0, 0, 0.67);color:#FFFFFF;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-140 .elementor-element.elementor-element-2576d95f .elementor-button{background-color:#FEE715;font-family:"Poppins", Sans-serif;font-size:16px;font-weight:600;text-transform:capitalize;font-style:normal;text-decoration:none;line-height:1em;letter-spacing:0px;text-shadow:0px 0px 10px rgba(0,0,0,0.3);fill:#FFFFFF;color:#FFFFFF;box-shadow:0px 0px 6px 0px rgba(0,0,0,0.5);border-radius:40px 40px 40px 40px;padding:20px 20px 20px 20px;}.elementor-140 .elementor-element.elementor-element-2576d95f .elementor-button:hover, .elementor-140 .elementor-element.elementor-element-2576d95f .elementor-button:focus{background-color:#FEE715;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-140 .elementor-element.elementor-element-2576d95f{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-140 .elementor-element.elementor-element-245f74d5{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-140 .elementor-element.elementor-element-245f74d5:not(.elementor-motion-effects-element-type-background), .elementor-140 .elementor-element.elementor-element-245f74d5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFFF5;}.elementor-140 .elementor-element.elementor-element-245f74d5.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-140 .elementor-element.elementor-element-3cb45f06{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-140 .elementor-element.elementor-element-6073baa7{--display:flex;}@media(max-width:1024px){.elementor-140 .elementor-element.elementor-element-30c0c360{--padding-top:10%;--padding-bottom:0%;--padding-left:4%;--padding-right:4%;}.elementor-140 .elementor-element.elementor-element-4bccbef6 .elementor-heading-title{font-size:65px;}}@media(min-width:768px){.elementor-140 .elementor-element.elementor-element-30c0c360{--width:100%;}.elementor-140 .elementor-element.elementor-element-7025b828{--width:100%;}.elementor-140 .elementor-element.elementor-element-245f74d5{--width:100.082%;}.elementor-140 .elementor-element.elementor-element-3cb45f06{--width:100%;}}@media(max-width:767px){.elementor-140 .elementor-element.elementor-element-30c0c360{--min-height:0px;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.66;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0%;--padding-bottom:0%;--padding-left:4%;--padding-right:4%;}.elementor-140 .elementor-element.elementor-element-7025b828{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-140 .elementor-element.elementor-element-4bccbef6{text-align:center;}.elementor-140 .elementor-element.elementor-element-4bccbef6 .elementor-heading-title{font-size:30px;}.elementor-140 .elementor-element.elementor-element-5c6059b3{width:100%;max-width:100%;text-align:center;font-size:14px;}.elementor-140 .elementor-element.elementor-element-2576d95f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-140 .elementor-element.elementor-element-2576d95f .elementor-button{font-size:11px;}.elementor-140 .elementor-element.elementor-element-245f74d5{--padding-top:25px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-140 .elementor-element.elementor-element-3cb45f06{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-140 .elementor-element.elementor-element-3cb45f06.e-con{--order:99999 /* order end hack */;}.elementor-140 .elementor-element.elementor-element-6073baa7{--margin-top:-24px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for text-editor, class: .elementor-element-968a2c4 *//* ----- Scoped to this section only ----- */
.va-locksmith-section {
  --slate: #708090;   /* Slate Gray */
  --yellow: #FEE715;  /* Accent Yellow */
  --ink: #2b2f36;     /* Deep text */
  --muted: #6b7078;   /* Muted text */
  --bg: #f7f8fa;      /* Soft background */
  --card-bg: #ffffff;
  --ring: rgba(0,0,0,0.08);
  --radius: 14px;
  --shadow: 0 10px 30px rgba(0,0,0,0.06);
  --gap: 22px;
  --wrap: 1180px;

  font-family: "Segoe UI", Arial, sans-serif;
  color: var(--ink);
  background: var(--bg);
  padding: 42px 20px;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

.va-locksmith-section .va-wrap {
  max-width: var(--wrap);
  margin: 0 auto;
}

.va-locksmith-section .va-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--muted);
}

.va-locksmith-section .va-dot {
  width: 8px; height: 8px; border-radius: 999px; background: var(--yellow);
  box-shadow: 0 0 0 4px rgba(254,231,21,.25);
}

.va-locksmith-section .va-title {
  margin: 10px 0 8px;
  font-size: 30px;
  line-height: 1.2;
  font-weight: 800;
  color: var(--slate);
}

.va-locksmith-section .va-intro {
  font-size: 16px;
  color: var(--muted);
  line-height: 1.7;
  margin-bottom: 28px;
}

.va-locksmith-section .va-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--gap);
  margin-top: 18px;
}

.va-locksmith-section .va-card {
  background: var(--card-bg);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  border: 1px solid var(--ring);
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  position: relative;
}

.va-locksmith-section .va-card::before{
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 6px;
  background: linear-gradient(90deg, var(--yellow), #fff7a3 65%, var(--yellow));
}

.va-locksmith-section .va-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(0,0,0,.10);
  border-color: rgba(0,0,0,.12);
}

.va-locksmith-section .va-card-body {
  padding: 20px 20px 22px;
}

.va-locksmith-section .va-card-title {
  font-size: 18px;
  font-weight: 800;
  line-height: 1.25;
  margin: 6px 0 10px;
}

.va-locksmith-section .va-card-title a{
  color: var(--ink);
  text-decoration: none;
  background:
    linear-gradient(var(--yellow), var(--yellow)) 0 100%/0 3px no-repeat;
  transition: background-size .2s ease, color .2s ease;
  padding-bottom: 2px;
  display: inline-block;
}
.va-locksmith-section .va-card:hover .va-card-title a{
  background-size: 100% 3px;
  color: var(--slate);
}

.va-locksmith-section .va-card-icon{
  font-size: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px; height: 42px;
  border-radius: 10px;
  background: rgba(254,231,21,.15);
  box-shadow: inset 0 0 0 2px var(--yellow);
}

.va-locksmith-section .va-card-desc{
  color: var(--muted);
  line-height: 1.7;
  font-size: 15px;
}

.va-locksmith-section .va-section-subtitle{
  margin: 34px 0 10px;
  font-size: 20px;
  font-weight: 800;
  color: var(--slate);
}

.va-locksmith-section .va-benefits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 22px;
  margin-bottom: 6px;
}

.va-locksmith-section .va-benefit {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  font-size: 15px;
  color: var(--ink);
}
.va-locksmith-section .va-benefit .va-check {
  flex: 0 0 auto;
  width: 22px; height: 22px;
  border-radius: 7px;
  background: var(--yellow);
  display: grid; place-items: center;
  font-weight: 800;
}

.va-locksmith-section .va-cta {
  display: flex; flex-wrap: wrap; gap: 12px;
  margin: 24px 0 10px;
}

.va-locksmith-section .va-btn{
  display: inline-flex; align-items: center; justify-content: center;
  gap: 8px;
  padding: 12px 18px;
  border-radius: 999px;
  font-weight: 700;
  text-decoration: none;
  border: 2px solid var(--yellow);
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease, color .15s ease;
  will-change: transform;
}
.va-locksmith-section .va-btn-primary{
  background: var(--yellow); color: #111;
}
.va-locksmith-section .va-btn-outline{
  background: transparent; color: var(--slate);
}
.va-locksmith-section .va-btn:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(254,231,21,.35);
}

.va-locksmith-section .va-testimonials{
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: var(--gap);
  margin-top: 18px;
}

.va-locksmith-section .va-quote{
  background: var(--card-bg);
  border: 1px solid var(--ring);
  border-radius: var(--radius);
  padding: 18px 18px 16px;
  box-shadow: var(--shadow);
}
.va-locksmith-section .va-stars{ font-size: 14px; color: #d6b800; }
.va-locksmith-section .va-quote p{ margin: 8px 0 10px; color: var(--ink); line-height: 1.6; }
.va-locksmith-section .va-sig{ font-size: 13px; color: var(--muted); }

@media (max-width: 1000px){
  .va-locksmith-section .va-card-grid,
  .va-locksmith-section .va-testimonials{ grid-template-columns: repeat(2, minmax(0,1fr)); }
  .va-locksmith-section .va-benefits{ grid-template-columns: 1fr; }
}
@media (max-width: 640px){
  .va-locksmith-section{ padding: 28px 16px; }
  .va-locksmith-section .va-card-grid,
  .va-locksmith-section .va-testimonials{ grid-template-columns: 1fr; }
  .va-locksmith-section .va-title{ font-size: 24px; }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ebad46b *//* ===== Scoped CSS for Areas & Services (Elementor → Section > Advanced > Custom CSS) ===== */
/* This styling only affects elements inside .va-areas-services */
.va-areas-services {
  /* Theme tokens */
  --slate: #708090;    /* Slate Gray */
  --yellow: #FEE715;   /* Accent Yellow */
  --ink: #283038;      /* Deep body text */
  --muted: #6b7078;    /* Muted text */
  --bg: #f7f8fa;       /* Soft background */
  --card: #ffffff;     /* Card surface */
  --ring: rgba(0,0,0,0.08);
  --radius: 14px;
  --shadow: 0 12px 28px rgba(0,0,0,0.06);
  --wrap: 1180px;
  --gap: 22px;

  font-family: "Segoe UI", Arial, sans-serif;
  color: var(--ink);
  background: var(--bg);
  padding: 40px 20px;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

.va-areas-services .va-wrap {
  max-width: var(--wrap);
  margin: 0 auto;
}

/* Layout: Two blocks side-by-side (Areas / Services) */
.va-areas-services {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--gap);
}

/* Card-like blocks */
.va-areas-services .va-block {
  background: var(--card);
  border: 1px solid var(--ring);
  border-radius: var(--radius);
  padding: 22px;
  box-shadow: var(--shadow);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.va-areas-services .va-block:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 42px rgba(0,0,0,.09);
  border-color: rgba(0,0,0,.12);
}

/* Headings with accent underline */
.va-areas-services .va-block > h3 {
  margin: 2px 0 16px;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 800;
  color: var(--slate);
  position: relative;
  display: inline-block;
  padding-bottom: 6px;
}
.va-areas-services .va-block > h3::after {
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 100%;
  height: 6px;
  background: linear-gradient(90deg, var(--yellow), rgba(254,231,21,.35));
  border-radius: 6px;
}

/* Lists as responsive grids of links */
.va-areas-services .va-block ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

/* Link chips */
.va-areas-services .va-block ul li a {
  display: block;
  text-decoration: none;
  background: #fffef2;
  color: var(--ink);
  border: 2px solid rgba(254,231,21,.6);
  border-radius: 12px;
  padding: 10px 12px;
  line-height: 1.25;
  font-weight: 600;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease, color .15s ease, background .15s ease;
  box-shadow: 0 6px 18px rgba(0,0,0,.04);
}
.va-areas-services .va-block ul li a:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(0,0,0,.08);
  border-color: var(--yellow);
  background: #fff9c2;
  color: var(--slate);
}

/* Keyboard focus styles (a11y) */
.va-areas-services .va-block ul li a:focus {
  outline: 3px solid var(--yellow);
  outline-offset: 2px;
}

/* Subtle icon bullet (optional, no extra HTML required) */
.va-areas-services .va-block ul li a::before {
  content: "↗";
  font-size: 12px;
  margin-right: 8px;
  opacity: .7;
}

/* Fine-tuning typography for long service names */
.va-areas-services .va-block ul li a {
  word-wrap: break-word;
  hyphens: auto;
}

/* Section delimiter line (top accent) */
.va-areas-services::before {
  content: "";
  display: block;
  grid-column: 1 / -1;
  height: 6px;
  margin: -16px 0 8px;
  background: linear-gradient(90deg, var(--yellow), #fff7a3 65%, var(--yellow));
  border-radius: 6px;
}

/* Responsive adjustments */
@media (max-width: 1000px) {
  .va-areas-services {
    grid-template-columns: 1fr;
  }
  .va-areas-services .va-block ul {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 640px) {
  .va-areas-services {
    padding: 28px 16px;
  }
  .va-areas-services .va-block {
    padding: 18px;
  }
  .va-areas-services .va-block > h3 {
    font-size: 20px;
  }
  .va-areas-services .va-block ul {
    grid-template-columns: 1fr;
  }
}/* End custom CSS */