/* Shared editorial composition. Screen-only rules leave printable legal text intact. */
@media print {
 .composition-fees::details-content { content-visibility:visible!important;display:block!important; }
}
@media screen {
 body.editorial-composition { --editorial-paper:#f5f2ed;--editorial-edge:#ded7cf; }
 body.editorial-composition :is(h1,h2,h3) { text-wrap:pretty; }
 body.editorial-composition :is(a,button,input,textarea,select,summary):focus-visible { outline:2px solid #8c4f30;outline-offset:4px; }
 body.editorial-composition :is(.top,.kpst,.home-hero,.invite,.dark,.actbar) :is(a,button):focus-visible { outline-color:#d9b49a; }
 /* Keep the established separate partner portraits on the charcoal hero. */
 body.editorial-composition.home-restored .home-opening { grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:64px;padding-top:64px;padding-bottom:64px; }
 body.editorial-composition.home-restored .home-hero h1 { font-size:clamp(40px,3.7vw,53px);line-height:1.2;max-width:14em; }
 body.editorial-composition.home-restored .home-intro { max-width:43ch; }
 body.editorial-composition.home-restored #practice { padding-top:64px;padding-bottom:52px; }
 body.editorial-composition.home-restored .home-practices { gap:0 56px;border-top:0;margin-top:20px; }
 body.editorial-composition.home-restored .home-practice { padding-top:24px;padding-bottom:24px; }
 body.editorial-composition.home-restored .home-practice:hover { background:#faf8f5; }
 body.editorial-composition.home-restored #about.home-assurance { border:0;background:#f5f2ed;padding-top:40px;padding-bottom:40px; }
 body.editorial-composition.home-restored #work .writing { display:grid;grid-template-columns:1.2fr 1fr;gap:0 48px;align-items:stretch;border:0; }
 body.editorial-composition.home-restored #work .art { display:flex;flex-direction:column;padding:22px 28px 26px 0;margin:0;border-top:0;border-bottom:1px solid #494039; }
 body.editorial-composition.home-restored #work .art > span { order:-1;margin:0 0 14px; }
 body.editorial-composition.home-restored #work .featured-matter { grid-row:span 2;background:var(--editorial-paper);padding:36px;color:#28231f;border:0; }
 body.editorial-composition.home-restored #work .featured-matter h3 { font-size:32px;line-height:1.35;color:#28231f;max-width:20ch;margin:0 0 30px; }
 body.editorial-composition.home-restored #work .featured-matter p { color:#554d47;font-size:16px;line-height:1.8; }
 body.editorial-composition.home-restored #work .featured-matter > span { color:#805039;margin-bottom:28px; }
 body.editorial-composition.home-restored #work .featured-matter:hover { background:#eae3d9; }
 body.editorial-composition.home-restored #work .featured-matter:hover h3 { color:#28231f; }
 body.editorial-composition.home-restored #work .featured-matter::after { right:28px;top:32px;color:#805039; }
 body.editorial-composition .case-role { display:block;font:600 12px/1.5 var(--sans);letter-spacing:.05em;color:#805039;margin-bottom:10px; }
 body.editorial-composition.home-restored #tools { background:#fff;border-bottom:1px solid var(--editorial-edge); }
 body.editorial-composition.home-restored #writing .writing { gap:40px; }
 body.editorial-composition.home-restored #writing .art { border-top:0;border-bottom:0;padding-top:12px;padding-bottom:0; }
 body.editorial-composition.home-restored #writing .art > span { border-left:2px solid #ae7958;padding-left:12px; }
 /* Shared navigation stays charcoal. Reading and tool mastheads use warm paper. */
 body.editorial-composition:is(.publication-page,.calculator-journey-page,.contact-page) .masthead { position:relative;isolation:isolate;color:#28231f; }
 body.editorial-composition:is(.publication-page,.calculator-journey-page,.contact-page) .masthead::before { content:"";position:absolute;inset:0 calc((100% - 100vw)/2);z-index:-1;background:var(--editorial-paper);border-bottom:1px solid #e7e0d7; }
 body.editorial-composition:is(.publication-page,.calculator-journey-page,.contact-page) .masthead :is(h1,.stand,.label,.meta,.meta span,.meta time,.meta a,.byline,.breadcrumbs,.breadcrumbs a) { color:#28231f; }
 body.editorial-composition:is(.publication-page,.calculator-journey-page,.contact-page) .masthead .label { color:#77523b; }
 body.editorial-composition:is(.publication-page,.calculator-journey-page,.contact-page) .masthead a:not(.btn) { color:#554b42; }
 body.editorial-composition:is(.publication-page,.calculator-journey-page,.contact-page) .masthead :is(.meta,.byline) { border-color:#d8cec2; }
 body.editorial-composition.publication-page .masthead .byline :is(b,span,time,a) { color:#554b42!important; }
 body.editorial-composition.publication-page .masthead { padding-top:48px;padding-bottom:44px; }
 body.editorial-composition.publication-page .masthead h1 { max-width:28ch;font-size:clamp(33px,3.7vw,53px);line-height:1.2; }
 body.editorial-composition.publication-page .sheet main.article-layout > .quick { background:#fff;border:0;border-left:3px solid #ad7e5f;padding:8px 0 8px 24px; }
 body.editorial-composition.publication-page .article-layout > .quick p { line-height:1.8; }
 body.editorial-composition.publication-page .article-copy > h2 { margin-top:48px;padding-top:8px;font-size:30px;line-height:1.4; }
 body.editorial-composition.publication-page .article-copy > :is(p,ul,ol) { line-height:1.85; }
 body.editorial-composition.publication-page .article-copy > ol:not([class]) { background:var(--editorial-paper);padding:24px 28px 24px 52px;margin:28px 0; }
 body.editorial-composition.publication-page .article-copy > ol:not([class]) > li { padding:6px 0 6px 8px; }
 body.editorial-composition.publication-page .article-copy > ol > li::marker { color:#8c4f30;font-weight:600; }
 body.editorial-composition.publication-page .article-copy table { width:100%;border-collapse:collapse; }
 body.editorial-composition.publication-page .article-copy th { background:var(--editorial-paper);text-align:left; }
 body.editorial-composition.publication-page .article-copy :is(th,td) { padding:14px 16px;border-bottom:1px solid var(--editorial-edge);vertical-align:top; }
 body.editorial-composition.publication-page .article-copy blockquote { border-left:2px solid #ad7e5f;padding-left:24px;color:#484039; }
 /* Service choices, then one process, then the supporting guidance. */
 body.editorial-composition.property-acquisition-page .purchase-services-grid { gap:20px; }
 body.editorial-composition.property-acquisition-page .purchase-services-grid > article { padding:28px 30px;background:#f6f3ef;border:1px solid transparent; }
 body.editorial-composition.property-acquisition-page .purchase-services-grid > article:focus-within { border-color:#8c4f30; }
 body.editorial-composition.property-acquisition-page .purchase-services-grid > article h3 { font-size:27px;margin-bottom:12px; }
 body.editorial-composition.property-acquisition-page .purchase-services-grid .purchase-deliverable { margin-bottom:16px; }
 body.editorial-composition.property-acquisition-page .jumps { display:flex;flex-wrap:wrap;align-items:center;padding:18px 0;margin:0;border:0;gap:10px 28px; }
 body.editorial-composition.property-acquisition-page .jumps > span { width:auto;margin:0;font-size:10px; }
 body.editorial-composition.property-acquisition-page .jumps + .purchase-services { padding-top:24px!important; }
 body.editorial-composition.property-acquisition-page .jumps a { font-size:13px;line-height:1.6; }
 body.editorial-composition.property-acquisition-page .practice-process { padding-top:40px!important;padding-bottom:40px!important; }
 body.editorial-composition.property-acquisition-page .practice-process .two { grid-template-columns:1fr;gap:30px; }
 body.editorial-composition.property-acquisition-page .practice-process .two > div:first-child { display:grid;grid-template-columns:1fr 1fr;gap:12px 56px; }
 body.editorial-composition.property-acquisition-page .practice-process .two > div:first-child > .label { grid-column:1/-1;margin-bottom:0; }
 body.editorial-composition.property-acquisition-page .practice-process .two > div:first-child > p:not(.label) { margin:0!important; }
 body.editorial-composition.property-acquisition-page .practice-process .route-phases { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px; }
 body.editorial-composition.property-acquisition-page .practice-process .step { display:block;border:0;padding:0; }
 body.editorial-composition.property-acquisition-page .practice-process .step .no { display:block;font:400 29px/1.4 var(--serif);color:#8c4f30;margin:0 0 16px; }
 body.editorial-composition.property-acquisition-page .practice-process .step p { font-size:14px;line-height:1.75;margin-bottom:12px; }
 body.editorial-composition .composition-fees { margin:28px 0 0;border:0!important;background:#f6f3ef; }
 body.editorial-composition .composition-fees > summary { padding:20px 52px 20px 24px;font:500 15px/1.6 var(--sans);cursor:pointer; }
 body.editorial-composition .composition-fees > summary::after { right:24px; }
 body.editorial-composition .composition-fees .fixed-scope { margin:0;padding-top:4px; }
 body.editorial-composition .composition-fees .fixed-scope-heading { display:none; }
 body.editorial-composition.agreement-review-page .masthead .stand { max-width:58ch;font-size:17px;line-height:1.8; }
 body.editorial-composition .review-intake-intro { font-size:14px;line-height:1.75;margin:0 0 24px;max-width:60ch;color:#61564e; }
 /* A genuine human counterpart to the enquiry, using the existing portraits. */
 body.editorial-composition.contact-page .contact-layout { grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:64px; }
 body.editorial-composition.contact-page .contact-primary { padding:30px 32px;background:#faf8f5; }
 body.editorial-composition.contact-page .contact-details { padding:0;border:0; }
 body.editorial-composition .contact-partners { padding:0 0 28px;margin-bottom:28px;border-bottom:1px solid var(--editorial-edge); }
 body.editorial-composition .contact-partners > p { font-size:14px;font-weight:500;margin:0 0 18px; }
 body.editorial-composition .contact-partners > div { display:grid;grid-template-columns:1fr 1fr;gap:20px; }
 body.editorial-composition .contact-partners a { display:flex;gap:12px;align-items:center;text-decoration:none;color:#28231f;font:400 16px/1.5 var(--serif); }
 body.editorial-composition .contact-partners img { width:58px;height:76px;object-fit:cover;object-position:center 20%;flex:none;filter:grayscale(1); }
 body.editorial-composition .contact-partners a:hover span { text-decoration:underline;text-underline-offset:4px; }
 body.editorial-composition.contact-page .contact-details .contact-facts { margin-top:18px; }
 body.editorial-composition.contact-page .contact-fact { border-bottom:0;padding:12px 0; }
 body.editorial-composition.contact-page .contact-fact dt { font-size:11px;color:#65584e; }
 body.editorial-composition.contact-page #form :is(input:not([type="hidden"]):not([type="checkbox"]),textarea) { border-color:#b6ada3;background:#fff;border-radius:0; }
 body.editorial-composition.contact-page #form .reply-method { gap:0;padding:3px;background:#e9e2d9; }
 body.editorial-composition.contact-page #form .reply-method button { border:0; }
 body.editorial-composition.contact-page #form .reply-method button[aria-pressed="false"] { background:transparent; }
 body.editorial-composition.calculator-journey-page .calc-workspace { gap:32px;align-items:stretch; }
 body.editorial-composition.calculator-journey-page .calc-entry { padding:0;background:transparent; }
 body.editorial-composition.calculator-journey-page .calc-workspace > div:first-child { padding:28px 30px;background:#faf8f5; }
 body.editorial-composition.calculator-journey-page .calc-result-column { padding:28px 30px;background:#f0ebe3; }
 body.editorial-composition.calculator-journey-page .calc-placeholder { background:transparent;border:0;padding:24px 0;min-height:0; }
 body.editorial-composition.calculator-journey-page .calc-result-column .quick { background:transparent!important;border:0!important;padding:0!important; }
 body.editorial-composition.calculator-journey-page .calc-result-column .quick > p[aria-live] { font-size:38px!important;line-height:1.2!important;color:#77442a; }
 body.editorial-composition.calculator-journey-page .calc-result-column .quick :is(th,td) { padding-top:14px!important;padding-bottom:14px!important;border-color:#d5c8b9!important; }
 body.editorial-composition.calculator-journey-page .calc-steps { gap:24px;padding-bottom:22px; }
 body.editorial-composition.calculator-journey-page .calc-workspace .fld { border-color:#b6ada3; }
 body.editorial-composition.partners-page .team-profiles { column-gap:56px; }
 body.editorial-composition.partners-page .team-profiles .person { column-gap:28px;grid-template-columns:minmax(150px,.8fr) minmax(0,1fr); }
 body.editorial-composition.partners-page .team-profiles .portrait { position:static;background:var(--editorial-paper); }
 body.editorial-composition.partners-page .team-profiles .portrait img { width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center 20%; }
 body.editorial-composition.partners-page .team-profiles .partner-summary h2 { font-size:27px;line-height:1.35; }
 body.editorial-composition footer .fgrid { align-items:start; }
}
@media screen and (max-width:1000px) {
 body.editorial-composition.home-restored .home-opening { gap:32px; }
 body.editorial-composition .contact-partners a { flex-direction:column;align-items:flex-start; }
 body.editorial-composition.contact-page .contact-layout { gap:32px; }
 body.editorial-composition.partners-page .team-profiles .person { grid-template-columns:minmax(130px,.8fr) minmax(0,1fr);gap:20px; }
}
@media screen and (max-width:800px) {
 body.editorial-composition.home-restored .home-opening { grid-template-columns:1fr;padding-top:30px;padding-bottom:32px;gap:26px; }
 body.editorial-composition.home-restored .home-eyebrow { margin-bottom:18px;font-size:11px; }
 body.editorial-composition.home-restored .home-hero h1 { font-size:clamp(32px,6vw,43px);margin-bottom:18px; }
 body.editorial-composition.home-restored .home-services { font-size:15px;line-height:1.6;margin-bottom:14px; }
 body.editorial-composition.home-restored .home-intro { font-size:15px;line-height:1.65;margin-bottom:18px; }
 body.editorial-composition.home-restored .home-actions { gap:10px 20px; }
 body.editorial-composition.home-restored .home-response { margin-top:14px;font-size:12px; }
 body.editorial-composition.home-restored #work .writing { grid-template-columns:1fr;gap:16px; }
 body.editorial-composition.home-restored #work .featured-matter { grid-row:auto;padding:26px; }
 body.editorial-composition.home-restored #work .featured-matter h3 { font-size:27px;max-width:none;margin-bottom:22px; }
 body.editorial-composition.home-restored #work .featured-matter > span { margin-bottom:20px; }
 body.editorial-composition.home-restored #work .art { padding-bottom:22px; }
 body.editorial-composition.home-restored #writing .writing { gap:24px; }
 body.editorial-composition:is(.publication-page,.calculator-journey-page,.contact-page) .masthead { padding-top:28px;padding-bottom:30px; }
 body.editorial-composition.publication-page .masthead h1 { font-size:32px;line-height:1.3; }
 body.editorial-composition.publication-page .article-copy > h2 { font-size:26px;margin-top:36px; }
 body.editorial-composition.publication-page .sheet main.article-layout > .quick { padding:4px 0 4px 18px; }
 body.editorial-composition.publication-page .article-copy > ol:not([class]) { padding:20px 20px 20px 44px; }
 body.editorial-composition.property-acquisition-page .purchase-services-grid > article { padding:24px; }
 body.editorial-composition.property-acquisition-page .purchase-services-grid > article h3 { font-size:24px; }
 body.editorial-composition.property-acquisition-page .jumps { display:flex;flex-wrap:wrap;gap:8px 20px;padding:16px 0; }
 body.editorial-composition.property-acquisition-page .jumps > span { width:100%; }
 body.editorial-composition.property-acquisition-page .practice-process .two > div:first-child { grid-template-columns:1fr;gap:16px; }
 body.editorial-composition.property-acquisition-page .practice-process .route-phases { grid-template-columns:1fr;gap:22px; }
 body.editorial-composition.property-acquisition-page .practice-process .step { display:grid;grid-template-columns:34px minmax(0,1fr);gap:18px; }
 body.editorial-composition.property-acquisition-page .practice-process .step .no { font-size:24px;margin:0; }
 body.editorial-composition .composition-fees > summary { padding-left:20px;font-size:14px; }
 body.editorial-composition.agreement-review-page .masthead .stand { font-size:16px;line-height:1.75; }
 body.editorial-composition.contact-page .contact-layout { grid-template-columns:1fr;gap:36px; }
 body.editorial-composition.contact-page .contact-primary { padding:24px 20px; }
 body.editorial-composition .contact-partners a { flex-direction:row;align-items:center; }
 body.editorial-composition.calculator-journey-page .calc-workspace { grid-template-columns:1fr;gap:20px; }
 body.editorial-composition.calculator-journey-page .calc-workspace > div { padding:24px; }
 body.editorial-composition.calculator-journey-page .calc-steps { gap:10px 18px;flex-wrap:wrap; }
 body.editorial-composition.calculator-journey-page .calc-steps li { font-size:12px; }
 body.editorial-composition.calculator-journey-page .calc-result-column .quick > p[aria-live] { font-size:32px!important; }
 body.editorial-composition.partners-page .team-profiles .person { grid-template-columns:minmax(110px,.7fr) minmax(0,1fr); }
 body.editorial-composition.partners-page .team-profiles .partner-summary h2 { font-size:24px; }
 body.editorial-composition .footwrap footer { padding-top:36px;padding-bottom:30px; }
 body.editorial-composition .fgrid { gap:24px; }
 body.editorial-composition .fgrid > div { padding-bottom:24px; }
 body.editorial-composition .fgrid ul li { margin-bottom:4px; }
 body.editorial-composition .fgrid ul a { min-height:44px;display:inline-flex;align-items:center; }
}
@media screen and (max-width:380px) {
 body.editorial-composition.home-restored .home-actions { gap:6px; }
 body.editorial-composition .contact-partners a { flex-direction:column;align-items:flex-start; }
 body.editorial-composition.partners-page .team-profiles .person { grid-template-columns:105px minmax(0,1fr);gap:0 18px; }
}

