.site-intro,
.site-block,
.site-steps,
.site-faq {
    margin: 0 0 18px;
    color: #22313b;
}

.site-intro {
    padding: 14px 16px 16px;
    background: #f7fbfd;
    border: 1px solid #d7e3eb;
    border-top: 5px solid #0b4a88;
}

.site-intro h1,
.site-intro h2,
.site-block h2,
.site-steps h2,
.site-faq h2 {
    margin: 0 0 10px;
    color: #162D37;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 22px;
    line-height: 1.25;
}

.site-intro p,
.site-block p,
.site-steps p,
.site-faq p {
    margin: 0 0 9px;
    line-height: 1.5;
}

.site-benefits,
.site-service-links,
.site-steps ol,
.site-faq-list {
    margin: 10px 0 0;
    padding: 0;
}

.site-benefits,
.site-service-links,
.site-faq-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    list-style: none;
}

.site-benefits li,
.site-service-links a,
.site-faq-list li {
    display: flex;
    align-items: center;
    min-height: 46px;
    padding: 9px 10px;
    background: #fff;
    border: 1px solid #d7e3eb;
    color: #22313b;
    line-height: 1.35;
    text-decoration: none;
}

.site-service-links a {
    border-left: 5px solid #8ab6de;
    color: #006491;
    font-weight: bold;
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.site-steps {
    padding: 12px 14px;
    background: #fff;
    border-top: 1px solid #d7e3eb;
    border-bottom: 1px solid #d7e3eb;
}

.site-steps ol {
    margin-left: 20px;
}

.site-steps li {
    margin: 0 0 7px;
    line-height: 1.45;
}

.site-cta,
.content .site-cta {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 10px;
    margin: 12px 0 0;
    padding: 0;
}

.site-intro .site-cta,
.content .site-intro .site-cta {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, max-content));
    justify-content: center;
    gap: 10px;
    width: auto;
    clear: both;
    margin: 18px -16px -16px;
    padding: 14px 16px;
    border-top: 1px solid #d7e3eb;
    background: #fff;
}

.site-cta a,
.content .site-cta a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    box-sizing: border-box;
    margin: 0;
    padding: 9px 14px;
    border: 1px solid #0d5597;
    border-radius: 4px;
    background: #0d5597;
    color: #fff !important;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    line-height: 1.25;
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.site-cta a:hover,
.site-cta a:focus,
.content .site-cta a:hover,
.content .site-cta a:focus {
    background: #084c88;
    border-color: #084c88;
    box-shadow: 0 2px 9px rgba(13, 85, 151, .18);
    transform: translateY(-1px);
}
.site-note {
    color: #5d6d78;
    font-size: 13px;
}

@media (max-width: 900px) {
    .site-benefits,
    .site-service-links,
    .site-faq-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .site-intro {
        padding: 12px;
    }
    .site-intro h1,
    .site-intro h2,
    .site-block h2,
    .site-steps h2,
    .site-faq h2 {
        font-size: 20px;
    }

    .site-cta,
    .content .site-cta,
    .site-intro .site-cta,
    .content .site-intro .site-cta {
        display: grid;
        grid-template-columns: 1fr;
    }

    .site-intro .site-cta,
    .content .site-intro .site-cta {
        margin: 16px -12px -12px;
        padding: 12px;
    }
}
.site-faq {
    padding: 12px 0 0;
    border-top: 1px solid #d7e3eb;
}

.site-faq-items {
    display: grid;
    gap: 8px;
}

.site-faq-items details {
    background: #fff;
    border: 1px solid #d7e3eb;
    padding: 9px 11px;
}

.site-faq-items summary {
    cursor: pointer;
    color: #0d5597;
    font-weight: bold;
    line-height: 1.35;
}

.site-faq-items p {
    margin: 8px 0 0;
}
/* Site list reset against legacy .content ul */
.content .site-benefits,
.content .site-service-links,
.content .site-faq-list {
    margin: 10px 0 0;
    padding: 0;
    list-style: none;
    list-style-image: none;
}

.content .site-benefits,
.content .site-service-links,
.content .site-faq-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.content .site-benefits li,
.content .site-service-links a,
.content .site-faq-list li {
    margin: 0;
    list-style: none;
    list-style-image: none;
}

