.slg-sep-wrap{--slg-sep-primary:#1763a6;box-sizing:border-box;width:100%;max-width:680px;margin:0 auto;color:#102b50;font-family:inherit}.slg-sep-wrap *{box-sizing:border-box}.slg-sep-form{padding:clamp(22px,4vw,38px);background:#fff;border:1px solid #e1e9f2;border-radius:20px;box-shadow:0 12px 38px rgba(16,43,80,.075)}.slg-sep-head{display:flex;align-items:center;gap:12px;padding-bottom:22px;border-bottom:1px solid #eaf0f6;margin-bottom:23px}.slg-sep-mark{display:grid;place-items:center;width:43px;height:43px;flex:none;background:var(--slg-sep-primary);color:#fff;border-radius:12px;font-size:23px}.slg-sep-company{font-size:14px;letter-spacing:.06em;font-weight:800}.slg-sep-kicker{font-size:12px;color:#74849a;margin-top:3px}.slg-sep-form h2{font-size:clamp(23px,3vw,30px);color:#102b50;margin:0 0 7px;font-weight:750;line-height:1.2}.slg-sep-intro{color:#6c7c91;font-size:14px;line-height:1.7;margin:0 0 23px}.slg-sep-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.slg-sep-field{margin-bottom:17px;min-width:0}.slg-sep-field label{display:block;font-size:13px;line-height:1.5;font-weight:650;color:#243a56;margin-bottom:7px}.slg-sep-field label span{color:#d54747}.slg-sep-field label small{color:#8090a2;font-weight:400;font-size:12px}.slg-sep-field input:not([type=file]),.slg-sep-field select,.slg-sep-field textarea{display:block;width:100%;max-width:100%;min-height:50px;margin-top:7px;padding:12px 14px;border:1px solid #d7e0ea;border-radius:11px;background:#fff;color:#18334f;font-size:16px;font-family:inherit;box-shadow:none;line-height:1.45}.slg-sep-field textarea{min-height:100px;resize:vertical}.slg-sep-field input:focus,.slg-sep-field select:focus,.slg-sep-field textarea:focus{outline:2px solid color-mix(in srgb,var(--slg-sep-primary) 30%,transparent);outline-offset:1px;border-color:var(--slg-sep-primary)}.slg-sep-phone{display:flex;align-items:center;border:1px solid #d7e0ea;border-radius:11px;overflow:hidden;margin-top:7px}.slg-sep-phone span{padding:14px;background:#f0f5fb;font-size:15px;color:#294664;border-right:1px solid #d7e0ea}.slg-sep-phone input{margin:0!important;border:0!important;min-width:0}.slg-sep-gps{background:none!important;color:var(--slg-sep-primary)!important;border:0!important;box-shadow:none!important;padding:5px 0!important;font-size:13px!important;font-weight:650!important;cursor:pointer}.slg-sep-help{color:#8895a5;font-size:11px;margin:2px 0 0}.slg-sep-files{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden}.slg-sep-upload{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:110px;padding:16px;border:1.5px dashed #b8ccdf;border-radius:12px;text-align:center;background:#f8fbff;cursor:pointer}.slg-sep-upload-icon{font-size:27px!important;color:var(--slg-sep-primary)!important}.slg-sep-upload strong{font-size:13px}.slg-sep-upload small{font-size:11px!important}.slg-sep-filenames{font-size:12px;color:#54718e;overflow-wrap:anywhere}.slg-sep-consent{display:flex;gap:10px;font-weight:400;font-size:12px;color:#53677f;line-height:1.65;margin:7px 0 18px;align-items:flex-start}.slg-sep-consent input{flex:none;width:17px;height:17px;margin:2px 0 0;accent-color:var(--slg-sep-primary)}.slg-sep-consent a{color:var(--slg-sep-primary)}.slg-sep-submit{width:100%;min-height:53px;border:0;border-radius:11px;background:var(--slg-sep-primary);color:#fff;font-family:inherit;font-size:15px;font-weight:700;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:10px;transition:filter .15s}.slg-sep-submit:hover{filter:brightness(.9)}.slg-sep-submit:disabled{opacity:.65;cursor:wait}.slg-sep-footer{text-align:center;color:#8291a4;font-size:11px;margin:14px 0 0}.slg-sep-response{font-size:13px;margin:8px 0;line-height:1.6}.slg-sep-response:empty{display:none}.slg-sep-error{color:#9b2424;padding:10px;border-radius:8px;background:#fff0f0}.slg-sep-success{color:#17643a;padding:10px;border-radius:8px;background:#e9f8ef}.slg-sep-honey{position:absolute;left:-10000px;opacity:0;pointer-events:none}@media(max-width:600px){.slg-sep-wrap{max-width:100%;padding:0!important}.slg-sep-form{border-radius:15px;padding:20px 16px}.slg-sep-grid{grid-template-columns:minmax(0,1fr);gap:0}.slg-sep-field{margin-bottom:15px}.slg-sep-form h2{font-size:23px}}

/* v1.1.0 — fully optional, editable branding section */
.slg-sep-wrap .slg-sep-branded-header{display:flex;flex-direction:column;align-items:var(--slg-sep-header-align);text-align:var(--slg-sep-header-align);gap:5px;background:var(--slg-sep-header-bg);color:var(--slg-sep-header-fg);padding:22px 16px;margin:-10px -10px 24px;border:0;border-radius:14px}
.slg-sep-wrap .slg-sep-branded-header .slg-sep-logo{display:block;width:var(--slg-sep-logo-width);max-width:100%;height:auto;max-height:115px;object-fit:contain;margin-bottom:5px}
.slg-sep-wrap .slg-sep-branded-header .slg-sep-company{font-size:clamp(15px,2.3vw,19px);font-weight:800;letter-spacing:.045em;color:var(--slg-sep-header-fg);line-height:1.35;overflow-wrap:anywhere}
.slg-sep-wrap .slg-sep-branded-header .slg-sep-kicker{font-size:12px;line-height:1.5;color:var(--slg-sep-header-fg);opacity:.88;margin:0;overflow-wrap:anywhere}
.slg-sep-wrap .slg-sep-branded-header[style*="--slg-sep-header-align:left"]{align-items:flex-start}
@media(max-width:600px){.slg-sep-wrap .slg-sep-branded-header{margin:-5px -3px 22px;padding:19px 12px;border-radius:12px}}

/* v1.2.0: screenshot-style GPS button integrated inside the Project Location field. */
.slg-sep-location-input{position:relative;width:100%;margin-top:7px}
.slg-sep-location-input input:not([type=file]){margin-top:0!important}
.slg-sep-location-with-gps input:not([type=file]){padding-right:142px!important;min-height:58px}
.slg-sep-location-input .slg-sep-gps{position:absolute!important;right:7px;top:50%;transform:translateY(-50%);display:inline-flex!important;align-items:center;justify-content:center;gap:6px;min-width:124px;min-height:44px;padding:8px 10px!important;background:#245f9c!important;color:#fff!important;border-radius:10px!important;border:0!important;box-shadow:none!important;font-size:13px!important;line-height:1.15!important;font-weight:700!important;white-space:nowrap;cursor:pointer}
.slg-sep-location-input .slg-sep-gps:hover{background:#194f86!important}
.slg-sep-location-input .slg-sep-gps:focus-visible{outline:3px solid #91c7fb;outline-offset:2px}
.slg-sep-location-input .slg-sep-gps:disabled{opacity:.65;cursor:wait}
.slg-sep-gps-icon{font-size:21px;line-height:1}
.slg-sep-location-field .slg-sep-help{margin:7px 0 0;font-size:12px;line-height:1.4}
@media(max-width:380px){.slg-sep-location-with-gps input:not([type=file]){padding-right:109px!important}.slg-sep-location-input .slg-sep-gps{min-width:95px;font-size:11px!important;gap:3px;padding:6px!important}.slg-sep-gps-icon{font-size:18px}}

/* v1.4.0: centered, configurable form headline and description */
.slg-sep-wrap .slg-sep-form-introduction{text-align:center;margin:0 auto 24px;max-width:570px}
.slg-sep-wrap .slg-sep-form-introduction h2{margin:0 0 9px;text-align:center;line-height:1.3;overflow-wrap:anywhere}
.slg-sep-wrap .slg-sep-form-introduction .slg-sep-intro{margin:0 auto;color:#63748a;line-height:1.65;text-align:center;overflow-wrap:anywhere}
@media(max-width:600px){.slg-sep-wrap .slg-sep-form-introduction{margin-bottom:21px}.slg-sep-wrap .slg-sep-form-introduction h2{font-size:23px}}


/* v1.6.0: Desktop compact form, preserving the original phone layout.
   Container queries respond to Elementor column width, not merely screen width. */
@media (min-width: 768px){
 .slg-sep-wrap{max-width:880px}
 .slg-sep-wrap .slg-sep-form{padding:26px 32px 24px}
 .slg-sep-wrap .slg-sep-branded-header{padding:14px 16px;margin:-4px -4px 17px;gap:3px}
 .slg-sep-wrap .slg-sep-branded-header .slg-sep-logo{max-height:68px}
 .slg-sep-wrap .slg-sep-form-introduction{margin-bottom:16px}
 .slg-sep-wrap .slg-sep-form-introduction h2{font-size:27px;margin-bottom:5px}
 .slg-sep-wrap .slg-sep-form-introduction .slg-sep-intro{line-height:1.45;font-size:13px}
 .slg-sep-wrap .slg-sep-consent{margin:4px 0 13px}
 .slg-sep-wrap .slg-sep-submit{min-height:48px}
 .slg-sep-wrap .slg-sep-footer{margin-top:9px}
}
.slg-sep-wrap{container-type:inline-size}
/* Narrow Elementor columns collapse safely even on a desktop browser. */
.slg-sep-wrap .slg-sep-grid{grid-template-columns:minmax(0,1fr);gap:0}
@container (min-width: 660px){
 .slg-sep-wrap .slg-sep-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:0}
 .slg-sep-wrap .slg-sep-field{margin-bottom:12px}
 .slg-sep-wrap .slg-sep-field input:not([type=file]),
 .slg-sep-wrap .slg-sep-field select{min-height:46px;padding-top:9px;padding-bottom:9px}
 .slg-sep-wrap .slg-sep-location-with-gps input:not([type=file]){min-height:49px}
 .slg-sep-wrap .slg-sep-location-input .slg-sep-gps{min-height:38px}
 .slg-sep-wrap .slg-sep-field textarea{min-height:92px}
 .slg-sep-wrap .slg-sep-upload{min-height:92px;padding:10px}
 .slg-sep-wrap .slg-sep-details-grid>.slg-sep-field:only-child{grid-column:1/-1}
}


/* v1.7.0 — targeted desktop/laptop compact controls.
   Important: the former 1.6 rules under @container (min-width:660px) did not
   apply within narrow Elementor columns. These rules are viewport-based.
   A 100%-wide form remains fluid; phone styling (<=767px) is untouched. */
@media screen and (min-width:768px){
 .slg-sep-wrap{max-width:780px}
 .slg-sep-wrap .slg-sep-form{padding:20px 26px 19px}
 .slg-sep-wrap .slg-sep-form-introduction{margin-bottom:13px}
 .slg-sep-wrap .slg-sep-form-introduction h2{font-size:24px;line-height:1.24;margin-bottom:4px}
 .slg-sep-wrap .slg-sep-branded-header{padding:11px 14px;margin:-3px -3px 12px}
 .slg-sep-wrap .slg-sep-branded-header .slg-sep-logo{max-height:52px}
 .slg-sep-wrap .slg-sep-field{margin-bottom:10px}
 .slg-sep-wrap .slg-sep-field label{font-size:12.5px;line-height:1.25;margin-bottom:4px}
 .slg-sep-wrap .slg-sep-field label small{font-size:11px}
 .slg-sep-wrap .slg-sep-field input:not([type=file]),
 .slg-sep-wrap .slg-sep-field select{height:42px;min-height:42px;padding:7px 11px;margin-top:4px;font-size:14px;line-height:1.25;border-radius:9px}
 .slg-sep-wrap .slg-sep-phone{margin-top:4px;border-radius:9px;min-height:42px}
 .slg-sep-wrap .slg-sep-phone span{padding:0 12px;display:flex;align-items:center;min-height:40px;font-size:13px}
 .slg-sep-wrap .slg-sep-phone input{height:40px!important;min-height:40px!important;margin:0!important}
 .slg-sep-wrap .slg-sep-location-input{margin-top:4px}
 .slg-sep-wrap .slg-sep-location-with-gps input:not([type=file]){height:44px;min-height:44px;padding-right:140px!important}
 .slg-sep-wrap .slg-sep-location-input .slg-sep-gps{min-height:32px;height:32px;right:6px;min-width:119px;padding:4px 8px!important;border-radius:8px!important;font-size:12px!important}
 .slg-sep-wrap .slg-sep-location-field .slg-sep-help{margin:4px 0 0;font-size:11px}
 .slg-sep-wrap .slg-sep-field textarea{min-height:76px;height:76px;padding:9px 11px;margin-top:4px;font-size:14px;line-height:1.4;border-radius:9px}
 .slg-sep-wrap .slg-sep-upload{min-height:76px;padding:7px;gap:2px;border-radius:9px}
 .slg-sep-wrap .slg-sep-upload-icon{font-size:22px!important}
 .slg-sep-wrap .slg-sep-consent{margin:2px 0 10px;line-height:1.45}
 .slg-sep-wrap .slg-sep-submit{min-height:44px;font-size:14px}
 .slg-sep-wrap .slg-sep-footer{margin-top:7px}
}
/* Only show two columns if there's enough actual space. */
@container (min-width:540px){
 .slg-sep-wrap .slg-sep-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;row-gap:0}
}
/* Don't force desktop-sized controls back into the narrow mobile layout. */
@media screen and (max-width:767px){
 .slg-sep-wrap .slg-sep-grid{grid-template-columns:minmax(0,1fr);gap:0}
}


/* v1.8.0 — edge-to-edge fitting inside Elementor columns, without horizontal clipping.
   Compact single-column layout is based on the actual available form width.
   This is deliberately scoped to the plugin; Elementor's parent columns are untouched. */
.slg-sep-wrap{
  width:100%!important;
  min-width:0;
  max-width:100%;
  margin-left:0;
  margin-right:0;
  container-type:inline-size;
}
.slg-sep-wrap .slg-sep-form{
  width:100%;
  min-width:0;
  max-width:100%;
}
.slg-sep-wrap .slg-sep-grid,
.slg-sep-wrap .slg-sep-field,
.slg-sep-wrap .slg-sep-location-input,
.slg-sep-wrap .slg-sep-phone{
  min-width:0;
  max-width:100%;
}
.slg-sep-wrap .slg-sep-field input,
.slg-sep-wrap .slg-sep-field select,
.slg-sep-wrap .slg-sep-field textarea{
  min-width:0;
  max-width:100%;
}
/* Work well at 360–700px wide: a two-column site section remains a single,
   spacious set of input fields instead of squeezing two fields side by side. */
@container (max-width:719px){
  .slg-sep-wrap .slg-sep-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
  }
  .slg-sep-wrap .slg-sep-form{
    padding:clamp(12px,2.8cqi,19px)!important;
    border-radius:13px;
  }
  .slg-sep-wrap .slg-sep-branded-header{
    padding:12px 10px;
    margin:-2px -2px 14px;
  }
  .slg-sep-wrap .slg-sep-form-introduction{margin-bottom:13px}
  .slg-sep-wrap .slg-sep-form-introduction h2{
    font-size:clamp(19px,4cqi,23px);
  }
  .slg-sep-wrap .slg-sep-form-introduction .slg-sep-intro{
    font-size:13px;
  }
  .slg-sep-wrap .slg-sep-field{margin-bottom:10px}
  .slg-sep-wrap .slg-sep-field label{margin-bottom:4px}
  .slg-sep-wrap .slg-sep-field input:not([type=file]),
  .slg-sep-wrap .slg-sep-field select{
    width:100%;min-height:44px;height:44px;
    padding:9px 11px;margin-top:4px;
    font-size:16px;
  }
  .slg-sep-wrap .slg-sep-phone{min-height:44px;margin-top:4px}
  .slg-sep-wrap .slg-sep-phone span{padding:0 10px;min-height:42px;display:flex;align-items:center}
  .slg-sep-wrap .slg-sep-phone input{height:42px!important;margin:0!important;border:0!important}
  .slg-sep-wrap .slg-sep-location-input{margin-top:4px}
  .slg-sep-wrap .slg-sep-location-with-gps input:not([type=file]){
    min-height:46px;height:46px;padding-right:115px!important;
  }
  .slg-sep-wrap .slg-sep-location-input .slg-sep-gps{
    min-width:96px;min-height:34px;height:34px;
    right:5px;padding:5px 7px!important;
    gap:3px;font-size:12px!important;
  }
  .slg-sep-wrap .slg-sep-gps-icon{font-size:17px}
  .slg-sep-wrap .slg-sep-field textarea{min-height:76px;height:76px;margin-top:4px;font-size:16px}
  .slg-sep-wrap .slg-sep-upload{min-height:76px;padding:8px}
  .slg-sep-wrap .slg-sep-consent{margin:4px 0 10px}
  .slg-sep-wrap .slg-sep-submit{min-height:45px}
}
/* Keep phone layout touch-friendly despite desktop compaction. */
@media (max-width:767px){
  .slg-sep-wrap .slg-sep-form{padding:20px 16px!important}
  .slg-sep-wrap .slg-sep-field input:not([type=file]),
  .slg-sep-wrap .slg-sep-field select,
  .slg-sep-wrap .slg-sep-field textarea{font-size:16px}
}
/* Proper full-width internal two-column arrangement ONLY when container is roomy. */
@container (min-width:720px){
  .slg-sep-wrap .slg-sep-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:16px;
  }
}


/* v1.9.0: adaptive Elementor/mobile layout.
   Form is 100% of its host, with size decisions based on its ACTUAL width.
   On phones, the Elementor column containing this plugin is allowed to stack
   instead of remaining a cramped 50%-width sidebar. */
.slg-sep-wrap, .slg-sep-wrap *, .slg-sep-wrap *::before, .slg-sep-wrap *::after {box-sizing:border-box}
.slg-sep-wrap {display:block; width:100%!important; max-width:100%!important; min-width:0!important; overflow-wrap:anywhere;}
.slg-sep-wrap .slg-sep-form {min-width:0!important;max-width:100%!important;}
.slg-sep-wrap .slg-sep-grid {min-width:0!important;grid-template-columns:minmax(0,1fr)!important;}
.slg-sep-wrap .slg-sep-field, .slg-sep-wrap .slg-sep-phone, .slg-sep-wrap .slg-sep-location-input {min-width:0!important;}
.slg-sep-wrap .slg-sep-field input:not([type=file]), .slg-sep-wrap .slg-sep-field select,
.slg-sep-wrap .slg-sep-field textarea {min-width:0!important;max-width:100%!important;}
@container (min-width:720px) {
  .slg-sep-wrap .slg-sep-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
/* A two-column Elementor parent shouldn't force an enquiry form into a half
   screen on phones. Only change layout for sections containing THIS shortcode. */
@media screen and (max-width:767px) {
  /* Elementor Flexbox Containers */
  .elementor .e-con:has(> .e-con:has(.slg-sep-wrap)) {
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
  }
  .elementor .e-con > .e-con:has(.slg-sep-wrap) {
    width:100%!important;
    max-width:100%!important;
    flex:0 1 100%!important;
    min-width:0!important;
    align-self:stretch!important;
  }
  /* Elementor legacy two-column sections */
  .elementor .elementor-section:has(.slg-sep-wrap) > .elementor-container {
    flex-wrap:wrap!important;
  }
  .elementor .elementor-column:has(.slg-sep-wrap) {
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
    min-width:0!important;
  }
  .elementor .elementor-widget-shortcode:has(.slg-sep-wrap),
  .elementor .elementor-widget-shortcode:has(.slg-sep-wrap) > .elementor-widget-container,
  .elementor .elementor-shortcode:has(.slg-sep-wrap) {
    width:100%!important;max-width:100%!important;min-width:0!important;
  }
  .slg-sep-wrap .slg-sep-form {padding:clamp(12px,3.5vw,20px)!important;}
  .slg-sep-wrap .slg-sep-grid {grid-template-columns:minmax(0,1fr)!important;}
  .slg-sep-wrap .slg-sep-phone input {flex:1 1 auto;min-width:0!important;}
  .slg-sep-wrap .slg-sep-intro, .slg-sep-wrap .slg-sep-kicker {overflow-wrap:anywhere;}
}
/* On very narrow browser panes (e.g. foldables / small embedded columns),
   keep the GPS action accessible without covering the whole text entry. */
@container (max-width:380px) {
  .slg-sep-wrap .slg-sep-location-with-gps input:not([type=file]) {
    padding-right:52px!important;
  }
  .slg-sep-wrap .slg-sep-location-input .slg-sep-gps {
    min-width:38px!important;width:38px!important;max-width:38px!important;
    height:36px!important;min-height:36px!important;
    right:5px;padding:4px!important;
  }
  .slg-sep-wrap .slg-sep-gps-label {display:none!important;}
  .slg-sep-wrap .slg-sep-gps-icon {font-size:20px!important;}
}
@media screen and (max-width:359px){
 .slg-sep-wrap .slg-sep-form {padding:12px!important;border-radius:12px!important;}
 .slg-sep-wrap .slg-sep-company {font-size:12px;}
 .slg-sep-wrap .slg-sep-form-introduction h2 {font-size:20px;}
}

/* v2.0.0: screenshot-verified narrow mobile form fixes. */
.slg-sep-wrap .slg-sep-phone {display:flex!important;flex-wrap:nowrap!important;align-items:stretch;min-width:0;width:100%;overflow:hidden;}
.slg-sep-wrap .slg-sep-phone > span {display:inline-flex!important;flex:0 0 64px!important;width:64px!important;min-width:64px!important;max-width:64px!important;align-items:center;justify-content:center;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;line-height:1!important;padding:0 8px!important;}
.slg-sep-wrap .slg-sep-phone > input {display:block!important;flex:1 1 0%!important;width:1%!important;min-width:0!important;margin:0!important;border:0!important;border-radius:0!important;}
@media screen and (max-width:767px){
 .slg-sep-wrap .slg-sep-form{padding:16px 13px!important;}
 .slg-sep-wrap .slg-sep-branded-header{margin:0 0 16px!important;padding:15px 10px!important;}
 .slg-sep-wrap .slg-sep-form-introduction{margin-bottom:17px!important;}
 .slg-sep-wrap .slg-sep-form-introduction h2{margin-bottom:7px!important;line-height:1.25!important;}
 .slg-sep-wrap .slg-sep-form-introduction .slg-sep-intro{line-height:1.5!important;}
 .slg-sep-wrap .slg-sep-field{margin-bottom:14px!important;}
 .slg-sep-wrap .slg-sep-field label{margin-bottom:5px!important;}
 .slg-sep-wrap .slg-sep-field input:not([type=file]),.slg-sep-wrap .slg-sep-field select{min-height:48px!important;font-size:16px!important;}
 .slg-sep-wrap .slg-sep-phone > input {min-height:48px!important;height:48px!important;padding:10px 12px!important;}
 .slg-sep-wrap .slg-sep-phone > span{font-size:16px!important;}
 .slg-sep-wrap .slg-sep-consent{line-height:1.45!important;}
 .slg-sep-wrap .slg-sep-submit{min-height:49px!important;}
}
@media screen and (max-width:359px){
 .slg-sep-wrap .slg-sep-phone > span{flex-basis:56px!important;width:56px!important;min-width:56px!important;max-width:56px!important;}
}

/* GPS Google Maps preview link; respects small-screen widths */
.slg-sep-wrap .slg-sep-map-preview:not([hidden]){display:block;margin:8px 0 0;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.slg-sep-wrap .slg-sep-map-preview[hidden]{display:none!important}
.slg-sep-wrap .slg-sep-map-preview a{color:#1763a6;text-decoration:underline;font-weight:650}
.slg-sep-wrap input[type="hidden"]{display:none!important}

/* v2.5.0 – phone-width layout: reclaim Elementor's nested horizontal gutters.
   Scope is strictly the enquiry component and phone viewport; do not affect desktop. */
@media screen and (max-width:767px) {
  .slg-sep-wrap {
    position:relative!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:min(calc(100% + 64px), calc(100vw - 20px))!important;
    max-width:calc(100vw - 20px)!important;
    margin-left:0!important;
    margin-right:0!important;
    padding:0!important;
  }
  .slg-sep-wrap .slg-sep-form {
    width:100%!important;
    max-width:100%!important;
    padding:16px 12px!important;
    border-radius:16px!important;
  }
  .slg-sep-wrap .slg-sep-field,
  .slg-sep-wrap .slg-sep-location-input,
  .slg-sep-wrap .slg-sep-phone,
  .slg-sep-wrap .slg-sep-submit {width:100%!important;max-width:100%!important;min-width:0!important;}
  .slg-sep-wrap .slg-sep-field input:not([type=file]),
  .slg-sep-wrap .slg-sep-field select,
  .slg-sep-wrap .slg-sep-field textarea {width:100%!important;max-width:100%!important;min-width:0!important;}
  .slg-sep-wrap .slg-sep-branded-header {margin:0 0 15px!important;}
  .slg-sep-wrap .slg-sep-form-introduction {margin-bottom:17px!important;}
}
@media screen and (max-width:360px) {
  .slg-sep-wrap {width:min(calc(100% + 52px), calc(100vw - 16px))!important;max-width:calc(100vw - 16px)!important;}
  .slg-sep-wrap .slg-sep-form {padding:13px 10px!important;}
}
