/* HE-Reigns Forms Experience — shared across public, commerce and Client Workspace surfaces. */
:root{--hrc-form-ease-out:cubic-bezier(.23,1,.32,1);--hrc-form-ease-io:cubic-bezier(.77,0,.175,1)}
form[data-hrc-form]{position:relative}
form[data-hrc-form] button,form[data-hrc-form] input,form[data-hrc-form] select,form[data-hrc-form] textarea{touch-action:manipulation}
form[data-hrc-form] button[type=submit],form[data-hrc-form] [data-form-next],form[data-hrc-form] [data-form-back]{transition:transform .12s var(--hrc-form-ease-out),background-color .16s ease,border-color .16s ease,color .16s ease,opacity .16s ease}
form[data-hrc-form] button[type=submit]:active,form[data-hrc-form] [data-form-next]:active,form[data-hrc-form] [data-form-back]:active{transform:scale(.98)}
form[data-hrc-form].is-submitting button[type=submit]{cursor:wait;opacity:.72}
form[data-hrc-form] button.is-loading{position:relative;padding-right:46px}
form[data-hrc-form] button.is-loading::after{content:"";position:absolute;right:17px;top:50%;width:15px;height:15px;margin-top:-8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:hrc-form-spin .65s linear infinite}
@keyframes hrc-form-spin{to{transform:rotate(360deg)}}

