/* Shift assignment employee picker emphasis */
.school-toolbar-grid .shift-employee-picker {
    background: #f8fbff;
    border: 1px solid #dfe7f2;
    border-radius: 18px;
    grid-column: 1 / -1;
    padding: 1rem;
}

.shift-employee-picker > span {
    color: #101828;
    font-size: 1.08rem;
    font-weight: 900;
}

.shift-employee-picker > small {
    color: #667491;
    font-size: 0.96rem;
    line-height: 1.45;
    max-width: 62rem;
}

.shift-employee-code-row {
    grid-template-columns: minmax(0, 1fr) minmax(15rem, 18rem);
    margin-top: 0.2rem;
}

.shift-employee-code-row .app-form-textarea {
    min-height: 6rem;
}

.shift-search-button {
    font-size: 1rem;
    min-width: 15rem;
}

@media (max-width: 900px) {
    .shift-employee-code-row {
        grid-template-columns: 1fr;
    }

    .shift-search-button {
        width: 100%;
    }
}

/* Shift assignment command layout */
.shift-command-panel {
    padding: 1rem 1.25rem;
}

.shift-primary-actions {
    justify-content: flex-end;
    margin-bottom: 0;
}

.shift-primary-actions .school-primary-button,
.shift-primary-actions .school-secondary-button {
    min-width: 13rem;
}

.shift-form-panel {
    animation: fadeIn 0.16s ease-out;
}

.shift-crew-section {
    display: grid;
    gap: 1.25rem;
    min-width: 0;
    padding: 0.35rem 0;
    animation: fadeIn 0.16s ease-out;
}

.shift-crew-section .school-section-title {
    margin-bottom: 0;
}

.shift-crew-empty-state {
    display: grid;
    gap: 0.35rem;
}

.shift-crew-empty-state span {
    color: #667391;
}

.shift-schedule-form-grid > .shift-crew-description-field {
    align-self: start;
}

.portal-content .shift-schedule-form-grid.shift-crew-form-grid {
    align-items: start;
}

.shift-crew-cycle-note {
    margin: 0;
    padding: 0.85rem 1rem;
    border-radius: 0.9rem;
    background: #eef4ff;
    color: #334b7a;
    font-weight: 700;
    line-height: 1.45;
}

.shift-crew-preview-modal {
    width: min(100%, 1100px);
}

.shift-crew-preview-modal-body {
    display: grid;
    gap: 1rem;
}

.shift-crew-preview-modal-body .shift-preview-header p {
    margin: 0.3rem 0 0;
    color: #667391;
}

