/* Shared mechanics: quote form and before/after slider. Each version themes them through --f-* variables. */
.qf{--f-ink:#10263a;--f-mute:#57697a;--f-line:#d5dde5;--f-accent:#0a6fb3;--f-on:#fff;--f-r:12px;--f-fill:#fff;color:var(--f-ink)}
.qf *{box-sizing:border-box}
.qf-seg{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:calc(var(--f-r) + 2px);background:color-mix(in srgb,var(--f-line) 55%,transparent);margin-bottom:18px}
.qf-seg button{font:inherit;font-weight:650;padding:11px;border:0;background:none;border-radius:var(--f-r);cursor:pointer;color:var(--f-mute);transition:background .2s,color .2s}
.qf-seg button[aria-pressed=true]{background:var(--f-fill);color:var(--f-ink);box-shadow:0 1px 3px rgba(16,38,58,.16)}
.qf form{display:grid;gap:12px}.qf form[hidden]{display:none}
.qf .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.qf label,.qf .lbl{display:grid;gap:5px;font-size:.875rem;font-weight:600}
.qf input:not([type=file]),.qf select,.qf textarea{font:inherit;font-weight:400;width:100%;padding:11px 12px;border:1px solid color-mix(in srgb,var(--f-mute) 60%,transparent);border-radius:calc(var(--f-r) - 3px);background:var(--f-fill);color:var(--f-ink)}
.qf textarea{min-height:76px;resize:vertical}
.qf input[type=file]{font:inherit;font-size:.875rem;font-weight:400}
.qf :focus-visible{outline:2px solid var(--f-accent);outline-offset:2px}
.qf details{font-size:.9375rem}.qf summary{cursor:pointer;font-weight:600;color:var(--f-accent);padding:4px 0}.qf details[open] summary{margin-bottom:10px}.qf details>div{display:grid;gap:12px}
.qf .pills{display:flex;flex-wrap:wrap;gap:8px}
.qf .pills button{font:inherit;font-size:.9375rem;padding:8px 13px;border-radius:99px;border:1px solid color-mix(in srgb,var(--f-mute) 60%,transparent);background:var(--f-fill);color:var(--f-ink);cursor:pointer}
.qf .pills button[aria-pressed=true]{background:var(--f-accent);border-color:var(--f-accent);color:var(--f-on)}
.qf .submit{font:inherit;font-weight:700;padding:14px;border:0;border-radius:var(--f-r);background:var(--f-accent);color:var(--f-on);cursor:pointer}
.qf .err{color:#b3261e;font-size:.875rem;margin:0}
.qf .thanks{padding:30px 6px;text-align:center;font-size:1.125rem;font-weight:600}
.ba{position:relative;overflow:hidden;--p:50%;touch-action:pan-y;background:#333}
.ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.ba .top{clip-path:inset(0 calc(100% - var(--p)) 0 0)}
.ba .bar{position:absolute;top:0;bottom:0;left:var(--p);width:3px;margin-left:-1.5px;background:#fff;pointer-events:none}
.ba .bar::after{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;margin:-22px;border-radius:50%;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.3)}
.ba .bar::before{content:"\2039\00a0\203A";position:absolute;z-index:1;top:50%;left:50%;transform:translate(-50%,-52%);color:#10263a;font:700 20px/1 sans-serif;white-space:nowrap}
.ba input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}
.ba .tag{position:absolute;bottom:12px;padding:4px 10px;border-radius:6px;background:rgba(10,20,30,.74);color:#fff;font-size:.8125rem;font-weight:600;pointer-events:none}
.ba .tag.l{left:12px}.ba .tag.r{right:12px}
.ba:has(input:focus-visible){outline:3px solid #fff;outline-offset:-5px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media (max-width:460px){.qf .row{grid-template-columns:1fr}}
