/* To Flow Design — Client Area visual layer for WHMCS Six */
:root {
    --tf-ink: #123047;
    --tf-muted: #64798a;
    --tf-navy: #073b5c;
    --tf-blue: #0d668c;
    --tf-cyan: #12a6c4;
    --tf-coral: #ff5a5f;
    --tf-sky: #eaf7fb;
    --tf-line: #dce8ef;
    --tf-surface: #ffffff;
    --tf-page: #f4f8fb;
    --tf-shadow: 0 18px 50px rgba(7, 59, 92, .10);
}

html,
body {
    background: var(--tf-page);
    color: var(--tf-ink);
    font-family: "Open Sans", Arial, sans-serif;
}

body {
    font-size: 15px;
    line-height: 1.65;
}

a {
    color: var(--tf-blue);
    transition: color .2s ease, opacity .2s ease;
}

a:hover,
a:focus {
    color: var(--tf-cyan);
    text-decoration: none;
}

#header {
    background: rgba(255, 255, 255, .98);
    border-bottom: 1px solid var(--tf-line);
    box-shadow: 0 2px 16px rgba(7, 59, 92, .04);
}

#header .logo {
    max-height: 52px;
    padding: 8px 0;
}

#header .top-nav {
    margin-top: 14px;
}

#header .top-nav > li > a {
    color: var(--tf-muted);
    font-size: 13px;
}

#header .top-nav > li > a:hover {
    color: var(--tf-blue);
}

#header .primary-action,
#header .btn-primary {
    background: var(--tf-blue);
    border: 0;
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(13, 102, 140, .18);
}

#header .primary-action:hover,
#header .btn-primary:hover {
    background: var(--tf-cyan);
}

.navbar-main {
    background: linear-gradient(100deg, var(--tf-navy), var(--tf-blue));
    border: 0;
    border-radius: 0;
    margin-bottom: 0;
}

.navbar-main .navbar-nav > li > a,
.navbar-main .navbar-brand {
    color: #fff;
    font-weight: 600;
    letter-spacing: .01em;
}

.navbar-main .navbar-nav > li > a {
    padding: 16px 15px;
}

.navbar-main .navbar-nav > li > a:hover,
.navbar-main .navbar-nav > .open > a,
.navbar-main .navbar-nav > .active > a {
    background: rgba(255, 255, 255, .12);
    color: #fff;
}

.navbar-main .dropdown-menu {
    border: 1px solid var(--tf-line);
    border-radius: 10px;
    box-shadow: var(--tf-shadow);
    padding: 8px;
}

.navbar-main .dropdown-menu > li > a {
    border-radius: 7px;
    color: var(--tf-ink);
    padding: 9px 12px;
}

.navbar-main .dropdown-menu > li > a:hover {
    background: var(--tf-sky);
    color: var(--tf-blue);
}

#home-banner {
    background:
        radial-gradient(circle at 84% 20%, rgba(18, 166, 196, .34), transparent 28%),
        linear-gradient(118deg, #062f4e 0%, #075879 58%, #0d7898 100%);
    min-height: 245px;
    padding: 70px 0 58px;
    position: relative;
    overflow: hidden;
}

#home-banner::after {
    background: linear-gradient(135deg, transparent 45%, rgba(255, 255, 255, .08) 45%, transparent 70%);
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
}

#home-banner h2 {
    color: #fff;
    font-size: clamp(28px, 4vw, 46px);
    font-weight: 300;
    letter-spacing: -.03em;
    margin: 0;
    position: relative;
    text-shadow: 0 4px 20px rgba(0, 0, 0, .16);
    z-index: 1;
}

.home-shortcuts {
    background: linear-gradient(100deg, #0c91b0, var(--tf-cyan));
    box-shadow: 0 12px 30px rgba(7, 59, 92, .14);
}

.home-shortcuts .lead {
    color: #fff;
    font-size: 20px;
    font-weight: 300;
    margin: 22px 0;
}

.home-shortcuts ul {
    display: flex;
    margin: 0;
}

.home-shortcuts li {
    border-left: 1px solid rgba(255, 255, 255, .22);
    flex: 1;
}

.home-shortcuts li a {
    color: #fff;
    min-height: 82px;
    padding: 14px 10px;
    transition: background .2s ease, transform .2s ease;
}

.home-shortcuts li a:hover {
    background: rgba(255, 255, 255, .13);
    transform: translateY(-2px);
}

.home-shortcuts li i {
    font-size: 24px;
    margin-bottom: 5px;
}

.home-shortcuts li p {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
}

#main-body {
    min-height: 470px;
    padding: 52px 0 74px;
}

