/* Put your CSS overrides here.
   This file stays safe across parent theme updates. */

/* Homepage hero outer box (inset + rounded, no shadow) */
section.hc-hero-boxed {
    width: 100%;
    background: #ffffff;
    padding: 12px 0;
}

/* Small portrait: hide language and notification controls */
@media (max-width: 430px) and (orientation: portrait) {
    header#header .tt-secondary-list > li.nav-item > .btn-sm.tt-header-action-btn,
    header#header .tt-secondary-list > li.tt-nav-item.tt-notification {
        display: none !important;
    }
}

/* Client home stat tiles: keep visible vertical spacing when cards wrap */
.primary-content .tiles.mb-4 > .row {
    row-gap: 14px;
}

/*
 * Client home stat tiles: white surface.
 * Parent hostim.css uses background: var(--gray-light); in dark mode child theme
 * --gray-light is ~#121212, so tiles stay dark unless overridden here.
 */
.primary-content .tiles .tile {
    background-color: #ffffff !important;
    color: #061a1c !important;
}

.primary-content .tiles .tile:hover {
    background-color: #f5f7fa !important;
    color: #061a1c !important;
}

.primary-content .tiles .tile .stat {
    color: #061a1c !important;
}

.primary-content .tiles .tile:hover .stat,
.primary-content .tiles .tile:hover .title,
.primary-content .tiles .tile:hover i {
    color: var(--primary) !important;
}

/* Cart: domain renewal strip — standard_cart/style.css sets #f8f8f8 and loads after child; win with scope + !important */
#order-standard_cart .domain-renewals,
#order-standard_cart #domainRenewals.domain-renewals {
    margin: 10px 0;
    border-top: 1px solid #ccc;
    background-color: #ffffff !important;
    background: #ffffff !important;
}

#order-standard_cart .domain-renewals .domain-renewal:nth-child(even) {
    background-color: #ffffff !important;
}

/* Status chips (e.g. "Expiring in N days"): match Order Summary bar — black surface, white type */
#order-standard_cart .domain-renewal .pull-right.float-right .label:not(.label-danger) {
    background-color: #111111 !important;
    background: #111111 !important;
    color: #ffffff !important;
    border: 1px solid #1a1a1a !important;
    border-radius: 0 !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em;
    font-size: 11px !important;
    line-height: 1.2 !important;
    padding: 7px 11px !important;
}

/* Domain renewals page: a bit more air above the footer */
#order-standard_cart:has(#domainRenewals) {
    padding-bottom: 56px !important;
}

/* "Showing X of Y domains" + Show All — same bar treatment as Order Summary heading */
#order-standard_cart .secondary-cart-body > .text-center:has(#linkShowAll) {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px 12px !important;
    margin: 0 !important;
    padding: 12px 14px !important;
    background: #111111 !important;
    color: #ffffff !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    letter-spacing: 0.2px !important;
    border: 1px solid #1a1a1a !important;
    text-align: center !important;
}

#order-standard_cart .secondary-cart-body > .text-center:has(#linkShowAll) #linkShowAll {
    color: #9be4be !important;
    font-weight: 800 !important;
    text-decoration: underline;
    text-underline-offset: 2px;
}

#order-standard_cart .secondary-cart-body > .text-center:has(#linkShowAll) #linkShowAll:hover,
#order-standard_cart .secondary-cart-body > .text-center:has(#linkShowAll) #linkShowAll:focus {
    color: #ffffff !important;
}

/* Flush with list below: strip bottom margin was removed; kill renewals block top margin/border in this layout */
#order-standard_cart .secondary-cart-body > .text-center:has(#linkShowAll) + #domainRenewals.domain-renewals {
    margin-top: 0 !important;
    border-top: 0 !important;
}

/* Add to Cart on domain renewals: same green CTA as View Cart */
#order-standard_cart #domainRenewals .btn-add-renewal-to-cart.btn-default,
#order-standard_cart .domain-renewals .btn-add-renewal-to-cart.btn-default {
    background: #009c4b !important;
    border: 1px solid #009c4b !important;
    color: #ffffff !important;
    border-radius: 0 !important;
    font-weight: 800 !important;
    letter-spacing: 0.2px;
    box-shadow: none !important;
}

#order-standard_cart #domainRenewals .btn-add-renewal-to-cart.btn-default:hover,
#order-standard_cart .domain-renewals .btn-add-renewal-to-cart.btn-default:hover {
    background: #008f45 !important;
    border-color: #008f45 !important;
    color: #ffffff !important;
}

#order-standard_cart #domainRenewals .btn-add-renewal-to-cart.btn-default:focus,
#order-standard_cart .domain-renewals .btn-add-renewal-to-cart.btn-default:focus {
    background: #008f45 !important;
    border-color: #008f45 !important;
    color: #ffffff !important;
}

#order-standard_cart #domainRenewals .btn-add-renewal-to-cart .to-add,
#order-standard_cart #domainRenewals .btn-add-renewal-to-cart .added,
#order-standard_cart .domain-renewals .btn-add-renewal-to-cart .to-add,
#order-standard_cart .domain-renewals .btn-add-renewal-to-cart .added {
    color: #ffffff !important;
}

#order-standard_cart #domainRenewals .btn-add-renewal-to-cart .to-add i,
#order-standard_cart .domain-renewals .btn-add-renewal-to-cart .to-add i {
    color: #ffffff !important;
}

/*
 * Domain renewals sidebar (#producttotal = .summary-container): ordersummary.tpl $renewals branch
 * uses .product-name + .clearfix rows + .summary-totals (not .subtotal). Match configure/view summary typography.
 */
#order-standard_cart #orderSummary #producttotal.summary-container,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container {
    font-size: 13px !important;
    line-height: 1.45 !important;
    color: #111111 !important;
}

#order-standard_cart #orderSummary #producttotal.summary-container > .product-name,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container > .product-name {
    display: block !important;
    font-weight: 900 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    color: #111111 !important;
    margin: 0 0 10px !important;
    letter-spacing: 0.2px !important;
}

#order-standard_cart #orderSummary #producttotal.summary-container > .clearfix,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container > .clearfix {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 14px !important;
    padding: 10px 0 !important;
    margin: 0 !important;
    border-top: 1px solid rgba(17, 17, 17, 0.10) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    color: #111111 !important;
}

#order-standard_cart #orderSummary #producttotal.summary-container > span.product-name + div.clearfix,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container > span.product-name + div.clearfix {
    border-top: 0 !important;
    padding-top: 2px !important;
}

#order-standard_cart #orderSummary #producttotal.summary-container > .clearfix > .pull-left.float-left,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container > .clearfix > .pull-left.float-left {
    float: none !important;
    flex: 1 1 auto !important;
    margin: 0 !important;
    text-align: left !important;
    min-width: 0 !important;
}

#order-standard_cart #orderSummary #producttotal.summary-container > .clearfix > .pull-right.float-right,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container > .clearfix > .pull-right.float-right {
    float: none !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    text-align: right !important;
    font-weight: 800 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    color: #111111 !important;
    white-space: nowrap !important;
}

#order-standard_cart #orderSummary #producttotal.summary-container > .clearfix > .pull-right.float-right > a,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container > .clearfix > .pull-right.float-right > a {
    margin-left: 8px !important;
    vertical-align: middle;
}

#order-standard_cart #orderSummary #producttotal.summary-container .summary-totals,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container .summary-totals {
    margin-top: 6px !important;
    padding-top: 10px !important;
    border-top: 1px solid rgba(17, 17, 17, 0.10) !important;
    /* WHMCS base .order-summary .summary-totals sets border-bottom — with our .total-due-today border-top that reads as a double rule */
    border-bottom: 0 !important;
}

#order-standard_cart #orderSummary #producttotal.summary-container .summary-totals .clearfix,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container .summary-totals .clearfix {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    gap: 12px !important;
    padding: 8px 0 !important;
    margin: 0 !important;
    border-top: 0 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.2px !important;
    color: #111111 !important;
}

#order-standard_cart #orderSummary #producttotal.summary-container .summary-totals .clearfix > .pull-left.float-left,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container .summary-totals .clearfix > .pull-left.float-left {
    float: none !important;
    flex: 1 1 auto !important;
    margin: 0 !important;
    min-width: 0 !important;
    opacity: 0.88;
}

#order-standard_cart #orderSummary #producttotal.summary-container .summary-totals .clearfix > .pull-right.float-right,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container .summary-totals .clearfix > .pull-right.float-right {
    float: none !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    text-align: right !important;
    font-weight: 800 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    color: #111111 !important;
}

#order-standard_cart #orderSummary #producttotal.summary-container .total-due-today,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container .total-due-today {
    text-align: center !important;
    padding-top: 12px !important;
    padding-bottom: 10px !important;
    margin-top: 4px !important;
    border-top: 1px solid rgba(17, 17, 17, 0.10) !important;
}

#order-standard_cart #orderSummary #producttotal.summary-container .total-due-today .amt,
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container .total-due-today .amt {
    display: block !important;
    font-size: 22px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
    color: #009c4b !important;
    letter-spacing: -0.2px !important;
}

#order-standard_cart #orderSummary #producttotal.summary-container .total-due-today span:not(.amt),
#order-standard_cart #scrollingPanelContainer #orderSummary #producttotal.summary-container .total-due-today span:not(.amt) {
    display: block !important;
    margin-top: 2px !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    color: #111111 !important;
    letter-spacing: 0.3px !important;
}

/* Client home: Unpaid Invoices + Domains Expiring Soon top row — equal card height */
.tt-client-home-priority-panels > [class*="col-"] > .card {
    height: 100%;
}

/* Sitejet-only block sits after main .tt-client-home-cards wrapper */
.tt-client-home-sitejet-last {
    margin-top: 0.25rem;
}

/* Dashboard mobile: hide Sitejet Builder panel */
@media (max-width: 767.98px) {
    #main-body .tt-client-home-sitejet-last {
        display: none !important;
    }
}

/* Logged-in client area: brand style for all card headers */
#main-body .card > .card-header {
    background: #111111 !important;
    background-color: #111111 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    min-height: 46px;
}

#main-body .card > .card-header .card-title,
#main-body .card > .card-header h1,
#main-body .card > .card-header h2,
#main-body .card > .card-header h3,
#main-body .card > .card-header h4,
#main-body .card > .card-header h5,
#main-body .card > .card-header h6 {
    color: #ffffff !important;
    margin: 0 !important;
    line-height: 1.25;
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}

#main-body .card > .card-header i {
    color: #9be4be !important;
}

#main-body .card > .card-header .badge {
    background: rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
}

#main-body .card > .card-header .float-right a.btn {
    background: #00a650 !important;
    border-color: #00a650 !important;
    color: #ffffff !important;
}

#main-body .card > .card-header .float-right a.btn:hover {
    background: #008f45 !important;
    border-color: #008f45 !important;
    color: #ffffff !important;
}

#main-body .card > .card-header .float-right {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    order: 99;
}

/* Many WHMCS panels output the button before the title inside the <h3>.
   Force visual order: icon/text first, action button last (right). */
#main-body .card > .card-header h3.card-title,
#main-body .card > .card-header h3.panel-title {
    width: 100%;
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}

#main-body .card > .card-header h3.card-title > .float-right,
#main-body .card > .card-header h3.panel-title > .float-right {
    order: 99;
    margin-left: auto;
}

/* Mobile dashboard: keep title left + button right (same row) */
@media (max-width: 575.98px) {
    #main-body .primary-content .tt-client-home-cards #servicesPanel > .card-header h3.card-title,
    #main-body .primary-content .tt-client-home-cards #ticketsPanel > .card-header h3.card-title,
    #main-body .primary-content .tt-client-home-cards #servicesPanel > .card-header h3.panel-title,
    #main-body .primary-content .tt-client-home-cards #ticketsPanel > .card-header h3.panel-title {
        width: 100%;
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        flex-wrap: nowrap;
    }

    #main-body .primary-content .tt-client-home-cards #servicesPanel > .card-header h3 > .float-right,
    #main-body .primary-content .tt-client-home-cards #ticketsPanel > .card-header h3 > .float-right {
        margin-left: auto !important;
        display: inline-flex !important;
        align-items: center;
        flex: 0 0 auto;
    }

    #main-body .primary-content .tt-client-home-cards #servicesPanel > .card-header .float-right a.btn,
    #main-body .primary-content .tt-client-home-cards #ticketsPanel > .card-header .float-right a.btn {
        min-height: 30px;
        padding: 0.30rem 0.6rem !important;
        line-height: 1.1 !important;
        white-space: nowrap;
    }
}

/* Client home: space between header button icon and text (template has no &nbsp; between </i> and label) */
@media (max-width: 767.98px) {
    #main-body .primary-content .tt-client-home-cards #servicesPanel > .card-header .float-right a.btn,
    #main-body .primary-content .tt-client-home-cards #ticketsPanel > .card-header .float-right a.btn {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        gap: 6px;
    }
}

/* Client area list tables (Services/Domains/etc.): brand header row */
#main-body .dataTables_wrapper table.table-list thead th,
#main-body table.table-list.dataTable thead th {
    background: #111111 !important;
    background-color: #111111 !important;
    color: #ffffff !important;
}

#main-body .dataTables_wrapper table.table-list thead th.sorting_asc,
#main-body .dataTables_wrapper table.table-list thead th.sorting_desc,
#main-body table.table-list.dataTable thead th.sorting_asc,
#main-body table.table-list.dataTable thead th.sorting_desc {
    background: #111111 !important;
    background-color: #111111 !important;
    color: #ffffff !important;
}

/* Invoices table: keep "Invoice #" header left aligned */
#tableInvoicesList thead th:first-child {
    text-align: left !important;
}

/* Invoices table mobile: hide Invoice Date + Due Date columns */
@media (max-width: 767.98px) {
    /* Reduce default large vertical gap on inner mobile pages */
    section#main-body {
        padding-top: 12px !important;
        padding-bottom: 12px !important;
    }

    #tableInvoicesList thead th:nth-child(2),
    #tableInvoicesList tbody td:nth-child(2),
    #tableInvoicesList thead th:nth-child(3),
    #tableInvoicesList tbody td:nth-child(3) {
        display: none !important;
    }

    /* Invoices page mobile: reduce excessive vertical spacing */
    #main-body .primary-content .tab-content {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    #main-body .primary-content .table-container {
        margin-top: 0 !important;
    }

    #tableInvoicesList_wrapper .listtable {
        margin-bottom: 4px !important;
    }

    /* Space below search before the table — domains + invoices + services + tickets (mobile) */
    #tabOverview #domainForm #tableDomainsList_wrapper .dataTables_filter,
    #tableInvoicesList_wrapper .dataTables_filter,
    #tableServicesList_wrapper .dataTables_filter,
    #tableTicketsList_wrapper .dataTables_filter {
        margin-bottom: 12px !important;
    }

    #tableInvoicesList_info {
        margin: 4px 0 6px !important;
        min-height: auto !important;
    }
}

/* Domains list: checkbox/select column left aligned */
#tableDomainsList thead th.width-fixed-20,
#tableDomainsList tbody td:first-child {
    text-align: left !important;
}

#tableDomainsList thead th.width-fixed-20 {
    padding-left: 10px !important;
}

/* Domains bulk action buttons */
#domainForm .tt-button-group .btn.btn-default {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    color: #111827 !important;
    font-weight: 600;
    border-radius: 0 !important;
    padding: 0.45rem 0.85rem !important;
    line-height: 1.15 !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
    border-bottom-color: #00a650 !important;
    border-bottom-width: 2px !important;
}

#domainForm .tt-button-group .btn.btn-default i {
    color: #00a650 !important;
}

#domainForm .tt-button-group .btn.btn-default:hover,
#domainForm .tt-button-group .btn.btn-default:focus {
    background: #f8fafc !important;
    border-color: #cbd5e1 !important;
    color: #0f172a !important;
    border-bottom-color: #008f45 !important;
}

#domainForm .tt-button-group .btn.btn-default:active {
    transform: translateY(1px);
}

#domainForm .tt-button-group .btn-group + .btn-group,
#domainForm .tt-button-group .btn + .btn,
#domainForm .tt-button-group .btn + .btn-group {
    margin-left: 8px !important;
}

#domainForm .tt-button-group .dropdown-menu {
    border-radius: 0;
    border: 1px solid #e5e7eb;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.12);
}

/* Domains table info line: show "Actions" dropdown alongside count */
#tableDomainsList_info {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    font-size: 13px;
    font-family: var(--font-family-monospace);
}

/* Hide top bulk action button row on domains page (all screen sizes) */
#tabOverview #domainForm > .tt-button-group {
    display: none !important;
}

#ttDomainsInlineActions .btn {
    border-radius: 0 !important;
    border: 1px solid var(--border-color) !important;
    background: #ffffff !important;
    color: var(--body-color) !important;
    font-weight: 500;
    font-size: 13px !important;
    font-family: var(--font-family-monospace);
    padding: 0.30rem 0.65rem !important;
    box-shadow: none !important;
}

#ttDomainsInlineActions .btn:hover,
#ttDomainsInlineActions .btn:focus {
    background: var(--gray-light) !important;
    border-color: var(--border-color) !important;
    color: var(--body-color) !important;
}

#ttDomainsInlineActions .dropdown-menu {
    border-radius: 0;
    border: 1px solid var(--border-color);
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);
    padding: 4px 0;
    min-width: 160px;
}

#ttDomainsInlineActions .dropdown-item {
    border-radius: 0;
    font-weight: 500;
    font-size: 13px;
    font-family: var(--font-family-monospace);
    color: var(--body-color);
    padding: 0.40rem 0.75rem;
    line-height: 1.3;
    display: flex;
    align-items: center;
    gap: 10px;
}

#ttDomainsInlineActions .dropdown-item .tt-dd-ico {
    width: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 18px;
}

#ttDomainsInlineActions .dropdown-item .tt-dd-label {
    flex: 1 1 auto;
}

#ttDomainsInlineActions .dropdown-item:hover,
#ttDomainsInlineActions .dropdown-item:focus {
    background: var(--gray-light);
    color: var(--body-color);
}

/* Keep table search input and actions dropdown on same row */
#tableDomainsList_filter label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

#tableDomainsList_filter label input {
    margin-right: 0 !important;
}

/* Domains list (desktop): space between search input and ⚙ Actions */
@media (min-width: 768px) {
    #domainForm #tableDomainsList_filter label input.form-control {
        margin-right: 16px !important;
    }

    #domainForm #tableDomainsList_filter label {
        gap: 14px;
    }
}

/* Mobile portrait: hide left domain sidebar/filter/actions blocks */
@media (max-width: 767.98px) and (orientation: portrait) {
    #main-body .row > .col-lg-4.col-xl-3 {
        display: none !important;
    }

    #main-body .row > .col-lg-8.col-xl-9.primary-content {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    #tabOverview #domainForm #tableDomainsList_info {
        display: none !important;
    }

    #tableInvoicesList_info {
        display: none !important;
    }

    #tableServicesList_info {
        display: none !important;
    }

    #tableTicketsList_info {
        display: none !important;
    }

    /* Hide mobile sidebar secondary Actions card header */
    #main-body .d-lg-none .sidebar.sidebar-secondary .card.card-sidebar.panel-default > .card-header {
        display: none !important;
    }

    /* Hide the entire bottom mobile secondary sidebar (Actions panel) */
    #main-body .d-lg-none .sidebar.sidebar-secondary,
    #main-body .d-lg-none.sidebar.sidebar-secondary {
        display: none !important;
    }
}

/* Client area mobile: hide left sidebar column and expand main content */
@media (max-width: 991.98px) {
    #main-body > .container > .row > .col-lg-4.col-xl-3 {
        display: none !important;
    }

    #main-body > .container > .row > .col-lg-8.col-xl-9.primary-content {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}

/* Client home: hide Recent News (template skips it; backup if hooks re-inject) */
#main-body .primary-content .tt-client-home-cards #announcementsPanel,
#main-body .primary-content .tt-client-home-cards div[menuItemName="Recent News"],
#main-body .primary-content .tt-client-home-cards div[menuitemname="Recent News"] {
    display: none !important;
}

/* Client-area sidebar panels (e.g. address / account details): white body */
#main-body .sidebar .card.card-sidebar .collapsable-card-body {
    background-color: #ffffff !important;
}

#main-body .sidebar .card.card-sidebar .collapsable-card-body > .card-body {
    background-color: #ffffff !important;
    color: #061a1c !important;
}

/* Your Info (Client Details): line1 company, line2 name, line3+ address (sidebar.tpl script) */
#main-body .sidebar .tt-client-details-cardbody,
#main-body .sidebar .card.card-sidebar[menuItemName="Client Details"] .collapsable-card-body > .card-body,
#main-body .sidebar .card.card-sidebar[menuitemname="Client Details"] .collapsable-card-body > .card-body {
    white-space: normal !important;
    text-align: left !important;
    line-height: 1.55;
    overflow-wrap: anywhere;
}

#main-body .sidebar .tt-client-details-cardbody strong,
#main-body .sidebar .tt-client-details-cardbody em,
#main-body .sidebar .card.card-sidebar[menuItemName="Client Details"] .collapsable-card-body .card-body strong,
#main-body .sidebar .card.card-sidebar[menuItemName="Client Details"] .collapsable-card-body .card-body em {
    display: inline !important;
    font-style: normal !important;
}

#main-body .sidebar .tt-client-details-cardbody em,
#main-body .sidebar .card.card-sidebar[menuItemName="Client Details"] .collapsable-card-body .card-body em {
    font-weight: 700 !important;
}

#main-body .sidebar .tt-client-details-cardbody .tt-client-details-address,
#main-body .sidebar .card.card-sidebar[menuItemName="Client Details"] .collapsable-card-body .card-body .tt-client-details-address {
    display: block;
    margin-top: 0.1em;
}

/* Open ticket — choose department cards (override bg-gray-light) */
#main-body .primary-content .card.tts-support-department,
#main-body .primary-content .card.tt-support-department {
    background-color: #ffffff !important;
    background: #ffffff !important;
}

#main-body .primary-content .card.tts-support-department .card-body,
#main-body .primary-content .card.tt-support-department .card-body {
    background-color: #ffffff !important;
    color: #061a1c !important;
}

/* Open ticket step 2 — main form card (Name / Email / Department / message) */
#main-body .primary-content form[action*="step=3"] > .card.bg-gray-light.tt-custom-card,
#main-body .primary-content form[action*="step=3"] > .card.tt-custom-card.bg-gray-light {
    background-color: #ffffff !important;
    background: #ffffff !important;
}

#main-body .primary-content form[action*="step=3"] > .card.bg-gray-light.tt-custom-card > .card-body,
#main-body .primary-content form[action*="step=3"] > .card.tt-custom-card.bg-gray-light > .card-body {
    background-color: #ffffff !important;
    color: #061a1c !important;
}

/*
 * Client area → Domains: DataTables table is wider than narrow viewports (dates + Status).
 * Let the table scroll horizontally instead of clipping the right columns.
 */
@media (max-width: 991.98px) {
    #main-body .primary-content.col-lg-8,
    #main-body .primary-content {
        min-width: 0;
    }

    #tabOverview #domainForm .table-container {
        overflow-x: auto;
        overflow-y: visible;
        -webkit-overflow-scrolling: touch;
        max-width: 100%;
    }

    #tabOverview #domainForm #tableDomainsList_wrapper {
        max-width: none;
    }

    #tabOverview #domainForm table#tableDomainsList.table.dataTable {
        width: max-content !important;
        max-width: none;
    }
}

/* Domains table on mobile: hide SSL + Registration Date columns */
@media (max-width: 767.98px) {
    /* After hiding columns on mobile, table should fill container (avoid right blank strip). */
    #tabOverview #domainForm table#tableDomainsList.table.dataTable {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Domains table header alignment on mobile */
    #tabOverview #domainForm table#tableDomainsList thead th {
        text-align: left !important;
    }

    /* SSL column (2nd) */
    #tabOverview #domainForm table#tableDomainsList thead th:nth-child(2),
    #tabOverview #domainForm table#tableDomainsList tbody td:nth-child(2) {
        display: none !important;
    }

    /* Registration Date column (4th) */
    #tabOverview #domainForm table#tableDomainsList thead th:nth-child(4),
    #tabOverview #domainForm table#tableDomainsList tbody td:nth-child(4) {
        display: none !important;
    }
}

/* Services table mobile: hide SSL + Pricing, left-align headers */
@media (max-width: 767.98px) {
    #tableServicesList thead th,
    #tableServicesList tbody td {
        text-align: left !important;
    }

    /* SSL column (1st) */
    #tableServicesList thead th:nth-child(1),
    #tableServicesList tbody td:nth-child(1) {
        display: none !important;
    }

    /* Pricing column (3rd) */
    #tableServicesList thead th:nth-child(3),
    #tableServicesList tbody td:nth-child(3) {
        display: none !important;
    }
}

/* Support tickets list mobile: hide Department column */
@media (max-width: 767.98px) {
    #tableTicketsList thead th:nth-child(1),
    #tableTicketsList tbody td:nth-child(1) {
        display: none !important;
    }

    #tableTicketsList colgroup col:nth-child(1) {
        width: 0 !important;
        display: none !important;
    }

    #tableTicketsList_wrapper {
        overflow-x: hidden !important;
        max-width: 100% !important;
    }

    #tableTicketsList.table.dataTable {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 100% !important;
        table-layout: fixed !important;
    }

    #tableTicketsList thead th,
    #tableTicketsList tbody td {
        text-align: left !important;
    }
}

/* Checkout boxes: remove rounded corners and shadows */
#order-standard_cart .already-registered,
#order-standard_cart #frmCheckout {
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Keep recurring annually amount on one line */
#order-standard_cart #orderSummary #recurringAnnually {
    white-space: nowrap !important;
    display: inline-block !important;
}

#order-standard_cart #orderSummary .total-due-today.total-due-today-padded {
    padding-top: 0 !important;
}

/* Checkout mobile: button in first row, text below */
@media (max-width: 767.98px) {
    #order-standard_cart .already-registered {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: flex-start !important;
        gap: 8px !important;
    }

    #order-standard_cart .already-registered > .pull-right,
    #order-standard_cart .already-registered > .pull-right.float-right,
    #order-standard_cart .already-registered > .pull-right.float-right.text-lg-right {
        order: 1 !important;
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
    }

    #order-standard_cart .already-registered > p {
        order: 2 !important;
        width: 100% !important;
        margin: 0 !important;
    }

    #order-standard_cart .already-registered > .pull-right .btn:not(.w-hidden),
    #order-standard_cart .already-registered > .pull-right.float-right .btn:not(.w-hidden),
    #order-standard_cart .already-registered > .pull-right.float-right.text-lg-right .btn:not(.w-hidden) {
        width: 100% !important;
        min-height: 40px !important;
    }
}

/* Checkout top row for moved login/register button */
#order-standard_cart .tt-checkout-top-row {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 8px;
}

@media (max-width: 767.98px) {
    #order-standard_cart .tt-checkout-top-row {
        display: block;
        margin-bottom: 8px;
    }

    #order-standard_cart .tt-checkout-top-row .btn:not(.w-hidden) {
        width: 100% !important;
        min-height: 40px !important;
    }
}

/* Checkout header normalization: action buttons outside intro box */
#order-standard_cart .tt-checkout-top-actions {
    margin-bottom: 10px !important;
}

#order-standard_cart .tt-checkout-top-actions .btn.w-hidden {
    display: none !important;
}

#order-standard_cart .tt-checkout-top-actions .btn:not(.w-hidden) {
    min-width: 220px;
}

/* Domain selection options: keep option blocks white */
#order-standard_cart .domain-selection-options .option {
    background-color: #ffffff !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb;
}

#order-standard_cart .domain-selection-options .option-selected {
    background-color: #ffffff !important;
    background: #ffffff !important;
    border-color: #00a650 !important;
}

/* WHMCS utility: hide w-hidden by default but allow JS to show via inline style */
#order-standard_cart .w-hidden:not([style]) {
    display: none !important;
}

@media (max-width: 767.98px) {
    #order-standard_cart .tt-checkout-top-actions {
        width: 100% !important;
    }

    #order-standard_cart .tt-checkout-top-actions .btn:not(.w-hidden) {
        width: 100% !important;
        min-height: 40px !important;
        margin: 0 !important;
        display: block !important;
        float: none !important;
        position: static !important;
        transform: none !important;
        line-height: 1.2 !important;
    }
}

/* Final iPhone SE homepage enforcement (annotation-driven) */
@media (max-width: 390px) {
    /* Logo area compact + balanced */
    #frmDomainHero .navbar-brand {
        margin: 0 auto 4px !important;
    }

    #frmDomainHero .navbar-brand .logo-img {
        width: 142px !important;
        max-width: 142px !important;
    }

    /* Keep mobile toolbar and search input with visible breathing space */
    #frmDomainHero .tt-secondary-list {
        margin-bottom: 14px !important;
    }

    #frmDomainHero .tt-hero-domain-input {
        margin-top: 20px !important;
    }

    /* Burger icon same boxed look as nearby icons */
    #frmDomainHero .tt-secondary-list .nav-item.ml-2.d-xl-none > .btn.nav-link {
        border: 1px solid #d5dae3 !important;
        border-radius: 6px !important;
        width: 36px !important;
        min-width: 36px !important;
        height: 36px !important;
        min-height: 36px !important;
        padding: 0 !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    /* Search/Transfer: centered and closer to each other */
    #frmDomainHero .row.d-sm-none.mt-3 {
        justify-content: center !important;
        gap: 8px !important;
    }

    #frmDomainHero .row.d-sm-none.mt-3 > [class*="col-"] {
        flex: 0 0 132px !important;
        max-width: 132px !important;
    }

    #frmDomainHero .row.d-sm-none.mt-3 .btn {
        width: 100% !important;
    }

    /* Exact mobile header DOM fixes from inspection */
    header#header > .navbar.navbar-light > .container > .tt-main-header.tt-toolbar-wrap > ul.tt-secondary-list > li.nav-item.ml-2.d-xl-none > button.btn.nav-link {
        width: 36px !important;
        min-width: 36px !important;
        height: 36px !important;
        min-height: 36px !important;
        padding: 0 !important;
        border: 1px solid #d5dae3 !important;
        border-radius: 6px !important;
        background: #ffffff !important;
        box-shadow: none !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    header#header > .navbar.navbar-light > .container > a.navbar-brand.mr-3 {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-top: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 4px !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        margin-top: -10px !important;
    }

    header#header > .navbar.navbar-light > .container > a.navbar-brand.mr-3 .logo-img {
        width: 156px !important;
        max-width: 156px !important;
        height: auto !important;
    }
}

@media (max-width: 667px) and (max-height: 390px) and (orientation: landscape) {
    /* Nav (hamburger) icon: same bordered style as other header icons */
    header#header > .navbar.navbar-light > .container > .tt-main-header.tt-toolbar-wrap > ul.tt-secondary-list > li.nav-item.ml-2.d-xl-none > button.btn.nav-link {
        width: 36px !important;
        min-width: 36px !important;
        height: 36px !important;
        min-height: 36px !important;
        padding: 0 !important;
        border: 1px solid #d5dae3 !important;
        border-radius: 6px !important;
        background: #ffffff !important;
        box-shadow: none !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* Keep domain action buttons aligned right after search bar */
    #frmDomainHero .tt-domain-hero-input-group > .input-group-append.d-none.d-sm-block {
        display: none !important;
    }

    #frmDomainHero .row.d-sm-none.mt-3 {
        margin-top: 10px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
    }

    #frmDomainHero .row.d-sm-none.mt-3 > [class*="col-"] {
        flex: 1 1 0 !important;
        max-width: 50% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    #frmDomainHero .row.d-sm-none.mt-3 .btn {
        width: 100% !important;
    }

    /* WP circle should sit over the center glow, not right-shifted */
    section.hc-hero-boxed .tt-animation-icon-img {
        left: 52% !important;
        right: auto !important;
        top: 36% !important;
        max-width: 56px !important;
        transform: translateX(-50%) !important;
    }

    /* Footer language button should not break awkwardly */
    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom .list-inline .btn {
        white-space: nowrap !important;
        max-width: none !important;
    }

    /* Migration feature card: keep image to the right of text */
    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 16px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 58% !important;
        max-width: 58% !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 42% !important;
        max-width: 42% !important;
        justify-content: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(180px, 100%) !important;
    }
}

