/* Scoped exclusively to the new-home preview; shared templates remain intact. */
.hn {
  --hn-accent: #079ddc; --hn-accent-dark: #0587be; --hn-text: #071329;
  --hn-muted: #36536e; --hn-bg: #f7fbff; --hn-radius: 16px; --hn-gutter: 5%;
  color: var(--hn-text); background: var(--hn-bg); font-family: 'Montserrat', sans-serif;
  font-size: 18px; line-height: 1.5; margin: 0;
}
body:has(.hn) { margin: 0; }
body:has(.hn) #verh1, body:has(.hn) #menutwigmob { display: none; }
.hn *, .hn *::before, .hn *::after { box-sizing: border-box; }
.hn .hn-symbols { position: absolute; width: 0; height: 0; overflow: hidden; }
.hn svg { fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.hn .hn-nowrap { white-space: nowrap; }
.hn a { color: inherit; text-decoration: none; }
.hn button, .hn input { font: inherit; }
.hn a:focus-visible, .hn button:focus-visible, .hn input:focus-visible { outline: 3px solid var(--hn-accent-dark); outline-offset: 5px; }
.hn .hn-container { width: 90%; max-width: 1730px; margin: 0 auto; padding: 0; }
.hn .hn-header { height: 129px; padding-top: 27px; background: #f8fbff; position: relative; z-index: 10; }
.hn .hn-header__inner { height: 102px; display: flex; align-items: center; gap: 0; position: relative; }
.hn .hn-brand { display: flex; align-items: center; gap: 13px; flex-shrink: 0; width: clamp(300px, calc(35vw - 307px), 365px); }
.hn .hn-brand__icon { width: 44px; height: 46px; color: var(--hn-accent); fill: currentColor; stroke: none; }
.hn .hn-brand strong { font-size: 23px; font-weight: 800; display: block; line-height: 1.2; letter-spacing: -.6px; }
.hn .hn-brand small { display: block; font-size: 12px; font-weight: 500; line-height: 1.6; }
.hn .hn-nav { display: flex; align-items: center; gap: 30px; white-space: nowrap; }
.hn .hn-nav a { font-size: 17px; font-weight: 500; letter-spacing: -.5px; }
.hn .hn-nav a:hover { color: var(--hn-accent); }
.hn .hn-header__actions { margin-left: auto; display: flex; align-items: center; gap: 16px; padding-left: 25px; }
.hn .hn-search-toggle { background: none; border: 0; padding: 0; width: 32px; height: 32px; margin-right: 14px; cursor: pointer; }
.hn .hn-search-toggle svg { width: 30px; height: 30px; }
.hn .hn-login, .hn .hn-register { height: 59px; display: flex; align-items: center; justify-content: center; border-radius: var(--hn-radius); font-size: 17px; font-weight: 600; }
.hn .hn-login { width: 118px; background: #eaf2f9; color: #426e90; }
.hn .hn-register { width: 242px; color: #fff; background: var(--hn-accent); }
.hn .hn-register:hover, .hn .hn-button--owner:hover { background: var(--hn-accent-dark); }
.hn .hn-menu-toggle { display: none; }
.hn .hn-search[hidden] { display: none; }
.hn .hn-search { position: absolute; top: 100%; right: 0; padding: 20px; display: flex; gap: 10px; background: white; border-radius: var(--hn-radius); box-shadow: 0 12px 40px #18345226; flex-wrap: wrap; max-width: 100%; }
.hn .hn-search__label { width: 100%; font-size: 14px; }
.hn .hn-search input { min-width: 0; width: 240px; border: 1px solid #cddce7; padding: 10px; border-radius: 8px; }
.hn .hn-search button { border: 0; border-radius: 8px; padding: 10px 15px; background: var(--hn-accent); color: white; }
.hn .hn-hero { position: relative; height: 950px; overflow: hidden; isolation: isolate; }
.hn .hn-hero__background { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; z-index: -3; }
.hn .hn-hero__veil { position: absolute; inset: 0; background: linear-gradient(90deg, #f8fbff 0%, #f8fbfff7 25%, #f8fbffd9 35%, #f8fbff70 46%, transparent 58%); z-index: -2; }
.hn .hn-hero__inner { height: 100%; position: relative; }
.hn .hn-hero__copy { padding-top: 84px; position: relative; z-index: 2; width: 850px; }
.hn .hn-hero__eyebrow { margin: 0 0 22px; color: #4c85b4; font-size: 18px; font-weight: 600; letter-spacing: 1.4px; line-height: 1.5; }
.hn .hn-hero__title { margin: 0; font-size: 96px; line-height: 1.03; font-weight: 800; letter-spacing: -4px; text-transform: none; text-align: left; color: var(--hn-text); }
.hn .hn-hero__title span { color: var(--hn-accent); display: inline-block; margin-top: 9px; }
.hn .hn-hero__description { margin: 33px 0 27px; font-size: 25px; font-weight: 400; line-height: 1.42; letter-spacing: -.65px; color: var(--hn-muted); }
.hn .hn-hero__buttons { display: flex; gap: 19px; }
.hn .hn-button { display: flex; align-items: center; justify-content: center; gap: 17px; height: 84px; border-radius: var(--hn-radius); font-size: 18px; font-weight: 700; white-space: nowrap; box-shadow: 0 12px 32px #2746600c; }
.hn .hn-button--owner { width: 346px; color: white; background: var(--hn-accent); }
.hn .hn-button--master { width: 390px; background: #fff; }
.hn .hn-button--master:hover { background: #edf7fc; }
.hn .hn-button__icon { width: 35px; height: 35px; }
.hn .hn-button__arrow { width: 28px; height: 28px; margin-left: 4px; stroke-width: 1.8; }
.hn .hn-button--master .hn-button__arrow { color: #61a0c8; }
.hn .hn-benefits { display: flex; align-items: flex-start; gap: 39px; padding: 0; margin: 57px 0 0; list-style: none; }
.hn .hn-benefits li { display: flex; align-items: center; gap: 12px; font-size: 16px; font-weight: 600; line-height: 1.5; white-space: nowrap; }
.hn .hn-benefits__icon { display: flex; align-items: center; justify-content: center; width: 51px; height: 51px; border-radius: 50%; background: #ddf1fd; color: var(--hn-accent); }
.hn .hn-benefits svg { width: 32px; height: 32px; }
.hn .hn-hero__product { position: absolute; bottom: -7px; right: -40px; width: 665px; height: 835px; object-fit: fill; object-position: bottom; z-index: 1; }
.hn .hn-hero__note { position: absolute; top: 48px; right: 28px; font-family: 'Segoe Print', 'Comic Sans MS', cursive; font-size: 30px; line-height: 1.3; color: #fff; text-align: center; transform: rotate(-4deg); z-index: 2; }
.hn .hn-hero__note svg { display: block; width: 110px; height: 75px; margin: 7px auto 0; stroke-width: 1.2; }
@media (min-width: 1000px) and (max-width: 1750px) {
  .hn .hn-header { height: 100px; padding-top: 12px; }
  .hn .hn-header__inner { height: 88px; }
  .hn .hn-brand { width: 270px; gap: 10px; }
  .hn .hn-brand strong { font-size: 18px; }
  .hn .hn-brand small { font-size: 10px; }
  .hn .hn-brand__icon { width: 34px; height: 36px; }
  .hn .hn-nav { gap: 18px; }
  .hn .hn-nav a { font-size: 14px; }
  .hn .hn-header__actions { gap: 10px; padding-left: 16px; }
  .hn .hn-login { width: 85px; }
  .hn .hn-register { width: 190px; }
  .hn .hn-login, .hn .hn-register { height: 48px; font-size: 13px; }
  .hn .hn-search-toggle { margin-right: 4px; width: 26px; }
  .hn .hn-hero { height: clamp(720px, 49.5vw, 865px); }
  .hn .hn-hero__copy { padding-top: 65px; width: 65%; }
  .hn .hn-hero__eyebrow { font-size: 14px; margin-bottom: 22px; }
  .hn .hn-hero__title { font-size: clamp(64px, 5.2vw, 90px); letter-spacing: -3px; }
  .hn .hn-hero__description { font-size: 20px; margin: 28px 0 26px; }
  .hn .hn-button { height: 68px; gap: 12px; font-size: 14px; }
  .hn .hn-button--owner { width: 270px; }
  .hn .hn-button--master { width: 310px; }
  .hn .hn-benefits { gap: 20px; margin-top: 38px; }
  .hn .hn-benefits li { font-size: 12px; gap: 8px; }
  .hn .hn-benefits__icon { width: 42px; height: 42px; }
  .hn .hn-benefits svg { width: 27px; height: 27px; }
  .hn .hn-hero__product { width: 40%; height: 86%; right: -20px; object-fit: contain; }
  .hn .hn-hero__note { font-size: 24px; top: 32px; right: 0; }
}
@media (min-width: 1000px) and (max-width: 1350px) {
  .hn .hn-nav { gap: 13px; }
  .hn .hn-nav a { font-size: 12px; }
  .hn .hn-brand { width: 240px; }
  .hn .hn-register { width: 155px; font-size: 11px; }
  .hn .hn-header__actions { padding-left: 12px; }
  .hn .hn-hero__description { font-size: 18px; }
  .hn .hn-button { font-size: 12px; gap: 10px; }
  .hn .hn-button--owner { width: 225px; }
  .hn .hn-button--master { width: 265px; }
  .hn .hn-benefits { gap: 16px; }
  .hn .hn-benefits li { font-size: 10px; }
}
@media (max-width: 1199px) {
  /* Keep the 69px reservation for the fixed mobile header. */
  .hn { padding-top: 69px; }
  .hn .hn-header { height: 69px; padding: 0; position: fixed; top: 0; left: 0; width: 100%; box-shadow: 0 1px 12px #17354c0c; }
  .hn .hn-header__inner { height: 69px; }
  .hn .hn-brand { width: auto; gap: 8px; }
  .hn .hn-brand__icon { width: 30px; height: 33px; }
  .hn .hn-brand strong { font-size: 15px; letter-spacing: -.4px; }
  .hn .hn-brand small { font-size: 8px; }
  .hn .hn-menu-toggle { display: flex; flex-direction: column; justify-content: center; gap: 5px; background: none; border: 0; width: 40px; height: 44px; margin-left: auto; padding: 9px; flex-shrink: 0; cursor: pointer; }
  .hn .hn-menu-toggle span { height: 2px; width: 22px; background: var(--hn-text); }
  .hn .hn-nav { display: none; position: absolute; top: 69px; left: -5.56%; right: -5.56%; padding: 24px 5%; max-height: calc(100dvh - 69px); overflow-y: auto; background: #f8fbff; box-shadow: 0 15px 20px #18345218; white-space: normal; }
  .hn .hn-nav--open { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
  .hn .hn-nav a { font-size: 16px; }
  .hn .hn-header__actions { margin-left: 12px; padding-left: 0; gap: 10px; }
  .hn .hn-search-toggle { margin-right: 0; width: 40px; height: 44px; display: grid; place-items: center; flex-shrink: 0; }
  .hn .hn-search-toggle svg { width: 24px; height: 24px; }
  .hn .hn-login { width: 66px; height: 44px; font-size: 12px; border-radius: 10px; }
  .hn .hn-register { display: none; }
  .hn .hn-hero { height: auto; min-height: 900px; }
  .hn .hn-hero__inner { padding-bottom: 520px; }
  .hn .hn-hero__copy { width: 100%; padding-top: 45px; }
  .hn .hn-hero__eyebrow { font-size: 12px; margin-bottom: 20px; letter-spacing: 1px; }
  .hn .hn-hero__title { font-size: clamp(40px, 8vw, 70px); line-height: 1.04; letter-spacing: -2px; }
  .hn .hn-hero__description { font-size: 18px; margin: 25px 0; line-height: 1.5; letter-spacing: -.3px; }
  .hn .hn-desktop-break { display: none; }
  .hn .hn-hero__buttons { gap: 12px; }
  .hn .hn-button { width: auto; flex: 1; height: 65px; font-size: 13px; gap: 10px; }
  .hn .hn-button__icon { width: 28px; height: 28px; }
  .hn .hn-button__arrow { width: 23px; height: 23px; }
  .hn .hn-benefits { margin-top: 30px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
  .hn .hn-benefits li { font-size: 11px; gap: 8px; }
  .hn .hn-benefits__icon { width: 38px; height: 38px; }
  .hn .hn-benefits svg { width: 26px; height: 26px; }
  .hn .hn-hero__product { height: 480px; width: 440px; max-width: 85%; right: 0; bottom: -4px; object-fit: contain; }
  .hn .hn-hero__background { object-position: 65% bottom; }
  .hn .hn-hero__veil { background: linear-gradient(180deg, #f8fbff 0%, #f8fbfffa 38%, #f8fbffc9 55%, transparent 78%); }
  .hn .hn-hero__note { top: auto; bottom: 335px; right: auto; left: 3%; font-size: 21px; }
}
@media (max-width: 575px) {
  .hn .hn-container { width: 90%; }
  .hn .hn-hero__copy { padding-top: 32px; }
  .hn .hn-hero__eyebrow { font-size: 9px; letter-spacing: .8px; margin-bottom: 18px; }
  .hn .hn-hero__title { font-size: clamp(35px, 9.6vw, 55px); letter-spacing: -1.5px; }
  .hn .hn-hero__description { font-size: 15px; margin: 24px 0; }
  .hn .hn-hero__buttons { flex-direction: column; gap: 12px; }
  .hn .hn-button { flex: auto; width: 100%; height: 58px; font-size: 14px; justify-content: flex-start; padding: 0 19px; }
  .hn .hn-button__arrow { margin-left: auto; }
  .hn .hn-benefits { grid-template-columns: repeat(2, 1fr); gap: 18px 10px; margin-top: 27px; }
  .hn .hn-benefits li { font-size: 11px; }
  .hn .hn-hero__inner { padding-bottom: 450px; }
  .hn .hn-hero__product { height: 380px; width: 330px; max-width: 100%; right: -6px; }
  .hn .hn-hero__note { bottom: 355px; left: 0; font-size: 18px; }
  .hn .hn-hero__note svg { width: 70px; height: 43px; margin-left: 80px; }
  .hn .hn-search { right: 0; width: 100%; }
  .hn .hn-search input { flex: 1; width: 100px; }
}
@media (prefers-reduced-motion: no-preference) { .hn a, .hn button { transition: background-color .18s ease, color .18s ease; } }

/* Final detail pass: balanced mark, comfortable controls and clean breakpoints. */
.hn .hn-brand__icon use { fill: currentColor; stroke: none; }
.hn .hn-login:hover { background: #dceaf5; color: #244d70; }
.hn .hn-button:active { transform: translateY(1px); }
.hn .hn-search-toggle:hover { color: var(--hn-accent-dark); }
.hn .hn-search input { color: var(--hn-text); background: #fff; }
.hn .hn-search input::placeholder { color: #73879b; }
.hn .hn-menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.hn .hn-menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.hn .hn-menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
@media (max-width: 1199px) {
  .hn .hn-header__actions { flex-shrink: 0; }
  .hn .hn-nav a { display: block; min-height: 36px; padding: 6px 0; }
}
@media (min-width: 576px) and (max-width: 1199px) {
  .hn .hn-brand strong { font-size: 18px; }
  .hn .hn-brand small { font-size: 10px; }
  .hn .hn-brand__icon { width: 36px; height: 38px; }
  .hn .hn-hero__copy { max-width: 760px; }
  .hn .hn-hero__product { width: 450px; }
}
@media (max-width: 575px) {
  .hn .hn-header__inner { width: 94%; }
  .hn .hn-brand { gap: 7px; }
  .hn .hn-brand strong { font-size: 13px; }
  .hn .hn-brand small { font-size: 7.5px; }
  .hn .hn-brand__icon { width: 28px; height: 30px; }
  .hn .hn-header__actions { gap: 4px; margin-left: 4px; }
  .hn .hn-login { width: 50px; font-size: 11px; }
  .hn .hn-hero__product { object-fit: contain; }
  .hn .hn-nav { left: -3.2%; right: -3.2%; }
}
@media (max-width: 359px) {
  .hn .hn-brand strong { font-size: 11.5px; }
  .hn .hn-brand small { font-size: 6.5px; }
  .hn .hn-brand__icon { width: 26px; height: 28px; }
  .hn .hn-brand { gap: 6px; }
  .hn .hn-benefits li { font-size: 10px; gap: 6px; }
  .hn .hn-hero__title { font-size: 31px; }
}
@media (prefers-reduced-motion: no-preference) {
  .hn .hn-menu-toggle span { transition: transform .18s ease, opacity .18s ease; }
  .hn .hn-button__arrow { transition: transform .18s ease; }
  .hn .hn-button:hover .hn-button__arrow { transform: translateX(3px); }
}

/* Statistics immediately below the hero, matching the supplied 1920px reference. */
.hn .hn-stats { background: #f8fbff; min-height: 167px; }
.hn .hn-stats__inner { display: flex; align-items: flex-start; gap: 75px; padding-top: 48px; padding-bottom: 30px; }
.hn .hn-stats__list { display: grid; grid-template-columns: 24.8% 25.73% 27.41% 22.06%; gap: 0; flex: 1; min-width: 0; margin: 0; }
.hn .hn-stats__item { display: flex; align-items: center; gap: 24px; }
.hn .hn-stats__item dt { order: 2; margin: 0; font-size: 16px; line-height: 1.5; font-weight: 400; color: var(--hn-muted); white-space: nowrap; }
.hn .hn-stats__item dd { order: 1; margin: 0; font-size: 48px; line-height: 1.15; font-weight: 700; letter-spacing: -1.3px; color: var(--hn-accent); white-space: nowrap; }
.hn .hn-stats__note { flex-shrink: 0; width: 165px; margin: -5px 0 0; white-space: nowrap; letter-spacing: -.7px; font-style: italic; color: #88a6c1; font-family: 'Segoe Print', 'Comic Sans MS', cursive; font-size: 17px; font-weight: 400; line-height: 1.5; text-align: center; transform: rotate(-8deg); }
.hn .hn-stats__note svg { display: block; width: 95px; height: 39px; margin: -3px 0 0 auto; color: #c9dff2; stroke-width: 1.7; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-stats__inner { gap: 30px; padding-top: 37px; padding-bottom: 25px; }
  .hn .hn-stats { min-height: 140px; }
  .hn .hn-stats__list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
  .hn .hn-stats__item { gap: 14px; }
  .hn .hn-stats__item dd { font-size: 36px; }
  .hn .hn-stats__item dt { font-size: 12px; }
  .hn .hn-stats__note { width: 165px; font-size: 15px; }
}
@media (max-width: 1199px) {
  .hn .hn-stats__inner { padding-top: 36px; padding-bottom: 30px; flex-direction: column; gap: 26px; }
  .hn .hn-stats__list { width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 38px; }
  .hn .hn-stats__item { gap: 20px; }
  .hn .hn-stats__item dd { font-size: 40px; }
  .hn .hn-stats__item dt { font-size: 14px; }
  .hn .hn-stats__note { align-self: flex-end; margin: 0; font-size: 16px; }
  .hn .hn-stats__note svg { width: 80px; height: 35px; }
}
@media (max-width: 767px) {
  .hn .hn-stats__inner { padding-top: 30px; padding-bottom: 24px; gap: 20px; }
  .hn .hn-stats__list { gap: 26px 20px; }
  .hn .hn-stats__item { flex-direction: column; align-items: flex-start; gap: 5px; }
  .hn .hn-stats__item dd { font-size: 34px; letter-spacing: -1px; }
  .hn .hn-stats__item dt { font-size: 11px; line-height: 1.55; }
  .hn .hn-stats__note { font-size: 15px; }
}

@media (min-width: 1200px) and (max-width: 1439px) {
  .hn .hn-stats__item { flex-direction: column; align-items: flex-start; gap: 4px; }
}

@media (min-width: 1751px) {
  .hn .hn-stats__item:first-child { gap: 29px; }
  .hn .hn-stats__item:nth-child(2) { gap: 18px; }
  .hn .hn-stats__item:last-child { gap: 22px; }
}

/* One plot, many systems: independent copy and an illustrated cutaway. */
.hn .hn-anchor { display: block; height: 0; scroll-margin-top: 85px; }
.hn .hn-systems { position: relative; min-height: 977px; padding: 64px 0 70px; overflow: hidden; background: radial-gradient(ellipse at 85% 65%, #dff2ff 0%, #f3faff 43%, #fbfdff 78%); }
.hn .hn-systems__inner { position: relative; }
.hn .hn-systems__copy { position: relative; width: 800px; z-index: 2; }
.hn .hn-systems__eyebrow { display: inline-block; margin: 0; padding: 8px 15px; border-radius: 12px; background: #e6f5fe; color: #319fda; font-size: 16px; font-weight: 600; letter-spacing: 1.8px; line-height: 20px; }
.hn .hn-systems__title { margin: 28px 0 33px; color: var(--hn-text); font-size: 56px; line-height: 1.09; font-weight: 600; letter-spacing: -2.2px; text-transform: none; text-align: left; }
.hn .hn-systems__title > span:last-child { color: var(--hn-accent); font-weight: 700; }
.hn .hn-systems__description { color: var(--hn-muted); font-size: 21px; line-height: 1.5; font-weight: 400; letter-spacing: -.5px; }
.hn .hn-systems__description p { margin: 0 0 29px; }
.hn .hn-systems__description p:last-child { margin-bottom: 0; }
.hn .hn-systems__description strong { color: var(--hn-text); font-weight: 700; }
.hn .hn-systems__benefits { list-style: none; padding: 0; margin: 36px 0 0; display: grid; grid-template-columns: 310px 375px; gap: 32px 28px; }
.hn .hn-systems__benefits li { display: flex; align-items: center; gap: 23px; color: var(--hn-muted); font-size: 20px; line-height: 1.5; font-weight: 400; letter-spacing: -.4px; }
.hn .hn-systems__benefit-icon { display: grid; place-items: center; flex-shrink: 0; width: 74px; height: 74px; border-radius: 20px; color: var(--hn-accent); background: #e2f3fd; }
.hn .hn-systems__benefit-icon svg { width: 39px; height: 39px; stroke-width: 3; }
.hn .hn-systems__button { width: 433px; height: 86px; margin-top: 60px; background: var(--hn-accent); color: #fff; font-size: 21px; font-weight: 600; gap: 20px; }
.hn .hn-systems__button:hover { background: var(--hn-accent-dark); }
.hn .hn-systems__scene { position: absolute; width: 1060px; height: 870px; top: -21px; right: -78px; z-index: 1; }
.hn .hn-systems__image { position: absolute; top: 3.5%; left: 0; width: 100%; height: 96.5%; object-fit: fill; filter: drop-shadow(0 24px 22px #17466322); }
.hn .hn-systems__note { position: absolute; z-index: 2; top: 7px; right: 55px; color: #268cc8; font-family: 'Segoe Print', 'Comic Sans MS', cursive; font-size: 22px; font-style: italic; line-height: 1.4; letter-spacing: -.8px; transform: rotate(-6deg); }
.hn .hn-systems__note svg { display: block; width: 105px; height: 60px; margin: -3px 15px 0 auto; stroke-width: 1.4; }
.hn .hn-systems__caption { position: absolute; bottom: 110px; right: 26px; color: #a2a9ae; font-family: 'Segoe Print', 'Comic Sans MS', cursive; font-size: 22px; font-style: italic; line-height: 1.4; letter-spacing: -.5px; transform: rotate(-12deg); z-index: 2; }
.hn .hn-system-card { position: absolute; display: flex; align-items: center; gap: 13px; min-height: 76px; padding: 13px 16px; background: #fffffffa; color: var(--hn-text); border-radius: 18px; box-shadow: 0 9px 24px #2c547016; z-index: 3; }
.hn .hn-system-card strong { display: block; font-size: 15px; line-height: 1.5; font-weight: 600; letter-spacing: -.4px; }
.hn .hn-system-card small { display: block; color: #64788e; font-size: 13px; font-weight: 400; line-height: 1.5; letter-spacing: -.35px; white-space: nowrap; }
.hn .hn-system-card__icon { display: grid; place-items: center; flex-shrink: 0; width: 48px; height: 48px; border-radius: 50%; background: var(--hn-accent); color: #fff; }
.hn .hn-system-card__icon svg { width: 28px; height: 28px; stroke-width: 2.4; }
.hn .hn-system-card:hover { background: #f1faff; box-shadow: 0 10px 26px #1777a32b; }
.hn .hn-system-card--heat { top: 12.1%; left: 28%; width: 20.2%; }
.hn .hn-system-card--electric { top: 20.1%; left: 71%; width: 24.6%; }
.hn .hn-system-card--climate { top: 40.4%; left: 62.5%; width: 29.3%; }
.hn .hn-system-card--water { top: 49%; left: 15.5%; width: 24%; }
.hn .hn-system-card--well { top: 70%; left: 9%; width: 23.3%; }
.hn .hn-system-card--septic { top: 83%; left: 34%; width: 26%; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-systems { min-height: 760px; padding: 50px 0 60px; }
  .hn .hn-systems__copy { width: 54%; }
  .hn .hn-systems__eyebrow { font-size: 12px; padding: 6px 12px; letter-spacing: 1.2px; }
  .hn .hn-systems__title { font-size: clamp(36px, 2.83vw, 49px); letter-spacing: -1.4px; margin: 25px 0; }
  .hn .hn-systems__description { font-size: clamp(16px, 1.13vw, 20px); letter-spacing: -.35px; }
  .hn .hn-systems__description p { margin-bottom: 24px; }
  .hn .hn-systems__break { display: none; }
  .hn .hn-systems__benefits { grid-template-columns: 1fr 1.15fr; gap: 24px 20px; margin-top: 28px; }
  .hn .hn-systems__benefits li { gap: 15px; font-size: 15px; letter-spacing: -.3px; }
  .hn .hn-systems__benefit-icon { width: 58px; height: 58px; border-radius: 16px; }
  .hn .hn-systems__benefit-icon svg { width: 32px; height: 32px; }
  .hn .hn-systems__button { width: 350px; height: 70px; font-size: 18px; margin-top: 38px; }
  .hn .hn-systems__scene { width: 55.2vw; height: auto; aspect-ratio: 1060 / 870; right: -5.56%; top: 0; }
  .hn .hn-systems__note { font-size: 21px; right: 40px; }
  .hn .hn-systems__caption { font-size: 17px; bottom: 10%; }
  .hn .hn-system-card { min-height: 56px; padding: 9px 10px; gap: 9px; border-radius: 13px; }
  .hn .hn-system-card__icon { width: 34px; height: 34px; }
  .hn .hn-system-card__icon svg { width: 22px; height: 22px; }
  .hn .hn-system-card strong { font-size: 10px; }
  .hn .hn-system-card small { font-size: 8px; letter-spacing: -.2px; }
}
@media (max-width: 1199px) {
  .hn .hn-systems { min-height: 0; padding: 44px 0 40px; }
  .hn .hn-systems__copy { width: 100%; max-width: 800px; margin: 0 auto; }
  .hn .hn-systems__eyebrow { font-size: 12px; letter-spacing: 1.3px; }
  .hn .hn-systems__title { font-size: clamp(33px, 5.4vw, 54px); margin: 25px 0; letter-spacing: -1.5px; }
  .hn .hn-systems__description { font-size: 18px; letter-spacing: -.35px; }
  .hn .hn-systems__description p { margin-bottom: 22px; }
  .hn .hn-systems__break { display: none; }
  .hn .hn-systems__benefits { grid-template-columns: 1fr 1.15fr; gap: 24px 20px; margin-top: 28px; }
  .hn .hn-systems__benefits li { font-size: 16px; gap: 16px; }
  .hn .hn-systems__benefit-icon { width: 60px; height: 60px; border-radius: 16px; }
  .hn .hn-systems__benefit-icon svg { width: 32px; height: 32px; }
  .hn .hn-systems__button { width: 370px; height: 70px; margin-top: 35px; font-size: 18px; }
  .hn .hn-systems__scene { position: relative; top: auto; right: auto; width: 100%; max-width: 900px; height: auto; aspect-ratio: 1060 / 870; margin: 48px auto 0; }
  .hn .hn-systems__note { font-size: clamp(16px, 2.7vw, 25px); right: 3%; }
  .hn .hn-systems__note svg { width: 90px; height: 50px; }
  .hn .hn-systems__caption { font-size: clamp(12px, 2vw, 19px); right: 2%; bottom: 10%; }
  .hn .hn-system-card { padding: 8px 10px; min-height: 55px; gap: 9px; border-radius: 13px; }
  .hn .hn-system-card strong { font-size: 11px; letter-spacing: -.3px; }
  .hn .hn-system-card small { font-size: 9px; letter-spacing: -.4px; }
  .hn .hn-system-card__icon { width: 34px; height: 34px; }
  .hn .hn-system-card__icon svg { width: 23px; height: 23px; }
}
@media (max-width: 767px) {
  .hn .hn-systems { padding: 32px 0; }
  .hn .hn-systems__eyebrow { font-size: 9px; padding: 6px 10px; letter-spacing: 1px; }
  .hn .hn-systems__title { font-size: clamp(27px, 7.6vw, 38px); line-height: 1.15; letter-spacing: -1px; margin: 22px 0; }
  .hn .hn-systems__description { font-size: 15px; line-height: 1.6; letter-spacing: -.25px; }
  .hn .hn-systems__benefits { gap: 22px 16px; }
  .hn .hn-systems__benefits li { flex-direction: column; align-items: flex-start; gap: 10px; font-size: 12px; letter-spacing: -.2px; }
  .hn .hn-systems__benefit-icon { width: 52px; height: 52px; border-radius: 15px; }
  .hn .hn-systems__benefit-icon svg { width: 29px; height: 29px; }
  .hn .hn-systems__button { width: 100%; height: 62px; font-size: 15px; margin-top: 30px; gap: 15px; }
  .hn .hn-systems__scene { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; aspect-ratio: auto; margin-top: 35px; }
  .hn .hn-systems__image { position: relative; top: auto; left: auto; object-fit: contain; grid-column: 1 / -1; order: 2; height: auto; aspect-ratio: 1.2; }
  .hn .hn-systems__note { position: static; grid-column: 1 / -1; order: 1; font-size: 19px; text-align: right; padding-right: 8px; }
  .hn .hn-systems__note svg { display: none; }
  .hn .hn-system-card { position: static; order: 3; width: 100%; min-height: 62px; gap: 7px; padding: 8px; border-radius: 12px; }
  .hn .hn-system-card strong { font-size: 10px; letter-spacing: -.35px; }
  .hn .hn-system-card small { font-size: 8px; letter-spacing: -.35px; white-space: normal; }
  .hn .hn-system-card__icon { width: 28px; height: 28px; }
  .hn .hn-system-card__icon svg { width: 20px; height: 20px; }
  .hn .hn-systems__caption { position: static; order: 4; grid-column: 1 / -1; font-size: 16px; color: #6d8da5; text-align: right; transform: rotate(-5deg); margin: 18px 0 0; }
}

@media (min-width: 1751px) {
  .hn .hn-systems__inner { width: calc(100% - 180px); max-width: 1740px; }
  .hn .hn-system-card--heat::before { content: ''; position: absolute; top: 0; left: 16px; width: 48px; height: 62px; border-radius: 16px; background: #8dd5f7; }
  .hn .hn-system-card--heat > span { position: relative; }
}

@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-systems__description { max-width: 80%; }
  .hn .hn-systems__benefits { width: 80%; }
  .hn .hn-systems__benefits li { font-size: 14px; gap: 12px; }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .hn .hn-system-card--heat { width: 23%; }
  .hn .hn-system-card--electric { width: 28%; }
  .hn .hn-system-card--climate { width: 32%; }
  .hn .hn-system-card--water { width: 27%; }
  .hn .hn-system-card--well { width: 26%; }
  .hn .hn-system-card--septic { width: 29%; }
}

/* Finishing pass: reference alignment, readable cards and restrained feedback. */
.hn .hn-system-card { box-shadow: 0 8px 24px #2c547016, inset 0 0 0 1px #e4eef880; }
.hn .hn-system-card__content { min-width: 0; }
.hn .hn-system-card:focus-visible { outline: 2px solid var(--hn-accent-dark); outline-offset: 4px; background: #f1faff; }
.hn .hn-systems__button { box-shadow: 0 10px 28px #079ddc1a; }
.hn .hn-systems__button:focus-visible { outline-offset: 5px; }
@media (min-width: 1751px) {
  .hn .hn-systems__lead { font-size: 58px; line-height: 1; letter-spacing: -2px; }
}
@media (max-width: 767px) {
  .hn .hn-system-card { flex-direction: column; align-items: flex-start; padding: 12px; gap: 9px; min-height: 118px; }
  .hn .hn-system-card__icon { width: 32px; height: 32px; }
  .hn .hn-system-card__icon svg { width: 21px; height: 21px; }
  .hn .hn-system-card strong { font-size: 12px; line-height: 1.4; letter-spacing: -.45px; }
  .hn .hn-system-card small { font-size: 10px; line-height: 1.45; letter-spacing: -.25px; margin-top: 4px; }
  .hn .hn-systems__caption { padding-right: 3px; }
}
@media (max-width: 359px) {
  .hn .hn-system-card strong { font-size: 11px; }
  .hn .hn-system-card small { font-size: 9px; }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .hn .hn-system-card { transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease; }
  .hn .hn-system-card:hover { transform: translateY(-3px); box-shadow: 0 13px 30px #1777a322, inset 0 0 0 1px #b9e2f5; }
  .hn .hn-systems__button { transition: box-shadow .18s ease, background-color .18s ease; }
  .hn .hn-systems__button:hover { box-shadow: 0 14px 32px #079ddc2b; }
}

/* Engineering system navigation, directly below the illustrated section. */
.hn .hn-catalog { --hn-catalog-bg: #f0f9ff; --hn-catalog-panel: #ffffffed; --hn-catalog-tile: #f4f7fa; --hn-catalog-muted: #8796ab; padding: 56px 0 48px; background: linear-gradient(110deg, #f8fcff, var(--hn-catalog-bg)); }
.hn .hn-catalog__panel { width: calc(100% - 74px); max-width: 1846px; margin: 0 auto; min-height: 211px; padding: 36px 44px; display: grid; grid-template-columns: 370px minmax(0, 1fr) 235px; gap: 40px; align-items: center; border-radius: 24px; background: var(--hn-catalog-panel); }
.hn .hn-catalog__title { margin: 0 0 11px; font-size: 28px; line-height: 1.2; font-weight: 600; letter-spacing: -.9px; color: var(--hn-text); text-align: left; text-transform: none; }
.hn .hn-catalog__intro p, .hn .hn-catalog__more p { margin: 0; color: var(--hn-catalog-muted); font-size: 17px; line-height: 1.5; font-weight: 400; letter-spacing: -.45px; }
.hn .hn-catalog__nav { min-width: 0; }
.hn .hn-catalog__list { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(9, 90px); justify-content: space-between; list-style: none; }
.hn .hn-catalog__list li { min-width: 0; }
.hn .hn-catalog__item { position: relative; display: flex; flex-direction: column; align-items: center; padding-bottom: 24px; color: #24334a; text-align: center; }
.hn .hn-catalog__tile { display: grid; place-items: center; width: 90px; height: 82px; }
.hn .hn-catalog__icon { display: grid; place-items: center; width: 78px; height: 78px; border-radius: 20px; background: var(--hn-catalog-tile); }
.hn .hn-catalog__icon svg { width: 32px; height: 32px; stroke-width: 2.7; }
.hn .hn-catalog__label { margin-top: 10px; font-size: 13px; line-height: 20px; font-weight: 400; letter-spacing: -.4px; white-space: nowrap; }
.hn .hn-catalog__item--accent { color: var(--hn-accent); }
.hn .hn-catalog__item--accent .hn-catalog__icon { width: 86px; height: 82px; background: #e8f5ff; box-shadow: inset 0 0 0 2px #ccecff; }
.hn .hn-catalog__item--accent .hn-catalog__icon svg { width: 48px; height: 48px; stroke-width: 2.7; }
.hn .hn-catalog__item--accent .hn-catalog__label { font-weight: 600; }
.hn .hn-catalog__item--accent::after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 2px; background: var(--hn-accent); }
.hn .hn-catalog__item:hover { color: var(--hn-accent); }
.hn .hn-catalog__item:hover .hn-catalog__icon { background: #e8f5ff; }
.hn .hn-catalog__item:focus-visible { outline-offset: 4px; border-radius: 12px; }
.hn .hn-catalog__more { min-height: 115px; padding: 9px 0 0 46px; border-left: 1px solid #e1ebf4; }
.hn .hn-catalog__all { display: flex; align-items: center; gap: 12px; margin: 0 0 14px; color: var(--hn-accent); font-size: 19px; font-weight: 600; line-height: 1.5; white-space: nowrap; letter-spacing: -.3px; }
.hn .hn-catalog__all svg { width: 28px; height: 28px; stroke-width: 1.8; }
.hn .hn-catalog__all:hover { color: var(--hn-accent-dark); }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-catalog__panel { grid-template-columns: minmax(0, 1fr) 210px; gap: 25px 32px; padding: 30px 34px; }
  .hn .hn-catalog__intro { grid-column: 1 / -1; }
  .hn .hn-catalog__title { font-size: 25px; }
  .hn .hn-catalog__intro p { font-size: 16px; }
  .hn .hn-catalog__break { display: none; }
  .hn .hn-catalog__list { grid-template-columns: repeat(9, 80px); }
  .hn .hn-catalog__tile { width: 80px; height: 74px; }
  .hn .hn-catalog__icon { width: 70px; height: 70px; border-radius: 18px; }
  .hn .hn-catalog__item--accent .hn-catalog__icon { width: 76px; height: 74px; }
  .hn .hn-catalog__item--accent .hn-catalog__icon svg { width: 42px; height: 42px; }
  .hn .hn-catalog__label { font-size: 11px; letter-spacing: -.35px; }
  .hn .hn-catalog__more { padding-left: 30px; }
}
@media (max-width: 1199px) {
  .hn .hn-catalog { padding: 30px 0; }
  .hn .hn-catalog__panel { width: 90%; padding: 28px; grid-template-columns: 1fr; gap: 28px; border-radius: 22px; }
  .hn .hn-catalog__title { font-size: 26px; }
  .hn .hn-catalog__intro p { font-size: 16px; }
  .hn .hn-catalog__break { display: none; }
  .hn .hn-catalog__list { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 18px 14px; justify-content: normal; }
  .hn .hn-catalog__label { font-size: 12px; }
  .hn .hn-catalog__more { min-height: 0; border-left: 0; border-top: 1px solid #e1ebf4; padding: 23px 0 0; }
  .hn .hn-catalog__more p { font-size: 15px; }
  .hn .hn-catalog__all { margin-bottom: 8px; }
}
@media (max-width: 767px) {
  .hn .hn-catalog__panel { width: calc(100% - 32px); padding: 24px 20px; gap: 24px; }
  .hn .hn-catalog__title { font-size: 22px; letter-spacing: -.65px; }
  .hn .hn-catalog__intro p { font-size: 14px; }
  .hn .hn-catalog__list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px 12px; }
  .hn .hn-catalog__tile { width: 100%; height: 70px; }
  .hn .hn-catalog__icon { width: 66px; height: 66px; border-radius: 17px; }
  .hn .hn-catalog__item--accent .hn-catalog__icon { width: 70px; height: 70px; }
  .hn .hn-catalog__item--accent .hn-catalog__icon svg { width: 42px; height: 42px; }
  .hn .hn-catalog__label { font-size: 11px; letter-spacing: -.45px; white-space: normal; overflow-wrap: normal; }
  .hn .hn-catalog__item { height: 124px; padding-bottom: 14px; }
  .hn .hn-catalog__more p { font-size: 14px; }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .hn .hn-catalog__icon { transition: background-color .18s ease, transform .18s ease; }
  .hn .hn-catalog__item:hover .hn-catalog__icon { transform: translateY(-2px); }
  .hn .hn-catalog__all svg { transition: transform .18s ease; }
  .hn .hn-catalog__all:hover svg { transform: translateX(3px); }
}

@media (min-width: 1751px) {
  .hn .hn-catalog__title { margin-bottom: 13px; }
  .hn .hn-catalog__intro { transform: translateY(3px); }
  .hn .hn-catalog__more { padding-top: 12px; }
}
@media (min-width: 1751px) and (max-width: 1820px) {
  .hn .hn-catalog__panel { grid-template-columns: 340px minmax(0, 1fr) 220px; gap: 32px; }
  .hn .hn-catalog__title { font-size: 25px; }
  .hn .hn-catalog__intro p { font-size: 16px; }
  .hn .hn-catalog__more { padding-left: 34px; }
}

.hn .hn-catalog__label wbr { display: none; }
@media (max-width: 767px) {
  .hn .hn-catalog__label wbr { display: inline; }
}

/* Digital passport contents: accessible section navigation and layered artwork. */
.hn .hn-passport { --hn-passport-card: #fffffffa; --hn-passport-soft: #e4f5ff; --hn-passport-secondary: #77879e; position: relative; min-height: 1050px; padding: 28px 0 46px; overflow: hidden; background: radial-gradient(ellipse at 46% 66%, #e8f7ff 0%, #f7fcff 51%, #fcfdff 90%); scroll-margin-top: 80px; }
.hn .hn-passport__header { display: grid; grid-template-columns: 690px 610px minmax(0, 1fr); gap: 38px; align-items: start; position: relative; z-index: 2; }
.hn .hn-passport__eyebrow { display: inline-block; padding: 8px 13px; margin: 0; color: var(--hn-accent); background: #e3f5ff; border-radius: 12px; font-size: 15px; line-height: 20px; letter-spacing: 2.2px; font-weight: 600; }
.hn .hn-passport__title { margin: 24px 0 0; color: var(--hn-text); text-align: left; text-transform: none; font-size: 55px; line-height: 1.12; font-weight: 700; letter-spacing: -1.7px; }
.hn .hn-passport__title span { color: var(--hn-accent); }
.hn .hn-passport__intro { margin: 66px 0 0; color: var(--hn-muted); font-size: 19px; line-height: 1.5; font-weight: 400; letter-spacing: -.45px; }
.hn .hn-passport__header-note { justify-self: end; width: 255px; margin-top: 28px; font-family: 'Segoe Print', 'Comic Sans MS', cursive; font-size: 24px; font-style: italic; line-height: 1.25; letter-spacing: -.9px; color: #298ecb; transform: rotate(-8deg); text-align: center; white-space: nowrap; }
.hn .hn-passport__header-note svg { display: block; width: 105px; height: 60px; margin: 3px 5px 0 auto; stroke-width: 1.3; }
.hn .hn-passport__body { position: relative; margin-top: 46px; min-height: 747px; display: grid; grid-template-columns: 420px minmax(0, 1fr) 400px; gap: 30px; }
.hn .hn-passport__sidebar { position: relative; z-index: 5; }
.hn .hn-passport__nav { display: grid; gap: 2px; margin-left: -20px; padding-top: 12px; }
.hn .hn-passport__nav-item { position: relative; min-height: 84px; display: flex; align-items: center; padding: 20px 30px; gap: 43px; color: #435571; font-size: 20px; font-weight: 400; line-height: 1.3; letter-spacing: -.6px; border-radius: 22px; }
.hn .hn-passport__nav-icon { width: 32px; height: 36px; stroke-width: 2.7; }
.hn .hn-passport__nav-arrow { display: none; position: absolute; right: 30px; width: 28px; height: 28px; color: var(--hn-accent); stroke-width: 1.7; }
.hn .hn-passport__nav-item--active { background: #e7f5ff; color: var(--hn-text); font-weight: 600; }
.hn .hn-passport__nav-item--active::before { content: ''; position: absolute; left: 0; top: 14px; bottom: 14px; width: 2px; border-radius: 3px; background: var(--hn-accent); }
.hn .hn-passport__nav-item--active .hn-passport__nav-icon { color: var(--hn-accent); }
.hn .hn-passport__nav-item--active .hn-passport__nav-arrow { display: block; }
.hn .hn-passport__nav-item:hover { background: #edf8ff; }
.hn .hn-passport__button { width: 400px; height: 80px; margin-top: 42px; background: var(--hn-accent); color: #fff; font-size: 18px; font-weight: 600; letter-spacing: -.35px; gap: 17px; }
.hn .hn-passport__button:hover { background: var(--hn-accent-dark); }
.hn .hn-passport__scene { position: absolute; width: 890px; height: 780px; left: 395px; top: 0; z-index: 1; scroll-margin-top: 90px; }
.hn .hn-passport__disc { position: absolute; width: 100%; height: 95%; top: 4%; left: 0; border-radius: 50%; background: radial-gradient(ellipse at 37% 48%, #cdeeff 0%, #e4f5ff 54%, #eff9ff91 78%); }
.hn .hn-passport__disc::before { content: ''; position: absolute; left: 7%; top: 40%; width: 12%; height: 15%; clip-path: polygon(0 0, 100% 18%, 100% 82%, 0 100%); background: linear-gradient(90deg, #8ed4f2, #cdefff); opacity: .8; }
.hn .hn-passport__phone { position: absolute; left: 12.7%; top: .4%; width: 42%; height: 95.5%; object-fit: fill; filter: drop-shadow(0 12px 16px #1d3c4d24); z-index: 3; }
.hn .hn-passport__installation { position: absolute; left: 55.5%; top: 13.5%; width: 28%; height: 43%; padding: 16px; margin: 0; border-radius: 24px; background: var(--hn-passport-card); transform: rotate(2deg); box-shadow: 0 14px 32px #35627e14; z-index: 1; overflow: hidden; }
.hn .hn-passport__installation img { display: block; width: 100%; height: 190px; object-fit: cover; border-radius: 13px; }
.hn .hn-passport__photo-lines { margin-top: 18px; display: grid; gap: 12px; }
.hn .hn-passport__photo-lines span { height: 8px; width: 85%; background: linear-gradient(90deg, #e9f6ff, #f5fbff); border-radius: 2px; }
.hn .hn-passport__photo-lines span:nth-child(2) { width: 68%; }
.hn .hn-passport__document { position: absolute; left: 70.5%; top: 25.5%; width: 27.4%; height: 37.5%; padding: 29px 25px; background: var(--hn-passport-card); box-shadow: 0 15px 36px #1f567414; border-radius: 24px; transform: rotate(6deg); z-index: 2; }
.hn .hn-passport__document > strong { display: block; font-size: 21px; line-height: 1.2; color: var(--hn-text); letter-spacing: -.7px; font-weight: 600; }
.hn .hn-passport__file-meta { display: flex; align-items: center; gap: 9px; margin: 23px 0 20px; }
.hn .hn-passport__pdf { display: grid; place-items: center; width: 34px; height: 39px; border-radius: 5px; background: #e9282e; color: #fff; font-size: 12px; font-weight: 600; }
.hn .hn-passport__file-size { padding: 9px 10px; border-radius: 7px; background: #edf3f9; color: #34465e; font-size: 12px; font-weight: 500; }
.hn .hn-passport__document-lines { display: grid; gap: 13px; }
.hn .hn-passport__document-lines span { height: 6px; background: #eaf0f6; }
.hn .hn-passport__document-lines span:nth-child(3) { width: 85%; }
.hn .hn-passport__document-lines span:last-child { width: 65%; }
.hn .hn-passport__schedule { position: absolute; left: 55%; top: 49%; width: 34%; height: 30.5%; padding: 26px; border-radius: 23px; background: var(--hn-passport-card); box-shadow: 0 15px 36px #1f567416; transform: rotate(-7deg); z-index: 4; }
.hn .hn-passport__schedule > strong { display: block; margin-bottom: 22px; color: var(--hn-text); font-size: 17px; font-weight: 600; line-height: 1.4; letter-spacing: -.5px; }
.hn .hn-passport__schedule-row { display: flex; align-items: center; gap: 12px; margin-top: 22px; }
.hn .hn-passport__schedule-row b { display: block; color: var(--hn-text); font-size: 13px; line-height: 1.4; font-weight: 600; letter-spacing: -.3px; }
.hn .hn-passport__schedule-row small { display: block; font-size: 12px; color: var(--hn-passport-secondary); line-height: 1.5; }
.hn .hn-passport__check { display: grid; place-items: center; width: 29px; height: 29px; border: 2px solid #dce7f0; border-radius: 50%; color: #fff; flex-shrink: 0; font-size: 19px; line-height: 1; }
.hn .hn-passport__check--done { background: var(--hn-accent); border-color: var(--hn-accent); }
.hn .hn-passport__photo-note, .hn .hn-passport__scene-note { position: absolute; font-family: 'Segoe Print', 'Comic Sans MS', cursive; font-size: 23px; font-style: italic; line-height: 1.3; letter-spacing: -.6px; color: #3a9dd6; z-index: 5; transform: rotate(-8deg); }
.hn .hn-passport__photo-note { left: 69%; top: 2.3%; white-space: nowrap; }
.hn .hn-passport__photo-note svg { display: block; width: 80px; height: 75px; margin: -2px 0 0 -27px; stroke-width: 1.3; }
.hn .hn-passport__scene-note { left: 76%; top: 85%; white-space: nowrap; text-align: center; }
.hn .hn-passport__scene-note svg { position: absolute; right: 100%; top: -12px; width: 72px; height: 68px; stroke-width: 1.3; }
.hn .hn-passport__features { position: relative; grid-column: 3; padding-top: 12px; display: grid; align-content: start; gap: 28px; z-index: 5; }
.hn .hn-passport__feature { display: grid; grid-template-columns: 74px minmax(0, 1fr); gap: 34px; min-height: 94px; scroll-margin-top: 100px; border-radius: 18px; }
.hn .hn-passport__feature-icon { display: grid; place-items: center; width: 74px; height: 74px; border-radius: 21px; background: var(--hn-passport-soft); color: var(--hn-accent); }
.hn .hn-passport__feature-icon svg { width: 39px; height: 39px; stroke-width: 2.8; }
.hn .hn-passport__feature h3 { margin: 9px 0 5px; color: var(--hn-text); font-size: 20px; line-height: 1.3; font-weight: 600; letter-spacing: -.6px; text-align: left; text-transform: none; }
.hn .hn-passport__feature p { margin: 0; color: var(--hn-passport-secondary); font-size: 16px; line-height: 1.5; letter-spacing: -.4px; font-weight: 400; }
.hn .hn-passport__feature--selected { background: #e9f7ff91; box-shadow: 0 0 0 10px #e9f7ff91; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-passport { min-height: 900px; padding: 38px 0 42px; }
  .hn .hn-passport__header { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 32px; }
  .hn .hn-passport__eyebrow { font-size: 12px; padding: 6px 11px; letter-spacing: 1.6px; }
  .hn .hn-passport__title { font-size: 40px; letter-spacing: -1.3px; margin-top: 23px; }
  .hn .hn-passport__intro { font-size: 16px; margin-top: 55px; }
  .hn .hn-passport__break { display: none; }
  .hn .hn-passport__header-note { display: none; }
  .hn .hn-passport__body { margin-top: 35px; min-height: 650px; grid-template-columns: 290px minmax(0, 1fr) 310px; gap: 20px; }
  .hn .hn-passport__nav { margin-left: -12px; }
  .hn .hn-passport__nav-item { min-height: 66px; padding: 16px 18px; gap: 24px; font-size: 15px; border-radius: 16px; }
  .hn .hn-passport__nav-icon { width: 27px; height: 30px; }
  .hn .hn-passport__nav-arrow { right: 17px; width: 23px; height: 23px; }
  .hn .hn-passport__button { width: 290px; height: 64px; margin-top: 30px; font-size: 14px; gap: 10px; }
  .hn .hn-passport__scene { left: 235px; width: 600px; height: 650px; }
  .hn .hn-passport__phone { left: 12%; width: 47%; height: 87%; }
  .hn .hn-passport__installation { padding: 11px; height: 37%; border-radius: 18px; }
  .hn .hn-passport__installation img { height: 138px; border-radius: 10px; }
  .hn .hn-passport__photo-lines { gap: 9px; margin-top: 12px; }
  .hn .hn-passport__document { padding: 20px 16px; height: 34%; border-radius: 18px; }
  .hn .hn-passport__document > strong { font-size: 15px; }
  .hn .hn-passport__file-meta { margin: 17px 0 14px; gap: 6px; }
  .hn .hn-passport__pdf { width: 27px; height: 31px; font-size: 9px; }
  .hn .hn-passport__file-size { font-size: 9px; padding: 7px; }
  .hn .hn-passport__document-lines { gap: 10px; }
  .hn .hn-passport__document-lines span { height: 4px; }
  .hn .hn-passport__schedule { padding: 18px; height: 27%; border-radius: 18px; }
  .hn .hn-passport__schedule > strong { font-size: 13px; margin-bottom: 14px; }
  .hn .hn-passport__schedule-row { gap: 8px; margin-top: 14px; }
  .hn .hn-passport__schedule-row b { font-size: 10px; }
  .hn .hn-passport__schedule-row small { font-size: 9px; }
  .hn .hn-passport__check { width: 22px; height: 22px; font-size: 14px; }
  .hn .hn-passport__photo-note, .hn .hn-passport__scene-note { font-size: 17px; }
  .hn .hn-passport__scene-note { left: 70%; top: 81%; }
  .hn .hn-passport__feature { grid-template-columns: 52px minmax(0, 1fr); gap: 17px; min-height: 78px; }
  .hn .hn-passport__feature-icon { width: 52px; height: 52px; border-radius: 16px; }
  .hn .hn-passport__feature-icon svg { width: 29px; height: 29px; }
  .hn .hn-passport__feature h3 { font-size: 16px; margin-top: 3px; letter-spacing: -.4px; }
  .hn .hn-passport__feature p { font-size: 13px; }
  .hn .hn-passport__features { gap: 25px; }
}
@media (max-width: 1199px) {
  .hn .hn-passport { min-height: 0; padding: 38px 0 40px; }
  .hn .hn-passport__header { grid-template-columns: 1fr; gap: 24px; }
  .hn .hn-passport__eyebrow { font-size: 12px; letter-spacing: 1.5px; }
  .hn .hn-passport__title { font-size: clamp(34px, 5.8vw, 56px); letter-spacing: -1.5px; margin-top: 24px; }
  .hn .hn-passport__intro { margin: 0; font-size: 18px; max-width: 780px; }
  .hn .hn-passport__break { display: none; }
  .hn .hn-passport__header-note { display: none; }
  .hn .hn-passport__body { display: flex; flex-direction: column; margin-top: 30px; min-height: 0; gap: 0; }
  .hn .hn-passport__nav { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; padding: 0; margin: 0; }
  .hn .hn-passport__nav-item { min-height: 70px; padding: 13px; font-size: 13px; gap: 12px; border-radius: 14px; }
  .hn .hn-passport__nav-icon { width: 25px; height: 28px; }
  .hn .hn-passport__nav-arrow { display: none; }
  .hn .hn-passport__nav-item--active .hn-passport__nav-arrow { display: none; }
  .hn .hn-passport__button { width: 370px; height: 65px; margin-top: 22px; font-size: 16px; gap: 14px; }
  .hn .hn-passport__scene { position: relative; left: auto; top: auto; width: 100%; max-width: 850px; height: auto; aspect-ratio: 890 / 780; margin: 35px auto 28px; }
  .hn .hn-passport__installation { padding: 11px; border-radius: 18px; }
  .hn .hn-passport__installation img { height: 63%; border-radius: 9px; }
  .hn .hn-passport__photo-lines { gap: 10px; margin-top: 13px; }
  .hn .hn-passport__document { padding: 22px 18px; border-radius: 18px; }
  .hn .hn-passport__document > strong { font-size: 16px; }
  .hn .hn-passport__file-meta { gap: 7px; margin: 17px 0 15px; }
  .hn .hn-passport__pdf { width: 28px; height: 33px; font-size: 10px; }
  .hn .hn-passport__file-size { font-size: 10px; padding: 8px; }
  .hn .hn-passport__document-lines { gap: 10px; }
  .hn .hn-passport__document-lines span { height: 5px; }
  .hn .hn-passport__schedule { padding: 19px; border-radius: 18px; }
  .hn .hn-passport__schedule > strong { font-size: 13px; margin-bottom: 14px; }
  .hn .hn-passport__schedule-row { gap: 9px; margin-top: 15px; }
  .hn .hn-passport__schedule-row b { font-size: 11px; }
  .hn .hn-passport__schedule-row small { font-size: 10px; }
  .hn .hn-passport__check { width: 23px; height: 23px; font-size: 15px; }
  .hn .hn-passport__photo-note, .hn .hn-passport__scene-note { font-size: 18px; }
  .hn .hn-passport__photo-note svg, .hn .hn-passport__scene-note svg { width: 60px; height: 55px; }
  .hn .hn-passport__features { grid-column: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px 28px; padding: 0; }
  .hn .hn-passport__feature { grid-template-columns: 52px minmax(0, 1fr); gap: 16px; min-height: 95px; }
  .hn .hn-passport__feature-icon { width: 52px; height: 52px; border-radius: 16px; }
  .hn .hn-passport__feature-icon svg { width: 29px; height: 29px; }
  .hn .hn-passport__feature h3 { font-size: 16px; margin-top: 2px; }
  .hn .hn-passport__feature p { font-size: 14px; }
}
@media (max-width: 767px) {
  .hn .hn-passport { padding: 30px 0 35px; }
  .hn .hn-passport__eyebrow { font-size: 10px; padding: 7px 10px; letter-spacing: 1.3px; }
  .hn .hn-passport__title { font-size: clamp(31px, 8.5vw, 45px); letter-spacing: -1px; margin-top: 22px; }
  .hn .hn-passport__intro { font-size: 15px; line-height: 1.55; letter-spacing: -.3px; }
  .hn .hn-passport__nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hn .hn-passport__nav-item { padding: 12px; gap: 9px; min-height: 68px; font-size: 12px; letter-spacing: -.3px; }
  .hn .hn-passport__nav-icon { width: 23px; height: 26px; }
  .hn .hn-passport__button { width: 100%; height: 62px; font-size: 14px; margin-top: 20px; gap: 10px; }
  .hn .hn-passport__scene { margin-top: 28px; margin-bottom: 30px; }
  .hn .hn-passport__installation { padding: 6px; border-radius: 10px; }
  .hn .hn-passport__installation img { border-radius: 5px; height: 66%; }
  .hn .hn-passport__photo-lines { gap: 5px; margin-top: 7px; }
  .hn .hn-passport__photo-lines span { height: 3px; }
  .hn .hn-passport__document { padding: 12px 10px; border-radius: 11px; }
  .hn .hn-passport__document > strong { font-size: 10px; letter-spacing: -.4px; }
  .hn .hn-passport__file-meta { gap: 4px; margin: 10px 0 9px; }
  .hn .hn-passport__pdf { width: 18px; height: 22px; font-size: 6px; border-radius: 3px; }
  .hn .hn-passport__file-size { font-size: 6px; padding: 5px; border-radius: 4px; }
  .hn .hn-passport__document-lines { gap: 6px; }
  .hn .hn-passport__document-lines span { height: 3px; }
  .hn .hn-passport__schedule { padding: 12px 10px; border-radius: 11px; }
  .hn .hn-passport__schedule > strong { font-size: 8px; letter-spacing: -.4px; margin-bottom: 9px; }
  .hn .hn-passport__schedule-row { gap: 5px; margin-top: 9px; }
  .hn .hn-passport__schedule-row b { font-size: 7px; letter-spacing: -.35px; }
  .hn .hn-passport__schedule-row small { font-size: 6px; }
  .hn .hn-passport__check { width: 15px; height: 15px; border-width: 1px; font-size: 10px; }
  .hn .hn-passport__photo-note, .hn .hn-passport__scene-note { font-size: 12px; letter-spacing: -.4px; }
  .hn .hn-passport__photo-note svg, .hn .hn-passport__scene-note svg { width: 34px; height: 32px; }
  .hn .hn-passport__features { grid-template-columns: 1fr; gap: 24px; }
  .hn .hn-passport__feature { min-height: 80px; gap: 16px; }
}
@media (prefers-reduced-motion: no-preference) {
  .hn .hn-passport__nav-item, .hn .hn-passport__feature { transition: background-color .18s ease, box-shadow .18s ease; }
}

@media (min-width: 1751px) {
  .hn .hn-passport__nav { width: 418px; }
  .hn .hn-passport__features { transform: translateX(8px); }
}

@media (min-width: 1751px) {
  .hn .hn-passport__title span { font-size: 58px; line-height: 1; }
}
@media (max-width: 767px) {
  .hn .hn-passport__document { padding: 10px 8px; overflow: hidden; }
  .hn .hn-passport__file-meta { margin: 8px 0 6px; }
  .hn .hn-passport__document-lines span:nth-child(n+4) { display: none; }
  .hn .hn-passport__schedule { min-height: 92px; }
  .hn .hn-passport__scene-note { top: 90%; font-size: 11px; }
}

/* Passport summary: same section, full-width inset panel. */
.hn .hn-passport-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 28px 32px 0; min-height: 156px; padding: 30px 0; border-radius: 25px; background: #ffffffdb; }
.hn .hn-passport-summary__item { display: flex; align-items: center; justify-content: center; gap: 32px; min-width: 0; position: relative; padding: 0 20px; }
.hn .hn-passport-summary__item + .hn-passport-summary__item::before { content: ''; position: absolute; left: 0; top: 18px; bottom: 18px; width: 1px; background: #e6f0f7; }
.hn .hn-passport-summary__icon { flex: 0 0 64px; width: 64px; height: 64px; display: grid; place-items: center; border-radius: 20px; background: #e8f6ff; color: var(--hn-accent); }
.hn .hn-passport-summary__icon svg { width: 37px; height: 37px; fill: none; stroke: currentColor; stroke-width: 2.8; stroke-linecap: round; stroke-linejoin: round; }
.hn .hn-passport-summary__number { color: var(--hn-accent); font-size: 58px; font-weight: 600; line-height: 1; letter-spacing: -1.5px; }
.hn .hn-passport-summary__number--percent { font-size: 48px; }
.hn .hn-passport-summary__heading { display: block; color: var(--hn-accent); font-size: 25px; font-weight: 600; line-height: 1.25; letter-spacing: -.7px; margin-bottom: 5px; }
.hn .hn-passport-summary p { margin: 0; font-size: 19px; line-height: 1.5; letter-spacing: -.5px; color: #52617c; }
.hn .hn-passport-summary__item:nth-child(1), .hn .hn-passport-summary__item:nth-child(2) { gap: 24px; }
@media (min-width: 1200px) and (max-width: 1599px) {
  .hn .hn-passport-summary__item { gap: 18px; padding: 0 15px; }
  .hn .hn-passport-summary__item:nth-child(1), .hn .hn-passport-summary__item:nth-child(2) { gap: 15px; }
  .hn .hn-passport-summary__icon { flex-basis: 52px; width: 52px; height: 52px; border-radius: 16px; }
  .hn .hn-passport-summary__icon svg { width: 31px; height: 31px; }
  .hn .hn-passport-summary__number { font-size: 45px; }
  .hn .hn-passport-summary__number--percent { font-size: 35px; }
  .hn .hn-passport-summary__heading { font-size: 19px; }
  .hn .hn-passport-summary p { font-size: 14px; }
}
@media (max-width: 1199px) {
  .hn .hn-passport-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 28px 24px 0; padding: 25px 0; row-gap: 28px; }
  .hn .hn-passport-summary__item { justify-content: flex-start; padding: 0 28px; gap: 24px; }
  .hn .hn-passport-summary__item + .hn-passport-summary__item::before { top: 0; bottom: 0; }
  .hn .hn-passport-summary__item:nth-child(3)::before { display: none; }
  .hn .hn-passport-summary__number { font-size: 48px; }
  .hn .hn-passport-summary__number--percent { font-size: 38px; }
  .hn .hn-passport-summary__heading { font-size: 21px; }
  .hn .hn-passport-summary p { font-size: 15px; }
}
@media (max-width: 767px) {
  .hn .hn-passport-summary { grid-template-columns: 1fr; margin: 28px 16px 0; padding: 8px 22px; border-radius: 20px; gap: 0; }
  .hn .hn-passport-summary__item { justify-content: flex-start; min-height: 105px; padding: 20px 0; gap: 20px; }
  .hn .hn-passport-summary__item:nth-child(1), .hn .hn-passport-summary__item:nth-child(2) { gap: 16px; }
  .hn .hn-passport-summary__item + .hn-passport-summary__item::before, .hn .hn-passport-summary__item:nth-child(3)::before { display: block; top: 0; bottom: auto; left: 0; right: 0; width: auto; height: 1px; }
  .hn .hn-passport-summary__icon { flex-basis: 48px; width: 48px; height: 48px; border-radius: 15px; }
  .hn .hn-passport-summary__icon svg { width: 29px; height: 29px; }
  .hn .hn-passport-summary__number { font-size: 45px; }
  .hn .hn-passport-summary__number--percent { font-size: 34px; }
  .hn .hn-passport-summary__heading { font-size: 20px; }
  .hn .hn-passport-summary p { font-size: 13px; letter-spacing: -.3px; }
}

.hn .hn-steps { padding: 50px 0 58px; background: radial-gradient(ellipse at 55% 85%, #eaf7ff, transparent 70%), #f7fbff; }
.hn .hn-steps__container { width: calc(100% - 128px); max-width: 1792px; margin: 0 auto; }
.hn .hn-steps__header { display: grid; grid-template-columns: minmax(0, 1fr) 515px 195px; gap: 45px; margin-left: 32px; }
.hn .hn-steps__eyebrow { display: inline-block; margin: 0 0 26px; padding: 6px 15px; border-radius: 12px; background: #d2efff; color: var(--hn-accent); font-size: 16px; line-height: 1.5; letter-spacing: 2px; font-weight: 600; }
.hn .hn-steps h2 { margin: 0; font-size: 50px; line-height: 1.08; letter-spacing: -1.8px; color: var(--hn-text); font-weight: 700; text-align: left; text-transform: none; }
.hn .hn-steps h2 span { color: var(--hn-accent); }
.hn .hn-steps__intro { margin: 64px 0 0; color: #73829d; font-size: 19px; line-height: 1.5; letter-spacing: -.5px; }
.hn .hn-steps__note, .hn .hn-step__handnote { color: #239fdc; font-family: 'Segoe Print', 'Comic Sans MS', cursive; font-style: italic; font-weight: 400; line-height: 1.25; text-align: center; }
.hn .hn-steps__note { font-size: 23px; margin-top: 48px; transform: rotate(-9deg); }
.hn .hn-steps__note svg { display: block; width: 110px; height: 75px; margin: 0 0 0 auto; stroke-width: 1.5; }
.hn .hn-steps__list { margin: 36px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 46px; }
.hn .hn-step { min-width: 0; }
.hn .hn-step__track { height: 52px; display: flex; align-items: center; gap: 25px; position: relative; margin-left: 32px; margin-right: 8px; }
.hn .hn-step__track span { color: var(--hn-accent); font-weight: 700; font-size: 32px; line-height: 1; }
.hn .hn-step__track i { position: relative; height: 2px; flex: 1; background: linear-gradient(90deg,#bee6fa,#d5eefb); }
.hn .hn-step__track i::before { content: ''; position: absolute; left: 0; top: -10px; width: 24px; height: 24px; border: 2px solid var(--hn-accent); background: #f7fbff; border-radius: 50%; }
.hn .hn-step__track svg { position: absolute; right: -2px; width: 32px; height: 32px; color: var(--hn-accent); stroke-width: 1.8; }
.hn .hn-step:last-child .hn-step__track i { background: linear-gradient(90deg,#bee6fa,transparent); }
.hn .hn-step h3 { margin: 8px 0 10px 32px; color: var(--hn-text); font-size: 22px; font-weight: 600; letter-spacing: -.65px; line-height: 1.3; text-align: left; text-transform: none; white-space: nowrap; }
.hn .hn-step__description { margin: 0 0 0 32px; color: #7a88a2; font-size: 19px; line-height: 1.37; letter-spacing: -.5px; min-height: 105px; }
.hn .hn-step__visual { position: relative; height: 438px; margin-top: 34px; }
.hn .hn-step__house { position: absolute; inset: 44px 0 0; width: 100%; height: 394px; object-fit: cover; object-position: 75% center; border-radius: 19px; }
.hn .hn-step__create-card { position: absolute; left: 18px; top: 8px; width: 278px; height: 440px; padding: 28px 25px 15px; background: #ffffffec; border-radius: 22px; box-shadow: 0 18px 35px #30587620; transform: rotate(-2deg); }
.hn .hn-step__add { height: 64px; border-radius: 20px 20px 0 0; background: #edf8ff; display: flex; align-items: center; gap: 17px; padding: 0 20px; font-size: 13px; font-weight: 600; white-space: nowrap; }
.hn .hn-step__add span { display: grid; place-items: center; width: 24px; height: 24px; border: 2px solid var(--hn-accent); border-radius: 50%; color: var(--hn-accent); font-size: 23px; font-weight: 400; line-height: 1; }
.hn .hn-step__system { height: 64px; display: flex; align-items: center; gap: 16px; padding-left: 29px; }
.hn .hn-step__system svg { width: 46px; height: 46px; padding: 11px; background: #edf6fc; border-radius: 50%; stroke-width: 2.8; }
.hn .hn-step__system:nth-child(2) svg { color: var(--hn-accent); }
.hn .hn-step__system b { font-size: 14px; font-weight: 600; letter-spacing: -.3px; }
.hn .hn-step__handnote--systems { position: absolute; top: 15px; right: 12px; font-size: 20px; transform: rotate(-7deg); }
.hn .hn-step__handnote--systems svg { display: block; width: 85px; height: 60px; stroke-width: 1.5; }
.hn .hn-step__visual--store { border-radius: 20px; background: linear-gradient(130deg,#e5f4fc85,#ffffffa0); }
.hn .hn-step__ghost { position: absolute; inset: 42px 0 0; border-radius: 17px; background: #d7e9f360; padding: 36px 22px; display: grid; gap: 15px; }
.hn .hn-step__ghost span { display: block; background: #c7dce84d; border-radius: 12px; }
.hn .hn-step__info-card { position: absolute; display: flex; gap: 16px; align-items: center; height: 112px; padding: 20px 25px; border-radius: 20px; background: #ffffffef; box-shadow: 0 15px 24px #315d7315; z-index: 3; }
.hn .hn-step__info-card--docs { top: 0; left: 35px; right: 18px; }
.hn .hn-step__card-icon { display: grid; place-items: center; width: 65px; height: 65px; background: #edf8ff; border-radius: 22px; color: var(--hn-accent); flex-shrink: 0; }
.hn .hn-step__card-icon svg { width: 36px; height: 36px; stroke-width: 3; }
.hn .hn-step__info-card strong { display: block; font-size: 16px; font-weight: 600; letter-spacing: -.4px; margin-bottom: 4px; }
.hn .hn-step__info-card small { display: block; color: #7b88a0; font-size: 14px; line-height: 1.5; letter-spacing: -.4px; }
.hn .hn-step__photo { position: absolute; left: 70px; top: 107px; width: 225px; height: 184px; padding: 9px; background: white; border-radius: 15px; }
.hn .hn-step__photo img { width: 100%; height: 100%; object-fit: cover; border-radius: 10px; }
.hn .hn-step__info-card--photos { top: 221px; left: 56px; right: 5px; }
.hn .hn-step__pdf-card { position: absolute; left: 100px; right: 24px; bottom: 10px; height: 93px; padding: 20px 25px; display: flex; align-items: center; gap: 16px; background: #ffffffed; border-radius: 17px; box-shadow: 0 10px 20px #3c607f0c; }
.hn .hn-step__pdf-card > span { display: grid; place-items: center; width: 37px; height: 39px; background: #ec2429; border-radius: 6px; color: white; font-size: 12px; font-weight: 600; flex-shrink: 0; }
.hn .hn-step__pdf-card strong { display: block; font-size: 12px; line-height: 1.4; letter-spacing: -.35px; font-weight: 500; }
.hn .hn-step__pdf-card small { display: inline-block; margin-top: 5px; font-size: 12px; padding: 2px 7px; border-radius: 6px; background: #edf4fa; color: #52617c; }
.hn .hn-step__visual--history { background: #ffffffdb; border-radius: 20px; padding: 27px 27px 22px 76px; }
.hn .hn-step__timeline { list-style: none; margin: 0; padding: 0; display: grid; gap: 26px; }
.hn .hn-step__timeline li { position: relative; display: flex; align-items: flex-start; justify-content: space-between; gap: 9px; min-height: 75px; }
.hn .hn-step__timeline li::before { content: ''; position: absolute; left: -40px; top: 8px; bottom: -35px; width: 2px; background: #72c9f1; }
.hn .hn-step__timeline li:last-child::before { bottom: 0; background: #dbe6f0; }
.hn .hn-step__timeline li::after { content: ''; position: absolute; left: -47px; top: 3px; width: 17px; height: 17px; border: 4px solid #c2eafb; border-radius: 50%; background: var(--hn-accent); }
.hn .hn-step__timeline li:first-child::after { border-color: var(--hn-accent); }
.hn .hn-step__timeline li:nth-child(3)::after { background: #60c0eb; }
.hn .hn-step__timeline li:last-child::after { border-color: #d2deeb; background: #eef5fc; }
.hn .hn-step__timeline b { display: block; margin-bottom: 4px; font-size: 16px; line-height: 1.4; font-weight: 600; }
.hn .hn-step__timeline strong { display: block; font-size: 14px; line-height: 1.5; font-weight: 600; letter-spacing: -.5px; white-space: nowrap; }
.hn .hn-step__timeline small { display: block; font-size: 13px; line-height: 1.5; color: #7b88a0; letter-spacing: -.4px; }
.hn .hn-step__timeline img { width: 75px; height: 75px; object-fit: cover; border-radius: 12px; flex-shrink: 0; }
.hn .hn-step__visual--access > img { position: absolute; top: 0; left: -12px; width: calc(100% + 12px); height: 497px; object-fit: contain; object-position: top center; }
.hn .hn-step__handnote--qr { position: absolute; right: -15px; bottom: -32px; font-size: 21px; transform: rotate(-7deg); }
.hn .hn-step__handnote--qr svg { position: absolute; right: 100%; top: -22px; width: 55px; height: 55px; stroke-width: 1.5; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-steps__container { width: 94%; }
  .hn .hn-steps__header { grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); gap: 35px; margin-left: 12px; }
  .hn .hn-steps h2 { font-size: 38px; }
  .hn .hn-steps__intro { font-size: 16px; margin-top: 61px; }
  .hn .hn-steps__note { display: none; }
  .hn .hn-steps__break { display: none; }
  .hn .hn-steps__list { gap: 24px; }
  .hn .hn-step__track { margin-left: 12px; gap: 17px; }
  .hn .hn-step h3 { margin-left: 12px; font-size: 16px; }
  .hn .hn-step__description { margin-left: 12px; font-size: 15px; min-height: 105px; }
  .hn .hn-step__visual { height: 365px; }
  .hn .hn-step__create-card { width: 72%; height: 358px; padding: 20px 12px 10px; left: 5px; }
  .hn .hn-step__add { padding: 0 9px; font-size: 10px; height: 53px; gap: 10px; }
  .hn .hn-step__system { height: 54px; padding-left: 10px; gap: 9px; }
  .hn .hn-step__system svg { width: 35px; height: 35px; padding: 8px; }
  .hn .hn-step__system b { font-size: 11px; }
  .hn .hn-step__house { height: 321px; }
  .hn .hn-step__handnote--systems { font-size: 14px; right: 0; }
  .hn .hn-step__handnote--systems svg { width: 60px; }
  .hn .hn-step__info-card { height: 92px; padding: 12px; gap: 10px; }
  .hn .hn-step__info-card--docs { left: 15px; right: 10px; }
  .hn .hn-step__info-card--photos { left: 25px; right: 0; top: 190px; }
  .hn .hn-step__card-icon { width: 46px; height: 46px; border-radius: 16px; }
  .hn .hn-step__card-icon svg { width: 28px; height: 28px; }
  .hn .hn-step__info-card strong { font-size: 13px; }
  .hn .hn-step__info-card small { font-size: 11px; }
  .hn .hn-step__photo { left: 40px; top: 88px; width: 65%; height: 160px; }
  .hn .hn-step__pdf-card { left: 45px; right: 10px; height: 73px; padding: 12px; gap: 10px; }
  .hn .hn-step__pdf-card strong { font-size: 10px; }
  .hn .hn-step__visual--history { padding: 20px 12px 16px 43px; }
  .hn .hn-step__timeline { gap: 18px; }
  .hn .hn-step__timeline li { min-height: 64px; }
  .hn .hn-step__timeline li::before { left: -23px; bottom: -26px; }
  .hn .hn-step__timeline li::after { left: -30px; }
  .hn .hn-step__timeline b { font-size: 13px; }
  .hn .hn-step__timeline strong { font-size: 10px; letter-spacing: -.4px; }
  .hn .hn-step__timeline small { font-size: 10px; }
  .hn .hn-step__timeline img { width: 52px; height: 64px; }
  .hn .hn-step__visual--access > img { height: 410px; }
  .hn .hn-step__handnote--qr { font-size: 16px; right: 0; }
}
@media (max-width: 1199px) {
  .hn .hn-steps { padding: 35px 0 50px; }
  .hn .hn-steps__container { width: 90%; }
  .hn .hn-steps__header { grid-template-columns: 1fr; gap: 22px; margin-left: 0; }
  .hn .hn-steps h2 { font-size: 40px; }
  .hn .hn-steps__eyebrow { font-size: 13px; margin-bottom: 20px; }
  .hn .hn-steps__intro { margin: 0; font-size: 17px; max-width: 700px; }
  .hn .hn-steps__note { display: none; }
  .hn .hn-steps__break { display: none; }
  .hn .hn-steps__list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 42px 30px; margin-top: 30px; }
  .hn .hn-step__track, .hn .hn-step h3, .hn .hn-step__description { margin-left: 0; }
  .hn .hn-step h3 { font-size: 18px; white-space: normal; min-height: 47px; margin-top: 8px; }
  .hn .hn-step__description { font-size: 16px; min-height: 100px; }
  .hn .hn-step__visual { margin-top: 24px; height: 400px; }
  .hn .hn-step__create-card { width: 72%; height: 399px; padding: 23px 16px 10px; left: 6px; }
  .hn .hn-step__add { font-size: 11px; padding: 0 10px; gap: 10px; height: 59px; }
  .hn .hn-step__system { height: 59px; padding-left: 15px; gap: 12px; }
  .hn .hn-step__system b { font-size: 12px; }
  .hn .hn-step__house { height: 356px; }
  .hn .hn-step__handnote--systems { font-size: 16px; right: 0; }
  .hn .hn-step__info-card { padding: 16px; height: 100px; gap: 12px; }
  .hn .hn-step__info-card--docs { left: 15px; right: 10px; }
  .hn .hn-step__info-card--photos { left: 30px; right: 0; top: 205px; }
  .hn .hn-step__card-icon { width: 52px; height: 52px; border-radius: 17px; }
  .hn .hn-step__info-card strong { font-size: 14px; }
  .hn .hn-step__info-card small { font-size: 12px; }
  .hn .hn-step__photo { left: 50px; top: 95px; width: 65%; height: 170px; }
  .hn .hn-step__pdf-card { left: 60px; right: 10px; height: 84px; padding: 14px; gap: 10px; }
  .hn .hn-step__pdf-card strong { font-size: 11px; }
  .hn .hn-step__visual--history { padding: 23px 15px 20px 52px; }
  .hn .hn-step__timeline { gap: 19px; }
  .hn .hn-step__timeline li::before { left: -27px; bottom: -28px; }
  .hn .hn-step__timeline li::after { left: -34px; }
  .hn .hn-step__timeline strong { font-size: 12px; }
  .hn .hn-step__timeline small { font-size: 11px; }
  .hn .hn-step__timeline img { width: 60px; height: 70px; }
  .hn .hn-step__visual--access > img { height: 430px; }
  .hn .hn-step__handnote--qr { bottom: -20px; right: 0; font-size: 17px; }
}
@media (max-width: 767px) {
  .hn .hn-steps h2 { font-size: 31px; letter-spacing: -1px; line-height: 1.15; }
  .hn .hn-steps__eyebrow { font-size: 11px; letter-spacing: 1.5px; }
  .hn .hn-steps__intro { font-size: 15px; }
  .hn .hn-steps__list { grid-template-columns: 1fr; gap: 40px; }
  .hn .hn-step { max-width: 420px; width: 100%; margin: 0 auto; }
  .hn .hn-step h3 { font-size: 18px; min-height: 0; }
  .hn .hn-step__description { font-size: 15px; min-height: 0; }
  .hn .hn-step__visual { margin-top: 24px; }
  .hn .hn-step__handnote--qr { font-size: 16px; }
}

@media (min-width: 1200px) and (max-width: 1450px) { .hn .hn-step h3 { white-space: normal; min-height: 42px; font-size: 15px; } }

@media (min-width: 1751px) {
  .hn .hn-steps__header { position: relative; }
  .hn .hn-steps__note { position: absolute; right: 0; top: 48px; margin: 0; width: 195px; font-size: 21px; }
  .hn .hn-steps__intro { font-size: 18px; }
  .hn .hn-step__description { font-size: 18px; letter-spacing: -.6px; height: 105px; }
  .hn .hn-step__visual--history { margin-left: 18px; }
  .hn .hn-step__info-card--docs { left: 70px; }
  .hn .hn-step__info-card--photos { left: 90px; }
  .hn .hn-step__photo { left: 105px; }
}
.hn .hn-step__create-card { background: #fbfdff; }

.hn .hn-steps-trust { display: grid; grid-template-columns: 38% 35% 27%; margin: 76px 35px 0; min-height: 216px; padding: 32px 0; border-radius: 24px; background: #eaf7ff; }
.hn .hn-steps-trust__security { display: flex; gap: 32px; padding: 11px 34px 0 42px; }
.hn .hn-steps-trust__icon { width: 74px; height: 74px; display: grid; place-items: center; flex: 0 0 74px; background: #e0f3ff; color: var(--hn-accent); border-radius: 23px; }
.hn .hn-steps-trust__icon svg { width: 44px; height: 44px; stroke-width: 3; }
.hn .hn-steps-trust h3 { margin: 7px 0 12px; font-size: 22px; font-weight: 600; line-height: 1.3; letter-spacing: -.6px; color: var(--hn-text); text-align: left; text-transform: none; }
.hn .hn-steps-trust__security p { margin: 0; color: #7b8ba7; font-size: 17px; line-height: 1.5; letter-spacing: -.5px; }
.hn .hn-steps-trust__review { margin: 11px 0 8px; display: flex; gap: 26px; padding: 0 35px 0 44px; border-left: 1px solid #daedf9; border-right: 1px solid #daedf9; }
.hn .hn-steps-trust__quote { color: var(--hn-accent); font-size: 72px; line-height: .65; font-weight: 700; font-family: Georgia, serif; }
.hn .hn-steps-trust blockquote { margin: -5px 0 18px; padding: 0; border: 0; font-size: 16px; line-height: 1.55; font-style: italic; color: var(--hn-text); letter-spacing: -.4px; }
.hn .hn-steps-trust figcaption { display: flex; gap: 20px; align-items: center; }
.hn .hn-steps-trust figcaption img { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; }
.hn .hn-steps-trust figcaption strong { display: block; font-size: 15px; font-weight: 600; line-height: 1.5; }
.hn .hn-steps-trust figcaption small { display: block; color: #7b8ba7; font-size: 14px; line-height: 1.5; letter-spacing: -.4px; }
.hn .hn-steps-trust__action { align-self: center; padding: 0 42px 0 64px; }
.hn .hn-steps-trust__button { height: 79px; font-size: 20px; font-weight: 500; color: #fff; background: var(--hn-accent); gap: 18px; }
.hn .hn-steps-trust__button:hover { background: var(--hn-accent-dark); }
.hn .hn-steps-trust__action p { margin: 13px 0 0; text-align: center; font-size: 16px; line-height: 1.5; color: #435571; letter-spacing: -.4px; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-steps-trust { grid-template-columns: 37% 36% 27%; margin: 64px 3% 0; padding: 25px 0; }
  .hn .hn-steps-trust__security { gap: 18px; padding: 10px 22px; }
  .hn .hn-steps-trust__icon { width: 58px; height: 58px; flex-basis: 58px; border-radius: 18px; }
  .hn .hn-steps-trust__icon svg { width: 35px; height: 35px; }
  .hn .hn-steps-trust h3 { font-size: 18px; }
  .hn .hn-steps-trust__security p { font-size: 14px; }
  .hn .hn-steps-trust__break { display: none; }
  .hn .hn-steps-trust__review { padding: 0 22px; gap: 16px; }
  .hn .hn-steps-trust__quote { font-size: 58px; }
  .hn .hn-steps-trust blockquote { font-size: 13px; }
  .hn .hn-steps-trust figcaption { gap: 12px; }
  .hn .hn-steps-trust figcaption img { width: 46px; height: 46px; }
  .hn .hn-steps-trust figcaption strong { font-size: 13px; }
  .hn .hn-steps-trust figcaption small { font-size: 11px; }
  .hn .hn-steps-trust__action { padding: 0 25px; }
  .hn .hn-steps-trust__button { height: 65px; font-size: 17px; }
  .hn .hn-steps-trust__action p { font-size: 12px; }
}
@media (max-width: 1199px) {
  .hn .hn-steps-trust { grid-template-columns: 1fr 1fr; margin: 64px 5% 0; padding: 28px; gap: 28px; }
  .hn .hn-steps-trust__security { padding: 0; gap: 20px; }
  .hn .hn-steps-trust__icon { width: 58px; height: 58px; flex-basis: 58px; border-radius: 18px; }
  .hn .hn-steps-trust__icon svg { width: 35px; height: 35px; }
  .hn .hn-steps-trust h3 { font-size: 18px; margin-top: 0; }
  .hn .hn-steps-trust__security p { font-size: 14px; }
  .hn .hn-steps-trust__break { display: none; }
  .hn .hn-steps-trust__review { margin: 0; padding: 0 0 0 24px; border-right: 0; gap: 14px; }
  .hn .hn-steps-trust__quote { font-size: 54px; }
  .hn .hn-steps-trust blockquote { font-size: 13px; margin-top: 0; }
  .hn .hn-steps-trust figcaption { gap: 12px; }
  .hn .hn-steps-trust figcaption img { width: 46px; height: 46px; }
  .hn .hn-steps-trust figcaption strong { font-size: 13px; }
  .hn .hn-steps-trust figcaption small { font-size: 11px; }
  .hn .hn-steps-trust__action { grid-column: 1 / -1; padding: 0; width: 360px; max-width: 100%; justify-self: center; }
  .hn .hn-steps-trust__button { height: 65px; font-size: 18px; }
  .hn .hn-steps-trust__action p { font-size: 13px; }
}
@media (max-width: 767px) {
  .hn .hn-steps-trust { grid-template-columns: 1fr; padding: 24px 20px; gap: 25px; border-radius: 20px; margin-top: 64px; }
  .hn .hn-steps-trust__security { gap: 16px; }
  .hn .hn-steps-trust__icon { width: 50px; height: 50px; flex-basis: 50px; border-radius: 16px; }
  .hn .hn-steps-trust__icon svg { width: 31px; height: 31px; }
  .hn .hn-steps-trust h3 { font-size: 17px; margin-bottom: 10px; }
  .hn .hn-steps-trust__security p { font-size: 13px; }
  .hn .hn-steps-trust__review { border-left: 0; border-top: 1px solid #daedf9; padding: 25px 0 0; gap: 12px; }
  .hn .hn-steps-trust__quote { font-size: 46px; }
  .hn .hn-steps-trust__action { grid-column: auto; }
  .hn .hn-steps-trust__button { font-size: 17px; }
  .hn .hn-steps-trust__action p { font-size: 12px; }
}

.hn .hn-steps-trust__review { background: transparent; border-radius: 0; box-shadow: none; }
.hn .hn-steps-trust blockquote { font-weight: 400; }

.hn .hn-steps-trust > *, .hn .hn-steps-trust__security > div, .hn .hn-steps-trust__review > div { min-width: 0; }
@media (max-width: 1199px) { .hn .hn-steps-trust__action { width: 100%; max-width: 360px; } }
@media (max-width: 767px) { .hn .hn-steps-trust { grid-template-columns: minmax(0, 1fr); } }

.hn .hn-audience { padding: 40px 0 34px; background: radial-gradient(ellipse at 48% 95%, #eaf6ff, transparent 65%), #f8fbff; }
.hn .hn-audience__inner { width: 92%; max-width: 1768px; margin: 0 auto; display: grid; grid-template-columns: 566px minmax(0,1fr) minmax(0,1fr); gap: 20px; }
.hn .hn-audience__copy { padding-right: 24px; }
.hn .hn-audience__eyebrow { display: inline-block; margin: 0 0 39px; padding: 7px 15px; background: #e0f5ff; border-radius: 12px; color: var(--hn-accent); font-size: 16px; line-height: 1.5; letter-spacing: 2px; font-weight: 600; }
.hn .hn-audience h2 { margin: 0; font-size: 62px; font-weight: 700; color: var(--hn-text); line-height: 1.12; letter-spacing: -2px; text-align: left; text-transform: none; }
.hn .hn-audience h2 span { color: var(--hn-accent); }
.hn .hn-audience__description { margin: 30px 0 0; color: #465d7a; font-size: 20px; line-height: 1.6; letter-spacing: -.55px; }
.hn .hn-audience__benefits { list-style: none; padding: 0; margin: 46px 0 0; display: grid; gap: 34px; }
.hn .hn-audience__benefits li { display: flex; align-items: center; gap: 28px; }
.hn .hn-audience__benefits li > span { width: 76px; height: 76px; flex: 0 0 76px; display: grid; place-items: center; color: var(--hn-accent); background: #e2f4ff; border-radius: 21px; }
.hn .hn-audience__benefits svg { width: 41px; height: 41px; stroke-width: 3; }
.hn .hn-audience__benefits strong { display: block; font-size: 20px; font-weight: 600; letter-spacing: -.6px; }
.hn .hn-audience__benefits p { margin: 2px 0 0; color: #465d7a; font-size: 20px; letter-spacing: -.6px; }
.hn .hn-audience-card { min-width: 0; position: relative; border-radius: 24px; overflow: hidden; background: #fafdff; box-shadow: 0 10px 24px #4387af05; }
.hn .hn-audience-card__photo { position: relative; height: 485px; background: #deedf6; }
.hn .hn-audience-card__photo > img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }
.hn .hn-audience-card__badge { position: absolute; top: 28px; left: 25px; display: flex; align-items: center; gap: 22px; padding: 17px 20px; border-radius: 19px; background: #ffffffdf; }
.hn .hn-audience-card__badge svg { width: 48px; height: 48px; color: var(--hn-accent); stroke-width: 3; }
.hn .hn-audience-card--masters .hn-audience-card__badge svg { color: #283e59; }
.hn .hn-audience-card__badge strong { font-size: 19px; line-height: 1.5; font-weight: 600; letter-spacing: -.5px; }
.hn .hn-audience-card__note { position: absolute; top: 104px; right: 27px; font-family: 'Segoe Print','Comic Sans MS',cursive; font-style: italic; font-size: 23px; line-height: 1.25; color: #496481; text-align: center; transform: rotate(-9deg); }
.hn .hn-audience-card__note svg { display: block; width: 110px; height: 65px; margin: 1px 0 0 10px; stroke-width: 1.5; }
.hn .hn-audience-card--masters .hn-audience-card__note { top: 40px; right: 18px; font-size: 22px; }
.hn .hn-audience-card__content { position: relative; margin-top: -18px; padding: 25px 39px 31px; border-radius: 23px 23px 0 0; background: #fafdfff5; }
.hn .hn-audience-card h3 { margin: 0 0 25px; font-size: 27px; font-weight: 600; color: var(--hn-text); line-height: 1.22; letter-spacing: -.85px; text-align: left; text-transform: none; }
.hn .hn-audience-card__content > ul { list-style: none; margin: 0 0 24px; padding: 0; display: grid; gap: 12px; }
.hn .hn-audience-card__content li { position: relative; padding-left: 48px; font-size: 19px; color: #465d7a; line-height: 1.55; letter-spacing: -.6px; }
.hn .hn-audience-card__content li::before { content: '✓'; position: absolute; left: 0; top: 0; width: 29px; height: 29px; display: grid; place-items: center; border-radius: 50%; background: var(--hn-accent); color: white; font-size: 20px; line-height: 1; font-family: Arial,sans-serif; }
.hn .hn-audience-card__button { height: 82px; font-size: 19px; font-weight: 600; background: var(--hn-accent); color: white; gap: 18px; }
.hn .hn-audience-card__button:hover { background: var(--hn-accent-dark); }
.hn .hn-audience-card--masters .hn-audience-card__button { background: #ffffff9c; color: var(--hn-accent); border: 1px solid var(--hn-accent); }
.hn .hn-audience-card--masters .hn-audience-card__button:hover { background: #e9f7ff; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-audience__inner { width: 94%; grid-template-columns: 31% minmax(0,1fr) minmax(0,1fr); gap: 16px; }
  .hn .hn-audience h2 { font-size: 43px; letter-spacing: -1.5px; }
  .hn .hn-audience__eyebrow { font-size: 12px; letter-spacing: 1.5px; margin-bottom: 30px; }
  .hn .hn-audience__description { font-size: 16px; margin-top: 25px; }
  .hn .hn-audience__break { display: none; }
  .hn .hn-audience__benefits { margin-top: 35px; gap: 28px; }
  .hn .hn-audience__benefits li { gap: 18px; }
  .hn .hn-audience__benefits li > span { width: 58px; height: 58px; flex-basis: 58px; border-radius: 17px; }
  .hn .hn-audience__benefits svg { width: 33px; height: 33px; }
  .hn .hn-audience__benefits strong, .hn .hn-audience__benefits p { font-size: 16px; }
  .hn .hn-audience-card__photo { height: 365px; }
  .hn .hn-audience-card__badge { top: 20px; left: 17px; padding: 13px; gap: 12px; }
  .hn .hn-audience-card__badge svg { width: 35px; height: 35px; }
  .hn .hn-audience-card__badge strong { font-size: 14px; }
  .hn .hn-audience-card__note { font-size: 17px; right: 15px; top: 100px; }
  .hn .hn-audience-card--masters .hn-audience-card__note { font-size: 16px; top: 108px; right: 10px; }
  .hn .hn-audience-card__content { padding: 24px 24px 25px; }
  .hn .hn-audience-card h3 { font-size: 21px; min-height: 77px; letter-spacing: -.6px; margin-bottom: 18px; }
  .hn .hn-audience-card__content li { font-size: 14px; padding-left: 35px; min-height: 28px; }
  .hn .hn-audience-card__content li::before { width: 24px; height: 24px; font-size: 17px; }
  .hn .hn-audience-card__button { font-size: 14px; height: 65px; gap: 8px; }
}
@media (max-width: 1199px) {
  .hn .hn-audience__inner { width: 90%; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 22px; }
  .hn .hn-audience__copy { grid-column: 1/-1; padding: 0; }
  .hn .hn-audience h2 { font-size: 48px; }
  .hn .hn-audience__eyebrow { margin-bottom: 25px; font-size: 13px; }
  .hn .hn-audience__description { font-size: 18px; margin-top: 25px; max-width: 760px; }
  .hn .hn-audience__break { display: none; }
  .hn .hn-audience__benefits { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin-top: 30px; }
  .hn .hn-audience__benefits li { align-items: flex-start; gap: 12px; }
  .hn .hn-audience__benefits li > span { width: 48px; height: 48px; flex-basis: 48px; border-radius: 15px; }
  .hn .hn-audience__benefits svg { width: 28px; height: 28px; }
  .hn .hn-audience__benefits strong, .hn .hn-audience__benefits p { font-size: 13px; }
  .hn .hn-audience-card__photo { height: 340px; }
  .hn .hn-audience-card__badge { top: 18px; left: 15px; padding: 12px; gap: 12px; }
  .hn .hn-audience-card__badge svg { width: 34px; height: 34px; }
  .hn .hn-audience-card__badge strong { font-size: 13px; }
  .hn .hn-audience-card__note { font-size: 17px; top: 100px; right: 15px; }
  .hn .hn-audience-card--masters .hn-audience-card__note { font-size: 16px; top: 105px; right: 10px; }
  .hn .hn-audience-card__content { padding: 22px 22px 25px; }
  .hn .hn-audience-card h3 { font-size: 20px; min-height: 74px; letter-spacing: -.6px; margin-bottom: 20px; }
  .hn .hn-audience-card__content li { font-size: 14px; padding-left: 35px; min-height: 30px; }
  .hn .hn-audience-card__content li::before { width: 24px; height: 24px; font-size: 17px; }
  .hn .hn-audience-card__button { font-size: 13px; height: 65px; gap: 6px; }
}
@media (max-width: 767px) {
  .hn .hn-audience { padding: 30px 0; }
  .hn .hn-audience__inner { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .hn .hn-audience h2 { font-size: clamp(31px,8.6vw,45px); letter-spacing: -1px; }
  .hn .hn-audience__eyebrow { font-size: 11px; letter-spacing: 1.5px; margin-bottom: 22px; }
  .hn .hn-audience__description { font-size: 15px; margin-top: 22px; }
  .hn .hn-audience__benefits { grid-template-columns: 1fr; gap: 20px; margin-top: 25px; }
  .hn .hn-audience__benefits li { align-items: center; gap: 17px; }
  .hn .hn-audience__benefits strong, .hn .hn-audience__benefits p { font-size: 14px; }
  .hn .hn-audience-card__photo { height: 330px; }
  .hn .hn-audience-card h3 { min-height: 0; font-size: 20px; }
  .hn .hn-audience-card__content li { min-height: 0; font-size: 13px; }
  .hn .hn-audience-card__content > ul { gap: 14px; }
  .hn .hn-audience-card__button { font-size: 13px; gap: 8px; }
}

@media (min-width: 1751px) { .hn .hn-audience__inner { width: calc(100% - 158px); margin-left: 5.1%; margin-right: auto; } }

.hn .hn-audience-card { display: flex; flex-direction: column; }
.hn .hn-audience-card__photo { flex-shrink: 0; }
.hn .hn-audience-card__content { flex: 1; display: flex; flex-direction: column; }
.hn .hn-audience-card__content > ul { flex: 1; }
@media (min-width: 1751px) {
  .hn .hn-audience-card h3 { font-size: 25px; letter-spacing: -1px; }
  .hn .hn-audience-card--masters .hn-audience-card__content li:last-child { font-size: 17px; letter-spacing: -.75px; }
}

.hn .hn-community-stats { min-height: 209px; background: #f8fbff; padding: 32px 0; }
.hn .hn-community-stats__inner { width: 90%; max-width: 1730px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; min-height: 145px; gap: 50px; }
.hn .hn-community-stats__list { margin: 0; padding: 0; display: grid; grid-template-columns: 388px 474px 400px; }
.hn .hn-community-stats__list > div { position: relative; display: flex; align-items: center; gap: 23px; }
.hn .hn-community-stats__list > div + div { padding-left: 83px; }
.hn .hn-community-stats__list > div + div::before { content: ''; position: absolute; left: 0; top: 4px; bottom: 4px; width: 1px; background: #cfe2f2; }
.hn .hn-community-stats dt { order: 2; color: #435978; font-size: 17px; line-height: 1.5; font-weight: 400; letter-spacing: -.45px; }
.hn .hn-community-stats dd { order: 1; margin: 0; color: var(--hn-accent); font-size: 48px; font-weight: 700; line-height: 1.2; letter-spacing: -1.3px; white-space: nowrap; }
.hn .hn-community-stats__note { position: relative; width: 260px; flex-shrink: 0; padding-bottom: 29px; font-family: 'Segoe Print','Comic Sans MS',cursive; font-style: italic; font-size: 22px; line-height: 1.25; letter-spacing: -.6px; white-space: nowrap; text-align: center; color: #92aacc; transform: rotate(-9deg); }
.hn .hn-community-stats__note svg { position: absolute; right: 21px; bottom: -3px; width: 105px; height: 58px; stroke-width: 1.6; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-community-stats__inner { gap: 30px; }
  .hn .hn-community-stats__list { flex: 1; grid-template-columns: repeat(3,minmax(0,1fr)); }
  .hn .hn-community-stats__list > div { gap: 15px; }
  .hn .hn-community-stats__list > div + div { padding-left: 25px; }
  .hn .hn-community-stats dd { font-size: 35px; }
  .hn .hn-community-stats dt { font-size: 13px; }
  .hn .hn-community-stats__note { width: 210px; font-size: 18px; }
}
@media (max-width: 1199px) {
  .hn .hn-community-stats { min-height: 0; padding: 30px 0; }
  .hn .hn-community-stats__inner { flex-direction: column; gap: 28px; min-height: 0; }
  .hn .hn-community-stats__list { width: 100%; grid-template-columns: repeat(3,minmax(0,1fr)); }
  .hn .hn-community-stats__list > div { gap: 12px; justify-content: center; }
  .hn .hn-community-stats__list > div + div { padding-left: 15px; }
  .hn .hn-community-stats dd { font-size: 32px; }
  .hn .hn-community-stats dt { font-size: 12px; }
  .hn .hn-community-stats__note { font-size: 18px; width: 240px; }
}
@media (max-width: 767px) {
  .hn .hn-community-stats__list { grid-template-columns: 1fr; }
  .hn .hn-community-stats__list > div, .hn .hn-community-stats__list > div + div { padding: 20px 0; justify-content: flex-start; gap: 25px; }
  .hn .hn-community-stats__list > div + div::before { top: 0; bottom: auto; left: 0; right: 0; width: auto; height: 1px; }
  .hn .hn-community-stats dd { font-size: 39px; min-width: 151px; }
  .hn .hn-community-stats dt { font-size: 14px; }
  .hn .hn-community-stats__inner { gap: 18px; }
}

.hn .hn-loss { position: relative; min-height: 965px; isolation: isolate; overflow: hidden; background: #f5fbff; }
.hn .hn-loss__background { position: absolute; left: 30%; top: 0; width: 57%; height: 100%; object-fit: cover; object-position: center; z-index: -3; }
.hn .hn-loss__veil { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,#f8fbff 0%,#f8fbfff7 29%,#f8fbff80 37%,transparent 46%,transparent 71%,#f1f9ffb3 83%,#f5fbff 100%); }
.hn .hn-loss__veil::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,#f4faff 0%,transparent 15%,transparent 93%,#f6fbff70 100%); }
.hn .hn-loss__inner { width: 90%; max-width: 1730px; margin: 0 auto; position: relative; min-height: 965px; padding-top: 76px; }
.hn .hn-loss__copy { width: 710px; position: relative; z-index: 2; }
.hn .hn-loss__eyebrow { display: inline-block; margin: 0 0 27px; padding: 7px 15px; border-radius: 12px; background: #e0f4ff; color: var(--hn-accent); font-size: 16px; line-height: 1.5; font-weight: 600; letter-spacing: 2px; }
.hn .hn-loss h2 { margin: 0; font-size: 59px; line-height: 1.06; letter-spacing: -1.8px; font-weight: 700; color: var(--hn-text); text-transform: none; text-align: left; }
.hn .hn-loss h2 span { color: var(--hn-accent); }
.hn .hn-loss__description { margin: 30px 0 0; color: #465d7c; font-size: 20px; line-height: 1.55; letter-spacing: -.55px; }
.hn .hn-loss__reasons { list-style: none; padding: 0; margin: 34px 0 0; display: grid; grid-template-columns: repeat(3,1fr); width: 590px; }
.hn .hn-loss__reasons li > span { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 18px; background: #e2f5ff; color: var(--hn-accent); }
.hn .hn-loss__reasons svg { width: 37px; height: 37px; stroke-width: 2.7; }
.hn .hn-loss__reasons p { margin: 12px 0 0; font-size: 18px; line-height: 1.45; letter-spacing: -.45px; color: #435978; }
.hn .hn-loss__result { margin-top: 55px; width: 582px; min-height: 133px; border: 1px solid #d5ecfb; border-radius: 16px; background: #ffffffc9; display: flex; align-items: center; gap: 32px; padding: 24px 32px; }
.hn .hn-loss__result > span { width: 75px; height: 75px; flex: 0 0 75px; display: grid; place-items: center; color: var(--hn-accent); background: #e3f5ff; border-radius: 20px; }
.hn .hn-loss__result svg { width: 42px; height: 42px; stroke-width: 2.8; }
.hn .hn-loss__result p { margin: 0; font-size: 18px; line-height: 1.45; letter-spacing: -.5px; color: #354b69; }
.hn .hn-loss__note, .hn .hn-loss__bottom-note { font-family: 'Segoe Print','Comic Sans MS',cursive; font-style: italic; line-height: 1.25; text-align: center; position: absolute; transform: rotate(-12deg); }
.hn .hn-loss__note { right: 510px; top: 106px; color: #358bbf; font-size: 23px; }
.hn .hn-loss__note svg { display: block; width: 100px; height: 95px; margin: 6px 0 0 10px; stroke-width: 1.5; }
.hn .hn-loss__questions { position: absolute; right: -26px; top: 143px; width: 410px; margin: 0; padding: 0; list-style: none; display: grid; gap: 18px; }
.hn .hn-loss__questions::before { content: ''; position: absolute; top: -34px; right: -25px; width: 39px; height: 43px; background: linear-gradient(110deg,transparent 45%,#25b2f5 46%,#25b2f5 49%,transparent 50%) 0 0/16px 24px no-repeat,linear-gradient(150deg,transparent 45%,#25b2f5 46%,#25b2f5 49%,transparent 50%) 15px 18px/24px 16px no-repeat; }
.hn .hn-loss__questions li { position: relative; display: flex; align-items: center; gap: 18px; height: 99px; padding: 12px 13px; background: #ffffffed; border-radius: 20px; box-shadow: 0 8px 22px #416e8e05; }
.hn .hn-loss__thumb { width: 91px; height: 79px; border-radius: 13px; flex: 0 0 91px; background-image: url('/image/catalog/home-new/loss-question-thumbnails.webp'); background-size: 200% 300%; background-repeat: no-repeat; }
.hn .hn-loss__thumb--well { background-position: 0 0; }
.hn .hn-loss__thumb--septic { background-position: 100% 0; }
.hn .hn-loss__thumb--heat { background-position: 0 50%; }
.hn .hn-loss__thumb--electric { background-position: 100% 50%; }
.hn .hn-loss__thumb--climate { background-position: 0 100%; }
.hn .hn-loss__thumb--docs { background-position: 100% 100%; }
.hn .hn-loss__questions p { margin: 0; color: #19283b; font-size: 16px; line-height: 1.55; letter-spacing: -.4px; }
.hn .hn-loss__questions time { position: absolute; right: 17px; bottom: 11px; font-size: 14px; line-height: 1; color: #8cafd0; }
.hn .hn-loss__bottom-note { right: -7px; bottom: 8px; font-size: 22px; color: #8dbde9; }
.hn .hn-loss__bottom-note svg { position: absolute; right: 0; bottom: -26px; width: 95px; height: 60px; stroke-width: 1.5; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-loss, .hn .hn-loss__inner { min-height: 830px; }
  .hn .hn-loss__inner { width: 94%; padding-top: 50px; }
  .hn .hn-loss__copy { width: 520px; }
  .hn .hn-loss h2 { font-size: 43px; }
  .hn .hn-loss__eyebrow { font-size: 13px; }
  .hn .hn-loss__description { font-size: 16px; max-width: 460px; }
  .hn .hn-loss__break { display: none; }
  .hn .hn-loss__reasons { width: 455px; margin-top: 30px; }
  .hn .hn-loss__reasons p { font-size: 14px; }
  .hn .hn-loss__result { width: 455px; margin-top: 40px; gap: 22px; padding: 22px; }
  .hn .hn-loss__result p { font-size: 15px; }
  .hn .hn-loss__questions { right: 0; top: 110px; width: 310px; gap: 15px; }
  .hn .hn-loss__questions li { height: 86px; padding: 9px; gap: 12px; border-radius: 16px; }
  .hn .hn-loss__thumb { width: 65px; height: 66px; flex-basis: 65px; border-radius: 10px; }
  .hn .hn-loss__questions p { font-size: 12px; }
  .hn .hn-loss__questions time { font-size: 11px; right: 12px; bottom: 8px; }
  .hn .hn-loss__note { right: 340px; top: 68px; font-size: 17px; }
  .hn .hn-loss__note svg { height: 65px; }
  .hn .hn-loss__bottom-note { font-size: 18px; bottom: 25px; }
}
@media (max-width: 1199px) {
  .hn .hn-loss { min-height: 0; }
  .hn .hn-loss__inner { min-height: 0; padding-top: 38px; padding-bottom: 45px; }
  .hn .hn-loss__background { left: 0; width: 100%; height: 600px; top: 570px; }
  .hn .hn-loss__veil { background: linear-gradient(0deg,#f6fbff 0%,#f6fbffb3 40%,#f6fbff 74%); }
  .hn .hn-loss__copy { width: 100%; }
  .hn .hn-loss h2 { font-size: 48px; }
  .hn .hn-loss__eyebrow { font-size: 13px; }
  .hn .hn-loss__description { font-size: 18px; max-width: 720px; }
  .hn .hn-loss__break { display: none; }
  .hn .hn-loss__reasons { width: 100%; max-width: 650px; }
  .hn .hn-loss__result { margin-top: 30px; width: 100%; max-width: 650px; }
  .hn .hn-loss__note { display: none; }
  .hn .hn-loss__questions { position: relative; right: auto; top: auto; width: 100%; margin-top: 40px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
  .hn .hn-loss__questions li { min-width: 0; height: 105px; padding: 10px; gap: 12px; }
  .hn .hn-loss__thumb { width: 68px; height: 78px; flex-basis: 68px; }
  .hn .hn-loss__questions p { font-size: 13px; }
  .hn .hn-loss__questions time { font-size: 11px; }
  .hn .hn-loss__questions::before { display: none; }
  .hn .hn-loss__bottom-note { position: relative; right: auto; bottom: auto; font-size: 19px; margin: 38px auto 0; width: 220px; }
}
@media (max-width: 767px) {
  .hn .hn-loss__inner { padding-top: 30px; }
  .hn .hn-loss h2 { font-size: clamp(30px,8vw,43px); letter-spacing: -1px; }
  .hn .hn-loss__eyebrow { font-size: 11px; letter-spacing: 1.4px; margin-bottom: 22px; }
  .hn .hn-loss__description { font-size: 15px; margin-top: 25px; }
  .hn .hn-loss__reasons { gap: 12px; }
  .hn .hn-loss__reasons li > span { width: 50px; height: 50px; border-radius: 15px; }
  .hn .hn-loss__reasons svg { width: 29px; height: 29px; }
  .hn .hn-loss__reasons p { font-size: 12px; letter-spacing: -.3px; }
  .hn .hn-loss__result { padding: 18px; min-height: 0; gap: 16px; }
  .hn .hn-loss__result > span { width: 50px; height: 50px; flex-basis: 50px; border-radius: 15px; }
  .hn .hn-loss__result svg { width: 30px; height: 30px; }
  .hn .hn-loss__result p { font-size: 13px; }
  .hn .hn-loss__questions { grid-template-columns: minmax(0,1fr); margin-top: 28px; gap: 14px; }
  .hn .hn-loss__questions li { height: 102px; }
  .hn .hn-loss__questions p { font-size: 13px; }
  .hn .hn-loss__background { top: 550px; height: 750px; object-position: 55% center; }
}

@media (min-width: 1751px) {
  .hn .hn-loss h2 { font-size: 55px; }
  .hn .hn-loss__background { left: 24%; width: 63%; top: 100px; height: calc(100% - 100px); }
  .hn .hn-loss__note { right: 430px; width: 195px; font-size: 22px; }
}

.hn .hn-loss__background { mask-image: linear-gradient(to bottom,transparent 0%,#000 10%,#000 87%,transparent 100%); }
.hn .hn-loss__note { white-space: nowrap; }

.hn .hn-loss-solution { padding: 20px 30px 6px; background: #f5fbff; }
.hn .hn-loss-solution__panel { min-height: 242px; display: grid; grid-template-columns: 49% 20% 31%; align-items: center; padding: 42px 40px; border-radius: 25px; background: #eaf7ff; }
.hn .hn-loss-solution__panel > *, .hn .hn-loss-solution__answer > div { min-width: 0; }
.hn .hn-loss-solution__answer { display: flex; align-items: center; gap: 32px; padding-right: 25px; }
.hn .hn-loss-solution__icon { display: grid; place-items: center; flex: 0 0 128px; width: 128px; height: 128px; border-radius: 29px; color: var(--hn-accent); background: #dff3ff; }
.hn .hn-loss-solution__icon svg { width: 78px; height: 78px; stroke-width: 3; }
.hn .hn-loss-solution h2 { margin: 0 0 13px; font-size: 28px; line-height: 1.17; font-weight: 600; letter-spacing: -.8px; color: var(--hn-text); text-align: left; text-transform: none; }
.hn .hn-loss-solution__answer p { margin: 0; color: #7d8fa9; font-size: 17px; line-height: 1.6; letter-spacing: -.45px; }
.hn .hn-loss-solution__saving { position: relative; padding-left: 68px; }
.hn .hn-loss-solution__saving::before { content: ''; position: absolute; left: 0; top: 11px; bottom: 11px; width: 1px; background: #93d7fb; }
.hn .hn-loss-solution__saving p { margin: 0; color: #7d8fa9; font-size: 17px; line-height: 1.6; letter-spacing: -.5px; }
.hn .hn-loss-solution__saving strong { display: block; margin: 2px 0 8px; color: var(--hn-accent); font-size: 66px; font-weight: 700; line-height: 1.2; letter-spacing: -1.5px; white-space: nowrap; }
.hn .hn-loss-solution__saving strong span { font-size: 43px; }
.hn .hn-loss-solution__action { position: relative; padding-left: 63px; }
.hn .hn-loss-solution__action::before { content: ''; position: absolute; left: 0; top: 0; bottom: 9px; width: 1px; background: #d4eefa; }
.hn .hn-loss-solution__button { height: 80px; font-size: 19px; font-weight: 500; background: var(--hn-accent); color: white; gap: 17px; }
.hn .hn-loss-solution__button:hover { background: var(--hn-accent-dark); }
.hn .hn-loss-solution__action p { margin: 10px 0 0; font-size: 16px; line-height: 1.5; letter-spacing: -.4px; color: #7d8fa9; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-loss-solution__panel { grid-template-columns: 48% 21% 31%; padding: 32px 25px; }
  .hn .hn-loss-solution__answer { gap: 22px; padding-right: 20px; }
  .hn .hn-loss-solution__icon { flex-basis: 90px; width: 90px; height: 90px; border-radius: 24px; }
  .hn .hn-loss-solution__icon svg { width: 56px; height: 56px; }
  .hn .hn-loss-solution h2 { font-size: 21px; }
  .hn .hn-loss-solution__answer p, .hn .hn-loss-solution__saving p { font-size: 14px; }
  .hn .hn-loss-solution__break { display: none; }
  .hn .hn-loss-solution__saving { padding-left: 30px; }
  .hn .hn-loss-solution__saving strong { font-size: 52px; }
  .hn .hn-loss-solution__saving strong span { font-size: 33px; }
  .hn .hn-loss-solution__action { padding-left: 25px; }
  .hn .hn-loss-solution__button { font-size: 14px; height: 66px; gap: 8px; }
  .hn .hn-loss-solution__action p { font-size: 13px; }
}
@media (max-width: 1199px) {
  .hn .hn-loss-solution { padding: 20px 5% 25px; }
  .hn .hn-loss-solution__panel { grid-template-columns: minmax(0,2fr) minmax(0,1fr); padding: 28px; gap: 28px; }
  .hn .hn-loss-solution__answer { padding: 0; gap: 20px; }
  .hn .hn-loss-solution__icon { flex-basis: 74px; width: 74px; height: 74px; border-radius: 21px; }
  .hn .hn-loss-solution__icon svg { width: 46px; height: 46px; }
  .hn .hn-loss-solution h2 { font-size: 21px; }
  .hn .hn-loss-solution__answer p { font-size: 14px; }
  .hn .hn-loss-solution__break { display: none; }
  .hn .hn-loss-solution__saving { padding-left: 25px; }
  .hn .hn-loss-solution__saving p { font-size: 13px; }
  .hn .hn-loss-solution__saving strong { font-size: 48px; }
  .hn .hn-loss-solution__saving strong span { font-size: 30px; }
  .hn .hn-loss-solution__action { grid-column: 1/-1; padding: 0; max-width: 450px; width: 100%; justify-self: center; }
  .hn .hn-loss-solution__action::before { display: none; }
  .hn .hn-loss-solution__button { height: 66px; font-size: 17px; }
  .hn .hn-loss-solution__action p { font-size: 13px; text-align: center; }
}
@media (max-width: 767px) {
  .hn .hn-loss-solution__panel { grid-template-columns: minmax(0,1fr); padding: 24px 20px; gap: 24px; border-radius: 20px; }
  .hn .hn-loss-solution__answer { align-items: flex-start; gap: 15px; }
  .hn .hn-loss-solution__icon { flex-basis: 50px; width: 50px; height: 50px; border-radius: 16px; }
  .hn .hn-loss-solution__icon svg { width: 32px; height: 32px; }
  .hn .hn-loss-solution h2 { font-size: 18px; letter-spacing: -.6px; }
  .hn .hn-loss-solution__answer p { font-size: 13px; }
  .hn .hn-loss-solution__saving { border-top: 1px solid #cfe8f8; padding: 20px 0 0; }
  .hn .hn-loss-solution__saving::before { display: none; }
  .hn .hn-loss-solution__saving strong { font-size: 54px; }
  .hn .hn-loss-solution__saving strong span { font-size: 34px; }
  .hn .hn-loss-solution__action { grid-column: auto; }
  .hn .hn-loss-solution__button { font-size: 12px; gap: 6px; }
}

.hn .hn-history { padding: 90px 0 25px; background: radial-gradient(ellipse at 70% 40%,#edf8ff,transparent 70%),#f8fbff; overflow: hidden; }
.hn .hn-history__inner { width: 90%; max-width: 1730px; margin: 0 auto; position: relative; }
.hn .hn-history__eyebrow { display: inline-block; margin: 0 0 25px; padding: 6px 15px; border-radius: 12px; background: #e0f4ff; color: var(--hn-accent); font-size: 16px; font-weight: 600; line-height: 1.5; letter-spacing: 2px; }
.hn .hn-history h2 { margin: 0; color: var(--hn-text); font-size: 55px; font-weight: 700; line-height: 1.1; letter-spacing: -1.7px; text-align: left; text-transform: none; }
.hn .hn-history h2 span { color: var(--hn-accent); }
.hn .hn-history__description { margin: 20px 0 0; font-size: 20px; line-height: 1.5; letter-spacing: -.6px; color: #73849d; }
.hn .hn-history__timeline { position: relative; width: calc(100% - 355px); margin: 38px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)) .84fr; gap: 28px; }
.hn .hn-history__timeline::before { content: ''; position: absolute; left: 0; right: 0; top: 229px; height: 2px; background: #bce7fa; }
.hn .hn-history-card { position: relative; min-width: 0; padding: 20px 23px; background: #ffffffd9; border-radius: 18px; min-height: 395px; }
.hn .hn-history-card::after { content: ''; position: absolute; left: calc(100% + 2px); top: 221px; width: 18px; height: 18px; border-radius: 50%; border: 5px solid var(--hn-accent); background: #54c3f3; }
.hn .hn-history-card__year { display: block; color: var(--hn-accent); font-size: 27px; font-weight: 700; line-height: 1.3; letter-spacing: -.6px; }
.hn .hn-history-card h3 { margin: 5px 0 8px; color: var(--hn-text); font-size: 16px; font-weight: 600; line-height: 1.4; letter-spacing: -.55px; text-align: left; text-transform: none; white-space: nowrap; }
.hn .hn-history-card > p { margin: 0; min-height: 68px; font-size: 14px; line-height: 1.6; letter-spacing: -.35px; color: #7c8ba3; }
.hn .hn-history-card > img { display: block; margin-top: 14px; width: 100%; height: 142px; object-fit: cover; border-radius: 12px; }
.hn .hn-history-card > .hn-history-card__pump { object-position: center 30%; }
.hn .hn-history-card__status { display: flex; align-items: center; justify-content: center; gap: 10px; background: #edf8ff; border-radius: 17px; padding: 11px 7px; margin: 15px -5px 0; min-height: 49px; color: var(--hn-text); font-size: 11px; font-weight: 500; letter-spacing: -.3px; white-space: nowrap; }
.hn .hn-history-card__status svg { width: 25px; height: 25px; color: var(--hn-accent); stroke-width: 2.8; }
.hn .hn-history-card__check { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--hn-accent); color: white; font-size: 20px; }
.hn .hn-history-card--future { background: #eef8ff70; border: 2px dashed #bee3fa; padding: 20px 23px; }
.hn .hn-history-card--future::after { display: none; }
.hn .hn-history-card:nth-child(4)::after { border: 3px solid var(--hn-accent); background: #f8fbff; }
.hn .hn-history-card--future .hn-history-card__year { color: #708dab; }
.hn .hn-history-card--future h3 { white-space: normal; }
.hn .hn-history-card--future > p { margin-top: 20px; min-height: 0; font-size: 12px; }
.hn .hn-history-card__calendar { display: grid; place-items: center; width: 73px; height: 73px; margin: 18px auto 6px; border-radius: 21px; background: #e0f4ff; color: var(--hn-accent); }
.hn .hn-history-card__calendar svg { width: 43px; height: 43px; stroke-width: 3; }
.hn .hn-history-card__reminder { display: grid; place-items: center; padding: 12px 4px; border-radius: 15px; background: #dff3ff; color: var(--hn-accent); font-size: 12px; font-weight: 600; }
.hn .hn-history-card__reminder:hover { background: #ccecff; }
.hn .hn-history__phone { position: absolute; right: -25px; top: 60px; width: 350px; height: 820px; object-fit: fill; filter: drop-shadow(0 20px 22px #35577426); }
.hn .hn-history__note { position: absolute; right: 395px; top: 56px; font-family: 'Segoe Print','Comic Sans MS',cursive; font-size: 26px; font-style: italic; color: #259edb; line-height: 1.25; text-align: center; transform: rotate(-10deg); }
.hn .hn-history__note svg { display: block; width: 110px; height: 95px; margin: 6px 0 0 auto; stroke-width: 1.5; }
.hn .hn-history__summary { display: grid; grid-template-columns: 58% 42%; align-items: center; width: calc(100% - 395px); min-height: 188px; padding: 28px 30px; margin: 38px 0 0 -10px; border-radius: 24px; background: #eaf7ff; }
.hn .hn-history__summary-main, .hn .hn-history__summary-sale { display: flex; align-items: center; gap: 30px; min-width: 0; }
.hn .hn-history__summary-icon { display: grid; place-items: center; width: 94px; height: 94px; flex: 0 0 94px; border-radius: 24px; background: #ddf3ff; color: var(--hn-accent); }
.hn .hn-history__summary-icon svg { width: 52px; height: 52px; stroke-width: 3; }
.hn .hn-history__summary h3 { margin: 0 0 6px; font-size: 21px; font-weight: 600; line-height: 1.3; letter-spacing: -.6px; color: var(--hn-text); text-align: left; text-transform: none; }
.hn .hn-history__summary p { margin: 0; font-size: 16px; line-height: 1.6; letter-spacing: -.5px; color: #7c8da7; }
.hn .hn-history__summary-sale { border-left: 1px solid #93d7fb; padding-left: 40px; gap: 30px; }
.hn .hn-history__summary-sale .hn-history__summary-icon { width: 80px; height: 80px; flex-basis: 80px; background: #f7fcff; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-history { padding-top: 60px; }
  .hn .hn-history__inner { width: 94%; }
  .hn .hn-history h2 { font-size: 44px; }
  .hn .hn-history__description { font-size: 17px; }
  .hn .hn-history__timeline { width: calc(100% - 260px); gap: 16px; margin-top: 32px; }
  .hn .hn-history-card { padding: 16px 12px; min-height: 360px; }
  .hn .hn-history-card__year { font-size: 23px; }
  .hn .hn-history-card h3 { font-size: 12px; white-space: normal; min-height: 35px; }
  .hn .hn-history-card > p { font-size: 11px; min-height: 60px; }
  .hn .hn-history-card > p br { display: none; }
  .hn .hn-history-card > img { height: 110px; }
  .hn .hn-history-card__status { font-size: 9px; gap: 5px; padding: 8px 4px; white-space: normal; }
  .hn .hn-history-card__status svg { width: 20px; height: 20px; }
  .hn .hn-history__timeline::before { top: 205px; }
  .hn .hn-history-card::after { top: 197px; left: calc(100% - 1px); }
  .hn .hn-history-card--future > p { margin-top: 13px; min-height: 50px; font-size: 10px; }
  .hn .hn-history-card__calendar { width: 60px; height: 60px; margin-top: 13px; }
  .hn .hn-history-card__reminder { font-size: 10px; }
  .hn .hn-history__phone { width: 255px; height: 660px; right: -12px; top: 62px; }
  .hn .hn-history__note { right: 290px; font-size: 19px; top: 25px; }
  .hn .hn-history__summary { width: calc(100% - 270px); padding: 22px; min-height: 170px; }
  .hn .hn-history__summary-main, .hn .hn-history__summary-sale { gap: 18px; }
  .hn .hn-history__summary-icon { width: 65px; height: 65px; flex-basis: 65px; border-radius: 19px; }
  .hn .hn-history__summary-icon svg { width: 38px; height: 38px; }
  .hn .hn-history__summary h3 { font-size: 16px; }
  .hn .hn-history__summary p { font-size: 12px; }
  .hn .hn-history__summary-sale { padding-left: 22px; }
  .hn .hn-history__summary-sale .hn-history__summary-icon { width: 50px; height: 50px; flex-basis: 50px; }
  .hn .hn-history__break { display: none; }
}
@media (max-width: 1199px) {
  .hn .hn-history { padding-top: 40px; }
  .hn .hn-history h2 { font-size: 42px; }
  .hn .hn-history__eyebrow { font-size: 13px; }
  .hn .hn-history__description { font-size: 17px; }
  .hn .hn-history__break { display: none; }
  .hn .hn-history__timeline { width: 100%; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
  .hn .hn-history__timeline::before, .hn .hn-history-card::after { display: none; }
  .hn .hn-history-card { padding: 20px; min-height: 375px; }
  .hn .hn-history-card h3 { font-size: 14px; white-space: normal; min-height: 40px; }
  .hn .hn-history-card > p { font-size: 12px; }
  .hn .hn-history-card > p br { display: none; }
  .hn .hn-history-card > img { height: 130px; }
  .hn .hn-history-card__status { font-size: 10px; gap: 6px; white-space: normal; }
  .hn .hn-history__phone { position: relative; top: auto; right: auto; display: block; width: 285px; height: 650px; margin: 32px auto 0; object-fit: contain; }
  .hn .hn-history__note { display: none; }
  .hn .hn-history__summary { width: 100%; grid-template-columns: 1fr; gap: 25px; padding: 25px; margin: 30px 0 0; }
  .hn .hn-history__summary-sale { border-left: 0; border-top: 1px solid #bce3fa; padding: 25px 0 0; }
  .hn .hn-history__summary-main, .hn .hn-history__summary-sale { gap: 22px; }
  .hn .hn-history__summary-icon { width: 74px; height: 74px; flex-basis: 74px; }
  .hn .hn-history__summary h3 { font-size: 19px; }
  .hn .hn-history__summary p { font-size: 14px; }
}
@media (max-width: 767px) {
  .hn .hn-history h2 { font-size: 31px; letter-spacing: -1px; }
  .hn .hn-history__eyebrow { font-size: 11px; letter-spacing: 1.5px; }
  .hn .hn-history__description { font-size: 15px; }
  .hn .hn-history__timeline { grid-template-columns: minmax(0,1fr); gap: 20px; margin-top: 28px; }
  .hn .hn-history-card { min-height: 0; padding: 22px; }
  .hn .hn-history-card h3 { min-height: 0; font-size: 17px; }
  .hn .hn-history-card > p { min-height: 0; font-size: 14px; }
  .hn .hn-history-card > img { height: 185px; }
  .hn .hn-history-card__status { font-size: 12px; }
  .hn .hn-history-card--future { min-height: 295px; }
  .hn .hn-history-card--future > p { margin-top: 13px; }
  .hn .hn-history-card__reminder { max-width: 210px; margin: 0 auto; }
  .hn .hn-history__summary { padding: 22px 18px; }
  .hn .hn-history__summary-main, .hn .hn-history__summary-sale { gap: 15px; align-items: flex-start; }
  .hn .hn-history__summary-icon, .hn .hn-history__summary-sale .hn-history__summary-icon { width: 50px; height: 50px; flex-basis: 50px; border-radius: 16px; }
  .hn .hn-history__summary-icon svg { width: 32px; height: 32px; }
  .hn .hn-history__summary h3 { font-size: 16px; }
  .hn .hn-history__summary p { font-size: 13px; }
}

.hn .hn-history-cta { position: relative; isolation: isolate; min-height: 312px; padding: 60px 2.5% 26px 32%; background: #eaf6ff; overflow: hidden; }
.hn .hn-history-cta__background { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 50%; transform: scaleX(-1); z-index: -3; }
.hn .hn-history-cta::before { content: ''; position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,#eff9ff00 0%,#f4faff70 25%,#f5fbffce 43%,#f5fbffab 75%,#edf8ff26 100%); }
.hn .hn-history-cta__panel { display: grid; grid-template-columns: minmax(0,1fr) 425px; align-items: center; gap: 65px; min-height: 226px; padding: 34px 50px 34px 54px; border-radius: 36px; background: #ffffffed; }
.hn .hn-history-cta h2 { margin: 0 0 14px; font-size: 39px; font-weight: 700; line-height: 1.1; letter-spacing: -1.2px; color: var(--hn-text); text-align: left; text-transform: none; }
.hn .hn-history-cta h2 span { color: var(--hn-accent); }
.hn .hn-history-cta__copy p { margin: 0; font-size: 19px; color: #7b8ba5; line-height: 1.5; letter-spacing: -.5px; }
.hn .hn-history-cta__button { height: 83px; color: white; background: var(--hn-accent); font-size: 20px; font-weight: 500; gap: 20px; }
.hn .hn-history-cta__button:hover { background: var(--hn-accent-dark); }
.hn .hn-history-cta__action p { margin: 12px 0 0; font-size: 16px; line-height: 1.5; text-align: center; color: #576884; letter-spacing: -.4px; }
.hn .hn-history-cta__note { position: absolute; left: 20.4%; top: 104px; transform: rotate(-9deg); font-family: 'Segoe Print','Comic Sans MS',cursive; font-size: 24px; font-style: italic; line-height: 1.25; text-align: center; color: #209bdb; }
.hn .hn-history-cta__note svg { display: block; width: 100px; height: 90px; margin: 4px 0 0 auto; stroke-width: 1.5; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-history-cta { padding-left: 29%; padding-top: 40px; }
  .hn .hn-history-cta__panel { grid-template-columns: minmax(0,1fr) 290px; gap: 30px; padding: 30px; min-height: 220px; }
  .hn .hn-history-cta h2 { font-size: 29px; }
  .hn .hn-history-cta__copy p { font-size: 15px; }
  .hn .hn-history-cta__break { display: none; }
  .hn .hn-history-cta__button { height: 68px; font-size: 17px; }
  .hn .hn-history-cta__action p { font-size: 12px; }
  .hn .hn-history-cta__note { left: 12%; top: 96px; font-size: 21px; }
}
@media (max-width: 1199px) {
  .hn .hn-history-cta { padding: 120px 5% 30px; }
  .hn .hn-history-cta__panel { grid-template-columns: minmax(0,1fr); gap: 25px; padding: 30px; border-radius: 26px; }
  .hn .hn-history-cta h2 { font-size: 34px; }
  .hn .hn-history-cta__copy p { font-size: 17px; }
  .hn .hn-history-cta__break { display: none; }
  .hn .hn-history-cta__action { width: 370px; max-width: 100%; }
  .hn .hn-history-cta__button { height: 68px; font-size: 18px; }
  .hn .hn-history-cta__action p { font-size: 13px; }
  .hn .hn-history-cta__note { left: auto; right: 8%; top: 20px; font-size: 18px; }
  .hn .hn-history-cta__note svg { width: 60px; height: 55px; }
}
@media (max-width: 767px) {
  .hn .hn-history-cta__panel { padding: 25px 22px; border-radius: 22px; }
  .hn .hn-history-cta h2 { font-size: 27px; letter-spacing: -.7px; }
  .hn .hn-history-cta__copy p { font-size: 14px; }
  .hn .hn-history-cta__button { font-size: 16px; height: 64px; }
  .hn .hn-history-cta__action p { font-size: 12px; }
}

.hn .hn-qr-access { position: relative; isolation: isolate; background: #f6fbff; overflow: hidden; padding: 25px 0 12px; }
.hn .hn-qr-access__background { position: absolute; left: 34%; top: 0; width: 66%; height: 950px; object-fit: cover; object-position: center; z-index: -3; }
.hn .hn-qr-access__veil { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,#f7fbff 0%,#f7fbfff5 31%,#f7fbffa6 39%,transparent 49%,transparent 100%); }
.hn .hn-qr-access__veil::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,#f6fbff 0%,transparent 21%); }
.hn .hn-qr-access__inner { width: 90%; max-width: 1730px; margin: 0 auto; min-height: 855px; position: relative; }
.hn .hn-qr-access__copy { width: 710px; }
.hn .hn-qr-access__eyebrow { display: inline-block; margin: 0 0 24px; padding: 7px 15px; border-radius: 12px; background: #d9f2ff; color: var(--hn-accent); font-size: 16px; line-height: 1.5; font-weight: 600; letter-spacing: 2px; }
.hn .hn-qr-access h2 { margin: 0; font-size: 59px; font-weight: 700; line-height: 1.07; letter-spacing: -1.8px; color: var(--hn-text); text-align: left; text-transform: none; }
.hn .hn-qr-access h2 span { color: var(--hn-accent); }
.hn .hn-qr-access__description { margin: 25px 0 0; font-size: 20px; line-height: 1.5; letter-spacing: -.55px; color: #465c7b; }
.hn .hn-qr-access__benefits { padding: 0; margin: 17px 0 0; list-style: none; display: grid; gap: 26px; }
.hn .hn-qr-access__benefits li { display: flex; gap: 35px; align-items: center; }
.hn .hn-qr-access__benefits li > span { display: grid; place-items: center; width: 90px; height: 90px; flex: 0 0 90px; border-radius: 29px; background: #e0f4ff; color: var(--hn-accent); }
.hn .hn-qr-access__benefits svg { width: 43px; height: 43px; stroke-width: 3; }
.hn .hn-qr-access__benefits h3 { margin: 0 0 4px; font-size: 19px; font-weight: 600; line-height: 1.4; letter-spacing: -.45px; color: var(--hn-text); text-align: left; text-transform: none; }
.hn .hn-qr-access__benefits p { margin: 0; color: #7c8ea8; font-size: 17px; line-height: 1.5; letter-spacing: -.5px; }
.hn .hn-qr-access__actions { margin-top: 38px; display: flex; align-items: center; gap: 50px; }
.hn .hn-qr-access__button { width: 450px; height: 80px; color: white; background: var(--hn-accent); font-size: 20px; font-weight: 500; gap: 18px; }
.hn .hn-qr-access__button:hover { background: var(--hn-accent-dark); }
.hn .hn-qr-access__how { display: flex; align-items: center; gap: 18px; color: var(--hn-accent); font-size: 16px; line-height: 1.5; letter-spacing: -.5px; }
.hn .hn-qr-access__how small { display: block; color: #7c8ea8; font-size: 16px; }
.hn .hn-qr-access__play svg { width: 43px; height: 43px; stroke-width: 2.5; }
.hn .hn-qr-access__how:hover { color: var(--hn-accent-dark); }
.hn .hn-qr-access__note { position: absolute; right: -15px; top: -7px; font-family: 'Segoe Print','Comic Sans MS',cursive; font-size: 24px; font-style: italic; line-height: 1.25; text-align: center; color: #189fe6; transform: rotate(-10deg); }
.hn .hn-qr-access__note svg { display: block; width: 100px; height: 110px; margin: 7px 25px 0 auto; stroke-width: 1.5; }
.hn .hn-qr-access__summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 28px 3.3% 0; padding: 28px 28px; border: 5px solid #ffffffdc; border-radius: 23px; background: #eaf7ffed; min-height: 161px; }
.hn .hn-qr-access__stat { position: relative; display: flex; align-items: center; gap: 42px; padding-left: 45px; min-width: 0; }
.hn .hn-qr-access__stat + .hn-qr-access__stat::before { content: ''; position: absolute; left: 0; top: 10px; bottom: 10px; width: 1px; background: #b1e0f9; }
.hn .hn-qr-access__stat-icon { display: grid; place-items: center; width: 92px; height: 92px; flex: 0 0 92px; border-radius: 27px; color: var(--hn-accent); background: #dff4ff; }
.hn .hn-qr-access__stat-icon svg { width: 53px; height: 53px; stroke-width: 3; }
.hn .hn-qr-access__stat strong { display: block; font-size: 19px; font-weight: 600; line-height: 1.4; color: var(--hn-text); letter-spacing: -.5px; }
.hn .hn-qr-access__stat .hn-qr-access__number { color: var(--hn-accent); font-size: 40px; font-weight: 700; letter-spacing: -1px; line-height: 1.2; }
.hn .hn-qr-access__stat p { margin: 3px 0 0; color: #7287a3; font-size: 17px; line-height: 1.5; letter-spacing: -.5px; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-qr-access__inner { width: 94%; min-height: 780px; }
  .hn .hn-qr-access__copy { width: 560px; }
  .hn .hn-qr-access h2 { font-size: 46px; }
  .hn .hn-qr-access__eyebrow { font-size: 13px; }
  .hn .hn-qr-access__description { font-size: 16px; max-width: 520px; }
  .hn .hn-qr-access__benefits { gap: 22px; margin-top: 25px; }
  .hn .hn-qr-access__benefits li { gap: 25px; }
  .hn .hn-qr-access__benefits li > span { width: 72px; height: 72px; flex-basis: 72px; border-radius: 23px; }
  .hn .hn-qr-access__benefits h3 { font-size: 17px; }
  .hn .hn-qr-access__benefits p { font-size: 14px; }
  .hn .hn-qr-access__button { width: 355px; height: 68px; font-size: 16px; }
  .hn .hn-qr-access__actions { gap: 25px; margin-top: 32px; }
  .hn .hn-qr-access__how, .hn .hn-qr-access__how small { font-size: 13px; }
  .hn .hn-qr-access__background { left: 28%; width: 72%; height: 870px; }
  .hn .hn-qr-access__note { font-size: 19px; right: 0; top: 12px; }
  .hn .hn-qr-access__summary { padding: 22px 12px; }
  .hn .hn-qr-access__stat { padding-left: 25px; gap: 20px; }
  .hn .hn-qr-access__stat-icon { width: 65px; height: 65px; flex-basis: 65px; border-radius: 20px; }
  .hn .hn-qr-access__stat-icon svg { width: 38px; height: 38px; }
  .hn .hn-qr-access__stat .hn-qr-access__number { font-size: 31px; }
  .hn .hn-qr-access__stat strong { font-size: 16px; }
  .hn .hn-qr-access__stat p { font-size: 13px; }
}
@media (max-width: 1199px) {
  .hn .hn-qr-access { padding-top: 35px; }
  .hn .hn-qr-access__inner { min-height: 0; }
  .hn .hn-qr-access__copy { width: 100%; }
  .hn .hn-qr-access h2 { font-size: 48px; }
  .hn .hn-qr-access__eyebrow { font-size: 13px; }
  .hn .hn-qr-access__description { font-size: 18px; max-width: 720px; }
  .hn .hn-qr-access__break { display: none; }
  .hn .hn-qr-access__benefits { max-width: 650px; margin-top: 28px; gap: 22px; }
  .hn .hn-qr-access__benefits li { gap: 25px; }
  .hn .hn-qr-access__benefits li > span { width: 72px; height: 72px; flex-basis: 72px; border-radius: 23px; }
  .hn .hn-qr-access__benefits h3 { font-size: 18px; }
  .hn .hn-qr-access__benefits p { font-size: 15px; }
  .hn .hn-qr-access__actions { flex-wrap: wrap; gap: 24px; margin-top: 28px; }
  .hn .hn-qr-access__button { width: 400px; max-width: 100%; height: 68px; font-size: 18px; }
  .hn .hn-qr-access__background { position: relative; left: auto; top: auto; width: 90%; height: auto; aspect-ratio: 4/3; display: block; margin: 0 auto 28px; border-radius: 22px; z-index: 0; }
  .hn .hn-qr-access__inner { display: flex; flex-direction: column; }
  .hn .hn-qr-access__veil { background: #f6fbff; }
  .hn .hn-qr-access__background { position: absolute; top: auto; bottom: 340px; }
  .hn .hn-qr-access__inner { padding-bottom: 550px; }
  .hn .hn-qr-access__note { display: none; }
  .hn .hn-qr-access__summary { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 0; margin-top: 15px; padding: 25px 15px; }
  .hn .hn-qr-access__stat { gap: 22px; padding: 0 22px; }
  .hn .hn-qr-access__stat:nth-child(3)::before { display: none; }
  .hn .hn-qr-access__stat-icon { width: 68px; height: 68px; flex-basis: 68px; border-radius: 21px; }
  .hn .hn-qr-access__stat-icon svg { width: 40px; height: 40px; }
  .hn .hn-qr-access__stat .hn-qr-access__number { font-size: 33px; }
  .hn .hn-qr-access__stat p { font-size: 14px; }
}
@media (max-width: 767px) {
  .hn .hn-qr-access h2 { font-size: 32px; letter-spacing: -1px; }
  .hn .hn-qr-access__eyebrow { font-size: 11px; letter-spacing: 1.5px; margin-bottom: 22px; }
  .hn .hn-qr-access__description { font-size: 15px; margin-top: 22px; }
  .hn .hn-qr-access__benefits li { gap: 17px; }
  .hn .hn-qr-access__benefits li > span { width: 58px; height: 58px; flex-basis: 58px; border-radius: 18px; }
  .hn .hn-qr-access__benefits svg { width: 33px; height: 33px; }
  .hn .hn-qr-access__benefits h3 { font-size: 16px; }
  .hn .hn-qr-access__benefits p { font-size: 13px; }
  .hn .hn-qr-access__button { width: 100%; height: 64px; font-size: 14px; }
  .hn .hn-qr-access__how, .hn .hn-qr-access__how small { font-size: 14px; }
  .hn .hn-qr-access__inner { padding-bottom: 285px; }
  .hn .hn-qr-access__background { bottom: 510px; width: 90%; height: 250px; left: 5%; object-fit: cover; }
  .hn .hn-qr-access__summary { grid-template-columns: minmax(0,1fr); gap: 0; padding: 8px 18px; }
  .hn .hn-qr-access__stat { padding: 20px 0; gap: 24px; }
  .hn .hn-qr-access__stat + .hn-qr-access__stat::before, .hn .hn-qr-access__stat:nth-child(3)::before { display: block; left: 0; right: 0; top: 0; bottom: auto; height: 1px; width: auto; }
  .hn .hn-qr-access__stat strong { font-size: 17px; }
}

@media (max-width: 1199px) {
  .hn .hn-qr-access { display: flex; flex-direction: column; }
  .hn .hn-qr-access__inner { order: 0; padding-bottom: 0; }
  .hn .hn-qr-access__background { order: 1; position: relative; top: auto; bottom: auto; left: auto; width: 90%; height: auto; margin: 28px auto 0; }
  .hn .hn-qr-access__summary { order: 2; width: 93.4%; align-self: center; margin: 28px 0 0; }
}
@media (max-width: 767px) { .hn .hn-qr-access__background { height: 250px; } }

@media (min-width: 1200px) { .hn .hn-qr-access__background { mask-image: linear-gradient(90deg,transparent 0%,#000 15%); } }

.hn .hn-qr-review { padding: 4px 24px 8px; background: #f6fbff; }
.hn .hn-qr-review__panel { display: flex; align-items: center; gap: 28px; min-height: 144px; margin: 0; padding: 16px 66px; border-radius: 20px; background: #eaf7ff; box-shadow: none; }
.hn .hn-qr-review__avatar { display: block; width: 112px; height: 112px; flex: 0 0 112px; object-fit: cover; object-position: 48% 36%; border-radius: 50%; }
.hn .hn-qr-review__content { min-width: 0; }
.hn .hn-qr-review blockquote { margin: 0 0 12px; padding: 0; border: 0; background: transparent; color: #435b7a; font-size: 19px; line-height: 1.5; font-weight: 400; font-style: italic; letter-spacing: -.5px; }
.hn .hn-qr-review figcaption { color: #435b7a; font-size: 16px; line-height: 1.5; letter-spacing: -.4px; }
.hn .hn-qr-review figcaption strong { font-weight: 600; color: var(--hn-text); }
.hn .hn-qr-review figcaption span { margin-left: 22px; color: #8299b5; }
.hn .hn-qr-review__note { margin-left: auto; display: flex; gap: 38px; align-items: center; flex-shrink: 0; }
.hn .hn-qr-review__note > span { font-size: 88px; font-family: Georgia,serif; font-weight: 700; line-height: .7; color: #b9e7ff; }
.hn .hn-qr-review__note p { margin: 0; font-family: 'Segoe Print','Comic Sans MS',cursive; color: #25a7e4; font-size: 23px; font-weight: 400; font-style: italic; line-height: 1.25; transform: rotate(-8deg); white-space: nowrap; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-qr-review__panel { padding: 20px 35px; gap: 24px; }
  .hn .hn-qr-review__avatar { width: 94px; height: 94px; flex-basis: 94px; }
  .hn .hn-qr-review blockquote { font-size: 16px; }
  .hn .hn-qr-review__break { display: none; }
  .hn .hn-qr-review figcaption { font-size: 14px; }
  .hn .hn-qr-review__note { gap: 20px; }
  .hn .hn-qr-review__note p { font-size: 18px; }
  .hn .hn-qr-review__note > span { font-size: 70px; }
}
@media (max-width: 1199px) {
  .hn .hn-qr-review { padding: 10px 3.3% 20px; }
  .hn .hn-qr-review__panel { flex-wrap: wrap; padding: 24px; gap: 20px; }
  .hn .hn-qr-review__avatar { width: 86px; height: 86px; flex-basis: 86px; }
  .hn .hn-qr-review__content { flex: 1; }
  .hn .hn-qr-review blockquote { font-size: 16px; }
  .hn .hn-qr-review__break { display: none; }
  .hn .hn-qr-review figcaption { font-size: 14px; }
  .hn .hn-qr-review__note { margin: 0 0 0 auto; gap: 20px; }
  .hn .hn-qr-review__note p { font-size: 19px; }
  .hn .hn-qr-review__note > span { font-size: 60px; }
}
@media (max-width: 767px) {
  .hn .hn-qr-review__panel { padding: 22px 20px; gap: 18px; align-items: flex-start; }
  .hn .hn-qr-review__avatar { width: 70px; height: 70px; flex-basis: 70px; }
  .hn .hn-qr-review__content { flex: 1 1 100%; }
  .hn .hn-qr-review blockquote { font-size: 14px; margin-bottom: 14px; }
  .hn .hn-qr-review figcaption { font-size: 13px; }
  .hn .hn-qr-review figcaption span { display: block; margin: 5px 0 0; }
  .hn .hn-qr-review__note { margin: 7px 0 0 auto; gap: 15px; }
  .hn .hn-qr-review__note p { font-size: 16px; }
}

.hn .hn-qr-review__avatar { overflow: hidden; }
.hn .hn-qr-review__avatar img { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(2.8); transform-origin: 48% 36%; }
.hn .hn-qr-review blockquote { font-family: Arial, sans-serif; }

.hn .hn-project-process { padding: 90px 3.8% 7px; background: radial-gradient(ellipse at 70% 50%,#eaf6ff,transparent 70%),#f8fbff; }
.hn .hn-project-process__top { position: relative; min-height: 495px; }
.hn .hn-project-process__copy { padding-left: 25px; position: relative; z-index: 2; width: 720px; }
.hn .hn-project-process__eyebrow { display: inline-block; margin: 0 0 27px; padding: 7px 15px; background: #dff4ff; border-radius: 12px; color: var(--hn-accent); font-size: 16px; line-height: 1.5; letter-spacing: 2px; font-weight: 600; }
.hn .hn-project-process h2 { margin: 0; font-size: 57px; line-height: 1.1; font-weight: 700; letter-spacing: -1.8px; color: var(--hn-text); text-align: left; text-transform: none; }
.hn .hn-project-process h2 span { color: var(--hn-accent); }
.hn .hn-project-process__description { margin: 35px 0 0; font-size: 20px; line-height: 1.5; letter-spacing: -.5px; color: #647895; }
.hn .hn-project-process__scene { position: absolute; left: 42%; right: 0; top: -51px; height: 525px; }
.hn .hn-project-process__scene > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 69% center; border-radius: 30px; mask-image: linear-gradient(135deg,transparent 0%,transparent 11%,#000 33%,#000 90%,transparent 100%); }
.hn .hn-project-process__note { position: absolute; top: 72px; left: -40px; font-family: 'Segoe Print','Comic Sans MS',cursive; font-size: 24px; font-style: italic; line-height: 1.25; text-align: center; color: #249edb; transform: rotate(-10deg); }
.hn .hn-project-process__note svg { display: block; width: 100px; height: 85px; margin: 4px 0 0 auto; stroke-width: 1.5; }
.hn .hn-project-process__object { position: absolute; bottom: 35px; left: 25px; display: flex; align-items: center; gap: 15px; padding: 14px 18px; border-radius: 23px; background: #ffffffef; box-shadow: 0 10px 25px #31557612; }
.hn .hn-project-process__object > svg { width: 37px; height: 37px; color: var(--hn-accent); }
.hn .hn-project-process__object strong { display: block; font-size: 14px; font-weight: 600; line-height: 1.5; color: var(--hn-text); }
.hn .hn-project-process__object small { display: block; font-size: 13px; line-height: 1.5; color: #7a8ba5; }
.hn .hn-project-process__object .hn-project-process__object-arrow { width: 28px; height: 28px; margin-left: 7px; stroke-width: 1.8; }
.hn .hn-project-process__caption { position: absolute; right: 15px; top: 0; font-size: 14px; line-height: 1.6; letter-spacing: -.3px; color: #6f839e; }
.hn .hn-project-process__caption::after { content: ''; display: block; width: 46px; height: 1px; margin-top: 9px; background: #87d3f6; }
.hn .hn-project-process__numbers { position: absolute; top: 100px; right: 15px; width: 367px; min-height: 381px; padding: 12px 38px; margin: 0; border-radius: 24px; background: linear-gradient(125deg,#071017f2,#172d3dec); color: white; backdrop-filter: blur(10px); }
.hn .hn-project-process__numbers > div { display: flex; align-items: center; gap: 20px; min-height: 122px; }
.hn .hn-project-process__numbers > div + div { border-top: 1px solid #4d6a7c; }
.hn .hn-project-process__numbers dd { order: 0; margin: 0; color: var(--hn-accent); font-size: 44px; line-height: 1.1; font-weight: 700; letter-spacing: -1.5px; white-space: nowrap; min-width: 99px; }
.hn .hn-project-process__numbers dd span { font-size: 32px; }
.hn .hn-project-process__numbers dt { order: 1; font-size: 15px; line-height: 1.6; font-weight: 400; letter-spacing: -.5px; color: #c8d4e0; }
.hn .hn-project-process__bottom { display: grid; grid-template-columns: minmax(0,1fr) 313px; align-items: center; gap: 35px; min-height: 212px; padding: 30px 28px 26px 31px; background: #ffffffb8; border-radius: 26px; }
.hn .hn-project-process__steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 28px; list-style: none; margin: 0; padding: 0; }
.hn .hn-project-process__steps li { display: flex; align-items: flex-start; gap: 25px; min-width: 0; }
.hn .hn-project-process__steps li > div { min-width: 0; flex: 1; }
.hn .hn-project-process__icon { display: grid; place-items: center; width: 82px; height: 82px; flex: 0 0 82px; border-radius: 50%; background: #e2f5ff; color: var(--hn-accent); }
.hn .hn-project-process__icon svg { width: 38px; height: 38px; stroke-width: 3; }
.hn .hn-project-process__step-line { position: relative; display: flex; align-items: center; height: 48px; gap: 24px; }
.hn .hn-project-process__step-line b { font-size: 26px; line-height: 1; font-weight: 600; color: var(--hn-accent); }
.hn .hn-project-process__step-line::after { content: ''; height: 1px; flex: 1; background: #c9eafa; }
.hn .hn-project-process__step-line svg { position: absolute; right: -7px; top: 16px; width: 28px; height: 28px; color: #c9eafa; stroke-width: 1.5; }
.hn .hn-project-process__steps h3 { margin: 17px 0 10px; font-size: 18px; font-weight: 600; line-height: 1.3; letter-spacing: -.5px; color: var(--hn-text); text-align: left; text-transform: none; }
.hn .hn-project-process__steps p { margin: 0; font-size: 16px; line-height: 1.6; letter-spacing: -.5px; color: #71839e; }
.hn .hn-project-process__button { height: 82px; background: var(--hn-accent); color: white; font-size: 19px; font-weight: 500; gap: 20px; }
.hn .hn-project-process__button:hover { background: var(--hn-accent-dark); }
.hn .hn-project-process__action > p { margin: 13px 0 0; font-size: 16px; text-align: center; line-height: 1.5; color: #71839e; letter-spacing: -.5px; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-project-process { padding-top: 65px; }
  .hn .hn-project-process__top { min-height: 455px; }
  .hn .hn-project-process__copy { padding-left: 5px; width: 550px; }
  .hn .hn-project-process h2 { font-size: 43px; }
  .hn .hn-project-process__description { font-size: 16px; max-width: 500px; }
  .hn .hn-project-process__eyebrow { font-size: 13px; }
  .hn .hn-project-process__break { display: none; }
  .hn .hn-project-process__scene { left: 43%; top: -25px; height: 460px; }
  .hn .hn-project-process__note { font-size: 18px; left: -10px; top: 40px; }
  .hn .hn-project-process__caption { font-size: 12px; }
  .hn .hn-project-process__numbers { width: 270px; padding: 10px 24px; top: 90px; min-height: 335px; }
  .hn .hn-project-process__numbers > div { min-height: 105px; gap: 12px; }
  .hn .hn-project-process__numbers dd { font-size: 35px; min-width: 79px; }
  .hn .hn-project-process__numbers dd span { font-size: 24px; }
  .hn .hn-project-process__numbers dt { font-size: 12px; }
  .hn .hn-project-process__object { left: 5px; padding: 12px; gap: 10px; }
  .hn .hn-project-process__object strong { font-size: 12px; }
  .hn .hn-project-process__object small { font-size: 11px; }
  .hn .hn-project-process__bottom { grid-template-columns: minmax(0,1fr) 235px; padding: 25px 20px; gap: 25px; }
  .hn .hn-project-process__steps { gap: 18px; }
  .hn .hn-project-process__steps li { gap: 13px; }
  .hn .hn-project-process__icon { width: 54px; height: 54px; flex-basis: 54px; }
  .hn .hn-project-process__icon svg { width: 29px; height: 29px; }
  .hn .hn-project-process__step-line { height: 38px; gap: 10px; }
  .hn .hn-project-process__step-line b { font-size: 22px; }
  .hn .hn-project-process__step-line svg { top: 10px; }
  .hn .hn-project-process__steps h3 { font-size: 15px; margin-top: 10px; }
  .hn .hn-project-process__steps p { font-size: 12px; }
  .hn .hn-project-process__steps p br { display: none; }
  .hn .hn-project-process__button { height: 68px; font-size: 16px; }
  .hn .hn-project-process__action > p { font-size: 12px; }
}
@media (max-width: 1199px) {
  .hn .hn-project-process { padding: 40px 5% 25px; }
  .hn .hn-project-process__top { display: grid; grid-template-columns: minmax(0,1fr) 290px; min-height: 0; gap: 25px; }
  .hn .hn-project-process__copy { grid-column: 1/-1; width: 100%; padding: 0; }
  .hn .hn-project-process h2 { font-size: 45px; }
  .hn .hn-project-process__description { font-size: 18px; max-width: 750px; margin-top: 25px; }
  .hn .hn-project-process__eyebrow { font-size: 13px; }
  .hn .hn-project-process__break { display: none; }
  .hn .hn-project-process__scene { position: relative; left: auto; right: auto; top: auto; height: 360px; }
  .hn .hn-project-process__scene > img { mask-image: none; }
  .hn .hn-project-process__note, .hn .hn-project-process__caption { display: none; }
  .hn .hn-project-process__numbers { position: relative; top: auto; right: auto; width: 100%; min-height: 360px; padding: 15px 25px; }
  .hn .hn-project-process__numbers > div { min-height: 110px; gap: 18px; }
  .hn .hn-project-process__numbers dd { font-size: 35px; min-width: 85px; }
  .hn .hn-project-process__numbers dd span { font-size: 25px; }
  .hn .hn-project-process__numbers dt { font-size: 13px; }
  .hn .hn-project-process__object { bottom: 20px; left: 15px; padding: 12px; gap: 10px; }
  .hn .hn-project-process__object strong { font-size: 12px; }
  .hn .hn-project-process__object small { font-size: 11px; }
  .hn .hn-project-process__bottom { grid-template-columns: minmax(0,1fr); margin-top: 28px; padding: 25px; gap: 25px; }
  .hn .hn-project-process__steps { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px; }
  .hn .hn-project-process__steps li { gap: 18px; }
  .hn .hn-project-process__icon { width: 65px; height: 65px; flex-basis: 65px; }
  .hn .hn-project-process__steps h3 { font-size: 17px; margin-top: 10px; }
  .hn .hn-project-process__steps p { font-size: 14px; }
  .hn .hn-project-process__action { width: 330px; max-width: 100%; justify-self: center; }
  .hn .hn-project-process__button { font-size: 18px; height: 70px; }
  .hn .hn-project-process__action > p { font-size: 14px; }
}
@media (max-width: 767px) {
  .hn .hn-project-process h2 { font-size: 30px; letter-spacing: -.9px; }
  .hn .hn-project-process__description { font-size: 15px; }
  .hn .hn-project-process__eyebrow { font-size: 11px; letter-spacing: 1.5px; }
  .hn .hn-project-process__top { grid-template-columns: minmax(0,1fr); gap: 25px; }
  .hn .hn-project-process__scene { height: 300px; }
  .hn .hn-project-process__numbers { min-height: 0; padding: 10px 27px; }
  .hn .hn-project-process__numbers > div { min-height: 100px; }
  .hn .hn-project-process__bottom { padding: 22px 18px; }
  .hn .hn-project-process__steps { grid-template-columns: minmax(0,1fr); gap: 25px; }
  .hn .hn-project-process__steps p { font-size: 13px; }
  .hn .hn-project-process__button { font-size: 16px; height: 66px; }
  .hn .hn-project-process__action > p { font-size: 13px; }
}

.hn .hn-reviews { position: relative; isolation: isolate; padding: 43px 0 75px; min-height: 493px; background: #132833; overflow: hidden; }
.hn .hn-reviews__background { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; z-index: -3; }
.hn .hn-reviews::before { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,#071419d9 0%,#09192083 35%,#0a1b2340 72%,#0c1d285e 100%); z-index: -2; }
.hn .hn-reviews__inner { width: 90%; max-width: 1730px; margin: 0 auto; display: grid; grid-template-columns: 420px minmax(0,1fr); gap: 45px; position: relative; padding-right: 125px; }
.hn .hn-reviews__eyebrow { display: inline-block; padding: 6px 17px; margin: 0 0 12px; font-size: 16px; font-weight: 600; line-height: 1.5; letter-spacing: 3px; color: var(--hn-accent); background: #effbff; border-radius: 12px; }
.hn .hn-reviews h2 { margin: 0 0 14px; color: #fff; font-size: 44px; font-weight: 700; line-height: 1.1; letter-spacing: -1px; text-align: left; text-transform: none; }
.hn .hn-reviews__intro > p:not(.hn-reviews__eyebrow) { margin: 0; color: #e4eaee; font-size: 17px; line-height: 1.6; letter-spacing: -.4px; }
.hn .hn-reviews__controls { display: flex; gap: 23px; margin-top: 30px; }
.hn .hn-reviews__controls button { width: 60px; height: 60px; display: grid; place-items: center; border: 1px solid #a9bec080; border-radius: 50%; background: transparent; color: white; cursor: pointer; padding: 0; }
.hn .hn-reviews__controls button:first-child { background: #ffffff15; }
.hn .hn-reviews__controls button:hover { background: #ffffff30; border-color: #d4ebf0; }
.hn .hn-reviews__controls svg { width: 32px; height: 32px; stroke-width: 1.5; }
.hn .hn-reviews__prev svg { transform: rotate(180deg); }
.hn .hn-reviews__announcement { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.hn .hn-reviews__track { display: flex; align-items: stretch; gap: 12px; margin-top: 40px; min-width: 0; overflow-x: auto; scrollbar-width: none; scroll-snap-type: x mandatory; }
.hn .hn-reviews__track::-webkit-scrollbar { display: none; }
.hn .hn-review-card { flex: 0 0 calc((100% - 24px)/3); min-width: 0; margin: 0; padding: 25px 28px 21px; background: #fff; border-radius: 17px; min-height: 287px; scroll-snap-align: start; box-shadow: none; }
.hn .hn-review-card__top { display: flex; gap: 18px; align-items: flex-start; min-height: 151px; }
.hn .hn-review-card__avatar { display: block; width: 86px; height: 86px; flex: 0 0 86px; border-radius: 50%; overflow: hidden; }
.hn .hn-review-card__avatar img { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(3); }
.hn .hn-review-card__avatar--ivan img { transform-origin: 29% 29%; }
.hn .hn-review-card__avatar--ekaterina img { transform-origin: 52% 44%; }
.hn .hn-review-card__avatar--alexey img { transform-origin: 48% 36%; }
.hn .hn-review-card blockquote { margin: 4px 0 0; padding: 0; border: 0; background: transparent; font-family: Arial,sans-serif; font-size: 16px; font-weight: 400; font-style: normal; line-height: 1.5; letter-spacing: -.2px; color: #6b7c99; }
.hn .hn-review-card figcaption { margin-top: 3px; }
.hn .hn-review-card figcaption strong { display: block; font-size: 16px; font-weight: 600; line-height: 1.5; letter-spacing: -.45px; color: var(--hn-text); }
.hn .hn-review-card figcaption span { display: block; font-size: 14px; line-height: 1.5; letter-spacing: -.4px; color: #7f91ac; }
.hn .hn-review-card__stars { margin-top: 9px; color: var(--hn-accent); font-size: 23px; letter-spacing: 2px; line-height: 1.2; }
.hn .hn-reviews__note { position: absolute; top: 60px; right: -70px; margin: 0; font-family: 'Segoe Print','Comic Sans MS',cursive; font-style: italic; font-size: 21px; line-height: 1.35; white-space: nowrap; color: #e3e7e9; transform: rotate(-10deg); }
.hn .hn-reviews__note svg { width: 110px; height: 95px; display: block; margin: 8px 0 0 5px; stroke-width: 1.5; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-reviews__inner { width: 94%; grid-template-columns: 310px minmax(0,1fr); gap: 30px; padding-right: 0; }
  .hn .hn-reviews h2 { font-size: 36px; }
  .hn .hn-reviews__intro > p:not(.hn-reviews__eyebrow) { font-size: 14px; }
  .hn .hn-reviews__break { display: none; }
  .hn .hn-reviews__note { display: none; }
  .hn .hn-review-card { padding: 22px 20px; }
  .hn .hn-review-card__top { gap: 12px; min-height: 170px; }
  .hn .hn-review-card__avatar { width: 58px; height: 58px; flex-basis: 58px; }
  .hn .hn-review-card blockquote { font-size: 13px; }
  .hn .hn-review-card blockquote br { display: none; }
  .hn .hn-review-card figcaption strong { font-size: 14px; }
  .hn .hn-review-card figcaption span { font-size: 12px; }
}
@media (max-width: 1199px) {
  .hn .hn-reviews { padding: 35px 0 40px; }
  .hn .hn-reviews__inner { grid-template-columns: minmax(0,1fr); gap: 25px; padding-right: 0; }
  .hn .hn-reviews h2 { font-size: 38px; }
  .hn .hn-reviews__intro > p:not(.hn-reviews__eyebrow) { font-size: 16px; max-width: 600px; }
  .hn .hn-reviews__break { display: none; }
  .hn .hn-reviews__note { display: none; }
  .hn .hn-reviews__controls { margin-top: 20px; }
  .hn .hn-reviews__track { margin-top: 0; }
  .hn .hn-review-card { flex-basis: calc((100% - 12px)/2); min-height: 285px; padding: 23px; }
  .hn .hn-review-card__avatar { width: 68px; height: 68px; flex-basis: 68px; }
  .hn .hn-review-card blockquote { font-size: 14px; }
  .hn .hn-review-card blockquote br { display: none; }
}
@media (max-width: 767px) {
  .hn .hn-reviews__eyebrow { font-size: 12px; letter-spacing: 2px; }
  .hn .hn-reviews h2 { font-size: 32px; }
  .hn .hn-reviews__intro > p:not(.hn-reviews__eyebrow) { font-size: 14px; }
  .hn .hn-reviews__controls button { width: 48px; height: 48px; }
  .hn .hn-review-card { flex-basis: 100%; padding: 22px; }
  .hn .hn-review-card__top { gap: 15px; min-height: 170px; }
  .hn .hn-review-card__avatar { width: 68px; height: 68px; flex-basis: 68px; }
  .hn .hn-review-card blockquote { font-size: 14px; }
  .hn .hn-review-card figcaption strong { font-size: 15px; }
  .hn .hn-review-card figcaption span { font-size: 13px; }
}

.hn .hn-reviews__track { align-self: start; }
.hn .hn-reviews__intro > p:not(.hn-reviews__eyebrow) { font-weight: 400; }
.hn .hn-review-card__avatar--ivan img { transform-origin: 12% 29%; }
@media (min-width: 1751px) { .hn .hn-reviews__note { width: 180px; right: -60px; font-size: 20px; } }

.hn .hn-contact { position: relative; isolation: isolate; padding: 32px 0 45px; min-height: 806px; overflow: hidden; background: #f6fbff; }
.hn .hn-contact__background { position: absolute; inset: 0 0 0 auto; width: 67%; height: 100%; object-fit: cover; object-position: 85% center; z-index: -3; }
.hn .hn-contact__veil { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,#f6fbff 0%,#f6fbfff7 34%,#f6fbffb3 47%,#f6fbff40 65%,transparent 85%); }
.hn .hn-contact__inner { width: 90%; max-width: 1730px; margin: 0 auto; position: relative; }
.hn .hn-contact__copy { width: 680px; }
.hn .hn-contact__eyebrow { display: inline-block; margin: 0 0 25px; padding: 7px 15px; border-radius: 12px; background: #dff4ff; color: var(--hn-accent); font-size: 16px; font-weight: 600; line-height: 1.5; letter-spacing: 3px; }
.hn .hn-contact h2 { margin: 0; font-size: 68px; line-height: 1.05; letter-spacing: -2px; font-weight: 700; color: var(--hn-text); text-align: left; text-transform: none; }
.hn .hn-contact h2 span { color: var(--hn-accent); }
.hn .hn-contact__description { margin: 25px 0 0; color: #647895; font-size: 20px; line-height: 1.5; letter-spacing: -.5px; }
.hn .hn-contact__benefits { display: flex; gap: 30px; padding: 0; margin: 40px 0 0; list-style: none; }
.hn .hn-contact__benefits li { display: flex; align-items: center; gap: 14px; }
.hn .hn-contact__benefits li > span { display: grid; place-items: center; width: 64px; height: 64px; flex: 0 0 64px; border-radius: 20px; color: var(--hn-accent); background: #ddf3ff; }
.hn .hn-contact__benefits svg { width: 32px; height: 32px; stroke-width: 3; }
.hn .hn-contact__benefits p { margin: 0; color: #405574; font-size: 14px; line-height: 1.7; letter-spacing: -.3px; }
.hn .hn-contact__form { width: 466px; margin-top: 39px; padding: 25px 24px 27px; border-radius: 22px; background: #ffffffdc; }
.hn .hn-contact__field { display: flex; align-items: center; gap: 20px; background: #f0f7ff; border-radius: 21px; min-height: 69px; padding: 14px 20px; margin: 0 0 19px; }
.hn .hn-contact__field > svg { width: 28px; height: 28px; color: #7287a5; stroke-width: 2.4; }
.hn .hn-contact__field input { border: 0; background: transparent; padding: 0; margin: 0; min-width: 0; width: 100%; outline-offset: 5px; font-size: 14px; color: #293f5c; box-shadow: none; }
.hn .hn-contact__field input::placeholder { color: #7c8da9; opacity: 1; }
.hn .hn-contact__field--phone { padding-right: 6px; margin-bottom: 28px; }
.hn .hn-contact__field button { width: 52px; height: 52px; flex: 0 0 52px; border: 0; padding: 0; display: grid; place-items: center; background: var(--hn-accent); color: white; border-radius: 50%; cursor: pointer; }
.hn .hn-contact__field button:hover { background: var(--hn-accent-dark); }
.hn .hn-contact__field button:disabled { opacity: .6; cursor: wait; }
.hn .hn-contact__field button svg { width: 29px; height: 29px; stroke-width: 1.8; }
.hn .hn-contact__consent { display: flex; align-items: center; gap: 12px; color: #7c8da9; font-size: 12px; font-weight: 400; line-height: 1.5; margin: 0 8px; }
.hn .hn-contact__consent input { appearance: auto; width: 22px; height: 22px; flex: 0 0 22px; margin: 0; accent-color: var(--hn-accent); }
.hn .hn-contact__consent a { text-decoration: underline; }
.hn .hn-contact__message { margin: 12px 0 0; font-size: 13px; line-height: 1.5; color: #405574; }
.hn .hn-contact__message:empty { display: none; }
.hn .hn-contact__form-note { position: absolute; top: 510px; left: 510px; color: #259fdd; font-family: 'Segoe Print','Comic Sans MS',cursive; font-size: 23px; font-style: italic; line-height: 1.25; transform: rotate(-12deg); }
.hn .hn-contact__form-note svg { display: block; width: 150px; height: 85px; margin: 5px 0 0 -25px; stroke-width: 1.5; }
.hn .hn-contact__map-card { position: absolute; top: 110px; left: 40.5%; width: 748px; padding: 14px; border-radius: 23px; background: #fffffff2; box-shadow: 0 15px 35px #30537209; }
.hn .hn-contact__map { position: relative; height: 420px; border-radius: 18px; overflow: hidden; background: #edf4f7; }
.hn .hn-contact__map iframe { width: 100%; height: 100%; border: 0; display: block; opacity: .75; }
.hn .hn-contact__office { position: absolute; top: 0; left: 0; display: flex; gap: 18px; padding: 10px 20px 17px 10px; border-radius: 0 0 22px 0; background: #fffffff2; }
.hn .hn-contact__office > span { display: grid; place-items: center; width: 64px; height: 64px; flex: 0 0 64px; color: var(--hn-accent); background: #e1f4ff; border-radius: 20px; }
.hn .hn-contact__office svg { width: 33px; height: 33px; }
.hn .hn-contact__office strong { display: block; font-size: 19px; line-height: 1.5; font-weight: 600; color: var(--hn-text); }
.hn .hn-contact__office p { margin: 0; font-size: 14px; line-height: 1.5; color: #7387a4; }
.hn .hn-contact__office a { display: flex; gap: 8px; align-items: center; margin-top: 5px; font-size: 14px; line-height: 1.5; color: var(--hn-accent); }
.hn .hn-contact__office a svg { width: 20px; height: 20px; stroke-width: 1.8; }
.hn .hn-contact__channels { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 28px 9px 9px; }
.hn .hn-contact__channel { display: flex; align-items: center; gap: 13px; }
.hn .hn-contact__channel > span { display: grid; place-items: center; width: 53px; height: 53px; flex: 0 0 53px; border-radius: 16px; color: var(--hn-accent); background: #dff4ff; }
.hn .hn-contact__channel svg { width: 29px; height: 29px; stroke-width: 2.5; }
.hn .hn-contact__channel strong { display: block; color: var(--hn-text); font-size: 14px; font-weight: 600; line-height: 1.5; letter-spacing: -.4px; }
.hn .hn-contact__channel small { display: block; color: #7d90ab; font-size: 12px; line-height: 1.5; letter-spacing: -.3px; }
.hn .hn-contact__messenger { display: flex; align-items: center; gap: 9px; }
.hn .hn-contact__messenger img { width: 36px; height: 36px; }
.hn .hn-contact__messenger span { font-size: 12px; line-height: 1.5; color: #7286a2; }
.hn .hn-contact__note { position: absolute; right: -48px; top: 80px; color: white; font-family: 'Segoe Print','Comic Sans MS',cursive; font-size: 24px; font-style: italic; line-height: 1.25; text-align: center; transform: rotate(-12deg); }
.hn .hn-contact__note svg { display: block; width: 120px; height: 95px; margin-top: 8px; stroke-width: 1.5; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-contact__inner { width: 94%; }
  .hn .hn-contact__copy { width: 49%; }
  .hn .hn-contact h2 { font-size: 54px; }
  .hn .hn-contact__description { font-size: 16px; }
  .hn .hn-contact__break { display: none; }
  .hn .hn-contact__benefits { gap: 18px; }
  .hn .hn-contact__benefits li { gap: 10px; }
  .hn .hn-contact__benefits li > span { width: 48px; height: 48px; flex-basis: 48px; border-radius: 16px; }
  .hn .hn-contact__benefits svg { width: 28px; height: 28px; }
  .hn .hn-contact__benefits p { font-size: 11px; }
  .hn .hn-contact__form { width: 390px; }
  .hn .hn-contact__form-note { display: none; }
  .hn .hn-contact__map-card { left: 51%; width: 49%; top: 90px; padding: 12px; }
  .hn .hn-contact__map { height: 420px; }
  .hn .hn-contact__channels { flex-wrap: wrap; justify-content: flex-start; gap: 18px; padding-top: 22px; }
  .hn .hn-contact__note { display: none; }
}
@media (max-width: 1199px) {
  .hn .hn-contact { padding: 35px 0 40px; }
  .hn .hn-contact__copy { width: 100%; }
  .hn .hn-contact h2 { font-size: 54px; }
  .hn .hn-contact__description { font-size: 18px; max-width: 720px; }
  .hn .hn-contact__break { display: none; }
  .hn .hn-contact__benefits { gap: 28px; margin-top: 28px; }
  .hn .hn-contact__form { margin-top: 30px; max-width: 100%; }
  .hn .hn-contact__form-note, .hn .hn-contact__note { display: none; }
  .hn .hn-contact__map-card { position: relative; top: auto; left: auto; width: 100%; margin-top: 30px; }
  .hn .hn-contact__map { height: 380px; }
  .hn .hn-contact__channels { flex-wrap: wrap; gap: 20px; justify-content: flex-start; }
  .hn .hn-contact__background { width: 100%; opacity: .3; }
}
@media (max-width: 767px) {
  .hn .hn-contact__eyebrow { font-size: 11px; letter-spacing: 1.8px; }
  .hn .hn-contact h2 { font-size: 44px; letter-spacing: -1.2px; }
  .hn .hn-contact__description { font-size: 15px; }
  .hn .hn-contact__benefits { flex-direction: column; gap: 18px; }
  .hn .hn-contact__benefits p { font-size: 13px; }
  .hn .hn-contact__benefits li > span { width: 50px; height: 50px; flex-basis: 50px; border-radius: 16px; }
  .hn .hn-contact__form { padding: 20px 16px; }
  .hn .hn-contact__field { padding-left: 15px; gap: 12px; }
  .hn .hn-contact__field input { font-size: 13px; }
  .hn .hn-contact__consent { margin: 0; font-size: 11px; gap: 10px; }
  .hn .hn-contact__map-card { padding: 10px; }
  .hn .hn-contact__map { height: 350px; }
  .hn .hn-contact__office { padding: 10px; gap: 10px; }
  .hn .hn-contact__office > span { width: 46px; height: 46px; flex-basis: 46px; border-radius: 15px; }
  .hn .hn-contact__office strong { font-size: 16px; }
  .hn .hn-contact__office p { font-size: 11px; }
  .hn .hn-contact__office a { font-size: 12px; }
  .hn .hn-contact__channels { padding: 20px 5px 8px; gap: 18px; }
}

.hn .hn-guarantee { position: relative; isolation: isolate; min-height: 378px; padding: 49px 0 45px; margin-top: 14px; border-radius: 25px; overflow: hidden; background: linear-gradient(115deg,#182832,#101d27 65%,#17242b); color: #fff; }
.hn .hn-guarantee::after { content: ''; position: absolute; z-index: -1; right: -65px; top: 18px; width: 430px; height: 430px; background: url('/image/catalog/home-new/hero-house.webp') 100% 80%/1100px auto; border-radius: 50%; filter: blur(7px); opacity: .35; mask-image: radial-gradient(ellipse,#000 25%,transparent 70%); }
.hn .hn-guarantee__inner { width: 90%; max-width: 1730px; margin: 0 auto; display: grid; grid-template-columns: 485px 625px minmax(0,1fr); gap: 40px; }
.hn .hn-guarantee__eyebrow { display: inline-block; margin: 0 0 17px; padding: 7px 17px; border-radius: 12px; background: #f8fcff; color: #14213b; font-size: 14px; line-height: 1.5; font-weight: 600; letter-spacing: 2.5px; }
.hn .hn-guarantee h2 { margin: 0; font-size: 41px; font-weight: 600; line-height: 1.15; letter-spacing: -1.1px; color: #fff; text-align: left; text-transform: none; }
.hn .hn-guarantee h2 span { color: var(--hn-accent); }
.hn .hn-guarantee__description { margin: 23px 0 0; color: #edf2f5; font-size: 19px; font-weight: 400; line-height: 1.6; letter-spacing: -.5px; }
.hn .hn-guarantee__benefits { list-style: none; margin: 4px 0 0; padding: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 39px 25px; }
.hn .hn-guarantee__benefits li { display: flex; gap: 22px; min-width: 0; }
.hn .hn-guarantee__icon { display: grid; place-items: center; width: 77px; height: 77px; flex: 0 0 77px; background: #233b4c; border-radius: 22px; color: #f8fcff; }
.hn .hn-guarantee__icon svg { width: 42px; height: 42px; stroke-width: 2.5; }
.hn .hn-guarantee__benefits h3 { margin: 8px 0 5px; color: #f3f7fa; font-size: 17px; font-weight: 500; line-height: 1.5; letter-spacing: -.4px; text-align: left; text-transform: none; }
.hn .hn-guarantee__benefits p { margin: 0; color: #c6d1db; font-size: 14px; font-weight: 400; line-height: 1.7; letter-spacing: -.4px; }
.hn .hn-guarantee__promise { position: relative; padding: 0 0 0 64px; border-left: 1px solid #4a6272; margin-top: 14px; }
.hn .hn-guarantee__promise blockquote { position: relative; margin: 19px 0 0 50px; padding: 0; border: 0; background: transparent; font-family: 'Segoe Print','Comic Sans MS',cursive; font-size: 25px; font-style: italic; font-weight: 400; line-height: 1.3; color: #f1f5f7; transform: rotate(-7deg); }
.hn .hn-guarantee__quote-open, .hn .hn-guarantee__quote-close { position: absolute; font-family: Georgia,serif; font-size: 86px; font-style: normal; font-weight: 700; line-height: 1; color: #708b9f; }
.hn .hn-guarantee__quote-open { left: -63px; top: -39px; }
.hn .hn-guarantee__quote-close { bottom: -65px; right: 67px; }
.hn .hn-guarantee__promise > p { position: absolute; right: -47px; bottom: -21px; margin: 0; color: #edf3f5; font-size: 12px; font-weight: 500; line-height: 1.8; letter-spacing: 1px; }
.hn .hn-guarantee__promise > p::before { content: ''; position: absolute; right: calc(100% + 24px); top: 13px; width: 57px; height: 1px; background: #5a737b; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-guarantee__inner { width: 94%; grid-template-columns: 30% 42% minmax(0,1fr); gap: 25px; }
  .hn .hn-guarantee h2 { font-size: 30px; }
  .hn .hn-guarantee__description { font-size: 15px; }
  .hn .hn-guarantee__eyebrow { font-size: 11px; letter-spacing: 1.8px; }
  .hn .hn-guarantee__benefits { gap: 30px 16px; }
  .hn .hn-guarantee__benefits li { gap: 15px; }
  .hn .hn-guarantee__icon { width: 60px; height: 60px; flex-basis: 60px; border-radius: 18px; }
  .hn .hn-guarantee__icon svg { width: 34px; height: 34px; }
  .hn .hn-guarantee__benefits h3 { font-size: 14px; margin-top: 3px; }
  .hn .hn-guarantee__benefits p { font-size: 11px; }
  .hn .hn-guarantee__promise { padding-left: 22px; }
  .hn .hn-guarantee__promise blockquote { margin-left: 25px; font-size: 20px; }
  .hn .hn-guarantee__quote-open { font-size: 60px; left: -33px; top: -26px; }
  .hn .hn-guarantee__quote-close { font-size: 60px; bottom: -46px; right: 25px; }
  .hn .hn-guarantee__promise > p { right: 0; bottom: -22px; font-size: 10px; }
  .hn .hn-guarantee__promise > p::before { width: 30px; right: calc(100% + 15px); }
}
@media (max-width: 1199px) {
  .hn .hn-guarantee { padding: 35px 0; min-height: 0; border-radius: 22px; }
  .hn .hn-guarantee__inner { grid-template-columns: minmax(0,1fr); gap: 30px; }
  .hn .hn-guarantee h2 { font-size: 36px; }
  .hn .hn-guarantee__description { font-size: 17px; }
  .hn .hn-guarantee__eyebrow { font-size: 12px; letter-spacing: 2px; }
  .hn .hn-guarantee__benefits { gap: 30px; }
  .hn .hn-guarantee__benefits h3 { font-size: 17px; }
  .hn .hn-guarantee__benefits p { font-size: 14px; }
  .hn .hn-guarantee__promise { border-left: 0; border-top: 1px solid #4a6272; padding: 25px 35px 60px; margin-top: 0; }
  .hn .hn-guarantee__promise blockquote { font-size: 24px; max-width: 380px; margin-left: 45px; }
  .hn .hn-guarantee__promise > p { right: 0; bottom: 0; }
}
@media (max-width: 767px) {
  .hn .hn-guarantee h2 { font-size: 29px; letter-spacing: -.8px; }
  .hn .hn-guarantee__description { font-size: 14px; }
  .hn .hn-guarantee__benefits { grid-template-columns: minmax(0,1fr); gap: 25px; }
  .hn .hn-guarantee__benefits li { gap: 20px; }
  .hn .hn-guarantee__icon { width: 64px; height: 64px; flex-basis: 64px; border-radius: 19px; }
  .hn .hn-guarantee__icon svg { width: 35px; height: 35px; }
  .hn .hn-guarantee__benefits h3 { font-size: 16px; margin-top: 2px; }
  .hn .hn-guarantee__benefits p { font-size: 13px; }
  .hn .hn-guarantee__promise { padding: 20px 0 85px 20px; }
  .hn .hn-guarantee__promise blockquote { margin-left: 30px; font-size: 21px; }
  .hn .hn-guarantee__quote-open { font-size: 62px; left: -45px; top: -29px; }
  .hn .hn-guarantee__quote-close { font-size: 62px; bottom: -43px; right: 20px; }
  .hn .hn-guarantee__promise > p { font-size: 11px; }
}

@media (min-width: 1751px) {
  .hn .hn-guarantee__quote-close { right: auto; left: 100px; bottom: -54px; }
  .hn .hn-guarantee__benefits li:last-child p { font-size: 13px; letter-spacing: -.55px; }
}
.hn .hn-guarantee::after { background-position: 100% 0; }

.hn .hn-faq { position: relative; isolation: isolate; min-height: 921px; padding: 62px 0 38px; background: #f6fbff; overflow: hidden; }
.hn .hn-faq__background { position: absolute; left: 44%; top: 28px; width: 56%; height: calc(100% - 28px); object-fit: cover; object-position: 68% center; z-index: -3; }
.hn .hn-faq__veil { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,#f6fbff 0%,#f6fbfff5 38%,#f6fbff9c 47%,transparent 59%); }
.hn .hn-faq__inner { width: 90.5%; max-width: 1740px; margin: 0 auto; position: relative; }
.hn .hn-faq__copy { width: 758px; }
.hn .hn-faq__eyebrow { display: inline-block; padding: 7px 15px; border-radius: 12px; background: #def3ff; color: var(--hn-accent); font-size: 16px; font-weight: 600; line-height: 1.5; letter-spacing: 2.7px; margin: 0 0 26px; }
.hn .hn-faq h2 { margin: 0; font-size: 61px; font-weight: 700; line-height: 1.06; letter-spacing: -1.8px; color: var(--hn-text); text-align: left; text-transform: none; }
.hn .hn-faq h2 span { color: var(--hn-accent); }
.hn .hn-faq__description { margin: 21px 0 0; font-size: 21px; line-height: 1.5; letter-spacing: -.6px; color: #697f9d; }
.hn .hn-faq__list { display: grid; gap: 11px; margin-top: 26px; }
.hn .hn-faq__item { background: #ffffffdc; border-radius: 18px; padding: 0 24px; border: 1px solid transparent; box-shadow: 0 10px 22px #5481a606; }
.hn .hn-faq__item[open] { border-color: #d6edff; padding-bottom: 18px; }
.hn .hn-faq__item summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 63px; color: #142640; font-size: 19px; font-weight: 500; letter-spacing: -.5px; line-height: 1.35; cursor: pointer; list-style: none; }
.hn .hn-faq__item summary::-webkit-details-marker { display: none; }
.hn .hn-faq__item summary > span { position: relative; width: 40px; height: 40px; flex: 0 0 40px; border-radius: 50%; background: #edf5fc; color: #405b80; }
.hn .hn-faq__item summary > span::before, .hn .hn-faq__item summary > span::after { content: ''; position: absolute; left: 13px; top: 19px; width: 14px; height: 2px; background: currentColor; border-radius: 1px; }
.hn .hn-faq__item summary > span::after { transform: rotate(90deg); }
.hn .hn-faq__item[open] summary > span { background: var(--hn-accent); color: white; }
.hn .hn-faq__item[open] summary > span::after { display: none; }
.hn .hn-faq__item summary:hover { color: var(--hn-accent-dark); }
.hn .hn-faq__item summary:focus-visible { outline: 3px solid var(--hn-accent); outline-offset: 3px; border-radius: 12px; }
.hn .hn-faq__answer { padding: 15px 20px; border-radius: 16px; /* background: #edf6fd; */ color: #7d8fab; font-size: 17px; font-weight: 400; line-height: 1.5; letter-spacing: -.45px; }
.hn .hn-faq__note { position: absolute; left: 47%; top: 125px; color: #219ddc; font-family: 'Segoe Print','Comic Sans MS',cursive; font-size: 24px; font-style: italic; line-height: 1.25; text-align: center; transform: rotate(-12deg); }
.hn .hn-faq__note svg { display: block; width: 110px; height: 100px; margin: 5px 0 0 auto; stroke-width: 1.5; }
.hn .hn-faq__contacts { position: absolute; left: 45.9%; top: 350px; width: 380px; padding: 28px 26px; background: #fffffff2; border-radius: 19px; box-shadow: 0 15px 35px #486b8410; display: grid; gap: 30px; }
.hn .hn-faq__contacts > a { display: flex; align-items: center; gap: 16px; }
.hn .hn-faq__contact-icon { display: grid; place-items: center; width: 62px; height: 62px; flex: 0 0 62px; border-radius: 50%; color: var(--hn-accent); background: #e3f5ff; }
.hn .hn-faq__contact-icon svg { width: 31px; height: 31px; stroke-width: 2.8; }
.hn .hn-faq__contacts strong { display: block; font-size: 15px; font-weight: 500; line-height: 1.5; letter-spacing: -.4px; color: var(--hn-text); }
.hn .hn-faq__contacts small { display: block; font-size: 13px; line-height: 1.5; letter-spacing: -.4px; color: #7e91ae; }
.hn .hn-faq__contact-arrow { width: 27px; height: 27px; margin-left: auto; color: var(--hn-accent); stroke-width: 1.8; }
.hn .hn-faq__contacts a:hover strong { color: var(--hn-accent-dark); }
.hn .hn-faq__consultant { position: absolute; right: 8px; top: 593px; display: flex; gap: 12px; align-items: flex-start; width: 455px; min-height: 98px; padding: 22px 27px; border-radius: 31px; background: #0b1b22cc; color: white; backdrop-filter: blur(8px); }
.hn .hn-faq__status-dot { width: 14px; height: 14px; flex: 0 0 14px; margin-top: 6px; border-radius: 50%; background: #4cc984; }
.hn .hn-faq__consultant strong { font-size: 16px; font-weight: 500; line-height: 1.5; }
.hn .hn-faq__consultant p { margin: 3px 0 0; color: #c7d4dc; font-size: 14px; line-height: 1.5; }
.hn .hn-faq__greeting { position: absolute; right: 0; top: -12px; min-width: 242px; padding: 20px 24px; border-radius: 21px; background: #fff; color: #213551; font-size: 15px; line-height: 1.5; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-faq { padding-top: 45px; }
  .hn .hn-faq__inner { width: 94%; }
  .hn .hn-faq__copy { width: 53%; }
  .hn .hn-faq h2 { font-size: 46px; }
  .hn .hn-faq__eyebrow { font-size: 13px; }
  .hn .hn-faq__description { font-size: 17px; }
  .hn .hn-faq__break { display: none; }
  .hn .hn-faq__item { padding: 0 18px; }
  .hn .hn-faq__item summary { font-size: 15px; }
  .hn .hn-faq__answer { font-size: 14px; }
  .hn .hn-faq__background { left: 42%; width: 58%; }
  .hn .hn-faq__contacts { left: auto; right: 0; top: 310px; width: 330px; padding: 23px; gap: 25px; }
  .hn .hn-faq__contact-icon { width: 52px; height: 52px; flex-basis: 52px; }
  .hn .hn-faq__contacts strong { font-size: 13px; }
  .hn .hn-faq__contacts small { font-size: 11px; }
  .hn .hn-faq__note { left: auto; right: 265px; top: 130px; font-size: 20px; }
  .hn .hn-faq__consultant { width: 340px; right: 0; top: 700px; padding: 20px; }
  .hn .hn-faq__greeting { min-width: 190px; top: -53px; font-size: 13px; padding: 15px; }
}
@media (max-width: 1199px) {
  .hn .hn-faq { padding-top: 35px; min-height: 0; }
  .hn .hn-faq__copy { width: 100%; }
  .hn .hn-faq h2 { font-size: 45px; }
  .hn .hn-faq__eyebrow { font-size: 13px; }
  .hn .hn-faq__description { font-size: 18px; }
  .hn .hn-faq__break { display: none; }
  .hn .hn-faq__background { opacity: .2; left: 0; top: 0; width: 100%; height: 100%; }
  .hn .hn-faq__veil { background: #f6fbffb3; }
  .hn .hn-faq__note, .hn .hn-faq__consultant { display: none; }
  .hn .hn-faq__contacts { position: relative; left: auto; top: auto; width: 100%; margin-top: 28px; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; padding: 25px; }
  .hn .hn-faq__contacts > a { gap: 12px; }
  .hn .hn-faq__contact-icon { width: 48px; height: 48px; flex-basis: 48px; }
  .hn .hn-faq__contacts strong { font-size: 12px; }
  .hn .hn-faq__contacts small { font-size: 11px; }
  .hn .hn-faq__contact-arrow { display: none; }
}
@media (max-width: 767px) {
  .hn .hn-faq h2 { font-size: 32px; letter-spacing: -1px; }
  .hn .hn-faq__eyebrow { font-size: 11px; letter-spacing: 1.7px; }
  .hn .hn-faq__description { font-size: 15px; }
  .hn .hn-faq__item { padding: 0 16px; }
  .hn .hn-faq__item summary { min-height: 72px; font-size: 14px; gap: 12px; }
  .hn .hn-faq__item summary > span { width: 32px; height: 32px; flex-basis: 32px; }
  .hn .hn-faq__item summary > span::before, .hn .hn-faq__item summary > span::after { left: 9px; top: 15px; }
  .hn .hn-faq__answer { padding: 14px; font-size: 13px; }
  .hn .hn-faq__contacts { grid-template-columns: minmax(0,1fr); gap: 24px; padding: 24px; }
  .hn .hn-faq__contacts strong { font-size: 14px; }
  .hn .hn-faq__contacts small { font-size: 12px; }
  .hn .hn-faq__contact-arrow { display: block; }
}

@media (min-width: 1200px) { .hn .hn-faq__background { mask-image: linear-gradient(90deg,transparent 0%,#000 13%); } }
@media (min-width: 1751px) { .hn .hn-faq__consultant { width: 475px; } }

.hn .hn-final-cta { position: relative; isolation: isolate; min-height: 381px; margin-top: 32px; border-radius: 32px 32px 0 0; overflow: hidden; background: #edf8ff; padding: 43px 0 36px; }
.hn .hn-final-cta__background { position: absolute; left: 0; top: 0; width: 49%; height: 100%; object-fit: cover; object-position: right center; z-index: -3; }
.hn .hn-final-cta__veil { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,transparent 0%,transparent 29%,#eff8ff7a 37%,#eff8fff2 46%,#edf8ff 62%); }
.hn .hn-final-cta__inner { display: grid; grid-template-columns: minmax(0,1fr) 382px; gap: 56px; margin-left: 42.5%; margin-right: 5.4%; }
.hn .hn-final-cta__eyebrow { display: inline-block; margin: 0 0 25px; padding: 6px 14px; border-radius: 12px; color: var(--hn-accent); background: #d8f1ff; font-size: 13px; line-height: 1.5; font-weight: 600; letter-spacing: 2px; }
.hn .hn-final-cta h2 { margin: 0; color: var(--hn-text); font-size: 47px; font-weight: 700; line-height: 1.05; letter-spacing: -1.4px; text-align: left; text-transform: none; }
.hn .hn-final-cta h2 span { color: var(--hn-accent); }
.hn .hn-final-cta__copy > p:not(.hn-final-cta__eyebrow) { margin: 17px 0 0; font-size: 19px; line-height: 1.5; letter-spacing: -.5px; color: #6d819e; font-weight: 400; }
.hn .hn-final-cta__button { height: 70px; color: white; background: var(--hn-accent); font-size: 20px; font-weight: 500; gap: 18px; }
.hn .hn-final-cta__button:hover { background: var(--hn-accent-dark); }
.hn .hn-final-cta__action > ul { list-style: none; padding: 0; margin: 18px 0 28px; display: grid; gap: 9px; }
.hn .hn-final-cta__action li { position: relative; padding-left: 39px; font-size: 14px; line-height: 1.6; letter-spacing: -.4px; color: #7c8fab; }
.hn .hn-final-cta__action li::before { content: '✓'; position: absolute; left: 0; top: 0; width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; background: var(--hn-accent); color: white; font-family: Arial,sans-serif; font-size: 16px; }
.hn .hn-final-cta__privacy { display: flex; align-items: center; gap: 14px; }
.hn .hn-final-cta__privacy > span { display: grid; place-items: center; width: 59px; height: 59px; flex: 0 0 59px; border-radius: 19px; background: #dff2ff; color: #224a6c; }
.hn .hn-final-cta__privacy svg { width: 35px; height: 35px; stroke-width: 2.5; }
.hn .hn-final-cta__privacy p { margin: 0; color: #7c8fab; font-size: 13px; line-height: 1.5; letter-spacing: -.3px; }
.hn .hn-final-cta__note { position: absolute; top: 92px; left: 3.1%; font-family: 'Segoe Print','Comic Sans MS',cursive; font-size: 24px; font-style: italic; line-height: 1.25; color: white; transform: rotate(-12deg); }
.hn .hn-final-cta__note svg { display: block; width: 95px; height: 80px; margin: -5px 0 0 65px; stroke-width: 1.5; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-final-cta__inner { margin-left: 36%; margin-right: 3%; grid-template-columns: minmax(0,1fr) 310px; gap: 35px; }
  .hn .hn-final-cta h2 { font-size: 36px; }
  .hn .hn-final-cta__copy > p:not(.hn-final-cta__eyebrow) { font-size: 16px; }
  .hn .hn-final-cta__break { display: none; }
  .hn .hn-final-cta__button { font-size: 18px; }
  .hn .hn-final-cta__action li { font-size: 12px; }
  .hn .hn-final-cta__privacy p { font-size: 11px; }
  .hn .hn-final-cta__note { font-size: 21px; }
}
@media (max-width: 1199px) {
  .hn .hn-final-cta { padding: 35px 5%; min-height: 0; border-radius: 26px 26px 0 0; margin-top: 20px; }
  .hn .hn-final-cta__inner { margin: 0; grid-template-columns: minmax(0,1fr) 310px; gap: 35px; }
  .hn .hn-final-cta h2 { font-size: 38px; }
  .hn .hn-final-cta__copy > p:not(.hn-final-cta__eyebrow) { font-size: 16px; }
  .hn .hn-final-cta__background { width: 100%; opacity: .2; }
  .hn .hn-final-cta__veil { background: #eff8ffbd; }
  .hn .hn-final-cta__note { display: none; }
  .hn .hn-final-cta__break { display: none; }
  .hn .hn-final-cta__button { font-size: 18px; }
  .hn .hn-final-cta__action li { font-size: 12px; }
  .hn .hn-final-cta__privacy p { font-size: 11px; }
}
@media (max-width: 767px) {
  .hn .hn-final-cta__inner { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .hn .hn-final-cta h2 { font-size: 31px; letter-spacing: -.9px; }
  .hn .hn-final-cta__eyebrow { font-size: 11px; margin-bottom: 20px; }
  .hn .hn-final-cta__copy > p:not(.hn-final-cta__eyebrow) { font-size: 15px; }
  .hn .hn-final-cta__button { font-size: 17px; height: 66px; }
  .hn .hn-final-cta__action li { font-size: 13px; }
  .hn .hn-final-cta__privacy p { font-size: 12px; }
}

.hn .hn-project-start { position: relative; isolation: isolate; background: #edf8ff; min-height: 839px; padding: 54px 0 55px; overflow: hidden; }
.hn .hn-project-start__background { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: right center; z-index: -3; }
.hn .hn-project-start__veil { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,#f6fbfff2 0%,#f6fbfff2 27%,#f6fbff9c 44%,transparent 64%),linear-gradient(0deg,transparent 0%,#f7fbff70 68%,#f7fbff70 100%); }
.hn .hn-project-start__inner { position: relative; width: 90%; max-width: 1730px; margin: 0 auto; display: grid; grid-template-columns: 792px 490px; gap: 56px; }
.hn .hn-project-start__eyebrow { display: inline-block; padding: 6px 16px; background: #d9f2ff; border-radius: 12px; margin: 0 0 24px; color: var(--hn-accent); font-size: 13px; font-weight: 600; letter-spacing: 3px; line-height: 1.5; }
.hn .hn-project-start h2 { margin: 0; font-size: 59px; font-weight: 700; line-height: 1.07; letter-spacing: -1.7px; text-align: left; text-transform: none; color: var(--hn-text); }
.hn .hn-project-start h2 span { color: var(--hn-accent); }
.hn .hn-project-start__description { margin: 20px 0 0; font-size: 20px; line-height: 1.5; letter-spacing: -.5px; color: #6e819e; }
.hn .hn-project-start__description strong { font-weight: 600; }
.hn .hn-project-start__benefits { list-style: none; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 15px; margin: 26px 0 0; padding: 0; }
.hn .hn-project-start__benefits li { padding: 13px 21px 15px; border-radius: 16px; min-height: 205px; background: #ffffff9c; }
.hn .hn-project-start__benefits li > span { display: grid; place-items: center; width: 66px; height: 66px; background: #e0f4ff; border-radius: 21px; color: var(--hn-accent); }
.hn .hn-project-start__benefits svg { width: 35px; height: 35px; stroke-width: 3; }
.hn .hn-project-start__benefits h3 { margin: 12px 0 13px; font-size: 17px; font-weight: 600; line-height: 1.3; letter-spacing: -.6px; color: var(--hn-text); text-align: left; text-transform: none; }
.hn .hn-project-start__benefits p { margin: 0; font-size: 13px; line-height: 1.6; letter-spacing: -.35px; color: #7b8eaa; }
.hn .hn-project-start__example { margin-top: 47px; min-height: 158px; padding: 24px; display: flex; align-items: center; gap: 28px; background: linear-gradient(110deg,#182b3bf2,#122330ed); border-radius: 24px; color: white; }
.hn .hn-project-start__example-image { display: block; width: 106px; height: 110px; flex: 0 0 106px; border-radius: 15px; background: url('/image/catalog/home-new/loss-question-thumbnails.webp') 100% 100%/200% 300%; }
.hn .hn-project-start__example h3 { margin: 0 0 8px; font-size: 20px; font-weight: 500; line-height: 1.3; letter-spacing: -.5px; color: white; text-align: left; text-transform: none; }
.hn .hn-project-start__example p { margin: 0; font-size: 13px; line-height: 1.6; letter-spacing: -.3px; color: #c6d4df; }
.hn .hn-project-start__example > a { display: flex; align-items: center; gap: 18px; padding-left: 29px; margin-left: auto; border-left: 1px solid #516979; min-height: 105px; flex-shrink: 0; }
.hn .hn-project-start__example-icon { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 50%; background: #ffffff29; }
.hn .hn-project-start__example-icon svg { width: 29px; height: 29px; stroke-width: 1.8; }
.hn .hn-project-start__example a strong { display: block; font-size: 13px; font-weight: 500; line-height: 1.5; }
.hn .hn-project-start__example a small { font-size: 12px; line-height: 1.5; color: #c6d4df; }
.hn .hn-project-start__form { align-self: start; margin-top: 54px; padding: 32px 38px 29px; border-radius: 23px; background: #fafdfff5; }
.hn .hn-project-start__form > h3 { margin: 0 0 4px; color: var(--hn-text); font-size: 28px; line-height: 1.4; font-weight: 600; letter-spacing: -.7px; text-align: left; text-transform: none; }
.hn .hn-project-start__form-description { margin: 0 0 23px; font-size: 16px; line-height: 1.5; letter-spacing: -.4px; color: #7c8eaa; }
.hn .hn-project-start__field { display: flex; align-items: center; gap: 18px; padding: 14px 20px; min-height: 51px; border-radius: 15px; background: #eaf4fc; margin-bottom: 11px; }
.hn .hn-project-start__field > svg { width: 24px; height: 24px; color: #7f91ad; stroke-width: 2.4; }
.hn .hn-project-start__field input, .hn .hn-project-start__field textarea { min-width: 0; width: 100%; margin: 0; padding: 0; border: 0; background: transparent; color: #263e5a; font: inherit; font-size: 14px; font-weight: 400; line-height: 1.5; box-shadow: none; }
.hn .hn-project-start__field input::placeholder, .hn .hn-project-start__field textarea::placeholder { color: #8497b2; opacity: 1; }
.hn .hn-project-start__field--task { align-items: flex-start; min-height: 91px; }
.hn .hn-project-start__field textarea { resize: vertical; min-height: 63px; max-height: 240px; }
.hn .hn-project-start__submit { width: 100%; height: 72px; margin-top: 15px; background: var(--hn-accent); color: white; border: 0; padding: 0; font-size: 17px; font-weight: 500; gap: 17px; cursor: pointer; }
.hn .hn-project-start__submit:hover { background: var(--hn-accent-dark); }
.hn .hn-project-start__submit:disabled { cursor: wait; opacity: .65; }
.hn .hn-project-start__consent { display: flex; align-items: flex-start; gap: 10px; margin: 17px 0 0; font-size: 11px; font-weight: 400; line-height: 1.5; color: #7c8eaa; }
.hn .hn-project-start__consent input { width: 18px; height: 18px; flex: 0 0 18px; margin: 0; accent-color: var(--hn-accent); }
.hn .hn-project-start__consent a { text-decoration: underline; }
.hn .hn-project-start__privacy { display: flex; align-items: center; gap: 13px; margin-top: 17px; color: #7f91ad; }
.hn .hn-project-start__privacy svg { width: 29px; height: 29px; }
.hn .hn-project-start__privacy p { margin: 0; font-size: 12px; line-height: 1.5; letter-spacing: -.3px; }
.hn .hn-project-start__message { margin: 14px 0 0; color: #3c5673; font-size: 13px; line-height: 1.5; }
.hn .hn-project-start__message:empty { display: none; }
.hn .hn-project-start__note { position: absolute; right: -43px; top: 85px; font-family: 'Segoe Print','Comic Sans MS',cursive; font-size: 22px; font-style: italic; line-height: 1.3; color: white; transform: rotate(-12deg); }
.hn .hn-project-start__note svg { display: block; width: 110px; height: 120px; margin: 7px 0 0 4px; stroke-width: 1.5; }
.hn .hn-project-start__bottom-note { position: absolute; right: -39px; bottom: -32px; color: #e9f1e8; font-family: 'Segoe Print','Comic Sans MS',cursive; font-style: italic; font-size: 17px; line-height: 1.3; transform: rotate(-8deg); }
.hn .hn-project-start__bottom-note span { display: block; width: 45px; height: 1px; background: #e9f1e8; margin-top: 18px; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-project-start__inner { width: 94%; grid-template-columns: minmax(0,1fr) 440px; gap: 40px; }
  .hn .hn-project-start h2 { font-size: 48px; }
  .hn .hn-project-start__description { font-size: 17px; }
  .hn .hn-project-start__break { display: none; }
  .hn .hn-project-start__benefits { gap: 12px; }
  .hn .hn-project-start__benefits li { padding: 15px; }
  .hn .hn-project-start__benefits h3 { font-size: 14px; }
  .hn .hn-project-start__benefits p { font-size: 11px; }
  .hn .hn-project-start__example { padding: 20px; gap: 20px; flex-wrap: wrap; }
  .hn .hn-project-start__example h3 { font-size: 17px; }
  .hn .hn-project-start__example > a { margin: 0; padding: 15px 0 0; border-left: 0; border-top: 1px solid #516979; min-height: 0; width: 100%; }
  .hn .hn-project-start__form { padding: 30px; }
  .hn .hn-project-start__note, .hn .hn-project-start__bottom-note { display: none; }
}
@media (max-width: 1199px) {
  .hn .hn-project-start { padding: 38px 0; }
  .hn .hn-project-start__inner { grid-template-columns: minmax(0,1fr); gap: 30px; }
  .hn .hn-project-start h2 { font-size: 45px; }
  .hn .hn-project-start__description { font-size: 18px; }
  .hn .hn-project-start__break { display: none; }
  .hn .hn-project-start__form { width: 520px; max-width: 100%; justify-self: center; margin-top: 0; }
  .hn .hn-project-start__note, .hn .hn-project-start__bottom-note { display: none; }
  .hn .hn-project-start__example { gap: 22px; }
  .hn .hn-project-start__example h3 { font-size: 18px; }
  .hn .hn-project-start__example > a { padding-left: 22px; gap: 14px; }
  .hn .hn-project-start__background { opacity: .45; }
}
@media (max-width: 767px) {
  .hn .hn-project-start h2 { font-size: 34px; letter-spacing: -1px; }
  .hn .hn-project-start__eyebrow { font-size: 10px; letter-spacing: 1.5px; }
  .hn .hn-project-start__description { font-size: 15px; }
  .hn .hn-project-start__benefits { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .hn .hn-project-start__benefits li { padding: 16px; min-height: 195px; }
  .hn .hn-project-start__benefits h3 { font-size: 14px; }
  .hn .hn-project-start__benefits p { font-size: 12px; }
  .hn .hn-project-start__example { margin-top: 28px; padding: 20px; gap: 18px; flex-wrap: wrap; }
  .hn .hn-project-start__example-image { width: 80px; height: 85px; flex-basis: 80px; }
  .hn .hn-project-start__example > div { flex: 1; }
  .hn .hn-project-start__example h3 { font-size: 15px; }
  .hn .hn-project-start__example p { font-size: 12px; }
  .hn .hn-project-start__example > a { width: 100%; min-height: 0; padding: 17px 0 0; margin: 0; border-left: 0; border-top: 1px solid #516979; }
  .hn .hn-project-start__form { padding: 25px 20px; }
  .hn .hn-project-start__form > h3 { font-size: 24px; }
  .hn .hn-project-start__form-description { font-size: 14px; }
  .hn .hn-project-start__field { padding: 14px; gap: 12px; }
  .hn .hn-project-start__field input, .hn .hn-project-start__field textarea { font-size: 12px; }
  .hn .hn-project-start__submit { font-size: 15px; height: 66px; }
}

/* Reuse the live footer and its links only in the new-home preview. */
.site-footer.hn-footer { position: relative; margin: 12px 0 0; padding: 0; border-radius: 27px 27px 0 0; background: linear-gradient(120deg,#13232e,#0d1c27); color: #c0ccd8; font-family: 'Montserrat',sans-serif; }
.site-footer.hn-footer .container { width: 90%; max-width: 1730px; padding: 0; margin: 0 auto; }
.site-footer.hn-footer .site-footer__main { padding: 49px 0 25px; background: transparent; border: 0; }
.site-footer.hn-footer .site-footer__grid { display: grid; grid-template-columns: 1.5fr .64fr .83fr 1.12fr 1.13fr; gap: 42px; align-items: start; }
.site-footer.hn-footer .site-footer__col { min-width: 0; padding: 0; }
.site-footer.hn-footer .site-footer__col:nth-child(n+3) { border-left: 1px solid #293f4f; padding-left: 42px; }
.site-footer.hn-footer .site-footer__logo { padding: 0; margin: 0 0 25px; }
.site-footer.hn-footer .hn-footer__brand { display: flex; gap: 15px; align-items: center; color: white; text-decoration: none; }
.site-footer.hn-footer .hn-footer__brand svg { width: 55px; height: 57px; flex: 0 0 55px; fill: currentColor; stroke: none; color: white; }
.site-footer.hn-footer .hn-footer__brand > span { border-left: 1px solid #365064; padding-left: 14px; }
.site-footer.hn-footer .hn-footer__brand strong { display: block; font-size: 18px; font-weight: 700; line-height: 1.5; letter-spacing: -.5px; }
.site-footer.hn-footer .hn-footer__brand small { display: block; font-size: 12px; line-height: 1.5; color: #d4dce3; }
.site-footer.hn-footer .site-footer__tagline { margin: 0; max-width: 370px; font-size: 14px; line-height: 1.75; font-weight: 400; color: #b9c9d8; letter-spacing: -.3px; }
.site-footer.hn-footer .site-footer__social { display: flex; gap: 15px; margin-top: 21px; }
.site-footer.hn-footer .site-footer__social-link { display: grid; place-items: center; width: 51px; height: 51px; border: 1px solid #355165; border-radius: 50%; background: #1b3141; }
.site-footer.hn-footer .site-footer__social-link img { width: 27px; height: 27px; }
.site-footer.hn-footer .site-footer__title { margin: 3px 0 17px; padding: 0; color: #f4f7fa; font-size: 16px; font-weight: 600; line-height: 1.5; text-transform: none; letter-spacing: -.4px; }
.site-footer.hn-footer .site-footer__nav, .site-footer.hn-footer .site-footer__list { list-style: none; padding: 0; margin: 0; display: grid; gap: 7px; }
.site-footer.hn-footer .site-footer__nav li, .site-footer.hn-footer .site-footer__list li { margin: 0; padding: 0; }
.site-footer.hn-footer .site-footer__nav a, .site-footer.hn-footer .site-footer__list a { display: inline; padding: 0; color: #b9c9d8; font-size: 13px; font-weight: 400; line-height: 1.6; text-decoration: none; letter-spacing: -.3px; }
.site-footer.hn-footer a:hover { color: #079ddc; }
.site-footer.hn-footer a:focus-visible, .site-footer.hn-footer summary:focus-visible { outline: 3px solid #079ddc; outline-offset: 5px; }
.site-footer.hn-footer .site-footer__phone-block { margin: 0 0 15px; }
.site-footer.hn-footer .site-footer__phone-block p { margin: 0; }
.site-footer.hn-footer .site-footer__phone-block a { color: #f2f6fa; font-size: 17px; line-height: 1.5; font-weight: 500; text-decoration: none; white-space: nowrap; }
.site-footer.hn-footer .site-footer__hours-block { margin: 0 0 18px; color: #c0cddb; font-size: 13px; line-height: 1.6; }
.site-footer.hn-footer .site-footer__hours-block p { margin: 0; }
.site-footer.hn-footer .site-footer__actions { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; margin-top: 20px; }
.site-footer.hn-footer .site-footer__btn { display: inline-flex; align-items: center; gap: 10px; padding: 0; min-height: 0; border: 0; background: transparent; color: #079ddc; font-size: 13px; line-height: 1.6; font-weight: 400; border-radius: 0; text-decoration: none; box-shadow: none; }
.site-footer.hn-footer .hn-footer__useful > p { margin: 0 0 18px; color: #b9c9d8; font-size: 13px; line-height: 1.6; font-weight: 400; }
.site-footer.hn-footer .site-footer__cta-links { display: grid; gap: 8px; margin: 0; padding: 0; }
.site-footer.hn-footer .site-footer__cta-links a { margin: 0; padding: 0; border: 0; background: transparent; font-size: 13px; color: #b9c9d8; font-weight: 400; line-height: 1.6; text-decoration: none; }
.site-footer.hn-footer .hn-footer__details { margin-top: 19px; color: #b9c9d8; font-size: 12px; line-height: 1.6; }
.site-footer.hn-footer .hn-footer__details summary { cursor: pointer; color: #d4e0eb; padding: 0 0 7px; }
.site-footer.hn-footer .hn-footer__details .site-footer__list { padding-top: 7px; }
.site-footer.hn-footer .hn-footer__details .site-footer__cta-card { margin: 12px 0 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
.site-footer.hn-footer .hn-footer__details .site-footer__cta-card strong { font-size: 13px; font-weight: 500; color: white; }
.site-footer.hn-footer .hn-footer__details .site-footer__cta-card p { font-size: 12px; line-height: 1.6; color: #b9c9d8; margin: 8px 0; }
.site-footer.hn-footer .site-footer__bottom { padding: 0 0 36px; margin: 0; border: 0; background: transparent; }
.site-footer.hn-footer .site-footer__bottom-inner { display: block; }
.site-footer.hn-footer .site-footer__bottom-left { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; width: 100%; }
.site-footer.hn-footer .site-footer__copyright { font-size: 12px; line-height: 1.65; font-weight: 400; color: #8097ad; max-width: 470px; }
.site-footer.hn-footer .site-footer__copyright p { margin: 0; }
.site-footer.hn-footer .site-footer__copyright a { color: #8097ad; text-decoration: none; }
.site-footer.hn-footer .site-footer__legal { display: flex; gap: 25px; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; }
.site-footer.hn-footer .site-footer__legal li { margin: 0; padding: 0; }
.site-footer.hn-footer .site-footer__legal a { color: #8097ad; font-size: 12px; line-height: 1.6; font-weight: 400; text-decoration: none; }
@media (min-width: 1200px) and (max-width: 1599px) {
  .site-footer.hn-footer .container { width: 94%; }
  .site-footer.hn-footer .site-footer__grid { grid-template-columns: 1.3fr .8fr .8fr 1fr 1fr; gap: 25px; }
  .site-footer.hn-footer .site-footer__col:nth-child(n+3) { padding-left: 25px; }
  .site-footer.hn-footer .hn-footer__brand { gap: 10px; }
  .site-footer.hn-footer .hn-footer__brand strong { font-size: 14px; }
  .site-footer.hn-footer .hn-footer__brand small { font-size: 10px; }
  .site-footer.hn-footer .hn-footer__brand svg { width: 44px; height: 46px; flex-basis: 44px; }
  .site-footer.hn-footer .site-footer__phone-block a { font-size: 15px; }
}
@media (max-width: 1199px) {
  .site-footer.hn-footer .site-footer__grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 30px; }
  .site-footer.hn-footer .site-footer__col--brand { grid-column: 1/-1; }
  .site-footer.hn-footer .site-footer__col:nth-child(n+3) { border-left: 0; padding-left: 0; }
  .site-footer.hn-footer .site-footer__tagline { max-width: 640px; }
  .site-footer.hn-footer .site-footer__bottom-left { flex-direction: column; align-items: flex-start; gap: 20px; }
}
@media (max-width: 767px) {
  .site-footer.hn-footer .site-footer__main { padding-top: 35px; }
  .site-footer.hn-footer .site-footer__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 27px 22px; }
  .site-footer.hn-footer .hn-footer__brand strong { font-size: 17px; }
  .site-footer.hn-footer .site-footer__title { font-size: 15px; }
  .site-footer.hn-footer .site-footer__col:nth-child(4) { grid-column: 1/-1; }
  .site-footer.hn-footer .hn-footer__useful { grid-column: 1/-1; }
  .site-footer.hn-footer .site-footer__legal { gap: 10px 20px; }
  .site-footer.hn-footer .site-footer__copyright { font-size: 11px; }
  .site-footer.hn-footer .site-footer__bottom { padding-bottom: 30px; }
}

.site-footer.hn-footer #logoburlakniz { margin: 0 0 25px; }
.site-footer.hn-footer #cop { padding: 0 0 36px; }
.site-footer.hn-footer .site-footer__bottom-left { flex-direction: row; max-width: none; }
.site-footer.hn-footer #coptext { width: auto; max-width: 470px; flex: 0 1 470px; }
@media (max-width: 1199px) {
  .site-footer.hn-footer .site-footer__bottom-left { flex-direction: column; align-items: flex-start; }
  .site-footer.hn-footer #coptext { flex: none; max-width: 100%; }
}

/* =====================================================================
   POLISH v2 — единая система иконок.
   Набор иконок: собственные контуры в стиле Lucide (ISC), сетка 24px, линия 1.75, скругления round.
   Толщина линии задаётся один раз (на <use>) и действует во всех контекстах: перебивает старые stroke-width.
   ===================================================================== */
.hn { --hn-icon-sw: 1.75; }
.hn svg use { stroke-width: var(--hn-icon-sw); }
.hn .hn-brand__icon use { stroke: none; }
.hn svg:has(use[href="#hn-star"]) { fill: currentColor; stroke: none; }

/* Галочки и плюс вместо текстовых символов */
.hn .hn-passport__check svg { width: 70%; height: 70%; color: #fff; }
.hn .hn-passport__check svg use { stroke-width: 3; }
.hn .hn-history-card__check svg { width: 62%; height: 62%; color: #fff; }
.hn .hn-history-card__check svg use { stroke-width: 3; }
.hn .hn-step__add span svg { width: 16px; height: 16px; }
.hn .hn-step__add span svg use { stroke-width: 2.4; }

.hn .hn-audience-card__content li::before,
.hn .hn-final-cta__action li::before {
  content: ''; font-size: 0;
  background: var(--hn-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5.5 12.5 4.2 4.2 8.8-9.2'/%3E%3C/svg%3E") center / 62% no-repeat;
}

/* Звёзды отзывов — векторные */
.hn .hn-review-card__stars { display: flex; gap: 3px; font-size: 0; letter-spacing: 0; color: #f5a623; }
.hn .hn-review-card__stars svg { width: 20px; height: 20px; }

/* =====================================================================
   POLISH v2 · A. Рукописные пометки — свой шрифт (Caveat, SIL OFL), чтобы на любом устройстве
   они выглядели одинаково: Segoe Print есть только в Windows.
   ===================================================================== */
@font-face { font-family: 'HnHand'; src: url('/image/catalog/home-new/fonts/caveat-cyrillic.woff2') format('woff2'); font-weight: 400 700; font-style: normal; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'HnHand'; src: url('/image/catalog/home-new/fonts/caveat-latin.woff2') format('woff2'); font-weight: 400 700; font-style: normal; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
.hn { --hn-hand: 'HnHand', 'Segoe Print', 'Comic Sans MS', cursive; }
.hn .hn-hero__note, .hn .hn-stats__note, .hn .hn-systems__note, .hn .hn-systems__caption,
.hn .hn-passport__header-note, .hn .hn-passport__photo-note, .hn .hn-passport__scene-note,
.hn .hn-steps__note, .hn .hn-step__handnote, .hn .hn-audience-card__note, .hn .hn-community-stats__note,
.hn .hn-loss__note, .hn .hn-loss__bottom-note, .hn .hn-history__note, .hn .hn-history-cta__note,
.hn .hn-qr-access__note, .hn .hn-qr-review__note p, .hn .hn-project-process__note, .hn .hn-reviews__note,
.hn .hn-contact__form-note, .hn .hn-contact__note, .hn .hn-guarantee__promise blockquote,
.hn .hn-faq__note, .hn .hn-final-cta__note, .hn .hn-project-start__note, .hn .hn-project-start__bottom-note {
  font-family: var(--hn-hand); font-style: normal; font-weight: 600; letter-spacing: 0; font-size-adjust: .5;
}

/* =====================================================================
   POLISH v2 · B. Десктоп (≥1200px): единые поля, ритм и типографика.
   Раньше у каждой секции были свои ширины (края 71 / 43 / 37 / 32 / 30 / 24 px) — теперь один отступ --hn-edge.
   ===================================================================== */
@media (min-width: 1200px) {
  .hn {
    --hn-edge: clamp(32px, 4.2vw, 88px);
    --hn-y: clamp(64px, 5.2vw, 100px);
    --hn-h2: clamp(38px, 3.3vw, 60px);
    --hn-h2-sm: clamp(30px, 2.4vw, 42px);
    --hn-lead: clamp(17px, 1.18vw, 21px);
    --hn-text-2: #3f5573;
    --hn-text-3: #5b6f8c;
  }
  .hn .hn-container, .hn .hn-systems__inner, .hn .hn-steps__container, .hn .hn-audience__inner,
  .hn .hn-community-stats__inner, .hn .hn-loss__inner, .hn .hn-history__inner, .hn .hn-qr-access__inner,
  .hn .hn-reviews__inner, .hn .hn-contact__inner, .hn .hn-guarantee__inner, .hn .hn-faq__inner,
  .hn .hn-project-start__inner, .hn .hn-catalog__panel {
    width: auto; max-width: none; margin-left: var(--hn-edge); margin-right: var(--hn-edge);
  }
  .hn .hn-passport-summary, .hn .hn-qr-access__summary { margin-left: var(--hn-edge); margin-right: var(--hn-edge); }
  .hn .hn-steps-trust { margin-left: var(--hn-edge); margin-right: var(--hn-edge); }
  .hn .hn-loss-solution, .hn .hn-qr-review { padding-left: var(--hn-edge); padding-right: var(--hn-edge); }
  .hn .hn-project-process { padding-left: var(--hn-edge); padding-right: var(--hn-edge); }
  .hn .hn-history-cta { padding-right: var(--hn-edge); }
  .hn .hn-final-cta__inner { margin-right: var(--hn-edge); }
  .hn .hn-project-process__copy, .hn .hn-steps__header, .hn .hn-history-cta__panel { }
  .hn .hn-project-process__copy { padding-left: 0; }
  .hn .hn-steps__header { margin-left: 0; }
}

/* Единая «плашка» над заголовком */
.hn .hn-systems__eyebrow, .hn .hn-passport__eyebrow, .hn .hn-steps__eyebrow, .hn .hn-audience__eyebrow,
.hn .hn-loss__eyebrow, .hn .hn-history__eyebrow, .hn .hn-qr-access__eyebrow, .hn .hn-project-process__eyebrow,
.hn .hn-reviews__eyebrow, .hn .hn-contact__eyebrow, .hn .hn-guarantee__eyebrow, .hn .hn-faq__eyebrow,
.hn .hn-final-cta__eyebrow, .hn .hn-project-start__eyebrow {
  display: inline-flex; align-items: center; gap: 9px; padding: 8px 16px; border-radius: 999px;
  background: #e1f3fc; color: #0679ad; font-size: 13px; line-height: 1.3; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
}
.hn .hn-systems__eyebrow::before, .hn .hn-passport__eyebrow::before, .hn .hn-steps__eyebrow::before, .hn .hn-audience__eyebrow::before,
.hn .hn-loss__eyebrow::before, .hn .hn-history__eyebrow::before, .hn .hn-qr-access__eyebrow::before, .hn .hn-project-process__eyebrow::before,
.hn .hn-reviews__eyebrow::before, .hn .hn-contact__eyebrow::before, .hn .hn-guarantee__eyebrow::before, .hn .hn-faq__eyebrow::before,
.hn .hn-final-cta__eyebrow::before, .hn .hn-project-start__eyebrow::before {
  content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--hn-accent); flex: 0 0 7px;
}
.hn .hn-reviews__eyebrow, .hn .hn-guarantee__eyebrow { background: #ffffff1f; color: #bfe9ff; }
.hn .hn-reviews__eyebrow::before, .hn .hn-guarantee__eyebrow::before { background: #5cc6f2; }

/* =====================================================================
   POLISH v2 · C. Заголовки и вводные абзацы (≥1200px): одна шкала вместо 15 разных размеров.
   ===================================================================== */
@media (min-width: 1200px) {
  .hn .hn-systems__title, .hn .hn-passport__title, .hn .hn-steps h2, .hn .hn-audience h2, .hn .hn-loss h2,
  .hn .hn-history h2, .hn .hn-qr-access h2, .hn .hn-project-process h2, .hn .hn-contact h2, .hn .hn-faq h2,
  .hn .hn-project-start h2 {
    font-size: var(--hn-h2); font-weight: 700; line-height: 1.08; letter-spacing: -.035em; text-wrap: balance;
  }
  .hn .hn-systems__lead, .hn .hn-passport__title span, .hn .hn-steps h2 span { font-size: inherit; line-height: inherit; letter-spacing: inherit; }
  .hn .hn-reviews h2, .hn .hn-guarantee h2, .hn .hn-final-cta h2, .hn .hn-history-cta h2, .hn .hn-loss-solution h2 {
    font-size: var(--hn-h2-sm); font-weight: 700; line-height: 1.12; letter-spacing: -.03em; text-wrap: balance;
  }
  .hn .hn-systems__description, .hn .hn-passport__intro, .hn .hn-steps__intro, .hn .hn-audience__description,
  .hn .hn-loss__description, .hn .hn-history__description, .hn .hn-qr-access__description, .hn .hn-project-process__description,
  .hn .hn-contact__description, .hn .hn-faq__description, .hn .hn-project-start__description,
  .hn .hn-final-cta__copy > p:not(.hn-final-cta__eyebrow), .hn .hn-history-cta__copy p, .hn .hn-guarantee__description,
  .hn .hn-reviews__intro > p:not(.hn-reviews__eyebrow) {
    font-size: var(--hn-lead); line-height: 1.6; letter-spacing: -.01em; text-wrap: pretty;
  }
  .hn .hn-systems__description, .hn .hn-passport__intro, .hn .hn-steps__intro, .hn .hn-audience__description,
  .hn .hn-loss__description, .hn .hn-history__description, .hn .hn-qr-access__description, .hn .hn-project-process__description,
  .hn .hn-contact__description, .hn .hn-faq__description, .hn .hn-project-start__description,
  .hn .hn-final-cta__copy > p:not(.hn-final-cta__eyebrow), .hn .hn-history-cta__copy p { color: var(--hn-text-2); }
  .hn .hn-hero__description { color: var(--hn-text-2); }
}

/* =====================================================================
   POLISH v2 · D. Hero, цифры, «Один участок», каталог систем (≥1200px)
   ===================================================================== */
@media (min-width: 1200px) {
  /* Hero: подписи под кнопками читаемы, кнопки одного размера шрифта с сайтом */
  .hn .hn-hero__eyebrow { font-size: 15px; }
  .hn .hn-benefits { gap: clamp(20px, 2vw, 39px); }
  .hn .hn-benefits li { font-size: 14px; gap: 10px; line-height: 1.35; }
  .hn .hn-benefits__icon { width: 46px; height: 46px; }
  .hn .hn-benefits svg { width: 25px; height: 25px; }

  /* Цифры — плавающая карточка под hero */
  .hn .hn-stats { background: linear-gradient(180deg, #f6fbff, #f6fbff); min-height: 0; padding: 26px 0 6px; }
  .hn .hn-stats__inner { align-items: center; gap: 36px; padding: 26px 44px; background: #fff; border-radius: 28px; box-shadow: 0 18px 50px #1d4a6a14, 0 1px 0 #e6f0f8; }
  .hn .hn-stats__list { gap: 24px; }
  .hn .hn-stats__item dd { font-size: clamp(34px, 2.9vw, 48px); }
  .hn .hn-stats__item dt { font-size: 15px; line-height: 1.4; color: var(--hn-text-3); }
  .hn .hn-stats__note { font-size: 22px; color: #6b9bc0; }
  .hn .hn-stats__note svg { color: #bcd8ee; }
}
@media (min-width: 1200px) and (max-width: 1439px) {
  .hn .hn-stats__item { flex-direction: row; align-items: center; gap: 12px; }
  .hn .hn-stats__item dd { font-size: 34px; }
  .hn .hn-stats__item dt { font-size: 13.5px; }
  .hn .hn-stats__note { display: none; }
}

@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-hero__description { font-size: clamp(18px, 1.4vw, 21px); }
  .hn .hn-button { font-size: 16px; }

  .hn .hn-systems { min-height: 0; padding: var(--hn-y) 0 calc(var(--hn-y) * .9); }
  .hn .hn-systems__copy { width: 47%; }
  .hn .hn-systems__title { font-size: clamp(34px, 2.85vw, 50px); }
  .hn .hn-systems__description { max-width: none; font-size: var(--hn-lead); }
  .hn .hn-systems__benefits { width: auto; max-width: 560px; grid-template-columns: 1fr 1fr; gap: 22px 24px; }
  .hn .hn-systems__benefits li { font-size: 15px; gap: 14px; color: var(--hn-text-2); }
  .hn .hn-systems__benefit-icon { width: 54px; height: 54px; border-radius: 16px; }
  .hn .hn-systems__benefit-icon svg { width: 28px; height: 28px; }
  .hn .hn-systems__scene { width: 52vw; right: calc(-1 * var(--hn-edge)); top: 24px; }
  .hn .hn-systems__caption { color: #52708a; font-size: 22px; bottom: 9%; right: 4%; }
  .hn .hn-systems__note { font-size: 24px; right: 8%; color: #1e86c2; }
  .hn .hn-system-card { width: max-content; max-width: 46%; min-height: 58px; padding: 10px 16px 10px 10px; gap: 11px; border-radius: 16px; }
  .hn .hn-system-card__icon { width: 38px; height: 38px; }
  .hn .hn-system-card__icon svg { width: 21px; height: 21px; }
  .hn .hn-system-card strong { font-size: 13.5px; line-height: 1.3; }
  .hn .hn-system-card small { font-size: 11.5px; line-height: 1.35; }
  .hn .hn-system-card--heat { left: 27%; }
  .hn .hn-system-card--electric { left: auto; right: 2%; }
  .hn .hn-system-card--climate { left: auto; right: 6%; }
  .hn .hn-system-card--water { left: 13%; }
  .hn .hn-system-card--well { left: 6%; }
  .hn .hn-system-card--septic { left: 32%; }
}

@media (min-width: 1200px) {
  /* Каталог систем: крупнее плитки и подписи */
  .hn .hn-catalog { padding: 12px 0 clamp(40px, 3.6vw, 64px); background: linear-gradient(180deg, #f6fbff, #f6fbff); }
  .hn .hn-catalog__panel { padding: 30px 40px; border-radius: 28px; background: #fff; box-shadow: 0 18px 50px #1d4a6a10, 0 1px 0 #e6f0f8; }
  .hn .hn-catalog__title { font-size: clamp(22px, 1.8vw, 30px); letter-spacing: -.025em; }
  .hn .hn-catalog__intro p, .hn .hn-catalog__more p { font-size: 15px; color: var(--hn-text-3); }
  .hn .hn-catalog__label { font-size: 13.5px; font-weight: 500; letter-spacing: -.01em; }
  .hn .hn-catalog__icon { background: #eef3f8; }
  .hn .hn-catalog__icon svg { width: 34px; height: 34px; }
  .hn .hn-catalog__item--accent .hn-catalog__icon svg { width: 38px; height: 38px; }
  .hn .hn-catalog__all { font-size: 18px; }
}
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-catalog__list { grid-template-columns: repeat(9, minmax(0, 1fr)); gap: 8px; }
  .hn .hn-catalog__tile { width: 100%; height: 78px; }
  .hn .hn-catalog__icon { width: 74px; height: 74px; }
  .hn .hn-catalog__item--accent .hn-catalog__icon { width: 74px; height: 74px; }
}

/* =====================================================================
   POLISH v2 · E. Нижний порог размера текста (≥1200px), подписи на фото, секция QR, подвал
   ===================================================================== */
@media (min-width: 1200px) {
  /* текст в мини-интерфейсах и карточках: не мельче 11–12px */
  .hn .hn-system-card small { font-size: 12.5px !important; }
  .hn .hn-passport__pdf, .hn .hn-passport__file-size { font-size: 11px !important; }
  .hn .hn-passport__schedule-row b { font-size: 11.5px !important; }
  .hn .hn-passport__schedule-row small { font-size: 11px !important; }
  .hn .hn-step__add { font-size: 11.5px !important; }
  .hn .hn-step__system b, .hn .hn-step__info-card div small { font-size: 12px !important; }
  .hn .hn-step__pdf-card div strong, .hn .hn-step__timeline li div strong, .hn .hn-step__timeline li div small { font-size: 11.5px !important; }
  .hn .hn-loss__questions li time { font-size: 12px !important; }
  .hn .hn-history-card p { font-size: 12.5px !important; line-height: 1.45; }
  .hn .hn-history-card__status span { font-size: 11px !important; }
  .hn .hn-history-card__reminder { font-size: 12px !important; }
  .hn .hn-history-cta__action p { font-size: 13px !important; }
  .hn .hn-project-process__object small, .hn figcaption small { font-size: 12px !important; }
  .hn .hn-contact__benefits li p, .hn .hn-guarantee__benefits li div p,
  .hn .hn-project-start__benefits li p, .hn .hn-final-cta__privacy p, .hn .hn-faq__contacts a span small { font-size: 12.5px !important; line-height: 1.4; }
  .hn .hn-contact__consent span, .hn .hn-project-start__consent span, .hn .hn-project-start__consent span a { font-size: 12.5px !important; }
  .hn .hn-guarantee__promise p { font-size: 12px !important; }
  .hn .hn-review-card__top blockquote, .hn .hn-review-card blockquote { font-size: 14.5px !important; line-height: 1.55; color: var(--hn-text-2) !important; }

  /* рукописные подписи поверх фото: светлый ореол, чтобы читались на любом фоне */
  .hn .hn-history-cta__note, .hn .hn-qr-access__note, .hn .hn-faq__note, .hn .hn-project-start__note,
  .hn .hn-loss__bottom-note, .hn .hn-loss__note, .hn .hn-final-cta__note {
    text-shadow: 0 0 3px #fff, 0 0 8px #fff, 0 0 14px #ffffffd0;
  }
  .hn .hn-history-cta__note { color: #0a6fa6; }

  /* подвал: ссылки внизу не переносятся, почта не теряется на тёмном */
  .site-footer.hn-footer .site-footer__legal a { white-space: nowrap; color: #9bb0c4; }
  .site-footer.hn-footer .site-footer__copyright, .site-footer.hn-footer .site-footer__copyright a { color: #9bb0c4; }
  .site-footer.hn-footer a[href^="mailto"] { color: #b9c9d8; }
}

@media (min-width: 1200px) and (max-width: 1750px) {
  /* «Простой доступ»: текст больше не заезжает на табличку — фото сдвинуто вправо */
  .hn .hn-qr-access__copy { width: 500px; }
  .hn .hn-qr-access__description { max-width: 470px; }
  .hn .hn-qr-access__background { left: 38%; width: 62%; }
  .hn .hn-qr-access__veil { background: linear-gradient(90deg,#f7fbff 0%,#f7fbfff5 34%,#f7fbffa6 42%,transparent 52%,transparent 100%); }
  /* подпись «Надёжные инженерные решения…» пряталась под тёмной панелью цифр */
  .hn .hn-project-process__caption { display: none; }
}

/* POLISH v2 · F. «Паспорт развивается»: вводный абзац не уходит под телефон */
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-history__description { max-width: min(680px, 52vw); }
}

/* POLISH v2 · G. 1200–1399px: рукописные подписи у сцены «систем» перекрывались карточками — скрываем */
@media (min-width: 1200px) and (max-width: 1399px) {
  .hn .hn-systems__note, .hn .hn-systems__caption { display: none; }
  .hn .hn-qr-access__background { left: 40%; width: 60%; }
}

/* =====================================================================
   POLISH v3 · H. Стыки секций, плавные края фото, вес шрифта на первом экране (≥1200px)
   ===================================================================== */
@media (min-width: 1200px) {
  .hn { background: #f6fbff; }

  /* Первый экран: шрифт тоньше (было 800) */
  .hn .hn-hero h1 { font-weight: 600; letter-spacing: -.035em; }
  .hn .hn-hero h1 span { font-weight: 600; }
  .hn .hn-hero__eyebrow { font-weight: 600; letter-spacing: .12em; }
  .hn .hn-hero__description { font-weight: 400; }
  .hn .hn-hero { border-radius: 0 0 clamp(28px, 3vw, 48px) clamp(28px, 3vw, 48px); }

  /* Светлые секции — один ровный фон, мягкое пятно света только внутри (без обрыва по краям) */
  .hn .hn-stats, .hn .hn-catalog, .hn .hn-community-stats, .hn .hn-loss, .hn .hn-loss-solution,
  .hn .hn-qr-review, .hn .hn-faq, .hn .hn-contact { background-color: #f6fbff; background-image: none; }
  .hn .hn-systems { background: #f6fbff radial-gradient(ellipse 42% 62% at 78% 52%, #e6f4ff 0%, #f6fbff00 100%); }
  .hn .hn-passport { background: #f6fbff radial-gradient(ellipse 40% 42% at 46% 58%, #e9f6ff 0%, #f6fbff00 100%); }
  .hn .hn-steps { background: #f6fbff radial-gradient(ellipse 45% 30% at 55% 82%, #e9f6ff 0%, #f6fbff00 100%); }
  .hn .hn-audience { background: #f6fbff radial-gradient(ellipse 45% 30% at 48% 88%, #e9f6ff 0%, #f6fbff00 100%); }
  .hn .hn-history { background: #f6fbff radial-gradient(ellipse 40% 36% at 70% 40%, #e9f6ff 0%, #f6fbff00 100%); }
  .hn .hn-project-process { background: #f6fbff radial-gradient(ellipse 40% 36% at 70% 50%, #e9f6ff 0%, #f6fbff00 100%); }
  .hn .hn-qr-access { background: #f6fbff; }
  .hn .hn-history-cta { background: #f6fbff; }

  /* Фото на фоне секций: плавное растворение по краям вместо прямых обрезов */
  .hn .hn-loss__background {
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 14%, #000 80%, transparent 100%), linear-gradient(180deg, transparent 0, #000 12%, #000 86%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 14%, #000 80%, transparent 100%), linear-gradient(180deg, transparent 0, #000 12%, #000 86%, transparent 100%);
    -webkit-mask-composite: source-in; mask-composite: intersect;
  }
  .hn .hn-history-cta__background {
    -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 22%, #000 78%, transparent 100%);
    mask-image: linear-gradient(180deg, transparent 0, #000 22%, #000 78%, transparent 100%);
  }
  .hn .hn-qr-access__background {
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 16%, #000 100%), linear-gradient(180deg, transparent 0, #000 9%, #000 78%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 16%, #000 100%), linear-gradient(180deg, transparent 0, #000 9%, #000 78%, transparent 100%);
    -webkit-mask-composite: source-in; mask-composite: intersect;
  }
  .hn .hn-contact__background {
    -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 14%, #000 80%, transparent 100%);
    mask-image: linear-gradient(180deg, transparent 0, #000 14%, #000 80%, transparent 100%);
  }
  .hn .hn-faq__background {
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 10%, #000 100%), linear-gradient(180deg, transparent 0, #000 12%, #000 82%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 10%, #000 100%), linear-gradient(180deg, transparent 0, #000 12%, #000 82%, transparent 100%);
    -webkit-mask-composite: source-in; mask-composite: intersect;
  }
  .hn .hn-final-cta__background {
    -webkit-mask-image: linear-gradient(90deg, #000 0, #000 62%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0, #000 62%, transparent 100%);
  }
  .hn .hn-project-start__background {
    -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 16%, #000 100%);
    mask-image: linear-gradient(180deg, transparent 0, #000 16%, #000 100%);
  }

  /* Тёмный блок «Гарантия» и финальные призывы — аккуратные плашки по сетке, а не обрывки на всю ширину */
  .hn .hn-guarantee { margin: 24px var(--hn-edge) 0; border-radius: 32px; }
  .hn .hn-final-cta { margin: 28px var(--hn-edge) 0; border-radius: 32px; }
  .hn .hn-final-cta__inner { margin-right: 0; }
  .hn .hn-project-start { background-color: #f6fbff; }

  /* Цифры под hero: без наезда подписи, ровные интервалы */
  .hn .hn-stats__list { justify-content: space-between; flex: 1 1 auto; gap: 20px 28px; }
  .hn .hn-stats__item { min-width: 0; }
  .hn .hn-stats__item dt { max-width: 150px; }
}
@media (min-width: 1200px) and (max-width: 1699px) {
  .hn .hn-stats__note { display: none; }
}

/* POLISH v3 · I. «Гарантия» и финальный призыв: колонки по ширине плашки */
@media (min-width: 1200px) {
  .hn .hn-guarantee__inner { margin-left: clamp(28px, 3.6vw, 64px); margin-right: clamp(28px, 3.6vw, 64px); grid-template-columns: minmax(280px, .95fr) minmax(0, 1.35fr) minmax(190px, .8fr); gap: clamp(24px, 2.6vw, 44px); }
  .hn .hn-guarantee h2 { font-size: clamp(30px, 2.45vw, 42px); }
  .hn .hn-guarantee__promise { padding-left: clamp(28px, 3vw, 64px); }
  .hn .hn-guarantee__promise blockquote { margin-left: 18px; font-size: clamp(22px, 1.7vw, 28px); }
  .hn .hn-final-cta__inner { margin-left: clamp(40%, 42.5%, 43%); margin-right: clamp(28px, 3.4vw, 56px); gap: clamp(28px, 3.5vw, 56px); }
}

/* POLISH v3 · J. Якоря: плавная прокрутка и отступ под фиксированную шапку; фокус и состояния */
html:has(#hn-root) { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html:has(#hn-root) { scroll-behavior: auto; } }
.hn [id], .hn a.hn-anchor { scroll-margin-top: 112px; }
.hn a:focus-visible, .hn button:focus-visible, .hn summary:focus-visible, .hn input:focus-visible, .hn textarea:focus-visible {
  outline: 3px solid #0aa0e6; outline-offset: 3px; border-radius: 10px;
}
.hn .hn-button, .hn .hn-catalog__item, .hn .hn-system-card, .hn .hn-audience-card { transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, color .18s ease; }
@media (hover: hover) {
  .hn .hn-button:hover { transform: translateY(-1px); }
  .hn .hn-system-card:hover { transform: translateY(-2px); box-shadow: 0 14px 34px #1d4a6a24; }
  .hn .hn-catalog__item:hover .hn-catalog__icon { background: #e1f3ff; }
}

/* =====================================================================
   POLISH v3 · K. Вес заголовков, «Гарантия», «Для кого», кнопка паспорта, подвал
   ===================================================================== */
@media (min-width: 1200px) {
  /* заголовки секций тоньше — в одном ключе с первым экраном */
  .hn .hn-systems__title, .hn .hn-passport__title, .hn .hn-steps h2, .hn .hn-audience h2, .hn .hn-loss h2,
  .hn .hn-history h2, .hn .hn-qr-access h2, .hn .hn-project-process h2, .hn .hn-contact h2, .hn .hn-faq h2,
  .hn .hn-project-start h2, .hn .hn-reviews h2, .hn .hn-guarantee h2, .hn .hn-final-cta h2,
  .hn .hn-history-cta h2, .hn .hn-loss-solution h2 { font-weight: 600; }
  .hn .hn-audience h2 { font-size: var(--hn-h2-sm); line-height: 1.14; letter-spacing: -.03em; max-width: 11em; }
  .hn .hn-passport__button { padding: 0 28px; gap: 14px; justify-content: center; font-size: 17px; }

  /* «Гарантия»: широкий левый столбец, выгоды плотнее */
  .hn .hn-guarantee__inner { grid-template-columns: minmax(340px, 1.2fr) minmax(0, 1.3fr) minmax(190px, .75fr); }
  .hn .hn-guarantee__benefits { align-content: center; gap: 30px 24px; }
  .hn .hn-guarantee h2 { font-size: clamp(30px, 2.3vw, 40px); text-wrap: balance; }

  /* «Подвал»: контакты в одном размере */
  .site-footer.hn-footer .site-footer__hours-block p { font-size: 15px; line-height: 1.6; font-weight: 500; color: #d5e0ea; }
  .hn .hn-project-start__background {
    -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 16%, #000 86%, transparent 100%);
    mask-image: linear-gradient(180deg, transparent 0, #000 16%, #000 86%, transparent 100%);
  }
}
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-history__summary { width: calc(100% - 355px); margin-left: 0; }
}

/* POLISH v3 · L. «Отзывы» — плашка по сетке (как «Гарантия»), без обрезов на всю ширину; колонки «Гарантии» */
@media (min-width: 1200px) {
  .hn .hn-reviews { margin: 24px var(--hn-edge) 0; border-radius: 32px; overflow: hidden; }
  .hn .hn-reviews__inner { margin-left: clamp(28px, 3.6vw, 64px); margin-right: clamp(28px, 3.6vw, 64px); }
  .hn .hn-contact { margin-top: 0; }
  .hn .hn-guarantee__inner { grid-template-columns: minmax(320px, 1fr) minmax(0, 1.6fr) minmax(180px, .7fr); }
}

/* POLISH v3 · M. «Гарантия»: заголовок в три строки */
@media (min-width: 1200px) {
  .hn .hn-guarantee__inner { grid-template-columns: minmax(370px, 1.15fr) minmax(0, 1.5fr) minmax(170px, .62fr); }
  .hn .hn-guarantee h2 { text-wrap: wrap; }
}

/* POLISH v3 · N. «Гарантия»: цитата не налезает на подпись */
@media (min-width: 1200px) {
  .hn .hn-guarantee__inner { grid-template-columns: minmax(340px, 1.05fr) minmax(0, 1.3fr) minmax(240px, .9fr); }
  .hn .hn-guarantee h2 { font-size: clamp(28px, 2.1vw, 38px); }
  .hn .hn-guarantee__promise blockquote { font-size: clamp(20px, 1.5vw, 26px); margin-top: 8px; margin-bottom: 52px; }
}

/* =====================================================================
   POLISH v4 · O. Правки владельца: hero, цифры, паспорт, история, футер, фиксированная шапка (≥1200px)
   ===================================================================== */
@media (min-width: 1200px) {
  /* 1–2. Hero: меньше шрифт и отступы, ниже по высоте, без скругления */
  .hn .hn-hero { height: clamp(600px, 41vw, 700px); border-radius: 0; }
  .hn .hn-hero__copy { /* padding-top: clamp(34px, 3vw, 54px); */ }
  .hn .hn-hero__eyebrow { font-size: 14px; margin-bottom: 12px; }
  .hn .hn-hero__title { font-size: clamp(44px, 3.7vw, 66px); line-height: 1.06; letter-spacing: -.035em; font-weight: 600; }
  .hn .hn-hero__title span { margin-top: 2px; }
  .hn .hn-hero__description { margin: 18px 0 20px; font-size: clamp(16px, 1.15vw, 20px); line-height: 1.5; letter-spacing: -.01em; }
  .hn .hn-button { height: clamp(58px, 4.6vw, 68px); font-size: 16px; }
  .hn .hn-button--owner { width: clamp(250px, 20vw, 320px); }
  .hn .hn-button--master { width: clamp(280px, 22vw, 350px); }
  .hn .hn-benefits { margin-top: clamp(22px, 2vw, 32px); }
  .hn .hn-hero__product { height: 94%; width: auto; aspect-ratio: 665 / 835; right: -20px; object-fit: fill; }
  .hn .hn-hero__note { font-size: clamp(22px, 1.7vw, 28px); top: 30px; }

  /* 3. Цифры: без подложки и теней */
  .hn .hn-stats { background: transparent; padding: 22px 0 0; }
  .hn .hn-stats__inner { background: transparent; box-shadow: none; border-radius: 0; padding: 18px 0; }

  /* 4. Паспорт: сцена по центру среднего столбца */
  .hn .hn-passport__scene { position: relative; left: auto; top: auto; grid-column: 2; grid-row: 1; justify-self: center; align-self: start; width: min(100%, 890px); height: auto; aspect-ratio: 890 / 780; }
  .hn .hn-passport__sidebar { grid-column: 1; grid-row: 1; }
  .hn .hn-passport__features { grid-row: 1; }

  /* 5. Цифры сообщества: ровные колонки, разделители ровно посередине между блоками */
  .hn .hn-community-stats__list { flex: 1 1 auto; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .hn .hn-community-stats__list > div { justify-content: center; gap: 18px; }
  .hn .hn-community-stats__list > div + div { padding-left: 0; }
  .hn .hn-community-stats__list > div + div::before { left: 0; }

  /* 6. История: нижний блок «при продаже дома» убран (скрыт), телефон шире */
  .hn .hn-history__summary { grid-template-columns: minmax(0, 1fr); }
  .hn .hn-history__summary-sale { display: none; }

  /* 10. Пример паспорта в «Готовы начать»: 3 колонки, кнопка в третьей */
  .hn .hn-project-start__example { display: grid; grid-template-columns: 106px minmax(0, 1fr) auto; gap: 24px; flex-wrap: nowrap; align-items: center; }
  .hn .hn-project-start__example > a { width: auto; margin: 0; padding: 0 0 0 26px; border-top: 0; border-left: 1px solid #516979; min-height: 84px; }

  /* 11. Подвал: «Инженерные системы» — заголовок как у остальных, отступ сверху, ссылки видны */
  .site-footer.hn-footer .hn-footer__details { margin-top: 24px; font-size: 13px; }
  .site-footer.hn-footer .hn-footer__details > summary {
    list-style: none; cursor: default; pointer-events: none; padding: 0 0 12px; margin: 0;
    color: #f4f7fa; font-size: 16px; font-weight: 600; line-height: 1.5; letter-spacing: -.4px; text-transform: none;
  }
  .site-footer.hn-footer .hn-footer__details > summary::-webkit-details-marker { display: none; }
  .site-footer.hn-footer .hn-footer__details > summary::marker { content: ''; }

  /* 12. Фиксированная шапка: на самом верху обычная, при прокрутке — компактная «стеклянная» */
  .hn { --hn-header-h: clamp(92px, 6.4vw, 112px); --hn-header-s: 68px; padding-top: var(--hn-header-h); }
  .hn .hn-header {
    position: fixed; top: 0; left: 0; width: 100%; height: var(--hn-header-h); padding: 0; z-index: 60;
    background: #f6fbff; box-shadow: 0 0 0 rgba(12, 60, 100, 0);
    transition: height .28s cubic-bezier(.2, .7, .2, 1), background-color .28s ease, box-shadow .28s ease, backdrop-filter .28s ease;
    will-change: height;
  }
  .hn .hn-header__inner { height: 100%; }
  .hn .hn-header--stuck {
    height: var(--hn-header-s);
    background: rgba(255, 255, 255, .78);
    -webkit-backdrop-filter: saturate(180%) blur(18px); backdrop-filter: saturate(180%) blur(18px);
    box-shadow: 0 1px 0 rgba(12, 60, 100, .07), 0 12px 32px rgba(12, 60, 100, .09);
  }
  .hn .hn-header .hn-brand__icon, .hn .hn-header .hn-brand strong, .hn .hn-header .hn-brand small, .hn .hn-login, .hn .hn-register, .hn .hn-nav a {
    transition: width .28s ease, height .28s ease, font-size .28s ease, opacity .2s ease;
  }
  .hn .hn-header--stuck .hn-brand__icon { width: 34px; height: 36px; }
  .hn .hn-header--stuck .hn-brand strong { font-size: 18px; }
  .hn .hn-header--stuck .hn-brand small { font-size: 10px; }
  .hn .hn-header--stuck .hn-nav a { font-size: 15px; }
  .hn .hn-header--stuck .hn-login, .hn .hn-header--stuck .hn-register { height: 42px; font-size: 14px; border-radius: 14px; }
  .hn .hn-header--stuck .hn-login { width: 96px; }
  .hn .hn-header--stuck .hn-register { width: 200px; }
  .hn [id], .hn a.hn-anchor { scroll-margin-top: 88px; }
}
@media (min-width: 1751px) {
  .hn .hn-hero { height: 780px; }
  .hn .hn-hero__title { font-size: 72px; }
  .hn .hn-hero__description { font-size: 22px; }
  .hn .hn-history__phone { width: 420px; height: 985px; right: -30px; }
  .hn .hn-history__timeline { width: calc(100% - 450px); }
  .hn .hn-history__summary { width: calc(100% - 450px); }
}
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-history__phone { width: 330px; height: 850px; right: -20px; }
  .hn .hn-history__timeline, .hn .hn-history__summary { width: calc(100% - 395px); }
  /* 7–8. Цифры и «Реализованный объект» в «Как мы работаем» */
  .hn .hn-project-process__numbers { width: 275px; padding: 10px 24px; top: 115px; min-height: 335px; margin-right: -30px; }
  .hn .hn-project-process__object { left: 40px; padding: 12px; gap: 10px; }
}

/* POLISH v4 · P. Мелкие доводки */
@media (min-width: 1200px) {
  .hn .hn-passport__button { width: auto; min-width: 290px; max-width: 100%; padding: 0 30px; font-size: 16px; white-space: nowrap; }
  .hn .hn-hero__note { top: 8px; right: 12px; font-size: clamp(20px, 1.5vw, 26px); }
  .hn .hn-hero__note svg { width: 70px; height: 48px; margin-top: 2px; }
  .site-footer.hn-footer .hn-footer__details { margin-top: 30px; }
  .site-footer.hn-footer .hn-footer__details > summary { white-space: nowrap; }
  .site-footer.hn-footer .hn-footer__details .site-footer__list a { text-transform: none; font-weight: 400; letter-spacing: -.3px; }
  .site-footer.hn-footer .hn-footer__details .site-footer__list { gap: 7px; padding-top: 0; }
}

@media (min-width: 1200px) {
  .hn .hn-passport__button { width: max-content; }
}

@media (min-width: 1200px) {
  .hn .hn-passport__button { max-width: none; font-size: 15px; padding: 0 24px; }
}

@media (min-width: 1200px) {
  .site-footer.hn-footer .site-footer__col > .hn-footer__details { margin-top: 32px !important; }
  .hn .hn-stats__note { display: none; }
}

/* POLISH v4 · Q. Безцифровые формулировки вместо придуманных цифр */
.hn .hn-project-process__numbers--words > div { flex-direction: column; align-items: flex-start; justify-content: center; gap: 4px; }
.hn .hn-project-process__numbers--words dd { order: 0; min-width: 0; font-size: clamp(26px, 2vw, 34px); letter-spacing: -.8px; }
.hn .hn-project-process__numbers--words dt { order: 1; }
.hn .hn-loss-solution__saving strong { font-size: clamp(38px, 3.4vw, 54px); }
@media (min-width: 1200px) {
  .hn .hn-hero + .hn-systems { padding-top: clamp(48px, 4vw, 72px); }
}

/* Правки владельца: подача hero и вес рукописных подписей */
@media (min-width: 1200px) {
  .hn .hn-hero__product { padding: 50px 0; }
  .hn .hn-hero__note { top: 10px; }
}
.hn .hn-hero__note, .hn .hn-stats__note, .hn .hn-systems__note, .hn .hn-systems__caption, .hn .hn-passport__header-note, .hn .hn-passport__photo-note, .hn .hn-passport__scene-note, .hn .hn-steps__note, .hn .hn-step__handnote, .hn .hn-audience-card__note, .hn .hn-community-stats__note, .hn .hn-loss__note, .hn .hn-loss__bottom-note, .hn .hn-history__note, .hn .hn-history-cta__note, .hn .hn-qr-access__note, .hn .hn-qr-review__note p, .hn .hn-project-process__note, .hn .hn-reviews__note, .hn .hn-contact__form-note, .hn .hn-contact__note, .hn .hn-guarantee__promise blockquote, .hn .hn-faq__note, .hn .hn-final-cta__note, .hn .hn-project-start__note, .hn .hn-project-start__bottom-note {
  font-weight: 300;
}

@media (min-width: 1200px) {
  .hn .hn-hero__description { max-width: min(41vw, 680px); }
}

/* =====================================================================
   POLISH v5 · Заголовок «систем», иконки 2026 (плитки с градиентом и реакцией на наведение), кнопки hero
   ===================================================================== */
.hn .hn-systems__title > span:last-child {
  color: var(--hn-accent);
  font-weight: 600;
}

/* Единый вид иконок-плиток: мягкий градиент, тонкое кольцо, объёмная тень */
.hn .hn-benefits__icon, .hn .hn-systems__benefit-icon, .hn .hn-system-card__icon, .hn .hn-passport__feature-icon,
.hn .hn-qr-access__stat-icon, .hn .hn-project-process__icon, .hn .hn-passport-summary__icon, .hn .hn-faq__contact-icon,
.hn .hn-step__card-icon, .hn .hn-history__summary-icon, .hn .hn-steps-trust__icon, .hn .hn-loss-solution__icon,
.hn .hn-qr-access__benefits li > span:first-child, .hn .hn-contact__benefits li > span:first-child,
.hn .hn-project-start__benefits li > span:first-child, .hn .hn-audience__features li > span:first-child {
  background: linear-gradient(150deg, #f6fcff 0%, #dcf1ff 100%);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .9), 0 0 0 1px rgba(7, 157, 220, .10), 0 8px 18px -10px rgba(7, 126, 190, .45);
  color: var(--hn-accent);
  transition: transform .28s cubic-bezier(.2, .8, .2, 1), background .28s ease, box-shadow .28s ease, color .2s ease;
}
.hn .hn-benefits__icon svg, .hn .hn-systems__benefit-icon svg, .hn .hn-system-card__icon svg, .hn .hn-passport__feature-icon svg,
.hn .hn-qr-access__stat-icon svg, .hn .hn-project-process__icon svg, .hn .hn-passport-summary__icon svg, .hn .hn-faq__contact-icon svg,
.hn .hn-step__card-icon svg, .hn .hn-history__summary-icon svg, .hn .hn-steps-trust__icon svg, .hn .hn-loss-solution__icon svg,
.hn .hn-qr-access__benefits li > span:first-child svg, .hn .hn-contact__benefits li > span:first-child svg,
.hn .hn-project-start__benefits li > span:first-child svg, .hn .hn-guarantee__icon svg, .hn .hn-passport__nav-icon, .hn .hn-catalog__icon svg {
  transition: transform .32s cubic-bezier(.2, .8, .2, 1);
}

@media (hover: hover) {
  /* Реакция: плитка заливается акцентным градиентом, иконка белеет и «подпрыгивает» */
  .hn *:hover > .hn-benefits__icon, .hn *:hover > .hn-systems__benefit-icon, .hn .hn-system-card:hover .hn-system-card__icon,
  .hn *:hover > .hn-passport__feature-icon, .hn *:hover > .hn-qr-access__stat-icon, .hn *:hover > .hn-project-process__icon,
  .hn *:hover > .hn-faq__contact-icon, .hn *:hover > .hn-step__card-icon, .hn *:hover > .hn-history__summary-icon,
  .hn *:hover > .hn-loss-solution__icon, .hn .hn-qr-access__benefits li:hover > span:first-child,
  .hn .hn-contact__benefits li:hover > span:first-child, .hn .hn-project-start__benefits li:hover > span:first-child,
  .hn .hn-passport-summary > *:hover > .hn-passport-summary__icon {
    background: linear-gradient(150deg, #2cb9f2 0%, #0782c8 100%);
    color: #fff;
    transform: translateY(-3px);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .28), 0 14px 24px -10px rgba(7, 126, 190, .75);
  }
  .hn *:hover > .hn-benefits__icon svg, .hn *:hover > .hn-systems__benefit-icon svg, .hn .hn-system-card:hover .hn-system-card__icon svg,
  .hn *:hover > .hn-passport__feature-icon svg, .hn *:hover > .hn-qr-access__stat-icon svg, .hn *:hover > .hn-project-process__icon svg,
  .hn *:hover > .hn-faq__contact-icon svg, .hn *:hover > .hn-step__card-icon svg, .hn *:hover > .hn-history__summary-icon svg,
  .hn *:hover > .hn-loss-solution__icon svg, .hn .hn-qr-access__benefits li:hover > span:first-child svg,
  .hn .hn-contact__benefits li:hover > span:first-child svg, .hn .hn-project-start__benefits li:hover > span:first-child svg {
    transform: scale(1.1) rotate(-5deg);
  }

  /* Навигация по паспорту: иконка окрашивается и сдвигается */
  .hn .hn-passport__nav-item:hover .hn-passport__nav-icon { color: var(--hn-accent); transform: translateX(3px) scale(1.08); }
  .hn .hn-passport__nav-item { transition: background-color .2s ease, color .2s ease, transform .2s ease; }
  .hn .hn-passport__nav-item:hover { color: var(--hn-text); }

  /* Каталог систем: плитка поднимается, иконка получает акцент */
  .hn .hn-catalog__item { transition: transform .25s cubic-bezier(.2, .8, .2, 1); }
  .hn .hn-catalog__item:hover { transform: translateY(-3px); }
  .hn .hn-catalog__item:hover .hn-catalog__icon {
    background: linear-gradient(150deg, #eaf7ff, #cfeafc); color: var(--hn-accent);
    box-shadow: 0 0 0 1px rgba(7, 157, 220, .22), 0 14px 22px -12px rgba(7, 126, 190, .6);
  }
  .hn .hn-catalog__item:hover .hn-catalog__icon svg { transform: scale(1.12); }

  /* Тёмный блок «Гарантия» */
  .hn .hn-guarantee__benefits li:hover .hn-guarantee__icon {
    background: linear-gradient(150deg, #2cb9f2, #0782c8); color: #fff; transform: translateY(-3px);
    box-shadow: 0 14px 26px -10px rgba(44, 185, 242, .7);
  }
  .hn .hn-guarantee__benefits li:hover .hn-guarantee__icon svg { transform: scale(1.1) rotate(-5deg); }

  /* Звёзды, кнопки, ссылки со стрелками */
  .hn .hn-review-card:hover { transform: translateY(-4px); box-shadow: 0 24px 40px -20px rgba(8, 30, 52, .55); }
  .hn .hn-review-card { transition: transform .3s cubic-bezier(.2, .8, .2, 1), box-shadow .3s ease; }
  .hn .hn-review-card__stars svg { transition: transform .25s ease; }
  .hn .hn-review-card:hover .hn-review-card__stars svg { transform: scale(1.18); }
  .hn .hn-button:active { transform: translateY(0) scale(.985); }
}
.hn .hn-guarantee__icon { transition: transform .28s cubic-bezier(.2, .8, .2, 1), background .28s ease, color .2s ease, box-shadow .28s ease; }
.hn .hn-guarantee__icon { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .09), 0 10px 20px -12px rgba(0, 0, 0, .7); }

/* Кнопки первого экрана: иконки чуть меньше */
.hn .hn-hero .hn-button__icon { width: 26px; height: 26px; }
.hn .hn-hero .hn-button__arrow { width: 20px; height: 20px; margin-left: 2px; }
@media (prefers-reduced-motion: reduce) {
  .hn [class*="__icon"], .hn [class*="__icon"] svg { transition: none !important; }
}

/* POLISH v5 · «4 шага»: фото по размеру блоков, со скруглением; карточки шага 2 в колонку без наложений */
.hn .hn-step__visual--store { display: flex; flex-direction: column; gap: 10px; padding: 0 16px 10px 32px; }
.hn .hn-step__visual--store > .hn-step__info-card, .hn .hn-step__visual--store > .hn-step__photo, .hn .hn-step__visual--store > .hn-step__pdf-card {
  position: relative; inset: auto; top: auto; left: auto; right: auto; bottom: auto; width: auto; margin: 0;
}
.hn .hn-step__visual--store > .hn-step__info-card { flex: 0 0 auto; height: 80px; padding: 12px 18px; gap: 14px; }
.hn .hn-step__visual--store .hn-step__card-icon { width: 50px; height: 50px; border-radius: 16px; }
.hn .hn-step__visual--store .hn-step__card-icon svg { width: 27px; height: 27px; }
.hn .hn-step__visual--store > .hn-step__pdf-card { flex: 0 0 auto; height: 68px; padding: 10px 18px; }
.hn .hn-step__visual--store > .hn-step__photo { flex: 1 1 0; min-height: 0; height: auto; padding: 0; background: none; border-radius: 20px; box-shadow: 0 14px 28px -14px rgba(31, 85, 120, .45); overflow: hidden; z-index: 3; }
.hn .hn-step__visual--store > .hn-step__photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 40% 52%; border-radius: 20px; }

.hn .hn-step__visual--access { border-radius: 22px; overflow: hidden; box-shadow: 0 14px 28px -14px rgba(31, 85, 120, .45); }
.hn .hn-step__visual--access > img { position: absolute; inset: 0; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: 38% 45%; border-radius: 22px; }
.hn .hn-step__timeline img { border-radius: 14px; }

@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-step__visual--store { gap: 8px; padding: 0 12px 8px 20px; }
  .hn .hn-step__visual--store > .hn-step__info-card { height: 64px; padding: 8px 14px; }
  .hn .hn-step__visual--store .hn-step__card-icon { width: 42px; height: 42px; border-radius: 14px; }
  .hn .hn-step__visual--store .hn-step__card-icon svg { width: 23px; height: 23px; }
  .hn .hn-step__visual--store > .hn-step__pdf-card { height: 56px; padding: 8px 14px; }
  .hn .hn-step__visual--store .hn-step__info-card small { font-size: 12px; line-height: 1.35; }
}

/* =====================================================================
   POLISH v6 · Поиск и кабинет в шапке: круглая кнопка поиска с воздухом, чип аккаунта и выпадающее меню
   ===================================================================== */
.hn .hn-header__actions { gap: 12px; }
.hn .hn-search-toggle {
  width: 46px; height: 46px; margin-right: 6px; border-radius: 50%; display: grid; place-items: center; flex-shrink: 0;
  background: transparent; color: var(--hn-text); transition: background-color .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.hn .hn-search-toggle svg { width: 22px; height: 22px; stroke-width: 1.9; }
.hn .hn-search-toggle:hover, .hn .hn-search-toggle[aria-expanded="true"] { background: #e3f2fb; color: var(--hn-accent-dark); transform: translateY(-1px); }

.hn .hn-account { position: relative; }
.hn .hn-account__trigger {
  display: flex; align-items: center; gap: 10px; height: 52px; padding: 5px 14px 5px 6px; cursor: pointer;
  border: 1px solid rgba(7, 157, 220, .18); border-radius: 999px; background: rgba(255, 255, 255, .85);
  color: var(--hn-text); font: inherit; font-size: 15px; font-weight: 600; letter-spacing: -.01em;
  box-shadow: 0 6px 18px -10px rgba(7, 126, 190, .45);
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease, transform .2s ease;
}
.hn .hn-account__trigger:hover, .hn .hn-account__trigger[aria-expanded="true"] { border-color: rgba(7, 157, 220, .45); background: #fff; box-shadow: 0 10px 24px -10px rgba(7, 126, 190, .6); transform: translateY(-1px); }
.hn .hn-account__avatar { position: relative; display: grid; place-items: center; width: 40px; height: 40px; flex: 0 0 40px; border-radius: 50%; background: linear-gradient(150deg, #2cb9f2, #0782c8); color: #fff; font-weight: 700; font-size: 16px; }
.hn .hn-account__avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; display: block; }
.hn .hn-account__avatar b { font-weight: 700; }
.hn .hn-account__avatar--lg { width: 52px; height: 52px; flex-basis: 52px; font-size: 20px; }
.hn .hn-account__badge { position: absolute; top: -4px; right: -5px; min-width: 20px; height: 20px; padding: 0 5px; display: grid; place-items: center; border-radius: 10px; background: #ef4343; color: #fff; font: 700 11px/1 'Montserrat', sans-serif; font-style: normal; box-shadow: 0 0 0 2px #fff; }
.hn .hn-account__name { max-width: 140px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hn .hn-account__caret { width: 16px; height: 16px; stroke-width: 2.2; transition: transform .25s ease; color: #5b7390; }
.hn .hn-account__trigger[aria-expanded="true"] .hn-account__caret { transform: rotate(180deg); }

.hn .hn-account__menu {
  position: absolute; top: calc(100% + 12px); right: 0; z-index: 70; width: 300px; padding: 8px;
  border-radius: 22px; background: rgba(255, 255, 255, .96);
  -webkit-backdrop-filter: saturate(180%) blur(18px); backdrop-filter: saturate(180%) blur(18px);
  border: 1px solid rgba(7, 126, 190, .12); box-shadow: 0 30px 60px -24px rgba(12, 50, 90, .45), 0 2px 6px rgba(12, 50, 90, .06);
  transform-origin: top right; animation: hn-menu-in .22s cubic-bezier(.2, .8, .2, 1);
}
.hn .hn-account__menu[hidden] { display: none; }
@keyframes hn-menu-in { from { opacity: 0; transform: translateY(-6px) scale(.97); } to { opacity: 1; transform: none; } }
.hn .hn-account__head { display: flex; align-items: center; gap: 14px; padding: 12px 12px 14px; margin-bottom: 4px; border-bottom: 1px solid #e4eef5; }
.hn .hn-account__head strong { display: block; font-size: 16px; font-weight: 700; letter-spacing: -.02em; color: var(--hn-text); }
.hn .hn-account__head small { display: block; margin-top: 2px; font-size: 13px; color: #6b7f98; }
.hn .hn-account__menu ul { list-style: none; margin: 0; padding: 0; }
.hn .hn-account__menu li { margin: 0; padding: 0; }
.hn .hn-account__menu a { position: relative; display: flex; align-items: center; gap: 14px; padding: 10px 12px; border-radius: 14px; color: #223a58; font-size: 15px; font-weight: 500; letter-spacing: -.01em; transition: background-color .18s ease, color .18s ease, transform .18s ease; }
.hn .hn-account__menu a svg { width: 20px; height: 20px; flex: 0 0 20px; color: var(--hn-accent); stroke-width: 1.9; transition: transform .25s ease; }
.hn .hn-account__menu a i { margin-left: auto; min-width: 22px; height: 22px; padding: 0 6px; display: grid; place-items: center; border-radius: 11px; background: #ef4343; color: #fff; font: 700 12px/1 'Montserrat', sans-serif; font-style: normal; }
.hn .hn-account__menu a:hover { background: #eaf6fd; color: var(--hn-text); }
.hn .hn-account__menu a:hover svg { transform: translateX(2px) scale(1.1); }
.hn .hn-account__sep { display: block; height: 1px; margin: 6px 8px; background: #e4eef5; }
.hn .hn-account__menu a.hn-account__danger { color: #d62f2f; }
.hn .hn-account__menu a.hn-account__danger svg { color: #d62f2f; }
.hn .hn-account__menu a.hn-account__danger:hover { background: #fdecec; }

@media (min-width: 1200px) {
  .hn .hn-header--stuck .hn-account__trigger { height: 44px; padding: 3px 12px 3px 4px; font-size: 14px; }
  .hn .hn-header--stuck .hn-account__avatar { width: 36px; height: 36px; flex-basis: 36px; font-size: 14px; }
  .hn .hn-header--stuck .hn-search-toggle { width: 42px; height: 42px; }
}
@media (max-width: 1199px) {
  .hn .hn-account__trigger { height: 44px; padding: 3px 10px 3px 3px; gap: 6px; }
  .hn .hn-account__avatar { width: 36px; height: 36px; flex-basis: 36px; font-size: 14px; }
  .hn .hn-account__name { display: none; }
  .hn .hn-account__menu { position: fixed; top: 76px; right: 12px; left: 12px; width: auto; max-height: calc(100vh - 92px); overflow-y: auto; }
  .hn .hn-search-toggle { width: 42px; height: 42px; margin-right: 0; }
}
@media (prefers-reduced-motion: reduce) { .hn .hn-account__menu { animation: none; } }

/* POLISH v6 · нижняя подпись «Забудьте о потере документов»: стрелка в потоке под текстом, не «плавает» */
.hn .hn-loss__bottom-note { display: flex; flex-direction: column; align-items: center; }
.hn .hn-loss__bottom-note svg { position: static; display: block; width: 84px; height: 54px; margin: 4px 0 0 auto; }

/* «Кто устанавливал?» — слева от головы, на светлом фоне, чтобы читалось */
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-loss__note { right: auto; left: 31%; top: 70px; font-size: 24px; color: #2b7fb5; }
}
@media (min-width: 1751px) {
  .hn .hn-loss__note { right: auto; left: 35%; top: 100px; color: #2b7fb5; }
}

/* Телефон в «Паспорт развивается» — без искажения: высота от пропорций картинки (518×1100) */
.hn .hn-loss__note svg { margin: 6px 10px 0 auto; }
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-history__phone { width: 380px; height: auto; aspect-ratio: 518 / 1100; right: -20px; object-fit: contain; }
  .hn .hn-history__timeline, .hn .hn-history__summary { width: calc(100% - 430px); }
}
@media (min-width: 1751px) {
  .hn .hn-history__phone { width: 420px; height: auto; aspect-ratio: 518 / 1100; object-fit: contain; }
  .hn .hn-history__timeline, .hn .hn-history__summary { width: calc(100% - 480px); }
}

/* POLISH v6 · Единый стиль кнопок шапки: поиск, «Войти», «Зарегистрироваться» и чип аккаунта — одна высота и радиус */
.hn .hn-header { --hn-act-h: 59px; --hn-act-r: var(--hn-radius); }
@media (min-width: 1000px) and (max-width: 1750px) { .hn .hn-header { --hn-act-h: 48px; } }
@media (min-width: 1200px) { .hn .hn-header--stuck { --hn-act-h: 42px; --hn-act-r: 14px; } }
@media (max-width: 999px) { .hn .hn-header { --hn-act-h: 44px; --hn-act-r: 12px; } }

.hn .hn-header .hn-login, .hn .hn-header .hn-register { height: var(--hn-act-h); border-radius: var(--hn-act-r); }
.hn .hn-header .hn-search-toggle {
  width: var(--hn-act-h); height: var(--hn-act-h); border-radius: var(--hn-act-r); margin-right: 0;
  background: transparent; box-shadow: none;
}
.hn .hn-header .hn-search-toggle:hover, .hn .hn-header .hn-search-toggle[aria-expanded="true"] { background: #eaf2f9; transform: none; }

.hn .hn-header .hn-account__trigger {
  height: var(--hn-act-h); border-radius: var(--hn-act-r); padding: 4px 16px 4px 4px; gap: 12px;
  border: 0; background: #eaf2f9; color: #426e90; font-size: 16px; font-weight: 600; box-shadow: none; transform: none;
}
.hn .hn-header .hn-account__trigger:hover, .hn .hn-header .hn-account__trigger[aria-expanded="true"] { background: #dceaf5; color: #244d70; box-shadow: none; transform: none; }
.hn .hn-header .hn-account__trigger .hn-account__avatar {
  width: calc(var(--hn-act-h) - 8px); height: calc(var(--hn-act-h) - 8px); flex-basis: calc(var(--hn-act-h) - 8px);
  border-radius: calc(var(--hn-act-r) - 4px); font-size: 17px;
}
.hn .hn-header .hn-account__trigger .hn-account__avatar img { border-radius: calc(var(--hn-act-r) - 4px); }
.hn .hn-header .hn-account__badge { top: -6px; right: -6px; box-shadow: 0 0 0 2px #eaf2f9; }
.hn .hn-header .hn-account__avatar--lg { width: 52px; height: 52px; flex-basis: 52px; border-radius: 14px; }
.hn .hn-header .hn-account__avatar--lg img { border-radius: 14px; }
.hn .hn-header .hn-account__menu { border-radius: calc(var(--hn-radius) + 6px); }
@media (min-width: 1200px) {
  .hn .hn-header--stuck .hn-account__trigger { height: var(--hn-act-h); padding: 3px 14px 3px 3px; font-size: 14px; }
  .hn .hn-header--stuck .hn-account__trigger .hn-account__avatar { width: 36px; height: 36px; flex-basis: 36px; }
  .hn .hn-header--stuck .hn-search-toggle { width: var(--hn-act-h); height: var(--hn-act-h); }
}
@media (max-width: 1199px) {
  .hn .hn-header .hn-account__trigger { padding: 3px 8px 3px 3px; gap: 6px; }
  .hn .hn-header .hn-account__trigger .hn-account__avatar { width: 36px; height: 36px; flex-basis: 36px; }
  .hn .hn-header .hn-search-toggle { width: 42px; height: var(--hn-act-h); }
}

/* Passport interactive demo: scoped to the passport section. */
.hn .hn-passport { min-height: 0; }
.hn .hn-passport .hn-passport__body { display: grid; grid-template-columns: minmax(230px, .9fr) minmax(300px, 390px) minmax(230px, 1fr); gap: clamp(24px, 4vw, 72px); align-items: start; min-height: 0; margin: 44px 0 60px; }
.hn .hn-passport .hn-passport__sidebar { grid-column: auto; grid-row: auto; min-width: 0; }
.hn .hn-passport-demo__hint { font-size: 13px; color: var(--hn-muted); margin: 0 0 14px; line-height: 1.5; }
.hn .hn-passport .hn-passport__nav { display: grid; grid-template-columns: 1fr; margin: 0; padding: 0; width: 100%; gap: 6px; }
.hn .hn-passport .hn-passport__nav-item { width: 100%; min-height: 64px; padding: 15px 36px 15px 16px; border: 0; font-family: inherit; text-align: left; gap: 16px; font-size: 16px; font-weight: 500; line-height: 1.4; letter-spacing: -.3px; cursor: pointer; background: transparent; border-radius: 14px; }
.hn .hn-passport .hn-passport__nav-item--active { background: #e2f3fd; color: #087eaf; font-weight: 600; }
.hn .hn-passport .hn-passport__nav-item:hover { background: #eaf6fd; }
.hn .hn-passport .hn-passport__nav-icon { width: 25px; height: 27px; flex: 0 0 25px; }
.hn .hn-passport .hn-passport__nav-arrow { right: 12px; width: 19px; height: 19px; }
.hn .hn-passport .hn-passport__button { width: 100%; min-width: 0; max-width: 100%; height: auto; min-height: 60px; padding: 16px; margin-top: 24px; font-size: 14px; white-space: normal; }
.hn .hn-passport-demo__device { position: relative; width: 100%; max-width: 390px; padding: 9px; border: 2px solid #425268; border-radius: 44px; background: #172333; box-shadow: 0 28px 60px #1e526d20, inset 0 0 0 2px #728094; }
.hn .hn-passport-demo__status { height: 30px; display: flex; justify-content: space-between; align-items: center; padding: 0 20px; color: #fff; font: 600 11px/1 Arial,sans-serif; }
.hn .hn-passport-demo__status i { width: 80px; height: 17px; background: #060c14; border-radius: 20px; }
.hn .hn-passport-demo__screen { min-height: 670px; border-radius: 28px; overflow: hidden; background: #f3f8fc; color: #24364b; font-family: Montserrat,Arial,sans-serif; }
.hn .hn-passport-demo__brand { display: flex; align-items: center; justify-content: space-between; gap: 8px; background: #fff; padding: 17px 14px; }
.hn .hn-passport-demo__brand strong { font-size: 11px; line-height: 1.3; letter-spacing: -.3px; }
.hn .hn-passport-demo__brand > span { color: #6e8093; font-size: 9px; }
.hn .hn-passport-demo__hero { background: linear-gradient(125deg,#069edb,#2eacdb); color: #fff; padding: 19px 16px; }
.hn .hn-passport-demo__hero > span { font-size: 10px; opacity: .85; }
.hn .hn-passport-demo__hero h3 { color: #fff; font-size: 21px; line-height: 1.25; margin: 8px 0; text-align: left; text-transform: none; font-weight: 700; letter-spacing: -.5px; }
.hn .hn-passport-demo__hero p { font-size: 11px; margin: 0; color: #fff; }
.hn .hn-passport-demo__content { padding: 14px 12px 0; }
.hn .hn-passport-demo__card { padding: 17px 14px; background: #fff; border: 1px solid #e3ebf2; border-radius: 15px; box-shadow: 0 3px 12px #294b6110; margin-bottom: 12px; }
.hn .hn-passport-demo__card h4 { display: flex; align-items: center; gap: 8px; color: #1d3149; font-size: 13px; line-height: 1.4; margin: 0 0 15px; font-weight: 700; text-transform: none; letter-spacing: -.2px; text-align: left; }
.hn .hn-passport-demo__card h4 svg { width: 19px; height: 19px; color: #079ddc; flex: 0 0 19px; }
.hn .hn-passport-demo__card h5 { color: #24364b; font-size: 13px; line-height: 1.5; font-weight: 600; text-transform: none; text-align: left; margin: 13px 0 8px; }
.hn .hn-passport-demo__card p { color: #66798e; font-size: 12px; line-height: 1.65; margin: 10px 0 0; }
.hn .hn-passport-demo__specs { margin: 0; display: grid; gap: 0; }
.hn .hn-passport-demo__specs > div { display: grid; grid-template-columns: 1.15fr 1fr; gap: 12px; padding: 11px 0; border-bottom: 1px solid #eaf0f5; align-items: start; }
.hn .hn-passport-demo__specs > div:last-child { border: 0; padding-bottom: 0; }
.hn .hn-passport-demo__specs dt { font-size: 11px; line-height: 1.55; color: #6a7d90; font-weight: 400; }
.hn .hn-passport-demo__specs dd { font-size: 12px; line-height: 1.5; color: #26394e; font-weight: 600; margin: 0; overflow-wrap: anywhere; }
.hn .hn-passport-demo__cover { display: block; width: 100%; height: 135px; object-fit: cover; object-position: center 45%; border-radius: 9px; margin-bottom: 12px; }
.hn .hn-passport-demo__tag { display: inline-block; padding: 5px 8px; border-radius: 6px; background: #e6f5fd; color: #0889be; font-size: 10px; line-height: 1.5; font-weight: 600; }
.hn .hn-passport-demo__tag--warm { background: #fff3d8; color: #98651a; }
.hn .hn-passport-demo__person { display: flex; align-items: center; gap: 11px; }
.hn .hn-passport-demo__person > span { display: grid; place-items: center; flex: 0 0 36px; height: 36px; border-radius: 50%; background: #e6f5fd; color: #079ddc; }
.hn .hn-passport-demo__person svg { width: 21px; height: 21px; }
.hn .hn-passport-demo__person b, .hn .hn-passport-demo__person small { display: block; font-size: 11px; line-height: 1.6; }
.hn .hn-passport-demo__person small { font-size: 10px; color: #7b899a; }
.hn .hn-passport-demo__card .hn-passport-demo__action { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 11px; border-radius: 8px; color: #0789bf; background: #ebf7fd; font-size: 11px; font-weight: 600; margin-top: 16px; }
.hn .hn-passport-demo__action svg { width: 16px; height: 16px; }
.hn .hn-passport-demo__paper { border: 1px solid #dfebf3; border-left: 4px solid #079ddc; border-radius: 6px; padding: 16px 12px; background: #f9fcff; }
.hn .hn-passport-demo__paper svg { width: 26px; height: 26px; color: #079ddc; float: left; margin-right: 10px; }
.hn .hn-passport-demo__paper b, .hn .hn-passport-demo__paper span { display: block; font-size: 12px; line-height: 1.6; }
.hn .hn-passport-demo__paper span { font-size: 9px; color: #7b899a; }
.hn .hn-passport-demo__photo { margin: 0; }
.hn .hn-passport-demo__photo img { display: block; width: 100%; height: 370px; object-fit: cover; border-radius: 10px; }
.hn .hn-passport-demo__photo figcaption { font-size: 11px; line-height: 1.5; margin-top: 10px; color: #6a7d90; }
.hn .hn-passport-demo__photo-caption { display: flex; align-items: center; gap: 8px; font-size: 10px; padding-top: 14px; color: #079ddc; }
.hn .hn-passport-demo__photo-caption svg { width: 18px; height: 18px; }
.hn .hn-passport-demo__entry { border-left: 2px solid #b8e1f4; padding: 0 0 22px 15px; margin: 0 0 4px 4px; }
.hn .hn-passport-demo__entry:last-child { padding-bottom: 0; }
.hn .hn-passport-demo__entry time { color: #079ddc; font-size: 10px; font-weight: 600; }
.hn .hn-passport-demo__entry small { display: block; font-size: 10px; line-height: 1.6; color: #728398; margin-top: 12px; }
.hn .hn-passport-demo__invite { font-size: 10px; line-height: 1.6; color: #718297; border: 1px solid #dae6ef; padding: 12px; border-radius: 8px; }
.hn .hn-passport-demo__invite span { display: block; color: #079ddc; letter-spacing: 2px; }
.hn .hn-passport-demo__sample { color: #8695a5; text-align: center; font-size: 9px; padding: 0 12px 14px; margin: 12px 0 0; }
.hn .hn-passport-demo__home { height: 4px; width: 90px; border-radius: 8px; background: #8796a7; margin: 8px auto 1px; }
.hn .hn-passport-demo__explanation { align-self: center; min-width: 0; }
.hn .hn-passport-demo__index { color: #079ddc; font-size: 13px; letter-spacing: 2px; font-weight: 600; }
.hn .hn-passport-demo__detail h3 { font-size: clamp(24px,2.1vw,36px); color: var(--hn-text); line-height: 1.2; font-weight: 600; margin: 18px 0; text-align: left; text-transform: none; letter-spacing: -.8px; }
.hn .hn-passport-demo__detail p { font-size: 16px; line-height: 1.7; color: var(--hn-muted); margin: 0; }
.hn .hn-passport-demo__detail ul { list-style: none; padding: 0; margin: 26px 0 0; display: grid; gap: 18px; }
.hn .hn-passport-demo__detail li { display: flex; align-items: flex-start; gap: 11px; font-size: 14px; line-height: 1.6; color: #435b72; }
.hn .hn-passport-demo__detail li svg { width: 20px; height: 20px; flex: 0 0 20px; color: #079ddc; margin-top: 1px; }
.hn .hn-passport-demo__footnote { font-size: 12px; color: #8795a5; line-height: 1.7; border-top: 1px solid #dceaf3; padding-top: 22px; margin-top: 30px; }
.hn .hn-passport-demo__panel[hidden], .hn .hn-passport-demo__detail[hidden] { display: none; }
.hn .hn-passport-demo__announcement { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.hn .hn-passport-demo__panel:focus-visible, .hn .hn-passport .hn-passport__nav-item:focus-visible { outline: 3px solid #079ddc; outline-offset: 3px; }
@media (max-width: 1100px) {
  .hn .hn-passport .hn-passport__body { grid-template-columns: minmax(210px,1fr) minmax(300px,370px); gap: 28px; }
  .hn .hn-passport-demo__device { grid-column: 2; grid-row: 1 / 3; }
  .hn .hn-passport-demo__explanation { grid-column: 1; align-self: start; }
  .hn .hn-passport-demo__detail h3 { font-size: 25px; }
  .hn .hn-passport-demo__detail p { font-size: 14px; }
}
@media (max-width: 699px) {
  .hn .hn-passport .hn-passport__body { display: flex; flex-direction: column; gap: 26px; margin: 28px 0 34px; }
  .hn .hn-passport .hn-passport__sidebar { width: 100%; }
  .hn .hn-passport .hn-passport__nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; }
  .hn .hn-passport .hn-passport__nav-item { font-size: 12px; padding: 12px 10px; min-height: 58px; gap: 9px; border-radius: 10px; background: #fff9; }
  .hn .hn-passport .hn-passport__nav-item--active { background: #def1fc; }
  .hn .hn-passport .hn-passport__nav-icon { width: 21px; height: 23px; flex-basis: 21px; }
  .hn .hn-passport .hn-passport__nav-arrow { display: none; }
  .hn .hn-passport .hn-passport__button { min-height: 52px; font-size: 13px; margin-top: 14px; }
  .hn .hn-passport-demo__device { width: min(100%,360px); align-self: center; border-radius: 36px; padding: 7px; }
  .hn .hn-passport-demo__screen { min-height: 670px; border-radius: 24px; }
  .hn .hn-passport-demo__explanation { width: 100%; }
  .hn .hn-passport-demo__detail h3 { font-size: 26px; margin: 12px 0; }
  .hn .hn-passport-demo__detail ul { margin-top: 18px; gap: 12px; }
  .hn .hn-passport-demo__footnote { margin: 20px 0 0; padding-top: 16px; }
}

/* =====================================================================
   POLISH v7 · Чёткие переходы вместо размытых краёв: фото в скруглённых карточках по сетке (≥1200px)
   ===================================================================== */
@media (min-width: 1200px) {
  /* «Начните вести историю» — карточка-баннер с чётким фото */
  .hn .hn-history-cta {
    margin: 12px var(--hn-edge) 0; padding: 44px 36px 44px 32%; min-height: 0;
    border-radius: 32px; background: #dcecf6; box-shadow: 0 30px 60px -36px rgba(12, 60, 100, .45);
  }
  .hn .hn-history-cta__background { -webkit-mask-image: none; mask-image: none; transform: none; object-position: center 40%; }
  .hn .hn-history-cta::before { background: linear-gradient(90deg, rgba(246, 251, 255, 0) 0%, rgba(246, 251, 255, 0) 30%, rgba(246, 251, 255, .35) 100%); }
  .hn .hn-history-cta__panel { box-shadow: 0 24px 50px -28px rgba(12, 50, 90, .5); background: rgba(255, 255, 255, .94); }
  .hn .hn-history-cta__note {
    color: #fff; text-shadow: 0 1px 10px rgba(8, 30, 52, .65), 0 0 2px rgba(8, 30, 52, .5); left: 4.5%; top: 80px;
  }
  .hn .hn-history-cta__note svg { color: #fff; filter: drop-shadow(0 1px 4px rgba(8, 30, 52, .6)); }

  /* «Простой доступ» — фото справа как скруглённая карточка, текст слева на чистом фоне */
  .hn .hn-qr-access { background: #f6fbff; padding-top: 48px; }
  .hn .hn-qr-access__veil { display: none; }
  .hn .hn-qr-access__background {
    -webkit-mask-image: none; mask-image: none;
    left: max(44%, calc(var(--hn-edge) + 520px)); right: var(--hn-edge); top: 48px; width: auto; height: 820px;
    border-radius: 32px; object-fit: cover; object-position: 40% 45%;
    box-shadow: 0 30px 60px -32px rgba(12, 60, 100, .5);
  }
  .hn .hn-qr-access__note {
    color: #fff; text-shadow: 0 1px 10px rgba(8, 30, 52, .65), 0 0 2px rgba(8, 30, 52, .5); top: 40px; right: 34px;
  }
  .hn .hn-qr-access__note svg { color: #fff; filter: drop-shadow(0 1px 4px rgba(8, 30, 52, .6)); }
}
@media (min-width: 1751px) {
  .hn .hn-qr-access__background { left: calc(var(--hn-edge) + 740px); }
}

/* POLISH v7 · доводка: фото баннера (дом слева, как в оригинале), ширина карточки QR */
@media (min-width: 1200px) {
  .hn .hn-history-cta { padding-left: 25%; }
  .hn .hn-history-cta__background { transform: scaleX(-1); object-position: center 45%; }
  .hn .hn-history-cta__panel { grid-template-columns: minmax(0, 1fr) 340px; gap: 40px; padding: 34px 40px 34px 44px; }
  .hn .hn-history-cta__note { left: 3.5%; top: 70px; }
  .hn .hn-qr-access { --qr-l: max(44%, calc(var(--hn-edge) + 520px)); }
  .hn .hn-qr-access__background { left: var(--qr-l); right: auto; width: calc(100% - var(--qr-l) - var(--hn-edge)); }
}
@media (min-width: 1751px) {
  .hn .hn-qr-access { --qr-l: calc(var(--hn-edge) + 740px); }
  .hn .hn-qr-access__background { left: var(--qr-l); }
}
@media (min-width: 1200px) {
  .hn .hn-history-cta::before { display: none; }
}
@media (min-width: 1200px) and (max-width: 1599px) {
  .hn .hn-history-cta { padding-left: 22%; }
  .hn .hn-history-cta__panel { grid-template-columns: minmax(0, 1fr) 290px; gap: 28px; padding: 30px 32px 30px 36px; }
  .hn .hn-history-cta h2 { font-size: clamp(28px, 2.1vw, 32px); }
}
@media (min-width: 1200px) { .hn .hn-history-cta__background { transform: scale(-1.1, 1.1); } }
@media (min-width: 1200px) { .hn .hn-history-cta__background { transform: scale(-1.28, 1.28); transform-origin: 62% 50%; } }
@media (min-width: 1200px) { .hn .hn-history-cta__background { transform: scale(-1.2, 1.2); transform-origin: 50% 50%; } }

/* «Простой доступ»: действия в строку без залезания на фото, фото не наезжает на нижний блок, нижний блок без обводки */
@media (min-width: 1200px) {
  .hn .hn-qr-access__inner { min-height: 860px; }
  .hn .hn-qr-access__background { height: 840px; }
  .hn .hn-qr-access__actions { flex-wrap: wrap; gap: 18px 28px; max-width: 100%; }
  .hn .hn-qr-access__button { width: 360px; max-width: 100%; }
  .hn .hn-qr-access__how { white-space: nowrap; }
  .hn .hn-qr-access__summary { border: 0; margin-top: 24px; }
}
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-qr-access__inner { min-height: 840px; }
  .hn .hn-qr-access__background { height: 820px; }
  .hn .hn-qr-access__button { width: 330px; height: 64px; }
}
@media (min-width: 1200px) and (max-width: 1750px) {
  .hn .hn-qr-access__actions { flex-direction: column; align-items: flex-start; gap: 18px; }
}

/* History phone: HTML interface with data from the public passport example. */
.hn .hn-history .hn-history__phone--html { width: min(100%, 350px); height: auto; aspect-ratio: auto; object-fit: initial; filter: none; margin: 32px auto 0; }
.hn .hn-history__phone--html .hn-passport-demo__screen { min-height: 0; }
.hn .hn-history__phone--html .hn-passport-demo__hero h3 { font-size: 21px; }
.hn .hn-history__phone--html .hn-passport-demo__entry h5 { font-size: 13px; margin: 8px 0; }
.hn .hn-history__phone--html .hn-passport-demo__entry p { font-size: 12px; line-height: 1.65; }
.hn .hn-history__phone--html .hn-passport-demo__entry small { font-size: 10px; line-height: 1.6; }
.hn .hn-history__phone--html .hn-passport-demo__entry time { font-size: 11px; }
.hn .hn-history-phone__list { list-style: none; margin: 0; padding: 0; }
.hn .hn-history-phone__object .hn-passport-demo__specs { margin-top: 4px; }
.hn .hn-history-phone__object .hn-passport-demo__specs > div { padding: 8px 0; }
.hn .hn-history-phone__source { display: flex; align-items: center; justify-content: space-between; gap: 8px; border-radius: 9px; padding: 13px 12px; background: #e2f3fc; color: #087fae; font-size: 11px; font-weight: 600; line-height: 1.5; }
.hn .hn-history-phone__source svg { width: 18px; height: 18px; flex: 0 0 18px; }
.hn .hn-history-phone__source:hover { background: #d5edfa; }
.hn .hn-history-phone__source:focus-visible { outline: 3px solid #079ddc; outline-offset: 3px; }
@media (min-width: 1200px) {
  .hn .hn-history .hn-history__inner { display: grid; grid-template-columns: minmax(0,1fr) 350px; column-gap: 40px; align-items: start; }
  .hn .hn-history .hn-history__header { grid-column: 1; grid-row: 1; }
  .hn .hn-history .hn-history__timeline { grid-column: 1; grid-row: 2; width: 100%; }
  .hn .hn-history .hn-history__summary { grid-column: 1; grid-row: 3; width: 100%; margin-left: 0; }
  .hn .hn-history .hn-history__phone--html { position: relative; grid-column: 2; grid-row: 1 / 4; align-self: center; justify-self: center; top: auto; right: auto; margin: 0; }
  .hn .hn-history .hn-history__note { display: none; }
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .hn .hn-history .hn-history__inner { grid-template-columns: minmax(0,1fr) 320px; column-gap: 28px; }
}
@media (max-width: 1199px) {
  .hn .hn-history .hn-history__phone--html { position: relative; top: auto; right: auto; display: block; }
}

/* «Свяжитесь с нами»: очень плавный переход фона сверху и снизу */
@media (min-width: 1200px) {
  .hn .hn-contact__background {
    -webkit-mask-image: linear-gradient(180deg, transparent 0, rgba(0,0,0,.18) 8%, rgba(0,0,0,.55) 20%, #000 38%, #000 62%, rgba(0,0,0,.55) 80%, rgba(0,0,0,.18) 92%, transparent 100%);
    mask-image: linear-gradient(180deg, transparent 0, rgba(0,0,0,.18) 8%, rgba(0,0,0,.55) 20%, #000 38%, #000 62%, rgba(0,0,0,.55) 80%, rgba(0,0,0,.18) 92%, transparent 100%);
  }
  .hn .hn-contact__veil {
    background:
      linear-gradient(180deg, #f6fbff 0, rgba(246,251,255,0) 22%, rgba(246,251,255,0) 78%, #f6fbff 100%),
      linear-gradient(90deg,#f6fbff 0%,#f6fbfff7 34%,#f6fbffb3 47%,#f6fbff40 65%,transparent 85%);
  }
}

/* =====================================================================
   POLISH v8 · «Частые вопросы»: фото-карточка справа, контакты и консультант — аккуратными карточками на фото (≥1200px)
   ===================================================================== */
@media (min-width: 1200px) {
  .hn .hn-faq { padding: clamp(96px, 8vw, 140px) 0 clamp(64px, 5vw, 96px); min-height: 0; background: #f6fbff; }
  .hn .hn-faq__veil, .hn .hn-faq__note { display: none; }
  .hn .hn-faq__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .92fr); gap: clamp(32px, 3.4vw, 64px); align-items: stretch; width: auto; max-width: none; margin: 0 var(--hn-edge); }
  .hn .hn-faq__copy { width: auto; grid-column: 1; grid-row: 1 / span 3; }
  .hn .hn-faq__background {
    -webkit-mask-image: none; mask-image: none;
    position: absolute; z-index: 0; left: auto; right: var(--hn-edge); top: clamp(96px, 8vw, 140px); bottom: clamp(64px, 5vw, 96px);
    width: calc((100% - 2 * var(--hn-edge)) * .92 / 1.92 - clamp(16px, 1.7vw, 32px)); height: auto;
    border-radius: 32px; object-fit: cover; object-position: 62% 30%; box-shadow: 0 30px 60px -32px rgba(12, 60, 100, .5);
  }
  .hn .hn-faq__list { gap: 12px; }
  .hn .hn-faq__item { background: #fff; border: 1px solid #e3eef6; border-radius: 20px; box-shadow: 0 10px 24px -16px rgba(30, 80, 120, .35); transition: border-color .2s ease, box-shadow .2s ease; }
  .hn .hn-faq__item:hover { border-color: #bfe3f7; }
  .hn .hn-faq__item[open] { border-color: #9fd6f2; box-shadow: 0 18px 36px -20px rgba(7, 126, 190, .45); }
  .hn .hn-faq__item summary { font-size: clamp(16px, 1.2vw, 19px); }
  .hn .hn-faq__answer { color: #5b6f8c; font-size: clamp(14px, 1vw, 16px); padding: 4px 8px 4px; }

  /* карточки поверх фото */
  .hn .hn-faq__contacts {
    position: absolute; z-index: 2; left: auto; top: auto; width: min(360px, 38%); right: calc(var(--hn-edge) + clamp(16px, 2vw, 32px)); bottom: calc(clamp(64px, 5vw, 96px) + 24px + 100px);
    padding: 20px; gap: 6px; border-radius: 22px; background: rgba(255, 255, 255, .92);
    -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); box-shadow: 0 24px 48px -24px rgba(8, 30, 52, .55);
  }
  .hn .hn-faq__contacts > a { padding: 8px 8px; border-radius: 14px; gap: 14px; transition: background-color .2s ease; }
  .hn .hn-faq__contacts > a:hover { background: #eaf6fd; }
  .hn .hn-faq__contact-icon { width: 46px; height: 46px; flex-basis: 46px; border-radius: 14px; }
  .hn .hn-faq__contact-icon svg { width: 24px; height: 24px; stroke-width: 2; }
  .hn .hn-faq__contacts strong { font-size: 15px; font-weight: 600; }
  .hn .hn-faq__contacts small { font-size: 12.5px; }
  .hn .hn-faq__contact-arrow { width: 20px; height: 20px; transition: transform .2s ease; }
  .hn .hn-faq__contacts > a:hover .hn-faq__contact-arrow { transform: translateX(3px); }
  .hn .hn-faq__consultant {
    position: absolute; z-index: 2; top: auto; width: auto; min-width: 270px; right: calc(var(--hn-edge) + clamp(16px, 2vw, 32px)); bottom: calc(clamp(64px, 5vw, 96px) + 24px);
    align-items: center; min-height: 0; padding: 14px 20px; border-radius: 20px; background: rgba(10, 27, 36, .78);
  }
  .hn .hn-faq__consultant strong { font-size: 15px; font-weight: 600; }
  .hn .hn-faq__consultant p { font-size: 13px; margin: 0; }
  .hn .hn-faq__status-dot { margin-top: 0; box-shadow: 0 0 0 4px rgba(76, 201, 132, .28); }
  .hn .hn-faq__greeting { display: none; }
}
@media (min-width: 1200px) {
  .hn .hn-faq__background { height: calc(100% - clamp(96px, 8vw, 140px) - clamp(64px, 5vw, 96px)); bottom: auto; }
}

/* POLISH v8 · «Готовы начать?» и «Сделаем ваш объект лучше»: мягкие переходы фото */
@media (min-width: 1200px) {
  .hn .hn-final-cta { border-radius: 32px; background: #edf8ff; }
  .hn .hn-final-cta__background {
    width: 62%; object-position: 30% center;
    -webkit-mask-image: linear-gradient(90deg, #000 0, #000 38%, rgba(0,0,0,.8) 52%, rgba(0,0,0,.5) 66%, rgba(0,0,0,.22) 80%, rgba(0,0,0,.07) 92%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0, #000 38%, rgba(0,0,0,.8) 52%, rgba(0,0,0,.5) 66%, rgba(0,0,0,.22) 80%, rgba(0,0,0,.07) 92%, transparent 100%);
  }
  .hn .hn-final-cta__veil { background: linear-gradient(90deg, transparent 0, transparent 34%, rgba(237,248,255,.35) 46%, rgba(237,248,255,.8) 58%, #edf8ff 70%); }

  .hn .hn-project-start { background: #f6fbff; }
  .hn .hn-project-start__background {
    -webkit-mask-image: linear-gradient(180deg, transparent 0, rgba(0,0,0,.12) 10%, rgba(0,0,0,.4) 24%, rgba(0,0,0,.75) 42%, #000 62%, #000 82%, rgba(0,0,0,.4) 94%, transparent 100%);
    mask-image: linear-gradient(180deg, transparent 0, rgba(0,0,0,.12) 10%, rgba(0,0,0,.4) 24%, rgba(0,0,0,.75) 42%, #000 62%, #000 82%, rgba(0,0,0,.4) 94%, transparent 100%);
  }
  .hn .hn-project-start__veil {
    background:
      linear-gradient(180deg, #f6fbff 0, rgba(246,251,255,.6) 18%, rgba(246,251,255,0) 45%, rgba(246,251,255,0) 85%, #f6fbff 100%),
      linear-gradient(90deg,#f6fbfff2 0%,#f6fbfff2 27%,#f6fbff9c 44%,transparent 64%);
  }
}
@media (min-width: 1200px) {
  .hn .hn-final-cta__background {
    width: 58%; object-position: right center;
    -webkit-mask-image: linear-gradient(90deg, #000 0, #000 45%, rgba(0,0,0,.7) 62%, rgba(0,0,0,.35) 77%, rgba(0,0,0,.1) 90%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0, #000 45%, rgba(0,0,0,.7) 62%, rgba(0,0,0,.35) 77%, rgba(0,0,0,.1) 90%, transparent 100%);
  }
}


/* =====================================================================
   POLISH v9 · Единые линии/стрелки шагов, подложка-круг под телефоном, реалистичная строка состояния
   ===================================================================== */
/* Шаги: цифра — линия с узлом — шеврон на конце; последний шаг без шеврона, линия растворяется */
.hn .hn-step__track { gap: 14px; }
.hn .hn-step__track i { background: linear-gradient(90deg, #8fd3f3, #cfeafa); height: 2px; border-radius: 2px; }
.hn .hn-step__track i::before { top: -5px; width: 12px; height: 12px; border-width: 2px; background: var(--hn-accent); box-shadow: 0 0 0 4px #dff2fc; }
.hn .hn-step__track svg { position: static; flex: 0 0 auto; width: 22px; height: 22px; margin-left: -12px; color: #5ec0ee; stroke-width: 2.2; }
.hn .hn-step:last-child .hn-step__track i { background: linear-gradient(90deg, #8fd3f3, transparent); }

.hn .hn-project-process__step-line { gap: 14px; }
.hn .hn-project-process__step-line::after { content: none; }
.hn .hn-project-process__step-line i { position: relative; flex: 1; height: 2px; border-radius: 2px; background: linear-gradient(90deg, #8fd3f3, #cfeafa); }
.hn .hn-project-process__step-line i::before { content: ''; position: absolute; left: 0; top: -5px; width: 12px; height: 12px; border-radius: 50%; background: var(--hn-accent); box-shadow: 0 0 0 4px #dff2fc; }
.hn .hn-project-process__step-line svg { position: static; flex: 0 0 auto; width: 22px; height: 22px; margin-left: -12px; color: #5ec0ee; stroke-width: 2.2; }
.hn .hn-project-process__steps li:last-child .hn-project-process__step-line i { background: linear-gradient(90deg, #8fd3f3, transparent); }

/* Телефон: круглая «сцена» с кольцами и мягкая тень-эллипс под корпусом */
@media (min-width: 1200px) {
  .hn .hn-passport-demo__device::before {
    content: ''; position: absolute; z-index: -1; left: 50%; top: 50%; width: 640px; height: 640px; transform: translate(-50%, -48%); border-radius: 50%; pointer-events: none;
    background: radial-gradient(circle at 50% 45%, #ffffff 0%, #e4f4ff 46%, #cfeafc 100%);
    box-shadow: 0 0 0 36px rgba(7, 157, 220, .07), 0 0 0 84px rgba(7, 157, 220, .045), 0 40px 80px -30px rgba(12, 90, 140, .35);
  }
  .hn .hn-passport-demo__device::after {
    content: ''; position: absolute; z-index: -1; left: 8%; right: 8%; bottom: -26px; height: 36px; border-radius: 50%; pointer-events: none;
    background: radial-gradient(ellipse at center, rgba(12, 60, 100, .38), rgba(12, 60, 100, 0) 70%); filter: blur(6px);
  }
  .hn .hn-history__phone--html.hn-passport-demo__device::before, .hn .hn-history__phone--html.hn-passport-demo__device::after { display: none; }
}
.hn .hn-passport-demo__device { box-shadow: 0 30px 60px -20px rgba(8, 40, 70, .5), inset 0 0 0 2px #728094, inset 0 0 0 5px #0d1622; }

/* Строка состояния: как у iPhone */
.hn .hn-passport-demo__status { height: 34px; padding: 6px 22px 0; font: 600 13px/1 -apple-system, 'SF Pro Text', 'Segoe UI', Roboto, Arial, sans-serif; letter-spacing: .01em; }
.hn .hn-passport-demo__status i { width: 92px; height: 24px; margin-top: 2px; background: #02060b; box-shadow: inset 0 0 0 1px #1a2430; position: relative; }
.hn .hn-passport-demo__status i::after { content: ''; position: absolute; right: 12px; top: 8px; width: 8px; height: 8px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #2a3d57, #0a121c 70%); }
.hn .hn-status__icons { display: flex; align-items: center; gap: 5px; }
.hn .hn-status__icons svg { display: block; height: 11px; width: auto; fill: currentColor; }
.hn .hn-status__icons svg:nth-child(3) { height: 12px; }
.hn .hn-passport-demo__home { width: 120px; height: 5px; background: #cfd8e3; }
.hn .hn-passport { isolation: isolate; }


/* =====================================================================
   POLISH v10 · Попап «Преимущества паспорта» для каждой системы
   ===================================================================== */
html.hn-modal-lock { overflow: hidden; }
.hn-modal { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; padding: 20px; font-family: 'Montserrat', sans-serif; }
.hn-modal[hidden] { display: none; }
.hn-modal__backdrop { position: absolute; inset: 0; background: rgba(9, 28, 46, .55); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); opacity: 0; transition: opacity .22s ease; }
.hn-modal--open .hn-modal__backdrop { opacity: 1; }
.hn-modal__dialog {
  position: relative; width: min(100%, 580px); max-height: calc(100vh - 40px); overflow-y: auto; padding: 36px 36px 28px; border-radius: 32px; outline: 0;
  background: linear-gradient(180deg, #e4f4ff 0, #fff 190px); color: #0f2238;
  box-shadow: 0 50px 100px -30px rgba(6, 30, 56, .6), 0 0 0 1px rgba(255, 255, 255, .6) inset;
  opacity: 0; transform: translateY(18px) scale(.96); transition: opacity .24s ease, transform .3s cubic-bezier(.2, .8, .2, 1);
}
.hn-modal--open .hn-modal__dialog { opacity: 1; transform: none; }
.hn-modal__close { position: absolute; top: 18px; right: 18px; width: 42px; height: 42px; display: grid; place-items: center; border: 0; border-radius: 14px; background: rgba(255, 255, 255, .8); color: #35506e; cursor: pointer; transition: background-color .2s ease, transform .2s ease, color .2s ease; }
.hn-modal__close:hover { background: #fff; color: #0782c8; transform: rotate(90deg); }
.hn-modal__close svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.hn-modal__head { display: flex; align-items: center; gap: 18px; padding-right: 48px; }
.hn-modal__icon { display: grid; place-items: center; width: 72px; height: 72px; flex: 0 0 72px; border-radius: 22px; color: #fff; background: linear-gradient(150deg, #2cb9f2, #0782c8); box-shadow: 0 16px 28px -12px rgba(7, 126, 190, .7), inset 0 0 0 1px rgba(255, 255, 255, .3); }
.hn-modal__icon svg { width: 38px; height: 38px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.hn-modal__eyebrow { margin: 0 0 4px; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: #0679ad; }
.hn-modal__title { margin: 0; font-size: 32px; font-weight: 600; line-height: 1.1; letter-spacing: -.03em; color: #0b1c2f; text-transform: none; text-align: left; }
.hn-modal__lead { margin: 20px 0 22px; font-size: 16px; line-height: 1.55; color: #46607d; }
.hn-modal__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.hn-modal__list li { display: flex; gap: 14px; padding: 14px 16px; border-radius: 20px; background: #f3f9fe; border: 1px solid #e1eff9; transition: background-color .2s ease, border-color .2s ease, transform .2s ease; }
.hn-modal__list li:hover { background: #e9f6ff; border-color: #bfe3f7; transform: translateX(3px); }
.hn-modal__bicon { display: grid; place-items: center; width: 44px; height: 44px; flex: 0 0 44px; border-radius: 14px; background: #fff; color: #0899dc; box-shadow: 0 8px 16px -10px rgba(7, 126, 190, .6); }
.hn-modal__bicon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.hn-modal__list strong { display: block; font-size: 15px; font-weight: 600; letter-spacing: -.01em; color: #0f2238; }
.hn-modal__list p { margin: 3px 0 0; font-size: 13.5px; line-height: 1.5; color: #5b7390; }
.hn-modal__actions { display: flex; align-items: center; gap: 16px 22px; flex-wrap: wrap; margin-top: 26px; }
.hn-modal__cta { height: 58px; padding: 0 28px; gap: 14px; background: #079ddc; color: #fff; border-radius: 18px; font-size: 16px; font-weight: 600; box-shadow: 0 16px 28px -14px rgba(7, 126, 190, .8); text-decoration: none; }
.hn-modal__cta:hover { background: #067fb4; color: #fff; transform: translateY(-1px); }
.hn-modal__cta .hn-button__arrow { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.hn-modal__more { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 600; color: #079ddc; text-decoration: none; }
.hn-modal__more svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform .2s ease; }
.hn-modal__more:hover { color: #067fb4; }
.hn-modal__more:hover svg { transform: translateX(3px); }
.hn-modal__note { margin: 16px 0 0; font-size: 12.5px; color: #7a8da6; }
.hn-modal a:focus-visible, .hn-modal button:focus-visible { outline: 3px solid #0aa0e6; outline-offset: 3px; }
@media (max-width: 767px) {
  .hn-modal { align-items: end; padding: 0; }
  .hn-modal__dialog { width: 100%; max-height: 92vh; padding: 26px 20px 22px; border-radius: 28px 28px 0 0; transform: translateY(40px); }
  .hn-modal__title { font-size: 26px; }
  .hn-modal__icon { width: 58px; height: 58px; flex-basis: 58px; border-radius: 18px; }
  .hn-modal__cta { width: 100%; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) { .hn-modal__backdrop, .hn-modal__dialog, .hn-modal__list li, .hn-modal__close { transition: none; } }
.hn-modal { z-index: 2147483600; }
.hn-modal__cta { display: inline-flex; align-items: center; justify-content: center; }
.hn-modal__more { white-space: nowrap; }

/* Круг под телефоном: только светлый диск, меньше, без колец */
@media (min-width: 1200px) {
  .hn .hn-passport-demo__device::before {
    width: 500px; height: 500px; transform: translate(-50%, -50%);
    background: radial-gradient(circle at 50% 45%, #ffffff 0%, #eaf6ff 60%, #dcf0fd 100%);
    box-shadow: none;
  }
  .hn .hn-passport-demo__device::after { display: none; }
}
@media (min-width: 1200px) {
  .hn .hn-passport-demo__device::before { width: 520px; height: 520px; background: radial-gradient(circle at 50% 40%, #ffffff 0%, #e3f3ff 55%, #cfe8f9 100%); box-shadow: 0 30px 60px -34px rgba(12, 90, 140, .35); }
}

/* =====================================================================
   POLISH v11 · Каталог систем: 8 плиток; единый современный стиль всех попапов (только в новой верстке)
   ===================================================================== */
.hn .hn-catalog__list { grid-template-columns: repeat(8, 90px); }
@media (min-width: 1200px) and (max-width: 1399px) { .hn .hn-catalog__list { grid-template-columns: repeat(8, 80px); } }
@media (min-width: 1200px) and (max-width: 1750px) { .hn .hn-catalog__list { grid-template-columns: repeat(8, minmax(0, 1fr)); } }

/* Крестик строго по центру (наш попап) */
.hn-modal__close { padding: 0; line-height: 0; }
.hn-modal__close svg { display: block; margin: 0; flex: none; }

/* Попапы «Заказать звонок» / «Оставить заявку» */
html:has(#hn-root) .popup.lk-site-popup.lk-modal-active,
html:has(#hn-root) .popup2.lk-site-popup.lk-modal-active {
  width: min(94vw, 480px) !important; max-width: 480px !important; border: 0 !important; border-radius: 32px !important;
  background: linear-gradient(180deg, #e4f4ff 0, #fff 150px) !important;
  box-shadow: 0 50px 100px -30px rgba(6, 30, 56, .6), 0 0 0 1px rgba(255, 255, 255, .6) inset !important;
  font-family: 'Montserrat', sans-serif;
}
html:has(#hn-root) .lk-site-popup__top { padding: 30px 30px 8px; background: transparent; border: 0; position: relative; }
html:has(#hn-root) .lk-site-popup__header { padding-right: 44px; }
html:has(#hn-root) .lk-site-popup__title { margin: 0; font-size: 28px !important; font-weight: 600; line-height: 1.12; letter-spacing: -.03em; text-transform: none !important; color: #0b1c2f; }
html:has(#hn-root) .lk-site-popup__subtitle { margin: 8px 0 0; font-size: 15px; line-height: 1.5; color: #5b7390; }
html:has(#hn-root) .lk-site-popup__close {
  position: absolute; top: 20px; right: 20px; width: 42px; height: 42px; display: grid; place-items: center; padding: 0; font-size: 0 !important; line-height: 0;
  border: 0; border-radius: 14px; background: rgba(255, 255, 255, .85); color: #35506e; transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
html:has(#hn-root) .lk-site-popup__close .fa { display: none; }
html:has(#hn-root) .lk-site-popup__close::before, html:has(#hn-root) .lk-site-popup__close::after {
  content: ''; position: absolute; left: 50%; top: 50%; width: 18px; height: 2px; margin: -1px 0 0 -9px; border-radius: 2px; background: currentColor;
}
html:has(#hn-root) .lk-site-popup__close::before { transform: rotate(45deg); }
html:has(#hn-root) .lk-site-popup__close::after { transform: rotate(-45deg); }
html:has(#hn-root) .lk-site-popup__close:hover { background: #fff; color: #0782c8; border: 0; transform: rotate(90deg); }
html:has(#hn-root) .lk-site-popup__body { padding: 14px 30px 30px; display: grid; gap: 16px; }
html:has(#hn-root) .lk-site-popup__label { font-size: 13px; font-weight: 600; letter-spacing: .01em; color: #35506e; margin-bottom: 6px; display: block; }
html:has(#hn-root) .lk-site-popup__input, html:has(#hn-root) .lk-site-popup input.hatforma {
  height: 54px; padding: 0 18px !important; font-size: 16px !important; border: 1px solid #dcebf6 !important; border-radius: 16px !important; background: #f3f9fe !important; color: #0f2238; box-shadow: none !important;
}
html:has(#hn-root) .lk-site-popup__input:focus, html:has(#hn-root) .lk-site-popup input.hatforma:focus { border-color: #079ddc !important; background: #fff !important; box-shadow: 0 0 0 4px rgba(7, 157, 220, .14) !important; }
html:has(#hn-root) .lk-site-popup .lk-privacy-consent { font-size: 13px; color: #5b7390; gap: 10px; }
html:has(#hn-root) .lk-site-popup .lk-privacy-consent input[type="checkbox"] { width: 18px; height: 18px; }
html:has(#hn-root) .lk-site-popup__submit {
  height: 56px; padding: 0 24px; font-size: 16px; font-weight: 600; border-radius: 18px; background: #079ddc; box-shadow: 0 16px 28px -14px rgba(7, 126, 190, .8); transition: background-color .2s ease, transform .2s ease;
}
html:has(#hn-root) .lk-site-popup__submit:hover { background: #067fb4; transform: translateY(-1px); }

/* Попап «Заявка мастеру» */
html:has(#hn-root) .lk-modal__dialog { border-radius: 32px; }
html:has(#hn-root) .lk-master-request {
  border-radius: 32px; overflow: hidden; border: 0; font-family: 'Montserrat', sans-serif;
  background: linear-gradient(180deg, #e4f4ff 0, #fff 150px); box-shadow: 0 50px 100px -30px rgba(6, 30, 56, .6);
}
html:has(#hn-root) .lk-master-request__top { padding: 30px 30px 8px; background: transparent; border: 0; position: relative; }
html:has(#hn-root) .lk-master-request__title { font-size: 26px !important; font-weight: 600; letter-spacing: -.03em; text-transform: none !important; color: #0b1c2f; }
html:has(#hn-root) .lk-master-request__subtitle { font-size: 14.5px; color: #5b7390; }
html:has(#hn-root) .lk-master-request__close {
  position: absolute; top: 20px; right: 20px; width: 42px; height: 42px; display: grid; place-items: center; padding: 0; font-size: 0 !important; line-height: 0;
  border: 0; border-radius: 14px; background: rgba(255, 255, 255, .85); color: #35506e; transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
html:has(#hn-root) .lk-master-request__close .fa { display: none; }
html:has(#hn-root) .lk-master-request__close::before, html:has(#hn-root) .lk-master-request__close::after {
  content: ''; position: absolute; left: 50%; top: 50%; width: 18px; height: 2px; margin: -1px 0 0 -9px; border-radius: 2px; background: currentColor;
}
html:has(#hn-root) .lk-master-request__close::before { transform: rotate(45deg); }
html:has(#hn-root) .lk-master-request__close::after { transform: rotate(-45deg); }
html:has(#hn-root) .lk-master-request__close:hover { background: #fff; color: #0782c8; transform: rotate(90deg); }
html:has(#hn-root) .lk-master-request__body { padding: 14px 30px 30px; }
html:has(#hn-root) .lk-master-request__input { border: 1px solid #dcebf6; border-radius: 16px; background: #f3f9fe; padding: 14px 18px; font-size: 16px; }
html:has(#hn-root) .lk-master-request__input:focus { border-color: #079ddc; background: #fff; box-shadow: 0 0 0 4px rgba(7, 157, 220, .14); }
html:has(#hn-root) .lk-master-request__submit { height: 56px; border-radius: 18px; font-size: 16px; font-weight: 600; box-shadow: 0 16px 28px -14px rgba(7, 126, 190, .8); }

/* Таймлайн: точки ровно посередине зазора и поверх соседних карточек */
@media (min-width: 1200px) {
  .hn .hn-history-card::after { z-index: 3; box-sizing: border-box; left: calc(100% + 5px); box-shadow: 0 0 0 4px #f6fbff; }
}
@media (min-width: 1200px) and (max-width: 1750px) { .hn .hn-history-card::after { left: calc(100% - 1px); } }


/* =====================================================================
   POLISH v12 · Плавающий виджет связи с пульсацией и сменой иконок (вместо старой кнопки MAX), кнопка «наверх»
   ===================================================================== */
html:has(#hn-root) a.max-messenger-button { display: none !important; }
html:has(#hn-root) .site-footer__scroll-top { right: 24px; bottom: 24px; width: 48px; height: 48px; border-radius: 16px; z-index: 10001; }

.hn-fab { position: fixed; right: 24px; bottom: 88px; z-index: 10000; font-family: 'Montserrat', sans-serif; }
.hn-fab__btn {
  position: relative; display: grid; place-items: center; width: 60px; height: 60px; margin-left: auto; padding: 0; border: 0; border-radius: 50%; cursor: pointer; color: #fff;
  background: linear-gradient(150deg, #2cb9f2, #0782c8); box-shadow: 0 14px 30px -10px rgba(7, 126, 190, .8), inset 0 0 0 1px rgba(255, 255, 255, .25);
  transition: transform .2s ease, box-shadow .2s ease;
}
.hn-fab__btn:hover { transform: scale(1.06); }
.hn-fab__pulse { position: absolute; inset: 0; border-radius: 50%; background: rgba(7, 157, 220, .45); animation: hn-pulse 2.6s ease-out infinite; pointer-events: none; z-index: -1; }
.hn-fab__pulse--2 { animation-delay: 1.3s; }
@keyframes hn-pulse { 0% { transform: scale(1); opacity: .7; } 100% { transform: scale(1.95); opacity: 0; } }
.hn-fab__icons { position: relative; width: 28px; height: 28px; display: block; animation: hn-ring 7.5s ease-in-out infinite; }
.hn-fab__i { position: absolute; inset: 0; width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; opacity: 0; transform: scale(.4) rotate(-30deg); animation: hn-swap 7.5s ease-in-out infinite; }
.hn-fab__i--max { fill: currentColor; stroke: none; animation-delay: 2.5s; }
.hn-fab__i--mail { animation-delay: 5s; }
@keyframes hn-swap {
  0% { opacity: 0; transform: scale(.4) rotate(-30deg); }
  4%, 30% { opacity: 1; transform: none; }
  34%, 100% { opacity: 0; transform: scale(.4) rotate(30deg); }
}
@keyframes hn-ring { 0%, 3%, 100% { transform: none; } 6% { transform: rotate(-12deg); } 9% { transform: rotate(12deg); } 12% { transform: rotate(-8deg); } 15% { transform: rotate(0); } }
.hn-fab__x { position: absolute; width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; opacity: 0; transform: rotate(-90deg) scale(.5); transition: opacity .2s ease, transform .3s ease; }
.hn-fab--open .hn-fab__x { opacity: 1; transform: none; }
.hn-fab--open .hn-fab__icons, .hn-fab--open .hn-fab__pulse { opacity: 0; animation: none; }

.hn-fab__panel {
  position: absolute; right: 0; bottom: 76px; width: 330px; padding: 20px 14px 14px; border-radius: 28px;
  background: rgba(255, 255, 255, .96); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
  border: 1px solid rgba(7, 126, 190, .12); box-shadow: 0 40px 80px -30px rgba(8, 40, 70, .55);
  transform-origin: bottom right; animation: hn-fab-in .24s cubic-bezier(.2, .8, .2, 1);
}
.hn-fab__panel[hidden] { display: none; }
@keyframes hn-fab-in { from { opacity: 0; transform: translateY(10px) scale(.95); } to { opacity: 1; transform: none; } }
.hn-fab__head { display: flex; align-items: center; gap: 12px; padding: 0 8px 14px; }
.hn-fab__dot { width: 12px; height: 12px; border-radius: 50%; background: #2fc77a; box-shadow: 0 0 0 4px rgba(47, 199, 122, .22); }
.hn-fab__head strong { display: block; font-size: 18px; font-weight: 600; letter-spacing: -.02em; color: #0b1c2f; }
.hn-fab__head small { display: block; margin-top: 2px; font-size: 13px; color: #5b7390; }
.hn-fab__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.hn-fab__list a { display: flex; align-items: center; gap: 14px; padding: 10px; border-radius: 18px; text-decoration: none; color: #0f2238; transition: background-color .18s ease, transform .18s ease; }
.hn-fab__list a:hover { background: #eaf6fd; transform: translateX(2px); }
.hn-fab__ico { display: grid; place-items: center; width: 46px; height: 46px; flex: 0 0 46px; border-radius: 15px; background: linear-gradient(150deg, #f6fcff, #dcf1ff); color: #0899dc; box-shadow: inset 0 0 0 1px rgba(7, 157, 220, .12); }
.hn-fab__ico svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.hn-fab__ico--max { background: linear-gradient(150deg, #2cb9f2, #0782c8); color: #fff; box-shadow: 0 10px 18px -10px rgba(7, 126, 190, .8); }
.hn-fab__ico--max svg { fill: currentColor; stroke: none; width: 24px; height: 24px; }
.hn-fab__list strong { display: block; font-size: 15px; font-weight: 600; letter-spacing: -.01em; }
.hn-fab__list small { display: block; margin-top: 2px; font-size: 12.5px; color: #6b7f98; }
.hn-fab a:focus-visible, .hn-fab button:focus-visible { outline: 3px solid #0aa0e6; outline-offset: 3px; }
@media (max-width: 767px) {
  .hn-fab { right: 14px; bottom: 76px; }
  .hn-fab__panel { width: min(330px, calc(100vw - 28px)); }
  html:has(#hn-root) .site-footer__scroll-top { right: 14px; bottom: 14px; }
}
@media (prefers-reduced-motion: reduce) { .hn-fab__pulse, .hn-fab__icons, .hn-fab__i { animation: none !important; } .hn-fab__i--phone { opacity: 1; transform: none; } }

/* Общий стиль сайта делает любую кнопку жёлтой при наведении (button:hover) — перекрываем в новой верстке */
.hn-fab__btn, .hn-fab__btn:hover, .hn-fab__btn:focus { background: linear-gradient(150deg, #2cb9f2, #0782c8); color: #fff; }
.hn-fab--open .hn-fab__btn { background: linear-gradient(150deg, #0a8fd0, #066fa6); }
html:has(#hn-root) .site-footer__scroll-top, html:has(#hn-root) .site-footer__scroll-top:hover { background: #079ddc; }
html:has(#hn-root) .site-footer__scroll-top:hover { background: #067fb4; }
/* Кнопка «наверх» — слева внизу */
html:has(#hn-root) .site-footer__scroll-top { right: auto; left: 24px; bottom: 24px; }
@media (max-width: 767px) { html:has(#hn-root) .site-footer__scroll-top { right: auto; left: 14px; bottom: 14px; } }
.hn .hn-menu-toggle:hover { background: none; }
.hn .hn-reviews__prev:hover, .hn .hn-reviews__next:hover { background: rgba(255, 255, 255, .18); }
.hn form button[type="submit"]:hover, .hn .hn-search button:hover { background: #067fb4; }
.hn .hn-account__trigger:hover { background: #dceaf5; }

/* =====================================================================
   POLISH v13 · Единая реакция на наведение во всех секциях (карточки поднимаются, иконки заливаются, фото приближаются)
   ===================================================================== */
/* Карточки с фоном */
.hn .hn-loss__questions li, .hn .hn-history-card:not(.hn-history-card--future), .hn .hn-step__info-card, .hn .hn-step__pdf-card,
.hn .hn-step__timeline li, .hn .hn-project-start__benefits li, .hn .hn-audience-card, .hn .hn-faq__item, .hn .hn-qr-review__panel,
.hn .hn-steps-trust__review, .hn .hn-history__summary, .hn .hn-loss-solution__panel, .hn .hn-passport-summary {
  transition: transform .28s cubic-bezier(.2, .8, .2, 1), box-shadow .28s ease, border-color .2s ease;
}
/* Простые элементы списков без фона */
.hn .hn-loss__reasons li, .hn .hn-loss__result, .hn .hn-audience__benefits li, .hn .hn-community-stats__list > div, .hn .hn-qr-access__benefits li,
.hn .hn-qr-access__stat, .hn .hn-contact__benefits li, .hn .hn-project-process__steps li, .hn .hn-systems__benefits li, .hn .hn-benefits li, .hn .hn-guarantee__benefits li {
  transition: transform .25s cubic-bezier(.2, .8, .2, 1);
}
.hn .hn-loss__thumb { transition: transform .35s cubic-bezier(.2, .8, .2, 1); }
.hn .hn-loss__reasons > li > span, .hn .hn-loss__result > span, .hn .hn-audience__benefits li > span, .hn .hn-community-stats__list svg {
  transition: transform .28s cubic-bezier(.2, .8, .2, 1), background .28s ease, box-shadow .28s ease, color .2s ease;
}
.hn .hn-loss__reasons > li > span, .hn .hn-loss__result > span, .hn .hn-audience__benefits li > span {
  background: linear-gradient(150deg, #f6fcff 0%, #dcf1ff 100%);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .9), 0 0 0 1px rgba(7, 157, 220, .10), 0 8px 18px -10px rgba(7, 126, 190, .45);
  color: var(--hn-accent);
}

@media (hover: hover) {
  .hn .hn-loss__questions li:hover, .hn .hn-history-card:not(.hn-history-card--future):hover, .hn .hn-step__info-card:hover, .hn .hn-step__pdf-card:hover,
  .hn .hn-step__timeline li:hover, .hn .hn-project-start__benefits li:hover, .hn .hn-qr-review__panel:hover, .hn .hn-steps-trust__review:hover,
  .hn .hn-history__summary:hover, .hn .hn-passport-summary:hover {
    transform: translateY(-4px); box-shadow: 0 22px 40px -22px rgba(12, 70, 110, .45);
  }
  .hn .hn-audience-card:hover { transform: translateY(-5px); box-shadow: 0 28px 50px -26px rgba(12, 70, 110, .5); }
  .hn .hn-loss__questions li:hover .hn-loss__thumb { transform: scale(1.06); }
  .hn .hn-loss__reasons li:hover, .hn .hn-loss__result:hover, .hn .hn-audience__benefits li:hover, .hn .hn-community-stats__list > div:hover,
  .hn .hn-qr-access__benefits li:hover, .hn .hn-qr-access__stat:hover, .hn .hn-contact__benefits li:hover, .hn .hn-project-process__steps li:hover,
  .hn .hn-systems__benefits li:hover, .hn .hn-benefits li:hover, .hn .hn-guarantee__benefits li:hover { transform: translateY(-3px); }
  .hn .hn-loss__reasons li:hover > span, .hn .hn-loss__result:hover > span, .hn .hn-audience__benefits li:hover > span {
    background: linear-gradient(150deg, #2cb9f2 0%, #0782c8 100%); color: #fff; transform: translateY(-2px);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .28), 0 14px 24px -10px rgba(7, 126, 190, .75);
  }
  .hn .hn-loss__reasons li:hover > span svg, .hn .hn-loss__result:hover > span svg, .hn .hn-audience__benefits li:hover > span svg { transform: scale(1.1) rotate(-5deg); }
  .hn .hn-community-stats__list > div:hover svg { transform: scale(1.12); }
  .hn .hn-project-process__steps li:hover .hn-project-process__icon, .hn .hn-qr-access__stat:hover .hn-qr-access__stat-icon,
  .hn .hn-steps-trust__security:hover .hn-steps-trust__icon, .hn .hn-loss-solution__answer:hover .hn-loss-solution__icon {
    background: linear-gradient(150deg, #2cb9f2, #0782c8); color: #fff; transform: translateY(-3px);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .28), 0 14px 24px -10px rgba(7, 126, 190, .75);
  }
  .hn .hn-project-process__icon svg, .hn .hn-qr-access__stat-icon svg, .hn .hn-steps-trust__icon svg, .hn .hn-loss-solution__icon svg { transition: transform .3s ease; }
  .hn .hn-project-process__steps li:hover .hn-project-process__icon svg, .hn .hn-qr-access__stat:hover .hn-qr-access__stat-icon svg,
  .hn .hn-steps-trust__security:hover .hn-steps-trust__icon svg, .hn .hn-loss-solution__answer:hover .hn-loss-solution__icon svg { transform: scale(1.1) rotate(-5deg); }
}

/* «Готовы начать?»: длинный плавный переход, текст всегда на чистом фоне */
@media (min-width: 1200px) {
  .hn .hn-final-cta__inner { margin-left: 43%; }
  .hn .hn-final-cta__background {
    width: 56%; object-position: 22% center;
    -webkit-mask-image: linear-gradient(90deg, #000 0, #000 18%, rgba(0,0,0,.8) 34%, rgba(0,0,0,.55) 50%, rgba(0,0,0,.3) 66%, rgba(0,0,0,.12) 82%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0, #000 18%, rgba(0,0,0,.8) 34%, rgba(0,0,0,.55) 50%, rgba(0,0,0,.3) 66%, rgba(0,0,0,.12) 82%, transparent 100%);
  }
  .hn .hn-final-cta__veil { background: linear-gradient(90deg, transparent 0, transparent 24%, rgba(237,248,255,.45) 38%, rgba(237,248,255,.85) 47%, #edf8ff 56%); }
}
@media (min-width: 1200px) and (max-width: 1600px) {
  .hn .hn-final-cta__inner { margin-left: 45%; grid-template-columns: minmax(0, 1fr) 290px; gap: 28px; }
  .hn .hn-final-cta h2 { font-size: 34px; }
}
@media (min-width: 1200px) { .hn .hn-final-cta__background { object-position: 72% center; transform: scale(1.12); transform-origin: 100% 50%; } }


/* =====================================================================
   POLISH v14 · Анимации появления (включаются скриптом; без JS и при «уменьшить движение» всё видно сразу)
   Используются отдельные свойства translate/scale, чтобы не конфликтовать с hover-эффектами (transform).
   ===================================================================== */
.hn.hn-anim [data-r] {
  --hn-ease: cubic-bezier(.16, 1, .3, 1);
  transition: opacity .9s var(--hn-ease) var(--hn-d, 0ms), translate 1s var(--hn-ease) var(--hn-d, 0ms), scale 1.1s var(--hn-ease) var(--hn-d, 0ms), filter .8s ease var(--hn-d, 0ms);
}
.hn.hn-anim [data-r="up"]:not(.hn-in) { opacity: 0; translate: 0 28px; filter: blur(6px); }
.hn.hn-anim [data-r="media"]:not(.hn-in) { opacity: 0; translate: 0 44px; scale: .965; }

/* линии «рисуются» слева направо */
.hn.hn-anim .hn-step__track[data-r="draw"] i,
.hn.hn-anim .hn-project-process__step-line[data-r="draw"] i,
.hn.hn-anim .hn-history__timeline[data-r="draw"]::before { transition: clip-path 1.3s cubic-bezier(.65, 0, .35, 1) var(--hn-d, 0ms); }
.hn.hn-anim .hn-step__track[data-r="draw"]:not(.hn-in) i,
.hn.hn-anim .hn-project-process__step-line[data-r="draw"]:not(.hn-in) i { clip-path: inset(-12px 100% -12px 0); }
.hn.hn-anim .hn-step__track[data-r="draw"].hn-in i,
.hn.hn-anim .hn-project-process__step-line[data-r="draw"].hn-in i { clip-path: inset(-12px 0 -12px 0); }
.hn.hn-anim .hn-history__timeline[data-r="draw"]:not(.hn-in)::before { clip-path: inset(0 100% 0 0); }
.hn.hn-anim .hn-history__timeline[data-r="draw"].hn-in::before { clip-path: inset(0 0 0 0); }

/* шапка плавно опускается при загрузке */
@keyframes hn-drop { from { opacity: 0; translate: 0 -100%; } to { opacity: 1; translate: 0 0; } }
.hn.hn-anim .hn-header { animation: hn-drop 1s cubic-bezier(.16, 1, .3, 1) both; }

/* акцентные слова в заголовках слегка «проявляются» после появления заголовка */
@keyframes hn-accent { from { background-position: 100% 0; } to { background-position: 0 0; } }
.hn.hn-anim section:not(.hn-reviews):not(.hn-guarantee) h2 > span, .hn.hn-anim .hn-hero__title > span {
  background: linear-gradient(100deg, var(--hn-accent) 0 40%, #5ec9f7 50%, var(--hn-accent) 60% 100%) 100% 0 / 260% 100% no-repeat;
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
  animation: hn-accent 1.6s .5s cubic-bezier(.4, 0, .2, 1) both;
}


/* Плоские панели (без собственной «карточной» подложки) не поднимаются и не получают тень при наведении */
@media (hover: hover) {
  .hn .hn-steps-trust__review:hover, .hn .hn-history__summary:hover, .hn .hn-passport-summary:hover, .hn .hn-qr-review__panel:hover,
  .hn .hn-loss-solution__panel:hover { transform: none; box-shadow: none; }
}

/* Подвал: значок MAX — белый, тот же, что в виджете */
html:has(#hn-root) .site-footer__social-link[href*="max.ru"] { background: linear-gradient(150deg, #2cb9f2, #0782c8); border-color: transparent; position: relative; transition: transform .2s ease, box-shadow .2s ease; }
html:has(#hn-root) .site-footer__social-link[href*="max.ru"] img { opacity: 0; }
html:has(#hn-root) .site-footer__social-link[href*="max.ru"]::before {
  content: ''; position: absolute; inset: 0; margin: auto; width: 26px; height: 26px; background: #fff;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 720 720'%3E%3Cpath d='M350.4,9.6C141.8,20.5,4.1,184.1,12.8,390.4c3.8,90.3,40.1,168,48.7,253.7,2.2,22.2-4.2,49.6,21.4,59.3,31.5,11.9,79.8-8.1,106.2-26.4,9-6.1,17.6-13.2,24.2-22,27.3,18.1,53.2,35.6,85.7,43.4,143.1,34.3,299.9-44.2,369.6-170.3C799.6,291.2,622.5-4.6,350.4,9.6h0ZM269.4,504c-11.3,8.8-22.2,20.8-34.7,27.7-18.1,9.7-23.7-.4-30.5-16.4-21.4-50.9-24-137.6-11.5-190.9,16.8-72.5,72.9-136.3,150-143.1,78-6.9,150.4,32.7,183.1,104.2,72.4,159.1-112.9,316.2-256.4,218.6h0Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 720 720'%3E%3Cpath d='M350.4,9.6C141.8,20.5,4.1,184.1,12.8,390.4c3.8,90.3,40.1,168,48.7,253.7,2.2,22.2-4.2,49.6,21.4,59.3,31.5,11.9,79.8-8.1,106.2-26.4,9-6.1,17.6-13.2,24.2-22,27.3,18.1,53.2,35.6,85.7,43.4,143.1,34.3,299.9-44.2,369.6-170.3C799.6,291.2,622.5-4.6,350.4,9.6h0ZM269.4,504c-11.3,8.8-22.2,20.8-34.7,27.7-18.1,9.7-23.7-.4-30.5-16.4-21.4-50.9-24-137.6-11.5-190.9,16.8-72.5,72.9-136.3,150-143.1,78-6.9,150.4,32.7,183.1,104.2,72.4,159.1-112.9,316.2-256.4,218.6h0Z'/%3E%3C/svg%3E") center / contain no-repeat;
}
html:has(#hn-root) .site-footer__social-link[href*="max.ru"]:hover { transform: translateY(-2px); box-shadow: 0 12px 22px -10px rgba(44, 185, 242, .8); }

/* Подвал: отдельные ссылки «Владельцам» и «Мастерам» под «Полезным» */
.site-footer.hn-footer .hn-footer__audience { display: grid; gap: 8px; margin: 8px 0 0; padding: 0; }
.site-footer.hn-footer .hn-footer__audience a { margin: 0; padding: 0; border: 0; background: transparent; font-size: 13px; color: #b9c9d8; font-weight: 400; line-height: 1.6; text-decoration: none; }
.site-footer.hn-footer .hn-footer__audience a:hover { color: #079ddc; }

/* Подвал: значок MAX — только обводка, без фона; заливка при наведении */
html:has(#hn-root) .site-footer__social-link[href*="max.ru"] {
  background: transparent; border: 1.5px solid rgba(255, 255, 255, .38); width: 46px; height: 46px; box-shadow: none;
  transition: background-color .25s ease, border-color .25s ease, transform .2s ease, box-shadow .25s ease;
}
html:has(#hn-root) .site-footer__social-link[href*="max.ru"]::before { width: 20px; height: 20px; background: #fff; transition: background-color .2s ease; }
html:has(#hn-root) .site-footer__social-link[href*="max.ru"]:hover {
  background: linear-gradient(150deg, #2cb9f2, #0782c8); border-color: transparent; transform: translateY(-2px); box-shadow: 0 12px 22px -10px rgba(44, 185, 242, .8);
}
/* каталог систем: 8 плиток — на планшете 4 в ряд, на телефоне 2–3 */
@media (max-width: 1199px) { .hn .hn-catalog__list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px 14px; justify-content: normal; } }
@media (max-width: 767px) { .hn .hn-catalog__list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px 8px; } .hn .hn-catalog__label { font-size: 11px; } }
@media (max-width: 479px) { .hn .hn-catalog__list { grid-template-columns: repeat(4, minmax(0, 1fr)); } .hn .hn-catalog__icon { width: 100%; max-width: 62px; height: 60px; } .hn .hn-catalog__tile { height: 60px; } }

/* Подвал: «Инженерные системы» — заголовок и раскрытый список на всех экранах */
.site-footer.hn-footer .hn-footer__details > summary {
  list-style: none; cursor: default; pointer-events: none; padding: 0 0 12px; margin: 0;
  color: #f4f7fa; font-size: 16px; font-weight: 600; line-height: 1.5; letter-spacing: -.4px; text-transform: none;
}
.site-footer.hn-footer .hn-footer__details > summary::-webkit-details-marker { display: none; }
.site-footer.hn-footer .hn-footer__details > summary::marker { content: ''; }
@media (max-width: 767px) {
  .hn .hn-hero__note { display: none; }
  .site-footer.hn-footer .hn-footer__details { margin-top: 24px; }
}

/* Вес заголовков на планшете и телефоне — как на десктопе */
@media (max-width: 1199px) {
  .hn .hn-hero__title, .hn h2, .hn .hn-systems__title, .hn .hn-passport__title { font-weight: 600; }
}
.site-footer.hn-footer .hn-footer__details .site-footer__list a { text-transform: none; font-weight: 400; letter-spacing: -.3px; }
.site-footer.hn-footer .hn-footer__details { margin-bottom: 0; }

/* =====================================================================
   POLISH v15 · Исправления по замечаниям: круг под телефоном без наложения, кнопки, курсив на узких экранах, отступы в кнопках
   ===================================================================== */
/* Кнопки блока «Для кого»: одинаковый размер на любой ширине (раньше сжимались в колонке) */
.hn .hn-audience-card__button { flex-shrink: 0; box-sizing: border-box; width: 100%; min-height: 56px; height: clamp(56px, 5.2vw, 82px); padding: 0 20px; }
@media (max-width: 1199px) { .hn .hn-audience-card__button { height: 60px; min-height: 60px; } }

/* Отступы внутри кнопок отправки */
.hn .hn-button, .hn .hn-project-start__submit, .hn .hn-contact__submit, .hn button[type="submit"].hn-button { padding-left: 20px; padding-right: 20px; box-sizing: border-box; }
.hn .hn-project-start__submit { padding: 0 22px; }

/* Рукописная подпись «Кто устанавливал?» накладывалась на заголовок — показываем только на широких экранах */
@media (max-width: 1399px) { .hn .hn-loss__note { display: none; } }

/* Курсив (рукописные подписи) убираем на экранах ≤1024px */
@media (max-width: 1024px) {
  .hn .hn-hero__note, .hn .hn-stats__note, .hn .hn-systems__note, .hn .hn-systems__caption,
  .hn .hn-passport__header-note, .hn .hn-passport__photo-note, .hn .hn-passport__scene-note,
  .hn .hn-steps__note, .hn .hn-step__handnote, .hn .hn-community-stats__note,
  .hn .hn-loss__note, .hn .hn-loss__bottom-note, .hn .hn-history__note, .hn .hn-history-cta__note,
  .hn .hn-qr-access__note, .hn .hn-qr-review__note, .hn .hn-project-process__note, .hn .hn-reviews__note,
  .hn .hn-contact__form-note, .hn .hn-contact__note, .hn .hn-faq__note, .hn .hn-final-cta__note,
  .hn .hn-project-start__note, .hn .hn-project-start__bottom-note { display: none !important; }
  .hn .hn-guarantee__promise blockquote { font-family: inherit; font-style: normal; font-weight: 600; transform: none; font-size: 20px; line-height: 1.35; }
}
@media (min-width: 1200px) { .hn .hn-audience-card__button { height: 68px; } }
.hn .hn-audience-card__button { flex: 0 0 auto; margin-top: auto; }

/* =====================================================================
   POLISH v16 · Подвал на телефоне: карточка контактов, сворачиваемые группы ссылок
   ===================================================================== */
.site-footer.hn-footer #coptext p:has(> a[href*="legal-confidential"]) { display: none; }
@media (max-width: 767px) {
  .site-footer.hn-footer { margin-top: 24px; border-radius: 28px 28px 0 0; text-align: left; }
  .site-footer.hn-footer .container { width: auto; margin: 0 16px; }
  .site-footer.hn-footer .site-footer__main { padding: 28px 0 8px; }
  .site-footer.hn-footer .site-footer__grid { display: flex; flex-direction: column; gap: 12px; }
  .site-footer.hn-footer .site-footer__col, .site-footer.hn-footer .site-footer__col:nth-child(n+3) { border: 0; padding: 0; text-align: left; }
  .site-footer.hn-footer .site-footer__col--brand { order: 0; margin-bottom: 8px; }
  .site-footer.hn-footer .site-footer__logo, .site-footer.hn-footer #logoburlakniz { margin: 0 0 14px; }
  .site-footer.hn-footer .hn-footer__brand { justify-content: flex-start; }
  .site-footer.hn-footer .site-footer__tagline { max-width: none; font-size: 14px; line-height: 1.6; text-align: left; }
  .site-footer.hn-footer .site-footer__social { justify-content: flex-start; margin-top: 16px; }

  .site-footer.hn-footer .site-footer__col:has(.site-footer__contacts) {
    order: 1; padding: 20px; border-radius: 24px; background: linear-gradient(150deg, rgba(44, 185, 242, .16), rgba(7, 130, 200, .08)); box-shadow: inset 0 0 0 1px rgba(120, 200, 240, .22);
  }
  .site-footer.hn-footer .site-footer__col:has(.site-footer__contacts) > .site-footer__title { margin: 0 0 8px; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: #8fd3f3; font-weight: 700; }
  .site-footer.hn-footer .site-footer__phone-block { margin: 0 0 4px; }
  .site-footer.hn-footer .site-footer__phone-block a { font-size: 24px; font-weight: 600; letter-spacing: -.02em; }
  .site-footer.hn-footer .site-footer__hours-block { margin: 0 0 16px; }
  .site-footer.hn-footer .site-footer__hours-block p { font-size: 15px; color: #cfe3f1; font-weight: 400; }
  .site-footer.hn-footer .site-footer__actions { flex-direction: column; align-items: stretch; gap: 10px; margin: 0; }
  .site-footer.hn-footer .site-footer__btn { justify-content: center; height: 50px; padding: 0 18px; border-radius: 16px; font-size: 15px; font-weight: 600; line-height: 1; }
  .site-footer.hn-footer .site-footer__btn--primary { background: #079ddc; color: #fff; }
  .site-footer.hn-footer .site-footer__btn--ghost { background: rgba(255, 255, 255, .08); color: #fff; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .22); }

  .site-footer.hn-footer .hn-footer__fold, .site-footer.hn-footer .hn-footer__details { order: 2; border-radius: 20px; background: rgba(255, 255, 255, .05); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08); margin: 0 !important; padding: 0; }
  .site-footer.hn-footer .hn-footer__fold > .site-footer__title, .site-footer.hn-footer .hn-footer__details > summary {
    display: flex; align-items: center; justify-content: space-between; width: 100%; box-sizing: border-box; margin: 0; padding: 16px 18px;
    color: #f4f7fa; font-size: 16px; font-weight: 600; text-align: left; cursor: pointer; pointer-events: auto; list-style: none; white-space: normal;
  }
  .site-footer.hn-footer .hn-footer__fold > .site-footer__title::after, .site-footer.hn-footer .hn-footer__details > summary::after {
    content: ''; width: 9px; height: 9px; margin-left: 12px; border-right: 2px solid #8fd3f3; border-bottom: 2px solid #8fd3f3; transform: rotate(45deg); transition: transform .25s ease; flex: 0 0 auto;
  }
  .site-footer.hn-footer .hn-footer__fold.hn-footer__open > .site-footer__title::after, .site-footer.hn-footer .hn-footer__details[open] > summary::after { transform: rotate(-135deg); }
  .site-footer.hn-footer .hn-footer__fold:not(.hn-footer__open) > :not(h4):not(details) { display: none !important; }
  .site-footer.hn-footer .hn-footer__fold > p { padding: 0 18px 10px; margin: 0; font-size: 13px; color: #9bb0c4; }
  .site-footer.hn-footer .hn-footer__fold ul, .site-footer.hn-footer .hn-footer__details ul { display: grid; gap: 2px; margin: 0; padding: 0 12px 14px; list-style: none; }
  .site-footer.hn-footer .hn-footer__fold .site-footer__cta-links { display: grid; gap: 2px; padding: 0 12px 10px; margin: 0; }
  .site-footer.hn-footer .hn-footer__fold li a, .site-footer.hn-footer .hn-footer__details li a, .site-footer.hn-footer .hn-footer__fold .site-footer__cta-links a {
    display: block; padding: 10px 6px; font-size: 15px; color: #cfe0ee; text-align: left; border-radius: 10px;
  }
  .site-footer.hn-footer .hn-footer__details:not([open]) > ul { display: none; }

  .site-footer.hn-footer .site-footer__bottom { padding: 8px 0 28px; }
  .site-footer.hn-footer .site-footer__bottom-left { align-items: flex-start; gap: 16px; text-align: left; }
  .site-footer.hn-footer .site-footer__copyright { max-width: none; font-size: 12px; line-height: 1.6; }
  .site-footer.hn-footer .site-footer__copyright p { margin: 0 0 2px; }
  .site-footer.hn-footer .site-footer__legal { display: flex; flex-wrap: wrap; gap: 8px 18px; }
  .site-footer.hn-footer .site-footer__legal a { font-size: 13px; color: #9bb0c4; }
}
@media (max-width: 767px) {
  .site-footer.hn-footer .site-footer__grid { align-items: stretch; }
  .site-footer.hn-footer .site-footer__col { width: 100%; max-width: none; box-sizing: border-box; flex: 0 0 auto; }
  .site-footer.hn-footer .site-footer__contacts, .site-footer.hn-footer .site-footer__phone-block, .site-footer.hn-footer .site-footer__hours-block { text-align: left; align-items: flex-start; }
  .site-footer.hn-footer .site-footer__phone-block a { display: inline-block; color: #fff; }
  .site-footer.hn-footer .site-footer__hours-block p, .site-footer.hn-footer .site-footer__hours-block { color: #cfe3f1; opacity: 1; }
  .site-footer.hn-footer .hn-footer__brand { margin: 0; }
  .site-footer.hn-footer .site-footer__logo { display: block; }
}
@media (max-width: 767px) {
  .site-footer.hn-footer .site-footer__contacts { display: block !important; width: 100%; }
  .site-footer.hn-footer .site-footer__phone-block, .site-footer.hn-footer .site-footer__phone-block *, .site-footer.hn-footer .site-footer__hours-block, .site-footer.hn-footer .site-footer__hours-block * { text-align: left !important; margin-left: 0 !important; padding-left: 0 !important; }
  .site-footer.hn-footer .site-footer__phone-block a { color: #fff !important; }
  .site-footer.hn-footer .site-footer__hours-block, .site-footer.hn-footer .site-footer__hours-block p, .site-footer.hn-footer .site-footer__hours-block div { color: #d6e6f2 !important; opacity: 1 !important; font-size: 15px !important; }
  .site-footer.hn-footer .site-footer__actions { display: flex !important; width: 100%; }
  .site-footer.hn-footer .site-footer__actions .site-footer__btn { width: 100% !important; box-sizing: border-box; }
  .site-footer.hn-footer .hn-footer__brand { width: auto; }
}
@media (max-width: 767px) {
  .site-footer.hn-footer .hn-footer__brand > span { text-align: left; }
  .site-footer.hn-footer .site-footer__hours-block { margin: 0 0 16px !important; }
  .site-footer.hn-footer .site-footer__phone-block { margin: 0 0 6px !important; }
}
