/* HostGennie modern order form */

#order-standard_cart.hg-modern-cart {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 0 20px;
    color: #17233c;
}

.hg-modern-cart .header-lined {
    margin: 0 0 26px;
    padding: 0 0 19px;
    border-bottom: 1px solid #dce4ef;
}

.hg-cart-eyebrow {
    display: block;
    margin-bottom: 7px;
    color: #1468e8;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .09em;
}

.hg-modern-cart .hg-cart-page-heading h1 {
    margin: 0 0 8px;
    color: #071a3d;
    font-size: 34px;
    font-weight: 750;
    letter-spacing: -.025em;
}

.hg-modern-cart .hg-cart-page-heading p {
    margin: 0;
    color: #68758b;
    font-size: 15px;
}

.hg-checkout-progress {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    overflow: hidden;
    margin-bottom: 32px;
    border: 1px solid #dce4ef;
    border-radius: 11px;
    background: #fff;
}

.hg-checkout-progress span {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 52px;
    padding: 10px;
    border-right: 1px solid #dce4ef;
    color: #7a8799;
    font-size: 13px;
    font-weight: 650;
}

.hg-checkout-progress span:last-child {
    border-right: 0;
}

.hg-checkout-progress span.complete {
    color: #167447;
    background: #edf9f2;
}

.hg-checkout-progress span.active {
    color: #1468e8;
    background: #eef5ff;
}

.hg-domain-config-list {
    display: grid;
    gap: 20px;
}

.hg-domain-config-card {
    overflow: hidden;
    border: 1px solid #dce4ef;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 9px 28px rgba(7, 26, 61, .065);
}

.hg-domain-config-card-header {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 20px 22px;
    border-bottom: 1px solid #e7edf5;
    background: linear-gradient(135deg, #f7faff, #fff);
}

.hg-domain-config-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: rgba(20, 104, 232, .1);
    color: #1468e8;
    font-size: 18px;
}

.hg-domain-config-card-header > div:nth-child(2) {
    flex: 1;
    min-width: 0;
}

.hg-domain-config-label {
    display: block;
    margin-bottom: 3px;
    color: #68758b;
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.hg-domain-config-card h2 {
    overflow-wrap: anywhere;
    margin: 0;
    color: #071a3d;
    font-size: 21px;
    font-weight: 750;
}

.hg-domain-period {
    flex: 0 0 auto;
    padding: 7px 11px;
    border-radius: 20px;
    background: #eef5ff;
    color: #1468e8;
    font-size: 12px;
    font-weight: 750;
}

.hg-domain-config-card-body {
    padding: 23px;
}

.hg-domain-config-summary {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: 22px;
}

.hg-domain-config-summary > div {
    padding: 17px 18px;
    border: 1px solid #e3eaf3;
    border-radius: 10px;
    background: #f9fbfe;
}

.hg-domain-config-summary span {
    display: block;
    margin-bottom: 6px;
    color: #68758b;
    font-size: 12px;
    font-weight: 650;
}

.hg-domain-config-summary strong {
    color: #071a3d;
}

.hg-hosting-included {
    color: #167447 !important;
}

.hg-hosting-option {
    display: grid;
    gap: 4px;
}

.hg-hosting-option small {
    color: #68758b;
    line-height: 1.45;
}

.hg-hosting-option a {
    display: inline-flex;
    width: fit-content;
    margin-top: 5px;
    color: #1468e8;
    font-size: 13px;
    font-weight: 750;
}

.hg-domain-epp,
.hg-domain-extra-field {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #edf1f6;
}

.hg-domain-epp > label,
.hg-domain-extra-field > label {
    display: block;
    margin-bottom: 8px;
    color: #071a3d;
    font-weight: 700;
}

.hg-domain-epp small {
    display: block;
    margin-top: 8px;
    color: #68758b;
}

.hg-nameserver-panel {
    overflow: hidden;
    margin-top: 22px;
    border: 1px solid #dce4ef;
    border-radius: 12px;
    background: #fff;
}

.hg-nameserver-panel summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 60px;
    padding: 16px 20px;
    cursor: pointer;
    color: #071a3d;
    font-weight: 750;
    list-style: none;
}

.hg-nameserver-panel summary::-webkit-details-marker {
    display: none;
}

.hg-nameserver-panel summary span {
    display: flex;
    align-items: center;
    gap: 9px;
}

.hg-nameserver-panel summary i {
    color: #1468e8;
}

.hg-nameserver-panel summary small {
    padding: 5px 9px;
    border-radius: 20px;
    background: #edf0f4;
    color: #68758b;
    font-size: 11px;
}

.hg-nameserver-content {
    padding: 0 20px 21px;
    border-top: 1px solid #edf1f6;
}

