/* FANTÁSTICO HOST — camada isolada do site principal.
   IMPORTANTE: este arquivo é carregado apenas pela homepage pública.
   Não reutilizar na Central do Cliente nem no Painel Master. */

.dashboard-real-preview{
  position:relative;
  display:block;
  padding:0;
  background:#07172a;
  overflow:hidden;
  isolation:isolate;
}
.dashboard-real-preview picture,
.dashboard-real-preview img{
  display:block;
  width:100%;
}
.dashboard-real-preview img{
  height:auto;
  object-fit:cover;
  object-position:top center;
  transition:transform .35s ease,filter .35s ease;
}
.dashboard-real-preview::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 72%,rgba(2,10,20,.34));
}
.dashboard-real-preview:hover img{transform:scale(1.012);filter:brightness(1.035)}
.dashboard-preview-badge{
  position:absolute;
  left:16px;
  bottom:16px;
  z-index:2;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:rgba(5,17,31,.74);
  color:#eef8ff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  backdrop-filter:blur(10px);
}
.dashboard-real-preview:focus-visible{
  outline:3px solid rgba(100,221,255,.7);
  outline-offset:4px;
}
@media(max-width:980px){
  .dashboard-real-preview{transform:none}
}
@media(max-width:640px){
  .dashboard-real-preview{border-radius:18px}
  .dashboard-preview-badge{left:10px;bottom:10px;font-size:11px;padding:6px 9px}
}
@media(prefers-reduced-motion:reduce){
  .dashboard-real-preview img{transition:none}
  .dashboard-real-preview:hover img{transform:none}
}
/* B01 — Foundation / isolated homepage tokens */
:root{
  --hp-bg:#061221;--hp-bg-deep:#030b16;--hp-surface:#0a1b31;--hp-surface-2:#0e2745;
  --hp-line:rgba(127,203,255,.14);--hp-line-strong:rgba(93,216,255,.30);
  --hp-cyan:#28d0f5;--hp-blue:#2f78ff;--hp-violet:#7c4dff;
  --hp-text:#f7fbff;--hp-muted:#9eb0c6;--hp-radius:22px;
  --hp-shadow:0 24px 70px rgba(0,0,0,.26);--hp-shadow-soft:0 14px 38px rgba(0,0,0,.16);
}
html,body{max-width:100%;overflow-x:hidden}
body{background:linear-gradient(180deg,var(--hp-bg-deep),var(--hp-bg) 22%,#07172a 64%,var(--hp-bg-deep));color:var(--hp-text)}
main{position:relative;isolation:isolate}
.section-shell{position:relative}
/* B02 — Premium palette / section continuity */
.domain-section,.plans-section,.features-section,.control-section,.support-section,.faq-section,.final-cta{
  position:relative;
  isolation:isolate;
}
.domain-section{background:radial-gradient(circle at 12% 10%,rgba(40,208,245,.07),transparent 30%),linear-gradient(180deg,#07172a,#071426)}
.plans-section{background:radial-gradient(circle at 50% 0,rgba(47,120,255,.08),transparent 33%),linear-gradient(180deg,#071426,#08182b)}
.features-section{background:radial-gradient(circle at 86% 14%,rgba(124,77,255,.07),transparent 31%),#07172a}
.control-section{background:radial-gradient(circle at 72% 42%,rgba(47,120,255,.09),transparent 36%),linear-gradient(180deg,#07172a,#071426)}
.support-section{background:linear-gradient(180deg,#071426,#08182b)}
.faq-section{background:radial-gradient(circle at 18% 18%,rgba(40,208,245,.05),transparent 28%),linear-gradient(180deg,#071426,#061322)}
.final-cta{background:radial-gradient(circle at 50% 100%,rgba(47,120,255,.09),transparent 38%),#061322}
/* B03 — Typography system */
body{font-synthesis-weight:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
.domain-card h2,.section-heading h2,.control-copy h2,.support-card h2,.final-cta h2{
  letter-spacing:-.04em;line-height:1.06;text-wrap:balance;
}
.plan-card h3,.feature-grid h3,.faq-list summary{letter-spacing:-.018em}
.domain-card p,.section-heading p,.control-copy p,.support-card p,.final-cta p,.feature-grid p{
  line-height:1.72;
}
.eyebrow{letter-spacing:.15em}
/* B04 — Vertical rhythm / spacing */
.domain-section,.plans-section,.features-section,.control-section,.support-section,.faq-section,.final-cta{padding-block:clamp(64px,7.2vw,104px)}
.section-heading{margin-bottom:clamp(30px,4vw,48px)}
.centered{margin-bottom:clamp(32px,4vw,50px)}
.plan-card,.feature-grid article{padding:clamp(24px,2.4vw,34px)}
.support-card,.final-cta-box,.domain-card{padding:clamp(28px,3.4vw,46px)}
/* B05 — Containers / grids */
.section-shell,.header-shell{width:min(1240px,calc(100% - 40px))}
.control-grid{gap:clamp(38px,5vw,68px)}
.feature-grid,.plan-grid{gap:clamp(16px,1.8vw,24px)}
.footer-grid{gap:clamp(30px,4vw,52px)}
.domain-card{gap:clamp(30px,4vw,54px)}
/* B06 — Header desktop */
@media(min-width:981px){
  .site-header{background:rgba(4,14,27,.88);border-bottom-color:rgba(128,203,255,.12);box-shadow:0 8px 30px rgba(0,0,0,.12)}
  .header-shell{height:78px}
  .brand{width:198px}
  .primary-nav{gap:30px}
  .primary-nav a{position:relative;color:#dce8f5}
  .primary-nav>a:after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--hp-cyan),var(--hp-violet));transition:right .2s ease}
  .primary-nav>a:hover:after,.primary-nav>a:focus-visible:after{right:0}
  .header-actions .btn{min-height:44px}
}
/* B07 — Header mobile/tablet */
@media(max-width:980px){
  .site-header{background:rgba(4,14,27,.94)}
  .header-shell{height:72px}
  .primary-nav.open{top:68px;border-color:var(--hp-line-strong);background:rgba(7,23,42,.985);box-shadow:0 24px 60px rgba(0,0,0,.38);backdrop-filter:blur(20px)}
  .primary-nav.open>a{min-height:44px;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.06)}
  .mobile-nav-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
  .mobile-nav-actions a{min-height:44px;border-radius:11px;display:grid;place-items:center;border:1px solid var(--hp-line)}
  .mobile-plan-link{background:linear-gradient(135deg,var(--hp-cyan),var(--hp-blue) 55%,var(--hp-violet));font-weight:800}
}
/* B08 — Hero shell polish; banner geometry intentionally untouched */
.hero-carousel{border-bottom:1px solid rgba(120,190,255,.10);box-shadow:0 24px 70px rgba(0,0,0,.18)}
.hero-carousel .carousel-viewport{box-shadow:inset 0 -1px 0 rgba(255,255,255,.05)}
.hero-carousel .carousel-arrow{backdrop-filter:blur(10px)}
.hero-carousel .carousel-dots{backdrop-filter:blur(10px)}
/* B09 — Trust strip */
.trust-strip{background:linear-gradient(180deg,rgba(10,30,53,.98),rgba(7,22,40,.98));border-color:rgba(255,255,255,.08)}
.trust-grid{min-height:88px;align-items:center}
.trust-grid>div{min-height:46px;align-items:center}
.trust-grid b{color:#fff;font-weight:850;letter-spacing:-.03em}
.trust-grid span{color:#a9bad0;line-height:1.35}
/* B10 — Domain search */
.domain-card{overflow:hidden;border-color:var(--hp-line-strong);box-shadow:var(--hp-shadow);background:radial-gradient(circle at 88% 18%,rgba(124,77,255,.16),transparent 30%),radial-gradient(circle at 8% 88%,rgba(40,208,245,.10),transparent 30%),linear-gradient(135deg,#0c223e,#0a1830)}
.domain-card:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(104,224,255,.70),transparent)}
.domain-search{padding:14px;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:rgba(4,17,32,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.domain-search input{height:56px;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.065)}
.domain-search .btn{min-height:56px}
/* B11 — Hosting cards */
.plan-card{overflow:hidden;border-color:var(--hp-line);background:linear-gradient(180deg,rgba(16,43,76,.97),rgba(7,25,46,.97));box-shadow:var(--hp-shadow-soft);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.plan-card:after{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,rgba(104,224,255,.28),transparent)}
.plan-card.featured{border-color:rgba(45,206,250,.58);background:radial-gradient(circle at 85% 8%,rgba(124,77,255,.17),transparent 34%),linear-gradient(180deg,rgba(17,49,87,.99),rgba(8,29,52,.99));box-shadow:0 26px 72px rgba(31,121,255,.20)}
.plan-card>p{color:#adbed1}
/* B12 — Pricing and commercial CTA hierarchy */
.plan-price{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:10px}
.plan-price span{width:100%;font-size:12px;color:#8da2ba;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.plan-price strong{font-size:clamp(1.85rem,2.4vw,2.45rem);letter-spacing:-.04em}
.plan-price small{color:#a8b9cc;font-weight:700}
.plan-annual{margin:6px 0 18px;color:#8fa4bd;font-size:13px}
.plan-card .btn{min-height:48px}
.popular-badge{box-shadow:0 8px 24px rgba(54,92,255,.28)}
/* B17 — Final CTA */
.final-cta-box{position:relative;overflow:hidden;border-color:rgba(76,190,255,.25);box-shadow:0 24px 72px rgba(18,120,255,.15);background:radial-gradient(circle at 80% 0,rgba(124,77,255,.18),transparent 33%),radial-gradient(circle at 10% 100%,rgba(40,208,245,.11),transparent 35%),#0a1c34}
.final-cta-box:after{content:"";position:absolute;right:-55px;top:-70px;width:220px;height:220px;border-radius:50%;border:42px solid rgba(124,77,255,.09);pointer-events:none}
.final-cta-box>*{position:relative;z-index:1}
/* B18 — Footer */
.site-footer{background:linear-gradient(180deg,#04101d,#020914);border-top-color:rgba(255,255,255,.08)}
.footer-brand img{width:205px}
.footer-grid h4{font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:#e9f3ff}
.footer-grid a,.footer-grid span{line-height:1.55}
.footer-grid a{transition:color .18s ease,transform .18s ease}
.footer-grid a:hover{transform:translateX(2px)}
.footer-bottom{border-top-color:rgba(255,255,255,.07)}
/* B19 — Light, borders, ambient depth */
.domain-card,.plan-card,.feature-grid article,.dashboard-real-preview,.support-card,.final-cta-box{backdrop-filter:saturate(110%)}
.plan-card,.feature-grid article{border-color:rgba(118,191,255,.15)}
.plan-card.featured,.dashboard-real-preview{border-color:rgba(85,210,255,.32)}
/* B21 — Micro-interactions */
@media(hover:hover) and (pointer:fine){
  .plan-card:hover,.feature-grid article:hover{transform:translateY(-5px);border-color:rgba(79,207,255,.30);box-shadow:0 26px 72px rgba(0,0,0,.22)}
  .plan-card.featured:hover{transform:translateY(-8px)}
  .dashboard-real-preview:hover{box-shadow:0 34px 96px rgba(0,0,0,.38),0 0 92px rgba(31,119,255,.12)}
  .support-card:hover,.final-cta-box:hover{border-color:rgba(112,221,255,.32)}
}
/* B22 — Accessibility */
.primary-nav a:focus-visible,.btn:focus-visible,.nav-toggle:focus-visible,.faq-list summary:focus-visible,.domain-search input:focus-visible,.dashboard-real-preview:focus-visible{
  outline:3px solid rgba(100,221,255,.62);outline-offset:3px
}
.btn,.primary-nav a,.faq-list summary{touch-action:manipulation}
@media(max-width:980px){.primary-nav.open a,.mobile-nav-actions a{min-height:44px}}
@media(prefers-contrast:more){.plan-card,.feature-grid article,.domain-card,.dashboard-real-preview{border-color:rgba(180,230,255,.42)}}
/* B23 — Mobile 360/390/412 */
@media(max-width:640px){
  .section-shell,.header-shell{width:min(100% - 28px,1240px)}
  .domain-section,.plans-section,.support-section,.faq-section,.final-cta{padding-block:56px}
  .features-section{padding-top:56px;padding-bottom:28px}
  .control-section{padding-top:28px;padding-bottom:56px}
  .domain-card,.support-card,.final-cta-box{padding:24px}
  .domain-card h2,.section-heading h2,.control-copy h2,.support-card h2,.final-cta-box h2{font-size:clamp(28px,8vw,38px)}
  .trust-grid>div{padding-inline:10px}
  .plan-card,.feature-grid article{padding:24px}
  .plan-card h3{font-size:25px}
  .mini-list{grid-template-columns:1fr}
  .dashboard-real-preview{border-radius:18px}
  .dashboard-preview-badge{left:10px;bottom:10px;font-size:11px;padding:6px 9px}
  .support-card .btn-light{width:100%;min-width:0}
  .faq-list details{padding-inline:6px}
  .footer-grid{gap:28px}
}
/* B24 — Tablet */
@media(min-width:641px) and (max-width:1024px){
  .section-shell,.header-shell{width:min(100% - 36px,1240px)}
  .domain-section,.plans-section,.features-section,.control-section,.support-section,.faq-section,.final-cta{padding-block:74px}
  .feature-grid{grid-template-columns:1fr 1fr}
  .control-grid{grid-template-columns:1fr;max-width:860px}
  .dashboard-real-preview{max-width:860px;margin-inline:auto}
}
/* B25 — Desktop 1366/1440 */
@media(min-width:1025px) and (max-width:1500px){
  .section-shell,.header-shell{width:min(1180px,calc(100% - 48px))}
  .control-grid{grid-template-columns:.86fr 1.14fr}
  .plan-grid{gap:18px}
}
/* B26 — Wide desktop */
@media(min-width:1501px){
  .section-shell,.header-shell{width:min(1280px,calc(100% - 64px))}
  .header-shell{height:82px}
  .control-grid{grid-template-columns:.84fr 1.16fr}
  .feature-grid article{min-height:220px}
}
@media(min-width:1501px) and (max-height:760px){
  .domain-section,.plans-section,.features-section,.control-section,.support-section,.faq-section,.final-cta{padding-block:72px}
}
/* B27 — Performance-minded visual rules */
.plan-card,.feature-grid article,.dashboard-real-preview img,.faq-list summary span{will-change:auto}
@media(max-width:640px){
  .domain-card,.plan-card,.feature-grid article,.dashboard-real-preview,.support-card,.final-cta-box{backdrop-filter:none}
}
/* B28 — Semantic navigation / anchored sections */
#dominios,#hospedagem,#recursos,#suporte,#faq{scroll-margin-top:96px}
.section-heading h2,.domain-card h2,.control-copy h2,.support-card h2,.final-cta h2{max-width:22ch}
.centered h2{margin-inline:auto}
/* B29 — Regression safety */
img{height:auto}
.plan-card,.feature-grid article,.domain-card,.dashboard-real-preview,.support-card,.final-cta-box{max-width:100%}
.domain-search,.control-grid,.plan-grid,.feature-grid,.faq-grid,.footer-grid{min-width:0}
.domain-search>* ,.control-grid>* ,.plan-grid>* ,.feature-grid>* ,.faq-grid>* ,.footer-grid>*{min-width:0}
/* B30 — Final polish */
.eyebrow{color:#58d9fa;text-shadow:0 0 20px rgba(40,208,245,.12)}
.pricing-note{color:#7f92aa}
.control-copy p,.section-heading p,.domain-card p{color:#a7b8cb}
.site-footer a:hover{color:#5ee2ff}
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important}
  .plan-card,.feature-grid article,.dashboard-real-preview img,.faq-list summary span,.footer-grid a{transition:none!important}
  .plan-card:hover,.feature-grid article:hover,.dashboard-real-preview:hover img,.footer-grid a:hover{transform:none!important}
}
/* B32 — Recovery / Central do Cliente showcase */
.control-copy .mini-list{gap:10px}
.control-copy .mini-list span{
  display:flex;align-items:center;min-height:40px;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:11px;
  background:rgba(255,255,255,.028);
}
.dashboard-real-preview{
  border-radius:24px;
  border:1px solid rgba(77,184,255,.30);
  background:#07172a;
  box-shadow:0 30px 84px rgba(0,0,0,.32),0 0 72px rgba(31,119,255,.09);
}
.dashboard-real-preview img{object-fit:contain;object-position:top center}
.dashboard-preview-badge{
  background:rgba(5,17,31,.78);
  border-color:rgba(255,255,255,.18);
}
@media(max-width:640px){
  .dashboard-real-preview{border-radius:18px;box-shadow:0 20px 54px rgba(0,0,0,.28)}
}
/* B33 — Recovery / Suporte */
.support-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.15);
  background:
    radial-gradient(circle at 84% 10%,rgba(255,255,255,.12),transparent 28%),
    linear-gradient(115deg,#165fdc,#4f49df 58%,#6c3bd8);
  box-shadow:0 24px 64px rgba(37,116,255,.20);
}
.support-card::after{
  content:"";
  position:absolute;
  width:230px;height:230px;
  right:-88px;bottom:-132px;
  border-radius:50%;
  border:36px solid rgba(255,255,255,.05);
  pointer-events:none;
}
.support-card>*{position:relative;z-index:1}
.support-card .btn-light{min-width:210px}
@media(max-width:640px){
  .support-card .btn-light{min-width:0;width:100%}
}

/* Design System Premium — public components, P1–P6. */
.premium-home{
 --nh-text:#f7fbff;--nh-muted:#b5c5d9;--nh-border:#657d99;
 --nh-action:#1458c7;--nh-action-end:#5931b5;--nh-focus:#7ce8ff;
 --nh-radius:20px;--nh-control-radius:12px;--nh-gap:24px;
 --nh-card-border:rgba(126,175,221,.26);--nh-card-shadow:0 12px 32px rgba(0,0,0,.16);
}
.premium-home :is(.domain-card,.plan-card,.feature-grid article,.control-copy,.support-card,.faq-grid,.final-cta-box,.site-footer){
 color:var(--nh-text);
}
.premium-home :is(.domain-card p,.section-heading p,.control-copy p,.feature-grid p,.plan-card>p,.faq-list p,.final-cta-box p,.footer-brand p){
 color:var(--nh-muted);font-size:1rem;line-height:1.65;
}
.premium-home :is(.domain-card h2,.section-heading h2,.control-copy h2,.support-card h2,.final-cta-box h2){
 line-height:1.16;letter-spacing:-.03em;font-size:clamp(1.75rem,3.4vw,2.8rem);
}
.premium-home .eyebrow{font-weight:700;letter-spacing:.12em}
.premium-home :is(.domain-section,.plans-section,.features-section,.control-section,.support-section,.faq-section,.final-cta){
 padding-block:clamp(48px,6vw,80px);
}
.premium-home :is(.plan-card,.feature-grid article){border-radius:var(--nh-radius);padding:28px}
.premium-home .plan-card{transform:none;overflow:visible}
.premium-home .plan-card.featured{border-color:#57ccef}
.premium-home .plan-card h3{font-size:1.5rem;line-height:1.25;margin-block:16px 12px}
.premium-home .plan-card>p{min-height:0;margin-block:0 12px}
.premium-home .plan-tag{display:block;padding-right:108px;line-height:1.4}
.premium-home .popular-badge{background:#8be5ff;color:#072039;font-size:.625rem;box-shadow:none}
.premium-home .plan-price span{color:var(--nh-muted);opacity:1;font-size:.75rem}
.premium-home .plan-price strong{font-variant-numeric:tabular-nums;font-size:clamp(1.9rem,2.5vw,2.35rem)}
.premium-home .plan-price small{color:var(--nh-muted);opacity:1}
.premium-home .plan-annual{color:var(--nh-muted);opacity:1;font-size:.875rem}
.premium-home :is(.pricing-note,.domain-search small,.footer-bottom){color:var(--nh-muted);font-size:.875rem;line-height:1.6}
.premium-home .feature-grid article{min-height:0;background:linear-gradient(160deg,#102943,#0b1e34)}
.premium-home .feature-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;color:#78ddff;background:#173754;border-color:#4b809d}
.premium-home .feature-icon svg{display:block;width:24px;height:24px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
.premium-home .feature-grid h3{font-size:1.25rem;line-height:1.3;margin-block:20px 10px}
.premium-home :is(.btn,.mobile-plan-link){font-weight:700;min-height:48px}
.premium-home .btn-primary,.premium-home .mobile-plan-link{
 background:linear-gradient(120deg,var(--nh-action),var(--nh-action-end));color:#fff;border-color:transparent;
}
.premium-home :is(.btn-outline,.btn-ghost){border-color:var(--nh-border);color:var(--nh-text)}
.premium-home .domain-search input{border-color:var(--nh-border);color:var(--nh-text);background:#10253b}
.premium-home .domain-search input::placeholder{color:var(--nh-muted);opacity:1}
.premium-home :is(.btn,.nav-toggle,.primary-nav a,.domain-search input,.faq-list summary,.site-footer a):focus-visible{
 outline:3px solid var(--nh-focus);outline-offset:4px;
}
.premium-home .nav-toggle{width:44px;height:44px}
.premium-home .nav-toggle span{margin:5px auto}
.premium-home .support-card p{color:#fff}
.premium-home .faq-list summary{gap:16px;line-height:1.5}
.premium-home .faq-list p{padding-bottom:8px}
.premium-home .footer-grid :is(a,span){color:var(--nh-muted)}
.premium-home .trust-grid span{color:var(--nh-muted);font-size:.8125rem}
@media(min-width:981px){
 .premium-home .plan-grid{gap:var(--nh-gap)}
 .premium-home .primary-nav{gap:20px}
 .premium-home .header-shell{gap:20px}
}
@media(max-width:640px){
 .premium-home :is(.domain-card,.support-card,.final-cta-box){padding:24px 20px}
 .premium-home :is(.plan-card,.feature-grid article){padding:24px}
 .premium-home :is(.plan-grid,.feature-grid){gap:20px}
 .premium-home .trust-grid>div{overflow:visible}
 .premium-home .domain-card h2{overflow-wrap:normal}
 .premium-home .primary-nav.open{top:calc(100% - 1px)}
}
@media(hover:hover) and (pointer:fine){
 .premium-home .plan-card:hover,.premium-home .plan-card.featured:hover{transform:translateY(-3px)}
}
@media(prefers-reduced-motion:reduce){
 .premium-home .plan-card:hover,.premium-home .plan-card.featured:hover{transform:none}
}

/* Premium R2 — shared rhythm across public components. */
.premium-home :is(.domain-card,.plan-card,.feature-grid article,.final-cta-box){
 border-color:var(--nh-card-border);box-shadow:var(--nh-card-shadow);
}
.premium-home .plan-card.featured{border-color:#57ccef;box-shadow:0 14px 36px rgba(31,121,255,.16)}
.premium-home :is(.btn,.domain-search input){border-radius:var(--nh-control-radius)}
.premium-home .domain-search small.is-error{color:#ffbcc5}
.premium-home .domain-search small.is-success{color:#95efc7}
.premium-home .domain-search input:focus-visible{border-color:var(--nh-focus)}
.premium-home .plan-card li{font-size:.9375rem;line-height:1.55}
.premium-home .feature-grid article{display:flex;flex-direction:column}
.premium-home .feature-grid h3{font-weight:700}
.premium-home .feature-grid p{max-width:42ch}
.premium-home .plan-card .btn{margin-top:4px}
.premium-home .footer-grid a{display:inline-flex;align-items:center;min-height:32px}
@media(min-width:641px) and (max-width:980px){
 .premium-home .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .premium-home .plan-card{padding:24px}
 .premium-home .plan-card h3{font-size:1.375rem}
 .premium-home .plan-tag{padding-right:0}
 .premium-home .plan-card.featured .plan-tag{padding-top:30px}
}

/* v1.1 public refinement — touch targets and resilient text. */
.premium-home .footer-grid a{min-height:44px}
.premium-home :is(.plan-card,.feature-grid article,.faq-list,.final-cta-box){overflow-wrap:anywhere}
.premium-home :is(.nav-menu a,.footer-grid a,.faq-list summary):focus-visible{outline:3px solid var(--nh-focus);outline-offset:3px}

/* NuvikHost DS V2: opt-in only; no global overrides. */
.nh-ds-v2 {
 --nh-v2-space-1:4px;--nh-v2-space-2:8px;--nh-v2-space-3:12px;
 --nh-v2-space-4:16px;--nh-v2-space-6:24px;--nh-v2-space-8:32px;--nh-v2-space-12:48px;
 --nh-v2-radius-control:12px;--nh-v2-radius-card:20px;
 --nh-v2-control-height:44px;--nh-v2-body-size:16px;--nh-v2-body-line:1.5;
 --nh-v2-text:#203c5a;--nh-v2-muted:#455b74;--nh-v2-surface:#ffffff;
 --nh-v2-background:#f4f7fb;--nh-v2-border:#75869b;
 --nh-v2-action:#1458c7;--nh-v2-on-action:#ffffff;--nh-v2-focus:#1458c7;
 --nh-v2-error:#a51c30;--nh-v2-success:#176438;--nh-v2-warning:#795300;
}
.nh-ds-v2[data-nh-theme="dark"] {
 --nh-v2-text:#f7fbff;--nh-v2-muted:#b5c5d9;--nh-v2-surface:#102943;
 --nh-v2-background:#081b2f;--nh-v2-border:#657d99;--nh-v2-focus:#7ce8ff;
 --nh-v2-error:#ffbcc5;--nh-v2-success:#95efc7;--nh-v2-warning:#ffe0a3;
}

.nh-ds-v2 .nh-v2-button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--nh-v2-control-height);padding:12px 20px;border:1px solid var(--nh-v2-action);border-radius:var(--nh-v2-radius-control);background:var(--nh-v2-action);color:var(--nh-v2-on-action);font:inherit;font-weight:700}
.nh-ds-v2 .nh-v2-input{min-height:44px;width:100%;box-sizing:border-box;border:1px solid var(--nh-v2-border);border-radius:12px;padding:12px 16px;background:var(--nh-v2-surface);color:var(--nh-v2-text);font:inherit}
.nh-ds-v2 .nh-v2-card{padding:24px;border:1px solid var(--nh-v2-border);border-radius:20px;background:var(--nh-v2-surface);color:var(--nh-v2-text);overflow-wrap:anywhere}
.nh-ds-v2 .nh-v2-message{padding:16px;border:1px solid currentColor;border-radius:12px;line-height:1.5}
.nh-ds-v2 .nh-v2-message[data-state="error"]{color:var(--nh-v2-error)}
.nh-ds-v2 .nh-v2-message[data-state="success"]{color:var(--nh-v2-success)}
.nh-ds-v2 .nh-v2-message[data-state="warning"]{color:var(--nh-v2-warning)}
.nh-ds-v2 :is(.nh-v2-button,.nh-v2-input):focus-visible{outline:3px solid var(--nh-v2-focus);outline-offset:3px}
.premium-home.nh-ds-v2{--nh-text:var(--nh-v2-text);--nh-muted:var(--nh-v2-muted);--nh-focus:var(--nh-v2-focus);--nh-control-radius:var(--nh-v2-radius-control);--nh-radius:var(--nh-v2-radius-card)}
.premium-home.nh-ds-v2 :is(.btn,.domain-search input){min-height:var(--nh-v2-control-height)}
.premium-home.nh-ds-v2 :is(.primary-nav a,.footer-grid a,.faq-list summary):focus-visible{outline:3px solid var(--nh-v2-focus);outline-offset:3px}

/* Spacing refinement — compact section rhythm. */
.premium-home :is(.domain-section,.plans-section,.features-section,.control-section,.support-section,.faq-section,.final-cta){padding-block:clamp(28px,4vw,48px)}
.premium-home .section-heading{margin-bottom:24px}
.premium-home .features-section{padding-bottom:24px}
.premium-home .control-section{padding-top:24px}
@media(max-width:640px){
 .premium-home .section-heading{margin-bottom:20px}
 .premium-home .features-section{padding-bottom:20px}
 .premium-home .control-section{padding-top:20px}
}
