/* Static merged css: extra-pure-970b4eb9c534. Source order is preserved. */
/* source: cssjs/Shared/usability/dropdown-fields.css; sha256: 8c5dcf023ed88177b09682dca4adea7bbeb96d3ac632701e8713a6ccaeede084 */
/* Shared by full screens and quick-entry frames. Register before the control
   interaction layer so pressed selections retain readable black text. */
@layer alfares-dropdown-fields {
  :is(.my-report-select-options, .alfares-catalog-select-options, .auth-select-options) {
    overflow-y: scroll !important;
    scrollbar-gutter: stable !important;
    scrollbar-width: auto !important;
    scrollbar-color: #6b8eae #edf3f8 !important;
  }

  :is(.my-report-select-options, .alfares-catalog-select-options, .auth-select-options)::-webkit-scrollbar {
    width: 10px !important;
  }

  :is(.my-report-select-options, .alfares-catalog-select-options, .auth-select-options)::-webkit-scrollbar-track {
    border-radius: 8px !important;
    background: #edf3f8 !important;
  }

  :is(.my-report-select-options, .alfares-catalog-select-options, .auth-select-options)::-webkit-scrollbar-thumb {
    min-height: 28px !important;
    border: 2px solid #edf3f8 !important;
    border-radius: 8px !important;
    background: #6b8eae !important;
  }

  @supports selector(::-webkit-scrollbar) {
    :is(.my-report-select-options, .alfares-catalog-select-options, .auth-select-options) {
      scrollbar-color: auto !important;
    }
  }

  :is(select, option, optgroup,
      .my-report-select-button, .my-report-select-value, .my-report-select-option,
      .alfares-catalog-select-trigger, .alfares-catalog-select-value, .alfares-catalog-select-option,
      .auth-select-trigger, .auth-select-trigger > span, .auth-select-option,
      .my-report-select-search, .alfares-catalog-select-search, .auth-select-search input,
      .account-lookup-picker, [data-account-selected-text]) {
    color: #000 !important;
    -webkit-text-fill-color: #000 !important;
  }

  /* These are selection surfaces only; semantic add/delete actions and balance
     indicators keep their own colors. Portalled option lists are included. */
  :is(select, option, optgroup) {
    background-color: #fff !important;
  }

  :is(.my-report-select-button, .my-report-select-panel,
      .alfares-catalog-select-trigger, .alfares-catalog-select-menu,
      .auth-select-trigger, .auth-select-panel, .auth-select-search,
      .my-report-select-search, .alfares-catalog-select-search, .account-lookup-picker) {
    background-color: #fff !important;
    background-image: none !important;
  }

  :is(.my-report-select-option, .alfares-catalog-select-option, .auth-select-option) {
    background-color: #fff !important;
    background-image: none !important;
    box-shadow: none !important;
  }

  :is(.my-report-select-option, .alfares-catalog-select-option, .auth-select-option)
    :is(span, strong, small, b) {
    color: #000 !important;
    -webkit-text-fill-color: #000 !important;
  }

  :is(.my-report-select-option, .alfares-catalog-select-option, .auth-select-option)
    :is(svg, i) {
    -webkit-text-fill-color: currentColor !important;
  }

  :is(.my-report-select-option, .alfares-catalog-select-option, .auth-select-option):is(:disabled, [aria-disabled="true"]) {
    cursor: not-allowed;
    opacity: .58;
  }

  :is(.my-report-select-option, .alfares-catalog-select-option, .auth-select-option):is(
      :hover, :focus-visible, :active, .is-active, [aria-selected="true"]) {
    background-color: #edf3f8 !important;
    background-image: none !important;
    border-color: #9eafc0 !important;
    box-shadow: none !important;
  }

  :is(.my-report-select-button, .alfares-catalog-select-trigger, .auth-select-trigger,
      .account-lookup-picker):active {
    background-color: #edf3f8 !important;
    border-color: #9eafc0 !important;
    box-shadow: none !important;
  }

  :is(.my-report-select-button, .alfares-catalog-select-trigger, .auth-select-trigger,
      .account-lookup-picker):is(:disabled, [aria-disabled="true"]),
  select:disabled {
    background-color: #f0f2f4 !important;
  }

  /* The existing reference controls share a single border. No DOM relocation,
     event replacement, or change to the native select's value is needed. */
  .tarefat-account-picker {
    direction: inherit !important;
  }

  :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field,
      .account-lookup-control, .tarefat-account-picker) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 0 !important;
    min-width: 0 !important;
    width: 100%;
    padding: 2px !important;
    border: 1px solid #c6d4e0 !important;
    border-radius: 9px !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field,
      .account-lookup-control, .tarefat-account-picker):focus-within {
    border-color: #657b91 !important;
    outline: 1px solid #657b91;
    outline-offset: 1px;
  }

  :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field,
      .account-lookup-control, .tarefat-account-picker):has(> :is(.alfares-quick-entry-field-menu-trigger,
      .items-reference-menu-trigger, .accounts-reference-menu-trigger,
      .cost-centers-inline-button, .account-lookup-more, .tarefat-account-picker__actions):not([hidden], .d-none, [aria-hidden="true"])) {
    grid-template-columns: auto minmax(0, 1fr) !important;
  }

  /* An enhanced select stays a 1px absolute element behind its combobox; a
     layered 100% width would stretch it across the screen and add a scrollbar. */
  :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field,
      .account-lookup-control, .tarefat-account-picker) > :is(select:not(.is-enhanced), .my-document-select-combobox,
      .my-report-select-combobox, .alfares-catalog-select,
      .cost-centers-control--select, .account-lookup-picker) {
    grid-column: -2 / -1 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 6px !important;
    background-color: transparent !important;
    box-shadow: none !important;
  }

  :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field)
    :is(.my-report-select-button, .alfares-catalog-select-trigger,
        .cost-centers-control--select > select) {
    border: 0 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
  }

  :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field,
      .account-lookup-control, .tarefat-account-picker) select:disabled {
    background-color: #f0f2f4 !important;
    cursor: not-allowed;
  }

  :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field,
      .account-lookup-control, .tarefat-account-picker) > :is(.alfares-quick-entry-field-menu-trigger,
      .items-reference-menu-trigger, .accounts-reference-menu-trigger,
      .cost-centers-inline-button, .account-lookup-more, .tarefat-account-picker__actions):not([hidden], .d-none, [aria-hidden="true"]) {
    grid-column: 1 !important;
    grid-row: 1 !important;
    position: relative !important;
    inset: auto !important;
    display: inline-grid !important;
    place-items: center !important;
    align-self: stretch !important;
    width: 32px !important;
    min-width: 32px !important;
    height: auto !important;
    min-height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: #f5f7f9 !important;
    color: #000 !important;
    -webkit-text-fill-color: #000 !important;
    box-shadow: none !important;
    cursor: pointer;
    touch-action: manipulation;
  }

  /* Keep the action physically on the right for both document directions. */
  :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field,
      .account-lookup-control, .tarefat-account-picker):dir(ltr):has(> :is(.alfares-quick-entry-field-menu-trigger,
      .items-reference-menu-trigger, .accounts-reference-menu-trigger,
      .cost-centers-inline-button, .account-lookup-more, .tarefat-account-picker__actions):not([hidden], .d-none, [aria-hidden="true"])) {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }

  :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field,
      .account-lookup-control, .tarefat-account-picker):dir(ltr) > :is(select, .my-document-select-combobox,
      .my-report-select-combobox, .alfares-catalog-select,
      .cost-centers-control--select, .account-lookup-picker) {
    grid-column: 1 !important;
  }

  :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field,
      .account-lookup-control, .tarefat-account-picker):dir(ltr) > :is(.alfares-quick-entry-field-menu-trigger,
      .items-reference-menu-trigger, .accounts-reference-menu-trigger,
      .cost-centers-inline-button, .account-lookup-more, .tarefat-account-picker__actions):not([hidden], .d-none, [aria-hidden="true"]) {
    grid-column: 2 !important;
  }

  :is(.alfares-quick-entry-field-menu-trigger, .items-reference-menu-trigger,
      .accounts-reference-menu-trigger, .cost-centers-inline-button,
      .account-lookup-more, .tarefat-account-picker__actions):focus-visible {
    outline: 2px solid #657b91 !important;
    outline-offset: -2px !important;
  }

  :is(.alfares-quick-entry-field-menu-trigger, .items-reference-menu-trigger,
      .accounts-reference-menu-trigger, .cost-centers-inline-button,
      .account-lookup-more, .tarefat-account-picker__actions):disabled {
    opacity: .55;
    cursor: not-allowed;
  }

  /* Customer/supplier fields already have a shared frame and extra detail
     controls. Swap only the two edge actions, retaining their existing tracks. */
  .invoice-party-field-shell:has(> .invoice-party-menu-trigger:not([hidden], .d-none, [aria-hidden="true"]))
    > .invoice-party-menu-trigger {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  .invoice-party-field-shell:has(> .invoice-party-menu-trigger:not([hidden], .d-none, [aria-hidden="true"]))
    > :is(.invoice-party-field-icon:not(.invoice-party-detail-field-trigger), [data-party-search-menu-button]) {
    grid-column: -2 / -1 !important;
    grid-row: 1 !important;
  }

  .invoice-party-field-shell:dir(ltr):has(> .invoice-party-menu-trigger:not([hidden], .d-none, [aria-hidden="true"]))
    > .invoice-party-menu-trigger {
    grid-column: -2 / -1 !important;
  }

  .invoice-party-field-shell:dir(ltr):has(> .invoice-party-menu-trigger:not([hidden], .d-none, [aria-hidden="true"]))
    > :is(.invoice-party-field-icon:not(.invoice-party-detail-field-trigger), [data-party-search-menu-button]) {
    grid-column: 1 !important;
  }

  :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field,
      .account-lookup-control, .tarefat-account-picker):is([hidden], .d-none, [aria-hidden="true"]),
  :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field,
      .account-lookup-control, .tarefat-account-picker) > :is(.alfares-quick-entry-field-menu-trigger,
      .items-reference-menu-trigger, .accounts-reference-menu-trigger,
      .cost-centers-inline-button, .account-lookup-more, .tarefat-account-picker__actions):is([hidden], .d-none, [aria-hidden="true"]) {
    display: none !important;
  }

  @media (max-width: 1199px), (pointer: coarse) {
    :is(.alfares-quick-entry-field-control, .alfares-unified-reference-field,
        .account-lookup-control, .tarefat-account-picker) > :is(.alfares-quick-entry-field-menu-trigger,
        .items-reference-menu-trigger, .accounts-reference-menu-trigger,
        .cost-centers-inline-button, .account-lookup-more, .tarefat-account-picker__actions):not([hidden], .d-none, [aria-hidden="true"]) {
      width: 44px !important;
      min-width: 44px !important;
      min-height: 44px !important;
    }
  }
}


/* source: cssjs/Shared/usability/row-number-more.css; sha256: e257783ad79e3edcd2c3047454cfb3ff2f14a0b94af1cef18434da8a052032a9 */
/* A row number and its existing action share one intrinsic table track. */
@layer alfares-row-number-more {
  :is(table:has(> thead [data-row-number-more-cell]), .my-report-data-table, .my-report-html-mini-table, .my-document-line-table, .fp-table, .items-units-detail-table, .units-table, .sellers-table) {
    table-layout: auto !important;
  }

  :is(.erp-invoice-detail-table-scroll-x, .item-pricing-table-scroll):has(> table > thead [data-row-number-more-cell]) {
    scrollbar-gutter: auto !important;
  }

  :is([data-row-number-more-cell], .col-row-number, .my-document-line-table .col-no, .my-document-line-table [data-column-key="idx"], .unit-col-row, .fp-col-no, .units-col-id, .units-row-serial) {
    width: 1% !important;
    inline-size: 1% !important;
    min-width: 0 !important;
    min-inline-size: 0 !important;
    max-width: none !important;
    max-inline-size: none !important;
    padding-inline: 4px !important;
    white-space: nowrap !important;
    text-align: end !important;
  }

  :is(.alfares-row-number-more, .erp-invoice-row-number-actions, .voucher-line-row-head, .opr-unit-row-anchor, .report-row-number-actions-group) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 16px !important;
    align-items: center !important;
    justify-content: end !important;
    gap: 2px !important;
    width: 100% !important;
    inline-size: 100% !important;
    min-width: max-content !important;
    min-inline-size: max-content !important;
    min-height: 24px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  :is([data-row-number], [data-business-number], .erp-invoice-row-number-input, .voucher-line-row-head > input[readonly], .opr-unit-row-anchor > .is-index, .invoice-row-order) {
    field-sizing: content !important;
    width: auto !important;
    inline-size: auto !important;
    min-width: 1ch !important;
    min-inline-size: 1ch !important;
    max-width: none !important;
    max-inline-size: none !important;
    height: 24px !important;
    block-size: 24px !important;
    min-height: 24px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
    font: inherit !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums;
    line-height: 24px !important;
    text-align: end !important;
    white-space: nowrap !important;
    justify-self: end !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    appearance: textfield;
  }

  :is([data-row-number], .erp-invoice-row-number-input)::-webkit-inner-spin-button,
  :is([data-row-number], .erp-invoice-row-number-input)::-webkit-outer-spin-button {
    appearance: none;
    margin: 0;
  }

  td[data-row-number] {
    width: 1% !important;
    inline-size: 1% !important;
    min-width: 0 !important;
    min-inline-size: 0 !important;
    padding-inline: 4px !important;
  }

  [data-row-number] > button {
    width: auto !important;
    height: 24px !important;
    min-height: 24px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
    font: inherit !important;
    line-height: 24px !important;
    transform: none !important;
    transition: none !important;
  }

  [data-row-number] > button > span {
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
  }

  :is([data-row-more-trigger], [data-header-more-trigger], .report-row-menu-trigger, .report-row-number-actions-group > .report-row-bulk-trigger, .erp-invoice-row-number-actions > .erp-detail-row-toggle, .voucher-line-context-button, .opr-unit-row-anchor > .items-row-action, .unit-settings-trigger, .my-document-line-table .invoice-column-settings-header-button) {
    display: inline-grid !important;
    place-content: center !important;
    place-items: center !important;
    width: 16px !important;
    inline-size: 16px !important;
    min-width: 16px !important;
    min-inline-size: 16px !important;
    max-width: 16px !important;
    max-inline-size: 16px !important;
    height: 24px !important;
    block-size: 24px !important;
    min-height: 24px !important;
    min-block-size: 24px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
    font-size: 16px !important;
    line-height: 1 !important;
    transform: none !important;
    translate: none !important;
    scale: none !important;
    transition: none !important;
    flex: 0 0 16px !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    cursor: pointer;
  }

  :is([data-row-more-trigger], [data-header-more-trigger], .report-row-menu-trigger, .report-row-number-actions-group > .report-row-bulk-trigger, .erp-invoice-row-number-actions > .erp-detail-row-toggle, .voucher-line-context-button, .opr-unit-row-anchor > .items-row-action, .unit-settings-trigger, .my-document-line-table .invoice-column-settings-header-button) :is(svg, i, span) {
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
    transform: none !important;
    translate: none !important;
    scale: none !important;
    box-shadow: none !important;
    transition: none !important;
  }

  :is([data-row-more-trigger], [data-header-more-trigger], .erp-invoice-row-number-actions > .erp-detail-row-toggle, .voucher-line-context-button, .opr-unit-row-anchor > .items-row-action, .unit-settings-trigger, .my-document-line-table .invoice-column-settings-header-button) svg {
    width: 14px !important;
    height: 14px !important;
  }

  .report-row-menu-trigger {
    grid-template-columns: 3px !important;
    grid-template-rows: repeat(3, 3px) !important;
    row-gap: 2px !important;
  }

  .report-row-number-actions-group > .report-row-bulk-trigger::before {
    content: "" !important;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 -5px 0 currentColor, 0 5px 0 currentColor;
  }

  .report-row-number-actions-group > .report-row-bulk-trigger > span {
    display: none !important;
  }

  .report-row-number-actions-group > .report-row-bulk-trigger > b {
    display: none !important;
  }

  :is(.report-row-selection-heading, .report-row-selection-cell, .report-row-selection-actions-heading, .report-row-selection-actions-cell, .report-row-selection-actions-footer):not([data-row-number-more-cell]) {
    width: 1% !important;
    inline-size: 1% !important;
    min-width: 0 !important;
    min-inline-size: 0 !important;
    max-width: none !important;
    max-inline-size: none !important;
    padding-inline: 4px !important;
  }

  .report-row-selection-actions-group:not(.report-row-number-actions-group) {
    min-width: 0 !important;
    min-inline-size: 0 !important;
    gap: 0 !important;
  }

  .report-row-selection-actions-group.report-row-selection-number-group {
    display: grid !important;
    grid-template-columns: max-content minmax(max-content, 1fr) !important;
    gap: 4px !important;
    width: 100% !important;
    min-width: max-content !important;
    min-inline-size: max-content !important;
  }

  /* The ordinal pin follows the entire checkbox hit area, not its glyph. */
  .my-report-data-table:has(> thead tr > th:first-child [data-select-page]) {
    --alfares-row-selection-track: 33px;
  }

  .my-report-data-table:has(> thead tr > th:first-child [data-select-page])
    :is(.report-row-selection-actions-heading, .report-row-selection-actions-cell, .report-row-selection-actions-footer) {
    box-sizing: border-box !important;
    width: var(--alfares-row-selection-track) !important;
    inline-size: var(--alfares-row-selection-track) !important;
    min-width: var(--alfares-row-selection-track) !important;
    min-inline-size: var(--alfares-row-selection-track) !important;
    max-width: var(--alfares-row-selection-track) !important;
    max-inline-size: var(--alfares-row-selection-track) !important;
  }

  .my-report-data-table:has(> thead tr > th:first-child [data-select-page]) :is(th, td).col-row-number {
    position: sticky !important;
    left: auto !important;
    right: auto !important;
    inset-inline-end: auto !important;
    inset-inline-start: var(--alfares-row-selection-track) !important;
    z-index: 6 !important;
  }

  .my-report-data-table:has(> thead tr > th:first-child [data-select-page]) tbody td.report-row-selection-actions-cell {
    z-index: 7 !important;
  }

  /* Shared unpinned headings use 12 and footers use 11. */
  .my-report-data-table:has(> thead tr > th:first-child [data-select-page]) thead th.col-row-number {
    z-index: 13 !important;
  }

  .my-report-data-table:has(> thead tr > th:first-child [data-select-page]) thead th.report-row-selection-actions-heading {
    z-index: 14 !important;
  }

  .my-report-data-table:has(> thead tr > th:first-child [data-select-page]) tfoot td.col-row-number {
    z-index: 12 !important;
  }

  .my-report-data-table:has(> thead tr > th:first-child [data-select-page]) tfoot td.report-row-selection-actions-footer {
    z-index: 13 !important;
  }

  @media (pointer: coarse) {
    .my-report-data-table:has(> thead tr > th:first-child [data-select-page]) {
      --alfares-row-selection-track: 45px;
    }
  }
}