@media (max-width: 900px) {
    .content .site-benefits,
    .content .site-service-links,
    .content .site-faq-list {
        grid-template-columns: 1fr;
    }
}
/* Reduced blue line accents */

.site-service-links a {
    background: #f9fcfd;
    border-color: #d7e3eb;
    border-left-color: #8ab6de;
}

.site-service-links a:hover,
.site-service-links a:focus {
    background: #eef7fb;
    border-color: #b7d2df;
    border-left-color: #6ba1d1;
    color: #004f78;
    box-shadow: 0 2px 9px rgba(13, 85, 151, .12);
    transform: translateY(-1px);
}

.site-faq {
    border-top: 0;
}

.site-home-faq {
    margin: 12px 0 18px;
    padding: 14px 16px;
    background: #fff;
    border: 1px solid #d7e3eb;
    border-radius: 4px;
}
/* Main content headings */
#infocontent main.content > h1,
main.content > h1 {
    margin: 0 0 12px;
    color: #162D37;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 26px;
    line-height: 1.25;
    font-weight: bold;
}

@media (max-width: 760px) {
    #infocontent main.content > h1,
    main.content > h1 {
        font-size: 22px;
        line-height: 1.25;
    }
}
/* Home service text and actions */
.site-service-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 10px;
}

.site-service-card {
    display: flex;
    flex-direction: column;
    gap: 9px;
    min-width: 0;
    padding: 10px;
    background: #fff;
    border: 1px solid #d7e3eb;
}

.site-service-card p {
    margin: 0;
    color: #22313b;
    line-height: 1.35;
}

.site-service-card a {
    display: flex;
    align-items: center;
    min-height: 42px;
    margin-top: auto;
    padding: 8px 10px;
    border: 1px solid #d7e3eb;
    border-left: 5px solid #8ab6de;
    background: #f9fcfd;
    color: #006491;
    font-weight: bold;
    line-height: 1.25;
    text-decoration: none;
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.site-service-card a:hover,
.site-service-card a:focus {
    background: #eef7fb;
    border-color: #b7d2df;
    border-left-color: #6ba1d1;
    color: #004f78;
    box-shadow: 0 2px 9px rgba(13, 85, 151, .12);
    transform: translateY(-1px);
}

@media (max-width: 900px) {
    .site-service-cards {
        grid-template-columns: 1fr;
    }
}




/* Service and editorial pages */
.site-page-hero,
.site-form-panel,
.site-table-section {
    margin: 14px 0 20px;
    padding: 18px 20px;
    background: #f7fbfe;
    border: 1px solid #d7e3eb;
    border-top: 5px solid #0b4a88;
    box-sizing: border-box;
}

.site-page-hero--split {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 34%);
    gap: 22px;
    align-items: start;
}

.site-page-kicker {
    margin-bottom: 7px;
    color: #0b4a88;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: .03em;
    font-size: 12px;
}

.site-page-lead {
    margin: 0 0 12px;
    font-size: 17px;
    line-height: 1.55;
    color: #1f313d;
}

.content .site-page-points {
    display: grid;
    gap: 9px;
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
    list-style-image: none;
}

.content .site-page-points li {
    position: relative;
    margin: 0;
    padding: 10px 12px 10px 34px;
    background: #fff;
    border: 1px solid #d7e3eb;
    line-height: 1.35;
    list-style: none;
    list-style-image: none;
}

.content .site-page-points li::before {
    content: "";
    position: absolute;
    left: 13px;
    top: 15px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #0b67a3;
}

