/* KingHost client area */
.nh-client-portal {
    --nh-navy-950: #0f172a;
    --nh-navy-900: #172033;
    --nh-navy-800: #0969da;
    --nh-blue-600: #0969da;
    --nh-blue-500: #2f81f7;
    --nh-blue-100: #eef6ff;
    --nh-page: #f6f9fc;
    --nh-surface: #ffffff;
    --nh-ink-900: #172033;
    --nh-ink-700: #334155;
    --nh-ink-600: #475569;
    --nh-ink-500: #64748b;
    --nh-ink-400: #94a3b8;
    --nh-line: #dfe8f2;
    --nh-gold: #d99a32;
    --nh-gold-bg: #fbf3e4;
    --nh-green: #178a5d;
    --nh-green-bg: #e8f6ef;
    --nh-red: #c7433f;
    --nh-red-bg: #fbeae9;
    --nh-radius: 8px;
    --nh-radius-lg: 10px;
    --nh-shadow: 0 8px 24px rgba(31, 53, 78, 0.055);
    --nh-shadow-lg: 0 18px 46px rgba(31, 53, 78, 0.16);
    background: var(--nh-page);
    color: var(--nh-ink-900);
    font-family: "Inter", "Open Sans", sans-serif;
    font-size: 14px;
    line-height: 1.5;
}

.nh-client-portal *,
.nh-client-portal *::before,
.nh-client-portal *::after {
    box-sizing: border-box;
}

.nh-client-portal h1,
.nh-client-portal h2,
.nh-client-portal h3,
.nh-client-portal h4,
.nh-client-portal h5,
.nh-client-portal h6 {
    color: var(--nh-ink-900);
    font-family: "Inter", "Open Sans", sans-serif;
    letter-spacing: 0;
}

.nh-client-portal a {
    color: var(--nh-blue-600);
}

.nh-client-portal .tt-header,
.nh-client-portal .tt-page-header,
.nh-client-portal .tt-breadcrumbs,
.nh-client-portal .partners-section,
.nh-client-portal #footer {
    display: none !important;
}

.nh-client-app {
    display: grid;
    grid-template-columns: 264px minmax(0, 1fr);
    min-height: 100vh;
}

.nh-client-sidebar {
    position: sticky;
    top: 0;
    z-index: 1040;
    display: flex;
    flex-direction: column;
    width: 264px;
    height: 100vh;
    height: 100dvh;
    padding: 18px 14px 14px;
    overflow-y: auto;
    background: #ffffff;
    border-right: 1px solid var(--nh-line);
    transition: transform 0.22s ease;
}

.nh-client-sidebar::-webkit-scrollbar {
    width: 5px;
}

.nh-client-sidebar::-webkit-scrollbar-thumb {
    background: var(--nh-line);
    border-radius: 8px;
}

.nh-client-brand {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 44px;
    padding: 2px 8px 15px;
}

.nh-client-brand a {
    display: flex;
    align-items: center;
}

.nh-client-brand img {
    width: auto;
    max-width: 164px;
    height: 31px;
    object-fit: contain;
}

.nh-client-brand-name {
    max-width: 164px;
    color: var(--nh-ink-900);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.nh-icon-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    min-width: 36px;
    height: 36px;
    padding: 0;
    color: var(--nh-ink-600) !important;
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: 8px;
    transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.nh-icon-button:hover,
.nh-icon-button:focus {
    color: var(--nh-blue-600) !important;
    background: var(--nh-blue-100);
    border-color: rgba(24, 95, 165, 0.3);
    text-decoration: none;
}

.nh-sidebar-close,
.nh-sidebar-open {
    display: none;
}

.nh-client-nav {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 2px;
}

.nh-nav-label {
    display: block;
    margin: 13px 10px 5px;
    color: var(--nh-ink-400);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

.nh-nav-label:first-child {
    margin-top: 1px;
}

.nh-nav-link {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 39px;
    padding: 9px 10px;
    color: var(--nh-ink-600) !important;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none !important;
    border-radius: 8px;
    transition: color 0.15s ease, background 0.15s ease;
}

.nh-nav-link i {
    width: 17px;
    color: var(--nh-ink-400);
    font-size: 15px;
    text-align: center;
}

.nh-nav-link:hover {
    color: var(--nh-ink-900) !important;
    background: var(--nh-page);
}

.nh-nav-link.active {
    color: var(--nh-blue-600) !important;
    font-weight: 600;
    background: var(--nh-blue-100);
}

.nh-nav-link.active i {
    color: var(--nh-blue-600);
}

.nh-sidebar-footer {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--nh-line);
}

.nh-system-status {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 9px 10px;
    color: var(--nh-green) !important;
    font-size: 11.5px;
    font-weight: 600;
    text-decoration: none !important;
    background: var(--nh-green-bg);
    border: 1px solid rgba(23, 138, 93, 0.22);
    border-radius: 8px;
}

.nh-system-status .fa-chevron-right {
    margin-left: auto;
    font-size: 9px;
}

.nh-status-dot {
    width: 7px;
    height: 7px;
    background: var(--nh-green);
    border-radius: 50%;
    box-shadow: 0 0 0 4px rgba(23, 138, 93, 0.1);
}

.nh-logout-link {
    color: var(--nh-red) !important;
}

.nh-logout-link i {
    color: var(--nh-red);
}

.nh-client-overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 1030;
    background: rgba(10, 24, 48, 0.52);
}

.nh-client-portal.nh-sidebar-visible {
    overflow: hidden;
}

.nh-client-main {
    min-width: 0;
}

.nh-client-topbar {
    position: sticky;
    top: 0;
    z-index: 1020;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    height: 64px;
    padding: 0 24px;
    background: rgba(255, 255, 255, 0.98);
    border-bottom: 1px solid var(--nh-line);
}

.nh-topbar-left,
.nh-topbar-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.nh-global-search {
    display: flex;
    align-items: center;
    gap: 9px;
    width: min(320px, 32vw);
    height: 38px;
    padding: 0 12px;
    color: var(--nh-ink-400);
    background: #f8fbff;
    border: 1px solid var(--nh-line);
    border-radius: 8px;
}

.nh-global-search input {
    width: 100%;
    height: auto;
    padding: 0;
    color: var(--nh-ink-900);
    font-family: inherit;
    font-size: 12.5px;
    background: transparent;
    border: 0;
    outline: 0;
}

.nh-global-search input::placeholder {
    color: var(--nh-ink-400);
}

.nh-order-button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 8px 14px;
    color: #fff !important;
    font-size: 12.5px;
    font-weight: 600;
    text-decoration: none !important;
    background: var(--nh-navy-800);
    border: 1px solid var(--nh-navy-800);
    border-radius: 8px;
}

.nh-order-button:hover {
    background: var(--nh-blue-600);
    border-color: var(--nh-blue-600);
}

.nh-account-chip {
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 190px;
    padding-left: 10px;
    color: var(--nh-ink-900) !important;
    text-decoration: none !important;
    border-left: 1px solid var(--nh-line);
}

.nh-account-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    min-width: 34px;
    height: 34px;
    color: #8d641d;
    background: var(--nh-gold-bg);
    border: 1px solid rgba(217, 154, 50, 0.55);
    border-radius: 50%;
}

.nh-account-copy {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-width: 0;
}

.nh-account-copy strong,
.nh-account-copy small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nh-account-copy strong {
    color: var(--nh-ink-900);
    font-size: 12.5px;
    font-weight: 600;
}

.nh-account-copy small {
    color: var(--nh-ink-500);
    font-size: 10.5px;
}

.nh-account-chip > .fa-chevron-right {
    color: var(--nh-ink-400);
    font-size: 9px;
}

.nh-client-body {
    min-height: calc(100vh - 64px);
    padding: 0 !important;
    background: var(--nh-page);
}

.nh-client-notices {
    width: 100%;
    max-width: 1380px;
    padding: 14px 24px 0;
}

.nh-client-notices:empty {
    display: none;
}

.nh-client-notices .alert:last-child {
    margin-bottom: 0;
}

.nh-client-content {
    width: 100%;
    max-width: 1380px;
    margin: 0;
    padding: 22px 24px 28px;
}

.nh-client-body > .nh-client-content > .row {
    margin-right: -8px;
    margin-left: -8px;
}

.nh-client-body > .nh-client-content > .row > [class*="col-"] {
    padding-right: 8px;
    padding-left: 8px;
}

.nh-page-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid #e5edf5;
}

.nh-page-heading-copy {
    min-width: 0;
}

.nh-page-kicker {
    display: block;
    margin-bottom: 3px;
    color: var(--nh-blue-600);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

.nh-page-heading h1 {
    margin: 0 0 4px;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.25;
}

.nh-page-heading p {
    max-width: 660px;
    margin: 0;
    color: var(--nh-ink-500);
    font-size: 12.5px;
}

.nh-page-actions {
    display: flex;
    flex-shrink: 0;
    gap: 8px;
}

/* Shared WHMCS components */
.nh-client-portal .card,
.nh-client-portal .panel,
.nh-client-portal .tt-custom-card,
.nh-client-portal .table-container,
.nh-client-portal .domain-promo-box,
.nh-client-portal .affiliate-stat,
.nh-client-portal .kb-category {
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: var(--nh-radius-lg);
    box-shadow: var(--nh-shadow);
}

.nh-client-portal .card {
    overflow: hidden;
}

.nh-client-portal .card-header,
.nh-client-portal .panel-heading {
    padding: 15px 18px;
    color: var(--nh-ink-900);
    background: linear-gradient(180deg, #fbfdff 0%, #f4f8fc 100%);
    border-bottom: 1px solid #e5edf5;
}

.nh-client-portal .card-header .card-title,
.nh-client-portal .card-title,
.nh-client-portal .panel-title {
    margin: 0;
    color: var(--nh-ink-900);
    font-size: 15px;
    font-weight: 800;
}

.nh-client-portal .card-body,
.nh-client-portal .panel-body {
    padding: 18px;
}

.nh-client-portal .card-footer,
.nh-client-portal .panel-footer {
    padding: 12px 18px;
    background: #f8fafc;
    border-top: 1px solid #e8eef5;
}

.nh-client-portal .btn {
    min-height: 36px;
    padding: 8px 13px;
    font-family: inherit;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0;
    border-radius: 7px;
    box-shadow: none !important;
}

.nh-client-portal .btn-sm,
.nh-client-portal .btn-xs {
    min-height: 30px;
    padding: 5px 10px;
    font-size: 11.5px;
}

.nh-client-portal .btn-lg {
    min-height: 43px;
    padding: 10px 17px;
    font-size: 13px;
}

.nh-client-portal .btn-primary,
.nh-client-portal .btn-info {
    color: #fff;
    background: var(--nh-blue-600);
    border-color: var(--nh-blue-600);
}

.nh-client-portal .btn-primary:hover,
.nh-client-portal .btn-info:hover {
    color: #fff;
    background: #075bbd;
    border-color: #075bbd;
}

.nh-client-portal .btn-default,
.nh-client-portal .btn-secondary,
.nh-client-portal .btn-outline-primary {
    color: var(--nh-ink-600);
    background: var(--nh-surface);
    border-color: var(--nh-line);
}

.nh-client-portal .btn-default:hover,
.nh-client-portal .btn-secondary:hover,
.nh-client-portal .btn-outline-primary:hover {
    color: var(--nh-blue-600);
    background: var(--nh-blue-100);
    border-color: rgba(24, 95, 165, 0.35);
}

.nh-client-portal .btn-success {
    color: #fff;
    background: var(--nh-green);
    border-color: var(--nh-green);
}

.nh-client-portal .btn-danger {
    color: #fff;
    background: var(--nh-red);
    border-color: var(--nh-red);
}

.nh-client-portal .form-control,
.nh-client-portal .custom-select,
.nh-client-portal select,
.nh-client-portal textarea,
.nh-client-portal input[type="text"],
.nh-client-portal input[type="email"],
.nh-client-portal input[type="password"],
.nh-client-portal input[type="number"],
.nh-client-portal input[type="tel"],
.nh-client-portal input[type="url"],
.nh-client-portal input[type="date"],
.nh-client-portal input[type="search"] {
    min-height: 40px;
    color: var(--nh-ink-900);
    font-family: inherit;
    font-size: 13px;
    background-color: var(--nh-surface);
    border: 1px solid #d8e0ea;
    border-radius: 8px;
    box-shadow: none;
}

.nh-client-portal textarea.form-control,
.nh-client-portal textarea {
    min-height: 120px;
}

.nh-client-portal .form-control:focus,
.nh-client-portal select:focus,
.nh-client-portal textarea:focus,
.nh-client-portal input:focus {
    border-color: var(--nh-blue-500);
    box-shadow: 0 0 0 3px rgba(44, 116, 190, 0.12);
}

.nh-client-portal label,
.nh-client-portal .col-form-label {
    color: var(--nh-ink-700);
    font-size: 12px;
    font-weight: 600;
}

.nh-client-portal .text-muted,
.nh-client-portal small,
.nh-client-portal .help-block {
    color: var(--nh-ink-500) !important;
}

.nh-client-portal hr {
    border-color: var(--nh-line);
}

.nh-client-portal .alert {
    padding: 13px 15px;
    font-size: 12.5px;
    border-width: 1px;
    border-radius: 8px;
}

.nh-client-portal .alert-info,
.nh-client-portal .alert-primary {
    color: #164f82;
    background: var(--nh-blue-100);
    border-color: rgba(24, 95, 165, 0.22);
}

.nh-client-portal .alert-success {
    color: #116943;
    background: var(--nh-green-bg);
    border-color: rgba(23, 138, 93, 0.24);
}

.nh-client-portal .alert-warning {
    color: #7c5715;
    background: var(--nh-gold-bg);
    border-color: rgba(217, 154, 50, 0.3);
}

.nh-client-portal .alert-danger {
    color: #96332f;
    background: var(--nh-red-bg);
    border-color: rgba(199, 67, 63, 0.25);
}

.nh-client-portal .nav-tabs {
    gap: 4px;
    margin-bottom: 16px;
    padding: 5px;
    overflow-x: auto;
    flex-wrap: nowrap;
    background: #eef3f8;
    border: 0;
    border-radius: 9px;
}

.nh-client-portal .nav-tabs .nav-item {
    flex: 0 0 auto;
    margin: 0;
}

.nh-client-portal .nav-tabs .nav-link {
    padding: 8px 12px;
    color: var(--nh-ink-600);
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    background: transparent;
    border: 0;
    border-radius: 7px;
}

.nh-client-portal .nav-tabs .nav-link.active,
.nh-client-portal .nav-tabs .nav-link:hover {
    color: var(--nh-blue-600);
    background: var(--nh-surface);
    box-shadow: 0 1px 2px rgba(10, 24, 48, 0.08);
}

/* Contextual WHMCS sidebars */
.nh-client-portal #main-body .sidebar .card-sidebar {
    margin-bottom: 12px !important;
    overflow: hidden;
}

.nh-client-portal #main-body .sidebar .card-header {
    padding: 13px 14px;
}

.nh-client-portal #main-body .sidebar .card-title {
    font-family: "Inter", sans-serif;
    font-size: 12.5px;
}

.nh-client-portal #main-body .sidebar .list-group-item {
    padding: 10px 14px;
    color: var(--nh-ink-600);
    font-size: 12px;
    background: var(--nh-surface);
    border-color: var(--nh-line);
}

.nh-client-portal #main-body .sidebar .list-group-item:hover,
.nh-client-portal #main-body .sidebar .list-group-item.active {
    color: var(--nh-blue-600);
    background: var(--nh-blue-100);
}

.nh-client-portal #main-body .sidebar-menu-item-wrapper {
    display: flex;
    align-items: center;
}

.nh-client-portal #main-body .sidebar-menu-item-icon-wrapper {
    width: 22px;
}

.nh-client-portal #main-body .sidebar-menu-item-badge {
    margin-left: auto;
}

/* Data tables */
.nh-client-portal .table-container {
    position: relative;
    margin-bottom: 18px;
    overflow-x: auto;
}

.nh-client-portal table.table {
    min-width: 650px;
    margin: 0;
    color: var(--nh-ink-700);
    background: var(--nh-surface);
}

.nh-client-portal table.table thead th {
    padding: 11px 14px;
    color: var(--nh-ink-500);
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
    white-space: nowrap;
    background: #f9fbfd;
    border-top: 0;
    border-bottom: 1px solid var(--nh-line);
}

.nh-client-portal table.table tbody td {
    padding: 14px;
    font-size: 12.5px;
    vertical-align: middle;
    border-top: 1px solid var(--nh-line);
}

.nh-client-portal table.table tbody tr {
    transition: background 0.15s ease;
}

.nh-client-portal table.table tbody tr:hover {
    background: #f9fbfd;
}

.nh-client-portal table.table tbody tr[onclick] {
    cursor: pointer;
}

.nh-client-portal .dataTables_wrapper > .row:first-child,
.nh-client-portal .dataTables_wrapper > .row:last-child {
    align-items: center;
    margin: 0 0 12px;
}

.nh-client-portal .dataTables_wrapper .dataTables_length,
.nh-client-portal .dataTables_wrapper .dataTables_filter,
.nh-client-portal .dataTables_wrapper .dataTables_info {
    color: var(--nh-ink-500);
    font-size: 11.5px;
}

.nh-client-portal .dataTables_wrapper .dataTables_filter input,
.nh-client-portal .dataTables_wrapper select {
    min-height: 36px;
    margin-left: 6px;
}

.nh-client-portal .pagination {
    gap: 4px;
}

.nh-client-portal .page-link {
    min-width: 32px;
    color: var(--nh-ink-600);
    font-size: 11.5px;
    text-align: center;
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: 7px !important;
}

.nh-client-portal .page-item.active .page-link {
    color: #fff;
    background: var(--nh-blue-600);
    border-color: var(--nh-blue-600);
}

.nh-client-portal .label.status,
.nh-client-portal .badge,
.nh-client-portal .status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 22px;
    padding: 3px 8px;
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.2;
    border-radius: 20px;
}

.nh-client-portal .status-active,
.nh-client-portal .status-paid,
.nh-client-portal .status-completed,
.nh-client-portal .label-success,
.nh-client-portal .badge-success {
    color: var(--nh-green) !important;
    background: var(--nh-green-bg) !important;
}

.nh-client-portal .status-pending,
.nh-client-portal .status-unpaid,
.nh-client-portal .status-inprogress,
.nh-client-portal .label-warning,
.nh-client-portal .badge-warning {
    color: #8d641d !important;
    background: var(--nh-gold-bg) !important;
}

.nh-client-portal .status-suspended,
.nh-client-portal .status-overdue,
.nh-client-portal .status-cancelled,
.nh-client-portal .label-danger,
.nh-client-portal .badge-danger {
    color: var(--nh-red) !important;
    background: var(--nh-red-bg) !important;
}

.nh-client-portal .status-terminated,
.nh-client-portal .status-closed,
.nh-client-portal .status-expired {
    color: var(--nh-ink-500) !important;
    background: #eef1f5 !important;
}

/* Product and domain details */
.nh-client-portal .product-details > .row {
    align-items: stretch;
}

.nh-client-portal .product-status {
    position: relative;
    height: 100%;
    min-height: 230px;
    padding: 26px 22px 50px;
    color: var(--nh-ink-700);
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: 10px;
    box-shadow: var(--nh-shadow);
    overflow: hidden;
}

.nh-client-portal .product-status::before {
    position: absolute;
    top: 0;
    right: auto;
    left: 0;
    width: 100%;
    height: 4px;
    background: var(--nh-blue-600);
    content: "";
}

.nh-client-portal .product-status h3,
.nh-client-portal .product-status .product-icon {
    color: var(--nh-ink-900);
}

.nh-client-portal .product-status .product-icon .fa-circle {
    color: var(--nh-blue-100);
}

.nh-client-portal .product-status .product-icon .fa-inverse {
    color: var(--nh-blue-600);
}

.nh-client-portal .product-status h3 {
    margin: 12px 0 4px;
    font-size: 20px;
}

.nh-client-portal .product-status h4 {
    color: var(--nh-ink-500);
    font-family: "Inter", sans-serif;
    font-size: 12px;
    font-weight: 500;
}

