.elementor-55 .elementor-element.elementor-element-35ccb70{--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;--margin-top:210px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-55 .elementor-element.elementor-element-062e80f{--display:flex;}.elementor-55 .elementor-element.elementor-element-201856b{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:25px;--padding-right:25px;}.elementor-55 .elementor-element.elementor-element-2e98c8b3{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-55 .elementor-element.elementor-element-67e0e8ce{--display:flex;--justify-content:flex-end;--gap:15px 15px;--row-gap:15px;--column-gap:15px;--margin-top:10px;--margin-bottom:10px;--margin-left:10px;--margin-right:10px;}.elementor-55 .elementor-element.elementor-element-30c73d69{--grid-template-columns:repeat(1, auto);text-align:center;width:auto;max-width:auto;background-color:var( --e-global-color-primary );padding:45px 15px 45px 15px;top:35.868%;border-radius:40px 40px 40px 40px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--icon-size:26px;--grid-column-gap:0px;--grid-row-gap:0px;}body:not(.rtl) .elementor-55 .elementor-element.elementor-element-30c73d69{left:-0.122%;}body.rtl .elementor-55 .elementor-element.elementor-element-30c73d69{right:-0.122%;}.elementor-55 .elementor-element.elementor-element-30c73d69 .elementor-social-icon{background-color:#02010100;}.elementor-55 .elementor-element.elementor-element-30c73d69 .elementor-social-icon i{color:#FDFDFD;}.elementor-55 .elementor-element.elementor-element-30c73d69 .elementor-social-icon svg{fill:#FDFDFD;}.elementor-55 .elementor-element.elementor-element-65c5fa24{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-55 .elementor-element.elementor-element-65c5fa24.e-con{--align-self:center;}.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-55 .elementor-element.elementor-element-e1bc03e{font-family:"Jost", Sans-serif;font-weight:400;}.elementor-55 .elementor-element.elementor-element-dccc485{--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;}body.elementor-page-55:not(.elementor-motion-effects-element-type-background), body.elementor-page-55 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}@media(max-width:1024px){.elementor-55 .elementor-element.elementor-element-35ccb70{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-55 .elementor-element.elementor-element-2e98c8b3{--min-height:100vh;}.elementor-55 .elementor-element.elementor-element-67e0e8ce{--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-55 .elementor-element.elementor-element-30c73d69{padding:25px 10px 25px 10px;top:17%;}.elementor-55 .elementor-element.elementor-element-65c5fa24{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-55 .elementor-element.elementor-element-67e0e8ce{--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-55 .elementor-element.elementor-element-30c73d69{padding:20px 5px 20px 5px;top:0%;--icon-size:20px;}body:not(.rtl) .elementor-55 .elementor-element.elementor-element-30c73d69{left:0%;}body.rtl .elementor-55 .elementor-element.elementor-element-30c73d69{right:0%;}.elementor-55 .elementor-element.elementor-element-65c5fa24{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:10px;--margin-right:0px;}}@media(min-width:768px){.elementor-55 .elementor-element.elementor-element-2e98c8b3{--width:100%;}.elementor-55 .elementor-element.elementor-element-65c5fa24{--width:80%;}}/* Start custom CSS for wp-widget-gform_widget, class: .elementor-element-dc0d34e *//* Smaller, softer form container */
#contact-form {
  max-width: 600px;             /* narrower card */
  margin: 0 auto;
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 10px 20px rgba(0,0,0,0.05);
  padding: 32px;                /* less padding overall */
}

/* Apply Jost to everything and lighten field borders */
#contact-form label,
#contact-form input,
#contact-form select,
#contact-form textarea,
#contact-form button,
#contact-form input[type="submit"] {
  font-family: 'Jost', sans-serif !important;
  color: #0e1d61;
}

/* Inputs, selects, textarea: softer border, less padding */
#contact-form input,
#contact-form select,
#contact-form textarea {
  border: 1px solid #c5d4e0;   /* soft grey-blue border */
  border-radius: 6px;
  padding: 8px 10px;            /* reduced internal padding */
  margin-bottom: 6px;           /* tighter spacing */
  width: 100%;
  background-color: #f9fbfd;
}