.main-content {
    background: var(--tf-surface);
    border: 1px solid var(--tf-line);
    border-radius: 18px;
    box-shadow: var(--tf-shadow);
    padding: 30px 36px;
}

.main-content > h2 {
    color: var(--tf-ink);
    font-size: 28px;
    font-weight: 600;
    margin: 0 0 24px;
}

.announcement-single {
    border-top: 1px solid var(--tf-line);
    padding-top: 18px;
}

.announcement-single h3 {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 0 0 20px;
}

.announcement-single h3 a {
    color: var(--tf-ink);
    font-size: 21px;
    font-weight: 600;
}

.announcement-single .label-default {
    background: var(--tf-navy);
    border-radius: 6px;
    font-size: 11px;
    letter-spacing: .06em;
    padding: 7px 10px;
    text-transform: uppercase;
}

.announcement-single blockquote {
    background: var(--tf-sky);
    border-left: 4px solid var(--tf-cyan);
    border-radius: 0 10px 10px 0;
    color: var(--tf-muted);
    margin: 0;
    padding: 18px 22px;
}

.announcement-single blockquote p {
    background-color: transparent !important;
    color: var(--tf-muted) !important;
}

.panel,
.well,
.card {
    border: 1px solid var(--tf-line);
    border-radius: 14px;
    box-shadow: 0 10px 30px rgba(7, 59, 92, .06);
}

.panel-primary > .panel-heading,
.panel-heading {
    background: linear-gradient(100deg, var(--tf-navy), var(--tf-blue));
    border-radius: 13px 13px 0 0;
    border: 0;
    color: #fff;
}

.btn {
    border-radius: 8px;
    font-weight: 600;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.btn:hover {
    transform: translateY(-1px);
}

.btn-primary {
    background: var(--tf-blue);
    border-color: var(--tf-blue);
    box-shadow: 0 8px 18px rgba(13, 102, 140, .18);
}

.btn-primary:hover,
.btn-primary:focus {
    background: var(--tf-cyan);
    border-color: var(--tf-cyan);
}

.form-control {
    border: 1px solid #cbdce6;
    border-radius: 8px;
    box-shadow: none;
    min-height: 42px;
}

.form-control:focus {
    border-color: var(--tf-cyan);
    box-shadow: 0 0 0 3px rgba(18, 166, 196, .14);
}

#footer {
    background: #062f4e;
    border: 0;
    color: rgba(255, 255, 255, .72);
    padding: 26px 0;
}

#footer p {
    margin: 0;
}

#footer .back-to-top {
    background: rgba(255, 255, 255, .12);
    border-radius: 8px;
    color: #fff;
}

@media (max-width: 767px) {
    #header .top-nav {
        margin-top: 8px;
    }

    #home-banner {
        min-height: 190px;
        padding: 54px 18px 44px;
    }

    .home-shortcuts .row {
        margin: 0;
    }

    .home-shortcuts .col-sm-12 {
        padding: 0;
    }

    .home-shortcuts ul {
        flex-wrap: wrap;
    }

    .home-shortcuts li {
        min-width: 33.333%;
    }

    #main-body {
        padding: 28px 0 46px;
    }

    .main-content {
        border-radius: 0;
        padding: 24px 20px;
    }
}

/* The order-form stylesheet is loaded after custom.css on service pages.
   Keep the public navigation consistent there without touching WHMCS admin. */
#main-menu #nav.navbar-main,
#main-menu .navbar-main {
    background: var(--tf-cream) !important;
    border-bottom: 1px solid #ebe9e2 !important;
}

#main-menu .navbar-main .navbar-nav > li > a,
#main-menu .navbar-main .navbar-brand {
    color: #102d37 !important;
}

#main-menu .navbar-main .navbar-nav > li > a:hover,
#main-menu .navbar-main .navbar-nav > .open > a,
#main-menu .navbar-main .navbar-nav > .active > a {
    background: transparent !important;
    color: var(--tf-teal) !important;
}