@media (max-width: 390px) {
    /* Google reviews: prevent horizontal scrollbar on compact portrait */
    .tt-google-reviews-section .tt-google-reviews-card {
        overflow-x: hidden !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .tt-google-reviews-section .tt-google-reviews-card iframe {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: hidden !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }

    .tt-google-reviews-section .tt-google-reviews-card iframe::-webkit-scrollbar {
        display: none !important;
    }
}

@media (max-width: 767.98px) {
    /* Hide homepage hero illustration (cube + wp icon) on mobile */
    section.hc-hero-boxed .tt-hero-two .row {
        min-height: auto !important;
        row-gap: 0 !important;
    }

    section.hc-hero-boxed .tt-hero-two .row > .col-lg-6:last-child {
        display: none !important;
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero-img-wrap {
        display: none !important;
    }

    section.hc-hero-boxed .tt-animation-icon-img {
        display: none !important;
    }

    /* Remove extra vertical space after hiding illustration */
    section.hc-hero-boxed > .pt-60.tt-hero-two {
        min-height: auto !important;
        height: auto !important;
        padding-bottom: 10px !important;
    }

    /* CTA support cards: show two items per row on mobile */
    .tt-cta-content .tt-support-list {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px !important;
        width: 100% !important;
    }

    .tt-cta-content .tt-support-list > li,
    .tt-cta-content .tt-support-list > li.list-inline-item {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
    }

    .tt-cta-content .tt-support-item {
        width: 100% !important;
        margin-top: 0 !important;
        padding: 16px 10px !important;
    }
}

/* Mobile portrait: hide footer-adjacent CTA + "Your Account" shortcut strip (tt-cta.tpl, tt-account-link.tpl) */
@media (max-width: 991.98px) and (orientation: portrait) {
    section.bg-white:has(.tt-cta-content),
    section.bg-gradient.pt-60.mb-lg-5.mb-md-0 {
        display: none !important;
    }
}

/* The actual hero "box" */
section.hc-hero-boxed > .pt-60.tt-hero-two {
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    border-radius: 22px;
    overflow: hidden;
    /* Reduce above-the-fold height across screens */
    min-height: clamp(210px, 28vh, 260px) !important;
    height: auto !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    /* Keep the hero gradient inside the box (brand-toned) */
    background:
        radial-gradient(900px 360px at 18% 28%, color-mix(in srgb, var(--primary) 36%, transparent), transparent 62%),
        radial-gradient(720px 320px at 72% 52%, color-mix(in srgb, var(--primary) 28%, #0b3b2e), transparent 62%),
        linear-gradient(238deg,
            color-mix(in srgb, var(--primary) 24%, #0a2a2c) 30.98%,
            color-mix(in srgb, var(--primary) 12%, #061a1c) 70.6%
        ) !important;
}

/* Hero layout hardening (scoped to homepage boxed hero) */
section.hc-hero-boxed .tt-hero-two .container {
    width: 100%;
}

section.hc-hero-boxed .tt-hero-two .row {
    row-gap: 18px;
    min-height: clamp(505px, 65vh, 845px);
}

section.hc-hero-boxed .tt-hero-two .tt-hero p.lead {
    max-width: 52ch;
}

section.hc-hero-boxed .tt-hero-two .tt-hero-btns .btn {
    min-height: 44px;
    border-radius: 10px !important;
    padding: 10px 18px;
    font-weight: 800;
}

section.hc-hero-boxed .tt-hero-two .tt-hero-img-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
}

section.hc-hero-boxed .tt-hero-two .tt-hero-img-wrap img.hero-img {
    width: 100%;
    max-width: min(560px, 92%);
    height: auto;
}

@media (max-width: 767.98px) {
    section.hc-hero-boxed {
        padding: 14px 0;
    }

    section.hc-hero-boxed > .pt-60.tt-hero-two {
        /* Match other sections' 12px container gutters on mobile */
        width: calc(100% - 24px);
        border-radius: 16px;
        min-height: clamp(460px, 72vh, 720px) !important;
        height: auto !important;
        padding-top: 32px !important;
        padding-bottom: 18px !important;
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero h1 {
        font-size: clamp(26px, 7vw, 34px);
        line-height: 1.18;
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero p.lead {
        font-size: 14.5px;
        line-height: 1.55;
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero-btns .btn {
        width: 100%;
        max-width: 320px;
    }
}

/* Hero floating icon — desktop placement */
@media (min-width: 992px) {
    section.hc-hero-boxed .tt-animation-icon-img {
        position: absolute;
        left: auto;
        right: 43%;
        top: 24%;
        max-width: 80px;
        height: auto;
        pointer-events: none;
        backface-visibility: hidden;
        animation: bounce 1s ease-in-out 0s infinite alternate;
    }
}

@media (max-width: 991.98px) {
    section.hc-hero-boxed .tt-hero-two .tt-hero {
        text-align: center;
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero p.lead {
        max-width: 60ch;
        margin-left: auto;
        margin-right: auto;
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero-btns {
        justify-content: center;
    }

    section.hc-hero-boxed .tt-animation-icon-img {
        right: 22%;
        top: 16%;
        max-width: 64px;
    }
}

@media (max-width: 767.98px) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 14%;
        top: 10%;
        max-width: 56px;
    }
}

/* Google reviews block on homepage */
.tt-google-reviews-section .tt-google-reviews-card {
    border: 1px solid #e4ebf5;
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    padding: 28px !important;
    overflow: hidden;
}

.tt-google-reviews-section .tt-google-reviews-card iframe {
    display: block;
    border: 0;
    width: 100% !important;
    max-width: 100% !important;
    /* Prevent subpixel overflow that can cause horizontal scrollbars on mobile */
    min-width: 100%;
}

@media (max-width: 767.98px) {
    .tt-google-reviews-section .tt-google-reviews-card iframe {
        /* Give the widget more vertical room on mobile to avoid inner scrollbars */
        height: clamp(520px, 72vh, 720px) !important;
    }
}

/* Homepage hosting options section (DRG style) */
.tt-hosting-options {
    background: #ffffff;
    font-family: "Open Sans", var(--font-family-sans-serif), Arial, sans-serif;
}

.tt-hosting-options__head {
    margin-bottom: 26px;
}

.tt-hosting-options .row.g-3 {
    row-gap: 16px;
}

.tt-hosting-options__head h6 {
    font-family: inherit;
    font-size: 13px;
    font-weight: 600;
    color: #6b7280;
    margin-bottom: 8px;
}

.tt-hosting-options__head h2 {
    font-family: inherit;
    font-size: 32px;
    line-height: 1.2;
    letter-spacing: -0.2px;
    color: #111827;
    font-weight: 800;
    margin-bottom: 10px;
}

.tt-hosting-options__head p {
    font-family: inherit;
    max-width: 620px;
    margin: 0;
    font-size: 16px;
    line-height: 1.65;
    font-weight: 400;
    color: #6b7280;
}

.tt-hosting-options__feature {
    min-height: 100%;
    border-radius: 12px;
    background: linear-gradient(108deg, #083725 0%, #0b5a37 48%, #0f7a47 100%);
    border: 1px solid rgba(0, 166, 80, 0.35);
    padding: 28px;
    position: relative;
    overflow: hidden;
    display: flex;
    justify-content: space-between;
    gap: 18px;
}

.tt-hosting-options__feature-content {
    position: relative;
    z-index: 1;
    max-width: 320px;
}

.tt-hosting-options__feature-content h6 {
    font-family: inherit;
    display: inline-block;
    color: #e8fff2;
    border: 1px solid rgba(204, 255, 228, 0.75);
    border-radius: 4px;
    font-size: 13px;
    padding: 6px 10px;
    margin-bottom: 14px;
}

.tt-hosting-options__feature-content h4 {
    font-family: inherit;
    color: #f4fff8;
    font-size: 36px;
    line-height: 1.25;
    font-weight: 700;
    margin-bottom: 20px;
}

.tt-hosting-options__feature-btn {
    font-family: inherit;
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 6px;
    color: #f2fff8 !important;
    border: 1px solid rgba(212, 255, 232, 0.8);
    background: rgba(12, 35, 20, 0.28);
    font-size: 14px;
    font-weight: 600;
    text-decoration: none !important;
}

.tt-hosting-options__feature-btn:hover {
    background: rgba(0, 166, 80, 0.26);
    border-color: rgba(212, 255, 232, 0.95);
}

.tt-hosting-options__feature-image {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 170px;
}

.tt-hosting-options__feature-image img {
    width: 170px;
    height: auto;
}

.tt-hosting-options__card {
    min-height: 100%;
    border: 1px solid #d5ddf0;
    border-radius: 10px;
    background: #ffffff;
    padding: 26px 22px;
}

.tt-hosting-options__card img {
    width: 48px;
    height: 48px;
    margin-bottom: 16px;
}

.tt-hosting-options__card > a.tt-hosting-options__title {
    font-family: inherit;
    display: block;
    color: var(--heading-color);
    font-size: 18px;
    line-height: 28px;
    font-weight: 600;
    height: 26px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    margin-bottom: 12px;
    text-decoration: none;
}

.tt-hosting-options__card > a.tt-hosting-options__title:hover {
    color: var(--primary);
}

.tt-hosting-options__card p {
    font-family: inherit;
    font-size: 14px;
    line-height: 1.65;
    font-weight: 400;
    color: #60708d;
    margin-bottom: 14px;
}

.tt-hosting-options__card h6 {
    font-family: inherit;
    color: #334155;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.1px;
    margin-bottom: 12px;
}

.tt-hosting-options__price-amount {
    color: #111827;
    font-size: 19px;
    font-weight: 800;
    margin-left: 4px;
}

.tt-hosting-options__price-period {
    color: #334155;
    font-size: 12px;
    font-weight: 800;
}

.tt-hosting-options__arrow {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: #eef2ff;
    color: #233154;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 700;
}

a.tt-hosting-options__arrow {
    text-decoration: none !important;
    box-sizing: border-box;
}

a.tt-hosting-options__arrow:hover {
    background: #dbeafe;
    color: var(--primary);
}

@media (max-width: 991.98px) {
    .tt-hosting-options__feature {
        flex-direction: column;
        align-items: flex-start;
    }

    .tt-hosting-options__feature-content h4 {
        font-size: 28px;
    }

    .tt-hosting-options__card > a.tt-hosting-options__title {
        font-size: 18px;
        line-height: 28px;
        height: 26px;
    }

    .tt-hosting-options__card h6 {
        font-size: 13px;
    }

    .tt-hosting-options__price-amount {
        font-size: 17px;
    }

    .tt-hosting-options__feature-image {
        min-width: 0;
    }
}

.tt-google-reviews-section .tt-google-reviews-actions .btn {
    min-width: 210px;
    font-weight: 700;
    border-radius: 8px !important;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.tt-google-reviews-section .tt-google-reviews-actions {
    margin-bottom: 20px;
    gap: 10px;
}

/* Hide the top Google review action buttons row */
.tt-google-reviews-section .tt-google-reviews-actions {
    display: none !important;
}

/* Keep package checkbox and plan title perfectly aligned */
#order-standard_cart .tt-domain-cpanel-packages .tt-cpanel-package .panel-body label,
#order-standard_cart .tt-domain-cpanel-packages .tt-cpanel-package .panel-body label.hover {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    line-height: 1.35;
    margin-bottom: 6px;
}

#order-standard_cart .tt-domain-cpanel-packages .tt-cpanel-package .panel-body label input[type="checkbox"],
#order-standard_cart .tt-domain-cpanel-packages .tt-inline-order-check {
    margin: 0;
    vertical-align: middle;
}

.tt-google-reviews-section .tt-section-heading h2 {
    color: #111827;
    font-weight: 800;
    letter-spacing: -0.2px;
}

.tt-google-reviews-section .tt-section-heading p {
    color: #4b5563;
}

.tt-google-reviews-section .tt-google-reviews-actions .btn-outline-primary {
    border-color: #d1d5db !important;
    color: #111827 !important;
    background: #ffffff !important;
}

.tt-google-reviews-section .tt-google-reviews-actions .btn-outline-primary:hover {
    border-color: #9ca3af !important;
    background: #f9fafb !important;
}

.tt-google-reviews-section .tt-google-reviews-actions .btn-primary {
    background: var(--primary) !important;
    border-color: var(--primary) !important;
    color: #ffffff !important;
}

.tt-google-reviews-section .tt-google-reviews-actions .btn-primary:hover {
    filter: brightness(0.94);
}

@media (max-width: 767.98px) {
    .tt-google-reviews-section .tt-google-reviews-card {
        padding: 18px !important;
        border-radius: 10px;
    }

    .tt-google-reviews-section .tt-google-reviews-actions .btn {
        width: 100%;
        min-width: 0;
    }
}

/* Empty shopping cart */
#order-standard_cart .view-cart-empty {
    padding: 30px 15px;
    text-align: center;
    background-color: #fff;
}

/* View cart remove button + confirmation modal polish */
#order-standard_cart .view-cart-item .btn-remove-from-cart {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    border: 1px solid #e2e8f0;
    background: #ffffff;
    color: #64748b;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all .2s ease;
    padding: 0;
    text-decoration: none !important;
}

#order-standard_cart .view-cart-item .col-sm-1.hidden-xs.d-none.d-sm-block {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    padding-left: 10px;
}

#order-standard_cart .view-cart-item .btn.btn-link.btn-xs.btn-remove-from-cart {
    min-width: 34px;
    max-width: 34px;
    min-height: 34px;
    max-height: 34px;
    margin: 0 auto;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
}

#order-standard_cart .view-cart-item .btn-remove-from-cart:empty::before {
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 12px;
    line-height: 1;
}

#order-standard_cart .view-cart-item .btn-remove-from-cart:hover {
    color: #b91c1c;
    border-color: #fecaca;
    background: #fef2f2;
}

#order-standard_cart .view-cart-item .btn-remove-from-cart i {
    font-size: 13px;
    line-height: 1;
}

#order-standard_cart .view-cart-item .item {
    padding-right: 24px !important;
}

.btn {
    font-size: 14px;
    padding: 0.75rem 1rem;
    font-family: var(--font-family-monospace);
}

#order-standard_cart .already-registered.clearfix {
    display: none !important;
}

/* Review & Checkout (view cart) brand styling */
#order-standard_cart .cart-body.w-100 {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

section#main-body #order-standard_cart > .row > .cart-body.w-100 {
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

/* Match domain-search result page breathing/width */
#order-standard_cart.tt-viewcart-brand {
    width: 100%;
    max-width: var(--tt-container-max-header-footer);
    margin-left: auto;
    margin-right: auto;
}

/* Configure Product page: same width and brand language */
#order-standard_cart.tt-configure-brand {
    width: 100%;
    max-width: var(--tt-container-max-header-footer);
    margin-left: auto;
    margin-right: auto;
}

#order-standard_cart.tt-configure-brand .cart-body.w-100 > .row {
    margin-left: 0;
    margin-right: 0;
    gap: 0;
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
}

#order-standard_cart.tt-configure-brand .cart-body.w-100 {
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    background: #ffffff;
    border: 0 !important;
    border-radius: 14px;
    box-shadow: none !important;
    padding: 16px !important;
}

#order-standard_cart.tt-configure-brand .secondary-cart-body {
    flex: 0 0 68%;
    max-width: 68%;
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0 12px 0 0;
    box-shadow: none;
}

#order-standard_cart.tt-configure-brand #scrollingPanelContainer {
    flex: 0 0 32%;
    max-width: 32%;
    padding: 0 0 0 12px;
}

#order-standard_cart.tt-configure-brand .secondary-cart-sidebar {
    flex: 0 0 32%;
    max-width: 32%;
    padding: 0 0 0 12px;
}

#order-standard_cart.tt-configure-brand #orderSummary {
    margin-top: 0 !important;
}

#order-standard_cart.tt-configure-brand .product-info {
    border: 1px solid #d5dde8 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 12px 14px 0;
    overflow: hidden;
}

#order-standard_cart.tt-configure-brand .product-title {
    background: #1b293b !important;
    color: #ffffff !important;
    border-radius: 0 !important;
    padding: 11px 14px !important;
    margin: 0 !important;
    font-weight: 700;
    font-size: 22px;
    line-height: 1.2;
    border-bottom: 1px solid #142131;
}

#order-standard_cart.tt-configure-brand .product-info > p {
    margin: 0;
    padding: 12px 14px;
    background: transparent;
    border: 0 !important;
    border-radius: 0 !important;
    color: #1f2937;
    font-size: 14px;
    line-height: 1.85;
    min-height: auto !important;
    height: auto !important;
    padding-bottom: 8px;
}

#order-standard_cart.tt-configure-brand .product-info p:last-child {
    margin-bottom: 0 !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #orderSummary {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: visible !important;
    margin-top: 0 !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #orderSummary > h2.font-size-30 {
    background: #5f5f62 !important;
    color: #ffffff !important;
    border-radius: 0 !important;
    border-bottom: 0 !important;
    padding: 12px !important;
    margin-bottom: 0 !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #orderSummary .order-summary > h2.font-size-30,
#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #orderSummary > h2.font-size-30 {
    background: #111111 !important;
    color: #ffffff !important;
    border-radius: 8px 8px 0 0 !important;
    margin: 0 !important;
    background-clip: padding-box;
}

#order-standard_cart #frmConfigureProduct .secondary-cart-body .product-info > p.product-title {
    background: #111111 !important;
    color: #ffffff !important;
    border-radius: 8px 8px 0 0 !important;
    margin: 0 !important;
}

#order-standard_cart #frmConfigureProduct .secondary-cart-body .product-info {
    border-top-left-radius: 8px !important;
    border-top-right-radius: 8px !important;
    overflow: hidden !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #orderSummary > .summary-container {
    background: #ffffff !important;
    border-radius: 0 0 var(--custom-radius) var(--custom-radius) !important;
    padding: 15px !important;
    margin-top: 0 !important;
}

/* Configure product: #producttotal typography/spacing like view-cart summary */
#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #producttotal.summary-container {
    font-size: 13px !important;
    line-height: 1.45 !important;
    color: #111111 !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #producttotal .product-name {
    display: block !important;
    font-weight: 800 !important;
    font-size: 14px !important;
    color: #111111 !important;
    margin: 2px 0 2px !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #producttotal .product-group {
    display: block !important;
    font-style: italic !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    color: rgba(17, 17, 17, 0.72) !important;
    margin: 0 0 10px !important;
}

/* Hide top product heading lines in confproduct summary */
#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #producttotal .product-name,
#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #producttotal .product-group {
    display: none !important;
}

/* Hide sales assistance warning info box */
#order-standard_cart .alert.alert-warning.info-text-sm {
    display: none !important;
}

/* Configure product mobile step card/addons: remove all rounding */
#order-standard_cart #frmConfigureProduct details.mobile-step-card,
#order-standard_cart #frmConfigureProduct details.mobile-step-card > summary,
#order-standard_cart #frmConfigureProduct details.mobile-step-card > .mobile-step-card__content,
#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel.panel-default.panel-addon {
    border-radius: 0 !important;
    box-shadow: none !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel.panel-default.panel-addon:hover,
#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel.panel-default.panel-addon .panel-body,
#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel.panel-default.panel-addon .panel-price,
#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel.panel-default.panel-addon .panel-add {
    border-radius: 0 !important;
    box-shadow: none !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > .col-sm-6 > .panel.card.panel-default.panel-addon,
#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > .col-sm-6 > .panel.card.panel-default.panel-addon > .panel-body.card-body,
#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > .col-sm-6 > .panel.card.panel-default.panel-addon > .panel-price,
#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > .col-sm-6 > .panel.card.panel-default.panel-addon > .panel-add {
    border-radius: 0 !important;
    box-shadow: none !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #producttotal .clearfix {
    padding: 10px 0 !important;
    margin: 0 !important;
    border-top: 1px solid rgba(17, 17, 17, 0.10) !important;
    font-weight: 700 !important;
    color: #111111 !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #producttotal .clearfix:first-of-type {
    border-top: 0 !important;
    padding-top: 12px !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #producttotal > .amt {
    display: block !important;
    text-align: center !important;
    font-size: 22px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
    color: #009c4b !important;
    letter-spacing: -0.2px !important;
    margin-top: 10px !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #producttotal > .amt + span {
    display: block !important;
    text-align: center !important;
    margin-top: 2px !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    color: #111111 !important;
    letter-spacing: 0.3px !important;
}

/* Configure product: apply view-cart row typography to Linux Lite/Fees/Annually lines */
#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #producttotal .clearfix {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 18px !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #producttotal .clearfix > .pull-left.float-left {
    float: none !important;
    flex: 1 1 auto !important;
    margin: 0 !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    color: #111111 !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #producttotal .clearfix > .pull-right.float-right {
    float: none !important;
    margin-left: 0 !important;
    min-width: 150px !important;
    text-align: left !important;
    padding-left: 30px !important;
    display: inline-block !important;
    white-space: nowrap !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    color: #111111 !important;
}

#order-standard_cart.tt-configure-brand #orderSummary {
    position: static !important;
    top: auto !important;
}

#order-standard_cart.tt-configure-brand .order-summary {
    position: static !important;
    top: auto !important;
}

#order-standard_cart.tt-configure-brand #scrollingPanelContainer {
    align-self: flex-start;
}

#order-standard_cart.tt-configure-brand #orderSummary .summary-container,
#order-standard_cart.tt-configure-brand #orderSummary .order-summary {
    overflow: hidden !important;
}

#order-standard_cart.tt-configure-brand #orderSummary .order-summary .text-center {
    margin-top: 10px !important;
    padding: 12px 0 14px !important;
    border-top: 1px solid #e5e7eb;
}

#order-standard_cart.tt-configure-brand #checkout.btn-checkout {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    line-height: 1.1;
    padding: 10px 22px !important;
}

/* Configure Product: keep summary moving with normal page scroll */
#order-standard_cart #frmConfigureProduct #orderSummary,
#order-standard_cart #frmConfigureProduct #orderSummary .order-summary,
#order-standard_cart #frmConfigureProduct #scrollingPanelContainer {
    position: static !important;
    top: auto !important;
}

#order-standard_cart #frmConfigureProduct .secondary-cart-sidebar,
#order-standard_cart #frmConfigureProduct #scrollingPanelContainer,
#order-standard_cart #frmConfigureProduct #orderSummary,
#order-standard_cart #frmConfigureProduct #orderSummary .summary-container,
#order-standard_cart #frmConfigureProduct #orderSummary .order-summary {
    transform: none !important;
    will-change: auto !important;
}

#order-standard_cart #frmConfigureProduct #orderSummary {
    margin-top: 0 !important;
    transition: none !important;
}

/* Configure Product: Alternate billing/addons styling */
#order-standard_cart #frmConfigureProduct .secondary-cart-body .field-container > .form-group {
    margin: 0 0 16px !important;
    padding: 10px 12px !important;
    background: #f8fafc;
    border: 1px dashed #cbd5e1;
    border-radius: 6px !important;
    box-shadow: none !important;
}

#order-standard_cart #frmConfigureProduct .secondary-cart-body .field-container > .form-group label {
    display: block;
    margin-bottom: 1px !important;
    font-size: 13px;
    font-weight: 600;
    color: #1f2937;
    text-transform: none;
    letter-spacing: 0;
    line-height: 1.2;
}

#order-standard_cart #frmConfigureProduct .secondary-cart-body .field-container > .form-group .form-control {
    min-height: 38px;
    height: 38px;
    width: 100%;
    max-width: 260px;
    border: 1px solid #d1d5db;
    border-radius: 6px !important;
    box-shadow: none !important;
    background: #ffffff !important;
    padding: 6px 32px 6px 10px !important;
    line-height: 1.2;
}

#order-standard_cart #frmConfigureProduct .secondary-cart-body .field-container > .form-group select#inputBillingcycle {
    appearance: auto;
    -webkit-appearance: menulist;
    -moz-appearance: menulist;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer {
    margin-top: 10px;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .sub-heading {
    margin: 0 0 18px !important;
    padding-bottom: 8px !important;
    border: 0;
    border-bottom: 1px solid #e5e7eb;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .sub-heading > span.primary-bg-color {
    display: inline-block;
    margin-bottom: 14px !important;
}

/* Configure product: helper lines under Available Add-ons + under Continue (hook tt_configureproduct_hints.php) */
#order-standard_cart #frmConfigureProduct #productAddonsContainer .tt-confproduct-hint--addons {
    margin: 0 0 14px !important;
    padding: 10px 12px;
    background: rgba(0, 156, 75, 0.08);
    border: 1px solid rgba(0, 156, 75, 0.35);
    border-radius: 6px;
    color: #0f172a !important;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.45;
}

#order-standard_cart #frmConfigureProduct #orderSummary .text-center .tt-confproduct-hint--continue {
    margin: 10px 0 0 !important;
    padding: 10px 12px;
    background: rgba(0, 156, 75, 0.08);
    border: 1px solid rgba(0, 156, 75, 0.35);
    border-radius: 6px;
    color: #0f172a !important;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.45;
    max-width: 320px;
    margin-left: auto !important;
    margin-right: auto !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon {
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05) !important;
    background: #ffffff !important;
    overflow: hidden;
    height: auto;
    transition: none;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .addon-products > div {
    margin-bottom: 12px;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon .panel-body {
    padding: 12px !important;
    min-height: auto;
    display: block;
    background: #ffffff;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon .panel-body label {
    display: block;
    align-items: center;
    gap: 8px;
    margin: 0 0 6px !important;
    font-size: 18px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.2;
    border-bottom: 0;
    padding-bottom: 0;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon .panel-body label input[type="checkbox"] {
    margin: 0;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon .panel-body br {
    display: none;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon .panel-body > :last-child {
    display: block;
    margin-top: 0;
    color: #475569;
    font-size: 14px;
    line-height: 1.55;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon .panel-price {
    border-top: 1px solid #f1f5f9 !important;
    padding: 10px 12px !important;
    font-weight: 800;
    background: #ffffff;
    font-size: 15px;
    color: #0f172a;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon .panel-add {
    padding: 10px 12px !important;
    border-top: 1px solid #f1f5f9;
    background: #ffffff;
    font-weight: 700;
    color: #00a650;
    text-align: left;
    display: block;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon .panel-add i {
    font-size: 12px;
    width: auto;
    height: auto;
    border-radius: 0;
    background: transparent;
    color: inherit;
    display: inline-block;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon.panel-addon-selected .panel-add {
    color: #00a650;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon.panel-addon-selected .panel-add i {
    background: transparent;
}

@media (max-width: 767.98px) {
    #order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon .panel-body {
        min-height: auto;
    }

    #order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-addon .panel-body label {
        font-size: 16px;
    }
}

/* Checkout page: full width + branded container */
#order-standard_cart.tt-checkout-brand {
    width: 100%;
    max-width: var(--tt-container-max-header-footer);
    margin-left: auto;
    margin-right: auto;
}

#order-standard_cart.tt-checkout-brand .cart-body.w-100 {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
}

#order-standard_cart.tt-checkout-brand .already-registered,
#order-standard_cart.tt-checkout-brand #frmCheckout {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
}

#order-standard_cart.tt-checkout-brand .already-registered {
    padding: 12px 14px;
    margin-bottom: 12px;
}

#order-standard_cart.tt-checkout-brand #frmCheckout {
    padding: 16px;
}

/*
 * Logged-in checkout: strip guest-only UI (toggle bar + create-new-account radio).
 * #containerExistingAccountSelect only renders when custtype≠new && logged-in.
 */
#order-standard_cart:has(#frmCheckout #containerExistingAccountSelect) #btnAlreadyRegistered,
#order-standard_cart:has(#frmCheckout #containerExistingAccountSelect) #btnNewUserSignup {
    display: none !important;
}

/* Collapse spacing when the JS-moved auth button strip only held those toggles */
#order-standard_cart:has(#frmCheckout #containerExistingAccountSelect) .tt-checkout-top-row {
    margin-bottom: 0 !important;
    min-height: 0 !important;
}

/*
 * Hide "Create new account" row on logged-in checkout.
 * 1) :has() direct-child (modern browsers)
 * 2) :last-child — standard_cart always outputs that option in the final column (after foreach $accounts)
 */
#order-standard_cart #frmCheckout #containerExistingAccountSelect > div[class*="col-"]:has(> .account.border-bottom),
#order-standard_cart #frmCheckout #containerExistingAccountSelect > div[class*="col-"]:last-child:has(.account.border-bottom) {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
}

/* Checkout: switch account — cards + label text */
#order-standard_cart #frmCheckout #containerExistingAccountSelect.account-select-container {
    margin: 0 0 20px !important;
    border-right: none !important;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect > [class*="col-"] {
    padding-left: 8px;
    padding-right: 8px;
    margin-bottom: 14px;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account {
    background: #fafbfc !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 16px 18px !important;
    margin: 0;
    transition: background 0.2s ease;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account:hover {
    border: none !important;
    box-shadow: none !important;
    background: #f4f6f8 !important;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account.active {
    background: #ecfdf5 !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 16px 18px !important;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account.border-bottom {
    border-radius: 0 !important;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account label.radio-inline {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100%;
    cursor: pointer;
    font-weight: 400;
    font-size: 15px;
    line-height: 1.5;
    color: #334155;
    letter-spacing: -0.01em;
    -webkit-font-smoothing: antialiased;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account label.radio-inline .address {
    flex: 1;
    min-width: 0;
}

/* Top line: name / company + status or currency badge */
#order-standard_cart #frmCheckout #containerExistingAccountSelect .account label.radio-inline .address > strong {
    font-size: 1.125rem;
    font-weight: 700;
    color: #0f172a;
    letter-spacing: -0.025em;
    line-height: 1.35;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account.active label.radio-inline .address > strong {
    color: #052e16;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account label.radio-inline .address .label {
    font-weight: 700;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    border-radius: 999px;
    padding: 4px 10px;
    vertical-align: middle;
    margin-left: 10px;
    border: 0;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account label.radio-inline .address .label.label-info {
    background: #e0f2fe !important;
    color: #0369a1 !important;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account label.radio-inline .address .label.label-default {
    background: #f1f5f9 !important;
    color: #475569 !important;
}

/* Address block — separate from name row */
#order-standard_cart #frmCheckout #containerExistingAccountSelect .account label.radio-inline .address .small {
    display: block;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #e8eef4;
    color: #64748b;
    font-size: 13px;
    line-height: 1.55;
    font-weight: 400;
    letter-spacing: 0;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account.active label.radio-inline .address .small {
    border-top-color: rgba(0, 166, 80, 0.22);
    color: #475569;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account label.radio-inline.hover .address > strong,
#order-standard_cart #frmCheckout #containerExistingAccountSelect .account:hover label.radio-inline .address > strong {
    color: #00a650;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account.active label.radio-inline.hover .address > strong,
#order-standard_cart #frmCheckout #containerExistingAccountSelect .account.active:hover label.radio-inline .address > strong {
    color: #047857;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account .account-select {
    flex-shrink: 0;
    margin-top: 6px !important;
    margin-right: 0 !important;
}

#order-standard_cart #frmCheckout #containerExistingAccountSelect .account.border-bottom label.radio-inline {
    align-items: center;
    font-weight: 600;
    font-size: 15px;
    color: #0f172a;
}

@media (max-width: 575.98px) {
    #order-standard_cart #frmCheckout #containerExistingAccountSelect .account {
        padding: 14px 14px !important;
    }

    #order-standard_cart #frmCheckout #containerExistingAccountSelect .account.active {
        padding: 14px 14px !important;
    }

    #order-standard_cart #frmCheckout #containerExistingAccountSelect .account label.radio-inline {
        font-size: 14px;
    }

    #order-standard_cart #frmCheckout #containerExistingAccountSelect .account label.radio-inline .address > strong {
        font-size: 1.05rem;
    }
}

/* Match width/layout of domain register results page across key cart steps */
#order-standard_cart.tt-viewcart-brand,
#order-standard_cart.tt-checkout-brand,
#order-standard_cart.tt-configure-brand,
#order-standard_cart.tt-confdomains-brand {
    width: 100%;
    max-width: 1170px;
    margin-left: auto;
    margin-right: auto;
}

#order-standard_cart.tt-viewcart-brand .cart-body,
#order-standard_cart.tt-checkout-brand .cart-body,
#order-standard_cart.tt-configure-brand .cart-body,
#order-standard_cart.tt-confdomains-brand .cart-body {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Keep main content + summary in one aligned 2-column grid inside cart-body */
#order-standard_cart.tt-viewcart-brand .secondary-cart-body,
#order-standard_cart.tt-configure-brand .secondary-cart-body {
    float: left !important;
    width: 68% !important;
    padding-right: 10px !important;
}

#order-standard_cart.tt-viewcart-brand .secondary-cart-sidebar,
#order-standard_cart.tt-configure-brand .secondary-cart-sidebar {
    float: right !important;
    width: 32% !important;
    padding-left: 10px !important;
}

#order-standard_cart.tt-confdomains-brand #frmConfigureDomains {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* Configure Domains page visual cleanup */
#order-standard_cart.tt-confdomains-brand {
    padding-bottom: 24px;
}

#order-standard_cart.tt-confdomains-brand .cart-body.w-100 {
    width: 100%;
    max-width: 100%;
    background: #ffffff !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 14px;
    padding: 16px !important;
}

#order-standard_cart.tt-confdomains-brand #frmConfigureDomains {
    padding: 0 !important;
}

#order-standard_cart.tt-confdomains-brand #frmConfigureDomains > .alert.alert-info {
    border: 1px solid #cde8f2;
    background: #eaf7fc !important;
    border-radius: 4px;
    padding: 10px 12px;
}

#order-standard_cart.tt-confdomains-brand #frmConfigureDomains > .alert.alert-info .btn {
    border-radius: 4px !important;
    border: 1px solid #d7dee8;
    background: #ffffff;
    color: #0f172a;
    font-weight: 500;
    font-size: 13px;
    line-height: 1.2;
    padding: 5px 10px;
}

#order-standard_cart.tt-confdomains-brand #frmConfigureDomains > .alert.alert-info > div[style*="display: flex"] {
    margin-top: 8px !important;
    gap: 8px !important;
    align-items: center;
}

#order-standard_cart.tt-confdomains-brand #frmConfigureDomains > .alert.alert-info .btn:hover {
    border-color: #b9c5d6;
    background: #f8fafc;
}

#order-standard_cart.tt-confdomains-brand .sub-heading {
    position: relative;
    height: 32px !important;
    border-top: 0 !important;
    text-align: center;
    margin-top: 14px;
    margin-bottom: 24px;
}

#order-standard_cart.tt-confdomains-brand .sub-heading::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    border-top: 1px solid #d7e2ea !important;
    z-index: 0;
}

#order-standard_cart.tt-confdomains-brand .sub-heading > span {
    display: inline-flex;
    position: relative;
    top: 2px;
    z-index: 2;
    align-items: center;
    min-height: 28px;
    padding: 2px 12px;
    border-radius: 6px;
    background: #eaf7fc !important;
    color: #0f172a !important;
    border: 1px solid #cde8f2;
    font-size: 13px;
    font-weight: 700;
}

#order-standard_cart.tt-confdomains-brand .tt-domain-cpanel-packages {
    margin-top: 8px;
    margin-bottom: 12px;
    padding: 10px 0 0;
    border-top: 0 !important;
}

#order-standard_cart.tt-confdomains-brand .tt-domain-cpanel-packages__head {
    margin-bottom: 10px;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: 0.1px;
}

#order-standard_cart.tt-confdomains-brand .tt-cpanel-package {
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    background: #ffffff;
    overflow: hidden;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.06);
}

#order-standard_cart.tt-confdomains-brand .tt-cpanel-package .panel-body {
    padding: 12px 12px 8px;
}

#order-standard_cart .tt-inline-order-check {
    display: none !important;
}

#order-standard_cart.tt-confdomains-brand .tt-cpanel-package-title {
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 4px;
}

#order-standard_cart.tt-confdomains-brand .tt-cpanel-package .tt-addon-desc {
    color: #64748b;
    font-size: 12px;
    line-height: 1.45;
}

#order-standard_cart.tt-confdomains-brand .tt-cpanel-package .panel-price {
    padding: 9px 12px;
    border-top: 1px solid #f1f5f9;
    font-weight: 800;
    color: #0f172a;
}

#order-standard_cart.tt-confdomains-brand .tt-cpanel-package .panel-add,
#order-standard_cart.tt-confdomains-brand .tt-cpanel-package .panel-add.tt-inline-order-link {
    margin: 0 10px 10px;
    width: calc(100% - 20px);
    min-height: 38px;
    border-radius: 0 !important;
    background: var(--primary) !important;
    border: 1px solid var(--primary) !important;
    color: #ffffff !important;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
}

@media (max-width: 767.98px) {
    #order-standard_cart.tt-confdomains-brand .tt-domain-cpanel-packages {
        margin-bottom: 10px;
        padding-top: 8px;
    }

    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package {
        border-radius: 10px !important;
        box-shadow: 0 8px 16px rgba(15, 23, 42, 0.05);
    }

    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package .panel-body {
        padding: 10px 10px 6px;
    }

    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package-title {
        margin-bottom: 3px;
        font-size: 13px;
        line-height: 1.25;
    }

    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package .tt-addon-desc {
        font-size: 11px;
        line-height: 1.4;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package .panel-price {
        padding: 7px 10px;
        font-size: 12px;
    }

    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package .panel-add,
    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package .panel-add.tt-inline-order-link {
        margin: 0 10px 10px;
        min-height: 34px;
        font-size: 12px;
    }
}

@media (max-width: 575.98px) {
    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package .panel-body {
        padding: 9px 9px 5px;
    }

    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package-title {
        font-size: 12.5px;
    }

    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package .tt-addon-desc {
        font-size: 10.5px;
    }

    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package .panel-price {
        padding: 6px 9px;
        font-size: 11.5px;
    }

    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package .panel-add,
    #order-standard_cart.tt-confdomains-brand .tt-cpanel-package .panel-add.tt-inline-order-link {
        width: calc(100% - 18px);
        margin: 0 9px 9px;
        min-height: 32px;
        border-radius: 8px !important;
        font-size: 11.5px;
    }
}

#order-standard_cart.tt-confdomains-brand .addon-products .panel-addon {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
}

#order-standard_cart.tt-confdomains-brand .addon-products .panel-addon .panel-body {
    padding: 12px;
}

#order-standard_cart.tt-confdomains-brand .addon-products .panel-addon .panel-price {
    border-top: 1px solid #f1f5f9;
    padding: 10px 12px;
    font-weight: 800;
}

#order-standard_cart.tt-confdomains-brand .text-center.pt-4 {
    margin-top: 4px;
    padding-top: 10px !important;
}

#order-standard_cart.tt-confdomains-brand .text-center.pt-4 .btn.btn-primary.btn-lg {
    min-width: 160px;
    min-height: 44px;
    border-radius: 0 !important;
    font-weight: 800;
    letter-spacing: 0.2px;
    box-shadow: none !important;
}

#order-standard_cart.tt-confdomains-brand #frmConfigureDomains .form-group > label {
    font-weight: 700 !important;
}

/* Generic fallback for configure-domains page states without tt-confdomains-brand class */
#order-standard_cart #frmConfigureDomains .text-center.pt-4 .btn.btn-primary.btn-lg {
    box-shadow: none !important;
    border-radius: 0 !important;
}

#order-standard_cart #frmConfigureDomains .row.addon-products > div[class*="col-"] .panel-addon,
#order-standard_cart #frmConfigureDomains .row.addon-products > div[class*="col-"] .panel-addon:hover,
#order-standard_cart #frmConfigureDomains .row.addon-products > div[class*="col-"] .panel-addon .panel-body,
#order-standard_cart #frmConfigureDomains .row.addon-products > div[class*="col-"] .panel-addon .panel-price,
#order-standard_cart #frmConfigureDomains .row.addon-products > div[class*="col-"] .panel-addon .panel-add {
    box-shadow: none !important;
}

#order-standard_cart #frmConfigureDomains .form-group > label {
    font-weight: 700 !important;
}

#order-standard_cart.tt-viewcart-brand .cart-body.w-100 > .row,
#order-standard_cart.tt-configure-brand .cart-body.w-100 > .row {
    margin-left: 0;
    margin-right: 0;
    gap: 0;
}

/* Keep viewcart content and summary left-right on desktop */
#order-standard_cart.tt-viewcart-brand .cart-body.w-100 > .row {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
}

#order-standard_cart.tt-viewcart-brand .cart-body.w-100 {
    width: 100%;
    max-width: 1170px;
    margin-left: auto;
    margin-right: auto;
    background: #ffffff;
    border: 0;
    border-radius: 14px;
    padding: 12px;
}

#order-standard_cart.tt-viewcart-brand .secondary-cart-body {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 16px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
}

#order-standard_cart.tt-viewcart-brand .secondary-cart-body {
    flex: 0 0 68%;
    max-width: 68%;
    background: transparent;
    border: 0;
    box-shadow: none;
    border-radius: 0;
    padding: 0 12px 0 0;
}

#order-standard_cart.tt-viewcart-brand .secondary-cart-sidebar {
    flex: 0 0 32%;
    max-width: 32%;
    padding: 0 0 0 12px !important;
}

