:root {
    --aos-blue: #1268f3;
    --aos-ink: #07172f;
    --aos-muted: #60708a;
    --aos-line: #dfe5ec;
    --aos-cream: #fbfaf7;
    --aos-white: #fff;
    --aos-shadow: 0 16px 40px rgba(13, 38, 76, .08)
}

html,
body {
    margin: 0 !important
}

.aos-wire-v41 {
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Arial, sans-serif !important;
    color: var(--aos-ink);
    background: #fff
}

.aos-v41-shell {
    width: min(100% - 40px, 1180px);
    margin: 0 auto
}

.aos-v41-header {
    height: 78px;
    background: #fff;
    border-bottom: 1px solid var(--aos-line);
    position: relative;
    z-index: 1000
}

.aos-v41-header-row {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px
}

.aos-v41-logo img {
    width: 220px;
    height: auto;
    display: block
}

.aos-v41-nav {
    display: flex;
    align-items: center;
    gap: 26px
}

.aos-v41-nav a {
    text-decoration: none !important;
    color: #0c1626 !important;
    font-size: 13px;
    font-weight: 800
}

.aos-v41-account {
    background: #111 !important;
    color: #fff !important;
    border-radius: 999px;
    padding: 12px 20px !important
}

.aos-v41-mobile {
    display: none;
    border: 0;
    background: none;
    font-size: 24px
}

.aos-v41-home {
    background: #fff
}

.aos-v41-hero {
    background-color: var(--aos-cream);
    background-image: linear-gradient(rgba(7, 23, 47, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(7, 23, 47, .035) 1px, transparent 1px);
    background-size: 28px 28px;
    border-bottom: 1px solid var(--aos-line)
}

.aos-v41-hero-grid {
    min-height: 545px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: center
}

.aos-v41-pill {
    display: inline-flex;
    border: 1px solid #d8d5cf;
    background: rgba(255, 255, 255, .85);
    border-radius: 999px;
    padding: 8px 13px;
    font-size: 10px;
    letter-spacing: .12em;
    font-weight: 900
}

.aos-v41-hero h1 {
    font-size: 58px;
    line-height: 1.02;
    letter-spacing: -.045em;
    margin: 24px 0 20px;
    font-weight: 900
}

.aos-v41-hero h1 b {
    color: var(--aos-blue)
}

.aos-v41-hero p {
    max-width: 600px;
    color: var(--aos-muted);
    font-size: 17px;
    line-height: 1.7
}

.aos-v41-actions {
    display: flex;
    gap: 12px;
    margin: 30px 0
}

.aos-v41-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    padding: 14px 22px;
    text-decoration: none !important;
    font-size: 13px;
    font-weight: 900
}

.aos-v41-btn.dark {
    background: #111;
    color: #fff !important
}

.aos-v41-btn.light {
    background: #fff;
    color: #111 !important;
    border: 1px solid var(--aos-line)
}

.aos-v41-checks {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    color: #52627a;
    font-size: 12px
}

.aos-v41-checks span:before {
    color: var(--aos-blue)
}

.aos-v41-mail-scene {
    position: relative;
    min-height: 390px
}

.aos-v41-inbox {
    position: absolute;
    right: 5%;
    top: 12%;
    width: 72%;
    background: #fff;
    border: 1px solid var(--aos-line);
    border-radius: 16px;
    padding: 26px;
    box-shadow: var(--aos-shadow)
}

.aos-v41-inbox>small {
    color: #8894a7
}

.aos-v41-inbox>strong {
    display: block;
    font-size: 18px;
    margin: 4px 0 18px
}

.aos-v41-inbox>div {
    position: relative;
    border-top: 1px solid #e8edf3;
    padding: 17px 72px 17px 44px
}

.aos-v41-inbox>div:before {
    content: '●';
    position: absolute;
    left: 8px;
    top: 19px;
    color: #b7c1cf;
    font-size: 22px
}

