:root {
    --primary: #5925DC;
    --primary-hover: #471CA9;
    --secondary: #7F56D9;
    --accent: #FF5B37;
    --accent-hover: #E04826;
    --background: #F8F7FC;
    --background-alt: #F2EFF9;
    --card-background: #EEE9F7;
    --card-background-hover: #E4DCF2;
    --text-primary-light-bg: #1D192B;
    --text-secondary-light-bg: #5F5B73;
    --text-muted-light-bg: #8C87A2;
    --text-primary-dark-bg: #FFFFFF;
    --text-secondary-dark-bg: #E9D7FE;
    --hero-gradient: linear-gradient(135deg, #F8F7FC 0%, #EDE7F8 100%);
    --button-gradient: linear-gradient(135deg, #5925DC 0%, #7F56D9 100%);
    --button-gradient-hover: linear-gradient(135deg, #471CA9 0%, #6941C6 100%);
    --divider-color: #E5DEFA;
    --font-family: 'Piazzolla', serif
}

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

body {
    margin: 0;
    font-family: var(--font-family);
    font-size: 16px;
    line-height: 1.6;
    font-weight: 400;
    color: var(--text-primary-light-bg);
    background-color: var(--background);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

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

a {
    color: var(--primary);
    text-decoration: none;
    transition: color 0.2s ease
}

a:hover {
    color: var(--primary-hover)
}

img {
    max-width: 100%;
    height: auto
}

/* ===== header ===== */
.obsiblan-header {
    background-color: #F8F7FC;
    border-bottom: 1px solid #E5DEFA;
    z-index: 1030;
}

.obsiblan-header .navbar {
    padding-top: 14px;
    padding-bottom: 14px;
    background-color: #F8F7FC;
}

.obsiblan-header .navbar-brand {
    padding: 0;
    margin: 0;
    text-decoration: none;
}

.obsiblan-header .obsiblan-header-logo {
    max-width: 42px;
    height: 42px;
    object-fit: contain;
    display: block;
}

.obsiblan-header .obsiblan-brand-text {
    font-family: 'Piazzolla', serif;
    font-weight: 800;
    font-size: 24px;
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: #1D192B;
}

.obsiblan-header .obsiblan-nav-link {
    font-family: 'Piazzolla', serif;
    font-size: 16px;
    font-weight: 600;
    color: #1D192B;
    padding: 8px 14px;
    border-radius: 8px;
    transition: color 0.2s ease, background-color 0.2s ease;
}

.obsiblan-header .obsiblan-nav-link:hover,
.obsiblan-header .obsiblan-nav-link:focus {
    color: #5925DC;
    background-color: #EEE9F7;
}

.obsiblan-header .obsiblan-toggler {
    border: none;
    background-color: #EEE9F7;
    color: #5925DC;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 22px;
    line-height: 1;
    box-shadow: none;
    outline: none;
}

.obsiblan-header .obsiblan-toggler:focus {
    box-shadow: 0 0 0 2px #7F56D9;
}

.obsiblan-header .obsiblan-header-btn {
    font-family: 'Piazzolla', serif;
    background: linear-gradient(135deg, #5925DC 0%, #7F56D9 100%);
    color: #FFFFFF;
    font-size: 15px;
    font-weight: 700;
    padding: 9px 20px;
    border-radius: 10px;
    border: none;
    transition: background 0.2s ease, transform 0.2s ease;
    text-decoration: none;
}

.obsiblan-header .obsiblan-header-btn:hover,
.obsiblan-header .obsiblan-header-btn:focus {
    background: linear-gradient(135deg, #471CA9 0%, #6941C6 100%);
    color: #FFFFFF;
}

@media (max-width: 991.98px) {
    .obsiblan-header .navbar-collapse {
        background-color: #F8F7FC;
        padding: 16px 8px 8px 8px;
        border-top: 1px solid #E5DEFA;
        margin-top: 10px;
    }

    .obsiblan-header .obsiblan-nav-link {
        padding: 10px 14px;
        font-size: 15px;
    }
}

/* ===== hero ===== */
.hero-obsiblan {
    position: relative;
    background-color: #120c24;
    min-height: 85vh;
    display: flex;
    align-items: center;
    padding-top: 60px;
    padding-bottom: 60px;
}

.hero-obsiblan__video-wrapper {
    z-index: 1;
    pointer-events: none;
    overflow: hidden;
}

.hero-obsiblan__video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    background-position: center;
    background-size: cover;
}

.hero-obsiblan__overlay {
    background: linear-gradient(135deg, rgba(18, 12, 36, 0.92) 0%, rgba(89, 37, 220, 0.78) 50%, rgba(18, 12, 36, 0.95) 100%);
    z-index: 2;
}

.hero-obsiblan__content-container {
    z-index: 3;
}

.hero-obsiblan__hero-row {
    min-height: 50vh;
}

.hero-obsiblan__badge {
    background-color: rgba(233, 215, 254, 0.15);
    border: 1px solid rgba(233, 215, 254, 0.3);
    border-radius: 50px;
    padding: 6px 16px;
}

.hero-obsiblan__badge-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #FF5B37;
    display: inline-block;
}

.hero-obsiblan__badge-text {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #E9D7FE;
}

.hero-obsiblan__title {
    font-family: 'Piazzolla', serif;
    font-size: 52px;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: #FFFFFF;
    overflow-wrap: anywhere;
}

.hero-obsiblan__title-light {
    font-weight: 300;
    color: #E9D7FE;
}

.hero-obsiblan__title-bold {
    font-weight: 800;
    color: #FFFFFF;
}

.hero-obsiblan__lead {
    font-size: 18px;
    line-height: 1.6;
    font-weight: 400;
    max-width: 680px;
    color: #E9D7FE;
    overflow-wrap: anywhere;
}

.hero-obsiblan__btn-primary {
    background: #FF5B37;
    color: #FFFFFF;
    font-weight: 600;
    font-size: 16px;
    border: none;
    border-radius: 10px;
    padding: 14px 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.hero-obsiblan__btn-primary:hover {
    background: #E04826;
    color: #FFFFFF;
}

.hero-obsiblan__btn-secondary {
    background: rgba(233, 215, 254, 0.18);
    color: #FFFFFF;
    font-weight: 600;
    font-size: 16px;
    border: 1px solid rgba(233, 215, 254, 0.4);
    border-radius: 10px;
    padding: 14px 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.hero-obsiblan__btn-secondary:hover {
    background: #E9D7FE;
    color: #5925DC;
}

.hero-obsiblan__cards-row {
    margin-top: 30px;
}

.hero-obsiblan__feature-card {
    background: #EEE9F7;
    border-radius: 24px;
    padding: 30px 26px;
    color: #1D192B;
    transition: background-color 0.2s ease, transform 0.2s ease;
}

.hero-obsiblan__feature-card:hover {
    background: #E4DCF2;
}

.hero-obsiblan__card-icon-box {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background-color: #5925DC;
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
}

.hero-obsiblan__card-title {
    font-family: 'Piazzolla', serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.hero-obsiblan__card-text {
    font-size: 15px;
    line-height: 1.6;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.hero-obsiblan__modal-content {
    background-color: #F8F7FC;
    border-radius: 20px;
    border: none;
    padding: 10px 14px;
}

.hero-obsiblan__modal-title {
    font-family: 'Piazzolla', serif;
    font-size: 24px;
    font-weight: 700;
    color: #1D192B;
}

.hero-obsiblan__close-btn {
    background: transparent;
    border: none;
    font-size: 22px;
    color: #5F5B73;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px;
    border-radius: 8px;
}

.hero-obsiblan__close-btn:hover {
    background: #EEE9F7;
    color: #1D192B;
}

.hero-obsiblan__modal-desc {
    font-size: 15px;
    line-height: 1.5;
    color: #5F5B73;
}

.hero-obsiblan__label {
    font-size: 14px;
    font-weight: 600;
    color: #1D192B;
    margin-bottom: 6px;
}

.hero-obsiblan__input,
.hero-obsiblan__textarea {
    background-color: #FFFFFF;
    border: 1px solid #D6BBFB;
    color: #1D192B;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 15px;
}

.hero-obsiblan__input:focus,
.hero-obsiblan__textarea:focus {
    background-color: #FFFFFF;
    border-color: #5925DC;
    box-shadow: 0 0 0 0.25rem rgba(89, 37, 220, 0.15);
    color: #1D192B;
}

.hero-obsiblan__input::placeholder,
.hero-obsiblan__textarea::placeholder {
    color: #8C87A2;
    opacity: 1;
}

.hero-obsiblan__consent-check {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.hero-obsiblan__checkbox {
    margin-top: 4px;
    border-color: #7F56D9;
    cursor: pointer;
}

.hero-obsiblan__checkbox:checked {
    background-color: #5925DC;
    border-color: #5925DC;
}

.hero-obsiblan__consent-label {
    font-size: 13px;
    line-height: 1.4;
    color: #5F5B73;
}

.hero-obsiblan__link {
    color: #5925DC;
    text-decoration: underline;
    font-weight: 600;
}

.hero-obsiblan__link:hover {
    color: #471CA9;
}

.hero-obsiblan__submit-btn {
    background: #5925DC;
    color: #FFFFFF;
    font-weight: 600;
    font-size: 16px;
    border: none;
    border-radius: 10px;
    padding: 12px 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease;
}

.hero-obsiblan__submit-btn:hover {
    background: #471CA9;
    color: #FFFFFF;
}

@media (max-width: 767px) {
    .hero-obsiblan {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .hero-obsiblan__title {
        font-size: 18px;
        hyphens: auto;
    }

    .hero-obsiblan__card-title {
        font-size: 14px;
        hyphens: auto;
    }

    .hero-obsiblan__modal-title {
        font-size: 16px;
    }

    .hero-obsiblan__lead {
        font-size: 15px;
    }

    .hero-obsiblan__cards-row {
        margin-top: 20px;
    }

    .hero-obsiblan__btn-primary,
    .hero-obsiblan__btn-secondary {
        width: 100%;
        padding: 12px 18px;
    }
}

/* ===== how_we_work ===== */
.how-we-work-section {
    background-color: #F8F7FC;
    font-family: 'Piazzolla', serif;
    color: #1D192B;
    overflow: hidden;
}

.how-we-work-section .how-we-work-eyebrow {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.08em;
    color: #5925DC;
}

.how-we-work-section .how-we-work-title {
    font-size: 40px;
    line-height: 1.25;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #1D192B;
}

.how-we-work-section .how-we-work-accent-bar {
    width: 48px;
    height: 4px;
    background-color: #FF5B37;
    border-radius: 2px;
}

.how-we-work-section .how-we-work-lead {
    font-size: 18px;
    line-height: 1.6;
    color: #5F5B73;
}

.how-we-work-section .how-we-work-card {
    background-color: #EEE9F7;
    border-radius: 24px;
    border: none;
    transition: background-color 0.2s ease, transform 0.2s ease;
}

.how-we-work-section .how-we-work-card:hover {
    background-color: #E4DCF2;
    transform: translateY(-4px);
}

.how-we-work-section .how-we-work-step-num {
    font-size: 32px;
    font-weight: 800;
    color: #7F56D9;
    line-height: 1;
}

.how-we-work-section .how-we-work-icon-box {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    background-color: #E9D7FE;
    color: #5925DC;
    font-size: 22px;
    flex-shrink: 0;
}

.how-we-work-section .how-we-work-step-title {
    font-size: 20px;
    line-height: 1.3;
    font-weight: 700;
    color: #1D192B;
}

.how-we-work-section .how-we-work-step-desc {
    font-size: 15px;
    line-height: 1.6;
    color: #5F5B73;
}

.how-we-work-section .how-we-work-card-bottom {
    border-color: #E5DEFA !important;
}

.how-we-work-section .how-we-work-check-icon {
    color: #5925DC;
    font-size: 18px;
    flex-shrink: 0;
}

.how-we-work-section .how-we-work-meta-text {
    font-size: 14px;
    font-weight: 600;
    color: #5F5B73;
}

.how-we-work-section .how-we-work-cta-banner {
    background-color: #F2EFF9;
    border-radius: 24px;
}

.how-we-work-section .how-we-work-cta-heading {
    font-size: 24px;
    font-weight: 700;
    color: #1D192B;
}

.how-we-work-section .how-we-work-cta-text {
    font-size: 16px;
    color: #5F5B73;
    max-width: 580px;
}

.how-we-work-section .how-we-work-btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #5925DC;
    color: #FFFFFF;
    font-weight: 600;
    font-size: 16px;
    padding: 12px 28px;
    border-radius: 10px;
    text-decoration: none;
    border: none;
    transition: background-color 0.2s ease;
}

.how-we-work-section .how-we-work-btn-primary:hover,
.how-we-work-section .how-we-work-btn-primary:focus {
    background-color: #471CA9;
    color: #FFFFFF;
    text-decoration: none;
}

.how-we-work-section .how-we-work-btn-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #E9D7FE;
    color: #5925DC;
    font-weight: 600;
    font-size: 16px;
    padding: 12px 28px;
    border-radius: 10px;
    text-decoration: none;
    border: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.how-we-work-section .how-we-work-btn-secondary:hover,
.how-we-work-section .how-we-work-btn-secondary:focus {
    background-color: #D6BBFB;
    color: #471CA9;
    text-decoration: none;
}

@media (max-width: 767px) {
    .how-we-work-section .how-we-work-title {
        font-size: 16px;
        hyphens: auto;
    }

    .how-we-work-section .how-we-work-step-title {
        font-size: 14px;
        hyphens: auto;
    }

    .how-we-work-section .how-we-work-cta-heading {
        font-size: 16px;
        hyphens: auto;
    }

    .how-we-work-section .how-we-work-lead {
        font-size: 15px;
    }

    .how-we-work-section .how-we-work-btn-primary,
    .how-we-work-section .how-we-work-btn-secondary {
        width: 100%;
        text-align: center;
    }
}

/* ===== inside_process ===== */
.obsiblan-inside-process {
    background-color: #F8F7FC;
    font-family: 'Piazzolla', serif;
    color: #1D192B;
}

.obsiblan-inside-process .obsiblan-inside-process__eyebrow {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #5925DC;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.obsiblan-inside-process .obsiblan-inside-process__heading {
    font-size: 40px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -0.01em;
    color: #1D192B;
    margin: 0 0 12px 0;
}

.obsiblan-inside-process .obsiblan-inside-process__accent-bar {
    width: 54px;
    height: 4px;
    background-color: #FF5B37;
    border-radius: 2px;
}

.obsiblan-inside-process .obsiblan-inside-process__lead-text {
    font-size: 18px;
    line-height: 1.6;
    color: #5F5B73;
    font-weight: 400;
}

.obsiblan-inside-process .obsiblan-inside-process__card {
    background-color: #EEE9F7;
    border-radius: 24px;
    overflow: hidden;
    border: none;
    box-shadow: none;
    transition: background-color 0.2s ease, transform 0.2s ease;
    display: flex;
    flex-direction: column;
}

.obsiblan-inside-process .obsiblan-inside-process__card:hover {
    background-color: #E4DCF2;
}

.obsiblan-inside-process .obsiblan-inside-process__media-wrap {
    width: 100%;
    aspect-ratio: 3 / 2;
    overflow: hidden;
    background-color: #E5DEFA;
    position: relative;
}

.obsiblan-inside-process .obsiblan-inside-process__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 16px 16px 0 0;
    display: block;
}

.obsiblan-inside-process .obsiblan-inside-process__card-body {
    padding: 24px;
    flex-grow: 1;
}

.obsiblan-inside-process .obsiblan-inside-process__badge {
    font-size: 12px;
    font-weight: 700;
    color: #5925DC;
    background-color: #E9D7FE;
    padding: 4px 10px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.obsiblan-inside-process .obsiblan-inside-process__badge--accent {
    color: #FFFFFF;
    background-color: #FF5B37;
}

.obsiblan-inside-process .obsiblan-inside-process__card-title {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.3;
    color: #1D192B;
    margin-bottom: 8px;
}

.obsiblan-inside-process .obsiblan-inside-process__card-desc {
    font-size: 15px;
    line-height: 1.55;
    color: #5F5B73;
    margin: 0;
}

.obsiblan-inside-process .obsiblan-inside-process__card--metrics {
    padding: 8px;
}

.obsiblan-inside-process .obsiblan-inside-process__metric-item {
    background-color: #F8F7FC;
    padding: 14px 16px;
    border-radius: 14px;
}

.obsiblan-inside-process .obsiblan-inside-process__metric-name {
    font-size: 14px;
    font-weight: 500;
    color: #1D192B;
}

.obsiblan-inside-process .obsiblan-inside-process__metric-val {
    font-size: 14px;
    font-weight: 700;
    color: #5925DC;
}

.obsiblan-inside-process .obsiblan-inside-process__progress-track {
    width: 100%;
    height: 6px;
    background-color: #E5DEFA;
    border-radius: 3px;
    overflow: hidden;
    margin-top: 6px;
}

.obsiblan-inside-process .obsiblan-inside-process__progress-fill {
    height: 100%;
    background: linear-gradient(135deg, #5925DC 0%, #7F56D9 100%);
    border-radius: 3px;
}

.obsiblan-inside-process .obsiblan-inside-process__footer-cta {
    padding: 0 24px 24px 24px;
}

.obsiblan-inside-process .obsiblan-inside-process__btn {
    background: #5925DC;
    color: #FFFFFF;
    border: none;
    font-size: 15px;
    font-weight: 600;
    border-radius: 10px;
    padding: 12px 20px;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.obsiblan-inside-process .obsiblan-inside-process__btn:hover,
.obsiblan-inside-process .obsiblan-inside-process__btn:focus {
    background-color: #471CA9;
    color: #FFFFFF;
}

@media (max-width: 767px) {
    .obsiblan-inside-process .obsiblan-inside-process__heading {
        font-size: 16px;
        hyphens: auto;
    }

    .obsiblan-inside-process .obsiblan-inside-process__card-title {
        font-size: 14px;
        hyphens: auto;
    }

    .obsiblan-inside-process .obsiblan-inside-process__lead-text {
        font-size: 15px;
    }

    .obsiblan-inside-process .obsiblan-inside-process__card-body {
        padding: 18px;
    }

    .obsiblan-inside-process .obsiblan-inside-process__footer-cta {
        padding: 0 18px 18px 18px;
    }
}

/* ===== glossary ===== */
.obs-glossary-section {
    background-color: #F8F7FC;
    color: #1D192B;
    font-family: 'Piazzolla', serif;
    overflow: hidden
}

.obs-glossary-section .obs-glossary-eyebrow {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #5925DC
}

.obs-glossary-section .obs-glossary-title {
    font-size: 40px;
    line-height: 1.25;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #1D192B
}

.obs-glossary-section .obs-glossary-accent-bar {
    width: 48px;
    height: 4px;
    background-color: #FF5B37;
    border-radius: 2px
}

.obs-glossary-section .obs-glossary-intro {
    font-size: 16px;
    line-height: 1.6;
    color: #5F5B73;
    max-width: 620px
}

.obs-glossary-section .obs-glossary-filter-btn {
    background-color: #EEE9F7;
    color: #5925DC;
    border: none;
    border-radius: 10px;
    padding: 8px 16px;
    font-size: 14px;
    font-weight: 600;
    transition: background-color .2s ease, color .2s ease;
    cursor: pointer
}

.obs-glossary-section .obs-glossary-filter-btn:hover {
    background-color: #E4DCF2;
    color: #471CA9
}

.obs-glossary-section .obs-glossary-filter-btn.active {
    background-color: #5925DC;
    color: #FFFFFF
}

.obs-glossary-section .obs-glossary-card {
    background-color: #EEE9F7;
    border-radius: 24px;
    transition: background-color .2s ease, transform .2s ease
}

.obs-glossary-section .obs-glossary-card:hover {
    background-color: #E4DCF2
}

.obs-glossary-section .obs-glossary-badge {
    background-color: #E9D7FE;
    color: #5925DC;
    font-size: 12px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 6px
}

.obs-glossary-section .obs-glossary-index {
    font-size: 14px;
    font-weight: 700;
    color: #8C87A2
}

.obs-glossary-section .obs-glossary-term {
    font-size: 22px;
    line-height: 1.3;
    font-weight: 600;
    color: #1D192B
}

.obs-glossary-section .obs-glossary-def {
    font-size: 15px;
    line-height: 1.5;
    color: #5F5B73
}

.obs-glossary-section .obs-glossary-footer {
    border-top: 1px solid #E5DEFA
}

.obs-glossary-section .obs-glossary-context {
    font-size: 12px;
    font-weight: 600;
    color: #7F56D9
}

.obs-glossary-section .obs-glossary-banner {
    background-color: #F2EFF9;
    border-radius: 20px
}

.obs-glossary-section .obs-glossary-banner-icon {
    width: 48px;
    height: 48px;
    min-width: 48px;
    border-radius: 50%;
    background-color: #5925DC;
    color: #FFFFFF;
    font-size: 24px
}

.obs-glossary-section .obs-glossary-banner-title {
    font-size: 18px;
    font-weight: 700;
    color: #1D192B
}

.obs-glossary-section .obs-glossary-banner-text {
    font-size: 14px;
    line-height: 1.5;
    color: #5F5B73
}

.obs-glossary-section .obs-glossary-banner-btn {
    background-color: #5925DC;
    color: #FFFFFF;
    padding: 12px 24px;
    border-radius: 10px;
    font-weight: 600;
    font-size: 14px;
    transition: background-color .2s ease;
    display: inline-block;
    text-align: center
}

.obs-glossary-section .obs-glossary-banner-btn:hover {
    background-color: #471CA9;
    color: #FFFFFF
}

@media(max-width:767px) {
    .obs-glossary-section .obs-glossary-title {
        font-size: 16px;
        hyphens: auto;
        overflow-wrap: anywhere
    }

    .obs-glossary-section .obs-glossary-term {
        font-size: 14px;
        hyphens: auto;
        overflow-wrap: anywhere
    }

    .obs-glossary-section .obs-glossary-banner-title {
        font-size: 14px;
        hyphens: auto;
        overflow-wrap: anywhere
    }

    .obs-glossary-section .obs-glossary-intro,
    .obs-glossary-section .obs-glossary-def,
    .obs-glossary-section .obs-glossary-banner-text {
        overflow-wrap: anywhere
    }

    .obs-glossary-section .obs-glossary-banner-btn {
        width: 100%
    }
}

/* ===== client_requirements ===== */
.client-requirements-block {
    background-color: #F8F7FC;
    font-family: 'Piazzolla', serif;
    color: #1D192B;
}

.client-requirements-block .client-requirements-block__eyebrow {
    font-size: 14px;
    letter-spacing: 0.08em;
    color: #5925DC;
}

.client-requirements-block .client-requirements-block__title {
    font-size: 40px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -0.01em;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.client-requirements-block .client-requirements-block__accent-bar {
    width: 56px;
    height: 4px;
    background-color: #FF5B37;
    border-radius: 2px;
}

.client-requirements-block .client-requirements-block__intro {
    font-size: 16px;
    line-height: 1.6;
    color: #5F5B73;
}

.client-requirements-block .client-requirements-block__tab-btn {
    border: none;
    background-color: #EEE9F7;
    color: #5925DC;
    font-size: 14px;
    font-weight: 600;
    padding: 10px 18px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: background-color 0.2s ease, color 0.2s ease;
    cursor: pointer;
}

.client-requirements-block .client-requirements-block__tab-btn:hover {
    background-color: #E4DCF2;
    color: #471CA9;
}

.client-requirements-block .client-requirements-block__tab-btn.active {
    background-color: #5925DC;
    color: #FFFFFF;
}

.client-requirements-block .client-requirements-block__card {
    background-color: #EEE9F7;
    border-radius: 24px;
    transition: background-color 0.2s ease;
}

.client-requirements-block .client-requirements-block__card:hover {
    background-color: #E4DCF2;
}

.client-requirements-block .client-requirements-block__icon-box {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background-color: #E9D7FE;
    color: #5925DC;
    font-size: 24px;
}

.client-requirements-block .client-requirements-block__badge {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #5925DC;
    background-color: #E9D7FE;
    padding: 4px 10px;
    border-radius: 8px;
}

.client-requirements-block .client-requirements-block__card-title {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.3;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.client-requirements-block .client-requirements-block__card-text {
    font-size: 15px;
    line-height: 1.5;
    color: #5F5B73;
}

.client-requirements-block .client-requirements-block__checklist {
    font-size: 14px;
    color: #1D192B;
}

.client-requirements-block .text-primary-theme {
    color: #5925DC;
}

.client-requirements-block .client-requirements-block__footer-panel {
    background-color: #EDE7F8;
    border-radius: 24px;
}

.client-requirements-block .client-requirements-block__footer-icon {
    width: 52px;
    height: 52px;
    border-radius: 16px;
    background-color: #5925DC;
    color: #FFFFFF;
    font-size: 26px;
}

.client-requirements-block .client-requirements-block__footer-title {
    font-size: 20px;
    font-weight: 700;
    color: #1D192B;
    line-height: 1.3;
}

.client-requirements-block .client-requirements-block__footer-text {
    font-size: 15px;
    color: #5F5B73;
    line-height: 1.5;
}

.client-requirements-block .client-requirements-block__cta-btn {
    background-color: #5925DC;
    color: #FFFFFF;
    border-radius: 10px;
    font-size: 15px;
    transition: background-color 0.2s ease;
}

.client-requirements-block .client-requirements-block__cta-btn:hover {
    background-color: #471CA9;
    color: #FFFFFF;
}

@media (max-width: 767px) {
    .client-requirements-block .client-requirements-block__title {
        font-size: 26px;
        hyphens: auto;
    }

    .client-requirements-block .client-requirements-block__card-title {
        font-size: 18px;
    }

    .client-requirements-block .client-requirements-block__footer-panel {
        flex-direction: column;
        text-align: left;
        align-items: flex-start !important;
    }

    .client-requirements-block .client-requirements-block__footer-action {
        width: 100%;
    }

    .client-requirements-block .client-requirements-block__cta-btn {
        width: 100%;
    }
}

/* ===== solutions_grid ===== */
.obsiblan-solutions-section {
    background-color: #F8F7FC;
    color: #1D192B;
}

.obsiblan-solutions-section .obsiblan-solutions-eyebrow {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #5925DC;
}

.obsiblan-solutions-section .obsiblan-solutions-title {
    font-family: 'Piazzolla', serif;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -0.01em;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.obsiblan-solutions-section .obsiblan-solutions-accent-bar {
    width: 56px;
    height: 4px;
    background-color: #FF5B37;
    border-radius: 2px;
}

.obsiblan-solutions-section .obsiblan-solutions-lead {
    font-size: 16px;
    line-height: 1.6;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.obsiblan-solutions-section .obsiblan-solution-card {
    background-color: #EEE9F7;
    border-radius: 24px;
    border: none;
    transition: background-color 0.2s ease;
}

.obsiblan-solutions-section .obsiblan-solution-card:hover {
    background-color: #E4DCF2;
}

.obsiblan-solutions-section .obsiblan-solution-thumb-link {
    aspect-ratio: 3 / 2;
    background-color: #DDD6EC;
}

.obsiblan-solutions-section .obsiblan-solution-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.obsiblan-solutions-section .obsiblan-solution-badge {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 4px 10px;
    border-radius: 8px;
    background-color: #E9D7FE;
    color: #5925DC;
}

.obsiblan-solutions-section .obsiblan-solution-price {
    font-size: 14px;
    font-weight: 600;
    color: #5F5B73;
}

.obsiblan-solutions-section .obsiblan-solution-name {
    font-family: 'Piazzolla', serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.3;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.obsiblan-solutions-section .obsiblan-solution-name-link {
    color: #1D192B;
    text-decoration: none;
    transition: color 0.2s ease;
}

.obsiblan-solutions-section .obsiblan-solution-name-link:hover {
    color: #5925DC;
}

.obsiblan-solutions-section .obsiblan-solution-desc {
    font-size: 14px;
    line-height: 1.5;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.obsiblan-solutions-section .obsiblan-solution-btn {
    background-color: #5925DC;
    color: #FFFFFF;
    font-size: 14px;
    font-weight: 600;
    padding: 10px 16px;
    border-radius: 10px;
    text-decoration: none;
    border: none;
    transition: background-color 0.2s ease;
}

.obsiblan-solutions-section .obsiblan-solution-btn:hover {
    background-color: #471CA9;
    color: #FFFFFF;
}

.obsiblan-solutions-section .obsiblan-solutions-all-btn {
    background-color: #E9D7FE;
    color: #5925DC;
    font-size: 16px;
    font-weight: 600;
    border-radius: 10px;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.obsiblan-solutions-section .obsiblan-solutions-all-btn:hover {
    background-color: #D6BBFB;
    color: #471CA9;
}

@media (max-width: 767.98px) {
    .obsiblan-solutions-section .obsiblan-solutions-title {
        font-size: 16px;
        line-height: 1.25;
        hyphens: auto;
    }

    .obsiblan-solutions-section .obsiblan-solution-name {
        font-size: 14px;
        line-height: 1.3;
        hyphens: auto;
    }
}

/* ===== products_grid ===== */
.obsiblan-products-section {
    background-color: #F8F7FC;
    padding: 80px 0;
    font-family: 'Piazzolla', serif;
    color: #1D192B;
}

.obsiblan-products-section .obsiblan-section-eyebrow {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #5925DC;
}

.obsiblan-products-section .obsiblan-section-title {
    font-size: 40px;
    line-height: 1.25;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #1D192B;
}

.obsiblan-products-section .obsiblan-accent-bar {
    width: 48px;
    height: 4px;
    background-color: #FF5B37;
    border-radius: 2px;
}

.obsiblan-products-section .obsiblan-section-lead {
    font-size: 16px;
    line-height: 1.6;
    font-weight: 400;
    color: #5F5B73;
}

.obsiblan-products-section .obsiblan-product-card {
    background-color: #EEE9F7;
    border-radius: 24px;
    overflow: hidden;
    border: none;
    box-shadow: none;
    transition: background-color 0.2s ease;
}

.obsiblan-products-section .obsiblan-product-card:hover {
    background-color: #E4DCF2;
}

.obsiblan-products-section .obsiblan-card-image-holder {
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 2;
    overflow: hidden;
    background-color: #EDE7F8;
}

.obsiblan-products-section .obsiblan-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.obsiblan-products-section .obsiblan-product-card:hover .obsiblan-card-img {
    transform: scale(1.03);
}

.obsiblan-products-section .obsiblan-product-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    background-color: #5925DC;
    color: #FFFFFF;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 6px;
    pointer-events: none;
}

.obsiblan-products-section .obsiblan-card-title {
    font-size: 20px;
    line-height: 1.3;
    font-weight: 600;
}

.obsiblan-products-section .obsiblan-card-title-link {
    color: #1D192B;
    text-decoration: none;
    transition: color 0.2s ease;
}

.obsiblan-products-section .obsiblan-card-title-link:hover {
    color: #5925DC;
}

.obsiblan-products-section .obsiblan-card-price {
    font-size: 16px;
    font-weight: 700;
    color: #5925DC;
    white-space: nowrap;
}

.obsiblan-products-section .obsiblan-card-text {
    font-size: 14px;
    line-height: 1.5;
    font-weight: 400;
    color: #5F5B73;
}

.obsiblan-products-section .obsiblan-btn-card {
    background-color: #E9D7FE;
    color: #5925DC;
    font-size: 14px;
    font-weight: 600;
    padding: 10px 16px;
    border-radius: 10px;
    border: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.obsiblan-products-section .obsiblan-btn-card:hover {
    background-color: #5925DC;
    color: #FFFFFF;
}

.obsiblan-products-section .obsiblan-btn-main {
    background-color: #5925DC;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 600;
    padding: 14px 28px;
    border-radius: 10px;
    border: none;
    transition: background-color 0.2s ease;
}

.obsiblan-products-section .obsiblan-btn-main:hover {
    background-color: #471CA9;
    color: #FFFFFF;
}

@media (max-width: 767px) {
    .obsiblan-products-section {
        padding: 48px 0;
    }

    .obsiblan-products-section .obsiblan-section-title {
        font-size: 16px;
        line-height: 1.3;
        hyphens: auto;
    }

    .obsiblan-products-section .obsiblan-card-title {
        font-size: 14px;
    }

    .obsiblan-products-section .obsiblan-section-lead {
        font-size: 14px;
    }
}

/* ===== blog_grid ===== */
.obsiblan-blog-grid {
    background-color: #F8F7FC;
    font-family: 'Piazzolla', serif;
    color: #1D192B;
}

.obsiblan-blog-grid .obsiblan-blog-grid__eyebrow {
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #5925DC;
}

.obsiblan-blog-grid .obsiblan-blog-grid__title {
    font-size: 40px;
    line-height: 1.25;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.obsiblan-blog-grid .obsiblan-blog-grid__accent-bar {
    width: 56px;
    height: 4px;
    background-color: #FF5B37;
    border-radius: 2px;
}

.obsiblan-blog-grid .obsiblan-blog-grid__lead {
    font-size: 18px;
    line-height: 1.6;
    font-weight: 400;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.obsiblan-blog-grid .obsiblan-blog-grid__card {
    background-color: #EEE9F7;
    border-radius: 24px;
    border: none;
    box-shadow: none;
    overflow: hidden;
    transition: background-color 0.2s ease;
}

.obsiblan-blog-grid .obsiblan-blog-grid__card:hover {
    background-color: #E4DCF2;
}

.obsiblan-blog-grid .obsiblan-blog-grid__media-link {
    padding: 16px 16px 0 16px;
    text-decoration: none;
}

.obsiblan-blog-grid .obsiblan-blog-grid__image {
    border-radius: 16px;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    display: block;
}

.obsiblan-blog-grid .obsiblan-blog-grid__meta {
    font-size: 14px;
    color: #5F5B73;
}

.obsiblan-blog-grid .obsiblan-blog-grid__meta-item i {
    color: #5925DC;
    font-size: 16px;
}

.obsiblan-blog-grid .obsiblan-blog-grid__card-title {
    font-size: 22px;
    line-height: 1.3;
    font-weight: 600;
    margin: 0;
    overflow-wrap: anywhere;
}

.obsiblan-blog-grid .obsiblan-blog-grid__title-link {
    color: #1D192B;
    text-decoration: none;
    transition: color 0.2s ease;
}

.obsiblan-blog-grid .obsiblan-blog-grid__title-link:hover,
.obsiblan-blog-grid .obsiblan-blog-grid__title-link:focus {
    color: #5925DC;
}

.obsiblan-blog-grid .obsiblan-blog-grid__card-text {
    font-size: 16px;
    line-height: 1.6;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.obsiblan-blog-grid .obsiblan-blog-grid__btn {
    background: #5925DC;
    color: #FFFFFF;
    font-size: 15px;
    font-weight: 600;
    padding: 10px 20px;
    border-radius: 10px;
    border: none;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
    min-height: 44px;
    box-sizing: border-box;
}

.obsiblan-blog-grid .obsiblan-blog-grid__btn:hover,
.obsiblan-blog-grid .obsiblan-blog-grid__btn:focus {
    background: #471CA9;
    color: #FFFFFF;
}

@media (max-width: 767px) {
    .obsiblan-blog-grid .obsiblan-blog-grid__title {
        font-size: 28px;
        hyphens: auto;
    }

    .obsiblan-blog-grid .obsiblan-blog-grid__card-title {
        font-size: 19px;
        hyphens: auto;
    }

    .obsiblan-blog-grid .obsiblan-blog-grid__lead {
        font-size: 16px;
    }

    .obsiblan-blog-grid .obsiblan-blog-grid__card-body {
        padding: 20px 16px !important;
    }

    .obsiblan-blog-grid .obsiblan-blog-grid__media-link {
        padding: 12px 12px 0 12px;
    }
}

/* ===== footer ===== */
.obsiblan-footer {
    position: relative;
    background: #F8F7FC;
    color: #1D192B;
    font-family: 'Piazzolla', serif;
    overflow: hidden;
}

.obsiblan-footer .obsiblan-footer-divider {
    width: 100%;
    line-height: 0;
    color: #EEE9F7;
}

.obsiblan-footer .obsiblan-footer-curve {
    display: block;
    width: 100%;
    height: 28px;
}

.obsiblan-footer .obsiblan-footer-inner {
    background: #EEE9F7;
    padding: 48px 0 32px 0;
}

.obsiblan-footer .obsiblan-footer-brand-name {
    font-size: 26px;
    font-weight: 800;
    color: #5925DC;
    letter-spacing: -0.01em;
}

.obsiblan-footer .obsiblan-footer-logo {
    max-width: 44px;
    height: auto;
    object-fit: contain;
}

.obsiblan-footer .obsiblan-footer-tagline {
    font-size: 15px;
    line-height: 1.6;
    color: #5F5B73;
    margin-top: 14px;
    margin-bottom: 0;
    max-width: 320px;
}

.obsiblan-footer .obsiblan-footer-heading {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    color: #1D192B;
    margin-bottom: 18px;
    position: relative;
    padding-bottom: 8px;
}

.obsiblan-footer .obsiblan-footer-heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 28px;
    height: 3px;
    background: #5925DC;
    border-radius: 2px;
}

.obsiblan-footer .obsiblan-footer-nav-list,
.obsiblan-footer .obsiblan-footer-contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.obsiblan-footer .obsiblan-footer-link {
    font-size: 15px;
    line-height: 1.5;
    color: #5F5B73;
    text-decoration: none;
    transition: color 0.2s ease;
    overflow-wrap: anywhere;
}

.obsiblan-footer .obsiblan-footer-link:hover,
.obsiblan-footer .obsiblan-footer-link:focus {
    color: #5925DC;
    text-decoration: underline;
}

.obsiblan-footer .obsiblan-contact-icon {
    font-size: 18px;
    color: #5925DC;
    flex-shrink: 0;
}

.obsiblan-footer .obsiblan-footer-text {
    font-size: 15px;
    line-height: 1.5;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.obsiblan-footer .obsiblan-footer-inline-contact {
    max-width: 100%;
}

.obsiblan-footer .obsiblan-footer-wa-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: #5925DC;
    color: #FFFFFF;
    border-radius: 10px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: background-color 0.2s ease;
    width: fit-content;
    max-width: 100%;
    margin-top: 4px;
}

.obsiblan-footer .obsiblan-footer-wa-btn .obsiblan-contact-icon {
    color: #FFFFFF;
}

.obsiblan-footer .obsiblan-footer-wa-btn:hover,
.obsiblan-footer .obsiblan-footer-wa-btn:focus {
    background: #471CA9;
    color: #FFFFFF;
}

.obsiblan-footer .obsiblan-footer-bottom {
    margin-top: 40px;
    padding-top: 24px;
    border-top: 1px solid #E5DEFA;
}

.obsiblan-footer .obsiblan-footer-copyright {
    font-size: 14px;
    color: #5F5B73;
}

.obsiblan-footer .obsiblan-footer-legal-links {
    list-style: none;
    padding: 0;
}

.obsiblan-footer .obsiblan-footer-legal-link {
    font-size: 14px;
    color: #5F5B73;
    text-decoration: none;
    transition: color 0.2s ease;
}

.obsiblan-footer .obsiblan-footer-legal-link:hover,
.obsiblan-footer .obsiblan-footer-legal-link:focus {
    color: #5925DC;
    text-decoration: underline;
}

@media (max-width: 767px) {
    .obsiblan-footer .obsiblan-footer-inner {
        padding: 36px 0 24px 0;
    }

    .obsiblan-footer .obsiblan-footer-heading {
        font-size: 14px;
        margin-bottom: 12px;
    }

    .obsiblan-footer .obsiblan-footer-tagline {
        font-size: 14px;
        max-width: 100%;
    }

    .obsiblan-footer .obsiblan-footer-bottom {
        margin-top: 28px;
        padding-top: 18px;
    }
}

/* ===== PAGE: solutions ===== */
.solutions-listing {
  background-color: #F8F7FC;
  color: #1D192B;
  font-family: 'Piazzolla', serif;
}

.solutions-listing__eyebrow {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #5925DC;
}

.solutions-listing__title {
  font-size: 40px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.01em;
  color: #1D192B;
}

.solutions-listing__accent-bar {
  width: 56px;
  height: 4px;
  background-color: #FF5B37;
  border-radius: 2px;
}

.solutions-listing__lead {
  max-width: 680px;
  font-size: 18px;
  line-height: 1.6;
  color: #5F5B73;
}

.solutions-listing__card {
  background-color: #EEE9F7;
  border-radius: 24px;
  overflow: hidden;
  transition: transform 0.2s ease, background-color 0.2s ease;
}

.solutions-listing__card:hover {
  background-color: #E4DCF2;
  transform: translateY(-4px);
}

.solutions-listing__card-link {
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.solutions-listing__media-wrapper {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 24px 24px 16px 16px;
  background-color: #E5DEFA;
}

.solutions-listing__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}

.solutions-listing__card:hover .solutions-listing__img {
  transform: scale(1.03);
}

.solutions-listing__badge {
  position: absolute;
  top: 16px;
  right: 16px;
  background-color: #5925DC;
  color: #FFFFFF;
  font-weight: 700;
  font-size: 16px;
  padding: 6px 14px;
  border-radius: 999px;
  box-shadow: 0 4px 12px rgba(89, 37, 220, 0.25);
}

.solutions-listing__card-title {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  color: #1D192B;
}

.solutions-listing__card-desc {
  font-size: 16px;
  line-height: 1.6;
  color: #5F5B73;
}

.solutions-listing__btn-explore {
  display: inline-flex;
  align-items: center;
  background-color: #E9D7FE;
  color: #5925DC;
  font-weight: 600;
  font-size: 15px;
  padding: 10px 18px;
  border-radius: 10px;
  border: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.solutions-listing__btn-explore:hover {
  background-color: #D6BBFB;
  color: #471CA9;
}

.solutions-listing__btn-order {
  display: inline-flex;
  align-items: center;
  background-color: #5925DC;
  color: #FFFFFF;
  font-weight: 600;
  font-size: 15px;
  padding: 10px 18px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.solutions-listing__btn-order:hover {
  background-color: #471CA9;
  color: #FFFFFF;
}

.solutions-listing__modal-content {
  background-color: #FFFFFF;
  border-radius: 24px;
  border: none;
  box-shadow: 0 20px 40px rgba(29, 25, 43, 0.15);
  padding: 20px;
}

.solutions-listing__modal-subtitle {
  font-size: 15px;
  color: #5F5B73;
  line-height: 1.5;
}

.solutions-listing__label {
  font-size: 14px;
  font-weight: 600;
  color: #1D192B;
  margin-bottom: 6px;
}

.solutions-listing__input {
  background-color: #F8F7FC;
  border: 1px solid #E5DEFA;
  border-radius: 10px;
  color: #1D192B;
  padding: 10px 14px;
  font-size: 15px;
}

.solutions-listing__input:focus {
  background-color: #FFFFFF;
  border-color: #5925DC;
  box-shadow: 0 0 0 3px rgba(89, 37, 220, 0.15);
  color: #1D192B;
}

.solutions-listing__input::placeholder {
  color: #8C87A2;
  opacity: 1;
}

.solutions-listing__checkbox {
  border-color: #8C87A2;
  border-radius: 4px;
  cursor: pointer;
}

.solutions-listing__checkbox:checked {
  background-color: #5925DC;
  border-color: #5925DC;
}

.solutions-listing__consent-label {
  font-size: 13px;
  line-height: 1.4;
  color: #5F5B73;
}

.solutions-listing__consent-link {
  color: #5925DC;
  text-decoration: underline;
}

.solutions-listing__consent-link:hover {
  color: #471CA9;
}

.solutions-listing__btn-submit {
  background-color: #5925DC;
  color: #FFFFFF;
  border: none;
  border-radius: 10px;
  padding: 12px 24px;
  font-size: 16px;
  font-weight: 600;
  transition: background-color 0.2s ease;
  cursor: pointer;
}

.solutions-listing__btn-submit:hover {
  background-color: #471CA9;
  color: #FFFFFF;
}

@media (max-width: 767px) {
  .solutions-listing__title {
    font-size: 28px;
  }
  .solutions-listing__lead {
    font-size: 16px;
  }
  .solutions-listing__card-title {
    font-size: 20px;
  }
  .solutions-listing__actions {
    flex-direction: column;
    width: 100%;
  }
  .solutions-listing__btn-explore,
  .solutions-listing__btn-order {
    width: 100%;
    justify-content: center;
  }
}

/* ===== PAGE: products ===== */
.obs-products-section {
  background-color: #F8F7FC;
  font-family: 'Piazzolla', serif;
  color: #1D192B;
}

.obs-products-section .obs-products-header {
  border-bottom: 2px solid #E5DEFA;
  padding-bottom: 12px;
}

.obs-products-section .obs-products-title {
  font-family: 'Piazzolla', serif;
  font-size: 28px;
  font-weight: 700;
  color: #1D192B;
  letter-spacing: -0.01em;
}

.obs-products-section .obs-title-line {
  height: 2px;
  background: linear-gradient(90deg, #5925DC 0%, #E5DEFA 100%);
  border-radius: 2px;
}

.obs-products-section .obs-product-card {
  background-color: #EEE9F7;
  border-radius: 24px;
  border: none;
  box-shadow: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.obs-products-section .obs-product-card:hover {
  background-color: #E4DCF2;
  transform: translateY(-3px);
}

.obs-products-section .obs-card-index {
  font-size: 32px;
  font-weight: 800;
  line-height: 1;
  color: #5925DC;
  letter-spacing: -0.03em;
}

.obs-products-section .obs-card-price-badge {
  background-color: #E9D7FE;
  color: #5925DC;
  font-size: 14px;
  font-weight: 700;
  padding: 6px 14px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
}

.obs-products-section .obs-card-image-link {
  border-radius: 16px;
  aspect-ratio: 4 / 3;
  background-color: #E5DEFA;
}

.obs-products-section .obs-product-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 16px;
  transition: transform 0.3s ease;
}

.obs-products-section .obs-product-card:hover .obs-product-img {
  transform: scale(1.03);
}

.obs-products-section .obs-card-title {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.3;
  color: #1D192B;
}

.obs-products-section .obs-title-link {
  color: #1D192B;
  text-decoration: none;
  transition: color 0.2s ease;
}

.obs-products-section .obs-title-link:hover {
  color: #5925DC;
}

.obs-products-section .obs-card-excerpt {
  font-size: 15px;
  line-height: 1.6;
  color: #5F5B73;
  max-width: 90%;
}

.obs-products-section .obs-btn-primary {
  background-color: #5925DC;
  color: #FFFFFF;
  border: none;
  border-radius: 10px;
  padding: 12px 20px;
  font-size: 15px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease;
}

.obs-products-section .obs-btn-primary:hover,
.obs-products-section .obs-btn-primary:focus {
  background-color: #471CA9;
  color: #FFFFFF;
}

.obs-products-section .obs-card-detail-link {
  color: #5925DC;
  font-size: 14px;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 4px;
  transition: color 0.2s ease;
}

.obs-products-section .obs-card-detail-link:hover {
  color: #471CA9;
}

.obs-products-section .obs-modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(29, 25, 43, 0.7);
  backdrop-filter: blur(4px);
  z-index: 1050;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  overflow-y: auto;
}

.obs-products-section .obs-modal-dialog {
  width: 100%;
  max-width: 520px;
  margin: auto;
}

.obs-products-section .obs-modal-content {
  background-color: #FFFFFF;
  border-radius: 24px;
  border: 1px solid #E5DEFA;
  box-shadow: 0 20px 40px rgba(29, 25, 43, 0.15);
}

.obs-products-section .obs-modal-eyebrow {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #7F56D9;
  display: block;
  margin-bottom: 4px;
}

.obs-products-section .obs-modal-title {
  font-size: 24px;
  font-weight: 700;
  color: #1D192B;
}

.obs-products-section .obs-selected-plan-box {
  background-color: #F8F7FC;
  border-radius: 12px;
  border: 1px solid #E5DEFA;
}

.obs-products-section .obs-plan-label {
  font-size: 14px;
  color: #5F5B73;
}

.obs-products-section .obs-plan-price {
  font-size: 18px;
  color: #5925DC;
}

.obs-products-section .obs-form-label {
  font-size: 14px;
  font-weight: 600;
  color: #1D192B;
  margin-bottom: 6px;
}

.obs-products-section .obs-form-input {
  background-color: #F8F7FC;
  border: 1px solid #E5DEFA;
  border-radius: 10px;
  padding: 12px 14px;
  color: #1D192B;
  font-size: 15px;
}

.obs-products-section .obs-form-input:focus {
  background-color: #FFFFFF;
  border-color: #5925DC;
  box-shadow: 0 0 0 3px rgba(89, 37, 220, 0.15);
  color: #1D192B;
}

.obs-products-section .obs-form-input::placeholder {
  color: #8C87A2;
  opacity: 1;
}

.obs-products-section .obs-form-checkbox {
  width: 18px;
  height: 18px;
  border-color: #8C87A2;
  cursor: pointer;
}

.obs-products-section .obs-form-checkbox:checked {
  background-color: #5925DC;
  border-color: #5925DC;
}

.obs-products-section .obs-consent-text {
  font-size: 13px;
  line-height: 1.5;
  color: #5F5B73;
  cursor: pointer;
}

.obs-products-section .obs-policy-link {
  color: #5925DC;
  text-decoration: underline;
}

.obs-products-section .obs-policy-link:hover {
  color: #471CA9;
}

@media (max-width: 767px) {
  .obs-products-section .obs-products-title {
    font-size: 20px;
  }
  .obs-products-section .obs-card-title {
    font-size: 18px;
  }
  .obs-products-section .obs-card-index {
    font-size: 26px;
  }
  .obs-products-section .obs-modal-content {
    padding: 20px 16px;
  }
}

/* ===== PAGE: blog ===== */
.obs-blog-list-section {
  background-color: #F8F7FC;
  font-family: 'Piazzolla', serif;
  color: #1D192B;
}
.obs-blog-list-section .obs-heading-title {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.25;
  color: #1D192B;
  letter-spacing: -0.01em;
}
.obs-blog-list-section .obs-heading-line {
  height: 2px;
  background-color: #E5DEFA;
  min-width: 40px;
}
.obs-blog-list-section .obs-accent-icon {
  color: #5925DC;
  font-size: 20px;
}
.obs-blog-list-section .obs-post-count {
  font-size: 15px;
  font-weight: 600;
  color: #5925DC;
  background-color: #EEE9F7;
  padding: 6px 14px;
  border-radius: 20px;
}
.obs-blog-list-section .obs-section-desc {
  font-size: 17px;
  line-height: 1.6;
  color: #5F5B73;
  max-width: 780px;
}
.obs-blog-list-section .obs-filter-bar {
  background-color: #EEE9F7;
}
.obs-blog-list-section .obs-search-box .obs-search-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: #5F5B73;
  font-size: 18px;
}
.obs-blog-list-section .obs-search-input {
  background-color: #FFFFFF;
  border: 1px solid #E5DEFA;
  border-radius: 10px;
  padding: 10px 14px 10px 42px;
  font-size: 15px;
  color: #1D192B;
}
.obs-blog-list-section .obs-search-input:focus {
  border-color: #5925DC;
  box-shadow: 0 0 0 3px rgba(89, 37, 220, 0.15);
  outline: none;
}
.obs-blog-list-section .obs-search-input::placeholder {
  color: #8C87A2;
  opacity: 1;
}
.obs-blog-list-section .obs-filter-chip {
  background-color: #FFFFFF;
  border: 1px solid #E5DEFA;
  color: #5F5B73;
  font-size: 14px;
  font-weight: 600;
  padding: 8px 16px;
  border-radius: 8px;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.obs-blog-list-section .obs-filter-chip:hover {
  background-color: #E4DCF2;
  color: #1D192B;
  border-color: #D6BBFB;
}
.obs-blog-list-section .obs-filter-chip.active {
  background-color: #5925DC;
  color: #FFFFFF;
  border-color: #5925DC;
}
.obs-blog-list-section .obs-blog-card {
  background-color: #EEE9F7;
  border-radius: 24px;
  overflow: hidden;
  transition: background-color 0.25s ease, transform 0.25s ease;
}
.obs-blog-list-section .obs-blog-card:hover {
  background-color: #E4DCF2;
}
.obs-blog-list-section .obs-card-img-wrapper {
  aspect-ratio: 3 / 2;
  background-color: #D6BBFB;
}
.obs-blog-list-section .obs-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}
.obs-blog-list-section .obs-blog-card:hover .obs-card-img {
  transform: scale(1.03);
}
.obs-blog-list-section .obs-card-badge {
  background-color: rgba(29, 25, 43, 0.85);
  color: #FFFFFF;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 4px 10px;
  border-radius: 6px;
}
.obs-blog-list-section .obs-card-meta {
  font-size: 13px;
  color: #5F5B73;
}
.obs-blog-list-section .obs-card-title {
  font-size: 21px;
  line-height: 1.35;
  font-weight: 700;
}
.obs-blog-list-section .obs-card-title-link {
  color: #1D192B;
  text-decoration: none;
  overflow-wrap: anywhere;
}
.obs-blog-list-section .obs-card-title-link:hover {
  color: #5925DC;
  text-decoration: underline;
}
.obs-blog-list-section .obs-card-excerpt {
  font-size: 15px;
  line-height: 1.6;
  color: #5F5B73;
  overflow-wrap: anywhere;
}
.obs-blog-list-section .border-top-divider {
  border-top: 1px solid #E5DEFA;
}
.obs-blog-list-section .obs-card-link {
  font-size: 15px;
  font-weight: 700;
  color: #5925DC;
  text-decoration: underline;
}
.obs-blog-list-section .obs-card-link:hover {
  color: #471CA9;
}
.obs-blog-list-section .obs-no-results-icon {
  font-size: 48px;
  color: #8C87A2;
}
.obs-blog-list-section .obs-no-results-title {
  font-size: 20px;
  font-weight: 700;
  color: #1D192B;
}
.obs-blog-list-section .obs-no-results-desc {
  font-size: 15px;
  color: #5F5B73;
}
.obs-blog-list-section .obs-reset-btn {
  background-color: #5925DC;
  color: #FFFFFF;
  padding: 10px 20px;
  border-radius: 10px;
  font-weight: 600;
  border: none;
}
.obs-blog-list-section .obs-reset-btn:hover {
  background-color: #471CA9;
  color: #FFFFFF;
}
@media (max-width: 767.98px) {
  .obs-blog-list-section .obs-heading-title {
    font-size: 16px;
    hyphens: auto;
  }
  .obs-blog-list-section .obs-card-title {
    font-size: 14px;
    hyphens: auto;
  }
  .obs-blog-list-section .obs-no-results-title {
    font-size: 14px;
  }
  .obs-blog-list-section .obs-tag-filters {
    justify-content: flex-start !important;
  }
}

/* ===== PAGE: contact ===== */
.obs-contact-section {
  background-color: #F8F7FC;
  font-family: 'Piazzolla', serif;
  color: #1D192B;
}

.obs-contact-section .obs-contact-info-card {
  background-color: #5925DC;
  color: #FFFFFF;
  border-radius: 24px;
}

.obs-contact-section .obs-form-card {
  background-color: #EEE9F7;
  border-radius: 24px;
}

.obs-contact-section .obs-eyebrow-badge {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 50px;
  background-color: rgba(255, 255, 255, 0.14);
  color: #E9D7FE;
}

.obs-contact-section .obs-form-card .obs-eyebrow-badge {
  background-color: #E9D7FE;
  color: #5925DC;
}

.obs-contact-section .obs-info-title {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.25;
  color: #FFFFFF;
  overflow-wrap: anywhere;
}

.obs-contact-section .obs-form-title {
  font-size: 26px;
  font-weight: 700;
  line-height: 1.3;
  color: #1D192B;
  overflow-wrap: anywhere;
}

.obs-contact-section .obs-info-desc {
  font-size: 16px;
  line-height: 1.6;
  color: #E9D7FE;
  overflow-wrap: anywhere;
}

.obs-contact-section .obs-form-subtitle {
  font-size: 15px;
  line-height: 1.6;
  color: #5F5B73;
  overflow-wrap: anywhere;
}

.obs-contact-section .obs-contact-item {
  background-color: rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  color: #FFFFFF;
  transition: background-color 0.2s ease;
}

.obs-contact-section a.obs-contact-item:hover {
  background-color: rgba(255, 255, 255, 0.16);
  color: #FFFFFF;
}

.obs-contact-section .obs-icon-box {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background-color: #7F56D9;
  color: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}

.obs-contact-section .obs-item-label {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #E9D7FE;
  font-weight: 600;
}

.obs-contact-section .obs-item-value {
  font-size: 15px;
  font-weight: 600;
  color: #FFFFFF;
  overflow-wrap: anywhere;
  line-height: 1.4;
}

.obs-contact-section .obs-btn-whatsapp {
  background-color: #25D366;
  color: #FFFFFF;
  font-weight: 600;
  font-size: 15px;
  padding: 12px 24px;
  border-radius: 10px;
  border: none;
  transition: background-color 0.2s ease;
}

.obs-contact-section .obs-btn-whatsapp:hover {
  background-color: #1EBE5D;
  color: #FFFFFF;
}

.obs-contact-section .obs-form-label {
  font-size: 14px;
  font-weight: 600;
  color: #1D192B;
}

.obs-contact-section .obs-input-wrapper {
  position: relative;
}

.obs-contact-section .obs-input-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: #7F56D9;
  font-size: 18px;
  pointer-events: none;
}

.obs-contact-section .obs-form-input {
  background-color: #FFFFFF;
  border: 1px solid #D6BBFB;
  color: #1D192B;
  font-size: 15px;
  border-radius: 10px;
  padding: 11px 14px 11px 42px;
  box-shadow: none;
}

.obs-contact-section .obs-form-textarea {
  background-color: #FFFFFF;
  border: 1px solid #D6BBFB;
  color: #1D192B;
  font-size: 15px;
  border-radius: 10px;
  padding: 12px 14px;
  box-shadow: none;
  resize: vertical;
}

.obs-contact-section .obs-form-input::placeholder,
.obs-contact-section .obs-form-textarea::placeholder {
  color: #8C87A2;
  opacity: 1;
}

.obs-contact-section .obs-form-input:focus,
.obs-contact-section .obs-form-textarea:focus {
  background-color: #FFFFFF;
  border-color: #5925DC;
  color: #1D192B;
  outline: 0;
  box-shadow: 0 0 0 3px rgba(89, 37, 220, 0.15);
}

.obs-contact-section .obs-form-hint {
  font-size: 12px;
  color: #5F5B73;
}

.obs-contact-section .obs-consent-check .form-check-input {
  background-color: #FFFFFF;
  border: 1px solid #7F56D9;
  border-radius: 4px;
  cursor: pointer;
  width: 1.15em;
  height: 1.15em;
}

.obs-contact-section .obs-consent-check .form-check-input:checked {
  background-color: #5925DC;
  border-color: #5925DC;
}

.obs-contact-section .obs-consent-label {
  font-size: 13px;
  line-height: 1.5;
  color: #5F5B73;
  cursor: pointer;
}

.obs-contact-section .obs-inline-link {
  color: #5925DC;
  text-decoration: underline;
  font-weight: 600;
}

.obs-contact-section .obs-inline-link:hover {
  color: #471CA9;
}

.obs-contact-section .obs-btn-primary {
  background-color: #5925DC;
  color: #FFFFFF;
  font-weight: 600;
  font-size: 16px;
  padding: 13px 28px;
  border-radius: 10px;
  border: none;
  transition: background-color 0.2s ease;
}

.obs-contact-section .obs-btn-primary:hover {
  background-color: #471CA9;
  color: #FFFFFF;
}

@media (max-width: 767px) {
  .obs-contact-section .obs-info-title {
    font-size: 16px;
    hyphens: auto;
  }
  .obs-contact-section .obs-form-title {
    font-size: 14px;
    hyphens: auto;
  }
  .obs-contact-section .obs-info-desc,
  .obs-contact-section .obs-form-subtitle {
    font-size: 14px;
  }
  .obs-contact-section .obs-contact-info-card,
  .obs-contact-section .obs-form-card {
    border-radius: 16px;
  }
}

/* ===== PAGE: privacy ===== */
.obs-privacy-section {
  background-color: #F8F7FC;
  font-family: 'Piazzolla', serif;
  color: #1D192B;
}

.obs-privacy-section .obs-privacy-sidebar {
  background-color: #EEE9F7;
  border: none;
}

.obs-privacy-section .obs-privacy-sidebar-badge {
  font-size: 13px;
  color: #5925DC;
  letter-spacing: 0.08em;
}

.obs-privacy-section .obs-privacy-sidebar-title {
  font-size: 20px;
  font-weight: 700;
  color: #1D192B;
  line-height: 1.2;
}

.obs-privacy-section .obs-privacy-nav-link {
  color: #5F5B73;
  font-size: 15px;
  font-weight: 500;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.obs-privacy-section .obs-privacy-nav-link:hover,
.obs-privacy-section .obs-privacy-nav-link.active {
  background-color: #E4DCF2;
  color: #5925DC;
}

.obs-privacy-section .obs-privacy-card {
  background-color: #EEE9F7;
  border: none;
}

.obs-privacy-section .obs-privacy-icon-box {
  width: 48px;
  height: 48px;
  background-color: #E9D7FE;
  color: #5925DC;
  font-size: 22px;
  flex-shrink: 0;
}

.obs-privacy-section .obs-privacy-tag {
  font-size: 12px;
  color: #7F56D9;
  letter-spacing: 0.06em;
}

.obs-privacy-section .obs-privacy-heading {
  font-size: 24px;
  font-weight: 700;
  color: #1D192B;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.obs-privacy-section .obs-privacy-subheading {
  font-size: 18px;
  font-weight: 600;
  color: #1D192B;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.obs-privacy-section .obs-privacy-accent-bar {
  width: 40px;
  height: 4px;
  background-color: #FF5B37;
  border-radius: 2px;
}

.obs-privacy-section .obs-privacy-text {
  font-size: 16px;
  line-height: 1.6;
  color: #5F5B73;
  overflow-wrap: anywhere;
}

.obs-privacy-section .obs-privacy-list {
  padding-left: 1.2rem;
  color: #5F5B73;
  font-size: 16px;
  line-height: 1.6;
}

.obs-privacy-section .obs-privacy-contact-details {
  background-color: #F8F7FC;
  color: #1D192B;
  font-size: 15px;
  line-height: 1.6;
}

.obs-privacy-section .obs-privacy-link {
  color: #5925DC;
  text-decoration: underline;
  font-weight: 600;
}

.obs-privacy-section .obs-privacy-link:hover {
  color: #471CA9;
}

@media (max-width: 767px) {
  .obs-privacy-section .obs-privacy-heading {
    font-size: 16px;
    hyphens: auto;
  }
  .obs-privacy-section .obs-privacy-subheading {
    font-size: 14px;
    hyphens: auto;
  }
  .obs-privacy-section .obs-privacy-text,
  .obs-privacy-section .obs-privacy-list {
    font-size: 14px;
  }
}

/* ===== PAGE: terms ===== */
.terms-page { background-color: #F8F7FC; color: #1D192B; font-family: 'Piazzolla', serif; }
.terms-page .terms-sidebar { position: sticky; top: 100px; }
.terms-page .terms-search-card, .terms-page .terms-nav-card { background-color: #EEE9F7; border-radius: 24px; border: none; }
.terms-page .terms-sidebar-title, .terms-page .terms-nav-title { font-size: 20px; font-weight: 700; color: #1D192B; }
.terms-page .terms-search-input { background-color: #FFFFFF; border: 1px solid #E5DEFA; border-radius: 12px; padding: 10px 40px 10px 14px; font-size: 15px; color: #1D192B; }
.terms-page .terms-search-input::placeholder { color: #8C87A2; opacity: 1; }
.terms-page .terms-search-input:focus { background-color: #FFFFFF; border-color: #5925DC; box-shadow: 0 0 0 3px rgba(89, 37, 220, 0.15); color: #1D192B; }
.terms-page .terms-search-icon { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); color: #7F56D9; pointer-events: none; }
.terms-page .terms-nav-link { color: #5F5B73; text-decoration: none; padding: 8px 12px; border-radius: 10px; font-size: 15px; font-weight: 500; transition: background-color 0.2s ease, color 0.2s ease; }
.terms-page .terms-nav-link:hover { color: #5925DC; background-color: #E4DCF2; }
.terms-page .terms-nav-link.active { color: #FFFFFF; background-color: #5925DC; }
.terms-page .terms-help-box { background-color: #F8F7FC; border-radius: 16px; border-left: 3px solid #7F56D9; }
.terms-page .terms-help-link { color: #5925DC; text-decoration: none; font-size: 14px; }
.terms-page .terms-help-link:hover { color: #471CA9; text-decoration: underline; }
.terms-page .terms-last-updated { background-color: #EEE9F7; border-radius: 16px; font-size: 14px; color: #1D192B; }
.terms-page .terms-status-badge { background-color: #E9D7FE; color: #5925DC; font-weight: 600; font-size: 12px; padding: 6px 12px; border-radius: 20px; }
.terms-page .terms-card { background-color: #FFFFFF; border-radius: 24px; border: 1px solid #E5DEFA; }
.terms-page .terms-badge-pill .badge-text { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: #7F56D9; background-color: #F2EFF9; padding: 4px 10px; border-radius: 8px; display: inline-block; }
.terms-page .terms-heading { font-size: 26px; font-weight: 700; color: #1D192B; line-height: 1.3; overflow-wrap: anywhere; }
.terms-page .terms-accent-bar { width: 48px; height: 4px; background-color: #FF5B37; border-radius: 2px; }
.terms-page .terms-text { font-size: 16px; line-height: 1.65; color: #5F5B73; margin-bottom: 1rem; overflow-wrap: anywhere; }
.terms-page .terms-notice-card { background-color: #F2EFF9; border-radius: 12px; border-left: 4px solid #5925DC; color: #1D192B; }
.terms-page .terms-rule-item { background-color: #F8F7FC; border-radius: 14px; border: 1px solid #E5DEFA; color: #1D192B; }
.terms-page .terms-rule-item li { color: #5F5B73; margin-bottom: 4px; }
.terms-page .terms-list { padding-left: 1.25rem; color: #5F5B73; }
.terms-page .terms-subcard { background-color: #F2EFF9; border-radius: 14px; }
.terms-page .terms-inline-link { color: #5925DC; text-decoration: underline; }
.terms-page .terms-inline-link:hover { color: #471CA9; }
.terms-page .terms-contact-callout { background: linear-gradient(135deg, #5925DC 0%, #7F56D9 100%); border-radius: 20px; color: #FFFFFF; }
.terms-page .terms-contact-icon { width: 44px; height: 44px; background: rgba(255, 255, 255, 0.15); border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 24px; color: #FFFFFF; flex-shrink: 0; }
.terms-page .btn-terms-contact { background-color: #FF5B37; color: #FFFFFF; font-weight: 600; padding: 10px 22px; border-radius: 10px; border: none; transition: background-color 0.2s ease; }
.terms-page .btn-terms-contact:hover { background-color: #E04826; color: #FFFFFF; }
@media (max-width: 767px) { .terms-page .terms-sidebar { position: static; } .terms-page .terms-heading { font-size: 16px; hyphens: auto; } .terms-page .terms-sidebar-title, .terms-page .terms-nav-title { font-size: 14px; } .terms-page .terms-card { border-radius: 18px; padding: 20px !important; } .terms-page .terms-search-card, .terms-page .terms-nav-card { border-radius: 18px; } }

/* ===== PAGE: disclaimer ===== */
.disclaimer-section{background-color:#F8F7FC;color:#1D192B;font-family:'Piazzolla',serif;line-height:1.6}.disclaimer-section h2,.disclaimer-section h3{font-family:'Piazzolla',serif;line-height:1.25;color:#1D192B;overflow-wrap:anywhere}.disclaimer-section .disclaimer-sidebar{background-color:#EEE9F7;border-radius:24px;position:sticky;top:30px}.disclaimer-section .disclaimer-icon-highlight{font-size:24px;color:#FF5B37}.disclaimer-section .disclaimer-icon-sm{font-size:18px;color:#5925DC}.disclaimer-section .disclaimer-badge{font-size:12px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:#5925DC;background-color:#E9D7FE;padding:4px 12px;border-radius:20px}.disclaimer-section .disclaimer-sidebar-title{font-size:22px;font-weight:700;color:#1D192B}.disclaimer-section .disclaimer-sidebar-text{font-size:15px;color:#5F5B73;line-height:1.5}.disclaimer-section .disclaimer-nav-link{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;font-size:15px;font-weight:600;color:#5F5B73;text-decoration:none;transition:background-color 0.2s ease,color 0.2s ease}.disclaimer-section .disclaimer-nav-link i{font-size:17px;color:#7F56D9}.disclaimer-section .disclaimer-nav-link:hover{background-color:#E4DCF2;color:#1D192B}.disclaimer-section .disclaimer-nav-link.active{background-color:#5925DC;color:#FFFFFF}.disclaimer-section .disclaimer-nav-link.active i{color:#FFFFFF}.disclaimer-section .disclaimer-sidebar-card{background-color:#F2EFF9;border-radius:16px}.disclaimer-section .text-violet{color:#5925DC;font-size:14px}.disclaimer-section .disclaimer-inline-link{color:#5925DC;text-decoration:none;font-size:14px;font-weight:500;display:inline-flex;align-items:center;gap:6px;transition:color 0.2s ease}.disclaimer-section .disclaimer-inline-link:hover{color:#471CA9;text-decoration:underline}.disclaimer-section .disclaimer-card{background-color:#EEE9F7;border-radius:24px;border:none}.disclaimer-section .disclaimer-card-icon{font-size:24px;color:#5925DC}.disclaimer-section .disclaimer-card-eyebrow{font-size:13px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:#7F56D9}.disclaimer-section .disclaimer-card-title{font-size:24px;font-weight:700;color:#1D192B}.disclaimer-section .disclaimer-text{font-size:16px;color:#5F5B73;line-height:1.65;overflow-wrap:anywhere}.disclaimer-section .disclaimer-subbox{background-color:#F8F7FC;border-radius:16px}.disclaimer-section .disclaimer-subbox-title{font-size:18px;font-weight:600;color:#1D192B}.disclaimer-section .disclaimer-list{padding-left:0;list-style:none}.disclaimer-section .disclaimer-list-icon{color:#FF5B37;font-size:18px;flex-shrink:0}.disclaimer-section .disclaimer-list span{font-size:15px;color:#5F5B73}.disclaimer-section .disclaimer-mini-card{background-color:#F8F7FC;border-radius:16px}.disclaimer-section .disclaimer-mini-card-title{font-size:16px;font-weight:600;color:#1D192B;display:flex;align-items:center;gap:8px}.disclaimer-section .disclaimer-mini-card-text{font-size:14px;color:#5F5B73;line-height:1.5}.disclaimer-section .disclaimer-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#5925DC;color:#FFFFFF;padding:12px 24px;border-radius:10px;font-size:15px;font-weight:600;text-decoration:none;transition:background-color 0.2s ease;min-height:48px}.disclaimer-section .disclaimer-btn-primary:hover{background:#471CA9;color:#FFFFFF}.disclaimer-section .disclaimer-btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#E9D7FE;color:#5925DC;padding:12px 24px;border-radius:10px;font-size:15px;font-weight:600;text-decoration:none;transition:background-color 0.2s ease,color 0.2s ease;min-height:48px}.disclaimer-section .disclaimer-btn-secondary:hover{background:#D6BBFB;color:#471CA9}@media(max-width:767px){.disclaimer-section .disclaimer-sidebar{position:static;border-radius:16px}.disclaimer-section .disclaimer-card{border-radius:16px}.disclaimer-section h2{font-size:16px}.disclaimer-section h3{font-size:14px}.disclaimer-section .disclaimer-card-title{font-size:16px}.disclaimer-section .disclaimer-sidebar-title{font-size:16px}.disclaimer-section .disclaimer-btn-primary,.disclaimer-section .disclaimer-btn-secondary{width:100%}}

.software-comment-main {
    background-color: #EEE9F7;
    border-radius: 24px;
    border: none;
    box-shadow: none;
}

.software-comment-avatar {
    width: 56px;
    height: 56px;
    object-fit: cover;
}

.software-comment-author {
    font-family: 'Piazzolla', serif;
    font-size: 1.125rem;
    font-weight: 700;
    color: #1D192B;
}

.software-comment-role {
    font-size: 0.8125rem;
    color: #7F56D9;
    font-weight: 500;
}

.software-comment-time {
    font-size: 0.8125rem;
    color: #8C87A2;
}

.software-comment-body {
    font-family: 'Piazzolla', serif;
    font-size: 1rem;
    line-height: 1.6;
    color: #5F5B73;
}

.software-comment-btn {
    border: none;
    background-color: #E9D7FE;
    color: #5925DC;
    font-size: 0.875rem;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 10px;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.software-comment-btn:hover {
    background-color: #D6BBFB;
    color: #471CA9;
}

.software-comment-btn i {
    font-size: 1rem;
}

@media (max-width: 575.98px) {
    .software-comment-avatar {
        width: 44px;
        height: 44px;
    }
}

.software-comment-reply {
    background-color: #F2EFF9;
    border-radius: 20px;
    border: none;
    box-shadow: none;
    position: relative;
}

.software-comment-reply::before {
    content: '';
    position: absolute;
    left: -20px;
    top: 24px;
    width: 14px;
    height: 2px;
    background-color: #E5DEFA;
}

.software-reply-avatar {
    width: 44px;
    height: 44px;
    object-fit: cover;
}

.software-reply-author {
    font-family: 'Piazzolla', serif;
    font-size: 1rem;
    font-weight: 700;
    color: #1D192B;
}

.software-reply-role {
    font-size: 0.75rem;
    color: #7F56D9;
    font-weight: 500;
}

@media (max-width: 575.98px) {
    .software-reply-avatar {
        width: 36px;
        height: 36px;
    }

    .software-comment-reply::before {
        left: -12px;
        width: 8px;
    }
}


/* ===== PAGE TEMPLATE: solutions ===== */
body.obsiblan-solution-detail-body {
    background-color: #F8F7FC;
    color: #1D192B;
    font-family: 'Piazzolla', serif;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

.obsiblan-header {
    background-color: #F8F7FC;
    border-bottom: 1px solid #E5DEFA;
    z-index: 1030;
}

.obsiblan-header .navbar {
    padding-top: 14px;
    padding-bottom: 14px;
    background-color: #F8F7FC;
}

.obsiblan-header .navbar-brand {
    padding: 0;
    margin: 0;
    text-decoration: none;
}

.obsiblan-header .obsiblan-header-logo {
    max-width: 42px;
    height: 42px;
    object-fit: contain;
    display: block;
}

.obsiblan-header .obsiblan-brand-text {
    font-family: 'Piazzolla', serif;
    font-weight: 800;
    font-size: 24px;
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: #1D192B;
}

.obsiblan-header .obsiblan-nav-link {
    font-family: 'Piazzolla', serif;
    font-size: 16px;
    font-weight: 600;
    color: #1D192B;
    padding: 8px 14px;
    border-radius: 8px;
    transition: color 0.2s ease, background-color 0.2s ease;
}

.obsiblan-header .obsiblan-nav-link:hover,
.obsiblan-header .obsiblan-nav-link:focus {
    color: #5925DC;
    background-color: #EEE9F7;
}

.obsiblan-header .obsiblan-toggler {
    border: none;
    background-color: #EEE9F7;
    color: #5925DC;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 22px;
    line-height: 1;
    box-shadow: none;
    outline: none;
}

.obsiblan-header .obsiblan-toggler:focus {
    box-shadow: 0 0 0 2px #7F56D9;
}

.obsiblan-header .obsiblan-header-btn {
    font-family: 'Piazzolla', serif;
    background: linear-gradient(135deg, #5925DC 0%, #7F56D9 100%);
    color: #FFFFFF;
    font-size: 15px;
    font-weight: 700;
    padding: 9px 20px;
    border-radius: 10px;
    border: none;
    transition: background 0.2s ease, transform 0.2s ease;
    text-decoration: none;
}

.obsiblan-header .obsiblan-header-btn:hover,
.obsiblan-header .obsiblan-header-btn:focus {
    background: linear-gradient(135deg, #471CA9 0%, #6941C6 100%);
    color: #FFFFFF;
}

@media (max-width: 991.98px) {
    .obsiblan-header .navbar-collapse {
        background-color: #F8F7FC;
        padding: 16px 8px 8px 8px;
        border-top: 1px solid #E5DEFA;
        margin-top: 10px;
    }

    .obsiblan-header .obsiblan-nav-link {
        padding: 10px 14px;
        font-size: 15px;
    }
}


.solution-hero {
    background: linear-gradient(135deg, #120C24 0%, #2A1554 100%);
    border-bottom: 1px solid #E5DEFA;
}

.solution-breadcrumb {
    list-style: none;
    background: rgba(233, 215, 254, 0.1);
    padding: 6px 16px !important;
    border-radius: 20px;
}

.solution-breadcrumb-item,
.solution-breadcrumb-link {
    color: #E9D7FE;
    font-size: 14px;
    text-decoration: none;
}

.solution-breadcrumb-link:hover {
    color: #FFFFFF;
    text-decoration: underline;
}

.solution-breadcrumb-item.active {
    color: #FFFFFF;
    font-weight: 600;
}

.solution-breadcrumb-sep {
    color: #8C87A2;
    font-size: 12px;
    display: flex;
    align-items: center;
}

.solution-hero__badge {
    background-color: rgba(233, 215, 254, 0.15);
    border: 1px solid rgba(233, 215, 254, 0.3);
    border-radius: 50px;
    padding: 6px 16px;
}

.solution-hero__badge-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #FF5B37;
    display: inline-block;
}

.solution-hero__badge-text {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #E9D7FE;
}

.solution-hero__title {
    font-size: 44px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.02em;
    overflow-wrap: anywhere;
}

.solution-hero__subtitle {
    font-size: 18px;
    line-height: 1.6;
    color: #E9D7FE;
    overflow-wrap: anywhere;
}

.solution-hero__btn-primary {
    background: #FF5B37;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 16px;
    padding: 12px 24px;
    border-radius: 10px;
    border: none;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.solution-hero__btn-primary:hover {
    background: #E04826;
    color: #FFFFFF;
}

.solution-hero__btn-secondary {
    background: rgba(233, 215, 254, 0.18);
    color: #FFFFFF;
    font-weight: 600;
    font-size: 16px;
    border: 1px solid rgba(233, 215, 254, 0.4);
    border-radius: 10px;
    padding: 12px 24px;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.solution-hero__btn-secondary:hover {
    background: #E9D7FE;
    color: #5925DC;
}

.solution-hero__image-card {
    border: 1px solid rgba(233, 215, 254, 0.3);
    border-radius: 0;
    background: #1D192B;
    overflow: hidden;
}

.solution-hero__main-image {
    aspect-ratio: 3 / 2;
    object-fit: cover;
    border-radius: 0;
    display: block;
}


.solution-benefits {
    background-color: #EEE9F7;
    border-bottom: 1px solid #E5DEFA;
}

.solution-benefit-item {
    background-color: #F8F7FC;
    border-radius: 12px;
    height: 100%;
}

.solution-benefit-icon {
    width: 42px;
    height: 42px;
    background: #5925DC;
    color: #FFFFFF;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}

.solution-benefit-title {
    font-size: 15px;
    font-weight: 700;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.solution-benefit-text {
    font-size: 13px;
    color: #5F5B73;
    line-height: 1.4;
    overflow-wrap: anywhere;
}


.solution-section-header {
    position: relative;
}

.solution-eyebrow {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #5925DC;
    display: block;
    margin-bottom: 4px;
}

.solution-section-title {
    font-size: 32px;
    font-weight: 700;
    color: #1D192B;
    line-height: 1.25;
    margin-bottom: 8px;
    overflow-wrap: anywhere;
}

.solution-accent-bar {
    width: 48px;
    height: 4px;
    background: #FF5B37;
    border-radius: 2px;
}

.solution-text {
    font-size: 16px;
    line-height: 1.6;
    color: #5F5B73;
    overflow-wrap: anywhere;
}


.solution-overview-block {
    background-color: #FFFFFF;
    border-radius: 24px;
    border: 1px solid #E5DEFA;
}

.solution-key-facts-wrapper {
    background-color: #F8F7FC;
    border-radius: 16px;
    border: 1px solid #E5DEFA;
}

.solution-facts-title {
    font-size: 18px;
    font-weight: 700;
    color: #1D192B;
}

.solution-fact-dt {
    font-size: 14px;
    font-weight: 600;
    color: #5F5B73;
}

.solution-fact-dd {
    font-size: 15px;
    font-weight: 700;
    color: #5925DC;
}


.solution-purchase-card {
    background-color: #EEE9F7;
    border-radius: 20px;
    border: 1px solid #E5DEFA;
}

.solution-price-val {
    font-size: 36px;
    font-weight: 800;
    color: #5925DC;
}

.solution-price-label,
.solution-price-term {
    font-size: 15px;
    color: #5F5B73;
    font-weight: 600;
}

.solution-purchase-desc {
    font-size: 14px;
    line-height: 1.5;
    color: #5F5B73;
}

.solution-quick-features li span {
    font-size: 14px;
    font-weight: 600;
    color: #1D192B;
}

.solution-purchase-btn {
    background: #5925DC;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 16px;
    padding: 12px 20px;
    border-radius: 10px;
    border: none;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.solution-purchase-btn:hover {
    background: #471CA9;
    color: #FFFFFF;
}


.solution-accordion-item {
    background-color: #FFFFFF;
    border: 1px solid #E5DEFA;
    border-radius: 16px !important;
    margin-bottom: 14px;
    overflow: hidden;
}

.solution-accordion-btn {
    background-color: #FFFFFF;
    font-size: 18px;
    font-weight: 700;
    color: #1D192B;
    padding: 18px 24px;
    box-shadow: none !important;
}

.solution-accordion-btn:not(.collapsed) {
    background-color: #EEE9F7;
    color: #5925DC;
}

.solution-package-module {
    background-color: #F8F7FC;
    border-radius: 12px;
    border: 1px solid #E5DEFA;
    height: 100%;
}

.solution-module-title {
    font-size: 16px;
    font-weight: 700;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.solution-module-desc {
    font-size: 14px;
    color: #5F5B73;
    line-height: 1.5;
    overflow-wrap: anywhere;
}


.solution-specs-table th,
.solution-specs-table td {
    padding: 14px 16px;
    border-color: #E5DEFA;
}

.solution-spec-name {
    font-size: 15px;
    font-weight: 700;
    color: #1D192B;
    width: 35%;
    background-color: #F8F7FC;
}

.solution-spec-val {
    font-size: 15px;
    color: #5F5B73;
}


.solution-faq-card {
    background-color: #F8F7FC;
    border-radius: 12px;
    border: 1px solid #E5DEFA;
}

.solution-faq-q {
    font-size: 16px;
    font-weight: 700;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.solution-faq-a {
    font-size: 14px;
    color: #5F5B73;
    line-height: 1.5;
    overflow-wrap: anywhere;
}


.solution-related-card {
    background-color: #FFFFFF;
    border: 1px solid #E5DEFA;
    border-radius: 0;
}

.solution-related-thumb {
    aspect-ratio: 3 / 2;
    object-fit: cover;
    border: 1px solid #E5DEFA;
    border-radius: 0;
}

.solution-related-name {
    font-size: 16px;
    font-weight: 700;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.solution-related-price {
    font-size: 16px;
    font-weight: 800;
    color: #5925DC;
}

.solution-related-link {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background-color: #EEE9F7;
    color: #5925DC;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 16px;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.solution-related-link:hover {
    background-color: #5925DC;
    color: #FFFFFF;
}


.solution-split-cta {
    background: linear-gradient(135deg, #5925DC 0%, #7F56D9 100%);
    border-radius: 24px;
}

.solution-cta-title {
    font-size: 26px;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.solution-cta-desc {
    font-size: 16px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.solution-cta-btn {
    background: #FF5B37;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 700;
    padding: 12px 26px;
    border-radius: 10px;
    border: none;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.solution-cta-btn:hover {
    background: #E04826;
    color: #FFFFFF;
}


.solution-order-block {
    background-color: #FFFFFF;
    border-radius: 24px;
    border: 1px solid #E5DEFA;
}

.solution-form-label {
    font-size: 14px;
    font-weight: 600;
    color: #1D192B;
    margin-bottom: 6px;
}

.solution-form-input,
.solution-form-textarea {
    background-color: #F8F7FC;
    border: 1px solid #D6BBFB;
    color: #1D192B;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 15px;
}

.solution-form-input:focus,
.solution-form-textarea:focus {
    background-color: #FFFFFF;
    border-color: #5925DC;
    box-shadow: 0 0 0 0.25rem rgba(89, 37, 220, 0.15);
    color: #1D192B;
}

.solution-form-input::placeholder,
.solution-form-textarea::placeholder {
    color: #8C87A2;
    opacity: 1;
}

.solution-consent-check {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.solution-checkbox {
    margin-top: 4px;
    border-color: #7F56D9;
    cursor: pointer;
}

.solution-checkbox:checked {
    background-color: #5925DC;
    border-color: #5925DC;
}

.solution-consent-label {
    font-size: 13px;
    line-height: 1.4;
    color: #5F5B73;
}

.solution-form-link {
    color: #5925DC;
    text-decoration: underline;
    font-weight: 600;
}

.solution-form-link:hover {
    color: #471CA9;
}

.solution-order-submit-btn {
    background: #5925DC;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 16px;
    padding: 14px 28px;
    border-radius: 10px;
    border: none;
    transition: background-color 0.2s ease;
}

.solution-order-submit-btn:hover {
    background: #471CA9;
    color: #FFFFFF;
}


.solution-comments-section {
    background-color: #FFFFFF;
    border-radius: 24px;
    border: 1px solid #E5DEFA;
}

.software-comment {
    background-color: #EEE9F7;
    border-radius: 20px;
}

.software-comment-reply {
    background-color: #E4DCF2;
    border-radius: 16px;
}

.software-comment-avatar,
.software-reply-avatar {
    width: 48px;
    height: 48px;
    object-fit: cover;
}

.software-comment-author,
.software-reply-author {
    font-size: 17px;
    font-weight: 700;
    color: #1D192B;
}

.software-comment-role,
.software-reply-role {
    font-size: 13px;
    color: #5925DC;
    font-weight: 600;
}

.software-comment-time {
    font-size: 13px;
    color: #8C87A2;
}

.software-comment-body p {
    font-size: 15px;
    line-height: 1.6;
    color: #1D192B;
}

.software-comment-btn {
    background: #F8F7FC;
    border: 1px solid #D6BBFB;
    color: #5925DC;
    font-size: 13px;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.software-comment-btn:hover {
    background: #5925DC;
    color: #FFFFFF;
}

.software-comment-btn.is-active {
    background: #5925DC;
    color: #FFFFFF;
}

.solution-add-comment-box {
    background-color: #F8F7FC;
    border-radius: 16px;
    border: 1px solid #E5DEFA;
}

.solution-comment-form-title {
    font-size: 18px;
    font-weight: 700;
    color: #1D192B;
}

.solution-comment-auth-alert {
    background-color: #EEE9F7;
    border: 1px solid #D6BBFB;
    border-radius: 8px;
    color: #5925DC;
    font-size: 14px;
    font-weight: 600;
}

.solution-comment-submit-btn {
    background: #5925DC;
    color: #FFFFFF;
    font-weight: 600;
    font-size: 15px;
    padding: 10px 22px;
    border-radius: 8px;
    border: none;
    transition: background-color 0.2s ease;
}

.solution-comment-submit-btn:hover {
    background: #471CA9;
    color: #FFFFFF;
}


.obsiblan-footer {
    position: relative;
    background: #F8F7FC;
    color: #1D192B;
    font-family: 'Piazzolla', serif;
    overflow: hidden;
}

.obsiblan-footer .obsiblan-footer-divider {
    width: 100%;
    line-height: 0;
    color: #EEE9F7;
}

.obsiblan-footer .obsiblan-footer-curve {
    display: block;
    width: 100%;
    height: 28px;
}

.obsiblan-footer .obsiblan-footer-inner {
    background: #EEE9F7;
    padding: 48px 0 32px 0;
}

.obsiblan-footer .obsiblan-footer-brand-name {
    font-size: 26px;
    font-weight: 800;
    color: #5925DC;
    letter-spacing: -0.01em;
}

.obsiblan-footer .obsiblan-footer-logo {
    max-width: 44px;
    height: auto;
    object-fit: contain;
}

.obsiblan-footer .obsiblan-footer-tagline {
    font-size: 15px;
    line-height: 1.6;
    color: #5F5B73;
    margin-top: 14px;
    margin-bottom: 0;
    max-width: 320px;
}

.obsiblan-footer .obsiblan-footer-heading {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    color: #1D192B;
    margin-bottom: 18px;
    position: relative;
    padding-bottom: 8px;
}

.obsiblan-footer .obsiblan-footer-heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 28px;
    height: 3px;
    background: #5925DC;
    border-radius: 2px;
}

.obsiblan-footer .obsiblan-footer-nav-list,
.obsiblan-footer .obsiblan-footer-contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.obsiblan-footer .obsiblan-footer-link {
    font-size: 15px;
    line-height: 1.5;
    color: #5F5B73;
    text-decoration: none;
    transition: color 0.2s ease;
    overflow-wrap: anywhere;
}

.obsiblan-footer .obsiblan-footer-link:hover,
.obsiblan-footer .obsiblan-footer-link:focus {
    color: #5925DC;
    text-decoration: underline;
}

.obsiblan-footer .obsiblan-contact-icon {
    font-size: 18px;
    color: #5925DC;
    flex-shrink: 0;
}

.obsiblan-footer .obsiblan-footer-text {
    font-size: 15px;
    line-height: 1.5;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.obsiblan-footer .obsiblan-footer-inline-contact {
    max-width: 100%;
}

.obsiblan-footer .obsiblan-footer-wa-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: #5925DC;
    color: #FFFFFF;
    border-radius: 10px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: background-color 0.2s ease;
    width: fit-content;
    max-width: 100%;
    margin-top: 4px;
}

.obsiblan-footer .obsiblan-footer-wa-btn .obsiblan-contact-icon {
    color: #FFFFFF;
}

.obsiblan-footer .obsiblan-footer-wa-btn:hover,
.obsiblan-footer .obsiblan-footer-wa-btn:focus {
    background: #471CA9;
    color: #FFFFFF;
}

.obsiblan-footer .obsiblan-footer-bottom {
    margin-top: 40px;
    padding-top: 24px;
    border-top: 1px solid #E5DEFA;
}

.obsiblan-footer .obsiblan-footer-copyright {
    font-size: 14px;
    color: #5F5B73;
}

.obsiblan-footer .obsiblan-footer-legal-links {
    list-style: none;
    padding: 0;
}

.obsiblan-footer .obsiblan-footer-legal-link {
    font-size: 14px;
    color: #5F5B73;
    text-decoration: none;
    transition: color 0.2s ease;
}

.obsiblan-footer .obsiblan-footer-legal-link:hover,
.obsiblan-footer .obsiblan-footer-legal-link:focus {
    color: #5925DC;
    text-decoration: underline;
}


@media (max-width: 767.98px) {
    .solution-hero__title {
        font-size: 18px;
        hyphens: auto;
    }

    .solution-section-title {
        font-size: 16px;
        hyphens: auto;
    }

    .solution-cta-title {
        font-size: 16px;
        hyphens: auto;
    }

    .solution-facts-title,
    .solution-module-title,
    .solution-comment-form-title {
        font-size: 14px;
        hyphens: auto;
    }

    .solution-hero__btn-primary,
    .solution-hero__btn-secondary,
    .solution-cta-btn,
    .solution-order-submit-btn {
        width: 100%;
    }

    .solution-specs-table th,
    .solution-specs-table td {
        display: block;
        width: 100%;
    }

    .software-comment-reply {
        margin-left: 1rem !important;
    }

    .obsiblan-footer .obsiblan-footer-inner {
        padding: 36px 0 24px 0;
    }

    .obsiblan-footer .obsiblan-footer-heading {
        font-size: 14px;
        margin-bottom: 12px;
    }

    .obsiblan-footer .obsiblan-footer-tagline {
        font-size: 14px;
        max-width: 100%;
    }

    .obsiblan-footer .obsiblan-footer-bottom {
        margin-top: 28px;
        padding-top: 18px;
    }
}

/* ===== PAGE TEMPLATE: products ===== */
.obsiblan-body {
    background-color: #F8F7FC;
    color: #1D192B;
    font-family: 'Piazzolla', serif;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

.obsiblan-header {
    background-color: #F8F7FC;
    border-bottom: 1px solid #E5DEFA;
    z-index: 1030;
}

.obsiblan-header .navbar {
    padding-top: 14px;
    padding-bottom: 14px;
    background-color: #F8F7FC;
}

.obsiblan-header .navbar-brand {
    padding: 0;
    margin: 0;
    text-decoration: none;
}

.obsiblan-header .obsiblan-header-logo {
    max-width: 42px;
    height: 42px;
    object-fit: contain;
    display: block;
}

.obsiblan-header .obsiblan-brand-text {
    font-family: 'Piazzolla', serif;
    font-weight: 800;
    font-size: 24px;
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: #1D192B;
}

.obsiblan-header .obsiblan-nav-link {
    font-family: 'Piazzolla', serif;
    font-size: 16px;
    font-weight: 600;
    color: #1D192B;
    padding: 8px 14px;
    border-radius: 8px;
    transition: color 0.2s ease, background-color 0.2s ease;
}

.obsiblan-header .obsiblan-nav-link:hover,
.obsiblan-header .obsiblan-nav-link:focus {
    color: #5925DC;
    background-color: #EEE9F7;
}

.obsiblan-header .obsiblan-toggler {
    border: none;
    background-color: #EEE9F7;
    color: #5925DC;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 22px;
    line-height: 1;
    box-shadow: none;
    outline: none;
}

.obsiblan-header .obsiblan-toggler:focus {
    box-shadow: 0 0 0 2px #7F56D9;
}

.obsiblan-header .obsiblan-header-btn {
    font-family: 'Piazzolla', serif;
    background: linear-gradient(135deg, #5925DC 0%, #7F56D9 100%);
    color: #FFFFFF;
    font-size: 15px;
    font-weight: 700;
    padding: 9px 20px;
    border-radius: 10px;
    border: none;
    transition: background 0.2s ease;
    text-decoration: none;
}

.obsiblan-header .obsiblan-header-btn:hover,
.obsiblan-header .obsiblan-header-btn:focus {
    background: linear-gradient(135deg, #471CA9 0%, #6941C6 100%);
    color: #FFFFFF;
}

.bg-alt {
    background-color: #F2EFF9;
}

.prod-hero {
    background: linear-gradient(135deg, #120c24 0%, #2e1065 50%, #120c24 100%);
    padding: 50px 0 60px 0;
}

.prod-hero__breadcrumb-link {
    color: #E9D7FE;
    text-decoration: none;
    font-size: 14px;
}

.prod-hero__breadcrumb-link:hover {
    color: #FFFFFF;
    text-decoration: underline;
}

.prod-hero .breadcrumb-item+.breadcrumb-item::before {
    color: #8C87A2;
}

.prod-hero__badge {
    background-color: rgba(233, 215, 254, 0.15);
    border: 1px solid rgba(233, 215, 254, 0.3);
    border-radius: 50px;
    padding: 6px 16px;
}

.prod-hero__badge-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #FF5B37;
}

.prod-hero__badge-text {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #E9D7FE;
}

.prod-hero__title {
    font-family: 'Piazzolla', serif;
    font-size: 48px;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.02em;
    overflow-wrap: anywhere;
}

.prod-hero__subtitle {
    font-size: 18px;
    line-height: 1.6;
    max-width: 700px;
    overflow-wrap: anywhere;
}

.prod-hero__btn-buy {
    background-color: #FF5B37;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 16px;
    border: none;
    border-radius: 10px;
    padding: 13px 26px;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.prod-hero__btn-buy:hover {
    background-color: #E04826;
    color: #FFFFFF;
}

.prod-hero__btn-sec {
    background-color: rgba(233, 215, 254, 0.18);
    color: #FFFFFF;
    font-weight: 600;
    font-size: 16px;
    border: 1px solid rgba(233, 215, 254, 0.4);
    border-radius: 10px;
    padding: 13px 26px;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.prod-hero__btn-sec:hover {
    background-color: #E9D7FE;
    color: #5925DC;
}

.prod-section-header {
    position: relative;
}

.prod-section-eyebrow {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #5925DC;
    margin-bottom: 4px;
}

.prod-section-title {
    font-family: 'Piazzolla', serif;
    font-size: 32px;
    font-weight: 700;
    color: #1D192B;
    line-height: 1.25;
    letter-spacing: -0.01em;
    margin-bottom: 6px;
    overflow-wrap: anywhere;
}

.prod-section-accent-bar {
    width: 36px;
    height: 4px;
    background-color: #FF5B37;
    border-radius: 2px;
    margin-top: 4px;
}

.prod-bento__card {
    background-color: #EEE9F7;
    border-radius: 24px;
    color: #1D192B;
}

.prod-bento__card--large {
    min-height: 360px;
}

.prod-bento__pill {
    background-color: #5925DC;
    color: #FFFFFF;
    font-size: 12px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 6px;
}

.prod-bento__meta-label {
    font-size: 13px;
    color: #5F5B73;
    font-weight: 600;
}

.prod-bento__title {
    font-family: 'Piazzolla', serif;
    font-size: 24px;
    font-weight: 700;
    color: #1D192B;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.prod-bento__title-sm {
    font-family: 'Piazzolla', serif;
    font-size: 20px;
    font-weight: 700;
    color: #1D192B;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.prod-bento__desc {
    font-size: 16px;
    line-height: 1.6;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.prod-bento__stats-row {
    border-top: 1px solid #E5DEFA;
}

.prod-bento__stat-val {
    font-size: 17px;
    font-weight: 700;
    line-height: 1.2;
}

.prod-bento__stat-lbl {
    font-size: 12px;
    color: #5F5B73;
}

.prod-bento__img-tile {
    min-height: 360px;
}

.prod-bento__sharp-img {
    border-radius: 0;
    border: 1px solid #D6BBFB;
    object-fit: cover;
    min-height: 100%;
    display: block;
}

.prod-bento__striped-table {
    background: transparent;
    font-size: 14px;
}

.prod-bento__striped-table th,
.prod-bento__striped-table td {
    background: transparent;
    padding: 10px 12px;
    border-bottom: 1px solid #E5DEFA;
}

.prod-bento__striped-table tbody tr:nth-of-type(odd) th,
.prod-bento__striped-table tbody tr:nth-of-type(odd) td {
    background-color: rgba(255, 255, 255, 0.4);
}

.prod-bento__th {
    font-weight: 700;
    color: #1D192B;
    width: 40%;
}

.prod-bento__td {
    color: #5F5B73;
}

.prod-bento__cta-card {
    background-color: #5925DC;
    border-radius: 24px;
    color: #FFFFFF;
}

.prod-bento__cta-tag {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #E9D7FE;
}

.prod-bento__cta-heading {
    font-family: 'Piazzolla', serif;
    font-size: 22px;
    font-weight: 700;
    color: #FFFFFF;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.prod-bento__cta-text {
    font-size: 14px;
    line-height: 1.5;
    color: #E9D7FE;
    overflow-wrap: anywhere;
}

.prod-bento__price-label {
    font-size: 14px;
    color: #E9D7FE;
}

.prod-bento__price-value {
    font-size: 24px;
    font-weight: 800;
    color: #FFFFFF;
}

.prod-bento__cta-btn {
    background-color: #FF5B37;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 15px;
    padding: 12px 20px;
    border-radius: 10px;
    border: none;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.prod-bento__cta-btn:hover {
    background-color: #E04826;
    color: #FFFFFF;
}

.prod-inline-cta__box {
    background: #EEE9F7;
    border-radius: 18px;
    border-left: 5px solid #5925DC;
}

.prod-inline-cta__icon-circle {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background-color: #5925DC;
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    flex-shrink: 0;
}

.prod-inline-cta__title {
    font-family: 'Piazzolla', serif;
    font-size: 18px;
    font-weight: 700;
    color: #1D192B;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.prod-inline-cta__desc {
    font-size: 14px;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.prod-inline-cta__btn {
    background: #5925DC;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 14px;
    padding: 10px 22px;
    border-radius: 10px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    transition: background-color 0.2s ease;
}

.prod-inline-cta__btn:hover {
    background: #471CA9;
    color: #FFFFFF;
}

.prod-narrow-column {
    max-width: 820px;
}

.prod-wysiwyg-content {
    font-size: 16px;
    line-height: 1.7;
    color: #5F5B73;
}

.prod-wysiwyg-content p {
    margin-bottom: 18px;
    overflow-wrap: anywhere;
}

.prod-lead-text {
    font-size: 18px;
    font-weight: 500;
    color: #1D192B;
}

.prod-wysiwyg-content h3 {
    font-family: 'Piazzolla', serif;
    font-size: 22px;
    font-weight: 700;
    color: #1D192B;
    margin-top: 32px;
    margin-bottom: 14px;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.prod-wysiwyg-content ul {
    margin-bottom: 24px;
    padding-left: 24px;
}

.prod-wysiwyg-content li {
    margin-bottom: 8px;
    overflow-wrap: anywhere;
}

.prod-guide-card {
    background: #FFFFFF;
    border-radius: 20px;
    border: 1px solid #E5DEFA;
}

.prod-guide-card__icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: #EEE9F7;
    color: #5925DC;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
}

.prod-guide-card__title {
    font-family: 'Piazzolla', serif;
    font-size: 18px;
    font-weight: 700;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.prod-guide-card__desc {
    font-size: 14px;
    line-height: 1.6;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.prod-info-tile {
    background: #EEE9F7;
    border-radius: 20px;
}

.prod-info-tile__heading {
    font-family: 'Piazzolla', serif;
    font-size: 20px;
    font-weight: 700;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.prod-info-tile__text {
    font-size: 15px;
    line-height: 1.6;
    color: #5F5B73;
    margin-bottom: 14px;
    overflow-wrap: anywhere;
}

.prod-info-tile__list {
    padding-left: 20px;
    font-size: 14px;
    color: #5F5B73;
}

.prod-info-tile__list li {
    margin-bottom: 6px;
    overflow-wrap: anywhere;
}

.prod-order-card {
    background: #FFFFFF;
    border-radius: 24px;
    border: 1px solid #E5DEFA;
}

.prod-order-card__title {
    font-family: 'Piazzolla', serif;
    font-size: 28px;
    font-weight: 800;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.prod-order-card__subtitle {
    font-size: 16px;
    color: #5925DC;
}

.prod-order-form__label {
    font-size: 14px;
    font-weight: 600;
    color: #1D192B;
    margin-bottom: 6px;
}

.prod-order-form__input,
.prod-order-form__textarea {
    background-color: #F8F7FC;
    border: 1px solid #D6BBFB;
    color: #1D192B;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 15px;
}

.prod-order-form__input:focus,
.prod-order-form__textarea:focus {
    background-color: #FFFFFF;
    border-color: #5925DC;
    box-shadow: 0 0 0 0.25rem rgba(89, 37, 220, 0.15);
    color: #1D192B;
}

.prod-order-form__input::placeholder,
.prod-order-form__textarea::placeholder {
    color: #8C87A2;
    opacity: 1;
}

.prod-order-form__consent {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.prod-order-form__checkbox {
    margin-top: 4px;
    border-color: #7F56D9;
    cursor: pointer;
}

.prod-order-form__checkbox:checked {
    background-color: #5925DC;
    border-color: #5925DC;
}

.prod-order-form__consent-label {
    font-size: 13px;
    line-height: 1.4;
    color: #5F5B73;
}

.prod-order-form__link {
    color: #5925DC;
    text-decoration: underline;
    font-weight: 600;
}

.prod-order-form__link:hover {
    color: #471CA9;
}

.prod-order-form__submit-btn {
    background: #5925DC;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 16px;
    border: none;
    border-radius: 10px;
    padding: 13px 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease;
}

.prod-order-form__submit-btn:hover {
    background: #471CA9;
    color: #FFFFFF;
}

.prod-related-card {
    background: #EEE9F7;
    border-radius: 24px;
}

.prod-related-card__badge {
    background: #E9D7FE;
    color: #5925DC;
    font-size: 12px;
    font-weight: 700;
    padding: 4px 12px;
    border-radius: 50px;
}

.prod-related-card__title {
    font-family: 'Piazzolla', serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
}

.prod-related-card__link {
    color: #1D192B;
    text-decoration: none;
    transition: color 0.2s ease;
    overflow-wrap: anywhere;
}

.prod-related-card__link:hover {
    color: #5925DC;
}

.prod-related-card__desc {
    font-size: 15px;
    line-height: 1.6;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.border-purple-subtle {
    border-color: #E5DEFA !important;
}

.prod-related-card__price {
    font-size: 18px;
    font-weight: 700;
    color: #5925DC;
}

.prod-related-card__action {
    background: #5925DC;
    color: #FFFFFF;
    font-weight: 600;
    font-size: 14px;
    padding: 8px 18px;
    border-radius: 8px;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.prod-related-card__action:hover {
    background: #471CA9;
    color: #FFFFFF;
}

.software-comment {
    background: #FFFFFF;
    border-radius: 20px;
    border: 1px solid #E5DEFA;
}

.software-comment-avatar,
.software-reply-avatar {
    width: 48px;
    height: 48px;
    object-fit: cover;
}

.software-comment-author,
.software-reply-author {
    font-family: 'Piazzolla', serif;
    font-size: 17px;
    font-weight: 700;
    color: #1D192B;
}

.software-comment-role,
.software-reply-role {
    font-size: 13px;
    color: #5925DC;
    font-weight: 600;
}

.software-comment-time {
    font-size: 13px;
    color: #8C87A2;
}

.software-comment-body {
    font-size: 15px;
    line-height: 1.6;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.software-comment-btn {
    background: #EEE9F7;
    border: none;
    color: #5925DC;
    font-size: 13px;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 8px;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.software-comment-btn:hover {
    background: #E9D7FE;
    color: #471CA9;
}

.software-comment-btn-like.is-active {
    background: #5925DC;
    color: #FFFFFF;
}

.prod-comment-form-wrapper {
    background: #FFFFFF;
    border-radius: 24px;
    border: 1px solid #E5DEFA;
}

.prod-comment-form__title {
    font-family: 'Piazzolla', serif;
    font-size: 22px;
    font-weight: 700;
    color: #1D192B;
}

.prod-comment-form__desc {
    font-size: 14px;
    color: #5F5B73;
}

.prod-auth-notice {
    background-color: #EEE9F7;
    color: #5925DC;
    border: 1px solid #D6BBFB;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
}

.prod-comment-form__label {
    font-size: 14px;
    font-weight: 600;
    color: #1D192B;
    margin-bottom: 6px;
}

.prod-comment-form__input,
.prod-comment-form__textarea {
    background-color: #F8F7FC;
    border: 1px solid #D6BBFB;
    color: #1D192B;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 15px;
}

.prod-comment-form__input:focus,
.prod-comment-form__textarea:focus {
    background-color: #FFFFFF;
    border-color: #5925DC;
    box-shadow: 0 0 0 0.25rem rgba(89, 37, 220, 0.15);
    color: #1D192B;
}

.prod-comment-form__input::placeholder,
.prod-comment-form__textarea::placeholder {
    color: #8C87A2;
    opacity: 1;
}

.prod-comment-form__consent {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.prod-comment-form__checkbox {
    margin-top: 4px;
    border-color: #7F56D9;
    cursor: pointer;
}

.prod-comment-form__checkbox:checked {
    background-color: #5925DC;
    border-color: #5925DC;
}

.prod-comment-form__consent-label {
    font-size: 13px;
    line-height: 1.4;
    color: #5F5B73;
}

.prod-comment-form__link {
    color: #5925DC;
    text-decoration: underline;
    font-weight: 600;
}

.prod-comment-form__submit-btn {
    background: #5925DC;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 15px;
    border: none;
    border-radius: 10px;
    padding: 11px 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease;
}

.prod-comment-form__submit-btn:hover {
    background: #471CA9;
    color: #FFFFFF;
}

.obsiblan-footer {
    position: relative;
    background: #F8F7FC;
    color: #1D192B;
    font-family: 'Piazzolla', serif;
    overflow: hidden;
}

.obsiblan-footer .obsiblan-footer-divider {
    width: 100%;
    line-height: 0;
    color: #EEE9F7;
}

.obsiblan-footer .obsiblan-footer-curve {
    display: block;
    width: 100%;
    height: 28px;
}

.obsiblan-footer .obsiblan-footer-inner {
    background: #EEE9F7;
    padding: 48px 0 32px 0;
}

.obsiblan-footer .obsiblan-footer-brand-name {
    font-size: 26px;
    font-weight: 800;
    color: #5925DC;
    letter-spacing: -0.01em;
}

.obsiblan-footer .obsiblan-footer-logo {
    max-width: 44px;
    height: auto;
    object-fit: contain;
}

.obsiblan-footer .obsiblan-footer-tagline {
    font-size: 15px;
    line-height: 1.6;
    color: #5F5B73;
    margin-top: 14px;
    margin-bottom: 0;
    max-width: 320px;
}

.obsiblan-footer .obsiblan-footer-heading {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    color: #1D192B;
    margin-bottom: 18px;
    position: relative;
    padding-bottom: 8px;
}

.obsiblan-footer .obsiblan-footer-heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 28px;
    height: 3px;
    background: #5925DC;
    border-radius: 2px;
}

.obsiblan-footer .obsiblan-footer-nav-list,
.obsiblan-footer .obsiblan-footer-contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.obsiblan-footer .obsiblan-footer-link {
    font-size: 15px;
    line-height: 1.5;
    color: #5F5B73;
    text-decoration: none;
    transition: color 0.2s ease;
    overflow-wrap: anywhere;
}

.obsiblan-footer .obsiblan-footer-link:hover,
.obsiblan-footer .obsiblan-footer-link:focus {
    color: #5925DC;
    text-decoration: underline;
}

.obsiblan-footer .obsiblan-contact-icon {
    font-size: 18px;
    color: #5925DC;
    flex-shrink: 0;
}

.obsiblan-footer .obsiblan-footer-text {
    font-size: 15px;
    line-height: 1.5;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.obsiblan-footer .obsiblan-footer-inline-contact {
    max-width: 100%;
}

.obsiblan-footer .obsiblan-footer-wa-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: #5925DC;
    color: #FFFFFF;
    border-radius: 10px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: background-color 0.2s ease;
    width: fit-content;
    max-width: 100%;
    margin-top: 4px;
}

.obsiblan-footer .obsiblan-footer-wa-btn .obsiblan-contact-icon {
    color: #FFFFFF;
}

.obsiblan-footer .obsiblan-footer-wa-btn:hover,
.obsiblan-footer .obsiblan-footer-wa-btn:focus {
    background: #471CA9;
    color: #FFFFFF;
}

.obsiblan-footer .obsiblan-footer-bottom {
    margin-top: 40px;
    padding-top: 24px;
    border-top: 1px solid #E5DEFA;
}

.obsiblan-footer .obsiblan-footer-copyright {
    font-size: 14px;
    color: #5F5B73;
}

.obsiblan-footer .obsiblan-footer-legal-links {
    list-style: none;
    padding: 0;
}

.obsiblan-footer .obsiblan-footer-legal-link {
    font-size: 14px;
    color: #5F5B73;
    text-decoration: none;
    transition: color 0.2s ease;
}

.obsiblan-footer .obsiblan-footer-legal-link:hover,
.obsiblan-footer .obsiblan-footer-legal-link:focus {
    color: #5925DC;
    text-decoration: underline;
}

@media (max-width: 767px) {
    .prod-hero__title {
        font-size: 18px;
        hyphens: auto;
    }

    .prod-hero__subtitle {
        font-size: 15px;
    }

    .prod-section-title {
        font-size: 16px;
        hyphens: auto;
    }

    .prod-bento__title {
        font-size: 14px;
        hyphens: auto;
    }

    .prod-bento__title-sm,
    .prod-bento__cta-heading,
    .prod-guide-card__title,
    .prod-info-tile__heading,
    .prod-related-card__title,
    .prod-comment-form__title {
        font-size: 14px;
        hyphens: auto;
    }

    .prod-order-card__title {
        font-size: 16px;
        hyphens: auto;
    }

    .prod-bento__striped-table thead {
        display: none;
    }

    .prod-bento__striped-table,
    .prod-bento__striped-table tbody,
    .prod-bento__striped-table tr,
    .prod-bento__striped-table td,
    .prod-bento__striped-table th {
        display: block;
        width: 100%;
    }

    .prod-bento__striped-table th {
        padding-bottom: 2px;
    }

    .prod-bento__striped-table td {
        padding-top: 2px;
    }

    .obsiblan-footer .obsiblan-footer-inner {
        padding: 36px 0 24px 0;
    }

    .obsiblan-footer .obsiblan-footer-heading {
        font-size: 14px;
        margin-bottom: 12px;
    }

    .obsiblan-footer .obsiblan-footer-tagline {
        font-size: 14px;
        max-width: 100%;
    }

    .obsiblan-footer .obsiblan-footer-bottom {
        margin-top: 28px;
        padding-top: 18px;
    }
}

/* ===== PAGE TEMPLATE: blog ===== */
.obsiblan-header {
    background-color: #F8F7FC;
    border-bottom: 1px solid #E5DEFA;
    z-index: 1030;
}

.obsiblan-header .navbar {
    padding-top: 14px;
    padding-bottom: 14px;
    background-color: #F8F7FC;
}

.obsiblan-header .navbar-brand {
    padding: 0;
    margin: 0;
    text-decoration: none;
}

.obsiblan-header .obsiblan-header-logo {
    max-width: 42px;
    height: 42px;
    object-fit: contain;
    display: block;
}

.obsiblan-header .obsiblan-brand-text {
    font-family: 'Piazzolla', serif;
    font-weight: 800;
    font-size: 24px;
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: #1D192B;
}

.obsiblan-header .obsiblan-nav-link {
    font-family: 'Piazzolla', serif;
    font-size: 16px;
    font-weight: 600;
    color: #1D192B;
    padding: 8px 14px;
    border-radius: 8px;
    transition: color 0.2s ease, background-color 0.2s ease;
}

.obsiblan-header .obsiblan-nav-link:hover,
.obsiblan-header .obsiblan-nav-link:focus {
    color: #5925DC;
    background-color: #EEE9F7;
}

.obsiblan-header .obsiblan-toggler {
    border: none;
    background-color: #EEE9F7;
    color: #5925DC;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 22px;
    line-height: 1;
    box-shadow: none;
    outline: none;
}

.obsiblan-header .obsiblan-toggler:focus {
    box-shadow: 0 0 0 2px #7F56D9;
}

.obsiblan-header .obsiblan-header-btn {
    font-family: 'Piazzolla', serif;
    background: linear-gradient(135deg, #5925DC 0%, #7F56D9 100%);
    color: #FFFFFF;
    font-size: 15px;
    font-weight: 700;
    padding: 9px 20px;
    border-radius: 10px;
    border: none;
    transition: background 0.2s ease, transform 0.2s ease;
    text-decoration: none;
}

.obsiblan-header .obsiblan-header-btn:hover,
.obsiblan-header .obsiblan-header-btn:focus {
    background: linear-gradient(135deg, #471CA9 0%, #6941C6 100%);
    color: #FFFFFF;
}

@media (max-width: 991.98px) {
    .obsiblan-header .navbar-collapse {
        background-color: #F8F7FC;
        padding: 16px 8px 8px 8px;
        border-top: 1px solid #E5DEFA;
        margin-top: 10px;
    }

    .obsiblan-header .obsiblan-nav-link {
        padding: 10px 14px;
        font-size: 15px;
    }
}

.obsiblan-article-hero {
    background: linear-gradient(135deg, #F8F7FC 0%, #EDE7F8 100%);
    color: #1D192B;
}

.obsiblan-breadcrumb-link {
    color: #5F5B73;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: color 0.2s ease;
}

.obsiblan-breadcrumb-link:hover {
    color: #5925DC;
}

.obsiblan-breadcrumb-separator {
    color: #8C87A2;
    font-size: 12px;
}

.obsiblan-breadcrumb-item.active span {
    color: #5925DC;
    font-size: 14px;
    font-weight: 600;
}

.obsiblan-article-hero__badge {
    background-color: #EEE9F7;
    border-radius: 50px;
    padding: 6px 16px;
}

.obsiblan-article-hero__badge-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #FF5B37;
    display: inline-block;
}

.obsiblan-article-hero__badge-text {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #5925DC;
}

.obsiblan-article-hero__title {
    font-family: 'Piazzolla', serif;
    font-size: 48px;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.obsiblan-article-hero__subtitle {
    font-size: 18px;
    line-height: 1.6;
    color: #5F5B73;
    max-width: 800px;
    overflow-wrap: anywhere;
}

.obsiblan-article-meta {
    color: #5F5B73;
    font-size: 14px;
    font-weight: 600;
}

.obsiblan-article-meta__item {
    color: #5F5B73;
}

.obsiblan-article-meta__item i {
    color: #5925DC;
    font-size: 16px;
}

.obsiblan-hero-divider {
    width: 100%;
    line-height: 0;
    color: #F8F7FC;
    background: #EDE7F8;
}

.obsiblan-curve-svg {
    display: block;
    width: 100%;
    height: 24px;
}

.obsiblan-article-content {
    background-color: #F8F7FC;
}

.obsiblan-article-featured-image-holder {
    border-radius: 24px;
    overflow: hidden;
    background-color: #EEE9F7;
    aspect-ratio: 16 / 9;
}

.obsiblan-article-main-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.obsiblan-key-takeaways {
    background-color: #EEE9F7;
    border-radius: 20px;
    border-left: 4px solid #5925DC;
}

.obsiblan-takeaways-icon {
    font-size: 22px;
    color: #5925DC;
}

.obsiblan-takeaways-title {
    font-family: 'Piazzolla', serif;
    font-size: 20px;
    font-weight: 700;
    color: #1D192B;
}

.obsiblan-takeaways-list {
    padding-left: 20px;
    margin-top: 10px;
}

.obsiblan-takeaways-item {
    font-size: 15px;
    line-height: 1.6;
    color: #1D192B;
    margin-bottom: 6px;
}

.obsiblan-takeaways-item:last-child {
    margin-bottom: 0;
}

.obsiblan-body-h2 {
    font-family: 'Piazzolla', serif;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.25;
    color: #1D192B;
    padding-bottom: 10px;
    overflow-wrap: anywhere;
}

.obsiblan-body-h2::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 36px;
    height: 4px;
    background: #5925DC;
    border-radius: 2px;
}

.obsiblan-body-p {
    font-size: 16px;
    line-height: 1.7;
    color: #5F5B73;
    margin-bottom: 16px;
    overflow-wrap: anywhere;
}

.obsiblan-quote {
    background-color: #F2EFF9;
    border-left: 4px solid #FF5B37;
    border-radius: 12px;
}

.obsiblan-quote-text {
    font-family: 'Piazzolla', serif;
    font-size: 18px;
    font-style: italic;
    color: #1D192B;
    line-height: 1.5;
}

.obsiblan-quote-author {
    font-size: 14px;
    font-weight: 700;
    color: #5925DC;
    display: block;
}

.obsiblan-points-list {
    padding-left: 20px;
}

.obsiblan-points-item {
    font-size: 16px;
    line-height: 1.6;
    color: #5F5B73;
    margin-bottom: 8px;
}

.obsiblan-share-bar {
    background-color: #EEE9F7;
}

.obsiblan-share-icon {
    font-size: 22px;
    color: #5925DC;
}

.obsiblan-share-label {
    font-size: 15px;
    font-weight: 700;
    color: #1D192B;
}

.obsiblan-share-btn {
    background-color: #5925DC;
    color: #FFFFFF;
    font-size: 14px;
    font-weight: 600;
    border-radius: 8px;
    padding: 8px 16px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: background-color 0.2s ease;
}

.obsiblan-share-btn:hover {
    background-color: #471CA9;
    color: #FFFFFF;
}

.obsiblan-copy-btn {
    background-color: #E9D7FE;
    color: #5925DC;
    font-size: 14px;
    font-weight: 600;
    border-radius: 8px;
    padding: 8px 16px;
    border: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.obsiblan-copy-btn:hover {
    background-color: #D6BBFB;
    color: #471CA9;
}

.obsiblan-comment-badge {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    background-color: #EEE9F7;
    color: #5925DC;
    padding: 4px 10px;
    border-radius: 20px;
    letter-spacing: 0.05em;
}

.software-comment {
    background-color: #EEE9F7;
    border-radius: 20px;
    color: #1D192B;
}

.software-comment-avatar,
.software-reply-avatar {
    width: 48px;
    height: 48px;
    object-fit: cover;
}

.software-comment-author,
.software-reply-author {
    font-family: 'Piazzolla', serif;
    font-size: 17px;
    font-weight: 700;
    color: #1D192B;
}

.software-comment-role,
.software-reply-role {
    font-size: 13px;
    color: #5F5B73;
    display: block;
}

.software-comment-time {
    font-size: 13px;
    color: #8C87A2;
}

.software-comment-body p {
    font-size: 15px;
    line-height: 1.6;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.software-comment-btn {
    background: #FFFFFF;
    border: 1px solid #D6BBFB;
    color: #5925DC;
    border-radius: 8px;
    padding: 5px 12px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.software-comment-btn:hover {
    background: #5925DC;
    color: #FFFFFF;
}

.software-comment-btn.is-active {
    background: #5925DC;
    color: #FFFFFF;
    border-color: #5925DC;
}

.obsiblan-comment-form-holder {
    background-color: #EEE9F7;
}

.obsiblan-form-heading {
    font-family: 'Piazzolla', serif;
    font-size: 22px;
    font-weight: 700;
    color: #1D192B;
}

.obsiblan-form-sub {
    font-size: 14px;
    color: #5F5B73;
}

.obsiblan-label {
    font-size: 14px;
    font-weight: 600;
    color: #1D192B;
    margin-bottom: 6px;
}

.obsiblan-input,
.obsiblan-textarea {
    background-color: #FFFFFF;
    border: 1px solid #D6BBFB;
    color: #1D192B;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 15px;
}

.obsiblan-input:focus,
.obsiblan-textarea:focus {
    background-color: #FFFFFF;
    border-color: #5925DC;
    box-shadow: 0 0 0 0.25rem rgba(89, 37, 220, 0.15);
    color: #1D192B;
}

.obsiblan-input::placeholder,
.obsiblan-textarea::placeholder {
    color: #8C87A2;
    opacity: 1;
}

.obsiblan-consent-check {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.obsiblan-checkbox {
    margin-top: 4px;
    border-color: #7F56D9;
    cursor: pointer;
}

.obsiblan-checkbox:checked {
    background-color: #5925DC;
    border-color: #5925DC;
}

.obsiblan-consent-label {
    font-size: 13px;
    line-height: 1.4;
    color: #5F5B73;
}

.obsiblan-text-link {
    color: #5925DC;
    text-decoration: underline;
    font-weight: 600;
}

.obsiblan-text-link:hover {
    color: #471CA9;
}

.obsiblan-primary-btn {
    background: #5925DC;
    color: #FFFFFF;
    font-weight: 600;
    font-size: 15px;
    border: none;
    border-radius: 10px;
    padding: 11px 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease;
}

.obsiblan-primary-btn:hover {
    background: #471CA9;
    color: #FFFFFF;
}

.obsiblan-accent-btn {
    background: #FF5B37;
    color: #FFFFFF;
    font-weight: 600;
    font-size: 15px;
    border: none;
    border-radius: 10px;
    padding: 12px 24px;
    transition: background-color 0.2s ease;
}

.obsiblan-accent-btn:hover {
    background: #E04826;
    color: #FFFFFF;
}

.obsiblan-sidebar-sticky {
    position: sticky;
    top: 90px;
}

.obsiblan-widget {
    background-color: #EEE9F7;
}

.obsiblan-widget-icon {
    font-size: 20px;
    color: #5925DC;
}

.obsiblan-widget-title {
    font-family: 'Piazzolla', serif;
    font-size: 18px;
    font-weight: 700;
    color: #1D192B;
}

.obsiblan-chip {
    background-color: #F8F7FC;
    color: #5925DC;
    font-size: 12px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 20px;
}

.obsiblan-toc-link {
    font-size: 14px;
    line-height: 1.4;
    color: #5F5B73;
    cursor: default;
    overflow-wrap: anywhere;
}

.obsiblan-toc-arrow {
    color: #5925DC;
    font-size: 13px;
    flex-shrink: 0;
}

.obsiblan-related-thumb {
    width: 64px;
    height: 64px;
    object-fit: cover;
    background-color: #E5DEFA;
}

.obsiblan-related-title {
    font-family: 'Piazzolla', serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.35;
    color: #1D192B;
    transition: color 0.2s ease;
    overflow-wrap: anywhere;
}

.obsiblan-related-card:hover .obsiblan-related-title {
    color: #5925DC;
}

.obsiblan-related-date {
    font-size: 12px;
    color: #8C87A2;
}

.obsiblan-widget-cta {
    background: linear-gradient(135deg, #5925DC 0%, #7F56D9 100%);
    color: #FFFFFF;
}

.obsiblan-widget-cta__badge {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #E9D7FE;
}

.obsiblan-widget-cta__heading {
    font-family: 'Piazzolla', serif;
    font-size: 20px;
    font-weight: 700;
    color: #FFFFFF;
    overflow-wrap: anywhere;
}

.obsiblan-widget-cta__text {
    font-size: 14px;
    line-height: 1.5;
    color: #E9D7FE;
    overflow-wrap: anywhere;
}

.obsiblan-newsletter-section {
    background-color: #F8F7FC;
}

.obsiblan-newsletter-banner {
    background-color: #EEE9F7;
}

.obsiblan-newsletter-badge {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #5925DC;
}

.obsiblan-newsletter-title {
    font-family: 'Piazzolla', serif;
    font-size: 32px;
    font-weight: 700;
    color: #1D192B;
    overflow-wrap: anywhere;
}

.obsiblan-newsletter-lead {
    font-size: 15px;
    line-height: 1.6;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.obsiblan-footer {
    position: relative;
    background: #F8F7FC;
    color: #1D192B;
    font-family: 'Piazzolla', serif;
    overflow: hidden;
}

.obsiblan-footer .obsiblan-footer-divider {
    width: 100%;
    line-height: 0;
    color: #EEE9F7;
}

.obsiblan-footer .obsiblan-footer-curve {
    display: block;
    width: 100%;
    height: 28px;
}

.obsiblan-footer .obsiblan-footer-inner {
    background: #EEE9F7;
    padding: 48px 0 32px 0;
}

.obsiblan-footer .obsiblan-footer-brand-name {
    font-size: 26px;
    font-weight: 800;
    color: #5925DC;
    letter-spacing: -0.01em;
}

.obsiblan-footer .obsiblan-footer-logo {
    max-width: 44px;
    height: auto;
    object-fit: contain;
}

.obsiblan-footer .obsiblan-footer-tagline {
    font-size: 15px;
    line-height: 1.6;
    color: #5F5B73;
    margin-top: 14px;
    margin-bottom: 0;
    max-width: 320px;
}

.obsiblan-footer .obsiblan-footer-heading {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    color: #1D192B;
    margin-bottom: 18px;
    position: relative;
    padding-bottom: 8px;
}

.obsiblan-footer .obsiblan-footer-heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 28px;
    height: 3px;
    background: #5925DC;
    border-radius: 2px;
}

.obsiblan-footer .obsiblan-footer-nav-list,
.obsiblan-footer .obsiblan-footer-contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.obsiblan-footer .obsiblan-footer-link {
    font-size: 15px;
    line-height: 1.5;
    color: #5F5B73;
    text-decoration: none;
    transition: color 0.2s ease;
    overflow-wrap: anywhere;
}

.obsiblan-footer .obsiblan-footer-link:hover,
.obsiblan-footer .obsiblan-footer-link:focus {
    color: #5925DC;
    text-decoration: underline;
}

.obsiblan-footer .obsiblan-contact-icon {
    font-size: 18px;
    color: #5925DC;
    flex-shrink: 0;
}

.obsiblan-footer .obsiblan-footer-text {
    font-size: 15px;
    line-height: 1.5;
    color: #5F5B73;
    overflow-wrap: anywhere;
}

.obsiblan-footer .obsiblan-footer-inline-contact {
    max-width: 100%;
}

.obsiblan-footer .obsiblan-footer-wa-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: #5925DC;
    color: #FFFFFF;
    border-radius: 10px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: background-color 0.2s ease;
    width: fit-content;
    max-width: 100%;
    margin-top: 4px;
}

.obsiblan-footer .obsiblan-footer-wa-btn .obsiblan-contact-icon {
    color: #FFFFFF;
}

.obsiblan-footer .obsiblan-footer-wa-btn:hover,
.obsiblan-footer .obsiblan-footer-wa-btn:focus {
    background: #471CA9;
    color: #FFFFFF;
}

.obsiblan-footer .obsiblan-footer-bottom {
    margin-top: 40px;
    padding-top: 24px;
    border-top: 1px solid #E5DEFA;
}

.obsiblan-footer .obsiblan-footer-copyright {
    font-size: 14px;
    color: #5F5B73;
}

.obsiblan-footer .obsiblan-footer-legal-links {
    list-style: none;
    padding: 0;
}

.obsiblan-footer .obsiblan-footer-legal-link {
    font-size: 14px;
    color: #5F5B73;
    text-decoration: none;
    transition: color 0.2s ease;
}

.obsiblan-footer .obsiblan-footer-legal-link:hover,
.obsiblan-footer .obsiblan-footer-legal-link:focus {
    color: #5925DC;
    text-decoration: underline;
}

@media (max-width: 767px) {
    .obsiblan-article-hero__title {
        font-size: 18px;
        hyphens: auto;
    }

    .obsiblan-body-h2 {
        font-size: 16px;
        hyphens: auto;
    }

    .obsiblan-takeaways-title,
    .obsiblan-form-heading,
    .obsiblan-widget-title,
    .obsiblan-widget-cta__heading,
    .obsiblan-newsletter-title {
        font-size: 16px;
        hyphens: auto;
    }

    .obsiblan-article-hero__subtitle,
    .obsiblan-body-p,
    .obsiblan-newsletter-lead {
        font-size: 14px;
    }

    .obsiblan-sidebar-sticky {
        position: static;
    }

    .obsiblan-footer .obsiblan-footer-inner {
        padding: 36px 0 24px 0;
    }

    .obsiblan-footer .obsiblan-footer-heading {
        font-size: 14px;
        margin-bottom: 12px;
    }

    .obsiblan-footer .obsiblan-footer-tagline {
        font-size: 14px;
        max-width: 100%;
    }

    .obsiblan-footer .obsiblan-footer-bottom {
        margin-top: 28px;
        padding-top: 18px;
    }
}

/* 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%;
  }
}

/* ===== compact hero (all pages except homepage) ===== */
.hero-obsiblan--compact {
    min-height: 42vh;
    padding-top: 48px;
    padding-bottom: 48px;
}

.hero-obsiblan--compact .hero-obsiblan__hero-row {
    min-height: 0;
}

@media (max-width: 767px) {
    .hero-obsiblan--compact {
        min-height: 0;
        padding-top: 40px;
        padding-bottom: 40px;
    }
}

/* ===== related cards: linked thumb + title ===== */
.solution-related-name-link {
    color: #1D192B;
    transition: color 0.2s ease;
}

.solution-related-name-link:hover,
.solution-related-name-link:focus {
    color: #5925DC;
}

.solution-related-thumb-link .solution-related-thumb {
    transition: opacity 0.2s ease;
}

.solution-related-thumb-link:hover .solution-related-thumb,
.solution-related-thumb-link:focus .solution-related-thumb {
    opacity: 0.85;
}

/* ===== order form modal ===== */
.solution-order-modal {
    background-color: transparent;
    box-shadow: none;
}

.solution-order-modal .modal-body {
    position: relative;
}

.solution-order-modal__close {
    position: absolute;
    top: 22px;
    right: 22px;
    z-index: 5;
    opacity: 0.6;
}

.solution-order-modal__close:hover {
    opacity: 1;
}
