/* Local WOFF2 encodings of Google Fonts Exo 2, OFL 1.1. Full fonts include Cyrillic.
 * Relative URLs load from the same theme on frontend and in the editor. */
@font-face {
    font-family: "Exo 2";
    src: url("../fonts/exo-2/Exo2-Variable.woff2") format("woff2");
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
}
@font-face {
    font-family: "Exo 2";
    src: url("../fonts/exo-2/Exo2-Italic-Variable.woff2") format("woff2");
    font-style: italic;
    font-weight: 100 900;
    font-display: swap;
}

@font-face {
    font-family: "General Sans";
    src: url("../fonts/general-sans/GeneralSans-Regular.woff2") format("woff2");
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: "General Sans";
    src: url("../fonts/general-sans/GeneralSans-Medium.woff2") format("woff2");
    font-style: normal;
    font-weight: 500;
    font-display: swap;
}
@font-face {
    font-family: "General Sans";
    src: url("../fonts/general-sans/GeneralSans-MediumItalic.woff2") format("woff2");
    font-style: italic;
    font-weight: 500;
    font-display: swap;
}
@font-face {
    font-family: "General Sans";
    src: url("../fonts/general-sans/GeneralSans-Bold.woff2") format("woff2");
    font-style: normal;
    font-weight: 700;
    font-display: swap;
}
@font-face {
    font-family: "General Sans";
    src: url("../fonts/general-sans/GeneralSans-Semibold.woff2") format("woff2");
    font-style: normal;
    font-weight: 600;
    font-display: swap;
}
@font-face {
    font-family: "Noto Sans";
    src: url("../fonts/noto-sans/NotoSans-RuLatin-Variable.woff2") format("woff2");
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
}
@font-face {
    font-family: "Exo";
    src: url("../fonts/exo/Exo[wght].woff2") format("woff2");
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
}

