.site-page__hero { text-align: center; padding-bottom: clamp(70px, 8vw, 110px); }
.site-page__hero h1 { font-size: clamp(2.6rem, 5.5vw, 4.6rem); margin: 0; }
.site-page__hero p { max-width: 760px; margin: 20px auto 0; }
.site-page { padding: clamp(64px, 8vw, 112px) 0; min-height: 45vh; }
.site-page__wrap { max-width: 960px; }
.site-page__cover, .site-page__figure img { display: block; max-width: 100%; height: auto; border-radius: 14px; }
.site-page__cover { width: 100%; margin-bottom: 40px; }
.site-page__blocks { max-width: 780px; margin-inline: auto; }
.site-page__text { margin-bottom: 28px; line-height: 1.8; overflow-wrap: break-word; }
.site-page__text h1, .site-page__text h2, .site-page__text h3, .site-page__text h4, .site-page__text h5, .site-page__text h6 { margin: 32px 0 12px; line-height: 1.3; }
.site-page__text h1 { font-size: clamp(1.8rem, 3vw, 2.4rem); }
.site-page__text h2 { font-size: clamp(1.5rem, 2.5vw, 2rem); }
.site-page__text h3 { font-size: 1.5rem; }
.site-page__text h4 { font-size: 1.25rem; }
.site-page__text h5 { font-size: 1.1rem; }
.site-page__text h6 { font-size: 1rem; }
.site-page__text p { margin: 0 0 16px; }
.site-page__text ul, .site-page__text ol { padding-left: 24px; margin: 0 0 20px; }
.site-page__text li { margin-bottom: 8px; }
.site-page__text img { display: block; max-width: 100%; height: auto; margin: 20px 0; border-radius: 10px; }
.site-page__text a, .site-page__blocks > p a { color: #5dcaa5; }
.site-page--privacy .site-page__text p { text-align: justify; }
.site-page--privacy .site-page__text h4:first-child { text-align: center; }
.site-page__figure { margin: 30px 0; }
.site-page__figure figcaption { color: #aeb4bc; margin-top: 9px; }
@media (max-width: 700px) { .site-page { padding: 64px 0 76px; } }
