/* ═══════════════════════════════════════════════════════════
   SOLTIA V2 — Corporate Theme
   Primary: #ff6c2c | Dark: #2c3338 | Accent: #ff8f00
   Mobile-first, Inter font, modern UI
   ═══════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

:root {
    --s-primary: #ff6c2c;
    --s-primary-hover: #e55a1b;
    --s-primary-light: #fff1eb;
    --s-primary-glow: rgba(255,108,44,.2);
    --s-accent: #ff8f00;
    --s-dark: #2c3338;
    --s-darker: #1e2327;
    --s-text: #2d3436;
    --s-text-light: #636e72;
    --s-bg: #f0f2f5;
    --s-white: #ffffff;
    --s-border: #e1e5ea;
    --s-success: #00b894;
    --s-danger: #e74c3c;
    --s-warning: #fdcb6e;
    --s-info: #0984e3;
    --s-radius: 12px;
    --s-radius-sm: 8px;
    --s-shadow: 0 1px 3px rgba(0,0,0,.06), 0 4px 16px rgba(0,0,0,.04);
    --s-shadow-hover: 0 4px 12px rgba(0,0,0,.08), 0 8px 24px rgba(0,0,0,.06);
    --s-transition: all .25s cubic-bezier(.4,0,.2,1);
}

/* ─── Global Reset ────────────────────────────── */
body, p, h1, h2, h3, h4, h5, h6, a, span:not(.fas):not(.far):not(.fab):not(.fa), div, li, td, th, input, select, textarea, button, label { font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important; }
body { background: var(--s-bg); color: var(--s-text); -webkit-font-smoothing: antialiased; }
a { color: var(--s-primary); }
a:hover { color: var(--s-primary-hover); text-decoration: none; }
h1,h2,h3,h4,h5,h6 { font-weight: 700; color: var(--s-dark); }

