/* NewtekSoft catalog v20260904d. Scoped to product listing; never checkout or client area. */
@property --ntk-catalog-edge-angle {
    syntax: '<angle>';
    initial-value: 0deg;
    inherits: false;
}
@keyframes ntkCatalogBorder {
    to { --ntk-catalog-edge-angle: 360deg; }
}
#ntk-plan-catalog {
    --ntk-surface: #0b1712;
    --ntk-border: rgba(154, 212, 177, .17);
    --ntk-accent: #62eea0;
    --ntk-text: #eff9f3;
    --ntk-muted: #acbcb3;
    display: block !important;
    position: relative;
    width: 100% !important;
    min-width: 0;
    max-width: 1440px !important;
    margin: 0 auto !important;
    padding: 20px 0 32px;
    color: var(--ntk-text);
    font-family: 'Inter', sans-serif;
    isolation: isolate;
}
#ntk-plan-catalog *, #ntk-plan-catalog *::before, #ntk-plan-catalog *::after { box-sizing: border-box; }
#ntk-plan-catalog .ntk-catalog-intro { margin: 0 0 30px; max-width: 850px; }
#ntk-plan-catalog .ntk-catalog-eyebrow {
    display: inline-flex; align-items: center; gap: 9px; margin-bottom: 15px;
    color: var(--ntk-accent); font: 600 11px/1.5 'Inter', sans-serif; letter-spacing: 2px;
}
#ntk-plan-catalog .ntk-catalog-eyebrow > span { width: 6px; height: 6px; border-radius: 50%; background: var(--ntk-accent); box-shadow: 0 0 12px #62eea055; }
#ntk-plan-catalog .ntk-catalog-intro h1 {
    color: var(--ntk-text) !important; font: 600 clamp(28px, 3.2vw, 44px)/1.12 'Outfit', sans-serif !important;
    letter-spacing: -1.3px; margin: 0 0 14px !important; text-align: left;
}
#ntk-plan-catalog .ntk-catalog-intro p { margin: 0; max-width: 680px; color: var(--ntk-muted) !important; font: 400 15px/1.7 'Inter', sans-serif; }

