.elementor-153 .elementor-element.elementor-element-7f4b2dce{--display:flex;}.elementor-153 .elementor-element.elementor-element-f4c5384{--display:flex;--min-height:220px;}/* Start custom CSS for text-editor, class: .elementor-element-6998047 *//* ===== Premium lead line ===== */
.contact-scope .contact-subtitle{
  /* layout */
  position: relative;
  margin: 10px 0 20px;
  padding: 16px 18px 16px 54px;

  /* surface */
  background: #ffffff;
  border: 1px solid var(--card-border, #EFE3D3);
  border-radius: 14px;
  box-shadow:
    0 6px 18px rgba(15,23,42,.05),
    inset 0 1px 0 var(--card-inset, #fff7ee);

  /* type */
  color: var(--muted, #5B6472);
  font: 500 16px/1.65 ui-sans-serif, system-ui, -apple-system, "Segoe UI", Inter, Roboto, Helvetica, Arial, sans-serif;
}

/* small gold badge on the left (no markup needed) */
.contact-scope .contact-subtitle::before{
  content: "";
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px; height: 20px;
  border-radius: 999px;
  background:
    radial-gradient(circle at 30% 30%, #F8E8C9 0%, #E9C889 55%, #D4A251 100%);
  box-shadow: 0 2px 6px rgba(212,162,81,.35);
}

/* subtle accent line under the pill to add depth */
.contact-scope .contact-subtitle::after{
  content: "";
  position: absolute;
  left: 54px; right: 18px; bottom: -9px;
  height: 6px;
  border-radius: 6px;
  background: linear-gradient(90deg, #F7E4C3 0%, #F2D6A2 100%);
  opacity: .65;
  filter: blur(.2px);
}

/* hover/focus polish */
.contact-scope .contact-subtitle:hover{
  box-shadow:
    0 10px 22px rgba(15,23,42,.08),
    inset 0 1px 0 var(--card-inset, #fff7ee);
  transform: translateY(-1px);
}
.contact-scope .contact-subtitle:focus,
.contact-scope .contact-subtitle:focus-visible{
  outline: 2px solid rgba(212,162,81,.45);
  outline-offset: 2px;
  box-shadow:
    0 10px 22px rgba(15,23,42,.08),
    inset 0 1px 0 var(--card-inset, #fff7ee);
}

/* responsive type */
@media (min-width: 640px){
  .contact-scope .contact-subtitle{ font-size: 17px; }
}
@media (min-width: 960px){
  .contact-scope .contact-subtitle{ font-size: 18px; }
}
.contact-subtitle {
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Inter, Roboto, Helvetica, Arial, sans-serif;
  font-size: 1.1rem;
  font-weight: 500;
  color: #5B4231;
  background: #FFF8F2;
  padding: 12px 18px;
  border-left: 4px solid #D4A251;
  border-radius: 10px;
  margin: 0 0 1.5rem;
  box-shadow: 0 2px 6px rgba(212, 162, 81, 0.08);
}
/* ================================
   CONTACT — clean, no gold dots
   Scope: only inside .contact-scope
================================ */

/* Kill any decorative pseudo-elements sometimes injected by theme/Elementor */
.contact-scope .contact-subtitle::before,
.contact-scope .contact-subtitle::after,
.contact-scope .contact-card::before,
.contact-scope .contact-card::after,
.contact-scope .contact-map-wrap::before,
.contact-scope .contact-map-wrap::after {
  content: none !important;
  display: none !important;
}

/* Also block background ornaments that may be applied via gradients/images */
.contact-scope .contact-subtitle,
.contact-scope .contact-card,
.contact-scope .contact-map-wrap {
  background-image: none !important;
}

/* Subtitle — clean callout (no dots, no extra underline) */
.contact-scope .contact-subtitle {
  margin: 0 0 20px;
  padding: 14px 16px;
  background: #FFFAF3;
  border: 1px solid #F3E6D6;
  border-left: 4px solid #D4A251;
  border-radius: 10px;
  color: #374151;
  font-size: 1.05rem;
  line-height: 1.5;
  box-shadow: 0 2px 8px rgba(15,23,42,.04);
}

/* Contact card — tidy, no ornaments */
.contact-scope .contact-card {
  margin-bottom: 24px;
  padding: 18px 22px;
  background: #FFFBF5;
  border: 1px solid #F3E6D6;
  border-radius: 14px;
  box-shadow: 0 2px 10px rgba(15,23,42,.04);
}

/* Optional: ensure the tiny gold “rule” under the H1 isn't showing here */
.contact-scope h1.entry-title::after {
  content: none !important;
}

/* Map title: premium but simple */
.contact-scope .contact-map-title {
  margin: 0 0 12px;
  padding-left: 10px;
  border-left: 4px solid #F2D6A2;
  font-weight: 800;
  font-size: 1.1rem;
  color: #111827;
}

/* Keep the Get Directions button crisp */
.contact-scope .contact-directions {
  display: inline-block;
  background: #D11F29;
  color: #fff !important;
  font-weight: 700;
  padding: 12px 22px;
  border-radius: 10px;
  text-decoration: none;
  box-shadow: 0 3px 8px rgba(209,31,41,.25);
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.contact-scope .contact-directions:hover {
  background: #B51B25;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(209,31,41,.28);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7f4b2dce *//* ================= Premium Contact page (Elementor) ================= */
:root{
  --ink:#0F172A; --ink-2:#101828; --muted:#475467;
  --gold:#C88A3B; --gold-2:#E6C288; --paper:#FFFBF4;
}

/* 0) Keep content comfortably narrow */
.contact-scope .elementor-container{ max-width: 980px !important; margin-inline:auto; }

/* 1) Page title */
.contact-scope h1.entry-title,
.contact-scope h1.elementor-heading-title{
  font-weight:800; letter-spacing:.2px; line-height:1.12;
  font-size:clamp(28px, 6.2vw, 44px);
  margin:12px 0 10px; color:transparent;
  background:linear-gradient(90deg, var(--ink) 0%, var(--ink) 45%, var(--gold) 100%);
  -webkit-background-clip:text; background-clip:text; display:inline-block;
}
.contact-scope h1.entry-title::after,
.contact-scope h1.elementor-heading-title::after{
  content:""; display:block; width:64px; height:4px; margin-top:10px;
  border-radius:999px; background:linear-gradient(90deg, var(--gold-2), var(--gold));
}

/* 2) Body copy & links */
.contact-scope .elementor-widget-text-editor p{
  color:var(--ink-2); font-size:clamp(16px, 3.5vw, 18px); line-height:1.6;
  margin:10px 0 14px;
}
.contact-scope .elementor-widget-text-editor a{
  color:var(--ink); text-underline-offset:2px; text-decoration:underline;
}
.contact-scope .elementor-widget-text-editor a:hover{ color:var(--gold); text-decoration:none; }

/* 3) Email + Phone/WhatsApp as premium chips (auto-detected) */
.contact-scope .elementor-widget-text-editor p:has(a[href^="mailto:"]),
.contact-scope .elementor-widget-text-editor p:has(a[href^="tel:"]){
  background:var(--paper); border:1px solid #E6D8C5; border-radius:12px;
  padding:12px 14px 12px 48px; position:relative; max-width:720px;
}
.contact-scope .elementor-widget-text-editor p:has(a[href^="mailto:"])::before{
  content:"✉️"; position:absolute; left:14px; top:10px; font-size:20px; line-height:1;
}
.contact-scope .elementor-widget-text-editor p:has(a[href^="tel:"])::before{
  content:"📞"; position:absolute; left:14px; top:10px; font-size:20px; line-height:1;
}
.contact-scope .elementor-widget-text-editor p strong{ font-weight:800; color:var(--ink); }

/* 4) Address block — subtle highlight (plain paragraph with <br>) */
.contact-scope .elementor-widget-text-editor p:has(> br):not(:has(a)){
  max-width:720px; border-left:3px solid var(--gold);
  padding-left:12px; background:linear-gradient(90deg, rgba(200,138,59,.08), transparent 50%);
}

/* 5) Section label like “Find us on the map” */
.contact-scope .elementor-widget-text-editor h4,
.contact-scope .elementor-widget-text-editor strong:only-child{
  display:block; margin:18px 0 8px; color:var(--ink); font-weight:800;
  letter-spacing:.3px;
}

/* 6) Map card (works for Google Maps iframe or Elementor Map widget) */
.contact-scope iframe[src*="google.com/maps"],
.contact-scope .elementor-widget-google_maps iframe{
  width:100% !important; min-height:360px; border:0;
  border-radius:16px; box-shadow:0 16px 40px rgba(16,24,40,.10);
  outline:1px solid #EEE5D6;
}

/* 7) Form fields/buttons (CF7/WPForms/Elementor) */
.contact-scope input[type="text"],
.contact-scope input[type="email"],
.contact-scope input[type="tel"],
.contact-scope input[type="url"],
.contact-scope textarea,
.contact-scope select{
  width:100%; border:1px solid #E6D8C5; background:#fff; border-radius:10px;
  padding:12px 14px; font-size:16px; line-height:1.4; color:var(--ink-2);
  outline:none; transition:border-color .2s, box-shadow .2s; box-sizing:border-box;
}
.contact-scope textarea{ min-height:120px; resize:vertical; }
.contact-scope input:focus, .contact-scope textarea:focus, .contact-scope select:focus{
  border-color:var(--gold); box-shadow:0 0 0 4px rgba(200,138,59,.12);
}
.contact-scope button,
.contact-scope input[type="submit"],
.contact-scope .elementor-button{
  appearance:none; border:none; border-radius:999px; padding:12px 20px;
  font-weight:700; font-size:16px; cursor:pointer;
  background:linear-gradient(90deg, var(--gold-2), var(--gold)); color:#0F172A;
  box-shadow:0 8px 24px rgba(200,138,59,.18);
  transition:transform .06s, box-shadow .2s, filter .2s;
}
.contact-scope button:hover,
.contact-scope input[type="submit"]:hover,
.contact-scope .elementor-button:hover{
  transform:translateY(-1px); filter:saturate(1.05);
  box-shadow:0 10px 28px rgba(200,138,59,.22);
}
@media (max-width:640px){
  .contact-scope .elementor-widget-text-editor p{ margin:12px 0; }
  .contact-scope .elementor-widget-text-editor p:has(a[href^="mailto:"]),
  .contact-scope .elementor-widget-text-editor p:has(a[href^="tel:"]){ padding-left:46px; }
}
/* ===== Contact page polish (scoped) ===== */
.contact-scope{
  --ink:#0F172A;          /* deep text */
  --brand:#C88A3B;        /* your gold */
  --brand-2:#E8C089;      /* soft gold accent */
  --paper:#FFFBF4;        /* warm paper */
  --line:#E6D8C5;         /* hairline */
}

/* content width & spacing */
.contact-scope .elementor-container,
.contact-scope .e-con { max-width:1100px; margin-inline:auto; padding-inline:18px; }

/* Page heading */
.contact-scope h1.entry-title,
.contact-scope h1.elementor-heading-title{
  margin:10px 0 18px;
  font-weight:800;
  letter-spacing:.2px;
  line-height:1.15;
  font-size:clamp(28px,4vw,44px);
  color:var(--ink);
}
.contact-scope h1.entry-title::after,
.contact-scope h1.elementor-heading-title::after{
  content:""; display:block; width:72px; height:4px; border-radius:4px;
  background:linear-gradient(90deg,var(--brand),var(--brand-2));
  margin-top:10px;
}

/* Contact + Map layout (desktop) */
@media (min-width:1024px){
  .contact-scope .contact-layout{
    display:grid; grid-template-columns:minmax(300px,420px) 1fr;
    gap:28px; align-items:start;
  }
}

/* Contact card */
.contact-scope .c-card{
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:14px;
  padding:18px 22px;
  box-shadow:0 10px 22px rgba(200,138,59,.07);
  color:var(--ink);
}
.contact-scope .c-card p{
  margin:9px 0; line-height:1.55;
  position:relative; padding-left:30px; font-size:16px;
}
.contact-scope .c-card a{
  color:var(--brand); font-weight:600; text-decoration:none;
  border-bottom:1px dashed rgba(200,138,59,.45);
}
.contact-scope .c-card a:hover{ color:#A96A21; border-bottom-color:transparent; }

/* Quick icons (based on line order in that Text Editor widget) */
.contact-scope .c-card p:nth-of-type(1)::before{ content:"✉️"; position:absolute; left:0; top:0; }
.contact-scope .c-card p:nth-of-type(2)::before{ content:"☎️"; position:absolute; left:0; top:0; }
.contact-scope .c-card p:nth-of-type(3)::before{ content:"📍"; position:absolute; left:0; top:0; }
.contact-scope .c-card p:nth-of-type(4)::before{ content:"⏰"; position:absolute; left:0; top:0; }

/* Map */
.contact-scope .map-embed iframe{
  width:100%; aspect-ratio:16/9; border:0;
  border-radius:14px; box-shadow:0 12px 24px rgba(15,23,42,.10);
}
@media (max-width:767px){
  .contact-scope .map-embed iframe{ aspect-ratio:4/3; }
}

/* Section title above the map */
.contact-scope h3, .contact-scope h4{
  font-weight:800; letter-spacing:.2px; color:var(--ink);
  margin:22px 0 12px;
}

/* Breadcrumbs (subtle) */
.contact-scope .breadcrumbs, .contact-scope .woocommerce-breadcrumb{
  font-size:13px; color:#667085; margin:.2rem 0 1rem;
}
.contact-scope .breadcrumbs a, .contact-scope .woocommerce-breadcrumb a{ color:#667085; }/* End custom CSS */