.hg-nameserver-intro {
    margin: 18px 0;
    padding: 14px 16px;
    border-left: 4px solid #1468e8;
    border-radius: 7px;
    background: #eef5ff;
}

.hg-nameserver-intro p {
    margin: 4px 0 0;
    color: #526177;
}

.hg-nameserver-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 18px;
}

.hg-optional-nameserver {
    opacity: .82;
}

.hg-modern-cart .form-control {
    min-height: 44px;
    border: 1px solid #cfd9e7;
    border-radius: 7px;
}

.hg-modern-cart .form-control:focus {
    border-color: #1468e8;
    box-shadow: 0 0 0 3px rgba(20, 104, 232, .1);
}

.hg-domain-config-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-top: 25px;
    padding: 21px 22px;
    border-radius: 12px;
    background: #071a3d;
    color: #fff;
}

.hg-domain-config-action strong,
.hg-domain-config-action span {
    display: block;
}

.hg-domain-config-action span {
    margin-top: 3px;
    color: rgba(255,255,255,.7);
    font-size: 13px;
}

.hg-domain-config-action .btn {
    flex: 0 0 auto;
    min-height: 48px;
    padding-right: 20px;
    padding-left: 20px;
    border-radius: 8px;
    font-weight: 750;
}

.hg-domain-config-action .btn i {
    margin-left: 8px;
}

@media (max-width: 767px) {
    .hg-checkout-progress {
        grid-template-columns: repeat(2, 1fr);
    }

    .hg-checkout-progress span:nth-child(2) {
        border-right: 0;
    }

    .hg-checkout-progress span:nth-child(-n+2) {
        border-bottom: 1px solid #dce4ef;
    }

    .hg-modern-cart .hg-cart-page-heading h1 {
        font-size: 28px;
    }

    .hg-domain-config-card-header {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .hg-domain-period {
        margin-left: 59px;
    }

    .hg-domain-config-summary,
    .hg-nameserver-grid {
        grid-template-columns: 1fr;
    }

    .hg-domain-config-action {
        display: block;
    }

    .hg-domain-config-action .btn {
        width: 100%;
        margin-top: 17px;
    }
}

/* =========================================================
   HostGennie modern review cart
   ========================================================= */

#order-standard_cart.hg-modern-review-cart {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding-bottom: 24px;
}

.hg-modern-review-cart > .row {
    display: block;
    margin-right: 0;
    margin-left: 0;
}

.hg-modern-review-cart .hg-review-cart-body {
    width: 100%;
    max-width: none;
    padding-right: 0;
    padding-left: 0;
}

.hg-modern-review-cart .sidebar-collapsed {
    display: none !important;
}

.hg-modern-review-cart .header-lined {
    margin-bottom: 26px;
}

.hg-modern-review-cart .header-lined h1 {
    margin: 0 0 8px;
    color: #071a3d;
    font-size: 34px;
    font-weight: 750;
    letter-spacing: -.025em;
}

.hg-modern-review-cart .header-lined p {
    margin: 0;
    color: #68758b;
    font-size: 15px;
}

/* Main review and summary columns */

.hg-modern-review-cart .cart-body > .row {
    align-items: flex-start;
    margin-right: -10px;
    margin-left: -10px;
}

.hg-modern-review-cart .secondary-cart-body {
    flex: 0 0 67%;
    width: 67%;
    max-width: 67%;
    padding-right: 10px;
    padding-left: 10px;
}

.hg-modern-review-cart .secondary-cart-sidebar {
    flex: 0 0 33%;
    width: 33%;
    max-width: 33%;
    padding-right: 10px;
    padding-left: 10px;
}

/* Cart item list */

.hg-modern-review-cart .view-cart-items-header {
    padding: 14px 18px;
    border: 1px solid #dce4ef;
    border-bottom: 0;
    border-radius: 12px 12px 0 0;
    background: #f4f7fc;
    color: #071a3d;
    font-size: 12px;
    font-weight: 750;
    letter-spacing: .025em;
    text-transform: uppercase;
}

.hg-modern-review-cart .view-cart-items {
    overflow: hidden;
    border: 1px solid #dce4ef;
    border-radius: 0 0 12px 12px;
    background: #ffffff;
    box-shadow: 0 8px 25px rgba(7, 26, 61, .055);
}

.hg-modern-review-cart .view-cart-items .item {
    padding: 20px 18px;
    border-bottom: 1px solid #edf1f6;
    background: #ffffff;
    transition:
        background-color .16s ease,
        box-shadow .16s ease;
}

.hg-modern-review-cart .view-cart-items .item:last-child {
    border-bottom: 0;
}

.hg-modern-review-cart .view-cart-items .item:hover {
    background: #f8faff;
    box-shadow: inset 4px 0 0 #1468e8;
}

