/* Marble & Stone Polishing: independent responsive navigation, footer and photo restoration.
   Scope intentionally isolated from legacy Elementor / Astra / WP Rocket styles. */
:root {
  /* Existing brand palette and font stacks; values intentionally unchanged. */
  --msp-forest:#142a26;
  --msp-brass:#caa65f;
  --msp-ink:#1b2825;
  --msp-cream:#f9f8f4;
  --msp-line:#e8e6dd;
  --msp-footer-gold:#d1b273;
  --msp-font-body:16px;
  --msp-font-label:14px;
  --msp-space-1:4px;
  --msp-space-2:8px;
  --msp-space-3:12px;
  --msp-space-4:16px;
  --msp-space-5:24px;
  --msp-space-6:32px;
  --msp-space-7:48px;
  --msp-space-8:64px;
  --msp-space-9:80px;
  --msp-container-max:1180px;
  --msp-control-min:44px;
  --msp-cta-min:48px;
  --msp-radius-control:6px;
  --msp-radius-card:12px;
  /* CSS custom properties cannot be used inside @media conditions.
     Keep 970px/640px/350px media queries as literal breakpoints. */
}
/* Keep top-level shell widths inside the viewport on native static pages (no WordPress global reset). */
.msp-unified-header,.msp-unified-footer{box-sizing:border-box;max-width:100%}
.msp-unified-header *, .msp-unified-header *::before, .msp-unified-header *::after,
.msp-unified-footer *, .msp-unified-footer *::before, .msp-unified-footer *::after,
.msp-terrazzo-feature *, .msp-terrazzo-feature *::before, .msp-terrazzo-feature *::after {box-sizing:border-box}
header.elementor-location-header,footer.elementor-location-footer,
body.terrazzo-site > header.site-header,body.terrazzo-site > footer.site-footer,
.ms-header-wrap {display:none!important}
.elementor-invisible {visibility:visible!important;opacity:1!important}
/* The new navigation is native HTML details/summary and works without Elementor JS. */
.msp-unified-header {
  position:relative!important; z-index:100010!important;
  width:100%;color:var(--msp-ink);font-size:var(--msp-font-body);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  background:#fff;box-shadow:0 2px 10px rgb(15 29 25 / 7%);isolation:isolate;
  text-align:left;line-height:1.45;
}
.msp-unified-header a,.msp-unified-header a:visited {text-decoration:none!important;color:inherit}
.msp-unified-header button,.msp-unified-header summary {font:inherit}
.msp-unified-header a:focus-visible,.msp-unified-header summary:focus-visible,
.msp-unified-footer a:focus-visible,.msp-terrazzo-feature a:focus-visible{
  outline:3px solid #b78b32!important;outline-offset:3px
}
.msp-unified-header .msp-topline {
  background:var(--msp-forest);color:#f5f1e6;
  min-height:34px;display:flex;align-items:center;
  padding:7px max(18px,calc((100vw - 1200px)/2));
  gap:16px;justify-content:space-between;font-size:12px;letter-spacing:.01em;
}
.msp-unified-header .msp-topline a {color:#faf5e8!important;font-weight:650}
.msp-unified-header .msp-topline .msp-top-service {opacity:.88}
.msp-unified-header .msp-topline .msp-top-phone {white-space:nowrap}
.msp-unified-header .msp-bar {
  max-width:1260px;margin:0 auto;padding:var(--msp-space-3) clamp(16px,3vw,36px);
  display:flex;align-items:center;gap:clamp(14px,2vw,24px);min-height:80px;
  position:relative;
}
.msp-unified-header .msp-brand {display:flex;gap:11px;align-items:center;min-width:0;flex:0 0 auto}
.msp-unified-header .msp-brand img {width:47px;height:47px;object-fit:contain;display:block}
.msp-unified-header .msp-brand-copy {display:flex;flex-direction:column;gap:2px}
.msp-unified-header .msp-brand-name {font-weight:800;letter-spacing:-.025em;font-size:16px;line-height:1.1;color:#182c27}
.msp-unified-header .msp-brand-sub {font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:#806634;font-weight:750}
.msp-unified-header .msp-desktop-nav {display:flex;align-items:center;gap:1px;justify-content:center;flex:1 1 auto;min-width:0}
.msp-unified-header .msp-desktop-nav > a,
.msp-unified-header .msp-desktop-nav > details > summary {
  display:flex;align-items:center;justify-content:center;min-height:45px;padding:10px clamp(8px,1vw,13px);
  font-size:13px;line-height:1.2;font-weight:650;white-space:nowrap;
  border-radius:7px;cursor:pointer;color:#293d35!important;list-style:none;
}
.msp-unified-header .msp-desktop-nav a:hover,
.msp-unified-header .msp-desktop-nav summary:hover,
.msp-unified-header .msp-desktop-nav details[open] > summary {
  color:#162f29!important;background:#f3f1e9;
}
.msp-unified-header .msp-desktop-nav summary::-webkit-details-marker,
.msp-unified-header summary::-webkit-details-marker {display:none}
.msp-unified-header .msp-desktop-nav > details {position:relative}
.msp-unified-header .msp-desktop-nav summary::after {
  content:"";display:inline-block;width:6px;height:6px;margin-left:9px;
  border-right:1.5px solid #706f62;border-bottom:1.5px solid #706f62;
  transform:rotate(45deg) translateY(-2px);
}
.msp-unified-header .msp-desktop-nav details[open] > summary::after {transform:rotate(225deg) translateY(-1px)}
.msp-unified-header .msp-menu-panel {
  position:absolute;top:calc(100% + 7px);left:50%;transform:translateX(-50%);
  min-width:260px;max-width:min(670px,96vw);background:#fff;
  border:1px solid #e5e4df;border-top:3px solid var(--msp-brass);
  box-shadow:0 18px 45px rgb(9 37 26 / 17%);border-radius:0 0 12px 12px;
  padding:15px;z-index:100020;display:grid;grid-template-columns:repeat(2,minmax(230px,1fr));gap:14px;
}
.msp-unified-header .msp-menu-panel.msp-menu-panel-small {
  min-width:285px;grid-template-columns:minmax(0,1fr)
}
.msp-unified-header .msp-menu-panel h3 {font-size:11px!important;letter-spacing:.1em;text-transform:uppercase;color:#a27a32!important;margin:3px 10px 8px!important;font-weight:800!important}
.msp-unified-header .msp-menu-panel a {display:block;font-size:13px!important;padding:9px 11px;border-radius:7px;line-height:1.35;font-weight:550;color:#20362d!important}
.msp-unified-header .msp-menu-panel a:hover {background:#f4f2ec}
.msp-unified-header .msp-nav-cta {
  flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  min-height:var(--msp-cta-min);padding:10px var(--msp-space-4);border-radius:var(--msp-radius-control);background:var(--msp-forest);
  color:#fff!important;text-decoration:none!important;
  font-size:var(--msp-font-label);font-weight:800!important;white-space:nowrap;
}
.msp-unified-header .msp-nav-cta:hover {background:#315046}
.msp-unified-header .msp-mobile-details {display:none;min-width:0}
.msp-unified-header .msp-mobile-details > summary {
  display:flex;align-items:center;gap:var(--msp-space-2);min-height:var(--msp-cta-min);
  border:1px solid #d6d8d2;border-radius:6px;
  padding:8px 12px;cursor:pointer;list-style:none;
  color:#173229;font-weight:750;font-size:13px;
}
.msp-unified-header .msp-menu-icon {
  width:20px;height:14px;display:inline-block;position:relative;
  border-top:2px solid #173229;border-bottom:2px solid #173229
}
.msp-unified-header .msp-menu-icon::after {
  content:"";position:absolute;top:5px;left:0;right:0;border-top:2px solid #173229
}
.msp-unified-header .msp-mobile-menu {background:#fff;border-top:1px solid #e5e4dd;padding:7px 0 14px}
.msp-unified-header .msp-mobile-menu > a,
.msp-unified-header .msp-mobile-menu > details > summary {
  display:flex;align-items:center;min-height:var(--msp-cta-min);padding:10px 20px;
  border-bottom:1px solid #eeece7;color:#1c352c!important;
  font-size:14px;font-weight:650;line-height:1.35;list-style:none
}
.msp-unified-header .msp-mobile-menu > details > summary {cursor:pointer;justify-content:space-between}
.msp-unified-header .msp-mobile-menu > details > summary::after {content:"+";color:#b08536;font-size:19px;font-weight:600}
.msp-unified-header .msp-mobile-menu > details[open] > summary::after {content:"−"}
.msp-unified-header .msp-mobile-menu .msp-mobile-submenu {display:grid;padding:4px 0 9px;background:#f7f6f1}
.msp-unified-header .msp-mobile-menu .msp-mobile-submenu a {
  display:flex;align-items:center;padding:10px 28px;min-height:var(--msp-cta-min);
  font-size:13.5px;color:#294237!important;text-decoration:none!important
}
.msp-unified-header .msp-mobile-menu a:hover,
.msp-unified-header .msp-mobile-menu summary:hover {background:#efeee8}
.msp-unified-header .msp-mobile-menu .msp-mobile-highlight {color:#72531b!important;font-weight:800}
.msp-unified-header .msp-mobile-menu .msp-mobile-cta {
  display:block;text-align:center;background:#142a26;color:#fff!important;
  margin:var(--msp-space-4) var(--msp-space-4) 0;border-radius:var(--msp-radius-control);
  font-weight:750;min-height:var(--msp-cta-min);padding:12px
}
/* Static homepage panels use the image element already emitted by
   build-global-ui.mjs. Do not recreate its former WP Rocket background layer. */
.msp-rescued-photo-panel{position:relative;isolation:isolate;overflow:hidden}
.msp-rescued-photo-panel > img.msp-rescued-background-photo{
  position:absolute;inset:0;width:100%;height:100%;max-width:none;
  object-fit:cover;display:block;pointer-events:none;z-index:0
}
.msp-rescued-photo-panel::before{z-index:1;pointer-events:none}
.msp-rescued-photo-panel > :not(.msp-rescued-background-photo){position:relative;z-index:2}

/* Reliable image elements replace WP Rocket's disconnected CSS custom backgrounds. */
.elementor .msp-home-gallery-card {
  position:relative!important;overflow:hidden!important;isolation:isolate!important;
  min-height:215px!important;background-color:#343c37!important;background-image:none!important;
  border-radius:18px!important;
}
.elementor .msp-home-gallery-card > img.msp-restored-card-image {
  display:block!important;position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;max-width:none!important;
  object-fit:cover!important;z-index:0!important;border-radius:inherit!important;
  opacity:1!important;transform:none!important;
}
.elementor .msp-home-gallery-card::before {
  content:""!important;display:block!important;position:absolute!important;inset:0!important;
  background:linear-gradient(180deg,transparent 28%,rgba(8,16,16,.74) 100%)!important;
  opacity:1!important;z-index:1!important;pointer-events:none!important;border-radius:inherit!important
}
.elementor .msp-home-gallery-card > :not(img) {
  position:relative!important;z-index:2!important;
}
.elementor .msp-home-gallery-card h2,
.elementor .msp-home-gallery-card .elementor-heading-title {color:#fff!important;position:relative!important;z-index:3!important;text-shadow:0 1px 3px rgb(0 0 0 / 25%);font-weight:700!important}
/* Protect visible sections from old Elementor entrance animations in static exports. */
.e-con.elementor-invisible,.elementor-widget.elementor-invisible,
.animated-slow.elementor-invisible {opacity:1!important;visibility:visible!important;transform:none!important}
/* Distinct, high-visibility terrazzo service links on the home page. */
.msp-terrazzo-feature {
  background:#f6f5f0;color:#172923;
  padding:clamp(var(--msp-space-7),6vw,var(--msp-space-9)) 20px;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  isolation:isolate;position:relative;z-index:2
}
.msp-terrazzo-feature .msp-feature-container {max-width:var(--msp-container-max);margin:auto}
.msp-terrazzo-feature .msp-kicker {
  /* Existing brass-dark brand tone; 4.97:1 on #f6f5f0. */
  color:#806634;font-size:12px;letter-spacing:.16em;font-weight:850;text-transform:uppercase
}
.msp-terrazzo-feature h2 {color:#152b23!important;font-size:clamp(27px,3.5vw,42px)!important;line-height:1.12!important;margin:10px 0 14px!important;font-weight:800!important}
.msp-terrazzo-feature .msp-feature-lead {
  font-size:var(--msp-font-body);line-height:1.6;max-width:720px;
  margin:0 0 var(--msp-space-6)
}
.msp-terrazzo-feature .msp-feature-grid {
  display:grid;grid-template-columns:minmax(0,1fr);gap:var(--msp-space-5)
}
.msp-terrazzo-feature .msp-feature-card {display:block;background:#fff;box-shadow:0 4px 22px rgb(28 39 32 / 7%);text-decoration:none!important;color:#203229!important;border-radius:var(--msp-radius-card);overflow:hidden}
.msp-terrazzo-feature .msp-feature-card:hover {box-shadow:0 8px 24px rgb(28 39 32 / 14%)}
.msp-terrazzo-feature .msp-feature-card img {width:100%!important;max-width:none;height:210px!important;object-fit:cover;display:block}
.msp-terrazzo-feature .msp-feature-card-body {padding:var(--msp-space-5)}
.msp-terrazzo-feature .msp-feature-card h3 {font-size:18px!important;line-height:1.25!important;font-weight:750!important;color:#172e24!important;margin:0 0 9px!important}
.msp-terrazzo-feature .msp-feature-card p {
  font-size:var(--msp-font-body);line-height:1.6;color:#505e56;margin:0 0 var(--msp-space-4)
}
.msp-terrazzo-feature .msp-feature-card span {font-size:13px;font-weight:850;color:#926d2c}
.msp-terrazzo-feature .msp-feature-cta {display:inline-flex;align-items:center;justify-content:center;
  min-height:var(--msp-cta-min);margin-top:var(--msp-space-5);padding:12px 20px;
  border-radius:var(--msp-radius-control);background:#18322b;
  color:white!important;text-decoration:none!important;font-size:var(--msp-font-label);
  line-height:1.5;font-weight:750}
/* New independent footer, preserved on WP import and native service pages. */
.msp-unified-footer {
  width:100%;background:#11241f;color:#e6e9e1;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  font-size:var(--msp-font-body);line-height:1.6;text-align:left;
  padding:clamp(45px,5vw,66px) 20px 0;position:relative;z-index:2
}
.msp-unified-footer .msp-footer-inner {max-width:var(--msp-container-max);margin:0 auto}
.msp-unified-footer .msp-footer-columns {
  display:grid;grid-template-columns:1.5fr 1fr 1fr 1.15fr;
  gap:clamp(var(--msp-space-5),4vw,var(--msp-space-7))
}
.msp-unified-footer .msp-footer-column {min-width:0}
.msp-unified-footer .msp-footer-brand {display:flex;align-items:center;gap:12px;margin:0 0 18px}
.msp-unified-footer .msp-footer-brand img {width:47px;height:47px;object-fit:contain}
.msp-unified-footer .msp-footer-brand-name {font-weight:800;font-size:17px;line-height:1.2;color:#fff}
.msp-unified-footer .msp-footer-brand-sub {font-size:11px;color:var(--msp-footer-gold);letter-spacing:.1em;margin-top:3px}
.msp-unified-footer .msp-footer-column h2 {color:#fff!important;font-size:15px!important;line-height:1.3!important;font-weight:750!important;margin:0 0 18px!important}
.msp-unified-footer p {
  color:#c1ccc4;font-size:var(--msp-font-body);line-height:1.6;margin:0 0 var(--msp-space-4)
}
.msp-unified-footer .msp-footer-links {display:grid;gap:2px}
.msp-unified-footer a,.msp-unified-footer a:visited {
  display:inline-flex;align-items:center;width:fit-content;max-width:100%;
  min-height:var(--msp-control-min);padding:6px 0;line-height:1.5;
  font-size:var(--msp-font-label);color:#d6dfd7!important;text-decoration:none!important;
  overflow-wrap:anywhere;
}
.msp-unified-footer a:hover {color:var(--msp-footer-gold)!important;text-decoration:underline!important}
.msp-unified-footer .msp-footer-contact strong {color:#fff}
.msp-unified-footer .msp-footer-contact .msp-footer-tel {
  font-size:18px!important;color:#fff!important;font-weight:800;letter-spacing:.015em
}
.msp-unified-footer .msp-footer-action {
  margin-top:var(--msp-space-4);display:inline-flex!important;
  padding:12px var(--msp-space-4)!important;min-height:var(--msp-cta-min)!important;
  color:#162820!important;background:var(--msp-footer-gold);border-radius:6px;font-weight:800!important
}
.msp-unified-footer .msp-footer-bottom {
  border-top:1px solid #30433a;margin-top:48px;padding:17px 0 21px;
  display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap;
  font-size:12px;color:#9bb2a7
}
.msp-unified-footer .msp-footer-bottom a {
  font-size:12px!important;color:#bbcec3!important;min-height:var(--msp-control-min)
}
.msp-unified-footer .msp-footer-bottom-links {display:flex;align-items:center;gap:var(--msp-space-4);flex-wrap:wrap}
/* Mobile-first grid breakpoints. Keep other legacy breakpoints unchanged
   until every inherited Elementor template is independently refactored. */
@media(min-width:641px) {
  .msp-terrazzo-feature .msp-feature-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:971px) {
  .msp-terrazzo-feature .msp-feature-grid {grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1140px){
  .msp-unified-header .msp-desktop-nav > a,.msp-unified-header .msp-desktop-nav > details > summary {font-size:12px;padding:9px 7px}
  .msp-unified-header .msp-brand-name {font-size:14px}
  .msp-unified-header .msp-brand-sub {font-size:9px}
  .msp-unified-header .msp-bar {gap:12px}
}
@media(max-width:970px){
  .msp-unified-header .msp-desktop-nav,.msp-unified-header .msp-nav-cta {display:none!important}
  .msp-unified-header .msp-mobile-details {display:block;position:relative;margin-left:auto;flex:0 0 auto}
  .msp-unified-header .msp-bar {padding:11px 17px;min-height:70px}
  .msp-unified-header .msp-mobile-menu {
    position:absolute;right:-17px;top:calc(100% + 11px);width:min(440px,100vw);
    max-height:min(70vh,680px);overflow-y:auto;
    border:1px solid #e5e4df;border-top:3px solid #caa65f;
    box-shadow:0 16px 40px rgb(15 26 22 / 18%);z-index:100030;
    -webkit-overflow-scrolling:touch
  }
  .msp-unified-footer .msp-footer-columns {grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--msp-space-6)}
  .msp-terrazzo-feature .msp-feature-card img {height:190px!important}
}
@media(max-width:640px){
  .msp-unified-header .msp-brand {flex:1 1 auto;min-width:0}
  .msp-unified-header .msp-brand-copy {min-width:0}
  .msp-unified-header .msp-brand-name {overflow-wrap:anywhere;word-break:normal}
  .msp-unified-header .msp-mobile-details {flex:0 0 auto}

  .msp-unified-header .msp-topline {padding:7px 16px;font-size:10.5px}
  .msp-unified-header .msp-topline .msp-top-service {overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .msp-unified-header .msp-bar {padding:9px 16px;min-height:66px}
  .msp-unified-header .msp-brand img {width:41px;height:41px}
  .msp-unified-header .msp-brand-name {font-size:13.5px}
  .msp-unified-header .msp-brand-sub {font-size:9px;letter-spacing:.09em}
  .msp-unified-header .msp-mobile-menu {
    right:0;top:calc(100% + 9px);width:calc(100vw - 32px)
  }
  .msp-unified-header .msp-mobile-details > summary {font-size:12px;padding:8px 10px}
  .msp-terrazzo-feature .msp-feature-card img {height:205px!important}
  .msp-terrazzo-feature .msp-feature-card-body {padding:var(--msp-space-4)}
  .msp-unified-footer {padding:42px 19px 0}
  .msp-unified-footer .msp-footer-columns {grid-template-columns:minmax(0,1fr);gap:var(--msp-space-5)}
  .msp-unified-footer .msp-footer-column h2 {margin-bottom:9px!important}
  .msp-unified-footer .msp-footer-bottom {margin-top:32px;padding:18px 0}
}
@media(max-width:350px) {
  .msp-unified-header .msp-brand-sub {display:none}
  .msp-unified-header .msp-brand-name {font-size:11.5px;max-width:142px}
  .msp-unified-header .msp-brand img {width:35px;height:35px}
  .msp-unified-header .msp-brand {gap:6px}
  .msp-unified-header .msp-bar {gap:8px;padding-inline:12px}
  .msp-unified-header .msp-mobile-menu {right:-12px}
  .msp-unified-header .msp-topline {gap:6px}
}
@media(prefers-reduced-motion:reduce) {
  .msp-unified-header *, .msp-unified-footer *, .msp-terrazzo-feature * {scroll-behavior:auto!important;transition:none!important}
}


/* Independent Cloudflare enquiry form: no WPForms markup or runtime. */
.ct-form-wrap .msp-native-form {display:block!important;max-width:100%;margin:0;padding:0;font-family:inherit;color:#25251f}
.ct-form-wrap .msp-form-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 22px}
.ct-form-wrap .msp-field {margin:0 0 19px;min-width:0}
.ct-form-wrap .msp-field label {display:block;margin:0 0 8px;font-size:14px;font-weight:650;color:#25251f;line-height:1.45}
.ct-form-wrap .msp-field label span {color:#9b7846}
.ct-form-wrap .msp-field :is(input,select,textarea) {display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;border:1px solid #d8d4cc;border-radius:8px;background:#fff;color:#25251f;padding:13px 15px;font:inherit;font-size:15px;line-height:1.5;box-shadow:none;transition:border-color .18s,box-shadow .18s;appearance:auto}
.ct-form-wrap .msp-field textarea {resize:vertical;min-height:140px}
.ct-form-wrap .msp-field :is(input,select,textarea):focus-visible {outline:2px solid #9b7846;outline-offset:2px;border-color:#9b7846}
.ct-form-wrap .msp-field input::placeholder,.ct-form-wrap .msp-field textarea::placeholder {color:#837f77;opacity:1}
.ct-form-wrap .msp-submit {appearance:none;cursor:pointer;border:0;border-radius:6px;background:#24241f!important;color:#fff!important;font-weight:700;font-size:15px;padding:15px 23px;min-height:49px;transition:background .2s;white-space:normal}
.ct-form-wrap .msp-submit:hover {background:#765936!important}
.ct-form-wrap .msp-submit:disabled {cursor:progress;opacity:.65}
.ct-form-wrap .msp-captcha-slot {min-height:60px;margin:13px 0}
.ct-form-wrap .msp-form-privacy {font-size:12px;line-height:1.6;margin:10px 0 19px;color:#625d53}
.ct-form-wrap .msp-form-privacy a {color:#866437;text-decoration:underline}
.ct-form-wrap .msp-form-honeypot {position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.ct-form-wrap .migration-form-result {margin-top:15px;padding:13px 16px;border:1px solid currentColor;border-radius:6px;font-size:14px;line-height:1.6}
.ct-form-wrap .migration-form-result[hidden] {display:none!important}
@media(max-width:680px) {.ct-form-wrap .msp-form-grid {grid-template-columns:1fr;gap:0}.ct-form-wrap .msp-field {margin-bottom:17px}.ct-form-wrap .msp-submit {width:100%}}


/* MSP PREMIUM ENQUIRY FORM V2 */
/* Specificity intentionally outranks inherited Elementor/Astra form styling. */
.ct-form-wrap {
  --msp-form-ink:#25251f; --msp-form-gold:#a98552; --msp-form-line:#dcd6cc;
  --msp-form-paper:#fff; --msp-form-muted:#77736c;
}
.ct-form-wrap .ct-form-title {
  font-family:"Playfair Display",Georgia,serif!important;
  font-size:clamp(28px,3.1vw,39px)!important;
  line-height:1.2!important;letter-spacing:-.025em!important;
  margin:0 0 12px!important;color:var(--msp-form-ink)!important;
}
.ct-form-wrap .ct-form-sub {
  font-family:"Josefin Sans",Arial,sans-serif!important;
  font-size:15px!important;line-height:1.75!important;color:#706b63!important;
  margin:0 0 28px!important;max-width:65ch!important;
}
.ct-form-wrap .ct-form-placeholder {
  padding:clamp(22px,4.4vw,46px)!important;
  background:linear-gradient(140deg,#fff 65%,#fdfbf7 100%)!important;
  border:1px solid #e7e1d7!important;border-radius:18px!important;
  box-shadow:0 14px 44px rgba(33,31,25,.055)!important;
}
.ct-form-wrap form#msp-enquiry-form.msp-native-form {
  width:100%!important;max-width:none!important;margin:0!important;
  padding:0!important;background:transparent!important;border:0!important;
  font-family:"Josefin Sans",Arial,sans-serif!important;
}
.ct-form-wrap #msp-enquiry-form .msp-form-heading {
  display:flex;align-items:center;gap:13px;margin:0 0 28px;
  padding:0 0 19px;border-bottom:1px solid #ece7de;
}
.ct-form-wrap #msp-enquiry-form .msp-form-heading-number {
  display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;
  background:#292921;color:#dbc5a4;border-radius:50%;
  font:700 13px Arial,sans-serif;
}
.ct-form-wrap #msp-enquiry-form .msp-form-heading-title {
  margin:0!important;font:700 16px/1.3 "Josefin Sans",Arial,sans-serif!important;
  color:#26251f!important;
}
.ct-form-wrap #msp-enquiry-form .msp-form-heading-caption {
  margin:3px 0 0!important;font:400 13px/1.5 "Josefin Sans",Arial,sans-serif!important;
  color:#817b73!important;
}
.ct-form-wrap #msp-enquiry-form .msp-form-grid {
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:5px 22px!important;margin:0!important;
}
.ct-form-wrap #msp-enquiry-form .msp-field {
  display:block!important;width:100%!important;min-width:0!important;
  margin:0 0 22px!important;position:relative;
}
.ct-form-wrap #msp-enquiry-form .msp-field>label {
  display:block!important;padding:0!important;margin:0 0 10px!important;
  color:#35332d!important;font:700 14px/1.35 "Josefin Sans",Arial,sans-serif!important;
  letter-spacing:0!important;
}
.ct-form-wrap #msp-enquiry-form .msp-field>label span {color:#aa804c!important}
.ct-form-wrap #msp-enquiry-form .msp-field input:not([type="hidden"]),
.ct-form-wrap #msp-enquiry-form .msp-field select,
.ct-form-wrap #msp-enquiry-form .msp-field textarea {
  box-sizing:border-box!important;display:block!important;width:100%!important;
  min-width:0!important;max-width:100%!important;
  padding:0 17px!important;margin:0!important;
  height:54px!important;min-height:54px!important;
  border:1px solid var(--msp-form-line)!important;border-radius:10px!important;
  background:#fff!important;color:var(--msp-form-ink)!important;
  font:500 15px/1.45 "Josefin Sans",Arial,sans-serif!important;
  letter-spacing:normal!important;text-indent:0!important;
  box-shadow:0 1px 2px rgba(25,22,18,.025)!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
  outline:none!important;
}
.ct-form-wrap #msp-enquiry-form .msp-field select {
  padding-right:45px!important;appearance:none!important;-webkit-appearance:none!important;
  line-height:normal!important;
  background-color:#fff!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23907856' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;
  background-position:right 16px center!important;background-repeat:no-repeat!important;
  background-size:16px!important;text-overflow:ellipsis!important;
}
.ct-form-wrap #msp-enquiry-form .msp-field textarea {
  height:auto!important;min-height:158px!important;padding:16px 17px!important;
  resize:vertical!important;
}
.ct-form-wrap #msp-enquiry-form .msp-field :is(input,select,textarea):focus {
  border-color:#b18a56!important;box-shadow:0 0 0 3px rgba(169,133,82,.14)!important;
}
.ct-form-wrap #msp-enquiry-form .msp-field :is(input,textarea)::placeholder {
  color:#99948b!important;opacity:1!important;font-weight:400!important;
}
.ct-form-wrap #msp-enquiry-form .msp-captcha-slot {
  display:block!important;min-height:65px!important;margin:6px 0 17px!important;
}
.ct-form-wrap #msp-enquiry-form .msp-form-bottom {
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:16px;padding-top:16px;border-top:1px solid #eee8df;
}
.ct-form-wrap #msp-enquiry-form .msp-form-privacy {
  margin:0!important;max-width:320px!important;
  color:#77716a!important;font:400 12px/1.6 "Josefin Sans",Arial,sans-serif!important;
}
.ct-form-wrap #msp-enquiry-form button.msp-submit {
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:13px!important;width:auto!important;min-width:252px!important;
  min-height:55px!important;height:auto!important;
  margin:0!important;padding:17px 23px!important;
  border:1px solid #292921!important;border-radius:9px!important;
  color:#fff!important;background:#292921!important;
  font:700 14px/1.2 "Josefin Sans",Arial,sans-serif!important;
  box-shadow:0 8px 20px rgba(26,26,22,.13)!important;
  cursor:pointer!important;transition:transform .15s ease,background .15s ease!important;
}
.ct-form-wrap #msp-enquiry-form button.msp-submit:hover {
  background:#4c4030!important;transform:translateY(-1px)!important;
}
.ct-form-wrap #msp-enquiry-form button.msp-submit:disabled {
  opacity:.65!important;cursor:wait!important;transform:none!important;
}
.ct-form-wrap #msp-enquiry-form .migration-form-result {
  width:100%!important;box-sizing:border-box!important;
  margin:20px 0 0!important;padding:14px 18px!important;
  border-radius:9px!important;font:600 14px/1.65 "Josefin Sans",Arial,sans-serif!important;
}
.ct-form-wrap #msp-enquiry-form .migration-form-result[hidden] {display:none!important}
.ct-form-wrap #msp-enquiry-form .msp-form-honeypot {position:absolute!important;left:-9999px!important}
@media(max-width:720px) {
  .ct-form-wrap .ct-form-placeholder {padding:22px 18px!important;border-radius:13px!important}
  .ct-form-wrap #msp-enquiry-form .msp-form-grid {grid-template-columns:1fr!important;gap:0!important}
  .ct-form-wrap #msp-enquiry-form .msp-field {margin-bottom:19px!important}
  .ct-form-wrap #msp-enquiry-form .msp-form-bottom {flex-direction:column;align-items:stretch!important;gap:18px}
  .ct-form-wrap #msp-enquiry-form .msp-form-privacy {max-width:none!important}
  .ct-form-wrap #msp-enquiry-form button.msp-submit {width:100%!important;min-width:0!important}
  .ct-form-wrap #msp-enquiry-form .msp-form-heading {margin-bottom:21px}
}
