/* Compact and accessible questionnaire at 320px mobile widths. */
@media(max-width:700px){
html{scroll-behavior:smooth}body{width:100%;max-width:100%;overflow-x:clip;-webkit-text-size-adjust:100%}
.shell{width:calc(100% - 20px);max-width:640px;margin:12px auto 36px}
.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-bottom:14px}
.brand{font-size:18px}.progress-text{font-size:12px;min-width:64px}.progress-wrap{grid-column:1/-1;grid-row:2}
#assessmentForm{min-width:0;padding:21px 16px 20px;border-radius:18px}
.screen{min-width:0;min-height:0}
.screen h1{font-size:clamp(24px,7vw,34px);line-height:1.17}
.screen h2{font-size:clamp(22px,6.2vw,29px);line-height:1.2}
.screen p,.screen legend,.screen label{overflow-wrap:break-word}
.kicker{font-size:12px;letter-spacing:.075em}
.choices,.choices.compact,.choices.inline,.grid3,.offers{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.choice{min-width:0;min-height:48px;padding:13px 12px;align-items:flex-start;gap:9px;line-height:1.5}
.choice>input{flex:0 0 auto}.field{min-width:0}
input[type="text"],input[type="number"],textarea{min-width:0;font-size:16px}
fieldset{min-width:0;margin:21px 0}
.nav-row{position:sticky;bottom:0;z-index:20;display:flex;gap:10px;padding:13px 0 max(10px,env(safe-area-inset-bottom));margin-top:22px;background:#fffffff9;border-top:1px solid #e5eae7}
.primary,.secondary{flex:1 1 0;min-width:0;min-height:48px;padding:11px 13px;font-size:15px}
.status,.status-card,.offer{min-width:0;overflow-wrap:anywhere}.price{font-size:30px}
}
@media(max-width:360px){#assessmentForm{padding:18px 13px}.screen h1{font-size:24px}.screen h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.progress-wrap>div{transition:none}}

/* Result actions: Back / Home / Reassessment */
.nav-row>[hidden]{display:none!important}
.nav-row a.secondary{display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;box-sizing:border-box}
@media(max-width:700px){
  .nav-row.is-result{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;align-items:stretch}
  .nav-row.is-result>.primary,.nav-row.is-result>.secondary{
    display:inline-flex;align-items:center;justify-content:center;
    width:100%;min-width:0;min-height:48px;padding:11px 4px;
    font-size:clamp(11px,3.15vw,14px);line-height:1.25;
    text-align:center;white-space:normal;overflow-wrap:anywhere;
  }
}
