.kya-universal-brand,
.pat-brand.pat-universal-brand,
.pat-footer-universal-brand {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #10201d;
    text-decoration: none;
    font-weight: 850;
    letter-spacing: -.02em;
}

.kya-universal-brand-mark,
.pat-brand-universal-mark {
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
}

.kya-universal-brand-wordmark,
.pat-brand-universal-wordmark {
    font-size: 18px;
    line-height: 1;
}

.kya-sample-section {
    padding: 62px 0;
    border-top: 1px solid #dce7e3;
    background: #fff;
}

.kya-sample-grid {
    display: grid;
    grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
    gap: 20px;
    align-items: stretch;
}

.kya-sample-badge-card,
.kya-sample-passport-card {
    border: 1px solid #d6e4df;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(21, 55, 47, .075);
}

.kya-sample-badge-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 28px;
}

.kya-sample-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    margin-top: 14px;
    padding: 11px 14px;
    border: 1px solid #9fd3c5;
    border-radius: 999px;
    background: #edf9f5;
    color: #0b6f59;
    font-size: 13px;
    font-weight: 950;
    letter-spacing: .04em;
}

.kya-sample-warning {
    display: inline-flex;
    width: fit-content;
    margin-top: 10px;
    padding: 6px 9px;
    border: 1px solid #efc69c;
    border-radius: 999px;
    background: #fff8ee;
    color: #8a4b0b;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.kya-sample-badge-card h2,
.kya-sample-passport-card h2 {
    margin: 8px 0 0;
    font-size: 26px;
    letter-spacing: -.035em;
}

.kya-sample-badge-card p,
.kya-sample-passport-copy {
    color: #60706b;
    font-size: 13px;
    line-height: 1.6;
}

.kya-sample-passport-card {
    padding: 24px;
}

.kya-sample-passport-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e6eeeb;
}

.kya-sample-passport-head strong {
    font-size: 18px;
}

.kya-sample-passport-status {
    padding: 7px 9px;
    border-radius: 999px;
    background: #e9f8f3;
    color: #0e7059;
    font-size: 12px;
    font-weight: 950;
}

.kya-sample-passport-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 16px;
}

.kya-sample-passport-facts div {
    padding: 11px;
    border: 1px solid #e1eae7;
    border-radius: 11px;
    background: #fafcfb;
}

.kya-sample-passport-facts span,
.kya-sample-passport-facts strong {
    display: block;
}

.kya-sample-passport-facts span {
    color: #75837f;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.kya-sample-passport-facts strong {
    margin-top: 4px;
    font-size: 12px;
}

.kya-sample-passport-truth {
    margin-top: 14px;
    padding: 11px;
    border: 1px solid #f0d1ad;
    border-radius: 11px;
    background: #fffaf3;
    color: #795228;
    font-size: 13px;
    line-height: 1.5;
    font-weight: 750;
}

.kya-compact-footer {
    border-top: 1px solid #dbe5e1;
    background: #f7faf9;
}

.kya-compact-footer-row {
    min-height: 74px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 18px 0;
}

.kya-compact-footer-copy {
    margin: 0;
    color: #5f706a;
    font-size: 13px;
    line-height: 1.5;
}

.kya-compact-footer-copy span {
    color: #788680;
}

.kya-compact-footer-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 0;
}

.kya-compact-footer-links a {
    color: #314a43;
    text-decoration: none;
    font-size: 13px;
    font-weight: 800;
}

.kya-compact-footer-links a:hover {
    color: #0b755f;
}

.kya-compact-footer-links a + a::before {
    content: "·";
    display: inline-block;
    margin: 0 10px;
    color: #9aa8a3;
    font-weight: 600;
}

.pat-mode-links {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 28px;
}

.pat-mode-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 8px 12px;
    border: 1px solid #c5dcd5;
    border-radius: 10px;
    background: #fff;
    color: #205f51;
    text-decoration: none;
    font-size: 12px;
    font-weight: 850;
}

.pat-mode-links a:first-child {
    border-color: #0b755f;
    background: #0b755f;
    color: #fff;
}

.pat-custom-test {
    border-top: 1px solid #dce7e3;
    background: #fff;
}

.pat-custom-grid {
    display: grid;
    grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
    gap: 26px;
    align-items: start;
}