.hg-modern-review-cart .item-title {
    display: block;
    margin-bottom: 5px;
    color: #071a3d;
    font-size: 16px;
    font-weight: 750;
}

.hg-modern-review-cart .item-title .btn-link {
    margin-left: 6px;
    padding: 2px 5px;
    color: #1468e8;
    font-size: 11px;
    font-weight: 700;
}

.hg-modern-review-cart .item-group {
    display: block;
    color: #68758b;
    font-size: 12px;
    font-weight: 650;
    text-transform: uppercase;
}

.hg-modern-review-cart .item-domain {
    display: inline-flex;
    align-items: center;
    margin-top: 8px;
    padding: 5px 9px;
    border-radius: 6px;
    background: #eef5ff;
    color: #1468e8;
    font-size: 13px;
    font-weight: 700;
}

.hg-modern-review-cart .item-price {
    color: #071a3d;
    font-size: 16px;
    font-weight: 750;
    text-align: right;
}

.hg-modern-review-cart .item-price .cycle,
.hg-modern-review-cart .item-price .renewal {
    display: block;
    margin-top: 3px;
    color: #68758b;
    font-size: 11px;
    font-weight: 550;
}

.hg-modern-review-cart .btn-remove-from-cart {
    color: #a13d36;
}

.hg-modern-review-cart .btn-remove-from-cart:hover {
    color: #cf3125;
}

.hg-modern-review-cart .empty-cart {
    padding: 10px 2px 18px;
    text-align: right;
}

.hg-modern-review-cart #btnEmptyCart {
    color: #8b4650;
    font-size: 12px;
    font-weight: 650;
}

/* Promotion and tax section */

.hg-modern-review-cart .view-cart-tabs {
    margin-top: 20px;
    padding: 18px;
    border: 1px solid #dce4ef;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 7px 22px rgba(7, 26, 61, .045);
}

.hg-modern-review-cart .view-cart-tabs .nav-tabs {
    margin-bottom: 17px;
}

.hg-modern-review-cart .view-cart-tabs .tab-content {
    padding: 0;
}

.hg-modern-review-cart .view-cart-tabs .form-group {
    margin-bottom: 10px;
}

.hg-modern-review-cart .view-cart-tabs .btn-block {
    min-height: 42px;
    border-color: #1468e8;
    background: #eef5ff;
    color: #1468e8;
    font-weight: 750;
}

.hg-modern-review-cart .view-cart-tabs .btn-block:hover {
    background: #1468e8;
    color: #ffffff;
}

/* Sticky order summary */

.hg-modern-review-cart #scrollingPanelContainer {
    position: relative;
}

.hg-modern-review-cart .order-summary {
    position: sticky;
    top: 22px;
    overflow: hidden;
    border: 1px solid #dce4ef;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 12px 34px rgba(7, 26, 61, .09);
}

