/* site palette */
html:root {
    --bg: #0A0C0D;
    --surface: #191C1F;
    --surface-alt: #101317;
    --text: #EDEFF1;
    --text-muted: #B0B6BF;
    --border: #282E37;
    --primary: #32DEF7;
    --primary-hover: #0BD8F5;
    --on-primary: #111111;
    --primary-text: #32DEF7;
    --accent: #BDEEF5;
    --on-accent: #111111;
    --accent-text: #BDEEF5;
    --dark-band: #040608;
    --on-dark: #FFFFFF;
    --on-dark-muted: #B6BCC3;
    --brand-btn-bg: #111111;
    --brand-btn-text: #32DEF7;
    --section-alt-bg: #101317;
    --dark-band-bg: #040608;
    --brand-band-bg: #32DEF7;
    --hero-bg: #0A0C0D;
}

html:root {
    --bs-primary: #32DEF7;
    --bs-primary-rgb: 50, 222, 247;
    --bs-link-color: #32DEF7;
    --bs-link-color-rgb: 50, 222, 247;
    --bs-link-hover-color: #0BD8F5;
    --mdb-primary: #32DEF7;
    --mdb-primary-rgb: 50, 222, 247;
}

.btn-primary {
    --bs-btn-bg: var(--primary);
    --bs-btn-border-color: var(--primary);
    --bs-btn-color: var(--on-primary);
    --bs-btn-hover-bg: var(--primary-hover);
    --bs-btn-hover-border-color: var(--primary-hover);
    --bs-btn-hover-color: var(--on-primary);
    --bs-btn-active-bg: var(--primary-hover);
    --bs-btn-active-border-color: var(--primary-hover);
    --bs-btn-active-color: var(--on-primary);
    background-color: var(--primary);
    border-color: var(--primary);
    color: var(--on-primary);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: var(--primary-hover);
    border-color: var(--primary-hover);
    color: var(--on-primary);
}

.btn-outline-primary {
    --bs-btn-color: var(--primary-text);
    --bs-btn-border-color: var(--primary);
    --bs-btn-hover-bg: var(--primary);
    --bs-btn-hover-border-color: var(--primary);
    --bs-btn-hover-color: var(--on-primary);
    color: var(--primary-text);
    border-color: var(--primary);
}

.btn-outline-primary:hover {
    background-color: var(--primary);
    color: var(--on-primary);
}

.text-primary,
.link-primary {
    color: var(--primary-text) !important;
}

.bg-primary,
.text-bg-primary,
.badge.bg-primary {
    color: var(--on-primary) !important;
}

/* /site palette */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.6;
    background-color: var(--bg);
    color: var(--text);
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
}

a {
    text-decoration: none;
    transition: all 300ms ease-out;
}

.text-muted {
    color: var(--text-muted) !important;
}

.yhk-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--primary);
    color: var(--on-primary);
    font-family: 'Tenor Sans', sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.2;
    padding: 12px 28px;
    border-radius: 9999px;
    border: none;
    text-decoration: none;
    cursor: pointer;
    transition: all 300ms ease-out;
}

.yhk-btn:hover {
    background-color: var(--primary-hover);
    color: var(--on-primary);
}

.yhk-btn-alt {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    color: var(--primary-text);
    font-family: 'Tenor Sans', sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.2;
    padding: 12px 28px;
    border-radius: 9999px;
    border: 1px solid var(--border);
    text-decoration: none;
    cursor: pointer;
    transition: all 300ms ease-out;
}

.yhk-btn-alt:hover {
    border-color: var(--primary);
    color: var(--primary);
    background-color: rgba(50, 222, 247, 0.05);
}

.yhk-card {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 28px;
    transition: all 300ms ease-out;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.yhk-card:hover {
    transform: translateY(-3px);
    border-color: var(--primary);
}

.yhk-media {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 10;
    border-radius: 8px;
    border: 1px solid var(--border);
    overflow: hidden;
    flex-shrink: 0;
    background-color: var(--surface-alt);
}

.yhk-media img,
.yhk-media video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.yhk-eyebrow {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--primary-text);
    margin-bottom: 12px;
    display: inline-block;
}

.yhk-title {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 38px;
    line-height: 1.2;
    font-weight: 400;
    color: var(--text);
    text-align: center;
    margin-bottom: 24px;
}

.yhk-title span {
    color: var(--primary);
}

.yhk-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 12px;
    border-radius: 9999px;
    font-size: 12px;
    font-weight: 400;
    background-color: rgba(50, 222, 247, 0.1);
    color: var(--primary-text);
    border: 1px solid var(--border);
}

.yhk-icon {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-color: var(--primary);
    color: var(--on-primary);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}

.yhk-section {
    padding: 100px 0;
    background-color: var(--bg);
    color: var(--text);
}

.yhk-section-alt {
    padding: 100px 0;
    background-color: var(--section-alt-bg, var(--surface-alt));
    color: var(--text);
}

.yhk-section-dark {
    padding: 100px 0;
    background-color: var(--dark-band-bg, var(--dark-band));
    color: var(--on-dark);
}

.yhk-section-dark .yhk-title {
    color: var(--on-dark);
}

.yhk-section-dark .yhk-eyebrow {
    color: var(--accent-text);
}

.yhk-section-dark p {
    color: var(--on-dark-muted);
}

.yhk-section-dark .yhk-btn-alt {
    border-color: var(--border);
    color: var(--on-dark);
}

.yhk-section-dark .yhk-btn-alt:hover {
    border-color: var(--primary);
    color: var(--primary);
}

.yhk-section-brand {
    padding: 100px 0;
    background-color: var(--brand-band-bg, var(--primary));
    color: var(--on-primary);
}

.yhk-section-brand .yhk-title {
    color: var(--on-primary);
}

.yhk-section-brand p {
    color: #111111;
}

.yhk-section-brand .yhk-btn {
    background-color: var(--brand-btn-bg);
    color: var(--brand-btn-text);
}

.yhk-section-brand .yhk-btn:hover {
    background-color: #000000;
    color: var(--primary-hover);
}

.yhk-section-brand .yhk-btn-alt {
    border-color: var(--on-primary);
    color: var(--on-primary);
}

.yhk-section-brand .yhk-btn-alt:hover {
    background-color: rgba(0, 0, 0, 0.1);
}

.yhk-on-dark {
    color: var(--on-dark);
}

.yhk-on-dark h1,
.yhk-on-dark h2,
.yhk-on-dark h3,
.yhk-on-dark h4 {
    color: var(--on-dark);
}

.yhk-on-dark p {
    color: var(--on-dark-muted);
}

.yhk-section-dark .yhk-card,
.yhk-on-dark .yhk-card {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
}

.yhk-section-dark .yhk-card p,
.yhk-on-dark .yhk-card p {
    color: var(--text-muted);
}

.yhk-section-dark .yhk-card h1,
.yhk-section-dark .yhk-card h2,
.yhk-section-dark .yhk-card h3,
.yhk-section-dark .yhk-card h4,
.yhk-on-dark .yhk-card h1,
.yhk-on-dark .yhk-card h2,
.yhk-on-dark .yhk-card h3,
.yhk-on-dark .yhk-card h4 {
    color: var(--text);
}

@media (max-width: 991.98px) {

    .yhk-section,
    .yhk-section-alt,
    .yhk-section-dark,
    .yhk-section-brand {
        padding: 60px 0;
    }

    .yhk-title {
        font-size: 28px;
    }
}

/* ===== site_navigation_and_spatial_matrix_overview ===== */
.rz-header-block {
    background-color: var(--bg);
    border-bottom: 1px solid var(--border);
    z-index: 1040;
}

.rz-header-block .rz-navbar {
    background-color: var(--bg);
    padding: 14px 0;
}

.rz-header-block .rz-brand {
    text-decoration: none;
}

.rz-header-block .rz-brand-logo {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

.rz-header-block .rz-brand-title {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 1.15rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    color: var(--text);
}

.rz-header-block .rz-toggler {
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 6px 10px;
    background-color: var(--surface);
    color: var(--text);
    box-shadow: none;
}

.rz-header-block .rz-toggler:focus {
    box-shadow: 0 0 0 2px var(--primary);
    outline: none;
}

.rz-header-block .rz-toggler-icon {
    font-size: 1.5rem;
    color: var(--text);
    display: inline-flex;
}

.rz-header-block .rz-nav-items {
    gap: 8px;
}

.rz-header-block .rz-link {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 0.95rem;
    color: var(--text-muted);
    padding: 8px 14px;
    text-decoration: none;
    transition: color 200ms ease, background-color 200ms ease;
    border-radius: 4px;
}

.rz-header-block .rz-link:hover,
.rz-header-block .rz-link:focus,
.rz-header-block .rz-link.active {
    color: var(--primary);
    background-color: rgba(50, 222, 247, 0.05);
}

.rz-header-block .rz-dropdown-menu {
    background-color: var(--surface);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 8px 0;
    margin-top: 8px;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45);
}

.rz-header-block .rz-dropdown-link {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 0.9rem;
    color: var(--text);
    padding: 10px 18px;
    text-decoration: none;
    transition: background-color 200ms ease, color 200ms ease;
}

.rz-header-block .rz-dropdown-link:hover,
.rz-header-block .rz-dropdown-link:focus {
    background-color: var(--surface-alt);
    color: var(--primary);
}

.rz-header-block .rz-divider {
    border-color: var(--border);
    opacity: 1;
    margin: 6px 0;
}

.rz-header-block .rz-header-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: 'Tenor Sans', sans-serif;
    font-size: 0.88rem;
    font-weight: 400;
    text-decoration: none;
    border-radius: 9999px;
    background-color: var(--accent);
    color: var(--on-accent);
    padding: 8px 22px;
    border: none;
    transition: background-color 250ms ease, color 250ms ease, transform 200ms ease;
}

.rz-header-block .rz-header-action-btn:hover,
.rz-header-block .rz-header-action-btn:focus {
    background-color: var(--text);
    color: var(--on-accent);
    transform: translateY(-1px);
}

@media (max-width: 991.98px) {
    .rz-header-block .navbar-collapse {
        background-color: var(--surface);
        border: 1px solid var(--border);
        border-radius: 8px;
        padding: 16px 20px;
        margin-top: 12px;
    }

    .rz-header-block .rz-nav-items {
        margin: 0 0 12px 0;
        gap: 4px;
    }

    .rz-header-block .rz-link {
        padding: 10px 12px;
        font-size: 0.92rem;
    }

    .rz-header-block .rz-dropdown-menu {
        border: none;
        background-color: var(--surface-alt);
        margin-top: 4px;
        margin-bottom: 8px;
        padding-left: 8px;
    }

    .rz-header-block .rz-dropdown-link {
        color: var(--text-muted);
        padding: 8px 12px;
    }

    .rz-header-block .rz-dropdown-link:hover {
        color: var(--primary);
    }

    .rz-header-block .rz-header-action-btn {
        width: 100%;
        text-align: center;
    }
}

/* ===== organize_repair_work_by_room_surface_and_zone ===== */
.rz-hero-section {
    position: relative;
    padding: 60px 0;
    background-color: var(--dark-band, #040608);
    overflow: hidden;
}

@media (min-width: 992px) {
    .rz-hero-section {
        padding: 100px 0;
    }
}

.rz-hero-media-backdrop {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    overflow: hidden;
}

.rz-hero-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.35;
}

.rz-hero-overlay {
    position: absolute;
    inset: 0;
    background-color: rgba(4, 6, 8, 0.78);
}

.rz-hero-content-layer {
    z-index: 2;
}

.rz-hero-core {
    max-width: 680px;
    margin: 0 auto;
}

.rz-hero-eyebrow {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--primary, #32DEF7);
    margin-bottom: 16px;
}