.shift-rest-rule-card {
    align-items: start;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.shift-rest-rule-toggle {
    justify-self: start;
}

.shift-rest-rule-days > div,
.shift-rest-rule-fixed {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.shift-rest-rule-days label {
    align-items: center;
    background: #fff;
    border: 1px solid #d9e4f5;
    border-radius: 999px;
    cursor: pointer;
    display: inline-flex;
    gap: 0.4rem;
    padding: 0.55rem 0.75rem;
}

.shift-rest-rule-fixed span {
    background: #eaf2ff;
    border-radius: 12px;
    color: #334b7a;
    padding: 0.7rem 0.85rem;
}

.shift-pattern-advanced {
    border-top: 1px solid #dfe7f2;
    padding-top: 0.9rem;
}

.shift-pattern-advanced summary {
    color: #334b7a;
    cursor: pointer;
    font-weight: 800;
    margin-bottom: 0.9rem;
}

.shift-input-invalid {
    border-color: #dc2626 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1);
}

.shift-inline-error {
    color: #b91c1c;
    font-size: 0.85rem;
    font-weight: 700;
}

@media (max-width: 760px) {
    .shift-primary-actions {
        justify-content: stretch;
    }

    .shift-primary-actions .school-primary-button,
    .shift-primary-actions .school-secondary-button {
        width: 100%;
    }
}

/* Shift assignment preview calendar */
.shift-preview-card{display:grid;gap:1.25rem;margin-top:1.25rem;padding:1.25rem;border:1px solid rgba(210,222,242,.95);border-radius:1.25rem;background:#fff}.shift-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.shift-preview-header .school-section-title{margin-bottom:.25rem}.shift-preview-status{display:inline-flex;align-items:center;justify-content:center;min-width:9rem;padding:.65rem .9rem;border-radius:999px;font-weight:800;white-space:nowrap}.shift-preview-status.is-ok{color:#15803d;background:#dcfce7}.shift-preview-status.is-warning{color:#b45309;background:#fef3c7}.shift-preview-status.is-danger{color:#b91c1c;background:#fee2e2}.shift-preview-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.shift-preview-metric{display:grid;gap:.25rem;min-height:7rem;padding:1rem;border:1px solid rgba(210,222,242,.95);border-radius:1rem;background:#f8fbff}.shift-preview-metric span,.shift-preview-metric small{color:#667391;font-weight:700}.shift-preview-metric strong{font-size:2rem;line-height:1;color:#0f172a}.shift-preview-metric.has-conflicts{background:#fff7ed;border-color:#fed7aa}.shift-conflict-panel{display:grid;gap:1rem;padding:1rem;border:1px solid #fecaca;border-radius:1rem;background:#fff7f7}.shift-conflict-panel h3,.shift-calendar-preview h3,.shift-block-preview h3{margin:0;font-size:1rem}.shift-conflict-panel p{margin:.25rem 0 0;color:#667391}.shift-conflict-actions{display:flex;flex-wrap:wrap;gap:.75rem}.shift-conflict-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.75rem}.shift-conflict-list article{display:grid;gap:.2rem;padding:.9rem;border:1px solid rgba(254,202,202,.95);border-radius:.85rem;background:#fff}.shift-conflict-list article span,.shift-conflict-list article small{color:#667391;font-weight:700}.shift-calendar-preview,.shift-block-preview{display:grid;gap:.75rem}.shift-calendar-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.shift-calendar-heading span{color:#667391;font-weight:700}.shift-calendar-scroll{overflow-x:auto;border:1px solid rgba(210,222,242,.95);border-radius:1rem}.shift-calendar-table{width:100%;min-width:52rem;border-collapse:collapse}.shift-calendar-table th,.shift-calendar-table td{padding:.85rem;border-bottom:1px solid rgba(226,232,240,.9);text-align:left;vertical-align:middle}.shift-calendar-table th{color:#667391;font-size:.82rem;font-weight:800;white-space:nowrap}.shift-calendar-table td:first-child{min-width:14rem}.shift-calendar-table td:first-child strong,.shift-calendar-table td:first-child span{display:block}.shift-calendar-table td:first-child span{color:#667391;font-size:.85rem;font-weight:700}.shift-day-pill{display:inline-flex;align-items:center;justify-content:center;min-width:5.5rem;padding:.45rem .6rem;border-radius:999px;font-size:.78rem;font-weight:800;white-space:nowrap}.shift-day-pill.is-planned{color:#047857;background:#d1fae5}.shift-day-pill.is-conflict{color:#b45309;background:#fef3c7}.shift-block-list{display:flex;flex-wrap:wrap;gap:.65rem}.shift-block-list span{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem .75rem;border:1px solid rgba(210,222,242,.95);border-radius:999px;background:#f8fbff;font-weight:800}.shift-block-list small{color:#667391;font-weight:700}@media(max-width:980px){.shift-preview-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.shift-preview-header,.shift-calendar-heading{align-items:stretch;flex-direction:column}.shift-preview-summary-grid{grid-template-columns:1fr}}
/* Shift assignment delete controls */
.shift-list-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-top:1.25rem;margin-bottom:.75rem}.shift-list-heading .school-section-title{margin-bottom:.15rem}.shift-delete-summary{display:grid;gap:.35rem;padding:1rem;border:1px solid rgba(210,222,242,.95);border-radius:1rem;background:#f8fbff}.shift-delete-summary strong{font-size:1.1rem}.shift-delete-summary span,.shift-delete-summary small{color:#667391;font-weight:700}@media(max-width:760px){.shift-list-heading{align-items:stretch;flex-direction:column}.shift-list-heading .school-danger-button{width:100%}}
/* Shift assignment pagination */
.shift-pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;color:#667391;font-weight:800}.shift-page-size{display:flex;align-items:center;gap:.65rem}.shift-page-size .school-select-field{min-width:6rem;height:3rem;padding:.5rem 2.25rem .5rem .9rem}.shift-pagination-actions{display:flex;gap:.65rem}.shift-pagination-actions .school-secondary-button{min-width:7rem}@media(max-width:760px){.shift-pagination{align-items:stretch;flex-direction:column}.shift-pagination-actions{display:grid;grid-template-columns:1fr 1fr}.shift-pagination-actions .school-secondary-button{width:100%;min-width:0}}
.shift-confirm-summary {
    margin-bottom: 1rem;
}

.shift-confirm-list {
    display: grid;
    gap: 0.55rem;
    margin: 0;
    padding-left: 1.2rem;
    color: #52627d;
    font-weight: 800;
}

.shift-confirm-list strong {
    color: #101828;
}
.shift-vigency-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 6rem;
    padding: 0.48rem 0.75rem;
    border-radius: 999px;
    font-size: 0.84rem;
    font-weight: 900;
    white-space: nowrap;
}

.shift-vigency-pill.is-active {
    background: #dcfce7;
    color: #15803d;
}

.shift-vigency-pill.is-future {
    background: #eaf2ff;
    color: #2563eb;
}

.shift-vigency-pill.is-expired {
    background: #f1f5f9;
    color: #64748b;
}

/* Empresas */
.tenant-page-header,
.company-settings-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.company-settings-header > div:first-child {
    min-width: 0;
}

.company-settings-header h1 {
    max-width: 920px;
    font-size: clamp(1.8rem, 3vw, 2.4rem);
    line-height: 1.08;
    letter-spacing: 0;
    overflow-wrap: anywhere;
}

.company-settings-header p {
    max-width: 780px;
}

.tenant-page-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
    min-width: 220px;
}

.tenant-new-button {
    min-width: 154px;
}

.tenant-plan-note {
    display: inline-flex;
    max-width: 340px;
    padding: 10px 14px;
    border: 1px solid #dbeafe;
    border-radius: 14px;
    background: #f8fbff;
    color: #51627d;
    font-size: 0.88rem;
    font-weight: 750;
    line-height: 1.35;
}

.tenant-directory-panel {
    width: 100%;
}

.tenant-directory-panel-header {
    gap: 14px;
}

.tenant-directory-panel .school-table-shell {
    border-radius: 18px;
}

.tenant-directory-panel .school-data-table {
    min-width: 760px;
}

.platform-page .platform-tenant-directory-table {
    min-width: 1200px;
    table-layout: fixed;
}

.platform-page .platform-tenant-directory-table .tenant-col-tenant { width: 18%; }
.platform-page .platform-tenant-directory-table .tenant-col-client { width: 14%; }
.platform-page .platform-tenant-directory-table .tenant-col-plan { width: 18%; }
.platform-page .platform-tenant-directory-table .tenant-col-status { width: 9%; }
.platform-page .platform-tenant-directory-table .tenant-col-validity { width: 12%; }
.platform-page .platform-tenant-directory-table .tenant-col-risk { width: 8%; }
.platform-page .platform-tenant-directory-table .tenant-col-followup { width: 13%; }
.platform-page .platform-tenant-directory-table .tenant-col-actions { width: 8%; }

.platform-page .platform-tenant-directory-table td {
    overflow-wrap: anywhere;
}

.platform-page .platform-tenant-directory-table .school-actions-cell {
    width: 88px;
    min-width: 88px;
    padding-right: 20px;
    text-align: center;
}

.platform-page .tenant-table-pagination {
    padding: 14px 20px 12px;
}

.platform-page .tenant-table-footer {
    padding: 14px 20px 18px;
}

.tenant-row-actions,
.tenant-config-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.tenant-context-switch-form {
    display: contents;
}

.tenant-link-button {
    min-height: 40px;
    padding: 0 14px;
    border: 1px solid #bfdbfe;
    border-radius: 12px;
    background: #f8fbff;
    color: #1d4ed8;
    font-weight: 850;
    cursor: pointer;
}

.tenant-link-button:hover {
    border-color: #93c5fd;
    background: #eff6ff;
}

.tenant-config-layout {
    grid-template-columns: minmax(0, 980px);
}

.tenant-config-header {
    align-items: flex-start;
}

.tenant-config-actions .school-secondary-button {
    min-height: 42px;
}

.tenant-state-note {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 16px;
    border: 1px solid #bbf7d0;
    border-radius: 14px;
    background: #f0fdf4;
    color: #166534;
}

.tenant-state-note strong {
    font-weight: 900;
}

.tenant-state-note span {
    color: #276749;
    font-size: 0.88rem;
    font-weight: 750;
    line-height: 1.4;
}

.settings-breadcrumb {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 10px;
    color: #60708d;
    font-size: 0.88rem;
    font-weight: 800;
}

.settings-breadcrumb a {
    color: #1d4ed8;
    text-decoration: none;
}

.settings-breadcrumb a:hover {
    text-decoration: underline;
}

.tenant-plan-button {
    min-width: 104px;
}

.company-config-tab-strip {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0 18px;
    min-width: 0;
    margin: -4px -4px 16px;
    padding: 0 4px;
    border-bottom: 1px solid #d9e4f2;
    overflow: visible;
}

.company-config-tab {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 48px;
    padding: 0 4px 12px;
    border: 0;
    background: transparent;
    color: #4d5f7b;
    font-size: 0.9rem;
    font-weight: 850;
    white-space: nowrap;
    cursor: pointer;
}

.company-config-tab::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    border-radius: 999px;
    background: transparent;
}