#main-menu .navbar-main .dropdown-menu {
    background: #fff !important;
    border: 1px solid #e7e9e5 !important;
    border-radius: 7px !important;
    box-shadow: 0 15px 32px rgba(16, 45, 55, .14) !important;
}

#main-menu .navbar-main .dropdown-menu > li > a {
    color: #42545c !important;
}

#main-menu .navbar-main .dropdown-menu > li > a:hover,
#main-menu .navbar-main .dropdown-menu > li.active > a {
    background: #fff3f1 !important;
    color: #c64248 !important;
}

/* Public client-area system: the same visual language is used on every
   customer-facing page, while the WHMCS administration area is untouched. */
:root {
    --tf-cream: #fbfaf6;
    --tf-teal: #157f80;
    --tf-coral: #ff5a5f;
}

body {
    background: var(--tf-cream);
}

#header {
    background: var(--tf-cream);
    border-bottom: 0;
    box-shadow: none;
}

#header .top-nav > li > a {
    color: #42545c;
}

#header .top-nav > li > a:hover {
    color: var(--tf-teal);
}

#header .primary-action .btn,
#header .btn-primary {
    background: var(--tf-teal);
    border-radius: 5px;
    box-shadow: none;
}

#header .primary-action .btn:hover,
#header .btn-primary:hover {
    background: #0c696a;
}

#main-menu,
#nav,
.navbar-main {
    background: var(--tf-cream);
    border: 0;
}

.navbar-main {
    border-bottom: 1px solid #ebe9e2;
}

.navbar-main .navbar-nav > li > a,
.navbar-main .navbar-brand {
    color: #102d37;
    font-weight: 600;
}

.navbar-main .navbar-nav > li > a {
    padding: 15px 16px;
}

.navbar-main .navbar-nav > li > a:hover,
.navbar-main .navbar-nav > .open > a,
.navbar-main .navbar-nav > .active > a {
    background: transparent;
    color: var(--tf-teal);
}

.navbar-main .navbar-toggle {
    border-color: #d7dfdc;
}

.navbar-main .navbar-toggle .icon-bar {
    background: var(--tf-teal);
}

.navbar-main .dropdown-menu {
    background: #fff;
    border: 1px solid #e7e9e5;
    border-radius: 7px;
    box-shadow: 0 15px 32px rgba(16, 45, 55, .14);
    margin-top: 3px;
    padding: 7px;
}

.navbar-main .dropdown-menu > li > a {
    border-radius: 5px;
    color: #42545c;
    padding: 10px 14px;
}

.navbar-main .dropdown-menu > li > a:hover,
.navbar-main .dropdown-menu > li.active > a {
    background: #fff3f1;
    color: #c64248;
}

#main-body {
    background: var(--tf-cream);
    padding: 48px 0 70px;
}

#main-body .main-content {
    background: #fff;
    border: 1px solid #ebe9e2;
    border-radius: 18px;
    box-shadow: 0 16px 38px rgba(16, 45, 55, .08);
}

#main-body .main-content > h2,
#main-body .main-content h1,
#main-body .main-content h2,
#main-body .main-content h3 {
    color: #102d37;
}

.panel,
.well,
.card {
    background: #fff;
    border-color: #e7e9e5;
    box-shadow: 0 10px 26px rgba(16, 45, 55, .07);
}

.panel-heading,
.panel-primary > .panel-heading {
    background: #102d37;
    border-radius: 13px 13px 0 0;
}

.list-group-item {
    border-color: #eef1ef;
}

.list-group-item:hover,
.list-group-item.active,
.list-group-item.active:hover {
    background: #fff3f1;
    border-color: #f3d9d6;
    color: #c64248;
}

.btn-primary,
.btn-success {
    background: var(--tf-teal);
    border-color: var(--tf-teal);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-success:hover,
.btn-success:focus {
    background: #0c696a;
    border-color: #0c696a;
}

.btn-danger,
.btn-warning {
    background: var(--tf-coral);
    border-color: var(--tf-coral);
}

.form-control,
select.form-control {
    background: #fff;
    border-color: #d9e2df;
}

.form-control:focus,
select.form-control:focus {
    border-color: var(--tf-teal);
    box-shadow: 0 0 0 3px rgba(21, 127, 128, .14);
}

#footer {
    background: #071e2a;
}