.site-page-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.site-page-actions a {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 8px 14px;
    background: #0b5f9e;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    border: 1px solid #0a548b;
    transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.site-page-actions a:hover,
.site-page-actions a:focus {
    background: #084d80;
    color: #fff;
    box-shadow: 0 3px 10px rgba(13, 85, 151, .18);
    transform: translateY(-1px);
}

.site-page-media {
    margin: 0;
    padding: 10px;
    background: #fff;
    border: 1px solid #d7e3eb;
}

.site-page-media img {
    display: block;
    width: 100%;
    max-height: 560px;
    object-fit: contain;
}

.site-table-section h2 {
    margin: 0 0 12px;
    color: #162D37;
    font-size: 22px;
    line-height: 1.25;
}

.site-table-scroll {
    max-width: 100%;
    overflow-x: auto;
    background: #fff;
    border: 1px solid #d7e3eb;
}

.site-table-scroll table {
    width: 100% !important;
    min-width: 620px;
    border-collapse: collapse;
    background: #fff;
}

.site-table-scroll td,
.site-table-scroll th {
    padding: 8px 10px !important;
    border-color: #c9d9e4 !important;
    vertical-align: top;
}

.site-form-panel {
    overflow-x: auto;
}

.site-form-panel table {
    width: 100% !important;
    max-width: 760px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid #d7e3eb;
}

.site-form-panel td {
    padding: 7px 8px;
}

.site-form-panel input,
.site-form-panel select,
.site-form-panel textarea {
    max-width: 100%;
    box-sizing: border-box;
}

.site-form-panel input[type="submit"],
.site-form-panel input[type="reset"] {
    min-height: 38px;
    padding: 7px 13px;
    border: 1px solid #0a548b;
    background: #0b5f9e;
    color: #fff;
    font-weight: bold;
    cursor: pointer;
}

.site-form-panel input[type="reset"] {
    background: #eef5f9;
    color: #0b4a88;
    border-color: #b8cfdf;
}

@media (max-width: 760px) {
    .site-page-hero,
    .site-form-panel,
    .site-table-section {
        margin: 12px 0 16px;
        padding: 14px 12px;
    }

    .site-page-hero--split {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .site-page-lead {
        font-size: 16px;
    }

    .site-page-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .site-page-actions a {
        justify-content: center;
        text-align: center;
    }

    .site-form-panel table,
    .site-form-panel tbody,
    .site-form-panel tr,
    .site-form-panel td {
        display: block;
        width: 100% !important;
        box-sizing: border-box;
        text-align: left !important;
    }

    .site-form-panel td:empty {
        display: none;
    }

    .site-form-panel input:not([type="submit"]):not([type="reset"]),
    .site-form-panel select,
    .site-form-panel textarea {
        width: 100% !important;
    }
}
/* Modern book request form */
.site-calc-form {
    padding: 0;
    background: transparent;
    border: 0;
    overflow: visible;
}

.site-calc-form__form {
    display: grid;
    gap: 16px;
}

.site-calc-form__note {
    margin: 0;
    padding: 10px 12px;
    background: #f7fbfe;
    border: 1px solid #d7e3eb;
    color: #455865;
    line-height: 1.35;
}

.site-calc-form__note span,
.site-calc-form em {
    color: #a32222;
    font-style: normal;
    font-weight: bold;
}

.site-calc-form__fieldset {
    margin: 0;
    padding: 16px;
    border: 1px solid #d7e3eb;
    border-top: 4px solid #0b4a88;
    background: #fff;
}

.site-calc-form__fieldset legend {
    padding: 0 8px;
    color: #0b4a88;
    font-size: 18px;
    font-weight: bold;
}

.site-calc-form__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 16px;
}

.site-calc-form__field {
    display: grid;
    gap: 6px;
    min-width: 0;
    color: #22313b;
    font-weight: bold;
    line-height: 1.3;
}

.site-calc-form__field--wide {
    grid-column: 1 / -1;
}

.site-calc-form__field--hidden {
    display: none;
}

.site-calc-form__field input,
.site-calc-form__field select,
.site-calc-form__field textarea {
    width: 100%;
    min-height: 38px;
    padding: 8px 10px;
    border: 1px solid #b9ccd9;
    background: #fff;
    color: #102939;
    font: inherit;
    font-weight: normal;
    box-sizing: border-box;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.site-calc-form__field textarea {
    min-height: 96px;
    resize: vertical;
}

.site-calc-form__field input:focus,
.site-calc-form__field select:focus,
.site-calc-form__field textarea:focus {
    outline: none;
    border-color: #0b67a3;
    box-shadow: 0 0 0 3px rgba(11, 103, 163, .13);
}

.site-calc-form__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-start;
    padding: 16px;
    background: #f7fbfe;
    border: 1px solid #d7e3eb;
}

.site-calc-form__actions input {
    min-height: 40px;
    padding: 8px 16px;
    border: 1px solid #0a548b;
    background: #0b5f9e;
    color: #fff;
    font-weight: bold;
    cursor: pointer;
    transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.site-calc-form__actions input[type="reset"] {
    background: #fff;
    color: #0b4a88;
    border-color: #b8cfdf;
}

.site-calc-form__actions input:hover,
.site-calc-form__actions input:focus {
    box-shadow: 0 3px 10px rgba(13, 85, 151, .18);
    transform: translateY(-1px);
}

.site-calc-form__actions input[type="submit"]:hover,
.site-calc-form__actions input[type="submit"]:focus {
    background: #084d80;
}

@media (max-width: 760px) {
    .site-calc-form__fieldset {
        padding: 14px 12px;
    }

    .site-calc-form__grid {
        grid-template-columns: 1fr;
    }

    .site-calc-form__actions {
        display: grid;
        grid-template-columns: 1fr;
        padding: 12px;
    }
}
/* Personal data consent */
.site-form-consent {
    margin: 10px 0;
    padding: 12px 14px;
    background: #f7fbfe;
    border: 1px solid #d7e3eb;
    color: #273945;
    font-size: 14px;
    line-height: 1.45;
    text-align: left;
}

.site-form-consent label {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 9px;
    align-items: start;
    margin: 0;
    cursor: pointer;
}

.site-form-consent input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 1px 0 0;
}

.site-form-consent a {
    color: #006491;
    font-weight: bold;
}

.site-form-consent--error {
    border-color: #b83b3b;
    background: #fff7f7;
}

.site-form-consent-row td {
    padding: 8px 10px !important;
}

.site-form-consent--contact-pop {
    margin: 8px 0 4px;
}

@media (max-width: 760px) {
    .site-form-consent {
        padding: 10px 11px;
        font-size: 13px;
    }
}

.site-page-note {
    margin: 12px 0 0;
    padding: 12px 14px;
    background: #fff;
    border: 1px solid #d7e3eb;
    border-left: 5px solid #8ab6de;
    color: #1f313d;
    font-size: 16px;
    line-height: 1.5;
}
.site-page-media--full {
    margin: 16px 0 20px;
    padding: 12px;
}

.site-page-media--full img {
    width: 100%;
    max-height: none;
    height: auto;
    object-fit: contain;
}

@media (max-width: 760px) {
    .site-page-media--full {
        margin: 12px 0 16px;
        padding: 8px;
    }
}
.site-page-submit-call {
    margin: 18px 0 0;
    color: #0b4a88;
    font-size: 22px;
    font-weight: bold;
    line-height: 1.3;
}

@media (max-width: 760px) {
    .site-page-submit-call {
        font-size: 20px;
    }
}
.site-page-points--compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.site-price-table {
    font-size: 15px;
}

.site-price-table thead th {
    background: #eaf4fb;
    color: #162D37;
    font-weight: bold;
    text-align: center;
}

.site-price-table tbody td:not(:first-child) {
    text-align: center;
    vertical-align: middle;
}

.site-table-note {
    margin: 10px 0 6px;
    font-weight: bold;
}

.site-price-details h2,
.site-seo-text-block h2 {
    margin-top: 0;
}

@media (max-width: 760px) {
    .site-page-points--compact {
        grid-template-columns: 1fr;
    }

    .site-table-scroll {
        margin-left: -4px;
        margin-right: -4px;
        -webkit-overflow-scrolling: touch;
    }

    .site-table-scroll::after {
        content: "Таблицу можно прокрутить влево-вправо";
        display: block;
        padding: 7px 10px;
        color: #587082;
        font-size: 12px;
        background: #f7fbfe;
        border-top: 1px solid #d7e3eb;
    }

    .site-price-table {
        font-size: 14px;
    }
}
.site-calc-form__checkbox {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 38px;
    padding: 8px 10px;
    background: #fff;
    border: 1px solid #c9d9e4;
    box-sizing: border-box;
}

.site-calc-form__checkbox input {
    width: 18px;
    height: 18px;
    margin: 0;
}

.site-form-subtitle {
    margin: 2px 0 -4px;
    color: #0b4a88;
    font-weight: bold;
}
.site-article-form {
    margin-top: 16px;
}

.site-field-with-action {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
}

.site-field-with-action a,
.site-form-add-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 7px 12px;
    background: #eef5f9;
    border: 1px solid #b8cfdf;
    color: #0b4a88;
    font-weight: bold;
    text-decoration: none;
}

