/* site.css - company-formation-in-romania.com (FormaRoman Group). Every value comes from tokens.css; DESIGN.md section 3
   names the reference pattern behind each block. Order: base, shell, heroes, sections, components, forms, footer, motion. */

/* ---------- base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; background: var(--c-bg); color: var(--c-text); font: var(--w-body) var(--f-body)/var(--lh-body) var(--f-text); overflow-x: hidden; }
img, svg, picture { max-width: 100%; height: auto; display: block; }
main { overflow-wrap: break-word; }
main a, main code, .ig, .data-table td, .data-table th { overflow-wrap: anywhere; }   /* a long source URL or act reference never widens a phone screen */
.ig * { min-width: 0; }
a { color: var(--c-accent-ink); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: var(--c-accent-hover); }
:focus-visible { outline: 2px solid var(--c-focus); outline-offset: 3px; }
h1, h2, h3, h4 { font-family: var(--f-display); font-weight: var(--w-display); text-transform: var(--tt-display); letter-spacing: var(--ls-display); color: var(--c-ink); line-height: var(--lh-tight); margin: 0 0 var(--s-4); text-wrap: balance; }
h1 { font-size: var(--f-h1-inner); }
h2 { font-size: var(--f-h2); }
h3 { font-size: var(--f-h3); line-height: 1.35; }
h4 { font-size: var(--f-body); }
p { margin: 0 0 var(--s-4); }
ul, ol { margin: 0 0 var(--s-4); padding-left: 1.2em; }
li { margin-bottom: var(--s-2); }
strong, b { font-weight: var(--w-strong); color: var(--c-ink); }
sup { font-size: 0.7em; line-height: 0; vertical-align: 0.5em; }
code { font-size: 0.92em; background: var(--c-band); padding: 0 4px; }
blockquote { margin: var(--s-5) 0; padding: var(--s-2) 0 var(--s-2) var(--s-5); border-left: 3px solid var(--c-accent); color: var(--c-ink); }
.wrap { max-width: calc(var(--max-width) + 2 * var(--side-pad)); margin: 0 auto; padding: 0 var(--side-pad); }
.skip { position: absolute; left: -9999px; top: 0; background: var(--c-ink); color: #fff; padding: 10px 16px; z-index: 100; }
.skip:focus { left: 8px; top: 8px; }
.kicker { font-family: var(--f-text); font-weight: var(--w-strong); font-size: var(--f-tiny); letter-spacing: var(--ls-caps); text-transform: uppercase; color: var(--c-accent-ink); margin: 0 0 var(--s-3); }
.rule-short { display: block; width: var(--rule-short); height: var(--rule-weight); background: var(--c-accent); margin: var(--s-4) 0 var(--s-5); }
.linklike { background: none; border: 0; padding: 0; font: inherit; color: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }

/* ---------- buttons: square, bronze fill, white capitals (variant A "SEND REQUEST NOW", "MORE") ---------- */
.actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3) var(--s-5); margin: var(--s-5) 0 0; }
.btn { display: inline-flex; align-items: center; gap: 10px; min-height: var(--btn-h); padding: var(--btn-pad); background: var(--btn-bg); color: var(--btn-text); border: 1px solid var(--btn-bg); border-radius: var(--r-none);
  font: var(--w-strong) var(--f-small)/1 var(--f-text); letter-spacing: var(--ls-caps); text-transform: uppercase; text-decoration: none; cursor: pointer; transition: background var(--t-fast), border-color var(--t-fast), color var(--t-fast); }