.hg-modern-review-cart .order-summary > h2 {
    margin: 0;
    padding: 19px 21px;
    border-bottom: 1px solid #dce4ef;
    background: linear-gradient(135deg, #f6f9ff, #ffffff);
    color: #071a3d;
    font-size: 21px;
    font-weight: 750;
}

.hg-modern-review-cart .summary-container {
    padding: 21px;
}

.hg-modern-review-cart .summary-container .subtotal,
.hg-modern-review-cart .summary-container .bordered-totals > div,
.hg-modern-review-cart .summary-container .recurring-totals {
    padding: 11px 0;
    border-bottom: 1px solid #edf1f6;
    color: #526177;
    font-size: 13px;
}

.hg-modern-review-cart .summary-container .subtotal span:last-child,
.hg-modern-review-cart .summary-container .bordered-totals span:last-child {
    color: #071a3d;
    font-weight: 750;
}

.hg-modern-review-cart .recurring-totals {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.hg-modern-review-cart .recurring-charges {
    text-align: right;
}

.hg-modern-review-cart .recurring-charges .cost {
    color: #071a3d;
    font-weight: 750;
}

.hg-modern-review-cart .total-due-today {
    margin: 18px -21px -1px;
    padding: 21px;
    background: #071a3d;
    color: #ffffff;
    text-align: center;
}

.hg-modern-review-cart .total-due-today .amt {
    display: block;
    margin-bottom: 4px;
    color: #ffffff;
    font-size: 29px;
    font-weight: 800;
}

.hg-modern-review-cart .total-due-today > span:last-child {
    color: rgba(255,255,255,.72);
    font-size: 12px;
    font-weight: 650;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.hg-modern-review-cart .summary-container > .text-right {
    margin-top: 19px;
    text-align: center !important;
}

.hg-modern-review-cart .btn-checkout {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 50px;
    border-color: #1468e8;
    border-radius: 8px;
    background: #1468e8;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
}

.hg-modern-review-cart .btn-checkout:hover,
.hg-modern-review-cart .btn-checkout:focus {
    border-color: #0e52bd;
    background: #0e52bd;
    color: #ffffff;
}

.hg-modern-review-cart .btn-checkout i {
    margin-left: 8px;
}

.hg-modern-review-cart .btn-continue-shopping {
    margin-top: 9px;
    color: #68758b;
    font-size: 12px;
    font-weight: 650;
}

.hg-modern-review-cart .express-checkout-buttons {
    margin-top: 14px;
}

/* Empty cart */

.hg-modern-review-cart .view-cart-empty {
    padding: 50px 25px;
    color: #68758b;
    font-size: 16px;
    text-align: center;
}

/* Responsive review cart */

@media (max-width: 991px) {
    .hg-modern-review-cart .secondary-cart-body,
    .hg-modern-review-cart .secondary-cart-sidebar {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
    }

    .hg-modern-review-cart .secondary-cart-sidebar {
        margin-top: 22px;
    }

    .hg-modern-review-cart .order-summary {
        position: static;
    }
}

@media (max-width: 767px) {
    .hg-modern-review-cart .header-lined h1 {
        font-size: 28px;
    }

    .hg-modern-review-cart .view-cart-items-header {
        display: none;
    }

    .hg-modern-review-cart .view-cart-items {
        border-radius: 11px;
    }

    .hg-modern-review-cart .view-cart-items .item {
        padding: 17px;
    }

    .hg-modern-review-cart .item-price {
        margin-top: 14px;
        text-align: left;
    }

    .hg-modern-review-cart .empty-cart {
        text-align: left;
    }
}

/* =========================================================
   HostGennie modern checkout
   ========================================================= */

#order-standard_cart.hg-modern-checkout {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding-bottom: 25px;
    color: #17233c;
}

.hg-modern-checkout > .row {
    display: block;
    margin-right: 0;
    margin-left: 0;
}

.hg-modern-checkout .hg-checkout-body {
    width: 100%;
    max-width: none;
    padding-right: 0;
    padding-left: 0;
}

.hg-modern-checkout .sidebar-collapsed {
    display: none !important;
}

.hg-modern-checkout .header-lined {
    margin-bottom: 25px;
}

.hg-modern-checkout .header-lined h1 {
    margin: 0 0 8px;
    color: #071a3d;
    font-size: 34px;
    font-weight: 750;
    letter-spacing: -.025em;
}

.hg-modern-checkout .header-lined p {
    margin: 0;
    color: #68758b;
    font-size: 15px;
}

/* Existing/new customer switch */

.hg-modern-checkout .already-registered {
    margin-bottom: 20px;
    padding: 15px 17px;
    border: 1px solid #dce4ef;
    border-radius: 10px;
    background: #f7faff;
}

.hg-modern-checkout .already-registered p {
    margin: 8px 0;
    color: #526177;
}

.hg-modern-checkout .already-registered .btn {
    min-height: 38px;
    border-radius: 7px;
    font-size: 12px;
    font-weight: 750;
}

/* Main two-column checkout structure */

.hg-checkout-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(330px, .85fr);
    gap: 22px;
    align-items: start;
}

.hg-checkout-main {
    min-width: 0;
    padding: 23px;
    border: 1px solid #dce4ef;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 9px 28px rgba(7, 26, 61, .055);
}

.hg-checkout-sidebar {
    min-width: 0;
}

.hg-checkout-payment-card {
    position: sticky;
    top: 22px;
    overflow: hidden;
    padding: 21px;
    border: 1px solid #dce4ef;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 12px 34px rgba(7, 26, 61, .09);
}

/* Checkout section headings */

.hg-modern-checkout .sub-heading {
    position: relative;
    margin: 27px 0 17px;
    padding: 0 0 11px;
    border-bottom: 1px solid #dce4ef;
    text-align: left;
}

.hg-modern-checkout .sub-heading:first-child {
    margin-top: 0;
}

.hg-modern-checkout .sub-heading span.primary-bg-color {
    display: block;
    padding: 0;
    background: transparent !important;
    color: #071a3d !important;
    font-size: 17px;
    font-weight: 750;
    line-height: 1.35;
}

.hg-modern-checkout .sub-heading::after {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 46px;
    height: 2px;
    background: #1468e8;
    content: "";
}

/* Form fields */

.hg-modern-checkout .form-group {
    margin-bottom: 15px;
}

.hg-modern-checkout .form-control,
.hg-modern-checkout .field {
    min-height: 45px;
    border: 1px solid #cfd9e7;
    border-radius: 7px;
    background: #ffffff;
    color: #17233c;
    box-shadow: none;
}

.hg-modern-checkout textarea.form-control {
    min-height: 100px;
}

.hg-modern-checkout .form-control:focus,
.hg-modern-checkout .field:focus {
    border-color: #1468e8;
    box-shadow: 0 0 0 3px rgba(20, 104, 232, .1);
}

.hg-modern-checkout .prepend-icon .field {
    padding-left: 42px;
}

.hg-modern-checkout .prepend-icon .field-icon {
    top: 0;
    width: 41px;
    height: 45px;
    color: #7b8799;
    line-height: 45px;
}

.hg-modern-checkout .field-help-text,
.hg-modern-checkout .small.text-muted {
    color: #68758b !important;
    line-height: 1.5;
}

/* Account selector */

.hg-modern-checkout .account-select-container .account {
    height: 100%;
    padding: 15px;
    border: 1px solid #dce4ef;
    border-radius: 9px;
    background: #f9fbfe;
}

.hg-modern-checkout .account-select-container .account.active {
    border-color: #1468e8;
    background: #eef5ff;
    box-shadow: 0 0 0 2px rgba(20, 104, 232, .08);
}

/* Alerts */

.hg-modern-checkout .alert {
    border-radius: 9px;
}

.hg-modern-checkout .checkout-error-feedback {
    margin-bottom: 20px;
}

/* Password and security */

.hg-modern-checkout .generate-password {
    border-color: #cfd9e7;
    border-radius: 7px;
    background: #f5f8fc;
    color: #1468e8;
    font-weight: 700;
}

.hg-modern-checkout .password-strength-meter {
    padding-top: 4px;
}

.hg-modern-checkout .password-strength-meter .progress {
    height: 8px;
    border-radius: 10px;
}

/* Payment total */

.hg-modern-checkout #totalDueToday {
    margin: 0 0 18px;
    padding: 21px 17px;
    border: 0;
    border-radius: 10px;
    background: #071a3d;
    color: rgba(255, 255, 255, .72);
    font-size: 12px;
    font-weight: 650;
    letter-spacing: .025em;
    text-transform: uppercase;
}

