/* Shared disclosure surfaces, matching the program picker. */
body .faq-list{display:grid;gap:10px;border:0;align-content:start}
body .faq-list>details,.detail-page .cost-details,.detail-page .rate-details{border:1px solid #dfd2c0;border-radius:17px;background:#faf6ed;transition:border-color .18s,background .18s;min-width:0}
body .faq-list>details:hover,.detail-page .cost-details:hover,.detail-page .rate-details:hover{border-color:#c4ac93}
body .faq-list>details[open],.detail-page .cost-details[open],.detail-page .rate-details[open]{border-color:#cdb49a;background:#faf6ed}
body .faq-list>details>summary,.detail-page .cost-details>summary,.detail-page .rate-details>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding:17px 20px;font-size:15px;line-height:1.65;color:var(--ink);list-style:none;cursor:pointer;border-radius:16px}
body .faq-list>details>summary::-webkit-details-marker,.detail-page .cost-details>summary::-webkit-details-marker,.detail-page .rate-details>summary::-webkit-details-marker{display:none}
body .faq-list>details[open]>summary,.detail-page .cost-details[open]>summary,.detail-page .rate-details[open]>summary{color:#973723}
body .faq-list summary:focus-visible,.detail-page .cost-details>summary:focus-visible,.detail-page .rate-details>summary:focus-visible{outline:2px solid #a95036;outline-offset:3px}
.disclosure-toggle{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:#efe7d9;color:#86664f;transition:background .18s}
.disclosure-toggle svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s}
details[open]>summary>.disclosure-toggle{background:#ebdac8;color:#973723}
details[open]>summary>.disclosure-toggle svg{transform:rotate(180deg)}
.detail-page .cost-details{margin-top:28px;background:#f4eee2}
.detail-page .cost-detail-body{padding:5px 22px 22px;color:var(--subtle);font-size:14px;line-height:1.85}
.detail-page .cost-inclusions{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:20px}
.detail-page .cost-inclusions h4,.detail-page .requirement-list h4{font-size:14px;font-weight:600;line-height:1.6;color:var(--ink);margin:0 0 7px;letter-spacing:0}
.detail-page .cost-inclusions p{max-width:55ch}
.detail-page .disclosure-note{padding:13px 16px;border-radius:11px;background:#eee5d6;max-width:82ch;margin:0 0 24px;font-size:13px;line-height:1.85}
.detail-page .service-heading{font-size:15px;font-weight:600;letter-spacing:0;color:var(--ink);margin:25px 0 0}
.detail-page .service-list{display:grid;gap:0;margin:5px 0 22px}
.detail-page .service-list article{padding:16px 0;border-bottom:1px solid #e8dece;min-width:0}
.detail-page .service-list article>div{display:flex;flex-direction:row;align-items:baseline;justify-content:space-between;gap:24px}
.detail-page .service-list article strong{font-size:14px;line-height:1.65;font-weight:500;color:var(--ink);max-width:58ch}
.detail-page .service-list article>div>span{font-size:17px;font-weight:500;line-height:1.6;color:#973723;white-space:nowrap}
.detail-page .service-list article p{font-size:13px;line-height:1.85;margin-top:7px;max-width:85ch}
.detail-page .cost-note{font-size:12px;line-height:1.85;max-width:95ch;margin:20px 0 0}
.detail-page .rate-details{margin-top:22px;background:#f5f0e6;border-color:#e5d9c7}
.detail-page .rate-details>summary{min-height:56px;padding:12px 16px;font-size:13px;gap:16px}
.detail-page .rate-details .disclosure-toggle{width:26px;height:26px;flex-basis:26px;background:transparent}
.detail-page .rate-body{padding:0 17px 17px;font-size:12px;line-height:1.85}
.detail-page .rate-body>p{max-width:85ch}
.detail-page .source-price-list{display:grid;margin:14px 0 10px;padding:0}
.detail-page .source-price-list>div{display:grid;grid-template-columns:1fr 1.4fr;gap:25px;padding:10px 0;border-top:1px solid #e5d8c5}
.detail-page .source-price-list dt{color:var(--subtle)}
.detail-page .source-price-list dd{margin:0;color:var(--ink)}
.detail-page .source-links{display:flex;flex-wrap:wrap;gap:4px 22px;margin-top:10px}
.detail-page .source-links a{display:inline-flex;align-items:center;gap:6px;min-height:36px;text-decoration:underline;text-underline-offset:4px;color:#973723}
.detail-page .source-links svg{width:13px;height:13px}
.detail-page .detail-faq .faq-answer{font-size:14px;line-height:1.85;color:var(--subtle);padding:1px 22px 23px;max-width:760px}
.detail-page .requirement-list{display:grid;gap:20px}
.detail-page .requirement-list>div+div{border-top:1px solid #e8dece;padding-top:19px}
.detail-page .requirement-list p{max-width:65ch}
.detail-page .document-list{display:grid;gap:0;list-style:none;padding:0;margin:0}
.detail-page .document-list li{position:relative;line-height:1.8;padding:10px 0 10px 19px;margin:0;border-bottom:1px solid #e8dece}
.detail-page .document-list li:first-child{padding-top:0}
.detail-page .document-list li:before{content:'';position:absolute;left:1px;top:20px;width:5px;height:5px;border-radius:50%;background:#ad7559}
.detail-page .document-list li:first-child:before{top:10px}
.detail-page .answer-note{font-size:12px;line-height:1.85;margin-top:17px;max-width:65ch}
/* The homepage keeps its red background with the same shape and controls. */
body[data-page="home"] .faq-list>details{background:#ffffff06;border-color:#f4efe337}
body[data-page="home"] .faq-list>details:hover{border-color:#f4efe365;background:#ffffff0b}
body[data-page="home"] .faq-list>details[open]{background:#f4efe3;color:var(--ink);border-color:#f4efe3}
body[data-page="home"] .faq-list>details>summary{color:var(--white);font-size:15px;padding:17px 20px}
body[data-page="home"] .faq-list>details[open]>summary{color:#973723}
body[data-page="home"] .faq-list .disclosure-toggle{background:#f4efe317;color:#e6d0bd}
body[data-page="home"] .faq-list>details[open] .disclosure-toggle{background:#ebdac8;color:#973723}
body[data-page="home"] .faq-answer{padding:0 22px 23px;font-size:14px;line-height:1.85;color:#74665b}
body[data-page="home"] .faq-list summary:focus-visible{outline-color:#e6ccb1}
@media(max-width:600px){
body .faq-list{gap:9px}
body .faq-list>details,.detail-page .cost-details,.detail-page .rate-details{border-radius:14px}
body .faq-list>details>summary,.detail-page .cost-details>summary{font-size:14px;min-height:64px;padding:15px 16px;gap:14px;border-radius:13px}
.disclosure-toggle{width:28px;height:28px;flex-basis:28px}
.detail-page .cost-details{margin-top:24px;margin-inline:-3px}
.detail-page .cost-detail-body{padding:2px 16px 18px;font-size:13px}
.detail-page .cost-inclusions{grid-template-columns:1fr;gap:18px;margin-bottom:18px}
.detail-page .disclosure-note{font-size:12px;padding:12px 13px;margin-bottom:20px}
.detail-page .service-heading{font-size:14px;margin-top:22px}
.detail-page .service-list article>div{flex-direction:column;align-items:flex-start;gap:5px}
.detail-page .service-list article>div>span{font-size:17px}
.detail-page .service-list article{padding:15px 0}
.detail-page .service-list article p{font-size:12px;margin-top:8px}
.detail-page .cost-note{font-size:12px}
.detail-page .rate-details>summary{padding:12px 13px;font-size:12px;gap:10px}
.detail-page .rate-body{padding:0 13px 14px}
.detail-page .source-price-list>div{grid-template-columns:1fr;gap:3px;padding:9px 0}
.detail-page .source-links{gap:0 18px}
.detail-page .detail-faq .faq-answer{padding:1px 17px 20px;font-size:13px;line-height:1.85}
.detail-page .requirement-list{gap:17px}
.detail-page .requirement-list>div+div{padding-top:16px}
.detail-page .requirement-list h4{font-size:13px}
.detail-page .answer-note{font-size:12px}
body[data-page="home"] .faq-list>details>summary{font-size:14px;padding:15px 16px}
body[data-page="home"] .faq-answer{font-size:13px;padding:0 17px 20px}
}
