@font-face {
    font-family: "Big Shoulders Display";
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url("../fonts/big-shoulders-display-latin-600.woff2") format("woff2");
}

/* 1. Tokens */
:root {
    --tws-brand: #19c6b3;
    --tws-brand-soft: #78ddd1;
    --tws-action: #ff6a1a;
    --tws-action-hover: #ff7d38;
    --tws-action-active: #e9540a;
    --tws-action-subtle: #3a1b0d;
    --tws-focus: #ff9a62;
    --tws-bg: #06131c;
    --tws-bg-deep: #030b11;
    --tws-surface-1: #0a1923;
    --tws-surface-2: #0e202b;
    --tws-surface-3: #142a36;
    --tws-border: #29404d;
    --tws-border-strong: #415865;
    --tws-text: #f5f7f8;
    --tws-text-body: #d5dde1;
    --tws-text-muted: #9eafb8;
    --tws-text-disabled: #70818a;
    --tws-text-on-action: #10171b;
    --tws-success: #3ccb7f;
    --tws-warning: #f5b942;
    --tws-danger: #ff5d68;
    --tws-info: #63a8ff;
    --tws-font-sans: "Manrope", "Segoe UI", Arial, sans-serif;
    --tws-space-1: .25rem;
    --tws-space-2: .5rem;
    --tws-space-3: .75rem;
    --tws-space-4: 1rem;
    --tws-space-5: 1.25rem;
    --tws-space-6: 1.5rem;
    --tws-space-8: 2rem;
    --tws-space-10: 2.5rem;
    --tws-space-12: 3rem;
    --tws-space-16: 4rem;
    --tws-space-20: 5rem;
    --tws-space-24: 6rem;
    --tws-space-32: 8rem;
    --tws-radius-sm: .25rem;
    --tws-radius-md: .5rem;
    --tws-radius-lg: .75rem;
    --tws-radius-pill: 999px;
    --tws-control-height: 3rem;
    --tws-container-main: 75rem;
    --tws-container-reading: 47.5rem;
    --tws-container-form: 35rem;
    --tws-shell-gutter-inline: .125rem;
    --tws-duration-fast: 120ms;
    --tws-duration-base: 180ms;
    --tws-ease: cubic-bezier(.2, .8, .2, 1);
    --tws-shadow-sm: 0 .25rem 1rem rgb(0 0 0 / 18%);
    --tws-layer-base: 0;
    --tws-layer-nav: 20;
    --tws-layer-modal: 100;
}

/* 2. Scoped base styles for Sprint 2 component validation */
.tws-scope:not(.tws-shell),
.tws-scope:not(.tws-shell) * {
    box-sizing: border-box;
}

.tws-scope:not(.tws-shell) {
    margin: 0;
    background: var(--tws-bg);
    color: var(--tws-text-body);
    font-family: var(--tws-font-sans);
    font-size: 1rem;
    line-height: 1.55;
}

.tws-scope:not(.tws-shell) h1,
.tws-scope:not(.tws-shell) h2,
.tws-scope:not(.tws-shell) h3,
.tws-scope:not(.tws-shell) p {
    margin-top: 0;
}

.tws-scope:not(.tws-shell) h1,
.tws-scope:not(.tws-shell) h2,
.tws-scope:not(.tws-shell) h3 {
    color: var(--tws-text);
    letter-spacing: -.02em;
}

.tws-scope:not(.tws-shell) h1 {
    margin-bottom: var(--tws-space-4);
    font-size: clamp(2.25rem, 8vw, 3rem);
    line-height: 1.15;
}

.tws-scope:not(.tws-shell) h2 {
    margin-bottom: var(--tws-space-4);
    font-size: clamp(1.875rem, 6vw, 2.25rem);
    line-height: 1.2;
}

.tws-scope:not(.tws-shell) h3 {
    margin-bottom: var(--tws-space-3);
    font-size: 1.25rem;
    line-height: 1.3;
}

.tws-scope:not(.tws-shell) p {
    max-width: 60ch;
    margin-bottom: var(--tws-space-4);
}

.tws-scope:not(.tws-shell) a {
    color: var(--tws-action);
    text-decoration-thickness: .125rem;
    text-underline-offset: .2em;
}

.tws-scope:not(.tws-shell) :where(a, button, input, select, textarea):focus-visible {
    outline: .1875rem solid var(--tws-focus);
    outline-offset: .125rem;
}

/* 3. Mobile-first layout primitives */
.tws-container {
    width: min(calc(100% - var(--tws-shell-gutter-inline) - var(--tws-shell-gutter-inline)), var(--tws-container-main));
    margin-inline: auto;
}

@media (min-width: 36rem) {
    :root {
        --tws-shell-gutter-inline: 1rem;
    }
}

.tws-section {
    padding-block: 3.5rem;
}

.tws-stack {
    display: flex;
    flex-direction: column;
    gap: var(--tws-space-6);
}

.tws-cluster {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--tws-space-3);
}

.tws-auto-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
    gap: var(--tws-space-6);
}

.tws-split {
    display: grid;
    gap: var(--tws-space-8);
}

.tws-reading-width {
    max-width: var(--tws-container-reading);
}

/* 4. Components */
.tws-skip-link {
    position: fixed;
    top: var(--tws-space-3);
    left: var(--tws-space-3);
    z-index: var(--tws-layer-modal);
    padding: var(--tws-space-3) var(--tws-space-4);
    border-radius: var(--tws-radius-md);
    background: var(--tws-action);
    color: var(--tws-text-on-action);
    font-weight: 700;
    transform: translateY(-200%);
}

.tws-skip-link:focus {
    transform: translateY(0);
}

.tws-demo-nav {
    border-bottom: .0625rem solid var(--tws-border);
    background: var(--tws-bg-deep);
}

.tws-demo-nav__inner {
    display: flex;
    min-height: 4.5rem;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--tws-space-4);
    padding-block: var(--tws-space-3);
}

.tws-scope .tws-wordmark {
    color: var(--tws-brand);
    font-size: 1.25rem;
    font-weight: 700;
    text-decoration: none;
}

.tws-button {
    display: inline-flex;
    min-height: var(--tws-control-height);
    align-items: center;
    justify-content: center;
    padding: var(--tws-space-3) var(--tws-space-5);
    border: .0625rem solid transparent;
    border-radius: var(--tws-radius-md);
    font: inherit;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    transition: background-color var(--tws-duration-fast) var(--tws-ease), border-color var(--tws-duration-fast) var(--tws-ease), color var(--tws-duration-fast) var(--tws-ease), transform var(--tws-duration-fast) var(--tws-ease);
}

.tws-button:hover {
    text-decoration: none;
    transform: translateY(-.0625rem);
}

.tws-button:active {
    transform: translateY(0);
}

.tws-scope .tws-button--primary {
    background: var(--tws-action);
    color: var(--tws-text-on-action);
}

.tws-scope .tws-button--primary:hover {
    background: var(--tws-action-hover);
    color: var(--tws-text-on-action);
}

.tws-scope .tws-button--primary:active {
    background: var(--tws-action-active);
}

.tws-scope .tws-button--secondary {
    border-color: var(--tws-action);
    background: transparent;
    color: var(--tws-text);
}

.tws-scope .tws-button--secondary:hover {
    background: var(--tws-action-subtle);
    color: var(--tws-text);
}

.tws-button:disabled,
.tws-button[aria-disabled="true"] {
    border-color: var(--tws-border);
    background: var(--tws-surface-2);
    color: var(--tws-text-disabled);
    cursor: not-allowed;
    transform: none;
}

.tws-field {
    display: grid;
    gap: var(--tws-space-2);
}

.tws-field label,
.tws-field legend {
    color: var(--tws-text);
    font-weight: 600;
}

.tws-input,
.tws-select,
.tws-textarea {
    width: 100%;
    min-height: var(--tws-control-height);
    padding: var(--tws-space-3) var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
    color: var(--tws-text);
    font: inherit;
}

.tws-textarea {
    min-height: 7.5rem;
    resize: vertical;
}

.tws-input::placeholder,
.tws-textarea::placeholder {
    color: var(--tws-text-muted);
    opacity: 1;
}

.tws-input:hover,
.tws-select:hover,
.tws-textarea:hover {
    border-color: var(--tws-border-strong);
}

.tws-input[aria-invalid="true"],
.tws-select[aria-invalid="true"],
.tws-textarea[aria-invalid="true"] {
    border-color: var(--tws-danger);
}

.tws-field__help {
    margin: 0;
    color: var(--tws-text-muted);
    font-size: .875rem;
}

.tws-field__error {
    margin: 0;
    color: var(--tws-danger);
    font-size: .875rem;
    font-weight: 600;
}

.tws-choice {
    display: flex;
    min-height: 2.75rem;
    align-items: center;
    gap: var(--tws-space-3);
    color: var(--tws-text-body);
}

.tws-choice input {
    width: 1.25rem;
    height: 1.25rem;
    accent-color: var(--tws-action);
}

.tws-panel {
    min-width: 0;
    padding: var(--tws-space-5);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
}

.tws-panel--raised {
    box-shadow: var(--tws-shadow-sm);
}

.tws-alert {
    padding: var(--tws-space-4) var(--tws-space-5);
    border: .0625rem solid var(--tws-border-strong);
    border-left-width: .25rem;
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
}

.tws-alert p {
    margin-bottom: 0;
}

.tws-alert--success {
    border-left-color: var(--tws-success);
}

.tws-alert--warning {
    border-left-color: var(--tws-warning);
}

.tws-alert--danger {
    border-left-color: var(--tws-danger);
}

.tws-alert--info {
    border-left-color: var(--tws-info);
}

.tws-badge {
    display: inline-flex;
    min-height: 1.75rem;
    align-items: center;
    padding: var(--tws-space-1) var(--tws-space-3);
    border: .0625rem solid currentColor;
    border-radius: var(--tws-radius-pill);
    font-size: .75rem;
    font-weight: 700;
    line-height: 1.2;
}

.tws-badge--success {
    color: var(--tws-success);
}

.tws-badge--warning {
    color: var(--tws-warning);
}

.tws-badge--danger {
    color: var(--tws-danger);
}

.tws-badge--info {
    color: var(--tws-info);
}

.tws-table-wrap {
    max-width: 100%;
    overflow-x: auto;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
}

.tws-table {
    width: 100%;
    min-width: 40rem;
    border-collapse: collapse;
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

.tws-table caption {
    padding: var(--tws-space-4);
    color: var(--tws-text);
    font-weight: 700;
    text-align: left;
}

.tws-table th,
.tws-table td {
    min-height: 3.25rem;
    padding: var(--tws-space-3) var(--tws-space-4);
    border-bottom: .0625rem solid var(--tws-border);
    text-align: left;
}

.tws-table th {
    background: var(--tws-surface-2);
    color: var(--tws-text);
    font-weight: 600;
}

.tws-table tbody tr:last-child td {
    border-bottom: 0;
}

.tws-table a {
    white-space: nowrap;
}

.tws-demo-header {
    padding-block: var(--tws-space-16);
    border-bottom: .0625rem solid var(--tws-border);
}

.tws-demo-kicker {
    margin-bottom: var(--tws-space-3);
    color: var(--tws-brand);
    font-size: .875rem;
    font-weight: 700;
}

.tws-demo-footer {
    padding-block: var(--tws-space-8);
    border-top: .0625rem solid var(--tws-border);
    background: var(--tws-bg-deep);
    color: var(--tws-text-muted);
}

/* 5. Representative page compositions */
.tws-prototype-index {
    position: sticky;
    top: 0;
    z-index: var(--tws-layer-nav);
    border-bottom: .0625rem solid var(--tws-border);
    background: rgb(3 11 17 / 96%);
}

.tws-prototype-index__inner {
    display: flex;
    min-height: 3rem;
    flex-wrap: wrap;
    gap: var(--tws-space-4);
    align-items: center;
    padding-block: var(--tws-space-2);
}

.tws-prototype {
    padding-block: var(--tws-space-12);
    border-bottom: .0625rem solid var(--tws-border);
}

.tws-prototype__label {
    margin-bottom: var(--tws-space-4);
    color: var(--tws-brand);
    font-size: .875rem;
    font-weight: 700;
}

.tws-page-frame {
    overflow: hidden;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-bg);
    box-shadow: var(--tws-shadow-sm);
}

.tws-page-frame__bar {
    display: flex;
    min-height: 4rem;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--tws-space-3);
    padding: var(--tws-space-3) var(--tws-space-5);
    border-bottom: .0625rem solid var(--tws-border);
    background: var(--tws-bg-deep);
}

.tws-page-frame__content {
    padding: var(--tws-space-5);
}

.tws-page-frame__nav {
    display: flex;
    flex-wrap: wrap;
    gap: var(--tws-space-4);
}

.tws-hero {
    display: grid;
    gap: var(--tws-space-10);
    align-items: center;
    padding-block: var(--tws-space-12);
}

.tws-hero__title {
    max-width: 16ch;
}

.tws-service-visual {
    display: grid;
    min-height: 18rem;
    place-items: center;
    padding: var(--tws-space-6);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: linear-gradient(145deg, var(--tws-surface-2), var(--tws-bg-deep));
}

.tws-service-visual__list {
    width: min(100%, 22rem);
    margin: 0;
    padding: 0;
    list-style: none;
}

.tws-service-visual__list li {
    display: flex;
    justify-content: space-between;
    gap: var(--tws-space-4);
    padding-block: var(--tws-space-3);
    border-bottom: .0625rem solid var(--tws-border);
}

.tws-service-visual__list li:last-child {
    border-bottom: 0;
}

.tws-login-layout {
    display: grid;
    min-height: 34rem;
    align-items: center;
    gap: var(--tws-space-8);
}

.tws-login-layout__intro {
    max-width: 30rem;
}

.tws-summary-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
    gap: var(--tws-space-4);
}

.tws-summary {
    min-width: 0;
    padding: var(--tws-space-5);
    border-left: .25rem solid var(--tws-action);
    background: var(--tws-surface-1);
}

.tws-summary__value {
    display: block;
    color: var(--tws-text);
    font-size: 1.75rem;
    font-weight: 700;
}

.tws-summary__label {
    color: var(--tws-text-muted);
}

.tws-dashboard-grid {
    display: grid;
    gap: var(--tws-space-6);
}

.tws-checkout-grid {
    display: grid;
    gap: var(--tws-space-6);
}

.tws-order-lines {
    margin: 0;
    padding: 0;
    list-style: none;
}

.tws-order-lines li,
.tws-order-total {
    display: flex;
    justify-content: space-between;
    gap: var(--tws-space-4);
    padding-block: var(--tws-space-3);
    border-bottom: .0625rem solid var(--tws-border);
}

.tws-order-total {
    border-bottom: 0;
    color: var(--tws-text);
    font-size: 1.25rem;
    font-weight: 700;
}

/* 6. Responsive enhancements */
@media (min-width: 48rem) {
    .tws-section {
        padding-block: 4.5rem;
    }

    .tws-split {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        align-items: start;
    }

    .tws-panel {
        padding: var(--tws-space-6);
    }

    .tws-page-frame__content {
        padding: var(--tws-space-8);
    }

    .tws-prototype-index__inner {
        flex-wrap: nowrap;
        overflow-x: auto;
        white-space: nowrap;
    }

    .tws-hero,
    .tws-login-layout {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .tws-dashboard-grid {
        grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr);
    }

    .tws-checkout-grid {
        grid-template-columns: minmax(0, 1.35fr) minmax(18rem, .65fr);
        align-items: start;
    }
}

/* 6.2 WHMCS compatibility: inherited Standard Cart */
body.tws-shell #order-standard_cart {
    color: var(--tws-text-body);
    font-family: var(--tws-font-sans);
}

body.tws-shell #order-standard_cart .cart-body,
body.tws-shell #order-standard_cart .secondary-cart-body {
    min-width: 0;
}

body.tws-shell #order-standard_cart .header-lined h1,
body.tws-shell #order-standard_cart .header-lined h2,
body.tws-shell #order-standard_cart .header-lined h3,
body.tws-shell #order-standard_cart .product .product-pricing,
body.tws-shell #order-standard_cart .product .price,
body.tws-shell #order-standard_cart .order-summary,
body.tws-shell #order-standard_cart .order-summary h2,
body.tws-shell #order-standard_cart .order-summary h3 {
    color: var(--tws-text);
}

body.tws-shell #order-standard_cart .header-lined {
    margin-bottom: var(--tws-space-8);
    padding-bottom: var(--tws-space-5);
    border-bottom: .0625rem solid var(--tws-border);
}

body.tws-shell #order-standard_cart .panel,
body.tws-shell #order-standard_cart .card,
body.tws-shell #order-standard_cart .product,
body.tws-shell #order-standard_cart .view-cart-items,
body.tws-shell #order-standard_cart .order-summary,
body.tws-shell #order-standard_cart .domain-selection-options .option {
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
    box-shadow: none;
}

body.tws-shell #order-standard_cart .panel-heading,
body.tws-shell #order-standard_cart .card-header,
body.tws-shell #order-standard_cart .view-cart-items-header,
body.tws-shell #order-standard_cart .order-summary .summary-heading {
    border-color: var(--tws-border);
    background: var(--tws-surface-2);
    color: var(--tws-text);
}

body.tws-shell #order-standard_cart .panel-title,
body.tws-shell #order-standard_cart .product .product-title,
body.tws-shell #order-standard_cart .product [id$="-name"] {
    color: var(--tws-text);
    font-weight: 700;
}

body.tws-shell #order-standard_cart .product {
    min-width: 0;
    margin-bottom: var(--tws-space-5);
    padding: var(--tws-space-5);
}

body.tws-shell #order-standard_cart .product:hover {
    border-color: var(--tws-border-strong);
    background: var(--tws-surface-2);
}

body.tws-shell #order-standard_cart .product-desc,
body.tws-shell #order-standard_cart .package-details,
body.tws-shell #order-standard_cart .view-cart-empty,
body.tws-shell #order-standard_cart .text-muted {
    color: var(--tws-text-muted) !important;
}

body.tws-shell #order-standard_cart .form-control,
body.tws-shell #order-standard_cart .custom-select,
body.tws-shell #order-standard_cart .input-group-text,
body.tws-shell #order-standard_cart .btn-default {
    min-height: var(--tws-control-height);
    border-color: var(--tws-border);
    border-radius: var(--tws-radius-md);
    background-color: var(--tws-surface-1);
    color: var(--tws-text);
}

body.tws-shell #order-standard_cart .tws-checkout-label {
    display: block;
    margin-bottom: var(--tws-space-2);
    color: var(--tws-text-body);
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
}

body.tws-shell #order-standard_cart .tws-checkout-label + .field-icon {
    top: 2rem;
}

body.tws-shell #order-standard_cart .form-control:hover,
body.tws-shell #order-standard_cart .custom-select:hover,
body.tws-shell #order-standard_cart .btn-default:hover {
    border-color: var(--tws-border-strong);
}

body.tws-shell #order-standard_cart .form-control:focus,
body.tws-shell #order-standard_cart .custom-select:focus {
    border-color: var(--tws-action);
    box-shadow: 0 0 0 .1875rem var(--tws-focus);
}

body.tws-shell #order-standard_cart .btn-primary,
body.tws-shell #order-standard_cart .btn-success,
body.tws-shell #order-standard_cart .btn-order-now,
body.tws-shell #order-standard_cart .btn-checkout {
    min-height: var(--tws-control-height);
    border-color: var(--tws-action);
    border-radius: var(--tws-radius-md);
    background: var(--tws-action);
    color: var(--tws-text-on-action);
    font-weight: 700;
}

body.tws-shell #order-standard_cart .btn-primary:hover,
body.tws-shell #order-standard_cart .btn-success:hover,
body.tws-shell #order-standard_cart .btn-order-now:hover,
body.tws-shell #order-standard_cart .btn-checkout:hover {
    border-color: var(--tws-action-hover);
    background: var(--tws-action-hover);
    color: var(--tws-text-on-action);
}

body.tws-shell #order-standard_cart .btn-primary:active,
body.tws-shell #order-standard_cart .btn-success:active,
body.tws-shell #order-standard_cart .btn-order-now:active,
body.tws-shell #order-standard_cart .btn-checkout:active {
    border-color: var(--tws-action-active);
    background: var(--tws-action-active);
}

body.tws-shell #order-standard_cart .btn.disabled,
body.tws-shell #order-standard_cart .btn:disabled {
    border-color: var(--tws-border);
    background: var(--tws-surface-3);
    color: var(--tws-text-disabled);
    opacity: 1;
}

body.tws-shell #order-standard_cart .btn-link,
body.tws-shell #order-standard_cart a:not(.btn) {
    color: var(--tws-action);
}

body.tws-shell #order-standard_cart .domain-selection-options {
    display: grid;
    gap: var(--tws-space-3);
}

body.tws-shell #order-standard_cart .domain-selection-options .option {
    margin: 0;
    padding: var(--tws-space-5);
}

body.tws-shell #order-standard_cart .domain-selection-options .option > label,
body.tws-shell #order-standard_cart #frmDomainChecker .input-group > label {
    display: flex;
    min-height: var(--tws-control-height);
    align-items: center;
    gap: var(--tws-space-2);
    margin-bottom: var(--tws-space-3);
    cursor: pointer;
}

body.tws-shell #order-standard_cart #frmDomainChecker .input-group > label {
    margin-bottom: 0;
}

body.tws-shell #order-standard_cart #frmDomainChecker .input-group > label > input[type="checkbox"] {
    margin: 0;
}

body.tws-shell #order-standard_cart .domain-selection-options .option:hover {
    border-color: var(--tws-action);
}

body.tws-shell #order-standard_cart .view-cart-items-header,
body.tws-shell #order-standard_cart .view-cart-items .item,
body.tws-shell #order-standard_cart .order-summary .summary-container,
body.tws-shell #order-standard_cart .order-summary .subtotal,
body.tws-shell #order-standard_cart .order-summary .total-due-today {
    border-color: var(--tws-border);
}

body.tws-shell #order-standard_cart .order-summary .total-due-today {
    background: var(--tws-surface-2);
    color: var(--tws-text);
}

@media (min-width: 48rem) {
    body.tws-shell #order-standard_cart .product {
        padding: var(--tws-space-6);
    }
}

/* 6.3 Public domain registration */
.tws-template-domainregister #order-standard_cart .cart-body > p:first-of-type {
    max-width: 44rem;
    margin-bottom: var(--tws-space-6);
    color: var(--tws-text-body);
}

.tws-template-domainregister #order-standard_cart .domain-checker-container {
    max-width: 50rem;
    margin: 0 auto var(--tws-space-8);
    padding: var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1) !important;
    box-shadow: none;
}

.tws-template-domainregister #order-standard_cart .domain-checker-bg {
    min-height: 0;
    padding: 0;
    background: none !important;
}

.tws-template-domainregister #order-standard_cart #frmDomainChecker .row {
    margin-inline: 0;
}

.tws-template-domainregister #order-standard_cart #frmDomainChecker .row > [class*="col-"] {
    max-width: 100%;
    flex: 0 0 100%;
    margin-left: 0 !important;
    padding-inline: 0;
}

.tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box {
    position: static;
    width: 100%;
    height: auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-3);
    padding: 0;
    border: 0;
    background: none;
}

.tws-template-domainregister #order-standard_cart #message {
    position: static;
    width: 100%;
    min-height: 9rem;
    padding: var(--tws-space-4);
    border: .0625rem solid var(--tws-border-strong);
    border-radius: var(--tws-radius-md);
    background: var(--tws-bg-deep);
    color: var(--tws-text);
    font-size: 1rem;
    line-height: 1.5;
    resize: vertical;
}

.tws-template-domainregister #order-standard_cart #message::placeholder {
    color: var(--tws-text-muted);
    opacity: 1;
}

.tws-template-domainregister #order-standard_cart #message:hover {
    border-color: var(--tws-border-strong);
}

.tws-template-domainregister #order-standard_cart #message:focus {
    border-color: var(--tws-action);
    outline: 0;
    box-shadow: 0 0 0 .1875rem var(--tws-focus);
}

.tws-template-domainregister #order-standard_cart #btnCheckAvailability {
    position: static !important;
    inset: auto !important;
    width: 100%;
    min-width: 0;
    height: auto;
    margin: 0;
}

.tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box > .btn-group {
    width: 100%;
    display: block;
}

.tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box > .btn-group > .btn {
    width: 100%;
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--tws-space-2);
    margin: 0;
    padding-inline: var(--tws-space-4);
    border-color: var(--tws-border-strong);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
    color: var(--tws-text);
    text-align: left;
}

.tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box > label {
    width: 100%;
    margin: 0;
    padding-inline: var(--tws-space-2);
    color: var(--tws-text-body);
}

.tws-template-domainregister #order-standard_cart .domain-pricing {
    min-width: 0;
    margin-top: var(--tws-space-8);
}

.tws-template-domainregister #order-standard_cart .domain-pricing > h2 {
    margin-bottom: var(--tws-space-4);
    color: var(--tws-text);
    font-size: clamp(1.375rem, 5vw, 1.75rem);
    line-height: 1.25;
}

.tws-template-domainregister #order-standard_cart .tld-filters {
    display: flex;
    flex-wrap: wrap;
    gap: var(--tws-space-2);
    margin-bottom: var(--tws-space-5);
}

.tws-template-domainregister #order-standard_cart .tld-filters .badge {
    min-height: var(--tws-control-height);
    display: inline-flex;
    flex: 1 1 min(100%, 8rem);
    align-items: center;
    justify-content: center;
    padding: var(--tws-space-2) var(--tws-space-4);
    border: .0625rem solid var(--tws-border-strong);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
    font-size: .875rem;
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;
    white-space: normal;
}

.tws-template-domainregister #order-standard_cart .tld-filters .badge:hover,
.tws-template-domainregister #order-standard_cart .tld-filters .badge:focus,
.tws-template-domainregister #order-standard_cart .tld-filters .badge-success {
    border-color: var(--tws-action);
    background: var(--tws-surface-3);
    color: var(--tws-text);
}

.tws-template-domainregister #order-standard_cart .domain-pricing > .bg-white {
    overflow: hidden;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1) !important;
    color: var(--tws-text-body);
}

.tws-template-domainregister #order-standard_cart .tld-pricing-header > [class*="col-"],
.tws-template-domainregister #order-standard_cart .tld-pricing-header .row > [class*="col-"] {
    border-color: var(--tws-border) !important;
    background: var(--tws-surface-2) !important;
    color: var(--tws-text);
}