.nh-client-portal .product-status-text {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 10px 15px;
    color: var(--nh-ink-600);
    font-size: 11px;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    background: #f8fafc;
    border-top: 1px solid #e8eef5;
}

.nh-client-portal .product-actions-wrapper {
    gap: 8px;
    margin-top: 10px;
}

.nh-client-portal .product-actions-wrapper > [class*="col-"] {
    padding: 0;
}

.nh-client-portal .product-details h4.mb-1,
.nh-client-portal .tab-pane h5 {
    margin-bottom: 3px !important;
    color: var(--nh-ink-500);
    font-family: "Inter", sans-serif;
    font-size: 10.5px;
    font-weight: 700;
    text-transform: uppercase;
}

.nh-client-portal .product-details h4.mb-1 + p {
    margin-bottom: 14px;
    color: var(--nh-ink-900);
    font-size: 13px;
    font-weight: 600;
}

.nh-client-portal .moduleoutput {
    margin: 16px 0;
    padding: 16px;
    background: #f9fbfd;
    border: 1px solid var(--nh-line);
    border-radius: 9px;
}

.nh-client-portal .list-group-item {
    padding: 12px 15px;
    color: var(--nh-ink-700);
    font-size: 12.5px;
    background: var(--nh-surface);
    border-color: var(--nh-line);
}

.nh-client-portal a.list-group-item:hover {
    color: var(--nh-blue-600);
    background: #f9fbfd;
}

.nh-client-portal .modal-content {
    overflow: hidden;
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: 10px;
    box-shadow: var(--nh-shadow-lg);
}

.nh-client-portal .modal-header,
.nh-client-portal .modal-footer {
    padding: 14px 18px;
    border-color: var(--nh-line);
}

.nh-client-portal .modal-body {
    padding: 18px;
}

.nh-client-portal .modal-title {
    font-size: 15px;
}

.nh-client-portal .custom-control-input:checked ~ .custom-control-label::before,
.nh-client-portal .form-check-input:checked,
.nh-client-portal input[type="checkbox"]:checked,
.nh-client-portal input[type="radio"]:checked {
    accent-color: var(--nh-blue-600);
}

/* Tickets */
.nh-client-portal .ticket-number {
    display: inline-block;
    margin-right: 7px;
    color: var(--nh-blue-600);
    font-family: monospace;
    font-size: 11.5px;
    font-weight: 700;
}

.nh-client-portal .ticket-subject {
    color: var(--nh-ink-900);
    font-weight: 600;
}

.nh-client-portal .view-ticket > .card-body:first-child,
.nh-client-portal .view-ticket .bg-primary-light {
    padding: 17px 19px !important;
    background: linear-gradient(180deg, #fbfdff 0%, #f4f8fc 100%) !important;
    border-bottom: 1px solid #e5edf5;
}

.nh-client-portal .view-ticket > .card-body:first-child h3,
.nh-client-portal .view-ticket > .card-body:first-child p,
.nh-client-portal .view-ticket > .card-body:first-child strong {
    color: var(--nh-ink-900);
}

.nh-client-portal .ticket-reply {
    border: 1px solid var(--nh-line);
    border-radius: 9px;
    overflow: hidden;
}

.nh-client-portal .ticket-reply.staff {
    border-left: 3px solid var(--nh-blue-500);
}

.nh-client-portal .ticket-reply:not(.staff) {
    border-left: 3px solid var(--nh-gold);
}

.nh-client-portal .ticket-reply .posted-by {
    padding: 10px 13px;
    color: var(--nh-ink-500);
    font-size: 11.5px;
    background: #f9fbfd;
    border-bottom: 1px solid var(--nh-line);
}

.nh-client-portal .ticket-reply .message {
    color: var(--nh-ink-700);
    font-size: 13px;
    line-height: 1.7;
}

.nh-client-portal #ticketReplyContainer {
    background: var(--nh-surface) !important;
}

/* Knowledge base, news and downloads */
.nh-client-portal .kb-search,
.nh-client-portal .home-kb-search {
    padding: 22px;
    background: linear-gradient(180deg, #fbfdff 0%, #f4f8fc 100%);
    border: 1px solid var(--nh-line);
    border-radius: var(--nh-radius-lg);
    box-shadow: var(--nh-shadow);
}

.nh-client-portal .kb-search h2,
.nh-client-portal .home-kb-search h2 {
    color: var(--nh-ink-900);
}

.nh-client-portal .kb-article-item,
.nh-client-portal .announcement-single,
.nh-client-portal .download-item {
    padding: 15px 0;
    border-bottom: 1px solid var(--nh-line);
}

.nh-client-portal .kb-article-item:last-child,
.nh-client-portal .announcement-single:last-child,
.nh-client-portal .download-item:last-child {
    border-bottom: 0;
}

.nh-client-portal .tt-news-wrap,
.nh-client-portal .announcements {
    overflow: hidden;
    background: var(--nh-surface) !important;
    border: 1px solid var(--nh-line);
    border-radius: var(--nh-radius-lg) !important;
    box-shadow: var(--nh-shadow);
}

.nh-client-portal .tt-news-single,
.nh-client-portal .announcement {
    border-bottom: 1px solid var(--nh-line);
}

.nh-client-portal .tt-news-single:last-child,
.nh-client-portal .announcement:last-child {
    border-bottom: 0;
}

.nh-client-portal .tt-news-single h2 a {
    color: var(--nh-ink-900);
    font-weight: 600;
}

.nh-client-portal .tt-news-single article {
    color: var(--nh-ink-600);
    font-size: 12.5px;
    line-height: 1.7;
}

.nh-client-portal .affiliate-stat {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 132px;
    padding: 18px;
    overflow: hidden;
    color: var(--nh-ink-900);
    background: var(--nh-surface) !important;
    border: 1px solid var(--nh-line);
    border-radius: 10px;
    box-shadow: var(--nh-shadow);
}

.nh-client-portal .affiliate-stat i {
    width: 32px;
    height: 32px;
    margin-bottom: 12px;
    color: var(--nh-blue-600);
    font-size: 15px;
    line-height: 32px;
    text-align: center;
    background: var(--nh-blue-100);
    border-radius: 8px;
}

.nh-client-portal .affiliate-stat span {
    color: var(--nh-ink-900);
    font-family: "Inter", "Open Sans", sans-serif;
    font-size: 23px;
    font-weight: 700;
}

.nh-client-portal .affiliate-stat small {
    color: var(--nh-ink-500) !important;
    font-size: 11px;
}

.nh-client-portal .download-category,
.nh-client-portal .download,
.nh-client-portal .kb-category {
    transition: transform 0.15s ease, border-color 0.15s ease;
}

.nh-client-portal .download-category:hover,
.nh-client-portal .download:hover,
.nh-client-portal .kb-category:hover {
    border-color: rgba(24, 95, 165, 0.35);
    transform: translateY(-2px);
}

.nh-client-portal .two-factor-client-area,
.nh-client-portal .user-management-table,
.nh-client-portal .contact-card {
    color: var(--nh-ink-700);
}

.nh-client-portal .input-group-text,
.nh-client-portal .custom-file-label {
    min-height: 40px;
    color: var(--nh-ink-600);
    font-size: 12px;
    background: #f9fbfd;
    border-color: #d8e0ea;
}

/* Page-family refinements based on the dashboard card system. */
.nh-client-portal .nh-client-content > h2.card-title,
.nh-client-portal .nh-client-content > h3.card-title,
.nh-client-portal .main-content > h2.card-title,
.nh-client-portal .main-content > h3.card-title,
.nh-client-portal form > h3.card-title {
    margin: 0 0 8px;
    color: var(--nh-ink-900);
    font-size: 17px;
    font-weight: 800;
    line-height: 1.3;
}

.nh-client-portal .tt-overview > .row.mb-3 {
    margin-bottom: 0 !important;
    padding: 12px 0;
    border-bottom: 1px solid #e8eef5;
}

.nh-client-portal .tt-overview > .row.mb-3:first-of-type {
    padding-top: 0;
}

.nh-client-portal .tt-overview > .row.mb-3:last-of-type {
    border-bottom: 0;
}

.nh-client-portal .tt-overview h5,
.nh-client-portal .tt-overview .h5 {
    margin: 0 0 3px;
    color: var(--nh-ink-500);
    font-family: "Inter", "Open Sans", sans-serif;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.nh-client-portal .tts-support-department {
    transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.nh-client-portal .tts-support-department:hover {
    border-color: rgba(9, 105, 218, 0.35);
    box-shadow: 0 10px 28px rgba(31, 53, 78, 0.08);
    transform: translateY(-2px);
}

.nh-client-portal .tts-support-department .fa-ticket {
    color: var(--nh-blue-600);
}

.nh-client-portal .well,
.nh-client-portal #invitePermissions {
    padding: 15px;
    background: #f7faff;
    border: 1px solid #e1eaf4;
    border-radius: 8px;
    box-shadow: none;
}

.nh-client-portal .tt-custom-card > table,
.nh-client-portal .table-container > table {
    margin-bottom: 0;
}

.nh-template-account-paymentmethods .tt-custom-card,
.nh-template-account-user-management .tt-custom-card,
.nh-template-clientareadomaindns .card-body {
    overflow-x: auto;
}

.nh-template-clientareadomaindns .card-body > form {
    min-width: 720px;
}

.nh-client-portal .responsive-tabs-sm-connector {
    display: none;
}

.nh-client-portal .product-details-tab-container,
.nh-client-portal .tab-content.p-4 {
    padding: 18px !important;
    background: var(--nh-surface) !important;
    border: 1px solid var(--nh-line);
    border-radius: 0 0 10px 10px;
}

.nh-client-portal .providerLinkingFeedback {
    margin-bottom: 14px;
}

/* Dashboard */
.nh-dashboard-hero {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 22px;
    margin-bottom: 18px;
    padding: 24px 26px;
    overflow: hidden;
    color: #fff;
    background: var(--nh-navy-900);
    border-radius: var(--nh-radius-lg);
}

.nh-dashboard-hero::after {
    position: absolute;
    top: 0;
    right: 0;
    width: 120px;
    height: 6px;
    background: var(--nh-gold);
    content: "";
}

.nh-dashboard-hero-copy,
.nh-dashboard-hero-actions {
    position: relative;
    z-index: 1;
}

.nh-dashboard-eyebrow {
    display: block;
    margin-bottom: 5px;
    color: #90b7d9;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}

.nh-dashboard-hero h1 {
    margin: 0 0 6px;
    color: #fff;
    font-size: 23px;
    font-weight: 650;
}

.nh-dashboard-hero p {
    max-width: 600px;
    margin: 0;
    color: #aec3dc;
    font-size: 13px;
}

.nh-dashboard-hero-actions {
    display: flex;
    flex-shrink: 0;
    gap: 8px;
}

.nh-dashboard-hero .nh-hero-primary,
.nh-dashboard-hero .nh-hero-secondary {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 8px 14px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 8px;
}

.nh-dashboard-hero .nh-hero-primary {
    color: #3a2a05;
    background: var(--nh-gold);
    border: 1px solid var(--nh-gold);
}

.nh-dashboard-hero .nh-hero-secondary {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.nh-dashboard-stats {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}

.nh-dashboard-stat {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-height: 125px;
    padding: 15px;
    color: var(--nh-ink-900) !important;
    text-decoration: none !important;
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: 10px;
    box-shadow: var(--nh-shadow);
    transition: transform 0.15s ease, border-color 0.15s ease;
}

.nh-dashboard-stat:hover {
    border-color: rgba(24, 95, 165, 0.35);
    transform: translateY(-2px);
}

.nh-dashboard-stat-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.nh-dashboard-stat-icon,
.nh-quick-action-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    color: var(--nh-blue-600);
    background: var(--nh-blue-100);
    border-radius: 8px;
}

.nh-dashboard-stat.gold .nh-dashboard-stat-icon {
    color: #8d641d;
    background: var(--nh-gold-bg);
}

.nh-dashboard-stat.green .nh-dashboard-stat-icon {
    color: var(--nh-green);
    background: var(--nh-green-bg);
}

.nh-dashboard-stat.red .nh-dashboard-stat-icon {
    color: var(--nh-red);
    background: var(--nh-red-bg);
}

.nh-dashboard-stat-value {
    color: var(--nh-ink-900);
    font-family: "Space Grotesk", sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
}

.nh-dashboard-stat-label {
    color: var(--nh-ink-500);
    font-size: 11.5px;
    font-weight: 500;
}

.nh-dashboard-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 16px;
    align-items: start;
}

.nh-dashboard-column {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

.nh-dashboard-panel {
    overflow: hidden;
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: var(--nh-radius-lg);
    box-shadow: var(--nh-shadow);
}

.nh-dashboard-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 58px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--nh-line);
}

.nh-dashboard-panel-head h2 {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
}

.nh-dashboard-panel-head p {
    margin: 2px 0 0;
    color: var(--nh-ink-500);
    font-size: 11px;
}

.nh-dashboard-panel-link {
    flex-shrink: 0;
    color: var(--nh-blue-600) !important;
    font-size: 11.5px;
    font-weight: 600;
    text-decoration: none !important;
}

.nh-dashboard-panel-body {
    padding: 17px 18px;
}

.nh-dashboard-panel-body:empty {
    display: none;
}

.nh-dashboard-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.nh-dashboard-list > a,
.nh-dashboard-list > div {
    display: flex;
    align-items: center;
    min-height: 50px;
    padding: 11px 18px;
    color: var(--nh-ink-700) !important;
    font-size: 12.5px;
    text-decoration: none !important;
    border-top: 1px solid var(--nh-line);
}

.nh-dashboard-list > :first-child {
    border-top: 0;
}

.nh-dashboard-list > a:hover {
    background: #f9fbfd;
}

.nh-dashboard-list .badge {
    margin-left: auto;
}

.nh-quick-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 16px;
}

.nh-quick-action {
    display: flex;
    flex-direction: column;
    gap: 9px;
    min-height: 112px;
    padding: 14px;
    color: var(--nh-ink-900) !important;
    text-decoration: none !important;
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: 9px;
    transition: transform 0.15s ease, border-color 0.15s ease;
}

.nh-quick-action:hover {
    border-color: var(--nh-blue-500);
    transform: translateY(-2px);
}

.nh-quick-action strong {
    display: block;
    color: var(--nh-ink-900);
    font-size: 12px;
}

.nh-quick-action small {
    color: var(--nh-ink-500) !important;
    font-size: 10.5px;
    line-height: 1.4;
}

.nh-wallet-card {
    padding: 19px;
    color: #fff;
    background: var(--nh-navy-950);
    border-radius: var(--nh-radius-lg);
}

.nh-wallet-card span {
    display: block;
    color: #8fa6c2;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}

.nh-wallet-card strong {
    display: block;
    margin: 5px 0 14px;
    color: #fff;
    font-family: "Space Grotesk", sans-serif;
    font-size: 25px;
}

.nh-wallet-actions {
    display: flex;
    gap: 8px;
}

.nh-wallet-actions a {
    flex: 1;
    padding: 8px 10px;
    color: #fff !important;
    font-size: 11.5px;
    font-weight: 600;
    text-align: center;
    text-decoration: none !important;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 7px;
}

.nh-wallet-actions a:first-child {
    color: #3a2a05 !important;
    background: var(--nh-gold);
    border-color: var(--nh-gold);
}

.nh-support-card {
    padding: 17px;
    background: var(--nh-blue-100);
    border: 1px solid rgba(24, 95, 165, 0.2);
    border-radius: var(--nh-radius-lg);
}

.nh-support-card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    margin-bottom: 10px;
    color: var(--nh-blue-600);
    background: var(--nh-surface);
    border-radius: 8px;
}

.nh-support-card h3 {
    margin: 0 0 5px;
    font-size: 14px;
}

.nh-support-card p {
    margin: 0 0 12px;
    color: var(--nh-ink-600);
    font-size: 11.5px;
}

.nh-support-card a {
    font-size: 11.5px;
    font-weight: 700;
}

@media (max-width: 1180px) {
    .nh-dashboard-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .nh-dashboard-grid {
        grid-template-columns: minmax(0, 1fr) 290px;
    }

    .nh-account-chip {
        min-width: 0;
    }

    .nh-account-copy,
    .nh-account-chip > .fa-chevron-right {
        display: none;
    }
}

@media (max-width: 991.98px) {
    .nh-client-app {
        display: block;
    }

    .nh-client-sidebar {
        position: fixed;
        left: 0;
        width: min(286px, 86vw);
        box-shadow: var(--nh-shadow-lg);
        transform: translateX(-105%);
    }

    .nh-client-sidebar.open {
        transform: translateX(0);
    }

    .nh-client-overlay.show {
        display: block;
    }

    .nh-sidebar-close,
    .nh-sidebar-open {
        display: inline-flex;
    }

    .nh-client-topbar {
        padding: 0 16px;
    }

    .nh-global-search {
        width: min(300px, 42vw);
    }

    .nh-client-content {
        padding: 18px 16px;
    }

    .nh-client-notices {
        padding: 12px 16px 0;
    }

    .nh-dashboard-grid {
        grid-template-columns: 1fr;
    }

    .nh-dashboard-column-side {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .nh-client-portal #main-body .sidebar {
        margin-bottom: 16px;
    }
}

@media (max-width: 767.98px) {
    .nh-client-topbar {
        gap: 8px;
        height: 58px;
        padding: 0 12px;
    }

    .nh-global-search,
    .nh-topbar-actions > .nh-icon-button {
        display: none;
    }

    .nh-order-button {
        width: 36px;
        min-width: 36px;
        height: 36px;
        padding: 0;
        justify-content: center;
    }

    .nh-order-button span {
        display: none;
    }

    .nh-account-chip {
        padding-left: 8px;
    }

    .nh-client-body {
        min-height: calc(100vh - 58px);
    }

    .nh-client-content {
        padding: 16px 12px;
    }

    .nh-client-notices {
        padding: 10px 12px 0;
    }

    .nh-page-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .nh-page-heading h1 {
        font-size: 21px;
    }

    .nh-page-actions {
        width: 100%;
    }

    .nh-page-actions .btn {
        flex: 1;
    }

    .nh-dashboard-hero {
        flex-direction: column;
        padding: 20px;
    }

    .nh-dashboard-hero h1 {
        font-size: 21px;
    }

    .nh-dashboard-hero-actions {
        width: 100%;
    }

    .nh-dashboard-hero-actions a {
        flex: 1;
        justify-content: center;
    }

    .nh-dashboard-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 9px;
    }

    .nh-dashboard-stat {
        min-height: 116px;
        padding: 13px;
    }

    .nh-dashboard-column-side {
        display: flex;
    }

    .nh-client-portal .dataTables_wrapper > .row:first-child > div,
    .nh-client-portal .dataTables_wrapper > .row:last-child > div {
        margin-bottom: 8px;
        text-align: left !important;
    }

    .nh-client-portal .dataTables_wrapper .dataTables_filter label,
    .nh-client-portal .dataTables_wrapper .dataTables_filter input {
        width: 100%;
        margin-left: 0;
    }

    .nh-client-portal .btn-group,
    .nh-client-portal .tt-button-group {
        display: flex;
        width: 100%;
        overflow-x: auto;
    }
}

