/* Reference-led home hero, using CHRIS's own portrait and brand palette. */
/* Archivo © 2020 The Archivo Project Authors; SIL OFL 1.1 at /fonts/OFL-Archivo.txt. */
.public-site.cookie-consent-open,.public-site:has(dialog[open]) {scrollbar-gutter:auto}
@font-face {
  font-family:"CHRIS Archivo";src:url('/fonts/archivo-latin-v1.woff2') format('woff2');
  font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;
}
@font-face {
  font-family:"CHRIS Archivo";src:url('/fonts/archivo-latin-italic-v1.woff2') format('woff2');
  font-style:italic;font-weight:100 900;font-stretch:62% 125%;font-display:swap;
}
.public-site:has(.editorial-hero)>.header {
  color:var(--white);background:rgba(16,16,16,.28);border-bottom-color:transparent;
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
}
.public-site:has(.editorial-hero)>.header.is-dark {background:rgba(16,16,16,.96);border-bottom-color:#ffffff18}
.public-site:has(.editorial-hero)>.header .header-brand-light {opacity:1;filter:none;background:none}
.public-site:has(.editorial-hero)>.header .header-brand-light img {content:url('/brand-dark-main.png?v=ea844a2557e1');mix-blend-mode:screen}
.public-site:has(.editorial-hero)>.header .header-brand-dark {opacity:0}
.public-site:has(.editorial-hero)>.header nav a {color:var(--white);font-size:10px;font-weight:500;letter-spacing:.13em;text-transform:uppercase}
.public-site:has(.editorial-hero)>.header .button.nav-cta {
  background:transparent;color:var(--white);border-color:#ffffff70;
  min-width:180px;min-height:48px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;justify-content:space-between;
}
.public-site:has(.editorial-hero)>.header .button.nav-cta span {color:var(--lime)}
.public-site:has(.editorial-hero)>.header .menu-button>span {background:var(--white)}
.public-site:has(.editorial-hero)>.header :focus-visible {outline-color:var(--lime)}

.public-site .editorial-hero {
  position:relative;isolation:isolate;overflow:clip;margin-top:-86px;margin-bottom:-52px;padding-bottom:52px;
  background:var(--black);color:var(--white);
}
.editorial-hero::before {
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(90deg,#101010 0%,#101010f2 29%,#101010a8 48%,#10101000 70%);
}
.editorial-hero::after {
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(ellipse at 86% 47%,#202020 0%,#101010 68%);
}
.editorial-hero .hero-accent-line {
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(118deg,transparent 64%,#b9ea7040 64.08%,transparent 64.25%);
}
.editorial-hero .hero-accent-line::after {
  content:"";position:absolute;inset:0;opacity:0;
  background:linear-gradient(118deg,transparent 63.1%,#b9ea7000 63.5%,#b9ea7030 63.95%,#b9ea70d0 64.08%,#b9ea7030 64.3%,#b9ea7000 64.7%,transparent 65%);
}
.public-site .editorial-hero .hero-inner {
  position:relative;display:block;width:min(1480px,calc(100% - 2 * var(--site-inset)));
  min-height:850px;
}
.public-site .editorial-hero .hero-copy {position:relative;z-index:3;width:72%;max-width:930px;padding:145px 0 70px}
.editorial-hero .hero-copy>.eyebrow {margin:0 0 32px;min-height:28px;color:#f6f6f3bd;font-weight:450;letter-spacing:.21em;font-size:10px}
.editorial-hero .hero-copy>.eyebrow>.dot {width:6px;height:6px;box-shadow:0 0 15px #b9ea7030}
.editorial-hero .hero-copy>.eyebrow>span:last-child {min-width:0;flex:1}
.editorial-hero .pm-rotator {margin-left:12px;color:var(--lime);font-size:9px;letter-spacing:.1em}
.editorial-hero .pm-rotator::before {color:#ffffff50}
.editorial-hero .pm-rotation-toggle:focus-visible {outline-color:var(--lime)}
.public-site .editorial-hero h1 {margin:0 0 27px;line-height:.95;font-size:clamp(70px,7.25vw,110px);font-weight:750;letter-spacing:-.065em;text-wrap:initial}
.public-site .editorial-hero h1>span {display:block;color:var(--white)}
.editorial-hero .hero-title-first,.editorial-hero .hero-title-second {
  font-family:"CHRIS Archivo",Arial,sans-serif;font-stretch:125%;font-variation-settings:"wdth" 125;
  text-transform:uppercase;white-space:nowrap;line-height:1;min-height:1em;letter-spacing:-.065em;
}
.editorial-hero .hero-title-first {font-weight:900}
.editorial-hero .hero-title-second {margin-top:-2px;font-style:italic;font-weight:800}
.editorial-hero .hero-title-second em {
  color:transparent;-webkit-text-stroke:1px var(--lime);font-weight:250;font-style:italic;
  letter-spacing:-.065em;
}
.editorial-hero .hero-title-second em .pm-word {color:transparent}
.public-site .editorial-hero h1>.hero-title-support {
  max-width:480px;margin-top:29px;font-size:clamp(25px,2.4vw,35px);line-height:1.14;
  font-weight:400;letter-spacing:-.035em;text-wrap:balance;color:var(--light);
}
.editorial-hero .hero-support-line {display:block}
.editorial-hero .hero-support-line:first-child {display:flex;align-items:baseline;gap:.25em;min-height:44px}
.editorial-hero .hero-title-support .hero-word-rotator {
  display:inline-flex;vertical-align:baseline;margin:0;padding:0;min-height:0;max-width:100%;
  color:var(--lime);font:inherit;letter-spacing:inherit;
}
.editorial-hero .hero-word-rotator::before {display:none}
.editorial-hero .hero-word-rotator .pm-rotator-words {line-height:1.15;padding-block:.06em}
.editorial-hero .hero-word-rotator .pm-rotation-toggle {
  inset:0;width:100%;height:100%;min-height:44px;transform:none;border-radius:3px;background:transparent;
}
.editorial-hero .hero-word-rotator .pm-rotation-toggle::before {display:none}
.editorial-hero .hero-word-rotator .pm-rotation-toggle:hover {background:transparent}
.editorial-hero .hero-word-rotator .pm-rotation-toggle:focus-visible {outline:1px solid var(--lime);outline-offset:4px}
/* The title owns the opening. Everything else follows its final character. */
.hero-intro-pending:not(.motion-ready) .public-site:has(.editorial-hero)>.header,
.hero-intro-pending:not(.motion-ready) .editorial-hero :is(h1,.hero-copy>.eyebrow,.hero-copy>.lead,.hero-actions,.hero-copy>.micro,.hero-photo),
.hero-intro-pending:not(.motion-ready) .editorial-hero .hero-accent-line,
.hero-intro-pending:not(.motion-ready) .public-site:has(.editorial-hero) .credentials {opacity:0}
.motion-ready .editorial-hero .pm-letter-heading.pm-entered .pm-word,
.motion-ready .pm-intro-element.pm-reveal.pm-entered {animation:none}
.editorial-hero .pm-letter {display:inline}
.motion-ready.hero-intro-active .editorial-hero .pm-letter-heading.pm-entered .pm-letter-word {
  animation:pm-title-drift var(--pm-headline-duration) var(--motion-ease) backwards;
}
.motion-ready.hero-intro-active .editorial-hero .pm-letter-heading.pm-entered .pm-letter {
  animation:pm-letter-in 1100ms cubic-bezier(.33,0,.2,1) var(--pm-letter-delay,0ms) backwards;
}
.motion-ready.hero-intro-active .pm-intro-element.pm-entered {
  animation:pm-hero-rest-in 800ms var(--motion-ease) var(--pm-reveal-delay,0ms) backwards;
}
.motion-ready.hero-intro-active :is(.header,.hero-photo).pm-intro-element.pm-entered {
  animation-name:pm-hero-image-in;
}
.motion-ready.hero-intro-active .hero-photo.pm-intro-element.pm-entered {animation-duration:1000ms}
.motion-ready.hero-intro-active .editorial-hero .hero-accent-line {
  animation:pm-accent-grow 800ms var(--motion-ease) var(--pm-accent-delay,2970ms) backwards;
  will-change:clip-path;
}
.motion-ready.hero-intro-active .editorial-hero .hero-accent-line::after {
  animation:pm-accent-light 950ms ease-out var(--pm-accent-delay,2970ms) backwards;
}
@keyframes pm-accent-grow {from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes pm-accent-light {0%,100%{opacity:0}40%{opacity:1}}
@keyframes pm-letter-in {from{opacity:0}to{opacity:1}}
@keyframes pm-title-drift {from{transform:translate3d(0,10px,0)}to{transform:translate3d(0,0,0)}}
@keyframes pm-hero-rest-in {from{opacity:0;transform:translate3d(0,10px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes pm-hero-image-in {from{opacity:0}to{opacity:1}}
.public-site .editorial-hero .hero-copy>.lead {max-width:445px;color:#f6f6f3b8;font-size:14px;line-height:1.7;text-wrap:pretty}
.public-site .editorial-hero .hero-actions {margin:28px 0 15px;gap:25px}
.public-site .editorial-hero .hero-actions .button {
  min-height:60px;padding:18px 27px;font-size:11px;letter-spacing:.035em;font-weight:600;
  color:var(--black);background:var(--lime);border-color:var(--lime);box-shadow:0 0 32px #b9ea7011;
}
.public-site .editorial-hero .hero-actions .text-link {color:var(--white);font-size:11px;font-weight:450;min-height:44px;letter-spacing:.025em}
.public-site .editorial-hero .hero-copy>.micro {color:#f6f6f380;font-size:10px;letter-spacing:.015em}
.public-site .editorial-hero .hero-photo {
  position:absolute;z-index:1;inset:auto -7% 0 auto;width:65%;height:89%;max-height:none;
  min-width:0;margin:0;align-self:auto;pointer-events:none;overflow:visible;
}
.editorial-hero .hero-photo::before {display:none}
.public-site .editorial-hero .hero-photo>img {
  width:100%;height:100%;object-fit:contain;object-position:center bottom;mix-blend-mode:normal;
  scale:1;translate:0 var(--pm-photo-y,0px);
}
.public-site .editorial-hero .photo-caption {
  right:13%;bottom:45px;z-index:3;border:1px solid #ffffff28;background:#101010a8;
  color:var(--white);border-radius:99px;padding:13px 20px;font-size:11px;
}
.editorial-hero .photo-caption small {color:#f6f6f3a3}
.public-site:has(.editorial-hero) .credentials.wrap {
  position:relative;z-index:3;display:grid;grid-template-columns:minmax(240px,1.2fr) repeat(4,minmax(0,1fr));gap:0;
  width:100%;margin:0;padding:32px max(var(--site-inset),calc((100% - 1480px)/2));
  color:var(--white);background:var(--black);border-top:1px solid #ffffff24;border-bottom:0;
  border-radius:52px 52px 0 0;font-size:11px;
}
.public-site:has(.editorial-hero) .credentials>span {min-width:0;min-height:38px;display:flex;align-items:center;justify-content:center;gap:13px;padding-inline:20px;border-right:1px solid #ffffff1f;line-height:1.5}
.public-site:has(.editorial-hero) .credentials>span:first-child {padding-left:0;justify-content:flex-start}
.public-site:has(.editorial-hero) .credentials>span:last-child {padding-right:0;border:0;justify-content:flex-end}
.public-site:has(.editorial-hero) .credentials>span::before {content:"";display:block;flex:none;width:6px;height:6px;border:1px solid var(--lime);border-radius:50%;background:none}
.public-site:has(.editorial-hero) .credentials>.client-proof {
  display:flex;align-items:center;gap:18px;min-width:0;padding-right:24px;border-right:1px solid #ffffff1f;
}
.credentials .client-proof span::before {content:none}
.credentials .client-proof-avatars {display:flex;flex:none;padding-left:0;gap:0}
.client-proof-avatars>span {
  display:grid;place-items:center;width:36px;height:36px;border:1px solid #ffffff45;border-radius:50%;
  color:#bdbdbd;background:#202020;overflow:hidden;
}
.client-proof-avatars>span+span {margin-left:-12px}
.client-proof-avatars>span:last-child {color:var(--lime);background:#252a20;border-color:#b9ea705c}
.client-proof-avatars svg {width:29px;height:29px}
.client-proof-copy {display:grid;gap:4px;min-width:0}
.client-proof-copy strong {
  color:var(--white);font-family:"CHRIS Archivo",Arial,sans-serif;font-size:27px;font-weight:650;
  line-height:1;letter-spacing:-.055em;font-variant-numeric:tabular-nums;min-inline-size:3ch;white-space:nowrap;
}
.client-proof-copy>span {color:#f6f6f3a3;font-size:8px;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
@media(hover:hover) and (pointer:fine) {
  .public-site:has(.editorial-hero)>.header .button.nav-cta:hover {background:var(--lime);color:var(--black);border-color:var(--lime)}
  .public-site:has(.editorial-hero)>.header .button.nav-cta:hover span {color:var(--black)}
  .public-site .editorial-hero .hero-actions .button:hover {background:#c6ef8f;border-color:#c6ef8f;box-shadow:0 0 38px #b9ea701b}
}
@media(min-width:1600px) {
  .public-site .editorial-hero .hero-inner {min-height:930px}
  .public-site .editorial-hero .hero-copy {padding-top:160px;padding-bottom:90px}
  .public-site .editorial-hero h1 {font-size:110px}
}
@media(max-width:1100px) and (min-width:701px) {
  .public-site .editorial-hero .hero-copy {width:78%;padding-top:135px}
  .public-site .editorial-hero h1 {font-size:clamp(58px,7.8vw,88px)}
  .public-site .editorial-hero .hero-photo {right:-18%;width:78%;height:87%}
  .public-site .editorial-hero .photo-caption {right:24%}
}
@media(max-width:900px) {
  .public-site .editorial-hero {margin-bottom:-32px;padding-bottom:32px}
  .public-site:has(.editorial-hero)>.header nav {background:var(--black);border-color:#ffffff20}
  .public-site:has(.editorial-hero)>.header nav a {font-size:13px;min-height:50px}
  .public-site:has(.editorial-hero) .credentials.wrap {grid-template-columns:repeat(2,minmax(0,1fr));row-gap:20px;border-radius:32px 32px 0 0}
  .public-site:has(.editorial-hero) .credentials>.client-proof {grid-column:1/-1;justify-content:center;border-right:0;border-bottom:1px solid #ffffff1f;padding:0 0 21px;gap:20px}
  .public-site:has(.editorial-hero) .credentials>span {justify-content:flex-start;padding-inline:18px;font-size:10px}
  .public-site:has(.editorial-hero) .credentials>span:nth-of-type(even) {border:0}
  .public-site:has(.editorial-hero) .credentials>span:nth-of-type(odd) {padding-left:0}
  .public-site:has(.editorial-hero) .credentials>span:last-child {justify-content:flex-start;padding-left:18px}
}
@media(max-width:700px) {
  .public-site .editorial-hero {margin-top:-86px}
  .public-site .editorial-hero::before {background:linear-gradient(180deg,#10101000 0%,#10101000 47%,#101010aa 85%,#101010 100%)}
  .public-site .editorial-hero::after {background:radial-gradient(ellipse at 90% 40%,#202020 0%,#101010 65%)}
  .public-site .editorial-hero .hero-accent-line {background:linear-gradient(123deg,transparent 51%,#b9ea7035 51.15%,transparent 51.4%)}
  .public-site .editorial-hero .hero-accent-line::after {background:linear-gradient(123deg,transparent 50.1%,#b9ea7000 50.5%,#b9ea7030 51%,#b9ea70d0 51.15%,#b9ea7030 51.4%,#b9ea7000 51.8%,transparent 52.1%)}
  .public-site .editorial-hero .hero-inner {display:grid;grid-template-columns:minmax(0,1fr);min-height:0;padding-top:117px;padding-bottom:34px}
  .public-site .editorial-hero .hero-copy {display:contents}
  .editorial-hero .hero-copy>.eyebrow {grid-row:1;position:relative;z-index:3;margin:0 0 22px;font-size:9px;letter-spacing:.13em;gap:0 7px}
  .editorial-hero .pm-rotator {font-size:8px;margin-left:0;letter-spacing:.05em}
  .public-site .editorial-hero h1 {grid-row:2;position:relative;z-index:3;margin:0;font-size:clamp(40px,11.4vw,76px);letter-spacing:-.065em;line-height:.97}
  .editorial-hero .hero-title-first,.editorial-hero .hero-title-second {font-stretch:115%;font-variation-settings:"wdth" 115}
  .public-site .editorial-hero h1>.hero-title-support {font-size:clamp(22px,5.4vw,31px);max-width:390px;margin-top:20px;line-height:1.15;text-wrap:pretty}
  .public-site .editorial-hero .hero-actions {grid-row:3;position:relative;z-index:3;display:flex;align-items:flex-start;gap:5px 22px;margin:23px 0 0;flex-direction:row}
  .public-site .editorial-hero .hero-actions .button {width:100%;max-width:340px;min-height:54px;justify-content:space-between;padding:16px 20px;font-size:11px;letter-spacing:0}
  .public-site .editorial-hero .hero-actions .text-link {min-height:44px;align-self:flex-start;font-size:11px}
  .public-site .editorial-hero .hero-copy>.micro {grid-row:4;position:relative;z-index:3;margin:0;font-size:9px;line-height:1.5}
  .public-site .editorial-hero .hero-photo {grid-row:5;position:relative;inset:auto;z-index:1;width:100%;height:420px;max-height:none;margin:6px 0 0;overflow:visible}
  .public-site .editorial-hero .hero-photo>img {object-fit:contain;object-position:50% 100%;scale:1;translate:0 0}
  .public-site .editorial-hero .photo-caption {right:0;bottom:17px;font-size:10px;padding:12px 16px;background:#101010c7}
  .public-site .editorial-hero .hero-copy>.lead {grid-row:6;position:relative;z-index:3;max-width:520px;margin:9px 0 0;font-size:13px;line-height:1.75}
  .public-site:has(.editorial-hero) .credentials.wrap {padding-block:26px;column-gap:0;row-gap:14px}
}
@media(max-width:600px) {
  .public-site .editorial-hero {margin-top:-74px}
  .public-site .editorial-hero .hero-inner {padding-top:107px}
  .public-site:has(.editorial-hero)>.header .button.nav-cta {min-width:0;min-height:42px;font-size:9px;letter-spacing:.04em;padding:10px 12px;gap:8px}
  .public-site:has(.editorial-hero)>.header .header-brand {width:136px}
  .public-site .editorial-hero .hero-photo {height:355px}
}
@media(max-width:360px) {
  .public-site .editorial-hero h1 {font-size:34px}
  .public-site .editorial-hero h1>.hero-title-support {font-size:21px}
  .editorial-hero .hero-copy>.eyebrow {font-size:8px;letter-spacing:.08em}
  .editorial-hero .pm-rotator {font-size:7px}
  .public-site .editorial-hero .hero-actions .button {font-size:10px;padding-inline:17px}
  .public-site:has(.editorial-hero) .credentials>span {font-size:9px;gap:9px}
}
@media(prefers-reduced-motion:reduce) {
  .hero-intro-pending .public-site:has(.editorial-hero)>.header,
  .hero-intro-pending .editorial-hero :is(h1,.hero-copy>.eyebrow,.hero-copy>.lead,.hero-actions,.hero-copy>.micro,.hero-photo),
  .hero-intro-pending .public-site:has(.editorial-hero) .credentials {opacity:1!important}
  .editorial-hero .pm-letter,.editorial-hero .hero-accent-line {opacity:1!important;clip-path:none!important}
  .public-site .editorial-hero .hero-photo>img {translate:0 0!important;scale:1!important}
}
@media print {
  .pm-intro-element,.editorial-hero .pm-letter,.editorial-hero .pm-letter-word {opacity:1!important;animation:none!important;transform:none!important}
  .public-site .editorial-hero {margin:0;background:white;color:#101010}
  .public-site .editorial-hero::before,.public-site .editorial-hero::after,.public-site .editorial-hero .hero-accent-line {display:none}
  .public-site .editorial-hero h1>span,.public-site .editorial-hero .hero-copy>.lead {color:#101010}
  .editorial-hero .hero-title-second em,.editorial-hero .hero-title-second em .pm-word {color:#101010;-webkit-text-stroke:0}
}
