/* Vitality Scripts — readable typography pass, 2026-10-18
   Public store + documentation only; intentionally leaves owner dashboard untouched.
   Improves tiny labels, muted descriptions and mobile tap targets while retaining brand headings.
*/
body.vitality-theme{
  font-size:15px;
  text-rendering:optimizeLegibility;
  font-kerning:normal;
  --readable-copy:#bac9de;
  --readable-muted:#a9bad2;
  --readable-accent:#d4b4ff;
}

/* Site-wide navigational and supporting text */
body.vitality-theme .links a{font-size:14px;font-weight:600;line-height:1.45}
body.vitality-theme .navbtn{font-size:13px}
body.vitality-theme .kicker,
body.vitality-theme .eyebrow{font-size:12px;line-height:1.5;letter-spacing:.13em;font-weight:800;color:#c19cf5}
body.vitality-theme .text-link,
body.vitality-theme .sectionhead>a{font-size:13px;font-weight:700}
body.vitality-theme .back{font-size:13px;font-weight:650;color:#bcc8dd}
body.vitality-theme .detail-cover span,
body.vitality-theme .gallery>a>span{font-size:12px;color:#a5c7de}
body.vitality-theme .detail-note{font-size:12px!important;line-height:1.7!important;color:#abbad2!important}
body.vitality-theme .purchase-note,
body.vitality-theme .price small{font-size:12px;line-height:1.6;font-weight:650;letter-spacing:.055em;color:#a7b6cc}
body.vitality-theme .announcement{font-size:12px;color:#bbc6d8}
body.vitality-theme .announcement span,
body.vitality-theme .announcement a{font-size:11px;line-height:1.5}
body.vitality-theme .hero-caption{font-size:11px;letter-spacing:.13em;color:#b2bed4}
body.vitality-theme .hero-caption span+span:before{color:#a765e8}

/* Collection cards, filters and overview */
body.vitality-theme .catalog-intro p,
body.vitality-theme .v-hero-copy>p{font-size:15px;line-height:1.8;color:var(--readable-copy)}
body.vitality-theme .release-meta span{font-size:11px;letter-spacing:.095em;font-weight:800;color:#c7a0fa;line-height:1.4}
body.vitality-theme .release-body p{font-size:14px;line-height:1.76;color:var(--readable-copy);font-weight:400}
body.vitality-theme .release-actions .btn{font-size:15px}
body.vitality-theme .filter{font-size:12px;font-weight:650;line-height:1.3;color:#b6c4d8}
body.vitality-theme .filter.active{color:#fff}
body.vitality-theme .search input{font-size:14px;line-height:1.5;color:#f0f5ff}
body.vitality-theme .search input::placeholder{color:#93a4be;opacity:1}
body.vitality-theme .upcoming-card .meta{font-size:11px;line-height:1.55;letter-spacing:.055em;color:#b5c3d8}
body.vitality-theme .upcoming-card .cardbody p{font-size:14px;line-height:1.75;color:var(--readable-copy)}
body.vitality-theme .upcoming-card .status{font-size:11px}
body.vitality-theme .hosting-banner p{font-size:14px;line-height:1.8;color:var(--readable-copy)}
body.vitality-theme .v-support>p{font-size:15px;line-height:1.8;color:var(--readable-copy)}

/* Product detail pages */
body.vitality-theme .release-detail-grid p,
body.vitality-theme .product-summary>p,
body.vitality-theme .detailmain>p,
body.vitality-theme .detail-features li{font-size:15px;line-height:1.8;color:var(--readable-copy)}
body.vitality-theme .detail-features aside p{font-size:14px;line-height:1.8;color:var(--readable-copy)}
body.vitality-theme .spec dt{font-size:12px;font-weight:800;line-height:1.5;letter-spacing:.065em;color:#a8b9d0}
body.vitality-theme .spec dd{font-size:14px;line-height:1.6;color:#d5dfef}
body.vitality-theme .cols ul{font-size:14px;line-height:1.8;color:var(--readable-copy)}
body.vitality-theme .features b,
body.vitality-theme .steps b{font-size:11px;font-weight:800;color:#c0a0f9}
body.vitality-theme .features span,
body.vitality-theme .features strong{font-size:13px;line-height:1.6;color:var(--readable-copy)}
body.vitality-theme .features strong{font-weight:700;color:#e4eafb}
body.vitality-theme .steps p,
body.vitality-theme .operator-grid p,
body.vitality-theme .road p,
body.vitality-theme .faq details p,
body.vitality-theme .support-card p,
body.vitality-theme .standard-list p{font-size:14px;line-height:1.77;color:var(--readable-copy)}
body.vitality-theme .operator-grid article>span,
body.vitality-theme .road>span,
body.vitality-theme .road b,
body.vitality-theme .support-card>span,
body.vitality-theme .standard-list article>span{font-size:11px;line-height:1.5;font-weight:800;color:#ba95f7}
body.vitality-theme .support-card a,
body.vitality-theme .standard-links a{font-size:13px;color:#abdfff}
body.vitality-theme .faq summary{font-size:15px;line-height:1.5;color:#e2e9f7}

/* Homepage feature / trust / hosting cards */
body.vitality-theme .home-feature p,
body.vitality-theme .home-partner-copy p,
body.vitality-theme .cta p{font-size:14px;line-height:1.78;color:var(--readable-copy)}
body.vitality-theme .trustgrid span,
body.vitality-theme .hero-badges span,
body.vitality-theme .hero-official .hero-badges span{font-size:11px!important;line-height:1.45!important;letter-spacing:.045em!important;font-weight:750;color:#d9e1f0}
body.vitality-theme .partner-strip-copy span,
body.vitality-theme .hosting-card>span,
body.vitality-theme .chips,
body.vitality-theme .pill,
body.vitality-theme .meta{font-size:11px;line-height:1.45;color:#b5c7e0}
body.vitality-theme .partner-strip-copy a,
body.vitality-theme .hosting-card a{font-size:13px;color:#aadaff}
body.vitality-theme .hosting-card p{font-size:14px;line-height:1.75;color:var(--readable-copy)}
body.vitality-theme .coupon span,
body.vitality-theme .coupon small{font-size:11px;color:#d3b7f5}
body.vitality-theme .affiliate-note,
body.vitality-theme .hosting-card .affiliate-note{font-size:12px!important;line-height:1.65!important;color:#afbdd3!important;letter-spacing:0!important;text-transform:none}
body.vitality-theme .partnernote{font-size:12px;line-height:1.6;color:var(--readable-muted)}

/* Footer—previously a long stretch of gray 9–10px labels */
body.vitality-theme .footgrid p{font-size:13px;line-height:1.8;color:#b0bed3}
body.vitality-theme .footgrid>div:not(:first-child) a{font-size:13px;line-height:1.65;color:#bac9df}
body.vitality-theme .footgrid h4{font-size:19px}
body.vitality-theme .copy{font-size:12px;line-height:1.7;color:#a8b8d2}
body.vitality-theme .copy a{color:#b9c9e0}

/* Documentation: balanced hierarchy & legible instructional content */
body.vitality-theme .vdocs-hero p{font-size:15px;line-height:1.8;color:var(--readable-copy)}
body.vitality-theme .vdocs-index-heading p,
body.vitality-theme .vdocs-quick p,
body.vitality-theme .vdocs-help p,
body.vitality-theme .vdocs-guide-head p{font-size:14px;line-height:1.8;color:var(--readable-copy)}
body.vitality-theme .vdocs-card p{font-size:14px;line-height:1.78;color:var(--readable-copy)}
body.vitality-theme .vdocs-category{font-size:11px;line-height:1.5;color:#c3a0f1;letter-spacing:.095em}
body.vitality-theme .vdocs-breadcrumb{font-size:12px;color:#bbc8dc}
body.vitality-theme .vdocs-sidebar nav a{font-size:13px;line-height:1.5;color:#ccd8e8}
body.vitality-theme .vdocs-sidehelp p{font-size:13px;line-height:1.65;color:#b5c3d9}
body.vitality-theme .vdocs-toc strong{font-size:11px}
body.vitality-theme .vdocs-toc a{font-size:12px;color:#ccd7e9}
body.vitality-theme .vdocs-section p,
body.vitality-theme .vdocs-section li{font-size:15px;line-height:1.84;color:var(--readable-copy)}
body.vitality-theme .vdocs-code-top span{font-size:11px;color:#b9c6dc}
body.vitality-theme .vdocs-copy{font-size:12px}
body.vitality-theme .vdocs-code pre code{font-size:12px;line-height:1.8;color:#dbe9ff}
body.vitality-theme .vdocs-bottom p{font-size:14px;line-height:1.8;color:var(--readable-copy)}
body.vitality-theme .vdocs-search input{font-size:14px}

@media(max-width:700px){
  body.vitality-theme{font-size:14px}
  body.vitality-theme .links a{font-size:15px;line-height:1.45}
  body.vitality-theme .kicker{font-size:11px;letter-spacing:.11em}
  body.vitality-theme .hero-caption{font-size:10px;letter-spacing:.07em}
  body.vitality-theme .catalog-intro p,
  body.vitality-theme .v-hero-copy>p{font-size:14px}
  body.vitality-theme .filters{flex-wrap:wrap;gap:6px}
  body.vitality-theme .filter{font-size:12px;padding:10px 11px}
  body.vitality-theme .search input{font-size:14px}
  body.vitality-theme .release-body p,
  body.vitality-theme .upcoming-card .cardbody p{font-size:14px}
  body.vitality-theme .hosting-banner p{font-size:13px}
  body.vitality-theme .v-support>p{font-size:14px}
  body.vitality-theme .release-detail-grid p,
  body.vitality-theme .product-summary>p,
  body.vitality-theme .detailmain>p,
  body.vitality-theme .detail-features li{font-size:14px}
  body.vitality-theme .spec dt{font-size:11px}
  body.vitality-theme .spec dd{font-size:13px}
  body.vitality-theme .footgrid>div:not(:first-child) a{font-size:13px}
  body.vitality-theme .footgrid p{font-size:13px}
  body.vitality-theme .copy{font-size:12px}
  body.vitality-theme .vdocs-card p{font-size:14px}
  body.vitality-theme .vdocs-breadcrumb{font-size:12px}
  body.vitality-theme .vdocs-sidebar nav a{font-size:12px}
  body.vitality-theme .vdocs-toc a{font-size:12px}
  body.vitality-theme .vdocs-section p,
  body.vitality-theme .vdocs-section li{font-size:14px}
  body.vitality-theme .vdocs-code pre code{font-size:12px}
  body.vitality-theme .vdocs-hero p{font-size:14px}
  body.vitality-theme .vdocs-guide-head p{font-size:14px}
}
@media(max-width:380px){
  body.vitality-theme .vdocs-sidebar nav a{font-size:12px}
  body.vitality-theme .release-actions{gap:8px}
  body.vitality-theme .release-actions .btn{font-size:14px}
  body.vitality-theme .hero-caption{gap:8px;font-size:9px}
}

/* Product catalog consistency: remove intentional oversized first two cards. */
@media (min-width:1000px) {
  body.vitality-theme .release-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  body.vitality-theme .release-grid > .release-card {
    grid-column:auto!important;
  }
  body.vitality-theme .release-grid > .release-card:nth-child(-n+2) .release-body h3 {
    font-size:29px;
  }
}
@media (min-width:1000px) and (max-width:1149px) {
  body.vitality-theme .release-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* Direct card headings, without decorative 01 / 02 counters. */
body.vitality-theme .operator-grid article h3 { margin-top:4px; }
body.vitality-theme .support-card h2 { margin-top:4px; }
