/* ============================================================
   hostinpoint — public brand system (creatives-inspired)
   Scoped under .hp-public so admin / dashboard stay untouched.
   ============================================================ */

.hp-public{
  --blue-600:#0052E0;
  --blue-500:#0066FF;
  --blue-400:#3D8BFF;
  --blue-soft:#E8F1FF;
  --blue-mist:#F3F8FF;
  --cyan-300:#7DD3FC;
  --cyan-400:#22D3EE;
  --mint-500:#16A34A;
  --mint-100:#DCFCE7;
  --amber-500:#F59E0B;
  --red-500:#EF4444;

  --navy-950:#06101F;
  --navy-900:#0A1931;
  --navy-800:#12213F;
  --navy-700:#1C2E52;

  --ink:#0A1931;
  --ink-soft:#4A5568;
  --ink-faint:#8B93A7;
  --paper:#FFFFFF;
  --surface:#FFFFFF;
  --line:#E8EEF7;
  --line-strong:#D5DEEC;

  --radius-sm:14px;
  --radius-md:20px;
  --radius-lg:28px;
  --radius-pill:999px;

  --shadow-sm:0 1px 2px rgba(10,25,49,0.04);
  --shadow-md:0 16px 40px -18px rgba(0,102,255,0.22);
  --shadow-lg:0 32px 64px -28px rgba(0,102,255,0.38);
  --shadow-blue:0 14px 36px -12px rgba(0,102,255,0.45);

  --font-display:'Poppins', 'Segoe UI', system-ui, sans-serif;
  --font-body:'Manrope', 'Segoe UI', system-ui, sans-serif;
  --font-mono:'IBM Plex Mono', 'SFMono-Regular', Consolas, monospace;

  font-family:var(--font-body);
  color:var(--ink);
  background:
    radial-gradient(900px 520px at 100% -5%, rgba(0,102,255,0.08), transparent 55%),
    radial-gradient(700px 480px at -5% 100%, rgba(125,211,252,0.12), transparent 55%),
    #FFFFFF;
  display:flex;
  flex-direction:column;
  min-height:100vh;
  -webkit-font-smoothing:antialiased;
}

.hp-public h1,.hp-public h2,.hp-public h3,.hp-public h4{
  font-family:var(--font-display);
  letter-spacing:-0.035em;
  color:var(--ink);
  line-height:1.1;
  font-weight:700;
  text-wrap:balance;
}
.hp-public h5,.hp-public h6{
  font-family:var(--font-body);
  font-weight:700;
  color:var(--ink);
}
.hp-public p{color:var(--ink-soft);line-height:1.6;}
.hp-public h3{font-size:clamp(1.7rem, 3vw, 2.3rem);margin-bottom:10px;}

.hp-public .hp-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--font-body);font-size:12px;letter-spacing:0.08em;text-transform:uppercase;
  color:var(--blue-500);font-weight:700;margin-bottom:14px;
}
.hp-public .hp-section-head{margin-bottom:40px;}
.hp-public .hp-section-head p{max-width:48ch;margin-inline:auto;margin-top:10px;font-size:16px;}

.hp-public .bg--light{background-color:var(--paper) !important;}
.hp-public .bg-white{background-color:var(--surface) !important;}
.hp-public .pt-60{padding-top:clamp(56px, 7vw, 100px);}
.hp-public .pb-60{padding-bottom:clamp(56px, 7vw, 100px);}
.hp-public .breadcrumb-bg{background-color:var(--surface);border-bottom:1px solid var(--line);font-size:13.5px;font-weight:600;}
.hp-public .breadcrumb-bg a{color:var(--blue-500);font-weight:700;}

.hp-public .btn{border-radius:var(--radius-pill);font-weight:700;}
.hp-public .btn-primary,
.hp-public .btn--base{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:var(--blue-500) !important;
  border:none !important;
  color:#fff !important;
  border-radius:var(--radius-pill) !important;
  padding:12px 22px !important;
  font-weight:700;
  box-shadow:0 8px 24px -10px rgba(0,102,255,0.7);
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
  text-decoration:none;
}
.hp-public .btn-primary:hover,
.hp-public .btn--base:hover{
  background:var(--blue-600) !important;
  box-shadow:0 12px 28px -10px rgba(0,102,255,0.8);
  transform:translateY(-1px);
  color:#fff !important;
}
.hp-public .btn-ghost,
.hp-public .btn--base-outline{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border:1.5px solid var(--line-strong) !important;
  background:rgba(255,255,255,0.7) !important;
  color:var(--ink) !important;
  border-radius:var(--radius-pill) !important;
  padding:10px 18px !important;
  font-weight:650;
  text-decoration:none;
  backdrop-filter:blur(8px);
}
.hp-public .btn-ghost:hover,
.hp-public .btn--base-outline:hover{
  border-color:var(--blue-500) !important;
  color:var(--blue-500) !important;
  background:#fff !important;
}
.hp-public .btn-sm,
.hp-public .btn--sm{padding:8px 16px !important;font-size:13.5px;}
.hp-public .btn-block{width:100%;}
.hp-public .btn.border{
  border-radius:var(--radius-pill) !important;
  border-color:var(--line-strong) !important;
  font-weight:650;color:var(--ink);
}

.hp-public .nav{
  position:sticky;top:0;z-index:999;
  background:rgba(255,255,255,0.82);
  backdrop-filter:saturate(160%) blur(16px);
  -webkit-backdrop-filter:saturate(160%) blur(16px);
  border-bottom:1px solid transparent;
}
.hp-public .nav-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding-block:12px;gap:12px 20px;}
.hp-public .logo{
  display:flex;align-items:center;gap:10px;
  font-family:var(--font-display);font-weight:700;font-size:1.2rem;
  color:var(--navy-900);flex-shrink:0;text-decoration:none;letter-spacing:-0.04em;
}
.hp-public .logo-word{text-transform:lowercase;}
.hp-public .logo-mark{
  width:34px;height:34px;border-radius:10px;
  background:transparent;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  box-shadow:0 10px 22px -10px rgba(0,102,255,0.65);
  overflow:hidden;
}
.hp-public .logo-mark svg{display:block;width:34px;height:34px;}
.hp-public .nav-links{display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px;margin:0;flex:1;padding-left:28px;}
.hp-public .nav-links > a{
  text-decoration:none;color:var(--ink-soft);
  padding:8px 14px;border-radius:var(--radius-pill);
  transition:color .15s ease, background .15s ease;white-space:nowrap;
}
.hp-public .nav-links > a:hover{color:var(--ink);background:rgba(17,24,39,0.04);}
.hp-public .nav-links > a.active{color:var(--ink);background:#fff;box-shadow:var(--shadow-sm);border:1px solid var(--line);}
.hp-public .nav-links > a.active::after{display:none;}
.hp-public .nav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}