#order-standard_cart .view-cart-items-header,
#order-standard_cart .view-cart-item.-header {
    background: #111111 !important;
    border: 1px solid #1a1a1a !important;
    border-radius: 0 !important;
    padding: 12px 14px;
    color: #ffffff !important;
    font-weight: 800;
    letter-spacing: 0.1px;
    margin-bottom: 10px;
}

/* View-cart branding: summary + empty cart + list border */
#order-standard_cart #orderSummary.order-summary,
#order-standard_cart #scrollingPanelContainer #orderSummary.order-summary {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Nested shell (domain-renewals.tpl, configureproduct.tpl): outer #orderSummary has no .order-summary class */
#order-standard_cart #orderSummary:not(.order-summary),
#order-standard_cart #scrollingPanelContainer #orderSummary:not(.order-summary) {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#order-standard_cart #orderSummary:not(.order-summary) .order-summary,
#order-standard_cart #scrollingPanelContainer #orderSummary:not(.order-summary) .order-summary {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

#order-standard_cart #orderSummary .summary-container,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container {
    background: #ffffff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin-top: 0 !important;
    border-top: 0 !important;
}

/* Make Order Summary heading visible (view-cart: h2 direct child; renewals/configure: h2 inside .order-summary) */
#order-standard_cart #orderSummary > h2.font-size-30,
#order-standard_cart #scrollingPanelContainer #orderSummary > h2.font-size-30,
#order-standard_cart #orderSummary .order-summary > h2.font-size-30,
#order-standard_cart #scrollingPanelContainer #orderSummary .order-summary > h2.font-size-30 {
    margin: 0 !important;
    padding: 12px 14px !important;
    background: #111111 !important;
    color: #ffffff !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
    letter-spacing: 0.2px !important;
    border: 1px solid #1a1a1a !important;
    border-bottom: 0 !important;
}

/* Nested order summary: CTA row + padding (domain renewals, configure product) */
#order-standard_cart #orderSummary:not(.order-summary) .summary-container,
#order-standard_cart #scrollingPanelContainer #orderSummary:not(.order-summary) .summary-container {
    padding: 12px 14px 14px !important;
}

#order-standard_cart #orderSummary:not(.order-summary) > .text-center,
#order-standard_cart #scrollingPanelContainer #orderSummary:not(.order-summary) > .text-center {
    margin-top: 0 !important;
    padding: 8px 12px 26px !important;
    border-top: 1px solid #e5e7eb;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

#order-standard_cart #orderSummary:not(.order-summary) #btnGoToCart.btn-primary,
#order-standard_cart #scrollingPanelContainer #orderSummary:not(.order-summary) #btnGoToCart.btn-primary {
    background: #009c4b !important;
    border: 1px solid #009c4b !important;
    color: #ffffff !important;
    border-radius: 0 !important;
    font-weight: 800 !important;
    letter-spacing: 0.2px;
    box-shadow: none !important;
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

#order-standard_cart #orderSummary:not(.order-summary) #btnGoToCart.btn-primary:hover,
#order-standard_cart #scrollingPanelContainer #orderSummary:not(.order-summary) #btnGoToCart.btn-primary:hover {
    background: #008f45 !important;
    border-color: #008f45 !important;
    color: #ffffff !important;
}

/* Order Summary typography (mobile + desktop) */
#order-standard_cart #orderSummary .summary-container .subtotal,
#order-standard_cart #orderSummary .summary-container .recurring-totals {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #111111 !important;
    letter-spacing: 0.2px !important;
}

#order-standard_cart #orderSummary .summary-container .subtotal {
    padding-top: 12px !important;
    opacity: 0.78 !important;
    margin-top: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
}

#order-standard_cart #orderSummary .summary-container .recurring-totals {
    padding-bottom: 10px !important;
    margin-top: 6px !important;
    padding-top: 10px !important;
    border-top: 1px solid rgba(17, 17, 17, 0.10) !important;
    font-weight: 900 !important;
    border-bottom: 0 !important;
}

#order-standard_cart #orderSummary .summary-container .subtotal .amt,
#order-standard_cart #orderSummary .summary-container .subtotal span:last-child,
#order-standard_cart #orderSummary .summary-container .recurring-totals .amt,
#order-standard_cart #orderSummary .summary-container .recurring-totals span:last-child {
    font-weight: 800 !important;
    color: #111111 !important;
}

#order-standard_cart #orderSummary .summary-container .total-due-today {
    text-align: center !important;
    padding-top: 12px !important;
    padding-bottom: 10px !important;
}

#order-standard_cart #orderSummary .summary-container .total-due-today .amt,
#order-standard_cart #orderSummary .summary-container #totalDueToday.amt {
    display: block !important;
    font-size: 22px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
    color: #009c4b !important;
    letter-spacing: -0.2px !important;
}

#order-standard_cart #orderSummary .summary-container .total-due-today span:not(.amt) {
    display: block !important;
    margin-top: 2px !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    color: #111111 !important;
    letter-spacing: 0.3px !important;
}

#order-standard_cart .view-cart-items {
    border-bottom-color: #111111 !important;
}

#order-standard_cart .view-cart-items .item {
    border-bottom: 1px solid rgba(17, 17, 17, 0.12) !important;
}

#order-standard_cart #btnEmptyCart {
    background: #009c4b !important;
    border: 1px solid #009c4b !important;
    color: #ffffff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 10px 14px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

#order-standard_cart #btnEmptyCart:hover {
    background: #008a42 !important;
    border-color: #008a42 !important;
    color: #ffffff !important;
}

#order-standard_cart .view-cart-item {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    background: #ffffff;
    padding: 14px 12px;
    margin-bottom: 12px;
}

#order-standard_cart .view-cart-item .item-title,
#order-standard_cart .view-cart-item .item-name {
    color: #0f172a;
    font-weight: 700;
}

#order-standard_cart .view-cart-item .item-domain {
    font-size: 18px !important;
    font-weight: 800 !important;
}

#order-standard_cart .view-cart-item .item-price,
#order-standard_cart .view-cart-item .item-total,
#order-standard_cart .view-cart-item .price,
#order-standard_cart .view-cart-item [class*="price"] {
    color: #0b5d36;
    font-weight: 800;
}

/* Apply-promo tab on view cart only — not span.promo sales slots in domain suggestions */
#order-standard_cart #applyPromo.promo {
    border: 1px dashed #cbd5e1;
    border-radius: 0 !important;
    background: #f8fafc;
    padding: 12px;
}

#order-standard_cart #applyPromo.promo .form-control {
    border: 1px solid #d1d5db;
    border-radius: 0 !important;
    min-height: 42px;
}

#order-standard_cart #applyPromo.promo .btn.btn-default,
#order-standard_cart #applyPromo.promo .btn.btn-block.btn-default {
    border: 1px solid color-mix(in srgb, var(--primary) 36%, #cbd5e1);
    color: #0f172a;
    background: #ffffff;
    border-radius: 0 !important;
    font-weight: 700;
}

/*
 * Suggested domains: span.promo is a sales-group slot. Templates may nest child spans (not :empty).
 * Hide until WHMCS adds .hot / .sale / .new (domain.group); then show badge.
 */
#order-standard_cart #domainSuggestions .domain-suggestion span.promo.w-hidden:not(.hot):not(.sale):not(.new),
#order-standard_cart #DomainSearchResults #domainSuggestions .domain-suggestion span.promo.w-hidden:not(.hot):not(.sale):not(.new) {
    display: none !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    min-height: 0 !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    flex: 0 0 0 !important;
    visibility: hidden !important;
}

#order-standard_cart #domainSuggestions .domain-suggestion span.promo.hot,
#order-standard_cart #domainSuggestions .domain-suggestion span.promo.sale,
#order-standard_cart #domainSuggestions .domain-suggestion span.promo.new,
#order-standard_cart #DomainSearchResults #domainSuggestions .domain-suggestion span.promo.hot,
#order-standard_cart #DomainSearchResults #domainSuggestions .domain-suggestion span.promo.sale,
#order-standard_cart #DomainSearchResults #domainSuggestions .domain-suggestion span.promo.new {
    display: inline-block !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    visibility: visible !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
}

#order-standard_cart .order-summary {
    position: sticky;
    top: 94px;
}

/*
 * Nested order summary (domain-renewals.tpl, configureproduct.tpl): outer wrapper is #orderSummary,
 * inner .order-summary is sticky but the CTA (#btnGoToCart / #btnCompleteProductConfig) is a *sibling*
 * below it — so on scroll the CTA slides under the stuck panel. Stick the whole outer shell instead.
 */
#order-standard_cart #scrollingPanelContainer #orderSummary:not(.order-summary) {
    position: sticky;
    top: 94px;
    z-index: 5;
    overflow: visible;
}

#order-standard_cart #scrollingPanelContainer #orderSummary:not(.order-summary) .order-summary {
    position: static !important;
    top: auto !important;
}

#order-standard_cart .summary-container {
    border: 1px solid #dbe4ef;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: none !important;
    overflow: hidden;
}

#order-standard_cart .summary-container .summary-title,
#order-standard_cart .summary-container .summary-header {
    background: linear-gradient(90deg, #0f172a 0%, #0b5d36 100%);
    color: #ffffff !important;
    padding: 12px 14px;
    font-weight: 800;
    letter-spacing: 0.2px;
}

#order-standard_cart .summary-container .recurring-totals,
#order-standard_cart .summary-container .subtotal,
#order-standard_cart .summary-container .total-due-today,
#order-standard_cart .summary-container .line-item {
    border-color: #edf2f7 !important;
}

#order-standard_cart .summary-container .total-due-today span,
#order-standard_cart .summary-container .amt,
#order-standard_cart .summary-container .total {
    color: #0b5d36;
    font-weight: 900;
}

#order-standard_cart #checkout.btn-checkout {
    background: var(--primary) !important;
    border-color: var(--primary) !important;
    color: #ffffff !important;
    border-radius: 0 !important;
    min-height: 46px;
    font-weight: 600;
    letter-spacing: 0.2px;
    box-shadow: none !important;
}

#order-standard_cart #checkout.btn-checkout:hover {
    filter: brightness(0.95);
}

#order-standard_cart #continueShopping.btn-continue-shopping {
    color: #0f172a !important;
    font-weight: 500;
    text-decoration: none;
    box-shadow: none !important;
}

#order-standard_cart #continueShopping.btn-continue-shopping:hover {
    color: var(--primary) !important;
    text-decoration: underline;
}

@media (max-width: 991.98px) {
    #order-standard_cart.tt-viewcart-brand {
        max-width: 100%;
    }

    #order-standard_cart.tt-configure-brand {
        max-width: 100%;
    }

    #order-standard_cart.tt-checkout-brand {
        max-width: 100%;
    }

    #order-standard_cart.tt-confdomains-brand {
        max-width: 100%;
    }

    #order-standard_cart.tt-viewcart-brand .secondary-cart-body,
    #order-standard_cart.tt-configure-brand .secondary-cart-body,
    #order-standard_cart.tt-viewcart-brand .secondary-cart-sidebar,
    #order-standard_cart.tt-configure-brand .secondary-cart-sidebar {
        float: none !important;
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    #order-standard_cart.tt-viewcart-brand .cart-body.w-100 > .row,
    #order-standard_cart.tt-configure-brand .cart-body.w-100 > .row {
        flex-wrap: wrap;
        gap: 10px;
    }

    #order-standard_cart.tt-viewcart-brand .cart-body.w-100 > .row {
        background: transparent;
        border: 0;
        border-radius: 0;
        padding: 0;
    }

    #order-standard_cart.tt-configure-brand .cart-body.w-100 > .row {
        background: transparent;
        border: 0;
        border-radius: 0;
        padding: 0;
    }

    #order-standard_cart.tt-viewcart-brand .secondary-cart-body,
    #order-standard_cart.tt-configure-brand .secondary-cart-body {
        padding: 10px;
    }

    #order-standard_cart.tt-viewcart-brand .order-summary,
    #order-standard_cart.tt-configure-brand .order-summary {
        position: static;
        top: auto;
        margin-top: 12px;
    }
}

#modalRemoveItem,
#modalEmptyCart {
    padding: 14px !important;
}

#modalRemoveItem .modal-dialog,
#modalEmptyCart .modal-dialog {
    width: min(560px, calc(100vw - 28px));
    max-width: min(560px, calc(100vw - 28px));
    min-height: calc(100vh - 28px);
    margin: 14px auto;
    display: flex;
    align-items: center;
}

#modalRemoveItem .modal-content,
#modalEmptyCart .modal-content {
    width: 100%;
    border: 1px solid #dbe7df;
    border-radius: 14px;
    box-shadow: 0 24px 58px rgba(7, 30, 20, 0.22);
    overflow: hidden;
}

#modalRemoveItem .modal-body,
#modalEmptyCart .modal-body {
    padding: 26px 24px 16px;
    text-align: center;
    background: linear-gradient(180deg, #ffffff 0%, #f8fcfa 100%);
}

#modalRemoveItem .modal-title,
#modalEmptyCart .modal-title {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px !important;
    color: #0f172a;
}

#modalRemoveItem .modal-title i,
#modalEmptyCart .modal-title i {
    font-size: 36px !important;
    color: #00a650;
}

#modalRemoveItem .modal-footer,
#modalEmptyCart .modal-footer {
    border-top: 1px solid #f1f5f9;
    padding: 14px 18px 18px;
    display: flex;
    justify-content: center;
    gap: 10px;
}

#modalRemoveItem .modal-footer .btn,
#modalEmptyCart .modal-footer .btn {
    min-width: 120px;
    border-radius: 10px !important;
    font-weight: 700;
}

#modalRemoveItem .modal-footer .btn.btn-default,
#modalEmptyCart .modal-footer .btn.btn-default {
    background: #ffffff !important;
    border: 1px solid #d1d5db !important;
    color: #0f172a !important;
}

#modalRemoveItem .modal-footer .btn.btn-primary,
#modalEmptyCart .modal-footer .btn.btn-primary {
    background: var(--primary) !important;
    border-color: var(--primary) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 16px rgba(0, 166, 80, 0.22);
}

#modalRemoveItem .modal-footer .btn.btn-primary:hover,
#modalEmptyCart .modal-footer .btn.btn-primary:hover {
    filter: brightness(0.95);
}

#modalRemoveItem .close,
#modalEmptyCart .close {
    font-size: 24px;
    line-height: 1;
    opacity: 0.55;
}

#modalRemoveItem .close:hover,
#modalEmptyCart .close:hover {
    opacity: 0.9;
}

@media (max-width: 575.98px) {
    #modalRemoveItem .modal-body,
    #modalEmptyCart .modal-body {
        padding: 18px 16px 12px;
    }

    #modalRemoveItem .modal-footer,
    #modalEmptyCart .modal-footer {
        padding: 12px 12px 14px;
    }

    #modalRemoveItem .modal-footer .btn,
    #modalEmptyCart .modal-footer .btn {
        min-width: 0;
        width: 100%;
    }
}

/* Hide Elfsight attribution pill text/link only, keep reviews visible */
.tt-google-reviews-card a[href*="elfsight.com/google-reviews-widget"] {
    display: none !important;
}

/* Scope hide to this exact Elfsight Google Reviews root */
.eapps-google-reviews-0767254e-c728-4069-b7b6-fd2db576dd25-custom-css-root a[href*="elfsight.com/google-reviews-widget"],
.eapps-google-reviews-0767254e-c728-4069-b7b6-fd2db576dd25-custom-css-root a[href*="utm_campaign=free-widget"],
.eapps-google-reviews-0767254e-c728-4069-b7b6-fd2db576dd25-custom-css-root a[href*="utm_source=websites"][href*="google-reviews"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

:root {
    --primary: #00a650;
    --primary-dark: #111111;
    --primary-darker: #0b0b0b;
    --primary-light: #d8f5e6;
    --custom-radius: 0px;
    --tt-accent-orange: #f97316;
    --tt-surface: #f4f8f6;
    --tt-surface-soft: #eef5f1;
    --tt-ink: #111827;
    --body-color: #2a2a2a;
    --heading-color: #111111;
    --border-dark-color: #1f1f1f;
    --tt-container-max: 1320px;
    --tt-container-max-header-footer: 1440px;
    --tt-container-pad: 24px;
}

/* Force-remove background behind spotlight TLD strip */
#order-standard_cart #spotlightTlds,
#order-standard_cart #spotlightTlds.spotlight-tlds,
#order-standard_cart #spotlightTlds.spotlight-tlds.clearfix,
#order-standard_cart #spotlightTlds.spotlight-tlds.clearfix.w-hidden {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
}

#order-standard_cart #spotlightTlds .spotlight-tlds-container,
#order-standard_cart #spotlightTlds .spotlight-tld-container {
    background: transparent !important;
    background-color: transparent !important;
}

/* Suggested Domains heading (orderform) */
#order-standard_cart .suggested-domains .panel-heading.card-header,
#order-standard_cart .suggested-domains .panel-heading,
#order-standard_cart .suggested-domains .card-header,
#order-standard_cart .panel-heading.card-header[data-cursor-element-id],
#order-standard_cart #domainSuggestions .panel-heading,
#order-standard_cart #domainSuggestions .panel-heading.card-header {
    position: relative;
    background: transparent !important;
    border: 0 !important;
    padding: 14px 0 10px !important;
    margin: 22px 0 12px !important;
    font-size: 20px !important;
    line-height: 1.2;
    font-weight: 900 !important;
    color: #111827 !important;
    letter-spacing: -0.2px;
}

#order-standard_cart .suggested-domains .panel-heading.card-header::before,
#order-standard_cart .suggested-domains .panel-heading::before,
#order-standard_cart .suggested-domains .card-header::before,
#order-standard_cart #domainSuggestions .panel-heading::before,
#order-standard_cart #domainSuggestions .panel-heading.card-header::before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-right: 10px;
    border-radius: 3px;
    background: var(--primary);
    vertical-align: middle;
    transform: translateY(-1px);
}

#order-standard_cart .suggested-domains .panel-heading.card-header::after,
#order-standard_cart .suggested-domains .panel-heading::after,
#order-standard_cart .suggested-domains .card-header::after,
#order-standard_cart #domainSuggestions .panel-heading::after,
#order-standard_cart #domainSuggestions .panel-heading.card-header::after {
    content: "";
    display: block;
    margin-top: 12px;
    height: 1px;
    width: 100%;
    background: linear-gradient(90deg, color-mix(in srgb, var(--primary) 40%, #e5e7eb), #e5e7eb);
}

/* Suggested domain results list: remove borders, keep dividers */
#order-standard_cart #domainSuggestions .domain-suggestion.list-group-item,
#order-standard_cart #DomainSearchResults #domainSuggestions .domain-suggestion.list-group-item {
    border: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    border-radius: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    padding: 14px 0 24px 0 !important;
    box-shadow: none !important;
    outline: none !important;
}

#order-standard_cart #domainSuggestions {
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Divider line at the bottom of each row (works for clone/w-hidden too) */
#order-standard_cart #domainSuggestions .domain-suggestion.list-group-item,
#order-standard_cart #DomainSearchResults #domainSuggestions .domain-suggestion.list-group-item {
    background-image: linear-gradient(#e5e7eb, #e5e7eb) !important;
    background-repeat: no-repeat !important;
    background-size: 100% 1px !important;
    background-position: left bottom !important;
}

/* No divider after the last row */
#order-standard_cart #domainSuggestions .domain-suggestion.list-group-item:last-child,
#order-standard_cart #DomainSearchResults #domainSuggestions .domain-suggestion.list-group-item:last-child {
    background-image: none !important;
}

/* If WHMCS outputs <hr> separators inside suggestion rows, hide them */
#order-standard_cart #domainSuggestions .domain-suggestion hr,
#order-standard_cart #DomainSearchResults #domainSuggestions .domain-suggestion hr {
    display: none !important;
    border: 0 !important;
    height: 0 !important;
    margin: 0 !important;
}

/* Also neutralize any extra separators on wrapper list-group */
#order-standard_cart #domainSuggestions.list-group,
#order-standard_cart #DomainSearchResults #domainSuggestions.list-group {
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Kill any pseudo-element separators above first row */
#order-standard_cart #domainSuggestions::before,
#order-standard_cart #domainSuggestions::after,
#order-standard_cart #DomainSearchResults #domainSuggestions::before,
#order-standard_cart #DomainSearchResults #domainSuggestions::after {
    content: none !important;
    display: none !important;
}

#order-standard_cart #domainSuggestions > .domain-suggestion.list-group-item:first-child,
#order-standard_cart #DomainSearchResults #domainSuggestions > .domain-suggestion.list-group-item:first-child {
    border-top: 0 !important;
}

/* Keep Suggested Domains heading underline as-is */

[data-bs-theme="dark"] #order-standard_cart .suggested-domains .panel-heading.card-header,
[data-bs-theme="dark"] #order-standard_cart .suggested-domains .panel-heading,
[data-bs-theme="dark"] #order-standard_cart .suggested-domains .card-header,
[data-bs-theme="dark"] #order-standard_cart #domainSuggestions .panel-heading,
[data-bs-theme="dark"] #order-standard_cart #domainSuggestions .panel-heading.card-header {
    color: #f3f4f6 !important;
}

:root[data-bs-theme="dark"] {
    --primary: #00a650;
    --primary-dark: #111111;
    --primary-darker: #090909;
    --tt-accent-orange: #fb923c;
    --dark: #090909;
    --gray-light: #121212;
    --body-color: #d1d5db;
    --heading-color: #f3f4f6;
    --border-color: #2a2a2a;
    --border-dark-color: #2a2a2a;
    --custom-radius: 0px;
}

/* Square UI: remove rounded corners everywhere (hostim-child) */
body.tt-body-wrapper *,
body.tt-body-wrapper *::before,
body.tt-body-wrapper *::after {
    border-radius: 0 !important;
}

/* Header exceptions: keep notification + cart pill rounded */
header#header .tt-secondary-list > li.tt-nav-item.tt-notification,
header#header .tt-secondary-list > li.tt-nav-item.tt-notification > a,
header#header .tt-secondary-list > li.tt-nav-item.tt-notification > button,
header#header .tt-secondary-list > li.tt-nav-item.tt-notification .btn,
header#header .tt-secondary-list > li.nav-item.dropdown > a#dropdownMenuButton,
header#header .tt-secondary-list > li.nav-item > a.btn.nav-link.cart-btn {
    border-radius: 10px !important;
}

/* Make notification + search button look like cart button (bordered pill) */
header#header .tt-secondary-list > li.tt-nav-item.tt-notification,
header#header .tt-secondary-list > li.nav-item.dropdown > a#dropdownMenuButton {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 36px;
    padding: 0 8px;
    background: #ffffff !important;
    border: 1px solid var(--border-color) !important;
    box-shadow: none !important;
}

@media (max-width: 575.98px) {
    :root {
        --tt-container-pad: 16px;
    }
}

/* Global site width (header/footer/content) */
.container {
    width: 100%;
    max-width: var(--tt-container-max);
    padding-left: var(--tt-container-pad);
    padding-right: var(--tt-container-pad);
}

body.tt-body-wrapper,
.bg-gray-light {
    background: var(--tt-surface);
}

header.tt-header .container,
footer.tt-footer .container {
    max-width: var(--tt-container-max-header-footer);
}

[data-bs-theme="dark"] body,
[data-bs-theme="dark"] p,
[data-bs-theme="dark"] li,
[data-bs-theme="dark"] span,
[data-bs-theme="dark"] small {
    color: var(--body-color);
}

[data-bs-theme="dark"] h1,
[data-bs-theme="dark"] h2,
[data-bs-theme="dark"] h3,
[data-bs-theme="dark"] h4,
[data-bs-theme="dark"] h5,
[data-bs-theme="dark"] h6,
[data-bs-theme="dark"] .text-dark {
    color: var(--heading-color) !important;
}

[data-bs-theme="dark"] a:not(.btn) {
    color: #9be4be;
}

[data-bs-theme="dark"] a:not(.btn):hover {
    color: #c6f3dc;
}

/* Header height lock (same in light/dark + affix) */
header.tt-header,
header.tt-header.tt-header,
header.tt-header.affix {
    height: 84px !important;
    min-height: 84px !important;
}

/* Divider between header and first section */
header.tt-header {
    border-bottom: 1px solid #e5e7eb;
}

header.tt-header > .navbar.navbar-light,
header.tt-header.affix > .navbar.navbar-light {
    height: 84px !important;
    min-height: 84px !important;
    padding-top: 12px !important;
    padding-bottom: 16px !important;
}

header.tt-header > .navbar.navbar-light > .container,
header.tt-header.affix > .navbar.navbar-light > .container {
    height: 58px !important;
    min-height: 58px !important;
    display: flex !important;
    align-items: center !important;
}

header.tt-header .navbar-brand {
    height: 58px !important;
    min-height: 58px !important;
    display: inline-flex !important;
    align-items: center !important;
}

header.tt-header .tt-secondary-list {
    gap: 10px;
    align-items: center;
}

/* Header toolbar: make all actions uniform */
header.tt-header .tt-secondary-list .nav-item > a.btn-sm,
header.tt-header .tt-secondary-list .nav-item > button.btn-sm,
header.tt-header .tt-secondary-list .cart-btn,
header.tt-header .tt-secondary-list .tt-login-btn {
    height: 36px !important;
    min-height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 6px !important;
    border: 1px solid #d5dae3 !important;
    background: #ffffff !important;
    color: #111827 !important;
    box-shadow: none !important;
}

header.tt-header .tt-secondary-list .nav-item > a.btn-sm:hover,
header.tt-header .tt-secondary-list .nav-item > button.btn-sm:hover,
header.tt-header .tt-secondary-list .cart-btn:hover,
header.tt-header .tt-secondary-list .tt-login-btn:hover {
    border-color: #b8c1cf !important;
    background: #f8fafc !important;
}

header.tt-header .tt-secondary-list .nav-item > a.btn-sm i,
header.tt-header .tt-secondary-list .nav-item > button.btn-sm i,
header.tt-header .tt-secondary-list .cart-btn i,
header.tt-header .tt-secondary-list .tt-login-btn i {
    font-size: 16px;
}

/* Keep login as “pill button” but same border/height */
header.tt-header .tt-secondary-list .btn-sm.tt-login-btn {
    padding: 0 14px !important;
    gap: 7px;
    font-weight: 700;
}

[data-bs-theme="dark"] header.tt-header .tt-secondary-list .nav-item > a.btn-sm,
[data-bs-theme="dark"] header.tt-header .tt-secondary-list .nav-item > button.btn-sm,
[data-bs-theme="dark"] header.tt-header .tt-secondary-list .cart-btn,
[data-bs-theme="dark"] header.tt-header .tt-secondary-list .tt-login-btn {
    border-color: #374151 !important;
    background: #111827 !important;
    color: #f9fafb !important;
}

.tt-header-action-btn {
    width: 34px;
    min-width: 34px;
    height: 34px;
    border-radius: 6px;
    border: 1px solid #d5dae3;
    background: #ffffff;
    color: #111827 !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    box-shadow: none !important;
    transition: border-color .2s ease, background-color .2s ease, color .2s ease;
}

.tt-header-action-btn:hover {
    border-color: #b8c1cf;
    background: #f8fafc;
}

.tt-login-btn i {
    font-size: 15px;
}

header.tt-header .tt-secondary-list .btn-sm {
    height: 36px;
    display: inline-flex;
    align-items: center;
}

header.tt-header .tt-secondary-list .btn-sm.tt-login-btn {
    border-radius: 6px;
    padding: 0 14px;
    border: 1px solid #9fd9b9;
    background: #eefaf3;
    color: #0b5d36 !important;
    font-weight: 700;
    gap: 7px;
}

header.tt-header .tt-secondary-list .btn-sm.tt-login-btn:hover {
    border-color: #82caa0;
    background: #e4f6ec;
}

header.tt-header .cart-btn {
    width: 34px;
    height: 34px;
    border-radius: 6px;
    border: 1px solid #d5dae3;
    background: #ffffff;
    color: #111827 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: none !important;
}

header.tt-header .cart-btn .tt-cart-badge {
    top: -5px;
    right: -5px;
}

.tt-theme-toggle-inline .tt-theme-light,
.tt-theme-toggle-inline .tt-theme-dark {
    display: inline-flex;
}

[data-bs-theme="light"] .tt-theme-toggle-inline .tt-theme-dark {
    display: none;
}

[data-bs-theme="dark"] .tt-theme-toggle-inline .tt-theme-light {
    display: none;
}

[data-bs-theme="dark"] .tt-header-action-btn {
    border-color: #374151;
    background: #111827;
    color: #f9fafb !important;
    box-shadow: none !important;
}

[data-bs-theme="dark"] header.tt-header .tt-secondary-list .btn-sm.tt-login-btn {
    border-color: rgba(43, 194, 116, 0.45);
    background: rgba(18, 68, 46, 0.55);
    color: #c5f3d7 !important;
}

[data-bs-theme="dark"] header.tt-header .cart-btn {
    border-color: #374151;
    background: #111827;
    color: #f9fafb !important;
    box-shadow: none !important;
}

footer.footer.tt-footer.tt-footer-professional,
footer.footer.tt-footer.tt-footer-professional.tt-footer-professional {
    margin: 0 !important;
    padding: 0 !important;
    background: #111111 !important;
    background-color: #111111 !important;
    color: #eee !important;
    font-size: .9rem !important;
}

/* Continue shopping page */
.tt-continue-shop {
    padding: 34px 0 48px;
    background: var(--tt-surface);
}

.tt-continue-shop__header {
    margin-bottom: 18px;
}

.tt-continue-shop__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.tt-continue-card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 14px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    text-decoration: none !important;
    color: #111827 !important;
}

.tt-continue-card__icon {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d1d5db;
    color: var(--primary);
    background: #f8fafc;
}

.tt-continue-card__title {
    font-weight: 800;
    line-height: 1.2;
}

.tt-continue-card__sub {
    margin-top: 2px;
    font-size: 13px;
    color: #6b7280;
}

.tt-continue-card__arrow {
    margin-left: auto;
    color: #6b7280;
}

.tt-continue-card:hover {
    border-color: #cbd5e1;
    background: #fbfdff;
}

.tt-continue-shop__footer {
    margin-top: 18px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

@media (max-width: 767.98px) {
    .tt-continue-shop__grid {
        grid-template-columns: 1fr;
    }
}

[data-bs-theme="dark"] .tt-continue-shop {
    background: #0b1220;
}

[data-bs-theme="dark"] .tt-continue-card {
    background: #101827;
    border-color: #253248;
    color: #f3f4f6 !important;
}

[data-bs-theme="dark"] .tt-continue-card__icon {
    background: #0b1320;
    border-color: #2c3a4f;
}

[data-bs-theme="dark"] .tt-continue-card__sub,
[data-bs-theme="dark"] .tt-continue-card__arrow {
    color: #aeb8c5;
}

/* Domain config per-domain package quick picks */
.tt-domain-package-options {
    margin-top: 10px;
    margin-bottom: 8px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

.tt-domain-package-options__label {
    font-size: 12px;
    color: #6b7280;
    margin-right: 4px;
}

.tt-domain-package-options .btn {
    border-radius: 0 !important;
}

/* Homepage hero theming + embedded domain search */
.tt-hero-drg {
    background: transparent !important;
}

.tt-hero-drg.tt-hero-drg-promo {
    padding: 20px 0 22px;
}

.tt-hero-drg.tt-hero-drg-promo .container {
    max-width: 96%;
}

.tt-hero-promo-wrap {
    border-radius: 14px;
    overflow: hidden;
    padding: 34px 30px;
    background: radial-gradient(1200px 520px at 18% 15%, rgba(0, 166, 80, 0.22), rgba(0, 0, 0, 0) 55%),
        linear-gradient(180deg, #0b1220 0%, #0a0f18 100%);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.tt-hero-promo-badges {
    display: flex;
    gap: 8px;
    margin-bottom: 14px;
}

.tt-hero-promo-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
}

.tt-hero-promo-title {
    font-size: 44px;
    line-height: 1.15;
    font-weight: 800;
    margin-bottom: 12px;
}

.tt-hero-promo-highlight {
    color: #ff8a00;
}

.tt-hero-promo-sub {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 22px;
}

.tt-hero-promo-image {
    text-align: right;
}

.tt-hero-promo-image img {
    max-width: 96%;
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.35);
    object-fit: cover;
    min-height: 320px;
}

.tt-domain-top-section {
    padding: 14px 0 14px;
    background: #ffffff;
}

.tt-domain-top-section.tt-domain-top-section--drg {
    /* Keep this section stable across breakpoints */
    padding: 14px 0;
}

.tt-domain-top-section > .container {
    max-width: var(--tt-container-max-header-footer);
}

.tt-domain-top-section .tt-hero-domain-card {
    background: #ffffff;
    border: 0;
    border-radius: 0;
    padding: 18px;
    box-shadow: none;
}

.tt-domain-top-section.tt-domain-top-section--drg .row.align-items-center {
    row-gap: 12px;
}

.tt-domain-top-section .tt-domain-pricing-link {
    font-weight: 800;
    color: #111827;
    text-decoration: none;
    opacity: 0.8;
}

.tt-domain-top-section .tt-domain-pricing-link:hover {
    opacity: 1;
}

.tt-domain-top-section .tt-hero-domain-head h3 {
    color: #111827;
    font-size: 20px;
    font-weight: 800;
}

.tt-domain-top-section .tt-hero-domain-head p {
    color: #6b7280;
    font-size: 13px;
}

.tt-domain-top-section .tt-hero-domain-input .form-control {
    height: 48px;
    border-radius: 10px 0 0 10px;
    border: 1px solid #e5e7eb;
    background: #ffffff;
    color: #111827;
    padding-left: 14px;
}

.tt-domain-top-section.tt-domain-top-section--drg .tt-domain-hero-input-group {
    flex-wrap: nowrap;
    align-items: stretch;
}

.tt-domain-top-section.tt-domain-top-section--drg .tt-domain-hero-input-group .form-control {
    min-width: 0;
}

.tt-domain-top-section.tt-domain-top-section--drg .tt-domain-hero-input-group .input-group-append .btn {
    min-width: 132px;
}

.tt-domain-top-section .tt-hero-domain-input .form-control::placeholder {
    color: #9ca3af;
}

.tt-domain-top-section .tt-hero-domain-input .btn {
    height: 48px;
    border-radius: 0 !important;
    padding: 0 18px;
    border: 0 !important;
    font-weight: 700;
    letter-spacing: 0.1px;
    box-shadow: none !important;
}

.tt-domain-top-section #btnDomainSearch,
.tt-domain-top-section #btnDomainSearch2 {
    background: var(--primary) !important;
    color: #ffffff !important;
}

.tt-domain-top-section #btnTransfer,
.tt-domain-top-section #btnTransfer2 {
    background: color-mix(in srgb, var(--primary) 80%, #04341f) !important;
    color: #ffffff !important;
}

.tt-domain-top-section .tt-hero-tld-strip {
    border-left: 1px solid #edf1f7;
    padding-left: 16px;
}

.tt-domain-top-section.tt-domain-top-section--drg .tt-hero-tld-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px 10px;
}

.tt-domain-top-section.tt-domain-top-section--drg .tt-hero-tld-list li {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 10px;
    min-width: 0;
}

.tt-domain-top-section.tt-domain-top-section--drg .tt-hero-tld {
    font-weight: 800;
    color: #4b5563;
    font-size: 12px;
    white-space: nowrap;
}

.tt-domain-top-section.tt-domain-top-section--drg .tt-hero-tld-price {
    font-weight: 800;
    color: #111827;
    font-size: 12px;
    white-space: nowrap;
}

.tt-domain-top-section .tt-hero-tld-list li {
    border-radius: 8px;
    border: 1px solid #eceff5;
    background: #fafbfe;
}

@media (max-width: 991.98px) {
    .tt-domain-top-section.tt-domain-top-section--drg .tt-hero-tld-strip {
        border-left: 0;
        padding-left: 0;
        border-top: 1px solid #e5e7eb;
        margin-top: 12px;
        padding-top: 12px;
    }

    .tt-domain-top-section.tt-domain-top-section--drg .tt-hero-tld-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }
}

@media (max-width: 575.98px) {
    .tt-domain-top-section.tt-domain-top-section--drg .tt-hero-domain-card {
        padding: 14px;
    }

    /* Input becomes full width; buttons already render in the separate mobile row */
    .tt-domain-top-section.tt-domain-top-section--drg .tt-domain-hero-input-group {
        flex-wrap: wrap;
    }

    .tt-domain-top-section.tt-domain-top-section--drg .tt-domain-hero-input-group .form-control {
        width: 100%;
        border-radius: 10px !important;
    }

    /* Mobile: avoid horizontal scroll; wrap into a compact grid */
    .tt-domain-top-section.tt-domain-top-section--drg .tt-hero-tld-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .tt-domain-top-section.tt-domain-top-section--drg .tt-hero-tld-list li {
        min-width: 0;
        padding: 8px 10px;
    }
}

