
  :root{
    --ink: #03193B;
    --navy: #062F6F;
    --navy-2: #0A3A85;
    --red: #D62828;
    --red-deep: #B71F1F;
    --paper: #F1F3F6;
    --paper-2: #E3E7ED;
    --white: #FFFFFF;
    --text: #1B2436;
    --muted: #2F353F;
    --line: rgba(3, 25, 59, .14);
    --line-dark: rgba(255, 255, 255, .16);
    --on-dark: #FFFFFF;
    --on-dark-muted: #B8C4D8;
    --focus: #FFC221;

    --font-display: "Bebas Neue", Impact, "Arial Narrow", sans-serif;
    --font-body: Helvetica, "Helvetica Neue", Arial, sans-serif;
    --font-ui: "Oswald", "Arial Narrow", sans-serif;

    --fs-body: 16px;
    --fs-lead: 18px;
    --w: 1420px;
    --gutter: 16px;
    --header: 64px;
    --s1: 8px; --s2: 16px; --s3: 24px; --s4: 32px; --s5: 48px; --s6: 64px; --s7: 96px; --s8: 128px;
    --section-y: var(--s6);
    --r: 4px;
    --ease: cubic-bezier(.2, .7, .2, 1);
    --dur: 200ms;
    --shadow: 0 16px 48px rgba(3, 25, 59, .18);
    --grain: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  1 0 0 0 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  }
  @media (min-width: 480px) { :root{ --gutter: 24px; } }
  @media (min-width: 768px) { :root{ --fs-body: 17px; --fs-lead: 20px; --header: 72px; --section-y: var(--s7); } }



  .wp-site-blocks *, .wp-site-blocks *::before, .wp-site-blocks *::after{ box-sizing: border-box; }
  html{ -webkit-text-size-adjust: 100%; }
  body{
    margin: 0;
    font-family: var(--font-body); font-size: var(--fs-body); line-height: 1.55;
    color: var(--text); background: var(--paper);
    -webkit-font-smoothing: antialiased;
  }
  .wp-site-blocks h1, .wp-site-blocks h2, .wp-site-blocks h3{ font-family: var(--font-display); font-weight: 400; letter-spacing: .01em; color: var(--navy); margin: 0 0 var(--s3); text-wrap: balance; }
  .wp-site-blocks h2{ font-size: clamp(34px, 2.2vw + 18px, 52px); line-height: 1.02; }
  .wp-site-blocks h3{ font-size: clamp(26px, 1vw + 18px, 32px); line-height: 1.05; }
  .wp-site-blocks p{ margin: 0 0 var(--s2); }
  .wp-site-blocks p:last-child{ margin-bottom: 0; }
  .wp-site-blocks ul, .wp-site-blocks dl{ margin: 0; padding: 0; list-style: none; }
  .wp-site-blocks dd{ margin: 0; }
  .wp-site-blocks a{ color: var(--red); text-decoration: none; }
  .wp-site-blocks a:hover{ color: var(--red-deep); }
  .wp-site-blocks img, .wp-site-blocks svg{ display: block; max-width: 100%; height: auto; }
  .wp-site-blocks address{ font-style: normal; }
  .wp-site-blocks strong{ font-weight: 700; }
  .wp-site-blocks :focus-visible{ outline: 2px solid var(--focus); outline-offset: 3px; }
  @media (prefers-reduced-motion: reduce) {
    .wp-site-blocks *, .wp-site-blocks *::before, .wp-site-blocks *::after{ animation: none !important; transition: none !important; }
  }



  .wp-site-blocks .v2-wrap{ width: 100%; max-width: calc(var(--w) + 2 * var(--gutter)); margin-inline: auto; padding-inline: var(--gutter); }
  .wp-site-blocks .v2-skip{ position: absolute; left: var(--gutter); top: -100px; z-index: 100; padding: 12px 20px; background: var(--navy); color: #fff; font-family: var(--font-ui); }
  .wp-site-blocks .v2-skip:focus{ top: var(--gutter); }

  .wp-site-blocks .v2-section{ padding-block: var(--section-y); }
  .wp-site-blocks .v2-section--paper{ background: var(--paper); }
  .wp-site-blocks .v2-section__head{ max-width: 760px; margin: 0 auto var(--s5); text-align: center; }
  .wp-site-blocks .v2-section__head h2{ margin: 0; }
  .wp-site-blocks .v2-section__head--light h2{ color: #fff; }

  .wp-site-blocks .v2-eyebrow{ display: block; margin: 0 0 var(--s2); font-family: var(--font-ui); font-size: 13px; line-height: 1.2; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
  .wp-site-blocks .v2-eyebrow--light{ color: var(--on-dark-muted); }
  .wp-site-blocks .v2-hero__band-in .v2-eyebrow{ margin-bottom: 12px; }
  @media (min-width: 768px) { .wp-site-blocks .v2-eyebrow{ font-size: 14px; } }
  .wp-site-blocks .v2-stripe{
    --b: var(--navy);
    display: inline-block; vertical-align: 1px; width: 52px; height: 10px; margin-right: 12px; transform: skewX(-24deg);
    background: linear-gradient(90deg, var(--red) 0 10px, transparent 10px 15px, var(--b) 15px 25px, transparent 25px 30px, var(--red) 30px 40px, transparent 40px 45px, var(--b) 45px 52px);
  }
  .wp-site-blocks .v2-stripe--dark{ --b: #fff; }
  .wp-site-blocks .v2-dot{ display: inline-block; width: 5px; height: 5px; margin: 0 8px; background: var(--red); transform: rotate(45deg); vertical-align: middle; }
  .wp-site-blocks .v2-lead{ font-size: var(--fs-lead); line-height: 1.5; color: var(--muted); }
  .wp-site-blocks .v2-icon{ width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
  .wp-site-blocks .v2-arrow{ width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform var(--dur) var(--ease); }

  .wp-site-blocks .v2-btn:not(:where(.wp-block-button)), .wp-site-blocks .v2-btn > .wp-block-button__link{
    display: inline-flex; align-items: center; justify-content: center; gap: 10px;
    min-height: 52px; padding: 12px 26px;
    font-family: var(--font-ui); font-weight: 500; font-size: 15px; letter-spacing: .08em; text-transform: uppercase; line-height: 1.1; text-align: center;
    border: 2px solid transparent; border-radius: 0; cursor: pointer; text-decoration: none;
    transition: background-color var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur) var(--ease);
  }
  .wp-site-blocks .v2-btn:not(:where(.wp-block-button)):active, .wp-site-blocks .v2-btn:active > .wp-block-button__link{ transform: translateY(1px); }
  .wp-site-blocks .v2-btn--red:not(:where(.wp-block-button)), .wp-site-blocks .v2-btn--red > .wp-block-button__link{ background: var(--red); border-color: var(--red); color: #fff; }
  .wp-site-blocks .v2-btn--red:not(:where(.wp-block-button)):hover, .wp-site-blocks .v2-btn--red:hover > .wp-block-button__link{ background: var(--red-deep); border-color: var(--red-deep); color: #fff; }
  .wp-site-blocks .v2-btn--navy:not(:where(.wp-block-button)), .wp-site-blocks .v2-btn--navy > .wp-block-button__link{ background: var(--navy); border-color: var(--navy); color: #fff; }
  .wp-site-blocks .v2-btn--navy:not(:where(.wp-block-button)):hover, .wp-site-blocks .v2-btn--navy:hover > .wp-block-button__link{ background: var(--navy-2); border-color: var(--navy-2); color: #fff; }
  .wp-site-blocks .v2-btn--wine:not(:where(.wp-block-button)), .wp-site-blocks .v2-btn--wine > .wp-block-button__link{ background: #8C1C24; border-color: #8C1C24; color: #fff; }
  .wp-site-blocks .v2-btn--wine:not(:where(.wp-block-button)):hover, .wp-site-blocks .v2-btn--wine:hover > .wp-block-button__link{ background: #6E141B; border-color: #6E141B; color: #fff; }
  .wp-site-blocks .v2-btn--paper:not(:where(.wp-block-button)), .wp-site-blocks .v2-btn--paper > .wp-block-button__link{ background: var(--paper); border-color: var(--paper); color: var(--navy); }
  .wp-site-blocks .v2-btn--paper:not(:where(.wp-block-button)):hover, .wp-site-blocks .v2-btn--paper:hover > .wp-block-button__link{ background: #fff; border-color: #fff; color: var(--navy); }
  .wp-site-blocks .v2-btn:hover .v2-arrow{ transform: translateX(4px); }
  @media (max-width: 479.98px) { .wp-site-blocks .v2-btn:not(.v2-header__cta):not(.v2-stickybar .v2-btn):not(.v2-door__cta){ width: 100%; } }

  /* Header */
  .wp-site-blocks .v2-header{ position: sticky; top: 0; z-index: 50; background: var(--ink); border-bottom: 1px solid var(--line-dark); }
  .wp-site-blocks .v2-header__in{ display: flex; align-items: center; justify-content: space-between; gap: var(--s2); height: var(--header); }
  .wp-site-blocks .v2-header__logo img{ height: 32px; width: auto; }
  .wp-site-blocks .v2-header__actions{ display: flex; align-items: center; gap: var(--s2); }
  .wp-site-blocks .v2-header__tel{ display: inline-flex; align-items: center; gap: 8px; min-height: 44px; min-width: 44px; padding: 0 10px; font-family: var(--font-ui); font-size: 18px; letter-spacing: .02em; color: #fff; border: 1px solid var(--line-dark); }
  .wp-site-blocks .v2-header__tel:hover{ color: #fff; border-color: #fff; }
  .wp-site-blocks .v2-header__tel-text{ display: none; }
  .wp-site-blocks .v2-header__cta{ min-height: 44px; padding: 8px 16px; font-size: 13px; }
  .wp-site-blocks .v2-long{ display: none; }
  @media (min-width: 480px) { .wp-site-blocks .v2-long{ display: inline; } .wp-site-blocks .v2-short{ display: none; } }
  @media (min-width: 768px) {
    .wp-site-blocks .v2-header__logo img{ height: 40px; }
    .wp-site-blocks .v2-header__tel{ border-color: transparent; padding: 0 4px; }
    .wp-site-blocks .v2-header__tel-text{ display: inline; }
    .wp-site-blocks .v2-header__cta{ min-height: 48px; padding: 10px 22px; font-size: 14px; }
  }
  @media (min-width: 1024px) { .wp-site-blocks .v2-header__logo img{ height: 44px; } .wp-site-blocks .v2-header__actions{ gap: var(--s3); } }

  /* Hero */
  .wp-site-blocks .v2-hero{ position: relative; isolation: isolate; background: var(--ink); color: #fff; }
  .wp-site-blocks .v2-hero__band{ position: relative; overflow: hidden; padding-block: clamp(28px, 2.8vw, 40px) clamp(20px, 2vw, 28px); }
  .wp-site-blocks .v2-hero__band::before{ content: ""; position: absolute; inset: 0; background: var(--grain); opacity: .09; pointer-events: none; }
  .wp-site-blocks .v2-hero__band::after{ content: ""; position: absolute; inset: 0; background: radial-gradient(60% 90% at 50% 120%, rgba(10, 58, 133, .55), transparent 70%); pointer-events: none; }
  .wp-site-blocks .v2-hero__band-in{ position: relative; z-index: 1; max-width: 1200px; margin-inline: auto; text-align: center; }
  .wp-site-blocks .v2-hero__title{ color: #fff; font-size: clamp(40px, 3.4vw + 16px, 66px); line-height: .96; margin: 0 auto 12px; }
  .wp-site-blocks .v2-hero__lead{ max-width: 72ch; margin-inline: auto; font-size: 18px; line-height: 1.45; color: var(--on-dark-muted); }
  .wp-site-blocks .v2-hero__lead strong{ color: #fff; }

  .wp-site-blocks .v2-doors{ position: relative; display: grid; grid-template-columns: 1fr; grid-template-rows: auto 6px auto; }
  .wp-site-blocks .v2-doors__seam{ background: linear-gradient(90deg, var(--red) 0 34%, #fff 34% 67%, var(--navy-2) 67%); }
  @media (min-width: 768px) {
    .wp-site-blocks .v2-doors{ grid-template-columns: 1fr 6px 1fr; grid-template-rows: none; transition: grid-template-columns 600ms var(--ease); }
    .wp-site-blocks .v2-doors:has(.v2-door--call:hover){ grid-template-columns: 1.12fr 6px .88fr; }
    .wp-site-blocks .v2-doors:has(.v2-door--zoom:hover){ grid-template-columns: .88fr 6px 1.12fr; }
    .wp-site-blocks .v2-doors__seam{ background: linear-gradient(180deg, var(--red) 0 34%, #fff 34% 67%, var(--navy-2) 67%); }
  }
  .wp-site-blocks .v2-door{
    position: relative; isolation: isolate; overflow: hidden;
    display: flex; flex-direction: column; justify-content: flex-end;
    min-height: clamp(440px, 110vw, 560px);
    padding: clamp(24px, 3vw, 48px);
    color: #fff; text-decoration: none;
  }
  @media (min-width: 768px) { .wp-site-blocks .v2-door{ min-height: clamp(400px, calc(100svh - 332px), 640px); } }
  .wp-site-blocks .v2-door:focus-visible{ outline: 3px solid var(--focus); outline-offset: -8px; }
  .wp-site-blocks .v2-door__photo{ position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: 45% 25%; transition: transform 900ms var(--ease); }
  .wp-site-blocks .v2-door--call .v2-door__photo{ transform: scaleX(-1); object-position: 55% 25%; }
  .wp-site-blocks .v2-door--zoom .v2-door__photo{ object-position: 60% 40%; transform: scale(1.18); transform-origin: 12% 45%; }
  .wp-site-blocks .v2-door::before{ content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(3, 25, 59, .32) 0%, rgba(3, 25, 59, .48) 42%, rgba(3, 25, 59, .93) 100%); transition: opacity 600ms var(--ease); }
  .wp-site-blocks .v2-door::after{ content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; }
  .wp-site-blocks .v2-door--call::after{ background: radial-gradient(70% 60% at 100% 0%, rgba(214, 40, 40, .42), transparent 70%); }
  .wp-site-blocks .v2-door--zoom::after{ background: radial-gradient(70% 60% at 100% 0%, rgba(10, 58, 133, .6), transparent 70%); }
  .wp-site-blocks .v2-door:hover .v2-door__photo{ transform: scale(1.045); }
  .wp-site-blocks .v2-door--call:hover .v2-door__photo{ transform: scaleX(-1) scale(1.045); }
  .wp-site-blocks .v2-door--zoom:hover .v2-door__photo{ transform: scale(1.23); }
  .wp-site-blocks .v2-door:hover::before{ opacity: .88; }
  .wp-site-blocks .v2-door__num{
    position: absolute; top: clamp(8px, 1.4vw, 20px); right: clamp(20px, 3vw, 44px); z-index: 1;
    display: flex; align-items: flex-start; gap: 6px;
    font-family: var(--font-display); font-size: clamp(120px, 13vw, 220px); line-height: .85; letter-spacing: -.01em;
    color: #fff; opacity: .96; text-shadow: 0 10px 40px rgba(3, 25, 59, .55);
  }
  .wp-site-blocks .v2-door__num small{ font-family: var(--font-ui); font-size: clamp(15px, 1.3vw, 22px); letter-spacing: .16em; text-transform: uppercase; color: var(--on-dark-muted); margin-top: clamp(16px, 1.8vw, 32px); text-shadow: none; }
  .wp-site-blocks .v2-door__body{ position: relative; z-index: 1; display: flex; flex-direction: column; gap: 12px; max-width: 36ch; }
  .wp-site-blocks .v2-door__body .v2-eyebrow{ margin: 0; }
  .wp-site-blocks .v2-door__title{ display: block; font-family: var(--font-display); font-size: clamp(30px, 2vw + 12px, 44px); line-height: 1; color: #fff; text-wrap: balance; }
  .wp-site-blocks .v2-door__text{ display: block; font-size: var(--fs-body); line-height: 1.5; color: var(--on-dark-muted); }
  .wp-site-blocks .v2-meta{ display: flex; flex-wrap: wrap; gap: 6px 0; font-family: var(--font-ui); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--on-dark-muted); }
  .wp-site-blocks .v2-meta > *{ display: inline-flex; align-items: center; }
  .wp-site-blocks .v2-meta > * + *::before{ content: ""; width: 4px; height: 4px; margin: 0 10px; background: var(--red); transform: rotate(45deg); }
  .wp-site-blocks .v2-door__cta{ align-self: flex-start; margin-top: 6px; }
  .wp-site-blocks .v2-door:hover .v2-arrow{ transform: translateX(4px); }

  .wp-site-blocks .v2-rise{ animation: v2-rise .8s var(--ease) both; animation-delay: calc(var(--i, 0) * 100ms + 60ms); }
  @keyframes v2-rise { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }

  /* Ticker */
  .wp-site-blocks .v2-ticker{ overflow: hidden; background: var(--paper); border-bottom: 1px solid var(--line); padding-block: 14px; }
  .wp-site-blocks .v2-ticker__track{ display: flex; width: max-content; animation: v2-marquee 56s linear infinite; }
  .wp-site-blocks .v2-ticker:hover .v2-ticker__track{ animation-play-state: paused; }
  .wp-site-blocks .v2-ticker__track li{ display: inline-flex; align-items: center; padding-inline: 22px; font-family: var(--font-ui); font-size: 14px; letter-spacing: .14em; text-transform: uppercase; color: var(--navy); white-space: nowrap; }
  .wp-site-blocks .v2-ticker__track li::before{ content: ""; width: 6px; height: 6px; margin-right: 22px; background: var(--red); transform: rotate(45deg); }
  @keyframes v2-marquee { to { transform: translateX(-50%); } }
  @media (prefers-reduced-motion: reduce) {
    .wp-site-blocks .v2-ticker__track{ width: auto; flex-wrap: wrap; justify-content: center; row-gap: 8px; }
    .wp-site-blocks .v2-ticker__track li[aria-hidden]{ display: none; }
  }

  /* Video */
  .wp-site-blocks .v2-video-grid{ display: grid; grid-template-columns: 1fr; gap: var(--s5); align-items: center; }
  @media (min-width: 1024px) { .wp-site-blocks .v2-video-grid{ grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: var(--s7); } }
  .wp-site-blocks .v2-video-copy h2{ margin-bottom: var(--s3); }
  .wp-site-blocks .v2-video-title{ margin-top: var(--s4); padding-top: var(--s3); border-top: 1px solid var(--line); font-family: var(--font-display); font-size: 26px; line-height: 1.1; color: var(--navy); }
  .wp-site-blocks .v2-video-title__label{ display: block; margin-bottom: 6px; font-family: var(--font-ui); font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--red); }
  .wp-site-blocks .v2-video{ position: relative; aspect-ratio: 16 / 9; overflow: hidden; isolation: isolate; background: var(--ink); box-shadow: var(--shadow); }
  .wp-site-blocks .v2-video::before{ content: ""; position: absolute; top: 16px; left: 16px; z-index: 3; width: 72px; height: 72px; border-top: 3px solid var(--red); border-left: 3px solid var(--red); pointer-events: none; }
  .wp-site-blocks .v2-video::after{ content: ""; position: absolute; right: 16px; bottom: 16px; z-index: 3; width: 72px; height: 72px; border-bottom: 3px solid var(--red); border-right: 3px solid var(--red); pointer-events: none; }
  .wp-site-blocks .v2-video__img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 700ms var(--ease); }
  .wp-site-blocks .v2-video:hover .v2-video__img{ transform: scale(1.03); }
  .wp-site-blocks .v2-video__shade{ position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(3, 25, 59, .05), rgba(3, 25, 59, .5)); }
  .wp-site-blocks .v2-video__play{ position: absolute; left: 50%; top: 50%; z-index: 2; width: 84px; height: 84px; margin: -42px 0 0 -42px; display: grid; place-items: center; background: var(--red); color: #fff; border: 0; border-radius: 50%; cursor: pointer; box-shadow: 0 12px 32px rgba(0, 0, 0, .35); transition: transform var(--dur) var(--ease), background-color var(--dur) var(--ease); }
  .wp-site-blocks .v2-video__play svg{ width: 36px; height: 36px; fill: currentColor; margin-left: 4px; }
  .wp-site-blocks .v2-video__play:hover{ transform: scale(1.06); background: var(--red-deep); }
  .wp-site-blocks .v2-video__note{ position: absolute; right: 24px; bottom: 100px; z-index: 2; font-family: var(--font-ui); font-size: 13px; letter-spacing: .06em; color: var(--on-dark-muted); }
  .wp-site-blocks .v2-video iframe{ position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
  .wp-site-blocks .v2-video.is-playing::before, .wp-site-blocks .v2-video.is-playing::after{ display: none; }

  /* Compare */
  .wp-site-blocks .v2-compare{ background: var(--paper); }
  .wp-site-blocks .v2-video-section, .wp-site-blocks .v2-better{ background: var(--white); }
  .wp-site-blocks .v2-plans{ position: relative; display: grid; grid-template-columns: 1fr; gap: var(--s4); }
  @media (min-width: 900px) { .wp-site-blocks .v2-plans{ grid-template-columns: 1fr 1fr; gap: var(--s7); } }
  .wp-site-blocks .v2-plan{
    --accent: var(--navy); --tint: rgba(6, 47, 111, .06); --tint-hover: rgba(6, 47, 111, .10);
    position: relative; display: flex; flex-direction: column; overflow: hidden;
    background: var(--white);
    border: 1px solid var(--line); border-top: 4px solid var(--accent); border-radius: 6px;
    box-shadow: 0 2px 6px rgba(3, 25, 59, .05), 0 12px 32px rgba(3, 25, 59, .08);
    transition: transform 350ms var(--ease), box-shadow 350ms var(--ease);
  }
  .wp-site-blocks .v2-plan--call{ --accent: var(--red); --tint: rgba(214, 40, 40, .06); --tint-hover: rgba(214, 40, 40, .10); }
  html.js .v2-plan[data-reveal].is-in{ transition: opacity .7s var(--ease), transform 350ms var(--ease), box-shadow 350ms var(--ease); }
  .wp-site-blocks .v2-plan:hover, html.js .v2-plan[data-reveal].is-in:hover{ transform: translateY(-6px); box-shadow: 0 6px 14px rgba(3, 25, 59, .08), 0 28px 60px rgba(3, 25, 59, .18); }
  .wp-site-blocks .v2-plan__head{ position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column; justify-content: flex-end; min-height: clamp(200px, 15vw, 240px); padding: var(--s3); color: #fff; }
  .wp-site-blocks .v2-plan__photo{ position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: 45% 30%; transition: transform 900ms var(--ease); }
  .wp-site-blocks .v2-plan--call .v2-plan__photo{ transform: scaleX(-1); object-position: 55% 30%; }
  .wp-site-blocks .v2-plan--zoom .v2-plan__photo{ object-position: 60% 35%; }
  .wp-site-blocks .v2-plan__head::before{ content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(3, 25, 59, .28) 0%, rgba(3, 25, 59, .5) 45%, rgba(3, 25, 59, .9) 100%); }
  .wp-site-blocks .v2-plan__head::after{ content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(70% 70% at 100% 0%, var(--tint-strong), transparent 70%); }
  .wp-site-blocks .v2-plan--call{ --tint-strong: rgba(214, 40, 40, .42); }
  .wp-site-blocks .v2-plan--zoom{ --tint-strong: rgba(10, 58, 133, .6); }
  .wp-site-blocks .v2-plan:hover .v2-plan__photo{ transform: scale(1.05); }
  .wp-site-blocks .v2-plan--call:hover .v2-plan__photo{ transform: scaleX(-1) scale(1.05); }
  .wp-site-blocks .v2-plan__body{ display: flex; flex-direction: column; flex: 1; padding: 0 var(--s3) var(--s4); }
  @media (min-width: 1024px) { .wp-site-blocks .v2-plan__head{ padding: var(--s4) var(--s4) var(--s3); } .wp-site-blocks .v2-plan__body{ padding: 0 var(--s4) var(--s4); } }
  .wp-site-blocks .v2-plan__num{ margin: 0; font-family: var(--font-display); font-size: clamp(56px, 4vw, 80px); line-height: .9; color: #fff; text-shadow: 0 6px 24px rgba(3, 25, 59, .45); }
  .wp-site-blocks .v2-plan__num small{ font-family: var(--font-ui); font-size: 16px; letter-spacing: .14em; text-transform: uppercase; color: var(--on-dark-muted); margin-left: 4px; text-shadow: none; }
  .wp-site-blocks .v2-plan__title{ margin: 10px 0 2px; font-size: clamp(28px, 1.4vw + 16px, 36px); color: #fff; }
  .wp-site-blocks .v2-plan__sub{ font-size: var(--fs-lead); color: var(--on-dark-muted); margin-bottom: 0; }
  .wp-site-blocks .v2-spec > div{ display: grid; grid-template-columns: 1fr; gap: 6px; padding: 14px 0; border-top: 1px solid var(--line); }
  .wp-site-blocks .v2-spec > div:first-child{ border-top: 0; }
  @media (min-width: 480px) { .wp-site-blocks .v2-spec > div{ grid-template-columns: 118px 1fr; gap: var(--s2); } }
  .wp-site-blocks .v2-spec > div:last-child{ border-bottom: 1px solid var(--line); }
  .wp-site-blocks .v2-spec dt{ font-family: var(--font-ui); font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--muted); padding-top: 6px; }
  .wp-site-blocks .v2-check li{ position: relative; padding-left: 26px; margin-bottom: 6px; }
  .wp-site-blocks .v2-check li::before{ content: ""; position: absolute; left: 0; top: 5px; width: 17px; height: 17px; background: var(--accent); -webkit-mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'><path d='M4 15 L11 21.5 L24.5 4.5' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/></svg>") center / contain no-repeat; mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'><path d='M4 15 L11 21.5 L24.5 4.5' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/></svg>") center / contain no-repeat; }
  .wp-site-blocks .v2-plan .v2-btn:not(:where(.wp-block-button)), .wp-site-blocks .v2-plan .v2-btn > .wp-block-button__link{ margin-top: auto; align-self: flex-start; }
  .wp-site-blocks .v2-plan .v2-spec{ margin-bottom: var(--s4); }
  .wp-site-blocks .v2-plans__or{ display: none; }
  @media (min-width: 900px) {
    .wp-site-blocks .v2-plans__or{ position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 3; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; border: 1px solid var(--line); background: #fff; box-shadow: 0 6px 18px rgba(3, 25, 59, .10); font-family: var(--font-display); font-size: 24px; color: var(--navy); }
  }

  /* Better (editorial) */
  .wp-site-blocks .v2-better{ overflow-x: clip; }
  .wp-site-blocks .v2-better__grid{ display: grid; grid-template-columns: 1fr; gap: var(--s5); align-items: center; }
  @media (min-width: 1024px) { .wp-site-blocks .v2-better__grid{ grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--s7); } }
  .wp-site-blocks .v2-better__copy{ max-width: 680px; }
  .wp-site-blocks .v2-pull{ position: relative; margin: var(--s3) 0; padding-left: 22px; border-left: 4px solid var(--red); font-size: clamp(21px, .9vw + 13px, 26px); line-height: 1.35; letter-spacing: -.005em; color: var(--navy); text-wrap: balance; }
  .wp-site-blocks .v2-trust{ display: grid; grid-template-columns: 1fr 1fr; gap: var(--s3); align-items: center; margin-top: var(--s5); padding-top: var(--s4); border-top: 1px solid var(--line); }
  @media (min-width: 768px) { .wp-site-blocks .v2-trust{ grid-template-columns: repeat(4, 1fr); } }
  .wp-site-blocks .v2-trust li, .wp-site-blocks .v2-trust li a{ display: flex; flex-direction: column; align-items: flex-start; gap: 8px; color: inherit; }
  .wp-site-blocks .v2-trust strong{ display: flex; align-items: center; height: 40px; font-family: var(--font-display); font-weight: 400; font-size: 30px; line-height: 1; color: var(--navy); }
  .wp-site-blocks .v2-trust img{ height: 40px; width: auto; }
  .wp-site-blocks .v2-trust li:nth-child(3) img{ height: 22px; margin-block: 9px; }
  .wp-site-blocks .v2-trust span{ font-family: var(--font-ui); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
  .wp-site-blocks .v2-better__media{ position: relative; margin: 0; }
  .wp-site-blocks .v2-better__media img{ width: 100%; aspect-ratio: 3 / 2; object-fit: cover; object-position: 40% 50%; border-radius: var(--r); }
  @media (min-width: 1024px) {
    .wp-site-blocks .v2-better__media{ margin-right: calc(-1 * (max(0px, (100vw - 1468px) / 2) + var(--gutter))); }
    .wp-site-blocks .v2-better__media img{ aspect-ratio: 1 / 1; border-radius: var(--r) 0 0 var(--r); }
  }
  .wp-site-blocks .v2-better__media figcaption{ margin-top: 12px; font-family: var(--font-ui); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }

  /* Final */
  .wp-site-blocks .v2-final{ position: relative; isolation: isolate; overflow: hidden; background: var(--ink); color: #fff; }
  .wp-site-blocks .v2-final__photo{ position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
  .wp-site-blocks .v2-final::before{ content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(3, 25, 59, .86), rgba(3, 25, 59, .94)); }
  .wp-site-blocks .v2-final::after{ content: ""; position: absolute; inset: 0; z-index: -1; background: var(--grain); opacity: .08; }
  .wp-site-blocks .v2-bars{ display: grid; gap: var(--s2); max-width: 1120px; margin-inline: auto; }
  .wp-site-blocks .v2-bar{ --bar: var(--red); display: grid; grid-template-columns: auto 1fr; grid-template-areas: "num text" "num cta"; gap: 10px var(--s3); align-items: center; padding: var(--s3) var(--s3); background: var(--bar); color: #fff; text-decoration: none; border-radius: var(--r); transition: transform var(--dur) var(--ease), background-color var(--dur) var(--ease); }
  @media (min-width: 768px) { .wp-site-blocks .v2-bar{ grid-template-columns: auto 1fr auto; grid-template-areas: "num text cta"; gap: var(--s4); padding: var(--s3) var(--s4); } }
  .wp-site-blocks .v2-bar--zoom{ --bar: var(--navy-2); }
  .wp-site-blocks .v2-bar:hover{ transform: translateY(-2px); color: #fff; }
  .wp-site-blocks .v2-bar--call:hover{ background: var(--red-deep); }
  .wp-site-blocks .v2-bar--zoom:hover{ background: var(--navy); }
  .wp-site-blocks .v2-bar__num{ grid-area: num; font-family: var(--font-display); font-size: clamp(56px, 4vw, 84px); line-height: .85; opacity: .95; }
  .wp-site-blocks .v2-bar__text{ grid-area: text; display: flex; flex-direction: column; gap: 2px; }
  .wp-site-blocks .v2-bar__title{ font-family: var(--font-display); font-size: clamp(26px, 1.4vw + 14px, 34px); line-height: 1; }
  .wp-site-blocks .v2-bar__sub{ color: rgba(255, 255, 255, .84); font-size: 17px; line-height: 1.4; }
  .wp-site-blocks .v2-bar__cta{ grid-area: cta; display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 10px 18px; font-family: var(--font-ui); font-weight: 500; font-size: 14px; letter-spacing: .08em; text-transform: uppercase; border: 2px solid rgba(255, 255, 255, .75); white-space: nowrap; transition: background-color var(--dur) var(--ease), color var(--dur) var(--ease); }
  .wp-site-blocks .v2-bar:hover .v2-bar__cta{ background: #fff; color: var(--bar); border-color: #fff; }
  .wp-site-blocks .v2-bar:hover .v2-arrow{ transform: translateX(4px); }

  /* Footer */
  .wp-site-blocks .v2-footer{ background: var(--ink); color: var(--on-dark-muted); padding-block: var(--s6) var(--s3); border-top: 1px solid var(--line-dark); }
  .wp-site-blocks .v2-footer__grid{ display: grid; grid-template-columns: 1fr; gap: var(--s5); }
  @media (min-width: 768px) { .wp-site-blocks .v2-footer__grid{ grid-template-columns: 1.5fr 1fr 1fr; } }
  .wp-site-blocks .v2-footer__brand img{ height: 40px; width: auto; margin-bottom: var(--s3); }
  .wp-site-blocks .v2-footer address{ line-height: 1.6; margin-bottom: var(--s2); }
  .wp-site-blocks .v2-footer a{ color: #fff; }
  .wp-site-blocks .v2-footer a:hover{ color: var(--on-dark-muted); }
  .wp-site-blocks .v2-footer__ext{ font-family: var(--font-ui); letter-spacing: .04em; }
  .wp-site-blocks .v2-footer__heading{ margin: 0 0 var(--s2); font-family: var(--font-ui); font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: #fff; }
  .wp-site-blocks .v2-footer__nav li{ margin-bottom: 8px; }
  .wp-site-blocks .v2-footer__bottom{ display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px var(--s3); margin-top: var(--s5); padding-top: var(--s3); border-top: 1px solid var(--line-dark); font-size: 14px; }
  .wp-site-blocks .v2-footer__bottom p{ margin: 0; }

  /* Sticky bar */
  .wp-site-blocks .v2-stickybar{ position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; display: none; gap: 8px; padding: 8px var(--gutter) calc(8px + env(safe-area-inset-bottom)); background: #fff; box-shadow: 0 -8px 24px rgba(3, 25, 59, .14); transform: translateY(110%); transition: transform 240ms var(--ease); }
  .wp-site-blocks .v2-stickybar .v2-btn:not(:where(.wp-block-button)), .wp-site-blocks .v2-stickybar .v2-btn > .wp-block-button__link{ flex: 1; min-height: 48px; padding: 8px 12px; font-size: 13px; }
  .wp-site-blocks .v2-stickybar.is-visible{ transform: translateY(0); }
  @media (max-width: 767.98px) {
    .wp-site-blocks .v2-stickybar{ display: flex; }
    body.has-stickybar{ padding-bottom: 72px; scroll-padding-bottom: 80px; }
  }

  /* Reveal */
  html.js [data-reveal]{ opacity: 0; transform: translateY(18px); transition: opacity .7s var(--ease), transform .7s var(--ease); }
  html.js [data-reveal].is-in{ opacity: 1; transform: none; }

  /* ── Subpage hero (T2 / T3 / T4) ─────────────────────── */
  .wp-site-blocks .v2-subhero{ position: relative; isolation: isolate; overflow: hidden; background: var(--ink); color: #fff; }
  .wp-site-blocks .v2-subhero::before{ content: ""; position: absolute; inset: 0; z-index: -1; background: var(--grain); opacity: .09; pointer-events: none; }
  .wp-site-blocks .v2-subhero::after{ content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(60% 90% at 20% 120%, rgba(10, 58, 133, .5), transparent 70%); pointer-events: none; }
  .wp-site-blocks .v2-subhero__grid{ width: 100%; max-width: calc(var(--w) + 2 * var(--gutter)); margin-inline: auto; padding-inline: var(--gutter); }
  .wp-site-blocks .v2-subhero__copy{ position: relative; z-index: 1; padding-block: clamp(40px, 4vw, 64px); }
  @media (min-width: 1024px) {
    .wp-site-blocks .v2-subhero__copy{ width: 60%; min-height: 480px; display: flex; flex-direction: column; justify-content: center; padding: clamp(48px, 5vw, 80px) var(--s6) clamp(48px, 5vw, 80px) 0; }
  }
  .wp-site-blocks .v2-subhero__title{ color: #fff; font-size: clamp(40px, 3vw + 16px, 64px); line-height: .98; margin: 0 0 var(--s3); max-width: 18ch; }
  .wp-site-blocks .v2-subhero__lead{ max-width: 60ch; font-size: var(--fs-lead); line-height: 1.5; color: var(--on-dark-muted); }
  .wp-site-blocks .v2-subhero__lead strong{ color: #fff; }
  .wp-site-blocks .v2-subhero .v2-meta{ margin-top: var(--s3); }
  .wp-site-blocks .v2-meta--light{ color: var(--on-dark-muted); }
  .wp-site-blocks .v2-subhero__actions{ display: flex; flex-wrap: wrap; align-items: center; gap: var(--s2) var(--s4); margin-top: var(--s4); }
  .wp-site-blocks .v2-subhero__alt{ font-family: var(--font-ui); font-size: 15px; letter-spacing: .03em; color: var(--on-dark-muted); border-bottom: 1px solid var(--line-dark); padding-bottom: 2px; }
  .wp-site-blocks .v2-subhero__alt:hover{ color: #fff; border-color: #fff; }
  @media (max-width: 619.98px) {
    .wp-site-blocks .v2-subhero--rep .v2-subhero__actions{ flex-direction: column; align-items: stretch; }
    .wp-site-blocks .v2-subhero--rep .v2-subhero__alt{ align-self: center; text-align: center; }
  }
  .wp-site-blocks .v2-arrow--down{ width: 16px; height: 16px; }
  .wp-site-blocks .v2-btn:hover .v2-arrow--down{ transform: translateY(3px); }
  .wp-site-blocks .v2-subhero__media{ position: relative; margin: 0 calc(-1 * var(--gutter)); isolation: isolate; overflow: hidden; aspect-ratio: 16 / 10; }
  @media (min-width: 1024px) {
    .wp-site-blocks .v2-subhero__media{ position: absolute; top: 0; bottom: 0; right: 0; left: min(calc(50% + var(--w) * .1), calc(60% - .2 * var(--gutter))); margin: 0; aspect-ratio: auto; }
  }
  .wp-site-blocks .v2-subhero__photo{ position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; object-fit: cover; object-position: 45% 30%; }
  .wp-site-blocks .v2-subhero--call .v2-subhero__photo{ transform: scaleX(-1); object-position: 55% 30%; }
  .wp-site-blocks .v2-subhero__media::before{ content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(3, 25, 59, .08) 0%, rgba(3, 25, 59, .08) 40%, rgba(3, 25, 59, .55) 72%, rgba(3, 25, 59, .96) 100%); }
  .wp-site-blocks .v2-subhero--call .v2-subhero__media::after{ content: ""; position: absolute; inset: 0; background: radial-gradient(70% 60% at 100% 0%, rgba(214, 40, 40, .4), transparent 70%); }
  .wp-site-blocks .v2-subhero__seam{
    position: absolute; z-index: 2; left: 0; top: 0; right: 0; height: 6px;
    background: linear-gradient(90deg, var(--red) 0 34%, #fff 34% 67%, var(--navy-2) 67%);
  }
  @media (min-width: 1024px) {
    .wp-site-blocks .v2-subhero__seam{ right: auto; bottom: 0; width: 6px; height: auto; background: linear-gradient(180deg, var(--red) 0 34%, #fff 34% 67%, var(--navy-2) 67%); }
  }
  .wp-site-blocks .v2-subhero__num{ position: absolute; left: var(--s3); bottom: var(--s2); display: flex; align-items: flex-start; gap: 6px; font-family: var(--font-display); font-size: clamp(96px, 9vw, 150px); line-height: .85; color: #fff; text-shadow: 0 10px 40px rgba(3, 25, 59, .55); }
  .wp-site-blocks .v2-subhero__num small{ font-family: var(--font-ui); font-size: 18px; letter-spacing: .16em; text-transform: uppercase; color: #fff; margin-top: 18px; text-shadow: 0 2px 12px rgba(3, 25, 59, .7); }

  /* ── T2: topics + steps ──────────────────────────────── */
  .wp-site-blocks .v2-prep{ background: var(--white); }
  .wp-site-blocks .v2-prep__grid{ display: grid; grid-template-columns: 1fr; gap: var(--s6); align-items: start; }
  @media (min-width: 1024px) { .wp-site-blocks .v2-prep__grid{ grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--s7); } }
  .wp-site-blocks .v2-check--cols li{ --accent: var(--red); margin-bottom: 10px; padding-left: 30px; font-size: var(--fs-lead); }
  .wp-site-blocks .v2-check--cols li::before{ top: 8px; width: 17px; height: 17px; }
  @media (min-width: 640px) { .wp-site-blocks .v2-check--cols{ display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--s4); } }
  .wp-site-blocks .v2-steps{ position: relative; padding: var(--s4); background: var(--paper); border: 1px solid var(--line); border-top: 4px solid var(--red); border-radius: 6px; }
  .wp-site-blocks .v2-steps__title{ margin-bottom: var(--s3); }
  .wp-site-blocks .v2-steps__list{ counter-reset: step; }
  .wp-site-blocks .v2-steps__list li{ display: grid; grid-template-columns: auto 1fr; gap: var(--s3); align-items: start; padding: var(--s3) 0; border-top: 1px solid var(--line); }
  .wp-site-blocks .v2-steps__list li:first-child{ border-top: 0; padding-top: 0; }
  .wp-site-blocks .v2-steps__num{ font-family: var(--font-display); font-size: 56px; line-height: .85; color: var(--red); min-width: 56px; }
  .wp-site-blocks .v2-steps__list strong{ display: block; font-family: var(--font-display); font-weight: 400; font-size: 24px; line-height: 1.05; color: var(--navy); margin-bottom: 4px; letter-spacing: .01em; }

  /* ── Scheduler (Calendly / Zoom) ─────────────────────── */
  .wp-site-blocks .v2-schedule{ background: var(--paper); scroll-margin-top: calc(var(--header) + 12px); }
  .wp-site-blocks .v2-schedule .v2-section__head{ max-width: 760px; }
  .wp-site-blocks .v2-schedule .v2-section__head .v2-lead{ margin-top: var(--s2); }
  .wp-site-blocks .v2-scheduler{ --accent: var(--red); position: relative; max-width: 1040px; margin-inline: auto; min-height: 720px; background: var(--white); border: 1px solid var(--line); border-top: 4px solid var(--accent); border-radius: 6px; box-shadow: 0 2px 6px rgba(3, 25, 59, .05), 0 12px 32px rgba(3, 25, 59, .08); overflow: hidden; }
  .wp-site-blocks .v2-scheduler--zoom{ --accent: var(--navy); }
  .wp-site-blocks .v2-scheduler__embed > *{ max-width: 100%; }
  .wp-site-blocks .v2-scheduler__embed iframe, .wp-site-blocks .v2-scheduler__embed .calendly-inline-widget{ width: 100% !important; max-width: 100%; min-height: 700px; border: 0; display: block; }
  .wp-site-blocks .v2-scheduler__empty{ display: none; }
  .wp-site-blocks .v2-scheduler.is-empty, .wp-site-blocks .v2-scheduler:not(:has(.v2-scheduler__embed > *)){ min-height: 0; }
  .wp-site-blocks .v2-scheduler.is-empty .v2-scheduler__empty, .wp-site-blocks .v2-scheduler:not(:has(.v2-scheduler__embed > *)) .v2-scheduler__empty{ display: grid; justify-items: center; text-align: center; gap: 10px; padding: clamp(40px, 6vw, 72px) var(--s3); background: repeating-linear-gradient(-45deg, transparent 0 14px, rgba(3, 25, 59, .025) 14px 28px); }
  .wp-site-blocks .v2-scheduler__badge{ display: flex; align-items: flex-start; gap: 4px; font-family: var(--font-display); font-size: 88px; line-height: .85; color: var(--accent); }
  .wp-site-blocks .v2-scheduler__badge small{ font-family: var(--font-ui); font-size: 14px; letter-spacing: .16em; text-transform: uppercase; color: var(--muted); margin-top: 12px; }
  .wp-site-blocks .v2-scheduler__title{ margin: 0; font-family: var(--font-display); font-size: 30px; color: var(--navy); }
  .wp-site-blocks .v2-scheduler__empty p{ max-width: 46ch; color: var(--muted); }
  .wp-site-blocks .v2-scheduler__alt{ margin-top: var(--s2); font-family: var(--font-ui); font-size: 15px; letter-spacing: .04em; text-transform: uppercase; }
  .wp-site-blocks .v2-scheduler__alt a{ color: var(--navy); border-bottom: 2px solid var(--red); }
  .wp-site-blocks .v2-scheduler.is-booked{ border-top-color: #2E8B57; }

  /* ── Cross-sell band ─────────────────────────────────── */
  .wp-site-blocks .v2-crosssell{ position: relative; isolation: isolate; overflow: hidden; background: var(--ink); color: #fff; }
  .wp-site-blocks .v2-crosssell::before{ content: ""; position: absolute; inset: 0; z-index: -1; background: var(--grain); opacity: .08; }
  .wp-site-blocks .v2-crosssell__grid{ display: grid; grid-template-columns: 1fr; gap: var(--s5); align-items: center; }
  @media (min-width: 1024px) { .wp-site-blocks .v2-crosssell__grid{ grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--s7); } }
  .wp-site-blocks .v2-crosssell__media{ position: relative; margin: 0; overflow: hidden; border-radius: 6px; aspect-ratio: 3 / 2; box-shadow: var(--shadow); }
  .wp-site-blocks .v2-crosssell__media img{ width: 100%; height: 100%; object-fit: cover; object-position: 60% 35%; }
  .wp-site-blocks .v2-crosssell__media::before{ content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(3, 25, 59, .1), rgba(3, 25, 59, .7)), radial-gradient(70% 60% at 100% 0%, rgba(10, 58, 133, .6), transparent 70%); }
  .wp-site-blocks .v2-crosssell__num{ position: absolute; left: var(--s3); bottom: var(--s2); display: flex; align-items: flex-start; gap: 6px; font-family: var(--font-display); font-size: clamp(80px, 7vw, 120px); line-height: .85; color: #fff; text-shadow: 0 10px 40px rgba(3, 25, 59, .55); }
  .wp-site-blocks .v2-crosssell__num small{ font-family: var(--font-ui); font-size: 16px; letter-spacing: .16em; text-transform: uppercase; color: var(--on-dark-muted); margin-top: 14px; text-shadow: none; }
  .wp-site-blocks .v2-crosssell h2{ color: #fff; margin-bottom: var(--s2); }
  .wp-site-blocks .v2-crosssell__text{ max-width: 56ch; font-size: var(--fs-lead); line-height: 1.5; color: var(--on-dark-muted); margin-bottom: var(--s4); }

  /* ── T3: representatives grid ─────────────────────────── */
  .wp-site-blocks .v2-reps-section{ background: var(--paper); }
  .wp-site-blocks .v2-reps{ display: grid; grid-template-columns: 1fr; gap: var(--s3); }
  @media (min-width: 480px) { .wp-site-blocks .v2-reps{ grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 768px) { .wp-site-blocks .v2-reps{ grid-template-columns: repeat(3, 1fr); } }
  @media (min-width: 1024px) { .wp-site-blocks .v2-reps{ grid-template-columns: repeat(4, 1fr); } }
  @media (min-width: 1280px) { .wp-site-blocks .v2-reps{ grid-template-columns: repeat(5, 1fr); } }
  .wp-site-blocks .v2-rep{
    position: relative; display: flex; flex-direction: column; overflow: hidden;
    background: var(--white); color: var(--text); text-decoration: none;
    border: 1px solid var(--line); border-top: 4px solid var(--navy); border-radius: 6px;
    box-shadow: 0 2px 6px rgba(3, 25, 59, .05), 0 12px 32px rgba(3, 25, 59, .07);
    transition: transform 350ms var(--ease), box-shadow 350ms var(--ease);
  }
  .wp-site-blocks .v2-rep:hover{ transform: translateY(-6px); box-shadow: 0 6px 14px rgba(3, 25, 59, .08), 0 28px 60px rgba(3, 25, 59, .18); color: var(--text); }
  .wp-site-blocks .v2-rep__name a{ color: inherit; text-decoration: none; }
  .wp-site-blocks .v2-rep__name a::after{ content: ""; position: absolute; inset: 0; z-index: 1; }
  .wp-site-blocks .v2-rep__name a:focus-visible{ outline: 3px solid var(--focus); outline-offset: 3px; }
  .wp-site-blocks .v2-rep__play{
    position: absolute; z-index: 2; right: 12px; bottom: 12px; width: 56px; height: 56px;
    padding: 0; display: grid; place-items: center; border: 0; border-radius: 50%; cursor: pointer;
    background: var(--red); color: #fff; box-shadow: 0 8px 22px rgba(3, 25, 59, .4); pointer-events: auto;
    transition: transform 250ms var(--ease), background 250ms var(--ease);
  }
  .wp-site-blocks .v2-rep__play svg{ width: 25px; height: 25px; fill: currentColor; margin-left: 2px; }
  .wp-site-blocks .v2-rep__play:hover{ background: var(--red-deep); transform: scale(1.08); }
  .wp-site-blocks .v2-rep__play:focus-visible{ outline: 3px solid var(--focus); outline-offset: 3px; }
  .wp-site-blocks .v2-rep__media{ position: relative; z-index: 2; pointer-events: none; isolation: isolate; overflow: hidden; aspect-ratio: 4 / 5; }
  .wp-site-blocks .v2-rep__photo{ position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; object-fit: cover; object-position: 50% 22%; transition: transform 900ms var(--ease); }
  .wp-site-blocks .v2-rep:hover .v2-rep__photo{ transform: scale(1.05); }
  .wp-site-blocks .v2-rep__media::before{ content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(3, 25, 59, 0) 40%, rgba(3, 25, 59, .5) 70%, rgba(3, 25, 59, .92) 100%); }
  .wp-site-blocks .v2-rep__years{ position: absolute; left: 14px; bottom: 6px; display: flex; align-items: flex-start; gap: 4px; font-family: var(--font-display); font-size: 54px; line-height: .85; color: #fff; text-shadow: 0 6px 24px rgba(3, 25, 59, .5); }
  .wp-site-blocks .v2-rep__years small{ font-family: var(--font-ui); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #fff; margin-top: 8px; text-shadow: none; }
  .wp-site-blocks .v2-rep__body{ display: flex; flex-direction: column; flex: 1; gap: 8px; padding: var(--s3) 20px 20px; }
  .wp-site-blocks .v2-rep__name{ margin: 0; font-family: var(--font-display); font-weight: 400; font-size: 26px; line-height: 1; color: var(--navy); letter-spacing: .01em; }
  .wp-site-blocks .v2-rep__title{ margin: 0; font-family: var(--font-ui); font-size: 12px; line-height: 1.35; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
  .wp-site-blocks .v2-rep__text{ margin: 0; font-size: 15px; line-height: 1.5; color: var(--text); }
  .wp-site-blocks .v2-rep__cta{ display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding-top: var(--s2); font-family: var(--font-ui); font-weight: 500; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--navy); border-top: 1px solid var(--line); }
  .wp-site-blocks .v2-rep:hover .v2-rep__cta{ color: var(--red); }

  /* ── T3: representatives list (horizontal rows) ───────── */
  .wp-site-blocks .v2-replist{ display: grid; grid-template-columns: 1fr; gap: var(--s3); }
  .wp-site-blocks .v2-row{
    position: relative; display: grid; grid-template-columns: 1fr;
    background: var(--white); color: var(--text);
    border: 1px solid var(--line); border-radius: 6px;
    box-shadow: 0 2px 6px rgba(3, 25, 59, .05), 0 12px 32px rgba(3, 25, 59, .07);
    transition: transform 350ms var(--ease), box-shadow 350ms var(--ease);
  }
  @media (min-width: 620px) { .wp-site-blocks .v2-row{ grid-template-columns: 200px 1fr; } }
  @media (min-width: 900px) { .wp-site-blocks .v2-row{ grid-template-columns: 260px 1fr; } }
  @media (min-width: 1200px) {
    .wp-site-blocks .v2-row{ grid-template-columns: 300px 1fr auto; }
    .wp-site-blocks .v2-row__body{ grid-column: 2; }
    .wp-site-blocks .v2-row__actions{ grid-column: 3; align-content: center; }
  }
  .wp-site-blocks .v2-row:hover, html.js .v2-row[data-reveal].is-in:hover{
    transform: translateY(-6px); z-index: 4;
    box-shadow: 0 6px 14px rgba(3, 25, 59, .08), 0 28px 60px rgba(3, 25, 59, .18);
  }
  .wp-site-blocks .v2-row__seam{ position: absolute; right: 0; top: 0; bottom: 0; width: 6px; z-index: 3; border-radius: 0 6px 6px 0; background: #B6C0D0; transition: background 300ms var(--ease); }
  @media (max-width: 619.98px) {
    .wp-site-blocks .v2-row__seam{ left: 0; right: 0; top: auto; bottom: 0; width: auto; height: 6px; border-radius: 0 0 6px 6px; }
  }
  .wp-site-blocks .v2-row:hover .v2-row__seam{ background: var(--navy); }
  .wp-site-blocks .v2-row--booked .v2-row__seam{ background: #E3B6B6; }
  .wp-site-blocks .v2-row--booked:hover .v2-row__seam{ background: var(--red); }

  .wp-site-blocks .v2-row__media{ padding: 20px 20px 0 26px; }
  @media (min-width: 620px) { .wp-site-blocks .v2-row__media{ padding: 22px 0 22px 26px; } }
  .wp-site-blocks .v2-row__frame{ position: relative; z-index: 2; display: block; width: 100%; padding: 0; border: 0; text-align: left; overflow: hidden; border-radius: var(--r); aspect-ratio: 4 / 3; background: var(--ink); }
  .wp-site-blocks button.v2-row__frame{ cursor: pointer; }
  .wp-site-blocks .v2-row__frame:focus-visible{ outline: 3px solid var(--focus); outline-offset: 3px; }
  .wp-site-blocks .v2-row__poster{ width: 100%; height: 100%; object-fit: cover; object-position: 50% 16%; transition: transform 900ms var(--ease); }
  .wp-site-blocks .v2-row:hover .v2-row__poster{ transform: scale(1.05); }
  .wp-site-blocks .v2-row__frame::after{ content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(3, 25, 59, .06) 45%, rgba(3, 25, 59, .45) 100%); }
  .wp-site-blocks .v2-row__play{
    position: absolute; z-index: 2; right: 12px; bottom: 12px; pointer-events: none;
    width: 48px; height: 48px; padding: 0; display: grid; place-items: center;
    border: 0; border-radius: 50%; cursor: pointer; background: var(--red); color: #fff;
    box-shadow: 0 10px 28px rgba(3, 25, 59, .4);
    transition: transform 250ms var(--ease), background 250ms var(--ease);
  }
  .wp-site-blocks .v2-row__play svg{ width: 22px; height: 22px; fill: currentColor; margin-left: 2px; }
  .wp-site-blocks .v2-row__frame:hover .v2-row__play{ background: var(--red-deep); transform: scale(1.08); }
  .wp-site-blocks .v2-ribbon{
    display: inline-block; padding: 7px 13px; border-radius: var(--r);
    background: var(--ribbon, var(--red)); color: #fff;
    font-family: var(--font-ui); font-weight: 500; font-size: 11px; line-height: 1.3;
    letter-spacing: .1em; text-transform: uppercase;
  }
  .wp-site-blocks .v2-ribbon--corner{
    position: absolute; z-index: 4; top: 0; left: 0; max-width: calc(100% - 32px);
    padding: 10px 18px; font-size: 13px; letter-spacing: .12em;
    border-radius: 6px 0 var(--r) 0; box-shadow: 0 8px 22px rgba(3, 25, 59, .3);
  }

  .wp-site-blocks .v2-rep__status{ margin: 0; }
  .wp-site-blocks .v2-row__body{ display: flex; flex-direction: column; gap: 14px; padding: 18px 20px 10px 26px; }
  @media (min-width: 620px) { .wp-site-blocks .v2-row__body{ padding: 22px var(--s3) 12px var(--s3); } }
  @media (min-width: 1200px) { .wp-site-blocks .v2-row__body{ padding: 24px var(--s3) 24px var(--s3); } }
  .wp-site-blocks .v2-row__head{ display: grid; grid-template-columns: 52px 1fr auto; align-items: center; gap: 14px; }
  .wp-site-blocks .v2-schedule__avatar{ width: 88px; height: 88px; margin: 0 auto var(--s3); display: block; border-radius: 50%; object-fit: cover; object-position: 50% 18%; border: 3px solid var(--white); box-shadow: 0 6px 22px rgba(3, 25, 59, .2); }
  .wp-site-blocks .v2-row__avatar{ width: 52px; height: 52px; border-radius: 50%; object-fit: cover; object-position: 50% 18%; border: 2px solid var(--white); box-shadow: 0 2px 10px rgba(3, 25, 59, .18); }
  .wp-site-blocks .v2-row__ident{ min-width: 0; }
  .wp-site-blocks .v2-row__name{ margin: 0; font-family: var(--font-display); font-weight: 400; font-size: 26px; line-height: 1; letter-spacing: .01em; }
  @media (min-width: 620px) { .wp-site-blocks .v2-row__name{ font-size: 30px; } }
  .wp-site-blocks .v2-row__name a{ color: var(--navy); text-decoration: none; }
  .wp-site-blocks .v2-row__name a::after{ content: ""; position: absolute; inset: 0; z-index: 1; }
  .wp-site-blocks .v2-row__name a:focus-visible{ outline: 3px solid var(--focus); outline-offset: 3px; }
  .wp-site-blocks .v2-row:hover .v2-row__name a{ color: var(--red); }
  .wp-site-blocks .v2-row__title{ margin: 3px 0 0; font-family: var(--font-ui); font-size: 12px; line-height: 1.35; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
  .wp-site-blocks .v2-row__years{ margin: 0; display: flex; align-items: flex-start; gap: 7px; color: var(--navy); }
  .wp-site-blocks .v2-row__years b{ font-family: var(--font-display); font-weight: 400; font-size: 40px; line-height: .8; }
  .wp-site-blocks .v2-row__years span{ font-family: var(--font-ui); font-size: 10px; line-height: 1.25; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); padding-top: 2px; }
  @media (min-width: 900px) { .wp-site-blocks .v2-row__years b{ font-size: 48px; } }

  .wp-site-blocks .v2-row__stats{ margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; font-family: var(--font-ui); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
  .wp-site-blocks .v2-row__stats li{ display: flex; align-items: center; gap: 12px; }
  .wp-site-blocks .v2-row__stats li + li::before{ content: ""; width: 4px; height: 4px; border-radius: 50%; background: var(--red); }
  .wp-site-blocks .v2-sprite{ position: absolute; width: 0; height: 0; overflow: hidden; }
  .wp-site-blocks .v2-sprite{ position: absolute; width: 0; height: 0; overflow: hidden; }
  .wp-site-blocks .v2-ticklist{ margin: 0; padding: 0; list-style: none; display: grid; gap: 8px 24px; }
  .wp-site-blocks .v2-ticklist > li{ position: relative; display: flex; align-items: center; gap: 10px; padding-left: 0; margin: 0; font-size: 14.5px; line-height: 1.35; color: var(--text); }
  .wp-site-blocks .v2-ticklist > li::before{ content: none; }
  .wp-site-blocks .v2-ticklist__box{ position: relative; flex: 0 0 auto; width: 18px; height: 18px; border: 1.5px solid rgba(3, 25, 59, .38); background: #fff; }
  .wp-site-blocks .v2-ticklist__mark{ position: absolute; left: -1px; top: -4px; width: 20px; height: 20px; max-width: none; color: var(--red); }

  .wp-site-blocks .v2-row__tags{ max-width: 640px; }
  @media (min-width: 900px) { .wp-site-blocks .v2-row__tags{ grid-template-columns: 1fr 1fr; } }
  .wp-site-blocks .v2-row__tags .v2-row__more{ position: relative; z-index: 3; padding: 0; margin: 0; border: 0; background: transparent; display: flex; justify-self: start; }
  .wp-site-blocks .v2-row__more-btn{
    padding: 5px 11px; border: 1px dashed rgba(3, 25, 59, .3); border-radius: var(--r);
    background: transparent; cursor: pointer;
    font-family: var(--font-ui); font-size: 12px; letter-spacing: .04em; color: var(--muted);
    transition: color 200ms var(--ease), background 200ms var(--ease), border-color 200ms var(--ease);
  }
  .wp-site-blocks .v2-row__more:hover .v2-row__more-btn, .wp-site-blocks .v2-row__more:focus-within .v2-row__more-btn{ border-style: solid; border-color: var(--navy); background: var(--navy); color: #fff; }
  .wp-site-blocks .v2-row__more-btn:focus-visible{ outline: 3px solid var(--focus); outline-offset: 2px; }
  .wp-site-blocks .v2-row__pop{
    position: absolute; z-index: 5; right: -6px; bottom: calc(100% + 11px);
    min-width: 200px; max-width: min(264px, 74vw); display: grid; gap: 7px; padding: 13px 15px;
    background: var(--ink); color: #fff; border-radius: var(--r); text-align: left;
    box-shadow: 0 18px 44px rgba(3, 25, 59, .34);
    opacity: 0; visibility: hidden; transform: translateY(6px);
    transition: opacity 180ms var(--ease), transform 180ms var(--ease), visibility 180ms;
  }
  .wp-site-blocks .v2-row__pop::after{ content: ""; position: absolute; top: 100%; right: 20px; border: 6px solid transparent; border-top-color: var(--ink); }
  .wp-site-blocks .v2-row__pop b{ font-family: var(--font-ui); font-weight: 500; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--on-dark-muted); }
  .wp-site-blocks .v2-row__pop i{ font-style: normal; font-size: 13px; line-height: 1.35; }
  .wp-site-blocks .v2-row__more:hover .v2-row__pop, .wp-site-blocks .v2-row__more:focus-within .v2-row__pop{ opacity: 1; visibility: visible; transform: translateY(0); }
  @media (max-width: 619.98px) {
    .wp-site-blocks .v2-row__tags{ position: relative; z-index: 3; }
    .wp-site-blocks .v2-row__tags .v2-row__more{ position: static; }
    .wp-site-blocks .v2-row__pop{ left: 0; right: 0; min-width: 0; max-width: none; }
    .wp-site-blocks .v2-row__pop::after{ display: none; }
  }
  @media (prefers-reduced-motion: reduce) { .wp-site-blocks .v2-row__pop{ transition: none; } }
  .wp-site-blocks .v2-row__actions{ position: relative; z-index: 2; display: flex; flex-wrap: wrap; align-items: center; gap: var(--s2) var(--s3); padding: 0 20px 22px 26px; }
  @media (min-width: 620px) { .wp-site-blocks .v2-row__actions{ padding: 0 var(--s3) 22px var(--s3); } }
  @media (min-width: 1200px) {
    .wp-site-blocks .v2-row__actions{ display: grid; gap: 12px; justify-items: center; padding: 24px var(--s4) 24px var(--s3); border-left: 1px solid var(--line); }
    .wp-site-blocks .v2-row__actions .v2-btn:not(:where(.wp-block-button)), .wp-site-blocks .v2-row__actions .v2-btn > .wp-block-button__link{ width: 100%; white-space: nowrap; }
  }
  .wp-site-blocks .v2-row__alt{ display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-ui); font-weight: 500; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--navy); text-decoration: none; }
  .wp-site-blocks .v2-row__alt:hover{ color: var(--red); }

  /* ── video lightbox ───────────────────────────────────── */
  body .v2-lightbox{ position: fixed; inset: 0; z-index: 200; display: grid; place-items: center; padding: var(--s3); background: rgba(3, 25, 59, .9); animation: v2-lb-in 200ms var(--ease); }
  body .v2-lightbox__inner{ position: relative; width: min(1040px, 100%); }
  body .v2-lightbox__frame{ position: relative; aspect-ratio: 16 / 9; overflow: hidden; border-radius: var(--r); background: #000; box-shadow: var(--shadow); }
  body .v2-lightbox__frame iframe{ position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
  body .v2-lightbox__close{ position: absolute; right: 0; bottom: calc(100% + 10px); width: 40px; height: 40px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; cursor: pointer; background: rgba(255, 255, 255, .1); color: #fff; font-family: var(--font-ui); font-size: 24px; line-height: 1; }
  body .v2-lightbox__close:hover{ background: var(--red); }
  body .v2-lightbox__close:focus-visible{ outline: 3px solid var(--focus); outline-offset: 3px; }
  @keyframes v2-lb-in { from { opacity: 0 } to { opacity: 1 } }
  @media (prefers-reduced-motion: reduce) { body .v2-lightbox{ animation: none; } }

  .wp-site-blocks .v2-sr{ position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

  .wp-site-blocks .v2-projmap{ margin-top: var(--s5); }
  .wp-site-blocks .v2-projmap:first-child{ margin-top: 0; }
  .wp-site-blocks .v2-projmap--dark{ margin: 0; }
  .wp-site-blocks .v2-projmap--dark .v2-projmap__base{ opacity: .34; mix-blend-mode: screen; }
  .wp-site-blocks .v2-projmap--dark .v2-projmap__pin b{ color: #fff; }
  .wp-site-blocks .v2-projmap--dark .v2-projmap__pin{ --dot: 11px; }
  .wp-site-blocks .v2-projmap--dark .v2-projmap__pin i{ width: 11px; height: 11px; background: var(--red); box-shadow: 0 0 0 3px #fff, 0 3px 10px rgba(0, 0, 0, .5); }
  .wp-site-blocks .v2-projmap--dark .v2-projmap__legend{ color: var(--on-dark-muted); }
  @media (max-width: 899.98px) {
    .wp-site-blocks .v2-projmap--dense .v2-projmap__pin b{ display: none; }
    .wp-site-blocks .v2-projmap--dense .v2-projmap__pin{ --dot: 8px; }
    .wp-site-blocks .v2-projmap--dense .v2-projmap__pin i{ width: 8px; height: 8px; box-shadow: 0 0 0 2px #fff, 0 2px 8px rgba(0, 0, 0, .45); }
  }

  .wp-site-blocks .v2-projmap h3, .wp-site-blocks .v2-projects h3{ margin: 0 0 var(--s3); }
  /* the small-state list floats over the map: taking a column would shrink the map
     and it must stay the same size on every profile */
  .wp-site-blocks .v2-projmap__row{ position: relative; }
  .wp-site-blocks .v2-projmap__frame{ position: relative; }
  /* one column over the ocean, starting at NJ's latitude */
  .wp-site-blocks .v2-projmap__aside{ position: absolute; z-index: 2; right: 0; top: 36.7%; margin: 0; padding: 0 0 0 12px; list-style: none; display: grid; gap: 7px; border-left: 1px solid rgba(255, 255, 255, .18); }
  .wp-site-blocks .v2-projmap__aside li{ display: flex; align-items: center; gap: 7px; }
  .wp-site-blocks .v2-projmap__aside i{ width: 9px; height: 9px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 2.5px #fff; }
  .wp-site-blocks .v2-projmap__aside b{ font-family: var(--font-ui); font-weight: 500; font-size: 11px; letter-spacing: .1em; color: #fff; }
  @media (max-width: 899.98px) {
    .wp-site-blocks .v2-projmap__aside{ padding-left: 8px; gap: 4px; }
    .wp-site-blocks .v2-projmap__aside i{ width: 6px; height: 6px; box-shadow: 0 0 0 1.5px #fff; }
    .wp-site-blocks .v2-projmap__aside b{ font-size: 9px; letter-spacing: .06em; }
    .wp-site-blocks .v2-projmap__aside li{ gap: 4px; }
  }
  .wp-site-blocks .v2-projmap__base{ width: 100%; height: auto; }
  /* the anchor is the state centroid, so the DOT must land on it — not the middle of dot+label */
  .wp-site-blocks .v2-projmap__pin{ position: absolute; left: var(--x); top: var(--y); transform: translate(calc(-1 * var(--dot, 11px) / 2), -50%); display: flex; align-items: center; gap: 5px; }
  .wp-site-blocks .v2-projmap__pin--left{ flex-direction: row-reverse; transform: translate(calc(-100% + var(--dot, 11px) / 2), -50%); }
  .wp-site-blocks .v2-projmap__pin i{ width: 10px; height: 10px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 2.5px #fff, 0 2px 6px rgba(3, 25, 59, .3); }
  .wp-site-blocks .v2-projmap__pin b{ font-family: var(--font-ui); font-weight: 500; font-size: 11px; letter-spacing: .1em; color: var(--navy); }
  .wp-site-blocks .v2-projmap__legend{ margin: var(--s2) 0 0; font-family: var(--font-ui); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }

  .wp-site-blocks .v2-projects{ margin-top: var(--s5); }
  .wp-site-blocks .v2-projects__list{ margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; }
  .wp-site-blocks .v2-projects__empty{ margin: 0; color: var(--muted); }
  .wp-site-blocks .v2-proj{ width: 100%; display: grid; gap: 10px; padding: 12px; border: 1px solid rgb(3 25 59 / 6%); border-radius: var(--r); background: #fff; text-align: left; cursor: pointer; transition: border-color 200ms var(--ease), box-shadow 200ms var(--ease), transform 200ms var(--ease); }
  .wp-site-blocks .v2-proj:hover{ border-color: var(--navy); box-shadow: 0 12px 30px rgba(3, 25, 59, .12); transform: translateY(-2px); }
  .wp-site-blocks .v2-proj:focus-visible{ outline: 3px solid var(--focus); outline-offset: 2px; }
  .wp-site-blocks .v2-proj__strip{ display: grid; grid-template-columns: var(--cols, 2fr 1fr 1fr); gap: 4px; height: 104px; }
  .wp-site-blocks .v2-proj__frame{ position: relative; overflow: hidden; border-radius: 2px; }
  .wp-site-blocks .v2-proj__frame img{ width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 400ms var(--ease); }
  .wp-site-blocks .v2-proj:hover .v2-proj__frame img{ transform: scale(1.05); }
  .wp-site-blocks .v2-proj__more{ position: absolute; inset: 0; display: grid; place-items: center; background: rgba(3, 25, 59, .66); color: #fff; font-family: var(--font-ui); font-size: 15px; letter-spacing: .04em; }
  .wp-site-blocks .v2-proj__body{ display: grid; gap: 4px; }
  .wp-site-blocks .v2-proj__title{ font-family: var(--font-display); font-weight: 400; font-size: 21px; line-height: 1.05; letter-spacing: .01em; color: var(--navy); }
  .wp-site-blocks .v2-proj__meta{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 12px; line-height: 1.35; color: var(--muted); }
  .wp-site-blocks .v2-proj__state{ padding: 2px 6px; background: var(--red); color: #fff; font-family: var(--font-ui); font-weight: 500; font-size: 10px; letter-spacing: .1em; }
  .wp-site-blocks .v2-proj__meta i{ width: 3px; height: 3px; flex: none; border-radius: 50%; background: var(--line); }
  @media (max-width: 419.98px) { .wp-site-blocks .v2-proj__strip{ height: 88px; } }

  body .v2-gal{ position: fixed; inset: 0; z-index: 210; display: grid; place-items: center; padding: var(--s3); background: rgba(3, 25, 59, .62); backdrop-filter: blur(14px) saturate(1.1); -webkit-backdrop-filter: blur(14px) saturate(1.1); animation: v2-lb-in 200ms var(--ease); }
  body .v2-gal__inner{
    position: relative; width: min(1000px, 100%);
    display: grid; column-gap: 12px; row-gap: 12px;
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    grid-template-areas: "head head head" "stage stage stage" "prev thumbs next";
  }
  @media (min-width: 980px) {
    body .v2-gal__inner{ grid-template-areas: ". head ." "prev stage next" ". thumbs ."; }
  }
  body .v2-gal__head{ grid-area: head; }
  body .v2-gal__stage{ grid-area: stage; }
  body .v2-gal__nav--prev{ grid-area: prev; }
  body .v2-gal__nav--next{ grid-area: next; }
  body .v2-gal__thumbs{ grid-area: thumbs; }
  body .v2-gal__head{ display: flex; align-items: baseline; justify-content: space-between; gap: var(--s2); color: #fff; }
  body .v2-gal__title{ margin: 0; font-family: var(--font-display); font-weight: 400; font-size: 26px; line-height: 1; }
  body .v2-gal__counter{ font-family: var(--font-ui); font-size: 12px; letter-spacing: .12em; color: var(--on-dark-muted); }
  body .v2-gal__stage{ position: relative; aspect-ratio: 4 / 3; overflow: hidden; border-radius: var(--r); background: var(--ink); box-shadow: var(--shadow); }
  body .v2-gal__stage img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 260ms var(--ease); }
  body .v2-gal__stage img.is-on{ opacity: 1; }
  body .v2-gal__nav{ align-self: center; justify-self: center; width: 44px; height: 44px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; cursor: pointer; background: rgba(255, 255, 255, .14); color: #fff; font-size: 22px; line-height: 1; transition: background 200ms var(--ease); }
  body .v2-gal__nav:hover{ background: var(--red); }
  body .v2-gal__nav:focus-visible{ outline: 3px solid var(--focus); outline-offset: 3px; }
  body .v2-gal__thumbs{ display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
  body .v2-gal__thumbs button{ width: 84px; height: 63px; padding: 0; border: 0; border-radius: var(--r); overflow: hidden; cursor: pointer; background: none; opacity: .5; box-shadow: inset 0 0 0 2px transparent; transition: opacity 200ms var(--ease), box-shadow 200ms var(--ease); }
  body .v2-gal__thumbs button img{ width: 100%; height: 100%; object-fit: cover; display: block; }
  body .v2-gal__thumbs button:hover{ opacity: .85; }
  body .v2-gal__thumbs button[aria-current="true"]{ opacity: 1; box-shadow: inset 0 0 0 2px var(--red); }
  body .v2-gal__thumbs button:focus-visible{ outline: 3px solid var(--focus); outline-offset: 3px; }
  @media (max-width: 479.98px) { body .v2-gal__thumbs button{ width: 64px; height: 48px; } }
  body .v2-gal__close{ position: absolute; right: 0; bottom: calc(100% + 10px); width: 40px; height: 40px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; cursor: pointer; background: rgba(255, 255, 255, .14); color: #fff; font-family: var(--font-ui); font-size: 24px; line-height: 1; }
  body .v2-gal__close:hover{ background: var(--red); }
  body .v2-gal__close:focus-visible{ outline: 3px solid var(--focus); outline-offset: 3px; }
  @media (prefers-reduced-motion: reduce) { body .v2-gal{ animation: none; } body .v2-gal__stage img{ transition: none; } }
  .wp-site-blocks .v2-rep:hover .v2-arrow{ transform: translateX(4px); }

  /* ── T4: profile page ─────────────────────────────────── */
  .wp-site-blocks .v2-subhero__back{ display: inline-flex; align-items: center; gap: 8px; margin-bottom: var(--s3); font-family: var(--font-ui); font-size: 14px; letter-spacing: .06em; text-transform: uppercase; color: var(--on-dark-muted); }
  .wp-site-blocks .v2-subhero__back:hover{ color: #fff; }
  .wp-site-blocks .v2-subhero__role{ margin: 0 0 var(--s2); font-size: var(--fs-lead); color: #fff; }
  .wp-site-blocks .v2-badge{ display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; font-family: var(--font-ui); font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: #fff; border: 1px solid var(--line-dark); }
  .wp-site-blocks .v2-badge strong{ font-family: var(--font-display); font-weight: 400; font-size: 20px; letter-spacing: .02em; }
  .wp-site-blocks .v2-subhero--rep .v2-subhero__back{ margin: 0 0 var(--s3); }
  .wp-site-blocks .v2-subhero--rep .v2-subhero__copy{ padding-block: 0; }
  @media (min-width: 1024px) { .wp-site-blocks .v2-subhero--rep .v2-subhero__copy{ min-height: 0; padding: 0 var(--s6) 0 0; } }
  .wp-site-blocks .v2-subhero--rep{
    background-image:
      radial-gradient(36% 72% at 84% -12%, rgba(43, 112, 205, .52), rgba(43, 112, 205, 0) 70%),
      radial-gradient(80% 124% at 80% -6%, rgba(10, 58, 140, .62), rgba(10, 58, 140, 0) 76%);
  }
  .wp-site-blocks .v2-subhero--rep .v2-subhero__grid{ display: grid; grid-template-columns: 1fr; gap: var(--s4); align-items: center; padding-block: clamp(28px, 3vw, 44px) clamp(40px, 3.4vw, 52px); }
  @media (min-width: 900px) {
    .wp-site-blocks .v2-subhero--rep .v2-subhero__grid{ grid-template-columns: minmax(0, 1fr) minmax(0, 46%); gap: var(--s5); }
    .wp-site-blocks .v2-subhero--solo .v2-subhero__grid{ grid-template-columns: 1fr; }
    .wp-site-blocks .v2-subhero--rep .v2-rep-hero__media{ align-self: start; margin-top: 40px; }

  }
  .wp-site-blocks .v2-subhero--rep .v2-subhero__copy{ width: 100%; padding-inline: 0; }

  /* mobile: the badge goes full width on top, so name/role/stats fit beside the photo */
  .wp-site-blocks .v2-rep-id{
    display: grid; grid-template-columns: auto minmax(0, 1fr);
    grid-template-areas: "ribbon ribbon" "photo name" "photo role" "photo stats";
    gap: 8px 16px; align-items: start; align-content: start; margin-bottom: var(--s3);
  }
  .wp-site-blocks .v2-rep-id__main, .wp-site-blocks .v2-rep-id__text{ display: contents; }
  .wp-site-blocks .v2-rep-id .v2-ribbon{ grid-area: ribbon; justify-self: start; }
  .wp-site-blocks .v2-rep-id .v2-subhero__title{ grid-area: name; }
  .wp-site-blocks .v2-rep-id .v2-subhero__role{ grid-area: role; }
  .wp-site-blocks .v2-rep-id__avatar{ grid-area: photo; grid-row: 2 / -1; align-self: start; }
  .wp-site-blocks .v2-rep-id__stats{ grid-area: stats; flex-wrap: wrap; }
  @media (min-width: 900px) {
    .wp-site-blocks .v2-rep-id{ display: flex; align-items: center; gap: var(--s3); }
    .wp-site-blocks .v2-rep-id__main{ display: flex; flex-direction: column; gap: 16px; min-width: 0; }
    .wp-site-blocks .v2-rep-id__text{ display: block; }
    .wp-site-blocks .v2-rep-id__avatar{ grid-row: auto; align-self: auto; }
    .wp-site-blocks .v2-rep-id__stats{ flex-wrap: nowrap; }
  }

  .wp-site-blocks .v2-rep-id__avatar{ flex: 0 0 auto; width: 112px; height: 140px; object-fit: cover; border-radius: 2px; box-shadow: 0 12px 34px rgba(3, 25, 59, .5); }
  @media (min-width: 900px) { .wp-site-blocks .v2-rep-id__avatar{ width: 176px; height: 220px; } }
  @media (min-width: 1200px) { .wp-site-blocks .v2-rep-id__avatar{ width: 256px; height: 320px; } }
  .wp-site-blocks .v2-rep-id__text{ min-width: 0; align-self: center; }
  .wp-site-blocks .v2-rep-id .v2-subhero__title{ margin: 0 0 6px; font-size: clamp(32px, 2.2vw + 14px, 54px); max-width: 26ch; }
  .wp-site-blocks .v2-rep-id .v2-ribbon{ margin-bottom: 12px; }
  .wp-site-blocks .v2-rep-id .v2-subhero__role{ margin: 0; font-size: 15px; line-height: 1.35; }
  @media (min-width: 768px) { .wp-site-blocks .v2-rep-id .v2-subhero__role{ font-size: 16px; } }
  .wp-site-blocks .v2-rep-id__stats{ display: flex; align-items: flex-start; gap: 22px; margin: 0; }
  .wp-site-blocks .v2-rep-id__stat{ display: flex; align-items: flex-start; gap: 8px; margin: 0; color: #fff; }
  .wp-site-blocks .v2-rep-id__stat + .v2-rep-id__stat{ padding-left: 22px; border-left: 1px solid rgba(255, 255, 255, .18); }
  .wp-site-blocks .v2-rep-id__stat b{ font-family: var(--font-display); font-weight: 400; font-size: 34px; line-height: .8; }
  .wp-site-blocks .v2-rep-id__stat span{ font-family: var(--font-ui); font-size: 10px; line-height: 1.25; letter-spacing: .12em; text-transform: uppercase; color: var(--on-dark-muted); padding-top: 2px; }

  .wp-site-blocks .v2-rep-hero__media{ position: relative; }
  .wp-site-blocks .v2-prof__media .v2-slot__poster{ object-fit: cover; }
  .wp-site-blocks .v2-prof__media .v2-slot__facade::before{ content: none; }
  .wp-site-blocks .v2-prof__media .v2-slot__play{ right: auto; bottom: auto; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 72px; height: 72px; }
  .wp-site-blocks .v2-prof__media .v2-slot__facade:hover .v2-slot__play{ transform: translate(-50%, -50%) scale(1.07); }
  .wp-site-blocks .v2-prof{ background: var(--white); }
  .wp-site-blocks .v2-prof__grid{ display: grid; grid-template-columns: 1fr; gap: var(--s5); align-items: start; }
  @media (min-width: 1024px) { .wp-site-blocks .v2-prof__grid{ grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: var(--s6); } }
  .wp-site-blocks .v2-prof__media{ display: flex; flex-direction: column; gap: var(--s2); }
  @media (min-width: 1024px) {
    .wp-site-blocks .v2-prof__media{ order: 2; }
    .wp-site-blocks .v2-prof__text{ order: 1; }
  }
  .wp-site-blocks .v2-prof__text{ display: flex; flex-direction: column; gap: var(--s4); max-width: 72ch; }
  .wp-site-blocks .v2-prof__text > h2{ margin: 0; }
  .wp-site-blocks .v2-prof__text > p{ margin: 0; font-size: var(--fs-lead); line-height: 1.55; }
  .wp-site-blocks .v2-prof__text > .v2-eyebrow, .wp-site-blocks .v2-projmap h3, .wp-site-blocks .v2-projects h3{ font-size: 13px; line-height: 1.2; }
  @media (min-width: 768px) { .wp-site-blocks .v2-prof__text > .v2-eyebrow, .wp-site-blocks .v2-projmap h3, .wp-site-blocks .v2-projects h3{ font-size: 14px; } }
  .wp-site-blocks .v2-panel{ padding: var(--s4); background: var(--paper); border-radius: 6px; }
  .wp-site-blocks .v2-panel h3{ margin-bottom: var(--s3); font-size: 26px; }
  .wp-site-blocks .v2-panel .v2-check li{ --accent: var(--navy); margin-bottom: 8px; }
  .wp-site-blocks .v2-prof__focus{ padding-top: var(--s4); border-top: 1px solid var(--line); }
  .wp-site-blocks .v2-prof__focus h3{ margin-bottom: var(--s2); color: var(--red); }
  .wp-site-blocks .v2-prof__focus p{ margin: 0; }
  .wp-site-blocks .v2-prof__cta{ align-self: flex-start; }

  /* ── Embed zone (video slot) ──────────────────────────── */
  .wp-site-blocks .v2-slot{ position: relative; background: var(--ink); border-radius: 6px; overflow: hidden; }
  .wp-site-blocks .v2-slot__embed > *{ max-width: 100%; }
  .wp-site-blocks .v2-slot__embed iframe{ width: 100% !important; aspect-ratio: 16 / 9; height: auto; min-height: 0; border: 0; display: block; }
  .wp-site-blocks .v2-slot__empty{ display: none; }
  .wp-site-blocks .v2-slot:not(:has(.v2-slot__embed > *)) .v2-slot__empty, .wp-site-blocks .v2-slot.is-empty .v2-slot__empty{
    display: grid; place-items: center; align-content: center; gap: 10px; aspect-ratio: 16 / 9; padding: var(--s3); text-align: center; color: var(--on-dark-muted);
    background: repeating-linear-gradient(-45deg, transparent 0 14px, rgba(255, 255, 255, .03) 14px 28px);
  }
  .wp-site-blocks .v2-slot__facade{ position: relative; display: block; width: 100%; padding: 0; border: 0; cursor: pointer; background: var(--ink); aspect-ratio: 16 / 9; overflow: hidden; }
  .wp-site-blocks .v2-slot:has(.v2-slot__embed > *) .v2-slot__facade{ display: none; }
  .wp-site-blocks .v2-slot__poster{ position: relative; z-index: 1; width: 100%; height: 100%; object-fit: contain; transition: transform 900ms var(--ease); }
  .wp-site-blocks .v2-slot__facade::before{ content: ""; position: absolute; inset: -40px; background-image: var(--poster); background-size: cover; background-position: 50% 20%; filter: blur(30px) saturate(.75); opacity: .45; }
  .wp-site-blocks .v2-slot__facade::after{ content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(180deg, rgba(3, 25, 59, .15) 45%, rgba(3, 25, 59, .82) 100%); }
  .wp-site-blocks .v2-slot__facade:hover .v2-slot__poster{ transform: scale(1.04); }
  .wp-site-blocks .v2-slot__play{ position: absolute; z-index: 2; right: var(--s3); bottom: 20px; width: 64px; height: 64px; display: grid; place-items: center; border-radius: 50%; background: var(--red); color: #fff; box-shadow: 0 12px 34px rgba(3, 25, 59, .45); transition: transform 250ms var(--ease), background 250ms var(--ease); }
  .wp-site-blocks .v2-slot__play svg{ width: 28px; height: 28px; fill: currentColor; margin-left: 3px; }
  .wp-site-blocks .v2-slot__facade:hover .v2-slot__play{ background: var(--red-deep); transform: scale(1.07); }
  .wp-site-blocks .v2-slot__facade:focus-visible{ outline: 3px solid var(--focus); outline-offset: 3px; }
  .wp-site-blocks .v2-slot__cap{ position: absolute; z-index: 2; left: var(--s3); bottom: 20px; font-family: var(--font-ui); font-weight: 500; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: #fff; }

  .wp-site-blocks .v2-prof__tags h3{ margin: 0 0 var(--s2); color: var(--red); }
  @media (min-width: 620px) { .wp-site-blocks .v2-taglist{ grid-template-columns: 1fr 1fr; } }
  .wp-site-blocks .v2-subhero__marks{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin: 0 0 var(--s3); }
  .wp-site-blocks .v2-subhero__marks .v2-eyebrow{ margin: 0; }

  .wp-site-blocks .v2-slot__title{ margin: 0; font-family: var(--font-display); font-size: 30px; color: #fff; }
  .wp-site-blocks .v2-slot__empty p{ max-width: 46ch; }

  /* profile page rhythm: intro + video read as one white block, then paper schedule, then white */
  .wp-site-blocks .page-reps .v2-video-section{ padding-top: 0; }

  /* ── Other reps strip ─────────────────────────────────── */
  .wp-site-blocks .v2-more{ background: var(--white); }
  .wp-site-blocks .v2-more__grid{ display: grid; grid-template-columns: 1fr; gap: var(--s3); }
  @media (min-width: 480px) { .wp-site-blocks .v2-more__grid{ grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1024px) { .wp-site-blocks .v2-more__grid{ grid-template-columns: repeat(4, 1fr); } }
  .wp-site-blocks .v2-more__nav{ display: none; }
  /* mobile: one card at a time with the next one peeking, so it reads as a carousel */
  @media (max-width: 767.98px) {
    .wp-site-blocks .v2-more__rail{ position: relative; }
    .wp-site-blocks .v2-more__grid{
      grid-auto-flow: column; grid-auto-columns: 78%; grid-template-columns: none;
      overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: var(--gutter);
      margin-inline: calc(-1 * var(--gutter)); margin-block: -10px -40px;
      padding: 10px var(--gutter) 40px;
      scrollbar-width: none; -ms-overflow-style: none;
    }
    .wp-site-blocks .v2-more__grid::-webkit-scrollbar{ display: none; }
    .wp-site-blocks .v2-more__grid > *{ scroll-snap-align: start; }
    /* no lift inside a scroller: the raised card and its deeper shadow get clipped */
    .wp-site-blocks .v2-more__grid .v2-rep:hover{ transform: none; box-shadow: 0 2px 6px rgba(3, 25, 59, .05), 0 12px 32px rgba(3, 25, 59, .07); }
    .wp-site-blocks .v2-more__nav{ display: flex; justify-content: center; gap: 10px; margin-top: var(--s2); }
    .wp-site-blocks .v2-more__arrow{
      width: 42px; height: 42px; display: grid; place-items: center; padding: 0;
      border: 1px solid var(--line); border-radius: 50%; background: #fff; cursor: pointer;
      font-family: var(--font-ui); font-size: 20px; line-height: 1; color: var(--navy);
      transition: background 200ms var(--ease), color 200ms var(--ease), border-color 200ms var(--ease);
    }
    .wp-site-blocks .v2-more__arrow:hover{ background: var(--navy); border-color: var(--navy); color: #fff; }
    .wp-site-blocks .v2-more__arrow:focus-visible{ outline: 3px solid var(--focus); outline-offset: 2px; }
    .wp-site-blocks .v2-more__arrow[disabled]{ opacity: .35; cursor: default; }
  }

  /* ── Legal pages (Privacy / Terms) ────────────────────── */
  .wp-site-blocks .v2-subhero--legal .v2-subhero__grid{ display: block; }
  .wp-site-blocks .v2-subhero--legal .v2-subhero__copy{ width: 100%; min-height: 0; padding-block: clamp(36px, 3.4vw, 56px); }
  .wp-site-blocks .v2-subhero--legal .v2-subhero__title{ max-width: 24ch; }
  .wp-site-blocks .v2-subhero__stamp{ margin-top: var(--s3); font-family: var(--font-ui); font-size: 14px; letter-spacing: .06em; text-transform: uppercase; color: var(--on-dark-muted); }
  .wp-site-blocks .v2-legal{ background: var(--white); }
  .wp-site-blocks .v2-legal__grid{ display: grid; grid-template-columns: 1fr; gap: var(--s5); align-items: start; }
  .wp-site-blocks .v2-legal__grid > *{ min-width: 0; }  /* без этого min-width:560 у таблицы растягивает трек и появляется горизонтальный скролл на 390/480 */
  @media (min-width: 1024px) { .wp-site-blocks .v2-legal__grid{ grid-template-columns: minmax(0, 240px) minmax(0, 1fr); gap: var(--s7); } }
  .wp-site-blocks .v2-toc{ position: sticky; top: calc(var(--header) + 24px); }
  .wp-site-blocks .v2-toc__heading{ margin: 0 0 var(--s2); font-family: var(--font-ui); font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--muted); }
  .wp-site-blocks .v2-toc ol{ padding-left: 26px; }
  .wp-site-blocks .v2-toc li{ border-top: 1px solid var(--line); }
  .wp-site-blocks .v2-toc li:last-child{ border-bottom: 1px solid var(--line); }
  .wp-site-blocks .v2-toc li::marker{ font-family: var(--font-ui); font-size: 13px; color: var(--red); }
  .wp-site-blocks .v2-toc a{ display: block; padding: 10px 0; font-size: 15px; line-height: 1.35; color: var(--navy); }
  .wp-site-blocks .v2-toc a:hover{ color: var(--red); }
  .wp-site-blocks .v2-prose{ max-width: 72ch; min-width: 0; }
  .wp-site-blocks .v2-prose > section{ padding-top: var(--s5); scroll-margin-top: calc(var(--header) + 16px); }
  .wp-site-blocks .v2-prose > section:first-child{ padding-top: 0; }
  .wp-site-blocks .v2-prose h2{ font-size: clamp(28px, 1.4vw + 16px, 36px); margin-bottom: var(--s3); }
  .wp-site-blocks .v2-prose h3{ font-size: 22px; margin: var(--s4) 0 var(--s2); }
  .wp-site-blocks .v2-prose p, .wp-site-blocks .v2-prose li{ line-height: 1.6; }
  .wp-site-blocks .v2-prose ul:not(.v2-check){ margin: var(--s2) 0; }
  .wp-site-blocks .v2-prose ul:not(.v2-check) li{ position: relative; padding-left: 22px; margin-bottom: 8px; }
  .wp-site-blocks .v2-prose ul:not(.v2-check) li::before{ content: ""; position: absolute; left: 2px; top: 11px; width: 6px; height: 6px; background: var(--red); transform: rotate(45deg); }
  .wp-site-blocks .v2-prose dl.v2-contact{ margin-top: var(--s3); }
  .wp-site-blocks .v2-prose dl.v2-contact > div{ display: grid; grid-template-columns: 1fr; gap: 2px; padding: 12px 0; border-top: 1px solid var(--line); }
  @media (min-width: 480px) { .wp-site-blocks .v2-prose dl.v2-contact > div{ grid-template-columns: 160px 1fr; gap: var(--s2); } }
  .wp-site-blocks .v2-prose dl.v2-contact > div:last-child{ border-bottom: 1px solid var(--line); }
  .wp-site-blocks .v2-prose dl.v2-contact dt{ font-family: var(--font-ui); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); padding-top: 4px; }
  .wp-site-blocks .v2-table-wrap{ overflow-x: auto; margin: var(--s3) 0; }
  .wp-site-blocks .v2-table{ width: 100%; border-collapse: collapse; font-size: 15px; min-width: 560px; }
  .wp-site-blocks .v2-table th, .wp-site-blocks .v2-table td{ text-align: left; vertical-align: top; padding: 12px 14px; border-bottom: 1px solid var(--line); }
  .wp-site-blocks .v2-table thead th{ font-family: var(--font-ui); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); background: var(--paper); border-bottom: 2px solid var(--navy); }
  .wp-site-blocks .v2-table tbody tr:hover{ background: var(--paper); }
  .wp-site-blocks .v2-table code{ font-family: ui-monospace, "SF Mono", Menlo, monospace; font-size: 13px; }
  .wp-site-blocks .v2-note{ padding: var(--s3); margin: var(--s3) 0; background: var(--paper); border-left: 4px solid var(--navy); }
  .wp-site-blocks .v2-note p:first-child{ font-family: var(--font-ui); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--navy); margin-bottom: 8px; }
  .wp-site-blocks .v2-todo{ padding: var(--s3); margin: var(--s3) 0; border: 2px dashed var(--red); background: repeating-linear-gradient(-45deg, transparent 0 12px, rgba(214, 40, 40, .04) 12px 24px); }
  .wp-site-blocks .v2-todo__label{ display: inline-flex; align-items: center; gap: 8px; margin: 0 0 8px; font-family: var(--font-ui); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--red); }
  .wp-site-blocks .v2-todo p:last-child{ margin-bottom: 0; }
  .wp-site-blocks .v2-draft{ background: var(--red); color: #fff; }
  .wp-site-blocks .v2-draft__in{ display: flex; flex-wrap: wrap; gap: 4px var(--s2); padding-block: 12px; font-family: var(--font-ui); font-size: 13px; letter-spacing: .06em; }
  .wp-site-blocks .v2-draft strong{ text-transform: uppercase; letter-spacing: .12em; }

