
  :root {
    --gold: #c9975b;
    --gold-bright: #e0b585;
    --gold-dim: rgba(201,151,91,0.5);
    --gold-faint: rgba(201,151,91,0.14);
    --gold-ghost: rgba(201,151,91,0.06);
    --ink: #0e0d0b;
    --ink-2: #161512;
    --ink-3: #1e1c18;
    --cream: #f4efe6;
    --cream-dim: rgba(244,239,230,0.55);
    --cream-faint: rgba(244,239,230,0.32);
    --serif: 'Cormorant Garamond', Georgia, serif;
    --sans: 'Outfit', sans-serif;
    --mono: 'IBM Plex Mono', monospace;
    --ease: cubic-bezier(0.16, 1, 0.3, 1);
  }

  *, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
  html { scroll-behavior:smooth; }
  ::selection { background: var(--gold); color: var(--ink); }

  body {
    font-family: var(--sans);
    background: var(--ink);
    color: var(--cream);
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
  }

  /* film grain */
  body::after {
    content:''; position:fixed; inset:0; pointer-events:none; z-index:9998; opacity:0.03;
    background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  }

  /* ═══════════ PRELOADER ═══════════ */
  #loader {
    position:fixed; inset:0; z-index:10001; background:var(--ink);
    display:flex; align-items:center; justify-content:center; flex-direction:column; gap:2.2rem;
    transition: opacity 0.9s var(--ease), visibility 0.9s;
  }
  #loader.done { opacity:0; visibility:hidden; }
  .loader-logo {
    width:min(380px, 72vw); height:auto;
    opacity:0; animation: loaderIn 1.1s 0.15s var(--ease) forwards;
  }
  .loader-est {
    font-family:var(--mono); font-size:0.62rem; letter-spacing:0.5em; padding-inline-start:0.5em;
    color:var(--cream-faint); text-transform:uppercase;
    opacity:0; animation: loaderIn 1.1s 0.45s var(--ease) forwards;
  }
  .loader-bar { width:120px; height:1px; background:rgba(201,151,91,0.15); overflow:hidden; }
  .loader-bar::after {
    content:''; display:block; height:100%; width:100%; background:var(--gold);
    transform:scaleX(0); transform-origin:left; animation: loadBar 1.6s 0.3s var(--ease) forwards;
  }
  @keyframes loaderIn { from{opacity:0; transform:translateY(16px)} to{opacity:1; transform:translateY(0)} }
  @keyframes loadBar { to { transform:scaleX(1); } }

  /* ═══════════ PROGRESS ═══════════ */
  #progress {
    position:fixed; top:0; inset-inline-start: 0; height:2px; background:var(--gold);
    width:0%; z-index:10000; transition:width 0.1s linear;
  }

  /* ═══════════ REVEAL ═══════════ */
  .rv { opacity:0; transform:translateY(44px); transition: opacity 1s var(--ease), transform 1s var(--ease); }
  .rv.on { opacity:1; transform:translateY(0); }
  .d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}.d5{transition-delay:.4s}.d6{transition-delay:.48s}

  /* ═══════════ HEADER ═══════════ */
  header {
    position:fixed; top:0; inset-inline-start: 0; inset-inline-end: 0; z-index:1000;
    display:flex; align-items:center; justify-content:space-between;
    padding: 1.3rem 4rem;
    transition: padding .4s var(--ease), background .5s, border-color .5s;
    border-bottom:1px solid transparent;
  }
  header.scrolled {
    padding-top:0.8rem; padding-bottom:0.8rem;
    background:rgba(14,13,11,0.82);
    backdrop-filter:blur(20px) saturate(1.2);
    -webkit-backdrop-filter:blur(20px) saturate(1.2);
    border-bottom-color:var(--gold-ghost);
  }
  .brand { display:flex; align-items:center; text-decoration:none; }
  .brand img { height:40px; width:auto; display:block; transition:height .4s var(--ease); }
  header.scrolled .brand img { height:33px; }
  nav { display:flex; align-items:center; gap:2.5rem; }
  nav > a {
    font-size:0.66rem; font-weight:400; letter-spacing:0.24em; text-transform:uppercase;
    text-decoration:none; color:var(--cream-dim); transition:color .3s; position:relative;
  }
  nav > a::before {
    content:''; position:absolute; inset-inline-start: 0; bottom:-5px; width:100%; height:1px;
    background:var(--gold); transform:scaleX(0); transform-origin:right;
    transition:transform .45s var(--ease);
  }
  nav > a:hover { color:var(--gold-bright); }
  nav > a:hover::before { transform:scaleX(1); transform-origin:left; }
  .nav-btn {
    font-size:0.64rem !important; padding:0.68rem 1.7rem; border:1px solid var(--gold-dim);
    color:var(--gold) !important; transition:all .35s var(--ease) !important;
  }
  .nav-btn::before { display:none !important; }
  .nav-btn:hover { background:var(--gold); color:var(--ink) !important; border-color:var(--gold); }

  .lang-toggle {
    font-family: var(--mono) !important;
    font-size:0.66rem !important; font-weight:400; letter-spacing:0.1em !important;
    text-transform:none !important; text-decoration:none; color:var(--gold-dim) !important;
    border:1px solid var(--gold-ghost); padding:0.55rem 1rem; opacity:1 !important;
    transition:all .3s var(--ease) !important;
  }
  .lang-toggle::before { display:none !important; }
  .lang-toggle:hover { color:var(--gold) !important; border-color:var(--gold-dim); }

  .burger { display:none; width:34px; height:22px; background:none; border:none; cursor:pointer; position:relative; z-index:1101; }
  .burger span { position:absolute; inset-inline-start: 0; width:100%; height:1px; background:var(--gold); transition:all .35s var(--ease); }
  .burger span:nth-child(1){top:2px} .burger span:nth-child(2){top:50%} .burger span:nth-child(3){bottom:2px}
  .burger.x span:nth-child(1){top:50%; transform:rotate(45deg)}
  .burger.x span:nth-child(2){opacity:0}
  .burger.x span:nth-child(3){bottom:auto; top:50%; transform:rotate(-45deg)}

  /* ═══════════ HERO ═══════════ */
  .hero {
    min-height:100vh; position:relative; display:flex; flex-direction:column; justify-content:center;
    padding: 9rem 4rem 5rem; overflow:hidden;
  }
  .hero-bg {
    position:absolute; inset:0; z-index:0;
    background:
      radial-gradient(ellipse 90% 55% at 78% 30%, rgba(201,151,91,0.09), transparent 65%),
      radial-gradient(ellipse 45% 60% at 12% 85%, rgba(201,151,91,0.05), transparent 60%),
      linear-gradient(170deg, #12110e 0%, var(--ink) 55%, #0b0a09 100%);
  }
  .hero-grid {
    position:absolute; inset:0; z-index:0; opacity:0.55;
    background-image:
      linear-gradient(to right, rgba(201,151,91,0.045) 1px, transparent 1px);
    background-size: 8.333% 100%;
    mask-image: linear-gradient(to bottom, transparent, black 15%, black 80%, transparent);
    -webkit-mask-image: linear-gradient(to bottom, transparent, black 15%, black 80%, transparent);
  }
  .hero-est {
    position:absolute; top:50%; inset-inline-end: -3.5rem; transform:translateY(-50%) rotate(90deg);
    transform-origin:center; font-family:var(--mono); font-size:0.62rem; letter-spacing:0.7em;
    color:var(--gold-dim); text-transform:uppercase; z-index:1; white-space:nowrap;
  }

  .hero-inner { position:relative; z-index:2; max-width:1400px; }
  .hero-kicker {
    display:flex; align-items:center; gap:1.4rem; margin-bottom:3rem;
    font-family:var(--mono); font-size:0.66rem; letter-spacing:0.4em; text-transform:uppercase; color:var(--gold);
    opacity:0; animation:heroUp 1s .5s var(--ease) forwards;
  }
  .hero-kicker::before { content:''; width:56px; height:1px; background:var(--gold); }
  .hero h1 {
    font-family:var(--serif); font-weight:300;
    font-size:clamp(3.4rem, 8.4vw, 8.2rem);
    line-height:0.98; letter-spacing:-0.015em; color:var(--cream);
    max-width:14ch;
  }
  .hero h1 .l1, .hero h1 .l2, .hero h1 .l3 { display:block; overflow:hidden; }
  .hero h1 .l1 span, .hero h1 .l2 span, .hero h1 .l3 span {
    display:block; transform:translateY(110%); animation:heroLine 1.2s var(--ease) forwards;
  }
  .hero h1 .l1 span{animation-delay:.65s} .hero h1 .l2 span{animation-delay:.8s} .hero h1 .l3 span{animation-delay:.95s}
  .hero h1 em { font-style:italic; color:var(--gold); }
  @keyframes heroLine { to{transform:translateY(0)} }
  @keyframes heroUp { from{opacity:0; transform:translateY(24px)} to{opacity:1; transform:translateY(0)} }

  .hero-foot {
    display:flex; align-items:flex-end; justify-content:space-between; gap:4rem;
    margin-top:4.5rem; flex-wrap:wrap;
  }
  .hero-sub {
    max-width:46ch; font-size:1.02rem; font-weight:300; line-height:1.85; color:var(--cream-dim);
    opacity:0; animation:heroUp 1s 1.15s var(--ease) forwards;
  }
  .hero-sub strong { color:var(--gold-bright); font-weight:400; }
  .hero-actions { display:flex; gap:1.2rem; align-items:center; opacity:0; animation:heroUp 1s 1.3s var(--ease) forwards; }

  .btn-solid, .btn-ghost {
    display:inline-flex; align-items:center; gap:0.9rem; text-decoration:none;
    font-size:0.68rem; font-weight:500; letter-spacing:0.26em; text-transform:uppercase;
    padding:1.15rem 2.6rem; transition:all .4s var(--ease); white-space:nowrap;
  }
  .btn-solid { background:var(--gold); color:var(--ink); }
  .btn-solid:hover { background:var(--gold-bright); transform:translateY(-2px); box-shadow:0 18px 48px rgba(201,151,91,0.22); }
  .btn-ghost { border:1px solid var(--gold-faint); color:var(--cream-dim); }
  .btn-ghost:hover { border-color:var(--gold); color:var(--gold); }
  .btn-solid svg, .btn-ghost svg { width:15px; height:15px; transition:transform .35s; }
  .btn-solid:hover svg { transform:translateX(4px); }

  /* ═══════════ TICKER ═══════════ */
  .ticker-wrap {
    border-top:1px solid var(--gold-ghost); border-bottom:1px solid var(--gold-ghost);
    overflow:hidden; padding:1.15rem 0; background:rgba(201,151,91,0.02);
  }
  .ticker { display:flex; width:max-content; animation:marquee 48s linear infinite; }
  .ticker:hover { animation-play-state:paused; }
  .ticker span {
    font-family:var(--mono); font-size:0.66rem; letter-spacing:0.32em; text-transform:uppercase;
    color:var(--cream-faint); padding:0 2.8rem; display:flex; align-items:center; gap:2.8rem; white-space:nowrap;
  }
  .ticker span::after { content:'◆'; font-size:0.5rem; color:var(--gold-dim); }
  @keyframes marquee { to { transform:translateX(-50%); } }

  /* ═══════════ SECTION SCAFFOLD ═══════════ */
  section { position:relative; }
  .wrap { max-width:1400px; margin:0 auto; padding:0 4rem; }
  .sec-pad { padding-top:9rem; padding-bottom:9rem; }

  .sec-head { display:grid; grid-template-columns:auto 1fr; gap:4rem; align-items:start; margin-bottom:5rem; }
  .sec-index {
    font-family:var(--mono); font-size:0.7rem; letter-spacing:0.3em; color:var(--gold);
    padding-top:0.9rem; white-space:nowrap;
  }
  .sec-title {
    font-family:var(--serif); font-weight:300; font-size:clamp(2.4rem, 4.6vw, 4.2rem);
    line-height:1.06; letter-spacing:-0.01em; max-width:18ch;
  }
  .sec-title em { font-style:italic; color:var(--gold); }
  .lead { font-size:1rem; font-weight:300; line-height:1.9; color:var(--cream-dim); max-width:58ch; }
  .lead strong { color:var(--cream); font-weight:400; }

  /* ═══════════ PROOF STRIP ═══════════ */
  .proof { background:var(--ink-2); border-top:1px solid var(--gold-ghost); border-bottom:1px solid var(--gold-ghost); }
  .proof-grid { display:grid; grid-template-columns:repeat(4,1fr); }
  .proof-cell {
    padding:4.2rem 3rem; border-inline-end:1px solid var(--gold-ghost); position:relative;
  }
  .proof-cell:last-child { border-inline-end:none; }
  .proof-num {
    font-family:var(--serif); font-weight:300; font-size:clamp(3rem,4.6vw,4.4rem);
    color:var(--gold); line-height:1; display:flex; align-items:baseline;
  }
  .proof-num sup { font-size:0.4em; margin-inline-start:0.1em; color:var(--gold-dim); }
  .proof-label {
    margin-top:1.1rem; font-size:0.68rem; font-weight:400; letter-spacing:0.24em;
    text-transform:uppercase; color:var(--cream-faint); line-height:1.8;
  }

  /* ═══════════ LEGACY / FIRM ═══════════ */
  .firm-grid { display:grid; grid-template-columns:1.05fr 0.95fr; gap:6rem; align-items:start; }
  .firm-copy p { font-size:1rem; font-weight:300; line-height:1.95; color:var(--cream-dim); margin-bottom:1.8rem; }
  .firm-copy p strong { color:var(--cream); font-weight:400; }
  .firm-copy p .gold { color:var(--gold-bright); }

  .pull {
    font-family:var(--serif); font-size:clamp(1.5rem,2.3vw,2rem); font-weight:300; font-style:italic;
    line-height:1.5; color:var(--gold-bright); padding:2.4rem 0 2.4rem 2.4rem; margin:2.6rem 0;
    border-inline-start:1px solid var(--gold-dim); position:relative;
  }
  .pull::before {
    content:'“'; position:absolute; inset-inline-start: 2rem; top:-0.6rem; font-size:4.5rem;
    color:var(--gold-faint); font-family:var(--serif); line-height:1;
  }

  /* timeline */
  .timeline { position:relative; padding-inline-start:2.6rem; margin-top:1rem; }
  .timeline::before {
    content:''; position:absolute; inset-inline-start: 6px; top:8px; bottom:8px; width:1px;
    background:linear-gradient(to bottom, var(--gold-dim), var(--gold-ghost));
  }
  .tl-item { position:relative; padding-bottom:3rem; }
  .tl-item:last-child { padding-bottom:0; }
  .tl-item::before {
    content:''; position:absolute; inset-inline-start: -2.6rem; top:7px; width:13px; height:13px;
    border:1px solid var(--gold); background:var(--ink); transform:rotate(45deg);
  }
  .tl-year { font-family:var(--mono); font-size:0.72rem; letter-spacing:0.3em; color:var(--gold); margin-bottom:0.6rem; }
  .tl-title { font-family:var(--serif); font-size:1.45rem; font-weight:400; color:var(--cream); margin-bottom:0.5rem; }
  .tl-text { font-size:0.86rem; font-weight:300; line-height:1.8; color:var(--cream-faint); max-width:44ch; }

  /* ═══════════ PRACTICES (editorial index) ═══════════ */
  .practices { background:var(--ink-2); }
  .prac-row {
    border-top:1px solid var(--gold-ghost); cursor:pointer; position:relative; overflow:hidden;
  }
  .prac-row:last-of-type { border-bottom:1px solid var(--gold-ghost); }
  .prac-row::before {
    content:''; position:absolute; inset:0; background:var(--gold-ghost);
    transform:scaleY(0); transform-origin:bottom; transition:transform .5s var(--ease); z-index:0;
  }
  .prac-row:hover::before, .prac-row.open::before { transform:scaleY(1); }
  .prac-head {
    display:grid; grid-template-columns:5.5rem 1fr auto 3.2rem; align-items:center; gap:2.4rem;
    padding:2.4rem 1.5rem; position:relative; z-index:1;
  }
  .prac-no { font-family:var(--mono); font-size:0.72rem; letter-spacing:0.28em; color:var(--gold-dim); transition:color .3s; }
  .prac-row:hover .prac-no, .prac-row.open .prac-no { color:var(--gold); }
  .prac-name {
    font-family:var(--serif); font-size:clamp(1.5rem,2.7vw,2.35rem); font-weight:300;
    color:var(--cream); transition:transform .5s var(--ease), color .3s;
  }
  .prac-row:hover .prac-name { transform:translateX(12px); color:var(--gold-bright); }
  .prac-tag { font-family:var(--mono); font-size:0.62rem; letter-spacing:0.26em; text-transform:uppercase; color:var(--cream-faint); text-align: end; }
  .prac-plus { position:relative; width:20px; height:20px; justify-self:end; }
  .prac-plus::before, .prac-plus::after {
    content:''; position:absolute; background:var(--gold); transition:transform .4s var(--ease);
  }
  .prac-plus::before { inset-inline-start: 0; inset-inline-end: 0; top:50%; height:1px; }
  .prac-plus::after { top:0; bottom:0; inset-inline-start: 50%; width:1px; }
  .prac-row.open .prac-plus::after { transform:rotate(90deg); }
  .prac-body {
    max-height:0; overflow:hidden; transition:max-height .7s var(--ease); position:relative; z-index:1;
  }
  .prac-body-inner {
    display:grid; grid-template-columns:1fr 1fr; gap:3.5rem;
    padding:0.6rem 1.5rem 3.2rem calc(5.5rem + 2.4rem + 1.5rem);
  }
  .prac-desc { font-size:0.94rem; font-weight:300; line-height:1.9; color:var(--cream-dim); }
  .prac-desc strong { color:var(--gold-bright); font-weight:400; }
  .prac-list { list-style:none; display:grid; gap:0.7rem; }
  .prac-list li {
    font-size:0.8rem; font-weight:300; letter-spacing:0.06em; color:var(--cream-faint);
    padding-inline-start:1.5rem; position:relative; line-height:1.7;
  }
  .prac-list li::before { content:'—'; position:absolute; inset-inline-start: 0; color:var(--gold-dim); }

  /* ═══════════ ARBITRATION SPOTLIGHT ═══════════ */
  .arb {
    background:
      radial-gradient(ellipse 70% 90% at 85% 20%, rgba(201,151,91,0.07), transparent 60%),
      linear-gradient(180deg, #0b0a09, var(--ink));
    border-top:1px solid var(--gold-ghost);
    overflow:hidden;
  }
  .arb::before {
    content:'ARBITRATION'; position:absolute; bottom:-0.15em; inset-inline-start: 50%; transform:translateX(-50%);
    font-family:var(--serif); font-weight:300; letter-spacing:0.12em;
    font-size:clamp(4rem, 12.5vw, 11rem); color:rgba(201,151,91,0.035);
    white-space:nowrap; pointer-events:none; line-height:1;
  }
  .arb-head { max-width:900px; margin-bottom:5rem; position:relative; z-index:1; }
  .arb-cols { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--gold-ghost); border:1px solid var(--gold-ghost); position:relative; z-index:1; }
  .arb-col { background:var(--ink); padding:3rem 2.6rem; transition:background .4s; }
  .arb-col:hover { background:var(--ink-3); }
  .arb-col-no { font-family:var(--mono); font-size:0.62rem; letter-spacing:0.3em; color:var(--gold-dim); margin-bottom:1.6rem; }
  .arb-col h4 { font-family:var(--serif); font-size:1.5rem; font-weight:400; color:var(--cream); margin-bottom:1rem; line-height:1.3; }
  .arb-col p { font-size:0.87rem; font-weight:300; line-height:1.9; color:var(--cream-faint); }
  .arb-col p strong { color:var(--gold-bright); font-weight:400; }
  .arb-note {
    margin-top:3.2rem; padding:2rem 2.6rem; border:1px solid var(--gold-faint);
    background:linear-gradient(100deg, rgba(201,151,91,0.05), transparent 70%);
    font-size:0.9rem; font-weight:300; line-height:1.9; color:var(--cream-dim);
    position:relative; z-index:1;
  }
  .arb-note strong { color:var(--gold-bright); font-weight:400; }

  /* ═══════════ GROUP (DML + DMF) ═══════════ */
  .group-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--gold-ghost); border:1px solid var(--gold-ghost); margin-top:4rem; }
  .group-card { background:var(--ink); padding:3.6rem 3.2rem; position:relative; overflow:hidden; transition:background .5s; }
  .group-card:hover { background:var(--ink-3); }
  .group-card::after {
    content:''; position:absolute; top:0; inset-inline-start: 0; inset-inline-end: 0; height:1px; background:var(--gold);
    transform:scaleX(0); transform-origin:left; transition:transform .7s var(--ease);
  }
  .group-card:hover::after { transform:scaleX(1); }
  .group-logo { height:52px; width:auto; margin-bottom:2.2rem; display:block; }
  .group-abbr { font-family:var(--mono); font-size:0.66rem; letter-spacing:0.4em; color:var(--gold); margin-bottom:1.6rem; text-transform:uppercase; }
  .group-name { font-family:var(--serif); font-size:1.9rem; font-weight:300; color:var(--cream); margin-bottom:1.4rem; line-height:1.25; }
  .group-desc { font-size:0.9rem; font-weight:300; line-height:1.9; color:var(--cream-dim); margin-bottom:2rem; }
  .group-items { list-style:none; display:grid; gap:0.65rem; }
  .group-items li { font-size:0.78rem; letter-spacing:0.08em; color:var(--cream-faint); padding-inline-start:1.4rem; position:relative; }
  .group-items li::before { content:'◆'; position:absolute; inset-inline-start: 0; top:0.35em; font-size:0.4rem; color:var(--gold-dim); }

  .mandate {
    margin-top:5rem; border:1px solid var(--gold-faint); padding:3.4rem 3.2rem;
    display:grid; grid-template-columns:auto 1fr; gap:3rem; align-items:center;
    background:linear-gradient(120deg, rgba(201,151,91,0.05), transparent 60%);
  }
  .mandate-icon {
    width:64px; height:64px; border:1px solid var(--gold-dim); display:grid; place-items:center; color:var(--gold);
  }
  .mandate-icon svg { width:26px; height:26px; }
  .mandate h3 { font-family:var(--serif); font-size:1.7rem; font-weight:400; color:var(--cream); margin-bottom:0.8rem; }
  .mandate p { font-size:0.92rem; font-weight:300; line-height:1.9; color:var(--cream-dim); max-width:70ch; }
  .mandate p strong { color:var(--gold-bright); font-weight:400; }

  /* ═══════════ INTELLIGENCE / TECH ═══════════ */
  .tech { background:linear-gradient(180deg, var(--ink) 0%, #0a0908 100%); overflow:hidden; }
  .tech-bg-code {
    position:absolute; inset:0; opacity:0.05; pointer-events:none;
    font-family:var(--mono); font-size:0.6rem; line-height:2.4; letter-spacing:0.15em;
    color:var(--gold); white-space:pre; padding:4rem;
    mask-image:radial-gradient(ellipse 70% 60% at 75% 40%, black, transparent 75%);
    -webkit-mask-image:radial-gradient(ellipse 70% 60% at 75% 40%, black, transparent 75%);
  }
  .tech-grid { display:grid; grid-template-columns:0.9fr 1.1fr; gap:6rem; align-items:start; position:relative; z-index:1; }
  .tech-sticky { position:sticky; top:9rem; }
  .tech-feats { display:grid; gap:1px; background:var(--gold-ghost); border:1px solid var(--gold-ghost); }
  .tech-feat { background:var(--ink); padding:2.8rem 2.6rem; transition:background .4s; position:relative; }
  .tech-feat:hover { background:var(--ink-3); }
  .tech-feat-no { font-family:var(--mono); font-size:0.62rem; letter-spacing:0.3em; color:var(--gold-dim); margin-bottom:1.4rem; }
  .tech-feat h4 { font-family:var(--serif); font-size:1.4rem; font-weight:400; color:var(--cream); margin-bottom:0.9rem; }
  .tech-feat p { font-size:0.86rem; font-weight:300; line-height:1.85; color:var(--cream-faint); }
  .tech-note {
    margin-top:2.4rem; font-family:var(--mono); font-size:0.66rem; letter-spacing:0.2em;
    line-height:2.1; color:var(--gold-dim); text-transform:uppercase;
  }

  /* ═══════════ LEADERSHIP ═══════════ */
  .lead-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--gold-ghost); border:1px solid var(--gold-ghost); }
  .lead-card { background:var(--ink-2); padding:3.8rem 3.4rem; position:relative; overflow:hidden; }
  .lead-portrait {
    width:100%; aspect-ratio:4/4.4; margin-bottom:2.6rem; position:relative;
    background:
      radial-gradient(ellipse 70% 60% at 50% 35%, rgba(201,151,91,0.1), transparent 70%),
      repeating-linear-gradient(45deg, transparent, transparent 14px, rgba(201,151,91,0.025) 14px, rgba(201,151,91,0.025) 15px),
      var(--ink-3);
    border:1px solid var(--gold-ghost); display:grid; place-items:center;
  }
  .lead-portrait span {
    font-family:var(--serif); font-size:4.5rem; font-weight:300; color:var(--gold-faint); letter-spacing:0.1em;
  }
  .lead-portrait::after {
    content:attr(data-caption); position:absolute; bottom:1rem; inset-inline-start: 1.2rem;
    font-family:var(--mono); font-size:0.56rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--gold-dim);
  }
  .lead-role { font-family:var(--mono); font-size:0.62rem; letter-spacing:0.34em; text-transform:uppercase; color:var(--gold); margin-bottom:1rem; }
  .lead-name { font-family:var(--serif); font-size:2.1rem; font-weight:300; color:var(--cream); margin-bottom:1.3rem; }
  .lead-bio { font-size:0.9rem; font-weight:300; line-height:1.9; color:var(--cream-dim); margin-bottom:2rem; }
  .lead-creds { list-style:none; display:grid; gap:0.7rem; border-top:1px solid var(--gold-ghost); padding-top:1.8rem; }
  .lead-creds li {
    font-size:0.76rem; font-weight:300; letter-spacing:0.05em; line-height:1.7; color:var(--cream-faint);
    display:grid; grid-template-columns:auto 1fr; gap:0.9rem; align-items:baseline;
  }
  .lead-creds li b { font-family:var(--mono); font-size:0.6rem; letter-spacing:0.2em; color:var(--gold-dim); font-weight:400; text-transform:uppercase; }

  /* ═══════════ STANDARD (how we work) ═══════════ */
  .standard { background:var(--ink-2); }
  .std-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:4rem 3.5rem; margin-top:1rem; }
  .std-item { position:relative; padding-top:2.2rem; }
  .std-item::before {
    content:''; position:absolute; top:0; inset-inline-start: 0; width:44px; height:1px; background:var(--gold);
  }
  .std-item h4 { font-family:var(--serif); font-size:1.35rem; font-weight:400; color:var(--cream); margin-bottom:0.9rem; }
  .std-item p { font-size:0.86rem; font-weight:300; line-height:1.85; color:var(--cream-faint); }

  /* ═══════════ CTA BAND ═══════════ */
  .cta-band { padding:10rem 4rem; text-align:center; position:relative; overflow:hidden; }
  .cta-band::before {
    content:'DML'; position:absolute; top:50%; inset-inline-start: 50%; transform:translate(-50%,-50%);
    font-family:var(--serif); font-size:34vw; font-weight:300; letter-spacing:0.08em;
    color:rgba(201,151,91,0.028); pointer-events:none; line-height:1;
  }
  .cta-band h2 {
    font-family:var(--serif); font-weight:300; font-size:clamp(2.6rem,5.4vw,4.8rem);
    line-height:1.1; max-width:22ch; margin:0 auto 2.2rem; position:relative;
  }
  .cta-band h2 em { font-style:italic; color:var(--gold); }
  .cta-band p { font-size:0.98rem; font-weight:300; color:var(--cream-dim); max-width:52ch; margin:0 auto 3.2rem; line-height:1.9; position:relative; }
  .cta-band .btn-solid { position:relative; }

  /* ═══════════ CONTACT ═══════════ */
  .contact { border-top:1px solid var(--gold-ghost); }
  .contact-grid { display:grid; grid-template-columns:0.9fr 1.1fr; gap:6rem; }
  .c-block { margin-bottom:2.6rem; }
  .c-block h4 { font-family:var(--mono); font-size:0.62rem; letter-spacing:0.34em; text-transform:uppercase; color:var(--gold); margin-bottom:0.9rem; }
  .c-block p, .c-block a { font-size:0.95rem; font-weight:300; line-height:1.85; color:var(--cream-dim); text-decoration:none; transition:color .3s; }
  .c-block a:hover { color:var(--gold-bright); }

  .form { display:grid; gap:2rem; }
  .form-2 { display:grid; grid-template-columns:1fr 1fr; gap:2rem; }
  .fld { display:grid; gap:0.7rem; }
  .fld label { font-family:var(--mono); font-size:0.6rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--cream-faint); }
  .fld input, .fld textarea, .fld select {
    background:transparent; border:none; border-bottom:1px solid var(--gold-faint);
    padding:0.85rem 0; font-family:var(--sans); font-size:0.94rem; font-weight:300;
    color:var(--cream); outline:none; transition:border-color .35s; border-radius:0;
  }
  .fld select { cursor:pointer; }
  .fld select option { background:var(--ink-2); color:var(--cream); }
  .fld input:focus, .fld textarea:focus, .fld select:focus { border-color:var(--gold); }
  .fld textarea { resize:vertical; min-height:110px; }
  .fld ::placeholder { color:rgba(244,239,230,0.18); }
  .form-note { font-size:0.72rem; font-weight:300; line-height:1.8; color:var(--cream-faint); max-width:52ch; }

  /* ═══════════ FOOTER ═══════════ */
  footer { border-top:1px solid var(--gold-ghost); padding:4.5rem 4rem 2.6rem; }
  .foot-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:4rem; margin-bottom:4rem; }
  .foot-logo { width:min(300px, 100%); height:auto; display:block; }
  .foot-tag { margin-top:1.4rem; font-size:0.82rem; font-weight:300; line-height:1.85; color:var(--cream-faint); max-width:34ch; }
  .foot-col h5 { font-family:var(--mono); font-size:0.6rem; letter-spacing:0.32em; text-transform:uppercase; color:var(--gold-dim); margin-bottom:1.4rem; }
  .foot-col a { display:block; font-size:0.8rem; font-weight:300; color:var(--cream-faint); text-decoration:none; margin-bottom:0.8rem; transition:color .3s; }
  .foot-col a:hover { color:var(--gold-bright); }
  .foot-base {
    display:flex; justify-content:space-between; align-items:center; gap:2rem; flex-wrap:wrap;
    padding-top:2.2rem; border-top:1px solid var(--gold-ghost);
  }
  .foot-base p { font-family:var(--mono); font-size:0.62rem; letter-spacing:0.14em; color:rgba(244,239,230,0.22); }

  /* ═══════════ MOBILE ═══════════ */
  @media (max-width:1080px) {
    .wrap, header, .hero, footer, .cta-band { padding-inline-start:2.2rem; padding-inline-end:2.2rem; }
    .proof-grid { grid-template-columns:repeat(2,1fr); }
    .proof-cell:nth-child(2) { border-inline-end:none; }
    .proof-cell { border-bottom:1px solid var(--gold-ghost); }
    .proof-cell:nth-child(3), .proof-cell:nth-child(4) { border-bottom:none; }
    .firm-grid, .tech-grid, .contact-grid { grid-template-columns:1fr; gap:4rem; }
    .tech-sticky { position:static; }
    .std-grid { grid-template-columns:repeat(2,1fr); }
    .arb-cols { grid-template-columns:1fr; }
  }
  @media (max-width:760px) {
    nav { display:none; }
    nav.open {
      display:flex; flex-direction:column; position:fixed; inset:0;
      background:rgba(14,13,11,0.97); backdrop-filter:blur(24px);
      align-items:center; justify-content:center; gap:2.2rem; z-index:1100;
    }
    nav.open > a { font-size:0.95rem; }
    .burger { display:block; }
    .brand img { height:32px; }
    header.scrolled .brand img { height:28px; }

    .hero { padding:8rem 1.5rem 4rem; }
    .hero-est { display:none; }
    .hero-foot { margin-top:3rem; }
    .wrap, header, footer, .cta-band { padding-inline-start:1.5rem; padding-inline-end:1.5rem; }
    .sec-pad { padding-top:5.5rem; padding-bottom:5.5rem; }
    .sec-head { grid-template-columns:1fr; gap:1.4rem; margin-bottom:3rem; }
    .proof-grid { grid-template-columns:1fr; }
    .proof-cell { border-inline-end:none !important; border-bottom:1px solid var(--gold-ghost) !important; padding:2.6rem 1.8rem; }
    .proof-cell:last-child { border-bottom:none !important; }
    .prac-head { grid-template-columns:3rem 1fr 2rem; gap:1.2rem; padding:1.9rem 0.5rem; }
    .prac-tag { display:none; }
    .prac-body-inner { grid-template-columns:1fr; padding:0.4rem 0.5rem 2.4rem 0.5rem; gap:2rem; }
    .group-grid, .lead-grid { grid-template-columns:1fr; }
    .group-card, .lead-card { padding:2.6rem 1.8rem; }
    .mandate { grid-template-columns:1fr; padding:2.4rem 1.8rem; }
    .std-grid { grid-template-columns:1fr; gap:2.8rem; }
    .form-2 { grid-template-columns:1fr; }
    .foot-grid { grid-template-columns:1fr; gap:2.6rem; }
    .arb-col { padding:2.4rem 1.8rem; }
    .arb-note { padding:1.8rem 1.6rem; }
  }
  @media (prefers-reduced-motion:reduce) {
    *, *::before, *::after { animation-duration:0.01ms !important; transition-duration:0.01ms !important; }
    .rv { opacity:1; transform:none; }
  }