.rz-hero-title {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.25;
    color: var(--on-dark, #FFFFFF);
    margin-bottom: 20px;
    word-break: break-word;
    hyphens: auto;
}

.rz-hero-title-highlight {
    display: block;
    color: var(--primary, #32DEF7);
    margin-top: 6px;
}

@media (min-width: 768px) {
    .rz-hero-title {
        font-size: 40px;
        line-height: 1.15;
    }
}

@media (min-width: 1200px) {
    .rz-hero-title {
        font-size: 52px;
        line-height: 1.1;
    }
}

.rz-hero-lead {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 15px;
    line-height: 1.6;
    color: var(--on-dark-muted, #B6BCC3);
    margin-bottom: 14px;
}

@media (min-width: 768px) {
    .rz-hero-lead {
        font-size: 18px;
        margin-bottom: 16px;
    }
}

.rz-hero-detail {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 13px;
    line-height: 1.5;
    color: var(--on-dark-muted, #B6BCC3);
    margin-bottom: 28px;
}

@media (min-width: 768px) {
    .rz-hero-detail {
        font-size: 15px;
        margin-bottom: 32px;
    }
}

.rz-hero-actions {
    margin-top: 8px;
}

.rz-hero-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background-color: var(--primary, #32DEF7);
    color: var(--on-primary, #111111) !important;
    border-radius: 9999px;
    padding: 12px 28px;
    text-decoration: none;
    font-size: 15px;
    font-weight: 400;
    transition: all 300ms ease-out;
    border: 1px solid transparent;
}

.rz-hero-btn:hover {
    background-color: var(--primary-hover, #0BD8F5);
    color: var(--on-primary, #111111) !important;
    transform: translateY(-2px);
}

.rz-btn-icon {
    font-size: 16px;
    transition: transform 300ms ease-out;
}

.rz-hero-btn:hover .rz-btn-icon {
    transform: translateX(3px);
}

.rz-mockup-fan {
    position: relative;
    height: 380px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.rz-phone-frame {
    width: 170px;
    height: 320px;
    border: 2px solid var(--border, #282E37);
    border-radius: 24px;
    background-color: var(--surface, #191C1F);
    padding: 8px;
    box-shadow: 0 16px 32px rgba(0, 0, 0, 0.45);
    transition: transform 400ms ease-out;
    position: absolute;
}

.rz-phone-notch {
    width: 44px;
    height: 6px;
    background-color: var(--border, #282E37);
    border-radius: 4px;
    margin: 2px auto 8px auto;
}

.rz-phone-screen {
    width: 100%;
    height: calc(100% - 16px);
    border-radius: 16px;
    overflow: hidden;
    background-color: #000000;
}

.rz-phone-primary {
    transform: rotate(-5deg) translateX(-15px);
    z-index: 2;
}

.rz-phone-secondary {
    transform: rotate(4deg) translateX(25px) translateY(20px);
    z-index: 1;
    opacity: 0.85;
}

.rz-phone-frame:hover {
    transform: translateY(-4px) rotate(0deg);
    z-index: 3;
}

.rz-browser-frame {
    width: 230px;
    height: 260px;
    border: 1px solid var(--border, #282E37);
    border-radius: 12px;
    background-color: var(--surface, #191C1F);
    overflow: hidden;
    box-shadow: 0 16px 32px rgba(0, 0, 0, 0.45);
    transition: transform 400ms ease-out;
    position: absolute;
}

.rz-browser-bar {
    height: 26px;
    background-color: var(--surface_alt, #101317);
    border-bottom: 1px solid var(--border, #282E37);
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 10px;
}

.rz-browser-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background-color: var(--border, #282E37);
}

.rz-browser-screen {
    width: 100%;
    height: calc(100% - 26px);
    overflow: hidden;
}

.rz-browser-primary {
    transform: rotate(3deg) translateX(10px);
    z-index: 2;
}

.rz-browser-secondary {
    transform: rotate(-4deg) translateX(-25px) translateY(30px);
    z-index: 1;
    opacity: 0.85;
}

.rz-browser-frame:hover {
    transform: translateY(-4px) rotate(0deg);
    z-index: 3;
}

.rz-phone-mobile,
.rz-browser-mobile {
    position: relative;
    width: 100%;
    height: 210px;
    transform: none;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
}

.rz-mockup-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ===== the_core_matrix_framework ===== */
.rz-framework-matrix {
    background-color: var(--bg);
    color: var(--text);
    overflow-x: hidden;
}

.rz-framework-matrix .rz-matrix-title {
    font-size: 38px;
    line-height: 1.2;
    color: var(--text);
    font-weight: 400;
}

.rz-framework-matrix .rz-title-highlight {
    color: var(--primary);
}

.rz-framework-matrix .rz-matrix-intro {
    font-size: 16px;
    line-height: 1.6;
    color: var(--text-muted);
    max-width: 780px;
}

.rz-framework-matrix .rz-pillars-panel,
.rz-framework-matrix .rz-matrix-table-wrapper {
    background-color: var(--surface-alt);
    border: 1px solid var(--border);
    border-radius: 12px;
}

.rz-framework-matrix .rz-badge-indicator {
    background-color: var(--primary);
    color: var(--on-primary);
    font-size: 12px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 9999px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.rz-framework-matrix .rz-matrix-meta-label {
    font-size: 13px;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 1px;
    font-family: monospace;
}

.rz-framework-matrix .rz-filter-btn {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: 9999px;
    padding: 6px 16px;
    font-size: 13px;
    cursor: pointer;
    transition: all 300ms ease;
}

.rz-framework-matrix .rz-filter-btn:hover {
    border-color: var(--primary);
    color: var(--primary-text);
}

.rz-framework-matrix .rz-filter-btn.active {
    background-color: var(--primary);
    color: var(--on-primary);
    border-color: var(--primary);
    font-weight: 600;
}

.rz-framework-matrix .rz-pillar-box {
    background-color: var(--surface);
    border: 1px solid var(--border);
    border-radius: 10px;
    transition: all 300ms ease-out;
}

.rz-framework-matrix .rz-pillar-box:hover {
    border-color: var(--primary);
    transform: translateY(-3px);
}

.rz-framework-matrix .rz-number-tile {
    width: 38px;
    height: 38px;
    border: 1px solid var(--border);
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: monospace;
    font-size: 15px;
    font-weight: 600;
    color: var(--primary);
    background-color: var(--surface-alt);
}

.rz-framework-matrix .rz-pillar-tag {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-muted);
}

.rz-framework-matrix .rz-pillar-heading {
    font-size: 18px;
    line-height: 1.3;
    color: var(--text);
}

.rz-framework-matrix .rz-pillar-text {
    font-size: 14px;
    line-height: 1.5;
    color: var(--text-muted);
}

.rz-framework-matrix .rz-status-indicator {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--primary);
    display: inline-block;
}

.rz-framework-matrix .rz-table-heading {
    font-size: 22px;
    line-height: 1.3;
    color: var(--text);
}

.rz-framework-matrix .rz-table-subtext {
    font-size: 14px;
    color: var(--text-muted);
}

.rz-framework-matrix .rz-table-filter-btn {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: 9999px;
    padding: 6px 14px;
    font-size: 13px;
    cursor: pointer;
    transition: all 300ms ease;
}

.rz-framework-matrix .rz-table-filter-btn:hover {
    border-color: var(--primary);
    color: var(--primary-text);
}

.rz-framework-matrix .rz-table-filter-btn.active {
    background-color: var(--primary);
    color: var(--on-primary);
    border-color: var(--primary);
    font-weight: 600;
}

.rz-framework-matrix .rz-zone-table {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
}

.rz-framework-matrix .rz-zone-table th {
    background-color: var(--surface);
    color: var(--primary-text);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    padding: 14px 16px;
    border-bottom: 1px solid var(--border);
    text-align: left;
}

.rz-framework-matrix .rz-zone-table td {
    padding: 16px;
    border-bottom: 1px solid var(--border);
    vertical-align: middle;
}

.rz-framework-matrix .rz-zone-table tr:last-child td {
    border-bottom: none;
}

.rz-framework-matrix .rz-zone-tag {
    font-family: monospace;
    font-size: 13px;
    font-weight: 600;
    color: var(--on-primary);
    background-color: var(--primary);
    padding: 3px 8px;
    border-radius: 4px;
}

.rz-framework-matrix .rz-zone-id {
    font-family: monospace;
    font-size: 11px;
    color: var(--text-muted);
}

.rz-framework-matrix .rz-surface-pill {
    font-size: 13px;
    color: var(--text);
    background-color: var(--surface);
    border: 1px solid var(--border);
    padding: 4px 10px;
    border-radius: 6px;
    display: inline-block;
}

.rz-framework-matrix .rz-table-text {
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.4;
    display: block;
}

.rz-framework-matrix .rz-table-highlight {
    font-size: 13px;
    color: var(--text);
    line-height: 1.4;
    display: block;
    font-weight: 500;
}

.rz-framework-matrix .rz-qty-code {
    font-family: monospace;
    font-size: 12px;
    color: var(--accent);
    background-color: var(--surface);
    border: 1px solid var(--border);
    padding: 4px 8px;
    border-radius: 4px;
    display: inline-block;
}

.rz-framework-matrix .rz-preview-section-title {
    font-size: 24px;
    color: var(--text);
}

.rz-framework-matrix .rz-preview-card {
    background-color: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
    transition: all 300ms ease;
}

.rz-framework-matrix .rz-preview-card:hover {
    border-color: var(--primary);
    transform: translateY(-3px);
}

.rz-framework-matrix .rz-preview-frame {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-bottom: 1px solid var(--border);
}

.rz-framework-matrix .rz-preview-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.rz-framework-matrix .rz-card-date {
    font-size: 12px;
    font-family: monospace;
    color: var(--text-muted);
}

.rz-framework-matrix .rz-card-title-link {
    text-decoration: none;
}

.rz-framework-matrix .rz-card-title {
    font-size: 18px;
    line-height: 1.3;
    color: var(--text);
    transition: color 300ms ease;
}

.rz-framework-matrix .rz-card-title:hover {
    color: var(--primary-text);
}

.rz-framework-matrix .rz-card-excerpt {
    font-size: 14px;
    line-height: 1.5;
    color: var(--text-muted);
}

.rz-framework-matrix .rz-btn-sm {
    padding: 8px 20px;
    font-size: 13px;
    text-decoration: none;
    border-radius: 9999px;
}

@media (max-width: 767px) {
    .rz-framework-matrix .rz-matrix-title {
        font-size: 16px;
        hyphens: auto;
    }

    .rz-framework-matrix .rz-pillar-heading,
    .rz-framework-matrix .rz-table-heading,
    .rz-framework-matrix .rz-preview-section-title,
    .rz-framework-matrix .rz-card-title {
        font-size: 14px;
        hyphens: auto;
    }

    .rz-framework-matrix .rz-zone-table thead {
        display: none;
    }

    .rz-framework-matrix .rz-zone-table,
    .rz-framework-matrix .rz-zone-table tbody,
    .rz-framework-matrix .rz-zone-table tr,
    .rz-framework-matrix .rz-zone-table td {
        display: block;
        width: 100%;
    }

    .rz-framework-matrix .rz-zone-table tr {
        border-bottom: 1px solid var(--border);
        padding: 12px 0;
    }

    .rz-framework-matrix .rz-zone-table td {
        border-bottom: none;
        padding: 6px 0;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }

    .rz-framework-matrix .rz-zone-table td::before {
        content: attr(data-label);
        font-size: 11px;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        color: var(--primary);
        font-weight: 600;
        font-family: monospace;
    }
}

/* ===== spatial_work_scenarios_and_case_breakdowns ===== */
.spatial-scenarios-block {
    padding: 100px 0;
    background-color: var(--bg);
    position: relative;
    overflow: hidden
}

.spatial-scenarios-title {
    color: var(--text);
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 38px;
    line-height: 1.2;
    margin: 0 0 16px 0
}

.spatial-scenarios-title-accent {
    color: var(--primary);
    font-weight: 400
}

.spatial-scenarios-lead {
    color: var(--text-muted);
    font-size: 16px;
    line-height: 1.6;
    max-width: 760px;
    margin-bottom: 0
}

.spatial-filter-btn {
    background: var(--surface);
    border: 1px solid var(--border);
    color: var(--text);
    font-size: 14px;
    padding: 8px 20px;
    border-radius: 9999px;
    cursor: pointer;
    transition: all 300ms ease-out;
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.spatial-filter-btn:hover {
    border-color: var(--primary);
    color: var(--primary)
}

.spatial-filter-btn.active {
    background: var(--primary);
    border-color: var(--primary);
    color: var(--on-primary);
    font-weight: 400
}

.spatial-scenario-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 24px;
    transition: all 300ms ease-out;
    position: relative
}

.spatial-scenario-card:hover {
    transform: translateY(-3px);
    border-color: var(--primary)
}

.spatial-num-tile {
    width: 42px;
    height: 42px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: var(--surface-alt);
    color: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: monospace;
    font-size: 16px;
    font-weight: 700
}

.spatial-card-tag {
    background: rgba(50, 222, 247, 0.12);
    color: var(--primary-text);
    font-size: 11px;
    padding: 4px 10px;
    border-radius: 9999px;
    letter-spacing: 0.04em;
    text-transform: uppercase
}

.spatial-card-title {
    font-size: 18px;
    line-height: 1.35;
    min-height: 50px
}

.spatial-card-link {
    color: var(--text);
    text-decoration: none;
    transition: color 300ms ease-out;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.spatial-card-link:hover {
    color: var(--primary)
}

.spatial-card-desc {
    color: var(--text-muted);
    font-size: 14px;
    line-height: 1.55;
    margin-bottom: 20px
}

.spatial-card-footer {
    border-color: var(--border) !important
}

.spatial-action-btn {
    font-size: 13px;
    padding: 10px 16px;
    border-radius: 9999px;
    background: var(--primary);
    color: var(--on-primary);
    text-decoration: none;
    border: none;
    display: inline-block;
    transition: all 300ms ease-out
}

.spatial-action-btn:hover {
    background: var(--primary-hover);
    color: var(--on-primary)
}

@media (max-width:767px) {
    .spatial-scenarios-block {
        padding: 60px 0
    }

    .spatial-scenarios-title {
        font-size: 26px;
        hyphens: auto
    }

    .spatial-card-title {
        min-height: auto;
        font-size: 16px
    }
}

/* ===== featured_case_shared_finish_across_contrasting_contexts ===== */
.rzm-featured-case {
    padding: 90px 0;
    background-color: var(--bg);
    color: var(--text);
    overflow: hidden;
}

.rzm-featured-case .rzm-section-title {
    font-size: 38px;
    line-height: 1.2;
    font-weight: 400;
    color: var(--text);
    margin: 0;
}

.rzm-featured-case .rzm-accent-text {
    color: var(--primary);
}

.rzm-featured-case .rzm-lead-text {
    max-width: 780px;
    font-size: 16px;
    line-height: 1.6;
    color: var(--text-muted);
}

.rzm-featured-case .rzm-case-interactive-shell {
    background-color: var(--surface_alt);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px;
}

.rzm-featured-case .rzm-filter-btn {
    border-radius: 9999px;
    padding: 10px 22px;
    font-size: 14px;
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    transition: all 300ms ease-out;
    cursor: pointer;
}

.rzm-featured-case .rzm-filter-btn:hover {
    border-color: var(--primary);
    color: var(--primary);
}

.rzm-featured-case .rzm-filter-btn.active {
    background: var(--primary);
    color: var(--on_primary);
    border-color: var(--primary);
}

.rzm-featured-case .rzm-zone-panel {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 10px;
    overflow: hidden;
}

.rzm-featured-case .rzm-panel-header {
    background: var(--surface_alt);
    border-bottom: 1px solid var(--border);
}

.rzm-featured-case .rzm-index-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 1px solid var(--border);
    border-radius: 8px;
    color: var(--primary);
    font-family: monospace;
    font-size: 18px;
    font-weight: 700;
    background: var(--bg);
}

.rzm-featured-case .rzm-panel-title {
    font-size: 20px;
    color: var(--text);
    font-weight: 400;
    line-height: 1.3;
}

.rzm-featured-case .rzm-badge-status {
    display: inline-block;
    font-size: 12px;
    padding: 2px 8px;
    border-radius: 4px;
    margin-top: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.rzm-featured-case .rzm-status-direct {
    background: rgba(50, 222, 247, 0.15);
    color: var(--primary);
    border: 1px solid var(--primary);
}

.rzm-featured-case .rzm-status-transition {
    background: rgba(189, 238, 245, 0.15);
    color: var(--accent);
    border: 1px solid var(--accent);
}

.rzm-featured-case .rzm-status-comparison {
    background: rgba(176, 182, 191, 0.15);
    color: var(--text-muted);
    border: 1px solid var(--border);
}

.rzm-featured-case .rzm-meta-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 14px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 9999px;
    font-size: 13px;
}

.rzm-featured-case .rzm-pill-label {
    color: var(--text-muted);
}

.rzm-featured-case .rzm-pill-value {
    color: var(--text);
}

.rzm-featured-case .rzm-chain-card {
    background: var(--surface_alt);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 16px;
    transition: border-color 300ms ease-out;
}

.rzm-featured-case .rzm-chain-card:hover {
    border-color: var(--primary);
}

.rzm-featured-case .rzm-step-number {
    font-size: 11px;
    text-transform: uppercase;
    color: var(--primary);
    letter-spacing: 0.5px;
    margin-bottom: 6px;
}

.rzm-featured-case .rzm-step-title {
    font-size: 16px;
    color: var(--text);
    margin-bottom: 8px;
    font-weight: 400;
}

.rzm-featured-case .rzm-step-desc {
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.5;
    margin: 0;
}

.rzm-featured-case .rzm-article-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
    transition: transform 300ms ease-out, border-color 300ms ease-out;
}

.rzm-featured-case .rzm-article-card:hover {
    transform: translateY(-3px);
    border-color: var(--primary);
}

.rzm-featured-case .rzm-card-image-link {
    display: block;
    overflow: hidden;
}

.rzm-featured-case .rzm-card-media-box {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-bottom: 1px solid var(--border);
}

.rzm-featured-case .rzm-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 400ms ease-out;
}

.rzm-featured-case .rzm-article-card:hover .rzm-card-img {
    transform: scale(1.03);
}

.rzm-featured-case .rzm-card-tag {
    display: inline-block;
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 4px;
    background: rgba(50, 222, 247, 0.12);
    color: var(--primary);
    border: 1px solid var(--primary);
}

.rzm-featured-case .rzm-meta-item {
    font-size: 13px;
    color: var(--text-muted);
}

.rzm-featured-case .rzm-card-heading {
    font-size: 20px;
    line-height: 1.35;
    margin: 12px 0 10px;
}

.rzm-featured-case .rzm-title-link {
    color: var(--text);
    text-decoration: none;
    transition: color 300ms ease;
}

.rzm-featured-case .rzm-title-link:hover {
    color: var(--primary);
}

.rzm-featured-case .rzm-card-desc {
    font-size: 14px;
    line-height: 1.6;
    color: var(--text-muted);
    margin-bottom: 16px;
}

.rzm-featured-case .rzm-card-footer {
    border-color: var(--border) !important;
}

.rzm-featured-case .rzm-action-btn {
    display: inline-block;
    border-radius: 9999px;
    background: var(--primary);
    color: var(--on_primary);
    font-size: 14px;
    padding: 10px 24px;
    border: none;
    transition: background-color 300ms ease;
}

.rzm-featured-case .rzm-action-btn:hover {
    background: var(--primary_hover);
    color: var(--on_primary);
}

@media (max-width: 767.98px) {
    .rzm-featured-case {
        padding: 50px 0;
    }

    .rzm-featured-case .rzm-section-title {
        font-size: 16px !important;
        hyphens: auto;
    }

    .rzm-featured-case .rzm-panel-title,
    .rzm-featured-case .rzm-card-heading {
        font-size: 14px !important;
        hyphens: auto;
    }

    .rzm-featured-case .rzm-case-interactive-shell {
        padding: 12px;
    }

    .rzm-featured-case .rzm-filter-btn {
        width: 100%;
        text-align: center;
    }
}

/* ===== case_study_with_measurable_numbers ===== */
.case-study-metrics-block {
    padding: 100px 0;
    position: relative;
    overflow: hidden;
}

.case-study-metrics-block .case-study-title {
    color: var(--on-primary);
    font-family: 'Tenor Sans', sans-serif;
    font-weight: 400;
    font-size: 38px;
    line-height: 1.2;
    margin-bottom: 16px;
    overflow-wrap: anywhere;
}

.case-study-metrics-block .case-study-subtitle {
    color: #111111;
    opacity: 0.85;
    font-size: 26px;
    display: block;
    margin-top: 8px;
}

.case-study-metrics-block .case-study-lead {
    color: #111111;
    font-family: 'Tenor Sans', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    max-width: 780px;
    margin: 0 auto;
    overflow-wrap: anywhere;
}

.case-study-metrics-block .metric-counter-card {
    background-color: var(--surface);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    transition: all 300ms ease-out;
}

.case-study-metrics-block .metric-counter-card:hover {
    border-color: var(--primary);
    transform: translateY(-3px);
}

.case-study-metrics-block .metric-tile-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}

.case-study-metrics-block .metric-mono-tile {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border: 1px solid var(--border);
    border-radius: 6px;
    font-family: monospace;
    font-size: 14px;
    color: var(--primary);
    background-color: var(--surface-alt);
}

.case-study-metrics-block .metric-badge-label {
    font-size: 12px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.case-study-metrics-block .metric-numeric-value {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 42px;
    line-height: 1.1;
    color: var(--text);
    margin-bottom: 12px;
}

.case-study-metrics-block .metric-counter-detail {
    color: var(--text-muted);
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 0;
    overflow-wrap: anywhere;
}

.case-study-metrics-block .case-study-viewer {
    background-color: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 32px;
}

.case-study-metrics-block .viewer-title {
    color: var(--text);
    font-family: 'Tenor Sans', sans-serif;
    font-size: 24px;
    line-height: 1.3;
    margin-bottom: 6px;
}

.case-study-metrics-block .viewer-desc {
    color: var(--text-muted);
    font-size: 14px;
    margin-bottom: 0;
}

.case-study-metrics-block .audit-tab-btn {
    border-radius: 9999px;
    padding: 8px 18px;
    font-size: 13px;
    font-family: 'Tenor Sans', sans-serif;
    border: 1px solid var(--border);
    background-color: var(--surface-alt);
    color: var(--text);
    cursor: pointer;
    transition: all 300ms ease-out;
}

.case-study-metrics-block .audit-tab-btn:hover {
    border-color: var(--primary);
    color: var(--primary);
}

.case-study-metrics-block .audit-tab-btn.active {
    background-color: var(--primary);
    color: var(--on-primary);
    border-color: var(--primary);
}

.case-study-metrics-block .table-responsive-wrapper {
    overflow-x: auto;
    width: 100%;
}

.case-study-metrics-block .case-data-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
}

.case-study-metrics-block .case-data-table th {
    padding: 14px 16px;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted);
    border-bottom: 1px solid var(--border);
    background-color: var(--surface-alt);
}

.case-study-metrics-block .case-data-table td {
    padding: 16px;
    font-size: 14px;
    color: var(--text);
    border-bottom: 1px solid var(--border);
}

.case-study-metrics-block .table-row-title {
    font-weight: 500;
    color: var(--text);
}

.case-study-metrics-block .stat-positive {
    color: var(--primary);
    font-family: monospace;
    font-size: 14px;
}

.case-study-metrics-block .audit-card-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.case-study-metrics-block .audit-detail-card {
    background-color: var(--surface-alt);
    border-radius: 8px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.case-study-metrics-block .baseline-border {
    border: 1px solid var(--border);
    border-left: 3px solid #f87171;
}

.case-study-metrics-block .matrix-border {
    border: 1px solid var(--border);
    border-left: 3px solid var(--primary);
}

.case-study-metrics-block .baseline-icon {
    color: #f87171;
    font-size: 18px;
}

.case-study-metrics-block .matrix-icon {
    color: var(--primary);
    font-size: 18px;
}

.case-study-metrics-block .audit-card-heading {
    color: var(--text);
    font-family: 'Tenor Sans', sans-serif;
    font-size: 17px;
    margin-bottom: 0;
}

.case-study-metrics-block .audit-card-text {
    color: var(--text-muted);
    font-size: 14px;
    line-height: 1.6;
    margin: 14px 0;
    overflow-wrap: anywhere;
}

.case-study-metrics-block .audit-meta-pill {
    font-size: 12px;
    background-color: #242930;
    color: #f87171;
    padding: 4px 10px;
    border-radius: 9999px;
}

.case-study-metrics-block .audit-meta-pill-accent {
    font-size: 12px;
    background-color: rgba(50, 222, 247, 0.12);
    color: var(--primary);
    padding: 4px 10px;
    border-radius: 9999px;
}

.case-study-metrics-block .border-top-divider {
    border-top: 1px solid var(--border);
}

.case-study-metrics-block .viewer-meta-note {
    font-size: 13px;
    color: var(--text-muted);
}

.case-study-metrics-block .yhk-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    background: #111111;
    color: #32DEF7;
    padding: 12px 28px;
    border: none;
    text-decoration: none;
    transition: all 300ms ease-out;
}

.case-study-metrics-block .yhk-btn:hover {
    background: #0A0C0D;
    color: #0BD8F5;
}

@media (max-width: 767px) {
    .case-study-metrics-block {
        padding: 60px 0;
    }

    .case-study-metrics-block .case-study-title {
        font-size: 28px;
    }

    .case-study-metrics-block .case-study-subtitle {
        font-size: 18px;
    }

    .case-study-metrics-block .case-study-viewer {
        padding: 20px;
    }

    .case-study-metrics-block .audit-card-grid {
        grid-template-columns: 1fr;
    }

    .case-study-metrics-block .case-data-table thead {
        display: none;
    }

    .case-study-metrics-block .case-data-table,
    .case-study-metrics-block .case-data-table tbody,
    .case-study-metrics-block .case-data-table tr,
    .case-study-metrics-block .case-data-table td {
        display: block;
        width: 100%;
    }

    .case-study-metrics-block .case-data-table tr {
        margin-bottom: 16px;
        border: 1px solid var(--border);
        border-radius: 8px;
        padding: 8px 12px;
        background-color: var(--surface-alt);
    }

    .case-study-metrics-block .case-data-table td {
        padding: 8px 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    }

    .case-study-metrics-block .case-data-table td:last-child {
        border-bottom: none;
    }

    .case-study-metrics-block .audit-tab-btn {
        flex: 1 1 auto;
        text-align: center;
    }
}

/* ===== spatial_methodology_and_zone_category_directory ===== */
.category-directory-section {
    padding-top: 60px;
    padding-bottom: 60px;
    overflow-wrap: anywhere;
}

@media (min-width: 992px) {
    .category-directory-section {
        padding-top: 100px;
        padding-bottom: 100px;
    }
}

.category-directory-section .category-directory-section__heading {
    color: var(--text);
    font-family: 'Tenor Sans', sans-serif;
    font-weight: 400;
    font-size: 28px;
    line-height: 1.2;
    text-align: center;
}

@media (min-width: 768px) {
    .category-directory-section .category-directory-section__heading {
        font-size: 38px;
    }
}

@media (max-width: 767.98px) {
    .category-directory-section .category-directory-section__heading {
        font-size: 16px;
        line-height: 1.25;
        hyphens: auto;
    }
}

.category-directory-section .category-directory-section__heading-accent {
    color: var(--primary);
}

.category-directory-section .category-directory-section__lead {
    color: var(--text-muted);
    font-size: 16px;
    line-height: 1.6;
    max-width: 720px;
}

.category-directory-section .category-directory-section__card {
    background-color: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    transition: transform 300ms ease-out, border-color 300ms ease-out;
    overflow: hidden;
}

.category-directory-section .category-directory-section__card:hover {
    transform: translateY(-3px);
    border-color: var(--primary);
}

.category-directory-section .category-directory-section__card-top {
    border-bottom: 1px solid var(--border);
}

.category-directory-section .category-directory-section__tile {
    width: 34px;
    height: 34px;
    border: 1px solid var(--border);
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: monospace;
    font-size: 14px;
    font-weight: 400;
    color: var(--primary);
    background-color: var(--bg);
    line-height: 1;
    flex-shrink: 0;
}

.category-directory-section .category-directory-section__badge {
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 9999px;
    background-color: rgba(50, 222, 247, 0.12);
    color: var(--primary);
    border: 1px solid rgba(50, 222, 247, 0.3);
}

.category-directory-section .category-directory-section__media {
    border-bottom: 1px solid var(--border);
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background-color: var(--surface-alt);
}

.category-directory-section .category-directory-section__media-link {
    width: 100%;
    height: 100%;
}

.category-directory-section .category-directory-section__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 400ms ease-out;
}

.category-directory-section .category-directory-section__card:hover .category-directory-section__img {
    transform: scale(1.03);
}

.category-directory-section .category-directory-section__category {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted);
    display: block;
}

.category-directory-section .category-directory-section__card-title {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.3;
    color: var(--text);
}

@media (max-width: 767.98px) {
    .category-directory-section .category-directory-section__card-title {
        font-size: 14px;
        line-height: 1.3;
        hyphens: auto;
    }
}

.category-directory-section .category-directory-section__title-link {
    color: var(--text);
    text-decoration: none;
    transition: color 300ms ease-out;
}

.category-directory-section .category-directory-section__title-link:hover,
.category-directory-section .category-directory-section__title-link:focus {
    color: var(--primary);
}

.category-directory-section .category-directory-section__text {
    color: var(--text-muted);
    font-size: 14px;
    line-height: 1.6;
}

.category-directory-section .category-directory-section__btn {
    border-radius: 9999px;
    background-color: var(--primary);
    color: var(--on-primary);
    font-size: 14px;
    padding: 10px 20px;
    border: none;
    text-decoration: none;
    font-weight: 400;
    transition: background-color 300ms ease-out, color 300ms ease-out;
}

.category-directory-section .category-directory-section__btn:hover,
.category-directory-section .category-directory-section__btn:focus {
    background-color: var(--primary-hover);
    color: var(--on-primary);
}

/* ===== engagement_formats_and_implementation_models ===== */
.rzm-work-formats {
    padding: 60px 0;
    background-color: var(--bg);
    color: var(--text);
    overflow-x: hidden;
}

@media (min-width: 992px) {
    .rzm-work-formats {
        padding: 100px 0;
    }
}

.rzm-work-formats .rzm-header-wrap {
    max-width: 780px;
}

.rzm-work-formats .rzm-section-title {
    font-size: 38px;
    line-height: 1.2;
    color: var(--text);
    font-weight: 400;
    margin-bottom: 16px;
    overflow-wrap: anywhere;
}

.rzm-work-formats .rzm-title-accent {
    color: var(--primary);
}

.rzm-work-formats .rzm-section-desc {
    font-size: 16px;
    line-height: 1.6;
    color: var(--text-muted);
    overflow-wrap: anywhere;
}

.rzm-work-formats .rzm-filter-btn {
    font-family: inherit;
    font-size: 14px;
    padding: 8px 18px;
    border-radius: 9999px;
    background-color: var(--surface);
    color: var(--text-muted);
    border: 1px solid var(--border);
    transition: all 300ms ease-out;
    cursor: pointer;
}

.rzm-work-formats .rzm-filter-btn:hover {
    border-color: var(--primary);
    color: var(--text);
}

.rzm-work-formats .rzm-filter-btn.active {
    background-color: var(--primary);
    color: var(--on-primary);
    border-color: var(--primary);
}

.rzm-work-formats .rzm-model-card {
    background-color: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px;
    transition: transform 300ms ease-out, border-color 300ms ease-out;
    height: 100%;
}

.rzm-work-formats .rzm-model-card:hover {
    transform: translateY(-3px);
    border-color: var(--primary);
}

.rzm-work-formats .rzm-featured-card {
    border-color: color-mix(in srgb, var(--primary) 40%, var(--border));
}

.rzm-work-formats .rzm-number-tile {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-family: monospace;
    font-size: 16px;
    font-weight: 700;
    color: var(--primary);
    background-color: var(--surface-alt);
}

.rzm-work-formats .rzm-card-badge {
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 9999px;
    background-color: var(--surface-alt);
    color: var(--accent);
    border: 1px solid var(--border);
}

.rzm-work-formats .rzm-card-title {
    font-size: 24px;
    line-height: 1.3;
    color: var(--text);
    font-weight: 400;
    overflow-wrap: anywhere;
}

.rzm-work-formats .rzm-card-summary {
    font-size: 14px;
    line-height: 1.6;
    color: var(--text-muted);
    overflow-wrap: anywhere;
}

.rzm-work-formats .rzm-detail-label {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--accent);
    font-weight: 400;
}

.rzm-work-formats .rzm-detail-value {
    font-size: 14px;
    line-height: 1.5;
    color: var(--text);
}

.rzm-work-formats .rzm-deliverables-box,
.rzm-work-formats .rzm-workflow-box {
    background-color: var(--surface-alt);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 14px;
}

.rzm-work-formats .rzm-check-icon {
    color: var(--primary);
    font-size: 16px;
    flex-shrink: 0;
    margin-top: 2px;
}

.rzm-work-formats .rzm-check-list li span {
    font-size: 13px;
    line-height: 1.5;
    color: var(--text);
}

.rzm-work-formats .rzm-step-pill {
    font-size: 11px;
    font-family: monospace;
    padding: 2px 6px;
    border-radius: 4px;
    background-color: var(--surface);
    color: var(--primary);
    border: 1px solid var(--border);
    flex-shrink: 0;
}

.rzm-work-formats .rzm-step-text {
    font-size: 12px;
    line-height: 1.4;
    color: var(--text-muted);
}

.rzm-work-formats .rzm-pill-action {
    display: inline-block;
    font-size: 14px;
    font-weight: 400;
    border-radius: 9999px;
    padding: 12px 24px;
    text-decoration: none;
    transition: background-color 300ms ease-out, color 300ms ease-out;
    background-color: var(--primary);
    color: var(--on-primary);
}

.rzm-work-formats .rzm-pill-action:hover {
    background-color: var(--primary-hover);
    color: var(--on-primary);
}

.rzm-work-formats .rzm-workflow-banner {
    background-color: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
}

.rzm-work-formats .rzm-banner-title {
    font-size: 18px;
    line-height: 1.3;
    color: var(--text);
}

.rzm-work-formats .rzm-banner-desc {
    font-size: 14px;
    line-height: 1.5;
    color: var(--text-muted);
}

.rzm-work-formats .rzm-banner-btn {
    display: inline-block;
    font-size: 13px;
    padding: 8px 16px;
    border-radius: 9999px;
    border: 1px solid var(--border);
    background-color: var(--surface-alt);
    color: var(--text);
    text-decoration: none;
    transition: all 300ms ease-out;
}

.rzm-work-formats .rzm-banner-btn:hover {
    border-color: var(--primary);
    color: var(--primary);
    background-color: var(--surface);
}

.rzm-work-formats .rzm-hidden {
    display: none !important;
}

@media (max-width: 767px) {
    .rzm-work-formats .rzm-section-title {
        font-size: 16px;
        line-height: 1.3;
        hyphens: auto;
    }

    .rzm-work-formats .rzm-card-title {
        font-size: 14px;
        line-height: 1.3;
        hyphens: auto;
    }

    .rzm-work-formats .rzm-section-desc {
        font-size: 14px;
        line-height: 1.5;
        hyphens: auto;
    }

    .rzm-work-formats .rzm-filter-container {
        flex-direction: column;
        width: 100%;
    }

    .rzm-work-formats .rzm-filter-btn {
        width: 100%;
        text-align: center;
    }

    .rzm-work-formats .rzm-cards-row {
        flex-direction: column;
    }

    .rzm-work-formats .rzm-model-card {
        padding: 16px;
    }

    .rzm-work-formats .rzm-banner-btn {
        width: 100%;
        text-align: center;
    }
}

/* ===== service_geography_and_remote_coordination ===== */
.rzm-geography-wrapper {
    padding: 80px 0;
    position: relative;
    overflow: hidden;
}

.rzm-geography-wrapper .rzm-section-heading {
    color: var(--text);
    font-size: 38px;
    line-height: 1.2;
    letter-spacing: normal;
    font-weight: 400;
}

.rzm-geography-wrapper .rzm-heading-highlight {
    color: var(--primary-text);
}

.rzm-geography-wrapper .rzm-section-summary {
    color: var(--text-muted);
    max-width: 680px;
    font-size: 16px;
    line-height: 1.6;
}

.rzm-geography-wrapper .rzm-filter-nav {
    background: var(--surface);
    border: 1px solid var(--border);
    gap: 4px;
}

.rzm-geography-wrapper .rzm-filter-btn {
    border: none;
    background: transparent;
    color: var(--text-muted);
    padding: 8px 20px;
    font-size: 14px;
    border-radius: 9999px;
    transition: all 0.3s ease-out;
}

.rzm-geography-wrapper .rzm-filter-btn:hover {
    color: var(--text);
}

.rzm-geography-wrapper .rzm-filter-btn.active {
    background: var(--primary);
    color: var(--on-primary);
}

.rzm-geography-wrapper .rzm-feature-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    transition: transform 0.3s ease-out, border-color 0.3s ease-out;
}

.rzm-geography-wrapper .rzm-feature-card:hover {
    transform: translateY(-3px);
    border-color: var(--primary);
}

.rzm-geography-wrapper .rzm-preview-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
    transition: transform 0.3s ease-out, border-color 0.3s ease-out;
}

.rzm-geography-wrapper .rzm-preview-card:hover {
    transform: translateY(-3px);
    border-color: var(--primary);
}

.rzm-geography-wrapper .rzm-media-container {
    width: 100%;
    height: 220px;
    border-bottom: 1px solid var(--border);
    overflow: hidden;
}

.rzm-geography-wrapper .rzm-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease-out;
}

.rzm-geography-wrapper .rzm-preview-card:hover .rzm-card-img {
    transform: scale(1.03);
}

.rzm-geography-wrapper .rzm-index-tile {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: var(--surface-alt);
    color: var(--primary);
    font-family: monospace, sans-serif;
    font-size: 18px;
    font-weight: 600;
}

.rzm-geography-wrapper .rzm-status-pill {
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 9999px;
    background: var(--surface-alt);
    color: var(--primary-text);
    border: 1px solid var(--border);
}

.rzm-geography-wrapper .rzm-meta-pill {
    font-size: 12px;
    padding: 3px 8px;
    border-radius: 4px;
    background: var(--surface-alt);
    color: var(--accent-text);
    border: 1px solid var(--border);
}

.rzm-geography-wrapper .rzm-meta-date {
    font-size: 12px;
    color: var(--text-muted);
}

.rzm-geography-wrapper .rzm-icon-box {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
}

.rzm-geography-wrapper .rzm-intake-icon {
    font-size: 22px;
    color: var(--on-primary);
}

.rzm-geography-wrapper .rzm-card-title {
    color: var(--text);
    font-size: 20px;
    line-height: 1.3;
    font-weight: 400;
    overflow-wrap: anywhere;
}

.rzm-geography-wrapper .rzm-title-link {
    color: var(--text);
    text-decoration: none;
    transition: color 0.3s ease-out;
}

.rzm-geography-wrapper .rzm-title-link:hover {
    color: var(--primary);
}

.rzm-geography-wrapper .rzm-card-desc {
    color: var(--text-muted);
    font-size: 15px;
    line-height: 1.6;
}

.rzm-geography-wrapper .rzm-tag-group .yhk-badge {
    background: var(--surface-alt);
    color: var(--text-muted);
    border: 1px solid var(--border);
    font-size: 12px;
    padding: 5px 10px;
    border-radius: 6px;
}

.rzm-geography-wrapper .rzm-spec-chip {
    font-size: 13px;
    color: var(--text);
    background: var(--surface-alt);
    padding: 8px 12px;
    border-radius: 6px;
    border: 1px solid var(--border);
}

.rzm-geography-wrapper .rzm-chip-icon {
    color: var(--primary);
    font-size: 16px;
}

.rzm-geography-wrapper .rzm-btn-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    border-radius: 9999px;
    padding: 12px 28px;
    font-size: 15px;
    transition: all 0.3s ease-out;
}

.rzm-geography-wrapper .yhk-btn.rzm-btn-pill {
    background: var(--primary);
    color: var(--on-primary);
    border: 1px solid var(--primary);
}

.rzm-geography-wrapper .yhk-btn.rzm-btn-pill:hover {
    background: var(--primary-hover);
    color: var(--on-primary);
}

.rzm-geography-wrapper .yhk-btn-alt.rzm-btn-pill {
    background: transparent;
    color: var(--primary);
    border: 1px solid var(--primary);
}

.rzm-geography-wrapper .yhk-btn-alt.rzm-btn-pill:hover {
    background: var(--primary);
    color: var(--on-primary);
}

.rzm-geography-wrapper .rzm-action-banner {
    background: var(--surface-alt);
    border: 1px solid var(--border);
}

.rzm-geography-wrapper .rzm-banner-title {
    color: var(--text);
    font-size: 24px;
    line-height: 1.3;
    font-weight: 400;
}

.rzm-geography-wrapper .rzm-banner-text {
    color: var(--text-muted);
    font-size: 15px;
    line-height: 1.6;
}

@media (max-width: 767px) {
    .rzm-geography-wrapper {
        padding: 60px 0;
    }

    .rzm-geography-wrapper .rzm-section-heading {
        font-size: 28px;
        hyphens: auto;
        overflow-wrap: anywhere;
    }

    .rzm-geography-wrapper .rzm-filter-nav {
        flex-direction: column;
        width: 100%;
        border-radius: 12px;
    }

    .rzm-geography-wrapper .rzm-filter-btn {
        width: 100%;
        text-align: center;
    }

    .rzm-geography-wrapper .rzm-card-title {
        font-size: 18px;
    }

    .rzm-geography-wrapper .rzm-banner-title {
        font-size: 20px;
    }
}

/* ===== schedule_an_architectural_consultation ===== */
.rzm-booking-section {
    padding: 90px 0;
    background-color: var(--bg);
    color: var(--text);
    font-family: 'Tenor Sans', sans-serif;
}

.rzm-main-heading {
    font-size: 38px;
    line-height: 1.2;
    font-weight: 400;
    color: var(--text);
    margin-bottom: 12px;
}

.rzm-accent-phrase {
    color: var(--primary);
}

.rzm-lead-text {
    font-size: 16px;
    line-height: 1.6;
    color: var(--text-muted);
    max-width: 620px;
    margin: 0 auto;
}

.rzm-form-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 36px;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.35);
    height: auto;
}

.rzm-field-group {
    display: flex;
    flex-direction: column;
}

.rzm-field-label {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text);
    margin-bottom: 8px;
}