/* source: cssjs/Shared/usability/action-column-fit.css; sha256: 383d7b4d9842ea3b7c65bea41c48abe30044837efc138ac41a5829f18beab9fd */
/* Action tracks use the same intrinsic sizing as row-number-more.css. */
@layer alfares-table-actions {
  table:has(> :is(thead, tbody, tfoot) > tr > :is(th, td):is([data-table-action-cell], [data-column-key="actions"], [data-col="actions"],
    [data-unit-price-column="actions"], .my-document-line-table .col-action,
    .unit-col-actions, .unit-col-delete, .items-units-detail-table .col-delete,
    .units-col-action, .locations-col-action, .branches-col-action, .categories-col-action,
    .activities-col-action, .sources-col-action, .cost-centers-col-action, .sellers-col-action,
    .price-col-action, [data-price-level-table] [data-column-key="action"], .units-row-action, .locations-row-action, .branches-row-action,
    .categories-row-action, .activities-row-action, .sources-row-action, .cost-centers-row-action,
    .sellers-row-action, .price-row-action)),
  table:has(> tbody > tr > td > :is(.erp-detail-row-actions, .voucher-line-delete-stack, .opr-unit-menu-anchor,
    .unit-actions-head, .hrp-finance-actions, .hrp-table-action,
    .account-sessions__row-action, .myauth-table-action, .config-license-payment-complete-action,
    [data-recipe-remove])),
  table:has(> tbody > tr > td > form > .hrp-table-action) {
    table-layout: auto !important;
  }

  :is(th, td):is([data-table-action-cell], [data-column-key="actions"], [data-col="actions"],
    [data-unit-price-column="actions"], .my-document-line-table .col-action,
    .unit-col-actions, .unit-col-delete, .items-units-detail-table .col-delete,
    .units-col-action, .locations-col-action, .branches-col-action, .categories-col-action,
    .activities-col-action, .sources-col-action, .cost-centers-col-action, .sellers-col-action,
    .price-col-action, [data-price-level-table] [data-column-key="action"], .units-row-action, .locations-row-action, .branches-row-action,
    .categories-row-action, .activities-row-action, .sources-row-action, .cost-centers-row-action,
    .sellers-row-action, .price-row-action),
  td:has(> :is(.erp-detail-row-actions, .voucher-line-delete-stack, .opr-unit-menu-anchor,
    .unit-actions-head, .hrp-finance-actions, .hrp-table-action,
    .account-sessions__row-action, .myauth-table-action, .config-license-payment-complete-action,
    [data-recipe-remove])),
  td:has(> form > .hrp-table-action) {
    width: 1% !important;
    inline-size: 1% !important;
    min-width: 0 !important;
    min-inline-size: 0 !important;
    max-width: none !important;
    max-inline-size: none !important;
    padding-inline: 4px !important;
    white-space: nowrap !important;
    text-align: center !important;
  }

  :is(th, td) > :is(.erp-detail-row-actions, .voucher-line-delete-stack,
    .opr-unit-menu-anchor, .unit-actions-head, .hrp-finance-actions):not([hidden]):not([aria-hidden="true"]) {
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    width: max-content !important;
    inline-size: max-content !important;
    min-width: max-content !important;
    min-inline-size: max-content !important;
    max-width: none !important;
    max-inline-size: none !important;
    white-space: nowrap !important;
  }

  :is(th, td) > :is(.erp-detail-row-actions, .voucher-line-delete-stack,
    .opr-unit-menu-anchor, .unit-actions-head, .hrp-finance-actions) > :is(button, a, input, form) {
    flex: 0 0 auto !important;
  }

}

/* Keep normal flow below hidden classes and inline display rules. */
[data-price-level-table] td[data-column-key="action"] > .price-row-open:not([hidden]):not([aria-hidden="true"]) {
  display: inline-grid;
  vertical-align: middle;
}


/* source: cssjs/Shared/usability/system-control-interactions.css; sha256: 5321fa4283849254813f241ac48b88cb5872de808cdbc4364bfe85b6fd703c58 */
/* Keep interaction paint separate from layout transforms, state arrows and
   loading animations. Important rules in this layer also cover later skins. */
@layer alfares-control-interactions {
  :root {
    --alfares-control-on-primary: #fff;
    --alfares-control-palette-primary: var(--my-shell-primary, var(--auth-primary, var(--p-blue, var(--blue-700, #2563eb))));
  }

  :is(body[data-auth-screen="login"], body.mysite-register-body) {
    --alfares-control-palette-primary: var(--auth-primary, var(--my-shell-primary, var(--p-blue, var(--blue-700, #2563eb))));
  }

  html[data-my-theme="green"] :is(body[data-auth-screen="login"], body.mysite-register-body),
  html[data-my-theme="dark"] :is(body[data-auth-screen="login"], body.mysite-register-body),
  html[data-my-theme="orange"] :is(body[data-auth-screen="login"], body.mysite-register-body) {
    --alfares-control-on-primary: #071423;
  }

  :is(
    button, input[type="button"], input[type="submit"], input[type="reset"], input[type="image"],
    a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick],
    .btn, .square-tool, .erp-tree-node, .kt-profile-list-item,
    .template-entry, .mng-template-card, .preview-structure-card, .surface-summary-row,
    .my-report-summary-icon, .my-document-money-icon,
    .icon, .fa, .fas, .far, .bi
  ) {
    --alfares-control-primary: var(--alfares-control-palette-primary);
    transition-property: box-shadow, background-color, color, border-color !important;
    transition-duration: .12s !important;
    transition-timing-function: ease-out !important;
  }

  :is(
    button, input[type="button"], input[type="submit"], input[type="reset"], input[type="image"],
    a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick],
    .btn, .square-tool, .erp-tree-node, .kt-profile-list-item,
    .template-entry, .mng-template-card, .preview-structure-card, .surface-summary-row,
    .my-report-summary-icon, .my-document-money-icon,
    .icon, .fa, .fas, .far, .bi
  ):hover:not(:disabled, [disabled], [aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *) {
    box-shadow: none !important;
  }

  :is(
    button, input[type="button"], input[type="submit"], input[type="reset"], input[type="image"],
    a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick],
    .btn, .square-tool, .erp-tree-node, .kt-profile-list-item,
    .template-entry, .mng-template-card, .preview-structure-card, .surface-summary-row,
    .my-report-summary-icon, .my-document-money-icon,
    .icon, .fa, .fas, .far, .bi
  ):active:not(:disabled, [disabled], [aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *) {
    background-color: var(--alfares-control-primary) !important;
    background-image: none !important;
    border-color: var(--alfares-control-primary) !important;
    color: var(--alfares-control-on-primary) !important;
    -webkit-text-fill-color: var(--alfares-control-on-primary) !important;
    box-shadow: none !important;
  }

  :is(button, a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick], .btn, .square-tool, .erp-tree-node, .kt-profile-list-item, .template-entry, .mng-template-card, .preview-structure-card, .surface-summary-row)
    :is(.icon, .fa, .fas, .far, .bi):hover {
    box-shadow: none !important;
  }

  :is(button, a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick], .btn, .square-tool, .erp-tree-node, .kt-profile-list-item, .template-entry, .mng-template-card, .preview-structure-card, .surface-summary-row)
    :is(i, svg, span, strong, small, label) {
    transition-property: color, fill, stroke !important;
  }

  :is(button, a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick], .btn, .square-tool, .erp-tree-node, .kt-profile-list-item, .template-entry, .mng-template-card, .preview-structure-card, .surface-summary-row):active:not(:disabled, [disabled], [aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *)
    :is(i, svg, span, strong, small, label):not(.preview-mini-pill, .template-badge, .template-tag, .dashboard-switcher__current-badge):not(:is(.preview-mini-pill, .template-badge, .template-tag, .dashboard-switcher__current-badge, .template-entry-preview-canvas, .template-entry-content) *) {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
  }

  /* Badges keep their own contrasting foreground and painted surface. */
  :is(button, a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick], .btn, .square-tool, .erp-tree-node, .kt-profile-list-item, .template-entry, .mng-template-card, .preview-structure-card, .surface-summary-row):active:not(:disabled, [disabled], [aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *)
    :is(.preview-mini-pill, .template-badge, .template-tag, .dashboard-switcher__current-badge),
  :is(button, a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick], .btn, .square-tool, .erp-tree-node, .kt-profile-list-item, .template-entry, .mng-template-card, .preview-structure-card, .surface-summary-row):active:not(:disabled, [disabled], [aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *)
    :is(.preview-mini-pill, .template-badge, .template-tag, .dashboard-switcher__current-badge) * {
    -webkit-text-fill-color: currentColor !important;
  }

  /* A miniature report and its white caption surface retain their own paint. */
  :is(.template-entry, .mng-template-card):active:not([aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *)
    :is(.template-entry-preview-canvas, .template-entry-content),
  :is(.template-entry, .mng-template-card):active:not([aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *)
    :is(.template-entry-preview-canvas, .template-entry-content) * {
    -webkit-text-fill-color: currentColor !important;
  }

  :is(.surface-summary-row, .template-entry, .mng-template-card):active:not([aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *)
    button:not(:active) {
    -webkit-text-fill-color: currentColor !important;
  }

  :is(.template-entry, .mng-template-card):active:not([aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *)
    :is(.template-entry-content .mng-template-card__meta, .template-entry-content .mng-template-card__meta span) {
    color: var(--template-ink, #172033) !important;
    -webkit-text-fill-color: currentColor !important;
  }

  .surface-summary-row:active:not([aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *)
    :is(.surface-summary-title, .surface-summary-sub) {
    color: var(--alfares-control-on-primary) !important;
    -webkit-text-fill-color: var(--alfares-control-on-primary) !important;
  }

  /* Known painted icon surfaces share the pressed control's contrast palette. */
  :is(button, a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick], .btn):active:not(:disabled, [disabled], [aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *)
    :is(.business-type-card__label, .auth-advanced-icon, .report-owned-menu__icon, .nav-popover__icon, .official-action__icon, .mng-right-toolbelt-action__icon) {
    background-color: var(--alfares-control-primary) !important;
    background-image: none !important;
    color: var(--alfares-control-on-primary) !important;
    -webkit-text-fill-color: var(--alfares-control-on-primary) !important;
  }

  :is(button, a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick], .btn, .square-tool, .erp-tree-node, .kt-profile-list-item, .template-entry, .mng-template-card, .preview-structure-card, .surface-summary-row):active:not(:disabled, [disabled], [aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *)
    svg:not(.template-entry-preview-canvas *) :is([fill]:not([fill="none"]):not([fill^="url("])) {
    fill: currentColor !important;
  }

  :is(button, a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick], .btn, .square-tool, .erp-tree-node, .kt-profile-list-item, .template-entry, .mng-template-card, .preview-structure-card, .surface-summary-row):active:not(:disabled, [disabled], [aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *)
    svg:not(.template-entry-preview-canvas *) :is([stroke]:not([stroke="none"]):not([stroke^="url("])) {
    stroke: currentColor !important;
  }

  :is(button, a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick], .btn, .square-tool, .erp-tree-node, .kt-profile-list-item, .template-entry, .mng-template-card, .preview-structure-card, .surface-summary-row)
    :is(:disabled, [disabled], [aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):hover,
  :is(button, a[href], summary, [role="button"], [role="tab"], [role="menuitem"], [onclick], .btn, .square-tool, .erp-tree-node, .kt-profile-list-item, .template-entry, .mng-template-card, .preview-structure-card, .surface-summary-row):is(:disabled, [disabled], [aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):hover,
  [aria-busy="true"] :is(button, a[href], [role="button"], .btn):hover {
    box-shadow: none !important;
  }

  /* Pointer tilt used to move controls together with their parent card. */
  [data-tilt] {
    --tilt-x: 0deg !important;
    --tilt-y: 0deg !important;
  }
}


/* source: cssjs/Shared/usability/refresh-button.css; sha256: 3353db5f527b78eb7adf2af168f4db06948bcaaefcfdc99da9c9deda5ee0764d */
/* Native refresh controls retain their own dimensions and request lifecycle. */
@layer alfares-control-interactions {
  :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]) {
    --alfares-refresh-green: #198344;
    --alfares-refresh-pressed: #187b3e;
    background-color: var(--alfares-refresh-green) !important;
    background-image: none !important;
    border-color: var(--alfares-refresh-green) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    box-shadow: none !important;
    opacity: 1 !important;
    transition-property: box-shadow, background-color !important;
    transition-duration: .12s !important;
  }

  :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry])
    :is(svg, i, span, strong, small) {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    box-shadow: none !important;
  }

  :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry])
    :is(.report-owned-menu__icon, .ico) {
    background: transparent !important;
  }

  .alfares-refresh-icon {
    inline-size: 18px;
    block-size: 18px;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    margin-inline-end: 4px;
  }

  [data-mng-report-preview-retry] {
    position: relative;
    padding-inline-end: 38px !important;
  }

  [data-mng-report-preview-retry]::after {
    content: "";
    position: absolute;
    inline-size: 18px;
    block-size: 18px;
    inset-inline-end: 12px;
    inset-block-start: 50%;
    translate: 0 -50%;
    box-sizing: border-box;
    border: 2px solid rgb(255 255 255 / 45%);
    border-block-start-color: #fff;
    border-radius: 50%;
    visibility: hidden;
    pointer-events: none;
  }

  :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]):hover
    :not(svg) {
    box-shadow: none !important;
  }

  :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]):hover:not(:active):not([aria-busy="true"], .is-loading):not(:is([aria-busy="true"], [data-loading="true"]) *)
    :is(svg, i) {
    animation: none !important;
  }

  :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]):hover:not(:active):not(:disabled, [disabled], [aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *) {
    box-shadow: none !important;
  }

  :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]):active:not(:disabled, [disabled], [aria-disabled="true"], [aria-busy="true"], .disabled, .is-disabled):not([aria-busy="true"] *) {
    background-color: var(--alfares-refresh-pressed) !important;
    border-color: var(--alfares-refresh-pressed) !important;
    box-shadow: none !important;
  }

  :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]):focus-visible {
    outline: 2px solid #2586c9 !important;
    outline-offset: 2px !important;
    transform: none !important;
  }

  :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]):is(:disabled, [disabled], [aria-disabled="true"], .disabled, .is-disabled) {
    opacity: .38 !important;
    cursor: not-allowed;
    box-shadow: none !important;
  }

  :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]):is([aria-busy="true"], .is-loading),
  :is([aria-busy="true"], [data-loading="true"])
    :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]) {
    background-color: var(--alfares-refresh-green) !important;
    border-color: var(--alfares-refresh-green) !important;
    opacity: 1 !important;
    cursor: progress;
    box-shadow: none !important;
  }

  :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]):is([aria-busy="true"], .is-loading) svg,
  :is([aria-busy="true"], [data-loading="true"])
    :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]) svg {
    border: 0 !important;
    animation: none !important;
  }

  :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]):is([aria-busy="true"], .is-loading) svg > *,
  :is([aria-busy="true"], [data-loading="true"])
    :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]) svg > * {
    visibility: visible;
  }

  [data-mng-report-preview-retry]:is([aria-busy="true"], .is-loading)::after,
  :is([aria-busy="true"], [data-loading="true"]) [data-mng-report-preview-retry]::after {
    visibility: visible;
    animation: none !important;
  }

  @keyframes alfares-refresh-spin {
    to { transform: rotate(360deg); }
  }

  @media (prefers-reduced-motion: reduce) {
    :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]) {
      transition-duration: 0s !important;
    }
    :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]):is([aria-busy="true"], .is-loading) svg,
    :is([aria-busy="true"], [data-loading="true"])
      :is([data-refresh-control], #oprFilter_Refresh_data, [data-mng-report-preview-retry]) svg,
    [data-mng-report-preview-retry]:is([aria-busy="true"], .is-loading)::after,
    :is([aria-busy="true"], [data-loading="true"]) [data-mng-report-preview-retry]::after {
      animation-duration: 1.7s !important;
    }
  }
}


