/* ============================================================
   cloudeVITA brand layer  (loads AFTER the Pixellyo theme CSS)
   Shivakarma Infotech Solutions Pvt. Ltd.
   Injects the cloudeVITA blue / orange identity over the base
   theme without touching vendor files.
   ============================================================ */

:root {
    --cv-blue:        #1466d8;   /* primary brand blue  */
    --cv-blue-dark:   #0e4ba0;
    --cv-blue-deep:   #0b2f6b;
    --cv-azure:       #17a2e0;   /* bright accent blue  */
    --cv-orange:      #f7941e;   /* primary brand orange */
    --cv-orange-deep: #f15a24;

    /* Re-point Bootstrap's theme colour */
    --bs-primary:      #1466d8;
    --bs-primary-rgb:  20, 102, 216;
    --bs-link-color:        #1466d8;
    --bs-link-color-rgb:    20, 102, 216;
    --bs-link-hover-color:  #0e4ba0;
}

/* ---- Buttons ------------------------------------------------ */
.btn-primary {
    --bs-btn-bg:               #1466d8;
    --bs-btn-border-color:     #1466d8;
    --bs-btn-hover-bg:         #0e4ba0;
    --bs-btn-hover-border-color:#0e4ba0;
    --bs-btn-active-bg:        #0b3d87;
    --bs-btn-active-border-color:#0b3d87;
    --bs-btn-disabled-bg:      #1466d8;
    --bs-btn-disabled-border-color:#1466d8;
}
.btn-outline-primary {
    --bs-btn-color:            #1466d8;
    --bs-btn-border-color:     #1466d8;
    --bs-btn-hover-bg:         #1466d8;
    --bs-btn-hover-border-color:#1466d8;
    --bs-btn-active-bg:        #1466d8;
    --bs-btn-active-border-color:#1466d8;
}
/* Secondary CTA in brand orange */
.btn-brand-orange {
    --bs-btn-color: #fff;
    --bs-btn-bg: #f7941e;
    --bs-btn-border-color: #f7941e;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #f15a24;
    --bs-btn-hover-border-color: #f15a24;
    --bs-btn-active-bg: #f15a24;
    --bs-btn-active-border-color: #f15a24;
    color: #fff;
}