.aos-v41-inbox b {
    display: block;
    font-size: 12px
}

.aos-v41-inbox span {
    display: block;
    color: #718097;
    font-size: 11px;
    margin-top: 3px
}

.aos-v41-inbox time {
    position: absolute;
    right: 0;
    top: 23px;
    color: #8c98a9;
    font-size: 10px
}

.aos-v41-badge {
    position: absolute;
    background: #fff;
    border: 1px solid var(--aos-line);
    border-radius: 14px;
    box-shadow: var(--aos-shadow);
    padding: 14px 17px;
    display: flex;
    gap: 9px;
    align-items: center;
    font-size: 12px
}

.aos-v41-badge span {
    color: #7a8799
}

.aos-v41-badge b {
    color: #0b172a
}

.aos-v41-badge.protect {
    left: 0;
    top: 4%
}

.aos-v41-badge.flexible {
    left: 3%;
    bottom: 6%
}

.aos-v41-strip {
    border-bottom: 1px solid var(--aos-line);
    background: #fff
}

.aos-v41-strip>.aos-v41-shell,
.aos-v41-bottom-strip>.aos-v41-shell {
    display: grid;
    grid-template-columns: repeat(4, 1fr)
}

.aos-v41-strip div>div,
.aos-v41-bottom-strip div>div {
    padding: 22px 24px;
    border-right: 1px solid var(--aos-line);
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    column-gap: 12px
}

.aos-v41-strip div>div:last-child,
.aos-v41-bottom-strip div>div:last-child {
    border-right: 0
}

.aos-v41-strip b,
.aos-v41-bottom-strip b {
    font-size: 12px
}

.aos-v41-strip span,
.aos-v41-bottom-strip span {
    font-size: 11px;
    color: var(--aos-muted);
    grid-column: 2
}

.aos-v41-plans {
    padding: 80px 0 65px;
    background: #fff
}

.aos-v41-section-title {
    text-align: center;
    margin-bottom: 34px
}

.aos-v41-section-title>span {
    font-size: 10px;
    letter-spacing: .15em;
    color: var(--aos-blue);
    font-weight: 900
}

.aos-v41-section-title h2 {
    font-size: 36px;
    margin: 12px 0 7px;
    letter-spacing: -.025em
}

.aos-v41-section-title p {
    margin: 0;
    color: var(--aos-muted)
}

.aos-v41-plan-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    max-width: 820px;
    margin: 0 auto
}

.aos-v41-plan {
    border: 1px solid #075dcc;
    border-radius: 16px;
    background: #f9f9f9;
    padding: 24px;
    box-shadow: 0 12px 30px rgba(10, 35, 70, .05)
}

.aos-v41-plan-top {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 1px solid var(--aos-line);
    padding-bottom: 18px
}

.aos-v41-plan-top span {
    font-size: 9px;
    letter-spacing: .12em;
    color: var(--aos-blue);
    font-weight: 900
}

.aos-v41-plan h3 {
    font-size: 23px;
    margin: 7px 0 0
}

.aos-v41-price {
    text-align: right
}

.aos-v41-price small,
.aos-v41-price em {
    display: block;
    color: var(--aos-muted);
    font-size: 10px;
    font-style: normal
}

.aos-v41-price strong {
    display: block;
    font-size: 26px;
    margin: 4px 0
}

.aos-v41-plan ul {
    list-style: none;
    padding: 18px 0;
    margin: 0;
    min-height: 165px
}

.aos-v41-plan li {
    font-size: 12px;
    color: #34435a;
    padding: 5px 0
}

.aos-v41-plan li::first-letter {
    color: var(--aos-blue)
}

.aos-v41-order {
    display: flex;
    justify-content: center;
    background: var(--aos-blue);
    color: #fff !important;
    text-decoration: none !important;
    border-radius: 9px;
    padding: 13px;
    font-weight: 900;
    font-size: 13px
}

