.elementor-1262 .elementor-element.elementor-element-67ed1f3{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );border-style:solid;--border-style:solid;border-width:1px 0px 0px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:#E8E8E8;--border-color:#E8E8E8;--padding-top:3em;--padding-bottom:3em;--padding-left:3em;--padding-right:3em;}.elementor-1262 .elementor-element.elementor-element-87fbd80{--display:flex;}.elementor-1262 .elementor-element.elementor-element-2047ce2{text-align:center;}.elementor-1262 .elementor-element.elementor-element-2047ce2 .elementor-heading-title{font-family:"Playfair Display", Sans-serif;}@media(max-width:1024px){.elementor-1262 .elementor-element.elementor-element-67ed1f3{--padding-top:03em;--padding-bottom:03em;--padding-left:0em;--padding-right:0em;}}/* Start custom CSS for html, class: .elementor-element-92e4f0d *//* LUMINA v3.1 CSS - Part 1: Layout & Sidebar */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400;500;600&family=DM+Sans:wght@300;400;500&display=swap');

.lum-outer {
  display: flex;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 24px 80px rgba(43,34,25,.18);
  animation: lumIn .7s cubic-bezier(.22,1,.36,1) both;
}
@keyframes lumIn {
  from { opacity:0; transform:translateY(20px); }
  to   { opacity:1; transform:translateY(0); }
}

.lum-sidebar {
  width: 280px;
  min-width: 280px;
  background: #AF8C6A;
  padding: 40px 28px;
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}
.lum-sidebar::before {
  content:'';
  position:absolute; inset:0;
  background:
    radial-gradient(ellipse at 20% 10%, rgba(255,255,255,.12) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 90%, rgba(43,34,25,.2) 0%, transparent 60%);
  pointer-events:none;
}
.lum-sidebar::after {
  content:'';
  position:absolute;
  width:240px; height:240px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.12);
  bottom:-70px; right:-70px;
  pointer-events:none;
}
.lum-sb-brand {
  font-family:'Cormorant Garamond',serif;
  font-size:10px; letter-spacing:.2em;
  text-transform:uppercase;
  color:rgba(255,255,255,.6);
  margin-bottom:14px;
  position:relative; z-index:1;
}
.lum-sb-title {
  font-family:'Cormorant Garamond',serif;
  font-size:26px; font-weight:600;
  color:#fff; line-height:1.2;
  margin-bottom:32px;
  position:relative; z-index:1;
}

.lum-steps {
  display:flex; flex-direction:column;
  gap:0; margin-bottom:32px;
  position:relative; z-index:1;
}
.lum-step {
  display:flex; align-items:flex-start;
  gap:12px; padding:8px 0;
  position:relative;
}
.lum-step:not(:last-child)::after {
  content:'';
  position:absolute; left:11px; top:34px;
  width:1px; height:calc(100% - 16px);
  background:rgba(255,255,255,.22);
}
.lum-dot {
  width:24px; height:24px; min-width:24px;
  border-radius:50%;
  border:1.5px solid rgba(255,255,255,.35);
  display:flex; align-items:center; justify-content:center;
  font-size:10px; font-weight:500;
  color:rgba(255,255,255,.55);
  transition: all .4s cubic-bezier(.34,1.56,.64,1);
  background:transparent;
  position:relative; z-index:1;
}
.lum-step.is-active .lum-dot {
  background:#fff; border-color:#fff;
  color:#AF8C6A;
  transform:scale(1.12);
  box-shadow:0 0 0 4px rgba(255,255,255,.2);
}
.lum-step.is-done .lum-dot {
  background:rgba(255,255,255,.28);
  border-color:rgba(255,255,255,.55);
  color:#fff;
}
.lum-step.is-done .lum-dot::before { content:'✓'; font-size:11px; }
.lum-step.is-done .lum-dot span { display:none; }
.lum-step-label {
  font-size:10px; letter-spacing:.1em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
  font-weight:500;
  margin-bottom:2px; margin-top:3px;
}
.lum-step.is-active .lum-step-label { color:rgba(255,255,255,.75); }
.lum-step-val {
  font-size:13px; color:rgba(255,255,255,.35);
  font-weight:300; transition:all .4s;
  line-height:1.3;
}
.lum-step.is-active .lum-step-val,
.lum-step.is-done .lum-step-val {
  color:rgba(255,255,255,.9); font-weight:400;
}