.site-author-card {
    margin: 0 0 12px;
    padding: 12px;
    background: #fff;
    border: 1px solid #d7e3eb;
}

.site-author-card__title {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
    color: #0b4a88;
    font-weight: bold;
}

.site-author-card__remove {
    color: #a32222;
    font-weight: bold;
    text-decoration: none;
}

.site-calc-form__field small {
    color: #587082;
    font-size: 12px;
    line-height: 1.3;
}

.site-upload-grid {
    display: grid;
    grid-template-columns: minmax(180px, 260px) minmax(0, 1fr);
    gap: 14px;
    align-items: start;
}

.site-file-zone {
    position: relative;
    min-height: 116px;
    margin: 0;
    padding: 16px;
    overflow: hidden;
    background: #fff;
    border: 2px dashed #8ab6de;
    text-align: center;
}

.site-file-zone legend {
    color: #0b4a88;
    font-weight: bold;
}

.site-file-zone.over {
    background: #eef7fd;
    border-color: #0b67a3;
}

.site-file-zone .fd-file {
    opacity: 0;
    font-size: 118px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
    padding: 0;
    margin: 0;
    cursor: pointer;
    filter: alpha(opacity=0);
}

.site-file-list {
    min-height: 92px;
    padding: 12px;
    background: #fff;
    border: 1px solid #d7e3eb;
    font-size: 13px;
    line-height: 1.45;
}