/* ─── NAVBAR ──────────────────────────────────── */
.navbar {
    background: linear-gradient(135deg, var(--s-dark) 0%, #3d444a 100%) !important;
    padding: 0 20px !important;
    min-height: 60px;
    box-shadow: 0 2px 20px rgba(0,0,0,.2);
    position: sticky;
    top: 0;
    z-index: 1030;
}
.navbar-brand img { max-height: 34px; filter: brightness(1.1); }
.navbar .nav-link {
    color: rgba(255,255,255,.8) !important;
    font-weight: 500;
    font-size: 14px;
    padding: 18px 14px !important;
    transition: var(--s-transition);
    border-bottom: 3px solid transparent;
}
.navbar .nav-link:hover {
    color: #fff !important;
    border-bottom-color: var(--s-primary);
}
.navbar .nav-link i { color: var(--s-primary); }
.navbar .dropdown-menu {
    border: none;
    border-radius: var(--s-radius);
    box-shadow: var(--s-shadow-hover);
    padding: 8px;
    margin-top: 0;
}
.navbar .dropdown-item {
    border-radius: var(--s-radius-sm);
    padding: 8px 14px;
    font-size: 13px;
    font-weight: 500;
}
.navbar .dropdown-item:hover { background: var(--s-primary-light); color: var(--s-primary); }
.navbar .dropdown-item i { width: 20px; color: var(--s-primary); }

/* Mobile navbar */
@media (max-width: 991px) {
    .navbar { padding: 8px 12px !important; }
    .navbar .nav-link { padding: 10px 14px !important; border-bottom: none; }
    .navbar .navbar-collapse { 
        background: var(--s-darker);
        border-radius: 0 0 var(--s-radius) var(--s-radius);
        padding: 10px;
        margin: 8px -12px 0;
    }
}

/* ─── BUTTONS ─────────────────────────────────── */
.btn {
    border-radius: var(--s-radius-sm) !important;
    font-weight: 600;
    font-size: 14px;
    padding: 10px 20px;
    transition: var(--s-transition);
    border: none;
}

.btn-primary, input[type="submit"].btn-primary {
    background: var(--s-primary) !important;
    color: #fff !important;
    box-shadow: 0 4px 14px var(--s-primary-glow);
}
.btn-primary:hover, input[type="submit"].btn-primary:hover {
    background: var(--s-primary-hover) !important;
    box-shadow: 0 6px 20px rgba(255,108,44,.35);
    transform: translateY(-1px);
}
.btn-primary:active { transform: translateY(0); }

.btn-success {
    background: var(--s-success) !important;
    box-shadow: 0 4px 14px rgba(0,184,148,.2);
}
.btn-success:hover { background: #00a884 !important; transform: translateY(-1px); }

.btn-danger { background: var(--s-danger) !important; }
.btn-default, .btn-secondary, .btn-outline-secondary {
    background: var(--s-white);
    border: 1.5px solid var(--s-border) !important;
    color: var(--s-text);
}
.btn-default:hover, .btn-secondary:hover { background: #f8f9fa; border-color: #ccc !important; }

.btn-sm { padding: 6px 14px; font-size: 12px; }
.btn-xs { padding: 4px 10px; font-size: 11px; }

/* ─── CARDS ───────────────────────────────────── */
.card, .panel, .well {
    border: none !important;
    border-radius: var(--s-radius) !important;
    box-shadow: var(--s-shadow);
    background: var(--s-white);
    overflow: hidden;
    transition: var(--s-transition);
}
.card:hover { box-shadow: var(--s-shadow-hover); }

.card-header, .panel-heading {
    background: var(--s-white) !important;
    border-bottom: 1px solid var(--s-bg) !important;
    padding: 16px 20px;
    font-weight: 600;
    font-size: 15px;
}
.card-body, .panel-body { padding: 20px; }
.card-footer, .panel-footer {
    background: #fafbfc !important;
    border-top: 1px solid var(--s-bg) !important;
    padding: 14px 20px;
}

/* ─── LOGIN PAGE ──────────────────────────────── */
.login-form .card, .card.mw-540 {
    border-radius: 20px !important;
    box-shadow: 0 8px 40px rgba(0,0,0,.1);
    overflow: visible;
}
.login-form .card::before, .card.mw-540::before {
    content: '';
    display: block;
    height: 4px;
    background: linear-gradient(90deg, var(--s-primary), var(--s-accent));
    border-radius: 20px 20px 0 0;
}
.login-form .card-body { padding: 40px !important; }
.login-form h6.h3, .login-form .h3 {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: var(--s-dark);
}
.login-form .btn-primary {
    width: 100%;
    padding: 14px !important;
    font-size: 16px !important;
    border-radius: var(--s-radius) !important;
    margin-top: 8px;
}
.login-form .input-group-text {
    background: var(--s-primary-light);
    border-color: var(--s-border);
    color: var(--s-primary);
}
.login-form .card-footer {
    text-align: center;
    background: #fafbfc !important;
}
.login-form .card-footer a { color: var(--s-primary); font-weight: 600; }

/* ─── SIDEBAR (twenty-one) ────────────────────── */
.sidebar-menu, #sidebar, .main-menu {
    background: var(--s-darker) !important;
}
.sidebar-menu .nav-link, .sidebar-menu a {
    color: rgba(255,255,255,.7) !important;
    padding: 11px 16px !important;
    border-radius: var(--s-radius-sm);
    margin: 4px 10px;
    font-size: 13px;
    font-weight: 500;
    transition: var(--s-transition);
}
.sidebar-menu .nav-link:hover, .sidebar-menu a:hover {
    background: rgba(255,108,44,.12) !important;
    color: #fff !important;
}
.sidebar-menu .nav-link.active, .sidebar-menu a.active,
.sidebar-menu .nav-link.current, .sidebar-menu a.current {
    background: var(--s-primary) !important;
    color: #fff !important;
    box-shadow: 0 4px 12px var(--s-primary-glow);
    border-radius: var(--s-radius-sm);
    margin-bottom: 4px !important;
    font-weight: 600;
}
.sidebar-menu .nav-link i, .sidebar-menu a i {
    width: 24px;
    text-align: center;
    margin-right: 8px;
    font-size: 14px;
}

/* ─── TABLES ──────────────────────────────────── */
.table { border-collapse: separate; border-spacing: 0; }
.table thead th {
    background: var(--s-bg);
    border: none !important;
    font-weight: 700;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .8px;
    color: var(--s-text-light);
    padding: 14px 16px;
}
.table thead th:first-child { border-radius: var(--s-radius-sm) 0 0 0; }
.table thead th:last-child { border-radius: 0 var(--s-radius-sm) 0 0; }
.table tbody td {
    padding: 14px 16px;
    vertical-align: middle;
    border-color: var(--s-border);
    font-size: 14px;
}
.table tbody tr { transition: var(--s-transition); }
.table tbody tr:hover { background: var(--s-primary-light); }
.table-striped tbody tr:nth-of-type(odd) { background: rgba(0,0,0,.015); }
.table-striped tbody tr:nth-of-type(odd):hover { background: var(--s-primary-light); }

/* Mobile tables */
@media (max-width: 768px) {
    .table-responsive { border: none; }
    .table thead { display: none; }
    .table tbody tr {
        display: block;
        margin-bottom: 12px;
        background: var(--s-white);
        border-radius: var(--s-radius-sm);
        box-shadow: var(--s-shadow);
        padding: 4px 0;
    }
    .table tbody td {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px 16px;
        border: none;
        border-bottom: 1px solid var(--s-bg);
        font-size: 13px;
    }
    .table tbody td:last-child { border-bottom: none; }
    .table tbody td::before {
        content: attr(data-label);
        font-weight: 600;
        color: var(--s-text-light);
        font-size: 11px;
        text-transform: uppercase;
        letter-spacing: .5px;
        flex-shrink: 0;
        margin-right: 12px;
    }
}

/* ─── FORMS ───────────────────────────────────── */
.form-control, .form-select, select.form-control {
    border-radius: var(--s-radius-sm) !important;
    border: 1.5px solid var(--s-border) !important;
    padding: 12px 14px;
    font-size: 14px;
    height: 46px;
    transition: var(--s-transition);
    background: var(--s-white);
}
textarea.form-control { height: auto; min-height: 80px; }
select.form-control, .form-select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23636e72' d='M6 8L1 3h10z'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; padding-right: 36px; }
.input-group .form-control { height: 46px; }
.input-group-text { height: 46px; display: flex; align-items: center; }
.form-control:focus, .form-select:focus {
    border-color: var(--s-primary) !important;
    box-shadow: 0 0 0 4px var(--s-primary-glow) !important;
}
.form-control-label, .control-label, label {
    font-weight: 600;
    font-size: 13px;
    color: var(--s-text);
    margin-bottom: 6px;
}
.input-group-text {
    border-radius: var(--s-radius-sm) 0 0 var(--s-radius-sm) !important;
    border-color: var(--s-border);
    background: #f8f9fa;
}

/* ─── ALERTS ──────────────────────────────────── */
.alert {
    border: none !important;
    border-radius: var(--s-radius) !important;
    padding: 16px 20px;
    font-size: 14px;
    font-weight: 500;
}
.alert-success { background: #d5f5e3; color: #1e8449; border-left: 4px solid var(--s-success) !important; }
.alert-danger, .alert-error { background: #fadbd8; color: #922b21; border-left: 4px solid var(--s-danger) !important; }
.alert-warning { background: #fef9e7; color: #7d6608; border-left: 4px solid var(--s-warning) !important; }
.alert-info { background: #d6eaf8; color: #1a5276; border-left: 4px solid var(--s-info) !important; }

/* ─── BADGES & STATUS ─────────────────────────── */
.badge, .label {
    border-radius: 6px;
    font-weight: 700;
    padding: 5px 12px;
    font-size: 11px;
    letter-spacing: .3px;
    text-transform: uppercase;
}
.badge-success, .bg-success, .label-success { background: var(--s-success) !important; }
.badge-danger, .bg-danger, .label-danger { background: var(--s-danger) !important; }
.badge-warning, .bg-warning, .label-warning { background: var(--s-warning) !important; color: #333 !important; }
.badge-primary, .bg-primary, .label-primary { background: var(--s-primary) !important; }
.badge-info, .bg-info, .label-info { background: var(--s-info) !important; }

.status-active, .label-active { background: var(--s-success); color: #fff; padding: 4px 14px; border-radius: 20px; font-size: 12px; font-weight: 600; }
.status-suspended { background: var(--s-danger); color: #fff; padding: 4px 14px; border-radius: 20px; }
.status-pending { background: var(--s-warning); color: #333; padding: 4px 14px; border-radius: 20px; }

/* ─── PAGINATION ──────────────────────────────── */
.pagination { gap: 4px; }
.pagination .page-link {
    border-radius: var(--s-radius-sm) !important;
    border: 1px solid var(--s-border);
    color: var(--s-text);
    font-weight: 500;
    padding: 8px 14px;
}
.pagination .page-item.active .page-link {
    background: var(--s-primary);
    border-color: var(--s-primary);
    box-shadow: 0 2px 8px var(--s-primary-glow);
}

/* ─── MODALS ──────────────────────────────────── */
.modal-content {
    border: none;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0,0,0,.2);
}
.modal-header { border-bottom: 1px solid var(--s-bg); padding: 20px 24px; }
.modal-body { padding: 24px; }
.modal-footer { border-top: 1px solid var(--s-bg); padding: 16px 24px; }

/* ─── TABS ────────────────────────────────────── */
.nav-tabs { border-bottom: 2px solid var(--s-bg); }
.nav-tabs .nav-link {
    border: none !important;
    color: var(--s-text-light);
    font-weight: 600;
    padding: 12px 20px;
    border-bottom: 3px solid transparent !important;
    transition: var(--s-transition);
}
.nav-tabs .nav-link:hover { color: var(--s-primary); border-bottom-color: rgba(255,108,44,.3) !important; }
.nav-tabs .nav-link.active {
    color: var(--s-primary) !important;
    border-bottom-color: var(--s-primary) !important;
    background: transparent !important;
}

/* ─── DOMAIN DETAILS ──────────────────────────── */
.domain-details .card { margin-bottom: 16px; }
.domain-overview-item {
    display: flex;
    justify-content: space-between;
    padding: 12px 0;
    border-bottom: 1px solid var(--s-bg);
}
.domain-overview-item:last-child { border-bottom: none; }

/* ─── TICKET DEPARTMENTS (submit page) ────────── */
.dept-list .card {
    cursor: pointer;
    transition: var(--s-transition);
    border: 2px solid transparent !important;
}
.dept-list .card:hover {
    border-color: var(--s-primary) !important;
    transform: translateY(-3px);
    box-shadow: var(--s-shadow-hover);
}
.dept-list .card img { max-width: 48px; margin-bottom: 12px; }

/* ─── DASHBOARD ───────────────────────────────── */
.home-shortcuts .card, .shortcut-card {
    text-align: center;
    padding: 24px 16px;
    transition: var(--s-transition);
    border: 2px solid transparent !important;
}
.home-shortcuts .card:hover, .shortcut-card:hover {
    border-color: var(--s-primary) !important;
    transform: translateY(-4px);
    box-shadow: var(--s-shadow-hover);
}
.home-shortcuts .card i, .shortcut-card i {
    font-size: 32px;
    color: var(--s-primary);
    margin-bottom: 12px;
    display: block;
}

/* ─── FOOTER ──────────────────────────────────── */
footer {
    background: var(--s-dark) !important;
    color: rgba(255,255,255,.5);
    font-size: 13px;
}
footer a { color: rgba(255,255,255,.7); }
footer a:hover { color: var(--s-primary); }

/* ─── MISC OVERRIDES ──────────────────────────── */
.breadcrumb { background: transparent; padding: 0; font-size: 13px; }
.breadcrumb-item a { color: var(--s-primary); }
.text-primary { color: var(--s-primary) !important; }
.bg-primary { background: var(--s-primary) !important; }

/* Content wrapper spacing */
#main-content, .main-content, #content-padded { padding: 0; }

/* Orange accent line on page headers */
h1, .page-title { position: relative; }
.page-title::after {
    content: '';
    display: block;
    width: 40px;
    height: 3px;
    background: var(--s-primary);
    margin-top: 8px;
    border-radius: 2px;
}

/* cPanel login buttons */
.btn-cpanel-login {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    border-radius: var(--s-radius-sm);
    font-size: 13px;
    font-weight: 600;
    color: #fff !important;
    background: linear-gradient(135deg, var(--s-primary) 0%, var(--s-accent) 100%);
    box-shadow: 0 3px 10px var(--s-primary-glow);
    text-decoration: none !important;
    transition: var(--s-transition);
}
.btn-cpanel-login:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(255,108,44,.35);
}
.btn-cpanel-whm {
    background: linear-gradient(135deg, #1b3a5c 0%, #2c5f8a 100%);
    box-shadow: 0 3px 10px rgba(27,58,92,.25);
}

/* ─── SCROLLBAR ───────────────────────────────── */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #ccc; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--s-primary); }

/* ─── ANIMATIONS ──────────────────────────────── */
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
.card, .alert { animation: fadeInUp .3s ease; }

/* ─── MOBILE RESPONSIVE ───────────────────────── */
@media (max-width: 576px) {
    .card-body, .panel-body { padding: 14px; }
    .card-header { padding: 12px 14px; font-size: 14px; }
    h1 { font-size: 20px; }
    h2 { font-size: 18px; }
    h3 { font-size: 16px; }
    .btn { padding: 10px 16px; font-size: 13px; }
    .btn-sm { padding: 6px 12px; }
    .login-form .card-body { padding: 24px !important; }
    .login-form h6.h3 { font-size: 20px !important; }
    footer span.d-none { display: none !important; }
}

@media (max-width: 768px) {
    .container-fluid { padding: 12px !important; }
    .row > [class*="col-"] { margin-bottom: 12px; }
    .navbar-brand img { max-height: 28px; }
    .nav-tabs { overflow-x: auto; flex-wrap: nowrap; -webkit-overflow-scrolling: touch; }
    .nav-tabs .nav-link { white-space: nowrap; padding: 10px 14px; font-size: 13px; }
}

@media (max-width: 992px) {
    .container-fluid { max-width: 100% !important; }
}

/* ─── DARK ACCENTS ────────────────────────────── */
.text-orange, .highlight { color: var(--s-primary); }
.bg-orange { background: var(--s-primary); color: #fff; }
.border-orange { border-color: var(--s-primary) !important; }

/* Input hover effects */
.form-control:hover { border-color: #ccc !important; }
.card .btn-primary { position: relative; overflow: hidden; }

/* ─── LEFT SIDEBAR ─────────────────────────────── */
.sb-link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 14px;
    margin: 1px 0;
    border-radius: 8px;
    color: rgba(255,255,255,.65) !important;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none !important;
    transition: all .2s;
}
.sb-link:hover {
    background: rgba(255,108,44,.12);
    color: #fff !important;
    padding-left: 18px;
}
.sb-active, .sb-active:hover {
    background: #ff6c2c !important;
    color: #fff !important;
    font-weight: 600;
    box-shadow: 0 2px 8px rgba(255,108,44,.3);
}

/* Sidebar mobile */
@media (max-width: 991px) {
    #soltia-sidebar {
        position: fixed;
        left: -260px;
        top: 56px;
        bottom: 0;
        width: 250px !important;
        z-index: 1020;
        transition: left .3s ease;
        box-shadow: 4px 0 20px rgba(0,0,0,.3);
    }
    #soltia-sidebar.mobile-open {
        left: 0;
    }
}

/* intl-tel-input phone field fix */
.iti {
    width: 100% !important;
    display: block !important;
}
.iti .iti__flag-container {
    height: 100%;
}
.iti .iti__selected-flag {
    border-radius: 8px 0 0 8px;
    background: #f7f8fa;
    border-right: 1px solid #e0e0e0;
    padding: 0 12px 0 14px;
    height: 100%;
}
.iti .iti__selected-flag:hover,
.iti .iti__selected-flag:focus {
    background: #eef0f3;
}
.iti input[type="tel"],
.iti input[type="tel"].form-control,
.iti input[type="tel"].field {
    padding: 10px 14px 10px 80px !important;
    width: 100% !important;
    height: 44px !important;
    box-sizing: border-box !important;
    border-radius: 0 10px 10px 0 !important;
    border: 1.5px solid #e1e5ea !important;
    font-size: 14px !important;
    outline: none !important;
    transition: border-color .2s, box-shadow .2s !important;
}
.iti input[type="tel"]:focus,
.iti input[type="tel"].form-control:focus,
.iti input[type="tel"].field:focus {
    border-color: #ff6c2c !important;
    box-shadow: 0 0 0 3px rgba(255,108,44,.12) !important;
}
.iti--separate-dial-code input[type="tel"],
.iti--separate-dial-code input[type="tel"].form-control,
.iti--separate-dial-code input[type="tel"].field {
    padding-left: 100px !important;
}
.iti--allow-dropdown input[type="tel"],
.iti--allow-dropdown input[type="tel"].field {
    padding-left: 80px !important;
}
.iti__country-list {
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0,0,0,.15);
    border: 1px solid #e0e0e0;
    max-height: 250px;
    z-index: 1060;
}
.iti__country-list .iti__country {
    padding: 8px 12px;
}
.iti__country-list .iti__country:hover,
.iti__country-list .iti__country.iti__highlight {
    background: #f0f4ff;
}

/* ═══════════════════════════════════════════════════════════
   ORDER FORM — Product Configure / Domain Selection
   Fix layout issues with soltia_cart template
   ═══════════════════════════════════════════════════════════ */

/* Cart wrapper */
#order-standard_cart {
    background: var(--s-white);
    border-radius: var(--s-radius);
    box-shadow: var(--s-shadow);
    overflow: hidden;
    margin-top: 0;
}

/* Header bar */
.cart-head-bar {
    background: var(--s-white) !important;
    padding: 24px 28px !important;
    border-bottom: 1px solid var(--s-border) !important;
    display: flex;
    align-items: center;
}
.cart-head-bar h1 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--s-dark) !important;
    margin: 0 !important;
    display: flex;
    align-items: center;
    gap: 12px;
}
.cart-head-bar h1 i {
    font-size: 24px !important;
    color: var(--s-primary) !important;
    padding: 0 !important;
}

/* Domain selection boxes (Registrar / Transferir / Propio) */
.domain-selection-options-trigger.row {
    display: flex !important;
    flex-wrap: wrap;
    gap: 16px;
    padding: 24px 28px !important;
    margin: 0 !important;
}
.domain-selection-options-trigger .custpm_box {
    flex: 1 1 0;
    min-width: 180px;
    max-width: none !important;
    padding: 0 !important;
}
.domain-selection-options-trigger .card-info-box {
    border-radius: var(--s-radius) !important;
    border: 2px solid var(--s-border) !important;
    transition: var(--s-transition);
    cursor: pointer;
    height: 100%;
    background: var(--s-white);
}
.domain-selection-options-trigger .card-info-box:hover {
    border-color: var(--s-primary) !important;
    box-shadow: 0 4px 16px var(--s-primary-glow);
}
.domain-selection-options-trigger .content {
    padding: 20px 16px !important;
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 80px;
}
.domain-selection-options-trigger .content.active {
    border-color: var(--s-primary) !important;
    background: var(--s-primary-light) !important;
    border-radius: var(--s-radius) !important;
}
.domain-selection-options-trigger .card-info-box:has(.content.active) {
    border-color: var(--s-primary) !important;
    background: var(--s-primary-light);
    box-shadow: 0 0 0 3px var(--s-primary-glow);
}
.domain-selection-options-trigger .icone {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.domain-selection-options-trigger .icone img {
    max-width: 36px;
    max-height: 36px;
}
.domain-selection-options-trigger .text {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--s-dark) !important;
    line-height: 1.3;
}

/* Domain search area */
.domain-checker-bg-main-container {
    padding: 28px !important;
    background: var(--s-bg) !important;
}
.domain-checker-bg {
    padding: 0 !important;
}
h1.titel-page {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--s-dark) !important;
    margin-bottom: 16px !important;
}

/* Domain search input + TLD dropdown + button */
.domain-search-advance {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 0;
}
.domain-search-advance .input-group.form-box {
    display: flex !important;
    flex: 1;
    border-radius: var(--s-radius) !important;
    overflow: hidden;
    border: 2px solid var(--s-border);
    background: var(--s-white);
    transition: var(--s-transition);
}
.domain-search-advance .input-group.form-box:focus-within {
    border-color: var(--s-primary);
    box-shadow: 0 0 0 4px var(--s-primary-glow);
}
.domain-search-advance .form-control {
    border: none !important;
    box-shadow: none !important;
    padding: 14px 18px !important;
    font-size: 16px !important;
    height: 52px !important;
    flex: 1;
    min-width: 0;
}
.domain-search-advance .form-control:focus {
    border: none !important;
    box-shadow: none !important;
}
.domain-search-advance .input-group-btn.search-panel {
    display: flex;
    align-items: center;
    width: auto !important;
}
.domain-search-advance select.form-control,
.domain-search-advance #registertld,
.domain-search-advance #transfertld {
    border: none !important;
    border-left: 1px solid var(--s-border) !important;
    border-radius: 0 !important;
    padding: 0 14px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: var(--s-dark) !important;
    background: #f8f9fa !important;
    height: 52px !important;
    width: auto !important;
    min-width: 90px;
    appearance: auto !important;
    background-image: none !important;
    cursor: pointer;
}

/* Search button */
.domain-search-advance button,
button#btnCheckAvailability {
    background: var(--s-primary) !important;
    color: #fff !important;
    border: none !important;
    padding: 14px 24px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    border-radius: 0 var(--s-radius) var(--s-radius) 0 !important;
    height: 52px !important;
    white-space: nowrap;
    cursor: pointer;
    transition: var(--s-transition);
}
.domain-search-advance button:hover,
button#btnCheckAvailability:hover {
    background: var(--s-primary-hover) !important;
}