.company-config-tab.active {
    color: #1d4ed8;
}

.company-config-tab.active::after {
    background: #2563eb;
}

.company-config-tab-icon {
    display: inline-grid;
    place-items: center;
    width: 22px;
    height: 22px;
    flex: 0 0 auto;
}

.company-config-tab-icon .school-stat-svg {
    width: 18px;
    height: 18px;
}

.settings-compact-detail-list {
    gap: 0;
}

.settings-compact-detail-list .app-detail-row {
    grid-template-columns: minmax(150px, 0.7fr) minmax(160px, 1fr);
    align-items: center;
    gap: 18px;
    padding: 12px 0;
}

.settings-compact-detail-list .app-detail-row:first-child {
    padding-top: 0;
}

.settings-compact-detail-list .app-detail-row span,
.settings-compact-detail-list .app-detail-row strong {
    min-width: 0;
    overflow-wrap: anywhere;
}

.settings-info-bar {
    align-items: flex-start;
    gap: 12px;
}

.settings-info-bar .school-info-copy {
    min-width: 0;
}

.settings-info-bar .school-info-copy strong,
.settings-info-bar .school-info-copy div {
    overflow-wrap: anywhere;
}

.settings-noi-catalog-panel .school-table-shell {
    margin-top: 14px;
}

.settings-summary-grid.settings-noi-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.settings-summary-grid.settings-integrations-summary-grid {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    max-width: 980px;
}

.settings-whatsapp-status-card span {
    font-size: 1.6rem;
    overflow-wrap: anywhere;
}

.settings-noi-summary-grid .settings-summary-card span {
    font-size: 1.55rem;
    overflow-wrap: anywhere;
}

@media (max-width: 760px) {
    .settings-summary-grid.settings-noi-summary-grid {
        grid-template-columns: 1fr;
    }
}

.company-config-panel {
    display: grid;
    gap: 18px;
    max-width: 980px;
    padding: 22px;
    border: 1px solid #dce6f4;
    border-radius: 8px;
    background: #fff;
}

.company-employer-registration-panel {
    max-width: 1120px;
    margin-top: 18px;
}

.company-employer-registration-table {
    min-width: 960px;
}

.company-employer-registration-table td > small,
.company-employer-registration-table td > strong {
    display: block;
}

.company-employer-registration-table td > small {
    margin-top: 4px;
    color: #72809a;
}

.company-employer-location-list {
    display: grid;
    gap: 8px;
    min-width: 260px;
}

.company-employer-location-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.company-employer-location-item span {
    display: grid;
    gap: 2px;
}

.company-employer-location-item small {
    color: #72809a;
    font-size: 0.76rem;
}

.company-employer-location-item em {
    padding: 4px 7px;
    border-radius: 7px;
    font-size: 0.7rem;
    font-style: normal;
    font-weight: 800;
}

.company-employer-location-item em.active {
    background: #eaf9ef;
    color: #2f9d58;
}

.company-employer-location-item em.inactive {
    background: #fff0f0;
    color: #c94a4a;
}

.company-employer-registration-empty {
    padding: 28px;
    color: #64748b;
    text-align: center;
}

.company-employer-location-heading {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding-top: 14px;
    border-top: 1px solid #e7edf6;
}

.company-employer-location-heading strong {
    color: #0f1f3d;
}

.company-employer-location-heading span {
    color: #72809a;
    font-size: 0.82rem;
}

.company-employer-checkbox-line {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 46px;
    padding: 0 14px;
    border: 1px solid #dce5f2;
    border-radius: 12px;
    background: #fff;
}

.company-employer-checkbox-line input {
    width: 18px;
    height: 18px;
    accent-color: #2563eb;
}

.company-employer-checkbox-line strong {
    color: #23324f;
    font-size: 0.9rem;
}

.employer-registration-checkbox small,
.company-employer-registration-modal .school-labeled-field > small,
.employee-employer-registration-field small {
    color: #72809a;
    font-size: 0.78rem;
    line-height: 1.4;
}

