:root {
  --brand-yellow: #FFE600;
  --brand-black: #0A0A0A;
  --background: #FFFFFF;
  --foreground: #0A0A0A;
  --surface: #FFFFFF;
  --muted: #D9D9D9;
  --muted-foreground: #5F5F5F;
  --border: #8C8C8C;
  --accent: #FFE600;
  --accent-foreground: #0A0A0A;
  --font-brand: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-brand-mono: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --focus-ring: 3px solid #FFE600;
  --radius-brand: 2px;
  --transition-brand: 180ms ease;
}

html, body, button, input, select, textarea { font-family: var(--font-brand); }

.site-logo {
  display: inline-flex !important;
  width: 180px !important;
  height: 54px !important;
  position: fixed !important;
  top: 18px;
  left: 42px;
  z-index: 1200;
  align-items: center;
  justify-content: flex-start;
  overflow: visible;
  isolation: isolate;
}

.site-logo img {
  width: 180px !important;
  height: auto !important;
  max-width: 100% !important;
  object-fit: contain;
  object-position: left center;
  filter: grayscale(1) brightness(0) invert(1);
  mix-blend-mode: difference;
  transition: filter .25s ease, opacity .25s ease;
}

/* Keep the brand mark visible over both the light page and the dark hero. */
.site-logo:hover img,
.site-logo:focus-visible img { opacity: .78; }

/* Production-safe hero motion fallback when the optional WebGL initializer is unavailable. */
.hero-header__bg img {
  animation: vpp-hero-drift 18s ease-in-out infinite alternate;
  transform: scale(1.04);
  transform-origin: center;
  will-change: transform;
}

@keyframes vpp-hero-drift {
  from { transform: scale(1.04) translate3d(-1.2%, -0.6%, 0); }
  to { transform: scale(1.12) translate3d(1.2%, 0.6%, 0); }
}

