/* Editorial tools inherit the publication's type, colour and reading measure. */
.article-faqs{border-top:1px solid var(--line);margin:28px 0 38px}
.article-faqs details{border-bottom:1px solid var(--line);scroll-margin-top:110px}
.article-faqs summary{font:500 22px/1.4 var(--sans);letter-spacing:-.015em;padding:25px 0;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;cursor:pointer;list-style:none}
.article-faqs summary::-webkit-details-marker{display:none}
.article-faqs summary>span{font:400 27px/1.1 var(--sans);color:#a64224;flex:none;transition:transform .2s}
.article-faqs details[open] summary>span{transform:rotate(45deg)}
.article-faqs details[open] summary{padding-bottom:17px}
.journal-copy .faq-answer p{font-size:18px;line-height:1.8;margin:0 0 27px}
.article-resources{display:grid;gap:18px;margin:28px 0 42px}
.journal-copy .resource-download{display:block;padding:30px 32px;border:1px solid #bfc8b5;background:#e7ebdf;text-decoration:none;color:#263a27;transition:background .2s,border-color .2s}
.journal-copy .resource-download:hover{background:#dfe6d4;border-color:#86947c}
.resource-format{font:500 14px/1.5 var(--body);letter-spacing:.04em;display:block;margin-bottom:20px;color:#526047}
.resource-download strong{display:flex;justify-content:space-between;gap:25px;font:500 29px/1.15 var(--sans);letter-spacing:-.025em;margin-bottom:13px}
.resource-download>span:not(.resource-format):not(.resource-action){font-size:16px;line-height:1.75;display:block;max-width:620px}
.resource-action{display:block;font-size:14px;font-weight:600;margin-top:23px;text-decoration:underline;text-underline-offset:5px}
.cost-calculator{margin:30px 0 45px;background:#e9ecdf;border:1px solid #c0c8b4;padding:30px;max-width:100%;color:#273b27}
.cost-calculator fieldset{border:0;padding:0;margin:0;min-width:0}
.cost-calculator legend{font:500 25px/1.3 var(--sans);letter-spacing:-.025em;padding:0;margin-bottom:24px}
.budget-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 24px}
.budget-inputs label{display:block;min-width:0}
.budget-inputs label>span{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:14px;font-weight:500;line-height:1.5;margin-bottom:8px}
.budget-inputs small{font-size:14px;font-weight:400;color:#58644e}
.budget-inputs input{display:block;width:100%;box-sizing:border-box;background:#f7f8f1;border:1px solid #abb69f;border-radius:3px;color:#253a26;font:500 20px/1.3 var(--sans);padding:13px 14px;min-height:50px}
.budget-inputs input:focus-visible{outline:2px solid #536b47;outline-offset:2px}
.budget-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.budget-actions button{font:500 14px/1.5 var(--body);padding:12px 16px;border:1px solid #7b8b6c;background:transparent;color:#263b28;min-height:46px;cursor:pointer;border-radius:2px}
.budget-actions button[type=submit]{background:#2d432e;color:#f6f6eb;border-color:#2d432e}
.budget-actions button:hover{border-color:#2d432e;box-shadow:inset 0 0 0 1px #2d432e}
.journal-copy .budget-feedback{font-size:14px;line-height:1.6;min-height:23px;margin:17px 0}
.budget-results{margin:0;border-top:1px solid #b8c3ad}
.budget-results>div{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 25px;border-bottom:1px solid #c3cbb9;padding:16px 0}
.budget-results dt{font-size:16px;line-height:1.5}
.budget-results dd{font:500 24px/1.3 var(--sans);letter-spacing:-.025em;white-space:nowrap;margin:0;font-variant-numeric:tabular-nums}
.budget-results>div:last-child{padding-block:24px;border-bottom:0}
.budget-results>div:last-child dd{font-size:34px}
.budget-results>div:last-child dt{font-weight:600;max-width:180px}
.journal-copy .budget-footnote{font-size:14px;line-height:1.7;margin:18px 0 0;color:#526047}
.journal-copy .revision-note{font-size:14px;line-height:1.8;margin-top:25px;color:#536047}
.rail-sticky{max-height:calc(100dvh - 125px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-right:12px}
.reading-rail .contents-nav a{padding-block:10px}
.journal-copy .table-scroll{max-width:100%;overscroll-behavior-x:contain}
.journal-copy a{overflow-wrap:anywhere}
@media(max-width:640px){
 .article-faqs summary{font-size:20px;padding-block:22px}
 .journal-copy .resource-download{padding:24px}
 .resource-download strong{font-size:26px}
 .cost-calculator{padding:22px 18px}
 .budget-inputs{gap:18px 14px}
 .budget-inputs label>span{display:block;min-height:43px}
 .budget-inputs small{display:block}
 .budget-results>div{gap:15px}
 .budget-results dd{font-size:22px}
 .budget-results>div:last-child dd{font-size:27px}
 .budget-results>div:last-child{display:block}
 .budget-results>div:last-child dt{max-width:none;margin-bottom:8px}
 .budget-actions button{flex:1 1 auto}
}
@media(prefers-reduced-motion:reduce){.article-faqs summary>span,.resource-download{transition:none}}
@media print{.article-faqs details::details-content{content-visibility:visible!important;display:block!important}.article-faqs .faq-answer{display:block!important}.cost-calculator form,.budget-actions,.budget-feedback{display:none}.article-resources,.cost-calculator{break-inside:avoid}.rail-sticky{max-height:none}.resource-download{background:transparent!important}}