[data-bs-theme="dark"] .tt-domain-top-section {
    background: #0b1220;
}

[data-bs-theme="dark"] header.tt-header {
    border-bottom-color: #253248;
}

/* Shopping cart / inner page header polish */
section.tt-page-header.py-5.bg-gradient {
    position: relative;
    overflow: hidden;
    padding-top: 38px !important;
    padding-bottom: 58px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
    background:
        radial-gradient(840px 280px at 12% 10%, color-mix(in srgb, var(--primary) 26%, transparent), transparent 58%),
        linear-gradient(100deg, #0a1422 0%, #0d1b2f 46%, color-mix(in srgb, var(--primary) 24%, #123452) 100%) !important;
}

section.tt-page-header.py-5.bg-gradient .tt-page-header-info h1 {
    margin: 0;
    color: #ffffff !important;
    font-size: clamp(28px, 3vw, 42px);
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: 0.2px;
    text-shadow: 0 10px 22px rgba(0, 0, 0, 0.25);
}

/* If some pages output plain text inside section (no h1), style the section text too */
section.tt-page-header.py-5.bg-gradient {
    color: #ffffff !important;
    font-weight: 800;
    font-size: clamp(26px, 3vw, 40px);
    letter-spacing: 0.2px;
}

section.tt-page-header.py-5.bg-gradient .tt-page-header-info p {
    margin-top: 9px;
    margin-bottom: 0;
    font-size: 14px;
    line-height: 1.55;
    color: rgba(229, 237, 248, 0.86) !important;
}

section.tt-page-header.py-5.bg-gradient .tt-breadcrumb {
    right: 0;
    bottom: -22px;
    border-radius: 0;
    border: 1px solid color-mix(in srgb, var(--primary) 24%, #e5e7eb);
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.1);
}

section.tt-page-header.py-5.bg-gradient .tt-triangle-right {
    display: none;
}

section.tt-page-header.py-5.bg-gradient .tt-breadcrumb ol {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 0;
    backdrop-filter: blur(8px);
}

section.tt-page-header.py-5.bg-gradient .tt-breadcrumb .breadcrumb-item {
    display: inline-flex;
    align-items: center;
    margin: 0;
}

section.tt-page-header.py-5.bg-gradient .tt-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    content: "/";
    color: #94a3b8;
    font-weight: 600;
    font-size: 12px;
    padding-right: 8px;
}

section.tt-page-header.py-5.bg-gradient .tt-breadcrumb .breadcrumb-item a,
section.tt-page-header.py-5.bg-gradient .tt-breadcrumb .breadcrumb-item.active {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 12px;
    border-radius: 0;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.1px;
    text-decoration: none;
    transition: all .2s ease;
}

section.tt-page-header.py-5.bg-gradient .tt-breadcrumb .breadcrumb-item a {
    color: #334155;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}

section.tt-page-header.py-5.bg-gradient .tt-breadcrumb .breadcrumb-item a:hover {
    color: #0f172a;
    background: #ffffff;
    border-color: #cbd5e1;
}

section.tt-page-header.py-5.bg-gradient .tt-breadcrumb .breadcrumb-item.active {
    color: #ffffff;
    background: linear-gradient(135deg, var(--primary) 0%, color-mix(in srgb, var(--primary) 78%, #064e3b) 100%);
    border: 1px solid transparent;
    box-shadow: 0 8px 16px rgba(5, 150, 105, 0.28);
}

@media (max-width: 767.98px) {
    section.tt-page-header.py-5.bg-gradient {
        padding-top: 24px !important;
        padding-bottom: 30px !important;
    }

    section.tt-page-header.py-5.bg-gradient .tt-page-header-info h1 {
        font-size: 24px;
    }

    section.tt-page-header.py-5.bg-gradient .tt-breadcrumb {
        position: static;
        margin-top: 14px;
        width: 100%;
        border-radius: 8px;
    }

    section.tt-page-header.py-5.bg-gradient .tt-breadcrumb ol {
        overflow-x: auto;
        white-space: nowrap;
        padding: 8px;
        scrollbar-width: thin;
    }
}

[data-bs-theme="dark"] section.tt-page-header.py-5.bg-gradient {
    border-bottom-color: rgba(148, 163, 184, 0.28);
}

[data-bs-theme="dark"] section.tt-page-header.py-5.bg-gradient .tt-breadcrumb {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.3);
    box-shadow: none;
}

[data-bs-theme="dark"] section.tt-page-header.py-5.bg-gradient .tt-breadcrumb ol li a,
[data-bs-theme="dark"] section.tt-page-header.py-5.bg-gradient .tt-breadcrumb ol li.active {
    color: #dbeafe;
}

[data-bs-theme="dark"] section.tt-page-header.py-5.bg-gradient .tt-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    color: #64748b;
}

[data-bs-theme="dark"] section.tt-page-header.py-5.bg-gradient .tt-breadcrumb .breadcrumb-item a {
    color: #cbd5e1;
    background: rgba(30, 41, 59, 0.7);
    border-color: rgba(100, 116, 139, 0.55);
}

[data-bs-theme="dark"] section.tt-page-header.py-5.bg-gradient .tt-breadcrumb .breadcrumb-item a:hover {
    color: #ffffff;
    background: rgba(51, 65, 85, 0.9);
    border-color: rgba(148, 163, 184, 0.72);
}

/* Fallback: ensure cart/header style always applies */
.tt-page-header.bg-gradient,
section.tt-page-header.bg-gradient,
section.tt-page-header.py-5.bg-gradient {
    background:
        radial-gradient(900px 300px at 12% 12%, color-mix(in srgb, var(--primary) 26%, transparent), transparent 58%),
        linear-gradient(100deg, #0b1422 0%, #10233a 48%, color-mix(in srgb, var(--primary) 35%, #0f2b44) 100%) !important;
}

.tt-page-header.bg-gradient .tt-page-header-info h1 {
    color: #ffffff !important;
    font-weight: 800 !important;
}

.tt-page-header.bg-gradient .tt-breadcrumb {
    border: 1px solid color-mix(in srgb, var(--primary) 24%, #dbe4ef) !important;
}

.tt-page-header.bg-gradient .tt-breadcrumb .breadcrumb-item.active {
    background: linear-gradient(135deg, var(--primary) 0%, color-mix(in srgb, var(--primary) 80%, #064e3b) 100%) !important;
}

[data-bs-theme="dark"] .tt-domain-top-section .tt-hero-domain-card {
    background: #101827;
    border: 0;
    box-shadow: none;
}

[data-bs-theme="dark"] .tt-domain-top-section .tt-hero-domain-head h3 {
    color: #f3f4f6;
}

[data-bs-theme="dark"] .tt-domain-top-section .tt-hero-domain-head p {
    color: #aeb8c5;
}

[data-bs-theme="dark"] .tt-domain-top-section .tt-hero-domain-input .form-control {
    background: #0b1320;
    border-color: #2c3a4f;
    color: #f3f4f6;
}

[data-bs-theme="dark"] .tt-domain-top-section .tt-hero-domain-input .form-control::placeholder {
    color: #7f8ca3;
}

[data-bs-theme="dark"] .tt-domain-top-section .tt-hero-tld-strip {
    border-left-color: #253248;
}

[data-bs-theme="dark"] .tt-domain-top-section .tt-hero-tld-list li {
    background: #0c1524;
    border-color: #253248;
}


.tt-domain-top-section #btnDomainSearch:hover,
.tt-domain-top-section #btnDomainSearch2:hover,
.tt-domain-top-section #btnTransfer:hover,
.tt-domain-top-section #btnTransfer2:hover {
    filter: brightness(0.94);
}

.tt-domain-top-section .tt-hero-domain-links {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.tt-domain-top-section .tt-hero-domain-link {
    color: #c6f3dc !important;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
}

.tt-domain-top-section .tt-hero-domain-link:hover {
    color: #ffffff !important;
}

.tt-domain-top-section .tt-hero-domain-pricing {
    color: #bec8e7 !important;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
}

.tt-domain-top-section .tt-hero-domain-pricing:hover {
    color: #111827 !important;
}

.tt-domain-inline-results {
    margin-top: 14px;
}

#ttDomainPageTransition {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.12s ease;
}

#ttDomainPageTransition.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}

#ttDomainPageTransition .tt-domain-page-transition__inner {
    text-align: center;
    color: #0f172a;
    font-size: 15px;
    font-weight: 600;
}

#ttDomainPageTransition .tt-domain-page-transition__spinner {
    width: 34px;
    height: 34px;
    margin: 0 auto 12px;
    border: 3px solid #e5e7eb;
    border-top-color: #00a650;
    border-radius: 50%;
    animation: tt-domain-page-spin 0.7s linear infinite;
}

@keyframes tt-domain-page-spin {
    to {
        transform: rotate(360deg);
    }
}

html.tt-domain-navigating {
    overflow: hidden;
}

html.tt-domain-lookup-page #order-standard_cart .cart-sidebar,
html.tt-domain-lookup-page #order-standard_cart .header-lined,
html.tt-domain-lookup-page #order-standard_cart .sidebar-categories-collapsed,
html.tt-domain-lookup-page #order-standard_cart .sidebar-collapsed,
html.tt-domain-lookup-page #order-standard_cart .cart-body > p,
html.tt-domain-lookup-page #order-standard_cart .domain-checker-container,
html.tt-domain-lookup-page #order-standard_cart .domain-pricing,
html.tt-domain-lookup-page #order-standard_cart .domain-promo-box {
    display: none !important;
}

html.tt-domain-lookup-page #order-standard_cart .cart-body {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
}

html.tt-domain-lookup-page #DomainSearchResults {
    display: block !important;
}

html.tt-domain-lookup-page #order-standard_cart {
    max-width: 1140px;
    margin: 20px auto 0 !important;
}

html.tt-transfer-cart-page #order-standard_cart .cart-sidebar,
html.tt-transfer-cart-page #order-standard_cart .header-lined,
html.tt-transfer-cart-page #order-standard_cart .sidebar-categories-collapsed,
html.tt-transfer-cart-page #order-standard_cart .sidebar-collapsed {
    display: none !important;
}

html.tt-transfer-cart-page #order-standard_cart .cart-body {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    background: #fff !important;
    border: 0 !important;
    border-radius: 14px;
    box-shadow: none !important;
    padding: 24px 24px 18px;
}

html.tt-transfer-cart-page #order-standard_cart {
    max-width: 1140px;
    margin: 20px auto 0 !important;
}

.tt-domain-top-section .tt-domain-input-wrap {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
}

.tt-domain-top-section .tt-domain-input-wrap .form-control {
    width: 100%;
}

.tt-domain-top-section .tt-domain-input-error-msg {
    position: absolute;
    left: 14px;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #dc2626;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.2;
    pointer-events: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tt-domain-top-section .tt-domain-input-wrap.has-error .form-control {
    color: transparent;
    caret-color: #111827;
}

.tt-domain-top-section .tt-domain-input-wrap.has-error .form-control::placeholder {
    color: transparent;
}

.tt-domain-inline-state {
    padding: 10px 12px;
    border-radius: 10px;
    font-size: 13px;
    line-height: 1.4;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background: rgba(15, 23, 32, 0.45);
    color: #fff;
}

.tt-domain-inline-state--error {
    border-color: rgba(239, 68, 68, 0.45);
    background: rgba(239, 68, 68, 0.12);
}

.tt-domain-inline-state--loading {
    border-color: rgba(0, 166, 80, 0.45);
    background: rgba(0, 166, 80, 0.12);
}

.tt-domain-inline-result {
    padding: 16px 14px 14px;
    border-radius: 0;
    border: 0;
    background: #ffffff;
    color: var(--tt-ink);
    text-align: center;
    box-shadow: none;
}

.tt-domain-inline-title {
    font-weight: 700;
    font-size: 24px;
    line-height: 1.25;
    color: #00a650;
}

.tt-domain-inline-sub {
    margin-top: 4px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 12.5px;
}

.tt-domain-inline-price {
    margin-top: 6px;
    font-weight: 700;
    color: #1f2937;
    font-size: 16px;
}

.tt-domain-inline-actions {
    display: flex;
    gap: 8px;
    margin-top: 10px;
    flex-wrap: wrap;
    justify-content: center;
}

.tt-domain-top-section .tt-domain-add-btn {
    background: #00a650 !important;
    color: #fff !important;
    border: 0 !important;
    min-width: 108px;
    border-radius: 6px !important;
}

.tt-domain-top-section .tt-domain-add-btn.is-added {
    background: #0f766e !important;
}

.tt-domain-inline-actions .btn-outline-light {
    color: #374151 !important;
    border-color: transparent !important;
    background: #fff !important;
    border-radius: 0 !important;
}

.tt-domain-inline-actions .btn-outline-light:hover {
    background: #f3f4f6 !important;
    color: #111827 !important;
    border-color: #9ca3af !important;
}

.tt-domain-suggestion-grid {
    margin-top: 14px;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 8px;
}

.tt-domain-suggestion-card {
    border: 0;
    border-radius: 0;
    padding: 9px 8px;
    background: #ffffff;
    text-align: center;
    box-shadow: none;
}

.tt-domain-suggestion-tld {
    font-size: 20px;
    line-height: 1.1;
    font-weight: 700;
    color: #1f2937;
}

.tt-domain-suggestion-price {
    margin-top: 4px;
    font-size: 13px;
    font-weight: 600;
    color: #4b5563;
}

.tt-domain-suggestion-card .btn {
    margin-top: 7px;
    min-width: 84px;
    height: 32px !important;
    font-size: 12px;
    border-radius: 5px !important;
}

.tt-domain-top-section .tt-hero-tld-strip {
    border-left: 0;
    padding-left: 14px;
}

.tt-domain-top-section .tt-hero-tld-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px 10px;
}

.tt-domain-top-section .tt-hero-tld-list li {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    padding: 6px 8px;
    border-radius: 0;
    background: #f8fafc;
    border: 0;
}

.tt-domain-top-section .tt-hero-tld {
    font-weight: 800;
    color: #4b5563;
    font-size: 12px;
}

.tt-domain-top-section .tt-hero-tld-price {
    font-weight: 700;
    color: #111827;
    font-size: 12px;
    white-space: nowrap;
}

/* Domainchecker page hero */
.tt-domain-hero {
    padding: 44px 0 18px;
    background: radial-gradient(900px 420px at 18% 15%, rgba(0, 166, 80, 0.22), rgba(0, 0, 0, 0) 55%),
        linear-gradient(180deg, #0b1220 0%, #0a0f18 100%);
}

.tt-domain-hero > .container {
    max-width: 96%;
}

.tt-domain-hero-card {
    border-radius: 16px;
    padding: 18px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.14);
}

.tt-domain-hero .domain-checker-container {
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .tt-hero-drg.tt-hero-drg-promo {
        padding: 14px 0 16px;
    }
    .tt-hero-drg.tt-hero-drg-promo .container {
        max-width: 100%;
    }
    .tt-domain-hero > .container {
        max-width: 100%;
    }
    .tt-hero-promo-wrap {
        padding: 24px 18px;
        border-radius: 10px;
    }
    .tt-hero-promo-title {
        font-size: 30px;
    }
    .tt-hero-promo-sub {
        font-size: 14px;
    }
    .tt-hero-promo-image {
        margin-top: 16px;
        text-align: center;
    }
    .tt-hero-promo-image img {
        max-width: 78%;
    }
    .tt-domain-top-section .tt-hero-domain-card {
        padding: 14px;
    }
    .tt-domain-top-section .tt-hero-domain-input .form-control,
    .tt-domain-top-section .tt-hero-domain-input .btn {
        height: 46px;
    }
    .tt-domain-top-section .tt-hero-tld-strip {
        border-left: 0;
        border-top: 1px solid #e5e7eb;
        margin-top: 12px;
        padding-left: 0;
        padding-top: 12px;
    }
    .tt-domain-top-section .tt-hero-tld-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tt-domain-inline-title {
        font-size: 20px;
    }

    .tt-domain-suggestion-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

footer.footer.tt-footer,
footer.footer.tt-footer.bg-dark,
footer.footer.tt-footer .tt-footer-top,
footer.footer.tt-footer .tt-footer-bottom {
    background: #111111 !important;
    background-color: #111111 !important;
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-top,
footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom {
    background: #111111 !important;
    background-color: #111111 !important;
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-top {
    padding-top: 52px !important;
    padding-bottom: 28px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-top .row {
    row-gap: 24px;
}

/* Footer mobile/tablet: keep logo + intro + Support + Useful Links; hide payments/Play, domain column, address, Email Hosting block, SSL block */
@media (max-width: 991.98px) {
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(2),
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(5) {
        display: none !important;
    }

    /* Column 1: hide only We Accepted + payment icons + Play Store block */
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(1) .tt-footer-widget > h6.text-white.mb-2:not(.tt-contact-heading),
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(1) .tt-footer-widget > .tt-payment-methods,
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(1) .tt-footer-widget > h6.tt-contact-heading,
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(1) .tt-footer-widget > a.tt-playstore-link {
        display: none !important;
    }

    /* Column 3: hide Email Hosting heading + list only; Support stays visible */
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(3) .tt-footer-widget > h6.text-white:first-of-type,
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(3) .tt-footer-widget > ul.tt-footer-menu:first-of-type {
        display: none !important;
    }

    /* Column 4: hide SSL CERTIFICATES + list only; Useful Links stays visible */
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(4) .tt-footer-widget > h6.text-white:first-of-type,
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(4) .tt-footer-widget > ul.tt-footer-menu:first-of-type {
        display: none !important;
    }

    /* Support + Useful Links: two columns on one row (override full-width col stacking) */
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row {
        align-items: flex-start;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(1) {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(3),
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(4) {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(3) {
        padding-right: 8px;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .container > .row > div:nth-child(4) {
        padding-left: 8px;
    }

    /* Footer bottom: hide language / currency (English / ₹ INR) trigger */
    footer#footer.tt-footer .tt-footer-bottom .row > .col-lg-4,
    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom .row > .col-lg-4 {
        display: none !important;
    }

    footer#footer.tt-footer .tt-footer-bottom button[data-target="#modalChooseLanguage"],
    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom button[data-target="#modalChooseLanguage"] {
        display: none !important;
    }
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-widget {
    max-width: 100%;
}

.tt-footer-professional .tt-footer-logo {
    max-width: 200px;
    width: 100%;
    height: auto;
}

/* Keep header logo size consistent across light/dark mode */
.navbar .navbar-brand .logo-img,
.tt-custom-navbar .navbar-brand .logo-img {
    width: 176px;
    max-width: 176px;
    height: auto;
    max-height: none;
    object-fit: contain;
}

/* Keep header/nav height same in light and dark modes */
.tt-single-navbar .navbar,
.tt-double-navbar .navbar,
.tt-custom-navbar .navbar {
    min-height: 78px;
    padding-top: 12px;
    padding-bottom: 12px;
}

.tt-single-navbar .navbar .navbar-brand,
.tt-double-navbar .navbar .navbar-brand,
.tt-custom-navbar .navbar .navbar-brand {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-widget h6 {
    font-size: 17px;
    line-height: 1.35;
    font-weight: 600;
    margin-bottom: 10px;
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-widget p,
footer.footer.tt-footer.tt-footer-professional .tt-footer-widget address {
    font-size: 13px;
    line-height: 1.6;
    margin-bottom: 12px;
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-menu {
    margin-top: 8px !important;
    margin-bottom: 0;
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-menu li {
    margin-bottom: 5px;
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-menu li a {
    font-size: 13px;
    line-height: 1.5;
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-widget .btn.btn-icon {
    width: 28px;
    height: 28px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-widget .btn.btn-icon i {
    font-size: 12px;
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom .copyright {
    color: #e5e7eb !important;
    font-size: 12px;
    line-height: 1.5;
}

.tt-footer-professional .tt-playstore-link {
    margin-top: 4px;
}

.tt-footer-professional .tt-playstore-badge {
    width: 120px;
    max-width: 100%;
    height: auto;
    border-radius: 4px;
}

.tt-footer-professional .tt-payment-methods {
    display: flex;
    flex-wrap: nowrap;
    gap: 6px;
    align-items: center;
    margin-top: 8px;
}

.tt-footer-professional .tt-payment-methods__icon {
    width: 46px;
    height: 30px;
    object-fit: contain;
    border-radius: 4px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: #1a1d22;
    padding: 4px;
}

/* Dark-mode account tiles readability fix */
:root[data-bs-theme="dark"] .tt-account {
    background: #11151a !important;
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #d9f8e8 !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
}

:root[data-bs-theme="light"] .tt-account img,
:root:not([data-bs-theme="dark"]) .tt-account img {
    filter: brightness(0) saturate(100%) invert(49%) sepia(56%) saturate(596%) hue-rotate(103deg) brightness(90%) contrast(90%);
    opacity: 1 !important;
}

:root[data-bs-theme="dark"] .tt-account img {
    filter: brightness(0) saturate(100%) invert(77%) sepia(28%) saturate(515%) hue-rotate(95deg) brightness(97%) contrast(94%);
    opacity: 1 !important;
}

:root[data-bs-theme="dark"] .tt-section-heading h2,
:root[data-bs-theme="dark"] .tt-account span,
:root[data-bs-theme="dark"] .tt-account {
    color: #eafbf2 !important;
}

:root[data-bs-theme="dark"] .tt-support-item span {
    color: #1f2937 !important;
    font-weight: 600;
}

:root[data-bs-theme="dark"] .tt-support-item img {
    filter: none !important;
    opacity: 1 !important;
}

.tt-footer-professional .tt-contact-heading {
    white-space: nowrap;
    line-height: 1.25;
    font-size: 16px !important;
}

.tt-footer-professional .tt-email-link {
    display: inline-block;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.tt-footer-professional .tt-footer-widget p,
.tt-footer-professional .tt-footer-widget address,
.tt-footer-professional .tt-footer-menu li a,
.tt-footer-professional .copyright {
    color: #ffffff !important;
}

.tt-footer-professional .tt-footer-widget h6 {
    color: #ffffff !important;
}

.tt-footer-professional .tt-footer-menu li a,
.tt-footer-professional .tt-footer-widget a {
    color: #bec8e7 !important;
}

.tt-footer-professional .tt-footer-menu li a:hover,
.tt-footer-professional .tt-footer-widget a:hover {
    color: #ffffff !important;
}

.tt-footer-professional .btn.btn-icon {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.25);
    color: #ffffff;
}

@media (max-width: 1199.98px) {
    footer.footer.tt-footer.tt-footer-professional .tt-footer-widget h6 {
        font-size: 16px;
    }
}

@media (max-width: 991.98px) {
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top {
        padding-top: 44px !important;
        padding-bottom: 24px !important;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .row {
        row-gap: 20px;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-widget p,
    footer.footer.tt-footer.tt-footer-professional .tt-footer-widget address,
    footer.footer.tt-footer.tt-footer-professional .tt-footer-menu li a {
        font-size: 12.5px;
    }
}

@media (max-width: 767.98px) {
    footer.footer.tt-footer.tt-footer-professional .tt-footer-top {
        padding-top: 34px !important;
        padding-bottom: 20px !important;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-top .row {
        row-gap: 18px;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-widget h6 {
        font-size: 15px;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-widget p,
    footer.footer.tt-footer.tt-footer-professional .tt-footer-widget address,
    footer.footer.tt-footer.tt-footer-professional .tt-footer-menu li a {
        font-size: 12px;
        line-height: 1.45;
    }

    .tt-footer-professional .tt-contact-heading {
        font-size: 14px !important;
    }

    .tt-footer-professional .tt-playstore-badge {
        width: 112px;
    }

    .tt-footer-professional .tt-footer-logo {
        max-width: 176px;
    }

    .navbar .navbar-brand .logo-img,
    .tt-custom-navbar .navbar-brand .logo-img {
        width: 158px;
        max-width: 158px;
    }

    header.tt-header,
    header.tt-header.affix {
        height: 76px !important;
        min-height: 76px !important;
    }

    header.tt-header > .navbar.navbar-light,
    header.tt-header.affix > .navbar.navbar-light {
        height: 76px !important;
        min-height: 76px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    header.tt-header > .navbar.navbar-light > .container,
    header.tt-header.affix > .navbar.navbar-light > .container,
    header.tt-header .navbar-brand {
        height: 52px !important;
        min-height: 52px !important;
    }

    .tt-single-navbar .navbar,
    .tt-double-navbar .navbar,
    .tt-custom-navbar .navbar {
        min-height: 70px;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .tt-single-navbar .navbar .navbar-brand,
    .tt-double-navbar .navbar .navbar-brand,
    .tt-custom-navbar .navbar .navbar-brand {
        min-height: 48px;
    }

    .tt-footer-professional .tt-payment-methods {
        gap: 5px;
    }

    .tt-footer-professional .tt-payment-methods__icon {
        width: 42px;
        height: 28px;
        padding: 3px;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom {
        padding-top: 7px !important;
        padding-bottom: 7px !important;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom .copyright {
        text-align: center !important;
        margin-bottom: 6px !important;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom .float-lg-right {
        float: none !important;
        text-align: center;
    }
}

/* ============================
   Standard cart: domain lookup
   ============================ */
#order-standard_cart #primaryLookupResult {
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: none;
    width: 100%;
    max-width: 100%;
}

#order-standard_cart #primaryLookupResult p {
    margin: 0;
}

/* Primary lookup result: consistent styling for available/unavailable */
#order-standard_cart #primaryLookupResult p.domain-available,
#order-standard_cart #primaryLookupResult p.domain-unavailable,
#order-standard_cart #primaryLookupResult p.domain-tld-unavailable,
#order-standard_cart #primaryLookupResult p.domain-invalid {
    position: relative;
    padding: 66px 22px 18px;
    border-bottom: 1px solid #eef2f7;
    font-weight: 900;
    letter-spacing: -0.2px;
    font-size: clamp(24px, 3.2vw, 42px);
    line-height: 1.18;
    text-align: center;
    overflow: visible;
    overflow-wrap: anywhere;
    word-break: break-word;
    hyphens: auto;
    background: #ffffff;
}

#order-standard_cart #primaryLookupResult p.domain-available {
    color: var(--primary) !important;
    background: #ffffff;
}

#order-standard_cart #primaryLookupResult p.domain-unavailable,
#order-standard_cart #primaryLookupResult p.domain-tld-unavailable,
#order-standard_cart #primaryLookupResult p.domain-invalid {
    color: #0f172a;
    background:
        radial-gradient(520px 120px at 50% 12%, rgba(239, 68, 68, 0.10), rgba(239, 68, 68, 0) 60%),
        #ffffff;
}

#order-standard_cart #primaryLookupResult p.domain-available::before,
#order-standard_cart #primaryLookupResult p.domain-unavailable::before,
#order-standard_cart #primaryLookupResult p.domain-tld-unavailable::before,
#order-standard_cart #primaryLookupResult p.domain-invalid::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 44px;
    display: flex;
    align-items: center;
    padding: 0 16px;
    background: #eef2f7;
    color: #475569;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 1px;
    text-transform: uppercase;
    border-bottom: 1px solid #e5e7eb;
}

#order-standard_cart #primaryLookupResult p.domain-available::before {
    content: "DOMAIN IS AVAILABLE";
}

#order-standard_cart #primaryLookupResult p.domain-unavailable::before,
#order-standard_cart #primaryLookupResult p.domain-tld-unavailable::before,
#order-standard_cart #primaryLookupResult p.domain-invalid::before {
    content: "DOMAIN NAME IS TAKEN";
}

/* Transfer result blocks: same card language as primary result */
#order-standard_cart #primaryLookupResult .transfer-eligible,
#order-standard_cart #primaryLookupResult .transfer-not-eligible {
    position: relative;
    margin: 0;
    padding: 58px 22px 16px;
    border-bottom: 1px solid #eef2f7;
    background: #ffffff;
    text-align: center;
}

#order-standard_cart #primaryLookupResult .transfer-eligible::before,
#order-standard_cart #primaryLookupResult .transfer-not-eligible::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 44px;
    display: flex;
    align-items: center;
    padding: 0 16px;
    background: #eef2f7;
    color: #475569;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 1px;
    text-transform: uppercase;
    border-bottom: 1px solid #e5e7eb;
}

#order-standard_cart #primaryLookupResult .transfer-eligible::before {
    content: "DOMAIN IS ELIGIBLE FOR TRANSFER";
}

#order-standard_cart #primaryLookupResult .transfer-not-eligible::before {
    content: "DOMAIN IS NOT ELIGIBLE FOR TRANSFER";
}

#order-standard_cart #primaryLookupResult .transfer-eligible .headline,
#order-standard_cart #primaryLookupResult .transfer-not-eligible .headline {
    margin: 0 0 10px;
    font-size: clamp(24px, 3.2vw, 42px);
    font-weight: 900;
    letter-spacing: -0.2px;
    line-height: 1.18;
}

#order-standard_cart #primaryLookupResult .transfer-eligible .headline {
    color: var(--primary) !important;
}

#order-standard_cart #primaryLookupResult .transfer-not-eligible .headline {
    color: #0f172a !important;
}

#order-standard_cart #primaryLookupResult .transfer-eligible p:not(.headline),
#order-standard_cart #primaryLookupResult .transfer-not-eligible p:not(.headline) {
    margin: 0;
    font-size: 14px;
    line-height: 1.45;
    color: #64748b;
}

/* Price + button row */
#order-standard_cart #primaryLookupResult p.domain-price,
#order-standard_cart #primaryLookupResult .domain-price {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: nowrap;
    padding: 14px 22px;
    background: #f8fafc;
}

/* Some WHMCS variants wrap value in .price; some output text directly */
#order-standard_cart #primaryLookupResult p.domain-price .price,
#order-standard_cart #primaryLookupResult .domain-price .price,
#order-standard_cart #primaryLookupResult p.domain-price,
#order-standard_cart #primaryLookupResult .domain-price {
    font-size: clamp(22px, 2.4vw, 34px);
    font-weight: 900;
    color: #111827;
    line-height: 1.1;
}

#order-standard_cart #primaryLookupResult p.domain-price .btn,
#order-standard_cart #primaryLookupResult p.domain-price button,
#order-standard_cart #primaryLookupResult p.domain-price a.btn,
#order-standard_cart #primaryLookupResult .domain-price .btn,
#order-standard_cart #primaryLookupResult .domain-price button,
#order-standard_cart #primaryLookupResult .domain-price a.btn {
    height: 46px;
    min-width: 156px;
    padding: 0 18px;
    border-radius: 0 !important;
    font-weight: 800;
    font-size: 14px;
    letter-spacing: 0.2px;
    background: var(--primary) !important;
    border-color: var(--primary) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

#order-standard_cart #primaryLookupResult p.domain-price .btn:hover,
#order-standard_cart #primaryLookupResult p.domain-price button:hover,
#order-standard_cart #primaryLookupResult p.domain-price a.btn:hover,
#order-standard_cart #primaryLookupResult .domain-price .btn:hover,
#order-standard_cart #primaryLookupResult .domain-price button:hover,
#order-standard_cart #primaryLookupResult .domain-price a.btn:hover {
    filter: brightness(0.94);
}

#order-standard_cart #primaryLookupResult p.domain-price .btn:focus,
#order-standard_cart #primaryLookupResult p.domain-price .btn:active,
#order-standard_cart #primaryLookupResult p.domain-price button:focus,
#order-standard_cart #primaryLookupResult p.domain-price button:active,
#order-standard_cart #primaryLookupResult p.domain-price a.btn:focus,
#order-standard_cart #primaryLookupResult p.domain-price a.btn:active,
#order-standard_cart #primaryLookupResult .domain-price .btn:focus,
#order-standard_cart #primaryLookupResult .domain-price .btn:active,
#order-standard_cart #primaryLookupResult .domain-price button:focus,
#order-standard_cart #primaryLookupResult .domain-price button:active,
#order-standard_cart #primaryLookupResult .domain-price a.btn:focus,
#order-standard_cart #primaryLookupResult .domain-price a.btn:active {
    box-shadow: none !important;
    outline: none !important;
}

/* Match desired compact primary card row */
#order-standard_cart #primaryLookupResult .domain-price .register-price-label,
#order-standard_cart #primaryLookupResult .domain-price .transfer-price-label {
    display: none !important;
}

#order-standard_cart #primaryLookupResult .domain-price .price {
    margin-right: auto !important;
}

/* Primary register row: WHMCS toggles .to-add / .loading / .added; keep checkout readable */
#order-standard_cart #primaryLookupResult .domain-price .btn.btn-primary.btn-add-to-cart.checkout:not(.product-domain) .to-add,
#order-standard_cart #primaryLookupResult .domain-price .btn.btn-primary.btn-add-to-cart.checkout:not(.product-domain) .loading,
#order-standard_cart #primaryLookupResult .domain-price .btn.btn-primary.btn-add-to-cart.checkout:not(.product-domain) .unavailable {
    display: none !important;
}

#order-standard_cart #primaryLookupResult .domain-price .btn.btn-primary.btn-add-to-cart.checkout:not(.product-domain) .added {
    display: inline-flex !important;
    align-items: center;
    gap: 0.35em;
    color: #ffffff !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
}

#order-standard_cart #primaryLookupResult .domain-price .btn.btn-primary.btn-add-to-cart.checkout:not(.product-domain) .added i {
    color: inherit !important;
    opacity: 1 !important;
    font-size: 1em !important;
    display: inline-block !important;
}

/* Avoid blank gap when WHMCS renders empty error node */
#order-standard_cart #primaryLookupResult p.domain-error:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 767.98px) {
    #order-standard_cart #DomainSearchResults {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Suggested alternatives list — hide on small screens (narrower than injected display:block rule: use 2 ids) */
    #order-standard_cart #DomainSearchResults .suggested-domains {
        display: none !important;
    }

    #order-standard_cart #ttSuggestedTableHead {
        display: none !important;
    }

    #order-standard_cart #DomainSearchResults #primaryLookupResult {
        width: calc(100% + 32px) !important;
        max-width: none !important;
        margin-left: -16px !important;
        margin-right: -16px !important;
    }

    #order-standard_cart #primaryLookupResult {
        display: block;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Keep top padding >= ::before bar (44px) so the message is not painted underneath it */
    #order-standard_cart #primaryLookupResult p.domain-available,
    #order-standard_cart #primaryLookupResult p.domain-unavailable,
    #order-standard_cart #primaryLookupResult p.domain-tld-unavailable,
    #order-standard_cart #primaryLookupResult p.domain-invalid {
        padding: 58px 12px 14px;
        font-size: 24px;
    }

    #order-standard_cart #primaryLookupResult p.domain-available::before,
    #order-standard_cart #primaryLookupResult p.domain-unavailable::before,
    #order-standard_cart #primaryLookupResult p.domain-tld-unavailable::before,
    #order-standard_cart #primaryLookupResult p.domain-invalid::before {
        height: 40px;
        font-size: 11px;
        padding: 0 12px;
    }

    #order-standard_cart #primaryLookupResult p.domain-price {
        padding: 12px;
        justify-content: center;
        text-align: center;
    }

    #order-standard_cart #primaryLookupResult p.domain-price .btn,
    #order-standard_cart #primaryLookupResult p.domain-price button,
    #order-standard_cart #primaryLookupResult p.domain-price a.btn {
        width: 100%;
        min-width: 0;
    }
}

