/* Static-site adjustments. The original design is in style.css. */
html { scroll-padding-top: 100px; }
:focus-visible { outline: 3px solid #648dcb; outline-offset: 5px; }
[hidden] { display: none !important; }
[data-anim-elm] { opacity: 1; }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 30; padding: 14px 20px; background: white; color: #183973; }
.skip-link:focus { top: 12px; }
.header_block { background: rgba(255, 255, 255, .96); }
.header_block__logo { flex-shrink: 0; }
.hamburger_modal:not([hidden]) { display: block; opacity: 1; }
.hamburger_modal__item { opacity: 1; }
.header_block .hamburger_icon[aria-expanded="true"] { background: #183973; }
.hamburger_modal__item--btn { position: relative; }
.index_page .mainvisual_block .swiper-slide::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(4, 22, 45, .08) 15%, rgba(4, 22, 45, .68) 100%); }
.menu-open { overflow: hidden; }
.static-products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; margin-top: 60px; }
.static-product { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; padding: 44px; background: white; border-radius: 8px; color: #183973; }
.static-product__label { font-size: 13px; letter-spacing: .12em; }
.static-product h3 { font-size: 36px; }
.static-product p:not(.static-product__label) { line-height: 1.9; color: #333; }
.static-product__links { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; margin-top: auto; }
.static-product__terms { font-size: 14px; }
.static-button { display: inline-block; padding: 16px 26px; border: 1px solid #183973; border-radius: 40px; background: #183973; color: #fff !important; text-decoration: none; line-height: 1.6; }
.static-button:hover { background: #315389; }
.static-access { padding: 30px; border: 1px solid #dce3ed; border-radius: 8px; background: #f5f8fc; color: #183973; }
.static-access h3 { font-size: 22px; }
.static-access p { margin-top: 20px; line-height: 1.9; }
.p-contact__inner .static-contact { margin-top: 0; padding: 36px; background: white; border-radius: 8px; color: #183973; }
.static-contact__email { display: inline-block; margin: 12px 0 20px; font-size: clamp(20px, 3vw, 32px); font-weight: bold; overflow-wrap: anywhere; }
.static-contact__note { color: #444; font-size: 14px; line-height: 1.8; }
.static-contact__phone { margin-top: 28px; font-size: 20px; }
.static-contact__privacy { display: inline-block; margin-top: 28px; font-size: 14px; }
.static-page { padding: 140px 24px 96px; background: linear-gradient(120deg, #f4f3fd, #f1f6fd); min-height: 60vh; color: #183973; }
.static-page__inner { max-width: 1000px; margin: 0 auto; }
.static-breadcrumb { font-size: 13px; margin-bottom: 56px; }
.static-eyebrow { font-size: 14px; text-transform: uppercase; letter-spacing: .12em; }
.static-page h1 { margin: 12px 0 32px; font-size: clamp(28px, 4vw, 42px); }
.static-page p { line-height: 1.9; }
.static-page .static-button { margin-top: 32px; }
.static-video-toggle { position: absolute; z-index: 3; right: 16px; bottom: 16px; padding: 9px 14px; border: 1px solid white; border-radius: 24px; background: rgba(0, 0, 0, .65); color: white; font-size: 12px; }
@media (max-width: 769px) {
  html { scroll-padding-top: 80px; }
  .static-products { grid-template-columns: 1fr; gap: 24px; margin-top: 32px; }
  .static-product { padding: 28px; gap: 20px; }
  .static-product h3 { font-size: 30px; }
  .p-contact__inner .static-contact { padding: 28px 24px; }
  .static-page { padding: 110px 24px 64px; }
  .static-breadcrumb { margin-bottom: 32px; }
  .static-video-toggle { bottom: auto; top: 90px; }
  html:not(.js-enabled) .header_block { position: static; }
  html:not(.js-enabled) .header_block__inner { flex-wrap: wrap; }
  html:not(.js-enabled) .header_block nav { display: block; width: 100%; }
  html:not(.js-enabled) .header_block__list { display: flex; flex-wrap: wrap; gap: 16px; padding: 16px 0; }
  html:not(.js-enabled) .header_block__item { font-size: 14px; }
  html:not(.js-enabled) .header_block .hamburger_icon { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}