.aos-v41-bottom-strip {
    background: #fbfcfe;
    border-top: 1px solid var(--aos-line);
    border-bottom: 1px solid var(--aos-line)
}

.aos-v41-footer {
    background: #071b3d;
    color: #fff;
    padding: 42px 0 0
}

.aos-v41-footer-grid {
    display: grid;
    grid-template-columns: 1.5fr repeat(3, 1fr);
    gap: 40px
}

.aos-v41-footer img {
    width: 190px;
    height: auto;
    display: block;
    filter: none !important;
    background: transparent !important
}

.aos-v41-footer p {
    color: #b8c4d8;
    font-size: 11px
}

.aos-v41-footer strong {
    display: block;
    font-size: 10px;
    letter-spacing: .1em;
    margin-bottom: 12px
}

.aos-v41-footer a {
    display: block;
    color: #d7e1f2 !important;
    text-decoration: none !important;
    font-size: 11px;
    margin: 7px 0
}

.aos-v41-copy {
    border-top: 1px solid rgba(255, 255, 255, .14);
    margin-top: 30px;
    padding: 15px;
    text-align: center;
    font-size: 10px;
    color: #b8c4d8
}

/* Hide the cloned legacy header/footer only while v4.1 is active. */
.aos-wire-v41 #top-nav,
.aos-wire-v41 header.header,
.aos-wire-v41 #header,
.aos-wire-v41 .navbar-main,
.aos-wire-v41 #main-menu,
.aos-wire-v41 footer.footer,
.aos-wire-v41 #footer {
    display: none !important
}

/* Non-home WHMCS pages keep their original functional markup but get the same visual language. */
.aos-wire-v41:not(.adminarea) #main-body {
    background: #fbfaf7 !important
}

.aos-wire-v41:not(.adminarea) #main-body .container,
.aos-wire-v41:not(.adminarea) #main-body .container-fluid {
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 34px 20px !important
}

.aos-wire-v41 .panel,
.aos-wire-v41 .card,
.aos-wire-v41 .logincontainer,
.aos-wire-v41 .product-details,
.aos-wire-v41 .invoice-container {
    background: #fff !important;
    border: 1px solid var(--aos-line) !important;
    border-radius: 14px !important;
    box-shadow: 0 12px 30px rgba(10, 35, 70, .05) !important;
    overflow: hidden
}

.aos-wire-v41 .panel-heading,
.aos-wire-v41 .card-header {
    background: #fff !important;
    border-bottom: 1px solid var(--aos-line) !important;
    color: var(--aos-ink) !important;
    font-weight: 900 !important
}

.aos-wire-v41 .btn {
    border-radius: 9px !important;
    font-weight: 850 !important
}

.aos-wire-v41 .btn-primary,
.aos-wire-v41 .btn-success {
    background: var(--aos-blue) !important;
    border-color: var(--aos-blue) !important
}

.aos-wire-v41 .form-control,
.aos-wire-v41 input,
.aos-wire-v41 select,
.aos-wire-v41 textarea {
    border-radius: 9px !important;
    box-shadow: none !important
}

.aos-wire-v41 .header-lined h1 {
    font-weight: 900 !important;
    color: var(--aos-ink) !important
}

.aos-wire-v41 .em-wrap {
    max-width: 1180px !important;
    margin: 0 auto !important
}

@media(max-width:900px) {
    .aos-v41-logo img {
        width: 185px
    }

    .aos-v41-mobile {
        display: block
    }

    .aos-v41-nav {
        display: none;
        position: absolute;
        top: 68px;
        left: 16px;
        right: 16px;
        background: #fff;
        border: 1px solid var(--aos-line);
        border-radius: 14px;
        box-shadow: var(--aos-shadow);
        padding: 10px;
        flex-direction: column;
        align-items: stretch;
        gap: 0
    }

    .aos-v41-nav.open {
        display: flex
    }

    .aos-v41-nav a {
        padding: 12px;
        border-bottom: 1px solid #edf1f5
    }

    .aos-v41-hero-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 55px 0
    }

    .aos-v41-mail-scene {
        min-height: 350px
    }

    .aos-v41-strip>.aos-v41-shell,
    .aos-v41-bottom-strip>.aos-v41-shell {
        grid-template-columns: 1fr 1fr
    }

    .aos-v41-plan-grid {
        grid-template-columns: 1fr
    }

    .aos-v41-footer-grid {
        grid-template-columns: 1fr 1fr
    }
}