/* Force Configure Product addon cards to match Configure Domains style */
#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > .col-sm-6 .panel.panel-default.panel-addon {
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05) !important;
    background: #ffffff !important;
    transform: none !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > .col-sm-6 .panel.panel-default.panel-addon .panel-body.card-body {
    padding: 12px !important;
    min-height: auto !important;
    display: block !important;
    background: #ffffff !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > .col-sm-6 .panel.panel-default.panel-addon .panel-body.card-body label {
    display: block !important;
    margin: 0 0 6px !important;
    padding: 0 !important;
    border: 0 !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    line-height: 1.2 !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > .col-sm-6 .panel.panel-default.panel-addon .panel-body.card-body > :last-child {
    color: #475569 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > .col-sm-6 .panel.panel-default.panel-addon .panel-price {
    border-top: 1px solid #f1f5f9 !important;
    padding: 10px 12px !important;
    font-weight: 800 !important;
    background: #ffffff !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > .col-sm-6 .panel.panel-default.panel-addon .panel-add {
    border-top: 1px solid #f1f5f9 !important;
    padding: 10px 12px !important;
    background: #ffffff !important;
    color: #00a650 !important;
}

/* FINAL: configureproduct addon cards should match confdomains addons */
#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon {
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05) !important;
    background: #ffffff !important;
    transform: none !important;
    transition: none !important;
    text-align: left !important;
    height: auto !important;
    display: grid !important;
    grid-template-columns: 1fr auto;
    grid-template-areas:
        "body body"
        "price add";
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon:hover {
    border-color: #e5e7eb !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05) !important;
    transform: none !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon .panel-body {
    padding: 12px !important;
    min-height: auto !important;
    display: block !important;
    background: #ffffff !important;
    text-align: left !important;
    grid-area: body;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon .panel-body label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    border: 0 !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #0f172a !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    text-align: left !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon .panel-body label input[type="checkbox"] {
    margin: 0 !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon .panel-body br {
    display: none !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon .panel-body > :last-child {
    display: block !important;
    margin: 0 !important;
    color: #475569 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    text-align: left !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon .panel-body strong {
    display: block;
    margin-top: 8px;
    font-size: 12px !important;
    line-height: 1.45;
    font-weight: 600;
    color: #64748b !important;
    letter-spacing: 0.1px;
}

/* Hard enforce helper-note style in configure product addons */
#order-standard_cart #productAddonsContainer strong,
#order-standard_cart #frmConfigureProduct #productAddonsContainer strong,
#order-standard_cart #frmConfigureProduct #productAddonsContainer .panel-body strong {
    display: block !important;
    margin-top: 8px !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
    color: #64748b !important;
    letter-spacing: 0.1px !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon .panel-price {
    border-top: 1px solid #f1f5f9 !important;
    padding: 10px 12px !important;
    font-weight: 800 !important;
    background: #ffffff !important;
    color: #0f172a !important;
    text-align: left !important;
    float: none !important;
    width: auto !important;
    grid-area: price;
    border-top: 1px solid #f1f5f9 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon .panel-add {
    border-top: 1px solid #f1f5f9 !important;
    padding: 10px 12px !important;
    background: #ffffff !important;
    color: #00a650 !important;
    font-weight: 700 !important;
    text-align: right !important;
    display: block !important;
    float: none !important;
    width: auto !important;
    grid-area: add;
    align-self: stretch;
    border-top: 1px solid #f1f5f9 !important;
    border-left: 0 !important;
    border-bottom: 0 !important;
}

@media (max-width: 767.98px) {
    #order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon {
        grid-template-columns: 1fr;
        grid-template-areas:
            "body"
            "price"
            "add";
    }

    #order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon .panel-price,
    #order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon .panel-add {
        float: none;
        width: 100%;
        text-align: left !important;
    }

    #order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] .panel-addon .panel-add {
        border-top: 0 !important;
        padding-top: 0 !important;
    }
}

#order-standard_cart #frmConfigureProduct #productAddonsContainer .row.addon-products > div[class*="col-"] {
    margin-bottom: 12px !important;
}

/* Homepage responsive hardening (hostim-child) */
.tt-domain-top-section .tt-hero-domain-card,
.tt-hosting-options .container,
.tt-google-reviews-section .container {
    width: 100%;
}

.tt-domain-top-section .tt-hero-tld-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.tt-domain-top-section .tt-hero-tld-list li {
    min-width: 0;
}

.tt-hero-two .tt-hero h1 {
    font-size: clamp(28px, 4vw, 46px);
    line-height: 1.2;
    word-break: break-word;
}

.tt-hero-two .tt-hero p.lead {
    font-size: clamp(15px, 1.6vw, 18px);
    line-height: 1.55;
}

.tt-hero-two .tt-hero-btns {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.tt-hero-two .tt-hero-btns .btn {
    margin-right: 0 !important;
}

.tt-hero-two .tt-hero-img-wrap img.hero-img {
    width: 100%;
    max-width: 560px;
    height: auto;
    display: block;
    margin: 0 auto;
}

@media (min-width: 992px) {
    section.hc-hero-boxed .tt-animation-icon-img {
        position: absolute;
        left: auto;
        right: 43%;
        top: 24%;
        max-width: 80px;
        height: auto;
        pointer-events: none;
        backface-visibility: hidden;
        animation: bounce 1s ease-in-out 0s infinite alternate;
    }
}

.tt-hosting-options__head h2 {
    font-size: clamp(24px, 3.2vw, 32px);
}

.tt-hosting-options__feature-content h4 {
    font-size: clamp(24px, 3vw, 36px);
}

.tt-hosting-options__card > a.tt-hosting-options__title {
    height: auto;
    min-height: 24px;
    -webkit-line-clamp: 2;
}

.tt-google-reviews-section iframe {
    width: 100% !important;
    height: 344px;
    max-width: 100%;
}

@media (max-width: 1199.98px) {
    .tt-domain-top-section .tt-hero-tld-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tt-hero-two .tt-hero-img-wrap {
        margin-top: 10px;
    }
}

@media (max-width: 991.98px) {
    .tt-domain-top-section .tt-hero-domain-card {
        padding: 14px;
    }

    .tt-domain-top-section .tt-hero-tld-strip {
        margin-top: 12px;
    }

    .tt-hosting-options.ptb-100,
    .tt-google-reviews-section.ptb-100 {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
    }

    .tt-hosting-options__feature {
        flex-direction: column;
        align-items: flex-start;
    }

    .tt-hosting-options__feature-image {
        min-width: 0;
        width: 100%;
        justify-content: flex-start;
    }

    .tt-hosting-options__feature-image img {
        width: min(200px, 60vw);
    }
}

@media (max-width: 767.98px) {
    .tt-domain-top-section .container,
    .tt-hosting-options .container,
    .tt-google-reviews-section .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    .tt-domain-top-section .input-group {
        flex-wrap: wrap;
    }

    .tt-domain-top-section .tt-hero-domain-input .form-control {
        width: 100%;
        border-radius: 10px !important;
    }

    .tt-domain-top-section .tt-hero-tld-list {
        display: flex;
        overflow-x: auto;
        white-space: nowrap;
        gap: 10px;
        padding-bottom: 4px;
    }

    .tt-domain-top-section .tt-hero-tld-list li {
        flex: 0 0 auto;
        min-width: 130px;
    }

    .tt-hero-two .row {
        row-gap: 16px;
    }

    .tt-hero-two .tt-hero {
        text-align: center;
    }

    .tt-hero-two .tt-hero-btns {
        justify-content: center;
    }

    .tt-hero-two .tt-hero-btns .btn {
        width: 100%;
        max-width: 260px;
    }

    .tt-animation-icon-img {
        right: 16%;
        top: 14%;
        max-width: 58px;
    }

    .tt-google-reviews-section iframe {
        height: 300px;
    }

    .tt-account {
        min-height: 110px;
        padding: 18px 10px !important;
        font-size: 14px;
        line-height: 1.35;
    }
}

/* =========================================================
   Responsive Buckets (shared roadmap for next pages)
   <=360, <=390, <=430, <=575.98, <=767.98, <=991.98, <=1199.98
   ========================================================= */

/* iPhone SE / compact widths: keep mobile card full width */
@media (max-width: 390px) {
    .tt-domain-top-section,
    .tt-domain-top-section.tt-domain-top-section--drg {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .tt-domain-top-section > .container {
        max-width: 100% !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .tt-domain-top-section .tt-hero-domain-card {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        border-radius: 12px !important;
    }

    .tt-domain-top-section .tt-hero-domain-input .form-control {
        width: 100% !important;
    }

    .tt-domain-top-section #btnDomainSearch,
    .tt-domain-top-section #btnDomainSearch2,
    .tt-domain-top-section #btnTransfer,
    .tt-domain-top-section #btnTransfer2 {
        width: 100% !important;
        min-width: 0 !important;
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    /* iPhone SE: keep clear gap between header actions and input */
    header.tt-header .tt-secondary-list {
        margin-bottom: 14px !important;
    }

    #frmDomainHero .tt-hero-domain-input {
        margin-top: 20px !important;
    }

    #frmDomainHero .tt-hero-domain-input .form-control {
        border-radius: 10px !important;
    }

    /* Home header logo should not dominate compact portrait */
    .tt-domain-top-section .tt-hero-domain-card .navbar-brand .logo-img,
    .tt-domain-top-section .tt-hero-domain-card .logo-img {
        width: 156px !important;
        max-width: 156px !important;
        height: auto !important;
    }

    #frmDomainHero .navbar-brand {
        display: block !important;
        width: fit-content !important;
        max-width: 100% !important;
        float: none !important;
        margin: 0 auto 6px !important;
        padding: 0 !important;
        text-align: center !important;
        line-height: 1 !important;
    }

    #frmDomainHero .navbar-brand .logo-img {
        display: block !important;
        margin: 8px auto !important;
        width: 150px !important;
        max-width: 150px !important;
    }

    #frmDomainHero .row.d-sm-none.mt-3 {
        margin-top: 14px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 10px !important;
    }

    #frmDomainHero .row.d-sm-none.mt-3 > [class*="col-"] {
        flex: 1 1 0 !important;
        max-width: 50% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    #frmDomainHero .row.d-sm-none.mt-3 .btn {
        min-height: 42px !important;
        font-size: 16px !important;
        font-weight: 600 !important;
    }

    #frmDomainHero .tt-secondary-list .nav-item.ml-2.d-xl-none > .btn.nav-link {
        height: 36px !important;
        min-height: 36px !important;
        width: 36px !important;
        min-width: 36px !important;
        border: 1px solid #d5dae3 !important;
        border-radius: 6px !important;
        background: #fff !important;
        box-shadow: none !important;
        padding: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    section.hc-hero-boxed .tt-animation-icon-img {
        right: 35% !important;
        top: 36% !important;
        max-width: 60px !important;
        z-index: 3 !important;
        opacity: 1 !important;
        filter: brightness(1.25) saturate(1.2) drop-shadow(0 2px 6px rgba(0, 0, 0, 0.28));
    }

    /* Footer iPhone SE tuning */
    .tt-footer-professional .navbar-brand {
        display: block !important;
        text-align: center;
        margin-bottom: 10px !important;
    }

    .tt-footer-professional .tt-footer-logo {
        display: inline-block;
        max-width: 186px !important;
        width: 100%;
        height: auto;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom .copyright {
        text-align: center !important;
        font-size: 11.5px !important;
        line-height: 1.45 !important;
        margin-bottom: 8px !important;
        overflow-wrap: anywhere;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom .list-inline {
        width: 100%;
        text-align: center !important;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom .list-inline .btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        max-width: calc(100vw - 40px);
        white-space: normal;
        line-height: 1.25;
        padding: 8px 10px !important;
    }
}

/* iPhone SE landscape (667x375): footer strip + hero icon alignment */
@media (max-width: 667px) and (max-height: 390px) and (orientation: landscape) {
    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom .container {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom .copyright {
        font-size: 11px !important;
        line-height: 1.35 !important;
        margin-bottom: 6px !important;
        text-align: center !important;
    }

    footer.footer.tt-footer.tt-footer-professional .tt-footer-bottom .list-inline .btn {
        font-size: 11px !important;
        padding: 6px 9px !important;
        border-radius: 6px !important;
        max-width: calc(100vw - 52px);
    }

    section.hc-hero-boxed .tt-animation-icon-img {
        right: 38% !important;
        top: 30% !important;
        max-width: 50px !important;
    }
}

@media (max-width: 575.98px) {
    .tt-hosting-options.ptb-100,
    .tt-google-reviews-section.ptb-100 {
        padding-top: 52px !important;
        padding-bottom: 52px !important;
    }

    .tt-hosting-options__card {
        padding: 18px 14px;
    }

    .tt-hosting-options__feature {
        padding: 18px 14px;
    }

    .tt-google-reviews-section iframe {
        height: 270px;
    }
}

/* Site-wide responsive baseline (hostim-child pages) */
img,
svg,
iframe,
video {
    max-width: 100%;
}

.container,
.container-sm,
.container-md,
.container-lg,
.container-xl {
    width: 100%;
}

.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.tt-page-header h1,
.tt-section-heading h1,
.tt-section-heading h2 {
    overflow-wrap: anywhere;
}

.tt-hero-btns,
.tt-google-reviews-actions,
.tt-toolbar-wrap {
    flex-wrap: wrap;
}

.tt-footer-logo,
.tt-playstore-badge {
    max-width: 100%;
    height: auto;
}

@media (max-width: 1199.98px) {
    .tt-page-header {
        padding-top: 46px;
        padding-bottom: 46px;
    }

    .tt-footer-widget {
        margin-bottom: 24px;
    }
}

@media (max-width: 991.98px) {
    .ptb-100 {
        padding-top: 70px !important;
        padding-bottom: 70px !important;
    }

    .tt-page-header h1 {
        font-size: clamp(28px, 5vw, 38px);
        line-height: 1.2;
    }

    .tt-section-heading h2 {
        font-size: clamp(24px, 4.5vw, 34px);
    }

    .tt-hero-domain-card,
    .tt-google-reviews-card,
    .tt-hosting-options__card,
    .tt-account {
        border-radius: 10px;
    }
}

@media (max-width: 767.98px) {
    .container,
    .container-sm,
    .container-md,
    .container-lg,
    .container-xl {
        padding-left: 12px;
        padding-right: 12px;
    }

    .ptb-100 {
        padding-top: 56px !important;
        padding-bottom: 56px !important;
    }

    .tt-page-header {
        padding-top: 34px;
        padding-bottom: 34px;
    }

    .tt-page-header h1 {
        font-size: clamp(24px, 8vw, 32px);
    }

    .tt-page-header p,
    .tt-section-heading p {
        font-size: 15px;
        line-height: 1.6;
    }

    .tt-hero-btns .btn,
    .tt-google-reviews-actions .btn,
    .tt-domain-top-section .tt-hero-domain-input .btn {
        width: 100%;
        max-width: 280px;
        margin-right: 0 !important;
    }

    .tt-toolbar-wrap {
        justify-content: center;
        gap: 8px;
    }

    .tt-footer-widget h6 {
        margin-top: 4px;
    }
}

@media (max-width: 575.98px) {
    .ptb-100 {
        padding-top: 48px !important;
        padding-bottom: 48px !important;
    }

    .tt-page-header h1 {
        font-size: 24px;
    }

    .tt-section-heading h2 {
        font-size: 24px;
        line-height: 1.25;
    }

    .tt-section-heading p {
        font-size: 14px;
    }

    .btn,
    .tt-btn,
    button.btn,
    input.btn {
        min-height: 42px;
    }
}

/* Mobile overflow safety: prevent page-level left-right shake */
@media (max-width: 767.98px) {
    html,
    body,
    body.tt-body-wrapper {
        max-width: 100%;
        overflow-x: hidden;
    }

    section.hc-hero-boxed,
    .tt-domain-top-section,
    .tt-google-reviews-section {
        overflow-x: hidden;
    }
}

/* Global safety: keep main header/footer visible and interactive */
header.tt-header,
header.tt-header .navbar,
header.tt-header .navbar * {
    pointer-events: auto !important;
}

header.tt-header,
header.tt-header.affix,
header.tt-header .navbar,
header.tt-header .navbar-collapse,
header.tt-header .dropdown-menu {
    z-index: 3000 !important;
}

footer.tt-footer,
footer.footer.tt-footer,
footer.footer.tt-footer.tt-footer-professional {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Homepage mobile hardening (domain search hero) */
@media (max-width: 767.98px) {
    .tt-domain-top-section,
    .tt-domain-top-section.tt-domain-top-section--drg,
    .tt-domain-top-section .drg-section-card,
    .tt-domain-top-section .drg-section-card > .container,
    .tt-domain-top-section .container,
    #frmDomainSearchHero {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    #frmDomainSearchHero.tt-hero-domain-card,
    .tt-domain-top-section .tt-hero-domain-card {
        border-radius: 12px !important;
        padding: 12px !important;
        overflow: hidden !important;
    }

    .tt-domain-top-section .tt-hero-domain-input .input-group,
    .tt-domain-top-section .tt-domain-hero-input-group {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }

    .tt-domain-top-section #btnDomainSearch,
    .tt-domain-top-section #btnDomainSearch2,
    .tt-domain-top-section #btnTransfer,
    .tt-domain-top-section #btnTransfer2 {
        flex: 1 1 calc(50% - 4px) !important;
        width: calc(50% - 4px) !important;
        min-width: 0 !important;
    }
}

/* Order form: hide left sidebar and center cart body */
#order-standard_cart .cart-sidebar {
    display: none !important;
}

#order-standard_cart > .row {
    display: block;
    margin-left: 0;
    margin-right: 0;
}

#order-standard_cart .cart-body {
    float: none !important;
    width: 100% !important;
    max-width: 1140px;
    margin-left: auto !important;
    margin-right: auto !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* Some standard_cart steps use cart-body.w-100; keep same card look */
#order-standard_cart .cart-body.w-100 {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

#order-standard_cart .cart-body .header-lined > h1.font-size-36 {
    display: none !important;
}

#order-standard_cart .sidebar-collapsed {
    display: none !important;
}

/* Domain transfer form card polish */
#order-standard_cart #frmDomainTransfer .panel.card.panel-default {
    border: 1px solid #e5e7eb !important;
    border-radius: 14px !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06) !important;
    overflow: hidden;
    background: #ffffff;
}

#order-standard_cart #frmDomainTransfer .panel-heading.card-header {
    background: #f8fafc;
    border-bottom: 1px solid #eef2f7;
    padding: 14px 16px 10px !important;
}

/* Remove "Single domain transfer" heading on transfer form */
#order-standard_cart #frmDomainTransfer .panel-heading.card-header {
    display: none !important;
}

#order-standard_cart #frmDomainTransfer .panel-heading .panel-title {
    margin: 0;
    font-weight: 900;
    color: #0f172a;
    letter-spacing: -0.2px;
}

#order-standard_cart #frmDomainTransfer .panel-body.card-body {
    padding: 16px !important;
}

#order-standard_cart #frmDomainTransfer .form-group label {
    font-weight: 900 !important;
    color: #0f172a;
    font-size: 14px;
    line-height: 1.25;
    letter-spacing: -0.2px;
    margin-bottom: 8px;
}

/* Make specific transfer form labels even bolder */
#order-standard_cart #frmDomainTransfer label[for="inputTransferDomain"],
#order-standard_cart #frmDomainTransfer label[for="inputAuthCode"] {
    font-weight: 950 !important;
    font-size: 15px;
}

/* Align the small "Help" icon/link nicely with label text */
#order-standard_cart #frmDomainTransfer label[for="inputAuthCode"] a {
    vertical-align: middle;
    margin-left: 10px;
}

#order-standard_cart #frmDomainTransfer #inputTransferDomain,
#order-standard_cart #frmDomainTransfer #inputAuthCode {
    height: 44px;
    border-radius: 10px;
    border: 1px solid #d1d5db;
    box-shadow: none !important;
}

#order-standard_cart #frmDomainTransfer .panel-footer.card-footer {
    background: #ffffff;
    border-top: 1px solid #eef2f7;
    padding: 14px 16px !important;
}

#order-standard_cart #frmDomainTransfer #btnTransferDomain {
    min-height: 44px;
    border-radius: 10px !important;
    font-weight: 800;
    padding: 10px 18px !important;
}

@media (max-width: 767.98px) {
    #order-standard_cart #frmDomainTransfer .col-sm-8 {
        padding-left: 0;
        padding-right: 0;
    }

    #order-standard_cart #frmDomainTransfer .panel-footer.card-footer {
        text-align: center !important;
    }

    #order-standard_cart #frmDomainTransfer #btnTransferDomain {
        width: 100%;
        max-width: 420px;
    }
}

/* Shared FAQ section for domain + hosting order pages */
#ttDomainFaq {
    position: static !important;
    width: 100% !important;
    margin: 28px 0 0 !important;
    padding: 70px 0 36px !important;
    border-top: 1px solid #eef2f7;
    background: #ffffff;
    overflow: hidden;
    clear: both;
}

#ttDomainFaq .tt-domain-faq__title {
    text-align: center;
    font-size: clamp(30px, 3.6vw, 54px);
    line-height: 1.02;
    font-weight: 950;
    letter-spacing: -1px;
    color: #0f172a;
    margin: 0 0 12px;
}

#ttDomainFaq .tt-domain-faq__subtitle {
    text-align: center;
    margin: 0 auto 30px;
    max-width: 740px;
    color: #64748b;
    font-size: 15px;
    line-height: 1.6;
}

#ttDomainFaq .tt-domain-faq__list {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 24px;
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.10);
    border-radius: 18px;
    box-shadow: 0 22px 60px rgba(15, 23, 42, 0.08);
    overflow: hidden;
}

#ttDomainFaq .tt-faq-item {
    border-bottom: 1px solid #eef2f7;
}

#ttDomainFaq .tt-faq-item:last-child {
    border-bottom: 0;
}

#ttDomainFaq .tt-faq-q {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 22px;
    background: transparent;
    border: 0;
    text-align: left;
    font-size: 18px;
    font-weight: 650;
    color: #0f172a;
}

#ttDomainFaq .tt-faq-q:hover {
    background: #f8fafc;
}

#ttDomainFaq .tt-faq-q:focus {
    outline: none !important;
    box-shadow: none !important;
}

#ttDomainFaq .tt-faq-q strong {
    font-weight: 700;
    color: #0f172a;
}

#ttDomainFaq .tt-faq-icon {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.14);
    color: #0f172a;
    flex: 0 0 auto;
    font-size: 0;
    line-height: 0;
    position: relative;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    box-shadow: 0 10px 18px rgba(15, 23, 42, 0.06);
    pointer-events: none;
}

#ttDomainFaq .tt-faq-icon::before,
#ttDomainFaq .tt-faq-icon::after {
    content: "";
    position: absolute;
    width: 12px;
    height: 2px;
    background: currentColor;
    border-radius: 2px;
}

#ttDomainFaq .tt-faq-icon::after {
    transform: rotate(90deg);
    transition: transform .15s ease, opacity .15s ease;
}

#ttDomainFaq .tt-faq-q[aria-expanded="true"] {
    background: #f1f5f9;
}

#ttDomainFaq .tt-faq-q[aria-expanded="true"] .tt-faq-icon::after {
    opacity: 0;
    transform: rotate(90deg) scaleX(0.5);
}

#ttDomainFaq .tt-faq-a {
    padding: 0 22px 20px;
}

#ttDomainFaq .tt-faq-a .tt-faq-a__inner {
    color: #334155;
    font-size: 14.5px;
    line-height: 1.8;
    max-width: 920px;
}

/* Hosting information sections above FAQ */
.tt-hosting-info-band {
    padding: 72px 0;
    overflow: hidden;
}

#ttHostingAudience > .container,
#ttHostingCompare > .container {
    width: 100%;
    max-width: 1320px;
}

.tt-hosting-info-band--muted {
    background: #f8fafc;
}

.tt-hosting-info-band--white {
    background: #ffffff;
}

.tt-hosting-info-head {
    max-width: 860px;
    margin: 0 auto 32px;
    text-align: center;
}

.tt-hosting-info-head h2 {
    margin: 0 0 12px;
    color: #0f172a;
    font-size: clamp(30px, 3.6vw, 54px);
    line-height: 1.02;
    font-weight: 950;
    letter-spacing: -1px;
}

#ttHostingAudience .tt-hosting-info-head h2 {
    text-align: center;
    margin: 0 0 12px;
}

.tt-hosting-info-head p {
    margin: 0 auto;
    color: #64748b;
    font-size: 15px;
    line-height: 1.7;
    max-width: 760px;
}

.tt-hosting-compare-grid,
.tt-hosting-audience-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.tt-hosting-audience-card {
    height: 100%;
    padding: 24px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
}

.tt-hosting-audience-card__icon {
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    margin-bottom: 18px;
}

.tt-hosting-audience-card__icon svg {
    width: 30px;
    height: 30px;
    stroke: color-mix(in srgb, var(--primary) 88%, #0b5d36);
    fill: none;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.tt-hosting-audience-card h3 {
    margin: 0 0 12px;
    color: #0f172a;
    font-size: 22px;
    line-height: 1.25;
    font-weight: 800;
}

.tt-hosting-audience-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tt-hosting-audience-card p {
    margin: 0;
    color: #475569;
    font-size: 15px;
    line-height: 1.75;
}

.tt-hosting-compare-grid {
    grid-template-columns: 1fr;
}

.tt-hosting-compare-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border-radius: 18px;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.06);
}

.tt-hosting-compare-table {
    width: 100%;
    min-width: 860px;
    border-collapse: separate;
    border-spacing: 0;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    overflow: hidden;
}

.tt-hosting-compare-table th,
.tt-hosting-compare-table td {
    word-break: break-word;
}

.tt-hosting-compare-table thead th {
    padding: 18px 20px;
    background: #111111;
    color: #ffffff;
    font-size: 17px;
    font-weight: 800;
    text-align: left;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.tt-hosting-compare-table thead th:first-child {
    background: #111111;
    color: #ffffff;
}

.tt-hosting-compare-head {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 20px;
}

.tt-hosting-compare-head svg {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    stroke: #ffffff;
    fill: none;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.tt-hosting-compare-table tbody th,
.tt-hosting-compare-table tbody td {
    padding: 18px 20px;
    border-bottom: 1px solid #e5e7eb;
    vertical-align: middle;
    text-align: left;
}

.tt-hosting-compare-table tbody th {
    width: 22%;
    color: #1f2937;
    font-size: 17px;
    font-weight: 700;
    background: #ffffff;
}

.tt-hosting-compare-table tbody td {
    width: 26%;
    color: #475569;
    font-size: 17px;
    line-height: 1.55;
    background: #ffffff;
}

.tt-hosting-compare-table tbody tr:nth-child(even) th,
.tt-hosting-compare-table tbody tr:nth-child(even) td {
    background: #f8fafc;
}

.tt-hosting-compare-table tbody td:first-of-type {
    color: #334155;
    font-weight: 700;
}

.tt-hosting-compare-table tbody tr:last-child th,
.tt-hosting-compare-table tbody tr:last-child td {
    border-bottom: 0;
}

.tt-hosting-compare-check {
    display: inline-block;
    margin-right: 10px;
    color: var(--primary);
    font-weight: 900;
}

@media (max-width: 991px) {
    .tt-hosting-info-band {
        padding: 60px 0;
    }

    .tt-hosting-info-head {
        margin-bottom: 26px;
        padding: 0 8px;
    }

    .tt-hosting-info-head h2 {
        font-size: clamp(30px, 3.6vw, 54px);
        line-height: 1.08;
        letter-spacing: -0.7px;
        margin-bottom: 12px;
    }

    .tt-hosting-info-head p {
        font-size: 14.5px;
        line-height: 1.65;
    }

    .tt-hosting-audience-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    .tt-hosting-audience-card {
        padding: 22px;
    }

    .tt-hosting-audience-card h3 {
        font-size: 20px;
    }

    .tt-hosting-compare-table {
        min-width: 760px;
    }

    .tt-hosting-compare-table thead th,
    .tt-hosting-compare-table tbody th,
    .tt-hosting-compare-table tbody td {
        padding: 16px 18px;
        font-size: 15px;
    }
}

@media (max-width: 767px) {
    #ttHostingCompare {
        display: none !important;
    }

    section#main-body .primary-content .text-center > h1,
    section#main-body .primary-content .text-center > .text-muted.mt-2 {
        display: none !important;
    }

    /* Metro store pricing: keep group title + taglines visible (above package slider). */
    section#main-body .primary-content:has(#products.TM-pricing-tables-container) .text-center > h1,
    section#main-body .primary-content:has(#products.TM-pricing-tables-container) .text-center > .text-muted.mt-2 {
        display: block !important;
    }

    .tt-hosting-info-band {
        padding: 46px 0;
    }

    #ttHostingAudience > .container,
    #ttHostingCompare > .container {
        padding-left: 14px;
        padding-right: 14px;
    }

    .tt-hosting-info-head {
        margin-bottom: 22px;
        padding: 0;
    }

    .tt-hosting-info-head h2 {
        font-size: 24px;
        text-align: center;
        line-height: 1.08;
        letter-spacing: -0.2px;
        margin-bottom: 8px;
        padding-left: 16px;
        padding-right: 16px;
    }

    .tt-hosting-info-head p {
        font-size: 14px;
        line-height: 1.65;
    }

    #ttHostingAudience .tt-hosting-info-head > p {
        display: none !important;
    }

    .tt-hosting-compare-grid,
    .tt-hosting-audience-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    /* Mobile: one full card per slide = 100% of grid (container width), not 100vw — avoids clipped box / horizontal page scroll */
    #ttHostingAudience > .container {
        min-width: 0 !important;
        max-width: 100% !important;
    }

    #ttHostingAudience .tt-hosting-audience-grid {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        gap: 14px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        scroll-snap-type: x mandatory !important;
        scroll-behavior: smooth !important;
        overscroll-behavior-x: contain !important;
        scrollbar-width: thin !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 6px !important;
        box-sizing: border-box !important;
    }

    #ttHostingAudience .tt-hosting-audience-grid > .tt-hosting-audience-card {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        scroll-snap-align: start !important;
        scroll-margin-inline: 0 !important;
        height: auto !important;
    }

    .tt-hosting-audience-card {
        padding: 18px;
        border-radius: 14px;
    }

    .tt-hosting-audience-card__icon {
        width: 52px;
        height: 52px;
        margin-bottom: 14px;
    }

    .tt-hosting-audience-card__icon svg {
        width: 26px;
        height: 26px;
    }

    .tt-hosting-compare-table thead th,
    .tt-hosting-compare-table tbody th,
    .tt-hosting-compare-table tbody td {
        padding: 14px 16px;
        font-size: 15px;
    }

    .tt-hosting-compare-table {
        min-width: 680px;
        border-radius: 14px;
    }

    .tt-hosting-compare-table-wrap {
        border-radius: 14px;
        margin: 0 -2px;
    }

    .tt-hosting-compare-head {
        gap: 8px;
    }

    .tt-hosting-compare-head svg {
        width: 16px;
        height: 16px;
        flex-basis: 16px;
    }

    .tt-hosting-audience-card h3 {
        font-size: 19px;
    }

    #ttDomainFaq {
        padding: 46px 0 24px !important;
    }

    #ttDomainFaq .tt-domain-faq__title {
        margin: 0 0 10px;
        font-size: 28px;
        line-height: 1.15;
        letter-spacing: -0.4px;
        font-weight: 800;
        padding-left: 16px;
        padding-right: 16px;
    }

    #ttDomainFaq .tt-domain-faq__subtitle {
        margin: 0 auto 16px;
        max-width: calc(100% - 24px);
        font-size: 14px;
        line-height: 1.55;
        padding-left: 16px;
        padding-right: 16px;
    }

    #ttDomainFaq .tt-faq-q {
        padding: 16px 16px;
        font-size: 16px;
    }

    #ttDomainFaq .tt-faq-a {
        padding: 0 16px 16px;
    }
}

@media (max-width: 575.98px) {
    .tt-hosting-info-band {
        padding: 40px 0;
    }

    #ttHostingAudience > .container,
    #ttHostingCompare > .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    .tt-hosting-info-head {
        margin-bottom: 18px;
    }

    .tt-hosting-audience-card {
        padding: 16px;
        border-radius: 12px;
    }

    .tt-hosting-audience-card h3 {
        font-size: 18px;
        margin-bottom: 10px;
    }

    .tt-hosting-audience-card p {
        font-size: 14px;
        line-height: 1.65;
    }

    .tt-hosting-compare-table {
        min-width: 620px;
        border-radius: 12px;
    }

    .tt-hosting-compare-table thead th,
    .tt-hosting-compare-table tbody th,
    .tt-hosting-compare-table tbody td {
        padding: 12px 14px;
        font-size: 14px;
    }

    .tt-hosting-compare-table tbody th {
        width: 28%;
    }

    .tt-hosting-compare-table tbody td {
        line-height: 1.5;
    }

    .tt-hosting-compare-check {
        margin-right: 8px;
    }

    #ttDomainFaq {
        padding: 40px 0 20px !important;
    }

    #ttDomainFaq .tt-domain-faq__title {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 8px;
        letter-spacing: -0.2px;
        padding-left: 16px;
        padding-right: 16px;
    }

    #ttDomainFaq .tt-domain-faq__subtitle {
        margin-bottom: 14px;
        font-size: 13px;
        line-height: 1.5;
        padding-left: 16px;
        padding-right: 16px;
    }

    #ttDomainFaq .tt-domain-faq__list {
        padding: 0 12px;
    }

    #ttDomainFaq .tt-faq-q {
        gap: 12px;
        padding: 14px 14px;
        font-size: 15px;
    }

    #ttDomainFaq .tt-faq-icon {
        width: 30px;
        height: 30px;
    }

    #ttDomainFaq .tt-faq-a {
        padding: 0 14px 14px;
    }

    #ttDomainFaq .tt-faq-a .tt-faq-a__inner {
        font-size: 14px;
        line-height: 1.7;
    }
}

/* =========================================================
   Global Responsive Matrix (all pages)
   Device-driven buckets from QA screenshots
   Desktop/Laptop -> Tablet -> Mobile -> Compact/Landscape
   ========================================================= */

/* Large desktops + laptops (Surface Pro landscape / Zenbook landscape) */
@media (min-width: 1200px) and (max-width: 1440px) {
    .container,
    .container-lg,
    .container-xl {
        max-width: min(1180px, calc(100% - 40px)) !important;
    }

    .tt-section-heading h2,
    .tt-page-header h1 {
        font-size: clamp(30px, 2.6vw, 42px);
    }
}

/* Tablets + foldables (iPad/Surface Duo/Zenbook portrait ranges) */
@media (min-width: 768px) and (max-width: 1199.98px) {
    .container,
    .container-md,
    .container-lg,
    .container-xl {
        max-width: calc(100% - 32px) !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .row {
        --bs-gutter-x: 20px;
    }

    .tt-section-heading h2,
    .tt-page-header h1 {
        font-size: clamp(26px, 3.5vw, 36px);
        line-height: 1.2;
    }

    .tt-hosting-options__feature {
        gap: 14px;
    }

    .tt-hosting-options__card {
        padding: 20px 16px;
    }

    .tt-google-reviews-section .tt-google-reviews-card {
        padding: 20px !important;
    }
}

/* Shared mobile baseline (phones + narrow fold portrait) */
@media (max-width: 767.98px) {
    .container,
    .container-sm,
    .container-md,
    .container-lg,
    .container-xl {
        max-width: 100% !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .ptb-100 {
        padding-top: 48px !important;
        padding-bottom: 48px !important;
    }

    .tt-section-heading h2,
    .tt-page-header h1 {
        font-size: clamp(24px, 6.3vw, 32px) !important;
        line-height: 1.22 !important;
    }

    .tt-section-heading p,
    .tt-page-header p {
        font-size: 14px !important;
        line-height: 1.6 !important;
    }

    /* Header layout stability across all pages */
    header#header > .navbar.navbar-light > .container {
        display: grid !important;
        grid-template-columns: 1fr auto !important;
        grid-template-areas:
            "logo actions";
        align-items: center !important;
        gap: 8px !important;
    }

    header#header > .navbar.navbar-light > .container > a.navbar-brand {
        grid-area: logo;
        width: auto !important;
        max-width: 170px !important;
        margin-right: 0 !important;
    }

    header#header > .navbar.navbar-light > .container > .tt-main-header.tt-toolbar-wrap {
        grid-area: actions;
        justify-self: end;
    }

    header#header .tt-secondary-list {
        gap: 8px !important;
        margin: 0 !important;
    }

    header#header .tt-secondary-list .btn,
    header#header .tt-secondary-list .btn-sm,
    header#header .tt-secondary-list .nav-link {
        min-height: 36px !important;
    }

    /* Generic form/button stacking */
    .input-group {
        flex-wrap: wrap;
    }

    .btn,
    button.btn,
    input.btn {
        min-height: 42px;
    }

    /* Shared cards/grids behavior */
    [class*="card"],
    .tt-account,
    .tt-hosting-options__card {
        border-radius: 12px !important;
    }

    .tt-hosting-options .row.g-3 > [class*="col-"] {
        margin-bottom: 10px;
    }

    /* Prevent data table overflow from breaking layout */
    .table-responsive {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .table-responsive table {
        min-width: 680px;
    }

    /* Footer readability */
    footer.footer .tt-footer-top {
        padding-top: 40px !important;
        padding-bottom: 30px !important;
    }

    footer.footer .tt-footer-bottom .copyright {
        text-align: center !important;
        line-height: 1.45 !important;
    }
}

/* Compact phones (iPhone SE, Galaxy Fold narrow, 360/375/390/412) */
@media (max-width: 430px) {
    header#header > .navbar.navbar-light > .container > a.navbar-brand {
        max-width: 156px !important;
    }

    .tt-domain-top-section .tt-hero-domain-card,
    #frmDomainSearchHero.tt-hero-domain-card {
        padding: 12px !important;
        border-radius: 12px !important;
    }

    .tt-domain-top-section .tt-hero-tld-list {
        gap: 8px !important;
    }

    .tt-domain-top-section .tt-hero-tld-list li {
        min-width: 112px !important;
    }

    .tt-google-reviews-section .tt-google-reviews-card {
        padding: 12px !important;
    }
}