.tws-template-domainregister #order-standard_cart .tld-row {
    border-color: var(--tws-border);
    color: var(--tws-text-body);
}

.tws-template-domainregister #order-standard_cart .tld-row.highlighted {
    background: var(--tws-surface-2);
}

.tws-template-domainregister #order-standard_cart .tld-row .two-row-center {
    border-color: var(--tws-border);
    color: var(--tws-text);
}

.tws-template-domainregister #order-standard_cart .tld-row small {
    color: var(--tws-text-muted);
}

.tws-template-domainregister #order-standard_cart .domain-promo-box {
    border-color: var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

@media (min-width: 48rem) {
    .tws-template-domainregister #order-standard_cart .domain-checker-container {
        padding: var(--tws-space-8);
    }

    .tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box {
        grid-template-columns: minmax(9rem, 1fr) minmax(9rem, 1fr) auto minmax(8rem, auto);
        align-items: stretch;
    }

    .tws-template-domainregister #order-standard_cart #message {
        grid-column: 1 / -1;
    }

    .tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box > .btn-group:first-of-type {
        grid-column: 1;
        grid-row: 2;
    }

    .tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box > .btn-group:nth-of-type(2) {
        grid-column: 2;
        grid-row: 2;
    }

    .tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box > label {
        grid-column: 3;
        grid-row: 2;
    }

    .tws-template-domainregister #order-standard_cart #btnCheckAvailability {
        grid-column: 4;
        grid-row: 2;
    }

    .tws-template-domainregister #order-standard_cart .tld-filters .badge {
        flex: 0 1 auto;
    }
}

/* 7.1 Public domain pricing */
.tws-template-domain-pricing #main-body .domain-pricing {
    min-width: 0;
}

.tws-template-domain-pricing #main-body .featured-tlds-container {
    margin-bottom: var(--tws-space-8);
}

.tws-template-domain-pricing #main-body .featured-tld {
    height: 100%;
    overflow: hidden;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
}

.tws-template-domain-pricing #main-body .featured-tld .img-container {
    min-height: 5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--tws-space-4);
    background: var(--tws-surface-2);
}

.tws-template-domain-pricing #main-body .featured-tld .img-container img {
    max-width: 100%;
    height: auto;
}

.tws-template-domain-pricing #main-body .featured-tld .price {
    padding: var(--tws-space-4);
    color: var(--tws-text);
    font-weight: 700;
    text-align: center;
}

.tws-template-domain-pricing #main-body .currency-selector {
    min-height: var(--tws-control-height);
    margin-bottom: var(--tws-space-6);
}

.tws-template-domain-pricing #main-body .domain-pricing > h2 {
    clear: both;
    margin: 0 0 var(--tws-space-4);
    color: var(--tws-text);
    font-size: clamp(1.5rem, 5vw, 2rem);
    line-height: 1.2;
}

.tws-template-domain-pricing #main-body .tld-filters {
    display: flex;
    flex-wrap: wrap;
    gap: var(--tws-space-2);
    margin-bottom: var(--tws-space-6);
}

.tws-template-domain-pricing #main-body .tld-filters .badge {
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: var(--tws-space-2) var(--tws-space-4);
    border: .0625rem solid var(--tws-border-strong);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
    font-size: .875rem;
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;
    white-space: normal;
}

.tws-template-domain-pricing #main-body .tld-filters .badge:hover,
.tws-template-domain-pricing #main-body .tld-filters .badge:focus,
.tws-template-domain-pricing #main-body .tld-filters .badge-success {
    border-color: var(--tws-action);
    background: var(--tws-surface-3);
    color: var(--tws-text);
}

.tws-template-domain-pricing #main-body #tableDomainPricing_wrapper {
    min-width: 0;
}

.tws-template-domain-pricing #main-body #tableDomainPricing_wrapper :where(.dataTables_length, .dataTables_filter) label {
    color: var(--tws-text-body);
    font-weight: 600;
}

.tws-template-domain-pricing #main-body #tableDomainPricing_wrapper :where(select, input[type="search"]) {
    min-height: var(--tws-control-height);
    border-color: var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
    color: var(--tws-text);
}

.tws-template-domain-pricing #main-body #tableDomainPricing {
    margin-bottom: 0 !important;
}

.tws-template-domain-pricing #main-body #tableDomainPricing thead th {
    border-color: var(--tws-border);
    background: var(--tws-surface-2);
    color: var(--tws-text);
    vertical-align: middle;
}

.tws-template-domain-pricing #main-body #tableDomainPricing tbody td {
    border-color: var(--tws-border);
    color: var(--tws-text-body);
    vertical-align: middle;
}

.tws-template-domain-pricing #main-body #tableDomainPricing tbody td:first-child {
    color: var(--tws-text);
    font-weight: 700;
}

.tws-template-domain-pricing #main-body #tableDomainPricing tbody small {
    color: var(--tws-text-muted);
}

@media (max-width: 47.99rem) {
    .tws-template-domain-pricing #main-body .tld-filters .badge {
        flex: 1 1 min(100%, 8rem);
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing_wrapper :where(.row, [class*="col-"]) {
        min-width: 0;
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing_wrapper :where(.dataTables_length, .dataTables_filter) {
        width: 100%;
        margin-bottom: var(--tws-space-3);
        text-align: left;
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing_wrapper :where(.dataTables_length, .dataTables_filter) label {
        width: 100%;
        display: grid;
        gap: var(--tws-space-2);
        margin: 0;
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing_wrapper :where(select, input[type="search"]) {
        width: 100%;
        margin: 0;
    }

    .tws-template-domain-pricing #main-body .table-container {
        overflow: visible !important;
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing,
    .tws-template-domain-pricing #main-body #tableDomainPricing :where(tbody, tr, td) {
        width: 100% !important;
        min-width: 0;
        display: block;
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing thead {
        display: none;
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing tbody tr {
        overflow: hidden;
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-1);
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing tbody tr + tr {
        margin-top: var(--tws-space-3);
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing tbody td {
        display: grid;
        grid-template-columns: minmax(6.5rem, 42%) minmax(0, 1fr);
        gap: var(--tws-space-3);
        align-items: start;
        padding: var(--tws-space-3) var(--tws-space-4);
        border: 0;
        border-bottom: .0625rem solid var(--tws-border);
        text-align: left !important;
        overflow-wrap: anywhere;
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing tbody td:last-child {
        border-bottom: 0;
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing tbody td::before {
        content: attr(data-label);
        color: var(--tws-text-muted);
        font-size: .75rem;
        font-weight: 700;
        line-height: 1.5;
        text-transform: uppercase;
        letter-spacing: .03em;
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing .dataTables_empty {
        min-height: calc(var(--tws-control-height) * 2);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-6) var(--tws-space-4);
        text-align: center !important;
    }

    .tws-template-domain-pricing #main-body #tableDomainPricing .dataTables_empty::before {
        display: none;
    }
}

/* 8. Sprint 4: public homepage */
.tws-homepage-view .home-domain-search {
    border-top: .0625rem solid var(--tws-border);
    border-bottom: .0625rem solid var(--tws-border);
    background: var(--tws-surface-1) !important;
    color: var(--tws-text-body);
}

.tws-homepage-view .home-domain-search h2 {
    color: var(--tws-text);
}

.tws-homepage-view .home-domain-search .p-5 {
    padding: var(--tws-space-8) !important;
}

.tws-homepage-view .home-domain-search textarea,
.tws-homepage-view .home-domain-search .form-control,
.tws-homepage-view .home-domain-search .multiselect,
.tws-homepage-view .home-domain-search .multiselect-native-select .btn {
    border-color: var(--tws-border-strong);
    border-radius: var(--tws-radius-md);
    background: var(--tws-bg-deep);
    color: var(--tws-text);
}

.tws-homepage-view .home-domain-search label,
.tws-homepage-view .home-domain-search .btn-link {
    color: var(--tws-text-body);
}

.tws-homepage-view .home-domain-search .btn-primary {
    border-color: var(--tws-action);
    background: var(--tws-action);
    color: var(--tws-text-on-action);
}

.tws-homepage-view .home-domain-search .btn-success {
    border-color: var(--tws-border-strong);
    background: var(--tws-surface-3);
    color: var(--tws-text);
}

.tws-homepage-view .home-domain-search :where(button.multiselect.btn, .multiselect-native-select .btn, #btnDomainSearch, #btnDomainSearch2, #btnTransfer, #btnTransfer2, .btn-link) {
    display: inline-flex;
    min-height: var(--tws-control-height);
    align-items: center;
    justify-content: center;
}

.tws-homepage-view .home-domain-search .input-group > label {
    display: inline-flex;
    min-height: var(--tws-control-height);
    align-items: center;
    gap: var(--tws-space-2);
    margin-bottom: 0;
}

.tws-homepage-view .home-domain-search input[type="checkbox"] {
    margin: 0;
}

.tws-shell :where(a, button, input, select, textarea):focus-visible {
    outline: .1875rem solid var(--tws-focus);
    outline-offset: .125rem;
}

.tws-homepage {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-16);
    color: var(--tws-text-body);
}

.tws-homepage,
.tws-homepage * {
    box-sizing: border-box;
}

.tws-home-hero,
.tws-home-section {
    padding: var(--tws-space-8);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
}

.tws-home-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-8);
    background: linear-gradient(145deg, var(--tws-surface-2), var(--tws-bg-deep));
}

.tws-home-hero > *,
.tws-home-grid > * {
    min-width: 0;
}

.tws-homepage h1,
.tws-homepage h2,
.tws-homepage h3 {
    color: var(--tws-text);
}

.tws-homepage h1 {
    max-width: 16ch;
    font-size: clamp(2rem, 8vw, 3.75rem);
    line-height: 1.08;
    overflow-wrap: normal;
    word-break: normal;
}

.tws-home-lead {
    max-width: 58ch;
    font-size: 1.125rem;
}

.tws-home-eyebrow {
    color: var(--tws-brand);
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.tws-home-actions,
.tws-home-support__links {
    display: flex;
    flex-wrap: wrap;
    gap: var(--tws-space-3);
}

.tws-home-hero__summary,
.tws-home-card {
    padding: var(--tws-space-6);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-2);
}

.tws-home-summary__title {
    color: var(--tws-text);
    font-weight: 700;
}

.tws-home-hero__summary ul {
    display: grid;
    gap: var(--tws-space-4);
    margin: 0;
    padding: 0;
    list-style: none;
}

.tws-home-hero__summary li {
    display: flex;
    gap: var(--tws-space-3);
    align-items: center;
}

.tws-home-hero__summary i,
.tws-home-card__icon {
    color: var(--tws-action);
}

.tws-home-section__heading {
    margin-bottom: var(--tws-space-8);
}

.tws-home-grid {
    display: grid;
    gap: var(--tws-space-5);
}

.tws-home-card__icon {
    margin-bottom: var(--tws-space-4);
    font-size: 1.75rem;
}

.tws-home-card__link,
.tws-home-support__links a {
    color: var(--tws-action);
    font-weight: 700;
}

.tws-home-card__link {
    display: inline-flex;
    min-height: var(--tws-control-height);
    align-items: center;
}

.tws-home-support {
    display: grid;
    gap: var(--tws-space-6);
}

.tws-home-support__links a {
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
}

@media (max-width: 35.999rem) {
    .tws-homepage-view .home-domain-search .container {
        width: 100%;
        padding-inline: 0;
    }

    .tws-homepage-view .home-domain-search .p-5 {
        padding: var(--tws-space-5) !important;
    }

    .tws-homepage-view .home-domain-search .row.d-sm-none {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: var(--tws-space-2);
        margin-inline: 0;
    }

    .tws-homepage-view .home-domain-search .row.d-sm-none > .col-6 {
        max-width: none;
        padding-inline: 0;
    }
}

@media (min-width: 48rem) {
    .tws-home-grid {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
    }
}

@media (min-width: 62rem) {
    .tws-home-hero {
        grid-template-columns: minmax(0, 1.35fr) minmax(18rem, .65fr);
        align-items: center;
        padding: var(--tws-space-12);
    }

    .tws-home-support {
        grid-template-columns: minmax(0, 1fr) minmax(18rem, .8fr);
        align-items: center;
    }
}

/* Public Submit Ticket refinement 83 */
.tws-template-supportticketsubmit-stepone #main-body .primary-content > .card,
.tws-template-supportticketsubmit-steptwo #main-body .primary-content > form,
.tws-template-supportticketsubmit-confirm #main-body .primary-content > .card {
    width: 100%;
    max-width: var(--tws-container-main);
}

.tws-template-supportticketsubmit-steptwo #main-body form > .card {
    overflow: hidden;
    border-color: var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
}

.tws-template-supportticketsubmit-steptwo #main-body form > .card > .card-body {
    padding: var(--tws-space-5);
}

.tws-template-supportticketsubmit-steptwo #main-body form .card-title {
    margin: 0 0 var(--tws-space-6);
    padding-bottom: var(--tws-space-5);
    border-bottom: .0625rem solid var(--tws-border);
    color: var(--tws-text);
}

.tws-template-supportticketsubmit-steptwo #main-body form > .card > .card-body > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-5);
    margin-inline: 0;
    margin-bottom: var(--tws-space-5);
}

.tws-template-supportticketsubmit-steptwo #main-body form > .card > .card-body > .row > [class*="col-"] {
    width: 100%;
    max-width: none;
    padding-inline: 0;
}

.tws-template-supportticketsubmit-steptwo #main-body form .form-group {
    min-width: 0;
    margin-bottom: var(--tws-space-6);
}

.tws-template-supportticketsubmit-steptwo #main-body form > .card > .card-body > .row .form-group {
    margin-bottom: 0;
}

.tws-template-supportticketsubmit-steptwo #main-body form :where(.form-control, .custom-file, .input-group) {
    min-width: 0;
    max-width: none;
}

.tws-template-supportticketsubmit-steptwo #main-body .md-editor {
    min-width: 0;
    overflow: hidden;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
}

.tws-template-supportticketsubmit-steptwo #main-body .md-editor .md-header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--tws-space-1);
    margin: 0;
    padding: var(--tws-space-2);
    border: 0;
    border-bottom: .0625rem solid var(--tws-border);
    background: var(--tws-surface-2);
}

.tws-template-supportticketsubmit-steptwo #main-body .md-editor .md-header .btn-group {
    display: flex;
    margin: 0;
}

.tws-template-supportticketsubmit-steptwo #main-body .md-editor .md-header .btn {
    min-width: var(--tws-control-height);
    min-height: var(--tws-control-height);
    margin: 0;
    padding: var(--tws-space-2);
    border-color: var(--tws-border);
    border-radius: var(--tws-radius-sm);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

.tws-template-supportticketsubmit-steptwo #main-body .md-editor .md-header .btn:hover,
.tws-template-supportticketsubmit-steptwo #main-body .md-editor .md-header .btn:focus {
    border-color: var(--tws-action);
    background: var(--tws-action-subtle);
    color: var(--tws-text);
}

.tws-template-supportticketsubmit-steptwo #main-body .md-editor .md-header .btn-primary,
.tws-template-supportticketsubmit-steptwo #main-body .md-editor .md-header .btn.active {
    border-color: var(--tws-action);
    background: var(--tws-action);
    color: var(--tws-text-on-action);
}

.tws-template-supportticketsubmit-steptwo #main-body .md-editor .md-controls {
    margin-left: auto;
}

.tws-template-supportticketsubmit-steptwo #main-body .md-editor :where(.md-input, .md-preview) {
    min-height: 16rem;
    margin: 0;
    padding: var(--tws-space-4);
    border: 0;
    border-radius: 0;
    background: var(--tws-bg-deep);
    color: var(--tws-text-body);
}

.tws-template-supportticketsubmit-steptwo #main-body .md-editor .md-input:focus {
    position: relative;
    z-index: 1;
    outline: .1875rem solid var(--tws-focus);
    outline-offset: -.1875rem;
    box-shadow: none;
}

.tws-template-supportticketsubmit-steptwo #main-body .md-editor .md-footer {
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    padding: var(--tws-space-2) var(--tws-space-3);
    border: 0;
    border-top: .0625rem solid var(--tws-border);
    background: var(--tws-surface-2);
    color: var(--tws-text-muted);
}

.tws-template-supportticketsubmit-steptwo #main-body .attachment-group {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-2);
}

.tws-template-supportticketsubmit-steptwo #main-body .attachment-group > :where(.custom-file, .input-group-append),
.tws-template-supportticketsubmit-steptwo #main-body .attachment-group .btn {
    width: 100%;
}

.tws-template-supportticketsubmit-steptwo #main-body .file-upload,
.tws-template-supportticketsubmit-steptwo #main-body #fileUploadsContainer {
    display: grid;
    gap: var(--tws-space-2);
}

.tws-template-supportticketsubmit-steptwo #main-body form > .card > .card-body > .margin-bottom {
    margin: 0 0 var(--tws-space-6) !important;
    padding: var(--tws-space-5);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-bg-deep);
}

.tws-template-supportticketsubmit-steptwo #main-body #default-captcha-domainchecker {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-4);
    margin: 0;
    padding: 0;
}

.tws-template-supportticketsubmit-steptwo #main-body #default-captcha-domainchecker > :where(p, .col-6) {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}

.tws-template-supportticketsubmit-steptwo #main-body #default-captcha-domainchecker .captchaimage {
    display: flex;
    align-items: center;
    justify-content: center;
}

.tws-template-supportticketsubmit-steptwo #main-body #default-captcha-domainchecker .captchaimage img {
    max-width: 100%;
    height: auto;
}

.tws-template-supportticketsubmit-steptwo #main-body form > .card > .card-body > p.text-center {
    display: flex;
    flex-direction: column;
    gap: var(--tws-space-3);
    margin: 0;
}

.tws-template-supportticketsubmit-steptwo #main-body form > .card > .card-body > p.text-center .btn {
    width: 100%;
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
}

.tws-template-supportticketsubmit-steptwo #main-body #autoAnswerSuggestions:not(.w-hidden) {
    margin-bottom: var(--tws-space-6);
    padding: var(--tws-space-5);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
}

@media (min-width: 36rem) {
    .tws-template-supportticketsubmit-steptwo #main-body form > .card > .card-body {
        padding: var(--tws-space-6);
    }

    .tws-template-supportticketsubmit-steptwo #main-body .attachment-group {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .tws-template-supportticketsubmit-steptwo #main-body .attachment-group > .input-group-append,
    .tws-template-supportticketsubmit-steptwo #main-body .attachment-group .btn {
        width: auto;
    }

    .tws-template-supportticketsubmit-steptwo #main-body #default-captcha-domainchecker {
        grid-template-columns: minmax(8rem, 10rem) minmax(12rem, 18rem);
        align-items: center;
        justify-content: center;
    }

    .tws-template-supportticketsubmit-steptwo #main-body #default-captcha-domainchecker > p {
        grid-column: 1 / -1;
    }

    .tws-template-supportticketsubmit-steptwo #main-body form > .card > .card-body > p.text-center {
        flex-direction: row;
        justify-content: flex-end;
    }

    .tws-template-supportticketsubmit-steptwo #main-body form > .card > .card-body > p.text-center .btn {
        width: auto;
        min-width: 10rem;
    }
}

@media (min-width: 48rem) {
    .tws-template-supportticketsubmit-steptwo #main-body form > .card > .card-body > .row {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
    }
}

/* 19.1 Guest checkout flow refinement 78 */
.tws-template-viewcart #order-standard_cart .cart-body:has(#frmCheckout) {
    width: 100%;
    max-width: none;
    min-width: 0;
    padding: 0;
    background: transparent !important;
}

.tws-template-viewcart #order-standard_cart .cart-body:has(#frmCheckout) > .header-lined {
    margin-bottom: var(--tws-space-4);
}

.tws-template-viewcart #order-standard_cart .already-registered {
    display: grid;
    gap: var(--tws-space-4);
    margin-bottom: var(--tws-space-6);
    padding: var(--tws-space-5);
    border: .0625rem solid var(--tws-border);
    border-left: .25rem solid var(--tws-action);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

.tws-template-viewcart #order-standard_cart .already-registered > :where(.pull-right, .float-right) {
    width: 100%;
    float: none !important;
    order: 2;
}

.tws-template-viewcart #order-standard_cart .already-registered > p {
    margin: 0;
    color: var(--tws-text-body);
    font-size: 1rem;
    line-height: 1.55;
}

.tws-template-viewcart #order-standard_cart :where(#btnAlreadyRegistered, #btnNewUserSignup) {
    width: 100%;
    min-height: var(--tws-control-height);
    margin: 0;
    align-items: center;
    justify-content: center;
    padding: var(--tws-space-3) var(--tws-space-5);
    border: .0625rem solid var(--tws-action) !important;
    background: transparent !important;
    color: var(--tws-text) !important;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.25;
}

.tws-template-viewcart #order-standard_cart :where(#btnAlreadyRegistered, #btnNewUserSignup):hover {
    background: var(--tws-action-subtle) !important;
    color: var(--tws-text) !important;
}

.tws-template-viewcart #frmCheckout {
    min-width: 0;
}

.tws-template-viewcart #frmCheckout .sub-heading {
    height: auto;
    margin: var(--tws-space-8) 0 var(--tws-space-4);
    padding: 0 0 var(--tws-space-3);
    border: 0;
    border-bottom: .0625rem solid var(--tws-border);
    text-align: left;
}

.tws-template-viewcart #frmCheckout .sub-heading:first-child {
    margin-top: 0;
}

.tws-template-viewcart #frmCheckout .sub-heading span {
    position: static;
    display: block;
    padding: 0;
    background: transparent !important;
    color: var(--tws-text);
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.3;
}

.tws-template-viewcart #frmCheckout .sub-heading span small {
    display: inline-block;
    margin-top: var(--tws-space-1);
    color: var(--tws-text-muted);
    font-size: .875rem;
    font-style: normal;
    font-weight: 400;
}

.tws-template-viewcart #frmCheckout :where(#containerExistingUserSignin, #containerNewUserSignup, #containerNewUserSecurity) {
    min-width: 0;
}

.tws-template-viewcart #frmCheckout :where(#containerExistingUserSignin, #containerNewUserSignup, #containerNewUserSecurity) > .row,
.tws-template-viewcart #frmCheckout > .row {
    min-width: 0;
}

.tws-template-viewcart #frmCheckout :where(.form-group, .field-container) {
    min-width: 0;
}

.tws-template-viewcart #frmCheckout :where(.field, .form-control, .custom-select) {
    width: 100%;
    min-height: var(--tws-control-height);
    border-color: var(--tws-border);
    background: var(--tws-surface-1);
    color: var(--tws-text);
}

.tws-template-viewcart #frmCheckout textarea.form-control {
    min-height: 7rem;
    padding: var(--tws-space-3) var(--tws-space-4);
    resize: vertical;
}

.tws-template-viewcart #frmCheckout :where(.field, .form-control, .custom-select):hover {
    border-color: var(--tws-border-strong);
}

.tws-template-viewcart #frmCheckout :where(.field, .form-control, .custom-select):focus {
    border-color: var(--tws-action);
    box-shadow: 0 0 0 .1875rem var(--tws-focus);
}

.tws-template-viewcart #frmCheckout .prepend-icon .field-icon {
    height: var(--tws-control-height);
    line-height: var(--tws-control-height);
}

.tws-template-viewcart #frmCheckout .tws-checkout-label {
    color: var(--tws-text-body);
}

.tws-template-viewcart #frmCheckout :where(#containerExistingUserSignin, #containerNewUserSecurity, .field-container, #paymentGatewaysContainer, #paymentGatewayInput, .cc-input-container, .apply-credit-container, .marketing-email-optin) {
    padding: var(--tws-space-5);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

.tws-template-viewcart #frmCheckout #containerExistingUserSignin {
    margin-bottom: var(--tws-space-6);
}

.tws-template-viewcart #frmCheckout #containerExistingUserSignin > .sub-heading,
.tws-template-viewcart #frmCheckout #containerNewUserSecurity > .sub-heading {
    margin-top: 0;
}

.tws-template-viewcart #frmCheckout #containerExistingUserSignin > .text-center .btn,
.tws-template-viewcart #frmCheckout .generate-password {
    min-height: var(--tws-control-height);
}

.tws-template-viewcart #frmCheckout #totalDueToday {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: center;
    gap: var(--tws-space-2);
    margin: 0 0 var(--tws-space-4);
    padding: var(--tws-space-5);
    border: .0625rem solid var(--tws-border-strong);
    border-left: .25rem solid var(--tws-action);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-2);
    color: var(--tws-text-body);
    font-size: 1rem;
}

.tws-template-viewcart #frmCheckout #totalCartPrice {
    color: var(--tws-text);
    font-size: clamp(1.75rem, 5vw, 2.25rem);
    line-height: 1.15;
}

.tws-template-viewcart #frmCheckout :where(.apply-credit-container, #paymentGatewaysContainer, #paymentGatewayInput, .cc-input-container) {
    margin: 0 0 var(--tws-space-4);
}

.tws-template-viewcart #frmCheckout #paymentGatewaysContainer > p {
    margin-bottom: var(--tws-space-3);
    color: var(--tws-text-body) !important;
    font-size: 1rem;
}

.tws-template-viewcart #frmCheckout #paymentGatewaysContainer > .text-center {
    display: grid;
    gap: var(--tws-space-3);
    text-align: left !important;
}

.tws-template-viewcart #frmCheckout #paymentGatewaysContainer .radio-inline,
.tws-template-viewcart #frmCheckout .apply-credit-container .radio {
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    gap: var(--tws-space-3);
    margin: 0;
    padding: var(--tws-space-3) var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
    color: var(--tws-text-body);
    cursor: pointer;
}

.tws-template-viewcart #frmCheckout #paymentGatewaysContainer .radio-inline:has(input:checked),
.tws-template-viewcart #frmCheckout .apply-credit-container .radio:has(input:checked) {
    border-color: var(--tws-action);
    box-shadow: inset .1875rem 0 0 var(--tws-action);
    color: var(--tws-text);
}

.tws-template-viewcart #frmCheckout :where(input[type="radio"], input[type="checkbox"]) {
    flex: 0 0 auto;
    accent-color: var(--tws-action);
}

.tws-template-viewcart #frmCheckout .marketing-email-optin {
    margin: var(--tws-space-6) 0;
}