@media (max-width: 420px) {
    .nh-dashboard-stats {
        grid-template-columns: 1fr 1fr;
    }

    .nh-dashboard-stat-label {
        font-size: 10.5px;
    }

    .nh-quick-actions {
        grid-template-columns: 1fr 1fr;
        padding: 12px;
    }

    .nh-quick-action {
        min-height: 106px;
        padding: 12px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .nh-client-portal *,
    .nh-client-portal *::before,
    .nh-client-portal *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}

/* Keep addon dialogs centered and usable within mobile browser viewports. */
body .nhsms-modal-backdrop {
    align-items: center !important;
    justify-content: center !important;
    padding: 12px !important;
    overflow-y: auto !important;
}

body .nhsms-modal {
    width: min(660px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
    margin: auto !important;
}

body .nhr-modal {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    width: min(900px, calc(100vw - 24px)) !important;
    max-height: calc(100vh - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
    margin: 0 !important;
    overflow-y: auto !important;
    box-sizing: border-box !important;
    transform: translate(-50%, -50%) !important;
}

@media (max-width: 700px) {
    body .nhsms-modal {
        padding: 24px 18px !important;
    }
}

/* Standalone invoice document */
.nh-invoice-page {
    min-height: 100vh;
    margin: 0;
    padding: 34px 18px;
    color: #334155;
    font-family: "Inter", "Open Sans", sans-serif;
    font-size: 13px;
    line-height: 1.6;
    background: #f6f9fc;
}

.nh-invoice-page .invoice-container {
    width: 100%;
    max-width: 980px;
    margin: 0 auto 18px;
    padding: 34px;
    background: #fff;
    border: 1px solid #dfe8f2;
    border-top: 5px solid #0969da;
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(31, 53, 78, 0.075);
}

.nh-invoice-page h1,
.nh-invoice-page h2,
.nh-invoice-page h3,
.nh-invoice-page h4,
.nh-invoice-page h5,
.nh-invoice-page h6 {
    color: #172033;
    font-family: "Inter", "Open Sans", sans-serif;
    letter-spacing: 0;
}

.nh-invoice-page .invoice-header {
    align-items: center;
    margin-bottom: 24px;
}

.nh-invoice-page .invoice-header img {
    width: auto;
    max-width: 190px;
    max-height: 58px;
}

.nh-invoice-page .invoice-header h5 {
    margin-top: 12px;
    font-size: 19px;
}

.nh-invoice-page .invoice-status span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 112px;
    min-height: 34px;
    padding: 7px 14px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 20px;
}

.nh-invoice-page .invoice-status .paid {
    color: #178a5d;
    background: #e8f6ef;
}

.nh-invoice-page .invoice-status .unpaid,
.nh-invoice-page .invoice-status .collections {
    color: #c7433f;
    background: #fbeae9;
}

.nh-invoice-page .invoice-status .draft,
.nh-invoice-page .invoice-status .refunded,
.nh-invoice-page .invoice-status .cancelled {
    color: #69788c;
    background: #eef1f5;
}

.nh-invoice-page .small-text,
.nh-invoice-page address {
    color: #69788c;
    font-size: 12px;
}

.nh-invoice-page .card,
.nh-invoice-page .panel {
    margin: 18px 0;
    overflow: hidden;
    background: #fff;
    border: 1px solid #dfe8f2;
    border-radius: 10px;
    box-shadow: none;
}

.nh-invoice-page .card-header,
.nh-invoice-page .panel-heading {
    padding: 14px 17px;
    color: #172033;
    background: linear-gradient(180deg, #fbfdff 0%, #f4f8fc 100%);
    border-bottom: 1px solid #e5edf5;
}

.nh-invoice-page .card-body,
.nh-invoice-page .panel-body {
    padding: 17px;
}

.nh-invoice-page .table {
    margin: 0;
    color: #334155;
}

.nh-invoice-page .table thead td,
.nh-invoice-page .table thead th {
    padding: 11px 13px;
    color: #64748b;
    font-size: 10.5px;
    text-transform: uppercase;
    background: #f9fbfd;
    border-color: #e5edf5;
}

.nh-invoice-page .table td,
.nh-invoice-page .table th {
    padding: 11px 13px;
    border-color: #e5edf5;
}

.nh-invoice-page .table .total-row {
    background: #f9fbfd;
}

.nh-invoice-page .btn {
    min-height: 35px;
    padding: 7px 12px;
    font-family: inherit;
    font-size: 12px;
    font-weight: 600;
    border-radius: 8px;
    box-shadow: none;
}

.nh-invoice-page .btn-primary,
.nh-invoice-page .payment-btn-container .btn {
    color: #fff;
    background: #0969da;
    border-color: #0969da;
}

.nh-invoice-page .btn-default {
    color: #475569;
    background: #fff;
    border-color: #dfe8f2;
}

.nh-invoice-page .form-control,
.nh-invoice-page .custom-select {
    min-height: 38px;
    font-family: inherit;
    font-size: 12.5px;
    border: 1px solid #d8e0ea;
    border-radius: 8px;
    box-shadow: none;
}

.nh-invoice-page > p.text-center a {
    color: #0969da;
    font-size: 12px;
    font-weight: 600;
}

@media (max-width: 575.98px) {
    .nh-invoice-page {
        padding: 12px;
    }

    .nh-invoice-page .invoice-container {
        padding: 20px 15px;
        border-radius: 9px;
    }

    .nh-invoice-page .invoice-header {
        gap: 14px;
    }
}

/* Unified client portal based on the 4,807-line dashboard reference. */
.nh-client-portal {
    --nh-navy-950: #08172d;
    --nh-navy-900: #08172d;
    --nh-navy-800: #0c447c;
    --nh-blue-600: #185fa5;
    --nh-blue-500: #2878bf;
    --nh-blue-100: #e8f1fa;
    --nh-page: #f5f8fb;
    --nh-surface: #ffffff;
    --nh-ink-900: #101826;
    --nh-ink-700: #334155;
    --nh-ink-600: #475569;
    --nh-ink-500: #64748b;
    --nh-ink-400: #95a3b8;
    --nh-line: #e2eaf3;
    --nh-gold: #de9d2f;
    --nh-gold-bg: #fff4df;
    --nh-green: #178a5d;
    --nh-green-bg: #e8f6ef;
    --nh-red: #c7433f;
    --nh-red-bg: #fbeae9;
    --nh-radius: 9px;
    --nh-radius-lg: 12px;
    --nh-shadow: 0 10px 24px rgba(10, 24, 48, 0.04);
    --nh-shadow-lg: 0 18px 46px rgba(8, 23, 45, 0.18);
    background: var(--nh-page);
    color: var(--nh-ink-900);
    font-family: "Inter", "Open Sans", sans-serif;
}

.nh-client-portal.nh-dark {
    --nh-page: #0a1424;
    --nh-surface: #111e33;
    --nh-line: #243752;
    --nh-ink-900: #eef3fa;
    --nh-ink-700: #d7e1ef;
    --nh-ink-600: #bac8da;
    --nh-ink-500: #a9b8cf;
    --nh-ink-400: #8092ab;
    --nh-blue-100: rgba(44, 116, 190, 0.24);
    --nh-gold-bg: rgba(222, 157, 47, 0.14);
    --nh-green-bg: rgba(23, 138, 93, 0.16);
    --nh-red-bg: rgba(199, 67, 63, 0.16);
}

.nh-client-app {
    grid-template-columns: 264px minmax(0, 1fr);
    background: var(--nh-page);
}

.nh-client-sidebar {
    width: 264px;
    padding: 22px 18px;
    background: var(--nh-surface);
    border-color: var(--nh-line);
}

.nh-client-brand {
    min-height: 40px;
    margin-bottom: 20px;
    padding: 0;
}

.nh-client-brand img {
    display: block;
    width: 165px;
    max-width: 100%;
    height: auto;
    max-height: 44px;
    object-fit: contain;
    object-position: left center;
}

.nh-client-portal.nh-dark .nh-client-brand img {
    filter: invert(1) brightness(1.8);
}

.nh-nav-title {
    margin: 22px 0 10px;
    color: #95a3b8;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.nh-client-nav,
.nh-subnav {
    display: flex;
    flex: none;
    flex-direction: column;
    gap: 5px;
}

.nh-nav-group {
    display: block;
    width: 100%;
}

.nh-nav-link,
.nh-nav-group > summary {
    display: flex;
    align-items: center;
    gap: 11px;
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    color: var(--nh-ink-900) !important;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
    list-style: none;
    background: transparent;
    border: 0;
    border-radius: 9px;
    cursor: pointer;
}

.nh-nav-link i,
.nh-nav-group > summary > i:first-child {
    width: 17px;
    color: var(--nh-ink-400);
    font-size: 15px;
    text-align: center;
}

.nh-nav-link:hover,
.nh-nav-link.active,
.nh-nav-group > summary:hover,
.nh-nav-group > summary.active,
.nh-nav-group[open] > summary {
    color: var(--nh-blue-600) !important;
    background: var(--nh-blue-100);
}

.nh-nav-link:hover i,
.nh-nav-link.active i,
.nh-nav-group > summary:hover > i:first-child,
.nh-nav-group > summary.active > i:first-child,
.nh-nav-group[open] > summary > i:first-child {
    color: var(--nh-blue-600);
}

.nh-nav-group > summary::-webkit-details-marker {
    display: none;
}

.nh-nav-group > summary::marker {
    content: "";
    font-size: 0;
}

.nh-nav-group .nh-chev {
    width: auto;
    margin-left: auto;
    color: var(--nh-ink-400);
    font-size: 11px;
    transition: transform 0.2s ease;
}

.nh-nav-group[open] .nh-chev {
    transform: rotate(180deg);
}

.nh-subnav {
    margin: 2px 0 8px 22px;
    padding-left: 13px;
    border-left: 1px solid var(--nh-line);
}

.nh-subnav a {
    display: block;
    width: 100%;
    padding: 8px 10px;
    color: var(--nh-ink-500) !important;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;
    border-radius: 8px;
}

.nh-subnav a:hover,
.nh-subnav a.active {
    color: var(--nh-blue-600) !important;
    background: var(--nh-blue-100);
}

.nh-nav-divider {
    height: 1px;
    margin: 12px 6px;
    background: var(--nh-line);
}

.nh-client-account-nav {
    padding-bottom: 4px;
}

.nh-side-card,
.nh-manager-card {
    margin-top: 18px;
    padding: 16px;
    border-radius: 10px;
}

.nh-side-card {
    color: #fff;
    background: linear-gradient(135deg, var(--nh-navy-800), var(--nh-navy-950));
}

.nh-side-card strong,
.nh-manager-card > strong {
    display: block;
    margin-bottom: 7px;
}

.nh-side-card p {
    margin: 0 0 14px;
    color: #c8d7ea;
    font-size: 12px;
}

.nh-manager-card {
    color: var(--nh-ink-900);
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
}

.nh-manager-card p {
    margin: 0 0 12px;
    color: var(--nh-ink-500);
    font-size: 12px;
}

.nh-manager-list {
    display: grid;
    gap: 8px;
}

.nh-manager-list a {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 2px 10px;
    align-items: center;
    padding: 10px 11px;
    color: var(--nh-ink-900) !important;
    background: var(--nh-page);
    border: 1px solid var(--nh-line);
    border-radius: 9px;
}

.nh-manager-list i {
    grid-row: span 2;
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    color: var(--nh-blue-600);
    background: var(--nh-blue-100);
    border-radius: 8px;
}

.nh-manager-list span {
    color: var(--nh-ink-500);
    font-size: 10.5px;
    font-weight: 700;
}

.nh-manager-list b {
    color: var(--nh-ink-900);
    font-size: 11.5px;
    line-height: 1.2;
    white-space: nowrap;
}

.nh-btn-gold {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 9px 14px;
    color: #221600 !important;
    font-size: 12px;
    font-weight: 800;
    background: var(--nh-gold);
    border: 0;
    border-radius: 9px;
}

.nh-client-topbar {
    justify-content: flex-start;
    gap: 12px;
    min-height: 64px;
    height: 64px;
    padding: 0 24px;
    background: var(--nh-surface);
    border-color: var(--nh-line);
}

.nh-topbar-spacer {
    flex: 1;
}

.nh-global-search {
    width: min(360px, 35vw);
    height: 36px;
    color: var(--nh-ink-500);
    background: var(--nh-page);
    border-color: var(--nh-line);
}

.nh-icon-button {
    color: var(--nh-ink-900) !important;
    background: var(--nh-surface);
    border-color: var(--nh-line);
}

.nh-order-button {
    min-height: 36px;
    padding: 9px 15px;
    font-size: 13px;
    font-weight: 700;
    background: var(--nh-navy-800);
    border-color: var(--nh-navy-800);
}

.nh-account-chip {
    min-width: 168px;
    padding-left: 16px;
}

.nh-account-copy strong {
    color: var(--nh-ink-900);
    font-size: 12.5px;
    font-weight: 700;
}

.nh-account-copy small {
    color: var(--nh-ink-500);
    font-size: 10.5px;
}

.nh-client-content,
.nh-client-notices {
    max-width: none;
}

.nh-client-content {
    padding: 24px;
}

body.nh-client-portal .nh-client-main > section#main-body.nh-client-body {
    margin: 0 !important;
    padding: 0 !important;
}

body.nh-client-portal .nh-client-content > .row > .col-lg-4.col-xl-3 {
    display: none !important;
}

body.nh-client-portal .nh-client-content > .row > .primary-content {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
}

.nh-page-heading {
    align-items: center;
    justify-content: flex-start;
    gap: 16px;
    margin-bottom: 18px;
    padding: 22px 24px;
    color: #fff;
    background: linear-gradient(120deg, var(--nh-navy-800), var(--nh-navy-950));
    border: 0;
    border-radius: 14px;
}

.nh-page-heading-icon {
    display: grid;
    flex: 0 0 44px;
    place-items: center;
    width: 44px;
    height: 44px;
    color: #fff;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 10px;
}

.nh-page-heading-copy {
    flex: 1;
}

.nh-page-kicker {
    margin-bottom: 4px;
    color: #9eb6d3;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.nh-page-heading h1 {
    margin-bottom: 4px;
    color: #fff;
    font-family: "Space Grotesk", "Inter", sans-serif;
    font-size: 22px;
}

.nh-page-heading p {
    color: #c5d8ee;
    font-size: 12.5px;
}

.nh-page-actions {
    margin-left: auto;
}

.nh-page-actions .btn-primary {
    color: #221600 !important;
    background: var(--nh-gold) !important;
    border-color: var(--nh-gold) !important;
}

.nh-page-actions .btn-default {
    color: #fff !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.22) !important;
}

.nh-client-portal .card,
.nh-client-portal .panel,
.nh-client-portal .product-status,
.nh-client-portal .table-container,
.nh-client-portal .kb-search,
.nh-client-portal .home-kb-search {
    background: var(--nh-surface) !important;
    border-color: var(--nh-line) !important;
    border-radius: 12px !important;
    box-shadow: var(--nh-shadow);
}

.nh-client-portal .card-header,
.nh-client-portal .panel-heading,
.nh-client-portal table.table thead th,
.nh-client-portal .ticket-reply .posted-by,
.nh-client-portal .product-status-text,
.nh-client-portal .moduleoutput,
.nh-client-portal .input-group-text,
.nh-client-portal .custom-file-label {
    color: var(--nh-ink-700);
    background: var(--nh-page) !important;
    border-color: var(--nh-line) !important;
}

.nh-client-portal .card-title,
.nh-client-portal .panel-title,
.nh-client-portal .modal-title {
    font-family: "Space Grotesk", "Inter", sans-serif;
}

.nh-client-portal .form-control,
.nh-client-portal .custom-select,
.nh-client-portal select,
.nh-client-portal textarea,
.nh-client-portal input {
    color: var(--nh-ink-900);
    background-color: var(--nh-surface);
    border-color: var(--nh-line);
}

.nh-client-portal table.table,
.nh-client-portal .list-group-item,
.nh-client-portal .modal-content,
.nh-client-portal .ticket-reply,
.nh-client-portal #ticketReplyContainer {
    color: var(--nh-ink-700);
    background: var(--nh-surface) !important;
    border-color: var(--nh-line) !important;
}

.nh-client-portal table.table tbody tr:hover,
.nh-client-portal a.list-group-item:hover {
    background: var(--nh-blue-100) !important;
}

/* Support workspace: keep add-on tools and ticket content inside the page flow. */
body.nh-client-portal #main-body > .nhsa-panel {
    visibility: hidden;
}

.nh-support-tools {
    margin: 0 0 18px;
}

.nh-support-tools[hidden] {
    display: none !important;
}

body.nh-client-portal #nhSupportTools .nhsa-panel {
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    align-items: center !important;
    gap: 14px !important;
    margin: 0 !important;
    padding: 16px 18px !important;
    color: var(--nh-ink-900) !important;
    background: var(--nh-surface) !important;
    border: 1px solid var(--nh-line) !important;
    border-radius: 12px !important;
    box-shadow: var(--nh-shadow) !important;
}

body.nh-client-portal #nhSupportTools .nhsa-panel-icon {
    display: grid !important;
    place-items: center;
    width: 42px;
    height: 42px;
    color: var(--nh-blue-600) !important;
    font-size: 15px !important;
    background: var(--nh-blue-100);
    border-radius: 9px;
}

body.nh-client-portal #nhSupportTools .nhsa-panel h3 {
    margin: 0 0 3px !important;
    color: var(--nh-ink-900) !important;
    font-family: "Space Grotesk", "Inter", sans-serif;
    font-size: 15px !important;
    font-weight: 700 !important;
}

body.nh-client-portal #nhSupportTools .nhsa-panel p,
body.nh-client-portal #nhSupportTools .nhsa-muted {
    color: var(--nh-ink-500) !important;
    font-size: 12px !important;
}

body.nh-client-portal #nhSupportTools .nhsa-picker select {
    min-height: 38px;
    margin-top: 5px;
    color: var(--nh-ink-900);
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: 8px;
}

body.nh-client-portal #nhSupportTools .nhsa-button {
    min-height: 38px;
    padding: 8px 14px !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    white-space: nowrap;
    background: var(--nh-blue-600) !important;
    border-color: var(--nh-blue-600) !important;
    border-radius: 8px !important;
}

body.nh-client-portal .nhsa-modal.nhsa-visible {
    align-items: center !important;
    justify-content: center !important;
    padding: 16px !important;
}

body.nh-client-portal .nhsa-dialog {
    max-height: calc(100vh - 32px);
    max-height: calc(100dvh - 32px);
    margin: auto !important;
    overflow-y: auto;
    border-color: var(--nh-line) !important;
    border-radius: 12px !important;
    box-shadow: var(--nh-shadow-lg) !important;
}

body.nh-template-supportticketslist .nh-client-content > .row > .col-lg-4,
body.nh-template-supportticketslist .nh-client-content > .row > .col-xl-3 {
    display: none !important;
}

body.nh-template-supportticketslist .nh-client-content > .row > .primary-content {
    flex: 0 0 100%;
    max-width: 100%;
}

.nh-empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 260px;
    padding: 36px 24px;
    text-align: center;
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: 12px;
    box-shadow: var(--nh-shadow);
}

.nh-empty-state-icon {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    margin-bottom: 16px;
    color: var(--nh-blue-600);
    font-size: 18px;
    background: var(--nh-blue-100);
    border-radius: 10px;
}

.nh-empty-state h2 {
    margin: 0 0 7px;
    color: var(--nh-ink-900);
    font-family: "Space Grotesk", "Inter", sans-serif;
    font-size: 19px;
}

.nh-empty-state p {
    max-width: 480px;
    margin: 0;
    color: var(--nh-ink-500);
    font-size: 12.5px;
}

.nh-empty-state-actions {
    display: flex;
    justify-content: center;
    gap: 9px;
    margin-top: 20px;
}

.nh-empty-state-actions .btn {
    min-height: 38px;
    padding: 9px 14px;
    border-radius: 8px;
}

@media (max-width: 991.98px) {
    .nh-client-sidebar {
        width: min(300px, 88vw);
    }

    .nh-client-content {
        padding: 18px 16px 24px;
    }
}

@media (max-width: 767.98px) {
    .nh-client-topbar {
        min-height: 58px;
        height: 58px;
        padding: 0 12px;
    }

    .nh-global-search {
        display: none;
    }

    .nh-topbar-spacer {
        display: block;
    }

    #nhOpenOnboarding {
        display: none;
    }

    .nh-account-chip {
        display: none;
    }

    .nh-page-heading {
        display: grid;
        grid-template-columns: 42px minmax(0, 1fr);
        gap: 12px;
        padding: 18px;
    }

    .nh-page-heading-icon {
        width: 42px;
        height: 42px;
    }

    .nh-page-heading h1 {
        font-size: 19px;
    }

    .nh-page-actions {
        grid-column: 1 / -1;
        width: 100%;
        margin-left: 0;
    }

    body.nh-client-portal #nhSupportTools .nhsa-panel {
        grid-template-columns: minmax(0, 1fr) !important;
        align-items: stretch !important;
    }

    body.nh-client-portal #nhSupportTools .nhsa-panel-icon {
        display: none !important;
    }

    body.nh-client-portal #nhSupportTools .nhsa-button,
    body.nh-client-portal #nhSupportTools .nhsa-picker select {
        width: 100%;
        max-width: none;
    }

    .nh-empty-state {
        min-height: 280px;
        padding: 34px 18px;
    }

    .nh-empty-state-actions {
        width: 100%;
        flex-direction: column;
    }

    .nh-empty-state-actions .btn {
        width: 100%;
    }
}