.rzm-duration-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.rzm-duration-card {
    border: 1px solid var(--border);
    background-color: var(--surface-alt);
    border-radius: 10px;
    padding: 18px;
    cursor: pointer;
    transition: border-color 0.25s ease, background-color 0.25s ease;
}

.rzm-duration-card.active,
.rzm-duration-card:hover {
    border-color: var(--primary);
    background-color: #12161a;
}

.rzm-duration-title {
    font-size: 15px;
    font-weight: 600;
    color: var(--text);
}

.rzm-badge {
    background-color: var(--surface);
    border: 1px solid var(--border);
    color: var(--primary);
    font-size: 11px;
    padding: 3px 8px;
    border-radius: 9999px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.rzm-duration-card.active .rzm-badge {
    background-color: var(--primary);
    color: var(--on-primary);
    border-color: var(--primary);
}

.rzm-duration-desc {
    font-size: 13px;
    line-height: 1.5;
    color: var(--text-muted);
}

.rzm-input,
.rzm-select,
.rzm-textarea {
    width: 100%;
    background-color: var(--surface-alt);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 12px 16px;
    font-family: 'Tenor Sans', sans-serif;
    font-size: 14px;
    outline: none;
    transition: border-color 0.25s ease;
}

.rzm-input:focus,
.rzm-select:focus,
.rzm-textarea:focus {
    border-color: var(--primary);
}

.rzm-input::placeholder,
.rzm-textarea::placeholder {
    color: #6e7682;
    opacity: 1;
}

.rzm-select option {
    background-color: var(--surface-alt);
    color: var(--text);
}

.rzm-consent-wrap {
    background-color: var(--surface-alt);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 14px 16px;
}

.rzm-checkbox {
    background-color: var(--surface);
    border-color: var(--border);
    border-radius: 4px;
    cursor: pointer;
}

.rzm-checkbox:checked {
    background-color: var(--primary);
    border-color: var(--primary);
}

.rzm-consent-text {
    font-size: 13px;
    line-height: 1.5;
    color: var(--text-muted);
    cursor: pointer;
    margin-left: 6px;
}

.rzm-link {
    color: var(--primary);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.rzm-link:hover {
    color: var(--primary-hover);
}

.rzm-submit-btn {
    width: 100%;
    border-radius: 9999px;
    background-color: var(--primary);
    color: var(--on-primary);
    font-size: 15px;
    font-weight: 600;
    padding: 14px 28px;
    border: none;
    cursor: pointer;
    transition: background-color 0.25s ease, transform 0.2s ease;
}

.rzm-submit-btn:hover {
    background-color: var(--primary-hover);
    color: var(--on-primary);
    transform: translateY(-1px);
}

@media (max-width: 767px) {
    .rzm-booking-section {
        padding: 50px 0;
    }

    .rzm-main-heading {
        font-size: 26px;
        hyphens: auto;
    }

    .rzm-form-card {
        padding: 22px 16px;
    }

    .rzm-duration-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .rzm-duration-card {
        padding: 14px;
    }
}

/* ===== footer_and_spatial_compliance_notice ===== */
.rzm-footer {
    background-color: #0A0C0D;
    color: #EDEFF1;
    padding: 60px 0 32px 0;
    border-top: 1px solid #282E37;
    font-family: 'Tenor Sans', sans-serif;
}

.rzm-footer .rzm-footer__compliance {
    background-color: #191C1F;
    border: 1px solid #282E37;
    border-left: 4px solid #32DEF7;
    border-radius: 8px;
    padding: 24px;
    margin-bottom: 48px;
}

.rzm-footer .rzm-footer__compliance-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #32DEF7;
    margin-bottom: 12px;
}

.rzm-footer .rzm-footer__compliance-badge i {
    font-size: 18px;
}

.rzm-footer .rzm-footer__compliance-text {
    font-size: 14px;
    line-height: 1.6;
    color: #B0B6BF;
    margin-bottom: 0;
}

.rzm-footer .rzm-footer__main {
    padding-bottom: 40px;
    border-bottom: 1px solid #282E37;
}

.rzm-footer .rzm-footer__identity {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.rzm-footer .rzm-footer__brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    color: #EDEFF1;
}

.rzm-footer .rzm-footer__logo {
    max-width: 44px;
    height: 44px;
    object-fit: contain;
}

.rzm-footer .rzm-footer__brand-text {
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.04em;
    color: #FFFFFF;
}

.rzm-footer .rzm-footer__tagline {
    font-size: 14px;
    line-height: 1.6;
    color: #B0B6BF;
    margin: 0;
    max-width: 320px;
}

.rzm-footer .rzm-footer__heading {
    font-size: 16px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #32DEF7;
    margin-bottom: 20px;
}

.rzm-footer .rzm-footer__nav-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 16px;
}