/* Make the message box smaller */
#contact-form textarea {
  height: 80px !important;       /* shorter textarea */
  min-height: 80px !important;
  max-height: 80px !important;
}

/* Labels: consistent spacing and size */
#contact-form label {
  font-size: 14px;
  margin-bottom: 4px;
}

/* Submit button: thin border, soft hover */
#contact-form button,
#contact-form input[type="submit"] {
  font-size: 14px;
  text-transform: uppercase;
  padding: 12px 28px;
  border: 1px solid #0e1d61;
  border-radius: 4px;
  background: transparent;
  transition: background-color 0.3s, color 0.3s;
}

#contact-form button:hover,
#contact-form input[type="submit"]:hover {
  background-color: #799fc3;   /* soft light blue on hover */
  color: #ffffff;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-76a7450c *//* --- Subheadings (SURGICAL / NON-SURGICAL) --- */
.services-grid h6,
.services-grid .p3,
.services-grid h5,
.services-grid h4,
.services-grid strong.svc-sub {   /* optional class if you add it */
  margin-top: 8px;
  margin-bottom: 4px;
  font-size: 15px;
  font-weight: 600;
  font-family: 'Montserrat', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  line-height: 1.4;
  color: #5788b4; /* Azure blue */
}

/* --- Lists (bullet rows) --- */
.services-grid ul { 
  list-style: none; 
  margin: 0; 
  padding: 0;
}

/* Catch both plain <li> and pasted classes like .li3 */
.services-grid ul li,
.services-grid .li3 {
  font-size: 12px;
  font-weight: 400;
  font-family: 'Montserrat', sans-serif;
  line-height: 1.6;      /* a touch tighter than 1.8; adjust if needed */
  margin: 2px 0;
  color: #0e1d61;        /* deep navy */
}

/* Links inside list items, with or without .s1/.s2 spans */
.services-grid ul li a,
.services-grid .li3 a,
.services-grid .s1 a,
.services-grid .s2 a {
  color: #0e1d61;        /* base link color */
  text-decoration: none;
  font: inherit;
  line-height: inherit;
}

/* Hover */
.services-grid ul li a:hover,
.services-grid .li3 a:hover,
.services-grid .s1 a:hover,
.services-grid .s2 a:hover {
  color: #5788b4;
  text-decoration: underline;
}

