:root{--blue:#439ad4;--blue-ui:#2b78b0;--blue-dark:#215f8c;--green:#4cd964;--text:#4a4a4a;--muted:#6b6b6b;--line:#d9d9d9;--bg-soft:#f3f3f3;--danger:#c0392b;--radius:12px;--max:720px;color:var(--text);-webkit-text-size-adjust:100%;background:#fff;font-family:"Exo 2",system-ui,sans-serif;font-weight:300}*{box-sizing:border-box}body{margin:0;font-size:1.05rem;line-height:1.6}a{color:var(--blue-ui)}strong,b{font-weight:600}button{font:inherit;cursor:pointer}.header{background:var(--blue);color:#fff;padding-top:env(safe-area-inset-top)}.header-bar{min-height:64px;max-width:var(--max);justify-content:center;align-items:center;margin:0 auto;padding:0 16px;display:flex;position:relative}.header-joint .header-bar{justify-content:flex-end}.header-home{color:#fff;text-decoration:none}.wordmark{display:block}.menu-button{background:0 0;border:0;flex-direction:column;justify-content:center;gap:5px;min-width:44px;min-height:44px;padding:0 11px;display:flex;position:absolute;left:6px}.menu-button span{background:#fff;border-radius:2px;width:22px;height:2px;display:block}.header-joint-title{color:#fff;flex-direction:column;align-items:center;gap:4px;padding:0 16px 20px;text-decoration:none;display:flex}.header-joint-title h1{letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:2.1rem;font-weight:700}.joint-icon{border-radius:50%;display:block}.menu-backdrop{z-index:20;background:#00000059;position:fixed;inset:0}.menu{width:min(300px,85vw);padding:calc(16px + env(safe-area-inset-top)) 0 16px;background:#fff;flex-direction:column;display:flex;position:absolute;inset:0 auto 0 0;overflow-y:auto;box-shadow:2px 0 12px #0003}.menu a,.menu .menu-link{min-height:44px;color:var(--text);text-align:left;background:0 0;border:0;padding:10px 24px;font-weight:400;text-decoration:none}.menu a.active{color:var(--blue-ui);font-weight:600}.menu-heading{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:16px 24px 4px;font-size:.8rem;font-weight:600}.menu-close{color:var(--muted);background:0 0;border:0;align-self:flex-end;margin-right:12px;padding:0 8px;font-size:2rem;line-height:1}.page{max-width:var(--max);padding:24px 20px calc(32px + env(safe-area-inset-bottom));margin:0 auto}.page.narrow{max-width:480px}.page-title,.auth h1{margin:0 0 20px;font-size:1.5rem;font-weight:600}.label{letter-spacing:.04em;text-transform:uppercase;margin:0 0 4px;font-size:1rem;font-weight:600}.text-panel{margin:24px 0}.text-panel section+section{margin-top:20px}.text-panel p{margin:0 0 1em}.list{margin:0;padding-left:1.2em}.list li+li{margin-top:4px}.notice{background:#fff6d6;border-radius:8px;padding:8px 12px;font-size:.9rem}.loading{min-height:50vh}.button{color:#fff;letter-spacing:.04em;text-align:center;text-transform:uppercase;background:var(--blue-ui);border-radius:var(--radius);border:0;justify-content:center;align-items:center;width:100%;min-height:52px;padding:12px 20px;font-weight:600;text-decoration:none;display:flex}.button:hover{background:var(--blue-dark)}.button:disabled{opacity:.6}.button.secondary{color:var(--blue-ui);border:2px solid var(--blue-ui);background:#fff}.button.danger{background:var(--danger)}:focus-visible{outline-offset:2px;outline:3px solid #f5a623}.to-top{width:100%;padding:16px 0 calc(16px + env(safe-area-inset-bottom));color:#fff;letter-spacing:.04em;text-transform:uppercase;background:var(--blue-ui);border:0;flex-direction:column;align-items:center;font-weight:600;display:flex}.auth form{flex-direction:column;gap:16px;display:flex}.auth label{flex-direction:column;gap:6px;font-weight:600;display:flex}.auth input{min-height:52px;font:inherit;border:1px solid var(--line);border-radius:var(--radius);padding:10px 14px;font-weight:400}.auth input:focus{border-color:var(--blue-ui);outline:none;box-shadow:0 0 0 3px #439ad440}.auth-signup{border-top:1px solid var(--blue-ui);align-self:flex-end;padding:4px 16px;font-size:.9rem;font-weight:600;text-decoration:none}.auth-alt{text-align:center}.auth h2{margin:40px 0 12px;font-size:1.1rem}.auth>.button{margin-top:8px}.or{color:var(--blue-ui);text-transform:uppercase;align-items:center;gap:12px;font-size:.8rem;font-weight:600;display:flex}.or:before,.or:after{content:"";background:var(--blue-ui);flex:1;height:1px}.error{color:var(--danger);margin:0;font-weight:400}.tiles{columns:2;column-gap:16px;margin:0;padding:0;list-style:none}.tiles li{break-inside:avoid;margin-bottom:16px}.tile{color:#fff;background:var(--blue);border-radius:32px;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:220px;padding:24px 12px;text-decoration:none;display:flex}.tiles li:nth-child(3n+1) .tile{min-height:280px}.tile:hover{background:var(--blue-dark)}.tile-small,.tiles li:nth-child(3n+1) .tile-small{min-height:120px}.tile-name{letter-spacing:.04em;text-align:center;text-transform:uppercase;font-size:1.2rem;font-weight:700}@media (width>=640px){.tiles{columns:3}}.step-section{margin-top:28px}.section-intro{color:var(--muted);margin:0 0 12px;font-size:.95rem}.step-list{margin:0;padding:0;list-style:none}.step-list a{color:var(--text);border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:12px 4px;font-weight:400;text-decoration:none;display:flex}.step-list a:hover{color:var(--blue-ui)}.step-number{color:#fff;background:var(--blue-ui);border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:.9rem;font-weight:600;display:grid}.range-badge{border:1px solid var(--blue-ui);background:#fff;margin:-24px 0 12px -20px;padding:4px 10px;font-size:.85rem;display:inline-block}.video{margin:0 -20px;position:relative}.video video,.video-missing{aspect-ratio:4/3;object-fit:contain;background:#fff;width:100%;max-height:62vh;display:block}.video-missing{color:var(--muted);background:var(--bg-soft);place-items:center;display:grid}.video-controls{justify-content:space-between;padding:0 28px;display:flex}.video-controls button{min-width:44px;min-height:44px;color:var(--blue-ui);background:0 0;border:0;padding:6px}.video-controls button[aria-disabled=true]{opacity:.45}.info{z-index:2;flex-direction:column;align-items:flex-end;display:flex;position:absolute;top:8px;right:28px}.info-button{color:#fff;background:var(--blue-ui);border:0;border-radius:50%;width:44px;height:44px;font-family:Georgia,serif;font-size:1.3rem;font-weight:700;box-shadow:0 2px 6px #00000040}.info-popover{border:1px solid var(--blue-ui);background:#fff;width:min(260px,70vw);max-height:220px;margin-top:-6px;padding:16px;font-size:.95rem;overflow-y:auto;box-shadow:0 4px 12px #00000026}.info-popover ul{margin:4px 0 0;padding-left:1.1em}.step-kicker{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:16px 0 0;font-size:.85rem;font-weight:600}.step-title{margin:0;font-size:1.4rem;font-weight:600}.normal{grid-template-columns:auto 1fr;gap:2px 16px;margin:0;display:grid}.normal dt{font-weight:600}.normal dd{margin:0}.pager{grid-template-columns:1fr 1fr;gap:12px;margin-top:32px;display:grid}.question{border:0;margin:16px 0 0;padding:0}.question legend{margin-bottom:16px;font-size:1.3rem;font-weight:600}.option{width:100%;color:var(--text);text-align:left;border:2px solid var(--blue-ui);border-radius:var(--radius);background:#fff;margin-bottom:12px;padding:16px 20px;font-weight:400;display:block}.option:hover{color:#fff;background:var(--blue-ui)}.result h3{margin:16px 0 8px;font-size:1.3rem;font-weight:600}.result-group h4{margin:16px 0 4px;font-weight:600}.disclaimer{color:var(--muted);background:var(--bg-soft);border-radius:8px;margin-top:24px;padding:12px 16px;font-size:.9rem}.back-link{text-align:center;margin-top:24px}.capsular-item{margin-bottom:32px}.skip-link{z-index:30;color:#fff;background:var(--blue-dark);border-radius:var(--radius);padding:10px 16px;position:absolute;top:8px;left:8px;transform:translateY(-200%)}.skip-link:focus{transform:none}main:focus{outline:none}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (width>=1000px){.page.step{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-rows:min-content;column-gap:40px;max-width:1100px;display:grid}.page.step>*{grid-column:2}.page.step>.video{grid-area:1/1/span 6;align-self:start;margin:0;position:sticky;top:16px}.page.step>.range-badge{grid-area:1/1;justify-self:start;margin:0 0 12px}.page.step>.video{grid-row:2/span 6}}
