/* Public forms & surveys (form.php + assets/form-runner.js). Madison Mission type (DM Sans), purple
   #241236 / #542675 and gold #d9b24c. Themes: purple (default), light, gold. Surveys are full screen like
   Typeform; forms are a Madison page with one card, like Fillout. */
.ff-body{--ink:var(--brand-text,#1d1a21);--muted:var(--brand-muted,#6b6570);--line:var(--brand-line,#e6e2ea);--purple:var(--brand-primary,#241236);--purple-2:var(--brand-primary-2,#542675);--gold:var(--brand-accent,#d9b24c);--gold-ink:var(--brand-accent-ink,#8a6510);--cream:#faf6ec;--err:#b42333;--ease:cubic-bezier(.22,1,.36,1);font-family:var(--brand-font-body,"DM Sans",Raleway,Arial,sans-serif)}
.ff-body *{box-sizing:border-box}
.ff-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ff-body svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ff-preview-bar{position:sticky;top:0;z-index:100;padding:10px 16px;background:repeating-linear-gradient(-45deg,var(--brand-accent,#d9b24c) 0 14px,#d4ab43 14px 28px);color:var(--brand-text,#1d1a21);font-size:14px;text-align:center}
.ff-preview-bar a{color:var(--brand-primary,#241236);font-weight:700}

/* ---------- Shared question styles ---------- */
.ff-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px 20px}
.ff-q{grid-column:1/-1;min-width:0;margin:0;padding:0;border:0}
.ff-q.is-half{grid-column:span 1}
.ff-label{display:flex;gap:8px;align-items:baseline;margin:0 0 4px;padding:0;font-size:16px;font-weight:600;line-height:1.4;color:inherit}
.ff-req{color:var(--gold-ink)}
.ff-desc{margin:0 0 10px;color:var(--muted);font-size:14.5px;line-height:1.55}
.ff-q input[type=text],.ff-q input[type=email],.ff-q input[type=tel],.ff-q input[type=number],.ff-q input[type=date],.ff-q textarea,.ff-q select{width:100%;min-height:50px;margin-top:6px;padding:12px 16px;border:1.5px solid var(--line);border-radius:12px;background:var(--brand-bg,#fff);font:inherit;font-size:16px;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.ff-q textarea{resize:vertical;line-height:1.55}
.ff-q input:focus,.ff-q textarea:focus,.ff-q select:focus{outline:0;border-color:var(--purple-2);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand-primary-2,#542675) 13.3%,transparent)}
.ff-select{position:relative;display:block}
.ff-select::after{content:"";position:absolute;right:18px;top:50%;width:8px;height:8px;margin-top:-2px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:translateY(-50%) rotate(45deg);pointer-events:none}
.ff-select select{appearance:none;padding-right:44px}
.ff-choices{display:grid;gap:10px;margin-top:10px}
.ff-choice{position:relative;display:flex;align-items:center;gap:12px;min-height:52px;padding:12px 16px;border:1.5px solid var(--line);border-radius:12px;background:var(--brand-bg,#fff);font-size:15.5px;cursor:pointer;transition:border-color .2s,background .2s,transform .15s}
.ff-choice:hover{border-color:var(--brand-line,#cdbfdb);background:#fcfaff}
.ff-choice input{position:absolute;opacity:0;pointer-events:none}
.ff-choice:has(input:checked){border-color:var(--purple-2);background:var(--brand-surface,#f6f0fb)}
.ff-choice:has(input:focus-visible){box-shadow:0 0 0 4px color-mix(in srgb,var(--brand-primary-2,#542675) 20%,transparent)}
.ff-mark{position:relative;width:20px;height:20px;border:2px solid #cbc2d4;border-radius:50%;flex:none;transition:border-color .2s,background .2s}
.ff-mark.is-box{border-radius:6px}
.ff-choice input:checked~.ff-mark,.ff-consent input:checked~.ff-mark{border-color:var(--purple-2);background:var(--purple-2)}
.ff-choice input:checked~.ff-mark::after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--brand-bg,#fff)}
.ff-choice input:checked~.ff-mark.is-box::after,.ff-consent input:checked~.ff-mark::after{inset:auto;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;border-radius:0;background:none;transform:rotate(45deg)}
.ff-other{flex:1;min-width:0;min-height:36px!important;margin:0!important;padding:6px 10px!important;border-width:1px!important;border-radius:8px!important;font-size:15px!important}
.ff-yesno{grid-template-columns:repeat(2,minmax(0,200px))}
.ff-stars{display:flex;gap:6px;margin-top:8px}
.ff-star{cursor:pointer}
.ff-star input{position:absolute;opacity:0}
.ff-star svg{width:40px;height:40px;color:#d8cfe0;transition:color .15s,transform .15s}
.ff-stars:hover .ff-star svg{color:var(--gold)}
.ff-star:hover~.ff-star svg{color:#d8cfe0}
.ff-stars:not(:hover) .ff-star:has(~ .ff-star input:checked) svg,.ff-stars:not(:hover) .ff-star:has(input:checked) svg{color:var(--gold);fill:var(--gold)}
.ff-star:hover svg{transform:scale(1.12)}
.ff-star:has(input:focus-visible) svg{filter:drop-shadow(0 0 0 2px color-mix(in srgb,var(--brand-primary-2,#542675) 33.3%,transparent));outline:2px solid color-mix(in srgb,var(--brand-primary-2,#542675) 33.3%,transparent);border-radius:6px}
.ff-scale{margin-top:8px}
.ff-scale-row{display:flex;gap:6px}
.ff-scale-row label{flex:1;cursor:pointer}
.ff-scale-row input{position:absolute;opacity:0}
.ff-scale-row span{display:grid;place-items:center;height:50px;border:1.5px solid var(--line);border-radius:10px;background:var(--brand-bg,#fff);font-weight:700;color:var(--muted);transition:all .15s}
.ff-scale-row label:hover span{border-color:var(--brand-line,#cdbfdb);color:var(--ink)}
.ff-scale-row input:checked+span{border-color:var(--purple-2);background:var(--purple-2);color:#fff}
.ff-scale-row input:focus-visible+span{box-shadow:0 0 0 4px color-mix(in srgb,var(--brand-primary-2,#542675) 20%,transparent)}
.ff-scale-ends{display:flex;justify-content:space-between;margin:8px 2px 0;color:var(--muted);font-size:13px}
.ff-consent{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1.5px solid var(--line);border-radius:12px;background:var(--cream);cursor:pointer}
.ff-consent input{position:absolute;opacity:0}
.ff-consent .ff-mark{margin-top:1px}
.ff-consent span{display:grid;gap:3px;font-size:15px}
.ff-consent small{color:var(--muted);font-size:13.5px;line-height:1.5}
.ff-heading h2{margin:8px 0 0;font-size:22px;font-weight:700;letter-spacing:-.3px;text-transform:none;color:inherit}
.ff-heading p{margin:6px 0 0;color:var(--muted);line-height:1.6}
.ff-err{margin:8px 0 0;color:var(--err);font-size:13.5px;font-weight:600}
.ff-err[hidden]{display:none}
.ff-q.has-err input:not([type=radio]):not([type=checkbox]),.ff-q.has-err textarea,.ff-q.has-err select,.ff-q.has-err .ff-choice,.ff-q.has-err .ff-consent{border-color:#e8a3ab}
.ff-q.shake{animation:ffShake .4s ease}
@keyframes ffShake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.ff-hint{margin:10px 0 0;color:var(--muted);font-size:13px}
.ff-ok-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:30px}
.ff-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 26px;border:0;border-radius:12px;background:var(--purple);color:#fff!important;font:inherit;font-size:16px;font-weight:700;text-decoration:none;cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s}
.ff-btn:hover{background:var(--purple-2);box-shadow:0 10px 24px color-mix(in srgb,var(--brand-primary,#241236) 20%,transparent)}
.ff-btn:active{transform:scale(.97)}
.ff-btn:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.ff-btn--ghost{background:transparent;color:var(--purple)!important;box-shadow:inset 0 0 0 1.5px var(--line)}
.ff-btn--ghost:hover{background:var(--brand-surface,#f6f0fb);box-shadow:inset 0 0 0 1.5px var(--brand-line,#cdbfdb)}
.ff-spin{display:none;animation:ffSpin .8s linear infinite}
.is-sending .ff-spin{display:block}
.is-sending [data-submit]{pointer-events:none;opacity:.85}
@keyframes ffSpin{to{transform:rotate(360deg)}}
.ff-kbd{color:var(--muted);font-size:13px}
.ff-form-err{margin:16px 0 0;padding:12px 14px;border-radius:12px;background:#fdecee;color:var(--err);font-size:14.5px}
.ff-form-err[hidden]{display:none}
.ff-thanks{display:grid;justify-items:center;gap:10px;padding:30px 10px;text-align:center;outline:0}
.ff-thanks[hidden]{display:none}
.ff-thanks-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--gold);color:var(--purple);animation:ffPop .6s var(--ease)}
.ff-thanks-icon svg{width:34px;height:34px;stroke-width:2.5}
.ff-thanks h2{margin:8px 0 0;font-size:30px;font-weight:700;letter-spacing:-.5px;text-transform:none;color:inherit}
.ff-thanks p{max-width:480px;margin:0 0 10px;color:var(--muted);font-size:17px;line-height:1.6}
@keyframes ffPop{from{transform:scale(.4);opacity:0}60%{transform:scale(1.08)}}
.is-in-up{animation:ffUp .5s var(--ease)}
.is-in-down{animation:ffDown .5s var(--ease)}
@keyframes ffUp{from{opacity:0;transform:translateY(30px)}}
@keyframes ffDown{from{opacity:0;transform:translateY(-30px)}}
.is-done .ff-step{animation:ffOut .25s ease forwards}
@keyframes ffOut{to{opacity:0;transform:translateY(-20px)}}

/* ---------- Form page (Fillout-style, inside the site) ---------- */
.ff-page{padding:44px 20px 80px;background:var(--brand-surface,#f5f2f8)}
.ff-theme-gold .ff-page{background:linear-gradient(180deg,#f7ecd0,#faf6ec 380px)}
.ff-theme-purple .ff-page{background:radial-gradient(80% 420px at 50% 0,var(--brand-primary-2,#542675),transparent),var(--brand-surface,#f5f2f8);background-repeat:no-repeat;background-color:var(--brand-surface,#f5f2f8)}
.ff-card{width:min(760px,100%);margin:0 auto;border-radius:24px;background:var(--brand-bg,#fff);box-shadow:0 30px 80px color-mix(in srgb,var(--brand-dark,#12081d) 14.9%,transparent);overflow:hidden;color:var(--ink)}
.ff-cover{position:relative;padding:40px 44px 30px;background:linear-gradient(180deg,var(--cream),#fff);border-bottom:1px solid var(--brand-line,#eee8f1)}
.ff-theme-purple .ff-cover{background:linear-gradient(155deg,var(--brand-primary,#241236),var(--brand-primary-2,#542675));color:#fff;border-bottom:4px solid var(--gold)}
.ff-theme-gold .ff-cover{background:linear-gradient(155deg,var(--brand-accent,#d9b24c),#ebcf84);color:var(--purple);border-bottom:0}
.ff-eyebrow{display:block;margin-bottom:10px;font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--brand-accent-ink,#b8902e)}
.ff-theme-purple .ff-eyebrow{color:var(--brand-accent-light,#f0dca9)}.ff-theme-gold .ff-eyebrow{color:var(--purple)}
.ff-cover h1{margin:0;font-family:inherit;font-size:clamp(28px,4vw,40px);font-weight:700;letter-spacing:-.8px;line-height:1.1;text-transform:none;color:inherit}
.ff-cover p{max-width:600px;margin:12px 0 0;font-size:17px;line-height:1.6;opacity:.85}
.ff-steps{display:flex;gap:6px;margin-top:22px}
.ff-steps i{flex:1;height:5px;border-radius:3px;background:#ffffff40;transition:background .3s}
.ff-theme-light .ff-steps i,.ff-theme-gold .ff-steps i{background:color-mix(in srgb,var(--brand-primary,#241236) 12.2%,transparent)}
.ff-steps i.is-on{background:var(--gold)}
.ff-theme-gold .ff-steps i.is-on{background:var(--purple)}
.ff-body-in{padding:34px 44px 40px}
html:not(.ff-js) .ff-step+.ff-step{margin-top:36px;padding-top:36px;border-top:2px dashed #eadfbe}
.ff-privacy{display:flex;align-items:center;justify-content:center;gap:8px;margin:20px auto 0;max-width:760px;color:var(--muted);font-size:13.5px}
.ff-privacy svg{width:16px;height:16px;color:var(--gold-ink)}
.ff-embed{background:transparent}
.ff-embed-wrap{padding:0}
.ff-embed .ff-card{box-shadow:none;border:1px solid var(--line)}

/* ---------- Survey (Typeform-style, full screen) ---------- */
.ff-survey{min-height:100vh;min-height:100dvh;margin:0;background:radial-gradient(90% 60% at 50% 0,var(--brand-primary-2,#542675),transparent 70%),#1d0f2b;color:#fff;overflow-x:hidden}
.ff-survey.ff-theme-light{background:var(--brand-bg,#fff);color:var(--ink)}
.ff-survey.ff-theme-gold{background:linear-gradient(180deg,#f7ecd0,#fffaf0);color:var(--purple)}
.ff-progress{position:fixed;left:0;right:0;top:0;z-index:20;height:5px;background:#ffffff1a}
.ff-theme-light .ff-progress,.ff-theme-gold .ff-progress{background:color-mix(in srgb,var(--brand-primary,#241236) 10.2%,transparent)}
.ff-progress i{display:block;width:0;height:100%;background:var(--gold);transition:width .5s var(--ease)}
.ff-bar{position:fixed;left:0;right:0;top:5px;z-index:10;display:flex;align-items:center;padding:16px 22px}
.ff-brand{display:inline-flex;align-items:center;gap:10px;color:inherit!important;font-size:14px;font-weight:700;text-decoration:none;opacity:.9}
.ff-brand img{border-radius:50%;background:var(--brand-bg,#fff)}
.ff-stage{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:90px 24px 100px}
.ff-survey .ff-form,.ff-survey .ff-thanks{width:min(720px,100%)}
.ff-survey .ff-grid{display:block}
.ff-survey .ff-step{min-height:40vh;display:flex;flex-direction:column;justify-content:center}
.ff-survey .ff-label{position:relative;display:block;padding-left:0;font-size:clamp(22px,3.2vw,30px);font-weight:600;line-height:1.3;letter-spacing:-.3px}
.ff-num{position:absolute;right:calc(100% + 10px);top:.35em;display:inline-flex;align-items:center;gap:2px;color:var(--gold);font-size:15px;font-weight:700}
.ff-num svg{width:15px;height:15px}
.ff-survey .ff-label .ff-req{color:var(--gold)}
.ff-survey .ff-desc{margin-top:10px;color:inherit;opacity:.72;font-size:18px}
.ff-survey .ff-q input[type=text],.ff-survey .ff-q input[type=email],.ff-survey .ff-q input[type=tel],.ff-survey .ff-q input[type=number],.ff-survey .ff-q input[type=date],.ff-survey .ff-q textarea{margin-top:26px;padding:6px 0 10px;border:0;border-bottom:2px solid #ffffff4d;border-radius:0;background:transparent;color:inherit;font-size:clamp(22px,3vw,28px);box-shadow:none}
.ff-survey .ff-q input:focus,.ff-survey .ff-q textarea:focus{border-bottom-color:var(--gold);box-shadow:0 2px 0 0 var(--gold)}
.ff-survey .ff-q input::placeholder,.ff-survey .ff-q textarea::placeholder{color:currentColor;opacity:.35}
.ff-theme-light.ff-survey .ff-q input,.ff-theme-light.ff-survey .ff-q textarea,.ff-theme-gold.ff-survey .ff-q input,.ff-theme-gold.ff-survey .ff-q textarea{border-bottom-color:color-mix(in srgb,var(--brand-primary,#241236) 25.1%,transparent)}
.ff-survey .ff-q select{margin-top:22px;background:#ffffff14;border-color:#ffffff40;color:inherit;font-size:18px}
.ff-survey .ff-q select option{color:var(--ink)}
.ff-theme-light.ff-survey .ff-q select,.ff-theme-gold.ff-survey .ff-q select{background:var(--brand-bg,#fff);border-color:color-mix(in srgb,var(--brand-primary,#241236) 20%,transparent)}
.ff-survey .ff-choices{max-width:480px;margin-top:24px;gap:8px}
.ff-survey .ff-choice{min-height:50px;padding:10px 14px;border:1.5px solid #ffffff40;background:#ffffff12;color:inherit;font-size:17px}
.ff-survey .ff-choice:hover{background:#ffffff22;border-color:#ffffff80}
.ff-survey .ff-choice:has(input:checked){background:color-mix(in srgb,var(--brand-accent,#d9b24c) 18%,transparent);border-color:var(--gold)}
.ff-theme-light.ff-survey .ff-choice,.ff-theme-gold.ff-survey .ff-choice{background:color-mix(in srgb,var(--brand-primary,#241236) 3.9%,transparent);border-color:color-mix(in srgb,var(--brand-primary,#241236) 20%,transparent)}
.ff-theme-light.ff-survey .ff-choice:has(input:checked),.ff-theme-gold.ff-survey .ff-choice:has(input:checked){background:color-mix(in srgb,var(--brand-primary-2,#542675) 9%,transparent);border-color:var(--purple-2)}
.ff-choice b{display:grid;place-items:center;width:26px;height:26px;border:1.5px solid currentColor;border-radius:6px;font-size:12.5px;font-weight:700;opacity:.9;flex:none}
.ff-survey .ff-choice:has(input:checked) b{background:var(--gold);border-color:var(--gold);color:var(--purple);opacity:1}
.ff-tick{margin-left:auto;opacity:0;transition:opacity .15s}
.ff-choice:has(input:checked) .ff-tick{opacity:1;color:var(--gold)}
.ff-theme-light .ff-choice:has(input:checked) .ff-tick,.ff-theme-gold .ff-choice:has(input:checked) .ff-tick{color:var(--purple-2)}
.ff-choice.is-picked{animation:ffBlink .45s ease}
@keyframes ffBlink{30%,70%{opacity:.4}}
.ff-survey .ff-other{background:transparent!important;border-color:#ffffff66!important;color:inherit!important}
.ff-survey .ff-stars svg{width:52px;height:52px;color:#ffffff40}
.ff-theme-light .ff-stars svg,.ff-theme-gold .ff-stars svg{color:color-mix(in srgb,var(--brand-primary,#241236) 14.9%,transparent)}
.ff-survey .ff-scale{margin-top:26px}
.ff-survey .ff-scale-row span{height:58px;background:#ffffff12;border-color:#ffffff40;color:inherit;font-size:18px}
.ff-survey .ff-scale-row input:checked+span{background:var(--gold);border-color:var(--gold);color:var(--purple)}
.ff-theme-light .ff-scale-row span,.ff-theme-gold .ff-scale-row span{background:var(--brand-bg,#fff);border-color:color-mix(in srgb,var(--brand-primary,#241236) 20%,transparent)}
.ff-survey .ff-scale-ends{color:inherit;opacity:.7}
.ff-survey .ff-consent{margin-top:20px;background:#ffffff12;border-color:#ffffff40;color:inherit}
.ff-survey .ff-consent small{color:inherit;opacity:.75}
.ff-survey .ff-hint,.ff-survey .ff-kbd{color:inherit;opacity:.65}
.ff-survey .ff-err{display:inline-flex;margin-top:16px;padding:6px 12px;border-radius:8px;background:#fdecee;color:var(--err)}
.ff-survey .ff-btn--ok{background:var(--gold);color:var(--purple)!important;font-size:18px}
.ff-survey .ff-btn--ok:hover{background:#e4c266}
.ff-theme-light.ff-survey .ff-btn--ok{background:var(--purple);color:#fff!important}
.ff-survey .ff-btn--ghost{color:inherit!important;box-shadow:inset 0 0 0 1.5px #ffffff4d}
.ff-survey .ff-heading h2{font-size:clamp(26px,3.6vw,34px)}
.ff-survey .ff-heading p{color:inherit;opacity:.75;font-size:18px}
.ff-welcome{text-align:center;align-items:center}
.ff-welcome h1{margin:0;font-family:inherit;font-size:clamp(32px,5vw,50px);font-weight:700;letter-spacing:-1px;line-height:1.1;text-transform:none;color:inherit}
.ff-welcome p{margin:16px 0 0;font-size:20px;opacity:.78}
.ff-welcome .ff-ok-row{justify-content:center}
.ff-survey .ff-thanks p{color:inherit;opacity:.78}
.ff-nav{position:fixed;right:22px;bottom:22px;z-index:10;display:flex;gap:2px;border-radius:10px;overflow:hidden}
.ff-nav[hidden]{display:none}
.ff-nav button{display:grid;place-items:center;width:40px;height:38px;border:0;background:var(--gold);color:var(--purple);cursor:pointer}
.ff-nav button:hover{background:#e4c266}
.ff-theme-light .ff-nav button{background:var(--purple);color:#fff}
.ff-survey .ff-form-err{position:fixed;left:50%;bottom:24px;transform:translateX(-50%)}
.ff-closed .ff-thanks-icon{background:#ffffff1f;color:inherit}
.ff-page .ff-closed .ff-thanks-icon{background:var(--cream);color:var(--gold-ink)}

@media(max-width:640px){
.ff-page{padding:20px 12px 60px}
.ff-cover{padding:28px 22px 22px}
.ff-body-in{padding:24px 20px 28px}
.ff-grid{grid-template-columns:1fr;gap:22px}
.ff-q.is-half{grid-column:1/-1}
.ff-yesno{grid-template-columns:1fr 1fr}
.ff-scale-row{gap:3px}
.ff-scale-row span{height:44px;font-size:14px}
.ff-stage{padding:80px 20px 90px;align-items:flex-start}
.ff-num{position:static;display:flex;margin-bottom:8px}
.ff-survey .ff-scale-row span{height:46px;font-size:15px}
.ff-kbd{display:none}
}
@media(prefers-reduced-motion:reduce){.ff-body *{animation:none!important;transition:none!important}}

/* The site stylesheet sets its own fonts on headings and fields; keep forms in the Madison sans. */
.ff-card,.ff-card :is(h1,h2,h3,p,label,span,legend,input,textarea,select,button,small,strong),.ff-privacy{font-family:var(--brand-font-body,"DM Sans",Raleway,Arial,sans-serif)}

/* The hidden attribute always wins over the display rules above. */
.ff-step[hidden],.ff-err[hidden],.ff-thanks[hidden],.ff-form[hidden],.ff-form-err[hidden]{display:none!important}

/* Surveys inside the website (form.php): the site's news ticker, top nav and footer stay around the survey, which fills the
   screen between them. Progress sticks under the menu bar; the ↑ ↓ buttons and errors stay inside the survey area. */
.ff-survey-page{background:var(--brand-bg,#fff)}
.ff-in-site{position:relative;display:flex;flex-direction:column;min-height:calc(100vh - var(--mm-chrome,125px));min-height:calc(100svh - var(--mm-chrome,125px));overflow:clip}
.ff-in-site .ff-progress{position:sticky;top:var(--mm-chrome,125px);flex:none}
.ff-in-site .ff-stage{flex:1;min-height:0;padding:56px 24px 104px}
.ff-in-site .ff-nav{position:absolute;right:22px;bottom:22px}
.ff-in-site .ff-form-err{position:absolute}
.ff-in-site .ff-survey,.ff-in-site.ff-survey{margin:0}
@media(max-width:820px){
  /* leave room for the phone tab bar at the bottom of the screen */
  .ff-in-site{min-height:calc(100svh - var(--mm-chrome,109px) - 86px)}
  .ff-in-site .ff-stage{padding:40px 20px 92px}
}