.tws-template-viewcart #frmCheckout .marketing-email-optin h4 {
    margin: 0 0 var(--tws-space-2);
    color: var(--tws-text);
    font-size: 1.125rem;
}

.tws-template-viewcart #frmCheckout .marketing-email-optin p {
    margin-bottom: var(--tws-space-3);
    color: var(--tws-text-body);
}

.tws-template-viewcart #frmCheckout .marketing-email-optin input[type="checkbox"] {
    width: 1.5rem;
    height: 1.5rem;
    margin: 0;
}

.tws-template-viewcart #frmCheckout > .text-center:last-of-type {
    margin-top: var(--tws-space-6);
    padding: var(--tws-space-5);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-2);
}

.tws-template-viewcart #frmCheckout > .text-center:last-of-type > p {
    margin: 0 0 var(--tws-space-4);
    text-align: left;
}

.tws-template-viewcart #frmCheckout > .text-center:last-of-type .checkbox-inline {
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    gap: var(--tws-space-3);
    margin: 0;
    color: var(--tws-text-body);
    font-size: 1rem;
    line-height: 1.5;
    text-align: left;
}

.tws-template-viewcart #frmCheckout #btnCompleteOrder {
    width: 100%;
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--tws-space-2);
    margin: 0;
    padding: var(--tws-space-3) var(--tws-space-6);
    font-size: 1rem;
}

.tws-template-viewcart #order-standard_cart .checkout-security-msg {
    display: flex;
    align-items: flex-start;
    gap: var(--tws-space-3);
    margin: var(--tws-space-4) 0 0;
    padding: var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
    font-size: .875rem;
    line-height: 1.55;
}

.tws-template-viewcart #order-standard_cart .checkout-security-msg i {
    flex: 0 0 auto;
    float: none;
    margin: .15rem 0 0;
    color: var(--tws-action);
    font-size: 1.25rem;
}

@media (min-width: 36rem) {
    .tws-template-viewcart #order-standard_cart .already-registered {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
    }

    .tws-template-viewcart #order-standard_cart .already-registered > :where(.pull-right, .float-right) {
        width: auto;
    }

    .tws-template-viewcart #order-standard_cart :where(#btnAlreadyRegistered, #btnNewUserSignup) {
        width: auto;
        min-width: 10.5rem;
    }
}

@media (min-width: 48rem) {
    .tws-template-viewcart #frmCheckout :where(#containerExistingUserSignin, #containerNewUserSecurity, .field-container, #paymentGatewaysContainer, #paymentGatewayInput, .cc-input-container, .apply-credit-container, .marketing-email-optin),
    .tws-template-viewcart #frmCheckout > .text-center:last-of-type {
        padding: var(--tws-space-6);
    }

    .tws-template-viewcart #frmCheckout #paymentGatewaysContainer > .text-center {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
    }

    .tws-template-viewcart #frmCheckout #btnCompleteOrder {
        width: auto;
        min-width: 14rem;
    }
}

@media (min-width: 75rem) {
    .tws-section {
        padding-block: var(--tws-space-24);
    }
}

@media (prefers-reduced-motion: reduce) {
    .tws-scope *,
    .tws-scope *::before,
    .tws-scope *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}

/* 7. Sprint 3: inherited Twenty-One global shell */
.tws-shell {
    min-height: 100vh;
}

body.tws-shell.primary-bg-color {
    background: var(--tws-bg);
}

body.tws-shell header.header,
body.tws-shell footer.footer,
body.tws-shell header.header .main-navbar-wrapper,
body.tws-shell .master-breadcrumb {
    border-color: var(--tws-border);
    background: var(--tws-bg-deep);
}

.tws-shell .navbar {
    padding-block: var(--tws-space-3);
    padding-inline: 0;
}

.tws-shell .header > .topbar > .container,
.tws-shell .header > .container,
.tws-shell .navbar .container,
.tws-shell .master-breadcrumb .container,
.tws-shell #main-body > .container,
.tws-shell .footer .container {
    width: min(calc(100% - var(--tws-shell-gutter-inline) - var(--tws-shell-gutter-inline)), var(--tws-container-main));
    max-width: none;
    padding-inline: 0;
}

@media (max-width: 35.999rem) {
    body.tws-shell #main-body .row {
        margin-inline: 0;
    }

    body.tws-shell #main-body .row > [class*="col-"] {
        padding-inline: 0;
    }
}

body.tws-shell header.header .navbar-brand,
body.tws-shell header.header .navbar-brand:hover,
body.tws-shell header.header .navbar-brand:focus {
    color: var(--tws-brand);
    font-weight: 700;
    text-decoration: none;
}

.tws-shell .logo-img {
    max-height: var(--tws-control-height);
    width: auto;
}

body.tws-shell header.header .navbar-nav .nav-link,
.tws-shell .footer .nav-link,
.tws-shell .master-breadcrumb a {
    color: var(--tws-text-body);
    text-decoration: none;
}

body.tws-shell header.header .navbar a:not(.navbar-brand) {
    color: var(--tws-text-body);
}

body.tws-shell header.header .navbar-nav .nav-link:hover,
body.tws-shell header.header .navbar-nav .nav-link:focus,
.tws-shell .footer .nav-link:hover,
.tws-shell .footer .nav-link:focus,
.tws-shell .master-breadcrumb a:hover,
.tws-shell .master-breadcrumb a:focus {
    color: var(--tws-action);
    text-decoration: underline;
}

body.tws-shell header.header .navbar a:not(.navbar-brand):hover,
body.tws-shell header.header .navbar a:not(.navbar-brand):focus {
    color: var(--tws-action);
}

body.tws-shell header.header .toolbar .btn,
body.tws-shell header.header .topbar .btn,
body.tws-shell header.header .navbar-toggler,
body.tws-shell header.header .navbar .form-control,
body.tws-shell header.header .navbar .input-group-text,
body.tws-shell header.header .navbar .search .btn {
    min-height: var(--tws-control-height);
    border-color: var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
    color: var(--tws-text);
}

body.tws-shell header.header .toolbar .btn,
body.tws-shell header.header .topbar .btn,
body.tws-shell header.header .navbar-toggler {
    min-width: var(--tws-control-height);
}

body.tws-shell header.header .toolbar .btn:hover,
body.tws-shell header.header .toolbar .btn:focus,
body.tws-shell header.header .topbar .btn:hover,
body.tws-shell header.header .topbar .btn:focus,
body.tws-shell header.header .navbar-toggler:hover,
body.tws-shell header.header .navbar-toggler:focus,
body.tws-shell header.header .navbar .search .btn:hover,
body.tws-shell header.header .navbar .search .btn:focus {
    border-color: var(--tws-action);
    background: var(--tws-action-subtle);
    color: var(--tws-text);
}

body.tws-shell header.header .navbar .search .btn {
    min-width: var(--tws-control-height);
    border-radius: var(--tws-radius-md) 0 0 var(--tws-radius-md);
    color: var(--tws-action);
}

body.tws-shell header.header .navbar .search .form-control {
    border-left: 0;
    border-radius: 0 var(--tws-radius-md) var(--tws-radius-md) 0;
}

body.tws-shell header.header .navbar .search .form-control::placeholder {
    color: var(--tws-text-muted);
    opacity: 1;
}

.tws-shell .cart-btn .badge,
.tws-shell .badge-info {
    background: var(--tws-action);
    color: var(--tws-text-on-action);
}

body.tws-shell header.header .topbar {
    border-bottom: .0625rem solid var(--tws-border);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

.tws-shell .main-navbar-wrapper {
    border-top: .0625rem solid var(--tws-border);
    border-bottom: .0625rem solid var(--tws-border);
}

.tws-shell .main-navbar-wrapper .nav-link {
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
}

.tws-shell .main-navbar-wrapper .navbar-nav > li > a {
    display: inline-flex;
    min-height: var(--tws-control-height);
    align-items: center;
    border-radius: var(--tws-radius-md);
    color: var(--tws-text-body);
    font-weight: 600;
    text-decoration: none;
}

.tws-shell .main-navbar-wrapper .navbar-nav > li > a:hover,
.tws-shell .main-navbar-wrapper .navbar-nav > li > a:focus,
.tws-shell .main-navbar-wrapper .navbar-nav > li.active > a {
    color: var(--tws-action);
}

@media (max-width: 74.999rem) {
    .tws-shell .main-navbar-wrapper {
        padding-block: 0;
    }

    .tws-shell .main-navbar-wrapper .navbar-collapse {
        padding-block: var(--tws-space-3);
    }

    .tws-shell .main-navbar-wrapper .navbar-nav > li > a {
        width: 100%;
        padding: var(--tws-space-3) var(--tws-space-4) !important;
    }

    .tws-shell .main-navbar-wrapper .dropdown-menu {
        margin-block: var(--tws-space-1) var(--tws-space-3);
        border-color: var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-1);
    }

    .tws-shell .main-navbar-wrapper .dropdown-item,
    .tws-shell .main-navbar-wrapper .dropdown-item > a {
        color: var(--tws-text-body);
    }
}

.tws-shell .master-breadcrumb {
    padding-block: var(--tws-space-3);
}

.tws-shell .master-breadcrumb .breadcrumb {
    margin-bottom: 0;
    padding: 0;
    border-radius: 0;
    background: transparent;
}

.tws-shell .master-breadcrumb .breadcrumb-item.active,
.tws-shell .master-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    color: var(--tws-text-muted);
}

.tws-shell #main-body {
    padding-block: var(--tws-space-8);
}

.tws-shell .footer {
    margin-top: var(--tws-space-12);
    padding-block: var(--tws-space-8);
    border-top: .0625rem solid var(--tws-border);
    color: var(--tws-text-muted);
}

.tws-shell .footer .copyright {
    margin-bottom: 0;
    color: var(--tws-text-muted);
}

.tws-shell .footer a {
    color: var(--tws-text-body);
}

body.tws-shell footer.footer .nav {
    gap: var(--tws-space-2);
}

body.tws-shell footer.footer .nav-link,
body.tws-shell footer.footer .btn {
    display: inline-flex;
    min-height: var(--tws-control-height);
    align-items: center;
    justify-content: center;
    border-radius: var(--tws-radius-md);
}

body.tws-shell footer.footer .nav-link {
    border: .0625rem solid transparent;
}

body.tws-shell footer.footer .btn {
    padding-inline: var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

body.tws-shell footer.footer .nav-link:hover,
body.tws-shell footer.footer .nav-link:focus,
body.tws-shell footer.footer .btn:hover,
body.tws-shell footer.footer .btn:focus {
    border-color: var(--tws-action);
    background: var(--tws-action-subtle);
    color: var(--tws-action);
}

body.tws-shell footer.footer .nav-link:active,
body.tws-shell footer.footer .btn:active {
    border-color: var(--tws-action-active);
    background: var(--tws-surface-3);
    color: var(--tws-action-hover);
}

body.tws-shell .modal-localisation .modal-content {
    overflow: hidden;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
    box-shadow: var(--tws-shadow-sm);
}

body.tws-shell .modal-localisation .modal-body {
    max-height: calc(100vh - var(--tws-space-32));
    overflow-y: auto;
    padding: var(--tws-space-5);
}

body.tws-shell .modal-localisation .close {
    display: inline-flex;
    min-width: var(--tws-control-height);
    min-height: var(--tws-control-height);
    align-items: center;
    justify-content: center;
    border-radius: var(--tws-radius-md);
    color: var(--tws-text);
    text-shadow: none;
    opacity: 1;
}

body.tws-shell .modal-localisation .close:hover,
body.tws-shell .modal-localisation .close:focus {
    background: var(--tws-action-subtle);
    color: var(--tws-action);
}

body.tws-shell .modal-localisation .h5 {
    margin: 0;
    color: var(--tws-text);
}

body.tws-shell .modal-localisation .item-selector {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-2);
    margin-inline: 0;
}

body.tws-shell .modal-localisation .item-selector > [class*="col-"] {
    width: 100%;
    max-width: none;
    padding: 0;
}

body.tws-shell .modal-localisation .item-selector .item {
    display: flex;
    min-height: var(--tws-control-height);
    align-items: center;
    justify-content: center;
    padding: var(--tws-space-3) var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
    color: var(--tws-text-body);
    text-align: center;
    text-decoration: none;
    overflow-wrap: anywhere;
}

body.tws-shell .modal-localisation .item-selector .item:hover,
body.tws-shell .modal-localisation .item-selector .item:focus {
    border-color: var(--tws-action);
    background: var(--tws-action-subtle);
    color: var(--tws-text);
}

body.tws-shell .modal-localisation .item-selector .item.active {
    border-color: var(--tws-action);
    background: var(--tws-action-subtle);
    color: var(--tws-text);
    font-weight: 700;
}

body.tws-shell .modal-localisation .modal-footer {
    padding: var(--tws-space-4) var(--tws-space-5);
    border-color: var(--tws-border);
    background: var(--tws-surface-2);
}

body.tws-shell .modal-localisation .modal-footer .btn[type="submit"] {
    min-height: var(--tws-control-height);
    padding-inline: var(--tws-space-5);
    border: .0625rem solid var(--tws-action);
    border-radius: var(--tws-radius-md);
    background: var(--tws-action);
    color: var(--tws-text-on-action);
    font-weight: 700;
}

body.tws-shell .modal-localisation .modal-footer .btn[type="submit"]:hover,
body.tws-shell .modal-localisation .modal-footer .btn[type="submit"]:focus {
    border-color: var(--tws-action-hover);
    background: var(--tws-action-hover);
    color: var(--tws-text-on-action);
}

body.tws-shell .modal-localisation .modal-footer .btn[type="submit"]:active {
    border-color: var(--tws-action-active);
    background: var(--tws-action-active);
}

@media (min-width: 36rem) {
    body.tws-shell .modal-localisation .item-selector {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 48rem) {
    body.tws-shell .modal-localisation .modal-body {
        padding: var(--tws-space-6);
    }

    body.tws-shell .modal-localisation .item-selector {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* 9. Sprint 5-6: inherited authentication and client-interface foundation */
body.tws-shell:not(.tws-homepage-view) #main-body {
    color: var(--tws-text-body);
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(h1, h2, h3, h4, h5, h6),
body.tws-shell:not(.tws-homepage-view) #main-body :where(.card-title, .panel-title) {
    color: var(--tws-text);
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.text-muted, small) {
    color: var(--tws-text-muted) !important;
}

body.tws-shell:not(.tws-homepage-view) #main-body a:not(.btn) {
    color: var(--tws-action);
    text-decoration-thickness: .0625rem;
    text-underline-offset: .2em;
}

body.tws-shell:not(.tws-homepage-view) #main-body a:not(.btn):hover {
    color: var(--tws-action-hover);
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.card, .panel) {
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
    box-shadow: none;
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.card-header, .panel-heading) {
    padding: var(--tws-space-5) var(--tws-space-5);
    border-color: var(--tws-border);
    border-radius: calc(var(--tws-radius-lg) - .0625rem) calc(var(--tws-radius-lg) - .0625rem) 0 0;
    background: var(--tws-surface-2);
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.card-body, .panel-body) {
    padding: var(--tws-space-5);
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.card-footer, .panel-footer) {
    padding: var(--tws-space-4) var(--tws-space-5);
    border-color: var(--tws-border);
    border-radius: 0 0 calc(var(--tws-radius-lg) - .0625rem) calc(var(--tws-radius-lg) - .0625rem);
    background: var(--tws-bg-deep);
    color: var(--tws-text-muted);
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.form-control, .custom-select, .input-group-text) {
    min-height: var(--tws-control-height);
    border-color: var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
    color: var(--tws-text);
}

body.tws-shell:not(.tws-homepage-view) #main-body .input-group > :not(:first-child) :where(.form-control, .input-group-text),
body.tws-shell:not(.tws-homepage-view) #main-body .input-group > :not(:first-child).form-control,
body.tws-shell:not(.tws-homepage-view) #main-body .input-group > :not(:first-child).input-group-text {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

body.tws-shell:not(.tws-homepage-view) #main-body .input-group > :not(:last-child) :where(.form-control, .input-group-text),
body.tws-shell:not(.tws-homepage-view) #main-body .input-group > :not(:last-child).form-control,
body.tws-shell:not(.tws-homepage-view) #main-body .input-group > :not(:last-child).input-group-text {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.form-control, .custom-select)::placeholder {
    color: var(--tws-text-disabled);
    opacity: 1;
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.form-control, .custom-select):hover {
    border-color: var(--tws-border-strong);
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.form-control, .custom-select):focus {
    border-color: var(--tws-action);
    background: var(--tws-surface-1);
    color: var(--tws-text);
    box-shadow: 0 0 0 .1875rem rgb(255 154 98 / 24%);
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.form-control, .custom-select):-webkit-autofill,
body.tws-shell:not(.tws-homepage-view) #main-body :where(.form-control, .custom-select):-webkit-autofill:hover,
body.tws-shell:not(.tws-homepage-view) #main-body :where(.form-control, .custom-select):-webkit-autofill:focus {
    border-color: var(--tws-border-strong);
    -webkit-text-fill-color: var(--tws-text);
    caret-color: var(--tws-text);
    box-shadow: 0 0 0 62.5rem var(--tws-surface-1) inset;
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.form-control-label, .control-label, label) {
    color: var(--tws-text-body);
    font-weight: 600;
}

body.tws-shell:not(.tws-homepage-view) #main-body .btn {
    min-height: var(--tws-control-height);
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.btn-primary, .btn-success) {
    min-height: var(--tws-control-height);
    padding-inline: var(--tws-space-5);
    border-color: var(--tws-action);
    border-radius: var(--tws-radius-md);
    background: var(--tws-action);
    color: var(--tws-text-on-action);
    font-weight: 700;
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.btn-primary, .btn-success):hover {
    border-color: var(--tws-action-hover);
    background: var(--tws-action-hover);
    color: var(--tws-text-on-action);
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.btn-default, .btn-secondary) {
    min-height: var(--tws-control-height);
    border-color: var(--tws-border-strong);
    border-radius: var(--tws-radius-md);
    background: transparent;
    color: var(--tws-text);
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.btn-default, .btn-secondary):hover {
    border-color: var(--tws-action);
    background: var(--tws-action-subtle);
    color: var(--tws-text);
}

body.tws-shell:not(.tws-homepage-view) #main-body :where(.alert) {
    padding: var(--tws-space-4) var(--tws-space-5);
    border-width: .0625rem;
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

body.tws-shell:not(.tws-homepage-view) #main-body .alert-success {
    border-color: var(--tws-success);
}

body.tws-shell:not(.tws-homepage-view) #main-body .alert-warning {
    border-color: var(--tws-warning);
}

body.tws-shell:not(.tws-homepage-view) #main-body .alert-danger {
    border-color: var(--tws-danger);
}

body.tws-shell:not(.tws-homepage-view) #main-body .alert-info {
    border-color: var(--tws-info);
}

/* 9.1 Authentication */
.tws-shell .login-form {
    width: min(100%, var(--tws-container-form));
    margin-inline: auto;
}

.tws-shell .login-form .card {
    overflow: hidden;
}

.tws-shell .login-form .card-body {
    padding: var(--tws-space-6) var(--tws-space-5) !important;
}

.tws-shell .login-form .card-body > .mb-4:first-child {
    padding-bottom: var(--tws-space-5);
    border-bottom: .0625rem solid var(--tws-border);
}

.tws-shell .login-form .card-body > .mb-4:first-child .h3 {
    margin-bottom: var(--tws-space-2);
    font-size: clamp(1.75rem, 7vw, 2.25rem);
    line-height: 1.2;
}

.tws-shell .login-form .form-group {
    margin-bottom: var(--tws-space-5);
}

.tws-shell .login-form .input-group-text {
    min-width: var(--tws-control-height);
    justify-content: center;
    color: var(--tws-action);
}

.tws-shell .login-form #login {
    width: 100%;
}

.tws-shell .login-form .float-left,
.tws-shell .login-form .text-right {
    float: none !important;
    width: 100%;
    text-align: left !important;
}

.tws-shell .login-form .text-right label {
    min-height: 2.75rem;
    display: inline-flex;
    align-items: center;
    gap: var(--tws-space-3);
    margin: var(--tws-space-3) 0 0;
}

.tws-shell .login-form .form-check-input {
    position: static;
    margin: 0;
}

.tws-shell .login-form .card-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--tws-space-2);
}

/* 9.2 Client dashboard */
.tws-shell .tiles .row {
    margin: calc(var(--tws-space-2) * -1);
}

.tws-shell .tiles [class*="col-"] {
    padding: var(--tws-space-2);
}

.tws-shell .tiles .tile {
    min-height: 9rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto 1fr auto;
    align-items: stretch;
    gap: var(--tws-space-2);
    padding: var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
    color: var(--tws-text);
    text-align: left;
    text-decoration: none;
    transition: border-color var(--tws-duration-fast) var(--tws-ease), background var(--tws-duration-fast) var(--tws-ease), transform var(--tws-duration-fast) var(--tws-ease);
}

.tws-shell .tiles .tile:hover {
    border-color: var(--tws-action);
    background: var(--tws-surface-2);
    color: var(--tws-text);
    transform: translateY(-.0625rem);
}

.tws-shell .tiles .tile > i {
    justify-self: end;
    color: var(--tws-action);
    font-size: 1.5rem;
}

.tws-shell .tiles .tile .stat {
    align-self: end;
    color: var(--tws-text);
    font-size: clamp(1.75rem, 7vw, 2.25rem);
    font-weight: 700;
    line-height: 1;
}

.tws-shell .tiles .tile .title {
    min-width: 0;
    align-self: start;
    color: var(--tws-text-muted);
    font-size: .875rem;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.tws-shell .tiles .tile .highlight {
    display: none;
}

@media (min-width: 36rem) {
    .tws-shell .tiles .tile {
        grid-template-columns: auto minmax(0, 1fr);
        grid-template-rows: 1fr auto;
        align-items: center;
        gap: var(--tws-space-2) var(--tws-space-4);
        padding: var(--tws-space-5);
    }

    .tws-shell .tiles .tile > i {
        grid-row: 1 / 3;
        justify-self: auto;
    }
}

.tws-shell .client-home-cards .card {
    overflow: hidden;
    margin-bottom: var(--tws-space-6);
}

.tws-shell .client-home-cards .card-title > i {
    color: var(--tws-action);
}

.tws-shell .client-home-cards .card-title .badge {
    background: var(--tws-surface-3);
    color: var(--tws-text-body);
}

@supports selector(.card-title:has(> .float-right)) {
    .tws-shell.tws-template-clientareahome .client-home-cards .card-title:has(> .float-right) {
        position: relative;
        padding-bottom: calc(var(--tws-control-height) + var(--tws-space-3));
    }

    .tws-shell.tws-template-clientareahome .client-home-cards .card-title > .float-right {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        float: none !important;
    }

    .tws-shell.tws-template-clientareahome .client-home-cards .card-title > .float-right .btn {
        width: 100%;
        min-height: var(--tws-control-height);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: var(--tws-space-2);
    }

    @media (min-width: 36rem) {
        .tws-shell.tws-template-clientareahome .client-home-cards .card-title:has(> .float-right) {
            padding-bottom: 0;
        }

        .tws-shell.tws-template-clientareahome .client-home-cards .card-title > .float-right {
            position: static;
            width: auto;
            margin-left: var(--tws-space-4);
            float: right !important;
        }

        .tws-shell.tws-template-clientareahome .client-home-cards .card-title > .float-right .btn {
            width: auto;
        }
    }
}

.tws-shell .client-home-cards .list-group-item {
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    border-color: var(--tws-border);
    background: transparent;
    color: var(--tws-text-body);
}

.tws-shell .client-home-cards a.list-group-item:hover,
.tws-shell .client-home-cards a.list-group-item:focus,
.tws-shell .client-home-cards .list-group-item.active {
    border-color: var(--tws-border);
    background: var(--tws-action-subtle);
    color: var(--tws-text);
}

@supports selector(.card-footer:has(> .btn-view-more.disabled)) {
    .tws-shell.tws-template-clientareahome #servicesPanel .card-footer:has(> .btn-view-more.disabled) {
        display: none;
    }
}

.tws-shell.tws-template-clientareahome #announcementsPanel .list-group-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-1);
    align-items: start;
    overflow-wrap: anywhere;
}

.tws-shell.tws-template-clientareahome #announcementsPanel .list-group-item > br {
    display: none;
}

.tws-shell.tws-template-clientareahome #announcementsPanel .text-last-updated {
    display: block;
    color: var(--tws-text-muted);
    font-size: .875rem;
    line-height: 1.5;
}

.tws-shell.tws-template-clientareahome #registerDomainPanel .tws-dashboard-domain-label {
    display: block;
    padding: 0 var(--tws-space-2);
    margin-bottom: var(--tws-space-2);
    color: var(--tws-text-body);
    font-weight: 600;
}

.tws-shell.tws-template-clientareahome #registerDomainPanel .input-group {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-3);
}

.tws-shell.tws-template-clientareahome #registerDomainPanel .input-group > .form-control {
    width: 100%;
    min-width: 0;
    border-radius: var(--tws-radius-md);
}

.tws-shell.tws-template-clientareahome #registerDomainPanel .input-group-btn {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--tws-space-2);
    margin-left: 0;
}

.tws-shell.tws-template-clientareahome #registerDomainPanel .input-group-btn > .btn {
    width: 100%;
    min-height: var(--tws-control-height);
    border-radius: var(--tws-radius-md);
}

@media (min-width: 36rem) {
    .tws-shell.tws-template-clientareahome #registerDomainPanel .input-group {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 0;
    }

    .tws-shell.tws-template-clientareahome #registerDomainPanel .input-group > .form-control {
        border-radius: var(--tws-radius-md) 0 0 var(--tws-radius-md);
    }

    .tws-shell.tws-template-clientareahome #registerDomainPanel .input-group-btn {
        display: inline-flex;
    }

    .tws-shell.tws-template-clientareahome #registerDomainPanel .input-group-btn > .btn {
        width: auto;
        border-radius: 0;
    }

    .tws-shell.tws-template-clientareahome #registerDomainPanel .input-group-btn > .btn:last-child {
        border-radius: 0 var(--tws-radius-md) var(--tws-radius-md) 0;
    }
}

/* 9.3 Account lists, statuses and pagination */
.tws-shell #main-body :where(.table-container, .dataTables_wrapper) {
    max-width: 100%;
    color: var(--tws-text-body);
}