.hg-modern-checkout #totalCartPrice {
    display: block;
    margin-top: 6px;
    color: #ffffff;
    font-size: 30px;
    font-weight: 800;
    letter-spacing: -.025em;
}

/* Credit balance */

.hg-modern-checkout .apply-credit-container {
    margin-bottom: 18px;
    padding: 15px;
    border: 1px solid #dce4ef;
    border-radius: 9px;
    background: #f8faff;
}

.hg-modern-checkout .apply-credit-container p {
    margin-bottom: 10px;
    color: #071a3d;
    font-weight: 700;
}

/* Payment gateways */

.hg-modern-checkout #paymentGatewaysContainer {
    margin: 0 0 18px;
}

.hg-modern-checkout #paymentGatewaysContainer > p {
    margin-bottom: 10px;
}

.hg-modern-checkout #paymentGatewaysContainer .text-center {
    display: grid;
    gap: 9px;
    text-align: left !important;
}

.hg-modern-checkout #paymentGatewaysContainer label.radio-inline {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 48px;
    margin: 0;
    padding: 12px 14px;
    border: 1px solid #dce4ef;
    border-radius: 8px;
    background: #f9fbfe;
    color: #17233c;
    font-weight: 700;
    cursor: pointer;
    transition:
        border-color .15s ease,
        background-color .15s ease,
        box-shadow .15s ease;
}

.hg-modern-checkout #paymentGatewaysContainer label.radio-inline:hover {
    border-color: #9dbce9;
    background: #f2f7ff;
}

.hg-modern-checkout #paymentGatewaysContainer label.radio-inline:has(
    input:checked
) {
    border-color: #1468e8;
    background: #eef5ff;
    box-shadow: 0 0 0 2px rgba(20, 104, 232, .08);
}

.hg-modern-checkout #paymentGatewaysContainer input {
    margin-right: 9px;
}

/* Card and remote gateway inputs */

.hg-modern-checkout #paymentGatewayInput,
.hg-modern-checkout .cc-input-container {
    margin: 16px 0;
}

.hg-modern-checkout .cc-input-container {
    padding: 16px;
    border: 1px solid #dce4ef;
    border-radius: 9px;
    background: #f9fbfe;
}

.hg-modern-checkout .cc-input-container ul {
    padding-left: 0;
    list-style: none;
}

/* Notes and marketing */

.hg-modern-checkout .marketing-email-optin {
    margin: 18px 0;
    padding: 15px;
    border: 1px solid #dce4ef;
    border-radius: 9px;
    background: #f9fbfe;
}

.hg-modern-checkout .marketing-email-optin h4 {
    color: #071a3d;
    font-weight: 750;
}

/* Terms and order button */

