/* =========================================================
   VeltrixHost R74 — DEEP TYPOGRAPHY + READABILITY LOCK
   2026-09-30
   Loaded after all existing public-site styles.
   Goal: preserve the established visual design while making every
   customer-facing text layer easier to read and more consistent.
   ========================================================= */
:root{
  --vh-r74-font:'Manrope',ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --vh-r74-ink:#111922;
  --vh-r74-text:#3f4b57;
  --vh-r74-muted:#5e6a76;
  --vh-r74-soft-text:#6a7681;
  --vh-r74-line:#e1e6ea;
  --vh-r74-dark:#080d12;
  --vh-r74-dark-text:#b8c1ca;
  --vh-r74-dark-muted:#9da8b3;
}

/* ---------- Global type foundation ---------- */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body.vh-page-body{
  font-family:var(--vh-r74-font)!important;
  font-size:16px!important;
  line-height:1.68!important;
  font-weight:400!important;
  letter-spacing:-.004em!important;
  color:var(--vh-r74-text)!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.vh-page-body :where(p,li,dd,dt,a,button,input,select,textarea,summary,label,small,strong,span){
  font-family:var(--vh-r74-font);
}
body.vh-page-body :where(h1,h2,h3,h4,h5,h6){
  font-family:var(--vh-r74-font)!important;
  color:var(--vh-r74-ink);
  text-rendering:optimizeLegibility;
  font-synthesis:none;
}

/* ---------- Main hero typography ---------- */
body.vh-page-body .vh-rs-hero h1,
body.vh-page-body .vh-domain-rs-hero h1,
body.vh-page-body .vh-legal-hero h1,
body.vh-page-body .vh-review-hero__copy h1,
body.vh-page-body .vh-deals-hero__copy h1{
  font-family:var(--vh-r74-font)!important;
  font-size:clamp(44px,4.35vw,62px)!important;
  line-height:1.015!important;
  font-weight:760!important;
  letter-spacing:-.05em!important;
  color:var(--vh-r74-ink)!important;
  text-wrap:balance!important;
}
body.vh-page-body .vh-hero-title__line,
body.vh-page-body .vh-hero-title__accent{
  font-family:var(--vh-r74-font)!important;
}
body.vh-page-body .vh-hero-title__accent{
  font-weight:680!important;
  letter-spacing:-.045em!important;
}
body.vh-page-body .vh-rs-hero__lead,
body.vh-page-body .vh-domain-rs-hero__lead,
body.vh-page-body .vh-review-hero__copy>p{
  font-size:16.5px!important;
  line-height:1.7!important;
  font-weight:430!important;
  letter-spacing:-.006em!important;
  color:#52606d!important;
  max-width:720px!important;
}

/* ---------- Kicker / eyebrow system ---------- */
body.vh-page-body .vh-section-kicker,
body.vh-page-body .vh-rs-hero__eyebrow,
body.vh-page-body .vh-domain-rs-hero__eyebrow,
body.vh-page-body .vh-footer-cta__eyebrow,
body.vh-page-body .vh-r45-service,
body.vh-page-body .vh-shared-service-label,
body.vh-page-body .vh-vps-service-label,
body.vh-page-body .vh-mail-service-label,
body.vh-page-body .vh-r45-included__label{
  font-family:var(--vh-r74-font)!important;
  font-size:11.75px!important;
  line-height:1.35!important;
  font-weight:750!important;
  letter-spacing:.082em!important;
  text-transform:uppercase!important;
}
body.vh-page-body .vh-section-kicker,
body.vh-page-body .vh-rs-hero__eyebrow,
body.vh-page-body .vh-domain-rs-hero__eyebrow,
body.vh-page-body .vh-footer-cta__eyebrow{
  color:var(--vh-orange)!important;
}
body.vh-page-body .vh-rs-hero__eyebrow{
  text-transform:none!important;
  letter-spacing:.025em!important;
}

/* ---------- Section headings and body copy ---------- */
body.vh-page-body .vh-section-head h2,
body.vh-page-body .vh-review-section-head h2,
body.vh-page-body .vh-deals-section-head h2,
body.vh-page-body .vh-seo-intent-title h2{
  font-size:clamp(30px,2.7vw,39px)!important;
  line-height:1.12!important;
  font-weight:750!important;
  letter-spacing:-.036em!important;
  color:var(--vh-r74-ink)!important;
  text-wrap:balance!important;
}
body.vh-page-body .vh-section-head p,
body.vh-page-body .vh-review-section-head p,
body.vh-page-body .vh-deals-section-head p,
body.vh-page-body .vh-seo-intent-copy p{
  font-size:15.5px!important;
  line-height:1.74!important;
  font-weight:420!important;
  color:var(--vh-r74-muted)!important;
}
body.vh-page-body .vh-feature-card h3,
body.vh-page-body .vh-info-panel h3,
body.vh-page-body .vh-service-card h3,
body.vh-page-body .vh-product-story h3,
body.vh-page-body .vh-home-workload-card h3,
body.vh-page-body .vh-r45-index-card h3{
  font-size:19.5px!important;
  line-height:1.27!important;
  font-weight:720!important;
  letter-spacing:-.022em!important;
}
body.vh-page-body .vh-feature-card p,
body.vh-page-body .vh-info-panel p,
body.vh-page-body .vh-service-card p,
body.vh-page-body .vh-product-story p,
body.vh-page-body .vh-home-workload-copy p,
body.vh-page-body .vh-location-card p,
body.vh-page-body .vh-quote-card p,
body.vh-page-body .vh-final-cta p{
  font-size:14.75px!important;
  line-height:1.72!important;
  font-weight:420!important;
  color:#596672!important;
}

/* ---------- Navigation / dropdown readability ---------- */
body.vh-page-body .vh-nav-link{
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:660!important;
  letter-spacing:-.01em!important;
}
body.vh-page-body .vh-mega__title{font-size:13px!important;font-weight:750!important}
body.vh-page-body .vh-mega__label{font-size:11.5px!important;font-weight:750!important;color:#5a6671!important}
body.vh-page-body .vh-mega .vh-menu-copy strong,
body.vh-page-body .vh-menu-info strong{font-size:14.5px!important;line-height:1.38!important;font-weight:680!important;color:#17212b!important}
body.vh-page-body .vh-mega .vh-menu-copy small,
body.vh-page-body .vh-menu-info small{font-size:12.75px!important;line-height:1.5!important;color:#5d6975!important}

/* ---------- Pricing / plan card text ---------- */
body.vh-page-body .vh-r45-plan-card h3,
body.vh-page-body .vh-plan-card h3,
body.vh-page-body .vh-vps-card h3,
body.vh-page-body .vh-mail-plan h3{
  font-family:var(--vh-r74-font)!important;
  font-weight:730!important;
  letter-spacing:-.028em!important;
}
body.vh-page-body .vh-r45-price strong,
body.vh-page-body .vh-plan-price strong,
body.vh-page-body .vh-sale-price strong,
body.vh-page-body .vh-r45-index-price strong{
  font-family:var(--vh-r74-font)!important;
  font-weight:760!important;
  font-variant-numeric:tabular-nums lining-nums!important;
}
body.vh-page-body .vh-r45-price-meta,
body.vh-page-body .vh-r45-plan-card__head>small,
body.vh-page-body .vh-plan-price span,
body.vh-page-body .vh-sale-price small,
body.vh-page-body .vh-sale-price del,
body.vh-page-body .vh-vps-regular-line,
body.vh-page-body .vh-mail-regular{
  font-size:12px!important;
  line-height:1.45!important;
  color:#697581!important;
}
body.vh-page-body .vh-r45-save,
body.vh-page-body .vh-vps-save,
body.vh-page-body .vh-mail-save,
body.vh-page-body .vh-mail-deal,
body.vh-page-body .vh-mail-badge{
  font-size:11px!important;
  line-height:1.25!important;
  font-weight:750!important;
}
body.vh-page-body .vh-r45-stat span,
body.vh-page-body .vh-r45-index-price-label,
body.vh-page-body .vh-plan-tag,
body.vh-page-body .vh-vps-card__top>span,
body.vh-page-body .vh-mail-plan__head>span{
  font-size:11.25px!important;
  line-height:1.35!important;
  font-weight:740!important;
  letter-spacing:.045em!important;
}
body.vh-page-body .vh-r45-stat strong{font-size:13.75px!important;line-height:1.4!important;color:#34414d!important}
body.vh-page-body .vh-feature-icon,
body.vh-page-body .vh-feature-card__icon,
body.vh-page-body .vh-info-panel>span,
body.vh-page-body .vh-quote-card>span,
body.vh-page-body .vh-location-card>span,
body.vh-page-body .vh-domain-tips span{font-size:11.75px!important;line-height:1.35!important;font-weight:750!important}
body.vh-page-body .vh-ded-visual__stat{font-size:11.5px!important;line-height:1.4!important}
body.vh-page-body .vh-r45-included li span,
body.vh-page-body .vh-r45-included li strong{
  font-size:12.5px!important;
  line-height:1.48!important;
}
body.vh-page-body .vh-r45-feature-list li,
body.vh-page-body .vh-r45-plan-section .vh-r45-feature-list li,
body.vh-page-body .vh-plan-card .vh-plan-specs li,
body.vh-page-body .vh-mail-plan .vh-mail-feature-list li,
body.vh-page-body .vh-check-list li{
  font-size:13.75px!important;
  line-height:1.58!important;
  font-weight:450!important;
  color:#46535f!important;
}
body.vh-page-body .vh-check-list{gap:9px!important}

/* Bigger, cleaner plan tick marks without changing the plan layout. */
body.vh-page-body .vh-plan-card .vh-plan-specs li,
body.vh-page-body .vh-mail-plan .vh-mail-feature-list li,
body.vh-page-body .vh-check-list li{padding-left:23px!important}
body.vh-page-body .vh-plan-card .vh-plan-specs li::before,
body.vh-page-body .vh-mail-plan .vh-mail-feature-list li::before,
body.vh-page-body .vh-check-list li::before{
  font-size:16.5px!important;
  line-height:1!important;
  font-weight:850!important;
  color:var(--vh-orange)!important;
  top:.17em!important;
}
body.vh-page-body .vh-r45-feature-list li,
body.vh-page-body .vh-r45-plan-section .vh-r45-feature-list li{padding-left:22px!important}
body.vh-page-body .vh-r45-feature-list li::before,
body.vh-page-body .vh-r45-plan-section .vh-r45-feature-list li::before,
body.vh-page-body .vh-r47-shared-plan-section .vh-r45-feature-list li::before{
  width:8px!important;
  height:4px!important;
  left:1px!important;
  top:.46em!important;
  border-left-width:2px!important;
  border-bottom-width:2px!important;
}
body.vh-page-body .vh-r45-plan-btn,
body.vh-page-body .vh-r45-index-btn,
body.vh-page-body .vh-btn,
body.vh-page-body .vh-rs-btn{
  font-family:var(--vh-r74-font)!important;
  font-size:13.25px!important;
  line-height:1.25!important;
  font-weight:720!important;
}

/* ---------- Comparison/spec tables ---------- */
body.vh-page-body .vh-compare-table th,
body.vh-page-body .vh-legal-table th,
body.vh-page-body .vh-server-table-head span,
body.vh-page-body .vh-rs-live-table-head{
  font-size:11.5px!important;
  line-height:1.35!important;
  font-weight:760!important;
  letter-spacing:.035em!important;
}
body.vh-page-body .vh-compare-table td,
body.vh-page-body .vh-legal-table td,
body.vh-page-body .vh-server-main p,
body.vh-page-body .vh-server-cell strong,
body.vh-page-body .vh-rs-live-server-main p{
  font-size:13.5px!important;
  line-height:1.5!important;
}
body.vh-page-body .vh-server-cell span,
body.vh-page-body .vh-rs-live-cell small,
body.vh-page-body .vh-rs-live-price small{
  font-size:11.5px!important;
  line-height:1.4!important;
  color:#5f6b76!important;
}

/* ---------- FAQ ---------- */
body.vh-page-body .vh-faq-list summary{
  font-family:var(--vh-r74-font)!important;
  font-size:16px!important;
  line-height:1.48!important;
  font-weight:680!important;
  letter-spacing:-.012em!important;
  color:#17212b!important;
}
body.vh-page-body .vh-faq-list details>p,
body.vh-page-body .vh-faq-list details>div,
body.vh-page-body .vh-faq-list details>div p{
  font-family:var(--vh-r74-font)!important;
  font-size:15px!important;
  line-height:1.78!important;
  color:#52606d!important;
}
body.vh-page-body .vh-faq-list summary::after{font-size:22px!important;color:#65717d!important}

/* ---------- Legal / policy copy ---------- */
body.vh-page-body .vh-legal-section h2{font-size:clamp(25px,2.15vw,31px)!important;line-height:1.18!important;font-weight:750!important;letter-spacing:-.028em!important}
body.vh-page-body .vh-legal-section h3{font-size:18.5px!important;line-height:1.34!important;font-weight:720!important}
body.vh-page-body .vh-legal-section p,
body.vh-page-body .vh-legal-section li{font-size:15.25px!important;line-height:1.8!important;color:#4d5a66!important}
body.vh-page-body .vh-legal-toc nav a{font-size:13.5px!important;line-height:1.5!important}
body.vh-page-body .vh-legal-meta span,
body.vh-page-body .vh-legal-meta strong{font-size:12px!important;line-height:1.45!important}

/* ---------- Coded/technical visual labels ----------
   These remain compact by design, but no important label stays microscopic. */
body.vh-page-body .vh-real-hero small,
body.vh-page-body .vh-real-hero em,
body.vh-page-body .vh-hero-visual small,
body.vh-page-body .vh-hero-visual em{
  font-size:11px!important;
  line-height:1.35!important;
}
body.vh-page-body .vh-real-hero p,
body.vh-page-body .vh-hero-visual p{line-height:1.5!important}
body.vh-page-body .vh-rs-console__title,
body.vh-page-body .vh-rs-console__status,
body.vh-page-body .vh-rs-console__spec small,
body.vh-page-body .vh-rs-stat small,
body.vh-page-body .vh-rs-console__note{font-size:11.5px!important;line-height:1.4!important}
body.vh-page-body .vh-rs-console__spec strong,
body.vh-page-body .vh-rs-stat strong{font-size:13px!important;line-height:1.4!important}

/* ---------- Dark surfaces: hard contrast lock ---------- */
body.vh-page-body :is(.vh-footer,.vh-footer-cta,.vh-home-standard,.vh-tone-dark,.vh-review-cta,.vh-ded-includes){
  color:var(--vh-r74-dark-text)!important;
}
body.vh-page-body :is(.vh-footer,.vh-footer-cta,.vh-home-standard,.vh-tone-dark,.vh-review-cta,.vh-ded-includes) :is(h1,h2,h3,h4,h5,h6,strong){
  color:#f7f9fb!important;
  -webkit-text-fill-color:#f7f9fb!important;
  opacity:1!important;
}
body.vh-page-body :is(.vh-footer-cta,.vh-home-standard,.vh-tone-dark,.vh-review-cta,.vh-ded-includes) p,
body.vh-page-body :is(.vh-home-standard,.vh-tone-dark,.vh-review-cta,.vh-ded-includes) li{
  color:var(--vh-r74-dark-text)!important;
  opacity:1!important;
}

/* Footer CTA — fixes the heading reported in R73 screenshots. */
body.vh-page-body .vh-footer .vh-footer-cta h2,
body.vh-page-body .vh-footer-cta h2{
  font-family:var(--vh-r74-font)!important;
  font-size:clamp(28px,2.45vw,36px)!important;
  line-height:1.12!important;
  font-weight:760!important;
  letter-spacing:-.036em!important;
  color:#f7f9fb!important;
  -webkit-text-fill-color:#f7f9fb!important;
  text-shadow:none!important;
  opacity:1!important;
}
body.vh-page-body .vh-footer-cta p{
  font-size:15px!important;
  line-height:1.65!important;
  font-weight:430!important;
  color:#aeb8c2!important;
}
body.vh-page-body .vh-footer-btn{font-size:13.25px!important;font-weight:720!important}

/* Footer navigation / legal text. */
body.vh-page-body .vh-footer-brand p{
  font-size:14.25px!important;
  line-height:1.68!important;
  color:#aeb8c2!important;
}
body.vh-page-body .vh-footer .vh-footer-col h3{
  font-size:11.75px!important;
  line-height:1.35!important;
  font-weight:760!important;
  letter-spacing:.045em!important;
  color:#f7f9fb!important;
  -webkit-text-fill-color:#f7f9fb!important;
  opacity:1!important;
}
body.vh-page-body .vh-footer .vh-footer-col a{
  font-size:13.75px!important;
  line-height:1.5!important;
  font-weight:430!important;
  color:#b6c0ca!important;
  opacity:1!important;
}
body.vh-page-body .vh-footer .vh-footer-col a:hover,
body.vh-page-body .vh-footer .vh-footer-col a:focus-visible{color:#fff!important}
body.vh-page-body .vh-payment-wrap>span,
body.vh-page-body .vh-footer-legal a,
body.vh-page-body .vh-footer-bottom{
  font-size:12px!important;
  line-height:1.5!important;
  color:#aab4be!important;
}

/* ---------- Mobile tuning ---------- */
@media(max-width:980px){
  body.vh-page-body .vh-rs-hero h1,
  body.vh-page-body .vh-domain-rs-hero h1,
  body.vh-page-body .vh-legal-hero h1,
  body.vh-page-body .vh-review-hero__copy h1{font-size:clamp(39px,7.2vw,52px)!important}
}
@media(max-width:640px){
  body.vh-page-body{font-size:15.5px!important;line-height:1.66!important}
  body.vh-page-body .vh-rs-hero h1,
  body.vh-page-body .vh-domain-rs-hero h1,
  body.vh-page-body .vh-legal-hero h1,
  body.vh-page-body .vh-review-hero__copy h1{
    font-size:clamp(34px,10.2vw,43px)!important;
    line-height:1.04!important;
    letter-spacing:-.042em!important;
  }
  body.vh-page-body .vh-rs-hero__lead,
  body.vh-page-body .vh-domain-rs-hero__lead{font-size:15.5px!important;line-height:1.68!important}
  body.vh-page-body .vh-section-head h2,
  body.vh-page-body .vh-review-section-head h2,
  body.vh-page-body .vh-deals-section-head h2,
  body.vh-page-body .vh-seo-intent-title h2{font-size:27.5px!important;line-height:1.16!important}
  body.vh-page-body .vh-section-head p{font-size:15px!important;line-height:1.7!important}
  body.vh-page-body .vh-r45-feature-list li,
  body.vh-page-body .vh-r45-plan-section .vh-r45-feature-list li,
  body.vh-page-body .vh-plan-card .vh-plan-specs li,
  body.vh-page-body .vh-mail-plan .vh-mail-feature-list li,
  body.vh-page-body .vh-check-list li{font-size:13.5px!important;line-height:1.56!important}
  body.vh-page-body .vh-footer-cta h2{font-size:27px!important}
  body.vh-page-body .vh-footer .vh-footer-col a{font-size:13.5px!important}
}
