/* Hostazy public design system: loaded after legacy component styles. */
@media(max-width:1080px) {
  /* Keep touch scrolling without the visible scrollbar track or arrow buttons. */
  html,body.public-site,.public-site * { scrollbar-width:none; }
  html::-webkit-scrollbar,body.public-site::-webkit-scrollbar,.public-site *::-webkit-scrollbar { display:none; width:0; height:0; }
  .public-site :is(.pricing-section,.brands-section,.reviews-section,.global-map-section,.domain-search-section,.locations-ticker-section) { overflow-x:clip; overflow-y:visible; }
}
.public-site {
  --bg-main: #0b1220;
  --bg-secondary: #0f192b;
  --bg-card: #142138;
  --bg-card-hover: #192a45;
  --bg-nav: rgba(11, 18, 32, .96);
  --border-color: #293b55;
  --primary: #2563eb;
  --primary-light: #7db7ff;
  --primary-dark: #1d4ed8;
  --accent-light: #7dd3fc;
  --text-main: #f1f5f9;
  --text-muted: #bac7d9;
  --text-dim: #94a3b8;
  --success: #34d399;
  background: var(--bg-main);
  color: var(--text-main);
  line-height: 1.65;
}
[data-theme="light"] .public-site {
  --bg-main: #f5f7fb;
  --bg-secondary: #eef3f9;
  --bg-card: #fff;
  --bg-card-hover: #f8fafc;
  --bg-nav: rgba(255, 255, 255, .97);
  --border-color: #dce4ef;
  --primary-light: #1d4ed8;
  --accent-light: #0369a1;
  --text-main: #142238;
  --text-muted: #4b5f78;
  --text-dim: #596c82;
  --success: #047857;
}
.public-site .container { width: 100%; max-width: 1240px; padding-inline: 24px; }
.site-main { min-width: 0; min-height: 60vh; }
.skip-link { position: fixed; left: 16px; top: -80px; padding: 10px 18px; background: #fff; color: #142238; z-index: 3000; border-radius: 8px; }
.skip-link:focus { top: 12px; }
.public-site .navbar { background: var(--bg-nav); border-color: var(--border-color); }
.public-site .navbar-inner { gap: 20px; }
.public-site .brand-logo-img { max-width: 170px; }
.public-site .nav-links { gap: 6px; }
.public-site .nav-link { color: var(--text-muted); font-size: 12px; gap: 5px; }
.public-site .nav-section-icon { display: none; }
.public-site .nav-item.active > .nav-link,
.public-site .nav-link:hover { color: var(--primary-light); }
.public-site .dropdown-menu { background: var(--bg-card); border-color: var(--border-color); border-radius: 14px; padding: 8px; }
.public-site .dropdown-menu a { padding: 11px 12px; border-radius: 8px; color: var(--text-main) !important; }
.public-site .dropdown-menu a:hover { background: var(--bg-card-hover); color: var(--primary-light) !important; }
.public-site .dropdown-menu a[aria-current="page"] { background: var(--bg-card-hover); color: var(--primary-light) !important; font-weight: 800; }
.mobile-drawer-heading, .navigation-backdrop { display: none; }
.public-site .header-preferences { gap: 10px; }
.public-site .currency-toggle-pill { background: var(--bg-secondary) !important; border-color: var(--border-color) !important; box-shadow: none !important; }
.public-site .curr-pill-btn { color: var(--text-muted) !important; }
.public-site .curr-pill-btn.active { background: #2563eb !important; color: #fff !important; }
.public-site .theme-toggle-btn { border-color: var(--border-color); color: var(--primary-light); border-radius: 10px; box-shadow: none; }
.public-site .theme-toggle-btn:hover { transform: none; background: var(--bg-card-hover); }
/* Every interior page uses its own illustration and the same content rhythm. */
.service-hero { position: relative; overflow: clip; isolation: isolate; background: #0b172a; border-bottom: 1px solid #233852; color: #f8fafc; }
.service-hero::before { content: ''; position: absolute; inset: 0; z-index: -1; background: radial-gradient(ellipse at 85% 45%, rgba(37, 99, 235, .17), transparent 52%), radial-gradient(ellipse at 95% 90%, rgba(249, 115, 22, .07), transparent 45%); }
.service-hero-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); align-items: center; gap: 56px; padding-block: 56px; min-height: 430px; }
.service-hero-copy { min-width: 0; }
.service-breadcrumb { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 24px; color: #a8bdd7; font-size: 12px; }
.service-breadcrumb a { color: #dbeafe; }
.service-eyebrow { color: #93c5fd; font-size: 12px; font-weight: 700; letter-spacing: .04em; margin-bottom: 16px; }
.service-eyebrow i { margin-right: 6px; color: #fb923c !important; }
.service-hero h1 { font-size: clamp(2rem, 3.8vw, 3.3rem); line-height: 1.15; letter-spacing: -.04em; font-weight: 800; color: #f8fafc; margin-bottom: 20px; text-wrap: balance; }
.service-hero .gradient-text { background: none; -webkit-text-fill-color: #93c5fd; color: #93c5fd; }
.service-hero-description { font-size: 15px; line-height: 1.8; max-width: 620px; color: #bdcce0; margin: 0; }
.service-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.service-hero-art { display: grid; place-items: center; min-width: 0; position: relative; }
.service-hero-art img { display: block; width: 100%; max-width: 450px; height: auto; max-height: 340px; object-fit: contain; border-radius: 20px; filter: drop-shadow(0 18px 32px rgba(0, 0, 0, .22)); }
.public-site .hero-reference { background: #0b172a !important; }
.public-site .hero-copy h1 { line-height: 1.16; letter-spacing: -.035em; }
.public-site .hero-copy h1 span { color: #93c5fd; }
.public-site .hero-visual img { filter: drop-shadow(0 18px 28px rgba(2, 6, 23, .2)) !important; }
.public-site .solution-img-wrap img { object-fit: contain; }
.public-site :is(.blog-image, .blog-detail-image) { background: var(--bg-secondary); }
.public-site :is(.blog-image, .blog-detail-image) img { object-fit: contain !important; padding: 18px; background: var(--bg-secondary); }
.public-site .hero-reference .hero-badge { max-width: 100%; white-space: normal; text-align: left; line-height: 1.6; }
/* Domain search is a single panel with a clear segmented action selector. */
.public-site .domain-search-card { padding: 24px; border-radius: 18px; background: var(--bg-card); border: 1px solid var(--border-color); color: var(--text-main); box-shadow: 0 20px 45px rgba(0, 0, 0, .14); }
.public-site .domain-search-card h2 { color: var(--text-main) !important; text-align: left; font-size: 18px !important; margin-bottom: 18px; }
.public-site .domain-mode-tabs { display: flex !important; width: 100% !important; max-width: 300px; height: auto !important; gap: 4px !important; margin: 0 0 18px !important; padding: 5px !important; background: var(--bg-main) !important; border: 1px solid var(--border-color) !important; border-radius: 12px !important; }
.public-site .domain-mode-tab { display: inline-flex; flex: 1; align-items: center; justify-content: center; gap: 8px; width: auto !important; height: 40px !important; padding: 0 14px; border-radius: 8px !important; background: transparent !important; color: var(--text-muted) !important; font-family: inherit !important; font-size: 13px !important; font-weight: 700 !important; line-height: 1 !important; }
.public-site .domain-mode-tab.active { background: #2563eb !important; color: #fff !important; box-shadow: 0 3px 8px rgba(37, 99, 235, .22); }
.public-site .domain-search-card .hero-domain-form { height: 54px !important; grid-template-columns: minmax(0, 1fr) 112px !important; background: var(--bg-main) !important; border-color: var(--border-color) !important; border-radius: 12px !important; }
.public-site .domain-search-card .hero-domain-form input { background: transparent !important; color: var(--text-main) !important; padding-inline: 14px !important; }
.public-site .domain-search-card .hero-domain-form input::placeholder { color: var(--text-dim) !important; }
.public-site .domain-search-card .hero-tld-prices { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 8px !important; }
.public-site .domain-search-card .hero-tld-prices div { min-width: 0 !important; flex-wrap: wrap; gap: 3px !important; background: var(--bg-main) !important; border-color: var(--border-color) !important; color: var(--text-muted) !important; padding: 9px 6px !important; font-size: 11px; }
.public-site .domain-search-card .hero-tld-prices b { color: var(--text-main) !important; }
.public-site .domain-search-card .hero-tld-prices span { color: var(--primary-light) !important; }
/* Theme-aware cards, typography, forms and content across all public routes. */
.public-site :is(.glass-card, .pricing-card, .solution-card, .advantage-card, .migration-step, .page-card, .page-feature-card, .blog-card, .blog-detail-card, .faq-item, .dc-node-card, .domain-box) { background: var(--bg-card) !important; border-color: var(--border-color) !important; border-radius: 16px; color: var(--text-main); box-shadow: 0 8px 24px rgba(0, 0, 0, .06) !important; }
.public-site :is(.pricing-card, .solution-card) { padding: 28px 24px; }
.public-site .pricing-card.featured { border: 2px solid var(--primary) !important; }
.public-site :is(.plan-title, .section-title, .solution-card h3, .advantage-card h3, .page-feature-card h3, .page-card h3, .migration-step h3) { color: var(--text-main) !important; }
.public-site :is(.plan-tagline, .section-desc, .solution-card p, .page-feature-card p, .page-card p, .advantage-card p, .migration-step p) { color: var(--text-muted) !important; }
.public-site .feature-list li { color: var(--text-muted) !important; border-color: var(--border-color) !important; }
.public-site .plan-price-box :is(.amount, .currency) { color: var(--accent-light) !important; }
.public-site .plan-price-box .period { color: var(--text-dim) !important; }
.public-site .popular-ribbon { background: #2563eb; color: #fff; }
.public-site .btn { min-height: 44px; font-size: 13px; letter-spacing: 0; }
.public-site :is(.btn-primary, .btn-orange) { background: #2563eb !important; border: 1px solid #2563eb !important; box-shadow: none !important; font-weight: 700 !important; }
.public-site :is(.btn-primary, .btn-orange):hover { background: #1d4ed8 !important; border-color: #1d4ed8 !important; box-shadow: 0 6px 18px rgba(37, 99, 235, .18) !important; }
.public-site :is(.btn-secondary, .btn-dark) { background: var(--bg-card) !important; color: var(--text-main) !important; border: 1px solid var(--border-color) !important; }
.public-site .service-hero .btn-secondary { background: #17273e !important; border-color: #3a5270 !important; color: #f8fafc !important; }
.public-site :is(.feature-strip, .advantage-section, .free-migration-section, .page-stats-strip, .blog-section, .blog-topics-surface) { background: var(--bg-secondary); border-color: var(--border-color); }
.public-site :is(.domain-input, .whois-input) { background: var(--bg-card); color: var(--text-main); border-color: var(--border-color); }
.public-site .faq-question { background: var(--bg-card); color: var(--text-main); }
.public-site .section-header { margin-bottom: 32px; }
.public-site .domain-search-section { margin-top: 0 !important; padding-top: 32px; }
.public-site .footer { background: var(--bg-secondary); border-color: var(--border-color); }
.public-site .footer-grid { grid-template-columns: minmax(240px, 1.5fr) repeat(4, minmax(0, 1fr)); gap: 28px; align-items: start; }
.public-site .footer-brand .brand-logo { height: 42px; min-height: 0; flex: 0 0 42px; }
.public-site .footer-brand p { margin: 0; max-width: 300px; font-size: 13px; color: var(--text-muted); line-height: 1.85; }
.public-site .footer-col h4 { color: var(--text-main); font-size: 12px; letter-spacing: .05em; }
.public-site .footer-col > summary { list-style: none; color: var(--text-main); font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; margin-bottom: 20px; pointer-events: none; }
.public-site .footer-col > summary::-webkit-details-marker { display: none; }
.public-site .footer-col > summary > i { display: none; }
.public-site .footer-col ul li a { color: var(--text-muted); font-size: 12px; }
.public-site .footer-bottom { color: var(--text-dim); font-size: 12px; }
.public-site .footer-payments img { width: min(320px, 100%) !important; height: auto !important; }
@media (min-width: 1081px) {
  .public-site .nav-links { display: flex !important; }
  .public-site .mobile-drawer-footer, .public-site .mobile-menu-btn { display: none; }
}
@media (max-width: 1080px) {
  .public-site .navbar { backdrop-filter: none; -webkit-backdrop-filter: none; overflow: visible; }
  .public-site .navbar-inner { gap: 12px; }
  .public-site .nav-actions { margin-left: auto; }
  .public-site .nav-links {
    position: fixed; inset: 0 0 0 auto; z-index: 1200;
    display: flex !important; flex-direction: column; align-items: stretch;
    width: min(360px, calc(100% - 32px)); height: 100dvh; max-height: 100dvh;
    margin: 0; padding: 20px; gap: 0; overflow-y: auto; overscroll-behavior: contain;
    background: var(--bg-main) !important; border-left: 1px solid var(--border-color);
    box-shadow: -20px 0 60px rgba(0, 0, 0, .25);
    visibility: hidden; transform: translateX(100%); pointer-events: none;
    transition: transform .22s ease, visibility .22s;
  }
  .public-site .nav-links.open { visibility: visible; transform: translateX(0); pointer-events: auto; }
  .public-site .mobile-drawer-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-bottom: 18px; margin-bottom: 8px; border-bottom: 1px solid var(--border-color); color: var(--text-main); font-size: 15px; font-weight: 800; }
  .mobile-drawer-heading button { width: 36px; height: 36px; background: var(--bg-card); color: var(--text-main); border: 1px solid var(--border-color); border-radius: 10px; cursor: pointer; }
  .public-site .nav-item { flex: 0 0 auto; height: auto; border-bottom: 1px solid var(--border-color); }
  .public-site .nav-link { font-size: 14px; padding: 0 8px; height: 52px; }
  .public-site .nav-link .nav-section-icon { display: inline-block; width: 20px; color: var(--primary-light); }
  .public-site .nav-link .fa-chevron-down { margin-left: auto; }
  .public-site .nav-item.open .fa-chevron-down { transform: rotate(180deg); }
  .public-site .nav-item .dropdown-menu { display: none; position: static; margin: 0 0 12px; padding: 6px; width: 100%; transform: none !important; background: var(--bg-card) !important; border-color: var(--border-color); }
  .public-site .nav-item.open .dropdown-menu { display: flex; }
  .public-site .dropdown-menu a { font-size: 12px; padding: 10px; }
  .public-site .mobile-drawer-footer { display: flex; padding-top: 20px; margin-top: auto; border-top: 0; }
  .public-site .mobile-preferences-slot .header-preferences { padding: 14px; border-color: var(--border-color); background: var(--bg-card); }
  .public-site .mobile-preferences-slot .header-preferences::before { content: 'Preferences'; font-size: 12px; color: var(--text-muted); margin-right: auto; }
  .public-site .header-preferences .currency-toggle-pill { flex-shrink: 0; }
  .public-site .desktop-preferences-slot { display: none; }
  .public-site .navigation-backdrop:not([hidden]) { display: block; position: fixed; inset: 0; z-index: 990; border: 0; background: rgba(2, 6, 23, .65); backdrop-filter: blur(3px); }
  .public-site .footer-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .public-site .footer-brand { grid-column: 1 / -1; }
  .public-site .footer-brand p { max-width: 480px; }
  .service-hero-grid { gap: 32px; }
}
@media (max-width: 768px) {
  .public-site .container { padding-inline: 20px; }
  .service-hero-grid { grid-template-columns: minmax(0, 1fr); padding-block: 32px; min-height: 0; gap: 28px; }
  .service-breadcrumb { margin-bottom: 20px; }
  .service-hero h1 { font-size: clamp(1.85rem, 7.5vw, 2.65rem); }
  .service-hero-description { font-size: 14px; }
  .service-hero-art img { max-height: 220px; max-width: 330px; }
  .service-hero-actions { gap: 10px; margin-top: 22px; }
  .service-hero-actions .btn { flex: 1 1 140px; padding-inline: 14px; }
  .public-site .hero-grid { padding-block: 28px !important; }
  .public-site .hero-copy { padding: 0 !important; text-align: left !important; }
  .public-site .hero-copy h1 { font-size: clamp(2rem, 8vw, 2.8rem); }
  .public-site .hero-visual { min-height: 220px !important; padding: 8px 0 0 !important; }
  .public-site .hero-visual img { max-height: 260px !important; width: auto !important; max-width: 100% !important; }
  .public-site .domain-search-card { padding: 18px !important; }
  .public-site .domain-mode-tabs { width: 100% !important; }
  .public-site .domain-search-card .hero-tld-prices { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .public-site .pricing-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .public-site .footer { padding: 36px 0 24px; }
  .public-site .footer-grid { grid-template-columns: minmax(0, 1fr); gap: 0; margin-bottom: 24px; }
  .public-site .footer-brand { grid-column: 1 / -1; align-items: center; gap: 18px; text-align: center; padding-bottom: 30px; }
  .public-site .footer-brand p { max-width: 330px; font-size: 13px; line-height: 1.8; }
  .public-site .footer-brand .social-links { justify-content: center; }
  .public-site .footer-brand .social-btn { border-radius: 12px; background: var(--bg-card); color: var(--text-main); }
  .public-site .footer-col { border-top: 1px solid var(--border-color); min-width: 0; }
  .public-site .footer-col:last-child { border-bottom: 1px solid var(--border-color); }
  .public-site .footer-col > summary { display: flex; align-items: center; justify-content: space-between; min-height: 58px; gap: 16px; margin: 0; font-size: 13px; text-transform: none; letter-spacing: 0; cursor: pointer; pointer-events: auto; }
  .public-site .footer-col > summary > i { display: block; font-size: 10px; color: var(--text-dim); transition: transform .18s ease; }
  .public-site .footer-col[open] > summary > i { transform: rotate(180deg); }
  .public-site .footer-col > ul { padding: 0 0 16px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 16px; }
  .public-site details.footer-col:not([open]) > ul { display: none; }
  .public-site .footer-col ul li { margin: 0; min-width: 0; }
  .public-site .footer-col ul li a { min-height: 40px; font-size: 12px; line-height: 1.6; }
  .public-site .footer-col ul li a > i { display: none; }
  .public-site .footer-bottom { padding-top: 0; border-top: 0; gap: 18px; text-align: center; flex-direction: column; }
  .public-site .footer-bottom > div:first-child { max-width: 300px; font-size: 11px; line-height: 1.8; }
  .public-site .footer-payments { width: 100%; padding: 14px; background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; }
  .public-site .footer-payments img { width: min(280px, 100%) !important; }
  .public-site .domain-form:not(.hero-domain-form) { flex-direction: column; height: auto; gap: 12px; }
  .public-site .domain-input-wrapper { width: 100%; min-width: 0; }
  .public-site .domain-form:not(.hero-domain-form) .btn { width: 100%; min-width: 0 !important; }
  .public-site .whois-hero h1 { font-size: 1.9rem; }
  .public-site .help-center-popup { width: min(340px, calc(100vw - 32px)); }
}
@media (prefers-reduced-motion: reduce) {
  .public-site .nav-links { transition: none; }
}
/* Release refinements */
.limited-offers-section { padding-block:28px; }
.limited-offer-category { margin-top:18px; }.limited-offer-category>h3 { margin-bottom:9px; font-size:18px; }
.limited-offers-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:7px; }
.limited-offer-row { box-sizing:border-box; display:grid; grid-template-columns:minmax(160px,.8fr) minmax(0,2.2fr) minmax(280px,1fr); align-items:center; gap:10px; padding:9px 12px; min-width:0; overflow:hidden; }
.limited-offer-summary { min-width:0; min-height:52px; display:flex; flex-direction:column; justify-content:center; }.limited-offer-summary>span { display:block; margin-bottom:1px; color:var(--text-dim); font-size:12px; }.limited-offer-row h4 { font-size:19px; line-height:1.2; overflow-wrap:anywhere; }
.limited-offer-row ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:minmax(22px,auto); gap:2px 9px; list-style:none; padding:0; margin:0; min-width:0; }.limited-offer-row li { display:flex; flex-wrap:wrap; align-items:baseline; column-gap:5px; min-width:0; font-size:14px; line-height:1.25; }.limited-offer-row li>span { color:var(--text-dim); font-size:12px; }.limited-offer-row li>strong { overflow-wrap:anywhere; }
.limited-offer-purchase { box-sizing:border-box; min-width:0; display:flex; flex-wrap:nowrap; align-items:center; justify-content:flex-start; gap:8px; border-left:1px solid var(--border-color); padding-left:10px; }.limited-offer-purchase>div { min-width:max-content; flex:0 0 auto; }.limited-offer-saving { color:var(--success); font-size:11px; margin-bottom:0; }.limited-offer-price { display:block; white-space:nowrap; font-size:23px; font-weight:800; line-height:1.15; }
.limited-offer-order { box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; width:auto; max-width:100%; white-space:nowrap; font-size:10px; padding:5px 7px; min-height:30px; }.limited-offer-order .fa-whatsapp { font-size:13px; }
@media(max-width:960px) { .limited-offer-row { grid-template-columns:minmax(0,1fr); gap:6px; padding:10px 12px; }.limited-offer-summary { min-height:0; }.limited-offer-row ul { grid-template-columns:repeat(4,minmax(0,1fr)); grid-auto-rows:minmax(24px,auto); padding-top:5px; border-top:1px solid var(--border-color); }.limited-offer-purchase { grid-column:1; grid-row:auto; justify-content:flex-start; border-left:0; border-top:1px solid var(--border-color); padding:5px 0 0; } }
@media(max-width:600px) { .limited-offer-row { padding:9px 11px; gap:6px; }.limited-offer-summary>span { display:inline-block; margin-right:5px; }.limited-offer-row h4 { font-size:18px; }.limited-offer-row ul { grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:minmax(24px,auto); gap:4px 8px; }.limited-offer-row li { font-size:13px; }.limited-offer-row li>span { font-size:12px; }.limited-offer-category>h3 { margin-bottom:6px; font-size:16px; } }
.public-site .payment-section { margin-block:24px 40px; }
.public-site .payment-bar { margin:0; padding:28px; overflow:hidden; }
.payment-bar h3 { margin-bottom:8px; font-size:clamp(18px,3vw,23px); font-weight:800; line-height:1.35; }
.payment-bar>p { max-width:640px; margin:0 auto 24px; font-size:14px; line-height:1.7; color:var(--text-muted); }
.payment-banner { display:block; width:100%; max-width:1050px; height:auto; margin:auto; border-radius:10px; }
.payment-method-grid { display:none; }
@media(max-width:768px) {
 .public-site .payment-section { margin-block:16px 28px; }
 .public-site .payment-bar { padding:22px 16px; border-radius:18px; }
 .payment-bar>p { font-size:13px; margin-bottom:18px; }
 .payment-banner { display:none; }
 .payment-method-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:0; margin:0; list-style:none; }
 .payment-method-grid li { display:grid; place-items:center; min-width:0; padding:4px; background:#fff; border:1px solid #e2e8f0; border-radius:12px; overflow:hidden; }
 .payment-method-logo { display:block; width:100%; max-width:110px; aspect-ratio:200/164; background-image:url('assets/payment.webp'); background-size:1024% 100%; background-position:var(--payment-position) 0; background-repeat:no-repeat; }
}
.vps-service-notice { max-width:780px; margin:18px auto 0; padding:14px 18px; border:1px solid var(--border-color); border-radius:12px; color:var(--text-muted); font-size:13px; line-height:1.7; }
.public-site .hidden, .public-site [hidden] { display: none !important; }
.domain-search-label { display:flex; align-items:center; gap:8px; margin-bottom:16px; color:var(--primary-light); font-size:12px; font-weight:700; }
.public-site .hero-grid { grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:28px; }
.public-site .hero-visual { min-height:420px; }
.public-site .hero-visual img { width:100% !important; max-width:720px !important; height:auto !important; animation:hosting-float 7s ease-in-out infinite; }
.public-site .hero-copy .hero-headline { animation:none; }
.public-site .hero-headline-lead { display:block; color:#f8fafc; }
.public-site .hero-headline-lead>span { display:inline-block; color:inherit; animation:heading-arrive .8s cubic-bezier(.16,1,.3,1) both; }
.public-site .hero-headline-lead>span:nth-child(2) { animation-delay:.18s; }
.public-site .hero-copy .hero-headline-lead,.public-site .hero-copy .hero-headline-lead>span { color:#f8fafc; -webkit-text-fill-color:currentColor; }
.public-site .hero-headline-highlight { position:relative; display:block; width:fit-content; padding-bottom:12px; background:linear-gradient(110deg,#60a5fa 5%,#a5f3fc 35%,#fff 50%,#93c5fd 65%,#60a5fa 95%); background-size:250% auto; background-clip:text; -webkit-background-clip:text; color:#93c5fd; -webkit-text-fill-color:transparent; animation:heading-sheen 5s ease-in-out infinite,heading-arrive .9s .28s both; }
.hero-headline-highlight::after { content:''; position:absolute; bottom:0; left:0; width:72px; height:3px; border-radius:8px; background:linear-gradient(90deg,#2563eb,#67e8f9,transparent); transform-origin:left; animation:heading-underline 4s ease-in-out infinite; }
@keyframes heading-underline { 0%,100% { transform:scaleX(.6); opacity:.55; } 50% { transform:scaleX(1.5); opacity:1; } }
@keyframes hosting-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-10px); } }
@keyframes heading-arrive { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
@keyframes heading-sheen { to { background-position:200% center; } }
.public-site .pricing-section { padding-block:52px !important; }
.public-site .compact-pricing-grid { grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; }
.public-site .compact-pricing-grid .pricing-card { padding:24px 22px; }
.public-site .compact-pricing-grid .plan-title { font-size:1.15rem !important; }
.public-site .compact-pricing-grid .feature-list { margin-block:12px 20px; }
.public-site .compact-pricing-grid .feature-list li { font-size:12px !important; }
.package-more { text-align:center; margin-top:24px; font-weight:700; color:var(--primary-light); }
.public-site .brand-logo-img { width:140px !important; height:auto !important; max-height:44px !important; object-fit:contain; }
.public-site .footer { padding:36px 0 22px; }
.footer-simple { display:grid; grid-template-columns:1.2fr 1.4fr auto; gap:32px; align-items:center; padding-bottom:28px; }
.public-site .footer-simple .footer-brand { gap:12px; }
.public-site .footer-simple .footer-brand p { max-width:300px; font-size:12px; }
.footer-quick-links { display:flex; flex-wrap:wrap; gap:12px 20px; font-size:12px; color:var(--text-muted); }
.public-site .footer-bottom { padding-top:20px; }
.public-site .footer-payments img { width:230px !important; }
.team-section, .client-reviews-section, .platform-section { padding-block:52px; }
.team-grid, .client-reviews-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.team-card { padding:24px; border:1px solid var(--border-color); border-radius:16px; background:var(--bg-card); }
.team-card img, .team-placeholder { width:100%; height:240px; object-fit:cover; border-radius:12px; margin-bottom:18px; }
.team-placeholder { display:grid; place-items:center; font-size:80px; color:var(--primary-light); background:linear-gradient(135deg,var(--bg-secondary),var(--bg-card-hover)); }
.team-card h3 { font-size:18px; }.team-card p { font-size:13px; color:var(--text-muted); }.team-position { color:var(--primary-light) !important; font-weight:700; margin:6px 0 12px; }
.demo-label { display:inline-block; font-size:10px; border:1px solid var(--border-color); border-radius:20px; padding:3px 8px; margin-top:12px; }
.client-review { padding:24px; }.client-review p { font-size:13px; color:var(--text-muted); margin-block:14px; }.client-review h3 { font-size:14px; }.client-review>span { font-size:12px; color:var(--text-dim); }
.client-review video, .client-review iframe { display:block; width:100%; aspect-ratio:16/9; border:0; border-radius:10px; margin-bottom:18px; }
.platform-tabs { display:flex; justify-content:center; gap:8px; margin-bottom:24px; }
.platform-tabs button { padding:10px 20px; border:1px solid var(--border-color); background:var(--bg-card); color:var(--text-main); border-radius:10px; cursor:pointer; }
.platform-tabs button[aria-pressed="true"] { background:#2563eb; border-color:#2563eb; color:white; }
.platform-preview { overflow:hidden; max-width:1000px; margin:auto; border:1px solid var(--border-color); border-radius:16px; background:var(--bg-card); box-shadow:0 18px 48px rgba(0,0,0,.12); }
.platform-window-bar { display:flex; justify-content:space-between; gap:16px; padding:14px 20px; background:var(--bg-secondary); border-bottom:1px solid var(--border-color); font-size:11px; }.window-dots { color:var(--primary-light); }
.platform-workspace { display:grid; grid-template-columns:170px minmax(0,1fr); min-height:280px; }.platform-workspace aside { display:flex; flex-direction:column; gap:18px; padding:24px; border-right:1px solid var(--border-color); color:var(--text-muted); font-size:12px; }.platform-workspace aside strong { color:var(--primary-light); font-size:22px; }.platform-workspace>div { padding:28px; }.platform-workspace h3 { font-size:18px; margin-bottom:22px; }
.platform-feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }.platform-feature-grid>div { padding:20px 12px; display:grid; gap:12px; border:1px solid var(--border-color); border-radius:10px; font-size:12px; }.platform-feature-grid i { color:var(--primary-light); font-size:24px; }
.platform-screenshot { display:block; width:100%; height:auto; }.platform-caption { text-align:center; font-size:11px; color:var(--text-dim); margin-top:18px; }
.public-site .platform-preview { width:100%; max-width:var(--platform-preview-width,1000px); }
.platform-screenshot-frame { padding:8px; background:var(--bg-secondary); }
.public-site .platform-screenshot { display:block; width:100%; max-width:100%; max-height:none; height:auto; border-radius:10px; }
.technology-intro { text-align:center; margin-bottom:22px; }.technology-intro>span { font-weight:700; font-size:14px; color:var(--text-main); }.technology-intro p { margin-top:6px; font-size:12px; color:var(--text-muted); }
.technology-logo { display:grid; place-items:center; width:176px; height:76px; flex:0 0 176px; padding:18px 22px; background:#fff; border:1px solid #e2e8f0; border-radius:14px; box-sizing:border-box; }
.technology-logo img { display:block; width:100%; height:100%; max-height:40px; object-fit:contain; }
.public-site .technology-group { gap:20px; padding-right:20px; }.technology-strip:focus-within .technology-track { animation-play-state:paused; }
@media(max-width:600px) { .platform-tabs button { padding:10px 16px; }.platform-screenshot-frame { min-height:0; padding:10px; }.technology-logo { width:145px; flex-basis:145px; height:66px; padding:16px; } }
.technology-strip { overflow:hidden; padding:24px 0; border-block:1px solid var(--border-color); background:var(--bg-secondary); }.technology-track { width:max-content; display:flex; animation:technology-scroll 32s linear infinite; }.technology-group { display:flex; gap:48px; padding-right:48px; align-items:center; }.technology-group span { font-size:19px; font-weight:800; color:var(--text-muted); }.technology-strip:hover .technology-track { animation-play-state:paused; }
@keyframes technology-scroll { to { transform:translateX(-50%); } }
.network-tool-section { padding-bottom:40px; }.network-tool-form { display:grid; grid-template-columns:1fr 2fr auto; gap:16px; align-items:end; margin-top:20px; }.network-tool-form label { display:grid; gap:8px; font-size:12px; }.network-tool-section pre { overflow:auto; max-height:460px; white-space:pre-wrap; overflow-wrap:anywhere; padding:20px; background:var(--bg-card); border:1px solid var(--border-color); border-radius:12px; font-size:12px; }.network-tool-section [role="status"] { margin-block:16px; font-size:13px; }
@media(max-width:900px) { .team-grid,.client-reviews-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.footer-simple { grid-template-columns:1fr 1fr; }.footer-simple>.social-links { grid-column:1/-1; }.platform-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:768px) {
 .public-site .hero-grid { grid-template-columns:minmax(0,1fr) !important; }
 .public-site .hero-visual img { width:100% !important; max-width:460px !important; max-height:300px !important; }
 .public-site .compact-pricing-grid,.team-grid,.client-reviews-grid { grid-template-columns:minmax(0,1fr); }
 .team-section,.client-reviews-section,.platform-section { padding-block:36px; }
 .footer-simple { grid-template-columns:minmax(0,1fr); gap:22px; text-align:center; padding-bottom:20px; }.footer-simple .footer-brand { padding-bottom:0; }.footer-quick-links,.footer-simple .social-links { justify-content:center; }.public-site .footer-simple .footer-brand p { margin:auto; }
 .platform-workspace { grid-template-columns:minmax(0,1fr); }.platform-workspace aside { display:none; }.platform-workspace>div { padding:20px; }.platform-window-bar>span:last-child { display:none; }.platform-feature-grid>div { padding:16px 10px; }
 .network-tool-form { grid-template-columns:minmax(0,1fr); }
}
@media(prefers-reduced-motion:reduce) { .public-site .hero-visual img,.public-site .hero-copy h1,.public-site .hero-copy h1 span,.technology-track { animation:none !important; }.technology-track { flex-wrap:wrap; width:100%; }.technology-group { flex-wrap:wrap; justify-content:center; gap:20px; padding:0 16px; }.technology-group[aria-hidden="true"] { display:none; } }
/* Mobile homepage: heading, illustration, then domain search. */
@media(max-width:820px) {
 .public-site .hero-reference .hero-grid { grid-template-columns:minmax(0,1fr) !important; grid-template-areas:'eyebrow' 'heading' 'artwork' 'domain' 'benefits'; gap:16px !important; padding-block:26px !important; }
 .public-site .hero-reference .hero-copy { display:contents; }
 .public-site .hero-reference .hero-badge { grid-area:eyebrow; justify-self:center; justify-content:center; margin:0; padding:7px 12px; font-size:10px; text-align:center; }
 .public-site .hero-reference .hero-headline { grid-area:heading; margin:0; text-align:center; font-size:clamp(1.9rem,7.6vw,3rem); line-height:1.17; text-wrap:balance; }
 .public-site .hero-headline-highlight { margin-inline:auto; }
 .public-site .hero-headline-highlight::after { left:50%; margin-left:-36px; }
 .public-site .hero-reference .hero-visual { grid-area:artwork; min-height:0 !important; padding:4px 0 10px !important; width:100%; justify-content:center; }
 .public-site .hero-reference .hero-visual img { width:100% !important; max-width:460px !important; max-height:280px !important; margin:0 auto !important; }
 .public-site .hero-reference .server-halo { width:100% !important; max-width:420px; height:100%; top:0; background:radial-gradient(ellipse,rgba(59,130,246,.24),transparent 68%); }
 .public-site .hero-reference .domain-search-card { grid-area:domain; width:100%; min-width:0; margin:0 !important; box-sizing:border-box; border-radius:18px; box-shadow:0 16px 36px rgba(0,0,0,.2); }
 .public-site .hero-reference .hero-benefits { grid-area:benefits; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; margin:4px 0 0 !important; gap:12px; }
 .public-site .hero-reference .hero-benefits>div { font-size:11px; gap:7px; }
 .public-site .hero-reference .domain-search-card h2 { font-size:16px !important; margin-bottom:12px; }
 .public-site .hero-reference .domain-search-label { margin-bottom:12px; }
 .public-site .hero-reference .hero-tld-prices { gap:8px !important; }
}
@media(prefers-reduced-motion:reduce) { .hero-headline-highlight::after { animation:none; } }