/* ---- Colour helpers ---------------------------------------- */
.bg-primary          { background-color: #1466d8 !important; }
.text-primary        { color: #1466d8 !important; }
.border-primary      { border-color: #1466d8 !important; }
.text-brand-orange   { color: #f7941e !important; }
.bg-brand-orange     { background-color: #f7941e !important; }
.bg-brand-soft       { background-color: #eef4ff !important; }
[data-bs-theme=dark] .bg-brand-soft { background-color: rgba(20,102,216,.10) !important; }

.bg-brand-gradient {
    background: linear-gradient(120deg, #0b2f6b 0%, #1466d8 45%, #17a2e0 100%);
}
.text-brand-gradient {
    background: linear-gradient(100deg, #1466d8 0%, #17a2e0 55%, #f7941e 130%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* ---- Hero -------------------------------------------------- */
.cv-hero {
    background: radial-gradient(120% 130% at 80% -10%, #17a2e0 0%, #1466d8 40%, #0b2f6b 100%);
    color: #fff;
    position: relative;
    overflow: hidden;
}
.cv-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(40% 40% at 15% 20%, rgba(247,148,30,.30), transparent 60%),
        radial-gradient(30% 30% at 90% 80%, rgba(23,162,224,.35), transparent 60%);
    pointer-events: none;
}
.cv-hero > * { position: relative; z-index: 1; }

/* Page banner (inner pages) */
.cv-page-banner {
    background: linear-gradient(120deg, #0b2f6b 0%, #1466d8 100%);
    color: #fff;
}

/* ---- Feature / module cards -------------------------------- */
.cv-card {
    background: var(--bs-body-bg);
    border: 1px solid rgba(20,102,216,.12);
    border-radius: 1rem;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    height: 100%;
}
.cv-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px -20px rgba(20,102,216,.45);
    border-color: rgba(20,102,216,.35);
}
.cv-icon-badge {
    width: 56px; height: 56px;
    display: inline-flex; align-items: center; justify-content: center;
    border-radius: .85rem;
    font-size: 26px;
    background: linear-gradient(135deg, #1466d8, #17a2e0);
    color: #fff;
    flex-shrink: 0;
}
.cv-icon-badge--orange { background: linear-gradient(135deg, #f7941e, #f15a24); }

.cv-stat-num {
    font-weight: 800;
    line-height: 1;
    background: linear-gradient(100deg,#1466d8,#17a2e0);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* ---- Module chips (Features "all modules") ----------------- */
.cv-chip {
    display: inline-flex; align-items: center; gap: .5rem;
    padding: .6rem .9rem;
    border-radius: .6rem;
    border: 1px solid rgba(20,102,216,.15);
    background: var(--bs-body-bg);
    font-weight: 500;
    font-size: .92rem;
    transition: all .2s ease;
}
.cv-chip:hover { border-color:#f7941e; color:#f15a24; transform: translateY(-2px); }
.cv-chip i { color:#1466d8; }

/* ---- Dark-mode toggle button ------------------------------- */
.cv-theme-toggle {
    width: 42px; height: 42px;
    display: inline-flex; align-items: center; justify-content: center;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.35);
    background: rgba(255,255,255,.12);
    color: inherit;
    font-size: 20px;
    cursor: pointer;
    transition: background .2s ease, transform .2s ease;
}
.cv-theme-toggle:hover { transform: rotate(15deg); background: rgba(255,255,255,.22); }
.cv-theme-toggle .cv-sun  { display: none; }
.cv-theme-toggle .cv-moon { display: inline-flex; }
[data-bs-theme=dark] .cv-theme-toggle .cv-sun  { display: inline-flex; }
[data-bs-theme=dark] .cv-theme-toggle .cv-moon { display: none; }

/* ---- WhatsApp floating button ------------------------------ */
.wa-float-btn {
    position: fixed; right: 22px; bottom: 22px; z-index: 1050;
    display: inline-flex; align-items: center; gap: .55rem;
    padding: .55rem 1rem .55rem .55rem;
    background: #25d366; color: #fff;
    border-radius: 999px; font-weight: 600; text-decoration: none;
    box-shadow: 0 10px 25px -8px rgba(37,211,102,.7);
    transition: transform .2s ease, box-shadow .2s ease;
}
.wa-float-btn:hover { transform: translateY(-2px); color:#fff; box-shadow: 0 14px 30px -8px rgba(37,211,102,.85); }
.wa-float-btn svg { width: 34px; height: 34px; flex-shrink: 0; }
@media (max-width: 575.98px) {
    .wa-float-btn span.wa-txt { display: none; }
    .wa-float-btn { padding: .5rem; }
}

/* ---- Footer brand tweaks ----------------------------------- */
.cv-footer { background:#0b1524; }
.cv-footer .footer-logo { max-height: 48px; }
.cv-iso-card {
    display:flex; align-items:center; gap:.6rem;
    background: rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.08);
    border-radius:.6rem; padding:.6rem .75rem;
}
.cv-iso-card img { height: 34px; width:auto; }

/* Logo swap by theme:
   - light logo (white text)  -> shown in DARK theme
   - dark logo (dark text)    -> shown in LIGHT theme (default)   */
.cv-header .logo__img { max-height: 46px; width: auto; margin-top: -10px; }
.logo__img--light { display: none; }
.logo__img--dark  { display: inline-block; }
[data-bs-theme=dark] .logo__img--light { display: inline-block; }
[data-bs-theme=dark] .logo__img--dark  { display: none; }

/* Nav link active state in brand colour */
.primary-header .nav-link.active { color:#1466d8 !important; font-weight:600; }

/* Accordion (FAQ) brand accent */
.accordion { --bs-accordion-active-color:#1466d8; --bs-accordion-btn-focus-border-color:#1466d8; }
.accordion-button:not(.collapsed){ color:#1466d8; background:#eef4ff; }
[data-bs-theme=dark] .accordion-button:not(.collapsed){ background:rgba(20,102,216,.12); }

/* Pricing highlight */
.cv-price-card.cv-price-featured {
    border: 2px solid #1466d8;
    box-shadow: 0 24px 60px -30px rgba(20,102,216,.6);
    position: relative;
}
.cv-price-badge {
    position:absolute; top:-14px; left:50%; transform:translateX(-50%);
    background:linear-gradient(135deg,#f7941e,#f15a24); color:#fff;
    padding:.3rem 1rem; border-radius:999px; font-size:.75rem; font-weight:700;
    letter-spacing:.05em; text-transform:uppercase;
}

/* ---- Fixed solid header ------------------------------------ */
:root { --cv-header-h: 68px; }
.cv-header {
    position: fixed;
    top: 0; left: 0; right: 0;
    width: 100%;
    z-index: 1030;
    background: var(--bs-body-bg);
    border-bottom: 1px solid rgba(20,102,216,.10);
    transition: box-shadow .25s ease, background .25s ease;
    padding-block: .35rem;
}
/* push the first section of every page below the fixed header
   (the section keeps its own coloured background up to the top) */
main > section:first-child {
    padding-top: calc(var(--cv-header-h) + 1.25rem) !important;
}
.cv-header.is-scrolled { box-shadow: 0 10px 30px -18px rgba(11,47,107,.45); }
.cv-header .nav-link { font-weight: 500; }
.cv-header .navbar-nav .nav-link:hover { color: #1466d8; }
.cv-header .dropdown-menu {
    border: 1px solid rgba(20,102,216,.12);
    border-radius: .8rem;
    box-shadow: 0 20px 45px -25px rgba(11,47,107,.5);
    padding: .5rem;
}
.cv-header .dropdown-item { border-radius: .5rem; font-size: .92rem; padding:.5rem .75rem; }
.cv-header .dropdown-item:hover { background:#eef4ff; color:#1466d8; }
[data-bs-theme=dark] .cv-header .dropdown-item:hover { background: rgba(20,102,216,.14); }
.cv-header .cv-theme-toggle { border-color: rgba(20,102,216,.30); color: var(--bs-body-color); background: transparent; }
.cv-header .cv-theme-toggle:hover { background: rgba(20,102,216,.10); }

/* generic vertical rhythm helper reused across pages */
.cv-section { padding-block: clamp(3rem, 6vw, 6rem); }
.cv-eyebrow {
    display:inline-block; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
    font-size:.78rem; color:#1466d8; margin-bottom:.6rem;
}
.cv-eyebrow--light { color:#9ec5ff; }

/* ---- CheckBoxList (Book Demo modules) ---------------------- */
.cv-checkbox-list label { margin-right: 1.25rem; margin-bottom:.4rem; font-size:.92rem; }
.cv-checkbox-list input[type=checkbox] { margin-right:.4rem; accent-color:#1466d8; }
.form-label { margin-bottom:.35rem; }
