.rsdev-root{--rs-primary:#1175c1;--rs-primary_hover:#075a99;--rs-accent:#14b8b0;--rs-background:#f4f8fc;--rs-surface:#ffffff;--rs-text:#172b46;--rs-muted:#617188;--rs-border:#d5e1ed;--rs-radius:14px;--rs-button-radius:10px;--rs-max:1060px;--rs-pad:48px;--rs-font:inherit;box-sizing:border-box;width:100%;max-width:100%;background:var(--rs-background,#f4f8fc);color:var(--rs-text,#172b46);font-family:var(--rs-font,inherit);padding:clamp(26px,4.5vw,var(--rs-pad,48px)) 18px;line-height:1.55;isolation:isolate}
.rsdev-root *{box-sizing:border-box}
.rsdev-root [hidden]{display:none!important}
.rsdev-shell{max-width:var(--rs-max,1060px);margin:0 auto;display:grid;grid-template-columns:minmax(200px,.83fr) minmax(0,1.17fr);gap:clamp(26px,5.5vw,92px);align-items:start}
.rsdev-heading{padding-top:12px}.rsdev-eyebrow{display:inline-flex;letter-spacing:.19em;font-size:11px;font-weight:800;color:var(--rs-primary);text-transform:uppercase;margin-bottom:13px}
.rsdev-heading h2{font-size:clamp(30px,3.8vw,49px);line-height:1.09;letter-spacing:-.035em;margin:0 0 16px!important;color:var(--rs-text);font-weight:800}
.rsdev-heading p{max-width:380px;margin:0;color:var(--rs-muted);font-size:15px}
.rsdev-left-image{display:block;margin:24px 0 0;max-width:100%;height:auto;width:auto;max-height:430px;object-fit:contain;object-position:left center;border-radius:var(--rs-radius)}
.rsdev-contact-form{width:100%;min-width:0;margin:0}.rsdev-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 16px}
.rsdev-field{grid-column:1/-1;min-width:0}.rsdev-field.rsdev-half{grid-column:span 1}
.rsdev-field>label:not(.rsdev-choice),.rsdev-fieldset legend{font-weight:680;display:block;font-size:13px;margin:0 0 8px;line-height:1.4;color:var(--rs-text)}
.rsdev-field>label span,.rsdev-fieldset legend span{color:var(--rs-primary)}
.rsdev-field input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.rsdev-field textarea,.rsdev-field select{appearance:auto;background:var(--rs-surface);color:var(--rs-text);width:100%;max-width:100%;min-height:49px;border:1px solid var(--rs-border);border-radius:var(--rs-radius);box-shadow:0 3px 11px rgba(22,49,77,.035);padding:11px 14px;font:inherit;font-size:14px;transition:border-color .18s,box-shadow .18s,background-color .18s;margin:0}
.rsdev-field textarea{display:block;resize:vertical;min-height:118px}.rsdev-field input::placeholder,.rsdev-field textarea::placeholder{color:var(--rs-muted);opacity:.75}
.rsdev-field input:focus-visible,.rsdev-field textarea:focus-visible,.rsdev-field select:focus-visible{outline:2px solid var(--rs-primary);outline-offset:2px;border-color:var(--rs-primary)}
.rsdev-fieldset{border:0;padding:0;margin:0;min-width:0}.rsdev-options{display:flex;flex-wrap:wrap;gap:12px 20px}.rsdev-choice{display:flex;align-items:flex-start;gap:9px;font-size:14px;line-height:1.5;font-weight:400;cursor:pointer;margin-top:6px;color:var(--rs-text)}
.rsdev-choice input[type=checkbox],.rsdev-choice input[type=radio]{width:17px;height:17px;flex:0 0 auto;accent-color:var(--rs-primary);margin:2px 0 0}.rsdev-choice span{min-width:0}
.rsdev-help{display:block;margin-top:6px;font-size:12px;color:var(--rs-muted)}
.rsdev-actions{margin-top:24px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.rsdev-submit:not(.rsdev-auctio-button),.rsdev-next:not(.rsdev-auctio-button),.rsdev-back{border-radius:var(--rs-button-radius);padding:14px 24px;min-height:50px;display:inline-flex;gap:16px;align-items:center;justify-content:center;font-weight:750;font-size:14px;line-height:1.3;cursor:pointer;transition:background .18s,transform .18s,box-shadow .18s,filter .18s;text-decoration:none}
.rsdev-mode-custom .rsdev-submit,.rsdev-next:not(.rsdev-auctio-button){border:0;background:var(--rs-primary);color:#fff;box-shadow:0 6px 18px rgba(11,72,130,.12)}
.rsdev-mode-custom .rsdev-submit:hover,.rsdev-next:not(.rsdev-auctio-button):hover{background:var(--rs-primary_hover);color:#fff;transform:translateY(-2px)}
/* WordPress block theme's primary button class takes precedence; JS may also sample the existing theme CTA. */
:where(.rsdev-mode-theme .rsdev-submit){background:var(--wp--preset--color--primary,var(--rs-primary));color:#fff;border:0;border-radius:var(--rs-button-radius);box-shadow:none}
.rsdev-mode-theme .rsdev-submit:not(.rsdev-auctio-button):hover{filter:brightness(.94)}
.rsdev-back{background:var(--rs-surface);color:var(--rs-text);border:1px solid var(--rs-border)}.rsdev-back:hover{background:var(--rs-background)}.rsdev-submit:disabled{opacity:.6;cursor:progress;transform:none}
.rsdev-submit:focus-visible,.rsdev-next:focus-visible,.rsdev-back:focus-visible{outline:3px solid var(--rs-accent);outline-offset:3px}
.rsdev-notice{min-height:0;font-size:14px}.rsdev-notice:not(:empty){padding:13px 16px;border-radius:var(--rs-radius);margin-top:16px}
.rsdev-notice.is-error{background:#fff2f1;color:#8d241c;border:1px solid #ffc3be}.rsdev-notice.is-success{background:#eaf8ef;color:#23613e;border:1px solid #a9dec0}
.rsdev-honeypot{position:absolute!important;left:-99999px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.rsdev-step-title{margin:0 0 16px!important;font-size:21px;color:var(--rs-text)}.rsdev-step-indicator{font-size:12px;margin-top:16px;color:var(--rs-muted)}
.rsdev-turnstile{margin-top:18px}.rsdev-auto-section{width:100%;display:block}
@media(max-width:760px){.rsdev-shell{grid-template-columns:1fr;gap:25px}.rsdev-heading{padding-top:0}.rsdev-root{padding:35px 18px}.rsdev-heading h2{font-size:32px}}
@media(max-width:480px){.rsdev-grid{grid-template-columns:1fr;gap:16px}.rsdev-field.rsdev-half{grid-column:1/-1}.rsdev-actions button{width:100%}.rsdev-actions{gap:10px}}
@media(prefers-reduced-motion:reduce){.rsdev-root *{transition:none!important;scroll-behavior:auto!important}}

@media(max-width:760px){.rsdev-left-image{margin-top:19px;max-height:280px}}

.rsdev-file-list{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0 0}.rsdev-file-item{display:inline-flex;align-items:center;gap:8px;background:var(--rs-surface);border:1px solid var(--rs-border);border-radius:7px;max-width:100%;padding:5px 7px 5px 10px;color:var(--rs-text);font-size:12px;overflow-wrap:anywhere}.rsdev-file-item span{min-width:0}.rsdev-file-remove{width:23px;height:23px;min-width:23px;padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important;color:var(--rs-muted)!important;cursor:pointer;line-height:1;font-size:19px;border-radius:4px}.rsdev-file-remove:hover{color:#b42318!important;background:#ffefef!important}

/* The Auctio Valoris CTA receives the theme’s real .btn.primary classes. Do not set its own geometry or hover treatment: the theme handles both. */
.rsdev-mode-theme .rsdev-submit.rsdev-auctio-button{font-family:inherit;line-height:1.65;cursor:pointer;max-width:100%;}
@media(max-width:760px){.rsdev-mode-theme .rsdev-actions .rsdev-auctio-button{width:100%;justify-content:space-between;}}

/* 1.2.0 — Modern form layout and guided progress */
.rsdev-visual-premium .rsdev-shell{grid-template-columns:minmax(230px,.78fr) minmax(0,1.22fr);gap:clamp(24px,5vw,76px)}
.rsdev-form-card{min-width:0;max-width:100%}
.rsdev-visual-premium .rsdev-form-card{background:var(--rs-surface);padding:clamp(22px,3.3vw,38px);border:1px solid var(--rs-border);border-radius:calc(var(--rs-radius) + 8px);box-shadow:0 20px 65px rgba(17,35,59,.065)}
.rsdev-form-intro{margin:0 0 25px!important;color:var(--rs-muted);font-size:14px;line-height:1.65}
.rsdev-guided .rsdev-form-intro{margin-bottom:22px!important}
.rsdev-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 29px!important;padding:0 0 22px!important;border-bottom:1px solid var(--rs-border)}
.rsdev-progress-item{display:flex;align-items:center;gap:9px;min-width:0;position:relative;opacity:.62;transition:opacity .22s}
.rsdev-progress-item.is-current,.rsdev-progress-item.is-done{opacity:1}
.rsdev-progress-number{width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:var(--rs-background);border:1px solid var(--rs-border);color:var(--rs-muted);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;transition:background .2s,color .2s,border .2s}
.rsdev-progress-item.is-current .rsdev-progress-number,.rsdev-progress-item.is-done .rsdev-progress-number{background:var(--rs-primary);border-color:var(--rs-primary);color:#fff}
.rsdev-progress-label{min-width:0;color:var(--rs-text);font-size:11px;font-weight:750;line-height:1.3;overflow-wrap:anywhere}
.rsdev-step-head{margin:0 0 22px}.rsdev-step-kicker{display:block;color:var(--rs-primary);font-weight:800;letter-spacing:.16em;font-size:10px;margin:0 0 6px}.rsdev-step-title{font-size:clamp(20px,2vw,26px)!important;letter-spacing:-.025em;line-height:1.3;margin:0!important;font-weight:800;color:var(--rs-text)}
.rsdev-inline-heading{grid-column:1/-1;margin:7px 0 0!important;font-size:20px;color:var(--rs-text)}
.rsdev-review-wrap{border:1px solid var(--rs-border);background:var(--rs-background);border-radius:var(--rs-radius);padding:18px;margin-top:20px}
.rsdev-review-wrap h4{font-size:16px;font-weight:800;color:var(--rs-text);margin:0 0 3px}.rsdev-review-helper{font-size:12px;color:var(--rs-muted);margin:0 0 18px}.rsdev-review{margin:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:12px 14px;font-size:13px}.rsdev-review dt{color:var(--rs-muted);font-weight:650;overflow-wrap:anywhere}.rsdev-review dd{margin:0;color:var(--rs-text);overflow-wrap:anywhere;white-space:pre-wrap}
.rsdev-visual-simple .rsdev-form-card{padding:0;background:transparent;border:0;box-shadow:none}
.rsdev-guided .rsdev-actions{border-top:1px solid var(--rs-border);padding-top:20px;margin-top:24px;justify-content:flex-end}
.rsdev-guided .rsdev-actions .rsdev-back{margin-right:auto}
.rsdev-actions .rsdev-next.rsdev-auctio-button{max-width:100%;cursor:pointer}
.rsdev-mode-theme .rsdev-next.rsdev-auctio-button{font-family:inherit;line-height:1.65}
.rsdev-guided .rsdev-next:not(.rsdev-auctio-button){background:var(--rs-primary);color:#fff;border:0;box-shadow:0 6px 18px rgba(11,72,130,.12)}
.rsdev-guided .rsdev-next:not(.rsdev-auctio-button):hover{background:var(--rs-primary_hover)}
/* Keep an accessible native input for AT/keyboard; render only the new upload surface. */
.rsdev-field .rsdev-file-native{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:0!important;opacity:0!important;overflow:hidden!important;clip-path:inset(50%)!important;pointer-events:none!important}
.rsdev-file-picker{position:relative;min-width:0}
.rsdev-dropzone{width:100%;min-height:170px;border:1.5px dashed var(--rs-border);border-radius:var(--rs-radius);background:var(--rs-background);display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;padding:22px 16px;cursor:pointer;text-align:center;transition:border-color .2s,background .2s,transform .2s;outline:none}
.rsdev-dropzone:hover,.rsdev-dropzone.is-dragging,.rsdev-file-picker:focus-within .rsdev-dropzone{border-color:var(--rs-primary);background:var(--rs-surface)}
.rsdev-dropzone.is-dragging{transform:scale(1.008);outline:2px solid var(--rs-primary);outline-offset:2px}
.rsdev-drop-icon{display:flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:15px;color:var(--rs-primary);background:var(--rs-surface);border:1px solid var(--rs-border)}
.rsdev-drop-icon svg{display:block!important;height:28px!important;width:28px!important;min-width:28px!important;min-height:28px!important;max-width:none!important;max-height:none!important;flex:none!important}
.rsdev-drop-copy{display:flex;flex-direction:column;gap:3px;font-size:13px;line-height:1.5;color:var(--rs-muted)}
.rsdev-drop-copy strong{font-size:14px;color:var(--rs-text);font-weight:760}
.rsdev-drop-browse{color:var(--rs-primary);text-decoration:underline;text-underline-offset:3px;font-weight:700}
.rsdev-file-hint{display:block;margin:9px 0 0;color:var(--rs-muted);font-size:11px;line-height:1.5}
.rsdev-file-summary{margin:10px 0 0;color:var(--rs-text);font-size:12px;font-weight:750}
.rsdev-file-list{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;margin:9px 0 0}
.rsdev-file-item{display:flex;justify-content:space-between;max-width:100%;min-width:0;padding:9px 9px 9px 12px;border-radius:8px;font-size:12px}
.rsdev-file-item>span{flex:1;min-width:0;overflow-wrap:anywhere}
.rsdev-file-remove{min-width:24px;flex:0 0 24px}
@media(max-width:900px){.rsdev-visual-premium .rsdev-shell{gap:24px}}
@media(max-width:760px){.rsdev-visual-premium .rsdev-shell{grid-template-columns:1fr}.rsdev-visual-premium .rsdev-form-card{padding:clamp(17px,4vw,28px)}.rsdev-progress{margin-bottom:20px!important}.rsdev-guided .rsdev-actions{gap:12px}}
@media(max-width:480px){.rsdev-progress{gap:4px}.rsdev-progress-item{flex-direction:column;justify-content:flex-start;text-align:center;gap:7px}.rsdev-progress-number{flex:0 0 27px;width:27px;height:27px}.rsdev-progress-label{font-size:10px}.rsdev-guided .rsdev-actions{display:grid;grid-template-columns:1fr}.rsdev-guided .rsdev-actions .rsdev-back{margin:0}.rsdev-review{grid-template-columns:1fr;gap:2px}.rsdev-review dd{margin-bottom:10px}}

/* 1.2.2: progress uses accessible buttons. Prevent theme-level button rules. */
.rsdev-root .rsdev-progress button.rsdev-progress-item{appearance:none;background:transparent;box-shadow:none;border:0;border-radius:0;margin:0;padding:0;max-width:100%;width:100%;min-height:0;min-width:0;cursor:pointer;color:inherit;text-transform:none;letter-spacing:normal;text-align:left;transform:none;outline-offset:4px}
.rsdev-root .rsdev-progress button.rsdev-progress-item:hover{transform:none;box-shadow:none;background:transparent}
.rsdev-root .rsdev-progress button.rsdev-progress-item[aria-disabled="true"]{cursor:default}
.rsdev-root .rsdev-progress button.rsdev-progress-item:focus-visible{outline:2px solid var(--rs-primary);border-radius:6px}
.rsdev-root .rsdev-progress-item.is-done .rsdev-progress-number{background:var(--rs-primary);color:#fff}
.rsdev-root.rsdev-js-ready .rsdev-file-native{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:0!important;opacity:0!important;clip-path:inset(50%)!important;pointer-events:none!important}
.rsdev-root .rsdev-dropzone:focus-visible{outline:2px solid var(--rs-primary);outline-offset:3px}

/* 1.2.3: native drop surface: the real file input covers the entire dropzone. */
.rsdev-root .rsdev-simple-form{width:100%;min-width:0;margin:0}
.rsdev-root .rsdev-dropzone{position:relative!important;isolation:isolate;overflow:hidden!important;min-height:144px;max-height:240px}
.rsdev-root .rsdev-field input.rsdev-file-native{position:absolute!important;inset:0!important;z-index:3!important;display:block!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;opacity:0!important;padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;clip-path:none!important;pointer-events:auto!important;cursor:pointer!important}
.rsdev-root .rsdev-drop-icon svg{display:block!important;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;max-width:24px!important;max-height:24px!important}

/* v1.2.4: compact upload area with a small icon aligned beside the text. */
.rsdev-root .rsdev-dropzone{min-height:84px!important;max-height:118px!important;padding:14px 17px!important;gap:12px!important;flex-direction:row!important;text-align:left!important;justify-content:flex-start!important;align-items:center!important}
.rsdev-root .rsdev-drop-icon{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;max-width:36px!important;max-height:36px!important;border-radius:10px!important;flex:0 0 36px!important}
.rsdev-root .rsdev-drop-icon svg{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important}
.rsdev-root .rsdev-drop-copy{align-items:flex-start!important;text-align:left!important;gap:1px!important;line-height:1.35!important}
.rsdev-root .rsdev-drop-copy strong{font-size:13px!important}
.rsdev-root .rsdev-file-hint{margin-top:7px!important;font-size:11px!important}
@media(max-width:480px){.rsdev-root .rsdev-dropzone{min-height:78px!important;max-height:120px!important;padding:11px 13px!important;gap:10px!important}}

/* 1.2.5 — Media in the introduction column keeps its original aspect ratio.
   --rsdev-image-room is computed from the *actual form edge* on wide layouts.
   Responsive single-column layout does not need an edge constraint: the image
   is naturally placed before the form and cannot extend below its bottom. */
.rsdev-root .rsdev-heading .rsdev-left-image {
    display: block;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: min(430px, var(--rsdev-image-room, 430px)) !important;
    object-fit: contain !important;
    object-position: left top !important;
    margin-left: 0;
    margin-right: 0;
}
@media (max-width: 760px) {
    .rsdev-root .rsdev-heading .rsdev-left-image {
        max-height: 280px !important;
    }
}
