.form-shell label,
.form-shell .check-line,
.form-shell legend {
    font-size: 0.95rem;
    line-height: 1.55;
}

/* Global action system refresh */

.btn,
.btn-link,
.table-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.48rem;
    vertical-align: middle;
    line-height: 1.2;
    font-weight: 650;
    letter-spacing: 0.01em;
    text-transform: none;
}

.btn,
.btn-link {
    min-height: 2.3rem;
    padding: 0.56rem 0.92rem;
}

.btn-sm {
    min-height: 2rem;
    padding: 0.42rem 0.72rem;
    font-size: 0.78rem;
}

.btn--primary,
.btn-primary {
    background: var(--esq-royal);
    border-color: var(--esq-royal);
    color: var(--white);
}

.btn--primary:hover,
.btn-primary:hover {
    background: #18306e;
    border-color: #18306e;
    color: var(--white);
}

.btn--secondary,
.btn-secondary {
    background: #f8fafc;
    border-color: #d8e1ea;
    color: #17324d;
}

.btn--secondary:hover,
.btn-secondary:hover {
    background: #eef3f8;
    border-color: #c8d3df;
    color: #12283d;
}

.btn--ghost,
.btn-outline-secondary {
    background: var(--white);
    border-color: #d0d7e2;
    color: #29415b;
}

.btn--ghost:hover,
.btn-outline-secondary:hover {
    background: #f8fafc;
    border-color: #b9c5d3;
    color: #17324d;
}

.btn-outline-primary {
    background: #f4f7fc;
    border-color: #cbd7e7;
    color: #22446e;
}

.btn-outline-primary:hover {
    background: #edf2f8;
    border-color: #b8c8dd;
    color: #17324d;
}

.btn-outline-danger,
.btn--danger {
    background: #fff8f7;
    border-color: #ebc9c5;
    color: var(--danger);
}

.btn-outline-danger:hover,
.btn--danger:hover {
    background: #fef1ef;
    border-color: #dfb0aa;
    color: #8f2118;
}

.btn-icon,
.btn-link.btn-icon,
.table-action.btn-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.action-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.action-icon svg {
    width: 1.1rem;
    height: 1.1rem;
}

.table-action .action-icon svg {
    width: 1rem;
    height: 1rem;
}

.btn-sm .action-icon svg {
    width: 0.98rem;
    height: 0.98rem;
}

.form-shell input,
.form-shell select,
.form-shell textarea {
    font-size: 0.98rem;
    line-height: 1.5;
}

.form-shell .check-line,
.form-shell .service-fieldset {
    max-width: 48rem;
}

table {
    width: 100%;
    border-collapse: collapse;
    border-radius: var(--radius-md);
    overflow: hidden;
    background: var(--white);
    box-shadow: var(--shadow-card);
}

.table-compact th,
.table-compact td {
    padding: 0.75rem 0.9rem;
}

.table-compact th {
    background: #f6f8fc;
    color: #6b7280;
    font-size: 0.72rem;
    letter-spacing: 0.09em;
}

.table-compact tbody tr:hover {
    background: #f8fbff;
}

.table-responsive-cards {
    table-layout: fixed;
}

.table-responsive-cards th,
.table-responsive-cards td {
    overflow-wrap: anywhere;
}

.table-identity,
.table-meta-stack {
    display: grid;
    gap: 0.22rem;
    min-width: 0;
}

.table-identity strong,
.table-meta-stack strong {
    color: var(--esq-midnight);
    line-height: 1.35;
}

.table-identity span,
.table-meta-stack span:not(.status-pill),
.table-meta-stack small {
    color: var(--text-soft);
    font-size: 0.8rem;
    line-height: 1.4;
}

.table-identity code {
    width: fit-content;
    max-width: 100%;
    overflow-wrap: anywhere;
}

.table-copy-cell {
    max-width: 28rem;
    white-space: normal;
    line-height: 1.5;
}

.feedback-score {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: baseline;
    gap: 0.08rem 0.4rem;
}

.feedback-score strong {
    color: var(--esq-midnight);
    font-size: 1rem;
}

.feedback-score span {
    color: var(--text-soft);
    font-size: 0.72rem;
}

@media (max-width: 900px) {
    .table-responsive-cards,
    .table-responsive-cards tbody,
    .table-responsive-cards tr,
    .table-responsive-cards td {
        display: block;
        width: 100%;
    }

    .table-responsive-cards {
        border-collapse: separate;
        border-spacing: 0 0.75rem;
        background: transparent;
        box-shadow: none;
    }

    .table-responsive-cards thead {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }

    .table-responsive-cards tbody tr {
        margin-bottom: 0.8rem;
        overflow: hidden;
        border: 1px solid #dce4ee;
        border-radius: 0.8rem;
        background: #fff;
        box-shadow: 0 7px 18px rgba(15, 39, 68, 0.05);
    }

    .table-responsive-cards tbody td {
        display: grid;
        grid-template-columns: minmax(7.5rem, 34%) minmax(0, 1fr);
        gap: 0.75rem;
        align-items: start;
        padding: 0.7rem 0.8rem;
        border-bottom: 1px solid #edf0f4;
        text-align: left;
    }

    .table-responsive-cards tbody td::before {
        content: attr(data-label);
        color: #738297;
        font-size: 0.68rem;
        font-weight: 750;
        letter-spacing: 0.06em;
        line-height: 1.4;
        text-transform: uppercase;
    }

    .table-responsive-cards tbody td:last-child {
        border-bottom: 0;
    }

    .table-responsive-cards tbody td[colspan] {
        display: block;
    }

    .table-responsive-cards tbody td[colspan]::before {
        content: none;
    }

    .table-responsive-cards .table-action-cluster {
        justify-content: flex-start;
    }
}

@media (max-width: 560px) {
    .table-responsive-cards tbody td {
        grid-template-columns: 1fr;
        gap: 0.35rem;
    }
}

.template-cell {
    display: grid;
    gap: 0.25rem;
}

.template-cell strong {
    color: var(--esq-midnight);
    font-size: 0.96rem;
    line-height: 1.35;
}

.template-cell code {
    font-size: 0.78rem;
    color: #6b7280;
    background: #f4f7fb;
    padding: 0.18rem 0.4rem;
    border-radius: 0.45rem;
    width: fit-content;
}

.inline-link {
    color: var(--esq-royal);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.16em;
    word-break: break-all;
}

.inline-link:hover {
    color: var(--esq-midnight);
    text-decoration: underline;
}

th,
td {
    padding: var(--space-3);
    border-bottom: 1px solid #edf0f5;
    text-align: left;
}

th {
    background: #fafbfd;
    color: var(--muted);
    font-size: var(--text-xs);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

tbody tr:hover {
    background: #fafcff;
}

.landing-hero {
    margin-bottom: var(--space-8);
    padding: var(--space-8);
    border-radius: 2rem;
    background:
        linear-gradient(120deg, rgba(10, 37, 64, 0.92) 0%, rgba(30, 58, 138, 0.9) 65%, rgba(30, 58, 138, 0.85) 100%),
        radial-gradient(circle at 85% 0%, rgba(212, 175, 55, 0.26) 0%, rgba(212, 175, 55, 0) 55%);
    color: var(--white);
    box-shadow: var(--shadow-soft);
}

.landing-hero .btn-link {
    background: #ffffff;
    border-color: #ffffff;
    color: #0d2f78;
    box-shadow: 0 10px 24px rgba(8, 23, 51, 0.3);
}

.landing-hero .btn-link:hover {
    background: #f3f6ff;
    border-color: #f3f6ff;
    color: #08204d;
}

.landing-hero .btn-link--subtle {
    background: transparent;
    border-color: rgba(255, 255, 255, 0.7);
    color: #ffffff;
}

.landing-hero .btn-link--subtle:hover {
    background: rgba(255, 255, 255, 0.14);
    border-color: #ffffff;
    color: #ffffff;
}

.landing-hero h1,
.landing-hero p {
    color: var(--white);
}

.landing-eyebrow {
    margin-bottom: var(--space-3);
    font-size: var(--text-xs);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #8b6b2d;
}

.landing-lead {
    font-size: var(--text-lg);
    line-height: 1.8;
    max-width: 65ch;
}

.page-hero > h1 {
    font-size: clamp(2.1rem, 4vw, 2.95rem);
    line-height: 1.06;
    letter-spacing: -0.03em;
    max-width: 14ch;
}

.page-hero .landing-lead {
    font-size: 1.02rem;
    line-height: 1.85;
    max-width: 60ch;
}

.landing-cta {
    margin-top: var(--space-6);
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-3);
}

.btn-link {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    border-radius: 0.65rem;
    border: 1px solid var(--esq-royal);
    background: #163b8f;
    color: var(--white);
    padding: 0.56rem 0.92rem;
    font-size: 0.84rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: transform 240ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 240ms, background-color 240ms, border-color 240ms, color 240ms;
}

.btn-link:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 24px rgba(30, 58, 138, 0.22);
    background: #0a2540;
    border-color: #0a2540;
    color: var(--white);
}

.btn-link--subtle {
    background: var(--white);
    color: var(--esq-midnight);
    border-color: rgba(197, 160, 89, 0.68);
}

.btn-link--subtle:hover {
    background: var(--gold-soft);
    border-color: var(--gold);
    color: var(--esq-midnight);
}

.trust-strip {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: var(--space-5);
    margin: var(--space-7) 0 var(--space-9);
}

.trust-item {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 3.3rem;
    border-radius: var(--radius-pill);
    background: linear-gradient(180deg, #f7fbff 0%, #edf4ff 100%);
    border: 1px solid #b9cce6;
    padding: 1.05rem 1.35rem;
    text-align: center;
    color: #132a46;
    font-size: 0.86rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    box-shadow: 0 12px 28px rgba(10, 37, 64, 0.1);
}

.landing-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-7);
    margin-bottom: var(--space-8);
}

.admin-main .landing-grid--modules {
    grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
    align-items: stretch;
}

.admin-main .landing-grid--modules > .info-card:last-child {
    min-width: 0;
}

.admin-main .landing-grid--modules > .info-card table {
    width: 100%;
    table-layout: auto;
}

.admin-main .landing-grid--modules > .info-card td:first-child,
.admin-main .landing-grid--modules > .info-card th:first-child {
    width: 34%;
}

.admin-main .landing-grid--modules > .info-card td:nth-child(2),
.admin-main .landing-grid--modules > .info-card th:nth-child(2) {
    width: 42%;
}

.admin-main .landing-grid--modules > .info-card td:nth-child(3),
.admin-main .landing-grid--modules > .info-card th:nth-child(3) {
    width: 24%;
}

.values-grid {
    align-items: stretch;
}

.values-grid .info-card,
.pillar-grid .info-card {
    display: flex;
    flex-direction: column;
    min-height: 240px;
    justify-content: flex-start;
}

.card-eyebrow {
    margin-bottom: var(--space-2);
    color: #556c88;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    line-height: 1.2;
}

.values-grid .info-card h2,
.pillar-grid .info-card h2 {
    font-size: clamp(1.9rem, 2.2vw, 2.25rem);
    margin-bottom: var(--space-3);
    line-height: 1.08;
}

.values-grid .info-card p,
.pillar-grid .info-card p {
    max-width: none;
    margin-bottom: 0;
    font-size: 0.98rem;
    line-height: 1.75;
}

.trust-strip + .landing-grid {
    margin-top: var(--space-7);
}

.info-card + .pillar-grid {
    margin-top: var(--space-7);
}

.pillar-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--space-5);
    align-items: stretch;
}

.pillar-grid + .milad-highlight {
    margin-top: var(--space-8);
}

