/* Generated by tools/build_frontend_css.py. Do not edit directly. */
/* Ownership output: v2-canonical-primitives */

/* Source 1: assets/src/v2/primitives.css | media: all */
/* WO204 canonical Button + Section Shell + Card primitives. */

:root,.vh-palette-contract-v1{
  --vh-c-color-primary:var(--vh-btn-primary-bg,var(--wp--custom--velocity-hub--color--primary,#9fa90b));
  --vh-c-color-primary-text:var(--vh-btn-primary-text,var(--wp--custom--velocity-hub--color--primary-foreground,#fff));
  --vh-c-color-primary-border:var(--vh-btn-primary-border,var(--vh-c-color-primary));
  --vh-c-color-primary-hover:var(--vh-btn-primary-hover-bg,#155d74);
  --vh-c-color-primary-hover-text:var(--vh-btn-primary-hover-text,#fff);
  --vh-c-color-primary-hover-border:var(--vh-btn-primary-hover-border,var(--vh-c-color-primary-hover));
  --vh-c-surface:var(--vh-card-surface,var(--wp--custom--velocity-hub--color--surface,#fff));
  --vh-c-surface-muted:var(--vh-archive-results-bg,var(--vh-section-surface,var(--wp--custom--velocity-hub--color--surface-muted,#f8f9fa)));
  --vh-c-text:var(--vh-body-text,var(--wp--custom--velocity-hub--color--text,#0f172a));
  --vh-c-muted:var(--vh-muted-text,var(--wp--custom--velocity-hub--color--text-muted,#475569));
  --vh-c-border:var(--vh-border-color,var(--wp--custom--velocity-hub--color--border,#dbe3ec));
  --vh-c-link:var(--vh-link,var(--vh-c-color-primary));
}

.vh-c-button{
  display:inline-flex;align-items:center;justify-content:center;min-height:3.5rem;padding:.95rem 1.5rem;
  border:1px solid transparent;border-radius:.9rem;font:700 1rem/1.2 inherit;text-align:center;text-decoration:none;
  white-space:normal;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease;
}
.vh-c-button:hover,.vh-c-button:focus-visible{transform:translateY(-1px);box-shadow:0 .75rem 1.75rem rgba(15,23,42,.18);text-decoration:none;}
.vh-c-button:focus-visible{outline:3px solid color-mix(in srgb,currentColor 65%,#fff);outline-offset:3px;}
.vh-c-button--md{min-height:3.25rem;padding:.8rem 1.25rem;}
.vh-c-button--lg{min-height:3.5rem;padding:.95rem 1.5rem;}
.vh-c-button--primary{background:var(--vh-c-button-bg,var(--vh-c-color-primary));border-color:var(--vh-c-button-border,var(--vh-c-color-primary-border));color:var(--vh-c-button-text,var(--vh-c-color-primary-text));}
.vh-c-button--primary:hover,.vh-c-button--primary:focus-visible{background:var(--vh-c-button-hover-bg,var(--vh-c-color-primary-hover));border-color:var(--vh-c-button-hover-border,var(--vh-c-color-primary-hover-border));color:var(--vh-c-button-hover-text,var(--vh-c-color-primary-hover-text));}
.vh-c-button--secondary{background:var(--vh-c-button-bg,transparent);border-color:var(--vh-c-button-border,color-mix(in srgb,currentColor 40%,transparent));color:var(--vh-c-button-text,inherit);}
.vh-c-button--secondary:hover,.vh-c-button--secondary:focus-visible{background:var(--vh-c-button-hover-bg,color-mix(in srgb,currentColor 8%,transparent));border-color:var(--vh-c-button-hover-border,color-mix(in srgb,currentColor 55%,transparent));color:var(--vh-c-button-hover-text,inherit);}
.vh-c-button--dark{background:var(--vh-c-button-bg,var(--vh-btn-dark-bg,#212529));border-color:var(--vh-c-button-border,var(--vh-btn-dark-border,var(--vh-btn-dark-bg,#212529)));color:var(--vh-c-button-text,var(--vh-btn-dark-text,#fff));}
.vh-c-button--dark:hover,.vh-c-button--dark:focus-visible{background:var(--vh-c-button-hover-bg,var(--vh-btn-dark-hover-bg,#111827));border-color:var(--vh-c-button-hover-border,var(--vh-btn-dark-hover-border,var(--vh-btn-dark-hover-bg,#111827)));color:var(--vh-c-button-hover-text,var(--vh-btn-dark-hover-text,#fff));}
.vh-c-button[disabled],.vh-c-button[aria-disabled="true"]{opacity:.65;pointer-events:none;transform:none;box-shadow:none;cursor:not-allowed;}
.vh-single-hero .vh-c-button{min-width:min(100%,14rem);}
.vh-side-actions .vh-c-button{width:100%;min-height:3.7rem;border-radius:1rem;font-weight:900;}
.vh-layout-hero .vh-c-button{font-family:var(--vh-hero-font-family,inherit);font-size:var(--vh-hero-button-size,16px);}
.vh-layout-hero .vh-hero-actions .vh-c-button--secondary{color:inherit;}
.vh-hero-layout-minimal_page .vh-c-button--secondary,.vh-hero-layout-editorial_center .vh-c-button--secondary{color:var(--vh-hero-text,#fff);border-color:color-mix(in srgb,var(--vh-hero-text,#fff) 55%,transparent);background:transparent;opacity:1;}
.vh-hero-layout-minimal_page .vh-c-button--secondary:hover,.vh-hero-layout-minimal_page .vh-c-button--secondary:focus-visible,.vh-hero-layout-editorial_center .vh-c-button--secondary:hover,.vh-hero-layout-editorial_center .vh-c-button--secondary:focus-visible{color:var(--vh-hero-bg,#070b15);background:var(--vh-hero-text,#fff);border-color:var(--vh-hero-text,#fff);}
.vh-bg-light .vh-hero-actions .vh-c-button--secondary,.vh-section--light .vh-hero-actions .vh-c-button--secondary,.vh-bg-white .vh-hero-actions .vh-c-button--secondary{color:var(--vh-text,#111827);border-color:color-mix(in srgb,var(--vh-text,#111827) 34%,transparent);}
.vh-bg-light .vh-hero-actions .vh-c-button--secondary:hover,.vh-section--light .vh-hero-actions .vh-c-button--secondary:hover,.vh-bg-white .vh-hero-actions .vh-c-button--secondary:hover{color:var(--vh-text,#111827);background:color-mix(in srgb,var(--vh-text,#111827) 8%,transparent);}
@media (max-width:991.98px){.vh-layout-hero .vh-c-button{width:100%;min-width:0;min-height:3.1rem;padding-inline:1rem;}.vh-layout-hero .vh-hero-actions{max-width:24rem;}}
@media (max-width:599.98px){body.home .vh-layout-hero .vh-c-button{width:100%;min-height:2.9rem;}}

.vh-c-section-shell{position:relative;z-index:1;padding-top:var(--vh-section-pad-top,7.5rem);padding-bottom:var(--vh-section-pad-bottom,7.5rem);background:var(--vh-c-section-bg,var(--vh-c-surface-muted));}
.vh-c-section-shell.vh-content-section-flush{padding-top:var(--vh-section-pad-top,0);padding-bottom:var(--vh-section-pad-bottom,0);}
@media (max-width:575.98px){.vh-c-section-shell--archive>.vh-container{padding-left:1rem;padding-right:1rem;}}

.vh-c-card-grid{display:grid;align-items:stretch;justify-content:initial;justify-items:stretch;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1.5rem;}
.vh-c-card-grid>[class*="col-"]{width:auto;max-width:none;min-width:0;flex:none;padding-left:0;padding-right:0;margin-left:0;margin-right:0;}
.vh-c-card-grid>[class*="col-"]>.vh-c-card{width:100%;}
@media (min-width:768px) and (max-width:991.98px){.vh-c-card-grid{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1.25rem;}}
@media (max-width:767.98px){.vh-c-card-grid{grid-template-columns:minmax(0,1fr);gap:1rem;}}
.vh-c-card{display:flex;flex-direction:column;height:100%;min-height:100%;overflow:hidden;border:1px solid var(--vh-c-border);border-radius:1.25rem;background:var(--vh-c-surface);color:var(--vh-c-text);text-decoration:none;box-shadow:0 18px 45px rgba(15,23,42,.08);transition:transform 180ms ease,box-shadow 180ms ease,border-color 180ms ease;}
.vh-c-card:hover,.vh-c-card:focus-visible{transform:translateY(-2px);border-color:color-mix(in srgb,var(--vh-c-color-primary) 45%,transparent);color:var(--vh-c-text);text-decoration:none;box-shadow:0 24px 60px rgba(15,23,42,.12);}
.vh-c-card:focus-visible{outline:3px solid color-mix(in srgb,var(--vh-c-color-primary) 70%,#fff);outline-offset:3px;}
.vh-c-card__media{display:block;aspect-ratio:16/9;overflow:hidden;background:#e5e7eb;}
.vh-c-card__media img,.vh-c-card__media>*{display:block;width:100%;height:100%;object-fit:cover;}
.vh-c-card__body{display:flex;flex:1 1 auto;flex-direction:column;gap:.75rem;padding:1.25rem;}
.vh-c-card__eyebrow{display:inline-block;width:fit-content;max-width:100%;border-radius:999px;background:color-mix(in srgb,var(--vh-c-color-primary) 12%,transparent);color:var(--vh-accent-text,var(--vh-c-link));font-size:.73rem;font-weight:800;letter-spacing:.08em;line-height:1;padding:.45rem .65rem;text-transform:uppercase;}
.vh-c-card__title{margin:0;color:var(--vh-c-text);font-size:clamp(1.15rem,1.7vw,1.45rem);line-height:1.15;}
.vh-c-card__excerpt{display:block;margin:0;color:var(--vh-c-muted);line-height:1.6;}
.vh-c-card__link{display:block;margin-top:auto;color:var(--vh-c-link);font-weight:800;}
@media (max-width:599.98px){.vh-c-card__body{padding:1rem;}}

/* WO206 local SVG icon primitive. */
.vh-icon{display:inline-block;width:1em;height:1em;flex:0 0 auto;vertical-align:-.125em;overflow:visible;stroke:currentColor;fill:none;}
.vh-icon.vh-me-1{margin-right:.25rem}.vh-icon.vh-me-2{margin-right:.5rem}.vh-icon.vh-ms-2{margin-left:.5rem}
.vh-icon.vh-service-card__check-icon{color:var(--vh-service-card-check-color,currentColor)}