.site-calc-form__actions--inline {
    margin-top: 4px;
}

@media (max-width: 760px) {
    .site-field-with-action,
    .site-upload-grid {
        grid-template-columns: 1fr;
    }
}
.site-schedule-table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0;
    background: #fff;
    border: 1px solid #c9d9e4 !important;
    font-size: 15px;
    line-height: 1.35;
}

.site-schedule-table th,
.site-schedule-table td {
    padding: 9px 11px !important;
    border: 0 !important;
    border-right: 1px solid #d7e3eb !important;
    border-bottom: 1px solid #d7e3eb !important;
    color: #1f313d !important;
    vertical-align: middle !important;
}

.site-schedule-table th {
    background: #0b4a88 !important;
    color: #fff !important;
    font-weight: bold;
    text-align: center !important;
}

.site-schedule-table tbody tr:nth-child(even) td:not(.site-schedule-table__month) {
    background: #f7fbfe !important;
}

.site-schedule-table__month {
    width: 22%;
    background: #eaf4fb !important;
    color: #0b4a88 !important;
    font-weight: bold;
    text-align: center !important;
}

.site-schedule-table tbody td:last-child {
    width: 27%;
    text-align: center !important;
}

.site-schedule-mobile-month,
.site-schedule-label {
    display: none;
}

@media (max-width: 760px) {
    .site-table-scroll--schedule {
        overflow-x: visible;
    }

    .site-table-scroll--schedule::after {
        display: none;
    }

    .site-table-scroll--schedule .site-schedule-table {
        display: block;
        min-width: 0 !important;
        width: 100% !important;
        border: 0 !important;
        background: transparent;
    }

    .site-schedule-table thead {
        display: none;
    }

    .site-schedule-table tbody,
    .site-schedule-table tr,
    .site-schedule-table td {
        display: block;
        width: 100% !important;
        box-sizing: border-box;
    }

    .site-schedule-table .site-schedule-table__month {
        display: none !important;
    }

    .site-schedule-table tr {
        margin: 0 0 10px;
        background: #fff;
        border: 1px solid #d7e3eb;
    }

    .site-schedule-table td {
        padding: 8px 10px !important;
        border-right: 0 !important;
        text-align: left !important;
        overflow-wrap: anywhere;
    }

    .site-schedule-mobile-month {
        display: block;
        margin: -8px -10px 8px;
        padding: 8px 10px;
        background: #eaf4fb;
        color: #0b4a88;
        font-weight: bold;
    }

    .site-schedule-label {
        display: inline;
        color: #587082;
        font-weight: bold;
    }
}
.site-nomenclature-table {
    width: 100% !important;
    min-width: 880px;
    border-collapse: separate !important;
    border-spacing: 0;
    background: #fff;
    border: 1px solid #c9d9e4 !important;
    font-size: 14px;
    line-height: 1.35;
}