.info-card,
.milad-highlight,
.event-card,
.empty-state,
.form-shell,
.page-hero {
    border-radius: var(--radius-lg);
    background: linear-gradient(180deg, #fff 0%, #fdfefe 100%);
    box-shadow: var(--shadow-card);
    border: 1px solid #dfe7f1;
    padding: var(--space-7);
}

.values-grid .info-card:nth-child(1) {
    background: linear-gradient(180deg, #f4f8ff 0%, #e8f0ff 100%);
    border-color: #c5d7f2;
}

.values-grid .info-card:nth-child(2) {
    background: linear-gradient(180deg, #f8f5ff 0%, #eee7ff 100%);
    border-color: #d6c9f2;
}

.values-grid .info-card:nth-child(3) {
    background: linear-gradient(180deg, #f4fbfa 0%, #e7f5f2 100%);
    border-color: #c3e3db;
}

.pillar-grid .info-card:nth-child(1) {
    background: linear-gradient(180deg, #f5f9ff 0%, #e9f1ff 100%);
    border-color: #c9d9f3;
}

.pillar-grid .info-card:nth-child(2) {
    background: linear-gradient(180deg, #f7f6ff 0%, #ece9ff 100%);
    border-color: #d6d0f2;
}

.pillar-grid .info-card:nth-child(3) {
    background: linear-gradient(180deg, #f4fbfa 0%, #e8f5f2 100%);
    border-color: #c4e1da;
}

.pillar-grid .info-card:nth-child(4) {
    background: linear-gradient(180deg, #fffaf2 0%, #f6eddc 100%);
    border-color: #e7d5b1;
}

.info-card h2,
.milad-highlight h2 {
    margin-bottom: var(--space-3);
    font-size: clamp(1.55rem, 2.15vw, 2rem);
}

.info-card p,
.milad-highlight p {
    line-height: 1.85;
    color: #314864;
}

.page-hero--compact {
    padding: var(--space-6);
}

.section-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: var(--space-4);
    margin-bottom: var(--space-5);
}

.event-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-5);
}

.event-status {
    display: inline-block;
    margin-bottom: var(--space-3);
    padding: 0.35rem 0.7rem;
    border-radius: var(--radius-pill);
    border: 1px solid rgba(197, 160, 89, 0.35);
    background: var(--gold-soft);
    color: #694d18;
    font-size: var(--text-xs);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.final-cta {
    margin-top: var(--space-8);
    padding: var(--space-8);
    border-radius: 2rem;
    background: linear-gradient(130deg, #0a2540 0%, #1e3a8a 70%, #2445a8 100%);
    box-shadow: var(--shadow-soft);
}

.final-cta h2,
.final-cta p {
    color: var(--white);
}

.final-cta p {
    opacity: 0.9;
}

.empty-state {
    text-align: center;
    border-style: dashed;
}

.milad-highlight {
    margin-top: var(--space-7);
}

.alert {
    display: block;
    width: 100%;
    box-sizing: border-box;
    border-radius: var(--radius-md);
    border: 1px solid var(--line);
    background: var(--white);
    padding: var(--space-4) var(--space-5);
    margin-bottom: var(--space-5);
    font-size: var(--text-sm);
}

.alert--error {
    border-color: #f8d6d2;
    background: #fff4f2;
    color: var(--danger);
}

.alert--success {
    border-color: #cfead9;
    background: #eef9f2;
    color: var(--success);
}

.alert--info {
    border-color: #d9e6f2;
    background: #f3f8fc;
    color: #294766;
}

.form-stack {
    display: grid;
    gap: var(--space-4);
    justify-items: start;
}

.date-grid {
    width: 100%;
    display: grid;
    gap: var(--space-4);
}

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

.date-grid .field-full {
    max-width: none;
}

.date-grid .field-full input {
    max-width: 100%;
}

.date-panel {
    width: 100%;
    border-radius: var(--radius-lg);
    padding: var(--space-4);
    margin-bottom: var(--space-4);
    border: 1px solid rgba(10, 37, 64, 0.08);
    box-shadow: 0 14px 34px rgba(10, 37, 64, 0.08);
}

.date-panel--publish {
    background: linear-gradient(180deg, #f5f9ff 0%, #ebf2ff 100%);
    border-color: rgba(30, 58, 138, 0.12);
}

.date-panel--coach {
    background: linear-gradient(180deg, #f8f4ff 0%, #efe7ff 100%);
    border-color: rgba(124, 58, 237, 0.12);
}

.date-panel--event {
    background: linear-gradient(180deg, #f4fbfa 0%, #e7f5f1 100%);
    border-color: rgba(16, 185, 129, 0.12);
}

.date-panel--klien {
    background: linear-gradient(180deg, #fffaf2 0%, #f6ecd8 100%);
    border-color: rgba(197, 160, 89, 0.16);
}

.date-panel label {
    margin-bottom: 0;
}

.date-panel input[type="date"] {
    max-width: 18rem;
    width: 100%;
}

.field-full {
    width: 100%;
}

.field-full input,
.field-full textarea,
.field-full select {
    width: 100%;
    max-width: 100%;
}

.wysiwyg-shell {
    width: 100%;
    max-width: 48rem;
    border: 1px solid #d9e2ee;
    border-radius: var(--radius-md);
    background: var(--white);
    overflow: hidden;
    box-shadow: 0 12px 28px rgba(10, 37, 64, 0.06);
}

.wysiwyg-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: 0.75rem;
    background: linear-gradient(180deg, #f8fbff 0%, #eef4fc 100%);
    border-bottom: 1px solid #d9e2ee;
}

.wysiwyg-toolbar button {
    padding: 0.55rem 0.85rem;
    border-radius: 999px;
    border: 1px solid #c8d5e6;
    background: #ffffff;
    color: #20324f;
    font-size: 0.72rem;
    box-shadow: none;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.wysiwyg-toolbar button:hover {
    background: #edf4ff;
    border-color: #9fb4d5;
    color: #0d2f78;
    transform: none;
    box-shadow: none;
}

.wysiwyg-editor {
    min-height: 16rem;
    padding: 1rem 1.05rem;
    outline: none;
    line-height: 1.75;
    color: var(--ink);
}

.wysiwyg-editor:empty::before {
    content: "Write event description here...";
    color: #98a2b3;
}

.wysiwyg-output p:last-child {
    margin-bottom: 0;
}

.wysiwyg-output ul,
.wysiwyg-output ol {
    padding-left: 1.25rem;
    margin-bottom: 0;
}

.quill-shell {
    width: 100%;
    max-width: none;
    border: 1px solid #d9e2ee;
    border-radius: var(--radius-md);
    background: var(--white);
    overflow: hidden;
    box-shadow: 0 12px 28px rgba(10, 37, 64, 0.06);
}

.quill-shell .ql-toolbar.ql-snow {
    border: 0;
    border-bottom: 1px solid #d9e2ee;
    background: linear-gradient(180deg, #f8fbff 0%, #eef4fc 100%);
}

.quill-shell .ql-container.ql-snow {
    border: 0;
    min-height: 16rem;
    font-family: var(--font-sans);
    color: var(--ink);
    width: 100% !important;
    max-width: 100% !important;
    display: block;
}

.quill-shell .ql-editor {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 16rem;
    box-sizing: border-box;
    padding-right: 1.25rem;
}

.quill-shell .ql-editor p,
.quill-shell .ql-editor ol,
.quill-shell .ql-editor ul,
.quill-shell .ql-editor li,
.quill-shell .ql-editor blockquote,
.quill-shell .ql-editor strong,
.quill-shell .ql-editor em,
.quill-shell .ql-editor u {
    max-width: none !important;
    width: auto !important;
}

.quill-editor--compact .ql-editor,
.quill-shell .quill-editor--compact + .ql-container .ql-editor {
    min-height: 9rem;
}

.event-meta-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-4);
    margin-top: var(--space-5);
    margin-bottom: var(--space-4);
}

.event-flow {
    display: grid;
    gap: var(--space-3);
    margin-top: var(--space-5);
    margin-bottom: var(--space-4);
}

.event-flow__item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-2) var(--space-4);
    padding: 0.95rem 1.1rem;
    border-radius: 1.1rem;
    border: 1px solid rgba(10, 37, 64, 0.08);
    box-shadow: 0 14px 30px rgba(10, 37, 64, 0.08);
}

.event-flow__item span {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #6b7280;
}

.event-flow__item strong {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.98rem;
    font-weight: 700;
    color: var(--esq-midnight);
}

.event-flow__item small {
    color: #94a3b8;
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.event-flow__item--event {
    background: linear-gradient(180deg, #f4fbfa 0%, #e7f5f1 100%);
    border-color: rgba(16, 185, 129, 0.12);
}

.event-flow__item--klien {
    background: linear-gradient(180deg, #fffaf2 0%, #f6ecd8 100%);
    border-color: rgba(197, 160, 89, 0.16);
}

.event-meta-item {
    border-radius: var(--radius-md);
    border: 1px solid #d9e2ee;
    background: rgba(255, 255, 255, 0.7);
    padding: var(--space-4);
}

.event-meta-item span {
    display: block;
    margin-bottom: var(--space-1);
    color: var(--muted);
    font-size: var(--text-xs);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.event-meta-item strong {
    color: var(--esq-midnight);
    font-size: var(--text-sm);
}

.form-inline {
    display: grid;
    gap: var(--space-4);
    align-items: start;
}

.form-inline > * {
    min-width: 0;
}

.form-inline label {
    margin-bottom: 0;
}

.form-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: var(--space-3);
}

.form-shell .btn-link,
.form-shell button {
    width: fit-content;
}

.form-shell .form-actions .btn-link,
.form-shell .form-actions button {
    width: auto;
    min-height: 2.75rem;
}

.check-line {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: var(--space-3);
    margin-bottom: var(--space-2);
    font-weight: 500;
    line-height: 1.5;
}

.check-line--link {
    flex-wrap: nowrap;
    align-items: center;
}

.check-line__main {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    min-width: 0;
}

.check-line__link {
    margin-left: auto;
    color: var(--esq-royal);
    font-size: 0.86rem;
    font-weight: 700;
    text-decoration: none;
}

.check-line__link:hover {
    text-decoration: underline;
}

.form-note {
    margin-bottom: var(--space-4);
    color: var(--muted);
    font-size: 0.98rem;
    line-height: 1.75;
}

.form-heading {
    margin-bottom: var(--space-5);
}

.form-heading h2 {
    margin-bottom: var(--space-2);
    font-size: clamp(1.6rem, 2.4vw, 2.05rem);
    line-height: 1.12;
}

.register-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-4);
    margin-top: var(--space-5);
    margin-bottom: var(--space-5);
}

.register-summary--compact {
    margin-top: var(--space-4);
}

.register-summary__panel {
    border-radius: 1rem;
    border: 1px solid #d9e2ee;
    padding: var(--space-4);
    box-shadow: 0 10px 24px rgba(10, 37, 64, 0.06);
}

.register-summary__panel span {
    display: block;
    margin-bottom: var(--space-2);
    color: var(--muted);
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.register-summary__panel strong {
    display: block;
    color: var(--esq-midnight);
    font-size: 1rem;
    line-height: 1.5;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.register-summary__panel--scope strong {
    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1.58;
}

.register-summary__panel p {
    margin-top: var(--space-2);
    margin-bottom: 0;
    font-size: 0.92rem;
    line-height: 1.7;
}

.register-summary__panel--invite {
    background: linear-gradient(180deg, #f4fbff 0%, #e9f3ff 100%);
    border-color: rgba(30, 58, 138, 0.14);
}

.register-summary__panel--scope {
    background: linear-gradient(180deg, #fffaf2 0%, #f6ecd8 100%);
    border-color: rgba(197, 160, 89, 0.16);
}

.register-footnote {
    margin-bottom: var(--space-4);
    padding: var(--space-4);
    border-radius: 1rem;
    background: #fbfcfe;
    border: 1px solid #d9e2ee;
    color: #304764;
}

.register-footnote p {
    margin-bottom: var(--space-2);
    font-size: 0.94rem;
    line-height: 1.75;
}

.register-footnote p:last-child {
    margin-bottom: 0;
}

.check-line input[type="checkbox"] {
    width: auto;
    margin: 0;
}

.check-line--service {
    justify-content: flex-start;
}

.service-fieldset {
    border: 1px solid #d9e2ee;
    border-radius: var(--radius-md);
    padding: var(--space-4);
    margin: 0;
    background: #fbfcfe;
}

.service-fieldset legend {
    padding: 0 var(--space-2);
    color: var(--esq-midnight);
    font-size: 0.95rem;
    font-weight: 700;
}

.service-fieldset .check-line:last-child {
    margin-bottom: 0;
}

.field-help {
    margin-top: calc(var(--space-1) * -1);
    color: var(--muted);
    font-size: var(--text-xs);
    line-height: 1.55;
}

.form-stack > label:not(.check-line):not(.service-fieldset),
.form-stack > .field-full,
.form-stack > fieldset,
.form-shell > label:not(.check-line):not(.service-fieldset) {
    display: grid;
    gap: 0.45rem;
    margin-bottom: 0;
    align-items: start;
}

.form-stack > label:not(.check-line):not(.service-fieldset) > input,
.form-stack > label:not(.check-line):not(.service-fieldset) > select,
.form-stack > label:not(.check-line):not(.service-fieldset) > textarea,
.form-shell > label:not(.check-line):not(.service-fieldset) > input,
.form-shell > label:not(.check-line):not(.service-fieldset) > select,
.form-shell > label:not(.check-line):not(.service-fieldset) > textarea {
      margin-top: 0;
}

.form-grid {
      display: grid;
      gap: var(--space-4);
}

.form-grid label {
      display: grid;
      gap: 0.45rem;
}

.form-grid--compact {
      grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) auto;
      align-items: end;
}

.form-grid--compact .form-actions {
      display: flex;
      align-items: center;
      gap: var(--space-3);
      flex-wrap: wrap;
}

.link-list {
    margin: 0;
    padding-left: 1.1rem;
}

.link-list li {
    margin-bottom: var(--space-2);
}

.status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.24rem;
    margin-top: var(--space-2);
    border-radius: var(--radius-pill);
    background: rgba(43, 63, 92, 0.08);
    padding: 0.22rem 0.56rem;
    color: rgba(43, 63, 92, 0.82);
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.045em;
    font-weight: 650;
    line-height: 1.15;
}

.status-pill--gold {
    background: var(--gold-soft);
    border: 1px solid rgba(197, 160, 89, 0.35);
}

.status-pill--success {
    background: rgba(71, 122, 104, 0.14);
    color: #2f5b4d;
    border: 1px solid rgba(71, 122, 104, 0.24);
}

.status-pill--warning {
    background: rgba(197, 160, 89, 0.16);
    color: #87642d;
    border: 1px solid rgba(197, 160, 89, 0.26);
}

.status-pill--danger {
    background: rgba(174, 84, 84, 0.14);
    color: #8d3b3b;
    border: 1px solid rgba(174, 84, 84, 0.22);
}

.status-pill--info {
    background: #f0f5fb;
    color: #24588f;
    border: 1px solid #c3d7ee;
}

.status-pill--muted,
.status-pill--neutral {
    background: rgba(43, 63, 92, 0.08);
    color: rgba(43, 63, 92, 0.8);
    border: 1px solid rgba(43, 63, 92, 0.16);
}

.certificate-policy-grid,
.certificate-summary-grid {
    display: grid;
    gap: var(--space-4);
    margin: 0 0 var(--space-6);
}

.certificate-page-note {
    margin-bottom: var(--space-6);
    padding: 1.1rem 1.2rem;
}

.certificate-disclosure {
    overflow: hidden;
    transition: border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}

.certificate-disclosure__summary {
    list-style: none;
    cursor: pointer;
    position: relative;
    padding-right: 2.25rem;
}

.certificate-disclosure__summary::-webkit-details-marker {
    display: none;
}

.certificate-disclosure__summary::marker {
    content: "";
}

.certificate-disclosure__hint {
    display: inline-flex;
    align-items: center;
    padding: 0.24rem 0.58rem;
    border-radius: var(--radius-pill);
    background: rgba(10, 37, 64, 0.06);
    color: var(--esq-midnight);
    font-size: 0.7rem;
    font-weight: 700;
    white-space: nowrap;
}

.certificate-disclosure__summary::after {
    content: "";
    position: absolute;
    top: 0.2rem;
    right: 0;
    width: 0.55rem;
    height: 0.55rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-right: 2px solid var(--esq-midnight);
    border-bottom: 2px solid var(--esq-midnight);
    border-radius: 0;
    background: transparent;
    line-height: 1;
    transform: rotate(45deg);
    transition: transform 180ms ease, border-color 180ms ease;
}

.certificate-disclosure[open] > .certificate-disclosure__summary::after {
    transform: rotate(225deg);
    border-color: var(--esq-royal);
}

.certificate-disclosure__body {
    padding-top: var(--space-3);
    border-top: 1px solid rgba(43, 63, 92, 0.08);
}

.certificate-page-note__grid {
    display: grid;
    grid-template-columns: minmax(0, 22rem) minmax(0, 1fr);
    gap: var(--space-5);
    align-items: start;
}

.certificate-page-note__body {
    display: grid;
    gap: var(--space-3);
}

.certificate-page-note__body p {
    margin: 0;
}

.certificate-policy-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

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

.certificate-policy-card,
.certificate-summary-card {
    border: 1px solid rgba(43, 63, 92, 0.08);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 253, 0.96));
}

.certificate-summary-card,
.certificate-upload-card,
.certificate-page-note,
.certificate-form-note {
    box-shadow: 0 10px 24px rgba(10, 37, 64, 0.05);
}

.certificate-summary-card:hover,
.certificate-upload-card:hover,
.certificate-page-note:hover,
.certificate-form-note:hover {
    border-color: rgba(30, 58, 138, 0.16);
    box-shadow: 0 14px 28px rgba(10, 37, 64, 0.08);
}

.certificate-policy-card h2,
.certificate-summary-card h3 {
    margin: 0 0 var(--space-2);
}

.certificate-policy-card p:last-child,
.certificate-summary-card__lead {
    margin: 0;
}

.certificate-section-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-4);
    margin-bottom: var(--space-4);
}

.certificate-section-head .field-help {
    max-width: 34rem;
    margin: 0;
}

.certificate-summary-card__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-3);
    margin-bottom: var(--space-3);
}

.certificate-summary-meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-3);
    margin: var(--space-4) 0 0;
}

.certificate-summary-meta dt {
    margin-bottom: 0.3rem;
    color: var(--text-muted);
    font-size: var(--text-xs);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.certificate-summary-meta dd {
    margin: 0;
    color: var(--esq-midnight);
    font-weight: 700;
}

.certificate-summary-card__actions {
    margin-top: var(--space-4);
}

.certificate-summary-card__summary {
    display: grid;
    gap: 0.7rem;
}

.certificate-summary-card--active {
    border-left: 4px solid #1f6a46;
    background: linear-gradient(180deg, rgba(246, 252, 248, 0.98), rgba(255, 255, 255, 0.98));
}

.certificate-summary-card--pending_review {
    border-left: 4px solid #b54708;
    background: linear-gradient(180deg, rgba(255, 250, 243, 0.98), rgba(255, 255, 255, 0.98));
}

.certificate-summary-card--expired {
    border-left: 4px solid #b42318;
    background: linear-gradient(180deg, rgba(255, 246, 245, 0.98), rgba(255, 255, 255, 0.98));
}

.certificate-summary-card--rejected,
.certificate-summary-card--not_uploaded {
    border-left: 4px solid #98a2b3;
}

.certificate-level-status-list {
    display: grid;
    gap: 0.65rem;
    margin-top: var(--space-3);
}

.certificate-level-status-item {
    padding: 0.72rem 0.8rem;
    border: 1px solid rgba(43, 63, 92, 0.08);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, 0.9);
}

.certificate-level-status-item--active {
    border-color: rgba(31, 106, 70, 0.18);
    background: rgba(241, 250, 245, 0.92);
}

.certificate-level-status-item--pending_review {
    border-color: rgba(181, 71, 8, 0.18);
    background: rgba(255, 248, 238, 0.94);
}

.certificate-level-status-item--expired {
    border-color: rgba(180, 35, 24, 0.16);
    background: rgba(255, 244, 243, 0.94);
}

.certificate-level-status-item--rejected,
.certificate-level-status-item--not_uploaded {
    background: rgba(249, 250, 251, 0.96);
}

.certificate-level-status-item__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-3);
    margin-bottom: 0.45rem;
}

.certificate-level-status-item__top strong {
    color: var(--esq-midnight);
}

.certificate-level-status-item p {
    margin: 0;
    color: #44546a;
}

.certificate-level-status-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-3);
    margin: var(--space-3) 0 0;
}