@media(max-width:620px) {
    .aos-v41-shell {
        width: min(100% - 24px, 1180px)
    }

    .aos-v41-hero h1 {
        font-size: 42px
    }

    .aos-v41-mail-scene {
        display: none
    }

    .aos-v41-strip>.aos-v41-shell,
    .aos-v41-bottom-strip>.aos-v41-shell {
        grid-template-columns: 1fr
    }

    .aos-v41-strip div>div,
    .aos-v41-bottom-strip div>div {
        border-right: 0;
        border-bottom: 1px solid var(--aos-line)
    }

    .aos-v41-plan-top {
        flex-direction: column
    }

    .aos-v41-price {
        text-align: left
    }

    .aos-v41-footer-grid {
        grid-template-columns: 1fr 1fr
    }
}

/* Footer logo fix */
#aosWireV41Footer img {
    filter: none !important;
    opacity: 1 !important;
}

#aosWireV41Footer .aos-v41-footer-grid>div:first-child img {
    display: block !important;
    width: 210px !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    background: #ffffff !important;
    padding: 8px 10px !important;
    border-radius: 6px !important;
}


/* AOSWARE Separate Information Pages */

.aos-info-page {
    max-width: 1120px;
    margin: 0 auto;
    padding: 90px 25px 120px;
    min-height: 620px;
}

.aos-info-kicker {
    color: #1267e8;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.5px;
    margin-bottom: 12px;
}

.aos-info-page h1 {
    color: #071a39;
    font-size: 48px;
    line-height: 1.08;
    margin: 0 0 20px;
}

.aos-info-lead {
    max-width: 720px;
    color: #64748b;
    font-size: 18px;
    line-height: 1.75;
}

.aos-info-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 45px;
}

.aos-info-card {
    background: #fff;
    border: 1px solid #dde5ef;
    border-radius: 16px;
    padding: 28px;
}

.aos-info-card h3 {
    color: #071a39;
    margin-top: 0;
}

.aos-info-card p {
    color: #64748b;
    line-height: 1.65;
}

.aos-info-btn {
    display: inline-block;
    margin-top: 12px;
    padding: 12px 20px;
    border-radius: 9px;
    background: #1267e8;
    color: #fff !important;
    font-weight: 700;
    text-decoration: none !important;
}

.aos-faq-list {
    max-width: 850px;
    margin-top: 40px;
}

.aos-faq-item {
    padding: 25px 0;
    border-bottom: 1px solid #e5e7eb;
}

.aos-faq-item h3 {
    color: #071a39;
    margin: 0 0 8px;
}

.aos-faq-item p {
    color: #64748b;
    margin: 0;
}

@media(max-width:800px) {
    .aos-info-grid {
        grid-template-columns: 1fr;
    }

    .aos-info-page h1 {
        font-size: 38px;
    }
}


