/* NuvikHost | acabamento isolado da landing comercial.
   Não altera Central do Cliente, autenticação, valores nem checkout. */
body.premium-home {
  --landing-focus: #78dbff;
  --landing-hairline: rgba(181,216,248,.18);
  --landing-motion: cubic-bezier(.22,1,.36,1);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.premium-home .section-shell {
  width: min(1240px,calc(100% - 48px));
}
body.premium-home :is(.section-heading,.nh-vps-heading) h2 {
  font-size: clamp(30px,3.6vw,48px);
  line-height: 1.12;
  letter-spacing: -.038em;
  text-wrap: balance;
}
body.premium-home :is(.section-heading,.nh-vps-heading) p {
  max-width: 64ch;
  line-height: 1.7;
}
body.premium-home .section-heading.centered p,
body.premium-home .nh-vps-heading p { margin-inline: auto; }
body.premium-home .site-header {
  -webkit-backdrop-filter: saturate(140%) blur(20px);
  backdrop-filter: saturate(140%) blur(20px);
}
body.premium-home .primary-nav a {
  text-underline-offset: 5px;
  transition: color .18s ease;
}
body.premium-home :is(.btn,.nh-vps-button) {
  min-height: 48px;
  border-radius: 13px;
  transition: border-color .2s ease, background-color .2s ease,
    box-shadow .24s var(--landing-motion),transform .24s var(--landing-motion);
}
body.premium-home :is(.plan-card,.feature-grid article,.nh-vps-card) {
  border-radius: 23px;
  transition: border-color .22s ease,box-shadow .22s ease,
    transform .24s var(--landing-motion);
}
@media (hover:hover) and (pointer:fine) {
  body.premium-home :is(.plan-card,.nh-vps-card):hover {
    transform:translateY(-3px);
    box-shadow:0 22px 52px rgba(0,0,0,.2);
  }
}
body.premium-home :is(.plan-grid,.nh-vps-grid,.feature-grid) { align-items: stretch; }
body.premium-home .plan-card { min-width:0; }
body.premium-home .plan-card h3 {
  font-size: clamp(23px,2.2vw,29px);
  line-height:1.2;
  letter-spacing:-.028em;
}
body.premium-home .plan-card :is(p,li) { line-height:1.62; }
body.premium-home .domain-card {
  border-radius:24px;
  gap:clamp(24px,3.5vw,48px);
}
body.premium-home .domain-search :is(input,button) { min-height:48px; }
body.premium-home .nh-vps-section {
  padding-block:clamp(68px,6vw,98px);
}
body.premium-home .nh-vps-heading { max-width:800px; margin-bottom:clamp(30px,3.6vw,44px); }
body.premium-home .nh-vps-grid { gap:clamp(16px,2vw,24px); }
body.premium-home .nh-vps-card {
  padding:clamp(24px,2.5vw,32px);
  background:linear-gradient(150deg,#183552,#0c2037);
}
body.premium-home .nh-vps-card.is-featured {
  background:linear-gradient(150deg,#204367,#0e2948);
  border-color:rgba(93,179,249,.75);
}
body.premium-home .nh-vps-card h3 {
  font-size:clamp(23px,2.25vw,29px);
  line-height:1.19;
  margin:14px 0 14px;
}
body.premium-home .nh-vps-card p {
  min-height:0;
  margin-bottom:22px;
  line-height:1.6;
}
body.premium-home .nh-vps-card ul {
  gap:11px;
  margin-bottom:22px;
}
body.premium-home .nh-vps-card li {
  line-height:1.55;
  overflow-wrap:anywhere;
}
body.premium-home .nh-vps-card .nh-vps-annual-price {
  gap:6px;
  margin-bottom:14px;
  padding-top:20px;
}
body.premium-home .nh-vps-card .nh-vps-annual-price strong {
  font-variant-numeric: tabular-nums;
  font-size:clamp(27px,2.65vw,37px);
  line-height:1.18;
  letter-spacing:-.038em;
}
body.premium-home .nh-vps-card .nh-vps-annual-price span { line-height:1.6; }
body.premium-home .nh-vps-card .nh-vps-availability {
  margin-bottom:16px;
  line-height:1.55;
  color:#bad0e5;
}
body.premium-home .nh-vps-card .nh-vps-button {
  margin-top:auto;
  padding-inline:12px;
  font-size:14px;
  line-height:1.3;
}
body.premium-home :is(a,button,input,summary):focus-visible {
  outline:3px solid var(--landing-focus);
  outline-offset:4px;
}
body.premium-home :is(h2,h3,p,li,small) { overflow-wrap:break-word; }
body.premium-home :is(#dominios,#hospedagem,#revenda,#vps,#recursos,#faq,#suporte) {
  scroll-margin-top:96px;
}
@media(max-width:1024px){
  body.premium-home .section-shell { width: min(100% - 40px,1240px); }
  body.premium-home .nh-vps-card { padding:24px; }
  body.premium-home .nh-vps-card .nh-vps-annual-price strong { font-size:clamp(25px,3.1vw,33px); }
}
@media(max-width:768px){
  body.premium-home .section-shell { width:calc(100% - 32px); }
  body.premium-home :is(.section-heading,.nh-vps-heading) h2 { font-size:clamp(29px,6vw,39px); }
  body.premium-home .domain-card { border-radius:20px; }
  body.premium-home .nh-vps-grid { grid-template-columns:minmax(0,1fr); }
  body.premium-home .nh-vps-card { padding:26px; }
  body.premium-home .nh-vps-card p { margin-bottom:20px; }
}
@media(max-width:400px){
  body.premium-home .section-shell { width:calc(100% - 28px); }
  body.premium-home .nh-vps-section { padding-block:58px; }
  body.premium-home .nh-vps-card { padding:22px; border-radius:19px; }
  body.premium-home .nh-vps-card .nh-vps-annual-price strong { font-size:28px; }
  body.premium-home .nh-vps-card .nh-vps-button { width:100%; }
}
@media(prefers-reduced-motion:reduce){
  body.premium-home :is(.btn,.nh-vps-button,.plan-card,.feature-grid article,.nh-vps-card) {
    transition:none;
    animation:none;
  }
  body.premium-home :is(.plan-card,.nh-vps-card):hover { transform:none; }
}