/* source: mysite/assets/css/premium-ui.css; sha256: 368dcc3657cf24616b1dbac9202a466d1b35b8434c5fe3becddbd76566df4808 */
/* Alfares ERP — Premium UI. Loaded last on every public page. */

/* Tokens ------------------------------------------------------------------- */
:root {
  --ink-950: #0b2239;
  --ink-900: #0f2a44;
  --ink-800: #1b3550;
  --ink-700: #35506a;
  --ink-600: #4a6178;
  --ink-500: #64798e;
  --ink-400: #93a4b5;
  --line: #e4ebf2;
  --line-strong: #d0dce7;
  --surface-soft: #f5f8fc;
  --surface-tint: #edf4fb;
  --p-border: rgba(18, 63, 97, .12);
  --p-muted: #64798e;
  --p-head-blue: #eff5fb;
  --p-head-border: rgba(18, 63, 97, .1);
  --p-head-text: #0b2239;
  --p-head-muted: #41586f;
  --p-head-accent: #0b5bd3;

  --pu-brand: #123f61;
  --pu-navy-950: #061a30;
  --pu-navy-900: #0a2742;
  --pu-navy-800: #0f3558;
  --pu-blue: #0b5bd3;
  --pu-blue-hover: #0a4fb8;
  --pu-blue-bright: #1670e8;
  --pu-sky: #0ea5e9;
  --pu-sky-text: #0b7fc4;
  --pu-sky-soft: #8fd3f8;

  --pu-shadow-card: 0 1px 2px rgba(11, 34, 57, .04), 0 10px 26px -18px rgba(11, 34, 57, .2);
  --pu-shadow-raised: 0 2px 4px rgba(11, 34, 57, .05), 0 24px 48px -24px rgba(11, 49, 95, .3);
  --pu-shadow-float: 0 2px 6px rgba(11, 34, 57, .06), 0 42px 84px -38px rgba(11, 49, 95, .42);
  --pu-shadow-button: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(11, 49, 95, .28), 0 10px 22px -12px rgba(11, 91, 211, .72);

  --pu-radius-card: 20px;
  --pu-radius-panel: 28px;
  --pu-section: clamp(64px, 7vw, 104px);

  --pu-head-background:
    radial-gradient(58% 92% at 100% 0%, rgba(14, 165, 233, .16) 0%, transparent 64%),
    radial-gradient(52% 88% at 0% 100%, rgba(11, 91, 211, .11) 0%, transparent 62%),
    linear-gradient(180deg, #f9fcff 0%, #eef5fc 100%);
  --pu-dark-background:
    radial-gradient(70% 110% at 92% -8%, rgba(14, 165, 233, .24) 0%, transparent 60%),
    radial-gradient(60% 100% at 4% 108%, rgba(11, 91, 211, .34) 0%, transparent 62%),
    linear-gradient(158deg, #0d3253 0%, #071e36 100%);
}

/* Foundation --------------------------------------------------------------- */
html[lang="ar"] * { letter-spacing: 0 !important; }
body {
  color: var(--ink-950);
  font-family: var(--font-ar);
  font-size: 16px;
  line-height: 1.85;
  font-feature-settings: "kern", "liga", "calt";
}
h1, h2, h3, h4,
.btn, .eyebrow, .badge, .nav-link, .logo__name, .header-login,
.proof-item strong, .footer-kicker, .tab-button {
  font-family: var(--font-display);
}
h1, h2 { color: inherit; font-weight: 800; text-wrap: balance; }
h3, h4 { font-weight: 700; line-height: 1.55; }
p { color: var(--ink-600); text-wrap: pretty; }
::selection { background: rgba(11, 91, 211, .16); }
:focus-visible { outline: 2px solid var(--pu-blue); outline-offset: 3px; }

.container { width: min(calc(100% - 40px), 1240px); }
.section { padding-block: var(--pu-section); }
.section--compact { padding-block: clamp(36px, 4vw, 60px); }
.section--soft,
.home-value-section,
.section--mobile-product,
.section--saudi { background: var(--surface-soft); }

main h2 { font-size: clamp(26px, 2.75vw, 39px); line-height: 1.42; margin-block: 12px 14px; }
.section-heading,
.workflow-head,
.interface-showcase__heading { max-width: 760px; margin-bottom: clamp(30px, 3.6vw, 48px); }
.section-heading h2,
.workflow-head h2,
.interface-showcase__heading h2,
.interface-showcase__heading #interfaces-title,
.interface-showcase__heading #product-interfaces-title,
.feature-layout__intro h2,
.integration-panel h2,
.compact-section-head h2,
.cloud-value-intro h2,
.platform-architecture h2,
.sector-callout h2,
.saudi-card h2 { font-size: clamp(26px, 2.75vw, 39px); line-height: 1.42; white-space: normal; }
.section-heading p,
.workflow-head p,
.interface-showcase__heading p { font-size: 16.5px; line-height: 1.95; color: var(--ink-600); }

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 12px;
  border: 1px solid rgba(11, 91, 211, .14);
  border-radius: 999px;
  color: var(--pu-blue);
  background: rgba(11, 91, 211, .06);
  font-size: 12.5px;
  font-weight: 700;
  line-height: 1.7;
}
.eyebrow::before,
.eyebrow::after { content: none; }
.eyebrow--light,
.page-head .eyebrow--light {
  border-color: rgba(255, 255, 255, .16);
  color: #cfeafc;
  background: rgba(255, 255, 255, .08);
}
.badge {
  min-height: 32px;
  padding-inline: 12px;
  border: 1px solid rgba(18, 63, 97, .12);
  color: var(--pu-blue);
  background: #fff;
  font-size: 12.5px;
  font-weight: 700;
}
.badge--success { color: #0a5aa8; background: rgba(14, 165, 233, .1); border-color: rgba(14, 165, 233, .22); }

.text-link { color: var(--pu-blue); font-family: var(--font-display); font-size: 14px; font-weight: 700; }

/* Buttons ------------------------------------------------------------------ */
.btn {
  min-height: 46px;
  padding-inline: 20px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 700;
  gap: 9px;
}
.btn--lg { min-height: 52px; padding-inline: 26px; border-radius: 14px; font-size: 15px; }
.btn--sm { min-height: 40px; padding-inline: 16px; border-radius: 10px; font-size: 13px; }
.btn--primary {
  color: #fff;
  border-color: transparent;
  background: linear-gradient(180deg, var(--pu-blue-bright) 0%, var(--pu-blue) 100%);
  box-shadow: var(--pu-shadow-button);
}
.btn--primary:hover { color: #fff; background: var(--pu-blue-hover); }
.btn--secondary {
  color: var(--ink-900);
  border: 1px solid var(--line-strong);
  background: #fff;
  box-shadow: var(--shadow-xs);
}
.btn--secondary:hover { color: var(--pu-blue); border-color: rgba(11, 91, 211, .45); background: #f6faff; }
.btn--glass,
.page-head .btn--glass {
  color: var(--ink-900);
  border: 1px solid var(--line-strong);
  background: rgba(255, 255, 255, .78);
  box-shadow: var(--shadow-xs);
}
.btn--glass:hover,
.page-head .btn--glass:hover { color: var(--pu-blue); border-color: rgba(11, 91, 211, .45); background: #fff; }
.btn--light { color: var(--pu-navy-900); border-color: transparent; background: #fff; box-shadow: 0 1px 2px rgba(0, 0, 0, .16), 0 12px 24px -14px rgba(0, 0, 0, .5); }
.btn--light:hover { color: var(--pu-blue); background: #eef6ff; }
.btn--outline-light { color: #fff; border: 1px solid rgba(255, 255, 255, .34); background: rgba(255, 255, 255, .05); }
.btn--outline-light:hover { color: #fff; border-color: rgba(255, 255, 255, .6); background: rgba(255, 255, 255, .12); }

/* Header and navigation ---------------------------------------------------- */
.site-header,
.site-header--premium {
  background: rgba(255, 255, 255, .8);
  border-bottom: 1px solid rgba(18, 63, 97, .08);
  backdrop-filter: saturate(170%) blur(14px);
  -webkit-backdrop-filter: saturate(170%) blur(14px);
}
.site-header.is-scrolled { box-shadow: 0 12px 30px -22px rgba(11, 34, 57, .45); }
.logo__mark { width: 44px; height: 44px; }
.logo__name { color: var(--pu-brand); font-size: 18px; font-weight: 800; }
.site-header--premium .header__actions { gap: 12px; }
.site-header--premium .header__actions > .btn--primary { min-height: 40px; min-width: 96px; padding-inline: 18px; border-radius: 10px; }
.site-header--premium .main-nav > .nav-link,
.site-header--premium .nav-split__link {
  min-height: 38px;
  padding: 7px 11px;
  color: var(--ink-700);
  font-size: 13.5px;
  font-weight: 600;
}
.nav-split { padding: 1px; border-radius: 11px; }
.nav-split:hover,
.nav-split.is-current { border-color: rgba(18, 63, 97, .1); background: rgba(18, 63, 97, .04); }
.nav-split.is-current .nav-split__link,
.site-header--premium .nav-link[aria-current="page"] { color: var(--pu-blue); }
.nav-menu-toggle { width: 28px; height: 34px; border-inline-start: 0; color: var(--ink-500); }
.header-login {
  min-height: 40px;
  padding-inline: 12px;
  border: 1px solid transparent;
  border-radius: 10px;
  color: var(--ink-700);
  font-size: 13.5px;
  font-weight: 600;
}
.header-login:hover { color: var(--pu-blue); background: rgba(18, 63, 97, .04); }
.language-switch { min-height: 40px; border: 1px solid var(--line-strong); border-radius: 10px; color: var(--ink-700); background: #fff; font-weight: 600; }

.nav-popover__panel {
  padding: 18px;
  border: 1px solid rgba(18, 63, 97, .1);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 4px 10px rgba(11, 34, 57, .04), 0 40px 80px -32px rgba(11, 34, 57, .36);
}
.nav-popover__head strong { font-family: var(--font-display); font-size: 16px; font-weight: 800; }
.nav-popover__head span { font-size: 13px; }
.nav-popover__head > a { font-family: var(--font-display); font-size: 13px; font-weight: 700; }
.nav-popover__group { padding: 12px; border-color: transparent; border-radius: 16px; background: var(--surface-soft); }
.nav-popover__group h3 { padding-inline: 8px; color: var(--ink-500); font-size: 12.5px; font-weight: 700; }
.nav-popover__link { border-radius: 11px; }
.nav-popover__link:hover { color: var(--pu-blue); background: #fff; }
.nav-popover__icon { border-radius: 10px; background: #fff; box-shadow: inset 0 0 0 1px rgba(11, 91, 211, .12); }
.nav-popover__link strong { font-size: 13px; font-weight: 600; }
.nav-popover__link small { font-size: 12px; }
.nav-menu-backdrop { background: rgba(6, 26, 48, .28); backdrop-filter: blur(2px); }

.mobile-drawer__panel { background: #fff; box-shadow: 0 0 60px rgba(6, 26, 48, .28); }
.mobile-nav a { font-weight: 500; }
.mobile-nav__split > a { font-family: var(--font-display); font-weight: 600; }
.mobile-nav__split.is-current { background: rgba(11, 91, 211, .06); }
.mobile-nav__split > .mobile-nav__toggle { border-color: var(--line); background: var(--surface-soft); border-radius: 10px; }
.mobile-product-group strong { font-size: 12.5px; }
.mobile-product-group a { font-size: 14px; }

/* Mastheads ---------------------------------------------------------------- */
.page-head {
  isolation: isolate;
  height: auto;
  border: 1px solid var(--p-head-border);
  color: var(--p-head-text);
  background: var(--pu-head-background);
  box-shadow: inset 0 1px 0 #fff;
}
.page-head::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: 1;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(18, 63, 97, .05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(18, 63, 97, .05) 1px, transparent 1px);
  background-size: 46px 46px;
  -webkit-mask-image: radial-gradient(62% 78% at 24% 22%, #000 0%, transparent 74%);
  mask-image: radial-gradient(62% 78% at 24% 22%, #000 0%, transparent 74%);
}
.page-head h1 {
  margin-block: 14px 16px !important;
  color: var(--p-head-text);
  font-size: clamp(34px, 3.35vw, 50px) !important;
  font-weight: 800;
  line-height: 1.36 !important;
}
.page-head h1 span {
  color: transparent;
  background: linear-gradient(to left, var(--pu-blue) 0%, var(--pu-sky-text) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
html[dir="ltr"] .page-head h1 span { background-image: linear-gradient(to right, var(--pu-blue) 0%, var(--pu-sky-text) 100%); }
.page-head h1 bdi { color: inherit; }
.page-head p,
.cloud-hero__lead { color: var(--p-head-muted); font-size: 16.5px; line-height: 1.95; }
.page-head .badge--glass { color: var(--pu-blue); border-color: rgba(18, 63, 97, .12); background: rgba(255, 255, 255, .86); }
.page-head :is(.eyebrow, .product-hero__eyebrow) { color: var(--pu-blue); }
.page-head .btn--lg { min-height: 50px; padding-inline: 24px; font-size: 14.5px; }

@media (min-width: 1081px) {
  .page-head {
    height: auto;
    min-height: 0;
    padding-block: clamp(36px, 3.4vw, 52px);
  }
  .solutions-page .cloud-hero {
    height: auto;
    min-height: clamp(580px, 62svh, 660px);
  }
  .solutions-page .cloud-hero__content h1 {
    max-width: 660px;
    font-size: clamp(38px, 3.5vw, 52px) !important;
    line-height: 1.38 !important;
  }
  .solutions-page .cloud-stage { height: auto; min-height: 430px; }
  .solutions-page .cloud-window { width: min(100%, 640px); }
}

/* Home hero visual --------------------------------------------------------- */
.cloud-stage__glow {
  width: 78%;
  height: 78%;
  background: radial-gradient(closest-side, rgba(14, 165, 233, .22), transparent);
}
.cloud-stage__ring { border-color: rgba(18, 92, 166, .1); }
.cloud-window {
  width: min(100%, 640px);
  border: 1px solid rgba(18, 63, 97, .12);
  border-radius: 20px;
  background: #fff;
  box-shadow: var(--pu-shadow-float);
  transform: none;
}
.cloud-window__bar {
  min-height: 44px;
  border-bottom: 1px solid var(--line);
  color: var(--ink-700);
  background: linear-gradient(180deg, #fbfdff, #f4f8fc);
  font-size: 12.5px;
  font-weight: 600;
}
.cloud-window__body { padding: 0; }
.cloud-window__body img { border-radius: 0; }
.online-dot { color: #0a7a55; font-size: 12px; font-weight: 700; }
.online-dot::before { background: #10b981; box-shadow: 0 0 0 3px rgba(16, 185, 129, .16); }
.window-dots i { background: #d6e0ea; }
.orbit-chip {
  min-height: 40px;
  padding-inline: 12px;
  border: 1px solid rgba(18, 63, 97, .1);
  border-radius: 12px;
  color: var(--ink-800);
  background: rgba(255, 255, 255, .92);
  box-shadow: var(--pu-shadow-raised);
  font-family: var(--font-display);
  font-size: 12.5px;
  font-weight: 700;
}
.orbit-chip .icon { color: var(--pu-blue); }
.orbit-chip:hover { color: var(--pu-blue); border-color: rgba(11, 91, 211, .35); }
.cloud-hero__proof { color: var(--p-head-muted); font-size: 13.5px; }
.cloud-hero__proof .icon { color: var(--pu-blue); }

/* Metrics ribbon ----------------------------------------------------------- */
.proof-ribbon { margin-top: 20px; }
.proof-ribbon__grid {
  border: 1px solid rgba(18, 63, 97, .1);
  border-radius: 22px;
  background: #fff;
  box-shadow: var(--pu-shadow-card);
}
.proof-item { min-height: 112px; }
.proof-item strong {
  color: var(--pu-brand);
  font-size: clamp(26px, 2.5vw, 34px);
  font-weight: 800;
  line-height: 1.2;
}
.proof-item span { margin-top: 6px; color: var(--ink-600); font-size: 14px; }

/* Directory of programs ---------------------------------------------------- */
.systems-section::before { content: none; }
.solutions-page .solutions-directory { padding-top: clamp(56px, 6vw, 88px); }
.solutions-directory__intro { max-width: 800px; margin-inline: auto; margin-bottom: clamp(28px, 3.4vw, 44px); text-align: center; }
.solutions-page .solutions-directory__intro h2 { max-width: 780px; font-size: clamp(28px, 3.1vw, 44px); font-weight: 800; line-height: 1.4; }
.solutions-page .solutions-directory__intro p { max-width: 720px; margin-inline: auto; font-size: 17px; line-height: 1.95; }

.solutions-feature-strip {
  gap: 0;
  margin-bottom: clamp(26px, 3vw, 40px);
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--p-border);
  border-radius: 20px;
  background: #fff;
  box-shadow: var(--pu-shadow-card);
}
.solutions-feature-strip article {
  min-height: 0;
  padding: 20px 22px;
  border-radius: 0;
  background: transparent;
}
.solutions-feature-strip article + article { border-inline-start: 1px solid var(--line); }
.solutions-feature-strip article > span {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: linear-gradient(145deg, #f2f8ff, #e3effb);
  box-shadow: inset 0 0 0 1px rgba(11, 91, 211, .1), inset 0 1px 0 #fff;
}
.solutions-feature-strip strong { margin-bottom: 2px; color: var(--ink-900); font-family: var(--font-display); font-size: 15px; font-weight: 700; }
.solutions-feature-strip small { color: var(--ink-600); font-size: 14px; line-height: 1.75; }

.systems-catalog { gap: 18px; }
.system-card,
.solutions-page .system-card {
  min-height: 0;
  padding: 26px;
  overflow: visible;
  border: 1px solid var(--line);
  border-radius: var(--pu-radius-card);
  background: #fff;
  box-shadow: none;
}
.system-card::before,
.solutions-page .system-card::before { content: none; }
.system-card::after,
.solutions-page .system-card::after {
  content: "";
  z-index: -1;
  inset: 0;
  width: auto;
  height: auto;
  border-radius: inherit;
  background: none;
  box-shadow: var(--pu-shadow-raised);
  opacity: 0;
  transition: opacity .2s ease;
}
.system-card:hover,
.solutions-page .system-card:hover { border-color: color-mix(in srgb, var(--system-accent) 42%, var(--line)); }
.system-card:hover::after,
.solutions-page .system-card:hover::after { opacity: 1; transform: none; }
.system-card__icon,
.solutions-page .system-card__icon {
  width: 52px;
  height: 52px;
  margin-bottom: 18px;
  border: 0;
  border-radius: 15px;
  color: var(--system-accent);
  background: linear-gradient(145deg, color-mix(in srgb, var(--system-accent) 7%, #fff), color-mix(in srgb, var(--system-accent) 15%, #fff));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--system-accent) 16%, transparent), inset 0 1px 0 #fff;
}
.system-card:hover .system-card__icon,
.solutions-page .system-card:hover .system-card__icon { color: #fff; background: var(--system-accent); box-shadow: none; }
.system-card h3,
.solutions-page .system-card h3 { min-height: 0; margin: 0 0 8px; color: var(--ink-900); font-size: 17.5px; font-weight: 700; line-height: 1.55; }
.system-card p { color: var(--ink-600); font-size: 14.5px; line-height: 1.85; }
.system-card__link { margin-top: 16px; color: color-mix(in srgb, var(--system-accent) 74%, #0b2239); font-family: var(--font-display); font-size: 13.5px; font-weight: 700; }


/* Dark panels -------------------------------------------------------------- */
.integration-panel,
.cta-panel,
.cta-panel--premium,
.mobile-product,
.local-presence,
.home-capabilities__zatca {
  border: 1px solid rgba(255, 255, 255, .08);
  color: #fff;
  background: var(--pu-dark-background);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), var(--pu-shadow-float);
}
.section--navy { color: #fff; background: var(--pu-dark-background); }
.section--navy::before { content: none; }
.integration-panel p,
.cta-panel p,
.cta-panel--premium p,
.mobile-product__content > p,
.local-presence p,
.section--navy p { color: #c3d6e6; font-size: 16px; }
.cta-panel,
.cta-panel--premium { padding: clamp(34px, 4.6vw, 60px); border-radius: var(--pu-radius-panel); }
.cta-panel::before,
.cta-panel::after { content: none; }
.cta-panel h2,
.cta-panel--premium h2 { color: #fff; font-size: clamp(25px, 2.6vw, 36px); line-height: 1.42; }
.integration-panel { border-radius: var(--pu-radius-panel); }
.integration-link {
  min-height: 60px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 14px;
  color: #eaf4fb;
  background: rgba(255, 255, 255, .055);
  font-family: var(--font-display);
  font-size: 13.5px;
  font-weight: 600;
}
.integration-link:hover { border-color: rgba(143, 211, 248, .55); background: rgba(255, 255, 255, .1); }
.integration-link .icon { color: var(--pu-sky-soft); }

.solutions-pricing-callout {
  position: relative;
  overflow: hidden;
  margin-top: clamp(24px, 3vw, 36px);
  padding: clamp(28px, 3.6vw, 44px);
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: var(--pu-radius-panel);
  color: #fff;
  background: var(--pu-dark-background);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), var(--pu-shadow-float);
}
.solutions-pricing-callout h2 { color: #fff; font-size: clamp(22px, 2.3vw, 31px); line-height: 1.5; }
.solutions-pricing-callout .eyebrow {
  border-color: rgba(255, 255, 255, .16);
  color: #cfeafc;
  background: rgba(255, 255, 255, .08);
}
.solutions-pricing-callout .btn--secondary { color: #fff; border-color: rgba(255, 255, 255, .34); background: rgba(255, 255, 255, .05); box-shadow: none; }
.solutions-pricing-callout .btn--secondary:hover { color: #fff; border-color: rgba(255, 255, 255, .6); background: rgba(255, 255, 255, .12); }

/* Capabilities ------------------------------------------------------------- */
.home-capabilities {
  overflow: visible;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.home-capabilities::before { content: none; }
.home-capabilities__intro { margin-bottom: clamp(26px, 3vw, 38px); }
.home-capabilities__intro h2 { color: var(--ink-950); font-size: clamp(27px, 2.9vw, 41px); font-weight: 800; line-height: 1.42; }
.home-capabilities__intro p { color: var(--ink-600); font-size: 16.5px; line-height: 1.95; }
.home-capabilities__trial { gap: 8px; padding: 0; border: 0; background: transparent; }
.home-capabilities__trial span {
  min-height: 46px;
  padding: 10px 14px;
  border: 1px solid var(--line);
  border-radius: 13px;
  color: var(--ink-700);
  background: #fff;
  box-shadow: var(--shadow-xs);
  font-size: 14px;
}
.home-capabilities__trial .icon { color: var(--pu-blue); }
.home-capabilities__grid { gap: 16px; }
.home-capabilities__grid article {
  min-height: 0;
  padding: 22px;
  overflow: visible;
  border: 1px solid var(--line);
  border-radius: var(--pu-radius-card);
  background: #fff;
  box-shadow: var(--pu-shadow-card);
}
.home-capabilities__grid article::after { content: none; }
.home-capabilities__grid article:hover { border-color: rgba(18, 63, 97, .28); box-shadow: var(--pu-shadow-raised); }
.home-capabilities__grid article > span {
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 14px;
  background: linear-gradient(145deg, #f1f6fb, #e2ecf5);
  box-shadow: inset 0 0 0 1px rgba(18, 63, 97, .1), inset 0 1px 0 #fff;
}
.home-capabilities__grid h3 { margin: 0 0 4px; color: var(--ink-900); font-size: 16.5px; font-weight: 700; }
.home-capabilities__grid p { color: var(--ink-600); font-size: 14.5px; line-height: 1.8; }
.home-capabilities__zatca { margin-top: 22px; padding: clamp(20px, 2.4vw, 28px); border-radius: 22px; }
.home-capabilities__zatca strong { font-family: var(--font-display); font-size: 17px; font-weight: 700; }
.home-capabilities__zatca p { color: #c3d6e6; font-size: 14.5px; }
.home-capabilities__zatca .btn { color: var(--pu-navy-900); box-shadow: 0 1px 2px rgba(0, 0, 0, .16), 0 12px 24px -14px rgba(0, 0, 0, .5); }
.home-capabilities__zatca-icon { color: var(--pu-sky-soft); border-color: rgba(255, 255, 255, .16); background: rgba(255, 255, 255, .08); }

/* Authority note ------------------------------------------------------------ */
.authority-note {
  gap: 20px;
  padding: clamp(22px, 2.6vw, 32px);
  border: 1px solid var(--line);
  border-radius: 22px;
  background: linear-gradient(180deg, #fff, #f8fbfe);
  box-shadow: var(--pu-shadow-card);
}
.authority-note > span {
  border-radius: 15px;
  color: var(--pu-blue);
  background: linear-gradient(145deg, #f2f8ff, #e3effb);
  box-shadow: inset 0 0 0 1px rgba(11, 91, 211, .1);
}
.authority-note h2 { margin-block: 8px 6px; color: var(--ink-900); font-size: clamp(20px, 2vw, 26px); line-height: 1.5; }
.authority-note p { margin: 0; color: var(--ink-600); font-size: 15px; }

/* Mobile product panel ------------------------------------------------------ */
.mobile-product { padding: clamp(32px, 4.6vw, 60px); border-radius: var(--pu-radius-panel); }
.mobile-product__content h2 { color: #fff; font-size: clamp(27px, 3.1vw, 44px); font-weight: 800; line-height: 1.4; }
.mobile-product__benefits span {
  min-height: 48px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 13px;
  color: #eaf4fb;
  background: rgba(255, 255, 255, .055);
  font-family: var(--font-display);
  font-size: 13.5px;
  font-weight: 600;
}
.mobile-product__benefits .icon,
.mobile-float .icon { color: var(--pu-sky-soft); }
.mobile-product__visual img { border-radius: 26px; box-shadow: 0 40px 80px -30px rgba(0, 0, 0, .7); }
.mobile-product__halo { border-color: rgba(143, 211, 248, .18); background: radial-gradient(closest-side, rgba(14, 165, 233, .2), transparent); }
.mobile-float {
  border: 1px solid rgba(255, 255, 255, .16);
  color: #f1f8fd;
  background: rgba(8, 32, 56, .86);
  box-shadow: 0 16px 30px -18px rgba(0, 0, 0, .7);
  font-family: var(--font-display);
  font-size: 12.5px;
  font-weight: 600;
}

/* Footer ------------------------------------------------------------------- */
.site-footer,
.site-footer--premium { background: linear-gradient(180deg, #0c2f4f 0%, #061a30 100%); }
.footer__topline h2 { color: #fff; font-size: clamp(22px, 2.3vw, 32px); font-weight: 800; line-height: 1.45; }
.footer-kicker { color: var(--pu-sky-soft); font-size: 13px; font-weight: 700; }
.footer__brand > p { color: #b8cddd; font-size: 14.5px; line-height: 1.9; }
.footer__brand .logo__name { color: #fff; }
.footer__brand .logo__mark { padding: 5px; border-radius: 12px; background: #fff; }
.footer__col h3 { color: #fff; font-size: 14px; font-weight: 700; }
.footer__col a { color: #b8cddd; font-size: 14px; }
.footer__col a:hover,
.footer__legal a:hover { color: #fff; }
.footer__systems-list a { line-height: 1.7; }
.footer__social a { border-color: rgba(255, 255, 255, .14); color: #d7e6f1; background: rgba(255, 255, 255, .05); }
.footer__social a:hover { color: #fff; border-color: rgba(143, 211, 248, .55); background: rgba(255, 255, 255, .1); }
.footer__vision strong { color: #d7e6f1; font-family: var(--font-display); font-size: 13.5px; font-weight: 600; line-height: 1.7; }
.footer__bottom { color: #9db6c9; font-size: 13.5px; }
.footer__legal a { color: #b8cddd; }

/* Mobile -------------------------------------------------------------------- */
@media (max-width: 1080px) {
  .page-head { min-height: 0; }
  .page-head h1 { font-size: clamp(29px, 5.6vw, 42px) !important; line-height: 1.42 !important; }
  .solutions-feature-strip article + article { border-inline-start: 0; border-block-start: 1px solid var(--line); }
}
@media (max-width: 720px) {
  .container { width: calc(100% - 32px); }
  .page-head { width: calc(100% - 20px); border-radius: 24px; }
  .page-head h1 { font-size: clamp(27px, 7.6vw, 34px) !important; line-height: 1.44 !important; }
  .page-head p, .cloud-hero__lead { font-size: 15.5px; line-height: 1.9; }
  .section { padding-block: clamp(48px, 13vw, 64px); }
  main h2 { font-size: clamp(24px, 6.6vw, 30px); }
  .proof-ribbon__grid { grid-template-columns: repeat(2, 1fr); }
  .proof-item { min-height: 92px; padding: 14px; }
  .proof-item:nth-child(3) { border-inline-start: 0; }
  .proof-item:nth-child(n+3) { border-top: 1px solid var(--line); }
  .system-card, .solutions-page .system-card {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    column-gap: 14px;
    padding: 18px;
  }
  .system-card__icon, .solutions-page .system-card__icon { grid-row: span 3; width: 48px; height: 48px; margin: 0; }
  .system-card h3, .solutions-page .system-card h3 { margin-bottom: 4px; font-size: 16px; }
  .system-card p { font-size: 14px; line-height: 1.75; }
  .system-card__link { margin-top: 8px; }
  .home-capabilities__grid article { grid-template-columns: 44px minmax(0, 1fr); gap: 12px; padding: 16px; }
  .home-capabilities__grid article > span { width: 44px; height: 44px; }
  .cta-panel, .cta-panel--premium { padding: 28px 22px; }
}

/* Type scale ---------------------------------------------------------------- */
:is(main, .marketing-main) h2 { font-weight: 800; }
:is(main, .marketing-main) .section h2 { font-size: clamp(26px, 2.75vw, 38px); line-height: 1.42; }
.policy-document .policy-section h2 { font-size: 21px; font-weight: 700; line-height: 1.6; }
.policy-document .policy-contact h2 { font-size: 19px; font-weight: 700; }
.about-downloads__heading h2 { font-size: 22px; }
.authority-note h2,
:is(main, .marketing-main) .section .authority-note h2 { font-size: clamp(20px, 2vw, 26px); font-weight: 700; line-height: 1.5; }
:is(main, .marketing-main) .section .solutions-pricing-callout h2 { font-size: clamp(22px, 2.3vw, 31px); font-weight: 700; line-height: 1.55; }
:is(main, .marketing-main) .section .cta-panel h2,
:is(main, .marketing-main) .section .business-types-cta h2,
:is(main, .marketing-main) .section .activity-detail-offer h2 { font-size: clamp(24px, 2.5vw, 34px); }
:is(main, .marketing-main) .section .contact-info-panel h2,
:is(main, .marketing-main) .section .form-heading h2 { font-size: clamp(22px, 2.1vw, 28px); }
:is(main, .marketing-main) .section .mobile-product__content h2 { font-size: clamp(27px, 3vw, 42px); line-height: 1.4; }
.activity-detail-hero__card h2 { font-size: clamp(24px, 2.4vw, 32px); font-weight: 800; line-height: 1.45; }
.activity-detail-tabs__copy h3 { font-size: clamp(22px, 2vw, 27px); font-weight: 800; line-height: 1.45; }
.not-found h1 { color: var(--ink-950); font-size: clamp(30px, 3.4vw, 46px); font-weight: 800; line-height: 1.4; }

.eyebrow, .badge { font-size: 13px; }
:is(
  .feature-line__num, .workflow-rail__step > span, .interface-showcase__option-number,
  .interface-showcase__option-tab small, .interface-showcase__sidebar-heading > span, .interface-showcase__sidebar-heading p,
  .interface-showcase__media-copy small, .interface-showcase__media-type, .activity-detail-systems__links small,
  .policy-section__number, .policy-toc__label, .policy-identity span, .policy-identity small, .policy-summary span,
  .video-card__number, .branch-card small, .benefit-chip small, .product-screen__links > span, .product-screen__top,
  .mobile-hero-tags span, .status-pill, .download-card__top b, .about-identity__caption, .form-privacy, .online-dot,
  .cloud-window__bar, .status-screen__bar, .about-downloads__heading > span, .contact-after-hours, .filter-chip, .orbit-chip
) { font-size: 13px; }
:is(
  .benefit-chip strong, .official-action strong, .activity-detail-related__card strong, .video-card__action,
  .policy-toc a, .policy-toc__help, .policy-toc__help a, .policy-related__links a, .branch-card a,
  .contact-form label, .contact-prep span, .local-presence__points span, .contact-hours-card p, .training-search label
) { font-size: 14px; }
:is(
  .feature-line p, .values-grid p, .compliance-step p, .mobile-capability p, .learning-track p,
  .story-principles p, .story-principles span, .interface-showcase__placeholder p, .policy-contact p
) { color: var(--ink-600); font-size: 14.5px; line-height: 1.85; }
.cloud-dashboard-carousel__counter { font-size: 12px; }

/* Home hero refinements ------------------------------------------------------ */
.cloud-stage {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  justify-content: center;
  gap: 10px;
  min-height: 0;
}
.cloud-window { flex: 0 0 100%; }
.orbit-chip { position: static; order: 2; min-height: 38px; box-shadow: var(--pu-shadow-card); }
.cloud-stage__ring { display: none; }
@media (min-width: 901px) {
  .cloud-window__body[data-dashboard-carousel="ready"] > img { object-position: top right; }
  .cloud-dashboard-carousel__nav {
    width: 36px;
    height: 36px;
    border: 1px solid rgba(18, 63, 97, .12);
    color: var(--ink-800);
    background: rgba(255, 255, 255, .94);
    box-shadow: var(--pu-shadow-card);
  }
  .cloud-dashboard-carousel__dots {
    bottom: 14px;
    border: 1px solid rgba(18, 63, 97, .1);
    background: rgba(255, 255, 255, .94);
    box-shadow: var(--pu-shadow-card);
  }
  .cloud-dashboard-carousel__dot { background: rgba(18, 63, 97, .26); }
  .cloud-dashboard-carousel__dot[aria-pressed="true"] { background: var(--pu-blue); }
  html[dir="ltr"] .cloud-window__body[data-dashboard-carousel="ready"] > img { object-position: top left; }
}

/* Mobile app panel: the capture stays near its real resolution ---------------- */
.mobile-product { min-height: 0; }
@media (min-width: 901px) {
  .mobile-product { grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr); }
}
.mobile-product__visual { min-height: 0; }
.mobile-product__visual img { width: min(100%, 248px); border: 0; border-radius: 22px; }
.mobile-product__halo { width: 340px; height: 340px; }
.mobile-float--one { top: 14%; inset-inline-start: 2%; }
.mobile-float--two { bottom: 16%; inset-inline-end: 2%; }

/* Footer refinements ---------------------------------------------------------- */
.footer__col ul { gap: 7px; }
.footer__grid--premium { padding-block: 44px 34px; align-items: start; }
.site-footer .alfares-support-contacts {
  --support-ink: #fff;
  --support-muted: #a9c3d6;
  --support-line: rgba(255, 255, 255, .12);
  --support-surface: rgba(255, 255, 255, .05);
  --support-accent: #fff;
  font-family: var(--font-ar);
}
.site-footer .alfares-support-heading { margin-bottom: 10px; font-family: var(--font-display); font-size: 14px; }
.site-footer .alfares-support-grid { gap: 10px; }
.site-footer .alfares-support-contact { padding: 10px 14px; border-radius: 14px; }
.site-footer .alfares-support-city { font-size: 13px; font-weight: 500; }
.site-footer .alfares-support-phone { font-size: 16px; font-weight: 600; }
.site-footer .alfares-support-whatsapp {
  flex-basis: 42px;
  width: 42px;
  height: 42px;
  min-height: 42px;
  border-color: rgba(52, 211, 153, .32);
  color: #6ee7b7;
  background: rgba(16, 185, 129, .14);
}
.site-footer .alfares-support-whatsapp:hover { color: #a7f3d0; background: rgba(16, 185, 129, .24); }
@media (max-width: 760px) {
  .site-footer .alfares-support-contact { padding: 8px 10px; }
  .site-footer .alfares-support-phone { font-size: 14px; }
}

/* Support launcher ------------------------------------------------------------ */
.support-chat .support-chat__trigger {
  width: 54px;
  min-height: 54px;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 17px;
  background: linear-gradient(160deg, #123f61 0%, #0a2742 100%);
  box-shadow: 0 2px 4px rgba(6, 26, 48, .2), 0 18px 34px -14px rgba(6, 26, 48, .6);
}
.support-chat .support-chat__trigger-icon { width: 38px; height: 38px; background: transparent; }
.support-chat .support-chat__badge[hidden] { display: none; }
/* Product pages --------------------------------------------------------------- */
.product-screen {
  padding: 10px;
  border: 1px solid rgba(18, 63, 97, .12);
  border-radius: 22px;
  background: #fff;
  box-shadow: var(--pu-shadow-float);
  transform: none;
}
[dir="rtl"] .product-screen { transform: none; }
.product-screen::before { content: none; }
.product-screen__top { min-height: 42px; color: var(--ink-700); font-weight: 600; }
.product-screen > img { border-radius: 12px; box-shadow: inset 0 0 0 1px var(--line); }
.product-screen__links > span {
  min-height: 38px;
  border: 1px solid var(--line);
  border-radius: 10px;
  color: var(--ink-700);
  background: var(--surface-soft);
  font-family: var(--font-display);
  font-weight: 600;
}
.product-hero__eyebrow { margin-top: 14px; color: var(--pu-blue); font-family: var(--font-display); font-size: 14px; font-weight: 700; }
.benefit-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.benefit-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 14px;
  border: 1px solid rgba(18, 63, 97, .1);
  border-radius: 999px;
  background: rgba(255, 255, 255, .72);
}
.benefit-chip::before {
  content: "";
  flex: 0 0 auto;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--pu-blue), var(--pu-sky));
}
.benefit-chip strong { color: var(--ink-800); font-family: var(--font-display); font-weight: 600; }
.benefit-chip small { margin: 0; color: var(--ink-600); }

.feature-layout { grid-template-columns: .72fr 1.28fr; gap: clamp(32px, 5vw, 72px); }
.feature-layout__intro p { font-size: 16.5px; line-height: 1.95; }
.feature-layout__intro .cluster { display: grid; gap: 4px; justify-items: start; }
.feature-matrix { gap: 16px; }
.feature-line {
  min-height: 0;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: var(--pu-radius-card);
  background: #fff;
  box-shadow: var(--pu-shadow-card);
}
.feature-line::after { content: none; }
.feature-line:hover { border-color: rgba(11, 91, 211, .28); box-shadow: var(--pu-shadow-raised); }
.feature-line__num { top: 24px; inset-inline-end: 24px; color: var(--ink-400); font-family: var(--font-display); font-weight: 700; }
.feature-line__check {
  width: 42px;
  height: 42px;
  margin-bottom: 16px;
  border-radius: 13px;
  color: var(--pu-blue);
  background: linear-gradient(145deg, #f2f8ff, #e3effb);
  box-shadow: inset 0 0 0 1px rgba(11, 91, 211, .1), inset 0 1px 0 #fff;
}
.feature-line h3 { color: var(--ink-900); font-size: 17px; }

.workflow-rail { gap: 20px; }
.workflow-rail::before { top: 28px; height: 2px; opacity: 1; background: linear-gradient(to left, rgba(11, 91, 211, .35), rgba(14, 165, 233, .35)); }
.workflow-rail__step > span {
  width: 56px;
  height: 56px;
  margin-bottom: 16px;
  border: 0;
  color: #fff;
  background: linear-gradient(160deg, var(--pu-blue-bright), var(--pu-blue));
  box-shadow: 0 0 0 6px #fff, 0 12px 24px -12px rgba(11, 91, 211, .7);
  font-family: var(--font-display);
  font-size: 15px;
  font-weight: 700;
}
.section--soft .workflow-rail__step > span { box-shadow: 0 0 0 6px var(--surface-soft), 0 12px 24px -12px rgba(11, 91, 211, .7); }
.workflow-rail__step h3 { color: var(--ink-900); font-size: 16.5px; }
.workflow-rail__step p { margin: 6px auto 0; max-width: 250px; color: var(--ink-600); font-size: 14.5px; line-height: 1.8; }

.section--integration { padding-block: clamp(20px, 3vw, 36px); }

/* Interface tour --------------------------------------------------------------- */
.interface-showcase__controller { padding: clamp(12px, 1.6vw, 18px); border: 1px solid var(--line); border-radius: var(--pu-radius-panel); box-shadow: var(--pu-shadow-card); }
.tabs.interface-showcase__category-tabs { padding: 6px; border: 0; border-radius: 16px; background: var(--surface-soft); }
.interface-showcase__category-tab { min-height: 50px; border-radius: 12px; font-family: var(--font-display); }
.interface-showcase__category-tab strong { font-size: 14px; font-weight: 700; }
.interface-showcase__category-tab[aria-selected="true"] { border-color: rgba(18, 63, 97, .1); color: var(--pu-blue); box-shadow: var(--pu-shadow-card); }
.interface-showcase__category-tab[aria-selected="true"] > span { background: linear-gradient(160deg, var(--pu-blue-bright), var(--pu-blue)); }
.interface-showcase__sidebar { border: 0; border-radius: 18px; background: var(--surface-soft); }
.interface-showcase__sidebar-heading h3 { color: var(--ink-900); font-size: 19px; font-weight: 800; }
.interface-showcase__option-tab { min-height: 66px; border-color: transparent; border-radius: 13px; font-family: var(--font-ar); }
.interface-showcase__option-tab strong { color: var(--ink-800); font-family: var(--font-display); font-size: 14px; font-weight: 700; }
.interface-showcase__option-tab[aria-selected="true"] { border-color: rgba(11, 91, 211, .2); background: #fff; box-shadow: var(--pu-shadow-card); }
.interface-showcase__option-tab[aria-selected="true"] .interface-showcase__option-number { background: linear-gradient(160deg, var(--pu-blue-bright), var(--pu-blue)); }
.screen-showcase--premium.interface-showcase__screen { border-color: var(--line); border-radius: 18px; box-shadow: none; }
.interface-showcase__media-copy strong { font-family: var(--font-display); font-weight: 700; }
.interface-showcase__media { border-color: var(--line); border-radius: 12px; background: var(--surface-soft); }
.interface-showcase__media img,
.interface-showcase__media video,
.interface-showcase__media iframe { background: transparent; }
[data-interface-section-owner="mobile"] .interface-showcase__media { background: var(--surface-soft); }
[data-interface-section-owner="mobile"] .interface-showcase__media img { inset: 18px 0; width: 100%; height: calc(100% - 36px); }

/* The real screen captures fade out at their lower edge ------------------------ */
.cloud-window__body { position: relative; }
.cloud-window__body::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: auto 0 0;
  height: 17%;
  pointer-events: none;
  background: linear-gradient(to top, #fff 32%, rgba(255, 255, 255, 0));
}
/* Panels that live inside a full-width section ---------------------------------- */
figure { margin: 0; }
.section--navy,
.section--local-presence { color: inherit; background: transparent; }
.section--navy::before,
.section--local-presence::before { content: none; }
.zatca-integration,
.training-support {
  padding: clamp(30px, 4.4vw, 56px);
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: var(--pu-radius-panel);
  color: #fff;
  background: var(--pu-dark-background);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), var(--pu-shadow-float);
}
.local-presence { padding: clamp(30px, 4.4vw, 56px); border-radius: var(--pu-radius-panel); }
.zatca-integration p,
.training-support p { color: #c3d6e6; }
.local-presence__points span,
.zatca-integration__nodes a {
  min-height: 60px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 14px;
  color: #eaf4fb;
  background: rgba(255, 255, 255, .055);
  font-family: var(--font-display);
  font-size: 14px;
  font-weight: 600;
}
.zatca-integration__nodes a:hover { border-color: rgba(143, 211, 248, .55); color: #fff; background: rgba(255, 255, 255, .1); }
.local-presence__points .icon,
.zatca-integration__nodes .icon { color: var(--pu-sky-soft); }

/* Activity pages ------------------------------------------------------------------ */
.activity-detail { --activity-detail-soft: var(--surface-soft); --activity-detail-line: var(--line); }
.activity-detail-hero { background: var(--pu-head-background); }
.activity-detail-hero__intro p { font-size: 17px; }
.activity-detail-hero__mosaic { gap: 12px; border-radius: 26px; background: transparent; }
.activity-detail-hero__tile { border-radius: 26px; background: var(--surface-soft); }
.activity-detail-visual > .container { width: min(calc(100% - 8px), 1400px); }
.activity-detail-hero__card {
  border: 1px solid var(--line);
  border-radius: 24px;
  box-shadow: var(--pu-shadow-raised);
}
.activity-detail-hero__card p { font-size: 15.5px; }
.activity-detail-showcase { border-color: transparent; }
.activity-detail-tabs__list { border-bottom-color: var(--line-strong); }
.activity-detail-tabs__tab { color: var(--ink-600); font-family: var(--font-display); font-size: 14px; font-weight: 600; }
.activity-detail-tabs__tab[aria-selected="true"] { color: var(--pu-blue); }
.activity-detail-tabs__panel.is-active { border-color: var(--line); border-radius: 24px; box-shadow: var(--pu-shadow-raised); }
.activity-detail-tabs__copy .eyebrow { align-self: flex-start; width: fit-content; }
.activity-detail-tabs__copy > p { font-size: 15.5px; line-height: 1.95; }
.activity-detail-tabs__points li { color: var(--ink-700); font-size: 14.5px; }
.activity-detail-features__item p { color: var(--ink-600); font-size: 14.5px; line-height: 1.85; }
.activity-detail-features__item h3 { color: var(--ink-900); font-size: 17px; }
.activity-detail-flow,
.activity-detail-flow__step { --activity-detail-soft: var(--surface-soft); }
.activity-detail-flow__step { border-color: var(--line); border-radius: var(--pu-radius-card); box-shadow: var(--pu-shadow-card); }
.activity-detail-flow__step h3 { color: var(--ink-900); font-size: 16.5px; }
.activity-detail-flow__step p { color: var(--ink-600); font-size: 14.5px; line-height: 1.85; }
.activity-detail-systems__links a { min-height: 76px; border-color: var(--line); border-radius: 16px; }
.activity-detail-systems__links a:hover { border-color: rgba(11, 91, 211, .32); background: #f8fbff; }
.activity-detail-systems__links a strong,
.activity-detail-systems__links a b { color: var(--ink-900); font-family: var(--font-display); font-size: 14.5px; font-weight: 700; }
.activity-detail-offer,
.business-types-cta {
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: var(--pu-radius-panel);
  color: #fff;
  background: var(--pu-dark-background);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), var(--pu-shadow-float);
}
.activity-detail-offer h2,
.business-types-cta h2 { color: #fff; }
.activity-detail-offer p,
.business-types-cta p { color: #c3d6e6; font-size: 16px; }
.activity-detail-offer .eyebrow,
.business-types-cta .eyebrow { border-color: rgba(255, 255, 255, .16); color: #cfeafc; background: rgba(255, 255, 255, .08); }
.activity-detail-offer .btn--secondary,
.business-types-cta .btn--secondary { color: #fff; border-color: rgba(255, 255, 255, .34); background: rgba(255, 255, 255, .05); box-shadow: none; }
.activity-detail-offer .btn--secondary:hover,
.business-types-cta .btn--secondary:hover { color: #fff; border-color: rgba(255, 255, 255, .6); background: rgba(255, 255, 255, .12); }
.activity-detail-faq__item { border-color: var(--line); }
.activity-detail-faq__item summary { color: var(--ink-900); font-family: var(--font-display); font-size: 15px; font-weight: 600; }
.activity-detail-faq__item p { color: var(--ink-600); font-size: 15px; line-height: 1.95; }
.activity-detail-related__card { border-color: var(--line); border-radius: var(--pu-radius-card); }
.activity-detail-related__card:hover { border-color: rgba(11, 91, 211, .32); }
.activity-detail-related__card strong { color: var(--ink-900); font-family: var(--font-display); font-size: 15px; font-weight: 700; }

/* Contact and forms ---------------------------------------------------------------- */
.contact-hero__quick { display: grid; gap: 10px; padding: 14px; border: 1px solid rgba(18, 63, 97, .1); border-radius: 22px; background: rgba(255, 255, 255, .86); box-shadow: var(--pu-shadow-raised); }
.contact-hero__quick a {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 74px;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
}
.contact-hero__quick a:hover { border-color: rgba(11, 91, 211, .32); background: #f8fbff; }
.contact-hero__quick a > span {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: var(--pu-blue);
  background: linear-gradient(145deg, #f2f8ff, #e3effb);
  box-shadow: inset 0 0 0 1px rgba(11, 91, 211, .1);
}
.contact-hero__quick a > div { display: grid; gap: 1px; min-width: 0; }
.contact-hero__quick small { color: var(--ink-500); font-size: 13px; }
.contact-hero__quick strong { color: var(--ink-900); font-family: var(--font-display); font-size: 16px; font-weight: 700; }
.contact-hero__quick a > svg { color: var(--ink-400); }

.form-control { min-height: 50px; border: 1px solid var(--line-strong); border-radius: 12px; background: #fff; }
.input-wrap .form-control { padding-inline: 44px 14px; }
.input-wrap select.form-control { padding-inline: 14px 14px; }
.form-control:focus { border-color: var(--pu-blue); box-shadow: 0 0 0 3px rgba(11, 91, 211, .14); }
.contact-info-panel,
.contact-form,
.contact-form--premium { border: 1px solid var(--line); border-radius: 24px; box-shadow: var(--pu-shadow-card); }
.contact-form label { color: var(--ink-800); font-weight: 600; }
.contact-prep > * { border-color: var(--line); background: var(--surface-soft); }
.contact-hours-card { border-radius: 16px; background: var(--pu-dark-background); }
.contact-hours-card p { color: #c3d6e6; }

/* Branch and support cards -------------------------------------------------------- */
.branch-card,
.branch-card--premium { border: 1px solid var(--line); border-radius: var(--pu-radius-card); box-shadow: var(--pu-shadow-card); }
.branch-card h3 { color: var(--ink-900); font-size: 17px; }
.branch-card small { color: var(--pu-blue); font-family: var(--font-display); font-weight: 600; }
.branch-card__pin {
  border-radius: 12px;
  color: var(--pu-blue);
  background: linear-gradient(145deg, #f2f8ff, #e3effb);
  box-shadow: inset 0 0 0 1px rgba(11, 91, 211, .1);
}
.alfares-support-branch-whatsapp { font-size: 13px; }
.official-action { border-color: var(--line); border-radius: 16px; }
.official-action:hover { border-color: rgba(11, 91, 211, .32); background: #f8fbff; }
.official-action--primary {
  border-color: transparent;
  color: #fff;
  background: linear-gradient(180deg, var(--pu-blue-bright), var(--pu-blue));
  box-shadow: var(--pu-shadow-button);
}
.official-action--primary:hover { color: #fff; background: var(--pu-blue-hover); }
.about-downloads__heading { align-items: baseline; }
:is(main, .marketing-main) .section .about-downloads__heading h2 { color: var(--ink-900); font-size: clamp(20px, 2vw, 26px); font-weight: 800; }
.about-identity__surface { border: 1px solid rgba(18, 63, 97, .1); border-radius: 24px; box-shadow: var(--pu-shadow-raised); }

/* Compliance ------------------------------------------------------------------------ */
.zatca-hero__visual img { border-radius: 22px; box-shadow: var(--pu-shadow-float); }
.zatca-status-preview { margin-top: 18px; border: 1px solid rgba(18, 63, 97, .1); border-radius: 16px; background: rgba(255, 255, 255, .8); }
.compliance-step { border: 1px solid var(--line); border-radius: var(--pu-radius-card); box-shadow: var(--pu-shadow-card); }
.compliance-step h3 { color: var(--ink-900); }
.status-screen { border: 1px solid var(--line); border-radius: var(--pu-radius-card); box-shadow: var(--pu-shadow-raised); }
.feature-item strong { display: block; color: var(--ink-900); font-family: var(--font-display); font-size: 16px; font-weight: 700; }
.feature-item > span:last-child > span { color: var(--ink-600); font-size: 14.5px; }
.feature-item__icon {
  border-radius: 13px;
  color: var(--pu-blue);
  background: linear-gradient(145deg, #f2f8ff, #e3effb);
  box-shadow: inset 0 0 0 1px rgba(11, 91, 211, .1);
}
.values-grid { gap: 16px; }
.values-grid article { border: 1px solid var(--line); border-radius: var(--pu-radius-card); background: #fff; box-shadow: var(--pu-shadow-card); }
.values-grid article > span {
  border-radius: 14px;
  color: var(--pu-blue);
  background: linear-gradient(145deg, #f2f8ff, #e3effb);
  box-shadow: inset 0 0 0 1px rgba(11, 91, 211, .1);
}
.values-grid h3 { color: var(--ink-900); font-size: 17px; }
/* Corrections shared by all mastheads ------------------------------------------- */
.page-head { position: relative; }
.support-hero__visual img,
.support-hero img { border-radius: 26px; box-shadow: var(--pu-shadow-float); }
.zatca-hero__visual img { border-radius: 26px; }

/* Guide pages ---------------------------------------------------------------------- */
.split {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  align-items: start;
  gap: clamp(28px, 5vw, 72px);
}
.split p { font-size: 16.5px; line-height: 1.95; }
.process-list { display: grid; gap: 12px; margin: 0; padding: 0; }
.process-list li {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  box-shadow: var(--pu-shadow-card);
}
.process-list li > span {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  color: var(--pu-blue);
  background: linear-gradient(145deg, #f2f8ff, #e3effb);
  box-shadow: inset 0 0 0 1px rgba(11, 91, 211, .1), inset 0 1px 0 #fff;
  font-family: var(--font-display);
  font-size: 14px;
  font-weight: 700;
}
.process-list li > p { margin: 0; color: var(--ink-800); font-size: 15.5px; line-height: 1.75; }

/* Training ---------------------------------------------------------------------------- */
.learning-track { border: 1px solid var(--line); border-radius: var(--pu-radius-card); background: #fff; box-shadow: var(--pu-shadow-card); }
.learning-track h3 { color: var(--ink-900); font-size: 17px; }
.learning-track > span:first-child,
.learning-track .icon { color: var(--pu-blue); }
.training-search { border: 1px solid rgba(18, 63, 97, .1); border-radius: 22px; background: rgba(255, 255, 255, .86); box-shadow: var(--pu-shadow-raised); }
.search-box { border: 1px solid var(--line-strong); border-radius: 12px; background: #fff; box-shadow: none; }
.filter-chip { min-height: 38px; border: 1px solid var(--line-strong); border-radius: 999px; color: var(--ink-700); background: #fff; font-family: var(--font-display); font-weight: 600; }
.filter-chip:hover { color: var(--pu-blue); border-color: rgba(11, 91, 211, .4); }
.filter-chip.is-active { color: #fff; border-color: transparent; background: linear-gradient(180deg, var(--pu-blue-bright), var(--pu-blue)); }
.video-grid { gap: 18px; }
.video-card,
.video-card--premium { overflow: hidden; border: 1px solid var(--line); border-radius: var(--pu-radius-card); background: #fff; box-shadow: var(--pu-shadow-card); }
.video-card__preview {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 7;
  padding: 0;
  overflow: hidden;
  border: 0;
  color: #fff;
  background: var(--pu-dark-background);
  cursor: pointer;
}
.video-card__preview:hover { background: var(--pu-dark-background); }
.video-card__number {
  position: absolute;
  z-index: 2;
  inset-block-start: 14px;
  inset-inline-start: 16px;
  color: rgba(255, 255, 255, .72);
  font-family: var(--font-display);
  font-size: 13px;
  font-weight: 700;
}
.video-card__play {
  position: absolute;
  z-index: 2;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: 50%;
  color: #fff;
  background: rgba(255, 255, 255, .12);
  transform: translate(-50%, -50%);
}
html[dir="rtl"] .video-card__play { transform: translate(50%, -50%); }
.video-card__preview:hover .video-card__play { color: var(--pu-navy-900); background: #fff; }
.video-card__pattern {
  position: absolute;
  inset: 0;
  opacity: 1;
  background-image:
    linear-gradient(rgba(255, 255, 255, .06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .06) 1px, transparent 1px);
  background-size: 28px 28px;
  -webkit-mask-image: radial-gradient(70% 90% at 50% 40%, #000, transparent 76%);
  mask-image: radial-gradient(70% 90% at 50% 40%, #000, transparent 76%);
}
.video-card__body h3 { color: var(--ink-900); font-size: 16.5px; }
.video-card__action { color: var(--pu-blue); font-family: var(--font-display); font-weight: 700; }

/* Long documents ------------------------------------------------------------------------ */
.policy-section p,
.policy-section li { color: var(--ink-700); font-size: 15.5px; line-height: 2; }
.policy-section__number {
  border-radius: 13px;
  color: var(--pu-blue);
  background: linear-gradient(145deg, #f2f8ff, #e3effb);
  box-shadow: inset 0 0 0 1px rgba(11, 91, 211, .1);
  font-family: var(--font-display);
  font-weight: 700;
}
.policy-toc { border: 1px solid var(--line); border-radius: var(--pu-radius-card); background: #fff; box-shadow: var(--pu-shadow-card); }
.policy-toc a:hover { color: var(--pu-blue); }
.policy-toc__help { border-radius: 14px; background: var(--pu-dark-background); }
.policy-identity { border: 1px solid rgba(18, 63, 97, .1); border-radius: 22px; background: rgba(255, 255, 255, .88); box-shadow: var(--pu-shadow-raised); }
.policy-related__links a { border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.policy-related__links a:hover { color: var(--pu-blue); border-color: rgba(11, 91, 211, .32); }

/* 404 ------------------------------------------------------------------------------------- */
.not-found { background: var(--pu-head-background); }
.not-found strong {
  color: transparent;
  background: linear-gradient(to left, var(--pu-blue), var(--pu-sky-text));
  -webkit-background-clip: text;
  background-clip: text;
  font-family: var(--font-display);
  font-weight: 800;
}
.not-found__orb { border-color: rgba(18, 63, 97, .08); }

/* Responsive families ------------------------------------------------------------------- */
@media (max-width: 1080px) {
  .split { grid-template-columns: 1fr; }
  .feature-layout { grid-template-columns: 1fr; }
  .feature-layout__intro { position: static; }
}
@media (max-width: 720px) {
  .feature-matrix { grid-template-columns: 1fr; }
  .feature-line { padding: 18px; }
  .feature-line__check { position: static; margin-bottom: 12px; }
  .workflow-rail { grid-template-columns: 1fr; gap: 12px; }
  .workflow-rail::before { display: none; }
  .workflow-rail__step {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    column-gap: 14px;
    align-items: center;
    padding: 12px 14px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #fff;
    text-align: start;
  }
  .workflow-rail__step > span { width: 44px; height: 44px; margin: 0; box-shadow: none; grid-row: span 2; }
  .workflow-rail__step p { margin: 2px 0 0; max-width: none; }
  .activity-detail-hero__mosaic { gap: 8px; border-radius: 18px; }
  .activity-detail-hero__tile { border-radius: 18px; }
  .video-card__preview { aspect-ratio: 16 / 6; }
  .contact-hero__quick a { grid-template-columns: 42px minmax(0, 1fr) auto; min-height: 66px; }
  .contact-hero__quick a > span { width: 42px; height: 42px; }
}
/* Dynamic pages -------------------------------------------------------------------------- */
.marketing-body { color: var(--ink-950); font-family: var(--font-ar); line-height: 1.85; }
.marketing-body :is(h1, h2, h3) { font-family: var(--font-display); }
.marketing-body .btn--primary { color: #fff; }
.marketing-body .btn--secondary,
.marketing-body .btn--glass { color: var(--ink-900); }
.marketing-body .btn--secondary:hover,
.marketing-body .btn--glass:hover { color: var(--pu-blue); }
.marketing-body .btn--light { color: var(--pu-navy-900); }
.marketing-body .btn--outline-light,
.marketing-body .btn--outline-light:hover { color: #fff; }
.marketing-container { width: min(calc(100% - 40px), 1240px); }
.marketing-section { padding-block: var(--pu-section); }
.marketing-section--compact { padding-block: clamp(30px, 3.6vw, 52px); }
.marketing-section--soft { background: var(--surface-soft); }

.marketing-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 12px;
  border: 1px solid rgba(11, 91, 211, .14);
  border-radius: 999px;
  color: var(--pu-blue);
  background: rgba(11, 91, 211, .06);
  font-family: var(--font-display);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.7;
}
.marketing-eyebrow svg { width: 16px; height: 16px; }
.marketing-eyebrow.is-danger { border-color: rgba(190, 18, 60, .22); color: #be123c; background: rgba(190, 18, 60, .06); }
.marketing-section-heading { max-width: 760px; margin-bottom: clamp(26px, 3.2vw, 42px); }
.marketing-section-heading h2 { margin-block: 12px 12px; color: var(--ink-950); font-size: clamp(26px, 2.75vw, 38px); font-weight: 800; line-height: 1.42; }
.marketing-section-heading p { color: var(--ink-600); font-size: 16.5px; line-height: 1.95; }

.marketing-page-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  width: min(calc(100% - var(--page-head-gutter) - var(--page-head-gutter)), var(--page-head-max-width));
  margin: var(--page-head-gap) auto 0;
  border: 1px solid var(--p-head-border);
  border-radius: var(--page-head-radius);
  background: var(--pu-head-background);
  box-shadow: inset 0 1px 0 #fff;
}
.marketing-page-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(18, 63, 97, .05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(18, 63, 97, .05) 1px, transparent 1px);
  background-size: 46px 46px;
  -webkit-mask-image: radial-gradient(62% 78% at 24% 22%, #000 0%, transparent 74%);
  mask-image: radial-gradient(62% 78% at 24% 22%, #000 0%, transparent 74%);
}
.marketing-page-hero__grid { padding-block: clamp(36px, 3.6vw, 56px); }
.marketing-body .marketing-page-hero h1 { margin-block: 14px 16px; color: var(--p-head-text); font-size: clamp(32px, 3.2vw, 48px); font-weight: 800; line-height: 1.38; }
.marketing-page-hero p { color: var(--p-head-muted); font-size: 16.5px; line-height: 1.95; }

.marketing-policy-meta span { border: 1px solid rgba(18, 63, 97, .12); background: rgba(255, 255, 255, .8); color: var(--ink-600); font-size: 13.5px; }
.marketing-policy-meta b { color: var(--ink-900); }
.marketing-payment-flow {
  border: 1px solid rgba(18, 63, 97, .1);
  border-radius: 22px;
  background: rgba(255, 255, 255, .88);
  box-shadow: var(--pu-shadow-raised);
}
.marketing-payment-flow b { color: #fff; background: linear-gradient(160deg, var(--pu-blue-bright), var(--pu-blue)); font-family: var(--font-display); }
.marketing-payment-flow strong { color: var(--ink-900); font-family: var(--font-display); font-size: 13.5px; font-weight: 700; }
.marketing-payment-flow small { color: var(--ink-500); font-size: 13px; }
.marketing-payment-flow > i { background: var(--line-strong); }

.marketing-authority-note { border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(180deg, #fff, #f8fbfe); box-shadow: var(--pu-shadow-card); }
.marketing-authority-note p { color: var(--ink-700); font-size: 15px; line-height: 1.95; }
.marketing-authority-note strong { color: var(--ink-900); }
.marketing-policy-grid { gap: 16px; }
.marketing-policy-grid article { border: 1px solid var(--line); border-radius: var(--pu-radius-card); background: #fff; box-shadow: var(--pu-shadow-card); }
.marketing-policy-grid h3 { color: var(--ink-900); font-size: 17px; font-weight: 700; }
.marketing-policy-grid p { color: var(--ink-600); font-size: 14.5px; line-height: 1.85; }
.marketing-policy-content article { border: 1px solid var(--line); border-radius: var(--pu-radius-card); background: #fff; box-shadow: var(--pu-shadow-card); }
.marketing-policy-content article > span,
.marketing-policy-grid article > span { color: var(--pu-blue); font-family: var(--font-display); font-size: 13px; font-weight: 700; }
.marketing-policy-content h2 { color: var(--ink-900); font-size: 21px; font-weight: 700; line-height: 1.6; }
.marketing-policy-content p,
.marketing-policy-content li { color: var(--ink-700); font-size: 15.5px; line-height: 2; }
.marketing-policy-index { border: 1px solid var(--line); border-radius: var(--pu-radius-card); background: #fff; box-shadow: var(--pu-shadow-card); }
.marketing-policy-index strong { color: var(--ink-900); font-family: var(--font-display); font-size: 14.5px; }
.marketing-body .marketing-policy-index a { color: var(--ink-600); font-size: 14px; font-weight: 500; }
.marketing-body .marketing-policy-index a:hover { color: var(--pu-blue); background: var(--surface-soft); }
.marketing-policy-links a { border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.marketing-policy-links a:hover { border-color: rgba(11, 91, 211, .32); background: #f8fbff; }
.marketing-policy-links strong { color: var(--ink-900); font-family: var(--font-display); font-size: 14.5px; font-weight: 700; }
.marketing-policy-links small { color: var(--ink-500); font-size: 13px; }

.marketing-cta {
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: var(--pu-radius-panel);
  color: #fff;
  background: var(--pu-dark-background);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), var(--pu-shadow-float);
}
.marketing-cta h2 { color: #fff; font-size: clamp(24px, 2.5vw, 34px); font-weight: 800; line-height: 1.42; }
.marketing-cta p { color: #c3d6e6; font-size: 16px; }
.marketing-button { min-height: 48px; border-radius: 13px; font-family: var(--font-display); font-size: 14.5px; font-weight: 700; }
.marketing-body .marketing-button--primary { color: #fff; background: linear-gradient(180deg, var(--pu-blue-bright), var(--pu-blue)); box-shadow: var(--pu-shadow-button); }
.marketing-body .marketing-button--primary:hover { color: #fff; background: var(--pu-blue-hover); }
.marketing-body .marketing-cta .marketing-button--ghost { color: #fff; border: 1px solid rgba(255, 255, 255, .34); background: rgba(255, 255, 255, .05); }

.marketing-paypal-result__card { border: 1px solid var(--line); border-radius: 26px; background: #fff; box-shadow: var(--pu-shadow-raised); }
.marketing-paypal-result__card h1 { color: var(--ink-950); font-weight: 800; }
.marketing-paypal-result__mark { border-radius: 16px; color: var(--pu-blue); background: linear-gradient(145deg, #f2f8ff, #e3effb); box-shadow: inset 0 0 0 1px rgba(11, 91, 211, .1); }

/* Pricing ----------------------------------------------------------------------------------- */
.pricing-hero .page-head__inner,
.pricing-hero__inner { text-align: center; }
.pricing-hero__notes span { border: 1px solid rgba(18, 63, 97, .12); border-radius: 999px; color: var(--ink-700); background: rgba(255, 255, 255, .8); font-size: 13.5px; }
.pricing-hero__notes .icon { color: var(--pu-blue); }
.pricing-billing-toggle { padding: 4px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-soft); box-shadow: none; }
.pricing-billing-toggle button { min-height: 40px; border-radius: 11px; color: var(--ink-600); font-family: var(--font-display); font-size: 14px; font-weight: 700; }
.pricing-billing-toggle button.is-active { color: var(--pu-blue); background: #fff; box-shadow: var(--pu-shadow-card); }
.alfares-plan-tabs { padding: 4px; border: 0; border-radius: 14px; background: var(--surface-soft); }
.alfares-plan-tabs [role="tab"] { min-height: 40px; border-radius: 11px; color: var(--ink-600); font-family: var(--font-display); font-size: 14px; font-weight: 600; }
.alfares-plan-tabs [aria-selected="true"] { color: var(--pu-blue); background: #fff; box-shadow: var(--pu-shadow-card); }
.premium-site .mysite-pricing-grid,
.pricing-grid { gap: 16px; }
.pricing-card { padding: 26px; border: 1px solid var(--line); border-radius: 22px; background: #fff; box-shadow: var(--pu-shadow-card); }
.pricing-card--featured { border-color: rgba(11, 91, 211, .5); box-shadow: 0 0 0 1px rgba(11, 91, 211, .22), var(--pu-shadow-raised); }
.premium-site .pricing-card[data-plan="trial"] { background: linear-gradient(180deg, #f6faff, #fff 42%); }
.pricing-card__badge { border-radius: 999px; color: #fff; background: linear-gradient(180deg, var(--pu-blue-bright), var(--pu-blue)); font-family: var(--font-display); font-size: 12.5px; font-weight: 700; }
.pricing-card__name { color: var(--ink-950); font-family: var(--font-display); font-size: 21px; font-weight: 800; }
.pricing-card header p { color: var(--ink-600); font-size: 14.5px; line-height: 1.8; }
.pricing-card__price strong { color: var(--ink-950); font-family: var(--font-display); font-size: clamp(38px, 3.4vw, 48px); font-weight: 800; line-height: 1.15; }
.pricing-card__price span { color: var(--ink-600); font-size: 14px; }
.pricing-card__price b { color: var(--pu-blue); font-family: var(--font-display); }
.pricing-card__billing { color: var(--ink-500); font-size: 13.5px; line-height: 1.75; }
.pricing-card__limits { border: 0; border-radius: 12px; color: var(--ink-800); background: var(--surface-soft); font-family: var(--font-display); font-size: 13.5px; font-weight: 600; }
.pricing-card__limits .icon { color: var(--pu-blue); }
.pricing-card li { color: var(--ink-700); font-size: 14.5px; line-height: 1.7; }
.pricing-card li .icon { color: var(--pu-blue); }
.pricing-exclusions { border: 1px solid var(--line); border-radius: 16px; background: var(--surface-soft); }
.pricing-exclusions p { color: var(--ink-600); font-size: 14.5px; }
.pricing-table-wrap { border: 1px solid var(--line); border-radius: var(--pu-radius-card); background: #fff; box-shadow: var(--pu-shadow-card); }
.pricing-table th { color: var(--ink-900); font-family: var(--font-display); font-size: 14px; font-weight: 700; }
.pricing-table thead th { background: var(--surface-soft); }
.pricing-table td { color: var(--ink-700); font-size: 15px; }
.pricing-table tr.is-featured { background: rgba(11, 91, 211, .04); }
.pricing-intro p { color: var(--ink-600); font-size: 15.5px; }
.pricing-faq { border-color: var(--line); }
.pricing-faq summary { color: var(--ink-900); font-family: var(--font-display); font-size: 15px; font-weight: 600; }
.pricing-faq p { color: var(--ink-600); font-size: 15px; line-height: 1.95; }
.pricing-faq summary > span { color: var(--pu-blue); background: #fff; box-shadow: inset 0 0 0 1px var(--line); }
@media (max-width: 720px) {
  .pricing-card { padding: 22px; }
  .marketing-page-hero { width: calc(100% - 20px); border-radius: 24px; }
  .marketing-body .marketing-page-hero h1 { font-size: clamp(26px, 7.2vw, 32px); line-height: 1.44; }
  .marketing-section { padding-block: clamp(46px, 12vw, 62px); }
  .marketing-section-heading h2 { font-size: clamp(24px, 6.6vw, 30px); }
}
/* Later-loaded shared plan controls and small-screen panels ------------------------------- */
.pricing-plans-section .alfares-plan-tabs { padding: 4px; border: 0; border-radius: 14px; background: var(--surface-soft); box-shadow: none; }
.pricing-plans-section .alfares-plan-tabs [role="tab"] { color: var(--ink-600); background: transparent; font-family: var(--font-display); font-size: 14px; font-weight: 600; }
.pricing-plans-section .alfares-plan-tabs [aria-selected="true"] { color: var(--pu-blue); background: #fff; box-shadow: var(--pu-shadow-card); }
.system-card:hover .system-card__icon,
.solutions-page .system-card:hover .system-card__icon { color: #fff; }
.system-card__icon,
.solutions-page .system-card__icon { color: color-mix(in srgb, var(--system-accent) 80%, #0b2239); }
@media (max-width: 720px) {
  .authority-note { grid-template-columns: 1fr; justify-items: start; }
  .authority-note .btn { width: 100%; }
  .authority-note .eyebrow { font-size: 12.5px; }
  .mobile-product__visual { min-height: 0; padding-block: 8px; }
  .mobile-product__visual img { width: min(72%, 230px); }
  .mobile-float--one { inset-inline-start: 0; }
  .mobile-float--two { inset-inline-end: 0; }
}
/* A shared .video-card button reset outranks the single-class preview rule. */
.video-card .video-card__preview,
.video-card .video-card__preview:hover { color: #fff; background: var(--pu-dark-background); }
/* Scale corrections ------------------------------------------------------------------------- */
.not-found h1 { font-size: clamp(30px, 3.4vw, 46px) !important; line-height: 1.4 !important; }
.interface-showcase__heading #interfaces-title,
.interface-showcase__heading #product-interfaces-title { font-size: clamp(26px, 2.75vw, 38px); }
@media (max-width: 1080px) {
  .solutions-page .cloud-hero,
  .cloud-hero { height: auto; min-height: 0; }
  .cloud-stage { height: auto; min-height: 0; }
}
/* Interface tour: only screens with real media are shown -------------------------------------- */
.interface-showcase [hidden],
section.interface-showcase[hidden] { display: none !important; }
.interface-showcase__media-type { display: none; }
.tabs.interface-showcase__category-tabs:not(:has(> [role="tab"]:not([hidden]) ~ [role="tab"]:not([hidden]))) { display: none; }
.interface-showcase__layout:not(:has(.interface-showcase__option-tab:not([hidden]) ~ .interface-showcase__option-tab:not([hidden]))) { grid-template-columns: minmax(0, 1fr); }
.interface-showcase__layout:not(:has(.interface-showcase__option-tab:not([hidden]) ~ .interface-showcase__option-tab:not([hidden]))) .interface-showcase__sidebar { display: none; }
/* Tablet and phone hero: the stage grows with its window and chips ---------------------------- */
@media (max-width: 1080px) {
  .page-head .cloud-stage {
    height: auto;
    min-height: 0;
    overflow: visible;
    border-radius: 0;
  }
  .cloud-hero__visual { min-width: 0; }
}
.cloud-window { box-shadow: 0 0 0 1px rgba(18, 63, 97, .05), var(--pu-shadow-float); }
.cloud-window__bar { background: linear-gradient(180deg, #fff, #f6f9fc); }

/* Pricing on tablets ---------------------------------------------------------------------------- */
@media (min-width: 641px) and (max-width: 980px) {
  .premium-site .mysite-pricing-grid,
  .premium-site [data-plan-display="catalog"] .mysite-pricing-grid.alfares-plan-panels { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.pricing-plans-section .alfares-plan-tabs [role="tab"],
.pricing-plans-section .alfares-plan-tabs [aria-selected="true"] { border-color: transparent; }

/* Mastheads hold a real visual or hug their text ---------------------------------------------------- */
/* Business types: five activity photographs that open their pages. */
.business-types-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  align-items: center;
  gap: clamp(26px, 3.4vw, 52px);
}
.page-head .business-types-hero__inner { max-width: none; margin: 0; text-align: start; }
.business-types-hero .business-types-hero__inner h1 { max-width: none; margin-inline: 0; }
.business-types-hero .business-types-hero__inner p { max-width: none; margin-inline: 0; font-size: 16.5px; line-height: 1.95; }
.business-types-hero__mosaic {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  grid-template-rows: clamp(200px, 17.5vw, 262px) clamp(124px, 10.5vw, 158px);
  gap: 10px;
}
.business-types-tile {
  position: relative;
  grid-column: span 2;
  display: block;
  min-width: 0;
  overflow: hidden;
  border-radius: 18px;
  color: #fff;
  background: #dfe9f3;
  box-shadow: var(--pu-shadow-raised);
}
.business-types-tile--lead { grid-column: span 4; }
.business-types-tile::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(7, 30, 54, .72) 0%, rgba(7, 30, 54, 0) 50%);
}
.business-types-tile img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s var(--ease);
}
.business-types-tile:hover img { transform: scale(1.04); }
.business-types-tile span {
  position: absolute;
  z-index: 1;
  inset-inline: 14px;
  bottom: 11px;
  color: #fff;
  font-family: var(--font-display);
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1.5;
}
.business-types-tile--lead span { font-size: 16px; }

/* Activity pages: the people photograph sits inside the card; the other two stay below it. */
.activity-detail-hero__grid { display: grid; gap: 24px; }
.activity-detail-hero .activity-detail-hero__intro { max-width: none; margin: 0; text-align: start; }
.activity-detail-hero .activity-detail-hero__intro h1 { max-width: none; margin-inline: 0; font-size: clamp(30px, 2.6vw, 42px) !important; }
.activity-detail-hero .activity-detail-hero__intro p { max-width: none; margin-inline: 0; font-size: 16.5px; line-height: 1.95; }
.activity-detail-hero .activity-detail-hero__intro .cluster { justify-content: flex-start; }
.activity-detail-hero__photo {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  aspect-ratio: 3 / 2;
  border-radius: 24px;
  background: var(--surface-soft);
  box-shadow: var(--pu-shadow-float);
}
.activity-detail-hero__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 46%;
}
.activity-detail-hero__mosaic {
  grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
  min-height: clamp(340px, 30vw, 470px);
}

/* Training: the visual plays the real first lesson. */
.training-hero__side { position: relative; min-width: 0; }
.training-player {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 8.2;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 22px;
  background: var(--pu-dark-background);
  box-shadow: var(--pu-shadow-float);
  cursor: pointer;
}
.training-player img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0;
  opacity: .62;
  transition: opacity .25s ease, transform .45s var(--ease);
}
.training-player::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(7, 30, 54, .84) 0%, rgba(7, 30, 54, .16) 60%);
}
.training-player:hover img { opacity: .8; transform: scale(1.02); }
.training-player__play {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 78px;
  height: 78px;
  margin: auto;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: linear-gradient(180deg, var(--pu-blue-bright), var(--pu-blue));
  box-shadow: 0 0 0 11px rgba(255, 255, 255, .16), var(--pu-shadow-button);
}
.training-player__play .icon { width: 30px; height: 30px; fill: currentColor; }
.training-player__track {
  position: absolute;
  z-index: 1;
  inset-inline: 22px;
  bottom: 60px;
  height: 5px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255, 255, 255, .26);
}
.training-player__track i { display: block; width: 34%; height: 100%; border-radius: inherit; background: var(--pu-sky-soft); }
.training-hero__side .training-search {
  position: relative;
  z-index: 2;
  margin: -44px clamp(14px, 2vw, 24px) 0;
  background: #fff;
  box-shadow: var(--pu-shadow-raised);
}

/* Support: the illustration keeps its own proportions instead of being letterboxed. */
.page-head .support-hero__grid img {
  width: min(100%, 560px);
  height: auto;
  max-height: none;
  margin-inline: auto;
}

/* Pricing and payment policy: a short introduction, so the plans and the policy come first. */
.page-head.pricing-hero { padding-block: clamp(24px, 2.4vw, 36px); }
.page-head.pricing-hero h1 { font-size: clamp(28px, 2.7vw, 42px) !important; }
.section.pricing-plans-section { padding-top: clamp(28px, 3vw, 44px); }
.marketing-page-hero__grid { min-height: 0; }
.marketing-body .marketing-page-hero h1 { font-size: clamp(28px, 2.6vw, 40px) !important; }

/* About: twelve programs around one platform. */
.about-hero__grid > .about-identity:last-child { height: auto; min-height: 0; display: block; place-items: normal; }
.about-hero__grid > .about-identity:last-child::before { content: none; }
.about-orbit {
  --r-inner: clamp(88px, 7.6vw, 112px);
  --r-outer: clamp(146px, 12.4vw, 182px);
  --node: 46px;
  position: relative;
  width: 100%;
  height: clamp(360px, 30vw, 430px);
  overflow: hidden;
  border-radius: 26px;
  background: var(--pu-dark-background);
  box-shadow: var(--pu-shadow-float);
}
.about-orbit::before,
.about-orbit::after {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  border-radius: 50%;
}
.about-orbit::before { width: calc(var(--r-inner) * 2); height: calc(var(--r-inner) * 2); border: 1px solid rgba(255, 255, 255, .16); }
.about-orbit::after { width: calc(var(--r-outer) * 2); height: calc(var(--r-outer) * 2); border: 1px dashed rgba(143, 211, 248, .32); }
.about-orbit__core {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 116px;
  height: 116px;
  margin: auto;
  padding: 10px;
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 0 0 12px rgba(255, 255, 255, .07), 0 26px 60px -12px rgba(14, 165, 233, .6);
}
.about-orbit__core img { display: block; width: 100%; height: 100%; object-fit: contain; }
.about-orbit__node {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: var(--node);
  height: var(--node);
  margin: calc(var(--node) / -2) 0 0 calc(var(--node) / -2);
  display: grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 14px;
  color: #cfeafc;
  background: #123f61;
  transform: rotate(var(--a)) translateX(var(--r)) rotate(calc(var(--a) * -1));
}
.about-orbit__node .icon { width: 21px; height: 21px; }
.about-orbit__node:nth-child(2) { --a: -90deg; --r: var(--r-inner); }
.about-orbit__node:nth-child(3) { --a: -30deg; --r: var(--r-inner); }
.about-orbit__node:nth-child(4) { --a: 30deg; --r: var(--r-inner); }
.about-orbit__node:nth-child(5) { --a: 90deg; --r: var(--r-inner); }
.about-orbit__node:nth-child(6) { --a: 150deg; --r: var(--r-inner); }
.about-orbit__node:nth-child(7) { --a: 210deg; --r: var(--r-inner); }
.about-orbit__node:nth-child(8) { --a: -60deg; --r: var(--r-outer); }
.about-orbit__node:nth-child(9) { --a: 0deg; --r: var(--r-outer); }
.about-orbit__node:nth-child(10) { --a: 60deg; --r: var(--r-outer); }
.about-orbit__node:nth-child(11) { --a: 120deg; --r: var(--r-outer); }
.about-orbit__node:nth-child(12) { --a: 180deg; --r: var(--r-outer); }
.about-orbit__node:nth-child(13) { --a: 240deg; --r: var(--r-outer); }

@media (min-width: 1081px) {
  .activity-detail-hero__grid {
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    align-items: center;
    gap: clamp(26px, 3.4vw, 52px);
  }
}
@media (max-width: 1080px) {
  .business-types-hero__grid { grid-template-columns: minmax(0, 1fr); }
  .business-types-hero__mosaic { grid-template-rows: clamp(190px, 36vw, 300px) clamp(112px, 20vw, 172px); }
  .activity-detail-hero__mosaic { min-height: clamp(280px, 38vw, 380px); }
  .training-hero__side { max-width: 640px; }
  .about-orbit { --r-inner: 84px; --r-outer: 142px; --node: 42px; height: 350px; max-width: 620px; margin-inline: auto; }
  .about-orbit__core { width: 100px; height: 100px; border-radius: 24px; }
}
@media (max-width: 767px) {
  .activity-detail-hero__photo { border-radius: 18px; }
  .activity-detail-hero__mosaic {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: minmax(170px, 46vw);
    min-height: 0;
  }
  .activity-detail-hero__tile--directory,
  .activity-detail-hero__tile--workflow { grid-row: 1; }
}
@media (max-width: 620px) {
  .business-types-hero__mosaic {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: clamp(170px, 50vw, 240px) repeat(2, clamp(104px, 30vw, 150px));
    gap: 8px;
  }
  .business-types-tile { grid-column: span 1; border-radius: 14px; }
  .business-types-tile--lead { grid-column: span 2; }
  .business-types-tile span { inset-inline: 10px; bottom: 8px; font-size: 12.5px; }
  .business-types-tile--lead span { font-size: 14.5px; }
  .training-player { border-radius: 18px; aspect-ratio: 16 / 10; }
  .training-player__play { width: 62px; height: 62px; box-shadow: 0 0 0 8px rgba(255, 255, 255, .16), var(--pu-shadow-button); }
  .training-player__track { inset-inline: 14px; bottom: 54px; }
  .training-hero__side .training-search { margin: -38px 10px 0; }
  .about-orbit { --r-inner: 70px; --r-outer: 120px; --node: 38px; height: 300px; border-radius: 20px; }
  .about-orbit__core { width: 84px; height: 84px; padding: 8px; border-radius: 20px; }
  .about-orbit__node { border-radius: 12px; }
  .about-orbit__node .icon { width: 18px; height: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .business-types-tile img,
  .training-player img { transition: none; }
  .business-types-tile:hover img,
  .training-player:hover img { transform: none; }
}

/* Dark invitation cards: a visual on the far side instead of empty space. */
.cta-panel--premium,
.activity-detail-offer,
.business-types-cta,
.solutions-pricing-callout,
.training-support,
.marketing-cta { position: relative; overflow: hidden; isolation: isolate; }
:is(.cta-panel--premium, .activity-detail-offer, .business-types-cta, .solutions-pricing-callout, .training-support, .marketing-cta) > :not(.cta-visual, .cta-photo) {
  position: relative;
  z-index: 1;
  min-width: 0;
}
.marketing-cta::after { content: none; }
:is(main, .marketing-main) .section .training-support h2,
.marketing-body .marketing-cta h2 { font-size: clamp(24px, 2.5vw, 34px); line-height: 1.42; }
.cta-panel--premium,
.training-support { padding-block: clamp(28px, 3.2vw, 44px); }
.marketing-cta .marketing-eyebrow { color: #cfeafc; border-color: rgba(255, 255, 255, .16); background: rgba(255, 255, 255, .08); }
.cta-visual {
  position: absolute;
  z-index: 0;
  top: clamp(18px, 2vw, 30px);
  inset-inline-end: clamp(10px, 2.4vw, 36px);
  width: min(44%, 520px);
  height: auto;
  max-width: none;
  pointer-events: none;
}
.cta-photo {
  position: absolute;
  z-index: 0;
  inset-block: 0;
  inset-inline-end: 0;
  width: 50%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: 50% 46%;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(to right, #000 46%, transparent 100%);
  mask-image: linear-gradient(to right, #000 46%, transparent 100%);
}
html[dir="ltr"] .cta-photo {
  -webkit-mask-image: linear-gradient(to left, #000 46%, transparent 100%);
  mask-image: linear-gradient(to left, #000 46%, transparent 100%);
}
@media (min-width: 901px) {
  :is(.cta-panel--premium, .activity-detail-offer, .business-types-cta, .solutions-pricing-callout, .training-support, .marketing-cta) {
    grid-template-columns: minmax(0, 1fr);
    justify-items: start;
    gap: 20px;
    min-height: clamp(290px, 23vw, 340px);
    padding-inline-end: calc(47% + 8px);
  }
  :is(.cta-panel--premium, .activity-detail-offer, .business-types-cta, .solutions-pricing-callout, .training-support, .marketing-cta) > :is(.cluster, .cta-panel__actions, .marketing-actions) {
    justify-content: flex-start;
  }
}
@media (max-width: 900px) {
  :is(.cta-panel--premium, .solutions-pricing-callout, .training-support, .marketing-cta):has(> .cta-visual) { padding-bottom: 0; }
  .cta-visual {
    position: relative;
    top: auto;
    inset-inline-end: auto;
    display: block;
    width: min(100%, 480px);
    margin: 8px auto 0;
  }
  .cta-photo {
    position: relative;
    inset: auto;
    display: block;
    width: 100%;
    height: clamp(170px, 46vw, 260px);
    border-radius: 16px;
    -webkit-mask-image: none;
    mask-image: none;
  }
  html[dir="ltr"] .cta-photo { -webkit-mask-image: none; mask-image: none; }
}

/* Pricing masthead: the introduction beside a picture of the plans. */
.pricing-hero__inner.pricing-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  align-items: center;
  gap: clamp(26px, 3.4vw, 52px);
  text-align: start;
}
.pricing-hero__grid h1,
.pricing-hero__grid p { max-width: none; margin-inline: 0; }
.pricing-hero__grid .pricing-hero__notes { justify-content: flex-start; }
.pricing-hero__visual { min-width: 0; }
.pricing-hero__visual img { display: block; width: 100%; height: auto; border-radius: 24px; box-shadow: var(--pu-shadow-float); }

/* Contact masthead: the quick links sit on a designed visual. */
.contact-hero__side { position: relative; min-width: 0; }
.contact-hero__art { display: block; width: 100%; height: auto; border-radius: 24px; box-shadow: var(--pu-shadow-float); }
.contact-hero__side .contact-hero__quick {
  position: relative;
  z-index: 1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: -48px clamp(12px, 1.6vw, 20px) 0;
  background: #fff;
}

/* Policy mastheads: the provider card sits on a visual of the page's subject. */
.policy-hero__grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); align-items: center; }
.policy-hero__side { position: relative; min-width: 0; }
.policy-hero__art { display: block; width: 100%; height: auto; border-radius: 24px; box-shadow: var(--pu-shadow-float); }
.policy-hero__side .policy-identity {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 16px;
  max-width: none;
  margin: -38px clamp(12px, 1.6vw, 20px) 0;
  padding: 12px 18px;
  background: #fff;
}
.policy-hero__side .policy-identity > span { grid-column: 1; margin: 0; }
.policy-hero__side .policy-identity > strong { grid-column: 1; font-size: 15.5px; }
.policy-hero__side .policy-identity p { grid-column: 1; margin: 2px 0 0; font-size: 12.5px; line-height: 1.7; }
.policy-hero__side .policy-identity small { grid-column: 2; grid-row: 1 / span 3; padding: 0; border: 0; white-space: nowrap; }

/* Payment policy masthead: the real steps become the visual. */
.marketing-payment-policy-hero .marketing-page-hero__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(26px, 3.4vw, 52px); }
.marketing-payment-flow {
  padding: clamp(22px, 2.6vw, 36px);
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 24px;
  background: var(--pu-dark-background);
  box-shadow: var(--pu-shadow-float);
}
.marketing-payment-flow b {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: linear-gradient(180deg, var(--pu-blue-bright), var(--pu-blue));
  font-family: var(--font-display);
  font-size: 17px;
}
.marketing-payment-flow strong { color: #fff; font-family: var(--font-display); font-size: 14px; font-weight: 700; line-height: 1.55; }
.marketing-payment-flow small { color: #c3d6e6; font-size: 12.5px; }
.marketing-payment-flow > i { width: 22px; background: rgba(143, 211, 248, .45); }

/* The error page is only as tall as its message. */
.not-found { min-height: 0; padding-block: clamp(44px, 4.6vw, 72px); }
.not-found strong { font-size: clamp(84px, 9.6vw, 156px); }
.not-found__orb { width: min(460px, 78vw); }

@media (max-width: 1180px) {
  .contact-hero__side .contact-hero__quick { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 1080px) {
  .marketing-payment-policy-hero .marketing-page-hero__grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 900px) {
  .pricing-hero__inner.pricing-hero__grid,
  .policy-hero__grid { grid-template-columns: minmax(0, 1fr); }
  .pricing-hero__visual,
  .policy-hero__side,
  .contact-hero__side { width: 100%; max-width: 520px; margin-inline: auto; }
  .marketing-payment-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 12px; }
  .marketing-payment-flow > i { display: none; }
}
@media (max-width: 620px) {
  .contact-hero__art,
  .policy-hero__art,
  .pricing-hero__visual img { border-radius: 18px; }
  .contact-hero__side .contact-hero__quick { grid-template-columns: minmax(0, 1fr); margin: -28px 10px 0; }
  .policy-hero__side .policy-identity { grid-template-columns: minmax(0, 1fr); margin: -22px 10px 0; }
  .policy-hero__side .policy-identity small { grid-column: 1; grid-row: auto; margin-top: 6px; white-space: normal; }
}