.btn:hover { background: var(--btn-hover-bg); border-color: var(--btn-hover-bg); color: var(--btn-text); }
.btn .chev { width: 16px; height: 16px; }
.btn--hero { background: var(--c-accent); }
.btn--small { min-height: 32px; padding: 0 14px; font-size: var(--f-tiny); }
.btn--fill { background: var(--c-accent); }
.textlink { display: inline-flex; align-items: center; gap: 6px; font-weight: var(--w-strong); color: var(--c-accent-ink); text-decoration: none; border-bottom: 1px solid currentColor; padding-bottom: 2px; }
.textlink .chev { width: 14px; height: 14px; }
.textlink--light { color: #fff; }
.textlink--light:hover { color: var(--c-accent-tint); }

/* ---------- header (variant A): the white wordmark panel fading into the photograph; contact line above the menu ---------- */
.site-header { position: relative; z-index: 20; background: var(--c-bg); border-bottom: 1px solid var(--c-line); }
.site-header__panel { display: none; }
.navbar { display: flex; align-items: center; justify-content: space-between; gap: var(--s-6); min-height: var(--header-h); }
.brand { display: inline-flex; flex-direction: column; align-items: flex-end; text-decoration: none; color: var(--c-ink); line-height: 1; flex: none; }
.brand__word { font-family: var(--f-display); font-size: 1.65rem; letter-spacing: 0.005em; }
.brand__desc { font: var(--w-strong) 0.625rem/1 var(--f-text); letter-spacing: 0.32em; text-transform: uppercase; color: var(--c-accent-ink); margin-top: 6px; margin-right: -0.32em; }
.brand:hover { color: var(--c-ink); }
.brand--light, .brand--light:hover { color: #fff; }
.brand--light .brand__desc { color: var(--c-accent-light); }
.navbar__right { display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }
.navbar__line { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 4px 18px; margin: 0; font-size: var(--f-tiny); color: var(--c-muted); }
.navbar__line a { color: inherit; text-decoration: none; }
.navbar__line a:hover { color: var(--c-accent-ink); text-decoration: underline; }
.nav ul { display: flex; gap: var(--s-5); list-style: none; margin: 0; padding: 0; }
.nav li { margin: 0; }
.nav__link { font: var(--w-strong) var(--f-nav)/1 var(--f-text); letter-spacing: var(--ls-caps); text-transform: uppercase; color: var(--c-ink); text-decoration: none; background: none; border: 0; padding: 6px 0; cursor: pointer; border-bottom: 1px solid transparent; }
.nav__link:hover, .nav__link[aria-current="page"], .nav__btn[aria-expanded="true"] { color: var(--c-accent-ink); border-bottom-color: currentColor; }
.nav__btn::after { content: ""; display: inline-block; width: 6px; height: 6px; margin-left: 8px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: translateY(-3px) rotate(45deg); }
.burger { display: none; width: 46px; height: 46px; background: none; border: 1px solid var(--c-line-strong); cursor: pointer; position: relative; }
.burger__bars, .burger__bars::before, .burger__bars::after { position: absolute; left: 12px; right: 12px; height: 1.5px; background: var(--c-ink); content: ""; }
.burger__bars { top: 22px; } .burger__bars::before { top: -7px; left: 0; right: 0; } .burger__bars::after { top: 7px; left: 0; right: 0; }
.menu { position: absolute; left: 0; right: 0; top: 100%; background: var(--c-bg); border-top: 1px solid var(--c-line); box-shadow: 0 24px 40px oklch(23.4% 0.004 106.7 / 0.12); padding: var(--s-6) 0; z-index: 30; }
.menu[hidden] { display: none; }
.menu__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--s-6); }
.menu__title { font-family: var(--f-display); text-transform: uppercase; letter-spacing: var(--ls-display); font-size: var(--f-small); color: var(--c-accent-ink); margin-bottom: var(--s-3); }
.menu ul { list-style: none; padding: 0; margin: 0; }
.menu li { margin: 0 0 6px; }
.menu__grid a { color: var(--c-ink); text-decoration: none; }
.menu__grid a:hover, .menu__grid a[aria-current="page"] { color: var(--c-accent-ink); text-decoration: underline; }
.menu__foot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--s-4); border-top: 1px solid var(--c-line); margin-top: var(--s-6); padding-top: var(--s-4); font-size: var(--f-small); }
.menu__foot ul { display: flex; flex-wrap: wrap; gap: var(--s-5); }
.menu__foot p { margin: 0; }
/* over the photograph (desktop): the header lies on the hero; the panel behind the wordmark is white and fades out */
@media (min-width: 1024px) {
  .has-photo-hero .site-header { position: absolute; left: 0; right: 0; top: 0; background: transparent; border-bottom: 0; }
  .has-photo-hero .site-header__panel { display: block; position: absolute; left: 0; top: 0; bottom: 0; width: min(560px, 42vw); background: linear-gradient(90deg, #fff 0, #fff 62%, rgb(255 255 255 / 0.55) 82%, rgb(255 255 255 / 0) 100%); }
  .has-photo-hero .navbar { position: relative; }
  .has-photo-hero .navbar__line, .has-photo-hero .nav__link { color: #fff; }
  .has-photo-hero .navbar__line a:hover, .has-photo-hero .nav__link:hover, .has-photo-hero .nav__link[aria-current="page"], .has-photo-hero .nav__btn[aria-expanded="true"] { color: #fff; border-bottom-color: var(--c-accent-light); }
  .has-photo-hero .navbar__right { text-shadow: 0 1px 8px rgb(0 0 0 / 0.35); }
}

/* ---------- heroes ---------- */
.page-hero { position: relative; }
.page-hero--photo { color: #fff; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; background-color: #485367;
  --veil: linear-gradient(90deg, rgb(0 0 0 / 0.42) 0%, rgb(0 0 0 / 0.22) 45%, transparent 72%), linear-gradient(0deg, rgb(0 0 0 / 0.25) 0%, transparent 30%);   /* light and untinted: the reference lays white capitals on a natural-colour photograph; this only keeps the title readable on a bright one */
  background-image: var(--veil), var(--hero-xs); background-size: cover; background-position: center; }
@media (min-width: 700px) { .page-hero--photo { background-image: var(--veil), var(--hero-sm); } }
@media (min-width: 1240px) { .page-hero--photo { background-image: var(--veil), var(--hero-lg); } }
.page-hero--home { min-height: max(620px, 88vh); }
.page-hero--service, .page-hero--shelf { min-height: 560px; }
.page-hero--guide { min-height: 400px; }
.hero__media { position: absolute; inset: 0; pointer-events: none; }
.hero__media picture, .hero__media img { width: 100%; height: 100%; object-fit: cover; }
.hero__media::after { content: ""; position: absolute; inset: 0; background: var(--veil); }   /* the same light shade over the <img> layer */
.page-hero--photo .page-hero__inner, .page-hero--photo .hero__strip { position: relative; z-index: 1; }
.page-hero--photo .page-hero__inner { position: relative; width: 100%; padding-top: calc(var(--header-h) + var(--s-7)); padding-bottom: var(--s-8); }
.page-hero--photo h1 { color: #fff; max-width: 24ch; margin-bottom: 0; }
.page-hero--photo .page-hero__inner { text-shadow: 0 1px 14px rgb(0 0 0 / 0.38); }
.page-hero--home h1 { font-size: var(--f-h1); max-width: 22ch; }
.page-hero--photo .rule-short { background: var(--c-accent-light); }
.page-hero--photo .kicker { color: var(--c-accent-tint); }
.hero__sub { font-size: var(--f-lead); max-width: 56ch; }
.page-hero--photo .hero__sub { color: #fff; }
.page-hero--photo .hero__sub a { color: #fff; text-decoration-color: var(--c-accent-light); }
.page-hero--photo .hero__sub a:hover { color: var(--c-accent-tint); }
.page-hero--photo .crumbs, .page-hero--photo .crumbs a { color: rgb(255 255 255 / 0.86); }
.hero__strip { position: relative; border-top: 1px solid rgb(255 255 255 / 0.3); background: rgb(0 0 0 / 0.35); }
.hero__facts { list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 0; margin: 0 auto; padding-top: 0; padding-bottom: 0; }
.hero__facts li { margin: 0; padding: var(--s-4) var(--s-5) var(--s-4) 0; font-size: var(--f-small); line-height: 1.45; color: #fff; }
.hero__facts li + li { padding-left: var(--s-5); border-left: 1px solid rgb(255 255 255 / 0.28); }
.hero__facts a { color: #fff; }
.hero__facts--light { padding: 0; border-top: 1px solid var(--c-line); margin-top: var(--s-5); }
.hero__facts--light li { color: var(--c-text); }
.hero__facts--light li + li { border-left-color: var(--c-line); }
.hero__facts--light a { color: var(--c-accent-ink); }
.hero__capwrap { border-bottom: 1px solid var(--c-line); }
.hero__cap { font-size: var(--f-tiny); color: var(--c-muted); margin: var(--s-3) 0; }
.article-meta { border-bottom: 1px solid var(--c-line); padding: var(--s-5) 0; }
.article-meta__line { font-size: var(--f-small); color: var(--c-muted); margin-bottom: var(--s-2); }
.hero__sub--lede { color: var(--c-text); margin-top: var(--s-3); }
.page-hero--plain { padding: calc(var(--s-6)) 0 var(--s-6); border-bottom: 1px solid var(--c-line); }
.page-hero--plain h1 { margin-bottom: 0; }
.crumbs { display: flex; flex-wrap: wrap; gap: 8px; font-size: var(--f-tiny); color: var(--c-muted); margin-bottom: var(--s-4); }
.crumbs a { color: inherit; }

/* ---------- sections ---------- */
.sec { padding: var(--sec-pad) 0; position: relative; }
.tone--stone { background: var(--c-band); }
.section__head { margin-bottom: var(--s-5); max-width: 820px; }
.section__head h2 { margin-bottom: 0; }
.section__lead { max-width: var(--text-col); margin-bottom: var(--s-6); }
.section__lead p:last-child { margin-bottom: 0; }
.section__cont { margin-top: var(--s-7); }
.prose { max-width: var(--text-col); }
.prose > :last-child { margin-bottom: 0; }
.page--guide .sec h2 { position: relative; padding-top: var(--s-5); }
.page--guide .sec h2::before { content: ""; position: absolute; left: 0; top: 0; width: 40px; height: 2px; background: var(--c-accent); }
.page--guide .sec { padding: calc(var(--sec-pad) * 0.62) 0; }
.page--guide .sec + .sec:not(.tone--stone):not(.sec--cta) { padding-top: 0; }
.callout { background: var(--c-accent-tint); padding: var(--s-4) var(--s-5); border-left: 3px solid var(--c-accent); }
.callout--strong { font-family: var(--f-display); color: var(--c-ink); }
.table-note { font-size: var(--f-small); color: var(--c-muted); }
/* the statement section (variant A, /legal/): bronze capitals at the left, the copy in a lighter column beside it */
.statement { display: grid; grid-template-columns: 4fr 7fr; gap: var(--s-6) var(--s-8); align-items: start; }
.statement__head .section__head { max-width: none; }
.statement__head h2 { font-size: clamp(1.2rem, 1rem + 0.8vw, 1.5rem); }
.statement__head h2 { color: var(--c-accent-ink); }
.statement__body { color: var(--c-muted); font-size: var(--f-lead); line-height: 1.75; }
.statement__body strong, .statement__body a { color: var(--c-ink); }
.statement__body a { color: var(--c-accent-ink); }

/* ---------- cards (variant A service trio: stone body, serif capitals title, a small square button) ---------- */
.cards { display: grid; gap: var(--s-5); }
.cards--2 { grid-template-columns: repeat(2, 1fr); }
.cards--3 { grid-template-columns: repeat(3, 1fr); }
.cards--4 { grid-template-columns: repeat(4, 1fr); }
.card { background: var(--c-card); padding: var(--card-pad); display: flex; flex-direction: column; box-shadow: var(--shadow-card); }   /* the reference's service cards: pale body, soft shadow */
.tone--stone .card { background: var(--c-bg); }
.card h3 { margin-bottom: var(--s-3); }
.card h3 a { color: var(--c-ink); text-decoration: none; }
.card h3 a:hover { color: var(--c-accent-ink); text-decoration: underline; }
.card > p:last-of-type { margin-bottom: 0; }
.card .chev-links { margin-top: auto; padding-top: var(--s-4); }
.card--problem { background: var(--c-bg); border-left: 3px solid var(--c-accent); box-shadow: var(--shadow-card); }
.cards--plain .card { background: none; box-shadow: none; padding: var(--s-5) 0 0; border-top: 1px solid var(--c-line); }
.chev-links { list-style: none; padding: 0; margin: var(--s-4) 0 0; display: flex; flex-wrap: wrap; gap: var(--s-3); }
.chev-links li { margin: 0; }
.chev-link { display: inline-flex; align-items: center; gap: 8px; min-height: 32px; padding: 0 14px; background: var(--c-accent); color: #fff; text-decoration: none; font: var(--w-strong) var(--f-tiny)/1.2 var(--f-text); letter-spacing: var(--ls-caps); text-transform: uppercase; }
.chev-link:hover { background: var(--c-accent-hover); color: #fff; }
.chev-circle { display: inline-flex; }
.chev-circle .chev { width: 14px; height: 14px; }
.after-grid { margin-top: var(--s-6); max-width: var(--text-col); }
.card--guide { background: var(--c-bg); box-shadow: var(--shadow-card); }
.card__meta { font: var(--w-strong) var(--f-tiny)/1 var(--f-text); letter-spacing: var(--ls-caps); text-transform: uppercase; color: var(--c-muted); border-bottom: 1px solid var(--c-line); padding-bottom: var(--s-3); margin-bottom: var(--s-4); }
.card--guide .btn { margin-top: auto; align-self: flex-start; }
.card--guide p { flex: 1 0 auto; }
.card__audience { font-size: var(--f-small); color: var(--c-accent-ink); }
.card__title { font-weight: var(--w-strong); }
.related-list { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--c-line); }
.related-list li { padding: var(--s-4) 0; border-bottom: 1px solid var(--c-line); margin: 0; }
.related-list { max-width: 880px; }
.related-list__kind { font: var(--w-strong) 0.75rem/1 var(--f-text); letter-spacing: var(--ls-caps); text-transform: uppercase; color: var(--c-muted); margin-bottom: var(--s-2); }
.related-list__t { font-family: var(--f-display); text-transform: uppercase; letter-spacing: var(--ls-display); font-size: var(--f-small); margin-bottom: var(--s-2); }
.related-list__t a { color: var(--c-ink); text-decoration: none; }
.related-list__t a:hover { color: var(--c-accent-ink); text-decoration: underline; }
.related-list li > p:last-child { margin-bottom: 0; }

/* ---------- steps: Roman numerals on a hairline axis (derived, DESIGN.md 1) ---------- */
.steps { list-style: none; padding: 0; margin: 0; max-width: 880px; }
.step { display: grid; grid-template-columns: 88px 1fr; gap: var(--s-5); margin: 0; padding: var(--s-5) 0; border-top: 1px solid var(--c-line); }
.step:last-child { border-bottom: 1px solid var(--c-line); }
.step__n { font-family: var(--f-display); font-size: 2rem; line-height: 1; color: var(--c-accent-ink); letter-spacing: 0.04em; }
.step__body h3 { margin-bottom: var(--s-2); }
.step__body p:last-child { margin-bottom: 0; }
.step__terms { display: flex; flex-wrap: wrap; gap: 8px; margin: var(--s-3) 0 0; }
.term { display: inline-flex; gap: 6px; align-items: baseline; padding: 4px 10px; font-size: var(--f-tiny); background: var(--c-band); color: var(--c-text); }
.term b { font-weight: var(--w-strong); text-transform: uppercase; letter-spacing: var(--ls-caps); font-size: 0.75rem; }
.term--law { background: var(--c-accent-tint); color: var(--c-ink); }
.term--law b { color: var(--c-accent-ink); }
.after-grid--note { margin-top: var(--s-5); }

/* ---------- checklist ---------- */
.checklist { list-style: none; padding: 0; max-width: var(--text-col); border-top: 1px solid var(--c-line); }
.checklist li { position: relative; padding: var(--s-3) 0 var(--s-3) 28px; margin: 0; border-bottom: 1px solid var(--c-line); }
.checklist li::before { content: ""; position: absolute; left: 2px; top: 1.15em; width: 8px; height: 8px; background: var(--c-accent); }

/* ---------- tables ---------- */
.table-scroll { overflow-x: auto; margin: 0 0 var(--s-4); -webkit-overflow-scrolling: touch; }
.data-table { width: 100%; border-collapse: collapse; font-size: var(--f-small); line-height: 1.5; }
.data-table caption { caption-side: top; text-align: left; font-family: var(--f-display); font-style: italic; font-size: var(--f-small); color: var(--c-muted); padding-bottom: var(--s-3); }
.data-table thead th { background: var(--c-band); font: var(--w-strong) 0.8125rem/1.3 var(--f-text); letter-spacing: var(--ls-caps); text-transform: uppercase; color: var(--c-ink); text-align: left; padding: 12px 14px; border-bottom: 2px solid var(--c-accent); }
.tone--stone .data-table thead th { background: var(--c-bg); }
.data-table td, .data-table tbody th { padding: 12px 14px; border-bottom: 1px solid var(--c-line); vertical-align: top; text-align: left; }
.data-table tbody th { font-weight: var(--w-strong); color: var(--c-ink); }
.col--tight { white-space: nowrap; }
.table-caption { font-family: var(--f-display); font-style: italic; font-size: var(--f-small); color: var(--c-muted); }

/* ---------- media rows and photographs ---------- */
.media-row { display: grid; grid-template-columns: 5fr 6fr; gap: var(--s-7); align-items: center; }
.media-row--flip .media-row__media { order: 2; }
.photo { margin: 0; }
.photo img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.photo figcaption, .infographic figcaption, .map figcaption { font-size: var(--f-tiny); color: var(--c-muted); margin-top: var(--s-3); }
.sec > .wrap > .photo, .sec .prose .photo, .section__cont .photo { margin: var(--s-6) 0; max-width: 880px; }

/* ---------- the wash band (variant A, /legal/): photograph, bronze wash, white capitals ---------- */
.sec--cta { position: relative; overflow: hidden; background: linear-gradient(180deg, #b5af95 0%, var(--c-wash-2) 100%); color: var(--c-ink); }   /* the reference's khaki bands, sampled from /legal/; ink text, because white on this khaki is 2.2-2.8:1 (WCAG AA needs 4.5) */
.band__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0.16; mix-blend-mode: luminosity; }   /* the photograph shows faintly through the khaki, as on the reference */
.wash { position: absolute; inset: 0; background: linear-gradient(90deg, rgb(255 255 255 / 0.12) 0%, transparent 70%); }   /* a faint light lift behind the text column */
.sec--cta .wrap { position: relative; }
.cta { display: grid; grid-template-columns: 7fr 5fr; gap: var(--s-5) var(--s-7); align-items: end; }
.cta h2 { color: var(--c-ink); }
.cta__text { max-width: 62ch; }
.cta__text p { color: var(--c-ink); }
.cta__text a { color: var(--c-ink); }
.sec--cta .actions { justify-content: flex-end; margin-top: 0; }
.sec--cta .btn { background: var(--c-accent); border-color: var(--c-accent); color: #fff; }
.sec--cta .btn:hover { background: var(--c-accent-hover); border-color: var(--c-accent-hover); color: #fff; }
.sec--cta .textlink--light { color: var(--c-ink); }
.sec--cta .textlink--light:hover { color: var(--c-accent-hover); }

/* ---------- the enquiry card across the band (variant A "How can we be of assistance?") ---------- */
.formgrid { display: grid; grid-template-columns: 8fr 4fr; gap: var(--s-6); align-items: start; }
.formcard { background: var(--c-mist); color: var(--c-text); padding: clamp(1.5rem, 1rem + 2vw, 3rem); border: 1px solid #e8ecf4; box-shadow: 0 12px 30px rgb(40 40 40 / 0.06); }   /* the reference's "How can we be of assistance?" box */
.formcard .field input:not([type=checkbox]):not([type=radio]), .formcard .field select, .formcard .field textarea { background: var(--c-bg); }
.formcard .section__head { max-width: none; }
.formgrid__side .office-card { background: var(--c-band); color: var(--c-text); padding: var(--s-6); border-top: 2px solid var(--c-accent); }
.office-card__kicker { font: var(--w-strong) var(--f-tiny)/1 var(--f-text); letter-spacing: var(--ls-caps); text-transform: uppercase; margin-bottom: var(--s-3); opacity: 0.85; }
.office-card__city { font-family: var(--f-display); text-transform: uppercase; letter-spacing: var(--ls-display); font-size: var(--f-h3); margin-bottom: var(--s-3); }
.office-card__addr { display: flex; gap: 10px; align-items: flex-start; }
.office-card .pin { width: 20px; flex: none; margin-top: 3px; }
.office-card a { color: var(--c-accent-ink); }
.office-card__city { color: var(--c-ink); }
.contact-dl { margin: 0; }
.contact-dl > div { display: grid; grid-template-columns: 9rem 1fr; gap: var(--s-3); padding: 10px 0; border-top: 1px solid var(--c-line); }
.office-card .contact-dl > div { grid-template-columns: 1fr; gap: 2px; }
.contact-dl dt { font-weight: var(--w-strong); color: var(--c-ink); }
.office-card .contact-dl dt { color: var(--c-ink); font-size: var(--f-tiny); text-transform: uppercase; letter-spacing: var(--ls-caps); }
.contact-dl dd { margin: 0; }

/* ---------- forms: filled stone fields, capitals micro-labels, a bronze bar on focus, two columns ---------- */
.fields { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-4) var(--s-5); }
.field { display: flex; flex-direction: column; gap: 6px; margin: 0; border: 0; padding: 0; min-width: 0; }
.field--full, .form__heading, .form__note { grid-column: 1 / -1; }
.field label, .field legend { font: var(--w-strong) 0.75rem/1.3 var(--f-text); letter-spacing: var(--ls-caps); text-transform: uppercase; color: var(--c-ink); }
.field input:not([type=checkbox]):not([type=radio]), .field select, .field textarea { width: 100%; min-height: var(--field-h); padding: 12px 14px; background: var(--field-bg); border: 0; border-left: 3px solid transparent; border-radius: 0; font: var(--w-body) var(--f-body)/1.4 var(--f-text); color: var(--c-ink); transition: border-color var(--t-fast), background var(--t-fast); }
.field textarea { min-height: 140px; resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus { outline: none; border-left: var(--field-focus-bar); background: var(--c-accent-tint); }
.field--check label { display: flex; gap: 10px; align-items: flex-start; font: var(--w-body) var(--f-small)/1.5 var(--f-text); letter-spacing: 0; text-transform: none; color: var(--c-text); }
.field--check input { width: 18px; height: 18px; margin-top: 3px; accent-color: var(--c-accent); flex: none; }
.field--radio label { display: flex; gap: 8px; align-items: center; font: var(--w-body) var(--f-body)/1.4 var(--f-text); text-transform: none; letter-spacing: 0; }
.field__help { font-size: var(--f-tiny); color: var(--c-muted); margin: 0; }
.req { color: var(--c-accent-ink); }
.form__heading { font-size: var(--f-h3); margin: var(--s-4) 0 0; }
.form__note { font-size: var(--f-small); color: var(--c-muted); }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.cf-turnstile { margin: var(--s-5) 0 0; min-height: 65px; }
.form__foot { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-4); margin-top: var(--s-5); }
.form__notice { font-size: var(--f-tiny); color: var(--c-muted); margin: 0; flex: 1 1 260px; }
.form__status { margin: var(--s-4) 0 0; font-weight: var(--w-strong); }
.form__after { margin-top: var(--s-5); font-size: var(--f-small); color: var(--c-muted); }
.field.is-invalid input, .field.is-invalid select, .field.is-invalid textarea { border-left-color: oklch(52% 0.17 28); }

/* ---------- FAQ: hairline rows, a thin bronze plus ---------- */
.faq { max-width: 900px; border-top: 1px solid var(--c-line-strong); }
.faq details { border-bottom: 1px solid var(--c-line-strong); }
.faq summary { list-style: none; display: flex; justify-content: space-between; gap: var(--s-5); padding: var(--s-5) 0; cursor: pointer; font-weight: var(--w-strong); font-size: 1.125rem; color: var(--c-ink); line-height: 1.4; }
.faq summary::-webkit-details-marker { display: none; }
.faq__icon { position: relative; width: 16px; height: 16px; flex: none; margin-top: 5px; }
.faq__icon::before, .faq__icon::after { content: ""; position: absolute; left: 0; right: 0; top: 7px; height: 1.5px; background: var(--c-accent); transition: transform var(--t-fast); }
.faq__icon::after { transform: rotate(90deg); }
.faq details[open] .faq__icon::after { transform: rotate(0); }
.faq__a { padding: 0 var(--s-7) var(--s-5) 0; max-width: var(--text-col); }

/* ---------- trust and people: initials discs, the practice note, the authorship line ---------- */
.trust--split { display: grid; grid-template-columns: 5fr 7fr; gap: var(--s-7); }
.people { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--s-4); }
.people--list .person { padding-bottom: var(--s-4); border-bottom: 1px solid var(--c-line); }
.people--grid { grid-template-columns: repeat(3, 1fr); }
.person { display: flex; gap: var(--s-4); align-items: center; margin: 0; }
.person__mono { display: inline-flex; align-items: center; justify-content: center; width: 88px; height: 88px; border-radius: var(--r-round); background: var(--c-bg); border: 1px solid var(--c-line-strong); font-family: var(--f-display); font-size: 1.5rem; letter-spacing: 0.06em; color: var(--c-accent-ink); flex: none; }
.person__name { font-family: var(--f-display); text-transform: uppercase; letter-spacing: var(--ls-display); font-size: var(--f-small); margin: 0 0 4px; }
.person__name a { color: var(--c-ink); text-decoration: none; }
.person__name a:hover { color: var(--c-accent-ink); text-decoration: underline; }
.person p { margin: 0; font-size: var(--f-small); color: var(--c-muted); }
.practice { border-left: 3px solid var(--c-accent); padding: var(--s-2) 0 var(--s-2) var(--s-5); margin: var(--s-5) 0; }
.practice__label { font: var(--w-strong) var(--f-tiny)/1 var(--f-text); letter-spacing: var(--ls-caps); text-transform: uppercase; color: var(--c-accent-ink); margin-bottom: var(--s-3); }
.practice__who { text-transform: none; letter-spacing: 0; font-weight: var(--w-body); color: var(--c-muted); margin-left: 6px; }
.cta-inline { background: var(--c-mist); border-left: 3px solid var(--c-accent); padding: var(--s-5); margin: var(--s-6) 0; max-width: var(--text-col); }
.cta-inline p { margin: 0; color: var(--c-ink); }
.cta-inline .actions { margin-top: var(--s-4); }
.byline { font-size: var(--f-small); color: var(--c-muted); border-top: 1px solid var(--c-line); padding-top: var(--s-3); }

/* ---------- infographics: ink lines, bronze numerals, stone fills; text in the markup ---------- */
.infographic { margin: var(--s-6) 0 0; padding: var(--s-6); background: var(--c-soft); border-top: 2px solid var(--c-accent); }
.tone--stone .infographic { background: var(--c-bg); }
.ig-legend { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; font-size: var(--f-tiny); color: var(--c-muted); margin-bottom: var(--s-5); }
.ig-nodes { list-style: none; padding: 0; margin: 0; display: grid; gap: 0; grid-template-columns: repeat(var(--n, 6), minmax(0, 1fr)); position: relative; }
.ig-nodes--6 { --n: 6; } .ig-nodes--8 { --n: 4; row-gap: var(--s-6); } .ig-nodes--4 { --n: 4; }
.ig-node { position: relative; margin: 0; padding: 0 var(--s-4) 0 0; }
.ig-node::before { content: ""; position: absolute; left: 0; right: 0; top: 22px; height: 1px; background: var(--c-line-strong); z-index: 0; }
.ig-node__n { position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 8px; background: var(--c-bg); border: 1px solid var(--c-accent); font-family: var(--f-display); color: var(--c-accent-ink); font-size: 1rem; }
.ig-node__title { font-family: var(--f-display); text-transform: uppercase; letter-spacing: var(--ls-display); font-size: 0.8125rem; line-height: 1.35; color: var(--c-ink); margin: var(--s-3) 0 var(--s-1); }
.ig-node__actor { font-size: var(--f-tiny); color: var(--c-muted); margin: 0 0 var(--s-2); }
.ig-chips { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 4px; }
.ig-chip { display: inline-block; margin: 0; padding: 2px 8px; font-size: 0.75rem; line-height: 1.4; background: var(--c-band); color: var(--c-text); }
.ig-chip--law { background: var(--c-accent-tint); color: var(--c-ink); }
.ig-chip--remote { background: var(--c-bg); border: 1px solid var(--c-line-strong); }
.ig-chip--person { background: var(--c-ink); color: #fff; }
.ig-chip--none { background: transparent; border: 1px dashed var(--c-line-strong); color: var(--c-muted); }
.ig-line__axis { font-size: var(--f-tiny); color: var(--c-muted); text-transform: uppercase; letter-spacing: var(--ls-caps); margin-bottom: var(--s-4); }
.ig-marks { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border-top: 2px solid var(--c-accent); }
.ig-mark { position: relative; margin: 0; padding: var(--s-4) var(--s-3) 0 0; display: flex; flex-direction: column; gap: 4px; }
.ig-mark::before { content: ""; position: absolute; left: 0; top: -7px; width: 12px; height: 12px; background: var(--c-accent); }
.ig-mark__when { font-family: var(--f-display); font-size: 1.125rem; color: var(--c-accent-ink); }
.ig-mark__what { font-size: var(--f-small); color: var(--c-ink); line-height: 1.4; }
.ig-mark__act { font-size: 0.75rem; color: var(--c-muted); }

/* ---------- infographic vocabulary (DESIGN.md 3): axis, line, compare, tree, stack, bars, hub; text always in the markup ---------- */
.ig { position: relative; color: var(--c-text); }
.ig-axis, .ig-line, .ig-tree, .ig-stack, .ig-hub, .ig-chart { position: relative; }
.ig-compare { display: grid; grid-template-columns: repeat(var(--cols, 2), minmax(0, 1fr)); gap: var(--s-5); }
.ig-compare--3 { --cols: 3; }
.ig-col { background: var(--c-bg); border-top: 3px solid var(--c-accent); padding: var(--s-5); }
.ig-col--alt { border-top-color: var(--c-ink); }
.ig-col__title { font-family: var(--f-display); text-transform: uppercase; letter-spacing: var(--ls-display); font-size: var(--f-small); color: var(--c-ink); margin-bottom: var(--s-3); }
.ig-col__list { list-style: none; padding: 0; margin: 0; }
.ig-col__list li { font-size: var(--f-small); line-height: 1.45; padding: 8px 0; border-top: 1px solid var(--c-line); margin: 0; }
.ig-col__foot, .ig-shared { font-size: var(--f-tiny); color: var(--c-muted); margin: var(--s-3) 0 0; }
.ig-shared { grid-column: 1 / -1; background: var(--c-accent-tint); color: var(--c-ink); padding: var(--s-3) var(--s-4); margin: 0; }
.ig-tree__q { font-family: var(--f-display); text-transform: uppercase; letter-spacing: var(--ls-display); font-size: var(--f-small); color: var(--c-ink); text-align: center; border: 1px solid var(--c-accent); background: var(--c-bg); padding: var(--s-3) var(--s-4); margin: 0 auto var(--s-5); max-width: 560px; }
.ig-tree__branches { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--s-4); position: relative; }
.ig-branch { margin: 0; background: var(--c-bg); padding: var(--s-4); border-top: 2px solid var(--c-line-strong); display: flex; flex-direction: column; gap: 6px; }
.ig-branch__if { font-weight: var(--w-strong); font-size: var(--f-small); color: var(--c-ink); margin: 0; }
.ig-branch__then { font-size: var(--f-small); margin: 0; }
.ig-branch__then::before { content: "\2192\00a0"; color: var(--c-accent-ink); }
.ig-branch__act, .ig-layer__act, .ig-hub__act, .ig-bar__act { font-size: 0.75rem; color: var(--c-muted); margin: 0; }
.ig-layers { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 6px; }
.ig-layer { margin: 0; display: grid; grid-template-columns: minmax(80px, 140px) 1fr; gap: var(--s-4); align-items: center; padding: 10px 14px; background: var(--c-bg); border-left: 3px solid var(--c-accent); width: var(--w, 100%); min-width: min(100%, 300px); }
.ig-layer--total { background: var(--c-accent-tint); border-left-color: var(--c-ink); }
.ig-layer__v { font-family: var(--f-display); font-size: 1.125rem; color: var(--c-accent-ink); }
.ig-layer__t { font-size: var(--f-small); color: var(--c-ink); }
.ig-layer__act { grid-column: 2; }
.ig-bar { --v: 0; }
.ig-bars { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: var(--s-3); }
.ig-bar { margin: 0; display: grid; grid-template-columns: minmax(120px, 220px) 1fr auto; gap: var(--s-3); align-items: center; }
.ig-bar__label { font-size: var(--f-small); color: var(--c-ink); }
.ig-bar__track { height: 14px; background: var(--c-line); position: relative; }
.ig-bars { --max: 100; }
.ig-bar__fill { position: absolute; left: 0; top: 0; bottom: 0; width: calc(var(--v) / var(--max) * 100%); background: var(--c-accent); }
.ig-bar__value { font-family: var(--f-display); color: var(--c-accent-ink); min-width: 4ch; text-align: right; }
.ig-bar__act { grid-column: 1 / -1; }
.ig-hub__center { font-family: var(--f-display); text-transform: uppercase; letter-spacing: var(--ls-display); text-align: center; color: #fff; background: var(--c-accent); padding: var(--s-3) var(--s-4); margin: 0 auto var(--s-5); max-width: 420px; }
.ig-hub__spokes { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: var(--s-4); }
.ig-hub__spokes li { margin: 0; background: var(--c-bg); padding: var(--s-4); border-top: 2px solid var(--c-accent-light); }
.ig-hub__t { font-weight: var(--w-strong); color: var(--c-ink); font-size: var(--f-small); margin: 0 0 4px; }
.ig-hub__d { font-size: var(--f-small); margin: 0 0 4px; }
.ig-note { font-size: var(--f-tiny); color: var(--c-muted); margin: var(--s-4) 0 0; }
@media (max-width: 699px) {
  .ig-compare, .ig-compare--3 { grid-template-columns: 1fr; }
  .ig-layer { width: 100%; grid-template-columns: 1fr; gap: 2px; }
  .ig-layer__act { grid-column: 1; }
  .ig-bar { grid-template-columns: 1fr auto; }
  .ig-bar__track { grid-column: 1 / -1; grid-row: 2; }
}

/* ---------- picture infographics (ChatGPT, beside the SVG ones) ---------- */
.infographic-image { margin: var(--s-6) 0; max-width: 980px; }
.infographic-image img { display: block; width: 100%; height: auto; border: 1px solid var(--c-line); background: var(--c-soft); }
.infographic-image figcaption { font-size: var(--f-tiny); color: var(--c-muted); margin-top: var(--s-3); max-width: 70ch; }

/* ---------- map, shelf list, interlinks ---------- */
.map { margin: var(--s-6) 0 0; }
.map__placeholder { background: var(--c-band); padding: var(--s-6); }
.map iframe { width: 100%; height: 380px; border: 0; }
.shelf-updated { font-size: var(--f-small); color: var(--c-muted); }
.shelf-table td a { font-weight: var(--w-strong); }
.shelf-details { margin-top: var(--s-6); border-top: 1px solid var(--c-line-strong); max-width: 900px; }
.shelf-details__title { font-family: var(--f-display); text-transform: uppercase; letter-spacing: var(--ls-display); font-size: var(--f-small); margin: var(--s-4) 0; }
.shelf-details details { border-bottom: 1px solid var(--c-line); }
.shelf-details summary { list-style: none; display: flex; justify-content: space-between; gap: var(--s-4); padding: var(--s-3) 0; cursor: pointer; font-weight: var(--w-strong); color: var(--c-ink); }
.shelf-details summary::-webkit-details-marker { display: none; }
.shelf-details details[open] .faq__icon::after { transform: rotate(0); }
.shelf-dl { margin: 0 0 var(--s-3); font-size: var(--f-small); }
.shelf-dl > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--s-4); padding: 8px 0; border-top: 1px solid var(--c-line); }
.shelf-dl dt { color: var(--c-muted); }
.shelf-dl dd { margin: 0; color: var(--c-ink); }
.shelf-details__req { margin: var(--s-2) 0 var(--s-4); }
@media (max-width: 699px) { .shelf-dl > div { grid-template-columns: 1fr; gap: 2px; } }
.interlinks { padding: var(--s-7) 0; border-top: 1px solid var(--c-line); }
.interlinks--inside { margin-top: var(--s-6); padding: 0; border: 0; }
.interlinks__title, .h2-rule { font-size: var(--f-h3); }
.interlinks__list { list-style: none; padding: 0; margin: 0; max-width: 700px; border-top: 1px solid var(--c-line); }
.interlinks__list li { margin: 0; border-bottom: 1px solid var(--c-line); }
.interlinks__list .chev-link { background: none; color: var(--c-ink); padding: var(--s-3) 0; min-height: 0; width: 100%; justify-content: space-between; text-transform: none; letter-spacing: 0; font-size: var(--f-small); }
.interlinks__list .chev-link:hover { color: var(--c-accent-ink); background: none; }
.interlinks__list .chev-circle { color: var(--c-accent); }

/* ---------- key figures band ---------- */
.figures { background: var(--c-wash); color: #fff; padding: var(--s-6); margin-bottom: var(--s-7); }
.figures__title { font-family: var(--f-display); text-transform: uppercase; letter-spacing: var(--ls-display); }
.figures__list { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--s-5); }
.figures__list li { margin: 0; display: flex; flex-direction: column; gap: 4px; border-top: 1px solid rgb(255 255 255 / 0.3); padding-top: var(--s-3); }
.figures__value { font-family: var(--f-display); font-size: var(--f-figure); line-height: 1.1; }
.figures__label { font-size: var(--f-small); }
.figures__src { font-size: 0.75rem; opacity: 0.8; }

/* ---------- footer (variant A): the graphite gradient ---------- */
.site-footer { font-size: var(--f-small); }
.footer__main { background: linear-gradient(180deg, var(--c-footer-top) 0%, var(--c-footer-bottom) 100%); color: #fff; padding: var(--s-8) 0 var(--s-7); }   /* sampled from the owner's save: #979aa1 -> #434c51 */
.footer__main a { color: #fff; text-decoration: none; }
.footer__main a:hover { text-decoration: underline; }
.footer__top { display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: var(--s-6); }
.footer__col h2 { font-size: 0.8125rem; letter-spacing: var(--ls-caps); color: #fff; margin-bottom: var(--s-4); }
.footer__col ul { list-style: none; padding: 0; margin: 0; }
.footer__col li { margin-bottom: 6px; }
.footer__org .brand { margin-bottom: var(--s-4); }
.footer__tag { font-family: var(--f-display); font-style: italic; color: #fff; }
.footer__note { margin: var(--s-7) 0 0; font-size: var(--f-tiny); max-width: 90ch; color: #fff; }
.footer__bottom { background: var(--c-bg); color: var(--c-ink); }
.footer__legal { display: flex; flex-wrap: wrap; gap: var(--s-2) var(--s-5); align-items: center; padding: var(--s-5) 0; font-size: var(--f-small); }
.footer__legal span { margin-right: auto; }
.footer__legal a, .footer__legal .linklike { color: var(--c-legal-link); text-decoration: none; }
.footer__legal a:hover, .footer__legal .linklike:hover { text-decoration: underline; }

/* ---------- consent banner ---------- */
.consent { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--c-bg); border-top: 3px solid var(--c-accent); box-shadow: 0 -12px 30px oklch(23.4% 0.004 106.7 / 0.12); }
.consent__inner { max-width: calc(var(--max-width) + 2 * var(--side-pad)); margin: 0 auto; padding: var(--s-5) var(--side-pad); display: flex; flex-wrap: wrap; gap: var(--s-4); align-items: center; justify-content: space-between; }
.consent__inner p { margin: 0; flex: 1 1 420px; font-size: var(--f-small); }
.consent .actions { margin: 0; }
.consent .btn:not(.btn--fill) { background: transparent; color: var(--c-accent-ink); }

/* ---------- motion ---------- */
.rv { opacity: 0; transform: translateY(14px); transition: opacity var(--t-slow), transform var(--t-slow); }
.rv.is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .rv { opacity: 1; transform: none; transition: none; } }

/* ---------- responsive (390 / 768 / 1024 / 1440) ---------- */
@media (max-width: 1023px) {
  :root { --header-h: 76px; }
  .navbar__right { display: none; }
  .burger { display: block; }
  .brand__word { font-size: 1.4rem; }
  .menu__grid { grid-template-columns: 1fr 1fr; }
  .page-hero--photo .page-hero__inner { padding-top: var(--s-8); padding-bottom: var(--s-7); }
  .page-hero--home { min-height: 560px; }
  .statement, .media-row, .trust--split, .formgrid, .cta { grid-template-columns: 1fr; }
  .media-row--flip .media-row__media { order: 0; }
  .sec--cta .actions { justify-content: flex-start; }
  .cards--4 { grid-template-columns: repeat(2, 1fr); }
  .cards--3 { grid-template-columns: repeat(2, 1fr); }
  .footer__top { grid-template-columns: 1fr 1fr; }
  .ig-nodes--6 { --n: 3; row-gap: var(--s-6); }
  .ig-marks { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: var(--s-5); }
}
@media (max-width: 699px) {
  .cards--2, .cards--3, .cards--4, .people--grid { grid-template-columns: 1fr; }
  .fields { grid-template-columns: 1fr; }
  .menu__grid, .footer__top { grid-template-columns: 1fr; }
  .step { grid-template-columns: 52px 1fr; gap: var(--s-3); }
  .step__n { font-size: 1.4rem; }
  .hero__facts { grid-template-columns: 1fr; }
  .hero__facts li + li { padding-left: 0; border-left: 0; border-top: 1px solid rgb(255 255 255 / 0.28); }
  .hero__facts--light li + li { border-top-color: var(--c-line); }
  .ig-nodes, .ig-nodes--6, .ig-nodes--8 { grid-template-columns: 1fr; row-gap: var(--s-4); }
  .ig-node { display: grid; grid-template-columns: 52px 1fr; column-gap: var(--s-3); padding: 0; }
  .ig-node::before { left: 22px; right: auto; top: 44px; bottom: -16px; width: 1px; height: auto; }
  .ig-node:last-child::before { display: none; }
  .ig-node > :not(.ig-node__n) { grid-column: 2; }
  .ig-node__n { grid-row: 1 / span 3; align-self: start; }
  .ig-node__title { margin-top: 0; }
  .ig-marks { grid-template-columns: 1fr; border-top: 0; border-left: 2px solid var(--c-accent); padding-left: var(--s-4); }
  .ig-mark { padding: 0 0 var(--s-4); }
  .ig-mark::before { left: calc(-1 * var(--s-4) - 7px); top: 6px; }
  .infographic { padding: var(--s-4); }
  .contact-dl > div { grid-template-columns: 1fr; gap: 2px; }
  .faq__a { padding-right: 0; }
  .data-table td::before { content: none; }
}
