/* ==========================================================
 *  ArkHost – Shared page styles (Container Apps aesthetic)
 *  ========================================================== */

/* --- Header --- */
.header-head {
    padding-top: 30px;
    margin-bottom: 10px;
}

.header-head h1 {
    font-family: 'Readex Pro Bold', sans-serif;
    font-size: 1.5rem;
    color: #153B77;
    margin-bottom: 8px;
}

.subheader {
    font-family: 'Readex Pro Medium', sans-serif;
    color: #5c5988;
    font-size: 1.0rem;
    margin-bottom: 32px;
}

/* --- Package switcher (WordPress / Static) --- */
.plan-switcher {
    display: inline-flex;
    gap: 4px;
    padding: 4px;
    margin-bottom: 28px;
    background: #eaf1fb;
    border-radius: 999px;
    box-shadow: inset 0 1px 3px rgba(21, 59, 119, 0.10);
}

.plan-switch-btn {
    font-family: 'Readex Pro Medium', sans-serif;
    font-size: 0.9rem;
    letter-spacing: 0.5px;
    color: #153B77;
    background: transparent;
    border: none;
    padding: 8px 26px;
    border-radius: 999px;
    cursor: pointer;
    transition: background 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
}

.plan-switch-btn:hover {
    color: #0C9FED;
}

.plan-switch-btn.active {
    background: #0C9FED;
    color: #ffffff;
    font-weight: 600;
    box-shadow: 0 2px 8px rgba(12, 159, 237, 0.35);
}

/* --- Plan groups & switcher-tied content sections --- */
.plan-group,
.switch-section {
    display: none;
}

.plan-group.active,
.switch-section.active {
    display: block;
}

/* --- Plan grid (3-column layout) --- */
.plan-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 24px;
    margin-bottom: 2em;
}

.plan-item {
    background: #ffffff;
    border-radius: 10px;
    padding: 0;
    box-shadow: 0 2px 12px rgba(21, 59, 119, 0.12);
    transition: box-shadow 0.3s ease, transform 0.3s ease;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: center;
    overflow: hidden;
}

.plan-item:hover {
    box-shadow: 0 4px 20px rgba(21, 59, 119, 0.18);
    transform: translateY(-2px);
}

/* Allow label to overflow only on cards that have one */
.plan-item:has(.best-buy-label) {
    overflow: visible;
}

/* --- Plan header bar --- */
.plan-header {
    background: #153B77;
    color: #fff;
    padding: 16px 25px;
    font-family: 'Readex Pro Bold', sans-serif;
    font-size: 0.85rem;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    position: relative;
    border-radius: 10px 10px 0 0;
}

.best-buy {
    background-color: #0C9FED;
    color: #fff;
    padding: 5px 15px;
    border-radius: 15px;
    font-size: 0.8rem;
    font-weight: bold;
    position: absolute;
    top: -12px;
    right: -12px;
}

.best-buy-label {
    position: absolute;
    top: -10px;
    right: -10px;
    background-color: #f0ad4e;
    color: white;
    padding: 5px 10px;
    font-weight: bold;
    border-radius: 5px;
    font-size: 0.7rem;
    transform: rotate(15deg);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    z-index: 10;
}

/* --- Plan pricing --- */
.plan-price {
    font-family: 'Readex Pro Bold', sans-serif;
    font-size: 2rem;
    color: #153B77;
    padding: 24px 25px 0;
    margin: 0;
    line-height: 1.1;
}

.original-price {
    text-decoration: line-through;
    color: #999;
    font-size: 1.1rem;
    margin-right: 8px;
}

.sale-price {
    color: #d9534f;
    font-weight: bold;
    margin-right: 5px;
}

.first-order-note {
    font-size: 0.7rem;
    vertical-align: super;
    color: #4CAF50;
    font-weight: 700;
}

.billing-cycle {
    display: block;
    font-size: 0.62rem;
    color: #5c5988;
    font-family: 'Readex Pro', sans-serif;
}

.plan-price .vat-price {
    display: block;
    font-family: 'Readex Pro', sans-serif !important;
    font-size: 0.62rem !important;
    color: #aaa !important;
    font-weight: 400 !important;
    margin-top: 4px;
}

.sale-note {
    font-size: 0.5rem;
    color: #555;
    position: absolute;
    bottom: -20px;
    left: 0;
    width: 100%;
    text-align: center;
}

