/* GVS public site — one design system for every public page (navy / gold, portal-style cards). */
:root{--hv2-navy:#0f2a44;--hv2-navy2:#163a5a;--hv2-gold:#c9a24a;--hv2-gold-soft:#f4ead3;--hv2-ink:#172e40;--hv2-muted:#5b6c78;--hv2-line:#dde3e8;--hv2-paper:#f6f4ee;--hv2-card:#ffffff;--hv2-ok:#1f7a4d;--hv2-ok-soft:#e5f3eb;--hv2-r:14px;--hv2-shadow:0 1px 2px rgba(15,42,68,.06),0 8px 24px rgba(15,42,68,.07)}
/* ---------- Unified look for the CMS sections (all public pages) ---------- */
body.gvs-site{--hv2-sec-pad:84px}
body.gvs-site .section{padding-block:var(--hv2-sec-pad)}
body.gvs-site .section-head{align-items:flex-end}
body.gvs-site .link-text{color:var(--hv2-navy);font-weight:700}

/* stats: four portal-style KPI cards on paper */
body.gvs-site .hp-stats{background:var(--hv2-paper);padding-block:72px}
body.gvs-site .hp-stats>.wrap{display:block}
body.gvs-site .hp-stats-heading{text-align:left;max-width:720px;margin:0 0 32px}
body.gvs-site .hp-stats-heading h2:after,body.gvs-site .hp-stats-heading:after{display:none}
body.gvs-site .hp-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;background:none!important;border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important}
body.gvs-site .hp-stats-grid:before,body.gvs-site .hp-stats-grid:after{display:none!important}
body.gvs-site .hp-stat{background:#fff!important;border:1px solid var(--hv2-line)!important;border-radius:var(--hv2-r)!important;box-shadow:var(--hv2-shadow);padding:24px!important;color:var(--hv2-ink)!important}
body.gvs-site .hp-stat-icon{color:var(--hv2-gold)!important;background:var(--hv2-gold-soft)!important;border:0!important;border-radius:12px!important;width:48px;height:48px;display:grid!important;place-items:center}
body.gvs-site .hp-stat-icon svg{width:26px;height:26px}
body.gvs-site .hp-stat-value{color:var(--hv2-navy)!important;font-variant-numeric:tabular-nums;display:block;margin:18px 0 6px}
body.gvs-site .hp-stat h3{color:var(--hv2-navy)!important}
body.gvs-site .hp-stat p{color:var(--hv2-muted)!important}
body.gvs-site .hp-stats-note{text-align:left;margin:16px 0 0;color:var(--hv2-muted)}

/* services: one card system, gold top rule */
body.gvs-site .services-grid{gap:16px}
body.gvs-site .service-card{--card-bg:#fff;--card-ink:var(--hv2-ink);--card-accent:var(--hv2-gold);--card-line:var(--hv2-line);background:#fff!important;border:1px solid var(--hv2-line)!important;border-top:4px solid var(--hv2-gold)!important;border-radius:var(--hv2-r)!important;box-shadow:var(--hv2-shadow);transition:transform .2s,box-shadow .2s}
body.gvs-site .services-grid>.service-card:first-child{background:var(--hv2-navy)!important;border-color:var(--hv2-navy)!important;border-top-color:var(--hv2-gold)!important;--card-ink:#fff}
body.gvs-site .services-grid>.service-card:first-child :is(h3,dd,a){color:#fff!important}
body.gvs-site .services-grid>.service-card:first-child :is(.number,dt){color:#dfbb80!important}
body.gvs-site .services-grid>.service-card:first-child>a{border-color:rgba(255,255,255,.2)!important}
body.gvs-site .service-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(15,42,68,.14)}
body.gvs-site .service-card .number{display:inline-block;font-weight:700;letter-spacing:.08em}
body.gvs-site .service-card .gvs-service-facts dt{text-transform:uppercase;font-size:11px;letter-spacing:.08em}

/* trust: fact chips, rounded photos, team card */
body.gvs-site .hp-trust{background:#fff}
body.gvs-site .hp-trust-facts{background:none!important;border:0!important;padding:0!important;gap:16px!important}
body.gvs-site .hp-trust-facts>div{background:#fff!important;color:var(--hv2-ink)!important;border:1px solid var(--hv2-line)!important;border-radius:var(--hv2-r)!important;box-shadow:var(--hv2-shadow);padding:20px 22px!important}
body.gvs-site .hp-trust-facts>div:last-child{background:var(--hv2-navy)!important;border-color:var(--hv2-navy)!important}
body.gvs-site .hp-trust-facts>div:last-child :is(strong,span){color:#fff!important}
body.gvs-site .hp-trust-facts strong{color:var(--hv2-navy)}
body.gvs-site .hp-office-grid figure{border-radius:var(--hv2-r)!important;overflow:hidden;box-shadow:var(--hv2-shadow);border:1px solid var(--hv2-line)}
body.gvs-site .hp-team-strip{background:var(--hv2-paper)!important;border:1px solid var(--hv2-line)!important;border-radius:var(--hv2-r)!important}

/* working-with steps: numbered like the road map */
body.gvs-site .section.tinted{background:var(--hv2-paper)}
body.gvs-site .steps{counter-reset:hv2s;display:grid;gap:12px}
body.gvs-site .step{counter-increment:hv2s;position:relative;background:#fff;border:1px solid var(--hv2-line);border-radius:var(--hv2-r);box-shadow:var(--hv2-shadow);padding:20px 22px 20px 72px!important;margin:0!important}
body.gvs-site .step:before{content:counter(hv2s);position:absolute;left:22px;top:20px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--hv2-navy);color:#fff;font-weight:700;font-size:14px;border:0!important}
body.gvs-site .step:after{display:none!important}
body.gvs-site .step h3{color:var(--hv2-navy);margin-bottom:6px}
body.gvs-site .step p{margin:0;color:var(--hv2-muted)}

/* journal cards */
body.gvs-site .blog-card{background:#fff!important;border:1px solid var(--hv2-line)!important;border-radius:var(--hv2-r)!important;box-shadow:var(--hv2-shadow);overflow:hidden;transition:transform .2s,box-shadow .2s}
body.gvs-site .blog-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(15,42,68,.14)}
body.gvs-site .blog-card .meta{color:var(--hv2-gold);font-weight:700}
body.gvs-site .journal-arrow{border-radius:50%}

/* FAQ: bordered accordion cards */
body.gvs-site .hp-faq{background:var(--hv2-paper)}
body.gvs-site .hp-faq details{background:#fff!important;border:1px solid var(--hv2-line)!important;border-radius:12px!important;box-shadow:none!important;margin:0 0 10px!important;transition:border-color .2s}
body.gvs-site .hp-faq details[open]{border-color:var(--hv2-gold)!important;box-shadow:var(--hv2-shadow)!important}
body.gvs-site .hp-faq summary{color:var(--hv2-navy);font-weight:700}

/* closing call to action */
body.gvs-site .cta{background:linear-gradient(120deg,var(--hv2-navy),var(--hv2-navy2))!important;border-top:4px solid var(--hv2-gold)}
body.gvs-site .cta .button{background:var(--hv2-gold)!important;border-color:var(--hv2-gold)!important;color:var(--hv2-navy)!important}

@media (max-width:1000px){body.gvs-site .hp-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){body.gvs-site{--hv2-sec-pad:56px}body.gvs-site .hp-stat{padding:18px!important}body.gvs-site .step{padding:18px 18px 18px 64px!important}body.gvs-site .step:before{left:18px;top:18px}}

/* ---------- Sub-pages ---------- */
body.gvs-site .page-heading{border-bottom:4px solid var(--hv2-gold)}
body.gvs-site .breadcrumbs a{color:rgba(255,255,255,.85)}
body.gvs-site .button{border-radius:10px;transition:transform .15s,box-shadow .15s,background .15s}
body.gvs-site .button:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(15,42,68,.18)}
body.gvs-site .button:focus-visible{outline:3px solid var(--hv2-gold);outline-offset:2px}
body.gvs-site :is(.prepare-panel,.contact-card,.team-card,.contact-form){background:#fff!important;border:1px solid var(--hv2-line)!important;border-top:4px solid var(--hv2-gold)!important;border-radius:var(--hv2-r)!important;box-shadow:var(--hv2-shadow)!important}
body.gvs-site .article{background:#fff!important;border:1px solid var(--hv2-line)!important;border-radius:var(--hv2-r)!important;box-shadow:var(--hv2-shadow)}
body.gvs-site .article-notice{border-radius:10px;background:var(--hv2-gold-soft)!important;border-left-color:var(--hv2-gold)!important}
body.gvs-site .office-tag{background:var(--hv2-navy)!important;color:#fff!important;border-radius:999px}
body.gvs-site .initial{background:var(--hv2-gold-soft)!important;color:var(--hv2-navy)!important}
body.gvs-site .service-path{counter-reset:none}
body.gvs-site .step-index{background:var(--hv2-navy)!important;color:#fff!important;border-radius:50%!important;border:0!important}
body.gvs-site .resource-list>*{background:#fff;border:1px solid var(--hv2-line);border-radius:12px;transition:border-color .2s,box-shadow .2s}
body.gvs-site .resource-list>*:hover{border-color:var(--hv2-gold);box-shadow:var(--hv2-shadow)}
body.gvs-site :is(.faq,.service-faq) details{background:#fff!important;border:1px solid var(--hv2-line)!important;border-radius:12px!important;margin:0 0 10px!important;padding-inline:4px}
body.gvs-site :is(.faq,.service-faq) details[open]{border-color:var(--hv2-gold)!important;box-shadow:var(--hv2-shadow)}
body.gvs-site :is(.faq,.service-faq) summary{color:var(--hv2-navy);font-weight:700}
body.gvs-site .investor-tag{background:var(--hv2-gold-soft)!important;color:var(--hv2-navy)!important;border-radius:999px}
body.gvs-site footer .footer-office{background:#fff!important;border:1px solid var(--hv2-line)!important;border-radius:12px!important}
body.gvs-site footer{border-top:4px solid var(--hv2-gold)}
body.gvs-site .contact-card a{display:block;width:fit-content}
body.gvs-site :is(div,li,article):has(>.step-index){background:#fff!important;border:1px solid var(--hv2-line)!important;border-radius:var(--hv2-r)!important;box-shadow:var(--hv2-shadow)}
body.gvs-site .article-aside{border-top:4px solid var(--hv2-gold);border-radius:var(--hv2-r)}
body.gvs-site .gvs-job-card{border-top:4px solid var(--hv2-gold)!important}
body.gvs-site .footer-brand{font-size:0!important;letter-spacing:0!important;line-height:0;margin-bottom:8px}
body.gvs-site .footer-brand:before{margin-bottom:0}
