/* Sullivan-Palatek Forms 1.1.0 - all public styles are namespaced. */
.spf-root{--spf-accent:#00a99d;--spf-info-bg:#292c2f;--spf-info-color:#fff;--spf-form-bg:#fff;--spf-max-width:1600px;color:#333;font:inherit;line-height:1.55;max-width:100%;position:relative}
.spf-root,.spf-root *,.spf-root *:before,.spf-root *:after{box-sizing:border-box}
.spf-root .spf-shell{width:100%;max-width:var(--spf-max-width);margin:0 auto;display:grid;grid-template-columns:minmax(245px,var(--spf-info-width,35%)) minmax(0,1fr);border:1px solid #d8dfe1;background:var(--spf-form-bg);align-items:stretch;min-width:0}
.spf-root .spf-intro{background:var(--spf-info-bg);position:relative;color:var(--spf-info-color);padding:clamp(30px,3.25vw,55px);min-width:0;overflow-wrap:break-word}
.spf-root .spf-intro:before{position:absolute;top:0;left:0;right:0;background:var(--spf-accent);height:5px;content:""}
.spf-root .spf-eyebrow{display:block;margin:0 0 14px;color:var(--spf-accent);text-transform:uppercase;letter-spacing:.085em;font-size:11px;font-weight:800;line-height:1.4}
.spf-root .spf-intro-heading{font-size:clamp(24px,2.4vw,34px);line-height:1.2;letter-spacing:-.02em;font-weight:800;text-transform:uppercase;margin:0 0 17px;color:var(--spf-info-color);max-width:100%}
.spf-root .spf-intro-copy{font-size:14px;line-height:1.85;margin:0;color:var(--spf-info-color);opacity:.95}
.spf-root .spf-benefits{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:12px}
.spf-root .spf-benefits li{list-style:none;margin:0;position:relative;padding-left:18px;color:var(--spf-info-color);font-size:12px;line-height:1.5;font-weight:750}
.spf-root .spf-benefits li:before{position:absolute;left:0;top:7px;width:7px;height:7px;background:var(--spf-accent);content:""}
.spf-root .spf-form-panel{padding:clamp(30px,3.2vw,54px);background:var(--spf-form-bg);min-width:0;color:#252b2d}
.spf-root .spf-form-heading{color:#23282b;margin:0 0 26px;font-size:clamp(17px,1.35vw,20px);text-transform:uppercase;line-height:1.35;font-weight:800;letter-spacing:-.01em}
.spf-root .spf-form{display:block;margin:0;padding:0;width:100%;border:0;background:transparent}
.spf-root .spf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;align-items:start}
.spf-root.spf-cols-1 .spf-grid{grid-template-columns:1fr}
.spf-root .spf-field{min-width:0;display:block;margin:0}
.spf-root .spf-field.spf-field-full{grid-column:1/-1}
.spf-root .spf-label{display:block;color:#2d373b;font-size:12px;font-weight:750;line-height:1.45;margin:0 0 6px}
.spf-root .spf-required{color:var(--spf-accent);font-weight:900}
.spf-root .spf-field input:not([type=radio]):not([type=checkbox]),.spf-root .spf-field select,.spf-root .spf-field textarea{width:100%;max-width:none;min-width:0;min-height:45px;box-shadow:none;border:1px solid #cbd2d4;border-radius:0;outline:none;background:#fff;color:#243034;font-size:13px;line-height:1.4;font-weight:400;padding:10px 12px;margin:0;font-family:inherit;text-transform:none;letter-spacing:normal}
.spf-root .spf-field textarea{min-height:92px;resize:vertical}
.spf-root .spf-field input:focus,.spf-root .spf-field select:focus,.spf-root .spf-field textarea:focus{border-color:var(--spf-accent)!important;outline:2px solid color-mix(in srgb,var(--spf-accent) 18%,transparent)!important;outline-offset:0}
.spf-root .spf-field input::placeholder,.spf-root .spf-field textarea::placeholder{color:#94a0a6;opacity:1}
.spf-root .spf-field select{appearance:auto;cursor:pointer}
.spf-root .spf-options{border:1px solid #dce1e3;padding:12px 14px;display:grid;gap:8px;min-height:45px}
.spf-root .spf-option,.spf-root .spf-single-check{display:flex;gap:9px;align-items:flex-start;color:#303c40;font-size:13px;line-height:1.5;cursor:pointer;margin:0}
.spf-root .spf-option input,.spf-root .spf-single-check input{width:16px;height:16px;flex:0 0 16px;margin:2px 0 0;accent-color:var(--spf-accent);cursor:pointer}
.spf-root .spf-single-check{padding:9px 0}
.spf-root .spf-help{font-size:11px;color:#748087;line-height:1.6;margin:6px 0 0}
.spf-root .spf-footer{display:flex;justify-content:flex-end;margin-top:22px;gap:10px}
.spf-root .spf-submit,.spf-root .spf-trigger{border:1px solid var(--spf-accent)!important;border-radius:0!important;color:#fff!important;background:var(--spf-accent)!important;display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:48px;padding:13px 24px;text-align:center;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0;line-height:1.25;white-space:normal;cursor:pointer;font-family:inherit;box-shadow:none;text-decoration:none!important;transition:filter .15s ease,transform .15s ease}
.spf-root .spf-submit:hover,.spf-root .spf-trigger:hover,.spf-root .spf-submit:focus-visible,.spf-root .spf-trigger:focus-visible{filter:brightness(.91);transform:translateY(-1px)}
.spf-root .spf-submit:disabled{cursor:wait;opacity:.68;transform:none}
.spf-root .spf-submit-arrow{font-size:17px;line-height:1}
.spf-root .spf-notice{border-left:4px solid var(--spf-accent);padding:15px 18px;margin:18px 0 0;color:#205348;background:#eef9f6;font-size:13px;font-weight:650;outline:none}
.spf-root .spf-notice.is-error{border-left-color:#b63b43;background:#fff4f3;color:#8c3136}
.spf-root .spf-notice[hidden],.spf-root .spf-modal[hidden]{display:none!important}
.spf-root .spf-trap{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.spf-root .spf-noscript{margin-top:10px;font-size:11px;color:#7d888b}
/* Alternate placements */
.spf-root.spf-position-right .spf-shell{grid-template-columns:minmax(0,1fr) minmax(245px,var(--spf-info-width,35%))}
.spf-root.spf-position-right .spf-intro{order:2}
.spf-root.spf-position-right .spf-form-panel{order:1}
.spf-root.spf-layout-stacked .spf-shell,.spf-root.spf-position-top .spf-shell,.spf-root.spf-position-bottom .spf-shell{grid-template-columns:1fr}
.spf-root.spf-position-bottom .spf-intro{order:2}
.spf-root.spf-position-bottom .spf-form-panel{order:1}
.spf-root.spf-layout-form_only .spf-shell{grid-template-columns:1fr}
.spf-root.spf-layout-form_only .spf-form-panel{padding:clamp(25px,3.4vw,52px)}
/* Popup launchers and panels */
.spf-root .spf-trigger-floating{position:fixed;bottom:23px;right:24px;z-index:999970;box-shadow:0 9px 25px rgba(0,0,0,.2)!important}
.spf-root .spf-trigger-floating.spf-float-bottom-left{left:24px;right:auto}
.spf-root .spf-modal{position:fixed;inset:0;z-index:999980;display:grid;place-items:center;padding:22px;isolation:isolate}
.spf-root .spf-modal-backdrop{position:absolute;inset:0;background:rgba(18,23,26,.76);z-index:0}
.spf-root .spf-dialog{position:relative;z-index:1;width:min(100%,1150px);max-height:min(92vh,970px);max-height:min(92dvh,970px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 22px 65px rgba(0,0,0,.36);background:#fff;outline:none}
.spf-root .spf-modal-standard .spf-dialog{width:min(100%,800px)}
.spf-root .spf-modal-standard .spf-shell{grid-template-columns:1fr}
.spf-root .spf-modal-standard .spf-intro{padding:28px 34px}
.spf-root .spf-modal-standard .spf-form-panel{padding:28px 34px}
.spf-root .spf-modal .spf-shell{max-width:none;border:0}
.spf-root .spf-modal-close{position:absolute;z-index:7;top:10px;right:11px;width:34px;height:34px;display:grid;place-items:center;border:1px solid #b9c4c6;background:#fff;color:#26363a;font-size:26px;cursor:pointer;border-radius:0;line-height:1;padding:0;box-shadow:0 1px 10px rgba(0,0,0,.08)}
.spf-root .spf-modal-close:hover{background:#ebf7f4;border-color:var(--spf-accent)}
.spf-root .spf-modal-top{align-items:start}
.spf-root .spf-modal-bottom{align-items:end}
.spf-root .spf-modal-left{place-items:stretch start;padding:0}
.spf-root .spf-modal-right{place-items:stretch end;padding:0}
.spf-root .spf-modal-left .spf-dialog,.spf-root .spf-modal-right .spf-dialog{width:min(100%,810px);height:100%;max-height:100vh;max-height:100dvh}
.spf-root .spf-modal-left .spf-shell,.spf-root .spf-modal-right .spf-shell{grid-template-columns:1fr}
.spf-root .spf-modal-left .spf-intro,.spf-root .spf-modal-right .spf-intro{padding:28px 35px}
.spf-root .spf-modal-left .spf-form-panel,.spf-root .spf-modal-right .spf-form-panel{padding:28px 35px}
.spf-root .spf-modal-left .spf-intro-heading,.spf-root .spf-modal-right .spf-intro-heading{max-width:630px}
body.spf-modal-open{overflow:hidden!important}
@media(max-width:900px){.spf-root .spf-shell{grid-template-columns:minmax(220px,var(--spf-info-width,35%)) minmax(0,1fr)}.spf-root.spf-position-right .spf-shell{grid-template-columns:minmax(0,1fr) minmax(220px,var(--spf-info-width,35%))}.spf-root .spf-form-panel,.spf-root .spf-intro{padding:32px 25px}.spf-root .spf-grid{gap:15px}.spf-root .spf-modal .spf-shell{grid-template-columns:1fr}.spf-root .spf-modal .spf-intro{padding:30px}.spf-root .spf-modal .spf-form-panel{padding:30px}}
@media(max-width:700px){.spf-root .spf-shell,.spf-root.spf-position-right .spf-shell{grid-template-columns:1fr}.spf-root .spf-intro{padding:31px 24px}.spf-root .spf-form-panel{padding:30px 24px}.spf-root .spf-intro-heading{font-size:24px;max-width:430px}.spf-root .spf-benefits{grid-template-columns:1fr 1fr;gap:7px 16px;margin-top:18px}.spf-root .spf-grid{grid-template-columns:1fr}.spf-root .spf-field{grid-column:1/-1}.spf-root .spf-footer{justify-content:stretch}.spf-root .spf-submit{width:100%}.spf-root .spf-modal{padding:0}.spf-root .spf-dialog{width:100%!important;max-height:100vh;max-height:100dvh;border:0}.spf-root .spf-modal-close{top:9px;right:9px}.spf-root .spf-modal .spf-intro{padding:30px 24px}.spf-root .spf-modal .spf-form-panel{padding:30px 24px}.spf-root .spf-trigger-floating{bottom:14px;right:14px;padding:12px 16px;font-size:11px}.spf-root .spf-trigger-floating.spf-float-bottom-left{left:14px;right:auto}}
@media(max-width:420px){.spf-root .spf-benefits{grid-template-columns:1fr}.spf-root .spf-form-heading{font-size:17px}}
@media(prefers-reduced-motion:reduce){.spf-root .spf-trigger,.spf-root .spf-submit{transition:none}}
@media print{.spf-root .spf-modal,.spf-root .spf-trigger-floating{display:none!important}}

/* Stacked and form-only choices always override sidebar ratios on tablets. */
@media(max-width:900px){.spf-root.spf-layout-stacked .spf-shell,.spf-root.spf-layout-form_only .spf-shell,.spf-root.spf-position-top .spf-shell,.spf-root.spf-position-bottom .spf-shell{grid-template-columns:1fr}}


/* v1.1.0: explicit text colors, isolated to SP Forms and resilient to WP theme overrides. */
.spf-root[data-spf-root] .spf-intro .spf-eyebrow {color:var(--spf-info-kicker-color,var(--spf-accent))!important}
.spf-root[data-spf-root] .spf-intro .spf-intro-heading {color:var(--spf-info-heading-color,var(--spf-info-color))!important}
.spf-root[data-spf-root] .spf-intro .spf-intro-copy {color:var(--spf-info-body-color,var(--spf-info-color))!important}
.spf-root[data-spf-root] .spf-intro .spf-benefits li {color:var(--spf-info-bullets-color,var(--spf-info-color))!important}
.spf-root[data-spf-root] .spf-form-panel .spf-form-heading {color:var(--spf-form-heading-color,#23282b)!important}
.spf-root[data-spf-root] .spf-form-panel .spf-label,
.spf-root[data-spf-root] .spf-form-panel .spf-single-check {color:var(--spf-field-label-color,#2d373b)!important}
.spf-root[data-spf-root] .spf-form-panel .spf-options .spf-option {color:var(--spf-option-text-color,#303c40)!important}
.spf-root[data-spf-root] .spf-form-panel .spf-field input:not([type=radio]):not([type=checkbox]),
.spf-root[data-spf-root] .spf-form-panel .spf-field select,
.spf-root[data-spf-root] .spf-form-panel .spf-field textarea {color:var(--spf-input-text-color,#243034)!important}
.spf-root[data-spf-root] .spf-form-panel .spf-field input::placeholder,
.spf-root[data-spf-root] .spf-form-panel .spf-field textarea::placeholder {color:var(--spf-placeholder-color,#94a0a6)!important;opacity:1!important}
.spf-root[data-spf-root] .spf-form-panel .spf-field .spf-help {color:var(--spf-help-text-color,#748087)!important}
.spf-root[data-spf-root] .spf-form-panel .spf-submit,
.spf-root[data-spf-root] .spf-form-panel .spf-submit>span {color:var(--spf-submit-text-color,#fff)!important}
