:root { --ink: #181a18; --paper: #f0eee7; --line: rgba(24, 26, 24, 0.16); }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--paper); }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Arial, Helvetica, sans-serif; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }

/* Private concept index */
.showcase-shell { width: min(1480px, calc(100% - 48px)); margin: 0 auto; padding: 44px 0 34px; }
.showcase-header { border-top: 1px solid var(--ink); border-bottom: 1px solid var(--line); padding: 15px 0 38px; }
.showcase-kicker, .concept-topline, .concept-place, .showcase-footer { text-transform: uppercase; letter-spacing: .12em; font-size: 11px; font-weight: 700; }
.showcase-heading { display: grid; grid-template-columns: 1fr auto; gap: 48px; align-items: end; margin-top: 52px; }
.showcase-heading h1 { max-width: 980px; margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(52px, 7vw, 112px); line-height: .9; letter-spacing: -.06em; font-weight: 500; }
.showcase-heading p { max-width: 620px; margin: 30px 0 0; font-size: 18px; line-height: 1.55; color: rgba(24,26,24,.7); }
.showcase-count { display: flex; flex-direction: column; align-items: flex-end; min-width: 120px; }
.showcase-count strong { font-family: Georgia, "Times New Roman", serif; font-size: 88px; line-height: .8; font-weight: 500; }
.showcase-count span { margin-top: 12px; font-size: 12px; text-transform: uppercase; letter-spacing: .12em; }
.concept-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-top: 14px; }
.concept-card { --accent: #bb7a16; --tint: #f4d9a8; position: relative; min-height: 470px; display: flex; flex-direction: column; padding: 23px; overflow: hidden; border: 1px solid rgba(24,26,24,.16); background: color-mix(in srgb, var(--tint) 68%, white); transition: transform 180ms ease, box-shadow 180ms ease; }
.concept-card:hover { transform: translateY(-4px); box-shadow: 0 24px 50px rgba(24,26,24,.13); }
.concept-blue { --accent: #1d4f73; --tint: #b9d3e0; }.concept-brick { --accent: #7a2d20; --tint: #dfbbb0; }.concept-forest { --accent: #244d3d; --tint: #b7ccbd; }.concept-violet { --accent: #4d3f77; --tint: #c9c0df; }.concept-cyan { --accent: #11646d; --tint: #abd5d6; }
.concept-topline { display: flex; justify-content: space-between; gap: 20px; padding-bottom: 16px; border-bottom: 1px solid rgba(24,26,24,.18); }
.concept-topline span:last-child { text-align: right; }
.concept-mark { position: absolute; top: 66px; right: -20px; width: 214px; height: 214px; display: grid; place-items: center; border-radius: 50%; border: 1px solid rgba(24,26,24,.13); background: rgba(255,255,255,.3); color: var(--accent); }
.concept-mark::before, .concept-mark::after { content: ""; position: absolute; inset: 18px; border: 1px solid currentColor; border-radius: 50%; opacity: .35; }
.concept-mark::after { inset: 43px; border-radius: 32% 68% 63% 37%; transform: rotate(22deg); }
.concept-mark span { font-family: Georgia, "Times New Roman", serif; font-size: 92px; line-height: 1; font-style: italic; }
.concept-copy { position: relative; z-index: 1; margin-top: auto; padding-top: 185px; }
.concept-place { color: var(--accent); }
.concept-copy h2 { max-width: 380px; margin: 11px 0 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(33px,3.2vw,51px); line-height: .97; letter-spacing: -.045em; font-weight: 500; }
.concept-copy p { margin: 17px 0 0; font-size: 15px; line-height: 1.45; }
.concept-action { display: flex; justify-content: space-between; gap: 12px; margin-top: 28px; padding-top: 14px; border-top: 1px solid rgba(24,26,24,.18); font-size: 13px; font-weight: 700; }
.showcase-footer { display: flex; justify-content: space-between; gap: 24px; margin-top: 14px; padding: 22px 0 0; border-top: 1px solid var(--line); color: rgba(24,26,24,.58); }

/* Shared mini-site system */
.legal-site { --site-bg: #f4f0e6; --site-ink: #27231c; --accent: #a36213; --accent-soft: #e9d1a7; --display: Georgia, "Times New Roman", serif; min-height: 100vh; overflow: hidden; color: var(--site-ink); background: var(--site-bg); }
.theme-casefile { --site-bg: #e8edf0; --site-ink: #102638; --accent: #185174; --accent-soft: #bfd2dd; --display: Arial, Helvetica, sans-serif; }
.theme-tribunal { --site-bg: #eee7df; --site-ink: #291a18; --accent: #7b281c; --accent-soft: #d9b4a9; --display: Georgia, "Times New Roman", serif; }
.theme-audit { --site-bg: #eef0e8; --site-ink: #173229; --accent: #1f5a42; --accent-soft: #b8cdbb; --display: Arial, Helvetica, sans-serif; }
.theme-care { --site-bg: #f3eff2; --site-ink: #2d2536; --accent: #5c4679; --accent-soft: #d1c6df; --display: Georgia, "Times New Roman", serif; }
.theme-route { --site-bg: #e9f0ef; --site-ink: #133438; --accent: #087280; --accent-soft: #afd4d4; --display: Arial, Helvetica, sans-serif; }
.site-header { width: min(1400px, calc(100% - 64px)); min-height: 80px; margin: 0 auto; display: grid; grid-template-columns: minmax(220px,1fr) auto minmax(220px,1fr); align-items: center; gap: 28px; border-bottom: 1px solid color-mix(in srgb, var(--site-ink) 20%, transparent); }
.site-brand { display: flex; align-items: center; gap: 12px; width: max-content; font-weight: 750; line-height: 1.05; }
.site-brand small { display: block; margin-top: 5px; color: color-mix(in srgb, var(--site-ink) 58%, transparent); font-size: 10px; text-transform: uppercase; letter-spacing: .14em; }
.brand-mark { width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid var(--site-ink); border-radius: 50%; font-family: var(--display); font-weight: 700; }
.site-header nav { display: flex; gap: clamp(16px, 2vw, 34px); font-size: 12px; font-weight: 700; }
.site-header nav a, .header-contact { text-decoration: underline; text-decoration-color: transparent; text-underline-offset: 5px; transition: text-decoration-color .15s ease; }
.site-header nav a:hover, .header-contact:hover { text-decoration-color: var(--accent); }
.header-contact { justify-self: end; font-size: 13px; font-weight: 800; color: var(--accent); }
.hero { width: min(1400px, calc(100% - 64px)); margin: 0 auto; position: relative; }
.hero-copy h1 { margin: 0; font-family: var(--display); font-size: clamp(54px, 6.3vw, 106px); line-height: .93; letter-spacing: -.055em; font-weight: 500; }
.eyebrow { margin: 0 0 22px; color: var(--accent); font-size: 11px; line-height: 1.3; font-weight: 800; text-transform: uppercase; letter-spacing: .16em; }
.hero-lead { max-width: 700px; margin: 30px 0 0; font-size: clamp(17px,1.5vw,22px); line-height: 1.55; color: color-mix(in srgb, var(--site-ink) 76%, transparent); }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 34px; }
.primary-button { min-height: 50px; padding: 15px 24px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--accent); background: var(--accent); color: #fff; font-weight: 800; cursor: pointer; transition: transform .15s ease, filter .15s ease; }
.primary-button:hover { transform: translateY(-2px); filter: brightness(.93); }
.text-link { font-size: 13px; font-weight: 800; border-bottom: 1px solid currentColor; padding-bottom: 4px; }
.hero-visual { position: relative; margin: 0; overflow: hidden; background: var(--accent-soft); }
.hero-visual img { object-fit: cover; }
.proof-list { display: grid; gap: 0; }
.proof-list span { padding: 14px 0; border-top: 1px solid color-mix(in srgb, var(--site-ink) 18%, transparent); font-size: 12px; font-weight: 750; }

/* Six visual structures */
.hero-ledger { min-height: 760px; display: grid; grid-template-columns: 1.08fr .92fr; grid-template-rows: 1fr auto; gap: 28px 48px; padding: 90px 0 36px; }
.hero-ledger .hero-copy { position: relative; z-index: 1; align-self: center; }.hero-ledger .hero-visual { min-height: 590px; }.hero-ledger .proof-list { grid-column: 1 / -1; grid-template-columns: repeat(3,1fr); gap: 28px; }
.ledger-id { position: absolute; top: 44px; left: -14px; color: var(--accent); font: 500 12px Georgia,serif; transform: rotate(-90deg); transform-origin: left bottom; letter-spacing: .14em; }

.theme-casefile .site-header { width: 100%; padding: 0 max(32px, calc((100vw - 1400px)/2)); border-color: rgba(255,255,255,.16); background: #102638; color: #f4f6f7; }
.hero-casefile { width: 100%; min-height: 760px; display: grid; grid-template-columns: minmax(70px,.13fr) 1.02fr .85fr; grid-template-rows: 1fr auto; padding: 72px max(32px, calc((100vw - 1400px)/2)) 34px; gap: 36px; background: #102638; color: #f4f6f7; }
.hero-casefile .hero-copy { align-self: center; }.hero-casefile .hero-copy h1 { font-family: Arial,Helvetica,sans-serif; font-size: clamp(48px,5.5vw,90px); font-weight: 800; letter-spacing: -.06em; }.hero-casefile .hero-lead { color: rgba(244,246,247,.73); }.hero-casefile .eyebrow { color: #7bc0e0; }.hero-casefile .hero-visual { min-height: 580px; border: 1px solid rgba(255,255,255,.16); }
.casefile-index { padding-top: 10px; border-right: 1px solid rgba(255,255,255,.2); color: #7bc0e0; font: 700 12px/1.5 monospace; letter-spacing: .15em; }
.evidence-line { grid-column: 2 / -1; display: grid; grid-template-columns: repeat(3,1fr); }.evidence-line span { display: flex; gap: 12px; padding: 18px 20px; border: 1px solid rgba(255,255,255,.18); border-right: 0; font-size: 12px; }.evidence-line span:last-child { border-right: 1px solid rgba(255,255,255,.18); }.evidence-line b { color: #7bc0e0; font-family: monospace; }

.hero-tribunal { width: 100%; min-height: 800px; }.hero-tribunal .hero-visual { position: absolute; inset: 0; }.hero-tribunal .hero-visual::after { content: ""; position: absolute; inset: 0; background: rgba(39,17,13,.72); }
.tribunal-frame { position: relative; z-index: 1; min-height: 800px; width: min(1180px,calc(100% - 64px)); margin: 0 auto; padding: 90px 70px 42px; display: flex; flex-direction: column; justify-content: center; border-left: 1px solid rgba(255,255,255,.34); border-right: 1px solid rgba(255,255,255,.34); color: #fff7ed; text-align: center; }
.tribunal-frame .hero-copy h1 { max-width: 1050px; margin: 0 auto; font-size: clamp(52px,7vw,112px); }.tribunal-frame .hero-lead { margin-left: auto; margin-right: auto; color: rgba(255,247,237,.76); }.tribunal-frame .hero-actions { justify-content: center; }.tribunal-frame .text-link { color: #fff7ed; }.tribunal-frame .proof-list { grid-template-columns: repeat(3,1fr); width: 100%; margin-top: 70px; text-align: left; }.tribunal-frame .proof-list span { padding: 16px 22px; border-color: rgba(255,255,255,.3); }
.tribunal-rule { position: absolute; top: 36px; left: 50%; font-family: Georgia,serif; font-size: 42px; color: #dba99c; }

.hero-audit { min-height: 790px; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto 280px; gap: 0; padding-top: 76px; }.hero-audit .hero-copy { position: relative; padding: 42px 8vw 60px 0; border-top: 2px solid var(--site-ink); }.hero-audit .hero-copy h1 { font-family: Arial,Helvetica,sans-serif; font-size: clamp(52px,5.8vw,94px); font-weight: 850; }.hero-audit .audit-proof { border-top: 2px solid var(--site-ink); }
.audit-proof { display: grid; align-content: center; }.audit-proof span { display: grid; grid-template-columns: 28px 1fr; gap: 12px; padding: 19px 24px; border-bottom: 1px solid rgba(23,50,41,.22); font-size: 13px; font-weight: 750; }.audit-proof span::before { content: "✓"; color: var(--accent); }.hero-audit .hero-visual { grid-column: 1 / -1; }.audit-number { position: absolute; top: 12px; right: 0; color: rgba(31,90,66,.14); font: 900 150px/1 Arial,sans-serif; }

.hero-care { min-height: 820px; display: grid; grid-template-columns: 1.18fr .52fr; grid-template-rows: auto 310px auto; column-gap: 34px; padding: 85px 0 30px; }.hero-care .hero-copy { padding: 10px 5vw 65px 0; }.hero-care .hero-copy h1 { color: #3c2d4b; }
.care-offer { align-self: start; padding: 34px; background: #5c4679; color: #fff; box-shadow: 18px 18px 0 #d1c6df; }.care-offer span { display: block; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .14em; }.care-offer strong { display: block; margin-top: 26px; font: 500 clamp(38px,4vw,60px)/1 Georgia,serif; }.care-offer p { font-size: 14px; line-height: 1.5; }.care-offer a { display: inline-block; margin-top: 16px; border-bottom: 1px solid currentColor; font-weight: 800; }
.hero-care .hero-visual { grid-column: 1 / -1; }.hero-care .proof-list { grid-column: 1 / -1; grid-template-columns: repeat(3,1fr); gap: 34px; }

.hero-route { min-height: 770px; display: grid; grid-template-columns: 1.08fr .92fr; grid-template-rows: 1fr auto; gap: 30px 56px; padding: 92px 0 36px 54px; border-left: 2px solid var(--accent); }.hero-route::before { content: ""; position: absolute; left: -9px; top: 88px; width: 16px; height: 16px; border-radius: 50%; background: var(--site-bg); border: 3px solid var(--accent); }
.route-origin { position: absolute; top: 50px; left: -3px; transform: translateX(-50%); padding: 0 8px; background: var(--site-bg); color: var(--accent); font-size: 10px; font-weight: 850; text-transform: uppercase; letter-spacing: .14em; writing-mode: vertical-rl; }.hero-route .hero-copy { align-self: center; }.hero-route .hero-copy h1 { font-family: Arial,Helvetica,sans-serif; font-weight: 850; }.hero-route .hero-visual { min-height: 550px; clip-path: polygon(10% 0,100% 0,100% 92%,88% 100%,0 100%,0 11%); }
.route-points { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3,1fr); position: relative; }.route-points::before { content: ""; position: absolute; top: 16px; left: 14px; right: 14px; border-top: 2px dotted var(--accent); }.route-points span { position: relative; display: grid; grid-template-columns: 32px 1fr; align-items: start; gap: 10px; padding-right: 30px; font-size: 12px; font-weight: 750; }.route-points b { position: relative; z-index: 1; width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: var(--accent); color: #fff; }

/* Content sections */
.diagnostic-section, .prices-section, .process-section, .documents-section, .faq-section, .contact-section { width: min(1400px,calc(100% - 64px)); margin: 0 auto; padding: 112px 0; border-top: 1px solid color-mix(in srgb, var(--site-ink) 18%, transparent); }
.section-heading { max-width: 720px; }.section-heading h2, .documents-section h2, .contact-section h2 { margin: 0; font-family: var(--display); font-size: clamp(40px,4.5vw,72px); line-height: .98; letter-spacing: -.045em; font-weight: 520; }.section-heading > p:last-child, .contact-copy > p { margin: 25px 0 0; max-width: 640px; font-size: 17px; line-height: 1.6; color: color-mix(in srgb, var(--site-ink) 70%, transparent); }
.diagnostic-section { display: grid; grid-template-columns: .9fr 1.1fr; gap: 8vw; align-items: start; }.check-list { margin: 0; padding: 0; list-style: none; border-top: 2px solid var(--site-ink); }.check-list li { min-height: 86px; display: grid; grid-template-columns: 54px 1fr; align-items: center; gap: 18px; border-bottom: 1px solid color-mix(in srgb, var(--site-ink) 20%, transparent); text-transform: lowercase; }.check-list span { color: var(--accent); font: 700 12px monospace; }.check-list strong { font-family: var(--display); font-size: clamp(20px,2vw,29px); font-weight: 600; line-height: 1.2; }
.prices-section { display: grid; grid-template-columns: .78fr .63fr 1fr; gap: 40px; }.flagship-price { min-height: 390px; padding: 34px; display: flex; flex-direction: column; background: var(--accent); color: #fff; }.flagship-price > span { font-size: 10px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }.flagship-price h3 { margin: 34px 0 0; font: 500 30px/1.1 var(--display); }.flagship-price strong { display: block; margin-top: auto; font: 500 clamp(36px,3.6vw,56px)/1 var(--display); }.flagship-price p { min-height: 60px; font-size: 13px; line-height: 1.5; color: rgba(255,255,255,.75); }.flagship-price a { padding-top: 15px; border-top: 1px solid rgba(255,255,255,.45); font-size: 13px; font-weight: 800; }
.price-list { border-top: 2px solid var(--site-ink); }.price-list article { display: grid; grid-template-columns: 1fr auto; gap: 26px; padding: 22px 0; border-bottom: 1px solid color-mix(in srgb, var(--site-ink) 20%, transparent); }.price-list h3 { margin: 0; font-size: 17px; line-height: 1.25; }.price-list p { margin: 8px 0 0; font-size: 13px; line-height: 1.45; color: color-mix(in srgb, var(--site-ink) 64%, transparent); }.price-list strong { white-space: nowrap; color: var(--accent); font-size: 17px; }
.process-section .section-heading { margin-bottom: 60px; }.process-list { display: grid; grid-template-columns: repeat(4,1fr); border-top: 2px solid var(--site-ink); }.process-list article { min-height: 250px; padding: 22px 28px 26px 0; border-right: 1px solid color-mix(in srgb, var(--site-ink) 20%, transparent); }.process-list article + article { padding-left: 28px; }.process-list article:last-child { border-right: 0; }.process-list span { color: var(--accent); font: 750 12px monospace; }.process-list h3 { margin: 54px 0 12px; font: 600 23px/1.14 var(--display); }.process-list p { margin: 0; font-size: 14px; line-height: 1.55; color: color-mix(in srgb, var(--site-ink) 66%, transparent); }
.documents-section { display: grid; grid-template-columns: .8fr 1.25fr; gap: 80px; align-items: start; }.documents-section ul { margin: 0; padding: 0; list-style: none; border-top: 2px solid var(--site-ink); }.documents-section li { padding: 19px 0 19px 31px; position: relative; border-bottom: 1px solid color-mix(in srgb, var(--site-ink) 20%, transparent); font-size: 15px; line-height: 1.45; }.documents-section li::before { content: "□"; position: absolute; left: 0; color: var(--accent); font-weight: 800; }
.faq-section { display: grid; grid-template-columns: .75fr 1.25fr; gap: 8vw; }.faq-list { border-top: 2px solid var(--site-ink); }.faq-list details { border-bottom: 1px solid color-mix(in srgb, var(--site-ink) 20%, transparent); }.faq-list summary { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 24px; list-style: none; cursor: pointer; font-size: 18px; font-weight: 750; }.faq-list summary::-webkit-details-marker { display: none; }.faq-list summary span { color: var(--accent); font-size: 27px; transition: transform .15s ease; }.faq-list details[open] summary span { transform: rotate(45deg); }.faq-list details p { margin: -4px 0 26px; max-width: 720px; font-size: 15px; line-height: 1.6; color: color-mix(in srgb, var(--site-ink) 68%, transparent); }
.contact-section { width: 100%; padding-left: max(32px,calc((100vw - 1400px)/2)); padding-right: max(32px,calc((100vw - 1400px)/2)); display: grid; grid-template-columns: .9fr 1.1fr; gap: 8vw; background: var(--site-ink); color: var(--site-bg); }.contact-section .eyebrow { color: color-mix(in srgb, var(--accent-soft) 80%, white); }.contact-copy > p { color: color-mix(in srgb, var(--site-bg) 72%, transparent); }.contact-copy dl { margin: 40px 0 0; }.contact-copy dl div { display: grid; grid-template-columns: 85px 1fr; gap: 20px; padding: 12px 0; border-top: 1px solid color-mix(in srgb, var(--site-bg) 18%, transparent); }.contact-copy dt { color: color-mix(in srgb, var(--site-bg) 55%, transparent); font-size: 11px; text-transform: uppercase; letter-spacing: .1em; }.contact-copy dd { margin: 0; font-size: 14px; }.external-profile { display: inline-block; margin-top: 28px; padding-bottom: 5px; border-bottom: 1px solid currentColor; font-size: 13px; font-weight: 800; }
.lead-form { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; align-content: center; padding: 38px; background: var(--site-bg); color: var(--site-ink); }.lead-form label span { display: block; margin-bottom: 8px; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }.lead-form input:not([type="checkbox"]), .lead-form textarea { width: 100%; min-height: 49px; padding: 13px 0; border: 0; border-bottom: 1px solid color-mix(in srgb, var(--site-ink) 35%, transparent); outline: 0; background: transparent; color: var(--site-ink); resize: vertical; }.lead-form input:focus, .lead-form textarea:focus { border-color: var(--accent); }.form-wide { grid-column: 1 / -1; }.consent { display: grid !important; grid-template-columns: 18px 1fr; gap: 10px; align-items: start; }.consent input { margin: 2px 0 0; accent-color: var(--accent); }.consent span { margin: 0 !important; font-size: 11px !important; line-height: 1.4; text-transform: none !important; letter-spacing: 0 !important; font-weight: 500 !important; }.consent a { text-decoration: underline; }
.form-success { align-self: center; padding: 40px; background: var(--site-bg); color: var(--site-ink); }.form-success strong { font: 550 32px/1.1 var(--display); }.form-success p { line-height: 1.5; }.form-success button { padding: 0 0 4px; border: 0; border-bottom: 1px solid currentColor; background: transparent; color: var(--accent); cursor: pointer; font-weight: 800; }
.site-footer { width: 100%; padding: 50px max(32px,calc((100vw - 1400px)/2)); display: grid; grid-template-columns: 1fr auto auto; gap: 26px 60px; background: var(--site-ink); color: var(--site-bg); border-top: 1px solid color-mix(in srgb, var(--site-bg) 18%, transparent); }.site-footer > div { display: grid; gap: 6px; font-size: 11px; line-height: 1.4; }.site-footer nav { display: flex; flex-wrap: wrap; gap: 18px; font-size: 11px; text-decoration: underline; }.site-footer > p { grid-column: 1 / -1; margin: 12px 0 0; color: color-mix(in srgb, var(--site-bg) 55%, transparent); font-size: 10px; line-height: 1.5; }

/* Legal documents */
.legal-document { --site-bg: #f4f0e6; --site-ink: #27231c; --accent: #a36213; --display: Georgia,"Times New Roman",serif; min-height: 100vh; padding-bottom: 100px; color: var(--site-ink); background: var(--site-bg); }.legal-document.theme-casefile { --site-bg:#e8edf0;--site-ink:#102638;--accent:#185174;--display:Arial,sans-serif; }.legal-document.theme-tribunal{--site-bg:#eee7df;--site-ink:#291a18;--accent:#7b281c}.legal-document.theme-audit{--site-bg:#eef0e8;--site-ink:#173229;--accent:#1f5a42;--display:Arial,sans-serif}.legal-document.theme-care{--site-bg:#f3eff2;--site-ink:#2d2536;--accent:#5c4679}.legal-document.theme-route{--site-bg:#e9f0ef;--site-ink:#133438;--accent:#087280;--display:Arial,sans-serif}
.legal-document > header { height: 78px; padding: 0 max(24px,calc((100vw - 1080px)/2)); display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid color-mix(in srgb,var(--site-ink) 20%,transparent); font-size: 12px; font-weight: 800; }.legal-document > article { width: min(860px,calc(100% - 48px)); margin: 0 auto; padding-top: 90px; }.legal-document h1 { max-width: 760px; margin: 0; font: 520 clamp(44px,6vw,76px)/.98 var(--display); letter-spacing: -.045em; }.document-date { margin: 26px 0 65px; color: color-mix(in srgb,var(--site-ink) 55%,transparent); font-size: 12px; }.legal-document article section { padding: 26px 0; border-top: 1px solid color-mix(in srgb,var(--site-ink) 20%,transparent); }.legal-document article section h2 { margin: 0 0 12px; font-size: 18px; }.legal-document article section p { margin: 0; font-size: 15px; line-height: 1.65; }

/* Variant-specific content rhythm */
.theme-casefile .diagnostic-section, .theme-casefile .prices-section, .theme-casefile .process-section { border-top-width: 2px; }.theme-casefile .section-heading h2, .theme-casefile .documents-section h2, .theme-casefile .contact-section h2 { font-weight: 850; }.theme-casefile .process-section { display:grid; grid-template-columns:.7fr 1.3fr; gap:70px; }
.theme-tribunal .prices-section { grid-template-columns:.68fr .72fr 1fr; background:color-mix(in srgb,var(--accent-soft) 18%,transparent); padding-left:4vw; padding-right:4vw; width:min(1480px,calc(100% - 32px)); }
.theme-audit .diagnostic-section { border:2px solid color-mix(in srgb,var(--site-ink) 18%,transparent); padding-left:4vw; padding-right:4vw; }
.theme-care .documents-section { background:color-mix(in srgb,var(--accent-soft) 30%,transparent); padding-left:4vw; padding-right:4vw; width:min(1480px,calc(100% - 32px)); }
.theme-route .process-section { border-top:0; background:var(--site-ink); color:var(--site-bg); padding-left:4vw; padding-right:4vw; width:min(1480px,calc(100% - 32px)); }.theme-route .process-section .eyebrow,.theme-route .process-section p { color:color-mix(in srgb,var(--site-bg) 72%,transparent); }.theme-route .process-list article { border-color:color-mix(in srgb,var(--site-bg) 28%,transparent); }
.theme-tribunal .diagnostic-section { text-align: center; grid-template-columns: 1fr; }.theme-tribunal .diagnostic-section .section-heading { margin: 0 auto; }.theme-tribunal .check-list { display: grid; grid-template-columns: repeat(4,1fr); }.theme-tribunal .check-list li { min-height: 180px; display: flex; flex-direction: column; justify-content: center; padding: 20px; border-right: 1px solid rgba(41,26,24,.2); }.theme-tribunal .check-list li:last-child { border-right: 0; }
.theme-audit .prices-section { grid-template-columns: .75fr .75fr 1.2fr; }.theme-audit .flagship-price { clip-path: polygon(0 0,100% 0,100% 90%,92% 100%,0 100%); }
.theme-care .diagnostic-section { grid-template-columns: 1.15fr .85fr; }.theme-care .check-list { padding: 25px; background: #fff; border-top: 0; }.theme-care .check-list li { border-color: #ddd4e3; }
.theme-route .process-list { position: relative; border-top: 0; }.theme-route .process-list::before { content:""; position:absolute; top: 36px; left:0; right:0; border-top:2px dotted var(--accent); }.theme-route .process-list article { position:relative; border:0; }.theme-route .process-list span { position:relative; z-index:1; display:inline-grid; place-items:center; min-width:72px; height:30px; padding:0 10px; border-radius:16px; background:var(--accent); color:#fff; }

@media (max-width: 1050px) {
  .site-header { grid-template-columns: 1fr auto; }.site-header nav { display:none; }
  .hero-ledger, .hero-route { grid-template-columns: 1fr 1fr; }.hero-casefile { grid-template-columns: 52px 1fr 1fr; }
  .prices-section { grid-template-columns: 1fr 1fr; }.prices-section .section-heading { grid-column:1/-1; }.price-list { grid-column:1/-1; }
  .documents-section { grid-template-columns: 1fr 1fr; }
  .process-list { grid-template-columns: repeat(2,1fr); }.process-list article:nth-child(2) { border-right:0; }.process-list article:nth-child(n+3) { border-top:1px solid color-mix(in srgb,var(--site-ink) 20%,transparent); }
  .site-footer { grid-template-columns: 1fr 1fr; }.site-footer nav { grid-column:1/-1; }
}

@media (max-width: 760px) {
  .showcase-shell { width: min(100% - 24px,1480px); padding-top:20px; }.showcase-heading { grid-template-columns:1fr; margin-top:34px; }.showcase-heading h1 { font-size:52px; }.showcase-heading p { font-size:16px; }.showcase-count { display:none; }.concept-grid { grid-template-columns:1fr; }.concept-card { min-height:430px; }.showcase-footer { flex-direction:column; }
  .site-header { width: calc(100% - 32px); min-height:68px; }.site-brand { font-size:13px; }.brand-mark { width:28px;height:28px; }.header-contact { font-size:12px; }
  .hero { width: calc(100% - 32px); }.hero-copy h1 { font-size:48px; }.hero-lead { font-size:16px; margin-top:22px; }.hero-actions { margin-top:26px; }.primary-button { width:100%; }.text-link { margin:0 auto; }
  .hero-ledger, .hero-route { min-height:auto; display:flex; flex-direction:column; gap:28px; padding:62px 0 28px; }.hero-ledger .hero-visual, .hero-route .hero-visual { min-height:380px; order:2; }.hero-ledger .proof-list, .hero-care .proof-list { grid-template-columns:1fr; order:3; }.ledger-id { display:none; }
  .theme-casefile .site-header { padding:0 16px; }.hero-casefile { min-height:auto; grid-template-columns:1fr; padding:60px 16px 26px; }.casefile-index { display:none; }.hero-casefile .hero-visual { min-height:390px; }.evidence-line { grid-column:1; grid-template-columns:1fr; }.evidence-line span { border-right:1px solid rgba(255,255,255,.18); border-bottom:0; }.evidence-line span:last-child { border-bottom:1px solid rgba(255,255,255,.18); }
  .tribunal-frame { width:calc(100% - 32px); min-height:720px; padding:80px 16px 30px; }.tribunal-frame .hero-copy h1 { font-size:47px; }.tribunal-frame .proof-list { grid-template-columns:1fr; margin-top:45px; }.hero-tribunal,.tribunal-frame { min-height:720px; }
  .hero-audit { min-height:auto; display:flex; flex-direction:column; padding-top:58px; }.hero-audit .hero-copy { padding:34px 0 45px; }.hero-audit .hero-copy h1 { font-size:48px; }.hero-audit .hero-visual { min-height:300px; }.audit-number { font-size:90px; }.audit-proof { margin-bottom:30px; }
  .hero-care { min-height:auto; display:flex; flex-direction:column; gap:25px; padding:58px 0 28px; }.hero-care .hero-copy { padding:0; }.care-offer { order:2; box-shadow:10px 10px 0 #d1c6df; }.hero-care .hero-visual { min-height:300px; order:3; }.hero-care .proof-list { order:4; }
  .hero-route { padding-left:30px; margin-left:16px; width:calc(100% - 32px); }.route-origin { display:none; }.route-points { display:grid;grid-template-columns:1fr;gap:13px;order:4; }.route-points::before { display:none; }
  .diagnostic-section,.prices-section,.process-section,.documents-section,.faq-section,.contact-section { width:calc(100% - 32px); padding:78px 0; }.diagnostic-section,.prices-section,.documents-section,.faq-section { display:grid; grid-template-columns:1fr; gap:48px; }.check-list { grid-column:1; }
  .theme-tribunal .check-list { grid-template-columns:1fr 1fr; }.theme-tribunal .check-list li { min-height:150px; }
  .flagship-price { min-height:340px; }.price-list { grid-column:1; }.price-list article { grid-template-columns:1fr;gap:12px; }
  .process-list { grid-template-columns:1fr; }.process-list article,.process-list article+article { min-height:auto;padding:26px 0;border-right:0;border-top:1px solid color-mix(in srgb,var(--site-ink) 20%,transparent); }.process-list h3 { margin-top:25px; }.theme-route .process-list::before { display:none; }
  .contact-section { width:100%; padding:78px 16px; grid-template-columns:1fr; }.lead-form { padding:25px;grid-template-columns:1fr; }.lead-form label,.form-wide { grid-column:1; }
  .site-footer { grid-template-columns:1fr; padding:42px 16px; }.site-footer nav,.site-footer>p { grid-column:1; }
  .theme-casefile .process-section,.theme-tribunal .prices-section { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto}.concept-card,.primary-button,.faq-list summary span{transition:none} }
