/* Editorial system: fluid layouts replace the replica's fixed-height sections. */
:root { --editorial-space: clamp(56px, 7vw, 104px); }
/* Logo and navigation occupy opposite ends; the old header CTA is removed. */
.site-header__inner.container { width: min(94%, 1600px); max-width: 1600px; gap: clamp(24px, 4vw, 72px); }
@media (min-width: 1281px) {
    .site-header .primary-navigation { flex: 0 1 auto; margin-left: auto; }
    .site-header .site-header__actions { flex: 0 0 auto; margin-left: 0; }
}
/* Header owns its stacking context; mobile navigation never inherits translucency. */
.site-header { z-index: 10000; background: #fff; backdrop-filter: none; }
.primary-navigation { min-width: 0; }
.mobile-nav-footer { display: none; }
.brand-law-banner { background: #eef0f1 url('../../images/hero-pattern.png') center / cover no-repeat; text-align: center; padding: clamp(56px, 6vw, 90px) 0; }
.brand-law-banner .container { max-width: 880px; }
.brand-law-banner h2 { margin: 12px 0; font-size: clamp(2.6rem, 5vw, 4.5rem); font-weight: 400; line-height: 1.15; }
.brand-law-banner p { color: var(--blue); margin: 0 0 24px; }
.library-intro { padding: 56px 0 36px; }
.library-intro__grid { display: grid; grid-template-columns: .9fr 1.3fr; gap: 64px; }
.library-intro h2 { margin: 0; font-size: clamp(1.8rem, 3vw, 2.6rem); line-height: 1.2; text-align: left; }
.library-intro p { margin: 0 0 18px; color: var(--muted); }
.library-intro .v2-disclaimer { margin: 0; padding: 16px 20px; font-size: 13px; }
.library-categories { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.library-categories a { display: inline-flex; align-items: center; gap: 24px; padding: 10px 18px; border: 1px solid var(--line); border-radius: 3px; font-size: 14px; font-weight: 600; text-decoration: none; }
.library-categories a:hover { background: var(--ivory); border-color: var(--accent); }
.document-section { padding: 48px 0 64px; background: var(--ivory); scroll-margin-top: 100px; }
.document-section--alternate { background: #fff; }
.document-section__heading { display: flex; justify-content: space-between; align-items: end; gap: 32px; margin-bottom: 28px; }
.document-section__heading h2 { margin: 8px 0 0; font-size: clamp(1.8rem, 3vw, 2.5rem); text-align: left; }
.document-section__heading p { max-width: 320px; margin: 0; color: var(--muted); font-size: 14px; }
.document-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: start; }
.document-card { min-width: 0; background: #fff; border: 1px solid var(--line); border-radius: 5px; overflow: hidden; transition: border-color 160ms ease, box-shadow 160ms ease; }
.document-card:hover { border-color: var(--accent); box-shadow: 0 8px 24px rgba(17,42,62,.06); }
.document-card__preview { position: relative; display: flex; align-items: center; justify-content: center; height: 190px; padding: 16px; background: #f0f3f5; border-bottom: 1px solid var(--line); }
.document-card__preview img { width: 100%; height: 100%; object-fit: contain; display: block; }
.document-card__preview > span { position: absolute; right: 12px; bottom: 12px; padding: 4px 10px; border: 1px solid var(--line); border-radius: 3px; color: var(--blue); background: #fff; font-size: 12px; }
.document-card__body { padding: 22px; }
.document-card__body > span { color: var(--accent-dark); font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.document-card__body h3 { font-size: 20px; line-height: 1.3; margin: 8px 0 12px; text-align: left; }
.document-card__body p { margin: 0 0 18px; font-size: 14px; color: var(--muted); line-height: 1.6; }
.document-card__link { display: inline-block; padding-block: 8px; font-size: 14px; font-weight: 600; text-decoration: none; }
.document-card .v2-case-facts { grid-template-columns: 1fr 1fr; }
.document-view-open { overflow: hidden; }
.document-viewer { padding: 0; border: 1px solid var(--line); border-radius: 6px; width: min(1100px, calc(100vw - 32px)); max-width: none; max-height: calc(100dvh - 32px); color: var(--blue); background: #fff; }
.document-viewer::backdrop { background: rgba(8,25,38,.78); }
.document-viewer__toolbar { display: flex; align-items: center; gap: 20px; padding: 16px 20px; border-bottom: 1px solid var(--line); }
.document-viewer__toolbar h2 { font-size: 18px; margin: 0; margin-right: auto; line-height: 1.3; text-align: left; }
.document-viewer__toolbar a { font-size: 13px; white-space: nowrap; }
.document-viewer__toolbar button { flex: 0 0 44px; width: 44px; height: 44px; border: 1px solid var(--line); color: var(--blue); background: #fff; border-radius: 3px; cursor: pointer; font-size: 28px; }
.document-viewer__content { max-height: calc(100dvh - 126px); overflow: auto; padding: 20px; background: var(--spare); }
.document-viewer__content img { display: block; width: 100%; height: auto; }
@media (max-width: 1200px) {
    .site-header__inner { display: flex; gap: 16px; }
    .site-header .site-header__actions { display: flex; order: 2; margin-left: auto; }
    .site-header__actions .button--header { display: none; }
    .site-header .nav-toggle { display: block; order: 3; margin-left: 0; }
    .site-header__email { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 3px; }
    .site-header__email-icon { display: block; }
    .site-header__email-text { display: none; }
    .site-header .primary-navigation { position: absolute; z-index: 2; top: 100%; bottom: auto; left: 0; right: 0; width: 100%; margin: 0; padding: 24px max(5%, calc((100% - var(--container)) / 2)); display: none; transform: none; transition: none; background: #fff; box-shadow: 0 18px 28px rgba(17,42,62,.15); max-height: calc(100dvh - var(--header-bottom, 84px)); overflow-y: auto; overscroll-behavior: contain; }
    .site-header .primary-navigation.is-open { display: block; }
    .primary-navigation .menu { display: grid; grid-template-columns: 1fr; gap: 0; }
    .primary-navigation a { display: block; padding: 15px 0; border-bottom: 1px solid var(--line); font-size: 17px; }
    .primary-navigation a::after { display: none; }
    .primary-navigation .current-menu-item > a { color: var(--blue); box-shadow: inset 3px 0 var(--accent); padding-left: 14px; background: var(--ivory); }
    .mobile-nav-footer { display: block; padding-top: 24px; }
    .mobile-nav-footer p { color: var(--muted); margin: 0 0 12px; font-size: 14px; }
    .primary-navigation .mobile-nav-footer .button { display: inline-flex; color: #fff; padding: 12px 20px; font-size: 14px; }
    .document-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
    .brand-law-banner { background-size: auto 100%; background-position: left center; padding: 48px 0; }
    .brand-law-banner .container { background: rgba(238,240,241,.94); padding-block: 20px; border-radius: 3px; }
    .brand-law-banner .v2-eyebrow { font-size: 10px; }
    .brand-law-banner p { font-size: 15px; }
    .brand-law-banner .button { white-space: normal; }
    .library-intro__grid { grid-template-columns: 1fr; gap: 24px; }
    .library-intro { padding: 36px 0; }
    .document-section { padding: 36px 0 48px; }
    .document-section__heading { display: block; }
    .document-section__heading p { margin-top: 12px; }
    .document-grid { grid-template-columns: 1fr; gap: 20px; }
    .document-card__preview { height: 170px; }
    .document-viewer__toolbar { flex-wrap: wrap; gap: 8px; padding: 12px; }
    .document-viewer__toolbar h2 { flex: 1 1 calc(100% - 60px); font-size: 16px; }
    .document-viewer__toolbar a { order: 3; }
    .document-viewer__content { max-height: calc(100dvh - 170px); padding: 8px; }
}
/* Independent visual refinement, retaining the client's existing brand assets. */
.v2-hero__grid { min-height: 0; padding-block: clamp(60px, 6vw, 92px); gap: clamp(36px, 5vw, 76px); grid-template-columns: minmax(0,1.12fr) minmax(0,.88fr); }
.v2-hero h1 { font-size: clamp(2.6rem, 4.35vw, 4.5rem); line-height: 1.1; letter-spacing: -.035em; text-wrap: balance; }
.v4-hero-accent { color: #dcc39a; font-weight: 400; }
.v2-hero__copy > p { max-width: 560px; }
.v2-hero__micro span { margin-inline: 8px; color: #dcc39a; }
.v2-hero__media img { aspect-ratio: 1; border-radius: 3px; }
.v2-hero__media::before { width: 80%; height: 80%; top: -16px; right: -16px; opacity: .65; }
.v2-hero__media figcaption { left: -20px; right: 20px; bottom: -20px; border-radius: 3px; border-left: 2px solid var(--accent); padding: 24px; box-shadow: 0 16px 40px rgba(0,0,0,.12); }
.v2-section-heading h2, .v2-intro-grid h2, .v2-results-heading h2 { text-wrap: balance; line-height: 1.16; }
.v2-service-grid { gap: 24px; }
.v2-service-grid article { display: flex; flex-direction: column; min-height: 0; padding: 36px; border-radius: 3px; background: var(--ivory); border: 1px solid transparent; box-shadow: none; }
.v2-service-grid article:hover { transform: none; border-color: var(--line); }
.v2-service-icon { display: block; width: 40px; height: 40px; padding: 0; background: transparent; border: 0; margin-bottom: 28px; color: var(--accent-dark); }
.v2-service-icon svg { display: block; width: 34px; height: 34px; }
.v2-service-grid article > a { margin-top: auto; padding-top: 20px; font-size: 14px; }
.v2-stat-grid strong { font-variant-numeric: tabular-nums; letter-spacing: -.035em; }
.v2-stat-grid article { border-top: 1px solid rgba(17,42,62,.12); }
.v2-process__steps li { padding-block: 24px; }
.button { border-radius: 3px; }
.v2-form-card { border-radius: 6px; box-shadow: 0 16px 48px rgba(17,42,62,.07); }
.cookie-preferences .cookie-category { position: relative; display: grid; grid-template-columns: minmax(0,1fr) 38px; align-items: center; gap: 16px; padding: 12px 0; margin: 0; cursor: pointer; }
.cookie-category + .cookie-category { border-top: 1px solid var(--line); }
.cookie-preferences .cookie-category__copy strong { display: block; font-size: 13px; }
.cookie-category__copy small { display: block; color: var(--muted); font-size: 12px; margin-top: 4px; line-height: 1.45; }
.cookie-category input { position: absolute; right: 0; width: 38px; height: 24px; opacity: 0; cursor: pointer; }
.cookie-category__switch { position: relative; display: block; width: 38px; height: 22px; border-radius: 20px; border: 1px solid #86939f; background: #e6ebee; pointer-events: none; }
.cookie-category__switch::after { content: ''; position: absolute; left: 3px; top: 3px; width: 14px; height: 14px; background: #fff; border-radius: 50%; box-shadow: 0 1px 3px rgba(0,0,0,.12); }
.cookie-category input:checked + .cookie-category__switch { background: var(--blue); border-color: var(--blue); }
.cookie-category input:checked + .cookie-category__switch::after { left: 19px; }
/* Locked, enabled categories retain the same navy state as enabled toggles. */
.cookie-category input:disabled { cursor: not-allowed; }
.cookie-category:has(input:disabled) { cursor: default; }
.cookie-category input:focus-visible + .cookie-category__switch { outline: 3px solid var(--accent-dark); outline-offset: 3px; }
.cookie-banner { align-items: center; }
@media (max-width: 980px) {
    .v2-hero__grid { grid-template-columns: 1fr; }
    .v2-hero__media { max-width: 620px; }
    .v2-hero__media img { aspect-ratio: 1.45; }
    .v2-hero h1 { max-width: 750px; }
}
@media (max-width: 720px) {
    .v2-hero__grid { padding-block: 48px 64px; gap: 44px; }
    .v2-hero h1 { font-size: clamp(2.25rem, 9.8vw, 3.4rem); line-height: 1.12; }
    .v2-hero__micro { line-height: 1.65; }
    .v2-hero__media figcaption { left: 12px; right: 12px; bottom: -24px; padding: 18px; }
    .v2-service-grid article { padding: 28px; }
}
html { scroll-padding-top: 110px; }
/* Quiet credentials strip: no numbering, card outlines or implied steps. */
.v2-trust { background: #fff; }
.v2-trust__grid > div { min-height: 96px; padding: 24px 28px; border: 0; gap: 6px; }
.v2-trust__grid > div:first-child { border-left: 0; }
.v2-trust__grid > div + div { border-left: 1px solid var(--line); }
.v2-trust__grid strong { font-size: 15px; font-weight: 600; }
.v2-trust__grid small { font-size: 13px; }
/* Compact, non-modal consent panel with equally prominent primary choices. */
.cookie-banner { left: auto; right: 16px; bottom: 16px; width: calc(100% - 32px); max-width: 880px; margin: 0; padding: 20px 24px; grid-template-columns: minmax(0, 1fr) 280px; gap: 24px; background: #fff; border-radius: 8px; border-top: 2px solid var(--accent); box-shadow: 0 12px 44px rgba(17,42,62,.16); transform-origin: bottom right; }
.cookie-banner:not([hidden]) { animation: cookie-panel-enter 220ms cubic-bezier(.2,.7,.2,1) both; }
/* Animate only opacity/transform; hidden still removes the panel from tab order. */
@keyframes cookie-panel-enter {
    from { opacity: 0; transform: translateY(14px) scale(.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}
@media (prefers-reduced-motion: reduce) {
    .cookie-banner:not([hidden]) { animation: none; }
}
.cookie-banner[hidden], .cookie-banner [hidden] { display: none !important; }
.cookie-banner__copy strong { font-size: 16px; line-height: 1.35; }
.cookie-banner__copy p { font-size: 13px; line-height: 1.5; margin: 6px 0 0; }
.cookie-banner__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; align-content: center; align-items: stretch; }
.cookie-banner__actions .button { min-height: 42px; height: 100%; padding: 10px; color: #fff; background: var(--blue); border: 1px solid var(--blue); box-shadow: none; font-size: 13px; }
.cookie-banner__actions .button:hover { background: var(--blue-strong); border-color: var(--blue-strong); transform: none; }
.cookie-settings-link { grid-column: 1 / -1; border: 0; background: transparent; color: var(--muted); font-size: 12px; padding: 5px 8px; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.cookie-settings-link:hover { color: var(--blue); }
.cookie-banner__actions .cookie-save { grid-column: 1 / -1; }
.cookie-preferences { padding-top: 12px; margin-top: 12px; border-top: 1px solid var(--line); }
.cookie-preferences label { display: flex; align-items: center; gap: 8px; font-size: 13px; margin-bottom: 8px; }
@media (max-width: 980px) {
    .v2-trust__grid > div:nth-child(n+3) { border-top: 1px solid var(--line); }
    .v2-trust__grid > div:nth-child(odd) { border-left: 0; }
}
@media (max-width: 720px) {
    .v2-trust__grid { grid-template-columns: 1fr 1fr; }
    .v2-trust__grid > div { min-height: 100px; padding: 18px 16px; border-bottom: 0; }
    .v2-trust__grid strong { font-size: 14px; }
    .v2-trust__grid small { font-size: 12px; line-height: 1.4; }
    .cookie-banner { left: 12px; right: 12px; bottom: 12px; width: auto; padding: 16px 18px 10px; grid-template-columns: minmax(0, 1fr); gap: 12px; max-height: calc(100dvh - 24px); overflow-y: auto; }
    .cookie-banner__copy strong { font-size: 15px; }
    .cookie-banner__copy p { font-size: 12px; }
    .cookie-banner__actions { grid-template-columns: 1fr 1fr; }
}
.site-header__contact { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.site-header__email { color: var(--blue); font-size: 13px; font-weight: 600; line-height: 1.3; text-decoration: none; white-space: nowrap; }
.site-header__email-icon { display: none; }
@media (max-width: 980px) {
    .site-header .site-header__actions { display: flex; order: 2; margin-left: auto; }
    .site-header__actions .button--header { display: none; }
    .site-header .nav-toggle { order: 3; margin-left: 0; }
    .site-header__email { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 3px; }
    .site-header__email-icon { display: block; }
    .site-header__email-text { display: none; }
}
.v2-page-hero .v2-text-link { color: #e0c392; }
.button--primary { color: #fff; background: var(--blue); }
.button--primary:hover, .button--primary:focus-visible { color: #fff; background: var(--blue-strong); }
.v2-page-hero--compact { padding-block: clamp(56px, 6vw, 88px); }
.v2-page-hero--compact h1 { font-size: clamp(2.3rem, 4.5vw, 4rem); line-height: 1.12; }
.site-footer { color: #c4d0da; }
.site-footer .site-footer__grid p, .site-footer .social-links a { color: #c4d0da; }
.site-footer a, .site-footer__cookie-button { color: #c4d0da; }
.site-footer__cookie-button { text-decoration: none; }
.site-footer a:hover, .site-footer a:focus-visible,
.site-footer__cookie-button:hover, .site-footer__cookie-button:focus-visible { color: #e0c392; }
.site-footer__brand img { filter: brightness(0) invert(1); opacity: .9; }
.v3-about-hero__grid > *, .v3-editorial-grid > *, .v3-team-grid > * { min-width: 0; }
.v3-about-hero :is(h1,h2) { overflow-wrap: anywhere; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid var(--accent-dark); outline-offset: 5px; }
.v3-about-hero { background: var(--ivory); padding: var(--editorial-space) 0; }
.v3-about-hero__grid { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: clamp(32px, 6vw, 88px); }
.v3-about-hero :is(h1,h2) { margin: 20px 0 28px; font-size: clamp(2.5rem, 4.1vw, 4.2rem); line-height: 1.08; max-width: 720px; }
.v3-about-hero :is(h1,h2) em { font-style: normal; color: var(--accent-dark); }
.v3-about-hero p { max-width: 620px; color: var(--muted); margin: 0 0 30px; font-size: 19px; }
.v3-about-hero figure { position: relative; margin: 0; }
.v3-about-hero img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 4.5; object-fit: cover; border-radius: 3px; }
.v3-about-hero figcaption { position: absolute; bottom: 24px; left: -24px; max-width: calc(100% - 12px); padding: 20px 26px; background: var(--blue); color: #fff; box-shadow: var(--shadow); }
.v3-editorial-section, .v3-team-section { padding: var(--editorial-space) 0; }
.v3-editorial-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(32px, 8vw, 120px); }
.v3-editorial-grid h2, .v3-section-heading h2 { font-size: clamp(2rem, 3vw, 3rem); line-height: 1.18; margin: 18px 0 24px; }
.v3-prose p { margin: 0 0 24px; color: var(--muted); }
.v3-prose strong { color: var(--blue); }
.v3-team-section { background: var(--ivory); }
.v3-section-heading { max-width: 780px; margin-bottom: 48px; }
.v3-section-heading > p { color: var(--muted); }
.v3-team-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.v3-person { display: flex; flex-direction: column; align-items: flex-start; padding: clamp(28px, 4vw, 52px); background: #fff; border: 1px solid var(--line); border-top: 3px solid var(--accent); }
.v3-person__monogram { display: grid; place-items: center; width: 70px; height: 70px; border: 1px solid var(--line); background: var(--ivory); color: var(--blue); font-size: 25px; margin-bottom: 28px; }
.v3-person h3 { font-size: clamp(1.7rem, 2.5vw, 2.4rem); margin: 10px 0 24px; line-height: 1.2; }
.v3-person ul { color: var(--muted); padding-left: 20px; margin: 0 0 32px; }
.v3-person li { padding-left: 6px; margin-bottom: 12px; }
.v3-person li::marker { color: var(--accent-dark); }
.v3-person__contact { display: flex; flex-direction: column; gap: 8px; margin-top: auto; padding-top: 24px; border-top: 1px solid var(--line); width: 100%; }
.v3-person__contact a { overflow-wrap: anywhere; text-decoration: none; color: var(--blue); font-weight: 600; }
.v3-consultation { background: var(--blue); padding: 64px 0; }
.v3-consultation .container { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.v3-consultation h2 { color: #fff; font-size: clamp(2rem, 3vw, 3rem); margin: 12px 0 20px; line-height: 1.2; }
.v3-consultation p { color: #d5dee6; max-width: 700px; margin: 0; }
.v3-consultation .button { flex-shrink: 0; }

/* Shared internal-page rhythm; decorative legacy layers are not part of v2.1. */
body:not(.home) .cross-divider, body:not(.home) .replica-spacer { display: none; }
body:not(.home) .ruled-title { border: 0; padding: 0; margin: 0 0 28px; text-align: left; font-size: clamp(2rem, 3vw, 3rem); line-height: 1.2; font-weight: 600; }
body:not(.home) .ruled-title::before, body:not(.home) .ruled-title::after { display: none; }
body:not(.home) .replica-copy { color: var(--muted); line-height: 1.8; }
body:not(.home) .replica-copy--center { text-align: left; }
body:not(.home) .replica-copy p { margin: 0 0 22px; text-align: left; }
body:not(.home) .replica-copy li { text-align: left; }
body:not(.home) .replica-copy strong { color: var(--blue); }
body:not(.home) .replica-interest-chance,
body:not(.home) .replica-interest-law,
body:not(.home) .replica-vulnerable,
body:not(.home) .replica-interest-feature,
body:not(.home) .replica-library-intro,
body:not(.home) .replica-legal { height: auto; min-height: 0; padding: var(--editorial-space) 0; }
body:not(.home) .replica-interest-chance__grid,
body:not(.home) .replica-interest-feature__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 5vw, 80px); align-items: center; padding-top: 0; }
body:not(.home) .replica-interest-chance__copy,
body:not(.home) .replica-interest-chance__media,
body:not(.home) .replica-interest-feature .replica-copy,
body:not(.home) .replica-interest-feature .replica-natural-image { margin: 0; width: auto; }
body:not(.home) .replica-natural-image img { width: 100%; height: auto; max-height: 520px; object-fit: cover; border-radius: 3px; }
body:not(.home) .replica-interest-law { background: var(--ivory); }
body:not(.home) .replica-interest-law .container,
body:not(.home) .replica-vulnerable .container,
body:not(.home) .replica-legal .container,
body:not(.home) .replica-library-intro .container { padding-top: 0; }
body:not(.home) .replica-legal .container { max-width: 900px; }
/* Interest uses the same outer grid as the official update above it.
   Keep readable text measures inside that grid rather than centring a narrow container. */
body:not(.home) .replica-interest-law .container,
body:not(.home) .replica-vulnerable .container { width: min(90%, var(--container)); max-width: var(--container); text-align: left; }
body:not(.home) .replica-interest-law p,
body:not(.home) .replica-interest-law .replica-list,
body:not(.home) .replica-vulnerable p,
body:not(.home) .replica-vulnerable .replica-list { max-width: 90ch; margin-inline: 0; }
body:not(.home) .replica-interest-law p,
body:not(.home) .replica-interest-law li,
body:not(.home) .replica-vulnerable p,
body:not(.home) .replica-vulnerable li { color: var(--muted); text-align: left; line-height: 1.8; }
body:not(.home) .replica-interest-law h3,
body:not(.home) .replica-vulnerable h3 { color: var(--blue); }
@media (min-width: 721px) and (max-width: 820px) {
    body:not(.home) .replica-interest-law .container,
    body:not(.home) .replica-vulnerable .container { width: min(calc(100% - 2rem), var(--container)); }
}
body:not(.home) .replica-law-title { display: block; border: 0; padding: 0 0 32px; margin: 0 0 36px; text-align: left; border-bottom: 1px solid var(--line); font-size: clamp(1.8rem, 3vw, 2.7rem); line-height: 1.3; }
body:not(.home) .replica-law-title strong { display: block; font-size: 18px; margin-top: 12px; color: var(--accent-dark); }
body:not(.home) .replica-law-title::before, body:not(.home) .replica-law-title::after { display: none; }
body:not(.home) .replica-interest-law h3,
body:not(.home) .replica-vulnerable h3,
body:not(.home) .replica-legal h2 { font-size: clamp(1.4rem, 2vw, 1.8rem); line-height: 1.35; text-align: left; margin: 36px 0 18px; font-weight: 600; }
body:not(.home) .replica-list { padding-left: 24px; margin: 20px 0 28px; text-align: left; }
body:not(.home) .replica-list li { margin: 0 0 14px; }
body:not(.home) .replica-list li::marker { color: var(--accent-dark); font-weight: 600; }
body:not(.home) .replica-interest-feature--release { background: var(--ivory); }
body:not(.home) .replica-legal h1 { font-size: clamp(2.2rem, 4vw, 3.5rem); line-height: 1.15; margin: 18px 0 40px; }
.page-title--plain { height: auto; padding: 64px 0; background: var(--ivory); }
.page-title--plain h1 { font-size: clamp(2.2rem, 4vw, 3.5rem); }
.prose { max-width: 900px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }
@media (max-width: 900px) {
    .v3-about-hero__grid, .v3-editorial-grid { grid-template-columns: 1fr; }
    .v3-about-hero figure { max-width: 650px; }
    .v3-about-hero img { aspect-ratio: 4 / 3; }
    .v3-about-hero figcaption { left: 16px; bottom: 16px; }
    .v3-consultation .container { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 720px) {
    .v3-team-grid { grid-template-columns: 1fr; }
    .v3-about-hero p { font-size: 17px; }
    .v3-about-hero .button { white-space: normal; }
    .v3-about-hero figcaption { padding: 12px 16px; font-size: 14px; }
    body:not(.home) .replica-interest-chance__grid,
    body:not(.home) .replica-interest-feature__grid { grid-template-columns: 1fr; }
    body:not(.home) .replica-interest-feature__grid--reverse .replica-copy,
    body:not(.home) .replica-interest-feature__grid--reverse .replica-natural-image { grid-column: auto; grid-row: auto; }
    body:not(.home) .replica-natural-image img { max-height: 360px; }
}
/* Persistent preference access; dismissing the panel never implies consent. */
.cookie-banner { padding-top: 40px; }
/* The original branded image is the hero background, not a second section. */
.v5-brand-hero { color: var(--blue); background: #eef0f1 url('../../images/hero-pattern.png') center / 100% auto no-repeat; }
.v5-brand-hero::before { display: none; }
.v5-brand-hero .v2-hero__grid { display: block; padding-block: clamp(64px, 6vw, 96px); min-height: 0; }
.v5-brand-hero .v2-hero__copy { max-width: 820px; margin-inline: auto; text-align: center; }
.v5-brand-hero h1 { color: var(--blue); font-size: clamp(2.4rem, 4.2vw, 4rem); line-height: 1.12; margin: 12px 0 24px; }
.v5-brand-hero .v4-hero-accent { color: #365470; }
.v5-brand-hero .v2-eyebrow { color: #6b532e; }
.v5-brand-hero .v2-hero__copy > p { color: #354b5e; max-width: 680px; margin-inline: auto; }
.v5-brand-hero .v2-hero__actions { justify-content: center; }
.v5-brand-hero .button--light { color: var(--blue); border-color: #8b9aa6; background: rgba(255,255,255,.7); }
.v5-brand-hero .button--light:hover { color: #fff; background: var(--blue); border-color: var(--blue); }
.v5-brand-hero .v2-hero__micro, .v5-brand-hero .v2-hero__micro span { color: #354b5e; }
.document-card[hidden], .document-pagination[hidden] { display: none; }
.document-card { border-radius: 8px; }
.document-card:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(17,42,62,.08); }
.document-card { transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease; }
.document-card__preview > span { border-radius: 5px; }
.document-pagination { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 18px; padding-top: 28px; }
.document-pagination span { color: var(--muted); font-size: 13px; font-variant-numeric: tabular-nums; }
.document-pagination button { min-height: 44px; padding: 10px 16px; border: 1px solid var(--line); border-radius: 6px; color: var(--blue); background: #fff; font-size: 13px; font-weight: 600; cursor: pointer; transition: background 160ms ease, border-color 160ms ease, color 160ms ease; }
.document-pagination button:hover:not(:disabled) { background: var(--blue); color: #fff; border-color: var(--blue); }
.document-pagination button:disabled { opacity: .45; cursor: not-allowed; }
.document-pagination button.document-pagination__playback { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; flex: 0 0 44px; border-radius: 6px; }
.document-pagination__playback svg { display: block; }
.document-viewer { border-radius: 10px; box-shadow: 0 28px 80px rgba(0,0,0,.25); }
.document-viewer__toolbar button { display: grid; place-items: center; border-radius: 7px; transition: background 160ms ease, color 160ms ease, border-color 160ms ease; }
.document-viewer__toolbar button:hover { background: var(--blue); color: #fff; border-color: var(--blue); }
@media (max-width: 900px) {
    .v5-brand-hero { background-position: left center; background-size: auto 100%; }
    .v5-brand-hero .v2-hero__copy { padding: 28px; background: rgba(238,240,241,.92); border-radius: 8px; }
    .v5-brand-hero .v2-hero__grid { padding-block: 44px; }
}
@media (max-width: 720px) {
    .v5-brand-hero .v2-hero__copy { padding: 24px 14px; }
    .v5-brand-hero .v2-eyebrow { font-size: 10px; }
    .v5-brand-hero h1 { font-size: clamp(2rem, 8.2vw, 3.2rem); }
    .v5-brand-hero .v2-hero__actions .button { width: 100%; white-space: normal; }
    .document-pagination { justify-content: space-between; gap: 8px; }
    .document-pagination button { padding-inline: 12px; }
}
.cookie-close { position: absolute; top: 6px; right: 8px; display: grid; place-items: center; width: 32px; height: 32px; padding: 0; border: 0; border-radius: 3px; color: var(--blue); background: transparent; font-size: 26px; line-height: 1; cursor: pointer; }
.cookie-close:hover { background: var(--spare); }
.cookie-launcher { position: fixed; bottom: 16px; right: 16px; z-index: 10001; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 10px 14px; color: var(--blue); background: #fff; border: 1px solid var(--line); border-radius: 5px; box-shadow: 0 4px 18px rgba(17,42,62,.12); font-size: 12px; font-weight: 600; cursor: pointer; }
.cookie-launcher[hidden] { display: none; }
.cookie-launcher:hover { border-color: var(--accent); }
.cookie-launcher { width: 104px; padding-inline: 12px; overflow: hidden; transition: width 240ms ease, border-color 160ms ease; }
.cookie-launcher svg { flex: 0 0 18px; }
.cookie-launcher span { max-width: 64px; opacity: 1; transition: max-width 240ms ease, opacity 160ms ease; white-space: nowrap; }
.cookie-launcher.is-collapsed:not(:hover):not(:focus-visible) { width: 44px; gap: 0; }
.cookie-launcher.is-collapsed:not(:hover):not(:focus-visible) span { max-width: 0; opacity: 0; }
.cookie-launcher:focus-visible { outline: 2px solid var(--accent-dark); outline-offset: 3px; }
.cookie-launcher.is-nudging { animation: eex-cookie-nudge 600ms ease-in-out; }
@keyframes eex-cookie-nudge { 0%,100% { transform: rotate(0); } 25% { transform: rotate(-5deg); } 65% { transform: rotate(4deg); } }
@media (prefers-reduced-motion: reduce) { .cookie-launcher,.cookie-launcher span { transition: none; } .cookie-launcher.is-nudging { animation: none; } }
.cookie-banner .cookie-storage-error { color: #943b32; }
/* Original category illustrations, not government logos or cropped documents. */
.v2-results-heading { margin-bottom: 32px; }
.v2-results-heading h2 { font-size: clamp(2rem, 3vw, 3rem); line-height: 1.15; }
.v2-result-preview > .authority-card { display: flex; flex-direction: column; min-height: 320px; padding: 32px; border: 1px solid var(--line); border-radius: 5px; box-shadow: none; background: #fff; transition: border-color 160ms ease; }
.v2-result-preview > .authority-card:hover { border-color: var(--accent); }
.authority-card__mark { display: grid; place-items: center; width: 64px; height: 64px; margin-bottom: 26px; border: 1px solid var(--line); border-radius: 4px; color: var(--blue); background: var(--spare); }
.authority-card__mark svg { width: 44px; height: 44px; }
.v2-result-preview > .authority-card > .authority-card__copy { position: static; display: flex; flex: 1; gap: 8px; padding: 0; background: transparent; border-radius: 0; }
.authority-card__copy p { margin: 0 0 18px; color: var(--muted); font-size: 15px; line-height: 1.65; }
.v2-result-preview .authority-card__copy strong { font-size: 28px; line-height: 1.2; }
.v2-result-preview .authority-card__copy em { display: flex; justify-content: space-between; gap: 16px; margin-top: auto; padding-top: 18px; border-top: 1px solid var(--line); color: var(--blue); font-size: 14px; font-weight: 600; }
.authority-card__copy b { font-size: 18px; font-weight: 400; }
.v2-result-preview__cta { border-radius: 5px; min-height: 320px; }
@media (max-width: 720px) {
    .v2-result-preview > .authority-card { min-height: 0; padding: 26px; }
    .authority-card__mark { margin-bottom: 20px; width: 56px; height: 56px; }
    .v2-result-preview__cta { min-height: 0; padding: 26px; }
    .cookie-banner { padding-top: 38px; }
    .cookie-launcher { bottom: 12px; right: 12px; }
}
/* Preference centre: fixed header/actions, independently scrollable explanations. */
/* Keep the current-law notice and guide in one readable editorial rhythm. */
.v2-current-note { padding-block: 48px; }
.v2-current-note__grid { gap: clamp(28px,5vw,64px); }
.v2-current-note h2 { font-size: clamp(28px,3vw,42px); line-height: 1.15; margin: 12px 0 0; }
body:not(.home) .v2-current-note + .replica-interest-law { padding-top: 28px; }
body:not(.home) .replica-law-title { height: auto; min-height: 0; margin-bottom: 24px; padding-bottom: 24px; }
body:not(.home) .replica-interest-law .replica-law-title + h3 { margin-top: 0; }
.v2-contact-aside { padding: 28px; border: 1px solid var(--line); border-radius: 12px; background: var(--ivory); }
.v2-contact-aside h2 { font-size: clamp(26px,2.4vw,34px); line-height: 1.2; margin-bottom: 24px; }
@media(max-width:720px) { .v2-current-note { padding-block: 32px; } .v2-contact-aside { padding: 22px; } }
.cookie-banner { z-index: 10002; display: flex; flex-direction: column; align-items: stretch; width: min(520px, calc(100% - 32px)); max-width: 520px; max-height: calc(100dvh - 32px); padding: 0; gap: 0; border: 1px solid var(--line); border-top: 2px solid var(--accent); border-radius: 12px; overflow: hidden; box-shadow: 0 20px 64px rgba(17,42,62,.19); }
.cookie-panel-header { display: grid; grid-template-columns: 42px minmax(0,1fr) 40px; align-items: center; gap: 12px; flex-shrink: 0; padding: 22px 24px 18px; border-bottom: 1px solid var(--line); background: #fff; }
.cookie-panel-icon { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid #e9e1d4; border-radius: 8px; color: #795b2b; background: var(--ivory); }
.cookie-panel-kicker { display: block; margin-bottom: 5px; color: #795b2b; font-size: 10px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.cookie-panel-header h2 { margin: 0; color: var(--blue); font-size: 20px; font-weight: 600; line-height: 1.25; letter-spacing: -.02em; text-align: left; }
.cookie-panel-header .cookie-close { position: static; display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 7px; color: var(--blue); background: #fff; transition: color 160ms ease, background 160ms ease; }
.cookie-panel-header .cookie-close:hover { color: #fff; background: var(--blue); }
.cookie-banner__copy { flex: 1 1 auto; min-height: 0; padding: 20px 24px; overflow-y: auto; overscroll-behavior: contain; }
.cookie-banner__copy .cookie-panel-intro { margin: 0; font-size: 13px; line-height: 1.7; color: #42576a; }
.cookie-banner .cookie-settings-link { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 44px; margin-top: 16px; padding: 11px 14px; border: 1px solid var(--line); border-radius: 6px; color: var(--blue); background: #fff; text-decoration: none; font-size: 13px; font-weight: 600; text-align: left; }
.cookie-settings-link svg { flex-shrink: 0; transition: transform 160ms ease; }
.cookie-settings-link[aria-expanded="true"] svg { transform: rotate(180deg); }
.cookie-banner .cookie-settings-link:hover { background: var(--ivory); border-color: var(--accent); }
.cookie-banner .cookie-preferences { padding-top: 12px; margin-top: 0; border: 0; }
.cookie-banner .cookie-preferences .cookie-category { display: grid; grid-template-columns: minmax(0,1fr) 80px; align-items: start; gap: 12px; margin: 0 0 10px; padding: 14px; border: 1px solid var(--line); border-radius: 7px; background: #f8f9fa; cursor: default; }
.cookie-category-details { min-width: 0; }
.cookie-category-details summary { display: flex; align-items: center; gap: 10px; min-height: 48px; list-style: none; cursor: pointer; }
.cookie-category-details summary::-webkit-details-marker { display: none; }
.cookie-category-details summary > span { flex: 1; }
.cookie-category-details summary svg { flex-shrink: 0; transition: transform 160ms ease; }
.cookie-category-details[open] summary svg { transform: rotate(180deg); }
.cookie-category-details summary strong { display: block; font-size: 14px; font-weight: 600; color: var(--blue); line-height: 1.3; }
.cookie-category-details summary small { display: block; margin-top: 4px; color: #607080; font-size: 11px; line-height: 1.4; }
.cookie-banner__copy .cookie-category-details p { margin: 12px 0 0; font-size: 12px; color: #42576a; line-height: 1.7; }
.cookie-banner .cookie-toggle-control { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 7px; width: 80px; min-height: 48px; padding: 0; margin: 0; cursor: pointer; }
.cookie-banner .cookie-toggle-control input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.cookie-banner .cookie-toggle-control input:disabled { cursor: not-allowed; }
.cookie-toggle-state { color: #607080; font-size: 10px; font-weight: 600; line-height: 1.25; }
.cookie-toggle-control input:checked ~ .cookie-toggle-state { color: var(--blue); }
.cookie-banner__copy .cookie-panel-note { padding-top: 14px; margin: 12px 0 0; border-top: 1px solid var(--line); color: #607080; font-size: 11px; line-height: 1.6; }
.cookie-panel-footer { flex-shrink: 0; padding: 18px 24px 14px; border-top: 1px solid var(--line); background: #fff; }
.cookie-banner__actions { gap: 10px; }
.cookie-banner__actions .button { min-height: 46px; height: auto; padding: 12px 10px; border-radius: 6px; font-size: 12px; line-height: 1.3; }
.cookie-banner__actions .cookie-save { color: var(--blue); background: #fff; border-color: #718393; }
.cookie-banner__actions .cookie-save:hover { color: #fff; background: var(--blue); border-color: var(--blue); }
.cookie-banner .cookie-panel-close-note { margin: 12px 0 4px; color: #607080; font-size: 10px; text-align: center; line-height: 1.5; }
.cookie-policy-links { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 4px 10px; }
.cookie-policy-links a { display: inline-flex; align-items: center; min-height: 30px; color: #42576a; font-size: 11px; text-decoration: underline; text-underline-offset: 3px; }
.cookie-policy-links a:hover { color: var(--blue); }
/* Interest guide: one grid, restrained separators, readable copy, no fixed heights. */
.eex-guide-update .v2-current-note__grid { padding: clamp(24px,4vw,48px); background: #fff; border: 1px solid var(--line); border-radius: 8px; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); }
.eex-guide-update .v2-current-note__grid > * { min-width: 0; }
.eex-guide-update h2 { font-size: clamp(26px,2.4vw,36px); }
.eex-guide-update p { font-size: 17px; overflow-wrap: anywhere; }
body:not(.home) .eex-guide-article { padding-block: clamp(40px,5vw,72px); }
body:not(.home) .eex-guide-article .eex-guide-title { margin: 0 0 28px; padding: 0; border: 0; height: auto; min-height: 0; font-size: clamp(30px,3vw,42px); line-height: 1.2; text-align: left; }
.eex-guide-title strong { display: block; margin-top: 12px; font-size: 15px; font-weight: 400; color: var(--accent-dark); letter-spacing: 0; }
.eex-guide-title::before,.eex-guide-title::after { display: none; }
.eex-guide-row { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(28px,5vw,64px); border-top: 1px solid var(--line); padding-block: 32px; }
body:not(.home) .eex-guide-row h3 { margin: 0; font-size: clamp(21px,1.9vw,27px); line-height: 1.35; font-weight: 600; max-width: 28ch; }
.eex-guide-row__body { min-width: 0; }
body:not(.home) .eex-guide-article .eex-guide-row__body p { margin: 0 0 18px; }
body:not(.home) .eex-guide-article .eex-guide-row__body > :last-child { margin-bottom: 0; }
body:not(.home) .eex-guide-article p,body:not(.home) .eex-guide-article li { font-size: 17px; line-height: 1.8; overflow-wrap: anywhere; }
body:not(.home) .eex-guide-article .replica-list { padding-left: 20px; margin: 16px 0 20px; }
body:not(.home) .eex-guide-article .replica-list li { margin-bottom: 16px; }
body:not(.home) .eex-guide-article > .container > p { max-width: 78ch; margin-bottom: 28px; }
body:not(.home) .eex-guide-service { padding-block: clamp(40px,5vw,72px); border-top: 1px solid var(--line); }
body:not(.home) .eex-guide-service .ruled-title { height: auto; margin: 0 0 24px; padding: 0; font-size: clamp(28px,2.7vw,38px); line-height: 1.2; }
.eex-guide-service .ruled-title::before,.eex-guide-service .ruled-title::after { display: none; }
body:not(.home) .eex-guide-service .replica-natural-image img { aspect-ratio: 4/3; max-height: 360px; object-fit: cover; border-radius: 8px; }
.eex-guide-next { padding-block: clamp(36px,5vw,64px); background: #fff; border-top: 1px solid var(--line); }
.eex-guide-next .container { display: flex; gap: 32px; align-items: center; justify-content: space-between; }
.eex-guide-next h2 { margin: 12px 0; max-width: 30ch; font-size: clamp(26px,2.7vw,36px); line-height: 1.2; }
.eex-guide-next p { margin: 0; color: var(--muted); max-width: 65ch; }
.eex-guide-next .button { flex-shrink: 0; }
@media(max-width:980px) {
    .eex-guide-update .v2-current-note__grid,.eex-guide-row { grid-template-columns: minmax(0,1fr); gap: 20px; }
    body:not(.home) .eex-guide-row h3 { max-width: none; }
    .eex-guide-next .container { flex-direction: column; align-items: flex-start; }
}
@media(max-width:720px) {
    .eex-guide-update .v2-current-note__grid { padding: 22px; }
    .eex-guide-row { padding-block: 24px; gap: 16px; }
    .eex-guide-next .button { white-space: normal; width: 100%; }
}
.cookie-policy-links > span { color: #607080; font-size: 11px; }
/* Process rail: decorative connectors, not extra controls or automatic animation. */
.v2-process__steps li { position: relative; grid-template-columns: 48px minmax(0,1fr); gap: 24px; padding: 22px 0 34px; }
.v2-process__steps li + li { padding-top: 22px; border-top: 0; }
.v2-process__steps > li > span { position: relative; z-index: 1; display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid rgba(224,195,146,.45); border-radius: 12px; background: var(--blue); color: #e0c392; font-size: 13px; }
.v2-process__steps li:not(:last-child)::before { content: ''; position: absolute; left: 21px; top: 66px; bottom: -22px; width: 1px; background: linear-gradient(rgba(224,195,146,.65),rgba(224,195,146,.2)); }
.v2-process__steps li:not(:last-child)::after { content: ''; position: absolute; left: 18px; bottom: 4px; width: 7px; height: 7px; border-right: 1px solid #e0c392; border-bottom: 1px solid #e0c392; transform: rotate(45deg); }
.v2-process__steps li > div { min-width: 0; padding: 6px 0 20px; border-bottom: 1px solid rgba(255,255,255,.12); }
.v2-process__steps li:last-child > div { border-bottom: 0; }
.v2-process__steps strong { line-height: 1.3; }
.v2-process__steps p { color: #c4d0da; line-height: 1.7; }
/* Linked homepage previews: restrained elevation and a clear keyboard state. */
.v2-result-preview > .authority-card { border-radius: 12px; transition: border-color 200ms ease,box-shadow 200ms ease,transform 200ms ease; }
.authority-card__mark { border-radius: 10px; transition: background 200ms ease,border-color 200ms ease; }
.v2-result-preview .authority-card__copy b { transition: transform 200ms ease; }
.v2-result-preview > .authority-card:focus-visible { outline: 2px solid var(--blue); outline-offset: 5px; border-color: var(--accent); }
/* People cards: a quiet identity panel; only contact links are interactive. */
.v3-person { position: relative; overflow: hidden; border-top-width: 1px; border-radius: 16px; background: linear-gradient(150deg,var(--ivory),#fff 38%); box-shadow: 0 8px 28px rgba(17,42,62,.04); transition: border-color 220ms ease,box-shadow 220ms ease; }
.v3-person::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg,var(--accent),rgba(195,164,109,.12)); }
.v3-person__monogram { width: 76px; height: 76px; border-radius: 16px; border-color: rgba(195,164,109,.45); color: #fff; background: var(--blue); box-shadow: 0 6px 16px rgba(17,42,62,.1); font-size: 24px; }
.v3-person h3 { letter-spacing: -.025em; }
.v3-person .v2-eyebrow { font-size: 11px; line-height: 1.6; }
.v3-person ul { line-height: 1.75; }
.v3-person__contact { gap: 10px; }
.v3-person__contact a { width: fit-content; min-height: 32px; display: inline-flex; align-items: center; padding-block: 4px; text-underline-offset: 5px; }
.v3-person__contact a:hover { text-decoration: underline; }
.v3-person__contact a:focus-visible { outline: 2px solid var(--blue); outline-offset: 4px; border-radius: 3px; }
.v3-person:focus-within { border-color: var(--accent); box-shadow: 0 12px 32px rgba(17,42,62,.09); }
/* Library framing only: no document-card, viewer or pagination selectors changed. */
.document-section { padding-block: clamp(44px,6vw,80px); background: linear-gradient(180deg,var(--ivory),#faf9f7); }
.document-section--alternate { background: #fff; border-top: 1px solid var(--line); }
.document-section__heading { position: relative; display: flex; flex-direction: column; align-items: flex-start; padding: clamp(22px,3vw,36px); margin-bottom: 32px; border: 1px solid var(--line); border-radius: 12px; background: #fff; gap: 14px; }
.document-section__heading::before { content: ''; position: absolute; top: 24px; bottom: 24px; left: 0; width: 3px; background: var(--accent); border-radius: 2px; }
.document-section--alternate .document-section__heading { background: var(--ivory); }
.document-section__heading h2 { font-size: clamp(28px,2.7vw,38px); line-height: 1.2; letter-spacing: -.025em; }
.document-section__heading p { max-width: 70ch; margin: 0; padding: 0; border: 0; line-height: 1.75; }
@media (hover:hover) and (pointer:fine) {
    .v2-result-preview > .authority-card:hover { transform: translateY(-4px); border-color: var(--accent); box-shadow: 0 16px 36px rgba(17,42,62,.1); }
    .authority-card:hover .authority-card__mark { background: var(--ivory); border-color: var(--accent); }
    .v2-result-preview > .authority-card:hover .authority-card__copy b { transform: translate(3px,-3px); }
    .v3-person:hover { border-color: var(--accent); box-shadow: 0 16px 40px rgba(17,42,62,.09); }
}
@media (max-width:720px) {
    .v2-process__steps li { gap: 16px; grid-template-columns: 44px minmax(0,1fr); }
    .v3-person { padding: 28px 24px; border-radius: 12px; }
    .v3-person__monogram { width: 64px; height: 64px; margin-bottom: 22px; border-radius: 12px; }
    .document-section__heading { display: block; padding: 24px; }
    .document-section__heading p { margin-top: 14px; padding: 0; border: 0; max-width: none; }
}
@media (prefers-reduced-motion:reduce) {
    .v2-result-preview > .authority-card,.authority-card__mark,.v2-result-preview .authority-card__copy b,.v3-person { transition: none; }
    .v2-result-preview > .authority-card:hover,.v2-result-preview > .authority-card:hover .authority-card__copy b { transform: none; }
}
/* Presentation-only refinement: existing editable blocks and their content stay intact. */
.library-intro { padding-block: clamp(32px,5vw,64px); background: #fff; }
.library-intro > .container { display: grid; grid-template-columns: minmax(0,1.7fr) minmax(260px,.8fr); align-items: center; gap: clamp(32px,5vw,64px); padding: clamp(24px,3.5vw,48px); border: 1px solid var(--line); border-radius: 16px; background: linear-gradient(120deg,var(--ivory),#fff 70%); box-shadow: 0 12px 36px rgba(17,42,62,.035); }
.library-intro__grid { display: block; }
.library-intro__grid > * { min-width: 0; }
.library-intro h2 { max-width: 28ch; margin-bottom: 22px; font-size: clamp(28px,3vw,42px); letter-spacing: -.025em; line-height: 1.18; text-wrap: balance; }
.library-intro h2::before { content: ''; display: block; width: 44px; height: 3px; margin-bottom: 22px; background: var(--accent); }
.library-intro p { line-height: 1.8; }
.library-intro .v2-disclaimer { padding: 18px 22px; border: 1px solid var(--line); border-left: 3px solid var(--accent); border-radius: 0 8px 8px 0; background: #fff; line-height: 1.7; }
.library-categories { flex-direction: column; padding: 12px 0 12px 32px; margin: 0; border-top: 0; border-left: 1px solid var(--line); gap: 14px; }
.library-categories a { width: min(100%,260px); min-height: 46px; padding: 11px 16px; justify-content: space-between; border-radius: 7px; color: #fff; background: var(--blue); border-color: var(--blue); font-size: 14px; transition: background 180ms ease,color 180ms ease,border-color 180ms ease,box-shadow 180ms ease; }
.library-categories a:last-child { color: var(--blue); background: var(--accent); border-color: var(--accent); }
.library-categories a:hover { color: var(--blue); background: var(--accent); border-color: var(--accent); box-shadow: 0 4px 12px rgba(17,42,62,.09); }
.library-categories a:last-child:hover { color: #fff; background: var(--blue); border-color: var(--blue); }
.library-categories a:focus-visible { outline: 2px solid var(--blue); outline-offset: 4px; }
body:not(.home) .eex-guide-article { padding-block: clamp(36px,5vw,64px); }
body:not(.home) .eex-guide-article .eex-guide-title { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; margin-bottom: 28px; padding-bottom: 28px; border-bottom: 1px solid var(--line); font-size: clamp(30px,3.2vw,44px); letter-spacing: -.025em; }
.eex-guide-title > span { display: block; }
.eex-guide-title strong { margin: 0; padding: 7px 12px; border: 1px solid var(--line); border-radius: 6px; background: #fff; color: var(--muted); font-size: 12px; line-height: 1.5; }
.eex-guide-row { position: relative; grid-template-columns: minmax(0,1fr); align-items: start; gap: 22px; margin-bottom: 22px; padding: clamp(24px,3.5vw,44px); border: 1px solid var(--line); border-radius: 12px; background: #fff; box-shadow: 0 4px 16px rgba(17,42,62,.025); transition: border-color 200ms ease,box-shadow 200ms ease; }
.eex-guide-row:last-child { margin-bottom: 0; }
body:not(.home) .eex-guide-row h3 { max-width: none; margin: 0; padding-bottom: 18px; border-bottom: 1px solid var(--line); font-size: clamp(23px,2vw,29px); line-height: 1.3; letter-spacing: -.015em; text-wrap: balance; }
.eex-guide-row h3::before { display: none; }
.eex-guide-row__body { max-width: 92ch; }
body:not(.home) .eex-guide-article .eex-guide-row__body p,body:not(.home) .eex-guide-article .eex-guide-row__body li { font-size: 16px; line-height: 1.85; }
body:not(.home) .eex-guide-article .eex-guide-row__body .replica-list { padding-left: 20px; }
body:not(.home) .eex-guide-article .eex-guide-row__body li { padding-left: 6px; margin-bottom: 14px; }
.eex-guide-row__body li::marker { color: var(--accent-dark); }
.eex-guide-article + .eex-guide-article { border-top: 1px solid var(--line); background: #fff; }
.eex-guide-article + .eex-guide-article .eex-guide-title { border-left: 3px solid var(--accent); padding-left: 24px; }
.eex-guide-article + .eex-guide-article .eex-guide-row { background: var(--ivory); box-shadow: none; }
.eex-guide-article + .eex-guide-article .eex-guide-title strong { background: var(--ivory); }
/* Services retain their links; surface response is shared with keyboard focus. */
.v2-service-grid article { border: 1px solid var(--line); border-radius: 12px; background: linear-gradient(145deg,var(--ivory),#fff); box-shadow: 0 4px 16px rgba(17,42,62,.025); transition: transform 220ms ease,box-shadow 220ms ease,border-color 220ms ease; }
.v2-service-grid .v2-service-icon { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid var(--line); border-radius: 12px; background: #fff; transition: color 200ms ease,background 200ms ease,border-color 200ms ease; }
.v2-service-grid .v2-service-icon svg { width: 30px; height: 30px; }
.v2-service-grid article:focus-within { border-color: var(--accent); box-shadow: 0 12px 28px rgba(17,42,62,.09); }
.v2-service-grid article a:focus-visible { outline: 2px solid var(--blue); outline-offset: 5px; }
body:not(.home) .eex-guide-service .replica-copy { padding: clamp(24px,3vw,40px); border: 1px solid var(--line); border-radius: 12px; background: #fff; }
body:not(.home) .eex-guide-service .ruled-title { font-size: clamp(26px,2.4vw,34px); letter-spacing: -.02em; }
body:not(.home) .eex-guide-service .replica-natural-image img { border-radius: 12px; }
.eex-guide-update .v2-current-note__grid { border-radius: 12px; border-top: 2px solid var(--accent); }
@media (hover:hover) and (pointer:fine) {
    .v2-service-grid article:hover { transform: translateY(-4px); border-color: var(--accent); box-shadow: 0 16px 36px rgba(17,42,62,.1); }
    .v2-service-grid article:hover .v2-service-icon { color: #fff; background: var(--blue); border-color: var(--blue); }
    .eex-guide-row:hover { border-color: var(--accent); box-shadow: 0 10px 26px rgba(17,42,62,.06); }
}
@media (prefers-reduced-motion:reduce) {
    .v2-service-grid article,.v2-service-grid .v2-service-icon,.eex-guide-row { transition: none; }
    .v2-service-grid article:hover { transform: none; }
}
@media (max-width:980px) {
    .library-intro > .container { grid-template-columns: minmax(0,1fr); gap: 28px; }
    .library-categories { flex-direction: row; padding: 24px 0 0; border-left: 0; border-top: 1px solid var(--line); }
    .library-categories a { flex: 1 1 220px; width: auto; }
    .library-intro__grid,.eex-guide-row { grid-template-columns: minmax(0,1fr); gap: 22px; }
    .library-intro h2 { max-width: 26ch; }
}
@media (max-width:720px) {
    .library-intro > .container { width: calc(100% - 32px); padding: 24px 20px; border-radius: 12px; }
    .library-categories a { flex: 1 1 180px; }
    .eex-guide-row { padding: 24px 20px; border-radius: 10px; }
    body:not(.home) .eex-guide-article .eex-guide-title { gap: 12px; padding-bottom: 22px; }
    .eex-guide-article + .eex-guide-article .eex-guide-title { padding-left: 18px; }
}
@media (max-width: 720px) {
    .cookie-banner { width: auto; max-height: calc(100dvh - 24px); }
    .cookie-panel-header { padding: 16px; grid-template-columns: 34px minmax(0,1fr) 36px; gap: 10px; }
    .cookie-panel-icon { width: 34px; height: 34px; border-radius: 6px; }
    .cookie-panel-header h2 { font-size: 17px; }
    .cookie-panel-header .cookie-close { width: 36px; height: 36px; }
    .cookie-panel-kicker { font-size: 9px; }
    .cookie-banner__copy { padding: 16px; }
    .cookie-panel-footer { padding: 14px 16px 10px; }
    .cookie-banner .cookie-preferences .cookie-category { grid-template-columns: minmax(0,1fr) 68px; padding: 12px; gap: 8px; }
    .cookie-banner .cookie-toggle-control { width: 68px; }
    .cookie-banner__actions .button { font-size: 11px; }
}

/* About-page identity: decorative shapes stay outside the readable copy. */
.eex-about-identity.container {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    max-width: none;
    margin: 0;
    min-height: 300px;
    padding: 86px 100px 72px;
    border-radius: 0;
    background: #f0f6fa;
    text-align: center;
}
.eex-about-identity__eyebrow {
    position: absolute;
    top: 28px;
    right: 32px;
    color: #b47c25;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .09em;
}
.eex-about-identity__copy { position: relative; z-index: 1; max-width: 700px; margin-inline: auto; }
.eex-about-identity h1 { margin: 0 0 16px; color: #193759; font-size: clamp(28px,3.5vw,48px); line-height: 1.2; }
.eex-about-identity p { margin: 0; color: #526780; font-size: clamp(17px,1.6vw,22px); line-height: 1.5; }
.eex-about-identity__shape { position: absolute; width: 108px; height: 108px; pointer-events: none; }
.eex-about-identity__shape--start { top: 22px; left: 24px; }
.eex-about-identity__shape--end { bottom: 18px; right: 18px; width: 132px; height: 72px; }
@media (max-width: 600px) {
    .eex-about-identity.container { min-height: 245px; padding: 92px 26px 66px; }
    .eex-about-identity__eyebrow { top: 17px; right: 16px; font-size: 10px; letter-spacing: .04em; }
    .eex-about-identity__shape--start { top: 14px; left: 13px; width: 68px; height: 68px; }
    .eex-about-identity__shape--end { bottom: 12px; right: 12px; width: 98px; height: 52px; }
    .eex-about-identity h1 { margin-bottom: 12px; }
}

/* A complete, uninterrupted pre-check form; no step controls or hidden sections. */
.eex-single-form .v2-form-step { display: block; padding: 0 0 32px; }
.eex-single-form .v2-form-step + .v2-form-step { padding-top: 32px; border-top: 1px solid var(--line); }
.eex-single-form .v2-form-step:last-child { padding-bottom: 0; }
.eex-single-form .v2-form-step h2 { margin: 0 0 12px; color: var(--blue); font-size: clamp(23px,2.2vw,30px); line-height: 1.2; }
.eex-single-form .v2-form-step h2::before { content: ''; display: block; width: 32px; height: 2px; background: var(--accent); margin-bottom: 16px; }
.eex-single-form .v2-choice-grid span { min-height: 100px; padding: 16px; }
.eex-single-form :is(.v2-choice-grid,.v2-check-list) { border: 0; padding: 0; margin-inline: 0; }
.eex-single-form .v2-check-list legend { padding: 0; margin-bottom: 14px; }
.eex-single-form .v2-form-intro { margin-bottom: 22px; }
.eex-single-form .v2-field-error:empty { display: none; }
.eex-single-form .v2-form-actions { margin-top: 26px; }
.eex-single-form .button[type="submit"] { gap: 20px; }

/* Single-page form: native controls, quiet hierarchy and explicit selection states. */
.v2-form-card:has(.eex-single-form) { padding: clamp(24px,3.4vw,46px); border-top: 3px solid var(--accent); box-shadow: 0 16px 48px rgba(17,42,62,.045); }
.eex-single-form .v2-form-step h2 { font-size: clamp(20px,1.8vw,24px); letter-spacing: -.02em; margin-bottom: 10px; }
.eex-single-form .v2-form-step h2::before { content: none; }
.eex-single-form .v2-form-intro { font-size: 14px; line-height: 1.65; margin-bottom: 22px; }
.eex-single-form .v2-form-step + .v2-form-step { padding-top: 28px; }
.eex-single-form .v2-choice-grid { gap: 10px; margin-bottom: 28px; }
.eex-single-form .v2-choice-grid label { position: relative; }
.eex-single-form .v2-choice-grid input { position: absolute; top: 19px; left: 15px; width: 18px; height: 18px; margin: 0; opacity: 1; accent-color: var(--blue); }
.eex-single-form .v2-choice-grid span { min-height: 94px; padding: 16px 14px 16px 42px; font-size: 12px; line-height: 1.6; border-color: #d5dee6; border-radius: 8px; justify-content: flex-start; }
.eex-single-form .v2-choice-grid strong { font-size: 14px; line-height: 1.5; margin-bottom: 4px; }
.eex-single-form .v2-choice-grid input:checked + span { background: #f6f8fb; border-color: var(--blue); box-shadow: inset 0 -3px 0 var(--accent); }
.eex-single-form .v2-check-list { display: block; }
.eex-single-form .v2-check-list legend { margin-bottom: 5px; font-size: 16px; }
.eex-single-form .eex-selection-hint { color: #526477; font-size: 13px; margin: 0 0 14px; }
.eex-debt-options { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.eex-single-form .v2-check-list .eex-debt-options label { display: flex; flex-direction: row; align-items: flex-start; gap: 10px; min-height: 104px; padding: 18px 14px; background: #fff; border: 1px solid #d5dee6; border-radius: 8px; transition: border-color 180ms ease,background 180ms ease,box-shadow 180ms ease; }
.eex-debt-options input { flex: 0 0 18px; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--blue); }
.eex-debt-options span { min-width: 0; }
.eex-debt-options strong { display: block; font-size: 14px; font-weight: 600; line-height: 1.5; color: var(--blue); }
.eex-debt-options small { display: block; font-size: 12px; font-weight: 400; color: #526477; line-height: 1.6; margin-top: 5px; }
.eex-single-form .v2-check-list .eex-debt-options label:has(input:checked) { background: #f6f8fb; border-color: var(--blue); box-shadow: inset 0 -3px 0 var(--accent); }
.eex-single-form :is(.eex-debt-options label,.v2-choice-grid label):has(input:focus-visible) { outline: 2px solid var(--blue); outline-offset: 3px; }
.eex-single-form :is(input[type=text],input[type=tel],input[type=email],select,textarea) { border-color: #d5dee6; background: #fcfdfe; font-size: 15px; font-weight: 400; transition: border-color 180ms ease,box-shadow 180ms ease; }
.eex-single-form :is(input[type=text],input[type=tel],input[type=email],select,textarea):focus { background: #fff; border-color: var(--blue); box-shadow: 0 0 0 3px rgba(17,42,62,.1); }
.eex-single-form :is(.v2-form-step > label,.v2-fields-two label) { font-size: 14px; line-height: 1.55; gap: 9px; }
.eex-single-form .v2-field-note { border-left-width: 2px; background: #faf8f3; padding: 14px 18px; border-radius: 0 6px 6px 0; line-height: 1.7; }
.eex-single-form .form-consent { padding: 18px 0 0; border-top: 1px solid var(--line); line-height: 1.7; }
.eex-single-form .form-consent input { width: 18px; height: 18px; flex: 0 0 18px; accent-color: var(--blue); }
.eex-single-form .v2-form-actions { justify-content: flex-start; }
.eex-single-form .button[type=submit] { background: var(--blue); color: #fff; border-color: var(--blue); border-radius: 7px; min-height: 52px; padding-inline: 24px; }
.eex-single-form .button[type=submit]:hover { background: var(--accent); color: var(--blue); border-color: var(--accent); }
/* The legacy choices stay intact within the site's restrained editorial palette. */
.eex-form-kicker { display: block; color: var(--accent-dark); font-size: 12px; font-weight: 600; letter-spacing: .1em; margin-bottom: 12px; }
.eex-precheck-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.eex-precheck-fields > label { display: flex; flex-direction: column; gap: 10px; font-size: 15px; font-weight: 500; min-width: 0; }
.eex-precheck-fields > label:last-child:nth-child(odd) { grid-column: 1 / -1; }
.eex-precheck-fields select { width: 100%; min-width: 0; min-height: 52px; padding-right: 30px; font-size: 16px !important; }
.eex-single-form .eex-precheck-extra { margin: 28px 0 0; padding: 24px; border: 1px solid #d9e5ee; border-radius: 10px; background: #f3f8fc; }
.eex-precheck-extra[hidden] { display: none; }
.eex-precheck-extra legend { color: var(--blue); font-size: 15px; font-weight: 600; padding-inline: 8px; }
.eex-single-form .v2-fields-two small { color: var(--muted); font-size: 13px; font-weight: 400; }
.eex-single-form :is(input,textarea) { font-size: 16px; }
.eex-submit-notice { padding: 20px 24px; border: 1px solid #d5b8ae; border-radius: 9px; background: #fff7f4; line-height: 1.7; }
.eex-submit-notice.is-success { color: #143d33; background: #edf7f3; border-color: #b5d7c7; }
.eex-single-form .button:disabled { cursor: default; opacity: .8; }
.eex-required-mark { color: #b42318; font-weight: 700; }
.eex-required-mark[role=button] { cursor: help; font-size: 12px; line-height: inherit; }
.eex-required-mark[role=button]:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 2px; }
/* Matching heading tracks and control heights prevent a hint stretching one column. */
.eex-single-form .eex-contact-field { display: grid; grid-template-rows: auto 52px; align-content: start; gap: 10px; min-width: 0; margin-bottom: 20px; }
.eex-single-form .eex-contact-field > label,
.eex-single-form .eex-field-heading label { display: block; margin: 0; min-height: 24px; font-size: 14px; font-weight: 600; line-height: 24px; color: var(--blue); }
.eex-single-form .eex-contact-field > :is(input,select) { box-sizing: border-box; height: 52px; min-height: 52px; margin: 0; font-size: 16px; line-height: 24px; }
.eex-field-heading { display: flex; align-items: center; gap: 8px; min-height: 24px; }
.eex-field-help { position: relative; display: inline-flex; flex: 0 0 auto; }
.eex-single-form .eex-help-button { display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; min-height: 18px; margin: 0; padding: 0; color: #718196; border: 1px solid #ccd5de; border-radius: 50%; background: transparent; cursor: help; font: 400 11px/1 Georgia,serif; }
.eex-single-form .eex-help-button:hover,
.eex-single-form .eex-help-button[aria-expanded=true] { color: #40556b; border-color: #9aaec0; background: #f8fafc; }
.eex-field-tooltip { position: absolute; z-index: 60; top: calc(100% + 8px); left: -95px; width: 210px; max-width: calc(100vw - 32px); padding: 9px 12px; border: 1px solid #e0e7ee; border-radius: 6px; color: #40556b; background: #fff; box-shadow: 0 4px 14px rgba(17,42,62,.07); font-size: 12px; font-weight: 400; line-height: 1.55; }
.eex-field-tooltip::before { content: ''; position: absolute; top: -4px; left: var(--tip-arrow-left,100px); width: 7px; height: 7px; border-left: 1px solid #e0e7ee; border-top: 1px solid #e0e7ee; background: #fff; transform: rotate(45deg); }
.eex-required-hint { vertical-align: baseline; }
.eex-required-hint .eex-field-tooltip { left: -70px; width: 150px; white-space: nowrap; }
@media (max-width: 640px) { .eex-precheck-fields { grid-template-columns: 1fr; gap: 20px; } .eex-single-form .eex-precheck-extra { padding: 18px 14px; } }
@media (hover:hover) {
    .eex-single-form .v2-check-list .eex-debt-options label:hover { border-color: var(--accent); background: #fdfbf7; }
    .eex-single-form .v2-choice-grid label:hover span { border-color: var(--accent); }
}
@media (max-width:600px) {
    .eex-single-form .eex-debt-options,.eex-single-form .v2-choice-grid { grid-template-columns: 1fr; }
    .eex-single-form .v2-check-list .eex-debt-options label { min-height: 76px; }
    .eex-single-form .v2-choice-grid span { min-height: 76px; }
    .eex-single-form .v2-fields-two { grid-template-columns: 1fr; gap: 0; }
    .eex-single-form .button[type=submit] { width: 100%; justify-content: space-between; }
}
@media (prefers-reduced-motion:reduce) {
    .eex-single-form .eex-debt-options label,.eex-single-form :is(input,select,textarea) { transition: none; }
}

/* A quiet text-only continuation of the about-page introduction. */
.eex-about-mechanism { padding: 64px 0 72px; background: #f5f8fb; border-block: 1px solid #e4eaf0; }
.eex-about-mechanism__grid { width: min(85%,1296px); display: grid; grid-template-columns: 1fr 1fr; gap: 7%; align-items: start; }
.eex-about-mechanism h2 { color: #102c51; font-size: clamp(28px,2.65vw,40px); line-height: 1.18; letter-spacing: -.02em; margin: 22px 0 0; max-width: 18ch; text-wrap: balance; }
.eex-about-mechanism p { color: #697080; font-size: clamp(17px,1.45vw,21px); line-height: 1.6; margin: 0 0 22px; }
.eex-about-mechanism strong { color: #102c51; font-weight: 600; }
.eex-about-mechanism .eex-about-office-link { color: #102c51; text-decoration: underline; text-decoration-color: #c4a361; text-underline-offset: 5px; transition: color 180ms ease; }
.eex-about-mechanism .eex-about-office-link strong { color: inherit; }
.eex-about-mechanism .eex-about-office-link:hover { color: #8b651e; }
.eex-about-mechanism .eex-about-office-link:focus-visible { outline: 2px solid #102c51; outline-offset: 5px; }
.eex-about-mechanism__note { padding-top: 22px; border-top: 1px solid #dbe3ec; }
.eex-about-mechanism__note p { font-size: 16px; line-height: 1.7; margin-bottom: 18px; }
.eex-about-mechanism .v2-text-link { display: inline-flex; align-items: center; gap: 18px; color: #102c51; font-size: 15px; text-decoration: none; border-bottom: 1px solid #c89a36; padding-bottom: 6px; transition: color 180ms ease; }
.eex-about-mechanism .v2-text-link:hover { color: #8b651e; }
.eex-about-mechanism .v2-text-link:focus-visible { outline: 2px solid #102c51; outline-offset: 5px; }
@media(max-width:720px) {
    .eex-about-mechanism { padding: 40px 0; }
    .eex-about-mechanism__grid { width: calc(100% - 40px); grid-template-columns: 1fr; gap: 24px; }
    .eex-about-mechanism h2 { max-width: none; }
}

/* Reference layout: full-bleed brand hero, then the supplied editorial introduction. */
.eex-about-identity--reference.container {
    display: grid; place-items: center; min-height: 500px;
    padding: 90px 24px;
    background-color: #edf6fc;
    background-image: url('../../images/about-hero-left.png'),url('../../images/about-hero-right.png');
    background-position: left center,right center;
    background-size: auto 100%,auto 100%;
    background-repeat: no-repeat;
}
.eex-about-identity--reference .eex-about-identity__copy { max-width: 1000px; }
.eex-about-identity__kicker { display: flex; justify-content: center; align-items: center; gap: 18px; color: #bb891e; font-size: 17px; font-weight: 600; letter-spacing: .04em; }
.eex-about-identity__kicker::before,.eex-about-identity__kicker::after { content: ''; width: 50px; height: 1px; background: #c89a36; flex-shrink: 0; }
.eex-about-identity--reference h1 { font-family: Arial,sans-serif; font-size: clamp(38px,5.1vw,72px); font-weight: 700; color: #102c51; margin: 32px 0 24px; }
.eex-about-identity--reference .eex-about-identity__values { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px 14px; font-size: clamp(18px,1.9vw,27px); }
.eex-about-identity__values span + span::before { content: '•'; color: #bb891e; margin-right: 14px; }
.eex-about-introduction { background: #fff; padding: 68px 0; }
.eex-about-introduction__grid { width: min(85%,1296px); display: grid; grid-template-columns: 1fr 1fr; gap: 7%; align-items: start; }
.eex-about-introduction__kicker { display: flex; align-items: center; gap: 18px; color: #bb891e; font-size: 16px; font-weight: 600; letter-spacing: .05em; }
.eex-about-introduction__kicker::before { content: ''; width: 50px; height: 1px; background: #c89a36; }
.eex-about-introduction h2 { color: #102c51; font-size: clamp(28px,2.65vw,40px); line-height: 1.15; margin: 22px 0; }
.eex-about-introduction p { color: #697080; font-size: clamp(17px,1.45vw,21px); line-height: 1.35; margin: 0 0 18px; }
/* Single-column legal editorial layout: no cards, numbering or side navigation. */
.eex-legal.eex-legal--editorial { background: #fff; }
.eex-legal--editorial .eex-legal__hero { max-width: 960px; text-align: center; padding-top: 68px; padding-bottom: 42px; }
.eex-legal--editorial .eex-legal__hero p { margin-left: auto; margin-right: auto; max-width: 690px; }
.eex-legal--editorial .eex-legal__eyebrow::before { display: none; }
.eex-legal--editorial .eex-legal__updated { border-top: 1px solid #dacba9; padding-top: 18px; }
.eex-legal--editorial .eex-legal__layout { display: block; max-width: 860px; }
.eex-legal--editorial .eex-legal__body { border: 0; border-radius: 0; padding: 0; }
.eex-legal--editorial .eex-legal__section { padding: 22px 0 12px; }
.eex-legal--editorial .eex-legal__section + .eex-legal__section { border: 0; }
.eex-legal--editorial .eex-legal__section h2 { font-size: 25px; margin-bottom: 18px; }
.eex-legal--editorial .eex-legal__section p,.eex-legal--editorial .eex-legal__section li { font-size: 17px; line-height: 1.9; }
@media(max-width:720px) {
    .eex-legal--editorial .eex-legal__hero { padding-top: 38px; padding-bottom: 22px; text-align: left; }
    .eex-legal--editorial .eex-legal__section { padding: 20px 0 10px; }
    .eex-legal--editorial .eex-legal__section h2 { font-size: 23px; }
    .eex-legal--editorial .eex-legal__section p,.eex-legal--editorial .eex-legal__section li { font-size: 16px; }
}
/* Shared legal typography and responsive storage table. */
.eex-legal { background: #f7f8fa; color: #17314b; padding-bottom: 84px; }
.eex-legal__hero { padding-top: 76px; padding-bottom: 58px; }
.eex-legal__eyebrow { display: block; color: #97722f; font-size: 12px; font-weight: 700; letter-spacing: .13em; margin-bottom: 22px; }
.eex-legal__eyebrow::before { content: ''; display: inline-block; width: 34px; height: 2px; background: #c4a361; margin-right: 14px; vertical-align: middle; }
.eex-legal__hero h1 { font-size: clamp(34px,4vw,56px); letter-spacing: -.035em; line-height: 1.15; margin: 0 0 22px; color: #102e48; }
.eex-legal__hero p { max-width: 760px; color: #53677c; font-size: 19px; line-height: 1.7; margin: 0 0 20px; }
.eex-legal__updated { display: inline-block; font-size: 13px; color: #64748b; }
.eex-legal__layout { display: grid; grid-template-columns: 250px minmax(0,1fr); gap: 48px; align-items: start; }
.eex-legal__contents { position: sticky; top: 120px; display: grid; gap: 5px; border-top: 2px solid #c4a361; padding-top: 22px; }
.eex-legal__contents strong { margin-bottom: 14px; font-size: 15px; }
.eex-legal__contents a { display: block; padding: 9px 12px; border-left: 2px solid transparent; color: #53677c; font-size: 14px; text-decoration: none; transition: color .2s,background .2s,border-color .2s; }
.eex-legal__contents a:hover,.eex-legal__contents a:focus-visible { background: #fff; border-left-color: #c4a361; color: #102e48; }
.eex-legal__body { min-width: 0; padding: 4px 44px; background: #fff; border: 1px solid #e0e6ec; border-radius: 10px; }
.eex-legal__section { position: relative; padding: 38px 0; scroll-margin-top: 115px; }
.eex-legal__section + .eex-legal__section { border-top: 1px solid #e7ebef; }
.eex-legal__number { display: block; margin-bottom: 10px; font-size: 12px; font-weight: 700; letter-spacing: .1em; color: #97722f; }
.eex-legal__section h2 { margin: 0 0 22px; color: #102e48; font-size: 27px; letter-spacing: -.025em; line-height: 1.3; }
.eex-legal__section h3 { font-size: 19px; margin: 24px 0 12px; color: #17314b; }
.eex-legal__section p,.eex-legal__section li { color: #536277; font-size: 16px; line-height: 1.85; overflow-wrap: anywhere; }
.eex-legal__section p { margin: 0 0 18px; }
.eex-legal__section p:last-child { margin-bottom: 0; }
.eex-legal__section ul { padding-left: 22px; margin: 0 0 22px; }
.eex-legal__section li { margin-bottom: 15px; padding-left: 4px; }
.eex-legal__section li::marker { color: #b38b45; }
.eex-legal__section strong { color: #253e55; }
.eex-legal__section a { color: #174c83; text-underline-offset: 4px; }
.eex-legal__section a:hover { color: #896422; }
.eex-legal__contact { background: #f5f8fb; padding: 24px; border-left: 3px solid #c4a361; margin-top: 24px; }
.eex-legal__contact p { display: grid; grid-template-columns: 100px minmax(0,1fr); gap: 10px; margin-bottom: 12px; }
.eex-legal__table-wrap { overflow-x: auto; margin: 24px 0; border: 1px solid #e0e6ec; border-radius: 6px; }
.eex-legal table { width: 100%; min-width: 620px; border-collapse: collapse; font-size: 14px; line-height: 1.7; }
.eex-legal caption { text-align: left; padding: 16px 20px; font-weight: 700; background: #f5f8fb; }
.eex-legal th,.eex-legal td { text-align: left; vertical-align: top; padding: 16px; border-top: 1px solid #e0e6ec; }
.eex-legal th { color: #17314b; background: #fafbfd; }
.eex-legal td { color: #536277; }
.eex-legal code { font-size: 12px; }
.eex-legal__section .button { color: #102e48; border-radius: 6px; font-size: 14px; max-width: 100%; white-space: normal; }
@media(max-width:1000px) {
    .eex-legal__layout { grid-template-columns: 200px minmax(0,1fr); gap: 24px; }
    .eex-legal__body { padding: 4px 28px; }
}
@media(max-width:720px) {
    .eex-legal { padding-bottom: 44px; }
    .eex-legal__hero { padding-top: 42px; padding-bottom: 32px; }
    .eex-legal__hero p { font-size: 17px; }
    .eex-legal__layout { grid-template-columns: 1fr; gap: 24px; }
    .eex-legal__contents { position: static; gap: 0; }
    .eex-legal__contents a { padding: 8px 10px; }
    .eex-legal__body { padding: 0 22px; }
    .eex-legal__section { padding: 30px 0; }
    .eex-legal__section h2 { font-size: 24px; }
    .eex-legal__contact { padding: 18px; }
    .eex-legal__contact p { grid-template-columns: 1fr; gap: 2px; }
}
.eex-about-introduction figure { margin: 0; }
.eex-about-introduction img { display: block; width: 100%; height: auto; border-radius: 7px; }
@media(max-width:720px) {
    .eex-about-identity--reference.container { min-height: 360px; padding: 70px 24px; background-size: auto 100%,auto 100%; }
    .eex-about-identity--reference::before { content: ''; position: absolute; inset: 0; background: rgba(237,246,252,.7); }
    .eex-about-identity__kicker { font-size: 12px; gap: 10px; }
    .eex-about-identity__kicker::before,.eex-about-identity__kicker::after { width: 22px; }
    .eex-about-identity--reference .eex-about-identity__values { flex-direction: column; gap: 5px; }
    .eex-about-identity__values span + span::before { content: none; }
    .eex-about-introduction { padding: 40px 0; }
    .eex-about-introduction__grid { width: calc(100% - 40px); grid-template-columns: 1fr; gap: 24px; }
}
/* Contact introduction: editable HTML, with decorative media controlled in WordPress. */
.eex-precheck-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(135deg,#f8fcff 0%,#f1f8fe 70%,#f8fcff 100%);padding:88px 0 96px;color:#092c5d}
.eex-precheck-hero::before{content:"";position:absolute;z-index:-1;left:0;bottom:-40px;width:230px;height:230px;background:url('../../images/site-icon.png') center/contain no-repeat;opacity:.065;transform:rotate(-14deg);pointer-events:none}
.eex-precheck-hex{position:absolute;z-index:-1;right:24px;top:-34px;width:220px;height:215px;background:url('../../images/team-hex-mark.svg') center/contain no-repeat;transform:rotate(180deg);pointer-events:none}
.eex-precheck-hero::after{content:"";position:absolute;z-index:-1;right:22px;bottom:12px;width:100px;height:100px;background:url('../../images/team-hex-mark.svg') center/contain no-repeat;opacity:.2;pointer-events:none}
.eex-precheck-hero__layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px;align-items:center}
.eex-precheck-hero__rule{display:block;width:58px;height:3px;background:#c99a35;margin-bottom:26px}
.eex-precheck-hero__copy h1{font-size:clamp(40px,4.6vw,68px);line-height:1.15;letter-spacing:-.025em;color:inherit;margin:0 0 34px;font-weight:700}
.eex-precheck-hero__copy p{font-size:clamp(18px,1.5vw,22px);line-height:1.58;color:inherit;margin:0 0 30px}
.eex-precheck-hero__copy p:last-child{margin-bottom:0}
.eex-precheck-hero__copy strong{font-weight:700;color:inherit}
.eex-precheck-includes{background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.8);border-radius:28px;padding:32px 34px;box-shadow:0 14px 48px rgba(27,78,133,.045)}
.eex-precheck-includes h2{display:flex;align-items:center;gap:18px;font-size:18px;line-height:1.4;letter-spacing:.045em;font-weight:700;color:#c59532;margin:0 0 18px}
.eex-precheck-includes h2::after{content:"";flex:1;height:1px;background:#c59532}
.eex-precheck-includes ul{list-style:none;padding:0;margin:0}
.eex-precheck-includes li{display:grid;grid-template-columns:66px minmax(0,1fr);align-items:center;column-gap:20px;min-height:85px;font-size:clamp(17px,1.42vw,21px);line-height:1.4;color:#092c5d}
.eex-precheck-includes li+li>span:last-child{border-top:1px solid #e3edf7}
.eex-precheck-includes li>span:last-child{min-height:85px;display:flex;align-items:center;padding:15px 0}
.eex-precheck-icon{display:flex;align-items:center;justify-content:center;width:66px;height:66px;border-radius:50%;background:#f8f3eb;color:#092c5d}
.eex-precheck-icon svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.eex-semantic-icon .gold{stroke:#b78d34}
@media(max-width:1050px){.eex-precheck-hero{padding:64px 0}.eex-precheck-hero__layout{gap:28px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.eex-precheck-includes{padding:25px}.eex-precheck-includes li{grid-template-columns:52px minmax(0,1fr);column-gap:14px}.eex-precheck-icon{width:52px;height:52px}.eex-precheck-includes h2{font-size:15px;gap:10px}}
@media(max-width:800px){.eex-precheck-hero__layout{grid-template-columns:1fr;gap:34px}.eex-precheck-hero__copy h1{font-size:clamp(36px,6vw,52px)}.eex-precheck-hex{width:140px;height:140px;opacity:.45}.eex-precheck-includes{max-width:600px;width:100%}.eex-precheck-hero__copy p{font-size:18px}.eex-precheck-hero{padding:48px 0 56px}}
@media(max-width:450px){.eex-precheck-hero__copy h1{font-size:36px;margin-bottom:26px}.eex-precheck-hero__copy p{font-size:17px;margin-bottom:24px}.eex-precheck-includes{padding:22px 18px;border-radius:22px}.eex-precheck-includes li{font-size:16px;column-gap:12px}.eex-precheck-includes li,.eex-precheck-includes li>span:last-child{min-height:78px}.eex-precheck-hero::before{width:150px;height:150px}}
/* One contact palette, with restrained hierarchy and depth instead of motion. */
.eex-precheck-hero,.eex-contact-form-section,.eexa-section,.eex-contact-offices{--contact-gold:#cba346;--contact-navy:#092f60;--contact-muted:#516d89;color:var(--contact-navy)}
.eex-contact-form-section,.eexa-section,.eex-contact-offices{overflow:clip}
.eex-precheck-hero__copy h1{font-size:clamp(34px,3.6vw,52px);margin:16px 0 28px}
.eex-precheck-hero__copy p{font-size:18px;line-height:1.65;margin-bottom:22px}
.eex-precheck-hero__layout{align-items:start}
.eex-precheck-includes{margin-top:35px}
.eex-precheck-includes h2{color:var(--contact-gold)}
.eex-precheck-includes h2::after{background:var(--contact-gold)}
.eex-precheck-includes li{font-size:18px}
.eex-contact-kicker,.eex-contact-form-section .eex-form-kicker,.eexa-heading .v2-eyebrow{display:flex;align-items:center;gap:16px;color:#ad7e22;font-size:12px;font-weight:700;line-height:1.6;letter-spacing:.1em;text-transform:uppercase}
.eex-contact-kicker::after,.eex-contact-form-section .eex-form-kicker::after,.eexa-heading .v2-eyebrow::after{content:"";height:1px;background:var(--contact-gold);flex:1;max-width:220px;min-width:28px}
.eex-contact-form-section{position:relative;isolation:isolate;background:linear-gradient(145deg,#f1f8fe,#fff);padding:72px 0}
.eex-contact-form-section .v2-form-layout{grid-template-columns:minmax(0,1fr);max-width:970px;position:relative}
.eex-contact-form-section .v2-form-card:has(.eex-single-form){border:1px solid #dde8f2;border-top:3px solid var(--contact-gold);border-radius:20px;box-shadow:0 3px 8px rgba(9,47,96,.035),0 24px 60px -18px rgba(9,47,96,.22),0 48px 95px -50px rgba(9,47,96,.23);background:linear-gradient(155deg,#fff,#fbfdff);padding:clamp(24px,4vw,48px)}
.eex-contact-form-section h2{color:var(--contact-navy)}
.eex-contact-form-section .eex-form input,.eex-contact-form-section .eex-form select,.eex-contact-form-section .eex-form textarea{color:var(--contact-navy);background:#fbfdff;border-color:#cddded}
.eex-contact-form-section .eex-form input:focus,.eex-contact-form-section .eex-form select:focus,.eex-contact-form-section .eex-form textarea:focus{border-color:var(--contact-gold);box-shadow:0 0 0 3px rgba(203,163,70,.13)}
.eex-contact-form-section .button.button--accent,.eexa-section .button.button--accent,.eex-contact-offices .eex-booking-cta{background:var(--contact-gold);background-image:none;border:1px solid var(--contact-gold);color:var(--contact-navy);box-shadow:0 9px 24px rgba(165,119,24,.13);transition:color .2s ease,box-shadow .2s ease;transform:none}
.eex-contact-form-section .button.button--accent:hover,.eex-contact-form-section .button.button--accent:focus-visible{background:var(--contact-gold);background-image:none;color:var(--contact-navy);border-color:var(--contact-gold);transform:none}
.eexa-section .button.button--accent:hover,.eexa-section .button.button--accent:focus-visible,.eex-contact-offices .eex-booking-cta:hover,.eex-contact-offices .eex-booking-cta:focus-visible{background:var(--contact-gold);background-image:none;color:#fff;border-color:var(--contact-gold);transform:none}
.eex-contact-form-section .button:focus-visible,.eex-contact-offices .button:focus-visible{outline:2px solid var(--contact-navy);outline-offset:4px}
.eex-contact-form-section::before,.eexa-section::before,.eex-contact-offices::before{content:"";position:absolute;z-index:-1;width:220px;height:220px;background:url('../../images/site-icon.png') center/contain no-repeat;opacity:.045;pointer-events:none}
.eex-contact-form-section::before{right:3%;top:20%;transform:rotate(17deg)}
.eex-contact-form-section::after,.eexa-section::after,.eex-contact-offices::after{content:"";position:absolute;z-index:-1;width:150px;height:150px;background:url('../../images/team-hex-mark.svg') center/contain no-repeat;opacity:.18;pointer-events:none}
.eex-contact-form-section::after{left:2%;bottom:6%;transform:rotate(-12deg)}
.eexa-section{position:relative;isolation:isolate;background:linear-gradient(135deg,#fff,#f1f8fe);border-top:1px solid #e4edf6}
.eexa-section::before{left:1%;bottom:2%;transform:rotate(-18deg)}
.eexa-section::after{right:2%;top:8%;transform:rotate(25deg)}
.eexa-heading h2{color:var(--contact-navy);font-size:clamp(28px,3vw,38px)}
.eexa-heading p{color:var(--contact-muted)}
.eexa-section .eexa{border-color:#dce7f1;border-radius:18px;box-shadow:0 18px 48px -20px rgba(9,47,96,.18)}
.eexa-section .eexa-calendar{background:#f8fbfe;border-color:#dce7f1}
.eexa-section .eexa button[aria-pressed=true]{background:var(--contact-gold);color:var(--contact-navy);border-color:var(--contact-gold)}
.eexa-section .eexa-selected{background:#f7f1e4;border-color:var(--contact-gold);color:var(--contact-navy)}
.eexa-office-picker{max-width:700px;margin-bottom:24px}
.eexa-office-picker label{display:block;font-weight:600;font-size:14px;margin-bottom:8px}
.eexa-office-picker select{width:100%;min-height:52px;padding:12px 14px;border:1px solid #cddded;border-radius:8px;background:white;color:var(--contact-navy);font:inherit}
.eexa-office-picker select:focus-visible{outline:2px solid var(--contact-gold);outline-offset:3px}
.eex-contact-offices{position:relative;isolation:isolate;background:#f6faff;padding:68px 0}
.eex-contact-offices::before{right:1%;top:3%;transform:rotate(11deg)}
.eex-contact-offices::after{left:1%;bottom:3%;transform:rotate(175deg)}
.eex-office-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}
.eex-office-heading h2{font-size:clamp(25px,2.7vw,36px);margin:14px 0 0;color:var(--contact-navy)}
.eex-office-contact{display:flex;gap:28px;flex-wrap:wrap;margin:26px 0 32px}
.eex-office-contact a,.eex-office-directions{color:var(--contact-navy);font-weight:600;text-decoration:none;transition:color .2s}
.eex-office-contact a:hover,.eex-office-contact a:focus-visible,.eex-office-directions:hover,.eex-office-directions:focus-visible{color:var(--contact-gold)}
.eex-office-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.eex-office-card{min-width:0;background:#fff;border:1px solid #dce7f1;border-radius:18px;padding:28px;box-shadow:0 14px 36px -18px rgba(9,47,96,.16)}
.eex-office-card h3{font-size:26px;color:var(--contact-navy);margin:14px 0 8px}
.eex-office-card p{color:var(--contact-muted);font-size:16px;min-height:26px;margin-bottom:22px}
.eex-office-card .v2-map{height:300px;border-radius:12px;filter:none}
.eex-office-directions{display:inline-block;margin-top:16px;font-size:14px}
/* Compact office selector and controls aligned even when labels wrap. */
.eexa-office-picker{max-width:620px;padding:18px 20px;border:1px solid #dce7f1;border-radius:12px;background:#fff;box-shadow:0 8px 24px -18px rgba(9,47,96,.2);margin-bottom:22px}
.eexa-heading{margin-bottom:22px}
.eex-precheck-extra .eex-precheck-fields>label{display:grid;grid-template-rows:minmax(46px,auto) 52px;align-content:start}
.eex-precheck-extra .eex-precheck-fields>label>span{align-self:start;line-height:1.5}
.eex-contact-form-section select,.eexa-office-picker select,.eexa-section select,.eex-contact-form-section input[type=checkbox],.eexa-section input[type=checkbox]{cursor:pointer}
.eex-contact-form-section input:not([type=checkbox]):not([type=hidden]),.eex-contact-form-section textarea,.eexa-section input:not([type=checkbox]):not([type=hidden]){cursor:text}
.eex-office-ordinal{display:inline-flex;align-items:baseline;gap:0}
.eex-office-ordinal sup{font-size:.7em;line-height:0;position:relative;top:-.5em;text-transform:none}
.eex-contact-form-section .button.button--accent,.eexa-section .button.button--accent,.eex-contact-offices .eex-booking-cta{transition:color .2s ease,transform .2s ease,box-shadow .2s ease}
.eex-contact-form-section .button.button--accent:hover,.eex-contact-form-section .button.button--accent:focus-visible,.eexa-section .button.button--accent:hover,.eex-contact-offices .eex-booking-cta:hover{color:#fff;transform:translateY(-2px);box-shadow:0 12px 28px rgba(165,119,24,.19);background:var(--contact-gold);border-color:var(--contact-gold)}
.eex-contact-form-section .button.button--accent:disabled{transform:none}
.eex-success-dialog{width:min(490px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;padding:36px;border:1px solid #dce7f1;border-top:3px solid #cba346;border-radius:20px;color:#092f60;background:#fff;box-shadow:0 24px 80px rgba(9,47,96,.2)}
.eex-success-dialog::backdrop{background:rgba(9,35,67,.36);backdrop-filter:blur(3px)}
body.eex-success-open{overflow:hidden}
.eex-success-dialog__icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;margin-bottom:20px;background:#edf5fb;color:#092f60;font-size:28px}
.eex-success-dialog h2{margin:0 0 14px;font-size:25px;line-height:1.25;color:#092f60}
.eex-success-dialog p{font-size:16px;line-height:1.65;color:#516d89;margin:0 0 24px}
.eex-success-dialog button{min-height:46px;padding:12px 24px;border:1px solid #cba346;border-radius:7px;background:#cba346;color:#092f60;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;cursor:pointer}
.eex-success-dialog button:focus-visible{outline:2px solid #092f60;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.eex-contact-form-section .button.button--accent:hover,.eexa-section .button.button--accent:hover,.eex-contact-offices .eex-booking-cta:hover{transform:none;transition:none}}
@media(max-width:760px){.eex-precheck-extra .eex-precheck-fields{grid-template-columns:1fr}.eex-precheck-extra .eex-precheck-fields>label{grid-template-rows:auto 52px}.eexa-office-picker{padding:16px}.eex-success-dialog{padding:28px 24px}}
@media(max-width:800px){.eex-precheck-includes{margin-top:0}.eex-precheck-hero__copy p{font-size:17px}.eex-office-grid{grid-template-columns:1fr}.eex-office-heading{align-items:start;flex-direction:column}.eex-contact-form-section{padding:48px 0}.eex-office-card{padding:24px}}
@media(max-width:450px){.eex-precheck-hero__copy h1{font-size:34px}.eex-precheck-includes li{font-size:16px}.eex-office-contact{gap:12px;flex-direction:column}.eex-contact-form-section .v2-form-card:has(.eex-single-form){padding:24px 18px}.eex-office-card{padding:22px 18px}.eex-contact-kicker{font-size:11px;gap:10px}.eex-contact-kicker::after{max-width:80px}.eex-contact-form-section::before,.eexa-section::before,.eex-contact-offices::before{width:140px;height:140px}}

/* Shared success decoration reuses the existing site asset for precheck and bookings. */
.eex-success-dialog{isolation:isolate}
.eex-success-dialog::before{content:"";position:absolute;right:22px;top:22px;width:112px;height:108px;background:url('../../images/team-hex-mark.svg') center/contain no-repeat;opacity:.16;pointer-events:none;z-index:-1}
.eex-success-dialog--precheck #eex-success-message{white-space:pre-line}
@media(max-width:480px){.eex-success-dialog::before{right:18px;top:20px;width:92px;height:88px;opacity:.12}}

/* Staging polish: whole-card navigation and grouped mobile choice details. */
.eex-trust-icons-v3 a.eex-trust-item{color:inherit;text-decoration:none;transition:color .18s ease;}
.eex-trust-icons-v3 a.eex-trust-item:hover,.eex-trust-icons-v3 a.eex-trust-item:hover .eex-trust-text,.eex-trust-icons-v3 a.eex-trust-item:hover strong,.eex-trust-icons-v3 a.eex-trust-item:hover small{color:#fff;}
.eex-trust-icons-v3 a.eex-trust-item:focus-visible{outline:2px solid #fff;outline-offset:-5px;color:#fff;}
.eex-trust-icons-v3 a.eex-trust-item:focus-visible strong,.eex-trust-icons-v3 a.eex-trust-item:focus-visible small{color:#fff;}
.eex-choice-label .eex-choice-detail{display:inline-block;white-space:nowrap;}
@media(prefers-reduced-motion:reduce){.eex-trust-icons-v3 a.eex-trust-item{transition:none;}}

body.home .site-main .v2-trust.eex-trust-icons-v3 a.eex-trust-item{cursor:pointer;}
body.home .site-main .v2-trust.eex-trust-icons-v3 a.eex-trust-item:hover .eex-trust-text,body.home .site-main .v2-trust.eex-trust-icons-v3 a.eex-trust-item:hover strong,body.home .site-main .v2-trust.eex-trust-icons-v3 a.eex-trust-item:hover small,body.home .site-main .v2-trust.eex-trust-icons-v3 a.eex-trust-item:focus-visible strong,body.home .site-main .v2-trust.eex-trust-icons-v3 a.eex-trust-item:focus-visible small{color:#fff;}

/* Full-card feedback: descendants cannot retain their default navy color. */
body.home .site-main .v2-trust.eex-trust-icons-v3 .v2-trust__grid>a.eex-trust-item,
body.home .site-main .v2-trust.eex-trust-icons-v3 .v2-trust__grid>a.eex-trust-item *{cursor:pointer!important;}
body.home .site-main .v2-trust.eex-trust-icons-v3 .v2-trust__grid>a.eex-trust-item:is(:hover,:focus-visible),
body.home .site-main .v2-trust.eex-trust-icons-v3 .v2-trust__grid>a.eex-trust-item:is(:hover,:focus-visible) *{color:#fff!important;}
body.home .site-main .v2-trust.eex-trust-icons-v3 .v2-trust__grid>a.eex-trust-item:is(:hover,:focus-visible) svg{stroke:currentColor!important;}
/* Fade only the decorative surface, never the title, CTA or their hit targets. */
@media(max-width:900px){
 body.home .site-main .v5-brand-hero .v2-hero__copy{position:relative;isolation:isolate;background:transparent;border-radius:0;box-shadow:none;}
 body.home .site-main .v5-brand-hero .v2-hero__copy::before{content:"";position:absolute;inset:-30px -26px;z-index:-1;pointer-events:none;border:0;border-radius:0;background:radial-gradient(ellipse at 50% 45%,rgba(238,240,241,.96) 30%,rgba(238,240,241,.9) 52%,rgba(238,240,241,0) 76%);}
 @supports((mask-image:radial-gradient(#000,transparent)) or (-webkit-mask-image:radial-gradient(#000,transparent))){
  body.home .site-main .v5-brand-hero .v2-hero__copy::before{background:rgba(238,240,241,.94);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);-webkit-mask-image:radial-gradient(ellipse at 50% 45%,#000 32%,rgba(0,0,0,.88) 52%,transparent 76%);mask-image:radial-gradient(ellipse at 50% 45%,#000 32%,rgba(0,0,0,.88) 52%,transparent 76%);}
 }
}

/* A single centered close action below the copy in every success popup. */
.eex-success-dialog > button{display:block;float:none;width:fit-content;max-width:100%;margin:8px auto 0;}