/* Order summary sidebar */
.order-summary, .right-section-checkout-page {
    background: var(--s-white);
    border-radius: var(--s-radius);
    box-shadow: var(--s-shadow);
    padding: 20px;
}

/* Cart body */
.cart-body {
    padding: 20px 28px;
}

/* Footer */
.btn-footer {
    padding: 20px 28px;
    background: #fafbfc;
    border-top: 1px solid var(--s-border);
}
.btn-footer .btn {
    min-width: 140px;
}

/* ─── RESPONSIVE overrides ─────────────────── */
@media (max-width: 991px) {
    .domain-selection-options-trigger.row {
        padding: 16px !important;
        gap: 10px;
    }
    .domain-selection-options-trigger .custpm_box {
        min-width: calc(50% - 10px);
        flex: 0 0 calc(50% - 10px);
    }
    .domain-checker-bg-main-container {
        padding: 16px !important;
    }
    .cart-body {
        padding: 16px;
    }
}
@media (max-width: 576px) {
    .domain-selection-options-trigger .custpm_box {
        min-width: 100%;
        flex: 0 0 100%;
    }
    .domain-search-advance {
        flex-wrap: wrap !important;
    }
    .domain-search-advance .input-group.form-box {
        width: 100%;
        border-radius: var(--s-radius) !important;
        margin-bottom: 10px;
    }
    .domain-search-advance button,
    button#btnCheckAvailability {
        width: 100% !important;
        border-radius: var(--s-radius) !important;
    }
    .cart-head-bar {
        padding: 16px !important;
    }
    .cart-head-bar h1 {
        font-size: 18px !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   CONFIGURE PRODUCT PAGE — Steps, Buttons, Layout
   ═══════════════════════════════════════════════════════════ */

/* Steps progress bar */
.cart-head-bar.configure-cart-head {
    background: var(--s-white) !important;
    padding: 24px 28px !important;
    border-bottom: 1px solid var(--s-border) !important;
}
.cart-head-bar.configure-cart-head h1 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--s-dark) !important;
}
.cart-head-bar.configure-cart-head h1 i {
    color: var(--s-primary) !important;
}
.cart-head-bar.configure-cart-head p {
    color: var(--s-text-light) !important;
    font-size: 14px !important;
    padding-left: 0 !important;
    margin-top: 4px !important;
}