@media (max-width: 420px) {
    .nh-client-content {
        padding: 12px 10px 20px;
    }

    .nh-page-heading {
        padding: 16px;
        border-radius: 11px;
    }

    .nh-page-heading p {
        font-size: 11.5px;
    }
}

@media print {
    .nh-invoice-page {
        padding: 0;
        background: #fff;
    }

    .nh-invoice-page .invoice-container {
        max-width: none;
        margin: 0;
        padding: 0;
        border: 0;
        box-shadow: none;
    }
}

/* Standalone email history message */
.nh-email-page {
    min-height: 100vh;
    margin: 0;
    padding: 20px;
    color: #334155;
    font-family: "Inter", "Open Sans", sans-serif;
    background: #f6f9fc;
}

.nh-email-page > .card {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    overflow: hidden;
    background: #fff;
    border: 1px solid #dfe8f2;
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(31, 53, 78, 0.075);
}

.nh-email-page .card-header {
    padding: 18px 20px;
    background: linear-gradient(180deg, #fbfdff 0%, #f4f8fc 100%);
    border-bottom: 1px solid #e5edf5;
}

.nh-email-page .card-header h2,
.nh-email-page .card-header div {
    margin: 0;
    color: #172033;
    font-family: "Inter", "Open Sans", sans-serif;
    font-size: 16px;
    letter-spacing: 0;
}

.nh-email-page .card-header div {
    margin-top: 8px;
    color: #64748b;
    font-family: "Inter", sans-serif;
    font-size: 11.5px;
}

.nh-email-page .card-body {
    padding: 16px;
}

.nh-email-page iframe {
    min-height: 480px;
    background: #fff;
    border: 1px solid #e5eaf1;
    border-radius: 8px;
}

.nh-email-page .card-footer {
    padding: 13px 18px;
    background: #f9fbfd;
    border-top: 1px solid #e5eaf1;
}

.nh-email-page .btn-primary {
    min-height: 36px;
    padding: 8px 14px;
    color: #fff;
    font-family: inherit;
    font-size: 12px;
    font-weight: 600;
    background: #0969da;
    border: 1px solid #0969da;
    border-radius: 8px;
}

@media (max-width: 575.98px) {
    .nh-email-page {
        padding: 10px;
    }

    .nh-email-page iframe {
        min-height: 420px;
    }
}

/* Client-area service centre, account tools, and modal hardening. */
#nh-dashboard,
#nh-dashboard h1,
#nh-dashboard h2,
#nh-dashboard h3,
#nh-dashboard h4,
#nh-dashboard button,
#nh-dashboard input,
#nh-dashboard select,
#nh-dashboard textarea {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    letter-spacing: 0 !important;
}

body > #nhrBackdrop.nhr-backdrop {
    z-index: 2147483600 !important;
}

body > #nhrModal.nhr-modal {
    z-index: 2147483647 !important;
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
    -webkit-filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    isolation: isolate;
}

body > #nhrModal.nhr-modal.show {
    display: block !important;
}

body > #nhrModal.nhr-modal,
body > #nhrModal.nhr-modal * {
    filter: none !important;
    -webkit-filter: none !important;
}

.nh-section-kicker {
    display: block;
    margin-bottom: 5px;
    color: var(--nh-blue-600);
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.nh-section-intro,
.nh-service-viewbar,
.nh-domain-portfolio-actions,
.nh-team-summary,
.nh-email-history-summary {
    display: flex;
    align-items: center;
    gap: 14px;
}

.nh-section-intro {
    justify-content: space-between;
    margin-bottom: 18px;
}

.nh-section-intro h2,
.nh-team-summary h2,
.nh-invite-heading h2,
.nh-domain-intent h2 {
    margin: 0;
    color: var(--nh-ink-900);
    font-family: inherit;
    font-size: 21px;
    letter-spacing: 0;
}

.nh-section-intro p,
.nh-team-summary p,
.nh-invite-heading p,
.nh-domain-intent p {
    margin: 5px 0 0;
    color: var(--nh-ink-500);
    font-size: 12.5px;
    line-height: 1.55;
}

.nh-service-centre,
.nh-domain-intent,
.nh-team-card,
.nh-invite-card,
.nh-email-history-card {
    overflow: hidden;
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: 8px;
    box-shadow: var(--nh-shadow);
}

.nh-service-centre {
    padding: 22px;
}

.nh-service-category-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.nh-service-category-grid > a {
    min-width: 0;
    min-height: 92px;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) 16px;
    align-items: center;
    gap: 12px;
    padding: 15px;
    color: var(--nh-ink-900);
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: 8px;
    text-decoration: none !important;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.nh-service-category-grid > a:hover {
    border-color: #a9c9e8;
    box-shadow: 0 8px 18px rgba(8, 23, 45, .07);
    transform: translateY(-1px);
}

.nh-service-category-grid > a > i:first-child,
.nh-service-viewbar-icon,
.nh-team-summary-icon,
.nh-email-history-icon,
.nh-invite-icon {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    flex: 0 0 42px;
    color: var(--nh-blue-600);
    background: var(--nh-blue-100);
    border-radius: 8px;
    font-size: 16px;
}

.nh-service-category-grid strong,
.nh-service-category-grid small {
    display: block;
}

.nh-service-category-grid strong {
    overflow-wrap: anywhere;
    font-size: 13px;
}

.nh-service-category-grid small {
    margin-top: 4px;
    color: var(--nh-ink-500);
    font-size: 11px;
}

.nh-service-category-grid > a > i:last-child {
    color: var(--nh-ink-400);
    font-size: 11px;
}

.nh-service-viewbar,
.nh-domain-portfolio-actions {
    margin-bottom: 16px;
    padding: 15px 16px;
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: 8px;
}

.nh-service-viewbar > div:nth-child(2),
.nh-domain-portfolio-actions > div:first-child {
    min-width: 0;
    flex: 1 1 auto;
}

.nh-service-viewbar strong,
.nh-service-viewbar span,
.nh-domain-portfolio-actions strong,
.nh-domain-portfolio-actions span {
    display: block;
}

.nh-service-viewbar strong,
.nh-domain-portfolio-actions strong {
    color: var(--nh-ink-900);
    font-size: 13.5px;
}

.nh-service-viewbar span,
.nh-domain-portfolio-actions span {
    margin-top: 3px;
    color: var(--nh-ink-500);
    font-size: 11.5px;
}

.nh-service-table-card,
.nh-domain-table-card,
.nh-email-history-card .table-container {
    border: 1px solid var(--nh-line);
    border-radius: 8px;
    box-shadow: var(--nh-shadow);
}

.nh-catalog-section {
    margin-top: 18px;
    padding: 22px;
    background: var(--nh-surface);
    border: 1px solid var(--nh-line);
    border-radius: 8px;
    box-shadow: var(--nh-shadow);
    scroll-margin-top: 92px;
}

.nh-product-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.nh-product-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    padding: 18px;
    background: #fff;
    border: 1px solid var(--nh-line);
    border-radius: 8px;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.nh-product-card:hover {
    border-color: #a9c9e8;
    box-shadow: 0 10px 24px rgba(8, 23, 45, .08);
    transform: translateY(-2px);
}

.nh-product-card-top {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    justify-content: space-between;
}

.nh-product-category,
.nh-live-product-group {
    color: var(--nh-blue-600);
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
}

.nh-product-group {
    color: var(--nh-ink-400);
    font-size: 10px;
}

.nh-product-card h3 {
    margin: 14px 0 8px;
    font-size: 17px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.nh-product-price {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    align-items: baseline;
    margin-bottom: 15px;
}

.nh-product-price strong {
    color: var(--nh-ink-900);
    font-size: 22px;
}

.nh-product-price span {
    color: var(--nh-ink-500);
    font-size: 10.5px;
}

.nh-product-features {
    display: grid;
    gap: 9px;
    margin: 0 0 18px;
    padding: 0;
    list-style: none;
}

.nh-product-features li {
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr);
    gap: 7px;
    color: var(--nh-ink-600);
    font-size: 11px;
    line-height: 1.45;
}

.nh-product-features i {
    margin-top: 2px;
    color: var(--nh-green);
}

.nh-product-order {
    width: 100%;
    margin-top: auto;
    justify-content: center;
}

.nh-catalog-empty {
    min-height: 170px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 7px;
    padding: 24px;
    color: var(--nh-ink-500);
    background: var(--nh-page);
    border: 1px dashed #cfdbe8;
    border-radius: 8px;
    text-align: center;
}

.nh-catalog-empty > i {
    color: var(--nh-blue-600);
    font-size: 22px;
}

.nh-catalog-empty strong {
    color: var(--nh-ink-900);
    font-size: 14px;
}

.nh-catalog-empty span {
    font-size: 11.5px;
}

.nh-dashboard-catalog {
    margin-bottom: 18px;
}

.nh-dashboard-product-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    padding: 4px 22px 20px;
}

.nh-dashboard-product {
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    padding: 15px;
    border: 1px solid var(--nh-line);
}

.nh-dashboard-product:nth-child(even) {
    border-left: 0;
}

.nh-dashboard-product:nth-child(n+3) {
    border-top: 0;
}

.nh-dashboard-product:nth-child(1) {
    border-radius: 8px 0 0 0;
}

.nh-dashboard-product:nth-child(2) {
    border-radius: 0 8px 0 0;
}

.nh-dashboard-product > div:first-child > span {
    color: var(--nh-blue-600);
    font-size: 9.5px;
    font-weight: 800;
    text-transform: uppercase;
}

.nh-dashboard-product h3 {
    margin: 4px 0 3px;
    font-size: 13px;
    overflow-wrap: anywhere;
}

.nh-dashboard-product p {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    color: var(--nh-ink-500);
    font-size: 10.5px;
    line-height: 1.4;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.nh-dashboard-product-action {
    min-width: 92px;
    text-align: right;
}

.nh-dashboard-product-action strong,
.nh-dashboard-product-action small,
.nh-dashboard-product-action a {
    display: block;
}

.nh-dashboard-product-action strong {
    color: var(--nh-ink-900);
    font-size: 13px;
}

.nh-dashboard-product-action small {
    color: var(--nh-ink-400);
    font-size: 9px;
}

.nh-dashboard-product-action a {
    margin-top: 7px;
    font-size: 10.5px;
    font-weight: 800;
}

.nh-client-checkout #order-standard_cart,
.nh-client-checkout .cart-body,
.nh-client-checkout .products,
.nh-client-checkout .product-info {
    font-family: inherit;
}

.nh-client-checkout #order-standard_cart {
    margin: 0;
}

.nh-client-checkout #order-standard_cart > .row {
    margin-right: 0;
    margin-left: 0;
}

.nh-client-checkout #order-standard_cart .cart-sidebar,
.nh-client-checkout #order-standard_cart .sidebar-collapsed {
    display: none !important;
}

.nh-client-checkout #order-standard_cart .cart-body {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    padding-right: 0;
    padding-left: 0;
}

.nh-client-checkout #order-standard_cart .header-lined {
    margin: 0 0 18px;
    padding: 0;
}

.nh-client-checkout #order-standard_cart .header-lined h1,
.nh-client-checkout #order-standard_cart .header-lined h1.font-size-36 {
    margin: 0;
    color: var(--nh-ink-900);
    font-size: 28px !important;
    font-weight: 650;
    line-height: 1.2;
}

.nh-client-checkout #order-standard_cart .cart-body,
.nh-client-checkout #order-standard_cart .view-cart-items,
.nh-client-checkout #order-standard_cart .products .product,
.nh-client-checkout #order-standard_cart .product-info {
    border-color: var(--nh-line);
    border-radius: 8px;
    box-shadow: none;
}

.nh-client-checkout #order-standard_cart .btn-primary,
.nh-client-checkout #order-standard_cart .btn-success {
    color: #fff;
    background: var(--nh-blue-600);
    border-color: var(--nh-blue-600);
}

@media (max-width: 1180px) {
    .nh-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .nh-product-grid,
    .nh-dashboard-product-grid {
        grid-template-columns: 1fr;
    }

    .nh-dashboard-product {
        border: 1px solid var(--nh-line) !important;
        border-radius: 0 !important;
    }

    .nh-dashboard-product + .nh-dashboard-product {
        border-top: 0 !important;
    }

    .nh-dashboard-product:first-child {
        border-radius: 8px 8px 0 0 !important;
    }

    .nh-dashboard-product:last-child {
        border-radius: 0 0 8px 8px !important;
    }

    .nh-catalog-section {
        padding: 16px;
    }

    .nh-client-checkout #order-standard_cart .header-lined h1,
    .nh-client-checkout #order-standard_cart .header-lined h1.font-size-36 {
        font-size: 23px !important;
    }
}

.nh-domain-intent {
    padding: 26px;
}

.nh-domain-intent-copy {
    max-width: 720px;
}

.nh-domain-search-form {
    margin-top: 22px;
    padding: 20px;
    background: var(--nh-page);
    border: 1px solid var(--nh-line);
    border-radius: 8px;
}

.nh-domain-search-form > label,
.nh-invite-card form > label {
    display: block;
    margin-bottom: 8px;
    color: var(--nh-ink-700);
    font-size: 11.5px;
    font-weight: 700;
}

.nh-domain-search-row,
.nh-invite-email-row {
    display: flex;
    align-items: stretch;
    gap: 10px;
}

.nh-domain-search-input,
.nh-input-with-icon {
    min-width: 0;
    position: relative;
    flex: 1 1 auto;
}

.nh-domain-search-input i,
.nh-input-with-icon > i {
    position: absolute;
    left: 14px;
    top: 50%;
    z-index: 1;
    color: var(--nh-ink-400);
    transform: translateY(-50%);
}

.nh-domain-search-input input,
.nh-input-with-icon input {
    width: 100%;
    height: 46px;
    padding: 0 14px 0 42px;
    color: var(--nh-ink-900);
    background: var(--nh-surface);
    border: 1px solid #cfdbe8;
    border-radius: 8px;
    outline: 0;
}

.nh-domain-search-input input:focus,
.nh-input-with-icon input:focus {
    border-color: var(--nh-blue-500);
    box-shadow: 0 0 0 3px rgba(40, 120, 191, .12);
}

.nh-domain-intent-footer {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 22px;
    align-items: center;
    margin-top: 17px;
    color: var(--nh-ink-500);
    font-size: 11.5px;
}

.nh-domain-intent-footer i {
    margin-right: 5px;
    color: var(--nh-green);
}

.nh-domain-intent-footer a {
    margin-left: auto;
    font-weight: 700;
}

.nh-team-access {
    display: grid;
    gap: 16px;
}

.nh-team-summary {
    padding: 4px 0 2px;
}

.nh-team-summary > div:nth-child(2) {
    flex: 1 1 auto;
}

.nh-team-count,
.nh-email-history-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 5px 10px;
    color: var(--nh-blue-600);
    background: var(--nh-blue-100);
    border-radius: 16px;
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
}

.nh-team-card-head,
.nh-team-owner-note,
.nh-email-history-summary {
    padding: 16px 18px;
}

.nh-team-card-head,
.nh-email-history-summary {
    border-bottom: 1px solid var(--nh-line);
}

.nh-team-card-head strong,
.nh-team-card-head span,
.nh-email-history-summary strong,
.nh-email-history-summary span {
    display: block;
}

.nh-team-card-head strong,
.nh-email-history-summary strong {
    color: var(--nh-ink-900);
    font-size: 13px;
}

.nh-team-card-head span,
.nh-email-history-summary > div > span {
    margin-top: 3px;
    color: var(--nh-ink-500);
    font-size: 11.5px;
}

.nh-team-member {
    display: grid;
    grid-template-columns: 40px minmax(220px, 1fr) auto auto;
    gap: 13px;
    align-items: center;
    padding: 15px 18px;
    border-bottom: 1px solid var(--nh-line);
}

.nh-member-avatar {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    color: var(--nh-blue-600);
    background: var(--nh-blue-100);
    border-radius: 50%;
    font-size: 14px;
    font-weight: 800;
}

.nh-member-email {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    align-items: center;
}

.nh-member-identity strong {
    color: var(--nh-ink-900);
    font-size: 12.5px;
    overflow-wrap: anywhere;
}

.nh-member-identity > span {
    display: block;
    margin-top: 4px;
    color: var(--nh-ink-500);
    font-size: 10.5px;
}

.nh-role-badge {
    padding: 3px 7px;
    color: var(--nh-blue-600);
    background: var(--nh-blue-100);
    border-radius: 12px;
    font-size: 9.5px;
    font-weight: 800;
}

.nh-member-security {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--nh-ink-500);
    font-size: 10.5px;
    white-space: nowrap;
}

.nh-member-security.is-enabled {
    color: var(--nh-green);
}

.nh-member-actions {
    display: flex;
    justify-content: flex-end;
    gap: 7px;
}

.nh-team-owner-note {
    margin: 0;
    color: var(--nh-ink-500);
    background: var(--nh-page);
    font-size: 10.5px;
}

.nh-pending-heading {
    padding: 11px 18px;
    color: var(--nh-ink-600);
    background: var(--nh-page);
    border-bottom: 1px solid var(--nh-line);
    font-size: 11px;
    font-weight: 800;
}

.nh-invite-card {
    padding: 20px;
}

.nh-invite-heading {
    display: flex;
    gap: 13px;
    align-items: flex-start;
    margin-bottom: 18px;
}

.nh-invite-email-row .btn {
    min-width: 140px;
}

.nh-permission-choice {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 18px 0 0;
    padding: 0;
    border: 0;
}

.nh-permission-choice legend {
    grid-column: 1 / -1;
    margin: 0 0 1px;
    color: var(--nh-ink-700);
    font-size: 11.5px;
    font-weight: 700;
}

.nh-permission-choice label {
    position: relative;
    margin: 0;
    cursor: pointer;
}

.nh-permission-choice input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.nh-permission-choice label > span {
    min-height: 72px;
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    align-content: center;
    gap: 2px 9px;
    padding: 13px;
    border: 1px solid var(--nh-line);
    border-radius: 8px;
}

.nh-permission-choice input:checked + span {
    background: var(--nh-blue-100);
    border-color: #91bde3;
}

.nh-permission-choice span > i {
    grid-row: 1 / 3;
    color: var(--nh-blue-600);
    font-size: 16px;
}

.nh-permission-choice strong,
.nh-permission-choice small {
    display: block;
}

.nh-permission-choice strong {
    color: var(--nh-ink-900);
    font-size: 11.5px;
}

.nh-permission-choice small {
    color: var(--nh-ink-500);
    font-size: 10px;
}

.nh-permission-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 12px;
    padding: 14px;
    background: var(--nh-page);
    border: 1px solid var(--nh-line);
    border-radius: 8px;
}

.nh-permission-list label {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    margin: 0;
}

.nh-permission-list strong,
.nh-permission-list small {
    display: block;
}

.nh-permission-list strong {
    color: var(--nh-ink-700);
    font-size: 10.5px;
}

.nh-permission-list small {
    color: var(--nh-ink-500);
    font-size: 9.5px;
}

.nh-email-history-summary > div:nth-child(2) {
    min-width: 0;
    flex: 1 1 auto;
}