.tws-shell #main-body .table-container {
    overflow-x: auto;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
    -webkit-overflow-scrolling: touch;
}

.tws-shell #main-body .table-list {
    min-width: 44rem;
    margin-bottom: 0;
    background: transparent;
    color: var(--tws-text-body);
}

.tws-shell #main-body .table-list thead th {
    padding: var(--tws-space-4);
    border-color: var(--tws-border);
    background: var(--tws-surface-2);
    color: var(--tws-text);
    font-size: .875rem;
    font-weight: 700;
    text-transform: none;
}

.tws-shell #main-body .table-list tbody td {
    height: 3.25rem;
    padding: var(--tws-space-4);
    border-color: var(--tws-border);
    background: transparent;
    color: var(--tws-text-body);
    vertical-align: middle;
}

.tws-shell #main-body .table-list tbody tr:hover td {
    background: var(--tws-surface-2);
}

.tws-shell #main-body .label.status,
.tws-shell #main-body .badge.status {
    display: inline-flex;
    align-items: center;
    min-height: 1.75rem;
    padding: var(--tws-space-1) var(--tws-space-3);
    border: .0625rem solid currentColor;
    border-radius: var(--tws-radius-pill);
    background: transparent;
    color: var(--tws-info);
    font-size: .75rem;
    font-weight: 700;
    line-height: 1.25;
}

.tws-shell #main-body :where(.status-active, .status-paid, .status-completed, .status-answered) {
    color: var(--tws-success) !important;
}

.tws-shell #main-body :where(.status-pending, .status-pendingtransfer, .status-inprogress, .status-open) {
    color: var(--tws-warning) !important;
}

.tws-shell #main-body :where(.status-unpaid, .status-overdue, .status-suspended, .status-cancelled, .status-terminated, .status-fraud) {
    color: var(--tws-danger) !important;
}

.tws-shell #main-body .dataTables_wrapper :where(.dataTables_length, .dataTables_filter, .dataTables_info, .dataTables_paginate) {
    margin-block: var(--tws-space-4);
    color: var(--tws-text-muted);
}

.tws-shell.tws-template-clientareaproducts #tableServicesList_filter label {
    display: grid;
    gap: var(--tws-space-2);
    color: var(--tws-text-body);
    font-weight: 600;
    text-align: left;
}

.tws-shell.tws-template-clientareaproducts #tableServicesList_filter .tws-table-search-label {
    display: block;
    line-height: 1.5;
}

.tws-shell.tws-template-clientareaproducts #tableServicesList_filter input[type="search"] {
    width: 100%;
    margin-left: 0;
}

.tws-shell.tws-template-clientareadomains #tableDomainsList_filter label {
    display: grid;
    gap: var(--tws-space-2);
    color: var(--tws-text-body);
    font-weight: 600;
    text-align: left;
}

.tws-shell.tws-template-clientareadomains #tableDomainsList_filter .tws-table-search-label {
    display: block;
    line-height: 1.5;
}

.tws-shell.tws-template-clientareadomains #tableDomainsList_filter input[type="search"] {
    width: 100%;
    margin-left: 0;
}

.tws-shell.tws-template-clientareainvoices #tableInvoicesList_filter label {
    display: grid;
    gap: var(--tws-space-2);
    color: var(--tws-text-body);
    font-weight: 600;
    text-align: left;
}

.tws-shell.tws-template-clientareainvoices #tableInvoicesList_filter .tws-table-search-label {
    display: block;
    line-height: 1.5;
}

.tws-shell.tws-template-clientareainvoices #tableInvoicesList_filter input[type="search"] {
    width: 100%;
    margin-left: 0;
}

.tws-shell.tws-template-clientareaquotes #tableQuotesList_filter label {
    display: grid;
    gap: var(--tws-space-2);
    color: var(--tws-text-body);
    font-weight: 600;
    text-align: left;
}

.tws-shell.tws-template-clientareaquotes #tableQuotesList_filter .tws-table-search-label {
    display: block;
    line-height: 1.5;
}

.tws-shell.tws-template-clientareaquotes #tableQuotesList_filter input[type="search"] {
    width: 100%;
    margin-left: 0;
}

.tws-shell.tws-template-clientareaemails #tableEmailsList_filter label {
    display: grid;
    gap: var(--tws-space-2);
    color: var(--tws-text-body);
    font-weight: 600;
    text-align: left;
}

.tws-shell.tws-template-clientareaemails #tableEmailsList_filter .tws-table-search-label {
    display: block;
    line-height: 1.5;
}

.tws-shell.tws-template-clientareaemails #tableEmailsList_filter input[type="search"] {
    width: 100%;
    margin-left: 0;
}

.tws-shell.tws-template-clientareaemails #tableEmailsList .btn {
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.tws-shell.tws-template-supportticketslist #tableTicketsList_filter label {
    display: grid;
    gap: var(--tws-space-2);
    color: var(--tws-text-body);
    font-weight: 600;
    text-align: left;
}

.tws-shell.tws-template-supportticketslist #tableTicketsList_filter .tws-table-search-label {
    display: block;
    line-height: 1.5;
}

.tws-shell.tws-template-supportticketslist #tableTicketsList_filter input[type="search"] {
    width: 100%;
    margin-left: 0;
}

@media (max-width: 47.99rem) {
    .tws-shell #main-body :where(#tableServicesList, #tableDomainsList, #tableInvoicesList, #tableQuotesList, #tableEmailsList, #tableTicketsList),
    .tws-shell #main-body :where(#tableServicesList, #tableDomainsList, #tableInvoicesList, #tableQuotesList, #tableEmailsList, #tableTicketsList) :where(thead, tbody, tr, th, td) {
        box-sizing: border-box;
    }
}

@media (min-width: 48rem) {
    .tws-shell.tws-template-clientareaproducts #tableServicesList,
    .tws-shell.tws-template-clientareadomains #tableDomainsList,
    .tws-shell.tws-template-clientareainvoices #tableInvoicesList,
    .tws-shell.tws-template-clientareaquotes #tableQuotesList,
    .tws-shell.tws-template-clientareaemails #tableEmailsList,
    .tws-shell.tws-template-supportticketslist #tableTicketsList {
        display: table;
    }
}

@media (max-width: 47.99rem) {
    .tws-shell.tws-template-clientareaproducts #tableServicesList {
        width: 100% !important;
        min-width: 0;
        display: block;
        border-collapse: separate;
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList :where(thead, tbody) {
        width: 100%;
        display: block;
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList thead tr {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--tws-space-2);
        padding: var(--tws-space-3);
        border-bottom: .0625rem solid var(--tws-border);
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList thead th {
        width: 100% !important;
        min-height: var(--tws-control-height);
        display: flex !important;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-2) var(--tws-space-5) var(--tws-space-2) var(--tws-space-3);
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-2);
        color: var(--tws-text-body);
        font-size: .75rem;
        line-height: 1.4;
        text-align: center;
        white-space: normal;
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList thead th:first-child {
        display: none !important;
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList tbody {
        gap: var(--tws-space-3);
        padding: var(--tws-space-3);
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList tbody tr {
        width: 100%;
        display: block;
        overflow: hidden;
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-1);
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList tbody td {
        width: 100% !important;
        min-width: 0;
        display: grid;
        grid-template-columns: minmax(6.5rem, 42%) minmax(0, 1fr);
        gap: var(--tws-space-3);
        align-items: start;
        padding: var(--tws-space-3) var(--tws-space-4);
        border: 0;
        border-bottom: .0625rem solid var(--tws-border);
        color: var(--tws-text-body);
        text-align: left !important;
        overflow-wrap: anywhere;
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList tbody td:last-child {
        border-bottom: 0;
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList tbody td::before {
        content: attr(data-label);
        color: var(--tws-text-muted);
        font-size: .75rem;
        font-weight: 700;
        line-height: 1.5;
        text-transform: uppercase;
        letter-spacing: .03em;
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList tbody td[data-label=""] {
        display: flex;
        justify-content: flex-end;
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList tbody td[data-label=""]::before,
    .tws-shell.tws-template-clientareaproducts #tableServicesList .dataTables_empty::before {
        display: none;
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList:has(.dataTables_empty) thead {
        display: none;
    }

    .tws-shell.tws-template-clientareaproducts #tableServicesList .dataTables_empty {
        min-height: calc(var(--tws-control-height) * 2);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-6) var(--tws-space-4);
        text-align: center !important;
    }
}

@media (max-width: 47.99rem) {
    .tws-shell.tws-template-clientareadomains #tableDomainsList {
        width: 100% !important;
        min-width: 0;
        display: block;
        border-collapse: separate;
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList :where(thead, tbody) {
        width: 100%;
        display: block;
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList thead tr {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--tws-space-2);
        padding: var(--tws-space-3);
        border-bottom: .0625rem solid var(--tws-border);
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList thead th {
        width: 100% !important;
        min-height: var(--tws-control-height);
        display: flex !important;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-2) var(--tws-space-5) var(--tws-space-2) var(--tws-space-3);
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-2);
        color: var(--tws-text-body);
        font-size: .75rem;
        line-height: 1.4;
        text-align: center;
        white-space: normal;
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList thead th:empty {
        display: none !important;
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList tbody {
        gap: var(--tws-space-3);
        padding: var(--tws-space-3);
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList tbody tr {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        overflow: hidden;
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-1);
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList tbody td {
        width: 100% !important;
        height: auto !important;
        min-width: 0;
        min-height: 3.25rem;
        grid-column: 1 / -1;
        display: block;
        padding: var(--tws-space-3) var(--tws-space-4);
        border: 0;
        border-bottom: .0625rem solid var(--tws-border);
        color: var(--tws-text-body);
        text-align: left !important;
        overflow-wrap: anywhere;
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList tbody td:last-child {
        border-bottom: 0;
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList tbody td::before {
        content: attr(data-label);
        display: block;
        margin-bottom: var(--tws-space-1);
        color: var(--tws-text-muted);
        font-size: .75rem;
        font-weight: 700;
        line-height: 1.5;
        text-transform: uppercase;
        letter-spacing: .03em;
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList tbody td[data-label=""] {
        min-height: 2.75rem;
        grid-column: auto;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList tbody td[data-label=""]::before,
    .tws-shell.tws-template-clientareadomains #tableDomainsList .dataTables_empty::before {
        display: none;
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList:has(.dataTables_empty) thead {
        display: none;
    }

    .tws-shell.tws-template-clientareadomains #tableDomainsList .dataTables_empty {
        min-height: calc(var(--tws-control-height) * 2);
        grid-column: 1 / -1;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-6) var(--tws-space-4);
        text-align: center !important;
    }
}

@media (max-width: 47.99rem) {
    .tws-shell.tws-template-clientareainvoices #tableInvoicesList {
        width: 100% !important;
        min-width: 0;
        display: block;
        border-collapse: separate;
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList :where(thead, tbody) {
        width: 100%;
        display: block;
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList thead tr {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--tws-space-2);
        padding: var(--tws-space-3);
        border-bottom: .0625rem solid var(--tws-border);
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList thead th {
        width: 100% !important;
        min-height: var(--tws-control-height);
        display: flex !important;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-2) var(--tws-space-5) var(--tws-space-2) var(--tws-space-3);
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-2);
        color: var(--tws-text-body);
        font-size: .75rem;
        line-height: 1.4;
        text-align: center;
        white-space: normal;
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList thead th:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList tbody {
        padding: var(--tws-space-3);
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList tbody tr {
        width: 100%;
        display: block;
        overflow: hidden;
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-1);
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList tbody tr + tr {
        margin-top: var(--tws-space-3);
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList tbody td {
        width: 100% !important;
        min-width: 0;
        display: grid;
        grid-template-columns: minmax(6.5rem, 42%) minmax(0, 1fr);
        gap: var(--tws-space-3);
        align-items: start;
        padding: var(--tws-space-3) var(--tws-space-4);
        border: 0;
        border-bottom: .0625rem solid var(--tws-border);
        color: var(--tws-text-body);
        text-align: left !important;
        overflow-wrap: anywhere;
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList tbody td:last-child {
        border-bottom: 0;
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList tbody td::before {
        content: attr(data-label);
        color: var(--tws-text-muted);
        font-size: .75rem;
        font-weight: 700;
        line-height: 1.5;
        text-transform: uppercase;
        letter-spacing: .03em;
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList .dataTables_empty::before {
        display: none;
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList:has(.dataTables_empty) thead {
        display: none;
    }

    .tws-shell.tws-template-clientareainvoices #tableInvoicesList .dataTables_empty {
        min-height: calc(var(--tws-control-height) * 2);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-6) var(--tws-space-4);
        text-align: center !important;
    }
}

@media (max-width: 47.99rem) {
    .tws-shell.tws-template-clientareaquotes #tableQuotesList {
        width: 100% !important;
        min-width: 0;
        display: block;
        border-collapse: separate;
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList :where(thead, tbody) {
        width: 100%;
        display: block;
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList thead tr {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--tws-space-2);
        padding: var(--tws-space-3);
        border-bottom: .0625rem solid var(--tws-border);
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList thead th {
        width: 100% !important;
        min-height: var(--tws-control-height);
        display: flex !important;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-2) var(--tws-space-5) var(--tws-space-2) var(--tws-space-3);
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-2);
        color: var(--tws-text-body);
        font-size: .75rem;
        line-height: 1.4;
        text-align: center;
        white-space: normal;
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList thead th:nth-child(5) {
        grid-column: 1 / -1;
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList thead th:empty {
        display: none !important;
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList tbody {
        padding: var(--tws-space-3);
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList tbody tr {
        width: 100%;
        display: block;
        overflow: hidden;
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-1);
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList tbody tr + tr {
        margin-top: var(--tws-space-3);
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList tbody td {
        width: 100% !important;
        min-width: 0;
        display: grid;
        grid-template-columns: minmax(6.5rem, 42%) minmax(0, 1fr);
        gap: var(--tws-space-3);
        align-items: start;
        padding: var(--tws-space-3) var(--tws-space-4);
        border: 0;
        border-bottom: .0625rem solid var(--tws-border);
        color: var(--tws-text-body);
        text-align: left !important;
        overflow-wrap: anywhere;
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList tbody td:last-child {
        border-bottom: 0;
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList tbody td::before {
        content: attr(data-label);
        color: var(--tws-text-muted);
        font-size: .75rem;
        font-weight: 700;
        line-height: 1.5;
        text-transform: uppercase;
        letter-spacing: .03em;
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList tbody td[data-label=""] {
        display: flex;
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList tbody td[data-label=""]::before,
    .tws-shell.tws-template-clientareaquotes #tableQuotesList .dataTables_empty::before {
        display: none;
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList tbody td[data-label=""] form,
    .tws-shell.tws-template-clientareaquotes #tableQuotesList tbody td[data-label=""] .btn {
        width: 100%;
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList tbody td[data-label=""] .btn {
        min-height: var(--tws-control-height);
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList:has(.dataTables_empty) thead {
        display: none;
    }

    .tws-shell.tws-template-clientareaquotes #tableQuotesList .dataTables_empty {
        min-height: calc(var(--tws-control-height) * 2);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-6) var(--tws-space-4);
        text-align: center !important;
    }
}

@media (max-width: 47.99rem) {
    .tws-shell.tws-template-clientareaemails #tableEmailsList {
        width: 100% !important;
        min-width: 0;
        display: block;
        border-collapse: separate;
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList :where(thead, tbody) {
        width: 100%;
        display: block;
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList thead tr {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--tws-space-2);
        padding: var(--tws-space-3);
        border-bottom: .0625rem solid var(--tws-border);
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList thead th {
        width: 100% !important;
        min-height: var(--tws-control-height);
        display: flex !important;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-2) var(--tws-space-5) var(--tws-space-2) var(--tws-space-3);
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-2);
        color: var(--tws-text-body);
        font-size: .75rem;
        line-height: 1.4;
        text-align: center;
        white-space: normal;
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList thead th:empty {
        display: none !important;
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList tbody {
        padding: var(--tws-space-3);
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList tbody tr {
        width: 100%;
        display: block;
        overflow: hidden;
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-1);
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList tbody tr + tr {
        margin-top: var(--tws-space-3);
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList tbody td {
        width: 100% !important;
        min-width: 0;
        display: grid;
        grid-template-columns: minmax(6.5rem, 42%) minmax(0, 1fr);
        gap: var(--tws-space-3);
        align-items: start;
        padding: var(--tws-space-3) var(--tws-space-4);
        border: 0;
        border-bottom: .0625rem solid var(--tws-border);
        color: var(--tws-text-body);
        text-align: left !important;
        overflow-wrap: anywhere;
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList tbody td:last-child {
        border-bottom: 0;
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList tbody td::before {
        content: attr(data-label);
        color: var(--tws-text-muted);
        font-size: .75rem;
        font-weight: 700;
        line-height: 1.5;
        text-transform: uppercase;
        letter-spacing: .03em;
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList tbody td[data-label=""] {
        display: flex;
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList tbody td[data-label=""]::before,
    .tws-shell.tws-template-clientareaemails #tableEmailsList .dataTables_empty::before {
        display: none;
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList tbody td[data-label=""] .btn {
        width: 100%;
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList:has(.dataTables_empty) thead {
        display: none;
    }

    .tws-shell.tws-template-clientareaemails #tableEmailsList .dataTables_empty {
        min-height: calc(var(--tws-control-height) * 2);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-6) var(--tws-space-4);
        text-align: center !important;
    }
}

@media (max-width: 47.99rem) {
    .tws-shell.tws-template-supportticketslist #tableTicketsList {
        width: 100% !important;
        min-width: 0;
        display: block;
        border-collapse: separate;
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList :where(thead, tbody) {
        width: 100%;
        display: block;
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList thead tr {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--tws-space-2);
        padding: var(--tws-space-3);
        border-bottom: .0625rem solid var(--tws-border);
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList thead th {
        width: 100% !important;
        min-height: var(--tws-control-height);
        display: flex !important;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-2) var(--tws-space-5) var(--tws-space-2) var(--tws-space-3);
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-2);
        color: var(--tws-text-body);
        font-size: .75rem;
        line-height: 1.4;
        text-align: center;
        white-space: normal;
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList tbody {
        padding: var(--tws-space-3);
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList tbody tr {
        width: 100%;
        display: block;
        overflow: hidden;
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-md);
        background: var(--tws-surface-1);
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList tbody tr + tr {
        margin-top: var(--tws-space-3);
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList tbody td {
        width: 100% !important;
        min-width: 0;
        display: grid;
        grid-template-columns: minmax(6.5rem, 42%) minmax(0, 1fr);
        gap: var(--tws-space-3);
        align-items: start;
        padding: var(--tws-space-3) var(--tws-space-4);
        border: 0;
        border-bottom: .0625rem solid var(--tws-border);
        color: var(--tws-text-body);
        text-align: left !important;
        overflow-wrap: anywhere;
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList tbody td:last-child {
        border-bottom: 0;
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList tbody td::before {
        content: attr(data-label);
        color: var(--tws-text-muted);
        font-size: .75rem;
        font-weight: 700;
        line-height: 1.5;
        text-transform: uppercase;
        letter-spacing: .03em;
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList tbody td a.border-left {
        padding-left: 0;
        border-left: 0 !important;
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList .dataTables_empty::before {
        display: none;
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList:has(.dataTables_empty) thead {
        display: none;
    }

    .tws-shell.tws-template-supportticketslist #tableTicketsList .dataTables_empty {
        min-height: calc(var(--tws-control-height) * 2);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: var(--tws-space-6) var(--tws-space-4);
        text-align: center !important;
    }
}

.tws-shell #main-body .pagination {
    flex-wrap: wrap;
    gap: var(--tws-space-1);
}

.tws-shell #main-body .page-link {
    min-width: 2.75rem;
    min-height: 2.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-color: var(--tws-border);
    border-radius: var(--tws-radius-md) !important;
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

.tws-shell #main-body .page-item.active .page-link,
.tws-shell #main-body .page-link:hover {
    border-color: var(--tws-action);
    background: var(--tws-action-subtle);
    color: var(--tws-text);
}

@media (min-width: 36rem) {
    .tws-shell .login-form .card-body {
        padding: var(--tws-space-10) !important;
    }

    .tws-shell .login-form #login {
        width: auto;
        min-width: 8rem;
    }

    .tws-shell .login-form .float-left,
    .tws-shell .login-form .text-right {
        width: auto;
    }

    .tws-shell .login-form .float-left {
        float: left !important;
    }

    .tws-shell .login-form .text-right {
        float: right !important;
        text-align: right !important;
    }

    .tws-shell .login-form .text-right label {
        margin-top: 0;
    }
}

/* 9.7 Account, service and domain client surfaces */
.tws-template-clientareadetails #main-body .primary-content > form > .card,
.tws-template-account-contacts-manage #main-body .primary-content > .card,
.tws-template-account-contacts-new #main-body .primary-content > .card,
.tws-template-account-user-management #main-body .primary-content > .card,
.tws-template-user-profile #main-body .primary-content > .card,
.tws-template-user-password #main-body .primary-content > .card,
.tws-template-user-security #main-body .primary-content > .card {
    overflow: hidden;
    margin-bottom: var(--tws-space-6);
}

.tws-shell:where(.tws-template-clientareadetails, .tws-template-account-contacts-manage, .tws-template-account-contacts-new, .tws-template-account-user-management, .tws-template-account-user-permissions, .tws-template-user-profile, .tws-template-user-password, .tws-template-user-security, .tws-template-clientareaproductdetails, .tws-template-clientareadomaindetails, .tws-template-clientareadomaindns, .tws-template-clientareadomaincontactinfo, .tws-template-clientareadomainregisterns, .tws-template-clientareadomainemailforwarding, .tws-template-clientareadomainaddons, .tws-template-bulkdomainmanagement) #main-body .card-body > .card-title:first-child {
    margin-bottom: var(--tws-space-6);
    padding-bottom: var(--tws-space-4);
    border-bottom: .0625rem solid var(--tws-border);
}

.tws-template-clientareadetails #main-body .form-group,
.tws-template-account-contacts-manage #main-body .form-group,
.tws-template-account-contacts-new #main-body .form-group,
.tws-template-user-profile #main-body .form-group,
.tws-template-user-password #main-body .form-group,
.tws-template-user-security #main-body .form-group {
    margin-bottom: var(--tws-space-5);
}

.tws-shell:where(.tws-template-clientareadetails, .tws-template-account-contacts-manage, .tws-template-account-contacts-new, .tws-template-account-user-management, .tws-template-account-user-permissions, .tws-template-user-profile, .tws-template-user-password, .tws-template-user-security, .tws-template-clientareadomaindetails, .tws-template-clientareadomaindns, .tws-template-clientareadomaincontactinfo, .tws-template-bulkdomainmanagement) #main-body .form-check {
    min-height: 2.75rem;
    display: flex;
    align-items: flex-start;
    gap: var(--tws-space-3);
    padding: var(--tws-space-3) var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
}

.tws-shell:where(.tws-template-clientareadetails, .tws-template-account-contacts-manage, .tws-template-account-contacts-new, .tws-template-account-user-management, .tws-template-account-user-permissions, .tws-template-user-profile, .tws-template-user-password, .tws-template-user-security, .tws-template-clientareadomaindetails, .tws-template-clientareadomaindns, .tws-template-clientareadomaincontactinfo, .tws-template-bulkdomainmanagement) #main-body .form-check + .form-check {
    margin-top: var(--tws-space-2);
}

.tws-shell:where(.tws-template-clientareadetails, .tws-template-account-contacts-manage, .tws-template-account-contacts-new, .tws-template-account-user-management, .tws-template-account-user-permissions, .tws-template-user-profile, .tws-template-user-password, .tws-template-user-security, .tws-template-clientareadomaindetails, .tws-template-clientareadomaindns, .tws-template-clientareadomaincontactinfo, .tws-template-bulkdomainmanagement) #main-body .form-check :where(.form-check-input, input[type="checkbox"], input[type="radio"]) {
    position: static;
    flex: 0 0 auto;
    width: var(--tws-space-5);
    height: var(--tws-space-5);
    margin: 0;
    accent-color: var(--tws-action);
}

.tws-shell:where(.tws-template-clientareadetails, .tws-template-account-contacts-manage, .tws-template-account-contacts-new, .tws-template-account-user-management, .tws-template-account-user-permissions, .tws-template-user-profile, .tws-template-user-password, .tws-template-user-security, .tws-template-clientareadomaindetails, .tws-template-clientareadomaindns, .tws-template-clientareadomaincontactinfo, .tws-template-bulkdomainmanagement) #main-body .form-check label,
.tws-shell:where(.tws-template-clientareadetails, .tws-template-account-contacts-manage, .tws-template-account-contacts-new, .tws-template-account-user-management, .tws-template-account-user-permissions, .tws-template-user-profile, .tws-template-user-password, .tws-template-user-security, .tws-template-clientareadomaindetails, .tws-template-clientareadomaindns, .tws-template-clientareadomaincontactinfo, .tws-template-bulkdomainmanagement) #main-body label.form-check {
    margin-bottom: 0;
}

.tws-shell:where(.tws-template-account-contacts-manage, .tws-template-account-contacts-new) #main-body .controls.form-check {
    display: block;
    padding: 0;
    border: 0;
    background: transparent;
}

.tws-shell:where(.tws-template-account-contacts-manage, .tws-template-account-contacts-new) #main-body .controls.form-check > label {
    min-height: 2.75rem;
    display: flex;
    align-items: flex-start;
    gap: var(--tws-space-3);
    margin-bottom: var(--tws-space-2);
    padding: var(--tws-space-3) var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
}

.tws-template-clientareadetails #main-body .controls.form-check {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-3);
    padding: 0;
    border: 0;
    background: transparent;
}

.tws-template-clientareadetails #main-body .controls.form-check > br {
    display: none;
}

.tws-template-clientareadetails #main-body .controls.form-check > label {
    min-width: 0;
    min-height: var(--tws-control-height);
    display: grid;
    grid-template-columns: var(--tws-space-5) minmax(0, 1fr);
    align-items: start;
    gap: var(--tws-space-3);
    margin: 0;
    padding: var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
    color: var(--tws-text-body);
    line-height: 1.5;
    overflow-wrap: anywhere;
    cursor: pointer;
}

.tws-template-clientareadetails #main-body .controls.form-check > label:hover {
    border-color: var(--tws-border-strong);
    background: var(--tws-surface-3);
}

.tws-template-clientareadetails #main-body .controls.form-check > label:focus-within {
    border-color: var(--tws-action);
    background: var(--tws-action-subtle);
}

.tws-template-clientareadetails #main-body .controls.form-check > label > .form-check-input {
    width: var(--tws-space-5);
    height: var(--tws-space-5);
    margin: var(--tws-space-1) 0 0;
}

.tws-template-clientareadetails #main-body .bootstrap-switch {
    min-width: var(--tws-space-20);
    height: var(--tws-control-height);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
    box-shadow: none;
}

.tws-template-clientareadetails #main-body .bootstrap-switch:hover {
    border-color: var(--tws-border-strong);
}

.tws-template-clientareadetails #main-body .bootstrap-switch:focus-within,
.tws-template-clientareadetails #main-body .bootstrap-switch.bootstrap-switch-focused {
    border-color: var(--tws-action);
    outline: .1875rem solid var(--tws-focus);
    outline-offset: .125rem;
}

.tws-template-clientareadetails #main-body .bootstrap-switch .bootstrap-switch-container,
.tws-template-clientareadetails #main-body .bootstrap-switch :where(.bootstrap-switch-handle-on, .bootstrap-switch-label, .bootstrap-switch-handle-off) {
    height: 100% !important;
}

.tws-template-clientareadetails #main-body .bootstrap-switch :where(.bootstrap-switch-handle-on, .bootstrap-switch-label, .bootstrap-switch-handle-off) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-block: 0;
    border-color: var(--tws-border);
    font-size: .875rem;
    font-weight: 700;
}

.tws-template-clientareadetails #main-body .bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-success {
    background: var(--tws-success);
    color: var(--tws-bg-deep);
}

.tws-template-clientareadetails #main-body .bootstrap-switch .bootstrap-switch-label {
    background: var(--tws-surface-1);
}

.tws-template-clientareadetails #main-body .bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-secondary {
    background: var(--tws-surface-3);
    color: var(--tws-text);
}

.tws-shell:where(.tws-template-clientareadetails, .tws-template-account-contacts-manage, .tws-template-account-contacts-new, .tws-template-user-password) #main-body .form-group.text-center > :where(.btn, input.btn),
.tws-template-user-password #main-body .card-body > form > :where(.btn, input.btn) {
    width: 100%;
    margin: var(--tws-space-1) 0;
}

.tws-template-clientareaproducts #tableServicesList tbody tr,
.tws-template-clientareadomains #tableDomainsList tbody tr {
    cursor: pointer;
}

.tws-template-clientareaproducts #tableServicesList td,
.tws-template-clientareadomains #tableDomainsList td {
    min-width: 0;
    overflow-wrap: anywhere;
}

.tws-template-clientareaproducts #tableServicesList tbody strong,
.tws-template-clientareadomains #tableDomainsList tbody td:nth-child(3) > a {
    color: var(--tws-text);
    font-weight: 700;
}

.tws-template-clientareadomains #domainForm > .btn-group {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-2);
}