/* Step indicators */
ul.cart-product-step {
    display: flex !important;
    align-items: flex-start;
    gap: 0;
    margin: 0 !important;
    padding: 0 !important;
}
li.step-item {
    text-align: center;
    position: relative;
}
li.step-item a {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--s-text-light) !important;
    padding: 34px 8px 0 !important;
}
li.step-item.active a {
    color: var(--s-dark) !important;
}

/* Step circles */
.step-item a::before {
    background: var(--s-success) !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    box-shadow: 0 2px 8px rgba(0,184,148,.3);
}
.step-item.active a::before {
    background: var(--s-primary) !important;
    box-shadow: 0 2px 8px var(--s-primary-glow) !important;
}
.step-item.active ~ .step-item a::before {
    background: #ddd !important;
    box-shadow: none !important;
}

/* Step connector line */
.step-item:not(:first-child)::before {
    background: var(--s-primary) !important;
    height: 4px !important;
    top: 11px !important;
    border-radius: 2px;
}
.step-item.active ~ .step-item::before {
    background: #ddd !important;
}

/* Step number/check icons */
.stp-cot {
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 32px !important;
    color: #fff !important;
    z-index: 5 !important;
}
.stp-cot.check {
    left: 50% !important;
    margin-left: -6px !important;
    top: -3px !important;
}
.stp-cot.check i.fas.fa-check::before {
    content: "✓" !important;
    font-family: 'Inter', sans-serif !important;
    font-style: normal;
}
span.stp-cot.second-step {
    left: 50% !important;
    margin-left: -4px !important;
    top: -3px !important;
}
span.stp-cot.third-step {
    left: 50% !important;
    margin-left: -4px !important;
    right: auto !important;
    top: -3px !important;
}

/* Product info card */
.product-configure-page .secondary-cart-body {
    background: var(--s-white);
    border-radius: var(--s-radius) !important;
    box-shadow: var(--s-shadow);
    padding: 24px !important;
    margin-bottom: 20px;
}
.product-configure-page .generic_head_content .cart-product-name {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: var(--s-dark) !important;
    padding: 0 !important;
}
/* Hide broken icon next to product title */
.product-configure-page .generic_head_content .cart-product-name i {
    display: none;
}

/* Billing cycle buttons */
.billing-cycle-section ul.selectBillingCycle {
    display: flex !important;
    flex-wrap: wrap;
    gap: 12px !important;
    padding: 0 !important;
    list-style: none !important;
}
.billing-cycle-section ul.selectBillingCycle li {
    flex: 1 1 180px;
    margin: 0 !important;
}
.billing-cycle-section ul.selectBillingCycle li .term-list {
    border: 2px solid var(--s-border) !important;
    border-radius: var(--s-radius) !important;
    padding: 16px 20px !important;
    text-align: center;
    cursor: pointer;
    transition: var(--s-transition);
    background: var(--s-white) !important;
}
.billing-cycle-section ul.selectBillingCycle li .term-list:hover {
    border-color: var(--s-primary) !important;
    box-shadow: 0 4px 12px var(--s-primary-glow);
    border-radius: var(--s-radius-sm);
    margin-bottom: 4px !important;
}
.billing-cycle-section ul.selectBillingCycle li .term-list.active,
.billing-cycle-section ul.selectBillingCycle li.active .term-list,
.billing-cycle-section ul.selectBillingCycle li input:checked + .term-list {
    border-color: var(--s-primary) !important;
    background: var(--s-primary-light) !important;
    box-shadow: 0 0 0 3px var(--s-primary-glow) !important;
}
.billing-cycle-section ul.selectBillingCycle li .term-list strong {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--s-dark) !important;
    display: block;
    margin-bottom: 4px;
}
.billing-cycle-section ul.selectBillingCycle li .term-list span {
    font-size: 14px !important;
    color: var(--s-text-light) !important;
}

/* Order summary sidebar */
.order-summary, .right-section-checkout-page,
.product-configure-page .secondary-cart-sidebar {
    background: var(--s-dark) !important;
    border-radius: var(--s-radius) !important;
    color: #fff !important;
    overflow: hidden;
}
.order-summary .order-summary-header,
.product-configure-page .secondary-cart-sidebar .order {
    background: rgba(255,255,255,.08) !important;
    padding: 16px 20px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #fff !important;
}
.product-configure-page .secondary-cart-sidebar .order-summary {
    padding: 16px 20px !important;
}

/* Help banner */
.product-configure-info-panel,
.alert.alert-info-custom,
.product-configure-page .alert {
    background: #fef9e7 !important;
    border: 1px solid #f9e79f !important;
    border-radius: var(--s-radius) !important;
    padding: 16px 20px !important;
    color: #7d6608 !important;
}
/* Fix broken icon in help banner */
.product-configure-info-panel i.fas::before,
.product-configure-page .alert i.fas::before {
    font-family: 'Font Awesome 5 Free', 'FontAwesome', sans-serif !important;
}

/* ─── CONTINUE BUTTON (main fix) ──────────── */
.btn-footer .wgs_custom-btn,
button#btnCompleteProductConfig,
a.wgs_custom-btn,
.wgs_custom-btn {
    background: linear-gradient(135deg, var(--s-primary) 0%, var(--s-accent) 100%) !important;
    color: #fff !important;
    border: none !important;
    padding: 14px 32px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    border-radius: var(--s-radius) !important;
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    transition: var(--s-transition);
    box-shadow: 0 4px 14px var(--s-primary-glow) !important;
    text-decoration: none !important;
    width: auto !important;
}
.wgs_custom-btn:hover,
button#btnCompleteProductConfig:hover {
    background: linear-gradient(135deg, var(--s-primary-hover) 0%, #e07b00 100%) !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255,108,44,.35) !important;
}

/* Fix broken arrow icon in Continue button */
button#btnCompleteProductConfig i.fas.fa-arrow-circle-right::before {
    content: "→" !important;
    font-family: 'Inter', sans-serif !important;
    font-style: normal;
    font-size: 18px;
}

