/* HNS intake forms — wizard styles (ported verbatim from the WP hns-forms plugin)
   plus the distraction-free "form page" chrome. Loaded via extraCss on the three
   form pages. The brick watermark reuses the global hnsLogoDrift keyframe already
   shipped in the inner head CSS. */

/* ===================================================================
 * Wizard (ported from hns_forms_assets <style id="hns-forms-css">)
 * =================================================================== */
.hns-form{--c:#2CC4EE;--c2:#1aa9d4;--ink:#0A0C00;--mut:#5a6068;max-width:680px;margin:6px auto 56px;padding:0 18px;box-sizing:border-box;color:#2b2f36;}
.hns-form *{box-sizing:border-box;}
.hns-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden;}
/* header */
.hns-form-head{text-align:center;margin:8px 0 22px;}
.hns-form-eyebrow{display:inline-block;color:var(--c);font-weight:800;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px;}
.hns-form-title{font-size:clamp(2rem,5vw,2.7rem);font-weight:800;color:var(--ink);line-height:1.1;margin:0 0 12px;}
.hns-form-intro{max-width:540px;margin:0 auto;color:var(--mut);font-size:1.04rem;line-height:1.6;}
/* progress */
.hns-form-prog{display:flex;align-items:center;gap:14px;margin:0 0 20px;padding:0 0 18px;border-bottom:1px solid #f0f2f4;}
.hns-form-prog-bar{flex:1;height:8px;border-radius:999px;background:#e7ebef;overflow:hidden;}
.hns-form-prog-fill{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,var(--c),var(--c2));transition:width .5s cubic-bezier(.16,.84,.28,1);}
.hns-form-prog-txt{font-size:.82rem;font-weight:700;color:#8a9099;white-space:nowrap;}
.hns-form-prog-txt .hns-form-stepno{color:var(--ink);}
/* card */
.hns-form-inner{position:relative;background:#fff;border:1px solid #eef0f2;border-radius:22px;box-shadow:0 18px 50px rgba(16,24,40,.10);padding:30px 30px 26px;}
@media(max-width:560px){.hns-form-inner{padding:24px 20px 22px;}}
.hns-form [hidden]{display:none!important;} /* beat .hns-fbtn's display:inline-flex */
.hns-fstep{border:0;margin:0;padding:0;min-inline-size:0;}
.hns-fstep[hidden]{display:none;}
@keyframes hnsStepIn{0%{opacity:0;transform:translateY(26px) scale(.985);filter:blur(6px)}60%{filter:blur(0)}100%{opacity:1;transform:none;filter:blur(0)}}
.hns-fstep.is-active{animation:hnsStepIn .5s cubic-bezier(.16,.84,.28,1) both;}
.hns-fstep-head{margin:0 0 20px;}
.hns-fstep-h{font-size:1.45rem;font-weight:800;color:var(--ink);margin:0 0 5px;line-height:1.2;}
.hns-fstep-sub{margin:0;color:var(--mut);font-size:.96rem;line-height:1.5;}
.hns-fstep-body>*{animation:hnsStepIn .5s cubic-bezier(.16,.84,.28,1) both;}
.hns-fstep-body>*:nth-child(2){animation-delay:.06s;}
.hns-fstep-body>*:nth-child(3){animation-delay:.12s;}
.hns-fstep-body>*:nth-child(4){animation-delay:.18s;}
.hns-req{color:var(--c2);margin-left:3px;}
/* text fields — floating label */
.hns-fld{position:relative;margin:0 0 26px;}
.hns-fld:last-child{margin-bottom:6px;}
.hns-in{width:100%;font-family:inherit;font-size:1.04rem;color:var(--ink);background:#fff;border:0;border-bottom:2px solid #d8dde2;border-radius:0;padding:22px 2px 9px;outline:none;transition:border-color .2s;-webkit-appearance:none;appearance:none;}
textarea.hns-in{resize:vertical;min-height:84px;line-height:1.5;}
.hns-in:focus{border-color:var(--c);}
.hns-lbl{position:absolute;left:2px;top:20px;color:#8a9099;font-size:1.04rem;pointer-events:none;transition:transform .18s ease,color .18s ease,font-size .18s ease;transform-origin:left top;}
.hns-in:focus+.hns-lbl,.hns-in:not(:placeholder-shown)+.hns-lbl{transform:translateY(-18px);font-size:.74rem;font-weight:700;color:var(--c2);letter-spacing:.02em;}
.hns-hint{display:block;margin-top:6px;font-size:.8rem;color:#a2a8b0;}
.hns-fld.has-error .hns-in{border-color:#e0533d;}
.hns-fld.has-error .hns-lbl{color:#e0533d;}
/* choices (pills) */
.hns-choice{margin:0 0 24px;}
.hns-choice.has-error .hns-choice-q{color:#e0533d;}
.hns-choice-q{font-size:1.06rem;font-weight:700;color:var(--ink);margin:0 0 13px;line-height:1.4;}
.hns-choice-hint{font-weight:600;font-size:.8rem;color:#a2a8b0;text-transform:none;letter-spacing:0;}
.hns-opts{display:flex;flex-direction:column;gap:10px;}
.hns-opt{position:relative;display:flex;align-items:center;gap:13px;padding:14px 16px;border:1.6px solid #e4e8ec;border-radius:14px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s,transform .08s;-webkit-tap-highlight-color:transparent;}
.hns-opt:hover{border-color:var(--c);background:#f6fdff;}
.hns-opt:active{transform:scale(.992);}
.hns-opt input{position:absolute;opacity:0;width:1px;height:1px;}
.hns-opt-box{flex:0 0 auto;width:22px;height:22px;border:2px solid #c4ccd2;border-radius:7px;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s;}
.hns-opt input[type=radio]+.hns-opt-box{border-radius:50%;}
.hns-opt-box::after{content:"";width:11px;height:11px;border-radius:4px;background:#fff;transform:scale(0);transition:transform .16s cubic-bezier(.3,1.4,.5,1);}
.hns-opt input[type=radio]+.hns-opt-box::after{border-radius:50%;}
.hns-opt-txt{font-size:.99rem;line-height:1.4;color:#33383f;}
.hns-opt input:checked+.hns-opt-box{background:var(--c);border-color:var(--c);}
.hns-opt input:checked+.hns-opt-box::after{transform:scale(1);}
.hns-opt input:checked~.hns-opt-txt{color:var(--ink);font-weight:600;}
.hns-opt:has(input:checked){border-color:var(--c);background:#eafaff;box-shadow:0 3px 12px rgba(44,196,238,.18);}
.hns-opt input:focus-visible+.hns-opt-box{outline:2px solid var(--c);outline-offset:2px;}
.hns-opt-confirm{align-items:flex-start;}
.hns-opt-confirm .hns-opt-box{margin-top:1px;}
/* review */
.hns-review{display:flex;flex-direction:column;gap:2px;}
.hns-review-row{display:flex;flex-wrap:wrap;gap:2px 14px;padding:13px 0;border-bottom:1px solid #f0f2f4;}
.hns-review-row:last-child{border-bottom:0;}
.hns-review-q{flex:1 1 180px;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#8a9099;}
.hns-review-a{flex:2 1 240px;font-size:1rem;color:var(--ink);font-weight:600;}
/* nav */
.hns-form-nav{display:flex;align-items:center;gap:12px;margin-top:24px;}
.hns-fbtn{font-family:inherit;font-weight:800;font-size:1rem;border:0;border-radius:999px;padding:14px 28px;cursor:pointer;line-height:1;transition:transform .14s,box-shadow .14s,background .14s,color .14s;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center;gap:9px;}
.hns-fbtn-next,.hns-fbtn-submit{background:var(--c);color:var(--ink)!important;box-shadow:0 7px 20px rgba(44,196,238,.4);margin-left:auto;}
.hns-fbtn-next:hover,.hns-fbtn-submit:hover{transform:translateY(-2px);background:var(--c2);box-shadow:0 11px 26px rgba(44,196,238,.5);}
.hns-fbtn-back{background:transparent;color:#6a7077!important;padding:14px 18px;}
.hns-fbtn-back:hover{color:var(--ink)!important;}
.hns-fbtn-submit[disabled]{opacity:.75;cursor:default;transform:none;}
.hns-spin{width:17px;height:17px;border:2.5px solid rgba(10,12,0,.25);border-top-color:var(--ink);border-radius:50%;display:none;animation:hnsSpin .7s linear infinite;}
.hns-fbtn-submit.is-loading .hns-spin{display:inline-block;}
.hns-fbtn-submit.is-loading .hns-fbtn-lbl{opacity:.6;}
@keyframes hnsSpin{to{transform:rotate(360deg);}}
.hns-form-err{margin:16px 0 0;padding:11px 15px;border-radius:10px;background:#fdecea;color:#b42318;font-size:.92rem;font-weight:600;text-align:center;}
/* success */
.hns-form-done{text-align:center;background:#fff;border:1px solid #eef0f2;border-radius:22px;box-shadow:0 18px 50px rgba(16,24,40,.10);padding:48px 30px 42px;animation:hnsStepIn .5s ease both;}
.hns-done-check{width:90px;height:90px;margin:0 auto 22px;border-radius:50%;background:#eafaff;display:flex;align-items:center;justify-content:center;}
.hns-done-check svg{width:58px;height:58px;}
.hns-done-circle{stroke:var(--c);stroke-width:3;stroke-dasharray:151;stroke-dashoffset:151;animation:hnsDraw .6s cubic-bezier(.65,0,.45,1) .1s forwards;}
.hns-done-tick{stroke:var(--c);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:hnsDraw .35s cubic-bezier(.65,0,.45,1) .65s forwards;}
@keyframes hnsDraw{to{stroke-dashoffset:0;}}
.hns-done-h{font-size:1.7rem;font-weight:800;color:var(--ink);margin:0 0 10px;}
.hns-done-p{max-width:440px;margin:0 auto 24px;color:var(--mut);font-size:1.02rem;line-height:1.6;}
.hns-done-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
.hns-done-row .hns-fbtn{margin:0;} /* cancel the form-nav margin-left:auto so the row stays centered */
.hns-done-ig{border:2px solid #e4e8ec;}
.hns-done-redir{margin:18px 0 0;color:var(--mut);font-size:.85rem;}
.hns-done-count{font-weight:700;color:var(--ink);}
@media(prefers-reduced-motion:reduce){.hns-fstep.is-active,.hns-fstep-body>*,.hns-form-done{animation:none!important;}.hns-done-circle,.hns-done-tick{animation:none!important;stroke-dashoffset:0!important;}.hns-form-prog-fill{transition:none!important;}}

/* ===================================================================
 * Distraction-free form-page chrome (ported from hns-form-chrome wp_head).
 * Applied when the page sets body id/class hns-form-page.
 * =================================================================== */
/* hide the global nav header + the page-title banner on form pages */
.hns-form-page .nav-header{display:none!important;}
.hns-form-page .breadcumb-wrapper{display:none!important;}
.hns-form-page main.main-area{padding-top:24px;}
/* Trim the footer (mirrored Elementor post 1979) down to ONLY its copyright line:
   hide the marquee row, the newsletter/legal columns, and the social row. */
.hns-form-page .elementor-1979 .elementor-element-133f880{display:none!important;} /* marquee row */
.hns-form-page .elementor-1979 .elementor-element-d130da9{display:none!important;} /* newsletter + legal columns */
.hns-form-page .elementor-1979 .elementor-element-1dc494d{display:none!important;} /* social icons (bottom bar) */
/* ONE continuous fixed watermark behind everything so the surface runs unbroken. */
body.hns-form-page{background:#edf2f7!important;position:relative;}
.hns-form-page .main-area::before,.hns-form-page .elementor-1979::before{display:none!important;}
.hns-form-page .main-area,.hns-form-page .elementor-1979{background:transparent!important;position:relative;z-index:1;}
body.hns-form-page::before{content:"";position:fixed;inset:-260px;z-index:0;pointer-events:none;opacity:.07;background-image:url(/wp-content/uploads/2024/06/FixedLogo-brick.png);background-size:180px 140px;background-repeat:repeat;animation:hnsLogoDrift 80s linear infinite;will-change:transform;}
@media(prefers-reduced-motion:reduce){body.hns-form-page::before{animation:none!important;}}
/* Mobile: compact + centered so a short step fills one screen with the footer at the
   bottom (no big empty scroll), but the page stays NATURALLY scrollable. */
@media(max-width:782px){
  body.hns-form-page{display:flex;flex-direction:column;min-height:100dvh;}
  body.hns-form-page .main-area{flex:1 0 auto;display:flex;flex-direction:column;justify-content:center;padding-top:10px!important;padding-bottom:8px!important;}
  body.hns-form-page .elementor-1979{flex:0 0 auto;}
  body.hns-form-page .elementor-1979 .elementor-element-d0ab253,body.hns-form-page .elementor-1979 .elementor-element-133ed1b,body.hns-form-page .elementor-1979 .elementor-element-a1ae65b{padding-top:6px!important;padding-bottom:6px!important;}
  body.hns-form-page .elementor-1979 .elementor-element-e019ff4{margin:0!important;}
  .hns-form-page .hns-form{margin:0 auto;}
  .hns-form-page .hns-form-head{margin:2px 0 6px;}
  .hns-form-page .hns-form-title{font-size:1.5rem;}
  .hns-form-page .hns-form-intro{display:none;}
  .hns-form-page .hns-form-prog{margin-bottom:12px;}
  .hns-form-page .hns-form-inner{padding:18px 16px 16px;}
  .hns-form-page .hns-fstep-head{margin-bottom:12px;}
  .hns-form-page .hns-fld{margin-bottom:14px;}
  .hns-form-page .hns-opt{padding:12px 14px;}
  .hns-form-page .hns-opts{gap:9px;}
}