.company-employer-uppercase {
    text-transform: uppercase;
}

.employee-employer-registration-field select {
    width: 100%;
}
.company-config-whatsapp-panel {
    max-width: 1120px;
}

.company-config-panel-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.company-config-panel-header h3 {
    margin: 0;
    color: #0f1f3d;
    font-size: 1.1rem;
    font-weight: 900;
}

.company-config-panel-header p {
    margin: 6px 0 0;
    color: #5e6e89;
    font-size: 0.9rem;
    line-height: 1.4;
}

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

.company-config-form-grid .full {
    grid-column: 1 / -1;
}

.company-config-logo-box {
    max-width: 560px;
}

.company-config-save-row {
    display: flex;
    justify-content: flex-end;
}

.company-whatsapp-config-box {
    border-radius: 8px;
    background: #f8fbff;
}

.company-config-actions-row .school-primary-button,
.company-config-actions-row .school-secondary-button {
    min-height: 42px;
}

@media (max-width: 1100px) {
    .tenant-page-header,
    .company-settings-header,
    .tenant-state-note {
        flex-direction: column;
        align-items: stretch;
    }

    .tenant-page-actions,
    .tenant-page-actions .school-primary-button,
    .company-settings-header .school-secondary-button {
        width: 100%;
    }

    .tenant-config-layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {

    .tenant-row-actions,
    .tenant-row-actions .school-secondary-button,
    .tenant-row-actions .tenant-link-button,
    .tenant-config-actions,
    .tenant-config-actions .school-secondary-button {
        width: 100%;
    }
}
@media (max-width: 760px) {
    .company-config-panel,
    .company-config-whatsapp-panel {
        max-width: none;
        padding: 18px;
    }

    .company-config-panel-header,
    .company-config-save-row {
        flex-direction: column;
        align-items: stretch;
    }

    .company-employer-location-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .company-config-panel-header .school-primary-button,
    .company-config-form-grid,
    .company-config-form-grid .full,
    .company-config-save-row .school-primary-button,
    .tenant-template-grid,
    .tenant-whatsapp-status-grid {
        width: 100%;
        grid-column: auto;
        grid-template-columns: 1fr;
    }
}

/* Landing pricing user plan and distributor balance. */
.cloud-user-plan-strip {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 22px;
    width: min(100%, 940px);
    margin: 30px auto 0;
    padding: 18px 20px;
    border: 1px solid #e7eefc;
    border-radius: 24px;
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 58%, #f5fff9 100%);
    box-shadow: 0 18px 46px rgba(15, 23, 42, 0.07);
}

.cloud-user-plan-copy {
    display: grid;
    gap: 5px;
}

.cloud-user-plan-copy span {
    color: var(--cloud-blue);
    font-size: 0.74rem;
    font-weight: 950;
    text-transform: uppercase;
}

.cloud-user-plan-copy h3 {
    margin: 0;
    color: var(--cloud-text);
    font-size: 1.35rem;
    line-height: 1.08;
    font-weight: 950;
}

.cloud-user-plan-copy p {
    max-width: 560px;
    margin: 0;
    color: #777777;
    font-size: 0.92rem;
    line-height: 1.42;
    font-weight: 680;
}

.cloud-user-plan-price {
    display: grid;
    justify-items: end;
    min-width: 152px;
}

.cloud-user-plan-price strong {
    color: var(--cloud-text);
    font-size: 1.65rem;
    line-height: 1;
    font-weight: 950;
}

.cloud-user-plan-price small {
    margin-top: 5px;
    color: #777777;
    font-size: 0.76rem;
    font-weight: 820;
    text-align: right;
}

.cloud-user-plan-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 24px;
    border-radius: 999px;
    background: #101219;
    color: #ffffff;
    font-weight: 930;
    white-space: nowrap;
    box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.08), 0 5px 0 rgba(0, 0, 0, 0.14);
}

.cloud-user-plan-cta .cloud-trigger-label,
.cloud-user-plan-cta:hover,
.cloud-user-plan-cta:focus-visible {
    color: #ffffff !important;
}

.cloud-distributor {
    width: min(calc(100% - 56px), 1440px);
    padding: 72px 0 88px;
}

.cloud-distributor-shell {
    grid-template-columns: minmax(0, 1fr) minmax(470px, 0.92fr);
    gap: 34px;
    align-items: start;
}

.cloud-distributor-story {
    grid-template-columns: minmax(270px, 430px) minmax(0, 1fr);
    gap: 22px 30px;
    padding: 28px;
    border-radius: 26px;
}

.cloud-distributor-logo-wrap {
    width: min(100%, 430px);
    max-width: 430px;
    border-radius: 20px;
}

.cloud-distributor-copy {
    gap: 11px;
}

.cloud-distributor-copy .cloud-section-label {
    font-size: 0.74rem;
}

.cloud-distributor-copy h2 {
    font-size: clamp(1.95rem, 2.45vw, 3rem);
    line-height: 1.04;
}

.cloud-distributor-copy p:last-child {
    font-size: 0.94rem;
    line-height: 1.45;
}

.cloud-distributor-benefits {
    gap: 12px;
    padding-top: 16px;
}

.cloud-distributor-benefits article {
    min-height: 96px;
    padding: 14px;
    border-radius: 16px;
}

.cloud-distributor-benefits strong {
    font-size: 0.86rem;
}

.cloud-distributor-benefits span {
    font-size: 0.78rem;
    line-height: 1.34;
}

.cloud-distributor-form {
    padding: 26px;
    border-radius: 26px;
}

.cloud-distributor-form .cloud-contact-form-heading {
    gap: 8px;
    margin-bottom: 8px;
}

.cloud-distributor-form .cloud-contact-form-heading h2 {
    font-size: clamp(1.7rem, 2vw, 2.45rem);
    line-height: 1.05;
}

.cloud-distributor-form .cloud-contact-form-heading p {
    font-size: 0.9rem;
    line-height: 1.45;
}