.site-nomenclature-table th,
.site-nomenclature-table td {
    padding: 9px 10px !important;
    border: 0 !important;
    border-right: 1px solid #d7e3eb !important;
    border-bottom: 1px solid #d7e3eb !important;
    color: #1f313d !important;
    vertical-align: top !important;
}

.site-nomenclature-table th {
    background: #0b4a88 !important;
    color: #fff !important;
    font-weight: bold;
    text-align: center !important;
}

.site-nomenclature-table tbody tr:nth-child(even) td:not(.site-nomenclature-table__area):not(.site-nomenclature-table__group) {
    background: #f7fbfe !important;
}

.site-nomenclature-table__area,
.site-nomenclature-table__group {
    background: #eaf4fb !important;
    color: #0b4a88 !important;
    font-weight: bold;
}

.site-nomenclature-table__area {
    width: 22%;
}

.site-nomenclature-table__group {
    width: 23%;
}

.site-nomenclature-mobile-context,
.site-nomenclature-label {
    display: none;
}

@media (max-width: 760px) {
    .site-table-scroll--nomenclature {
        overflow-x: visible;
    }

    .site-table-scroll--nomenclature::after {
        display: none;
    }

    .site-table-scroll--nomenclature .site-nomenclature-table {
        display: block;
        min-width: 0 !important;
        width: 100% !important;
        border: 0 !important;
        background: transparent;
    }

    .site-nomenclature-table thead,
    .site-nomenclature-table__area,
    .site-nomenclature-table__group {
        display: none !important;
    }

    .site-nomenclature-table tbody,
    .site-nomenclature-table tr,
    .site-nomenclature-table td {
        display: block;
        width: 100% !important;
        box-sizing: border-box;
    }

    .site-nomenclature-table tr {
        margin: 0 0 10px;
        background: #fff;
        border: 1px solid #d7e3eb;
    }

    .site-nomenclature-table td {
        padding: 8px 10px !important;
        border-right: 0 !important;
        overflow-wrap: anywhere;
    }

    .site-nomenclature-mobile-context {
        display: block;
        margin: -8px -10px 8px;
        padding: 8px 10px;
        background: #eaf4fb;
        color: #0b4a88;
        font-weight: bold;
    }

    .site-nomenclature-label {
        display: inline;
        color: #587082;
        font-weight: bold;
    }
}
/* Detached form mobile hardening */
.site-form-panel.site-calc-form,
.site-form-panel.site-calc-form * {
    box-sizing: border-box;
}

.site-form-panel.site-calc-form,
.site-form-panel.site-calc-form .site-calc-form__form,
.site-form-panel.site-calc-form .site-calc-form__fieldset,
.site-form-panel.site-calc-form .site-calc-form__grid,
.site-form-panel.site-calc-form .site-calc-form__field,
.site-form-panel.site-calc-form .site-calc-form__checkbox,
.site-form-panel.site-calc-form .site-author-card,
.site-form-panel.site-calc-form .site-upload-grid,
.site-form-panel.site-calc-form .site-file-zone,
.site-form-panel.site-calc-form .site-file-list {
    min-width: 0;
    max-width: 100%;
}

.site-form-panel.site-calc-form input,
.site-form-panel.site-calc-form select,
.site-form-panel.site-calc-form textarea {
    min-width: 0;
    max-width: 100%;
}

@media (max-width: 760px) {
    .site-form-panel.site-calc-form {
        overflow-x: hidden;
    }

    .site-form-panel.site-calc-form .site-calc-form__grid,
    .site-form-panel.site-calc-form .site-field-with-action,
    .site-form-panel.site-calc-form .site-upload-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .site-form-panel.site-calc-form .site-field-with-action a,
    .site-form-panel.site-calc-form .site-form-add-link {
        width: 100%;
    }

    .site-form-panel.site-calc-form .site-calc-form__actions {
        grid-template-columns: minmax(0, 1fr);
    }

    .ui-dialog {
        max-width: calc(100vw - 24px) !important;
    }
}
.site-page-note--spaced {
    margin-top: 20px;
}
.site-contact-page {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 20px;
    align-items: start;
}