/* --- Performance bar --- */
.performance-container {
    width: calc(100% - 50px);
    margin: 16px auto;
    background: linear-gradient(180deg, #f6f9fc 0%, #edf2f7 100%);
    border-radius: 6px;
    padding: 5px;
    position: relative;
    min-height: 28px;
}

.performance-bar {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 20px;
    min-width: 80px;
    border-radius: 4px;
    font-size: 0.65rem;
    font-family: 'Readex Pro', Arial, sans-serif;
    font-weight: 500;
    overflow: visible;
    margin: 0;
    box-shadow: none;
}

.performance-bar-label {
    position: absolute;
    left: 0; top: 0; width: 100%; height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #f4f8fb;
    font-weight: 500;
    font-size: 0.65rem;
    letter-spacing: 0.01em;
    pointer-events: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    z-index: 2;
    opacity: 0.97;
}

.performance-basic    { background: #62D1DE; }
.performance-advanced { background: #0C9FED; }
.performance-pro      { background: #153B77; }

.performance-notches { display: none; }
.performance-notch {
    width: 1px; height: 12px;
    background: rgba(255,255,255,.35);
    margin-top: 10px;
}

@media (max-width: 600px) {
    .performance-bar,
    .performance-bar-label {
        font-size: 0.6rem;
        height: 16px;
    }
}

.rating-text {
    font-size: 0.8rem;
    color: #555;
    margin-top: 5px;
    font-weight: bold;
}

/* --- Plan features list --- */
.plan-features {
    list-style: none;
    padding: 0 35px;
    margin: 16px 0 24px;
    text-align: left;
}

.plan-features li {
    font-size: 0.82rem;
    color: #333;
    padding: 8px 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.plan-features li i {
    color: #62D1DE;
    font-size: 0.9rem;
    width: 18px;
    text-align: center;
    flex-shrink: 0;
}

/* --- Order button --- */
.order-btn {
    background-color: #62D1DE;
    color: white;
    font-family: 'Readex Pro', sans-serif;
    font-size: 0.9rem;
    border: none;
    border-radius: 8px;
    padding: 13px 20px;
    font-weight: bold;
    transition: background-color 0.3s, transform 0.3s;
    display: block;
    width: calc(100% - 50px);
    max-width: 280px;
    margin: 0 auto 14px;
    cursor: pointer;
    position: relative;
}

.order-btn:hover {
    background-color: #0C9FED;
    transform: scale(1.02);
}

.order-btn::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.2);
    opacity: 0;
    transition: opacity 0.3s, transform 0.3s;
    transform: scale(0);
    border-radius: inherit;
}

.order-btn.button-clicked::after {
    opacity: 1;
    transform: scale(1);
    transition: transform 0.3s;
}

.order-btn:hover::after {
    opacity: 0;
}

.order-btn-link {
    display: block;
    text-decoration: none;
}

/* --- Footer notes inside plan card --- */
.plan-item > .billing-cycle {
    padding: 0 25px 8px;
}

/* --- VAT / promo notes --- */
.vat-note {
    text-align: center;
    font-size: 0.9rem;
    color: #666;
    margin-top: 25px;
}

.early-black-friday-note {
    text-align: center;
    font-size: 1.0rem;
    color: #d9534f;
    margin: 20px 0;
    font-weight: bold;
}
/* Collapse the promo note when its lang string is empty (e.g. no active sale) */
.early-black-friday-note:empty { display: none; }

.black-friday {
    color: black;
    font-size: 1.0rem;
    font-weight: 700;
}

/* --- Responsive: plan grid --- */
@media screen and (max-width: 768px) {
    .plan-list {
        grid-template-columns: 1fr;
    }
}

/* --- Misc layout --- */
.header-lined {
    display: none;
}

.container-center {
    text-align: center;
}

/* --- App showcase section --- */
.apps-holder {
    text-align: center;
    padding: 40px;
    background: linear-gradient(180deg, #f6f9fc 0%, #edf2f7 100%);
    border-radius: 10px;
}

.apps-links-holder {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

.app-icon-holder {
    width: 100px;
    padding: 8px;
    margin: 0 10px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(21, 59, 119, 0.08);
    background: #ffffff;
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.app-icon-holder:hover {
    box-shadow: 0 4px 16px rgba(21, 59, 119, 0.12);
    transform: translateY(-2px);
}

.app-icon-holder.opened {
    border: 2px solid #62D1DE;
    background: #f0fbfc;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(98, 209, 222, 0.25);
}

.app-icon img {
    width: 48px;
}

.app-title {
    margin-top: 8px;
    font-size: 1.0rem;
    color: #333;
}

.app-icon-holder.opened .app-title {
    color: #0C9FED;
    font-weight: 600;
}

.apps-details-holder {
    padding: 30px;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 2px 12px rgba(21, 59, 119, 0.08);
    min-height: 160px;
    position: relative;
}

.app-details {
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
    position: absolute;
    top: 30px;
    left: 30px;
    right: 30px;
    bottom: 30px;
}

.app-details.show-details {
    opacity: 1;
    pointer-events: auto;
}

.app-details .app-title {
    font-size: 1.2rem;
    color: #153B77;
    margin-bottom: 15px;
    font-weight: 600;
}

.app-text {
    font-size: 0.9rem;
    color: #555;
    text-align: left;
    margin-top: 10px;
    line-height: 1.6;
}

/* --- Feature highlight section (Cloudflare, etc.) --- */
.cloudflare-security-feature {
    background-color: #ffffff;
    border-radius: 10px;
    padding: 28px 35px;
    margin: 2em auto;
    text-align: center;
    font-family: 'Readex Pro Medium', sans-serif;
    box-shadow: 0 2px 12px rgba(21, 59, 119, 0.08);
}

.cloudflare-security-feature h2 {
    color: #153B77;
    font-size: 1.3rem;
    font-family: 'Readex Pro Bold', sans-serif;
    margin-bottom: 15px;
}

.cloudflare-security-feature p {
    color: #5c5988;
    font-size: 1.0rem;
    line-height: 1.4;
    margin-bottom: 0;
}

.cloudflare-security-feature p span.brand {
    color: #0C9FED;
    font-weight: bold;
    font-family: 'Readex Pro Bold', sans-serif;
}

.security-emoji {
    font-size: 1.1em;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
    transform: translateY(-2px);
    margin-top: -10px;
}

/* --- FAQ section --- */
.faq-section {
    margin: 2em auto;
    max-width: 800px;
}

.faq-title {
    text-align: center;
    color: #153B77;
    font-family: 'Readex Pro Bold', sans-serif;
    font-size: 1.6rem;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
}

.faq-item {
    background-color: #f8f9fa;
    border-radius: 10px;
    margin-bottom: 1em;
    padding: 12px 22px;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(21, 59, 119, 0.06);
}

.faq-question {
    font-weight: bold;
    font-size: 0.9rem;
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    padding-top: 0;
    font-size: 0.8rem;
    text-align: left;
    color: #555;
    display: none;
}

/* --- Special text / CTA --- */
.special-text {
    color: #0C9FED;
    font-weight: bold;
    font-size: 1.0em;
    margin: 20px auto 16px auto;
    text-align: center;
    background-color: #E5F3FC;
    padding: 18px;
    border-radius: 10px;
    max-width: 700px;
}

.view-plans-btn {
    background-color: #0C9FED;
    color: #ffffff;
    font-size: 15px !important;
    text-align: center;
    padding: 10px;
    border-radius: 8px;
    margin-top: 20px;
    margin-bottom: 10px;
    font-weight: bold;
    transition: background-color 0.3s, transform 0.2s;
}

.view-plans-btn:hover {
    background-color: #153B77 !important;
    transform: scale(1.05);
}

/* --- Affiliates --- */
.benefits-list {
    display: grid;
    grid-gap: 24px;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    list-style: none;
    margin: 32px auto;
    padding: 0;
    max-width: 900px;
}

@media (min-width: 768px) {
    .benefits-list {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (max-width: 767px) {
    .benefits-list {
        grid-template-columns: 1fr;
    }
}

.benefit-card {
    background: #fff;
    color: #153B77;
    border-radius: 10px;
    padding: 28px 20px;
    font-size: 0.7rem;
    font-weight: 500;
    box-shadow: 0 2px 12px rgba(21, 59, 119, 0.08);
    border: 1.5px solid #e3f0fa;
    display: flex;
    align-items: center;
    min-height: 90px;
    transition: box-shadow 0.18s, border-color 0.18s, transform 0.16s;
    position: relative;
    text-align: center;
    justify-content: center;
}

.benefit-card:hover {
    border-color: #0C9FED;
    box-shadow: 0 4px 20px rgba(12, 159, 237, 0.13);
    transform: scale(1.025);
}

.affiliate-details {
    background: #f7fbfd;
    padding: 22px 18px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(21, 59, 119, 0.06);
    border: 1.5px solid #e3f0fa;
    margin: 30px 0 22px 0;
    font-size: 0.7rem;
    color: #153B77;
}

.main-heading {
    color: #153B77;
    font-size: 1.5em;
    margin: 50px 0 10px;
    text-align: center;
    font-family: 'Readex Pro Bold', sans-serif;
    font-weight: bold;
    text-transform: uppercase;
}

.affiliate-benefits-list {
    margin: 30px auto;
    max-width: 700px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 0;
}

.affiliate-benefit {
    display: flex;
    align-items: center;
    gap: 18px;
    font-size: 0.75em;
    color: #153B77;
    background: none;
    font-family: 'Readex Pro', Arial, sans-serif;
    padding: 0;
    line-height: 1.5;
}

.aff-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1em;
    width: 40px;
    height: 40px;
    color: #0C9FED;
    background: #e5f3fc;
    border-radius: 50%;
    margin-right: 2px;
    box-shadow: 0 2px 8px rgba(12, 159, 237, 0.08);
}

/* --- VPS / Products page --- */
.server-icon img {
    width: 120px;
    height: auto;
    transform: scale(1.3);
    border-radius: 12%;
    transition: transform 0.3s ease;
    opacity: 0.9;
}

.server-icon img:hover {
    transform: scale(1.4);
    filter: brightness(1.2);
}

.product-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    grid-gap: 24px;
    text-align: center;
    max-width: 1000px;
    margin: 40px auto;
}

.product-item {
    background: #ffffff;
    color: #333333;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 2px 12px rgba(21, 59, 119, 0.12);
    transition: box-shadow 0.3s ease, transform 0.3s ease;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.product-item:hover {
    box-shadow: 0 4px 20px rgba(21, 59, 119, 0.18);
    transform: translateY(-2px);
}

.server-title {
    font-size: 1.2em;
    margin-bottom: 10px;
}

.server-title, .vps-type, .server-specs {
    color: #333333;
}

.vps-type {
    display: inline;
    background-color: #F1F1F1;
    color: #333;
    padding: 5px 10px;
    border-radius: 5px;
    margin: 5px 0 15px;
    font-weight: bold;
    font-size: 0.6em;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.product-item .vps-type {
    font-size: 0.7em;
    background-color: rgba(255, 255, 255, 0.2);
    display: inline-block;
    margin: 5px 0;
    padding: 3px 10px;
    border-radius: 15px;
    background: #eaeaea;
}

.view-plans-btn-comingsoon {
    background-color: #FF7F50;
    color: #ffffff;
    text-align: center;
    padding: 10px;
    border-radius: 8px;
    margin-top: 10px;
    font-weight: bold;
    transition: background-color 0.3s;
}

.view-plans-btn-comingsoon:hover {
    background-color: #3CB371;
    transform: scale(1.02);
}

.view-plans-btn-contact {
    background-color: #FF7F50;
    color: #ffffff;
    text-align: center;
    padding: 10px;
    border-radius: 8px;
    margin-top: 10px;
    font-weight: bold;
    transition: background-color 0.3s;
}

.view-plans-btn-contact:hover {
    background-color: #2E8B57;
    transform: scale(1.02);
}

.view-plans-btn-domain {
    background-color: #E5F3FC;
    color: #0E3E72;
    text-align: center;
    padding: 10px;
    border-radius: 8px;
    margin-top: 18px;
    margin-bottom: 12px;
    font-weight: bold;
    transition: background-color 0.3s, transform 0.2s;
}

.view-plans-btn-domain:hover {
    background-color: #E5F3FC;
    transform: scale(1.02);
}

.coming-soon {
    color: #ff9900;
}

@media (min-width: 768px) {
    .product-list {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* --- Product menu page --- */
.product-item-link {
    text-decoration: none;
}

.secondary-heading {
    color: #0C9FED;
    font-size: 1.3em;
    margin: 30px 0;
    font-weight: bold;
    text-transform: uppercase;
}

.centered-content {
    text-align: center;
    width: 100%;
    margin: 0 auto;
}

.main-content p {
    max-width: 100%;
}

/* --- Custom dev banner --- */
.custom-dev-banner {
    background: #ffffff;
    border: 1.5px solid #e3f0fa;
    color: #153B77;
    padding: 30px;
    border-radius: 10px;
    margin: 2em auto;
    text-align: center;
    box-shadow: 0 2px 12px rgba(21, 59, 119, 0.08);
    font-family: 'Readex Pro Medium', sans-serif;
}

.custom-dev-banner h2 {
    margin: 0 0 10px 0;
    font-size: 1.3rem;
    font-weight: 600;
    font-family: 'Readex Pro Bold', sans-serif;
    color: #153B77;
}

.custom-dev-banner h2 i {
    margin-right: 10px;
    color: #0C9FED;
}

.custom-dev-banner p {
    margin: 0 0 20px 0;
    font-size: 1.0rem;
    color: #5c5988;
    line-height: 1.4;
}

.custom-dev-btn {
    display: inline-block;
    background: #62D1DE;
    color: white;
    padding: 12px 30px;
    border-radius: 8px;
    font-weight: 600;
    font-family: 'Readex Pro', sans-serif;
    text-decoration: none;
    transition: background-color 0.3s, transform 0.2s;
    font-size: 0.9rem;
}

.custom-dev-btn:hover {
    background-color: #0C9FED;
    color: white;
    transform: translateY(-2px);
    text-decoration: none;
}

.custom-dev-btn i {
    margin-left: 8px;
}

/* --- Breadcrumb hide --- */
.master-breadcrumb .breadcrumb {
    display: none;
}

/* --- Mobile: app showcase --- */
@media (max-width: 768px) {
    .apps-details-holder {
        padding: 20px;
        min-height: 175px;
    }

    .app-details {
        top: 20px;
        left: 20px;
        right: 20px;
        bottom: 20px;
    }

    .app-details .app-title {
        font-size: 1.1rem;
        margin-bottom: 12px;
    }

    .app-text {
        font-size: 0.85rem;
        line-height: 1.5;
    }

    .apps-links-holder {
        gap: 15px;
    }

    .app-icon-holder {
        width: 90px;
        margin: 0 5px;
    }
}

.marketplace-link {
    display: block;
    font-size: 0.72rem;
    color: #0C9FED;
    text-align: center;
    margin-bottom: 20px;
    text-decoration: none;
}

.marketplace-link:hover {
    color: #153B77;
    text-decoration: underline;
}

.plan-item.coming-soon {
    opacity: 0.5;
}

.vat-notice {
    text-align: center;
    font-size: 0.9rem;
    color: #666;
    margin: 25px 0;
}

.plan-features li:not(:has(i))::before {
    content: '✓';
    color: #62D1DE;
    font-size: 0.9rem;
    width: 18px;
    text-align: center;
    flex-shrink: 0;
}
/* ==========================================================
 *  DARK MODE overrides for the product / marketing pages
 *  (deep ocean navy — matches css/dark-mode.css)
 *  This file loads after dark-mode.css, so these win.
 *  Palette vars are inherited from html.ark-dark.
 *  ========================================================== */

/* --- Headings / intro text --- */
html.ark-dark .header-head h1,
html.ark-dark .main-heading,
html.ark-dark .faq-title { color: var(--ark-heading) !important; }
html.ark-dark .subheader { color: var(--ark-text-muted) !important; }
html.ark-dark .secondary-heading { color: var(--ark-primary) !important; }

/* --- Plan cards --- */
html.ark-dark .plan-item {
    background: var(--ark-surface) !important;
    border: 1px solid var(--ark-border-soft) !important;
    box-shadow: var(--ark-shadow-sm) !important;
}
html.ark-dark .plan-item:hover {
    box-shadow: var(--ark-shadow) !important;
    border-color: var(--ark-border) !important;
}
html.ark-dark .plan-header {
    background: linear-gradient(135deg, #123a6b 0%, #0e2c52 100%) !important;
    color: #eaf4ff !important;
    border-bottom: 1px solid var(--ark-border-soft);
}
html.ark-dark .plan-price { color: var(--ark-heading) !important; }
html.ark-dark .plan-price .vat-price { color: var(--ark-text-dim) !important; }
html.ark-dark .billing-cycle { color: var(--ark-text-muted) !important; }
html.ark-dark .plan-features li { color: var(--ark-text) !important; }
html.ark-dark .plan-features li i { color: var(--ark-teal) !important; }
html.ark-dark .original-price { color: var(--ark-text-dim) !important; }
html.ark-dark .sale-price { color: #ff7b75 !important; }
html.ark-dark .rating-text { color: var(--ark-text-muted) !important; }
html.ark-dark .performance-container {
    background: var(--ark-inset) !important;
    border: 1px solid var(--ark-border-soft);
}
html.ark-dark .marketplace-link { color: var(--ark-link) !important; }
html.ark-dark .marketplace-link:hover { color: var(--ark-teal) !important; }

/* --- Package switcher --- */
html.ark-dark .plan-switcher {
    background: var(--ark-inset) !important;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.35) !important;
}
html.ark-dark .plan-switch-btn { color: var(--ark-text-muted) !important; }
html.ark-dark .plan-switch-btn:hover { color: var(--ark-teal) !important; }
html.ark-dark .plan-switch-btn.active {
    background: linear-gradient(135deg, var(--ark-primary) 0%, var(--ark-primary-d) 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 10px var(--ark-glow) !important;
}

/* --- App showcase --- */
html.ark-dark .apps-holder {
    background: var(--ark-surface-2) !important;
    border: 1px solid var(--ark-border-soft);
}
html.ark-dark .app-icon-holder {
    background: var(--ark-surface) !important;
    box-shadow: var(--ark-shadow-sm) !important;
}
html.ark-dark .app-icon-holder.opened {
    background: var(--ark-raised) !important;
    border-color: var(--ark-teal) !important;
    box-shadow: 0 4px 18px var(--ark-glow) !important;
}
html.ark-dark .apps-details-holder {
    background: var(--ark-surface) !important;
    border: 1px solid var(--ark-border-soft);
    box-shadow: var(--ark-shadow-sm) !important;
}
html.ark-dark .app-title { color: var(--ark-text) !important; }
html.ark-dark .app-icon-holder.opened .app-title,
html.ark-dark .app-details .app-title { color: var(--ark-primary) !important; }
html.ark-dark .app-text { color: var(--ark-text-muted) !important; }

/* --- Feature / security / dev banners --- */
html.ark-dark .cloudflare-security-feature,
html.ark-dark .custom-dev-banner {
    background-color: var(--ark-surface) !important;
    border: 1px solid var(--ark-border-soft) !important;
    box-shadow: var(--ark-shadow-sm) !important;
}
html.ark-dark .cloudflare-security-feature h2,
html.ark-dark .custom-dev-banner h2 { color: var(--ark-heading) !important; }
html.ark-dark .cloudflare-security-feature p,
html.ark-dark .custom-dev-banner p { color: var(--ark-text-muted) !important; }
html.ark-dark .cloudflare-security-feature p span.brand,
html.ark-dark .custom-dev-banner h2 i { color: var(--ark-primary) !important; }

/* --- FAQ (product page variant) --- */
html.ark-dark .faq-item {
    background-color: var(--ark-surface) !important;
    border: 1px solid var(--ark-border-soft) !important;
    box-shadow: var(--ark-shadow-sm) !important;
}
html.ark-dark .faq-answer { color: var(--ark-text-muted) !important; }

/* --- Special text / CTA blocks --- */
html.ark-dark .special-text {
    background-color: rgba(12, 159, 237, .12) !important;
    color: var(--ark-teal-bright) !important;
    border: 1px solid var(--ark-border);
}

/* --- Affiliates --- */
html.ark-dark .benefit-card {
    background: var(--ark-surface) !important;
    color: var(--ark-text) !important;
    border: 1px solid var(--ark-border-soft) !important;
    box-shadow: var(--ark-shadow-sm) !important;
}
html.ark-dark .benefit-card:hover { border-color: var(--ark-primary) !important; }
html.ark-dark .affiliate-details {
    background: var(--ark-surface) !important;
    color: var(--ark-text) !important;
    border: 1px solid var(--ark-border-soft) !important;
}
html.ark-dark .affiliate-benefit { color: var(--ark-text) !important; }
html.ark-dark .aff-icon {
    background: rgba(12, 159, 237, .15) !important;
    color: var(--ark-teal) !important;
}

/* --- VPS / products grid --- */
html.ark-dark .product-item {
    background: var(--ark-surface) !important;
    color: var(--ark-text) !important;
    border: 1px solid var(--ark-border-soft) !important;
    box-shadow: var(--ark-shadow-sm) !important;
}
html.ark-dark .product-item:hover { box-shadow: var(--ark-shadow) !important; border-color: var(--ark-border) !important; }
html.ark-dark .server-title,
html.ark-dark .server-specs { color: var(--ark-text) !important; }
html.ark-dark .vps-type,
html.ark-dark .product-item .vps-type {
    background: var(--ark-surface-2) !important;
    color: var(--ark-text-muted) !important;
}
html.ark-dark .coming-soon { color: var(--ark-warning) !important; }
html.ark-dark .black-friday { color: var(--ark-text) !important; }
html.ark-dark .early-black-friday-note { color: #ff7b75 !important; }

/* --- Notes --- */
html.ark-dark .vat-note,
html.ark-dark .vat-notice,
html.ark-dark .sale-note { color: var(--ark-text-dim) !important; }

/* --- Product card CTAs: unify ALL to the "Find domain" ghost style (translucent fill +
   teal-glow border). The whole card is a link, so the button is a cue — ghost reads cleaner.
   Fills with the accent gradient when the card (or button) is hovered. --- */
html.ark-dark .view-plans-btn,
html.ark-dark .view-plans-btn-domain,
html.ark-dark .view-plans-btn-comingsoon,
html.ark-dark .view-plans-btn-contact {
    background-color: rgba(12, 159, 237, .12) !important;
    background-image: none !important;
    color: #eaf6ff !important;
    border: 1px solid rgba(98, 209, 222, .35) !important;
    transition: background-color .25s ease, box-shadow .25s ease, transform .2s ease, border-color .25s ease;
}
html.ark-dark .product-item-link:hover .view-plans-btn,
html.ark-dark .product-item-link:hover .view-plans-btn-domain,
html.ark-dark .product-item-link:hover .view-plans-btn-comingsoon,
html.ark-dark .product-item-link:hover .view-plans-btn-contact,
html.ark-dark .view-plans-btn:hover,
html.ark-dark .view-plans-btn-domain:hover,
html.ark-dark .view-plans-btn-comingsoon:hover,
html.ark-dark .view-plans-btn-contact:hover {
    background: linear-gradient(135deg, var(--ark-primary) 0%, var(--ark-primary-d) 100%) !important;
    border-color: transparent !important;
    color: #fff !important;
    box-shadow: 0 6px 18px var(--ark-glow) !important;
}

/* --- Custom dev "Contact Us" button: was teal (read green) with link-blue text
       because html.ark-dark a was overriding its white. Give it a solid brand button. --- */
html.ark-dark a.custom-dev-btn,
html.ark-dark .custom-dev-btn {
    background: linear-gradient(135deg, #2aa7d4 0%, #1f8fc4 100%) !important;
    color: #ffffff !important;
}
html.ark-dark a.custom-dev-btn:hover,
html.ark-dark .custom-dev-btn:hover {
    background: linear-gradient(135deg, #36b8e6 0%, #2aa7d4 100%) !important;
    color: #ffffff !important;
}

/* --- Reseller hosting --- */
.reseller-feature {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(220px, .8fr);
    gap: 32px;
    align-items: start;
    text-align: left;
}
.reseller-feature-copy p { margin-bottom: 16px; }
.reseller-feature .reseller-feature-list {
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
    text-align: left;
}
.reseller-feature .reseller-feature-list li {
    margin: 8px 0;
    color: #5c5988;
}
.reseller-feature-price {
    background: #f4faff;
    border: 1px solid #dcebfa;
    border-radius: 10px;
    padding: 24px 18px;
    text-align: center;
    margin-top: 10px;
}
.reseller-feature-price span,
.reseller-feature-price small { display: block; color: #5c5988; }
.reseller-feature-price strong {
    display: block;
    color: #153b77;
    font-family: 'Readex Pro Bold', sans-serif;
    font-size: 2.7rem;
    line-height: 1.1;
}
.reseller-feature .order-btn,
.reseller-plan-list .order-btn,
.reseller-cta .order-btn {
    background-color: #153b77;
    color: #ffffff;
}
.reseller-feature .order-btn:hover,
.reseller-plan-list .order-btn:hover,
.reseller-cta .order-btn:hover {
    background-color: #0c9fed;
}
.reseller-feature .order-btn {
    display: inline-block;
    width: auto;
    margin: 0;
}
.reseller-hero-btn {
    display: inline-block;
    width: auto;
    margin: 18px 0 0;
    background-color: #153b77;
    color: #ffffff;
}
.reseller-hero-btn:hover {
    background-color: #0c9fed;
}
.reseller-per-account {
    display: block;
    color: #153b77;
    font-size: .82rem;
    font-weight: 600;
    margin-top: 4px;
}
.reseller-plan-list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.reseller-plan-list .plan-item { min-width: 0; }
.reseller-plan-list .plan-features { text-align: left; }
.reseller-plan-list .plan-header { padding-left: 14px; padding-right: 14px; }
.reseller-plan-list .plan-title { font-size: .8rem; }
.reseller-two-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px 24px;
    max-width: 820px;
    margin: 0 auto;
    padding: 0;
    list-style: none;
    text-align: left;
}
.reseller-two-col li { color: #5c5988; }
.reseller-two-col i { color: #0c9fed; margin-right: 6px; }
.reseller-cta .order-btn { display: inline-block; margin-top: 12px; }
@media (max-width: 1200px) {
    .reseller-plan-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 800px) {
    .reseller-feature { grid-template-columns: 1fr; }
    .reseller-two-col { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
    .reseller-plan-list { grid-template-columns: 1fr; }
}
/* --- end reseller hosting --- */



/* --- reseller dark surface and VPS link --- */
html.ark-dark .reseller-feature-price {
    background-color: var(--ark-surface) !important;
    border-color: var(--ark-border-soft) !important;
}
html.ark-dark .reseller-feature-price span,
html.ark-dark .reseller-feature-price small {
    color: var(--ark-text-muted) !important;
}
html.ark-dark .reseller-feature-price strong {
    color: var(--ark-primary) !important;
}
.reseller-vps-link {
    margin-top: 10px;
    font-size: .9rem;
}
.reseller-vps-link a {
    color: #0c9fed;
    text-decoration: underline;
}
html.ark-dark .reseller-vps-link a {
    color: var(--ark-primary) !important;
}

/* --- Linux VPS callout --- */
.reseller-vps {
    display: flex;
    align-items: center;
    gap: 20px;
    margin: 2em auto;
    padding: 24px 28px;
    background: #ffffff;
    border: 1px solid #e3eef9;
    border-radius: 10px;
    box-shadow: 0 2px 12px rgba(21, 59, 119, .08);
    text-align: left;
}
.reseller-vps-pixel {
    width: 64px;
    height: 64px;
    image-rendering: pixelated;
    flex: 0 0 auto;
}
.reseller-vps-copy { flex: 1; min-width: 0; }
.reseller-vps-copy h2 {
    color: #153b77;
    font-family: 'Readex Pro Bold', sans-serif;
    font-size: 1.3rem;
    margin: 0 0 6px;
}
.reseller-vps-copy p {
    color: #5c5988;
    font-size: 1rem;
    line-height: 1.5;
    margin: 0;
    max-width: 700px;
}
.reseller-vps .order-btn {
    display: inline-block;
    width: auto;
    margin: 0;
    flex: 0 0 auto;
    background-color: #153b77;
    color: #fff;
}
.reseller-vps .order-btn:hover { background-color: #0c9fed; }
html.ark-dark .reseller-vps {
    background: var(--ark-surface) !important;
    border-color: var(--ark-border-soft) !important;
    box-shadow: var(--ark-shadow-sm) !important;
}
html.ark-dark .reseller-vps-copy h2 { color: var(--ark-heading) !important; }
html.ark-dark .reseller-vps-copy p { color: var(--ark-text-muted) !important; }
@media (max-width: 800px) {
    .reseller-vps { flex-direction: column; align-items: flex-start; }
}

/* --- square pixel sections: no rounded corners --- */
.cloudflare-security-feature.reseller-feature,
.reseller-feature-price,
.reseller-vps,
.reseller-plan-list .plan-item,
.reseller-plan-list .plan-header,
.reseller-plan-list .best-buy,
.reseller-plan-list .best-buy-label {
    border-radius: 0 !important;
}

/* Softaculous + AI Builder uses the approved PixelLab CPU/AI chip. */
.pixel-product-icons i.fa-robot {
    background-image: url("../images/icons/pixel-feature-cpu.png");
}