.cloud-distributor-form .cloud-contact-form-grid {
    gap: 12px 14px;
}

.cloud-distributor-form .cloud-contact-field input,
.cloud-distributor-form .cloud-contact-field select {
    min-height: 44px;
}

.cloud-distributor-form .cloud-contact-field textarea {
    min-height: 96px;
}

.cloud-distributor-form .cloud-button {
    min-height: 48px;
}

@media (max-width: 1180px) {
    .cloud-user-plan-strip {
        width: min(100%, 860px);
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .cloud-user-plan-cta {
        grid-column: 1 / -1;
        justify-self: end;
    }

    .cloud-distributor-shell {
        grid-template-columns: 1fr;
    }

    .cloud-distributor-form {
        width: min(100%, 760px);
        justify-self: center;
    }
}

@media (max-width: 760px) {
    .cloud-user-plan-strip {
        grid-template-columns: 1fr;
        gap: 16px;
        width: min(100%, 560px);
        margin-top: 24px;
        padding: 18px;
    }

    .cloud-user-plan-price {
        justify-items: start;
    }

    .cloud-user-plan-price small {
        text-align: left;
    }

    .cloud-user-plan-cta {
        justify-self: stretch;
        width: 100%;
    }

    .cloud-distributor {
        width: min(calc(100% - 32px), 620px);
        padding: 56px 0 66px;
    }

    .cloud-distributor-story {
        grid-template-columns: 1fr;
        padding: 22px;
    }

    .cloud-distributor-logo-wrap {
        width: min(100%, 360px);
        max-width: 360px;
        justify-self: center;
    }

    .cloud-distributor-copy h2 {
        font-size: clamp(1.75rem, 8vw, 2.35rem);
    }

    .cloud-distributor-benefits {
        grid-template-columns: 1fr;
    }

    .cloud-distributor-form {
        padding: 22px;
    }
}

/* Landing biometric and device control section. */
.cloud-checking {
    width: min(calc(100% - 64px), 1400px);
    margin: 0 auto;
    padding: 88px 0 92px;
    scroll-margin-top: 128px;
}

.cloud-checking-head {
    display: grid;
    justify-items: center;
    max-width: 900px;
    margin: 0 auto 42px;
    text-align: center;
}

.cloud-checking-head h2 {
    max-width: 860px;
    margin: 0;
    color: var(--cloud-text);
    font-size: clamp(2.25rem, 4vw, 4.7rem);
    line-height: 1.03;
    font-weight: 950;
}

.cloud-checking-head p:last-child {
    max-width: 760px;
    margin: 20px 0 0;
    color: #7c7c7c;
    font-size: 1.04rem;
    line-height: 1.55;
    font-weight: 680;
}

.cloud-checking-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.16fr) minmax(340px, 0.84fr);
    gap: 28px;
    align-items: stretch;
}

.cloud-check-card {
    position: relative;
    display: grid;
    gap: 24px;
    min-width: 0;
    min-height: 560px;
    padding: 30px;
    border: 1px solid #e7e7e7;
    border-radius: 28px;
    overflow: hidden;
    background: #f4f4f4;
}

.cloud-check-card.primary {
    grid-template-columns: minmax(0, 0.98fr) minmax(260px, 0.72fr);
    background:
        radial-gradient(circle at 84% 18%, rgba(82, 221, 151, 0.18), transparent 32%),
        linear-gradient(135deg, #08101b 0%, #101927 56%, #132235 100%);
    color: #ffffff;
    box-shadow: 0 28px 72px rgba(8, 16, 27, 0.18);
}

.cloud-check-card.secondary {
    align-content: start;
    background: linear-gradient(180deg, #f7f7f7 0%, #ffffff 100%);
}

.cloud-check-copy {
    display: grid;
    align-content: start;
    gap: 16px;
    min-width: 0;
    z-index: 1;
}

.cloud-check-copy span {
    color: var(--cloud-blue);
    font-size: 0.76rem;
    font-weight: 950;
    text-transform: uppercase;
}

.cloud-check-card.primary .cloud-check-copy span {
    color: #7fb5ff;
}

.cloud-check-copy h3 {
    margin: 0;
    color: var(--cloud-text);
    font-size: clamp(1.9rem, 3vw, 3.15rem);
    line-height: 1.05;
    font-weight: 950;
}

.cloud-check-card.primary .cloud-check-copy h3 {
    color: #ffffff;
}

.cloud-check-copy p {
    margin: 0;
    color: #777777;
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 680;
}

.cloud-check-card.primary .cloud-check-copy p,
.cloud-check-card.primary .cloud-check-copy li {
    color: rgba(255, 255, 255, 0.78);
}

.cloud-check-copy ul {
    display: grid;
    gap: 10px;
    margin: 6px 0 0;
    padding: 0;
    list-style: none;
}

.cloud-check-copy li {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    color: #686868;
    font-size: 0.94rem;
    line-height: 1.38;
    font-weight: 760;
}

.cloud-check-copy li svg {
    width: 18px;
    height: 18px;
    margin-top: 1px;
    color: #5b95ee;
}

.cloud-check-card.primary .cloud-check-copy li svg {
    color: #52dd97;
}

.cloud-biometric-visual,
.cloud-mobile-visual {
    position: relative;
    display: grid;
    place-items: center;
    min-width: 0;
    min-height: 360px;
    border-radius: 24px;
    overflow: hidden;
}

.cloud-biometric-visual {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02)),
        radial-gradient(circle at 50% 92%, rgba(82, 221, 151, 0.22), transparent 40%);
    border: 1px solid rgba(255, 255, 255, 0.12);
}