.site-contact-page h2 {
    margin: 0 0 14px;
    color: #162d37;
    font-size: 22px;
}

.site-contact-page__info {
    display: grid;
    gap: 12px;
    min-width: 0;
}

.site-contact-page__item {
    display: grid;
    gap: 4px;
}

.site-contact-page__item p {
    margin: 0;
}

.site-contact-page__item a {
    color: #006491;
    font-weight: bold;
}

.site-contact-page__qr {
    justify-self: end;
    align-self: start;
    margin: -4px 0 0;
    padding: 10px;
    background: #fff;
    border: 1px solid #d7e3eb;
}

.site-contact-page__qr img {
    display: block;
    max-width: 100%;
    height: auto;
}

@media (max-width: 760px) {
    .site-contact-page {
        grid-template-columns: 1fr;
    }

    .site-contact-page__qr {
        justify-self: start;
    }
}





.site-editor-columns {
    display: grid;
    gap: 14px;
    margin: 14px 0 18px;
}

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

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

.site-editor-columns > div {
    border: 1px solid #d7e3eb;
    box-sizing: border-box;
    padding: 14px;
}

@media (max-width: 760px) {
    .site-editor-columns,
    .site-editor-columns--2,
    .site-editor-columns--3 {
        grid-template-columns: 1fr;
    }
}

.site-block-placeholder {
    background: #f7fbfe;
    border: 1px dashed #8ab6de;
    box-sizing: border-box;
    color: #0b4a88;
    margin: 14px 0;
    padding: 14px 16px;
}

.site-block-placeholder h2 {
    margin-top: 0;
}

.site-faq-item {
    border-bottom: 1px solid #d7e3eb;
    padding: 10px 0;
}

.site-faq-item h3 {
    color: #00344f;
    font-size: 18px;
    margin: 0 0 6px;
}
/* CKEditor 5 image alignment classes */
.content .image,
main.content .image {
    max-width: 100%;
}

.content .image img,
main.content .image img {
    max-width: 100%;
    height: auto;
}

.content img.image-style-align-left,
.content .image-style-align-left,
main.content img.image-style-align-left,
main.content .image-style-align-left {
    float: left;
    margin: 4px 18px 12px 0;
}

.content img.image-style-align-right,
.content .image-style-align-right,
main.content img.image-style-align-right,
main.content .image-style-align-right,
.content img.image-style-side,
.content .image-style-side,
main.content img.image-style-side,
main.content .image-style-side {
    float: right;
    margin: 4px 0 12px 18px;
}

.content img.image-style-align-center,
.content .image-style-align-center,
main.content img.image-style-align-center,
main.content .image-style-align-center {
    display: block;
    float: none;
    margin: 12px auto;
}

.content img.image-style-block,
.content .image-style-block,
main.content img.image-style-block,
main.content .image-style-block {
    display: block;
    float: none;
    margin: 12px 0;
}

.content img.image-style-inline,
.content .image-style-inline,
main.content img.image-style-inline,
main.content .image-style-inline {
    display: inline-block;
    float: none;
    margin: 0 5px;
    vertical-align: middle;
}

.content::after,
main.content::after {
    content: "";
    display: block;
    clear: both;
}

@media (max-width: 760px) {
    .content img.image-style-align-left,
    .content .image-style-align-left,
    main.content img.image-style-align-left,
    main.content .image-style-align-left,
    .content img.image-style-align-right,
    .content .image-style-align-right,
    main.content img.image-style-align-right,
    main.content .image-style-align-right,
    .content img.image-style-side,
    .content .image-style-side,
    main.content img.image-style-side,
    main.content .image-style-side {
        display: block;
        float: none;
        margin: 12px auto;
    }
}
/* CKEditor 5 saved content styles */
.content figure,
main.content figure {
    margin: 14px 0;
}

.content figure.image,
main.content figure.image,
.content .image,
main.content .image {
    display: table;
    clear: both;
    text-align: center;
}

.content figure.image img,
main.content figure.image img,
.content .image img,
main.content .image img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

.content .image.image_resized,
main.content .image.image_resized {
    max-width: 100%;
    box-sizing: border-box;
}