/* Button container alignment */
.btn-footer, .product-configure-page .btn-footer {
    display: flex !important;
    justify-content: flex-end !important;
    padding: 20px 0 !important;
    background: transparent !important;
    border: none !important;
}

/* Generic cart buttons */
.generic_content .wgs_custom-btn {
    background: linear-gradient(135deg, var(--s-primary) 0%, var(--s-accent) 100%) !important;
    border-radius: var(--s-radius) !important;
    box-shadow: 0 4px 14px var(--s-primary-glow) !important;
}

/* ─── Fix broken FontAwesome icons globally in cart ─── */
#order-standard_cart .fas::before,
.cart-head-bar .fas::before,
.product-configure-page .fas::before {
    font-family: 'Font Awesome 5 Free', 'FontAwesome' !important;
    font-weight: 900;
}
/* Fallback for specific broken icons */
i.fas.fa-unlock-alt::before { content: "\f09c"; }
i.fas.fa-arrow-circle-right::before { content: "\f0a9"; }
i.fas.fa-check::before { content: "\f00c"; }
i.fas.fa-question-circle::before { content: "\f059"; }
i.fas.fa-spinner::before { content: "\f110"; }
i.fas.fa-globe::before { content: "\f0ac"; }

/* ─── m-cart-30 container ─── */
.m-cart-30 {
    margin: 20px !important;
}

/* ─── Responsive fixes ─── */
@media (max-width: 991px) {
    .cart-head-bar.configure-cart-head .row {
        flex-direction: column;
        gap: 16px;
    }
    .cart-head-bar.configure-cart-head .col-md-5,
    .cart-head-bar.configure-cart-head .col-md-7 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    li.step-item a {
        font-size: 11px !important;
    }
}
@media (max-width: 576px) {
    .wgs_custom-btn,
    button#btnCompleteProductConfig {
        width: 100% !important;
        justify-content: center;
    }
    .billing-cycle-section ul.selectBillingCycle li {
        flex: 0 0 100%;
    }
}

/* ═══════════════════════════════════════════════════════════
   CHECKOUT PAGE — Complete redesign
   ═══════════════════════════════════════════════════════════ */

/* Checkout container */
.product-checkout-page {
    margin: 20px !important;
}
.product-checkout-page > .row {
    display: flex !important;
    gap: 24px;
    flex-wrap: wrap;
}

/* LEFT — Form section */
.left-section-checkout-page {
    flex: 1 1 60%;
    max-width: none !important;
    padding: 0 !important;
}
.left-side-checkout-page {
    background: var(--s-white) !important;
    border-radius: var(--s-radius) !important;
    box-shadow: var(--s-shadow) !important;
    padding: 28px !important;
}

/* RIGHT — Cart sidebar */
.right-section-checkout-page {
    flex: 0 0 380px;
    max-width: 380px !important;
    padding: 0 !important;
}
.right-section-upper-section {
    position: sticky;
    top: 80px;
}
.view-cart-items.right-side-checkout-page {
    background: var(--s-white) !important;
    border-radius: var(--s-radius) !important;
    box-shadow: var(--s-shadow) !important;
    padding: 24px !important;
}

/* Cart title */
.view-cart-items h3,
.view-cart-items .order,
.right-side-checkout-page h3 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--s-dark) !important;
    padding: 0 0 16px !important;
    margin: 0 0 16px !important;
    border-bottom: 2px solid var(--s-bg) !important;
}

/* Cart item */
.item.cart-colam {
    padding: 14px 0 !important;
    border-bottom: 1px solid var(--s-bg) !important;
}
.item.cart-colam h4 {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: var(--s-dark) !important;
}
.item.cart-colam .item-price {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--s-primary) !important;
}

/* Promo code link */
.view-cart-items a[href*="promo"],
a.promo-code-link {
    color: var(--s-primary) !important;
    font-weight: 600;
    font-size: 14px;
}

/* Tax calculator section */
.tax-region-lookup,
.view-cart-items .tax-cont {
    background: var(--s-bg) !important;
    border-radius: var(--s-radius-sm) !important;
    padding: 16px !important;
    margin-top: 16px !important;
}

/* Cart buttons */
.button-under-summary {
    display: flex !important;
    gap: 10px !important;
    margin-top: 20px !important;
    flex-wrap: wrap;
}
.button-under-summary button,
.button-under-summary a {
    flex: 1;
    text-align: center;
    padding: 12px 16px !important;
    border-radius: var(--s-radius-sm) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}
button#btnEmptyCart {
    background: var(--s-danger) !important;
    color: #fff !important;
    border: none !important;
}
a#continueShopping {
    background: var(--s-success) !important;
    color: #fff !important;
    text-decoration: none !important;
}

/* ─── Login/Register header ───────────────── */
.account-colam,
.full-sign {
    background: var(--s-dark) !important;
    border-radius: var(--s-radius) !important;
    padding: 24px !important;
    margin-bottom: 24px !important;
    display: flex;
    gap: 20px;
    align-items: center;
    flex-wrap: wrap;
}
.account-colam h3,
.full-sign h3 {
    color: #fff !important;
    font-size: 18px !important;
    margin: 0 0 4px !important;
}
.account-colam p,
.full-sign p {
    color: rgba(255,255,255,.7) !important;
    font-size: 14px !important;
    margin: 0 !important;
}
.account-colam .btn,
.full-sign .btn {
    background: var(--s-primary) !important;
    border: none !important;
    color: #fff !important;
    padding: 10px 24px !important;
    border-radius: var(--s-radius-sm) !important;
    font-weight: 600 !important;
}

/* ─── Form sections ───────────────────────── */
.left-side-checkout-page .Pers-titel,
.left-side-checkout-page h3 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--s-dark) !important;
    padding-bottom: 12px !important;
    margin: 24px 0 16px !important;
    border-bottom: 2px solid var(--s-bg) !important;
}
.left-side-checkout-page h3:first-child,
.left-side-checkout-page .Pers-titel:first-of-type {
    margin-top: 0 !important;
}

/* Form fields */
.left-side-checkout-page .form-group {
    margin-bottom: 20px !important;
}
.left-side-checkout-page label {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--s-text) !important;
    margin-bottom: 6px !important;
    display: block;
}
.left-side-checkout-page .form-control,
.left-side-checkout-page select,
.left-side-checkout-page input[type="text"],
.left-side-checkout-page input[type="email"],
.left-side-checkout-page input[type="password"],
.left-side-checkout-page input[type="tel"] {
    border: 1.5px solid var(--s-border) !important;
    border-radius: var(--s-radius-sm) !important;
    padding: 12px 14px !important;
    font-size: 14px !important;
    height: auto !important;
    width: 100% !important;
    transition: var(--s-transition);
}
.left-side-checkout-page .form-control:focus {
    border-color: var(--s-primary) !important;
    box-shadow: 0 0 0 4px var(--s-primary-glow) !important;
}

/* Intro text */
.left-side-checkout-page > p {
    color: var(--s-text-light) !important;
    font-size: 14px !important;
    margin-bottom: 24px !important;
}

/* ─── Payment methods ─────────────────────── */
ul.payment-gateway-list {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)) !important;
    gap: 10px !important;
    padding: 0 !important;
    list-style: none !important;
    margin: 16px 0 !important;
}
ul.payment-gateway-list li {
    margin: 0 !important;
    padding: 0 !important;
    max-width: none !important;
    float: none !important;
}
ul.payment-gateway-list li label,
ul.payment-gateway-list li .gateway-option {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 16px 12px !important;
    border: 2px solid var(--s-border) !important;
    border-radius: var(--s-radius) !important;
    cursor: pointer;
    transition: var(--s-transition);
    background: var(--s-white) !important;
    text-align: center;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--s-text) !important;
    height: 100%;
}
ul.payment-gateway-list li label:hover,
ul.payment-gateway-list li .gateway-option:hover {
    border-color: var(--s-primary) !important;
    box-shadow: 0 2px 8px var(--s-primary-glow);
}
ul.payment-gateway-list li.active label,
ul.payment-gateway-list li label.active,
ul.payment-gateway-list li input:checked + label,
ul.payment-gateway-list li .iCheck-helper + label {
    border-color: var(--s-primary) !important;
    background: var(--s-primary-light) !important;
    box-shadow: 0 0 0 3px var(--s-primary-glow) !important;
}
/* Fix payment icon size */
ul.payment-gateway-list li img {
    max-height: 28px;
    max-width: 60px;
}
/* Hide iCheck radio styling, let the card be the selector */
ul.payment-gateway-list .iradio_square-blue {
    position: absolute !important;
    opacity: 0;
    width: 0;
    height: 0;
}

