/* The camp application at /apply.
   Two parts: the introduction on the page (.ap-intro), and the application
   itself (.ap), which takes over the screen once a family starts. Colours
   come from the site's theme tokens (--nx-*), so dark (the default) and light
   both work; the top bar and the reference card stay night navy in both, like
   the site header. In light, the application sits on cream with white panels.
   The look is an official form: numbered sections and groups, uppercase
   Archivo Black titles, semibold labels with a required marker, one input
   height, tabular figures for dates and numbers. Gold is kept for two things
   only: the waiver warning and the reference number. The overrides of the
   shared .af-* form classes are scoped to .ap so other forms are untouched.
   The family's printed copy (.ap-print) is styled at the end of this file. */

/* ------------------------------------------------------------- tokens -- */
.ap-sec,.ap{
 --a-bg:var(--nx-bg,#1E2123);--a-bg2:var(--nx-bg2,#17191B);--a-bg3:var(--nx-bg3,#272B2E);
 --a-ink:var(--nx-ink,#fff);--a-ink2:var(--nx-ink2,rgba(255,255,255,.78));--a-ink3:var(--nx-ink3,rgba(255,255,255,.6));
 --a-line:var(--nx-line2,rgba(255,255,255,.2));--a-line1:var(--nx-line,rgba(255,255,255,.11));
 --a-field:#131618;--a-field-line:rgba(255,255,255,.28);
 --a-accent:#C6CCE6;--a-accent-ink:#1B1E3F;--a-sel:rgba(198,204,230,.10);
 --a-gold:#C8A34A;--a-night:#1B1E3F;--a-panel:var(--a-bg2);--a-head:#C6CCE6;
 --a-p-bg:#EEF3FB;--a-p-ink:#1B1E3F;--a-p-hover:#FFFFFF;
 --a-err:#FFB2A6;--a-err-bg:rgba(255,140,120,.08);
 --a-focus:#8FA0FF;
 --a-fs:var(--fs,1);
 --a-rail:296px;
}
html[data-theme="light"] .ap{
 --a-bg:#F4F2EC;--a-bg2:#FFFFFF;--a-panel:#ECE9E1;
 --a-line:rgba(27,30,63,.2);--a-line1:rgba(27,30,63,.1);
}
html[data-theme="light"] .ap-sec,html[data-theme="light"] .ap{
 --a-field:#FFFFFF;--a-field-line:rgba(20,23,27,.3);--a-head:#3B3E72;
 --a-accent:#3B3E72;--a-accent-ink:#FFFFFF;--a-sel:#EEF3FB;
 --a-p-bg:#3B3E72;--a-p-ink:#FFFFFF;--a-p-hover:#2A2D55;
 --a-err:#A3261B;--a-err-bg:#FDF2F0;
 --a-focus:#3B3E72;
}
.ap[hidden],.ap [hidden],.ap-sec [hidden]{display:none!important}

/* ------------------------------------------------ introduction on the page */
.ap-sec{padding:56px 0 80px;position:relative;z-index:1}
.ap-noscript{padding:28px;border:1px solid var(--a-line);background:var(--a-bg2)}
.ap-noscript p{font-size:calc(17px * var(--a-fs));line-height:1.6;color:var(--a-ink2)}
.ap-noscript a{color:var(--a-ink)}
.ap-banner{background:var(--a-night);color:#fff;padding:28px 32px;border-inline-start:6px solid #A9AEEA}
.ap-banner-ref{margin:14px 0 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.16);font-size:calc(14px * var(--a-fs));font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#C6CCE6}
.ap-banner-ref b{margin-inline-start:6px;font-weight:700;letter-spacing:.02em;text-transform:none;font-size:calc(16px * var(--a-fs));color:#fff}
.ap-banner-t{margin:0;font-size:calc(clamp(21px,2.3vw,28px) * var(--a-fs));line-height:1.3;font-weight:600}
.ap-banner-t b{font-family:var(--a-disp);font-weight:400;letter-spacing:-.005em}
.ap-banner-s{margin:8px 0 0;font-size:calc(17px * var(--a-fs));line-height:1.5;font-weight:500;color:#C6CCE6}
.ap-intro-main{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:56px;margin-top:48px;align-items:start}
.ap-h2{font-family:var(--a-disp);font-weight:400;text-transform:uppercase;letter-spacing:-.01em;font-size:calc(clamp(26px,3vw,36px) * var(--a-fs));line-height:1.04;margin:0;color:var(--a-ink);outline:none}
.ap-h3{font-family:var(--a-disp);font-weight:400;text-transform:uppercase;letter-spacing:.01em;font-size:calc(17px * var(--a-fs));margin:0 0 4px;color:var(--a-ink)}
.ap-need-h{margin:30px 0 0;font-size:calc(13px * var(--a-fs));font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--a-ink3)}
.ap-privacy-s{margin:0 0 4px!important;padding:0!important;border:0!important;font-size:calc(14.5px * var(--a-fs))!important;color:var(--a-ink3)!important}
.ap-lede{margin:14px 0 0;max-width:62ch;font-size:calc(18px * var(--a-fs));line-height:1.55;font-weight:500;color:var(--a-ink2)}
.ap-need{list-style:none;margin:10px 0 0;padding:0;border-top:1px solid var(--a-line)}
.ap-need li{padding:15px 0;border-bottom:1px solid var(--a-line1);font-size:calc(17px * var(--a-fs));line-height:1.5;color:var(--a-ink2)}
.ap-need b{color:var(--a-ink);font-weight:700}
.ap-go-btns{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:32px}
.ap-privacy{padding:26px 26px 22px;border:1px solid var(--a-line);background:var(--a-bg2)}
.ap-privacy ul{margin:10px 0 0;padding:0 0 0 18px;list-style:disc}
.ap-privacy li::marker{color:var(--a-ink3)}
.ap-privacy li,.ap-privacy p{font-size:calc(15.5px * var(--a-fs));line-height:1.55;color:var(--a-ink2)}
.ap-privacy li+li{margin-top:8px}
.ap-privacy p{margin:16px 0 0;padding-top:16px;border-top:1px solid var(--a-line1)}
.ap-privacy a,.ap-sec .ap-lede a{color:var(--a-ink);text-decoration:underline;text-underline-offset:3px}
.ap-saved-note{margin:0 0 22px;padding:14px 18px;border-inline-start:4px solid var(--a-accent);background:var(--a-bg2);font-size:calc(16px * var(--a-fs));line-height:1.5;font-weight:600;color:var(--a-ink)}

/* --------------------------------------------------------- buttons, links */
.ap-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border:2px solid transparent;border-radius:4px;
 font:700 calc(16px * var(--a-fs))/1.2 Archivo,Arial,sans-serif;letter-spacing:.005em;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color .15s,border-color .15s,color .15s}
.ap-btn-p{background:var(--a-p-bg);color:var(--a-p-ink)}
.ap-btn-p:hover{background:var(--a-p-hover)}
.ap-btn-o{background:transparent;border-color:var(--a-line);color:var(--a-ink)}
.ap-btn-o:hover{border-color:var(--a-ink)}
.ap-btn-lg{min-height:58px;padding:0 32px;font-size:calc(17px * var(--a-fs))}
.ap-btn:focus-visible,.ap-link:focus-visible,.ap-exit:focus-visible,.ap-step:focus-visible{outline:3px solid var(--a-focus);outline-offset:3px}
.ap-btn[aria-busy="true"]{opacity:.7;cursor:progress}
.ap-btn.is-send{letter-spacing:.02em}
.ap-link{all:unset;cursor:pointer;color:var(--a-ink2);font-size:calc(15px * var(--a-fs));font-weight:600;text-decoration:underline;text-underline-offset:3px}
.ap-link:hover{color:var(--a-ink)}

/* ------------------------------------------------------- the app frame -- */
body.ap-open{overflow:hidden}
body.ap-open > :not(.ap):not(script):not(style):not(link){display:none!important}
.ap{position:fixed;inset:0;z-index:900;display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);overflow:hidden;background:var(--a-bg);color:var(--a-ink);
 font-family:var(--a-body);font-size:calc(17px * var(--a-fs));-webkit-font-smoothing:antialiased}
.ap-bar{background:var(--a-night);color:#fff}
.ap-bar-in{display:flex;align-items:center;gap:24px;height:64px;padding:0 24px}
.ap-brand{display:flex;align-items:center;gap:12px;flex:none;width:calc(var(--a-rail) - 48px)}
.ap-brand img{display:block;width:40px;height:auto}
.ap-brand-t{display:flex;flex-direction:column;gap:3px;line-height:1}
.ap-brand-t b{font-family:var(--a-disp);font-weight:400;font-size:15px;text-transform:uppercase;letter-spacing:.01em}
.ap-brand-t span{font-size:12.5px;font-weight:600;color:#C6CCE6;letter-spacing:.02em}
.ap-where{flex:1;min-width:0;margin:0;display:flex;align-items:baseline;gap:14px}
.ap-count{flex:none;font-size:calc(13.5px * var(--a-fs));font-weight:700;color:#C6CCE6;font-variant-numeric:tabular-nums}
.ap-count:empty{display:none}
.ap-title{min-width:0;font-size:calc(16px * var(--a-fs));font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap-tools{display:flex;align-items:center;gap:18px;flex:none}
.ap-saved{font-size:calc(13.5px * var(--a-fs));font-weight:600;color:#C6CCE6;white-space:nowrap}
.ap-exit{min-height:40px;padding:0 16px;border:1.5px solid rgba(255,255,255,.4);border-radius:4px;background:transparent;color:#fff;font:700 calc(14px * var(--a-fs)) Archivo,Arial,sans-serif;cursor:pointer;white-space:nowrap}
.ap-exit:hover{background:rgba(255,255,255,.1);border-color:#fff}
.ap-exit .sm{display:none}
.ap-prog{height:4px;background:rgba(255,255,255,.12)}
.ap-prog span{display:block;height:100%;width:0;background:#C6CCE6;transition:width .35s ease}

.ap-body{display:grid;grid-template-columns:var(--a-rail) minmax(0,1fr);min-height:0}
.ap-rail{display:flex;flex-direction:column;min-height:0;overflow-y:auto;padding:28px 18px 24px;background:var(--a-panel);border-inline-end:1px solid var(--a-line1)}
.ap-rail-camp{display:flex;flex-direction:column;gap:4px;padding:0 10px 22px;margin-bottom:14px;border-bottom:1px solid var(--a-line1)}
.ap-rail-camp span{font-size:calc(12.5px * var(--a-fs));font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--a-ink3)}
.ap-rail-camp b{font-family:var(--a-disp);font-weight:400;text-transform:uppercase;letter-spacing:-.005em;font-size:calc(18px * var(--a-fs));line-height:1.15;color:var(--a-ink)}
.ap-rail-camp .ap-rail-ref{margin-top:10px;font-size:calc(13.5px * var(--a-fs));font-weight:600;color:var(--a-ink2)}
.ap-rail-camp .ap-rail-ref b{display:block;margin-top:2px;font-family:var(--a-body);font-weight:700;font-size:calc(15px * var(--a-fs));text-transform:none;letter-spacing:0;color:var(--a-ink)}
.ap-rail-camp small{font-size:calc(14.5px * var(--a-fs));font-weight:600;color:var(--a-ink2)}
.ap-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.ap-step{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;min-height:46px;padding:8px 10px;border-radius:4px;cursor:pointer;
 color:var(--a-ink2);font-size:calc(15.5px * var(--a-fs));font-weight:600;line-height:1.25}
.ap-step:hover:not(:disabled){background:var(--a-sel);color:var(--a-ink)}
.ap-step:disabled{cursor:default;color:var(--a-ink3);opacity:.75}
.ap-step-n{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1.5px solid currentColor;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}
.ap-step-l small{display:block;margin-top:2px;font-size:12.5px;font-weight:500;color:var(--a-ink3)}
.is-done .ap-step-n{border-color:var(--a-accent);color:var(--a-accent)}
.is-now .ap-step{background:var(--a-sel);color:var(--a-ink);box-shadow:inset 3px 0 0 var(--a-accent)}
.is-now .ap-step-n{background:var(--a-accent);border-color:var(--a-accent);color:var(--a-accent-ink)}
.ap-reset{margin-top:auto;padding:24px 10px 0;font-size:calc(14px * var(--a-fs));color:var(--a-ink3)}

.ap-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-padding-top:24px}
.ap-form,.ap-end{max-width:824px;margin:0 auto;padding:52px 32px 72px}
/* Side panel: only on wide screens, beside the form column. */
.ap-aside{display:none}
.ap-aside-h{margin:0 0 6px;font-size:calc(13px * var(--a-fs));font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--a-ink3)}
.ap-aside dl{margin:0}
.ap-aside dl > div{padding:16px 0;border-bottom:1px solid var(--a-line1)}
.ap-aside dl > div:last-child{border-bottom:0}
.ap-aside dt{font-size:calc(15.5px * var(--a-fs));font-weight:700;color:var(--a-ink)}
.ap-aside dd{margin:4px 0 0;font-size:calc(14.5px * var(--a-fs));line-height:1.5;color:var(--a-ink2)}
.ap-aside a{color:var(--a-ink);text-decoration:underline;overflow-wrap:anywhere}
.ap-actions{background:var(--a-panel);border-top:1px solid var(--a-line);padding-inline-start:var(--a-rail)}
.ap-actions-in{max-width:824px;margin:0 auto;padding:12px 32px;display:flex;align-items:center;gap:16px}
.ap-actions .ap-btn{min-width:132px}
.ap-hint{flex:1;margin:0;text-align:center;font-size:calc(14px * var(--a-fs));color:var(--a-ink3)}
#wz-next{margin-inline-start:auto}
.ap.is-end .ap-rail,.ap.is-end .ap-actions{display:none}
.ap.is-end .ap-body{grid-template-columns:minmax(0,1fr)}

/* ---------------------------------------------------------------- steps -- */
.st-head{margin-bottom:8px}
.st-k{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid var(--a-ink);font-size:calc(12.5px * var(--a-fs));font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--a-head);font-variant-numeric:tabular-nums}
.st-reqnote{font-size:calc(13px * var(--a-fs));font-weight:600;letter-spacing:.02em;text-transform:none;color:var(--a-ink3)}
.st-h{margin:0;font-family:var(--a-disp);font-weight:400;text-transform:uppercase;font-size:calc(clamp(28px,3.4vw,40px) * var(--a-fs));line-height:1.02;letter-spacing:-.012em;color:var(--a-ink);outline:none}
.ap .st-h:focus,.ap .st-h:focus-visible,.ap-sec .ap-h2:focus,.ap-sec .ap-h2:focus-visible{outline:none}
.st-h,.ap-h2{text-wrap:balance}
.st-intro{margin:14px 0 0;max-width:62ch;font-size:calc(18px * var(--a-fs));line-height:1.55;font-weight:500;color:var(--a-ink2)}
.st-intro b{color:var(--a-ink)}
.st-group{padding:32px 0 4px;margin-top:28px;border-top:1px solid var(--a-line1)}
.st-head + .wz-sum + .st-group,.st-head + .st-group{margin-top:32px}
.st-gh{display:flex;align-items:baseline;gap:0;margin:0 0 20px;font-size:calc(19px * var(--a-fs));font-weight:700;line-height:1.3;letter-spacing:-.003em;color:var(--a-ink)}
.st-num{flex:none;min-width:2.9em;font-size:.84em;font-weight:800;letter-spacing:.02em;color:var(--a-head);font-variant-numeric:tabular-nums}
.st-num:empty{display:none}
.st-gh .st-opt{align-self:center}
.st-gh-in{margin-top:28px}
.st-opt,.ap .af-opt{display:inline-block;margin-inline-start:10px;font-size:calc(13px * var(--a-fs));font-weight:600;letter-spacing:0;text-transform:none;color:var(--a-ink3);vertical-align:1px}
.st-sub{margin:36px 0 14px;padding-top:28px;border-top:1px solid var(--a-line1);font-size:calc(18px * var(--a-fs));font-weight:700;color:var(--a-ink)}
.st-q{margin-top:30px}
.st-group > .af-hint + .af-fs{margin-top:20px}
.st-follow{margin-top:16px;padding:2px 0 2px 20px;border-inline-start:3px solid var(--a-accent)}
.ap .af-f.st-q{margin-top:30px}
.ap .af-f.st-follow{margin-top:16px}
.st-follow > .af-f + .af-f,.st-follow > .af-grid + .af-fs,.st-follow > .af-fs + .af-fs{margin-top:20px}
.st-card{margin-top:24px;padding:24px 26px 28px;border:1px solid var(--a-line);border-top:3px solid var(--a-head);border-radius:3px;background:var(--a-bg2)}
html[data-theme="light"] .ap .st-card{background:#FFFFFF}
html[data-theme="light"] .ap .st-card .af-in,html[data-theme="light"] .ap .st-card .ch,html[data-theme="light"] .ap .st-card .ag{background:#FBFCFE}
.st-card-s{padding:20px 22px 22px}
.st-card-h{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--a-line1)}
.st-card-t{margin:0;font-family:var(--a-disp);font-weight:400;text-transform:uppercase;letter-spacing:0;font-size:calc(19px * var(--a-fs));line-height:1.2;color:var(--a-ink)}
.st-card-s .st-card-t{font-family:var(--a-body);font-weight:700;text-transform:none;font-size:calc(17px * var(--a-fs))}
.wz-add{margin-top:20px}
.wz-mt{margin-top:24px}
.wz-mt-s{margin-top:12px}

/* --------------------------------------------------------------- fields -- */
.ap .af-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px 20px;margin:0}
.ap .af-grid + .af-grid,.ap .af-fs + .af-grid,.ap .af-grid + .af-fs{margin-top:22px}
.ap .af-f{grid-column:span 6;display:block;min-width:0;margin:0}
.ap .af-f.w-m{grid-column:span 3}
.ap .af-f.w-s{grid-column:span 2}
.ap .af-f.af-break{grid-column:1 / span 6}
.ap .af-f.w-m.af-break{grid-column:1 / span 3}
.ap .af-f.w-s.af-break{grid-column:1 / span 2}
.ap .af-fs{border:0;padding:0;margin:0;min-width:0}
.ap .af-f.wz-mt,.ap .af-fs.wz-mt{margin-top:28px}
.ap .af-f.wz-mt-s{margin-top:12px}
.ap .af-lab{display:block;margin:0 0 8px;padding:0;font-size:calc(16px * var(--a-fs));line-height:1.4;font-weight:600;letter-spacing:0;text-transform:none;color:var(--a-ink)}
.ap .af-req{margin-inline-start:4px;font-weight:800;color:var(--a-head)}
.ap .af-lab-sub{font-size:calc(15px * var(--a-fs));font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--a-ink2)}
.ap .af-lab-sub .af-opt{letter-spacing:0}
.ap legend.af-lab{float:none;width:100%}
.ap .af-hint{margin:-2px 0 10px;font-size:calc(14.5px * var(--a-fs));line-height:1.5;font-weight:500;color:var(--a-ink3)}
.ap .af-in + .af-hint{margin:10px 0 0}
.ap .af-in{display:block;width:100%;min-height:52px;padding:12px 14px;border:1.5px solid var(--a-field-line);border-radius:4px;background:var(--a-field);
 color:var(--a-ink);font:500 calc(17px * var(--a-fs))/1.4 Archivo,Arial,sans-serif;box-shadow:none;-webkit-appearance:none;appearance:none}
.ap .af-in::placeholder{color:var(--a-ink3);opacity:.85}
.ap .af-in:hover{border-color:var(--a-ink3)}
.ap .af-in:focus{outline:3px solid var(--a-focus);outline-offset:1px;border-color:var(--a-accent)}
.ap input[type="tel"].af-in,.ap input[type="date"].af-in,.ap input[type="number"].af-in,.ap .wz-upper,.ap .wz-money .af-in,.ap input[name$=".ohip"],.ap input[name$=".tetanus"],#sig-date{font-variant-numeric:tabular-nums;letter-spacing:.01em}
.ap input[type="date"].af-in{height:52px}
.ap .af-in[readonly]{background:transparent;border-style:dashed;color:var(--a-ink2)}
.ap select.af-in{padding-inline-end:44px;cursor:pointer;background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23C6CCE6' stroke-width='2'/%3E%3C/svg%3E")}
html[data-theme="light"] .ap select.af-in{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%233B3E72' stroke-width='2'/%3E%3C/svg%3E")}
.ap select.af-in option{background:var(--a-bg2);color:var(--a-ink)}
.ap textarea.af-ta{min-height:104px;resize:vertical;line-height:1.5}
.ap input[type="date"].af-in{min-width:0}
.ap input[type="date"].af-in::-webkit-calendar-picker-indicator{filter:invert(.8);cursor:pointer}
html[data-theme="light"] .ap input[type="date"].af-in::-webkit-calendar-picker-indicator{filter:none}
.ap .w-s-in{max-width:13rem}
.ap .w-m-in{max-width:26rem}
.wz-upper{text-transform:uppercase}
.ap .af-err{margin:8px 0 0;font-size:calc(15px * var(--a-fs));line-height:1.45;font-weight:600;letter-spacing:0;text-transform:none;color:var(--a-err)}
.ap .af-err:empty{display:none}
.ap .af-f.bad .af-in{border-color:var(--a-err);box-shadow:0 0 0 1px var(--a-err)}
.ap .af-f.bad > .ch-row .ch,.ap .af-f.bad > .ch-col .ch,.ap .af-f.bad > .ch-grid .ch,.ap .af-f.bad > .ag{border-color:var(--a-err)}
.wz-sig{font-size:calc(19px * var(--a-fs))!important;font-weight:600!important}

/* choices: radios and checkboxes as large tappable rows */
.ch-row{display:flex;flex-wrap:wrap;gap:10px}
.ch-col{display:flex;flex-direction:column;gap:10px}
.ch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ch-grid.ch-sm{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ch,.ag{position:relative;display:flex;align-items:flex-start;gap:14px;min-height:52px;padding:13px 16px;border:1.5px solid var(--a-field-line);border-radius:4px;
 background:var(--a-field);color:var(--a-ink);font-size:calc(16.5px * var(--a-fs));line-height:1.45;font-weight:500;cursor:pointer;transition:border-color .15s,background-color .15s}
.ch:hover,.ag:hover{border-color:var(--a-ink3)}
.ch-yn .ch{min-width:128px}
.ch-sm .ch{min-height:46px;padding:10px 12px;gap:10px;font-size:calc(15.5px * var(--a-fs))}
/* "Not sure", "None" and the like: the honest way out of a required question. */
.ch.ch-esc{width:max-content;max-width:100%;min-height:44px;margin-top:10px;padding:10px 14px;gap:10px;font-size:calc(15.5px * var(--a-fs))}
.ch.ch-esc input{width:20px;height:20px}
[hidden] + .ch.ch-esc{margin-top:0}
.ch > span{min-width:0;padding-top:1px}
.ch-2 span b{display:block;font-weight:700}
.ch-2 span small{display:block;margin-top:2px;font-size:calc(14.5px * var(--a-fs));font-weight:500;color:var(--a-ink3)}
.ch input,.ag input{-webkit-appearance:none;appearance:none;flex:none;width:22px;height:22px;margin:1px 0 0;border:2px solid var(--a-ink3);background:transparent;cursor:pointer}
.ch input[type="radio"]{border-radius:50%}
.ch input[type="checkbox"],.ag input{border-radius:3px}
.ch input[type="radio"]:checked{border-color:var(--a-accent);background:var(--a-accent);box-shadow:inset 0 0 0 4px var(--a-field)}
.ch input[type="checkbox"]:checked,.ag input:checked{border-color:var(--a-accent);background:var(--a-accent) no-repeat center/14px 11px;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='11' viewBox='0 0 14 11'%3E%3Cpath d='M1.5 5.5l3.8 3.8L12.5 1.8' fill='none' stroke='%231B1E3F' stroke-width='2.4'/%3E%3C/svg%3E")}
html[data-theme="light"] .ap .ch input[type="checkbox"]:checked,html[data-theme="light"] .ap .ag input:checked{
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='11' viewBox='0 0 14 11'%3E%3Cpath d='M1.5 5.5l3.8 3.8L12.5 1.8' fill='none' stroke='%23FFFFFF' stroke-width='2.4'/%3E%3C/svg%3E")}
.ch:has(input:checked),.ag:has(input:checked){border-color:var(--a-accent);background:var(--a-sel)}
.ch:has(input:focus-visible),.ag:has(input:focus-visible){outline:3px solid var(--a-focus);outline-offset:2px}
.ag{padding:18px 18px;line-height:1.55}
.ag-t b{font-weight:700}
.ag-plain{min-height:0}
.ch-stack{display:flex;flex-direction:column;gap:12px}
.ap a{color:inherit}
.ag a,.ap .wz-small a,.wz-note a{color:var(--a-ink);text-decoration:underline;text-underline-offset:3px}

/* ----------------------------------------------- notes, waiver, rules -- */
.wz-note{padding:16px 20px;border-inline-start:4px solid var(--a-accent);background:var(--a-bg2);font-size:calc(16px * var(--a-fs));line-height:1.55;color:var(--a-ink2);margin-top:24px}
.wz-small{margin:12px 0 0;font-size:calc(15px * var(--a-fs));line-height:1.55;color:var(--a-ink3)}
.wz-warn{margin:0 0 14px;padding:14px 18px;border-inline-start:4px solid var(--a-gold);background:var(--a-bg2);font-size:calc(16px * var(--a-fs));line-height:1.55;color:var(--a-ink2)}
.wz-warn b{color:var(--a-ink)}
.wz-waiver{max-height:360px;overflow-y:auto;margin:0 0 16px;padding:22px 24px;border:1.5px solid var(--a-line);border-radius:4px;background:var(--a-bg2);
 font-size:calc(16px * var(--a-fs));line-height:1.65;color:var(--a-ink2)}
html[data-theme="light"] .ap .wz-waiver{background:#FFFFFF}
.wz-waiver:focus-visible{outline:3px solid var(--a-focus);outline-offset:2px}
.wz-waiver p{margin:0}
.wz-waiver ol{margin:14px 0;padding-inline-start:26px;list-style:decimal}
.wz-waiver li::marker{color:var(--a-ink);font-weight:700}
.wz-waiver li+li{margin-top:12px}
.wz-waiver b{color:var(--a-ink)}
.wz-rules{margin:0 0 18px;padding:0 0 0 22px;list-style:disc;font-size:calc(16px * var(--a-fs));line-height:1.55;color:var(--a-ink2)}
.wz-rules li+li{margin-top:9px}
.wz-rules li::marker{color:var(--a-accent)}
.wz-promise{margin:0 0 16px;font-size:calc(16.5px * var(--a-fs));line-height:1.6;color:var(--a-ink2)}
.wz-promise b{color:var(--a-ink)}
.wz-age{margin:8px 0 0;font-size:calc(15px * var(--a-fs));font-weight:600;color:var(--a-ink2)}
.wz-age:empty{display:none}
.wz-age.is-warn{color:var(--a-ink);padding-inline-start:12px;border-inline-start:3px solid var(--a-accent)}

/* household guideline */
.wz-money{position:relative}
.wz-money span{position:absolute;inset-inline-start:15px;top:50%;transform:translateY(-50%);font-weight:700;color:var(--a-ink3)}
.ap .wz-money .af-in{padding-inline-start:32px}
.wz-lim{margin-top:24px;display:grid;grid-template-columns:auto minmax(0,1fr);border:1.5px solid var(--a-line);border-radius:4px;overflow:hidden}
.wz-lim-n{background:var(--a-night);color:#fff;padding:22px 26px;display:flex;flex-direction:column;justify-content:center;min-width:210px}
.wz-lim-k{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#C6CCE6}
.wz-lim-big{font-family:var(--a-disp);font-size:calc(36px * var(--a-fs));line-height:1.1;margin-top:4px}
.wz-lim-s{font-size:14px;font-weight:600;color:#C6CCE6}
.wz-lim-t{padding:18px 22px;background:var(--a-bg2)}
.wz-lim-t p{margin:0;font-size:calc(15.5px * var(--a-fs));line-height:1.55;color:var(--a-ink2)}
.wz-lim-v{margin-top:12px!important;padding:10px 14px;border-inline-start:4px solid var(--a-accent);background:var(--a-sel)}
.wz-lim-v b{color:var(--a-ink)}

/* documents */
.wz-sin{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;background:var(--a-night);color:#fff;border-radius:4px}
.wz-sin svg{flex:none;margin-top:2px;color:#C6CCE6}
.wz-sin p{margin:0;font-size:calc(15.5px * var(--a-fs));line-height:1.55}
.wz-drop{position:relative;margin-top:14px;border:2px dashed var(--a-field-line);border-radius:6px;background:var(--a-field)}
.wz-drop:hover{border-color:var(--a-accent)}
.wz-drop.has-file{border-style:solid;border-color:var(--a-accent)}
.wz-drop.is-off{opacity:.45}
.wz-file{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}
.wz-file:focus-visible + .wz-drop-lab{outline:3px solid var(--a-focus);outline-offset:4px}
.wz-drop-lab{display:flex;flex-direction:column;align-items:center;gap:6px;padding:30px 20px;text-align:center;pointer-events:none}
.wz-drop-ico{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--a-accent);color:var(--a-accent-ink)}
.wz-drop-t{font-size:calc(17px * var(--a-fs));font-weight:700}
.wz-drop-s{font-size:calc(14.5px * var(--a-fs));color:var(--a-ink3)}
.wz-file-stat{position:relative;z-index:2;padding:0 16px}
.wz-file-stat:empty{display:none}
.wz-file-stat > *{margin-bottom:16px}
.wz-file-up{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:600}
.wz-bar{display:block;height:6px;background:var(--a-line1)}
.wz-bar span{display:block;height:100%;background:var(--a-accent);transition:width .2s}
.wz-file-ok{display:flex;align-items:center;gap:14px;padding:12px 14px;background:var(--a-bg2);border:1px solid var(--a-line);border-radius:4px}
.wz-file-ico{flex:none;display:grid;place-items:center;width:44px;height:44px;background:var(--a-night);color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em;border-radius:3px}
.wz-file-n{flex:1;min-width:0;font-size:15px;line-height:1.4;overflow-wrap:anywhere}
.wz-file-bad{margin:0;padding:12px 14px;border-inline-start:4px solid var(--a-err);background:var(--a-err-bg);font-size:15px;font-weight:600}
.wz-more{margin-top:28px;border:1px solid var(--a-line);border-radius:4px;padding:0 20px}
.wz-more summary{cursor:pointer;padding:16px 0;font-weight:700;font-size:calc(16.5px * var(--a-fs))}
.wz-more summary:focus-visible{outline:3px solid var(--a-focus);outline-offset:2px}
.wz-more[open]{padding-bottom:20px}

/* -------------------------------------------------------------- errors -- */
.wz-sum{margin:28px 0 0;padding:18px 22px;border:2px solid var(--a-err);border-radius:4px;background:var(--a-err-bg);outline:none}
.wz-sum:focus-visible{outline:3px solid var(--a-focus);outline-offset:3px}
.wz-sum-h{margin:0 0 6px;font-weight:700;font-size:calc(17px * var(--a-fs));color:var(--a-ink)}
.wz-sum ul{margin:0;padding-inline-start:20px}
.wz-sum li{margin:5px 0;font-size:calc(15.5px * var(--a-fs));line-height:1.45}
.wz-sum a{color:var(--a-ink);text-decoration:underline;text-underline-offset:3px}
.wz-senderr{margin:20px 0 0;font-weight:600;color:var(--a-err)}
.wz-senderr:empty{display:none}

/* -------------------------------------------------------------- review -- */
.wz-review{margin-top:28px}
.rv{padding:24px 0 18px;border-top:2px solid var(--a-ink)}
.rv + .rv{margin-top:14px}
.rv-h{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:6px}
.rv-t{display:flex;align-items:baseline;gap:14px;margin:0;font-family:var(--a-disp);font-weight:400;text-transform:uppercase;letter-spacing:0;font-size:calc(18px * var(--a-fs));color:var(--a-ink)}
.rv-t span{flex:none;font-family:var(--a-body);font-size:13px;font-weight:800;letter-spacing:.1em;color:var(--a-head);font-variant-numeric:tabular-nums;min-width:20px}
.rv-sub{margin:18px 0 4px;font-size:calc(13px * var(--a-fs));font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--a-ink3)}
.rv dl{margin:0}
.rv dl > div{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:18px;padding:10px 0;border-bottom:1px solid var(--a-line1)}
.rv dl > div:last-child{border-bottom:0}
.rv dt{font-size:calc(15px * var(--a-fs));line-height:1.45;color:var(--a-ink3)}
.rv dd{margin:0;font-size:calc(16px * var(--a-fs));line-height:1.45;font-weight:600;overflow-wrap:anywhere;color:var(--a-ink);font-variant-numeric:tabular-nums}
.rv-none{margin:6px 0 0;color:var(--a-ink3);font-size:15px}

/* ------------------------------------------------------ end screens -- */
.ap-ref{margin:32px 0 8px;padding:28px 30px;background:var(--a-night);color:#fff;border-top:5px solid var(--a-gold);border-radius:3px}
.ap-ref span{display:block;font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#C6CCE6}
.ap-ref > b{display:block;margin:8px 0 6px;font-family:var(--a-disp);font-weight:400;font-size:calc(clamp(30px,5vw,46px) * var(--a-fs));letter-spacing:.04em;line-height:1.1;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.ap-ref small{display:block;font-size:calc(15.5px * var(--a-fs));line-height:1.5;color:#E3E6F3}
.ap-next-h{margin:34px 0 0;padding-bottom:10px;border-bottom:2px solid var(--a-ink);font-size:calc(12.5px * var(--a-fs));font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--a-head)}
.ap-next{margin:0;padding:0;list-style:none;counter-reset:none}
.ap-next li{padding:16px 0;border-bottom:1px solid var(--a-line1);font-size:calc(16.5px * var(--a-fs));line-height:1.55;color:var(--a-ink2)}
.ap-next li b{color:var(--a-ink)}
.ap-next a{color:var(--a-ink);text-decoration:underline}
#wz-done-doc{padding-inline-start:16px;border-inline-start:4px solid var(--a-accent)}
.ap-end-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}

/* --------------------------------------------- referral, notices, copy -- */
.ap-referred{margin:-4px 0 18px;padding:12px 16px;border-inline-start:3px solid var(--a-head);background:var(--a-sel);font-size:calc(15px * var(--a-fs));line-height:1.5;color:var(--a-ink2)}
.ap-referred b{color:var(--a-ink)}
/* Organization list: a search box that narrows the select, and the typed-in fallback. */
.ref-find{margin:0 0 12px;padding:14px 14px 12px;border:1px solid var(--a-line1);border-radius:4px;background:var(--a-sel)}
.ref-find-lab{display:block;margin:0 0 6px;font-size:calc(13px * var(--a-fs));font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--a-ink2)}
.ap .ref-find .af-in{min-height:46px;padding-inline-start:40px;background-repeat:no-repeat;background-position:14px center;background-size:16px 16px;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Ccircle cx='6.5' cy='6.5' r='5' fill='none' stroke='%23C6CCE6' stroke-width='2'/%3E%3Cpath d='M10.5 10.5L15 15' stroke='%23C6CCE6' stroke-width='2'/%3E%3C/svg%3E")}
html[data-theme="light"] .ap .ref-find .af-in{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Ccircle cx='6.5' cy='6.5' r='5' fill='none' stroke='%233B3E72' stroke-width='2'/%3E%3Cpath d='M10.5 10.5L15 15' stroke='%233B3E72' stroke-width='2'/%3E%3C/svg%3E")}
.ref-find-n{margin:8px 0 0;min-height:1.4em;font-size:calc(14px * var(--a-fs));line-height:1.4;color:var(--a-ink2)}
.ref-find-n:empty{display:none}
.ref-use{all:unset;box-sizing:border-box;display:inline-block;margin-top:8px;padding:9px 14px;border:1.5px solid var(--a-accent);border-radius:4px;cursor:pointer;
 font-size:calc(15px * var(--a-fs));font-weight:700;line-height:1.3;color:var(--a-ink);overflow-wrap:anywhere}
.ref-use:hover{background:var(--a-accent);color:var(--a-accent-ink)}
.ref-use:focus-visible{outline:3px solid var(--a-focus);outline-offset:2px}
.ref-use[hidden]{display:none}
#ref-partner + #ref-unlisted{margin-top:0;padding-top:20px}
.ref-person{margin-top:20px}
.ref-person .af-grid{margin-top:4px}
.ap-notices{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;margin-top:36px}
.ap-notice{padding-top:12px;border-top:2px solid var(--a-ink)}
.ap-notice-h{margin:0 0 10px;font-size:calc(12.5px * var(--a-fs));font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--a-head)}
.ap-notice p,.ap-notice li{margin:0;font-size:calc(14.5px * var(--a-fs));line-height:1.55;color:var(--a-ink2)}
.ap-notice-l{margin:0;padding-inline-start:20px;list-style:decimal}
.ap-notice-l li+li{margin-top:6px}
.ap-notice-l li::marker{font-weight:700;color:var(--a-ink3)}
.ap-notice a{color:var(--a-ink);text-decoration:underline;text-underline-offset:3px}
.ap-ref-meta{display:flex;flex-wrap:wrap;gap:10px 36px;margin:18px 0 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.16)}
.ap-ref-meta div{min-width:0}
.ap-ref-meta dt{font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#C6CCE6}
.ap-ref-meta dd{margin:3px 0 0;font-size:calc(15.5px * var(--a-fs));font-weight:600;color:#fff;font-variant-numeric:tabular-nums}
.ap-copy{display:flex;align-items:center;justify-content:space-between;gap:20px 28px;margin-top:32px;padding:22px 24px;border:1px solid var(--a-line);border-inline-start:4px solid var(--a-head);background:var(--a-bg2)}
.ap-copy-h{margin:0 0 4px;font-family:var(--a-disp);font-weight:400;text-transform:uppercase;font-size:calc(16px * var(--a-fs));letter-spacing:.01em;color:var(--a-ink)}
.ap-copy p{margin:0;max-width:52ch;font-size:calc(15px * var(--a-fs));line-height:1.5;color:var(--a-ink2)}
.ap-copy .ap-btn{flex:none}
.ap .wz-text{margin-top:8px;font-family:Consolas,ui-monospace,monospace;font-size:14px;min-height:260px}

/* ------------------------------------------------------------- responsive */
@media (min-width:1400px){
 .ap-scroll{display:grid;grid-template-columns:minmax(0,800px) 256px;column-gap:40px;justify-content:center;align-items:start}
 .ap-form,.ap-end{margin:0;grid-column:1}
 .ap-aside{display:block;grid-column:2;grid-row:1;position:sticky;top:0;padding:126px 0 40px}
 .ap.is-end .ap-aside{display:none}
 .ap.is-end .ap-scroll{grid-template-columns:minmax(0,800px)}
 .ap-actions-in{max-width:1096px;padding-inline-end:328px}
}
@media (max-width:1100px){
 .ap{--a-rail:256px}
 .ap-brand-t span{display:none}
}
@media (max-width:960px){
 .ap-body{grid-template-columns:minmax(0,1fr)}
 .ap-rail{display:none}
 .ap-actions{padding-inline-start:0}
 .ap-brand{width:auto}
 .ap-brand-t{display:none}
 .ap-intro-main{grid-template-columns:minmax(0,1fr);gap:40px}
}
@media (max-width:640px){
 .ap-sec{padding:32px 0 56px}
 .ap-banner{padding:22px 20px}
 .ap-bar-in{gap:12px;height:60px;padding:0 14px}
 .ap-brand img{width:32px}
 .ap-brand-t{display:none}
 .ap-where{flex-direction:column;align-items:flex-start;gap:2px}
 .ap-count{font-size:12px}
 .ap-title{font-size:15px;max-width:100%}
 .ap-tools{flex-direction:column;align-items:flex-end;gap:3px}
 .ap-saved{font-size:11.5px;order:2}
 .ap-exit{min-height:32px;padding:0 10px;font-size:13px}
 .ap-exit .lg{display:none}
 .ap-exit .sm{display:inline}
 .ap-form,.ap-end{padding:30px 16px 48px}
 .ap-actions-in{padding:10px 16px calc(10px + env(safe-area-inset-bottom));gap:10px}
 .ap-hint{display:none}
 .ap-actions .ap-btn{min-width:0;padding:0 18px}
 #wz-back{flex:0 0 auto}
 #wz-next{flex:1}
 .st-intro{font-size:calc(17px * var(--a-fs))}
 .st-group{padding-top:26px;margin-top:24px}
 .st-card{padding:20px 16px 22px;margin-inline-start:-4px;margin-inline-end:-4px}
 .ap .af-grid{gap:20px 14px}
 .ap .af-f.w-m{grid-column:span 6}
 .ap .af-f.w-s{grid-column:span 3}
 .ap .af-f.w-m.af-break{grid-column:1 / span 6}
 .ap .af-f.w-s.af-break{grid-column:1 / span 3}
 .ch-grid,.ch-grid.ch-sm{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .ch-grid:not(.ch-sm){grid-template-columns:minmax(0,1fr)}
 .ch-yn .ch{flex:1;min-width:0}
 .wz-lim{grid-template-columns:minmax(0,1fr)}
 .wz-waiver{max-height:300px;padding:18px 16px}
 .rv dl > div{grid-template-columns:minmax(0,1fr);gap:2px}
 .ap-ref{padding:22px 20px}
 .ap-notices{grid-template-columns:minmax(0,1fr);gap:22px}
 .ap-copy{flex-direction:column;align-items:stretch;padding:18px}
 .st-k{flex-direction:column;align-items:flex-start;gap:4px}
 .ap-end-btns .ap-btn{flex:1 1 100%}
 .ap-go-btns .ap-btn{flex:1 1 100%}
}
@media (prefers-reduced-motion:reduce){
 .ap-prog span,.wz-bar span,.ap-btn,.ch,.ag{transition:none}
}
html[data-motion="less"] .ap-prog span,html[data-motion="less"] .wz-bar span{transition:none}

/* --------------------------------------------- the family's printed copy --
   Built after sending (assets/js/apply.js, buildCopy). On screen it is never
   shown; when printing, it is the only thing on the page. */
.ap-print{display:none}
@media print{
 @page{size:letter;margin:0}
 html body.has-copy > *{display:none!important}
 html body.has-copy > div.ap-print.ap-print{display:block!important}
 html body.has-copy{overflow:visible!important;height:auto!important}
 body:not(.has-copy).ap-open > :not(.ap){display:none!important}
 body:not(.has-copy) .ap{position:static;display:block;background:#fff;color:#000}
 body:not(.has-copy) .ap-bar,body:not(.has-copy) .ap-rail,body:not(.has-copy) .ap-actions,body:not(.has-copy) .ap-end-btns{display:none!important}
 html,html body{background:#fff!important}
 .ap-print{color:#141731;font:500 10.5pt/1.45 Archivo,Arial,sans-serif;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 .pr-page{break-after:page;page-break-after:always;position:relative;box-sizing:border-box;height:279mm;overflow:hidden;padding:14mm 15mm 12mm;background:#fff;display:flex;flex-direction:column}
 .pr-page:last-child{break-after:auto;page-break-after:auto}
 .pr-head{display:flex;align-items:center;gap:12px;padding-bottom:10px;margin-bottom:18px;border-bottom:2pt solid #141731}
 .pr-head img{width:44px;height:auto}
 .pr-org{flex:1;display:flex;flex-direction:column;line-height:1.2}
 .pr-org b{font-family:var(--a-disp);font-weight:400;text-transform:uppercase;font-size:12pt;letter-spacing:.01em}
 .pr-org span{font-size:9pt;font-weight:600;color:#4A5160}
 .pr-refbox{text-align:end;line-height:1.2}
 .pr-refbox span{display:block;font-size:7.5pt;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#4A5160}
 .pr-refbox b{font-family:var(--a-disp);font-weight:400;font-size:12pt;letter-spacing:.04em}
 .pr-k{margin:0 0 4px;font-size:8.5pt;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#3B3E72}
 .pr-h1{margin:0 0 16px;font-family:var(--a-disp);font-weight:400;text-transform:uppercase;font-size:24pt;line-height:1.02;letter-spacing:-.01em}
 .pr-h1-s{font-size:17pt;padding-bottom:8px;border-bottom:1pt solid #CBD5E9}
 .pr-h2{margin:22px 0 8px;font-size:8.5pt;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#3B3E72}
 .pr-h3{margin:14px 0 2px;font-size:8.5pt;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#3B3E72;break-after:avoid}
 .pr-meta{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;border-top:1pt solid #141731}
 .pr-meta div{padding:8px 0;border-bottom:.75pt solid #CBD5E9}
 .pr-meta dt{font-size:7.5pt;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#4A5160}
 .pr-meta dd{margin:2px 0 0;font-size:11pt;font-weight:600;font-variant-numeric:tabular-nums}
 .pr-next{margin:0;padding-inline-start:16px}
 .pr-next li{margin:0 0 5px}
 .pr-private{margin:18px 0 0;padding:8px 10px;border-inline-start:3pt solid #C8A34A;background:#F4F2EC;font-weight:600}
 .pr-dl{margin:0}
 .pr-dl div{display:grid;grid-template-columns:38% 1fr;gap:12px;padding:5px 0;border-bottom:.5pt solid #DDE3EE;break-inside:avoid}
 .pr-dl dt{color:#4A5160}
 .pr-dl dd{margin:0;font-weight:600;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
 .pr-none{color:#4A5160}
 .pr-foot{margin-top:auto;padding-top:14px;display:flex;justify-content:space-between;gap:16px;font-size:7.5pt;color:#4A5160;border-top:.75pt solid #CBD5E9}
}

/* The donate bar would sit on top of the application's buttons on phones. */
#dbar,.dbar{display:none!important}
body.dbar-on{padding-bottom:0}

/* Equipment: owned items, own-gear note, sizes only for what is needed */
.wz-own-note{margin-top:18px}
.st-sub.st-sub-s{margin:30px 0 10px;padding-top:0;border-top:0;font-size:calc(16.5px * var(--a-fs))}
.wz-sizes > .af-hint{margin-bottom:14px}

/* ========================================================== languages == */
/* Fonts. Archivo covers the Latin languages (French, Spanish, Portuguese,
   Somali, Swahili, Hausa, Yoruba). Chinese, Arabic and Amharic (Ethiopic)
   fall back to good system fonts, chosen by :lang() on the translated parts
   (main, the application and the printed copy carry the lang attribute). */
:root{--a-disp:ArchivoBlack,Archivo,Arial,sans-serif;--a-body:Archivo,Arial,sans-serif}
#main-content:lang(zh),.ap:lang(zh),.ap-print:lang(zh){
 --a-disp:Archivo,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC","Noto Sans CJK SC","Source Han Sans SC",sans-serif;
 --a-body:Archivo,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC","Noto Sans CJK SC","Source Han Sans SC",sans-serif}
#main-content:lang(ar),.ap:lang(ar),.ap-print:lang(ar){
 --a-disp:Archivo,"Noto Sans Arabic","Geeza Pro","Segoe UI","Noto Naskh Arabic",Tahoma,sans-serif;
 --a-body:Archivo,"Noto Sans Arabic","Geeza Pro","Segoe UI","Noto Naskh Arabic",Tahoma,sans-serif}
#main-content:lang(am),.ap:lang(am),.ap-print:lang(am){
 --a-disp:Archivo,"Noto Sans Ethiopic",Kefa,Nyala,"Abyssinica SIL","Ebrima",sans-serif;
 --a-body:Archivo,"Noto Sans Ethiopic",Kefa,Nyala,"Abyssinica SIL","Ebrima",sans-serif}
/* Display titles in those scripts: a bold weight of the system font, no
   capitals effect and no letter spacing (spacing breaks joined Arabic). */
:is(#main-content,.ap,.ap-print):is(:lang(zh),:lang(ar),:lang(am)) :is(.st-h,.ap-h2,.ap-h3,.st-card-t,.rv-t,.ap-copy-h,.ap-rail-camp b,.ap-banner-t b,.nx-h1,.nx-h2,.pr-h1,.pr-h2,.wz-lim-big){font-weight:800;text-transform:none;letter-spacing:0}
:is(#main-content,.ap,.ap-print):is(:lang(zh),:lang(ar),:lang(am)) :is(.nx-h1,.nx-h2){font-family:var(--a-disp)}
:is(#main-content,.ap,.ap-print):is(:lang(zh),:lang(ar),:lang(am)) :is(.st-k,.ap-need-h,.ap-aside-h,.ap-notice-h,.ap-next-h,.rv-sub,.ap-banner-ref,.ap-rail-camp span,.wz-lim-k,.ap-ref span,.ap-ref-meta dt,.ref-find-lab,.af-lab-sub,.pr-k,.nx-crumb,.nx-eyebrow){text-transform:none;letter-spacing:0}
:is(#main-content,.ap,.ap-print):lang(ar) *{letter-spacing:0!important}
:is(#main-content,.ap,.ap-print):lang(ar){line-height:1.6}
:is(#main-content,.ap,.ap-print):lang(ar) :is(.st-h,.ap-h2,.nx-h1){line-height:1.3}
:is(#main-content,.ap,.ap-print):lang(am) :is(.st-h,.ap-h2,.nx-h1){line-height:1.25}
:is(#main-content,.ap,.ap-print):lang(zh) :is(.st-h,.ap-h2,.nx-h1){line-height:1.2}
/* Long words (French, Somali, Swahili) wrap rather than run off a phone. */
.ap :is(.st-h,.ap-h2,.st-card-t,.rv-t,.ap-title),.ap-intro :is(.ap-h2,.ap-h3),#main-content .nx-h1{overflow-wrap:break-word;hyphens:auto}

/* Right to left (Arabic). The layout uses logical properties, so it mirrors
   on its own; these are the few things that need a hand. */
[dir="rtl"] .ap select.af-in,.ap[dir="rtl"] select.af-in{background-position:left 16px center}
.ap[dir="rtl"] .ref-find .af-in{background-position:right 14px center}
.ap[dir="rtl"] #wz-back svg,.ap[dir="rtl"] #wz-next svg{transform:scaleX(-1)}
.ap[dir="rtl"] .ap-where,.ap[dir="rtl"] .ap-tools{text-align:right}
/* Numbers, phones, emails, postal and health card numbers stay left to right. */
:is(.ap,#main-content)[dir="rtl"] :is(input[type="tel"],input[type="email"],input[type="number"],input[type="date"],.wz-upper,input[inputmode="numeric"],input[name$=".ohip"],input[name$=".tetanus"],input[name$=".dob"]){direction:ltr;text-align:right}
:is(.ap,#main-content)[dir="rtl"] :is(#wz-ref,.ap-count,.st-k span:first-child,.ap-step-n,.wz-age){unicode-bidi:isolate}
.ap[dir="rtl"] .wz-money span{inset-inline-start:auto;left:15px}
.ap[dir="rtl"] .wz-money .af-in{padding-inline-start:16px;padding-left:32px;direction:ltr;text-align:right}

/* The language chooser on the landing: every language, in its own name. */
.ap-langs{margin:0 0 22px;padding:16px 18px;border:1px solid var(--a-line);background:var(--a-bg2)}
.ap-langs-h{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:calc(15px * var(--a-fs));font-weight:700;color:var(--a-ink)}
.ap-globe{flex:none}
.ap-langs-l{display:flex;flex-wrap:wrap;gap:8px}
.ap-lang-o{min-height:40px;padding:0 14px;border:1.5px solid var(--a-line);border-radius:4px;background:transparent;color:var(--a-ink);
 font:600 calc(15px * var(--a-fs))/1 Archivo,"Noto Sans Arabic","Geeza Pro","PingFang SC","Microsoft YaHei","Noto Sans SC","Noto Sans CJK SC","Noto Sans Ethiopic",Kefa,Nyala,"Segoe UI",sans-serif;cursor:pointer}
.ap-lang-o:hover{border-color:var(--a-ink)}
.ap-lang-o[aria-pressed="true"]{background:var(--a-p-bg);border-color:var(--a-p-bg);color:var(--a-p-ink)}
.ap-lang-o:focus-visible{outline:3px solid var(--a-focus);outline-offset:2px}
/* The language menu in the application bar: globe and name; on a phone,
   globe and code. The real menu sits on top, invisible, so the device's own
   picker opens. */
.ap-lang{position:relative;display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 12px;border:1.5px solid rgba(255,255,255,.4);border-radius:4px;color:#fff;
 font:700 calc(14px * var(--a-fs))/1 Archivo,"Noto Sans Arabic","Geeza Pro","PingFang SC","Microsoft YaHei","Noto Sans SC","Noto Sans CJK SC","Noto Sans Ethiopic",Kefa,Nyala,"Segoe UI",sans-serif;white-space:nowrap;cursor:pointer}
.ap-lang:hover{background:rgba(255,255,255,.1);border-color:#fff}
.ap-lang:focus-within{outline:3px solid var(--a-focus);outline-offset:3px}
.ap-lang-c{display:none;letter-spacing:.06em}
.ap-lang-sel{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font-size:16px;border:0}
@media (max-width:640px){
 .ap-lang{min-height:32px;padding:0 8px;font-size:13px}
 .ap-lang-n{display:none}
 .ap-lang-c{display:inline}
 .ap-tools{flex-direction:row;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;max-width:60%}
 .ap-saved{flex-basis:100%;text-align:end}
 .ap-langs{padding:14px}
 .ap-lang-o{min-height:38px;padding:0 11px;font-size:14px}
}
/* While another language's words load, the page waits rather than flashing
   English (never longer than the script allows, and never without script). */
html.ap-wait #main-content > .nx-hero,html.ap-wait #form,html.ap-wait #main-content > .nxl-paper{visibility:hidden}
html.ap-wait #main-content{animation:ap-show 0s 3s forwards}
@keyframes ap-show{to{visibility:visible}}
html.ap-wait #main-content > *{animation:ap-show 0s 3s forwards}