.pat-custom-explain {
    position: sticky;
    top: 94px;
    padding: 24px;
    border: 1px solid #d9e6e2;
    border-radius: 18px;
    background: #f4faf8;
}

.pat-custom-explain h2 {
    margin-top: 4px;
}

.pat-custom-explain p,
.pat-custom-warning {
    color: #5d7069;
    font-size: 13px;
    line-height: 1.6;
}

.pat-custom-warning {
    margin-top: 16px;
    padding: 11px;
    border: 1px solid #efd0ad;
    border-radius: 11px;
    background: #fffaf2;
    color: #745027;
    font-weight: 750;
}

.pat-custom-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
    padding: 24px;
    border: 1px solid #d9e6e2;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 38px rgba(21,55,47,.055);
}

.pat-custom-form label {
    display: grid;
    gap: 6px;
    color: #41564f;
    font-size: 12px;
    font-weight: 800;
}

.pat-custom-form label.is-wide,
.pat-custom-submit {
    grid-column: 1 / -1;
}

.pat-custom-form input,
.pat-custom-form select {
    width: 100%;
    min-height: 43px;
    padding: 9px 10px;
    border: 1px solid #c9d9d4;
    border-radius: 10px;
    background: #fff;
    color: #173029;
    font: inherit;
    font-size: 13px;
}

.pat-custom-submit {
    display: flex;
    justify-content: flex-start;
    padding-top: 4px;
}

.pat-custom-result-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin: 18px 0;
}

.pat-custom-result-summary div {
    padding: 12px;
    border: 1px solid #dce7e3;
    border-radius: 11px;
    background: #fafcfb;
}

.pat-custom-result-summary span,
.pat-custom-result-summary strong {
    display: block;
}

.pat-custom-result-summary span {
    color: #75847f;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.pat-custom-result-summary strong {
    margin-top: 4px;
    overflow-wrap: anywhere;
    font-size: 13px;
}

.pat-kya-not-registered {
    margin: 16px 0;
    padding: 14px;
    border: 1px solid #ecc7a2;
    border-radius: 13px;
    background: #fff8ee;
}

.pat-kya-not-registered strong,
.pat-kya-not-registered span {
    display: block;
}

.pat-kya-not-registered strong {
    color: #8a4d0e;
    font-size: 13px;
}

.pat-kya-not-registered span {
    margin-top: 5px;
    color: #735a3f;
    font-size: 12px;
    line-height: 1.5;
}

.pat-registration-conversion {
    border-color: #b8ddd2;
    background: #f0faf7;
}

.pat-registration-conversion .pat-button-primary {
    min-width: 170px;
}

