/* Practice-specific composition, scoped to practice routes. */
main[data-composition] .family-section .practice-chapter-grid{display:block}
main[data-composition] .family-section .chapter-label{max-width:900px;margin-bottom:36px}
main[data-composition] .family-section .chapter-label h2{max-width:900px;font-size:clamp(2rem,3.2vw,3.2rem);margin:0}
main[data-composition] .family-section .chapter-copy{max-width:none}
main[data-composition] .family-section .chapter-copy>div>p,main[data-composition] .family-section .chapter-copy>section>div>p{max-width:72ch}
main[data-composition] .family-section .scope-item:before{display:none}
main[data-composition] .family-section .scope-item{display:block;padding:22px 0}
main[data-composition] .layout-opening .practice-chapter-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:30px 70px;align-items:start}
main[data-composition] .layout-opening .chapter-label{grid-column:1/-1;margin-bottom:0;max-width:1100px}
main[data-composition] .layout-opening .chapter-copy{max-width:70ch;grid-column:1/-1}
main[data-composition] .layout-opening .opening-with-image .chapter-copy{grid-column:1;font-size:1.125rem}
main[data-composition] .layout-opening .practice-visual{grid-column:2;grid-row:2;margin:0;max-width:none}
main[data-composition] .family-breadcrumb{padding:18px 0;background:var(--mist)}
main[data-composition] .family-breadcrumb .chapter-label{display:none}
main[data-composition] .family-breadcrumb .practice-chapter-grid{display:block}
/* Tax: document register, review checkpoints, and actual existing procedural lists. */
main[data-composition=tax] .layout-services .scope-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:3px solid var(--blue)}
main[data-composition=tax] .layout-services .scope-item{padding:30px 24px;border-top:0;border-bottom:1px solid #b8cbdd;border-right:1px solid #b8cbdd;min-height:125px;font-size:1rem}
main[data-composition=tax] .layout-review .scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 45px}
main[data-composition=tax] .layout-review .scope-item{border-top:2px solid #b6d1e6;padding:22px 0;font-size:1.1rem}
main[data-composition=tax] .layout-sequence .chapter-copy ul,main[data-composition=tax] .layout-sequence .chapter-copy ol{list-style:none;padding:0 0 0 28px;max-width:900px;border-left:2px solid var(--blue)}
main[data-composition=tax] .layout-sequence li{position:relative;padding:0 0 28px 24px;margin:0}
main[data-composition=tax] .layout-sequence li:before{content:'';position:absolute;left:-35px;top:8px;width:12px;height:12px;background:var(--blue);border:3px solid white}
/* Corporate: broad service relationships and an offset transaction-review brief. */
main[data-composition=corporate] .layout-services .scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 60px}
main[data-composition=corporate] .layout-services .scope-item{font:400 1.6rem/1.35 var(--serif);padding:25px 0;border-top:1px solid var(--blue)}
main[data-composition=corporate] .layout-services .scope-item:nth-child(even){transform:translateY(22px)}
main[data-composition=corporate] .layout-review .practice-chapter-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}
main[data-composition=corporate] .layout-review .chapter-label{padding-top:30px}
main[data-composition=corporate] .layout-review .chapter-copy{background:white;color:var(--ink);padding:15px 35px;border-top:5px solid #adc7df}
main[data-composition=corporate] .layout-review .scope-item{border-color:var(--line)}
/* Contracts: readable clause book, type comparisons, no procedural sequence implied. */
main[data-composition=contracts] .practice-detail-heading{background:var(--deep);color:white}
main[data-composition=contracts] .practice-detail-heading .deck,main[data-composition=contracts] .practice-detail-heading .eyebrow,main[data-composition=contracts] .practice-detail-heading .text-link,main[data-composition=contracts] .practice-stamp{color:#d1e2ef}
main[data-composition=contracts] .layout-clauses{background:#e8eff6}
main[data-composition=contracts] .layout-clauses .chapter-copy{max-width:950px;margin-left:auto;background:white;padding:10px 35px;border-top:4px solid var(--blue)}
main[data-composition=contracts] .layout-clauses ul{list-style:none;padding:0;margin:0}
main[data-composition=contracts] .layout-clauses li{margin:0;border-bottom:1px solid var(--line)}
.clause-disclosure summary{padding:23px 30px 23px 0;font:500 1.05rem/1.5 var(--sans);list-style:none;position:relative}
.clause-disclosure summary::-webkit-details-marker{display:none}
.clause-disclosure summary:after{content:'+';position:absolute;right:0;color:var(--blue)}
.clause-disclosure[open] summary:after{content:'−'}
.clause-disclosure summary:hover,.clause-disclosure summary:focus-visible{color:var(--blue);background:var(--mist)}
.clause-disclosure p{padding-bottom:20px;margin:0;max-width:70ch}
main[data-composition=contracts] .layout-comparison .scope-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:35px}
main[data-composition=contracts] .layout-comparison .scope-item{background:var(--ice);border:0;border-top:3px solid var(--blue);padding:28px}
/* Employer: recognizable situations followed by a management review table. */
main[data-composition=employer] .layout-situations .scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 55px;counter-reset:situation}
main[data-composition=employer] .layout-situations .scope-item{counter-increment:situation;display:grid;grid-template-columns:42px 1fr;gap:18px;background:none;border:0;border-top:1px solid var(--line);padding:28px 0;font:400 1.6rem/1.3 var(--serif)}
main[data-composition=employer] .layout-situations .scope-item:before{display:block;content:counter(situation,decimal-leading-zero);font:500 .8rem/1.6 var(--sans);color:var(--blue)}
main[data-composition=employer] .layout-review .scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 45px}
main[data-composition=employer] .layout-review .scope-item{border-top:1px solid #8fadc7}
main[data-composition=employer] .layout-services .scope-grid{grid-template-columns:repeat(3,1fr);gap:25px}
main[data-composition=employer] .layout-services .scope-item{border-top:3px solid var(--blue);font-size:1.1rem}
/* Disputes: review sequence across the page, evidence list in a separate working area. */
main[data-composition=disputes] .layout-review .scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;counter-reset:review}
main[data-composition=disputes] .layout-review .scope-item{counter-increment:review;border:0;border-top:2px solid #adc7df;padding:25px 30px 35px 0;font-size:1.1rem}
main[data-composition=disputes] .layout-review .scope-item:before{display:block;content:counter(review,decimal-leading-zero);font:400 2.5rem/1.2 var(--serif);color:#d7e5f1;margin-bottom:22px}
main[data-composition=disputes] .layout-situations .scope-grid{display:block;columns:2;column-gap:70px}
main[data-composition=disputes] .layout-situations .scope-item{break-inside:avoid;font:400 1.45rem/1.4 var(--serif)}
main[data-composition=disputes] .layout-services .scope-grid{grid-template-columns:repeat(2,1fr);gap:0 55px}
/* Functional document preparation: local checkboxes, no submission or storage. */
main[data-composition] .layout-documents .practice-chapter-grid{display:grid;grid-template-columns:.85fr 1.3fr;gap:60px}
main[data-composition] .layout-documents .scope-grid{display:block;background:white;padding:10px 28px;border-left:0;border-top:4px solid var(--blue)}
main[data-composition] .layout-documents .document-check{display:flex;gap:18px;align-items:start;padding:18px 0;cursor:pointer;border-bottom:1px solid var(--line);border-top:0}
.document-check input{width:20px;height:20px;flex:0 0 20px;margin:3px 0 0;accent-color:var(--blue)}
.document-check:has(input:checked){color:var(--blue);background:#f0f5fa}
.document-check:hover{background:#f5f7fa}
main[data-composition] .layout-authorities{background:var(--mist)}
main[data-composition] .layout-authorities .scope-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}
main[data-composition] .layout-authorities .scope-item{border-top:3px solid var(--line);font-size:.9rem}
main[data-composition] .layout-authorities .scope-item p:first-child{font-weight:600}
main[data-composition] .layout-essay .chapter-copy{max-width:820px;margin-left:auto}
main[data-composition] .layout-limits .practice-chapter-grid{border-left:3px solid var(--blue);padding-left:35px}
main[data-composition] .layout-limits .scope-grid{display:block;max-width:900px}
main[data-composition] .layout-questions .chapter-copy{max-width:900px;margin-left:auto}
main[data-composition] .layout-closing{background:var(--deep);color:white}
main[data-composition] .layout-closing p,main[data-composition] .layout-closing a{color:#e0ecf5}
main[data-composition] .layout-closing a{display:inline-block;padding:10px 0;margin-right:24px;text-underline-offset:5px}
@media(max-width:900px){main[data-composition=tax] .layout-services .scope-grid{grid-template-columns:repeat(2,1fr)}main[data-composition] .layout-authorities .scope-grid{grid-template-columns:1fr}main[data-composition] .layout-documents .practice-chapter-grid,main[data-composition=corporate] .layout-review .practice-chapter-grid{grid-template-columns:1fr;gap:20px}}
@media(max-width:600px){main[data-composition] .layout-opening .practice-chapter-grid{display:block}main[data-composition] .layout-opening .chapter-label{margin-bottom:25px}main[data-composition] .layout-opening .practice-visual{margin-top:25px}main[data-composition] .family-section .scope-grid{grid-template-columns:1fr!important}main[data-composition=corporate] .layout-services .scope-item:nth-child(even){transform:none}main[data-composition=disputes] .layout-situations .scope-grid{columns:1}main[data-composition=contracts] .layout-clauses .chapter-copy{padding:0 20px}main[data-composition] .layout-limits .practice-chapter-grid{padding-left:20px}main[data-composition=tax] .layout-services .scope-item{min-height:0;padding:22px;border-right:0}main[data-composition=corporate] .layout-review .chapter-copy{padding:10px 22px}main[data-composition] .family-section .chapter-label{margin-bottom:25px}}
@media print{main[data-composition] .layout-closing{background:white;color:black}.clause-disclosure:not([open])>p{display:block}main[data-composition] .layout-closing p,main[data-composition] .layout-closing a{color:black}}
.practice-back-link{display:inline-flex;gap:12px;align-items:center;font:500 .8125rem/1.5 var(--sans);color:var(--blue);margin-bottom:24px;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.layout-opening .practice-back-link span:last-child{display:none}
main[data-composition] .layout-opening .chapter-copy>section{margin-top:24px}