.hg-modern-checkout .hg-checkout-payment-card > .text-center {
    margin-top: 19px;
    padding-top: 18px;
    border-top: 1px solid #dce4ef;
}

.hg-modern-checkout #accepttos {
    margin-right: 4px;
}

.hg-modern-checkout label[for="accepttos"],
.hg-modern-checkout #accepttos + * {
    color: #526177;
}

.hg-modern-checkout #btnCompleteOrder {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 52px;
    margin-top: 9px;
    padding: 12px 19px;
    border: 1px solid #1468e8;
    border-radius: 8px;
    background: #1468e8;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
    box-shadow: 0 8px 18px rgba(20, 104, 232, .2);
}

.hg-modern-checkout #btnCompleteOrder:hover,
.hg-modern-checkout #btnCompleteOrder:focus {
    border-color: #0e52bd;
    background: #0e52bd;
    color: #ffffff;
}

.hg-modern-checkout #btnCompleteOrder i {
    margin-left: 8px;
}

/* SSL/security notice */

.hg-modern-checkout .checkout-security-msg {
    margin: 20px 0 0;
    padding: 13px 16px;
    border: 1px solid #cce2d5;
    border-radius: 9px;
    background: #f0faf4;
    color: #286545;
    font-size: 12px;
    text-align: center;
}

.hg-modern-checkout .checkout-security-msg i {
    margin-right: 6px;
}

/* Responsive checkout */

@media (max-width: 991px) {
    .hg-checkout-layout {
        grid-template-columns: 1fr;
    }

    .hg-checkout-payment-card {
        position: static;
    }
}

@media (max-width: 767px) {
    .hg-modern-checkout .header-lined h1 {
        font-size: 28px;
    }

    .hg-checkout-main,
    .hg-checkout-payment-card {
        padding: 17px;
    }

    .hg-modern-checkout .already-registered .pull-right {
        float: none !important;
        margin-bottom: 10px;
    }

    .hg-modern-checkout .already-registered .btn {
        width: 100%;
    }

    .hg-modern-checkout #totalCartPrice {
        font-size: 27px;
    }
}

/* =========================================================
   HostGennie checkout final polish
   ========================================================= */

.hg-modern-checkout .hg-checkout-layout {
    grid-template-columns: minmax(0, 1.85fr) minmax(315px, .8fr);
}

/* Remove remaining legacy heading lines */
.hg-modern-checkout .sub-heading::before,
.hg-modern-checkout .sub-heading span::before,
.hg-modern-checkout .sub-heading span::after {
    display: none !important;
    width: 0 !important;
    content: none !important;
}

.hg-modern-checkout .sub-heading {
    overflow: visible;
    min-height: 0;
    padding: 0 0 10px;
    text-align: left !important;
}

.hg-modern-checkout .sub-heading span.primary-bg-color {
    position: static;
    width: auto;
    margin: 0;
    border: 0;
}

/* Phone field and international-code component */
.hg-modern-checkout .iti,
.hg-modern-checkout .intl-tel-input,
.hg-modern-checkout .phone-number-field {
    width: 100% !important;
    max-width: 100%;
}

.hg-modern-checkout #inputPhone {
    width: 100%;
    min-width: 0;
    padding-right: 10px;
}

/* Balanced city, state and postcode fields */
.hg-modern-checkout .hg-billing-city,
.hg-modern-checkout .hg-billing-state,
.hg-modern-checkout .hg-billing-postcode {
    flex: 0 0 33.333333%;
    width: 33.333333%;
    max-width: 33.333333%;
}

/* Domain contact selector */
.hg-modern-checkout #inputDomainContact {
    width: 100%;
    max-width: 100%;
}

/* Compact optional marketing section */
.hg-modern-checkout .marketing-email-optin {
    position: relative;
    margin: 16px 0;
    padding: 13px 14px;
    background: #f7faff;
}

.hg-modern-checkout .marketing-email-optin h4 {
    margin: 0 0 4px;
    font-size: 14px;
}

.hg-modern-checkout .marketing-email-optin p {
    margin: 0 0 9px;
    color: #68758b;
    font-size: 11px;
    line-height: 1.45;
}

/* Terms area */
.hg-modern-checkout #accepttos {
    width: 17px;
    height: 17px;
    vertical-align: middle;
}

.hg-modern-checkout #accepttos + * {
    line-height: 1.45;
}

/* Keep sidebar compact while allowing gateway fields to fit */
.hg-modern-checkout .hg-checkout-payment-card {
    overflow: visible;
}

.hg-modern-checkout #paymentGatewayInput iframe,
.hg-modern-checkout #paymentGatewayInput input,
.hg-modern-checkout #paymentGatewayInput select {
    max-width: 100%;
}