/* Login button final fix */
#aosWireV41Header a.aos-login-btn,
#aosWireV41Header a.aos-login-btn:link,
#aosWireV41Header a.aos-login-btn:visited,
#aosWireV41Header a.aos-login-btn:hover,
#aosWireV41Header a.aos-login-btn:focus,
#aosWireV41Header a.aos-login-btn *,
a.aos-login-btn,
a.aos-login-btn * {
    color: #ffffff !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

#aosWireV41Header a.aos-login-btn,
a.aos-login-btn {
    background: #111111 !important;
    border: 1px solid #111111 !important;
    padding: 12px 24px !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
}

#aosWireV41Header a.aos-login-btn:hover,
a.aos-login-btn:hover {
    background: #1267e8 !important;
    border-color: #1267e8 !important;
    color: #ffffff !important;
}

/* Login / Logged-in Account button - permanent fix */
#aosWireV41Header .aos-v41-login,
#aosWireV41Header .aos-v41-login:link,
#aosWireV41Header .aos-v41-login:visited,
#aosWireV41Header .aos-v41-login:hover,
#aosWireV41Header .aos-v41-login:focus,
#aosWireV41Header .aos-v41-login *,
#aosWireV41Header .aos-login-btn,
#aosWireV41Header .aos-login-btn *,
#aosWireV41Header .aos-account-btn,
#aosWireV41Header .aos-account-btn * {
    color: #ffffff !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

#aosWireV41Header .aos-v41-login,
#aosWireV41Header .aos-login-btn,
#aosWireV41Header .aos-account-btn {
    background: #111111 !important;
    border: 1px solid #111111 !important;
    border-radius: 999px !important;
    padding: 12px 24px !important;
    font-weight: 700 !important;
}

#aosWireV41Header .aos-v41-login:hover,
#aosWireV41Header .aos-login-btn:hover,
#aosWireV41Header .aos-account-btn:hover {
    background: #1267e8 !important;
    border-color: #1267e8 !important;
    color: #ffffff !important;
}

/* Login / Logged-in Account button - permanent fix */
#aosWireV41Header .aos-v41-login,
#aosWireV41Header .aos-v41-login:link,
#aosWireV41Header .aos-v41-login:visited,
#aosWireV41Header .aos-v41-login:hover,
#aosWireV41Header .aos-v41-login:focus,
#aosWireV41Header .aos-v41-login *,
#aosWireV41Header .aos-login-btn,
#aosWireV41Header .aos-login-btn *,
#aosWireV41Header .aos-account-btn,
#aosWireV41Header .aos-account-btn * {
    color: #ffffff !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

#aosWireV41Header .aos-v41-login,
#aosWireV41Header .aos-login-btn,
#aosWireV41Header .aos-account-btn {
    background: #111111 !important;
    border: 1px solid #111111 !important;
    border-radius: 999px !important;
    padding: 12px 24px !important;
    font-weight: 700 !important;
}

#aosWireV41Header .aos-v41-login:hover,
#aosWireV41Header .aos-login-btn:hover,
#aosWireV41Header .aos-account-btn:hover {
    background: #1267e8 !important;
    border-color: #1267e8 !important;
    color: #ffffff !important;
}

/* Logged-in account button - force white text */
#aosWireV41Header .aos-v41-login,
#aosWireV41Header .aos-v41-login span,
#aosWireV41Header .aos-v41-login strong,
#aosWireV41Header .aos-v41-login i {
    color: #ffffff !important;
}

#aosWireV41Header .aos-v41-login {
    background: #111111 !important;
    border-color: #111111 !important;
}

#aosWireV41Header .aos-v41-login:hover {
    background: #1267e8 !important;
    border-color: #1267e8 !important;
    color: #ffffff !important;
}

/* Final account/login button fix on all portal pages */
#aosWireV41Header .aos-v41-nav>a:last-child,
#aosWireV41Header .aos-v41-nav>a:last-child:link,
#aosWireV41Header .aos-v41-nav>a:last-child:visited,
#aosWireV41Header .aos-v41-nav>a:last-child:hover,
#aosWireV41Header .aos-v41-nav>a:last-child:focus,
#aosWireV41Header .aos-v41-nav>a:last-child *,
#aosWireV41Header nav>a:last-child,
#aosWireV41Header nav>a:last-child * {
    background: #111111 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    border-color: #111111 !important;
    text-decoration: none !important;
}