/* ─── Password strength bar ───────────────── */
.password-strength-meter,
.Seguridad-de-la-Contrase {
    margin-top: 8px;
}

/* Generate password button */
.left-side-checkout-page .btn-success,
button[onclick*="generatePassword"],
.left-side-checkout-page .crt-ntn {
    background: var(--s-success) !important;
    color: #fff !important;
    border: none !important;
    border-radius: var(--s-radius-sm) !important;
    padding: 10px 20px !important;
    font-weight: 600 !important;
    font-size: 13px !important;
}

/* ─── Newsletter toggle ───────────────────── */
.marketing-emails-optin {
    background: var(--s-bg) !important;
    border-radius: var(--s-radius) !important;
    padding: 16px 20px !important;
    margin: 20px 0 !important;
}

/* ─── Terms checkbox ──────────────────────── */
.left-side-checkout-page .pay-check {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 14px !important;
    color: var(--s-text) !important;
    margin: 16px 0 !important;
}
.left-side-checkout-page .pay-check a {
    color: var(--s-primary) !important;
    font-weight: 600;
}

/* ─── COMPLETE ORDER BUTTON ───────────────── */
button#btnCompleteOrder,
.left-side-checkout-page button[type="submit"].btn-primary {
    background: linear-gradient(135deg, var(--s-primary) 0%, var(--s-accent) 100%) !important;
    color: #fff !important;
    border: none !important;
    padding: 16px 40px !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    border-radius: var(--s-radius) !important;
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    transition: var(--s-transition);
    box-shadow: 0 4px 14px var(--s-primary-glow) !important;
    width: auto !important;
    margin: 8px 0 !important;
}
button#btnCompleteOrder:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255,108,44,.35) !important;
}
/* Fix broken icon */
button#btnCompleteOrder i.fas::before {
    font-family: 'Font Awesome 5 Free', 'FontAwesome' !important;
    font-weight: 900;
}

/* ─── Security notice at bottom ───────────── */
.alert-ip-notice,
.left-side-checkout-page > .alert:last-child {
    background: #fef9e7 !important;
    border: 1px solid #f9e79f !important;
    border-radius: var(--s-radius) !important;
    color: #7d6608 !important;
    font-size: 13px !important;
    margin-top: 20px !important;
}

/* ─── Checkout steps bar ──────────────────── */
.cart-product-step.checkout-page {
    margin-bottom: 0 !important;
}

/* ─── "Actualizar Totales" button ─────────── */
.view-cart-items .btn-primary,
button[onclick*="updateTaxEstimate"],
.right-side-checkout-page .btn-primary {
    background: var(--s-primary) !important;
    color: #fff !important;
    border: none !important;
    padding: 10px 20px !important;
    border-radius: var(--s-radius-sm) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    width: 100%;
    margin-top: 10px;
}

/* ─── Responsive ──────────────────────────── */
@media (max-width: 1199px) {
    .product-checkout-page > .row {
        flex-direction: column;
    }
    .left-section-checkout-page,
    .right-section-checkout-page {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
    .right-section-upper-section {
        position: static;
    }
}
@media (max-width: 576px) {
    .left-side-checkout-page {
        padding: 16px !important;
    }
    .account-colam, .full-sign {
        flex-direction: column;
        text-align: center;
        padding: 20px !important;
    }
    ul.payment-gateway-list {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    button#btnCompleteOrder {
        width: 100% !important;
        justify-content: center;
    }
}

/* ─── CHECKOUT: Login/Register header fix ──── */
.full-sign {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 0 !important;
    padding: 0 !important;
    border-radius: var(--s-radius) !important;
    overflow: hidden;
    margin-bottom: 28px !important;
}
.full-sign .account-colam {
    padding: 24px 28px !important;
    margin: 0 !important;
    border-radius: 0 !important;
}
.full-sign .account-colam#newuser {
    background: var(--s-dark) !important;
}
.full-sign .account-colam#exitinguser,
.full-sign .account-colam.have {
    background: var(--s-darker) !important;
}
.full-sign h1.sign-titel {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 0 0 4px !important;
}
.full-sign .acct-box h3 {
    font-size: 14px !important;
    color: rgba(255,255,255,.6) !important;
    font-weight: 400 !important;
    margin: 0 !important;
}
.full-sign .acct-box .btn,
.full-sign .crt-ntn {
    background: var(--s-primary) !important;
    border: none !important;
    color: #fff !important;
    padding: 10px 24px !important;
    border-radius: var(--s-radius-sm) !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    margin-top: 12px !important;
    display: inline-block !important;
    text-decoration: none !important;
}

/* ─── CHECKOUT: Cart sidebar fix ──────────── */
.right-section-checkout-page .view-cart-items {
    border-radius: var(--s-radius) !important;
    overflow: hidden;
}
.right-side-checkout-page h2,
.right-side-checkout-page .order {
    font-size: 17px !important;
    font-weight: 700 !important;
    color: var(--s-dark) !important;
    background: var(--s-white) !important;
    border-bottom: 2px solid var(--s-bg) !important;
    padding: 0 0 14px !important;
    margin: 0 0 14px !important;
}

/* Cart edit/delete icons */
.right-side-checkout-page .item-edit a,
.right-side-checkout-page .btn-sm {
    color: var(--s-primary) !important;
    font-size: 12px;
}

/* Cart total section */
.right-side-checkout-page .order-total,
.right-side-checkout-page .total-box {
    border-top: 2px solid var(--s-bg) !important;
    padding-top: 14px !important;
    margin-top: 14px !important;
}
.right-side-checkout-page .total-due-today,
.right-side-checkout-page .total-box strong {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: var(--s-primary) !important;
}

/* Promo code */
.right-side-checkout-page a[data-toggle*="promo"],
.right-side-checkout-page .promo-code-link,
.right-side-checkout-page a[onclick*="promo"] {
    color: var(--s-primary) !important;
    font-weight: 600 !important;
    font-size: 14px !important;
}

/* Tax calc section in sidebar */
.right-side-checkout-page .tax-cont,
.right-side-checkout-page h3:has(+ .tax-cont),
.right-side-checkout-page h4 {
    font-size: 15px !important;
    font-weight: 700 !important;
}
.right-side-checkout-page .tax-cont label {
    font-size: 12px !important;
    color: var(--s-primary) !important;
    font-weight: 700 !important;
}

/* Sidebar buttons */
.button-under-summary button#btnEmptyCart {
    background: #fff !important;
    color: var(--s-danger) !important;
    border: 1.5px solid var(--s-danger) !important;
    font-size: 13px !important;
}
.button-under-summary a#continueShopping {
    background: var(--s-primary) !important;
    font-size: 13px !important;
}

/* ─── CHECKOUT: Completar Pedido button ───── */
button#btnCompleteOrder {
    background: linear-gradient(135deg, var(--s-primary) 0%, var(--s-accent) 100%) !important;
    font-size: 18px !important;
    padding: 16px 48px !important;
    margin: 20px auto 8px !important;
    display: block !important;
}

/* Fix sticky navbar overlap */
.product-checkout-page {
    padding-top: 10px !important;
}

/* ─── Responsive checkout ─────────────────── */
@media (max-width: 768px) {
    .full-sign {
        grid-template-columns: 1fr !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   CHECKOUT SIDEBAR FIX — Precios visibles + iconos editar/borrar
   ═══════════════════════════════════════════════════════════ */

/* REVERT: sidebar debe ser BLANCO, no oscuro */
.right-section-checkout-page .view-cart-items,
.view-cart-items.right-side-checkout-page,
.right-section-upper-section {
    background: var(--s-white) !important;
    color: var(--s-text) !important;
}

/* Cart title */
h2.items-titel {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: var(--s-dark) !important;
    padding: 20px 20px 14px !important;
    margin: 0 !important;
    border-bottom: 2px solid var(--s-bg) !important;
}

/* Product name in cart */
.cloud-item .stack strong {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--s-dark) !important;
}
.cloud-item .stack {
    color: var(--s-text) !important;
}

/* Product details */
.cloud-item-product {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center;
    padding: 8px 20px !important;
}
.cloud-item-product .stack {
    color: var(--s-text) !important;
    font-size: 14px !important;
}
.cloud-item-product .usd-tp {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--s-primary) !important;
}