@media (max-width: 767px) {
    .hg-modern-checkout .hg-billing-city,
    .hg-modern-checkout .hg-billing-state,
    .hg-modern-checkout .hg-billing-postcode {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
    }
}

/* =========================================================
   Force modern checkout to use the full available width
   ========================================================= */

#order-standard_cart.hg-modern-checkout > .row {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

#order-standard_cart.hg-modern-checkout .cart-body.hg-checkout-body {
    float: none !important;
    display: block !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

#order-standard_cart.hg-modern-checkout .hg-cart-page-heading,
#order-standard_cart.hg-modern-checkout .already-registered,
#order-standard_cart.hg-modern-checkout #frmCheckout,
#order-standard_cart.hg-modern-checkout .checkout-security-msg {
    width: 100% !important;
    max-width: 100% !important;
}

#order-standard_cart.hg-modern-checkout .hg-checkout-layout {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: minmax(0, 2fr) minmax(340px, 0.9fr);
}

@media (max-width: 991px) {
    #order-standard_cart.hg-modern-checkout .hg-checkout-layout {
        grid-template-columns: 1fr;
    }
}

/* ==========================================================
   HostGennie modern domain pages v1
   ========================================================== */

.hg-modern-domain-page {
    width: 100%;
    max-width: 1120px;
    margin: 26px auto 65px;
}

/* Remove the old Categories and Actions sidebar */
.hg-modern-domain-page > .row {
    display: block;
    margin: 0;
}

.hg-modern-domain-page .cart-sidebar,
.hg-modern-domain-page .sidebar-collapsed {
    display: none !important;
}

.hg-modern-domain-page .cart-body {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    padding: 0 !important;
}

/* Page heading */
.hg-modern-domain-page .header-lined {
    margin: 0 0 24px;
    padding: 0;
    border: 0;
}

.hg-modern-domain-page .header-lined h1 {
    margin: 0 0 9px;
    color: #081d49;
    font-size: 38px;
    line-height: 1.12;
    letter-spacing: -1.1px;
    font-weight: 800;
}

.hg-modern-domain-page .header-lined h1::before {
    content: "DOMAIN SERVICES";
    display: block;
    margin-bottom: 11px;
    color: #0879ee;
    font-size: 11px;
    line-height: 1;
    letter-spacing: 1.7px;
    font-weight: 800;
}

.hg-domain-register-page .header-lined h1::after {
    content: "Find and secure the right domain for your website.";
    display: block;
    margin-top: 11px;
    color: #697990;
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: 0;
    font-weight: 400;
}

.hg-domain-transfer-page .header-lined h1::after {
    content: "Move your domain to HostGennie and manage it with your services.";
    display: block;
    margin-top: 11px;
    color: #697990;
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: 0;
    font-weight: 400;
}

