@charset "UTF-8";
:root{--forest:#193e35;--green:#285b4b;--ink:#23342e;--muted:#65716a;--paper:#f7f4ec;--line:#d9dfd4;--gold:#b2873b;--red:#a3342b;--white:#fffefa;--mint:#e7efe3;--serif:Georgia,'Times New Roman',serif;--sans:'Avenir Next',Avenir,'Segoe UI',sans-serif}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.6 var(--sans)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.48}a{color:var(--green);text-underline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.15}h1{font-size:clamp(2.1rem,4vw,3.7rem);letter-spacing:-.04em;margin-bottom:20px}h2{font-size:1.65rem}h3{font-size:1rem}small,.small{font-size:.79rem;color:var(--muted)}:focus-visible{outline:3px solid #b88027;outline-offset:3px}.skip{position:fixed;left:12px;top:-100px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}[hidden]{display:none!important}
.topbar{position:sticky;top:0;z-index:20;background:var(--white);border-bottom:1px solid var(--line);min-height:86px;padding:14px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;background:transparent;color:var(--forest);font:700 21px/1.2 var(--serif);letter-spacing:.1em;text-align:left}.brand small{display:block;font:600 9px/2 var(--sans);letter-spacing:.17em}.monogram{position:relative;font:43px/1 var(--serif);border:1px solid var(--forest);width:48px;height:52px;display:grid;place-items:center}.monogram span{font-size:13px;position:absolute;right:0;top:1px;background:var(--white)}.toplinks{display:flex;align-items:center;gap:18px;font-size:12px}.toplinks a{text-decoration:none}.plain{background:transparent;color:var(--forest);font-size:12px;padding:10px 4px;font-weight:600}.layout{display:grid;grid-template-columns:222px minmax(0,1fr) 340px;max-width:1650px;margin:auto;align-items:start}.layout>nav{padding:32px 18px 24px;position:sticky;top:86px;max-height:calc(100dvh - 86px);overflow:auto}.layout>main{padding:36px clamp(20px,3vw,50px) 55px;min-width:0;outline:none}.layout>aside{border-left:1px solid var(--line);position:sticky;top:86px;max-height:calc(100dvh - 86px);overflow:auto;padding:26px 22px 40px;background:#eeeee5;min-height:calc(100dvh - 86px)}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--green);margin:0 0 14px}.navtitle{font:23px var(--serif);margin:5px 0 10px}.progresslabel{font-size:11px;color:var(--muted)}progress{appearance:none;width:100%;height:4px;margin:10px 0 22px;display:block;border:0;background:var(--line)}progress::-webkit-progress-bar{background:var(--line)}progress::-webkit-progress-value{background:var(--green)}.navitem{display:flex;align-items:flex-start;width:100%;background:none;border-radius:5px;margin:5px 0;padding:12px 8px;gap:10px;color:var(--ink);text-align:left;font-size:12px;line-height:1.45}.navitem.active{background:var(--forest);color:white}.navitem.done:not(.active){color:var(--green);background:#e9ede3}.navitem small{display:block;font-size:10px;margin-top:4px}.navitem.active small{color:#ceded1}.navnum{font:17px var(--serif);width:23px;flex-shrink:0}.sessionlabel{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin:24px 8px 5px}.navbottom{margin:25px 8px;border-top:1px solid var(--line);padding-top:18px;font-size:11px;color:var(--muted)}.home-link{display:block;text-align:left;background:none;font-size:12px;padding:8px;color:var(--forest)}
.hero{position:relative;margin-bottom:28px}.hero p{max-width:530px;font-size:15px;line-height:1.8}.lead{font-size:17px!important;color:#526158}.storefront{display:block;width:100%;max-height:250px;object-fit:cover;border:1px solid var(--line);margin:25px 0}.facts{display:flex;gap:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin:24px 0}.facts strong{display:block;font:26px var(--serif);color:var(--forest)}.facts span{font-size:11px;display:block;color:var(--muted)}.primary,.secondary,.soft{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:4px;font-size:13px;line-height:1.5;font-weight:650;min-height:44px;text-decoration:none}.primary{background:var(--forest);color:white}.secondary{background:transparent;border:1px solid #9da99d;color:var(--forest)}.soft{background:var(--mint);color:var(--forest)}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:20px}.sectionhead{display:flex;justify-content:space-between;align-items:baseline;gap:15px;margin:28px 0 12px}.sectionhead h2{font-size:1.5rem;margin:0}.badge{display:inline-block;font-size:10px;color:var(--green);background:var(--mint);padding:3px 8px;border-radius:3px}.missionbrief{font-size:15px;line-height:1.8}.message{border-left:3px solid var(--gold);padding:16px 19px;background:#eee7d7;font-size:14px;margin:20px 0}.message p:last-child{margin-bottom:0}.message .eyebrow{margin-bottom:6px;color:#795a26}.document{background:var(--white);padding:22px;border:1px solid var(--line);margin:20px 0}.document h3{font-size:13px;margin-bottom:12px}.document p,.document li{font-size:13px;line-height:1.7}.document p:last-child{margin-bottom:0}.tablewrap{overflow-x:auto;max-width:100%}table{border-collapse:collapse;width:100%;font-size:12px;font-variant-numeric:tabular-nums}th{font-weight:650;text-align:left;padding:10px 8px;border-bottom:2px solid #becdbd;color:var(--forest);background:#f0f3e9}td{padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}th:first-child,td:first-child{padding-left:10px}.answers{margin:20px 0}.answers input,.answers select{min-width:90px}.answerrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(115px,180px);gap:15px;align-items:center;border-bottom:1px solid var(--line);padding:12px 0}.answerrow label{font-size:13px;line-height:1.45}.unit{font-size:11px;color:var(--muted);display:block;margin-top:3px}input:not([type=checkbox]):not([type=range]):not([type=file]),textarea,select{width:100%;border:1px solid #acb9aa;background:var(--white);border-radius:4px;color:var(--ink);padding:10px;min-height:42px}textarea{resize:vertical;line-height:1.6;font-size:14px;min-height:140px}.writing{margin:25px 0}.writing label{display:block;font-size:14px;font-weight:650;margin-bottom:8px}.counter{font-size:11px;color:var(--muted);text-align:right;margin:4px 0 0}.counter.enough{color:var(--green)}.input-status{font-size:11px;margin-top:4px}.correct{color:var(--green)}.incorrect{color:var(--red)}.answerrow:has(.incorrect) input{border-color:var(--red)}.gate{background:#e9eee4;padding:20px;margin:28px 0;border:1px solid #c5d0be}.gate h3{margin-bottom:8px;font-size:15px}.gate p{font-size:12px;margin-bottom:10px}.missing{font-size:12px;color:#7b3f20}.stepsbar{display:flex;gap:8px;margin:22px 0;font-size:10px;flex-wrap:wrap}.stepsbar span{padding:5px 8px;border-bottom:2px solid var(--line);color:var(--muted)}.stepsbar span.current{color:var(--forest);border-color:var(--forest)}.checkline{display:flex;gap:10px;align-items:flex-start;font-size:12px;margin:13px 0}.checkline input{margin-top:4px;accent-color:var(--green);width:17px;height:17px;flex-shrink:0}.completebox{border:1px solid #97b397;background:#e5efe0;padding:20px;margin:25px 0}.completebox h2{font-size:22px}.completebox p{font-size:13px}.initial{padding:12px;border-left:2px solid #b8c3b3;font-size:12px;white-space:pre-wrap;background:#f2f1e9}.saved{font-size:10px;color:var(--muted)}.notice{background:#fff1ce;border-bottom:1px solid #d4b365;color:#5b431b;padding:10px 25px;font-size:13px}.notice.error{background:#fbe9e5;color:#842d24}.notice.success{background:#e5efdf;color:#234927}
.tabs{display:flex;border-bottom:1px solid #bec7b6;gap:5px;margin-bottom:25px}.tabs button{background:none;padding:10px 11px;font-size:12px;color:var(--muted);border-bottom:3px solid transparent}.tabs button[aria-selected=true]{color:var(--forest);font-weight:700;border-bottom-color:var(--forest)}.sideintro{font-size:12px;color:var(--muted);line-height:1.7}.sheet{background:var(--white);border:1px solid #d8ddce;padding:18px;margin-bottom:16px}.sheet h2{font-size:23px}.sheet h3{font-size:12px;margin:20px 0 7px}.sheet p,.sheet li{font-size:12px;line-height:1.8}.sheet ul,.sheet ol{padding-left:18px}.sheet .formula{font-family:var(--sans);font-size:12px;background:#eaf0e5;padding:12px;border-left:2px solid var(--green)}.sheet .warning{background:#f7eedb;padding:10px;font-size:11px}.sheet details{margin:12px 0}.sheet summary{cursor:pointer;font-size:13px;font-weight:600}.lock{border:1px dashed #aab79f;text-align:center;padding:28px 18px}.lock .lockmark{display:block;font:35px var(--serif);color:var(--gold);margin-bottom:10px}.lock p{font-size:12px}.correctiontext{font-size:12px;line-height:1.8}.correctiontext h3{margin:22px 0 7px}.correctiontext ul{padding-left:18px}.correctiontext table{font-size:11px}.correctiontext th,.correctiontext td{padding:7px 4px}.drawerjump{display:none}.animation{margin:24px 0;border:1px solid #b4c5ad;background:#eef2e8;padding:20px}.animation h3{font:23px var(--serif);margin-bottom:8px}.animation p{font-size:12px}.animation label{display:block;font-size:12px;margin:13px 0}.animation input[type=range]{width:100%;accent-color:var(--green)}.animation svg{width:100%;display:block;background:#fafbf6;margin:12px 0}.animresult{font-size:13px;font-weight:600;padding:12px;background:#fffefa}.animcaption{font-size:11px!important;color:#526158}.animation button{font-size:11px;padding:8px 12px}.animcard{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.animcard div{background:#fffefa;padding:10px;text-align:center;font-size:10px}.animcard strong{display:block;font:23px var(--serif);color:var(--forest)}
dialog{border:1px solid var(--line);border-radius:6px;max-width:740px;width:calc(100% - 32px);padding:28px;background:var(--paper);color:var(--ink);max-height:90dvh}dialog::backdrop{background:#122c2699}dialog h2{font-size:30px}dialog p{font-size:14px}dialog form{margin-top:20px}.summaryrow{border-bottom:1px solid var(--line);padding:12px 0;font-size:13px}.summaryrow strong{display:block}.summaryrow select{margin:5px 0}.aliaslabel{display:block;font-size:12px;font-weight:600;margin:20px 0 7px}footer{background:var(--forest);padding:22px 28px;color:#d3ddcb;font-size:10px;text-align:center}.printonly{display:none}.introsteps{border-top:1px solid var(--line);margin-top:25px;padding-top:20px}.introsteps p{font-size:13px}.introsteps b{font-size:12px;color:var(--forest)}
@media(min-width:1600px){.layout{grid-template-columns:240px minmax(0,1fr) 380px}}
@media(max-width:1180px){.layout{grid-template-columns:185px minmax(0,1fr) 300px}.layout>main{padding:28px 22px}.layout>aside{padding:22px 16px}.layout>nav{padding:25px 10px}.topbar{padding:13px 22px}.brand{font-size:18px}.toplinks{gap:12px}}
@media(max-width:960px){.layout{grid-template-columns:180px minmax(0,1fr)}.layout>aside{grid-column:2;position:static;min-height:0;max-height:none;border-top:1px solid var(--line)}.layout>main{padding-bottom:20px}.drawerjump{display:inline-flex}.toplinks a{display:none}.layout>nav{grid-row:1/3}.hero h1{font-size:45px}}
@media(max-width:620px){.topbar{position:static;padding:12px 16px;min-height:75px;gap:10px}.brand{font-size:16px;gap:8px}.brand small{font-size:7px}.monogram{width:34px;height:39px;font-size:32px}.toplinks{gap:8px}.toplinks button{font-size:10px;padding:8px 0}.layout{display:block}.layout>nav{position:static;max-height:none;padding:16px}.navtitle,.navbottom,.sessionlabel{display:none}.navlist{display:flex;overflow:auto;gap:5px;padding-bottom:7px}.navitem{min-width:145px;max-width:145px;padding:10px;margin:0;font-size:10px}.navnum{font-size:15px;width:16px}.progresslabel{display:inline}.home-link{display:inline;margin-right:14px}progress{margin:8px 0 15px}.layout>main{padding:22px 18px}.layout>aside{padding:24px 18px;border-left:0}.hero h1{font-size:41px}.document{padding:15px}.answerrow{grid-template-columns:minmax(0,1fr) 110px;gap:10px}.answerrow label{font-size:12px}.facts{gap:20px}.facts strong{font-size:23px}.actions>.primary,.actions>.secondary{width:100%}.animation{padding:14px}.animcard strong{font-size:19px}.tablewrap table{min-width:390px}.notice{padding:10px 16px}h1{font-size:35px}.toplinks{flex-direction:column;gap:0;align-items:flex-end}footer{padding:18px}.gate{padding:16px}dialog{padding:22px 16px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{body{background:white;color:black;font-size:11pt}.topbar,nav,aside,.layout,footer,dialog,.notice{display:none!important}.printonly{display:block;padding:0 10mm}.printonly h1{font-size:26pt}.printonly h2{font-size:18pt;break-after:avoid}.printonly p{white-space:pre-wrap;font-size:10pt}.printonly section{break-before:page}.printonly section:first-child{break-before:auto}.printonly .printfield{break-inside:avoid;border-bottom:1px solid #bbb;padding:6pt 0}.printonly small{font-size:9pt}}