/* Line items (config options, addons, fees) */
.centos-item {
    display: flex !important;
    justify-content: space-between !important;
    padding: 4px 0 !important;
}
.centos-item span.centos {
    color: var(--s-text-light) !important;
    font-size: 13px !important;
}
.centos-item span.centos-price {
    color: var(--s-dark) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

/* Fees section */
.cloud-item.fess {
    padding: 10px 20px !important;
    background: var(--s-bg) !important;
    border-radius: var(--s-radius-sm);
    margin: 8px 20px !important;
}
.cloud-item.fess .centos-item span.centos {
    color: var(--s-text-light) !important;
}
.cloud-item.fess .centos-item span.centos-price {
    color: var(--s-dark) !important;
}

/* Total due today */
.cloud-item.amount {
    padding: 14px 20px !important;
    border-top: 2px solid var(--s-bg) !important;
    margin-top: 8px !important;
}
.cloud-item.amount .centos-item {
    align-items: center;
}
.cloud-item.amount span.centos {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--s-dark) !important;
}
.cloud-item.amount span.centos-price {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: var(--s-primary) !important;
}

/* Cart summary lines (Subtotal, IVA, Recurrente) */
.cart-summary-line {
    display: flex !important;
    justify-content: space-between !important;
    padding: 6px 0 !important;
}
.cart-summary-line .label-text {
    color: var(--s-text-light) !important;
    font-size: 14px !important;
}
.cart-summary-line .value {
    color: var(--s-dark) !important;
    font-weight: 700 !important;
    font-size: 14px !important;
}
.card-block {
    padding: 16px 20px !important;
    background: var(--s-white) !important;
    border-top: 1px solid var(--s-bg) !important;
}
.card-block span {
    color: var(--s-dark) !important;
}

/* Edit & Remove links — make them visible */
.item.cart-colam .crt-drop a,
.cloud-item a[onclick*="removeItem"],
.view-cart-items a[href*="edit"],
.view-cart-items .item-edit,
.view-cart-items .btn-edit,
#order-standard_cart .view-cart-items a {
    color: var(--s-primary) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}
/* Trash/edit icon links */
.view-cart-items a i.fa-edit,
.view-cart-items a i.fa-pencil-alt,
.view-cart-items a i.far.fa-trash-alt,
.view-cart-items a i.fas.fa-trash-alt,
.view-cart-items a i.far.fa-edit {
    color: var(--s-text-light) !important;
    font-size: 16px !important;
    transition: var(--s-transition);
    padding: 4px;
}
.view-cart-items a:hover i.fa-edit,
.view-cart-items a:hover i.fa-pencil-alt,
.view-cart-items a:hover i.far.fa-edit {
    color: var(--s-primary) !important;
}
.view-cart-items a:hover i.far.fa-trash-alt,
.view-cart-items a:hover i.fas.fa-trash-alt {
    color: var(--s-danger) !important;
}

/* Promo code link */
.mc-promo a,
a[data-toggle*="promocode"],
a.promo-code-link {
    color: var(--s-primary) !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 12px 20px !important;
}

/* Tax section fix */
.tax-cont {
    padding: 16px 20px !important;
    background: var(--s-white) !important;
}
.tax-cont h3 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--s-dark) !important;
    margin-bottom: 16px !important;
}
.tax-cont label {
    color: var(--s-text) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
}
.tax-cont .form-control,
.tax-cont select {
    border: 1.5px solid var(--s-border) !important;
    border-radius: var(--s-radius-sm) !important;
    padding: 10px 12px !important;
    font-size: 14px !important;
}
.tax-cont button.btn {
    background: var(--s-primary) !important;
    color: #fff !important;
    border: none !important;
    padding: 10px 20px !important;
    border-radius: var(--s-radius-sm) !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    width: 100% !important;
    margin-top: 12px !important;
}

/* Sidebar buttons */
.button-under-summary {
    padding: 16px 20px 20px !important;
    gap: 10px !important;
}
button#btnEmptyCart {
    background: #fff !important;
    color: var(--s-danger) !important;
    border: 1.5px solid var(--s-danger) !important;
    border-radius: var(--s-radius-sm) !important;
    font-weight: 600 !important;
}
button#btnEmptyCart:hover {
    background: var(--s-danger) !important;
    color: #fff !important;
}
a#continueShopping {
    background: var(--s-primary) !important;
    color: #fff !important;
    border-radius: var(--s-radius-sm) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    text-align: center !important;
}

/* Fix all spans in cart sidebar to be visible */
#order-standard_cart .view-cart-items.right-side-checkout-page .item.cart-colam span,
#order-standard_cart .view-cart-items span,
.right-side-checkout-page span {
    color: var(--s-text) !important;
}

/* ═══════════════════════════════════════════════════════════
   FIX: FontAwesome icons broken by global font override
   ═══════════════════════════════════════════════════════════ */