/* Retain the native category and cart links, presented as a wrapping toolbar. */
#ntk-plan-catalog .ntk-catalog-nav {
    display: flex !important; flex-wrap: wrap; align-items: center; justify-content: space-between;
    gap: 10px 20px; position: static !important; width: 100% !important; min-width: 0 !important;
    padding: 12px; margin: 0 0 28px; border: 2px solid transparent; border-radius: 14px;
    background: linear-gradient(#000, #000) padding-box,
        conic-gradient(from var(--ntk-catalog-edge-angle, 0deg), #00f26f, #25c8e8, #fff, #00f26f, #00f26f) border-box;
    animation: ntkCatalogBorder 3.2s linear infinite;
}
#ntk-plan-catalog .ntk-catalog-nav .panel {
    border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
    background: transparent !important; margin: 0 !important; min-width: 0;
}
#ntk-plan-catalog .ntk-catalog-nav .panel-heading { display: none !important; }
#ntk-plan-catalog .ntk-catalog-nav .list-group { display: flex !important; flex-direction: row !important; flex-wrap: wrap; gap: 5px; margin: 0; padding: 0; }
#ntk-plan-catalog .ntk-catalog-nav .list-group-item {
    flex: 0 1 auto; min-width: 0; width: auto !important; display: flex; align-items: center; min-height: 42px;
    padding: 10px 14px !important; margin: 0 !important; border: 2px solid transparent !important;
    border-radius: 8px !important; color: #00f26f !important;
    background: linear-gradient(#000, #000) padding-box,
        conic-gradient(from var(--ntk-catalog-edge-angle, 0deg), #00f26f, #25c8e8, #fff, #00f26f, #00f26f) border-box !important;
    animation: ntkCatalogBorder 3.2s linear infinite;
    font: 500 12px/1.5 'Inter', sans-serif; text-decoration: none; overflow-wrap: anywhere;
    transition: color .18s, box-shadow .18s; box-shadow: none !important;
}
#ntk-plan-catalog .ntk-catalog-nav .list-group-item::before, #ntk-plan-catalog .ntk-catalog-nav .list-group-item::after { content: none !important; }
#ntk-plan-catalog .ntk-catalog-nav .list-group-item.active { color: #fff !important; font-weight: 700; text-decoration-line: underline !important; text-decoration-color: #00f26f !important; text-underline-offset: 5px; text-decoration-thickness: 1px; }
#ntk-plan-catalog .ntk-catalog-nav .list-group-item:hover { color: #fff !important; box-shadow: 0 0 0 3px #49c88113 !important; }
#ntk-plan-catalog #premiumComparisonSidebar .list-group-item:focus-visible { outline: 2px solid #81ecd3 !important; outline-offset: 4px !important; }

#ntk-plan-catalog .ntk-plan-main, #ntk-plan-catalog #de-custom_comparison,
#ntk-plan-catalog .main-container, #ntk-plan-catalog .price-table-container {
    width: 100%; min-width: 0; max-width: none; padding: 0; margin: 0; background: transparent !important;
}
#ntk-plan-catalog #products > .ntk-plan-grid {
    display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px;
    padding: 0 !important; margin: 0 !important; list-style: none; align-items: stretch;
}
#ntk-plan-catalog #products > .ntk-plan-grid > li {
    display: flex; width: auto !important; min-width: 0 !important; max-width: none !important;
    padding: 0 !important; margin: 0 !important; float: none; background: none !important;
    border: 0 !important; text-align: left; list-style: none;
}
#ntk-plan-catalog #products .price-table {
    width: 100% !important; min-width: 0 !important; max-width: 100%; margin: 0 !important;
    padding: 0 !important; display: flex; flex-direction: column; position: relative;
    background: linear-gradient(#000, #000) padding-box,
        conic-gradient(from var(--ntk-catalog-edge-angle, 0deg), #00f26f, #25c8e8, #fff, #00f26f, #00f26f) border-box !important;
    border: 2px solid transparent !important; border-radius: 18px !important;
    animation: ntkCatalogBorder 3.2s linear infinite;
    box-shadow: 0 12px 32px #00000024, inset 0 1px 0 #ffffff05; overflow: hidden !important;
    transition: border-color .2s, box-shadow .2s, transform .2s;
}
#ntk-plan-catalog #products .price-table::before {
    content: none;
}
#ntk-plan-catalog #products .price-table:hover { border-color: transparent !important; box-shadow: 0 16px 40px #00000040; transform: translateY(-3px); }
#ntk-plan-catalog #products .ntk-plan-featured .price-table { border-color: transparent !important; }
#ntk-plan-catalog #products .top-head {
    padding: 25px 24px 18px !important; margin: 0; border: 0 !important; background: transparent !important;
    border-radius: 0; text-align: left; color: var(--ntk-text);
}
#ntk-plan-catalog .ntk-plan-heading { display: flex; justify-content: space-between; align-items: center; gap: 8px; min-height: 38px; margin-bottom: 22px; }
#ntk-plan-catalog .ntk-plan-icon {
    display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; flex: 0 0 38px;
    border: 1px solid #315940; border-radius: 10px; color: #80e6a9; background: #1a3524;
    font-size: 16px;
}
#ntk-plan-catalog .ntk-plan-platform { display: inline-flex; align-items: center; gap: 10px; min-width: 0; }
#ntk-plan-catalog .ntk-plan-icon--cpanel svg { display: block; width: 26px; height: 18px; flex: 0 0 auto; }
#ntk-plan-catalog .ntk-plan-platform-name { color: #eff9f3; font: 600 15px/1.3 'Inter', sans-serif; white-space: nowrap; }
#ntk-plan-catalog #products .popular-plan { padding: 5px 8px; border: 1px solid #356e49; border-radius: 6px; color: #a7f1c5; background: #193a27; font: 600 10px/1.4 'Inter', sans-serif; letter-spacing: .5px; max-width: 70%; }
#ntk-plan-catalog #products .top-area { padding: 0; margin: 0; border: 0; background: none; }
#ntk-plan-catalog #products .top-area h2 {
    color: var(--ntk-text) !important; background: none !important; border: 0; border-radius: 0;
    padding: 0; margin: 0 0 12px !important; font: 600 23px/1.25 'Outfit', sans-serif;
    letter-spacing: -.4px; text-transform: none; overflow-wrap: anywhere;
}
#ntk-plan-catalog .ntk-plan-tagline { margin: 0 0 12px; color: var(--ntk-muted); font: 400 13px/1.5 'Inter', sans-serif; overflow-wrap: anywhere; }
#ntk-plan-catalog #products .price-area { padding: 0; margin: 0; background: none; border: 0; color: var(--ntk-muted) !important; }
#ntk-plan-catalog #products .price {
    padding: 0; margin: 0; min-height: 54px; color: var(--ntk-muted) !important;
    font: 500 14px/1.35 'Outfit', sans-serif; overflow-wrap: anywhere;
}
#ntk-plan-catalog #products .price > span {
    display: inline; font: 600 clamp(30px, 2.8vw, 43px)/1.15 'Outfit', sans-serif;
    letter-spacing: -1.5px; color: #f1fcf5 !important; background: none !important;
    -webkit-text-fill-color: currentColor !important; text-shadow: none; margin-right: 4px;
}
#ntk-plan-catalog .ntk-setup-fee, #ntk-plan-catalog .ntk-price-from { display: block; color: var(--ntk-muted); font: 400 12px/1.5 'Inter', sans-serif; letter-spacing: 0; }
#ntk-plan-catalog #products .de-pricing-bottom { background: transparent !important; padding: 0 24px 24px !important; margin: 0; border: 0; }
#ntk-plan-catalog #products .ntk-plan-cta {
    display: flex !important; align-items: center; justify-content: space-between; gap: 12px;
    width: 100%; min-height: 48px; padding: 13px 16px !important; margin: 0;
    border: 2px solid transparent !important; border-radius: 9px !important;
    background: linear-gradient(#000, #000) padding-box,
        conic-gradient(from var(--ntk-catalog-edge-angle, 0deg), #00f26f, #25c8e8, #fff, #00f26f, #00f26f) border-box !important;
    animation: ntkCatalogBorder 3.2s linear infinite;
    color: #00f26f !important; font: 600 13px/1.5 'Inter', sans-serif; text-transform: none;
    text-decoration: none !important; box-shadow: none !important; letter-spacing: 0; position: relative;
    transition: box-shadow .2s, color .2s, transform .2s;
}
#ntk-plan-catalog #products .ntk-plan-cta::before, #ntk-plan-catalog #products .ntk-plan-cta::after { content: none !important; }
#ntk-plan-catalog #products .ntk-plan-cta i { color: #78e5a5; font-size: 12px; transition: transform .2s; }
#ntk-plan-catalog #products .ntk-plan-cta:hover { color: #fff !important; box-shadow: 0 0 0 3px #49c88113 !important; transform: translateY(-1px); }
#ntk-plan-catalog #products .ntk-plan-cta:hover i { transform: translateX(3px); }
#ntk-plan-catalog a:focus-visible { outline: 2px solid #81ecd3 !important; outline-offset: 4px; }
#ntk-plan-catalog .ntk-plan-unavailable { display: block; min-height: 48px; padding: 13px 16px; border: 1px solid #44544a; border-radius: 9px; color: #b5c1b9; background: #17231b; text-align: center; font-size: 13px; }

/* Product descriptions are merchant HTML: wrap instead of truncating or squeezing. */
#ntk-plan-catalog #products .de-pricing-mid { padding: 0 24px 24px; margin: 0; flex: 1; background: transparent !important; }
#ntk-plan-catalog #products .ntk-plan-features, #ntk-plan-catalog #products .ntk-plan-features ul {
    display: block !important; width: 100%; padding: 0; margin: 0; list-style: none; text-align: left;
}
#ntk-plan-catalog #products .ntk-plan-features { padding-top: 22px; border-top: 1px solid var(--ntk-border); }
#ntk-plan-catalog #products .ntk-plan-features li {
    width: 100%; min-width: 0; max-width: 100%; margin: 0; padding: 9px 0;
    background: transparent !important; border: 0 !important; color: #bdcec4 !important;
    font: 400 13px/1.65 'Inter', sans-serif !important; white-space: normal !important;
    overflow: visible !important; text-overflow: clip !important; overflow-wrap: anywhere;
}
#ntk-plan-catalog #products .ntk-plan-features > .ntk-plan-description { padding: 0; }
#ntk-plan-catalog #products .ntk-plan-description > br { display: none; }
#ntk-plan-catalog #products .ntk-plan-description h4 {
    display: block; margin: 0 0 12px !important; padding: 0; color: #e3f2e9 !important;
    font: 500 15px/1.5 'Outfit', sans-serif !important; letter-spacing: 0; white-space: normal; overflow-wrap: anywhere;
}
#ntk-plan-catalog #products .ntk-plan-description h5 {
    display: block; margin: 0 !important; padding: 10px 0; color: #bdcec4 !important;
    font: 400 13px/1.65 'Inter', sans-serif !important; letter-spacing: 0; white-space: normal; overflow-wrap: anywhere;
    border-bottom: 1px solid #bbdfc707;
}
#ntk-plan-catalog #products .ntk-plan-features i { color: #6fbf8b !important; margin-right: 7px; font-size: 13px; min-width: 14px; text-align: center; }
#ntk-plan-catalog #products .ntk-plan-features img { max-width: 100%; height: auto; }
#ntk-plan-catalog .includes-features { margin: 32px 0 0; padding: 24px; background: #0b1712; border: 1px solid var(--ntk-border); border-radius: 14px; }
#ntk-plan-catalog .includes-features h2 { color: var(--ntk-text); font: 500 20px/1.4 'Outfit', sans-serif; margin: 0 0 16px; }
#ntk-plan-catalog .list-features { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; list-style: none; padding: 0; margin: 0; }
#ntk-plan-catalog .list-features li { color: var(--ntk-muted); font-size: 13px; overflow-wrap: anywhere; }
#ntk-plan-catalog .list-features i { color: var(--ntk-accent); }