@media (max-width: 900px) {
    .kya-sample-grid,
    .pat-custom-grid {
        grid-template-columns: 1fr;
    }

    .pat-custom-explain {
        position: static;
    }

    .kya-compact-footer-row {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .kya-compact-footer-links {
        justify-content: flex-start;
    }
}

@media (max-width: 620px) {
    .kya-sample-passport-facts,
    .pat-custom-form,
    .pat-custom-result-summary {
        grid-template-columns: 1fr;
    }

    .pat-custom-form label.is-wide,
    .pat-custom-submit {
        grid-column: auto;
    }

    .kya-universal-brand-wordmark,
    .pat-brand-universal-wordmark {
        font-size: 16px;
    }
}

/* ------------------------------------------------------------------
   Paylogee public typography standard
   Meaningful public text never relies on tiny production sizing.
   ------------------------------------------------------------------ */

.kya-public,
.pat-page {
    font-size: 15px;
    line-height: 1.6;
}

/* Navigation and primary actions */
.kya-public-nav a,
.kya-nav-cta,
.kya-btn,
.pat-nav a,
.pat-nav-primary,
.pat-button,
.pat-mode-links a {
    font-size: 14px !important;
}

/* Public body and explanatory copy */
.kya-public-hero p:not(.kya-kicker),
.kya-principles p,
.kya-muted,
.kya-truth-note,
.kya-sample-badge-card p,
.kya-sample-passport-copy,
.kya-passport-copy,
.kya-passport-proof p,
.kya-conversion p:not(.kya-kicker),
.pat-lead,
.pat-custom-explain p,
.pat-custom-warning,
.pat-control p,
.pat-score-card p,
.pat-receipt-note,
.pat-kya-not-registered span {
    font-size: 15px !important;
    line-height: 1.6;
}

/* Form controls and operational values */
.kya-form input,
.kya-form textarea,
.kya-form select,
.kya-notice,
.kya-sample-passport-facts strong,
.kya-public-passport b,
.kya-check-list div,
.kya-score span,
.pat-custom-form input,
.pat-custom-form select,
.pat-custom-result-summary strong,
.pat-mini-facts dd,
.pat-receipt-facts dd,
.pat-four-step span,
.pat-four-step strong,
.pat-decision,
.pat-score-card span {
    font-size: 14px !important;
}

/* Labels and secondary operational text */
.kya-environment,
.kya-status,
.kya-agent-row span,
.kya-agent-row b,
.kya-facts strong,
.kya-form label,
.kya-key-row span,
.kya-danger-zone p,
.kya-url,
.kya-event-row,
.kya-back,
.kya-scenario-tabs a,
.kya-sample-warning,
.kya-sample-passport-status,
.kya-sample-passport-facts span,
.kya-sample-passport-truth,
.pat-trust-row span,
.pat-badge,
.pat-scenario-label,
.pat-mini-facts dt,
.pat-integrity,
.pat-receipt-facts dt,
.pat-copy-status,
.pat-custom-form label,
.pat-custom-result-summary span,
.pat-kya-not-registered strong {
    font-size: 13px !important;
}

/* Micro-labels have a hard 12px floor. */
.kya-kicker,
.kya-principles span,
.kya-facts span,
.kya-link-danger,
.kya-public-passport span,
.pat-kicker {
    font-size: 12px !important;
}

/* KYA hero support line should remain readable. */
.kya-public-hero small {
    display: block;
    margin-top: 10px;
    color: #65756f;
    font-size: 13px !important;
    line-height: 1.55;
}

/* Keep the compact footer visually quiet, but not tiny. */
.kya-compact-footer-copy,
.kya-compact-footer-links a {
    font-size: 13px !important;
}

@media (max-width: 620px) {
    .kya-public-nav a,
    .kya-nav-cta,
    .kya-btn,
    .pat-nav a,
    .pat-nav-primary,
    .pat-button {
        font-size: 14px !important;
    }

    .kya-compact-footer-row {
        min-height: auto;
        padding: 20px 0 24px;
    }
}

/* ------------------------------------------------------------------
   Public KYA enterprise experience polish
   ------------------------------------------------------------------ */

.kya-public-hero {
    background:
        radial-gradient(circle at 82% 18%, rgba(19, 148, 117, .065), transparent 30%),
        #ffffff;
}

.kya-hero-copy h1 {
    max-width: 780px;
    font-weight: 950;
    text-wrap: balance;
}

.kya-hero-value {
    max-width: 650px !important;
    margin-top: 18px;
    color: #50635d !important;
    font-size: 18px !important;
    line-height: 1.55 !important;
}

.kya-hero-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 17px;
}

.kya-hero-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 5px 10px;
    border: 1px solid #d8e5e0;
    border-radius: 999px;
    background: #f8fbfa;
    color: #48605a;
    font-size: 13px;
    font-weight: 800;
}

.kya-hero-actions {
    align-items: center;
    gap: 12px;
}

.kya-hero-text-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 42px;
    padding: 0 4px;
    color: #3e5750;
    text-decoration: none;
    font-size: 14px;
    font-weight: 850;
}

.kya-hero-text-link:hover {
    color: #0b755f;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.kya-certificate-preview {
    position: relative;
    overflow: hidden;
    padding: 26px;
}

.kya-certificate-preview::after {
    content: "";
    position: absolute;
    width: 110px;
    height: 110px;
    right: -48px;
    top: -48px;
    border-radius: 50%;
    background: rgba(12, 117, 95, .06);
    pointer-events: none;
}

.kya-certificate-head {
    display: flex !important;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding: 0 0 14px !important;
    border: 0 !important;
}

.kya-certificate-head > div {
    padding: 0 !important;
    border: 0 !important;
}

.kya-certificate-head strong {
    display: block;
    margin-top: 4px;
    color: #19312a;
    font-size: 20px;
    letter-spacing: -.02em;
}