.footer-vpp-title {
  margin-bottom: 12px;
  font-family: var(--font-brand-mono);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.site-footer .col--contact,
.site-footer .col--nl,
.site-footer .col--socials {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
}

.site-footer .col--nl .site-footer__cta {
  width: auto;
  margin-top: 12px;
  padding: 12px 16px;
  border: 1px solid currentColor;
}

.vpp-form-panel {
  padding: clamp(24px, 4vw, 55px);
  margin-top: 50px;
  border: 1px solid rgba(0, 0, 0, .25);
  background: var(--brand-yellow);
}

.vpp-form-panel > h2 { margin-bottom: 35px; }
.vpp-lead-form { position: relative; width: 100%; }
.vpp-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.vpp-lead-form label { display: grid; margin-bottom: 20px; gap: 7px; }
.vpp-lead-form label > span { font-family: var(--font-brand-mono); font-size: 11px; text-transform: uppercase; }
.vpp-lead-form input,
.vpp-lead-form select,
.vpp-lead-form textarea {
  width: 100%;
  min-height: 50px;
  padding: 12px 14px;
  border: 1px solid rgba(0, 0, 0, .5);
  border-radius: 0;
  color: #212121;
  background: rgba(255, 255, 255, .75);
  font: inherit;
}
.vpp-lead-form textarea { resize: vertical; }
.vpp-lead-form input:focus,
.vpp-lead-form select:focus,
.vpp-lead-form textarea:focus { outline: 3px solid #1307ff; outline-offset: 2px; }
.vpp-lead-form [aria-invalid="true"] { border-color: #c32349; }
.vpp-field-error { color: #8c0022; font-size: 12px; }
.vpp-consent { grid-template-columns: 28px 1fr !important; align-items: start; cursor: pointer; position: relative; }
.vpp-consent input[type="checkbox"] {
  position: relative;
  z-index: 2;
  width: 24px;
  min-height: 24px;
  margin: 1px 0 0;
  padding: 0;
  appearance: auto;
  -webkit-appearance: checkbox;
  accent-color: #1307ff;
  cursor: pointer;
}
.vpp-consent a { text-decoration: underline; }
.vpp-form-note { margin-top: 12px; font-size: 12px; }
.vpp-form-status { display: none; padding: 14px; margin-top: 18px; border: 1px solid #038786; background: #fff; }
.vpp-form-status.is-visible { display: block; }
.vpp-form-status.is-error { border-color: #c32349; }
.vpp-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }

.teaser-contact .vpp-lead-form .form__cta { margin-top: 12px; }
.teaser-contact .vpp-form-grid { gap: 12px 22px; }

@media (max-width: 900px) {
  .site-logo { left: 20px; width: 150px !important; height: 46px !important; }
  .site-logo img { width: 150px !important; }
}

@media (max-width: 640px) {
  .vpp-form-grid { grid-template-columns: 1fr; gap: 0; }
  .vpp-form-panel { padding: 22px 16px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

.vpp-language-switcher {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-right: 18px;
  font: 11px/1.2 var(--font-brand-mono);
  text-transform: uppercase;
}
.vpp-language-switcher span { opacity: .55; }
.vpp-language-switcher a { color: inherit; text-decoration: none; }
.vpp-language-switcher a:hover, .vpp-language-switcher a:focus-visible { text-decoration: underline; }
@media (max-width: 640px) { .vpp-language-switcher { margin-right: 8px; gap: 5px; font-size: 10px; } .vpp-language-switcher span { display: none; } }

/* Keep the market-analysis portrait focused on the face in the compact rail CTA. */
.aside-block__contact > img {
  width: 100px;
  height: 100px;
  object-fit: cover;
  object-position: center 38%;
}

/* Contact page: editorial left rail inspired by the scraped reference layout. */
.vpp-contact-page .text-header__col:first-child { position: relative; }
.vpp-contact-page .text-header__hl { max-width: 8ch; font-size: clamp(48px, 6vw, 108px); line-height: .92; letter-spacing: -.07em; }
.vpp-contact-page .text-header__text { max-width: 520px; }
.vpp-contact-portrait { display: flex; align-items: flex-end; gap: 14px; margin: 34px 0 24px; }
.vpp-contact-portrait img { width: clamp(115px, 12vw, 190px); aspect-ratio: 3 / 4; object-fit: cover; object-position: center top; filter: grayscale(.08); }
.vpp-contact-portrait span { padding-bottom: 4px; font: 11px/1.25 var(--font-brand-mono); text-transform: uppercase; }
.vpp-contact-details { display: flex; flex-direction: column; gap: 4px; margin-top: 24px; font-size: 18px; }
.vpp-contact-details a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.vpp-contact-mark { margin-left: auto; max-width: 10ch; font: 12px/1.2 var(--font-brand-mono); text-transform: uppercase; }
.vpp-contact-page .vpp-form-panel { background: var(--brand-black); color: var(--brand-yellow); }
.vpp-contact-page .vpp-form-panel input,
.vpp-contact-page .vpp-form-panel select,
.vpp-contact-page .vpp-form-panel textarea { color: #fff; background: #555; border-color: var(--brand-yellow); }
.vpp-contact-page .vpp-form-panel h2 { color: var(--brand-yellow); font-size: clamp(32px, 4vw, 72px); line-height: .95; letter-spacing: -.06em; }
.vpp-contact-page .vpp-form-panel .vpp-form-note,
.vpp-contact-page .vpp-form-panel .vpp-consent { color: var(--brand-yellow); }
@media (min-width: 901px) { .vpp-contact-page .text-header__col:first-child { padding-right: 5vw; } .vpp-contact-page .text-header__col:nth-child(2) { display: flex; align-items: flex-start; justify-content: flex-end; } }
@media (max-width: 640px) { .vpp-contact-page .text-header__hl { max-width: 9ch; } .vpp-contact-portrait { margin-top: 24px; } .vpp-contact-portrait img { width: 120px; } .vpp-contact-mark { display: none; } }

/* Homepage contact teaser: match the scraped editorial split layout. */
.vpp-home-contact-copy { position: relative; }
.vpp-home-contact-copy .teaser-contact__hl { max-width: 8ch; font-size: clamp(48px, 6vw, 108px); line-height: .92; letter-spacing: -.07em; }
.vpp-home-contact-copy > p { max-width: 390px; }
.vpp-home-contact-portrait { display: flex; align-items: flex-end; gap: 14px; margin: 28px 0 22px; }
.vpp-home-contact-portrait img { width: clamp(110px, 11vw, 180px); aspect-ratio: 3 / 4; object-fit: cover; object-position: center top; }
.vpp-home-contact-portrait span { padding-bottom: 4px; font: 11px/1.25 var(--font-brand-mono); text-transform: uppercase; }
.vpp-home-contact-copy .teaser-contact__contact-details { display: flex; flex-direction: column; gap: 4px; margin-top: 24px; }
.vpp-home-contact-copy .teaser-contact__contact-details a { color: inherit; text-decoration: underline; }
.vpp-home-contact-form { background: var(--brand-black); border-radius: var(--radius-brand); color: var(--brand-yellow); padding: clamp(20px, 3vw, 34px); }
.vpp-home-contact-form .teaser-contact__form-top h3,
.vpp-home-contact-form .block--form > h3 { color: var(--brand-yellow); font-size: clamp(30px, 3.4vw, 64px); line-height: .95; letter-spacing: -.06em; }
.vpp-home-contact-form .vpp-lead-form input,
.vpp-home-contact-form .vpp-lead-form select,
.vpp-home-contact-form .vpp-lead-form textarea { color: #fff; background: #555; border-color: var(--brand-yellow); }
.vpp-home-contact-form .vpp-form-note,
.vpp-home-contact-form .vpp-consent { color: var(--brand-yellow); }
.vpp-home-contact .teaser-contact__row { grid-column: 1 / -1; }
@media (min-width: 768px) { .vpp-home-contact-form { min-width: 0; } }
@media (max-width: 767px) { .vpp-home-contact-portrait img { width: 120px; } .vpp-home-contact-form { margin-top: 24px; } }

.current-site-color,
.site-colors { display: none !important; }
.site-loading { display: none !important; }
.site-colors button { min-width: 24px; min-height: 24px; }

/* Market profiles are indexable editorial pages, not color-picker canvases.
   Keep their local detail readable regardless of a saved legacy palette. */
body.vpp-market-page {
  --primary-2: var(--muted);
  background: var(--muted) !important;
  color: var(--brand-black);
}
body.vpp-market-page .site-header__menu-box,
body.vpp-market-page .site-header__nav,
body.vpp-market-page .site-header__main-cta { color: var(--brand-yellow); }
body.vpp-market-page .site-header__menu-box { background: rgba(217, 217, 217, .94); }
body.vpp-market-page .text-header,
body.vpp-market-page .basic-content,
body.vpp-market-page .accordion,
body.vpp-market-page .teaser-classic,
body.vpp-market-page .teaser-slim { color: var(--brand-black); }
body.vpp-market-page a { color: inherit; }
.tl-tr { color: #111 !important; }
.site-footer a { display: inline-flex; align-items: center; min-height: 24px; }
.vpp-evidence-panel { width: min(1180px, calc(100% - 40px)); margin: 0 auto clamp(50px, 8vw, 110px); padding: clamp(24px, 4vw, 56px); background: var(--brand-yellow); color: var(--brand-black); }
.vpp-evidence-panel > h2 { margin-bottom: 24px; }
.vpp-evidence-panel article { padding: 24px 0; border-top: 1px solid rgba(0, 0, 0, .35); }
.vpp-evidence-panel dl > div { display: grid; grid-template-columns: minmax(130px, .35fr) 1fr; gap: 20px; padding: 14px 0; border-top: 1px solid rgba(0, 0, 0, .35); }
.vpp-evidence-panel dt, .vpp-resource-label { font-family: var(--font-brand-mono); text-transform: uppercase; }

a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: var(--focus-ring); outline-offset: 3px; }
.vpp-lead-form input::placeholder, .vpp-lead-form textarea::placeholder { color: #5F5F5F; opacity: 1; }
.vpp-evidence-panel a { color: inherit; text-decoration: underline; }
@media (max-width: 640px) { .vpp-evidence-panel dl > div { grid-template-columns: 1fr; gap: 4px; } }
.vpp-local-web-page{max-width:1280px;margin:clamp(3rem,8vw,8rem) auto;padding:0 clamp(1.25rem,4vw,4rem)}
.vpp-local-web-page__intro{max-width:820px;padding:clamp(1.5rem,4vw,4rem);background:var(--brand-yellow);color:var(--brand-black)}
.vpp-local-web-page h2{font-size:clamp(2.4rem,6vw,6rem);line-height:.9;letter-spacing:-.06em;margin:.45rem 0 1.25rem}.vpp-local-web-page h3{font-size:clamp(1.8rem,3.4vw,3.6rem);line-height:.95;letter-spacing:-.05em;margin:.45rem 0 1rem}.vpp-local-web-page h4{font-size:1.4rem;margin:1rem 0 .4rem}.vpp-local-web-page p{line-height:1.55}.vpp-local-web-page__cta{display:inline-block;margin-top:1rem;padding:.9rem 1.15rem;background:var(--brand-black);color:var(--brand-yellow)!important;font-weight:700;text-decoration:none}.vpp-local-web-page__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:clamp(2rem,5vw,5rem);background:rgba(0,0,0,.22)}.vpp-local-web-page__grid>article{padding:clamp(1.25rem,3vw,3rem);background:var(--muted);color:var(--brand-black)}.vpp-local-web-page__grid ul{padding-left:1.2rem;line-height:1.7}.vpp-local-web-page dl{margin-top:1.5rem}.vpp-local-web-page dl>div{display:grid;grid-template-columns:150px 1fr;gap:1rem;padding:.8rem 0;border-top:1px solid rgba(0,0,0,.3)}.vpp-local-web-page dt{font-family:var(--font-brand-mono);font-size:.75rem;text-transform:uppercase}.vpp-local-web-page dd{margin:0}.vpp-local-web-page__work{margin-top:clamp(3rem,7vw,7rem)}.vpp-local-web-page__work header{max-width:720px}.vpp-local-web-page__work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.25rem,3vw,3rem);margin-top:2rem}.vpp-local-web-page__work-grid article{min-width:0}.vpp-local-web-page__work-grid a{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:#111;color:#fff}.vpp-local-web-page__work-grid img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.vpp-local-web-page__work-grid a:hover img,.vpp-local-web-page__work-grid a:focus-visible img{transform:scale(1.03)}.vpp-local-web-page__work-grid a span{position:absolute;left:1rem;bottom:1rem;padding:.55rem .7rem;background:var(--brand-yellow);color:var(--brand-black);font-size:.8rem;font-weight:700}.vpp-local-web-page__proof{max-width:820px;margin-top:clamp(3rem,7vw,7rem);padding:clamp(1.25rem,3vw,3rem);border:1px solid rgba(0,0,0,.35)}
@media(max-width:700px){.vpp-local-web-page__grid,.vpp-local-web-page__work-grid{grid-template-columns:1fr}.vpp-local-web-page dl>div{grid-template-columns:1fr;gap:.3rem}}
.vpp-portfolio{max-width:1480px;margin:clamp(3rem,7vw,7rem) auto;padding:0 clamp(1.25rem,4vw,4rem)}
.vpp-portfolio__intro{max-width:760px;margin-bottom:2.25rem}
.vpp-portfolio__intro h2{font-size:clamp(2rem,4vw,4.5rem);line-height:.98;margin:.45rem 0 1.2rem}
.vpp-process-proof{display:grid;grid-template-columns:minmax(320px,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(2rem,5vw,6rem);margin:0 0 clamp(4rem,8vw,8rem);padding:clamp(1.25rem,3vw,3rem);border:1px solid rgba(255,255,255,.18);background:#0a0a0a;color:#fff}
.vpp-process-proof__media{position:relative;width:100%;min-height:clamp(440px,48vw,650px);background:#171717}
.vpp-process-proof__media::after{content:"IN THE WORK";position:absolute;right:12px;top:12px;padding:7px 9px;background:#ffe600;color:#0a0a0a;font:700 10px/1 var(--font-brand-mono);letter-spacing:.08em;pointer-events:none}
.vpp-process-proof video{display:block;object-fit:cover;background:#171717}.vpp-process-proof__portrait{width:min(58%,360px);height:auto;aspect-ratio:9/16}.vpp-process-proof__wide{position:absolute;right:0;bottom:8%;z-index:2;width:min(78%,560px);height:auto;aspect-ratio:16/9;border:8px solid #0a0a0a}
.vpp-process-proof__copy{max-width:670px}.vpp-process-proof__copy h3{max-width:10ch;margin:.45rem 0 1.25rem;font-size:clamp(2.25rem,5vw,5.5rem);line-height:.9;letter-spacing:-.055em}
.vpp-process-proof__copy>p:not(.vpp-resource-label){max-width:60ch;line-height:1.6}.vpp-process-proof__copy>a{display:inline-block;margin-top:1rem;color:inherit;font-weight:800;text-decoration:underline;text-underline-offset:.3em}
.vpp-portfolio__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.16)}
.vpp-project{min-width:0;background:#101010;color:#fff;display:flex;flex-direction:column;position:relative;overflow:hidden}
.vpp-project__index{font-size:clamp(5rem,10vw,9rem);line-height:.8;font-weight:800;letter-spacing:-.08em;color:rgba(255,255,255,.055);padding:1.5rem 1.5rem 0;text-align:right}
.vpp-project__image{display:block;aspect-ratio:16/9;overflow:hidden;background:#222}
.vpp-project__image img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .45s ease}
.vpp-project__image:hover img,.vpp-project__image:focus-visible img{transform:scale(1.025)}
.vpp-project__body{display:flex;flex:1;flex-direction:column;padding:clamp(1.25rem,2.2vw,2rem)}
.vpp-project__body h3{font-size:clamp(1.35rem,2vw,2rem);margin:.35rem 0 .8rem}
.vpp-project__body p{line-height:1.55}
.vpp-project__body ul{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;padding:0;margin:1.25rem 0 1.75rem}
.vpp-project__body li{border:1px solid rgba(255,255,255,.2);padding:.4rem .65rem;font-size:.78rem}
.vpp-project__body>a{margin-top:auto;font-weight:700;text-decoration:underline;text-underline-offset:.3em}
.vpp-project__image:focus-visible,.vpp-project__body>a:focus-visible{outline:3px solid #fff;outline-offset:3px}
.vpp-portfolio__note{margin-top:1.25rem;font-size:.82rem;opacity:.72}
@media(max-width:980px){.vpp-portfolio__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.vpp-portfolio__grid{grid-template-columns:1fr}.vpp-portfolio{padding-inline:1rem}}
.vpp-work-library{margin-top:clamp(4rem,9vw,9rem);padding-top:clamp(3rem,6vw,6rem);border-top:1px solid rgba(255,255,255,.2)}
.vpp-work-library>header{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:30px;align-items:end;margin-bottom:42px}
.vpp-work-library>header .vpp-resource-label{grid-column:1/-1;margin:0}.vpp-work-library>header h2{font-size:clamp(42px,6vw,92px);line-height:.88;letter-spacing:-.055em;margin:0}.vpp-work-library>header>p:last-child{font-size:clamp(16px,1.35vw,21px);line-height:1.45;margin:0;max-width:560px}
.vpp-work-library__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,56px) clamp(16px,2.5vw,36px)}
.vpp-work-card{min-width:0}.vpp-work-card__image{aspect-ratio:16/9;overflow:hidden;background:#222;border:1px solid rgba(255,255,255,.2)}.vpp-work-card__image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease}.vpp-work-card:hover .vpp-work-card__image img{transform:scale(1.035);filter:contrast(1.04)}.vpp-work-card__body{padding-top:16px}.vpp-work-card__body h3{font-size:clamp(25px,2.4vw,42px);line-height:.95;letter-spacing:-.04em;margin:7px 0 12px}.vpp-work-card__body>p:last-child{line-height:1.5;max-width:580px;margin:0}
@media(max-width:767px){.vpp-work-library>header{grid-template-columns:1fr;gap:18px}.vpp-work-library>header .vpp-resource-label{grid-column:auto}.vpp-work-library__grid{grid-template-columns:1fr}.vpp-work-card__image{aspect-ratio:4/3}}
@media(max-width:760px){.vpp-process-proof{grid-template-columns:1fr}.vpp-process-proof__media{width:min(100%,480px);min-height:480px;margin-inline:auto}.vpp-process-proof__copy h3{max-width:12ch}.vpp-process-proof__wide{bottom:5%;width:82%;border-width:5px}}

.vpp-founder-focus{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:clamp(2rem,6vw,7rem);align-items:center;width:min(1280px,calc(100% - 40px));margin:0 auto clamp(50px,8vw,110px);padding:clamp(24px,4vw,56px);background:var(--brand-yellow);color:var(--brand-black)}
.vpp-founder-focus__copy h2{max-width:10ch;margin:.4rem 0 1.5rem;font-size:clamp(2.5rem,5.6vw,6rem);line-height:.9;letter-spacing:-.06em}.vpp-founder-focus__copy>p:not(.vpp-resource-label){max-width:62ch;line-height:1.6}
.vpp-founder-focus dl>div{display:grid;grid-template-columns:minmax(130px,.35fr) 1fr;gap:20px;padding:14px 0;border-top:1px solid rgba(0,0,0,.35)}.vpp-founder-focus dt{font-family:var(--font-brand-mono);text-transform:uppercase}.vpp-founder-focus a{color:inherit;text-decoration:underline}
.vpp-founder-focus__media{position:relative;min-height:clamp(480px,52vw,700px)}.vpp-founder-focus__media video{display:block;object-fit:cover;background:#171717}.vpp-founder-focus__portrait{width:min(68%,390px);height:auto;aspect-ratio:9/16;margin-left:auto}.vpp-founder-focus__detail{position:absolute;left:0;bottom:8%;z-index:2;width:min(82%,560px);height:auto;aspect-ratio:16/9;border:8px solid var(--brand-yellow)}.vpp-founder-focus__media>span{position:absolute;right:0;top:0;padding:7px 9px;background:var(--brand-black);color:var(--brand-yellow);font:700 10px/1 var(--font-brand-mono);letter-spacing:.08em}
@media(max-width:800px){.vpp-founder-focus{grid-template-columns:1fr}.vpp-founder-focus__media{width:min(100%,520px);min-height:520px;margin-inline:auto}.vpp-founder-focus__detail{border-width:5px}}@media(max-width:520px){.vpp-founder-focus{width:calc(100% - 24px);padding-inline:16px}.vpp-founder-focus dl>div{grid-template-columns:1fr;gap:4px}.vpp-founder-focus__media{min-height:460px}}
.vpp-home-work{padding:clamp(56px,8vw,120px) clamp(20px,4vw,64px);background:#101010;color:#fff}
.vpp-home-work>header{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:32px;align-items:end;margin-bottom:48px}
.vpp-home-work>header .vpp-resource-label{grid-column:1/-1;margin:0}
.vpp-home-work>header h2{font-size:clamp(48px,8vw,120px);line-height:.86;letter-spacing:-.055em;margin:0}
.vpp-home-work>header>p:last-child{font-size:clamp(16px,1.5vw,22px);line-height:1.5;margin:0;max-width:580px}
.vpp-home-work__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,42px)}
.vpp-home-work article{min-width:0}.vpp-home-work__visual{display:block;aspect-ratio:16/10;overflow:hidden;background:#222;border:1px solid rgba(255,255,255,.18)}
.vpp-home-work__visual picture{display:block;height:100%}.vpp-home-work__visual img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .45s ease}
.vpp-home-work__visual:hover img,.vpp-home-work__visual:focus-visible img{transform:scale(1.025)}
.vpp-home-work article>div{padding-top:18px}.vpp-home-work article h3{font-size:clamp(26px,2.5vw,42px);line-height:1;margin:7px 0 12px}
.vpp-home-work article>div>p:not(.vpp-resource-label){line-height:1.5;min-height:4.5em}.vpp-home-work article a{color:inherit;text-decoration:underline;text-underline-offset:.3em}
.vpp-home-work>footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.22);margin-top:48px;padding-top:18px}.vpp-home-work>footer a{font-weight:800}
@media(max-width:900px){.vpp-home-work__grid{grid-template-columns:1fr 1fr}.vpp-home-work article:first-child{grid-column:1/-1}}
@media(max-width:620px){.vpp-home-work>header{grid-template-columns:1fr;gap:18px}.vpp-home-work>header .vpp-resource-label{grid-column:auto}.vpp-home-work__grid{grid-template-columns:1fr}.vpp-home-work article:first-child{grid-column:auto}.vpp-home-work__visual{aspect-ratio:4/5}.vpp-home-work article>div>p:not(.vpp-resource-label){min-height:0}.vpp-home-work>footer{flex-direction:column}}