.tws-template-clientareadomains #domainForm > .btn-group > .btn,
.tws-template-clientareadomains #domainForm > .btn-group > .btn-group,
.tws-template-clientareadomains #domainForm > .btn-group > .btn-group > .btn {
    width: 100%;
    margin: 0;
    border-radius: var(--tws-radius-md);
}

.tws-template-clientareadomains #domainForm > .btn-group .btn {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: var(--tws-space-2);
    white-space: normal;
}

.tws-template-clientareadomains #tableDomainsList .domids {
    width: var(--tws-space-5);
    height: var(--tws-space-5);
    accent-color: var(--tws-action);
}

.tws-template-clientareaproductdetails #main-body .product-details,
.tws-template-clientareadomaindetails #main-body #tabOverview > .card > .card-body {
    min-width: 0;
}

.tws-template-clientareaproductdetails #main-body .product-status {
    overflow: hidden;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-2);
}

.tws-template-clientareaproductdetails #main-body .product-icon {
    padding: var(--tws-space-8) var(--tws-space-5) var(--tws-space-6);
}

.tws-template-clientareaproductdetails #main-body .product-icon .fa-stack {
    margin-bottom: var(--tws-space-4);
    color: var(--tws-action);
}

.tws-template-clientareaproductdetails #main-body .product-icon h3 {
    margin-bottom: var(--tws-space-2);
    overflow-wrap: anywhere;
    font-size: clamp(1.5rem, 6vw, 2rem);
}

.tws-template-clientareaproductdetails #main-body .product-icon h4 {
    margin-bottom: 0;
    color: var(--tws-text-muted);
    font-size: 1rem;
}

.tws-template-clientareaproductdetails #main-body .product-status-text {
    padding: var(--tws-space-3) var(--tws-space-4);
    border-top: .0625rem solid currentColor;
    color: var(--tws-info);
    font-weight: 700;
    text-align: center;
}

.tws-template-clientareaproductdetails #main-body .product-status-active .product-status-text {
    color: var(--tws-success);
}

.tws-template-clientareaproductdetails #main-body :where(.product-status-pending, .product-status-inprogress) .product-status-text {
    color: var(--tws-warning);
}

.tws-template-clientareaproductdetails #main-body :where(.product-status-suspended, .product-status-cancelled, .product-status-terminated, .product-status-fraud) .product-status-text {
    color: var(--tws-danger);
}

.tws-template-clientareaproductdetails #main-body .product-actions-wrapper > [class*="col-"] {
    margin-bottom: var(--tws-space-3);
}

.tws-template-clientareaproductdetails #main-body .product-details-tab-container .row,
.tws-template-clientareadomaindetails #main-body #tabOverview > .card > .card-body > .row {
    row-gap: var(--tws-space-2);
    margin-bottom: 0 !important;
    padding-block: var(--tws-space-4);
    border-bottom: .0625rem solid var(--tws-border);
}

.tws-template-clientareaproductdetails #main-body .product-details-tab-container .row:last-child,
.tws-template-clientareadomaindetails #main-body #tabOverview > .card > .card-body > .row:last-child {
    border-bottom: 0;
}

.tws-template-clientareaproductdetails #main-body .product-details-tab-container .text-right,
.tws-template-clientareadomains #main-body .dataTables_wrapper .text-right {
    text-align: left !important;
}

.tws-template-clientareadomaindetails #main-body #tabOverview h5 {
    margin-bottom: var(--tws-space-1);
    color: var(--tws-text-muted);
    font-size: .875rem;
    line-height: 1.5;
}

.tws-template-clientareadomaindetails #main-body #tabOverview .card-body > ul {
    display: grid;
    gap: var(--tws-space-2);
    margin: 0;
    padding: 0;
    list-style: none;
}

.tws-template-clientareadomaindetails #main-body #tabOverview .card-body > ul a {
    min-height: 2.75rem;
    display: flex;
    align-items: center;
    padding: var(--tws-space-2) var(--tws-space-3);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
}

.tws-template-clientareadomaindns #main-body .table,
.tws-template-clientareadomainemailforwarding #main-body .table,
.tws-template-bulkdomainmanagement #main-body .table {
    min-width: 44rem;
}

.tws-template-clientareadomaindns #main-body .card-body,
.tws-template-clientareadomainemailforwarding #main-body .card-body,
.tws-template-bulkdomainmanagement #main-body .card-body {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

@media (min-width: 36rem) {
    .tws-template-clientareadetails #main-body .controls.form-check {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-rows: 1fr;
    }

    .tws-shell:where(.tws-template-clientareadetails, .tws-template-account-contacts-manage, .tws-template-account-contacts-new, .tws-template-user-password) #main-body .form-group.text-center > :where(.btn, input.btn),
    .tws-template-user-password #main-body .card-body > form > :where(.btn, input.btn) {
        width: auto;
        margin: var(--tws-space-1);
    }

    .tws-template-clientareadomains #domainForm > .btn-group {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 48rem) {
    .tws-template-clientareadomains #domainForm > .btn-group {
        width: auto;
        display: inline-flex;
        flex-wrap: wrap;
    }

    .tws-template-clientareadomains #domainForm > .btn-group > .btn,
    .tws-template-clientareadomains #domainForm > .btn-group > .btn-group,
    .tws-template-clientareadomains #domainForm > .btn-group > .btn-group > .btn {
        width: auto;
    }

    .tws-template-clientareaproductdetails #main-body .product-details-tab-container .text-right,
    .tws-template-clientareadomains #main-body .dataTables_wrapper .text-right {
        text-align: right !important;
    }
}

@media (min-width: 62rem) {
    .tws-template-clientareadetails #main-body .controls.form-check {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* 9.6 Client billing, payment and support-ticket surfaces */
.tws-template-supportticketslist #main-body #tableTicketsList tbody tr,
.tws-template-clientareainvoices #main-body #tableInvoicesList tbody tr,
.tws-template-clientareaquotes #main-body #tableQuotesList tbody tr {
    cursor: pointer;
}

.tws-template-supportticketslist #main-body .ticket-number {
    display: block;
    margin-bottom: var(--tws-space-1);
    color: var(--tws-text-muted);
    font-size: .75rem;
    font-weight: 700;
}

.tws-template-supportticketslist #main-body .ticket-subject {
    display: block;
    color: var(--tws-text-body);
    font-weight: 600;
    overflow-wrap: anywhere;
}

.tws-template-supportticketslist #main-body .ticket-subject.unread {
    color: var(--tws-text);
    font-weight: 700;
}

.tws-template-viewticket #main-body .view-ticket {
    overflow: hidden;
}

.tws-template-viewticket #main-body .view-ticket > .card-body + .card-body {
    border-top: .0625rem solid var(--tws-border);
}

.tws-template-viewticket #main-body .ticket-actions {
    float: none !important;
    display: flex;
    flex-wrap: wrap;
    gap: var(--tws-space-2);
    margin-top: var(--tws-space-4) !important;
}

.tws-template-viewticket #main-body .ticket-actions .btn {
    flex: 1 1 9rem;
}

.tws-template-viewticket #main-body .ticket-reply {
    overflow: hidden;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
}

.tws-template-viewticket #main-body .ticket-reply.staff {
    border-left: .1875rem solid var(--tws-info);
}

.tws-template-viewticket #main-body .ticket-reply .posted-by {
    padding: var(--tws-space-3) var(--tws-space-4);
    border-bottom: .0625rem solid var(--tws-border);
    background: var(--tws-surface-2);
    color: var(--tws-text-muted);
    font-size: .875rem;
    line-height: 1.5;
}

.tws-template-viewticket #main-body .ticket-reply .posted-by-name {
    color: var(--tws-text);
    font-weight: 700;
}

.tws-template-viewticket #main-body .ticket-reply .message {
    color: var(--tws-text-body);
    line-height: 1.65;
    overflow-wrap: anywhere;
}

.tws-template-viewticket #main-body .requestor-badge {
    display: inline-flex;
    align-items: center;
    min-height: 1.75rem;
    margin-top: var(--tws-space-2);
    padding: var(--tws-space-1) var(--tws-space-3);
    border: .0625rem solid var(--tws-border-strong);
    border-radius: var(--tws-radius-pill);
    background: transparent;
    color: var(--tws-text-body);
    font-size: .75rem;
    font-weight: 700;
}

.tws-template-viewticket #main-body .attachments {
    border-top: .0625rem solid var(--tws-border);
    background: var(--tws-bg-deep);
    color: var(--tws-text-body);
}

.tws-template-viewticket #main-body .attachment-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr));
    gap: var(--tws-space-3);
    margin: var(--tws-space-4) 0 0;
    padding: 0;
    list-style: none;
}

.tws-template-viewticket #main-body .attachment-list > li {
    min-width: 0;
}

.tws-template-viewticket #main-body .attachment-list :where(a, span) {
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    gap: var(--tws-space-3);
    padding: var(--tws-space-3);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
    text-decoration: none;
}

.tws-template-viewticket #main-body .attachment-list a:hover,
.tws-template-viewticket #main-body .attachment-list a:focus {
    border-color: var(--tws-action);
    background: var(--tws-action-subtle);
    color: var(--tws-text);
}

.tws-template-viewticket #main-body .attachment-list figure {
    margin: 0;
    color: var(--tws-action);
}

.tws-template-viewticket #main-body .attachment-list .caption {
    min-width: 0;
    overflow-wrap: anywhere;
}

.tws-template-viewticket #main-body #ticketReplyContainer {
    margin-top: var(--tws-space-6);
}

.tws-template-viewticket #main-body #frmReply .form-group {
    margin-bottom: var(--tws-space-5);
}

.tws-template-viewticket #main-body #frmReply textarea {
    min-height: 12rem;
    resize: vertical;
}

.tws-shell #main-body :where(.custom-file-label, .custom-file-input) {
    min-height: var(--tws-control-height);
}

.tws-shell #main-body .custom-file-label {
    display: flex;
    align-items: center;
    border-color: var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

.tws-shell #main-body .custom-file-label::after {
    min-height: calc(var(--tws-control-height) - .125rem);
    display: flex;
    align-items: center;
    border-color: var(--tws-border);
    background: var(--tws-surface-2);
    color: var(--tws-text);
}

.tws-shell #main-body :where(.form-control, .custom-select):disabled,
.tws-shell #main-body :where(.form-control, .custom-select).disabled {
    border-color: var(--tws-border);
    background: var(--tws-bg-deep);
    color: var(--tws-text-disabled);
    opacity: 1;
}

.tws-shell #main-body #frmPayment > .row {
    row-gap: var(--tws-space-6);
}

.tws-shell #main-body #frmPayment :where(.cc-payment-form, .bank-details) .form-group,
.tws-shell #main-body #frmPayment .form-group.row {
    row-gap: var(--tws-space-2);
    margin-bottom: var(--tws-space-5);
}

.tws-shell #main-body #frmPayment :where(.control-label, .col-form-label) {
    text-align: left !important;
}

.tws-shell #main-body #invoiceIdSummary {
    overflow: hidden;
}

.tws-shell #main-body #invoiceIdSummary h2 {
    font-size: clamp(1.5rem, 6vw, 2rem);
}

.tws-shell #main-body .invoice-summary-table {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.tws-shell #main-body .invoice-summary-table table {
    min-width: 26rem;
    margin-bottom: var(--tws-space-4);
    color: var(--tws-text-body);
}

.tws-shell #main-body .invoice-summary-table td {
    padding: var(--tws-space-3);
    border-color: var(--tws-border);
    background: transparent;
}

.tws-shell #main-body .invoice-summary-table .total-row {
    background: var(--tws-surface-2);
    color: var(--tws-text);
    font-weight: 700;
}

.tws-shell #main-body #btnSubmitContainer {
    margin-top: var(--tws-space-6);
}

.tws-shell #main-body #btnSubmitContainer .btn {
    width: 100%;
}

@media (min-width: 36rem) {
    .tws-template-viewticket #main-body .ticket-actions {
        float: right !important;
        margin-top: 0 !important;
    }

    .tws-template-viewticket #main-body .ticket-actions .btn {
        flex: 0 0 auto;
    }

    .tws-template-viewticket #main-body .requestor-badge {
        margin-top: 0;
    }

    .tws-shell #main-body #btnSubmitContainer .btn {
        width: auto;
        min-width: 10rem;
    }
}

@media (min-width: 62rem) {
    .tws-shell #main-body #invoiceIdSummary {
        position: sticky;
        top: var(--tws-space-4);
    }
}

/* 9.4 Client page hierarchy, side navigation and tabbed detail views */
.tws-shell #main-body .header-lined {
    margin-bottom: var(--tws-space-6);
    padding-bottom: var(--tws-space-4);
    border-bottom: .0625rem solid var(--tws-border);
}

.tws-shell #main-body .header-lined :where(h1, h2) {
    margin-bottom: var(--tws-space-2);
    font-size: clamp(2rem, 7vw, 3rem);
    line-height: 1.15;
}

.tws-shell #main-body .header-lined .breadcrumb {
    margin-bottom: 0;
}

.tws-shell .sidebar .card-sidebar,
body.tws-shell #order-standard_cart .cart-sidebar .card-sidebar {
    overflow: hidden;
}

.tws-shell .sidebar .card-sidebar .card-header,
body.tws-shell #order-standard_cart .cart-sidebar .card-sidebar .card-header {
    padding: var(--tws-space-4) var(--tws-space-5);
}

body.tws-shell #order-standard_cart .cart-sidebar .card-sidebar .card-header[role="button"] {
    cursor: pointer;
}

body.tws-shell #order-standard_cart .cart-sidebar .card-sidebar .card-header[role="button"]:focus-visible {
    outline: .1875rem solid var(--tws-focus);
    outline-offset: -.1875rem;
}

.tws-shell .sidebar .card-title,
body.tws-shell #order-standard_cart .cart-sidebar :where(.card-title, .panel-title) {
    font-size: 1rem;
    line-height: 1.4;
}

.tws-shell .sidebar .card-title > i:first-child,
.tws-shell .sidebar .sidebar-menu-item-icon,
body.tws-shell #order-standard_cart .cart-sidebar :where(.card-title, .panel-title) > i:first-child {
    color: var(--tws-action);
}

.tws-shell .sidebar .card-minimise,
body.tws-shell #order-standard_cart .cart-sidebar .card-minimise {
    color: var(--tws-text-muted);
    pointer-events: none;
}

.tws-shell .sidebar .list-group-item {
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    padding: var(--tws-space-3) var(--tws-space-5);
    border-color: var(--tws-border);
    background: transparent;
    color: var(--tws-text-body);
}

.tws-shell .sidebar a.list-group-item:hover,
.tws-shell .sidebar a.list-group-item:focus {
    background: var(--tws-surface-2);
    color: var(--tws-text);
}

body.tws-shell #order-standard_cart .cart-sidebar .list-group-item {
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    padding: var(--tws-space-3) var(--tws-space-5);
    border-color: var(--tws-border) !important;
    background: var(--tws-surface-1) !important;
    color: var(--tws-text-body) !important;
}

body.tws-shell #order-standard_cart .cart-sidebar a.list-group-item:hover,
body.tws-shell #order-standard_cart .cart-sidebar a.list-group-item:focus {
    background: var(--tws-surface-2) !important;
    color: var(--tws-text) !important;
}

.tws-shell .sidebar .list-group-item.active {
    border-left: .1875rem solid var(--tws-action);
    background: var(--tws-surface-3);
    color: var(--tws-text);
}

body.tws-shell #order-standard_cart .cart-sidebar .list-group-item.active {
    border-left: .1875rem solid var(--tws-action) !important;
    background: var(--tws-surface-3) !important;
    color: var(--tws-text) !important;
}

.tws-shell .sidebar .sidebar-menu-item-wrapper {
    width: 100%;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: var(--tws-space-3);
}

.tws-shell .sidebar .sidebar-menu-item-label {
    min-width: 0;
    flex: 1;
}

.tws-shell .sidebar .sidebar-menu-item-badge .badge,
.tws-shell .sidebar .card-title .badge {
    background: var(--tws-surface-3);
    color: var(--tws-text-body);
}

.tws-shell #main-body .nav-tabs {
    gap: var(--tws-space-1);
    border-bottom-color: var(--tws-border);
}

.tws-shell #main-body .nav-tabs .nav-link {
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
    gap: var(--tws-space-2);
    padding: var(--tws-space-3) var(--tws-space-4);
    border-color: transparent;
    border-radius: var(--tws-radius-md) var(--tws-radius-md) 0 0;
    background: transparent;
    color: var(--tws-text-muted);
}

.tws-shell #main-body .nav-tabs .nav-link:hover,
.tws-shell #main-body .nav-tabs .nav-link:focus {
    border-color: var(--tws-border) var(--tws-border) transparent;
    background: var(--tws-surface-2);
    color: var(--tws-text);
}

.tws-shell #main-body .nav-tabs .nav-link.active {
    border-color: var(--tws-action) var(--tws-border) var(--tws-surface-1);
    background: var(--tws-surface-1);
    color: var(--tws-text);
}

.tws-shell #main-body :where(.tab-content, .product-details, .product-details-tab-container) {
    border-color: var(--tws-border);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

.tws-shell #main-body .product-details-tab-container {
    padding: var(--tws-space-5);
    border: .0625rem solid var(--tws-border);
    border-top: 0;
    border-radius: 0 0 var(--tws-radius-lg) var(--tws-radius-lg);
}

.tws-shell #main-body :where(.bg-white, .bg-light) {
    background: var(--tws-surface-1) !important;
    color: var(--tws-text-body);
}

.tws-shell :where(.dropdown-menu, .modal-content, .popover) {
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
    box-shadow: var(--tws-shadow-sm);
}

.tws-shell .dropdown-item {
    min-height: 2.75rem;
    display: flex;
    align-items: center;
    color: var(--tws-text-body);
}

.tws-shell .dropdown-item:hover,
.tws-shell .dropdown-item:focus,
.tws-shell .dropdown-item.active {
    background: var(--tws-action-subtle);
    color: var(--tws-text);
}

.tws-shell :where(.modal-header, .modal-footer, .popover-header) {
    border-color: var(--tws-border);
    background: var(--tws-surface-2);
    color: var(--tws-text);
}

.tws-shell .modal-body {
    color: var(--tws-text-body);
}

.tws-shell .modal-header .close {
    min-width: 2.75rem;
    min-height: 2.75rem;
    color: var(--tws-text);
    text-shadow: none;
}

@media (min-width: 48rem) {
    .tws-shell #main-body .product-details-tab-container {
        padding: var(--tws-space-6);
    }
}

/* 9.5 Guest support, knowledge and information surfaces */
.tws-shell #main-body .kb-search {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-3);
    margin-bottom: var(--tws-space-6) !important;
}

.tws-shell #main-body label[for="inputKnowledgebaseSearch"],
.tws-shell #main-body label[for="inputDownloadsSearch"] {
    display: block;
    margin-bottom: var(--tws-space-2);
    color: var(--tws-text-body);
    font-weight: 600;
}

.tws-shell #main-body .kb-search > .form-control,
.tws-shell #main-body .kb-search > .input-group-append,
.tws-shell #main-body .kb-search > .input-group-append > .btn {
    width: 100%;
}

.tws-shell #main-body .kb-search > .form-control,
.tws-shell #main-body .kb-search > .input-group-append > .btn {
    border-radius: var(--tws-radius-md);
}

.tws-shell #main-body .kb-category {
    height: calc(100% - var(--tws-space-6));
    overflow: hidden;
    transition: border-color var(--tws-duration-fast) var(--tws-ease), background var(--tws-duration-fast) var(--tws-ease), transform var(--tws-duration-fast) var(--tws-ease);
}

.tws-shell #main-body .kb-category:hover,
.tws-shell #main-body .kb-category:focus-within {
    border-color: var(--tws-action);
    background: var(--tws-surface-2);
    transform: translateY(-.0625rem);
}

.tws-shell #main-body .kb-category > a.card-body {
    min-height: 7rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: var(--tws-space-2);
    color: var(--tws-text);
    text-decoration: none;
}

.tws-shell #main-body .kb-category .h5 {
    display: flex;
    align-items: center;
    gap: var(--tws-space-3);
    color: var(--tws-text);
}

.tws-shell #main-body .kb-category .h5 > i {
    color: var(--tws-action);
}

.tws-shell #main-body .kb-category .badge {
    margin-left: auto;
    background: var(--tws-surface-3);
    color: var(--tws-text-body);
}

.tws-shell #main-body .kb-article-item {
    min-height: var(--tws-control-height);
    padding: var(--tws-space-4) var(--tws-space-5);
    border-color: var(--tws-border);
    background: transparent;
    color: var(--tws-text-body);
    text-decoration: none;
}

.tws-shell #main-body .kb-article-item:hover,
.tws-shell #main-body .kb-article-item:focus {
    background: var(--tws-surface-2);
    color: var(--tws-text);
}

.tws-shell #main-body .kb-article-item > i,
.tws-shell #main-body .kb-article-item > a > i {
    margin-right: var(--tws-space-2);
    color: var(--tws-action) !important;
}

.tws-shell #main-body .kb-article-item small {
    display: block;
    margin-top: var(--tws-space-2);
    line-height: 1.55;
}

.tws-template-announcements #main-body .announcements .announcement {
    padding-block: var(--tws-space-6);
    border-bottom: .0625rem solid var(--tws-border);
}

.tws-template-announcements #main-body .announcements .announcement:first-child {
    padding-top: var(--tws-space-2);
}

.tws-template-announcements #main-body .announcements .announcement:last-child {
    padding-bottom: var(--tws-space-2);
    border-bottom: 0;
}

.tws-template-announcements #main-body .announcements .announcement h2 {
    margin-bottom: var(--tws-space-3);
    font-size: clamp(1.5rem, 6vw, 2rem);
    line-height: 1.25;
}

.tws-template-announcements #main-body .announcements .announcement article,
.tws-template-viewannouncement #main-body article,
.tws-template-knowledgebasearticle #main-body article {
    max-width: var(--tws-container-reading);
    color: var(--tws-text-body);
    line-height: 1.7;
}

.tws-template-announcements #main-body .announcements .list-inline,
.tws-template-viewannouncement #main-body .list-inline,
.tws-template-knowledgebasearticle #main-body .list-inline {
    margin-bottom: var(--tws-space-5);
    color: var(--tws-text-muted);
}

/* 9.9 Authenticated detail, payment and workflow completion */
.tws-shell:where(.tws-template-clientareaproductdetails, .tws-template-clientareadomaindetails, .tws-template-clientareadomaindns, .tws-template-clientareadomaincontactinfo, .tws-template-clientareadomainregisterns, .tws-template-clientareadomainemailforwarding, .tws-template-clientareadomainaddons, .tws-template-clientareacancelrequest, .tws-template-account-paymentmethods, .tws-template-account-paymentmethods-manage, .tws-template-clientareaaddfunds, .tws-template-invoice-payment, .tws-template-upgrade, .tws-template-upgrade-configure, .tws-template-upgradesummary) #main-body .primary-content {
    min-width: 0;
}

.tws-shell:where(.tws-template-account-paymentmethods, .tws-template-account-paymentmethods-manage, .tws-template-clientareaaddfunds, .tws-template-clientareacancelrequest, .tws-template-invoice-payment, .tws-template-upgrade, .tws-template-upgrade-configure, .tws-template-upgradesummary) #main-body .card-body > .card-title:first-child {
    margin-bottom: var(--tws-space-6);
    padding-bottom: var(--tws-space-4);
    border-bottom: .0625rem solid var(--tws-border);
}