.kya-certificate-chip {
    display: inline-flex !important;
    align-items: center;
    min-height: 27px;
    padding: 4px 8px;
    border: 1px solid #d7e6e1;
    border-radius: 999px;
    background: #f5faf8;
    color: #526a63 !important;
    font-size: 12px !important;
    font-weight: 850;
    white-space: nowrap;
    text-transform: none !important;
}

.kya-certificate-row {
    display: grid !important;
    grid-template-columns: 30px minmax(0, 1fr);
    align-items: center;
    gap: 11px;
    padding: 13px 0 !important;
}

.kya-certificate-row > div {
    padding: 0 !important;
    border: 0 !important;
}

.kya-certificate-row .kya-certificate-icon {
    display: grid !important;
    place-items: center;
    width: 28px;
    height: 28px;
    border: 1px solid #cfe7df;
    border-radius: 50%;
    background: #eef9f5;
    color: #0b755f !important;
    font-size: 13px !important;
    font-weight: 950;
    text-transform: none !important;
}

.kya-certificate-row div span {
    color: #73827d !important;
    font-size: 12px !important;
    font-weight: 850;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.kya-certificate-row div b {
    margin-top: 3px;
    color: #19312a;
    font-size: 14px !important;
}

.kya-standards-section {
    border-top: 1px solid #e1e9e6;
    border-bottom: 1px solid #e1e9e6;
    background: #f8faf9;
}

.kya-standards-head,
.kya-proof-head {
    align-items: flex-start;
}

.kya-section-support {
    max-width: 760px;
    margin: 9px 0 0;
    color: #62716c;
    font-size: 15px;
    line-height: 1.6;
}

.kya-standards-dashboard {
    margin-top: 25px;
    padding: 22px;
    border: 1px solid #d4e2dd;
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 18px 48px rgba(25, 58, 49, .055);
}

.kya-standards-toolbar {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
    padding-bottom: 18px;
    border-bottom: 1px solid #e4ece9;
}

.kya-current-scenario {
    min-width: 190px;
}

.kya-current-scenario span,
.kya-score-label {
    display: block;
    color: #75847f;
    font-size: 12px !important;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.kya-current-scenario strong {
    display: block;
    margin-top: 4px;
    color: #173029;
    font-size: 15px;
}

.kya-standards-dashboard .kya-scenario-tabs {
    justify-content: flex-end;
    margin: 0;
}

.kya-standards-dashboard .kya-scenario-tabs a {
    background: #f7faf9;
    color: #49615a;
    transition: border-color .15s ease, background .15s ease, color .15s ease, transform .15s ease;
}

.kya-standards-dashboard .kya-scenario-tabs a:hover {
    border-color: #9ecdc1;
    transform: translateY(-1px);
}

.kya-standards-dashboard .kya-scenario-tabs a.active {
    border-color: #0b755f;
    background: #0b755f;
    color: #ffffff;
    box-shadow: 0 7px 18px rgba(11, 117, 95, .14);
}

.kya-standards-body {
    grid-template-columns: 180px minmax(0, 1fr);
    margin-top: 18px;
}

.kya-standards-dashboard .kya-score,
.kya-standards-dashboard .kya-check-list {
    border: 0;
    background: transparent;
}

.kya-standards-dashboard .kya-score {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 18px 18px 18px 4px;
    border-right: 1px solid #e5ecea;
    border-radius: 0;
}

.kya-standards-dashboard .kya-score strong {
    margin: 7px 0 2px;
    color: #112720;
    font-size: 48px;
}

.kya-standards-dashboard .kya-check-list {
    padding: 0;
}

.kya-standards-dashboard .kya-check-list > div {
    position: relative;
    min-height: 48px;
    padding: 10px 38px 10px 10px;
    background: #fbfcfc;
}

.kya-control-state {
    flex: 0 0 23px;
}

.kya-control-help {
    position: absolute;
    right: 9px;
    top: 50%;
    display: grid !important;
    place-items: center;
    width: 21px !important;
    height: 21px !important;
    transform: translateY(-50%);
    border: 1px solid #ccd9d5;
    border-radius: 50%;
    background: #ffffff !important;
    color: #5c716a !important;
    font-size: 12px !important;
    font-weight: 900;
    cursor: help;
    outline: none;
}

.kya-control-help:focus {
    border-color: #0b755f;
    box-shadow: 0 0 0 3px rgba(11, 117, 95, .12);
}

.kya-control-tooltip {
    position: absolute;
    z-index: 20;
    left: 50%;
    bottom: calc(100% + 9px);
    width: 255px !important;
    height: auto !important;
    padding: 10px 11px !important;
    transform: translateX(-50%) translateY(3px);
    border: 1px solid #d1dfda;
    border-radius: 10px !important;
    background: #10221d !important;
    color: #ffffff !important;
    box-shadow: 0 14px 30px rgba(18, 48, 40, .16);
    font-size: 12px !important;
    font-weight: 650 !important;
    line-height: 1.45;
    opacity: 0;
    pointer-events: none;
    transition: opacity .14s ease, transform .14s ease;
}

.kya-control-help:hover .kya-control-tooltip,
.kya-control-help:focus .kya-control-tooltip {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.kya-standards-truth {
    margin: 18px 0 0;
    padding-top: 16px;
    border-top: 1px solid #e5ecea;
    color: #65756f;
    font-size: 13px;
    line-height: 1.6;
}

.kya-standards-conversion {
    margin-top: 18px;
    background: #f1f8f6;
}

.kya-proof-section {
    background: #ffffff;
}

.kya-proof-head {
    margin-bottom: 24px;
}

.kya-proof-badge-card,
.kya-proof-passport-card {
    border-color: #d5e2de;
    box-shadow: 0 18px 46px rgba(22, 55, 47, .055);
}

.kya-proof-badge-card {
    justify-content: flex-start;
}

.kya-proof-badge-card h2 {
    max-width: 330px;
}

.kya-demo-caption {
    display: block;
    margin-top: 12px;
    color: #788680;
    font-size: 12px;
    line-height: 1.5;
}

.kya-proof-section .kya-sample-warning {
    border-color: #e3dfd5;
    background: #faf9f6;
    color: #756d5f;
    font-weight: 850;
}

.kya-sample-inspector {
    margin-top: 16px;
    border: 1px solid #dce6e2;
    border-radius: 12px;
    background: #f9fbfa;
    overflow: hidden;
}

.kya-sample-inspector summary {
    position: relative;
    padding: 12px 38px 12px 13px;
    color: #26463d;
    font-size: 13px;
    font-weight: 850;
    cursor: pointer;
    list-style: none;
}

.kya-sample-inspector summary::-webkit-details-marker {
    display: none;
}

.kya-sample-inspector summary::after {
    content: "+";
    position: absolute;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
    color: #60716b;
    font-size: 18px;
    font-weight: 700;
}

.kya-sample-inspector[open] summary::after {
    content: "−";
}

.kya-sample-inspector-body {
    padding: 0 13px 13px;
    border-top: 1px solid #e4ebe8;
}

.kya-sample-inspector-body p {
    margin: 12px 0 8px;
    color: #6b7974;
    font-size: 12px !important;
}

.kya-sample-inspector pre {
    max-width: 100%;
    margin: 0;
    padding: 13px;
    overflow: auto;
    border-radius: 9px;
    background: #10221d;
    color: #e8f8f2;
    font-size: 12px;
    line-height: 1.55;
}

.kya-sample-disclaimer {
    margin-top: 12px;
    padding: 8px 0 0;
    border: 0;
    border-top: 1px solid #e5e9e7;
    border-radius: 0;
    background: transparent;
    color: #7a827f;
    font-size: 12px !important;
    font-weight: 650;
}

@media (max-width: 900px) {
    .kya-standards-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .kya-standards-dashboard .kya-scenario-tabs {
        justify-content: flex-start;
    }

    .kya-standards-body {
        grid-template-columns: 1fr;
    }

    .kya-standards-dashboard .kya-score {
        padding: 0 0 16px;
        border-right: 0;
        border-bottom: 1px solid #e5ecea;
    }
}

@media (max-width: 620px) {
    .kya-hero-value {
        font-size: 16px !important;
    }

    .kya-hero-text-link {
        width: 100%;
        min-height: 34px;
        padding-left: 0;
    }

    .kya-certificate-head {
        flex-direction: column;
    }

    .kya-standards-dashboard {
        padding: 17px;
    }

    .kya-control-tooltip {
        left: auto;
        right: -6px;
        width: min(250px, 72vw) !important;
        transform: translateY(3px);
    }

    .kya-control-help:hover .kya-control-tooltip,
    .kya-control-help:focus .kya-control-tooltip {
        transform: translateY(0);
    }
}
