.mvw-wrapper{max-width:800px;margin:30px auto;padding:26px;background:linear-gradient(135deg,#fff9fd,#f4eaff);border:1px solid #f0d8ed;border-radius:22px;box-shadow:0 16px 40px rgba(52,22,80,.12);color:#38234b;font-family:Arial,sans-serif}
.mvw-wrapper h2{text-align:center;font:700 clamp(24px,3vw,34px)/1.2 Georgia,serif;color:#642b91;margin:0 0 24px}
.mvw-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.mvw-grid label{font-size:14px;font-weight:650;display:flex;flex-direction:column;gap:6px}
.mvw-grid .mvw-full{grid-column:1/-1}
.mvw-grid input,.mvw-grid textarea,.mvw-grid select{max-width:100%;box-sizing:border-box;font:inherit;padding:12px;background:white;border-radius:11px;border:1px solid #ccafd7;color:#2b1e3c}
.mvw-grid input:focus-visible,.mvw-grid select:focus-visible,.mvw-grid textarea:focus-visible{outline:3px solid #c18be3}
.mvw-consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.6;margin-top:18px}
.mvw-consent a{color:#6e2ea8;text-decoration:underline}
.mvw-note{background:#fff;border-radius:11px;border-left:4px solid #a72c9b;padding:11px 14px;font-size:14px;line-height:1.55}
.mvw-wrapper button[type=submit]{display:block;border:0;background:#8526a8;border-radius:999px;color:white;font-weight:bold;font-size:16px;padding:14px 28px;margin:20px auto 8px;cursor:pointer}
.mvw-wrapper button[disabled]{cursor:not-allowed;opacity:.65}
.mvw-honeypot{position:absolute!important;left:-10000px!important;opacity:0!important;height:1px!important;width:1px!important}
#mvw-result{min-height:1.5rem;font-size:15px;line-height:1.6;font-weight:600}
#mvw-result.success{color:#256a4e}
#mvw-result a{color:#6129a3;font-weight:bold}
@media (max-width:640px){.mvw-wrapper{padding:18px 13px;margin:18px 10px}.mvw-grid{grid-template-columns:1fr}.mvw-grid .mvw-full{grid-column:1}}
.mvw-cards{margin:26px auto;max-width:1200px;color:#3a2555}
.mvw-cards h2{text-align:center;font-family:Georgia,serif;font-size:clamp(24px,3vw,34px);color:#6e2e91}
.mvw-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}
.mvw-card{display:flex;flex-direction:column;gap:10px;min-width:0;border-radius:18px;background:linear-gradient(135deg,#fffafa,#f4ebff);border:1px solid #efd8ed;box-shadow:0 8px 24px rgba(58,27,88,.07);padding:16px}
.mvw-card h3{margin:0;font-family:Georgia,serif;color:#522477;font-size:23px}
.mvw-card-image img{display:block;width:100%;height:auto;max-height:260px;object-fit:cover;border-radius:13px}
.mvw-card-duration{color:#766582;font-size:14px}
.mvw-card-price{color:#9b247a;font-size:24px;font-weight:800;margin:0}
.mvw-card ul{margin:3px 0 12px;padding-left:20px;flex-grow:1;line-height:1.6}
.mvw-card-action{display:block;border-radius:999px;background:#8526a8;color:white!important;text-decoration:none;text-align:center;padding:12px;font-weight:700;margin-top:auto}

/* Original business photos (byte-for-byte) used as service-aware backgrounds. */
.mvw-wrapper{overflow:hidden;padding:0 26px 26px;background:linear-gradient(140deg,#fffafb,#f3eafb)}
.mvw-hero{position:relative;isolation:isolate;display:flex;align-items:end;min-height:195px;margin:0 -26px 23px;padding:25px 28px;box-sizing:border-box;background-image:linear-gradient(90deg,rgba(30,13,43,.87),rgba(40,15,55,.58) 58%,rgba(30,13,43,.2)),var(--mvw-scene);background-size:cover;background-position:center;overflow:hidden}
.mvw-hero-content{position:relative;z-index:1;max-width:520px;color:#fff}
.mvw-hero .mvw-kicker{font:700 11px/1.6 Arial,sans-serif;letter-spacing:.18em;color:#fff5e8}
.mvw-hero h2{color:#fff;margin:5px 0 7px;font:700 clamp(23px,3vw,34px)/1.2 Georgia,serif;text-align:left;text-shadow:0 2px 12px #251127}
.mvw-hero p{margin:0;color:#fff;font:500 14px/1.55 Arial,sans-serif;text-shadow:0 2px 9px #251127}
.mvw-wrapper .mvw-grid,.mvw-wrapper .mvw-consent,.mvw-wrapper .mvw-note,.mvw-wrapper #mvw-result{position:relative}
.mvw-grid label{line-height:1.4}
.mvw-grid input,.mvw-grid textarea,.mvw-grid select{min-width:0;width:100%}
.mvw-wrapper #mvw-result:not(:empty){border-radius:11px;padding:12px 14px;background:#fff6f6;color:#703c4c}
.mvw-wrapper #mvw-result.success{background:#eefbf3;color:#256a4e}
@media(max-width:640px){.mvw-wrapper{padding:0 13px 19px}.mvw-hero{margin:0 -13px 18px;min-height:168px;padding:22px 19px;background-position:center}.mvw-hero-content{max-width:95%}}

/* RC9: form presentation only. Do not change landing-page headings or global p styles.
   The original scene remains an image; contain preserves all edges for every ratio.
   Height is bounded to avoid a portrait becoming a 1000px header; empty side space is intentional.
   The caption is outside the image, never over faces. */
.mvw-wrapper{box-sizing:border-box;min-width:0;max-width:800px;width:100%}
.mvw-wrapper .mvw-hero{
  display:block!important;min-height:0!important;height:auto!important;
  padding:0!important;background:#f7f0f8!important;
  background-image:none!important;overflow:visible!important
}
.mvw-wrapper .mvw-hero-media{
  display:block!important;position:relative!important;width:100%!important;
  padding:0!important;margin:0!important;min-height:0!important;
  background:#f7f0f8!important;overflow:visible!important
}
.mvw-wrapper .mvw-hero-photo{
  display:block!important;position:static!important;width:100%!important;
  max-width:100%!important;height:auto!important;max-height:360px!important;
  min-height:0!important;aspect-ratio:auto!important;object-fit:contain!important;
  object-position:center!important;transform:none!important;clip-path:none!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important
}
.mvw-wrapper .mvw-hero-content{
  display:block!important;position:relative!important;box-sizing:border-box!important;
  max-width:none!important;width:100%!important;padding:20px 24px!important;
  background:#482556!important;color:#fff!important;opacity:1!important
}
.mvw-wrapper .mvw-hero .mvw-kicker{color:#fff5e8!important;text-shadow:none!important}
.mvw-wrapper .mvw-hero h2{
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  font:700 clamp(23px,3vw,30px)/1.25 Georgia,serif!important;
  margin:5px 0 8px!important;text-align:left!important;text-shadow:none!important
}
.mvw-wrapper .mvw-hero p{
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  font:400 15px/1.6 Arial,sans-serif!important;
  margin:0!important;text-shadow:none!important;opacity:1!important
}
.mvw-wrapper #mvw-form{color:#38234b!important;min-width:0;max-width:100%}
.mvw-wrapper #mvw-form .mvw-grid label,
.mvw-wrapper #mvw-form .mvw-consent{
  color:#38234b!important;-webkit-text-fill-color:#38234b!important;text-shadow:none!important
}
.mvw-wrapper #mvw-form .mvw-note,
.mvw-wrapper #mvw-form .mvw-note *{
  color:#38234b!important;-webkit-text-fill-color:#38234b!important;
  text-shadow:none!important;opacity:1!important;visibility:visible!important
}
.mvw-wrapper #mvw-form .mvw-note{
  background:#fff!important;font:400 15px/1.6 Arial,sans-serif!important;
  white-space:normal!important;overflow-wrap:anywhere;margin:14px 0!important
}
.mvw-wrapper #mvw-form .mvw-consent{flex-wrap:nowrap}
.mvw-wrapper #mvw-form .mvw-consent-copy{flex:1 1 auto;min-width:0}
.mvw-wrapper #mvw-form .mvw-consent input{flex:0 0 auto;width:auto;min-width:18px}
.mvw-wrapper #mvw-form .mvw-consent a{
  color:#6e2ea8!important;-webkit-text-fill-color:#6e2ea8!important;overflow-wrap:anywhere
}
.mvw-wrapper #mvw-form #mvw-result{white-space:normal;overflow-wrap:anywhere}
.mvw-wrapper #mvw-form #mvw-result:not(:empty){
  color:#703c4c!important;-webkit-text-fill-color:#703c4c!important;
  background:#fff6f6!important;text-shadow:none!important;opacity:1!important
}
.mvw-wrapper #mvw-form #mvw-result.success,
.mvw-wrapper #mvw-form #mvw-result.success p{
  color:#256a4e!important;-webkit-text-fill-color:#256a4e!important;
  background:#eefbf3!important;text-shadow:none!important;opacity:1!important
}
.mvw-wrapper #mvw-form #mvw-result a{
  color:#6129a3!important;-webkit-text-fill-color:#6129a3!important
}
.mvw-wrapper #mvw-form button[type=submit]{
  color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:none!important;
  background:#8526a8!important;white-space:normal;max-width:100%
}
@media(max-width:640px){
  .mvw-wrapper{width:calc(100% - 20px)}
  .mvw-wrapper .mvw-hero-photo{max-height:300px!important}
  .mvw-wrapper .mvw-hero-content{padding:18px 19px!important}
}