.certificate-level-status-meta dt {
    margin-bottom: 0.2rem;
    color: var(--muted);
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.certificate-level-status-meta dd {
    margin: 0;
    color: var(--esq-midnight);
    font-weight: 700;
}

.certificate-dispatch-card {
    margin-bottom: var(--space-6);
}

.certificate-support-section {
    margin-top: var(--space-5);
}

.certificate-inline-note {
    margin: 0 0 var(--space-4);
    padding: 0.8rem 0.9rem;
    border: 1px solid rgba(22, 58, 143, 0.12);
    border-radius: var(--radius-md);
    background: rgba(22, 58, 143, 0.04);
}

.certificate-inline-note strong {
    display: block;
    margin-bottom: 0.3rem;
    color: var(--esq-midnight);
}

.certificate-inline-note p {
    margin: 0;
}

.certificate-review-list,
.certificate-history-list {
    display: grid;
    gap: var(--space-3);
}

.certificate-review-item,
.certificate-history-item {
    padding: 0.85rem 0.95rem;
    border: 1px solid rgba(43, 63, 92, 0.08);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, 0.92);
}

.certificate-review-item__top,
.certificate-history-item__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-3);
    margin-bottom: var(--space-3);
}

.certificate-review-item__top h3,
.certificate-history-item__top strong {
    margin: 0;
}

.certificate-history-item__top p,
.certificate-review-item__lead {
    margin: 0;
    color: #44546a;
}

.certificate-review-meta,
.certificate-history-meta {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--space-3);
    margin: 0;
}

.certificate-review-meta dt,
.certificate-history-meta dt {
    margin-bottom: 0.2rem;
    color: var(--muted);
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.certificate-review-meta dd,
.certificate-history-meta dd {
    margin: 0;
    color: var(--esq-midnight);
    font-weight: 700;
}

.certificate-review-actions,
.certificate-history-actions {
    margin-top: var(--space-3);
}

.certificate-dispatch-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-4);
}

.certificate-dispatch-rule {
    padding: var(--space-4);
    border: 1px solid rgba(43, 63, 92, 0.08);
    border-radius: var(--radius-md);
    background: linear-gradient(180deg, rgba(246, 249, 253, 0.98), rgba(255, 255, 255, 0.98));
}

.certificate-dispatch-rule strong {
    display: block;
    margin-bottom: var(--space-2);
    color: var(--esq-midnight);
}

.certificate-dispatch-rule p,
.certificate-dispatch-note,
.certificate-renewal-note p {
    margin: 0;
}

.certificate-dispatch-note {
    margin-top: var(--space-3);
    color: #163a8f;
    font-weight: 700;
    font-size: 0.85rem;
}

.certificate-renewal-note {
    margin-top: var(--space-4);
    padding: 0.78rem 0.88rem;
    border: 1px solid rgba(22, 58, 143, 0.12);
    border-radius: var(--radius-md);
    background: rgba(22, 58, 143, 0.04);
}

.certificate-renewal-note strong {
    display: block;
    margin-bottom: 0.35rem;
    color: var(--esq-midnight);
}

.certificate-upload-card {
    max-width: 58rem;
    margin: 0 0 var(--space-5);
    padding: 1rem 1.05rem;
    border: 1px solid rgba(43, 63, 92, 0.08);
    border-radius: var(--radius-lg);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(246, 249, 253, 0.98));
}

.certificate-upload-card__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-3);
    margin-bottom: var(--space-3);
}

.certificate-upload-card__head h3 {
    margin: 0;
}

.certificate-upload-card__lead {
    margin: 0 0 var(--space-3);
    color: var(--text-muted);
}

.certificate-upload-card__summary {
    display: grid;
    gap: 0.55rem;
}

.certificate-form-note {
    margin: 0 0 var(--space-5);
}

.certificate-upload-card--active {
    border-left: 4px solid #1f6a46;
}

.certificate-upload-card--pending_review {
    border-left: 4px solid #b54708;
}

.certificate-upload-card--expired {
    border-left: 4px solid #b42318;
}

.certificate-upload-card--rejected,
.certificate-upload-card--not_uploaded {
    border-left: 4px solid #98a2b3;
}

.certificate-level-stack {
    margin-top: var(--space-3);
    display: grid;
    gap: 0.8rem;
}

.certificate-level-form {
    padding: 0.8rem 0.85rem;
    border: 1px solid rgba(43, 63, 92, 0.1);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, 0.88);
}

.certificate-level-form__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-3);
    margin-bottom: var(--space-2);
}

.certificate-level-form__head h4 {
    margin: 0;
    font-family: var(--font-serif);
    font-size: 1.1rem;
    color: var(--esq-midnight);
}

.certificate-level-form__label {
    display: inline-flex;
    align-items: center;
    padding: 0.3rem 0.65rem;
    border-radius: var(--radius-pill);
    background: rgba(30, 58, 138, 0.08);
    color: var(--esq-royal);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.certificate-level-form__lead {
    margin: 0 0 0.65rem;
    color: var(--text-muted);
}

.certificate-level-fields {
    margin-top: 0.65rem;
}

.certificate-level-fields .field-help {
    margin: 0;
}

.table-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.78rem;
    border: 1px solid #c8d8e8;
    background: #edf4fb;
    color: #174a73;
    font-weight: 700;
    text-decoration: none;
    border-radius: 0.58rem;
    padding: 0.22rem 0.58rem;
    font-size: 0.75rem;
    line-height: 1.15;
}