@media (max-width: 767px) {
    #main-body {
        padding: 28px 0 46px;
    }

    #main-body .main-content {
        border-radius: 0;
    }

    .navbar-main .navbar-nav > li > a {
        padding: 12px 15px;
    }

    .navbar-main .navbar-collapse {
        background: var(--tf-cream);
        border-top: 1px solid #ebe9e2;
    }
}

/* Pricing / product catalogue inspired by the reference layout.
   This is intentionally scoped to the WHMCS premium comparison order form. */
#main-body:has(#bredh-cart-custom) {
    background: #fbfaf6;
}

#main-body:has(#bredh-cart-custom) .main-content {
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 30px 0 68px;
}

#main-body:has(#bredh-cart-custom) .row-product-selection {
    margin-left: 0;
    margin-right: 0;
}

#main-body:has(#bredh-cart-custom) #bredh-cart-custom {
    background: linear-gradient(135deg, #041923 0%, #072d3e 58%, #075d6e 100%);
    border-radius: 18px;
    box-shadow: 0 24px 55px rgba(4, 25, 35, .18);
    margin: 0;
    overflow: hidden;
    padding: 64px 32px 74px;
    position: relative;
}

#main-body:has(#bredh-cart-custom) #bredh-cart-custom::before {
    background: linear-gradient(135deg, transparent 42%, rgba(255, 255, 255, .06) 42%, transparent 67%);
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
}

#main-body:has(#bredh-cart-custom) .tittle-simple-cart-em,
#main-body:has(#bredh-cart-custom) #products {
    position: relative;
    z-index: 1;
}

#main-body:has(#bredh-cart-custom) .tittle-simple-cart-em h5 {
    color: #fff;
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 300;
    letter-spacing: -.025em;
    margin: 0 0 46px;
}

#main-body:has(#bredh-cart-custom) .tittle-simple-cart-em h5 span {
    color: rgba(255, 255, 255, .72);
    display: block;
    font-size: 15px;
    letter-spacing: .01em;
    margin: 13px auto 0;
    max-width: 680px;
}

#main-body:has(#bredh-cart-custom) #products > .row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -14px;
    margin-right: -14px;
}

#main-body:has(#bredh-cart-custom) #products > .row > [class*="col-"] {
    display: flex;
    padding-left: 14px;
    padding-right: 14px;
}

#main-body:has(#bredh-cart-custom) .bredh-orderform-template {
    background: #fff;
    border: 1px solid rgba(7, 59, 92, .08);
    border-radius: 16px;
    box-shadow: 0 16px 32px rgba(0, 0, 0, .14);
    display: flex;
    flex-direction: column;
    margin-bottom: 28px;
    overflow: hidden;
    transition: box-shadow .2s ease, transform .2s ease;
    width: 100%;
}

#main-body:has(#bredh-cart-custom) .bredh-orderform-template:hover {
    box-shadow: 0 22px 38px rgba(0, 0, 0, .2);
    transform: translateY(-4px);
}

#main-body:has(#bredh-cart-custom) .bredh-orderform-template-header {
    padding: 28px 26px 17px;
    position: relative;
}

#main-body:has(#bredh-cart-custom) .hosting-plans-icon {
    color: var(--tf-coral);
    float: right;
    font-size: 26px;
}

#main-body:has(#bredh-cart-custom) .pricing-table-title {
    color: #102d37;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
    margin: 0 42px 19px 0;
    min-height: 52px;
}

#main-body:has(#bredh-cart-custom) .tha_price {
    border-top: 1px solid #edf0ee;
    color: #71808a;
    display: block;
    font-size: 13px;
    padding-top: 16px;
}

#main-body:has(#bredh-cart-custom) .tha_price i {
    color: #102d37;
    font-size: 27px;
    font-style: normal;
    font-weight: 400;
    margin-right: 5px;
}

#main-body:has(#bredh-cart-custom) .price-table {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 0 26px 26px;
}

