
/* VeltrixHost R45 — VPS + homepage plans only */
.vh-r45-plan-section, .vh-r45-index-plans{
  background:#f7f8f9;
}
.vh-r45-plan-section .vh-section-head, .vh-r45-index-plans .vh-section-head{
  max-width:860px;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.vh-r45-plan-section .vh-section-head p, .vh-r45-index-plans .vh-section-head p{
  max-width:720px;
  margin-left:auto;
  margin-right:auto;
}
.vh-r45-plan-standard{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin:0 0 26px;
  padding:16px 18px;
  border:1px solid #e1e5e9;
  border-radius:12px;
  background:#fff;
}
.vh-r45-plan-standard>strong{
  flex:0 0 auto;
  color:#1b252f;
  font-size:13px;
}
.vh-r45-plan-standard>div{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.vh-r45-plan-standard span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 11px;
  border:1px solid #e2e6ea;
  border-radius:999px;
  background:#f8f9fa;
  color:#5f6b76;
  font-size:11.5px;
  font-weight:600;
}
.vh-r45-plan-standard span::before{
  content:"";
  width:5px;
  height:5px;
  margin-right:7px;
  border-radius:50%;
  background:var(--vh-orange);
}
.vh-r45-plan-grid{
  --vh-plan-width:calc((100% - 36px)/3);
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:18px;
  align-items:stretch;
}
/* VPS catalogs use four cards across; shared and WordPress remain three across. */
.vh-r45-plan-grid--vps{
  --vh-plan-width:calc((100% - 54px)/4);
}
.vh-r45-plan-grid>.vh-r45-plan-card{
  flex:0 1 var(--vh-plan-width);
  width:var(--vh-plan-width);
}
.vh-r45-plan-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  border:1px solid #dfe4e8;
  border-radius:14px;
  background:#fff;
  box-shadow:0 1px 2px rgba(15,23,42,.02);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.vh-r45-plan-card::before{
  content:"";
  display:block;
  height:3px;
  background:linear-gradient(90deg,var(--vh-orange),rgba(218,120,38,.22));
}
.vh-r45-plan-card__head{
  padding:22px 22px 18px;
}
.vh-r45-service{
  display:block;
  margin:0 0 9px;
  color:var(--vh-orange);
  font-family:var(--vh-font, "DM Sans", sans-serif);
  font-size:9.5px;
  font-weight:600;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.vh-r45-plan-card h3, .vh-r45-index-card h3{
  margin:0;
  color:#151e27;
  font-size:21px;
  line-height:1.22;
  letter-spacing:-.025em;
}
.vh-r45-price-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:24px;
  margin-top:18px;
  color:#7a858f;
  font-size:11px;
}
.vh-r45-price-meta del{
  color:#8d969f;
}
.vh-r45-save{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  background:#fff5ec;
  color:#DA7826;
  font-size:10.5px;
  font-weight:600;
  white-space:nowrap;
}
.vh-r45-price{
  display:flex;
  align-items:flex-end;
  gap:7px;
  margin-top:5px;
}
.vh-r45-price strong{
  color:#101820;
  font-size:34px;
  line-height:1;
  letter-spacing:-.045em;
}
.vh-r45-price span{
  padding-bottom:3px;
  color:#6b7681;
  font-size:12px;
}
.vh-r45-plan-card__head>small{
  display:block;
  margin-top:7px;
  color:#87919a;
  font-size:10.5px;
}
.vh-r45-stat-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid #e7eaed;
  border-bottom:1px solid #e7eaed;
  background:#f8f9fa;
}
.vh-r45-stat{
  min-width:0;
  padding:13px 16px;
  border-right:1px solid #e7eaed;
  border-bottom:1px solid #e7eaed;
}
.vh-r45-stat:nth-child(2n){
  border-right:0;
}
.vh-r45-stat:nth-last-child(-n/**/+2){
  border-bottom:0;
}
.vh-r45-stat span, .vh-r45-stat strong{
  display:block;
}
.vh-r45-stat span{
  color:#7a858f;
  font-size:9.5px;
  font-weight:600;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.vh-r45-stat strong{
  margin-top:4px;
  overflow-wrap:anywhere;
  color:#26313b;
  font-size:13.5px;
  line-height:1.3;
}
.vh-r45-included, .vh-r45-feature-block{
  flex:1 1 auto;
  padding:18px 22px 20px;
}
.vh-r45-included__label{
  display:block;
  margin-bottom:11px;
  color:#7a858f;
  font-size:10px;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.vh-r45-included ul, .vh-r45-feature-list{
  list-style:none;
  margin:0;
  padding:0;
}
.vh-r45-included li{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:8px 0;
  border-top:1px solid #eef0f2;
}
.vh-r45-included li:first-child{
  border-top:0;
  padding-top:0;
}
.vh-r45-included li span{
  color:#7a858f;
  font-size:11.5px;
}
.vh-r45-included li strong{
  color:#45515c;
  font-size:11.5px;
  text-align:right;
}
.vh-r45-feature-list{
  display:grid;
  gap:8px;
}
.vh-r45-feature-list li{
  position:relative;
  padding-left:18px;
  color:#5c6873;
  font-size:11.8px;
  line-height:1.45;
}
.vh-r45-feature-list li::before{
  content:"";
  position:absolute;
  left:1px;
  top:.48em;
  width:6px;
  height:3px;
  border-left:1.5px solid var(--vh-orange);
  border-bottom:1.5px solid var(--vh-orange);
  transform:rotate(-45deg);
}
.vh-r45-plan-btn, .vh-r45-index-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  margin:0 22px 22px;
  padding:0 16px;
  border:1px solid #11171d;
  border-radius:9px;
  background:#11171d;
  color:#fff!important;
  font-size:12.5px;
  font-weight:600;
  text-decoration:none!important;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.vh-r45-plan-btn:hover, .vh-r45-index-btn:hover{
  background:#232b32;
  border-color:#232b32;
  transform:translateY(-1px);
}

/* Homepage service-plan groups */
.vh-r45-index-groups{
  display:grid;
  gap:42px;
}
.vh-r45-index-group{
  padding-top:4px;
}
.vh-r45-index-group__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  margin-bottom:16px;
  padding-bottom:14px;
  border-bottom:1px solid #dde2e6;
}
.vh-r45-index-group__head span{
  display:block;
  margin-bottom:5px;
  color:var(--vh-orange);
  font-family:var(--vh-font, "DM Sans", sans-serif);
  font-size:9px;
  font-weight:600;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.vh-r45-index-group__head h3{
  margin:0;
  color:#151e27;
  font-size:22px;
  letter-spacing:-.025em;
}
.vh-r45-index-group__head p{
  max-width:470px;
  margin:0;
  color:#6a7580;
  font-size:12.5px;
  line-height:1.55;
  text-align:right;
}
.vh-r45-index-grid{
  display:grid;
  gap:16px;
  align-items:stretch;
}
.vh-r45-index-grid--2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.vh-r45-index-grid--4{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.vh-r45-index-grid--3{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.vh-r45-index-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:20px;
  border:1px solid #dfe4e8;
  border-radius:13px;
  background:#fff;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.vh-r45-index-card__top{
  min-height:137px;
}
.vh-r45-index-card h3{
  font-size:18px;
}
.vh-r45-index-price-label{
  margin-top:15px;
  color:#7a858f;
  font-size:10.5px;
}
.vh-r45-index-price{
  display:flex;
  align-items:flex-end;
  gap:6px;
  margin-top:3px;
}
.vh-r45-index-price strong{
  color:#101820;
  font-size:28px;
  line-height:1;
  letter-spacing:-.04em;
}
.vh-r45-index-price span{
  padding-bottom:2px;
  color:#75808a;
  font-size:10.5px;
}
.vh-r45-index-card>ul{
  flex:1 1 auto;
  list-style:none;
  display:grid;
  gap:8px;
  margin:16px 0 19px;
  padding:15px 0 0;
  border-top:1px solid #eceff1;
}
.vh-r45-index-card>ul li{
  position:relative;
  padding-left:17px;
  color:#5f6b76;
  font-size:11.5px;
  line-height:1.4;
}
.vh-r45-index-card>ul li::before{
  content:"";
  position:absolute;
  left:1px;
  top:.48em;
  width:6px;
  height:3px;
  border-left:1.5px solid var(--vh-orange);
  border-bottom:1.5px solid var(--vh-orange);
  transform:rotate(-45deg);
}
.vh-r45-index-btn{
  min-height:42px;
  margin:0;
  font-size:11.5px;
}

@media(max-width:1100px){
  .vh-r45-plan-grid{
    --vh-plan-width:calc((100% - 18px)/2);
  }
  .vh-r45-index-grid--4{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .vh-r45-plan-standard{
    align-items:flex-start;
    flex-direction:column;
    gap:12px;
  }
  .vh-r45-plan-standard>div{
    justify-content:flex-start;
  }
  .vh-r45-plan-grid{
    --vh-plan-width:100%;
  }
  .vh-r45-index-grid--2, .vh-r45-index-grid--3, .vh-r45-index-grid--4{
    grid-template-columns:1fr;
  }
  .vh-r45-index-group__head{
    display:block;
  }
  .vh-r45-index-group__head p{
    margin-top:8px;
    text-align:left;
  }
  .vh-r45-index-card__top{
    min-height:0;
  }
}


/* =========================================================
   VeltrixHost R46 — unify all VPS cards with mailing-VPS style
   Scoped ONLY to .vh-r45-plan-section; homepage/index cards unchanged.
   Orange is used only for feature check marks.
   ========================================================= */

/* Remove orange accents from VPS plan cards. */
.vh-r45-plan-section .vh-r45-plan-card::before{
  background:#dfe4e8!important;
}
.vh-r45-plan-section .vh-r45-service{
  color:#687480!important;
}
.vh-r45-plan-section .vh-r45-save{
  background:#f1f3f5!important;
  color:#55616d!important;
}
.vh-r45-plan-section .vh-r45-plan-standard span::before{
  background:#8a949e!important;
}

/* Deploy button sits directly below pricing, before resources/features. */
.vh-r45-plan-section .vh-r45-plan-card>.vh-r45-plan-btn{
  order:initial!important;
  margin:0 22px 20px!important;
  min-height:46px!important;
}

/* Mailing-plan style feature list for every VPS card. */
.vh-r45-plan-section .vh-r45-feature-block{
  flex:1 1 auto!important;
  padding:18px 22px 20px!important;
}
.vh-r45-plan-section .vh-r45-feature-list{
  list-style:none!important;
  display:grid!important;
  gap:9px!important;
  margin:0!important;
  padding:0!important;
}
.vh-r45-plan-section .vh-r45-feature-list li{
  position:relative!important;
  padding-left:19px!important;
  color:#5c6873!important;
  font-size:11.8px!important;
  line-height:1.48!important;
}
.vh-r45-plan-section .vh-r45-feature-list li::before{
  content:""!important;
  position:absolute!important;
  left:1px!important;
  top:.48em!important;
  width:6px!important;
  height:3px!important;
  border-left:1.5px solid var(--vh-orange)!important;
  border-bottom:1.5px solid var(--vh-orange)!important;
  transform:rotate(-45deg)!important;
}

/* Keep all other card details neutral. */
.vh-r45-plan-section .vh-r45-stat span, .vh-r45-plan-section .vh-r45-stat strong, .vh-r45-plan-section .vh-r45-price-meta, .vh-r45-plan-section .vh-r45-price span, .vh-r45-plan-section .vh-r45-plan-card__head>small, .vh-r45-plan-section .vh-r45-included__label{
  color:#687480!important;
}
.vh-r45-plan-section .vh-r45-price strong, .vh-r45-plan-section .vh-r45-plan-card h3{
  color:#151e27!important;
}

/* No orange hover on card text/buttons; only ticks remain orange. */



/* =========================================================
   VeltrixHost R47 — Shared Hosting uses VPS/Mailing plan style
   Orange remains only on feature check marks.
   ========================================================= */

.vh-r47-shared-plan-section .vh-r45-plan-card::before{
  background:#dfe4e8!important;
}
.vh-r47-shared-plan-section .vh-r45-service{
  color:#687480!important;
}
.vh-r47-shared-plan-section .vh-r45-plan-standard span::before{
  background:#8a949e!important;
}
.vh-r47-shared-plan-section .vh-r45-price{
  margin-top:18px!important;
}
.vh-r47-shared-plan-section .vh-r45-plan-card>.vh-r45-plan-btn{
  margin:0 22px 20px!important;
}
.vh-r47-shared-plan-section .vh-r45-feature-list li::before{
  border-left-color:var(--vh-orange)!important;
  border-bottom-color:var(--vh-orange)!important;
}
.vh-r47-shared-plan-section .vh-r45-plan-card h3, .vh-r47-shared-plan-section .vh-r45-price strong{
  color:#151e27!important;
}






/* Original pricing-card hover interaction, restored from V34. */
body.vh-page-body :is(.vh-r45-plan-card,.vh-r45-index-card,.vh-plan-card,.vh-vps-card,.vh-mail-plan,.vh-license-r45-card,.vh-lic-plan) {
 transition:transform .25s cubic-bezier(.2,.7,.2,1),border-color .25s ease,box-shadow .25s ease;
}
body.vh-page-body :is(.vh-r45-plan-card,.vh-r45-index-card,.vh-plan-card,.vh-vps-card,.vh-mail-plan,.vh-license-r45-card):hover {
 transform:translateY(-2px);border-color:#cfd6dc;box-shadow:0 12px 30px rgba(15,23,42,.07);
}
body.vh-page-body .vh-lic-plan:hover {
 transform:translateY(-2px);border-color:#ccced1;box-shadow:0 15px 34px rgba(22,33,43,.075);
}
@media(prefers-reduced-motion:reduce) {
 body.vh-page-body :is(.vh-r45-plan-card,.vh-r45-index-card,.vh-plan-card,.vh-vps-card,.vh-mail-plan,.vh-license-r45-card,.vh-lic-plan) {transition:none;transform:none;}
}