.table-action--icon {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.table-action--success,
.table-action.btn-icon--send {
    background: #eef8f2;
    border-color: #c8dfcf;
    color: #206646;
}

.table-action--success:hover,
.table-action--success:focus-visible,
.table-action.btn-icon--send:hover,
.table-action.btn-icon--send:focus-visible {
    background: #e5f2ea;
    border-color: #bbd5c1;
    color: #1a593d;
}

.table-action:hover {
    background: #e2edf8;
    border-color: #aec6dc;
    color: #123c60;
    text-decoration: none;
}

.text-center {
    text-align: center;
}

.is-hidden {
    display: none !important;
}

@media (max-width: 1080px) {
    .landing-grid {
        grid-template-columns: 1fr;
    }

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

    .values-grid .info-card h2,
    .pillar-grid .info-card h2 {
          font-size: clamp(1.35rem, 3.4vw, 1.8rem);
      }

    .values-grid .info-card,
    .pillar-grid .info-card {
          min-height: 0;
      }

    .role-assignment-summary,
    .role-assignment-layout,
    .role-assignment-filters {
          grid-template-columns: 1fr;
    }

    .role-assignment-form {
        position: static;
    }

    .certificate-policy-grid,
    .certificate-summary-grid,
    .certificate-summary-meta,
    .certificate-review-meta,
    .certificate-history-meta,
    .certificate-dispatch-grid,
    .certificate-page-note__grid {
        grid-template-columns: 1fr;
    }

    .certificate-section-head,
    .certificate-summary-card__top,
    .certificate-upload-card__head,
    .certificate-level-form__head,
    .certificate-level-status-item__top,
    .certificate-review-item__top,
    .certificate-history-item__top {
        flex-direction: column;
    }

    .event-list {
          grid-template-columns: 1fr;
      }

    .trust-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .section-head {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 768px) {
    .content {
        padding: var(--space-6) 0;
    }

    .member-role-summary,
    .role-assignment-editor__head,
    .role-assignment-list__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .member-role-summary .btn {
        width: 100%;
    }

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

    .app-header__inner {
        min-height: auto;
        padding: var(--space-3) 0;
        flex-direction: column;
        align-items: flex-start;
    }

    .top-nav {
        width: 100%;
        padding-top: var(--space-1);
        border-top: 1px solid var(--line);
    }

    .top-nav a {
        background: var(--mist);
    }
}

@media (max-width: 640px) {
    .content_i {
        width: 94vw;
        padding: var(--space-5);
    }

    h1 {
        font-size: clamp(1.6rem, 8vw, 2.2rem);
    }

    .landing-hero,
    .info-card,
    .milad-highlight,
    .event-card,
    .empty-state,
    .form-shell,
    .page-hero,
    .final-cta {
        padding: var(--space-5);
    }

    .trust-strip {
        grid-template-columns: 1fr;
    }

    .event-meta-grid {
        grid-template-columns: 1fr;
    }

    .pillar-grid {
        grid-template-columns: 1fr;
    }

    .date-grid--2 {
        grid-template-columns: 1fr;
    }

    table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }

    input,
    select,
    textarea {
        max-width: 100%;
    }
}

/* Tabler-compatible local fallback for admin pages when CDN is unavailable */
.page-wrapper {
    width: 100%;
}

.container-xl {
    width: min(1180px, 100%);
    margin: 0 auto;
}

.page-header {
    margin-bottom: var(--space-6);
}

.page-pretitle {
    margin-bottom: var(--space-1);
    color: var(--muted);
    font-size: var(--text-xs);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.page-title {
    margin: 0;
    font-family: var(--font-serif);
    font-size: var(--text-2xl);
    color: var(--esq-midnight);
    line-height: 1.2;
}

.page-body {
    padding-bottom: var(--space-4);
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin-right: 0;
    margin-left: 0;
}

.col,
.col-12,
.col-auto,
.col-lg-6,
.col-md-6 {
    position: relative;
    width: 100%;
    padding-right: 0.75rem;
    padding-left: 0.75rem;
    box-sizing: border-box;
}

.col-auto {
    width: auto;
}

.ms-auto {
    margin-left: auto;
}

.g-2 > * {
    margin-top: 0.5rem;
}

.g-3 > * {
    margin-top: 0.75rem;
}

.row-cards > [class*="col-"] {
    margin-bottom: 1rem;
}

.align-items-center {
    align-items: center;
}

.d-print-none {
    display: block;
}

.btn-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    border: 1px solid transparent;
    border-radius: 0.64rem;
    padding: 0.5rem 0.85rem;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    transition: transform 220ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 220ms, background-color 220ms;
}

.btn:hover {
    transform: translateY(-1px);
}

.btn-primary::before,
.btn-link::before {
    content: "→";
}

.btn-outline-primary::before,
.btn-link--subtle::before {
    content: "↗";
}

.btn-outline-secondary::before {
    content: "≡";
}

.btn-outline-danger::before,
.btn--danger::before,
.table-action--danger::before {
    content: "×";
}

.btn-primary {
    background: var(--esq-royal);
    border-color: var(--esq-royal);
    color: var(--white);
}

.btn-outline-secondary {
    border-color: #c9d2e1;
    color: #344054;
    background: var(--white);
}

.btn-outline-danger {
    border-color: #f0c4bf;
    color: #b42318;
    background: #fff7f6;
}

.btn-outline-primary {
    border-color: #b9c8ff;
    color: var(--esq-royal);
    background: #f7f9ff;
}

.btn-icon::before,
.btn-primary::before,
.btn-outline-primary::before,
.btn-outline-secondary::before,
.btn-outline-danger::before,
.btn-link::before,
.table-action::before {
    content: "";
    display: inline-flex;
    width: 1.05em;
    height: 1.05em;
    align-items: center;
    justify-content: center;
    margin-right: 0.45rem;
    line-height: 1;
    background-color: currentColor;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
}

.btn-icon--back::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M6.146 3.146a.5.5 0 0 1 .708.708L4.707 6H14.5a.5.5 0 0 1 0 1H4.707l2.147 2.146a.5.5 0 1 1-.708.708l-3-3a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M6.146 3.146a.5.5 0 0 1 .708.708L4.707 6H14.5a.5.5 0 0 1 0 1H4.707l2.147 2.146a.5.5 0 1 1-.708.708l-3-3a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E"); }
.btn-icon--login::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M6 2a1 1 0 0 0-1 1v2h1V3h6v10H6v-2H5v2a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z'/%3E%3Cpath fill='black' d='M.146 8.354a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L1.707 7.5H9.5a.5.5 0 0 1 0 1H1.707l2.147 2.146a.5.5 0 0 1-.708.708z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M6 2a1 1 0 0 0-1 1v2h1V3h6v10H6v-2H5v2a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z'/%3E%3Cpath fill='black' d='M.146 8.354a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L1.707 7.5H9.5a.5.5 0 0 1 0 1H1.707l2.147 2.146a.5.5 0 0 1-.708.708z'/%3E%3C/svg%3E"); }
.btn-icon--refresh::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 3a5 5 0 1 1-4.546 2.916.5.5 0 1 1 .908.418A4 4 0 1 0 8 4h2.5a.5.5 0 0 1 0 1H7.5a.5.5 0 0 1-.5-.5V1.5a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 3a5 5 0 1 1-4.546 2.916.5.5 0 1 1 .908.418A4 4 0 1 0 8 4h2.5a.5.5 0 0 1 0 1H7.5a.5.5 0 0 1-.5-.5V1.5a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E"); }
.btn-icon--search::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M11.742 10.344a6.5 6.5 0 1 0-1.398 1.398l3.85 3.85a1 1 0 0 0 1.414-1.414zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M11.742 10.344a6.5 6.5 0 1 0-1.398 1.398l3.85 3.85a1 1 0 0 0 1.414-1.414zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0'/%3E%3C/svg%3E"); }
.btn-icon--home::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 2 8h1v6a1 1 0 0 0 1 1h3V9h2v6h3a1 1 0 0 0 1-1V8h1a.5.5 0 0 0 .354-.854z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 2 8h1v6a1 1 0 0 0 1 1h3V9h2v6h3a1 1 0 0 0 1-1V8h1a.5.5 0 0 0 .354-.854z'/%3E%3C/svg%3E"); }
.btn-icon--logout::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M6 2a1 1 0 0 0-1 1v3h1V3h6v10H6v-3H5v3a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z'/%3E%3Cpath fill='black' d='M.146 8.354a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L1.707 7.5H9.5a.5.5 0 0 1 0 1H1.707l2.147 2.146a.5.5 0 0 1-.708.708z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M6 2a1 1 0 0 0-1 1v3h1V3h6v10H6v-3H5v3a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z'/%3E%3Cpath fill='black' d='M.146 8.354a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L1.707 7.5H9.5a.5.5 0 0 1 0 1H1.707l2.147 2.146a.5.5 0 0 1-.708.708z'/%3E%3C/svg%3E"); }
.btn-icon--dispatch::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle fill='black' cx='8' cy='3' r='2'/%3E%3Ccircle fill='black' cx='3' cy='13' r='2'/%3E%3Ccircle fill='black' cx='13' cy='13' r='2'/%3E%3Cpath stroke='black' stroke-width='1.4' fill='none' d='M8 5v3M8 8l-4 3M8 8l4 3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle fill='black' cx='8' cy='3' r='2'/%3E%3Ccircle fill='black' cx='3' cy='13' r='2'/%3E%3Ccircle fill='black' cx='13' cy='13' r='2'/%3E%3Cpath stroke='black' stroke-width='1.4' fill='none' d='M8 5v3M8 8l-4 3M8 8l4 3'/%3E%3C/svg%3E"); }
.btn-icon--create::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 1a.5.5 0 0 1 .5.5V7H14a.5.5 0 0 1 0 1H8.5v5.5a.5.5 0 0 1-1 0V8H2a.5.5 0 0 1 0-1h5.5V1.5A.5.5 0 0 1 8 1'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 1a.5.5 0 0 1 .5.5V7H14a.5.5 0 0 1 0 1H8.5v5.5a.5.5 0 0 1-1 0V8H2a.5.5 0 0 1 0-1h5.5V1.5A.5.5 0 0 1 8 1'/%3E%3C/svg%3E"); }
.btn-icon--save::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M2.5 1A1.5 1.5 0 0 0 1 2.5v11A1.5 1.5 0 0 0 2.5 15h11a1.5 1.5 0 0 0 1.5-1.5v-8.793a1.5 1.5 0 0 0-.44-1.06L12.354 1.44A1.5 1.5 0 0 0 11.293 1zM2 2.5a.5.5 0 0 1 .5-.5H4v3.5A1.5 1.5 0 0 0 5.5 7h5A1.5 1.5 0 0 0 12 5.5V2.707l2 2V13.5a.5.5 0 0 1-.5.5H13V10a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v4h-.5a.5.5 0 0 1-.5-.5zm8-1.5v4.5a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5V1zM4 14v-4h8v4z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M2.5 1A1.5 1.5 0 0 0 1 2.5v11A1.5 1.5 0 0 0 2.5 15h11a1.5 1.5 0 0 0 1.5-1.5v-8.793a1.5 1.5 0 0 0-.44-1.06L12.354 1.44A1.5 1.5 0 0 0 11.293 1zM2 2.5a.5.5 0 0 1 .5-.5H4v3.5A1.5 1.5 0 0 0 5.5 7h5A1.5 1.5 0 0 0 12 5.5V2.707l2 2V13.5a.5.5 0 0 1-.5.5H13V10a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v4h-.5a.5.5 0 0 1-.5-.5zm8-1.5v4.5a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5V1zM4 14v-4h8v4z'/%3E%3C/svg%3E"); }
.btn-icon--approve::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3-3a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3-3a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0'/%3E%3C/svg%3E"); }
.btn-icon--apply::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M10 1.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5V2h1.5A1.5 1.5 0 0 1 15 3.5v11a1.5 1.5 0 0 1-1.5 1.5h-11A1.5 1.5 0 0 1 1 14.5v-11A1.5 1.5 0 0 1 2.5 2H4v-.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5V2h4zM2.5 3a.5.5 0 0 0-.5.5v11a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5v-11a.5.5 0 0 0-.5-.5H12v.5a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5V3zm8.854 4.646a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7 11.293l3.646-3.647a.5.5 0 0 1 .708 0'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M10 1.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5V2h1.5A1.5 1.5 0 0 1 15 3.5v11a1.5 1.5 0 0 1-1.5 1.5h-11A1.5 1.5 0 0 1 1 14.5v-11A1.5 1.5 0 0 1 2.5 2H4v-.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5V2h4zM2.5 3a.5.5 0 0 0-.5.5v11a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5v-11a.5.5 0 0 0-.5-.5H12v.5a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5V3zm8.854 4.646a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7 11.293l3.646-3.647a.5.5 0 0 1 .708 0'/%3E%3C/svg%3E"); }
.btn-icon--export-csv::before,
.btn-icon--export-pdf::before,
.btn-icon--download::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M.5 9.9a.5.5 0 0 1 .5.5v2.6a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.6a.5.5 0 0 1 1 0V13a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.6a.5.5 0 0 1 .5-.5'/%3E%3Cpath fill='black' d='M7.646 10.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 9.293V1.5a.5.5 0 0 0-1 0v7.793L5.354 7.146a.5.5 0 1 0-.708.708z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M.5 9.9a.5.5 0 0 1 .5.5v2.6a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.6a.5.5 0 0 1 1 0V13a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.6a.5.5 0 0 1 .5-.5'/%3E%3Cpath fill='black' d='M7.646 10.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 9.293V1.5a.5.5 0 0 0-1 0v7.793L5.354 7.146a.5.5 0 1 0-.708.708z'/%3E%3C/svg%3E"); }
.btn-icon--archive::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M1 2.5A1.5 1.5 0 0 1 2.5 1h11A1.5 1.5 0 0 1 15 2.5v2a1.5 1.5 0 0 1-1 1.415V13.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 13.5V5.915A1.5 1.5 0 0 1 1 4.5zm1 0v2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5h-11a.5.5 0 0 0-.5.5M3 6v7.5a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5V6zm3 2h4v1H6z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M1 2.5A1.5 1.5 0 0 1 2.5 1h11A1.5 1.5 0 0 1 15 2.5v2a1.5 1.5 0 0 1-1 1.415V13.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 13.5V5.915A1.5 1.5 0 0 1 1 4.5zm1 0v2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5h-11a.5.5 0 0 0-.5.5M3 6v7.5a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5V6zm3 2h4v1H6z'/%3E%3C/svg%3E"); }
.btn-icon--view::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8M1.173 8a13 13 0 0 1 1.66-2.043C4.12 4.668 5.88 3.5 8 3.5s3.879 1.168 5.168 2.457A13 13 0 0 1 14.828 8c-.058.087-.122.183-.195.288-.335.48-.83 1.12-1.465 1.755C11.879 11.332 10.12 12.5 8 12.5s-3.879-1.168-5.168-2.457A13 13 0 0 1 1.173 8'/%3E%3Cpath fill='black' d='M8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8M1.173 8a13 13 0 0 1 1.66-2.043C4.12 4.668 5.88 3.5 8 3.5s3.879 1.168 5.168 2.457A13 13 0 0 1 14.828 8c-.058.087-.122.183-.195.288-.335.48-.83 1.12-1.465 1.755C11.879 11.332 10.12 12.5 8 12.5s-3.879-1.168-5.168-2.457A13 13 0 0 1 1.173 8'/%3E%3Cpath fill='black' d='M8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5'/%3E%3C/svg%3E"); }
.btn-icon--message::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6-.097 1.016-.417 2.13-.771 2.966-.079.186.074.394.273.362 1.453-.231 2.957-.83 3.847-1.4.527.094 1.077.144 1.643.144Z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6-.097 1.016-.417 2.13-.771 2.966-.079.186.074.394.273.362 1.453-.231 2.957-.83 3.847-1.4.527.094 1.077.144 1.643.144Z'/%3E%3C/svg%3E"); }
.btn-icon--import::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M7.646 1.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 2.707V10.5a.5.5 0 0 1-1 0V2.707L5.354 4.854a.5.5 0 1 1-.708-.708z'/%3E%3Cpath fill='black' d='M.5 11.9a.5.5 0 0 1 .5.5V15a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.6a.5.5 0 0 1 1 0V15a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.6a.5.5 0 0 1 .5-.5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M7.646 1.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 2.707V10.5a.5.5 0 0 1-1 0V2.707L5.354 4.854a.5.5 0 1 1-.708-.708z'/%3E%3Cpath fill='black' d='M.5 11.9a.5.5 0 0 1 .5.5V15a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.6a.5.5 0 0 1 1 0V15a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.6a.5.5 0 0 1 .5-.5'/%3E%3C/svg%3E"); }
.btn-icon--send::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M15.964.686a.5.5 0 0 0-.65-.65L.327 6.03a.5.5 0 0 0 .028.94l5.544 1.848 1.848 5.544a.5.5 0 0 0 .94.028zM6.636 8.07 13.58 1.126 7.12 8.536l-.35 4.2z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M15.964.686a.5.5 0 0 0-.65-.65L.327 6.03a.5.5 0 0 0 .028.94l5.544 1.848 1.848 5.544a.5.5 0 0 0 .94.028zM6.636 8.07 13.58 1.126 7.12 8.536l-.35 4.2z'/%3E%3C/svg%3E"); }
.btn-icon--filter::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M6 10.117V16l4-2v-3.883l5.447-6.723A1 1 0 0 0 14.67 2H1.33a1 1 0 0 0-.777 1.394z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M6 10.117V16l4-2v-3.883l5.447-6.723A1 1 0 0 0 14.67 2H1.33a1 1 0 0 0-.777 1.394z'/%3E%3C/svg%3E"); }
.btn-icon--delete::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E"); }
.btn-icon--reject::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm0 1A8 8 0 1 1 8 0a8 8 0 0 1 0 16Z'/%3E%3Cpath fill='black' d='M3.96 12.04 12.04 3.96l.7.7-8.08 8.08-.7-.7Z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm0 1A8 8 0 1 1 8 0a8 8 0 0 1 0 16Z'/%3E%3Cpath fill='black' d='M3.96 12.04 12.04 3.96l.7.7-8.08 8.08-.7-.7Z'/%3E%3C/svg%3E"); }
.btn-icon--edit::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M12.854.146a.5.5 0 0 1 .707 0l2.586 2.586a.5.5 0 0 1 0 .707l-9.5 9.5L4 13l.061-2.646zM3.5 13.5a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 0-1H4z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M12.854.146a.5.5 0 0 1 .707 0l2.586 2.586a.5.5 0 0 1 0 .707l-9.5 9.5L4 13l.061-2.646zM3.5 13.5a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 0-1H4z'/%3E%3C/svg%3E"); }
.btn-icon--warn::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M7.938 2.016a.13.13 0 0 1 .125 0l6.857 11.856c.05.087.01.195-.063.195H1.143c-.073 0-.113-.108-.063-.195zM8 5c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995A.905.905 0 0 1 8 5m.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M7.938 2.016a.13.13 0 0 1 .125 0l6.857 11.856c.05.087.01.195-.063.195H1.143c-.073 0-.113-.108-.063-.195zM8 5c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995A.905.905 0 0 1 8 5m.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2'/%3E%3C/svg%3E"); }
.btn-icon--password::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M3 8a5 5 0 1 1 9.584 2H16v2h-2v2h-2v2h-2.416A5 5 0 0 1 3 8m5-3a3 3 0 1 0 0 6 3 3 0 0 0 0-6'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M3 8a5 5 0 1 1 9.584 2H16v2h-2v2h-2v2h-2.416A5 5 0 0 1 3 8m5-3a3 3 0 1 0 0 6 3 3 0 0 0 0-6'/%3E%3C/svg%3E"); }
.btn-icon--unlock::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M11 1a3 3 0 0 0-3 3v1H6.5A1.5 1.5 0 0 0 5 6.5v6A1.5 1.5 0 0 0 6.5 14h6a1.5 1.5 0 0 0 1.5-1.5v-6A1.5 1.5 0 0 0 12.5 5H9V4a2 2 0 1 1 4 0 .5.5 0 0 0 1 0 3 3 0 0 0-3-3M6 6.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5h-6a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M11 1a3 3 0 0 0-3 3v1H6.5A1.5 1.5 0 0 0 5 6.5v6A1.5 1.5 0 0 0 6.5 14h6a1.5 1.5 0 0 0 1.5-1.5v-6A1.5 1.5 0 0 0 12.5 5H9V4a2 2 0 1 1 4 0 .5.5 0 0 0 1 0 3 3 0 0 0-3-3M6 6.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5h-6a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E"); }
.btn-icon--previous::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3E%3C/svg%3E"); }
.btn-icon--next::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E"); }
.btn-icon--award::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 1a.5.5 0 0 1 .447.276l1.378 2.79 3.08.448a.5.5 0 0 1 .277.853l-2.229 2.173.526 3.067a.5.5 0 0 1-.726.527L8 9.69l-2.753 1.444a.5.5 0 0 1-.726-.527l.526-3.067-2.23-2.173a.5.5 0 0 1 .278-.853l3.08-.448 1.378-2.79A.5.5 0 0 1 8 1m0 8.5'/%3E%3Cpath fill='black' d='M5 12.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m.5 2a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 1a.5.5 0 0 1 .447.276l1.378 2.79 3.08.448a.5.5 0 0 1 .277.853l-2.229 2.173.526 3.067a.5.5 0 0 1-.726.527L8 9.69l-2.753 1.444a.5.5 0 0 1-.726-.527l.526-3.067-2.23-2.173a.5.5 0 0 1 .278-.853l3.08-.448 1.378-2.79A.5.5 0 0 1 8 1m0 8.5'/%3E%3Cpath fill='black' d='M5 12.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m.5 2a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1z'/%3E%3C/svg%3E"); }
.btn-icon--up::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M1.646 11.354a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708 0'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M1.646 11.354a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708 0'/%3E%3C/svg%3E"); }
.btn-icon--down::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E"); }
.btn-icon--shield::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.78 11.78 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.55-.108.829-.24a7.45 7.45 0 0 0 1.048-.625 11.78 11.78 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.54 1.54 0 0 0-1.044-1.263 62.55 62.55 0 0 0-2.887-.87C9.843.266 8.69 0 8 0z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.78 11.78 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.55-.108.829-.24a7.45 7.45 0 0 0 1.048-.625 11.78 11.78 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.54 1.54 0 0 0-1.044-1.263 62.55 62.55 0 0 0-2.887-.87C9.843.266 8.69 0 8 0z'/%3E%3C/svg%3E"); }
.btn-icon--users::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7Zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm-5.216 6A2.24 2.24 0 0 1 5.5 13c0-1.355.68-2.75 1.936-3.72A6.325 6.325 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1h4.784ZM4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5Z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7Zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm-5.216 6A2.24 2.24 0 0 1 5.5 13c0-1.355.68-2.75 1.936-3.72A6.325 6.325 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1h4.784ZM4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5Z'/%3E%3C/svg%3E"); }
.btn-icon--mail::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414.05 3.555ZM0 4.697v7.104l5.803-3.558L0 4.697ZM6.761 8.83l-6.57 4.027A2 2 0 0 0 2 14h12a2 2 0 0 0 1.808-1.144l-6.57-4.027L8 9.586l-1.239-.757Zm3.436-.586L16 11.801V4.697l-5.803 3.546Z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414.05 3.555ZM0 4.697v7.104l5.803-3.558L0 4.697ZM6.761 8.83l-6.57 4.027A2 2 0 0 0 2 14h12a2 2 0 0 0 1.808-1.144l-6.57-4.027L8 9.586l-1.239-.757Zm3.436-.586L16 11.801V4.697l-5.803 3.546Z'/%3E%3C/svg%3E"); }
.btn-icon--undo::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 3a5 5 0 1 1-4.546 2.916.5.5 0 0 0-.908-.417A6 6 0 1 0 8 2v1z'/%3E%3Cpath fill='black' d='M7.854.146a.5.5 0 0 1 0 .708L5.707 3l2.147 2.146a.5.5 0 1 1-.708.708l-2.5-2.5a.5.5 0 0 1 0-.708l2.5-2.5a.5.5 0 0 1 .708 0z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8 3a5 5 0 1 1-4.546 2.916.5.5 0 0 0-.908-.417A6 6 0 1 0 8 2v1z'/%3E%3Cpath fill='black' d='M7.854.146a.5.5 0 0 1 0 .708L5.707 3l2.147 2.146a.5.5 0 1 1-.708.708l-2.5-2.5a.5.5 0 0 1 0-.708l2.5-2.5a.5.5 0 0 1 .708 0z'/%3E%3C/svg%3E"); }
.btn-icon--done::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z'/%3E%3C/svg%3E"); }
.btn-icon--timeline::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8.515.001a8.5 8.5 0 0 1 .484-.001zM8 1.5a6.5 6.5 0 1 0 1.156 12.901.5.5 0 0 1 .175.984A7.5 7.5 0 1 1 16 8a.5.5 0 0 1-1 0 7 7 0 0 0-7-6.5'/%3E%3Cpath fill='black' d='M7.5 5a.5.5 0 0 1 .5.5v2.79l2.346 1.43a.5.5 0 0 1-.52.855l-2.6-1.583A.5.5 0 0 1 7 8.5v-3a.5.5 0 0 1 .5-.5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='black' d='M8.515.001a8.5 8.5 0 0 1 .484-.001zM8 1.5a6.5 6.5 0 1 0 1.156 12.901.5.5 0 0 1 .175.984A7.5 7.5 0 1 1 16 8a.5.5 0 0 1-1 0 7 7 0 0 0-7-6.5'/%3E%3Cpath fill='black' d='M7.5 5a.5.5 0 0 1 .5.5v2.79l2.346 1.43a.5.5 0 0 1-.52.855l-2.6-1.583A.5.5 0 0 1 7 8.5v-3a.5.5 0 0 1 .5-.5'/%3E%3C/svg%3E"); }

/* Premium public landing page */
.app-header--landing {
    border-top: 4px solid #c5a059;
    border-bottom-color: rgba(197, 160, 89, 0.42);
    background: rgba(255, 253, 248, 0.98);
    backdrop-filter: blur(14px);
}

.app-header--landing .app-header__inner {
    min-height: 78px;
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
}

.app-header--landing .brand__media {
    width: clamp(150px, 15vw, 220px);
}

.top-nav--landing a {
    border-radius: 0;
    color: #193552;
    font-size: 0.98rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    padding: 0.44rem 0.86rem;
    text-transform: capitalize;
}

.top-nav--landing {
    gap: 0.8rem;
    padding-block: 0.12rem;
    align-items: center;
}

.top-nav--landing a:hover,
.top-nav--landing a:focus-visible {
    background: transparent;
    color: #8d6b28;
    box-shadow: inset 0 -2px 0 #c5a059;
}

.content--landing {
    padding: 0;
    background: #fff;
}

.content_i--landing {
    width: 100%;
    max-width: none;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: #f8f4eb;
    box-shadow: none;
}

.home-premium {
    --home-navy: #071d36;
    --home-navy-soft: #0d2b50;
    --home-gold: #c5a059;
    --home-gold-dark: #9a772f;
    --home-cream: #f8f4eb;
    --home-silver: #e8e4dc;
    --home-card-padding: 2rem;
    --home-framework-gap: clamp(5.5rem, 8vw, 7rem);
    --home-section-space: clamp(9rem, 12vw, 13rem);
    overflow: hidden;
    background: #fff;
    color: #14273e;
}

.home-premium * {
    box-sizing: border-box;
}

.home-hero {
    display: grid;
    width: 100vw;
    max-width: none;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    min-height: 560px;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    background:
        radial-gradient(circle at 22% 18%, rgba(28, 65, 105, 0.92), transparent 46%),
        linear-gradient(135deg, #071d36 0%, #0b294d 100%);
}

.home-hero__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: clamp(3rem, 5vw, 5.25rem) clamp(1.75rem, 5.5vw, 6rem);
}

.home-kicker {
    margin: 0 0 0.9rem;
    color: var(--home-gold-dark);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    line-height: 1.4;
    text-transform: uppercase;
}

.home-hero .home-kicker {
    color: #e1bd61;
    font-size: 0.84rem;
    font-weight: 600;
    letter-spacing: 0.05em;
}

.home-hero h1 {
    max-width: 14ch;
    margin-bottom: 1.35rem;
    color: #f5e6bd;
    font-size: clamp(3rem, 5vw, 5.4rem);
    font-weight: 900;
    letter-spacing: -0.045em;
    line-height: 1.03;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
}

.home-hero__headline-word {
    white-space: nowrap;
    hyphens: none;
}

.home-hero__lead {
    max-width: 59ch;
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: clamp(1rem, 1.4vw, 1.16rem);
    line-height: 1.6;
    overflow-wrap: anywhere;
    word-break: normal;
}

.home-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
    margin-top: 2rem;
}

