/* Rove Tech | Graphite & Teal | Nexus palette v1
   Preserves Nexus variable structure. Review live client/cart pages before launch. */

/* *****************************************************

    ** Custom Stylesheet **

    Any custom styling you want to apply should be
    defined here.

***************************************************** */

/* Custom CSS for Nexus Theme
 *
 * This file allows you to customize the theme colors and styles for the entire Nexus template.
 *
 * To customize colors:
 * - Replace the var() references with your own hex colors or other CSS values.
 * - For example, instead of --primary: #4b5563; use --primary: #your-color;
 * - You can also override any CSS properties here.
 */

:root {
    --white: #ffffff;

    /* Neutral shades */
    --neutral-50: #E8F0F2;
    --neutral-100: #D7E2E6;
    --neutral-200: #B9C9D0;
    --neutral-300: #94A8B2;
    --neutral-400: #8296A0;
    --neutral-500: #647983;
    --neutral-600: #39464F;
    --neutral-700: #303B43;
    --neutral-800: #242C33;
    --neutral-900: #151A20;
    --neutral-950: #10151A;

    /* Neutral shades */
    /* define own pallet with brand colors */
    --primary-50: #E6FFFA;
    --primary-100: #C8FFF4;
    --primary-200: #9AF5E5;
    --primary-300: #6DEBD8;
    --primary-400: #43E0CB;
    --primary-500: #2DD4BF;
    --primary-600: #1BB5A3;
    --primary-700: #159787;
    --primary-800: #11776B;
    --primary-900: #0D554E;
    --primary-950: #073B36;

    /* Primary colors */
    /* Use shades from comments if `primary` colors use other colors, then neutral */
    --primary: var(--primary-500);          /* var(--primary-600) */
    --primary-lifted: var(--primary-600);   /* var(--primary-700) */
    --primary-accented: var(--primary-700); /* var(--primary-800) */

    /* Secondary colors */
    --secondary: #647983;
    --secondary-lifted: #50616A;
    --secondary-accented: #39464F;

    /* Success colors */
    --success: #00a63e;
    --success-lifted: #008236;
    --success-accented: #016630;

    /* Info colors */
    --info: #155dfc;
    --info-lifted: #1447e6;
    --info-accented: #193cb8;

    /* Notice colors */
    --notice: #7f22fe;
    --notice-lifted: #7008e7;
    --notice-accented: #5d0ec0;

    /* Warning colors */
    --warning: #f54a00;
    --warning-lifted: #ca3500;
    --warning-accented: #9f2d00;

    /* Error colors */
    --error: #e7000b;
    --error-lifted: #c10007;
    --error-accented: #9f0712;

    /* Grayscale colors */
    --grayscale: #E8F0F2;
    --grayscale-lifted: #B9C9D0;
    --grayscale-accented: #94A8B2;

    /* Neutral colors */
    --neutral: #647983;
    --neutral-lifted: #50616A;
    --neutral-accented: #39464F;

    /* Text neutral colors */
    --text-inverted: #151A20;
    --text-muted: #A7B9C1;
    --text-lifted: #C1D0D6;
    --text-accented: #D7E2E6;
    --text: #E8F0F2;

    /* Border neutral colors */
    --border-muted: #303B43;
    --border: #39464F;
    --border-lifted: #50616A;
    --border-accented: #647983;

    /* Background neutral colors */
    --bg: #151A20;
    --bg-muted: #1B2229;
    --bg-lifted: #242C33;
    --bg-accented: #303B43;
    --bg-inverted: #E8F0F2;

    /* Additional colors */
    --yellow-200: #fff085;
    --yellow-300: #ffdf20;
    --teal-300: #6DEBD8;
    --teal-400: #2DD4BF;
    --emerald-300: #5ee9b5;
    --pink-400: #fb64b6;

    /* Additional custom properties */
    /* Font sizes */
    --text-xs: 0.625rem;
    --text-sm: 0.75rem;
    --text-md: 0.875rem;
    --text-lg: 1rem;

    /* Spacing */
    --outline-sm: 1px;
    --outline-md: 2px;
    --outline-lg: 3px;

    /* Rounding */
    --rounding-sm: 0.25rem;
    --rounding-md: 0.5rem;
    --rounding-lg: 0.75rem;

    /* Other */
    --letter-spacing: 0em;
    --disabled-opacity: 25%;
}

/* Rove Tech: ask compatible browsers to render native form controls in dark mode. */
:root { color-scheme: dark; }

/* Focus visibility for keyboard navigation. */
:where(a, button, input, select, textarea):focus-visible {
    outline: 2px solid var(--primary-400);
    outline-offset: 2px;
}