/* Optional: location title at top (BRENTWOOD/FRANKLIN/etc.) */
.services-grid .location-heading,
.services-grid h3.p1,
.services-grid h3 {
  font-size: 16px;
  font-weight: 800;
  text-transform: uppercase;
  color: #0e1d61;
  margin: 0 0 6px;
  line-height: 1.2;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-7a47f44c *//* Subheadings (Surgical / Non-Surgical) across all columns */
.p3 {
  margin-top: 8px;
  margin-bottom: 4px;
  font-size: 15px;
  font-weight: 600;
  font-family: 'Montserrat', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  line-height: 1.4;
  color: #5788b4; /* Azure blue */
}

/* List items across all columns */
.li3,
.li3 span,
.li3 a,
.s1,
.s2 {
  font-size: 12px;             /* smaller text */
  font-weight: 400;            /* normal weight */
  font-family: 'Montserrat', sans-serif;
  line-height: 1.8;            /* consistent spacing */
  color: #0e1d61 !important;   /* deep navy */
  text-decoration: none;       /* clean links */
}

/* Hover state for links across all columns */
.li3 a:hover,
.s1 a:hover,
.s2 a:hover {
  color: #5788b4 !important;   /* Azure blue on hover */
  text-decoration: underline;  /* optional: underline on hover */
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-6d521e75 *//* Brentwood subheadings (Surgical / Non-Surgical) */
.p3 {
  margin-top: 8px;
  margin-bottom: 4px;
  font-size: 15px;
  font-weight: 600;
  font-family: 'Montserrat', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  line-height: 1.4;
  color: #5788b4; /* Azure blue */
}

/* Brentwood list items */
.li3,
.li3 span,
.li3 a,
.s1,
.s2 {
  font-size: 12px;          /* smaller text */
  font-weight: 400;         /* normal weight */
  font-family: 'Montserrat', sans-serif;
  line-height: 1.8;         /* reduce vertical spacing */
  color: #0e1d61 !important; /* deep navy */
  text-decoration: none;    /* clean links */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-65c5fa24 *//* LOCATION MENU — force H2 to Jost (smaller) */
.location-menu.location-menu .elementor-widget-heading h2.elementor-heading-title,
.location-menu.location-menu h2.elementor-heading-title,
.location-menu.location-menu .elementor-widget-container h2,
.location-menu.location-menu h2 {
  font-family: 'Jost', sans-serif !important;
  font-weight: 500 !important;                     /* 400 for lighter, 600 for bolder */
  font-size: clamp(1.0625rem, 1.6vw, 1.375rem) !important; /* ~17–22px */
  line-height: 1.2 !important;
  letter-spacing: .2px !important;
  text-transform: none !important;
  color: #0e1d61 !important;
  margin: 0 0 10px !important;
}

/* Catch inner spans so Playfair/kit styles can't sneak in */
.location-menu .elementor-widget-heading h2.elementor-heading-title *,
.location-menu h2.elementor-heading-title * {
  font-family: inherit !important;
  font-weight: inherit !important;
  font-style: inherit !important;
  letter-spacing: inherit !important;
  text-transform: inherit !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-67e0e8ce *//* CSPS Locations: make the column headers Cormorant, normal weight, NOT uppercase */
.elementor-55 .elementor-element.elementor-element-67e0e8ce h1,
.elementor-55 .elementor-element.elementor-element-67e0e8ce h2,
.elementor-55 .elementor-element.elementor-element-67e0e8ce h3,
.elementor-55 .elementor-element.elementor-element-67e0e8ce h4,
.elementor-55 .elementor-element.elementor-element-67e0e8ce .elementor-widget-heading .elementor-heading-title,
.elementor-55 .elementor-element.elementor-element-67e0e8ce .elementor-widget-text-editor > .elementor-widget-container > p:first-child {
  font-family: 'Cormorant Garamond', Georgia, "Times New Roman", serif !important;
  font-weight: 400 !important;       /* not bold */
  text-transform: none !important;   /* kill all-caps */
  letter-spacing: 0 !important;
  line-height: 1.2 !important;
}

/* If any header was wrapped in <strong> or <b>, neutralize it */
.elementor-55 .elementor-element.elementor-element-67e0e8ce h1 b, .elementor-55 .elementor-element.elementor-element-67e0e8ce h1 strong,
.elementor-55 .elementor-element.elementor-element-67e0e8ce h2 b, .elementor-55 .elementor-element.elementor-element-67e0e8ce h2 strong,
.elementor-55 .elementor-element.elementor-element-67e0e8ce h3 b, .elementor-55 .elementor-element.elementor-element-67e0e8ce h3 strong,
.elementor-55 .elementor-element.elementor-element-67e0e8ce h4 b, .elementor-55 .elementor-element.elementor-element-67e0e8ce h4 strong,
.elementor-55 .elementor-element.elementor-element-67e0e8ce .elementor-heading-title b,
.elementor-55 .elementor-element.elementor-element-67e0e8ce .elementor-heading-title strong {
  font-weight: 400 !important;
  text-transform: none !important;
}
/* ===== TREATMENTS GRID: tighten vertical spacing ===== */
.csps-treatments-grid{
  /* shrink the big section padding */
  padding-top: 20px !important;
  padding-bottom: 20px !important;

  /* reduce column gap (Elementor var) */
  --e-column-gap: 16px !important;
}

/* reduce the inner column/widget padding Elementor adds */
.csps-treatments-grid .elementor-column .elementor-widget-wrap{
  padding: 8px 10px !important;
}

/* tighten headings + lists inside text editors */
.csps-treatments-grid .elementor-widget-text-editor h1,
.csps-treatments-grid .elementor-widget-text-editor h2,
.csps-treatments-grid .elementor-widget-text-editor h3,
.csps-treatments-grid .elementor-widget-text-editor h4,
.csps-treatments-grid .elementor-widget-text-editor p,
.csps-treatments-grid .elementor-widget-text-editor ul,
.csps-treatments-grid .elementor-widget-text-editor li{
  margin-top: 6px !important;
  margin-bottom: 6px !important;
}

/* list padding left can add visual indent—trim it */
.csps-treatments-grid .elementor-widget-text-editor ul{
  padding-left: 16px !important; /* or 0 if you want completely flush */
}

/* a touch tighter on phone */
@media (max-width: 767px){
  .csps-treatments-grid{
    padding-top: 14px !important;
    padding-bottom: 14px !important;
    --e-column-gap: 12px !important;
  }
  .csps-treatments-grid .elementor-column .elementor-widget-wrap{
    padding: 6px 8px !important;
  }
  .csps-treatments-grid .elementor-widget-text-editor h1,
  .csps-treatments-grid .elementor-widget-text-editor h2,
  .csps-treatments-grid .elementor-widget-text-editor h3,
  .csps-treatments-grid .elementor-widget-text-editor h4,
  .csps-treatments-grid .elementor-widget-text-editor p,
  .csps-treatments-grid .elementor-widget-text-editor ul,
  .csps-treatments-grid .elementor-widget-text-editor li{
    margin-top: 4px !important;
    margin-bottom: 4px !important;
  }
}
/* ===== Locations grid headings (within the 4-column block) ===== */
.csps-treatments-grid h2{
  font-family:'Cormorant Garamond', Georgia, "Times New Roman", serif !important;
  font-weight:400 !important;          /* lighter, not bold */
  text-transform:none !important;       /* Title case */
  font-size:clamp(20px, 2.1vw, 30px) !important;
  line-height:1.2 !important;
  letter-spacing:0 !important;
  color:#0d1a2e !important;             /* ink */
  margin:0 0 10px !important;
}

/* “SURGICAL” / “NON-SURGICAL” → match the small eyebrow style */
.csps-treatments-grid h6{
  font-family:'Jost', system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-weight:600 !important;
  text-transform:uppercase !important;
  letter-spacing:.18em !important;
  font-size:clamp(11px, 1.1vw, 13px) !important;
  line-height:1.2 !important;
  color:#475266 !important;            /* same tone as “READY TO BOOK?” */
  margin:18px 0 10px !important;
}

/* Optional: keep the little arrow tight to the label */
.csps-treatments-grid h6 a,
.csps-treatments-grid h6 span{
  display:inline-flex; gap:.35em; align-items:center;
}

/* Keep list items clean under headings */
.csps-treatments-grid ul, 
.csps-treatments-grid li{
  margin:0; padding:0;
}
.csps-treatments-grid li{ margin:8px 0 !important; }

/* Mobile tune: a touch smaller on very narrow screens */
@media (max-width: 480px){
  .csps-treatments-grid h2{ font-size:22px !important; }
  .csps-treatments-grid h6{ font-size:11px !important; }
}
/* Location headings (Brentwood, Franklin, etc.) */
.csps-treatments-grid h2,
.csps-treatments-grid .elementor-heading-title {
  font-family: 'Jost', system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-weight: 500 !important;          /* try 600 if you want slightly lighter */
  text-transform: none !important;
  letter-spacing: .01em !important;
  line-height: 1.15 !important;
  font-size: clamp(22px, 2.2vw, 32px) !important;  /* ← adjust these numbers if needed */
  margin: 0 0 10px !important;
}

/* Keep the surgical/non-surgical eyebrow as Jost too (just in case) */
.csps-treatments-grid h6 {
  font-family: 'Jost', system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
}
/* Location names: Brentwood / Franklin / Mt. Juliet / Nashville */
.csps-treatments-grid .elementor-widget-text-editor h2,
.csps-treatments-grid .elementor-widget-heading .elementor-heading-title,
.csps-treatments-grid h2 {
  font-family: 'Jost', system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-weight: 600 !important;                /* try 700 if you want stronger */
  text-transform: none !important;
  letter-spacing: .01em !important;
  line-height: 1.15 !important;
  font-size: clamp(24px, 2.4vw, 34px) !important;
  margin: 0 0 10px !important;                /* small gap under the city name */
}

/* Eyebrow labels: SURGICAL / NON-SURGICAL */
.csps-treatments-grid .elementor-widget-text-editor h6,
.csps-treatments-grid h6 {
  font-family: 'Jost', system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-weight: 700 !important;
  font-size: clamp(12px, 1.1vw, 13px) !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: #5e7fa3 !important;                  /* matches the CTA eyebrow tone */
  margin: 14px 0 8px !important;
}

/* Tighten the vertical space under eyebrow and between list items a touch */
.csps-treatments-grid .elementor-widget-text-editor h6 + ul,
.csps-treatments-grid h6 + ul {
  margin-top: 6px !important;
}
.csps-treatments-grid ul li {
  margin-bottom: 8px !important;
}/* End custom CSS */
/* Start custom CSS *//* ===== CSPS Book/Consult — FINAL CLEAN PAGE CSS ===== */

/* Palette + body lock when drawer open */
:root{ --csps-blue:#799fc3; --csps-blue-hover:#6d92ba; --csps-ink:#1b2433; }
body.csps-drawer-open{ overflow:hidden !important; }

/* Keep shortcode parsed but offscreen (source form) */
#csps-surg-form-source{
  position:absolute !important; left:-9999px !important; top:auto !important;
  width:1px !important; height:1px !important; overflow:hidden !important;
  pointer-events:none !important; visibility:visible !important;
}

/* CTA visuals (unchanged) */
.csps-cta-min{max-width:1140px;margin:2rem auto;padding:clamp(22px,2.2vw,28px);background:#fff;border-radius:30px;border:1px solid rgba(13,26,46,.1);text-align:center;color:#1b2433}
.csps-cta-eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#2b2b2b;margin-bottom:.35rem}
.csps-cta-title{font-family:'Cormorant Garamond',Georgia,serif !important;font-weight:300 !important;font-size:clamp(26px,2.3vw,34px);line-height:1.2;color:#0d1a2e;margin:0 0 .5rem}
.csps-cta-copy{font:15px/1.55 'Jost',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;max-width:58ch;margin:0 auto 1.1rem;color:#2b2b2b}
.cta-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}
.csps-cta-min .btn,
.csps-loc .book,
.csps-proxy-submit,
.csps-close-btn{border-radius:9999px !important}
.csps-cta-min .btn{appearance:none;text-transform:uppercase;letter-spacing:.08em;font:500 14px/1 'Jost',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;padding:14px 42px;border:1px solid transparent;cursor:pointer;transition:.15s}
.csps-cta-min .btn-primary{background:var(--csps-blue);border-color:var(--csps-blue);color:#fff}
.csps-cta-min .btn-primary:hover{background:var(--csps-blue-hover);border-color:var(--csps-blue-hover);color:#fff !important}
.csps-cta-min .btn-secondary{background:transparent;border-color:#0e1d61;color:#0e1d61}
.csps-cta-min .btn-secondary:hover{background:#0e1d61;color:#fff !important}
@media (max-width:640px){.csps-cta-min .btn{width:100%}}

/* Drawers shell */
.csps-drawer,.csps-consult-drawer{
  position:fixed; top:0; right:-420px; width:min(400px,100vw); bottom:0;
  background:#fff; border-left:1px solid rgba(13,26,46,.12);
  box-shadow:-24px 0 60px rgba(0,0,0,.22); z-index:99999;
  transition:right .28s ease; display:flex; flex-direction:column;
  overflow:auto; -webkit-overflow-scrolling:touch;
}
.csps-drawer.open,.csps-consult-drawer.open{ right:0; }
.csps-drawer-body,.csps-consult-body{ padding:14px 18px 18px; }

/* Drawer header + close button */
.csps-consult-head{position:sticky;top:0;background:#fff;z-index:3;padding:16px 18px 12px;border-bottom:1px solid rgba(13,26,46,.08);display:flex;justify-content:space-between;align-items:center;gap:12px}
.csps-head-title{font:500 22px/1.2 'Cormorant Garamond',Georgia,serif !important;color:#0d1a2e}
.csps-head-sub{font:14px/1.4 'Jost',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;color:#475266;max-width:260px}
.csps-close-btn{display:inline-flex !important;align-items:center !important;justify-content:center !important;width:36px !important;height:36px !important;padding:0 !important;background:var(--csps-blue) !important;border:1px solid var(--csps-blue) !important;color:#fff !important;font:600 18px/1 'Jost',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important}

/* Book drawer cards */
.csps-loc{border:1px solid rgba(13,26,46,.1);border-radius:12px;padding:16px;margin-bottom:14px;background:#fff;box-shadow:0 20px 40px rgba(0,0,0,.03)}
.csps-loc h4{margin:0 0 .5rem;font:500 20px/1.2 'Cormorant Garamond',Georgia,serif !important;color:#0d1a2e}
.csps-loc .addr{font:15px/1.4 'Jost',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;color:#2b2b2b;margin:0 0 .65rem}
.csps-tag{display:inline-block;margin:0 6px 6px 0;font:12px/1 'Jost',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;padding:6px 10px;border-radius:9999px;border:1px solid rgba(13,26,46,.12);background:#f7f9fc;color:#344055}
.csps-loc .book{display:inline-block;width:100%;text-align:center;padding:12px 16px;background:var(--csps-blue);color:#fff;text-transform:uppercase;font:600 15px/1.2 'Jost',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;letter-spacing:.05em;text-decoration:none;border:1px solid var(--csps-blue);transition:.15s}
.csps-loc .book:hover{background:var(--csps-blue-hover);border-color:var(--csps-blue-hover);color:#fff !important}

/* Consult form shell */
.csps-form-shell{border:1px solid rgba(13,26,46,.1);border-radius:12px;background:#fff;padding:16px;box-shadow:0 20px 40px rgba(0,0,0,.03);position:relative;padding-bottom:110px !important}
.csps-footer-actions{position:sticky;bottom:0;background:#fff;padding:8px 0;border-top:1px solid rgba(13,26,46,.08);text-align:center;margin-top:10px;z-index:6}
.csps-proxy-submit{appearance:none;background:var(--csps-blue);border:1px solid var(--csps-blue);color:#fff;padding:14px 22px;min-width:220px;text-transform:uppercase;letter-spacing:.08em;font:600 14px/1 'Jost',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;cursor:pointer;transition:.15s}
.csps-proxy-submit:hover{background:var(--csps-blue-hover);border-color:var(--csps-blue-hover);color:#fff}

/* Gravity Forms in CONSULT drawer — typography + compact spacing */
#cspsConsultDrawer .gform_wrapper *{font-family:'Jost',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;color:var(--csps-ink) !important}
#cspsConsultDrawer .gform_heading,
#cspsConsultDrawer .gform_required_legend,
#cspsConsultDrawer .gfield_description:not(.validation_message){display:none !important}

#cspsConsultDrawer .gform_wrapper .gform_fields{gap:10px !important;row-gap:10px !important}
#cspsConsultDrawer .gform_wrapper .gfield{margin:0 0 8px 0 !important}
#cspsConsultDrawer .gform_wrapper form{margin:0 !important}

#cspsConsultDrawer .gform_wrapper input[type="text"],
#cspsConsultDrawer .gform_wrapper input[type="email"],
#cspsConsultDrawer .gform_wrapper input[type="tel"],
#cspsConsultDrawer .gform_wrapper select,
#cspsConsultDrawer .gform_wrapper textarea{
  background:#fff !important;border:1px solid rgba(13,26,46,.18) !important;border-radius:10px !important;
  padding:10px 12px !important;font-size:16px !important;line-height:1.35 !important;box-shadow:0 12px 24px rgba(0,0,0,.02) !important
}
#cspsConsultDrawer .gform_wrapper textarea{min-height:120px !important;height:140px !important;resize:vertical !important}

/* Hide native GF submit (we use the proxy) */
#cspsConsultDrawer .gform_wrapper input[type="submit"],
#cspsConsultDrawer .gform_wrapper button[type="submit"],
#cspsConsultDrawer .gform_wrapper .gform_button{display:none !important;visibility:hidden !important}

/* ===== Single-select enforcement (Enhanced UI stays ON elsewhere) ===== */
#cspsConsultDrawer .gform-theme__select,
#cspsConsultDrawer .gform-theme__select-wrapper,
#cspsConsultDrawer .chosen-container,
#cspsConsultDrawer .select2-container{display:none !important;visibility:hidden !important;pointer-events:none !important}

/* If multiple <select>s appear, show only one (order-agnostic) */
#cspsConsultDrawer .gfield .ginput_container_select select{display:none !important}
#cspsConsultDrawer .gfield .ginput_container_select select:last-of-type,
#cspsConsultDrawer .gfield .ginput_container_select select:first-of-type{
  display:block !important; position:relative !important; z-index:3 !important; pointer-events:auto !important; visibility:visible !important; width:100% !important;
}
/* === Drawer selects: show only ONE (the last/native) === */
#cspsConsultDrawer .gform-theme__select,
#cspsConsultDrawer .gform-theme__select-wrapper,
#cspsConsultDrawer .chosen-container,
#cspsConsultDrawer .select2-container {
  display:none !important; visibility:hidden !important; pointer-events:none !important;
}

/* Hide every <select> first... */
#cspsConsultDrawer .gfield .ginput_container_select select {
  display:none !important;
}

/* ...then show ONLY the last one (native) */
#cspsConsultDrawer .gfield .ginput_container_select select:not(:last-of-type) {
  display:none !important;
}
#cspsConsultDrawer .gfield .ginput_container_select select:last-of-type {
  display:block !important;
  position:relative !important;
  z-index:3 !important;
  pointer-events:auto !important;
  visibility:visible !important;
  width:100% !important;
}
/* === FINAL drawer-only de-dupe (exhaustive) === */

/* Hide any enhanced/select UI that isn't the native <select> */
#cspsConsultDrawer .ginput_container_select .gform-theme__select,
#cspsConsultDrawer .ginput_container_select .gform-theme__select-wrapper,
#cspsConsultDrawer .ginput_container_select .gform-theme__select-container,
#cspsConsultDrawer .ginput_container_select .gform-select,
#cspsConsultDrawer .ginput_container_select .gform-select__container,
#cspsConsultDrawer .ginput_container_select [role="combobox"],
#cspsConsultDrawer .ginput_container_select [aria-haspopup="listbox"],
#cspsConsultDrawer .ginput_container_select .chosen-container,
#cspsConsultDrawer .ginput_container_select .select2-container {
  display:none !important; visibility:hidden !important; pointer-events:none !important;
}

/* Hide all <select>s first… */
#cspsConsultDrawer .gfield .ginput_container_select select {
  display:none !important;
}

/* …then show ONLY the last (native) <select> */
#cspsConsultDrawer .gfield .ginput_container_select select:last-of-type {
  display:block !important;
  position:relative !important;
  z-index:3 !important;
  pointer-events:auto !important;
  visibility:visible !important;
  width:100% !important;
}

/* Small mobile nudge so the first field doesn't collide with the header */
@media (max-width: 480px){
  #cspsConsultDrawer .csps-consult-body{ padding-top:10px !important; }
  #cspsConsultDrawer .gform_wrapper .gfield:first-of-type{ margin-top:6px !important; }
}/* End custom CSS */