.home-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.68rem;
    min-height: 50px;
    padding: 0.92rem 1.45rem;
    border: 1px solid transparent;
    border-radius: 0.35rem;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.075em;
    line-height: 1.1;
    text-decoration: none;
    text-transform: uppercase;
    transition: transform 220ms ease, background-color 220ms ease, border-color 220ms ease, color 220ms ease, box-shadow 220ms ease;
}

.home-button:hover,
.home-button:focus-visible {
    transform: translateY(-2px);
}

.home-button--gold {
    border-color: #d4b460;
    background: #cda84b;
    color: #071d36;
    box-shadow: 0 12px 26px rgba(0, 0, 0, 0.18);
}

.home-button--gold:hover,
.home-button--gold:focus-visible {
    border-color: #ead18e;
    background: #dfbe67;
    color: #071d36;
}

.home-button--outline {
    border-color: #fff;
    background: transparent;
    color: #fff;
}

.home-button--outline:hover,
.home-button--outline:focus-visible {
    border-color: #fff;
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
}

.home-button--navy {
    align-self: flex-start;
    border-color: var(--home-navy);
    background: var(--home-navy);
    color: #fff;
}

.home-button--navy:hover,
.home-button--navy:focus-visible {
    border-color: var(--home-gold-dark);
    background: #0d2b50;
    color: #fff;
    box-shadow: 0 10px 20px rgba(7, 29, 54, 0.18);
}