/* Main search panel */
.hg-modern-domain-page .domain-checker-container,
.hg-modern-domain-page .domain-checker-bg {
    position: relative;
    margin: 0 0 27px;
    padding: 48px 44px !important;
    border: 1px solid #dce6f3;
    border-radius: 20px;
    background:
        radial-gradient(
            circle at 92% 8%,
            rgba(31, 132, 255, .17),
            transparent 30%
        ),
        linear-gradient(135deg, #071c49 0%, #0a347c 100%) !important;
    box-shadow: 0 20px 52px rgba(7, 28, 72, .16);
    overflow: hidden;
}

.hg-modern-domain-page .domain-checker-container::before,
.hg-modern-domain-page .domain-checker-bg::before {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    right: -135px;
    top: -165px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 50%;
}

.hg-modern-domain-page .domain-checker-container::after,
.hg-modern-domain-page .domain-checker-bg::after {
    content: "";
    position: absolute;
    width: 190px;
    height: 190px;
    left: -100px;
    bottom: -120px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 50%;
}

.hg-modern-domain-page .domain-checker-container form,
.hg-modern-domain-page .domain-checker-bg form,
.hg-modern-domain-page .domain-search {
    position: relative;
    z-index: 2;
    max-width: 820px;
    margin: 0 auto;
}

/* Search input */
.hg-modern-domain-page .domain-search .form-control,
.hg-modern-domain-page .domain-checker-container .form-control,
.hg-modern-domain-page .domain-checker-bg .form-control,
.hg-modern-domain-page input[name="query"],
.hg-modern-domain-page input[name="domain"] {
    min-height: 58px;
    border: 1px solid rgba(255, 255, 255, .30);
    border-radius: 11px;
    background: #fff;
    color: #122748;
    font-size: 16px;
    box-shadow: 0 9px 28px rgba(0, 0, 0, .15);
}

.hg-modern-domain-page .domain-search .form-control:focus,
.hg-modern-domain-page .domain-checker-container .form-control:focus,
.hg-modern-domain-page .domain-checker-bg .form-control:focus {
    border-color: #4ba5ff;
    box-shadow:
        0 0 0 4px rgba(63, 160, 255, .20),
        0 9px 28px rgba(0, 0, 0, .15);
}

/* Search and transfer buttons */
.hg-modern-domain-page .domain-search .btn,
.hg-modern-domain-page .domain-checker-container .btn,
.hg-modern-domain-page .domain-checker-bg .btn,
.hg-modern-domain-page .btn-primary {
    min-height: 52px;
    border: 0;
    border-radius: 9px;
    background: linear-gradient(135deg, #1688ff, #0870de);
    color: #fff;
    font-weight: 800;
    box-shadow: 0 10px 24px rgba(3, 91, 190, .25);
}

.hg-modern-domain-page .domain-search .btn:hover,
.hg-modern-domain-page .domain-checker-container .btn:hover,
.hg-modern-domain-page .domain-checker-bg .btn:hover,
.hg-modern-domain-page .btn-primary:hover {
    background: linear-gradient(135deg, #0877e9, #055ab7);
    color: #fff;
    transform: translateY(-1px);
}

/* Domain availability and result area */
.hg-modern-domain-page .domain-lookup-result,
.hg-modern-domain-page .domain-result,
.hg-modern-domain-page #domainSearchResults,
.hg-modern-domain-page #domainSuggestions {
    margin-top: 24px;
}

.hg-modern-domain-page .domain-available,
.hg-modern-domain-page .domain-unavailable,
.hg-modern-domain-page .domain-result {
    border-radius: 15px;
}

.hg-modern-domain-page .domain-available {
    color: #087e62;
}

.hg-modern-domain-page .domain-unavailable {
    color: #bd3348;
}

/* Suggested domain rows */
.hg-modern-domain-page .domain-suggestions,
.hg-modern-domain-page .domain-pricing,
.hg-modern-domain-page .domain-selection-options {
    margin-top: 24px;
}

.hg-modern-domain-page .domain-suggestion,
.hg-modern-domain-page .domain-pricing .row,
.hg-modern-domain-page .domain-selection-options .option {
    margin-bottom: 12px;
    padding: 17px 19px;
    border: 1px solid #dce5f1;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 7px 22px rgba(8, 35, 79, .055);
}

/* Default cards shown below the search */
.hg-modern-domain-page .promo-banner,
.hg-modern-domain-page .domain-promo-box,
.hg-modern-domain-page .card,
.hg-modern-domain-page .panel {
    border: 1px solid #dce5f1;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 9px 28px rgba(8, 35, 79, .06);
}

.hg-modern-domain-page .card-header,
.hg-modern-domain-page .panel-heading {
    border-bottom: 1px solid #e5ebf4;
    background: #f7faff;
    color: #13274c;
    font-weight: 800;
}

/* Secondary links */
.hg-modern-domain-page a:not(.btn) {
    color: #0874df;
}

.hg-modern-domain-page a:not(.btn):hover {
    color: #0558ac;
}

/* Add-to-cart result button */
.hg-modern-domain-page .btn-add-to-cart,
.hg-modern-domain-page .domain-add-to-cart {
    border-radius: 9px;
    font-weight: 800;
}

/* Remove legacy yellow/orange treatments */
.hg-modern-domain-page .bg-warning,
.hg-modern-domain-page .btn-warning {
    border-color: transparent !important;
    background: linear-gradient(135deg, #1688ff, #0870de) !important;
    color: #fff !important;
}

/* Alerts */
.hg-modern-domain-page .alert {
    border: 0;
    border-radius: 11px;
}

.hg-modern-domain-page .alert-info {
    background: #edf6ff;
    color: #155187;
}

.hg-modern-domain-page .alert-success {
    background: #e9f8f3;
    color: #116b55;
}

.hg-modern-domain-page .alert-danger {
    background: #fff0f2;
    color: #a62d42;
}

@media (max-width: 767px) {
    .hg-modern-domain-page {
        margin-top: 16px;
    }

    .hg-modern-domain-page .header-lined h1 {
        font-size: 31px;
    }

    .hg-modern-domain-page .domain-checker-container,
    .hg-modern-domain-page .domain-checker-bg {
        padding: 30px 20px !important;
        border-radius: 15px;
    }

    .hg-modern-domain-page .domain-search .form-control,
    .hg-modern-domain-page .domain-checker-container .form-control,
    .hg-modern-domain-page .domain-checker-bg .form-control {
        min-height: 54px;
    }

    .hg-modern-domain-page .input-group {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .hg-modern-domain-page .input-group .form-control,
    .hg-modern-domain-page .input-group .btn,
    .hg-modern-domain-page .input-group-btn,
    .hg-modern-domain-page .input-group-append {
        width: 100%;
        border-radius: 9px !important;
    }
}
