.elementor-8548 .elementor-element.elementor-element-5ce12dc{--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-8548 .elementor-element.elementor-element-079893e{--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-8548 .elementor-element.elementor-element-18073f0{--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-8548 .elementor-element.elementor-element-c7ff456{--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-widget-text-editor{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 );}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-13077f8 *//* ============================================================
   AZURE DENTAL — UPDATED CSS (WITH SLIDER, NO GRAPH)
   FULL REPLACEMENT FOR PREVIOUS FILE
============================================================ */

:root {
  --azure-primary:#BF57C0;
  --azure-primary-700:#9d46a0;
  --azure-secondary:#383151;
  --azure-bg-1:#fdfbff;
  --azure-bg-2:#f6f1fa;
  --azure-white:#ffffff;
  --border-soft:#e9ddec;
  --text-main:#383151;
  --text-sub:#6a667a;
  --radius:14px;
  --shadow-soft:0 10px 30px rgba(56,49,81,.08);
  --shadow-hover:0 12px 38px rgba(56,49,81,.12);
}

/* ============================================================
   WRAPPER (2 Column layout)
============================================================ */

.azure-split-wrapper {
  display:flex;
  gap:40px;
  align-items:flex-start;
  justify-content:space-between;
  margin:40px auto;
  padding:20px;
  max-width:1200px;
}

.azure-left-panel,
.azure-right-panel {
  flex:1;
  background:var(--azure-white);
  padding:28px;
  border-radius:var(--radius);
  box-shadow:var(--shadow-soft);
  border:1px solid rgba(56,49,81,.06);
  animation:fadeUp .5s ease both;
}

/* Left panel slightly larger */
.azure-left-panel {
  flex:1.05;
}

/* ============================================================
   TITLES
============================================================ */

.estimator-title {
  font-size:2rem;
  font-weight:700;
  margin-bottom:.4rem;
  background:linear-gradient(90deg,var(--azure-secondary),var(--azure-primary));
  -webkit-background-clip:text;
  color:transparent;
}

.estimator-sub {
  font-size:1rem;
  color:var(--text-sub);
  margin-bottom:1.8rem;
}

/* ============================================================
   FORM FIELDS
============================================================ */

fieldset {
  border:none;
  margin-bottom:1.6rem;
}

legend {
  font-weight:700;
  color:var(--azure-secondary);
  margin-bottom:.75rem;
  font-size:1.05rem;
  position:relative;
}

legend::after {
  content:"";
  position:absolute;
  left:0;
  bottom:-2px;
  width:80px;
  height:3px;
  border-radius:6px;
  background:linear-gradient(90deg,var(--azure-secondary),var(--azure-primary));
}

label {
  display:block;
  padding:.55rem .7rem;
  border-radius:8px;
  cursor:pointer;
  transition:background .2s ease, transform .1s ease;
  color:var(--text-main);
}

label:hover {
  background:linear-gradient(90deg,#f9f5fb,#f3e9f7);
}

input[type="radio"],
input[type="checkbox"] {
  accent-color:var(--azure-primary);
  margin-right:6px;
}

/* ============================================================
   LIVE RESULT PANEL
============================================================ */

.estimate-output {
  background:linear-gradient(180deg,#ffffff,#fbf7fd);
  border:1px solid var(--border-soft);
  padding:1.2rem 1.1rem;
  border-radius:var(--radius);
  margin-bottom:1.8rem;
  font-size:1.15rem;
  line-height:1.45;
  color:var(--azure-secondary);
  animation:fadeIn .5s ease;
  min-height:40px;
}

/* ============================================================
   EMAIL SECTION
============================================================ */

.email-section {
  background:linear-gradient(180deg,#ffffff,#f8f2fb);
  border:1px solid var(--border-soft);
  padding:1.2rem 1.1rem;
  border-radius:var(--radius);
  margin-bottom:1.2rem;
}

.email-section input[type="email"] {
  width:100%;
  padding:.85rem .9rem;
  border:1px solid #d5c8da;
  border-radius:10px;
  margin-top:.4rem;
  font-size:1rem;
}

.email-section input[type="email"]:focus {
  outline:3px solid var(--azure-primary);
  border-color:transparent;
}

/* ============================================================
   SEND ESTIMATE BUTTON
============================================================ */

.final-send-btn {
  width:100%;
  padding:1rem 1.1rem;
  background:linear-gradient(90deg,var(--azure-secondary),var(--azure-primary));
  border:none;
  border-radius:var(--radius);
  color:white;
  font-weight:700;
  letter-spacing:-.3px;
  font-size:1.05rem;
  cursor:pointer;
  box-shadow:0 6px 18px rgba(191,87,192,.28);
  transition:filter .15s ease, transform .06s ease;
}

.final-send-btn:hover {
  filter:brightness(1.05);
}

.final-send-btn:active {
  transform:translateY(1px);
}

/* Confirmation bubble */
.send-confirmation {
  margin-top:1rem;
  padding:1rem;
  border-radius:var(--radius);
  background:linear-gradient(90deg,var(--azure-secondary),var(--azure-primary));
  color:white;
  display:flex;
  align-items:center;
  gap:.6rem;
  animation:fadeScale .45s ease-out;
}

.send-confirmation svg {
  width:22px;
  height:22px;
}

/* ============================================================
   RIGHT PANEL — FINANCE SUITE
============================================================ */

.finance-panel-title {
  font-size:1.4rem;
  font-weight:700;
  margin-bottom:1rem;
  color:var(--azure-secondary);
}

.apply-estimate-btn {
  width:100%;
  padding:.8rem 1rem;
  background:linear-gradient(90deg,var(--azure-primary),var(--azure-primary-700));
  border:none;
  border-radius:12px;
  color:white;
  font-weight:600;
  cursor:pointer;
  margin-bottom:1.4rem;
  transition:filter .15s ease;
}

.apply-estimate-btn:hover {
  filter:brightness(1.08);
}

/* MINI CALCULATOR */
.finance-mini-calculator {
  padding:1.4rem;
  background:linear-gradient(180deg,#ffffff,#fbf7fd);
  border:1px solid var(--border-soft);
  border-radius:var(--radius);
  margin-bottom:2.2rem;
}

.finance-label {
  font-weight:600;
  color:var(--azure-secondary);
  display:block;
  margin-bottom:.35rem;
  margin-top:1rem;
}

.finance-input {
  width:100%;
  padding:.7rem .9rem;
  border-radius:10px;
  border:1px solid #d7c9de;
}

/* ============================================================
   DEPOSIT SLIDER (AZURE BRANDED)
============================================================ */

.deposit-slider-block {
  margin-top:1.4rem;
  margin-bottom:1.2rem;
}

.deposit-display {
  margin-bottom:.4rem;
  background:var(--azure-white);
  padding:.5rem .8rem;
  border-radius:10px;
  border:1px solid var(--border-soft);
  text-align:center;
  font-weight:700;
  color:var(--azure-secondary);
}

.deposit-slider {
  -webkit-appearance:none;
  width:100%;
  height:12px;
  border-radius:10px;
  background:linear-gradient(90deg,var(--azure-secondary),var(--azure-primary));
  outline:none;
  cursor:pointer;
  margin-top:.3rem;
  margin-bottom:.1rem;
  transition:filter .2s ease;
}

.deposit-slider:hover {
  filter:brightness(1.1);
}

/* Slider thumb */
.deposit-slider::-webkit-slider-thumb {
  -webkit-appearance:none;
  appearance:none;
  width:24px;
  height:24px;
  background:white;
  border-radius:50%;
  border:3px solid var(--azure-primary);
  box-shadow:0 4px 10px rgba(56,49,81,.18);
  cursor:pointer;
  transition:transform .15s ease;
}

.deposit-slider::-webkit-slider-thumb:hover {
  transform:scale(1.15);
}

.deposit-slider::-moz-range-thumb {
  width:24px;
  height:24px;
  background:white;
  border-radius:50%;
  border:3px solid var(--azure-primary);
  box-shadow:0 4px 10px rgba(56,49,81,.18);
  cursor:pointer;
}

/* ============================================================
   FINANCE RESULTS
============================================================ */

.finance-results {
  margin-top:1.2rem;
}

.finance-row {
  display:flex;
  justify-content:space-between;
  margin-bottom:.5rem;
  font-size:1rem;
  animation:fadeIn .5s ease;
}

.finance-disclaimer {
  font-size:.85rem;
  color:var(--text-sub);
  margin-top:1rem;
}

/* ============================================================
   FINANCE TABLE (desktop)
============================================================ */

.finance-compare-table {
  width:100%;
  border-collapse:collapse;
  margin-bottom:1.8rem;
  border-radius:var(--radius);
  overflow:hidden;
}

.finance-compare-table th {
  background:var(--azure-secondary);
  color:white;
  padding:.8rem;
  font-weight:600;
}

.finance-compare-table td {
  padding:.75rem;
  border-bottom:1px solid var(--border-soft);
  animation:fadeIn .4s ease;
}

/* ============================================================
   MOBILE CARDS
============================================================ */

.finance-cards-container {
  display:none;
}

.finance-card {
  background:var(--azure-white);
  border:1px solid var(--border-soft);
  border-radius:var(--radius);
  padding:1rem;
  margin-bottom:1rem;
  box-shadow:var(--shadow-soft);
  animation:slideUp .5s ease;
}

.finance-card-title {
  font-weight:700;
  color:var(--azure-secondary);
  margin-bottom:.6rem;
}

.finance-card-row {
  display:flex;
  justify-content:space-between;
  padding:.3rem 0;
}

/* ============================================================
   MODAL
============================================================ */

.finance-modal-overlay {
  position:fixed;
  top:0; left:0;
  width:100%; height:100%;
  background:rgba(0,0,0,.55);
  backdrop-filter:blur(4px);
  display:flex;
  align-items:center;
  justify-content:center;
  animation:fadeIn .3s ease both;
  z-index:9999;
}

.finance-modal {
  background:white;
  padding:2rem;
  border-radius:var(--radius);
  max-width:600px;
  width:90%;
  animation:modalIn .4s ease;
  position:relative;
}

.finance-modal-close {
  position:absolute;
  top:14px; right:14px;
  background:none;
  border:none;
  font-size:2rem;
  color:var(--azure-secondary);
  cursor:pointer;
}

/* ============================================================
   RESPONSIVE
============================================================ */

@media(max-width:900px){
  .azure-split-wrapper {
    flex-direction:column;
  }
  .finance-compare-table {
    display:none;
  }
  .finance-cards-container {
    display:block;
  }
}

/* ============================================================
   ANIMATIONS
============================================================ */

@keyframes fadeIn {
  from { opacity:0; }
  to   { opacity:1; }
}

@keyframes fadeScale {
  from { opacity:0; transform:scale(.92); }
  to   { opacity:1; transform:scale(1); }
}

@keyframes slideUp {
  from { opacity:0; transform:translateY(18px); }
  to   { opacity:1; transform:translateY(0); }
}

@keyframes fadeUp {
  from { opacity:0; transform:translateY(10px); }
  to   { opacity:1; transform:translateY(0); }
}

@keyframes modalIn {
  from { opacity:0; transform:scale(.9); }
  to   { opacity:1; transform:scale(1); }
}

/* ============================================================
   NAME + PHONE FIELD STYLING (FOR EMAIL SECTION)
============================================================ */

.email-section label {
  display:block;
  font-weight:600;
  color:var(--azure-secondary);
  margin-bottom:.35rem;
}

.email-section input[type="text"],
.email-section input[type="email"],
.email-section input[type="tel"] {
  width:100%;
  padding:.85rem .9rem;
  border-radius:10px;
  border:1px solid #d5c8da;
  font-size:1rem;
  margin-bottom:.8rem;
  background:white;
  transition:border .15s ease, box-shadow .15s ease;
}

.email-section input[type="text"]:focus,
.email-section input[type="email"]:focus,
.email-section input[type="tel"]:focus {
  outline:3px solid var(--azure-primary);
  outline-offset:1px;
  border-color:transparent;
  box-shadow:0 0 0 2px rgba(191,87,192,0.25);
}

/* Required field indicator */
.email-section input:required:invalid {
  border-color:#ffacac;
}

/* Helper text under fields */
.helper {
  font-size:.85rem;
  color:var(--text-sub);
  margin-top:.3rem;
}

/* Keep consistent spacing inside the email block */
.email-section {
  margin-top:2rem;
  margin-bottom:1.6rem;
}

/* Confirmation message bubble */
.send-confirmation {
  margin-top:1rem;
  padding:1rem;
  border-radius:var(--radius);
  background:linear-gradient(90deg,var(--azure-secondary),var(--azure-primary));
  color:white;
  display:flex;
  align-items:center;
  gap:.6rem;
  animation:fadeScale .45s ease-out;
  font-size:1rem;
}

/* Mobile spacing adjustments */
@media(max-width:600px){
  .email-section input {
    font-size:1rem;
  }
}/* End custom CSS */