.hp-public .nav-dropdown{position:relative;}
.hp-public .nav-dropdown > a{
  text-decoration:none;color:var(--ink-soft);font-weight:600;
  padding:8px 14px;border-radius:var(--radius-pill);display:inline-block;
}
.hp-public .nav-dropdown > a:hover,
.hp-public .nav-dropdown > a.active{color:var(--ink);background:#fff;box-shadow:var(--shadow-sm);}
.hp-public .nav-dropdown__panel{
  position:absolute;top:100%;left:0;margin-top:10px;min-width:220px;
  background:rgba(255,255,255,0.92);border:1px solid var(--line);border-radius:var(--radius-md);
  box-shadow:var(--shadow-md);padding:8px;opacity:0;visibility:hidden;transform:translateY(6px);
  transition:all .2s ease;z-index:20;backdrop-filter:blur(12px);
}
.hp-public .nav-dropdown:hover .nav-dropdown__panel{opacity:1;visibility:visible;transform:translateY(0);}
.hp-public .nav-dropdown__panel a{display:block;padding:10px 14px;border-radius:12px;color:var(--ink-soft);font-weight:600;font-size:14px;text-decoration:none;}
.hp-public .nav-dropdown__panel a:hover{background:var(--blue-mist);color:var(--blue-500);}

.hp-public .nav-toggle{
  display:none;background:#fff;border:1px solid var(--line-strong);border-radius:12px;
  width:42px;height:42px;align-items:center;justify-content:center;cursor:pointer;color:var(--ink);
  flex-shrink:0;
  transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.hp-public .nav-toggle:hover{
  border-color:color-mix(in srgb, var(--blue-500) 35%, var(--line-strong));
  box-shadow:var(--shadow-sm);
}

/* Mobile side drawer */
.hp-drawer-root{
  position:fixed;inset:0;z-index:1200;
  pointer-events:none;
}
.hp-drawer-root.is-open{pointer-events:auto;}
.hp-drawer-backdrop{
  position:absolute;inset:0;
  background:rgba(6,16,31,0.48);
  opacity:0;
  transition:opacity .28s ease;
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
}
.hp-drawer-root.is-open .hp-drawer-backdrop{opacity:1;}
.hp-drawer{
  position:absolute;top:0;right:0;bottom:0;
  width:min(360px, 88vw);
  display:flex;flex-direction:column;
  background:
    radial-gradient(420px 240px at 100% 0%, rgba(0,102,255,0.12), transparent 60%),
    #FFFFFF;
  border-left:1px solid var(--line);
  box-shadow:-24px 0 60px -28px rgba(10,25,49,0.45);
  transform:translateX(104%);
  transition:transform .3s cubic-bezier(.22,1,.36,1);
  overflow:hidden;
}
.hp-drawer-root.is-open .hp-drawer{transform:translateX(0);}
.hp-drawer__head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:16px 16px 14px;
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,0.88);
  backdrop-filter:blur(10px);
}
.hp-drawer__close{
  width:40px;height:40px;border-radius:12px;
  border:1px solid var(--line-strong);background:#fff;
  display:flex;align-items:center;justify-content:center;
  color:var(--ink);cursor:pointer;
}
.hp-drawer__close:hover{border-color:var(--blue-500);color:var(--blue-500);}
.hp-drawer__body{
  flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;
  padding:18px 14px 12px;
}
.hp-drawer__label{
  margin:14px 8px 8px;
  font-size:11px;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;
  color:var(--ink-faint);
}
.hp-drawer__label:first-child{margin-top:0;}
.hp-drawer__nav{
  display:grid;gap:6px;
}
.hp-drawer__link{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:13px 14px;
  border-radius:16px;
  text-decoration:none;
  color:var(--navy-900);
  font-weight:700;font-size:15px;
  border:1px solid transparent;
  transition:background .15s ease, border-color .15s ease, color .15s ease;
}
.hp-drawer__link svg{color:var(--ink-faint);flex-shrink:0;}
.hp-drawer__link:hover,
.hp-drawer__link.is-active{
  background:var(--blue-mist);
  border-color:color-mix(in srgb, var(--blue-500) 18%, var(--line));
  color:var(--blue-500);
}
.hp-drawer__link.is-active svg,
.hp-drawer__link:hover svg{color:var(--blue-500);}
.hp-drawer__nav--soft .hp-drawer__link{
  font-size:14px;font-weight:650;color:var(--ink-soft);
  padding:11px 14px;
  background:rgba(243,248,255,0.55);
}
.hp-drawer__foot{
  padding:14px 16px calc(16px + env(safe-area-inset-bottom, 0px));
  border-top:1px solid var(--line);
  background:rgba(255,255,255,0.94);
  display:grid;gap:10px;
}
html.hp-drawer-lock,
html.hp-drawer-lock body{
  overflow:hidden !important;
}

@media (max-width:1200px){
  .hp-public .nav-links{display:none;}
  .hp-public .nav-actions{display:none;}
  .hp-public .nav-toggle{display:flex;}
}
@media (min-width:1201px){
  .hp-drawer-root{display:none !important;}
}

