/* ==========================================================================
   Site pages typography (about / terms / privacy / guide)
   ========================================================================== */
.site-rich-text,
.site-rich-text * {
    font-family: YekanBakh, sans-serif !important;
}

.site-rich-text {
    font-size: 1rem;
    line-height: 2;
    color: #67788E;
    word-break: break-word;
}

.site-rich-text p,
.site-rich-text li,
.site-rich-text span,
.site-rich-text div,
.site-rich-text font {
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

.site-rich-text font {
    color: inherit !important;
}

.site-rich-text h1,
.site-rich-text h2,
.site-rich-text h3,
.site-rich-text h4,
.site-rich-text h5,
.site-rich-text h6 {
    color: #0C2D5B !important;
    font-weight: 700 !important;
    line-height: 1.6 !important;
    margin-top: 1.25em;
    margin-bottom: 0.75em;
    padding-bottom: 0.45rem;
    border-bottom: 1px solid #E7EAF0 !important;
}

.site-rich-text h1:first-child,
.site-rich-text h2:first-child,
.site-rich-text h3:first-child,
.site-rich-text h4:first-child {
    margin-top: 0;
}

.site-rich-text h1 { font-size: 1.75rem !important; }
.site-rich-text h2 { font-size: 1.5rem !important; }
.site-rich-text h3 { font-size: 1.25rem !important; }
.site-rich-text h4 { font-size: 1.125rem !important; }

.site-rich-text strong,
.site-rich-text b {
    color: #181E25 !important;
    font-weight: 700 !important;
}

.site-rich-text a {
    color: #FA5C64 !important;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.site-rich-text ul,
.site-rich-text ol {
    margin: 0.75em 0;
    padding-right: 1.25em;
}

.site-rich-text li {
    margin: 0.35em 0;
}

.site-page-prose.site-rich-text,
.about-page-prose.site-rich-text {
    font-size: 1.0625rem;
    line-height: 2;
    color: #181E25;
}

.site-page-section-body.site-rich-text,
.about-page-section-body.site-rich-text {
    font-size: 0.9375rem;
    line-height: 1.875rem;
}

.about-page-excerpt.site-rich-text {
    font-size: 1rem;
    line-height: 2;
    color: #67788E;
}

.site-page-faq .faq-answer.site-rich-text,
.about-page-faq .faq-answer.site-rich-text {
    font-size: 0.9375rem;
    line-height: 1.875rem;
}

.about-page-video {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #000;
}

.about-page-video__el,
.about-page-video video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #000;
}

.about-page-video__cover {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
}

.about-page-video.is-playing .about-page-video__cover {
    display: none;
}

.about-page-video__poster {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none !important;
    object-fit: cover;
    object-position: top center;
}

.about-page-video__shade {
    position: absolute;
    inset: 0;
    background: rgba(8, 18, 36, 0.28);
    pointer-events: none;
}

.about-page-video__play {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4.5rem;
    height: 4.5rem;
    border: 0;
    border-radius: 999px;
    color: #fff;
    background: #FA5C64;
    cursor: pointer;
    box-shadow: 0 12px 32px rgba(250, 92, 100, 0.45);
    transition: transform 0.2s ease, background-color 0.2s, box-shadow 0.2s;
}

.about-page-video__play svg {
    width: 1.5rem;
    height: 1.5rem;
    margin-inline-start: 0.12rem;
}

.about-page-video__play:hover {
    transform: scale(1.06);
    background: #f44750;
    box-shadow: 0 16px 40px rgba(250, 92, 100, 0.55);
}

.about-page-video__play:focus-visible {
    outline: 3px solid rgba(250, 92, 100, 0.45);
    outline-offset: 4px;
}

.about-page-video__play-ring {
    position: absolute;
    inset: -10px;
    border-radius: 999px;
    border: 2px solid rgba(255, 255, 255, 0.45);
    animation: about-video-play-pulse 2.2s ease-out infinite;
    pointer-events: none;
}

@keyframes about-video-play-pulse {
    0% {
        transform: scale(0.85);
        opacity: 0.7;
    }
    100% {
        transform: scale(1.35);
        opacity: 0;
    }
}

/* Dark mode */
html.dark .site-rich-text {
    color: #94a3b8 !important;
}

html.dark .site-page-prose.site-rich-text,
html.dark .about-page-prose.site-rich-text {
    color: #cbd5e1 !important;
}

html.dark .site-rich-text h1,
html.dark .site-rich-text h2,
html.dark .site-rich-text h3,
html.dark .site-rich-text h4,
html.dark .site-rich-text h5,
html.dark .site-rich-text h6 {
    color: #f1f5f9 !important;
    border-bottom-color: #334155;
}

html.dark .site-rich-text strong,
html.dark .site-rich-text b {
    color: #f8fafc !important;
}

html.dark .site-rich-text a {
    color: #FB7185 !important;
}

html.dark .site-rich-text p,
html.dark .site-rich-text li,
html.dark .site-rich-text span,
html.dark .site-rich-text div,
html.dark .site-rich-text font {
    color: inherit !important;
}