.nh-email-history-card .table-container {
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.nh-email-history-card .dataTables_wrapper {
    margin: 0;
}

.nh-email-date,
.nh-email-subject {
    vertical-align: middle !important;
}

.nh-email-date i,
.nh-email-envelope {
    margin-right: 8px;
    color: var(--nh-ink-400);
}

.nh-email-subject strong {
    color: var(--nh-ink-900);
    font-weight: 650;
}

.nh-attachment-badge {
    margin-left: 8px;
    padding: 3px 6px;
    color: var(--nh-ink-500);
    background: var(--nh-page);
    border-radius: 10px;
    font-size: 9.5px;
}

@media (max-width: 1050px) {
    .nh-service-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .nh-team-member {
        grid-template-columns: 40px minmax(180px, 1fr) auto;
    }

    .nh-member-actions {
        grid-column: 2 / -1;
        justify-content: flex-start;
    }
}

@media (max-width: 700px) {
    body > #nhrModal.nhr-modal {
        top: 50% !important;
        left: 50% !important;
        width: calc(100vw - 20px) !important;
        max-height: calc(100dvh - 20px) !important;
        transform: translate(-50%, -50%) !important;
    }

    .nh-section-intro,
    .nh-service-viewbar,
    .nh-domain-portfolio-actions,
    .nh-domain-search-row,
    .nh-invite-email-row {
        align-items: stretch;
        flex-direction: column;
    }

    .nh-service-viewbar-icon {
        display: none;
    }

    .nh-section-intro .btn,
    .nh-service-viewbar .btn,
    .nh-domain-portfolio-actions .btn,
    .nh-domain-search-row .btn,
    .nh-invite-email-row .btn {
        width: 100%;
    }

    .nh-domain-portfolio-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .nh-domain-portfolio-actions > div:first-child {
        grid-column: 1 / -1;
    }

    .nh-team-member {
        grid-template-columns: 40px minmax(0, 1fr);
    }

    .nh-member-security,
    .nh-member-actions {
        grid-column: 2;
    }

    .nh-member-actions {
        flex-wrap: wrap;
    }

    .nh-permission-choice,
    .nh-permission-list {
        grid-template-columns: 1fr;
    }

    .nh-email-history-summary {
        align-items: flex-start;
    }

    .nh-email-history-card table,
    .nh-email-history-card tbody,
    .nh-email-history-card tr,
    .nh-email-history-card td {
        box-sizing: border-box;
        display: block;
        width: 100%;
    }

    .nh-email-history-card table {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        table-layout: fixed;
    }

    .nh-email-history-card thead {
        display: none;
    }

    .nh-email-history-card tbody tr {
        padding: 14px;
        border-bottom: 1px solid var(--nh-line);
    }

    .nh-email-history-card tbody td {
        padding: 5px 0 !important;
        border: 0 !important;
        text-align: left !important;
    }

    .nh-email-history-card tbody td:last-child .btn {
        width: 100%;
        margin-top: 5px;
    }
}

@media (max-width: 520px) {
    .nh-service-centre,
    .nh-domain-intent,
    .nh-invite-card {
        padding: 16px;
    }

    .nh-service-category-grid {
        grid-template-columns: 1fr;
    }

    .nh-domain-portfolio-actions {
        grid-template-columns: 1fr;
    }

    .nh-domain-portfolio-actions > div:first-child {
        grid-column: auto;
    }

    .nh-team-summary,
    .nh-email-history-summary {
        align-items: flex-start;
    }

    .nh-team-count,
    .nh-email-history-count {
        margin-left: auto;
    }

    .nh-email-history-icon {
        display: none;
    }

    .nh-email-history-card table,
    .nh-email-history-card tbody,
    .nh-email-history-card tr,
    .nh-email-history-card td {
        display: block;
        width: 100%;
    }

    .nh-email-history-card thead {
        display: none;
    }

    .nh-email-history-card tbody tr {
        padding: 14px;
        border-bottom: 1px solid var(--nh-line);
    }

    .nh-email-history-card tbody td {
        padding: 5px 0 !important;
        border: 0 !important;
        text-align: left !important;
    }

    .nh-email-history-card tbody td:last-child .btn {
        width: 100%;
        margin-top: 5px;
    }
}

@media (min-width: 768px) {
  .tt-faq-section .tt-faq-accordion { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px; align-items: start; }
  .tt-faq-section .tt-faq-accordion .card { margin-bottom: 0 !important; }
}


/* KingHost v2 brand layer: preserve the test-site structure, change only the brand palette. */
:root {
  --primary: #0b4fd8;
  --primary-dark: #072f86;
  --nh-blue: #0b4fd8;
  --nh-blue-dark: #072f86;
  --nh-gold: #e2a91d;
  --nh-gold-dark: #b77f00;
}

.kh-brand-logo img,
.navbar-brand.kh-brand-logo .logo-img {
  display: block;
  width: auto;
  height: 70px;
  max-width: 300px;
  object-fit: contain;
}

.breadcrumb { display: none !important; }

.btn-primary,
.bg-primary,
.badge-primary {
  background-color: #0b4fd8 !important;
  border-color: #0b4fd8 !important;
}

#btnTransfer,
#btnTransfer2 {
  color: #172033 !important;
  background-color: #e2a91d !important;
  border-color: #e2a91d !important;
}

#btnTransfer:hover,
#btnTransfer:focus,
#btnTransfer2:hover,
#btnTransfer2:focus {
  background-color: #c99110 !important;
  border-color: #c99110 !important;
}

.nh-pricing-card .fa-check-circle {
  color: #b77f00 !important;
}