.tws-shell:where(.tws-template-account-paymentmethods-manage, .tws-template-clientareaaddfunds, .tws-template-clientareacancelrequest, .tws-template-invoice-payment, .tws-template-upgrade, .tws-template-upgradesummary) #main-body .form-group {
    margin-bottom: var(--tws-space-5);
}

.tws-template-clientareacancelrequest #main-body textarea {
    min-height: 10rem;
    resize: vertical;
}

.tws-template-clientareacancelrequest #main-body .form-group.text-center > .d-inline-block,
.tws-template-clientareacancelrequest #main-body .form-group.text-center select {
    width: 100%;
}

.tws-shell:where(.tws-template-clientareacancelrequest, .tws-template-clientareadomaindetails, .tws-template-clientareadomaindns, .tws-template-clientareadomaincontactinfo, .tws-template-clientareadomainregisterns, .tws-template-clientareadomainemailforwarding, .tws-template-clientareadomainaddons, .tws-template-account-paymentmethods-manage, .tws-template-clientareaaddfunds, .tws-template-upgrade, .tws-template-upgrade-configure, .tws-template-upgradesummary) #main-body :where(.form-group.text-center, .text-center) > :where(.btn, input.btn) {
    width: 100%;
    margin: var(--tws-space-1) 0;
}

.tws-shell:where(.tws-template-account-paymentmethods-manage, .tws-template-invoice-payment) #main-body .form-group.row {
    row-gap: var(--tws-space-2);
}

.tws-shell:where(.tws-template-account-paymentmethods-manage, .tws-template-invoice-payment) #main-body :where(.control-label, .col-form-label) {
    text-align: left !important;
}

.tws-template-account-paymentmethods-manage #main-body :where(.field-error-msg, .form-error) {
    display: block;
    margin-top: var(--tws-space-2);
    color: var(--tws-danger);
    font-size: .875rem;
    line-height: 1.5;
}

.tws-template-account-paymentmethods #main-body .card-body > p:has(.btn) {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-2);
}

.tws-template-account-paymentmethods #main-body .card-body > p:has(.btn) .btn {
    width: 100%;
    margin: 0;
}

.tws-template-account-paymentmethods #payMethodList,
.tws-template-account-paymentmethods #payMethodList tbody {
    width: 100%;
    display: block;
}

.tws-template-account-paymentmethods #payMethodList tr {
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-2);
    margin-bottom: var(--tws-space-4);
    padding: var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
}

.tws-template-account-paymentmethods #payMethodList tr:first-child {
    display: none;
}

.tws-template-account-paymentmethods #payMethodList td {
    width: 100% !important;
    min-width: 0;
    max-width: none !important;
    display: block;
    padding: var(--tws-space-2) 0;
    border: 0;
    background: transparent;
    color: var(--tws-text-body);
    overflow-wrap: anywhere;
    word-break: break-word;
    white-space: normal !important;
}

.tws-template-account-paymentmethods #payMethodList td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: var(--tws-space-1);
    color: var(--tws-text-muted);
    font-size: .75rem;
    font-weight: 700;
    line-height: 1.5;
}

.tws-template-account-paymentmethods #payMethodList td[data-label=""] {
    display: block;
    color: var(--tws-action);
}

.tws-template-account-paymentmethods #payMethodList td:last-child .btn {
    width: 100%;
    margin: var(--tws-space-1) 0;
}

.tws-template-account-paymentmethods #payMethodList .tws-payment-method-empty td {
    display: block;
    padding: var(--tws-space-4);
    color: var(--tws-text-muted);
    text-align: center;
}

.tws-template-account-paymentmethods #payMethodList .tws-payment-method-empty td::before {
    content: none;
}

.tws-template-clientareaaddfunds #main-body .card > .table td {
    width: 50%;
    padding: var(--tws-space-3);
    overflow-wrap: anywhere;
}

.tws-shell:where(.tws-template-upgrade, .tws-template-upgradesummary) #main-body .table,
.tws-template-clientareaproductdetails #main-body .product-details-tab-container .table {
    width: 100%;
    min-width: 40rem;
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.tws-template-upgrade-configure #main-body .card-body > .row {
    row-gap: var(--tws-space-4);
}

.tws-template-upgrade-configure #main-body .btn-block {
    min-height: var(--tws-control-height);
    white-space: normal;
}

.tws-shell:where(.tws-template-clientareaproductdetails, .tws-template-clientareadomaindetails, .tws-template-viewticket, .tws-template-account-paymentmethods, .tws-template-upgrade, .tws-template-upgrade-configure, .tws-template-upgradesummary) #main-body :where(.domain, .product-name, .ticket-subject, .card-title, td, th) {
    overflow-wrap: anywhere;
}

@media (min-width: 36rem) {
    .tws-template-clientareacancelrequest #main-body .form-group.text-center > .d-inline-block,
    .tws-template-clientareacancelrequest #main-body .form-group.text-center select {
        width: auto;
        min-width: 15rem;
    }

    .tws-shell:where(.tws-template-clientareacancelrequest, .tws-template-clientareadomaindetails, .tws-template-clientareadomaindns, .tws-template-clientareadomaincontactinfo, .tws-template-clientareadomainregisterns, .tws-template-clientareadomainemailforwarding, .tws-template-clientareadomainaddons, .tws-template-account-paymentmethods-manage, .tws-template-clientareaaddfunds, .tws-template-upgrade, .tws-template-upgrade-configure, .tws-template-upgradesummary) #main-body :where(.form-group.text-center, .text-center) > :where(.btn, input.btn) {
        width: auto;
        margin: var(--tws-space-1);
    }

    .tws-template-account-paymentmethods #main-body .card-body > p:has(.btn) {
        display: flex;
        flex-wrap: wrap;
    }

    .tws-template-account-paymentmethods #main-body .card-body > p:has(.btn) .btn {
        width: auto;
    }
}

@media (min-width: 48rem) {
    .tws-template-account-paymentmethods #payMethodList {
        display: table;
    }

    .tws-template-account-paymentmethods #payMethodList tbody {
        display: table-row-group;
    }

    .tws-template-account-paymentmethods #payMethodList tr,
    .tws-template-account-paymentmethods #payMethodList tr:first-child {
        display: table-row;
        margin: 0;
        padding: 0;
        border: 0;
        background: transparent;
    }

    .tws-template-account-paymentmethods #payMethodList th,
    .tws-template-account-paymentmethods #payMethodList td,
    .tws-template-account-paymentmethods #payMethodList td[data-label=""],
    .tws-template-account-paymentmethods #payMethodList td:last-child,
    .tws-template-account-paymentmethods #payMethodList .tws-payment-method-empty td {
        display: table-cell;
        width: auto !important;
        max-width: none !important;
        padding: var(--tws-space-3);
        border-top: .0625rem solid var(--tws-border);
        background: transparent;
        text-align: left;
        vertical-align: middle;
    }

    .tws-template-account-paymentmethods #payMethodList td::before {
        content: none;
    }

    .tws-template-account-paymentmethods #payMethodList td:last-child .btn {
        width: auto;
        margin: var(--tws-space-1);
    }
}

.tws-template-contact #main-body .primary-content > .card,
.tws-template-supportticketsubmit-stepone #main-body .primary-content > .card,
.tws-template-supportticketsubmit-steptwo #main-body .primary-content > form,
.tws-template-supportticketsubmit-confirm #main-body .primary-content > .card {
    width: min(100%, var(--tws-container-reading));
    margin-inline: auto;
}

.tws-template-contact #main-body .form-group.row,
.tws-template-supportticketsubmit-steptwo #main-body .form-group {
    row-gap: var(--tws-space-2);
    margin-bottom: var(--tws-space-5);
}

.tws-template-contact #main-body .col-form-label {
    text-align: left !important;
}

.tws-template-contact #main-body textarea,
.tws-template-supportticketsubmit-steptwo #main-body textarea {
    min-height: 10rem;
    resize: vertical;
}

.tws-template-supportticketsubmit-stepone #main-body .primary-content .h5 > a {
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    gap: var(--tws-space-3);
    padding: var(--tws-space-3) var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
    color: var(--tws-text);
    text-decoration: none;
}

.tws-template-supportticketsubmit-stepone #main-body .primary-content .h5 > a:hover,
.tws-template-supportticketsubmit-stepone #main-body .primary-content .h5 > a:focus {
    border-color: var(--tws-action);
    background: var(--tws-action-subtle);
}

@media (min-width: 36rem) {
    .tws-shell #main-body .kb-search {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 0;
    }

    .tws-shell #main-body .kb-search > .form-control {
        border-radius: var(--tws-radius-md) 0 0 var(--tws-radius-md);
    }

    .tws-shell #main-body .kb-search > .input-group-append,
    .tws-shell #main-body .kb-search > .input-group-append > .btn {
        width: auto;
    }

    .tws-shell #main-body .kb-search > .input-group-append > .btn {
        border-radius: 0 var(--tws-radius-md) var(--tws-radius-md) 0;
    }
}

/* 14.6 Public ordering presentation: hosting, domain choice and cart */
.tws-template-products #order-standard_cart .header-lined {
    position: relative;
    margin-bottom: var(--tws-space-8);
    padding-left: var(--tws-space-5);
}

.tws-template-products #order-standard_cart .header-lined::before {
    position: absolute;
    top: 0;
    bottom: var(--tws-space-5);
    left: 0;
    width: .25rem;
    border-radius: var(--tws-radius-sm);
    background: var(--tws-action);
    content: "";
}

.tws-template-products #order-standard_cart .header-lined h1 {
    margin-bottom: var(--tws-space-2);
    font-size: clamp(2rem, 7vw, 3.25rem);
    letter-spacing: -.035em;
    line-height: 1.05;
}

.tws-template-products #order-standard_cart .header-lined p {
    max-width: 42rem;
    margin: 0;
    color: var(--tws-text-body);
    font-size: 1rem;
    line-height: 1.65;
}

.tws-template-products #order-standard_cart #products {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-6);
}

.tws-template-products #order-standard_cart #products > .row {
    display: contents;
}

.tws-template-products #order-standard_cart #products > .row > [class*="col-"] {
    width: 100%;
    max-width: none;
    min-width: 0;
    flex: none;
    padding: 0;
}

.tws-template-products #order-standard_cart #products .product {
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: var(--tws-space-5);
    margin: 0;
    padding: var(--tws-space-5);
    border-top: .25rem solid var(--tws-action);
    background: var(--tws-surface-1);
}

.tws-template-products #order-standard_cart #products .product:hover {
    border-color: var(--tws-border);
    border-top-color: var(--tws-action);
    background: var(--tws-surface-1);
}

.tws-template-products #order-standard_cart #products #product5,
.tws-template-products #order-standard_cart #products #product5:hover {
    border-color: var(--tws-action);
    background: var(--tws-surface-2);
}

.tws-template-products #order-standard_cart #products .product > header {
    width: 100%;
    min-height: 0;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--tws-space-3);
    margin: 0;
    padding: 0 0 var(--tws-space-4);
    border-bottom: .0625rem solid var(--tws-border);
    background: transparent !important;
}

.tws-template-products #order-standard_cart #products .product > header > h2 {
    margin: 0;
    color: var(--tws-text);
    font-size: clamp(1.375rem, 4vw, 1.75rem);
    line-height: 1.25;
}

.tws-template-products #order-standard_cart #products .product-desc {
    width: 100%;
    min-width: 0;
    flex: 1 1 auto;
    float: none;
    padding: 0;
    color: var(--tws-text-body) !important;
}

.tws-template-products #order-standard_cart #products .package-details > br,
.tws-template-products #order-standard_cart #products .package-details > p > br:first-child,
.tws-template-products #order-standard_cart #products .package-details > p > br:last-child,
.tws-template-products #order-standard_cart #products .package-details > ul > br,
.tws-template-products #order-standard_cart #products .package-details > p:empty,
.tws-template-products #order-standard_cart #products .product-desc > p:empty,
.tws-template-products #order-standard_cart #products .product-desc > ul:empty {
    display: none;
}

.tws-template-products #order-standard_cart #products .package-details > :first-child {
    margin-top: 0;
}

.tws-template-products #order-standard_cart #products .package-details > :last-child {
    margin-bottom: 0;
}

.tws-template-products #order-standard_cart #products .package-details h3 {
    margin: var(--tws-space-5) 0 var(--tws-space-2);
    color: var(--tws-text);
    font-size: 1.0625rem;
    line-height: 1.45;
}

.tws-template-products #order-standard_cart #products .package-details > h3:first-of-type {
    margin-top: 0;
}

.tws-template-products #order-standard_cart #products .package-details p {
    margin: 0 0 var(--tws-space-4);
    line-height: 1.65;
}

.tws-template-products #order-standard_cart #products .package-details ul {
    display: grid;
    gap: var(--tws-space-3);
    margin: 0 0 var(--tws-space-5);
    padding: 0;
    list-style: none;
}

.tws-template-products #order-standard_cart #products .package-details li {
    position: relative;
    min-width: 0;
    padding-left: var(--tws-space-6);
    color: var(--tws-text-body);
    line-height: 1.5;
}

.tws-template-products #order-standard_cart #products .package-details li::before {
    position: absolute;
    top: .2em;
    left: .25rem;
    width: .45rem;
    height: .75rem;
    border: solid var(--tws-action);
    border-width: 0 .125rem .125rem 0;
    transform: rotate(45deg);
    content: "";
}

.tws-template-products #order-standard_cart #products .package-details li strong {
    color: var(--tws-text);
    font-weight: 600;
}

.tws-template-products #order-standard_cart #products .product > footer {
    width: 100%;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: var(--tws-space-4);
    margin-top: auto;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    padding-top: var(--tws-space-5);
    border-top: .0625rem solid var(--tws-border);
    float: none;
}

.tws-template-products #order-standard_cart #products .product-pricing {
    font-size: .9375rem;
    line-height: 1.5;
}

.tws-template-products #order-standard_cart #products .product-pricing .price {
    display: inline-block;
    margin-block: var(--tws-space-1);
    color: var(--tws-text);
    font-size: clamp(2rem, 7vw, 2.75rem);
    font-weight: 700;
    letter-spacing: -.035em;
    line-height: 1.05;
}

.tws-template-products #order-standard_cart #products .btn-order-now {
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--tws-space-2);
}

.tws-template-configureproductdomain #order-standard_cart .domain-selection-options {
    gap: var(--tws-space-4);
}

.tws-template-configureproductdomain #order-standard_cart .domain-selection-options .option {
    padding: var(--tws-space-4);
}

.tws-template-configureproductdomain #order-standard_cart .domain-input-group {
    min-width: 0;
    margin-top: var(--tws-space-3);
}

.tws-template-configureproductdomain #order-standard_cart #domainregister {
    padding: var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2) !important;
}

.tws-template-configureproductdomain #order-standard_cart #domainregister .row {
    margin-inline: 0;
    row-gap: var(--tws-space-3);
}

.tws-template-configureproductdomain #order-standard_cart #domainregister .row > [class*="col-"] {
    width: 100%;
    max-width: none;
    flex: 0 0 100%;
    margin-left: 0;
    padding-inline: 0;
}

.tws-template-configureproductdomain #order-standard_cart #domainregister #message {
    width: 100%;
    min-height: 9rem;
    padding: var(--tws-space-3) var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1) !important;
    color: var(--tws-text);
    line-height: 1.55;
    resize: vertical;
}

.tws-template-configureproductdomain #order-standard_cart #domainregister #message::placeholder {
    color: var(--tws-text-muted);
    opacity: 1;
}

.tws-template-configureproductdomain #order-standard_cart #domainregister #message:focus {
    border-color: var(--tws-action);
    outline: 0;
    box-shadow: 0 0 0 .1875rem var(--tws-focus);
}

.tws-template-configureproductdomain #order-standard_cart #domainregister :where(.btn, .btn-group, .btn-group > .btn) {
    width: 100%;
    min-height: var(--tws-control-height);
}

.tws-template-configureproductdomain #order-standard_cart #domainregister label {
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
    gap: var(--tws-space-2);
    margin: 0;
    color: var(--tws-text-body);
}

.tws-template-configureproductdomain #order-standard_cart #domainregister label input[type="checkbox"] {
    width: 1rem;
    height: 1rem;
    margin: 0;
}

.tws-template-viewcart #order-standard_cart .tws-cart-field-label {
    display: block;
    margin-bottom: var(--tws-space-2);
    color: var(--tws-text-body);
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
}

.tws-template-viewcart #order-standard_cart #inputPromotionCode {
    padding-left: var(--tws-space-4);
}

@media (min-width: 48rem) {
    .tws-template-products #order-standard_cart #products .product > footer {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .tws-template-products #order-standard_cart #products .btn-order-now {
        width: auto;
        min-width: 8.5rem;
    }

    .tws-template-configureproductdomain #order-standard_cart .domain-selection-options .option {
        padding: var(--tws-space-5);
    }

    .tws-template-configureproductdomain #order-standard_cart #domainregister > .row:first-child {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: stretch;
        gap: var(--tws-space-3);
    }

    .tws-template-configureproductdomain #order-standard_cart #domainregister > .row:first-child > [class*="col-"] {
        width: auto;
        max-width: none;
        flex: none;
    }

    .tws-template-configureproductdomain #order-standard_cart #domainregister > .row:first-child .btn {
        width: auto;
        min-width: 7rem;
    }
}

@media (min-width: 62rem) {
    .tws-template-products #order-standard_cart > .row {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: var(--tws-space-8);
        margin-inline: 0;
    }

    .tws-template-products #order-standard_cart > .row > .cart-body {
        width: 100%;
        max-width: none;
        order: 1;
        padding-inline: 0;
    }

    .tws-template-products #order-standard_cart > .row > .cart-sidebar {
        width: 100%;
        max-width: none;
        display: grid;
        grid-template-columns: minmax(14rem, .7fr) minmax(0, 1.3fr);
        align-items: start;
        gap: var(--tws-space-5);
        order: 2;
        padding-inline: 0;
    }

    .tws-template-products #order-standard_cart .cart-sidebar .card-sidebar {
        margin-bottom: 0 !important;
    }

    .tws-template-products #order-standard_cart .cart-sidebar .card-sidebar:last-child .list-group {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .tws-template-products #order-standard_cart .cart-sidebar .card-sidebar:last-child .list-group-item {
        min-width: 0;
        border-left-width: 0;
    }

    .tws-template-products #order-standard_cart #products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 75rem) {
    .tws-template-products #order-standard_cart #products {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* 14.7 Public help, reading and contact presentation */
.tws-template-knowledgebasearticle #main-body h1,
.tws-template-viewannouncement #main-body h1 {
    max-width: var(--tws-container-reading);
    overflow-wrap: anywhere;
}

.tws-reading-actions {
    max-width: var(--tws-container-reading);
    display: flex;
    justify-content: flex-start;
    margin: calc(var(--tws-space-3) * -1) 0 var(--tws-space-6);
}

.tws-reading-actions .btn {
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
    gap: var(--tws-space-2);
}

.tws-shell:where(.tws-template-knowledgebasearticle, .tws-template-viewannouncement) #main-body article :where(p, ul, ol) {
    margin-bottom: var(--tws-space-4);
}

.tws-shell:where(.tws-template-knowledgebasearticle, .tws-template-viewannouncement) #main-body article :where(ul, ol) {
    padding-left: var(--tws-space-6);
}

.tws-shell:where(.tws-template-knowledgebasearticle, .tws-template-viewannouncement) #main-body article li + li {
    margin-top: var(--tws-space-2);
}

.tws-shell:where(.tws-template-knowledgebasearticle, .tws-template-viewannouncement) #main-body article hr {
    margin-block: var(--tws-space-8);
    border: 0;
    border-top: .0625rem solid var(--tws-border);
}

.tws-shell:where(.tws-template-knowledgebasearticle, .tws-template-viewannouncement) #main-body article code {
    padding: var(--tws-space-1) var(--tws-space-2);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-sm);
    background: var(--tws-surface-2);
    color: var(--tws-text);
    overflow-wrap: anywhere;
    word-break: break-word;
}

.tws-shell:where(.tws-template-knowledgebasearticle, .tws-template-viewannouncement) #main-body article pre {
    max-width: 100%;
    padding: var(--tws-space-4);
    overflow-x: auto;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
    color: var(--tws-text-body);
    -webkit-overflow-scrolling: touch;
}

.tws-shell:where(.tws-template-knowledgebasearticle, .tws-template-viewannouncement) #main-body article a {
    text-decoration: underline;
    text-underline-offset: .18em;
}

.tws-template-announcements #main-body .announcements .announcement > .list-inline {
    display: flex;
    flex-wrap: wrap;
    gap: var(--tws-space-2) var(--tws-space-4);
}

.tws-template-contact #main-body .form-group.row > :where(label, [class*="col-"]) {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
    padding-inline: 0;
}

.tws-template-contact #main-body #default-captcha-domainchecker {
    gap: var(--tws-space-3) 0;
}

.tws-template-contact #main-body #default-captcha-domainchecker > :where(p, .col-6) {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
}

.tws-template-contact #main-body #default-captcha-domainchecker > p {
    margin: 0;
    color: var(--tws-text-body);
    text-align: left;
}

.tws-template-contact #main-body #default-captcha-domainchecker .captchaimage {
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    justify-content: center;
}

.tws-template-contact #main-body #inputCaptchaImage {
    max-width: 100%;
    height: auto;
}

.tws-template-contact #main-body form > .text-center:last-child .btn-primary {
    width: 100%;
}

@media (min-width: 36rem) {
    .tws-reading-actions {
        justify-content: flex-end;
    }

    .tws-template-contact #main-body .form-group.row > label {
        width: 25%;
        max-width: 25%;
        flex: 0 0 25%;
        padding-right: var(--tws-space-4);
    }

    .tws-template-contact #main-body .form-group.row > [class*="col-"]:not(label) {
        width: 75%;
        max-width: 75%;
        flex: 0 0 75%;
    }

    .tws-template-contact #main-body #default-captcha-domainchecker > .col-6 {
        width: 50%;
        max-width: 50%;
        flex: 0 0 50%;
    }

    .tws-template-contact #main-body form > .text-center:last-child .btn-primary {
        width: auto;
        min-width: 10rem;
    }
}

/* 18. Visual fidelity batch 62: approved public header and hero */
.tws-homepage-view .master-breadcrumb {
    display: none;
}

.tws-homepage-view #main-body {
    padding-top: 0;
}

body.tws-shell header.header .navbar-brand {
    display: inline-flex;
    min-width: 0;
    min-height: var(--tws-control-height);
    flex: 1 1 auto;
    align-items: center;
    gap: var(--tws-space-2);
    margin-right: var(--tws-space-2) !important;
    white-space: nowrap;
}

body.tws-shell header.header .tws-brand-lockup {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: var(--tws-space-2);
}

body.tws-shell header.header .tws-brand-symbol {
    position: relative;
    width: 1.5rem;
    height: 1.375rem;
    flex: 0 0 auto;
}

body.tws-shell header.header .tws-brand-symbol::before,
body.tws-shell header.header .tws-brand-symbol::after {
    position: absolute;
    bottom: calc(var(--tws-space-1) * -1);
    width: 30%;
    height: .125rem;
    border-radius: 1px;
    content: "";
}

body.tws-shell header.header .tws-brand-symbol::before {
    left: 5%;
    background: var(--tws-action);
}

body.tws-shell header.header .tws-brand-symbol::after {
    right: 5%;
    background: var(--tws-brand);
}

body.tws-shell header.header .tws-brand-symbol__pyramid {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    isolation: isolate;
    overflow: hidden;
    background: linear-gradient(90deg, var(--tws-brand-soft) 0 18%, var(--tws-brand) 40% 48.5%, transparent 48.5% 51.5%, var(--tws-action) 51.5% 78%, var(--tws-action-active) 100%);
    clip-path: polygon(50% 0, 100% 100%, 66% 100%, 50% 70%, 34% 100%, 0 100%);
}

body.tws-shell header.header .tws-brand-symbol__pyramid::before,
body.tws-shell header.header .tws-brand-symbol__pyramid::after {
    position: absolute;
    inset: 0;
    pointer-events: none;
    content: "";
}

body.tws-shell header.header .tws-brand-symbol__pyramid::before {
    background: var(--tws-text);
    opacity: .16;
    clip-path: polygon(50% 0, 50% 70%, 34% 100%, 0 100%);
}

body.tws-shell header.header .tws-brand-symbol__pyramid::after {
    background: var(--tws-bg-deep);
    opacity: .36;
    clip-path: polygon(50% 70%, 66% 100%, 100% 100%, 50% 0);
}

body.tws-shell header.header .tws-brand-wordmark {
    display: flex;
    height: 1.375rem;
    flex: 0 0 auto;
    flex-direction: column;
    justify-content: center;
    gap: calc(var(--tws-space-1) / 2);
    font-family: "Big Shoulders Display", "Arial Narrow", sans-serif;
    font-size: 1.375rem;
    font-weight: 600;
    line-height: 1;
    /* Optical alignment includes the symbol's underline overhang. */
    transform: translateY(calc(var(--tws-space-1) - .0375rem));
}

body.tws-shell header.header .tws-brand-wordmark__top {
    color: var(--tws-brand);
    font-size: .72em;
    letter-spacing: .02em;
    line-height: .82;
}

body.tws-shell header.header .tws-brand-wordmark__bottom {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    color: var(--tws-action);
    font-size: .38em;
    letter-spacing: 0;
    line-height: .82;
}

body.tws-shell header.header > .navbar-light > .container {
    flex-wrap: nowrap;
}

body.tws-shell header.header > .navbar-light .toolbar {
    flex: 0 0 auto;
    flex-direction: row;
    align-items: center;
    gap: var(--tws-space-2);
}

body.tws-shell header.header > .navbar-light .toolbar > .nav-item {
    margin-left: 0 !important;
}

body.tws-shell header.header > .navbar-light .toolbar .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    font-size: 1rem;
}

@media (min-width: 36rem) {
    body.tws-shell header.header .navbar-brand {
        margin-right: var(--tws-space-4) !important;
    }

    body.tws-shell header.header .tws-brand-lockup {
        gap: var(--tws-space-3);
    }

    body.tws-shell header.header .tws-brand-symbol {
        width: 2rem;
        height: 1.8125rem;
    }

    body.tws-shell header.header .tws-brand-wordmark {
        height: 1.8125rem;
        font-size: 1.8125rem;
    }

    body.tws-shell header.header > .navbar-light .toolbar {
        gap: 0;
    }

    body.tws-shell header.header > .navbar-light .toolbar > .nav-item {
        margin-left: var(--tws-space-4) !important;
    }
}