.hp-public .add-cart{
  background:var(--blue-500) !important;
  border:none !important;
  border-radius:12px !important;
  width:42px !important;
  height:42px !important;
  padding:0 !important;
  position:relative;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  box-shadow:0 8px 18px -10px rgba(0,102,255,0.65);
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.hp-public .add-cart:hover{
  background:var(--blue-600) !important;
  transform:translateY(-1px);
  box-shadow:0 12px 22px -10px rgba(0,102,255,0.75);
  color:#fff !important;
}
.hp-public .add-cart i{
  position:relative;
  color:#fff;
  font-size:15px;
  line-height:1;
}
.hp-public .add-cart i span{
  position:absolute;top:-9px;right:-11px;
  background:#fff;color:var(--blue-500);
  font-size:10px;font-weight:800;min-width:16px;height:16px;padding:0 3px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;line-height:1;
  box-shadow:var(--shadow-sm);
}
.hp-public .language_switcher__caption .text,
.hp-public .language_switcher::after{color:var(--ink-soft) !important;}

.hp-public .footer{background:linear-gradient(180deg, #0A1931 0%, #06101F 100%);color:#A8B0C4;}
.hp-public .footer-top{display:grid;grid-template-columns:1.4fr repeat(3, 1fr);gap:36px;padding-block:72px 44px;}
.hp-public .footer-brand .logo{color:#fff;}
.hp-public .footer-brand .logo-mark{background:var(--blue-500);}
.hp-public .footer-brand p{margin-top:16px;color:#7E879C;font-size:14.5px;max-width:34ch;}
.hp-public .footer-col h4{font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:#7E879C;margin-bottom:18px;font-family:var(--font-body);font-weight:700;}
.hp-public .footer-col ul{display:grid;gap:12px;list-style:none;margin:0;padding:0;}
.hp-public .footer-col a{text-decoration:none;color:#C5CAD8;font-size:14.5px;}
.hp-public .footer-col a:hover{color:#fff;}
.hp-public .footer-bottom{border-top:1px solid rgba(255,255,255,0.08);padding-block:22px;font-size:13px;color:#6E778C;}
@media (max-width:860px){.hp-public .footer-top{grid-template-columns:1fr 1fr;}}
@media (max-width:540px){.hp-public .footer-top{grid-template-columns:1fr;}}

.hp-public .card,
.hp-public .custom--card{
  border-radius:var(--radius-lg) !important;
  border:1px solid var(--line) !important;
  box-shadow:var(--shadow-sm);
  background:var(--surface);
}
.hp-public .custom--card .card-header,
.hp-public .custom--card .card-footer{background:var(--surface);border-color:var(--line);}

.hp-public .contact-card{
  border-radius:var(--radius-lg);
  border:1px solid var(--line);
  background:var(--surface);
  padding:28px 24px;height:100%;
  transition:transform .2s ease, box-shadow .2s ease;
}
.hp-public .contact-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
.hp-public .contact-card__icon{
  width:48px;height:48px;border-radius:14px;
  background:var(--blue-soft);color:var(--blue-500);
  margin-bottom:14px;display:flex;align-items:center;justify-content:center;font-size:22px;
}
.hp-public .contact-card__icon::before{display:none;}
.hp-public .contact-card__title{font-family:var(--font-display);font-size:17px;letter-spacing:-0.02em;}
.hp-public .contact-card__desc{color:var(--ink-soft);}

.hp-public .service-card .card{
  border-radius:var(--radius-lg) !important;
  border:1px solid var(--line) !important;
  box-shadow:var(--shadow-sm);
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.hp-public .service-card .card:hover{
  transform:translateY(-5px);
  box-shadow:var(--shadow-md);
  border-color:color-mix(in srgb, var(--blue-500) 35%, var(--line)) !important;
}
.hp-public .service-card .card-header.service-title{
  background:var(--blue-mist) !important;
  color:var(--ink) !important;
  border:none;border-bottom:1px solid var(--line) !important;
  border-radius:var(--radius-lg) var(--radius-lg) 0 0 !important;
  font-family:var(--font-display);font-weight:700;letter-spacing:-0.02em;
  padding:18px 20px !important;
}

.hp-public .faq-item{
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:var(--surface);
  margin-bottom:10px;
}
.hp-public .faq-item__title .title{font-size:15px;font-weight:700;}
.hp-public .faq-item__title::before{color:var(--blue-500);}

.hp-public .announcements .announcement{
  background:var(--surface);
  border:1px solid var(--line) !important;
  border-radius:var(--radius-lg);
  padding:28px !important;
}
.hp-public .announcements .announcement article{
  background:transparent !important;border:none !important;padding:0 !important;margin:0 !important;color:var(--ink-soft);
}
.hp-public .announcements .announcement h3 a{color:var(--ink);}
.hp-public .announcements .announcement h3 a:hover{color:var(--blue-500);}

/* HERO — centered */
.hp-public .hp-hero{
  position:relative;
  overflow:hidden;
  padding:clamp(56px, 8vw, 100px) 0 clamp(48px, 7vw, 88px);
  text-align:center !important;
  background:
    radial-gradient(900px 520px at 50% -10%, rgba(0,102,255,0.14), transparent 62%),
    radial-gradient(700px 420px at 12% 90%, rgba(125,211,252,0.16), transparent 58%),
    radial-gradient(640px 400px at 90% 80%, rgba(0,102,255,0.08), transparent 58%),
    linear-gradient(180deg, #FFFFFF 0%, #F7FAFF 100%);
}
.hp-public .hp-hero-arcs{
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 50% -20%, transparent 28%, rgba(0,102,255,0.05) 29%, transparent 30%),
    radial-gradient(circle at 50% -20%, transparent 42%, rgba(0,102,255,0.04) 43%, transparent 44%),
    radial-gradient(circle at 50% -20%, transparent 56%, rgba(0,102,255,0.035) 57%, transparent 58%);
  opacity:0.9;
}
.hp-public .hp-hero .container{
  display:flex;
  justify-content:center;
}
.hp-public .hp-hero-inner{
  position:relative;z-index:1;
  width:100%;
  max-width:820px;
  margin-left:auto !important;
  margin-right:auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  text-align:center !important;
  animation:hpRise .75s cubic-bezier(.22,1,.36,1) both;
}
.hp-public .hp-hero-kicker{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-size:12px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--ink-faint);margin-bottom:18px;
}
.hp-public .hp-kicker-line{
  width:28px;height:2px;border-radius:2px;background:var(--blue-500);
}
.hp-public .hp-hero-title{
  font-size:clamp(2.5rem, 6vw, 4.2rem);
  margin:0 auto 16px !important;
  letter-spacing:-0.045em;
  line-height:1.05;
  max-width:14ch;
  text-align:center !important;
}
.hp-public .hp-hero-title__dark{
  display:block;color:var(--navy-900);
}
.hp-public .hp-hero-title__accent{
  display:block;color:var(--blue-500);
}
.hp-public .hp-text-accent{color:var(--blue-500);}
.hp-public .hp-hero-lede{
  font-size:clamp(1.05rem, 1.6vw, 1.22rem);
  color:var(--ink-soft);
  max-width:42ch;
  margin:0 auto 28px !important;
  line-height:1.55;
  text-align:center !important;
}
.hp-public .hp-hero-inner .hp-big-search,
.hp-public .hp-hero .hp-big-search{
  width:min(720px, 100%) !important;
  max-width:720px;
  margin-left:auto !important;
  margin-right:auto !important;
}
.hp-public .hp-hero-tags{
  display:flex;flex-wrap:wrap;gap:10px;
  margin-top:20px;justify-content:center !important;
  width:100%;
}
.hp-public .hp-tld-float{
  display:inline-flex;align-items:center;justify-content:center;
  padding:8px 14px;
  border-radius:14px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 10px 24px -14px rgba(0,102,255,0.35), 0 0 0 1px rgba(0,102,255,0.04);
  font-family:var(--font-display);font-weight:700;font-size:13px;
  color:var(--blue-500);letter-spacing:-0.02em;
  animation:hpFloat 4.5s ease-in-out infinite;
}
.hp-public .hp-tld-float:nth-child(2){animation-delay:.4s;}
.hp-public .hp-tld-float:nth-child(3){animation-delay:.8s;}
.hp-public .hp-tld-float:nth-child(4){animation-delay:1.2s;}
.hp-public .hp-support-pill{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  margin:20px auto 0 !important;
  padding:10px 16px;
  border-radius:var(--radius-pill);
  background:rgba(243,248,255,0.9);
  border:1px solid var(--line);
  color:var(--ink-soft);
  font-size:13.5px;font-weight:650;
}
.hp-public .hp-support-pill__icon{
  color:var(--blue-500);display:flex;
}
.hp-public .hp-hero-actions{
  display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center !important;
  margin:26px auto 0 !important;
  width:100%;
}
.hp-public .hp-cta-arrow span{transition:transform .2s ease;}
.hp-public .hp-cta-arrow:hover span{transform:translateX(3px);}

.hp-public .hp-mode-toggle{
  display:inline-flex;align-items:center;gap:2px;
  background:rgba(255,255,255,0.55);
  border:1px solid var(--line);
  border-radius:var(--radius-pill);
  padding:4px;
  margin-bottom:18px;
  backdrop-filter:blur(10px);
  box-shadow:var(--shadow-sm);
}
.hp-public .hp-mode-btn{
  appearance:none;border:none;background:transparent;
  font:inherit;font-weight:700;font-size:13.5px;
  color:var(--ink-soft);
  padding:9px 18px;border-radius:var(--radius-pill);
  text-decoration:none;cursor:pointer;
  transition:background .15s ease, color .15s ease, box-shadow .15s ease;
}
.hp-public .hp-mode-btn.is-active{
  background:var(--ink);
  color:#fff;
  box-shadow:var(--shadow-sm);
}
.hp-public .hp-mode-btn:not(.is-active):hover{color:var(--ink);}

.hp-public .hp-big-search{
  width:min(720px, 100%);
  display:flex;align-items:center;gap:8px;
  background:rgba(255,255,255,0.95);
  border:1px solid var(--line);
  border-radius:var(--radius-pill);
  padding:8px 8px 8px 20px;
  box-shadow:var(--shadow-lg), 0 0 0 1px rgba(0,102,255,0.05);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  transition:box-shadow .2s ease, transform .2s ease;
}
.hp-public .hp-big-search:focus-within{
  box-shadow:0 0 0 4px rgba(0,102,255,0.14), var(--shadow-lg);
  transform:translateY(-1px);
}
.hp-public .hp-big-search-icon{color:var(--ink-faint);flex-shrink:0;display:flex;}
.hp-public .hp-big-search-input{
  flex:1;min-width:0;border:none;outline:none;background:transparent;
  font-size:16.5px;font-weight:600;color:var(--ink);padding:12px 4px;
  box-shadow:none !important;
  text-align:left;
}
.hp-public .hp-big-search-input::placeholder{color:var(--ink-faint);font-weight:500;}
.hp-public .hp-big-search-btn{
  flex-shrink:0 !important;
  padding:14px 26px !important;
  border-radius:var(--radius-pill) !important;
  font-size:15px !important;
  box-shadow:var(--shadow-blue) !important;
}

.hp-public .hp-price-tag{
  display:inline-flex;align-items:center;gap:8px;
  padding:9px 16px;
  border-radius:var(--radius-pill);
  background:rgba(255,255,255,0.7);
  border:1px solid var(--line);
  color:var(--ink);
  font-size:13.5px;font-weight:700;
  text-decoration:none;
  backdrop-filter:blur(8px);
  box-shadow:var(--shadow-sm);
  transition:border-color .15s ease, transform .15s ease, background .15s ease;
}
.hp-public .hp-price-tag:hover{
  border-color:color-mix(in srgb, var(--blue-500) 40%, var(--line));
  background:#fff;
  transform:translateY(-1px);
  color:var(--ink);
}
.hp-public .hp-price-dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--blue-500);
  box-shadow:0 0 0 3px rgba(0,102,255,0.18);
}

/* Promo strip under hero */
.hp-public .hp-promo-strip{
  padding:clamp(28px, 5vw, 56px) 0 clamp(48px, 7vw, 80px);
  background:linear-gradient(180deg, #F7FAFF 0%, #FFFFFF 100%);
}
.hp-public .hp-promo-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}

/* Offer cards (replaces promo PNGs) */
.hp-public .hp-offer-card{
  position:relative;
  display:grid;
  grid-template-columns:1.15fr 0.85fr;
  gap:12px;
  align-items:center;
  min-height:280px;
  padding:28px 24px;
  border-radius:28px;
  overflow:hidden;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow-md);
  text-decoration:none;color:inherit;
  transition:transform .25s ease, box-shadow .25s ease;
}
.hp-public .hp-offer-card:hover{
  transform:translateY(-5px);
  box-shadow:var(--shadow-lg);
  color:inherit;
}
.hp-public .hp-offer-card__pattern{
  position:absolute;inset:0;pointer-events:none;z-index:0;
  opacity:0.9;
}
.hp-public .hp-offer-card--domain .hp-offer-card__pattern{
  background:
    radial-gradient(circle at 92% -8%, transparent 26%, rgba(0,102,255,0.07) 27%, transparent 28%),
    radial-gradient(circle at 92% -8%, transparent 40%, rgba(0,102,255,0.06) 41%, transparent 42%),
    radial-gradient(circle at 92% -8%, transparent 54%, rgba(0,102,255,0.05) 55%, transparent 56%),
    radial-gradient(420px 260px at 100% 0%, rgba(0,102,255,0.08), transparent 60%),
    linear-gradient(145deg, #FFFFFF 40%, #F3F8FF 100%);
}
.hp-public .hp-offer-card--hosting .hp-offer-card__pattern{
  background:
    radial-gradient(ellipse 80% 70% at 100% 20%, rgba(0,102,255,0.16), transparent 55%),
    radial-gradient(circle at 88% 0%, #0A1931 0 28%, transparent 29%),
    repeating-linear-gradient(-18deg, transparent 0 14px, rgba(0,102,255,0.035) 14px 15px),
    linear-gradient(160deg, #FFFFFF 35%, #EEF5FF 100%);
}
.hp-public .hp-offer-card__body,
.hp-public .hp-offer-card__art{position:relative;z-index:1;}
.hp-public .hp-offer-card__body{min-width:0;}
.hp-public .hp-offer-card__label{
  display:block;
  font-size:11px;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;
  color:var(--blue-500);margin-bottom:8px;
}
.hp-public .hp-offer-card__title{
  display:block;
  font-family:var(--font-display);
  font-size:clamp(1.25rem, 2.2vw, 1.7rem);
  font-weight:800;letter-spacing:-0.03em;
  color:var(--navy-900);line-height:1.15;margin-bottom:12px;
}
.hp-public .hp-offer-card__title span{
  display:block;color:var(--blue-500);
}
.hp-public .hp-offer-card__pill{
  display:inline-flex;align-items:center;
  margin-bottom:12px;
  padding:6px 12px;
  border-radius:var(--radius-pill);
  background:var(--blue-500);color:#fff;
  font-size:11px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;
  box-shadow:var(--shadow-blue);
}
.hp-public .hp-offer-card__text{
  font-size:14px;margin:0 0 16px;max-width:34ch;color:var(--ink-soft);
}
.hp-public .hp-offer-card__support{
  display:inline-flex;align-items:center;gap:8px;
  margin-bottom:16px;
  padding:8px 12px;
  border-radius:var(--radius-pill);
  background:rgba(243,248,255,0.95);
  border:1px solid var(--line);
  color:var(--ink-soft);
  font-size:12.5px;font-weight:650;
}
.hp-public .hp-offer-card__support svg{color:var(--blue-500);flex-shrink:0;}
.hp-public .hp-offer-card__cta{
  display:inline-flex;align-items:center;gap:8px;
  padding:11px 18px;
  border-radius:var(--radius-pill);
  background:var(--navy-900);color:#fff;
  font-size:13.5px;font-weight:700;
  box-shadow:0 12px 28px -14px rgba(10,25,49,0.55);
  transition:transform .2s ease, background .2s ease;
}
.hp-public .hp-offer-card:hover .hp-offer-card__cta{transform:translateX(2px);}
.hp-public .hp-offer-card__cta span{transition:transform .2s ease;}
.hp-public .hp-offer-card:hover .hp-offer-card__cta span{transform:translateX(3px);}
.hp-public .hp-offer-card__cta--cyan{
  background:linear-gradient(90deg, #22D3EE, #06B6D4);
  color:var(--navy-900);
  box-shadow:0 12px 28px -12px rgba(6,182,212,0.55);
}

.hp-public .hp-offer-card__art{
  position:relative;
  min-height:180px;
  display:flex;align-items:center;justify-content:center;
}
.hp-public .hp-offer-servers{
  display:grid;gap:8px;width:78%;
  transform:rotate(-6deg);
}
.hp-public .hp-offer-servers span{
  display:block;height:28px;border-radius:8px;
  background:linear-gradient(90deg, #1D4ED8, #3B82F6 55%, #60A5FA);
  box-shadow:0 10px 20px -12px rgba(0,102,255,0.7), inset 0 1px 0 rgba(255,255,255,0.35);
  position:relative;
}
.hp-public .hp-offer-servers span::after{
  content:"";position:absolute;right:12px;top:50%;transform:translateY(-50%);
  width:7px;height:7px;border-radius:50%;
  background:#7DD3FC;box-shadow:0 0 0 3px rgba(125,211,252,0.25), 18px 0 0 #22D3EE, 36px 0 0 #38BDF8;
}
.hp-public .hp-offer-tld{
  position:absolute;right:6%;bottom:18%;
  padding:14px 16px;border-radius:16px;
  background:#fff;border:1px solid var(--line);
  box-shadow:0 18px 36px -18px rgba(0,102,255,0.45);
  font-family:var(--font-display);font-weight:800;font-size:1.15rem;
  color:var(--blue-500);letter-spacing:-0.03em;
  transform:rotate(8deg);
}
.hp-public .hp-offer-cloud{
  position:absolute;inset:18% 8% 28% 12%;
  border-radius:48% 52% 46% 54% / 56% 44% 58% 42%;
  background:
    radial-gradient(circle at 30% 35%, #5BA0FF, transparent 50%),
    radial-gradient(circle at 70% 45%, #0066FF, #0039B8 70%);
  box-shadow:0 28px 50px -24px rgba(0,102,255,0.55);
  opacity:0.92;
}
.hp-public .hp-offer-search{
  position:relative;z-index:2;
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  width:92%;
  padding:10px 10px 10px 16px;
  border-radius:var(--radius-pill);
  background:rgba(255,255,255,0.95);
  border:1px solid var(--line);
  box-shadow:0 16px 32px -18px rgba(10,25,49,0.35);
  font-size:12.5px;font-weight:650;color:var(--ink-faint);
}
.hp-public .hp-offer-search i{
  width:32px;height:32px;border-radius:50%;flex-shrink:0;
  background:var(--blue-500);
  box-shadow:var(--shadow-blue);
  position:relative;
}
.hp-public .hp-offer-search i::before{
  content:"";position:absolute;inset:0;margin:auto;
  width:12px;height:12px;border:2px solid #fff;border-radius:50%;
  box-sizing:border-box;
  transform:translate(-1px,-1px);
}
.hp-public .hp-offer-search i::after{
  content:"";position:absolute;width:6px;height:2px;background:#fff;border-radius:2px;
  right:8px;bottom:9px;transform:rotate(45deg);
}
.hp-public .hp-offer-chip{
  position:absolute;z-index:2;
  padding:7px 10px;border-radius:12px;
  background:#fff;border:1px solid var(--line);
  box-shadow:0 12px 24px -14px rgba(0,102,255,0.4);
  font-family:var(--font-display);font-weight:800;font-size:11px;
  color:var(--blue-500);
}
.hp-public .hp-offer-chip--1{right:4%;top:22%;}
.hp-public .hp-offer-chip--2{left:2%;top:48%;}
.hp-public .hp-offer-chip--3{right:10%;bottom:12%;}

.hp-public .hp-promo-shot{
  display:block;
  border-radius:28px;
  overflow:hidden;
  border:1px solid var(--line);
  background:#fff;
  box-shadow:var(--shadow-md);
  transition:transform .25s ease, box-shadow .25s ease;
}
.hp-public .hp-promo-shot:hover{
  transform:translateY(-5px);
  box-shadow:var(--shadow-lg);
}
.hp-public .hp-promo-shot img{
  display:block;width:100%;height:auto;
  transition:transform .4s ease;
}
.hp-public .hp-promo-shot:hover img{transform:scale(1.02);}
.hp-public .hp-promo-shot--wide{
  margin:clamp(36px, 5vw, 64px) 0 12px;
  max-width:980px;margin-inline:auto;
}
.hp-public .hp-services-intro{padding-top:28px;margin-bottom:8px;}
.hp-public .hp-services-wrap{padding-bottom:8px;}

@media (max-width:991px){
  .hp-public .hp-offer-card{
    grid-template-columns:1fr;
    min-height:0;
    padding:22px 18px;
  }
  .hp-public .hp-offer-card__body{order:1;}
  .hp-public .hp-offer-card__art{order:2;min-height:120px;margin-top:8px;}
}

/* Business / services block */
.hp-public .hp-business-hero{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(24px, 5vw, 48px);
  align-items:center;
  padding:clamp(40px, 6vw, 72px) 0 36px;
}
.hp-public .hp-business-copy h3{
  font-size:clamp(1.9rem, 3.4vw, 2.8rem);
  letter-spacing:-0.04em;
  max-width:14ch;
  margin-bottom:14px;
}
.hp-public .hp-business-copy p{
  max-width:40ch;margin-bottom:22px;font-size:16px;
}
.hp-public .hp-business-visual{position:relative;}
.hp-public .hp-business-shot{
  width:100%;height:auto;border-radius:28px;
  box-shadow:var(--shadow-lg);
  object-fit:cover;max-height:520px;
}
.hp-public .hp-category-row{padding-bottom:clamp(48px, 7vw, 80px);}

@keyframes hpRise{
  from{opacity:0;transform:translateY(22px);}
  to{opacity:1;transform:translateY(0);}
}
@keyframes hpFloat{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-6px);}
}
@keyframes hpPulse{
  0%,100%{transform:scale(1);opacity:0.22;}
  50%{transform:scale(1.06);opacity:0.3;}
}
@media (max-width:991px){
  .hp-public .hp-promo-grid,
  .hp-public .hp-business-hero{grid-template-columns:1fr;}
  .hp-public .hp-hero-title{max-width:none;}
  .hp-public .hp-promo-grid{gap:16px;}
}
@media (max-width:640px){
  .hp-public .hp-big-search{padding:8px;flex-wrap:wrap;}
  .hp-public .hp-big-search-icon{padding-left:10px;}
  .hp-public .hp-big-search-btn{width:100%;}
  .hp-public .hp-hero-actions .btn{width:100%;justify-content:center;}
}
@media (prefers-reduced-motion: reduce){
  .hp-public .hp-hero-inner,
  .hp-public .hp-hero-visual,
  .hp-public .hp-tld-float,
  .hp-public .hp-scene-cloud,
  .hp-public .hp-scene-browser,
  .hp-public .hp-scene-chip{animation:none;}
}

.hp-public .domain-search-form,
.hp-public .hp-search-card{
  max-width:680px;margin-inline:auto;
}
.hp-public .hp-domain-page .hp-big-search{margin-inline:auto;}
.hp-public .domain-row{
  display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  border:1px solid var(--line);border-radius:var(--radius-md);
  background:var(--surface) !important;margin-bottom:8px;padding:14px 16px;
  font-weight:700;font-size:14.5px;
}
.hp-public .domain-row .text-end{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}

.hp-public .form-group label{font-weight:700;font-size:14px;color:var(--ink);}
.hp-public .form--control{
  border-radius:var(--radius-sm);
  border:1.5px solid var(--line-strong);
  background:var(--surface);
}
.hp-public .form--control:focus{
  border-color:var(--blue-500);
  box-shadow:0 0 0 4px rgba(0,102,255,0.12) !important;
}

.hp-public .service-category{background:var(--paper) !important;}
.hp-public .collapable-sidebar nav.sidebar{
  border-radius:var(--radius-lg) !important;
  border:1px solid var(--line) !important;
  overflow:hidden;box-shadow:var(--shadow-sm);background:var(--surface);
}
.hp-public .collapable-sidebar nav.sidebar > span{
  background:var(--blue-500) !important;
  color:#fff;font-family:var(--font-display);font-weight:700;padding:14px !important;
}
.hp-public .list-group-item{border-color:var(--line) !important;font-weight:600;font-size:14.5px;}
.hp-public .list-group-item:hover{background:var(--blue-mist);color:var(--blue-500);}

.hp-public .subscribe-btn{
  background:var(--blue-500) !important;
  border-radius:var(--radius-pill);box-shadow:var(--shadow-md);
}
.hp-public .subscribe-box{
  border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-lg);
}
.hp-public .account-section{
  padding-block:64px;min-height:70vh;
  background:radial-gradient(600px 360px at 50% -10%, rgba(0,102,255,0.12), transparent 70%), var(--paper);
}
.hp-public .account-form{
  border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-md);background:var(--surface);
}
.hp-public .account-section .logo{justify-content:center;color:var(--ink);}
.hp-public .account-section .logo-mark{margin-inline:auto;}

.hp-public .policy-content{color:var(--ink-soft);font-size:15.5px;line-height:1.75;}
.hp-public .policy-content a{color:var(--blue-500);font-weight:650;}

.hp-public .pagination .page-item a,
.hp-public .pagination .page-item span{border-radius:var(--radius-sm) !important;border-color:var(--line-strong);}
.hp-public .pagination .page-item.active span,
.hp-public .pagination .page-item.active a{background:var(--blue-500) !important;border-color:var(--blue-500) !important;}

.hp-public .hp-services-wrap{
  background:var(--surface);
  border-top:1px solid var(--line);
  padding-top:clamp(40px, 6vw, 64px);
}

/* ============ STORE SIDEBAR — Actions + Categories ============ */
.hp-public .hp-side-panel{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-sm);
  overflow:hidden;
  margin-bottom:16px;
}
.hp-public .hp-side-panel__head{
  padding:18px 18px 14px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg, var(--blue-mist), var(--surface));
}
.hp-public .hp-side-panel__title{
  display:block;
  font-family:var(--font-display);
  font-size:15px;
  font-weight:700;
  letter-spacing:-0.02em;
  color:var(--ink);
}
.hp-public .hp-side-panel__sub{
  display:block;
  margin-top:4px;
  font-size:12.5px;
  font-weight:600;
  color:var(--ink-faint);
}
.hp-public .hp-side-nav{
  display:flex;
  flex-direction:column;
  padding:10px;
  gap:6px;
}
.hp-public .hp-side-empty{
  margin:0;
  padding:12px;
  font-size:13.5px;
  color:var(--ink-faint);
}

.hp-public .hp-side-link{
  display:flex;
  align-items:center;
  gap:10px;
  padding:11px 12px;
  border-radius:14px;
  text-decoration:none;
  color:var(--ink-soft);
  font-weight:650;
  font-size:14px;
  border:1px solid transparent;
  transition:background .15s ease, color .15s ease, border-color .15s ease;
}
.hp-public .hp-side-link:hover{
  background:var(--blue-mist);
  color:var(--blue-500);
}
.hp-public .hp-side-link.is-active{
  background:var(--blue-soft);
  color:var(--blue-500);
  border-color:color-mix(in srgb, var(--blue-500) 22%, var(--line));
}
.hp-public .hp-side-link__icon{
  width:28px;height:28px;border-radius:9px;
  display:flex;align-items:center;justify-content:center;
  background:var(--paper);color:inherit;flex-shrink:0;
}
.hp-public .hp-side-link.is-active .hp-side-link__icon{
  background:rgba(0,102,255,0.15);
}

/* Actions cards */
.hp-public .hp-side-panel--actions .hp-side-panel__head{
  background:linear-gradient(135deg, rgba(0,102,255,0.12), rgba(125,211,252,0.1));
}
.hp-public .hp-side-action{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:12px;
  padding:14px 12px;
  border-radius:16px;
  text-decoration:none;
  color:inherit;
  border:1px solid var(--line);
  background:var(--paper);
  transition:border-color .15s ease, background .15s ease, transform .15s ease, box-shadow .15s ease;
}
.hp-public .hp-side-action:hover{
  border-color:color-mix(in srgb, var(--blue-500) 35%, var(--line));
  background:#fff;
  transform:translateY(-1px);
  box-shadow:var(--shadow-sm);
  color:inherit;
}
.hp-public .hp-side-action.is-active{
  border-color:color-mix(in srgb, var(--blue-500) 45%, var(--line));
  background:linear-gradient(180deg, #fff, var(--blue-mist));
  box-shadow:0 0 0 3px rgba(0,102,255,0.1);
}
.hp-public .hp-side-action__icon{
  width:40px;height:40px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  background:var(--blue-soft);color:var(--blue-500);flex-shrink:0;
}
.hp-public .hp-side-action.is-active .hp-side-action__icon{
  background:var(--blue-500);color:#fff;
}
.hp-public .hp-side-action__body{display:grid;gap:2px;min-width:0;}
.hp-public .hp-side-action__title{
  font-weight:700;font-size:14px;color:var(--ink);letter-spacing:-0.01em;
}
.hp-public .hp-side-action__desc{
  font-size:12.5px;color:var(--ink-faint);font-weight:560;line-height:1.35;
}
.hp-public .hp-side-action__chev{color:var(--ink-faint);display:flex;}
.hp-public .hp-side-action.is-active .hp-side-action__chev{color:var(--blue-500);}

.hp-public .hp-sidebar-open{
  display:inline-flex;align-items:center;gap:8px;
  border:1px solid var(--line-strong);
  background:var(--surface);
  border-radius:var(--radius-pill);
  padding:10px 16px;
  font-weight:700;font-size:14px;color:var(--ink);
}

/* Legacy list-group fallbacks inside sidebar */
.hp-public .collapable-sidebar nav.sidebar{
  border-radius:var(--radius-lg) !important;
  border:1px solid var(--line) !important;
  overflow:hidden;box-shadow:var(--shadow-sm);background:var(--surface);
}
.hp-public .collapable-sidebar nav.sidebar > span{
  background:var(--blue-500) !important;
  color:#fff;font-family:var(--font-display);font-weight:700;padding:14px !important;
}

/* ============ DOMAIN REGISTER PAGE ============ */
.hp-public .hp-domain-page{padding-bottom:24px;}
.hp-public .hp-domain-head{text-align:center;margin-bottom:22px;}
.hp-public .hp-domain-head .hp-eyebrow{justify-content:center;}
.hp-public .hp-domain-head h3{margin-bottom:8px;}
.hp-public .hp-domain-head p{max-width:48ch;margin-inline:auto;}
.hp-public .hp-domain-search-wrap{
  display:flex;justify-content:center;margin-bottom:28px;
}
.hp-public .hp-domain-search-wrap .hp-big-search{width:min(680px, 100%);}

.hp-public .hp-domain-alert{
  border-radius:var(--radius-md);
  padding:14px 18px;
  margin-bottom:18px;
  font-weight:650;font-size:14.5px;text-align:center;
}
.hp-public .hp-domain-alert--warn{
  background:#FFF7ED;border:1px solid #FED7AA;color:#9A3412;
}

.hp-public .hp-domain-primary{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding:20px 22px;
  border-radius:var(--radius-md);
  border:1.5px solid var(--line);
  background:var(--surface);
  margin-bottom:22px;
  box-shadow:var(--shadow-sm);
}
.hp-public .hp-domain-primary.is-available{
  border-color:var(--mint-500);
  background:color-mix(in srgb, var(--mint-500) 6%, var(--surface));
}
.hp-public .hp-domain-primary.is-taken{
  border-color:var(--line-strong);
}
.hp-public .hp-domain-primary__left{display:flex;align-items:center;gap:14px;min-width:0;}
.hp-public .hp-domain-primary__icon{
  width:42px;height:42px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.hp-public .hp-domain-primary.is-available .hp-domain-primary__icon{
  background:var(--mint-100);color:var(--mint-500);
}
.hp-public .hp-domain-primary.is-taken .hp-domain-primary__icon{
  background:var(--paper);color:var(--ink-faint);
}
.hp-public .hp-domain-primary__name{
  font-family:var(--font-mono);font-weight:700;font-size:17px;word-break:break-all;color:var(--ink);
}
.hp-public .hp-domain-primary__status{
  font-size:13px;font-weight:700;margin-top:2px;
}
.hp-public .hp-domain-primary.is-available .hp-domain-primary__status{color:var(--mint-500);}
.hp-public .hp-domain-primary.is-taken .hp-domain-primary__status{color:var(--ink-faint);}
.hp-public .hp-domain-primary__right{
  display:flex;align-items:center;gap:14px;flex-shrink:0;flex-wrap:wrap;
}
.hp-public .hp-domain-price{
  font-family:var(--font-mono);font-weight:700;font-size:15px;color:var(--ink);
}

.hp-public .hp-domain-alts__label{
  font-size:12px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;
  color:var(--ink-faint);margin:0 4px 10px;
}
.hp-public .domain-row{
  display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  border:1px solid var(--line);border-radius:var(--radius-md);
  background:var(--surface) !important;margin-bottom:8px;padding:14px 16px;
}
.hp-public .domain-row__name{
  display:flex;align-items:center;gap:10px;
  font-family:var(--font-mono);font-weight:700;font-size:14.5px;color:var(--ink);
  word-break:break-all;
}
.hp-public .domain-row__dot{
  width:8px;height:8px;border-radius:50%;background:var(--mint-500);flex-shrink:0;
}
.hp-public .domain-row.is-taken .domain-row__dot{background:var(--ink-faint);}
.hp-public .domain-row__actions{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
}
.hp-public .domain-row__unavailable{
  font-size:13px;font-weight:700;color:var(--ink-faint);
}

/* ============ STORE PLAN CARDS (template hosting.html) ============ */
.hp-public .hp-plans-page{width:100%;}
.hp-public .hp-plans-hero{
  text-align:center;
  margin-bottom:28px;
  padding-bottom:8px;
}
.hp-public .hp-plans-hero .hp-eyebrow{justify-content:center;}
.hp-public .hp-plans-hero h3{
  font-size:clamp(1.9rem, 3.5vw, 2.75rem);
  margin:12px 0 12px;
  max-width:18ch;
  margin-inline:auto;
}
.hp-public .hp-plans-hero p{
  max-width:52ch;
  margin:0 auto 22px;
  font-size:16.5px;
}

.hp-public .hp-billing-toggle{
  display:inline-flex;align-items:center;gap:4px;
  background:rgba(255,255,255,0.7);
  border:1px solid var(--line);
  border-radius:var(--radius-pill);
  padding:4px;
  box-shadow:var(--shadow-sm);
}
.hp-public .hp-billing-toggle button{
  border:none;background:transparent;
  padding:9px 16px;border-radius:var(--radius-pill);
  font-weight:700;font-size:13.5px;color:var(--ink-soft);
  cursor:pointer;font-family:inherit;
}
.hp-public .hp-billing-toggle button.is-active{
  background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm);
}
.hp-public .hp-save-tag{
  color:var(--mint-500);font-size:12px;font-weight:800;margin-left:4px;
}

.hp-public .hp-plan-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:22px;
  align-items:stretch;
  margin-top:12px;
}
.hp-public .hp-plan-card{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  padding:28px 24px;
  display:flex;flex-direction:column;
  box-shadow:var(--shadow-sm);
  position:relative;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.hp-public .hp-plan-card:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-md);
}
.hp-public .hp-plan-card.is-featured{
  border-color:rgba(0,102,255,0.4) !important;
  box-shadow:0 28px 56px -26px rgba(0,102,255,0.5);
  background:linear-gradient(180deg, color-mix(in srgb, var(--blue-500) 8%, var(--surface)), var(--surface) 45%);
  transform:translateY(-8px);
}
.hp-public .hp-plan-card.is-featured:hover{transform:translateY(-10px);}
.hp-public .hp-plan-badge{
  position:absolute;top:-13px;left:24px;
  background:var(--blue-500);
  color:#fff;font-size:11px;font-weight:800;
  letter-spacing:0.05em;text-transform:uppercase;
  padding:6px 12px;border-radius:var(--radius-pill);
  box-shadow:0 8px 18px -8px rgba(0,102,255,0.7);
}
.hp-public .hp-plan-name{
  font-family:var(--font-display);
  font-size:15px;font-weight:650;color:var(--ink-soft);
  letter-spacing:-0.02em;margin-bottom:12px;
}
.hp-public .hp-plan-price{
  display:flex;align-items:baseline;gap:6px;margin-bottom:4px;
}
.hp-public .hp-plan-amt{
  font-family:var(--font-display);
  font-size:clamp(2rem, 3vw, 2.45rem);
  font-weight:700;color:var(--ink);
  letter-spacing:-0.04em;
  font-variant-numeric:tabular-nums;
}
.hp-public .hp-plan-per{
  color:var(--ink-faint);font-size:13.5px;font-weight:650;
}
.hp-public .hp-plan-note{
  color:var(--ink-faint);font-size:13px;font-weight:600;
  min-height:1.3em;margin-bottom:8px;
}
.hp-public .hp-plan-cta{margin-block:18px 22px;}
.hp-public .hp-plan-features{
  display:grid;gap:11px;margin:0;padding:0;list-style:none;margin-top:auto;
}
.hp-public .hp-plan-features li{
  display:flex;align-items:flex-start;gap:10px;
  font-size:14px;color:var(--ink-soft);line-height:1.4;
}
.hp-public .hp-plan-features svg{
  flex-shrink:0;margin-top:2px;color:var(--mint-500);
}
.hp-public .hp-plans-empty{
  grid-column:1 / -1;
  text-align:center;
  padding:36px 20px;
  border:1px dashed var(--line-strong);
  border-radius:var(--radius-lg);
  color:var(--ink-soft);font-weight:650;
}
.hp-public .hp-plans-pager{margin-top:28px;}

@media (max-width:991px){
  .hp-public .hp-plan-grid{
    grid-template-columns:1fr;
    max-width:440px;
    margin-inline:auto;
    width:100%;
  }
  .hp-public .hp-plan-card.is-featured{transform:none;}
  .hp-public .hp-plan-card.is-featured:hover{transform:translateY(-3px);}
}


/* Page heads + utility polish */
.hp-public .hp-hero-kicker.justify-content-center{justify-content:center;width:100%;}
.hp-public .hp-domain-head{
  margin-bottom:28px;
  padding:28px 28px 24px;
  border-radius:28px;
  background:
    radial-gradient(520px 240px at 100% 0%, rgba(0,102,255,0.10), transparent 60%),
    #fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow-sm);
}
.hp-public .hp-domain-head h3{
  font-size:clamp(1.7rem, 3vw, 2.4rem);
  max-width:16ch;
  margin-bottom:10px;
}
.hp-public .hp-domain-head p{max-width:48ch;margin:0;}
.hp-public .hp-plans-hero{
  text-align:center;
  margin-bottom:36px;
  padding:36px 24px 28px;
  border-radius:28px;
  background:
    radial-gradient(640px 280px at 50% -20%, rgba(0,102,255,0.12), transparent 62%),
    #fff;
  border:1px solid var(--line);
}
.hp-public .hp-plans-hero h3{
  font-size:clamp(1.8rem, 3.2vw, 2.6rem);
  max-width:18ch;
  margin-inline:auto;
}
.hp-public .hp-plans-hero p{
  max-width:48ch;margin-inline:auto;margin-top:10px;
}
.hp-public .contact-form.card{
  border-radius:28px !important;
  box-shadow:var(--shadow-md);
  overflow:hidden;
}
.hp-public .contact-form .card-body{padding:clamp(24px, 4vw, 40px);}
.hp-public .faq-section{
  background:
    radial-gradient(700px 360px at 0% 0%, rgba(0,102,255,0.06), transparent 55%),
    var(--paper) !important;
}
.hp-public .announcements{
  background:
    radial-gradient(700px 360px at 100% 0%, rgba(0,102,255,0.06), transparent 55%),
    transparent;
}
.hp-public .bg--light{
  background:
    radial-gradient(800px 420px at 100% -10%, rgba(0,102,255,0.06), transparent 55%),
    #FFFFFF !important;
}

/* Store layout — sidebar + main */
.hp-public .hp-store-row{align-items:flex-start;}
.hp-public .hp-store-sidebar{
  position:relative;
}
@media (min-width:992px){
  .hp-public .hp-store-sidebar .collapable-sidebar{
    position:sticky;
    top:88px;
  }
  .hp-public .hp-store-sidebar .collapable-sidebar__inner{
    height:auto;
    overflow:visible;
  }
}
.hp-public .hp-store-main{min-width:0;}
.hp-public .hp-plans-page{width:100%;}
@media (min-width:992px) and (max-width:1199px){
  .hp-public .hp-plan-grid{grid-template-columns:repeat(2, minmax(0, 1fr));}
}


/* ============ BUSINESS BANNER + HOME EXTRA SECTIONS ============ */
.hp-public .hp-business-banner{
  position:relative;
  overflow:hidden;
  padding:clamp(48px, 7vw, 88px) 0;
  background:
    radial-gradient(700px 420px at 0% 100%, rgba(125,211,252,0.14), transparent 55%),
    radial-gradient(640px 380px at 100% 0%, rgba(0,102,255,0.10), transparent 58%),
    #FFFFFF;
}
.hp-public .hp-business-banner__glow{
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 12% 80%, transparent 34%, rgba(0,102,255,0.05) 35%, transparent 36%),
    radial-gradient(circle at 12% 80%, transparent 48%, rgba(0,102,255,0.04) 49%, transparent 50%);
}
.hp-public .hp-business-banner__inner{
  position:relative;z-index:1;
  display:grid;
  grid-template-columns:1.1fr 0.9fr;
  gap:clamp(28px, 5vw, 56px);
  align-items:center;
}
.hp-public .hp-business-banner__copy .logo-mark{
  margin-bottom:18px;
  display:inline-flex;
}
.hp-public .hp-business-banner__copy h2{
  font-size:clamp(2rem, 4vw, 3.1rem);
  letter-spacing:-0.04em;
  max-width:12ch;
  margin:0 0 14px;
  line-height:1.08;
}
.hp-public .hp-business-banner__copy p{
  max-width:40ch;
  margin:0 0 24px;
  font-size:16.5px;
}
.hp-public .hp-business-banner__visual{
  position:relative;
  min-height:280px;
  display:flex;align-items:center;justify-content:center;
}
.hp-public .hp-business-orb{
  position:absolute;
  width:78%;height:78%;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%, rgba(61,139,255,0.35), rgba(0,102,255,0.12) 55%, transparent 70%);
  filter:blur(4px);
  animation:hpPulse 7s ease-in-out infinite;
}
.hp-public .hp-glass-window{
  position:relative;z-index:1;
  width:min(100%, 360px);
  border-radius:22px;
  background:rgba(255,255,255,0.72);
  border:1px solid rgba(255,255,255,0.95);
  box-shadow:0 28px 56px -28px rgba(0,102,255,0.4), 0 0 0 1px rgba(0,102,255,0.06);
  backdrop-filter:blur(14px);
  overflow:hidden;
  transform:rotate(-2deg);
  animation:hpFloat 5.5s ease-in-out infinite;
}
.hp-public .hp-glass-window__bar{
  display:flex;gap:6px;padding:12px 14px 8px;
  background:rgba(243,248,255,0.9);
  border-bottom:1px solid var(--line);
}
.hp-public .hp-glass-window__bar span{
  width:9px;height:9px;border-radius:50%;background:#FF5F57;
}
.hp-public .hp-glass-window__bar span:nth-child(2){background:#FEBC2E;}
.hp-public .hp-glass-window__bar span:nth-child(3){background:#28C840;}
.hp-public .hp-glass-window__body{padding:14px;display:grid;gap:12px;}
.hp-public .hp-glass-window__hero{
  height:120px;border-radius:14px;
  background:
    linear-gradient(135deg, #BFDBFE, #DBEAFE 40%, #EFF6FF),
    linear-gradient(180deg, transparent 55%, rgba(0,102,255,0.2));
  position:relative;overflow:hidden;
}
.hp-public .hp-glass-window__hero::before{
  content:"";position:absolute;left:12%;right:28%;bottom:0;height:70%;
  background:linear-gradient(180deg, #60A5FA, #0066FF);
  clip-path:polygon(0 100%, 40% 30%, 70% 55%, 100% 20%, 100% 100%);
  opacity:0.85;
}
.hp-public .hp-glass-window__lines{display:grid;gap:8px;}
.hp-public .hp-glass-window__lines i{
  display:block;height:10px;border-radius:8px;
  background:linear-gradient(90deg, #D6E6FF, #EEF4FF);
}
.hp-public .hp-glass-window__lines i:nth-child(2){width:78%;}
.hp-public .hp-glass-window__lines i:nth-child(3){width:58%;}

.hp-public .hp-why{
  padding:clamp(56px, 8vw, 96px) 0;
  background:
    radial-gradient(700px 360px at 100% 0%, rgba(0,102,255,0.06), transparent 55%),
    #F7FAFF;
}
.hp-public .hp-why-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:22px;
}
.hp-public .hp-why-item{
  padding:8px 4px;
}
.hp-public .hp-why-icon{
  width:48px;height:48px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  background:var(--blue-soft);color:var(--blue-500);
  margin-bottom:16px;
  box-shadow:0 10px 24px -16px rgba(0,102,255,0.5);
}
.hp-public .hp-why-item h4{
  font-family:var(--font-display);
  font-size:1.05rem;letter-spacing:-0.02em;
  margin:0 0 8px;color:var(--navy-900);
}
.hp-public .hp-why-item p{
  margin:0;font-size:14.5px;max-width:28ch;
}

.hp-public .hp-steps{
  padding:clamp(56px, 8vw, 96px) 0;
  background:#fff;
}
.hp-public .hp-steps-list{
  list-style:none;margin:0;padding:0;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:28px;
  counter-reset:none;
}
.hp-public .hp-step{
  position:relative;
  padding:28px 24px;
  border-radius:24px;
  border:1px solid var(--line);
  background:
    radial-gradient(280px 160px at 100% 0%, rgba(0,102,255,0.08), transparent 60%),
    #fff;
  box-shadow:var(--shadow-sm);
  transition:transform .2s ease, box-shadow .2s ease;
}
.hp-public .hp-step:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-md);
}
.hp-public .hp-step__num{
  display:block;
  font-family:var(--font-display);
  font-weight:800;font-size:0.95rem;
  letter-spacing:0.08em;
  color:var(--blue-500);
  margin-bottom:14px;
}
.hp-public .hp-step h4{
  font-family:var(--font-display);
  font-size:1.2rem;letter-spacing:-0.02em;
  margin:0 0 8px;color:var(--navy-900);
}
.hp-public .hp-step p{margin:0;font-size:14.5px;max-width:32ch;}

.hp-public .hp-trust{
  padding:28px 0 8px;
  background:#fff;
}
.hp-public .hp-trust-row{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:16px;
  padding:22px 20px;
  border-radius:24px;
  border:1px solid var(--line);
  background:
    linear-gradient(90deg, rgba(0,102,255,0.04), transparent 30%, transparent 70%, rgba(125,211,252,0.08)),
    #fff;
}
.hp-public .hp-trust-stat{
  text-align:center;
  padding:8px;
}
.hp-public .hp-trust-stat strong{
  display:block;
  font-family:var(--font-display);
  font-size:clamp(1.4rem, 2.5vw, 1.85rem);
  font-weight:800;letter-spacing:-0.03em;
  color:var(--navy-900);
}
.hp-public .hp-trust-stat span{
  display:block;margin-top:4px;
  font-size:13px;font-weight:650;color:var(--ink-soft);
}

.hp-public .hp-final-cta{
  padding:clamp(40px, 6vw, 72px) 0 clamp(56px, 8vw, 96px);
  background:#fff;
}
.hp-public .hp-final-cta__panel{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:clamp(28px, 4vw, 40px);
  border-radius:28px;
  border:1px solid var(--line);
  background:#fff;
  box-shadow:var(--shadow-md);
}
.hp-public .hp-final-cta__pattern{
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 100% 0%, transparent 28%, rgba(0,102,255,0.07) 29%, transparent 30%),
    radial-gradient(circle at 100% 0%, transparent 42%, rgba(0,102,255,0.05) 43%, transparent 44%),
    radial-gradient(420px 240px at 100% 0%, rgba(0,102,255,0.08), transparent 60%);
}
.hp-public .hp-final-cta__copy,
.hp-public .hp-final-cta__actions{position:relative;z-index:1;}
.hp-public .hp-final-cta__copy h3{
  font-size:clamp(1.6rem, 3vw, 2.2rem);
  max-width:16ch;
  margin:0 0 10px;
}
.hp-public .hp-final-cta__copy p{
  margin:0;max-width:46ch;font-size:15px;
}
.hp-public .hp-final-cta__actions{
  display:flex;flex-wrap:wrap;gap:12px;
}


/* ============================================================
   MOBILE / RESPONSIVE — authoritative overrides
   ============================================================ */
.hp-public{
  overflow-x:clip;
}

@media (max-width:1199px){
  .hp-public .hp-plan-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:991px){
  .hp-public .hp-hero{
    padding:28px 0 32px;
  }
  .hp-public .hp-hero-inner{max-width:100%;}
  .hp-public .hp-hero-title{
    font-size:clamp(1.85rem, 8vw, 2.6rem) !important;
    max-width:none !important;
  }
  .hp-public .hp-hero-lede{max-width:none;}
  .hp-public .hp-hero-inner .hp-big-search,
  .hp-public .hp-big-search{width:100% !important;}
  .hp-public .hp-hero-tags{gap:8px;justify-content:center;}
  .hp-public .hp-support-pill{justify-content:center;}
  .hp-public .hp-hero-actions{width:100%;justify-content:center;}
  .hp-public .hp-hero-actions .btn{
    width:100%;
    max-width:360px;
    justify-content:center;
  }

  .hp-public .hp-promo-strip{padding:20px 0 36px;}
  .hp-public .hp-promo-grid{
    grid-template-columns:1fr !important;
    gap:14px;
  }
  .hp-public .hp-offer-card{
    grid-template-columns:1fr !important;
    padding:20px 16px !important;
    min-height:0 !important;
    border-radius:22px;
  }
  .hp-public .hp-offer-card__body{order:1 !important;}
  .hp-public .hp-offer-card__art{
    order:2 !important;
    min-height:110px !important;
    max-height:140px;
  }
  .hp-public .hp-offer-card__title{font-size:1.35rem !important;}
  .hp-public .hp-offer-card__cta{
    width:100%;
    justify-content:center;
    text-align:center;
  }
  .hp-public .hp-offer-card__support{width:100%;}

  .hp-public .hp-business-banner{padding:36px 0;}
  .hp-public .hp-business-banner__inner{
    grid-template-columns:1fr !important;
    gap:22px;
  }
  .hp-public .hp-business-banner__copy{order:1;}
  .hp-public .hp-business-banner__visual{order:2;min-height:220px;}
  .hp-public .hp-business-banner__copy h2{
    font-size:clamp(1.7rem, 7vw, 2.3rem) !important;
    max-width:none !important;
  }
  .hp-public .hp-business-banner__copy .btn{
    width:100%;
    justify-content:center;
  }

  .hp-public .hp-services-wrap{padding-top:28px !important;}
  .hp-public .hp-services-intro{padding-top:8px;}
  .hp-public .hp-section-head h3{
    font-size:clamp(1.55rem, 6.5vw, 2.1rem);
  }
  .hp-public .hp-billing-toggle{
    display:flex;
    width:100%;
    max-width:420px;
    margin-inline:auto;
    flex-wrap:wrap;
  }
  .hp-public .hp-billing-toggle button{
    flex:1 1 auto;
    min-width:0;
    padding:10px 12px;
    font-size:12.5px;
  }
  .hp-public .hp-plan-grid{
    grid-template-columns:1fr !important;
    max-width:100% !important;
    width:100% !important;
    gap:16px;
    margin-inline:0 !important;
  }
  .hp-public .hp-plan-card{
    padding:22px 18px;
  }
  .hp-public .hp-plan-card.is-featured{
    transform:none !important;
    margin-top:8px;
  }
  .hp-public .hp-plan-card.is-featured:hover{transform:none !important;}
  .hp-public .hp-category-row{padding-bottom:36px;}

  .hp-public .hp-why,
  .hp-public .hp-steps{padding:40px 0;}
  .hp-public .hp-why-grid,
  .hp-public .hp-steps-list,
  .hp-public .hp-trust-row{
    grid-template-columns:1fr !important;
    gap:14px;
  }
  .hp-public .hp-why-item{padding:4px 0 12px;}
  .hp-public .hp-why-item p,
  .hp-public .hp-step p{max-width:none;}
  .hp-public .hp-trust-row{
    padding:12px 8px;
    gap:0;
  }
  .hp-public .hp-trust-stat{
    padding:14px 8px;
    border-bottom:1px solid var(--line);
  }
  .hp-public .hp-trust-stat:last-child{border-bottom:none;}

  .hp-public .hp-final-cta{padding:28px 0 48px;}
  .hp-public .hp-final-cta__panel{
    flex-direction:column;
    align-items:stretch;
    padding:22px 18px;
    gap:18px;
  }
  .hp-public .hp-final-cta__copy h3{max-width:none;}
  .hp-public .hp-final-cta__actions{
    width:100%;
    flex-direction:column;
  }
  .hp-public .hp-final-cta__actions .btn{
    width:100%;
    justify-content:center;
  }

  .hp-public .footer-top{
    grid-template-columns:1fr 1fr !important;
    gap:24px;
    padding-block:48px 28px;
  }
  .hp-public .hp-plans-hero,
  .hp-public .hp-domain-head{
    padding:22px 16px !important;
    border-radius:20px;
  }
  .hp-public .hp-plans-hero h3,
  .hp-public .hp-domain-head h3{max-width:none;}
  .hp-public .hp-store-row{margin:0;}
  .hp-public .nav-row{padding-inline:0;gap:8px;}
  .hp-public .logo{font-size:1.05rem;max-width:70%;}
  .hp-public .logo-word{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
}

@media (max-width:640px){
  .hp-public .hp-offer-card__art,
  .hp-public .hp-business-banner__visual{
    display:none !important;
  }
  .hp-public .hp-hero{padding:22px 0 26px;}
  .hp-public .hp-hero-title{
    font-size:clamp(1.7rem, 9vw, 2.2rem) !important;
  }
  .hp-public .hp-big-search{
    padding:8px !important;
    flex-wrap:wrap;
    border-radius:20px !important;
  }
  .hp-public .hp-big-search-icon{padding-left:10px;}
  .hp-public .hp-big-search-btn{width:100% !important;}
  .hp-public .hp-tld-float{padding:6px 10px;font-size:12px;}
  .hp-public .hp-offer-card__text{margin-bottom:14px;}
  .hp-public .footer-top{grid-template-columns:1fr !important;}
  .hp-public .hp-save-tag{display:none;}
}

@media (max-width:420px){
  .hp-public .hp-billing-toggle{flex-direction:column;}
  .hp-public .hp-billing-toggle button{width:100%;}
}