.home-hero__visual {
    position: relative;
    min-height: 560px;
    margin: 0;
    overflow: hidden;
    isolation: isolate;
    background: #071d36;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 18px 36px rgba(7, 29, 54, 0.18);
}

.home-hero__visual::before,
.home-hero__visual::after {
    position: absolute;
    inset: 0;
    content: "";
    pointer-events: none;
}

.home-hero__visual::before {
    z-index: 1;
    background:
        radial-gradient(circle at 78% 16%, rgba(197, 160, 89, 0.12), transparent 34%),
        linear-gradient(135deg, rgba(7, 29, 54, 0.2), rgba(7, 29, 54, 0.54));
}

.home-hero__visual::after {
    z-index: 2;
    background: linear-gradient(90deg, rgba(7, 29, 54, 0.24), transparent 46%);
}

.corporate-photo {
    position: relative;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.95) contrast(1.05) saturate(0.85);
}

.home-hero__visual figcaption {
    position: absolute;
    right: 1.5rem;
    bottom: 1.5rem;
    left: 1.5rem;
    z-index: 3;
    max-width: 44ch;
    padding: 0.85rem 1rem;
    border-left: 3px solid var(--home-gold);
    background: rgba(7, 29, 54, 0.74);
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.94rem;
    line-height: 1.6;
}

.home-proof {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    background: #0b294d;
    color: #fff;
}

.home-proof__item {
    position: relative;
    display: flex;
    min-height: 110px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.4rem clamp(1.75rem, 3vw, 3.25rem);
    text-align: center;
}

.home-proof__item:not(:last-child)::after {
    position: absolute;
    top: 27%;
    right: 0;
    bottom: 27%;
    width: 1px;
    content: "";
    background: rgba(197, 160, 89, 0.68);
}

.home-proof__item strong {
    color: #d7b660;
    font-family: var(--font-serif);
    font-size: clamp(1.35rem, 2.2vw, 2rem);
    letter-spacing: -0.03em;
    line-height: 1.05;
}

.home-proof__item span {
    margin-top: 0.42rem;
    color: rgba(255, 255, 255, 0.82);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    line-height: 1.45;
    text-transform: uppercase;
}

.brand-philosophy {
    width: min(1240px, 90vw);
    margin: 0 auto;
    padding: clamp(1.5rem, 3vw, 2.25rem);
    border: 1px solid rgba(197, 160, 89, 0.25);
    border-radius: var(--radius-lg);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.78), rgba(255, 253, 248, 0.95));
    box-shadow: 0 16px 36px rgba(7, 29, 54, 0.08);
}

.brand-philosophy__heading {
    max-width: 780px;
}

.brand-philosophy__kicker {
    margin: 0 0 0.65rem;
    color: #8d6b28;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    line-height: 1.4;
    text-transform: uppercase;
}

.brand-philosophy h2 {
    margin-bottom: 0.65rem;
    color: var(--esq-midnight);
    font-size: clamp(1.5rem, 2.5vw, 2.35rem);
    letter-spacing: -0.03em;
}

.brand-philosophy__lead {
    margin: 0;
    max-width: 64ch;
    color: var(--muted);
    font-size: 0.98rem;
    line-height: 1.7;
}

.brand-philosophy__body {
    display: grid;
    gap: 1rem;
    margin-top: 1.35rem;
}

.brand-philosophy__statement {
    margin: 0;
    color: var(--esq-midnight);
    font-family: var(--font-serif);
    font-size: clamp(1.55rem, 3vw, 2.4rem);
    font-weight: 900;
    letter-spacing: -0.03em;
    line-height: 1.15;
}

.brand-philosophy__relation {
    display: grid;
    gap: 0.85rem;
    padding: 1rem 1.05rem;
    border: 1px solid rgba(197, 160, 89, 0.22);
    border-radius: calc(var(--radius-lg) - 4px);
    background: rgba(255, 255, 255, 0.72);
}

.brand-philosophy__relation-label {
    color: #c5a059;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    line-height: 1.3;
    text-transform: uppercase;
}

.brand-philosophy__relation-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.brand-philosophy__relation-item {
    display: grid;
    gap: 0.22rem;
    padding: 0.9rem 0.95rem;
    border-radius: calc(var(--radius-lg) - 8px);
    background: rgba(255, 253, 248, 0.92);
    text-align: left;
}

.brand-philosophy__relation-item strong {
    color: var(--esq-midnight);
    font-family: var(--font-serif);
    font-size: clamp(1.05rem, 1.8vw, 1.3rem);
    letter-spacing: -0.02em;
}

.brand-philosophy__relation-item span {
    color: #8d6b28;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    line-height: 1.3;
    text-transform: uppercase;
}

.brand-philosophy--home {
    width: min(1240px, 90vw);
    margin-top: 1.35rem;
    margin-bottom: 1.35rem;
    padding: clamp(1.7rem, 3vw, 2.45rem);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 2rem;
    background:
        radial-gradient(circle at 84% 14%, rgba(64, 113, 176, 0.35), transparent 36%),
        radial-gradient(circle at 8% 0%, rgba(197, 160, 89, 0.18), transparent 26%),
        linear-gradient(180deg, #0a1f39 0%, #091a31 100%);
    box-shadow: 0 26px 62px rgba(7, 29, 54, 0.18);
    color: #fff;
    overflow: hidden;
}

.brand-philosophy--home .brand-philosophy__topline {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.brand-philosophy__hero-kicker {
    margin: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.2em;
    line-height: 1.4;
    text-transform: uppercase;
}

.brand-philosophy__topline-mark {
    flex: 0 0 auto;
    color: rgba(255, 255, 255, 0.56);
    font-family: var(--font-serif);
    font-size: 0.95rem;
    font-weight: 900;
    letter-spacing: 0.18em;
    line-height: 1;
    text-transform: uppercase;
}

.brand-philosophy--home .brand-philosophy__hero-title {
    margin: 1rem 0 1.3rem;
    color: #f5e6bd;
    font-size: clamp(2rem, 3.6vw, 3.15rem);
    font-weight: 900;
    letter-spacing: -0.05em;
    line-height: 1.02;
    text-align: center;
}

.brand-philosophy__layer {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: clamp(1rem, 4vw, 3.4rem);
}

.brand-philosophy__layer--sequence {
    width: min(100%, 970px);
    margin: 0.35rem auto 0;
    padding: 0.6rem 0 0.7rem;
    justify-content: space-between;
    padding-left: 0;
    gap: 2.2rem;
}

.brand-philosophy__layer--sequence span {
    color: #f1d59a;
    font-family: var(--font-serif);
    font-size: clamp(1.55rem, 3.2vw, 2.8rem);
    font-weight: 800;
    letter-spacing: -0.05em;
    line-height: 1;
}

.brand-philosophy__rule {
    width: min(82%, 820px);
    height: 1px;
    margin: 0 auto;
    border: 0;
    background: linear-gradient(90deg, transparent, rgba(223, 189, 101, 0.52));
    opacity: 0.9;
}

.brand-philosophy__rule--low {
    width: min(72%, 720px);
    margin-top: 0.9rem;
    margin-bottom: 1rem;
    margin-right: auto;
    margin-left: auto;
    background: linear-gradient(90deg, transparent, rgba(223, 189, 101, 0.42), transparent);
}

.brand-philosophy__axis {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: min(92%, 960px);
    margin: 1.35rem auto 1.15rem;
}

.brand-philosophy__axis::before {
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;
    height: 1px;
    background: rgba(223, 189, 101, 0.3);
    content: "";
    transform: translateY(-50%);
}

.brand-philosophy__axis-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 1.35rem;
    padding: 0.35rem 1.05rem;
    background: #071d36;
    color: rgba(255, 255, 255, 0.9);
    font-family: var(--font-sans);
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.2em;
    line-height: 1;
    text-transform: uppercase;
}

.brand-philosophy__axis-label span[aria-hidden="true"] {
    color: rgba(223, 189, 101, 0.6);
    font-weight: 500;
    letter-spacing: 0;
}

.brand-philosophy__layer--triad {
    gap: 0.8rem;
    justify-content: center;
    width: 100%;
    padding: 0.35rem 0 0.15rem;
}

.brand-philosophy__triad-unit {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    color: #fff;
    font-size: clamp(1.05rem, 1.9vw, 1.35rem);
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1;
}

.brand-philosophy__triad-unit strong {
    color: currentColor;
    font: inherit;
    letter-spacing: inherit;
}

.brand-philosophy__triad-icon {
    display: inline-grid;
    place-items: center;
    width: 1.34em;
    height: 1.34em;
    color: rgba(255, 255, 255, 0.5);
    flex: 0 0 auto;
    line-height: 0;
}

.brand-philosophy__triad-icon svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.9;
}