.cloud-biometric-device {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 16px;
    width: min(72%, 230px);
    min-height: 320px;
    padding: 24px 18px;
    border-radius: 32px;
    background: linear-gradient(180deg, #111827 0%, #060a12 100%);
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.36), inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.cloud-device-camera {
    width: 14px;
    height: 14px;
    border-radius: 999px;
    background: #52dd97;
    box-shadow: 0 0 0 6px rgba(82, 221, 151, 0.12);
}

.cloud-device-screen {
    display: grid;
    place-items: center;
    gap: 4px;
    width: 100%;
    min-height: 116px;
    border-radius: 18px;
    background: linear-gradient(180deg, #eef5ff 0%, #ffffff 100%);
    color: #101219;
}

.cloud-device-screen strong {
    font-size: 2rem;
    line-height: 1;
    font-weight: 950;
}

.cloud-device-screen small {
    color: #6f7684;
    font-size: 0.78rem;
    font-weight: 800;
}

.cloud-fingerprint-pad {
    display: grid;
    place-items: center;
    width: 94px;
    height: 94px;
    border-radius: 28px;
    background: linear-gradient(180deg, #222b3b, #101722);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.cloud-fingerprint-pad span,
.cloud-fingerprint-pad span::before,
.cloud-fingerprint-pad span::after {
    display: block;
    border: 3px solid #52dd97;
    border-top-color: transparent;
    border-radius: 50%;
}

.cloud-fingerprint-pad span {
    width: 46px;
    height: 46px;
    position: relative;
}

.cloud-fingerprint-pad span::before,
.cloud-fingerprint-pad span::after {
    content: "";
    position: absolute;
    inset: 8px;
}

.cloud-fingerprint-pad span::after {
    inset: 18px;
}

.cloud-biometric-status {
    position: absolute;
    right: 20px;
    bottom: 20px;
    display: grid;
    gap: 2px;
    min-width: 158px;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.92);
    color: #101219;
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.2);
}

.cloud-biometric-status strong {
    font-size: 0.96rem;
    font-weight: 950;
}

.cloud-biometric-status span {
    color: #737373;
    font-size: 0.78rem;
    font-weight: 760;
}

.cloud-mobile-visual {
    min-height: 300px;
    margin-top: 4px;
    background: #e8f1ff;
}

.cloud-phone-shell {
    display: grid;
    place-items: center;
    width: 182px;
    min-height: 310px;
    padding: 12px;
    border-radius: 36px;
    background: #101219;
    box-shadow: 0 26px 52px rgba(15, 23, 42, 0.22);
}

.cloud-phone-screen {
    display: grid;
    place-items: center;
    gap: 8px;
    width: 100%;
    min-height: 286px;
    padding: 22px 16px;
    border-radius: 28px;
    background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
    text-align: center;
}

.cloud-phone-check {
    display: grid;
    place-items: center;
    width: 62px;
    height: 62px;
    border-radius: 999px;
    background: #3ba05b;
    color: #ffffff;
    font-size: 2rem;
    font-weight: 950;
}

.cloud-phone-screen strong {
    color: #101219;
    font-size: 1.08rem;
    font-weight: 950;
}

.cloud-phone-screen small,
.cloud-phone-screen em {
    color: #757575;
    font-size: 0.82rem;
    font-style: normal;
    font-weight: 760;
}

.cloud-distributor-shell > *,
.cloud-distributor-story,
.cloud-distributor-form {
    min-width: 0;
}

.cloud-distributor-logo-wrap {
    display: grid;
    place-items: center;
    width: min(100%, 560px);
    max-width: 560px;
    aspect-ratio: auto;
    min-height: 134px;
    padding: 16px;
    overflow: visible;
    background: rgba(255, 255, 255, 0.035);
}

.cloud-distributor-badge {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 1px auto;
    align-items: center;
    gap: 18px;
    width: 100%;
    min-height: 92px;
    padding: 16px 20px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 999px;
    background: linear-gradient(135deg, #071528 0%, #0b1f36 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 18px 44px rgba(0, 0, 0, 0.22);
}

.cloud-distributor-brand {
    display: block;
    min-width: 0;
}

.cloud-distributor-brand img {
    display: block;
    width: min(100%, 230px);
    max-width: 230px;
    height: auto;
    object-fit: contain;
}

.cloud-distributor-divider {
    width: 1px;
    height: 58px;
    background: rgba(255, 255, 255, 0.18);
}

.cloud-distributor-label {
    color: #ffffff;
    font-size: clamp(0.9rem, 1.45vw, 1.18rem);
    font-weight: 950;
    text-transform: uppercase;
    white-space: nowrap;
}

.cloud-distributor-copy h2 {
    max-width: 100%;
    overflow-wrap: normal;
    text-wrap: balance;
}

@media (max-width: 1280px) {
    .cloud-distributor-shell {
        grid-template-columns: 1fr;
    }

    .cloud-distributor-story,
    .cloud-distributor-form {
        width: min(100%, 900px);
        justify-self: center;
    }
}

@media (max-width: 980px) {
    .cloud-checking-grid {
        grid-template-columns: 1fr;
    }

    .cloud-check-card.primary {
        grid-template-columns: 1fr;
    }

    .cloud-check-card {
        min-height: 0;
    }
}

@media (max-width: 760px) {
    .cloud-checking {
        width: min(calc(100% - 32px), 620px);
        padding: 62px 0 68px;
    }

    .cloud-checking-head {
        margin-bottom: 28px;
    }

    .cloud-checking-head h2 {
        font-size: clamp(2rem, 10vw, 3rem);
    }

    .cloud-check-card {
        padding: 22px;
        border-radius: 22px;
    }

    .cloud-check-copy h3 {
        font-size: clamp(1.65rem, 9vw, 2.35rem);
    }

    .cloud-biometric-visual,
    .cloud-mobile-visual {
        min-height: 300px;
    }

    .cloud-biometric-status {
        left: 16px;
        right: 16px;
        bottom: 16px;
        min-width: 0;
    }

    .cloud-distributor-logo-wrap {
        width: 100%;
        max-width: none;
        min-height: 0;
        padding: 12px;
    }

    .cloud-distributor-badge {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 10px;
        min-height: 0;
        padding: 18px;
        border-radius: 24px;
        text-align: center;
    }

    .cloud-distributor-brand img {
        width: min(100%, 220px);
    }

    .cloud-distributor-divider {
        width: min(100%, 220px);
        height: 1px;
    }

    .cloud-distributor-label {
        white-space: normal;
    }
}

/* Distributor card without duplicate heading. */
.cloud-distributor-story {
    grid-template-columns: 1fr;
    align-content: center;
}

.cloud-distributor-story .cloud-distributor-logo-wrap {
    width: min(100%, 760px);
    max-width: 760px;
    justify-self: center;
}

.cloud-distributor-story .cloud-distributor-badge {
    max-width: 720px;
    margin: 0 auto;
}

.cloud-distributor-benefits {
    grid-column: 1;
}

@media (max-width: 760px) {
    .cloud-distributor-story .cloud-distributor-logo-wrap,
    .cloud-distributor-story .cloud-distributor-badge {
        max-width: none;
    }
}
/* Keep original distributor logo visible without cropping. */
.cloud-distributor-story .cloud-distributor-logo-wrap {
    width: min(100%, 620px);
    max-width: 620px;
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 24px;
    overflow: hidden;
    background: transparent;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.18);
}

.cloud-distributor-story .cloud-distributor-logo-wrap img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center;
}

@media (max-width: 760px) {
    .cloud-distributor-story .cloud-distributor-logo-wrap {
        width: min(100%, 420px);
        max-width: 420px;
    }
}
/* Trial registration flow based on login layout. */
.trial-flow-shell {
    background: #ffffff;
}

.trial-flow-card {
    grid-template-columns: minmax(390px, 46%) minmax(0, 54%);
}

.trial-flow-panel {
    order: 1;
}

.trial-flow-hero {
    order: 2;
}

.trial-flow-panel-inner {
    width: min(calc(100% - 64px), 456px);
    padding: clamp(34px, 5.2vh, 58px) 0;
}

.trial-flow-brand-logo {
    width: min(100%, 246px);
    margin: 0 0 clamp(28px, 4vh, 42px);
}

.trial-flow-heading {
    margin-bottom: 24px;
}

.trial-flow-heading p {
    margin: 0 0 9px;
    color: #5d8be8;
    font-size: 0.82rem;
    line-height: 1.2;
    font-weight: 900;
    text-transform: uppercase;
}

.trial-flow-heading h1 {
    margin: 0;
    color: #1f2024;
    font-size: clamp(2rem, 2.4vw, 2.64rem);
    line-height: 1.02;
    font-weight: 920;
}

.trial-flow-heading span {
    display: block;
    margin-top: 12px;
    color: #777d88;
    font-size: 0.98rem;
    line-height: 1.5;
    font-weight: 650;
}

.trial-flow-form {
    gap: 18px;
}

.trial-stepper {
    display: grid;
    grid-template-columns: 30px 1fr 30px 1fr 30px;
    align-items: center;
    gap: 10px;
    margin-bottom: 4px;
}

.trial-stepper span {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #eceff4;
    color: #8a909a;
    font-size: 0.84rem;
    font-weight: 900;
}

.trial-stepper span.is-current,
.trial-stepper span.is-done {
    background: #111318;
    color: #ffffff;
}

.trial-stepper i {
    height: 4px;
    border-radius: 999px;
    background: #eceff4;
}

.trial-step-copy {
    min-height: 62px;
}

.trial-step-copy span {
    display: block;
    margin-bottom: 6px;
    color: #5d8be8;
    font-size: 0.84rem;
    font-weight: 900;
}

.trial-step-copy strong {
    display: block;
    color: #22252c;
    font-size: clamp(1.22rem, 1.45vw, 1.52rem);
    line-height: 1.15;
    font-weight: 900;
}

.trial-step-copy p {
    margin: 8px 0 0;
    color: #858585;
    font-size: 0.94rem;
    line-height: 1.44;
    font-weight: 650;
}

.trial-step {
    display: none;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.trial-step.is-active {
    display: block;
}

.trial-field-group {
    border-radius: 8px;
    background: #edf3ff;
}

.trial-field-group .login-field {
    background: #edf3ff;
}

.trial-field-group .login-field input,
.trial-field-group .login-field select {
    width: 100%;
    min-width: 0;
    height: 58px;
    padding: 0 24px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #22252c;
    font: inherit;
}

.trial-field-group .login-field input::placeholder {
    color: #777d88;
    opacity: 1;
}

.trial-uppercase-input {
    text-transform: uppercase;
}

.trial-field-error {
    display: block;
    margin: 10px 24px 0;
    color: #d84d4d;
    font-size: 0.78rem;
    font-weight: 850;
    line-height: 1.25;
}
.trial-select-field {
    position: relative;
}

.trial-select-field::after {
    content: "";
    position: absolute;
    right: 22px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid #777d88;
    border-bottom: 2px solid #777d88;
    transform: translateY(-66%) rotate(45deg);
    pointer-events: none;
}

.trial-select-field select {
    appearance: none;
    padding-right: 46px;
}

.trial-summary-card {
    display: grid;
    gap: 5px;
    padding: 18px 20px;
    border-radius: 8px 8px 0 0;
    background: #edf3ff;
}

.trial-summary-card span {
    color: #5d8be8;
    font-size: 0.78rem;
    line-height: 1.2;
    font-weight: 900;
    text-transform: uppercase;
}

.trial-summary-card strong {
    color: #22252c;
    font-size: 1.28rem;
    line-height: 1.15;
    font-weight: 920;
}

.trial-summary-card small {
    color: #777d88;
    font-size: 0.9rem;
    font-weight: 760;
}

.trial-consent {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    padding: 16px 18px;
    border-top: 2px solid #ffffff;
    border-radius: 0 0 8px 8px;
    background: #edf3ff;
    color: #555d6a;
    font-size: 0.9rem;
    line-height: 1.42;
    font-weight: 700;
}

.trial-consent input {
    width: 18px;
    height: 18px;
    margin-top: 2px;
    accent-color: #111318;
}

.trial-consent a {
    color: #5d8be8;
    font-weight: 900;
    text-decoration: none;
}

.trial-flow-actions {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 12px;
}

.trial-flow-actions .trial-next-button:first-child {
    grid-column: 1 / -1;
}

.trial-next-button,
.trial-back-button {
    height: 58px;
    min-height: 58px;
    border-radius: 0 0 8px 8px;
}

.trial-back-button {
    min-width: 118px;
    border: 1px solid #d9dde6;
    background: #ffffff;
    color: #22252c;
    font-size: 1rem;
    font-weight: 900;
    cursor: pointer;
}

.trial-next-button:disabled,
.trial-back-button:disabled {
    cursor: not-allowed;
    opacity: 0.5;
}

.trial-flow-state {
    display: grid;
    gap: 12px;
    padding: 22px;
    border-radius: 14px;
    background: #edf3ff;
    color: #22252c;
}

.trial-flow-state.success {
    background: #eefcf4;
}

.trial-flow-state.info {
    background: #edf3ff;
}

.trial-flow-state strong {
    font-size: 1.18rem;
    line-height: 1.2;
    font-weight: 920;
}

.trial-flow-state span {
    color: #69707c;
    font-size: 0.98rem;
    line-height: 1.46;
    font-weight: 700;
}

.trial-flow-state-link {
    display: inline-grid;
    place-items: center;
    width: fit-content;
    min-height: 44px;
    padding: 0 18px;
    border-radius: 999px;
    background: #111318;
    color: #ffffff;
    font-weight: 900;
    text-decoration: none;
}

.trial-flow-error {
    margin-bottom: 0;
}

.trial-flow-login-link a {
    color: #111318;
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.trial-flow-hero-content {
    min-height: 100vh;
}

@media (max-width: 1180px) {
    .trial-flow-card {
        grid-template-columns: minmax(360px, 49%) minmax(0, 51%);
    }

    .trial-flow-panel-inner {
        width: min(calc(100% - 48px), 424px);
    }
}

@media (max-width: 980px) {
    .trial-flow-card {
        grid-template-columns: 1fr;
    }

    .trial-flow-panel {
        order: 1;
    }

    .trial-flow-hero {
        order: 2;
        display: grid;
        min-height: auto;
    }

    .trial-flow-hero-content {
        min-height: 560px;
    }

    .trial-flow-panel-inner {
        padding: 50px 0 58px;
    }
}

@media (max-width: 640px) {
    .trial-flow-panel-inner {
        width: min(calc(100% - 36px), 400px);
        padding: 40px 0 50px;
    }

    .trial-flow-brand-logo {
        width: min(100%, 230px);
        margin-bottom: 28px;
    }

    .trial-flow-heading h1 {
        font-size: 2rem;
    }

    .trial-step-copy {
        min-height: 70px;
    }

    .trial-flow-actions {
        grid-template-columns: 1fr;
    }

    .trial-back-button,
    .trial-next-button {
        width: 100%;
    }

    .trial-flow-hero-content {
        min-height: 540px;
    }
}

/* Trial registration visual refinement. */
.trial-flow-shell {
    padding: 0;
    background: #ffffff;
}

.trial-flow-card {
    width: 100%;
    min-height: 100vh;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.trial-flow-panel,
.trial-flow-hero {
    min-height: 100vh;
}

.trial-flow-panel {
    position: relative;
    display: grid;
    place-items: center;
}

.trial-flow-panel-inner {
    width: min(calc(100% - 96px), 414px);
    min-height: auto;
    padding: clamp(118px, 15vh, 158px) 0 clamp(42px, 6vh, 70px);
}

.trial-flow-brand-logo {
    position: absolute;
    top: clamp(34px, 4.6vh, 54px);
    left: clamp(34px, 4.8vw, 62px);
    z-index: 2;
    width: clamp(132px, 8.8vw, 168px);
    max-width: calc(50vw - 84px);
    margin: 0;
}

.trial-flow-heading {
    margin-bottom: clamp(58px, 7vh, 86px);
}

.trial-flow-heading p,
.trial-step-copy span {
    display: none;
}

.trial-step-copy {
    min-height: auto;
    margin-bottom: 28px;
}

.trial-step-copy strong {
    font-size: clamp(1.12rem, 1.25vw, 1.32rem);
}

.trial-flow-form {
    gap: 16px;
}

.trial-flow-actions {
    margin-top: 18px;
}

.trial-next-button,
.trial-next-button:visited,
.trial-next-button:hover,
.trial-next-button:focus-visible,
.trial-flow-state-link,
.trial-flow-state-link:visited,
.trial-flow-state-link:hover,
.trial-flow-state-link:focus-visible {
    color: #ffffff !important;
}

.trial-next-button {
    background: #111318 !important;
    opacity: 1;
}

.trial-next-button:disabled {
    background: #9a9a9a !important;
    color: #ffffff !important;
    opacity: 1;
}

.trial-flow-state-link {
    background: #111318;
}

@media (max-width: 1180px) {
    .trial-flow-card {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .trial-flow-panel-inner {
        width: min(calc(100% - 72px), 408px);
    }
}

@media (max-width: 980px) {
    .trial-flow-card {
        grid-template-columns: 1fr;
    }

    .trial-flow-panel,
    .trial-flow-hero {
        min-height: auto;
    }

    .trial-flow-brand-logo {
        position: static;
        width: 150px;
        max-width: none;
        margin: 0 0 44px;
    }

    .trial-flow-panel-inner {
        width: min(calc(100% - 48px), 424px);
        padding: 42px 0 58px;
    }

    .trial-flow-heading {
        margin-bottom: 44px;
    }
}

@media (max-width: 640px) {
    .trial-flow-brand-logo {
        width: 132px;
        margin-bottom: 34px;
    }

    .trial-flow-panel-inner {
        width: min(calc(100% - 36px), 400px);
    }
}