:root { --hrs-green: #065d58; --hrs-heading-green: #067871; --hrs-coral: #f24932; --hrs-surface: #f8f9fb; }
body { margin: 0; color: #000; font-family: "General Sans", "Noto Sans", sans-serif; }
.hrs-header { height: 77px; background: #fff; }
.hrs-header__inner { max-width: 1600px; height: 100%; margin: 0 auto; }
.hrs-header__nav { font-size: 20px; font-weight: 600; line-height: 34px; }
.hrs-header__nav .wp-block-navigation__container { gap: 28px; }
.hrs-header__nav a { text-decoration: none; }
.hrs-header__nav sup { font-size: 13px; line-height: 0; vertical-align: super; }
.hrs-header__nav .hrs-nav-link > a.is-active { color: var(--hrs-coral); }
@media (min-width: 768px) { .hrs-nobr-desktop { white-space: nowrap; } }
.hrs-header__buy .wp-block-button__link { box-sizing: border-box; min-width: 171px; border: 2px solid var(--hrs-green); border-radius: 40px; background: #fff; color: var(--hrs-green); padding: 12px 38px; font-size: 24px; font-weight: 700; line-height: 29px; }
/* Source artwork intentionally reaches beyond the 1280 hero edge; clip only this section. */
.hrs-hero { background: var(--hrs-surface); border-radius: 20px; overflow: clip; }
.hrs-hero__inner { position: relative; box-sizing: border-box; max-width: 1600px; min-height: 746px; margin: 0 auto; padding-top: 80px; }

/* Node 1:106. Desktop source: 1920px; Exo 2 Black 900, 64px / 100%.
 * Font is self-hosted; rendered comparison with Figma remains pending.
 * Source bbox: x160 y157 w922 h128. Layout positioning awaits header/hero specs.
 */
.hrs-hero__title {
    position: relative;
    z-index: 2;
    box-sizing: border-box;
    max-width: 922px;
    margin: 0;
    font-family: "Exo 2", sans-serif;
    font-size: 64px;
    font-weight: 900;
    font-synthesis: none;
    line-height: 1;
    letter-spacing: 0;
}
.hrs-hero__title-green { color: var(--hrs-heading-green); }
.hrs-hero__title-red { color: var(--hrs-coral); }
.hrs-hero__copy { position: relative; z-index: 2; max-width: 722px; margin: 36px 0 0; font-size: 24px; line-height: 1; letter-spacing: 0; }
.hrs-hero__actions { position: relative; z-index: 2; margin-top: 36px; }
.hrs-hero__cta .wp-block-button__link { box-sizing: border-box; width: 281px; border-radius: 40px; padding: 14px 40px; background: var(--hrs-green); color: #fff; font-size: 24px; line-height: 29px; font-weight: 700; text-decoration: none; }
.hrs-hero__packs { position: absolute; z-index: 3; width: 757.96px; left: 856px; top: 416px; margin: 0; }
.hrs-hero__packs img { display: block; width: 100%; }
.hrs-hero__packs-mobile { display: none; }
.hrs-hero__woman { position: absolute; z-index: 1; margin: 0; width: 646px; left: 871px; top: -1px; }
.hrs-hero__woman img { display: block; width: 100%; }
.hrs-hero__benefits { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3, 247px); gap: 24px; margin-top: 52px; }
.hrs-benefit { box-sizing: border-box; height: 207px; border-radius: 20px; background: #fff; padding: 17px 33px 0; color: var(--hrs-green); }
.hrs-benefit__icon { width: 80px; height: 80px; margin: 0 0 10px; }
.hrs-benefit__icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
.hrs-benefit p { margin: 0; width: 178px; font-size: 22px; line-height: 1.2; }
.hrs-benefit sup { font-size: .6em; line-height: 0; }

/* Source marker span: Exo 2 Black 900, 48px / 100%.
 * Zero-height inline box preserves the heading's 64px line boxes.
 * Literal U+00B9 already carries superscript geometry; avoid doubling its shift.
 * Exact placement is pending a rendered node-specific comparison. */
.hrs-hero__reference {
    display: inline-block;
    height: 0;
    overflow: visible;
    font-size: 48px;
    font-weight: 900;
    line-height: 1;
    vertical-align: baseline;
}

/* Source 360px: frame 1:2932, original mobile artwork and inspector geometry. */
@media (max-width: 767.98px) {
    .hrs-hero__title { font-size: 36px; }
    .hrs-hero__reference { font-size: 22px; transform: translateY(-12px); margin-left: 0; }
    .hrs-header { height: 65px; margin-bottom: 20px; }
    .hrs-header__inner { margin: 0 16px; flex-direction: row-reverse; }
    .hrs-header__nav { margin-right: 5px; }
    .hrs-header__nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
    .hrs-header__nav .wp-block-navigation__responsive-container-open { display: flex; position: relative; left: -5px; top: 4.5px; width: 32px; height: 22px; border-top: 2px solid var(--hrs-green); border-bottom: 2px solid var(--hrs-green); }
    .hrs-header__nav .wp-block-navigation__responsive-container-open::before { content: ""; position: absolute; top: 8px; left: 0; width: 32px; border-top: 2px solid var(--hrs-green); }
    .hrs-header__nav .wp-block-navigation__responsive-container-open svg { display: none; }
    .hrs-header__buy .wp-block-button__link { min-width: 117px; height: 44px; display: flex; align-items: center; justify-content: center; padding: 0 20px; font-size: 16px; line-height: 19px; }
    .hrs-hero__inner { margin: 0 16px; padding-top: 26px; min-height: 694px; }
    .hrs-hero__title { max-width: 328px; }
    .hrs-hero__copy { max-width: 319px; font-size: 16px; line-height: 1; margin-top: 16px; }
    .hrs-hero__actions { position: absolute; left: 0; right: 0; top: 633px; margin: 0; }
    .hrs-hero__cta { width: 100%; }
    .hrs-hero__cta .wp-block-button__link { display: flex; align-items: center; justify-content: center; width: 100%; height: 44px; padding: 0 28px; border-radius: 26px; font-size: 16px; line-height: 19px; }
    .hrs-hero__packs { display: none; }
    .hrs-hero__packs-mobile { display: block; position: absolute; z-index: 3; width: 346px; left: -2px; top: 481px; margin: 0; }
    .hrs-hero__packs-mobile img { display: block; width: 100%; }
    .hrs-hero__woman { width: 235.15px; max-width: 100%; left: auto; right: 0; top: 372px; bottom: auto; }
    .hrs-hero__benefits { grid-template-columns: repeat(2, 150px); gap: 4px 9px; margin-top: 8px; padding-top: 6px; width: 310px; }
    .hrs-benefit { height: 118px; padding: 14px 16px; }
    .hrs-benefit__icon { width: 30px; height: 30px; margin-bottom: 10px; background: center / contain no-repeat; }
    .hrs-benefit__icon img { display: none; }
    .hrs-benefit:first-child .hrs-benefit__icon { width: 60px; height: 60px; margin-bottom: -5px; background-image: url('../images/hero-mobile-medical.webp'); }
    .hrs-benefit:nth-child(2) .hrs-benefit__icon { background-image: url('../images/hero-mobile-world-heart.webp'); }
    .hrs-benefit:nth-child(3) .hrs-benefit__icon { margin-bottom: 9px; background-image: url('../images/hero-mobile-shield.webp'); }
    .hrs-benefit p { width: 138px; font-size: 14px; line-height: 1.2; }
    .hrs-benefit:nth-child(2) p { width: 118px; }
    .hrs-benefit:nth-child(3) p { width: 131px; }
}

@media (min-width: 768px) and (max-width: 1759px) {
    .hrs-header__inner, .hrs-hero__inner { margin-left: 40px; margin-right: 40px; }
    .hrs-hero__packs { width: 48%; left: auto; right: 0; }
    .hrs-hero__woman { width: 43%; left: auto; right: 4%; top: 0; }
}

/* 1280 source raster checkpoint. Values pending independent inspector confirmation. */
@media (min-width: 768px) and (max-width: 1399px) {
    .hrs-header { height: 81px; }
    .hrs-header__inner, .hrs-hero__inner { max-width: 1120px; margin-left: auto; margin-right: auto; }
    .hrs-header__buy .wp-block-button__link { min-width: 149px; height: 49px; padding: 9px 32px; font-size: 20px; line-height: 27px; }
    .hrs-hero__inner { min-height: 633px; padding-top: 76px; }
    .hrs-hero__title { max-width: 700px; margin-left: 6px; font-size: 48px; }
    .hrs-hero__reference { font-size: 36px; }
    .hrs-hero__copy { max-width: 470px; margin-left: 6px; margin-top: 30px; font-size: 18px; line-height: 1; }
    .hrs-hero__actions { margin-top: 34px; }
    .hrs-hero__benefits { grid-template-columns: 194px 221px 202px; gap: 10px; margin-top: 56px; }
    .hrs-benefit { height: 148px; padding: 16px 16px 0; }
    .hrs-benefit__icon { width: 64px; height: 64px; margin-bottom: 4px; }
    .hrs-benefit p { width: auto; font-size: 16px; line-height: 1.2; }
    .hrs-hero__woman { width: 530px; right: 0; top: 15px; }
    .hrs-hero__packs { width: 650px; right: -150px; top: 346px; }
}

@media (min-width: 768px) and (max-width: 1199px) {
    .hrs-header__inner, .hrs-hero__inner { margin-left: 24px; margin-right: 24px; }
    .hrs-header__nav { font-size: 16px; }
    .hrs-header__nav .wp-block-navigation__container { gap: 16px; }
    .hrs-hero__title { max-width: 65%; font-size: 40px; }
    .hrs-hero__copy { max-width: 52%; }
    .hrs-hero__benefits { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 65%; }
    .hrs-benefit p { font-size: 14px; }
    .hrs-hero__packs { width: 48%; right: 0; }
}

:where(.wp-site-blocks) img { max-width: 100%; height: auto; }
:where(.wp-site-blocks) a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }

/* Client PDF, 2026-09-15: inset the open mobile menu from the viewport edge. */
@media (max-width: 767.98px) {
    .hrs-header__nav .is-menu-open .wp-block-navigation__responsive-container-content { padding-inline: 24px; }
}