/* Mobile offcanvas navigation polish */
@media (max-width: 1199.98px) {
    .tt-body-wrapper .overlay {
        background-color: rgba(15, 23, 42, 0.42);
        backdrop-filter: blur(1.5px);
    }

    header#header .offcanvas-collapse {
        width: min(88vw, 340px);
        max-width: 340px;
        top: 0;
        height: 100dvh;
        padding-left: 0;
        padding-right: 0;
        background: #ffffff;
        border-right: 1px solid #e5e7eb;
        box-shadow: 10px 0 30px rgba(15, 23, 42, 0.14);
        overscroll-behavior: contain;
        transition: transform .28s ease, box-shadow .28s ease;
    }

    header#header .offcanvas-collapse.open {
        box-shadow: 18px 0 40px rgba(15, 23, 42, 0.2);
    }

    header#header .offcanvas-collapse #mainNavbar {
        padding: max(16px, env(safe-area-inset-top)) 14px max(18px, env(safe-area-inset-bottom)) !important;
    }

    header#header .offcanvas-collapse .tt-offcanvas-head {
        position: sticky;
        top: 0;
        z-index: 2;
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin: -2px -2px 12px;
        padding: 8px 2px 10px;
        background: linear-gradient(180deg, #ffffff 0%, #ffffff 75%, rgba(255, 255, 255, 0.92) 100%);
        border-bottom: 1px solid #eef2f7;
    }

    header#header .offcanvas-collapse .tt-offcanvas-title {
        font-size: 13px;
        font-weight: 800;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: #6b7280;
    }

    header#header .offcanvas-collapse .tt-offcanvas-close {
        width: 32px;
        height: 32px;
        border: 1px solid #dbe2ea;
        border-radius: 8px;
        color: #334155;
        background: #ffffff;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transition: all .18s ease;
    }

    header#header .offcanvas-collapse .tt-offcanvas-close:hover {
        color: #0b7a47;
        border-color: #b8e6cc;
        background: #edf9f2;
    }

    header#header .offcanvas-collapse form.d-xl-none {
        margin-bottom: 10px;
    }

    header#header .offcanvas-collapse form.d-xl-none .input-group.search {
        margin-bottom: 0 !important;
        border: 1px solid #e5e7eb;
        border-radius: 10px;
        overflow: hidden;
    }

    header#header .offcanvas-collapse form.d-xl-none .form-control {
        font-size: 15px;
    }

    header#header .offcanvas-collapse #nav {
        display: flex;
        flex-direction: column;
        gap: 2px;
    }

    header#header .offcanvas-collapse #nav > li {
        width: 100%;
        margin: 0;
        border-bottom: 1px solid #eef2f7;
    }

    header#header .offcanvas-collapse #nav > li:last-child {
        border-bottom: 0;
    }

    header#header .offcanvas-collapse #nav > li > a {
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        padding: 10px 12px !important;
        font-size: 15px;
        line-height: 1.35;
        font-weight: 600;
        color: #1f2937;
        text-decoration: none;
        border-radius: 8px;
        transition: color .18s ease, background-color .18s ease;
    }

    header#header .offcanvas-collapse #nav > li > a:hover {
        background: #f8fafc;
        color: #0b7a47;
    }

    header#header .offcanvas-collapse #nav > li.active > a,
    header#header .offcanvas-collapse #nav > li.show > a {
        color: #0b7a47;
        background: #edf9f2;
    }

    header#header .offcanvas-collapse #nav .dropdown-menu {
        position: static !important;
        float: none !important;
        width: 100% !important;
        min-width: 0;
        margin: 2px 0 10px;
        padding: 6px 8px;
        border: 0;
        border-radius: 10px;
        background: #f8fafc;
        box-shadow: none;
    }

    header#header .offcanvas-collapse #nav .dropdown-item {
        padding: 0;
    }

    header#header .offcanvas-collapse #nav .dropdown-item > a {
        display: block;
        padding: 8px 12px !important;
        font-size: 13px;
        line-height: 1.45;
        color: #334155;
        border-radius: 8px;
        text-decoration: none;
        transition: color .16s ease, background-color .16s ease;
    }

    header#header .offcanvas-collapse #nav .dropdown-item > a:hover {
        background: #eef2ff;
        color: #0b7a47;
    }

    header#header .offcanvas-collapse #nav::-webkit-scrollbar {
        width: 6px;
    }

    header#header .offcanvas-collapse #nav::-webkit-scrollbar-thumb {
        background: #cbd5e1;
        border-radius: 999px;
    }
}

@media (max-width: 390px) {
    header#header .offcanvas-collapse {
        width: 92vw;
    }

    header#header .offcanvas-collapse #mainNavbar {
        padding: 14px 12px 16px !important;
    }

    header#header .offcanvas-collapse .tt-offcanvas-head {
        margin-bottom: 10px;
    }

    header#header .offcanvas-collapse #nav > li > a {
        padding: 9px 10px !important;
        font-size: 14px;
    }
}

/* Phone landscape (iPhone/Pixel/Galaxy landscape heights around 344-430) */
@media (max-width: 932px) and (max-height: 430px) and (orientation: landscape) {
    .ptb-100 {
        padding-top: 34px !important;
        padding-bottom: 34px !important;
    }

    header#header,
    header#header > .navbar.navbar-light {
        min-height: 70px !important;
        height: 70px !important;
    }

    header#header > .navbar.navbar-light > .container > a.navbar-brand {
        max-width: 148px !important;
    }

    header#header .tt-secondary-list .btn,
    header#header .tt-secondary-list .btn-sm,
    header#header .tt-secondary-list .nav-link {
        min-height: 34px !important;
        height: 34px !important;
    }

    .tt-domain-top-section .tt-hero-domain-card {
        padding: 10px !important;
    }

    .tt-domain-top-section .tt-hero-tld-strip {
        margin-top: 8px !important;
    }

}

/* =========================================================
   Responsive Harmonization Layer (all pages, hostim-child)
   Keeps existing fixes but reduces cross-page regressions
   ========================================================= */

/* Use border-box everywhere to avoid width overflow issues */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* Media should never overflow their containers */
img,
svg,
video,
canvas,
iframe {
    max-width: 100%;
}

/* Avoid global card side-effects on WHMCS core components */
@media (max-width: 767.98px) {
    [class*="card"] {
        border-radius: initial;
    }

    .tt-domain-top-section .tt-hero-domain-card,
    .tt-hosting-options__card,
    .tt-google-reviews-section .tt-google-reviews-card,
    .tt-account {
        border-radius: 12px !important;
    }
}

/* Keep input-group wrapping scoped to places that need it */
@media (max-width: 767.98px) {
    .input-group {
        flex-wrap: nowrap;
    }

    .tt-domain-top-section .input-group,
    .tt-domain-top-section .tt-domain-hero-input-group,
    #order-standard_cart .input-group,
    #frmDomainTransfer .input-group {
        flex-wrap: wrap;
    }
}

/* Safer table behavior for all pages */
@media (max-width: 767.98px) {
    .table-responsive {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .table-responsive table {
        width: 100%;
        min-width: 560px;
    }

    .tt-hosting-compare-table-wrap .table-responsive table,
    .tt-hosting-compare-table {
        min-width: 680px !important;
    }
}

/* Header normalization for mobile/tablet (shared across pages) */
@media (max-width: 991.98px) {
    header#header > .navbar.navbar-light > .container {
        align-items: center !important;
    }

    header#header .tt-secondary-list {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 8px !important;
    }

    header#header .tt-secondary-list .nav-link,
    header#header .tt-secondary-list .btn,
    header#header .tt-secondary-list .btn-sm,
    header#header .tt-secondary-list .cart-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 36px !important;
    }
}

/* Cart + order pages responsive hardening */
@media (max-width: 991.98px) {
    #order-standard_cart .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    #order-standard_cart .cart-body,
    #order-standard_cart .cart-sidebar,
    #order-standard_cart .panel,
    #order-standard_cart .card {
        width: 100% !important;
        max-width: 100% !important;
    }

    #order-standard_cart .form-control,
    #order-standard_cart .form-select,
    #order-standard_cart select,
    #order-standard_cart input[type="text"],
    #order-standard_cart input[type="email"],
    #order-standard_cart input[type="password"] {
        max-width: 100% !important;
    }
}

@media (max-width: 575.98px) {
    #order-standard_cart .btn,
    #order-standard_cart button.btn,
    #order-standard_cart input.btn {
        width: 100%;
    }
}

/* Clientarea + common content pages */
@media (max-width: 767.98px) {
    #main-body .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    #main-body [class*="col-"] {
        padding-left: 8px;
        padding-right: 8px;
    }

    #main-body .panel,
    #main-body .card,
    #main-body .well,
    #main-body .alert {
        max-width: 100%;
    }

    #main-body .primary-content hr.separator {
        display: none !important;
    }

    /* Mobile header no-wrap fix (cart/client pages) */
    header#header > .navbar.navbar-light > .container {
        grid-template-columns: minmax(0, 1fr) auto !important;
        column-gap: 6px !important;
    }

    header#header > .navbar.navbar-light > .container > a.navbar-brand {
        max-width: 150px !important;
        min-width: 0 !important;
    }

    header#header > .navbar.navbar-light > .container > a.navbar-brand .logo-img {
        width: 100% !important;
        max-width: 150px !important;
        height: auto !important;
    }

    header#header > .navbar.navbar-light > .container > .tt-main-header.tt-toolbar-wrap {
        min-width: 0 !important;
    }

    header#header .tt-secondary-list {
        flex-wrap: nowrap !important;
        white-space: nowrap;
        gap: 6px !important;
    }

    header#header .tt-secondary-list .btn-sm.tt-login-btn {
        padding: 0 8px !important;
        min-width: 56px !important;
    }

    header#header .tt-secondary-list .btn,
    header#header .tt-secondary-list .btn-sm,
    header#header .tt-secondary-list .nav-link,
    header#header .tt-secondary-list .cart-btn {
        width: 34px;
        min-width: 34px;
        height: 34px !important;
        min-height: 34px !important;
    }

    header#header .tt-secondary-list .btn-sm.tt-login-btn {
        width: auto !important;
    }
}

@media (max-width: 575.98px) {
    header#header .tt-secondary-list .tt-login-btn .tt-hide-sm,
    header#header .tt-secondary-list .tt-login-btn span {
        display: none !important;
    }

    header#header .tt-secondary-list .btn-sm.tt-login-btn {
        min-width: 34px !important;
        padding: 0 !important;
    }
}

/* Footer consistency across screen sizes */
@media (max-width: 991.98px) {
    footer.footer .tt-footer-top {
        padding-top: 44px !important;
        padding-bottom: 30px !important;
    }

    footer.footer .tt-footer-widget {
        margin-bottom: 18px;
    }

    footer.footer .tt-footer-bottom .copyright,
    footer.footer .tt-footer-bottom .list-inline {
        text-align: center !important;
    }
}

/* =========================================================
   Theme-wide page responsive pass (hostim-child templates)
   ========================================================= */

/* Content safety for all WHMCS pages rendered inside main body */
#main-body img,
#main-body svg,
#main-body video,
#main-body iframe {
    max-width: 100%;
    height: auto;
}

/* Keep long links/strings from breaking layouts */
#main-body .panel,
#main-body .card,
#main-body .alert,
#main-body .well,
#main-body .list-group-item {
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Domain checker + result pages */
@media (max-width: 767.98px) {
    #frmDomainChecker,
    #frmDomainChecker .input-group,
    #domainResults,
    .domainchecker,
    .domainchecker .panel,
    .domainchecker .card {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .domainchecker .input-group,
    #frmDomainChecker .input-group {
        gap: 8px;
    }

    .domainchecker .input-group .form-control,
    #frmDomainChecker .input-group .form-control {
        border-radius: 10px !important;
    }
}

/* Store pages (sitebuilder/weebly/xovinow etc.) */
@media (max-width: 991.98px) {
    #main-body .nav-tabs {
        flex-wrap: wrap;
        row-gap: 8px;
    }

    #main-body .nav-tabs .nav-item {
        flex: 1 1 auto;
    }

    #main-body .tab-content,
    #main-body .marketconnect-content,
    #main-body .store .panel,
    #main-body .store .card {
        max-width: 100%;
    }
}

@media (max-width: 767.98px) {
    #main-body .store .btn,
    #main-body .marketconnect-content .btn {
        width: 100%;
        max-width: 100%;
    }
}

/* Auth/client/support/KB content area */
@media (max-width: 767.98px) {
    #main-body .breadcrumb {
        margin-bottom: 12px;
        flex-wrap: wrap;
    }

    #main-body .form-group,
    #main-body .mb-3,
    #main-body .mb-4 {
        margin-bottom: 12px !important;
    }

    #main-body .form-control,
    #main-body .form-select,
    #main-body select,
    #main-body textarea {
        max-width: 100% !important;
    }
}

/* Knowledgebase / announcements list readability */
@media (max-width: 575.98px) {
    #main-body .kb-article-item,
    #main-body .announcement-single,
    #main-body .ticket-item,
    #main-body .client-home-panels .panel {
        padding: 12px !important;
    }
}

/* Domain checker specific responsive tuning */
@media (max-width: 767.98px) {
    .tt-domain-hero .tt-domain-hero-card {
        padding: 14px !important;
        border-radius: 12px !important;
    }

    .tt-domain-hero .tt-domain-hero-head h1 {
        font-size: 24px !important;
        line-height: 1.2 !important;
    }

    .tt-domain-hero .tt-domain-hero-head p {
        font-size: 14px !important;
        line-height: 1.55 !important;
    }

    .currencychooser {
        float: none !important;
        width: 100%;
        margin: 8px 0 12px !important;
    }

    .currencychooser .btn-group {
        display: flex;
        width: 100%;
        flex-wrap: wrap;
        gap: 8px;
    }

    .currencychooser .btn-group .btn {
        flex: 1 1 calc(50% - 4px);
        min-width: 0;
    }

    .domain-tld-pricing-table-responsive {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/* Auth + register page form controls */
@media (max-width: 767.98px) {
    .tt-auth-wrap .primary-content {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .tt-auth-wrap .card,
    .tt-auth-wrap .panel {
        border-radius: 12px !important;
    }

    .tt-auth-wrap .btn,
    .tt-auth-wrap button.btn,
    .tt-auth-wrap input.btn {
        width: 100%;
    }
}

/* Sidebar/content stacking safety for non-cart inner pages */
@media (max-width: 991.98px) {
    #main-body .sidebar {
        margin-bottom: 14px;
    }

    #main-body .primary-content {
        width: 100%;
        max-width: 100%;
    }
}

/* Store templates: sitebuilder / weebly / xovinow / 360 monitoring */
@media (max-width: 991.98px) {
    #main-body .pricing-table,
    #main-body .div-pricing-container,
    #main-body .weebly-plans,
    #main-body .plan-comparison-container {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    #main-body .pricing-table .pricing-table-row,
    #main-body .div-pricing-container .row {
        min-width: 760px;
    }

    #main-body .store .nav-tabs,
    #main-body .marketconnect-content .nav-tabs {
        overflow-x: auto;
        overflow-y: hidden;
        white-space: nowrap;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
    }

    #main-body .store .nav-tabs .nav-item,
    #main-body .marketconnect-content .nav-tabs .nav-item {
        flex: 0 0 auto;
    }
}

@media (max-width: 767.98px) {
    #main-body .content-block.pricing,
    #main-body .section-pricing,
    #main-body .div-pricing-container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    #main-body .pricing-item,
    #main-body .weebly-lite-plan,
    #main-body .plan,
    #main-body .plan-features {
        width: 100%;
        max-width: 100%;
    }

    #main-body .card .card-header {
        padding: 12px 14px;
    }

    #main-body .card .card-body {
        padding: 12px 14px;
    }

    /* 360 Monitoring CTA and modal actions */
    #main-body .btn-pricing-scroll,
    #main-body .btn-modal-get-started {
        width: 100%;
        max-width: 100%;
    }
}

/* Cart flow: keep summary + body stable on tablets/phones */
@media (max-width: 1199.98px) {
    #order-standard_cart .secondary-cart-body,
    #order-standard_cart .secondary-cart-sidebar,
    #order-standard_cart #scrollingPanelContainer,
    #order-standard_cart #orderSummary {
        min-width: 0 !important;
    }
}

@media (max-width: 767.98px) {
    #order-standard_cart .view-cart-item {
        display: block;
    }

    #order-standard_cart .view-cart-item [class*="col-"] {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }

    #order-standard_cart #applyPromo.promo {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    #order-standard_cart #applyPromo.promo .form-control,
    #order-standard_cart #applyPromo.promo .btn {
        width: 100% !important;
    }

    #order-standard_cart .summary-container,
    #order-standard_cart .order-summary,
    #order-standard_cart #scrollingPanelContainer #orderSummary:not(.order-summary) {
        position: static !important;
    }
}

/* Cart view emergency mobile fix: prevent narrow/squeezed column */
@media (max-width: 767.98px) {
    #order-standard_cart,
    #order-standard_cart.tt-viewcart-brand {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    #order-standard_cart > .row,
    #order-standard_cart.tt-viewcart-brand > .row,
    #order-standard_cart .cart-body,
    #order-standard_cart .cart-body.w-100,
    #order-standard_cart .secondary-cart-body,
    #order-standard_cart .secondary-cart-sidebar {
        display: block !important;
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        flex: 0 0 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Make main cart list feel wider on phones */
    #order-standard_cart .secondary-cart-body {
        padding-left: 4px !important;
        padding-right: 4px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    #order-standard_cart .secondary-cart-body > form {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    #order-standard_cart .view-cart-items-header,
    #order-standard_cart .view-cart-item.-header {
        border-radius: 0 !important;
    }

    #order-standard_cart .cart-body.w-100 > .row,
    #order-standard_cart .secondary-cart-body > .row {
        display: block !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    #order-standard_cart .view-cart-item,
    #order-standard_cart .view-cart-items-header,
    #order-standard_cart .summary-container,
    #order-standard_cart .order-summary {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    #order-standard_cart .summary-container {
        margin-top: 12px !important;
    }

    /* Add spacing after "Empty Cart" button on mobile */
    #order-standard_cart #btnEmptyCart,
    #order-standard_cart [id*="EmptyCart"],
    #order-standard_cart a[href*="a=empty"],
    #order-standard_cart button[onclick*="emptyCart"],
    #order-standard_cart button[onclick*="emptycart"],
    #order-standard_cart button[onclick*="empty"] {
        margin-bottom: 16px !important;
    }

    #order-standard_cart .view-cart-item [class*="col-"],
    #order-standard_cart .view-cart-items-header [class*="col-"] {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        text-align: left !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Readable cart mobile mode */
    #order-standard_cart .view-cart-items-header,
    #order-standard_cart .view-cart-item.-header {
        font-size: 14px !important;
        line-height: 1.35 !important;
        padding: 10px 12px !important;
    }

    #order-standard_cart .view-cart-item {
        font-size: 14px !important;
        line-height: 1.5 !important;
        padding: 12px !important;
        margin-bottom: 10px !important;
    }

    #order-standard_cart .view-cart-item .item-title,
    #order-standard_cart .view-cart-item .item-name {
        font-size: 18px !important;
        line-height: 1.25 !important;
        margin-bottom: 6px !important;
    }

    #order-standard_cart .view-cart-item .item-price,
    #order-standard_cart .view-cart-item .item-total,
    #order-standard_cart .view-cart-item .price,
    #order-standard_cart .view-cart-item [class*="price"] {
        font-size: 22px !important;
        line-height: 1.2 !important;
    }

    #order-standard_cart .summary-container .summary-title,
    #order-standard_cart .summary-container .summary-header {
        font-size: 16px !important;
        line-height: 1.3 !important;
    }

    #order-standard_cart .summary-container .total-due-today span,
    #order-standard_cart .summary-container .amt,
    #order-standard_cart .summary-container .total {
        font-size: 26px !important;
        line-height: 1.15 !important;
    }

    /* Compact item row structure for phone screens */
    #order-standard_cart .view-cart-items-header,
    #order-standard_cart .view-cart-item {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        column-gap: 12px !important;
        align-items: start !important;
    }

    #order-standard_cart .view-cart-items-header [class*="col-"],
    #order-standard_cart .view-cart-item [class*="col-"] {
        width: auto !important;
        max-width: none !important;
        flex: none !important;
        padding: 0 !important;
    }

    #order-standard_cart .view-cart-items-header [class*="col-"]:first-child,
    #order-standard_cart .view-cart-item [class*="col-"]:first-child {
        grid-column: 1 !important;
    }

    #order-standard_cart .view-cart-items-header [class*="col-"]:last-child,
    #order-standard_cart .view-cart-item [class*="col-"]:last-child {
        grid-column: 2 !important;
        text-align: right !important;
        white-space: nowrap;
    }

    #order-standard_cart .view-cart-item .item-title,
    #order-standard_cart .view-cart-item .item-name {
        margin-bottom: 4px !important;
    }

    #order-standard_cart .view-cart-item .item-price,
    #order-standard_cart .view-cart-item .item-total,
    #order-standard_cart .view-cart-item .price,
    #order-standard_cart .view-cart-item [class*="price"] {
        font-size: 18px !important;
        line-height: 1.2 !important;
    }

    #order-standard_cart .view-cart-item .btn-remove-from-cart,
    #order-standard_cart .view-cart-item .remove-item {
        margin-left: auto !important;
    }

    /* Force clean 2-column header labels on cart list */
    #order-standard_cart .view-cart-items-header {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
        white-space: nowrap;
    }

    /* Fallback: when header is rendered as plain text node, force clear 2-column labels */
    #order-standard_cart .view-cart-items-header {
        display: grid !important;
        grid-template-columns: 1fr auto !important;
        align-items: center !important;
        column-gap: 10px !important;
        font-size: 0 !important;
        line-height: 1 !important;
    }

    #order-standard_cart .view-cart-items-header::before {
        content: "Product/Options";
        font-size: 13px !important;
        font-weight: 800 !important;
        color: #ffffff !important;
        text-align: left !important;
    }

    #order-standard_cart .view-cart-items-header::after {
        content: "Price/Cycle";
        font-size: 13px !important;
        font-weight: 800 !important;
        color: #ffffff !important;
        text-align: right !important;
    }

    #order-standard_cart .view-cart-items-header [class*="col-"] {
        width: auto !important;
        max-width: none !important;
        flex: 0 0 auto !important;
        padding: 0 !important;
    }

    #order-standard_cart .view-cart-items-header [class*="col-"]:first-child {
        margin-right: auto !important;
    }

    /* Force compact cart item row structure */
    #order-standard_cart .view-cart-item {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: flex-start !important;
        column-gap: 10px !important;
        row-gap: 6px !important;
    }

    #order-standard_cart .view-cart-item > [class*="col-"]:first-child {
        flex: 1 1 56% !important;
        min-width: 0 !important;
    }

    #order-standard_cart .view-cart-item > [class*="col-"]:nth-child(2) {
        flex: 0 0 34% !important;
        text-align: right !important;
    }

    #order-standard_cart .view-cart-item > [class*="col-"]:last-child {
        flex: 0 0 18px !important;
        text-align: right !important;
    }

    /* WHMCS cart default grid hard-reset for phones */
    #order-standard_cart .row {
        display: flex !important;
        flex-wrap: wrap !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    #order-standard_cart .row > [class*="col-"],
    #order-standard_cart .col-xs-1,
    #order-standard_cart .col-xs-2,
    #order-standard_cart .col-xs-3,
    #order-standard_cart .col-xs-4,
    #order-standard_cart .col-xs-5,
    #order-standard_cart .col-xs-6,
    #order-standard_cart .col-xs-7,
    #order-standard_cart .col-xs-8,
    #order-standard_cart .col-xs-9,
    #order-standard_cart .col-xs-10,
    #order-standard_cart .col-xs-11,
    #order-standard_cart .col-xs-12,
    #order-standard_cart .col-sm-1,
    #order-standard_cart .col-sm-2,
    #order-standard_cart .col-sm-3,
    #order-standard_cart .col-sm-4,
    #order-standard_cart .col-sm-5,
    #order-standard_cart .col-sm-6,
    #order-standard_cart .col-sm-7,
    #order-standard_cart .col-sm-8,
    #order-standard_cart .col-sm-9,
    #order-standard_cart .col-sm-10,
    #order-standard_cart .col-sm-11,
    #order-standard_cart .col-sm-12,
    #order-standard_cart .col-md-1,
    #order-standard_cart .col-md-2,
    #order-standard_cart .col-md-3,
    #order-standard_cart .col-md-4,
    #order-standard_cart .col-md-5,
    #order-standard_cart .col-md-6,
    #order-standard_cart .col-md-7,
    #order-standard_cart .col-md-8,
    #order-standard_cart .col-md-9,
    #order-standard_cart .col-md-10,
    #order-standard_cart .col-md-11,
    #order-standard_cart .col-md-12 {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    #order-standard_cart .view-cart-items-header,
    #order-standard_cart .view-cart-item {
        width: 100% !important;
    }
}

@media (max-width: 430px) {
    #order-standard_cart {
        padding-left: 6px !important;
        padding-right: 6px !important;
    }

    /* Domain result card: remove inner grid constraints so card can grow */
    #order-standard_cart #domainResults .row,
    #order-standard_cart #DomainSearchResults .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    #order-standard_cart #domainResults [class*="col-"],
    #order-standard_cart #DomainSearchResults [class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    #order-standard_cart #domainResults,
    #order-standard_cart #DomainSearchResults {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    #order-standard_cart #primaryLookupResult {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Header edge spacing: remove extra side blank strips */
    header#header > .navbar.navbar-light > .container {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 8px !important;
        padding-right: 8px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/* Final cart mobile cleanup (SE/XR) */
@media (max-width: 430px) {
    #order-standard_cart .view-cart-items-header {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 10px 12px !important;
    }

    #order-standard_cart .view-cart-items-header [class*="col-"] {
        width: auto !important;
        flex: 0 0 auto !important;
        max-width: none !important;
    }

    #order-standard_cart .view-cart-item {
        display: block !important;
        padding: 12px !important;
    }

    #order-standard_cart .view-cart-item [class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        text-align: left !important;
    }

    #order-standard_cart .view-cart-item .item-title,
    #order-standard_cart .view-cart-item .item-name {
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        gap: 6px !important;
        white-space: nowrap !important;
        line-height: 1.2 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 6px !important;
        font-size: 16px !important;
        justify-content: space-between !important;
        text-align: left !important;
        flex-direction: row !important;
    }

    /* Force Edit/Remove on right side of the same line */
    #order-standard_cart .view-cart-item .item-title a.btn.btn-link.btn-xs,
    #order-standard_cart .view-cart-item .item-name a.btn.btn-link.btn-xs {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
        margin-left: auto !important;
        padding: 0 !important;
        white-space: nowrap !important;
        align-items: center !important;
    }

    #order-standard_cart .view-cart-item .item-title button.btn-remove-from-cart,
    #order-standard_cart .view-cart-item .item-name button.btn-remove-from-cart {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
        margin-left: 8px !important;
        padding: 0 !important;
        white-space: nowrap !important;
        align-items: center !important;
        box-sizing: border-box !important;
    }

    #order-standard_cart .view-cart-item .item-title a[href*="a=edit"],
    #order-standard_cart .view-cart-item .item-name a[href*="a=edit"] {
        margin-left: auto !important;
    }

    /* Strong inline layout for item-title actions */
    #order-standard_cart .view-cart-item .item-title,
    #order-standard_cart .view-cart-item .item-name {
        flex-direction: row !important;
    }

    #order-standard_cart .view-cart-item .item-title span,
    #order-standard_cart .view-cart-item .item-name span,
    #order-standard_cart .view-cart-item .item-title a,
    #order-standard_cart .view-cart-item .item-name a,
    #order-standard_cart .view-cart-item .item-title button,
    #order-standard_cart .view-cart-item .item-name button {
        display: inline-flex !important;
        align-items: center !important;
        width: auto !important;
        max-width: none !important;
        white-space: nowrap !important;
        flex: 0 0 auto !important;
    }

    #order-standard_cart .view-cart-item .btn-remove-from-cart,
    #order-standard_cart .view-cart-item a[href*="a=remove"],
    #order-standard_cart .view-cart-item a[href*="a=edit"] {
        display: inline-flex !important;
        align-items: center !important;
        width: auto !important;
        max-width: none !important;
        min-height: 0 !important;
        padding: 0 !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        float: none !important;
        white-space: nowrap !important;
        text-align: left !important;
    }

    /* Ensure edit/remove wrappers don't become full-width blocks */
    #order-standard_cart .view-cart-item .item-title > span,
    #order-standard_cart .view-cart-item .item-name > span {
        display: inline-flex !important;
        width: auto !important;
        max-width: none !important;
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }

    /* Some templates inject a <br> between title and actions */
    #order-standard_cart .view-cart-item .item-title br,
    #order-standard_cart .view-cart-item .item-name br {
        display: none !important;
    }

    /* Some WHMCS templates wrap Remove inside a visible-xs span */
    #order-standard_cart .view-cart-item .item-title > span,
    #order-standard_cart .view-cart-item .item-name > span {
        display: inline-flex !important;
        align-items: center !important;
        width: auto !important;
        max-width: none !important;
    }

    #order-standard_cart .view-cart-item .item-title > span .btn-remove-from-cart,
    #order-standard_cart .view-cart-item .item-name > span .btn-remove-from-cart {
        margin-left: 8px !important;
    }

    /* Edit link can be confdomains (not a=edit); keep both actions inline */
    #order-standard_cart .view-cart-item .item-title .btn.btn-link.btn-xs,
    #order-standard_cart .view-cart-item .item-name .btn.btn-link.btn-xs,
    #order-standard_cart .view-cart-item .item-title a.btn-link.btn-xs,
    #order-standard_cart .view-cart-item .item-name a.btn-link.btn-xs,
    #order-standard_cart .view-cart-item .item-title button.btn-link.btn-xs,
    #order-standard_cart .view-cart-item .item-name button.btn-link.btn-xs {
        display: inline-flex !important;
        align-items: center !important;
        width: auto !important;
        max-width: none !important;
        flex: 0 0 auto !important;
        min-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        white-space: nowrap !important;
    }

    /* Bruteforce: keep everything inline inside title */
    #order-standard_cart .view-cart-item .item-title *,
    #order-standard_cart .view-cart-item .item-name * {
        display: inline !important;
        white-space: nowrap !important;
    }

    #order-standard_cart .view-cart-item .item-title .btn,
    #order-standard_cart .view-cart-item .item-title a,
    #order-standard_cart .view-cart-item .item-title button,
    #order-standard_cart .view-cart-item .item-name .btn,
    #order-standard_cart .view-cart-item .item-name a,
    #order-standard_cart .view-cart-item .item-name button {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        width: auto !important;
        max-width: none !important;
    }

    /* Final override (mobile): keep Edit/Remove inline (no stacking) */
    #order-standard_cart .view-cart-item .item-title,
    #order-standard_cart .view-cart-item .item-name {
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        gap: 10px !important;
        white-space: nowrap !important;
        line-height: 1.2 !important;
        font-size: 16px !important;
        width: 100% !important;
        margin-bottom: 6px !important;
        flex-direction: row !important;
    }

    /* Push Edit to the right edge; keep Remove next to it */
    #order-standard_cart .view-cart-item .item-title a.btn.btn-link.btn-xs,
    #order-standard_cart .view-cart-item .item-name a.btn.btn-link.btn-xs {
        margin-left: auto !important;
        margin-right: 10px !important;
        padding: 0 !important;
        white-space: nowrap !important;
        display: inline-flex !important;
        flex: 0 0 auto !important;
        max-width: none !important;
        align-items: center !important;
    }

    /* Remove wrapper span should be inline-flex so button doesn't drop */
    #order-standard_cart .view-cart-item .item-title > span,
    #order-standard_cart .view-cart-item .item-name > span {
        display: inline-flex !important;
        align-items: center !important;
        width: auto !important;
        max-width: none !important;
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }

    #order-standard_cart .view-cart-item .item-title button.btn-remove-from-cart,
    #order-standard_cart .view-cart-item .item-name button.btn-remove-from-cart {
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        display: inline-flex !important;
        flex: 0 0 auto !important;
        max-width: none !important;
        align-items: center !important;
    }

    /* Override global mobile rule: .btn { width:100% } */
    #order-standard_cart .view-cart-item .item-title .btn,
    #order-standard_cart .view-cart-item .item-name .btn {
        width: auto !important;
        max-width: none !important;
    }

    #order-standard_cart .view-cart-item .item-price,
    #order-standard_cart .view-cart-item .item-total,
    #order-standard_cart .view-cart-item .price,
    #order-standard_cart .view-cart-item [class*="price"] {
        display: block !important;
        text-align: right !important;
        margin-top: 8px !important;
        font-size: 18px !important;
    }

    /* Final stubborn fix: float actions right so they stay on same line */
    #order-standard_cart .view-cart-item .item-title {
        position: relative !important;
        overflow: hidden !important; /* contain floats */
    }

    #order-standard_cart .view-cart-item .item-title a.btn.btn-link.btn-xs,
    #order-standard_cart .view-cart-item .item-name a.btn.btn-link.btn-xs {
        float: none !important;
        display: inline-flex !important;
        white-space: nowrap !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 8px 0 auto !important;
        align-items: center !important;
    }

    #order-standard_cart .view-cart-item .item-title > span.visible-xs-inline,
    #order-standard_cart .view-cart-item .item-name > span.visible-xs-inline {
        float: none !important;
        display: inline-flex !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        align-items: center !important;
    }

    #order-standard_cart .view-cart-item .item-title button.btn-remove-from-cart,
    #order-standard_cart .view-cart-item .item-name button.btn-remove-from-cart {
        float: none !important;
        display: inline-flex !important;
        white-space: nowrap !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        align-items: center !important;
    }

    /* Override parent theme (view-cart-items) mobile stacking for Edit/Remove */
    #order-standard_cart .view-cart-items .item-title {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 10px !important;
        white-space: nowrap !important;
        font-size: 15.5px !important;
    }

    #order-standard_cart .view-cart-items .item-title span.visible-xs-inline {
        display: inline-flex !important;
        width: auto !important;
        max-width: none !important;
        flex: 0 0 auto !important;
        white-space: nowrap !important;
        margin: 0 !important;
        padding: 0 !important;
        align-items: center !important;
    }

    #order-standard_cart .view-cart-items .item-title span.visible-xs-inline .btn-remove-from-cart {
        display: inline-flex !important;
        width: auto !important;
        max-width: none !important;
        flex: 0 0 auto !important;
        white-space: nowrap !important;
        margin: 0 !important;
        padding: 0 !important;
        align-items: center !important;
    }

    #order-standard_cart .view-cart-items .item-title a.btn.btn-link.btn-xs {
        display: inline-flex !important;
        width: auto !important;
        max-width: none !important;
        flex: 0 0 auto !important;
        white-space: nowrap !important;
        margin: 0 8px 0 auto !important;
        padding: 0 !important;
        align-items: center !important;
    }

    #order-standard_cart .view-cart-items .item-title > span.visible-xs-inline {
        display: inline-flex !important;
        width: auto !important;
        max-width: none !important;
        flex: 0 0 auto !important;
        white-space: nowrap !important;
        margin: 0 !important;
        padding: 0 !important;
        align-items: center !important;
    }
}

@media (max-width: 575.98px) {
    #order-standard_cart .view-cart-item,
    #order-standard_cart .summary-container,
    #order-standard_cart #applyPromo.promo {
        font-size: 14px !important;
    }
}

/* Compact-phone header fit (iPhone SE/XR portrait etc.) */
@media (max-width: 430px) {
    header#header > .navbar.navbar-light > .container {
        grid-template-columns: minmax(0, 1fr) auto !important;
        column-gap: 4px !important;
    }

    header#header > .navbar.navbar-light > .container > a.navbar-brand {
        max-width: 138px !important;
    }

    header#header > .navbar.navbar-light > .container > a.navbar-brand .logo-img {
        max-width: 138px !important;
    }

    header#header .tt-secondary-list {
        gap: 4px !important;
        flex-wrap: nowrap !important;
    }

    header#header .tt-secondary-list .tt-login-btn .tt-hide-sm,
    header#header .tt-secondary-list .tt-login-btn span {
        display: none !important;
    }

    header#header .tt-secondary-list .btn,
    header#header .tt-secondary-list .btn-sm,
    header#header .tt-secondary-list .nav-link,
    header#header .tt-secondary-list .cart-btn,
    header#header > .navbar.navbar-light > .container > .tt-main-header.tt-toolbar-wrap > ul.tt-secondary-list > li.nav-item.ml-2.d-xl-none > button.btn.nav-link {
        width: 32px !important;
        min-width: 32px !important;
        height: 32px !important;
        min-height: 32px !important;
        padding: 0 !important;
    }

    header#header .tt-secondary-list .btn-sm.tt-login-btn {
        width: 32px !important;
        min-width: 32px !important;
    }
}