a,
.text-primary { color: #0b4fd8; }

/* Keep normal browser interaction available. Only images resist dragging/selection. */
html, body, body *:not(img) {
  -webkit-user-select: text !important;
  user-select: text !important;
}
button, input, select, textarea, a, [role="button"] {
  -webkit-user-select: auto !important;
  user-select: auto !important;
}
img {
  -webkit-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
}

#modalChooseLanguage,
.modal-backdrop { z-index: 2147483600 !important; }
#modalChooseLanguage .modal-dialog { z-index: 2147483601 !important; }
.tt-footer-bottom,
.tt-footer-bottom .container,
.tt-footer-bottom .row { overflow: visible !important; }
.tt-whtop-badge img { width: 96px; height: 96px; object-fit: contain; }

/* Editorial and policy pages use the same restrained structure as the public site. */
.kh-blog-hero,
.kh-legal-header {
  padding: 72px 0;
  color: #fff;
  background: #072f86;
  border-bottom: 5px solid #e2a91d;
}
.kh-blog-hero { display: flex; height: 480px; min-height: 0; padding: 0; align-items: center; overflow: hidden; background-position: center 34%; background-size: cover; background-repeat: no-repeat; }
.kh-blog-hero > .container { width: 100%; max-width: none !important; padding-right: clamp(24px, 6vw, 112px); padding-left: clamp(24px, 6vw, 112px); }
.kh-blog-hero h1,
.kh-legal-header h1 { max-width: 820px; margin: 8px 0 14px; color: #fff; font-size: 42px; line-height: 1.15; }
.kh-blog-hero p,
.kh-legal-header p { max-width: 760px; margin-bottom: 0; color: rgba(255,255,255,.88); font-size: 18px; }
.kh-blog-kicker,
.kh-legal-header > .container > p:first-child { color: #f5c54c !important; font-size: 13px !important; font-weight: 800; text-transform: uppercase; }
.kh-blog-listing,
.kh-legal-body { padding: 58px 0 76px; }
body:has(.kh-blog) .tt-page-header { display: none !important; }
.kh-blog-listing > .container { width: 100%; max-width: none !important; padding-right: clamp(24px, 4vw, 80px); padding-left: clamp(24px, 4vw, 80px); }
.kh-blog-intro { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr); gap: 28px; align-items: stretch; margin-bottom: 44px; }
.kh-blog-featured { display: grid; min-height: 360px; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); overflow: hidden; border: 1px solid #dce4ef; border-radius: 8px; background: #fff; }
.kh-blog-featured > * { min-width: 0; }
.kh-blog-featured .kh-blog-image { width: 100%; height: 360px; min-height: 0; aspect-ratio: auto; }
.kh-blog-featured-copy { position: relative; display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: 34px; background: #fff; }
.kh-blog-featured-copy h2 { margin: 0 0 14px; color: #10192b; font-size: 30px; line-height: 1.22; }
.kh-blog-featured-copy h2 a { color: #10192b; }
.kh-blog-editorial { padding: 30px; color: #fff; background: #0b4fd8; border-bottom: 5px solid #e2a91d; border-radius: 8px; }
.kh-blog-editorial h2 { color: #fff; font-size: 24px; }
.kh-blog-editorial p { color: rgba(255,255,255,.88); }
.kh-blog-editorial ul { margin: 20px 0 0; padding: 0; list-style: none; }
.kh-blog-editorial li { display: flex; gap: 10px; margin: 11px 0; }
.kh-blog-editorial i { margin-top: 4px; color: #f5c54c; }
.kh-blog-controls { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin: 0 0 20px; }
.kh-blog-controls h2 { margin: 4px 0 0; color: #10192b; font-size: 30px; }
.kh-blog-search { display: flex; width: min(100%, 360px); height: 48px; align-items: center; gap: 10px; padding: 0 14px; border: 1px solid #ccd6e4; border-radius: 6px; background: #fff; }
.kh-blog-search i { color: #647087; }
.kh-blog-search input { width: 100%; border: 0; outline: 0; background: transparent; color: #172033; }
.kh-blog-topics { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 32px; }
.kh-blog-topics button { padding: 9px 14px; border: 1px solid #dce4ef; border-radius: 6px; color: #172033; background: #fff; font-weight: 700; cursor: pointer; }
.kh-blog-topics button:hover,
.kh-blog-topics button.active { color: #fff; background: #0b4fd8; border-color: #0b4fd8; }
.kh-blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; }
.kh-blog-card { overflow: hidden; border: 1px solid #dce4ef; border-radius: 8px; background: #fff; }
.kh-blog-card.is-hidden { display: none; }
.kh-blog-empty { padding: 42px; border: 1px dashed #bcc8d8; color: #566176; text-align: center; background: #f7f9fc; }
.kh-blog-image { display: block; aspect-ratio: 16/9; overflow: hidden; background: #edf2f8; }
.kh-blog-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.kh-blog-card:hover .kh-blog-image img { transform: scale(1.025); }
.kh-blog-card-body { padding: 22px; }
.kh-blog-category { display: inline-block; margin-bottom: 12px; color: #946500; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.kh-blog-card h2 { margin: 0 0 12px; font-size: 22px; line-height: 1.3; }
.kh-blog-card h2 a { color: #10192b; }
.kh-blog-card p { color: #566176; }
.kh-blog-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 14px; border-top: 1px solid #edf1f6; font-size: 13px; }
.kh-article-header { padding: 62px 0 44px; background: #f5f8fc; border-bottom: 1px solid #dce4ef; }
.kh-article-narrow { max-width: 980px; }
.kh-article-header h1 { margin: 8px 0 16px; color: #10192b; font-size: 44px; line-height: 1.15; }
.kh-article-summary { color: #566176; font-size: 20px; }
.kh-article-cover { width: 100%; margin: 0 0 32px; border-radius: 8px; }
.kh-article-shell { display: grid; grid-template-columns: 250px minmax(0, 820px); gap: 54px; align-items: start; max-width: 1180px; padding-top: 46px; }
.kh-article-aside { position: sticky; top: 24px; }
.kh-article-byline { display: flex; gap: 13px; align-items: center; margin-top: 20px; color: #566176; }
.kh-article-avatar { display: grid; width: 44px; height: 44px; place-items: center; color: #072f86; background: #f5c54c; border-radius: 50%; font-weight: 900; }
.kh-article-aside h2 { margin-bottom: 14px; color: #10192b; font-size: 17px; }
.kh-article-aside ol { margin: 0 0 28px; padding-left: 20px; }
.kh-article-aside li { margin: 9px 0; color: #566176; }
.kh-article-aside a { color: inherit; }
.kh-article-aside a:hover { color: #0b4fd8; }
.kh-article-facts { padding: 18px; border: 1px solid #dce4ef; border-radius: 8px; background: #f7f9fc; }
.kh-article-facts span { display: block; margin-bottom: 8px; color: #566176; font-size: 13px; }
.kh-article-facts strong { display: block; color: #10192b; font-size: 14px; }
.kh-article-lead { color: #25324a; font-size: 20px; line-height: 1.65; }
.kh-article-takeaways { margin: 30px 0 38px; padding: 24px 26px; border-top: 4px solid #e2a91d; background: #f7f9fc; }
.kh-article-takeaways h2 { margin-top: 0; }
.kh-blog-article section { margin-bottom: 34px; }
.kh-blog-article section h2,
.kh-legal-body h2 { color: #10192b; font-size: 25px; }
.kh-blog-article section p,
.kh-blog-article section li,
.kh-legal-body p { color: #3f4b60; font-size: 17px; line-height: 1.75; }
.kh-blog-article section li { margin-bottom: 8px; }
.kh-source-note,
.kh-legal-body aside { padding: 18px 20px; border-left: 4px solid #e2a91d; background: #f7f9fc; }
.kh-article-related { margin: 48px 0 72px; padding-top: 30px; border-top: 1px solid #dce4ef; }
.kh-article-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; }
.kh-article-related a { display: block; padding: 18px; border: 1px solid #dce4ef; border-radius: 8px; color: #10192b; font-weight: 800; }
.kh-article-related a:hover { border-color: #0b4fd8; color: #0b4fd8; }
.kh-location-page { color: #172033; background: #fff; }
.kh-location-page .container,
.kh-vps-page .container,
.kh-home-blog > .container { width: 100%; max-width: none !important; padding-right: clamp(24px, 4vw, 80px); padding-left: clamp(24px, 4vw, 80px); }
body:has(.kh-location-page) .tt-page-header,
body:has(.kh-vps-page) .tt-page-header,
body:has(.kh-legal) .tt-page-header { display: none !important; }
body:has(.kh-location-page) #main-body,
body:has(.kh-vps-page) #main-body,
body:has(.kh-legal) #main-body,
body:has(.kh-blog) #main-body { width: 100% !important; max-width: 100% !important; padding: 0 !important; }
body:has(.kh-location-page) #main-body > .container,
body:has(.kh-location-page) #main-body > .container-fluid,
body:has(.kh-vps-page) #main-body > .container,
body:has(.kh-vps-page) #main-body > .container-fluid,
body:has(.kh-legal) #main-body > .container,
body:has(.kh-legal) #main-body > .container-fluid,
body:has(.kh-blog) #main-body > .container,
body:has(.kh-blog) #main-body > .container-fluid { width: 100% !important; max-width: 100% !important; padding: 0 !important; }
.kh-location-hero { padding: 64px 0; color: #fff; background: #072f86; border-bottom: 5px solid #e2a91d; }
.kh-location-hero-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr); gap: 56px; align-items: center; }
.kh-location-hero h1 { max-width: 850px; margin: 8px 0 18px; color: #fff; font-size: 46px; line-height: 1.12; }
.kh-location-hero p { max-width: 720px; color: rgba(255,255,255,.9); font-size: 19px; line-height: 1.65; }
.kh-location-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.kh-location-actions .btn-outline-light:hover { color: #072f86; background: #fff; }
.kh-location-visual { position: relative; margin: 0; overflow: hidden; border: 8px solid rgba(255,255,255,.13); border-radius: 8px; background: #061f57; }
.kh-location-visual img { display: block; width: 100%; height: auto; aspect-ratio: 16/10; object-fit: cover; }
.kh-location-visual figcaption { position: absolute; right: 18px; bottom: 18px; left: 18px; padding: 12px 14px; color: #172033; background: rgba(255,255,255,.94); border-left: 4px solid #e2a91d; font-size: 13px; font-weight: 700; }
.kh-location-trust { border-bottom: 1px solid #e2e8f0; background: #f5f8fc; }
.kh-location-trust-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.kh-location-trust article { padding: 25px 24px; border-right: 1px solid #e2e8f0; }
.kh-location-trust article:last-child { border-right: 0; }
.kh-location-trust i { margin-right: 8px; color: #b77f00; }
.kh-location-trust strong { display: block; color: #10192b; }
.kh-location-trust span { display: block; margin-top: 5px; color: #647087; font-size: 13px; }
.kh-location-section { padding: 70px 0; }
.kh-location-section--soft { background: #f7f9fc; border-top: 1px solid #e5eaf1; border-bottom: 1px solid #e5eaf1; }
.kh-location-heading { max-width: 760px; margin-bottom: 34px; }
.kh-location-heading h2 { margin: 7px 0 12px; color: #10192b; font-size: 34px; }
.kh-location-heading p { color: #566176; font-size: 17px; line-height: 1.7; }
.kh-location-services { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.kh-location-service { display: flex; min-height: 100%; flex-direction: column; padding: 28px; border: 1px solid #dce4ef; border-top: 4px solid #0b4fd8; border-radius: 8px; background: #fff; }
.kh-location-service:nth-child(2) { border-top-color: #e2a91d; }
.kh-location-service i { margin-bottom: 20px; color: #0b4fd8; font-size: 28px; }
.kh-location-service h3 { color: #10192b; font-size: 22px; }
.kh-location-service p { flex: 1; color: #566176; line-height: 1.65; }
.kh-location-service a { font-weight: 800; }
.kh-location-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr); gap: 48px; align-items: start; }
.kh-location-copy h2 { margin: 0 0 16px; color: #10192b; font-size: 32px; }
.kh-location-copy h3 { margin: 30px 0 10px; color: #10192b; font-size: 21px; }
.kh-location-copy p, .kh-location-copy li { color: #3f4b60; font-size: 17px; line-height: 1.72; }
.kh-location-checks { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 13px 20px; margin: 24px 0 0; padding: 0; list-style: none; }
.kh-location-checks li { position: relative; padding-left: 28px; }
.kh-location-checks li:before { position: absolute; left: 0; content: '\2713'; color: #0b4fd8; font-weight: 900; }
.kh-location-panel { padding: 30px; border: 1px solid #dce4ef; border-top: 5px solid #e2a91d; border-radius: 8px; background: #fff; box-shadow: 0 16px 38px rgba(7,47,134,.08); }
.kh-location-panel h2 { margin-bottom: 20px; color: #10192b; font-size: 25px; }
.kh-location-fact { display: grid; grid-template-columns: 38px 1fr; gap: 12px; padding: 14px 0; border-bottom: 1px solid #e8edf4; }
.kh-location-fact i { color: #b77f00; font-size: 20px; }
.kh-location-fact span { display: block; color: #647087; font-size: 13px; }
.kh-location-fact strong { display: block; color: #172033; }
.kh-location-faq { max-width: none; }
.kh-location-faq details { padding: 19px 0; border-bottom: 1px solid #dce4ef; }
.kh-location-faq summary { color: #10192b; cursor: pointer; font-size: 18px; font-weight: 800; }
.kh-location-faq p { margin: 12px 0 0; color: #566176; line-height: 1.7; }
.kh-provider-research { border-top: 1px solid #dce4ef; }
.kh-provider-research a { display: grid; grid-template-columns: 48px 190px minmax(0, 1fr); gap: 18px; align-items: center; padding: 22px 0; border-bottom: 1px solid #dce4ef; color: #172033; }
.kh-provider-research a:hover { color: #0b4fd8; }
.kh-provider-research span { color: #a87300; font-size: 13px; font-weight: 800; }
.kh-provider-research strong { font-size: 20px; }
.kh-provider-research small { color: #566176; font-size: 15px; }
.kh-location-cta { padding: 54px 0; color: #fff; background: #072f86; }
.kh-location-cta-grid { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.kh-location-cta h2 { margin: 0 0 8px; color: #fff; }
.kh-location-cta p { margin: 0; color: rgba(255,255,255,.85); }
.kh-vps-page { color: #172033; background: #fff; }
.kh-vps-hero { padding: 64px 0; color: #fff; background: #072f86; border-bottom: 5px solid #e2a91d; }
.kh-vps-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(380px, .9fr); gap: 54px; align-items: center; }
.kh-vps-hero h1 { margin: 8px 0 18px; color: #fff; font-size: 46px; line-height: 1.12; }
.kh-vps-hero p { max-width: 760px; color: rgba(255,255,255,.9); font-size: 19px; line-height: 1.65; }
.kh-vps-hero img { display: block; width: 100%; height: auto; aspect-ratio: 16/10; object-fit: cover; border: 8px solid rgba(255,255,255,.13); border-radius: 8px; }
.kh-vps-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.kh-vps-section { padding: 68px 0; }
.kh-vps-section--soft { background: #f5f8fc; border-top: 1px solid #e2e8f0; border-bottom: 1px solid #e2e8f0; }
.kh-vps-plans { background: #f5f8fc; }
.kh-vps-plan-toolbar { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 30px; }
.kh-vps-plan-toolbar h2 { margin: 6px 0 0; color: #10192b; font-size: 34px; }
.kh-vps-currency { display: grid; gap: 7px; min-width: 190px; color: #3f4b60; font-weight: 700; }
.kh-vps-currency select { width: 100%; height: 46px; padding: 0 38px 0 13px; color: #10192b; border: 1px solid #cbd5e1; border-radius: 6px; background: #fff; }
.kh-vps-cycle-switcher { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); margin-bottom: 28px; border: 1px solid #cbd5e1; border-radius: 7px; overflow: hidden; background: #fff; }
.kh-vps-cycle-switcher button { min-height: 48px; padding: 9px 12px; color: #24324a; border: 0; border-right: 1px solid #dce4ef; border-radius: 0; background: #fff; font-weight: 800; }
.kh-vps-cycle-switcher button:last-child { border-right: 0; }
.kh-vps-cycle-switcher button:hover { color: #0b4fd8; background: #eef4ff; }
.kh-vps-cycle-switcher button.is-active { color: #fff; background: #0b4fd8; }
.kh-vps-cycle-switcher.is-single { max-width: 220px; grid-template-columns: 1fr; border: 0; }
.kh-vps-cycle-switcher.is-single button { border: 0; border-radius: 6px; }
.kh-vps-plan-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.kh-vps-plan { display: flex; min-width: 0; flex-direction: column; padding: 28px; border: 1px solid #d7e0ec; border-top: 5px solid #0b4fd8; border-radius: 8px; background: #fff; box-shadow: 0 12px 28px rgba(8, 35, 85, .07); }
.kh-vps-plan:nth-child(3n+2) { border-top-color: #e2a91d; }
.kh-vps-plan-group { margin: 0 0 7px; color: #946500; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.kh-vps-plan h3 { min-height: 58px; margin: 0 0 16px; color: #10192b; font-size: 24px; line-height: 1.22; }
.kh-vps-plan-price { min-height: 78px; margin-bottom: 18px; padding-bottom: 18px; border-bottom: 1px solid #e2e8f0; }
.kh-vps-price-option strong { display: block; color: #0b4fd8; font-size: 30px; line-height: 1.15; }
.kh-vps-price-option span { color: #64748b; font-size: 14px; }
.kh-vps-plan-specs { flex: 1; margin: 0 0 24px; padding: 0; list-style: none; }
.kh-vps-plan-specs li { position: relative; padding: 8px 0 8px 25px; color: #3f4b60; border-bottom: 1px solid #edf1f6; line-height: 1.45; }
.kh-vps-plan-specs li:before { position: absolute; left: 0; content: '\2713'; color: #159a58; font-weight: 900; }
.kh-vps-plan-status { min-height: 24px; margin: 0 0 10px; color: #9b2c2c; font-size: 13px; font-weight: 700; }
.kh-vps-plan.is-unavailable { opacity: .68; }
.kh-vps-plan.is-unavailable .kh-vps-order-button { pointer-events: none; }
.kh-vps-catalog-note { margin: 24px 0 0; color: #64748b; font-size: 14px; text-align: center; }
.tt-hero #khHeroTitle { max-width: 580px; font-size: 48px; line-height: 1.1; }
.kh-vps-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.kh-vps-card { padding: 28px; border: 1px solid #dce4ef; border-top: 4px solid #0b4fd8; border-radius: 8px; background: #fff; }
.kh-vps-card:nth-child(2) { border-top-color: #e2a91d; }
.kh-vps-card h2 { color: #10192b; font-size: 22px; }
.kh-vps-card p { color: #566176; line-height: 1.7; }
.kh-vps-details { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(340px, .9fr); gap: 52px; align-items: start; }
.kh-vps-details h2 { color: #10192b; font-size: 34px; }
.kh-vps-details p, .kh-vps-details li { color: #3f4b60; font-size: 17px; line-height: 1.72; }
.kh-vps-checklist { margin: 24px 0 0; padding: 0; list-style: none; }
.kh-vps-checklist li { position: relative; padding: 10px 0 10px 30px; border-bottom: 1px solid #e4e9f0; }
.kh-vps-checklist li:before { position: absolute; left: 0; content: '\2713'; color: #0b4fd8; font-weight: 900; }
.kh-vps-order { padding: 30px; border: 1px solid #dce4ef; border-top: 5px solid #e2a91d; border-radius: 8px; background: #fff; }
.kh-vps-order strong { display: block; margin-bottom: 8px; color: #10192b; font-size: 24px; }
.kh-vps-order p { font-size: 15px; }
.kh-vps-faq details { padding: 19px 0; border-bottom: 1px solid #dce4ef; }
.kh-vps-faq summary { color: #10192b; cursor: pointer; font-size: 18px; font-weight: 800; }
.kh-vps-faq p { margin: 12px 0 0; color: #566176; line-height: 1.7; }
.kh-vps-faq-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 34px; }
.kh-article-cta { margin: 46px 0 72px; padding: 30px; color: #fff; background: #072f86; border-radius: 8px; }
.kh-article-cta h2 { color: #fff; }
.kh-article-cta p { color: rgba(255,255,255,.85); }
.kh-legal { width: 100%; background: #fff; }
.kh-legal-header > .container,
.kh-legal-layout { width: 100%; max-width: none !important; padding-right: clamp(24px, 4vw, 80px); padding-left: clamp(24px, 4vw, 80px); }
.kh-legal-header small { display: block; margin-top: 18px; color: rgba(255,255,255,.7); }
.kh-legal-layout { display: grid; grid-template-columns: minmax(240px, 290px) minmax(0, 1fr); gap: clamp(36px, 4vw, 68px); align-items: start; padding-top: 58px; padding-bottom: 82px; }
.kh-legal-nav { position: sticky; top: 24px; padding: 22px; border: 1px solid #dce4ef; border-top: 4px solid #e2a91d; border-radius: 8px; background: #f7f9fc; }
.kh-legal-nav strong { display: block; margin-bottom: 12px; color: #10192b; }
.kh-legal-nav a { display: block; padding: 8px 0; color: #566176; border-bottom: 1px solid #e5eaf1; font-size: 14px; }
.kh-legal-nav a:hover { color: #0b4fd8; }
.kh-legal-content section { padding: 0 0 30px; margin-bottom: 30px; border-bottom: 1px solid #e5eaf1; scroll-margin-top: 24px; }
.kh-legal-content h2 { margin: 0 0 12px; color: #10192b; font-size: 26px; }
.kh-legal-content p { margin: 0; color: #3f4b60; font-size: 17px; line-height: 1.78; }
.kh-legal-contact { padding: 24px; border-left: 4px solid #e2a91d; background: #f7f9fc; }
.kh-legal-links { display: flex; flex-wrap: wrap; gap: 9px 18px; margin-top: 14px; }
.kh-legal-links a { font-weight: 700; }
.kh-footer-badge-row { width: 100%; margin-top: 34px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.16); text-align: center; }
.kh-footer-badge-row > h6 { margin-bottom: 18px; }
.kh-footer-badges { display: grid; width: min(100%, 760px); grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; align-items: start; margin: 0 auto; }
.kh-footer-image-badge { display: flex; min-width: 0; align-items: center; flex-direction: column; color: #fff; text-align: center; }
.kh-footer-image-badge:hover { color: #fff; }
.kh-footer-badge-media { display: flex; width: 96px; height: 96px; aspect-ratio: 1; flex: 0 0 96px; align-items: center; justify-content: center; overflow: visible; border-radius: 50%; background: transparent; filter: drop-shadow(0 8px 12px rgba(0,0,0,.18)); }
.kh-footer-badge-media img { display: block; width: 96px; height: 96px; max-width: none; border-radius: 50%; object-fit: contain; }
.kh-footer-badge-media--vendor { padding: 16px; border: 4px solid #e2a91d; background: #fff; }
.kh-footer-badge-media--vendor img { width: 100%; height: 100%; border-radius: 0; }
.kh-footer-image-badge strong,
.kh-footer-image-badge small { display: block; width: 100%; letter-spacing: 0; line-height: 1.25; }
.kh-footer-image-badge strong { margin-top: 10px; color: #fff; font-size: 12px; }
.kh-footer-image-badge small { margin-top: 3px; color: #cbd5e1; font-size: 10px; }
.kh-footer-review-evidence { display: grid; grid-template-columns: auto auto; gap: 2px 7px; align-items: center; margin: -6px 0 24px; padding: 11px 12px; border: 1px solid rgba(255,255,255,.18); border-radius: 6px; color: #fff; background: rgba(255,255,255,.06); }
.kh-footer-review-evidence:hover { color: #fff; border-color: rgba(226,169,29,.75); }
.kh-footer-review-evidence > span { grid-row: 1 / span 2; color: #e2a91d; font-size: 22px; }
.kh-footer-review-evidence strong { font-size: 14px; line-height: 1.2; }
.kh-footer-review-evidence small { color: #cbd5e1; font-size: 10px; line-height: 1.35; }
.kh-partner-band { width: 100%; padding: 42px 0; overflow: hidden; background: #f5f7fb; border-top: 1px solid #e2e8f0; }
.kh-partner-band-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, 340px); gap: 44px; align-items: center; }
.kh-partner-band p { margin: 0 0 6px; color: #946500; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.kh-partner-band h2 { margin: 0 0 8px; color: #071c43; font-size: 28px; }
.kh-partner-band span { display: block; max-width: 720px; color: #536177; line-height: 1.7; }
.kh-partner-band a { display: flex; min-height: 112px; align-items: center; justify-content: center; padding: 18px 24px; background: #fff; border: 1px solid #dce4ef; box-shadow: 0 12px 30px rgba(7,28,67,.08); }
.kh-partner-band img { display: block; width: min(100%, 280px); height: 76px; object-fit: contain; }

#modalChooseLanguage .modal-content { max-height: min(760px, calc(100vh - 40px)); overflow-y: auto; }
#modalChooseLanguage .item-selector { position: relative; z-index: 1; }
#modalChooseLanguage .item,
#modalChooseLanguage .kh-localisation-choice { display: block; width: 100%; min-height: 42px; padding: 10px 12px; border: 1px solid #dce4ef; border-radius: 6px; color: #172033; background: #fff; text-align: left; cursor: pointer; pointer-events: auto !important; }
#modalChooseLanguage .item:hover,
#modalChooseLanguage .item.active,
#modalChooseLanguage .kh-localisation-choice:hover,
#modalChooseLanguage .kh-localisation-choice.active { color: #fff; background: #0b4fd8; border-color: #0b4fd8; }
#modalChooseLanguage.show { z-index: 2147483600 !important; display: block; overflow-x: hidden; overflow-y: auto; }
.kh-modal-backdrop { z-index: 2147483590 !important; }
.kh-home-band { padding: 68px 0; }
.kh-home-announcements { color: #fff; background: #071c43; }
.kh-home-announcements-head { display: flex; align-items: end; justify-content: space-between; gap: 28px; margin-bottom: 30px; }
.kh-home-announcements-head p { margin: 0 0 7px; color: #f3be27; font-size: 13px; font-weight: 900; text-transform: uppercase; }
.kh-home-announcements-head h2 { margin: 0; color: #fff; font-size: 36px; }
.kh-home-announcements-head > a { color: #fff; font-weight: 800; }
.kh-home-announcement-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.kh-home-announcement-grid article { min-width: 0; padding: 28px; border-top: 4px solid #e2a91d; background: #0b3478; }
.kh-home-announcement-grid time { color: #b9c9e7; font-size: 13px; font-weight: 700; }
.kh-home-announcement-grid h3 { margin: 12px 0; font-size: 21px; line-height: 1.32; }
.kh-home-announcement-grid h3 a, .kh-home-announcement-link { color: #fff; }
.kh-home-announcement-grid p { color: #dbe7fb; line-height: 1.65; }
.kh-home-announcement-link { font-weight: 800; }
.kh-license-band { background: #f5f8fc; border-top: 1px solid #e2e8f0; border-bottom: 1px solid #e2e8f0; }
.kh-home-blog { background: #fff; }
.kh-section-heading { max-width: 760px; margin: 0 auto 34px; text-align: center; }
.kh-section-heading > p:first-child { margin-bottom: 7px; color: #a87300; font-size: 13px; font-weight: 800; text-transform: uppercase; }
.kh-section-heading h2 { margin-bottom: 10px; color: #10192b; font-size: 34px; }
.kh-home-three { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.kh-home-three article { overflow: hidden; border: 1px solid #dce4ef; border-radius: 8px; background: #fff; }
.kh-license-band .kh-home-three article { padding: 28px; }
.kh-license-band .kh-home-three i { margin-bottom: 18px; color: #0b4fd8; font-size: 28px; }
.kh-home-three h3 { color: #10192b; font-size: 22px; }
.kh-home-three p { color: #566176; }
.kh-home-three a { font-weight: 800; }
.kh-home-blog article img { display: block; width: 100%; height: 190px; aspect-ratio: auto; object-fit: cover; }
.kh-home-blog article > div { padding: 22px; }
.kh-home-blog article span { color: #946500; font-size: 12px; font-weight: 800; text-transform: uppercase; }

/* Specialist solution pages: shared brand tokens, deliberately different compositions. */
.kh-growth-page { width: 100%; max-width: 100%; color: #111c32; background: #fff; overflow: hidden; }
.kh-growth-page .container { width: 100%; max-width: none !important; padding-right: clamp(24px, 6vw, 112px); padding-left: clamp(24px, 6vw, 112px); }
.kh-growth-page img { display: block; max-width: 100%; }
.kh-growth-page [class$="-grid"] > *, .kh-growth-page [class*="-grid "] > * { min-width: 0; }
body:has(.kh-growth-page) .tt-page-header { display: none !important; }
body:has(.kh-growth-page) #main-body,
body:has(.kh-growth-page) #main-body > .container,
body:has(.kh-growth-page) #main-body > .container > .row,
body:has(.kh-growth-page) #main-body > .container > .row > .col-12 { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
.kh-growth-page h1, .kh-growth-page h2, .kh-growth-page h3 { color: #081b3a; }
.kh-growth-page h1 { max-width: 980px; font-size: 54px; line-height: 1.08; }
.kh-growth-page h2 { font-size: 36px; line-height: 1.18; }
.kh-growth-page p, .kh-growth-page li { line-height: 1.75; }
.kh-growth-kicker { margin-bottom: 14px; color: #b57b00; font-size: 13px; font-weight: 900; text-transform: uppercase; }
.kh-growth-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.kh-growth-section { padding: 74px 0; }
.kh-growth-section--soft { background: #f3f6fb; }
.kh-growth-faq { max-width: 980px; margin: 0 auto; }
.kh-growth-faq details { border-top: 1px solid #d7e0ec; }
.kh-growth-faq details:last-child { border-bottom: 1px solid #d7e0ec; }
.kh-growth-faq summary { padding: 20px 4px; color: #081b3a; font-weight: 800; cursor: pointer; }
.kh-growth-faq details p { padding: 0 4px 18px; color: #4d5b72; }

.kh-home-solutions { color: #fff; background: #071c43; }
.kh-home-solutions > .container { display: grid; grid-template-columns: minmax(240px, .7fr) minmax(0, 1.3fr); gap: 44px; align-items: start; }
.kh-solutions-intro { position: sticky; top: 24px; }
.kh-solutions-intro > p { color: #f1b91f; font-size: 13px; font-weight: 900; text-transform: uppercase; }
.kh-solutions-intro h2 { color: #fff; font-size: 40px; }
.kh-solutions-intro a { color: #fff; font-weight: 800; }
.kh-solutions-list { border-top: 1px solid rgba(255,255,255,.2); }
.kh-solutions-list > a { display: grid; grid-template-columns: 48px 1fr 24px; gap: 18px; align-items: center; padding: 18px 0; border-bottom: 1px solid rgba(255,255,255,.2); color: #fff; }
.kh-solutions-list span { color: #f1b91f; font-weight: 900; }
.kh-solutions-list strong, .kh-solutions-list small { display: block; }
.kh-solutions-list strong { font-size: 21px; }
.kh-solutions-list small { margin-top: 4px; color: #b9c7de; }

.kh-agency-hero { padding: 72px 0 0; background: #f4f7fb; }
.kh-agency-hero-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 56px; align-items: end; }
.kh-agency-copy { padding-bottom: 72px; }
.kh-agency-photo { position: relative; height: 560px; margin: 0; overflow: hidden; border-bottom: 6px solid #e2a91d; }
.kh-agency-photo img { width: 100%; height: 100%; object-fit: cover; }
.kh-agency-photo figcaption { position: absolute; right: 0; bottom: 0; max-width: 390px; padding: 20px 24px; color: #fff; background: #081b3a; }
.kh-agency-rail { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid #ccd7e5; border-left: 1px solid #ccd7e5; }
.kh-agency-rail article { min-height: 230px; padding: 30px; border-right: 1px solid #ccd7e5; border-bottom: 1px solid #ccd7e5; }
.kh-agency-rail span { color: #b57b00; font-weight: 900; }
.kh-fit-table { width: 100%; border-collapse: collapse; background: #fff; }
.kh-fit-table th, .kh-fit-table td { padding: 18px; border-bottom: 1px solid #dce4ef; text-align: left; }
.kh-fit-table th { color: #fff; background: #0a347f; }

.kh-commerce-hero { min-height: 640px; display: flex; align-items: center; background: #061b42 url('../img/blog/control-panel.webp') center/cover no-repeat; background-blend-mode: multiply; }
.kh-commerce-hero-copy { max-width: 720px; padding-top: 80px; padding-bottom: 80px; color: #fff; }
.kh-commerce-hero h1 { color: #fff; }
.kh-commerce-hero p { font-size: 21px; }
.kh-commerce-board { display: grid; grid-template-columns: repeat(5,1fr); border: 1px solid #dce4ef; }
.kh-commerce-board article { padding: 26px 20px; border-right: 1px solid #dce4ef; }
.kh-commerce-board article:last-child { border-right: 0; }
.kh-commerce-board i { color: #0b4fd8; font-size: 25px; }
.kh-commerce-events { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.kh-commerce-events article { padding: 28px; border-top: 5px solid #e2a91d; background: #fff; box-shadow: 0 12px 30px rgba(7,32,73,.08); }

.kh-school-hero { padding: 58px 0; background: #fff; }
.kh-school-hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 46px; align-items: center; }
.kh-school-image-strip { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, .75fr); gap: 8px; width: 100%; height: 410px; min-width: 0; overflow: hidden; }
.kh-school-image-strip img { width: 100%; max-width: 100%; height: 100%; min-width: 0; object-fit: cover; }
.kh-school-schedule { display: grid; grid-template-columns: 140px 1fr; border-top: 1px solid #cfd9e6; }
.kh-school-schedule dt, .kh-school-schedule dd { margin: 0; padding: 23px 18px; border-bottom: 1px solid #cfd9e6; }
.kh-school-schedule dt { color: #0b4fd8; font-weight: 900; }
.kh-school-schedule dd { border-left: 1px solid #cfd9e6; }
.kh-school-checklist { columns: 2; column-gap: 48px; padding-left: 20px; }

.kh-nonprofit-hero { position: relative; padding: 96px 0; background: #0b4fd8; }
.kh-nonprofit-hero:after { content: ''; position: absolute; top: 0; right: 0; width: 38%; height: 100%; background: url('../img/blog/business.webp') center/cover; }
.kh-nonprofit-hero-copy { position: relative; z-index: 1; width: 58%; color: #fff; }
.kh-nonprofit-hero h1 { color: #fff; }
.kh-nonprofit-ledger { display: grid; grid-template-columns: 1.1fr .9fr; gap: 64px; }
.kh-nonprofit-ledger table { width: 100%; border-collapse: collapse; }
.kh-nonprofit-ledger td { padding: 18px 10px; border-bottom: 1px solid #dce4ef; }
.kh-nonprofit-ledger td:last-child { text-align: right; font-weight: 800; }
.kh-mission-note { padding: 34px; color: #fff; background: #071c43; border-bottom: 5px solid #e2a91d; }

.kh-migration-hero { padding: 84px 0; color: #fff; background: #071c43; }
.kh-migration-hero h1 { max-width: 940px; color: #fff; }
.kh-route-map { display: grid; grid-template-columns: 1fr 80px 1fr; align-items: stretch; margin-top: 42px; }
.kh-route-node { padding: 30px; color: #081b3a; background: #fff; }
.kh-route-arrow { display: grid; place-items: center; color: #071c43; background: #e2a91d; font-size: 28px; }
.kh-guide-index { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.kh-guide-index a { padding: 24px; color: #081b3a; border: 1px solid #cfd9e6; border-top: 5px solid #0b4fd8; background: #fff; font-weight: 800; }
.kh-migration-runbook { counter-reset: step; }
.kh-migration-runbook li { position: relative; list-style: none; margin-left: 38px; padding: 0 0 32px 42px; border-left: 2px solid #d7e1ee; }
.kh-migration-runbook li:before { counter-increment: step; content: counter(step); position: absolute; top: 0; left: -19px; width: 36px; height: 36px; display: grid; place-items: center; color: #fff; border-radius: 50%; background: #0b4fd8; font-weight: 900; }

.kh-security-hero { padding: 84px 0; color: #fff; background: #06152e; border-bottom: 8px solid #e2a91d; }
.kh-security-hero-grid { display: grid; grid-template-columns: 1fr .72fr; gap: 64px; }
.kh-security-hero h1 { color: #fff; }
.kh-security-signal { display: grid; grid-template-columns: 12px 1fr; gap: 18px; padding: 24px; border: 1px solid rgba(255,255,255,.24); }
.kh-security-signal:before { content: ''; background: #27d17f; }
.kh-responsibility { display: grid; grid-template-columns: 180px repeat(3,1fr); border-top: 1px solid #cfd9e6; border-left: 1px solid #cfd9e6; }
.kh-responsibility > * { padding: 18px; border-right: 1px solid #cfd9e6; border-bottom: 1px solid #cfd9e6; }
.kh-responsibility strong { background: #edf3fb; }
.kh-incident-line { display: grid; grid-template-columns: repeat(4,1fr); }
.kh-incident-line article { padding: 26px; border-top: 5px solid #e2a91d; background: #fff; }

.kh-news-header { padding: 54px 0 34px; border-bottom: 1px solid #cfd9e6; }
.kh-news-header-row { display: flex; justify-content: space-between; gap: 28px; align-items: end; }
.kh-news-header h1 { margin: 0; }
.kh-news-lead { display: grid; grid-template-columns: 1.18fr .82fr; min-height: 520px; }
.kh-news-lead img { width: 100%; height: 100%; object-fit: cover; }
.kh-news-lead-copy { padding: 58px; color: #fff; background: #0a347f; }
.kh-news-lead h2 { color: #fff; }
.kh-news-feed { border-top: 4px solid #081b3a; }
.kh-news-item { display: grid; grid-template-columns: 150px 1fr 160px; gap: 28px; padding: 30px 0; border-bottom: 1px solid #cfd9e6; }
.kh-news-item time, .kh-news-item a { font-weight: 800; }

.kh-free-hero { padding: 76px 0; background: #f2f6fb; }
.kh-free-hero-grid { display: grid; grid-template-columns: 1fr 440px; gap: 70px; align-items: center; }
.kh-free-terms { padding: 32px; color: #fff; background: #0a347f; border-bottom: 6px solid #e2a91d; }
.kh-free-terms strong { display: block; margin-bottom: 12px; font-size: 24px; }
.kh-free-price { padding: 34px; color: #fff; background: #0a347f; border-top: 6px solid #e2a91d; box-shadow: 0 18px 45px rgba(7,32,73,.14); }
.kh-free-price > span { display: block; color: #f6c43d; font-weight: 900; text-transform: uppercase; }
.kh-free-price > strong { display: block; margin: 12px 0; color: #fff; font-size: 54px; line-height: 1; }
.kh-free-price > strong small { font-size: 16px; font-weight: 700; }
.kh-free-price p { color: #dbe7fb; }
.kh-free-price > a { display: inline-block; padding: 11px 18px; color: #071c43; background: #f0b51b; font-weight: 900; }
.kh-growth-cta { display: flex; align-items: center; justify-content: space-between; gap: 38px; }
.kh-eligibility { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid #cfd9e6; border-left: 1px solid #cfd9e6; }
.kh-eligibility article { padding: 28px; border-right: 1px solid #cfd9e6; border-bottom: 1px solid #cfd9e6; }
.kh-eligibility i { color: #0b4fd8; font-size: 26px; }
.kh-free-application { display: grid; grid-template-columns: .8fr 1.2fr; gap: 64px; }
.kh-free-steps { counter-reset: apply; }
.kh-free-steps li { list-style: none; padding: 18px 0; border-bottom: 1px solid #d7e0ec; }
.kh-free-steps li:before { counter-increment: apply; content: '0' counter(apply); margin-right: 18px; color: #b57b00; font-weight: 900; }
.kh-free-policy-hero { padding: 58px 0; background: #fff; border-top: 8px solid #0b4fd8; border-bottom: 1px solid #cfd9e6; }
.kh-free-policy-layout { display: grid; grid-template-columns: 280px 1fr; gap: 70px; }
.kh-free-policy-nav { position: sticky; top: 24px; align-self: start; padding: 24px; background: #f2f6fb; }
.kh-free-policy-nav a { display: block; padding: 9px 0; border-bottom: 1px solid #d7e0ec; }
.kh-free-policy-copy section { padding-bottom: 28px; margin-bottom: 28px; border-bottom: 1px solid #d7e0ec; }
.kh-policy-warning { padding: 24px; border-left: 5px solid #e2a91d; background: #fff8dd; }
@media (max-width: 991.98px) { .kh-blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .kh-blog-intro, .kh-blog-featured, .kh-article-shell, .kh-location-grid, .kh-location-hero-grid, .kh-vps-hero-grid, .kh-vps-details, .kh-legal-layout, .kh-agency-hero-grid, .kh-school-hero-grid, .kh-nonprofit-ledger, .kh-security-hero-grid, .kh-news-lead, .kh-free-hero-grid, .kh-free-application, .kh-free-policy-layout, .kh-home-solutions > .container { grid-template-columns: 1fr; } .kh-article-aside, .kh-legal-nav, .kh-solutions-intro, .kh-free-policy-nav { position: static; } .kh-home-three, .kh-vps-grid { grid-template-columns: 1fr; } .kh-vps-plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .kh-vps-cycle-switcher { grid-template-columns: repeat(3, minmax(0, 1fr)); } .kh-vps-cycle-switcher button:nth-child(3) { border-right: 0; } .kh-vps-cycle-switcher button:nth-child(-n+3) { border-bottom: 1px solid #dce4ef; } .kh-location-services, .kh-commerce-events { grid-template-columns: 1fr; } .kh-location-trust-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .kh-agency-rail, .kh-commerce-board, .kh-guide-index, .kh-eligibility, .kh-home-announcement-grid { grid-template-columns: repeat(2,1fr); } .kh-incident-line { grid-template-columns: repeat(2,1fr); } .kh-news-lead img { height: 360px; } .kh-footer-badges { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767.98px) {
  .kh-blog-hero, .kh-legal-header { padding: 48px 0; }
  .kh-blog-hero { height: 360px; min-height: 0; padding: 0; }
  .kh-blog-hero > .container { padding-right: 18px; padding-left: 18px; }
  .kh-blog-hero h1, .kh-legal-header h1, .kh-article-header h1 { font-size: 32px; }
  .kh-blog-grid { grid-template-columns: 1fr; }
  .kh-blog-controls { align-items: stretch; flex-direction: column; }
  .kh-blog-search { width: 100%; }
  .kh-article-related-grid { grid-template-columns: 1fr; }
  .kh-blog-meta { align-items: flex-start; flex-direction: column; }
  .kh-location-hero { padding: 46px 0; }
  .kh-location-hero h1 { font-size: 34px; }
  .kh-location-trust-grid, .kh-location-checks { grid-template-columns: 1fr; }
  .kh-location-trust article { border-right: 0; border-bottom: 1px solid #e2e8f0; }
  .kh-location-cta-grid { align-items: flex-start; flex-direction: column; }
  .kh-vps-plan-toolbar { align-items: stretch; flex-direction: column; }
  .kh-vps-currency { width: 100%; }
  .kh-vps-plan-grid { grid-template-columns: 1fr; }
  .tt-hero #khHeroTitle { font-size: 40px; }
  .kh-vps-cycle-switcher { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kh-vps-cycle-switcher button:nth-child(odd) { border-right: 1px solid #dce4ef; }
  .kh-vps-cycle-switcher button:nth-child(even) { border-right: 0; }
  .kh-vps-cycle-switcher button:nth-child(-n+4) { border-bottom: 1px solid #dce4ef; }
  .kh-provider-research a { grid-template-columns: 38px 1fr; }
  .kh-provider-research small { grid-column: 2; }
  .kh-legal-layout { padding-top: 38px; gap: 34px; }
  .kh-location-page .container, .kh-home-blog > .container, .kh-blog-listing > .container { padding-right: 18px; padding-left: 18px; }
  .kh-home-blog article img { height: 180px; }
  .kh-growth-page h1 { font-size: 38px; }
  .kh-growth-section { padding: 52px 0; }
  .kh-agency-photo { height: 380px; }
  .kh-agency-rail, .kh-commerce-board, .kh-guide-index, .kh-eligibility, .kh-incident-line { grid-template-columns: 1fr; }
  .kh-school-image-strip { height: 320px; }
  .kh-school-checklist { columns: 1; }
  .kh-nonprofit-hero:after { opacity: .18; width: 100%; }
  .kh-nonprofit-hero-copy { width: 100%; }
  .kh-route-map { grid-template-columns: 1fr; }
  .kh-route-arrow { min-height: 58px; transform: rotate(90deg); }
  .kh-responsibility { grid-template-columns: 120px repeat(3, minmax(120px,1fr)); overflow-x: auto; }
  .kh-news-header-row { align-items: flex-start; flex-direction: column; }
  .kh-news-item { grid-template-columns: 1fr; gap: 8px; }
  .kh-home-announcements-head { align-items: flex-start; flex-direction: column; }
  .kh-home-announcement-grid { grid-template-columns: 1fr; }
  .kh-partner-band-inner { grid-template-columns: 1fr; gap: 24px; }
  .kh-partner-band a { min-height: 96px; }
  .kh-free-hero-grid { gap: 32px; }
  .kh-growth-cta { align-items: flex-start; flex-direction: column; }
  .kh-footer-trust-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kh-footer-badges { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 6px; }
  .kh-footer-badge-media,
  .kh-footer-badge-media img { width: 64px; height: 64px; }
  .kh-footer-badge-media { flex-basis: 64px; }
  .kh-footer-image-badge strong { margin-top: 7px; font-size: 10px; }
  .kh-footer-image-badge small { font-size: 8px; }
}

@media (max-width: 767.98px) {
  .kh-brand-logo img,
  .navbar-brand.kh-brand-logo .logo-img {
    height: 50px;
    max-width: 220px;
  }
}


/* Live WHMCS-backed dedicated-page pricing */
.kh-live-pricing,.kh-live-faq{width:100%;padding:72px 0;background:#f5f7fb;color:#071c43}.kh-live-faq{background:#fff}.kh-live-pricing-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:28px}.kh-live-pricing-head p,.kh-live-faq-head p{margin:0 0 7px;color:#b57c00;font-size:13px;font-weight:800;text-transform:uppercase}.kh-live-pricing-head h2,.kh-live-faq-head h2{margin:0 0 8px;font-size:34px}.kh-live-pricing-head label{display:grid;gap:7px;font-weight:700}.kh-live-pricing-head select{min-width:120px;padding:10px 34px 10px 12px;border:1px solid #cbd5e1;background:#fff}.kh-live-cycle-switcher{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.kh-live-cycle-switcher button{min-height:48px;padding:8px 16px;border:1px solid #cbd5e1;background:#fff;color:#071c43;font-weight:800}.kh-live-cycle-switcher button small{display:block;color:#5c6b82;font-size:11px}.kh-live-cycle-switcher button.is-active{border-color:#1557d6;background:#1557d6;color:#fff}.kh-live-cycle-switcher button.is-active small{color:#fff}.kh-live-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.kh-live-plan{display:flex;min-width:0;flex-direction:column;padding:26px;border:1px solid #d8e0ec;border-top:4px solid #e5aa12;background:#fff;border-radius:6px}.kh-live-plan>p:first-child{margin:0 0 6px;color:#64748b;font-size:13px;font-weight:700}.kh-live-plan h3{margin:0 0 18px;font-size:24px}.kh-live-price strong{display:block;font-size:31px}.kh-live-price span{color:#64748b}.kh-live-price em{display:inline-block;margin-left:8px;color:#087a4b;font-style:normal;font-weight:800}.kh-live-plan ul{flex:1;margin:22px 0;padding:0;list-style:none}.kh-live-plan li{position:relative;padding:7px 0 7px 22px}.kh-live-plan li:before{position:absolute;left:0;color:#0c8a54;content:'\2713';font-weight:900}.kh-live-plan-status{min-height:24px;color:#a63f31}.kh-live-plan [aria-disabled="true"]{pointer-events:none;opacity:.48}.kh-live-empty{padding:22px;border-left:4px solid #e5aa12;background:#fff}.kh-live-faq-head{margin-bottom:24px}.kh-live-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.kh-live-faq details{border:1px solid #d8e0ec;border-radius:4px;background:#fff}.kh-live-faq summary{padding:17px 20px;cursor:pointer;font-weight:800}.kh-live-faq details p{margin:0;padding:0 20px 18px;color:#4b5d77;line-height:1.7}
@media(max-width:991.98px){.kh-live-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767.98px){.kh-live-pricing,.kh-live-faq{padding:52px 0}.kh-live-pricing-head{align-items:start;flex-direction:column}.kh-live-plan-grid,.kh-live-faq-grid{grid-template-columns:1fr}.kh-live-cycle-switcher{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}.kh-live-cycle-switcher button{width:100%}}
@media(max-width:767.98px){.kh-vps-faq-grid{grid-template-columns:1fr}}


/* Public status dashboard backed by WHMCS records */
.kh-status-page{color:#071c43}.kh-status-hero{padding:72px 0;background:#092d79;color:#fff;border-bottom:5px solid #e5aa12}.kh-status-hero-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.7fr);align-items:center;gap:44px}.kh-status-hero p,.kh-status-heading>p,.kh-status-contact p{margin:0 0 8px;color:#f3be27;font-size:13px;font-weight:900;text-transform:uppercase}.kh-status-hero h1{margin:0 0 12px;color:#fff;font-size:48px}.kh-status-hero span{display:block;max-width:760px;font-size:19px;line-height:1.65}.kh-status-summary{display:grid;grid-template-columns:auto 1fr;gap:5px 14px;padding:24px;border:1px solid rgba(255,255,255,.28);background:rgba(0,0,0,.12)}.kh-status-summary i{grid-row:1/3;font-size:30px}.kh-status-summary strong{font-size:19px}.kh-status-summary small{opacity:.82}.kh-status-summary.is-clear i{color:#4ade80}.kh-status-summary.has-issues i{color:#fbbf24}.kh-status-section{padding:70px 0}.kh-status-section--soft{background:#f5f7fb}.kh-status-heading{margin-bottom:28px}.kh-status-heading h2{margin:0 0 8px;font-size:34px}.kh-status-heading span{color:#52627a}.kh-status-message{display:flex;align-items:center;gap:18px;padding:26px;border:1px solid #d8e0ec;background:#fff}.kh-status-message i{color:#0c8a54;font-size:32px}.kh-status-message strong{font-size:20px}.kh-status-message p{margin:4px 0 0}.kh-status-message.is-warning{border-left:5px solid #d97706}.kh-issue-list{display:grid;gap:14px}.kh-issue{padding:24px;border:1px solid #d8e0ec;border-left:5px solid #d97706;background:#fff}.kh-issue>div{display:flex;justify-content:space-between;gap:18px}.kh-issue span,.kh-issue em{color:#6b7280;font-size:12px;font-style:normal;font-weight:800;text-transform:uppercase}.kh-issue h3{margin:10px 0;font-size:24px}.kh-issue p{margin:7px 0;color:#45556d}.kh-issue time{display:block;margin-top:12px;color:#64748b;font-size:13px}.kh-server-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.kh-server-grid article{padding:25px;border:1px solid #d8e0ec;border-top:4px solid #1557d6;background:#fff}.kh-server-grid i{color:#1557d6;font-size:28px}.kh-server-grid h3{margin:16px 0 7px}.kh-server-grid p{margin:0;color:#52627a}.kh-status-contact{padding:54px 0;background:#071c43;color:#fff}.kh-status-contact .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.kh-status-contact h2{margin:0 0 8px;color:#fff}.kh-status-contact span{color:#c7d3e8}@media(max-width:767.98px){.kh-status-hero-grid,.kh-server-grid{grid-template-columns:1fr}.kh-status-hero h1{font-size:38px}.kh-status-contact .container{align-items:flex-start;flex-direction:column}}


/* Founder and acquisition */
.kh-founder-hero{position:relative;min-height:620px;display:flex;align-items:flex-end;overflow:hidden;background:#071b43}.kh-founder-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 22%}.kh-founder-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,19,51,.93),rgba(4,19,51,.7) 48%,rgba(4,19,51,.18))}.kh-founder-hero-content{position:relative;z-index:1;padding-top:230px;padding-bottom:76px;color:#fff}.kh-founder-hero-content p,.kh-founder-hero-content span{display:block;max-width:720px;font-size:20px}.kh-founder-hero-content p{margin-bottom:14px;color:#f0b51f;font-weight:700;text-transform:uppercase}.kh-founder-hero-content h1{max-width:900px;margin:0 0 18px;color:#fff;font-size:64px;line-height:1.05}.kh-founder-intro,.kh-founder-focus,.kh-founder-faq,.kh-founder-cta{padding:86px 0}.kh-founder-intro-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:72px}.kh-founder-intro h2,.kh-founder-timeline h2,.kh-founder-focus h2,.kh-founder-faq h2,.kh-founder-cta h2{font-size:40px;line-height:1.18}.kh-founder-intro p{color:#4f5f74;font-size:19px;line-height:1.85}.kh-founder-timeline{padding:86px 0;color:#fff;background:#08266a}.kh-founder-timeline h2{max-width:780px;color:#fff}.kh-founder-dates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:42px;border-top:1px solid rgba(255,255,255,.2)}.kh-founder-dates article{padding:32px 32px 24px 0}.kh-founder-dates article+article{padding-left:32px;border-left:1px solid rgba(255,255,255,.2)}.kh-founder-dates time{color:#f0b51f;font-weight:800}.kh-founder-dates h3{margin:12px 0;color:#fff}.kh-founder-dates p{color:#d7e2f7}.kh-founder-sources{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.2)}.kh-founder-sources a{color:#fff;text-decoration:underline}.kh-founder-focus-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:40px;border-top:1px solid #dce4ef;border-bottom:1px solid #dce4ef}.kh-founder-focus-grid article{padding:34px 26px}.kh-founder-focus-grid article+article{border-left:1px solid #dce4ef}.kh-founder-focus-grid span{color:#b77f00;font-weight:800}.kh-founder-focus-grid p{color:#607087}.kh-founder-faq{background:#f4f7fb}.kh-founder-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;margin-top:34px}.kh-founder-faq details{padding:20px 22px;background:#fff;border:1px solid #dbe4f0}.kh-founder-faq summary{color:#0b1d3a;font-weight:800;cursor:pointer}.kh-founder-faq details p{margin:14px 0 0;color:#5a6a80}.kh-founder-cta>.container{display:flex;align-items:center;justify-content:space-between;gap:30px}.kh-founder-cta .btn+.btn{margin-left:10px}.kh-nairahost-hero-partner{min-width:260px!important;gap:10px;text-decoration:none!important}.kh-nairahost-hero-partner span{color:#071b43;font-size:12px;font-weight:800;white-space:nowrap}.kh-footer-review-evidence{display:none!important}
@media(max-width:991.98px){.kh-founder-hero{min-height:540px}.kh-founder-hero-content h1{font-size:48px}.kh-founder-intro-grid{grid-template-columns:1fr;gap:22px}.kh-founder-dates,.kh-founder-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kh-founder-dates article:nth-child(3),.kh-founder-focus-grid article:nth-child(3){border-left:0}.kh-founder-cta>.container{align-items:flex-start;flex-direction:column}}
@media(max-width:575.98px){.kh-founder-hero{min-height:500px}.kh-founder-hero>img{object-position:62% 20%}.kh-founder-hero-shade{background:rgba(4,19,51,.76)}.kh-founder-hero-content{padding-top:210px;padding-bottom:48px}.kh-founder-hero-content h1{font-size:38px}.kh-founder-hero-content p,.kh-founder-hero-content span{font-size:16px}.kh-founder-intro,.kh-founder-timeline,.kh-founder-focus,.kh-founder-faq,.kh-founder-cta{padding:58px 0}.kh-founder-intro h2,.kh-founder-timeline h2,.kh-founder-focus h2,.kh-founder-faq h2,.kh-founder-cta h2{font-size:31px}.kh-founder-dates,.kh-founder-focus-grid,.kh-founder-faq-grid{grid-template-columns:1fr}.kh-founder-dates article+article,.kh-founder-focus-grid article+article{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.2)}.kh-founder-focus-grid article+article{padding-left:26px;border-top-color:#dce4ef}.kh-founder-cta .btn{display:block;width:100%;margin:8px 0!important}}


/* Consistent ten-question public FAQ layout */
.kh-growth-faq,.kh-location-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px}.kh-growth-faq>p,.kh-growth-faq>h2,.kh-location-faq>.kh-location-heading{grid-column:1/-1}.kh-growth-faq details,.kh-location-faq details{min-width:0}@media(max-width:767.98px){.kh-growth-faq,.kh-location-faq{grid-template-columns:1fr}.kh-growth-faq>p,.kh-growth-faq>h2,.kh-location-faq>.kh-location-heading{grid-column:auto}}

/* September 2026 public-page layout corrections */
/* Hide the empty system content wrapper used by custom full-width pages. */
body:has(#khHeroTitle) section#main-body:not(:has(.primary-content > *)){display:none!important}
.kh-domain-extension-section{padding-top:72px!important;padding-bottom:72px!important;background:#f5f7fb!important}
.kh-domain-extension-section .card{border:1px solid #d8e0ec!important;border-top:4px solid #1457d9!important;border-radius:6px!important;box-shadow:none!important}
.kh-domain-extension-section .card>.mb-3{height:104px!important;border:1px solid #d8e0ec!important;border-radius:4px!important;background:#fff!important;box-shadow:none!important}
.kh-domain-extension-section .card>.mb-3 span{color:#0b2b66!important;text-shadow:none!important}
.kh-domain-extension-section .badge{border-radius:3px!important}
.kh-runtime-page,.kh-government-page,.kh-whois-page{color:#10213d;background:#fff}
.kh-runtime-page .container,.kh-government-page .container,.kh-whois-page .container{width:100%;max-width:1240px;padding-right:24px;padding-left:24px}
.kh-simple-hero{padding:74px 0;border-bottom:5px solid #e5ad19;color:#fff;background:#071b43}
.kh-simple-hero h1{max-width:800px;margin:0 0 18px;color:#fff;font-size:48px;line-height:1.1}
.kh-simple-hero p{max-width:780px;margin:0;color:#d7e3f6;font-size:18px;line-height:1.7}
.kh-simple-hero .btn{margin-top:26px}
.kh-feature-band,.kh-whois-section{padding:70px 0}.kh-feature-band--soft{background:#f2f5f9}
.kh-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.kh-feature-grid article{padding:26px;border:1px solid #d7e0ec;border-top:4px solid #1557d6;background:#fff}
.kh-feature-grid h3{margin:14px 0 8px;font-size:21px}.kh-feature-grid p{margin:0;color:#52637a;line-height:1.65}
.kh-page-heading{max-width:760px;margin-bottom:34px}.kh-page-heading h2{margin:0 0 12px;font-size:36px}.kh-page-heading p{margin:0;color:#52637a;line-height:1.7}
.kh-whois-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;max-width:850px}.kh-whois-form input{min-height:58px;padding:0 18px;border:1px solid #b9c6d8;font-size:17px}.kh-whois-result{margin-top:30px;padding:28px;border:1px solid #d3ddea;border-top:4px solid #1557d6;background:#fff}.kh-whois-data{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid #d8e0ec}.kh-whois-data div{padding:16px 10px;border-bottom:1px solid #d8e0ec}.kh-whois-data strong{display:block;margin-bottom:4px;font-size:13px;text-transform:uppercase}.kh-whois-data span{overflow-wrap:anywhere}
.kh-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.kh-faq-grid details{border:1px solid #d8e0ec;background:#fff}.kh-faq-grid summary{padding:18px 20px;cursor:pointer;font-weight:800}.kh-faq-grid details p{margin:0;padding:0 20px 18px;color:#52637a;line-height:1.65}
@media(max-width:767.98px){.kh-simple-hero h1{font-size:38px}.kh-feature-grid,.kh-whois-data,.kh-faq-grid{grid-template-columns:1fr}.kh-whois-form{grid-template-columns:1fr}.kh-whois-form .btn{width:100%}.kh-runtime-page .kh-feature-band>.container[style]{display:block!important}.kh-runtime-page .kh-feature-band img{margin-bottom:28px}}
.kh-security-hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);align-items:center}.kh-security-signal{min-width:0;grid-template-columns:12px minmax(0,1fr)}.kh-security-signal>div{min-width:0}.kh-security-signal strong{display:block;margin-bottom:8px;font-size:20px}.kh-security-signal p{margin:0;overflow-wrap:normal;word-break:normal}.kh-article-related a{display:flex;min-width:0;flex-direction:column;gap:10px;font-weight:400}.kh-article-related .kh-blog-category{display:block;margin:0;color:#a56f00;font-size:12px;font-weight:900;line-height:1.2;text-transform:uppercase}.kh-related-title{display:block;font-size:18px;font-weight:800;line-height:1.45}.kh-server-grid,.kh-status-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.kh-status-method-grid article{padding:25px;border:1px solid #d8e0ec;border-top:4px solid #1557d6;background:#fff}.kh-status-method-grid i{color:#1557d6;font-size:28px}.kh-status-method-grid h3{margin:16px 0 7px}.kh-status-method-grid p{margin:0;color:#52627a;line-height:1.65}.kh-migration-reasons-legacy .card{padding:22px!important;border:1px solid #e0e6ef!important;border-radius:6px!important;box-shadow:none!important}.kh-migration-reasons-legacy .card>.mb-4{height:160px!important;margin-bottom:20px!important;border-radius:4px!important;box-shadow:none!important}.kh-migration-reasons-legacy .card h4{margin-top:0!important;font-size:20px!important}.kh-migration-reasons-legacy .row{align-items:stretch}@media(max-width:991.98px){.kh-security-hero-grid{grid-template-columns:1fr}.kh-migration-reasons-legacy .col-md-6{margin-bottom:20px!important}}@media(max-width:767.98px){.kh-status-method-grid{grid-template-columns:1fr}.kh-security-signal{grid-template-columns:8px minmax(0,1fr);padding:20px}}
.kh-migration-safeguards .card{padding:22px!important;border-radius:6px!important}.kh-migration-safeguards .card>.mb-3{height:180px!important;border-radius:4px!important;box-shadow:none!important}.kh-migration-safeguards .text-center.mb-5{margin-bottom:38px!important}.kh-migration-safeguards .card h4{margin-top:0!important;font-size:20px!important}@media(max-width:991.98px){.kh-migration-safeguards .col-md-6{margin-bottom:20px!important}}

/* Migration service */
.kh-ms-page{color:#0b1d3a;background:#fff}.kh-ms-page .container{width:100%;max-width:none!important;padding-right:clamp(24px,6vw,120px);padding-left:clamp(24px,6vw,120px)}body:has(.kh-ms-page) .tt-page-header{display:none!important}body:has(.kh-ms-page) #main-body,body:has(.kh-ms-page) #main-body>.container,body:has(.kh-ms-page) #main-body>.container-fluid{width:100%!important;max-width:100%!important;padding:0!important}.kh-ms-hero{padding:78px 0;color:#fff;background:#071b43;border-bottom:6px solid #e6ad19}.kh-ms-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:70px;align-items:center}.kh-ms-kicker,.kh-ms-heading>p,.kh-ms-cta p{margin:0 0 10px;color:#e7ad17;font-size:13px;font-weight:900;text-transform:uppercase}.kh-ms-hero h1{max-width:760px;margin:0 0 18px;color:#fff;font-size:52px;line-height:1.08}.kh-ms-hero>div>div>span,.kh-ms-hero-grid>div>span{display:block;max-width:760px;color:#d9e4f7;font-size:19px;line-height:1.7}.kh-ms-intake{padding:30px;border:1px solid rgba(255,255,255,.24);background:#0a347f}.kh-ms-intake strong{display:block;margin-bottom:16px;font-size:23px}.kh-ms-intake ul{margin:0 0 18px;padding:0;list-style:none}.kh-ms-intake li{position:relative;padding:8px 0 8px 26px;color:#eef4ff}.kh-ms-intake li:before{position:absolute;left:0;color:#f1b91f;content:'\2713';font-weight:900}.kh-ms-intake small{display:block;padding-top:16px;border-top:1px solid rgba(255,255,255,.2);color:#cad7eb;line-height:1.5}.kh-ms-route,.kh-ms-scope,.kh-ms-validation,.kh-ms-faq,.kh-ms-cta{padding:76px 0}.kh-ms-heading{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:10px 60px;align-items:end;margin-bottom:38px}.kh-ms-heading>p{grid-column:1}.kh-ms-heading h2{grid-column:1;margin:0;font-size:38px;line-height:1.18}.kh-ms-heading>span{grid-column:2;grid-row:1/3;color:#56677f;font-size:17px;line-height:1.7}.kh-ms-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;border-top:1px solid #d7e0ec;border-bottom:1px solid #d7e0ec;list-style:none}.kh-ms-steps li{min-width:0;padding:28px 24px}.kh-ms-steps li+li{border-left:1px solid #d7e0ec}.kh-ms-steps>li>span{color:#b67d00;font-size:13px;font-weight:900}.kh-ms-steps h3{margin:16px 0 8px;font-size:21px}.kh-ms-steps p{margin:0;color:#5a6b81;line-height:1.65}.kh-ms-scope{background:#f3f6fa}.kh-ms-scope-grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:68px;align-items:start}.kh-ms-scope-intro h2{margin:0 0 16px;font-size:38px}.kh-ms-scope-intro>span{display:block;color:#53647b;font-size:17px;line-height:1.75}.kh-ms-scope-intro>a{display:inline-block;margin-top:24px;font-weight:800}.kh-ms-scope-table{border-top:4px solid #1557d6;background:#fff}.kh-ms-scope-table>div{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #d7e0ec}.kh-ms-scope-table span,.kh-ms-scope-table strong{padding:18px 20px}.kh-ms-scope-table span+span,.kh-ms-scope-table strong+strong{border-left:1px solid #d7e0ec}.kh-ms-scope-table strong{background:#eaf1fb}.kh-ms-validation{color:#fff;background:#0a347f}.kh-ms-validation h2{max-width:760px;margin:0 0 36px;color:#fff;font-size:38px}.kh-ms-validation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.24);border-bottom:1px solid rgba(255,255,255,.24)}.kh-ms-validation-grid article{padding:28px 24px}.kh-ms-validation-grid article+article{border-left:1px solid rgba(255,255,255,.24)}.kh-ms-validation-grid i{color:#f1ba21;font-size:27px}.kh-ms-validation-grid h3{margin:17px 0 8px;color:#fff;font-size:20px}.kh-ms-validation-grid p{margin:0;color:#d6e2f4;line-height:1.65}.kh-ms-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.kh-ms-faq details{border:1px solid #d8e1ed;background:#fff}.kh-ms-faq summary{padding:18px 20px;cursor:pointer;font-weight:800}.kh-ms-faq details p{margin:0;padding:0 20px 18px;color:#52637a;line-height:1.7}.kh-ms-cta{background:#eef3f9}.kh-ms-cta>.container{display:flex;align-items:center;justify-content:space-between;gap:34px}.kh-ms-cta h2{max-width:820px;margin:0;font-size:32px}@media(max-width:991.98px){.kh-ms-hero-grid,.kh-ms-heading,.kh-ms-scope-grid{grid-template-columns:1fr}.kh-ms-heading>p,.kh-ms-heading h2,.kh-ms-heading>span{grid-column:1;grid-row:auto}.kh-ms-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.kh-ms-steps li:nth-child(3),.kh-ms-steps li:nth-child(5){border-left:0}.kh-ms-steps li:nth-child(n+3){border-top:1px solid #d7e0ec}.kh-ms-validation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kh-ms-validation-grid article:nth-child(3){border-left:0;border-top:1px solid rgba(255,255,255,.24)}.kh-ms-validation-grid article:nth-child(4){border-top:1px solid rgba(255,255,255,.24)}}@media(max-width:767.98px){.kh-ms-hero{padding:58px 0}.kh-ms-hero h1{font-size:39px}.kh-ms-route,.kh-ms-scope,.kh-ms-validation,.kh-ms-faq,.kh-ms-cta{padding:56px 0}.kh-ms-heading h2,.kh-ms-scope-intro h2,.kh-ms-validation h2{font-size:31px}.kh-ms-steps,.kh-ms-validation-grid,.kh-ms-faq-grid{grid-template-columns:1fr}.kh-ms-steps li+li,.kh-ms-validation-grid article+article{border-left:0;border-top:1px solid #d7e0ec}.kh-ms-scope-table>div{grid-template-columns:1fr}.kh-ms-scope-table span+span,.kh-ms-scope-table strong+strong{border-top:1px solid #d7e0ec;border-left:0}.kh-ms-cta>.container{align-items:flex-start;flex-direction:column}.kh-ms-cta .btn{width:100%}}
.kh-ms-page{color:#0b1d3a;background:#fff}.kh-ms-page .container{width:100%;max-width:none!important;padding-right:clamp(24px,6vw,120px);padding-left:clamp(24px,6vw,120px)}body:has(.kh-ms-page) .tt-page-header{display:none!important}body:has(.kh-ms-page) #main-body,body:has(.kh-ms-page) #main-body>.container,body:has(.kh-ms-page) #main-body>.container-fluid{width:100%!important;max-width:100%!important;padding:0!important}.kh-ms-hero{padding:78px 0;color:#fff;background:#071b43;border-bottom:6px solid #e6ad19}.kh-ms-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:70px;align-items:center}.kh-ms-kicker,.kh-ms-heading>p,.kh-ms-cta p{margin:0 0 10px;color:#e7ad17;font-size:13px;font-weight:900;text-transform:uppercase}.kh-ms-hero h1{max-width:760px;margin:0 0 18px;color:#fff;font-size:52px;line-height:1.08}.kh-ms-hero>div>div>span,.kh-ms-hero-grid>div>span{display:block;max-width:760px;color:#d9e4f7;font-size:19px;line-height:1.7}.kh-ms-intake{padding:30px;border:1px solid rgba(255,255,255,.24);background:#0a347f}.kh-ms-intake strong{display:block;margin-bottom:16px;font-size:23px}.kh-ms-intake ul{margin:0 0 18px;padding:0;list-style:none}.kh-ms-intake li{position:relative;padding:8px 0 8px 26px;color:#eef4ff}.kh-ms-intake li:before{position:absolute;left:0;color:#f1b91f;content:'\2713';font-weight:900}.kh-ms-intake small{display:block;padding-top:16px;border-top:1px solid rgba(255,255,255,.2);color:#cad7eb;line-height:1.5}.kh-ms-route,.kh-ms-scope,.kh-ms-validation,.kh-ms-faq,.kh-ms-cta{padding:76px 0}.kh-ms-heading{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:10px 60px;align-items:end;margin-bottom:38px}.kh-ms-heading>p{grid-column:1}.kh-ms-heading h2{grid-column:1;margin:0;font-size:38px;line-height:1.18}.kh-ms-heading>span{grid-column:2;grid-row:1/3;color:#56677f;font-size:17px;line-height:1.7}.kh-ms-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;border-top:1px solid #d7e0ec;border-bottom:1px solid #d7e0ec;list-style:none}.kh-ms-steps li{min-width:0;padding:28px 24px}.kh-ms-steps li+li{border-left:1px solid #d7e0ec}.kh-ms-steps>li>span{color:#b67d00;font-size:13px;font-weight:900}.kh-ms-steps h3{margin:16px 0 8px;font-size:21px}.kh-ms-steps p{margin:0;color:#5a6b81;line-height:1.65}.kh-ms-scope{background:#f3f6fa}.kh-ms-scope-grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:68px;align-items:start}.kh-ms-scope-intro h2{margin:0 0 16px;font-size:38px}.kh-ms-scope-intro>span{display:block;color:#53647b;font-size:17px;line-height:1.75}.kh-ms-scope-intro>a{display:inline-block;margin-top:24px;font-weight:800}.kh-ms-scope-table{border-top:4px solid #1557d6;background:#fff}.kh-ms-scope-table>div{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #d7e0ec}.kh-ms-scope-table span,.kh-ms-scope-table strong{padding:18px 20px}.kh-ms-scope-table span+span,.kh-ms-scope-table strong+strong{border-left:1px solid #d7e0ec}.kh-ms-scope-table strong{background:#eaf1fb}.kh-ms-validation{color:#fff;background:#0a347f}.kh-ms-validation h2{max-width:760px;margin:0 0 36px;color:#fff;font-size:38px}.kh-ms-validation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.24);border-bottom:1px solid rgba(255,255,255,.24)}.kh-ms-validation-grid article{padding:28px 24px}.kh-ms-validation-grid article+article{border-left:1px solid rgba(255,255,255,.24)}.kh-ms-validation-grid i{color:#f1ba21;font-size:27px}.kh-ms-validation-grid h3{margin:17px 0 8px;color:#fff;font-size:20px}.kh-ms-validation-grid p{margin:0;color:#d6e2f4;line-height:1.65}.kh-ms-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.kh-ms-faq details{border:1px solid #d8e1ed;background:#fff}.kh-ms-faq summary{padding:18px 20px;cursor:pointer;font-weight:800}.kh-ms-faq details p{margin:0;padding:0 20px 18px;color:#52637a;line-height:1.7}.kh-ms-cta{background:#eef3f9}.kh-ms-cta>.container{display:flex;align-items:center;justify-content:space-between;gap:34px}.kh-ms-cta h2{max-width:820px;margin:0;font-size:32px}@media(max-width:991.98px){.kh-ms-hero-grid,.kh-ms-heading,.kh-ms-scope-grid{grid-template-columns:1fr}.kh-ms-heading>p,.kh-ms-heading h2,.kh-ms-heading>span{grid-column:1;grid-row:auto}.kh-ms-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.kh-ms-steps li:nth-child(3),.kh-ms-steps li:nth-child(5){border-left:0}.kh-ms-steps li:nth-child(n+3){border-top:1px solid #d7e0ec}.kh-ms-validation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kh-ms-validation-grid article:nth-child(3){border-left:0;border-top:1px solid rgba(255,255,255,.24)}.kh-ms-validation-grid article:nth-child(4){border-top:1px solid rgba(255,255,255,.24)}}@media(max-width:767.98px){.kh-ms-hero{padding:58px 0}.kh-ms-hero h1{font-size:39px}.kh-ms-route,.kh-ms-scope,.kh-ms-validation,.kh-ms-faq,.kh-ms-cta{padding:56px 0}.kh-ms-heading h2,.kh-ms-scope-intro h2,.kh-ms-validation h2{font-size:31px}.kh-ms-steps,.kh-ms-validation-grid,.kh-ms-faq-grid{grid-template-columns:1fr}.kh-ms-steps li+li,.kh-ms-validation-grid article+article{border-left:0;border-top:1px solid #d7e0ec}.kh-ms-scope-table>div{grid-template-columns:repeat(2,minmax(0,1fr))}.kh-ms-scope-table span,.kh-ms-scope-table strong{min-width:0;padding:14px 11px;font-size:13px;overflow-wrap:anywhere}.kh-ms-scope-table span+span,.kh-ms-scope-table strong+strong{border-top:0;border-left:1px solid #d7e0ec}.kh-ms-cta>.container{align-items:flex-start;flex-direction:column}.kh-ms-cta .btn{width:100%}}

/* Restore the WHMCS product-category selector on mobile. */

@media (max-width: 767.98px) {

    .nh-client-checkout #order-standard_cart .sidebar-collapsed {

        display: block !important;

        margin-bottom: 18px;

    }

}
