/* r3 section pages; global header, footer, navigation and controls are owned by site.css. */
.section-page main{padding-bottom:80px}
.section-page :where(main) h2{font-size:38px;line-height:44px;margin-bottom:20px}
.section-page :where(main) h3{font-size:24px;line-height:30px}
.section-page :where(main) p{font-size:18px;line-height:29px}
.section-page .muted{color:var(--muted)}
.section-page .small-note{font-size:14px;line-height:23px;color:var(--muted)}
.section-page .page-head>p{font-size:19px;line-height:31px}
.page-local-nav{display:flex;flex-wrap:wrap;gap:0 32px;margin:0 0 32px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.page-local-nav a{display:inline-flex;align-items:center;min-height:44px;font-size:16px;line-height:25px;text-underline-offset:5px}
.how-block{scroll-margin-top:28px}
.service-rows{border-top:1px solid var(--line)}
.service-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;padding:44px 0;border-bottom:1px solid var(--line)}
.service-row-heading{display:flex;align-items:flex-start;gap:24px;min-width:0}
.service-row-heading h2{font-size:32px;line-height:39px;margin:0;max-width:380px}
.service-icon{display:block;flex:none;width:44px;height:44px;color:var(--blue)}
.service-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.service-row-copy>p{color:var(--muted);max-width:630px}
.service-preparation{padding-top:20px;margin-top:22px;border-top:1px solid var(--line)}
.service-preparation strong{display:block;font-size:16px;line-height:25px;margin-bottom:8px}
.service-preparation p{font-size:16px;line-height:26px;color:var(--muted)}
.service-row .button{margin-top:24px}
.page-end{display:flex;align-items:center;justify-content:space-between;gap:40px;background:#edf3fd;border:1px solid var(--line);border-radius:12px;padding:36px;margin-top:56px}
.page-end>div{max-width:720px;min-width:0}.page-end h2{font-size:30px;line-height:38px;margin-bottom:14px}.page-end p{color:var(--muted)}
.page-end>.button{flex:none}
.article-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:8px}
.material-card{min-width:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.material-card>a{display:flex;flex-direction:column;height:100%;color:var(--ink);text-decoration:none}
.material-card img{width:100%;height:200px;object-fit:cover;display:block}
.material-card-copy{display:flex;flex-direction:column;flex:1;padding:26px}
.material-card .material-topic{font-size:14px;line-height:23px;color:var(--muted);margin-bottom:14px}
.material-card h2{font-family:var(--font-heading);font-size:26px;line-height:33px;margin:0 0 16px}
.material-card p{color:var(--muted)}
.material-card .material-read{margin-top:auto;padding-top:24px;font-size:16px;line-height:25px;font-weight:650;color:var(--blue)}
.material-card a:hover h2{text-decoration:underline;text-underline-offset:5px}
.how-role{max-width:900px;padding:28px 32px;border-left:3px solid #82a8e8;background:var(--pale);border-radius:0 12px 12px 0;margin-bottom:44px}
.how-role strong{display:block;font-size:20px;line-height:29px;margin-bottom:12px}
.how-role p{color:var(--muted)}
.how-block{padding-block:48px;border-top:1px solid var(--line)}
.how-block-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;margin-bottom:36px;align-items:start}
.how-block-heading h2{margin:0}.how-block-heading p{color:var(--muted)}
.work-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.work-steps li{padding-top:24px;border-top:2px solid #a9bfe7}
.work-steps li>span{display:block;color:var(--blue);font-size:16px;line-height:25px;margin-bottom:24px;font-variant-numeric:tabular-nums}
.work-steps h3{margin:0 0 16px}.work-steps p{color:var(--muted)}
.how-preparation{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px}
.how-preparation h2{max-width:480px}.how-preparation .prepare-copy>p{color:var(--muted)}
.how-preparation label[for]{display:block;font-size:16px;line-height:25px;font-weight:650;margin:28px 0 10px}
.how-preparation select{width:100%;min-height:52px;border:1px solid var(--control-border);border-radius:8px;background:#fff;color:var(--ink);padding:12px 16px}
.how-preparation .custom-select{width:100%;max-width:440px}
.checklist-panel{padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--pale);min-width:0}
.checklist-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.checklist-top h3{font-size:23px;line-height:30px}.checklist-top>span{font-size:14px;line-height:23px;white-space:nowrap;color:var(--blue);padding-top:3px}
.preparation-item{display:flex;align-items:flex-start;gap:14px;padding:18px 0;border-bottom:1px solid var(--line);font-size:17px;line-height:27px;cursor:pointer}
.preparation-item input{flex:none;width:22px;height:22px;margin:3px 0 0;accent-color:var(--blue)}
.checklist-bottom{padding-top:20px}.checklist-bottom p{font-size:14px;line-height:23px;color:var(--muted)}
.checklist-bottom button{border:0;background:transparent;color:var(--blue);font-size:16px;line-height:25px;min-height:44px;padding:12px 0 0;text-align:left;text-decoration:underline;text-underline-offset:4px}
.situation-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 48px}
.situation-list article{border-top:1px solid var(--line);padding-top:24px}
.situation-list h3{margin-bottom:14px}.situation-list p{color:var(--muted)}
.how-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px}
.how-faq>div>p{color:var(--muted)}
.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;list-style:none;font-size:18px;line-height:29px;font-weight:650;padding:24px 0}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary>span{font-size:26px;line-height:29px;color:var(--blue);flex:none;font-weight:400}
.faq-list details[open] summary>span{transform:rotate(45deg)}
.faq-list details>p{padding:0 28px 24px 0;color:var(--muted)}
.contact-routes{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.contact-route{padding:32px;border:1px solid var(--line);border-radius:12px}
.contact-route:first-child{background:#edf3fd}.contact-route h2{font-size:30px;line-height:38px}
.contact-route p{color:var(--muted)}
.contact-route .button,.contact-route .email-address{margin-top:28px}
.contact-route .email-address{display:inline-flex;align-items:center;font-size:24px;line-height:32px;overflow-wrap:anywhere;max-width:100%}
.contact-details{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:64px;padding:48px 0 0;margin-top:48px;border-top:1px solid var(--line)}
.contact-details h2{font-size:32px;line-height:39px;margin-bottom:12px}.contact-details .person-role{color:var(--muted)}
.contact-details .contact-notes p{margin-bottom:20px;color:var(--muted)}.contact-details a{font-size:16px;line-height:26px}
@media(max-width:1000px){
 .service-row,.how-block-heading,.how-preparation,.how-faq,.contact-details{gap:36px}
 .article-index{gap:20px}.material-card-copy{padding:22px}.material-card h2{font-size:24px;line-height:31px}
 .work-steps{gap:24px}.page-end{padding:30px}
}
@media(max-width:800px){
 .article-index{grid-template-columns:1fr}.material-card img{height:280px}.material-card-copy{padding:28px}.material-card h2{font-size:28px;line-height:35px}
 .service-row{grid-template-columns:1fr;gap:24px}.service-row-heading h2{max-width:none}
 .how-block-heading,.how-preparation,.how-faq{grid-template-columns:1fr;gap:28px}
 .how-preparation .custom-select{max-width:none}.work-steps{grid-template-columns:1fr;gap:28px}
 .work-steps li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:0 16px}
 .work-steps li>span{grid-row:span 2;margin:0}.work-steps li p{grid-column:2}
 .page-end{display:block}.page-end>.button{margin-top:24px}
 .contact-routes{gap:20px}.contact-route{padding:26px}.contact-route .email-address{font-size:21px;line-height:30px}
 .contact-details{grid-template-columns:1fr;gap:24px}
}
@media(max-width:600px){
 .section-page main{padding-bottom:48px}.section-page :where(main) h2{font-size:29px;line-height:35px}
 .section-page :where(main) p{font-size:17px;line-height:27px}
 .section-page .page-head>p{font-size:17px;line-height:27px}.page-local-nav{gap:0 24px}
 .service-row{padding:32px 0}.service-row-heading{gap:18px}.service-icon{width:36px;height:36px}.service-row-heading h2{font-size:29px;line-height:35px}
 .service-preparation p{font-size:16px;line-height:26px}
 .page-end{margin-top:40px;padding:26px}.page-end h2{font-size:29px;line-height:35px}
 .material-card img{height:200px}.material-card-copy{padding:24px}.material-card h2{font-size:26px;line-height:33px}
 .how-role{padding:24px;margin-bottom:36px}.how-block{padding-block:36px}
 .how-block-heading{margin-bottom:28px}.situation-list{grid-template-columns:1fr;gap:28px}
 .how-preparation h2{max-width:none}.checklist-panel{padding:24px}.checklist-top{display:block}.checklist-top>span{display:block;margin-top:10px}
 .preparation-item{font-size:17px;line-height:27px}
 .checklist-bottom p,.section-page .small-note{font-size:14px;line-height:23px}
 .faq-list summary{font-size:17px;line-height:27px;padding-block:22px;gap:16px}
 .faq-list details>p{padding-right:0}.contact-routes{grid-template-columns:1fr}
 .contact-route{padding:26px}.contact-route h2{font-size:29px;line-height:35px}
 .contact-route .email-address{font-size:23px;line-height:31px}
 .contact-details{margin-top:36px;padding-top:36px}
}
@media(max-width:350px){
 .service-row-heading{display:block}.service-icon{margin-bottom:18px}.checklist-panel,.contact-route,.page-end{padding:20px}
 .contact-route .email-address{font-size:21px;line-height:29px}
}