.rzm-footer .rzm-footer__nav-link {
    color: #B0B6BF;
    text-decoration: none;
    font-size: 14px;
    transition: color 300ms ease-out;
}

.rzm-footer .rzm-footer__nav-link:hover,
.rzm-footer .rzm-footer__nav-link:focus {
    color: #32DEF7;
}

.rzm-footer .rzm-footer__contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.rzm-footer .rzm-footer__contact-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 14px;
    color: #B0B6BF;
    line-height: 1.5;
}

.rzm-footer .rzm-footer__contact-item i {
    color: #32DEF7;
    font-size: 16px;
    flex-shrink: 0;
    margin-top: 2px;
}

.rzm-footer .rzm-footer__contact-val {
    overflow-wrap: anywhere;
}

.rzm-footer .rzm-footer__contact-link {
    color: #B0B6BF;
    text-decoration: none;
    overflow-wrap: anywhere;
    transition: color 300ms ease-out;
}

.rzm-footer .rzm-footer__contact-link:hover,
.rzm-footer .rzm-footer__contact-link:focus {
    color: #32DEF7;
}

.rzm-footer .rzm-footer__bottom {
    padding-top: 28px;
}

.rzm-footer .rzm-footer__bottom-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.rzm-footer .rzm-footer__copyright {
    font-size: 13px;
    color: #B0B6BF;
    text-align: center;
}

.rzm-footer .rzm-footer__legal-links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 12px 24px;
}

.rzm-footer .rzm-footer__legal-link {
    font-size: 13px;
    color: #B0B6BF;
    text-decoration: none;
    transition: color 300ms ease-out;
}

.rzm-footer .rzm-footer__legal-link:hover,
.rzm-footer .rzm-footer__legal-link:focus {
    color: #32DEF7;
}

@media (min-width: 768px) {
    .rzm-footer {
        padding: 80px 0 40px 0;
    }

    .rzm-footer .rzm-footer__bottom-wrap {
        flex-direction: row;
    }

    .rzm-footer .rzm-footer__copyright {
        text-align: left;
    }
}

@media (max-width: 767px) {
    .rzm-footer .rzm-footer__nav-list {
        grid-template-columns: 1fr;
    }

    .rzm-footer .rzm-footer__heading {
        font-size: 15px;
        margin-bottom: 14px;
    }
}

