/* Public supporting compositions. Generated physician sites retain their design. */
.support-heading { max-width:880px; padding:72px 0 60px; }
.marketing-page .support-heading h1 { font-size:clamp(44px,6vw,80px); line-height:1.04; margin:0 0 24px; max-width:18ch; }
.support-intro { color:var(--slate); font-size:clamp(19px,2vw,24px); line-height:1.5; max-width:48ch; margin:0; }
.support-heading .guide-disclosure { max-width:64ch; font-size:14px; line-height:1.6; margin:24px 0 0; }
.company-introduction { display:grid; grid-template-columns:1fr 1.35fr; gap:80px; padding:48px 0 72px; border-top:1px solid var(--warm-rule); }
.company-introduction h2 { font-size:clamp(28px,3.5vw,44px); line-height:1.15; margin:0; max-width:18ch; }
.company-introduction p { margin:0 0 24px; max-width:65ch; color:var(--slate); line-height:1.65; }
.company-introduction .text-link { display:inline-block; padding-block:10px; }
.service-charter { margin-bottom:96px; }
.service-charter details { border-top:1px solid var(--warm-rule); padding:0; scroll-margin-top:100px; }
.service-charter details:last-child { border-bottom:1px solid var(--warm-rule); }
.service-charter summary { cursor:pointer; padding:28px 0; }
.service-charter summary h2 { display:inline; margin:0; font-size:26px; line-height:1.3; }
.charter-content { margin:0 0 32px auto; max-width:760px; color:var(--slate); line-height:1.65; }
.charter-content .guide-rows { margin:0; }
.charter-content .guide-rows dt { font-size:19px; color:var(--navy); }
.charter-content > p:first-child { margin-top:0; }
.marketing-page.library-page .library-hero { display:block; max-width:860px; text-align:center; padding:64px 0 44px; }
.marketing-page.library-page .library-hero h1 { max-width:none; font-size:clamp(44px,6vw,80px); line-height:1.04; }
.marketing-page.library-page .library-hero > div > p { max-width:56ch; font-size:18px; margin:24px auto 0; }
.current-example { width:min(1360px,calc(100% - 80px)); margin:0 auto 88px; }
.editorial-feature { display:flex; flex-direction:column; overflow:visible; }
.editorial-feature .library-preview { width:100%; border:0; aspect-ratio:1360 / 780; border-radius:12px; background:var(--cream); }
.editorial-feature .library-preview picture { display:block; width:100%; height:100%; }
.editorial-feature .library-preview img { object-fit:cover; object-position:top; }
.editorial-feature .library-copy { width:100%; display:grid; grid-template-columns:.7fr 1.3fr 1fr; gap:12px 40px; align-items:start; padding:28px 0 0; }
.editorial-feature .library-copy h2 { grid-row:1 / span 2; margin:0; font-size:36px; line-height:1.1; }
.editorial-feature .library-copy > p { grid-column:2; font-size:16px; min-height:0; max-width:44ch; }
.editorial-feature .example-availability { font-size:14px !important; font-weight:600; color:var(--navy); }
.editorial-feature .library-actions { grid-column:3; grid-row:1 / span 2; display:flex; align-items:start; flex-direction:column; gap:0; margin:0; padding:0; border:0; }
.editorial-feature .library-actions a { min-height:44px; }
.current-example-caption { margin:16px 0 0; font-size:13px; color:var(--slate); }
.marketing-page.library-page .library-main { padding:48px 0 64px; }
.reference-heading { display:grid; grid-template-columns:1fr 1.2fr; gap:64px; margin-bottom:32px; }
.reference-heading h2 { font-size:clamp(28px,3vw,40px); line-height:1.15; margin:0; }
.reference-heading p { margin:0; max-width:65ch; line-height:1.65; color:var(--slate); }
.library-main .library-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:44px 28px; }
.library-main .library-preview { border-radius:8px; border:0; }
.library-main .library-copy { padding-top:18px; }
.library-main .library-copy h3 { font-size:25px; }
.library-main .library-copy > p { min-height:0; }
.library-main .library-card-label { font-size:12px; }
.library-main .library-actions { margin-top:16px; }
.library-main .library-footnote { text-align:left; max-width:none; margin-top:40px; }
.marketing-page.library-page .custom-example { display:grid; grid-template-columns:1fr 1.2fr; gap:64px; padding:48px 0 72px; margin-bottom:0; }
.custom-example h2 { font-size:36px; }
.custom-example p { margin:0 0 24px; }
.custom-example .button { white-space:normal; text-align:center; }
.guide-feature { display:grid; grid-template-columns:1fr 1.35fr; gap:64px; padding:40px 0; border-block:1px solid var(--warm-rule); margin-bottom:24px; }
.guide-feature h2 { font-size:clamp(28px,3vw,40px); line-height:1.12; margin:0 0 20px; max-width:15ch; }
.guide-feature p { max-width:45ch; color:var(--slate); line-height:1.65; margin:0; }
.guide-feature .text-link { display:inline-flex; align-items:center; gap:12px; min-height:44px; padding-block:10px; margin-top:16px; }
.guide-feature figure { margin:0; }
.guide-feature blockquote { margin:0; font-size:clamp(21px,2.1vw,28px); line-height:1.45; letter-spacing:-.015em; }
.guide-feature figcaption { color:var(--slate); font-size:13px; line-height:1.6; margin-top:24px; }
.marketing-page.guides-index-page .guide-index { display:grid; grid-template-columns:1fr 1fr; gap:0 64px; margin:0; padding:0 0 80px; }
.marketing-page.guides-index-page .guide-index li { display:block; padding:28px 0; border-top:1px solid var(--warm-rule); border-bottom:0; }
.marketing-page.guides-index-page .guide-index a { font-size:24px; line-height:1.25; max-width:28ch; display:inline-block; }
.marketing-page.guides-index-page .guide-index p { font-size:16px; line-height:1.6; max-width:56ch; margin:12px 0 0; }
.student-main { margin-inline:auto; }
.student-fine { font-size:13px; }
.student-review { display:grid; grid-template-columns:1.2fr 1fr; gap:80px; padding:44px 0 56px; border-top:1px solid var(--warm-rule); }
.student-review h2 { font-size:clamp(28px,3.5vw,44px); line-height:1.12; margin:0 0 24px; }
.student-review p { max-width:60ch; line-height:1.65; color:var(--slate); }
.student-review .button { margin-top:16px; white-space:normal; text-align:center; }
.student-review .student-availability { margin:12px 0 0; font-size:14px; }
.student-includes { padding:0 0 0 40px; border-left:1px solid var(--warm-rule); }
.student-includes h3 { font-size:21px; margin:0 0 24px; }
.student-includes ul { list-style:none; margin:0; padding:0; }
.student-includes li { padding:12px 0; border-top:1px solid var(--warm-rule); color:var(--slate); }
.student-includes p { font-size:14px; }
.student-reading { max-width:900px; margin:0 0 88px; }
.student-reading details { border-top:1px solid var(--warm-rule); }
.student-reading details:last-child { border-bottom:1px solid var(--warm-rule); }
.student-reading summary { font-size:22px; cursor:pointer; padding:24px 0; }
.student-reading details > div { max-width:72ch; padding:0 0 24px 24px; color:var(--slate); line-height:1.65; }
.student-reading p:first-child { margin-top:0; }
.marketing-page.contact-page .contact-layout { grid-template-columns:.85fr 1.15fr; gap:64px 100px; padding-top:72px; }
.marketing-page.contact-page .contact-intro h1 { font-size:clamp(44px,6vw,80px); margin-bottom:24px; }
.marketing-page.contact-page .contact-content { min-width:0; }
.marketing-page.contact-page .contact-message-section { margin:0; padding:0; border:0; }
.marketing-page.contact-page .contact-message-section h2 { font-size:26px; margin:0 0 28px; }
.marketing-page.contact-page .contact-faq { grid-column:1 / -1; display:grid; grid-template-columns:.85fr 1.15fr; gap:100px; border-top:1px solid var(--warm-rule); padding-top:48px; }
.marketing-page.contact-page .contact-faq h2 { font-size:30px; line-height:1.2; margin:0; max-width:15ch; }
.marketing-page.contact-page .contact-faq .faq-list { margin-top:0; }
@media(max-width:1000px) {
 .company-introduction,.reference-heading,.marketing-page.library-page .custom-example,.guide-feature,.student-review { gap:40px; }
 .editorial-feature .library-copy { grid-template-columns:.7fr 1.3fr; }
 .editorial-feature .library-actions { grid-column:2; grid-row:auto; flex-direction:row; flex-wrap:wrap; gap:8px 28px; }
 .marketing-page.contact-page .contact-layout,.marketing-page.contact-page .contact-faq { gap:48px; }
 .library-main .library-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
 .support-heading { padding:44px 0 40px; }
 .marketing-page .support-heading h1 { font-size:44px; }
 .company-introduction,.reference-heading,.marketing-page.library-page .custom-example,.guide-feature,.student-review { grid-template-columns:1fr; gap:28px; }
 .company-introduction { padding:32px 0 40px; }
 .service-charter { margin-bottom:56px; }
 .charter-content { margin-left:0; }
 .service-charter summary h2 { font-size:22px; }
 .marketing-page.library-page .library-hero { padding:44px 0 32px; }
 .current-example { width:calc(100% - 40px); margin-bottom:48px; }
 .editorial-feature .library-copy { grid-template-columns:1fr; gap:16px; }
 .editorial-feature .library-copy h2,.editorial-feature .library-copy > p,.editorial-feature .library-actions { grid-column:1; grid-row:auto; }
 .editorial-feature .library-copy h2 { font-size:32px; }
 .library-main .library-grid { gap:36px 20px; }
 .library-main .library-copy h3 { font-size:23px; }
 .reference-heading h2 { max-width:18ch; }
 .marketing-page.library-page .custom-example { padding:32px 0 48px; }
 .guide-feature { padding:28px 0; margin-bottom:12px; }
 .guide-feature blockquote { font-size:22px; }
 .marketing-page.guides-index-page .guide-index { grid-template-columns:1fr; padding-bottom:48px; }
 .student-review { padding-top:32px; }
 .student-includes { border-left:0; border-top:1px solid var(--warm-rule); padding:28px 0 0; }
 .student-reading { margin-bottom:56px; }
 .student-reading details > div { padding-left:0; }
 .marketing-page.contact-page .contact-layout { grid-template-columns:1fr; gap:44px; padding-block:44px 56px; }
 .marketing-page.contact-page .contact-faq { display:block; }
 .marketing-page.contact-page .contact-faq h2 { margin-bottom:24px; max-width:none; }
}
@media(max-width:600px) {
 .editorial-feature .library-preview { aspect-ratio:345 / 664; }
 .editorial-feature .library-preview img { height:100%; object-position:top; }
 .library-main .library-grid { grid-template-columns:1fr; }
}