/* Only this catalog's ancestors: protect the rest of the WHMCS theme. */
body:has(#ntk-plan-catalog) #main-body > .container { max-width: 1500px !important; padding-left: 28px !important; padding-right: 28px !important; }
body:has(#ntk-plan-catalog) .saas-page-header { display: none !important; }
body:has(#ntk-plan-catalog) #main-body { padding-top: 114px !important; }
body:has(#ntk-plan-catalog) #particles-page-bg { opacity: .2; pointer-events: none; }

@media (max-width: 1199px) {
    #ntk-plan-catalog #products > .ntk-plan-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
    #ntk-plan-catalog #products .price > span { font-size: 42px; }
}
@media (max-width: 639px) {
    body:has(#ntk-plan-catalog) #main-body > .container { padding-left: 18px !important; padding-right: 18px !important; }
    body:has(#ntk-plan-catalog) #main-body { padding-top: 94px !important; padding-bottom: 30px !important; }
    #ntk-plan-catalog { padding-top: 10px; }
    #ntk-plan-catalog .ntk-catalog-intro { margin-bottom: 24px; }
    #ntk-plan-catalog .ntk-catalog-intro h1 { font-size: 32px !important; letter-spacing: -.8px; }
    #ntk-plan-catalog .ntk-catalog-intro p { font-size: 14px; line-height: 1.6; }
    #ntk-plan-catalog .ntk-catalog-eyebrow { font-size: 10px; }
    #ntk-plan-catalog .ntk-catalog-nav { padding: 8px; margin-bottom: 22px; gap: 5px; border-radius: 12px; }
    #ntk-plan-catalog .ntk-catalog-nav .panel { width: 100%; }
    #ntk-plan-catalog .ntk-catalog-nav .list-group { gap: 4px; }
    #ntk-plan-catalog .ntk-catalog-nav .list-group-item { padding: 9px 10px !important; min-height: 44px; font-size: 11px; }
    #ntk-plan-catalog .ntk-catalog-nav [menuitemname="Actions"] { border-top: 1px solid var(--ntk-border) !important; padding-top: 4px; }
    #ntk-plan-catalog #products > .ntk-plan-grid { grid-template-columns: minmax(0,1fr); gap: 20px; }
    #ntk-plan-catalog #products .price-table { border-radius: 16px !important; }
    #ntk-plan-catalog .ntk-plan-heading { margin-bottom: 18px; }
    #ntk-plan-catalog #products .top-head { padding: 23px 22px 14px !important; }
    #ntk-plan-catalog #products .de-pricing-bottom { padding: 0 22px 22px !important; }
    #ntk-plan-catalog #products .de-pricing-mid { padding: 0 22px 22px; }
    #ntk-plan-catalog #products .ntk-plan-features { padding-top: 20px; }
    #ntk-plan-catalog #products .ntk-plan-description h5 { font-size: 14px !important; }
    #ntk-plan-catalog .list-features { grid-template-columns: minmax(0,1fr); }
}
@media (prefers-reduced-motion: reduce) {
    #ntk-plan-catalog *, #ntk-plan-catalog *::before, #ntk-plan-catalog *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
    #ntk-plan-catalog #products .price-table:hover, #ntk-plan-catalog #products .ntk-plan-cta:hover { transform: none; }
}