/* =========================================================
   Homepage responsive pass (section-wise, bucket-wise)
   Scope: domain top + hero + hosting options + reviews
   ========================================================= */

@media (max-width: 1199.98px) {
    section.hc-hero-boxed > .pt-60.tt-hero-two {
        width: calc(100% - 32px);
    }

    .tt-hosting-options__feature-content h4 {
        font-size: 32px;
    }
}

@media (max-width: 991.98px) {
    .tt-domain-top-section.tt-domain-top-section--drg .row.align-items-center > [class*="col-"] {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .tt-domain-top-section .tt-hero-domain-head h3 {
        font-size: 18px;
    }

    .tt-hosting-options .row.g-3 > [class*="col-"] {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .tt-hosting-options .row.g-3 > .col-lg-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

@media (max-width: 767.98px) {
    .tt-domain-top-section {
        padding: 10px 0 12px;
    }

    .tt-domain-top-section.tt-domain-top-section--drg .tt-hero-domain-card {
        padding: 12px;
    }

    .tt-domain-top-section.tt-domain-top-section--drg .tt-hero-domain-input-group .form-control {
        height: 46px;
    }

    .tt-domain-top-section .tt-hero-domain-input .btn {
        height: 44px;
        padding: 0 14px;
    }

    section.hc-hero-boxed > .pt-60.tt-hero-two {
        min-height: auto !important;
        padding-top: 22px !important;
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero-btns {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero-btns .btn {
        max-width: 100%;
        margin-right: 0 !important;
    }

    .tt-hosting-options.ptb-100,
    .tt-google-reviews-section.ptb-100 {
        padding-top: 56px !important;
        padding-bottom: 56px !important;
    }

    .tt-hosting-options .row.g-3 > [class*="col-"] {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .tt-hosting-options__head h2,
    .tt-google-reviews-section .tt-section-heading h2 {
        font-size: 28px;
        line-height: 1.25;
    }

    .tt-hosting-options__feature {
        padding: 20px 16px;
    }

    .tt-hosting-options__feature-content h4 {
        font-size: 24px;
    }

    .tt-hosting-options__card {
        padding: 20px 16px;
    }
}

@media (max-width: 575.98px) {
    .tt-domain-top-section .tt-hero-domain-head h3 {
        font-size: 17px;
    }

    .tt-domain-top-section .tt-hero-domain-head p {
        font-size: 12.5px;
    }

    .tt-domain-top-section.tt-domain-top-section--drg .tt-hero-tld-list {
        grid-template-columns: 1fr;
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero h1 {
        font-size: clamp(23px, 8.5vw, 30px);
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero p.lead {
        font-size: 14px;
    }

    .tt-hosting-options__head h2,
    .tt-google-reviews-section .tt-section-heading h2 {
        font-size: 24px;
    }

    .tt-hosting-options__head p,
    .tt-google-reviews-section .tt-section-heading p {
        font-size: 14px;
        line-height: 1.6;
    }

    .tt-hosting-options__card > a.tt-hosting-options__title {
        font-size: 17px;
    }

    .tt-hosting-options__feature {
        gap: 14px;
    }

    .tt-hosting-options__feature-content {
        max-width: 100%;
        width: 100%;
    }

    .tt-hosting-options__feature-content h6 {
        max-width: 100%;
        white-space: normal;
        word-break: break-word;
    }

    .tt-hosting-options__feature-image {
        width: 100%;
        justify-content: center;
    }

    .tt-hosting-options__feature-image img {
        width: min(210px, 72vw);
        max-width: 100%;
    }

    .tt-google-reviews-section .tt-google-reviews-card {
        padding: 14px !important;
    }
}

@media (max-width: 430px) {
    .tt-domain-top-section.tt-domain-top-section--drg .tt-hero-domain-card {
        padding: 10px;
    }

    .tt-domain-top-section.tt-domain-top-section--drg .tt-hero-tld-list li {
        padding: 7px 8px;
    }

    .tt-hosting-options.ptb-100,
    .tt-google-reviews-section.ptb-100 {
        padding-top: 46px !important;
        padding-bottom: 46px !important;
    }

    .tt-hosting-options__feature-content h4 {
        font-size: 21px;
    }
}

@media (max-width: 390px) {
    section.hc-hero-boxed > .pt-60.tt-hero-two {
        width: calc(100% - 20px);
        border-radius: 12px;
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero h1 {
        font-size: clamp(21px, 8.8vw, 28px);
    }

    .tt-hosting-options__card {
        padding: 16px 14px;
    }

    .tt-hosting-options__card p {
        font-size: 13.5px;
    }
}

@media (max-width: 932px) and (max-height: 430px) and (orientation: landscape) {
    .tt-domain-top-section {
        padding: 8px 0 10px;
    }

    header#header > .navbar.navbar-light {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    header#header > .navbar.navbar-light > .container {
        align-items: start !important;
        padding-top: 0 !important;
        padding-bottom: 10px !important;
    }

    section.hc-hero-boxed > .pt-60.tt-hero-two {
        min-height: auto !important;
        padding-top: 16px !important;
        padding-bottom: 14px !important;
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero h1 {
        font-size: clamp(22px, 4.2vw, 30px);
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero p.lead {
        font-size: 13.5px;
        line-height: 1.5;
    }

    .tt-cta-content .tt-support-list {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .tt-cta-content .tt-support-item {
        padding: 12px 8px !important;
    }
}

/* Homepage verification pass: resolve legacy mobile conflicts */
@media (max-width: 767.98px) {
    .tt-domain-top-section #btnDomainSearch,
    .tt-domain-top-section #btnDomainSearch2,
    .tt-domain-top-section #btnTransfer,
    .tt-domain-top-section #btnTransfer2 {
        max-width: none !important;
    }

    .tt-google-reviews-section .tt-google-reviews-card iframe {
        height: clamp(420px, 70vh, 620px) !important;
    }
}

@media (max-width: 575.98px) {
    .tt-google-reviews-section .tt-google-reviews-card iframe {
        height: clamp(380px, 66vh, 560px) !important;
    }
}

@media (max-width: 390px) {
    .tt-google-reviews-section .tt-google-reviews-card iframe {
        height: clamp(340px, 62vh, 500px) !important;
    }
}

@media (max-width: 360px) {
    .tt-domain-top-section.tt-domain-top-section--drg .tt-hero-domain-card {
        padding: 9px;
    }

    .tt-domain-top-section .tt-hero-domain-input .form-control,
    .tt-domain-top-section .tt-hero-domain-input .btn {
        height: 42px;
    }

    section.hc-hero-boxed .tt-hero-two .tt-hero h1 {
        font-size: clamp(20px, 8.6vw, 26px);
    }

    .tt-hosting-options__feature-content h4 {
        font-size: 20px;
    }
}

/* Header spacing correction (compact phones): equal side gutters + logo left */
@media (max-width: 430px) {
    header#header > .navbar.navbar-light > .container {
        grid-template-columns: auto 1fr !important;
        align-items: center !important;
        column-gap: 10px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    header#header > .navbar.navbar-light > .container > a.navbar-brand,
    header#header > .navbar.navbar-light > .container > a.navbar-brand.mr-3 {
        justify-self: start !important;
        text-align: left !important;
        width: auto !important;
        flex: 0 0 auto !important;
        margin: 0 !important;
        padding: 0 !important;
        max-width: 136px !important;
    }

    header#header > .navbar.navbar-light > .container > a.navbar-brand .logo-img,
    header#header > .navbar.navbar-light > .container > a.navbar-brand.mr-3 .logo-img {
        width: 136px !important;
        max-width: 136px !important;
        height: auto !important;
        margin: 0 !important;
    }

    header#header > .navbar.navbar-light > .container > .tt-main-header.tt-toolbar-wrap {
        justify-self: end !important;
        margin-left: 6px !important;
    }

    header#header .tt-secondary-list {
        gap: 6px !important;
    }

    /* Keep domain actions identical to portrait style on 414px class screens */
    #frmDomainHero .row.d-sm-none.mt-3 {
        display: flex !important;
        flex-wrap: nowrap !important;
        margin-top: 12px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        gap: 10px !important;
    }

    #frmDomainHero .row.d-sm-none.mt-3 > [class*="col-"] {
        flex: 1 1 0 !important;
        max-width: 50% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    #frmDomainHero .row.d-sm-none.mt-3 .btn,
    #frmDomainHero #btnDomainSearch2,
    #frmDomainHero #btnTransfer2 {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 44px !important;
        font-size: 18px !important;
        font-weight: 700 !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
}

@media (max-width: 390px) {
    header#header > .navbar.navbar-light > .container {
        padding-left: 10px !important;
        padding-right: 10px !important;
        column-gap: 8px !important;
    }

    header#header > .navbar.navbar-light > .container > a.navbar-brand,
    header#header > .navbar.navbar-light > .container > a.navbar-brand.mr-3,
    header#header > .navbar.navbar-light > .container > a.navbar-brand .logo-img,
    header#header > .navbar.navbar-light > .container > a.navbar-brand.mr-3 .logo-img {
        max-width: 132px !important;
        width: 132px !important;
    }
}

@media (width: 896px) and (height: 414px) and (orientation: landscape) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 25% !important;
        max-width: 85px !important;
    }

    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 16px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 58% !important;
        max-width: 58% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 42% !important;
        max-width: 42% !important;
        justify-content: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(180px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

@media (width: 844px) and (height: 390px) and (orientation: landscape) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 25% !important;
        max-width: 85px !important;
    }

    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 14px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 60% !important;
        max-width: 60% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 40% !important;
        max-width: 40% !important;
        justify-content: flex-end !important;
        align-self: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(170px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

@media (width: 932px) and (height: 430px) and (orientation: landscape) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 25% !important;
        max-width: 85px !important;
    }

    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 16px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 58% !important;
        max-width: 58% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 42% !important;
        max-width: 42% !important;
        justify-content: flex-end !important;
        align-self: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(175px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

@media (width: 915px) and (height: 412px) and (orientation: landscape) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 25% !important;
        max-width: 85px !important;
    }

    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 16px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 58% !important;
        max-width: 58% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 42% !important;
        max-width: 42% !important;
        justify-content: flex-end !important;
        align-self: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(176px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

@media (width: 740px) and (height: 360px) and (orientation: landscape) {
    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 62% !important;
        max-width: 62% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 38% !important;
        max-width: 38% !important;
        justify-content: flex-end !important;
        align-self: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(150px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

@media (width: 720px) and (height: 540px) and (orientation: landscape) {
    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 60% !important;
        max-width: 60% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 40% !important;
        max-width: 40% !important;
        justify-content: flex-end !important;
        align-self: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(158px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

@media (width: 768px) and (height: 1024px) and (orientation: portrait) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 25% !important;
        max-width: 85px !important;
    }

    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 14px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 60% !important;
        max-width: 60% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 40% !important;
        max-width: 40% !important;
        justify-content: flex-end !important;
        align-self: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(165px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

@media (width: 820px) and (height: 1100px) and (orientation: portrait) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 25% !important;
        max-width: 85px !important;
    }
}

@media (width: 820px) and (height: 1180px) and (orientation: portrait) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 20% !important;
        max-width: 80px !important;
    }

    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 14px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 60% !important;
        max-width: 60% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 40% !important;
        max-width: 40% !important;
        justify-content: flex-end !important;
        align-self: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(168px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

@media (width: 912px) and (height: 1368px) and (orientation: portrait) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 25% !important;
        max-width: 85px !important;
    }

    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 14px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 56% !important;
        max-width: 56% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 44% !important;
        max-width: 44% !important;
        justify-content: flex-end !important;
        align-self: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(190px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

@media (width: 1024px) and (height: 1366px) and (orientation: portrait) {
    section.hc-hero-boxed .tt-animation-icon-img {
        position: absolute !important;
        left: auto !important;
        right: 42% !important;
        top: 25% !important;
        max-width: 65px !important;
        height: auto !important;
        pointer-events: none !important;
        backface-visibility: hidden !important;
        animation: bounce 1s ease-in-out 0s infinite alternate !important;
    }

    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 16px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 56% !important;
        max-width: 56% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 44% !important;
        max-width: 44% !important;
        justify-content: flex-end !important;
        align-self: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(200px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

@media (width: 820px) and (height: 1100px) and (orientation: portrait) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 25% !important;
        max-width: 85px !important;
    }
}

@media (width: 853px) and (height: 1200px) and (orientation: portrait) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 25% !important;
        max-width: 80px !important;
    }
}

/* Language modal hardening (mobile): prevent header overlap and show close clearly */
#modalChooseLanguage {
    z-index: 20050 !important;
}

/* Backdrop was raised for the language picker; cart/system modals stayed at BS default 1050,
   so remove-item / empty-cart dialogs sat behind the backdrop (only dim overlay, no clicks). */
.modal-backdrop.show {
    z-index: 20040 !important;
}

.modal.show {
    z-index: 20050 !important;
}

#modalChooseLanguage .modal-dialog {
    margin: 64px auto 12px;
    max-width: min(94vw, 640px);
    width: calc(100vw - 16px);
}

#modalChooseLanguage .modal-content {
    border-radius: 12px;
    overflow: hidden;
    max-width: 100%;
}

#modalChooseLanguage .modal-body {
    max-height: calc(100dvh - 92px);
    overflow-y: auto;
    padding: 14px !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #cfd8e3 transparent;
}

#modalChooseLanguage .modal-body > .d-flex.align-items-center.justify-content-between {
    position: sticky;
    top: -14px;
    z-index: 3;
    background: #ffffff;
    margin: -14px -14px 10px;
    padding: 12px 14px 10px;
    border-bottom: 1px solid #e8edf4;
}

#modalChooseLanguage .modal-body > .d-flex.align-items-center.justify-content-between h5 {
    margin: 0;
    font-size: 18px;
}

#modalChooseLanguage .modal-body > .d-flex.align-items-center.justify-content-between .close {
    width: 34px;
    height: 34px;
    margin: 0;
    padding: 0;
    border: 1px solid #dbe2ea;
    border-radius: 8px;
    background: #ffffff;
    color: #334155;
    opacity: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 575.98px) {
    #modalChooseLanguage .modal-dialog {
        margin-top: 52px;
        margin-bottom: 8px;
        max-width: calc(100vw - 10px);
        width: calc(100vw - 10px);
    }

    #modalChooseLanguage .modal-body {
        max-height: calc(100dvh - 64px);
        padding: 12px !important;
    }
}

/* Final device-specific lock for hero floating icon */
@media (width: 882px) and (height: 344px) and (orientation: landscape) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 25% !important;
        max-width: 80px !important;
    }

    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 62% !important;
        max-width: 62% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 38% !important;
        max-width: 38% !important;
        justify-content: flex-end !important;
        align-self: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(152px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

/* Asus Zenbook Fold portrait fallback (exact + tolerance) */
@media (width: 853px) and (height: 1200px) and (orientation: portrait),
       (min-width: 840px) and (max-width: 860px) and (min-height: 1180px) and (max-height: 1220px) and (orientation: portrait) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 24% !important;
        max-width: 80px !important;
    }
}

/* Force-fix for Asus Zenbook Fold portrait viewport */
@media (min-width: 840px) and (max-width: 860px) and (min-height: 1180px) and (max-height: 1220px) {
    section.hc-hero-boxed .tt-animation-icon-img,
    .tt-animation-icon-img {
        left: auto !important;
        right: 44% !important;
        top: 25% !important;
        max-width: 80px !important;
        transform: none !important;
    }
}

@media (max-width: 390px) {
    #modalChooseLanguage .modal-dialog {
        margin-top: 50px;
        max-width: calc(100vw - 8px);
        width: calc(100vw - 8px);
    }

    #modalChooseLanguage .modal-body {
        max-height: calc(100dvh - 58px);
        padding: 10px !important;
    }
}

@media (max-width: 767.98px) {
    #modalChooseLanguage {
        padding: 0 !important;
    }

    #modalChooseLanguage .modal-dialog {
        margin: 0 !important;
        width: 100vw !important;
        max-width: 100vw !important;
        min-height: 100dvh;
        height: 100dvh;
    }

    #modalChooseLanguage .modal-content {
        height: 100dvh;
        min-height: 100dvh;
        border-radius: 0;
        border: 0;
    }

    #modalChooseLanguage .modal-body {
        max-height: none;
        height: 100%;
        overflow-y: auto;
        padding: 10px !important;
    }

    #modalChooseLanguage .modal-body .row.item-selector > [class*="col-"] {
        margin-bottom: 2px;
    }

    #modalChooseLanguage .modal-body .item-selector .item {
        padding-top: 2px;
        padding-bottom: 2px;
        font-size: 15px;
        line-height: 1.2;
    }

    #modalChooseLanguage .modal-body h5.mt-4.text-dark {
        margin-top: 10px !important;
        margin-bottom: 6px !important;
    }

    /* Keep all currency options in one row on mobile */
    #modalChooseLanguage .modal-body h5.mt-4.text-dark + .row.item-selector {
        display: flex;
        flex-wrap: nowrap;
        margin-left: -4px;
        margin-right: -4px;
    }

    #modalChooseLanguage .modal-body h5.mt-4.text-dark + .row.item-selector > [class*="col-"] {
        flex: 0 0 33.3333%;
        max-width: 33.3333%;
        padding-left: 4px;
        padding-right: 4px;
    }

    #modalChooseLanguage .modal-body h5.mt-4.text-dark + .row.item-selector .item {
        white-space: nowrap;
        font-size: 14px;
        line-height: 1.15;
    }
}

#modalChooseLanguage .modal-body::-webkit-scrollbar {
    width: 6px;
}

#modalChooseLanguage .modal-body::-webkit-scrollbar-thumb {
    background: #cfd8e3;
    border-radius: 999px;
}

#modalChooseLanguage .modal-body::-webkit-scrollbar-track {
    background: transparent;
}

/* Final override: fold-like portrait viewports (prevents devtools rounding miss) */
@media (min-width: 852px) and (max-width: 854px) and (min-height: 1198px) and (max-height: 1202px),
       (min-width: 840px) and (max-width: 860px) and (min-height: 1180px) and (max-height: 1220px) {
    section.hc-hero-boxed .tt-hero-two .tt-animation-icon-img,
    section.hc-hero-boxed .tt-animation-icon-img,
    .tt-animation-icon-img {
        position: absolute !important;
        left: auto !important;
        right: 44% !important;
        top: 24% !important;
        max-width: 80px !important;
        height: auto !important;
        pointer-events: none !important;
        backface-visibility: hidden !important;
        animation: bounce 1s ease-in-out 0s infinite alternate !important;
        transform: none !important;
    }
}

@media (width: 914px) and (height: 412px) and (orientation: landscape) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 44% !important;
        top: 25% !important;
        max-width: 80px !important;
    }

    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 16px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 58% !important;
        max-width: 58% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 42% !important;
        max-width: 42% !important;
        justify-content: flex-end !important;
        align-self: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(176px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

@media (width: 1024px) and (height: 600px) and (orientation: landscape) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 42% !important;
        top: 24% !important;
        max-width: 64px !important;
    }
}

@media (width: 1280px) and (height: 800px) and (orientation: landscape) {
    section.hc-hero-boxed .tt-animation-icon-img {
        right: 42% !important;
    }
}

/* Asus Zenbook Fold (853x1200) - tighten wp icon size/placement */
@media (width: 853px) and (height: 1200px) and (orientation: portrait) {
    section.hc-hero-boxed .tt-hero-two .tt-animation-icon-img,
    section.hc-hero-boxed .tt-animation-icon-img,
    .tt-animation-icon-img {
        position: absolute !important;
        left: auto !important;
        right: 44% !important;
        top: 24% !important;
        max-width: 80px !important;
        height: auto !important;
        pointer-events: none !important;
        backface-visibility: hidden !important;
        animation: bounce 1s ease-in-out 0s infinite alternate !important;
        transform: none !important;
    }
}

@media (width: 853px) and (height: 1280px) and (orientation: portrait) {
    .tt-hosting-options__feature {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 14px !important;
    }

    .tt-hosting-options__feature-content {
        flex: 1 1 58% !important;
        max-width: 58% !important;
        text-align: left !important;
    }

    .tt-hosting-options__feature-image {
        flex: 0 0 42% !important;
        max-width: 42% !important;
        justify-content: flex-end !important;
        align-self: flex-end !important;
    }

    .tt-hosting-options__feature-image img {
        width: min(182px, 100%) !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

/* Login mobile alignment fix (iPhone SE and similar) */
@media (max-width: 420px) {
    section#main-body.tt-auth-wrap .tt-form-content .d-flex.align-items-center.justify-content-between {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
    }

    section#main-body.tt-auth-wrap .tt-form-content #login {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 138px !important;
        margin: 0 !important;
    }

    section#main-body.tt-auth-wrap .tt-form-content label.mb-0 {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        white-space: nowrap !important;
        margin: 0 !important;
        font-size: 14px !important;
        line-height: 1.2 !important;
        flex: 0 0 auto !important;
    }

    section#main-body.tt-auth-wrap .tt-form-content label.mb-0 input[type="checkbox"] {
        margin: 0 !important;
        position: static !important;
    }
}

/* Login button + remember alignment for 430px class devices */
@media (max-width: 575.98px) {
    section#main-body.tt-auth-wrap .tt-form-content > .d-flex.align-items-center.justify-content-between {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        column-gap: 10px !important;
        align-items: center !important;
    }

    section#main-body.tt-auth-wrap .tt-form-content > .d-flex.align-items-center.justify-content-between #login {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    section#main-body.tt-auth-wrap .tt-form-content > .d-flex.align-items-center.justify-content-between label.mb-0 {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        white-space: nowrap !important;
        margin: 0 !important;
        font-size: 13px !important;
        line-height: 1.2 !important;
    }

    section#main-body.tt-auth-wrap .tt-form-content > .d-flex.align-items-center.justify-content-between label.mb-0 input[type="checkbox"] {
        margin: 0 !important;
        position: static !important;
    }

    /* Login footer row: Not registered + language/currency */
    section#main-body.tt-auth-wrap .tt-form-content > .mt-3.d-flex.align-items-center.justify-content-between.flex-wrap {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: flex-start !important;
        align-items: center !important;
        row-gap: 8px !important;
        column-gap: 10px !important;
        margin-top: 12px !important;
    }

    section#main-body.tt-auth-wrap .tt-form-content > .mt-3.d-flex.align-items-center.justify-content-between.flex-wrap > p {
        flex: 1 1 100% !important;
        width: 100% !important;
        margin: 0 !important;
    }

    section#main-body.tt-auth-wrap .tt-form-content > .mt-3.d-flex.align-items-center.justify-content-between.flex-wrap > ul {
        flex: 0 0 auto !important;
        width: auto !important;
        margin: 0 !important;
    }

    section#main-body.tt-auth-wrap .tt-form-content > .mt-3.d-flex.align-items-center.justify-content-between.flex-wrap > ul .btn {
        padding: 0 !important;
        font-size: 14px !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
    }
}

/* Final mobile auth cleanup: hide testimonial slider block */
@media (max-width: 991.98px) {
    body.tt-body-wrapper.tt-auth-mobile-fix section#main-body.tt-auth-wrap .tt-login-registration-testimonial,
    body.tt-body-wrapper.tt-auth-mobile-fix #main-body.tt-auth-wrap .tt-login-registration-testimonial,
    section#main-body.tt-auth-wrap .tt-login-registration-testimonial {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
    }
}

/* Remove mobile blank spaces on auth pages (after hiding testimonial) */
@media (max-width: 991.98px) {
    body.tt-body-wrapper.tt-auth-mobile-fix {
        overflow: auto !important;
    }

    body.tt-body-wrapper.tt-auth-mobile-fix section#main-body.tt-auth-wrap,
    body.tt-body-wrapper.tt-auth-mobile-fix #main-body.tt-auth-wrap,
    section#main-body.tt-auth-wrap {
        min-height: auto !important;
        height: auto !important;
        padding-top: 20px !important;
        padding-bottom: 28px !important;
        margin: 0 !important;
        overflow: visible !important;
    }

    body.tt-body-wrapper.tt-auth-mobile-fix #main-body.tt-auth-wrap > .container,
    body.tt-body-wrapper.tt-auth-mobile-fix #main-body.tt-auth-wrap .row.justify-content-center,
    body.tt-body-wrapper.tt-auth-mobile-fix #main-body.tt-auth-wrap .primary-content {
        height: auto !important;
        min-height: 0 !important;
        display: block !important;
        align-items: initial !important;
        justify-content: initial !important;
    }

    body.tt-body-wrapper.tt-auth-mobile-fix #main-body.tt-auth-wrap .tt-form-wrap {
        max-width: 540px !important;
        margin: 0 auto !important;
        padding: 0 !important;
    }

    body.tt-body-wrapper.tt-auth-mobile-fix #main-body.tt-auth-wrap .tt-form-wrap .tt-form-container {
        min-height: 0 !important;
        height: auto !important;
    }
}

/* Final checkout mobile fix: keep button first row, text full row */
@media (max-width: 767.98px) {
    #order-standard_cart .already-registered.clearfix {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: flex-start !important;
        gap: 8px !important;
    }

    #order-standard_cart .already-registered.clearfix > .pull-right,
    #order-standard_cart .already-registered.clearfix > .pull-right.float-right,
    #order-standard_cart .already-registered.clearfix > .pull-right.float-right.text-lg-right {
        order: 1 !important;
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
    }

    #order-standard_cart .already-registered.clearfix > p {
        order: 2 !important;
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        margin: 0 !important;
        white-space: normal !important;
        overflow: visible !important;
        word-break: normal !important;
    }

    #order-standard_cart .already-registered.clearfix > .pull-right .btn:not(.w-hidden),
    #order-standard_cart .already-registered.clearfix > .pull-right.float-right .btn:not(.w-hidden),
    #order-standard_cart .already-registered.clearfix > .pull-right.float-right.text-lg-right .btn:not(.w-hidden) {
        width: 100% !important;
        min-height: 40px !important;
    }
}

/* Final override: order summary line-wrap and total due spacing */
#order-standard_cart #orderSummary .summary-container .recurring-totals #recurring,
#order-standard_cart #orderSummary .summary-container .recurring-totals #recurringAnnually,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .recurring-totals #recurring,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .recurring-totals #recurringAnnually {
    white-space: nowrap !important;
    display: inline !important;
    word-break: normal !important;
}

#order-standard_cart #orderSummary .summary-container .total-due-today.total-due-today-padded,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .total-due-today.total-due-today-padded {
    padding-top: 0 !important;
}

/* Hide "Not registered? Create account" text on login form (all screens) */
#main-body .tt-form-wrap form.login-form .tt-form-content > .mt-3.d-flex.align-items-center.justify-content-between.flex-wrap > p.mb-0 {
    display: none !important;
}

/* Slightly increase login button width */
#main-body .tt-form-wrap form.login-form .tt-form-content > .d-flex.align-items-center.justify-content-between > #login.btn {
    min-width: 77px;
}

/* Client-area mobile button alignment fix (hostim-child only) */
@media (max-width: 767.98px) {
    #main-body .tt-client-home-cards .card-header .float-right > a.btn.btn-xs,
    #main-body .sidebar .card.card-sidebar .card-footer .btn.btn-success.btn-sm.btn-block {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 31px !important;
        line-height: 1.2 !important;
        padding: 0.25rem 0.75rem !important;
        white-space: nowrap !important;
    }

    /* Keep btn-xs header actions from looking compressed on small devices */
    #main-body .tt-client-home-cards .card-header .float-right > a.btn.btn-xs {
        padding-left: 0.75rem !important;
        padding-right: 0.75rem !important;
    }
}

/* Bump Subtotal/Totals left labels by 2px and bold */
#order-standard_cart #orderSummary .summary-container .subtotal > .pull-left.float-left,
#order-standard_cart #orderSummary .summary-container .recurring-totals > .pull-left.float-left,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .subtotal > .pull-left.float-left,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .recurring-totals > .pull-left.float-left {
    font-size: 17px !important;
    font-weight: 700 !important;
}

/* Make Subtotal label visual style same as Totals label */
#order-standard_cart #orderSummary .summary-container .subtotal,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .subtotal {
    opacity: 1 !important;
}

#order-standard_cart #orderSummary .summary-container .subtotal > .pull-left.float-left,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .subtotal > .pull-left.float-left {
    color: #111111 !important;
    font-size: 17px !important;
    font-weight: 700 !important;
}

/* Match Subtotal amount style with Recurring amount style */
#order-standard_cart #orderSummary .summary-container #subtotal,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container #subtotal,
#order-standard_cart #orderSummary .summary-container #recurringAnnually,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container #recurringAnnually,
#order-standard_cart #orderSummary .summary-container #recurringAnnually .cost,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container #recurringAnnually .cost {
    font-size: 17px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    color: #111111 !important;
    font-style: normal !important;
}

/* Recurring term on second line with smaller size */
#order-standard_cart #orderSummary .summary-container #recurringAnnually,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container #recurringAnnually {
    white-space: normal !important;
    display: inline-block !important;
}

#order-standard_cart #orderSummary .summary-container #recurringAnnually .tt-recurring-term,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container #recurringAnnually .tt-recurring-term {
    display: block !important;
    margin-top: 2px !important;
    text-align: right !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    color: #4b5563 !important;
    font-style: normal !important;
}

/* Align Subtotal/Totals amount column consistently */
#order-standard_cart #orderSummary .summary-container .subtotal,
#order-standard_cart #orderSummary .summary-container .recurring-total,
#order-standard_cart #orderSummary .summary-container .recurring-totals,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .subtotal,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .recurring-total,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .recurring-totals {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 18px !important;
}

#order-standard_cart #orderSummary .summary-container .subtotal > .pull-left.float-left,
#order-standard_cart #orderSummary .summary-container .recurring-total > .pull-left.float-left,
#order-standard_cart #orderSummary .summary-container .recurring-totals > .pull-left.float-left,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .subtotal > .pull-left.float-left,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .recurring-total > .pull-left.float-left,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container .recurring-totals > .pull-left.float-left {
    float: none !important;
    flex: 1 1 auto !important;
}

#order-standard_cart #orderSummary .summary-container #subtotal,
#order-standard_cart #orderSummary .summary-container #recurring,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container #subtotal,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container #recurring {
    float: none !important;
    margin-left: 0 !important;
    width: 150px !important;
    min-width: 150px !important;
    text-align: left !important;
    padding-left: 30px !important;
    display: inline-block !important;
}

#order-standard_cart #orderSummary .summary-container #recurringAnnually,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container #recurringAnnually {
    display: block !important;
    text-align: right !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
    width: auto !important;
    min-width: 0 !important;
}

#order-standard_cart #orderSummary .summary-container #recurringAnnually .tt-recurring-amount,
#order-standard_cart #scrollingPanelContainer #orderSummary .summary-container #recurringAnnually .tt-recurring-amount {
    display: block !important;
    white-space: nowrap !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    color: #111111 !important;
    font-style: normal !important;
}

/* View cart domain + cycle emphasis */
#order-standard_cart .view-cart-item .item .item-domain {
    font-size: 18px !important;
    line-height: 1.35 !important;
    font-weight: 800 !important;
}

#order-standard_cart .view-cart-item .item .item-price .cycle,
#order-standard_cart .view-cart-item .item .item-price .renewal.cycle,
#order-standard_cart .view-cart-item .item .item-price .renewal-price.cycle {
    font-weight: 800 !important;
}

@media (max-width: 767.98px) {
    #order-standard_cart .already-registered,
    #order-standard_cart .already-registered.clearfix {
        display: none !important;
    }
}

/* Checkout CTA buttons: same color, no rounded corners */
#order-standard_cart #frmCheckout #btnCompleteOrder {
    border-radius: 0 !important;
}

#order-standard_cart #frmCheckout #btnCompleteOrder.btn.btn-primary {
    background: #009e4c !important;
    border-color: #009e4c !important;
    color: #ffffff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#order-standard_cart #frmCheckout #btnCompleteOrder.btn.btn-primary:hover {
    background: #008a42 !important;
    border-color: #008a42 !important;
}

/* Top auth switch buttons: single consistent style/width */
#order-standard_cart .tt-checkout-top-row #btnAlreadyRegistered,
#order-standard_cart .tt-checkout-top-row #btnNewUserSignup,
#order-standard_cart .tt-checkout-top-row #ttCheckoutModeSwitch,
#order-standard_cart .tt-checkout-top-row #ttCheckoutAuthSwitch {
    background: #009e4c !important;
    border-color: #009e4c !important;
    color: #ffffff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-weight: 700 !important;
    min-width: 132px !important;
    min-height: 47px !important;
    padding: 0 14px !important;
    line-height: 45px !important;
    text-align: center !important;
}

#order-standard_cart .tt-checkout-top-row #btnAlreadyRegistered:hover,
#order-standard_cart .tt-checkout-top-row #btnAlreadyRegistered:focus,
#order-standard_cart .tt-checkout-top-row #btnNewUserSignup:hover,
#order-standard_cart .tt-checkout-top-row #ttCheckoutModeSwitch:hover,
#order-standard_cart .tt-checkout-top-row #ttCheckoutModeSwitch:focus,
#order-standard_cart .tt-checkout-top-row #ttCheckoutAuthSwitch:hover,
#order-standard_cart .tt-checkout-top-row #ttCheckoutAuthSwitch:focus {
    background: #008a42 !important;
    border-color: #008a42 !important;
    color: #ffffff !important;
}

/* Checkout payment method text alignment */
#order-standard_cart #frmCheckout #paymentGatewaysContainer > .text-center {
    text-align: left !important;
}

#order-standard_cart #frmCheckout #paymentGatewaysContainer > p.small.text-muted {
    font-weight: 700 !important;
    color: #0f172a !important;
}

/* Marketing opt-in: stable on/off view for bootstrap-switch */
#order-standard_cart #frmCheckout .marketing-email-optin .bootstrap-switch {
    width: 82px !important;
    height: 32px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 0 !important;
    background: #bfe5d2 !important;
    overflow: hidden !important;
    box-shadow: none !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin .bootstrap-switch .bootstrap-switch-label {
    display: none !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin .bootstrap-switch .bootstrap-switch-container {
    margin-left: 0 !important;
    width: 100% !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin .bootstrap-switch .bootstrap-switch-handle-on,
#order-standard_cart #frmCheckout .marketing-email-optin .bootstrap-switch .bootstrap-switch-handle-off {
    width: 100% !important;
    height: 30px !important;
    padding: 0 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 0 !important;
    line-height: 30px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin .bootstrap-switch.bootstrap-switch-on .bootstrap-switch-handle-on {
    display: flex !important;
    background: #009e4c !important;
    border-color: #009e4c !important;
    color: #fff !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin .bootstrap-switch.bootstrap-switch-off .bootstrap-switch-handle-off {
    display: flex !important;
    background: #f3f4f6 !important;
    border-color: #d1d5db !important;
    color: #4b5563 !important;
}

/* Checkout payment + marketing block visual polish */
#order-standard_cart #frmCheckout #paymentGatewaysContainer {
    margin-top: 12px !important;
    padding: 14px 14px 12px !important;
    border: 1px solid #e5e7eb !important;
    background: #f8fafc !important;
    border-radius: 0 !important;
}

#order-standard_cart #frmCheckout #paymentGatewaysContainer > p.small.text-muted {
    margin: 0 0 8px !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
    color: #1f2937 !important;
}