.rz-body-root {
    background-color: var(--bg, #0A0C0D);
    color: var(--text, #EDEFF1);
    font-family: 'Tenor Sans', sans-serif;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
}

.rz-header-block {
    background-color: var(--bg, #0A0C0D);
    border-bottom: 1px solid var(--border, #282E37);
    z-index: 1040;
}

.rz-header-block .rz-navbar {
    background-color: var(--bg, #0A0C0D);
    padding: 14px 0;
}

.rz-header-block .rz-brand {
    text-decoration: none;
}

.rz-header-block .rz-brand-logo {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

.rz-header-block .rz-brand-title {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 1.15rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    color: var(--text, #EDEFF1);
}

.rz-header-block .rz-toggler {
    border: 1px solid var(--border, #282E37);
    border-radius: 6px;
    padding: 6px 10px;
    background-color: var(--surface, #191C1F);
    color: var(--text, #EDEFF1);
    box-shadow: none;
}

.rz-header-block .rz-toggler:focus {
    box-shadow: 0 0 0 2px var(--primary, #32DEF7);
    outline: none;
}

.rz-header-block .rz-toggler-icon {
    font-size: 1.5rem;
    color: var(--text, #EDEFF1);
    display: inline-flex;
}

.rz-header-block .rz-nav-items {
    gap: 8px;
}

.rz-header-block .rz-link {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 0.95rem;
    color: var(--text-muted, #B0B6BF);
    padding: 8px 14px;
    text-decoration: none;
    transition: color 200ms ease, background-color 200ms ease;
    border-radius: 4px;
}

.rz-header-block .rz-link:hover,
.rz-header-block .rz-link:focus,
.rz-header-block .rz-link.active {
    color: var(--primary, #32DEF7);
    background-color: rgba(50, 222, 247, 0.05);
}

.rz-header-block .rz-dropdown-menu {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    border-radius: 8px;
    padding: 8px 0;
    margin-top: 8px;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45);
}

.rz-header-block .rz-dropdown-link {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 0.9rem;
    color: var(--text, #EDEFF1);
    padding: 10px 18px;
    text-decoration: none;
    transition: background-color 200ms ease, color 200ms ease;
}

.rz-header-block .rz-dropdown-link:hover,
.rz-header-block .rz-dropdown-link:focus {
    background-color: var(--surface-alt, #101317);
    color: var(--primary, #32DEF7);
}

.rz-header-block .rz-divider {
    border-color: var(--border, #282E37);
    opacity: 1;
    margin: 6px 0;
}

.rz-header-block .rz-header-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: 'Tenor Sans', sans-serif;
    font-size: 0.88rem;
    font-weight: 400;
    text-decoration: none;
    border-radius: 9999px;
    background-color: var(--accent, #BDEEF5);
    color: var(--on-accent, #111111);
    padding: 8px 22px;
    border: none;
    transition: background-color 250ms ease, color 250ms ease, transform 200ms ease;
}

.rz-header-block .rz-header-action-btn:hover,
.rz-header-block .rz-header-action-btn:focus {
    background-color: var(--text, #EDEFF1);
    color: var(--on-accent, #111111);
    transform: translateY(-1px);
}

@media (max-width: 991.98px) {
    .rz-header-block .navbar-collapse {
        background-color: var(--surface, #191C1F);
        border: 1px solid var(--border, #282E37);
        border-radius: 8px;
        padding: 16px 20px;
        margin-top: 12px;
    }

    .rz-header-block .rz-nav-items {
        margin: 0 0 12px 0;
        gap: 4px;
    }

    .rz-header-block .rz-link {
        padding: 10px 12px;
        font-size: 0.92rem;
    }

    .rz-header-block .rz-dropdown-menu {
        border: none;
        background-color: var(--surface-alt, #101317);
        margin-top: 4px;
        margin-bottom: 8px;
        padding-left: 8px;
    }

    .rz-header-block .rz-dropdown-link {
        color: var(--text-muted, #B0B6BF);
        padding: 8px 12px;
    }

    .rz-header-block .rz-dropdown-link:hover {
        color: var(--primary, #32DEF7);
    }

    .rz-header-block .rz-header-action-btn {
        width: 100%;
        text-align: center;
    }
}

.rz-hero-section {
    position: relative;
    padding: 60px 0;
    background-color: var(--dark-band, #040608);
    overflow: hidden;
}

@media (min-width: 992px) {
    .rz-hero-section {
        padding: 80px 0;
    }
}

.rz-hero-media-backdrop {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background-color: var(--dark-band, #040608);
}

.rz-hero-overlay {
    position: absolute;
    inset: 0;
    background-color: rgba(4, 6, 8, 0.88);
}

.rz-hero-content-layer {
    z-index: 2;
}

.rz-hero-core {
    max-width: 760px;
    margin: 0 auto;
}

.rz-hero-eyebrow {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--primary, #32DEF7);
    margin-bottom: 16px;
}

.rz-hero-title {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: 400;
    font-size: 26px;
    line-height: 1.25;
    color: var(--on-dark, #FFFFFF);
    margin-bottom: 20px;
    overflow-wrap: anywhere;
    hyphens: auto;
}

@media (min-width: 768px) {
    .rz-hero-title {
        font-size: 40px;
        line-height: 1.15;
    }
}

@media (min-width: 1200px) {
    .rz-hero-title {
        font-size: 48px;
        line-height: 1.12;
    }
}

.rz-hero-lead {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: var(--on-dark-muted, #B6BCC3);
    margin-bottom: 14px;
}

.rz-hero-detail {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 14px;
    line-height: 1.5;
    color: var(--on-dark-muted, #B6BCC3);
    margin-bottom: 28px;
}

.rz-hero-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background-color: var(--primary, #32DEF7);
    color: var(--on-primary, #111111);
    border-radius: 9999px;
    padding: 12px 28px;
    text-decoration: none;
    font-size: 15px;
    border: 1px solid transparent;
    transition: all 300ms ease-out;
}

.rz-hero-btn:hover,
.rz-hero-btn:focus {
    background-color: var(--primary-hover, #0BD8F5);
    color: var(--on-primary, #111111);
    transform: translateY(-2px);
}

.rz-catalog-section {
    background-color: var(--surface-alt, #101317);
    padding: 50px 0 70px 0;
}

.rz-catalog-title {
    font-size: 24px;
    color: var(--text, #EDEFF1);
    line-height: 1.25;
    margin: 0;
    overflow-wrap: anywhere;
}

@media (min-width: 768px) {
    .rz-catalog-title {
        font-size: 32px;
    }
}

.rz-catalog-intro {
    font-size: 14px;
    color: var(--text-muted, #B0B6BF);
    line-height: 1.6;
}

.rz-filter-chip {
    background-color: var(--surface, #191C1F);
    color: var(--text-muted, #B0B6BF);
    border: 1px solid var(--border, #282E37);
    border-radius: 9999px;
    padding: 6px 16px;
    font-size: 13px;
    cursor: pointer;
    transition: all 250ms ease-out;
}

.rz-filter-chip:hover,
.rz-filter-chip.active {
    background-color: var(--primary, #32DEF7);
    color: var(--on-primary, #111111);
    border-color: var(--primary, #32DEF7);
}

.rz-search-wrap {
    min-width: 240px;
    max-width: 320px;
    width: 100%;
}

.rz-search-icon-addon {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    border-right: none;
    color: var(--text-muted, #B0B6BF);
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

.rz-search-input {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    color: var(--text, #EDEFF1);
    font-size: 13px;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}

.rz-search-input::placeholder {
    color: var(--text-muted, #B0B6BF);
    opacity: 0.85;
}

.rz-search-input:focus {
    background-color: var(--surface, #191C1F);
    border-color: var(--primary, #32DEF7);
    color: var(--text, #EDEFF1);
    box-shadow: 0 0 0 2px rgba(50, 222, 247, 0.2);
}

.rz-card {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    border-radius: 12px;
    overflow: hidden;
    transition: transform 300ms ease-out, border-color 300ms ease-out;
}

.rz-card:hover {
    transform: translateY(-3px);
    border-color: var(--primary, #32DEF7);
}

.rz-card-media-box {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-bottom: 1px solid var(--border, #282E37);
    background-color: var(--surface-alt, #101317);
}

.rz-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 400ms ease-out;
}

.rz-card:hover .rz-card-img {
    transform: scale(1.03);
}

.rz-badge {
    display: inline-block;
    font-size: 11px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    background-color: rgba(50, 222, 247, 0.12);
    color: var(--primary, #32DEF7);
    border: 1px solid var(--primary, #32DEF7);
    border-radius: 4px;
    padding: 2px 8px;
}

.rz-meta-date,
.rz-author-name {
    font-size: 12px;
    color: var(--text-muted, #B0B6BF);
}

.rz-card-title {
    font-size: 17px;
    line-height: 1.35;
    margin: 8px 0;
    overflow-wrap: anywhere;
}

.rz-card-title--compact {
    font-size: 14px;
    line-height: 1.3;
}

.rz-card-link {
    color: var(--text, #EDEFF1);
    text-decoration: none;
    transition: color 250ms ease-out;
}

.rz-card-link:hover,
.rz-card-link:focus {
    color: var(--primary, #32DEF7);
}

.rz-card-text {
    font-size: 13px;
    line-height: 1.55;
    color: var(--text-muted, #B0B6BF);
    margin-bottom: 0;
    overflow-wrap: anywhere;
}

.rz-read-link {
    color: var(--primary, #32DEF7);
    text-decoration: none;
    font-size: 13px;
    white-space: nowrap;
    transition: color 250ms ease-out, transform 250ms ease-out;
}

.rz-read-link:hover,
.rz-read-link:focus {
    color: var(--primary-hover, #0BD8F5);
    transform: translateX(2px);
}

.rz-submit-section {
    background-color: var(--dark-band, #040608);
    padding: 60px 0;
}

.rz-submit-box {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    border-radius: 12px;
}

.rz-submit-eyebrow {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--primary, #32DEF7);
    margin-bottom: 8px;
}

.rz-submit-title {
    font-size: 22px;
    color: var(--on-dark, #FFFFFF);
    margin-bottom: 8px;
    overflow-wrap: anywhere;
}

@media (min-width: 768px) {
    .rz-submit-title {
        font-size: 28px;
    }
}

.rz-submit-desc {
    font-size: 14px;
    color: var(--on-dark-muted, #B6BCC3);
    margin-bottom: 0;
}

.rz-label {
    font-size: 13px;
    color: var(--text, #EDEFF1);
    margin-bottom: 6px;
}

.rz-input,
.rz-textarea {
    background-color: var(--surface-alt, #101317);
    border: 1px solid var(--border, #282E37);
    color: var(--text, #EDEFF1);
    border-radius: 6px;
    font-size: 14px;
    padding: 10px 14px;
}

.rz-input::placeholder,
.rz-textarea::placeholder {
    color: var(--text-muted, #B0B6BF);
    opacity: 0.8;
}

.rz-input:focus,
.rz-textarea:focus {
    background-color: var(--surface-alt, #101317);
    border-color: var(--primary, #32DEF7);
    color: var(--text, #EDEFF1);
    box-shadow: 0 0 0 2px rgba(50, 222, 247, 0.2);
}

.rz-checkbox {
    background-color: var(--surface-alt, #101317);
    border: 1px solid var(--border, #282E37);
    border-radius: 4px;
    cursor: pointer;
}

.rz-checkbox:checked {
    background-color: var(--primary, #32DEF7);
    border-color: var(--primary, #32DEF7);
}

.rz-consent-label {
    font-size: 13px;
    color: var(--text-muted, #B0B6BF);
    line-height: 1.4;
}

.rz-consent-link {
    color: var(--primary, #32DEF7);
    text-decoration: underline;
}

.rz-consent-link:hover {
    color: var(--primary-hover, #0BD8F5);
}

.rz-submit-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--primary, #32DEF7);
    color: var(--on-primary, #111111);
    border-radius: 9999px;
    padding: 12px 32px;
    border: none;
    font-size: 15px;
    transition: background-color 250ms ease-out, transform 250ms ease-out;
}

.rz-submit-btn:hover,
.rz-submit-btn:focus {
    background-color: var(--primary-hover, #0BD8F5);
    color: var(--on-primary, #111111);
    transform: translateY(-2px);
}

.rzm-footer {
    background-color: #0A0C0D;
    color: #EDEFF1;
    padding: 60px 0 32px 0;
    border-top: 1px solid #282E37;
    font-family: 'Tenor Sans', sans-serif;
}

.rzm-footer .rzm-footer__compliance {
    background-color: #191C1F;
    border: 1px solid #282E37;
    border-left: 4px solid #32DEF7;
    border-radius: 8px;
    padding: 24px;
    margin-bottom: 48px;
}

.rzm-footer .rzm-footer__compliance-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #32DEF7;
    margin-bottom: 12px;
}

.rzm-footer .rzm-footer__compliance-badge i {
    font-size: 18px;
}

.rzm-footer .rzm-footer__compliance-text {
    font-size: 14px;
    line-height: 1.6;
    color: #B0B6BF;
    margin-bottom: 0;
}

.rzm-footer .rzm-footer__main {
    padding-bottom: 40px;
    border-bottom: 1px solid #282E37;
}

.rzm-footer .rzm-footer__identity {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.rzm-footer .rzm-footer__brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    color: #EDEFF1;
}

.rzm-footer .rzm-footer__logo {
    max-width: 44px;
    height: 44px;
    object-fit: contain;
}

.rzm-footer .rzm-footer__brand-text {
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.04em;
    color: #FFFFFF;
}

.rzm-footer .rzm-footer__tagline {
    font-size: 14px;
    line-height: 1.6;
    color: #B0B6BF;
    margin: 0;
    max-width: 320px;
}

.rzm-footer .rzm-footer__heading {
    font-size: 16px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #32DEF7;
    margin-bottom: 20px;
}

.rzm-footer .rzm-footer__nav-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 16px;
}

.rzm-footer .rzm-footer__nav-link {
    color: #B0B6BF;
    text-decoration: none;
    font-size: 14px;
    transition: color 300ms ease-out;
}

.rzm-footer .rzm-footer__nav-link:hover,
.rzm-footer .rzm-footer__nav-link:focus {
    color: #32DEF7;
}

.rzm-footer .rzm-footer__contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.rzm-footer .rzm-footer__contact-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 14px;
    color: #B0B6BF;
    line-height: 1.5;
}

.rzm-footer .rzm-footer__contact-item i {
    color: #32DEF7;
    font-size: 16px;
    flex-shrink: 0;
    margin-top: 2px;
}

.rzm-footer .rzm-footer__contact-val {
    overflow-wrap: anywhere;
}

.rzm-footer .rzm-footer__contact-link {
    color: #B0B6BF;
    text-decoration: none;
    overflow-wrap: anywhere;
    transition: color 300ms ease-out;
}

.rzm-footer .rzm-footer__contact-link:hover,
.rzm-footer .rzm-footer__contact-link:focus {
    color: #32DEF7;
}

.rzm-footer .rzm-footer__bottom {
    padding-top: 28px;
}

.rzm-footer .rzm-footer__bottom-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.rzm-footer .rzm-footer__copyright {
    font-size: 13px;
    color: #B0B6BF;
    text-align: center;
}

.rzm-footer .rzm-footer__legal-links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 12px 24px;
}

.rzm-footer .rzm-footer__legal-link {
    font-size: 13px;
    color: #B0B6BF;
    text-decoration: none;
    transition: color 300ms ease-out;
}

.rzm-footer .rzm-footer__legal-link:hover,
.rzm-footer .rzm-footer__legal-link:focus {
    color: #32DEF7;
}

@media (min-width: 768px) {
    .rzm-footer {
        padding: 80px 0 40px 0;
    }

    .rzm-footer .rzm-footer__bottom-wrap {
        flex-direction: row;
    }

    .rzm-footer .rzm-footer__copyright {
        text-align: left;
    }
}

@media (max-width: 767.98px) {
    .rzm-footer .rzm-footer__nav-list {
        grid-template-columns: 1fr;
    }

    .rzm-footer .rzm-footer__heading {
        font-size: 15px;
        margin-bottom: 14px;
    }

    .rz-search-wrap {
        max-width: 100%;
    }
}


/* ===== PAGE: xactimate-brand-page ===== */
.xact-workflow-block .xact-mockup-browser, .xact-scenario-block .xact-mockup-browser { border: 1px solid #282E37; border-radius: 12px; background-color: #191C1F; overflow: hidden; box-shadow: 0 16px 32px rgba(0, 0, 0, 0.45); } .xact-workflow-block .xact-mockup-bar, .xact-scenario-block .xact-mockup-bar { background-color: #101317; padding: 10px 16px; display: flex; align-items: center; border-bottom: 1px solid #282E37; } .xact-workflow-block .xact-mockup-dot, .xact-scenario-block .xact-mockup-dot { width: 10px; height: 10px; border-radius: 50%; display: inline-block; margin-right: 6px; background-color: #282E37; } .xact-workflow-block .xact-mockup-dot:nth-child(1) { background-color: #ff5f56; } .xact-workflow-block .xact-mockup-dot:nth-child(2) { background-color: #ffbd2e; } .xact-workflow-block .xact-mockup-dot:nth-child(3) { background-color: #27c93f; } .xact-scenario-block .js-tab-btn { background: #191C1F; transition: all 300ms ease-out; } .xact-scenario-block .js-tab-btn:hover { border-color: #32DEF7 !px solid; transform: translateY(-2px); } .xact-scenario-block .js-tab-btn.active { border-color: #32DEF7 !important; background: #101317; box-shadow: inset 4px 0 0 #32DEF7; } .xact-curriculum-block .xact-number-tile { width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; border: 1px solid #282E37; border-radius: 6px; font-family: monospace; font-size: 1.1rem; color: #32DEF7; background: #101317; } .xact-inquiry-block .form-control:focus, .xact-inquiry-block .form-select:focus { border-color: #32DEF7; box-shadow: 0 0 0 0.25rem rgba(50, 222, 247, 0.25); } .xact-inquiry-block .form-check-input:checked { background-color: #32DEF7; border-color: #32DEF7; } @media (max-width: 767px) { .xact-workflow-block .ratio, .xact-scenario-block .ratio { aspect-ratio: 16/9; } }

/* ===== PAGE: about ===== */
.rzm-about-core { background-color: var(--bg); padding: 80px 0; color: var(--text); font-family: 'Tenor Sans', sans-serif; }
.rzm-headline { font-size: 34px; line-height: 1.25; color: var(--text); font-weight: 400; }
.rzm-accent-text { color: var(--primary); display: block; }
.rzm-lead-desc { color: var(--text-muted); font-size: 17px; line-height: 1.6; max-width: 780px; margin: 0 auto; }
.rzm-icon-column { padding: 16px; }
.rzm-round-badge { width: 54px; height: 54px; border-radius: 50%; background-color: var(--primary); color: var(--on-primary); display: flex; align-items: center; justify-content: center; font-size: 24px; }
.rzm-column-title { font-size: 20px; line-height: 1.3; color: var(--text); margin-bottom: 10px; }
.rzm-column-desc { font-size: 15px; color: var(--text-muted); line-height: 1.6; margin-bottom: 0; }
.rzm-browser-frame { border: 1px solid var(--border); border-radius: 12px; overflow: hidden; background: var(--surface); box-shadow: 0 16px 32px rgba(0, 0, 0, 0.45); transform: rotate(1deg); transition: all 300ms ease-out; }
.rzm-browser-frame:hover { transform: translateY(-4px) rotate(0deg); }
.rzm-browser-bar { background: var(--surface_alt); padding: 10px 14px; display: flex; align-items: center; gap: 6px; border-bottom: 1px solid var(--border); }
.rzm-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--border); display: inline-block; }
.rzm-browser-url { margin-left: 12px; font-size: 12px; color: var(--text-muted); letter-spacing: 0.5px; }
.rzm-browser-screen img { display: block; object-fit: cover; aspect-ratio: 16/10; width: 100%; height: auto; }
.rzm-philosophy-card { padding: 16px; }
.rzm-tech-tag { font-size: 12px; text-transform: uppercase; letter-spacing: 1.5px; color: var(--primary); font-weight: 400; }
.rzm-card-title { font-size: 24px; line-height: 1.3; }
.rzm-muted-text { color: var(--text-muted); font-size: 15px; line-height: 1.65; }
.rzm-matrix-grid-section { background-color: var(--dark-band); padding: 85px 0; color: var(--text); }
.rzm-num-card { background: var(--surface); border: 1px solid var(--border); border-radius: 10px; padding: 28px 24px; transition: all 300ms ease-out; }
.rzm-num-card:hover { transform: translateY(-3px); border-color: var(--primary); }
.rzm-num-tile { width: 44px; height: 44px; border: 1px solid var(--border); display: flex; align-items: center; justify-content: center; font-family: monospace; font-size: 17px; font-weight: 700; color: var(--primary); margin-bottom: 18px; border-radius: 6px; background-color: var(--surface_alt); }
.rzm-tile-heading { font-size: 19px; line-height: 1.3; color: var(--text); margin-bottom: 12px; }
.rzm-tile-body { font-size: 14px; line-height: 1.6; color: var(--text-muted); margin-bottom: 0; }
.rzm-num-card-accent { border-color: rgba(50, 222, 247, 0.4); }
.rzm-num-tile-accent { background: var(--primary); color: var(--on-primary); border-color: var(--primary); }
.rzm-inline-link { color: var(--primary); font-size: 14px; text-decoration: none; font-weight: 400; }
.rzm-inline-link:hover { color: var(--accent); }
.rzm-advisory-section { background-color: var(--surface_alt); padding: 85px 0; color: var(--text); }
.rzm-contact-icon { width: 42px; height: 42px; border-radius: 50%; border: 1px solid var(--border); color: var(--primary); display: flex; align-items: center; justify-content: center; font-size: 18px; background: var(--surface); flex-shrink: 0; }
.rzm-contact-label { font-size: 12px; text-transform: uppercase; letter-spacing: 1px; color: var(--text-muted); }
.rzm-contact-val { color: var(--text); font-size: 16px; transition: color 200ms ease; }
.rzm-contact-val:hover { color: var(--primary); }
.rzm-form-panel { background: var(--surface); border: 1px solid var(--border); border-radius: 12px; padding: 32px 28px; box-shadow: 0 12px 24px rgba(0, 0, 0, 0.35); }
.rzm-form-heading { font-size: 22px; color: var(--text); }
.rzm-field-label { font-size: 13px; color: var(--text-muted); margin-bottom: 6px; display: block; }
.rzm-input, .rzm-select, .rzm-textarea { background: var(--surface_alt); border: 1px solid var(--border); color: var(--text); border-radius: 6px; padding: 10px 14px; font-size: 14px; font-family: inherit; transition: border-color 200ms ease; }
.rzm-input:focus, .rzm-select:focus, .rzm-textarea:focus { outline: none; border-color: var(--primary); background: var(--surface_alt); color: var(--text); }
.rzm-input::placeholder, .rzm-textarea::placeholder { color: #697380; opacity: 1; }
.rzm-select option { background: var(--surface); color: var(--text); }
.rzm-consent-label { font-size: 12px; line-height: 1.5; color: var(--text-muted); user-select: none; }
.rzm-legal-link { color: var(--primary); text-decoration: underline; }
.rzm-legal-link:hover { color: var(--accent); }
.rzm-error-text { font-size: 12px; color: #ff6b6b; }
.rzm-success-box { background: rgba(50, 222, 247, 0.08); border: 1px solid var(--primary); border-radius: 6px; font-size: 13px; color: var(--text); }
@media (max-width: 767px) {
  .rzm-about-core, .rzm-matrix-grid-section, .rzm-advisory-section { padding: 50px 0; }
  .rzm-headline { font-size: 24px; }
  .rzm-column-title { font-size: 18px; }
  .rzm-card-title { font-size: 18px; }
  .rzm-tile-heading { font-size: 16px; }
  .rzm-form-heading { font-size: 18px; }
  .rzm-browser-frame { transform: none; margin-bottom: 24px; }
  .rzm-browser-frame:hover { transform: none; }
  .rzm-form-panel { padding: 20px 16px; }
}

/* ===== PAGE: contact ===== */
.rz-contact-hub{background-color:var(--bg);color:var(--text);font-family:'Tenor Sans',sans-serif;}.rz-contact-hub__heading{font-size:38px;line-height:1.2;font-weight:400;color:var(--text);margin-bottom:0;overflow-wrap:anywhere;}.rz-contact-hub__highlight{color:var(--primary);display:inline;}.rz-contact-hub__lead{font-size:16px;line-height:1.6;color:var(--text-muted);max-width:720px;margin-left:auto;margin-right:auto;overflow-wrap:anywhere;}.rz-contact-hub__info-card{background-color:var(--surface);border:1px solid var(--border);border-radius:12px;transition:border-color 300ms ease-out;}.rz-contact-hub__info-card:hover{border-color:var(--primary);}.rz-contact-hub__icon-box{width:42px;height:42px;border-radius:50%;background-color:rgba(50,222,247,0.12);border:1px solid rgba(50,222,247,0.3);color:var(--primary);font-size:18px;flex-shrink:0;}.rz-contact-hub__card-title{font-size:20px;line-height:1.3;font-weight:400;color:var(--text);overflow-wrap:anywhere;}.rz-contact-hub__card-desc{font-size:14px;line-height:1.5;color:var(--text-muted);overflow-wrap:anywhere;}.rz-contact-hub__data-value{font-size:15px;line-height:1.5;color:var(--text);overflow-wrap:anywhere;}.rz-contact-hub__label{font-size:14px;color:var(--text-muted);}.rz-contact-hub__link{color:var(--primary);text-decoration:none;font-size:15px;transition:color 300ms ease-out;overflow-wrap:anywhere;}.rz-contact-hub__link:hover{color:var(--primary-hover);text-decoration:underline;}.rz-contact-hub__link-wa{color:var(--primary);font-weight:400;}.rz-contact-hub__hours{border-top:1px solid var(--border);}.rz-contact-hub__hours-icon{color:var(--primary);font-size:15px;}.rz-contact-hub__hours-text{font-size:13px;color:var(--text-muted);line-height:1.4;}.rz-contact-hub__form-card{background-color:var(--surface);border:1px solid var(--border);border-radius:12px;}.rz-contact-hub__form-title{font-size:24px;line-height:1.3;font-weight:400;color:var(--text);overflow-wrap:anywhere;}.rz-contact-hub__form-subtitle{font-size:14px;line-height:1.5;color:var(--text-muted);overflow-wrap:anywhere;}.rz-contact-hub__field-group{display:flex;flex-direction:column;gap:6px;}.rz-contact-hub__input-label{font-size:13px;color:var(--text-muted);letter-spacing:0.5px;text-transform:uppercase;}.rz-contact-hub__required{color:var(--primary);}.rz-contact-hub__input,.rz-contact-hub__select,.rz-contact-hub__textarea{background-color:var(--surface-alt);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:10px 14px;font-size:15px;font-family:'Tenor Sans',sans-serif;transition:border-color 300ms ease-out;}.rz-contact-hub__input:focus,.rz-contact-hub__select:focus,.rz-contact-hub__textarea:focus{background-color:var(--surface-alt);border-color:var(--primary);color:var(--text);box-shadow:none;outline:none;}.rz-contact-hub__input::placeholder,.rz-contact-hub__textarea::placeholder{color:var(--text-muted);opacity:0.8;}.rz-contact-hub__select option{background-color:var(--surface);color:var(--text);}.rz-contact-hub__checkbox-wrapper{display:flex;align-items:flex-start;gap:8px;margin-top:6px;}.rz-contact-hub__checkbox{background-color:var(--surface-alt);border:1px solid var(--border);width:18px;height:18px;margin-top:2px;border-radius:4px;flex-shrink:0;cursor:pointer;}.rz-contact-hub__checkbox:checked{background-color:var(--primary);border-color:var(--primary);}.rz-contact-hub__checkbox:focus{box-shadow:none;border-color:var(--primary);}.rz-contact-hub__checkbox-label{font-size:13px;line-height:1.5;color:var(--text-muted);cursor:pointer;}.rz-contact-hub__checkbox-label .rz-contact-hub__link{font-size:13px;}.rz-contact-hub__feedback{background-color:rgba(239,68,68,0.15);border:1px solid #ef4444;color:#fca5a5;font-size:13px;border-radius:6px;padding:10px 14px;line-height:1.4;}.rz-contact-hub__feedback--success{background-color:rgba(16,185,129,0.15);border-color:#10b981;color:#6ee7b7;}.rz-contact-hub__submit-btn{background-color:var(--primary);color:var(--on-primary);border-radius:9999px;border:none;padding:12px 28px;font-size:15px;font-weight:400;letter-spacing:0.5px;transition:background-color 300ms ease-out;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;}.rz-contact-hub__submit-btn:hover{background-color:var(--primary-hover);color:var(--on-primary);}@media(max-width:767px){.rz-contact-hub__heading{font-size:16px;line-height:1.3;hyphens:auto;}.rz-contact-hub__card-title{font-size:14px;hyphens:auto;}.rz-contact-hub__form-title{font-size:14px;hyphens:auto;}.rz-contact-hub__lead{font-size:14px;line-height:1.5;}.rz-contact-hub__input,.rz-contact-hub__select,.rz-contact-hub__textarea{font-size:14px;padding:8px 12px;}.rz-contact-hub__submit-btn{padding:10px 20px;font-size:14px;}}

/* ===== PAGE: faq ===== */
.rzm-faq-section {
  background-color: var(--bg);
  color: var(--text);
  font-family: 'Tenor Sans', sans-serif;
}

.rzm-faq-heading {
  color: var(--text);
  font-size: clamp(24px, 4vw, 38px);
  line-height: 1.2;
  font-weight: 400;
  letter-spacing: normal;
}

.rzm-faq-highlight {
  color: var(--primary);
  display: block;
}

.rzm-faq-sublead {
  color: var(--text-muted);
  font-size: 16px;
  line-height: 1.6;
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}

.rzm-faq-toolbar {
  background-color: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
}

.rzm-search-input {
  background-color: var(--surface-alt) !important;
  border: 1px solid var(--border) !important;
  color: var(--text) !important;
  border-radius: 9999px !important;
  font-size: 14px;
  padding-top: 10px;
  padding-bottom: 10px;
  box-shadow: none !important;
}

.rzm-search-input:focus {
  border-color: var(--primary) !important;
}

.rzm-search-input::placeholder {
  color: var(--text-muted) !important;
  opacity: 0.8;
}

.rzm-action-btn {
  font-size: 13px !important;
  padding: 8px 18px !important;
  border-radius: 9999px !important;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.2s ease;
}

.rzm-filter-btn {
  background: var(--surface);
  border: 1px solid var(--border);
  color: var(--text-muted);
  padding: 8px 18px;
  border-radius: 9999px;
  font-size: 13px;
  cursor: pointer;
  transition: all 0.2s ease;
  outline: none;
}

.rzm-filter-btn:hover {
  border-color: var(--primary);
  color: var(--text);
}

.rzm-filter-btn.active {
  background-color: var(--primary);
  border-color: var(--primary);
  color: var(--on-primary);
}

.rzm-faq-card {
  background-color: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  transition: border-color 0.25s ease, background-color 0.25s ease;
}

.rzm-faq-card:hover {
  border-color: var(--primary);
}

.rzm-faq-header {
  padding: 18px 22px;
  cursor: pointer;
  user-select: none;
  outline: none;
}

.rzm-faq-header:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: -2px;
}

.rzm-tile-num {
  font-family: monospace, monospace;
  font-size: 14px;
  color: var(--primary);
  background-color: var(--surface-alt);
  border: 1px solid var(--border);
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  font-weight: 600;
}

.rzm-faq-title {
  font-size: clamp(15px, 2.5vw, 17px);
  color: var(--text);
  font-weight: 400;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.rzm-toggle-indicator {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: var(--surface-alt);
  color: var(--primary);
  border: 1px solid var(--border);
  transition: transform 0.3s ease, background-color 0.2s ease;
}

.rzm-faq-card.is-active .rzm-toggle-indicator {
  transform: rotate(45deg);
  background-color: var(--primary);
  color: var(--on-primary);
}

.rzm-faq-body {
  display: none;
  padding: 0 22px 22px 22px;
}

.rzm-faq-card.is-active .rzm-faq-body {
  display: block;
}

.rzm-faq-content {
  border-top: 1px solid var(--border);
  color: var(--text);
  font-size: 15px;
  line-height: 1.6;
}

.rzm-faq-content p {
  overflow-wrap: anywhere;
}

.rzm-no-results {
  background-color: var(--surface);
  border: 1px dashed var(--border);
  border-radius: 12px;
}

.rzm-no-results-title {
  color: var(--text);
  font-size: 20px;
}

.rzm-cta-box {
  background-color: var(--surface_alt);
  border: 1px solid var(--border);
  border-radius: 14px;
}

.rzm-cta-title {
  color: var(--text);
  font-size: clamp(18px, 3vw, 24px);
  font-weight: 400;
}

@media (max-width: 767px) {
  .rzm-faq-header {
    padding: 16px 14px;
  }
  .rzm-faq-body {
    padding: 0 14px 18px 14px;
  }
  .rzm-tile-num {
    width: 32px;
    height: 32px;
    font-size: 12px;
  }
  .rzm-filter-btn {
    font-size: 12px;
    padding: 6px 14px;
  }
}

/* ===== PAGE: privacy ===== */
.privacy-content-block {
  background-color: var(--bg);
  color: var(--text);
  font-family: var(--typography-body-font-family, 'Tenor Sans', sans-serif);
  position: relative;
}

.privacy-content-block .privacy-title-accent {
  color: var(--primary);
}

.privacy-content-block .privacy-lead-text {
  font-size: 1.05rem;
  line-height: 1.6;
  color: var(--text-muted);
}

.privacy-content-block .privacy-filter-btn {
  border: 1px solid var(--border);
  background: var(--surface);
  color: var(--text-muted);
  border-radius: 9999px;
  padding: 8px 18px;
  font-size: 0.875rem;
  font-family: inherit;
  cursor: pointer;
  transition: all 0.25s ease;
  outline: none;
}

.privacy-content-block .privacy-filter-btn:hover {
  border-color: var(--primary);
  color: var(--text);
}

.privacy-content-block .privacy-filter-btn.active {
  background: var(--primary);
  color: var(--on-primary);
  border-color: var(--primary);
}

.privacy-content-block .privacy-card {
  background-color: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  transition: border-color 0.3s ease, transform 0.3s ease;
}

.privacy-content-block .privacy-card:hover {
  border-color: var(--primary);
  transform: translateY(-2px);
}

.privacy-content-block .privacy-num-tile {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--border);
  border-radius: 8px;
  background-color: var(--surface-alt);
  color: var(--primary);
  font-family: monospace, 'Courier New', Courier;
  font-size: 1.15rem;
  font-weight: 700;
}

.privacy-content-block .privacy-card-title {
  color: var(--text);
  font-size: 1.35rem;
  line-height: 1.3;
}

.privacy-content-block .privacy-card-desc {
  font-size: 0.95rem;
  line-height: 1.65;
}

.privacy-content-block .privacy-meta-date {
  font-size: 0.8rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.privacy-content-block .privacy-list {
  list-style: square;
  padding-left: 1.25rem;
  font-size: 0.95rem;
  line-height: 1.6;
}

.privacy-content-block .privacy-list-term {
  color: var(--text);
}

.privacy-content-block .privacy-inline-link {
  color: var(--primary-text);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color 0.2s ease;
}

.privacy-content-block .privacy-inline-link:hover {
  color: var(--primary-hover);
}

.privacy-content-block .privacy-contact-box {
  background-color: var(--surface-alt, #101317);
  border: 1px solid var(--border);
  border-radius: 12px;
  height: auto;
}

@media (max-width: 767px) {
  .privacy-content-block .privacy-card-title {
    font-size: 1.15rem;
  }
  .privacy-content-block .privacy-card {
    padding: 1.25rem !important;
  }
  .privacy-content-block .privacy-num-tile {
    width: 40px;
    height: 40px;
    font-size: 1rem;
  }
}

/* ===== PAGE: terms ===== */
.terms-section{background-color:var(--bg);color:var(--text);font-family:'Tenor Sans',sans-serif;}.terms-section .text-primary-custom{color:var(--primary);}.terms-section .terms-subtitle{max-width:680px;color:var(--text-muted);font-size:16px;line-height:1.6;}.terms-section .yhk-card{background-color:var(--surface);border:1px solid var(--border);border-radius:12px;transition:border-color .3s ease,transform .3s ease;}.terms-section .terms-sidebar{top:96px;height:auto;align-self:flex-start;}.terms-section .terms-search-icon{background-color:var(--surface-alt);border:1px solid var(--border);border-right:none;color:var(--text-muted);border-top-left-radius:9999px;border-bottom-left-radius:9999px;padding-left:14px;padding-right:10px;}.terms-section .terms-input{background-color:var(--surface-alt);border:1px solid var(--border);border-left:none;color:var(--text);border-top-right-radius:9999px;border-bottom-right-radius:9999px;padding:10px 16px 10px 0;font-size:14px;}.terms-section .terms-input:focus{background-color:var(--surface-alt);border-color:var(--border);color:var(--text);box-shadow:none;}.terms-section .terms-input::placeholder{color:var(--text-muted);opacity:.75;}.terms-section .terms-nav-btn{background:transparent;border:1px solid transparent;color:var(--text-muted);border-radius:8px;padding:10px 14px;font-size:14px;display:flex;align-items:center;gap:12px;text-align:left;width:100%;transition:all .25s ease;}.terms-section .terms-nav-btn:hover{background-color:var(--surface-alt);color:var(--text);border-color:var(--border);}.terms-section .terms-nav-btn.active{background-color:var(--surface-alt);color:var(--primary);border-color:var(--primary);}.terms-section .terms-badge-num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--border);border-radius:6px;font-size:12px;color:var(--primary);font-family:monospace;flex-shrink:0;}.terms-section .terms-tile-num{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid var(--border);border-radius:10px;background-color:var(--surface-alt);color:var(--primary);font-size:18px;font-family:monospace;flex-shrink:0;}.terms-section .terms-meta-text{color:var(--text-muted);font-size:13px;line-height:1.5;}.terms-section .terms-body-p{color:var(--text-muted);font-size:15px;line-height:1.75;margin-bottom:18px;overflow-wrap:anywhere;}.terms-section .terms-body-link{color:var(--primary-text);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease;}.terms-section .terms-body-link:hover{color:var(--primary-hover);border-bottom-color:var(--primary-hover);}.terms-section .terms-help-box{background-color:var(--surface-alt);border:1px solid var(--border);border-radius:8px;}.terms-section .terms-inline-link{color:var(--primary-text);text-decoration:none;font-size:13px;display:inline-flex;align-items:center;gap:4px;transition:color .2s ease;}.terms-section .terms-inline-link:hover{color:var(--accent);}.terms-section .terms-list{color:var(--text-muted);padding-left:20px;font-size:15px;line-height:1.75;}.terms-section .terms-list li{margin-bottom:10px;}.terms-section .terms-list strong{color:var(--text);}.terms-section .yhk-btn{background-color:var(--primary);color:var(--on-primary);border-radius:9999px;padding:10px 24px;border:none;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color .25s ease,color .25s ease;}.terms-section .yhk-btn:hover{background-color:var(--primary-hover);color:var(--on-primary);}.terms-section .terms-clause{scroll-margin-top:110px;}@media(max-width:767px){.terms-section .display-6{font-size:26px;}.terms-section .terms-clause{padding:20px!important;}.terms-section .terms-tile-num{width:42px;height:42px;font-size:15px;}.terms-section .terms-sidebar{position:static!important;}}

/* ===== PAGE: disclaimer ===== */
.rzm-disclaimer-block { padding: 90px 0; background-color: var(--bg); color: var(--text); font-family: 'Tenor Sans', sans-serif; } .rzm-disclaimer-block .rzm-highlight { color: var(--primary); } .rzm-disclaimer-block .rzm-lead-text { color: var(--text-muted); font-size: 1.05rem; line-height: 1.6; max-width: 780px; margin: 0 auto; } .rzm-disclaimer-block .rzm-alert-card { background-color: var(--surface); border: 1px solid var(--border); border-radius: 12px; transition: border-color 0.3s ease; } .rzm-disclaimer-block .rzm-alert-card:hover { border-color: var(--primary); } .rzm-disclaimer-block .rzm-alert-icon-box { width: 56px; height: 56px; border-radius: 50%; background-color: rgba(50, 222, 247, 0.12); color: var(--primary); display: flex; align-items: center; justify-content: center; font-size: 1.75rem; border: 1px solid rgba(50, 222, 247, 0.35); } .rzm-disclaimer-block .rzm-notice-meta { font-size: 0.85rem; color: var(--text-muted); } .rzm-disclaimer-block .rzm-card-title { color: var(--text); font-size: 1.35rem; line-height: 1.3; } .rzm-disclaimer-block .rzm-card-desc { color: var(--text-muted); font-size: 0.95rem; line-height: 1.6; } .rzm-disclaimer-block .rzm-filter-nav { border-bottom: 1px solid var(--border); padding-bottom: 1rem; } .rzm-disclaimer-block .rzm-filter-btn { background: transparent; border: 1px solid var(--border); color: var(--text-muted); padding: 8px 20px; border-radius: 9999px; font-size: 0.9rem; cursor: pointer; transition: all 0.25s ease; } .rzm-disclaimer-block .rzm-filter-btn:hover { color: var(--text); border-color: var(--primary); } .rzm-disclaimer-block .rzm-filter-btn.active { background-color: var(--primary); color: var(--on-primary); border-color: var(--primary); font-weight: 500; } .rzm-disclaimer-block .rzm-clause-card { background-color: var(--surface); border: 1px solid var(--border); border-radius: 10px; display: flex; flex-direction: column; transition: transform 0.3s ease, border-color 0.3s ease; } .rzm-disclaimer-block .rzm-clause-card:hover { transform: translateY(-3px); border-color: var(--primary); } .rzm-disclaimer-block .rzm-num-tile { width: 40px; height: 40px; border: 1px solid var(--border); border-radius: 6px; display: flex; align-items: center; justify-content: center; color: var(--primary); font-family: monospace; font-size: 1rem; font-weight: 600; background-color: var(--surface-alt); } .rzm-disclaimer-block .rzm-clause-heading { color: var(--text); font-size: 1.15rem; line-height: 1.3; } .rzm-disclaimer-block .rzm-clause-text { color: var(--text-muted); font-size: 0.9rem; line-height: 1.6; } .rzm-disclaimer-block .rzm-card-footer { border-color: var(--border) !important; } .rzm-disclaimer-block .rzm-inline-link { color: var(--primary); text-decoration: none; font-size: 0.85rem; display: inline-flex; align-items: center; transition: color 0.2s ease; } .rzm-disclaimer-block .rzm-inline-link:hover { color: var(--primary-hover); text-decoration: underline; } .rzm-disclaimer-block .rzm-contact-prompt { background-color: var(--surface-alt); border: 1px solid var(--border); border-radius: 12px; } .rzm-disclaimer-block .rzm-prompt-title { color: var(--text); font-size: 1.3rem; line-height: 1.3; } .rzm-disclaimer-block .rzm-prompt-text { color: var(--text-muted); font-size: 0.95rem; line-height: 1.6; max-width: 640px; } @media (max-width: 767px) { .rzm-disclaimer-block { padding: 60px 0; } .rzm-disclaimer-block .rzm-filter-btn { font-size: 0.8rem; padding: 6px 14px; } .rzm-disclaimer-block .rzm-card-title { font-size: 1.15rem; } .rzm-disclaimer-block .rzm-clause-heading { font-size: 1.05rem; } .rzm-disclaimer-block .rzm-prompt-title { font-size: 1.15rem; } }

.custom-comment-card {
    background: #191C1F;
    border: 1px solid #282E37;
    border-radius: 12px;
    padding: 24px;
    color: #EDEFF1;
    font-family: 'Tenor Sans', sans-serif;
    transition: all 300ms ease-out;
}

.custom-comment-card:hover {
    border-color: #32DEF7;
    transform: translateY(-3px);
}

.rz-no-comments {
    background: #191C1F;
    border: 1px solid #282E37 !important;
    border-radius: 12px;
    color: #B0B6BF;
    font-family: 'Tenor Sans', sans-serif;
}

.rz-no-comments i {
    color: #32DEF7;
}

.comment-body-wrapper {
    width: 100%;
}

.user-avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #101317;
    border: 1px solid #282E37;
    color: #32DEF7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
    user-select: none;
    flex-shrink: 0;
}

.user-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.comment-author {
    color: #EDEFF1;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
}

.meta-bullet {
    color: #282E37;
    font-size: 12px;
}

.comment-time {
    color: #B0B6BF;
    font-size: 13px;
    font-weight: 400;
}

.role-badge {
    background: #101317;
    border: 1px solid #282E37;
    color: #32DEF7;
    font-size: 11px;
    padding: 3px 10px;
    border-radius: 9999px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.comment-text {
    color: #EDEFF1;
    font-size: 15px;
    line-height: 1.6;
    font-weight: 400;
    word-break: break-word;
}

.comment-btn {
    background: transparent;
    border: 1px solid #282E37;
    color: #B0B6BF;
    padding: 6px 16px;
    border-radius: 9999px;
    font-size: 13px;
    line-height: 1;
    transition: all 300ms ease-out;
    cursor: pointer;
    text-decoration: none;
    font-family: 'Tenor Sans', sans-serif;
}

.comment-btn:hover {
    background: #101317;
    border-color: #32DEF7;
    color: #32DEF7;
}

.comment-btn i {
    font-size: 14px;
}

@media (max-width: 576px) {
    .custom-comment-card {
        padding: 16px;
    }

    .user-avatar {
        width: 40px;
        height: 40px;
        font-size: 13px;
    }
}

.custom-comment-reply {
    background: #101317;
    border: 1px solid #282E37;
    border-left: 2px solid #32DEF7;
    border-radius: 10px;
    padding: 20px;
    color: #EDEFF1;
    font-family: 'Tenor Sans', sans-serif;
    margin-left: 36px;
    margin-top: 12px;
    transition: all 300ms ease-out;
}

.custom-comment-reply:hover {
    border-color: #32DEF7;
    transform: translateY(-2px);
}

.user-avatar-nested {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #191C1F;
    border: 1px solid #282E37;
    color: #BDEEF5;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    user-select: none;
    flex-shrink: 0;
}

.user-avatar-nested img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.custom-comment-reply .comment-author {
    color: #EDEFF1;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.3;
}

.custom-comment-reply .meta-bullet {
    color: #282E37;
    font-size: 12px;
}

.custom-comment-reply .comment-time {
    color: #B0B6BF;
    font-size: 12px;
    font-weight: 400;
}

.custom-comment-reply .comment-text {
    color: #EDEFF1;
    font-size: 14px;
    line-height: 1.6;
    font-weight: 400;
    word-break: break-word;
}

.custom-comment-reply .comment-btn {
    background: transparent;
    border: 1px solid #282E37;
    color: #B0B6BF;
    padding: 5px 14px;
    border-radius: 9999px;
    font-size: 12px;
    line-height: 1;
    transition: all 300ms ease-out;
    cursor: pointer;
    text-decoration: none;
    font-family: 'Tenor Sans', sans-serif;
}

.custom-comment-reply .comment-btn:hover {
    background: #191C1F;
    border-color: #32DEF7;
    color: #32DEF7;
}

.custom-comment-reply .comment-btn i {
    font-size: 13px;
}

@media (max-width: 576px) {
    .custom-comment-reply {
        margin-left: 16px;
        padding: 14px;
    }

    .user-avatar-nested {
        width: 34px;
        height: 34px;
        font-size: 11px;
    }
}


/* ===== PAGE TEMPLATE: methodology-guides, repair-zones-list, specifications-list, knowledge-base-articles ===== */
.rz-article-hero {
    padding: 60px 0 50px 0;
    background-color: var(--dark-band, #040608);
}

@media (min-width: 992px) {
    .rz-article-hero {
        padding: 90px 0 70px 0;
    }
}

.rz-article-hero__breadcrumbs .rz-hero-crumb-link {
    color: var(--text-muted, #B0B6BF);
    text-decoration: none;
    font-size: 13px;
    transition: color 200ms ease;
}

.rz-article-hero__breadcrumbs .rz-hero-crumb-link:hover {
    color: var(--primary, #32DEF7);
}

.rz-article-hero__breadcrumbs .rz-hero-crumb-sep {
    color: var(--border, #282E37);
    font-size: 11px;
    display: inline-flex;
}

.rz-article-hero__breadcrumbs .rz-hero-crumb-active {
    color: var(--primary, #32DEF7);
    font-size: 13px;
}

.rz-article-hero__eyebrow {
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--primary, #32DEF7);
    margin-bottom: 14px;
}

.rz-article-hero__title {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: 400;
    font-size: 26px;
    line-height: 1.2;
    color: var(--on-dark, #FFFFFF);
    margin-bottom: 16px;
    overflow-wrap: anywhere;
}

@media (min-width: 768px) {
    .rz-article-hero__title {
        font-size: 42px;
    }
}

@media (min-width: 1200px) {
    .rz-article-hero__title {
        font-size: 50px;
    }
}

.rz-article-hero__lead {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: var(--on-dark-muted, #B6BCC3);
    max-width: 760px;
    margin: 0 auto;
}

.rz-meta-chip {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    color: var(--text, #EDEFF1);
    font-size: 12px;
    padding: 6px 14px;
    border-radius: 9999px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.rz-meta-chip i {
    color: var(--primary, #32DEF7);
}

.rz-detail-layout-container {
    background-color: var(--bg, #0A0C0D);
    padding: 50px 0 60px 0;
}

.rz-breakout-container {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 12px;
}

.rz-breakout-frame {
    position: relative;
    padding: 8px;
}

.rz-breakout-backdrop-shape {
    position: absolute;
    top: 14px;
    left: -12px;
    right: -12px;
    bottom: -14px;
    background-color: var(--surface_alt, #101317);
    border: 1px dashed var(--border, #282E37);
    border-radius: 16px;
    z-index: 1;
    pointer-events: none;
}

.rz-breakout-media-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid var(--border, #282E37);
    aspect-ratio: 16 / 9;
    background-color: var(--surface, #191C1F);
}

.rz-breakout-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.rz-breakout-caption {
    position: relative;
    z-index: 2;
}

.rz-caption-text {
    font-size: 13px;
    color: var(--text-muted, #B0B6BF);
    font-style: normal;
}

.rz-centered-column {
    max-width: 760px;
    padding: 0 12px;
}

.rz-takeaways-box {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    border-left: 4px solid var(--primary, #32DEF7);
    border-radius: 10px;
}

.rz-takeaways-icon {
    font-size: 20px;
    color: var(--primary, #32DEF7);
}

.rz-takeaways-heading {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 18px;
    color: var(--text, #EDEFF1);
}

.rz-takeaways-list {
    list-style-type: square;
    color: var(--text-muted, #B0B6BF);
}

.rz-takeaways-item {
    line-height: 1.6;
    font-size: 14px;
}

.rz-prose-eyebrow {
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--primary, #32DEF7);
    margin-bottom: 8px;
}

.rz-prose-h2 {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 22px;
    line-height: 1.3;
    color: var(--text, #EDEFF1);
    margin-bottom: 18px;
    overflow-wrap: anywhere;
}

@media (min-width: 768px) {
    .rz-prose-h2 {
        font-size: 28px;
    }
}

.rz-prose-p {
    font-size: 15px;
    line-height: 1.7;
    color: var(--text-muted, #B0B6BF);
    margin-bottom: 20px;
    overflow-wrap: anywhere;
}

.rz-facts-card {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    border-radius: 10px;
}

.rz-facts-tag {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--primary, #32DEF7);
    display: inline-flex;
    align-items: center;
}

.rz-facts-row {
    border-color: var(--border, #282E37) !important;
}

.rz-facts-term {
    font-weight: 400;
    font-size: 14px;
    color: var(--text-muted, #B0B6BF);
}

.rz-facts-desc {
    font-size: 14px;
    color: var(--text, #EDEFF1);
    text-align: right;
}

@media (max-width: 575.98px) {
    .rz-facts-desc {
        text-align: left;
    }
}

/* Category variants for the facts card */
.rz-facts-card--method {
    border-radius: 10px;
    border-top: 2px solid var(--primary, #32DEF7);
}

.rz-facts-card--zones {
    border-left: 4px solid #F5A524;
    border-radius: 4px;
    background-color: var(--surface_alt, #101317);
}

.rz-facts-card--zones .rz-facts-tag {
    color: #F5A524;
}

.rz-facts-card--zones .rz-facts-term {
    color: var(--text, #EDEFF1);
}

.rz-facts-card--spec {
    background-color: var(--surface_alt, #101317);
    border-radius: 16px;
    border: 1px dashed #4A5160;
}

.rz-facts-card--spec .rz-facts-tag {
    color: #8B7FF0;
}

.rz-facts-card--spec .rz-facts-term {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.rz-facts-card--spec .rz-facts-desc {
    color: var(--text-muted, #B0B6BF);
    font-weight: 600;
}

.rz-facts-card--kb {
    border-radius: 14px;
    box-shadow: inset 0 0 0 1px rgba(63, 217, 127, 0.15);
    border: 1px solid rgba(63, 217, 127, 0.35);
}

.rz-facts-card--kb .rz-facts-tag {
    color: #3FD97F;
}

.rz-facts-card--kb .rz-facts-row {
    border-color: rgba(63, 217, 127, 0.18) !important;
}

.rz-pull-quote {
    background-color: var(--surface_alt, #101317);
    border-left: 3px solid var(--primary, #32DEF7);
    border-radius: 6px;
    margin: 0;
}

.rz-quote-text {
    font-size: 16px;
    line-height: 1.6;
    color: var(--text, #EDEFF1);
}

.rz-quote-author {
    font-size: 13px;
    color: var(--primary, #32DEF7);
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.rz-tags-wrap {
    border-color: var(--border, #282E37) !important;
}

.rz-tags-title {
    font-size: 13px;
    color: var(--text-muted, #B0B6BF);
}

.rz-article-tag {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    color: var(--text, #EDEFF1);
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 9999px;
}

.rz-share-bar {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    border-radius: 8px;
}

.rz-share-label {
    font-size: 13px;
    color: var(--text-muted, #B0B6BF);
    display: inline-flex;
    align-items: center;
}

.rz-share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--surface_alt, #101317);
    border: 1px solid var(--border, #282E37);
    color: var(--text, #EDEFF1);
    text-decoration: none;
    font-size: 14px;
    width: 34px;
    height: 34px;
    padding: 0;
    border-radius: 9999px;
    transition: border-color 200ms ease, color 200ms ease;
}

.rz-share-btn:hover {
    border-color: var(--primary, #32DEF7);
    color: var(--primary, #32DEF7);
}

.rz-newsletter-cta-band {
    background-color: var(--surface_alt, #101317);
    border-top: 1px solid var(--border, #282E37);
    border-bottom: 1px solid var(--border, #282E37);
}

.rz-cta-box {
    max-width: 760px;
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    border-radius: 12px;
}

.rz-cta-eyebrow {
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--primary, #32DEF7);
}

.rz-cta-title {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 22px;
    color: var(--text, #EDEFF1);
}

@media (min-width: 768px) {
    .rz-cta-title {
        font-size: 28px;
    }
}

.rz-cta-subtitle {
    font-size: 14px;
    color: var(--text-muted, #B0B6BF);
    max-width: 540px;
}

.rz-cta-form {
    max-width: 520px;
}

.rz-form-control {
    background-color: var(--surface_alt, #101317);
    border: 1px solid var(--border, #282E37);
    color: var(--text, #EDEFF1);
    font-size: 14px;
    padding: 10px 14px;
}

.rz-form-control:focus {
    background-color: var(--surface_alt, #101317);
    color: var(--text, #EDEFF1);
    border-color: var(--primary, #32DEF7);
    box-shadow: 0 0 0 2px rgba(50, 222, 247, 0.2);
}

.rz-form-control::placeholder {
    color: var(--text-muted, #B0B6BF);
    opacity: 0.8;
}

.rz-form-btn {
    background-color: var(--primary, #32DEF7);
    color: var(--on-primary, #111111);
    border: none;
    padding: 10px 22px;
    font-size: 14px;
    border-radius: 0 9999px 9999px 0;
    transition: background-color 200ms ease;
}

.rz-form-btn:hover {
    background-color: var(--primary-hover, #0BD8F5);
    color: var(--on-primary, #111111);
}

.rz-consent-check {
    font-size: 12px;
    color: var(--text-muted, #B0B6BF);
}

.rz-checkbox {
    background-color: var(--surface_alt, #101317);
    border-color: var(--border, #282E37);
}

.rz-checkbox:checked {
    background-color: var(--primary, #32DEF7);
    border-color: var(--primary, #32DEF7);
}

.rz-privacy-link {
    color: var(--primary, #32DEF7);
    text-decoration: underline;
}

.rz-faq-section {
    background-color: var(--bg, #0A0C0D);
}

.rz-faq-eyebrow {
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--primary, #32DEF7);
    margin-bottom: 6px;
}

.rz-faq-title {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 24px;
    color: var(--text, #EDEFF1);
}

.rz-accordion .rz-accordion-item {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    border-radius: 8px !important;
    overflow: hidden;
}

.rz-accordion-btn {
    background-color: var(--surface, #191C1F);
    color: var(--text, #EDEFF1);
    font-family: 'Tenor Sans', sans-serif;
    font-size: 15px;
    padding: 16px 20px;
    box-shadow: none !important;
}

.rz-accordion-btn:not(.collapsed) {
    background-color: var(--surface_alt, #101317);
    color: var(--primary, #32DEF7);
}

.rz-accordion-btn::after {
    filter: invert(1) hue-rotate(180deg);
}

.rz-accordion-body {
    background-color: var(--surface_alt, #101317);
    color: var(--text-muted, #B0B6BF);
    font-size: 14px;
    line-height: 1.6;
    padding: 16px 20px;
    border-top: 1px solid var(--border, #282E37);
}

.rz-comments-section {
    background-color: var(--surface_alt, #101317);
    border-top: 1px solid var(--border, #282E37);
}

.rz-comments-eyebrow {
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--primary, #32DEF7);
}

.rz-comments-title {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 22px;
    color: var(--text, #EDEFF1);
}

.rz-comments-count-badge {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    color: var(--text-muted, #B0B6BF);
    padding: 6px 12px;
    border-radius: 9999px;
    font-size: 12px;
}

.custom-comment-card {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    border-radius: 10px;
    padding: 20px;
}

.custom-comment-reply {
    margin-left: 24px;
    background-color: var(--bg, #0A0C0D);
    border-left: 3px solid var(--primary, #32DEF7);
}

@media (max-width: 575.98px) {
    .custom-comment-reply {
        margin-left: 12px;
    }
}

.user-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: var(--surface_alt, #101317);
    border: 1px solid var(--primary, #32DEF7);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    color: var(--primary, #32DEF7);
}

.user-avatar-nested {
    border-color: var(--border, #282E37);
    color: var(--text-muted, #B0B6BF);
}

.comment-author {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 14px;
    color: var(--text, #EDEFF1);
}

.meta-bullet {
    color: var(--text-muted, #B0B6BF);
    font-size: 12px;
}

.comment-time {
    font-size: 12px;
    color: var(--text-muted, #B0B6BF);
}

.role-badge {
    font-size: 11px;
    padding: 3px 8px;
    border-radius: 4px;
    background-color: rgba(50, 222, 247, 0.1);
    color: var(--primary, #32DEF7);
    border: 1px solid rgba(50, 222, 247, 0.25);
}

.comment-text {
    font-size: 14px;
    line-height: 1.6;
    color: var(--text-muted, #B0B6BF);
}

.comment-btn {
    background: none;
    border: 1px solid var(--border, #282E37);
    border-radius: 9999px;
    padding: 4px 12px;
    font-size: 12px;
    color: var(--text-muted, #B0B6BF);
    cursor: pointer;
    transition: all 200ms ease;
}

.comment-btn:hover {
    color: var(--primary, #32DEF7);
    border-color: var(--primary, #32DEF7);
}

.comment-btn.is-active {
    color: var(--primary, #32DEF7);
    border-color: var(--primary, #32DEF7);
    background-color: rgba(50, 222, 247, 0.1);
}

.comment-btn.is-active i {
    fill: currentColor;
}

.rz-comment-form-wrap {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    border-radius: 10px;
}

.rz-form-title {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 18px;
    color: var(--text, #EDEFF1);
}

.rz-field-label {
    font-size: 13px;
    color: var(--text-muted, #B0B6BF);
}

.rz-auth-notice {
    background-color: rgba(50, 222, 247, 0.1);
    border: 1px solid var(--primary, #32DEF7);
    color: var(--text, #EDEFF1);
    font-size: 13px;
    border-radius: 6px;
}

.rz-submit-comment-btn {
    background-color: var(--primary, #32DEF7);
    color: var(--on-primary, #111111);
    border: none;
    border-radius: 9999px;
    padding: 10px 24px;
    font-size: 14px;
    transition: background-color 200ms ease;
}

.rz-submit-comment-btn:hover {
    background-color: var(--primary-hover, #0BD8F5);
    color: var(--on-primary, #111111);
}

.rz-related-section {
    background-color: var(--dark-band, #040608);
    border-top: 1px solid var(--border, #282E37);
}

.rz-related-eyebrow {
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--primary, #32DEF7);
    margin-bottom: 6px;
}

.rz-related-title {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 24px;
    color: var(--text, #EDEFF1);
}

@media (min-width: 768px) {
    .rz-related-title {
        font-size: 32px;
    }
}

.rz-related-card {
    background-color: var(--surface, #191C1F);
    border: 1px solid var(--border, #282E37);
    border-radius: 12px;
    overflow: hidden;
    transition: transform 300ms ease, border-color 300ms ease;
}

.rz-related-card:hover {
    transform: translateY(-4px);
    border-color: var(--primary, #32DEF7);
}

.rz-card-image-box {
    aspect-ratio: 16 / 9;
    border-bottom: 1px solid var(--border, #282E37);
    overflow: hidden;
}

.rz-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.rz-card-cat-badge {
    position: absolute;
    bottom: 10px;
    left: 10px;
    background-color: rgba(4, 6, 8, 0.85);
    color: var(--primary, #32DEF7);
    border: 1px solid var(--border, #282E37);
    border-radius: 4px;
    font-size: 11px;
    padding: 3px 8px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.rz-card-title {
    font-family: 'Tenor Sans', sans-serif;
    font-size: 17px;
    line-height: 1.35;
}

.rz-card-link {
    color: var(--text, #EDEFF1);
    text-decoration: none;
    transition: color 200ms ease;
}

.rz-card-link:hover {
    color: var(--primary, #32DEF7);
}

.rz-card-excerpt {
    font-size: 13px;
    line-height: 1.6;
    color: var(--text-muted, #B0B6BF);
}

.rz-card-meta {
    border-color: var(--border, #282E37) !important;
}

.rz-card-date {
    font-size: 12px;
    color: var(--text-muted, #B0B6BF);
}

.rz-card-readmore {
    font-size: 12px;
    color: var(--primary, #32DEF7);
    text-decoration: none;
    transition: transform 200ms ease;
}

.rz-card-readmore:hover {
    color: var(--primary-hover, #0BD8F5);
    transform: translateX(3px);
}

/* mobile-text-guard */
@media (max-width: 767px) {
  h1, h2, h3, h4, h5, h6, p, li, dt, dd, blockquote, figcaption, td, th, label {
    overflow-wrap: anywhere;
  }
  a, button, .btn {
    overflow-wrap: anywhere;
    white-space: normal;
  }
  img, video, iframe {
    max-width: 100%;
  }
}