#main-body:has(#bredh-cart-custom) .pricing-table-body {
    color: #536872;
    flex: 1;
    font-size: 14px;
    line-height: 1.95;
    list-style: none;
    margin: 0;
    padding: 18px 0 22px;
}

#main-body:has(#bredh-cart-custom) .pricing-table-body strong {
    color: #102d37;
    font-size: 12px;
    letter-spacing: .03em;
}

#main-body:has(#bredh-cart-custom) .tree-steps-hosting-plans-footer {
    margin-top: auto;
    text-align: left;
}

#main-body:has(#bredh-cart-custom) .pricing-table-button {
    background: var(--tf-coral);
    border-radius: 6px;
    box-shadow: 0 8px 18px rgba(255, 90, 95, .2);
    color: #fff;
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .02em;
    padding: 14px 26px;
    text-transform: uppercase;
    transition: background .2s ease, transform .2s ease;
}

#main-body:has(#bredh-cart-custom) .pricing-table-button:hover {
    background: #e94b52;
    color: #fff;
    transform: translateY(-2px);
}

#main-body:has(#bredh-cart-custom) .product-selection-sidebar {
    margin-bottom: 24px;
}

#main-body:has(#bredh-cart-custom) .product-selection-sidebar .panel {
    background: #fff;
    border: 1px solid #e9ece8;
    box-shadow: 0 8px 22px rgba(4, 25, 35, .06);
}

#main-body:has(#bredh-cart-custom) .product-selection-sidebar .panel-heading {
    background: #fff;
    border-bottom: 1px solid #e9ece8;
    color: #102d37;
}

#main-body:has(#bredh-cart-custom) .product-selection-sidebar .list-group-item {
    border-color: #eef1ef;
    color: #536872;
    font-size: 13px;
    padding: 12px 15px;
}

#main-body:has(#bredh-cart-custom) .product-selection-sidebar .list-group-item.active,
#main-body:has(#bredh-cart-custom) .product-selection-sidebar .list-group-item:hover {
    background: #fff3f1;
    color: #c64248;
}

@media (max-width: 991px) {
    #main-body:has(#bredh-cart-custom) #bredh-cart-custom {
        border-radius: 0;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media (max-width: 767px) {
    #main-body:has(#bredh-cart-custom) .main-content {
        padding: 0 0 42px;
    }

    #main-body:has(#bredh-cart-custom) #bredh-cart-custom {
        padding: 45px 16px 54px;
    }

    #main-body:has(#bredh-cart-custom) .tittle-simple-cart-em h5 {
        margin-bottom: 34px;
    }

    #main-body:has(#bredh-cart-custom) #products > .row {
        display: block;
        margin-left: 0;
        margin-right: 0;
    }

    #main-body:has(#bredh-cart-custom) #products > .row > [class*="col-"] {
        display: block;
        padding-left: 0;
        padding-right: 0;
    }

    #main-body:has(#bredh-cart-custom) .bredh-orderform-template {
        margin-bottom: 20px;
    }
}

/* Homepage-only visual direction based on the supplied reference.
   The :has(#home-banner) scope keeps these menu and hero changes on index.php. */
