/* The public site theme. Colors, type and the watermark mark come from the firm's approved brand, set in each page's style block. */
:root { --brand-surface-dark: color-mix(in srgb,var(--brand-ink) 55%,var(--brand-night)); --brand-surface-soft-dark: color-mix(in srgb,var(--brand-ink) 78%,var(--brand-night)); --layout-content-max: 1240px; --layout-gutter: clamp(20px,4vw,64px); --layout-shell-width: min(calc(100% - 2 * var(--layout-gutter)),var(--layout-content-max)); --layout-frame-width: calc(var(--layout-content-max) + 2 * var(--layout-gutter)); --layout-section-space: clamp(48px,6vw,88px); --layout-card-gap: clamp(16px,2vw,24px); --layout-card-padding: clamp(20px,2.5vw,32px); --font-brand: system-ui, sans-serif; --glass-blur: 18px; --radius-surface: 24px; --radius-control: 14px; --radius-float: 24px; --radius-input: 14px; --radius-chip: 999px; --radius-status: 4px; --font-size-display: 3rem; --font-size-heading-1: 2.25rem; --font-size-heading-2: 1.75rem; --font-size-heading-3: 1.375rem; --font-size-heading-4: 1.125rem; --font-size-body: 1rem; --font-size-label: .875rem; --font-size-caption: .75rem; --font-weight-display: 800; --font-weight-heading-1: 700; --font-weight-heading-2: 700; --font-weight-heading-3: 700; --font-weight-heading-4: 700; --font-weight-body: 400; --font-weight-label: 500; --font-weight-caption: 400; --motion-duration: .18s; --motion-ease: cubic-bezier(.16,1,.3,1); }
:root, .material-preview-surface, [data-workspace-tone="paper"], [data-workspace-tone="mist"], [data-workspace-tone="ink"] { --contact-whatsapp: #25d366; --contact-phone: #34c759; --connection-fast: var(--brand-status-success); --connection-medium: var(--brand-status-warning); --connection-slow: var(--brand-status-danger); --font-numerals: ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; --lightningcss-light: initial; --lightningcss-dark: ; color-scheme: light; --canvas: var(--brand-white); --surface: var(--brand-white); --surface-soft: var(--brand-paper); --surface-strong: var(--brand-ink); --on-strong: var(--brand-white); --text: var(--brand-ink); --text-secondary: color-mix(in srgb,var(--text) 85%,var(--surface)); --text-muted: var(--text-secondary); --border: color-mix(in srgb,var(--text) 24%,var(--surface)); --border-strong: color-mix(in srgb,var(--text) 55%,var(--surface)); --night-line: var(--border); --night-line-strong: var(--border-strong); --action: var(--brand-ink); --on-action: var(--brand-white); --accent: var(--brand-mist); --on-accent: var(--brand-ink); --focus: var(--text); --glass-fill: var(--surface); --glass-edge: var(--border); --liquid-nav-top: color-mix(in srgb,var(--surface) 74%,var(--brand-mist)); --liquid-nav-middle: color-mix(in srgb,var(--surface) 48%,var(--brand-mist)); --liquid-nav-bottom: color-mix(in srgb,var(--surface) 62%,var(--brand-mist)); --liquid-nav-edge: var(--border-strong); --liquid-nav-light: var(--brand-white); --liquid-nav-shine: .5; --liquid-nav-text: var(--text); --logo-slider-surface: var(--brand-paper); --logo-slider-text: var(--brand-ink); --logo-slider-filter: none; --glass-shadow: 0 12px 36px color-mix(in srgb,var(--brand-night) 10%,transparent),inset 0 1px 0 var(--glass-edge); }
:root[data-theme="dark"], .material-preview-surface[data-theme="dark"], [data-workspace-tone="ink"] { --lightningcss-light: ; --lightningcss-dark: initial; color-scheme: dark; --canvas: var(--brand-night); --surface: var(--brand-night); --surface-soft: var(--brand-surface-dark); --text: var(--brand-paper); --action: var(--brand-mist); --on-action: var(--brand-ink); --focus: var(--brand-mist); --liquid-nav-top: color-mix(in srgb,var(--surface) 76%,var(--brand-mist)); --liquid-nav-middle: color-mix(in srgb,var(--surface) 82%,var(--brand-mist)); --liquid-nav-bottom: color-mix(in srgb,var(--surface) 78%,var(--brand-mist)); --liquid-nav-shine: .24; --logo-slider-surface: transparent; --logo-slider-text: var(--brand-white); --logo-slider-filter: brightness(0) invert(1); --glass-shadow: 0 12px 36px color-mix(in srgb,var(--brand-night) 30%,transparent),inset 0 1px 0 var(--glass-edge); }
.programme-home-surface { --canvas: var(--brand-night); --surface: var(--brand-night); --surface-soft: var(--brand-surface-dark); --text: var(--brand-paper); --text-secondary: color-mix(in srgb,var(--brand-paper) 85%,var(--brand-night)); --text-muted: var(--text-secondary); --border: color-mix(in srgb,var(--brand-paper) 24%,var(--brand-night)); --border-strong: color-mix(in srgb,var(--brand-paper) 55%,var(--brand-night)); --action: var(--brand-paper); --on-action: var(--brand-ink); --focus: var(--brand-mist); }
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*, ::before, ::after { --tw-rotate-x: initial; --tw-rotate-y: initial; --tw-rotate-z: initial; --tw-skew-x: initial; --tw-skew-y: initial; --tw-border-style: solid; --tw-shadow: 0 0 #0000; --tw-shadow-color: initial; --tw-shadow-alpha: 100%; --tw-inset-shadow: 0 0 #0000; --tw-inset-shadow-color: initial; --tw-inset-shadow-alpha: 100%; --tw-ring-color: initial; --tw-ring-shadow: 0 0 #0000; --tw-inset-ring-color: initial; --tw-inset-ring-shadow: 0 0 #0000; --tw-ring-inset: initial; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-outline-style: solid; --tw-blur: initial; --tw-brightness: initial; --tw-contrast: initial; --tw-grayscale: initial; --tw-hue-rotate: initial; --tw-invert: initial; --tw-opacity: initial; --tw-saturate: initial; --tw-sepia: initial; --tw-drop-shadow: initial; --tw-drop-shadow-color: initial; --tw-drop-shadow-alpha: 100%; --tw-drop-shadow-size: initial; }
::backdrop { --tw-rotate-x: initial; --tw-rotate-y: initial; --tw-rotate-z: initial; --tw-skew-x: initial; --tw-skew-y: initial; --tw-border-style: solid; --tw-shadow: 0 0 #0000; --tw-shadow-color: initial; --tw-shadow-alpha: 100%; --tw-inset-shadow: 0 0 #0000; --tw-inset-shadow-color: initial; --tw-inset-shadow-alpha: 100%; --tw-ring-color: initial; --tw-ring-shadow: 0 0 #0000; --tw-inset-ring-color: initial; --tw-inset-ring-shadow: 0 0 #0000; --tw-ring-inset: initial; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000; --tw-outline-style: solid; --tw-blur: initial; --tw-brightness: initial; --tw-contrast: initial; --tw-grayscale: initial; --tw-hue-rotate: initial; --tw-invert: initial; --tw-opacity: initial; --tw-saturate: initial; --tw-sepia: initial; --tw-drop-shadow: initial; --tw-drop-shadow-color: initial; --tw-drop-shadow-alpha: 100%; --tw-drop-shadow-size: initial; }}}
@layer theme{:root, :host { --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --spacing: .25rem; --default-transition-duration: .15s; --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1); --default-font-family: var(--font-sans); --default-mono-font-family: var(--font-mono); }}
@layer base{*, ::after, ::before { box-sizing: border-box; border: 0px solid; margin: 0px; padding: 0px; }
::backdrop { box-sizing: border-box; border: 0px solid; margin: 0px; padding: 0px; }
::file-selector-button { box-sizing: border-box; border: 0px solid; margin: 0px; padding: 0px; }
html, :host { text-size-adjust: 100%; tab-size: 4; line-height: 1.5; font-family: var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"); font-feature-settings: var(--default-font-feature-settings,normal); font-variation-settings: var(--default-font-variation-settings,normal); -webkit-tap-highlight-color: transparent; }
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }
a { color: inherit; text-decoration: inherit; }
b, strong { font-weight: bolder; }
small { font-size: 80%; }
table { text-indent: 0px; border-color: inherit; border-collapse: collapse; }
progress { vertical-align: baseline; }
summary { display: list-item; }
ol, ul, menu { list-style: none; }
img, svg, video, canvas, audio, iframe, embed, object { vertical-align: middle; display: block; }
img, video { max-width: 100%; height: auto; }
button, input, select, optgroup, textarea { font: inherit; letter-spacing: inherit; color: inherit; opacity: 1; background-color: rgba(0, 0, 0, 0); border-radius: 0px; }
::file-selector-button { font: inherit; letter-spacing: inherit; color: inherit; opacity: 1; background-color: rgba(0, 0, 0, 0); border-radius: 0px; }
::file-selector-button { margin-inline-end: 4px; }
::placeholder { opacity: 1; }
@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder { color: currentcolor; }
@supports (color:color-mix(in lab, red, red)){::placeholder { color: color-mix(in oklab, currentcolor, transparent); }}}
::-webkit-search-decoration { appearance: none; }
::-webkit-date-and-time-value { min-height: 1lh; text-align: inherit; }
::-webkit-datetime-edit { display: inline-flex; }
::-webkit-datetime-edit-fields-wrapper { padding: 0px; }
::-webkit-datetime-edit { padding-block: 0px; }
::-webkit-datetime-edit-year-field { padding-block: 0px; }
::-webkit-datetime-edit-month-field { padding-block: 0px; }
::-webkit-datetime-edit-day-field { padding-block: 0px; }
::-webkit-datetime-edit-hour-field { padding-block: 0px; }
::-webkit-datetime-edit-minute-field { padding-block: 0px; }
::-webkit-datetime-edit-second-field { padding-block: 0px; }
::-webkit-datetime-edit-millisecond-field { padding-block: 0px; }
::-webkit-datetime-edit-meridiem-field { padding-block: 0px; }
::-webkit-calendar-picker-indicator { line-height: 1; }
button, input:where([type="button"], [type="reset"], [type="submit"]) { appearance: button; }
::file-selector-button { appearance: button; }
::-webkit-inner-spin-button { height: auto; }
::-webkit-outer-spin-button { height: auto; }
[hidden]:where(:not([hidden="until-found"])) { display: none !important; }}
@layer utilities{.sr-only { clip-path: inset(50%); white-space: nowrap; border-width: 0px; width: 1px; height: 1px; margin: -1px; padding: 0px; position: absolute; overflow: hidden; }}
.visually-hidden { clip-path: inset(50%); white-space: nowrap; border: 0px; width: 1px; height: 1px; margin: -1px; padding: 0px; position: absolute; overflow: hidden; }
:root { --ink: var(--brand-ink); --ink2: var(--brand-ink); --night: var(--brand-ink); --paper: var(--brand-paper); --mist-paper: var(--brand-paper); --white: var(--brand-white); --mist: var(--brand-mist); --lemon: var(--brand-mist); --muted: var(--brand-ink); }
@supports (color:color-mix(in lab, red, red)){:root { --muted: color-mix(in srgb,var(--brand-ink) 86%,transparent); --line: color-mix(in srgb,var(--brand-ink) 16%,transparent); }}
:root { --top: 70px; --bottom: 70px; --max: var(--layout-content-max); --ease: cubic-bezier(.2,.8,.2,1); }
:root[data-theme="dark"] { --lightningcss-light: ; --lightningcss-dark: initial; color-scheme: dark; }
:root[data-theme="light"] { --lightningcss-light: initial; --lightningcss-dark: ; color-scheme: light; --night: var(--brand-paper); }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--night); scroll-padding-top: 82px; }
body { background: var(--night); color: var(--ink); font-family: var(--font-brand); -webkit-font-smoothing: antialiased; margin: 0px; line-height: 1.65; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
img { max-width: 100%; display: block; }
::selection { color: var(--ink); background: var(--lemon); }
.site { min-height: 100svh; overflow: clip; }
.global-site-footer { color: var(--brand-ink); background: var(--brand-paper); }
.brand { align-items: center; gap: 9px; min-width: 0px; display: flex; }
.brand img { flex: 0 0 auto; width: 34px; height: 34px; }
.brand.brand-lockup { width: clamp(128px, 34vw, 174px); height: auto; display: block; }
.brand.brand-lockup img { aspect-ratio: 425 / 96; object-fit: contain; width: 100%; height: auto; }
.brand span { min-width: 0px; line-height: 1.25; display: grid; }
.language-picker { height: 44px; display: block; }
.section { background: var(--canvas); padding: 76px 18px; }
.section > * { width: min(100%,var(--max)); margin-inline: auto; }
.section-head h2, .contact h2 { letter-spacing: normal; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.08 / 3), 10vw, calc(var(--font-size-display) * 4.8 / 3)); font-weight: var(--font-weight-display); line-height: 1.4; }
footer { padding: 27px 18px calc(var(--bottom) + 28px + env(safe-area-inset-bottom)); color: var(--brand-white); background: var(--ink); border-top: 1px solid var(--brand-white); }
@supports (color:color-mix(in lab, red, red)){footer { border-top: 1px solid color-mix(in srgb,var(--brand-white) 8%,transparent); }}
footer > * { width: min(100%,var(--max)); margin-inline: auto; }
.footer-lockup { width: clamp(162px, 44vw, 216px) !important; }
.bottom-nav { z-index: 310; height: calc(var(--bottom) + env(safe-area-inset-bottom)); padding: 5px 6px env(safe-area-inset-bottom); color: var(--brand-white); background: var(--brand-ink); bottom: 0px; grid-template-columns: repeat(6, 1fr); align-items: center; display: grid; position: fixed; inset-inline: 0px; }
@supports (color:color-mix(in lab, red, red)){.bottom-nav { background: color-mix(in srgb,var(--brand-ink) 94%,transparent); }}
.bottom-nav { border-top: 1px solid var(--brand-white); }
@supports (color:color-mix(in lab, red, red)){.bottom-nav { border-top: 1px solid color-mix(in srgb,var(--brand-white) 11%,transparent); }}
:root[data-theme="light"] .bottom-nav { color: var(--ink); background: var(--brand-white); border-color: var(--line); }
.bottom-nav > a, .bottom-nav > button { min-width: 0px; min-height: 52px; color: inherit; opacity: 0.82; cursor: pointer; background: 0px 0px; border: 0px; align-content: center; place-items: center; gap: 2px; padding: 0px 2px; display: grid; }
.bottom-nav > :is(a, button):is(:hover, :focus-visible), .bottom-nav > :is(a, button).bottom-nav-current { opacity: 1; }
.bottom-nav > :is(a, button) > span { text-align: center; max-width: 100%; font-size: calc(var(--font-size-caption) * 0.55 / 0.75); line-height: 1.2; }
.whatsapp-float, .phone-float, .community-float { z-index: 190; inset-inline-end: 16px; bottom: calc(18px + env(safe-area-inset-bottom)); color: var(--brand-white); filter: drop-shadow(0 9px 20px var(--brand-night)); align-items: center; gap: 8px; display: flex; position: fixed; }
@supports (color:color-mix(in lab, red, red)){.whatsapp-float, .phone-float, .community-float { filter: drop-shadow(0 9px 20px color-mix(in srgb,var(--brand-night) 28%,transparent)); }}
.whatsapp-float, .phone-float, .community-float { animation: whatsapp-float 3.2s var(--ease) infinite; }
.community-float { bottom: calc(150px + env(safe-area-inset-bottom)); animation-delay: -2.1s; }
.community-float.with-bottom-nav { bottom: calc(var(--bottom) + 148px + env(safe-area-inset-bottom)); }
.whatsapp-float > span, .phone-float > span, .community-float > span { white-space: nowrap; background: var(--surface-soft); opacity: 0; max-width: 0px; transition: .25s var(--ease); border-radius: var(--radius-chip); padding: 7px 0px; font-size: calc(var(--font-size-caption) * 0.62 / 0.75); font-weight: calc(var(--font-weight-body) + 300); overflow: hidden; transform: translate(8px); }
[dir="ltr"] .whatsapp-float > span, [dir="ltr"] .phone-float > span, [dir="ltr"] .community-float > span { transform: translate(-8px); }
:is(.whatsapp-float:hover > span, .whatsapp-float:focus-visible > span, .phone-float:hover > span, .phone-float:focus-visible > span, .community-float:hover > span, .community-float:focus-visible > span) { opacity: 1; max-width: 170px; padding-inline: 11px; transform: none; }
.whatsapp-float > i, .phone-float > i, .community-float > i { width: 54px; height: 54px; color: var(--ink); border: 2px solid var(--brand-white); flex: 0 0 auto; place-items: center; display: grid; position: relative; }
@supports (color:color-mix(in lab, red, red)){.whatsapp-float > i, .phone-float > i, .community-float > i { border: 2px solid color-mix(in srgb,var(--brand-white) 92%,transparent); }}
.whatsapp-float > i, .phone-float > i, .community-float > i { background: var(--mist); box-shadow: 0 8px 22px var(--brand-ink); border-radius: 50%; }
@supports (color:color-mix(in lab, red, red)){.whatsapp-float > i, .phone-float > i, .community-float > i { box-shadow: 0 8px 22px color-mix(in srgb,var(--brand-ink) 34%,transparent); }}
.community-float > i { background: var(--paper); }
.whatsapp-float > i::before, .phone-float > i::before, .community-float > i::before { content: ""; border: 1px solid var(--brand-mist); position: absolute; inset: -7px; }
@supports (color:color-mix(in lab, red, red)){.whatsapp-float > i::before, .phone-float > i::before, .community-float > i::before { border: 1px solid color-mix(in srgb,var(--brand-mist) 72%,transparent); }}
.whatsapp-float > i::before, .phone-float > i::before, .community-float > i::before { border-radius: inherit; animation: 2.2s ease-out 0s infinite normal none running whatsapp-ring; }
.community-float > i::before { animation-delay: -1.4s; }
.phone-float svg, .community-float svg { width: 27px; height: 27px; }
.profile-site { background: var(--paper); min-height: 100svh; }
@media (min-width: 860px){:root { --top: 78px; --bottom: 0px; }
.bottom-nav, .bottom-more-shell { display: none; }
.community-float.with-bottom-nav { bottom: 164px; }
.community-float { inset-inline-end: 24px; bottom: 164px; }
.section { padding: 108px 40px; }
footer { padding: 34px 40px; }}
:root { --ink: var(--brand-ink); --ink2: var(--brand-ink); --night: var(--brand-ink); --paper: var(--brand-paper); --mist-paper: var(--brand-paper); }
@supports (color:color-mix(in lab, red, red)){:root { --mist-paper: color-mix(in srgb,var(--brand-paper) 72%,var(--brand-white)); }}
:root { --white: var(--brand-white); --mist: var(--brand-mist); --lemon: var(--brand-mist); --muted: var(--brand-ink); }
@supports (color:color-mix(in lab, red, red)){:root { --muted: color-mix(in srgb,var(--brand-ink) 90%,transparent); }}
:root { --line: var(--brand-ink); }
@supports (color:color-mix(in lab, red, red)){:root { --line: color-mix(in srgb,var(--brand-ink) 30%,transparent); }}
:root { --line-soft: var(--brand-ink); }
@supports (color:color-mix(in lab, red, red)){:root { --line-soft: color-mix(in srgb,var(--brand-ink) 20%,transparent); }}
:root { --line-strong: var(--brand-ink); }
@supports (color:color-mix(in lab, red, red)){:root { --line-strong: color-mix(in srgb,var(--brand-ink) 52%,transparent); }}
:root { --rule: 1.5px; --rule-strong: 2px; --radius: calc(var(--radius-float) * 4 / 24); --ease: cubic-bezier(.25,.1,.25,1); }
:root[data-theme="light"] { --night: var(--brand-paper); }
html, body { background: var(--paper); }
body { font-weight: var(--font-weight-body); }
a, button { outline-offset: 4px; }
:is(a:focus-visible, button:focus-visible, summary:focus-visible) { outline: 2px solid var(--mist); }
.section { border-bottom: 1px solid var(--brand-ink); padding-block: 82px; }
@supports (color:color-mix(in lab, red, red)){.section { border-bottom: 1px solid color-mix(in srgb,var(--brand-ink) 13%,transparent); }}
.section-head h2, .contact h2 { letter-spacing: normal; font-size: clamp(calc(var(--font-size-display) * 2 / 3), 8.8vw, calc(var(--font-size-display) * 4.25 / 3)); font-weight: max(var(--font-weight-body), calc(var(--font-weight-display) - 100)); }
footer { background: var(--ink); }
.bottom-nav { color: var(--ink); background: var(--paper); border-color: var(--brand-ink); }
@supports (color:color-mix(in lab, red, red)){.bottom-nav { border-color: color-mix(in srgb,var(--brand-ink) 24%,transparent); }}
.bottom-nav { backdrop-filter: none; }
:root[data-theme="dark"] .bottom-nav { color: var(--paper); background: var(--ink); border-color: var(--brand-paper); }
@supports (color:color-mix(in lab, red, red)){:root[data-theme="dark"] .bottom-nav { border-color: color-mix(in srgb,var(--brand-paper) 18%,transparent); }}
.whatsapp-float, .phone-float, .community-float { filter: none; }
.whatsapp-float > span, .phone-float > span, .community-float > span { background: var(--ink); border-radius: calc(var(--radius-float) * 3 / 24); }
.whatsapp-float > i, .phone-float > i, .community-float > i { box-shadow: none; border-radius: calc(var(--radius-float) * 4 / 24); }
.profile-site { background: var(--paper); }
@media (min-width: 860px){.section { padding-block: 112px; }}
html { font-size: 17px; --root-px: 17; }
body { text-rendering: optimizelegibility; font-weight: var(--font-weight-body); line-height: 1.7; }
.section-head h2, .contact h2 { font-size: clamp(calc(var(--font-size-display) * 2 / 3), 8.2vw, calc(var(--font-size-display) * 4 / 3)); line-height: 1.4; }
.section { border-bottom-width: var(--rule); padding-block: 60px; }
.section-head { margin-bottom: 24px; }
footer { border-top-width: var(--rule); }
.bottom-nav { border-top-width: var(--rule); }
.bottom-nav > a > span { font-size: calc(var(--font-size-caption) * 0.72 / 0.75); }
.whatsapp-float > i, .whatsapp-float > span, .phone-float > i, .phone-float > span, .community-float > i, .community-float > span { border-radius: var(--radius); }
.whatsapp-float > span, .phone-float > span, .community-float > span { font-size: calc(var(--font-size-caption) * 0.76 / 0.75); }
@media (min-width: 860px){html { font-size: 18px; --root-px: 18; }
.section { padding-block: 84px; }
.section-head { margin-bottom: 30px; }}
@media (max-width: 430px){.language-picker, .language-picker select { height: 36px; }}
#solutions, #services { isolation: isolate; position: relative; overflow: hidden; }
#solutions { color: var(--ink); background: var(--paper); padding-inline: 18px; }
#solutions::before { content: ""; z-index: -1; background: var(--mist); width: 54%; height: 18px; position: absolute; inset-block-start: 0px; inset-inline-start: -8%; transform: skew(-38deg); }
#solutions::after { content: ""; z-index: -1; background: var(--ink); width: 66%; height: 18px; position: absolute; inset-block-start: 0px; inset-inline-end: -8%; transform: skew(-38deg); }
#solutions > .section-head { color: var(--paper); border: var(--rule-strong) solid var(--ink); background: var(--ink); margin-bottom: 22px; padding: 27px 21px 31px; position: relative; overflow: hidden; }
#solutions > .section-head::before { content: ""; border: 22px solid var(--brand-mist); width: 116px; height: 116px; position: absolute; inset: auto -20px -43px auto; }
@supports (color:color-mix(in lab, red, red)){#solutions > .section-head::before { border: 22px solid color-mix(in srgb,var(--brand-mist) 18%,transparent); }}
#solutions > .section-head::before { transform: rotate(45deg); }
#solutions > .section-head::after { content: ""; background: var(--mist); clip-path: polygon(12px 0px, 100% 0px, 100% 100%, 0px 100%); width: 40%; height: 8px; position: absolute; inset: auto 0px 0px auto; }
#solutions > .section-head h2 { max-width: 12ch; color: inherit; position: relative; }
#services { background: var(--white); padding-inline: 18px; }
#services::before { content: ""; z-index: -1; background: var(--mist); width: 72%; height: 22px; position: absolute; inset-block-start: 0px; inset-inline-end: -18%; transform: skew(-38deg); }
#services::after { content: ""; z-index: -1; background: var(--ink); width: 72%; height: 22px; position: absolute; inset: auto auto 0px -18%; transform: skew(-38deg); }
:root[data-theme="dark"] #solutions { background: var(--ink); }
:root[data-theme="dark"] #solutions > .section-head { color: inherit; border-color: var(--paper); background: var(--paper); }
:root[data-theme="dark"] #solutions > .section-head > p, :root[data-theme="dark"] #solutions > .section-head h2 { color: inherit; }
:root[data-theme="dark"] #solutions > .section-head::before { border-color: var(--brand-ink); }
@supports (color:color-mix(in lab, red, red)){:root[data-theme="dark"] #solutions > .section-head::before { border-color: color-mix(in srgb,var(--brand-ink) 8%,transparent); }}
:root[data-theme="dark"] #services { background: var(--surface-soft); }
@media (min-width: 860px){#solutions, #services { padding-inline: 40px; }
#solutions > .section-head { padding: 38px 40px 44px; }
#solutions > .section-head h2 { max-width: 15ch; }}
:root { --canvas-soft: var(--surface-soft); --accent-rule: 12px; }
:root[data-theme="dark"], :root[data-theme="dark"] body, :root[data-theme="dark"] .site { background: var(--ink); }
:root[data-theme="dark"] main { background: inherit; }
:root[data-theme="light"] .hero, :root[data-theme="light"] .section, :root[data-theme="light"] .story, :root[data-theme="light"] .paper, :root[data-theme="light"] .mist, :root[data-theme="light"] .experience, :root[data-theme="light"] .questions, :root[data-theme="light"] #solutions, :root[data-theme="light"] #services { background-color: var(--canvas); }
:root[data-theme="light"] #story, :root[data-theme="light"] #entry, :root[data-theme="light"] #experts, :root[data-theme="light"] #experience, :root[data-theme="light"] #alliances, :root[data-theme="light"] #verification, :root[data-theme="light"] #questions, :root[data-theme="light"] #professional-notice { isolation: isolate; background: var(--canvas); position: relative; overflow: hidden; }
:root[data-theme="light"] #story::before, :root[data-theme="light"] #entry::before, :root[data-theme="light"] #experts::before, :root[data-theme="light"] #experience::before, :root[data-theme="light"] #alliances::before, :root[data-theme="light"] #verification::before, :root[data-theme="light"] #questions::before, :root[data-theme="light"] #professional-notice::before { content: ""; z-index: -1; background: linear-gradient(105deg,transparent 0 12%,var(--mist) 12% 48%,var(--ink) 48% 100%); pointer-events: none; width: min(520px, 72vw); height: 10px; position: absolute; inset-block-start: 0px; inset-inline-end: -12%; transform: skew(-36deg); }
:root[data-theme="light"] #entry::before, :root[data-theme="light"] #experience::before, :root[data-theme="light"] #verification::before, :root[data-theme="light"] #professional-notice::before { background: linear-gradient(75deg,var(--ink) 0 48%,var(--mist) 48% 84%,transparent 84%); inset-inline: -12% auto; }
:root[data-theme="light"] #entry, :root[data-theme="light"] #alliances, :root[data-theme="light"] #questions { background-image: linear-gradient(var(--brand-white),var(--brand-white)),var(--brand-mark-image, none); }
@supports (color:color-mix(in lab, red, red)){:root[data-theme="light"] #entry, :root[data-theme="light"] #alliances, :root[data-theme="light"] #questions { background-image: linear-gradient(color-mix(in srgb,var(--brand-white) 96.5%,transparent),color-mix(in srgb,var(--brand-white) 96.5%,transparent)),var(--brand-mark-image, none); }}
:root[data-theme="light"] #entry, :root[data-theme="light"] #alliances, :root[data-theme="light"] #questions { background-position: 50% center, calc(100% + 42px) calc(100% + 26px); background-repeat: no-repeat; background-size: 100% 100%, min(230px, 48vw); }
:root[data-theme="light"][dir="rtl"] #entry, :root[data-theme="light"][dir="rtl"] #alliances, :root[data-theme="light"][dir="rtl"] #questions { background-position: 50% center, -42px calc(100% + 26px); }
:root[data-theme="light"] #solutions, :root[data-theme="light"] #services { background: var(--canvas); }
.section-head h2, .contact h2 { letter-spacing: normal; white-space: normal; line-height: 1.4; max-width: none !important; font-size: min(var(--one-line-heading-mobile,8.6vw),calc(var(--font-size-display) * 4 / 3)) !important; }
@media (min-width: 860px){.section-head h2, .contact h2 { font-size: min(var(--one-line-heading-desktop,4.65vw),calc(var(--font-size-display) * 4.8 / 3)) !important; }}
@media (max-width: 559px){:root[data-theme="light"] #story::before, :root[data-theme="light"] #entry::before, :root[data-theme="light"] #experts::before, :root[data-theme="light"] #experience::before, :root[data-theme="light"] #alliances::before, :root[data-theme="light"] #verification::before, :root[data-theme="light"] #questions::before, :root[data-theme="light"] #professional-notice::before { width: 78vw; height: 8px; }}
.language-selector { min-width: 58px; height: 42px; color: inherit; background: var(--mist); place-items: center; padding: 0px 12px; display: grid; }
@supports (color:color-mix(in lab, red, red)){.language-selector { background: color-mix(in srgb,var(--mist) 34%,transparent); }}
.language-selector { border: 1px solid var(--ink); }
@supports (color:color-mix(in lab, red, red)){.language-selector { border: 1px solid color-mix(in srgb,var(--ink) 38%,transparent); }}
.language-selector { box-sizing: border-box; cursor: pointer; border-radius: var(--radius-chip); transition: background-color 0.18s, border-color 0.18s; }
.language-selector__current { color:inherit;font:700 .78rem var(--font-brand);white-space:nowrap;text-align:center;line-height:1; }
.language-selector:hover { background: var(--mist); }
@supports (color:color-mix(in lab, red, red)){.language-selector:hover { background: color-mix(in srgb,var(--mist) 54%,transparent); }}
.language-selector:focus-visible { border-color: var(--ink); outline: 2px solid var(--mist); outline-offset: 2px; }
:root[data-theme="dark"] .language-selector { color: var(--ink); background: var(--mist); }
@supports (color:color-mix(in lab, red, red)){:root[data-theme="dark"] .language-selector { background: color-mix(in srgb,var(--mist) 38%,transparent); }}
:root[data-theme="dark"] .language-selector { border-color: var(--brand-ink); }
@supports (color:color-mix(in lab, red, red)){:root[data-theme="dark"] .language-selector { border-color: color-mix(in srgb,var(--brand-ink) 42%,transparent); }}
@media (max-width: 430px){.language-selector { min-width: 52px; height: 36px; padding-inline: 9px; }
.language-selector__current { font-size: calc(var(--font-size-caption) * 0.7 / 0.75); }}
@media (prefers-reduced-motion: reduce){.language-selector { transition: none; }}
@media (forced-colors: active){.language-selector { color: buttontext; background: buttonface; border: 1px solid buttontext; }}
:root[data-theme="light"] :is(#story, #entry, #trust, #experts, #experience, #alliances, #verification, #questions, #professional-notice)::before { content: ""; z-index: 2; width: min(calc(100% - 36px),var(--max)); background: linear-gradient(90deg,var(--ink) 0 34%,var(--mist) 34% 72%,var(--paper) 72% 100%); clip-path: polygon(0px 0px, calc(100% - 18px) 0px, 100% 100%, 18px 100%); pointer-events: none; inset-block-start: 0px; height: 6px; position: absolute; left: 50%; transform: translate(-50%); }
:root[data-theme="light"] :is(#entry, #experience, #verification, #professional-notice)::before { background: linear-gradient(90deg,var(--paper) 0 28%,var(--mist) 28% 66%,var(--ink) 66% 100%); clip-path: polygon(18px 0px, 100% 0px, calc(100% - 18px) 100%, 0px 100%); }
footer { padding: 0 18px calc(24px + env(safe-area-inset-bottom)); background: var(--ink); border-top: 0px; position: relative; }
footer::before { content: ""; background: linear-gradient(90deg,var(--paper) 0 24%,var(--mist) 24% 61%,var(--ink) 61% 100%); height: 6px; position: absolute; inset: 0px 0px auto; }
footer > * { width: auto; margin: 0px; }
.footer-shell { width: min(100%,var(--max)); margin-inline: auto; }
.footer-brand { background: var(--paper); place-items: center; width: min(100%, 310px); min-height: 88px; display: grid; }
.footer-lockup { overflow: visible; width: 210px !important; }
footer .footer-lockup img { filter: none; transform-origin: 50% center; pointer-events: none; width: 100%; height: auto; transform: scale(5.15); }
@media (min-width: 860px){:root[data-theme="light"] :is(#story, #entry, #trust, #experts, #experience, #alliances, #verification, #questions, #professional-notice)::before { width: min(calc(100% - 80px),var(--max)); height: 8px; }
footer { padding: 0px 40px 28px; }
.footer-brand { width: 310px; min-height: 96px; }
.footer-lockup { width: 230px !important; }}
html, body, .site { background: var(--white); }
main { background: inherit; }
main > .section { isolation: isolate; color: var(--text); background: var(--canvas); padding-block: 88px; position: relative; overflow: hidden; }
main > .section::before, main > .section::after { pointer-events: none; }
main > .section > .section-head, main > .section > div, main > .section > p, main > .section > a { z-index: 2; position: relative; }
main > .section .section-head { margin-bottom: 38px; }
main > .section .section-head h2 { max-width: 900px; color: inherit; letter-spacing: normal; }
#solutions { color: var(--ink); background: var(--white); }
#solutions .section-head h2 { color: inherit; }
#experts, #alliances, #verification, #questions, #professional-notice { background: var(--white); }
:where(main a, main button, main summary):focus-visible { outline: 3px solid var(--ink); outline-offset: 3px; box-shadow: 0 0 0 2px var(--white); }
@media (min-width: 760px){main > .section { padding-block: 118px; }}
#solutions > .section-head { min-height: 0px; color: var(--paper); border-color: var(--ink); background: var(--ink); padding: 26px 22px 30px; }
#solutions > .section-head h2 { color: inherit; }
@media (max-width: 759px){main > .section { padding-block: 68px; }
main > .section .section-head { margin-bottom: 26px; }}
:root[data-theme="light"] .bottom-nav > a { opacity: 0.88; }
:root { --page-gutter: var(--layout-gutter); --content-wide: var(--layout-content-max); --content-reading: 760px; }
html { background: var(--white); }
body { background: var(--white); color: var(--ink); font-size: calc(var(--font-size-body) * 18 / (var(--root-px))); }
main > .section { isolation: isolate; padding: clamp(92px,10vw,148px) var(--page-gutter); color: var(--text); background: var(--canvas); position: relative; overflow: hidden; }
main > .section:nth-of-type(2n) { background: var(--surface-soft); }
main > .section::after { content: ""; z-index: -1; aspect-ratio: var(--brand-mark-aspect, 1); opacity: 0.026; pointer-events: none; background: var(--brand-mark-image, none) 50% center / contain no-repeat; width: 320px; position: absolute; inset-block-start: 72px; inset-inline-end: -90px; }
main > .section > * { width: min(100%,var(--content-wide)); margin-inline: auto; }
.section-head { text-align: start; max-width: var(--layout-content-max) !important; margin-inline: auto !important; margin-bottom: 58px !important; }
.section-head h2, #solutions > .section-head h2 { max-width: 18ch; color: inherit; letter-spacing: normal; text-wrap: balance; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.75 / 3), 5.6vw, calc(var(--font-size-display) * 5.6 / 3)); font-weight: var(--font-weight-display); line-height: 1.4; }
#experts { background: var(--white); }
#solutions, #solutions.section.dark.edge { color: var(--ink); background: var(--white); }
#solutions > .section-head { min-height: 0px; color: inherit; background: 0px 0px; border: 0px; padding: 0px; }
#solutions > .section-head::before, #solutions > .section-head::after { display: none; }
#services { background: var(--paper); }
footer { padding: 70px var(--page-gutter) calc(var(--bottom) + 46px + env(safe-area-inset-bottom)); background: var(--ink); }
.footer-shell { width: min(100%,var(--content-wide)); }
.footer-brand { grid-row: 1 / 3; }
:where(a, button, summary) { text-underline-offset: 0.22em; }
:where(a, button, summary):focus-visible { outline: 3px solid var(--mist); outline-offset: 4px; }
@media (max-width: 859px){body { font-size: calc(var(--font-size-body) * 17 / (var(--root-px))); }
main > .section { padding: 80px 20px; }
.section-head { margin-bottom: 38px !important; }
.section-head h2, #solutions > .section-head h2 { font-size: clamp(calc(var(--font-size-display) * 2.45 / 3), 11vw, calc(var(--font-size-display) * 4 / 3)); }
.footer-brand { grid-row: auto; }}
:root { --editorial-max: 1200px; --editorial-reading: 720px; --hairline: var(--brand-ink); }
@supports (color:color-mix(in lab, red, red)){:root { --hairline: color-mix(in srgb,var(--brand-ink) 18%,transparent); }}
body { background: var(--white); font-size: calc(var(--font-size-body) * 18 / (var(--root-px))); }
main > .section { padding: clamp(86px,9vw,132px) var(--page-gutter); color: var(--text); background: var(--canvas); }
main > .section::after { opacity: 0.022; width: 300px; inset-block-start: 64px; inset-inline-end: -80px; }
main > .section > * { width: min(100%,var(--editorial-max)); }
.section-head { max-width: var(--layout-content-max) !important; margin-inline: auto !important; margin-bottom: 44px !important; }
.section-head h2, #solutions > .section-head h2, .contact h2 { letter-spacing: normal; max-width: 22ch; font-size: clamp(calc(var(--font-size-display) * 2.15 / 3), 3.6vw, calc(var(--font-size-display) * 3.35 / 3)); font-weight: max(var(--font-weight-body), calc(var(--font-weight-display) - 100)); line-height: 1.4; }
#solutions, #solutions.section.dark.edge { background: var(--paper); }
#solutions::before, #services::before, #experience::before, #questions::before, #solutions::after, #services::after, #experience::after, #questions::after { clip-path: none !important; transform: none !important; }
main > .section::before { display: none !important; }
main > .section::after { content: "" !important; z-index: -1 !important; aspect-ratio: var(--brand-mark-aspect, 1) !important; opacity: 0.022 !important; pointer-events: none !important; background: var(--brand-mark-image, none) 50% center / contain no-repeat !important; border: 0px !important; width: 300px !important; height: auto !important; display: block !important; position: absolute !important; inset-block: 64px auto !important; inset-inline: auto -80px !important; }
main > .section:nth-of-type(2n+1)::after { inset-inline: -95px auto !important; }
footer { isolation: isolate; color: var(--ink); background: var(--paper); padding-top: 62px; position: relative; overflow: hidden; }
footer::before { content: ""; z-index: -1; aspect-ratio: var(--brand-mark-aspect, 1); opacity: 0.04; background: var(--brand-mark-image, none) 50% center / contain no-repeat; width: 430px; position: absolute; inset: auto -110px -130px auto; }
main > .section { background-image: none !important; }
main > .section::after, footer::before { display: none !important; }
footer .brand img { filter: none !important; }
@media (max-width: 859px){main > .section { padding: 72px 20px; }
main > .section::after { opacity: 0.018; width: 230px; inset-inline-end: -105px; }
main > .section:nth-of-type(2n+1)::after { inset-inline-start: -110px; }
.section-head { margin-bottom: 34px !important; }
.section-head h2, #solutions > .section-head h2, .contact h2 { max-width: 21ch; font-size: clamp(calc(var(--font-size-heading-1) * 1.95 / 2.25), 7.5vw, calc(var(--font-size-heading-1) * 2.55 / 2.25)); line-height: 1.4; }}
@media (max-width: 520px){body { font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); }
.section-head h2, #solutions > .section-head h2, .contact h2 { font-size: clamp(calc(var(--font-size-heading-1) * 1.85 / 2.25), 7.8vw, calc(var(--font-size-heading-1) * 2.35 / 2.25)); }}
.home-site { --home-rail: min(100%,1200px); --home-section: var(--layout-section-space); --home-gap: clamp(24px,4vw,52px); }
.home-site main > .section { padding: var(--home-section) var(--page-gutter); }
.home-site main > .section > .section-head { margin-bottom: clamp(24px, 3vw, 36px) !important; }
.home-site .section-head h2, .home-site #solutions > .section-head h2 { font-size: clamp(calc(var(--font-size-display) * 2 / 3), 3.6vw, calc(var(--font-size-display) * 3.35 / 3)); }
.home-site #solutions { background: var(--paper); }
.home-site #solutions > .section-head { max-width: none !important; }
.home-site footer { padding-top: 46px; padding-bottom: calc(var(--bottom) + 30px + env(safe-area-inset-bottom)); }
@media (max-width: 680px){.home-site { --home-section: var(--layout-section-space); }
.home-site footer { padding-top: 38px; }}
@property --tw-rotate-x { syntax: "*"; inherits: false; }
@property --tw-rotate-y { syntax: "*"; inherits: false; }
@property --tw-rotate-z { syntax: "*"; inherits: false; }
@property --tw-skew-x { syntax: "*"; inherits: false; }
@property --tw-skew-y { syntax: "*"; inherits: false; }
@property --tw-border-style { syntax: "*"; inherits: false; initial-value: solid; }
@property --tw-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-shadow-color { syntax: "*"; inherits: false; }
@property --tw-shadow-alpha { syntax: "<percentage>"; inherits: false; initial-value: 100%; }
@property --tw-inset-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-inset-shadow-color { syntax: "*"; inherits: false; }
@property --tw-inset-shadow-alpha { syntax: "<percentage>"; inherits: false; initial-value: 100%; }
@property --tw-ring-color { syntax: "*"; inherits: false; }
@property --tw-ring-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-inset-ring-color { syntax: "*"; inherits: false; }
@property --tw-inset-ring-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-ring-inset { syntax: "*"; inherits: false; }
@property --tw-ring-offset-width { syntax: "<length>"; inherits: false; initial-value: 0; }
@property --tw-ring-offset-color { syntax: "*"; inherits: false; initial-value: #fff; }
@property --tw-ring-offset-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
@property --tw-outline-style { syntax: "*"; inherits: false; initial-value: solid; }
@property --tw-blur { syntax: "*"; inherits: false; }
@property --tw-brightness { syntax: "*"; inherits: false; }
@property --tw-contrast { syntax: "*"; inherits: false; }
@property --tw-grayscale { syntax: "*"; inherits: false; }
@property --tw-hue-rotate { syntax: "*"; inherits: false; }
@property --tw-invert { syntax: "*"; inherits: false; }
@property --tw-opacity { syntax: "*"; inherits: false; }
@property --tw-saturate { syntax: "*"; inherits: false; }
@property --tw-sepia { syntax: "*"; inherits: false; }
@property --tw-drop-shadow { syntax: "*"; inherits: false; }
@property --tw-drop-shadow-color { syntax: "*"; inherits: false; }
@property --tw-drop-shadow-alpha { syntax: "<percentage>"; inherits: false; initial-value: 100%; }
@property --tw-drop-shadow-size { syntax: "*"; inherits: false; }
:root { --radius-ui: calc(var(--radius-control) * 6 / 14); --max: var(--layout-content-max); --top: 78px; --bottom: 72px; }
html, body { background: var(--canvas); color: var(--text); }
body { font-size: calc(var(--font-size-body) * 17 / (var(--root-px))); line-height: 1.72; }
* { scrollbar-color: var(--brand-mist) var(--canvas); }
:focus-visible { outline: 2px solid var(--brand-mist); outline-offset: 4px; }
.site { background: var(--canvas); }
:root:not([data-theme="light"]) .footer-lockup img, :root:not([data-theme="light"]) .menu-lockup img { filter: brightness(0) invert(); }
.section { padding: clamp(78px,9vw,126px) var(--layout-gutter); color: var(--text); background: var(--canvas); border-bottom: 1px solid var(--night-line); }
.section-head { grid-template-columns: minmax(0px, 1fr) minmax(260px, 0.7fr); align-items: end; gap: clamp(24px, 6vw, 96px); margin-bottom: 48px; display: grid; }
.section-head h2, .contact h2 { max-width: 760px; color: inherit; letter-spacing: normal; text-wrap: balance; font-size: clamp(calc(var(--font-size-display) * 2.25 / 3), 4.5vw, calc(var(--font-size-display) * 4.75 / 3)); line-height: 1.4; }
#solutions { padding-inline: var(--layout-gutter); color: var(--text); background: var(--surface-strong); }
#solutions::before, #solutions::after { display: none; }
#services { color: var(--text); background: var(--canvas); }
footer { color: var(--text); background: var(--surface); border-top: 1px solid var(--night-line); }
.footer-shell { width: min(100%,var(--max)); margin: auto; padding: 54px clamp(18px, 4vw, 44px) 90px; }
.bottom-nav { color: var(--text); background: var(--canvas); border-color: var(--night-line); backdrop-filter: none; }
.whatsapp-float > span, .phone-float > span, .community-float > span { color: var(--on-strong); background: var(--surface-strong); }
.profile-site { color: var(--text); background: var(--canvas); }
@media (max-width: 720px){:root { --top: 70px; }
.section-head { grid-template-columns: 1fr; gap: 18px; margin-bottom: 34px; }}
@media (prefers-reduced-motion: reduce){*, ::before, ::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; }}
.home-site { --home-max: var(--layout-content-max); --home-gutter: var(--layout-gutter); --home-ink: var(--text); --home-paper: var(--surface); --home-mist: var(--brand-mist); --home-night: var(--canvas); --home-surface: var(--surface-soft); --home-white: var(--surface); --home-line-dark: var(--border); --home-line-light: var(--border); color: var(--text); background: var(--canvas); }
.home-site .language-selector__current { font-size: calc(var(--font-size-caption) * 0.74 / 0.75); }
.home-site .section { padding: clamp(86px,9vw,132px) var(--home-gutter); border-bottom: 1px solid var(--home-line-dark); }
.home-site .section > * { width: min(100%,var(--home-max)); margin-inline: auto; }
.home-site .section-head { grid-template-columns: minmax(0px, 1.2fr) minmax(280px, 0.8fr); align-items: end; gap: clamp(32px, 7vw, 104px); margin-bottom: clamp(42px, 6vw, 76px); display: grid; }
.home-site .section-head h2 { letter-spacing: normal; text-wrap: balance; max-width: 760px; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.55 / 3), 4.8vw, calc(var(--font-size-display) * 4.8 / 3)); font-weight: max(var(--font-weight-body), calc(var(--font-weight-display) - 100)); line-height: 1.4; }
.home-legal-solutions { color: var(--home-ink) !important; background: var(--home-white) !important; }
.home-site .home-legal-solutions > .section-head { overflow: visible; color: var(--home-ink) !important; box-shadow: none !important; background: 0px 0px !important; border: 0px !important; padding: 0px !important; }
.home-site .home-legal-solutions > .section-head::before, .home-site .home-legal-solutions > .section-head::after { display: none !important; }
.home-solution-grid { background: 0px 0px; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 24px; display: grid; }
.home-solution-card { min-width: 0px; min-height: 240px; color: var(--home-ink); border: 1px solid var(--home-line-light); background: var(--home-paper); border-radius: calc(var(--radius-surface) * 4 / 24); grid-template-columns: clamp(120px, 14vw, 180px) minmax(0px, 1fr); align-items: stretch; gap: 0px; padding: 0px; display: grid; overflow: hidden; }
.home-solution-image { aspect-ratio: 3 / 5; background: color-mix(in srgb,var(--home-mist) 54%,var(--home-paper)); align-self: start; width: 100%; min-width: 0px; min-height: 0px; display: block; position: relative; overflow: hidden; }
.home-solution-image::after { content: ""; background: color-mix(in srgb,var(--brand-ink) 6%,transparent); pointer-events: none; position: absolute; inset: 0px; }
.home-solution-image img { object-fit: cover; object-position: center center; width: 100%; height: 100%; display: block; position: absolute; inset: 0px; }
.home-solution-copy { grid-template-columns: 0px minmax(0px, 1fr); align-content: center; gap: 9px 13px; min-width: 0px; padding: 24px; display: grid; }
.home-solution-copy > svg { color: color-mix(in srgb,var(--home-ink) 86%,transparent); margin-top: 2px; display: none; }
.home-solution-copy > h3, .home-solution-copy > small { grid-column: 2; }
.home-solution-card h3 { margin: 0px; font-size: clamp(calc(var(--font-size-heading-1) * 1.05 / 2.25), 1.75vw, calc(var(--font-size-heading-1) * 2.15 / 2.25)); line-height: 1.35; }
.home-solution-card small { max-width: 58ch; color: color-mix(in srgb,var(--home-ink) 86%,transparent); font-size: calc(var(--font-size-body) * 1.05); line-height: 1.72; }
.home-solution-discuss { min-height: 58px; color: var(--home-ink); border-block-start: 1px solid var(--home-line-light); background: 0px 0px; grid-column: 1 / -1; justify-content: space-between; align-items: center; gap: 12px; padding: 13px 20px; font-size: var(--font-size-body); font-weight: calc(var(--font-weight-body) + 300); text-decoration: none; transition: color 0.2s, background-color 0.2s; display: flex; }
.home-solution-discuss:hover { color: var(--home-ink); background: var(--home-mist); }
.home-solution-discuss:focus-visible { color: var(--home-ink); outline: 3px solid var(--home-mist); outline-offset: -3px; background: var(--home-white); }
.home-site #experts { color: var(--home-ink) !important; background: var(--home-paper) !important; border-color: var(--home-line-light) !important; }
.home-site #experts .section-head h2 { color: inherit; }
.home-site footer .footer-brand { background: 0px 0px; border: 0px; width: min(100%, 360px); min-height: 0px; padding: 0px; }
.home-site footer .footer-lockup { overflow: visible; }
.home-site footer .footer-lockup img { filter: none !important; }
:root[data-theme="dark"] .home-site footer .footer-lockup img { filter: brightness(0) invert() !important; }
.home-solution-status { background: var(--home-ink); width: max-content; padding: 3px 8px; font-weight: calc(var(--font-weight-body) + 400); color: var(--home-paper) !important; font-size: calc(var(--font-size-caption) * 0.72 / 0.75) !important; }
.home-site footer { color: var(--home-ink); background: var(--home-paper); border-color: var(--home-line-light); }
.home-site .phone-float, .home-site .community-float { display: none; }
@media (min-width: 821px){.home-site .section-head { grid-template-columns: minmax(0px, 1.15fr) minmax(280px, 0.85fr); align-items: start; gap: clamp(32px, 6vw, 88px); }
.home-site .section-head h2 { max-width: none; font-size: min(var(--one-line-heading-desktop,3.15vw),calc(var(--font-size-display) * 3.35 / 3)); }}
@media (max-width: 820px){.home-site .section-head { grid-template-columns: 1fr; gap: 20px; }
.home-site .phone-float, .home-site .community-float { display: none; }}
@media (max-width: 620px){.home-site { --home-gutter: var(--layout-gutter); }
.home-solution-grid { grid-template-columns: 1fr; gap: 10px; }
.home-solution-card { border-radius: calc(var(--radius-surface) * 4 / 24); grid-template-rows: 1fr auto; grid-template-columns: 112px minmax(0px, 1fr); min-height: 184px; padding: 0px; }
.home-solution-image { grid-row: 1; min-height: 184px; }
.home-solution-copy { grid-template-columns: 1fr; gap: 6px; padding: 18px 15px; }
.home-solution-copy > svg { display: none; }
.home-solution-copy > h3, .home-solution-copy > small { grid-column: 1; }
.home-solution-card h3 { margin: 0px; font-size: calc(var(--font-size-body) * 1.05); }
.home-solution-card small { font-size: calc(var(--font-size-body) * 0.94); line-height: 1.7; }
.home-solution-discuss { min-height: 54px; padding: 12px 15px; }
.home-site .section-head h2 { font-size: min(var(--one-line-heading-mobile,5.3vw),calc(var(--font-size-display) * 2.6 / 3)); }
.home-site footer .footer-brand { width: min(100%, 320px); min-height: 0px; padding: 0px; }}
@media (max-width: 420px){.home-site .language-picker { width: 78px; min-width: 78px; }
.home-site .language-selector__current { font-size: calc(var(--font-size-caption) * 0.58 / 0.75); }}
.home-site footer .footer-shell { padding: 0px; }
.home-site footer .footer-brand { grid-row: auto; }
.home-site .section-head h2 { --one-line-heading-mobile: 5.3vw; --one-line-heading-desktop: 2.7vw; font-size: min(var(--one-line-heading-mobile),var(--font-size-display)); white-space: normal; text-wrap-style: balance; overflow-wrap: break-word; word-break: normal; letter-spacing: 0px; font-weight: calc(var(--font-weight-body) + 100); }
@media (min-width: 821px){.home-site .section-head h2 { font-size: min(var(--one-line-heading-desktop),calc(var(--font-size-display) * 3.35 / 3)); }}
@media (max-width: 1000px){.home-solution-grid { grid-template-columns: 1fr; }
.home-solution-card { grid-template-columns: minmax(140px, 26%) minmax(0px, 1fr); }}
@media (max-width: 560px){.home-solution-card { grid-template-columns: 1fr; }
.home-solution-image { aspect-ratio: 3 / 2; width: 100%; max-height: 240px; }
.home-solution-copy { gap: 12px 0px; padding: 24px; }
.home-solution-card h3 { font-size: calc(var(--font-size-heading-3) * 1.4 / 1.375); }}
html { overflow-x: hidden; }
body { overflow-wrap: break-word; min-width: 0px; }
:where(a, button, summary, input, select, textarea) { touch-action: manipulation; }
:where(a, button, summary, input, select, textarea):focus-visible { outline: 3px solid var(--brand-mist); outline-offset: 3px; }
@media (max-width: 820px){.home-site .language-picker { width: 54px; min-width: 54px; height: 44px; padding-inline: 8px; }
.home-site .section { padding: var(--layout-section-space) var(--layout-gutter); }
.home-site .section-head { grid-template-columns: 1fr; gap: 14px; margin-bottom: 30px; }
.home-site .section-head h2 { max-width: 14ch; font-size: clamp(calc(var(--font-size-display) * 2.2 / 3), 10.5vw, calc(var(--font-size-display) * 3.35 / 3)); line-height: 1.4; white-space: normal !important; text-wrap-style: balance !important; }
.home-site .home-solution-grid { grid-template-columns: 1fr; }
.home-site .home-solution-card { grid-template-rows: 1fr auto; grid-template-columns: minmax(210px, 36%) minmax(0px, 1fr); min-height: 230px; padding: 0px; }
.home-site .home-solution-image { aspect-ratio: 3 / 5; grid-row: 1 / 3; width: 100%; min-height: 0px; padding: 0px; }
.home-site .home-solution-copy { padding: 24px 22px 15px; }
.home-site footer { padding-inline: 18px; padding-bottom: calc(var(--bottom) + 28px + env(safe-area-inset-bottom)); }
.home-site .bottom-nav { height: calc(68px + env(safe-area-inset-bottom)); padding-bottom: env(safe-area-inset-bottom); }
.home-site .bottom-nav > :is(a, button) { min-width: 0px; min-height: 54px; padding-inline: 1px; }
.home-site .bottom-nav > :is(a, button) > span { white-space: normal; text-align: center; max-width: 100%; font-size: calc(var(--font-size-caption) * 0.56 / 0.75); line-height: 1.2; }
.home-site .community-float.with-bottom-nav { bottom: calc(68px + 130px + env(safe-area-inset-bottom)); }
.home-site .whatsapp-float > i, .home-site .phone-float > i, .home-site .community-float > i { width: 48px; height: 48px; }}
@media (max-width: 620px){.home-site .home-solution-card { grid-template-rows: auto auto; grid-template-columns: 1fr; min-height: 0px; }
.home-site .home-solution-image { aspect-ratio: 3 / 5; grid-row: auto; width: 100%; min-height: 0px; padding: 0px; }
.home-site .home-solution-copy { grid-template-columns: 24px minmax(0px, 1fr); gap: 7px 10px; padding: 19px 18px 14px; }
.home-site .home-solution-copy > svg { width: 20px; height: 20px; display: block; }
.home-site .home-solution-copy > h3, .home-site .home-solution-copy > small { grid-column: 2; }
.home-site .home-solution-card b { font-size: calc(var(--font-size-body) * 1.05); }
.home-site .home-solution-card small { font-size: calc(var(--font-size-body) * 1.05); line-height: 1.68; }}
@media (max-width: 480px){.home-site .language-picker { width: 50px; min-width: 50px; }
.home-site .language-selector__current { font-size: calc(var(--font-size-caption) * 0.68 / 0.75); }}
.home-site, .home-site main, .home-site main > .section, .home-site main > .section > * { min-inline-size: 0px; max-inline-size: 100%; }
html { background: var(--surface); scrollbar-color: var(--brand-mist) var(--surface); scroll-padding-top: 110px; }
body { font-family: var(--font-brand); color: var(--text); background: var(--surface); font-size: var(--font-size-body); line-height: 1.75; }
body :where(button, input, select, textarea) { font-family: var(--font-brand); }
::selection { background: var(--brand-mist); color: var(--brand-ink); }
input, textarea { caret-color: var(--focus); }
:where(a, button, input, select, textarea, summary):focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
:where(h1, h2, h3) { text-wrap: balance; }
:where(p, li, dd) { overflow-wrap: break-word; }
.home-site .bottom-nav { inset-inline: 12px; bottom: max(10px,env(safe-area-inset-bottom)); border: 1px solid var(--border); border-radius: var(--radius-float); width: auto; color: var(--text); background: var(--surface); box-shadow: var(--glass-shadow); padding: 6px; }
.home-site .bottom-nav a { border-radius: calc(var(--radius-control) * 16 / 14); min-height: 50px; }
.home-solution-card { border-radius: var(--radius-surface); border-color: var(--border); background: var(--surface); color: var(--text); }
.home-solution-copy { padding: 24px; }
.home-solution-copy > small { font-size: var(--font-size-body); line-height: 1.85; }
.home-solution-discuss { background: var(--surface-soft); border-color: var(--border); min-height: 52px; }
.home-solution-card:focus-within { outline: 2px solid var(--focus); outline-offset: 3px; }
.home-site .section-head h2 { letter-spacing: normal; font-size: clamp(calc(var(--font-size-display) * 2 / 3), 4vw, calc(var(--font-size-display) * 3.75 / 3)); line-height: 1.4; }
:root[data-theme] .home-site #solutions > .section-head h2 { color: var(--text); }
.home-site .section { padding-block: var(--layout-section-space); }
.home-site .home-legal-solutions > .section-head { margin-bottom: 36px; }
.term-icon { width: 44px; height: 44px; color: var(--text); background: var(--surface-soft); border: 1px solid var(--border); border-radius: calc(var(--radius-surface) * 12 / 24); flex: 0 0 auto; justify-content: center; align-items: center; display: inline-flex; }
.term-heading { align-items: center; gap: 12px; display: flex; }
.term-list { gap: 0px; margin: 0px; padding: 0px; list-style: none; display: grid; }
.term-list > li { border-bottom: 1px solid var(--border); padding-block: 22px; }
.term-list h3 { margin: 0px; font-size: calc(var(--font-size-heading-4) * 1.12 / 1.125); }
.term-list p { max-width: 72ch; color: var(--text-secondary); margin: 12px 0px 0px; font-size: var(--font-size-body); line-height: 1.9; }
.offering-section { width: min(1240px, 100%); color: var(--text); background: var(--surface); margin-inline: auto; padding: clamp(32px, 5vw, 64px) clamp(20px, 4vw, 48px); }
.offering-section > header { max-width: 74ch; margin-bottom: 28px; }
.offering-section h2 { margin: 0px 0px 12px; font-size: clamp(calc(var(--font-size-heading-1) * 1.65 / 2.25), 3vw, calc(var(--font-size-heading-1) * 2.5 / 2.25)); line-height: 1.4; }
.offering-section > header p { color: var(--text-secondary); font-size: var(--font-size-body); }
.offering-section details { border-block-end: 1px solid var(--border); }
.offering-section summary { cursor: pointer; justify-content: space-between; align-items: center; gap: 16px; min-height: 64px; padding-block: 14px; font-size: calc(var(--font-size-heading-4) * 1.1 / 1.125); display: flex; }
.offering-section summary::-webkit-details-marker { display: none; }
.offering-section details[open] > summary > .icon-chevronDown { transform: rotate(180deg); }
.solution-tier { border: 1px solid var(--border); border-radius: var(--radius-surface); background: var(--surface); min-width: 0px; color: var(--text); flex-direction: column; padding: 28px; display: flex; }
.solution-tier[data-featured="true"] { border-color: var(--text); box-shadow: inset 0 0 0 1px var(--text); }
.solution-tier h3 { margin: 0px; font-size: calc(var(--font-size-heading-3) * 1.35 / 1.375); line-height: 1.5; }
.solution-tier header > strong { margin-top: 14px; font-size: var(--font-size-body); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.85; display: block; }
.solution-tier-content { flex: 1 1 0%; min-width: 0px; margin-block: 20px; }
.solution-tier-content > p { margin: 0px; font-size: var(--font-size-body); line-height: 1.9; }
.solution-tier-action { background: var(--surface-soft); border: 1px solid var(--border); border-radius: var(--radius-control); justify-content: space-between; align-items: center; gap: 12px; min-height: 50px; padding: 12px 16px; font-size: var(--font-size-body); font-weight: calc(var(--font-weight-body) + 100); display: flex; }
.product-comparison { min-width: 0px; margin-block: 20px; }
.product-comparison-scroll { scrollbar-color: var(--brand-mist) var(--surface); border: 1px solid var(--border); border-radius: var(--radius-surface); overflow-x: auto; }
.product-comparison table { border-collapse: collapse; table-layout: fixed; width: 100%; min-width: 680px; color: var(--text); background: var(--surface); text-align: start; font-size: var(--font-size-body); }
.product-comparison th, .product-comparison td { vertical-align: top; border-bottom: 1px solid var(--border); overflow-wrap: break-word; padding: 18px 16px; line-height: 1.7; }
.product-comparison th:first-child:not([colspan]) { text-align: start; width: 40%; }
.product-comparison td, .product-comparison thead th:not(:first-child) { text-align: center; }
.product-comparison th { font-weight: calc(var(--font-weight-body) + 200); }
.product-comparison thead th, .product-comparison th[colspan] { background: var(--surface-soft); }
.product-comparison td > span, .product-comparison td > small { display: block; }
.product-comparison details { border: 0px; }
.product-comparison summary { cursor: pointer; align-items: center; gap: 10px; min-height: 44px; padding: 0px; line-height: 1.7; display: flex; }
.product-comparison .term-detail { color: var(--text-secondary); font-weight: var(--font-weight-body); line-height: 1.9; }
.product-comparison-hint { color: var(--text-secondary); font-size: calc(var(--font-size-label) * 0.9 / 0.875); display: none; }
[data-experience-person] > p { max-width: 70ch; color: var(--text-secondary); line-height: 1.9; }
@media (max-width: 760px){.product-comparison-hint { display: block; }
.product-comparison th, .product-comparison td { padding: 16px 12px; }}
.offering-boundaries { gap: 16px; padding-inline-start: 24px; font-size: var(--font-size-body); line-height: 1.9; display: grid; }
@media (hover: hover) and (prefers-reduced-motion: no-preference){.solution-tier-action, .home-solution-discuss { transition: background var(--motion-duration) var(--motion-ease),box-shadow var(--motion-duration) var(--motion-ease); }
.solution-tier-action:hover, .home-solution-discuss:hover { background: color-mix(in srgb,var(--brand-mist) 24%,var(--surface)); box-shadow: inset 0 1px 0 var(--glass-edge); }}
@media (max-width: 820px){.solution-tier { padding: 24px; }
.home-site .bottom-nav { bottom: max(8px,env(safe-area-inset-bottom)); inset-inline: 10px; }}
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more){.home-site .bottom-nav, .home-site .top-menu-dropdown { background: var(--surface); box-shadow: none; }}
@media (prefers-reduced-motion: reduce){html { scroll-behavior: auto; }
*, ::before, ::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; }}
@media (forced-colors: active){.home-site .bottom-nav, .solution-tier, .term-icon { color: canvastext; box-shadow: none; backdrop-filter: none; background: canvas; border: 1px solid canvastext; }}
.home-site .home-solution-card { border-radius: var(--radius-surface); background: var(--surface); color: var(--text); grid-template-rows: 1fr auto; }
.home-site .home-solution-image { aspect-ratio: auto; grid-row: 1 / 3; align-self: stretch; height: 100%; min-height: 240px; }
.home-site .home-solution-copy { flex-direction: column; align-items: flex-start; gap: 12px; padding: 26px; display: flex; }
.home-site .home-solution-copy > svg { width: 26px; height: 26px; color: var(--text); display: block; }
.home-site .home-solution-copy h3 { font-size: clamp(calc(var(--font-size-heading-2) * 1.25 / 1.75), 1.5vw, var(--font-size-heading-2)); }
.home-site .home-solution-copy > small { color: var(--text-secondary); }
.home-site .home-solution-discuss { border-color: var(--border); background: var(--surface-soft); color: var(--text); grid-column: 2; }
.solution-benefits { border-top: 1px solid var(--border); width: 100%; padding-top: 8px; }
.solution-benefits summary { cursor: pointer; justify-content: space-between; align-items: center; gap: 10px; min-height: 44px; font-size: var(--font-size-body); display: flex; }
.solution-benefits ul { gap: 12px; padding: 10px 0px; font-size: calc(var(--font-size-body) * 0.9375); list-style: none; display: grid; }
.solution-benefits li { align-items: flex-start; gap: 10px; line-height: 1.65; display: flex; }
.solution-benefits li svg { flex-shrink: 0; margin-top: 4px; }
.solution-tier-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 20px; display: grid; }
.tier-capacity { border-block: 1px solid var(--border); margin-block: 14px; padding-block: 16px; }
.tier-capacity h4 { align-items: center; gap: 8px; margin: 0px 0px 8px; font-size: var(--font-size-body); display: flex; }
@media (max-width: 1000px){.solution-tier-grid { grid-template-columns: 1fr; }}
@media (max-width: 620px){.home-site .home-solution-image { aspect-ratio: auto; grid-row: auto; height: 220px; min-height: 200px; max-height: 220px; }
.home-site .home-solution-discuss { grid-column: 1; }
.home-site .home-solution-copy { padding: 24px; }}
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more){:root[data-theme] .home-site .bottom-nav, :root[data-theme] .home-site .top-menu-dropdown { background: var(--surface); }}
:root { --navigation-icon-size: 22px; --navigation-control-size: 44px; --navigation-gap: 8px; }
/* Shared dock and dialogs: frame.css. */
@media (forced-colors: active){.site-menu-panel, .site-menu-heading button { color: canvastext; box-shadow: none; background: canvas; border: 1px solid canvastext; }
.home-site .bottom-nav .bottom-nav-current { outline-offset: -2px; outline: highlight solid 1px; }}
:root { --batch-surface: var(--surface); --batch-soft: var(--surface-soft); --batch-text: var(--text); --batch-muted: var(--text-secondary); --batch-line: var(--border); }
.editorial-page { width: var(--layout-shell-width); color: var(--batch-text); min-width: 0px; margin: auto; padding: 44px 0px 80px; }
.editorial-hero { max-width: 780px; padding: 20px 0px 40px; }
.editorial-hero h1 { margin: 12px 0px 20px; font-size: clamp(calc(var(--font-size-display) * 2.4 / 3), 5vw, calc(var(--font-size-display) * 4.5 / 3)); line-height: 1.4; }
.editorial-hero p { color: var(--batch-muted); font-size: calc(var(--font-size-heading-4) * 1.2 / 1.125); line-height: 1.9; }
.editorial-page h2 { font-size: calc(var(--font-size-heading-2) * 1.8 / 1.75); line-height: 1.4; }
.editorial-note { color: var(--batch-muted); max-width: 850px; margin-block: 28px; line-height: 1.9; }
:is(.editorial-page a:focus-visible, .editorial-page button:focus-visible, .editorial-page input:focus-visible) { outline: 3px solid var(--brand-mist); outline-offset: 4px; }
.contact-grid, .resource-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 18px; display: grid; }
.contact-card, .resource-card { border: 1px solid var(--batch-line); background: var(--batch-surface); min-width: 0px; color: var(--batch-text); border-radius: calc(var(--radius-surface) * 14 / 24); padding: 28px; text-decoration: none; }
.contact-card { grid-template-columns: 1fr auto; gap: 20px; display: grid; }
.contact-card h2 { grid-column: 1 / -1; margin: 0px; }
.contact-card bdi { overflow-wrap: anywhere; }
.resource-section { margin-block: 48px; }
.product-comparison td { font-variant-numeric: tabular-nums; text-align: center !important; vertical-align: middle !important; }
.coverage-value { justify-content: center; align-items: center; width: 100%; min-height: 28px; display: inline-flex; }
.tier-service-count { color: inherit; align-items: baseline; gap: 8px; display: flex; }
.tier-service-count strong { font-size: 1.5em; }
.tier-inclusions summary { cursor: pointer; justify-content: space-between; align-items: center; gap: 14px; min-height: 44px; display: flex; }
.tier-inclusions ul { padding-inline-start: 22px; line-height: 1.8; }
.tier-inclusions h4 { margin-block: 18px 8px; }
.solution-tier .tier-capacity dl div, .solution-tier-content { min-width: 0px; }
#solutions { scroll-margin-top: 120px; }
.offering-comparison > summary { cursor: pointer; min-height: 48px; }
.resource-section, .resource-upcoming section { scroll-margin-top: 120px; }
@media (max-width: 560px){.editorial-page { width: var(--layout-shell-width); padding-top: 20px; }
.contact-grid, .resource-grid { grid-template-columns: 1fr; }
.contact-card, .resource-card { padding: 22px; }
.editorial-hero { padding-bottom: 24px; }}
.organisation-names { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 12px; padding: 0px; list-style: none; display: grid; }
.organisation-names li { border: 1px solid var(--batch-line); border-radius: calc(var(--radius-surface) * 8 / 24); padding: 16px; font-size: calc(var(--font-size-body) * 0.95); line-height: 1.8; }
@media (max-width: 600px){.organisation-names { grid-template-columns: 1fr 1fr; }}
.insurance-price { font-size: calc(var(--font-size-display) * 2.6 / 3); }
.insurance-coverage { padding: 0px; list-style: none; }
.insurance-coverage li { align-items: baseline; gap: 10px; margin-block: 14px; line-height: 1.8; display: flex; }
.insurance-coverage svg { flex-shrink: 0; }
@media (min-width: 821px) and (hover: hover) and (pointer: fine){body:has(#introduction) .home-site.global-site-chrome { background: 0px 0px; min-height: 0px; }
body:has(#introduction) .topbar { transition: background-color 0.22s ease-out, border-color 0.22s ease-out, box-shadow 0.22s ease-out; }
body:has(#introduction) :is(.primary-navigation, .top-actions, .whatsapp-float, .community-float) { transition: opacity 0.22s ease-out, visibility 0.22s ease-out; }}
@media (prefers-reduced-motion: reduce){body:has(#introduction) :is(.topbar, .primary-navigation, .top-actions, .whatsapp-float, .community-float) { transition: none; }}
.solution-availability-group { min-width: 0px; margin-top: 3.5rem; }
.solution-availability-group > h2, .solution-availability-group > h3 { color: var(--text); margin: 0px 0px 1.4rem; font-size: clamp(calc(var(--font-size-heading-1) * 1.5 / 2.25), 3vw, calc(var(--font-size-heading-1) * 2.1 / 2.25)); }
.home-site .home-solution-card[data-media="text"] { grid-template-columns: minmax(0px, 1fr); }
.home-site .home-solution-card[data-media="text"] .home-solution-discuss { grid-column: 1; }
.home-site .home-solution-status { border: 1px solid var(--border); color: var(--text); border-radius: calc(var(--radius-status) * 2 * var(--root-px) / 4); padding: 0.3rem 0.8rem; font-size: var(--font-size-label); line-height: 1.5; display: inline-flex; }
.program-description { width: 100%; color: var(--text-secondary); font-size: var(--font-size-body); line-height: 1.9; display: block !important; }
.program-description p { margin: 0.75rem 0px; }
.program-description h4 { color: var(--text); margin: 1.25rem 0px 0.5rem; font-size: calc(var(--font-size-body) * 1.05); }
.program-description ul { gap: 0.6rem; margin: 0.5rem 0px 1.25rem; padding-inline-start: 1.25rem; display: grid; }
.program-description li { list-style: outside; display: list-item; }
.partnership-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 1.5rem; display: grid; }
.partnership-card { border: 1px solid var(--border); border-radius: var(--radius-surface,1.5rem); background: var(--surface); min-width: 0px; color: var(--text); flex-direction: column; gap: 1rem; padding: clamp(1.25rem, 3vw, 2rem); scroll-margin-top: 7rem; display: flex; }
.partnership-card > p { color: var(--text-secondary); margin: 0px; font-size: var(--font-size-body); line-height: 1.9; }
.partnership-card > a:last-child { border-radius: calc(var(--radius-control) * 0.75 * var(--root-px) / 14); min-width: 0px; margin-top: auto; font-size: calc(var(--font-size-body) * 0.9375); }
.partnership-date { border-bottom: 1px solid var(--border); align-self: flex-start; padding: 0.35rem 0px; font-size: calc(var(--font-size-body) * 0.9375); line-height: 1.8; }
.sector-partnership { flex-wrap: wrap; align-items: center; gap: 2rem; margin-top: 2rem; display: flex; }
.sector-partnership > a { width: 12rem; max-width: 100%; display: block; }
.sector-partnership > a img { object-fit: contain; width: 100%; height: 5rem; }
@media (max-width: 800px){.partnership-grid { grid-template-columns: minmax(0px, 1fr); }}
@media (max-width: 480px){.sector-partnership { gap: 1rem; }
.solution-availability-group { margin-top: 2.5rem; }}
/* Shared header: frame.css. */
[data-liquid-nav] :where(a, button, [role="tab"]):is([aria-selected="true"], [aria-pressed="true"], [aria-current]:not([aria-current="false"]), [data-active="true"], [aria-expanded="true"][aria-haspopup]) { background: var(--liquid-nav-middle); color: var(--liquid-nav-text); box-shadow: inset 0 0 0 1px var(--border-strong); transition: none; }
[data-liquid-nav] :where(a, button, [role="tab"]):focus-visible { outline: 2px solid var(--focus); outline-offset: -2px; }
@media (forced-colors: active){[data-liquid-nav] :where(a, button, [role="tab"]):is([aria-selected="true"], [aria-pressed="true"], [aria-current]:not([aria-current="false"]), [data-active="true"]) { color: highlighttext; background: highlight; outline: highlight solid 1px; }}
:root:not([data-theme="dark"]) .organisation-logo_art[data-organisation-logo] { background: 0px 0px; filter: none !important; }
:root[data-theme="dark"] .organisation-logo_art[data-organisation-logo] { filter: brightness(0) invert() !important; }
.organisation-logo_link { width: 100%; height: 100%; min-height: 44px; color: inherit; justify-content: center; align-items: center; display: flex; }
.organisation-logo_link:focus-visible { outline: 2px solid var(--brand-mist); outline-offset: 4px; border-radius: var(--radius-status); }
:root .organisation-logo_art[data-organisation-logo][data-logo-tone="white"] { filter: brightness(0) invert() !important; }
.organisation-logo_mutedFrame { width: 100%; height: 100%; max-width: inherit; max-height: inherit; display: block; position: relative; }
.organisation-logo_mutedFrame::before { content: ""; background: var(--logo-monochrome,var(--brand-ink)); mask: var(--organisation-mask) center/contain no-repeat; transition: opacity 0.16s; position: absolute; inset: 0px; }
:root[data-theme="dark"] .organisation-logo_mutedFrame::before { background: var(--logo-monochrome,var(--brand-paper)); }
.organisation-logo_mutedFrame:hover::before, .organisation-logo_link:hover .organisation-logo_mutedFrame::before { opacity: 0; }
@media (prefers-reduced-motion: reduce){.organisation-logo_mutedFrame::before, :root .organisation-logo_art[data-logo-tone="muted-interactive"] { transition: none; }}
.organisation-logo_mutedFrame[data-foreground-tone="true"]::before { background: var(--text); opacity: 1 !important; }
:root .organisation-logo_art[data-organisation-logo][data-logo-tone="foreground"] { opacity: 0 !important; }
.event-title_mark { vertical-align: middle; justify-content: center; align-items: center; width: min(100%, 44rem); max-width: 100%; line-height: 0; display: inline-flex; }
.event-title_mark .event-title_art { object-fit: contain; width: 100%; height: auto; display: block; }
.event-title_mark[data-event-title-variant="hero"] { width: min(100%, 52rem); }
/* Shared brand frame: frame.css. */
:root:not([data-theme="dark"]) .organisation-logo_art[data-organisation-logo][data-logo-tone="mono"] { filter: brightness(0) !important; }
.event-identity_identities { width: 100%; color: var(--text); justify-content: space-between; align-items: center; gap: 32px; padding: 24px 0px; display: flex; }
.event-identity_firm, .event-identity_partner { flex-shrink: 1; width: clamp(150px, 18vw, 240px); max-width: 45%; display: block; }
.event-identity_partner { justify-content: flex-end; align-items: center; min-height: 56px; display: flex; }
.event-identity_partner img { object-fit: contain; width: 100%; height: auto; max-height: 72px; display: block; }
.event-identity_firm:focus-visible { outline-offset: 6px; outline: solid 2px; }
@media (max-width: 600px){.event-identity_identities { gap: 24px; padding: 20px 0px; }
.event-identity_partner { min-height: 44px; }
.event-identity_partner img { max-height: 56px; }}
.professional-portrait_frame { border-radius: var(--radius-surface); background: var(--portrait-background, var(--brand-paper)); isolation: isolate; min-width: 0px; aspect-ratio: var(--portrait-frame-aspect); box-sizing: border-box; grid-template-rows: minmax(0px, 1fr); grid-template-columns: minmax(0px, 1fr); place-items: stretch; gap: 0px; margin: 0px; padding: 0px; display: grid; position: relative; overflow: hidden; }
.professional-portrait_frame img { object-fit: contain; object-position: center bottom; width: 100%; max-width: 100%; height: 100%; max-height: 100%; display: block; filter: none !important; }
.professional-portrait_event { border-radius: calc(var(--radius-surface) * 16 / 24); width: 100%; }
.professional-portrait_imageArea { width: 100%; min-width: 0px; height: 100%; min-height: 0px; display: block; position: relative; overflow: hidden; }
.media-image_portraitViewport { width: 100%; height: 100%; aspect-ratio: var(--portrait-aspect); display: block; position: relative; overflow: hidden; container-type: size; }
.media-image_portraitCanvas { width: 100%; aspect-ratio: var(--portrait-aspect); display: block; position: absolute; bottom: 0px; left: 50%; overflow: hidden; transform: translate(-50%); }
@supports (width:1cqw){.media-image_portraitCanvas { width: min(100cqw,var(--portrait-width-from-height)); height: min(var(--portrait-height-from-width),100cqh); }}
.media-image_portraitSubject { left: var(--portrait-left); top: var(--portrait-top); width: var(--portrait-width); height: var(--portrait-height); display: block; position: absolute; }
.media-image_portraitViewport .media-image_portraitSubject img { object-fit: contain; object-position: center center; filter: none; width: 100%; min-width: 0px; max-width: none; height: 100%; min-height: 0px; max-height: none; display: block; transform: scale(1); }
.invitation_page { width: min(var(--layout-shell-width),1040px); color: var(--text); --invitation-space: clamp(22px,4.5vw,52px); --section-space: clamp(32px,4.5vw,48px); margin: 0px auto; padding-block: clamp(28px, 5vw, 56px) 72px; }
.invitation_back { color: var(--text-muted); text-underline-offset: 5px; margin-bottom: 22px; font-size: var(--font-size-body); display: inline-block; }
.invitation_invitation { border: 1px solid var(--border); border-radius: var(--radius-surface); background: var(--surface); box-shadow: 0 24px 72px color-mix(in srgb,var(--brand-ink) 9%,transparent); overflow: hidden; }
.invitation_hero { padding: clamp(36px,5vw,56px) var(--invitation-space); background: var(--brand-ink); color: var(--brand-white); text-align: center; }
.invitation_hero h1 { text-wrap: balance; max-width: 22ch; color: inherit; margin: 0px auto; font-size: clamp(calc(var(--font-size-display) * 2 / 3), 4.2vw, calc(var(--font-size-display) * 3.25 / 3)); font-weight: max(var(--font-weight-body), calc(var(--font-weight-display) - 200)); line-height: 1.4; }
.invitation_hero > p { max-width: 62ch; color: inherit; margin: 18px auto 0px; font-size: var(--font-size-heading-4); line-height: 1.9; }
.invitation_heroAction { border: 1px solid var(--brand-mist); min-height: 52px; color: var(--brand-ink); background: var(--brand-mist); border-radius: calc(var(--radius-control) * 12 / 14); justify-content: center; align-items: center; gap: 24px; margin-top: 26px; padding: 12px 28px; font-weight: calc(var(--font-weight-body) + 200); text-decoration: none; transition: background-color 0.18s, box-shadow 0.18s; display: inline-flex; }
.invitation_heroAction:hover { background: var(--brand-white); box-shadow: 0 4px 18px color-mix(in srgb,var(--brand-night) 16%,transparent); }
.invitation_content { padding: 0 var(--invitation-space); }
.invitation_facts { background: var(--brand-ink); color: var(--brand-white); margin: var(--section-space) 0 0; text-align: center; border-radius: calc(var(--radius-surface) * 16 / 24); grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 0px; padding: 28px 12px; display: grid; }
.invitation_facts > div { flex-direction: column; justify-content: center; min-width: 0px; padding: 4px 18px; display: flex; }
.invitation_facts > div + div { border-inline-start: 1px solid color-mix(in srgb,var(--brand-mist) 32%,transparent); }
.invitation_facts dt { color: var(--brand-mist); margin: 0px 0px 10px; font-size: var(--font-size-label); line-height: 1.6; }
.invitation_facts dd { text-wrap: balance; margin: 0px; font-size: calc(var(--font-size-heading-4) * 1.0625 / 1.125); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.8; }
.invitation_facts a { color: inherit; min-height: 44px; text-decoration: none; display: inline-block; }
.invitation_mapLabel { color: var(--brand-mist); text-underline-offset: 5px; margin-top: 6px; font-size: var(--font-size-label); text-decoration: underline; display: block; }
.invitation_facts a:hover .invitation_mapLabel { color: var(--brand-white); }
.invitation_section { padding-top: var(--section-space); }
.invitation_section h2 { text-align: center; text-wrap: balance; align-items: center; gap: 20px; margin: 0px 0px 24px; font-size: var(--font-size-heading-3); font-weight: max(var(--font-weight-body), calc(var(--font-weight-heading-3) - 100)); line-height: 1.6; display: flex; }
.invitation_section h2::before, .invitation_section h2::after { content: ""; background: var(--border); flex: 1 1 0%; height: 1px; }
.invitation_people { grid-template-columns: repeat(var(--guest-count),minmax(0,1fr)); justify-content: center; gap: 18px; margin: 0px; padding: 0px; list-style: none; display: grid; }
.invitation_people > li { grid-template-rows: subgrid; text-align: center; grid-row: span 3; align-content: start; justify-self: center; row-gap: 0px; width: 100%; min-width: 0px; max-width: 260px; display: grid; }
.invitation_portrait { margin-bottom: 14px; }
.invitation_personName { color: var(--text); font-size: calc(var(--font-size-heading-4) * 1.0625 / 1.125); font-weight: max(var(--font-weight-body), calc(var(--font-weight-heading-4) - 100)); line-height: 1.6; text-decoration: none; display: block; }
a.invitation_personName { text-decoration-line: underline; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: var(--border); text-underline-offset: 5px; }
a.invitation_personName:hover { text-underline-offset: 4px; text-decoration: underline; }
.invitation_personRole { color: var(--text-muted); text-wrap: pretty; margin: 5px 0px 0px; font-size: var(--font-size-label); line-height: 1.7; }
.invitation_topics { grid-template-columns: 1fr 1fr; grid-auto-flow: column; grid-template-rows: repeat(var(--topic-rows),auto); column-gap: 36px; margin: 0px; padding: 0px; list-style: none; display: grid; }
.invitation_topics li { border-bottom: 1px solid var(--border); align-items: flex-start; gap: 14px; padding: 16px 0px; font-size: calc(var(--font-size-heading-4) * 1.0625 / 1.125); line-height: 1.9; display: flex; }
.invitation_topicNumber { background: var(--surface-soft); height: 30px; color: var(--text-muted); font-variant-numeric: tabular-nums; border-radius: 50%; flex: 0 0 30px; place-items: center; margin-top: 2px; font-size: var(--font-size-label); display: grid; }
.invitation_signature { padding-block: var(--section-space); justify-content: center; align-items: center; gap: 28px; font-size: var(--font-size-heading-4); display: flex; }
.invitation_registration { padding: var(--section-space) var(--invitation-space); background: var(--surface-soft); border-top: 1px solid var(--border); scroll-margin-top: 110px; }
.invitation_registration h2 { margin: 0px 0px 8px; font-size: var(--font-size-heading-2); line-height: 1.4; }
.invitation_intro { color: var(--text-muted); margin: 0px 0px 24px; font-size: var(--font-size-body); line-height: 1.8; }
.invitation_form { gap: 20px; display: grid; }
.invitation_fields { grid-template-columns: 1fr 1fr; gap: 16px; display: grid; }
.invitation_field { gap: 8px; font-size: calc(var(--font-size-body) * 0.9375); font-weight: calc(var(--font-weight-body) + 100); display: grid; }
.invitation_field :is(input, select) { border: 1px solid var(--border); background: var(--surface); width: 100%; min-width: 0px; min-height: 52px; color: var(--text); font: inherit; caret-color: var(--text); border-radius: calc(var(--radius-input) * 12 / 14); padding: 12px 14px; }
.invitation_field input::placeholder { color: var(--text-muted); opacity: 1; }
.invitation_consent { color: var(--text-muted); align-items: flex-start; gap: 10px; font-size: var(--font-size-label); line-height: 1.8; display: flex; }
.invitation_consent input { width: 20px; height: 20px; accent-color: var(--brand-ink); flex: 0 0 20px; margin-top: 3px; }
.invitation_submitRow { flex-wrap: wrap; align-items: center; gap: 24px; display: flex; }
.invitation_submit { min-height: 52px; font-style: inherit; font-variant: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: var(--text); color: var(--surface); cursor: pointer; border: 0px; border-radius: calc(var(--radius-control) * 12 / 14); padding: 12px 28px; font-weight: calc(var(--font-weight-body) + 200); }
.invitation_submit:hover { opacity: 0.88; }
.invitation_submit:disabled { opacity: 0.6; cursor: wait; }
.invitation_notice { color: var(--text-muted); margin: 0px; font-size: var(--font-size-label); line-height: 1.8; }
.invitation_success { gap: 16px; line-height: 1.9; display: grid; }
.invitation_success p { margin: 0px; }
.invitation_success .invitation_submit { justify-self: start; }
.invitation_error { color: var(--text); border: 1px solid var(--border); border-radius: calc(var(--radius-surface) * 12 / 24); padding: 12px; line-height: 1.8; }
.invitation_downloadCard { border-block: 1px solid var(--border); gap: 14px; padding-block: 20px; display: grid; }
.invitation_downloadCard > p:first-child { font-weight: calc(var(--font-weight-body) + 100); }
.invitation_download { justify-content: center; align-items: center; gap: 12px; display: inline-flex; }
.invitation_download svg { flex-shrink: 0; }
.invitation_fileType { letter-spacing: 0.06em; border-inline-start: 1px solid; padding-inline-start: 12px; font-size: var(--font-size-caption); line-height: 1.3; }
.invitation_anotherGuest { min-height: 44px; color: var(--text-muted); font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; text-underline-offset: 5px; cursor: pointer; background: 0px 0px; border: 0px; justify-self: start; padding: 8px 0px; font-size: calc(var(--font-size-body) * 0.9375); text-decoration: underline; }
.invitation_anotherGuest:hover { color: var(--text); }
.invitation_anotherGuest:disabled { opacity: 0.6; cursor: wait; }
.invitation_calendarActions { padding: 22px var(--invitation-space); color: var(--text-muted); flex-wrap: wrap; justify-content: center; align-items: center; gap: 20px; font-size: var(--font-size-label); display: flex; }
.invitation_calendarActions a { border: 1px solid var(--border); min-height: 44px; color: var(--text); text-underline-offset: 4px; border-radius: calc(var(--radius-control) * 10 / 14); justify-content: center; align-items: center; padding: 8px 16px; display: inline-flex; }
.invitation_calendarActions a:hover { background: var(--surface-soft); }
.invitation_page :is(a, button, input, select):focus-visible { outline: 3px solid var(--text); outline-offset: 4px; }
.invitation_page ::selection { background: var(--brand-mist); color: var(--brand-ink); }
@media (max-width: 700px){.invitation_people { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 24px 18px; }
.invitation_people > li:last-child:nth-child(2n+1) { grid-column: 1 / -1; width: calc(50% - 9px); }
.invitation_topics { grid-template-rows: none; grid-template-columns: 1fr; grid-auto-flow: row; }
.invitation_fields { grid-template-columns: 1fr; }
.invitation_facts { grid-template-columns: 1fr; gap: 0px; padding: 8px 24px; }
.invitation_facts > div { padding: 22px 0px; }
.invitation_facts > div + div { border-inline-start: 0px; border-top: 1px solid color-mix(in srgb,var(--brand-mist) 32%,transparent); }
.invitation_signature { gap: 16px; }
.invitation_calendarActions { gap: 14px; }
.invitation_hero h1 { font-size: calc(var(--font-size-heading-1) * 2 / 2.25); }
.invitation_hero > p { font-size: var(--font-size-body); }
.invitation_invitation { border-radius: var(--radius-surface); }
.invitation_section h2 { gap: 12px; font-size: calc(var(--font-size-heading-3) * 1.25 / 1.375); }
.invitation_submitRow { flex-direction: column; align-items: stretch; gap: 14px; }
.invitation_submit { width: 100%; }}
.invitation_page .invitation_heroAction:focus-visible { outline-color: var(--brand-mist); }
.invitation_registration > .invitation_notice { margin-block: 0px 20px; }
.invitation_welcome { text-align: center; margin-top: var(--section-space); background: var(--surface-soft); border-radius: calc(var(--radius-surface) * 16 / 24); padding: 28px clamp(16px, 3vw, 32px); }
.invitation_welcome p { text-wrap: pretty; max-width: 64ch; margin: 0px auto 10px; font-size: var(--font-size-heading-4); line-height: 1.9; }
.invitation_welcome > span { color: var(--text-muted); font-size: var(--font-size-label); }
.invitation_hero .invitation_eyebrow { color: var(--brand-mist); margin: 0px auto 16px; font-size: calc(var(--font-size-body) * 0.9375); line-height: 1.6; }
.invitation_facts a:focus-visible { outline-color: var(--brand-mist); }
@media (prefers-reduced-motion: reduce){.invitation_heroAction { transition: none; }}
.invitation_hero h1:has([data-event-title-logo]) { max-width: min(100%, 52rem); line-height: 0; }
.contact-channel-icon_badge { width: 44px; height: 44px; color: var(--brand-white); background: var(--contact-whatsapp); border-radius: calc(var(--radius-surface) * 13 / 24); flex-shrink: 0; justify-content: center; align-items: center; display: inline-flex !important; }
.contact-channel-icon_badge[data-contact-icon="phone"] { background: var(--contact-phone); }
.contact-channel-icon_badge svg { color: inherit; flex-shrink: 0; display: block; }
@media (forced-colors: active){.contact-channel-icon_badge { color: buttontext; background: buttonface; border: 1px solid buttontext; }}
.site-footer_ending { color: var(--text); background: var(--canvas); }
.site-footer_newsletter { padding: 48px var(--page-gutter); border-top: 1px solid var(--border); }
.site-footer_ending .site-footer_footer { padding: 28px var(--page-gutter) calc(var(--site-dock-height,0px) + 20px + env(safe-area-inset-bottom)); color: var(--text); background: var(--surface); border-top: 1px solid var(--border); }
.site-footer_primary { border-bottom: 1px solid var(--border); grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr); align-items: center; gap: 32px 48px; padding-bottom: 32px; display: grid; }
.site-footer_identity { justify-items: start; min-width: 0px; display: grid; }
.site-footer_identity .footer-brand { justify-items: start; width: auto; }
.site-footer_platforms { flex-wrap: wrap; align-items: center; gap: 10px; margin: 0px; padding: 0px; display: flex; }
.site-footer_platforms .site-footer_platform { border: 1px solid var(--border); width: 44px; height: 44px; color: var(--text); background: var(--surface); border-radius: 50%; flex: 0 0 44px; justify-content: center; align-items: center; padding: 0px; text-decoration: none; display: flex; }
.site-footer_platform:hover { background: var(--surface-soft); }
.site-footer_map { border: 1px solid var(--border); background: var(--surface); border-radius: calc(var(--radius-surface) * 12 / 24); justify-self: end; width: 100%; max-width: 460px; overflow: hidden; }
.site-footer_map iframe { border: 0px; width: 100%; height: 160px; display: block; }
.site-footer_map > a { box-sizing: border-box; min-height: 44px; color: var(--text); justify-content: space-between; align-items: center; gap: 16px; padding: 10px 16px; font-size: calc(var(--font-size-label) * 15 / (0.875 * var(--root-px))); text-decoration: none; display: flex; }
.site-footer_bottom { flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px 24px; padding-top: 20px; display: flex; }
.site-footer_bottom a { color: var(--text); text-underline-offset: 4px; }
.site-footer_credit { white-space: nowrap; align-items: center; gap: 10px; min-height: 44px; font-size: calc(var(--font-size-caption) * 13 / (0.75 * var(--root-px))); text-decoration: none; display: inline-flex; }
.site-footer_credit img { object-fit: contain; width: 58px; height: 26px; }
.site-footer_platform:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
.site-footer_credit:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
.site-footer_map > a:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
@media (max-width: 650px){.site-footer_newsletter { padding-block: 36px; }
.site-footer_ending .site-footer_footer { padding-top: 28px; }
.site-footer_primary { grid-template-columns: minmax(0px, 1fr); gap: 28px; padding-bottom: 24px; }
.site-footer_map { justify-self: stretch; max-width: none; }
.site-footer_bottom { flex-direction: column; align-items: start; gap: 8px; padding-top: 16px; }}
.contact-quick-actions_actions { z-index: 320; inset-inline-end: max(16px, env(safe-area-inset-left), env(safe-area-inset-right)); bottom: max(24px, env(safe-area-inset-bottom)); gap: 8px; display: grid; position: fixed; }
.contact-quick-actions_actions a { padding: 4px 12px 4px 4px; border: 1px solid var(--border-strong); background: var(--surface); min-height: 52px; color: var(--text); box-shadow: 0 4px 18px color-mix(in srgb, var(--brand-night) 22%, transparent); border-radius: calc(var(--radius-control) * 17 / 14); align-items: center; gap: 10px; padding-inline: 4px 14px; font-size: calc(var(--font-size-body) * 0.9375); font-weight: calc(var(--font-weight-body) + 300); line-height: 1.5; text-decoration: none; display: flex; }
.contact-quick-actions_actions a:focus-visible { outline: 3px solid var(--focus); outline-offset: 4px; }
@media (hover: hover){.contact-quick-actions_actions a:hover { background: var(--surface-soft); }}
@media (max-width: 859px){.contact-quick-actions_actions { bottom: calc(var(--site-dock-height,76px) + 12px + env(safe-area-inset-bottom)); }}
/* Keep the footer's links and credit clear of the firm's fixed contact controls. */
.contact-quick-actions_actions { max-height: calc(100svh - var(--site-dock-height,0px) - var(--top) - 100px); overflow-y: auto; }
@media (min-width: 860px){body:has(.contact-quick-actions_actions) .site-footer_bottom { padding-inline-end: calc(var(--site-contact-width,160px) + 20px); }}
@media (max-width: 859px){body:has(.contact-quick-actions_actions) .site-footer_ending .site-footer_footer { padding-bottom: calc(var(--site-dock-height,76px) + var(--site-contact-height,116px) + 36px + env(safe-area-inset-bottom)); }}
/* Enhanced contact controls retire as the footer enters view, so only the
   visible mobile dock needs space beneath the final credit. */
@media (max-width: 859px){body:has([data-contact-footer-aware]) .site-footer_ending .site-footer_footer,
body:not(:has(.contact-quick-actions_actions)) .site-footer_ending .site-footer_footer { padding-bottom: calc(var(--site-dock-height,0px) + 20px + env(safe-area-inset-bottom)); }}
@media (forced-colors: active){.contact-quick-actions_actions a { border: 1px solid buttontext; }}
@media print{.contact-quick-actions_actions { display: none; }}
:root[data-theme="dark"] .organisation-logo_art[data-organisation-dark-variant="true"] { content: var(--organisation-dark-image); }
:root .organisation-logo_art[data-organisation-logo][data-logo-tone="slider"] { opacity: 1; background: 0px 0px; filter: var(--logo-slider-filter) !important; }
.newsletter-form_form { text-align: start; width: 100%; max-width: 680px; color: var(--text); gap: 10px; margin-inline: auto; display: grid; }
.newsletter-form_form h2 { margin: 0px; font-size: calc(var(--font-size-heading-3) * 1.25 / 1.375); line-height: 1.5; }
.newsletter-form_form p { color: var(--text-secondary); margin: 0px; font-size: var(--font-size-body); line-height: 1.75; }
.newsletter-form_sectors { border: 1px solid var(--border); background: var(--surface); border-radius: calc(var(--radius-input) * 10 / 14); }
.newsletter-form_sectors summary { cursor: pointer; box-sizing: border-box; min-height: 44px; padding: 10px 12px; font-size: var(--font-size-label); }
.newsletter-form_sectors fieldset { border: 0px; gap: 4px; max-height: 280px; margin: 0px; padding: 8px 12px 12px; display: grid; overflow: auto; }
.newsletter-form_sectors legend { color: var(--text-secondary); padding: 4px 0px; font-size: var(--font-size-label); }
.newsletter-form_sectors label { cursor: pointer; align-items: center; gap: 10px; min-height: 44px; font-size: var(--font-size-label); display: flex; }
.newsletter-form_sectors input { width: 18px; height: 18px; accent-color: var(--action); flex: 0 0 auto; }
.newsletter-form_sectors .newsletter-form_selectAll { border-bottom: 1px solid var(--border); margin-bottom: 4px; padding-bottom: 4px; font-weight: calc(var(--font-weight-body) + 300); }
.newsletter-form_emailRow { grid-template-columns: minmax(0px, 1fr) auto; gap: 8px; display: grid; }
.newsletter-form_emailRow input, .newsletter-form_emailRow button { font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; border: 1px solid var(--border); background: var(--surface); min-width: 0px; min-height: 44px; color: var(--text); box-sizing: border-box; border-radius: calc(var(--radius-input) * 10 / 14); width: 100%; padding: 10px 12px; font-size: var(--font-size-label); }
.newsletter-form_emailRow button { background: var(--action); color: var(--on-action); cursor: pointer; width: auto; }
.newsletter-form_form :disabled { opacity: 0.45; cursor: not-allowed; }
.newsletter-form_form :focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; }
.newsletter-form_form .newsletter-form_consent { font-size: calc(var(--font-size-label) * 0.8125 / 0.875); line-height: 1.6; }
@media (max-width: 380px){.newsletter-form_emailRow { grid-template-columns: 1fr; }
.newsletter-form_form { gap: 8px; }}
@media (max-width: 650px){.newsletter-form_emailRow input { font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); }}
.hero-motion_media { z-index: -1; pointer-events: none; position: absolute; inset: 0px; overflow: hidden; }
.hero-motion_media img, .hero-motion_media video { object-fit: cover; object-position: center center; width: 100%; height: 100%; display: block; position: absolute; inset: 0px; }
.home-hero_hero { isolation: isolate; min-height: calc(100svh - 96px - env(safe-area-inset-top)); color: var(--brand-white); background: var(--brand-night); grid-template-columns: minmax(0px, 1fr); align-items: center; display: grid; position: relative; }
.home-hero_hero::after { content: ""; z-index: 0; pointer-events: none; background: linear-gradient(270deg,color-mix(in srgb,var(--brand-night) 84%,transparent) 0%,color-mix(in srgb,var(--brand-night) 67%,transparent) 48%,color-mix(in srgb,var(--brand-night) 18%,transparent) 100%); position: absolute; inset: 0px; }
[dir="ltr"] .home-hero_hero::after { transform: scaleX(-1); }
.home-hero_shell { z-index: 1; width: var(--layout-shell-width); min-width: 0px; max-width: 100%; margin-inline: auto; padding-block: clamp(72px, 10vh, 144px) 112px; position: relative; }
.home-hero_contact { min-height: 56px; color: var(--brand-ink); background: var(--brand-white); border: 1px solid var(--brand-white); border-radius: var(--radius-control); justify-content: center; align-items: center; margin-top: 36px; padding: 12px 28px; font-size: var(--font-size-heading-4); font-weight: var(--font-weight-heading-4); text-decoration: none; transition: background 0.18s ease-out, color 0.18s ease-out; display: inline-flex; }
.home-hero_contact:hover { background: var(--brand-mist); border-color: var(--brand-mist); }
.home-hero_contact:focus-visible { outline: 3px solid var(--brand-white); outline-offset: 6px; }
@media (max-width: 820px){.home-hero_hero { min-height: calc(100svh - 92px - env(safe-area-inset-top)); }
.home-hero_shell { padding-block: 64px 148px; }
.home-hero_contact { margin-top: 28px; }
.home-hero_hero::after { background: linear-gradient(180deg,color-mix(in srgb,var(--brand-night) 53%,transparent),color-mix(in srgb,var(--brand-night) 78%,transparent)); }}
@media (prefers-reduced-motion: reduce){.home-hero_contact { transition: none; }}
@media (min-width: 821px) and (hover: hover) and (pointer: fine){.home-hero_hero { min-height: 100svh; }
.home-hero_shell { padding-block: 128px 112px; }}
.home-hero_slide { align-content: center; min-height: 390px; }
.home-hero_controls { inset-inline: 0px; align-items: center; gap: 24px; display: flex; position: absolute; bottom: 30px; }
.home-hero_tabs { flex: 1 1 0%; gap: 24px; max-width: 660px; display: flex; }
.home-hero_tabs button { min-height: 52px; color: var(--brand-white); text-align: start; cursor: pointer; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: 0px 0px; border: 0px; flex: 1 1 0%; grid-template-rows: 1fr 3px; align-items: center; gap: 12px; padding: 0px; font-size: calc(var(--font-size-label) * 0.9 / 0.875); display: grid; }
.home-hero_progress { background: color-mix(in srgb,var(--brand-white) 30%,transparent); width: 100%; height: 3px; display: block; overflow: hidden; }
.home-hero_progressFill { background: var(--brand-white); transform-origin: 100% center; width: 100%; height: 100%; display: block; transform: scaleX(0); }
[dir="ltr"] .home-hero_progressFill { transform-origin: 0px center; }
.home-hero_tabs button:not([aria-current]) { color: rgba(255, 255, 255, 0.7); }
:is(.home-hero_hero a:focus-visible, .home-hero_controls button:focus-visible) { outline-offset: 6px; outline: rgb(255, 255, 255) solid 2px; }
@media (max-width: 820px){.home-hero_slide { min-height: 510px; }
.home-hero_controls { gap: 14px; bottom: 64px; }
.home-hero_tabs { gap: 12px; }
.home-hero_tabs button { font-size: calc(var(--font-size-caption) * 0.76 / 0.75); }
.home-hero_shell { padding-block: 56px 148px; }}
@media (max-width: 700px){.home-hero_tabs { scrollbar-width: thin; gap: 14px; overflow-x: auto; }
.home-hero_tabs button { white-space: nowrap; flex: 0 0 auto; min-width: 70px; }
.home-hero_tabs button:last-child { min-width: 132px; }
.home-hero_controls { align-items: center; }}
.home-hero_slide { min-height: 440px; animation: 0.6s ease 0s 1 normal both running _home-card-reveal_bic9z_1; }
.home-hero_shell { padding-block: 120px 112px; }
.home-hero_tabs { max-width: 900px; }
.home-hero_tabs button, .home-hero_tabs button:last-child { min-width: 0px; }
@media (max-width: 820px){.home-hero_shell { padding-block: 65px 155px; }
.home-hero_slide { min-height: 530px; }
.home-hero_tabs { gap: 15px; }
.home-hero_tabs button { white-space: normal; flex: 1 1 0%; min-width: 65px; }
.home-hero_tabs button:last-child { min-width: 65px; }}
@media (prefers-reduced-motion: reduce){.home-hero_slide { animation: auto ease 0s 1 normal none running none; }}
.home-hero_controls { gap: 18px; }
.home-hero_controls .home-hero_tabs { gap: 8px; overflow: visible; }
.home-hero_controls .home-hero_tabs button, .home-hero_controls .home-hero_tabs button:last-child { flex: 1 1 0%; align-items: center; min-width: 0px; min-height: 44px; padding: 0px; display: flex; }
.home-hero_controls .home-hero_tabs .home-hero_progress { border-radius: calc(var(--radius-status) * 2 / 4); height: 3px; }
.section-explore_row { justify-content: center; align-items: center; margin-block-start: clamp(24px, 3vw, 36px); display: flex; }
.section-explore_link { border-radius: var(--radius-control); background: color-mix(in srgb,var(--text) 6%,transparent); width: fit-content; max-width: 100%; min-height: 48px; color: var(--text); text-align: center; border: 0px; justify-content: center; align-items: center; gap: 12px; padding: 12px 20px; font-size: var(--font-size-body); font-weight: calc(var(--font-weight-body) + 300); line-height: 1.5; text-decoration: none; transition: background 0.18s ease-out; display: inline-flex; }
.section-explore_link:hover { background: color-mix(in srgb,var(--text) 12%,transparent); }
.section-explore_link:focus-visible { outline-offset: 4px; outline: solid 2px; }
.section-explore_link svg { flex: 0 0 auto; }
[dir="rtl"] .section-explore_link svg { transform: rotate(180deg); }
@media (prefers-reduced-motion: reduce){.section-explore_link { transition: none; }}
.programme-card_card { min-width: 0px; color: var(--text); box-sizing: border-box; grid-template-columns: minmax(0px, 1.25fr) minmax(0px, 0.85fr); align-items: center; gap: clamp(30px, 5vw, 100px); height: 100%; display: grid; }
.programme-card_copy { min-width: 0px; }
.programme-card_eyebrow { color: var(--text-secondary); align-items: center; gap: 0.65em; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); line-height: 1.6; display: flex; }
.programme-card_eyebrow i { background: var(--text-secondary); border-radius: 50%; width: 6px; height: 6px; }
.programme-card_copy h1, .programme-card_copy h2 { letter-spacing: -0.025em; text-wrap: balance; margin: 20px 0px 24px; font-size: clamp(calc(var(--font-size-display) * 32 / (3 * var(--root-px))), 4vw, calc(var(--font-size-display) * 64 / (3 * var(--root-px)))); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.45; }
.programme-card_copy h1 { font-size: clamp(calc(var(--font-size-display) * 45 / (3 * var(--root-px))), 5.8vw, calc(var(--font-size-display) * 88 / (3 * var(--root-px)))); line-height: 1.3; }
.programme-card_copy p { max-width: 54ch; color: var(--text-secondary); margin: 0px; font-size: clamp(calc(var(--font-size-heading-4) * 16 / (1.125 * var(--root-px))), 1.35vw, calc(var(--font-size-heading-4) * 21 / (1.125 * var(--root-px)))); line-height: 1.9; }
.programme-card_card a:focus-visible { outline: 2px solid var(--focus); outline-offset: 5px; }
.programme-card_visual { isolation: isolate; place-items: center; min-width: 0px; padding: 30px; display: grid; position: relative; }
.programme-card_visual::before { content: ""; z-index: -1; background: radial-gradient(ellipse,color-mix(in srgb,var(--brand-mist) 24%,transparent),transparent 70%); border-radius: 50%; position: absolute; inset: 0px; }
.programme-card_sculpture { aspect-ratio: 1 / 1; place-items: center; width: 100%; max-width: 360px; display: grid; position: relative; }
.programme-card_sculpture > div { border: 1px solid color-mix(in srgb,var(--border) 65%,transparent); background: linear-gradient(135deg,color-mix(in srgb,var(--surface) 30%,transparent),color-mix(in srgb,var(--brand-mist) 8%,transparent)); border-radius: 40%; width: 85%; height: 85%; position: absolute; transform: rotate(35deg); }
.programme-card_sculpture > div:nth-child(2) { width: 65%; height: 65%; transform: rotate(55deg); }
.programme-card_sculpture > div:nth-child(3) { width: 44%; height: 44%; transform: rotate(75deg); }
.programme-card_sculpture > svg, .programme-card_sculpture > span { z-index: 1; opacity: 0.65; }
@media (max-width: 820px){.programme-card_card { grid-template-columns: 1fr; gap: 30px; }
.programme-card_copy h1 { font-size: calc(var(--font-size-display) * 48 / (3 * var(--root-px))); }
.programme-card_copy p { font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); }
.programme-card_visual { box-sizing: border-box; justify-self: center; width: 100%; max-width: 320px; padding: 15px; }
.programme-card_card[data-programme-kind="intro"] .programme-card_visual { display: none; }}
@media (min-width: 821px) and (max-height: 800px){.programme-card_card[data-variant="home"] .programme-card_copy p { font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); line-height: 1.75; }}
.programme-card_card { isolation: isolate; position: relative; }
.programme-card_card > .programme-card_copy, .programme-card_card > .programme-card_visual, .programme-card_card > .programme-card_qr { z-index: 1; position: relative; }
/* A typed hero slide's own visual (hero-slide): images, logos, a list, a date or an illustrative conversation, each within the card's visual column. */
.hero-slide_visual { box-sizing: border-box; width: 100%; max-width: 420px; justify-self: center; }
.hero-slide_images { box-sizing: border-box; width: 100%; gap: 14px; display: grid; }
.hero-slide_images[data-count="2"] { grid-template-columns: repeat(2, minmax(0px, 1fr)); align-items: center; }
.hero-slide_images img { box-sizing: border-box; border-radius: var(--radius-surface); justify-self: center; width: auto; max-width: 100%; height: auto; max-height: 340px; display: block; }
.hero-slide_logos { box-sizing: border-box; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 12px; width: 100%; margin: 0px; padding: 0px; list-style: none; display: grid; }
.hero-slide_logos li { box-sizing: border-box; background: var(--brand-white); border-radius: var(--radius-surface); place-items: center; min-width: 0px; min-height: 72px; padding: 12px; display: grid; }
.hero-slide_logos img { object-fit: contain; width: auto; max-width: 100%; height: auto; max-height: 44px; display: block; }
.hero-slide_logos[data-count="4"] { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
.hero-slide_logos small { color: var(--brand-ink); text-align: center; font-size: var(--font-size-caption); line-height: 1.6; }
.hero-slide_rating { color: var(--brand-white); align-items: baseline; gap: 10px; margin: 18px 0px 0px; font-size: calc(var(--font-size-label) * 15 / (0.875 * var(--root-px))); line-height: 1.6; display: flex; }
.hero-slide_rating b { font-variant-numeric: tabular-nums; font-size: calc(var(--font-size-heading-2) * 34 / (1.75 * var(--root-px))); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.2; }
.hero-slide_stars { gap: 3px; display: flex; }
.hero-slide_stars [data-filled="true"] svg { fill: currentColor; }
.hero-slide_stars [data-filled="false"] path { fill: none; stroke: currentColor; stroke-width: 1.5; }
.hero-slide_reviews { color: var(--brand-white); font-size: var(--font-size-caption); text-underline-offset: 4px; }
.hero-slide_resources { box-sizing: border-box; gap: 10px; width: 100%; margin: 0px; padding: 0px; list-style: none; display: grid; }
.hero-slide_resources li { box-sizing: border-box; color: var(--brand-white); overflow-wrap: anywhere; border: 1px solid color-mix(in srgb,var(--brand-white) 30%,transparent); border-radius: var(--radius-surface); padding: 12px 16px; font-size: calc(var(--font-size-label) * 15 / (0.875 * var(--root-px))); line-height: 1.7; }
.hero-slide_resources a { color: inherit; text-underline-offset: 4px; }
.hero-slide_resources a, .hero-slide_resources li > div { align-items: center; gap: 14px; display: flex; text-decoration: none; }
.hero-slide_resources span { flex: 1; }
.hero-slide_resources svg { flex: 0 0 auto; }
.hero-slide_date { box-sizing: border-box; color: var(--brand-ink); background: var(--brand-white); border-radius: var(--radius-surface); width: min(100%, 280px); overflow: hidden; transform: rotate(-3deg); }
.hero-slide_date time { font-variant-numeric: tabular-nums; text-align: center; gap: 12px; display: grid; padding-bottom: 24px; line-height: 1.5; }
.hero-slide_dateTop { background: color-mix(in srgb,var(--brand-ink) 8%,var(--brand-white)); justify-content: center; align-items: center; gap: 10px; padding: 18px; display: flex; }
.hero-slide_day { font-size: calc(var(--font-size-display) * 80 / (3 * var(--root-px))); font-weight: var(--font-weight-heading-1); line-height: 1; }
.hero-slide_date p { border-top: 1px solid color-mix(in srgb,var(--brand-ink) 15%,transparent); margin: 0px; padding: 18px; font-size: var(--font-size-label); line-height: 1.7; text-align: center; }
.hero-slide_date p svg { vertical-align: middle; margin-inline-end: 8px; }
.hero-slide_chat { box-sizing: border-box; width: 100%; margin: 0px; }
.hero-slide_chat figcaption { color: color-mix(in srgb,var(--brand-white) 78%,transparent); align-items: center; gap: 10px; margin-bottom: 12px; font-size: calc(var(--font-size-caption) * 13 / (0.75 * var(--root-px))); line-height: 1.6; display: flex; }
.hero-slide_chat > small { color: color-mix(in srgb,var(--brand-white) 78%,transparent); margin-top: 12px; display: block; }
.hero-slide_chat ol { gap: 10px; margin: 0px; padding: 0px; list-style: none; display: grid; }
.hero-slide_chat li { box-sizing: border-box; color: var(--brand-white); overflow-wrap: anywhere; background: color-mix(in srgb,var(--brand-white) 16%,transparent); border-radius: calc(var(--radius-surface) * 16 / 24); justify-self: start; max-width: 88%; padding: 10px 14px; font-size: calc(var(--font-size-label) * 15 / (0.875 * var(--root-px))); line-height: 1.7; }
.hero-slide_chat li[data-from="firm"] { color: var(--brand-ink); background: var(--brand-white); justify-self: end; }
.hero-slide_tiers, .hero-slide_membership { box-sizing: border-box; color: var(--brand-white); width: 100%; }
.hero-slide_tiers ul { gap: 10px; margin: 0px; padding: 0px; list-style: none; display: grid; }
.hero-slide_tiers li { box-sizing: border-box; border: 1px solid color-mix(in srgb,var(--brand-white) 30%,transparent); border-radius: var(--radius-surface); flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 6px 14px; padding: 14px 18px; display: flex; }
.hero-slide_tierIndex { opacity: 0.65; font-variant-numeric: tabular-nums; font-size: var(--font-size-caption); }
.hero-slide_tiers li > b { flex: 1; }
.hero-slide_tiers b, .hero-slide_membership b { overflow-wrap: anywhere; font-weight: calc(var(--font-weight-body) + 100); line-height: 1.6; }
.hero-slide_tiers strong { font-variant-numeric: tabular-nums; font-size: calc(var(--font-size-heading-3) * 22 / (1.375 * var(--root-px))); font-weight: calc(var(--font-weight-body) + 100); }
.hero-slide_tiers small, .hero-slide_note { color: color-mix(in srgb,var(--brand-white) 78%,transparent); overflow-wrap: anywhere; font-size: calc(var(--font-size-caption) * 13 / (0.75 * var(--root-px))); line-height: 1.6; }
.hero-slide_note { margin-top: 12px; display: block; }
.hero-slide_membership { border: 1px solid color-mix(in srgb,var(--brand-white) 30%,transparent); border-radius: var(--radius-surface); justify-items: start; gap: 10px; padding: 26px; display: grid; }
.hero-slide_membership b { font-size: clamp(calc(var(--font-size-heading-2) * 20 / (1.75 * var(--root-px))), 2vw, calc(var(--font-size-heading-2) * 28 / (1.75 * var(--root-px)))); }
.hero-slide_membership p { overflow-wrap: anywhere; margin: 0px; font-size: calc(var(--font-size-label) * 15 / (0.875 * var(--root-px))); line-height: 1.7; }
.hero-slide_membership .hero-slide_unit { color: color-mix(in srgb,var(--brand-white) 78%,transparent); }
/* The solutions index and an offering's own page (typed layouts): a name with no space to break at wraps within its card, head, brief, programme, terms or relation groups rather than widening them. */
main[data-solutions-page] .home-solution-card *, main[data-offering-page] :is(.service_heroCopy, .service_brief, .service_contentGrid, .term-list, .service_relationGrid) * { overflow-wrap: anywhere; }
@media (max-width: 820px){.hero-slide_visual { max-width: 100%; padding: 0px; }
.hero-slide_images img { max-height: 200px; }
.hero-slide_logos { gap: 8px; }
.hero-slide_logos li { min-height: 56px; padding: 8px; }
.hero-slide_logos img { max-height: 32px; }
.hero-slide_rating b { font-size: calc(var(--font-size-heading-3) * 26 / (1.375 * var(--root-px))); }
.hero-slide_date { width: min(100%, 220px); }
.hero-slide_day { font-size: calc(var(--font-size-display) * 60 / (3 * var(--root-px))); }
.hero-slide_chat li, .hero-slide_resources li { font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); }
.hero-slide_tiers li { padding: 10px 14px; }
.hero-slide_tiers strong { font-size: calc(var(--font-size-body) * 18 / (var(--root-px))); }
.hero-slide_membership { padding: 18px; }}
.calendar_page { background: var(--surface); color: var(--text); }
.calendar_calendarIntro, .calendar_calendarShell { width: var(--layout-shell-width); max-width: 1200px; margin-inline: auto; padding: 24px 0px; }
.calendar_calendarIntro { justify-content: space-between; align-items: center; gap: 24px; padding-bottom: 12px; display: flex; }
.calendar_calendarIntro h1 { margin: 0px 0px 8px; font-size: clamp(calc(var(--font-size-heading-1) * 1.75 / 2.25), 3.5vw, calc(var(--font-size-heading-1) * 2.5 / 2.25)); }
.calendar_calendarIntro p { color: var(--text-secondary); margin: 0px; font-size: var(--font-size-body); line-height: 1.8; }
.calendar_introLink { min-height: 44px; color: var(--text); white-space: nowrap; text-underline-offset: 4px; align-items: center; gap: 8px; font-size: calc(var(--font-size-body) * 0.9375); display: inline-flex; }
.calendar_calendarSection, .calendar_subscribeCard { scroll-margin-top: 100px; }
.calendar_groupTabs { border-bottom: 1px solid var(--border); grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 4px; display: grid; }
.calendar_groupTabs button { min-height: 52px; color: var(--text-secondary); font: inherit; cursor: pointer; background: 0px 0px; border-width: 0px 0px 3px; border-top-style: initial; border-right-style: initial; border-left-style: initial; border-top-color: initial; border-right-color: initial; border-left-color: initial; border-image: initial; border-bottom-style: solid; border-bottom-color: rgba(0, 0, 0, 0); flex-shrink: 0; padding: 10px 4px; }
.calendar_groupTabs button[aria-pressed="true"] { border-bottom-color: var(--action); color: var(--text); background: var(--surface-soft); font-weight: calc(var(--font-weight-body) + 300); }
.calendar_toolbar { align-items: center; gap: 12px; padding-block: 0px 16px; display: flex; }
.calendar_search { flex: 1 1 0%; min-width: 0px; }
.calendar_search input, .calendar_filters select { border: 1px solid var(--border); background: var(--surface); width: 100%; min-width: 0px; min-height: 48px; color: var(--text); font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; border-radius: calc(var(--radius-input) * 8 / 14); padding: 10px 12px; font-size: var(--font-size-body); }
.calendar_search input::placeholder { color: var(--text-secondary); opacity: 1; }
.calendar_viewSwitcher button, .calendar_filterToggle, .calendar_monthHeader button, .calendar_selectedDate button, .calendar_empty button, .calendar_clearButton { border: 1px solid var(--border); background: var(--surface); min-height: 44px; color: var(--text); font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; cursor: pointer; border-radius: calc(var(--radius-control) * 8 / 14); justify-content: center; align-items: center; gap: 8px; padding: 8px 14px; font-size: calc(var(--font-size-body) * 0.9375); display: inline-flex; }
.calendar_filterToggle { min-height: 48px; }
.calendar_filterToggle[aria-expanded="true"] { background: var(--surface-soft); }
.calendar_filterDot { background: currentcolor; border-radius: 50%; width: 7px; height: 7px; }
.calendar_viewSwitcher { border: 1px solid var(--border); border-radius: calc(var(--radius-control) * 10 / 14); flex-shrink: 0; gap: 4px; padding: 3px; display: flex; }
.calendar_viewSwitcher button { border: 0px; padding: 8px 16px; }
.calendar_viewSwitcher button[aria-pressed="true"] { background: var(--action); color: var(--on-action); }
.calendar_filters { border-bottom: 1px solid var(--border); grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 16px; padding: 16px 0px 24px; display: grid; }
.calendar_filters[hidden] { display: none; }
.calendar_filters label { gap: 8px; font-size: var(--font-size-label); display: grid; }
.calendar_resultsHeader { color: var(--text-secondary); flex-wrap: wrap; align-items: center; gap: 12px; padding-block: 12px 16px; font-size: var(--font-size-label); display: flex; }
.calendar_resultsTitle { color: var(--text); margin: 0px; font-size: var(--font-size-body); line-height: 1.6; }
.calendar_resultsHeader .calendar_viewSwitcher { margin-inline-start: auto; }
.calendar_resultCount { width: 100%; }
.calendar_clearButton { text-underline-offset: 4px; border: 0px; padding-inline: 4px; text-decoration: underline; }
.calendar_monthHeader { justify-content: space-between; align-items: center; gap: 16px; padding-block: 8px 20px; display: flex; }
.calendar_monthHeader h2 { margin: 0px; font-size: var(--font-size-heading-3); }
.calendar_monthHeader > div { gap: 8px; display: flex; }
.calendar_monthHeader button:first-child, .calendar_monthHeader button:last-child { min-width: 44px; font-size: calc(var(--font-size-heading-3) * 1.5 / 1.375); }
.calendar_monthTable { table-layout: fixed; border-collapse: collapse; width: 100%; margin-bottom: 24px; }
.calendar_monthTable th { padding: 12px 4px; font-size: var(--font-size-label); }
.calendar_monthTable td { border: 1px solid var(--border); vertical-align: top; padding: 0px; }
.calendar_day { background: var(--surface); width: 100%; min-height: 112px; color: var(--text); text-align: start; font: inherit; cursor: pointer; border: 0px; flex-direction: column; align-items: flex-start; gap: 8px; padding: 12px; display: flex; position: relative; }
.calendar_day b { font-size: var(--font-size-body); }
.calendar_day small { -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: var(--font-size-label); line-height: 1.5; display: -webkit-box; overflow: hidden; }
.calendar_monthTable td[data-outside] .calendar_day { color: var(--text-secondary); background: var(--surface-soft); }
.calendar_day[aria-pressed="true"], .calendar_monthTable td[data-outside] .calendar_day[aria-pressed="true"] { background: var(--action); color: var(--on-action); }
.calendar_day[aria-current="date"] b { text-underline-offset: 5px; text-decoration: underline; }
.calendar_eventCount { inset-inline-end: 8px; text-align: center; border: 1px solid; border-radius: 50%; min-width: 21px; font-size: calc(var(--font-size-label) * 0.8125 / 0.875); position: absolute; top: 10px; }
.calendar_selectedDate { justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 16px; display: flex; }
.calendar_selectedDate h3 { margin: 0px; font-size: var(--font-size-heading-4); }
.calendar_monthGroup + .calendar_monthGroup { margin-top: 32px; }
.calendar_monthLabel { border-bottom: 1px solid var(--border); margin: 0px; padding: 0px 0px 12px; font-size: calc(var(--font-size-heading-3) * 1.25 / 1.375); }
.calendar_agendaEvent { border-bottom: 1px solid var(--border); scroll-margin-top: 100px; }
.calendar_agendaEvent > summary { cursor: pointer; grid-template-columns: 64px minmax(0px, 1fr) 32px; align-items: center; gap: 20px; padding: 20px 0px; list-style: none; display: grid; }
.calendar_agendaEvent > summary::-webkit-details-marker { display: none; }
.calendar_dateBadge { text-align: center; gap: 1px; line-height: 1.4; display: grid; }
.calendar_dateBadge b { font-variant-numeric: tabular-nums; font-size: calc(var(--font-size-heading-1) * 2 / 2.25); font-weight: max(var(--font-weight-body), calc(var(--font-weight-heading-1) - 100)); }
.calendar_dateBadge > span { font-size: var(--font-size-label); }
.calendar_dateBadge small { color: var(--text-secondary); font-size: calc(var(--font-size-label) * 0.8125 / 0.875); }
.calendar_eventHeading { min-width: 0px; }
.calendar_category { color: var(--text-secondary); font-size: var(--font-size-label); }
.calendar_agendaEvent h3 { overflow-wrap: anywhere; margin: 3px 0px 6px; font-size: var(--font-size-heading-4); line-height: 1.65; }
.calendar_eventMeta { color: var(--text-secondary); flex-wrap: wrap; align-items: baseline; gap: 6px 16px; font-size: var(--font-size-label); line-height: 1.7; display: flex; }
.calendar_timing { color: var(--text); font-weight: calc(var(--font-weight-body) + 200); }
.calendar_expand { text-align: center; font-size: calc(var(--font-size-heading-3) * 1.5 / 1.375); }
.calendar_eventBody { grid-template-columns: minmax(0px, 1.45fr) minmax(0px, 1fr); align-items: start; gap: 32px; padding: 8px 0px 28px; display: grid; }
.calendar_eventBody > div:only-child { grid-column: 1 / -1; }
.calendar_eventBody p { margin: 0px 0px 16px; font-size: var(--font-size-body); line-height: 1.9; }
.calendar_eventFigure { margin: 0px; }
.calendar_eventFigure img { aspect-ratio: 8 / 5; object-fit: cover; border-radius: calc(var(--radius-surface) * 8 / 24); width: 100%; height: auto; }
.calendar_eventFigure[data-invitation] img { aspect-ratio: auto; object-fit: contain; }
.calendar_eventFigure figcaption { color: var(--text-secondary); margin-top: 8px; font-size: var(--font-size-label); line-height: 1.7; }
.calendar_eventFigure a { color: inherit; text-underline-offset: 3px; }
.calendar_photoNote { display: block; }
.calendar_legalFacts { gap: 12px; margin: 16px 0px 20px; display: grid; }
.calendar_legalFacts > div { grid-template-columns: 92px minmax(0px, 1fr); gap: 16px; font-size: calc(var(--font-size-body) * 0.9375); line-height: 1.9; display: grid; }
.calendar_legalFacts dt { color: var(--text-secondary); }
.calendar_legalFacts dd { margin: 0px; }
.calendar_verification { color: var(--text-secondary); }
.calendar_fieldLinks, .calendar_sourceLinks { flex-wrap: wrap; align-items: center; gap: 8px 12px; display: flex; }
.calendar_fieldLinks a { min-height: 44px; color: var(--text); text-underline-offset: 4px; align-items: center; font-size: var(--font-size-label); display: inline-flex; }
.calendar_sourceLinks { margin-top: 16px; }
.calendar_sourceAction, .calendar_primaryAction, .calendar_appleAction, .calendar_feedAction, .calendar_secondarySource { border: 1px solid var(--border); min-height: 48px; color: var(--text); border-radius: calc(var(--radius-control) * 8 / 14); justify-content: center; align-items: center; gap: 10px; padding: 12px 16px; font-size: calc(var(--font-size-body) * 0.9375); line-height: 1.6; text-decoration: none; display: inline-flex; }
.calendar_sourceAction, .calendar_primaryAction, .calendar_appleAction { background: var(--action); color: var(--on-action); }
.calendar_secondarySource { text-underline-offset: 4px; border: 0px; padding-inline: 0px; text-decoration: underline; }
.calendar_subscribeCard { border-top: 1px solid var(--border); flex-wrap: wrap; align-items: center; gap: 16px; margin-top: 40px; padding-block: 24px; display: flex; }
.calendar_subscribeCard > div { flex: 1 1 0%; min-width: 260px; }
.calendar_subscribeCard h2 { margin: 0px 0px 8px; font-size: calc(var(--font-size-heading-3) * 1.25 / 1.375); }
.calendar_subscribeCard p { color: var(--text-secondary); margin: 0px; font-size: calc(var(--font-size-body) * 0.9375); line-height: 1.8; }
.calendar_empty { padding: 32px 0px; font-size: var(--font-size-body); line-height: 1.8; }
.calendar_empty p { margin: 0px 0px 16px; }
:is(.calendar_page button:focus-visible, .calendar_page input:focus-visible, .calendar_page select:focus-visible, .calendar_page summary:focus-visible, .calendar_page a:focus-visible) { outline: 3px solid var(--focus); outline-offset: 3px; }
@media (hover: hover){.calendar_agendaEvent > summary:hover h3 { text-underline-offset: 4px; text-decoration: underline; }
.calendar_groupTabs button:hover { color: var(--text); }}
@media (max-width: 760px){.calendar_calendarIntro, .calendar_calendarShell { padding-inline: 0px; }
.calendar_calendarIntro { flex-direction: column; align-items: flex-start; gap: 8px; padding-top: 20px; }
.calendar_calendarIntro p { font-size: calc(var(--font-size-body) * 0.9375); }
.calendar_groupTabs { gap: 0px; }
.calendar_groupTabs button { font-size: calc(var(--font-size-body) * 0.9375); }
.calendar_toolbar { grid-template-columns: minmax(0px, 1fr) auto; gap: 10px; display: grid; }
.calendar_search { grid-column: auto; }
.calendar_viewSwitcher { justify-self: end; }
.calendar_filterToggle { justify-self: start; }
.calendar_filters { grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr); gap: 14px; }
.calendar_resultsHeader { gap: 8px; }
.calendar_resultCount { font-size: calc(var(--font-size-label) * 0.8125 / 0.875); }
.calendar_agendaEvent > summary { grid-template-columns: 48px minmax(0px, 1fr) 24px; gap: 12px; padding-block: 18px; }
.calendar_dateBadge { align-self: start; margin-top: 4px; display: grid; }
.calendar_dateBadge b { font-size: var(--font-size-heading-2); }
.calendar_dateBadge small { display: none; }
.calendar_agendaEvent h3 { font-size: calc(var(--font-size-heading-4) * 1.0625 / 1.125); }
.calendar_eventMeta { gap: 2px 10px; }
.calendar_eventBody { grid-template-columns: minmax(0px, 1fr); gap: 20px; }
.calendar_eventFigure { width: 100%; max-width: 520px; }
.calendar_legalFacts > div { grid-template-columns: 80px minmax(0px, 1fr); gap: 12px; }
.calendar_day { min-height: 76px; padding: 8px 5px; }
.calendar_day small { display: none; }
.calendar_eventCount { position: static; }
.calendar_monthTable th { padding-inline: 0px; font-size: calc(var(--font-size-label) * 0.8125 / 0.875); }
.calendar_monthHeader h2 { font-size: var(--font-size-heading-4); }
.calendar_monthHeader button { padding: 8px 10px; }
.calendar_monthHeader > div { gap: 4px; }
.calendar_selectedDate { flex-direction: column; align-items: flex-start; gap: 8px; }
.calendar_subscribeCard > div { flex-basis: 100%; min-width: 0px; }
.calendar_subscribeCard a { width: 100%; }}
@media (max-width: 380px){.calendar_monthHeader { flex-wrap: wrap; gap: 12px; }
.calendar_agendaEvent > summary { grid-template-columns: 42px minmax(0px, 1fr) 20px; gap: 10px; }
.calendar_category, .calendar_eventMeta { font-size: var(--font-size-label); }
.calendar_legalFacts > div { grid-template-columns: 1fr; gap: 2px; }
.calendar_resultsHeader { align-items: flex-start; }
.calendar_resultCount { width: 100%; margin-inline-start: 0px; }}
@media (prefers-reduced-motion: reduce){.calendar_page * { scroll-behavior: auto !important; transition: none !important; animation: auto ease 0s 1 normal none running none !important; }}
@media (max-width: 520px){.calendar_filters { grid-template-columns: minmax(0px, 1fr); }
.calendar_calendarShell { padding-top: 16px; }
.calendar_resultsHeader { column-gap: 8px; }
.calendar_viewSwitcher button { padding-inline: 12px; }
.calendar_eventHeading { overflow-wrap: anywhere; }}
.calendar_eventControls { flex-direction: column; align-items: center; gap: 2px; display: flex; }
.calendar_groupTabs > label { color: var(--text-secondary); align-items: center; gap: 7px; margin-inline-start: auto; font-size: calc(var(--font-size-caption) * 0.8 / 0.75); display: flex; }
.calendar_groupTabs > label select { font: inherit; color: var(--text); background: var(--surface); border: 1px solid var(--border); border-radius: calc(var(--radius-input) * 12 / 14); min-height: 38px; padding: 7px; }
.calendar_dateBadge:has(> span) { background: 0px 0px; border: 0px; padding: 0px; }
.events-timeline_section { width: var(--layout-shell-width); max-width: 1200px; color: var(--text); margin-inline: auto; padding: 0px; scroll-margin-top: 100px; }
.events-timeline_feature { border: 1px solid var(--border-strong); border-inline-start: 4px solid var(--action); background: var(--surface-soft); border-radius: calc(var(--radius-surface) * 8 / 24); grid-template-columns: minmax(0px, 1fr) 180px; display: grid; overflow: hidden; }
.events-timeline_copy { min-width: 0px; padding: 24px 28px; }
.events-timeline_featureTop { flex-wrap: wrap; align-items: center; gap: 8px 16px; margin-bottom: 10px; display: flex; }
.events-timeline_eyebrow { margin: 0px; font-size: var(--font-size-label); font-weight: calc(var(--font-weight-body) + 300); }
.events-timeline_countdown { color: var(--text-secondary); font-size: var(--font-size-label); }
.events-timeline_copy h2 { overflow-wrap: anywhere; margin: 0px; font-size: clamp(calc(var(--font-size-heading-2) * 1.375 / 1.75), 2.5vw, calc(var(--font-size-heading-2) * 1.875 / 1.75)); line-height: 1.55; }
.events-timeline_facts { grid-template-columns: minmax(0px, 1.2fr) minmax(0px, 1fr); gap: 12px 24px; margin-block: 12px; display: grid; }
.events-timeline_facts p { color: var(--text-secondary); align-items: flex-start; gap: 10px; margin: 0px; font-size: var(--font-size-body); line-height: 1.8; display: flex; }
.events-timeline_facts svg { flex-shrink: 0; margin-top: 5px; }
.events-timeline_facts time > span { display: block; }
.events-timeline_actions { flex-wrap: wrap; align-items: center; gap: 8px 20px; display: flex; }
.events-timeline_register, .events-timeline_detailsLink { justify-content: center; align-items: center; gap: 16px; min-height: 48px; font-size: var(--font-size-body); display: inline-flex; }
.events-timeline_register { background: var(--action); color: var(--on-action); border: 1px solid var(--action); border-radius: calc(var(--radius-control) * 8 / 14); padding: 10px 20px; font-weight: calc(var(--font-weight-body) + 300); text-decoration: none; }
.events-timeline_detailsLink { color: var(--text); text-underline-offset: 5px; }
.events-timeline_datePanel { border-inline-start: 1px solid var(--border); background: var(--surface); text-align: center; flex-direction: column; justify-content: center; align-items: center; gap: 4px; padding: 20px; font-size: var(--font-size-body); line-height: 1.7; display: flex; }
.events-timeline_datePanel strong { font-variant-numeric: tabular-nums; font-size: calc(var(--font-size-display) * 4.75 / 3); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.2; }
.events-timeline_archive { margin-top: 4px; }
.events-timeline_archive > summary { cursor: pointer; min-height: 48px; color: var(--text-secondary); justify-content: space-between; align-items: center; gap: 12px; font-size: var(--font-size-label); list-style: none; display: flex; }
.events-timeline_archive > summary::-webkit-details-marker { display: none; }
.events-timeline_archive > summary::after { content: "+"; font-size: calc(var(--font-size-heading-3) * 1.25 / 1.375); }
.events-timeline_archive[open] > summary::after { content: "−"; }
.events-timeline_group { padding-bottom: 16px; }
.events-timeline_group h3 { font-size: var(--font-size-body); }
.events-timeline_row { border-top: 1px solid var(--border); grid-template-columns: minmax(180px, 0.65fr) 1fr; gap: 6px 24px; padding: 16px 0px; font-size: var(--font-size-label); line-height: 1.8; display: grid; }
.events-timeline_row time { color: var(--text-secondary); grid-row: span 2; }
.events-timeline_row h4 { margin: 0px; font-size: var(--font-size-body); }
.events-timeline_row a { color: inherit; text-underline-offset: 4px; }
.events-timeline_row > span { color: var(--text-secondary); }
.events-timeline_row > a, .events-timeline_attendanceDetails { grid-column: 1 / -1; }
.events-timeline_row > a { justify-self: start; align-items: center; min-height: 44px; display: inline-flex; }
.events-timeline_attendanceDetails > summary { cursor: pointer; min-height: 44px; padding-block: 10px; }
.events-timeline_empty { color: var(--text-secondary); margin: 0px; padding: 16px 0px; font-size: var(--font-size-body); line-height: 1.8; }
:is(.events-timeline_section a:focus-visible, .events-timeline_section summary:focus-visible) { outline: 3px solid var(--focus); outline-offset: 4px; }
@media (max-width: 700px){.events-timeline_feature { grid-template-columns: minmax(0px, 1fr); }
.events-timeline_datePanel { display: none; }
.events-timeline_copy { padding: 18px 16px; }
.events-timeline_featureTop { margin-bottom: 8px; }
.events-timeline_facts { grid-template-columns: minmax(0px, 1fr); gap: 8px; margin-block: 12px; }
.events-timeline_row { grid-template-columns: 1fr; }
.events-timeline_row time { grid-row: auto; }
.events-timeline_register { flex: 1 1 0%; }
.events-timeline_detailsLink { padding-inline: 8px; }}
@media (max-width: 380px){.events-timeline_actions { gap: 8px 12px; }
.events-timeline_register { padding-inline: 12px; }
.events-timeline_detailsLink { padding-inline: 0px; }}
.event-title_mark[data-event-title-variant="compact"] { width: min(100%, 22rem); }
.event-sector-links_sectors { color: inherit; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-block: 16px; font-size: calc(var(--font-size-label) * 0.85 / 0.875); line-height: 1.7; display: flex; }
.event-sector-links_sectors > span { flex-basis: 100%; font-weight: calc(var(--font-weight-body) + 200); }
.event-sector-links_sectors a { min-height: 36px; color: inherit; text-underline-offset: 4px; align-items: center; text-decoration: underline; display: inline-flex; }
.event-sector-links_sectors a:focus-visible { outline-offset: 4px; outline: solid 2px; }
.landing_page { --lp-ink: var(--brand-ink); --lp-paper: var(--surface-soft); --lp-mist: var(--brand-mist); --lp-white: var(--surface); --lp-text: var(--text); --lp-muted: var(--text-secondary); --lp-line: var(--border); --lp-header-height: 126px; min-height: 100svh; padding-bottom: calc(198px + env(safe-area-inset-bottom)); color: var(--lp-text); background: var(--lp-white); }
:root[data-theme="dark"] .landing_page { color: var(--lp-text); background: var(--lp-white); }
.landing_hero { min-height: calc(100svh - var(--lp-header-height)); color: var(--brand-white); background: var(--lp-ink); isolation: isolate; align-content: center; padding: 44px 18px 76px; display: grid; position: relative; overflow: hidden; }
.landing_hero::before { content: ""; z-index: -2; background: var(--lp-mist); width: 84%; height: 31%; position: absolute; inset: -4% auto auto -18%; transform: skew(-29deg); }
[dir="rtl"] .landing_hero::before { inset: -4% -18% auto auto; transform: skew(29deg); }
.landing_hero::after { content: ""; z-index: -1; background: var(--lp-paper); width: 76%; height: 19%; position: absolute; inset: auto -28% 1% auto; transform: skew(-38deg); }
[dir="rtl"] .landing_hero::after { inset: auto auto 1% -28%; transform: skew(38deg); }
.landing_heroContent { z-index: 2; width: min(100%, 1120px); margin: auto; position: relative; }
.landing_hero h1 { letter-spacing: normal; max-width: 850px; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.35 / 3), 11vw, calc(var(--font-size-display) * 5.7 / 3)); font-weight: var(--font-weight-display); line-height: 1.4; }
.landing_lead { max-width: 720px; color: var(--brand-paper); margin: 20px 0px 0px; font-size: clamp(calc(var(--font-size-heading-4) * 0.95 / 1.125), 4.4vw, calc(var(--font-size-heading-4) * 1.2 / 1.125)); line-height: 1.85; }
.landing_section { background: var(--lp-white); padding: 70px 18px; position: relative; overflow: hidden; }
.landing_section > * { width: min(100%, 1120px); margin-inline: auto; }
.landing_sectionHeading > h2 { letter-spacing: normal; max-width: 760px; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 1.85 / 3), 8.6vw, calc(var(--font-size-display) * 4.3 / 3)); line-height: 1.4; }
.landing_expertGrid { gap: 10px; display: grid; }
.landing_expert { border: 1px solid var(--lp-line); min-height: 240px; color: var(--lp-text); background: var(--lp-white); grid-template-columns: 118px minmax(0px, 1fr); display: grid; }
.landing_specialistExpert { color: var(--lp-ink); background: var(--lp-mist); border-color: var(--lp-ink); }
.landing_portrait { --portrait-background: var(--lp-ink); height: 100%; min-height: 238px; color: var(--brand-white); border-radius: 0px; }
.landing_expertDetails { flex-direction: column; justify-content: center; align-self: stretch; padding: 17px; display: flex; }
.landing_expertDetails > small { color: var(--lp-muted); font-size: calc(var(--font-size-caption) * 0.67 / 0.75); }
.landing_expert h3 { margin: 5px 0px 0px; font-size: calc(var(--font-size-heading-4) * 1.1 / 1.125); line-height: 1.35; }
.landing_expertDetails > p { color: var(--lp-muted); margin: 9px 0px 0px; font-size: calc(var(--font-size-caption) * 0.72 / 0.75); line-height: 1.65; }
.landing_specialistExpert .landing_expertDetails > small, .landing_specialistExpert .landing_expertDetails > p { color: color-mix(in srgb,var(--lp-ink) 88%,transparent); }
.landing_expertDetails > a { align-items: center; gap: 7px; width: max-content; min-width: 44px; min-height: 44px; margin-top: 14px; font-size: calc(var(--font-size-caption) * 0.7 / 0.75); font-weight: calc(var(--font-weight-body) + 400); display: inline-flex; }
.landing_specialistLabel { width: max-content; color: var(--brand-white); background: var(--lp-ink); margin-bottom: 8px; padding: 5px 8px; font-size: calc(var(--font-size-caption) * 0.58 / 0.75); line-height: 1.4; }
.landing_expertFields { flex-wrap: wrap; gap: 5px; margin: 12px 0px 0px; padding: 0px; list-style: none; display: flex; }
.landing_expertFields li { border: 1px solid color-mix(in srgb, currentcolor 24%, transparent); padding: 5px 7px; font-size: calc(var(--font-size-caption) * 0.58 / 0.75); font-weight: calc(var(--font-weight-body) + 300); line-height: 1.35; }
.landing_barDirectory { min-height: 86px; color: var(--brand-white); background: var(--lp-ink); grid-template-columns: 28px minmax(0px, 1fr) 20px; align-items: center; gap: 12px; padding: 15px 17px; display: grid; margin-top: 10px !important; }
.landing_barDirectory > span { gap: 3px; display: grid; }
.landing_barDirectory small { color: var(--lp-mist); font-size: calc(var(--font-size-caption) * 0.62 / 0.75); }
.landing_barDirectory b { font-size: calc(var(--font-size-label) * 0.86 / 0.875); line-height: 1.5; }
.landing_barDirectory > svg:last-child { opacity: 0.72; }
.landing_stickyCta { z-index: 80; padding: 8px 9px calc(8px + env(safe-area-inset-bottom)); border-top: 1px solid var(--lp-line); background: var(--lp-white); backdrop-filter: none; grid-template-columns: 1fr; gap: 7px; display: grid; position: fixed; inset: auto 0px 0px; }
.landing_stickyCta a { border: 1px solid var(--lp-line); min-height: 54px; color: var(--brand-white); background: var(--lp-ink); white-space: nowrap; justify-content: center; align-items: center; gap: 8px; font-size: calc(var(--font-size-caption) * 0.72 / 0.75); font-weight: calc(var(--font-weight-body) + 400); display: flex; }
.landing_stickyCta a:first-child { color: var(--lp-ink); background: var(--lp-mist); }
.landing_stickyCta a:first-child, .landing_stickyCta a:nth-child(2) { animation: 2.8s ease-in-out 0s infinite normal none running _landingCtaFloat_1yfio_1; }
.landing_stickyCta a:nth-child(2) { animation-delay: 0.22s; }
@media (min-width: 720px){.landing_page { --lp-header-height: 140px; }
.landing_hero { min-height: 720px; padding: 80px 32px; }
.landing_section { padding: 96px 32px; }
.landing_sectionHeading { margin-bottom: 42px; }
.landing_expertGrid { grid-template-columns: 1fr 1fr; }
.landing_expert { grid-template-columns: 160px minmax(0px, 1fr); }}
@media (min-width: 1024px){.landing_hero { grid-template-columns: minmax(0px, 1fr) 360px; }
.landing_expertGrid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
.landing_stickyCta { border: 1px solid var(--lp-line); width: 360px; box-shadow: 0 12px 34px color-mix(in srgb,var(--brand-night) 18%,transparent); padding: 8px; inset: auto 24px 22px auto; }
[dir="rtl"] .landing_stickyCta { inset: auto auto 22px 24px; }}
@media (prefers-reduced-motion: reduce){.landing_heroActions a, .landing_stickyCta a:first-child, .landing_stickyCta a:nth-child(2) { animation: auto ease 0s 1 normal none running none; }}
@media (forced-colors: active){.landing_hero, .landing_ratingCard, .landing_reviewThemes article, .landing_stickyCta a { color: canvastext; background: canvas; }
.landing_heroActions a, .landing_outputList article, .landing_expert, .landing_barDirectory, .landing_ratingCard > a { color: canvastext; background: canvas; border: 1px solid canvastext; }}
.landing_hero { min-height: min(820px,calc(100svh - var(--lp-header-height))); border-bottom: 14px solid var(--lp-mist); padding-block: 64px 88px; }
.landing_hero h1 { letter-spacing: normal; max-width: 920px; font-size: clamp(calc(var(--font-size-display) * 2.75 / 3), 11vw, calc(var(--font-size-display) * 6 / 3)); line-height: 1.4; }
.landing_lead { max-width: 760px; font-size: clamp(calc(var(--font-size-heading-3) * 1.12 / 1.375), 4.5vw, calc(var(--font-size-heading-3) * 1.38 / 1.375)); line-height: 1.78; }
.landing_section { padding-block: 82px; }
.landing_sectionHeading > h2 { letter-spacing: normal; font-size: clamp(calc(var(--font-size-display) * 2.15 / 3), 8.8vw, calc(var(--font-size-display) * 4.65 / 3)); line-height: 1.4; }
.landing_trustSection { border-block: 14px solid var(--lp-mist); }
.landing_expert { background: var(--lp-white); border: 0px; min-height: 290px; }
.landing_expertDetails > small { font-size: calc(var(--font-size-caption) * 0.78 / 0.75); }
.landing_expert h3 { font-size: calc(var(--font-size-heading-3) * 1.34 / 1.375); }
.landing_expertDetails > p { font-size: calc(var(--font-size-label) * 0.83 / 0.875); }
.landing_expertFields li { font-size: calc(var(--font-size-caption) * 0.68 / 0.75); }
.landing_expertDetails > a { font-size: calc(var(--font-size-caption) * 0.78 / 0.75); }
.landing_specialistExpert { background: var(--lp-mist); box-shadow: inset 0 0 0 2px var(--lp-ink); }
.landing_specialistLabel { font-size: calc(var(--font-size-caption) * 0.68 / 0.75); }
.landing_reviewsSection { background: var(--lp-white); border-bottom: 14px solid var(--lp-mist); }
.landing_ratingSource { color: var(--brand-mist); letter-spacing: 0.015em; align-items: center; gap: 9px; font-size: calc(var(--font-size-label) * 0.82 / 0.875); font-weight: calc(var(--font-weight-body) + 400); display: flex; }
.landing_ratingStars { color: var(--brand-mist); gap: 5px; margin-top: 34px; display: flex; }
.landing_ratingScore { font-variant-numeric: tabular-nums; unicode-bidi: isolate; align-items: baseline; gap: 10px; margin: 12px 0px 0px; display: flex; }
.landing_ratingScore strong { font-family: var(--font-brand); letter-spacing: -0.07em; font-size: clamp(calc(var(--font-size-display) * 4.8 / 3), 22vw, calc(var(--font-size-display) * 7.8 / 3)); font-weight: var(--font-weight-display); line-height: 0.9; }
.landing_ratingCount { color: var(--brand-paper); margin: 14px 0px 24px; font-size: calc(var(--font-size-label) * 0.9 / 0.875); font-weight: calc(var(--font-weight-body) + 300); line-height: 1.65; }
@media (min-width: 720px){.landing_section { padding-block: 112px; }
.landing_sectionHeading { margin-bottom: 48px; }}
@media (min-width: 1024px){.landing_hero { min-height: 760px; }}
.landing_hero h1 { max-width: none; font-size: min(calc(var(--font-size-display) * 3.75 / 3),var(--hero-title-desktop-size,calc(var(--font-size-display) * 3.75 / 3))); letter-spacing: 0px; white-space: normal; line-height: 1.4; }
.landing_hero h1.landing_labourHeroTitle { font-size: min(calc(var(--font-size-display) * 2.75 / 3),var(--hero-title-desktop-size,calc(var(--font-size-display) * 2.75 / 3))); line-height: 1.4; }
@media (min-width: 720px){.landing_heroContent { padding-top: 72px; }}
@media (max-width: 719px){.landing_hero { --lp-hero-top-plane: clamp(188px,26svh,220px); padding-top: calc(var(--lp-hero-top-plane) + 32px); align-content: start; }
.landing_hero::before { height: var(--lp-hero-top-plane); inset: 0px auto auto -18%; }
[dir="rtl"] .landing_hero::before { inset: 0px -18% auto auto; }
.landing_heroContent { width: 100%; }
.landing_hero h1 { font-size: var(--hero-title-mobile-size,5.4vw); }
.landing_hero h1.landing_labourHeroTitle { font-size: min(4.7vw,var(--hero-title-mobile-size,4.7vw)); }
.landing_lead { margin-top: 18px; }}
.landing_sectionHeading > h2 { max-width: none; font-size: min(var(--one-line-heading-mobile,8.6vw),calc(var(--font-size-display) * 4.65 / 3)); letter-spacing: normal; white-space: normal; line-height: 1.4; }
@media (min-width: 860px){.landing_sectionHeading > h2 { font-size: min(var(--one-line-heading-desktop,4.65vw),calc(var(--font-size-display) * 4.65 / 3)); }}
.landing_heroProofs { gap: 7px; max-width: 820px; margin: 20px 0px 0px; padding: 0px; list-style: none; display: grid; }
.landing_heroProofs li { border: 1px solid color-mix(in srgb,var(--brand-mist) 38%,transparent); min-height: 48px; color: var(--brand-white); background: color-mix(in srgb,var(--brand-white) 4.5%,transparent); grid-template-columns: 22px minmax(0px, 1fr); align-items: center; gap: 9px; padding: 10px 12px; font-size: calc(var(--font-size-caption) * 0.76 / 0.75); font-weight: calc(var(--font-weight-body) + 400); line-height: 1.5; display: grid; }
.landing_heroProofs svg { color: var(--lp-mist); }
.landing_heroSpotlight { z-index: 3; width: min(100%, 560px); color: var(--brand-ink); background: var(--brand-paper); border-top: 10px solid var(--brand-mist); margin: 28px auto 0px; padding: 24px; position: relative; }
.landing_heroSpotlight h2 { letter-spacing: normal; margin: 9px 0px 0px; font-size: clamp(calc(var(--font-size-display) * 1.75 / 3), 7.2vw, calc(var(--font-size-display) * 2.7 / 3)); line-height: 1.4; }
.landing_heroSpotlight > p { color: var(--brand-ink); margin: 14px 0px 0px; font-size: calc(var(--font-size-label) * 0.9 / 0.875); line-height: 1.75; }
.landing_heroSpotlight > a { min-height: 62px; color: var(--brand-white); background: var(--lp-ink); grid-template-columns: 24px minmax(0px, 1fr) 22px; align-items: center; gap: 10px; margin-top: 22px; padding: 12px 14px; font-size: calc(var(--font-size-label) * 0.88 / 0.875); font-weight: calc(var(--font-weight-body) + 400); display: grid; }
@media (min-width: 720px){.landing_heroProofs { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
.landing_expertDetails { padding: 24px; }
.landing_portrait { min-height: 330px; }}
@media (min-width: 1024px){.landing_heroWithSpotlight { grid-template-columns: minmax(0px, 1fr) minmax(320px, 380px); align-items: center; gap: 34px; padding-inline: max(32px, -560px + 50vw); }
.landing_heroWithSpotlight .landing_heroContent { width: 100%; margin: 0px; padding-top: 72px; }
.landing_heroSpotlight { width: 100%; margin: 72px 0px 0px; padding: 28px; }
.landing_heroSpotlight h2 { font-size: calc(var(--font-size-heading-1) * 2.35 / 2.25); }}
@media (forced-colors: active){.landing_heroProofs li, .landing_heroSpotlight, .landing_advantageGrid article, .landing_paymentIntro, .landing_paymentCriteria li, .landing_paymentDisclaimer { color: canvastext; background: canvas; border: 1px solid canvastext; }}
.landing_page { padding-bottom: 0px; }
.landing_labourHero.landing_heroWithSpotlight { min-height: 640px; padding-block: 52px 64px; }
.landing_labourHero.landing_heroWithSpotlight .landing_heroContent { padding-top: 0px; }
.landing_labourHero .landing_labourHeroTitle { color: var(--brand-white); clip-path: none; font-size: min(calc(var(--font-size-heading-1) * 2.35 / 2.25),var(--hero-title-desktop-size,calc(var(--font-size-heading-1) * 2.35 / 2.25))); white-space: nowrap; background: 0px 0px; margin: 0px; padding: 0px; line-height: 1.3; }
.landing_labourHero .landing_lead { max-width: 70ch; font-size: clamp(calc(var(--font-size-heading-4) * 0.94 / 1.125), 2.1vw, calc(var(--font-size-heading-4) * 1.08 / 1.125)); line-height: 1.76; }
.landing_labourHeroProofs { gap: 5px; max-width: 760px; margin-top: 16px; }
.landing_labourHeroProofs li { min-height: 0px; color: var(--brand-ink); background: var(--brand-paper); border: 0px; padding: 8px 10px; font-size: calc(var(--font-size-caption) * 0.72 / 0.75); line-height: 1.5; }
.landing_labourHeroProofs svg { color: var(--brand-ink); }
.landing_labourHeroSpotlight { width: min(100%, 340px); color: var(--brand-ink); background: var(--brand-paper); border-top-width: 6px; margin-top: 16px; padding: 16px; }
.landing_labourHeroSpotlight h2 { margin-top: 6px; font-size: clamp(calc(var(--font-size-heading-3) * 1.22 / 1.375), 5vw, calc(var(--font-size-heading-3) * 1.55 / 1.375)); line-height: 1.4; }
.landing_labourHeroSpotlight > p { color: var(--brand-ink); margin-top: 9px; font-size: calc(var(--font-size-caption) * 0.76 / 0.75); line-height: 1.65; }
.landing_labourHeroSpotlight > a { min-height: 48px; margin-top: 13px; padding: 9px 11px; font-size: calc(var(--font-size-caption) * 0.76 / 0.75); }
.landing_compactOutputSection { border-bottom: 8px solid var(--lp-mist); padding-block: 42px; }
.landing_compactOutputSection .landing_sectionHeading { margin-bottom: 16px; }
.landing_compactOutputSection .landing_sectionHeading > h2 { font-size: min(var(--one-line-heading-mobile,6.4vw),calc(var(--font-size-heading-1) * 2.2 / 2.25)); line-height: 1.4; }
.landing_compactOutputList { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 7px; margin: 0px; padding: 0px; list-style: none; display: grid; }
.landing_compactOutputList li { border: 1px solid color-mix(in srgb,var(--brand-ink) 24%,transparent); min-height: 72px; color: var(--brand-ink); background: var(--brand-paper); grid-template-columns: 28px minmax(0px, 1fr); align-items: start; gap: 8px; padding: 9px; display: grid; }
.landing_compactOutputList li:nth-child(2n) { background: var(--brand-mist); }
.landing_compactOutputList li > span { width: 28px; height: 28px; color: var(--brand-white); background: var(--brand-ink); font-variant-numeric: tabular-nums; place-items: center; font-size: calc(var(--font-size-caption) * 0.66 / 0.75); font-weight: calc(var(--font-weight-body) + 400); display: grid; }
.landing_compactOutputList p { margin: 1px 0px 0px; font-size: calc(var(--font-size-caption) * 0.7 / 0.75); font-weight: calc(var(--font-weight-body) + 400); line-height: 1.52; }
.landing_googleReviewsBox { color: var(--brand-white); background: var(--brand-ink); grid-template-columns: minmax(0px, 1fr) 96px; grid-template-areas: "rating photo" "themes themes"; gap: 10px; margin: 0px; padding: 10px; display: grid; }
.landing_googleRatingBlock { flex-direction: column; grid-area: rating; min-width: 0px; padding: 14px; display: flex; }
.landing_googleRatingBlock .landing_ratingStars { margin-top: 18px; }
.landing_googleRatingBlock .landing_ratingScore strong { font-size: clamp(var(--font-size-display), 13vw, calc(var(--font-size-display) * 5 / 3)); }
.landing_googleRatingBlock .landing_ratingCount { margin: 10px 0px 15px; font-size: calc(var(--font-size-caption) * 0.76 / 0.75); }
.landing_googleRatingBlock > a { min-height: 50px; color: var(--brand-ink); background: var(--brand-mist); grid-template-columns: 20px minmax(0px, 1fr); align-items: center; gap: 8px; margin-top: auto; padding: 9px 11px; font-size: calc(var(--font-size-caption) * 0.72 / 0.75); font-weight: calc(var(--font-weight-body) + 400); line-height: 1.5; display: grid; }
:is(.landing_googleRatingBlock > a:hover, .landing_googleRatingBlock > a:focus-visible) { background: var(--brand-paper); outline: 2px solid var(--brand-white); outline-offset: 2px; }
.landing_googleOfficePhoto { background: var(--brand-paper); grid-area: photo; min-width: 0px; margin: 0px; overflow: hidden; }
.landing_googleOfficePhoto img { object-fit: cover; object-position: center center; width: 100%; height: 100%; min-height: 220px; display: block; }
.landing_page .landing_sideCta { z-index: 80; border: 1px solid var(--lp-line); background: var(--lp-white); width: auto; box-shadow: 0 10px 28px color-mix(in srgb,var(--brand-ink) 20%,transparent); backdrop-filter: none; grid-template-columns: 44px; gap: 5px; padding: 4px; display: grid; position: fixed; inset-block: 54% auto; inset-inline: auto 10px; transform: translateY(-50%); }
.landing_page .landing_sideCta a { width: 44px; min-height: 44px; color: var(--brand-white); background: var(--brand-ink); white-space: normal; border: 0px; place-items: center; padding: 0px; animation: 2.8s ease-in-out 0s infinite normal none running _landingCtaFloat_1yfio_1; display: grid; }
.landing_page .landing_sideCta a:first-child { color: var(--brand-ink); background: var(--brand-mist); }
.landing_page .landing_sideCta a:nth-child(2) { animation-delay: 0.18s; }
:is(.landing_page .landing_sideCta a:hover, .landing_page .landing_sideCta a:focus-visible) { outline: 2px solid var(--brand-ink); outline-offset: 2px; }
@media (min-width: 720px){.landing_labourHeroProofs { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
.landing_labourHeroSpotlight { margin-top: 0px; }
.landing_compactOutputSection { padding-block: 52px; }
.landing_compactOutputSection .landing_sectionHeading > h2 { font-size: min(var(--one-line-heading-desktop,3vw),calc(var(--font-size-heading-1) * 2.2 / 2.25)); }
.landing_compactOutputList { grid-template-columns: repeat(4, minmax(0px, 1fr)); }
.landing_compactOutputList li { min-height: 78px; }
.landing_googleReviewsBox { grid-template-columns: minmax(0px, 1fr) 150px; grid-template-areas: "rating photo" "themes themes"; }
.landing_googleRatingBlock { padding: 22px; }
.landing_googleOfficePhoto img { min-height: 280px; }
.landing_page .landing_sideCta { inset-inline-end: 18px; }}
@media (max-width: 719px){.landing_labourHero.landing_heroWithSpotlight { padding-top: calc(var(--lp-hero-top-plane) + 22px); padding-bottom: 50px; }
.landing_labourHero .landing_labourHeroTitle { width: 100%; font-size: min(4.65vw,var(--hero-title-mobile-size,4.65vw)); text-align: start; padding: 0px; }
.landing_labourHeroProofs { grid-template-columns: 1fr; }
.landing_labourHeroSpotlight { width: 100%; }
.landing_page .landing_sideCta { inset-inline-end: 6px; }}
@media (prefers-reduced-motion: reduce){.landing_page .landing_sideCta a { animation: auto ease 0s 1 normal none running none; }}
@media (forced-colors: active){.landing_labourHeroProofs li, .landing_compactOutputList li, .landing_googleReviewsBox, .landing_googleReviewThemes li, .landing_sideCta, .landing_sideCta a { color: canvastext; background: canvas; border: 1px solid canvastext; }}
.landing_page { --lp-canvas: var(--canvas); --lp-surface: var(--surface); --lp-surface-strong: var(--surface-soft); --lp-ink: var(--brand-ink); --lp-paper: var(--surface-soft); --lp-mist: var(--brand-mist); --lp-white: var(--surface); --lp-text: var(--text); --lp-muted: var(--text-secondary); --lp-line: var(--border); --lp-spotlight-title: var(--brand-white); --lp-spotlight-copy: var(--brand-paper); color: var(--lp-text); background: var(--lp-canvas); padding-bottom: 0px; }
:root[data-theme="light"] .landing_page { --lp-canvas: var(--canvas); --lp-surface: var(--surface); --lp-spotlight-title: var(--brand-ink); --lp-spotlight-copy: color-mix(in srgb,var(--brand-ink) 86%,transparent); color: var(--lp-text); background: var(--lp-canvas); }
.landing_hero, .landing_labourHero { min-height: calc(-132px + 100svh); padding: clamp(72px,10vw,132px) var(--layout-gutter); color: var(--lp-text); background: var(--lp-canvas); border: 0px; overflow: hidden; }
.landing_hero::before, .landing_hero::after { display: none; }
.landing_heroContent { width: min(100%,var(--layout-content-max)); padding: 0px; }
.landing_hero h1, .landing_hero h1.landing_labourHeroTitle, .landing_labourHero .landing_labourHeroTitle { max-width: 920px; color: var(--lp-text); letter-spacing: normal; white-space: normal; text-wrap-style: balance; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.8 / 3), 6.8vw, calc(var(--font-size-display) * 5.8 / 3)); font-weight: max(var(--font-weight-body), calc(var(--font-weight-display) - 100)); line-height: 1.4; }
.landing_lead, .landing_labourHero .landing_lead { max-width: 720px; color: var(--lp-muted); margin-top: 28px; font-size: clamp(calc(var(--font-size-heading-3) * 1.08 / 1.375), 2.2vw, calc(var(--font-size-heading-3) * 1.34 / 1.375)); line-height: 1.82; }
.landing_heroWithSpotlight { grid-template-columns: minmax(0px, 1fr) minmax(300px, 390px); align-items: center; gap: clamp(30px, 5vw, 76px); }
.landing_heroWithSpotlight .landing_heroContent { padding: 0px; }
.landing_heroSpotlight, .landing_labourHeroSpotlight { width:100%;color:var(--lp-spotlight-title);border:1px solid var(--lp-mist);background:var(--lp-paper);border-top:0;border-radius:calc(var(--radius-surface) * 8 / 24);margin:0;padding:30px; }
.landing_heroSpotlight::before { content: ""; background: var(--lp-mist); width: 64px; height: 4px; margin-bottom: 22px; display: block; }
.landing_heroSpotlight h2, .landing_labourHeroSpotlight h2 { color: var(--lp-spotlight-title); margin: 0px; font-size: clamp(calc(var(--font-size-heading-1) * 1.55 / 2.25), 3vw, calc(var(--font-size-heading-1) * 2.35 / 2.25)); line-height: 1.4; }
.landing_heroSpotlight > p, .landing_labourHeroSpotlight > p { color: var(--lp-spotlight-copy); font-size: calc(var(--font-size-label) * 0.92 / 0.875); line-height: 1.8; }
.landing_heroSpotlight > a { background: var(--brand-ink); border-radius: calc(var(--radius-control) * 6 / 14); }
.landing_heroProofs, .landing_labourHeroProofs { border-block: 1px solid var(--lp-line); grid-template-columns: 1fr; gap: 0px; margin-top: 30px; }
.landing_heroProofs li, .landing_labourHeroProofs li { min-height: 56px; color: var(--lp-text); border-top: 0px; border-right: 0px; border-left: 0px; border-image: initial; border-bottom: 1px solid var(--lp-line); background: 0px 0px; padding: 12px 0px; font-size: calc(var(--font-size-label) * 0.83 / 0.875); }
.landing_heroProofs li:last-child, .landing_labourHeroProofs li:last-child { border-bottom: 0px; }
.landing_section { padding: clamp(78px,9vw,118px) var(--layout-gutter); color: var(--lp-text); background: var(--lp-canvas); border-top: 0px; border-right: 0px; border-left: 0px; border-image: initial; border-bottom: 1px solid var(--lp-line); }
.landing_section > * { width: min(100%,var(--layout-content-max)); }
.landing_sectionHeading > h2 { max-width: 820px; color: var(--lp-text); letter-spacing: normal; white-space: normal; text-wrap-style: balance; font-size: clamp(calc(var(--font-size-display) * 2.15 / 3), 4.4vw, calc(var(--font-size-display) * 4.5 / 3)); line-height: 1.4; }
.landing_outputSection { background: var(--lp-canvas); }
.landing_compactOutputList { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 10px; }
.landing_compactOutputList li { min-height: 112px; color: var(--lp-text); border: 1px solid var(--lp-line); background: var(--lp-surface); border-radius: calc(var(--radius-surface) * 6 / 24); grid-template-columns: 34px minmax(0px, 1fr); align-items: center; gap: 14px; padding: 18px; display: grid; }
.landing_compactOutputList li > span { width: 32px; height: 32px; color: var(--brand-night); background: var(--lp-mist); border: 0px; border-radius: calc(var(--radius-surface) * 5 / 24); place-items: center; display: grid; }
.landing_compactOutputList p { color: var(--lp-text); font-size: calc(var(--font-size-label) * 0.9 / 0.875); line-height: 1.7; }
.landing_trustSection { color: var(--lp-text); background: var(--lp-surface); border: 0px; }
.landing_expertGrid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 12px; }
.landing_expert, .landing_specialistExpert { min-height: 320px; color: var(--lp-text); border: 1px solid var(--lp-line); background: var(--lp-canvas); box-shadow: none; border-radius: calc(var(--radius-surface) * 6 / 24); overflow: hidden; }
.landing_portrait { --portrait-background: var(--lp-surface-strong); }
.landing_expertDetails > small { color: var(--lp-mist); }
.landing_expert h3 { color: var(--lp-text); }
.landing_expertDetails > p, .landing_specialistExpert .landing_expertDetails > p { color: var(--lp-muted); }
.landing_expertFields li { color: var(--lp-text); border-color: var(--lp-line); }
.landing_specialistLabel { color: var(--brand-night); background: var(--lp-mist); }
.landing_expertDetails > a { color: var(--lp-mist); }
.landing_barDirectory { border: 1px solid var(--lp-line); color: var(--lp-text); background: var(--lp-surface-strong); border-radius: calc(var(--radius-surface) * 6 / 24); }
.landing_reviewsSection { background: var(--lp-canvas); border: 0px; }
.landing_googleReviewsBox { border: 1px solid var(--lp-line); background: var(--lp-surface); border-radius: calc(var(--radius-surface) * 8 / 24); overflow: hidden; }
.landing_googleRatingBlock { color: var(--lp-text); background: var(--lp-surface-strong); }
.landing_ratingSource, .landing_ratingStars { color: var(--lp-mist); }
.landing_ratingCount { color: var(--lp-text); font-size: var(--font-size-body); line-height: 1.8; }
.landing_googleRatingBlock > a { color: var(--brand-night); background: var(--lp-mist); border-radius: calc(var(--radius-control) * 6 / 14); }
.landing_sideCta, .landing_stickyCta { background: var(--lp-canvas); border-color: var(--lp-line); box-shadow: none; backdrop-filter: none; }
.landing_page .landing_sideCta a { border-color: var(--lp-line); border-radius: calc(var(--radius-control) * 6 / 14); animation: auto ease 0s 1 normal none running none; }
@media (max-width: 719px){.landing_hero, .landing_labourHero { align-content: center; min-height: auto; padding-top: 70px; }
.landing_heroWithSpotlight { grid-template-columns: 1fr; }
.landing_heroWithSpotlight .landing_heroContent { padding: 0px; }
.landing_hero h1, .landing_hero h1.landing_labourHeroTitle, .landing_labourHero .landing_labourHeroTitle { font-size: clamp(calc(var(--font-size-display) * 2.45 / 3), 12vw, calc(var(--font-size-display) * 3.65 / 3)); line-height: 1.4; }
.landing_heroProofs, .landing_labourHeroProofs, .landing_compactOutputList, .landing_expertGrid { grid-template-columns: 1fr; }
.landing_expert { grid-template-columns: 116px minmax(0px, 1fr); }
.landing_googleReviewsBox { grid-template-columns: 1fr; grid-template-areas: "rating" "photo" "themes"; }}
@media (min-width: 1024px){.landing_hero { min-height: 720px; }
.landing_heroWithSpotlight .landing_heroContent { padding: 0px; }
.landing_sideCta, .landing_stickyCta { grid-template-columns: repeat(3, 56px); width: auto; inset: auto 24px 24px auto; }
[dir="rtl"] .landing_sideCta, [dir="rtl"] .landing_stickyCta { inset: auto auto 24px 24px; }
.landing_page .landing_sideCta a { min-height: 56px; }}
.landing_page { --lp-canvas: var(--canvas); --lp-surface: var(--surface); --lp-surface-strong: var(--surface-soft); --lp-line: var(--border); }
:root[data-theme="light"] .landing_page { --lp-canvas: var(--canvas); --lp-surface: var(--surface); --lp-surface-strong: var(--surface-soft); }
.landing_hero, .landing_labourHero { isolation: isolate; border-bottom: 1px solid var(--lp-line); min-height: clamp(650px, 78svh, 820px); padding-block: clamp(88px, 11vw, 144px); position: relative; }
.landing_hero::after, .landing_labourHero::after { content: ""; z-index: 0; aspect-ratio: var(--brand-mark-aspect, 1); filter: brightness(0) invert(); opacity: 0.025; pointer-events: none; background: var(--brand-mark-image, none) 50% center / contain no-repeat; width: clamp(360px, 48vw, 680px); display: block; position: absolute; inset-block-start: 50%; inset-inline-end: clamp(-180px, -8vw, -72px); transform: translateY(-50%); }
:root[data-theme="light"] .landing_hero::after, :root[data-theme="light"] .landing_labourHero::after { filter: none; opacity: 0.022; }
.landing_heroContent, .landing_heroWithSpotlight > * { z-index: 1; position: relative; }
.landing_hero h1, .landing_hero h1.landing_labourHeroTitle, .landing_labourHero .landing_labourHeroTitle { letter-spacing: normal; max-width: 850px; font-size: clamp(calc(var(--font-size-display) * 2.75 / 3), 6.4vw, calc(var(--font-size-display) * 5.45 / 3)); line-height: 1.4; }
.landing_lead, .landing_labourHero .landing_lead { max-width: 660px; margin-top: 25px; line-height: 1.9; }
.landing_heroProofs, .landing_labourHeroProofs { max-width: 660px; margin-top: 36px; }
.landing_heroProofs li, .landing_labourHeroProofs li { min-height: 60px; font-size: calc(var(--font-size-label) * 0.88 / 0.875); }
.landing_heroSpotlight, .landing_labourHeroSpotlight { border: 0px; border-block: 1px solid color-mix(in srgb,var(--brand-ink) 20%,transparent); background: var(--lp-paper); border-radius: calc(var(--radius-surface) * 2 / 24); padding: clamp(28px, 4vw, 42px); }
.landing_heroSpotlight::before { display: none; }
.landing_heroSpotlight > p, .landing_labourHeroSpotlight > p { font-size: var(--font-size-body); line-height: 1.9; }
.landing_section { isolation: isolate; padding-block: clamp(82px, 9vw, 124px); position: relative; overflow: hidden; }
.landing_sectionHeading { margin-bottom: clamp(38px, 5vw, 58px); }
.landing_sectionHeading > h2 { max-width: 760px; font-size: clamp(calc(var(--font-size-display) * 2 / 3), 4.2vw, calc(var(--font-size-display) * 4 / 3)); line-height: 1.4; }
.landing_compactOutputList { border-top: 1px solid var(--lp-line); grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 0px; display: grid; }
.landing_compactOutputList li { border-top: 0px; border-right: 0px; border-left: 0px; border-image: initial; border-bottom: 1px solid var(--lp-line); border-inline-end: 1px solid var(--lp-line); background: 0px 0px; border-radius: 0px; min-height: 104px; padding: 20px 4px; }
.landing_compactOutputList li:nth-child(2n) { border-inline-end: 0px; }
.landing_compactOutputList li > span { color: var(--lp-text); border: 1px solid var(--lp-line); background: 0px 0px; }
.landing_compactOutputList p { font-size: calc(var(--font-size-body) * 0.96); line-height: 1.8; }
.landing_trustSection { background: var(--lp-surface); }
.landing_expertGrid { gap: 14px; }
.landing_expert, .landing_specialistExpert { border-color: var(--lp-line); background: var(--lp-canvas); border-radius: calc(var(--radius-surface) * 2 / 24); }
.landing_specialistExpert { box-shadow: inset 0 3px 0 var(--lp-mist); }
.landing_expertFields { gap: 8px; }
.landing_expertFields li { border-top: 0px; border-right: 0px; border-left: 0px; border-image: initial; border-bottom: 1px solid var(--lp-line); padding: 6px 0px; }
.landing_barDirectory { border-radius: calc(var(--radius-surface) * 2 / 24); min-height: 80px; margin-top: 14px !important; }
.landing_reviewsSection { background: var(--lp-canvas); }
.landing_googleReviewsBox { background: 0px 0px; border: 0px; border-radius: calc(var(--radius-surface) * 2 / 24); }
.landing_googleRatingBlock { background: var(--lp-surface-strong); padding: clamp(28px, 4vw, 44px); }
.landing_googleOfficePhoto { background: var(--lp-surface); }
@media (max-width: 719px){.landing_hero, .landing_labourHero { min-height: auto; padding-block: 76px 84px; }
.landing_hero::after, .landing_labourHero::after { opacity: 0.022; width: 430px; inset-inline-end: -190px; }
.landing_hero h1, .landing_hero h1.landing_labourHeroTitle, .landing_labourHero .landing_labourHeroTitle { font-size: clamp(calc(var(--font-size-display) * 2.35 / 3), 11.4vw, calc(var(--font-size-display) * 3.55 / 3)); }
.landing_heroSpotlight, .landing_labourHeroSpotlight { padding: 28px 20px; }
.landing_compactOutputList { grid-template-columns: 1fr; }
.landing_compactOutputList li, .landing_compactOutputList li:nth-child(2n) { border-inline-end: 0px; min-height: 88px; }}
.landing_disputeLanding .landing_sectionHeading > h2 { max-width: none; font-size: min(var(--one-line-heading-mobile,8.6vw),calc(var(--font-size-display) * 4.65 / 3)); white-space: nowrap; text-wrap-style: initial; }
.landing_disputeLanding .landing_compactOutputSection .landing_sectionHeading > h2 { font-size: min(var(--one-line-heading-mobile,6.4vw),calc(var(--font-size-heading-1) * 2.2 / 2.25)); }
.landing_disputeLanding .landing_labourHeroTitle { white-space: nowrap; text-wrap-style: initial; }
@media (min-width: 860px){.landing_disputeLanding .landing_sectionHeading > h2 { font-size: min(var(--one-line-heading-desktop,4.65vw),calc(var(--font-size-display) * 4.65 / 3)); }
.landing_disputeLanding .landing_compactOutputSection .landing_sectionHeading > h2 { font-size: min(var(--one-line-heading-desktop,3vw),calc(var(--font-size-heading-1) * 2.2 / 2.25)); }}
@media (max-width: 719px){.landing_page { --lp-header-height: 78px; padding-bottom: 0px; overflow-x: clip; }
.landing_hero, .landing_labourHero, .landing_labourHero.landing_heroWithSpotlight { min-height: auto; padding: 64px 18px 72px; }
.landing_heroWithSpotlight { grid-template-columns: minmax(0px, 1fr); gap: 24px; }
.landing_hero h1, .landing_hero h1.landing_labourHeroTitle, .landing_labourHero .landing_labourHeroTitle, .landing_disputeLanding .landing_labourHeroTitle { overflow-wrap: normal; width: auto; max-width: 14ch; padding: 0px; line-height: 1.4; white-space: normal !important; text-wrap-style: balance !important; font-size: clamp(calc(var(--font-size-display) * 2.3 / 3), 11.5vw, calc(var(--font-size-display) * 3.55 / 3)) !important; }
.landing_lead, .landing_labourHero .landing_lead { max-width: 34ch; margin-top: 20px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.78; }
.landing_heroSpotlight, .landing_labourHeroSpotlight { width: 100%; padding: 24px 18px; }
.landing_heroSpotlight h2, .landing_labourHeroSpotlight h2 { font-size: calc(var(--font-size-heading-3) * 1.45 / 1.375); }
.landing_heroProofs, .landing_labourHeroProofs { margin-top: 24px; }
.landing_section { padding: 60px 18px; }
.landing_sectionHeading { margin-bottom: 28px; }
.landing_sectionHeading > h2, .landing_disputeLanding .landing_sectionHeading > h2, .landing_disputeLanding .landing_compactOutputSection .landing_sectionHeading > h2 { max-width: 16ch; line-height: 1.4; white-space: normal !important; text-wrap-style: balance !important; font-size: clamp(calc(var(--font-size-display) * 2 / 3), 9.5vw, var(--font-size-display)) !important; }
.landing_compactOutputList, .landing_outputList, .landing_advantageGrid, .landing_expertGrid { grid-template-columns: 1fr; }
.landing_compactOutputList li { min-height: 84px; }
.landing_googleReviewsBox { grid-template-columns: 1fr; grid-template-areas: "rating" "photo" "themes"; }
.landing_googleOfficePhoto img { min-height: 190px; max-height: 280px; }
.landing_page .landing_sideCta { grid-template-columns: 44px; inset-inline-end: 6px; }
.landing_page .landing_sideCta a { width: 44px; min-height: 44px; }}
@media (max-width: 430px){.landing_expert { grid-template-columns: 1fr; }
.landing_portrait { min-height: 230px; max-height: 310px; }
.landing_expertDetails { padding: 18px; }}
.landing_page { --lp-header-height: 78px; }
@media (max-width: 820px){.landing_page { --lp-header-height: 70px; }}
.landing_page .landing_sideCta { grid-template-columns: auto; }
.landing_page .landing_sideCta a[data-contact-action] { white-space: nowrap; width: auto; min-width: 108px; padding: 10px 14px; font-size: var(--font-size-label); line-height: 1.5; }
@media (max-width: 820px){.landing_page .landing_sideCta a[data-contact-action] { display: none; }}
.quality_page { color: var(--text); background: var(--canvas); }
.quality_page main { width: min(calc(100% - 2 * var(--layout-gutter)),var(--layout-content-max)); margin-inline: auto; padding-top: clamp(8rem, 12vw, 11rem); padding-bottom: 4rem; }
.quality_hero { grid-template-columns: minmax(0px, 1.5fr) minmax(0px, 1fr); align-items: center; gap: clamp(2rem, 7vw, 6rem); display: grid; }
.quality_hero h1 { margin: 1.5rem 0px; font-size: clamp(calc(var(--font-size-display) * 2 / 3), 4vw, calc(var(--font-size-display) * 3.5 / 3)); line-height: 1.4; }
.quality_page p { color: var(--text-secondary); max-width: 68ch; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.95; }
.quality_logo { object-fit: contain; width: 10rem; height: 4rem; }
.quality_page figure { justify-self: center; max-width: 22rem; margin: 0px; }
.quality_page figure img { border: 1px solid var(--night-line); border-radius: calc(var(--radius-surface) * 0.5 * var(--root-px) / 24); width: 100%; height: auto; display: block; }
.quality_page figcaption { color: var(--text-secondary); text-align: center; margin-top: 1rem; font-size: var(--font-size-label); }
.quality_section { padding-top: clamp(4rem, 8vw, 7rem); }
.quality_section h2 { margin: 0px 0px 1.25rem; font-size: clamp(calc(var(--font-size-heading-1) * 1.6 / 2.25), 3vw, calc(var(--font-size-heading-1) * 2.4 / 2.25)); line-height: 1.5; }
.quality_intro { margin-bottom: 2rem; }
.quality_grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 1.25rem; display: grid; }
.quality_grid article { border: 1px solid var(--night-line); background: var(--glass-surface,var(--canvas)); border-radius: calc(var(--radius-surface) * 1.5 * var(--root-px) / 24); padding: clamp(1.3rem, 3vw, 2rem); }
.quality_grid small { color: var(--text-secondary); font-size: var(--font-size-label); }
.quality_grid h3, .quality_application h3 { margin: 0.7rem 0px; font-size: calc(var(--font-size-heading-3) * 1.25 / 1.375); line-height: 1.7; }
.quality_grid p { margin: 0px; }
.quality_application { grid-template-columns: minmax(0px, 0.75fr) minmax(0px, 1.25fr); align-items: center; gap: clamp(2rem, 7vw, 6rem); display: grid; }
.quality_application figure { max-width: 18rem; }
@media (max-width: 700px){.quality_hero, .quality_application, .quality_grid { grid-template-columns: minmax(0px, 1fr); }
.quality_hero figure { max-width: 16rem; }
.quality_application figure { order: 2; max-width: 14rem; }
.quality_page p { font-size: var(--font-size-body); }}
.knowledge-hub_page { width: var(--layout-shell-width); max-width: 1440px; color: var(--text); min-width: 0px; margin-inline: auto; padding: 24px 0px 64px; }
.knowledge-hub_page * { box-sizing: border-box; }
.knowledge-hub_page a { color: inherit; }
.knowledge-hub_page button, .knowledge-hub_page input, .knowledge-hub_page select { font: inherit; }
.knowledge-hub_hero { margin-bottom: 20px; }
.knowledge-hub_hero h1 { margin: 0px; font-size: clamp(calc(var(--font-size-heading-1) * 28 / (2.25 * var(--root-px))), 3vw, calc(var(--font-size-heading-1) * 40 / (2.25 * var(--root-px)))); line-height: 1.5; }
.knowledge-hub_searchBar { align-items: stretch; gap: 10px; margin-bottom: 20px; display: flex; }
.knowledge-hub_search { border: 1px solid var(--border-strong); background: var(--surface); border-radius: calc(var(--radius-input) * 8 / 14); flex: 1 1 0%; align-items: center; gap: 12px; min-width: 0px; min-height: 52px; padding-inline: 14px; display: flex; }
.knowledge-hub_search:focus-within { outline: 2px solid var(--focus); outline-offset: 2px; }
.knowledge-hub_search input { width: 100%; min-width: 0px; color: var(--text); background: 0px 0px; border: 0px; outline: none; flex: 1 1 0%; padding: 12px 0px; font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); }
.knowledge-hub_search input::placeholder { color: var(--text-secondary); opacity: 1; }
.knowledge-hub_search button { color: var(--text); cursor: pointer; background: 0px 0px; border: 0px; min-height: 44px; }
.knowledge-hub_filterButton, .knowledge-hub_submit { border: 1px solid var(--border-strong); background: var(--surface); min-height: 52px; color: var(--text); cursor: pointer; white-space: nowrap; border-radius: calc(var(--radius-control) * 8 / 14); justify-content: center; align-items: center; gap: 8px; padding: 10px 16px; display: flex; }
.knowledge-hub_submit, .knowledge-hub_filterButton[aria-expanded="true"] { background: var(--action); color: var(--on-action); }
.knowledge-hub_tabs { scrollbar-width: thin; border-bottom: 1px solid var(--border); align-items: stretch; gap: 4px; margin-bottom: 0px; padding-bottom: 0px; display: flex; overflow-x: auto; }
.knowledge-hub_tabs a { white-space: nowrap; border-bottom: 3px solid rgba(0, 0, 0, 0); flex: 1 1 0%; justify-content: center; align-items: center; gap: 10px; min-height: 52px; padding: 10px 16px; font-size: calc(var(--font-size-body) * 18 / (var(--root-px))); line-height: 1.5; text-decoration: none; display: flex; }
.knowledge-hub_tabs a[aria-current="page"] { border-bottom-color: var(--text); background: var(--surface-soft); font-weight: calc(var(--font-weight-body) + 300); }
.knowledge-hub_tabs a:hover { background: var(--surface-soft); }
.knowledge-hub_tabs small { color: var(--text-secondary); font-variant-numeric: tabular-nums; font-size: calc(var(--font-size-caption) * 12 / (0.75 * var(--root-px))); font-weight: var(--font-weight-body); line-height: 1.5; }
.knowledge-hub_secondaryTabs { gap: 12px; margin-top: 4px; }
.knowledge-hub_secondaryTabs a { border-bottom-width: 2px; flex: 0 0 auto; gap: 8px; min-height: 46px; padding: 8px 10px; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); }
.knowledge-hub_secondaryTabs a[aria-current="page"] { background: 0px 0px; }
.knowledge-hub_filters { border: 1px solid var(--border); background: var(--surface-soft); border-radius: calc(var(--radius-surface) * 8 / 24); grid-template-columns: 2fr 1fr 1fr auto; align-items: end; gap: 16px; margin-bottom: 16px; padding: 16px; display: grid; }
.knowledge-hub_filters[hidden] { display: none; }
.knowledge-hub_filters label { gap: 8px; min-width: 0px; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); display: grid; }
.knowledge-hub_filters select { border: 1px solid var(--border-strong); background: var(--surface); width: 100%; min-width: 0px; min-height: 44px; color: var(--text); border-radius: calc(var(--radius-input) * 6 / 14); padding: 8px; }
.knowledge-hub_scopeFilter { margin: 0px; }
.knowledge-hub_textButton { color: var(--text); text-underline-offset: 4px; cursor: pointer; background: 0px 0px; border: 0px; min-height: 44px; padding: 8px; text-decoration: underline; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))) !important; }
.knowledge-hub_resultBar { min-height: 52px; color: var(--text-secondary); justify-content: space-between; align-items: center; gap: 12px; font-size: calc(var(--font-size-caption) * 13 / (0.75 * var(--root-px))); display: flex; }
.knowledge-hub_grid { grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 12px; display: grid; }
.knowledge-hub_card { border: 1px solid var(--border); background: var(--surface); border-radius: calc(var(--radius-surface) * 8 / 24); flex-direction: column; gap: 10px; min-width: 0px; padding: 16px; display: flex; }
.knowledge-hub_card:hover { border-color: var(--border-strong); }
.knowledge-hub_cardTop { justify-content: space-between; align-items: center; gap: 8px; min-height: 30px; display: flex; }
.knowledge-hub_provider { color: var(--text-secondary); font-size: calc(var(--font-size-caption) * 12 / (0.75 * var(--root-px))); line-height: 1.6; }
.knowledge-hub_logo { object-fit: contain; object-position: right center; width: auto !important; max-width: 86px !important; height: 28px !important; max-height: 28px !important; }
.knowledge-hub_cardMain { text-decoration: none; display: block; }
.knowledge-hub_cardMain h2 { overflow-wrap: anywhere; justify-content: space-between; gap: 8px; margin: 0px 0px 8px; font-size: calc(var(--font-size-body) * 18 / (var(--root-px))); line-height: 1.6; display: flex; }
.knowledge-hub_cardMain h2 > span { flex-shrink: 0; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); font-weight: var(--font-weight-body); }
.knowledge-hub_cardMain:hover h2 { text-underline-offset: 4px; text-decoration: underline; }
.knowledge-hub_cardMain p { color: var(--text-secondary); margin: 0px; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); line-height: 1.8; }
.knowledge-hub_cardFooter { color: var(--text-secondary); justify-content: space-between; align-items: center; gap: 8px; margin-top: auto; padding-top: 6px; font-size: calc(var(--font-size-caption) * 12 / (0.75 * var(--root-px))); line-height: 1.7; display: flex; }
.knowledge-hub_status { border: 1px solid var(--border); white-space: nowrap; border-radius: calc(var(--radius-status) * 12 / 4); padding: 2px 8px; font-size: calc(var(--font-size-caption) * 11 / (0.75 * var(--root-px))); }
.knowledge-hub_cardDetails { border-top: 1px solid var(--border); font-size: calc(var(--font-size-caption) * 13 / (0.75 * var(--root-px))); line-height: 1.8; }
.knowledge-hub_cardDetails summary { cursor: pointer; justify-content: space-between; align-items: center; min-height: 44px; display: flex; }
.knowledge-hub_cardDetails summary::after { content: "+"; font-size: calc(var(--font-size-body) * 17 / (var(--root-px))); }
.knowledge-hub_cardDetails[open] summary::after { content: "−"; }
.knowledge-hub_cardDetails p { color: var(--text-secondary); margin: 0px 0px 8px; }
.knowledge-hub_cardDetails a, .knowledge-hub_cardDetails time { overflow-wrap: anywhere; margin-bottom: 6px; display: block; }
.knowledge-hub_cardDetails a { text-underline-offset: 4px; min-height: 32px; }
.knowledge-hub_cardDetails time { color: var(--text-secondary); font-size: calc(var(--font-size-caption) * 12 / (0.75 * var(--root-px))); }
.knowledge-hub_empty { text-align: center; color: var(--text-secondary); border: 1px solid var(--border); border-radius: calc(var(--radius-surface) * 8 / 24); padding: 40px 16px; font-size: calc(var(--font-size-body) * 18 / (var(--root-px))); }
.knowledge-hub_more { background: var(--surface); min-height: 48px; color: var(--text); border: 1px solid var(--border-strong); cursor: pointer; border-radius: calc(var(--radius-control) * 8 / 14); margin: 24px auto 0px; padding: 10px 24px; display: block; }
.knowledge-hub_soon { margin-top: 24px; }
:is(.knowledge-hub_page a:focus-visible, .knowledge-hub_page button:focus-visible, .knowledge-hub_page select:focus-visible, .knowledge-hub_page summary:focus-visible) { outline: 3px solid var(--focus); outline-offset: 3px; }
@media (max-width: 1100px){.knowledge-hub_grid { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
.knowledge-hub_filters { grid-template-columns: repeat(2, minmax(0px, 1fr)); }}
@media (max-width: 800px){.knowledge-hub_grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
.knowledge-hub_tabs a { gap: 7px; padding-inline: 12px; font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); }
.knowledge-hub_secondaryTabs a { font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); }}
@media (max-width: 520px){.knowledge-hub_page { padding-top: 20px; }
.knowledge-hub_hero { margin-bottom: 16px; }
.knowledge-hub_searchBar { gap: 8px; margin-bottom: 12px; }
.knowledge-hub_search { gap: 8px; padding-inline: 10px; }
.knowledge-hub_filterButton, .knowledge-hub_submit { padding-inline: 10px; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))) !important; }
.knowledge-hub_tabs { gap: 0px; }
.knowledge-hub_tabs a { flex-direction: column; gap: 1px; min-width: 72px; min-height: 58px; padding: 7px 10px; font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); }
.knowledge-hub_secondaryTabs { gap: 4px; }
.knowledge-hub_secondaryTabs a { flex-direction: row; gap: 6px; min-width: auto; min-height: 46px; font-size: calc(var(--font-size-caption) * 13 / (0.75 * var(--root-px))); }
.knowledge-hub_grid { grid-template-columns: 1fr; gap: 10px; }
.knowledge-hub_card { gap: 8px; padding: 14px; }
.knowledge-hub_cardMain h2 { font-size: calc(var(--font-size-body) * 18 / (var(--root-px))); }
.knowledge-hub_filters { grid-template-columns: 1fr; padding: 12px; }
.knowledge-hub_resultBar { min-height: 48px; }}
.qadha-bookshelf_collection { padding-block: 8px 32px; }
.qadha-bookshelf_intro { flex-wrap: wrap; align-items: baseline; gap: 4px 20px; margin-block: 0px 20px; display: flex; }
.qadha-bookshelf_intro h2 { margin: 0px; font-size: calc(var(--font-size-heading-3) * 1.5 / 1.375); line-height: 1.6; }
.qadha-bookshelf_intro p, .qadha-bookshelf_intro > span { color: var(--text-secondary); margin: 0px; font-size: var(--font-size-label); line-height: 1.8; }
.qadha-bookshelf_intro > span { margin-inline-start: auto; }
.qadha-bookshelf_shelf { --book-height: 18rem; grid-template-columns: repeat(5, minmax(0px, 1fr)); gap: 32px 0px; display: grid; }
.qadha-bookshelf_book { text-align: start; flex-direction: column; min-width: 0px; display: flex; position: relative; }
.qadha-bookshelf_bookLink, .qadha-bookshelf_unavailable { color: var(--text); text-decoration: none; display: block; }
.qadha-bookshelf_stage { height: calc(var(--book-height) + 2rem); background: linear-gradient(to top,var(--surface-soft),transparent 70%); justify-content: center; align-items: flex-end; margin-bottom: 28px; padding: 2rem 20px 0px; display: flex; position: relative; }
.qadha-bookshelf_stage::after { content: ""; background: linear-gradient(to bottom,var(--surface-soft) 0 3px,var(--border-strong) 3px 4px,var(--border) 4px 100%); border-bottom: 1px solid var(--border-strong); height: 12px; box-shadow: 0 12px 16px -9px color-mix(in srgb,var(--text) 35%,transparent); pointer-events: none; position: absolute; inset-block-end: -12px; inset-inline: 0px; }
.qadha-bookshelf_cover { object-fit: contain; object-position: center bottom; width: auto; max-width: 100%; height: auto; max-height: 100%; box-shadow: 4px 4px 10px color-mix(in srgb,var(--text) 20%,transparent); border-radius: 1px 2px 2px 1px; transition: transform 0.22s, box-shadow 0.22s; display: block; }
:is(.qadha-bookshelf_bookLink:hover .qadha-bookshelf_cover, .qadha-bookshelf_bookLink:focus-visible .qadha-bookshelf_cover) { box-shadow: 5px 10px 16px color-mix(in srgb,var(--text) 24%,transparent); transform: translateY(-6px); }
.qadha-bookshelf_caption { padding-inline: 16px; }
.qadha-bookshelf_caption h2 { overflow-wrap: anywhere; margin: 0px; font-size: var(--font-size-body); font-weight: calc(var(--font-weight-body) + 200); line-height: 1.8; }
.qadha-bookshelf_bookMeta { padding-inline: 16px; align-items: center; gap: 10px; min-height: 48px; margin-top: auto; padding-top: 4px; display: flex; }
.qadha-bookshelf_bookMeta > span:last-child { margin-inline-start: auto; }
.qadha-bookshelf_rank { color: var(--text-secondary); font-family: var(--font-numerals); font-variant-numeric: tabular-nums; font-size: var(--font-size-caption); }
.qadha-bookshelf_action { color: var(--text-secondary); font-size: var(--font-size-label); line-height: 1.7; }
:is(.qadha-bookshelf_bookLink:focus-visible, .qadha-bookshelf_source:focus-visible) { outline: 3px solid var(--focus); outline-offset: 4px; border-radius: calc(var(--radius-status) * 3 / 4); }
.qadha-bookshelf_source { text-underline-offset: 4px; min-height: 44px; color: var(--text); margin: 8px 16px; font-size: var(--font-size-label); line-height: 1.7; display: inline-block; }
.qadha-bookshelf_textEdition { width: 100%; max-width: 190px; height: 100%; color: var(--text); text-align: center; border: 1px solid var(--border); background: var(--surface); flex-direction: column; justify-content: space-between; gap: 16px; padding: 18px 8px; display: flex; }
.qadha-bookshelf_textEdition span { color: var(--text-secondary); font-size: var(--font-size-label); }
.qadha-bookshelf_textEdition strong { font-size: var(--font-size-heading-4); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.8; }
@media (max-width: 1200px){.qadha-bookshelf_shelf { grid-template-columns: repeat(4, minmax(0px, 1fr)); }}
@media (max-width: 900px){.qadha-bookshelf_shelf { --book-height: 16rem; grid-template-columns: repeat(3, minmax(0px, 1fr)); }
.qadha-bookshelf_intro > span { margin-inline-start: 0px; }
.qadha-bookshelf_stage { padding-inline: 16px; }}
@media (max-width: 600px){.qadha-bookshelf_shelf { --book-height: clamp(10rem,58vw,17rem); grid-template-columns: repeat(2, minmax(0px, 1fr)); row-gap: 24px; }
.qadha-bookshelf_stage { padding-inline: 10px; height: calc(var(--book-height) + 1.5rem); margin-bottom: 24px; padding-top: 1.5rem; }
.qadha-bookshelf_caption, .qadha-bookshelf_bookMeta { padding-inline: 10px; }
.qadha-bookshelf_caption h2 { font-size: var(--font-size-label); line-height: 1.8; }
.qadha-bookshelf_bookMeta { flex-wrap: wrap; gap: 6px; }
.qadha-bookshelf_textEdition { gap: 8px; padding: 12px 6px; }
.qadha-bookshelf_textEdition strong { font-size: var(--font-size-body); }
.qadha-bookshelf_intro { margin-bottom: 12px; }
.qadha-bookshelf_intro h2 { width: 100%; font-size: var(--font-size-heading-3); }}
@media (prefers-reduced-motion: reduce){.qadha-bookshelf_cover { transition: none; }
:is(.qadha-bookshelf_bookLink:hover .qadha-bookshelf_cover, .qadha-bookshelf_bookLink:focus-visible .qadha-bookshelf_cover) { transform: none; }}
.workspace-ui_dateTile { border: 1px solid var(--border); background: var(--surface-soft); font-variant-numeric: tabular-nums; border-radius: calc(var(--radius-surface) * 18 / 24); flex-direction: column; justify-content: center; align-items: center; min-width: 68px; min-height: 91px; line-height: 1.25; display: flex; }
.workspace-ui_dateTile small { color: var(--text-secondary); font-size: var(--font-size-caption); }
.workspace-ui_dateTile b { font-size: calc(var(--font-size-heading-1) * 2.05 / 2.25); font-weight: calc(var(--font-weight-body) + 100); }
.workspace-ui_dateTile > span { font-size: calc(var(--font-size-label) * 0.85 / 0.875); }
@media (forced-colors: active){.workspace-ui_glass, .workspace-ui_dateTile, .workspace-ui_timelineMarker { color: canvastext; box-shadow: none; background: canvas; border: 1px solid canvastext; }}
.professional-portrait_card { border-radius: calc(var(--radius-surface) - 8px); }
.professional-portrait_profile { width: 100%; }
.professional-portrait_compact { border-radius: calc(var(--radius-surface) * 12 / 24); flex: 0 0 80px; width: 80px; }
.logo-gallery_gallery { --logo-width: 190px; --logo-height: 96px; --logo-gap: 24px; width: 100%; min-width: 0px; scroll-margin-top: 110px; }
.logo-gallery_moving { contain: inline-size; overflow-anchor: none; }
.logo-gallery_moving .logo-gallery_logo { background: var(--logo-slider-surface); border-radius: var(--radius-control); }
.logo-gallery_grid { gap: var(--logo-gap); grid-template-columns: repeat(4, minmax(0px, 1fr)); margin: 0px; padding: 0px; list-style: none; display: grid; }
.logo-gallery_logo { min-width: 0px; height: var(--logo-height); background: 0px 0px; justify-content: center; align-items: center; padding: 18px; display: flex; }
.logo-gallery_logo img { object-fit: contain; width: 100%; max-width: 154px; height: 100%; max-height: 48px; display: block; }
.logo-gallery_logo[data-size="wide"] img, .logo-gallery_logo[data-size="wide"] > span, .logo-gallery_logo[data-size="wide"] > a > span { max-width: 172px; }
.logo-gallery_viewport { contain: layout paint; direction: ltr; width: 100%; min-width: 0px; max-width: 100%; position: relative; overflow: hidden; }
.logo-gallery_track { width: max-content; animation: _logo-drift_in2qw_1 var(--logo-duration) linear infinite; will-change: transform; display: flex; }
.logo-gallery_cycle { gap: var(--logo-gap); padding: 0 var(--logo-gap) 0 0; flex: 0 0 auto; margin: 0px; list-style: none; display: flex; }
.logo-gallery_cycle .logo-gallery_logo { flex: 0 0 var(--logo-width); width: var(--logo-width); }
.logo-gallery_moving[data-motion="paused"] .logo-gallery_track, .logo-gallery_moving:hover .logo-gallery_track, .logo-gallery_moving:focus-within .logo-gallery_track { animation-play-state: paused; }
@media (max-width: 700px){.logo-gallery_gallery { --logo-width: 150px; --logo-height: 84px; --logo-gap: 16px; }
.logo-gallery_logo { padding: 14px; }
.logo-gallery_grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }}
@media (prefers-reduced-motion: reduce){.logo-gallery_moving .logo-gallery_track { animation-duration: var(--logo-duration) !important; animation-iteration-count: infinite !important; }}
.professional-card_card { border: 1px solid var(--border); border-radius: var(--radius-surface); background: var(--surface); min-width: 0px; color: var(--text); text-align: start; flex-direction: column; transition: border-color 0.2s, box-shadow 0.2s; display: flex; overflow: hidden; }
.professional-card_profileLink { color: inherit; flex: 1 1 0%; grid-template-columns: minmax(0px, 0.8fr) minmax(0px, 1.2fr); align-items: start; gap: clamp(16px, 2vw, 24px); padding: 20px; text-decoration: none; display: grid; }
.professional-card_profileLink:not(:has(figure)) { grid-template-columns: 1fr; }
.professional-card_copy { flex-direction: column; align-self: stretch; min-width: 0px; padding-block: 0px; display: flex; }
.professional-card_copy h3 { text-wrap: balance; overflow-wrap: break-word; color: inherit; margin: 0px; font-size: clamp(calc(var(--font-size-heading-3) * 1.25 / 1.375), 1.6vw, calc(var(--font-size-heading-3) * 1.55 / 1.375)); font-weight: max(var(--font-weight-body), calc(var(--font-weight-heading-3) - 100)); line-height: 1.65; }
.professional-card_role { color: var(--text-muted); margin-top: 4px; font-size: calc(var(--font-size-body) * 0.95); line-height: 1.7; }
.professional-card_copy p { color: var(--text-muted); text-wrap: pretty; margin: 16px 0px 20px; font-size: var(--font-size-body); line-height: 1.85; }
.professional-card_view { align-items: center; gap: 10px; min-height: 44px; margin-top: auto; font-size: calc(var(--font-size-body) * 0.95); font-weight: calc(var(--font-weight-body) + 200); display: flex; }
.professional-card_email { border-top: 1px solid var(--border); min-height: 52px; color: inherit; align-items: center; gap: 12px; margin: 0px 16px; padding: 10px 4px; font-size: var(--font-size-body); text-decoration: none; display: flex; }
.professional-card_email bdi { overflow-wrap: anywhere; min-width: 0px; line-height: 1.7; }
.professional-card_email svg, .professional-card_view svg { flex-shrink: 0; }
.professional-card_card:hover, .professional-card_card:focus-within { border-color: var(--text-muted); box-shadow: 0 10px 28px color-mix(in srgb,var(--brand-ink) 9%,transparent); }
.professional-card_email:hover bdi, .professional-card_profileLink:hover .professional-card_view { text-underline-offset: 5px; text-decoration: underline; }
.professional-card_card a:focus-visible { outline-offset: -5px; border-radius: calc(var(--radius-surface) - 4px); outline: solid 2px; }
.professional-card_card[dir="rtl"] .professional-card_view svg { transform: rotate(180deg); }
@media (max-width: 480px){.professional-card_profileLink { grid-template-columns: 1fr; gap: 16px; padding: 16px; }
.professional-card_profileLink > figure { justify-self: center; width: 100%; max-width: 280px; }
.professional-card_copy { padding: 0px 4px 4px; }
.professional-card_copy h3 { font-size: calc(var(--font-size-heading-3) * 1.4 / 1.375); }
.professional-card_copy p { margin-block: 12px; }
.professional-card_email { min-height: 56px; }}
@media (prefers-reduced-motion: reduce){.professional-card_card { transition: none; }}
.home-reference_experience { padding: 64px var(--home-gutter); background: var(--brand-white); color: var(--brand-ink); border-block: 1px solid var(--border); }
.home-reference_experienceLayout { width: min(100%,var(--home-max)); grid-template-columns: minmax(230px, 0.65fr) minmax(0px, 1.85fr); align-items: center; gap: clamp(28px, 5vw, 80px); margin-inline: auto; display: grid; }
.home-reference_experienceLayout header h2 { white-space: normal; margin: 0px; font-size: calc(var(--font-size-heading-2) * 1.6 / 1.75); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.4; }
[dir="ltr"] .home-reference_experienceLayout header h2 { font-size: calc(var(--font-size-heading-4) * 1.1 / 1.125); }
.home-reference_experienceLayout header p { color: var(--text-secondary); margin: 20px 0px 0px; font-size: var(--font-size-body); line-height: 1.9; }
.home-reference_sectionHeading h2 { align-items: baseline; gap: 16px; display: flex; }
.home-reference_productDetails { border-top: 1px solid color-mix(in srgb,var(--brand-ink) 20%,transparent); color: var(--text-secondary); grid-column: 2; gap: 12px; margin-top: 12px; padding-top: 18px; font-size: var(--font-size-body); line-height: 1.8; display: grid; }
.home-reference_productDetails strong { color: var(--brand-ink); font-weight: calc(var(--font-weight-body) + 300); }
.home-reference_professionalLead { min-height: 44px; color: var(--brand-night); vertical-align: middle; background: 0px 0px; border: 0px; border-radius: 0px; align-items: center; gap: 7px; margin: 0px 4px; padding: 7px 0px; font-weight: calc(var(--font-weight-body) + 300); line-height: 1.35; text-decoration: none; transition: color 0.18s; display: inline-flex; }
:is(.home-reference_professionalLead:hover, .home-reference_professionalLead:focus-visible) { color: var(--brand-ink); background: 0px 0px; }
.home-reference_professionalLead:focus-visible { outline: 3px solid var(--brand-mist); outline-offset: 3px; }
[dir="rtl"] .home-reference_professionalLead svg { transform: rotate(180deg); }
.home-reference_productEnglish { letter-spacing: 0.02em; color: var(--text-secondary); text-align: start; font-family: inherit; font-size: calc(var(--font-size-body) * 0.95) !important; }
:root[data-theme="dark"] .home-reference_experience { color: var(--brand-paper); background: var(--brand-surface-dark); border-color: color-mix(in srgb,var(--brand-paper) 18%,transparent); }
:root[data-theme="dark"] .home-reference_experienceLayout header p, :root[data-theme="dark"] .home-reference_experienceNote { color: color-mix(in srgb,var(--brand-paper) 84%,transparent); }
:root[data-theme="dark"] .home-reference_benefitSummary, :root[data-theme="dark"] .home-reference_productDetails { border-color: color-mix(in srgb,var(--brand-paper) 20%,transparent); }
:root[data-theme="dark"] .home-reference_productDetails, :root[data-theme="dark"] .home-reference_productEnglish { color: color-mix(in srgb,var(--brand-paper) 84%,transparent); }
:root[data-theme="dark"] .home-reference_productDetails strong, :root[data-theme="dark"] .home-reference_professionalLead { color: var(--brand-paper); }
@media (max-width: 1050px){.home-reference_experienceLayout { grid-template-columns: 1fr; gap: 20px; }}
@media (max-width: 650px){.home-reference_experience { padding-block: 40px; }
.home-reference_experienceLayout { gap: 24px; }
.home-reference_productDetails { gap: 14px; font-size: var(--font-size-body); }
.home-reference_sectionHeading h2 { gap: 12px; }}
@media (prefers-reduced-motion: reduce){.home-reference_benefitSummary svg, .home-reference_professionalLead { transition: none; }}
.home-reference_experienceLayout[data-layout="strip"] { grid-template-columns: minmax(0px, 1fr); gap: 24px; }
.home-reference_experienceLayout[data-layout="strip"] > header { max-width: 760px; }
.home-reference_firmIntro { color: var(--text) !important; background: var(--canvas) !important; }
.home-reference_firmIntro .section-head { margin-bottom: 24px; display: block; }
.home-reference_firmIntro .section-head h2 { color: inherit; line-height: 1.4; }
.home-reference_firmIntroBody { display: block; }
.home-reference_firmIntroBody a { border-bottom: 1px solid var(--night-line); justify-content: space-between; align-items: center; min-height: 56px; font-weight: calc(var(--font-weight-body) + 300); display: flex; }
.home-reference_productDetails { font-size: calc(var(--font-size-body) * 0.96); display: block; }
.home-reference_productDetails summary { cursor: pointer; justify-content: space-between; align-items: center; gap: 12px; min-height: 44px; font-weight: calc(var(--font-weight-body) + 300); list-style: none; display: flex; }
.home-reference_productDetails summary::-webkit-details-marker { display: none; }
.home-reference_productDetails[open] summary svg { transform: rotate(180deg); }
.home-reference_productDetails > div { gap: 12px; padding-block: 14px; display: grid; }
@media (max-width: 760px){.home-reference_firmIntroBody, .home-reference_statusGrid { grid-template-columns: 1fr; }}
.home-reference_partnerGrid { width: min(100%,var(--layout-content-max)); gap: var(--layout-card-gap); grid-template-columns: repeat(2, minmax(0px, 1fr)); margin-inline: auto; display: grid; }
@media (max-width: 900px){.home-reference_partnerGrid { grid-template-columns: 1fr; }}
.home-reference_firmIntroBody > div { max-width: 70ch; }
.home-reference_firmIntroBody > div > p + p { margin-top: 16px; font-size: calc(var(--font-size-body) * 18 / (var(--root-px))); }
.home-reference_firmIntroBody .home-reference_learnMore { box-sizing: border-box; border: 1px solid var(--border); background: var(--surface); width: fit-content; min-height: 48px; color: var(--text); border-radius: calc(var(--radius-control) * 12 / 14); gap: 20px; margin-top: 24px; padding: 12px 22px; text-decoration: none; display: inline-flex; }
.home-reference_firmIntroBody > div > p:first-child { color: var(--text); font-size: clamp(calc(var(--font-size-heading-2) * 22 / (1.75 * var(--root-px))), 2.2vw, calc(var(--font-size-heading-2) * 30 / (1.75 * var(--root-px)))); line-height: 1.7; }
.partnership-identity_identity { align-items: center; gap: 1.25rem; min-width: 0px; padding: 1rem 0px; display: flex; }
.partnership-identity_identity > a, .partnership-identity_identity > img, .partnership-identity_identity > .site-responsive-image > img { object-fit: contain; flex: 0 0 auto; width: clamp(6rem, 16vw, 10rem); height: 4rem; }
.partnership-identity_identity img { object-fit: contain; width: 100%; height: 100%; }
.partnership-identity_identity > div { gap: 0.35rem; min-width: 0px; display: grid; }
.partnership-identity_identity small { color: var(--text-secondary,var(--text-secondary)); font-size: var(--font-size-label); }
.partnership-identity_identity b { font-size: var(--font-size-body); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.7; }
@media (max-width: 420px){.partnership-identity_identity { gap: 0.8rem; }
.partnership-identity_identity > a, .partnership-identity_identity > img, .partnership-identity_identity > .site-responsive-image > img { width: 6rem; }}
.about_page { width: var(--layout-shell-width); max-width: 100%; color: var(--text); margin-inline: auto; padding-block: clamp(32px, 5vw, 72px) 64px; }
.about_hero { grid-template-columns: 1.1fr 1fr; align-items: center; gap: clamp(28px, 5vw, 72px); padding-block: 16px 48px; display: grid; }
.about_eyebrow { color: var(--text-secondary); font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); }
.about_hero h1 { text-wrap: balance; margin: 12px 0px 20px; font-size: clamp(calc(var(--font-size-display) * 36 / (3 * var(--root-px))), 4.5vw, calc(var(--font-size-display) * 64 / (3 * var(--root-px)))); line-height: 1.4; }
.about_hero .about_bio { color: var(--text); font-size: clamp(calc(var(--font-size-heading-2) * 22 / (1.75 * var(--root-px))), 2vw, calc(var(--font-size-heading-2) * 28 / (1.75 * var(--root-px)))); line-height: 1.7; }
.about_page p { color: var(--text-secondary); max-width: 68ch; font-size: calc(var(--font-size-body) * 17 / (var(--root-px))); line-height: 1.85; }
.about_hero img { aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--radius-surface); width: 100%; height: auto; }
.about_contents { border-block: 1px solid var(--border); scrollbar-width: thin; gap: 28px; padding-block: 18px; display: flex; overflow-x: auto; }
.about_contents a { white-space: nowrap; font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); text-decoration: none; }
.about_page a { color: var(--text); text-underline-offset: 5px; }
.about_contents a, .about_sectionHead > a, .about_links a { align-items: center; min-height: 44px; display: inline-flex; }
.about_section { border-bottom: 1px solid var(--border); padding-block: clamp(40px, 5vw, 64px); scroll-margin-top: 110px; }
.about_sectionHead { justify-content: space-between; align-items: baseline; gap: 24px; margin-bottom: 24px; display: flex; }
.about_sectionHead > a { flex-shrink: 0; }
.about_section h2, .about_closing h2 { margin: 0px 0px 14px; font-size: clamp(calc(var(--font-size-heading-1) * 26 / (2.25 * var(--root-px))), 2.6vw, calc(var(--font-size-heading-1) * 36 / (2.25 * var(--root-px)))); line-height: 1.4; }
.about_sectionHead p { margin: 0px; }
.about_cards { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 18px; display: grid; }
.about_card { background: var(--surface); border: 1px solid var(--border); border-radius: calc(var(--radius-surface) * 20 / 24); padding: 26px; scroll-margin-top: 110px; text-decoration: none; display: block; }
.about_card h3 { margin: 0px 0px 12px; font-size: calc(var(--font-size-heading-4) * 21 / (1.125 * var(--root-px))); line-height: 1.5; }
.about_card p { margin: 0px; font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); }
.about_card ul { color: var(--text-secondary); padding-inline-start: 20px; font-size: calc(var(--font-size-label) * 15 / (0.875 * var(--root-px))); line-height: 1.9; }
a.about_card:hover { background: var(--surface-soft); border-color: var(--text-secondary); }
.about_tags, .about_links { flex-wrap: wrap; gap: 12px; display: flex; }
.about_tags a { border: 1px solid var(--border); border-radius: var(--radius-control); padding: 12px 20px; line-height: 1.6; text-decoration: none; }
.about_links a { border: 1px solid var(--border); border-radius: var(--radius-control); padding: 12px 22px; }
.about_logos { grid-template-columns: repeat(6, minmax(0px, 1fr)); gap: 12px; display: grid; }
.about_logos > div { border: 1px solid var(--border); box-sizing: border-box; background: var(--surface); border-radius: calc(var(--radius-surface) * 16 / 24); justify-content: center; align-items: center; height: 96px; padding: 20px; display: flex; }
.about_logos a { justify-content: center; align-items: center; width: 100%; height: 100%; display: flex; }
.about_logos img { object-fit: contain; width: auto; max-width: 100%; height: auto; max-height: 54px; }
.about_page .about_privacy { margin-top: 20px; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); }
.about_details { border-top: 1px solid var(--border); margin-top: 20px; padding-top: 12px; scroll-margin-top: 110px; }
.about_details summary { cursor: pointer; box-sizing: border-box; min-height: 44px; padding: 12px 0px; font-size: calc(var(--font-size-body) * 18 / (var(--root-px))); line-height: 1.65; }
.about_details article { margin: 20px 0px; }
.about_details li { font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); line-height: 1.9; }
.about_closing { justify-content: space-between; align-items: center; gap: 24px; padding-block: 48px 8px; display: flex; }
.about_page :is(a, summary):focus-visible { outline: 2px solid var(--focus); outline-offset: 5px; }
@media (max-width: 900px){.about_cards { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
.about_logos { grid-template-columns: repeat(4, minmax(0px, 1fr)); }
.about_sectionHead { flex-direction: column; align-items: start; gap: 8px; }}
@media (max-width: 650px){.about_hero { grid-template-columns: 1fr; gap: 24px; padding-top: 0px; }
.about_hero h1 { font-size: calc(var(--font-size-heading-1) * 38 / (2.25 * var(--root-px))); }
.about_hero img { aspect-ratio: 3 / 2; }
.about_cards { grid-template-columns: 1fr; }
.about_card { padding: 22px; }
.about_logos { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
.about_logos > div { height: 84px; padding: 14px; }
.about_contents { gap: 24px; }
.about_closing { flex-direction: column; align-items: start; }
.about_tags a { padding: 10px 14px; font-size: calc(var(--font-size-label) * 15 / (0.875 * var(--root-px))); }}
.service_page { --ink: var(--brand-ink); --paper: var(--brand-paper); --mist: var(--brand-mist); --white: var(--brand-white); min-height: 100vh; color: var(--ink); background: var(--paper); }
.service_breadcrumb a { align-items: center; min-width: 44px; min-height: 44px; display: inline-flex; }
.service_hero, .service_contentGrid, .service_benefits, .service_relations, .service_process, .service_faq, .service_closing { padding-inline: var(--layout-gutter); }
.service_hero { min-height: 100svh; color: var(--brand-paper); background: var(--brand-ink); grid-template-columns: minmax(0px, 1.25fr) minmax(320px, 0.75fr); align-items: center; gap: clamp(36px, 7vw, 100px); padding-block-start: calc(var(--top) + clamp(56px,8vw,112px)); padding-block-end: clamp(56px, 8vw, 112px); display: grid; }
.service_heroCopy { max-width: 780px; }
.service_breadcrumb { color: color-mix(in srgb,var(--brand-paper) 86%,transparent); gap: 9px; margin-bottom: 38px; font-size: calc(var(--font-size-caption) * 0.72 / 0.75); display: flex; }
.service_breadcrumb a:hover { color: var(--mist); }
.service_eyebrow { color: var(--mist); margin: 0px 0px 14px; font-size: calc(var(--font-size-caption) * 0.76 / 0.75); font-weight: calc(var(--font-weight-body) + 300); }
.service_hero h1 { letter-spacing: normal; text-wrap: balance; max-width: 13ch; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 3.6 / 3), 7vw, calc(var(--font-size-display) * 6.8 / 3)); font-weight: max(var(--font-weight-body), calc(var(--font-weight-display) - 100)); line-height: 1.4; }
.service_summary { max-width: 64ch; color: color-mix(in srgb,var(--brand-paper) 86%,transparent); margin: 28px 0px 0px; font-size: clamp(calc(var(--font-size-heading-3) * 1 / 1.375), 1.5vw, calc(var(--font-size-heading-3) * 1.25 / 1.375)); line-height: 1.85; }
.service_primaryCta { width: min(100%, 420px); min-height: 66px; color: var(--ink); background: var(--mist); justify-content: space-between; align-items: center; gap: 16px; margin-top: 34px; padding: 0px 20px; font-weight: calc(var(--font-weight-body) + 300); display: flex; }
.service_brief { color: var(--ink); background: var(--paper); padding: clamp(24px, 3vw, 38px); }
.service_brief > img, .service_brief > .site-responsive-image > img { width: 60px; height: auto; margin-bottom: 24px; }
.service_brief dl { border-top: 1px solid color-mix(in srgb,var(--brand-ink) 22%,transparent); margin: 0px; }
.service_brief dl > div { border-bottom: 1px solid color-mix(in srgb,var(--brand-ink) 22%,transparent); padding: 20px 0px; }
.service_brief dt { color: color-mix(in srgb,var(--brand-ink) 86%,transparent); font-size: calc(var(--font-size-caption) * 0.72 / 0.75); font-weight: calc(var(--font-weight-body) + 300); }
.service_brief dd { margin: 7px 0px 0px; font-size: calc(var(--font-size-body) * 0.94); font-weight: calc(var(--font-weight-body) + 300); line-height: 1.7; }
.service_contentGrid { background: color-mix(in srgb,var(--brand-ink) 20%,transparent); grid-template-columns: 1fr; gap: 1px; padding-block: clamp(64px, 8vw, 104px); display: grid; }
.service_contentGrid article { background: var(--white); padding: clamp(28px, 4vw, 54px); }
.service_contentGrid h2 { margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.1 / 3), 4vw, calc(var(--font-size-display) * 4 / 3)); line-height: 1.4; }
.service_contentGrid article > p:last-child { max-width: 65ch; color: color-mix(in srgb,var(--brand-ink) 86%,transparent); margin: 24px 0px 0px; font-size: var(--font-size-body); line-height: 1.9; }
.service_inputs { background: var(--mist) !important; }
.service_inputs .service_eyebrow { color: color-mix(in srgb,var(--brand-ink) 86%,transparent); }
.service_relations { background: var(--white); padding-block: clamp(64px, 8vw, 104px); }
.service_relations > header { max-width: 780px; }
.service_relations h2 { margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.1 / 3), 4vw, calc(var(--font-size-display) * 4 / 3)); line-height: 1.4; }
.service_relationGrid { border-top: 1px solid color-mix(in srgb,var(--brand-ink) 20%,transparent); border-inline-start: 1px solid color-mix(in srgb,var(--brand-ink) 20%,transparent); grid-template-columns: repeat(4, minmax(0px, 1fr)); margin-top: 38px; display: grid; }
.service_relationGrid > article { border-inline-end: 1px solid color-mix(in srgb,var(--brand-ink) 20%,transparent); border-bottom: 1px solid color-mix(in srgb,var(--brand-ink) 20%,transparent); min-width: 0px; padding: 24px; }
.service_relationGrid article > small, .service_proofGrid > article > small { color: color-mix(in srgb,var(--brand-ink) 72%,transparent); font-size: calc(var(--font-size-caption) * 0.72 / 0.75); font-weight: calc(var(--font-weight-body) + 300); display: block; }
.service_relationGrid article > strong { margin-top: 12px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.45; display: block; }
.service_relationGrid article > p { color: color-mix(in srgb,var(--brand-ink) 82%,transparent); margin: 10px 0px 0px; font-size: calc(var(--font-size-label) * 0.88 / 0.875); line-height: 1.7; }
.service_relationGrid article > div { flex-wrap: wrap; gap: 7px; margin-top: 14px; display: flex; }
.service_relationGrid a { border: 1px solid color-mix(in srgb,var(--brand-ink) 22%,transparent); align-items: center; min-height: 44px; padding: 7px 10px; font-size: calc(var(--font-size-caption) * 0.76 / 0.75); font-weight: calc(var(--font-weight-body) + 300); line-height: 1.35; display: inline-flex; }
.service_relationGrid a:hover { background: var(--paper); }
.service_proofGrid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 12px; margin-top: 12px; display: grid; }
.service_proofGrid > article { min-width: 0px; color: var(--paper); background: var(--ink); padding: 24px; }
.service_proofGrid > article > small { color: color-mix(in srgb,var(--brand-paper) 72%,transparent); }
.service_proofGrid > article > strong { margin-top: 12px; font-size: calc(var(--font-size-heading-4) * 1.2 / 1.125); display: block; }
.service_proofGrid > article > div { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 10px; margin-top: 18px; display: grid; }
.service_proofGrid > article > div > span { border-top: 1px solid color-mix(in srgb,var(--brand-paper) 20%,transparent); gap: 6px; min-width: 0px; padding-top: 12px; font-size: calc(var(--font-size-label) * 0.82 / 0.875); line-height: 1.45; display: grid; }
.service_proofGrid bdi { font-size: calc(var(--font-size-heading-3) * 1.25 / 1.375); font-weight: var(--font-weight-heading-3); }
:root[data-theme="dark"] .service_page { --paper: var(--brand-night); --white: var(--brand-surface-dark); color: var(--brand-paper); background: var(--brand-night); }
:root[data-theme="dark"] .service_brief { color: var(--brand-ink); background: var(--brand-paper); }
:root[data-theme="dark"] .service_contentGrid { background: color-mix(in srgb,var(--brand-paper) 15%,transparent); }
:root[data-theme="dark"] .service_contentGrid article { color: var(--brand-paper); background: var(--brand-surface-dark); }
:root[data-theme="dark"] .service_contentGrid article > p:last-child { color: color-mix(in srgb,var(--brand-paper) 86%,transparent); }
:root[data-theme="dark"] .service_inputs { color: var(--brand-ink) !important; background: var(--brand-mist) !important; }
:root[data-theme="dark"] .service_relations { color: var(--brand-paper); background: var(--brand-surface-dark); }
:root[data-theme="dark"] .service_relations > header > p:last-child, :root[data-theme="dark"] .service_relationGrid article > p { color: color-mix(in srgb,var(--brand-paper) 84%,transparent); }
:root[data-theme="dark"] .service_relationGrid, :root[data-theme="dark"] .service_relationGrid > article, :root[data-theme="dark"] .service_relationGrid a { border-color: color-mix(in srgb,var(--brand-paper) 20%,transparent); }
:root[data-theme="dark"] .service_relationGrid article > small { color: color-mix(in srgb,var(--brand-paper) 72%,transparent); }
:root[data-theme="dark"] .service_relationGrid a:hover { background: var(--brand-surface-soft-dark); }
:root[data-theme="dark"] .service_proofGrid > article { color: var(--brand-ink); background: var(--brand-mist); }
:root[data-theme="dark"] .service_proofGrid > article > small, :root[data-theme="dark"] .service_proofGrid span > small { color: color-mix(in srgb,var(--brand-ink) 78%,transparent); }
:root[data-theme="dark"] .service_proofGrid > article > div > span { border-color: color-mix(in srgb,var(--brand-ink) 22%,transparent); }
@media (max-width: 1040px){.service_relationGrid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }}
@media (max-width: 820px){.service_hero { min-height: auto; padding: calc(var(--top) + 46px) 18px 58px; grid-template-columns: 1fr; gap: 30px; }
.service_breadcrumb { margin-bottom: 28px; }
.service_hero h1 { font-size: clamp(var(--font-size-display), 13vw, calc(var(--font-size-display) * 4.8 / 3)); }
.service_summary { font-size: var(--font-size-body); line-height: 1.8; }
.service_brief { padding: 22px 18px; }
.service_contentGrid { grid-template-columns: 1fr; padding: 0px; }
.service_contentGrid article { padding: 42px 18px; }
.service_relations { padding: 58px 18px; }
.service_relationGrid, .service_proofGrid { grid-template-columns: 1fr; }
.service_relationGrid > article { padding: 20px; }}
@media (max-width: 420px){.service_hero h1 { font-size: clamp(calc(var(--font-size-display) * 2.65 / 3), 13vw, calc(var(--font-size-display) * 3.8 / 3)); }
.service_primaryCta { width: 100%; }}
:root[data-theme="light"] .service_hero { color: var(--brand-ink); background: var(--brand-white); border-bottom: 1px solid var(--night-line); }
:root[data-theme="light"] .service_summary, :root[data-theme="light"] .service_breadcrumb { color: var(--text-muted); }
:root[data-theme="light"] .service_primaryCta { color: var(--brand-ink); border: 1px solid var(--brand-mist); background: 0px 0px; }
.statistic-grid_grid { gap: var(--layout-card-gap); color: var(--text-primary,var(--brand-ink)); font-variant-numeric: tabular-nums; grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); margin: 0px; display: grid; }
.statistic-grid_card { min-width: 0px; padding: var(--layout-card-padding); border: 1px solid var(--line,color-mix(in srgb,var(--brand-ink) 18%,transparent)); border-radius: var(--radius-surface); background: var(--surface-card,var(--white)); flex-direction: column; align-items: flex-start; display: flex; }
.statistic-grid_card dt { font-size: var(--font-size-body); font-weight: calc(var(--font-weight-body) + 300); line-height: 1.7; }
.statistic-grid_card dd { width: 100%; min-width: 0px; margin: 8px 0px 0px; }
.statistic-grid_card strong { overflow-wrap: anywhere; font-size: clamp(calc(var(--font-size-display) * 1.7 / 3), 3.5vw, calc(var(--font-size-display) * 2.75 / 3)); font-weight: max(var(--font-weight-body), calc(var(--font-weight-display) - 100)); line-height: 1.35; display: block; }
.statistic-grid_grid[data-statistic-layout="compact"] { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 10px; margin-top: 18px; }
.statistic-grid_grid[data-statistic-layout="compact"] .statistic-grid_card { padding: 14px; }
.statistic-grid_grid[data-statistic-layout="compact"] strong { font-size: calc(var(--font-size-heading-3) * 1.35 / 1.375); }
.statistic-grid_grid[data-statistic-layout="compact"] dt { font-size: var(--font-size-label); }
:root[data-theme="dark"] .statistic-grid_card { background: color-mix(in srgb,var(--brand-paper) 6%,var(--brand-night)); border-color: color-mix(in srgb,var(--brand-paper) 20%,transparent); color: var(--brand-paper); }
@media (max-width: 560px){.statistic-grid_grid { gap: var(--layout-card-gap); }
.statistic-grid_card { padding: var(--layout-card-padding); }
.statistic-grid_grid[data-statistic-layout="compact"] { gap: 6px; }
.statistic-grid_grid[data-statistic-layout="compact"] .statistic-grid_card { padding: 12px 8px; }
.statistic-grid_grid[data-statistic-layout="compact"] strong { font-size: calc(var(--font-size-body) * 1.05); }}
.profile_page { --profile-line: color-mix(in srgb,var(--text) 18%,transparent); min-height: 100svh; color: var(--text); background: var(--canvas); }
.profile_shell { width: var(--layout-shell-width); margin-inline: auto; padding-block: 32px 96px; }
.profile_back { min-height: 44px; color: var(--text-muted); align-items: center; gap: 10px; font-size: calc(var(--font-size-body) * 0.95); display: inline-flex; }
[dir="rtl"] .profile_back svg { transform: rotate(180deg); }
.profile_biography { grid-template-columns: minmax(0px, 1fr) minmax(240px, 0.45fr); align-items: start; column-gap: clamp(40px, 7vw, 104px); margin-top: 40px; display: grid; }
.profile_hero { display: contents; }
.profile_identity { background: 0px 0px; grid-area: 1 / 1; min-width: 0px; }
.profile_identity h1 { text-wrap: balance; overflow-wrap: break-word; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2 / 3), 4vw, calc(var(--font-size-display) * 3.5 / 3)); font-weight: max(var(--font-weight-body), calc(var(--font-weight-display) - 100)); line-height: 1.45; }
.profile_role { color: var(--text-muted); margin: 10px 0px 22px; font-size: calc(var(--font-size-heading-4) * 1.15 / 1.125); line-height: 1.7; }
.profile_portrait { grid-area: 1 / 2 / 5; place-self: start end; width: 100%; min-width: 0px; max-width: 380px; position: sticky; top: 120px; }
.profile_lead { text-wrap: pretty; grid-area: 2 / 1; min-width: 0px; max-width: 70ch; margin: 0px; font-size: calc(var(--font-size-heading-4) * 1.15 / 1.125); line-height: 1.95; }
.profile_actions { grid-area: 3 / 1; gap: 12px; min-width: 0px; margin-top: 24px; display: grid; }
.profile_actions a { text-underline-offset: 6px; align-items: center; gap: 10px; min-height: 44px; text-decoration: underline; display: inline-flex; }
.profile_actions .profile_email { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-control); justify-self: start; max-width: 100%; padding: 10px 18px; font-size: calc(var(--font-size-heading-4) * 1.1 / 1.125); text-decoration: none; }
.profile_email bdi { overflow-wrap: anywhere; min-width: 0px; }
.profile_email svg { flex-shrink: 0; }
.profile_email:hover bdi { text-underline-offset: 5px; text-decoration: underline; }
.profile_secondaryActions { flex-wrap: wrap; align-items: center; gap: 8px 24px; font-size: calc(var(--font-size-body) * 0.95); display: flex; }
.profile_prose { grid-area: 4 / 1; min-width: 0px; max-width: 74ch; margin: 40px 0px 0px; font-size: calc(var(--font-size-heading-4) * 1.1 / 1.125); line-height: 2; }
.profile_prose h2 { margin: 0px 0px 20px; font-size: calc(var(--font-size-heading-3) * 1.4 / 1.375); line-height: 1.5; }
.profile_prose p { text-wrap: pretty; margin: 0px 0px 24px; }
.profile_prose p:last-child { margin-bottom: 0px; }
.profile_biography[data-has-portrait="false"] { grid-template-columns: minmax(0px, 1fr); max-width: 80ch; }
.profile_hero[data-has-portrait="false"] > .profile_identity, .profile_hero[data-has-portrait="false"] > .profile_lead, .profile_hero[data-has-portrait="false"] > .profile_actions { grid-column: 1; }
.profile_section { border-top: 1px solid var(--profile-line); margin-top: 48px; padding-top: 28px; scroll-margin-top: 110px; }
.profile_section h2 { color: inherit; margin: 0px 0px 22px; font-size: calc(var(--font-size-heading-3) * 1.55 / 1.375); line-height: 1.6; }
.profile_section h3 { color: inherit; margin: 24px 0px 12px; font-size: calc(var(--font-size-heading-4) * 1.1 / 1.125); }
.profile_section p { color: var(--text-muted); line-height: 1.8; }
.profile_links { flex-wrap: wrap; gap: 8px 26px; margin: 0px; padding: 0px; list-style: none; display: flex; }
.profile_links a { text-underline-offset: 5px; align-items: center; min-height: 44px; text-decoration: underline; display: inline-flex; }
.profile_solutions { margin: 0px; padding: 0px; list-style: none; }
.profile_solutions li { border-bottom: 1px solid var(--profile-line); justify-content: space-between; align-items: center; gap: 20px; padding-block: 14px; display: flex; }
.profile_solutions a { align-items: center; gap: 10px; min-height: 44px; display: inline-flex; }
.profile_credentials { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 28px; margin: 0px; padding: 0px; list-style: none; display: grid; }
.profile_credentials li { flex-direction: column; gap: 7px; line-height: 1.8; display: flex; }
.profile_credentials span, .profile_credentials small { color: var(--text-muted); font-size: calc(var(--font-size-body) * 0.95); }
.profile_credentials a { text-underline-offset: 5px; align-items: center; gap: 10px; width: fit-content; min-height: 44px; text-decoration: underline; display: inline-flex; }
.profile_page a:focus-visible { outline-offset: 5px; outline: solid 2px; }
:root[data-theme="dark"] .profile_page { color: var(--brand-paper); background: var(--brand-night); --profile-line: color-mix(in srgb,var(--brand-paper) 20%,transparent); }
@media (max-width: 760px){.profile_shell { padding-block: 24px 76px; }
.profile_biography { grid-template-columns: minmax(0px, 1fr); row-gap: 22px; margin-top: 22px; }
.profile_identity { grid-area: 1 / 1; }
.profile_identity h1 { font-size: clamp(calc(var(--font-size-heading-1) * 1.8 / 2.25), 6vw, calc(var(--font-size-heading-1) * 2.5 / 2.25)); }
.profile_role { margin: 8px 0px 0px; font-size: calc(var(--font-size-body) * 1.05); }
.profile_portrait { grid-area: 2 / 1; justify-self: start; max-width: 260px; position: static; }
.profile_lead { grid-area: 3 / 1; font-size: calc(var(--font-size-heading-4) * 1.1 / 1.125); }
.profile_actions { grid-area: 4 / 1; margin-top: 0px; }
.profile_hero[data-has-portrait="false"] > .profile_lead { grid-row: 2; }
.profile_hero[data-has-portrait="false"] > .profile_actions { grid-row: 3; }
.profile_prose { grid-row: 5; margin-top: 12px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.95; }
.profile_section { margin-top: 40px; }
.profile_credentials { grid-template-columns: 1fr; }}
@media (max-width: 420px){.profile_portrait { max-width: 260px; }
.profile_actions .profile_email { padding-inline: 14px; font-size: var(--font-size-body); }
.profile_solutions li { flex-direction: column; align-items: flex-start; gap: 4px; }}
.profile_section .organisation-names { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 0px 24px; }
.profile_section .organisation-names li { border-top: 0px; border-right: 0px; border-left: 0px; border-image: initial; border-bottom: 1px solid var(--profile-line); border-radius: 0px; padding: 10px 0px; }
@media (max-width: 760px){.profile_section .organisation-names { grid-template-columns: repeat(2, minmax(0px, 1fr)); }}
@media (max-width: 420px){.profile_section .organisation-names { grid-template-columns: 1fr; }}
.profile_affiliation { border: 1px solid var(--border); border-radius: var(--radius-control); background: var(--surface); color: var(--text); margin: 0px 0px 22px; padding: 8px 14px; font-size: var(--font-size-body); line-height: 1.8; display: inline-block; }
.profile_grades { flex-wrap: wrap; gap: 12px; margin: 0px; padding: 0px; list-style: none; display: flex; }
.profile_grades li { border: 1px solid var(--border); border-radius: var(--radius-control); color: var(--text-muted); align-items: center; gap: 10px; padding: 12px 16px; display: flex; }
.profile_grades li[aria-current="step"] { color: var(--text); background: var(--surface); border-color: currentcolor; font-weight: calc(var(--font-weight-body) + 300); }
.profile_grades li span { font-variant-numeric: tabular-nums; }
.practice-directory-page_page { min-height: 100svh; color: var(--text); background: var(--canvas); }
.practice-directory-page_shell { width: min(100%,var(--layout-content-max)); margin-inline: auto; }
.practice-directory-page_hero, .practice-directory-page_indexHero { padding: calc(var(--top) + 74px) var(--layout-gutter) 72px; border-bottom: 1px solid var(--night-line); background: var(--surface-strong); color: var(--brand-paper); }
.practice-directory-page_hero nav { color: color-mix(in srgb,var(--brand-paper) 76%,transparent); align-items: center; gap: 6px; margin-bottom: 40px; font-size: calc(var(--font-size-caption) * 0.76 / 0.75); display: flex; }
.practice-directory-page_hero nav a { justify-content: center; align-items: center; min-width: 44px; min-height: 44px; padding-inline: 4px; display: inline-flex; }
.practice-directory-page_hero h1, .practice-directory-page_indexHero h1 { letter-spacing: normal; max-width: 900px; margin: 10px 0px 16px; font-size: clamp(calc(var(--font-size-display) * 2.7 / 3), 7vw, calc(var(--font-size-display) * 5.5 / 3)); line-height: 1.4; }
.practice-directory-page_hero p, .practice-directory-page_indexHero p { max-width: 720px; color: color-mix(in srgb,var(--brand-paper) 88%,transparent); margin: 0px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.9; }
.practice-directory-page_directorySection, .practice-directory-page_indexGrid { padding: clamp(64px,8vw,108px) var(--layout-gutter); border-bottom: 1px solid var(--night-line); }
.practice-directory-page_directorySection:nth-of-type(3) { background: var(--surface); }
.practice-directory-page_directorySection header { grid-template-columns: 1fr minmax(260px, 0.72fr); align-items: end; gap: 28px; margin-bottom: 32px; display: grid; }
.practice-directory-page_directorySection h2 { margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2 / 3), 4vw, calc(var(--font-size-display) * 3.6 / 3)); line-height: 1.4; }
.practice-directory-page_peopleGrid, .practice-directory-page_clientGrid { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 12px; display: grid; }
.practice-directory-page_peopleGrid > a { border: 1px solid var(--night-line); background: var(--surface); grid-template-columns: 84px 1fr 18px; align-items: center; gap: 14px; min-height: 120px; padding: 12px; display: grid; }
.practice-directory-page_peopleGrid span { display: grid; }
.practice-directory-page_peopleGrid small { color: var(--text-muted); }
.practice-directory-page_clientGrid article { border: 1px solid var(--night-line); background: var(--canvas); grid-template-rows: 100px auto; gap: 18px; min-height: 250px; padding: 22px; display: grid; }
.practice-directory-page_clientGrid figure { background: 0px 0px; place-items: center; margin: 0px; padding: 18px; display: grid; }
.practice-directory-page_clientGrid img { object-fit: contain; width: 100%; max-width: 180px; height: 44px; }
.practice-directory-page_clientGrid b { font-size: calc(var(--font-size-heading-4) * 1.1 / 1.125); }
.practice-directory-page_clientGrid p { color: var(--text-muted); margin: 7px 0px 0px; font-size: calc(var(--font-size-label) * 0.86 / 0.875); }
.practice-directory-page_relationGrid { grid-template-columns: 1fr 1fr; gap: 14px; display: grid; }
.practice-directory-page_relationGrid article { border: 1px solid var(--night-line); background: var(--surface); padding: 22px; }
.practice-directory-page_relationGrid h3 { margin: 0px 0px 14px; font-size: calc(var(--font-size-heading-4) * 1.2 / 1.125); }
.practice-directory-page_relationGrid a { border-top: 1px solid var(--night-line); grid-template-columns: 1fr auto 16px; align-items: center; gap: 9px; min-height: 52px; font-weight: calc(var(--font-weight-body) + 300); display: grid; }
.practice-directory-page_relationGrid small { color: var(--text-muted); }
.practice-directory-page_solutionContact { border-top: 1px solid var(--night-line); flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 16px; padding-block: 10px; display: flex; }
.practice-directory-page_solutionContact > span { flex: 1 1 150px; min-width: 0px; }
.practice-directory-page_solutionContact small { display: block; }
.practice-directory-page_solutionContact > a { border: 0px; flex: 0 0 auto; min-height: 44px; font-size: calc(var(--font-size-body) * 0.9375); display: flex; }
.practice-directory-page_indexHero { padding-bottom: 86px; }
.practice-directory-page_indexGrid > div { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 12px; display: grid; }
.practice-directory-page_indexGrid a { border: 1px solid var(--night-line); background: var(--surface); grid-template-columns: 1fr 20px; align-items: end; gap: 18px; min-height: 230px; padding: 26px; display: grid; }
.practice-directory-page_indexGrid span { align-content: start; display: grid; }
.practice-directory-page_indexGrid small { color: var(--text-muted); font-weight: calc(var(--font-weight-body) + 400); }
.practice-directory-page_indexGrid b { margin-top: 6px; font-size: calc(var(--font-size-heading-3) * 1.55 / 1.375); }
.practice-directory-page_indexGrid p { color: var(--text-muted); margin: 12px 0px 0px; line-height: 1.75; }
[dir="rtl"] .practice-directory-page_peopleGrid > a > svg, [dir="rtl"] .practice-directory-page_relationGrid a > svg, [dir="rtl"] .practice-directory-page_indexGrid a > svg { transform: rotate(180deg); }
@media (max-width: 820px){.practice-directory-page_hero, .practice-directory-page_indexHero { padding-top: calc(var(--top) + 48px); }
.practice-directory-page_directorySection header { grid-template-columns: 1fr; }
.practice-directory-page_peopleGrid, .practice-directory-page_clientGrid { grid-template-columns: 1fr 1fr; }
.practice-directory-page_indexGrid > div { grid-template-columns: 1fr; }}
@media (max-width: 560px){.practice-directory-page_peopleGrid, .practice-directory-page_clientGrid, .practice-directory-page_relationGrid { grid-template-columns: 1fr; }
.practice-directory-page_peopleGrid > a { grid-template-columns: 72px 1fr 18px; }
.practice-directory-page_peopleGrid figure { flex-basis: 72px; width: 72px; }}
:root[data-theme="light"] .practice-directory-page_hero, :root[data-theme="light"] .practice-directory-page_indexHero { color: var(--text); background: var(--canvas); }
:root[data-theme="light"] .practice-directory-page_hero p, :root[data-theme="light"] .practice-directory-page_indexHero p, :root[data-theme="light"] .practice-directory-page_hero nav { color: var(--text-muted); }
:root[data-theme="dark"] .practice-directory-page_clientGrid img { filter: brightness(0) invert(); }
.team_page { color: var(--text); background: var(--canvas); min-height: 100svh; }
.team_shell { width: var(--layout-shell-width); margin-inline: auto; padding-block: 48px 90px; }
.team_header h1 { margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.2 / 3), 5vw, calc(var(--font-size-display) * 4 / 3)); }
.team_header nav { flex-wrap: wrap; gap: 24px; margin-top: 24px; display: flex; }
.team_header a { text-underline-offset: 6px; align-items: center; min-height: 44px; text-decoration: underline; display: inline-flex; }
.team_section { margin-top: 52px; scroll-margin-top: 110px; }
.team_section > h2 { margin: 0px 0px 24px; font-size: calc(var(--font-size-heading-2) * 1.6 / 1.75); }
.team_grid { gap: var(--layout-card-gap); grid-template-columns: repeat(2, minmax(0px, 1fr)); display: grid; }
.team_header a:focus-visible { outline-offset: 5px; outline: solid 2px; }
@media (max-width: 900px){.team_grid { grid-template-columns: 1fr; }}
@media (max-width: 720px){.team_shell { padding-top: 30px; }
.team_section { margin-top: 36px; }}
.numbers_page { color: var(--text-primary,var(--brand-ink)); background: var(--canvas); min-height: 100vh; }
.numbers_shell { width: var(--layout-shell-width); padding: var(--layout-section-space) 0 100px; background: 0px 0px; margin-inline: auto; }
.numbers_intro { max-width: 760px; margin-bottom: 32px; }
.numbers_intro h1 { margin: 0px 0px 22px; font-size: clamp(calc(var(--font-size-display) * 2.5 / 3), 6vw, calc(var(--font-size-display) * 4.5 / 3)); line-height: 1.4; }
.numbers_intro p { margin: 0px 0px 16px; font-size: var(--font-size-heading-4); line-height: 1.85; }
.numbers_date { color: var(--text-secondary,var(--brand-ink)); font-variant-numeric: tabular-nums; font-size: var(--font-size-label); display: block; }
.numbers_date time { margin-inline-start: 8px; }
.numbers_section { margin: 32px 0px 64px; }
.numbers_page a:focus-visible { outline-offset: 5px; outline: solid 2px; }
.numbers_page :target { scroll-margin-top: 110px; }
:root[data-theme="dark"] .numbers_page { color: var(--brand-paper); background: var(--brand-night); }
:root[data-theme="dark"] .numbers_date { color: var(--brand-paper); }
@media (max-width: 600px){.numbers_shell { padding-block-start: var(--layout-section-space); }
.numbers_intro h1 { font-size: calc(var(--font-size-display) * 2.75 / 3); }
.numbers_section { margin-bottom: 44px; }}
.directory-layout_page { min-height: 100vh; color: var(--brand-ink); background: var(--brand-paper); }
.directory-layout_page main { display: block; }
.directory-layout_hero { padding: calc(78px + env(safe-area-inset-top) + clamp(62px,8vw,112px)) var(--layout-gutter) clamp(64px,8vw,104px); color: var(--brand-paper); background: var(--brand-ink); }
.directory-layout_shell { width: min(100%,var(--layout-content-max)); margin-inline: auto; }
.directory-layout_heroGrid { grid-template-columns: minmax(0px, 1.25fr) minmax(280px, 0.75fr); align-items: end; gap: clamp(42px, 8vw, 112px); display: grid; }
.directory-layout_hero h1 { letter-spacing: 0px; white-space: normal; align-items: baseline; gap: 16px; max-width: none; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 1.8 / 3), 4vw, calc(var(--font-size-display) * 3.4 / 3)); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.4; display: flex; }
.directory-layout_headingCount { font-size: calc(var(--font-size-label) * 0.9 / 0.875); font-weight: var(--font-weight-body); line-height: 1.5; }
.directory-layout_hero p { max-width: 64ch; color: color-mix(in srgb,var(--brand-paper) 86%,transparent); margin: 0px; font-size: clamp(calc(var(--font-size-heading-4) * 1.02 / 1.125), 1.5vw, calc(var(--font-size-heading-4) * 1.22 / 1.125)); line-height: 1.9; }
.directory-layout_section { padding: clamp(70px,9vw,122px) var(--layout-gutter); }
.directory-layout_sectionHead { grid-template-columns: 1fr; gap: 14px; margin-bottom: 30px; display: grid; }
.directory-layout_sectionHead h2 { letter-spacing: 0px; white-space: normal; margin: 0px; font-size: clamp(calc(var(--font-size-heading-2) * 1 / 1.75), 3.5vw, calc(var(--font-size-heading-2) * 1.7 / 1.75)); font-weight: var(--font-weight-body); line-height: 1.5; }
.directory-layout_action { min-height: 50px; color: var(--brand-paper); background: var(--brand-ink); border: 1px solid var(--brand-ink); justify-content: space-between; align-items: center; gap: 12px; padding: 10px 13px; font-size: calc(var(--font-size-caption) * 0.8 / 0.75); font-weight: calc(var(--font-weight-body) + 300); text-decoration: none; display: flex; }
:is(.directory-layout_action:hover, .directory-layout_action:focus-visible) { color: var(--brand-ink); background: var(--brand-mist); }
[dir="rtl"] .directory-layout_action svg { transform: rotate(180deg); }
.directory-layout_serviceGroups { grid-template-columns: repeat(2, minmax(0px, 1fr)); align-items: start; gap: 16px; display: grid; }
.directory-layout_serviceGroup { border: 1px solid color-mix(in srgb,var(--brand-ink) 22%,transparent); background: var(--brand-white); border-radius: calc(var(--radius-surface) * 4 / 24); scroll-margin-top: 110px; overflow: hidden; }
.directory-layout_serviceGroup > summary { cursor: pointer; grid-template-columns: 48px minmax(0px, 1fr) max-content 24px; align-items: center; gap: 16px; min-height: 132px; padding: 22px; list-style: none; display: grid; }
.directory-layout_serviceGroup > summary::-webkit-details-marker { display: none; }
.directory-layout_groupIcon { width: 48px; height: 48px; color: var(--brand-ink); border: 1px solid color-mix(in srgb,var(--brand-ink) 20%,transparent); background: color-mix(in srgb,var(--brand-mist) 36%,transparent); border-radius: 50%; place-items: center; display: grid; }
.directory-layout_groupCopy { gap: 5px; display: grid; }
.directory-layout_groupCopy b { white-space: nowrap; font-size: clamp(calc(var(--font-size-heading-4) * 0.98 / 1.125), 3.7vw, calc(var(--font-size-heading-4) * 1.15 / 1.125)); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.5; }
.directory-layout_groupCopy small { max-width: 64ch; color: color-mix(in srgb,var(--brand-ink) 86%,transparent); font-size: calc(var(--font-size-label) * 0.84 / 0.875); line-height: 1.65; }
.directory-layout_serviceGroup > summary > strong { color: var(--brand-ink); border: 1px solid color-mix(in srgb,var(--brand-ink) 18%,transparent); background: var(--brand-paper); white-space: nowrap; border-radius: var(--radius-chip); padding: 8px 11px; font-size: calc(var(--font-size-caption) * 0.74 / 0.75); }
.directory-layout_serviceGroup > summary > svg { transition: transform 0.2s; }
.directory-layout_serviceGroup[open] > summary > svg { transform: rotate(180deg); }
.directory-layout_serviceGroup[open] { grid-column: 1 / -1; }
.directory-layout_serviceGroup[open] > summary { border-block-end: 1px solid color-mix(in srgb,var(--brand-ink) 18%,transparent); background: var(--brand-white); }
.directory-layout_serviceGrid { background: var(--brand-paper); grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 10px; padding: 14px; display: grid; }
.directory-layout_serviceCard { border: 1px solid color-mix(in srgb,var(--brand-ink) 16%,transparent); background: var(--brand-white); border-radius: calc(var(--radius-surface) * 4 / 24); flex-direction: column; min-height: 188px; padding: 20px; scroll-margin-top: 110px; display: flex; }
.directory-layout_serviceCard h3 { margin: 0px; font-size: calc(var(--font-size-body) * 1.06); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.5; }
.directory-layout_serviceCard p { color: color-mix(in srgb,var(--brand-ink) 86%,transparent); margin: 10px 0px 0px; font-size: calc(var(--font-size-label) * 0.84 / 0.875); line-height: 1.75; }
.directory-layout_serviceCard > a { min-height: 44px; color: var(--brand-ink); border-block-start: 1px solid color-mix(in srgb,var(--brand-ink) 14%,transparent); justify-content: space-between; align-items: center; gap: 12px; margin-top: auto; padding-top: 15px; font-size: calc(var(--font-size-caption) * 0.76 / 0.75); font-weight: calc(var(--font-weight-body) + 300); text-decoration: none; display: flex; }
:is(.directory-layout_serviceCard > a:hover, .directory-layout_serviceCard > a:focus-visible) { color: var(--brand-night); }
.directory-layout_serviceCard > a svg { transition: transform 0.18s; }
:is(.directory-layout_serviceCard > a:hover svg, .directory-layout_serviceCard > a:focus-visible svg) { transform: translate(-3px); }
:is([dir="ltr"] .directory-layout_serviceCard > a:hover svg, [dir="ltr"] .directory-layout_serviceCard > a:focus-visible svg) { transform: translate(3px); }
.directory-layout_closing { padding: 34px var(--layout-gutter); color: var(--brand-ink); background: var(--brand-mist); }
.directory-layout_closingInner { width: min(100%,var(--layout-content-max)); justify-content: space-between; align-items: center; gap: 24px; margin-inline: auto; display: flex; }
.directory-layout_closingInner a { min-height: 46px; color: var(--brand-ink); white-space: nowrap; border-block-end: 1px solid; align-items: center; gap: 9px; font-size: calc(var(--font-size-label) * 0.82 / 0.875); font-weight: calc(var(--font-weight-body) + 300); text-decoration: none; display: inline-flex; }
[dir="rtl"] .directory-layout_closingInner a svg { transform: rotate(180deg); }
:is(.directory-layout_areaList a:focus-visible, .directory-layout_serviceGroup > summary:focus-visible) { outline: 3px solid var(--brand-mist); outline-offset: 3px; }
@media (max-width: 980px){.directory-layout_heroGrid, .directory-layout_sectionHead { grid-template-columns: 1fr; }}
@media (max-width: 700px){.directory-layout_hero { padding-top: calc(68px + env(safe-area-inset-top) + 48px); }
.directory-layout_heroGrid { gap: 24px; }
.directory-layout_hero h1 { gap: 12px; font-size: clamp(calc(var(--font-size-heading-1) * 1.5 / 2.25), 6.4vw, calc(var(--font-size-heading-1) * 2.1 / 2.25)); }
.directory-layout_headingCount { font-size: calc(var(--font-size-caption) * 0.8 / 0.75); }
.directory-layout_serviceGroups { grid-template-columns: 1fr; }
.directory-layout_section { padding-inline: var(--layout-gutter); }
.directory-layout_closingInner { flex-direction: column; align-items: flex-start; }
.directory-layout_serviceGroup > summary { grid-template-columns: 42px minmax(0px, 1fr) 20px; gap: 11px; min-height: 104px; padding: 17px 15px; }
.directory-layout_groupIcon { width: 42px; height: 42px; }
.directory-layout_serviceGroup > summary > strong { grid-column: 2; width: max-content; margin-top: 4px; }
.directory-layout_serviceGroup > summary > svg { grid-area: 1 / 3 / 3; }
.directory-layout_groupCopy small { font-size: calc(var(--font-size-caption) * 0.8 / 0.75); }
.directory-layout_serviceGrid { grid-template-columns: 1fr; padding: 10px; }
.directory-layout_serviceCard { min-height: 164px; padding: 17px; }}
@media (prefers-reduced-motion: reduce){.directory-layout_serviceGroup > summary > svg, .directory-layout_serviceCard > a svg { transition: none; }}
@media (max-width: 360px){[dir="ltr"] .directory-layout_sectionHead h2 { font-size: calc(var(--font-size-body) * 0.95); }}
:root[data-theme="dark"] .directory-layout_page { color: var(--brand-paper); background: var(--brand-night); --lightningcss-light: ; --lightningcss-dark: initial; color-scheme: dark; }
:root[data-theme="dark"] .directory-layout_page main, :root[data-theme="dark"] .directory-layout_section { background: var(--brand-night); }
:root[data-theme="dark"] .directory-layout_sectionHead h2, :root[data-theme="dark"] .directory-layout_itemTitle h3, :root[data-theme="dark"] .directory-layout_serviceCard h3, :root[data-theme="dark"] .directory-layout_area h2, :root[data-theme="dark"] .directory-layout_expertCopy h2 { color: var(--brand-paper); }
:root[data-theme="dark"] .directory-layout_sectionHead p, :root[data-theme="dark"] .directory-layout_itemBody > p, :root[data-theme="dark"] .directory-layout_serviceCard p, :root[data-theme="dark"] .directory-layout_area > p, :root[data-theme="dark"] .directory-layout_expertCopy small, :root[data-theme="dark"] .directory-layout_expertCopy p { color: color-mix(in srgb,var(--brand-paper) 86%,transparent); }
:root[data-theme="dark"] .directory-layout_facts > div, :root[data-theme="dark"] .directory-layout_serviceGroup, :root[data-theme="dark"] .directory-layout_serviceGroup[open] > summary, :root[data-theme="dark"] .directory-layout_serviceCard, :root[data-theme="dark"] .directory-layout_area, :root[data-theme="dark"] .directory-layout_areaList a, :root[data-theme="dark"] .directory-layout_expert { color: var(--brand-paper); background: var(--brand-surface-dark); border-color: color-mix(in srgb,var(--brand-paper) 18%,transparent); }
:root[data-theme="dark"] .directory-layout_facts dt, :root[data-theme="dark"] .directory-layout_groupCopy small { color: color-mix(in srgb,var(--brand-paper) 78%,transparent); }
:root[data-theme="dark"] .directory-layout_serviceGroup { border-color: color-mix(in srgb,var(--brand-paper) 20%,transparent); }
:root[data-theme="dark"] .directory-layout_serviceGroup > summary { color: var(--brand-paper); }
:root[data-theme="dark"] .directory-layout_serviceGroup[open] > summary { border-color: color-mix(in srgb,var(--brand-paper) 18%,transparent); }
:root[data-theme="dark"] .directory-layout_groupIcon { color: var(--brand-paper); background: color-mix(in srgb,var(--brand-mist) 16%,transparent); border-color: color-mix(in srgb,var(--brand-paper) 22%,transparent); }
:root[data-theme="dark"] .directory-layout_serviceGroup > summary > strong { color: var(--brand-paper); background: var(--brand-ink); border-color: color-mix(in srgb,var(--brand-paper) 20%,transparent); }
:root[data-theme="dark"] .directory-layout_serviceGrid { background: var(--brand-night); }
:root[data-theme="dark"] .directory-layout_serviceCard > a { color: var(--brand-paper); border-color: color-mix(in srgb,var(--brand-paper) 16%,transparent); }
:is(:root[data-theme="dark"] .directory-layout_serviceCard > a:hover, :root[data-theme="dark"] .directory-layout_serviceCard > a:focus-visible) { color: var(--brand-mist); }
:root[data-theme="dark"] .directory-layout_action { color: var(--brand-ink); background: var(--brand-mist); border-color: var(--brand-mist); }
:root[data-theme="light"] .directory-layout_hero { color: var(--text); background: var(--canvas); border-bottom: 1px solid var(--night-line); }
:root[data-theme="light"] .directory-layout_hero p, :root[data-theme="light"] .directory-layout_hero p strong { color: var(--text-muted); }
.directory-layout_groupIcon, .directory-layout_serviceGroup > summary > strong { background: 0px 0px; border-radius: calc(var(--radius-status) * 2 / 4); }
.directory-layout_groupCopy b { white-space: normal; }
.presentation-screen_launcher { width: var(--layout-shell-width); color: var(--text-muted); justify-content: space-between; align-items: center; gap: 16px; margin: 28px auto 0px; font-size: calc(var(--font-size-body) * 0.95); display: flex; }
.presentation-screen_launcher button, .presentation-screen_launchLink, .presentation-screen_launchButton { background: var(--surface); min-height: 48px; color: var(--text); border: 1px solid var(--border); border-radius: var(--radius-control); font: inherit; cursor: pointer; justify-content: center; align-items: center; gap: 14px; padding: 10px 20px; display: inline-flex; }
.presentation-screen_launchButton { width: fit-content; margin-top: 12px; }
.presentation-screen_launcher button:hover, .presentation-screen_launchLink:hover, .presentation-screen_launchButton:hover { border-color: currentcolor; }
.presentation-screen_launchLink:focus-visible { outline-offset: 4px; outline: solid 2px; }
.presentation-screen_launchButton:focus-visible { outline-offset: 4px; outline: solid 2px; }
@media (max-aspect-ratio: 6 / 5), (max-width: 900px){.presentation-screen_launcher { align-items: start; }
.presentation-screen_launcher > span { max-width: 12ch; line-height: 1.7; }}
.presentation-screen_launchLink { text-decoration: none; }
.documents_page { --ink: var(--brand-ink); --paper: var(--brand-paper); --mist: var(--brand-mist); --white: var(--brand-white); --line: color-mix(in srgb,var(--brand-ink) 18%,transparent); color: var(--ink); background: var(--white); }
.documents_shell { width: var(--layout-shell-width); margin-inline: auto; }
.documents_hero { border-bottom: 1px solid var(--line); background: var(--paper) var(--pattern-paper-image, none) center/cover; padding: 116px 0px 40px; }
.documents_hero > .documents_shell { grid-template-columns: minmax(0px, 1.3fr) minmax(300px, 0.7fr); align-items: end; gap: clamp(24px, 5vw, 64px); display: grid; }
.documents_hero h1 { letter-spacing: normal; max-width: 12ch; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 3.25 / 3), 7vw, calc(var(--font-size-display) * 6 / 3)); line-height: 1.4; }
.documents_verify { min-height: 112px; color: var(--ink); border: 1px solid var(--line); background: var(--paper); grid-template-columns: minmax(0px, 1fr) 26px; align-items: center; gap: 18px; padding: 20px; display: grid; }
.documents_verify span { gap: 6px; display: grid; }
.documents_verify b { font-size: var(--font-size-body); }
.documents_verify small { color: color-mix(in srgb,var(--brand-ink) 86%,transparent); font-size: calc(var(--font-size-label) * 0.82 / 0.875); line-height: 1.65; }
.documents_credentials, .documents_request { padding: clamp(72px, 9vw, 118px) 0px; }
.documents_identity { border-top: 1px solid var(--line); margin-top: 32px; padding-top: 24px; }
.documents_identity .documents_shell { grid-template-columns: minmax(260px, 0.7fr) minmax(0px, 1.3fr); gap: clamp(42px, 8vw, 110px); display: grid; }
.documents_page header h2, .documents_request h2 { margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.15 / 3), 4vw, calc(var(--font-size-display) * 3.75 / 3)); line-height: 1.4; }
.documents_identity header h2 { font-size: calc(var(--font-size-heading-2) * 1.8 / 1.75); }
.documents_page header p, .documents_request p { max-width: 55ch; color: color-mix(in srgb,var(--brand-ink) 86%,transparent); margin: 18px 0px 0px; font-size: calc(var(--font-size-body) * 0.96); line-height: 1.85; }
.documents_identity dl { border-top: 1px solid var(--ink); margin: 0px; }
.documents_identity dl > div { border-bottom: 1px solid var(--line); grid-template-columns: 160px minmax(0px, 1fr); align-items: center; gap: 22px; min-height: 82px; padding: 16px 0px; display: grid; }
.documents_identity dt { color: color-mix(in srgb,var(--brand-ink) 86%,transparent); font-size: calc(var(--font-size-caption) * 0.78 / 0.75); font-weight: calc(var(--font-weight-body) + 300); }
.documents_identity dd { margin: 0px; font-size: var(--font-size-body); font-weight: calc(var(--font-weight-body) + 300); line-height: 1.55; }
.documents_credentials header { max-width: 780px; margin-bottom: 46px; }
.documents_credentialGrid { border-top: 1px solid var(--ink); grid-template-columns: repeat(3, minmax(0px, 1fr)); display: grid; }
.documents_credentialGrid > a { min-width: 0px; color: var(--ink); border-inline-end: 1px solid var(--line); border-bottom: 1px solid var(--line); grid-template-columns: minmax(0px, 1fr) 22px; align-content: start; gap: 20px; padding: 24px; display: grid; }
.documents_credentialGrid > a:last-child { border-inline-end: 0px; }
.documents_credentialGrid figure { aspect-ratio: 4 / 3; background: var(--paper); grid-column: 1 / -1; margin: 0px; overflow: hidden; }
.documents_credentialGrid img { object-fit: cover; object-position: center top; width: 100%; height: 100%; display: block; }
.documents_credentialPlaceholder { color: var(--ink); place-items: center; display: grid; background: color-mix(in srgb,var(--mist) 48%,var(--paper)) !important; }
.documents_credentialGrid span { gap: 6px; display: grid; }
.documents_credentialGrid small { color: color-mix(in srgb,var(--brand-ink) 86%,transparent); font-size: calc(var(--font-size-caption) * 0.72 / 0.75); line-height: 1.5; }
.documents_credentialGrid b { font-size: var(--font-size-body); line-height: 1.45; }
.documents_credentialGrid em { color: color-mix(in srgb,var(--brand-ink) 86%,transparent); font-size: calc(var(--font-size-caption) * 0.78 / 0.75); font-style: normal; }
[dir="rtl"] .documents_credentialGrid > a > svg, [dir="rtl"] .documents_request a > svg { transform: rotate(180deg); }
.documents_request { color: var(--white); background: var(--ink) var(--pattern-ink-image, none) center/cover; }
.documents_request .documents_shell { grid-template-columns: minmax(0px, 1fr) minmax(280px, 420px); align-items: center; gap: 40px; display: grid; }
.documents_request p { color: color-mix(in srgb,var(--brand-paper) 86%,transparent); }
.documents_request a { min-height: 66px; color: var(--ink); background: var(--mist); justify-content: space-between; align-items: center; gap: 18px; padding: 15px 18px; font-weight: calc(var(--font-weight-body) + 300); display: flex; }
:root[data-theme="dark"] .documents_page { --ink: var(--brand-paper); --paper: var(--brand-surface-dark); --white: var(--brand-night); --line: color-mix(in srgb,var(--brand-paper) 18%,transparent); color: var(--brand-paper); background: var(--brand-night); }
:root[data-theme="dark"] .documents_hero { background: var(--brand-surface-dark) var(--pattern-ink-image, none) center/cover; }
:root[data-theme="dark"] .documents_hero p, :root[data-theme="dark"] .documents_page header p, :root[data-theme="dark"] .documents_identity dt, :root[data-theme="dark"] .documents_credentialGrid small, :root[data-theme="dark"] .documents_credentialGrid em { color: color-mix(in srgb,var(--brand-paper) 86%,transparent); }
:root[data-theme="dark"] .documents_verify { color: var(--brand-paper); background: var(--brand-surface-soft-dark); }
:root[data-theme="dark"] .documents_verify small { color: color-mix(in srgb,var(--brand-paper) 82%,transparent); }
:root[data-theme="dark"] .documents_credentials { color: var(--brand-paper); background: var(--brand-night); }
:root[data-theme="dark"] .documents_credentialGrid > a { color: var(--brand-paper); }
:root[data-theme="dark"] .documents_request { color: var(--brand-paper); background: var(--brand-ink) var(--pattern-ink-image, none) center/cover; }
:root[data-theme="dark"] .documents_request a { color: var(--brand-ink); }
@media (max-width: 820px){.documents_hero .documents_shell, .documents_identity .documents_shell, .documents_request .documents_shell { grid-template-columns: 1fr; }
.documents_hero { padding-top: 116px; }
.documents_credentialGrid { grid-template-columns: 1fr 1fr; }
.documents_credentialGrid > a:nth-child(2n) { border-inline-end: 0px; }
.documents_request a { max-width: 520px; }}
@media (max-width: 560px){.documents_shell { width: var(--layout-shell-width); }
.documents_hero h1 { font-size: clamp(calc(var(--font-size-display) * 2.75 / 3), 13vw, calc(var(--font-size-display) * 4.15 / 3)); }
.documents_identity dl > div { grid-template-columns: 1fr; gap: 5px; }
.documents_credentialGrid { grid-template-columns: 1fr; }
.documents_credentialGrid > a { border-inline-end: 0px; padding: 22px 0px; }}
.faq_page { --faq-ink: var(--brand-ink); --faq-paper: var(--brand-paper); --faq-mist: var(--brand-mist); --faq-night: var(--brand-night); --faq-panel: var(--brand-surface-dark); --faq-line: color-mix(in srgb,var(--brand-paper) 16%,transparent); min-height: 100svh; color: var(--faq-paper); background: var(--faq-night); direction: inherit; }
.faq_page ::selection { color: var(--faq-ink); background: var(--faq-mist); }
.faq_main { width: var(--layout-shell-width); margin: 0px auto; padding: clamp(34px, 5vw, 72px) 0px clamp(72px, 9vw, 112px); }
.faq_hero { isolation: isolate; border: 1px solid var(--faq-line); background: var(--faq-hero-image, none) 42% center / cover no-repeat var(--faq-paper); border-radius: calc(var(--radius-surface) * 10 / 24); grid-template-rows: minmax(0px, 1fr); grid-template-columns: minmax(0px, 1.35fr) minmax(340px, 0.65fr); align-items: end; gap: 14px; min-height: clamp(560px, 68svh, 720px); margin-bottom: clamp(72px, 9vw, 112px); padding: clamp(18px, 3vw, 36px); display: grid; position: relative; overflow: hidden; }
.faq_hero::before { content: ""; z-index: -1; background: linear-gradient(90deg, color-mix(in srgb, var(--faq-ink) 3%, transparent) 18%, color-mix(in srgb, var(--faq-ink) 14%, transparent) 52%, color-mix(in srgb, var(--faq-ink) 64%, transparent) 100%); position: absolute; inset: 0px; }
.faq_heroCopy { z-index: 1; color: var(--faq-paper); border: 1px solid color-mix(in srgb,var(--brand-paper) 18%,transparent); background: color-mix(in srgb,var(--brand-ink) 96%,transparent); border-radius: calc(var(--radius-surface) * 4 / 24); flex-direction: column; grid-area: 1 / 2; align-self: end; padding: clamp(32px, 5vw, 64px); display: flex; position: relative; }
.faq_heroCopy .faq_eyebrow { order: 2; margin: 18px 0px 0px; }
.faq_title { letter-spacing: -0.025em; text-wrap: balance; order: 1; max-width: 720px; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 3.35 / 3), 6vw, calc(var(--font-size-display) * 6 / 3)); font-weight: max(var(--font-weight-body), calc(var(--font-weight-display) - 100)); line-height: 1.02; }
.faq_intro { max-width: 68ch; color: color-mix(in srgb,var(--brand-paper) 90%,transparent); order: 3; margin: 22px 0px 0px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.95; }
.faq_eyebrow { color: var(--faq-mist); margin: 0px 0px 14px; font-size: calc(var(--font-size-caption) * 0.8 / 0.75); font-weight: calc(var(--font-weight-body) + 300); line-height: 1.6; }
.faq_beforeStart { border: 1px solid var(--faq-line); background: var(--faq-panel); border-radius: calc(var(--radius-surface) * 4 / 24); margin-bottom: clamp(56px, 7vw, 86px); padding: clamp(28px, 5vw, 58px); }
.faq_sectionHeading, .faq_libraryHeading { max-width: 920px; margin-bottom: 30px; }
.faq_sectionHeading { flex-direction: column; display: flex; }
.faq_sectionHeading h2 { color: var(--faq-paper); letter-spacing: normal; text-wrap: balance; order: 1; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.15 / 3), 3.6vw, calc(var(--font-size-display) * 3.35 / 3)); font-weight: max(var(--font-weight-body), calc(var(--font-weight-display) - 100)); line-height: 1.4; }
.faq_sectionHeading .faq_eyebrow { order: 2; margin: 14px 0px 0px; }
.faq_sectionHeading > p:last-child { max-width: 70ch; color: color-mix(in srgb,var(--brand-paper) 84%,transparent); order: 3; margin: 12px 0px 0px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.85; }
.faq_list { gap: 12px; display: grid; }
.faq_item { border: 1px solid var(--faq-line); background: var(--faq-panel); border-radius: calc(var(--radius-surface) * 4 / 24); transition: border-color 0.18s ease-out, background-color 0.18s ease-out; position: relative; overflow: hidden; }
.faq_item:hover { border-color: color-mix(in srgb,var(--brand-mist) 46%,transparent); }
.faq_item[open] { color: var(--faq-ink); border-color: var(--faq-mist); background: var(--faq-paper); }
.faq_question { min-height: 86px; color: var(--faq-paper); cursor: pointer; justify-content: space-between; align-items: center; gap: 22px; padding: 20px 24px; font-size: calc(var(--font-size-body) * 1.05); font-weight: calc(var(--font-weight-body) + 300); line-height: 1.65; list-style: none; display: flex; }
.faq_question::-webkit-details-marker { display: none; }
.faq_question::after { content: "+"; width: 40px; height: 40px; color: var(--faq-ink); border: 1px solid color-mix(in srgb,var(--brand-ink) 14%,transparent); background: var(--faq-mist); border-radius: calc(var(--radius-surface) * 4 / 24); flex: 0 0 40px; place-items: center; font-size: calc(var(--font-size-body) * 1.05); font-weight: var(--font-weight-body); line-height: 1; transition: transform 0.18s ease-out, background-color 0.18s ease-out; display: grid; }
.faq_question:focus-visible { outline: 3px solid var(--faq-mist); outline-offset: -3px; }
.faq_item[open] .faq_question { color: var(--faq-ink); }
.faq_item[open] .faq_question::after { color: var(--faq-paper); background: var(--faq-ink); transform: rotate(45deg); }
.faq_answer { max-width: 78ch; color: color-mix(in srgb,var(--brand-ink) 88%,transparent); border-top: 1px solid color-mix(in srgb,var(--brand-ink) 16%,transparent); margin-inline-end: 24px; padding: 22px 0px 30px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.95; }
.faq_answer p { margin: 0px; }
.faq_sourceLink, .faq_cta { color: var(--faq-ink); text-decoration: none; }
.faq_sourceLink { border-bottom: 1px solid color-mix(in srgb,var(--brand-ink) 34%,transparent); text-underline-offset: 4px; align-items: center; min-height: 44px; margin-top: 14px; font-size: calc(var(--font-size-caption) * 0.8 / 0.75); display: inline-flex; }
.faq_sourceLink:focus-visible { outline: 3px solid var(--faq-mist); outline-offset: 3px; }
.faq_cta:focus-visible { outline: 3px solid var(--faq-mist); outline-offset: 3px; }
.faq_categoryNav a:focus-visible { outline: 3px solid var(--faq-mist); outline-offset: 3px; }
.faq_commercialLibrary { border-top: 1px solid color-mix(in srgb,var(--brand-paper) 20%,transparent); margin-top: clamp(76px, 9vw, 116px); padding-top: clamp(60px, 7vw, 88px); }
.faq_libraryHeading h2 { color: var(--faq-paper); letter-spacing: normal; text-wrap: balance; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.15 / 3), 3.6vw, calc(var(--font-size-display) * 3.35 / 3)); font-weight: max(var(--font-weight-body), calc(var(--font-weight-display) - 100)); line-height: 1.4; }
.faq_categoryNav { z-index: 6; overscroll-behavior-inline: contain; border: 1px solid var(--faq-line); background: color-mix(in srgb, var(--faq-night) 94%, transparent); scrollbar-width: thin; scrollbar-color: var(--faq-mist) transparent; border-radius: calc(var(--radius-surface) * 4 / 24); gap: 8px; margin-top: 28px; padding: 12px; display: flex; position: sticky; top: 78px; overflow-x: auto; }
.faq_categoryNav a { min-height: 42px; color: var(--faq-mist); border: 1px solid color-mix(in srgb,var(--brand-mist) 32%,transparent); white-space: nowrap; border-radius: calc(var(--radius-control) * 4 / 14); flex: 0 0 auto; align-items: center; padding: 8px 13px; font-size: calc(var(--font-size-caption) * 0.8 / 0.75); font-weight: calc(var(--font-weight-body) + 300); text-decoration: none; display: inline-flex; }
:is(.faq_categoryNav a:hover, .faq_categoryNav a:focus-visible) { color: var(--faq-ink); background: var(--faq-mist); }
.faq_category { padding-top: clamp(52px, 6vw, 74px); scroll-margin-top: 158px; }
.faq_categoryTitle { grid-template-columns: 48px minmax(0px, 1fr); align-items: center; gap: 16px; margin-bottom: 20px; display: grid; }
.faq_categoryTitle > span { width: 48px; height: 48px; color: var(--faq-ink); background: var(--faq-mist); font-variant-numeric: tabular-nums; border-radius: calc(var(--radius-surface) * 4 / 24); place-items: center; font-size: calc(var(--font-size-caption) * 0.8 / 0.75); font-weight: calc(var(--font-weight-body) + 300); display: grid; }
.faq_categoryTitle h3 { color: var(--faq-paper); margin: 0px; font-size: calc(var(--font-size-heading-1) * 2.15 / 2.25); line-height: 1.35; }
.faq_questionNumber { color: var(--faq-mist); font-variant-numeric: tabular-nums; flex: 0 0 auto; font-size: calc(var(--font-size-caption) * 0.8 / 0.75); font-weight: calc(var(--font-weight-body) + 300); }
.faq_item[open] .faq_questionNumber { color: var(--faq-ink); }
.faq_richAnswer { max-width: 82ch; }
.faq_richAnswer p { margin: 0px 0px 14px; }
.faq_richAnswer p:last-child { margin-bottom: 0px; }
.faq_richAnswer ul, .faq_richAnswer ol { margin: 4px 0px 18px; padding-inline-start: 24px; }
.faq_richAnswer li { margin: 4px 0px; }
.faq_richAnswer strong { color: var(--faq-ink); }
.faq_commercialClosing, .faq_contact { border-radius: calc(var(--radius-surface) * 4 / 24); }
.faq_commercialClosing { color: var(--faq-ink); background: var(--faq-mist); margin-top: clamp(54px, 7vw, 78px); padding: clamp(30px, 5vw, 56px); }
.faq_commercialClosing h2 { margin: 0px 0px 16px; font-size: clamp(calc(var(--font-size-display) * 2.15 / 3), 3.6vw, calc(var(--font-size-display) * 3.35 / 3)); line-height: 1.4; }
.faq_commercialClosing p { max-width: 78ch; margin: 0px 0px 12px; line-height: 1.95; }
.faq_commercialClosing p:last-child { margin-bottom: 0px; }
.faq_labourList { margin-top: 34px; }
.faq_contact { color: var(--faq-ink); border-top: 1px solid var(--faq-mist); background: var(--faq-paper); margin-top: clamp(58px, 8vw, 92px); padding: clamp(30px, 5vw, 56px); position: relative; overflow: hidden; }
.faq_contact h2 { color: var(--faq-ink); margin: 0px 0px 12px; font-size: clamp(calc(var(--font-size-display) * 2.15 / 3), 3.6vw, calc(var(--font-size-display) * 3.35 / 3)); line-height: 1.4; }
.faq_contact p { max-width: 70ch; color: color-mix(in srgb,var(--brand-ink) 86%,transparent); margin: 0px; line-height: 1.9; }
.faq_cta { min-height: 52px; color: var(--faq-paper); background: var(--faq-ink); border-radius: calc(var(--radius-control) * 4 / 14); justify-content: center; align-items: center; margin-top: 24px; padding: 0px 22px; font-weight: calc(var(--font-weight-body) + 300); display: inline-flex; }
:root[data-theme="light"] .faq_page { --faq-line: color-mix(in srgb,var(--brand-ink) 16%,transparent); color: var(--faq-ink); background: var(--brand-white); }
:root[data-theme="light"] .faq_beforeStart { background: var(--faq-paper); }
:root[data-theme="light"] .faq_sectionHeading h2, :root[data-theme="light"] .faq_libraryHeading h2, :root[data-theme="light"] .faq_categoryTitle h3 { color: var(--faq-ink); }
:root[data-theme="light"] .faq_sectionHeading > p:last-child { color: color-mix(in srgb,var(--brand-ink) 82%,transparent); }
:root[data-theme="light"] .faq_item { color: var(--faq-ink); background: var(--brand-white); }
:root[data-theme="light"] .faq_question { color: var(--faq-ink); }
:root[data-theme="light"] .faq_item[open] { background: var(--faq-paper); }
:root[data-theme="light"] .faq_commercialLibrary { border-color: color-mix(in srgb,var(--brand-ink) 18%,transparent); }
:root[data-theme="light"] .faq_categoryNav { border-color: color-mix(in srgb,var(--brand-ink) 16%,transparent); background: color-mix(in srgb,var(--brand-white) 96%,transparent); }
:root[data-theme="light"] .faq_categoryNav a { color: var(--faq-ink); border-color: color-mix(in srgb,var(--brand-ink) 22%,transparent); }
:is(:root[data-theme="light"] .faq_categoryNav a:hover, :root[data-theme="light"] .faq_categoryNav a:focus-visible) { color: var(--faq-paper); background: var(--faq-ink); }
@media (max-width: 900px){.faq_hero { grid-template-columns: minmax(0px, 1fr) minmax(310px, 0.72fr); }
.faq_heroCopy { padding: 34px; }}
@media (max-width: 760px){.faq_main { width: var(--layout-shell-width); padding-top: 22px; }
.faq_hero { background-position: 30% center; grid-template-rows: minmax(210px, 1fr) auto; grid-template-columns: 1fr; align-items: end; min-height: 680px; padding: 14px; }
.faq_hero::before { background: linear-gradient(180deg, color-mix(in srgb, var(--faq-ink) 2%, transparent) 16%, color-mix(in srgb, var(--faq-ink) 26%, transparent) 48%, color-mix(in srgb, var(--faq-ink) 76%, transparent) 100%); }
.faq_heroCopy { grid-area: 2 / 1; padding: 28px 22px; }
.faq_title { font-size: clamp(calc(var(--font-size-display) * 3.35 / 3), 13vw, calc(var(--font-size-display) * 6 / 3)); }
.faq_intro { margin-top: 18px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.82; }
.faq_beforeStart { padding: 24px 18px; }
.faq_question { gap: 14px; min-height: 76px; padding: 18px; font-size: calc(var(--font-size-body) * 1.05); }
.faq_question::after { flex-basis: 38px; width: 38px; height: 38px; }
.faq_answer { max-width: none; margin-inline: 18px; padding: 18px 0px 24px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.85; }
.faq_categoryNav { margin-inline: -2px; top: 70px; }
.faq_category { scroll-margin-top: 144px; }
.faq_categoryTitle { grid-template-columns: 42px minmax(0px, 1fr); gap: 12px; }
.faq_categoryTitle > span { width: 42px; height: 42px; }
.faq_questionNumber { display: none; }
.faq_contact { padding: 30px 22px; }}
@media (max-width: 420px){.faq_main { width: calc(100% - 20px); }
.faq_hero { min-height: 650px; padding: 10px; }
.faq_heroCopy { padding: 24px 18px; }
.faq_beforeStart { padding: 22px 14px; }
.faq_sectionHeading h2, .faq_libraryHeading h2 { font-size: clamp(calc(var(--font-size-display) * 2.15 / 3), 10vw, calc(var(--font-size-display) * 3.35 / 3)); }
.faq_question { padding: 16px 14px; }
.faq_answer { margin-inline: 14px; }
.faq_commercialClosing, .faq_contact { border-radius: calc(var(--radius-surface) * 4 / 24); }}
@media (prefers-reduced-motion: reduce){.faq_item, .faq_question::after { transition: none; }}
.faq_page[dir="ltr"] .faq_title { overflow-wrap: normal; word-break: normal; font-size: clamp(calc(var(--font-size-display) * 2.1 / 3), 3.5vw, calc(var(--font-size-display) * 3.75 / 3)); line-height: 1.15; }
.privacy_page { background: var(--brand-white); min-height: 100vh; color: var(--brand-ink); font-family: var(--font-arabic),system-ui,sans-serif; padding: 24px; }
.privacy_languages { flex-wrap: wrap; align-items: center; gap: 5px; display: flex; }
.privacy_page article { max-width: 760px; margin: 0px auto; padding-bottom: 72px; }
.privacy_page h1 { letter-spacing: normal; max-width: 690px; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.2 / 3), 7vw, calc(var(--font-size-display) * 4.8 / 3)); line-height: 1.4; }
.privacy_intro { max-width: 650px; margin: 24px 0px 48px; font-size: calc(var(--font-size-heading-4) * 1.2 / 1.125); line-height: 1.8; }
.privacy_page section { border-top: 1px solid var(--border); padding: 24px 0px; }
.privacy_page h2 { margin: 0px 0px 8px; font-size: calc(var(--font-size-body) * 1.05); }
.privacy_page section p { color: var(--text-secondary); margin: 0px; line-height: 1.85; }
.privacy_contact { background: var(--brand-ink); color: var(--brand-white); margin: 24px 0px; padding: 18px 20px; font-weight: calc(var(--font-weight-body) + 300); text-decoration: none; display: block; }
.privacy_back { min-height: 44px; color: var(--brand-ink); align-items: center; margin-top: 28px; font-weight: calc(var(--font-weight-body) + 300); display: inline-flex; }
@media (prefers-color-scheme: dark){.privacy_page { background: var(--brand-surface-dark); color: var(--surface-soft); }
.privacy_page section { border-color: var(--border); }
.privacy_page section p, .privacy_eyebrow { color: var(--text-secondary); }
.privacy_contact { background: var(--brand-mist); color: var(--brand-surface-dark); }
.privacy_back { color: var(--surface-soft); }
.privacy_languages a[aria-current="page"] { color: var(--brand-surface-dark); border-color: var(--brand-mist); background: var(--brand-mist); }}
.privacy_page h1, .privacy_page h2 { max-width: none; font-size: min(var(--one-line-heading-mobile,8.6vw),calc(var(--font-size-display) * 4.8 / 3)); letter-spacing: normal; white-space: normal; line-height: 1.4; }
.privacy_page h2 { font-size: min(var(--one-line-heading-mobile,8.6vw),calc(var(--font-size-heading-4) * 1.15 / 1.125)); }
@media (min-width: 860px){.privacy_page h1 { font-size: min(var(--one-line-heading-desktop,4.65vw),calc(var(--font-size-display) * 4.8 / 3)); }
.privacy_page h2 { font-size: min(var(--one-line-heading-desktop,4.65vw),calc(var(--font-size-heading-4) * 1.15 / 1.125)); }}
.privacy_page { min-height: 100svh; color: var(--brand-paper); background: var(--brand-night); padding: clamp(18px, 4vw, 44px); font-family: var(--font-brand), system-ui, sans-serif; }
.privacy_languages a[aria-current="page"] { color: var(--brand-night); border-color: var(--brand-mist); background: var(--brand-mist); }
.privacy_page article { max-width: 820px; }
.privacy_page h1 { color: var(--brand-paper); white-space: normal; text-wrap-style: balance; font-size: clamp(calc(var(--font-size-display) * 2.5 / 3), 6vw, calc(var(--font-size-display) * 5 / 3)); }
.privacy_intro { max-width: 720px; color: color-mix(in srgb,var(--brand-paper) 86%,transparent); font-size: calc(var(--font-size-heading-4) * 1.14 / 1.125); line-height: 1.9; }
.privacy_page section { border-color: color-mix(in srgb,var(--brand-paper) 16%,transparent); padding-block: 28px; }
.privacy_page h2 { color: var(--brand-mist); white-space: normal; font-size: calc(var(--font-size-heading-4) * 1.2 / 1.125); }
.privacy_page section p { color: color-mix(in srgb,var(--brand-paper) 86%,transparent); }
.privacy_contact { color: var(--brand-night); background: var(--brand-mist); border-radius: calc(var(--radius-surface) * 6 / 24); }
.privacy_back { color: var(--brand-mist); }
:root[data-theme="light"] .privacy_page { color: var(--brand-ink); background: var(--brand-white); }
:root[data-theme="light"] .privacy_languages a[aria-current="page"] { color: var(--brand-white); border-color: var(--brand-ink); background: var(--brand-ink); }
:root[data-theme="light"] .privacy_page h1 { color: var(--brand-ink); }
:root[data-theme="light"] .privacy_intro, :root[data-theme="light"] .privacy_page section p { color: color-mix(in srgb,var(--brand-ink) 86%,transparent); }
:root[data-theme="light"] .privacy_page section { border-color: color-mix(in srgb,var(--brand-ink) 18%,transparent); }
:root[data-theme="light"] .privacy_page h2 { color: var(--brand-ink); }
:root[data-theme="light"] .privacy_contact { color: var(--brand-white); background: var(--brand-ink); }
:root[data-theme="light"] .privacy_back { color: var(--brand-ink); }
@media (max-width: 620px){.privacy_languages { grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 4px; display: grid; }}
.privacy_page article > .privacy_languages { margin-bottom: 32px; }
.privacy_page article > .privacy_languages a { min-height: 44px; color: inherit; border: 1px solid var(--brand-mist); border-radius: var(--radius-chip); align-items: center; padding: 8px 13px; font-weight: calc(var(--font-weight-body) + 300); text-decoration: none; display: inline-flex; }
@media (max-width: 480px){.privacy_page { padding: 16px; }
.privacy_page article { padding-bottom: 52px; }
.privacy_page h1 { text-wrap: balance; font-size: clamp(calc(var(--font-size-display) * 2.2 / 3), 11vw, calc(var(--font-size-display) * 3.25 / 3)); line-height: 1.4; }
.privacy_intro { margin: 20px 0px 38px; font-size: var(--font-size-body); line-height: 1.8; }
.privacy_page section { padding-block: 22px; }
.privacy_page section p { font-size: calc(var(--font-size-body) * 0.96); line-height: 1.8; }
.privacy_contact { align-items: center; min-height: 52px; padding: 14px 16px; display: flex; }}
.legal-product-page_page { --product-ink: var(--brand-ink); --product-paper: var(--surface-soft); --product-mist: var(--brand-mist); --product-light: var(--brand-paper); --product-white: var(--surface); --product-text: var(--text); --product-muted: var(--text-secondary); --product-line: var(--border); min-height: 100svh; color: var(--product-text); background: var(--product-white); font-family: var(--font-brand); overflow: clip; }
.legal-product-page_page * { box-sizing: border-box; }
.legal-product-page_page a { color: inherit; text-decoration: none; }
.legal-product-page_page :where(a, button, summary):focus-visible { outline: 3px solid var(--product-mist); outline-offset: 4px; }
.legal-product-page_page :where(section, article) { scroll-margin-top: 88px; }
.legal-product-page_hero { min-height: calc(100svh - 78px - env(safe-area-inset-top)); padding: 64px var(--layout-gutter) 72px; color: var(--product-light); background: var(--product-ink); align-items: center; display: grid; position: relative; overflow: hidden; }
.legal-product-page_heroMark { opacity: 0.035; filter: brightness(0) invert(); pointer-events: none; width: min(37vw, 500px); height: auto; position: absolute; inset-block-start: 11%; inset-inline-end: -72px; }
.legal-product-page_heroInner, .legal-product-page_sectionInner, .legal-product-page_closingInner { z-index: 1; width: min(100%, var(--layout-content-max)); margin-inline: auto; position: relative; }
.legal-product-page_heroInner { grid-template-columns: minmax(0px, 1.15fr) minmax(360px, 0.85fr); align-items: center; gap: clamp(54px, 7vw, 100px); display: grid; }
.legal-product-page_heroCopy { max-width: 720px; }
.legal-product-page_hero h1 { letter-spacing: normal; gap: 10px; margin: 0px; font-weight: calc(var(--font-weight-body) + 400); line-height: 1.4; display: grid; }
.legal-product-page_hero h1 span { font-size: clamp(calc(var(--font-size-display) * 3.35 / 3), 6.7vw, calc(var(--font-size-display) * 6 / 3)); }
.legal-product-page_heroCopy > p:not(.legal-product-page_heroNote) { max-width: 64ch; color: color-mix(in srgb,var(--brand-paper) 86%,transparent); margin: 18px 0px 0px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.9; }
.legal-product-page_heroActions { flex-wrap: wrap; gap: 10px; margin-block-start: 28px; display: flex; }
.legal-product-page_primaryAction, .legal-product-page_secondaryAction { border-radius: calc(var(--radius-control) * 2 / 14); justify-content: center; align-items: center; gap: 12px; min-height: 54px; padding-inline: 18px; font-size: calc(var(--font-size-body) * 1.05); font-weight: calc(var(--font-weight-body) + 300); display: inline-flex; }
.legal-product-page_primaryAction { background: var(--product-mist); color: var(--product-ink) !important; }
.legal-product-page_secondaryAction { border: 1px solid color-mix(in srgb,var(--brand-paper) 32%,transparent); color: var(--product-light) !important; }
.legal-product-page_heroNote { max-width: 66ch; color: color-mix(in srgb,var(--brand-paper) 86%,transparent); border-top: 1px solid color-mix(in srgb,var(--brand-paper) 20%,transparent); margin: 22px 0px 0px; padding-block-start: 18px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.75; }
.legal-product-page_tierRail { border-top: 1px solid color-mix(in srgb,var(--brand-paper) 25%,transparent); }
.legal-product-page_tierRail a { border-bottom: 1px solid color-mix(in srgb,var(--brand-paper) 25%,transparent); grid-template-columns: minmax(0px, 1fr) auto; align-content: center; gap: 5px 16px; min-height: 132px; padding: 22px 0px; display: grid; }
.legal-product-page_tierRail a:hover { color: var(--product-mist); }
.legal-product-page_tierRail span { font-size: calc(var(--font-size-heading-3) * 1.25 / 1.375); font-weight: calc(var(--font-weight-heading-3) + 100); }
.legal-product-page_tierRail small { color: color-mix(in srgb,var(--brand-paper) 86%,transparent); grid-column: 1 / -1; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.65; }
.legal-product-page_section { padding: clamp(74px, 8vw, 116px) var(--layout-gutter); }
.legal-product-page_sectionHeading { grid-template-columns: minmax(280px, 0.85fr) minmax(360px, 1.15fr); align-items: end; gap: 34px; margin-block-end: 38px; display: grid; }
.legal-product-page_sectionHeading h2, .legal-product-page_boundaries h2, .legal-product-page_closing h2 { letter-spacing: normal; max-width: 20ch; margin: 0px; font-size: clamp(calc(var(--font-size-display) * 2.15 / 3), 3.6vw, calc(var(--font-size-display) * 3.35 / 3)); font-weight: var(--font-weight-display); line-height: 1.4; }
.legal-product-page_sectionHeading > p { max-width: 68ch; color: var(--product-muted); margin: 0px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.9; }
.legal-product-page_plans { background: var(--product-paper); }
.legal-product-page_billingToolbar { justify-content: flex-end; align-items: center; gap: 12px; margin-block-end: 22px; display: flex; }
.legal-product-page_billingToolbar > span { color: var(--product-muted); font-size: var(--font-size-body); font-weight: calc(var(--font-weight-body) + 400); }
.legal-product-page_billingToolbar > div { border: 1px solid var(--product-ink); background: var(--product-white); border-radius: var(--radius-control); grid-template-columns: repeat(3, minmax(0px, 1fr)); width: min(100%, 420px); min-width: 0px; padding: 3px; display: grid; }
.legal-product-page_billingToolbar button { white-space: nowrap; min-width: 0px; min-height: 44px; color: var(--product-text); cursor: pointer; border-radius: calc(var(--radius-control) - 3px); background: 0px 0px; border: 0px; padding-inline: 4px; font-size: var(--font-size-label); font-weight: calc(var(--font-weight-body) + 400); }
.legal-product-page_billingToolbar button[aria-pressed="true"] { color: var(--product-light); background: var(--product-ink); }
.legal-product-page_planMetrics { border-top: 1px solid var(--product-line); margin: 0px 0px 28px; }
.legal-product-page_planMetrics > div { border-bottom: 1px solid var(--product-line); align-content: center; min-height: 112px; padding-block: 15px; display: grid; }
.legal-product-page_planMetrics dt { color: var(--product-muted); font-size: var(--font-size-body); font-weight: calc(var(--font-weight-body) + 300); line-height: 1.6; }
.legal-product-page_planMetrics dd { flex-wrap: wrap; align-items: baseline; gap: 5px 8px; margin: 7px 0px 0px; display: flex; }
.legal-product-page_planMetrics dd strong { font-variant-numeric: tabular-nums; font-size: calc(var(--font-size-heading-2) * 1.72 / 1.75); line-height: 1.2; }
.legal-product-page_planMetrics dd span, .legal-product-page_planMetrics dd small { color: var(--product-muted); font-size: var(--font-size-body); line-height: 1.5; }
.legal-product-page_commercialNote { max-width: 78ch; color: var(--product-muted); margin: 22px 0px 0px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.75; }
.legal-product-page_carouselHeader { justify-content: space-between; align-items: center; gap: 16px; margin-block: 28px 14px; display: flex; }
.legal-product-page_carouselHeader > p { color: var(--product-muted); margin: 0px; font-size: var(--font-size-body); line-height: 1.7; }
.legal-product-page_carouselControls { align-items: center; gap: 8px; display: flex; }
.legal-product-page_carouselControls button { width: 44px; height: 44px; color: var(--product-text); background: var(--product-white); border: 1px solid var(--product-line); border-radius: var(--radius-control); cursor: pointer; justify-content: center; align-items: center; display: inline-flex; }
.legal-product-page_carouselControls button:first-child svg { transform: rotate(180deg); }
.legal-product-page_planCarousel { overscroll-behavior-inline: contain; scroll-snap-type: inline mandatory; scrollbar-width: thin; scrollbar-color: var(--product-mist) transparent; grid-auto-columns: 46%; grid-auto-flow: column; gap: 20px; padding: 2px 2px 14px; display: grid; overflow-x: auto; }
@media (max-width: 980px){.legal-product-page_planCarousel { grid-auto-columns: 72%; }}
.legal-product-page_planCarousel > .solution-tier { scroll-snap-align: start; scroll-snap-stop: always; height: 100%; }
.legal-product-page_comparisonHeading { border-top: 2px solid var(--product-ink); grid-template-columns: minmax(260px, 0.8fr) minmax(360px, 1.2fr); align-items: end; gap: 28px; margin-block: clamp(54px, 7vw, 84px) 22px; padding-block-start: 28px; display: grid; }
.legal-product-page_comparisonHeading h3 { margin: 0px; font-size: clamp(calc(var(--font-size-display) * 1.9 / 3), 3.2vw, calc(var(--font-size-display) * 2.8 / 3)); line-height: 1.4; }
.legal-product-page_comparisonHeading p { color: var(--product-muted); margin: 0px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.85; }
.legal-product-page_comparisonGroup th, .legal-product-page_comparisonSubgroup th { text-align: start; border-inline-start: 0px; width: auto; min-width: 0px; position: static; }
.legal-product-page_comparisonGroup th { color: var(--product-ink); background: var(--product-mist); font-size: calc(var(--font-size-body) * 1.05); }
.legal-product-page_disclosures details, .legal-product-page_faqList details { border-bottom: 1px solid var(--product-line); }
.legal-product-page_disclosures summary, .legal-product-page_faqList summary { cursor: pointer; justify-content: space-between; align-items: center; gap: 24px; min-height: 94px; padding: 20px 0px; list-style: none; display: flex; }
.legal-product-page_faqList summary::-webkit-details-marker { display: none; }
.legal-product-page_disclosures summary svg, .legal-product-page_faqList summary svg { flex: 0 0 auto; transition: transform 0.18s ease-out; }
.legal-product-page_disclosures details[open] summary svg, .legal-product-page_faqList details[open] summary svg { transform: rotate(180deg); }
.legal-product-page_faq { background: var(--product-white); }
.legal-product-page_faqList { border-top: 1px solid var(--product-line); }
.legal-product-page_faqList summary span { font-size: calc(var(--font-size-heading-3) * 1.25 / 1.375); font-weight: calc(var(--font-weight-heading-3) + 100); }
.legal-product-page_faqList p { max-width: 76ch; color: var(--product-muted); margin: 0px; padding: 0px 0px 26px; font-size: calc(var(--font-size-body) * 1.05); line-height: 1.9; }
.legal-product-page_closing { padding: clamp(72px, 8vw, 112px) var(--layout-gutter); color: var(--product-ink); background: var(--product-mist); position: relative; overflow: hidden; }
.legal-product-page_closing > img, .legal-product-page_closing > .site-responsive-image > img { opacity: 0.06; pointer-events: none; width: min(32vw, 430px); height: auto; position: absolute; inset-block-end: -100px; inset-inline-start: -56px; }
.legal-product-page_closingInner { grid-template-columns: minmax(0px, 0.85fr) minmax(380px, 1.15fr); align-items: start; gap: 48px; display: grid; }
.legal-product-page_closing a { min-height: 58px; color: var(--product-light); background: var(--product-ink); border-radius: calc(var(--radius-control) * 2 / 14); align-items: center; gap: 18px; padding-inline: 18px; font-weight: calc(var(--font-weight-body) + 400); display: flex; }
.legal-product-page_closingAction { justify-content: space-between; }
@media (max-width: 980px){.legal-product-page_heroInner, .legal-product-page_foundationLayout, .legal-product-page_delivery .legal-product-page_sectionInner { grid-template-columns: 1fr; }
.legal-product-page_heroInner { gap: 46px; }
.legal-product-page_tierRail { border-bottom: 1px solid color-mix(in srgb,var(--brand-paper) 25%,transparent); grid-template-columns: repeat(3, minmax(0px, 1fr)); display: grid; }
.legal-product-page_tierRail a { border-bottom: 0px; border-inline-end: 1px solid color-mix(in srgb,var(--brand-paper) 25%,transparent); flex-direction: column; align-items: flex-start; min-height: 148px; padding: 20px; display: flex; }
.legal-product-page_tierRail a:last-child { border-inline-end: 0px; }
.legal-product-page_tierRail small { margin-block-start: auto; }
.legal-product-page_comparisonHeading { grid-template-columns: 1fr; align-items: start; }}
@media (max-width: 700px){.legal-product-page_hero { min-height: auto; padding: 48px var(--layout-gutter) 62px; }
.legal-product-page_heroMark { width: 74vw; }
.legal-product-page_heroActions { display: grid; }
.legal-product-page_billingToolbar { flex-direction: column; align-items: stretch; }
.legal-product-page_billingToolbar > div { width: 100%; }
.legal-product-page_carouselHeader { align-items: flex-start; }
.legal-product-page_carouselHeader > p { max-width: 19ch; }
.legal-product-page_planCarousel { margin-inline: calc(var(--layout-gutter) * -1); padding-inline: var(--layout-gutter); scroll-padding-inline: var(--layout-gutter); grid-auto-columns: 86vw; }
.legal-product-page_tierRail { border-bottom: 0px; grid-template-columns: 1fr; }
.legal-product-page_tierRail a { border-inline-end: 0px; border-bottom: 1px solid color-mix(in srgb,var(--brand-paper) 25%,transparent); min-height: 112px; padding-inline: 0px; }
.legal-product-page_section, .legal-product-page_closing { padding-inline: var(--layout-gutter); }
.legal-product-page_sectionHeading { margin-block-end: 30px; display: block; }
.legal-product-page_sectionHeading > p { margin-block-start: 14px; }
.legal-product-page_planMetrics > div { min-height: auto; }
.legal-product-page_closingInner { grid-template-columns: 1fr; align-items: start; }
.legal-product-page_closing a { justify-content: space-between; }}
@media (prefers-reduced-motion: reduce){.legal-product-page_page *, .legal-product-page_page ::before, .legal-product-page_page ::after { scroll-behavior: auto !important; transition: none !important; }}
:root[data-theme="light"] .legal-product-page_hero { color: var(--product-text); background: var(--product-white); border-bottom: 1px solid var(--product-line); }
:root[data-theme="light"] .legal-product-page_heroCopy > p:not(.legal-product-page_heroNote), :root[data-theme="light"] .legal-product-page_heroNote, :root[data-theme="light"] .legal-product-page_tierRail small { color: var(--product-muted); }
:root[data-theme="light"] .legal-product-page_heroNote, :root[data-theme="light"] .legal-product-page_tierRail, :root[data-theme="light"] .legal-product-page_tierRail a { border-color: var(--product-line); }
:root[data-theme="light"] .legal-product-page_primaryAction, :root[data-theme="light"] .legal-product-page_secondaryAction { border: 1px solid var(--product-mist); background: 0px 0px; color: var(--product-ink) !important; }
.legal-product-page_hero h1 span { font-size: clamp(calc(var(--font-size-display) * 2.8 / 3), 5vw, calc(var(--font-size-display) * 4.5 / 3)); line-height: 1.4; }
.legal-product-page_faqList details > ul { margin: 0px; padding: 0px 24px 24px 40px; line-height: 1.8; }
.legal-product-page_faqList details > ul li + li { margin-top: 10px; }
.quick-links_page { box-sizing: border-box; min-height: 100svh; padding: max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left)); color: var(--text); background: var(--canvas); justify-content: center; align-items: center; display: flex; }
.quick-links_card { gap: 24px; width: 100%; max-width: 420px; display: grid; }
.quick-links_identity { gap: 10px; display: grid; }
.quick-links_brandRow { justify-content: space-between; align-items: center; gap: 24px; display: flex; }
.quick-links_brand { width: 210px; max-width: calc(100% - 68px); display: block; }
.quick-links_language { border: 1px solid var(--border); min-width: 44px; min-height: 44px; color: var(--text); font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; cursor: pointer; background: 0px 0px; border-radius: 50%; place-items: center; padding: 0px 8px; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); display: grid; }
.quick-links_slogan { color: var(--text-secondary); margin: 0px; font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); line-height: 1.5; }
.quick-links_actions { gap: 8px; display: grid; }
.quick-links_action { box-sizing: border-box; border: 1px solid var(--border); background: var(--surface); min-height: 60px; color: var(--text); border-radius: calc(var(--radius-control) * 16 / 14); align-items: center; gap: 14px; padding: 9px 16px; text-decoration: none; transition: background 0.15s, border-color 0.15s; display: flex; }
.quick-links_actionIcon { flex: 0 0 auto; display: flex; }
.quick-links_actionText { flex: 1 1 0%; justify-content: space-between; align-items: center; gap: 8px; min-width: 0px; display: flex; }
.quick-links_label { font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); line-height: 1.4; }
.quick-links_detail { color: var(--text-secondary); font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); line-height: 1.5; }
.quick-links_action:has(.quick-links_detail[dir="ltr"]) .quick-links_detail { font-family: var(--font-numerals); }
.quick-links_arrow { color: var(--text-secondary); flex: 0 0 auto; display: flex; }
.quick-links_primary { background: var(--action); color: var(--on-action); border-color: var(--action); min-height: 64px; }
.quick-links_primary .quick-links_detail, .quick-links_primary .quick-links_arrow { color: inherit; }
.quick-links_action:hover { background: var(--surface-soft); border-color: var(--border-strong); }
.quick-links_primary:hover { background: var(--action); border-color: var(--text); }
.quick-links_socials { grid-template-columns: repeat(5, minmax(0px, 1fr)); gap: 8px; padding-top: 4px; display: grid; }
.quick-links_social { color: var(--text-secondary); text-align: center; flex-direction: column; align-items: center; gap: 7px; min-width: 0px; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); line-height: 1.4; text-decoration: none; display: flex; }
.quick-links_socialIcon { border: 1px solid var(--border); background: var(--surface); border-radius: 50%; place-items: center; width: 48px; height: 48px; display: grid; }
.quick-links_socialIcon img { object-fit: contain; width: 22px; height: 22px; }
.quick-links_social:hover .quick-links_socialIcon { background: var(--surface-soft); border-color: var(--border-strong); }
.quick-links_card a:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
.quick-links_language:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
@media (max-width: 440px){.quick-links_actionText { flex-direction: column; align-items: flex-start; gap: 1px; }
.quick-links_action { min-height: 62px; padding-block: 8px; }
.quick-links_detail { font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); }
.quick-links_card { gap: 20px; }
.quick-links_socials { gap: 4px; }}
@media (max-height: 650px){.quick-links_page { padding-block: max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-bottom)); }
.quick-links_card { gap: 14px; }
.quick-links_identity { gap: 6px; }
.quick-links_brand { width: 185px; }
.quick-links_action { min-height: 58px; padding-block: 6px; }
.quick-links_socialIcon { width: 44px; height: 44px; }
.quick-links_social { gap: 4px; }
.quick-links_socials { padding-top: 0px; }}
@media (max-height: 560px){.quick-links_page { padding-block: max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-bottom)); }
.quick-links_card { gap: 10px; }
.quick-links_identity { gap: 4px; }
.quick-links_slogan { font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); }
.quick-links_actions { gap: 6px; }
.quick-links_action { min-height: 50px; padding-block: 4px; }
.quick-links_label { line-height: 1.2; }
.quick-links_detail { line-height: 1.25; }
.quick-links_social { font-size: calc(var(--font-size-caption) * 13 / (0.75 * var(--root-px))); }}
@media (prefers-reduced-motion: reduce){.quick-links_action { transition: none; }}
.quick-links_card { gap: 14px; max-width: 440px; }
.quick-links_identity { gap: 4px; }
.quick-links_brand { width: 170px; }
.quick-links_actions { gap: 6px; }
.quick-links_action, .quick-links_primary { min-height: 48px; padding: 6px 12px; }
.quick-links_actionText { flex-direction: row; align-items: center; }
.quick-links_label { font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); }
.quick-links_detail { font-size: calc(var(--font-size-caption) * 12 / (0.75 * var(--root-px))); }
.quick-links_socialIcon { width: 44px; height: 44px; }
.quick-links_social { gap: 4px; font-size: calc(var(--font-size-caption) * 12 / (0.75 * var(--root-px))); }
.quick-links_engagement { gap: 10px; display: grid; }
.quick-links_message { background: var(--action); min-height: 40px; color: var(--on-action); border-radius: calc(var(--radius-control) * 12 / 14); justify-content: space-between; align-items: center; gap: 8px; padding: 6px 12px; font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); text-decoration: none; display: flex; }
.quick-links_message span { animation: 0.22s ease-out 0s 1 normal none running _message-in_cltnn_1; }
@media (max-width: 370px){.quick-links_actionText { gap: 3px; }
.quick-links_action { gap: 8px; padding-inline: 8px; }
.quick-links_detail { font-size: calc(var(--font-size-caption) * 12 / (0.75 * var(--root-px))); }
.quick-links_page { padding-inline: 14px; }}
@media (max-height: 740px){.quick-links_page { padding-block: max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-bottom)); }
.quick-links_card { gap: 9px; }
.quick-links_brand { width: 145px; }
.quick-links_slogan { font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); }
.quick-links_engagement { gap: 6px; }
.quick-links_actions { gap: 4px; }
.quick-links_action, .quick-links_primary { min-height: 44px; }}
@media (prefers-reduced-motion: reduce){.quick-links_message span { animation: auto ease 0s 1 normal none running none; }}
.quick-links_newsletterSection { border-top: 1px solid var(--border); min-width: 0px; margin-top: 10px; padding-top: 24px; }
.quick-links_socialIcon > span { width: 22px; height: 22px; }
.experience_page.experience_page { color: var(--text); background: var(--surface); min-height: 70vh; padding: 40px 0px 80px; }
.experience_page > main.experience_shell { inline-size: var(--layout-shell-width); max-inline-size: var(--layout-content-max); background: 0px 0px; margin-inline: auto; display: block; }
.experience_intro { max-width: 860px; padding-block: 0px 24px; }
.experience_intro h1 { letter-spacing: normal; margin: 0px 0px 12px; font-size: clamp(calc(var(--font-size-display) * 30 / (3 * var(--root-px))), 4vw, calc(var(--font-size-display) * 46 / (3 * var(--root-px)))); font-weight: max(var(--font-weight-body), calc(var(--font-weight-display) - 200)); line-height: 1.4; }
.experience_explanation { max-width: 760px; color: color-mix(in srgb,var(--text) 78%,transparent); font-size: calc(var(--font-size-label) * 15 / (0.875 * var(--root-px))); line-height: 1.95; }
.experience_stats { border-block: 1px solid color-mix(in srgb,var(--text) 22%,transparent); grid-template-columns: repeat(3, 1fr); gap: 24px; margin: 0px; padding-block: 22px; display: grid; }
.experience_stats > div { flex-direction: column-reverse; gap: 5px; display: flex; }
.experience_stats > div + div { border-inline-start: 1px solid color-mix(in srgb,var(--text) 18%,transparent); padding-inline-start: 28px; }
.experience_stats dt { font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); }
.experience_stats dd { font-variant-numeric: tabular-nums; margin: 0px; font-size: calc(var(--font-size-heading-1) * 38 / (2.25 * var(--root-px))); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.3; }
.experience_stats dd span { font-size: calc(var(--font-size-body) * 17 / (var(--root-px))); font-weight: var(--font-weight-body); }
.experience_privacy { max-width: 840px; margin: 18px 0px 36px; font-size: calc(var(--font-size-caption) * 13 / (0.75 * var(--root-px))); line-height: 1.9; }
.experience_filters { border-block: 1px solid color-mix(in srgb,var(--text) 16%,transparent); grid-template-columns: 1.25fr 0.8fr 1.2fr 1.1fr; gap: 12px; padding-block: 22px; display: grid; }
.experience_filters label { flex-direction: column; gap: 9px; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); display: flex; }
.experience_filters select, .experience_filters input, .experience_toolbar select { width: 100%; min-width: 0px; height: 48px; min-height: 48px; color: var(--text); background: var(--surface); border: 1px solid color-mix(in srgb,var(--text) 28%,transparent); border-radius: var(--radius-control); font: inherit; padding: 9px 12px; display: block; }
.experience_filters select { padding-inline-end: 26px; }
.experience_toolbar { flex-wrap: wrap; align-items: center; gap: 20px; min-height: 76px; padding-block: 16px; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); display: flex; }
.experience_toolbar p { font-variant-numeric: tabular-nums; margin-inline-end: auto; }
.experience_toolbar label { white-space: nowrap; align-items: center; gap: 10px; display: flex; }
.experience_toolbar select { width: auto; height: 44px; min-height: 44px; padding: 5px 10px; }
.experience_toolbar button, .experience_empty button { color: inherit; font: inherit; cursor: pointer; background: 0px 0px; border-width: 0px 0px 1px; border-top-style: initial; border-right-style: initial; border-left-style: initial; border-color: initial; border-image: initial; border-bottom-style: solid; min-height: 44px; }
.experience_group { margin-block: 14px 30px; }
.experience_group > header { align-items: baseline; gap: 12px; margin-bottom: 14px; display: flex; }
.experience_group h2 { margin: 0px; font-size: calc(var(--font-size-heading-4) * 20 / (1.125 * var(--root-px))); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.5; }
.experience_group > header > span { opacity: 0.65; font-variant-numeric: tabular-nums; font-size: calc(var(--font-size-caption) * 13 / (0.75 * var(--root-px))); }
.experience_grid { grid-template-columns: repeat(5, minmax(0px, 1fr)); gap: 14px; margin: 0px; padding: 0px; list-style: none; display: grid; }
.experience_card { border: 1px solid color-mix(in srgb,var(--text) 18%,transparent); border-radius: var(--radius-surface); background: var(--surface-soft); flex-direction: column; align-items: stretch; min-width: 0px; padding: 20px 16px 16px; transition: border-color 0.15s; display: flex; }
.experience_card:hover { border-color: color-mix(in srgb,var(--text) 50%,transparent); }
.experience_logo { justify-content: center; align-items: center; height: 58px; margin-bottom: 15px; display: flex; }
.experience_logo > a { justify-content: center; align-items: center; width: 100%; height: 100%; display: flex; }
.experience_logo img { object-fit: contain; width: 100%; max-width: 152px; height: 100%; max-height: 58px; }
.experience_card h3 { overflow-wrap: anywhere; margin: 0px 0px 5px; font-size: calc(var(--font-size-label) * 15 / (0.875 * var(--root-px))); font-weight: calc(var(--font-weight-body) + 100); line-height: 1.65; }
.experience_kind { opacity: 0.72; margin: 0px 0px 12px; font-size: calc(var(--font-size-caption) * 12 / (0.75 * var(--root-px))); }
.experience_relations { flex-wrap: wrap; gap: 5px; margin: auto 0px 0px; padding: 0px; list-style: none; display: flex; }
.experience_relations li { background: color-mix(in srgb,var(--text) 6%,transparent); border-radius: calc(var(--radius-surface) * 8 / 24); padding: 3px 6px; font-size: calc(var(--font-size-caption) * 12 / (0.75 * var(--root-px))); line-height: 1.7; }
.experience_sectorName { opacity: 0.7; margin: 8px 0px 0px; font-size: calc(var(--font-size-caption) * 12 / (0.75 * var(--root-px))); line-height: 1.6; }
.experience_empty { text-align: center; padding: 48px 10px; }
.experience_empty h2 { font-size: calc(var(--font-size-heading-3) * 22 / (1.375 * var(--root-px))); }
.experience_contact { color: var(--text); border-top: 1px solid color-mix(in srgb,var(--text) 22%,transparent); background: 0px 0px; justify-content: space-between; align-items: center; gap: 20px; margin-top: 40px; padding-top: 26px; display: flex; }
.experience_contact a { color: inherit; text-underline-offset: 6px; font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); }
.experience_page :is(a, button, input, select):focus-visible { outline: 2px solid var(--text); outline-offset: 4px; }
@media (min-width: 1400px){.experience_grid { grid-template-columns: repeat(6, minmax(0px, 1fr)); }}
@media (max-width: 950px){.experience_grid { grid-template-columns: repeat(4, minmax(0px, 1fr)); }
.experience_filters { grid-template-columns: 1fr 1fr; }}
@media (max-width: 650px){.experience_page.experience_page { padding: 24px 0px 80px; }
.experience_intro { padding-top: 10px; }
.experience_stats { gap: 12px; }
.experience_stats > div + div { padding-inline-start: 12px; }
.experience_stats dd { font-size: calc(var(--font-size-heading-2) * 29 / (1.75 * var(--root-px))); }
.experience_stats dd span { font-size: calc(var(--font-size-caption) * 12 / (0.75 * var(--root-px))); display: block; }
.experience_stats dt { font-size: calc(var(--font-size-caption) * 12 / (0.75 * var(--root-px))); line-height: 1.6; }
.experience_grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
.experience_card { padding: 16px 12px 14px; }
.experience_group h2 { font-size: calc(var(--font-size-body) * 18 / (var(--root-px))); }
.experience_filters { gap: 14px 10px; }
.experience_filters select, .experience_filters input { font-size: calc(var(--font-size-caption) * 13 / (0.75 * var(--root-px))); }
.experience_toolbar { gap: 12px; min-height: 76px; }
.experience_contact { flex-direction: column; align-items: flex-start; gap: 3px; }
.experience_explanation { font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); }
.experience_privacy { margin-bottom: 24px; }
.experience_logo { height: 52px; }
.experience_logo img { max-width: 130px; max-height: 52px; }}
@media (prefers-reduced-motion: reduce){.experience_card { transition: none; }}
.experience_results { min-block-size: 360px; }
.experience_groupHint { color: var(--text); margin: 0px 0px 18px; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); line-height: 1.8; }
@media (max-width: 650px){.experience_toolbar label { flex: 1 1 0%; justify-content: space-between; }
.experience_toolbar select { max-width: 65%; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); }
.experience_filters select, .experience_filters input { font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); }}
.event-attendance_attendance { margin-block: 20px; }
.event-attendance_counts { flex-wrap: wrap; gap: 16px 28px; margin: 0px; display: flex; }
.event-attendance_counts > div { min-width: 90px; }
.event-attendance_counts dt { color: var(--text-muted); margin-bottom: 6px; font-size: calc(var(--font-size-label) * 0.85 / 0.875); }
.event-attendance_counts dd { font-variant-numeric: tabular-nums; margin: 0px; font-size: calc(var(--font-size-heading-3) * 1.35 / 1.375); font-weight: max(var(--font-weight-body), calc(var(--font-weight-heading-3) - 100)); }
.event-attendance_counts .event-attendance_pending { font-size: calc(var(--font-size-label) * 0.9 / 0.875); font-weight: var(--font-weight-body); }
.event-attendance_full { color: var(--text-muted); margin-inline-start: 8px; font-size: calc(var(--font-size-caption) * 0.8 / 0.75); display: inline-block; }
.event-attendance_progress { background: var(--surface-soft); width: 100%; height: 4px; accent-color: var(--text); border: 0px; margin-block-start: 16px; display: block; }
.event-attendance_progress::-webkit-progress-bar { background: var(--surface-soft); }
.event-attendance_progress::-webkit-progress-value { background: var(--text); }
@keyframes whatsapp-float {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-6px); }
}
@keyframes whatsapp-ring {
  0% { opacity: 0.75; transform: scale(0.82); }
  75%, 100% { opacity: 0; transform: scale(1.22); }
}
@keyframes reveal {
  0% { opacity: 0; transform: translateY(-6px); }
  100% { opacity: 1; transform: translateY(0px); }
}
@keyframes _home-card-reveal_bic9z_1 {
  0% { opacity: 0; transform: translateY(8px); }
  100% { opacity: 1; transform: translateY(0px); }
}
@keyframes _landingCtaFloat_1yfio_1 {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-3px); }
}
@keyframes _logo-drift_in2qw_1 {
  100% { transform: translate(-50%); }
}
@keyframes _message-in_cltnn_1 {
  0% { opacity: 0; transform: translateY(5px); }
  100% { opacity: 1; transform: translateY(0px); }
}
/* QIWAM's own: the reader's name and consent, with the newsletter's sectors. */
.newsletter-form_subscriber { border-top: 1px solid var(--border); gap: 4px; padding: 8px 12px 12px; display: grid; }
.newsletter-form_subscriber label[for] { color: var(--text-secondary); cursor: default; min-height: 0px; padding: 4px 0px; }
.newsletter-form_subscriber input[name="name"] { font: inherit; border: 1px solid var(--border); background: var(--surface); width: 100%; height: auto; min-height: 44px; color: var(--text); box-sizing: border-box; border-radius: calc(var(--radius-input) * 10 / 14); padding: 10px 12px; font-size: var(--font-size-label); }
.newsletter-form_subscriber .newsletter-form_agree { align-items: flex-start; padding-top: 8px; line-height: 1.6; }
.newsletter-form_subscriber .newsletter-form_agree input { margin-top: 3px; }
@media (max-width: 650px){.newsletter-form_subscriber input[name="name"] { font-size: calc(var(--font-size-label) * 16 / (0.875 * var(--root-px))); }}
/* QIWAM's own: a page's compact footer (footer.strip), its strip of a knowledge group's entries moving in a loop above the credit. */
.site-footer_strip { --footer-strip-gap: 32px; border-bottom: 1px solid var(--border); align-items: center; gap: 16px; min-width: 0px; padding-bottom: 20px; display: flex; }
.site-footer_stripMark { color: var(--text); flex: 0 0 auto; align-items: center; min-height: 44px; font-weight: calc(var(--font-weight-body) + 300); text-decoration: none; display: inline-flex; }
.site-footer_stripMark img { object-fit: contain; width: auto; max-width: 112px; height: 28px; display: block; }
.site-footer_stripDivider { background: var(--border); flex: 0 0 1px; align-self: stretch; width: 1px; }
.site-footer_stripViewport { contain: layout paint; direction: ltr; flex: 1 1 auto; min-width: 0px; position: relative; overflow: hidden; }
.site-footer_stripTrack { width: max-content; animation: site-footer-strip-flow var(--footer-strip-duration) linear infinite; will-change: transform; display: flex; }
.site-footer_strip[data-flow="ltr"] .site-footer_stripTrack { animation-direction: reverse; }
.site-footer_strip:hover .site-footer_stripTrack, .site-footer_strip:focus-within .site-footer_stripTrack { animation-play-state: paused; }
.site-footer_stripList { gap: var(--footer-strip-gap); flex: 0 0 auto; margin: 0px; padding: 0px; padding-inline-end: var(--footer-strip-gap); list-style: none; display: flex; }
.site-footer_stripList li { white-space: nowrap; align-items: center; min-height: 44px; font-size: calc(var(--font-size-caption) * 14 / (0.75 * var(--root-px))); display: flex; }
.site-footer_stripList a { color: var(--text); text-underline-offset: 4px; }
.site-footer_stripMark:focus-visible, .site-footer_stripList a:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
@keyframes site-footer-strip-flow {
  100% { transform: translate(-50%); }
}
@media (prefers-reduced-motion: reduce){.site-footer_stripTrack { animation: none; will-change: auto; }
.site-footer_stripViewport { direction: inherit; overflow-x: auto; }
.site-footer_stripList[aria-hidden] { display: none; }}
@media (max-width: 650px){.site-footer_strip { display: none; }}
/* QIWAM's own: the way past the site's frame, first on every page, out of sight until it has focus (WCAG 2.4.1). */
.site-skip-link { z-index: 1000; color: var(--on-action); background: var(--action); border-radius: var(--radius-control); padding: 10px 16px; font-weight: calc(var(--font-weight-body) + 300); text-decoration: none; position: fixed; inset-block-start: 10px; inset-inline-start: 10px; transform: translateY(-200%); }
.site-skip-link:focus, .site-skip-link:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; transform: translateY(0px); }
/* QIWAM's own: a firm with no logo the site can show is named by its name where the logo would be. */
.brand-logo_name { color: var(--text); font-family: var(--font-brand); font-size: var(--font-size-heading-4); font-weight: var(--font-weight-heading-4); overflow-wrap: anywhere; text-wrap: balance; min-width: 0px; max-width: 100%; line-height: 1.3; display: block; }
/* QIWAM's own: what the stylesheet draws in the dark action's colour on a light surface takes a colour that reads there (WCAG 1.4.3, 1.4.11). */
:root[data-theme="light"] :is(.faq_sectionHeading, .faq_libraryHeading) .faq_eyebrow, :root[data-theme="light"] .faq_questionNumber { color: var(--faq-ink); }
/* QIWAM's own: the sections drawn on the light surface keep the page's own surface in the dark appearance, as their text does. */
:root[data-theme="dark"] :is(#experts, #alliances, #verification, #questions, #professional-notice) { background: var(--surface); }
/* QIWAM's own: a focus ring takes the focus colour of the surface it sits on (WCAG 1.4.11, 2.4.7): the theme's, which
   contrasts with the page's surfaces in each appearance, or a section's own where the stylesheet draws it on the other
   appearance's surface. */
:focus-visible { outline-color: var(--focus) !important; }
.invitation_hero, .documents_request, :root[data-theme="light"] .privacy_languages a[aria-current="page"] { --focus: var(--brand-mist); }
.legal-product-page_closing { --focus: var(--product-ink); }
:root[data-theme="dark"] :is(.faq_item[open], .faq_contact) { --focus: var(--faq-ink); }
/* QIWAM's own: text the stylesheet draws in one appearance's colour where the other's surface shows (WCAG 1.4.3). */
:root[data-theme="dark"] .legal-product-page_comparisonGroup th { color: var(--text); }
:root[data-theme="light"] :is(.landing_ratingSource, .landing_expertDetails a) { color: var(--lp-ink); }
.landing_specialistExpert .landing_expertDetails > small { color: var(--lp-muted); }
:root[data-theme="dark"] .landing_compactOutputList li:nth-child(2n) { background: var(--lp-surface); }

/* Related public content uses the same theme scale as its owning page. */
.site-related { max-width: 1200px; margin: 3rem auto; padding: 1.5rem; border-block-start: 1px solid var(--border); }
.site-related > h2 { font-size: var(--font-size-heading-2); font-weight: var(--font-weight-heading-2); margin-block-end: 1.5rem; }
.site-related_group h3 { font-size: var(--font-size-heading-3); font-weight: var(--font-weight-heading-3); margin-block-end: .75rem; }
.site-related_groups { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 1.5rem; }
.site-related_group ul { list-style: none; padding: 0; margin: 0; }
.site-related_group li { padding-block: .75rem; border-block-end: 1px solid var(--border); overflow-wrap: anywhere; }
.site-related_group a { color: var(--text); text-underline-offset: .2em; }
.site-related_group small { display: block; margin-block-start: .25rem; color: var(--text-secondary); }
.site-related_compact { padding: 1rem; margin-block: .5rem; font-size: var(--font-size-caption); overflow-wrap: anywhere; }
.site-related_compact ul { padding-inline-start: 1rem; }
.site-related_compact small { display: block; color: var(--text-secondary); }

/* Native picture sources preserve the layout box of their fallback image. */
.site-responsive-image { display: contents; }
/* The current native edition keeps the shared cover grammar when an older
   approval-pinned thumbnail no longer applies. Navigation metadata is enough. */
.qadha-bookshelf_template{aspect-ratio:17/24;height:100%;max-width:100%;container-type:inline-size;box-shadow:4px 4px 10px color-mix(in srgb,var(--text) 20%,transparent)}
.qadha-bookshelf_template .document-cover{height:100%;position:relative;display:flex;flex-direction:column;padding:8%;color:#faf9f4;background:var(--publication-heading);text-align:center;border:1px solid color-mix(in srgb,var(--publication-accent) 40%,transparent)}
.qadha-bookshelf_template .document-cover::before{content:'';position:absolute;inset:4%;border:1px solid var(--publication-accent);opacity:.25;pointer-events:none}
.qadha-bookshelf_template .cover-masthead{min-height:18%;display:flex;justify-content:center;align-items:center;margin-bottom:8%;font-size:var(--font-size-caption)}
.qadha-bookshelf_template .cover-firm-logo{display:block;width:70%;max-height:3rem;object-fit:contain;margin:auto}
.qadha-bookshelf_template [data-logo-monochrome] img{filter:brightness(0) invert(1)}
.qadha-bookshelf_template [data-logo-original]{background:#faf9f4;padding:4%}
.qadha-bookshelf_template .cover-field{flex:1;display:flex;flex-direction:column;align-items:center;min-height:0}
.qadha-bookshelf_template .cover-rule{width:14%;height:2px;background:var(--publication-accent);margin-bottom:8%}
.qadha-bookshelf_template .cover-kicker,.qadha-bookshelf_template .cover-subtitle{font-size:clamp(calc(var(--font-size-caption) * .6 / .75),5cqi,calc(var(--font-size-caption) * .8 / .75));line-height:1.7;margin:0}
.qadha-bookshelf_template h3{color:inherit;font-size:clamp(calc(var(--font-size-heading-3) * .9 / 1.375),8cqi,calc(var(--font-size-heading-3) * 1.4 / 1.375));font-weight:max(var(--font-weight-body),calc(var(--font-weight-heading-3) - 100));line-height:1.65;margin:10% 0;overflow-wrap:anywhere;text-wrap:balance}
.qadha-bookshelf_template .cover-colophon{margin-top:auto;align-self:stretch;border-top:1px solid color-mix(in srgb,var(--publication-accent) 45%,transparent);padding-top:7%;font-size:clamp(calc(var(--font-size-caption) * .5 / .75),4cqi,calc(var(--font-size-caption) * .65 / .75));line-height:1.6}
.qadha-bookshelf_template .cover-colophon span:last-child{display:none}
/* Home readability uses the existing Sanad typography contract.
   Declared theme sizes and browser zoom retain control of the scale. */
[data-site-home] { font-size: calc(var(--font-size-body) * 1.25); line-height: 1.8; }
[data-site-home] :is(.home-reference_firmIntroBody > div > p, .home-solution-card small, .home-reference_productDetails, .professional-card_copy p, .home-reference_experienceLayout header p) { font-size: inherit; line-height: 1.8; }
.home-site [data-site-home] :is(.section-head h2, .home-reference_experienceLayout header h2) { font-size: var(--font-size-heading-2) !important; font-weight: var(--font-weight-heading-2); line-height: 1.4; }
[data-site-home] :is(.home-solution-card h3, .professional-card_copy h3) { font-size: var(--font-size-heading-3); font-weight: var(--font-weight-heading-3); line-height: 1.5; }
[data-site-home] .programme-card_copy :is(h1, h2) { font-size: clamp(calc(var(--font-size-display) * 2 / 3), 4vw, calc(var(--font-size-display) * 3.5 / 3)); font-weight: var(--font-weight-heading-1); line-height: 1.4; overflow-wrap: anywhere; }
[data-site-home] .programme-card_copy p { font-size: calc(var(--font-size-body) * 1.25); line-height: 1.8; }
[data-site-home] :is(.home-reference_learnMore, .home-solution-discuss, .section-explore_row a, .home-hero_contact) { font-size: inherit; min-height: 44px; }
@media (min-width: 860px) {
  .home-site [data-site-home] :is(.section-head h2, .home-reference_experienceLayout header h2) { font-size: calc(var(--font-size-heading-2) * 2 / 1.75) !important; }
}