/* Restore FontAwesome font-family for all icon elements */
.fas, .far, .fab, .fal, .fad,
i.fas, i.far, i.fab, i.fal, i.fad,
.fa, i.fa,
[class*="fa-"]::before,
.fas::before, .far::before, .fab::before, .fal::before, .fad::before {
    font-family: 'Font Awesome 5 Free' !important;
    font-style: normal !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.far::before, i.far::before {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 400 !important;
}
.fas::before, i.fas::before {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
}
.fab::before, i.fab::before {
    font-family: 'Font Awesome 5 Brands' !important;
    font-weight: 400 !important;
}

/* Ensure icon elements don't inherit Inter font */
i[class*="fa-"],
span[class*="fa-"] {
    font-family: 'Font Awesome 5 Free' !important;
}

/* Specific icon fixes for cart edit/delete */
.trash a i,
.edit-btn i,
.prm-btn i,
a[onclick*="removeItem"] i {
    font-family: 'Font Awesome 5 Free' !important;
    font-size: 14px !important;
    display: inline-block;
}
/* Edit icon (pencil) */
i.fas.fa-pencil-alt::before {
    content: "\f303" !important;
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
}
/* Delete icon (trash) */
i.far.fa-trash-alt::before,
i.fas.fa-trash-alt::before {
    content: "\f2ed" !important;
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 400 !important;
}
/* Other common FA icons used in WHMCS */
i.fas.fa-check::before { content: "\f00c" !important; font-family: 'Font Awesome 5 Free' !important; font-weight: 900 !important; }
i.fas.fa-times::before { content: "\f00d" !important; font-family: 'Font Awesome 5 Free' !important; font-weight: 900 !important; }
i.fas.fa-spinner::before { content: "\f110" !important; font-family: 'Font Awesome 5 Free' !important; font-weight: 900 !important; }
i.fas.fa-globe::before { content: "\f0ac" !important; font-family: 'Font Awesome 5 Free' !important; font-weight: 900 !important; }
i.fas.fa-unlock-alt::before { content: "\f13e" !important; font-family: 'Font Awesome 5 Free' !important; font-weight: 900 !important; }
i.fas.fa-arrow-circle-right::before { content: "\f0a9" !important; font-family: 'Font Awesome 5 Free' !important; font-weight: 900 !important; }
i.fas.fa-credit-card::before { content: "\f09d" !important; font-family: 'Font Awesome 5 Free' !important; font-weight: 900 !important; }
i.fas.fa-shopping-cart::before { content: "\f07a" !important; font-family: 'Font Awesome 5 Free' !important; font-weight: 900 !important; }
i.fas.fa-question-circle::before { content: "\f059" !important; font-family: 'Font Awesome 5 Free' !important; font-weight: 900 !important; }
i.fas.fa-fw::before { font-family: 'Font Awesome 5 Free' !important; font-weight: 900 !important; }

/* ═══════════════════════════════════════════════════════════
   FINAL FIX: FontAwesome Regular (far) icons - trash, etc.
   ═══════════════════════════════════════════════════════════ */

/* The global * font-family override kills FA Regular weight icons.
   FA Regular needs font-weight:400 to render from the correct font file */

/* Force FA Regular font for ALL far elements */
.far, i.far, span.far {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 400 !important;
    font-style: normal !important;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

/* Force FA Solid font for ALL fas elements */  
.fas, i.fas, span.fas {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-style: normal !important;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

/* Force FA Brands */
.fab, i.fab, span.fab {
    font-family: 'Font Awesome 5 Brands' !important;
    font-weight: 400 !important;
    font-style: normal !important;
    display: inline-block;
}

/* Style the edit/delete buttons in cart sidebar */
.trash {
    display: flex !important;
    align-items: center;
    gap: 4px;
    margin-top: 6px;
}
.trash a {
    color: var(--s-text-light) !important;
    font-size: 13px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center;
    gap: 4px;
    padding: 3px 6px;
    border-radius: 4px;
    transition: var(--s-transition);
}
.trash a:hover {
    background: var(--s-bg);
}
.trash a:first-child:hover {
    color: var(--s-primary) !important;
}
.trash a:last-child:hover {
    color: var(--s-danger) !important;
}
.trash a i {
    font-size: 13px !important;
}

/* ═══════════════════════════════════════════════════════════
   ICON FIX: Replace FA webfont icons with inline SVG/unicode
   Webfonts fail in some browsers. SVG background-image always works.
   ═══════════════════════════════════════════════════════════ */

/* Hide the broken FA pseudo-element, show SVG instead */
i.fas.fa-pencil-alt,
i.far.fa-pencil-alt {
    font-size: 0 !important;
    width: 16px;
    height: 16px;
    display: inline-block;
    vertical-align: middle;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23636e72' d='M497.9 142.1l-46.1 46.1c-4.7 4.7-12.3 4.7-17 0l-111-111c-4.7-4.7-4.7-12.3 0-17l46.1-46.1c18.7-18.7 49.1-18.7 67.9 0l60.1 60.1c18.8 18.7 18.8 49.1 0 67.9zM284.2 99.8L21.6 362.4.4 483.9c-2.9 16.4 11.4 30.6 27.8 27.8l121.5-21.3 262.6-262.6c4.7-4.7 4.7-12.3 0-17l-111-111c-4.8-4.7-12.4-4.7-17.1 0zM124.1 339.9c-5.5-5.5-5.5-14.3 0-19.8l154-154c5.5-5.5 14.3-5.5 19.8 0s5.5 14.3 0 19.8l-154 154c-5.5 5.5-14.3 5.5-19.8 0zM88 424h48v36.3l-64.5 11.3-31.1-31.1L51.7 376H88v48z'/%3E%3C/svg%3E") no-repeat center/contain;
}
i.fas.fa-pencil-alt::before,
i.far.fa-pencil-alt::before {
    content: '' !important;
}

i.far.fa-trash-alt,
i.fas.fa-trash-alt:not(.fa-3x) {
    font-size: 0 !important;
    width: 16px;
    height: 16px;
    display: inline-block;
    vertical-align: middle;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23636e72' d='M432 80h-82.4l-34-56.7A48 48 0 0 0 274.4 0H173.6a48 48 0 0 0-41.2 23.3L98.4 80H16A16 16 0 0 0 0 96v16a16 16 0 0 0 16 16h16v336a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V128h16a16 16 0 0 0 16-16V96a16 16 0 0 0-16-16zM171.8 50.9A6 6 0 0 1 177 48h94a6 6 0 0 1 5.2 2.9L293.6 80H154.4l17.4-29.1zM368 464H80V128h288v336zm-212-48a12 12 0 0 0 12-12V188a12 12 0 0 0-12-12h-8a12 12 0 0 0-12 12v216a12 12 0 0 0 12 12h8zm96 0a12 12 0 0 0 12-12V188a12 12 0 0 0-12-12h-8a12 12 0 0 0-12 12v216a12 12 0 0 0 12 12h8z'/%3E%3C/svg%3E") no-repeat center/contain;
}
i.far.fa-trash-alt::before,
i.fas.fa-trash-alt:not(.fa-3x)::before {
    content: '' !important;
}

/* Hover colors */
a:hover i.fas.fa-pencil-alt,
a:hover i.far.fa-pencil-alt {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23ff6c2c' d='M497.9 142.1l-46.1 46.1c-4.7 4.7-12.3 4.7-17 0l-111-111c-4.7-4.7-4.7-12.3 0-17l46.1-46.1c18.7-18.7 49.1-18.7 67.9 0l60.1 60.1c18.8 18.7 18.8 49.1 0 67.9zM284.2 99.8L21.6 362.4.4 483.9c-2.9 16.4 11.4 30.6 27.8 27.8l121.5-21.3 262.6-262.6c4.7-4.7 4.7-12.3 0-17l-111-111c-4.8-4.7-12.4-4.7-17.1 0zM124.1 339.9c-5.5-5.5-5.5-14.3 0-19.8l154-154c5.5-5.5 14.3-5.5 19.8 0s5.5 14.3 0 19.8l-154 154c-5.5 5.5-14.3 5.5-19.8 0zM88 424h48v36.3l-64.5 11.3-31.1-31.1L51.7 376H88v48z'/%3E%3C/svg%3E");
}
a:hover i.far.fa-trash-alt,
a:hover i.fas.fa-trash-alt:not(.fa-3x) {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23e74c3c' d='M432 80h-82.4l-34-56.7A48 48 0 0 0 274.4 0H173.6a48 48 0 0 0-41.2 23.3L98.4 80H16A16 16 0 0 0 0 96v16a16 16 0 0 0 16 16h16v336a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V128h16a16 16 0 0 0 16-16V96a16 16 0 0 0-16-16zM171.8 50.9A6 6 0 0 1 177 48h94a6 6 0 0 1 5.2 2.9L293.6 80H154.4l17.4-29.1zM368 464H80V128h288v336zm-212-48a12 12 0 0 0 12-12V188a12 12 0 0 0-12-12h-8a12 12 0 0 0-12 12v216a12 12 0 0 0 12 12h8zm96 0a12 12 0 0 0 12-12V188a12 12 0 0 0-12-12h-8a12 12 0 0 0-12 12v216a12 12 0 0 0 12 12h8z'/%3E%3C/svg%3E");
}

/* Keep fa-3x icons (modal) working normally */
i.fas.fa-trash-alt.fa-3x {
    font-size: 3em !important;
    width: auto;
    height: auto;
    background: none !important;
}

/* Also fix other common FA icons with SVG fallback */
i.fas.fa-check {
    font-size: 0 !important;
    width: 14px;
    height: 14px;
    display: inline-block;
    vertical-align: middle;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23fff' d='M173.9 439.4l-166.4-166.4c-10-10-10-26.2 0-36.2l36.2-36.2c10-10 26.2-10 36.2 0L192 312.7 432.1 72.6c10-10 26.2-10 36.2 0l36.2 36.2c10 10 10 26.2 0 36.2l-294.4 294.4c-10 10-26.2 10-36.2 0z'/%3E%3C/svg%3E") no-repeat center/contain;
}
i.fas.fa-check::before { content: '' !important; }

i.fas.fa-credit-card {
    font-size: 0 !important;
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath fill='%23636e72' d='M0 432c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V256H0v176zm192-68c0-6.6 5.4-12 12-12h136c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H204c-6.6 0-12-5.4-12-12v-40zm-128 0c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40zM576 80c0-26.5-21.5-48-48-48H48C21.5 32 0 53.5 0 80v48h576V80z'/%3E%3C/svg%3E") no-repeat center/contain;
}
i.fas.fa-credit-card::before { content: '' !important; }

i.fas.fa-globe {
    font-size: 0 !important;
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 496 512'%3E%3Cpath fill='%23ff6c2c' d='M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm193.2 152h-82.5c-9-44.4-24.1-82.2-43.2-109.1 50 25.2 90.5 63.4 125.7 109.1zM248 56c24.5 33.6 43.1 75.2 53.4 120H194.6c10.3-44.8 28.9-86.4 53.4-120zm-196.9 96h82.5c-9 44.4-24.1 82.2-43.2 109.1C40.5 236.2 0 198 0 152h51.1zM248 456c-24.5-33.6-43.1-75.2-53.4-120h106.8c-10.3 44.8-28.9 86.4-53.4 120z'/%3E%3C/svg%3E") no-repeat center/contain;
}
i.fas.fa-globe::before { content: '' !important; }

i.fas.fa-unlock-alt {
    font-size: 0 !important;
    width: 18px;
    height: 18px;
    display: inline-block;
    vertical-align: middle;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23ff6c2c' d='M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48z'/%3E%3C/svg%3E") no-repeat center/contain;
}
i.fas.fa-unlock-alt::before { content: '' !important; }

i.fas.fa-arrow-circle-right {
    font-size: 0 !important;
    width: 18px;
    height: 18px;
    display: inline-block;
    vertical-align: middle;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23fff' d='M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm-28.9 143.6l75.5 72.4H120c-13.3 0-24 10.7-24 24v16c0 13.3 10.7 24 24 24h182.6l-75.5 72.4c-9.7 9.3-9.9 24.8-.4 34.3l11 10.9c9.4 9.4 24.6 9.4 33.9 0L404.3 272c9.4-9.4 9.4-24.6 0-33.9L271.6 106.3c-9.4-9.4-24.6-9.4-33.9 0l-11 10.9c-9.5 9.6-9.3 25.1.4 34.4z'/%3E%3C/svg%3E") no-repeat center/contain;
}
i.fas.fa-arrow-circle-right::before { content: '' !important; }