#aosWireV41Header .aos-v41-nav>a:last-child,
#aosWireV41Header nav>a:last-child {
    border-radius: 999px !important;
    padding: 12px 24px !important;
    font-weight: 700 !important;
}

#aosWireV41Header .aos-v41-nav>a:last-child:hover,
#aosWireV41Header nav>a:last-child:hover {
    background: #1267e8 !important;
    border-color: #1267e8 !important;
    color: #ffffff !important;
}

/* FINAL FIX - Login / Logged-in account button */
#aosWireV41Header .aos-v41-nav>a:last-child,
#aosWireV41Header .aos-v41-nav>a:last-child:link,
#aosWireV41Header .aos-v41-nav>a:last-child:visited,
#aosWireV41Header .aos-v41-nav>a:last-child:hover,
#aosWireV41Header .aos-v41-nav>a:last-child:focus,
#aosWireV41Header .aos-v41-nav>a:last-child * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

#aosWireV41Header .aos-v41-nav>a:last-child {
    background: #111111 !important;
    border: 1px solid #111111 !important;
    border-radius: 999px !important;
    padding: 12px 24px !important;
    min-width: 110px !important;
    text-align: center !important;
    font-weight: 700 !important;
}

#aosWireV41Header .aos-v41-nav>a:last-child:hover {
    background: #1267e8 !important;
    border-color: #1267e8 !important;
}


/* FINAL ACCOUNT BUTTON FIX */
#aosWireV41Header .aos-v41-account,
#aosWireV41Header .aos-v41-account:link,
#aosWireV41Header .aos-v41-account:visited,
#aosWireV41Header .aos-v41-account:focus {
    background: #111111 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border: 1px solid #111111 !important;
    border-radius: 999px !important;
    padding: 12px 24px !important;
    min-width: 110px !important;
    text-align: center !important;
    font-weight: 700 !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

#aosWireV41Header .aos-v41-account:hover {
    background: #1267e8 !important;
    border-color: #1267e8 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* AOSWARE HOME - COMPACT PLAN SECTION */

.aos-v41-strip div>div {
    padding: 12px 18px !important;
}

.aos-v41-strip b {
    font-size: 11px !important;
}

.aos-v41-strip span {
    font-size: 10px !important;
}

.aos-v41-plans {
    padding: 26px 0 55px !important;
}

.aos-v41-section-title {
    margin-bottom: 18px !important;
}

.aos-v41-section-title p {
    margin: 0 !important;
    color: var(--aos-blue) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
}


/* AOSWARE - tighter plans spacing */

.aos-v41-plans {
    padding: 8px 0 45px !important;
    margin-top: -6px !important;
}

.aos-v41-section-title {
    margin: 0 0 10px !important;
    padding: 0 !important;
}

.aos-v41-section-title p {
    margin: 0 !important;
    color: #1267e8 !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

.aos-v41-plan-grid {
    margin-top: 0 !important;
}


/* AOSWARE HOME - FINAL SPACING POLISH */

/* Main hero/banner slightly compact */
.aos-v41-hero-grid {
    padding-top: 34px !important;
    padding-bottom: 24px !important;
}

/* Plans section spacing */
.aos-v41-plans {
    padding-top: 12px !important;
}

.aos-v41-section-title {
    margin-top: 8px !important;
    margin-bottom: 16px !important;
}

.aos-v41-section-title p {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}

/* Small extra gap before plan cards */
.aos-v41-plan-grid {
    margin-top: 6px !important;
}


/* Client logout button */
.aos-v41-logout {
    display: inline-flex !important;
    align-items: center;
    gap: 7px;
    background: #dc3545 !important;
    color: #fff !important;
    border-radius: 999px;
    padding: 12px 18px !important;
    text-decoration: none !important;
    font-size: 13px;
    font-weight: 800;
    white-space: nowrap;
}

.aos-v41-logout:hover {
    background: #b02a37 !important;
    color: #fff !important;
    text-decoration: none !important;
}