/* Scrap Now form — builds on ../styles.css (tokens, .logo, .box-btn, .ico) */
.f-page{background:var(--acid);min-height:100vh;min-height:100svh}
.f-head{height:90px;display:flex;align-items:center}
.f-main{width:min(680px,calc(100% - 40px));margin:0 auto;padding:10px 0 80px}
.f-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* steps */
.f-step{display:none;flex-direction:column;align-items:flex-start;gap:22px;min-height:calc(100svh - 190px);justify-content:center;padding:30px 0}
.f-step.is-active{display:flex}
.f-step h1,.f-step h2{font-family:var(--head);font-weight:700;text-transform:uppercase;letter-spacing:-.03em;line-height:.95;margin:0}
.f-step h1{font-size:clamp(48px,8vw,88px)}
.f-step h2{font-size:clamp(34px,5vw,54px)}.f-step h1,.f-step h2{text-wrap:balance}
.f-sub{margin:0;font-size:18px;line-height:1.6;max-width:520px}
.f-hint{margin:-8px 0 0;font-size:16px;line-height:1.55;max-width:560px;opacity:.75}

/* option boxes */
.f-opts{display:flex;flex-direction:column;gap:14px;width:100%}
.f-opt{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:18px 22px;background:#fff;color:var(--ink);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);font:500 20px var(--body);text-align:left;cursor:pointer;transition:transform .08s,box-shadow .08s}
.f-opt span{display:flex;flex-direction:column;gap:4px}

.f-opt.is-picked{background:var(--ink);color:var(--acid)}@media (hover:hover){.f-opt:hover{background:var(--ink);color:var(--acid)}}
.f-opt:active{transform:translate(3px,3px);box-shadow:3px 3px 0 var(--ink)}
.f-opts.is-invalid .f-opt{border-color:#b3261e}

/* fields */
.f-panel{display:flex;flex-direction:column;gap:20px;width:100%}
.f-panel[hidden],.f-row[hidden]{display:none}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;width:100%}
.f-field{display:flex;flex-direction:column;gap:8px;width:100%;font-size:16px;margin:0;padding:0;border:0;min-width:0}
.f-field em{font-style:normal;opacity:.65}.f-lbl{display:block}
.f-field small{font-size:14px;opacity:.7}
.f-field legend{padding:0 0 10px}
.f-field input,.f-field select,.f-field textarea{width:100%;min-height:54px;padding:12px 14px;background:#fff;color:var(--ink);border:3px solid var(--ink);border-radius:0;font:500 17px var(--body);-webkit-appearance:none;appearance:none}
.f-field select{background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:40px}
.f-field textarea{resize:vertical;min-height:110px}
.f-field input:focus,.f-field select:focus,.f-field textarea:focus{outline:none;box-shadow:5px 5px 0 var(--ink)}
.f-field [aria-invalid="true"]{border-color:#b3261e;background:#fff4f2}
.f-money{position:relative;display:block}
.f-money::before{content:"$";position:absolute;left:15px;top:50%;transform:translateY(-50%);font-size:17px;opacity:.6}
.f-money input{padding-left:32px}.f-field input[type=number]{-moz-appearance:textfield}.f-field input[type=number]::-webkit-inner-spin-button,.f-field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.f-chips{display:flex;flex-wrap:wrap;gap:10px}
.f-chip input{position:absolute;opacity:0;pointer-events:none}
.f-chip span{display:inline-block;padding:10px 16px;background:#fff;border:3px solid var(--ink);font-size:15px;cursor:pointer}
.f-chip input:checked+span{background:var(--ink);color:var(--acid)}
.f-chip input:focus-visible+span{outline:3px solid var(--ink);outline-offset:3px}

/* errors */
.f-error{display:none;margin:0;width:100%;padding:12px 16px;background:#fff;border:3px solid #b3261e;font-size:15px}
.f-error.is-shown{display:block}

/* nav */
.f-nav{display:flex;align-items:center;justify-content:flex-start;gap:20px;width:100%;padding-top:4px}
.f-step .box-btn.f-ok{min-width:0;padding:14px 30px;gap:0;font-size:18px}

/* up / down arrows, bottom right */
.f-arrows{position:fixed;right:24px;bottom:24px;z-index:30;display:flex;gap:6px}
.f-arrows[hidden]{display:none}
.f-arrows button{display:grid;place-content:center;width:46px;height:46px;padding:0;background:#fff;color:var(--ink);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);cursor:pointer}
.f-arrows svg{width:22px;height:22px}
.f-arrows button:disabled{opacity:.4;cursor:default;box-shadow:none}
@media (hover:hover){.f-arrows button:not(:disabled):hover{background:var(--ink);color:var(--acid)}}
.f-arrows button:not(:disabled):active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}
.f-back{display:inline-flex;align-items:center;gap:8px;padding:6px 0;background:none;border:0;color:var(--ink);font:500 16px var(--body);cursor:pointer}

.f-back svg{width:18px;height:18px}.f-step .box-btn b{font-weight:500}
.f-step button.box-btn:disabled{opacity:.6;cursor:wait}

:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.f-opt{transition:none}}
@media (max-width:800px){
 .f-head{justify-content:center}
 .f-step{min-height:0;padding:24px 0}
 .f-row{grid-template-columns:1fr}
 .f-opt{font-size:18px;padding:16px 18px}
 .f-main{padding-bottom:110px}
 .f-arrows{right:16px;bottom:16px}
}
@media (hover:none){.f-step .box-btn.f-ok:hover{background:#fff;color:var(--ink)}}
.f-file{position:relative;display:block;width:100%;cursor:pointer}
.f-file input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;min-height:0}
.f-file-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:150px;padding:20px;background:#fff;border:3px dashed var(--ink);text-align:center;font-size:17px}
.f-file-box b{font-weight:500;text-decoration:underline}
.f-file-box small{font-size:14px;opacity:.65}
.f-file input:focus-visible+.f-file-box{outline:3px solid var(--ink);outline-offset:3px}
.f-file input[aria-invalid="true"]+.f-file-box{border-color:#b3261e;background:#fff4f2}
.f-file-name{display:block;margin-top:10px;font-size:16px;word-break:break-all}
.f-file-name:empty{display:none}
