/* A compact project brief and its home-page overview. */
.home-closing{padding:25px 0 50px}.home-closing .project-quote{max-width:900px;margin:0 auto;padding-top:30px}.home-closing .project-quote blockquote{font-size:21px;line-height:2.1}.home-closing .project-quote figcaption{font-size:12px;margin-top:20px}
@media(max-width:580px){.home-closing{padding:15px 0 35px}.home-closing .project-quote{padding-top:24px}.home-closing .project-quote blockquote{font-size:17px;line-height:2.1}.home-closing .project-quote figcaption{font-size:11px;margin-top:17px}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.requirements-page,.requirements-footer{width:min(1120px,calc(100% - 100px));margin-inline:auto}
.requirements-intro{padding:45px 0 31px}.requirements-intro h1{font:400 43px/1.18 var(--serif);letter-spacing:-1.3px;margin-top:16px}.requirements-intro>p{font-size:14px;line-height:1.85;color:var(--muted);margin-top:18px;max-width:940px}.requirements-intro strong{color:var(--accent);font-weight:600}
.requirements-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:34px;align-items:start}.requirements-section h2{font-size:21px;font-weight:500;letter-spacing:-.3px}.requirements-section{border-top:1px solid var(--line);padding-top:22px}
.requirement-deliverable{display:grid;grid-template-columns:91px minmax(0,1fr);gap:15px;padding-top:23px}.requirement-number{font:35px/1.1 var(--mono);letter-spacing:-1.5px;color:var(--accent)}.requirement-number small{display:block;font:10px/1.8 var(--sans);letter-spacing:0;color:var(--muted);margin-top:5px}.requirement-talk{font-size:29px}.requirement-deliverable h3{font-size:14px;line-height:1.6;font-weight:600}.requirement-deliverable p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:5px}.requirement-links{display:flex;gap:16px;flex-wrap:wrap}.requirement-links a{text-decoration:underline;text-underline-offset:3px;color:var(--accent)}
.submission-compact{margin-top:26px;padding-top:20px}.submission-compact dl{margin:13px 0 0}.submission-compact dl>div{display:grid;grid-template-columns:115px minmax(0,1fr);gap:12px;padding:8px 0;font-size:12px;line-height:1.7}.submission-compact dt{color:var(--muted)}.submission-compact dd{margin:0}.submission-compact time{font-size:12px;font-weight:600;color:var(--accent)}.submission-compact small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.submission-compact code{font-size:10px;white-space:nowrap}
.rubric-heading{display:flex;justify-content:space-between;gap:15px;align-items:center}.rubric-heading>span{font:10px/1.5 var(--mono);color:var(--accent)}.rubric-compact>p{font-size:11px;line-height:1.8;color:var(--muted);margin-top:10px}.rubric-compact table{border-collapse:collapse;width:100%;font-size:12px;line-height:1.6;margin-top:15px}.rubric-compact th,.rubric-compact td{padding:12px 9px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.rubric-compact thead th{background:#f7e8d2;font-size:10px;font-weight:500;color:var(--muted)}.rubric-compact tbody th{font-weight:500;width:37%}.rubric-compact td:nth-child(2){font:21px/1.25 var(--mono);color:var(--accent);text-align:center}.rubric-compact thead th:nth-child(2){text-align:center;width:50px}.rubric-compact td:last-child{color:var(--muted);font-size:11px}.rubric-compact .rubric-principle{padding:12px 14px;background:#faecd8;border-radius:3px;color:var(--accent);font-size:12px;line-height:1.8;margin-top:17px}
.requirements-policy{font-size:12px;line-height:1.85;color:var(--muted);margin-top:30px;padding-top:19px;border-top:1px solid var(--line)}.requirements-policy strong{color:var(--accent);font-weight:600}
.project-quote{margin:35px 0 45px;padding:23px 0 0;border-top:2px solid var(--accent)}.project-quote blockquote{margin:0;font-family:"Noto Serif SC","Songti SC","SimSun",serif;font-size:18px;line-height:2.1;letter-spacing:.03em;color:#654443}.project-quote p{margin:0}.project-quote figcaption{font-size:11px;line-height:1.8;color:var(--muted);margin-top:14px;text-align:right}.requirements-footer>a:first-child{font:10px var(--mono);letter-spacing:1px}.requirements-footer p{font-size:10px}
.project-summary{margin-top:30px;border:1px solid #dcc3a9;border-radius:5px;background:#fffdf8;padding:25px 28px;scroll-margin-top:25px}.project-summary-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.project-summary-heading h3{font-size:23px;font-weight:500;line-height:1.35;letter-spacing:-.5px}.project-summary-heading a{font-size:11px;white-space:nowrap;text-decoration:underline;text-underline-offset:4px;color:var(--accent)}
.project-summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:23px}.project-summary-cards>div{border-left:2px solid var(--gold);padding-left:17px}.project-summary-cards strong{font:40px/1.2 var(--mono);color:var(--accent);letter-spacing:-1.5px}.project-summary-cards strong small{font:11px/1.5 var(--sans);letter-spacing:0;color:var(--muted);margin-left:5px}.project-summary-cards b{display:block;font-size:12px;font-weight:500;margin-top:7px}.project-summary-cards p{font-size:10px;line-height:1.7;color:var(--muted);margin-top:3px}
.project-summary-submit{display:flex;gap:9px 20px;flex-wrap:wrap;font-size:10px;line-height:1.8;color:var(--muted);padding:14px 0;margin-top:21px;border-block:1px solid var(--line)}.project-summary-submit time{font-weight:600;color:var(--accent)}.project-summary-submit code{font-size:9px}
.score-overview{margin:18px 0 0}.score-overview figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:15px;font-size:11px;margin-bottom:10px}.score-overview figcaption span{color:var(--muted);font-size:10px}.score-bar{display:flex;height:30px;border-radius:3px;overflow:hidden}.score-bar span{display:flex;align-items:center;justify-content:space-evenly;font:11px var(--mono)}
.score-1{background:#8f2b3b;color:#fff8ef}.score-2{background:#b64c50;color:#fff8ef}.score-3{background:#be7e49;color:#35231c}.score-4{background:#e4b961;color:#4a3529}.score-5{background:#e4c8a5;color:#4a3529}.score-6{background:#f0e0c8;color:#4a3529}
.score-legend{display:grid;grid-template-columns:repeat(3,1fr);gap:7px 15px;margin-top:13px;font-size:10px;line-height:1.7}.score-legend>span{display:flex;gap:6px;align-items:baseline}.score-legend i{display:inline-block;width:7px;height:7px;border-radius:1px;flex-shrink:0}.score-legend b{font-weight:600;margin-left:auto;color:var(--accent)}.project-summary-note{margin-top:13px;font-size:10px;color:var(--muted)}
@media(max-width:1100px){.requirements-grid{gap:26px;grid-template-columns:1fr 1.12fr}.requirements-intro h1{font-size:39px}.requirement-deliverable{grid-template-columns:78px minmax(0,1fr);gap:10px}.requirement-number{font-size:32px}.requirement-talk{font-size:26px}.rubric-compact th,.rubric-compact td{padding:11px 6px}.rubric-compact table{font-size:12px}.rubric-compact td:last-child{font-size:11px}.submission-compact dl>div{grid-template-columns:105px minmax(0,1fr);gap:10px}.project-summary-heading h3{font-size:21px}}
@media(max-width:800px){.requirements-page,.requirements-footer{width:calc(100% - 48px)}.requirements-intro{padding-top:33px}.requirements-intro h1{font-size:36px}.requirements-grid{grid-template-columns:1fr;gap:28px}.rubric-compact table{font-size:13px}.rubric-compact td:last-child{font-size:12px}.rubric-compact tbody th{width:39%}.rubric-compact th,.rubric-compact td{padding:12px}.requirement-deliverable{grid-template-columns:91px minmax(0,1fr);gap:15px}.requirement-deliverable p{font-size:13px}.submission-compact dl>div{grid-template-columns:125px minmax(0,1fr);font-size:13px}.project-summary{padding:22px}.project-summary-heading h3{font-size:20px}.project-summary-cards strong{font-size:34px}.project-summary-cards>div{padding-left:13px}.score-legend{font-size:9px}}
@media(max-width:580px){.requirements-page,.requirements-footer{width:calc(100% - 40px)}.requirements-body .site-header .text-link{font-size:11px}.requirements-intro{padding:28px 0 25px}.requirements-intro h1{font-size:35px;letter-spacing:-.8px;line-height:1.15}.requirements-intro>p{font-size:13px}.requirements-section h2{font-size:21px}.requirement-deliverable{grid-template-columns:78px minmax(0,1fr);gap:12px}.requirement-number{font-size:31px}.requirement-talk{font-size:25px}.requirement-deliverable p{font-size:12px}.requirement-links{gap:12px}.submission-compact dl>div{grid-template-columns:98px minmax(0,1fr);gap:10px;font-size:12px}.submission-compact time{font-size:11px}.submission-compact code{font-size:9px}.rubric-compact table{font-size:12px}.rubric-compact th,.rubric-compact td{padding:11px 5px}.rubric-compact td:last-child{font-size:11px}.rubric-compact td:nth-child(2){font-size:20px}.rubric-compact thead th:nth-child(2){width:43px}.requirements-policy{font-size:12px;margin-top:23px}.project-quote{margin-top:27px;padding-top:21px;margin-bottom:30px}.project-quote blockquote{font-size:16px;line-height:2.05}.project-quote figcaption{font-size:10px}.requirements-footer{gap:13px}.requirements-footer p{font-size:9px}.requirements-footer>a:last-child{font-size:10px}.project-summary{padding:20px 16px;margin-top:25px}.project-summary-heading{display:block}.project-summary-heading h3{font-size:21px}.project-summary-heading a{display:inline-block;margin-top:9px;font-size:10px}.project-summary-cards{gap:10px;margin-top:20px}.project-summary-cards>div{padding-left:9px}.project-summary-cards strong{font-size:28px}.project-summary-cards strong small{display:block;font-size:9px;margin:2px 0 0}.project-summary-cards b{font-size:10px;line-height:1.6;margin-top:8px}.project-summary-cards p{font-size:9px}.project-summary-submit{font-size:10px;gap:6px 15px;margin-top:18px;padding:12px 0}.score-overview figcaption{display:block;font-size:10px}.score-overview figcaption span{display:block;margin-top:3px;font-size:9px}.score-bar{height:27px}.score-bar span{font-size:10px}.score-legend{grid-template-columns:1fr 1fr;gap:7px 13px;font-size:9px}.project-summary-note{font-size:9px;line-height:1.8}}
@media print{.requirements-body .site-header,.requirements-footer{display:none}.requirements-page{width:auto}.requirements-intro{padding-top:0}.requirements-grid{grid-template-columns:1fr 1.1fr;gap:24px}.requirements-section,.project-quote{break-inside:avoid}.requirements-body{background:white;color:black}}