.brand-philosophy__triad-divider {
    color: rgba(255, 255, 255, 0.5);
    font-size: 0.98rem;
    font-weight: 700;
    line-height: 1;
}

.brand-philosophy--home .brand-philosophy__relation {
    margin-top: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

.brand-philosophy--home .brand-philosophy__relation-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    color: rgba(255, 255, 255, 0.82);
    text-align: center;
}

.brand-philosophy--home .brand-philosophy__relation-label::before,
.brand-philosophy--home .brand-philosophy__relation-label::after {
    content: "";
    width: 2.75rem;
    height: 1px;
    background: rgba(223, 189, 101, 0.34);
}

.brand-philosophy--home .brand-philosophy__relation-grid {
    display: flex;
    align-items: stretch;
    justify-content: center;
    flex-wrap: wrap;
    width: min(100%, 760px);
    margin: 0.55rem auto 0;
    gap: 1.5rem;
}

.brand-philosophy__relation-card {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 8.4rem;
    flex: 0 1 220px;
    padding: 1.35rem 1rem;
    border: 1px solid rgba(213, 182, 96, 0.2);
    border-radius: 1.35rem;
    background:
        linear-gradient(180deg, rgba(255, 253, 248, 0.035), rgba(255, 253, 248, 0.012)),
        rgba(7, 24, 43, 0.32);
}

.brand-philosophy__relation-copy {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 0.42rem;
}

.brand-philosophy__relation-copy-number,
.brand-philosophy__relation-copy-separator {
    color: rgba(255, 255, 255, 0.72);
    font-family: var(--font-sans);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    line-height: 1;
}

.brand-philosophy__relation-card strong {
    position: relative;
    z-index: 2;
    color: #f1d59a;
    font-family: var(--font-serif);
    font-size: clamp(1.55rem, 2.4vw, 2.2rem);
    font-weight: 800;
    letter-spacing: -0.045em;
    text-shadow: 0 1px 0 rgba(0, 0, 0, 0.18);
}

.brand-philosophy__relation-number {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(213, 182, 96, 0.16);
    font-family: var(--font-sans);
    font-size: clamp(6.5rem, 10vw, 9rem);
    font-variant-numeric: tabular-nums lining-nums;
    font-feature-settings: "tnum" 1, "lnum" 1;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1;
    pointer-events: none;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
}

.brand-philosophy__home-note {
    margin: 1.1rem auto 0;
    max-width: 68ch;
    color: rgba(255, 255, 255, 0.84);
    font-size: 0.96rem;
    line-height: 1.72;
    text-align: center;
}

.brand-philosophy--login {
    width: 100%;
    margin-top: 1.65rem;
    padding: 1rem 1rem 0.9rem;
    border-color: rgba(197, 160, 89, 0.24);
    background: rgba(255, 255, 255, 0.06);
    box-shadow: none;
}

.brand-philosophy--login .brand-philosophy__kicker,
.brand-philosophy--footer .brand-philosophy__kicker {
    color: #dfbd65;
}

.brand-philosophy--login h2,
.brand-philosophy--footer h2 {
    color: #f5e6bd;
    font-size: clamp(1.2rem, 2vw, 1.65rem);
}

.brand-philosophy--login .brand-philosophy__lead {
    color: rgba(255, 255, 255, 0.74);
}

.brand-philosophy--login .brand-philosophy__body,
.brand-philosophy--footer .brand-philosophy__body {
    gap: 0.85rem;
    margin-top: 1rem;
}

.brand-philosophy--login .brand-philosophy__relation,
.brand-philosophy--footer .brand-philosophy__relation {
    padding: 0.85rem 0.9rem;
    border-color: rgba(223, 189, 101, 0.16);
    background: rgba(255, 255, 255, 0.05);
}

.brand-philosophy--login .brand-philosophy__statement,
.brand-philosophy--footer .brand-philosophy__statement {
    color: #f5e6bd;
}

.brand-philosophy--login .brand-philosophy__relation-item,
.brand-philosophy--footer .brand-philosophy__relation-item {
    background: rgba(255, 255, 255, 0.05);
}

.brand-philosophy--login .brand-philosophy__relation-item strong,
.brand-philosophy--footer .brand-philosophy__relation-item strong {
    color: #f5e6bd;
}

.brand-philosophy--login .brand-philosophy__relation-item span,
.brand-philosophy--footer .brand-philosophy__relation-item span {
    color: rgba(255, 255, 255, 0.78);
}

.brand-philosophy--login .brand-philosophy__relation-label,
.brand-philosophy--footer .brand-philosophy__relation-label {
    color: rgba(223, 189, 101, 0.92);
}

.brand-philosophy--footer {
    width: 100%;
    margin-top: 1.25rem;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.home-section {
    padding: clamp(10rem, 13vw, 14rem) clamp(1.4rem, 7vw, 7rem);
}

.home-section__heading {
    max-width: 790px;
    margin: 0 auto 4rem;
    text-align: center;
}

.home-section__heading--row {
    display: flex;
    max-width: none;
    align-items: end;
    justify-content: space-between;
    gap: 2rem;
    text-align: left;
}

.home-section__heading h2,
.home-milad h2,
.home-closing h2 {
    margin-bottom: 1rem;
    color: var(--home-navy);
    font-size: clamp(2rem, 4vw, 3.6rem);
    font-weight: 900;
    letter-spacing: -0.04em;
    line-height: 1.08;
}

.home-section__heading p:not(.home-kicker),
.home-milad p,
.home-closing p {
    max-width: 68ch;
    margin: 0;
    color: #475569;
    font-size: 1rem;
    line-height: 1.6;
}

.home-values {
    background: #fff;
}

.home-values__grid {
    display: grid;
    max-width: 1240px;
    margin: 0 auto;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.65rem;
}

.home-value-card {
    display: flex;
    min-height: 270px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--home-card-padding);
    background: #fff;
    box-shadow: 0 12px 24px rgba(7, 29, 54, 0.08);
    text-align: center;
}

.home-value-card__icon {
    display: flex;
    width: 54px;
    height: 54px;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.35rem;
    border: 1px solid rgba(197, 160, 89, 0.6);
    color: var(--home-gold-dark);
}

.home-value-card__icon svg {
    width: 30px;
    height: 30px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.home-value-card h3 {
    margin-bottom: 0.65rem;
    color: var(--home-navy);
    font-size: 1.32rem;
}

.home-value-card p {
    margin: 0;
    color: #475569;
    font-size: 1rem;
    line-height: 1.6;
}

.home-framework {
    background: #fff;
}

.home-framework__list {
    display: grid;
    max-width: 1220px;
    margin: 0 auto;
    gap: clamp(6rem, 9vw, 8rem);
}

.home-framework-step {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
    gap: clamp(2.5rem, 5vw, 5.4rem);
    align-items: center;
}

.home-framework-step--reverse .home-framework-step__visual {
    order: 2;
}

.home-framework-step__visual {
    position: relative;
    align-self: center;
    overflow: hidden;
    isolation: isolate;
    padding: 1.05rem;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.06), transparent 30%),
        linear-gradient(315deg, rgba(2, 8, 16, 0.26), transparent 42%),
        linear-gradient(135deg, #10233e 0%, #081426 52%, #040c17 100%);
    border: 1px solid rgba(213, 182, 96, 0.28);
    box-shadow:
        inset 1px 1px 0 rgba(255, 255, 255, 0.09),
        inset 0 0 0 1px rgba(213, 182, 96, 0.12),
        inset -18px -18px 26px rgba(2, 8, 16, 0.24),
        0 24px 48px rgba(7, 29, 54, 0.1);
}

.home-framework-step__visual::before {
    position: absolute;
    inset: 0;
    z-index: 2;
    content: "";
    background:
        radial-gradient(circle at 15% 14%, rgba(223, 189, 101, 0.16), transparent 24%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.05), transparent 28%),
        linear-gradient(180deg, transparent 0%, rgba(7, 29, 54, 0.1) 100%);
    pointer-events: none;
}

.home-framework-step__visual::after {
    position: absolute;
    inset: 0.46rem;
    z-index: 3;
    content: "";
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    border-left: 1px solid rgba(255, 255, 255, 0.08);
    border-right: 1px solid rgba(213, 182, 96, 0.22);
    border-bottom: 1px solid rgba(213, 182, 96, 0.22);
    box-shadow: inset 0 0 0 1px rgba(7, 29, 54, 0.12);
    pointer-events: none;
}

.home-framework-step__visual img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow:
        0 20px 44px rgba(7, 29, 54, 0.1),
        0 6px 16px rgba(7, 29, 54, 0.04);
}

.home-framework-step__visual img.corporate-photo,
.home-hero__visual img.corporate-photo {
    filter: brightness(0.95) contrast(1.05) saturate(0.85);
}

.home-framework-step__illustration {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
}

.home-framework-step__illustration-ring {
    fill: none;
    stroke: rgba(213, 182, 96, 0.3);
    stroke-width: 1.5;
}

.home-framework-step__illustration-ring--dashed {
    fill: none;
    stroke: rgba(213, 182, 96, 0.2);
    stroke-width: 1;
    stroke-dasharray: 2 6;
}

.home-framework-step__illustration-sparkle {
    fill: #e8cf8e;
    opacity: 0.75;
}

.home-framework-step__illustration-icon {
    fill: none;
    stroke: #e8cf8e;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.home-framework-step__illustration-icon .home-framework-step__illustration-detail {
    stroke: rgba(232, 207, 142, 0.55);
    stroke-width: 1.6;
}

.home-framework-step__illustration-icon .home-framework-step__illustration-accent {
    fill: rgba(232, 207, 142, 0.32);
    stroke: rgba(232, 207, 142, 0.7);
    stroke-width: 1.6;
}

.home-framework-step__copy {
    position: relative;
    display: flex;
    min-height: auto;
    flex-direction: column;
    align-self: center;
    justify-content: center;
    margin-block: auto;
}

.home-framework-step__number {
    display: block;
    margin-bottom: 1rem;
    color: rgba(197, 160, 89, 0.42);
    font-family: var(--font-serif);
    font-size: 3.1rem;
    font-weight: 900;
    letter-spacing: -0.08em;
    line-height: 1;
}

.home-framework-step__copy h3 {
    max-width: 18ch;
    margin-bottom: 1rem;
    color: var(--home-navy);
    font-size: clamp(1.65rem, 2.6vw, 2.4rem);
    letter-spacing: -0.035em;
    line-height: 1.12;
}

.home-framework-step__copy p:not(.home-kicker) {
    max-width: 48ch;
    margin: 0;
    color: #516071;
    font-size: 1rem;
    line-height: 1.6;
}

.home-milad {
    display: grid;
    padding: clamp(5rem, 8vw, 7.5rem) clamp(1.4rem, 7vw, 7rem);
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: clamp(2rem, 6vw, 6rem);
    border-top: 1px solid rgba(197, 160, 89, 0.22);
    border-bottom: 1px solid rgba(197, 160, 89, 0.22);
    background: #fff;
}

.home-text-link {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    margin-top: 1.25rem;
    color: var(--home-gold-dark);
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-decoration: none;
    text-transform: uppercase;
}

.home-text-link:hover,
.home-text-link:focus-visible {
    color: var(--home-navy);
    text-decoration: underline;
}

.home-events {
    background: #fff;
}

.home-events__grid {
    display: grid;
    max-width: 1240px;
    margin: 0 auto;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem;
}

.home-events__grid--compact,
.home-events__grid--six {
    margin-top: 1.5rem;
}

.home-event-featured {
    display: grid;
    max-width: 1240px;
    margin: 0 auto;
    overflow: hidden;
    grid-template-columns: minmax(150px, 240px) minmax(0, 1fr);
    border: 1px solid rgba(197, 160, 89, 0.28);
    border-radius: var(--radius-lg);
    background: linear-gradient(135deg, #071d36 0%, #0b294d 100%);
    box-shadow: 0 22px 44px rgba(7, 29, 54, 0.16);
}

.home-event-featured__date {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.9rem 1rem;
    border-right: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.03);
    color: #fff;
    text-align: center;
}

.home-event-featured__date span,
.home-event-featured__date small {
    color: #dfbd65;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.home-event-featured__date strong {
    margin: 0.45rem 0;
    color: #fffdf8;
    font-family: var(--font-serif);
    font-size: clamp(2.9rem, 4.2vw, 4.25rem);
    line-height: 1;
}

.home-event-featured__body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(1.5rem, 3vw, 2.35rem);
}

.home-event-featured__eyebrow {
    margin: 0 0 0.8rem;
    color: #dfbd65;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.home-event-featured h3 {
    max-width: 18ch;
    margin-bottom: 0.8rem;
    color: #fffdf8;
    font-size: clamp(1.7rem, 2.8vw, 2.6rem);
    line-height: 1.12;
}