.hrc-field-error{display:block;margin-top:2px;color:#8b241c;font-size:14px;line-height:1.4;font-weight:700}
.is-invalid>input,.is-invalid>select,.is-invalid>textarea,input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#a43d34!important;box-shadow:0 0 0 3px rgba(164,61,52,.12)!important}
.is-valid>input:not([type=checkbox]):not([type=radio]),.is-valid>select,.is-valid>textarea{border-color:#6f8f43}
.hrc-error-summary{margin:0 0 24px;padding:16px 18px;border:1px solid #a43d34;border-left-width:4px;background:#fff4f1;color:#6f1d17;font-size:14px;line-height:1.5;outline:none}
.hrc-error-summary:focus-visible{box-shadow:0 0 0 3px rgba(184,255,69,.42)}
.hrc-error-summary strong{display:block;margin-bottom:8px;font-size:15px}.hrc-error-summary ul{margin:0;padding-left:20px}.hrc-error-summary a{color:inherit;font-weight:760;text-underline-offset:3px}

.hrc-turnstile-wrap{grid-column:1/-1;min-height:70px;padding:12px 0 0;border-top:1px solid var(--hrc-line,#d7dbd4)}
.hrc-turnstile{min-height:65px;max-width:520px}.hrc-turnstile-note{margin:7px 0 0;color:#687269;font-size:14px;line-height:1.4}

.hrc-form-steps{display:flex;align-items:center;gap:0;margin:0 0 28px;border-top:1px solid #bec5bd;border-bottom:1px solid #bec5bd}
.hrc-form-step-indicator{display:flex;align-items:center;gap:9px;min-height:48px;padding:10px 16px;border-right:1px solid #bec5bd;color:#68736b;font-size:14px;font-weight:760}
.hrc-form-step-indicator:first-child{padding-left:0}.hrc-form-step-indicator span{display:grid;place-items:center;width:26px;height:26px;border:1px solid #8e9990;font-variant-numeric:tabular-nums}
.hrc-form-step-indicator.is-active{color:#152018}.hrc-form-step-indicator.is-active span{border-color:#315f0a;background:var(--hrc-signal,#b8ff45);color:#07110c}
[data-form-step]{transform:translateY(0);opacity:1;transition:transform .2s var(--hrc-form-ease-out),opacity .16s ease}
[data-form-step].is-leaving{transform:translateY(-7px);opacity:0}
[data-form-step].is-entering{transform:translateY(8px);opacity:0}
.hrc-form-step-heading{margin:0 0 22px;outline:none}.hrc-form-step-heading h2,.hrc-form-step-heading h3{margin:0;font-size:22px;line-height:1.2;letter-spacing:-.025em}.hrc-form-step-heading p{margin:7px 0 0;color:#667168;font-size:14px;line-height:1.55}
.hrc-form-step-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:26px;padding-top:22px;border-top:1px solid var(--hrc-line,#d7dbd4)}
.hrc-whatsapp-same{display:flex;align-items:center;gap:9px;margin-top:8px;color:#536057;font-size:14px;line-height:1.4}.hrc-whatsapp-same input{width:18px!important;height:18px!important;min-height:0!important;margin:0;accent-color:#315f0a}

/* Toasts announce status without taking focus. */
.hrc-toast-region{position:fixed;z-index:1200;right:22px;top:22px;width:min(390px,calc(100vw - 32px));display:grid;gap:10px;pointer-events:none}
body.admin-bar .hrc-toast-region{top:54px}
.hrc-toast{display:grid;grid-template-columns:28px minmax(0,1fr) 40px;align-items:start;gap:10px;min-height:64px;padding:12px 8px 12px 14px;border:1px solid #829077;border-left:4px solid #5e8c25;background:#fffef9;color:#223027;box-shadow:0 18px 45px rgba(5,13,8,.16);opacity:0;transform:translateY(-10px) scale(.985);pointer-events:auto;transition:transform .2s var(--hrc-form-ease-out),opacity .16s ease}
.hrc-toast.is-visible{opacity:1;transform:none}.hrc-toast.is-leaving{opacity:0;transform:translateY(-7px) scale(.99);transition-duration:.16s}
.hrc-toast--error{border-color:#a84b43;border-left-color:#a84b43;background:#fff5f2;color:#6f201a}
.hrc-toast__icon{display:grid;place-items:center;width:26px;height:26px;border:1px solid currentColor;font-size:14px;font-weight:900;line-height:1}.hrc-toast__copy{align-self:center;padding:2px 0;font-size:14px;line-height:1.45;font-weight:680}.hrc-toast__close{width:40px;height:40px;border:0;background:transparent;color:inherit;font-size:24px;line-height:1;cursor:pointer;transition:background-color .14s ease,transform .12s var(--hrc-form-ease-out)}.hrc-toast__close:active{transform:scale(.94)}
@media(hover:hover) and (pointer:fine){.hrc-toast__close:hover{background:rgba(7,17,12,.07)}}

/* Purposeful dialog used when a flow must be interrupted to complete required account data. */
.hrc-dialog{width:min(620px,calc(100vw - 32px));max-height:min(760px,calc(100dvh - 32px));padding:0;border:1px solid #8d9890;background:#fffef9;color:#07110c;box-shadow:0 32px 88px rgba(0,0,0,.32);opacity:0;transform:translateY(12px) scale(.985);transition:transform .22s var(--hrc-form-ease-out),opacity .16s ease,overlay .16s ease allow-discrete,display .16s ease allow-discrete}
.hrc-dialog[open]{opacity:1;transform:none}.hrc-dialog.is-closing{opacity:0;transform:translateY(8px) scale(.99)}
.hrc-dialog::backdrop{background:rgba(3,9,5,.76);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);opacity:1;transition:opacity .16s ease}
.hrc-dialog.is-closing::backdrop{opacity:0}
.hrc-dialog__header{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:18px;padding:24px 24px 20px;border-bottom:1px solid #d3d8d1}.hrc-dialog__header h2{margin:0;font-size:28px;line-height:1.05;letter-spacing:-.035em}.hrc-dialog__header p{margin:8px 0 0;color:#5f6a62;font-size:14px;line-height:1.55}.hrc-dialog__close{width:44px;height:44px;border:1px solid #aeb6ae;background:transparent;font-size:25px;cursor:pointer;transition:background-color .14s ease,transform .12s var(--hrc-form-ease-out)}.hrc-dialog__close:active{transform:scale(.94)}
.hrc-dialog__body{padding:24px}.hrc-dialog__footer{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;padding-top:20px;border-top:1px solid #d5dad3}
@starting-style{.hrc-dialog[open]{opacity:0;transform:translateY(12px) scale(.985)}}

@media(max-width:700px){
  .hrc-form-steps{display:grid;grid-template-columns:1fr 1fr}.hrc-form-step-indicator{padding:10px;border-right:1px solid #bec5bd}.hrc-form-step-indicator:first-child{padding-left:10px}
  .hrc-toast-region{right:16px;top:16px;width:calc(100vw - 32px)}body.admin-bar .hrc-toast-region{top:62px}
  .hrc-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.hrc-dialog__header,.hrc-dialog__body{padding:20px}
}
@media(prefers-reduced-motion:reduce){
  [data-form-step],.hrc-toast,.hrc-dialog,.hrc-dialog::backdrop,form[data-hrc-form] button{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
}
@media(forced-colors:active){.hrc-toast,.hrc-dialog,.hrc-error-summary,.hrc-form-step-indicator{border-color:CanvasText}.hrc-form-step-indicator.is-active span{background:Highlight;color:HighlightText}}

/* Completion feedback is structural, not decorative. */
.hrc-form-step-indicator.is-complete{color:#344338}.hrc-form-step-indicator.is-complete span{border-color:#69845a;background:#edf5e7;color:#29411c}.hrc-form-step-indicator.is-complete span::after{content:"✓"}.hrc-form-step-indicator.is-complete span{font-size:0}.hrc-form-step-indicator.is-complete span::after{font-size:14px;font-weight:900}

/* Auth is a fixed application surface; interaction-only Turnstile must not reserve editorial space. */
.portal-auth-form .hrc-turnstile-wrap{min-height:0;padding-top:0;border-top:0}.portal-auth-form .hrc-turnstile{min-height:0}.portal-auth-form .hrc-turnstile-note{display:none}

.portal-contact-summary{display:grid;gap:4px;margin-bottom:18px;padding:14px 16px;border:1px solid #c4cbc3;background:#f4f6f1}.portal-contact-summary span,.portal-contact-summary small{font-size:14px;line-height:1.4;color:#657067}.portal-contact-summary strong{font-size:15px;line-height:1.35;overflow-wrap:anywhere}.portal-contact-field{margin-top:14px}
html.hrc-dialog-open{overflow:hidden}.hrc-dialog{overflow:hidden}.hrc-dialog__body{max-height:calc(100dvh - 124px);overflow:auto;overscroll-behavior:contain}