.tws-homepage-view .tws-homepage {
    gap: var(--tws-space-20);
}

.tws-homepage-view .tws-home-hero {
    position: relative;
    display: block;
    isolation: isolate;
    min-height: 0;
    padding: var(--tws-space-16) var(--tws-space-5);
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.tws-homepage-view .tws-home-hero::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: radial-gradient(circle at 76% 40%, rgb(25 198 179 / 7%), transparent 42%);
    content: "";
    pointer-events: none;
}

.tws-homepage-view .tws-home-hero__copy {
    position: relative;
    z-index: 1;
    max-width: 39rem;
}

.tws-homepage-view .tws-home-hero h1 {
    max-width: 15ch;
    margin-bottom: var(--tws-space-6);
    font-size: clamp(2.5rem, 11vw, 4rem);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -.045em;
}

.tws-homepage-view .tws-home-hero h1 span {
    display: block;
}

.tws-homepage-view .tws-home-lead {
    max-width: 39ch;
    margin-bottom: var(--tws-space-8);
    color: var(--tws-text-body);
    font-size: 1.0625rem;
    line-height: 1.65;
}

.tws-homepage-view .tws-home-actions {
    gap: var(--tws-space-4);
}

.tws-homepage-view .tws-home-actions .tws-button {
    min-width: min(100%, 10.5rem);
    min-height: 3.25rem;
}

.tws-homepage-view .tws-home-hero__visual {
    display: none;
    position: absolute;
    z-index: 0;
    top: 50%;
    right: calc(var(--tws-space-20) * -1);
    width: min(70vw, 39rem);
    opacity: .18;
    transform: translateY(-50%);
    pointer-events: none;
}

.tws-homepage-view .tws-home-illustration {
    width: 100%;
    height: auto;
    display: block;
    overflow: visible;
    color: var(--tws-border-strong);
}

.tws-homepage-view .tws-home-illustration__lines {
    stroke-width: 2;
}

.tws-homepage-view .tws-home-illustration__accent {
    fill: var(--tws-action);
}

@media (min-width: 36rem) {
    .tws-homepage-view .tws-home-hero {
        padding-inline: var(--tws-space-8);
    }
}

/* 18.4 Domain-choice visual refinement 69 */
.tws-template-configureproductdomain #order-standard_cart .header-lined {
    position: relative;
    margin-bottom: var(--tws-space-8);
    padding-left: var(--tws-space-5);
}

.tws-template-configureproductdomain #order-standard_cart .header-lined::before {
    position: absolute;
    top: 0;
    bottom: var(--tws-space-5);
    left: 0;
    width: .25rem;
    border-radius: var(--tws-radius-sm);
    background: var(--tws-action);
    content: "";
}

.tws-template-configureproductdomain #order-standard_cart .header-lined h1 {
    margin-bottom: 0;
    font-size: clamp(2rem, 7vw, 3.25rem);
    letter-spacing: -.035em;
    line-height: 1.05;
}

.tws-template-configureproductdomain #order-standard_cart .domain-selection-options {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-4);
}

.tws-template-configureproductdomain #order-standard_cart .domain-selection-options > .option {
    min-width: 0;
    overflow: visible;
    padding: 0;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
}

.tws-template-configureproductdomain #order-standard_cart .domain-selection-options > .option:has(input[name="domainoption"]:checked) {
    border-color: var(--tws-action);
    background: var(--tws-surface-2);
}

.tws-template-configureproductdomain #order-standard_cart .domain-selection-options > .option > label {
    width: 100%;
    min-height: 4rem;
    display: flex;
    align-items: center;
    gap: var(--tws-space-3);
    margin: 0;
    padding: var(--tws-space-3) var(--tws-space-4);
    color: var(--tws-text);
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.4;
    cursor: pointer;
}

.tws-template-configureproductdomain #order-standard_cart .domain-selection-options .iradio_square-blue {
    width: 1.5rem;
    height: 1.5rem;
    flex: 0 0 1.5rem;
    margin: 0;
    border: .125rem solid var(--tws-border-strong);
    border-radius: 50%;
    background: transparent !important;
}

.tws-template-configureproductdomain #order-standard_cart .domain-selection-options .iradio_square-blue.checked {
    border-color: var(--tws-action);
    background: var(--tws-action) !important;
    box-shadow: inset 0 0 0 .3125rem var(--tws-surface-1);
}

.tws-template-configureproductdomain #order-standard_cart .domain-selection-options > .option > .domain-input-group {
    min-width: 0;
    margin: 0;
    padding: var(--tws-space-5);
    border: 0;
    border-top: .0625rem solid var(--tws-border);
    border-radius: 0;
    background: transparent !important;
}

.tws-template-configureproductdomain #order-standard_cart .domain-input-group > .row,
.tws-template-configureproductdomain #order-standard_cart .domain-input-group .domains-row {
    min-width: 0;
    margin-inline: 0;
}

.tws-template-configureproductdomain #order-standard_cart #domainregister > .row:first-child {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    gap: var(--tws-space-3);
}

.tws-template-configureproductdomain #order-standard_cart #domainregister > .row:first-child > [class*="col-"],
.tws-template-configureproductdomain #order-standard_cart #domainregister > .row:nth-of-type(2) > [class*="col-"] {
    width: 100%;
    max-width: none;
    min-width: 0;
    flex: none;
    margin: 0;
    padding: 0;
}

.tws-template-configureproductdomain #order-standard_cart #domainregister #message {
    min-height: 8rem;
}

.tws-template-configureproductdomain #order-standard_cart #domainregister > .row:nth-of-type(2) {
    margin-top: var(--tws-space-4);
}

.tws-template-configureproductdomain #order-standard_cart #domainregister > .row:nth-of-type(2) .domains-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-3);
}

.tws-template-configureproductdomain #order-standard_cart #domainregister .btn-group,
.tws-template-configureproductdomain #order-standard_cart #domainregister .multiselect.btn {
    width: 100% !important;
    min-width: 0;
    margin: 0;
}

.tws-template-configureproductdomain #order-standard_cart #domainregister .multiselect.btn {
    padding-inline: var(--tws-space-4);
    text-align: left;
}

.tws-template-configureproductdomain #order-standard_cart #domainregister .multiselect.btn .caret {
    margin-left: auto;
}

.tws-template-configureproductdomain #order-standard_cart #domainregister > .row:nth-of-type(2) .domains-row > label {
    width: 100%;
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
    gap: var(--tws-space-2);
    margin: 0;
    padding: 0 var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
}

.tws-template-configureproductdomain #order-standard_cart #domainregister > .row:nth-of-type(2) .domains-row > label:hover {
    border-color: var(--tws-border-strong);
}

.tws-template-configureproductdomain #order-standard_cart #DomainSearchResults,
.tws-template-configureproductdomain #order-standard_cart #searchDomainInfo,
.tws-template-configureproductdomain #order-standard_cart .suggested-domains {
    border-color: var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

@media (min-width: 48rem) {
    .tws-template-configureproductdomain #order-standard_cart #domainregister > .row:first-child {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .tws-template-configureproductdomain #order-standard_cart #domainregister > .row:first-child .btn {
        width: auto;
        min-width: 8.5rem;
    }

    .tws-template-configureproductdomain #order-standard_cart #domainregister > .row:nth-of-type(2) .domains-row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 62rem) {
    .tws-template-configureproductdomain #order-standard_cart > .row {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: var(--tws-space-8);
        margin-inline: 0;
    }

    .tws-template-configureproductdomain #order-standard_cart > .row > .cart-body {
        width: 100%;
        max-width: none;
        order: 1;
        padding-inline: 0;
    }

    .tws-template-configureproductdomain #order-standard_cart > .row > .cart-sidebar {
        width: 100%;
        max-width: none;
        display: grid;
        grid-template-columns: minmax(14rem, .7fr) minmax(0, 1.3fr);
        align-items: start;
        gap: var(--tws-space-5);
        order: 2;
        padding-inline: 0;
    }

    .tws-template-configureproductdomain #order-standard_cart .cart-sidebar .card-sidebar {
        margin-bottom: 0 !important;
    }

    .tws-template-configureproductdomain #order-standard_cart .cart-sidebar .card-sidebar:last-child .list-group {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .tws-template-configureproductdomain #order-standard_cart .cart-sidebar .card-sidebar:last-child .list-group-item {
        min-width: 0;
        border-left-width: 0;
    }

    .tws-template-configureproductdomain #order-standard_cart .domain-selection-options:has(> .option:nth-child(2):last-child) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tws-template-configureproductdomain #order-standard_cart .domain-selection-options:has(> .option:nth-child(3):last-child) {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .tws-template-configureproductdomain #order-standard_cart .domain-selection-options:has(> .option:nth-child(4):last-child) {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .tws-template-configureproductdomain #order-standard_cart .domain-selection-options:has(> .option:nth-child(5):last-child) {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .tws-template-configureproductdomain #order-standard_cart .domain-selection-options > .option {
        display: contents;
    }

    .tws-template-configureproductdomain #order-standard_cart .domain-selection-options > .option > label {
        min-height: 5rem;
        grid-row: 1;
        align-self: stretch;
        padding: var(--tws-space-4);
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-lg);
        background: var(--tws-surface-1);
    }

    .tws-template-configureproductdomain #order-standard_cart .domain-selection-options > .option:has(input[name="domainoption"]:checked) > label {
        border-color: var(--tws-action);
        background: var(--tws-surface-2);
        box-shadow: inset 0 -.25rem 0 var(--tws-action);
    }

    .tws-template-configureproductdomain #order-standard_cart .domain-selection-options > .option > .domain-input-group {
        grid-row: 2;
        grid-column: 1 / -1;
        padding: var(--tws-space-6);
        border: .0625rem solid var(--tws-border);
        border-radius: var(--tws-radius-lg);
        background: var(--tws-surface-2) !important;
    }
}

/* 15.2 Homepage domain-search visual fidelity */
.tws-homepage-view #frmDomainHomepage .home-domain-search {
    border: 0;
    background: transparent !important;
}

.tws-homepage-view #frmDomainHomepage .home-domain-search > .container {
    width: 100%;
    max-width: none;
    padding-inline: 0;
}

.tws-homepage-view #frmDomainHomepage .home-domain-search .p-5 {
    display: grid;
    gap: var(--tws-space-6);
    padding: var(--tws-space-6) !important;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: linear-gradient(145deg, var(--tws-surface-1), var(--tws-bg-deep));
}

.tws-homepage-view #frmDomainHomepage .home-domain-search h2 {
    max-width: 18ch;
    margin: 0;
    color: var(--tws-text);
    font-size: clamp(1.875rem, 7vw, 2.5rem);
    line-height: 1.15;
    text-align: left !important;
}

.tws-homepage-view #frmDomainHomepage .input-group-wrapper {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

.tws-homepage-view #frmDomainHomepage .advanced-input {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-3);
    align-items: stretch;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.tws-homepage-view #frmDomainHomepage .advanced-input > :where(textarea, .multiselect-native-select, label, .input-group-append),
.tws-homepage-view #frmDomainHomepage .advanced-input .btn-group,
.tws-homepage-view #frmDomainHomepage .advanced-input .multiselect {
    width: 100%;
    min-width: 0;
}

.tws-homepage-view #frmDomainHomepage :where(textarea, input.form-control) {
    width: 100%;
    min-height: 7.5rem;
    padding: var(--tws-space-4);
    border: .0625rem solid var(--tws-border-strong);
    border-radius: var(--tws-radius-md);
    background: var(--tws-bg-deep);
    color: var(--tws-text);
    line-height: 1.55;
    resize: vertical;
}

.tws-homepage-view #frmDomainHomepage :where(textarea, input.form-control)::placeholder {
    color: var(--tws-text-muted);
    opacity: 1;
}

.tws-homepage-view #frmDomainHomepage .advanced-input > label {
    width: 100%;
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    gap: var(--tws-space-2);
    margin: 0;
    padding-inline: var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
    color: var(--tws-text-body);
}

.tws-homepage-view #frmDomainHomepage input[type="checkbox"] {
    accent-color: var(--tws-action);
}

.tws-homepage-view #frmDomainHomepage .input-group-append {
    gap: var(--tws-space-3);
    margin-left: 0;
}

.tws-homepage-view #frmDomainHomepage .advanced-input :where(.btn-group > .btn, .input-group-append > .btn) {
    margin: 0 !important;
}

.tws-homepage-view #frmDomainHomepage :where(#btnDomainSearch, #btnDomainSearch2) {
    border-color: var(--tws-action) !important;
    background: var(--tws-action) !important;
    color: var(--tws-text-on-action) !important;
}

.tws-homepage-view #frmDomainHomepage :where(#btnTransfer, #btnTransfer2) {
    border-color: var(--tws-action) !important;
    background: transparent !important;
    color: var(--tws-text) !important;
}

.tws-homepage-view #frmDomainHomepage :where(#btnDomainSearch, #btnDomainSearch2):hover,
.tws-homepage-view #frmDomainHomepage :where(#btnDomainSearch, #btnDomainSearch2):focus {
    border-color: var(--tws-action-hover) !important;
    background: var(--tws-action-hover) !important;
}

.tws-homepage-view #frmDomainHomepage :where(#btnTransfer, #btnTransfer2):hover,
.tws-homepage-view #frmDomainHomepage :where(#btnTransfer, #btnTransfer2):focus {
    border-color: var(--tws-action-hover) !important;
    background: var(--tws-action) !important;
    color: var(--tws-text-on-action) !important;
}

.tws-homepage-view #frmDomainHomepage :where(#btnDomainSearch, #btnDomainSearch2, #btnTransfer, #btnTransfer2):active {
    border-color: var(--tws-action-active) !important;
    background: var(--tws-action-active) !important;
    color: var(--tws-text-on-action) !important;
}

.tws-homepage-view #frmDomainHomepage .btn-link {
    justify-self: start;
    min-height: var(--tws-control-height);
    padding-inline: 0;
    color: var(--tws-action);
    text-decoration: underline;
    text-underline-offset: .18em;
}

@media (min-width: 36rem) {
    .tws-homepage-view #frmDomainHomepage .home-domain-search .p-5 {
        padding: var(--tws-space-8) !important;
    }

    .tws-homepage-view #frmDomainHomepage .input-group-append {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 62rem) {
    .tws-homepage-view #frmDomainHomepage .home-domain-search h2 {
        max-width: none;
    }

    .tws-homepage-view #frmDomainHomepage .advanced-input {
        grid-template-columns: minmax(20rem, 1fr) minmax(9rem, auto) minmax(9rem, auto) minmax(8rem, auto);
        grid-template-rows: minmax(var(--tws-control-height), auto) minmax(var(--tws-control-height), auto);
    }

    .tws-homepage-view #frmDomainHomepage .advanced-input > textarea {
        min-height: 0;
        margin: 0;
        grid-column: 1;
        grid-row: 1 / 3;
    }

    .tws-homepage-view #frmDomainHomepage .advanced-input > .input-group-append {
        width: auto;
        position: static;
        inset: auto;
        grid-column: 2 / -1;
    }
}

@media (min-width: 48rem) {
    .tws-homepage-view .tws-home-hero__visual {
        display: block;
    }
}

@media (min-width: 62rem) {
    .tws-homepage-view .tws-home-hero {
        padding-block: var(--tws-space-20);
        padding-inline: var(--tws-space-6);
    }

    .tws-homepage-view .tws-home-hero__visual {
        right: 0;
        width: min(56%, 39rem);
        opacity: .72;
        -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 30%);
        mask-image: linear-gradient(to right, transparent 0%, #000 30%);
    }

    .tws-homepage-view .tws-home-hero h1 span {
        white-space: nowrap;
    }
}

@media (min-width: 62rem) and (max-width: 74.999rem) {
    body.tws-shell header.header:not(:has(.topbar)) {
        position: relative;
        border-bottom: .0625rem solid var(--tws-border);
    }

    body.tws-shell header.header:not(:has(.topbar)) > .navbar-light {
        min-height: 4.75rem;
        padding-block: 0;
    }

    body.tws-shell header.header:not(:has(.topbar)) > .navbar-light .container {
        position: relative;
        z-index: 2;
    }

    body.tws-shell header.header:not(:has(.topbar)) > .navbar-light form,
    body.tws-shell header.header:not(:has(.topbar)) .main-navbar-wrapper form,
    body.tws-shell header.header:not(:has(.topbar)) > .navbar-light .toolbar .d-xl-none {
        display: none !important;
    }

    body.tws-shell header.header:not(:has(.topbar)) .main-navbar-wrapper {
        position: absolute;
        z-index: 3;
        inset: auto 0 0;
        min-height: 4.75rem;
        padding-block: 0;
        border: 0;
        background: transparent;
        pointer-events: none;
    }

    body.tws-shell header.header:not(:has(.topbar)) .main-navbar-wrapper > .container {
        min-height: 4.75rem;
        padding-left: 17rem;
        padding-right: 4.5rem;
    }

    body.tws-shell header.header:not(:has(.topbar)) .main-navbar-wrapper .navbar-collapse {
        min-height: 4.75rem;
        display: flex !important;
        pointer-events: auto;
    }

    body.tws-shell header.header:not(:has(.topbar)) .main-navbar-wrapper .navbar-nav {
        flex-direction: row;
        align-items: center;
    }

    body.tws-shell header.header:not(:has(.topbar)) .main-navbar-wrapper #nav {
        justify-content: center;
        margin-inline: auto !important;
    }

    body.tws-shell header.header:not(:has(.topbar)) .main-navbar-wrapper .navbar-nav > li > a {
        min-height: 2.75rem;
        padding-inline: var(--tws-space-4);
    }

    body.tws-shell header.header:not(:has(.topbar)) .main-navbar-wrapper .navbar-nav.ml-auto > li > a {
        border: .0625rem solid var(--tws-action);
        color: var(--tws-text);
    }

    body.tws-shell header.header:not(:has(.topbar)) .toolbar {
        margin-left: auto;
    }
}

@media (min-width: 62rem) {
    .tws-homepage-view .tws-home-hero {
        padding-inline: var(--tws-space-8);
    }
}

@media (min-width: 75rem) {
    body.tws-shell header.header {
        position: relative;
        border-bottom: .0625rem solid var(--tws-border);
    }

    body.tws-shell header.header > .navbar-light {
        min-height: 4.75rem;
        padding-block: 0;
    }

    body.tws-shell header.header > .navbar-light .container {
        position: relative;
        z-index: 2;
    }

    body.tws-shell header.header > .navbar-light form,
    body.tws-shell header.header .main-navbar-wrapper form {
        display: none !important;
    }

    body.tws-shell header.header > .navbar-light .toolbar .d-xl-none {
        display: none !important;
    }

    body.tws-shell header.header .main-navbar-wrapper {
        position: absolute;
        z-index: 3;
        inset: auto 0 0;
        min-height: 4.75rem;
        padding-block: 0;
        border: 0;
        background: transparent;
        pointer-events: none;
    }

    body.tws-shell header.header .main-navbar-wrapper > .container {
        min-height: 4.75rem;
        padding-left: 17rem;
        padding-right: 4.5rem;
    }

    body.tws-shell header.header .main-navbar-wrapper .navbar-collapse {
        min-height: 4.75rem;
        display: flex !important;
        pointer-events: auto;
    }

    body.tws-shell header.header .main-navbar-wrapper .navbar-nav {
        flex-direction: row;
        align-items: center;
    }

    body.tws-shell header.header .main-navbar-wrapper #nav {
        justify-content: center;
        margin-inline: auto !important;
    }

    body.tws-shell header.header .main-navbar-wrapper .navbar-nav > li > a {
        min-height: 2.75rem;
        padding-inline: var(--tws-space-4);
    }

    body.tws-shell header.header .main-navbar-wrapper .navbar-nav.ml-auto > li > a {
        border: .0625rem solid var(--tws-action);
        color: var(--tws-text);
    }

    body.tws-shell header.header .toolbar {
        margin-left: auto;
    }

}

/* 18.5 Register Domain visual refinement 70 */
.tws-template-domainregister #order-standard_cart .header-lined {
    position: relative;
    margin-bottom: var(--tws-space-8);
    padding-left: var(--tws-space-5);
}

.tws-template-domainregister #order-standard_cart .header-lined::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: .25rem;
    border-radius: var(--tws-radius-sm);
    background: var(--tws-action);
    content: "";
}

.tws-template-domainregister #order-standard_cart .header-lined h1 {
    margin-bottom: 0;
    font-size: clamp(2rem, 7vw, 3.25rem);
    letter-spacing: -.035em;
    line-height: 1.05;
}

.tws-template-domainregister #order-standard_cart .cart-body > p:first-of-type {
    max-width: 42rem;
    margin: 0 0 var(--tws-space-6);
    font-size: 1rem;
    line-height: 1.65;
}

.tws-template-domainregister #order-standard_cart .domain-checker-container {
    max-width: none;
    margin: 0 0 var(--tws-space-10);
    padding: var(--tws-space-5);
    border-top: .25rem solid var(--tws-action);
    background: linear-gradient(145deg, var(--tws-surface-1), var(--tws-bg-deep)) !important;
}

.tws-template-domainregister #order-standard_cart #message {
    min-height: 8rem;
    background: var(--tws-surface-1);
}

.tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box > label {
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
    gap: var(--tws-space-2);
    padding-inline: var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
}

.tws-template-domainregister #order-standard_cart #frmDomainChecker input[type="checkbox"] {
    width: 1rem;
    height: 1rem;
    margin: 0;
    accent-color: var(--tws-action);
}

.tws-template-domainregister #order-standard_cart .domain-pricing {
    margin-top: 0;
}

.tws-template-domainregister #order-standard_cart .domain-pricing > h2 {
    max-width: 24ch;
    margin-bottom: var(--tws-space-5);
    font-size: clamp(1.75rem, 5vw, 2.25rem);
    letter-spacing: -.025em;
    line-height: 1.15;
}

.tws-template-domainregister #order-standard_cart .tld-filters {
    gap: var(--tws-space-3);
    margin-bottom: var(--tws-space-6);
}

.tws-template-domainregister #order-standard_cart .domain-pricing > .bg-white {
    border-top: .25rem solid var(--tws-action);
}

.tws-template-domainregister #order-standard_cart .cart-body > .row:last-child {
    margin-top: var(--tws-space-8);
}

.tws-template-domainregister #order-standard_cart .domain-promo-box {
    height: 100%;
    min-height: 11rem;
    padding: var(--tws-space-6);
    border-top: .25rem solid var(--tws-action);
}

.tws-template-domainregister #order-standard_cart .domain-promo-box h3 {
    margin-bottom: var(--tws-space-3);
    color: var(--tws-text);
    font-size: 1.25rem;
    line-height: 1.3;
}

.tws-template-domainregister #order-standard_cart .domain-promo-box a:not(.btn) {
    color: var(--tws-action);
    font-weight: 600;
    text-underline-offset: .18em;
}

.tws-template-domainregister #order-standard_cart .domain-promo-box .btn {
    min-height: var(--tws-control-height);
    padding-inline: var(--tws-space-5);
    border-color: var(--tws-action);
    border-radius: var(--tws-radius-md);
    background: var(--tws-action);
    color: var(--tws-text-on-action);
    font-weight: 700;
}

.tws-template-domainregister #order-standard_cart .domain-promo-box .btn:hover,
.tws-template-domainregister #order-standard_cart .domain-promo-box .btn:focus {
    border-color: var(--tws-action-hover);
    background: var(--tws-action-hover);
    color: var(--tws-text-on-action);
}

.tws-template-domainregister #order-standard_cart .domain-promo-box .btn:active {
    border-color: var(--tws-action-active);
    background: var(--tws-action-active);
    color: var(--tws-text-on-action);
}

@media (min-width: 48rem) {
    .tws-template-domainregister #order-standard_cart .domain-checker-container {
        padding: var(--tws-space-8);
    }

    .tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box > label {
        grid-column: 1;
        grid-row: 3;
    }

    .tws-template-domainregister #order-standard_cart #btnCheckAvailability {
        grid-column: 2;
        grid-row: 3;
    }
}

@media (min-width: 62rem) {
    .tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box {
        grid-template-columns: minmax(9rem, 1fr) minmax(9rem, 1fr) auto minmax(8rem, auto);
    }

    .tws-template-domainregister #order-standard_cart #frmDomainChecker .input-group-box > label {
        grid-column: 3;
        grid-row: 2;
    }

    .tws-template-domainregister #order-standard_cart #btnCheckAvailability {
        grid-column: 4;
        grid-row: 2;
    }

    .tws-template-domainregister #order-standard_cart > .row {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: var(--tws-space-8);
        margin-inline: 0;
    }

    .tws-template-domainregister #order-standard_cart > .row > .cart-body {
        width: 100%;
        max-width: none;
        order: 1;
        padding-inline: 0;
    }

    .tws-template-domainregister #order-standard_cart > .row > .cart-sidebar {
        width: 100%;
        max-width: none;
        display: grid;
        grid-template-columns: minmax(14rem, .7fr) minmax(0, 1.3fr);
        align-items: start;
        gap: var(--tws-space-5);
        order: 2;
        padding-inline: 0;
    }

    .tws-template-domainregister #order-standard_cart .cart-sidebar .card-sidebar {
        margin-bottom: 0 !important;
    }

    .tws-template-domainregister #order-standard_cart .cart-sidebar .card-sidebar:last-child .list-group {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .tws-template-domainregister #order-standard_cart .cart-sidebar .card-sidebar:last-child .list-group-item {
        min-width: 0;
        border-left-width: 0;
    }
}

/* 18.7 Pre-sales Contact visual refinement 72 */
.tws-template-contact #main-body .primary-content > .card {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    overflow: hidden;
    border-top: .25rem solid var(--tws-action);
    background: linear-gradient(145deg, var(--tws-surface-1), var(--tws-bg-deep));
}

.tws-template-contact #main-body .primary-content > .card > .card-body.extra-padding {
    padding: var(--tws-space-3);
}

.tws-template-contact #main-body .card-body.extra-padding > .mb-4:first-child {
    position: relative;
    max-width: 46rem;
    margin-bottom: var(--tws-space-8) !important;
    padding-left: var(--tws-space-5);
}

.tws-template-contact #main-body .card-body.extra-padding > .mb-4:first-child::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: .25rem;
    border-radius: var(--tws-radius-sm);
    background: var(--tws-action);
    content: "";
}