.lum-summary {
  margin-top:auto;
  background:rgba(43,34,25,.25);
  border-radius:12px; padding:18px;
  border:1px solid rgba(255,255,255,.1);
  opacity:0; transform:translateY(8px);
  transition:all .5s cubic-bezier(.22,1,.36,1);
  position:relative; z-index:1;
}
.lum-summary.show { opacity:1; transform:translateY(0); }
.lum-sum-label {
  font-size:9px; letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48); margin-bottom:10px;
}
.lum-sum-row {
  display:flex; justify-content:space-between;
  padding:5px 0; font-size:12px;
  color:rgba(255,255,255,.75);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.lum-sum-row span:last-child { font-weight:500; color:#fff; }
.lum-sum-total {
  display:flex; justify-content:space-between;
  margin-top:12px; padding-top:10px;
  border-top:1px solid rgba(255,255,255,.18);
  font-size:15px; font-weight:500; color:#fff;
  font-family:'Cormorant Garamond',serif;
}

/* LUMINA v3.1 CSS - Part 2: Form Area & MotoPress Overrides */

.lum-form {
  flex:1;
  background:#fff;
  padding:36px 32px;
  display:flex; flex-direction:column;
  min-height:520px;
  overflow:hidden;
}

.lum-progress-track {
  height:3px; background:#f0e8e0;
  border-radius:2px; margin-bottom:28px; overflow:hidden;
}
.lum-progress-fill {
  height:100%;
  background:linear-gradient(90deg,#AF8C6A,#c9a882);
  border-radius:2px; width:4%;
  transition:width .6s cubic-bezier(.22,1,.36,1);
}

.lum-heading { margin-bottom:24px; }
.lum-eyebrow {
  font-size:10px; letter-spacing:.15em;
  text-transform:uppercase;
  color:#AF8C6A; font-weight:500; margin-bottom:5px;
}
.lum-title {
  font-family:'Cormorant Garamond',serif;
  font-size:26px; font-weight:600;
  color:#2b2219; line-height:1.2;
  transition:opacity .3s;
}

/* MotoPress overrides - Hide default UI */
.lum-form .mpa-booking,
.lum-form .mpa-booking-form,
.lum-form .mpa-appointment-booking {
  background:transparent !important;
  box-shadow:none !important;
  border:none !important;
  padding:0 !important;
  margin:0 !important;
  font-family:'DM Sans',sans-serif !important;
}

.lum-form .mpa-steps-nav,
.lum-form .mpa-booking-progress,
.lum-form .mpa-step-indicator,
.lum-form .mpa-steps-counter {
  display:none !important;
}

/* Form inputs */
.lum-form label,
.lum-form .mpa-label,
.lum-form .mpa-field-label {
  display:block !important;
  font-family:'DM Sans',sans-serif !important;
  font-size:10px !important;
  letter-spacing:.1em !important;
  text-transform:uppercase !important;
  color:#8a7060 !important;
  font-weight:500 !important;
  margin-bottom:7px !important;
}

.lum-form input[type="text"],
.lum-form input[type="email"],

.lum-form select,
.lum-form textarea {
  width:100% !important;
  padding:11px 14px !important;
  border:1.5px solid #e8e0d8 !important;
  border-radius:8px !important;
  font-family:'DM Sans',sans-serif !important;
  font-size:14px !important;
  color:#2b2219 !important;
  background:#fdfaf7 !important;
  outline:none !important;
  box-shadow:none !important;
  transition:border-color .3s, box-shadow .3s;
  appearance:none;
}
.lum-form input:focus,
.lum-form select:focus,
.lum-form textarea:focus {
  border-color:#AF8C6A !important;
  box-shadow:0 0 0 3px rgba(175,140,106,.15) !important;
  background:#fff !important;
}

/* Responsive */
@media (max-width:780px) {
  .lum-outer { flex-direction:column; }
  .lum-sidebar { width:100%; min-width:unset; padding:26px 22px; }
  .lum-form { padding:24px 18px; }
}/* End custom CSS */