@layer pages {
	.page-intro {
		padding:clamp(9rem, 16vw, 14rem) 0 clamp(4rem, 8vw, 7rem);
		border-bottom:1px solid var(--line);
		background:var(--paper);
	}
	.page-intro .site-shell { display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); gap: clamp(2rem, 8vw, 9rem); align-items: end; }
	.page-intro h1 { margin-top: 1rem; max-width: 11ch; }
	.page-intro-copy { max-width: 46rem; }
	.page-intro-copy p { max-width: 54ch; }
	.page-intro-meta { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; align-items: center; margin-top: 2rem; }
	.page-intro-meta span { min-height: 44px; display: inline-flex; align-items: center; }
	.page-intro-figure { margin: 0; position: relative; }
	.page-intro-figure img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
	.page-intro-figure figcaption { display: flex; justify-content: space-between; gap: 1rem; padding-top: .75rem; border-top: 1px solid var(--line); }

	.hero-split { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); min-height: min(52rem, 100svh); background: var(--ink); color: var(--white); }
	.hero-split-media { position: relative; min-height: 32rem; order: 2; overflow: hidden; }
	.hero-split-media::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(23,33,38,.08), rgba(23,33,38,.35)); content: ""; pointer-events: none; }
	.hero-split-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; view-transition-name: hero-photo; }
	.hero-split-copy { display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: clamp(7rem, 14vw, 13rem) var(--gutter) clamp(5rem, 10vw, 9rem); order: 1; border-right: 1px solid rgba(255,255,255,.2); }
	.hero-split-copy h1 { max-width: 9.5ch; margin-top: 1.15rem; color: var(--white); font-size: clamp(2.65rem, 5.8vw, 6.8rem); line-height: .99; }
	.hero-split-copy .hero-lede { max-width: 40ch; margin-top: 1.75rem; color: rgba(255,255,255,.83); font-size: var(--text-lg); }
	.hero-split-copy .button { margin-top: 2rem; }
	.hero-jurisdiction { display: flex; flex-wrap: wrap; gap: .65rem 1.3rem; color: var(--mint); font-family: var(--mono); font-size: var(--text-xs); letter-spacing: .08em; text-transform: uppercase; }
	.hero-jurisdiction span + span { padding-left: 1.3rem; border-left: 1px solid rgba(158,228,209,.5); }
	.hero-coordinate { position: absolute; z-index: 1; right: var(--gutter); bottom: 1.5rem; color: var(--mint); }
	.hero-mark { position: absolute; z-index: 2; left: var(--gutter); bottom: 1.5rem; color: var(--mint); font-family: var(--mono); font-size: var(--text-xs); letter-spacing: .1em; text-transform: uppercase; }

	.section-heading { display: flex; justify-content: space-between; gap: 2rem; align-items: end; min-width: 0; margin-bottom: clamp(2.5rem, 6vw, 5rem); padding-top: 1rem; border-top: 1px solid var(--line); }
	.section-heading h2 { margin-top: .8rem; min-width: 0; }
	.section-heading > p { max-width: 36ch; color: var(--muted); }
	.section-heading .coordinate { flex: 0 0 auto; }
	.feature-row { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(17rem, .8fr); gap: clamp(2rem, 8vw, 10rem); align-items: center; }
	.feature-row.reverse { grid-template-columns: minmax(17rem, .8fr) minmax(0, 1.2fr); }
	.feature-row.reverse .feature-copy { order: 2; }
	.feature-row.reverse figure { order: 1; }
	.feature-copy h2 { max-width: 12ch; }
	.feature-copy > p { margin-top: 1.5rem; max-width: 49ch; }
	.feature-copy .button-secondary { margin-top: 2rem; }
	.feature-figure { position: relative; min-width: 0; margin: 0; }
	.feature-figure img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
	.feature-figure figcaption { display: flex; justify-content: space-between; gap: 1rem; padding: .75rem 0 0; border-top: 1px solid var(--line); }
	.feature-figure .coordinate { color: var(--deep-mint); }
	.feature-index { display: block; margin-bottom: 1.5rem; color: var(--deep-mint); font-family: var(--mono); font-size: clamp(2.5rem, 5vw, 5.5rem); line-height: .9; }

	.catalogue { background: var(--white); }
	.catalogue-intro { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); gap: clamp(2rem, 7vw, 8rem); align-items: end; margin-bottom: clamp(2.5rem, 6vw, 5rem); }
	.catalogue-intro h2 { max-width: 12ch; }
	.catalogue-intro p { max-width: 48ch; }
	.catalogue-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: var(--line); border: 1px solid var(--line); }
	.catalogue-item { display: flex; min-width: 0; flex-direction: column; background: var(--white); }
	.catalogue-item figure { margin: 0; }
	.catalogue-item img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
	.catalogue-item figcaption { padding: .8rem 1.1rem; border-bottom: 1px solid var(--line); }
	.catalogue-body { display: flex; flex: 1; min-width: 0; flex-direction: column; padding: clamp(1.25rem, 2vw, 2rem); }
	.catalogue-body h3 { margin-top: .7rem; }
	.catalogue-body p { margin-top: 1rem; }
	.catalogue-body .text-button { align-self: flex-start; margin-top: auto; padding-top: 1.5rem; }
	.catalogue-spec { display: grid; grid-template-columns: 1fr; gap: .4rem; margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid var(--line); }
	.catalogue-spec dt { color: var(--muted); font-family: var(--mono); font-size: var(--text-xs); letter-spacing: .06em; text-transform: uppercase; }
	.catalogue-spec dd { margin: 0; font-size: var(--text-sm); }

	.scrollytelling { background: var(--paper); }
	.scroll-scene { display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); gap: clamp(2rem, 8vw, 10rem); align-items: start; }
	.scroll-figure { position: sticky; top: 7rem; min-width: 0; align-self: start; }
	.scroll-figure-frame { position: relative; overflow: hidden; background: var(--wash); }
	.scroll-figure-frame img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
	.scroll-figure figcaption { display: flex; justify-content: space-between; gap: 1rem; padding: .8rem 0; border-bottom: 1px solid var(--line); }
	.scroll-progress { position: absolute; top: 0; right: 0; bottom: 0; width: 3px; background: rgba(203,213,213,.7); }
	.scroll-progress span { display: block; width: 100%; height: 0%; background: var(--deep-mint); transform-origin: top; }
	.scroll-steps { display: grid; gap: clamp(5rem, 13vw, 13rem); padding-block: 2rem 8rem; }
	.scroll-step { min-height: 58vh; display: flex; flex-direction: column; justify-content: center; min-width: 0; padding-left: clamp(0rem, 5vw, 5rem); border-top: 1px solid var(--line); }
	.scroll-step:first-child { border-top: 0; }
	.scroll-step h3 { max-width: 15ch; margin-top: .8rem; }
	.scroll-step p { max-width: 48ch; margin-top: 1.25rem; }
	.scroll-step .rule-list { max-width: 44rem; margin-top: 2rem; }
	.scroll-step .button-secondary { align-self: flex-start; margin-top: 2rem; }
	.scroll-number { color: var(--deep-mint); font-family: var(--mono); font-size: var(--text-sm); letter-spacing: .1em; }
	.scroll-note { margin-top: 1.25rem; color: var(--muted); font-family: var(--mono); font-size: var(--text-xs); }

	.process-strip { background: var(--ink); color: var(--white); }
	.process-strip .section-heading { border-color: rgba(255,255,255,.25); }
	.process-strip .section-heading > p { color: rgba(255,255,255,.7); }
	.process-strip h2 { color: var(--white); }
	.process-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); min-width: 0; border-top: 1px solid rgba(255,255,255,.25); border-left: 1px solid rgba(255,255,255,.25); }
	.process-step { min-width: 0; min-height: 14rem; padding: 1.5rem; border-right: 1px solid rgba(255,255,255,.25); border-bottom: 1px solid rgba(255,255,255,.25); }
	.process-step .step-number { display: block; color: var(--mint); font-family: var(--mono); font-size: var(--text-sm); }
	.process-step h3 { margin-top: 2.5rem; color: var(--white); font-family: var(--body); font-size: var(--text-lg); font-weight: 700; line-height: 1.25; letter-spacing: 0; }
	.process-step p { margin-top: .75rem; color: rgba(255,255,255,.7); font-size: var(--text-sm); }
	.process-disclaimer { margin-top: 2rem; color: rgba(255,255,255,.72); font-size: var(--text-sm); }

	.quote-spread { position: relative; overflow: hidden; background: var(--white); }
	.quote-spread::before, .quote-spread::after { position: absolute; left: 0; width: 100%; height: 1px; background: var(--line); content: ""; }
	.quote-spread::before { top: 2rem; }
	.quote-spread::after { bottom: 2rem; }
	.quote-grid { position: relative; display: grid; grid-template-columns: minmax(7rem, .35fr) minmax(0, 1.65fr); gap: 2rem; align-items: start; }
	.quote-grid::before { position: absolute; top: 0; bottom: 0; left: 8%; width: 1px; background: var(--line); content: ""; }
	.quote-coordinate { position: relative; z-index: 1; padding-top: 1rem; color: var(--deep-mint); }
	.quote-spread blockquote { position: relative; z-index: 1; max-width: 14ch; padding: clamp(4rem, 9vw, 9rem) 0; color: var(--ink); font-family: var(--display); font-size: clamp(2.7rem, 7.5vw, 9rem); line-height: .97; letter-spacing: -.045em; }
	.quote-spread blockquote::before { position: absolute; top: clamp(2rem, 5vw, 5rem); left: -.06em; color: var(--mint); font-family: var(--display); font-size: 1.15em; content: '“'; z-index: -1; }
	.quote-source { display: block; margin-top: 2rem; color: var(--muted); font-family: var(--mono); font-size: var(--text-xs); letter-spacing: .06em; line-height: 1.5; text-transform: uppercase; }

	.fee-band { background: var(--charcoal); color: var(--white); }
	.fee-band .eyebrow { color: var(--mint); }
	.fee-band-inner { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(16rem, .9fr); gap: clamp(2rem, 8vw, 9rem); align-items: center; }
	.fee-band h2 { color: var(--white); max-width: 12ch; }
	.fee-band-copy > p { max-width: 52ch; margin-top: 1.25rem; color: rgba(255,255,255,.78); }

	.fee-band-copy .button { margin-top: 2rem; }
	.fee-ledger { border-top: 1px solid rgba(255,255,255,.35); }
	.fee-ledger div { display: grid; grid-template-columns: minmax(7rem, .7fr) minmax(0, 1.3fr); gap: 1rem; padding: 1rem 0; border-bottom: 1px solid rgba(255,255,255,.25); }
	.fee-ledger dt { color: var(--mint); font-family: var(--mono); font-size: var(--text-xs); text-transform: uppercase; }
	.fee-ledger dd { margin: 0; color: rgba(255,255,255,.82); font-size: var(--text-sm); }

	.contact-close { border-top: 1px solid var(--line); }
	.contact-close-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(2rem, 8vw, 9rem); }
	.contact-close h2 { max-width: 11ch; }
	.contact-close-copy > p { max-width: 43ch; margin-top: 1.5rem; }
	.contact-close-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; align-content: start; }
	.contact-close-details > div { padding-top: .9rem; border-top: 1px solid var(--line); }
	.contact-close-details .footer-label { color: var(--deep-mint); }
	.contact-close-details a { display: inline-flex; align-items: center; min-height: 44px; margin-top: .35rem; }

	.practice-band { background: var(--white); }
	.practice-grid { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: clamp(2rem, 8vw, 10rem); }
	.practice-statement { position: sticky; top: 7rem; align-self: start; }
	.practice-statement h2 { max-width: 10ch; }
	.practice-statement p { margin-top: 1.5rem; max-width: 29ch; }
	.practice-notes { display: grid; gap: 0; border-top: 1px solid var(--line); }
	.practice-note { display: grid; grid-template-columns: minmax(7rem, .35fr) minmax(0, 1.65fr); gap: 1.5rem; padding: 2rem 0; border-bottom: 1px solid var(--line); }
	.practice-note h3 { font-family: var(--body); font-size: var(--text-lg); font-weight: 700; letter-spacing: 0; }
	.practice-note p { margin-top: .75rem; }
	.practice-note .meta { padding-top: .25rem; }
	.experience-number { display: block; color: var(--deep-mint); font-family: var(--mono); font-size: clamp(2.4rem, 5vw, 5.5rem); line-height: 1; }
	.experience-label { display: block; margin-top: .75rem; max-width: 16ch; color: var(--muted); font-family: var(--mono); font-size: var(--text-xs); text-transform: uppercase; }

	.contact-layout { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(2rem, 8vw, 10rem); align-items: start; }
	.contact-aside { position: sticky; top: 7rem; align-self: start; }
	.contact-aside h2 { max-width: 12ch; }

	.contact-aside > p { max-width: 35ch; margin-top: 1.5rem; }
	.contact-record { display: grid; gap: 1.5rem; margin-top: 2.5rem; }
	.contact-record > div { padding-top: .9rem; border-top: 1px solid var(--line); }

	.contact-record a { display: inline-flex; align-items: center; min-height: 44px; }
	.contact-form-frame { padding: clamp(1.25rem, 4vw, 3.5rem); border: 1px solid var(--line); background: var(--white); box-shadow: var(--shadow-document); }
	.contact-form-frame h2 { font-size: var(--text-xl); }
	.contact-form-frame > p { margin-top: 1rem; color: var(--muted); font-size: var(--text-sm); }
	.contact-form-frame .inquiry-form { margin-top: 2rem; }
	.form-legal { padding-top: 1rem; border-top: 1px solid var(--line); color: var(--muted); font-size: var(--text-sm); }
	.contact-help { display: grid; gap: 1px; margin-top: 3rem; background: var(--line); border: 1px solid var(--line); }
	.contact-help details { background: var(--paper); }
	.contact-help summary { display: flex; justify-content: space-between; gap: 1rem; align-items: center; min-height: 44px; padding: 1rem; cursor: pointer; font-weight: 700; list-style: none; }
	.contact-help summary::-webkit-details-marker { display: none; }
	.contact-help summary::after { color: var(--deep-mint); content: '+'; font-family: var(--mono); }
	.contact-help details[open] summary::after { content: '−'; }
	.contact-help details p { padding: 0 1rem 1.25rem; }

	.document-ground { background: var(--wash); padding-block: clamp(3rem, 8vw, 8rem); }
	.document-card { width: min(100%, 66rem); margin-inline: auto; padding: clamp(1.25rem, 6vw, 6rem); border: 1px solid var(--line); background: var(--white); box-shadow: var(--shadow-document); }
	.document-masthead { display: grid; grid-template-columns: minmax(0, 1fr) minmax(9rem, .35fr); gap: 2rem; padding-bottom: clamp(2rem, 5vw, 4rem); border-bottom: 3px solid var(--ink); }
	.document-masthead h1 { margin-top: 1rem; max-width: 10ch; }
	.document-version { display: grid; align-content: end; gap: .8rem; text-align: right; }
	.document-version dt { color: var(--muted); font-family: var(--mono); font-size: var(--text-xs); letter-spacing: .08em; text-transform: uppercase; }
	.document-version dd { margin: 0; font-family: var(--mono); font-size: var(--text-sm); }
	.document-lede { max-width: 58ch; margin-top: 2rem; color: var(--muted); }
	.document-body { display: grid; grid-template-columns: minmax(8rem, .35fr) minmax(0, 1.65fr); gap: clamp(2rem, 6vw, 6rem); padding-top: clamp(2rem, 5vw, 5rem); }
	.document-index { align-self: start; position: sticky; top: 7rem; }
	.document-index a { display: flex; align-items: center; min-height: 44px; padding: .35rem 0; color: var(--muted); font-family: var(--mono); font-size: var(--text-xs); text-decoration: none; }
	.document-index a:hover { color: var(--deep-mint); padding-left: .35rem; }
	.document-index a:active { color: var(--ink); background: var(--soft-mint); }
	.document-index a:focus-visible { outline: 2px solid var(--deep-mint); outline-offset: 2px; }
	.document-reading { min-width: 0; }
	.document-reading section { padding-bottom: 3rem; min-width: 0; }
	.document-reading section + section { padding-top: 3rem; border-top: 1px solid var(--line); }
	.document-reading h2 { max-width: 18ch; padding-top: .2rem; margin-bottom: 1rem; }
	.document-reading h3 { margin-top: 2rem; font-family: var(--body); font-size: var(--text-lg); font-weight: 700; letter-spacing: 0; }
	.document-reading p, .document-reading ul { margin-top: 1rem; }
	.document-reading .data-table { margin-top: 1.5rem; }
	.document-clause { position: relative; padding-left: 1.4rem; }
	.document-clause::before { position: absolute; top: .85em; left: 0; width: .45rem; height: .45rem; background: var(--mint); content: ""; }
	.document-callout { margin-top: 2rem; padding: 1.25rem; border-left: 3px solid var(--deep-mint); background: var(--soft-mint); }
	.document-callout p { margin-top: 0; }
	.data-table-wrap { max-width: 100%; overflow-x: auto; }
	.data-table { width: 100%; min-width: 34rem; border-collapse: collapse; font-size: var(--text-sm); }
	.data-table th, .data-table td { padding: .85rem .75rem; border: 1px solid var(--line); text-align: left; vertical-align: top; }
	.data-table th { background: var(--wash); color: var(--muted); font-family: var(--mono); font-size: var(--text-xs); font-weight: 500; letter-spacing: .06em; text-transform: uppercase; }

	.reading-ground { padding-block: clamp(3rem, 8vw, 8rem); background: var(--paper); }
	.reading-layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(11rem, .65fr); gap: clamp(2rem, 7vw, 8rem); align-items: start; }
	.reading-column { min-width: 0; max-width: 54rem; }
	.reading-column .reading-kicker { margin-bottom: 1rem; }
	.reading-column h1 { max-width: 12ch; }
	.reading-column > .lede { max-width: 55ch; margin-top: 1.5rem; color: var(--muted); font-size: var(--text-lg); }
	.reading-section { display: grid; grid-template-columns: minmax(7rem, .3fr) minmax(0, 1.7fr); gap: clamp(1.25rem, 4vw, 4rem); padding-block: clamp(2.5rem, 5vw, 5rem); border-bottom: 1px solid var(--line); }
	.reading-section:first-of-type { margin-top: 2rem; border-top: 1px solid var(--line); }
	.reading-section h2 { max-width: 13ch; font-size: var(--text-xl); }
	.reading-section .prose h3 { max-width: 30ch; }
	.reading-section .prose table { width: 100%; }
	.margin-notes { position: sticky; top: 7rem; display: grid; gap: 1.25rem; }
	.margin-note { padding: 1rem; border-top: 2px solid var(--mint); background: var(--white); }
	.margin-note dt { color: var(--deep-mint); font-family: var(--mono); font-size: var(--text-xs); letter-spacing: .08em; text-transform: uppercase; }
	.margin-note dd { margin: .6rem 0 0; color: var(--muted); font-size: var(--text-sm); }
	.inline-note { display: none; }
	.retention-table { margin-top: 1.25rem; }

	.terms-ground { padding-block: clamp(3rem, 8vw, 8rem); background: var(--white); }
	.terms-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(15rem, .7fr); gap: 2rem; align-items: end; padding-bottom: 3rem; border-bottom: 1px solid var(--line); }
	.terms-head h1 { margin-top: 1rem; }
	.terms-head p { max-width: 38ch; justify-self: end; color: var(--muted); }
	.terms-tabs { display: grid; grid-template-columns: minmax(12rem, .55fr) minmax(0, 1.45fr); gap: clamp(2rem, 7vw, 8rem); padding-top: 3rem; }
	.tab-list { display: grid; align-content: start; gap: 0; border-top: 1px solid var(--line); }
	.tab-list [role='tab'] { display: flex; align-items: center; gap: .75rem; min-height: 52px; padding: .8rem 1rem; border: 0; border-bottom: 1px solid var(--line); border-left: 3px solid transparent; background: transparent; color: var(--muted); font-family: var(--mono); font-size: var(--text-sm); text-align: left; transition: background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), padding var(--duration-fast) var(--ease-standard); }
	.tab-list [role='tab']::before { color: var(--mint); content: '0' counter(tab); counter-increment: tab; }
	.tab-list { counter-reset: tab; }
	.tab-list [role='tab']:hover { padding-left: 1.35rem; background: var(--soft-mint); color: var(--ink); }
	.tab-list [role='tab']:active { background: var(--mint); color: var(--ink); }
	.tab-list [role='tab']:focus-visible { outline: 2px solid var(--deep-mint); outline-offset: -3px; }
	.tab-list [role='tab'][aria-selected='true'] { border-left-color: var(--deep-mint); background: var(--ink); color: var(--white); }
	.terms-ground .tab-list [role='tab'][aria-selected='true'] { color: var(--white); }
	.tab-panel { min-width: 0; }
	.tab-panel[hidden] { display: none; }
	.tab-panel h2 { max-width: 14ch; }
	.tab-panel > p { max-width: 58ch; margin-top: 1.25rem; }
	.tab-panel .prose { margin-top: 2rem; }
	.tab-panel .prose h3 { max-width: 30ch; }
	.tab-panel .prose a { overflow-wrap: anywhere; }
	.terms-accordion { display: none; }

	.faq-section { background: var(--wash); }
	.faq-grid { display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, 1.35fr); gap: clamp(2rem, 8vw, 9rem); }
	.faq-grid h2 { max-width: 10ch; }
	.faq-list { display: grid; gap: 1px; background: var(--line); border: 1px solid var(--line); }
	.faq-list details { background: var(--white); }
	.faq-list summary { display: flex; justify-content: space-between; gap: 1rem; align-items: center; min-height: 44px; padding: 1.15rem 1.25rem; cursor: pointer; font-size: var(--text-lg); font-weight: 700; list-style: none; }
	.faq-list summary::-webkit-details-marker { display: none; }
	.faq-list summary::after { flex: 0 0 auto; color: var(--deep-mint); content: '+'; font-family: var(--mono); font-size: 1.25rem; }
	.faq-list details[open] summary::after { content: '−'; }
	.faq-list summary:hover { background: var(--soft-mint); color: var(--deep-mint-dark); }
	.faq-list summary:active { background: var(--mint); color: var(--ink); }
	.faq-list summary:focus-visible { outline: 2px solid var(--deep-mint); outline-offset: -3px; }
	.faq-list details > p { padding: 0 1.25rem 1.4rem; }

	.not-found { min-height: 70vh; display: grid; place-items: center; padding-block: 10rem; background: var(--ink); color: var(--white); }
	.not-found-inner { width: min(100%, 55rem); text-align: center; }
	.not-found h1 { max-width: none; color: var(--white); font-size: clamp(4rem, 15vw, 13rem); line-height: .8; }
	.not-found h1 span { color: var(--mint); }
	.not-found p { max-width: 45ch; margin: 2rem auto 0; color: rgba(255,255,255,.75); }
	.not-found .button { margin-top: 2rem; }

	.legal-route { padding-block: 2rem; border-top: 1px solid var(--line); background: var(--paper); }
	.legal-route-inner { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1rem 2rem; }
	.legal-route p { max-width: 45ch; color: var(--muted); font-size: var(--text-sm); }
	.legal-route a { min-height: 44px; display: inline-flex; align-items: center; }

	@media (max-width: 63.99rem) {
		.page-intro .site-shell, .feature-row, .feature-row.reverse, .catalogue-intro, .scroll-scene, .practice-grid, .contact-layout, .document-body, .reading-layout, .terms-tabs, .faq-grid { grid-template-columns: 1fr; }
		.feature-row.reverse .feature-copy, .feature-row.reverse figure { order: initial; }
		.catalogue-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
		.scroll-figure, .practice-statement, .contact-aside, .document-index, .margin-notes { position: static; }
		.scroll-figure { max-width: 38rem; }
		.scroll-step { min-height: auto; padding-left: 0; }
		.document-index { display: flex; flex-wrap: wrap; gap: .35rem 1rem; padding-bottom: 1rem; border-bottom: 1px solid var(--line); }
		.document-index a { padding: .3rem 0; }
		.reading-layout { gap: 0; }
		.margin-notes { display: none; }
		.inline-note { display: block; margin-top: 1.25rem; padding: .9rem 1rem; border-left: 2px solid var(--mint); background: var(--white); color: var(--muted); font-size: var(--text-sm); }
		.inline-note strong { display: block; color: var(--deep-mint); font-family: var(--mono); font-size: var(--text-xs); letter-spacing: .06em; text-transform: uppercase; }
		.terms-tabs { gap: 2rem; }
		.tab-list { display: none; }
		.terms-accordion { display: grid; gap: 1px; background: var(--line); border: 1px solid var(--line); }
		.terms-accordion details { background: var(--paper); }
		.terms-accordion summary { display: flex; justify-content: space-between; gap: 1rem; align-items: center; min-height: 52px; padding: .9rem 1rem; cursor: pointer; font-family: var(--mono); font-size: var(--text-sm); list-style: none; }
		.terms-accordion summary::-webkit-details-marker { display: none; }
		.terms-accordion summary::after { content: '+'; color: var(--deep-mint); font-size: 1.2rem; }
		.terms-accordion details[open] summary::after { content: '−'; }
		.terms-accordion .accordion-content { padding: 0 1rem 1.5rem; min-width: 0; }
		.terms-accordion .accordion-content h2 { margin-bottom: 1rem; }
		.terms-accordion .accordion-content h2 { font-size: var(--text-xl); }
		.terms-accordion .accordion-content .prose { margin-top: 1rem; }
		.terms-panels { display: none; }
		.fee-band-inner, .contact-close-grid { grid-template-columns: 1fr; }
		.contact-close-details { max-width: 42rem; }
		.process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
		.terms-head { grid-template-columns: 1fr; }
		.terms-head p { justify-self: start; }
	}

	@media (max-width: 47.99rem) {
		.hero-split { display: flex; min-height: 0; flex-direction: column; }
		.hero-split-copy { order: 1; padding: 8rem 1rem 4.5rem; border-right: 0; }
		.hero-split-media { order: 2; min-height: 20rem; }
		.hero-split-copy h1 { font-size: clamp(2.7rem, 13vw, 4.6rem); }
		.hero-jurisdiction { gap: .5rem .8rem; }
		.hero-jurisdiction span + span { padding-left: .8rem; }
		.hero-coordinate { right: 1rem; bottom: .75rem; }
		.hero-mark { left: 1rem; bottom: .75rem; }
		.section-heading { display: block; }
		.section-heading > p { margin-top: 1.5rem; }
		.feature-figure img, .catalogue-item img { aspect-ratio: 3 / 2; }
		.catalogue-grid { grid-template-columns: 1fr; }
		.scroll-steps { gap: 3rem; padding-bottom: 2rem; }
		.scroll-step { padding-block: 2rem; }
		.scroll-figure-frame img { aspect-ratio: 4 / 3; }
		.process-grid { grid-template-columns: 1fr; }
		.process-step { min-height: auto; padding: 1.25rem; }
		.process-step h3 { margin-top: 1.5rem; }
		.quote-grid { grid-template-columns: 1fr; gap: 0; }
		.quote-grid::before { left: 1rem; }
		.quote-coordinate { padding-top: 3.5rem; padding-left: 2rem; }
		.quote-spread blockquote { max-width: 9ch; padding-block: 3rem 4.5rem; padding-left: 2rem; font-size: clamp(2.6rem, 12vw, 4.5rem); }
		.quote-spread blockquote::before { left: .8rem; }
		.fee-ledger div { grid-template-columns: 1fr; gap: .35rem; }
		.contact-close-details { grid-template-columns: 1fr; }
		.practice-note, .reading-section { grid-template-columns: 1fr; gap: .7rem; }
		.practice-note .meta { padding-top: 0; }
		.document-card { padding: 1.25rem; }
		.document-masthead { grid-template-columns: 1fr; gap: 1.5rem; }
		.document-version { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); text-align: left; }
		.document-version dd { text-align: right; }
		.document-body { padding-top: 2rem; }
		.document-index { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 .75rem; }
		.reading-column h1 { font-size: clamp(2.6rem, 13vw, 4.2rem); }
		.terms-ground, .reading-ground, .document-ground { padding-block: 3.5rem; }
		.terms-head { padding-bottom: 2rem; }
		.faq-list summary { align-items: flex-start; }
		.not-found { min-height: 60vh; padding-block: 8rem; }
	}

	@media (max-width: 22.5rem) {
		.hero-split-copy { padding-inline: .75rem; }
		.hero-split-copy h1 { font-size: 2.55rem; }
		.quote-spread blockquote { font-size: 2.5rem; }
		.document-version { grid-template-columns: 1fr; }
		.document-version dd { text-align: left; }
	}

	@media (prefers-reduced-motion: reduce) {
		.scroll-figure { position: static; }
		.scroll-progress { display: none; }
		.quote-spread blockquote, .hero-split-media img { view-transition-name: none; }
	}
}