.tws-template-contact #main-body .card-body.extra-padding > .mb-4:first-child .h3 {
    margin-bottom: var(--tws-space-2);
    color: var(--tws-text);
    font-size: clamp(1.75rem, 6vw, 2.5rem);
    letter-spacing: -.03em;
    line-height: 1.1;
}

.tws-template-contact #main-body .card-body.extra-padding > .mb-4:first-child p {
    max-width: 54ch;
    color: var(--tws-text-body) !important;
    font-size: 1rem;
    line-height: 1.65;
}

.tws-template-contact #main-body form[action="contact.php"] {
    display: grid;
    gap: var(--tws-space-5);
    padding: var(--tws-space-3);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: rgb(14 32 43 / 72%);
}

.tws-template-contact #main-body form[action="contact.php"] > .form-group.row {
    min-width: 0;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: var(--tws-space-2);
    margin: 0;
}

.tws-template-contact #main-body form[action="contact.php"] > .form-group.row > :where(label, [class*="col-"]) {
    width: 100%;
    max-width: 100%;
    flex: 0 0 auto !important;
    padding: 0;
}

.tws-template-contact #main-body form[action="contact.php"] .col-form-label {
    min-height: auto;
    padding: 0;
    color: var(--tws-text);
    font-weight: 700;
    line-height: 1.5;
}

.tws-template-contact #main-body form[action="contact.php"] :where(.form-control, textarea) {
    width: 100%;
}

.tws-template-contact #main-body form[action="contact.php"] #inputMessage {
    min-height: 13rem;
}

.tws-template-contact #main-body form[action="contact.php"] > .margin-bottom:has(#default-captcha-domainchecker) {
    margin: 0;
    padding: var(--tws-space-3);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-1);
}

.tws-template-contact #main-body #default-captcha-domainchecker {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-4);
    margin: 0;
    padding: 0 !important;
    text-align: left !important;
}

.tws-template-contact #main-body #default-captcha-domainchecker > :where(p, .col-6) {
    width: 100%;
    max-width: 100%;
    flex: none;
    margin: 0;
    padding: 0;
}

.tws-template-contact #main-body #default-captcha-domainchecker .captchaimage {
    min-height: var(--tws-control-height);
    justify-content: flex-start;
}

.tws-template-contact #main-body #inputCaptcha {
    width: 100%;
    max-width: none;
}

.tws-template-contact #main-body form[action="contact.php"] > .text-center:last-child {
    display: flex;
    justify-content: stretch;
}

.tws-template-contact #main-body form[action="contact.php"] > .text-center:last-child .btn-primary {
    width: 100%;
    min-width: 0;
    margin: 0;
}

@media (min-width: 48rem) {
    .tws-template-contact #main-body .primary-content > .card > .card-body.extra-padding {
        padding: var(--tws-space-8);
    }

    .tws-template-contact #main-body form[action="contact.php"] {
        padding: var(--tws-space-8);
    }

    .tws-template-contact #main-body form[action="contact.php"] > .margin-bottom:has(#default-captcha-domainchecker) {
        padding: var(--tws-space-5);
    }

    .tws-template-contact #main-body #default-captcha-domainchecker {
        grid-template-columns: auto minmax(12rem, 20rem);
        align-items: center;
        justify-content: start;
    }

    .tws-template-contact #main-body #default-captcha-domainchecker > p {
        grid-column: 1 / -1;
    }

    .tws-template-contact #main-body form[action="contact.php"] > .text-center:last-child {
        justify-content: flex-end;
    }

    .tws-template-contact #main-body form[action="contact.php"] > .text-center:last-child .btn-primary {
        width: auto;
        min-width: 12rem;
    }
}

@media (min-width: 62rem) {
    .tws-template-contact #main-body form[action="contact.php"] {
        grid-template-columns: minmax(16rem, .82fr) minmax(0, 1.18fr);
        grid-template-rows: repeat(3, auto) auto auto;
        column-gap: var(--tws-space-8);
    }

    .tws-template-contact #main-body form[action="contact.php"] > .form-group.row:has(#inputName) {
        grid-column: 1;
        grid-row: 1;
    }

    .tws-template-contact #main-body form[action="contact.php"] > .form-group.row:has(#inputEmail) {
        grid-column: 1;
        grid-row: 2;
    }

    .tws-template-contact #main-body form[action="contact.php"] > .form-group.row:has(#inputSubject) {
        grid-column: 1;
        grid-row: 3;
    }

    .tws-template-contact #main-body form[action="contact.php"] > .form-group.row:has(#inputMessage) {
        min-height: 0;
        grid-column: 2;
        grid-row: 1 / span 3;
    }

    .tws-template-contact #main-body form[action="contact.php"] > .form-group.row:has(#inputMessage) > [class*="col-"]:not(label) {
        min-height: 0;
        display: flex;
        flex: 1 1 auto !important;
    }

    .tws-template-contact #main-body form[action="contact.php"] #inputMessage {
        min-height: 0;
        flex: 1;
    }

    .tws-template-contact #main-body form[action="contact.php"] > .margin-bottom:has(#default-captcha-domainchecker),
    .tws-template-contact #main-body form[action="contact.php"] > .text-center:last-child {
        grid-column: 1 / -1;
    }
}

/* 18.8 Review and Checkout visual refinement 76 */
.tws-template-viewcart #order-standard_cart > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-6);
    margin: 0;
}

.tws-template-viewcart #order-standard_cart > .row > :where(.cart-sidebar, .cart-body),
.tws-template-viewcart #order-standard_cart .cart-body > .row > :where(.secondary-cart-body, .secondary-cart-sidebar) {
    width: 100%;
    max-width: none;
    min-width: 0;
    flex: none;
    padding: 0;
}

.tws-template-viewcart #order-standard_cart > .row > .cart-body {
    grid-row: 1;
    background: transparent !important;
}

.tws-template-viewcart #order-standard_cart > .row > .cart-sidebar {
    grid-row: 2;
    background: transparent !important;
}

.tws-template-viewcart #order-standard_cart .header-lined {
    margin: 0 0 var(--tws-space-6);
    padding: 0 0 var(--tws-space-4);
}

.tws-template-viewcart #order-standard_cart .header-lined h1 {
    margin: 0;
    font-size: clamp(2rem, 9vw, 3rem);
    letter-spacing: -.03em;
    line-height: 1.12;
}

.tws-template-viewcart #order-standard_cart .cart-body > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-6);
    margin: 0;
}

.tws-template-viewcart #order-standard_cart .sidebar-collapsed {
    gap: var(--tws-space-3);
    margin-bottom: var(--tws-space-6);
    padding: 0;
}

.tws-template-viewcart #order-standard_cart .sidebar-collapsed > :where(.panel, .card) {
    margin: 0 !important;
}

.tws-template-viewcart #order-standard_cart .view-cart-items-header {
    padding: var(--tws-space-3) var(--tws-space-4);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg) var(--tws-radius-lg) 0 0;
    background: var(--tws-surface-2);
    color: var(--tws-text-body);
    font-size: .875rem;
    font-weight: 600;
}

.tws-template-viewcart #order-standard_cart .view-cart-items-header .row,
.tws-template-viewcart #order-standard_cart .view-cart-items .item > .row {
    margin: 0;
}

.tws-template-viewcart #order-standard_cart .view-cart-items {
    overflow: hidden;
    border-top: 0;
    border-radius: 0 0 var(--tws-radius-lg) var(--tws-radius-lg);
    background: var(--tws-surface-1);
}

.tws-template-viewcart #order-standard_cart .view-cart-empty {
    min-height: 8rem;
    display: grid;
    place-items: center;
    padding: var(--tws-space-8) var(--tws-space-5);
    color: var(--tws-text-body) !important;
    font-size: 1rem;
    text-align: center;
}

.tws-template-viewcart #order-standard_cart .view-cart-items .item {
    padding: var(--tws-space-5);
    border-color: var(--tws-border);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

.tws-template-viewcart #order-standard_cart .view-cart-items .item-title,
.tws-template-viewcart #order-standard_cart .view-cart-items .item-domain,
.tws-template-viewcart #order-standard_cart .view-cart-items .item-price > span:first-child {
    color: var(--tws-text);
    font-weight: 700;
}

.tws-template-viewcart #order-standard_cart .view-cart-items :where(.item-group, .cycle, small) {
    color: var(--tws-text-muted);
}

.tws-template-viewcart #order-standard_cart .view-cart-tabs {
    margin-top: var(--tws-space-6);
    overflow: hidden;
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
}

.tws-template-viewcart #order-standard_cart .view-cart-tabs .nav-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--tws-space-2);
    margin: 0;
    padding: var(--tws-space-2);
    border: 0;
    border-bottom: .0625rem solid var(--tws-border);
    background: var(--tws-surface-2);
}

.tws-template-viewcart #order-standard_cart .view-cart-tabs .nav-item {
    min-width: 0;
    margin: 0;
}

.tws-template-viewcart #order-standard_cart .view-cart-tabs .nav-link {
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: var(--tws-space-2);
    border: .0625rem solid transparent;
    border-radius: var(--tws-radius-md);
    background: transparent;
    color: var(--tws-text-body);
    font-size: .875rem;
    font-weight: 600;
    line-height: 1.25;
    text-align: center;
}

.tws-template-viewcart #order-standard_cart .view-cart-tabs .nav-link:hover {
    border-color: var(--tws-border-strong);
    background: var(--tws-surface-3);
    color: var(--tws-text);
}

.tws-template-viewcart #order-standard_cart .view-cart-tabs .nav-link.active {
    border-color: var(--tws-action);
    background: var(--tws-surface-3);
    color: var(--tws-text);
}

.tws-template-viewcart #order-standard_cart .view-cart-tabs .tab-content {
    padding: var(--tws-space-5);
    background: var(--tws-surface-1);
}

.tws-template-viewcart #order-standard_cart .view-cart-tabs form,
.tws-template-viewcart #order-standard_cart #calcTaxes .form-group.row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-3);
    margin: 0;
}

.tws-template-viewcart #order-standard_cart .view-cart-tabs .form-group {
    min-width: 0;
    margin: 0;
}

.tws-template-viewcart #order-standard_cart .view-cart-tabs :where(.form-control, .custom-select) {
    width: 100%;
}

.tws-template-viewcart #order-standard_cart .view-cart-tabs .btn-default {
    width: 100%;
    min-height: var(--tws-control-height);
    border-color: var(--tws-action);
    background: transparent;
    color: var(--tws-text);
    font-weight: 700;
}

.tws-template-viewcart #order-standard_cart .view-cart-tabs .btn-default:hover {
    border-color: var(--tws-action-hover);
    background: var(--tws-action-subtle);
    color: var(--tws-text);
}

.tws-template-viewcart #order-standard_cart #calcTaxes {
    color: var(--tws-text-body);
}

.tws-template-viewcart #order-standard_cart #calcTaxes .form-group.row {
    margin-bottom: var(--tws-space-4);
}

.tws-template-viewcart #order-standard_cart #calcTaxes .form-group.row > :where(label, [class*="col-"]) {
    width: 100%;
    max-width: 100%;
    flex: none;
    padding: 0;
    text-align: left !important;
}

.tws-template-viewcart #order-standard_cart #calcTaxes label {
    align-self: center;
    margin: 0;
    color: var(--tws-text);
    font-weight: 600;
}

.tws-template-viewcart #order-standard_cart .order-summary {
    overflow: hidden;
    margin: 0 !important;
    border-top: .25rem solid var(--tws-action);
    background: var(--tws-surface-1);
}

.tws-template-viewcart #order-standard_cart .order-summary > h2 {
    margin: 0;
    padding: var(--tws-space-5);
    border-bottom: .0625rem solid var(--tws-border);
    background: var(--tws-surface-2);
    color: var(--tws-text);
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.25;
    text-align: left;
}

.tws-template-viewcart #order-standard_cart .order-summary .summary-container {
    padding: var(--tws-space-5);
    background: var(--tws-surface-1);
}

.tws-template-viewcart #order-standard_cart .order-summary :where(.subtotal, .recurring-totals) {
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--tws-space-4);
    padding: var(--tws-space-3) 0;
    border-bottom: .0625rem solid var(--tws-border);
    color: var(--tws-text-body);
}

.tws-template-viewcart #order-standard_cart .order-summary :where(.subtotal, .recurring-totals) > :last-child {
    color: var(--tws-text);
    font-weight: 700;
    text-align: right;
}

.tws-template-viewcart #order-standard_cart .order-summary .total-due-today {
    margin: var(--tws-space-5) 0;
    padding: var(--tws-space-5);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
    color: var(--tws-text-body);
    text-align: right;
}

.tws-template-viewcart #order-standard_cart .order-summary .total-due-today .amt {
    display: block;
    margin-bottom: var(--tws-space-1);
    color: var(--tws-text);
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 1.15;
}

.tws-template-viewcart #order-standard_cart .order-summary .text-right {
    display: grid;
    gap: var(--tws-space-2);
    text-align: left !important;
}

.tws-template-viewcart #order-standard_cart .order-summary .text-right > br {
    display: none;
}

.tws-template-viewcart #order-standard_cart .order-summary :where(.btn-checkout, .btn-continue-shopping) {
    width: 100%;
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--tws-space-2);
    margin: 0;
    padding: var(--tws-space-3) var(--tws-space-5);
    border-radius: var(--tws-radius-md);
    font-weight: 700;
    line-height: 1.25;
    text-align: center;
}

.tws-template-viewcart #order-standard_cart .order-summary .btn-continue-shopping {
    border: .0625rem solid transparent;
    color: var(--tws-action);
}

.tws-template-viewcart #order-standard_cart .order-summary .btn-continue-shopping:hover {
    border-color: var(--tws-border-strong);
    background: var(--tws-surface-2);
    color: var(--tws-action-hover);
    text-decoration: none;
}

.tws-template-viewcart #order-standard_cart > .row > .cart-sidebar {
    gap: var(--tws-space-4);
}

.tws-template-viewcart #order-standard_cart > .row > .cart-sidebar > :where(.panel, .card) {
    min-width: 0;
    margin: 0 !important;
}

@media (min-width: 48rem) {
    .tws-template-viewcart #order-standard_cart .view-cart-tabs .tab-content,
    .tws-template-viewcart #order-standard_cart .order-summary .summary-container {
        padding: var(--tws-space-6);
    }

    .tws-template-viewcart #order-standard_cart .view-cart-tabs .tab-pane.promo form {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: end;
    }

    .tws-template-viewcart #order-standard_cart .view-cart-tabs .tab-pane.promo .btn-default {
        width: auto;
        min-width: 10rem;
    }

    .tws-template-viewcart #order-standard_cart #calcTaxes .form-group.row {
        grid-template-columns: 8rem minmax(0, 1fr);
        align-items: center;
    }

    .tws-template-viewcart #order-standard_cart > .row > .cart-sidebar {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 62rem) {
    .tws-template-viewcart #order-standard_cart .cart-body > .row {
        grid-template-columns: minmax(0, 1fr) minmax(19rem, 22rem);
        align-items: start;
        gap: var(--tws-space-8);
    }

    .tws-template-viewcart #order-standard_cart .secondary-cart-sidebar {
        position: sticky;
        top: var(--tws-space-6);
    }
}

/* 18.9 Configure Product visual refinement 77 */
.tws-template-configureproduct #order-standard_cart > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-6);
    margin: 0;
}

.tws-template-configureproduct #order-standard_cart > .row > :where(.cart-sidebar, .cart-body),
.tws-template-configureproduct #frmConfigureProduct > .row > :where(.secondary-cart-body, .secondary-cart-sidebar) {
    width: 100%;
    max-width: none;
    min-width: 0;
    flex: none;
    padding: 0;
}

.tws-template-configureproduct #order-standard_cart > .row > .cart-body {
    grid-row: 1;
    background: transparent !important;
}

.tws-template-configureproduct #order-standard_cart > .row > .cart-sidebar {
    grid-row: 2;
    gap: var(--tws-space-4);
    background: transparent !important;
}

.tws-template-configureproduct #order-standard_cart .header-lined {
    margin: 0 0 var(--tws-space-6);
    padding: 0 0 var(--tws-space-4);
}

.tws-template-configureproduct #order-standard_cart .header-lined h1 {
    margin: 0;
    font-size: clamp(2rem, 9vw, 3rem);
    letter-spacing: -.03em;
    line-height: 1.12;
}

.tws-template-configureproduct #order-standard_cart .sidebar-collapsed {
    gap: var(--tws-space-3);
    margin-bottom: var(--tws-space-6);
    padding: 0;
}

.tws-template-configureproduct #frmConfigureProduct > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-6);
    margin: 0;
}

.tws-template-configureproduct #frmConfigureProduct .secondary-cart-body > p:first-child {
    max-width: 44rem;
    margin: 0 0 var(--tws-space-5);
    color: var(--tws-text-body);
    font-size: 1.0625rem;
    line-height: 1.6;
}

.tws-template-configureproduct #order-standard_cart .product-info {
    overflow: hidden;
    margin: 0 0 var(--tws-space-6);
    padding: var(--tws-space-5);
    border: .0625rem solid var(--tws-border);
    border-top: .25rem solid var(--tws-action);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1) !important;
    color: var(--tws-text-body);
    box-shadow: none;
}

.tws-template-configureproduct #order-standard_cart .product-info .product-title {
    margin: 0 0 var(--tws-space-5);
    padding: 0 0 var(--tws-space-4);
    border-bottom: .0625rem solid var(--tws-border);
    color: var(--tws-text);
    font-size: clamp(1.5rem, 6vw, 2rem);
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 1.2;
}

.tws-template-configureproduct #order-standard_cart .product-info .package-details {
    color: var(--tws-text-body) !important;
    font-size: 1rem;
    line-height: 1.6;
}

.tws-template-configureproduct #order-standard_cart .product-info .package-details > br,
.tws-template-configureproduct #order-standard_cart .product-info .package-details > p > br,
.tws-template-configureproduct #order-standard_cart .product-info .compact-list > br {
    display: none;
}

.tws-template-configureproduct #order-standard_cart .product-info .package-details h4 {
    margin: 0 0 var(--tws-space-3);
    color: var(--tws-text);
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.3;
}

.tws-template-configureproduct #order-standard_cart .product-info .package-details p {
    max-width: 68ch;
    margin: 0 0 var(--tws-space-5);
    color: var(--tws-text-body);
}

.tws-template-configureproduct #order-standard_cart .product-info .compact-list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--tws-space-3);
    margin: 0 0 var(--tws-space-5);
    padding: 0;
    list-style: none;
}

.tws-template-configureproduct #order-standard_cart .product-info .compact-list li {
    min-width: 0;
    position: relative;
    margin: 0;
    padding-left: var(--tws-space-6);
    color: var(--tws-text-body);
}

.tws-template-configureproduct #order-standard_cart .product-info .compact-list li::before {
    width: .5rem;
    height: .5rem;
    position: absolute;
    top: .55rem;
    left: 0;
    border-radius: var(--tws-radius-sm);
    background: var(--tws-action);
    content: "";
}

.tws-template-configureproduct #order-standard_cart .product-info .compact-list strong {
    color: var(--tws-text);
    font-weight: 600;
}

.tws-template-configureproduct #order-standard_cart .field-container,
.tws-template-configureproduct #order-standard_cart .product-configurable-options,
.tws-template-configureproduct #order-standard_cart #productAddonsContainer {
    margin: 0 0 var(--tws-space-6);
    padding: var(--tws-space-5);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-lg);
    background: var(--tws-surface-1);
}

.tws-template-configureproduct #order-standard_cart .field-container .form-group,
.tws-template-configureproduct #order-standard_cart .product-configurable-options .form-group {
    min-width: 0;
    margin: 0;
}

.tws-template-configureproduct #order-standard_cart .field-container label,
.tws-template-configureproduct #order-standard_cart .product-configurable-options label {
    display: block;
    margin: 0 0 var(--tws-space-2);
    color: var(--tws-text);
    font-weight: 600;
}

.tws-template-configureproduct #order-standard_cart .field-container br,
.tws-template-configureproduct #order-standard_cart .product-configurable-options .form-group > br:first-of-type {
    display: none;
}

.tws-template-configureproduct #order-standard_cart :where(.field-container, .product-configurable-options) :where(.form-control, .custom-select) {
    width: 100%;
    max-width: none;
    margin: 0;
}

.tws-template-configureproduct #order-standard_cart .sub-heading {
    margin: var(--tws-space-8) 0 var(--tws-space-4);
    border: 0;
    text-align: left;
}

.tws-template-configureproduct #order-standard_cart .sub-heading span {
    display: block;
    padding: 0;
    background: transparent !important;
    color: var(--tws-text);
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.3;
}

.tws-template-configureproduct #order-standard_cart .alert-warning.info-text-sm {
    display: flex;
    align-items: flex-start;
    gap: var(--tws-space-3);
    margin: 0;
    padding: var(--tws-space-4);
    border: .0625rem solid var(--tws-border-strong);
    border-left: .25rem solid var(--tws-action);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
    color: var(--tws-text-body);
    font-size: .875rem;
    line-height: 1.5;
    text-align: left;
}

.tws-template-configureproduct #order-standard_cart .alert-warning.info-text-sm > i {
    margin-top: .2rem;
    color: var(--tws-action);
}

.tws-template-configureproduct #orderSummary {
    margin-top: 0 !important;
}

.tws-template-configureproduct #order-standard_cart .order-summary {
    overflow: hidden;
    margin: 0 !important;
    border-top: .25rem solid var(--tws-action);
    background: var(--tws-surface-1);
}

.tws-template-configureproduct #order-standard_cart .order-summary > h2 {
    margin: 0;
    padding: var(--tws-space-5);
    border-bottom: .0625rem solid var(--tws-border);
    background: var(--tws-surface-2);
    color: var(--tws-text);
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.25;
    text-align: left;
}

.tws-template-configureproduct #order-standard_cart .order-summary .summary-container {
    padding: var(--tws-space-5);
    background: var(--tws-surface-1);
    color: var(--tws-text-body);
}

.tws-template-configureproduct #order-standard_cart .order-summary :where(.product-name, .product-group) {
    display: block;
}

.tws-template-configureproduct #order-standard_cart .order-summary .product-name {
    color: var(--tws-text);
    font-size: 1.125rem;
    font-weight: 700;
}

.tws-template-configureproduct #order-standard_cart .order-summary .product-group {
    margin-bottom: var(--tws-space-4);
    color: var(--tws-text-muted);
    font-size: .875rem;
}

.tws-template-configureproduct #order-standard_cart .order-summary :where(.summary-container > .clearfix, .summary-totals .clearfix) {
    min-height: var(--tws-control-height);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--tws-space-4);
    padding: var(--tws-space-3) 0;
    border-bottom: .0625rem solid var(--tws-border);
}

.tws-template-configureproduct #order-standard_cart .order-summary .clearfix::before,
.tws-template-configureproduct #order-standard_cart .order-summary .clearfix::after {
    display: none;
}

.tws-template-configureproduct #order-standard_cart .order-summary .clearfix > :last-child {
    color: var(--tws-text);
    font-weight: 700;
    text-align: right;
}

.tws-template-configureproduct #order-standard_cart .order-summary .total-due-today {
    margin: var(--tws-space-5) 0 0;
    padding: var(--tws-space-5);
    border: .0625rem solid var(--tws-border);
    border-radius: var(--tws-radius-md);
    background: var(--tws-surface-2);
    color: var(--tws-text-body);
    text-align: right;
}

.tws-template-configureproduct #order-standard_cart .order-summary .total-due-today .amt {
    display: block;
    margin-bottom: var(--tws-space-1);
    color: var(--tws-text);
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 1.15;
}

.tws-template-configureproduct #orderSummary > .text-center {
    margin-top: var(--tws-space-4);
}

.tws-template-configureproduct #btnCompleteProductConfig {
    width: 100%;
    min-height: var(--tws-control-height);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--tws-space-2);
    margin: 0;
    padding: var(--tws-space-3) var(--tws-space-5);
    font-size: 1rem;
    line-height: 1.25;
}

.tws-template-configureproduct #order-standard_cart > .row > .cart-sidebar > :where(.panel, .card) {
    min-width: 0;
    margin: 0 !important;
}

@media (min-width: 48rem) {
    .tws-template-configureproduct #order-standard_cart .product-info,
    .tws-template-configureproduct #order-standard_cart :where(.field-container, .product-configurable-options, #productAddonsContainer),
    .tws-template-configureproduct #order-standard_cart .order-summary .summary-container {
        padding: var(--tws-space-6);
    }

    .tws-template-configureproduct #order-standard_cart > .row > .cart-sidebar {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 62rem) {
    .tws-template-configureproduct #frmConfigureProduct > .row {
        grid-template-columns: minmax(0, 1fr) minmax(19rem, 22rem);
        align-items: start;
        gap: var(--tws-space-8);
    }

    .tws-template-configureproduct #frmConfigureProduct .secondary-cart-sidebar {
        position: sticky;
        top: var(--tws-space-6);
    }
}

/* Keep the public ticket form full-width after the earlier shared reading-width rule. */
.tws-template-supportticketsubmit-steptwo #main-body .primary-content > form,
.tws-template-supportticketsubmit-stepone #main-body .primary-content > .card,
.tws-template-supportticketsubmit-confirm #main-body .primary-content > .card {
    width: 100%;
    max-width: var(--tws-container-main);
}

body.tws-shell.tws-template-supportticketsubmit-steptwo #main-body .md-editor > .md-header {
    border-color: var(--tws-border);
    /* Twenty-One marks the Bootstrap Markdown toolbar background as important. */
    background: var(--tws-surface-2) !important;
}

body.tws-shell.tws-template-supportticketsubmit-steptwo #main-body .md-editor > :where(textarea.md-input, .md-preview),
body.tws-shell.tws-template-supportticketsubmit-steptwo #main-body .md-editor > textarea.md-input:focus,
body.tws-shell.tws-template-supportticketsubmit-steptwo #main-body .md-editor > textarea.md-input:hover {
    border-color: var(--tws-border);
    background: var(--tws-bg-deep) !important;
    color: var(--tws-text-body);
}

body.tws-shell.tws-template-supportticketsubmit-steptwo #main-body .md-editor.md-fullscreen-mode {
    background: var(--tws-bg) !important;
}

body.tws-shell.tws-template-supportticketsubmit-steptwo #main-body .md-editor.md-fullscreen-mode > .md-header {
    background: var(--tws-surface-2) !important;
}