#order-standard_cart #frmCheckout #paymentGatewaysContainer > .text-center {
    margin: 0 !important;
    text-align: left !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin {
    margin-top: 14px !important;
    padding: 14px !important;
    border: 1px solid #e5e7eb !important;
    background: #ffffff !important;
    border-radius: 0 !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin h4 {
    margin: 0 0 6px !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin p {
    margin: 0 0 10px !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #475569 !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin .bootstrap-switch {
    margin-top: 2px !important;
}

/* Extra checkout polish */
#order-standard_cart #frmCheckout #paymentGatewaysContainer {
    box-shadow: 0 1px 0 rgba(15, 23, 42, 0.03) !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin {
    box-shadow: 0 1px 0 rgba(15, 23, 42, 0.03) !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin h4 {
    letter-spacing: 0.1px !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail {
    margin-top: 14px !important;
    padding-top: 12px !important;
    border-top: 1px solid #e5e7eb !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail p,
#order-standard_cart #frmCheckout .tt-captcha-join-mail .checkbox-inline {
    margin-top: 10px !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail #accepttos {
    margin-top: 0 !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail > p {
    display: block !important;
    clear: both !important;
    margin-top: 18px !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail > p .checkbox-inline {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* Modern checkout block refinement + guaranteed TOS spacing */
#order-standard_cart #frmCheckout #paymentGatewaysContainer {
    padding: 16px !important;
    border: 1px solid #d9e3ee !important;
    border-left: 4px solid #009e4c !important;
    background: #ffffff !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04) !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin {
    margin-top: 12px !important;
    padding: 16px !important;
    border: 1px solid #d9e3ee !important;
    border-left: 4px solid #0ea5e9 !important;
    background: #ffffff !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04) !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin h4 {
    margin-bottom: 8px !important;
    font-size: 21px !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin p {
    margin-bottom: 12px !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail {
    margin-top: 24px !important;
    padding-top: 16px !important;
    border-top: 1px solid #e2e8f0 !important;
}

#order-standard_cart #frmCheckout label.checkbox-inline {
    margin-top: 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

#order-standard_cart #frmCheckout p:has(#accepttos) {
    margin-top: 22px !important;
}

/* Unified premium checkout card (payment + marketing + tos) */
#order-standard_cart #frmCheckout #paymentGatewaysContainer,
#order-standard_cart #frmCheckout .marketing-email-optin,
#order-standard_cart #frmCheckout .tt-captcha-join-mail {
    border-left: 0 !important;
    box-shadow: none !important;
}

#order-standard_cart #frmCheckout .tt-checkout-premium-wrap,
#order-standard_cart #frmCheckout #paymentGatewaysContainer {
    border: 1px solid #d7e3f0 !important;
    border-radius: 0 !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
}

#order-standard_cart #frmCheckout #paymentGatewaysContainer {
    padding: 18px 18px 10px !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin {
    margin-top: 12px !important;
    padding: 14px 0 0 !important;
    border-top: 1px solid #e8eef5 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
    background: transparent !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin h4 {
    font-size: 18px !important;
    margin: 0 0 6px !important;
}

#order-standard_cart #frmCheckout .marketing-email-optin p {
    margin: 0 0 10px !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail {
    margin-top: 14px !important;
    padding: 14px 0 0 !important;
    border-top: 1px dashed #dbe7f4 !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail > p {
    margin: 14px 0 0 !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail label.checkbox-inline {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1f2937 !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail .checkbox-inline a {
    font-weight: 700 !important;
}

/* Configure domains addons: keep toggle, remove rounded corners */
#order-standard_cart form#frmConfigureDomains .addon-products .panel-addon .panel-body label .icheckbox_square-blue {
    position: relative !important;
    width: 42px !important;
    height: 24px !important;
    flex: 0 0 42px !important;
    margin: 0 10px 0 0 !important;
    border-radius: 0 !important;
    border: 1px solid #94a3b8 !important;
    background: #cbd5e1 !important;
    background-image: none !important;
}

#order-standard_cart form#frmConfigureDomains .addon-products .panel-addon .panel-body label .icheckbox_square-blue::after {
    content: "" !important;
    position: absolute !important;
    top: 2px !important;
    left: 2px !important;
    width: 18px !important;
    height: 18px !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.2) !important;
    transition: transform .2s ease !important;
}

#order-standard_cart form#frmConfigureDomains .addon-products .panel-addon .panel-body label .icheckbox_square-blue.checked {
    background: #009e4c !important;
    border-color: #009e4c !important;
}

#order-standard_cart form#frmConfigureDomains .addon-products .panel-addon .panel-body label .icheckbox_square-blue.checked::after {
    transform: translateX(18px) !important;
}

/* Match same toggle style for domain cPanel packages */
#order-standard_cart .tt-domain-cpanel-packages .tt-cpanel-package .panel-body label .icheckbox_square-blue {
    position: relative !important;
    width: 42px !important;
    height: 24px !important;
    flex: 0 0 42px !important;
    margin: 0 10px 0 0 !important;
    border-radius: 0 !important;
    border: 1px solid #94a3b8 !important;
    background: #cbd5e1 !important;
    background-image: none !important;
}

#order-standard_cart .tt-domain-cpanel-packages .tt-cpanel-package .panel-body label .icheckbox_square-blue::after {
    content: "" !important;
    position: absolute !important;
    top: 2px !important;
    left: 2px !important;
    width: 18px !important;
    height: 18px !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.2) !important;
    transition: transform .2s ease !important;
}

#order-standard_cart .tt-domain-cpanel-packages .tt-cpanel-package .panel-body label .icheckbox_square-blue.checked {
    background: #009e4c !important;
    border-color: #009e4c !important;
}

#order-standard_cart .tt-domain-cpanel-packages .tt-cpanel-package .panel-body label .icheckbox_square-blue.checked::after {
    transform: translateX(18px) !important;
}

/* Configure product addons: iCheck checkbox -> toggle style (mobile step card too) */
#order-standard_cart form#frmConfigureProduct #productAddonsContainer .icheckbox_square-blue {
    position: relative !important;
    width: 42px !important;
    height: 24px !important;
    flex: 0 0 42px !important;
    margin: 0 10px 0 0 !important;
    border-radius: 0 !important;
    border: 1px solid #94a3b8 !important;
    background: #cbd5e1 !important;
    background-image: none !important;
}

#order-standard_cart form#frmConfigureProduct #productAddonsContainer .icheckbox_square-blue::after {
    content: "" !important;
    position: absolute !important;
    top: 2px !important;
    left: 2px !important;
    width: 18px !important;
    height: 18px !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.2) !important;
    transition: transform .2s ease !important;
}

#order-standard_cart form#frmConfigureProduct #productAddonsContainer .icheckbox_square-blue.checked {
    background: #009e4c !important;
    border-color: #009e4c !important;
}

#order-standard_cart form#frmConfigureProduct #productAddonsContainer .icheckbox_square-blue.checked::after {
    transform: translateX(18px) !important;
}

/* Mobile: hide checkout helper intro box */
@media (max-width: 991.98px) {
    #order-standard_cart .already-registered,
    #order-standard_cart .already-registered.clearfix,
    #order-standard_cart.tt-checkout-brand .already-registered,
    #order-standard_cart.tt-checkout-brand .already-registered.clearfix {
        display: none !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        overflow: hidden !important;
    }
}

/* Configure domains: remove rounded on Add to Cart */
#order-standard_cart form#frmConfigureDomains .addon-products .panel-addon .panel-add {
    border-radius: 0 !important;
}

/* Hide checkout security notice */
#order-standard_cart .checkout-security-msg {
    display: none !important;
}

/* Hide Domain Registrant Information block on checkout (all screens) */
#order-standard_cart #frmCheckout .sub-heading,
#order-standard_cart #frmCheckout .sub-heading + p.small.text-muted,
#order-standard_cart #frmCheckout #inputDomainContact,
#order-standard_cart #frmCheckout .row.margin-bottom #inputDomainContact,
#order-standard_cart #frmCheckout .row.margin-bottom #inputDomainContact.form-control,
#order-standard_cart #frmCheckout .row.margin-bottom #inputDomainContact.field,
#order-standard_cart #frmCheckout .row.margin-bottom div:has(> #inputDomainContact),
#order-standard_cart #frmCheckout .row.margin-bottom:has(#inputDomainContact) {
    display: none !important;
}

/* Hide payment gateway section on checkout (all screens) */
#order-standard_cart #frmCheckout #paymentGatewaysContainer,
#order-standard_cart #frmCheckout .form-group#paymentGatewaysContainer {
    display: none !important;
}

/* Hide marketing email opt-in section on checkout (all screens) */
#order-standard_cart #frmCheckout .marketing-email-optin {
    display: none !important;
}

/* Hide company name field on checkout */
#order-standard_cart #frmCheckout #inputCompanyName,
#order-standard_cart #frmCheckout .form-group:has(#inputCompanyName),
#order-standard_cart #frmCheckout .col-sm-12:has(#inputCompanyName) {
    display: none !important;
}

/* Hide checkout intro notice on all screens */
#order-standard_cart .already-registered,
#order-standard_cart .already-registered.clearfix,
#order-standard_cart.tt-checkout-brand .already-registered,
#order-standard_cart.tt-checkout-brand .already-registered.clearfix {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}

/* Final checkout polish: align with site login/page design */
#order-standard_cart #frmCheckout #containerExistingUserSignin:not(.w-hidden) {
    max-width: 1040px;
    margin: 0 auto 12px !important;
    padding: 10px 0 4px !important;
}

#order-standard_cart #frmCheckout #containerExistingUserSignin:not(.w-hidden) .row {
    margin-left: -6px !important;
    margin-right: -6px !important;
}

#order-standard_cart #frmCheckout #containerExistingUserSignin:not(.w-hidden) .row > [class*="col-"] {
    padding-left: 6px !important;
    padding-right: 6px !important;
}

#order-standard_cart #frmCheckout #inputLoginEmail,
#order-standard_cart #frmCheckout #inputLoginPassword {
    height: 47px !important;
    border: 1px solid #d9e2ec !important;
    border-radius: 0 !important;
    font-size: 14px !important;
    color: #0f172a !important;
    box-shadow: none !important;
}

#order-standard_cart #frmCheckout #containerExistingUserSignin:not(.w-hidden) .text-center {
    margin-top: 10px !important;
    text-align: center !important;
}

#order-standard_cart #frmCheckout #btnExistingLogin {
    min-width: 150px !important;
    height: 40px !important;
    padding: 0 20px !important;
    border-radius: 0 !important;
    background: #009e4c !important;
    border-color: #009e4c !important;
    color: #ffffff !important;
    font-weight: 700 !important;
}

#order-standard_cart #frmCheckout #btnExistingLogin:hover,
#order-standard_cart #frmCheckout #btnExistingLogin:focus {
    background: #008a42 !important;
    border-color: #008a42 !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail > p {
    margin-top: 14px !important;
    text-align: center !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail > p label.checkbox-inline {
    display: inline-flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    max-width: 100% !important;
    line-height: 1.45 !important;
    color: #334155 !important;
}

#order-standard_cart #frmCheckout .tt-captcha-join-mail > p label.checkbox-inline input[type="checkbox"] {
    margin-top: 2px !important;
}

#order-standard_cart #frmCheckout #btnCompleteOrder {
    min-width: 220px !important;
    height: 46px !important;
    padding: 0 20px !important;
    border-radius: 0 !important;
    font-weight: 700 !important;
    letter-spacing: 0.1px !important;
}

@media (max-width: 767.98px) {
    #order-standard_cart #frmCheckout #containerExistingUserSignin:not(.w-hidden) .row > [class*="col-"] {
        margin-bottom: 8px !important;
    }

    #order-standard_cart #frmCheckout #btnExistingLogin,
    #order-standard_cart #frmCheckout #btnCompleteOrder {
        width: 100% !important;
    }
}

/* Mobile overlap hotfix for checkout layout */
@media (max-width: 991.98px) {
    #order-standard_cart .tt-checkout-top-row,
    #order-standard_cart .tt-checkout-top-actions,
    #order-standard_cart .tt-checkout-top-row .pull-right,
    #order-standard_cart .tt-checkout-top-actions .pull-right {
        position: static !important;
        float: none !important;
        width: 100% !important;
        margin: 0 0 10px !important;
        transform: none !important;
        z-index: auto !important;
    }

    #order-standard_cart #btnAlreadyRegistered,
    #order-standard_cart .tt-checkout-top-row .btn:not(.w-hidden),
    #order-standard_cart .tt-checkout-top-actions .btn:not(.w-hidden) {
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 10px !important;
    }

    #order-standard_cart #btnNewUserSignup {
        margin: 0 0 10px !important;
    }

    #order-standard_cart .sub-heading {
        margin: 14px 0 8px !important;
        border-top: 0 !important;
        position: relative !important;
        z-index: 20 !important;
        background: #ffffff !important;
        display: block !important;
        min-height: 24px !important;
        line-height: 1.2 !important;
        overflow: visible !important;
    }

    #order-standard_cart .sub-heading span,
    #order-standard_cart .sub-heading-borderless span {
        position: relative !important;
        top: 0 !important;
        left: 0 !important;
        display: inline-block !important;
        margin: 0 auto !important;
        padding: 4px 12px !important;
        transform: none !important;
        z-index: 21 !important;
        background: #dff3ff !important;
        border: 1px solid #c7e6f6 !important;
        border-radius: 8px !important;
        line-height: 1.2 !important;
        font-weight: 700 !important;
        color: #1e3a56 !important;
    }

    #order-standard_cart .sub-heading,
    #order-standard_cart .sub-heading-borderless {
        text-align: center !important;
        position: relative !important;
    }

    #order-standard_cart .sub-heading::before,
    #order-standard_cart .sub-heading::after,
    #order-standard_cart .sub-heading-borderless::before,
    #order-standard_cart .sub-heading-borderless::after {
        content: "" !important;
        position: absolute !important;
        top: 50% !important;
        width: calc(50% - 90px) !important;
        border-top: 1px solid #dbe7f2 !important;
        transform: translateY(-50%) !important;
    }

    #order-standard_cart .sub-heading::before,
    #order-standard_cart .sub-heading-borderless::before {
        left: 0 !important;
    }

    #order-standard_cart .sub-heading::after,
    #order-standard_cart .sub-heading-borderless::after {
        right: 0 !important;
    }

    #order-standard_cart #frmCheckout .field-container,
    #order-standard_cart #frmCheckout .form-group {
        clear: both !important;
    }
}

/* FINAL MOBILE ALIGNMENT: Terms row clean and readable */
@media (max-width: 767.98px) {
    #order-standard_cart #frmCheckout .tt-captcha-join-mail {
        text-align: left !important;
    }

    #order-standard_cart #frmCheckout .tt-captcha-join-mail > p {
        margin: 14px 0 0 !important;
        text-align: left !important;
    }

    #order-standard_cart #frmCheckout .tt-captcha-join-mail > p label.checkbox-inline {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 0 0 26px !important;
        line-height: 1.55 !important;
        white-space: normal !important;
        overflow-wrap: break-word !important;
    }

    #order-standard_cart #frmCheckout .tt-captcha-join-mail > p label.checkbox-inline #accepttos {
        position: absolute !important;
        left: 0 !important;
        top: 2px !important;
        float: none !important;
        width: 16px !important;
        min-width: 16px !important;
        height: 16px !important;
        margin: 0 !important;
    }

    #order-standard_cart #frmCheckout .tt-captcha-join-mail > p label.checkbox-inline a {
        display: inline !important;
        margin-left: 4px !important;
        white-space: normal !important;
    }
}

/* Mobile TOS row exact alignment (checkout bottom text-center block) */
@media (max-width: 767.98px) {
    #order-standard_cart #frmCheckout > .text-center > p {
        margin-top: 14px !important;
        margin-bottom: 10px !important;
        text-align: left !important;
    }

    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        padding-left: 28px !important;
        line-height: 1.45 !important;
        white-space: normal !important;
        margin: 0 !important;
    }

    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline #iCheck-accepttos,
    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline #accepttos {
        position: absolute !important;
        left: 0 !important;
        top: 2px !important;
        margin: 0 !important;
        width: 16px !important;
        min-width: 16px !important;
        height: 16px !important;
    }

    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline > a {
        display: block !important;
        margin-top: 2px !important;
        margin-left: 0 !important;
        line-height: 1.35 !important;
    }
}

/* ABSOLUTE PRIORITY mobile TOS fix */
@media (max-width: 767.98px) {
    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline {
        font-size: 13px !important;
        font-weight: 500 !important;
        color: #334155 !important;
        display: block !important;
        width: 100% !important;
        padding-left: 28px !important;
        position: relative !important;
        line-height: 1.45 !important;
        white-space: normal !important;
        text-align: left !important;
    }

    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline #iCheck-accepttos {
        position: absolute !important;
        left: 0 !important;
        top: 1px !important;
        width: 16px !important;
        height: 16px !important;
        margin: 0 !important;
        display: inline-block !important;
        vertical-align: top !important;
    }

    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline #iCheck-accepttos > ins.iCheck-helper {
        width: 100% !important;
        height: 100% !important;
        top: 0 !important;
        left: 0 !important;
        margin: 0 !important;
    }

    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline > a {
        display: block !important;
        margin: 2px 0 0 0 !important;
        color: #009e4c !important;
        font-weight: 700 !important;
        line-height: 1.35 !important;
    }
}

/* ULTRA FINAL: mobile TOS checkbox + left alignment */
@media (max-width: 767.98px) {
    #order-standard_cart #frmCheckout > .text-center {
        text-align: left !important;
    }

    #order-standard_cart #frmCheckout > .text-center > p,
    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline {
        text-align: left !important;
    }

    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline {
        padding-left: 30px !important;
        line-height: 1.5 !important;
    }

    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline #iCheck-accepttos {
        width: 18px !important;
        height: 18px !important;
        min-width: 18px !important;
        left: 0 !important;
        top: 1px !important;
    }

    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline #iCheck-accepttos > ins.iCheck-helper {
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
    }

    #order-standard_cart #frmCheckout > .text-center > p > label.checkbox-inline > a {
        text-align: left !important;
        margin-left: 0 !important;
    }
}

/* Existing login area polish (desktop + mobile) */
#order-standard_cart #frmCheckout #containerExistingUserSignin {
    margin-bottom: 14px !important;
}

#order-standard_cart #frmCheckout #containerExistingUserSignin .row {
    margin-bottom: 12px !important;
}

#order-standard_cart #frmCheckout #containerExistingUserSignin .text-center {
    text-align: left !important;
    margin-top: 2px !important;
    margin-bottom: 10px !important;
}

#order-standard_cart #frmCheckout #containerExistingUserSignin #btnExistingLogin {
    min-width: 120px !important;
    height: 40px !important;
    padding: 0 22px !important;
    border-radius: 6px !important;
}

#order-standard_cart #frmCheckout #totalDueToday {
    margin-top: 8px !important;
    margin-bottom: 14px !important;
}

@media (max-width: 767.98px) {
    #order-standard_cart #frmCheckout #containerExistingUserSignin .text-center {
        text-align: center !important;
    }
}

/* Existing login inline row: Email + Password + Login */
#order-standard_cart #frmCheckout #containerExistingUserSignin .row {
    display: flex !important;
    align-items: stretch !important;
    gap: 0 !important;
    margin-left: -6px !important;
    margin-right: -6px !important;
}

#order-standard_cart #frmCheckout #containerExistingUserSignin .row > .col-sm-6 {
    flex: 1 1 0 !important;
    max-width: none !important;
    padding-right: 6px !important;
    padding-left: 6px !important;
    display: flex !important;
    align-items: stretch !important;
}

#order-standard_cart #frmCheckout #containerExistingUserSignin .row > .tt-login-inline-col {
    flex: 0 0 140px !important;
    max-width: 140px !important;
    margin: 0 !important;
    text-align: left !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
    display: flex !important;
    align-items: stretch !important;
}

#order-standard_cart #frmCheckout #containerExistingUserSignin #btnExistingLogin {
    width: 100% !important;
    height: 47px !important;
    border-radius: 0 !important;
    margin: 0 !important;
    align-self: stretch !important;
}

#order-standard_cart #frmCheckout #containerExistingUserSignin .row .form-group.prepend-icon,
#order-standard_cart #frmCheckout #containerExistingUserSignin .row .tt-login-inline-col.text-center {
    width: 100% !important;
    margin-bottom: 0 !important;
}

@media (max-width: 767.98px) {
    #order-standard_cart #frmCheckout #containerExistingUserSignin .row {
        display: block !important;
    }

    #order-standard_cart #frmCheckout #containerExistingUserSignin .row > .col-sm-6,
    #order-standard_cart #frmCheckout #containerExistingUserSignin .row > .tt-login-inline-col {
        max-width: 100% !important;
        width: 100% !important;
        padding-right: 15px !important;
        padding-left: 15px !important;
    }

    #order-standard_cart #frmCheckout #containerExistingUserSignin .row > .tt-login-inline-col {
        margin-top: 8px !important;
    }

    #order-standard_cart #frmCheckout #containerExistingUserSignin .row .col-sm-6 .form-group.prepend-icon {
        margin-bottom: 8px !important;
    }
}

/* Configure product: remove secondary cart body border/rounding */
#order-standard_cart #frmConfigureProduct .secondary-cart-body {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Configure product: remove rounding from key blocks */
#order-standard_cart #frmConfigureProduct .secondary-cart-body .product-info .product-title,
#order-standard_cart #frmConfigureProduct .secondary-cart-body .field-container .form-group,
#order-standard_cart #frmConfigureProduct #orderSummary .order-summary,
#order-standard_cart #frmConfigureProduct #orderSummary .order-summary h2.font-size-30,
#order-standard_cart #frmConfigureProduct #btnCompleteProductConfig {
    border-radius: 0 !important;
}

/* Configure product: force-remove rounding on title + order summary header */
#order-standard_cart #frmConfigureProduct .product-info .product-title,
#order-standard_cart #frmConfigureProduct .product-info,
#order-standard_cart #frmConfigureProduct #orderSummary,
#order-standard_cart #frmConfigureProduct #orderSummary .order-summary,
#order-standard_cart #frmConfigureProduct #orderSummary h2.font-size-30 {
    border-radius: 0 !important;
}

/* Override earlier hard-coded 8px top rounding (final) */
#order-standard_cart #frmConfigureProduct .secondary-cart-body .product-info > p.product-title {
    border-radius: 0 !important;
}

#order-standard_cart #frmConfigureProduct .secondary-cart-body .product-info {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #orderSummary .order-summary > h2.font-size-30,
#order-standard_cart #frmConfigureProduct #scrollingPanelContainer #orderSummary > h2.font-size-30 {
    border-radius: 0 !important;
}

/* Domain search: suggested domains container should match spotlight tiles */
#order-standard_cart .suggested-domains {
    background-color: #fff !important;
    border: 1px solid #ddd !important;
    border-radius: 5px !important;
    overflow: hidden;
    margin: 15px 0;
}

/* Suggested domains: alternate row colors */
#order-standard_cart .suggested-domains #domainSuggestions.list-group .list-group-item {
    background-color: #ffffff;
}
#order-standard_cart .suggested-domains #domainSuggestions.list-group .list-group-item:nth-child(even) {
    background-color: #f8fafc;
}

/* Spotlight TLD result box background */
#order-standard_cart .spotlight-tld .domain-lookup-result {
    background-color: #f8fafc;
    border-radius: 6px;
    padding: 8px 6px;
}

/* cart-body.w-100: remove card background/border/rounding */
#order-standard_cart .cart-body.w-100,
#order-standard_cart.tt-configure-brand .cart-body.w-100,
#order-standard_cart.tt-viewcart-brand .cart-body.w-100,
#order-standard_cart.tt-checkout-brand .cart-body.w-100,
#order-standard_cart.tt-confdomains-brand .cart-body.w-100 {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* Promo code tabs: make active tab + content white */
#order-standard_cart .view-cart-tabs .nav-tabs > li > a.nav-link.active,
#order-standard_cart .view-cart-tabs .nav-tabs > li > a[aria-expanded="true"],
#order-standard_cart .view-cart-tabs .nav-tabs a[aria-selected="true"] {
    background-color: #ffffff !important;
}

#order-standard_cart .view-cart-tabs .tab-content {
    background-color: #ffffff !important;
}

/* Some steps render the "card" on secondary-cart-body inside cart-body.w-100 */
#order-standard_cart .cart-body.w-100 .secondary-cart-body,
#order-standard_cart .cart-body.w-100 .secondary-cart-body > .panel,
#order-standard_cart .cart-body.w-100 .secondary-cart-body > .card {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Absolute final override for cart-body.w-100 wrapper */
section#main-body #order-standard_cart > .row > .cart-body.w-100 {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

/* Hosting page: remove rounded corners */
.tt-hosting-audience-card,
.tt-hosting-compare-grid,
.tt-hosting-compare-table-wrap,
.tt-hosting-compare-table {
    border-radius: 0 !important;
}

/* Domain transfer page: hide top title/subtitle block */
#order-standard_cart .cart-body > .text-center > h2.font-size-30,
#order-standard_cart .cart-body > .text-center > p {
    display: none !important;
}

/* Domain transfer page: remove cart-body card styling */
#order-standard_cart .cart-body:has(#frmDomainTransfer) {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* Transfer form panel: remove rounded corners */
#order-standard_cart #frmDomainTransfer .panel.card.panel-default,
#order-standard_cart #frmDomainTransfer .panel.card.panel-default .panel-heading,
#order-standard_cart #frmDomainTransfer .panel.card.panel-default .card-header,
#order-standard_cart #frmDomainTransfer .panel.card.panel-default .panel-body,
#order-standard_cart #frmDomainTransfer .panel.card.panel-default .card-body,
#order-standard_cart #frmDomainTransfer .panel.card.panel-default .panel-footer,
#order-standard_cart #frmDomainTransfer .panel.card.panel-default .card-footer {
    border-radius: 0 !important;
}

/* Transfer Add to Cart button: remove rounded corners */
#order-standard_cart #frmDomainTransfer #btnTransferDomain {
    border-radius: 0 !important;
}

/*
 * Store / products (themetags_cart etc.): horizontal swipe on phones.
 * Rows are merged into .tt-mobile-product-slider-track via footer JS (display:contents is flaky on mobile).
 */
@media (max-width: 767.98px) {
    section#main-body .primary-content {
        min-width: 0 !important;
    }

    section#main-body #order-standard_cart,
    section#main-body #order-standard_cart > .row,
    section#main-body #order-standard_cart .cart-body {
        min-width: 0 !important;
        max-width: 100% !important;
    }

    section#main-body #order-standard_cart #products.products,
    section#main-body #order-standard_cart .products#products {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x mandatory !important;
        scroll-padding-inline: 10px !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior-x: contain !important;
        scrollbar-width: thin !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    /* .tt-products--slider added by JS after rows are merged into .tt-mobile-product-slider-track */
    section#main-body #order-standard_cart #products.tt-products--slider {
        display: block !important;
    }

    section#main-body #order-standard_cart #products:not(.tt-products--slider) {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        gap: 14px !important;
    }

    section#main-body #order-standard_cart #products .tt-mobile-product-slider-track {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        gap: 14px !important;
        width: max-content !important;
        max-width: none !important;
        min-width: 100% !important;
        box-sizing: border-box !important;
    }

    section#main-body #order-standard_cart #products .tt-mobile-product-slider-track > [class*="col-"] {
        display: flex !important;
        flex: 0 0 88vw !important;
        width: 88vw !important;
        max-width: 88vw !important;
        min-width: 0 !important;
        scroll-snap-align: center !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        float: none !important;
    }

    /* No-JS fallback: single .row still swipes if display:contents works */
    section#main-body #order-standard_cart #products.products > .row.row-eq-height,
    section#main-body #order-standard_cart .products#products > .row.row-eq-height {
        display: contents !important;
    }

    section#main-body #order-standard_cart #products.products > .row.row-eq-height > [class*="col-"],
    section#main-body #order-standard_cart .products#products > .row.row-eq-height > [class*="col-"] {
        flex: 0 0 88vw !important;
        width: 88vw !important;
        max-width: 88vw !important;
    }
}

/*
 * thememetro-a-plus order form: #products.TM-pricing-tables-container > ul > li
 * scroll-snap-align:center caused cards to clip on the left ("_inux"). Use start + vw slide width.
 */
@media (min-width: 768px) {
    section#main-body .tt-metro-pricing-swipe-hint {
        display: none !important;
    }
}

@media (max-width: 767.98px) {
    section#main-body .primary-content > .row > .col-sm-12 {
        min-width: 0 !important;
    }

    body.tt-body-wrapper:has(#products.TM-pricing-tables-container) section.tt-page-header.py-5.bg-gradient {
        padding-top: 16px !important;
        padding-bottom: 18px !important;
    }

    section#main-body:has(#products.TM-pricing-tables-container) {
        padding-top: 8px !important;
    }

    section#main-body:has(#products.TM-pricing-tables-container) > .container {
        padding-top: 4px !important;
    }

    /* Metro store: hide group title + tagline on phones (page header already shows context). */
    section#main-body .tt-metro-pricing-col > .text-center {
        display: none !important;
    }

    section#main-body .tt-metro-pricing-col > hr.tt-metro-pricing-sep {
        display: none !important;
    }

    section#main-body .tt-metro-pricing-swipe-hint {
        display: block !important;
        margin: 0 auto 10px !important;
        padding: 8px 12px 10px !important;
        touch-action: none !important;
        cursor: grab !important;
        user-select: none !important;
        -webkit-user-select: none !important;
    }

    section#main-body .tt-metro-pricing-swipe-hint:active {
        cursor: grabbing !important;
    }

    /* ‹ centred copy › — middle column grows so text stays visually centered */
    section#main-body .tt-metro-pricing-swipe-hint__inner {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        gap: 6px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Slightly smaller than body, bold; centred between arrows */
    section#main-body .tt-metro-pricing-swipe-hint__text {
        flex: 1 1 auto !important;
        align-self: center !important;
        text-align: center !important;
        min-width: 0 !important;
        font-size: calc(1em - 2px) !important;
        line-height: 1.45 !important;
        font-weight: 700 !important;
    }

    section#main-body .tt-metro-pricing-swipe-hint__icon {
        flex: 0 0 auto !important;
        align-self: center !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-width: 40px !important;
        min-height: 40px !important;
        margin: 0 !important;
        padding: 0 4px !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
        font-size: 28px !important;
        font-family: inherit !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        color: inherit !important;
        opacity: 0.9 !important;
        cursor: pointer !important;
        -webkit-tap-highlight-color: transparent !important;
        touch-action: manipulation !important;
        -webkit-appearance: none !important;
        appearance: none !important;
    }

    /* Tap / focus ring only — no layout or “button chrome” change */
    section#main-body .tt-metro-pricing-swipe-hint__icon:focus,
    section#main-body .tt-metro-pricing-swipe-hint__icon:focus-visible,
    section#main-body .tt-metro-pricing-swipe-hint__icon:active {
        outline: none !important;
        outline-offset: 0 !important;
        box-shadow: none !important;
    }

    section#main-body .tt-metro-pricing-swipe-hint__icon::-moz-focus-inner {
        border: 0 !important;
    }

    section#main-body #products.TM-pricing-tables-container {
        container-type: inline-size !important;
        container-name: tt-metro-packages !important;
        position: relative !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x mandatory !important;
        scroll-padding-inline: 0 !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior-x: contain !important;
        scrollbar-width: thin !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        margin: 8px 0 14px !important;
        padding-bottom: 6px !important;
        outline: none !important;
    }

    section#main-body #products.TM-pricing-tables-container > ul {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        /* flex-start: each slide only as tall as its card — stretch left a big empty gap under short plans */
        align-items: flex-start !important;
        gap: 10px !important;
        width: max-content !important;
        min-width: 100% !important;
        margin: 0 !important;
        padding: 0 0 12px 0 !important;
        list-style: none !important;
        box-sizing: border-box !important;
        justify-content: flex-start !important;
    }

    /*
     * Slide = exact scrollport width (100cqi). vw was wider than padded column → right clip.
     */
    /*
     * Extra inline padding so .ribbon :before/:after (left: -0.5em) isn’t clipped by the scrollport.
     */
    section#main-body #products.TM-pricing-tables-container > ul > li {
        flex: 0 0 100cqi !important;
        width: 100cqi !important;
        max-width: 100cqi !important;
        min-width: 0 !important;
        scroll-snap-align: start !important;
        scroll-margin-inline: 0 !important;
        margin: 0 !important;
        padding: 12px 12px 8px 16px !important;
        list-style: none !important;
        box-sizing: border-box !important;
        display: flex !important;
        overflow: visible !important;
    }

    /* Older browsers: no cqi — narrower than 100vw so column padding isn’t overrun */
    @supports not (width: 1cqi) {
        section#main-body #products.TM-pricing-tables-container > ul > li {
            flex: 0 0 calc(100vw - 72px) !important;
            width: calc(100vw - 72px) !important;
            max-width: 100% !important;
        }
    }

    section#main-body #products.TM-pricing-tables-container .TM-pricing-table {
        max-width: 100% !important;
        width: 100% !important;
        box-sizing: border-box !important;
        overflow: visible !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        box-shadow: none !important;
        filter: none !important;
    }

    /* Metro .rate uses horizontal -15px margin — pulls black bar outside; match our 12px card padding */
    section#main-body #products.TM-pricing-tables-container .TM-pricing-table .rate {
        margin-left: -12px !important;
        margin-right: -12px !important;
        margin-top: 15px !important;
        margin-bottom: 10px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        box-sizing: border-box !important;
    }

    section#main-body #products.TM-pricing-tables-container .TM-pricing-table h3 {
        word-break: break-word !important;
        overflow-wrap: anywhere !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
    }

    /* Theme desktop rule: .active ul { padding-bottom: 45px } — empty band under feature list on phones */
    section#main-body #products.TM-pricing-tables-container .TM-pricing-table.active ul {
        padding-bottom: 0 !important;
    }

    /* Theme: .TM-pricing-table ul { margin: 15px 0 } — trim bottom gap */
    section#main-body #products.TM-pricing-tables-container .TM-pricing-table ul {
        margin-top: 12px !important;
        margin-bottom: 0 !important;
    }
}

/* viewinvoice / viewquote: invoice-header company logo — parent invoice.css uses max-width:100% */
.invoice-container .invoice-header img {
    max-width: 200px !important;
    width: auto !important;
    height: auto !important;
    display: inline-block;
    vertical-align: middle;
}

@media (max-width: 575.98px) {
    .invoice-container .invoice-header img {
        max-width: 160px !important;
    }
}

/*
 * Homepage gradient hero — force rounded box (DOM: section.bg-gradient.hc-hero-boxed > div.pt-60.tt-hero-two).
 * Parent theme / order can otherwise flatten border-radius on the inner div.
 */
section.bg-gradient.hc-hero-boxed > div.pt-60.tt-hero-two,
section.hc-hero-boxed > div.pt-60.tt-hero-two,
section.hc-hero-boxed > .pt-60.tt-hero-two {
    border-radius: 28px !important;
    overflow: hidden !important;
}

@media (max-width: 767.98px) {
    section.bg-gradient.hc-hero-boxed > div.pt-60.tt-hero-two,
    section.hc-hero-boxed > div.pt-60.tt-hero-two,
    section.hc-hero-boxed > .pt-60.tt-hero-two {
        border-radius: 22px !important;
    }
}

@media (max-width: 390px) {
    section.bg-gradient.hc-hero-boxed > div.pt-60.tt-hero-two,
    section.hc-hero-boxed > div.pt-60.tt-hero-two,
    section.hc-hero-boxed > .pt-60.tt-hero-two {
        border-radius: 18px !important;
    }
}

/* Account → change password: white surface inside gray card shell (user-password.tpl) */
#main-body .primary-content .card.tt-custom-card.bg-gray-light:has(input[name="existingpw"]) {
    background-color: #ffffff !important;
}

#main-body .primary-content .card.tt-custom-card.bg-gray-light:has(input[name="existingpw"]) > .card-body {
    background-color: #ffffff !important;
}

/* User management: stack action buttons, equal width, consistent spacing */
#main-body .primary-content .tt-account-user-actions .d-flex.flex-column > .btn,
#main-body .primary-content .tt-account-user-actions .d-flex.flex-column > a.btn {
    box-sizing: border-box;
}

#main-body .primary-content .tt-account-user-actions .d-flex.flex-column > a.btn:last-child,
#main-body .primary-content .tt-account-user-actions .d-flex.flex-column > .btn:last-child {
    margin-bottom: 0 !important;
}

/* Performance: native momentum scroll on wide client-area tables (no visual change) */
#main-body .table-responsive {
    -webkit-overflow-scrolling: touch;
}

/*
 * Unpaid / overdue invoice strip (clientareaproductdetails.tpl, clientareadomaindetails.tpl):
 * parent uses float-right on the Pay button, which top-aligns it so it looks low in the bar.
 * Flex + order keeps message left / button right and vertically centers the button.
 */
#main-body #alertUnpaidInvoice,
#main-body #alertOverdueInvoice {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem 1rem;
}

#main-body #alertUnpaidInvoice .float-right,
#main-body #alertOverdueInvoice .float-right {
    float: none !important;
    flex: 0 0 auto;
    order: 2;
    margin-inline-start: auto;
}

/* Desktop hero: WP floating icon (wins over theme + device tweaks below 992px) */
@media (min-width: 992px) {
    section.hc-hero-boxed .tt-animation-icon-img {
        position: absolute !important;
        left: auto !important;
        right: 43% !important;
        top: 24% !important;
        max-width: 80px !important;
        height: auto !important;
        pointer-events: none !important;
        backface-visibility: hidden !important;
        animation: bounce 1s ease-in-out 0s infinite alternate !important;
    }
}
