/**
 * Do not edit directly, this file was auto-generated.
 */

:root {
  --advb-breakpoint-xs: 480px; /** Large phone. Not an Elementor stop — use only for intra-mobile refinements */
  --advb-breakpoint-sm: 768px; /** ELEMENTOR — tablet begins. Below this is Elementor's 'Mobile'. The footer goes to three columns and the bio panel to two here */
  --advb-breakpoint-md: 1025px; /** ELEMENTOR — desktop begins. Below this is Elementor's 'Tablet'. Hover-driven dropdowns become tap-driven below this line */
  --advb-breakpoint-lg: 1240px; /** Content reaches its maximum width and page gutters take over */
  --advb-breakpoint-xl: 1440px; /** Wide desktop — full-bleed imagery and the wide container */
  --advb-media-query-mobile-only: (max-width: 767px); /** ELEMENTOR — Mobile */
  --advb-media-query-tablet-down: (max-width: 1024px); /** ELEMENTOR — Tablet and below */
  --advb-media-query-tablet-up: (min-width: 768px); /** Tablet and above */
  --advb-media-query-desktop-up: (min-width: 1025px); /** ELEMENTOR — Desktop */
  --advb-media-query-wide-up: (min-width: 1440px); /** Wide desktop */
  --advb-media-query-reduced-motion: (prefers-reduced-motion: reduce); /** Honoured site-wide — see system/motion.json */
  --advb-media-query-print: print; /** Clients print engagement terms and article pages. Print styles are a requirement, not an extra */
  --advb-color-white: #ffffff; /** Pure white. Page canvas, legal bar, cards. The dominant surface of the site. */
  --advb-color-black: #000000; /** True black. Only for image overlays (rgba) and the logo lockup artwork. Never for text. */
  --advb-color-ink-25: #fbfaf9; /** Page wash — barely-there off-white for alternating sections */
  --advb-color-ink-50: #f6f5f3; /** Subtle surface, inset panels */
  --advb-color-ink-100: #eceae7; /** Grouped content, table zebra stripe */
  --advb-color-ink-200: #dcd9d4; /** Default divider / hairline border */
  --advb-color-ink-300: #c2beb8; /** Strong border, disabled control outline */
  --advb-color-ink-400: #949089; /** Placeholder chrome, disabled control outline, form input border — 3.18:1 on white, clearing the WCAG 1.4.11 non-text minimum. Absorbs the live #adadac hero heading grey */
  --advb-color-ink-500: #7a7a7a; /** LIVE VALUE — the site's body and heading grey. 4.29:1 on white: large text and secondary copy only, never dense body text. See docs/audit.md */
  --advb-color-ink-600: #5f5c5a; /** Secondary text at AA (6.63:1). Absorbs the live button fill #585656 */
  --advb-color-ink-700: #4a4746; /** Primary body text — 9.21:1 on white (AAA). The recommended replacement for #7a7a7a in running text */
  --advb-color-ink-800: #363839; /** LIVE VALUE — footer background. Also strong headings on light surfaces */
  --advb-color-ink-900: #2b2b2c; /** Deepest neutral surface, dark section background */
  --advb-color-ink-950: #1a1a1b; /** Near-black — maximum-contrast dark bands */
  --advb-color-crimson-50: #fdf3f7; /** Faintest crimson wash — tinted callout background */
  --advb-color-crimson-100: #fbe3ec; /** Soft tint — active nav background, badge fill */
  --advb-color-crimson-200: #f7c4d6; /** Light tint — borders on tinted surfaces */
  --advb-color-crimson-300: #f394b3; /** Accent on dark surfaces — 8.10:1 over indigo.900 */
  --advb-color-crimson-400: #ee5e89; /** LIVE VALUE — hero overlay heading pink. Large text over photography only (3.18:1) */
  --advb-color-crimson-500: #cc3366; /** LIVE VALUE — the brand accent. Links, CTAs, phone numbers. 4.96:1 on white (AA) */
  --advb-color-crimson-600: #ad2a56; /** Hover, and the link colour for dense body copy — 6.48:1 on white */
  --advb-color-crimson-700: #8b2245; /** Pressed state. Crimson text at AAA (8.70:1) */
  --advb-color-crimson-800: #691934; /** Deep crimson — dark accent surfaces */
  --advb-color-crimson-900: #471123; /** Deepest crimson */
  --advb-color-indigo-50: #f2f2f7; /** Faintest indigo wash */
  --advb-color-indigo-100: #e2e2ee; /** Soft tint — pull quotes, inset panels */
  --advb-color-indigo-200: #c3c3da; /** Light tint, borders on tinted surfaces */
  --advb-color-indigo-300: #9c9cc0; /** Muted indigo — decorative rules */
  --advb-color-indigo-400: #6f6fa0; /** Indigo text on white at AA (4.71:1) */
  --advb-color-indigo-500: #4a4a80; /** Mid indigo */
  --advb-color-indigo-600: #333366; /** LIVE VALUE — office-link hover. The anchor of the ramp */
  --advb-color-indigo-700: #2a2a54; /** Deep institutional surface — footer, hero scrim */
  --advb-color-indigo-800: #212141; /** Deeper surface */
  --advb-color-indigo-900: #17172d; /** Deepest indigo — maximum-authority band */
  --advb-color-brass-50: #faf7f0; /** Faintest brass wash */
  --advb-color-brass-100: #f3ecdc; /** Soft brass tint — quote and testimonial surfaces. Replaces the live #ded1d1 panel */
  --advb-color-brass-200: #e6d9bd; /** Light brass — decorative borders */
  --advb-color-brass-300: #d4c199; /** Brass on dark — 9.93:1 over indigo.900. The lion mark on dark surfaces */
  --advb-color-brass-400: #c0a978; /** Warm brass on dark surfaces, hairline rules */
  --advb-color-brass-500: #a8905e; /** Brass primary — the metal at full value. Large text and non-text UI only on white (3.08:1) */
  --advb-color-brass-600: #8c7549; /** Deep brass */
  --advb-color-brass-700: #6e5c39; /** Brass text on white at AA (6.46:1) */
  --advb-color-brass-800: #50432a; /** Dark brass */
  --advb-color-brass-900: #33291a; /** Deepest brass */
  --advb-color-walnut-50: #f7f4f2; /** Faintest warm wash */
  --advb-color-walnut-100: #ece5e0; /** Warm surface tint */
  --advb-color-walnut-200: #d6c9c0; /** Warm border */
  --advb-color-walnut-300: #b8a598; /** Muted walnut */
  --advb-color-walnut-400: #8f7a6b; /** Mid walnut */
  --advb-color-walnut-500: #6b5748; /** Walnut text on white at AA (6.81:1) */
  --advb-color-walnut-600: #54483c; /** SAMPLED — crest wood midtone */
  --advb-color-walnut-700: #3c3024; /** SAMPLED — crest wood shadow */
  --advb-color-walnut-800: #302424; /** SAMPLED — crest wood deep shadow */
  --advb-color-walnut-900: #241818; /** SAMPLED — crest wood darkest. Warm dark section background */
  --advb-color-overlay-faint: rgba(0, 0, 0, 0.25); /** LIVE VALUE — light scrim, decorative imagery */
  --advb-color-overlay-soft: rgba(0, 0, 0, 0.45); /** LIVE VALUE — card image overlay */
  --advb-color-overlay-medium: rgba(0, 0, 0, 0.5); /** LIVE VALUE — the standard hero scrim */
  --advb-color-overlay-strong: rgba(0, 0, 0, 0.7); /** LIVE VALUE — heavy scrim where the photograph is busy */
  --advb-color-overlay-indigo: rgba(23, 23, 45, 0.72); /** Branded scrim — indigo.900 at 72%. Preferred over pure black for hero photography in the redesign */
  --advb-color-overlay-walnut: rgba(36, 24, 24, 0.68); /** Branded warm scrim — walnut.900 at 68%. For the crest and interior photography */
  --advb-color-legacy-news-blue: #6ec1e4; /** News (/novini/) H1 and service-card H3. Elementor default accent, off-brand and 2.02:1 on white — fails WCAG at any size. RETIRE → semantic.color.text.heading */
  --advb-color-legacy-sienna: #993300; /** Inline link colour on the home and tax-law pages — a second, conflicting link colour. RETIRE → semantic.color.action.link */
  --advb-color-legacy-panel-warm: #ded1d1; /** Background of the bio / tax-law two-column panel. RETIRE → semantic.color.surface.panel (brass.100) */
  --advb-color-legacy-hero-cream: #efe39c; /** Hero overlay heading on one page only (page-id-419). RETIRE → semantic.color.text.onImage */
  --advb-color-legacy-hero-photo: #f5ecec; /** Hero text over photography. RETIRE → semantic.color.text.onImage */
  --advb-color-legacy-hero-muted: #adadac; /** Hero heading on page-id-7. RETIRE → semantic.color.text.onImageMuted */
  --advb-color-legacy-footer-text: #d6d6d6; /** Footer body copy — 8.11:1 on the footer background, passes. KEEP in spirit → semantic.color.text.onDark */
  --advb-color-legacy-footer-link: #cfd2d4; /** Footer link. A near-duplicate of #d6d6d6 with no perceptible difference. RETIRE → semantic.color.text.onDark */
  --advb-color-legacy-footer-current: #54595f; /** Current footer menu item and news card title. 1.67:1 on the #363839 footer — invisible. RETIRE → semantic.color.text.onDarkMuted */
  --advb-color-legacy-button-fill: #585656; /** Default Elementor button fill. RETIRE → semantic.color.action.primary */
  --advb-color-legacy-button-alt: #8d8b8b; /** Button fill on page-id-416 only. RETIRE → semantic.color.action.primary */
  --advb-color-legacy-button-hover: #b85353; /** Button hover — a desaturated red unrelated to the accent. RETIRE → semantic.color.action.primaryHover */
  --advb-color-legacy-heading-alt: #33373d; /** Header navigation link colour. The third neutral in a three-way split with #7a7a7a and #333333. RETIRE → ink.800 */
  --advb-color-legacy-text-strong: #333333; /** theme.json 'text-strong'. RETIRE → ink.800 (#363839) */
  --advb-duration-instant: 0ms; /** No animation — what every duration resolves to under prefers-reduced-motion */
  --advb-duration-fast: 120ms; /** Link, button and navigation hover. Fast enough to feel like a direct response */
  --advb-duration-normal: 200ms; /** THE DEFAULT. Focus ring, dropdown reveal, border change. Latham and Cravath both settle here */
  --advb-duration-slow: 250ms; /** Mobile drawer. The longest duration in the system, and the only one attached to something that moves */
  --advb-easing-standard: cubic-bezier(0.2, 0, 0.2, 1); /** THE DEFAULT. Colour, border and opacity. Quick to commit, gentle to arrive */
  --advb-easing-entrance: cubic-bezier(0, 0, 0.2, 1); /** Something appearing — the dropdown, the drawer */
  --advb-easing-exit: cubic-bezier(0.4, 0, 1, 1); /** Something leaving. Faster than its entrance, so dismissal feels immediate */
  --advb-transition-color: color 120ms cubic-bezier(0.2, 0, 0.2, 1), background-color 120ms cubic-bezier(0.2, 0, 0.2, 1), border-color 120ms cubic-bezier(0.2, 0, 0.2, 1), text-decoration-color 120ms cubic-bezier(0.2, 0, 0.2, 1); /** Hover and active states. This carries almost all the motion on the site */
  --advb-transition-focus: outline-color 200ms cubic-bezier(0.2, 0, 0.2, 1), box-shadow 200ms cubic-bezier(0.2, 0, 0.2, 1); /** The focus ring arriving. Slightly slower than hover so it is easy to follow with the eye while tabbing */
  --advb-transition-opacity: opacity 200ms cubic-bezier(0.2, 0, 0.2, 1); /** Dropdown and disclosure reveals */
  --advb-transition-drawer: transform 250ms cubic-bezier(0, 0, 0.2, 1); /** The mobile navigation drawer. The ONLY transform transition in the system */
  --advb-rules-no-scroll-animation: true; /** Nothing animates on scroll. No reveals, no parallax, no counters, no scroll-jacking. Content is present when the page is */
  --advb-rules-no-autoplay: true; /** No carousel advances itself, no video plays on load. Anything that moves does so because someone asked it to */
  --advb-rules-no-hover-only: true; /** No information or destination is reachable by hover alone. Every dropdown opens on focus and on tap as well */
  --advb-rules-reduced-motion: true; /** prefers-reduced-motion is honoured globally and resolves every duration to instant */
  --advb-grid-columns-mobile: 4; /** ≤767px. One content column in practice; four exist for card and image grids */
  --advb-grid-columns-tablet: 8; /** 768–1024px */
  --advb-grid-columns-desktop: 12; /** ≥1025px. The working grid */
  --advb-grid-gutter-mobile: 1.25rem; /** 20px */
  --advb-grid-gutter-tablet: 2rem; /** 32px */
  --advb-grid-gutter-desktop: 3rem; /** 48px */
  --advb-grid-max-width-measure: 44rem; /** 704px — the reading column. Latham holds body copy at 620px, Cravath at 962px for 30px type; 704px at 18px lands near 65 characters */
  --advb-grid-max-width-content: 60rem; /** 960px — media, tables and pull-outs that need to break the measure without going full width */
  --advb-grid-max-width-container: 82.5rem; /** 1320px — the page container. Between Cravath's 1325 and Latham's 1283 */
  --advb-grid-max-width-wide: 96rem; /** 1536px — full-bleed imagery and the hero */
  --advb-grid-max-width-full: 100%; /** Edge to edge — the legal bar and hero photography */
  --advb-grid-aspect-hero: 16 / 9; /** Hero photography, desktop */
  --advb-grid-aspect-hero-tall: 4 / 5; /** Hero photography, mobile */
  --advb-grid-aspect-card: 3 / 2; /** News and practice cards */
  --advb-grid-aspect-portrait: 4 / 5; /** Attorney portraits */
  --advb-grid-aspect-square: 1 / 1; /** The lion mark, avatars */
  --advb-z-index-below: -1; /** Decorative artwork behind content */
  --advb-z-index-base: 0; /** Document flow */
  --advb-z-index-raised: 1; /** Hero text above its scrim */
  --advb-z-index-dropdown: 10; /** Navigation submenus */
  --advb-z-index-sticky: 20; /** Sticky masthead, sticky mobile contact bar */
  --advb-z-index-overlay: 30; /** Backdrop behind the mobile drawer */
  --advb-z-index-drawer: 40; /** Mobile navigation drawer, modal dialog */
  --advb-z-index-popover: 50; /** Tooltips, cookie notice */
  --advb-z-index-toast: 60; /** Form confirmation messages */
  --advb-z-index-skip-link: 100; /** Skip-to-content link — must sit above everything when focused */
  --advb-radius-none: 0; /** THE DEFAULT. Buttons, inputs, cards, sections, images, tables. If you are unsure, it is this one */
  --advb-radius-xs: 2px; /** Tags, badges, and the odd piece of chrome that would otherwise look like an error. The ceiling for anything interactive */
  --advb-radius-sm: 4px; /** Media thumbnails and inline figures only — Latham's one use of radius is on imagery */
  --advb-radius-full: 9999px; /** Avatars and the mobile menu toggle. Nothing else, ever */
  --advb-border-width-none: 0; /** No border */
  --advb-border-width-hairline: 1px; /** THE DEFAULT. Dividers, table rules, card outlines, secondary buttons */
  --advb-border-width-medium: 2px; /** Focus ring, active navigation rule */
  --advb-border-width-thick: 3px; /** Emphasis rule under a section heading */
  --advb-border-width-rule: 4px; /** The brass eyebrow rule and the pull-quote edge — the one heavy line in the system */
  --advb-shadow-none: none; /** THE DEFAULT. Cards, sections, images, tables, buttons. Anything that sits on the page rather than above it */
  --advb-shadow-ambient: 0 20px 30px -12px rgba(26, 26, 27, 0.06); /** Latham's shadow, adapted. Very large, very soft, barely there — reads as air under an element rather than as a drop shadow. The only shadow permitted on a content surface, and only on hover */
  --advb-shadow-dropdown: 0 8px 24px -6px rgba(26, 26, 27, 0.14); /** Navigation submenus and the search panel — things that overlay content and must be readable against whatever is behind them */
  --advb-shadow-sticky: 0 1px 0 0 rgba(26, 26, 27, 0.10); /** The masthead once the page scrolls. A hairline, not a shadow — Cooley and Orrick both use a 1px inset rule here rather than a blur */
  --advb-shadow-drawer: 0 0 40px -8px rgba(26, 26, 27, 0.30); /** Mobile navigation drawer and modal dialogs. The heaviest value in the system and the only one that reads as depth */
  --advb-shadow-focus: 0 0 0 4px rgba(204, 51, 102, 0.22); /** Crimson focus halo, sitting outside the 2px outline. Two devices rather than one, because a single hairline ring is hard to spot for the readers this site is built for */
  --advb-shadow-focus-ink: 0 0 0 4px rgba(212, 193, 153, 0.28); /** The same halo in brass, for focus inside a dark band where crimson would disappear */
  --advb-opacity-disabled: 0.45; /** Disabled controls — always paired with a real colour change, never used alone */
  --advb-opacity-muted: 0.7; /** De-emphasised content */
  --advb-opacity-scrim: 0.72; /** Hero photograph scrim */
  --advb-opacity-full: 1; /** Fully opaque */
  --advb-spacing-0: 0; /** 0px */
  --advb-spacing-1: 0.25rem; /** 4px — icon-to-label gap */
  --advb-spacing-2: 0.5rem; /** 8px — tight inline spacing */
  --advb-spacing-3: 0.75rem; /** 12px — chip padding, small rhythm */
  --advb-spacing-4: 1rem; /** 16px — default control padding */
  --advb-spacing-5: 1.25rem; /** 20px — mobile page gutter */
  --advb-spacing-6: 1.5rem; /** 24px — paragraph rhythm, default block gap */
  --advb-spacing-8: 2rem; /** 32px — card padding, grid gap */
  --advb-spacing-10: 2.5rem; /** 40px — sub-section rhythm */
  --advb-spacing-12: 3rem; /** 48px — desktop gutter */
  --advb-spacing-14: 3.5rem; /** 56px */
  --advb-spacing-16: 4rem; /** 64px — section padding floor */
  --advb-spacing-20: 5rem; /** 80px */
  --advb-spacing-24: 6rem; /** 96px — major section separation */
  --advb-spacing-32: 8rem; /** 128px — section padding ceiling, hero breathing room */
  --advb-spacing-40: 10rem; /** 160px — the largest gap in the system, used once or twice a page at most */
  --advb-spacing-px: 1px; /** 1px — hairline offsets only */
  --advb-spacing-fluid-gutter: clamp(1.25rem, 4vw, 3rem); /** 20 → 48px — the page edge inset. Replaces the three fixed gutter values */
  --advb-spacing-fluid-section-y: clamp(4rem, 10vw, 8rem); /** 64 → 128px — vertical padding on a standard section. This is Cooley's --component-vertical-space verbatim; it is the value that makes their pages feel unhurried */
  --advb-spacing-fluid-section-y-sm: clamp(2.5rem, 6vw, 4rem); /** 40 → 64px — a tight section, or one that sits directly under another */
  --advb-spacing-fluid-hero-y: clamp(3.5rem, 9vw, 7rem); /** 56 → 112px — hero vertical padding */
  --advb-spacing-fluid-stack: clamp(1.5rem, 3vw, 2.5rem); /** 24 → 40px — gap between blocks inside a section */
  --advb-spacing-fluid-grid: clamp(1.5rem, 3vw, 2rem); /** 24 → 32px — card and column grid gap */
  --advb-size-icon-sm: 1rem; /** 16px — inline icon, matches body text */
  --advb-size-icon-md: 1.25rem; /** 20px — button and nav icon */
  --advb-size-icon-lg: 1.5rem; /** 24px — section and card icon */
  --advb-size-icon-xl: 2.5rem; /** 40px — practice-area icon */
  --advb-size-touch-target-min: 48px; /** The floor everywhere on this site. WCAG 2.2 requires 44px; 48px is what this readership actually needs */
  --advb-size-touch-target-comfortable: 56px; /** Phone links and primary CTAs — the two things people reach for most */
  --advb-size-control-sm: 2.75rem; /** 44px — compact input, secondary button */
  --advb-size-control-md: 3.25rem; /** 52px — default input and button height. Latham's buttons measure 55px, Cooley's 42px */
  --advb-size-control-lg: 3.75rem; /** 60px — prominent CTA. Skadden's header controls are 60px */
  --advb-size-logo-header: 3.5rem; /** 56px — lockup height in the desktop masthead */
  --advb-size-logo-header-compact: 2.75rem; /** 44px — lockup height once the masthead condenses, and on mobile */
  --advb-size-logo-footer: 3rem; /** 48px — lockup height in the footer */
  --advb-size-rule-eyebrow: 2.5rem; /** 40px — the length of the short rule under a section eyebrow */
  --advb-typography-font-family-serif: 'Roboto Slab', Georgia, 'Times New Roman', serif; /** Display and headings — the authority voice. Every prestige practice in the reference set puts a serif or a condensed grotesque here (Cravath: Bembo; Wachtell: Playfair Display; Cooley: GT Sectra). Roboto Slab is the one already on this site with full Cyrillic. Weights 400 and 700 only */
  --advb-typography-font-family-sans: Roboto, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif; /** Body, UI, forms, tables. Weights 400 / 500 / 700, Cyrillic + Cyrillic-ext + Latin */
  --advb-typography-font-family-condensed: Abel, 'Roboto Condensed', Roboto, sans-serif; /** Uppercase eyebrows and navigation ONLY. Latin subset only — never set Cyrillic in Abel, it falls back mid-word. See system/foundations.json */
  --advb-typography-font-size-2xs: 0.75rem; /** 12px — the legal bar. The smallest text on the site, and nothing important is ever set at it */
  --advb-typography-font-size-xs: 0.8125rem; /** 13px — metadata, post date, breadcrumb */
  --advb-typography-font-size-sm: 0.875rem; /** 14px — table cells, captions, eyebrow labels */
  --advb-typography-font-size-base: 1rem; /** 16px — UI controls, dense interface text */
  --advb-typography-font-size-md: 1.125rem; /** 18px — THE BODY DEFAULT. Latham sets body at 18/27 and Cravath at 30/45. 16px is a screen-density convention this readership gains nothing from */
  --advb-typography-font-size-lg: 1.25rem; /** 20px — lede paragraphs, card titles */
  --advb-typography-font-size-xl: 1.5rem; /** 24px — h4, practice-area titles */
  --advb-typography-font-size-2xl: 1.75rem; /** 28px — h3 */
  --advb-typography-font-size-3xl: 2.25rem; /** 36px — h2 */
  --advb-typography-font-size-4xl: 3rem; /** 48px — h1. Matches Latham's h2, between Wachtell's 43 and Skadden's 49 */
  --advb-typography-font-size-5xl: 4rem; /** 64px — section display */
  --advb-typography-font-size-6xl: 5.5rem; /** 88px — hero display, desktop ceiling */
  --advb-typography-fluid-lede: clamp(1.125rem, 0.5vw + 1rem, 1.375rem); /** 18 → 22px — standfirst paragraph */
  --advb-typography-fluid-h3: clamp(1.5rem, 1vw + 1.25rem, 1.75rem); /** 24 → 28px */
  --advb-typography-fluid-h2: clamp(1.75rem, 2vw + 1.25rem, 2.25rem); /** 28 → 36px */
  --advb-typography-fluid-h1: clamp(2.25rem, 3vw + 1.5rem, 3rem); /** 36 → 48px. Page titles never fall below 36px */
  --advb-typography-fluid-display: clamp(2.75rem, 5vw + 1rem, 4rem); /** 44 → 64px — section display */
  --advb-typography-fluid-hero: clamp(3rem, 7vw + 0.5rem, 5.5rem); /** 48 → 88px — the hero headline. The Cooley move, moderated: they reach 108px, which overwhelms Cyrillic at this weight */
  --advb-typography-font-weight-regular: 400; /** Body, and ALL large display. Cravath, Skadden and Cooley all set their biggest type at regular or lighter — weight is not how scale gets signalled */
  --advb-typography-font-weight-medium: 500; /** Buttons, labels, emphasis. Roboto only */
  --advb-typography-font-weight-bold: 700; /** h1 and h2, strong emphasis */
  --advb-typography-line-height-display: 1.05; /** Hero and section display, 44px and up */
  --advb-typography-line-height-tight: 1.15; /** h1, h2 */
  --advb-typography-line-height-snug: 1.3; /** h3, h4, card titles */
  --advb-typography-line-height-normal: 1.5; /** UI text, form controls, tables */
  --advb-typography-line-height-relaxed: 1.7; /** THE BODY DEFAULT. Long-form legal prose in Cyrillic needs the leading */
  --advb-typography-line-height-loose: 1.85; /** Small print that still has to be read — the legal bar */
  --advb-typography-line-height-none: 1; /** Single-line buttons and chips */
  --advb-typography-letter-spacing-tighter: -0.03em; /** Hero display only, 64px and above */
  --advb-typography-letter-spacing-tight: -0.015em; /** Display and h1 — large serif needs the optical correction */
  --advb-typography-letter-spacing-normal: 0; /** Body, headings, everything sentence-case */
  --advb-typography-letter-spacing-wide: 0.08em; /** Uppercase navigation and button labels */
  --advb-typography-letter-spacing-wider: 0.2em; /** Uppercase eyebrows and section kickers — the BigLaw signature */
  --advb-typography-text-case-none: none; /** Body, headings, links — anything read as a sentence */
  --advb-typography-text-case-upper: uppercase; /** Eyebrows, navigation, button labels. Three or four words maximum */
  --advb-typography-measure-narrow: 48ch; /** Pull quotes, sidebars, hero supporting copy */
  --advb-typography-measure-default: 65ch; /** Article body. Tighter than the usual 68ch because the body size moved up to 18px */
  --advb-typography-measure-wide: 78ch; /** Maximum before the eye loses the line return */
  --advb-typography-underline-offset-default: 0.18em; /** Inline links in body copy */
  --advb-typography-underline-offset-thick: 0.22em; /** Large text and display links */
  --advb-semantic-color-border-on-image: rgba(255, 255, 255, 0.35); /** Outline for controls sitting over photography */
  --advb-semantic-color-feedback-success: #1d6b32; /** LIVE VALUE — the contact form's confirmation green, the only status colour the site actually has. 6.56:1 on white */
  --advb-semantic-color-feedback-success-surface: #eef8f0; /** LIVE VALUE — confirmation message background */
  --advb-semantic-color-surface-page: var(--advb-color-white); /** The page canvas. The default background of everything */
  --advb-semantic-color-surface-subtle: var(--advb-color-ink-25); /** Alternating section band — the quietest way to separate two sections without a rule */
  --advb-semantic-color-surface-sunken: var(--advb-color-ink-50); /** Inset areas, form wells, table headers */
  --advb-semantic-color-surface-panel: var(--advb-color-brass-100); /** The warm panel — attorney biography and tax-law blocks. Replaces the live #ded1d1, which is a desaturated pink with no relationship to the brand */
  --advb-semantic-color-surface-panel-cool: var(--advb-color-indigo-50); /** Cool panel — pull quotes and legislative citations */
  --advb-semantic-color-surface-accent-subtle: var(--advb-color-crimson-50); /** Crimson-tinted callout. Consultation prompts and fee notes */
  --advb-semantic-color-surface-masthead: var(--advb-color-white); /** Header background. Stays white — the logo lockup is black artwork */
  --advb-semantic-color-surface-footer: var(--advb-color-indigo-900); /** Footer background. Deepens the live #363839 into brand indigo, keeping the dark-footer structure the site already has */
  --advb-semantic-color-surface-footer-legal: var(--advb-color-white); /** LIVE VALUE — the full-bleed white legal bar below the footer. Kept verbatim */
  --advb-semantic-color-surface-inverse: var(--advb-color-ink-900); /** Neutral dark band where indigo would be too much */
  --advb-semantic-color-surface-hero: var(--advb-color-walnut-900); /** Hero fallback behind the photograph, matched to the crest wood so a slow image load never flashes white */
  --advb-semantic-color-surface-overlay-scrim: var(--advb-color-overlay-indigo); /** The scrim laid over hero photography so headline text stays legible */
  --advb-semantic-color-text-default: var(--advb-color-ink-700); /** Body copy — 9.21:1 on white (AAA). Replaces the live #7a7a7a, which fails AA for normal text */
  --advb-semantic-color-text-muted: var(--advb-color-ink-600); /** Secondary copy, captions, form hints — 6.63:1 (AA) */
  --advb-semantic-color-text-subtle: var(--advb-color-ink-500); /** LIVE VALUE #7a7a7a — 4.29:1. Permitted ONLY at 24px+ or 18.66px+ bold. Never for running text */
  --advb-semantic-color-text-placeholder: var(--advb-color-ink-600); /** Input placeholders — 6.63:1. WCAG grants no exemption to placeholder text, so it meets the full 4.5:1 bar; it still reads lighter than typed text at ink.700. Never put load-bearing information in a placeholder — see system/components.json */
  --advb-semantic-color-text-heading: var(--advb-color-ink-800); /** All headings h1–h6 on light surfaces — 11.79:1. Consolidates the live three-way split of #7a7a7a / #333333 / #33373d */
  --advb-semantic-color-text-heading-accent: var(--advb-color-indigo-700); /** Headings on the masthead and on section titles that need extra authority */
  --advb-semantic-color-text-on-dark: var(--advb-color-ink-200); /** Body copy on footer and dark bands — 12.46:1 over indigo.900. Consolidates #d6d6d6 and #cfd2d4 */
  --advb-semantic-color-text-on-dark-strong: var(--advb-color-white); /** Headings and emphasised copy on dark surfaces */
  --advb-semantic-color-text-on-dark-muted: var(--advb-color-indigo-300); /** De-emphasised copy on dark surfaces. Replaces the live #54595f, which is 1.67:1 on the footer and effectively invisible */
  --advb-semantic-color-text-on-image: var(--advb-color-white); /** Text over photography. Requires surface.overlayScrim beneath it — never place text on a bare photograph */
  --advb-semantic-color-text-on-image-muted: var(--advb-color-ink-200); /** Supporting copy over photography, beneath the headline */
  --advb-semantic-color-text-on-accent: var(--advb-color-white); /** Text on a crimson fill — 6.48:1 over action.primary */
  --advb-semantic-color-text-on-panel: var(--advb-color-walnut-800); /** Text on the warm brass panel — 12.4:1 */
  --advb-semantic-color-text-brand: var(--advb-color-crimson-500); /** LIVE VALUE #cc3366 — office addresses and phone numbers rendered as brand-coloured text rather than links */
  --advb-semantic-color-action-link: var(--advb-color-crimson-600); /** Inline links in body copy — 6.48:1. Resolves the live conflict between #cc3366 and #993300, which are two link colours on the same site */
  --advb-semantic-color-action-link-hover: var(--advb-color-crimson-700); /** Link hover. Always paired with an underline — colour alone is never the only signal */
  --advb-semantic-color-action-link-visited: var(--advb-color-crimson-800); /** Visited link. Matters on the news archive */
  --advb-semantic-color-action-link-on-dark: var(--advb-color-crimson-300); /** Links in the footer and on dark bands — 8.10:1 over indigo.900 */
  --advb-semantic-color-action-link-on-dark-hover: var(--advb-color-white); /** Footer link hover. Replaces the live hover to #333366, which is nearly the footer background itself */
  --advb-semantic-color-action-primary: var(--advb-color-crimson-500); /** Primary CTA fill — LIVE VALUE #cc3366. Promotes the accent from decoration to action, retiring the grey #585656 button that reads as disabled */
  --advb-semantic-color-action-primary-hover: var(--advb-color-crimson-600); /** Primary CTA hover. Replaces the live #b85353, an unrelated desaturated red */
  --advb-semantic-color-action-primary-active: var(--advb-color-crimson-700); /** Primary CTA pressed */
  --advb-semantic-color-action-primary-text: var(--advb-color-white); /** Label on the primary CTA */
  --advb-semantic-color-action-secondary: var(--advb-color-white); /** Secondary button fill — outlined, not filled */
  --advb-semantic-color-action-secondary-hover: var(--advb-color-ink-50); /** Secondary button hover */
  --advb-semantic-color-action-secondary-text: var(--advb-color-ink-800); /** Secondary button label */
  --advb-semantic-color-action-on-dark: var(--advb-color-brass-300); /** Button on a dark band — outlined in brass. The prestige CTA */
  --advb-semantic-color-action-on-dark-hover: var(--advb-color-brass-200); /** Dark-band button hover */
  --advb-semantic-color-action-disabled: var(--advb-color-ink-200); /** Disabled control fill */
  --advb-semantic-color-action-disabled-text: var(--advb-color-ink-500); /** Disabled control label — 3.05:1 on the disabled fill. Disabled controls are exempt from WCAG 1.4.3, but the state must still be readable */
  --advb-semantic-color-accent-default: var(--advb-color-crimson-500); /** The brand accent — LIVE VALUE #cc3366 */
  --advb-semantic-color-accent-emphasis: var(--advb-color-crimson-600); /** Accent with more weight, for accent-coloured text */
  --advb-semantic-color-accent-subtle: var(--advb-color-crimson-100); /** Accent wash — active nav item, badge fill */
  --advb-semantic-color-accent-on-image: var(--advb-color-crimson-400); /** LIVE VALUE #ee5e89 — accent over photography, where the darker crimson would disappear. Large text only */
  --advb-semantic-color-accent-authority: var(--advb-color-indigo-600); /** LIVE VALUE #333366 — the institutional counterweight. Section eyebrows, active states */
  --advb-semantic-color-accent-seal: var(--advb-color-brass-500); /** The crest metal on light surfaces. Hairline rules and the lion mark. Non-text and large text only (3.08:1) */
  --advb-semantic-color-accent-seal-on-dark: var(--advb-color-brass-300); /** The crest metal on dark surfaces — 9.93:1 over the footer */
  --advb-semantic-color-accent-seal-subtle: var(--advb-color-brass-100); /** Brass wash — the warm panel surface */
  --advb-semantic-color-border-default: var(--advb-color-ink-200); /** Dividers, table rules, card outlines */
  --advb-semantic-color-border-subtle: var(--advb-color-ink-100); /** The quietest separation */
  --advb-semantic-color-border-strong: var(--advb-color-ink-300); /** Emphasised separation between content blocks. Decorative — for anything that bounds an interactive control use border.control */
  --advb-semantic-color-border-control: var(--advb-color-ink-400); /** Form input and select outline — 3.18:1 on white, meeting WCAG 1.4.11. A control boundary is not a divider and must not be softened to match one */
  --advb-semantic-color-border-control-hover: var(--advb-color-ink-600); /** Input outline on hover and when filled */
  --advb-semantic-color-border-inverse: var(--advb-color-indigo-700); /** Dividers inside the footer and on dark bands */
  --advb-semantic-color-border-accent: var(--advb-color-crimson-500); /** Accent rule — the active nav underline */
  --advb-semantic-color-border-seal: var(--advb-color-brass-400); /** The brass rule beneath section eyebrows. The redesign's signature mark, one per section */
  --advb-semantic-color-border-focus: var(--advb-color-crimson-600); /** Focus ring. Never suppressed, never a colour that blends into the accent it sits on */
  --advb-semantic-color-feedback-error: var(--advb-color-crimson-700); /** Validation error text and border — 8.70:1. Drawn from the brand ramp rather than a generic red */
  --advb-semantic-color-feedback-error-surface: var(--advb-color-crimson-50); /** Error message background */
  --advb-semantic-color-overlay-hero: var(--advb-color-overlay-indigo); /** The standard hero scrim — branded indigo at 72% */
  --advb-semantic-color-overlay-hero-warm: var(--advb-color-overlay-walnut); /** Warm scrim for the crest and office photography */
  --advb-semantic-color-overlay-card: var(--advb-color-overlay-soft); /** LIVE VALUE — card image overlay at 45% */
  --advb-semantic-color-overlay-backdrop: var(--advb-color-overlay-strong); /** LIVE VALUE — backdrop behind the mobile drawer at 70% */
  --advb-semantic-typography-display-hero-font-family: var(--advb-typography-font-family-serif); /** The hero headline — 48px on a phone, 88px on a desktop. The largest type on the site. Cravath, Skadden and Cooley all put their biggest statement in the display face and let scale, not weight, carry it */
  --advb-semantic-typography-display-hero-font-size: var(--advb-typography-fluid-hero); /** The hero headline — 48px on a phone, 88px on a desktop. The largest type on the site. Cravath, Skadden and Cooley all put their biggest statement in the display face and let scale, not weight, carry it */
  --advb-semantic-typography-display-hero-font-weight: var(--advb-typography-font-weight-bold); /** The hero headline — 48px on a phone, 88px on a desktop. The largest type on the site. Cravath, Skadden and Cooley all put their biggest statement in the display face and let scale, not weight, carry it */
  --advb-semantic-typography-display-hero-line-height: var(--advb-typography-line-height-display); /** The hero headline — 48px on a phone, 88px on a desktop. The largest type on the site. Cravath, Skadden and Cooley all put their biggest statement in the display face and let scale, not weight, carry it */
  --advb-semantic-typography-display-hero-letter-spacing: var(--advb-typography-letter-spacing-tighter); /** The hero headline — 48px on a phone, 88px on a desktop. The largest type on the site. Cravath, Skadden and Cooley all put their biggest statement in the display face and let scale, not weight, carry it */
  --advb-semantic-typography-display-section-font-family: var(--advb-typography-font-family-serif); /** 44 → 64px — a full-width statement between sections. Regular weight; at this size bold shouts */
  --advb-semantic-typography-display-section-font-size: var(--advb-typography-fluid-display); /** 44 → 64px — a full-width statement between sections. Regular weight; at this size bold shouts */
  --advb-semantic-typography-display-section-font-weight: var(--advb-typography-font-weight-regular); /** 44 → 64px — a full-width statement between sections. Regular weight; at this size bold shouts */
  --advb-semantic-typography-display-section-line-height: var(--advb-typography-line-height-display); /** 44 → 64px — a full-width statement between sections. Regular weight; at this size bold shouts */
  --advb-semantic-typography-display-section-letter-spacing: var(--advb-typography-letter-spacing-tight); /** 44 → 64px — a full-width statement between sections. Regular weight; at this size bold shouts */
  --advb-semantic-typography-display-eyebrow-font-family: var(--advb-typography-font-family-condensed); /** Uppercase kicker above a section title, over a short brass rule. 0.2em tracking — the signature Cravath and Latham share. Latin and transliterated labels only, Abel has no Cyrillic */
  --advb-semantic-typography-display-eyebrow-font-size: var(--advb-typography-font-size-sm); /** Uppercase kicker above a section title, over a short brass rule. 0.2em tracking — the signature Cravath and Latham share. Latin and transliterated labels only, Abel has no Cyrillic */
  --advb-semantic-typography-display-eyebrow-font-weight: var(--advb-typography-font-weight-regular); /** Uppercase kicker above a section title, over a short brass rule. 0.2em tracking — the signature Cravath and Latham share. Latin and transliterated labels only, Abel has no Cyrillic */
  --advb-semantic-typography-display-eyebrow-line-height: var(--advb-typography-line-height-none); /** Uppercase kicker above a section title, over a short brass rule. 0.2em tracking — the signature Cravath and Latham share. Latin and transliterated labels only, Abel has no Cyrillic */
  --advb-semantic-typography-display-eyebrow-letter-spacing: var(--advb-typography-letter-spacing-wider); /** Uppercase kicker above a section title, over a short brass rule. 0.2em tracking — the signature Cravath and Latham share. Latin and transliterated labels only, Abel has no Cyrillic */
  --advb-semantic-typography-display-eyebrow-text-transform: var(--advb-typography-text-case-upper); /** Uppercase kicker above a section title, over a short brass rule. 0.2em tracking — the signature Cravath and Latham share. Latin and transliterated labels only, Abel has no Cyrillic */
  --advb-semantic-typography-display-eyebrow-cyrillic-font-family: var(--advb-typography-font-family-sans); /** The eyebrow for Bulgarian labels. Same size, tracking and casing, set in Roboto because Abel would fall back mid-word. Use this one by default on this site */
  --advb-semantic-typography-display-eyebrow-cyrillic-font-size: var(--advb-typography-font-size-sm); /** The eyebrow for Bulgarian labels. Same size, tracking and casing, set in Roboto because Abel would fall back mid-word. Use this one by default on this site */
  --advb-semantic-typography-display-eyebrow-cyrillic-font-weight: var(--advb-typography-font-weight-medium); /** The eyebrow for Bulgarian labels. Same size, tracking and casing, set in Roboto because Abel would fall back mid-word. Use this one by default on this site */
  --advb-semantic-typography-display-eyebrow-cyrillic-line-height: var(--advb-typography-line-height-none); /** The eyebrow for Bulgarian labels. Same size, tracking and casing, set in Roboto because Abel would fall back mid-word. Use this one by default on this site */
  --advb-semantic-typography-display-eyebrow-cyrillic-letter-spacing: var(--advb-typography-letter-spacing-wider); /** The eyebrow for Bulgarian labels. Same size, tracking and casing, set in Roboto because Abel would fall back mid-word. Use this one by default on this site */
  --advb-semantic-typography-display-eyebrow-cyrillic-text-transform: var(--advb-typography-text-case-upper); /** The eyebrow for Bulgarian labels. Same size, tracking and casing, set in Roboto because Abel would fall back mid-word. Use this one by default on this site */
  --advb-semantic-typography-heading-1-font-family: var(--advb-typography-font-family-serif); /** 36 → 48px — page title, one per page */
  --advb-semantic-typography-heading-1-font-size: var(--advb-typography-fluid-h1); /** 36 → 48px — page title, one per page */
  --advb-semantic-typography-heading-1-font-weight: var(--advb-typography-font-weight-bold); /** 36 → 48px — page title, one per page */
  --advb-semantic-typography-heading-1-line-height: var(--advb-typography-line-height-tight); /** 36 → 48px — page title, one per page */
  --advb-semantic-typography-heading-1-letter-spacing: var(--advb-typography-letter-spacing-tight); /** 36 → 48px — page title, one per page */
  --advb-semantic-typography-heading-2-font-family: var(--advb-typography-font-family-serif); /** 28 → 36px — section title */
  --advb-semantic-typography-heading-2-font-size: var(--advb-typography-fluid-h2); /** 28 → 36px — section title */
  --advb-semantic-typography-heading-2-font-weight: var(--advb-typography-font-weight-bold); /** 28 → 36px — section title */
  --advb-semantic-typography-heading-2-line-height: var(--advb-typography-line-height-tight); /** 28 → 36px — section title */
  --advb-semantic-typography-heading-2-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 28 → 36px — section title */
  --advb-semantic-typography-heading-3-font-family: var(--advb-typography-font-family-serif); /** 24 → 28px — subsection title */
  --advb-semantic-typography-heading-3-font-size: var(--advb-typography-fluid-h3); /** 24 → 28px — subsection title */
  --advb-semantic-typography-heading-3-font-weight: var(--advb-typography-font-weight-regular); /** 24 → 28px — subsection title */
  --advb-semantic-typography-heading-3-line-height: var(--advb-typography-line-height-snug); /** 24 → 28px — subsection title */
  --advb-semantic-typography-heading-3-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 24 → 28px — subsection title */
  --advb-semantic-typography-heading-4-font-family: var(--advb-typography-font-family-sans); /** 24px — card and practice-area title. Hands off to the body face */
  --advb-semantic-typography-heading-4-font-size: var(--advb-typography-font-size-xl); /** 24px — card and practice-area title. Hands off to the body face */
  --advb-semantic-typography-heading-4-font-weight: var(--advb-typography-font-weight-medium); /** 24px — card and practice-area title. Hands off to the body face */
  --advb-semantic-typography-heading-4-line-height: var(--advb-typography-line-height-snug); /** 24px — card and practice-area title. Hands off to the body face */
  --advb-semantic-typography-heading-4-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 24px — card and practice-area title. Hands off to the body face */
  --advb-semantic-typography-heading-5-font-family: var(--advb-typography-font-family-sans); /** 20px — minor grouping */
  --advb-semantic-typography-heading-5-font-size: var(--advb-typography-font-size-lg); /** 20px — minor grouping */
  --advb-semantic-typography-heading-5-font-weight: var(--advb-typography-font-weight-medium); /** 20px — minor grouping */
  --advb-semantic-typography-heading-5-line-height: var(--advb-typography-line-height-snug); /** 20px — minor grouping */
  --advb-semantic-typography-heading-5-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 20px — minor grouping */
  --advb-semantic-typography-heading-6-font-family: var(--advb-typography-font-family-sans); /** 18px — smallest heading */
  --advb-semantic-typography-heading-6-font-size: var(--advb-typography-font-size-md); /** 18px — smallest heading */
  --advb-semantic-typography-heading-6-font-weight: var(--advb-typography-font-weight-medium); /** 18px — smallest heading */
  --advb-semantic-typography-heading-6-line-height: var(--advb-typography-line-height-snug); /** 18px — smallest heading */
  --advb-semantic-typography-heading-6-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 18px — smallest heading */
  --advb-semantic-typography-body-default-font-family: var(--advb-typography-font-family-sans); /** 18px / 1.7 — THE BODY DEFAULT, up from the live 16px / 1.5. Latham sets body at 18/27; for a Cyrillic readership that skews older this is the single highest-value change in the system */
  --advb-semantic-typography-body-default-font-size: var(--advb-typography-font-size-md); /** 18px / 1.7 — THE BODY DEFAULT, up from the live 16px / 1.5. Latham sets body at 18/27; for a Cyrillic readership that skews older this is the single highest-value change in the system */
  --advb-semantic-typography-body-default-font-weight: var(--advb-typography-font-weight-regular); /** 18px / 1.7 — THE BODY DEFAULT, up from the live 16px / 1.5. Latham sets body at 18/27; for a Cyrillic readership that skews older this is the single highest-value change in the system */
  --advb-semantic-typography-body-default-line-height: var(--advb-typography-line-height-relaxed); /** 18px / 1.7 — THE BODY DEFAULT, up from the live 16px / 1.5. Latham sets body at 18/27; for a Cyrillic readership that skews older this is the single highest-value change in the system */
  --advb-semantic-typography-body-default-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 18px / 1.7 — THE BODY DEFAULT, up from the live 16px / 1.5. Latham sets body at 18/27; for a Cyrillic readership that skews older this is the single highest-value change in the system */
  --advb-semantic-typography-body-lede-font-family: var(--advb-typography-font-family-sans); /** 18 → 22px — the standfirst paragraph under a page title */
  --advb-semantic-typography-body-lede-font-size: var(--advb-typography-fluid-lede); /** 18 → 22px — the standfirst paragraph under a page title */
  --advb-semantic-typography-body-lede-font-weight: var(--advb-typography-font-weight-regular); /** 18 → 22px — the standfirst paragraph under a page title */
  --advb-semantic-typography-body-lede-line-height: var(--advb-typography-line-height-snug); /** 18 → 22px — the standfirst paragraph under a page title */
  --advb-semantic-typography-body-lede-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 18 → 22px — the standfirst paragraph under a page title */
  --advb-semantic-typography-body-small-font-family: var(--advb-typography-font-family-sans); /** 16px — captions, secondary copy. Note this is the size most sites use for body */
  --advb-semantic-typography-body-small-font-size: var(--advb-typography-font-size-base); /** 16px — captions, secondary copy. Note this is the size most sites use for body */
  --advb-semantic-typography-body-small-font-weight: var(--advb-typography-font-weight-regular); /** 16px — captions, secondary copy. Note this is the size most sites use for body */
  --advb-semantic-typography-body-small-line-height: var(--advb-typography-line-height-normal); /** 16px — captions, secondary copy. Note this is the size most sites use for body */
  --advb-semantic-typography-body-small-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 16px — captions, secondary copy. Note this is the size most sites use for body */
  --advb-semantic-typography-body-meta-font-family: var(--advb-typography-font-family-sans); /** 13px — post date, breadcrumb, byline */
  --advb-semantic-typography-body-meta-font-size: var(--advb-typography-font-size-xs); /** 13px — post date, breadcrumb, byline */
  --advb-semantic-typography-body-meta-font-weight: var(--advb-typography-font-weight-regular); /** 13px — post date, breadcrumb, byline */
  --advb-semantic-typography-body-meta-line-height: var(--advb-typography-line-height-normal); /** 13px — post date, breadcrumb, byline */
  --advb-semantic-typography-body-meta-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 13px — post date, breadcrumb, byline */
  --advb-semantic-typography-nav-primary-font-family: var(--advb-typography-font-family-sans); /** 16px uppercase with 0.08em tracking, set in Roboto so Cyrillic labels render. Latham sets its nav at 16px / 0.2em; 0.08em is the compromise that keeps a five-item Bulgarian menu on one line */
  --advb-semantic-typography-nav-primary-font-size: var(--advb-typography-font-size-base); /** 16px uppercase with 0.08em tracking, set in Roboto so Cyrillic labels render. Latham sets its nav at 16px / 0.2em; 0.08em is the compromise that keeps a five-item Bulgarian menu on one line */
  --advb-semantic-typography-nav-primary-font-weight: var(--advb-typography-font-weight-medium); /** 16px uppercase with 0.08em tracking, set in Roboto so Cyrillic labels render. Latham sets its nav at 16px / 0.2em; 0.08em is the compromise that keeps a five-item Bulgarian menu on one line */
  --advb-semantic-typography-nav-primary-line-height: var(--advb-typography-line-height-none); /** 16px uppercase with 0.08em tracking, set in Roboto so Cyrillic labels render. Latham sets its nav at 16px / 0.2em; 0.08em is the compromise that keeps a five-item Bulgarian menu on one line */
  --advb-semantic-typography-nav-primary-letter-spacing: var(--advb-typography-letter-spacing-wide); /** 16px uppercase with 0.08em tracking, set in Roboto so Cyrillic labels render. Latham sets its nav at 16px / 0.2em; 0.08em is the compromise that keeps a five-item Bulgarian menu on one line */
  --advb-semantic-typography-nav-primary-text-transform: var(--advb-typography-text-case-upper); /** 16px uppercase with 0.08em tracking, set in Roboto so Cyrillic labels render. Latham sets its nav at 16px / 0.2em; 0.08em is the compromise that keeps a five-item Bulgarian menu on one line */
  --advb-semantic-typography-nav-footer-font-family: var(--advb-typography-font-family-sans); /** 14px uppercase — footer column headings */
  --advb-semantic-typography-nav-footer-font-size: var(--advb-typography-font-size-sm); /** 14px uppercase — footer column headings */
  --advb-semantic-typography-nav-footer-font-weight: var(--advb-typography-font-weight-medium); /** 14px uppercase — footer column headings */
  --advb-semantic-typography-nav-footer-line-height: var(--advb-typography-line-height-snug); /** 14px uppercase — footer column headings */
  --advb-semantic-typography-nav-footer-letter-spacing: var(--advb-typography-letter-spacing-wide); /** 14px uppercase — footer column headings */
  --advb-semantic-typography-nav-footer-text-transform: var(--advb-typography-text-case-upper); /** 14px uppercase — footer column headings */
  --advb-semantic-typography-nav-breadcrumb-font-family: var(--advb-typography-font-family-sans); /** 13px sentence case — breadcrumb trail */
  --advb-semantic-typography-nav-breadcrumb-font-size: var(--advb-typography-font-size-xs); /** 13px sentence case — breadcrumb trail */
  --advb-semantic-typography-nav-breadcrumb-font-weight: var(--advb-typography-font-weight-regular); /** 13px sentence case — breadcrumb trail */
  --advb-semantic-typography-nav-breadcrumb-line-height: var(--advb-typography-line-height-normal); /** 13px sentence case — breadcrumb trail */
  --advb-semantic-typography-nav-breadcrumb-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 13px sentence case — breadcrumb trail */
  --advb-semantic-typography-label-font-family: var(--advb-typography-font-family-sans); /** 16px — form labels. Deliberately the same size as an input value, because a label smaller than its field is hard to scan */
  --advb-semantic-typography-label-font-size: var(--advb-typography-font-size-base); /** 16px — form labels. Deliberately the same size as an input value, because a label smaller than its field is hard to scan */
  --advb-semantic-typography-label-font-weight: var(--advb-typography-font-weight-medium); /** 16px — form labels. Deliberately the same size as an input value, because a label smaller than its field is hard to scan */
  --advb-semantic-typography-label-line-height: var(--advb-typography-line-height-snug); /** 16px — form labels. Deliberately the same size as an input value, because a label smaller than its field is hard to scan */
  --advb-semantic-typography-label-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 16px — form labels. Deliberately the same size as an input value, because a label smaller than its field is hard to scan */
  --advb-semantic-typography-button-font-family: var(--advb-typography-font-family-sans); /** 16px uppercase with 0.08em tracking. Latham and Cooley both set button labels uppercase and tracked; Latham at 14px / 0.2em, which is too tight to read quickly in Cyrillic */
  --advb-semantic-typography-button-font-size: var(--advb-typography-font-size-base); /** 16px uppercase with 0.08em tracking. Latham and Cooley both set button labels uppercase and tracked; Latham at 14px / 0.2em, which is too tight to read quickly in Cyrillic */
  --advb-semantic-typography-button-font-weight: var(--advb-typography-font-weight-medium); /** 16px uppercase with 0.08em tracking. Latham and Cooley both set button labels uppercase and tracked; Latham at 14px / 0.2em, which is too tight to read quickly in Cyrillic */
  --advb-semantic-typography-button-line-height: var(--advb-typography-line-height-none); /** 16px uppercase with 0.08em tracking. Latham and Cooley both set button labels uppercase and tracked; Latham at 14px / 0.2em, which is too tight to read quickly in Cyrillic */
  --advb-semantic-typography-button-letter-spacing: var(--advb-typography-letter-spacing-wide); /** 16px uppercase with 0.08em tracking. Latham and Cooley both set button labels uppercase and tracked; Latham at 14px / 0.2em, which is too tight to read quickly in Cyrillic */
  --advb-semantic-typography-button-text-transform: var(--advb-typography-text-case-upper); /** 16px uppercase with 0.08em tracking. Latham and Cooley both set button labels uppercase and tracked; Latham at 14px / 0.2em, which is too tight to read quickly in Cyrillic */
  --advb-semantic-typography-quote-font-family: var(--advb-typography-font-family-serif); /** 24px serif — pull quotes and the firm’s principle statements */
  --advb-semantic-typography-quote-font-size: var(--advb-typography-font-size-xl); /** 24px serif — pull quotes and the firm’s principle statements */
  --advb-semantic-typography-quote-font-weight: var(--advb-typography-font-weight-regular); /** 24px serif — pull quotes and the firm’s principle statements */
  --advb-semantic-typography-quote-line-height: var(--advb-typography-line-height-snug); /** 24px serif — pull quotes and the firm’s principle statements */
  --advb-semantic-typography-quote-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 24px serif — pull quotes and the firm’s principle statements */
  --advb-semantic-typography-legal-font-family: var(--advb-typography-font-family-sans); /** 14px / 1.85 — the legal bar. Up from 12px: small print that still has to be readable is not the place to save space */
  --advb-semantic-typography-legal-font-size: var(--advb-typography-font-size-sm); /** 14px / 1.85 — the legal bar. Up from 12px: small print that still has to be readable is not the place to save space */
  --advb-semantic-typography-legal-font-weight: var(--advb-typography-font-weight-regular); /** 14px / 1.85 — the legal bar. Up from 12px: small print that still has to be readable is not the place to save space */
  --advb-semantic-typography-legal-line-height: var(--advb-typography-line-height-loose); /** 14px / 1.85 — the legal bar. Up from 12px: small print that still has to be readable is not the place to save space */
  --advb-semantic-typography-legal-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 14px / 1.85 — the legal bar. Up from 12px: small print that still has to be readable is not the place to save space */
  --advb-semantic-typography-code-font-family: var(--advb-typography-font-family-sans); /** 14px — statute references and case numbers set apart from prose */
  --advb-semantic-typography-code-font-size: var(--advb-typography-font-size-sm); /** 14px — statute references and case numbers set apart from prose */
  --advb-semantic-typography-code-font-weight: var(--advb-typography-font-weight-regular); /** 14px — statute references and case numbers set apart from prose */
  --advb-semantic-typography-code-line-height: var(--advb-typography-line-height-normal); /** 14px — statute references and case numbers set apart from prose */
  --advb-semantic-typography-code-letter-spacing: var(--advb-typography-letter-spacing-normal); /** 14px — statute references and case numbers set apart from prose */
  --advb-semantic-elevation-flat: var(--advb-shadow-none); /** THE DEFAULT — cards, sections, images, tables, buttons */
  --advb-semantic-elevation-card-hover: var(--advb-shadow-ambient); /** A card on hover. The only shadow a content surface ever gets */
  --advb-semantic-elevation-dropdown: var(--advb-shadow-dropdown); /** Navigation submenus, the search panel */
  --advb-semantic-elevation-sticky: var(--advb-shadow-sticky); /** The masthead once the page scrolls — a hairline, not a blur */
  --advb-semantic-elevation-drawer: var(--advb-shadow-drawer); /** Mobile navigation drawer and modal dialogs */
  --advb-semantic-elevation-focus-halo: var(--advb-shadow-focus); /** The crimson halo outside the focus outline */
  --advb-semantic-elevation-focus-halo-ink: var(--advb-shadow-focus-ink); /** The brass halo, for focus inside a dark band */
  --advb-semantic-radius-surface: var(--advb-radius-none); /** Sections, cards, panels, images, tables */
  --advb-semantic-radius-control: var(--advb-radius-none); /** Buttons, inputs, selects. Square, like Cravath, Skadden, Latham and Cooley */
  --advb-semantic-radius-badge: var(--advb-radius-xs); /** Tags and badges — 2px, the only rounding on anything interactive */
  --advb-semantic-radius-media: var(--advb-radius-sm); /** Thumbnails and inline figures — 4px, Latham’s single use of radius */
  --advb-semantic-radius-pill: var(--advb-radius-full); /** Avatars and the mobile menu toggle. Nothing else */
  --advb-semantic-motion-interactive: var(--advb-transition-color); /** Hover and active states. Carries almost all the motion on the site */
  --advb-semantic-motion-focus: var(--advb-transition-focus); /** The focus ring arriving */
  --advb-semantic-motion-reveal: var(--advb-transition-opacity); /** Dropdown and disclosure reveals */
  --advb-semantic-motion-drawer: var(--advb-transition-drawer); /** The mobile drawer — the only transform in the system */
  --advb-semantic-layout-gutter: var(--advb-spacing-fluid-gutter); /** Page edge inset — 20px on a phone, 48px on a desktop */
  --advb-semantic-layout-section-y: var(--advb-spacing-fluid-section-y); /** Vertical padding on a standard section — 64 → 128px */
  --advb-semantic-layout-section-y-tight: var(--advb-spacing-fluid-section-y-sm); /** A section that sits directly under another — 40 → 64px */
  --advb-semantic-layout-hero-y: var(--advb-spacing-fluid-hero-y); /** Hero vertical padding — 56 → 112px */
  --advb-semantic-layout-stack: var(--advb-spacing-fluid-stack); /** Gap between blocks inside a section — 24 → 40px */
  --advb-semantic-layout-grid-gap: var(--advb-spacing-fluid-grid); /** Card and column grid gap — 24 → 32px */
  --advb-semantic-layout-measure: var(--advb-grid-max-width-measure); /** The reading column — 704px */
  --advb-semantic-layout-content: var(--advb-grid-max-width-content); /** Media and tables that break the measure — 960px */
  --advb-semantic-layout-container: var(--advb-grid-max-width-container); /** The page container — 1320px */
  --advb-semantic-layout-wide: var(--advb-grid-max-width-wide); /** Full-bleed imagery and the hero — 1536px */
  --advb-semantic-layout-control-height: var(--advb-size-control-md); /** Default button and input height — 52px */
  --advb-semantic-layout-control-height-lg: var(--advb-size-control-lg); /** Prominent CTA — 60px */
  --advb-semantic-layout-touch-target: var(--advb-size-touch-target-min); /** Minimum interactive size anywhere on the site — 48px */
  --advb-ink-color-surface-page: var(--advb-color-indigo-900); /** The dark band itself — footer, statement section */
  --advb-ink-color-surface-subtle: var(--advb-color-indigo-800); /** One stop up — a grouped block inside the band */
  --advb-ink-color-surface-sunken: var(--advb-color-indigo-900); /** Inset area inside the band */
  --advb-ink-color-surface-panel: var(--advb-color-walnut-900); /** Warm panel inside a dark band — the crest register */
  --advb-ink-color-surface-accent-subtle: var(--advb-color-crimson-900); /** Crimson-tinted block on dark */
  --advb-ink-color-text-default: var(--advb-color-ink-200); /** Body copy on the band — 12.46:1. Consolidates the live #d6d6d6 and #cfd2d4 */
  --advb-ink-color-text-muted: var(--advb-color-indigo-300); /** Secondary copy — 6.62:1. Replaces the live #54595f, which is invisible at 1.67:1 */
  --advb-ink-color-text-subtle: var(--advb-color-indigo-400); /** The quietest legible step. Large text only */
  --advb-ink-color-text-heading: var(--advb-color-white); /** Headings on the band — 17.55:1 */
  --advb-ink-color-text-brand: var(--advb-color-crimson-300); /** Office addresses and phone numbers on the band */
  --advb-ink-color-text-seal: var(--advb-color-brass-300); /** Brass copy on the band — office headings and the crest wordmark */
  --advb-ink-color-action-link: var(--advb-color-crimson-300); /** Links on the band — 8.10:1 */
  --advb-ink-color-action-link-hover: var(--advb-color-white); /** Link hover. Replaces the live hover to #333366, which is nearly the background */
  --advb-ink-color-action-primary: var(--advb-color-crimson-500); /** Filled CTA on the band */
  --advb-ink-color-action-primary-hover: var(--advb-color-crimson-400); /** Filled CTA hover — brightens rather than darkens on dark */
  --advb-ink-color-action-primary-text: var(--advb-color-white); /** CTA label */
  --advb-ink-color-action-outline: var(--advb-color-brass-300); /** Outlined brass CTA — the prestige button */
  --advb-ink-color-action-outline-hover: var(--advb-color-brass-200); /** Outlined CTA hover */
  --advb-ink-color-border-default: var(--advb-color-indigo-700); /** Dividers inside the band — reads as an edge, not a line */
  --advb-ink-color-border-strong: var(--advb-color-indigo-600); /** Emphasised divider */
  --advb-ink-color-border-seal: var(--advb-color-brass-400); /** The brass rule on dark */
  --advb-ink-color-border-focus: var(--advb-color-brass-300); /** Focus ring on the band — 9.93:1. Crimson is too dark against indigo to serve as a focus indicator here */
}
