/* ants-theme stylesheet bundle: tokens, base, layout, components. Built by _tools/build-css.py; edit the sources. */
@font-face {
font-family: "Archivo";
src: url("../fonts/archivo-latin.woff2") format("woff2-variations");
font-weight: 400 700;
font-style: normal;
font-display: swap;
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
font-family: "Source Serif 4";
src: url("../fonts/source-serif-4-latin.woff2") format("woff2");
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "IBM Plex Mono";
src: url("../fonts/plex-mono-latin.woff2") format("woff2");
font-weight: 400 500;
font-style: normal;
font-display: swap;
}
:root {
--ants-ink:        #081120;
--ants-ink-2:      #0A1424;
--ants-paper:      #FAF8F5;
--ants-tinted:     #F2EFE9;
--ants-white:      #FFFFFF;
--ants-red:        #E1251B;
--ants-red-deep:   #C42116;
--ants-rose:       #F2C9C4;
--ants-gold:       #C9A227;
--ants-gold-deep:  #7A5F0A;
--ants-text:       #0A1424;
--ants-text-lead:  rgba(10, 20, 36, 0.82);
--ants-text-body:  rgba(10, 20, 36, 0.72);
--ants-text-soft:  rgba(10, 20, 36, 0.66);
--ants-text-mute:  rgba(10, 20, 36, 0.62);
--ants-on-dark:       rgba(250, 248, 245, 0.88);
--ants-on-dark-lead:  rgba(250, 248, 245, 0.74);
--ants-on-dark-soft:  rgba(250, 248, 245, 0.66);
--ants-on-dark-mute:  rgba(250, 248, 245, 0.55);
--ants-rule:        rgba(10, 20, 36, 0.12);
--ants-rule-2:      rgba(10, 20, 36, 0.16);
--ants-rule-3:      rgba(10, 20, 36, 0.22);
--ants-rule-dash:   rgba(10, 20, 36, 0.28);
--ants-rule-dark:   rgba(255, 255, 255, 0.09);
--ants-rule-dark-2: rgba(255, 255, 255, 0.14);
--ants-rule-dark-3: rgba(255, 255, 255, 0.24);
--ants-font:        "Archivo", "Helvetica Neue", Helvetica, Arial, sans-serif;
--ants-font-serif:  "Source Serif 4", Georgia, "Times New Roman", serif;
--ants-font-mono:   "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;
--ants-h1-hero: clamp(2.75rem, 1.6rem + 4.9vw, 4.875rem);
--ants-h1:      clamp(2.25rem, 1.45rem + 3.4vw, 3.875rem);
--ants-h2:      clamp(1.75rem, 1.25rem + 2.1vw, 2.5rem);
--ants-h2-sm:   clamp(1.625rem, 1.2rem + 1.8vw, 2.125rem);
--ants-h3:      clamp(1.125rem, 1.02rem + 0.45vw, 1.34rem);
--ants-lead:    1.219rem;
--ants-body:    1.063rem;
--ants-sm:      0.906rem;
--ants-xs:      0.844rem;
--ants-eyebrow: 0.656rem;
--ants-tag:     0.625rem;
--ants-lh-tight: 1.06;
--ants-lh-head:  1.14;
--ants-lh-body:  1.66;
--ants-lh-lead:  1.62;
--ants-track-hero: -0.035em;
--ants-track-head: -0.03em;
--ants-track-mono: 0.2em;
--ants-track-tag:  0.14em;
--ants-container: 1280px;
--ants-gutter:    clamp(1.25rem, 0.5rem + 3vw, 2.5rem);
--ants-measure:   72ch;
--ants-band:    clamp(3.5rem, 2rem + 6vw, 6rem);
--ants-band-lg: clamp(4rem, 2rem + 8vw, 6.5rem);
--ants-band-sm: clamp(2.5rem, 1.5rem + 4vw, 4.25rem);
--ants-gap-xs: 0.5rem;
--ants-gap-sm: 0.875rem;
--ants-gap:    1.125rem;
--ants-gap-md: 1.625rem;
--ants-gap-lg: 2.75rem;
--ants-gap-xl: 3.5rem;
--ants-hairline: 1px;
--ants-target:     44px;
--ants-transition: 160ms ease;
--ants-focus:      2px solid var(--ants-red);
}
*,
*::before,
*::after { box-sizing: border-box; }
html {
-webkit-text-size-adjust: 100%;
scroll-behavior: smooth;
scroll-padding-top: 140px;
}
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior: auto; }
*,
*::before,
*::after {
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
}
}
body {
margin: 0;
background: var(--ants-paper);
color: var(--ants-text);
font-family: var(--ants-font);
font-size: var(--ants-body);
line-height: var(--ants-lh-body);
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-rendering: optimizeLegibility;
}
h1, h2, h3, h4, h5, h6 {
margin: 0 0 0.5em;
font-family: var(--ants-font);
font-weight: 600;
line-height: var(--ants-lh-head);
letter-spacing: var(--ants-track-head);
text-wrap: balance;
color: var(--ants-text);
}
h1 {
font-size: var(--ants-h1);
line-height: var(--ants-lh-tight);
letter-spacing: var(--ants-track-hero);
}
h2 { font-size: var(--ants-h2); }
h3 { font-size: var(--ants-h3); letter-spacing: -0.015em; line-height: 1.26; }
h4 { font-size: var(--ants-body); letter-spacing: -0.01em; }
h5, h6 { font-size: var(--ants-sm); letter-spacing: 0; }
p {
margin: 0 0 1em;
text-wrap: pretty;
}
p:last-child { margin-bottom: 0; }
strong, b { font-weight: 600; color: var(--ants-text); }
a {
color: var(--ants-text);
text-decoration: none;
transition: color var(--ants-transition);
}
a:hover { color: var(--ants-red-deep); }
.ants-prose a,
p > a {
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 0.2em;
}
:focus-visible {
outline: var(--ants-focus);
outline-offset: 2px;
}
ul, ol { margin: 0 0 1em; padding-left: 1.25em; }
li { margin-bottom: 0.35em; }
img, svg, video {
max-width: 100%;
height: auto;
display: block;
}
figure { margin: 0; }
blockquote {
margin: 0;
font-family: var(--ants-font-serif);
font-size: var(--ants-lead);
line-height: 1.55;
text-wrap: pretty;
}
blockquote cite {
display: block;
margin-top: 0.75em;
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
font-style: normal;
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-text-mute);
}
table {
width: 100%;
border-collapse: collapse;
font-size: var(--ants-sm);
}
th, td {
padding: 0.75rem 0;
border-bottom: 1px solid var(--ants-rule);
text-align: left;
vertical-align: top;
}
th { font-weight: 600; }
.wp-block-table { margin-block: 1.75rem; }
.wp-block-table table :is(th, td) {
border: 0;
border-bottom: 1px solid var(--ants-rule);
padding: 0.85rem 1.25rem 0.85rem 0;
}
.wp-block-table table :is(th, td):last-child { padding-right: 0; }
.wp-block-table thead { border: 0; }
.wp-block-table table thead th {
border-bottom: 1px solid var(--ants-rule-3);
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
font-weight: 400;
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-text-mute);
}
.wp-block-table tbody td:first-child { font-weight: 600; color: var(--ants-text); }
.wp-block-table table:has(th:nth-child(4)) td { min-width: 9rem; }
input, select, textarea, button {
font-family: inherit;
font-size: var(--ants-sm);
}
hr {
border: 0;
border-top: 1px solid var(--ants-rule);
margin: var(--ants-gap-lg) 0;
}
code, kbd, samp, pre { font-family: var(--ants-font-mono); font-size: 0.9em; }
::selection { background: var(--ants-red); color: #fff; }
.screen-reader-text {
position: absolute !important;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip-path: inset(50%);
white-space: nowrap;
border: 0;
}
.skip-link:focus {
position: fixed;
inset-block-start: 0.5rem;
inset-inline-start: 0.5rem;
z-index: 999;
clip-path: none;
width: auto;
height: auto;
margin: 0;
padding: 0.75rem 1.25rem;
background: var(--ants-red);
color: #fff;
font-weight: 600;
}
p, li, dd, td, code, address { overflow-wrap: break-word; }
code { overflow-wrap: anywhere; }
.ants-container {
width: 100%;
max-width: var(--ants-container);
margin-inline: auto;
padding-inline: var(--ants-gutter);
}
.ants-container--narrow { max-width: 900px; }
.wp-site-blocks > * + *,
:where(.is-layout-flow, .is-layout-constrained) > .alignfull + .alignfull,
:where(.is-layout-flow, .is-layout-constrained) > .alignfull + .wp-block-post-content,
.wp-block-post-content > .alignfull:first-child {
margin-block-start: 0;
}
.ants-band    { padding-block: var(--ants-band); }
.ants-band-sm { padding-block: var(--ants-band-sm); }
.ants-band-lg { padding-block: var(--ants-band-lg); }
.ants-dark   { background: var(--ants-ink);    color: var(--ants-on-dark); }
.ants-dark-2 { background: var(--ants-ink-2);  color: var(--ants-on-dark); }
.ants-tinted { background: var(--ants-tinted); }
.ants-paper  { background: var(--ants-paper); }
.ants-dark  h1, .ants-dark  h2, .ants-dark  h3,
.ants-dark  h4, .ants-dark  h5, .ants-dark  h6,
.ants-dark-2 h1, .ants-dark-2 h2, .ants-dark-2 h3,
.ants-dark-2 h4, .ants-dark-2 h5, .ants-dark-2 h6 { color: var(--ants-paper); }
.ants-dark a,
.ants-dark-2 a { color: var(--ants-paper); }
.ants-dark a:hover,
.ants-dark-2 a:hover { color: var(--ants-rose); }
.ants-tinted + .ants-tinted,
.ants-paper  + .ants-paper { padding-block-start: 0; }
.ants-band--ruled { border-top: 1px solid var(--ants-rule); }
.ants-grid-texture { position: relative; overflow: hidden; isolation: isolate; }
.ants-grid-texture::before {
content: "";
position: absolute;
inset: 0;
z-index: -1;
pointer-events: none;
background-image:
linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
background-size: 68px 68px;
mask-image: radial-gradient(120% 90% at 78% 20%, #000 20%, transparent 72%);
}
.ants-grid { display: grid; gap: var(--ants-gap-md); }
.ants-grid--2 { grid-template-columns: repeat(auto-fit, minmax(max(280px, 34%), 1fr)); }
.ants-grid--3 { grid-template-columns: repeat(auto-fit, minmax(max(260px, 25.5%), 1fr)); }
.ants-grid--4 { grid-template-columns: repeat(auto-fit, minmax(max(220px, 20.5%), 1fr)); }
.ants-hairgrid {
display: grid;
gap: var(--ants-hairline);
background: var(--ants-rule);
}
.ants-hairgrid > * { background: var(--ants-paper); }
.ants-tinted .ants-hairgrid > * { background: var(--ants-tinted); }
.ants-dark .ants-hairgrid,
.ants-dark-2 .ants-hairgrid { background: var(--ants-rule-dark-2); }
.ants-dark .ants-hairgrid > * { background: var(--ants-ink); }
.ants-dark-2 .ants-hairgrid > * { background: var(--ants-ink-2); }
.ants-hairgrid--2 { grid-template-columns: repeat(auto-fit, minmax(max(260px, 34%), 1fr)); }
.ants-hairgrid--3 { grid-template-columns: repeat(auto-fit, minmax(max(240px, 25.5%), 1fr)); }
.ants-hairgrid--4 { grid-template-columns: repeat(auto-fit, minmax(max(210px, 20.5%), 1fr)); }
.ants-hairgrid--5 { grid-template-columns: repeat(auto-fit, minmax(max(190px, 17%), 1fr)); }
.ants-split { display: grid; gap: var(--ants-gap-xl); }
@media (min-width: 900px) {
.ants-split          { grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr); }
.ants-split--even    { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.ants-split--wide-l  { grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); }
.ants-split--narrow-l{ grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr); }
}
.ants-sechead {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: var(--ants-gap-lg);
flex-wrap: wrap;
margin-bottom: var(--ants-gap-lg);
}
.ants-sechead__main { max-width: 640px; }
.ants-sechead__main > :last-child { margin-bottom: 0; }
.ants-sechead__aside {
max-width: 340px;
margin: 0 0 6px;
font-family: var(--ants-font-serif);
font-size: 1.063rem;
line-height: 1.58;
color: var(--ants-text-soft);
}
.ants-dark .ants-sechead__aside,
.ants-dark-2 .ants-sechead__aside { color: var(--ants-on-dark-soft); }
.ants-header {
position: sticky;
inset-block-start: 0;
z-index: 100;
background: rgba(8, 17, 32, 0.97);
backdrop-filter: blur(12px);
border-bottom: 1px solid var(--ants-rule-dark);
color: var(--ants-on-dark);
}
.ants-header__utility { border-bottom: 1px solid rgba(255, 255, 255, 0.07); }
.ants-header__utility .ants-container {
min-height: 38px;
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--ants-gap-md);
font-family: var(--ants-font-mono);
font-size: var(--ants-eyebrow);
letter-spacing: var(--ants-track-tag);
}
.ants-header__credentials { color: var(--ants-on-dark-mute); }
.ants-header__links {
display: flex;
align-items: center;
gap: 22px;
white-space: nowrap;
}
.ants-header__links a { color: var(--ants-on-dark-soft); }
.ants-header__links a:hover { color: var(--ants-paper); }
.ants-header__links a.is-primary { color: var(--ants-on-dark); }
@media (max-width: 767px) {
.ants-header__credentials { display: none; }
.ants-header__links { margin-inline-start: auto; gap: 16px; }
.ants-header__contact { display: none; }
}
@media (max-width: 400px) {
.ants-header__email { display: none; }
}
.ants-header__bar {
min-height: 78px;
display: flex;
align-items: center;
gap: var(--ants-gap-md);
}
.ants-header__logo { flex: none; display: flex; align-items: center; }
.ants-header__logo img,
.ants-header__logo svg { width: 116px; height: auto; }
.ants-header__cta { margin-inline-start: auto; flex: none; }
@media (max-width: 1099px) {
.ants-header .ants-header__cta { display: none; }
}
.ants-nav ul { list-style: none; margin: 0; padding: 0; }
.ants-nav > ul {
display: flex;
align-items: center;
gap: 2px;
flex-wrap: wrap;
}
.ants-nav a,
.ants-nav__toggle {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 28px 11px;
color: var(--ants-on-dark-lead);
font-family: inherit;
font-size: var(--ants-sm);
font-weight: 500;
white-space: nowrap;
background: none;
border: 0;
border-bottom: 2px solid transparent;
cursor: pointer;
transition: color var(--ants-transition), border-color var(--ants-transition);
}
.ants-nav a:hover,
.ants-nav__toggle:hover,
.ants-nav__toggle[aria-expanded="true"] { color: var(--ants-paper); }
.ants-nav .current-menu-item > a,
.ants-nav [aria-current="page"] {
color: var(--ants-paper);
border-bottom-color: var(--ants-red);
}
.ants-nav__toggle::after {
content: "";
width: 6px;
height: 6px;
border-right: 1.5px solid currentColor;
border-bottom: 1.5px solid currentColor;
transform: rotate(45deg) translateY(-2px);
transition: transform var(--ants-transition);
}
.ants-nav__toggle[aria-expanded="true"]::after { transform: rotate(-135deg) translateY(0); }
.ants-nav__panel {
display: none;
position: absolute;
inset-inline: 0;
inset-block-start: 100%;
background: var(--ants-paper);
border-bottom: 1px solid var(--ants-rule);
box-shadow: 0 24px 48px -24px rgba(10, 20, 36, 0.3);
}
.ants-nav__panel.is-open { display: block; }
.ants-nav__panel .ants-container {
display: grid;
gap: var(--ants-gap-xl);
padding-block: 36px 40px;
}
@media (min-width: 900px) {
.ants-nav__panel .ants-container { grid-template-columns: 250px 1fr; }
}
.ants-nav__panel-blurb {
margin: 0;
font-family: var(--ants-font-serif);
font-size: 1.031rem;
line-height: 1.5;
color: var(--ants-text-mute);
}
.ants-nav__panel-links {
display: grid;
gap: 8px 28px;
grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
align-content: start;
}
.ants-nav__panel-links a {
display: block;
padding: 9px 0;
border-bottom: 1px solid rgba(10, 20, 36, 0.08);
color: var(--ants-text);
font-size: var(--ants-sm);
font-weight: 500;
white-space: normal;
}
.ants-nav__panel-links a:hover { color: var(--ants-red-deep); }
.ants-nav__burger {
display: inline-flex;
flex-direction: column;
justify-content: center;
gap: 4px;
flex: none;
width: var(--ants-target);
height: var(--ants-target);
margin-inline-start: auto;
padding: 0;
background: none;
border: 0;
cursor: pointer;
}
.ants-nav__burger span {
display: block;
height: 2px;
background: var(--ants-paper);
}
@media (max-width: 1023px) {
.ants-header__bar { min-height: 64px; }
.ants-nav {
display: none;
position: absolute;
inset-inline: 0;
inset-block-start: 100%;
max-height: calc(100vh - 102px);
overflow-y: auto;
background: var(--ants-ink-2);
border-top: 1px solid var(--ants-rule-dark);
padding: var(--ants-gap-sm) var(--ants-gutter) var(--ants-gap-md);
}
.ants-nav.is-open { display: block; }
.ants-nav > ul { flex-direction: column; align-items: stretch; gap: 0; }
.ants-nav > ul > li { border-bottom: 1px solid var(--ants-rule-dark); }
.ants-nav a,
.ants-nav__toggle {
width: 100%;
padding: 14px 0;
justify-content: space-between;
border-bottom: 0;
}
.ants-nav__panel {
position: static;
display: none;
background: none;
border: 0;
box-shadow: none;
}
.ants-nav__panel.is-open { display: block; }
.ants-nav__panel .ants-container {
padding: 0 0 var(--ants-gap-sm);
grid-template-columns: 1fr;
gap: var(--ants-gap-sm);
}
.ants-nav__panel-blurb { display: none; }
.ants-nav__panel-links a {
color: var(--ants-on-dark-lead);
border-bottom-color: rgba(255, 255, 255, 0.08);
padding-inline-start: 14px;
}
.ants-nav__panel-links a:hover { color: var(--ants-paper); }
}
@media (min-width: 1024px) {
.ants-nav__burger { display: none; }
.ants-nav { display: block; }
}
.ants-footer {
background: var(--ants-ink);
color: var(--ants-on-dark-lead);
font-size: var(--ants-sm);
}
.ants-footer__cols {
display: grid;
gap: var(--ants-gap-xl);
padding-block: 72px 0;
}
@media (min-width: 900px) {
.ants-footer__cols { grid-template-columns: 1.25fr repeat(3, 1fr); }
}
.ants-footer__brand { display: flex; flex-direction: column; gap: var(--ants-gap-sm); }
.ants-footer__logo img,
.ants-footer__logo svg { width: 148px; height: auto; }
.ants-footer__tagline {
margin: 0;
font-family: var(--ants-font-serif);
font-style: italic;
font-size: 1.188rem;
color: var(--ants-on-dark);
}
.ants-footer__entities {
margin: 0;
max-width: 320px;
font-size: var(--ants-xs);
line-height: 1.72;
color: var(--ants-on-dark-mute);
}
.ants-footer__contact {
display: flex;
flex-direction: column;
gap: 4px;
font-size: var(--ants-xs);
line-height: 1.7;
color: var(--ants-on-dark-soft);
}
.ants-footer__contact a { color: var(--ants-on-dark); }
.ants-footer__hours { margin: 8px 0 0; }
.ants-footer h2,
.ants-footer h3 {
margin-bottom: 13px;
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
font-weight: 400;
letter-spacing: 0.18em;
text-transform: uppercase;
color: rgba(250, 248, 245, 0.58);
}
.ants-footer ul { list-style: none; margin: 0; padding: 0; }
.ants-footer li { margin-bottom: 9px; }
.ants-footer li a { color: var(--ants-on-dark-lead); font-size: var(--ants-sm); }
.ants-footer li a:hover { color: var(--ants-paper); }
.ants-footer__legal {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
gap: var(--ants-gap-md);
margin-block-start: 56px;
padding-block: 40px;
border-top: 1px solid rgba(255, 255, 255, 0.1);
font-family: var(--ants-font-mono);
font-size: 0.688rem;
letter-spacing: 0.08em;
color: var(--ants-on-dark-mute);
}
.ants-footer__legal a { color: var(--ants-on-dark-mute); }
.ants-footer__legal a:hover { color: var(--ants-paper); }
.ants-footer__legal-links { display: flex; gap: 24px; flex-wrap: wrap; }
.ants-eyebrow {
display: block;
margin-bottom: var(--ants-gap-sm);
font-family: var(--ants-font-mono);
font-size: var(--ants-eyebrow);
font-weight: 400;
letter-spacing: var(--ants-track-mono);
text-transform: uppercase;
color: var(--ants-red-deep);
}
.ants-dark .ants-eyebrow,
.ants-dark-2 .ants-eyebrow { color: var(--ants-rose); }
.ants-eyebrow--gold { color: var(--ants-gold-deep); }
.ants-dark .ants-eyebrow--gold,
.ants-dark-2 .ants-eyebrow--gold { color: var(--ants-gold); }
.ants-label {
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-text-mute);
}
.ants-dark .ants-label,
.ants-dark-2 .ants-label { color: var(--ants-on-dark-mute); }
.ants-lead {
font-size: var(--ants-lead);
line-height: var(--ants-lh-lead);
color: var(--ants-text-lead);
}
.ants-dark .ants-lead,
.ants-dark-2 .ants-lead { color: var(--ants-on-dark-lead); }
.ants-accent {
font-family: var(--ants-font-serif);
font-style: italic;
font-weight: 400;
color: var(--ants-rose);
}
.ants-serif {
font-family: var(--ants-font-serif);
font-size: 1.031rem;
line-height: 1.56;
color: var(--ants-text-soft);
}
.ants-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
min-height: var(--ants-target);
padding: 16px 30px;
border: 1px solid transparent;
font-family: inherit;
font-size: 0.969rem;
font-weight: 600;
line-height: 1.2;
text-align: center;
text-decoration: none;
cursor: pointer;
transition: background var(--ants-transition), border-color var(--ants-transition), color var(--ants-transition);
}
.ants-btn--primary { background: var(--ants-red); color: #fff; }
.ants-btn--primary:hover { background: var(--ants-red-deep); color: #fff; }
.ants-btn--ink { background: var(--ants-ink-2); color: #fff; }
.ants-btn--ink:hover { background: var(--ants-ink); color: #fff; }
.ants-btn--ghost {
background: none;
border-color: var(--ants-rule-3);
color: var(--ants-text);
font-weight: 500;
}
.ants-btn--ghost:hover { border-color: var(--ants-ink-2); color: var(--ants-text); }
.ants-dark .ants-btn--ghost,
.ants-dark-2 .ants-btn--ghost {
border-color: rgba(255, 255, 255, 0.28);
color: var(--ants-paper);
}
.ants-dark .ants-btn--ghost:hover,
.ants-dark-2 .ants-btn--ghost:hover {
border-color: rgba(255, 255, 255, 0.7);
color: var(--ants-paper);
}
.ants-btns { display: flex; flex-wrap: wrap; gap: 14px; }
.ants-link {
display: inline-flex;
align-items: center;
gap: 8px;
align-self: flex-start;
padding-bottom: 5px;
border-bottom: 1px solid var(--ants-red);
font-family: var(--ants-font-mono);
font-size: 0.75rem;
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
text-decoration: none;
white-space: nowrap;
}
@media (max-width: 599px) {
.ants-link { max-width: 100%; white-space: normal; }
}
.ants-dark .ants-link,
.ants-dark-2 .ants-link { border-bottom-color: rgba(255, 255, 255, 0.3); }
.ants-dark .ants-link:hover,
.ants-dark-2 .ants-link:hover { border-bottom-color: var(--ants-red); }
.ants-metrics {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}
.ants-metrics__item {
display: flex;
flex-direction: column;
gap: 7px;
padding: 34px 26px 36px;
border-inline-end: 1px solid var(--ants-rule-dark);
}
.ants-metrics__item:last-child { border-inline-end: 0; }
.ants-metrics__value {
font-size: 1.875rem;
font-weight: 600;
letter-spacing: -0.02em;
line-height: 1.15;
color: var(--ants-paper);
}
.ants-metrics__label {
font-family: var(--ants-font-mono);
font-size: var(--ants-eyebrow);
letter-spacing: var(--ants-track-tag);
line-height: 1.6;
text-transform: uppercase;
color: var(--ants-on-dark-mute);
}
.ants-card {
display: flex;
flex-direction: column;
gap: 14px;
padding: 30px 26px 34px;
transition: background var(--ants-transition);
}
.ants-card > :last-child { margin-bottom: 0; }
.ants-card__body { font-size: var(--ants-sm); line-height: 1.58; color: var(--ants-text-mute); }
.ants-dark .ants-card__body,
.ants-dark-2 .ants-card__body { color: var(--ants-on-dark-soft); }
.ants-card__cta {
margin-block-start: auto;
padding-block-start: 4px;
font-family: var(--ants-font-mono);
font-size: var(--ants-eyebrow);
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-red-deep);
}
.ants-dark .ants-card__cta,
.ants-dark-2 .ants-card__cta { color: var(--ants-rose); }
a.ants-card { color: inherit; text-decoration: none; }
a.ants-card:hover { background: var(--ants-paper); color: inherit; }
.ants-dark a.ants-card:hover,
.ants-dark-2 a.ants-card:hover { background: rgba(255, 255, 255, 0.03); }
.ants-tile {
display: flex;
flex-direction: column;
gap: 10px;
padding: 26px 22px 28px;
border: 1px solid var(--ants-rule-2);
color: inherit;
text-decoration: none;
transition: border-color var(--ants-transition), background var(--ants-transition);
}
.ants-tile:hover { border-color: var(--ants-text); color: inherit; }
.ants-dark .ants-tile,
.ants-dark-2 .ants-tile { border-color: rgba(255, 255, 255, 0.16); }
.ants-dark .ants-tile:hover,
.ants-dark-2 .ants-tile:hover {
border-color: var(--ants-red-deep);
background: rgba(255, 255, 255, 0.03);
}
.ants-tile__tag {
margin-block-start: auto;
padding-block-start: 6px;
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-text-mute);
}
.ants-dark .ants-tile__tag,
.ants-dark-2 .ants-tile__tag { color: var(--ants-on-dark-mute); }
.ants-frame {
border: 1px solid var(--ants-rule-2);
overflow: hidden;
background: var(--ants-tinted);
}
.ants-frame img { width: 100%; height: 100%; object-fit: cover; }
.ants-dark .ants-frame,
.ants-dark-2 .ants-frame {
border-color: rgba(255, 255, 255, 0.16);
background: rgba(255, 255, 255, 0.02);
}
.ants-frame--contain { background: #fff; }
.ants-frame--contain img { object-fit: contain; }
.ants-chip {
display: inline-block;
padding: 7px 11px;
border: 1px solid var(--ants-rule-3);
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--ants-text-soft);
text-decoration: none;
transition: border-color var(--ants-transition), color var(--ants-transition);
}
a.ants-chip:hover { border-color: var(--ants-red-deep); color: var(--ants-red-deep); }
.ants-dark .ants-chip,
.ants-dark-2 .ants-chip { border-color: var(--ants-rule-dark-3); color: var(--ants-on-dark); }
.ants-dark a.ants-chip:hover,
.ants-dark-2 a.ants-chip:hover { border-color: var(--ants-red); color: var(--ants-paper); }
.ants-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ants-flag {
display: flex;
align-items: baseline;
gap: 12px;
padding: 12px 15px;
border: 1px dashed var(--ants-rule-dash);
font-size: var(--ants-xs);
line-height: 1.6;
color: var(--ants-text-soft);
}
.ants-flag__tag {
flex: none;
font-family: var(--ants-font-mono);
font-size: 0.594rem;
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--ants-red-deep);
}
.ants-dark .ants-flag,
.ants-dark-2 .ants-flag {
border-color: rgba(255, 255, 255, 0.3);
color: var(--ants-on-dark-soft);
}
.ants-dark .ants-flag__tag,
.ants-dark-2 .ants-flag__tag { color: var(--ants-gold); }
.ants-rows { display: flex; flex-direction: column; }
.ants-row {
display: grid;
grid-template-columns: 32px 1fr;
gap: 16px;
align-items: start;
padding-block: 17px;
border-top: 1px solid var(--ants-rule-2);
}
.ants-dark .ants-row,
.ants-dark-2 .ants-row { border-top-color: var(--ants-rule-dark-2); }
.ants-row__n {
padding-block-start: 3px;
font-family: var(--ants-font-mono);
font-size: 0.688rem;
color: var(--ants-text-mute);
}
.ants-dark .ants-row__n,
.ants-dark-2 .ants-row__n { color: var(--ants-on-dark-mute); }
.ants-row__title { font-size: 0.969rem; font-weight: 600; letter-spacing: -0.008em; }
.ants-row__body { margin: 5px 0 0; font-size: var(--ants-sm); line-height: 1.55; color: var(--ants-text-soft); }
.ants-dark .ants-row__body,
.ants-dark-2 .ants-row__body { color: var(--ants-on-dark-soft); }
.ants-pair {
display: flex;
align-items: baseline;
justify-content: space-between;
gap: 12px;
padding-block: 14px;
border-top: 1px solid var(--ants-rule-2);
}
.ants-dark .ants-pair,
.ants-dark-2 .ants-pair { border-top-color: var(--ants-rule-dark-2); }
.ants-pair__k { font-size: 0.938rem; }
.ants-pair__v {
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--ants-text-mute);
text-align: end;
}
.ants-dark .ants-pair__v,
.ants-dark-2 .ants-pair__v { color: var(--ants-on-dark-mute); }
.ants-cols-2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); column-gap: 28px; }
.ants-award {
--ants-award-year: 0px;
position: relative;
display: grid;
grid-template-columns: 96px 1fr;
grid-template-areas: "thumb year" "thumb text";
column-gap: 16px;
row-gap: 4px;
align-items: start;
padding-block: 16px;
background: linear-gradient(var(--ants-rule), var(--ants-rule)) right bottom / calc(100% - var(--ants-award-year)) 1px no-repeat;
}
@media (min-width: 600px) {
.ants-award {
--ants-award-year: 94px;
grid-template-columns: 72px 132px 1fr;
grid-template-areas: "year thumb text";
column-gap: 22px;
align-items: center;
padding-block: 18px;
}
.ants-award::before,
.ants-award::after {
content: "";
position: absolute;
pointer-events: none;
}
.ants-award::before {
inset-block: 0;
inset-inline-start: 4px;
width: 1px;
background: rgba(201, 162, 39, 0.45);
}
.ants-award:first-of-type::before { inset-block-start: 50%; }
.ants-award:last-of-type::before  { inset-block-end: 50%; }
.ants-award:only-of-type::before  { display: none; }
.ants-award::after {
inset-block-start: calc(50% - 4.5px);
inset-inline-start: 0;
width: 9px;
height: 9px;
background: var(--ants-paper);
border: 1px solid var(--ants-gold);
transition: background var(--ants-transition);
}
.ants-tinted .ants-award::after { background: var(--ants-tinted); }
.ants-award:hover::after,
.ants-award:focus-within::after { background: var(--ants-gold); }
}
.ants-award__year {
grid-area: year;
font-family: var(--ants-font-mono);
font-size: 0.813rem;
letter-spacing: 0.04em;
color: var(--ants-gold-deep);
}
@media (min-width: 600px) {
.ants-award__year { padding-inline-start: 22px; font-size: 0.938rem; letter-spacing: 0.02em; }
}
.ants-dark .ants-award__year,
.ants-dark-2 .ants-award__year { color: var(--ants-gold); }
.ants-award__thumb {
grid-area: thumb;
display: block;
padding: 4px;
background: #fff;
border: 1px solid var(--ants-rule-2);
transition: border-color var(--ants-transition);
}
.ants-award__thumb .ants-zoomable { aspect-ratio: 4 / 3; background: var(--ants-tinted); }
.ants-award__thumb img { height: 100%; object-fit: cover; }
.ants-award__text { grid-area: text; min-width: 0; }
.ants-award__title {
margin: 0 0 5px;
font-size: 1.094rem;
line-height: 1.32;
letter-spacing: -0.01em;
font-weight: 600;
transition: color var(--ants-transition);
}
.ants-award__org { font-size: var(--ants-sm); color: var(--ants-text-mute); }
.ants-dark .ants-award__org,
.ants-dark-2 .ants-award__org { color: var(--ants-on-dark-mute); }
.ants-split > .ants-awards > .ants-award:first-child { padding-block-start: 0; }
a.ants-award__thumb { cursor: zoom-in; }
a.ants-award__thumb::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.ants-award:has(a.ants-award__thumb:hover) .ants-award__thumb,
.ants-award:focus-within .ants-award__thumb { border-color: var(--ants-gold); }
.ants-award:has(a.ants-award__thumb:hover) .ants-award__title { color: var(--ants-gold-deep); }
.ants-dark .ants-award:has(a.ants-award__thumb:hover) .ants-award__title,
.ants-dark-2 .ants-award:has(a.ants-award__thumb:hover) .ants-award__title { color: var(--ants-gold); }
.ants-zoomable { position: relative; display: block; overflow: hidden; }
.ants-zoomable img {
display: block;
width: 100%;
transition: transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.ants-zoom {
position: absolute;
inset-block-end: 0;
inset-inline-end: 0;
display: flex;
align-items: center;
justify-content: center;
width: 28px;
height: 28px;
background: var(--ants-ink);
color: var(--ants-gold);
opacity: 0;
transform: translateY(4px);
transition: opacity var(--ants-transition), transform var(--ants-transition);
}
.ants-award:has(a.ants-award__thumb:hover) .ants-zoomable img,
.ants-award:focus-within .ants-zoomable img,
.ants-frame--zoom:hover .ants-zoomable img,
.ants-frame--zoom:focus-visible .ants-zoomable img { transform: scale(1.06); }
.ants-award:has(a.ants-award__thumb:hover) .ants-zoom,
.ants-award:focus-within .ants-zoom,
.ants-frame--zoom:hover .ants-zoom,
.ants-frame--zoom:focus-visible .ants-zoom { opacity: 1; transform: none; }
@media (hover: none) {
.ants-zoom { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
.ants-zoomable img { transition: none; transform: none !important; }
}
.ants-frame--zoom { display: block; padding: 16px; cursor: zoom-in; transition: border-color var(--ants-transition); }
.ants-frame--zoom:hover { border-color: var(--ants-gold); }
.ants-frame--zoom img { height: auto; }
.ants-frame--zoom .ants-zoom { width: 34px; height: 34px; }
.ants-case {
display: flex;
flex-direction: column;
border: 1px solid var(--ants-rule);
background: var(--ants-paper);
color: inherit;
text-decoration: none;
transition: border-color var(--ants-transition);
}
.ants-case:hover { border-color: var(--ants-text-mute); color: inherit; }
.ants-case__media {
aspect-ratio: 16 / 10;
border-bottom: 1px solid var(--ants-rule);
overflow: hidden;
background: var(--ants-tinted);
}
.ants-case__media img { width: 100%; height: 100%; object-fit: cover; }
.ants-case__body { display: flex; flex-direction: column; gap: 12px; flex: 1; padding: 24px 24px 28px; }
.ants-case__outcome {
margin-block-start: auto;
padding-block-start: 16px;
border-top: 1px solid var(--ants-rule);
font-family: var(--ants-font-serif);
font-size: 0.969rem;
line-height: 1.45;
color: var(--ants-text);
}
.ants-cta {
background: var(--ants-red);
color: #fff;
}
.ants-cta .ants-container {
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--ants-gap-xl);
flex-wrap: wrap;
padding-block: 84px 88px;
}
.ants-cta h2 {
margin: 0 0 16px;
max-width: 700px;
font-size: clamp(1.875rem, 1.2rem + 2.6vw, 2.875rem);
line-height: 1.08;
letter-spacing: -0.032em;
color: #fff;
}
.ants-cta p { margin: 0; max-width: 700px; font-size: 1.125rem; line-height: 1.58; color: #fff; }
.ants-cta__actions { display: flex; flex-direction: column; gap: 12px; }
.ants-cta__alt {
padding: 6px;
font-family: var(--ants-font-mono);
font-size: 0.781rem;
letter-spacing: 0.1em;
text-transform: uppercase;
text-align: center;
color: #fff;
}
.ants-cta__alt:hover { color: #fff; text-decoration: underline; }
.ants-cta .ants-btn--ink:hover { background: #000; }
.ants-crumb {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-bottom: var(--ants-gap-sm);
font-family: var(--ants-font-mono);
font-size: 0.688rem;
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-on-dark-mute);
}
.ants-crumb a { color: var(--ants-on-dark-mute); }
.ants-crumb a:hover { color: var(--ants-paper); }
.ants-crumb [aria-current] { color: var(--ants-on-dark); }
.ants-ticks { display: flex; flex-wrap: wrap; gap: 26px; }
.ants-tick {
display: flex;
flex-direction: column;
gap: 5px;
padding: 3px 0 3px 16px;
border-inline-start: 2px solid var(--ants-red);
}
.ants-tick--gold { border-inline-start-color: var(--ants-gold); }
.ants-tick__v { font-size: 1.5rem; font-weight: 600; letter-spacing: -0.02em; }
.ants-tick__k {
font-family: var(--ants-font-mono);
font-size: 0.625rem;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--ants-on-dark-mute);
}
.ants-badges {
display: inline-flex;
align-items: center;
gap: 14px;
flex-wrap: wrap;
padding: 9px 16px;
border: 1px solid rgba(255, 255, 255, 0.18);
font-family: var(--ants-font-mono);
font-size: 0.719rem;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--ants-on-dark-soft);
}
.ants-badges__sep { width: 1px; height: 12px; background: rgba(255, 255, 255, 0.4); flex: none; }
.ants-badges strong { color: var(--ants-gold); font-weight: 400; }
.ants-quote {
display: flex;
flex-direction: column;
gap: 16px;
padding: 28px 26px 30px;
border: 1px solid var(--ants-rule-2);
}
.ants-quote blockquote { font-size: 1.094rem; }
figure.ants-quote { margin: 0; background: var(--ants-paper); }
.ants-quote blockquote p { margin: 0; }
.ants-quote blockquote p::before { content: "\201C"; }
.ants-quote blockquote p::after { content: "\201D"; }
.ants-quote figcaption {
display: flex;
flex-direction: column;
gap: 4px;
margin-top: auto;
padding-top: 16px;
border-top: 1px solid var(--ants-rule);
}
.ants-quote figcaption strong { font-size: var(--ants-sm); font-weight: 600; }
.ants-quote figcaption span {
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-text-mute);
}
.ants-outcomes {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
gap: 18px 24px;
margin: 0;
padding: 0;
list-style: none;
}
.ants-outcomes li { display: flex; flex-direction: column; gap: 4px; margin: 0; }
.ants-outcomes strong {
font-size: 1.625rem;
line-height: 1.1;
letter-spacing: var(--ants-track-head);
font-weight: 600;
color: var(--ants-red-deep);
}
.ants-outcomes span { font-size: var(--ants-xs); line-height: 1.45; color: var(--ants-text-body); }
.ants-case__outcome strong { font-weight: 600; }
.ants-field { display: flex; flex-direction: column; gap: 8px; margin-bottom: 20px; }
.ants-field > span { font-size: 0.813rem; font-weight: 600; }
.ants-field .req { color: var(--ants-red-deep); }
.ants-input,
.ants-select,
.ants-textarea {
width: 100%;
padding: 13px 14px;
background: var(--ants-paper);
border: 1px solid var(--ants-rule-dash);
border-radius: 0;
color: var(--ants-text);
font-size: 0.938rem;
min-height: var(--ants-target);
}
.ants-textarea { resize: vertical; min-height: 150px; }
.ants-input:focus,
.ants-select:focus,
.ants-textarea:focus {
outline: var(--ants-focus);
outline-offset: -1px;
border-color: var(--ants-red-deep);
}
.ants-input::placeholder,
.ants-textarea::placeholder { color: var(--ants-text-mute); }
.ants-consent { display: flex; align-items: flex-start; gap: 12px; cursor: pointer; }
.ants-consent input {
width: 18px;
height: 18px;
flex: none;
margin-block-start: 2px;
accent-color: var(--ants-red-deep);
}
.ants-consent span { font-size: var(--ants-xs); line-height: 1.6; color: var(--ants-text-body); }
.ants-form__note {
margin: 0;
font-family: var(--ants-font-mono);
font-size: var(--ants-eyebrow);
letter-spacing: 0.08em;
line-height: 1.7;
color: var(--ants-text-mute);
}
.ants-form__status {
padding-inline-start: 12px;
border-inline-start: 2px solid var(--ants-red);
font-size: var(--ants-sm);
line-height: 1.5;
}
.ants-stack   { display: flex; flex-direction: column; gap: var(--ants-gap-md); align-items: flex-start; }
.ants-stack--sm { gap: var(--ants-gap-sm); }
.ants-stack > p { margin-block: 0; }
.ants-stack > :last-child { margin-bottom: 0; }
.ants-flow > * + * { margin-block-start: var(--ants-gap-md); }
.ants-hero {
display: grid;
gap: var(--ants-gap-xl);
align-items: center;
padding-block: clamp(3.5rem, 1.5rem + 8vw, 6.75rem) clamp(3rem, 1.5rem + 6vw, 6rem);
}
@media (min-width: 900px) {
.ants-hero--split { grid-template-columns: 1.15fr 0.85fr; gap: 72px; }
}
.ants-hero__body {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 30px;
}
.ants-hero__title {
margin: 0;
font-size: var(--ants-h1-hero);
line-height: 1.02;
letter-spacing: var(--ants-track-hero);
font-weight: 600;
color: var(--ants-paper);
}
.ants-hero__lead {
margin: 0;
max-width: 620px;
font-size: var(--ants-lead);
line-height: var(--ants-lh-lead);
color: var(--ants-on-dark-lead);
}
.ants-hero__sub {
margin: 0;
font-family: var(--ants-font-mono);
font-size: 0.75rem;
letter-spacing: 0.04em;
color: var(--ants-on-dark-mute);
}
.ants-hero__media { aspect-ratio: 4 / 5; max-height: 440px; }
@media (max-width: 899px) {
.ants-hero__media { aspect-ratio: 16 / 10; max-height: none; }
}
.ants-breadcrumbs ol {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin: 0 0 var(--ants-gap-sm);
padding: 0;
list-style: none;
font-family: var(--ants-font-mono);
font-size: 0.688rem;
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
}
.ants-breadcrumbs li { margin: 0; display: flex; gap: 10px; align-items: center; }
.ants-breadcrumbs li + li::before { content: "/"; opacity: 0.5; }
.ants-dark .ants-breadcrumbs a { color: var(--ants-on-dark-mute); text-decoration: none; }
.ants-dark .ants-breadcrumbs a:hover { color: var(--ants-paper); }
.ants-dark .ants-breadcrumbs [aria-current] { color: var(--ants-on-dark); }
@media (min-width: 900px) {
.ants-legal__aside { position: sticky; top: 140px; }
}
.ants-awardrow { display: grid; gap: var(--ants-gap-lg); align-items: start; }
@media (min-width: 900px) {
.ants-awardrow { grid-template-columns: 132px 1fr 300px; }
}
.ants-awardrow__year {
font-size: 2.5rem;
font-weight: 600;
letter-spacing: -0.03em;
line-height: 1;
color: var(--ants-gold-deep);
}
.ants-card--tight { gap: 7px; padding: 20px 20px 22px; }
.ants-platform__intro { display: flex; flex-direction: column; gap: 16px; align-items: flex-start; }
.ants-platform__intro .ants-eyebrow { margin-bottom: 0; }
@media (min-width: 900px) {
.ants-platform__intro { position: sticky; top: 140px; }
}
.ants-platform__title { margin: 0; font-size: clamp(1.625rem, 1.3rem + 1vw, 2rem); line-height: 1.14; letter-spacing: -0.028em; }
.ants-platform__body  { margin: 0; font-size: 1.063rem; line-height: 1.66; color: var(--ants-text-body); }
.ants-platform__shot  { width: 100%; aspect-ratio: 7 / 2; }
.ants-steps { margin: 0; padding: 0; list-style: none; }
.ants-steps > li { margin: 0; }
.ants-platform__detail { display: flex; flex-direction: column; gap: 22px; min-width: 0; }
.ants-milestone { min-height: 200px; gap: 12px; }
.ants-milestone__year { font-size: 1.625rem; font-weight: 600; letter-spacing: -0.02em; line-height: 1; color: var(--ants-red-deep); }
.ants-process {
--rail: var(--ants-rule-3);
--node-bg: var(--ants-paper);
--accent: var(--ants-red-deep);
--numeral: var(--ants-text);
--process-gap: clamp(20px, 2.4vw, 40px);
position: relative;
display: grid;
grid-template-columns: none;
grid-auto-flow: column;
grid-auto-columns: minmax(0, 1fr);
gap: 0 var(--process-gap);
margin: 0;
padding: 0;
list-style: none;
background: none;
}
.ants-tinted .ants-process { --node-bg: var(--ants-tinted); }
.ants-dark .ants-process,
.ants-dark-2 .ants-process { --rail: var(--ants-rule-dark-3); --accent: var(--ants-rose); --numeral: var(--ants-paper); }
.ants-dark .ants-process { --node-bg: var(--ants-ink); }
.ants-dark-2 .ants-process { --node-bg: var(--ants-ink-2); }
.ants-process::after {
content: "";
position: absolute;
top: 6px;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(90deg, var(--rail) 0 88%, transparent);
}
.ants-process > *,
.ants-hairgrid.ants-process > * {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
gap: 10px;
min-height: 0;
margin: 0;
padding: 46px 0 0;
background: none;
}
.ants-process > * > * { margin: 0; }
.ants-process > *::after {
content: "";
position: absolute;
z-index: 2;
top: 0;
left: 0;
box-sizing: border-box;
width: 13px;
height: 13px;
border: 1px solid var(--accent);
border-radius: 50%;
background: var(--node-bg);
box-shadow: 0 0 0 6px var(--node-bg);
transition: background var(--ants-transition), transform var(--ants-transition);
}
.ants-process > :last-child::after { background: var(--accent); }
.ants-process > * > .ants-label:first-child,
.ants-process .ants-milestone__year {
margin-bottom: 8px;
font-family: var(--ants-font);
font-size: clamp(2.25rem, 1.7rem + 1.3vw, 3rem);
font-weight: 400;
font-variant-numeric: tabular-nums;
line-height: 1;
letter-spacing: -0.045em;
text-transform: none;
color: var(--numeral);
transition: color var(--ants-transition);
}
.ants-process > :last-child > .ants-label:first-child,
.ants-process > :last-child .ants-milestone__year { color: var(--accent); }
.ants-process .ants-row__title { font-size: 1.094rem; line-height: 1.3; }
.ants-dark .ants-process .ants-row__title,
.ants-dark-2 .ants-process .ants-row__title { color: var(--ants-paper); }
.ants-process .ants-card__body { max-width: 34ch; }
@media (hover: hover) {
.ants-process > :hover::after { background: var(--accent); transform: scale(1.25); }
.ants-process > :hover > .ants-label:first-child,
.ants-process > :hover .ants-milestone__year { color: var(--accent); }
}
@supports (animation-timeline: view()) {
@media (prefers-reduced-motion: no-preference) {
.ants-process::before {
content: "";
position: absolute;
z-index: 0;
top: 6px;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(90deg, var(--accent) 0 88%, transparent);
transform-origin: left center;
animation: ants-process-draw linear both;
animation-timeline: view();
animation-range: entry 0% entry 100%;
}
.ants-process > * {
animation: ants-process-rise linear both;
animation-timeline: view();
animation-range: entry 0% entry 60%;
}
.ants-process > :nth-child(2) { animation-range: entry 10% entry 70%; }
.ants-process > :nth-child(3) { animation-range: entry 20% entry 80%; }
.ants-process > :nth-child(4) { animation-range: entry 30% entry 90%; }
.ants-process > :nth-child(n+5) { animation-range: entry 40% entry 100%; }
}
}
@keyframes ants-process-rise {
from { opacity: 0; transform: translateY(14px); }
to   { opacity: 1; transform: none; }
}
@media print {
.ants-process > *,
.ants-reason { animation: none !important; opacity: 1 !important; transform: none !important; }
}
@keyframes ants-process-draw {
from { transform: scale(0, 1); }
to   { transform: scale(1, 1); }
}
@media (max-width: 959px) {
.ants-process {
grid-auto-flow: row;
grid-auto-columns: auto;
grid-template-columns: minmax(0, 1fr);
gap: 0;
}
.ants-process::after,
.ants-process::before {
top: 14px;
bottom: 0;
left: 6px;
right: auto;
width: 1px;
height: auto;
background: linear-gradient(180deg, var(--rail) 0 90%, transparent);
}
.ants-process::before {
background: linear-gradient(180deg, var(--accent) 0 90%, transparent);
transform-origin: center top;
animation-name: ants-process-draw-down;
animation-range: entry 0% cover 50%;
}
.ants-process > *,
.ants-hairgrid.ants-process > * { padding: 0 0 34px 40px; }
.ants-process > :last-child { padding-bottom: 0; }
.ants-process > *::after { top: 8px; }
.ants-process > *:nth-child(n) { animation-range: entry 0% entry 100%; }
.ants-process > * > .ants-label:first-child,
.ants-process .ants-milestone__year { margin-bottom: 2px; font-size: 1.875rem; }
.ants-process .ants-card__body { max-width: 52ch; }
}
@keyframes ants-process-draw-down {
from { transform: scale(1, 0); }
to   { transform: scale(1, 1); }
}
.ants-portrait img {
display: block;
width: 100%;
height: auto;
aspect-ratio: 1 / 1;
object-fit: cover;
border: 1px solid var(--ants-rule-dark-2);
}
.ants-founder {
display: grid;
gap: var(--ants-gap-xl);
align-items: start;
padding-bottom: var(--ants-gap-lg);
margin-bottom: var(--ants-gap-lg);
border-bottom: 1px solid var(--ants-rule-dark-2);
}
@media (min-width: 900px) {
.ants-founder { grid-template-columns: 380px 1fr; }
}
.ants-founder__name { margin: 0; font-size: clamp(1.75rem, 1.4rem + 1vw, 2.25rem); line-height: 1.12; letter-spacing: -0.025em; color: var(--ants-paper); }
.ants-founder__bio { max-width: 680px; }
.ants-founder__bio p { margin: 0 0 1em; color: var(--ants-on-dark-lead); }
.ants-founder__bio p:last-child { margin-bottom: 0; }
.ants-leaders { gap: 28px; }
.ants-leader {
display: flex;
flex-direction: column;
gap: 14px;
padding: 26px 24px 28px;
border: 1px solid var(--ants-rule-dark-2);
}
.ants-leader__name { margin: 0 0 6px; font-size: 1.125rem; letter-spacing: -0.01em; color: var(--ants-paper); }
.ants-disciplines { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0; list-style: none; }
.ants-disciplines li {
margin: 0;
padding: 11px 18px;
border: 1px solid var(--ants-rule-3);
font-size: 0.906rem;
color: var(--ants-text-body);
}
.ants-markets { margin: 0; padding: 0; list-style: none; }
.ants-markets > li { margin: 0; }
.ants-hp {
position: absolute !important;
left: -10000px;
width: 1px;
height: 1px;
overflow: hidden;
}
.ants-enquiry__form { display: grid; gap: 0 20px; }
@media (min-width: 700px) {
.ants-enquiry__form { grid-template-columns: 1fr 1fr; }
}
.ants-enquiry__form > .ants-field--textarea,
.ants-enquiry__form > .ants-field--checkbox,
.ants-enquiry__form > .ants-field--submit,
.ants-enquiry__form > .ants-privacy { grid-column: 1 / -1; }
.ants-enquiry__form .ants-field { margin: 0 0 20px; }
.ants-enquiry__form .ants-field > label { font-size: 0.813rem; font-weight: 600; }
.ants-req { margin-inline-start: 2px; color: var(--ants-red-deep); }
.ants-opt { font-weight: 400; color: var(--ants-text-mute); }
.ants-enquiry__form input[type="text"],
.ants-enquiry__form input[type="email"],
.ants-enquiry__form input[type="tel"],
.ants-enquiry__form select,
.ants-enquiry__form textarea {
width: 100%;
min-height: var(--ants-target);
padding: 13px 14px;
background: var(--ants-paper);
border: 1px solid var(--ants-rule-dash);
border-radius: 0;
color: var(--ants-text);
font: inherit;
font-size: 0.938rem;
}
.ants-enquiry__form textarea { min-height: 150px; resize: vertical; }
.ants-enquiry__form :is(input, select, textarea):focus {
outline: var(--ants-focus);
outline-offset: -1px;
border-color: var(--ants-red-deep);
}
.ants-enquiry__form ::placeholder { color: var(--ants-text-mute); }
.ants-enquiry__form .is-invalid :is(input, select, textarea) { border-color: var(--ants-red-deep); }
.ants-check { display: flex; align-items: flex-start; gap: 12px; cursor: pointer; }
.ants-check input { width: 18px; height: 18px; flex: none; margin: 2px 0 0; accent-color: var(--ants-red-deep); }
.ants-check span { font-size: var(--ants-xs); line-height: 1.6; color: var(--ants-text-body); }
.ants-err { font-size: var(--ants-xs); line-height: 1.5; color: var(--ants-red-deep); }
.ants-field--submit { align-items: flex-start; }
.ants-field--submit .ants-btn { min-width: 220px; }
.ants-privacy { margin: 0; font-size: var(--ants-xs); color: var(--ants-text-mute); }
.ants-alert { margin: 0 0 20px; padding: 14px 16px; border-left: 3px solid var(--ants-ink-2); background: var(--ants-tinted); font-size: 0.938rem; }
.ants-alert--error { border-left-color: var(--ants-red-deep); }
.ants-contact { display: grid; gap: var(--ants-gap-xl); align-items: start; }
.ants-contact > * { margin-block: 0; }
@media (min-width: 1000px) {
.ants-contact { grid-template-columns: 1.15fr 0.85fr; gap: 72px; }
}
.ants-contact__title { margin: 0 0 var(--ants-gap-md); }
.ants-contact__aside { display: flex; flex-direction: column; gap: 36px; }
.ants-lines { margin: 0; padding: 0; list-style: none; width: 100%; }
.ants-lines li { margin: 0; }
.ants-lines a {
display: flex;
flex-wrap: wrap;
align-items: baseline;
justify-content: space-between;
gap: 6px 12px;
padding-block: 14px;
border-top: 1px solid var(--ants-rule-2);
color: inherit;
text-decoration: none;
}
.ants-lines a:hover .ants-lines__v { color: var(--ants-red-deep); }
.ants-lines__k {
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-text-mute);
}
.ants-lines__v { font-size: 1rem; font-weight: 600; }
.ants-office { display: flex; flex-direction: column; gap: 10px; width: 100%; padding: 20px 22px; border: 1px solid var(--ants-rule-2); }
.ants-office address { font-style: normal; line-height: 1.6; }
.ants-commitment { padding-top: 18px; border-top: 2px solid var(--ants-red); }
.ants-commitment__lead { margin: 8px 0; font-size: 1.125rem; font-weight: 600; letter-spacing: -0.01em; }
.ants-qa { gap: 0 clamp(32px, 4.5vw, 64px); border-bottom: 1px solid var(--ants-rule-2); }
.ants-qa__item {
position: relative;
padding: 26px 0 30px;
border-top: 1px solid var(--ants-rule-2);
}
.ants-qa__item::before {
content: "";
position: absolute;
top: -1px;
left: 0;
width: 36px;
height: 2px;
background: var(--ants-red);
}
.ants-qa__item h3 { margin: 0 0 10px; font-size: 1.125rem; line-height: 1.35; letter-spacing: -0.015em; }
.ants-qa__item p {
margin: 0;
font-family: var(--ants-font-serif);
font-size: 1.063rem;
line-height: 1.62;
color: var(--ants-text-soft);
text-wrap: pretty;
}
.ants-dark .ants-qa,
.ants-dark-2 .ants-qa,
.ants-dark .ants-qa__item,
.ants-dark-2 .ants-qa__item { border-color: var(--ants-rule-dark-2); }
.ants-dark .ants-qa__item p,
.ants-dark-2 .ants-qa__item p { color: var(--ants-on-dark-soft); }
.ants-certfields { margin: 0; }
.ants-certfields dt { margin: 0; }
.ants-certfields dd { margin: 0; font-size: 0.969rem; font-weight: 600; line-height: 1.4; color: var(--ants-paper); overflow-wrap: anywhere; }
.wp-block-group.ants-split > * { margin-block: 0; }
.ants-policy > p { margin: 0 0 1em; color: var(--ants-text-body); }
.ants-policy > p.ants-lead { color: var(--ants-text); }
.ants-policy__list { counter-reset: ants-policy; margin: var(--ants-gap-md) 0 0; padding: 0; list-style: none; }
.ants-policy__list > li {
counter-increment: ants-policy;
display: grid;
grid-template-columns: 40px 1fr;
gap: 12px;
margin: 0;
padding-block: 14px;
border-top: 1px solid var(--ants-rule-2);
line-height: 1.6;
}
.ants-policy__list > li::before {
content: counter(ants-policy, decimal-leading-zero);
padding-top: 4px;
font-family: var(--ants-font-mono);
font-size: 0.688rem;
color: var(--ants-red-deep);
}
ul.ants-policy__list > li { grid-template-columns: 24px 1fr; }
ul.ants-policy__list > li::before { content: ""; width: 7px; height: 7px; margin-top: 10px; padding: 0; background: var(--ants-red); }
.ants-policy > p.ants-policy__issued {
margin: var(--ants-gap-md) 0 0;
padding-top: 14px;
border-top: 1px solid var(--ants-rule-2);
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-text-mute);
}
.ants-credential {
display: flex;
align-items: center;
gap: 18px;
width: 100%;
padding: 18px 20px;
border: 1px solid var(--ants-rule-2);
border-left: 3px solid var(--ants-gold-deep);
background: var(--ants-paper);
}
.ants-tinted .ants-credential { background: var(--ants-paper); }
.ants-credential__mark {
flex: none;
display: flex;
align-items: center;
justify-content: center;
width: 168px;
padding: 10px 12px;
background: #fff;
border: 1px solid var(--ants-rule);
}
.ants-credential__mark img { display: block; width: 100%; height: auto; max-height: 52px; object-fit: contain; }
.ants-dark .ants-credential__mark,
.ants-dark-2 .ants-credential__mark { border-color: transparent; }
@media (max-width: 420px) {
.ants-credential.has-logo { flex-direction: column; align-items: flex-start; }
}
.ants-credential__copy { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.ants-credential__copy .ants-label { color: var(--ants-gold-deep); }
.ants-credential__copy strong { font-size: 1.063rem; letter-spacing: -0.01em; }
.ants-credential__copy p { margin: 4px 0 0; font-size: var(--ants-sm); line-height: 1.55; color: var(--ants-text-body); }
.ants-iso {
display: flex;
flex-direction: column;
padding: 38px 34px 34px;
border-top: 3px solid var(--ants-gold);
}
.ants-iso > .ants-eyebrow { margin-bottom: 18px; }
.ants-iso__title { max-width: 24ch; margin: 0 0 16px; font-size: 1.688rem; line-height: 1.2; }
.ants-iso .ants-card__body { max-width: 46ch; margin: 0; }
.ants-iso__facts { margin: 24px 0 26px; }
.ants-iso__facts > div {
display: grid;
grid-template-columns: 9.5rem 1fr;
gap: 12px;
align-items: baseline;
padding-block: 11px;
border-top: 1px solid var(--ants-rule-dark-2);
}
.ants-iso__facts > div:last-child { border-bottom: 1px solid var(--ants-rule-dark-2); }
.ants-iso__facts dt {
display: flex;
align-items: center;
gap: 10px;
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-on-dark-mute);
}
.ants-iso__facts dt::before { content: ""; flex: none; width: 5px; height: 5px; background: var(--ants-gold); }
.ants-iso__facts dd { margin: 0; font-size: 0.938rem; color: var(--ants-on-dark); }
.ants-iso .ants-isomarks { margin: 26px 0 28px; }
.ants-iso .ants-link { align-self: flex-start; }
@media (max-width: 420px) {
.ants-iso { padding: 30px 22px 26px; }
.ants-iso__facts > div { grid-template-columns: 1fr; gap: 4px; }
}
.ants-isomarks { display: flex; flex-direction: column; gap: 12px; max-width: 460px; margin: 0; }
.ants-isomarks__plate { padding: 14px 18px; background: #fff; border: 1px solid var(--ants-rule-2); }
.ants-dark .ants-isomarks__plate,
.ants-dark-2 .ants-isomarks__plate { border-color: #fff; }
.ants-isomarks__plate img { display: block; width: 100%; height: auto; }
.ants-isomarks--single .ants-isomarks__plate { align-self: flex-start; width: 104px; padding: 8px; }
.ants-isomarks figcaption { font-size: var(--ants-xs); line-height: 1.55; color: var(--ants-text-mute); }
.ants-dark .ants-isomarks figcaption,
.ants-dark-2 .ants-isomarks figcaption { color: var(--ants-on-dark-mute); }
.ants-office__hours { display: flex; flex-direction: column; gap: 6px; padding-top: 12px; border-top: 1px solid var(--ants-rule); }
.ants-office__hours ul { margin: 0; padding: 0; list-style: none; font-size: var(--ants-sm); line-height: 1.6; color: var(--ants-text-body); }
.ants-qa > *,
.wp-block-group.ants-grid > *,
.wp-block-group.ants-hairgrid > *,
.wp-block-group.ants-process > * { margin-block: 0; }
.ants-qa__item p { margin: 0 0 0.75em; }
.ants-qa__item p:last-child { margin-bottom: 0; }
.ants-reasons {
display: grid;
grid-template-columns: minmax(0, 1fr);
gap: var(--ants-gap-lg);
}
.wp-block-group.ants-reasons > *,
.wp-block-group.ants-reasons__head > *,
.wp-block-group.ants-reasons__list > *,
.wp-block-group.ants-reason > * { margin-block: 0; }
.ants-reasons__head { display: flex; flex-direction: column; align-items: flex-start; gap: 0; }
.ants-reasons__head .ants-eyebrow { margin-bottom: var(--ants-gap-sm); }
.wp-block-group.ants-reasons__head > .ants-reasons__aside {
margin-top: 22px;
max-width: 36ch;
font-family: var(--ants-font-serif);
font-size: 1.125rem;
line-height: 1.58;
color: var(--ants-text-soft);
}
.wp-block-group.ants-reasons__head > .ants-reasons__cta { margin-top: 32px; }
.ants-reasons__cta .ants-btn { text-decoration: none; }
.ants-reasons__list { border-bottom: 1px solid var(--ants-rule-2); }
.ants-reason {
position: relative;
display: grid;
grid-template-columns: minmax(0, 1fr);
gap: 8px;
padding: 28px 0 30px;
border-top: 1px solid var(--ants-rule-2);
}
.ants-reason::before {
content: "";
position: absolute;
top: -1px;
left: 0;
width: 36px;
height: 2px;
background: var(--ants-red);
transition: width 520ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.ants-reason__title {
font-size: 1.25rem;
font-weight: 600;
line-height: 1.3;
letter-spacing: -0.018em;
}
.ants-reason__body {
font-family: var(--ants-font-serif);
font-size: 1.063rem;
line-height: 1.62;
color: var(--ants-text-soft);
text-wrap: pretty;
}
.ants-reason__title { transition: color var(--ants-transition); }
@media (hover: hover) {
.ants-reason:hover::before { width: 100%; }
.ants-reason:hover .ants-reason__title { color: var(--ants-red-deep); }
}
@media (min-width: 900px) {
.ants-reasons {
grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
gap: clamp(48px, 6vw, 96px);
align-items: start;
}
.ants-reasons__head { position: sticky; top: 140px; }
.ants-reason {
grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
gap: 32px;
align-items: baseline;
padding: 34px 0 36px;
}
}
@supports (animation-timeline: view()) {
@media screen and (prefers-reduced-motion: no-preference) {
.ants-reason {
animation: ants-process-rise linear both;
animation-timeline: view();
animation-range: entry 0% entry 100%;
}
}
}
.ants-offers > .ants-card { gap: 12px; padding: 32px 30px 36px; }
.ants-offers > .ants-card::before {
content: "+";
font-family: var(--ants-font-mono);
font-size: 1.375rem;
font-weight: 400;
line-height: 1;
color: var(--ants-red-deep);
}
.ants-offers .ants-row__title { font-size: 1.125rem; line-height: 1.3; letter-spacing: -0.015em; }
.ants-offers .ants-card__body { font-size: 0.969rem; color: var(--ants-text-body); }
.ants-sweep > *,
.ants-offers > * { position: relative; transition: background var(--ants-transition); }
.ants-sweep > *::after,
.ants-offers > *::after {
content: "";
position: absolute;
top: 0;
left: 0;
width: 0;
height: 2px;
background: var(--ants-red);
transition: width 520ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
@media (hover: hover) {
.ants-sweep > :hover::after,
.ants-offers > :hover::after { width: 100%; }
.ants-tinted .ants-offers > :hover,
.ants-tinted .ants-sweep > :hover { background: var(--ants-paper); }
.ants-offers > :hover .ants-row__title { color: var(--ants-red-deep); }
}
.ants-offers .ants-row__title { transition: color var(--ants-transition); }
.ants-servicelinks .ants-card--link { gap: 12px; padding: 30px 28px 32px; }
.ants-servicelinks .ants-row__title { font-size: 1.125rem !important; line-height: 1.3; letter-spacing: -0.015em; }
.ants-servicelinks .ants-card__cta { transition: letter-spacing 300ms ease, color var(--ants-transition); }
@media (hover: hover) {
.ants-servicelinks .ants-card--link:hover .ants-card__cta { letter-spacing: 0.24em; }
}
a.ants-card--link { color: inherit; text-decoration: none; }
a.ants-card--link:hover { background: var(--ants-tinted); }
a.ants-card--link:hover .ants-row__title { color: var(--ants-red-deep); }
.ants-tinted a.ants-card--link:hover { background: var(--ants-paper); }
.ants-jump { display: flex; flex-wrap: wrap; gap: 8px 10px; padding-block: 22px; }
.ants-jump a {
padding: 8px 12px;
border: 1px solid var(--ants-rule-dark-2);
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-on-dark);
text-decoration: none;
}
.ants-jump a:hover { border-color: var(--ants-rose); color: var(--ants-paper); }
.ants-offerings { display: grid; align-content: start; gap: 0 28px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .ants-offerings { grid-template-columns: 1fr 1fr; } }
.ants-offerings > li { margin: 0; border-top: 1px solid var(--ants-rule-2); }
.ants-offerings > li > a,
.ants-offerings > li > span { display: block; padding: 12px 0; font-size: 0.938rem; line-height: 1.45; }
.ants-offerings > li > a { color: var(--ants-text); text-decoration: none; font-weight: 600; }
.ants-offerings > li > a::after { content: " →"; color: var(--ants-red-deep); }
.ants-offerings > li > a:hover { color: var(--ants-red-deep); }
.ants-offerings > li > span { color: var(--ants-text-body); }
.ants-offerings--plain { grid-template-columns: 1fr; }
.ants-dark .ants-offerings > li { border-top-color: var(--ants-rule-dark-2); }
.ants-dark .ants-offerings > li > span { color: var(--ants-on-dark-lead); }
.ants-bestfor { margin: 0; font-size: var(--ants-sm); line-height: 1.55; color: var(--ants-text-body); }
.ants-bestfor .ants-label { margin-inline-end: 6px; color: var(--ants-red-deep); }
.ants-specs { margin: 0; }
.ants-specs dt { margin: 0; }
.ants-specs dd { margin: 0; }
.ants-modules { width: 100%; margin: 0; padding: 0; list-style: none; }
.ants-modules > li { margin: 0; }
.wp-block-group.ants-card > *,
.wp-block-group.ants-stack > *,
.wp-block-group.ants-sechead > *,
.wp-block-group.ants-sechead__main > *,
.wp-block-group.ants-container > .wp-block-group.ants-split { margin-block: 0; }
.wp-block-group.ants-sechead__main > .ants-eyebrow { margin-bottom: var(--ants-gap-sm); }
.wp-block-group.ants-container > .ants-sechead + * { margin-block-start: 0; }
.wp-block-group.ants-container > .ants-sechead { margin-block-end: var(--ants-gap-lg); }
.ants-casepolicy { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 16px; padding-block: 22px 12px; }
.ants-casepolicy p { margin: 0; max-width: 820px; font-size: var(--ants-sm); color: var(--ants-on-dark-lead); }
.ants-casebody { width: 100%; }
@media (max-width: 599px) {
.ants-casebody .ants-row { grid-template-columns: 1fr !important; gap: 6px; }
}
.ants-insights__grid { gap: 0 !important; margin: 0; padding: 0; border-top: 1px solid var(--ants-rule); list-style: none; }
.ants-insights__grid > li { margin: 0; background: var(--ants-paper); box-shadow: inset -1px -1px 0 var(--ants-rule); }
.ants-insights__grid > li > .ants-insight { height: 100%; }
@media (min-width: 900px) {
.ants-insights__grid > li:first-child { grid-column: span 2; }
.ants-insights__grid > li:first-child .ants-insight__title { font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); }
}
@media (max-width: 899px) {
.ants-insights__grid { grid-template-columns: 1fr !important; }
}
.ants-insight__cat { font-family: var(--ants-font-mono); font-size: var(--ants-tag); letter-spacing: var(--ants-track-tag); text-transform: uppercase; color: var(--ants-red-deep); }
.ants-insight__cat a { color: inherit; text-decoration: none; }
.ants-insight__title { margin: 0; font-size: 1.188rem; line-height: 1.3; letter-spacing: -0.012em; }
.ants-insight__title a { color: var(--ants-text); text-decoration: none; }
.ants-insight__title a:hover { color: var(--ants-red-deep); }
.ants-insight .wp-block-post-excerpt__excerpt { margin: 0; }
.ants-insight__date { margin-top: auto; font-family: var(--ants-font-mono); font-size: var(--ants-tag); letter-spacing: var(--ants-track-tag); text-transform: uppercase; color: var(--ants-text-mute); }
.ants-pagination { margin-top: var(--ants-gap-lg); gap: 12px; font-family: var(--ants-font-mono); font-size: var(--ants-tag); text-transform: uppercase; }
html.has-lightbox { overflow: hidden; }
.ants-lightbox {
position: fixed;
inset: 0;
width: 100%;
height: 100%;
max-width: none;
max-height: none;
margin: 0;
padding: 0;
border: 0;
background: rgba(8, 17, 32, 0.96);
color: var(--ants-on-dark);
}
.ants-lightbox[open] {
display: grid;
grid-template-rows: 1fr auto;
animation: ants-lightbox-in 220ms ease-out;
}
.ants-lightbox::backdrop { background: rgba(8, 17, 32, 0.6); backdrop-filter: blur(8px); }
@keyframes ants-lightbox-in { from { opacity: 0; } }
.ants-lightbox__stage {
display: flex;
align-items: center;
justify-content: center;
min-height: 0;
padding: 72px 16px 16px;
}
@media (min-width: 900px) {
.ants-lightbox__stage { padding: 72px 96px 20px; }
}
.ants-lightbox__img {
display: block;
width: auto;
height: auto;
max-width: min(100%, 1200px);
max-height: 100%;
object-fit: contain;
background: #fff;
box-shadow: 0 30px 90px rgba(0, 0, 0, 0.55);
transition: opacity 200ms ease;
}
.ants-lightbox.is-loading .ants-lightbox__img { opacity: 0.25; }
.ants-lightbox__bar {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: 20px 32px;
flex-wrap: wrap;
width: 100%;
max-width: 1296px;
margin-inline: auto;
padding: 18px 16px 24px;
border-top: 1px solid var(--ants-rule-dark-2);
}
@media (min-width: 900px) {
.ants-lightbox__bar { padding: 22px 48px 30px; }
}
.ants-lightbox__caption { display: flex; flex-direction: column; gap: 8px; min-width: 0; max-width: 760px; }
.ants-lightbox__meta {
font-family: var(--ants-font-mono);
font-size: var(--ants-eyebrow);
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-gold);
}
.ants-lightbox__title {
font-size: clamp(1.125rem, 0.95rem + 0.8vw, 1.5rem);
font-weight: 600;
line-height: 1.25;
letter-spacing: -0.015em;
color: var(--ants-paper);
}
.ants-lightbox__nav { display: flex; align-items: center; gap: 10px; }
.ants-lightbox__count {
margin-inline-end: 8px;
font-family: var(--ants-font-mono);
font-size: var(--ants-xs);
letter-spacing: 0.08em;
color: var(--ants-on-dark-mute);
}
.ants-lightbox__btn {
display: inline-flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
padding: 0;
border: 1px solid var(--ants-rule-dark-3);
background: transparent;
color: var(--ants-paper);
cursor: pointer;
transition: border-color var(--ants-transition), color var(--ants-transition), background var(--ants-transition);
}
.ants-lightbox__btn:hover { border-color: var(--ants-gold); color: var(--ants-gold); }
.ants-lightbox__btn[hidden] { display: none; }
.ants-lightbox__close {
position: absolute;
inset-block-start: 14px;
inset-inline-end: 14px;
border-color: transparent;
}
@media (min-width: 900px) {
.ants-lightbox__close { inset-block-start: 20px; inset-inline-end: 24px; }
}
@media (prefers-reduced-motion: reduce) {
.ants-lightbox[open] { animation: none; }
.ants-lightbox__img { transition: none; }
}
.ants-modhead {
display: grid;
grid-template-columns: minmax(0, 1fr);
gap: 24px var(--ants-gap-lg);
align-items: start;
margin-bottom: var(--ants-gap-lg);
}
.ants-modhead h2 { margin: 0; }
.ants-modhead__meta { display: flex; flex-direction: column; gap: 14px; }
.ants-modhead__meta .ants-label { display: block; margin-bottom: 2px; }
.ants-modhead .ants-credential { margin: 0; }
@media (min-width: 900px) {
.ants-modhead { grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); }
}
.ants-wa {
display: grid;
grid-template-columns: minmax(0, 1fr);
gap: var(--ants-gap-xl);
align-items: center;
}
@media (min-width: 960px) {
.ants-wa { grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); }
}
.ants-wa__copy { display: flex; flex-direction: column; align-items: flex-start; gap: 0; }
.ants-wa__copy h2 { margin: 0 0 18px; max-width: 18ch; color: var(--ants-paper); }
.ants-wa__copy .ants-lead { margin: 0 0 30px; max-width: 58ch; color: var(--ants-on-dark-lead); }
.ants-wa__points {
display: grid;
grid-template-columns: minmax(0, 1fr);
gap: 0 32px;
width: 100%;
margin: 0 0 32px;
padding: 0;
list-style: none;
border-bottom: 1px solid var(--ants-rule-dark-2);
}
@media (min-width: 600px) {
.ants-wa__points { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.ants-wa__points li {
position: relative;
display: flex;
flex-direction: column;
gap: 6px;
margin: 0;
padding: 20px 0 22px;
border-top: 1px solid var(--ants-rule-dark-2);
}
.ants-wa__points li::before {
content: "";
position: absolute;
top: -1px;
left: 0;
width: 28px;
height: 2px;
background: var(--ants-red);
}
.ants-wa__points strong { font-size: 1.063rem; font-weight: 600; letter-spacing: -0.01em; color: var(--ants-paper); }
.ants-wa__points span { font-size: var(--ants-sm); line-height: 1.55; color: var(--ants-on-dark-soft); }
.ants-wa__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; margin-bottom: 28px; }
.ants-wa__actions .ants-btn { text-decoration: none; }
.ants-dark .ants-wa .ants-link { color: var(--ants-paper); }
.ants-dark .ants-credential { background: rgba(255, 255, 255, 0.04); border-color: var(--ants-rule-dark-2); }
.ants-dark .ants-credential__copy .ants-label { color: var(--ants-gold); }
.ants-dark .ants-credential__copy strong { color: var(--ants-paper); }
.ants-wa__demo {
position: relative;
padding: 22px 22px 26px;
background: var(--ants-ink-2);
border: 1px solid var(--ants-rule-dark-2);
box-shadow: 0 40px 80px -40px rgba(0, 0, 0, 0.6);
}
.ants-wa__bar {
display: flex;
align-items: center;
gap: 10px;
padding-bottom: 16px;
margin-bottom: 18px;
border-bottom: 1px solid var(--ants-rule-dark-2);
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
letter-spacing: var(--ants-track-tag);
text-transform: uppercase;
color: var(--ants-on-dark-mute);
}
.ants-wa__live {
width: 8px;
height: 8px;
border-radius: 50%;
background: #25d366;
box-shadow: 0 0 0 4px rgba(37, 211, 102, 0.16);
}
.ants-wa__chat { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; margin-bottom: 22px; }
.ants-wa__bubble {
position: relative;
max-width: 88%;
margin: 0;
padding: 12px 14px;
border-radius: 2px 12px 12px 12px;
background: var(--ants-paper);
font-size: var(--ants-sm);
line-height: 1.45;
color: var(--ants-text);
}
.ants-wa__meta { font-family: var(--ants-font-mono); font-size: var(--ants-tag); letter-spacing: 0.06em; color: var(--ants-on-dark-mute); }
.ants-wa__events { position: relative; margin: 0; padding: 0; list-style: none; }
.ants-wa__events::before {
content: "";
position: absolute;
top: 8px;
bottom: 8px;
left: 5px;
width: 1px;
background: var(--ants-rule-dark-3);
}
.ants-wa__events li {
position: relative;
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
gap: 2px 12px;
margin: 0;
padding: 0 0 18px 30px;
}
.ants-wa__events li:last-child { padding-bottom: 0; }
.ants-wa__events li::before {
content: "";
position: absolute;
top: 3px;
left: 0;
box-sizing: border-box;
width: 11px;
height: 11px;
border: 1px solid var(--ants-rose);
border-radius: 50%;
background: var(--ants-ink-2);
box-shadow: 0 0 0 4px var(--ants-ink-2);
}
.ants-wa__events li:last-child::before { background: var(--ants-red); border-color: var(--ants-red); }
.ants-wa__events strong { grid-column: 1; font-size: 0.938rem; font-weight: 600; color: var(--ants-paper); }
.ants-wa__events span { grid-column: 1; font-size: var(--ants-xs); color: var(--ants-on-dark-soft); }
.ants-wa__events time,
.ants-wa__events .ants-wa__step {
grid-column: 2;
grid-row: 1;
font-family: var(--ants-font-mono);
font-size: var(--ants-tag);
letter-spacing: 0.06em;
color: var(--ants-on-dark-mute);
}
.ants-wa__events li:last-child strong { color: var(--ants-rose); }
@supports (animation-timeline: view()) {
@media screen and (prefers-reduced-motion: no-preference) {
.ants-wa__events li {
animation: ants-process-rise linear both;
animation-timeline: view();
animation-range: entry 0% entry 100%;
}
}
}
@media print {
.ants-wa__events li { animation: none !important; opacity: 1 !important; transform: none !important; }
}
.ants-casefacts {
display: grid;
grid-template-columns: minmax(0, 1fr);
gap: 22px 40px;
margin: 0;
}
.ants-casefacts > div { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.ants-casefacts dt { margin: 0; }
.ants-casefacts dd { margin: 0; font-size: 1.063rem; line-height: 1.45; font-weight: 500; }
.ants-casefacts dd.ants-chips { font-size: inherit; font-weight: 400; }
@media (min-width: 900px) {
.ants-casefacts { grid-template-columns: minmax(0, 1.4fr) minmax(0, 0.8fr) minmax(0, 0.6fr); }
.ants-casefacts__wide { grid-column: 1 / -1; }
}
.ants-casehead { padding-block: 34px 38px; }
.ants-caseresults .ants-eyebrow { display: block; margin-bottom: 22px; }
.ants-bigfigures {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
gap: 0;
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--ants-rule-dark-2);
}
.ants-bigfigures li {
display: flex;
flex-direction: column;
gap: 8px;
margin: 0;
padding: 24px 24px 26px 0;
border-bottom: 1px solid var(--ants-rule-dark-2);
}
.ants-bigfigures strong {
font-size: clamp(2rem, 1.5rem + 1.6vw, 2.75rem);
font-weight: 500;
line-height: 1;
letter-spacing: -0.04em;
font-variant-numeric: tabular-nums;
color: var(--ants-paper);
}
.ants-bigfigures span { max-width: 26ch; font-size: var(--ants-sm); line-height: 1.5; color: var(--ants-on-dark-soft); }
.ants-caseclient {
display: flex;
flex-direction: column;
gap: 6px;
margin-top: 10px;
padding: 18px 20px;
border: 1px solid var(--ants-rule-2);
border-left: 3px solid var(--ants-red);
background: var(--ants-paper);
}
.wp-block-group.ants-caseclient > * { margin: 0; }
.ants-caseclient__name { font-weight: 600; }
.ants-caseclient p:not(.ants-label) { font-size: var(--ants-sm); line-height: 1.55; color: var(--ants-text-body); }
.ants-card__list { margin: 0; padding-left: 1.1em; font-size: 0.969rem; line-height: 1.55; color: var(--ants-text-body); }
.ants-card__list li { margin: 0 0 6px; }
.ants-card__list li:last-child { margin-bottom: 0; }
.ants-card__list li::marker { color: var(--ants-red-deep); }
ul.ants-reason__body {
margin: 0;
padding-left: 1.1em;
font-family: var(--ants-font-serif);
font-size: 1.063rem;
line-height: 1.62;
color: var(--ants-text-soft);
}
ul.ants-reason__body li { margin: 0 0 8px; }
ul.ants-reason__body li:last-child { margin-bottom: 0; }
ul.ants-reason__body li::marker { color: var(--ants-red-deep); }
.ants-conclusion__text {
margin: 0;
font-family: var(--ants-font-serif);
font-size: 1.25rem;
line-height: 1.6;
color: var(--ants-text-lead);
text-wrap: pretty;
}
.ants-fill3 { grid-template-columns: minmax(0, 1fr); }
@media (min-width: 600px) and (max-width: 899px) {
.ants-fill3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ants-fill3 > :last-child:nth-child(odd) { grid-column: span 2; }
}
@media (min-width: 900px) {
.ants-fill3 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.ants-fill3 > * { grid-column: span 2; }
.ants-fill3 > :nth-last-child(2):nth-child(3n+1),
.ants-fill3 > :last-child:nth-child(3n+2) { grid-column: span 3; }
.ants-fill3 > :last-child:nth-child(3n+1) { grid-column: span 6; }
}
.ants-awarddetail { align-items: start; }
.ants-awarddetail__about > p { margin: 0 0 0.85em; line-height: 1.65; color: var(--ants-text-body); }
.ants-awarddetail__about > p:first-child { font-size: var(--ants-lead); line-height: var(--ants-lh-lead); color: var(--ants-text-lead); }
.ants-awarddetail__about > p:last-child { margin-bottom: 0; }
.ants-awarddetail__photo { margin: 0; padding: 10px; background: #fff; border: 1px solid var(--ants-rule-2); }
.ants-awarddetail__photo a { display: block; }
.ants-awarddetail__photo img { display: block; width: 100%; height: auto; }
.ants-awardfacts {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
gap: 0 28px;
width: 100%;
margin: 6px 0 4px;
border-top: 1px solid var(--ants-rule-2);
}
.ants-awardfacts > div { display: flex; flex-direction: column; gap: 6px; padding: 16px 0 18px; border-bottom: 1px solid var(--ants-rule-2); }
.ants-awardfacts dt { margin: 0; }
.ants-awardfacts dd { margin: 0; font-weight: 500; line-height: 1.4; }
.ants-awardcard__year {
font-family: var(--ants-font-mono);
font-size: var(--ants-eyebrow);
letter-spacing: var(--ants-track-tag);
color: var(--ants-gold-deep);
}
.ants-chips--lg .ants-chip { padding: 10px 14px; font-size: 0.75rem; }
.ants-results__list { margin: 0; padding: 0; list-style: none; border-bottom: 1px solid var(--ants-rule-2); }
.ants-results__list > li { margin: 0; }
.ants-result {
position: relative;
display: flex;
flex-direction: column;
gap: 8px;
padding: 24px 0 26px;
border-top: 1px solid var(--ants-rule-2);
}
.wp-block-group.ants-result > * { margin: 0; }
.ants-result::before {
content: "";
position: absolute;
top: -1px;
left: 0;
width: 36px;
height: 2px;
background: var(--ants-red);
}
.ants-result__kind { color: var(--ants-red-deep); }
.ants-result__title { font-size: 1.375rem; line-height: 1.3; letter-spacing: -0.02em; }
.ants-result__title a { color: inherit; text-decoration: none; }
.ants-result__title a:hover { color: var(--ants-red-deep); }
.ants-result__body p { margin: 0; max-width: 72ch; font-family: var(--ants-font-serif); font-size: 1.063rem; line-height: 1.6; color: var(--ants-text-soft); }
.ants-result__date { font-family: var(--ants-font-mono); font-size: var(--ants-tag); letter-spacing: var(--ants-track-tag); text-transform: uppercase; color: var(--ants-text-mute); }
.ants-results .ants-pagination { margin-top: 28px; }
.ants-quality { display: grid; gap: 32px; margin-top: 1.75rem; }
.ants-quality__iso,
.ants-quality__meta { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; }
@media (min-width: 900px) {
.ants-quality.has-meta { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 40px; align-items: stretch; }
}
.ants-quality__meta .ants-credential { flex-direction: column; align-items: flex-start; gap: 16px; height: 100%; padding: 22px 24px; }
.ants-quality__meta .ants-credential__mark { width: 200px; }
.ants-quality__meta .ants-credential__mark img { max-height: 64px; }
.ants-dark .ants-quality__meta .ants-credential__copy p { color: var(--ants-on-dark-soft); }
.ants-card.ants-insight > .ants-insight__img { margin: -30px -26px 4px; }
.ants-insight__img a { display: block; height: 100%; }
.ants-insight__img img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; transition: transform 400ms ease; }
.ants-insights__grid > li:hover .ants-insight__img img { transform: scale(1.03); }
@media (min-width: 900px) {
.ants-insights__grid > li:first-child .ants-insight:has(> .ants-insight__img) {
display: grid;
grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
grid-template-rows: auto auto 1fr auto;
gap: 14px 32px;
padding: 0 30px 0 0;
}
.ants-insights__grid > li:first-child .ants-card.ants-insight > .ants-insight__img { grid-column: 1; grid-row: 1 / -1; margin: 0; }
.ants-insights__grid > li:first-child .ants-insight__img img { height: 100%; min-height: 340px; aspect-ratio: auto; }
.ants-insights__grid > li:first-child .ants-insight > :not(.ants-insight__img) { grid-column: 2; }
.ants-insights__grid > li:first-child .ants-insight__cat { margin-top: 34px; }
.ants-insights__grid > li:first-child .ants-insight__date { margin-bottom: 34px; }
}
@media (prefers-reduced-motion: reduce) {
.ants-insight__img img { transition: none; }
.ants-insights__grid > li:hover .ants-insight__img img { transform: none; }
}
.single-post .wp-block-post-featured-image { margin-block: 8px 34px; }
.single-post .wp-block-post-featured-image img { display: block; width: 100%; height: auto; aspect-ratio: 2 / 1; object-fit: cover; border-radius: var(--ants-r-lg); }