.home-event-featured p {
    max-width: 58ch;
    margin-bottom: 1.25rem;
    color: rgba(255, 255, 255, 0.82);
    font-size: 1rem;
    line-height: 1.7;
}

.home-event-featured__link {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    color: #f5d989;
    font-size: 0.73rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-decoration: none;
    text-transform: uppercase;
}

.home-event-featured__link:hover,
.home-event-featured__link:focus-visible {
    color: #fffdf8;
    text-decoration: underline;
}

.home-event-card {
    display: grid;
    min-height: 285px;
    grid-template-columns: 108px minmax(0, 1fr);
    background: #fff;
    box-shadow: 0 16px 34px rgba(7, 29, 54, 0.1);
}

.home-event-card__date {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.55rem 0.75rem;
    border: 0;
    background: #fff;
    color: #071d36;
    text-align: center;
}

.home-event-card__date span,
.home-event-card__date small {
    color: #8d6b28;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.12em;
}

.home-event-card__date strong {
    margin: 0.42rem 0;
    font-family: var(--font-serif);
    font-size: 2.55rem;
    line-height: 1;
}

.home-event-card__body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: var(--home-card-padding);
}

.home-event-card__status {
    margin: 0 0 0.8rem;
    color: var(--home-gold-dark);
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.home-event-card h3 {
    margin-bottom: 0.8rem;
    color: var(--home-navy);
    font-size: 1.22rem;
    line-height: 1.25;
}

.home-event-card p:not(.home-event-card__status) {
    flex: 1;
    margin-bottom: 1.35rem;
    color: #475569;
    font-size: 1rem;
    line-height: 1.6;
}

.home-event-card__link {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    color: #8d6b28;
    font-size: 0.73rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-decoration: none;
    text-transform: uppercase;
}

.home-event-card__link:hover,
.home-event-card__link:focus-visible {
    color: var(--home-navy);
    text-decoration: underline;
}

.home-empty-state {
    max-width: 860px;
    margin: 0 auto;
    padding: 2.6rem;
    border: 1px solid rgba(197, 160, 89, 0.5);
    background: #fff;
    text-align: center;
}

.home-empty-state h3 {
    margin-bottom: 0.6rem;
    color: var(--home-navy);
}

.home-empty-state p {
    margin: 0 auto;
    color: #5b6776;
    font-size: 1rem;
    line-height: 1.6;
}

.home-closing {
    padding: clamp(4.5rem, 8vw, 7.5rem) clamp(1.4rem, 10vw, 10rem);
    background:
        radial-gradient(circle at 76% 0%, rgba(37, 82, 130, 0.72), transparent 46%),
        linear-gradient(135deg, #071d36 0%, #0b294d 100%);
}

.home-closing .home-kicker {
    color: #dfbd65;
}

.home-closing h2 {
    max-width: 21ch;
    color: #f4e4b8;
}

.home-closing p {
    max-width: 64ch;
    color: rgba(255, 255, 255, 0.78);
}

.app-footer--landing {
    margin-top: 0;
    border-top: 5px solid #c5a059;
    background: #071d36;
}

.app-footer--landing .app-footer__inner {
    width: min(1240px, 90vw);
    padding: 3rem 0 1.35rem;
}

.landing-footer {
    display: grid;
    padding-bottom: 2rem;
    grid-template-columns: minmax(0, 1.7fr) minmax(150px, 0.65fr) minmax(190px, 0.75fr);
    gap: 2rem;
}

.landing-footer__brand {
    max-width: 470px;
}

.landing-footer__logo {
    display: block;
    width: clamp(160px, 18vw, 240px);
    margin-bottom: 0.85rem;
}

.landing-footer__title {
    margin-bottom: 0.8rem !important;
    color: #dfbd65 !important;
    font-size: 0.7rem !important;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.landing-footer p,
.landing-footer a,
.app-footer--landing .app-footer__meta,
.app-footer--landing .app-footer__copyright {
    color: rgba(255, 255, 255, 0.68);
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.75;
}

.landing-footer a {
    display: block;
    margin-bottom: 0.42rem;
    text-decoration: none;
}

.landing-footer a:hover,
.landing-footer a:focus-visible {
    color: #dfbd65;
}

.app-footer--landing .app-footer__meta {
    padding-top: 1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.15);
}

/* Homepage readability lock: keep body copy legible across component-specific rules. */
.home-premium p,
.home-premium .home-value-card p,
.home-premium .home-framework-step__copy p,
.home-premium .home-event-card p,
.home-premium .home-empty-state p {
    font-size: 16px !important;
    line-height: 1.6 !important;
}

.home-premium .home-hero .home-kicker {
    color: #f5d989 !important;
    font-size: 0.84rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.1em !important;
}

.app-footer--landing .landing-footer p,
.app-footer--landing .landing-footer a,
.app-footer--landing .app-footer__meta,
.app-footer--landing .app-footer__copyright {
    font-size: 1rem !important;
    font-weight: 600;
}

@media (max-width: 1080px) {
    .home-hero {
        min-height: auto;
    }

    .home-hero__content {
        padding: 4.5rem 3rem;
    }

    .home-hero__visual {
        min-height: 510px;
    }

    .brand__media {
        width: clamp(120px, 18vw, 160px);
    }

    .app-header--landing .brand__media {
        width: clamp(140px, 22vw, 180px);
    }

    .home-values__grid,
    .home-events__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-main .landing-grid--modules {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .home-hero {
        width: 100%;
        margin-right: 0;
        margin-left: 0;
    }

    .app-header--landing .app-header__inner {
        padding: 0.8rem 0;
    }

    .app-header--landing .top-nav {
        gap: 0;
        border-top-color: rgba(197, 160, 89, 0.32);
    }

    .app-header--landing .top-nav a {
        padding: 0.6rem 0.7rem;
        background: transparent;
        font-size: 0.74rem;
    }

    .home-hero,
    .home-framework-step,
    .home-milad {
        grid-template-columns: 1fr;
    }

    .home-hero__content {
        padding: 2.7rem 1.5rem 2.3rem;
    }

    .home-hero h1 {
        max-width: 15ch;
        font-size: clamp(1.72rem, 6.8vw, 2.35rem);
        line-height: 1.08;
        overflow-wrap: normal;
        word-break: normal;
        hyphens: none;
    }

    .home-hero__lead {
        max-width: 100%;
        font-size: clamp(0.98rem, 4.2vw, 1.08rem);
    }

    .home-hero__visual {
        min-height: 390px;
    }

    .home-event-featured {
        grid-template-columns: 1fr;
    }

    .home-event-featured__date {
        flex-direction: row;
        justify-content: flex-start;
        gap: 0.8rem;
        padding: 1.15rem 1.2rem;
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        text-align: left;
    }

    .home-event-featured__date strong {
        margin: 0;
    }

    .home-event-featured__body {
        padding: 1.35rem 1.2rem 1.55rem;
    }

    .home-proof {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-proof__item {
        min-height: 98px;
    }

    .home-proof__item:nth-child(2)::after {
        display: none;
    }

    .home-proof__item:nth-child(-n + 2) {
        border-bottom: 1px solid rgba(197, 160, 89, 0.28);
    }

    .home-values__grid,
    .home-events__grid {
        grid-template-columns: 1fr;
    }

    .brand-philosophy--home {
        width: min(100% - 2.5rem, 720px);
        padding: 1rem 1rem 0.9rem;
        border-radius: 1.5rem;
    }

    .brand-philosophy--home .brand-philosophy__topline {
        align-items: flex-start;
    }

    .brand-philosophy__topline-mark {
        font-size: 0.82rem;
    }

    .brand-philosophy__hero-title {
        margin-top: 0.7rem;
        margin-bottom: 1rem;
        font-size: clamp(1.55rem, 5.4vw, 2.2rem);
    }

    .brand-philosophy__layer {
        gap: 0.95rem;
    }

    .brand-philosophy__layer--sequence {
        justify-content: space-between;
        gap: 0.85rem;
        padding-bottom: 0.55rem;
    }

    .brand-philosophy__layer--sequence span {
        font-size: clamp(1rem, 4.4vw, 1.48rem);
    }

    .brand-philosophy__axis {
        width: min(96%, 780px);
        margin: 0.7rem auto 0.65rem;
    }

    .brand-philosophy__axis-label {
        gap: 0.72rem;
        padding: 0.28rem 0.65rem;
        font-size: 0.66rem;
        letter-spacing: 0.14em;
    }

    .brand-philosophy__rule {
        width: min(94%, 780px);
    }

    .brand-philosophy__relation-card {
        gap: 0.8rem;
        min-height: 6.8rem;
    }

    .brand-philosophy__relation-number {
        font-size: clamp(5.4rem, 24vw, 7.4rem);
    }

    .brand-philosophy--home .brand-philosophy__relation {
        position: relative;
    }

    .brand-philosophy--home .brand-philosophy__relation-grid {
        width: 100%;
        justify-content: flex-start;
        flex-wrap: nowrap;
        gap: 1rem;
        padding: 0 2rem 0.45rem 0;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x proximity;
        scroll-padding-inline: 0;
        scrollbar-width: thin;
        scrollbar-color: rgba(213, 182, 96, 0.4) transparent;
    }

    .brand-philosophy--home .brand-philosophy__relation-grid::-webkit-scrollbar {
        height: 6px;
    }

    .brand-philosophy--home .brand-philosophy__relation-grid::-webkit-scrollbar-thumb {
        border-radius: 999px;
        background: rgba(213, 182, 96, 0.38);
    }

    .brand-philosophy--home .brand-philosophy__relation-grid::-webkit-scrollbar-track {
        background: transparent;
    }

    .brand-philosophy--home .brand-philosophy__relation-card {
        flex: 0 0 min(12.75rem, calc(100vw - 7.5rem));
        scroll-snap-align: start;
    }

    .brand-philosophy--home .brand-philosophy__relation::after {
        position: absolute;
        top: 2.05rem;
        right: 0;
        bottom: 0.35rem;
        width: 2rem;
        content: "";
        background: linear-gradient(90deg, rgba(7, 29, 54, 0), rgba(7, 29, 54, 0.92));
        pointer-events: none;
    }

    .home-framework-step--reverse .home-framework-step__visual {
        order: 1;
    }

    .home-framework-step__visual {
        order: 1;
        padding: 0.58rem;
        border-color: rgba(213, 182, 96, 0.16);
        box-shadow:
            inset 1px 1px 0 rgba(255, 255, 255, 0.06),
            inset 0 0 0 1px rgba(213, 182, 96, 0.08),
            0 16px 30px rgba(7, 29, 54, 0.08);
    }

    .home-framework-step__visual::after {
        inset: 0.24rem;
        border-top-color: rgba(255, 255, 255, 0.06);
        border-left-color: rgba(255, 255, 255, 0.06);
        border-right-color: rgba(213, 182, 96, 0.14);
        border-bottom-color: rgba(213, 182, 96, 0.14);
    }

    .home-framework-step__visual img {
        border-color: rgba(255, 255, 255, 0.04);
        box-shadow:
            0 12px 24px rgba(7, 29, 54, 0.08),
            0 4px 10px rgba(7, 29, 54, 0.03);
    }

    .home-framework-step__copy {
        order: 2;
    }

    .home-framework-step {
        gap: 1.55rem;
    }

    .home-section {
        padding-top: 6.25rem;
        padding-bottom: 6.25rem;
        padding-right: 1.5rem;
        padding-left: 1.5rem;
    }

    .home-section__heading--row {
        display: block;
    }

    .home-section__heading--row .home-text-link {
        margin-top: 0.85rem;
    }

    .home-event-featured,
    .home-events__grid {
        width: 100%;
    }

    .landing-footer {
        grid-template-columns: 1fr;
        gap: 1.3rem;
    }
}

@media (max-width: 430px) {
    .home-hero__content {
        padding-inline: 1.35rem;
    }

    .home-event-featured__date {
        gap: 0.55rem;
        padding-inline: 1.35rem;
    }

    .home-event-featured__date strong {
        font-size: clamp(2.35rem, 14vw, 3rem);
    }

    .home-event-featured__body {
        padding: 1.2rem 1.35rem 1.35rem;
    }

    .app-header--landing .brand__name {
        font-size: 2.05rem;
    }

    .top-nav--landing a {
        letter-spacing: 0.04em;
    }

    .home-proof__item strong {
        font-size: 1.18rem;
    }

    .home-proof__item span {
        font-size: 0.61rem;
    }

    .home-section {
        padding-right: 1.35rem;
        padding-left: 1.35rem;
    }

    .login-premium-brand {
        width: 118px;
        margin-bottom: 0.55rem;
    }

    .home-event-card {
        min-height: 0;
        grid-template-columns: 84px minmax(0, 1fr);
    }

    .home-event-card__date strong {
        font-size: 2.3rem;
    }

    .home-hero h1 {
        max-width: 100%;
        font-size: clamp(2.05rem, 11vw, 3.1rem);
    }
}