body:has(#home-banner) {
    background: var(--tf-cream, #fbfaf6);
}

body:has(#home-banner) #header {
    background: rgba(251, 250, 246, .98);
    border-bottom: 0;
    box-shadow: none;
}

body:has(#home-banner) #header .top-nav > li > a {
    color: #42545c;
}

body:has(#home-banner) #header .top-nav > li > a:hover {
    color: var(--tf-teal, #157f80);
}

body:has(#home-banner) #header .primary-action .btn,
body:has(#home-banner) #header .btn-primary {
    background: var(--tf-teal, #157f80);
    border-radius: 5px;
    box-shadow: none;
}

body:has(#home-banner) #header .primary-action .btn:hover,
body:has(#home-banner) #header .btn-primary:hover {
    background: #0c696a;
}

body:has(#home-banner) #main-menu,
body:has(#home-banner) #nav,
body:has(#home-banner) .navbar-main {
    background: var(--tf-cream, #fbfaf6);
    border: 0;
}

body:has(#home-banner) .navbar-main {
    border-bottom: 1px solid #ebe9e2;
}

body:has(#home-banner) .navbar-main .navbar-nav > li > a,
body:has(#home-banner) .navbar-main .navbar-brand {
    color: #102d37;
    font-weight: 600;
}

body:has(#home-banner) .navbar-main .navbar-nav > li > a {
    padding: 15px 16px;
}

body:has(#home-banner) .navbar-main .navbar-nav > li > a:hover,
body:has(#home-banner) .navbar-main .navbar-nav > .open > a,
body:has(#home-banner) .navbar-main .navbar-nav > .active > a {
    background: transparent;
    color: var(--tf-teal, #157f80);
}

body:has(#home-banner) .navbar-main .dropdown-menu {
    background: #fff;
    border: 1px solid #e7e9e5;
    border-radius: 7px;
    box-shadow: 0 15px 32px rgba(16, 45, 55, .14);
    margin-top: 3px;
}

body:has(#home-banner) .navbar-main .dropdown-menu > li > a {
    color: #42545c;
    padding: 10px 14px;
}

body:has(#home-banner) .navbar-main .dropdown-menu > li > a:hover {
    background: #fff3f1;
    color: #c64248;
}

body:has(#home-banner) #home-banner {
    background:
        radial-gradient(circle at 13% 50%, rgba(21, 127, 128, .12), transparent 19%),
        radial-gradient(circle at 87% 42%, rgba(255, 90, 95, .12), transparent 19%),
        var(--tf-cream, #fbfaf6);
    min-height: 340px;
    padding: 96px 0 86px;
}

body:has(#home-banner) #home-banner::before,
body:has(#home-banner) #home-banner::after {
    border: 1px solid rgba(21, 127, 128, .25);
    border-radius: 28px;
    content: "";
    height: 170px;
    opacity: .72;
    pointer-events: none;
    position: absolute;
    top: 84px;
    transform: rotate(-8deg);
    width: 205px;
}

body:has(#home-banner) #home-banner::before {
    background: linear-gradient(145deg, rgba(21, 127, 128, .18), rgba(21, 127, 128, .02));
    left: 7%;
}

body:has(#home-banner) #home-banner::after {
    background: linear-gradient(145deg, rgba(255, 90, 95, .18), rgba(255, 90, 95, .02));
    right: 7%;
    transform: rotate(8deg);
}

body:has(#home-banner) #home-banner h2 {
    color: #102d37;
    font-size: clamp(32px, 4.6vw, 58px);
    font-weight: 600;
    letter-spacing: -.04em;
    line-height: 1.1;
    margin: 0 auto;
    max-width: 760px;
    text-shadow: none;
}

body:has(#home-banner) .home-shortcuts {
    background: linear-gradient(100deg, #157f80, #18aeba);
    box-shadow: none;
}

body:has(#home-banner) .home-shortcuts li {
    border-left-color: rgba(255, 255, 255, .25);
}

body:has(#home-banner) #main-body {
    background: var(--tf-cream, #fbfaf6);
    padding-top: 58px;
}

body:has(#home-banner) #main-body .main-content {
    background: #fff;
    border-color: #ebe9e2;
    box-shadow: 0 16px 38px rgba(16, 45, 55, .08);
}

body:has(#home-banner) #footer {
    background: #071e2a;
}

@media (max-width: 767px) {
    body:has(#home-banner) #home-banner {
        min-height: 250px;
        padding: 75px 18px 66px;
    }

    body:has(#home-banner) #home-banner::before,
    body:has(#home-banner) #home-banner::after {
        height: 118px;
        top: 79px;
        width: 105px;
    }

    body:has(#home-banner) #home-banner::before {
        left: -32px;
    }

    body:has(#home-banner) #home-banner::after {
        right: -32px;
    }
}

/* Correção do botão do carrinho no cabeçalho público */
#header .top-nav > li.primary-action {
    background: transparent !important;
    margin: 0 8px !important;
    padding: 0 !important;
}

#header .top-nav > li.primary-action > a.btn {
    align-items: center !important;
    background: var(--tf-teal, #157f80) !important;
    border: 0 !important;
    border-radius: 7px !important;
    box-shadow: 0 8px 18px rgba(21, 127, 128, .18) !important;
    color: #fff !important;
    display: inline-flex !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    height: 42px !important;
    justify-content: center !important;
    line-height: 1 !important;
    min-width: 178px !important;
    padding: 0 20px !important;
    text-shadow: none !important;
    white-space: nowrap !important;
}

#header .top-nav > li.primary-action > a.btn:hover,
#header .top-nav > li.primary-action > a.btn:focus {
    background: #0c696a !important;
    box-shadow: 0 10px 22px rgba(21, 127, 128, .27) !important;
    color: #fff !important;
    transform: translateY(-1px);
}

#header .top-nav > li.primary-action > a.btn {
    gap: 8px;
}

#header .top-nav > li.primary-action > a.btn .header-cart-icon {
    font-size: 13px;
    position: relative;
    transition: transform .25s ease;
}

#header .top-nav > li.primary-action > a.btn:hover .header-cart-icon,
#header .top-nav > li.primary-action > a.btn:focus .header-cart-icon {
    transform: translateY(-1px) rotate(-5deg);
}

@media (max-width: 767px) {
    #header .top-nav > li.primary-action {
        margin: 0 4px !important;
    }

    #header .top-nav > li.primary-action > a.btn {
        font-size: 11px !important;
        height: 38px !important;
        min-width: 0 !important;
        padding: 0 12px !important;
    }
}

/* Fundo azul em largura total nas páginas públicas de serviços */
body:has(#bredh-cart-custom) {
    background: #041923;
}

#main-body:has(#bredh-cart-custom) {
    background: linear-gradient(135deg, #041923 0%, #072d3e 58%, #075d6e 100%);
}

#main-body:has(#bredh-cart-custom) .main-content {
    background: transparent;
}

/* Ícone premium nos botões de contratação */
#main-body:has(#bredh-cart-custom) .pricing-table-button {
    align-items: center;
    display: inline-flex;
    gap: 9px;
    justify-content: center;
    overflow: hidden;
    position: relative;
    transition: transform .28s ease, box-shadow .28s ease, background .28s ease;
}

#main-body:has(#bredh-cart-custom) .pricing-table-button::before {
    background: linear-gradient(110deg, transparent 0%, rgba(255, 255, 255, .08) 45%, rgba(255, 255, 255, .36) 50%, rgba(255, 255, 255, .08) 55%, transparent 100%);
    content: "";
    inset: 0 auto 0 -75%;
    pointer-events: none;
    position: absolute;
    transform: skewX(-18deg);
    transition: left .58s ease;
    width: 58%;
}

#main-body:has(#bredh-cart-custom) .pricing-table-button:hover,
#main-body:has(#bredh-cart-custom) .pricing-table-button:focus {
    box-shadow: 0 14px 26px rgba(255, 90, 95, .32);
    transform: translateY(-3px);
}

#main-body:has(#bredh-cart-custom) .pricing-table-button:hover::before,
#main-body:has(#bredh-cart-custom) .pricing-table-button:focus::before {
    left: 125%;
}

#main-body:has(#bredh-cart-custom) .pricing-table-button .pricing-button-icon {
    position: relative;
    transition: transform .28s ease;
}

#main-body:has(#bredh-cart-custom) .pricing-table-button:hover .pricing-button-icon,
#main-body:has(#bredh-cart-custom) .pricing-table-button:focus .pricing-button-icon {
    transform: translateX(4px);
}

/* Destaca somente o valor do preço */
#main-body:has(#bredh-cart-custom) .tha_price i {
    font-weight: 700;
}

/* Padroniza os valores de hospedagem com o destaque dos sites */
#main-body:has(#bredh-cart-custom) .tha_price > span {
    color: #102d37;
    display: inline-block;
    font-size: 27px;
    font-weight: 700;
    line-height: 1.15;
    margin-right: 5px;
}

/* Aumenta discretamente a logomarca no cabeçalho público */
#header .logo {
    max-height: 62px;
    padding: 6px 0;
}

#header .logo img {
    height: 58px;
    width: auto;
}

@media (max-width: 767px) {
    #header .logo img {
        height: 52px;
    }
}

/* Estado ativo do menu lateral na paleta do tema */
.sidebar-secondary .list-group-item.active,
.sidebar-secondary .list-group-item.active:hover {
    color: #55c4c3 !important;
}

.sidebar-secondary .list-group-item.active i {
    color: inherit !important;
}