.content .image.image_resized img,
main.content .image.image_resized img {
    width: 100%;
}

.content figcaption,
main.content figcaption,
.content .image > figcaption,
main.content .image > figcaption,
.content .table > figcaption,
main.content .table > figcaption {
    display: table-caption;
    caption-side: bottom;
    margin-top: 6px;
    padding: 7px 9px;
    background: #f7fbfe;
    color: #566b78;
    font-size: 13px;
    line-height: 1.35;
    text-align: center;
    word-break: break-word;
}

.content .image-inline,
main.content .image-inline {
    display: inline-flex;
    align-items: flex-start;
    max-width: 100%;
    vertical-align: middle;
}

.content .image-inline img,
main.content .image-inline img {
    display: inline-block;
    max-width: 100%;
    height: auto;
}

.content figure.table,
main.content figure.table,
.content .table,
main.content .table {
    display: table;
    max-width: 100%;
    overflow-x: auto;
}

.content figure.table table,
main.content figure.table table,
.content .table table,
main.content .table table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
}

.content figure.table td,
.content figure.table th,
main.content figure.table td,
main.content figure.table th,
.content .table td,
.content .table th,
main.content .table td,
main.content .table th {
    padding: 8px 10px;
    border: 1px solid #c9d9e4;
    vertical-align: top;
}

.content figure.media,
main.content figure.media,
.content .media,
main.content .media {
    clear: both;
    margin: 16px 0;
}

.content figure.media oembed,
main.content figure.media oembed,
.content .media oembed,
main.content .media oembed {
    display: block;
    padding: 12px;
    background: #f7fbfe;
    border: 1px solid #d7e3eb;
    color: #0b4a88;
    overflow-wrap: anywhere;
}

.content blockquote,
main.content blockquote {
    margin: 14px 0;
    padding: 12px 16px;
    border-left: 5px solid #8ab6de;
    background: #f7fbfe;
    color: #263844;
}

.content pre,
main.content pre {
    margin: 14px 0;
    padding: 12px;
    overflow: auto;
    background: #f7fbfe;
    border: 1px solid #d7e3eb;
    color: #102939;
    font: 13px/1.45 Consolas, "Courier New", monospace;
    white-space: pre-wrap;
}

.content code,
main.content code {
    padding: 1px 4px;
    background: #f0f5f8;
    border: 1px solid #d7e3eb;
    font-family: Consolas, "Courier New", monospace;
    font-size: .95em;
}

.content pre code,
main.content pre code {
    padding: 0;
    background: transparent;
    border: 0;
}

.content .todo-list,
main.content .todo-list {
    margin: 10px 0;
    padding: 0;
    list-style: none;
    list-style-image: none;
}

.content .todo-list li,
main.content .todo-list li {
    margin: 6px 0;
    list-style: none;
    list-style-image: none;
}

.content .todo-list__label,
main.content .todo-list__label {
    display: inline-grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 8px;
    align-items: start;
}

.content .todo-list__label input[type="checkbox"],
main.content .todo-list__label input[type="checkbox"] {
    margin-top: 2px;
}

.content .text-tiny,
main.content .text-tiny {
    font-size: .7em;
}

.content .text-small,
main.content .text-small {
    font-size: .85em;
}

.content .text-big,
main.content .text-big {
    font-size: 1.4em;
}

.content .text-huge,
main.content .text-huge {
    font-size: 1.8em;
}

.content .marker-yellow,
main.content .marker-yellow {
    background: #fdfd77;
}

.content .marker-green,
main.content .marker-green {
    background: #63f963;
}

.content .marker-pink,
main.content .marker-pink {
    background: #fc7999;
}

.content .marker-blue,
main.content .marker-blue {
    background: #72ccfd;
}

.content .pen-red,
main.content .pen-red {
    color: #e91313;
    background: transparent;
}

.content .pen-green,
main.content .pen-green {
    color: #128a00;
    background: transparent;
}

.content .raw-html-embed,
main.content .raw-html-embed {
    margin: 14px 0;
}

@media (max-width: 760px) {
    .content figure.table,
    main.content figure.table,
    .content .table,
    main.content .table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .content .text-huge,
    main.content .text-huge {
        font-size: 1.45em;
    }
}