/* V9: modern public contact page, native WHMCS form and CAPTCHA retained */
.rv-contact-intro{padding:38px 36px;margin:0 0 22px;border-radius:16px;background:linear-gradient(115deg,#122e4b,#0b1b30);border:1px solid #284763;}
.rv-contact-intro .rv-contact-eyebrow{font-size:11px;letter-spacing:.18em;color:#50c8ef;font-weight:800;}
.rv-contact-intro h1{color:#fff!important;font-size:36px;margin:10px 0;}
.rv-contact-intro p{color:#bed1e3!important;max-width:650px;margin:0;}
.rv-contact-card{border:1px solid #2b4d6b!important;border-radius:16px!important;background:#10253d!important;overflow:hidden;}
.rv-contact-card .card-body{padding:30px!important;}
.rv-contact-card h6{color:#fff!important;}
.rv-contact-card .text-muted,.rv-contact-card label{color:#bed1e3!important;}
.rv-contact-card .form-control{background:#0c2036!important;border:1px solid #41617e!important;color:#f4f9ff!important;border-radius:8px!important;min-height:43px;}
.rv-contact-card textarea.form-control{min-height:155px;}
.rv-contact-card .btn-primary{background:#2286dc!important;border-color:#359fe9!important;padding:12px 28px!important;border-radius:9px!important;}
@media(max-width:767px){.rv-contact-intro{padding:24px 20px;}.rv-contact-card .card-body{padding:20px!important;}}

/* Rovefark Control Centre public pages V1 */
.rfc-site-home,.rfc-site-page{color:#dceafa}.rfc-hero{background:linear-gradient(125deg,#15365a 0%,#0b1b31 70%,#112c46 100%);border:1px solid #274969;border-radius:20px;padding:clamp(36px,7vw,95px) clamp(24px,6vw,80px);margin:12px 0 45px;overflow:hidden}.rfc-eyebrow{display:block;color:#49cdf4;font-weight:700;font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;margin-bottom:18px}.rfc-hero h1{font-size:clamp(2.1rem,4.4vw,4.3rem);line-height:1.12;max-width:780px;color:#fff;font-weight:800;margin:0 0 22px}.rfc-hero p{max-width:660px;color:#bdd1e6;font-size:1.18rem;line-height:1.7}.rfc-hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.rfc-hero .btn,.rfc-contact-band .btn{padding:13px 23px;border-radius:10px}.rfc-services{margin:0 0 55px}.rfc-section-heading{text-align:center;margin:0 auto 30px}.rfc-section-heading h2{color:#fff;font-size:2rem}.rfc-section-heading p{color:#a9bed3}.rfc-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.rfc-service-card{background:#112840;border:1px solid #294663;border-radius:16px;padding:28px;min-height:215px}.rfc-service-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:13px;background:#173e5c;color:#55d1f5;font-size:1.4rem;margin-bottom:22px}.rfc-service-card h3{font-size:1.3rem;color:#fff}.rfc-service-card p{color:#b3c8dc;line-height:1.7}.rfc-contact-band{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#112840;border:1px solid #294663;border-radius:18px;padding:30px;margin-bottom:50px}.rfc-contact-band h2{color:#fff;margin-top:0}.rfc-contact-band p{color:#b3c8dc;margin:0}.rfc-page-content{max-width:820px;background:#112840;border:1px solid #294663;border-radius:18px;padding:35px;margin:0 auto 50px}.rfc-page-content p{color:#c7d8e9;font-size:1.1rem;line-height:1.9;white-space:normal}.rfc-page-content .btn{margin-top:20px}@media(max-width:767px){.rfc-card-grid{grid-template-columns:1fr}.rfc-contact-band{flex-direction:column;align-items:flex-start}.rfc-hero{padding:40px 24px}.rfc-hero h1{font-size:2.25rem}}

/* Rovefark Control Centre V12 builder */
.rfc-builder-page .rfc-builder-block{margin-bottom:28px}.rfc-builder-page .rfc-domain-search{display:flex;gap:12px;align-items:center;max-width:740px;margin:24px 0}.rfc-builder-page .rfc-domain-search .form-control{flex:1;min-width:0;height:46px;background:#132b43;color:#fff;border:1px solid #3d617b}.rfc-builder-page .rfc-domain-search .btn{height:46px}.rfc-builder-page .rfc-note{font-size:12px;opacity:.7;margin-top:12px}@media(max-width:600px){.rfc-builder-page .rfc-domain-search{flex-direction:column;align-items:stretch}}

/* Rovefark Control Centre V13: editable sales pages */
.rfc-sales-page .rfc-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}
.rfc-sales-page .rfc-plan-card{display:flex;flex-direction:column;gap:10px;border:1px solid #2a506c;background:#10283e;border-radius:16px;padding:24px;color:#d6e5f1}
.rfc-sales-page .rfc-plan-card h3{color:#fff;margin:0}.rfc-sales-page .rfc-plan-card p{color:#bbd2e4}
.rfc-sales-page .rfc-plan-card ul{list-style:none;padding:0;margin:12px 0 20px;flex:1}
.rfc-sales-page .rfc-plan-card li{padding:7px 0;color:#d9eaf7}.rfc-sales-page .rfc-plan-card li:before{content:'✓';color:#51cbed;margin-right:10px}
.rfc-sales-page .rfc-featured{border-color:#48c7ed;box-shadow:0 0 0 1px #48c7ed55}.rfc-sales-page .rfc-plan-price{font-size:1.35rem;font-weight:700;color:#5ad5f7!important}
.rfc-sales-page .rfc-faq-row{border-bottom:1px solid #2a506c;padding:15px 0}.rfc-sales-page .rfc-faq-row h3{color:#fff;font-size:1.1rem}
.rfc-sales-page .rfc-sales-image{max-width:100%;height:auto;border-radius:12px}
/* WHMCS's generic overflow More control must not appear in Rovefark */
.collapsable-dropdown,.collapsable-dropdown-menu{display:none!important}

/* V14: never display WHMCS More overflow; preserve required DOM placeholder. */
#nav .collapsable-dropdown {display:none !important;}
#nav .nav-item.no-collapse {flex-shrink:0;}

.rfc-contact-form{max-width:720px;display:grid;gap:18px}.rfc-contact-form label{display:grid;gap:6px}.rfc-home-domain{margin-top:36px;margin-bottom:36px}.rfc-home-domain .rfc-domain-search{display:flex;gap:10px;max-width:850px}.rfc-home-domain .rfc-domain-search input{flex:1}.rfc-plan-card ul{padding-left:20px}.rfc-plan-card li{margin:8px 0}

/* V15.1 sales and contact polish */
.rfc-site-home .rfc-home-domain{box-sizing:border-box;width:100%;max-width:none;margin:35px 0 55px;padding:38px clamp(22px,4vw,54px);background:linear-gradient(115deg,#143454,#10283f);}
.rfc-site-home .rfc-home-domain .rfc-domain-search{max-width:none;width:100%;display:flex;align-items:stretch;gap:12px;margin-top:22px;}
.rfc-site-home .rfc-home-domain .rfc-domain-search .form-control{min-width:0;flex:1;min-height:48px;}
.rfc-site-home .rfc-home-domain .rfc-domain-search .btn{margin:0;min-width:115px;}
.rfc-site-home .rfc-plan-card{display:flex;flex-direction:column;min-height:300px;}
.rfc-site-home .rfc-plan-card ul{margin-bottom:22px;}
.rfc-site-home .rfc-plan-card .btn{align-self:flex-start;margin-top:auto;}
.rfc-site-home .rfc-plan-card .rfc-plan-price{margin:12px 0 18px;color:#fff;}
.rfc-site-home .rfc-plan-card .rfc-plan-price small{display:block;color:#a7c6de;font-size:.8rem;}
.rfc-site-home .rfc-plan-card .rfc-plan-price strong{display:block;color:#53cef3;font-size:1.6rem;}
.rfc-site-home .rfc-card-grid:has(.rfc-plan-card){grid-template-columns:repeat(auto-fit,minmax(260px,1fr));}
.rfc-contact-page .rfc-page-content{max-width:900px;padding:clamp(24px,4vw,50px);}
.rfc-contact-page .rfc-contact-heading h2{margin:0 0 8px;color:#fff;font-size:2rem;}
.rfc-contact-page .rfc-contact-heading p{margin:0 0 28px;color:#b8cee2;font-size:1rem;line-height:1.5;}
.rfc-contact-page .rfc-contact-form{max-width:none;display:grid;gap:22px;}
.rfc-contact-page .rfc-contact-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
.rfc-contact-page .rfc-contact-form label{display:flex;flex-direction:column;gap:9px;color:#e4f2ff;font-weight:600;font-size:.96rem;}
.rfc-contact-page .rfc-contact-form .form-control{width:100%;min-height:49px;background:#091d32;color:#fff;border:1px solid #3c6182;border-radius:9px;padding:11px 14px;box-sizing:border-box;}
.rfc-contact-page .rfc-contact-form .form-control:focus{border-color:#50c9f4;box-shadow:0 0 0 3px rgba(80,201,244,.15);}
.rfc-contact-page .rfc-contact-form textarea.form-control{min-height:185px;resize:vertical;}
.rfc-contact-page .rfc-contact-footer{display:flex;align-items:end;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.rfc-contact-page .rfc-contact-footer label{width:230px;max-width:100%;}
.rfc-contact-page .rfc-contact-footer .btn{margin:0;min-height:49px;padding:10px 30px;}
@media(max-width:650px){.rfc-contact-page .rfc-contact-row{grid-template-columns:1fr}.rfc-site-home .rfc-home-domain .rfc-domain-search{flex-direction:column}.rfc-site-home .rfc-home-domain .rfc-domain-search .btn{width:100%}.rfc-contact-page .rfc-contact-footer .btn{width:100%}}

/* V15.2: use the full public content width for the contact form. */
.rfc-contact-page .rfc-page-content{width:100%;max-width:1160px;margin-left:auto;margin-right:auto;box-sizing:border-box;padding:clamp(28px,4vw,56px)}
.rfc-contact-page .rfc-contact-form{width:100%;max-width:none}
.rfc-contact-page .rfc-contact-row{gap:24px}
.rfc-contact-page .rfc-contact-form textarea.form-control{min-height:220px}
@media(max-width:767px){.rfc-contact-page .rfc-page-content{padding:24px 18px}.rfc-contact-page .rfc-contact-row{grid-template-columns:1fr;gap:18px}}
